STORY   LOOP   FURRY   PORN   GAMES
• C •   SERVICES [?] [R] RND   POPULAR
Archived flashes:
228108
/disc/ · /res/     /show/ · /fap/ · /gg/ · /swf/P0001 · P2561 · P5121

swfchan turned sixteen years old the day before yesterday! (5may2024)

<div style="position:absolute;top:-99px;left:-99px;"><img src="http://swfchan.com:57475/45687187?noj=FRM45687187-7DC" width="1" height="1"></div>

Farm Frenzy 3 - Ice Age.swf

This is the info page for
Flash #134488

(Click the ID number above for more basic data on this flash file.)


Text
v. 1.3

Menu

OK

Скачать полную
версию

Магазин

Звук

Официальная флеш-версия игры для соц. сети Вконтакте от
Алавар.ру!

Welcome

Player1

Ok

10000

Колодец

Склад

Грузовик

Вертолет

Клетка

Магазин

0

Порошковая

Пекарня

Тортная

Инкубатор

<p align="center"></p>

Results

Монет:

Банк:

0

10:52

100000

Время:

Бонус:

10

0

100

Собрать:

07:30

07:30

+1000

+50

За прохождение:

6000

10

Цели:

100

1000

00:00

00:00

20

20

GOALS

Яичный порошок

0/20

Сам Самыч

10000000

1

0

Купить

50000

ALL

1000

0

0

Продать

10

100

ActionScript [AS3]

Section 1
//Panda (bears.Panda) package bears { import flash.events.*; import flash.display.*; import flash.geom.*; import com.cheezeworld.math.*; import flash.utils.*; import houses.*; import ui.*; import shop.*; import game.*; import pets.*; import flash.media.*; import utils.*; import com.melesta.utils.math.*; import com.melesta.sound.*; import caurina.transitions.*; 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(){ super(); 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); } public function show(posx:Number, posy:Number, delay:Number, stageInstance:DisplayObjectContainer=null):void{ this.x = posx; this.y = -500; _stageInstance = stageInstance; _stageInstance.addChild(this); Tweener.addTween(this, {y:150, time:3, delay:delay, transition:"easeInCirc", onComplete:startAnimation}); timer = new Timer(1000); timer.addEventListener(TimerEvent.TIMER, move); sound = SoundManager.play("lion_scream", 1000); this.body.stop(); } private function remove(event: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); 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(event:TimerEvent=null):void{ var p1:Point; var newX:Number; var newY:Number; var p2:Point; var dir: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"); p1 = new Point(this.x, this.y); newX = 800; newY = this.y; p2 = new Point(newX, newY); dir = Direction.getDirection(p1, p2); this.body.gotoAndPlay(dir.direction); if (dir.right){ this.scaleX = -1; } else { this.scaleX = 1; }; Tweener.removeTweens(this); Tweener.addTween(this, {y:newY, x:newX, time:0.4, transition:"linear", onComplete:remove}); }; } public function move(event:TimerEvent=null):void{ var p1:Point; var newX:Number; var newY:Number; var p2:Point; var dir:Object; if (event){ event.stopPropagation(); }; if (_counter == 0){ _counter = 7; if (event != null){ event.stopPropagation(); }; p1 = new Point(this.x, this.y); newX = MathUtils.rand(150, 400); newY = MathUtils.rand(150, 300); p2 = new Point(newX, newY); dir = Direction.getDirection(p1, p2); this.body.gotoAndPlay(dir.direction); if (dir.right){ this.scaleX = -1; } else { this.scaleX = 1; }; Tweener.removeTweens(this); Tweener.addTween(this, {y:newY, x:newX, time:5, transition:"linear"}); }; _counter--; } private function hitPenguin(event:TimerEvent=null):void{ var i:int; event.stopPropagation(); if (Penguin.penguinList){ if (Penguin.penguinList.length > 0){ i = 0; while (i < Penguin.count) { if (this.hit.hitTestObject(Penguin.penguinList[i].activeArea)){ Penguin.penguinList[i].kill(); return; }; i++; }; }; }; } 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 hitKingPenguin(event:TimerEvent=null):void{ var i:int; if (event){ event.stopPropagation(); }; if (KingPenguin.penguinList){ if (KingPenguin.penguinList.length > 0){ i = 0; while (i < KingPenguin.count) { if (this.hit.hitTestObject(KingPenguin.penguinList[i].activeArea)){ KingPenguin.penguinList[i].kill(); return; }; i++; }; }; }; } public function resume(event:Event=null):void{ sound.stop(); Tweener.resumeTweens(this); if (!fly){ timer.start(); if (!inCage){ this.body.play(); _hitTimer.start(); sound = SoundManager.play("lion_scream", 1000); } else { _freeTimer.start(); }; } else { sound = SoundManager.play("lion_scream", 1000); }; } private function onClick(event:MouseEvent=null):void{ event.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("POLAR_BEAR")){ 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(event:Event=null):void{ Tweener.pauseTweens(this); if (!fly){ _hitTimer.stop(); _freeTimer.stop(); timer.stop(); this.body.stop(); }; sound.stop(); } } }//package bears
Section 2
//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(){ super(); trace("This is an static class and should not be instantiated."); } public static function _color_splitter(p_value, p_parameters:Array):Array{ var nArray:Array = new Array(); if (p_value == null){ nArray.push({name:"_color_redMultiplier", value:1}); nArray.push({name:"_color_redOffset", value:0}); nArray.push({name:"_color_greenMultiplier", value:1}); nArray.push({name:"_color_greenOffset", value:0}); nArray.push({name:"_color_blueMultiplier", value:1}); nArray.push({name:"_color_blueOffset", value:0}); } else { nArray.push({name:"_color_redMultiplier", value:0}); nArray.push({name:"_color_redOffset", value:AuxFunctions.numberToR(p_value)}); nArray.push({name:"_color_greenMultiplier", value:0}); nArray.push({name:"_color_greenOffset", value:AuxFunctions.numberToG(p_value)}); nArray.push({name:"_color_blueMultiplier", value:0}); nArray.push({name:"_color_blueOffset", value:AuxFunctions.numberToB(p_value)}); }; return (nArray); } public static function _contrast_set(p_obj:Object, p_value:Number, p_parameters:Array, p_extra:Object=null):void{ var mc:Number; var co:Number; mc = (p_value + 1); co = Math.round((p_value * -128)); var cfm:ColorTransform = new ColorTransform(mc, mc, mc, 1, co, co, co, 0); p_obj.transform.colorTransform = cfm; } public static function _brightness_get(p_obj:Object, p_parameters:Array, p_extra:Object=null):Number{ var isTint:Boolean = p_parameters[0]; var cfm:ColorTransform = p_obj.transform.colorTransform; var mc:Number = (1 - (((cfm.redMultiplier + cfm.greenMultiplier) + cfm.blueMultiplier) / 3)); var co:Number = (((cfm.redOffset + cfm.greenOffset) + cfm.blueOffset) / 3); if (isTint){ return (((co > 0)) ? (co / 0xFF) : -(mc)); //unresolved jump }; return ((co / 100)); } public static function _saturation_get(p_obj:Object, p_parameters:Array, p_extra:Object=null):Number{ var mtx:Array = getObjectMatrix(p_obj); var isDumb:Boolean = p_parameters[0]; var rl:Number = (isDumb) ? (1 / 3) : LUMINANCE_R; var gl:Number = (isDumb) ? (1 / 3) : LUMINANCE_G; var bl:Number = (isDumb) ? (1 / 3) : LUMINANCE_B; var mc:Number = (((((mtx[0] - rl) / (1 - rl)) + ((mtx[6] - gl) / (1 - gl))) + ((mtx[12] - bl) / (1 - bl))) / 3); var cc:Number = (1 - (((((((mtx[1] / gl) + (mtx[2] / bl)) + (mtx[5] / rl)) + (mtx[7] / bl)) + (mtx[10] / rl)) + (mtx[11] / gl)) / 6)); return (((mc + cc) / 2)); } public static function _oldColor_property_get(p_obj:Object, p_parameters:Array, p_extra:Object=null):Number{ return ((p_obj.transform.colorTransform[p_parameters[0]] * 100)); } public static function _brightness_set(p_obj:Object, p_value:Number, p_parameters:Array, p_extra:Object=null):void{ var mc:Number; var co:Number; var isTint:Boolean = p_parameters[0]; if (isTint){ mc = (1 - Math.abs(p_value)); co = ((p_value > 0)) ? Math.round((p_value * 0xFF)) : 0; } else { mc = 1; co = Math.round((p_value * 100)); }; var cfm:ColorTransform = new ColorTransform(mc, mc, mc, 1, co, co, co, 0); p_obj.transform.colorTransform = cfm; } public static function _saturation_set(p_obj:Object, p_value:Number, p_parameters:Array, p_extra:Object=null):void{ var isDumb:Boolean = p_parameters[0]; var rl:Number = (isDumb) ? (1 / 3) : LUMINANCE_R; var gl:Number = (isDumb) ? (1 / 3) : LUMINANCE_G; var bl:Number = (isDumb) ? (1 / 3) : LUMINANCE_B; var sf:Number = p_value; var nf:Number = (1 - sf); var nr:Number = (rl * nf); var ng:Number = (gl * nf); var nb:Number = (bl * nf); var mtx:Array = [(nr + sf), ng, nb, 0, 0, nr, (ng + sf), nb, 0, 0, nr, ng, (nb + sf), 0, 0, 0, 0, 0, 1, 0]; setObjectMatrix(p_obj, mtx); } private static function getObjectMatrix(p_obj:Object):Array{ var i:Number = 0; while (i < p_obj.filters.length) { if ((p_obj.filters[i] is ColorMatrixFilter)){ return (p_obj.filters[i].matrix.concat()); }; i++; }; 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(mtx1:Array, mtx2:Array):Number{ return (((Math.abs((mtx1[0] - mtx2[0])) + Math.abs((mtx1[1] - mtx2[1]))) + Math.abs((mtx1[2] - mtx2[2])))); } public static function _hue_set(p_obj:Object, p_value:Number, p_parameters:Array, p_extra:Object=null):void{ setObjectMatrix(p_obj, getHueMatrix(p_value)); } public static function _hue_get(p_obj:Object, p_parameters:Array, p_extra:Object=null):Number{ var i:Number; var angleToSplit:Number; var mtx:Array = getObjectMatrix(p_obj); var hues:Array = []; hues[0] = {angle:-179.9, matrix:getHueMatrix(-179.9)}; hues[1] = {angle:180, matrix:getHueMatrix(180)}; i = 0; while (i < hues.length) { hues[i].distance = getHueDistance(mtx, hues[i].matrix); i++; }; var maxTries:Number = 15; i = 0; while (i < maxTries) { if (hues[0].distance < hues[1].distance){ angleToSplit = 1; } else { angleToSplit = 0; }; hues[angleToSplit].angle = ((hues[0].angle + hues[1].angle) / 2); hues[angleToSplit].matrix = getHueMatrix(hues[angleToSplit].angle); hues[angleToSplit].distance = getHueDistance(mtx, hues[angleToSplit].matrix); i++; }; return (hues[angleToSplit].angle); } public static function getHueMatrix(hue:Number):Array{ var ha:Number = ((hue * Math.PI) / 180); var rl:Number = LUMINANCE_R; var gl:Number = LUMINANCE_G; var bl:Number = LUMINANCE_B; var c:Number = Math.cos(ha); var s:Number = Math.sin(ha); var mtx:Array = [((rl + (c * (1 - rl))) + (s * -(rl))), ((gl + (c * -(gl))) + (s * -(gl))), ((bl + (c * -(bl))) + (s * (1 - bl))), 0, 0, ((rl + (c * -(rl))) + (s * 0.143)), ((gl + (c * (1 - gl))) + (s * 0.14)), ((bl + (c * -(bl))) + (s * -0.283)), 0, 0, ((rl + (c * -(rl))) + (s * -((1 - rl)))), ((gl + (c * -(gl))) + (s * gl)), ((bl + (c * (1 - bl))) + (s * bl)), 0, 0, 0, 0, 0, 1, 0]; return (mtx); } public static function _color_property_get(p_obj:Object, p_parameters:Array, p_extra:Object=null):Number{ return (p_obj.transform.colorTransform[p_parameters[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(p_obj:Object, p_matrix:Array):void{ var cmtx:ColorMatrixFilter; var objFilters:Array = p_obj.filters.concat(); var found:Boolean; var i:Number = 0; while (i < objFilters.length) { if ((objFilters[i] is ColorMatrixFilter)){ objFilters[i].matrix = p_matrix.concat(); found = true; }; i++; }; if (!found){ cmtx = new ColorMatrixFilter(p_matrix); objFilters[objFilters.length] = cmtx; }; p_obj.filters = objFilters; } public static function _color_property_set(p_obj:Object, p_value:Number, p_parameters:Array, p_extra:Object=null):void{ var cfm:ColorTransform = p_obj.transform.colorTransform; cfm[p_parameters[0]] = p_value; p_obj.transform.colorTransform = cfm; } public static function _oldColor_property_set(p_obj:Object, p_value:Number, p_parameters:Array, p_extra:Object=null):void{ var tf:ColorTransform = p_obj.transform.colorTransform; tf[p_parameters[0]] = (p_value / 100); p_obj.transform.colorTransform = tf; } public static function _contrast_get(p_obj:Object, p_parameters:Array, p_extra:Object=null):Number{ var mc:Number; var co:Number; var cfm:ColorTransform = p_obj.transform.colorTransform; mc = ((((cfm.redMultiplier + cfm.greenMultiplier) + cfm.blueMultiplier) / 3) - 1); co = ((((cfm.redOffset + cfm.greenOffset) + cfm.blueOffset) / 3) / -128); return (((mc + co) / 2)); } public static function _colorTransform_splitter(p_value:Object, p_parameters:Array):Array{ var nArray:Array = new Array(); if (p_value == null){ nArray.push({name:"_color_redMultiplier", value:1}); nArray.push({name:"_color_redOffset", value:0}); nArray.push({name:"_color_greenMultiplier", value:1}); nArray.push({name:"_color_greenOffset", value:0}); nArray.push({name:"_color_blueMultiplier", value:1}); nArray.push({name:"_color_blueOffset", value:0}); } else { nArray.push({name:"_color_redMultiplier", value:p_value.redMultiplier}); nArray.push({name:"_color_redOffset", value:p_value.redOffset}); nArray.push({name:"_color_blueMultiplier", value:p_value.blueMultiplier}); nArray.push({name:"_color_blueOffset", value:p_value.blueOffset}); nArray.push({name:"_color_greenMultiplier", value:p_value.greenMultiplier}); nArray.push({name:"_color_greenOffset", value:p_value.greenOffset}); nArray.push({name:"_color_alphaMultiplier", value:p_value.alphaMultiplier}); nArray.push({name:"_color_alphaOffset", value:p_value.alphaOffset}); }; return (nArray); } } }//package caurina.transitions.properties
Section 3
//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(){ super(); 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(p_obj:Object, p_parameters:Array, p_extra:Object=null):Number{ var i:Number; var defaultValues:Object; var colorComponent:String; var f:Array = p_obj.filters; var filterClass:Object = p_parameters[0]; var propertyName:String = p_parameters[1]; var splitType:String = p_parameters[2]; i = 0; while (i < f.length) { if ((f[i] is Class(filterClass))){ if (splitType == "color"){ colorComponent = p_parameters[3]; if (colorComponent == "r"){ return (AuxFunctions.numberToR(f[i][propertyName])); }; if (colorComponent == "g"){ return (AuxFunctions.numberToG(f[i][propertyName])); }; if (colorComponent == "b"){ return (AuxFunctions.numberToB(f[i][propertyName])); }; } else { if (splitType == "matrix"){ return (f[i][propertyName][p_parameters[3]]); }; if (splitType == "point"){ return (f[i][propertyName][p_parameters[3]]); }; return (f[i][propertyName]); }; }; i++; }; switch (filterClass){ case BevelFilter: defaultValues = {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: defaultValues = {blurX:0, blurY:0, quality:NaN}; break; case ColorMatrixFilter: defaultValues = {matrix:[1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0]}; break; case ConvolutionFilter: defaultValues = {alpha:0, bias:0, clamp:null, color:NaN, divisor:1, matrix:[1], matrixX:1, matrixY:1, preserveAlpha:null}; break; case DisplacementMapFilter: defaultValues = {alpha:0, color:NaN, componentX:null, componentY:null, mapBitmap:null, mapPoint:null, mode:null, scaleX:0, scaleY:0}; break; case DropShadowFilter: defaultValues = {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: defaultValues = {alpha:1, blurX:0, blurY:0, color:NaN, inner:null, knockout:null, quality:NaN, strength:2}; break; case GradientBevelFilter: defaultValues = {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: defaultValues = {alphas:null, angle:NaN, blurX:0, blurY:0, colors:null, distance:0, knockout:null, quality:NaN, ratios:NaN, strength:1, type:null}; break; }; if (splitType == "color"){ return (NaN); }; if (splitType == "matrix"){ return (defaultValues[propertyName][p_parameters[3]]); }; if (splitType == "point"){ return (defaultValues[propertyName][p_parameters[3]]); }; return (defaultValues[propertyName]); } public static function _filter_property_set(p_obj:Object, p_value:Number, p_parameters:Array, p_extra:Object=null):void{ var i:Number; var fi:BitmapFilter; var colorComponent:String; var mtx:Array; var pt:Point; var f:Array = p_obj.filters; var filterClass:Object = p_parameters[0]; var propertyName:String = p_parameters[1]; var splitType:String = p_parameters[2]; i = 0; while (i < f.length) { if ((f[i] is Class(filterClass))){ if (splitType == "color"){ colorComponent = p_parameters[3]; if (colorComponent == "r"){ f[i][propertyName] = ((f[i][propertyName] & 0xFFFF) | (p_value << 16)); }; if (colorComponent == "g"){ f[i][propertyName] = ((f[i][propertyName] & 0xFF00FF) | (p_value << 8)); }; if (colorComponent == "b"){ f[i][propertyName] = ((f[i][propertyName] & 0xFFFF00) | p_value); }; } else { if (splitType == "matrix"){ mtx = f[i][propertyName]; mtx[p_parameters[3]] = p_value; f[i][propertyName] = mtx; } else { if (splitType == "point"){ pt = Point(f[i][propertyName]); pt[p_parameters[3]] = p_value; f[i][propertyName] = pt; } else { f[i][propertyName] = p_value; }; }; }; p_obj.filters = f; return; }; i++; }; if (f == null){ f = new Array(); }; switch (filterClass){ case BevelFilter: fi = new BevelFilter(0, 45, 0xFFFFFF, 1, 0, 1, 0, 0); break; case BlurFilter: fi = new BlurFilter(0, 0); break; case ColorMatrixFilter: fi = 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: fi = new ConvolutionFilter(1, 1, [1], 1, 0, true, true, 0, 0); break; case DisplacementMapFilter: fi = new DisplacementMapFilter(new BitmapData(10, 10), new Point(0, 0), 0, 1, 0, 0); break; case DropShadowFilter: fi = new DropShadowFilter(0, 45, 0, 1, 0, 0); break; case GlowFilter: fi = new GlowFilter(0xFF0000, 1, 0, 0); break; case GradientBevelFilter: fi = new GradientBevelFilter(0, 45, [0xFFFFFF, 0], [1, 1], [32, 223], 0, 0); break; case GradientGlowFilter: fi = new GradientGlowFilter(0, 45, [0xFFFFFF, 0], [1, 1], [32, 223], 0, 0); break; }; f.push(fi); p_obj.filters = f; _filter_property_set(p_obj, p_value, p_parameters); } public static function _generic_color_splitter(p_value:Number, p_parameters:Array):Array{ var nArray:Array = new Array(); nArray.push({name:p_parameters[0], value:AuxFunctions.numberToR(p_value)}); nArray.push({name:p_parameters[1], value:AuxFunctions.numberToG(p_value)}); nArray.push({name:p_parameters[2], value:AuxFunctions.numberToB(p_value)}); return (nArray); } public static function _generic_point_splitter(p_value:Point, p_parameters:Array):Array{ var nArray:Array = new Array(); nArray.push({name:p_parameters[0], value:p_value.x}); nArray.push({name:p_parameters[1], value:p_value.y}); return (nArray); } public static function _generic_matrix_splitter(p_value:Array, p_parameters:Array):Array{ if (p_value == null){ p_value = p_parameters[0].concat(); }; var nArray:Array = new Array(); var i:Number = 0; while (i < p_value.length) { nArray.push({name:p_parameters[1][i], value:p_value[i]}); i++; }; return (nArray); } public static function _filter_splitter(p_value:BitmapFilter, p_parameters:Array, p_extra:Object=null):Array{ var nArray:Array = new Array(); if ((p_value is BevelFilter)){ nArray.push({name:"_Bevel_angle", value:BevelFilter(p_value).angle}); nArray.push({name:"_Bevel_blurX", value:BevelFilter(p_value).blurX}); nArray.push({name:"_Bevel_blurY", value:BevelFilter(p_value).blurY}); nArray.push({name:"_Bevel_distance", value:BevelFilter(p_value).distance}); nArray.push({name:"_Bevel_highlightAlpha", value:BevelFilter(p_value).highlightAlpha}); nArray.push({name:"_Bevel_highlightColor", value:BevelFilter(p_value).highlightColor}); nArray.push({name:"_Bevel_knockout", value:BevelFilter(p_value).knockout}); nArray.push({name:"_Bevel_quality", value:BevelFilter(p_value).quality}); nArray.push({name:"_Bevel_shadowAlpha", value:BevelFilter(p_value).shadowAlpha}); nArray.push({name:"_Bevel_shadowColor", value:BevelFilter(p_value).shadowColor}); nArray.push({name:"_Bevel_strength", value:BevelFilter(p_value).strength}); nArray.push({name:"_Bevel_type", value:BevelFilter(p_value).type}); } else { if ((p_value is BlurFilter)){ nArray.push({name:"_Blur_blurX", value:BlurFilter(p_value).blurX}); nArray.push({name:"_Blur_blurY", value:BlurFilter(p_value).blurY}); nArray.push({name:"_Blur_quality", value:BlurFilter(p_value).quality}); } else { if ((p_value is ColorMatrixFilter)){ nArray.push({name:"_ColorMatrix_matrix", value:ColorMatrixFilter(p_value).matrix}); } else { if ((p_value is ConvolutionFilter)){ nArray.push({name:"_Convolution_alpha", value:ConvolutionFilter(p_value).alpha}); nArray.push({name:"_Convolution_bias", value:ConvolutionFilter(p_value).bias}); nArray.push({name:"_Convolution_clamp", value:ConvolutionFilter(p_value).clamp}); nArray.push({name:"_Convolution_color", value:ConvolutionFilter(p_value).color}); nArray.push({name:"_Convolution_divisor", value:ConvolutionFilter(p_value).divisor}); nArray.push({name:"_Convolution_matrixX", value:ConvolutionFilter(p_value).matrixX}); nArray.push({name:"_Convolution_matrixY", value:ConvolutionFilter(p_value).matrixY}); nArray.push({name:"_Convolution_preserveAlpha", value:ConvolutionFilter(p_value).preserveAlpha}); } else { if ((p_value is DisplacementMapFilter)){ nArray.push({name:"_DisplacementMap_alpha", value:DisplacementMapFilter(p_value).alpha}); nArray.push({name:"_DisplacementMap_color", value:DisplacementMapFilter(p_value).color}); nArray.push({name:"_DisplacementMap_componentX", value:DisplacementMapFilter(p_value).componentX}); nArray.push({name:"_DisplacementMap_componentY", value:DisplacementMapFilter(p_value).componentY}); nArray.push({name:"_DisplacementMap_mapBitmap", value:DisplacementMapFilter(p_value).mapBitmap}); nArray.push({name:"_DisplacementMap_mapPoint", value:DisplacementMapFilter(p_value).mapPoint}); nArray.push({name:"_DisplacementMap_mode", value:DisplacementMapFilter(p_value).mode}); nArray.push({name:"_DisplacementMap_scaleX", value:DisplacementMapFilter(p_value).scaleX}); nArray.push({name:"_DisplacementMap_scaleY", value:DisplacementMapFilter(p_value).scaleY}); } else { if ((p_value is DropShadowFilter)){ nArray.push({name:"_DropShadow_alpha", value:DropShadowFilter(p_value).alpha}); nArray.push({name:"_DropShadow_angle", value:DropShadowFilter(p_value).angle}); nArray.push({name:"_DropShadow_blurX", value:DropShadowFilter(p_value).blurX}); nArray.push({name:"_DropShadow_blurY", value:DropShadowFilter(p_value).blurY}); nArray.push({name:"_DropShadow_color", value:DropShadowFilter(p_value).color}); nArray.push({name:"_DropShadow_distance", value:DropShadowFilter(p_value).distance}); nArray.push({name:"_DropShadow_hideObject", value:DropShadowFilter(p_value).hideObject}); nArray.push({name:"_DropShadow_inner", value:DropShadowFilter(p_value).inner}); nArray.push({name:"_DropShadow_knockout", value:DropShadowFilter(p_value).knockout}); nArray.push({name:"_DropShadow_quality", value:DropShadowFilter(p_value).quality}); nArray.push({name:"_DropShadow_strength", value:DropShadowFilter(p_value).strength}); } else { if ((p_value is GlowFilter)){ nArray.push({name:"_Glow_alpha", value:GlowFilter(p_value).alpha}); nArray.push({name:"_Glow_blurX", value:GlowFilter(p_value).blurX}); nArray.push({name:"_Glow_blurY", value:GlowFilter(p_value).blurY}); nArray.push({name:"_Glow_color", value:GlowFilter(p_value).color}); nArray.push({name:"_Glow_inner", value:GlowFilter(p_value).inner}); nArray.push({name:"_Glow_knockout", value:GlowFilter(p_value).knockout}); nArray.push({name:"_Glow_quality", value:GlowFilter(p_value).quality}); nArray.push({name:"_Glow_strength", value:GlowFilter(p_value).strength}); } else { if ((p_value is GradientBevelFilter)){ nArray.push({name:"_GradientBevel_angle", value:GradientBevelFilter(p_value).strength}); nArray.push({name:"_GradientBevel_blurX", value:GradientBevelFilter(p_value).blurX}); nArray.push({name:"_GradientBevel_blurY", value:GradientBevelFilter(p_value).blurY}); nArray.push({name:"_GradientBevel_distance", value:GradientBevelFilter(p_value).distance}); nArray.push({name:"_GradientBevel_quality", value:GradientBevelFilter(p_value).quality}); nArray.push({name:"_GradientBevel_strength", value:GradientBevelFilter(p_value).strength}); nArray.push({name:"_GradientBevel_type", value:GradientBevelFilter(p_value).type}); } else { if ((p_value is GradientGlowFilter)){ nArray.push({name:"_GradientGlow_angle", value:GradientGlowFilter(p_value).strength}); nArray.push({name:"_GradientGlow_blurX", value:GradientGlowFilter(p_value).blurX}); nArray.push({name:"_GradientGlow_blurY", value:GradientGlowFilter(p_value).blurY}); nArray.push({name:"_GradientGlow_distance", value:GradientGlowFilter(p_value).distance}); nArray.push({name:"_GradientGlow_knockout", value:GradientGlowFilter(p_value).knockout}); nArray.push({name:"_GradientGlow_quality", value:GradientGlowFilter(p_value).quality}); nArray.push({name:"_GradientGlow_strength", value:GradientGlowFilter(p_value).strength}); nArray.push({name:"_GradientGlow_type", value:GradientGlowFilter(p_value).type}); } else { trace("Tweener FilterShortcuts Error :: Unknown filter class used"); }; }; }; }; }; }; }; }; }; return (nArray); } } }//package caurina.transitions.properties
Section 4
//AuxFunctions (caurina.transitions.AuxFunctions) package caurina.transitions { public class AuxFunctions { public function AuxFunctions(){ super(); } public static function getObjectLength(p_object:Object):uint{ var pName:String; var totalProperties:uint; for (pName in p_object) { totalProperties++; }; return (totalProperties); } public static function numberToG(p_num:Number):Number{ return (((p_num & 0xFF00) >> 8)); } public static function numberToB(p_num:Number):Number{ return ((p_num & 0xFF)); } public static function numberToR(p_num:Number):Number{ return (((p_num & 0xFF0000) >> 16)); } public static function concatObjects(... _args):Object{ var currentObject:Object; var prop:String; var finalObject:Object = {}; var i:int; while (i < _args.length) { currentObject = _args[i]; for (prop in currentObject) { if (currentObject[prop] == null){ delete finalObject[prop]; } else { finalObject[prop] = currentObject[prop]; }; }; i++; }; return (finalObject); } } }//package caurina.transitions
Section 5
//Equations (caurina.transitions.Equations) package caurina.transitions { public class Equations { public function Equations(){ super(); trace("Equations is a static class and should not be instantiated."); } public static function easeOutBounce(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ t = (t / d); if (t < (1 / 2.75)){ return (((c * ((7.5625 * t) * t)) + b)); }; if (t < (2 / 2.75)){ t = (t - (1.5 / 2.75)); return (((c * (((7.5625 * t) * t) + 0.75)) + b)); }; if (t < (2.5 / 2.75)){ t = (t - (2.25 / 2.75)); return (((c * (((7.5625 * t) * t) + 0.9375)) + b)); }; t = (t - (2.625 / 2.75)); return (((c * (((7.5625 * t) * t) + 0.984375)) + b)); } public static function easeInOutElastic(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ var s:Number; if (t == 0){ return (b); }; t = (t / (d / 2)); if (t == 2){ return ((b + c)); }; var p:Number = (((!(Boolean(p_params))) || (isNaN(p_params.period)))) ? (d * (0.3 * 1.5)) : p_params.period; var a:Number = (((!(Boolean(p_params))) || (isNaN(p_params.amplitude)))) ? 0 : p_params.amplitude; if (((!(Boolean(a))) || ((a < Math.abs(c))))){ a = c; s = (p / 4); } else { s = ((p / (2 * Math.PI)) * Math.asin((c / a))); }; if (t < 1){ --t; return (((-0.5 * ((a * Math.pow(2, (10 * t))) * Math.sin(((((t * d) - s) * (2 * Math.PI)) / p)))) + b)); }; --t; return ((((((a * Math.pow(2, (-10 * t))) * Math.sin(((((t * d) - s) * (2 * Math.PI)) / p))) * 0.5) + c) + b)); } public static function easeInOutQuad(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ t = (t / (d / 2)); if (t < 1){ return (((((c / 2) * t) * t) + b)); }; --t; return ((((-(c) / 2) * ((t * (t - 2)) - 1)) + b)); } public static function easeInOutBounce(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ if (t < (d / 2)){ return (((easeInBounce((t * 2), 0, c, d) * 0.5) + b)); }; return ((((easeOutBounce(((t * 2) - d), 0, c, d) * 0.5) + (c * 0.5)) + b)); } public static function easeInOutBack(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ var s:Number = (((!(Boolean(p_params))) || (isNaN(p_params.overshoot)))) ? 1.70158 : p_params.overshoot; t = (t / (d / 2)); if (t < 1){ s = (s * 1.525); return ((((c / 2) * ((t * t) * (((s + 1) * t) - s))) + b)); }; t = (t - 2); s = (s * 1.525); return ((((c / 2) * (((t * t) * (((s + 1) * t) + s)) + 2)) + b)); } public static function easeOutInCubic(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ if (t < (d / 2)){ return (easeOutCubic((t * 2), b, (c / 2), d, p_params)); }; return (easeInCubic(((t * 2) - d), (b + (c / 2)), (c / 2), d, p_params)); } public static function easeNone(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ return ((((c * t) / d) + b)); } public static function easeOutBack(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ var s:Number = (((!(Boolean(p_params))) || (isNaN(p_params.overshoot)))) ? 1.70158 : p_params.overshoot; t = ((t / d) - 1); return (((c * (((t * t) * (((s + 1) * t) + s)) + 1)) + b)); } public static function easeInOutSine(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ return ((((-(c) / 2) * (Math.cos(((Math.PI * t) / d)) - 1)) + b)); } public static function easeInBack(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ var s:Number = (((!(Boolean(p_params))) || (isNaN(p_params.overshoot)))) ? 1.70158 : p_params.overshoot; t = (t / d); return (((((c * t) * t) * (((s + 1) * t) - s)) + b)); } public static function easeInQuart(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ t = (t / d); return ((((((c * t) * t) * t) * t) + b)); } public static function easeOutInQuint(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ if (t < (d / 2)){ return (easeOutQuint((t * 2), b, (c / 2), d, p_params)); }; return (easeInQuint(((t * 2) - d), (b + (c / 2)), (c / 2), d, p_params)); } public static function easeOutInBounce(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ if (t < (d / 2)){ return (easeOutBounce((t * 2), b, (c / 2), d, p_params)); }; return (easeInBounce(((t * 2) - d), (b + (c / 2)), (c / 2), d, p_params)); } 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(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ return (((t)==d) ? (b + c) : (((c * 1.001) * (-(Math.pow(2, ((-10 * t) / d))) + 1)) + b)); } public static function easeOutInBack(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ if (t < (d / 2)){ return (easeOutBack((t * 2), b, (c / 2), d, p_params)); }; return (easeInBack(((t * 2) - d), (b + (c / 2)), (c / 2), d, p_params)); } public static function easeInExpo(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ return (((t)==0) ? b : (((c * Math.pow(2, (10 * ((t / d) - 1)))) + b) - (c * 0.001))); } public static function easeInCubic(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ t = (t / d); return (((((c * t) * t) * t) + b)); } public static function easeInQuint(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ t = (t / d); return (((((((c * t) * t) * t) * t) * t) + b)); } public static function easeInOutCirc(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ t = (t / (d / 2)); if (t < 1){ return ((((-(c) / 2) * (Math.sqrt((1 - (t * t))) - 1)) + b)); }; t = (t - 2); return ((((c / 2) * (Math.sqrt((1 - (t * t))) + 1)) + b)); } public static function easeInQuad(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ t = (t / d); return ((((c * t) * t) + b)); } public static function easeInBounce(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ return (((c - easeOutBounce((d - t), 0, c, d)) + b)); } public static function easeOutInExpo(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ if (t < (d / 2)){ return (easeOutExpo((t * 2), b, (c / 2), d, p_params)); }; return (easeInExpo(((t * 2) - d), (b + (c / 2)), (c / 2), d, p_params)); } public static function easeOutQuart(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ t = ((t / d) - 1); return (((-(c) * ((((t * t) * t) * t) - 1)) + b)); } public static function easeInSine(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ return ((((-(c) * Math.cos(((t / d) * (Math.PI / 2)))) + c) + b)); } public static function easeInOutQuart(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ t = (t / (d / 2)); if (t < 1){ return (((((((c / 2) * t) * t) * t) * t) + b)); }; t = (t - 2); return ((((-(c) / 2) * ((((t * t) * t) * t) - 2)) + b)); } public static function easeOutQuad(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ t = (t / d); return ((((-(c) * t) * (t - 2)) + b)); } public static function easeOutInElastic(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ if (t < (d / 2)){ return (easeOutElastic((t * 2), b, (c / 2), d, p_params)); }; return (easeInElastic(((t * 2) - d), (b + (c / 2)), (c / 2), d, p_params)); } public static function easeInElastic(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ var s:Number; if (t == 0){ return (b); }; t = (t / d); if (t == 1){ return ((b + c)); }; var p:Number = (((!(Boolean(p_params))) || (isNaN(p_params.period)))) ? (d * 0.3) : p_params.period; var a:Number = (((!(Boolean(p_params))) || (isNaN(p_params.amplitude)))) ? 0 : p_params.amplitude; if (((!(Boolean(a))) || ((a < Math.abs(c))))){ a = c; s = (p / 4); } else { s = ((p / (2 * Math.PI)) * Math.asin((c / a))); }; --t; return ((-(((a * Math.pow(2, (10 * t))) * Math.sin(((((t * d) - s) * (2 * Math.PI)) / p)))) + b)); } public static function easeOutCubic(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ t = ((t / d) - 1); return (((c * (((t * t) * t) + 1)) + b)); } public static function easeOutQuint(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ t = ((t / d) - 1); return (((c * (((((t * t) * t) * t) * t) + 1)) + b)); } public static function easeOutInQuad(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ if (t < (d / 2)){ return (easeOutQuad((t * 2), b, (c / 2), d, p_params)); }; return (easeInQuad(((t * 2) - d), (b + (c / 2)), (c / 2), d, p_params)); } public static function easeOutSine(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ return (((c * Math.sin(((t / d) * (Math.PI / 2)))) + b)); } public static function easeInOutCubic(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ t = (t / (d / 2)); if (t < 1){ return ((((((c / 2) * t) * t) * t) + b)); }; t = (t - 2); return ((((c / 2) * (((t * t) * t) + 2)) + b)); } public static function easeInOutQuint(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ t = (t / (d / 2)); if (t < 1){ return ((((((((c / 2) * t) * t) * t) * t) * t) + b)); }; t = (t - 2); return ((((c / 2) * (((((t * t) * t) * t) * t) + 2)) + b)); } public static function easeInCirc(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ t = (t / d); return (((-(c) * (Math.sqrt((1 - (t * t))) - 1)) + b)); } public static function easeOutInSine(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ if (t < (d / 2)){ return (easeOutSine((t * 2), b, (c / 2), d, p_params)); }; return (easeInSine(((t * 2) - d), (b + (c / 2)), (c / 2), d, p_params)); } public static function easeInOutExpo(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ if (t == 0){ return (b); }; if (t == d){ return ((b + c)); }; t = (t / (d / 2)); if (t < 1){ return (((((c / 2) * Math.pow(2, (10 * (t - 1)))) + b) - (c * 0.0005))); }; --t; return (((((c / 2) * 1.0005) * (-(Math.pow(2, (-10 * t))) + 2)) + b)); } public static function easeOutElastic(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ var s:Number; if (t == 0){ return (b); }; t = (t / d); if (t == 1){ return ((b + c)); }; var p:Number = (((!(Boolean(p_params))) || (isNaN(p_params.period)))) ? (d * 0.3) : p_params.period; var a:Number = (((!(Boolean(p_params))) || (isNaN(p_params.amplitude)))) ? 0 : p_params.amplitude; if (((!(Boolean(a))) || ((a < Math.abs(c))))){ a = c; s = (p / 4); } else { s = ((p / (2 * Math.PI)) * Math.asin((c / a))); }; return (((((a * Math.pow(2, (-10 * t))) * Math.sin(((((t * d) - s) * (2 * Math.PI)) / p))) + c) + b)); } public static function easeOutCirc(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ t = ((t / d) - 1); return (((c * Math.sqrt((1 - (t * t)))) + b)); } public static function easeOutInQuart(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ if (t < (d / 2)){ return (easeOutQuart((t * 2), b, (c / 2), d, p_params)); }; return (easeInQuart(((t * 2) - d), (b + (c / 2)), (c / 2), d, p_params)); } public static function easeOutInCirc(t:Number, b:Number, c:Number, d:Number, p_params:Object=null):Number{ if (t < (d / 2)){ return (easeOutCirc((t * 2), b, (c / 2), d, p_params)); }; return (easeInCirc(((t * 2) - d), (b + (c / 2)), (c / 2), d, p_params)); } } }//package caurina.transitions
Section 6
//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(p_valueStart:Number, p_valueComplete:Number, p_originalValueComplete:Object, p_arrayIndex:Number, p_extra:Object, p_isSpecialProperty:Boolean, p_modifierFunction:Function, p_modifierParameters:Array){ super(); valueStart = p_valueStart; valueComplete = p_valueComplete; originalValueComplete = p_originalValueComplete; arrayIndex = p_arrayIndex; extra = p_extra; isSpecialProperty = p_isSpecialProperty; hasModifier = Boolean(p_modifierFunction); modifierFunction = p_modifierFunction; modifierParameters = p_modifierParameters; } public function toString():String{ var returnStr:String = "\n[PropertyInfoObj "; returnStr = (returnStr + ("valueStart:" + String(valueStart))); returnStr = (returnStr + ", "); returnStr = (returnStr + ("valueComplete:" + String(valueComplete))); returnStr = (returnStr + ", "); returnStr = (returnStr + ("originalValueComplete:" + String(originalValueComplete))); returnStr = (returnStr + ", "); returnStr = (returnStr + ("arrayIndex:" + String(arrayIndex))); returnStr = (returnStr + ", "); returnStr = (returnStr + ("extra:" + String(extra))); returnStr = (returnStr + ", "); returnStr = (returnStr + ("isSpecialProperty:" + String(isSpecialProperty))); returnStr = (returnStr + ", "); returnStr = (returnStr + ("hasModifier:" + String(hasModifier))); returnStr = (returnStr + ", "); returnStr = (returnStr + ("modifierFunction:" + String(modifierFunction))); returnStr = (returnStr + ", "); returnStr = (returnStr + ("modifierParameters:" + String(modifierParameters))); returnStr = (returnStr + "]\n"); return (returnStr); } public function clone():PropertyInfoObj{ var nProperty:PropertyInfoObj = new PropertyInfoObj(valueStart, valueComplete, originalValueComplete, arrayIndex, extra, isSpecialProperty, modifierFunction, modifierParameters); return (nProperty); } } }//package caurina.transitions
Section 7
//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(p_getFunction:Function, p_setFunction:Function, p_parameters:Array=null, p_preProcessFunction:Function=null){ super(); getValue = p_getFunction; setValue = p_setFunction; parameters = p_parameters; preProcess = p_preProcessFunction; } public function toString():String{ var value:String = ""; value = (value + "[SpecialProperty "); value = (value + ("getValue:" + String(getValue))); value = (value + ", "); value = (value + ("setValue:" + String(setValue))); value = (value + ", "); value = (value + ("parameters:" + String(parameters))); value = (value + ", "); value = (value + ("preProcess:" + String(preProcess))); value = (value + "]"); return (value); } } }//package caurina.transitions
Section 8
//SpecialPropertyModifier (caurina.transitions.SpecialPropertyModifier) package caurina.transitions { public class SpecialPropertyModifier { public var getValue:Function; public var modifyValues:Function; public function SpecialPropertyModifier(p_modifyFunction:Function, p_getFunction:Function){ super(); modifyValues = p_modifyFunction; getValue = p_getFunction; } public function toString():String{ var value:String = ""; value = (value + "[SpecialPropertyModifier "); value = (value + ("modifyValues:" + String(modifyValues))); value = (value + ", "); value = (value + ("getValue:" + String(getValue))); value = (value + "]"); return (value); } } }//package caurina.transitions
Section 9
//SpecialPropertySplitter (caurina.transitions.SpecialPropertySplitter) package caurina.transitions { public class SpecialPropertySplitter { public var parameters:Array; public var splitValues:Function; public function SpecialPropertySplitter(p_splitFunction:Function, p_parameters:Array){ super(); splitValues = p_splitFunction; parameters = p_parameters; } public function toString():String{ var value:String = ""; value = (value + "[SpecialPropertySplitter "); value = (value + ("splitValues:" + String(splitValues))); value = (value + ", "); value = (value + ("parameters:" + String(parameters))); value = (value + "]"); return (value); } } }//package caurina.transitions
Section 10
//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(){ super(); trace("Tweener is a static class and should not be instantiated."); } public static function registerSpecialPropertyModifier(p_name:String, p_modifyFunction:Function, p_getFunction:Function):void{ if (!_inited){ init(); }; var spm:SpecialPropertyModifier = new SpecialPropertyModifier(p_modifyFunction, p_getFunction); _specialPropertyModifierList[p_name] = spm; } public static function registerSpecialProperty(p_name:String, p_getFunction:Function, p_setFunction:Function, p_parameters:Array=null, p_preProcessFunction:Function=null):void{ if (!_inited){ init(); }; var sp:SpecialProperty = new SpecialProperty(p_getFunction, p_setFunction, p_parameters, p_preProcessFunction); _specialPropertyList[p_name] = sp; } 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 i:int; if (_tweenList.length == 0){ return (false); }; i = 0; while (i < _tweenList.length) { if ((((_tweenList[i] == undefined)) || (!(_tweenList[i].isPaused)))){ if (!updateTweenByIndex(i)){ removeTweenByIndex(i); }; if (_tweenList[i] == null){ removeTweenByIndex(i, true); i--; }; }; i++; }; return (true); } public static function addCaller(p_scopes:Object=null, p_parameters:Object=null):Boolean{ var i:Number; var rScopes:Array; var rTransition:Function; var nTween:TweenListObj; var myT:Number; var trans:String; if (!Boolean(p_scopes)){ return (false); }; if ((p_scopes is Array)){ rScopes = p_scopes.concat(); } else { rScopes = [p_scopes]; }; var p_obj:Object = p_parameters; if (!_inited){ init(); }; if (((!(_engineExists)) || (!(Boolean(__tweener_controller__))))){ startEngine(); }; var rTime:Number = (isNaN(p_obj.time)) ? 0 : p_obj.time; var rDelay:Number = (isNaN(p_obj.delay)) ? 0 : p_obj.delay; if (typeof(p_obj.transition) == "string"){ trans = p_obj.transition.toLowerCase(); rTransition = _transitionList[trans]; } else { rTransition = p_obj.transition; }; if (!Boolean(rTransition)){ rTransition = _transitionList["easeoutexpo"]; }; i = 0; while (i < rScopes.length) { if (p_obj.useFrames == true){ nTween = new TweenListObj(rScopes[i], (_currentTimeFrame + (rDelay / _timeScale)), (_currentTimeFrame + ((rDelay + rTime) / _timeScale)), true, rTransition, p_obj.transitionParams); } else { nTween = new TweenListObj(rScopes[i], (_currentTime + ((rDelay * 1000) / _timeScale)), (_currentTime + (((rDelay * 1000) + (rTime * 1000)) / _timeScale)), false, rTransition, p_obj.transitionParams); }; nTween.properties = null; nTween.onStart = p_obj.onStart; nTween.onUpdate = p_obj.onUpdate; nTween.onComplete = p_obj.onComplete; nTween.onOverwrite = p_obj.onOverwrite; nTween.onStartParams = p_obj.onStartParams; nTween.onUpdateParams = p_obj.onUpdateParams; nTween.onCompleteParams = p_obj.onCompleteParams; nTween.onOverwriteParams = p_obj.onOverwriteParams; nTween.onStartScope = p_obj.onStartScope; nTween.onUpdateScope = p_obj.onUpdateScope; nTween.onCompleteScope = p_obj.onCompleteScope; nTween.onOverwriteScope = p_obj.onOverwriteScope; nTween.onErrorScope = p_obj.onErrorScope; nTween.isCaller = true; nTween.count = p_obj.count; nTween.waitFrames = p_obj.waitFrames; _tweenList.push(nTween); if ((((rTime == 0)) && ((rDelay == 0)))){ myT = (_tweenList.length - 1); updateTweenByIndex(myT); removeTweenByIndex(myT); }; i++; }; return (true); } public static function pauseAllTweens():Boolean{ var i:uint; if (!Boolean(_tweenList)){ return (false); }; var paused:Boolean; i = 0; while (i < _tweenList.length) { pauseTweenByIndex(i); paused = true; i++; }; return (paused); } public static function removeTweens(p_scope:Object, ... _args):Boolean{ var i:uint; var sps:SpecialPropertySplitter; var specialProps:Array; var j:uint; var properties:Array = new Array(); i = 0; while (i < _args.length) { if ((((typeof(_args[i]) == "string")) && ((properties.indexOf(_args[i]) == -1)))){ if (_specialPropertySplitterList[_args[i]]){ sps = _specialPropertySplitterList[_args[i]]; specialProps = sps.splitValues(p_scope, null); j = 0; while (j < specialProps.length) { properties.push(specialProps[j].name); j++; }; } else { properties.push(_args[i]); }; }; i++; }; return (affectTweens(removeTweenByIndex, p_scope, properties)); } public static function splitTweens(p_tween:Number, p_properties:Array):uint{ var i:uint; var pName:String; var found:Boolean; var originalTween:TweenListObj = _tweenList[p_tween]; var newTween:TweenListObj = originalTween.clone(false); i = 0; while (i < p_properties.length) { pName = p_properties[i]; if (Boolean(originalTween.properties[pName])){ originalTween.properties[pName] = undefined; delete originalTween.properties[pName]; }; i++; }; for (pName in newTween.properties) { found = false; i = 0; while (i < p_properties.length) { if (p_properties[i] == pName){ found = true; break; }; i++; }; if (!found){ newTween.properties[pName] = undefined; delete newTween.properties[pName]; }; }; _tweenList.push(newTween); return ((_tweenList.length - 1)); } public static function updateFrame():void{ _currentTimeFrame++; } public static function resumeTweenByIndex(p_tween:Number):Boolean{ var tTweening:TweenListObj = _tweenList[p_tween]; if ((((tTweening == null)) || (!(tTweening.isPaused)))){ return (false); }; var cTime:Number = getCurrentTweeningTime(tTweening); tTweening.timeStart = (tTweening.timeStart + (cTime - tTweening.timePaused)); tTweening.timeComplete = (tTweening.timeComplete + (cTime - tTweening.timePaused)); tTweening.timePaused = undefined; tTweening.isPaused = false; return (true); } public static function getVersion():String{ return ("AS3 1.31.74"); } public static function onEnterFrame(e:Event):void{ updateTime(); updateFrame(); var hasUpdated:Boolean; hasUpdated = updateTweens(); if (!hasUpdated){ stopEngine(); }; } public static function updateTime():void{ _currentTime = getTimer(); } private static function updateTweenByIndex(i: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 = i; 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); //unresolved if if (Boolean(tTweening.onUpdate)){ eventScope = (Boolean(tTweening.onUpdateScope)) ? tTweening.onUpdateScope : tScope; tTweening.onUpdate.apply(eventScope, tTweening.onUpdateParams); continue; var _slot1 = e1; handleError(tTweening, _slot1, "onUpdate"); }; } while (tTweening.timesCalled++, !(tTweening.timesCalled >= tTweening.count)); } 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; tTweening.onStart.apply(eventScope, tTweening.onStartParams); //unresolved jump var _slot1 = e2; handleError(tTweening, _slot1, "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; tTweening.onUpdate.apply(eventScope, tTweening.onUpdateParams); //unresolved jump var _slot1 = e3; handleError(tTweening, _slot1, "onUpdate"); }; } else { tTweening.updatesSkipped++; }; }; if (((isOver) && (Boolean(tTweening.onComplete)))){ eventScope = (Boolean(tTweening.onCompleteScope)) ? tTweening.onCompleteScope : tScope; tTweening.onComplete.apply(eventScope, tTweening.onCompleteParams); //unresolved jump var _slot1 = e4; handleError(tTweening, _slot1, "onComplete"); }; return (!(isOver)); }; return (true); } public static function setTimeScale(p_time:Number):void{ var i:Number; var cTime:Number; if (isNaN(p_time)){ p_time = 1; }; if (p_time < 1E-5){ p_time = 1E-5; }; if (p_time != _timeScale){ if (_tweenList != null){ i = 0; while (i < _tweenList.length) { cTime = getCurrentTweeningTime(_tweenList[i]); _tweenList[i].timeStart = (cTime - (((cTime - _tweenList[i].timeStart) * _timeScale) / p_time)); _tweenList[i].timeComplete = (cTime - (((cTime - _tweenList[i].timeComplete) * _timeScale) / p_time)); if (_tweenList[i].timePaused != undefined){ _tweenList[i].timePaused = (cTime - (((cTime - _tweenList[i].timePaused) * _timeScale) / p_time)); }; i++; }; }; _timeScale = p_time; }; } public static function resumeAllTweens():Boolean{ var i:uint; if (!Boolean(_tweenList)){ return (false); }; var resumed:Boolean; i = 0; while (i < _tweenList.length) { resumeTweenByIndex(i); resumed = true; i++; }; return (resumed); } private static function handleError(pTweening:TweenListObj, pError:Error, pCallBackName:String):void{ var eventScope:Object; var pTweening = pTweening; var pError = pError; var pCallBackName = pCallBackName; if (((Boolean(pTweening.onError)) && ((pTweening.onError is Function)))){ eventScope = (Boolean(pTweening.onErrorScope)) ? pTweening.onErrorScope : pTweening.scope; pTweening.onError.apply(eventScope, [pTweening.scope, pError]); //unresolved jump var _slot1 = metaError; printError(((((String(pTweening.scope) + " raised an error while executing the 'onError' handler. Original error:\n ") + pError.getStackTrace()) + "\nonError error: ") + _slot1.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 i:uint; if (!Boolean(_tweenList)){ return (false); }; var removed:Boolean; i = 0; while (i < _tweenList.length) { removeTweenByIndex(i); removed = true; i++; }; return (removed); } public static function addTween(p_scopes:Object=null, p_parameters:Object=null):Boolean{ var i:Number; var j:Number; var istr:String; var rScopes:Array; var rTransition:Function; var nProperties:Object; var nTween:TweenListObj; var myT:Number; var splitProperties:Array; var splitProperties2:Array; var tempModifiedProperties:Array; var trans:String; if (!Boolean(p_scopes)){ return (false); }; if ((p_scopes is Array)){ rScopes = p_scopes.concat(); } else { rScopes = [p_scopes]; }; var p_obj:Object = TweenListObj.makePropertiesChain(p_parameters); if (!_inited){ init(); }; if (((!(_engineExists)) || (!(Boolean(__tweener_controller__))))){ startEngine(); }; var rTime:Number = (isNaN(p_obj.time)) ? 0 : p_obj.time; var rDelay:Number = (isNaN(p_obj.delay)) ? 0 : p_obj.delay; var rProperties:Array = new Array(); var restrictedWords: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 modifiedProperties:Object = new Object(); for (istr in p_obj) { if (!restrictedWords[istr]){ if (_specialPropertySplitterList[istr]){ splitProperties = _specialPropertySplitterList[istr].splitValues(p_obj[istr], _specialPropertySplitterList[istr].parameters); i = 0; while (i < splitProperties.length) { if (_specialPropertySplitterList[splitProperties[i].name]){ splitProperties2 = _specialPropertySplitterList[splitProperties[i].name].splitValues(splitProperties[i].value, _specialPropertySplitterList[splitProperties[i].name].parameters); j = 0; while (j < splitProperties2.length) { rProperties[splitProperties2[j].name] = {valueStart:undefined, valueComplete:splitProperties2[j].value, arrayIndex:splitProperties2[j].arrayIndex, isSpecialProperty:false}; j++; }; } else { rProperties[splitProperties[i].name] = {valueStart:undefined, valueComplete:splitProperties[i].value, arrayIndex:splitProperties[i].arrayIndex, isSpecialProperty:false}; }; i++; }; } else { if (_specialPropertyModifierList[istr] != undefined){ tempModifiedProperties = _specialPropertyModifierList[istr].modifyValues(p_obj[istr]); i = 0; while (i < tempModifiedProperties.length) { modifiedProperties[tempModifiedProperties[i].name] = {modifierParameters:tempModifiedProperties[i].parameters, modifierFunction:_specialPropertyModifierList[istr].getValue}; i++; }; } else { rProperties[istr] = {valueStart:undefined, valueComplete:p_obj[istr]}; }; }; }; }; for (istr in rProperties) { if (_specialPropertyList[istr] != undefined){ rProperties[istr].isSpecialProperty = true; } else { if (rScopes[0][istr] == undefined){ printError((((("The property '" + istr) + "' doesn't seem to be a normal object property of ") + String(rScopes[0])) + " or a registered special property.")); }; }; }; for (istr in modifiedProperties) { if (rProperties[istr] != undefined){ rProperties[istr].modifierParameters = modifiedProperties[istr].modifierParameters; rProperties[istr].modifierFunction = modifiedProperties[istr].modifierFunction; }; }; if (typeof(p_obj.transition) == "string"){ trans = p_obj.transition.toLowerCase(); rTransition = _transitionList[trans]; } else { rTransition = p_obj.transition; }; if (!Boolean(rTransition)){ rTransition = _transitionList["easeoutexpo"]; }; i = 0; while (i < rScopes.length) { nProperties = new Object(); for (istr in rProperties) { nProperties[istr] = new PropertyInfoObj(rProperties[istr].valueStart, rProperties[istr].valueComplete, rProperties[istr].valueComplete, rProperties[istr].arrayIndex, {}, rProperties[istr].isSpecialProperty, rProperties[istr].modifierFunction, rProperties[istr].modifierParameters); }; if (p_obj.useFrames == true){ nTween = new TweenListObj(rScopes[i], (_currentTimeFrame + (rDelay / _timeScale)), (_currentTimeFrame + ((rDelay + rTime) / _timeScale)), true, rTransition, p_obj.transitionParams); } else { nTween = new TweenListObj(rScopes[i], (_currentTime + ((rDelay * 1000) / _timeScale)), (_currentTime + (((rDelay * 1000) + (rTime * 1000)) / _timeScale)), false, rTransition, p_obj.transitionParams); }; nTween.properties = nProperties; nTween.onStart = p_obj.onStart; nTween.onUpdate = p_obj.onUpdate; nTween.onComplete = p_obj.onComplete; nTween.onOverwrite = p_obj.onOverwrite; nTween.onError = p_obj.onError; nTween.onStartParams = p_obj.onStartParams; nTween.onUpdateParams = p_obj.onUpdateParams; nTween.onCompleteParams = p_obj.onCompleteParams; nTween.onOverwriteParams = p_obj.onOverwriteParams; nTween.onStartScope = p_obj.onStartScope; nTween.onUpdateScope = p_obj.onUpdateScope; nTween.onCompleteScope = p_obj.onCompleteScope; nTween.onOverwriteScope = p_obj.onOverwriteScope; nTween.onErrorScope = p_obj.onErrorScope; nTween.rounded = p_obj.rounded; nTween.skipUpdates = p_obj.skipUpdates; removeTweensByTime(nTween.scope, nTween.properties, nTween.timeStart, nTween.timeComplete); _tweenList.push(nTween); if ((((rTime == 0)) && ((rDelay == 0)))){ myT = (_tweenList.length - 1); updateTweenByIndex(myT); removeTweenByIndex(myT); }; i++; }; return (true); } public static function registerTransition(p_name:String, p_function:Function):void{ if (!_inited){ init(); }; _transitionList[p_name] = p_function; } public static function printError(p_message:String):void{ trace(("## [Tweener] Error: " + p_message)); } private static function affectTweens(p_affectFunction:Function, p_scope:Object, p_properties:Array):Boolean{ var i:uint; var affectedProperties:Array; var j:uint; var objectProperties:uint; var slicedTweenIndex:uint; var affected:Boolean; if (!Boolean(_tweenList)){ return (false); }; i = 0; while (i < _tweenList.length) { if (((_tweenList[i]) && ((_tweenList[i].scope == p_scope)))){ if (p_properties.length == 0){ p_affectFunction(i); affected = true; } else { affectedProperties = new Array(); j = 0; while (j < p_properties.length) { if (Boolean(_tweenList[i].properties[p_properties[j]])){ affectedProperties.push(p_properties[j]); }; j++; }; if (affectedProperties.length > 0){ objectProperties = AuxFunctions.getObjectLength(_tweenList[i].properties); if (objectProperties == affectedProperties.length){ p_affectFunction(i); affected = true; } else { slicedTweenIndex = splitTweens(i, affectedProperties); p_affectFunction(slicedTweenIndex); affected = true; }; }; }; }; i++; }; return (affected); } public static function getTweens(p_scope:Object):Array{ var i:uint; var pName:String; if (!Boolean(_tweenList)){ return ([]); }; var tList:Array = new Array(); i = 0; while (i < _tweenList.length) { if (((Boolean(_tweenList[i])) && ((_tweenList[i].scope == p_scope)))){ for (pName in _tweenList[i].properties) { tList.push(pName); }; }; i++; }; return (tList); } public static function isTweening(p_scope:Object):Boolean{ var i:uint; if (!Boolean(_tweenList)){ return (false); }; i = 0; while (i < _tweenList.length) { if (((Boolean(_tweenList[i])) && ((_tweenList[i].scope == p_scope)))){ return (true); }; i++; }; return (false); } public static function pauseTweenByIndex(p_tween:Number):Boolean{ var tTweening:TweenListObj = _tweenList[p_tween]; if ((((tTweening == null)) || (tTweening.isPaused))){ return (false); }; tTweening.timePaused = getCurrentTweeningTime(tTweening); tTweening.isPaused = true; return (true); } public static function getCurrentTweeningTime(p_tweening:Object):Number{ return ((p_tweening.useFrames) ? _currentTimeFrame : _currentTime); } public static function getTweenCount(p_scope:Object):Number{ var i:uint; if (!Boolean(_tweenList)){ return (0); }; var c:Number = 0; i = 0; while (i < _tweenList.length) { if (((Boolean(_tweenList[i])) && ((_tweenList[i].scope == p_scope)))){ c = (c + AuxFunctions.getObjectLength(_tweenList[i].properties)); }; i++; }; return (c); } 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(p_scope:Object, p_properties:Object, p_timeStart:Number, p_timeComplete:Number):Boolean{ var removedLocally:Boolean; var i:uint; var pName:String; var eventScope:Object; var p_scope = p_scope; var p_properties = p_properties; var p_timeStart = p_timeStart; var p_timeComplete = p_timeComplete; 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; _tweenList[i].onOverwrite.apply(eventScope, _tweenList[i].onOverwriteParams); //unresolved jump var _slot1 = e; handleError(_tweenList[i], _slot1, "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(p_name:String, p_splitFunction:Function, p_parameters:Array=null):void{ if (!_inited){ init(); }; var sps:SpecialPropertySplitter = new SpecialPropertySplitter(p_splitFunction, p_parameters); _specialPropertySplitterList[p_name] = sps; } public static function removeTweenByIndex(i:Number, p_finalRemoval:Boolean=false):Boolean{ _tweenList[i] = null; if (p_finalRemoval){ _tweenList.splice(i, 1); }; return (true); } public static function resumeTweens(p_scope:Object, ... _args):Boolean{ var i:uint; var properties:Array = new Array(); i = 0; while (i < _args.length) { if ((((typeof(_args[i]) == "string")) && ((properties.indexOf(_args[i]) == -1)))){ properties.push(_args[i]); }; i++; }; return (affectTweens(resumeTweenByIndex, p_scope, properties)); } public static function pauseTweens(p_scope:Object, ... _args):Boolean{ var i:uint; var properties:Array = new Array(); i = 0; while (i < _args.length) { if ((((typeof(_args[i]) == "string")) && ((properties.indexOf(_args[i]) == -1)))){ properties.push(_args[i]); }; i++; }; return (affectTweens(pauseTweenByIndex, p_scope, properties)); } } }//package caurina.transitions
Section 11
//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(p_scope:Object, p_timeStart:Number, p_timeComplete:Number, p_useFrames:Boolean, p_transition:Function, p_transitionParams:Object){ super(); scope = p_scope; timeStart = p_timeStart; timeComplete = p_timeComplete; useFrames = p_useFrames; transition = p_transition; transitionParams = p_transitionParams; properties = new Object(); isPaused = false; timePaused = undefined; isCaller = false; updatesSkipped = 0; timesCalled = 0; skipUpdates = 0; hasStarted = false; } public function clone(omitEvents:Boolean):TweenListObj{ var pName:String; var nTween:TweenListObj = new TweenListObj(scope, timeStart, timeComplete, useFrames, transition, transitionParams); nTween.properties = new Array(); for (pName in properties) { nTween.properties[pName] = properties[pName].clone(); }; nTween.skipUpdates = skipUpdates; nTween.updatesSkipped = updatesSkipped; if (!omitEvents){ nTween.onStart = onStart; nTween.onUpdate = onUpdate; nTween.onComplete = onComplete; nTween.onOverwrite = onOverwrite; nTween.onError = onError; nTween.onStartParams = onStartParams; nTween.onUpdateParams = onUpdateParams; nTween.onCompleteParams = onCompleteParams; nTween.onOverwriteParams = onOverwriteParams; nTween.onStartScope = onStartScope; nTween.onUpdateScope = onUpdateScope; nTween.onCompleteScope = onCompleteScope; nTween.onOverwriteScope = onOverwriteScope; nTween.onErrorScope = onErrorScope; }; nTween.rounded = rounded; nTween.isPaused = isPaused; nTween.timePaused = timePaused; nTween.isCaller = isCaller; nTween.count = count; nTween.timesCalled = timesCalled; nTween.waitFrames = waitFrames; nTween.hasStarted = hasStarted; return (nTween); } public function toString():String{ var i:String; var returnStr:String = "\n[TweenListObj "; returnStr = (returnStr + ("scope:" + String(scope))); returnStr = (returnStr + ", properties:"); var isFirst:Boolean; for (i in properties) { if (!isFirst){ returnStr = (returnStr + ","); }; returnStr = (returnStr + ("[name:" + properties[i].name)); returnStr = (returnStr + (",valueStart:" + properties[i].valueStart)); returnStr = (returnStr + (",valueComplete:" + properties[i].valueComplete)); returnStr = (returnStr + "]"); isFirst = false; }; returnStr = (returnStr + (", timeStart:" + String(timeStart))); returnStr = (returnStr + (", timeComplete:" + String(timeComplete))); returnStr = (returnStr + (", useFrames:" + String(useFrames))); returnStr = (returnStr + (", transition:" + String(transition))); returnStr = (returnStr + (", transitionParams:" + String(transitionParams))); if (skipUpdates){ returnStr = (returnStr + (", skipUpdates:" + String(skipUpdates))); }; if (updatesSkipped){ returnStr = (returnStr + (", updatesSkipped:" + String(updatesSkipped))); }; if (Boolean(onStart)){ returnStr = (returnStr + (", onStart:" + String(onStart))); }; if (Boolean(onUpdate)){ returnStr = (returnStr + (", onUpdate:" + String(onUpdate))); }; if (Boolean(onComplete)){ returnStr = (returnStr + (", onComplete:" + String(onComplete))); }; if (Boolean(onOverwrite)){ returnStr = (returnStr + (", onOverwrite:" + String(onOverwrite))); }; if (Boolean(onError)){ returnStr = (returnStr + (", onError:" + String(onError))); }; if (onStartParams){ returnStr = (returnStr + (", onStartParams:" + String(onStartParams))); }; if (onUpdateParams){ returnStr = (returnStr + (", onUpdateParams:" + String(onUpdateParams))); }; if (onCompleteParams){ returnStr = (returnStr + (", onCompleteParams:" + String(onCompleteParams))); }; if (onOverwriteParams){ returnStr = (returnStr + (", onOverwriteParams:" + String(onOverwriteParams))); }; if (onStartScope){ returnStr = (returnStr + (", onStartScope:" + String(onStartScope))); }; if (onUpdateScope){ returnStr = (returnStr + (", onUpdateScope:" + String(onUpdateScope))); }; if (onCompleteScope){ returnStr = (returnStr + (", onCompleteScope:" + String(onCompleteScope))); }; if (onOverwriteScope){ returnStr = (returnStr + (", onOverwriteScope:" + String(onOverwriteScope))); }; if (onErrorScope){ returnStr = (returnStr + (", onErrorScope:" + String(onErrorScope))); }; if (rounded){ returnStr = (returnStr + (", rounded:" + String(rounded))); }; if (isPaused){ returnStr = (returnStr + (", isPaused:" + String(isPaused))); }; if (timePaused){ returnStr = (returnStr + (", timePaused:" + String(timePaused))); }; if (isCaller){ returnStr = (returnStr + (", isCaller:" + String(isCaller))); }; if (count){ returnStr = (returnStr + (", count:" + String(count))); }; if (timesCalled){ returnStr = (returnStr + (", timesCalled:" + String(timesCalled))); }; if (waitFrames){ returnStr = (returnStr + (", waitFrames:" + String(waitFrames))); }; if (hasStarted){ returnStr = (returnStr + (", hasStarted:" + String(hasStarted))); }; returnStr = (returnStr + "]\n"); return (returnStr); } public static function makePropertiesChain(p_obj:Object):Object{ var chainedObject:Object; var chain:Object; var currChainObj:Object; var len:Number; var i:Number; var k:Number; var baseObject:Object = p_obj.base; if (baseObject){ chainedObject = {}; if ((baseObject is Array)){ chain = []; k = 0; while (k < baseObject.length) { chain.push(baseObject[k]); k++; }; } else { chain = [baseObject]; }; chain.push(p_obj); len = chain.length; i = 0; while (i < len) { if (chain[i]["base"]){ currChainObj = AuxFunctions.concatObjects(makePropertiesChain(chain[i]["base"]), chain[i]); } else { currChainObj = chain[i]; }; chainedObject = AuxFunctions.concatObjects(chainedObject, currChainObj); i++; }; if (chainedObject["base"]){ delete chainedObject["base"]; }; return (chainedObject); //unresolved jump }; return (p_obj); } } }//package caurina.transitions
Section 12
//MD5 (com.adobe.crypto.MD5) package com.adobe.crypto { import flash.utils.*; import com.adobe.utils.*; public class MD5 { public static var digest:ByteArray; public function MD5(){ super(); } private static function ff(a:int, b:int, c:int, d:int, x:int, s:int, t:int):int{ return (transform(f, a, b, c, d, x, s, t)); } private static function f(x:int, y:int, z:int):int{ return (((x & y) | (~(x) & z))); } private static function g(x:int, y:int, z:int):int{ return (((x & z) | (y & ~(z)))); } private static function h(x:int, y:int, z:int):int{ return (((x ^ y) ^ z)); } private static function i(x:int, y:int, z:int):int{ return ((y ^ (x | ~(z)))); } private static function transform(func:Function, a:int, b:int, c:int, d:int, x:int, s:int, t:int):int{ var tmp:int = (((a + int(func(b, c, d))) + x) + t); return ((IntUtil.rol(tmp, s) + b)); } private static function hh(a:int, b:int, c:int, d:int, x:int, s:int, t:int):int{ return (transform(h, a, b, c, d, x, s, t)); } public static function hash(s:String):String{ var ba:ByteArray = new ByteArray(); ba.writeUTFBytes(s); return (hashBinary(ba)); } private static function createBlocks(s:ByteArray):Array{ var blocks:Array = new Array(); var len:int = (s.length * 8); var mask = 0xFF; var i:int; while (i < len) { blocks[int((i >> 5))] = (blocks[int((i >> 5))] | ((s[(i / 8)] & mask) << (i % 32))); i = (i + 8); }; blocks[int((len >> 5))] = (blocks[int((len >> 5))] | (128 << (len % 32))); blocks[int(((((len + 64) >>> 9) << 4) + 14))] = len; return (blocks); } public static function hashBinary(s:ByteArray):String{ var aa:int; var bb:int; var cc:int; var dd:int; var a = 1732584193; var b = -271733879; var c = -1732584194; var d = 271733878; var x:Array = createBlocks(s); var len:int = x.length; var i:int; while (i < len) { aa = a; bb = b; cc = c; dd = d; a = ff(a, b, c, d, x[int((i + 0))], 7, -680876936); d = ff(d, a, b, c, x[int((i + 1))], 12, -389564586); c = ff(c, d, a, b, x[int((i + 2))], 17, 606105819); b = ff(b, c, d, a, x[int((i + 3))], 22, -1044525330); a = ff(a, b, c, d, x[int((i + 4))], 7, -176418897); d = ff(d, a, b, c, x[int((i + 5))], 12, 1200080426); c = ff(c, d, a, b, x[int((i + 6))], 17, -1473231341); b = ff(b, c, d, a, x[int((i + 7))], 22, -45705983); a = ff(a, b, c, d, x[int((i + 8))], 7, 1770035416); d = ff(d, a, b, c, x[int((i + 9))], 12, -1958414417); c = ff(c, d, a, b, x[int((i + 10))], 17, -42063); b = ff(b, c, d, a, x[int((i + 11))], 22, -1990404162); a = ff(a, b, c, d, x[int((i + 12))], 7, 1804603682); d = ff(d, a, b, c, x[int((i + 13))], 12, -40341101); c = ff(c, d, a, b, x[int((i + 14))], 17, -1502002290); b = ff(b, c, d, a, x[int((i + 15))], 22, 1236535329); a = gg(a, b, c, d, x[int((i + 1))], 5, -165796510); d = gg(d, a, b, c, x[int((i + 6))], 9, -1069501632); c = gg(c, d, a, b, x[int((i + 11))], 14, 643717713); b = gg(b, c, d, a, x[int((i + 0))], 20, -373897302); a = gg(a, b, c, d, x[int((i + 5))], 5, -701558691); d = gg(d, a, b, c, x[int((i + 10))], 9, 38016083); c = gg(c, d, a, b, x[int((i + 15))], 14, -660478335); b = gg(b, c, d, a, x[int((i + 4))], 20, -405537848); a = gg(a, b, c, d, x[int((i + 9))], 5, 568446438); d = gg(d, a, b, c, x[int((i + 14))], 9, -1019803690); c = gg(c, d, a, b, x[int((i + 3))], 14, -187363961); b = gg(b, c, d, a, x[int((i + 8))], 20, 1163531501); a = gg(a, b, c, d, x[int((i + 13))], 5, -1444681467); d = gg(d, a, b, c, x[int((i + 2))], 9, -51403784); c = gg(c, d, a, b, x[int((i + 7))], 14, 1735328473); b = gg(b, c, d, a, x[int((i + 12))], 20, -1926607734); a = hh(a, b, c, d, x[int((i + 5))], 4, -378558); d = hh(d, a, b, c, x[int((i + 8))], 11, -2022574463); c = hh(c, d, a, b, x[int((i + 11))], 16, 1839030562); b = hh(b, c, d, a, x[int((i + 14))], 23, -35309556); a = hh(a, b, c, d, x[int((i + 1))], 4, -1530992060); d = hh(d, a, b, c, x[int((i + 4))], 11, 1272893353); c = hh(c, d, a, b, x[int((i + 7))], 16, -155497632); b = hh(b, c, d, a, x[int((i + 10))], 23, -1094730640); a = hh(a, b, c, d, x[int((i + 13))], 4, 681279174); d = hh(d, a, b, c, x[int((i + 0))], 11, -358537222); c = hh(c, d, a, b, x[int((i + 3))], 16, -722521979); b = hh(b, c, d, a, x[int((i + 6))], 23, 76029189); a = hh(a, b, c, d, x[int((i + 9))], 4, -640364487); d = hh(d, a, b, c, x[int((i + 12))], 11, -421815835); c = hh(c, d, a, b, x[int((i + 15))], 16, 530742520); b = hh(b, c, d, a, x[int((i + 2))], 23, -995338651); a = ii(a, b, c, d, x[int((i + 0))], 6, -198630844); d = ii(d, a, b, c, x[int((i + 7))], 10, 1126891415); c = ii(c, d, a, b, x[int((i + 14))], 15, -1416354905); b = ii(b, c, d, a, x[int((i + 5))], 21, -57434055); a = ii(a, b, c, d, x[int((i + 12))], 6, 1700485571); d = ii(d, a, b, c, x[int((i + 3))], 10, -1894986606); c = ii(c, d, a, b, x[int((i + 10))], 15, -1051523); b = ii(b, c, d, a, x[int((i + 1))], 21, -2054922799); a = ii(a, b, c, d, x[int((i + 8))], 6, 1873313359); d = ii(d, a, b, c, x[int((i + 15))], 10, -30611744); c = ii(c, d, a, b, x[int((i + 6))], 15, -1560198380); b = ii(b, c, d, a, x[int((i + 13))], 21, 1309151649); a = ii(a, b, c, d, x[int((i + 4))], 6, -145523070); d = ii(d, a, b, c, x[int((i + 11))], 10, -1120210379); c = ii(c, d, a, b, x[int((i + 2))], 15, 718787259); b = ii(b, c, d, a, x[int((i + 9))], 21, -343485551); a = (a + aa); b = (b + bb); c = (c + cc); d = (d + dd); i = (i + 16); }; digest = new ByteArray(); digest.writeInt(a); digest.writeInt(b); digest.writeInt(c); digest.writeInt(d); digest.position = 0; return ((((IntUtil.toHex(a) + IntUtil.toHex(b)) + IntUtil.toHex(c)) + IntUtil.toHex(d))); } private static function gg(a:int, b:int, c:int, d:int, x:int, s:int, t:int):int{ return (transform(g, a, b, c, d, x, s, t)); } private static function ii(a:int, b:int, c:int, d:int, x:int, s:int, t:int):int{ return (transform(i, a, b, c, d, x, s, t)); } public static function hashBytes(s:ByteArray):String{ return (hashBinary(s)); } } }//package com.adobe.crypto
Section 13
//BitString (com.adobe.images.BitString) package com.adobe.images { public class BitString { public var val:int;// = 0 public var len:int;// = 0 public function BitString(){ super(); } } }//package com.adobe.images
Section 14
//JPGEncoder (com.adobe.images.JPGEncoder) package com.adobe.images { import flash.display.*; import flash.utils.*; import flash.geom.*; 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(quality: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 (quality <= 0){ quality = 1; }; if (quality > 100){ quality = 100; }; var sf:int; if (quality < 50){ sf = int((5000 / quality)); } else { sf = int((200 - (quality * 2))); }; initHuffmanTbl(); initCategoryNumber(); initQuantTables(sf); } 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(img:BitmapData, xpos:int, ypos:int):void{ var x:int; var P:uint; var R:Number; var G:Number; var B:Number; var pos:int; var y:int; while (y < 8) { x = 0; while (x < 8) { P = img.getPixel32((xpos + x), (ypos + y)); R = Number(((P >> 16) & 0xFF)); G = Number(((P >> 8) & 0xFF)); B = Number((P & 0xFF)); YDU[pos] = ((((0.299 * R) + (0.587 * G)) + (0.114 * B)) - 128); UDU[pos] = (((-0.16874 * R) + (-0.33126 * G)) + (0.5 * B)); VDU[pos] = (((0.5 * R) + (-0.41869 * G)) + (-0.08131 * B)); pos++; x++; }; y++; }; } private function writeBits(bs:BitString):void{ var value:int = bs.val; var posval:int = (bs.len - 1); while (posval >= 0) { if ((value & uint((1 << posval)))){ bytenew = (bytenew | uint((1 << bytepos))); }; posval--; bytepos--; if (bytepos < 0){ if (bytenew == 0xFF){ writeByte(0xFF); writeByte(0); } else { writeByte(bytenew); }; bytepos = 7; bytenew = 0; }; }; } private function writeWord(value:int):void{ writeByte(((value >> 8) & 0xFF)); writeByte((value & 0xFF)); } private function writeByte(value:int):void{ byteout.writeByte(value); } private function writeDHT():void{ var i:int; writeWord(65476); writeWord(418); writeByte(0); i = 0; while (i < 16) { writeByte(std_dc_luminance_nrcodes[(i + 1)]); i++; }; i = 0; while (i <= 11) { writeByte(std_dc_luminance_values[i]); i++; }; writeByte(16); i = 0; while (i < 16) { writeByte(std_ac_luminance_nrcodes[(i + 1)]); i++; }; i = 0; while (i <= 161) { writeByte(std_ac_luminance_values[i]); i++; }; writeByte(1); i = 0; while (i < 16) { writeByte(std_dc_chrominance_nrcodes[(i + 1)]); i++; }; i = 0; while (i <= 11) { writeByte(std_dc_chrominance_values[i]); i++; }; writeByte(17); i = 0; while (i < 16) { writeByte(std_ac_chrominance_nrcodes[(i + 1)]); i++; }; i = 0; while (i <= 161) { writeByte(std_ac_chrominance_values[i]); i++; }; } public function encode(image:BitmapData):ByteArray{ var xpos:int; var fillbits:BitString; byteout = new ByteArray(); bytenew = 0; bytepos = 7; writeWord(65496); writeAPP0(); writeDQT(); writeSOF0(image.width, image.height); writeDHT(); writeSOS(); var DCY:Number = 0; var DCU:Number = 0; var DCV:Number = 0; bytenew = 0; bytepos = 7; var ypos:int; while (ypos < image.height) { xpos = 0; while (xpos < image.width) { RGB2YUV(image, xpos, ypos); DCY = processDU(YDU, fdtbl_Y, DCY, YDC_HT, YAC_HT); DCU = processDU(UDU, fdtbl_UV, DCU, UVDC_HT, UVAC_HT); DCV = processDU(VDU, fdtbl_UV, DCV, UVDC_HT, UVAC_HT); xpos = (xpos + 8); }; ypos = (ypos + 8); }; if (bytepos >= 0){ fillbits = new BitString(); fillbits.len = (bytepos + 1); fillbits.val = ((1 << (bytepos + 1)) - 1); writeBits(fillbits); }; writeWord(65497); return (byteout); } private function initCategoryNumber():void{ var nr:int; var nrlower = 1; var nrupper = 2; var cat = 1; while (cat <= 15) { nr = nrlower; while (nr < nrupper) { category[(32767 + nr)] = cat; bitcode[(32767 + nr)] = new BitString(); bitcode[(32767 + nr)].len = cat; bitcode[(32767 + nr)].val = nr; nr++; }; nr = -((nrupper - 1)); while (nr <= -(nrlower)) { category[(32767 + nr)] = cat; bitcode[(32767 + nr)] = new BitString(); bitcode[(32767 + nr)].len = cat; bitcode[(32767 + nr)].val = ((nrupper - 1) + nr); nr++; }; nrlower = (nrlower << 1); nrupper = (nrupper << 1); cat++; }; } private function writeDQT():void{ var i:int; writeWord(65499); writeWord(132); writeByte(0); i = 0; while (i < 64) { writeByte(YTable[i]); i++; }; writeByte(1); i = 0; while (i < 64) { writeByte(UVTable[i]); i++; }; } 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(CDU:Array, fdtbl:Array, DC:Number, HTDC:Array, HTAC:Array):Number{ var i:int; var startpos:int; var nrzeroes:int; var nrmarker:int; var EOB:BitString = HTAC[0]; var M16zeroes:BitString = HTAC[240]; var DU_DCT:Array = fDCTQuant(CDU, fdtbl); i = 0; while (i < 64) { DU[ZigZag[i]] = DU_DCT[i]; i++; }; var Diff:int = (DU[0] - DC); DC = DU[0]; if (Diff == 0){ writeBits(HTDC[0]); } else { writeBits(HTDC[category[(32767 + Diff)]]); writeBits(bitcode[(32767 + Diff)]); }; var end0pos = 63; while ((((end0pos > 0)) && ((DU[end0pos] == 0)))) { end0pos--; }; if (end0pos == 0){ writeBits(EOB); return (DC); }; i = 1; while (i <= end0pos) { startpos = i; while ((((DU[i] == 0)) && ((i <= end0pos)))) { i++; }; nrzeroes = (i - startpos); if (nrzeroes >= 16){ nrmarker = 1; while (nrmarker <= (nrzeroes / 16)) { writeBits(M16zeroes); nrmarker++; }; nrzeroes = int((nrzeroes & 15)); }; writeBits(HTAC[((nrzeroes * 16) + category[(32767 + DU[i])])]); writeBits(bitcode[(32767 + DU[i])]); i++; }; if (end0pos != 63){ writeBits(EOB); }; return (DC); } private function initQuantTables(sf:int):void{ var i:int; var t:Number; var col:int; var YQT: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]; i = 0; while (i < 64) { t = Math.floor((((YQT[i] * sf) + 50) / 100)); if (t < 1){ t = 1; } else { if (t > 0xFF){ t = 0xFF; }; }; YTable[ZigZag[i]] = t; i++; }; var UVQT: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]; i = 0; while (i < 64) { t = Math.floor((((UVQT[i] * sf) + 50) / 100)); if (t < 1){ t = 1; } else { if (t > 0xFF){ t = 0xFF; }; }; UVTable[ZigZag[i]] = t; i++; }; var aasf:Array = [1, 1.387039845, 1.306562965, 1.175875602, 1, 0.785694958, 0.5411961, 0.275899379]; i = 0; var row:int; while (row < 8) { col = 0; while (col < 8) { fdtbl_Y[i] = (1 / (((YTable[ZigZag[i]] * aasf[row]) * aasf[col]) * 8)); fdtbl_UV[i] = (1 / (((UVTable[ZigZag[i]] * aasf[row]) * aasf[col]) * 8)); i++; col++; }; row++; }; } private function writeSOF0(width:int, height:int):void{ writeWord(65472); writeWord(17); writeByte(8); writeWord(height); writeWord(width); writeByte(3); writeByte(1); writeByte(17); writeByte(0); writeByte(2); writeByte(17); writeByte(1); writeByte(3); writeByte(17); writeByte(1); } private function computeHuffmanTbl(nrcodes:Array, std_table:Array):Array{ var j:int; var codevalue:int; var pos_in_table:int; var HT:Array = new Array(); var k = 1; while (k <= 16) { j = 1; while (j <= nrcodes[k]) { HT[std_table[pos_in_table]] = new BitString(); HT[std_table[pos_in_table]].val = codevalue; HT[std_table[pos_in_table]].len = k; pos_in_table++; codevalue++; j++; }; codevalue = (codevalue * 2); k++; }; return (HT); } private function fDCTQuant(data:Array, fdtbl:Array):Array{ var tmp0:Number; var tmp1:Number; var tmp2:Number; var tmp3:Number; var tmp4:Number; var tmp5:Number; var tmp6:Number; var tmp7:Number; var tmp10:Number; var tmp11:Number; var tmp12:Number; var tmp13:Number; var z1:Number; var z2:Number; var z3:Number; var z4:Number; var z5:Number; var z11:Number; var z13:Number; var i:int; var dataOff:int; i = 0; while (i < 8) { tmp0 = (data[(dataOff + 0)] + data[(dataOff + 7)]); tmp7 = (data[(dataOff + 0)] - data[(dataOff + 7)]); tmp1 = (data[(dataOff + 1)] + data[(dataOff + 6)]); tmp6 = (data[(dataOff + 1)] - data[(dataOff + 6)]); tmp2 = (data[(dataOff + 2)] + data[(dataOff + 5)]); tmp5 = (data[(dataOff + 2)] - data[(dataOff + 5)]); tmp3 = (data[(dataOff + 3)] + data[(dataOff + 4)]); tmp4 = (data[(dataOff + 3)] - data[(dataOff + 4)]); tmp10 = (tmp0 + tmp3); tmp13 = (tmp0 - tmp3); tmp11 = (tmp1 + tmp2); tmp12 = (tmp1 - tmp2); data[(dataOff + 0)] = (tmp10 + tmp11); data[(dataOff + 4)] = (tmp10 - tmp11); z1 = ((tmp12 + tmp13) * 0.707106781); data[(dataOff + 2)] = (tmp13 + z1); data[(dataOff + 6)] = (tmp13 - z1); tmp10 = (tmp4 + tmp5); tmp11 = (tmp5 + tmp6); tmp12 = (tmp6 + tmp7); z5 = ((tmp10 - tmp12) * 0.382683433); z2 = ((0.5411961 * tmp10) + z5); z4 = ((1.306562965 * tmp12) + z5); z3 = (tmp11 * 0.707106781); z11 = (tmp7 + z3); z13 = (tmp7 - z3); data[(dataOff + 5)] = (z13 + z2); data[(dataOff + 3)] = (z13 - z2); data[(dataOff + 1)] = (z11 + z4); data[(dataOff + 7)] = (z11 - z4); dataOff = (dataOff + 8); i++; }; dataOff = 0; i = 0; while (i < 8) { tmp0 = (data[(dataOff + 0)] + data[(dataOff + 56)]); tmp7 = (data[(dataOff + 0)] - data[(dataOff + 56)]); tmp1 = (data[(dataOff + 8)] + data[(dataOff + 48)]); tmp6 = (data[(dataOff + 8)] - data[(dataOff + 48)]); tmp2 = (data[(dataOff + 16)] + data[(dataOff + 40)]); tmp5 = (data[(dataOff + 16)] - data[(dataOff + 40)]); tmp3 = (data[(dataOff + 24)] + data[(dataOff + 32)]); tmp4 = (data[(dataOff + 24)] - data[(dataOff + 32)]); tmp10 = (tmp0 + tmp3); tmp13 = (tmp0 - tmp3); tmp11 = (tmp1 + tmp2); tmp12 = (tmp1 - tmp2); data[(dataOff + 0)] = (tmp10 + tmp11); data[(dataOff + 32)] = (tmp10 - tmp11); z1 = ((tmp12 + tmp13) * 0.707106781); data[(dataOff + 16)] = (tmp13 + z1); data[(dataOff + 48)] = (tmp13 - z1); tmp10 = (tmp4 + tmp5); tmp11 = (tmp5 + tmp6); tmp12 = (tmp6 + tmp7); z5 = ((tmp10 - tmp12) * 0.382683433); z2 = ((0.5411961 * tmp10) + z5); z4 = ((1.306562965 * tmp12) + z5); z3 = (tmp11 * 0.707106781); z11 = (tmp7 + z3); z13 = (tmp7 - z3); data[(dataOff + 40)] = (z13 + z2); data[(dataOff + 24)] = (z13 - z2); data[(dataOff + 8)] = (z11 + z4); data[(dataOff + 56)] = (z11 - z4); dataOff++; i++; }; i = 0; while (i < 64) { data[i] = Math.round((data[i] * fdtbl[i])); i++; }; return (data); } } }//package com.adobe.images
Section 15
//PNGEncoder (com.adobe.images.PNGEncoder) package com.adobe.images { import flash.display.*; import flash.utils.*; import flash.geom.*; public class PNGEncoder { private static var crcTableComputed:Boolean = false; private static var crcTable:Array; public function PNGEncoder(){ super(); } private static function writeChunk(png:ByteArray, type:uint, data:ByteArray):void{ var c:uint; var n:uint; var k:uint; if (!crcTableComputed){ crcTableComputed = true; crcTable = []; n = 0; while (n < 0x0100) { c = n; k = 0; while (k < 8) { if ((c & 1)){ c = uint((uint(3988292384) ^ uint((c >>> 1)))); } else { c = uint((c >>> 1)); }; k++; }; crcTable[n] = c; n++; }; }; var len:uint; if (data != null){ len = data.length; }; png.writeUnsignedInt(len); var p:uint = png.position; png.writeUnsignedInt(type); if (data != null){ png.writeBytes(data); }; var e:uint = png.position; png.position = p; c = 4294967295; var i:int; while (i < (e - p)) { c = uint((crcTable[((c ^ png.readUnsignedByte()) & uint(0xFF))] ^ uint((c >>> 8)))); i++; }; c = uint((c ^ uint(4294967295))); png.position = e; png.writeUnsignedInt(c); } public static function encode(img:BitmapData):ByteArray{ var p:uint; var j:int; var png:ByteArray = new ByteArray(); png.writeUnsignedInt(2303741511); png.writeUnsignedInt(218765834); var IHDR:ByteArray = new ByteArray(); IHDR.writeInt(img.width); IHDR.writeInt(img.height); IHDR.writeUnsignedInt(134610944); IHDR.writeByte(0); writeChunk(png, 1229472850, IHDR); var IDAT:ByteArray = new ByteArray(); var i:int; while (i < img.height) { IDAT.writeByte(0); if (!img.transparent){ j = 0; while (j < img.width) { p = img.getPixel(j, i); IDAT.writeUnsignedInt(uint((((p & 0xFFFFFF) << 8) | 0xFF))); j++; }; } else { j = 0; while (j < img.width) { p = img.getPixel32(j, i); IDAT.writeUnsignedInt(uint((((p & 0xFFFFFF) << 8) | (p >>> 24)))); j++; }; }; i++; }; IDAT.compress(); writeChunk(png, 1229209940, IDAT); writeChunk(png, 1229278788, null); return (png); } } }//package com.adobe.images
Section 16
//JSON (com.adobe.serialization.json.JSON) package com.adobe.serialization.json { public class JSON { public function JSON(){ super(); } public static function decode(s:String){ var decoder:JSONDecoder = new JSONDecoder(s); return (decoder.getValue()); } public static function encode(o:Object):String{ var encoder:JSONEncoder = new JSONEncoder(o); return (encoder.getString()); } } }//package com.adobe.serialization.json
Section 17
//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(s:String){ super(); tokenizer = new JSONTokenizer(s); nextToken(); value = parseValue(); } private function parseObject():Object{ var key:String; var o:Object = new Object(); nextToken(); if (token.type == JSONTokenType.RIGHT_BRACE){ return (o); }; while (true) { if (token.type == JSONTokenType.STRING){ key = String(token.value); nextToken(); if (token.type == JSONTokenType.COLON){ nextToken(); o[key] = parseValue(); nextToken(); if (token.type == JSONTokenType.RIGHT_BRACE){ return (o); }; 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 a:Array = new Array(); nextToken(); if (token.type == JSONTokenType.RIGHT_BRACKET){ return (a); }; while (true) { a.push(parseValue()); nextToken(); if (token.type == JSONTokenType.RIGHT_BRACKET){ return (a); }; if (token.type == JSONTokenType.COMMA){ nextToken(); } else { tokenizer.parseError(("Expecting ] or , but found " + token.value)); }; }; return (null); } } }//package com.adobe.serialization.json
Section 18
//JSONEncoder (com.adobe.serialization.json.JSONEncoder) package com.adobe.serialization.json { import flash.utils.*; public class JSONEncoder { private var jsonString:String; public function JSONEncoder(value){ super(); jsonString = convertToString(value); } private function escapeString(str:String):String{ var ch:String; var hexCode:String; var zeroPad:String; var s:String = ""; var len:Number = str.length; var i:int; while (i < len) { ch = str.charAt(i); switch (ch){ case "\"": s = (s + "\\\""); break; case "\\": s = (s + "\\\\"); break; case "\b": s = (s + "\\b"); break; case "\f": s = (s + "\\f"); break; case "\n": s = (s + "\\n"); break; case "\r": s = (s + "\\r"); break; case "\t": s = (s + "\\t"); break; default: if (ch < " "){ hexCode = ch.charCodeAt(0).toString(16); zeroPad = ((hexCode.length == 2)) ? "00" : "000"; s = (s + (("\\u" + zeroPad) + hexCode)); } else { s = (s + ch); }; }; i++; }; return ((("\"" + s) + "\"")); } private function arrayToString(a:Array):String{ var s:String = ""; var i:int; while (i < a.length) { if (s.length > 0){ s = (s + ","); }; s = (s + convertToString(a[i])); i++; }; return ((("[" + s) + "]")); } public function getString():String{ return (jsonString); } private function objectToString(o:Object):String{ var value:Object; var key:String; var v:XML; var o = o; 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(value):String{ if ((value is String)){ return (escapeString((value as String))); }; if ((value is Number)){ return ((isFinite((value as Number))) ? value.toString() : "null"); } else { if ((value is Boolean)){ return ((value) ? "true" : "false"); } else { if ((value is Array)){ return (arrayToString((value as Array))); }; if ((((value is Object)) && (!((value == null))))){ return (objectToString(value)); }; }; }; return ("null"); } } }//package com.adobe.serialization.json
Section 19
//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(message:String="", location:int=0, text:String=""){ super(message); name = "JSONParseError"; _location = location; _text = text; } public function get location():int{ return (_location); } public function get text():String{ return (_text); } } }//package com.adobe.serialization.json
Section 20
//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(type:int=-1, value:Object=null){ super(); _type = type; _value = value; } public function get value():Object{ return (_value); } public function get type():int{ return (_type); } public function set type(value:int):void{ _type = value; } public function set value(v:Object):void{ _value = v; } } }//package com.adobe.serialization.json
Section 21
//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(s:String){ super(); jsonString = s; 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(ch:String):Boolean{ return ((((ch >= "0")) && ((ch <= "9")))); } private function readString():JSONToken{ var _local5:String; var i:int; var token:JSONToken = new JSONToken(); token.type = JSONTokenType.STRING; var string:String = ""; nextChar(); while (((!((ch == "\""))) && (!((ch == ""))))) { if (ch == "\\"){ nextChar(); switch (ch){ case "\"": string = (string + "\""); break; case "/": string = (string + "/"); break; case "\\": string = (string + "\\"); break; case "b": string = (string + "\b"); break; case "f": string = (string + "\f"); break; case "n": string = (string + "\n"); break; case "r": string = (string + "\r"); break; case "t": string = (string + "\t"); break; case "u": _local5 = ""; i = 0; while (i < 4) { if (!isHexDigit(nextChar())){ parseError((" Excepted a hex digit, but found: " + ch)); }; _local5 = (_local5 + ch); i++; }; string = (string + String.fromCharCode(parseInt(_local5, 16))); break; default: string = (string + ("\\" + ch)); }; } else { string = (string + ch); }; nextChar(); }; if (ch == ""){ parseError("Unterminated string literal"); }; nextChar(); token.value = string; return (token); } private function nextChar():String{ return ((ch = jsonString.charAt(loc++))); } public function getNextToken():JSONToken{ var _local2:String; var _local3:String; var _local4:String; var token:JSONToken = new JSONToken(); skipIgnored(); switch (ch){ case "{": token.type = JSONTokenType.LEFT_BRACE; token.value = "{"; nextChar(); break; case "}": token.type = JSONTokenType.RIGHT_BRACE; token.value = "}"; nextChar(); break; case "[": token.type = JSONTokenType.LEFT_BRACKET; token.value = "["; nextChar(); break; case "]": token.type = JSONTokenType.RIGHT_BRACKET; token.value = "]"; nextChar(); break; case ",": token.type = JSONTokenType.COMMA; token.value = ","; nextChar(); break; case ":": token.type = JSONTokenType.COLON; token.value = ":"; nextChar(); break; case "t": _local2 = ((("t" + nextChar()) + nextChar()) + nextChar()); if (_local2 == "true"){ token.type = JSONTokenType.TRUE; token.value = true; nextChar(); } else { parseError(("Expecting 'true' but found " + _local2)); }; break; case "f": _local3 = (((("f" + nextChar()) + nextChar()) + nextChar()) + nextChar()); if (_local3 == "false"){ token.type = JSONTokenType.FALSE; token.value = false; nextChar(); } else { parseError(("Expecting 'false' but found " + _local3)); }; break; case "n": _local4 = ((("n" + nextChar()) + nextChar()) + nextChar()); if (_local4 == "null"){ token.type = JSONTokenType.NULL; token.value = null; nextChar(); } else { parseError(("Expecting 'null' but found " + _local4)); }; break; case "\"": token = readString(); break; default: if (((isDigit(ch)) || ((ch == "-")))){ token = readNumber(); } else { if (ch == ""){ return (null); }; parseError((("Unexpected " + ch) + " encountered")); }; }; return (token); } private function skipWhite():void{ while (isWhiteSpace(ch)) { nextChar(); }; } public function parseError(message:String):void{ throw (new JSONParseError(message, loc, jsonString)); } private function isWhiteSpace(ch:String):Boolean{ return ((((((((ch == " ")) || ((ch == "\t")))) || ((ch == "\n")))) || ((ch == "\r")))); } private function skipIgnored():void{ var originalLoc:int; do { originalLoc = loc; skipWhite(); skipComments(); } while (originalLoc != loc); } private function isHexDigit(ch:String):Boolean{ var uc:String = ch.toUpperCase(); return (((isDigit(ch)) || ((((uc >= "A")) && ((uc <= "F")))))); } private function readNumber():JSONToken{ var token:JSONToken = new JSONToken(); token.type = JSONTokenType.NUMBER; var input:String = ""; if (ch == "-"){ input = (input + "-"); nextChar(); }; if (!isDigit(ch)){ parseError("Expecting a digit"); }; if (ch == "0"){ input = (input + ch); nextChar(); if (isDigit(ch)){ parseError("A digit cannot immediately follow 0"); }; } else { while (isDigit(ch)) { input = (input + ch); nextChar(); }; }; if (ch == "."){ input = (input + "."); nextChar(); if (!isDigit(ch)){ parseError("Expecting a digit"); }; while (isDigit(ch)) { input = (input + ch); nextChar(); }; }; if ((((ch == "e")) || ((ch == "E")))){ input = (input + "e"); nextChar(); if ((((ch == "+")) || ((ch == "-")))){ input = (input + ch); nextChar(); }; if (!isDigit(ch)){ parseError("Scientific notation number needs exponent value"); }; while (isDigit(ch)) { input = (input + ch); nextChar(); }; }; var num:Number = Number(input); if (((isFinite(num)) && (!(isNaN(num))))){ token.value = num; return (token); }; parseError((("Number " + num) + " is not valid!")); return (null); } } }//package com.adobe.serialization.json
Section 22
//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; public function JSONTokenType(){ super(); } } }//package com.adobe.serialization.json
Section 23
//IntUtil (com.adobe.utils.IntUtil) package com.adobe.utils { public class IntUtil { private static var hexChars:String = "0123456789abcdef"; public function IntUtil(){ super(); } public static function toHex(n:int, bigEndian:Boolean=false):String{ var i:int; var x:int; var s:String = ""; if (bigEndian){ i = 0; while (i < 4) { s = (s + (hexChars.charAt(((n >> (((3 - i) * 8) + 4)) & 15)) + hexChars.charAt(((n >> ((3 - i) * 8)) & 15)))); i++; }; } else { x = 0; while (x < 4) { s = (s + (hexChars.charAt(((n >> ((x * 8) + 4)) & 15)) + hexChars.charAt(((n >> (x * 8)) & 15)))); x++; }; }; return (s); } public static function ror(x:int, n:int):uint{ var nn:int = (32 - n); return (((x << nn) | (x >>> (32 - nn)))); } public static function rol(x:int, n:int):int{ return (((x << n) | (x >>> (32 - n)))); } } }//package com.adobe.utils
Section 24
//MathUtils (com.cheezeworld.math.MathUtils) package com.cheezeworld.math { public class MathUtils { public static const DEG_TO_RAD:Number = 0.0174532925199433; public static const RAD_TO_DEG:Number = 57.2957795130823; public function MathUtils(){ super(); } public static function simplifyRadian(radian:Number):Number{ var newRadian:Number; if ((((radian > Math.PI)) || ((radian < -(Math.PI))))){ newRadian = (radian - (int((radian / (Math.PI * 2))) * (Math.PI * 2))); if (radian > 0){ if (newRadian < Math.PI){ return (newRadian); }; newRadian = -(((Math.PI * 2) - newRadian)); return (newRadian); } else { if (newRadian > -(Math.PI)){ return (newRadian); }; newRadian = ((Math.PI * 2) + newRadian); return (newRadian); }; }; return (radian); } public static function getSmallestRotationDirection(objectRotationRadians:Number, radianBetween:Number, errorRadians:Number=0):int{ objectRotationRadians = simplifyRadian(objectRotationRadians); radianBetween = simplifyRadian(radianBetween); radianBetween = (radianBetween + -(objectRotationRadians)); radianBetween = simplifyRadian(radianBetween); objectRotationRadians = 0; if (radianBetween < -(errorRadians)){ return (-1); }; if (radianBetween > errorRadians){ return (1); }; return (0); } public static function rand(min:int, max:int):int{ return ((min + Math.floor((Math.random() * ((max - min) + 1))))); } public static function calcAngle(p1:Vector2D, p2:Vector2D):Number{ var angle:Number = (Math.atan(((p2.y - p1.y) / (p2.x - p1.x))) * RAD_TO_DEG); if ((((p2.y < p1.y)) && ((p2.x > p1.x)))){ return (angle); }; if ((((((p2.y < p1.y)) && ((p2.x < p1.x)))) || ((((p2.y > p1.y)) && ((p2.x < p1.x)))))){ return ((angle + 180)); }; return ((angle + 360)); } } }//package com.cheezeworld.math
Section 25
//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 = 0.0174532925199433; private static const RAD_TO_DEG:Number = 57.2957795130823; public function Vector2D(X:Number=0, Y:Number=0){ super(); x = X; y = Y; _length = 0; } public function divide(scalar:Number):void{ if (scalar == 0){ trace("Vector::dividedBy() - Illegal Divide by Zero!"); } else { x = (x / scalar); y = (y / scalar); }; } public function isZero():Boolean{ return ((((x == 0)) || ((y == 0)))); } public function Set(x:Number, y:Number):void{ this.x = x; this.y = y; } public function sign(vector:Vector2D):int{ if ((y * vector.x) > (x * vector.y)){ return (-1); }; return (1); } public function dotOf(vector:Vector2D):Number{ return (((x * vector.x) + (y * vector.y))); } public function dividedBy(scalar:Number):Vector2D{ if (scalar == 0){ trace("Vector::dividedBy() - Illegal Divide by Zero!"); return (new Vector2D()); }; return (new Vector2D((x / scalar), (y / scalar))); } public function normalize():void{ if (length != 0){ x = (x / _length); y = (y / _length); }; } public function isParallelTo(vector:Vector2D):Boolean{ v1 = copy(); v1.normalize(); v2 = vector.copy(); v2.normalize(); return ((((((v1.x == v2.x)) && ((v1.y == v2.y)))) || ((((v1.x == -(v2.x))) && ((v1.y == -(v2.y))))))); } public function distanceTo(vector:Vector2D):Number{ var xSep:Number = (vector.x - x); var ySep:Number = (vector.y - y); return (Math.sqrt(((ySep * ySep) + (xSep * xSep)))); } public function subtract(vector:Vector2D):void{ x = (x - vector.x); y = (y - vector.y); } public function toPoint():Point{ return (new Point(x, y)); } public function toRotation():Number{ var ang:Number = (Math.atan((y / x)) * RAD_TO_DEG); if ((((y < 0)) && ((x > 0)))){ return (ang); }; if ((((((y < 0)) && ((x < 0)))) || ((((y > 0)) && ((x < 0)))))){ return ((ang + 180)); }; return ((ang + 360)); } public function isInsideRegion(topLeft:Vector2D, botRight:Vector2D):Boolean{ return (!((((((((x < topLeft.x)) || ((x > (topLeft.x + botRight.x))))) || ((y < topLeft.y)))) || ((y > (topLeft.y + botRight.y)))))); } public function addedTo(vector:Vector2D):Vector2D{ return (new Vector2D((x + vector.x), (y + vector.y))); } public function perpDotOf(vector:Vector2D):Number{ return (getPerp().dotOf(vector)); } public function projectionOn(vector:Vector2D):Vector2D{ v1 = vector.copy(); v1.multiply((this.dotOf(vector) / vector.dotOf(vector))); return (v1); } public function distanceSqTo(vector:Vector2D):Number{ var xSep:Number = (vector.y - y); var ySep:Number = (vector.x - x); return (((ySep * ySep) + (xSep * xSep))); } 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(vector:Vector2D):Vector2D{ return (new Vector2D((x - vector.x), (y - vector.y))); } public function multiply(scalar:Number):void{ x = (x * scalar); y = (y * scalar); } public function toString():String{ return ((((("(" + x) + ",") + y) + ")")); } public function truncate(max:Number):void{ if (lengthSq > (max * max)){ normalize(); multiply(max); }; } public function angleTo(vector:Vector2D):Number{ return (Math.acos((dotOf(vector) / (length * vector.length)))); } public function multipliedBy(scalar:Number):Vector2D{ return (new Vector2D((x * scalar), (y * scalar))); } public function getNormalized():Vector2D{ if (length == 0){ return (new Vector2D()); }; return (new Vector2D((x / _length), (y / _length))); } public function copy():Vector2D{ var newVector:Vector2D = new Vector2D(x, y); newVector._length = _length; newVector._oldX = x; newVector._oldY = y; return (newVector); } public function wrapAround(topLeft:Vector2D, botRight:Vector2D):void{ if (x > botRight.x){ x = (topLeft.x + (x - botRight.x)); } else { if (x < topLeft.x){ x = (botRight.x + x); }; }; if (y < topLeft.y){ y = (botRight.y + y); } else { if (y > botRight.y){ y = (topLeft.y + (y - botRight.y)); }; }; } public function getReverse():Vector2D{ return (new Vector2D(-(x), -(y))); } public function addTo(vector:Vector2D):void{ x = (x + vector.x); y = (y + vector.y); } public function reflect(norm:Vector2D):void{ v1 = norm.getReverse(); v1.multiply((2 * dotOf(norm))); addTo(v1); } public function crossOf(vector:Vector2D):Number{ return (((x * vector.y) - (y * vector.x))); } public static function rotToHeading(rotInDegrees:Number):Vector2D{ var rotInRad:Number = (rotInDegrees * DEG_TO_RAD); var xPart:Number = Math.cos(rotInRad); var yPart:Number = Math.sin(rotInRad); return (new Vector2D(xPart, yPart)); } public static function is2ndInFOVof1st(pos1st:Vector2D, facing1st:Vector2D, fov:Number, pos2nd:Vector2D):Boolean{ var toTarget:Vector2D = pos2nd.copy(); toTarget.subtract(pos1st); toTarget.normalize(); return ((facing1st.dotOf(toTarget) >= Math.cos((fov / 2)))); } public static function pointToVector(point:Point):Vector2D{ return (new Vector2D(point.x, point.y)); } } }//package com.cheezeworld.math
Section 26
//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 27
//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 28
//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(auth_token:String){ super(METHOD_NAME); this.auth_token = auth_token; } override facebook_internal function initialize():void{ applySchema(SCHEMA, auth_token); super.initialize(); } } }//package com.facebook.commands.auth
Section 29
//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; public function GetCookiesData(){ super(); } } }//package com.facebook.commands.data
Section 30
//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(data:Object=null, aid:String=null, caption:String=null, uid:String=null){ super(METHOD_NAME); this.data = data; this.aid = aid; this.caption = caption; this.uid = uid; } override facebook_internal function initialize():void{ applySchema(SCHEMA, data, aid, caption, uid); super.initialize(); } } }//package com.facebook.commands.photos
Section 31
//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"; public function UploadPhotoTypes(){ super(); } } }//package com.facebook.commands.photos
Section 32
//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(uids:Array, fields:Array){ super(METHOD_NAME); this.uids = uids; this.fields = fields; } override facebook_internal function initialize():void{ applySchema(SCHEMA, FacebookDataUtils.toArrayString(uids), FacebookDataUtils.toArrayString(fields)); super.initialize(); } } }//package com.facebook.commands.users
Section 33
//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 34
//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 GetAllocationData(){ super(); } public function get allocationLimit():Number{ return (this._376596805allocationLimit); } public function set allocationLimit(value:Number):void{ var oldValue:Object = this._376596805allocationLimit; if (oldValue !== value){ this._376596805allocationLimit = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "allocationLimit", oldValue, value)); }; } } }//package com.facebook.data.admin
Section 35
//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 GetAppPropertiesData(){ super(); } public function set appProperties(value:Array):void{ var oldValue:Object = this._554397236appProperties; if (oldValue !== value){ this._554397236appProperties = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "appProperties", oldValue, value)); }; } public function get appProperties():Array{ return (this._554397236appProperties); } } }//package com.facebook.data.admin
Section 36
//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 GetMetricsData(){ super(); } public function get metricsCollection():MetricsDataCollection{ return (this._1648653249metricsCollection); } public function set metricsCollection(value:MetricsDataCollection):void{ var oldValue:Object = this._1648653249metricsCollection; if (oldValue !== value){ this._1648653249metricsCollection = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "metricsCollection", oldValue, value)); }; } } }//package com.facebook.data.admin
Section 37
//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(event:Event):Boolean{ return (_bindingEventDispatcher.dispatchEvent(event)); } public function hasEventListener(type:String):Boolean{ return (_bindingEventDispatcher.hasEventListener(type)); } public function get canvas_page_views():Number{ return (this._652996091canvas_page_views); } public function willTrigger(type:String):Boolean{ return (_bindingEventDispatcher.willTrigger(type)); } public function set end_time(value:Date):void{ var oldValue:Object = this._1725551537end_time; if (oldValue !== value){ this._1725551537end_time = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "end_time", oldValue, value)); }; } public function set canvas_page_views(value:Number):void{ var oldValue:Object = this._652996091canvas_page_views; if (oldValue !== value){ this._652996091canvas_page_views = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "canvas_page_views", oldValue, value)); }; } public function get active_users():Number{ return (this._1769771919active_users); } public function get end_time():Date{ return (this._1725551537end_time); } public function addEventListener(type:String, listener:Function, useCapture:Boolean=false, priority:int=0, weakRef:Boolean=false):void{ _bindingEventDispatcher.addEventListener(type, listener, useCapture, priority, weakRef); } public function removeEventListener(type:String, listener:Function, useCapture:Boolean=false):void{ _bindingEventDispatcher.removeEventListener(type, listener, useCapture); } public function set active_users(value:Number):void{ var oldValue:Object = this._1769771919active_users; if (oldValue !== value){ this._1769771919active_users = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "active_users", oldValue, value)); }; } } }//package com.facebook.data.admin
Section 38
//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 39
//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 GetPublicInfoData(){ super(); } public function set app_id(value:String):void{ var oldValue:Object = this._1411074055app_id; if (oldValue !== value){ this._1411074055app_id = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "app_id", oldValue, value)); }; } public function set monthly_active_users(value:Number):void{ var oldValue:Object = this._171158145monthly_active_users; if (oldValue !== value){ this._171158145monthly_active_users = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "monthly_active_users", oldValue, value)); }; } public function set api_key(value:String):void{ var oldValue:Object = this._800085318api_key; if (oldValue !== value){ this._800085318api_key = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "api_key", oldValue, value)); }; } 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(value:String):void{ var oldValue:Object = this._1615086568display_name; if (oldValue !== value){ this._1615086568display_name = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "display_name", oldValue, value)); }; } public function set company_name(value:String):void{ var oldValue:Object = this._1429880077company_name; if (oldValue !== value){ this._1429880077company_name = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "company_name", oldValue, value)); }; } public function get company_name():String{ return (this._1429880077company_name); } public function set developers(value:String):void{ var oldValue:Object = this._1793855977developers; if (oldValue !== value){ this._1793855977developers = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "developers", oldValue, value)); }; } 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(value:Number):void{ var oldValue:Object = this._650176883weekly_active_users; if (oldValue !== value){ this._650176883weekly_active_users = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "weekly_active_users", oldValue, value)); }; } public function get canvas_name():String{ return (this._1872800494canvas_name); } public function set canvas_name(value:String):void{ var oldValue:Object = this._1872800494canvas_name; if (oldValue !== value){ this._1872800494canvas_name = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "canvas_name", oldValue, value)); }; } public function set description(value:String):void{ var oldValue:Object = this._1724546052description; if (oldValue !== value){ this._1724546052description = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "description", oldValue, value)); }; } public function get icon_url():String{ return (this._737588055icon_url); } public function set icon_url(value:String):void{ var oldValue:Object = this._737588055icon_url; if (oldValue !== value){ this._737588055icon_url = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "icon_url", oldValue, value)); }; } public function get display_name():String{ return (this._1615086568display_name); } public function set daily_active_users(value:Number):void{ var oldValue:Object = this._1957597173daily_active_users; if (oldValue !== value){ this._1957597173daily_active_users = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "daily_active_users", oldValue, value)); }; } 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(value:String):void{ var oldValue:Object = this._2027875547logo_url; if (oldValue !== value){ this._2027875547logo_url = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "logo_url", oldValue, value)); }; } } }//package com.facebook.data.application
Section 40
//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 GetSessionData(){ super(); } public function set uid(value:String):void{ var oldValue:Object = this._115792uid; if (oldValue !== value){ this._115792uid = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "uid", oldValue, value)); }; } public function set expires(value:Date):void{ var oldValue:Object = this._1309235404expires; if (oldValue !== value){ this._1309235404expires = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "expires", oldValue, value)); }; } public function set secret(value:String):void{ var oldValue:Object = this._906277200secret; if (oldValue !== value){ this._906277200secret = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "secret", oldValue, value)); }; } public function get expires():Date{ return (this._1309235404expires); } public function get uid():String{ return (this._115792uid); } public function set session_key(value:String):void{ var oldValue:Object = this._22145738session_key; if (oldValue !== value){ this._22145738session_key = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "session_key", oldValue, value)); }; } public function get session_key():String{ return (this._22145738session_key); } public function get secret():String{ return (this._906277200secret); } } }//package com.facebook.data.auth
Section 41
//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 BatchResult(){ super(); } public function set results(value:Array):void{ var oldValue:Object = this._1097546742results; if (oldValue !== value){ this._1097546742results = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "results", oldValue, value)); }; } public function get results():Array{ return (this._1097546742results); } } }//package com.facebook.data.batch
Section 42
//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 GetObjectTypeData(){ super(); } 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(value:Number):void{ var oldValue:Object = this._747164295index_type; if (oldValue !== value){ this._747164295index_type = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "index_type", oldValue, value)); }; } public function set name(value:String):void{ var oldValue:Object = this._3373707name; if (oldValue !== value){ this._3373707name = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "name", oldValue, value)); }; } public function set data_type(value:Number):void{ var oldValue:Object = this._363359569data_type; if (oldValue !== value){ this._363359569data_type = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "data_type", oldValue, value)); }; } } }//package com.facebook.data.data
Section 43
//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 GetObjectTypesData(){ super(); } public function set objectTypeCollection(value:ObjectTypesCollection):void{ var oldValue:Object = this._1481977495objectTypeCollection; if (oldValue !== value){ this._1481977495objectTypeCollection = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "objectTypeCollection", oldValue, value)); }; } public function get objectTypeCollection():ObjectTypesCollection{ return (this._1481977495objectTypeCollection); } } }//package com.facebook.data.data
Section 44
//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 GetUserPreferencesData(){ super(); } public function set perferenceCollection(value:PreferenceCollection):void{ var oldValue:Object = this._1984973153perferenceCollection; if (oldValue !== value){ this._1984973153perferenceCollection = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "perferenceCollection", oldValue, value)); }; } public function get perferenceCollection():PreferenceCollection{ return (this._1984973153perferenceCollection); } } }//package com.facebook.data.data
Section 45
//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 46
//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(type:String):Boolean{ return (_bindingEventDispatcher.hasEventListener(type)); } public function willTrigger(type:String):Boolean{ return (_bindingEventDispatcher.willTrigger(type)); } public function dispatchEvent(event:Event):Boolean{ return (_bindingEventDispatcher.dispatchEvent(event)); } public function removeEventListener(type:String, listener:Function, useCapture:Boolean=false):void{ _bindingEventDispatcher.removeEventListener(type, listener, useCapture); } public function get name():String{ return (this._3373707name); } public function addEventListener(type:String, listener:Function, useCapture:Boolean=false, priority:int=0, weakRef:Boolean=false):void{ _bindingEventDispatcher.addEventListener(type, listener, useCapture, priority, weakRef); } public function set name(value:String):void{ var oldValue:Object = this._3373707name; if (oldValue !== value){ this._3373707name = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "name", oldValue, value)); }; } public function set object_class(value:String):void{ var oldValue:Object = this._953875336object_class; if (oldValue !== value){ this._953875336object_class = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "object_class", oldValue, value)); }; } public function get object_class():String{ return (this._953875336object_class); } } }//package com.facebook.data.data
Section 47
//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 48
//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(event:Event):Boolean{ return (_bindingEventDispatcher.dispatchEvent(event)); } public function set value(value:String):void{ var oldValue:Object = this._111972721value; if (oldValue !== value){ this._111972721value = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "value", oldValue, value)); }; } public function hasEventListener(type:String):Boolean{ return (_bindingEventDispatcher.hasEventListener(type)); } public function willTrigger(type:String):Boolean{ return (_bindingEventDispatcher.willTrigger(type)); } public function removeEventListener(type:String, listener:Function, useCapture:Boolean=false):void{ _bindingEventDispatcher.removeEventListener(type, listener, useCapture); } public function addEventListener(type:String, listener:Function, useCapture:Boolean=false, priority:int=0, weakRef:Boolean=false):void{ _bindingEventDispatcher.addEventListener(type, listener, useCapture, priority, weakRef); } public function set pref_id(value:Number):void{ var oldValue:Object = this._318670665pref_id; if (oldValue !== value){ this._318670665pref_id = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pref_id", oldValue, value)); }; } public function get value():String{ return (this._111972721value); } public function get pref_id():Number{ return (this._318670665pref_id); } } }//package com.facebook.data.data
Section 49
//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 50
//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(value:String):void{ var oldValue:Object = this._100416eid; if (oldValue !== value){ this._100416eid = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "eid", oldValue, value)); }; } public function get update_time():Date{ return (this._573446013update_time); } public function set update_time(value:Date):void{ var oldValue:Object = this._573446013update_time; if (oldValue !== value){ this._573446013update_time = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "update_time", oldValue, value)); }; } 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(type:String):Boolean{ return (_bindingEventDispatcher.willTrigger(type)); } public function get tagline():String{ return (this._1548283250tagline); } public function get start_time():Date{ return (this._1573145462start_time); } public function set nid(value:Number):void{ var oldValue:Object = this._109065nid; if (oldValue !== value){ this._109065nid = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "nid", oldValue, value)); }; } public function set pic(value:String):void{ var oldValue:Object = this._110986pic; if (oldValue !== value){ this._110986pic = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic", oldValue, value)); }; } public function set name(value:String):void{ var oldValue:Object = this._3373707name; if (oldValue !== value){ this._3373707name = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "name", oldValue, value)); }; } public function get pic_small():String{ return (this._1762076142pic_small); } public function set tagline(value:String):void{ var oldValue:Object = this._1548283250tagline; if (oldValue !== value){ this._1548283250tagline = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "tagline", oldValue, value)); }; } public function set pic_small(value:String):void{ var oldValue:Object = this._1762076142pic_small; if (oldValue !== value){ this._1762076142pic_small = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic_small", oldValue, value)); }; } public function set pic_big(value:String):void{ var oldValue:Object = this._578385717pic_big; if (oldValue !== value){ this._578385717pic_big = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic_big", oldValue, value)); }; } public function set event_subtype(value:String):void{ var oldValue:Object = this._1482814251event_subtype; if (oldValue !== value){ this._1482814251event_subtype = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "event_subtype", oldValue, value)); }; } 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(value:Date):void{ var oldValue:Object = this._1573145462start_time; if (oldValue !== value){ this._1573145462start_time = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "start_time", oldValue, value)); }; } public function get end_time():Date{ return (this._1725551537end_time); } public function removeEventListener(type:String, listener:Function, useCapture:Boolean=false):void{ _bindingEventDispatcher.removeEventListener(type, listener, useCapture); } public function get pic_big():String{ return (this._578385717pic_big); } public function addEventListener(type:String, listener:Function, useCapture:Boolean=false, priority:int=0, weakRef:Boolean=false):void{ _bindingEventDispatcher.addEventListener(type, listener, useCapture, priority, weakRef); } public function dispatchEvent(event:Event):Boolean{ return (_bindingEventDispatcher.dispatchEvent(event)); } public function set host(value:String):void{ var oldValue:Object = this._3208616host; if (oldValue !== value){ this._3208616host = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "host", oldValue, value)); }; } public function set creator(value:Number):void{ var oldValue:Object = this._1028554796creator; if (oldValue !== value){ this._1028554796creator = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "creator", oldValue, value)); }; } public function get event_subtype():String{ return (this._1482814251event_subtype); } public function set venue(value:FacebookLocation):void{ var oldValue:Object = this._112093807venue; if (oldValue !== value){ this._112093807venue = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "venue", oldValue, value)); }; } public function set end_time(value:Date):void{ var oldValue:Object = this._1725551537end_time; if (oldValue !== value){ this._1725551537end_time = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "end_time", oldValue, value)); }; } public function get venue():FacebookLocation{ return (this._112093807venue); } public function set location(value:String):void{ var oldValue:Object = this._1901043637location; if (oldValue !== value){ this._1901043637location = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "location", oldValue, value)); }; } public function hasEventListener(type:String):Boolean{ return (_bindingEventDispatcher.hasEventListener(type)); } public function set description(value:String):void{ var oldValue:Object = this._1724546052description; if (oldValue !== value){ this._1724546052description = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "description", oldValue, value)); }; } public function get description():String{ return (this._1724546052description); } public function set event_type(value:String):void{ var oldValue:Object = this._984376767event_type; if (oldValue !== value){ this._984376767event_type = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "event_type", oldValue, value)); }; } } }//package com.facebook.data.events
Section 51
//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 GetEventsData(){ super(); } public function get eventCollection():EventCollection{ return (this._2121991384eventCollection); } public function set eventCollection(value:EventCollection):void{ var oldValue:Object = this._2121991384eventCollection; if (oldValue !== value){ this._2121991384eventCollection = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "eventCollection", oldValue, value)); }; } } }//package com.facebook.data.events
Section 52
//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 GetMembersData(){ super(); } public function set declined(value:Array):void{ var oldValue:Object = this._568196142declined; if (oldValue !== value){ this._568196142declined = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "declined", oldValue, value)); }; } public function get attending():Array{ return (this._354428152attending); } public function set not_replied(value:Array):void{ var oldValue:Object = this._487874675not_replied; if (oldValue !== value){ this._487874675not_replied = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "not_replied", oldValue, value)); }; } public function get not_replied():Array{ return (this._487874675not_replied); } public function get unsure():Array{ return (this._840227282unsure); } public function set attending(value:Array):void{ var oldValue:Object = this._354428152attending; if (oldValue !== value){ this._354428152attending = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "attending", oldValue, value)); }; } public function set unsure(value:Array):void{ var oldValue:Object = this._840227282unsure; if (oldValue !== value){ this._840227282unsure = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "unsure", oldValue, value)); }; } public function get declined():Array{ return (this._568196142declined); } } }//package com.facebook.data.events
Section 53
//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(name:String, header_fbml:String, footer_fbml:String, type:String, description:String="", is_public:String="", attributes:AttributeCollection=null){ _bindingEventDispatcher = new EventDispatcher(IEventDispatcher(this)); super(); this.name = name; this.type = type; this.description = description; this.is_public = is_public; this.header_fbml = header_fbml; this.footer_fbml = footer_fbml; this.attributes = attributes; } public function set is_public(value:String):void{ var oldValue:Object = this._513384674is_public; if (oldValue !== value){ this._513384674is_public = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "is_public", oldValue, value)); }; } public function set footer_fbml(value:String):void{ var oldValue:Object = this._1098131327footer_fbml; if (oldValue !== value){ this._1098131327footer_fbml = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "footer_fbml", oldValue, value)); }; } public function willTrigger(type:String):Boolean{ return (_bindingEventDispatcher.willTrigger(type)); } public function removeEventListener(type:String, listener:Function, useCapture:Boolean=false):void{ _bindingEventDispatcher.removeEventListener(type, listener, useCapture); } public function get name():String{ return (this._3373707name); } public function hasEventListener(type:String):Boolean{ return (_bindingEventDispatcher.hasEventListener(type)); } public function get header_fbml():String{ return (this._1183728077header_fbml); } public function dispatchEvent(event:Event):Boolean{ return (_bindingEventDispatcher.dispatchEvent(event)); } public function addEventListener(type:String, listener:Function, useCapture:Boolean=false, priority:int=0, weakRef:Boolean=false):void{ _bindingEventDispatcher.addEventListener(type, listener, useCapture, priority, weakRef); } public function set name(value:String):void{ var oldValue:Object = this._3373707name; if (oldValue !== value){ this._3373707name = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "name", oldValue, value)); }; } public function get attributes():AttributeCollection{ return (this._405645655attributes); } public function set header_fbml(value:String):void{ var oldValue:Object = this._1183728077header_fbml; if (oldValue !== value){ this._1183728077header_fbml = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "header_fbml", oldValue, value)); }; } public function get is_public():String{ return (this._513384674is_public); } public function set attributes(value:AttributeCollection):void{ var oldValue:Object = this._405645655attributes; if (oldValue !== value){ this._405645655attributes = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "attributes", oldValue, value)); }; } public function set type(value:String):void{ var oldValue:Object = this._3575610type; if (oldValue !== value){ this._3575610type = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "type", oldValue, value)); }; } public function set description(value:String):void{ var oldValue:Object = this._1724546052description; if (oldValue !== value){ this._1724546052description = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "description", oldValue, value)); }; } 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 54
//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 55
//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(event:Event):Boolean{ return (_bindingEventDispatcher.dispatchEvent(event)); } public function removeEventListener(type:String, listener:Function, useCapture:Boolean=false):void{ _bindingEventDispatcher.removeEventListener(type, listener, useCapture); } public function get name():String{ return (this._3373707name); } public function hasEventListener(type:String):Boolean{ return (_bindingEventDispatcher.hasEventListener(type)); } public function set default_value(value:String):void{ var oldValue:Object = this._1318671859default_value; if (oldValue !== value){ this._1318671859default_value = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "default_value", oldValue, value)); }; } public function addEventListener(type:String, listener:Function, useCapture:Boolean=false, priority:int=0, weakRef:Boolean=false):void{ _bindingEventDispatcher.addEventListener(type, listener, useCapture, priority, weakRef); } public function willTrigger(type:String):Boolean{ return (_bindingEventDispatcher.willTrigger(type)); } public function set name(value:String):void{ var oldValue:Object = this._3373707name; if (oldValue !== value){ this._3373707name = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "name", oldValue, value)); }; } public function set description(value:String):void{ var oldValue:Object = this._1724546052description; if (oldValue !== value){ this._1724546052description = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "description", oldValue, value)); }; } public function get default_value():String{ return (this._1318671859default_value); } public function get description():String{ return (this._1724546052description); } } }//package com.facebook.data.fbml
Section 56
//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(name:String, header_fbml:String, footer_fbml:String, type:String, open_tag_fbml:String, close_tag_fbml:String, description:String="", is_public:String="", attributes:AttributeCollection=null){ this.open_tag_fbml = open_tag_fbml; this.close_tag_fbml = close_tag_fbml; super(name, header_fbml, footer_fbml, type, description, is_public, attributes); } 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(value:String):void{ var oldValue:Object = this._1445528373open_tag_fbml; if (oldValue !== value){ this._1445528373open_tag_fbml = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "open_tag_fbml", oldValue, value)); }; } public function set close_tag_fbml(value:String):void{ var oldValue:Object = this._1772097351close_tag_fbml; if (oldValue !== value){ this._1772097351close_tag_fbml = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "close_tag_fbml", oldValue, value)); }; } } }//package com.facebook.data.fbml
Section 57
//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 GetCustomTagsData(){ super(); } public function set tagCollection(value:TagCollection):void{ var oldValue:Object = this._189132328tagCollection; if (oldValue !== value){ this._189132328tagCollection = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "tagCollection", oldValue, value)); }; } public function get tagCollection():TagCollection{ return (this._189132328tagCollection); } } }//package com.facebook.data.fbml
Section 58
//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(name:String, fbml:String, header_fbml:String, footer_fbml:String, type:String, description:String="", is_public:String="", attributes:AttributeCollection=null){ this.fbml = fbml; super(name, header_fbml, footer_fbml, type, description, is_public, attributes); } public function get fbml():String{ return (this._3136347fbml); } public function set fbml(value:String):void{ var oldValue:Object = this._3136347fbml; if (oldValue !== value){ this._3136347fbml = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "fbml", oldValue, value)); }; } } }//package com.facebook.data.fbml
Section 59
//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 60
//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 GetRegisteredTemplateBundleByIDData(){ super(); } public function get templateCollection():TemplateCollection{ return (this._858818232templateCollection); } public function set templateCollection(value:TemplateCollection):void{ var oldValue:Object = this._858818232templateCollection; if (oldValue !== value){ this._858818232templateCollection = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "templateCollection", oldValue, value)); }; } } }//package com.facebook.data.feed
Section 61
//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 GetRegisteredTemplateBundleData(){ super(); } public function get bundleCollection():TemplateCollection{ return (this._1345486656bundleCollection); } public function set bundleCollection(value:TemplateCollection):void{ var oldValue:Object = this._1345486656bundleCollection; if (oldValue !== value){ this._1345486656bundleCollection = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "bundleCollection", oldValue, value)); }; } } }//package com.facebook.data.feed
Section 62
//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 63
//TemplateCollection (com.facebook.data.feed.TemplateCollection) package com.facebook.data.feed { import com.facebook.utils.*; import mx.events.*; 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(templateData:TemplateData):void{ this.addItem(templateData); } public function set template_bundle_id(value:Number):void{ var oldValue:Object = this._1933135987template_bundle_id; if (oldValue !== value){ this._1933135987template_bundle_id = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "template_bundle_id", oldValue, value)); }; } public function get template_bundle_id():Number{ return (this._1933135987template_bundle_id); } public function set time_created(value:Date):void{ var oldValue:Object = this._630236298time_created; if (oldValue !== value){ this._630236298time_created = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "time_created", oldValue, value)); }; } public function get time_created():Date{ return (this._630236298time_created); } } }//package com.facebook.data.feed
Section 64
//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(value:String):void{ var oldValue:Object = this._1285910957template_title; if (oldValue !== value){ this._1285910957template_title = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "template_title", oldValue, value)); }; } public function get template_body():String{ return (this._180559289template_body); } public function removeEventListener(type:String, listener:Function, useCapture:Boolean=false):void{ _bindingEventDispatcher.removeEventListener(type, listener, useCapture); } public function get template_title():String{ return (this._1285910957template_title); } public function hasEventListener(type:String):Boolean{ return (_bindingEventDispatcher.hasEventListener(type)); } public function set template_body(value:String):void{ var oldValue:Object = this._180559289template_body; if (oldValue !== value){ this._180559289template_body = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "template_body", oldValue, value)); }; } public function dispatchEvent(event:Event):Boolean{ return (_bindingEventDispatcher.dispatchEvent(event)); } public function set type(value:String):void{ var oldValue:Object = this._3575610type; if (oldValue !== value){ this._3575610type = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "type", oldValue, value)); }; } public function get type():String{ return (this._3575610type); } public function addEventListener(type:String, listener:Function, useCapture:Boolean=false, priority:int=0, weakRef:Boolean=false):void{ _bindingEventDispatcher.addEventListener(type, listener, useCapture, priority, weakRef); } public function willTrigger(type:String):Boolean{ return (_bindingEventDispatcher.willTrigger(type)); } } }//package com.facebook.data.feed
Section 65
//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 AreFriendsData(){ super(); } public function get friendsCollection():FriendsCollection{ return (this._40395245friendsCollection); } public function set friendsCollection(value:FriendsCollection):void{ var oldValue:Object = this._40395245friendsCollection; if (oldValue !== value){ this._40395245friendsCollection = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "friendsCollection", oldValue, value)); }; } } }//package com.facebook.data.friends
Section 66
//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 67
//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(event:Event):Boolean{ return (_bindingEventDispatcher.dispatchEvent(event)); } public function get uid1():Number{ return (this._3589601uid1); } public function set uid1(value:Number):void{ var oldValue:Object = this._3589601uid1; if (oldValue !== value){ this._3589601uid1 = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "uid1", oldValue, value)); }; } public function hasEventListener(type:String):Boolean{ return (_bindingEventDispatcher.hasEventListener(type)); } public function set uid2(value:Number):void{ var oldValue:Object = this._3589602uid2; if (oldValue !== value){ this._3589602uid2 = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "uid2", oldValue, value)); }; } public function willTrigger(type:String):Boolean{ return (_bindingEventDispatcher.willTrigger(type)); } public function get uid2():Number{ return (this._3589602uid2); } public function get are_friends():Boolean{ return (this._455530154are_friends); } public function addEventListener(type:String, listener:Function, useCapture:Boolean=false, priority:int=0, weakRef:Boolean=false):void{ _bindingEventDispatcher.addEventListener(type, listener, useCapture, priority, weakRef); } public function removeEventListener(type:String, listener:Function, useCapture:Boolean=false):void{ _bindingEventDispatcher.removeEventListener(type, listener, useCapture); } public function set are_friends(value:Boolean):void{ var oldValue:Object = this._455530154are_friends; if (oldValue !== value){ this._455530154are_friends = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "are_friends", oldValue, value)); }; } } }//package com.facebook.data.friends
Section 68
//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 GetAppUserData(){ super(); } public function get uids():Array{ return (this._3589667uids); } public function set uids(value:Array):void{ var oldValue:Object = this._3589667uids; if (oldValue !== value){ this._3589667uids = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "uids", oldValue, value)); }; } } }//package com.facebook.data.friends
Section 69
//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 GetFriendsData(){ super(); } public function set friends(value:FacebookUserCollection):void{ var oldValue:Object = this._600094315friends; if (oldValue !== value){ this._600094315friends = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "friends", oldValue, value)); }; } public function get friends():FacebookUserCollection{ return (this._600094315friends); } } }//package com.facebook.data.friends
Section 70
//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 GetListsData(){ super(); } public function set lists(value:Array):void{ var oldValue:Object = this._102982549lists; if (oldValue !== value){ this._102982549lists = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "lists", oldValue, value)); }; } public function get lists():Array{ return (this._102982549lists); } } }//package com.facebook.data.friends
Section 71
//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(event:Event):Boolean{ return (_bindingEventDispatcher.dispatchEvent(event)); } public function get flid():Number{ return (this._3145825flid); } public function set flid(value:Number):void{ var oldValue:Object = this._3145825flid; if (oldValue !== value){ this._3145825flid = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "flid", oldValue, value)); }; } public function willTrigger(type:String):Boolean{ return (_bindingEventDispatcher.willTrigger(type)); } public function removeEventListener(type:String, listener:Function, useCapture:Boolean=false):void{ _bindingEventDispatcher.removeEventListener(type, listener, useCapture); } public function get name():String{ return (this._3373707name); } public function hasEventListener(type:String):Boolean{ return (_bindingEventDispatcher.hasEventListener(type)); } public function addEventListener(type:String, listener:Function, useCapture:Boolean=false, priority:int=0, weakRef:Boolean=false):void{ _bindingEventDispatcher.addEventListener(type, listener, useCapture, priority, weakRef); } public function set name(value:String):void{ var oldValue:Object = this._3373707name; if (oldValue !== value){ this._3373707name = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "name", oldValue, value)); }; } } }//package com.facebook.data.friends
Section 72
//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 GetGroupData(){ super(); } public function set groups(value:GroupCollection):void{ var oldValue:Object = this._1237460524groups; if (oldValue !== value){ this._1237460524groups = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "groups", oldValue, value)); }; } public function get groups():GroupCollection{ return (this._1237460524groups); } } }//package com.facebook.data.groups
Section 73
//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 GetMemberData(){ super(); } public function get admins():Array{ return (this._1422235900admins); } public function get notReplied():Array{ return (this._138904922notReplied); } public function set admins(value:Array):void{ var oldValue:Object = this._1422235900admins; if (oldValue !== value){ this._1422235900admins = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "admins", oldValue, value)); }; } public function set notReplied(value:Array):void{ var oldValue:Object = this._138904922notReplied; if (oldValue !== value){ this._138904922notReplied = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "notReplied", oldValue, value)); }; } public function set members(value:Array):void{ var oldValue:Object = this._948881689members; if (oldValue !== value){ this._948881689members = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "members", oldValue, value)); }; } public function get members():Array{ return (this._948881689members); } public function set officers(value:Array):void{ var oldValue:Object = this._765293059officers; if (oldValue !== value){ this._765293059officers = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "officers", oldValue, value)); }; } public function get officers():Array{ return (this._765293059officers); } } }//package com.facebook.data.groups
Section 74
//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(group:GroupData):void{ this.addItem(group); } } }//package com.facebook.data.groups
Section 75
//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(value:String):void{ var oldValue:Object = this._102338gid; if (oldValue !== value){ this._102338gid = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "gid", oldValue, value)); }; } 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(type:String):Boolean{ return (_bindingEventDispatcher.hasEventListener(type)); } public function set update_time(value:Date):void{ var oldValue:Object = this._573446013update_time; if (oldValue !== value){ this._573446013update_time = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "update_time", oldValue, value)); }; } public function get privacy():String{ return (this._314498168privacy); } public function set privacy(value:String):void{ var oldValue:Object = this._314498168privacy; if (oldValue !== value){ this._314498168privacy = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "privacy", oldValue, value)); }; } public function set nid(value:Number):void{ var oldValue:Object = this._109065nid; if (oldValue !== value){ this._109065nid = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "nid", oldValue, value)); }; } public function set pic(value:String):void{ var oldValue:Object = this._110986pic; if (oldValue !== value){ this._110986pic = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic", oldValue, value)); }; } public function set pic_big(value:String):void{ var oldValue:Object = this._578385717pic_big; if (oldValue !== value){ this._578385717pic_big = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic_big", oldValue, value)); }; } public function get pic_small():String{ return (this._1762076142pic_small); } public function get update_time():Date{ return (this._573446013update_time); } public function set name(value:String):void{ var oldValue:Object = this._3373707name; if (oldValue !== value){ this._3373707name = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "name", oldValue, value)); }; } public function set pic_small(value:String):void{ var oldValue:Object = this._1762076142pic_small; if (oldValue !== value){ this._1762076142pic_small = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic_small", oldValue, value)); }; } public function get creator():String{ return (this._1028554796creator); } public function set website(value:String):void{ var oldValue:Object = this._1224335515website; if (oldValue !== value){ this._1224335515website = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "website", oldValue, value)); }; } 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(type:String):Boolean{ return (_bindingEventDispatcher.willTrigger(type)); } public function dispatchEvent(event:Event):Boolean{ return (_bindingEventDispatcher.dispatchEvent(event)); } public function get gid():String{ return (this._102338gid); } public function get pic_big():String{ return (this._578385717pic_big); } public function addEventListener(type:String, listener:Function, useCapture:Boolean=false, priority:int=0, weakRef:Boolean=false):void{ _bindingEventDispatcher.addEventListener(type, listener, useCapture, priority, weakRef); } public function removeEventListener(type:String, listener:Function, useCapture:Boolean=false):void{ _bindingEventDispatcher.removeEventListener(type, listener, useCapture); } public function get office():String{ return (this._1019789636office); } public function set creator(value:String):void{ var oldValue:Object = this._1028554796creator; if (oldValue !== value){ this._1028554796creator = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "creator", oldValue, value)); }; } public function set venue(value:FacebookLocation):void{ var oldValue:Object = this._112093807venue; if (oldValue !== value){ this._112093807venue = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "venue", oldValue, value)); }; } public function set recent_news(value:String):void{ var oldValue:Object = this._2022916553recent_news; if (oldValue !== value){ this._2022916553recent_news = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "recent_news", oldValue, value)); }; } public function get venue():FacebookLocation{ return (this._112093807venue); } public function set group_type(value:String):void{ var oldValue:Object = this._1282509050group_type; if (oldValue !== value){ this._1282509050group_type = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "group_type", oldValue, value)); }; } public function set description(value:String):void{ var oldValue:Object = this._1724546052description; if (oldValue !== value){ this._1724546052description = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "description", oldValue, value)); }; } public function get group_type():String{ return (this._1282509050group_type); } public function set group_subtype(value:String):void{ var oldValue:Object = this._1816339526group_subtype; if (oldValue !== value){ this._1816339526group_subtype = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "group_subtype", oldValue, value)); }; } public function get description():String{ return (this._1724546052description); } public function set office(value:String):void{ var oldValue:Object = this._1019789636office; if (oldValue !== value){ this._1019789636office = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "office", oldValue, value)); }; } } }//package com.facebook.data.groups
Section 76
//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 GetNotesData(){ super(); } public function set notesCollection(value:NotesCollection):void{ var oldValue:Object = this._1716839361notesCollection; if (oldValue !== value){ this._1716839361notesCollection = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "notesCollection", oldValue, value)); }; } public function get notesCollection():NotesCollection{ return (this._1716839361notesCollection); } } }//package com.facebook.data.notes
Section 77
//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(event:Event):Boolean{ return (_bindingEventDispatcher.dispatchEvent(event)); } public function get created_time():Date{ return (this._2003148228created_time); } public function get note_id():String{ return (this._2129224840note_id); } public function addEventListener(type:String, listener:Function, useCapture:Boolean=false, priority:int=0, weakRef:Boolean=false):void{ _bindingEventDispatcher.addEventListener(type, listener, useCapture, priority, weakRef); } public function set created_time(value:Date):void{ var oldValue:Object = this._2003148228created_time; if (oldValue !== value){ this._2003148228created_time = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "created_time", oldValue, value)); }; } public function set note_id(value:String):void{ var oldValue:Object = this._2129224840note_id; if (oldValue !== value){ this._2129224840note_id = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "note_id", oldValue, value)); }; } public function get updated_time():Date{ return (this._472881199updated_time); } public function willTrigger(type:String):Boolean{ return (_bindingEventDispatcher.willTrigger(type)); } public function get uid():String{ return (this._115792uid); } public function get title():String{ return (this._110371416title); } public function set uid(value:String):void{ var oldValue:Object = this._115792uid; if (oldValue !== value){ this._115792uid = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "uid", oldValue, value)); }; } public function set updated_time(value:Date):void{ var oldValue:Object = this._472881199updated_time; if (oldValue !== value){ this._472881199updated_time = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "updated_time", oldValue, value)); }; } public function set title(value:String):void{ var oldValue:Object = this._110371416title; if (oldValue !== value){ this._110371416title = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "title", oldValue, value)); }; } public function set content(value:String):void{ var oldValue:Object = this._951530617content; if (oldValue !== value){ this._951530617content = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "content", oldValue, value)); }; } public function hasEventListener(type:String):Boolean{ return (_bindingEventDispatcher.hasEventListener(type)); } public function removeEventListener(type:String, listener:Function, useCapture:Boolean=false):void{ _bindingEventDispatcher.removeEventListener(type, listener, useCapture); } public function get content():String{ return (this._951530617content); } } }//package com.facebook.data.notes
Section 78
//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 79
//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 GetNotificationData(){ super(); } 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(value:Array):void{ var oldValue:Object = this._1950182939event_invites; if (oldValue !== value){ this._1950182939event_invites = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "event_invites", oldValue, value)); }; } public function set friendsRequests(value:Array):void{ var oldValue:Object = this._757115001friendsRequests; if (oldValue !== value){ this._757115001friendsRequests = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "friendsRequests", oldValue, value)); }; } public function set group_invites(value:Array):void{ var oldValue:Object = this._2011259082group_invites; if (oldValue !== value){ this._2011259082group_invites = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "group_invites", oldValue, value)); }; } public function get friendsRequests():Array{ return (this._757115001friendsRequests); } public function set notificationCollection(value:NotificationCollection):void{ var oldValue:Object = this._823645719notificationCollection; if (oldValue !== value){ this._823645719notificationCollection = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "notificationCollection", oldValue, value)); }; } } }//package com.facebook.data.notifications
Section 80
//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 81
//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(event:Event):Boolean{ return (_bindingEventDispatcher.dispatchEvent(event)); } public function removeEventListener(type:String, listener:Function, useCapture:Boolean=false):void{ _bindingEventDispatcher.removeEventListener(type, listener, useCapture); } public function hasEventListener(type:String):Boolean{ return (_bindingEventDispatcher.hasEventListener(type)); } public function addEventListener(type:String, listener:Function, useCapture:Boolean=false, priority:int=0, weakRef:Boolean=false):void{ _bindingEventDispatcher.addEventListener(type, listener, useCapture, priority, weakRef); } public function set most_recent(value:Number):void{ var oldValue:Object = this._1739890327most_recent; if (oldValue !== value){ this._1739890327most_recent = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "most_recent", oldValue, value)); }; } public function get unread():Number{ return (this._840272977unread); } public function willTrigger(type:String):Boolean{ return (_bindingEventDispatcher.willTrigger(type)); } public function get most_recent():Number{ return (this._1739890327most_recent); } public function set unread(value:Number):void{ var oldValue:Object = this._840272977unread; if (oldValue !== value){ this._840272977unread = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "unread", oldValue, value)); }; } } }//package com.facebook.data.notifications
Section 82
//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(event:Event):Boolean{ return (_bindingEventDispatcher.dispatchEvent(event)); } public function removeEventListener(type:String, listener:Function, useCapture:Boolean=false):void{ _bindingEventDispatcher.removeEventListener(type, listener, useCapture); } public function hasEventListener(type:String):Boolean{ return (_bindingEventDispatcher.hasEventListener(type)); } public function addEventListener(type:String, listener:Function, useCapture:Boolean=false, priority:int=0, weakRef:Boolean=false):void{ _bindingEventDispatcher.addEventListener(type, listener, useCapture, priority, weakRef); } public function set most_recent(value:Number):void{ var oldValue:Object = this._1739890327most_recent; if (oldValue !== value){ this._1739890327most_recent = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "most_recent", oldValue, value)); }; } public function get unread():Number{ return (this._840272977unread); } public function willTrigger(type:String):Boolean{ return (_bindingEventDispatcher.willTrigger(type)); } public function get most_recent():Number{ return (this._1739890327most_recent); } public function set unread(value:Number):void{ var oldValue:Object = this._840272977unread; if (oldValue !== value){ this._840272977unread = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "unread", oldValue, value)); }; } } }//package com.facebook.data.notifications
Section 83
//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(event:Event):Boolean{ return (_bindingEventDispatcher.dispatchEvent(event)); } public function removeEventListener(type:String, listener:Function, useCapture:Boolean=false):void{ _bindingEventDispatcher.removeEventListener(type, listener, useCapture); } public function hasEventListener(type:String):Boolean{ return (_bindingEventDispatcher.hasEventListener(type)); } public function addEventListener(type:String, listener:Function, useCapture:Boolean=false, priority:int=0, weakRef:Boolean=false):void{ _bindingEventDispatcher.addEventListener(type, listener, useCapture, priority, weakRef); } public function set most_recent(value:Number):void{ var oldValue:Object = this._1739890327most_recent; if (oldValue !== value){ this._1739890327most_recent = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "most_recent", oldValue, value)); }; } public function get unread():Number{ return (this._840272977unread); } public function willTrigger(type:String):Boolean{ return (_bindingEventDispatcher.willTrigger(type)); } public function get most_recent():Number{ return (this._1739890327most_recent); } public function set unread(value:Number):void{ var oldValue:Object = this._840272977unread; if (oldValue !== value){ this._840272977unread = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "unread", oldValue, value)); }; } } }//package com.facebook.data.notifications
Section 84
//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 GetPageInfoData(){ super(); } public function get pageInfoCollection():PageInfoCollection{ return (this._1492481627pageInfoCollection); } public function set pageInfoCollection(value:PageInfoCollection):void{ var oldValue:Object = this._1492481627pageInfoCollection; if (oldValue !== value){ this._1492481627pageInfoCollection = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pageInfoCollection", oldValue, value)); }; } } }//package com.facebook.data.pages
Section 85
//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(pageInfo:PageInfoData):void{ this.addItem(pageInfo); } } }//package com.facebook.data.pages
Section 86
//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 PageInfoData(){ super(); } public function set starring(value:String):void{ var oldValue:Object = this._1316747138starring; if (oldValue !== value){ this._1316747138starring = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "starring", oldValue, value)); }; } public function get season():String{ return (this._906335517season); } public function get bio():String{ return (this._97544bio); } public function set record_label(value:String):void{ var oldValue:Object = this._2116416122record_label; if (oldValue !== value){ this._2116416122record_label = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "record_label", oldValue, value)); }; } public function set genre(value:String):void{ var oldValue:Object = this._98240899genre; if (oldValue !== value){ this._98240899genre = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "genre", oldValue, value)); }; } public function get hours():String{ return (this._99469071hours); } public function get pic_small():String{ return (this._1762076142pic_small); } public function set bio(value:String):void{ var oldValue:Object = this._97544bio; if (oldValue !== value){ this._97544bio = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "bio", oldValue, value)); }; } public function set hours(value:String):void{ var oldValue:Object = this._99469071hours; if (oldValue !== value){ this._99469071hours = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "hours", oldValue, value)); }; } public function set mission(value:String):void{ var oldValue:Object = this._1069449612mission; if (oldValue !== value){ this._1069449612mission = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "mission", oldValue, value)); }; } public function set pic_small(value:String):void{ var oldValue:Object = this._1762076142pic_small; if (oldValue !== value){ this._1762076142pic_small = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic_small", oldValue, value)); }; } public function set name(value:String):void{ var oldValue:Object = this._3373707name; if (oldValue !== value){ this._3373707name = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "name", oldValue, value)); }; } public function get band_members():String{ return (this._68251919band_members); } public function set band_members(value:String):void{ var oldValue:Object = this._68251919band_members; if (oldValue !== value){ this._68251919band_members = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "band_members", oldValue, value)); }; } public function get network():String{ return (this._1843485230network); } public function set website(value:String):void{ var oldValue:Object = this._1224335515website; if (oldValue !== value){ this._1224335515website = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "website", oldValue, value)); }; } public function get type():String{ return (this._3575610type); } public function set influences(value:String):void{ var oldValue:Object = this._1774829598influences; if (oldValue !== value){ this._1774829598influences = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "influences", oldValue, value)); }; } public function set schedule(value:String):void{ var oldValue:Object = this._697920873schedule; if (oldValue !== value){ this._697920873schedule = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "schedule", oldValue, value)); }; } public function get influences():String{ return (this._1774829598influences); } public function set founded(value:String):void{ var oldValue:Object = this._674640991founded; if (oldValue !== value){ this._674640991founded = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "founded", oldValue, value)); }; } public function get pic_large():String{ return (this._1768882106pic_large); } public function set directed_by(value:String):void{ var oldValue:Object = this._1635870290directed_by; if (oldValue !== value){ this._1635870290directed_by = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "directed_by", oldValue, value)); }; } public function set network(value:String):void{ var oldValue:Object = this._1843485230network; if (oldValue !== value){ this._1843485230network = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "network", oldValue, value)); }; } public function get products():String{ return (this._1003761308products); } public function set location(value:FacebookLocation):void{ var oldValue:Object = this._1901043637location; if (oldValue !== value){ this._1901043637location = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "location", oldValue, value)); }; } public function get pic_square():String{ return (this._1214494066pic_square); } public function set awards(value:String):void{ var oldValue:Object = this._1405038154awards; if (oldValue !== value){ this._1405038154awards = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "awards", oldValue, value)); }; } public function set type(value:String):void{ var oldValue:Object = this._3575610type; if (oldValue !== value){ this._3575610type = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "type", oldValue, value)); }; } 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(value:String):void{ var oldValue:Object = this._1768882106pic_large; if (oldValue !== value){ this._1768882106pic_large = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic_large", oldValue, value)); }; } public function get mission():String{ return (this._1069449612mission); } public function set page_id(value:Number):void{ var oldValue:Object = this._803548981page_id; if (oldValue !== value){ this._803548981page_id = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "page_id", oldValue, value)); }; } 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(value:String):void{ var oldValue:Object = this._578385717pic_big; if (oldValue !== value){ this._578385717pic_big = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic_big", oldValue, value)); }; } 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(value:String):void{ var oldValue:Object = this._891901482studio; if (oldValue !== value){ this._891901482studio = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "studio", oldValue, value)); }; } public function get awards():String{ return (this._1405038154awards); } public function set season(value:String):void{ var oldValue:Object = this._906335517season; if (oldValue !== value){ this._906335517season = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "season", oldValue, value)); }; } public function get page_id():Number{ return (this._803548981page_id); } public function set release_date(value:String):void{ var oldValue:Object = this._1965855514release_date; if (oldValue !== value){ this._1965855514release_date = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "release_date", oldValue, value)); }; } public function set products(value:String):void{ var oldValue:Object = this._1003761308products; if (oldValue !== value){ this._1003761308products = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "products", oldValue, value)); }; } public function set plot_outline(value:String):void{ var oldValue:Object = this._1817326876plot_outline; if (oldValue !== value){ this._1817326876plot_outline = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "plot_outline", oldValue, value)); }; } public function get studio():String{ return (this._891901482studio); } public function get pic_big():String{ return (this._578385717pic_big); } public function set pic_square(value:String):void{ var oldValue:Object = this._1214494066pic_square; if (oldValue !== value){ this._1214494066pic_square = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic_square", oldValue, value)); }; } public function get release_date():String{ return (this._1965855514release_date); } public function set hometown(value:String):void{ var oldValue:Object = this._485238799hometown; if (oldValue !== value){ this._485238799hometown = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "hometown", oldValue, value)); }; } public function set produced_by(value:String):void{ var oldValue:Object = this._1505017102produced_by; if (oldValue !== value){ this._1505017102produced_by = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "produced_by", oldValue, value)); }; } 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(value:String):void{ var oldValue:Object = this._915840763company_overview; if (oldValue !== value){ this._915840763company_overview = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "company_overview", oldValue, value)); }; } public function set has_added_app(value:Boolean):void{ var oldValue:Object = this._2002886397has_added_app; if (oldValue !== value){ this._2002886397has_added_app = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "has_added_app", oldValue, value)); }; } 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(value:String):void{ var oldValue:Object = this._201317249written_by; if (oldValue !== value){ this._201317249written_by = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "written_by", oldValue, value)); }; } } }//package com.facebook.data.pages
Section 87
//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(albumData:AlbumData):void{ this.addItem(albumData); } } }//package com.facebook.data.photos
Section 88
//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(value:Number):void{ var oldValue:Object = this._3530753size; if (oldValue !== value){ this._3530753size = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "size", oldValue, value)); }; } public function get cover_pid():String{ return (this._1980072195cover_pid); } public function set cover_pid(value:String):void{ var oldValue:Object = this._1980072195cover_pid; if (oldValue !== value){ this._1980072195cover_pid = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "cover_pid", oldValue, value)); }; } public function get name():String{ return (this._3373707name); } public function willTrigger(type:String):Boolean{ return (_bindingEventDispatcher.willTrigger(type)); } public function set name(value:String):void{ var oldValue:Object = this._3373707name; if (oldValue !== value){ this._3373707name = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "name", oldValue, value)); }; } public function set modified(value:Date):void{ var oldValue:Object = this._615513399modified; if (oldValue !== value){ this._615513399modified = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "modified", oldValue, value)); }; } 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(type:String, listener:Function, useCapture:Boolean=false):void{ _bindingEventDispatcher.removeEventListener(type, listener, useCapture); } public function addEventListener(type:String, listener:Function, useCapture:Boolean=false, priority:int=0, weakRef:Boolean=false):void{ _bindingEventDispatcher.addEventListener(type, listener, useCapture, priority, weakRef); } public function dispatchEvent(event:Event):Boolean{ return (_bindingEventDispatcher.dispatchEvent(event)); } public function set created(value:Date):void{ var oldValue:Object = this._1028554472created; if (oldValue !== value){ this._1028554472created = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "created", oldValue, value)); }; } public function set visible(value:String):void{ var oldValue:Object = this._466743410visible; if (oldValue !== value){ this._466743410visible = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "visible", oldValue, value)); }; } public function set owner(value:String):void{ var oldValue:Object = this._106164915owner; if (oldValue !== value){ this._106164915owner = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "owner", oldValue, value)); }; } public function get created():Date{ return (this._1028554472created); } public function set location(value:String):void{ var oldValue:Object = this._1901043637location; if (oldValue !== value){ this._1901043637location = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "location", oldValue, value)); }; } public function get visible():String{ return (this._466743410visible); } public function set link(value:String):void{ var oldValue:Object = this._3321850link; if (oldValue !== value){ this._3321850link = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "link", oldValue, value)); }; } public function set description(value:String):void{ var oldValue:Object = this._1724546052description; if (oldValue !== value){ this._1724546052description = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "description", oldValue, value)); }; } public function get link():String{ return (this._3321850link); } public function hasEventListener(type:String):Boolean{ return (_bindingEventDispatcher.hasEventListener(type)); } public function get description():String{ return (this._1724546052description); } public function set aid(value:String):void{ var oldValue:Object = this._96572aid; if (oldValue !== value){ this._96572aid = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "aid", oldValue, value)); }; } } }//package com.facebook.data.photos
Section 89
//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(value:String):void{ var oldValue:Object = this._1953179611src_big; if (oldValue !== value){ this._1953179611src_big = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "src_big", oldValue, value)); }; } public function get pid():String{ return (this._110987pid); } public function set caption(value:String):void{ var oldValue:Object = this._552573414caption; if (oldValue !== value){ this._552573414caption = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "caption", oldValue, value)); }; } public function set pid(value:String):void{ var oldValue:Object = this._110987pid; if (oldValue !== value){ this._110987pid = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pid", oldValue, value)); }; } public function set src(value:String):void{ var oldValue:Object = this._114148src; if (oldValue !== value){ this._114148src = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "src", oldValue, value)); }; } public function set src_small(value:String):void{ var oldValue:Object = this._89081108src_small; if (oldValue !== value){ this._89081108src_small = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "src_small", oldValue, value)); }; } public function get tags():Array{ return (this._3552281tags); } public function set created(value:Date):void{ var oldValue:Object = this._1028554472created; if (oldValue !== value){ this._1028554472created = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "created", oldValue, value)); }; } public function get src_big():String{ return (this._1953179611src_big); } public function get created():Date{ return (this._1028554472created); } public function set tags(value:Array):void{ var oldValue:Object = this._3552281tags; if (oldValue !== value){ this._3552281tags = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "tags", oldValue, value)); }; } public function set link(value:String):void{ var oldValue:Object = this._3321850link; if (oldValue !== value){ this._3321850link = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "link", oldValue, value)); }; } public function set owner(value:Number):void{ var oldValue:Object = this._106164915owner; if (oldValue !== value){ this._106164915owner = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "owner", oldValue, value)); }; } 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(value:String):void{ var oldValue:Object = this._96572aid; if (oldValue !== value){ this._96572aid = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "aid", oldValue, value)); }; } } }//package com.facebook.data.photos
Section 90
//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 GetAlbumsData(){ super(); } public function set albumCollection(value:AlbumCollection):void{ var oldValue:Object = this._1670051219albumCollection; if (oldValue !== value){ this._1670051219albumCollection = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "albumCollection", oldValue, value)); }; } public function get albumCollection():AlbumCollection{ return (this._1670051219albumCollection); } } }//package com.facebook.data.photos
Section 91
//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 GetCreateAlbumData(){ super(); } public function get albumData():AlbumData{ return (this._248976057albumData); } public function set albumData(value:AlbumData):void{ var oldValue:Object = this._248976057albumData; if (oldValue !== value){ this._248976057albumData = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "albumData", oldValue, value)); }; } } }//package com.facebook.data.photos
Section 92
//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 GetPhotosData(){ super(); } public function get photoCollection():PhotoCollection{ return (this._1751633296photoCollection); } public function set photoCollection(value:PhotoCollection):void{ var oldValue:Object = this._1751633296photoCollection; if (oldValue !== value){ this._1751633296photoCollection = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "photoCollection", oldValue, value)); }; } } }//package com.facebook.data.photos
Section 93
//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 GetTagsData(){ super(); } public function get photoTagsCollection():PhotoTagCollection{ return (this._2107998615photoTagsCollection); } public function set photoTagsCollection(value:PhotoTagCollection):void{ var oldValue:Object = this._2107998615photoTagsCollection; if (oldValue !== value){ this._2107998615photoTagsCollection = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "photoTagsCollection", oldValue, value)); }; } } }//package com.facebook.data.photos
Section 94
//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(photoData:PhotoData):void{ this.addItem(photoData); } } }//package com.facebook.data.photos
Section 95
//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(event:Event):Boolean{ return (_bindingEventDispatcher.dispatchEvent(event)); } public function hasEventListener(type:String):Boolean{ return (_bindingEventDispatcher.hasEventListener(type)); } public function get src():String{ return (this._114148src); } public function set src_big(value:String):void{ var oldValue:Object = this._1953179611src_big; if (oldValue !== value){ this._1953179611src_big = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "src_big", oldValue, value)); }; } public function get pid():String{ return (this._110987pid); } public function set caption(value:String):void{ var oldValue:Object = this._552573414caption; if (oldValue !== value){ this._552573414caption = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "caption", oldValue, value)); }; } public function removeEventListener(type:String, listener:Function, useCapture:Boolean=false):void{ _bindingEventDispatcher.removeEventListener(type, listener, useCapture); } public function addEventListener(type:String, listener:Function, useCapture:Boolean=false, priority:int=0, weakRef:Boolean=false):void{ _bindingEventDispatcher.addEventListener(type, listener, useCapture, priority, weakRef); } public function willTrigger(type:String):Boolean{ return (_bindingEventDispatcher.willTrigger(type)); } public function set pid(value:String):void{ var oldValue:Object = this._110987pid; if (oldValue !== value){ this._110987pid = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pid", oldValue, value)); }; } public function set src(value:String):void{ var oldValue:Object = this._114148src; if (oldValue !== value){ this._114148src = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "src", oldValue, value)); }; } public function set src_small(value:String):void{ var oldValue:Object = this._89081108src_small; if (oldValue !== value){ this._89081108src_small = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "src_small", oldValue, value)); }; } public function set created(value:Date):void{ var oldValue:Object = this._1028554472created; if (oldValue !== value){ this._1028554472created = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "created", oldValue, value)); }; } public function set owner(value:String):void{ var oldValue:Object = this._106164915owner; if (oldValue !== value){ this._106164915owner = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "owner", oldValue, value)); }; } 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(value:String):void{ var oldValue:Object = this._3321850link; if (oldValue !== value){ this._3321850link = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "link", oldValue, value)); }; } 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(value:String):void{ var oldValue:Object = this._96572aid; if (oldValue !== value){ this._96572aid = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "aid", oldValue, value)); }; } } }//package com.facebook.data.photos
Section 96
//PhotoTagCollection (com.facebook.data.photos.PhotoTagCollection) package com.facebook.data.photos { import com.facebook.utils.*; public class PhotoTagCollection extends FacebookArrayCollection { public function PhotoTagCollection(source:Array=null){ super(null, TagData); } public function addPhotoTag(tagData:TagData):void{ this.addItem(tagData); } } }//package com.facebook.data.photos
Section 97
//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(event:Event):Boolean{ return (_bindingEventDispatcher.dispatchEvent(event)); } public function set y(value:Number):void{ var oldValue:Object = this.y; if (oldValue !== value){ this._121y = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "y", oldValue, value)); }; } public function set created(value:Date):void{ var oldValue:Object = this._1028554472created; if (oldValue !== value){ this._1028554472created = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "created", oldValue, value)); }; } public function set ycoord(value:Number):void{ var oldValue:Object = this.ycoord; if (oldValue !== value){ this._735994340ycoord = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "ycoord", oldValue, value)); }; } public function get tag_text():String{ return (this._763826510tag_text); } public function get pid():String{ return (this._110987pid); } public function addEventListener(type:String, listener:Function, useCapture:Boolean=false, priority:int=0, weakRef:Boolean=false):void{ _bindingEventDispatcher.addEventListener(type, listener, useCapture, priority, weakRef); } private function set _764623491xcoord(value:Number):void{ _actualX = value; } public function removeEventListener(type:String, listener:Function, useCapture:Boolean=false):void{ _bindingEventDispatcher.removeEventListener(type, listener, useCapture); } public function willTrigger(type:String):Boolean{ return (_bindingEventDispatcher.willTrigger(type)); } public function set pid(value:String):void{ var oldValue:Object = this._110987pid; if (oldValue !== value){ this._110987pid = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pid", oldValue, value)); }; } private function set _120x(value:Number):void{ _actualX = value; } public function get ycoord():Number{ return (_actualY); } private function set _121y(value:Number):void{ _actualY = value; } private function set _735994340ycoord(value:Number):void{ _actualY = value; } public function set subject(value:String):void{ var oldValue:Object = this._1867885268subject; if (oldValue !== value){ this._1867885268subject = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "subject", oldValue, value)); }; } public function get created():Date{ return (this._1028554472created); } public function get subject():String{ return (this._1867885268subject); } public function set tag_uid(value:String):void{ var oldValue:Object = this._1548659157tag_uid; if (oldValue !== value){ this._1548659157tag_uid = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "tag_uid", oldValue, value)); }; } public function set x(value:Number):void{ var oldValue:Object = this.x; if (oldValue !== value){ this._120x = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "x", oldValue, value)); }; } public function get tag_uid():String{ return (this._1548659157tag_uid); } public function hasEventListener(type:String):Boolean{ return (_bindingEventDispatcher.hasEventListener(type)); } public function get x():Number{ return (_actualX); } public function get y():Number{ return (_actualY); } public function set xcoord(value:Number):void{ var oldValue:Object = this.xcoord; if (oldValue !== value){ this._764623491xcoord = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "xcoord", oldValue, value)); }; } public function set tag_text(value:String):void{ var oldValue:Object = this._763826510tag_text; if (oldValue !== value){ this._763826510tag_text = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "tag_text", oldValue, value)); }; } public function get xcoord():Number{ return (_actualX); } } }//package com.facebook.data.photos
Section 98
//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 GetStatusData(){ super(); } public function get status():Array{ return (this._892481550status); } public function set status(value:Array):void{ var oldValue:Object = this._892481550status; if (oldValue !== value){ this._892481550status = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "status", oldValue, value)); }; } } }//package com.facebook.data.status
Section 99
//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(value:String):void{ var oldValue:Object = this._896505829source; if (oldValue !== value){ this._896505829source = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "source", oldValue, value)); }; } public function willTrigger(type:String):Boolean{ return (_bindingEventDispatcher.willTrigger(type)); } public function get message():String{ return (this._954925063message); } public function get status_id():String{ return (this._2070199160status_id); } public function removeEventListener(type:String, listener:Function, useCapture:Boolean=false):void{ _bindingEventDispatcher.removeEventListener(type, listener, useCapture); } public function get time():Date{ return (this._3560141time); } public function set message(value:String):void{ var oldValue:Object = this._954925063message; if (oldValue !== value){ this._954925063message = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "message", oldValue, value)); }; } public function dispatchEvent(event:Event):Boolean{ return (_bindingEventDispatcher.dispatchEvent(event)); } public function get uid():String{ return (this._115792uid); } public function addEventListener(type:String, listener:Function, useCapture:Boolean=false, priority:int=0, weakRef:Boolean=false):void{ _bindingEventDispatcher.addEventListener(type, listener, useCapture, priority, weakRef); } public function set status_id(value:String):void{ var oldValue:Object = this._2070199160status_id; if (oldValue !== value){ this._2070199160status_id = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "status_id", oldValue, value)); }; } public function set time(value:Date):void{ var oldValue:Object = this._3560141time; if (oldValue !== value){ this._3560141time = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "time", oldValue, value)); }; } public function get source():String{ return (this._896505829source); } public function set uid(value:String):void{ var oldValue:Object = this._115792uid; if (oldValue !== value){ this._115792uid = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "uid", oldValue, value)); }; } public function hasEventListener(type:String):Boolean{ return (_bindingEventDispatcher.hasEventListener(type)); } } }//package com.facebook.data.status
Section 100
//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(type:String):Boolean{ return (_bindingEventDispatcher.willTrigger(type)); } public function get name():String{ return (this._3373707name); } public function set name(value:String):void{ var oldValue:Object = this._3373707name; if (oldValue !== value){ this._3373707name = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "name", oldValue, value)); }; } 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(value:String):void{ var oldValue:Object = this._110371416title; if (oldValue !== value){ this._110371416title = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "title", oldValue, value)); }; } public function dispatchEvent(event:Event):Boolean{ return (_bindingEventDispatcher.dispatchEvent(event)); } public function set body(value:String):void{ var oldValue:Object = this._3029410body; if (oldValue !== value){ this._3029410body = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "body", oldValue, value)); }; } public function set media(value:Array):void{ var oldValue:Object = this._103772132media; if (oldValue !== value){ this._103772132media = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "media", oldValue, value)); }; } public function removeEventListener(type:String, listener:Function, useCapture:Boolean=false):void{ _bindingEventDispatcher.removeEventListener(type, listener, useCapture); } public function set caption(value:String):void{ var oldValue:Object = this._552573414caption; if (oldValue !== value){ this._552573414caption = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "caption", oldValue, value)); }; } public function addEventListener(type:String, listener:Function, useCapture:Boolean=false, priority:int=0, weakRef:Boolean=false):void{ _bindingEventDispatcher.addEventListener(type, listener, useCapture, priority, weakRef); } public function set href(value:String):void{ var oldValue:Object = this._3211051href; if (oldValue !== value){ this._3211051href = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "href", oldValue, value)); }; } public function get title():String{ return (this._110371416title); } public function set text(value:String):void{ var oldValue:Object = this._3556653text; if (oldValue !== value){ this._3556653text = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "text", oldValue, value)); }; } public function get media():Array{ return (this._103772132media); } public function set label(value:String):void{ var oldValue:Object = this._102727412label; if (oldValue !== value){ this._102727412label = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "label", oldValue, value)); }; } public function get caption():String{ return (this._552573414caption); } public function set icon(value:String):void{ var oldValue:Object = this._3226745icon; if (oldValue !== value){ this._3226745icon = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "icon", oldValue, value)); }; } public function hasEventListener(type:String):Boolean{ return (_bindingEventDispatcher.hasEventListener(type)); } public function set description(value:String):void{ var oldValue:Object = this._1724546052description; if (oldValue !== value){ this._1724546052description = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "description", oldValue, value)); }; } public function get icon():String{ return (this._3226745icon); } public function get description():String{ return (this._1724546052description); } } }//package com.facebook.data.stream
Section 101
//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(event:Event):Boolean{ return (_bindingEventDispatcher.dispatchEvent(event)); } public function willTrigger(type:String):Boolean{ return (_bindingEventDispatcher.willTrigger(type)); } public function get count():uint{ return (this._94851343count); } public function removeEventListener(type:String, listener:Function, useCapture:Boolean=false):void{ _bindingEventDispatcher.removeEventListener(type, listener, useCapture); } public function get posts():Array{ return (this._106855379posts); } public function addEventListener(type:String, listener:Function, useCapture:Boolean=false, priority:int=0, weakRef:Boolean=false):void{ _bindingEventDispatcher.addEventListener(type, listener, useCapture, priority, weakRef); } public function get can_remove():Boolean{ return (this._1294922797can_remove); } public function set can_post(value:Boolean):void{ var oldValue:Object = this._126536785can_post; if (oldValue !== value){ this._126536785can_post = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "can_post", oldValue, value)); }; } public function set count(value:uint):void{ var oldValue:Object = this._94851343count; if (oldValue !== value){ this._94851343count = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "count", oldValue, value)); }; } public function set can_remove(value:Boolean):void{ var oldValue:Object = this._1294922797can_remove; if (oldValue !== value){ this._1294922797can_remove = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "can_remove", oldValue, value)); }; } public function set posts(value:Array):void{ var oldValue:Object = this._106855379posts; if (oldValue !== value){ this._106855379posts = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "posts", oldValue, value)); }; } public function get can_post():Boolean{ return (this._126536785can_post); } public function hasEventListener(type:String):Boolean{ return (_bindingEventDispatcher.hasEventListener(type)); } } }//package com.facebook.data.stream
Section 102
//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 GetCommentsData(){ super(); } public function set comments(value:Array):void{ var oldValue:Object = this._602415628comments; if (oldValue !== value){ this._602415628comments = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "comments", oldValue, value)); }; } public function get comments():Array{ return (this._602415628comments); } } }//package com.facebook.data.stream
Section 103
//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 GetFiltersData(){ super(); } public function get filters():StreamFilterCollection{ return (this._854547461filters); } public function set filters(value:StreamFilterCollection):void{ var oldValue:Object = this._854547461filters; if (oldValue !== value){ this._854547461filters = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "filters", oldValue, value)); }; } } }//package com.facebook.data.stream
Section 104
//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 GetStreamData(){ super(); } public function get albums():AlbumCollection{ return (this._1415163932albums); } public function set stories(value:StreamStoryCollection):void{ var oldValue:Object = this._1884266413stories; if (oldValue !== value){ this._1884266413stories = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "stories", oldValue, value)); }; } public function get profiles():ProfileCollection{ return (this._1002263574profiles); } public function set albums(value:AlbumCollection):void{ var oldValue:Object = this._1415163932albums; if (oldValue !== value){ this._1415163932albums = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "albums", oldValue, value)); }; } public function get stories():StreamStoryCollection{ return (this._1884266413stories); } public function set profiles(value:ProfileCollection):void{ var oldValue:Object = this._1002263574profiles; if (oldValue !== value){ this._1002263574profiles = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "profiles", oldValue, value)); }; } } }//package com.facebook.data.stream
Section 105
//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(event:Event):Boolean{ return (_bindingEventDispatcher.dispatchEvent(event)); } public function willTrigger(type:String):Boolean{ return (_bindingEventDispatcher.willTrigger(type)); } public function set can_like(value:Boolean):void{ var oldValue:Object = this._126661978can_like; if (oldValue !== value){ this._126661978can_like = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "can_like", oldValue, value)); }; } public function addEventListener(type:String, listener:Function, useCapture:Boolean=false, priority:int=0, weakRef:Boolean=false):void{ _bindingEventDispatcher.addEventListener(type, listener, useCapture, priority, weakRef); } public function get count():uint{ return (this._94851343count); } public function set user_likes(value:Boolean):void{ var oldValue:Object = this._1928023624user_likes; if (oldValue !== value){ this._1928023624user_likes = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "user_likes", oldValue, value)); }; } public function removeEventListener(type:String, listener:Function, useCapture:Boolean=false):void{ _bindingEventDispatcher.removeEventListener(type, listener, useCapture); } public function set sample(value:Array):void{ var oldValue:Object = this._909675094sample; if (oldValue !== value){ this._909675094sample = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "sample", oldValue, value)); }; } public function get friends():Array{ return (this._600094315friends); } public function set href(value:String):void{ var oldValue:Object = this._3211051href; if (oldValue !== value){ this._3211051href = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "href", oldValue, value)); }; } public function get user_likes():Boolean{ return (this._1928023624user_likes); } public function set count(value:uint):void{ var oldValue:Object = this._94851343count; if (oldValue !== value){ this._94851343count = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "count", oldValue, value)); }; } public function get can_like():Boolean{ return (this._126661978can_like); } public function get sample():Array{ return (this._909675094sample); } public function set friends(value:Array):void{ var oldValue:Object = this._600094315friends; if (oldValue !== value){ this._600094315friends = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "friends", oldValue, value)); }; } public function hasEventListener(type:String):Boolean{ return (_bindingEventDispatcher.hasEventListener(type)); } public function get href():String{ return (this._3211051href); } } }//package com.facebook.data.stream
Section 106
//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(event:Event):Boolean{ return (_bindingEventDispatcher.dispatchEvent(event)); } public function willTrigger(type:String):Boolean{ return (_bindingEventDispatcher.willTrigger(type)); } public function get pid():String{ return (this._110987pid); } public function removeEventListener(type:String, listener:Function, useCapture:Boolean=false):void{ _bindingEventDispatcher.removeEventListener(type, listener, useCapture); } public function get index():uint{ return (this._100346066index); } public function addEventListener(type:String, listener:Function, useCapture:Boolean=false, priority:int=0, weakRef:Boolean=false):void{ _bindingEventDispatcher.addEventListener(type, listener, useCapture, priority, weakRef); } public function set pid(value:String):void{ var oldValue:Object = this._110987pid; if (oldValue !== value){ this._110987pid = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pid", oldValue, value)); }; } public function set owner(value:String):void{ var oldValue:Object = this._106164915owner; if (oldValue !== value){ this._106164915owner = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "owner", oldValue, value)); }; } public function set index(value:uint):void{ var oldValue:Object = this._100346066index; if (oldValue !== value){ this._100346066index = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "index", oldValue, value)); }; } public function get owner():String{ return (this._106164915owner); } public function hasEventListener(type:String):Boolean{ return (_bindingEventDispatcher.hasEventListener(type)); } public function set aid(value:String):void{ var oldValue:Object = this._96572aid; if (oldValue !== value){ this._96572aid = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "aid", oldValue, value)); }; } public function get aid():String{ return (this._96572aid); } } }//package com.facebook.data.stream
Section 107
//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(type:String):Boolean{ return (_bindingEventDispatcher.willTrigger(type)); } public function dispatchEvent(event:Event):Boolean{ return (_bindingEventDispatcher.dispatchEvent(event)); } public function set fromid(value:String):void{ var oldValue:Object = this._1266097595fromid; if (oldValue !== value){ this._1266097595fromid = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "fromid", oldValue, value)); }; } public function removeEventListener(type:String, listener:Function, useCapture:Boolean=false):void{ _bindingEventDispatcher.removeEventListener(type, listener, useCapture); } public function get time():Date{ return (this._3560141time); } public function set time(value:Date):void{ var oldValue:Object = this._3560141time; if (oldValue !== value){ this._3560141time = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "time", oldValue, value)); }; } public function get id():String{ return (this._3355id); } public function addEventListener(type:String, listener:Function, useCapture:Boolean=false, priority:int=0, weakRef:Boolean=false):void{ _bindingEventDispatcher.addEventListener(type, listener, useCapture, priority, weakRef); } public function set text(value:String):void{ var oldValue:Object = this._3556653text; if (oldValue !== value){ this._3556653text = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "text", oldValue, value)); }; } public function get text():String{ return (this._3556653text); } public function hasEventListener(type:String):Boolean{ return (_bindingEventDispatcher.hasEventListener(type)); } public function set id(value:String):void{ var oldValue:Object = this._3355id; if (oldValue !== value){ this._3355id = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "id", oldValue, value)); }; } } }//package com.facebook.data.stream
Section 108
//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 109
//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(event:Event):Boolean{ return (_bindingEventDispatcher.dispatchEvent(event)); } public function willTrigger(type:String):Boolean{ return (_bindingEventDispatcher.willTrigger(type)); } public function removeEventListener(type:String, listener:Function, useCapture:Boolean=false):void{ _bindingEventDispatcher.removeEventListener(type, listener, useCapture); } public function get name():String{ return (this._3373707name); } public function addEventListener(type:String, listener:Function, useCapture:Boolean=false, priority:int=0, weakRef:Boolean=false):void{ _bindingEventDispatcher.addEventListener(type, listener, useCapture, priority, weakRef); } public function set name(value:String):void{ var oldValue:Object = this._3373707name; if (oldValue !== value){ this._3373707name = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "name", oldValue, value)); }; } public function get id():String{ return (this._3355id); } public function set url(value:String):void{ var oldValue:Object = this._116079url; if (oldValue !== value){ this._116079url = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "url", oldValue, value)); }; } public function set pic_square(value:String):void{ var oldValue:Object = this._1214494066pic_square; if (oldValue !== value){ this._1214494066pic_square = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic_square", oldValue, value)); }; } public function get url():String{ return (this._116079url); } public function get pic_square():String{ return (this._1214494066pic_square); } public function set id(value:String):void{ var oldValue:Object = this._3355id; if (oldValue !== value){ this._3355id = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "id", oldValue, value)); }; } public function hasEventListener(type:String):Boolean{ return (_bindingEventDispatcher.hasEventListener(type)); } } }//package com.facebook.data.stream
Section 110
//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 111
//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(value:Boolean):void{ var oldValue:Object = this._1967053405is_visible; if (oldValue !== value){ this._1967053405is_visible = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "is_visible", oldValue, value)); }; } public function set type(value:String):void{ var oldValue:Object = this._3575610type; if (oldValue !== value){ this._3575610type = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "type", oldValue, value)); }; } public function willTrigger(type:String):Boolean{ return (_bindingEventDispatcher.willTrigger(type)); } public function get type():String{ return (this._3575610type); } public function removeEventListener(type:String, listener:Function, useCapture:Boolean=false):void{ _bindingEventDispatcher.removeEventListener(type, listener, useCapture); } public function get name():String{ return (this._3373707name); } public function hasEventListener(type:String):Boolean{ return (_bindingEventDispatcher.hasEventListener(type)); } public function addEventListener(type:String, listener:Function, useCapture:Boolean=false, priority:int=0, weakRef:Boolean=false):void{ _bindingEventDispatcher.addEventListener(type, listener, useCapture, priority, weakRef); } public function dispatchEvent(event:Event):Boolean{ return (_bindingEventDispatcher.dispatchEvent(event)); } public function set icon_url(value:String):void{ var oldValue:Object = this._737588055icon_url; if (oldValue !== value){ this._737588055icon_url = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "icon_url", oldValue, value)); }; } public function set name(value:String):void{ var oldValue:Object = this._3373707name; if (oldValue !== value){ this._3373707name = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "name", oldValue, value)); }; } public function get filter_key():String{ return (this._1552737000filter_key); } public function set rank(value:uint):void{ var oldValue:Object = this._3492908rank; if (oldValue !== value){ this._3492908rank = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "rank", oldValue, value)); }; } public function set uid(value:String):void{ var oldValue:Object = this._115792uid; if (oldValue !== value){ this._115792uid = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "uid", oldValue, value)); }; } public function set value(value:String):void{ var oldValue:Object = this._111972721value; if (oldValue !== value){ this._111972721value = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "value", oldValue, value)); }; } 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(value:String):void{ var oldValue:Object = this._1552737000filter_key; if (oldValue !== value){ this._1552737000filter_key = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "filter_key", oldValue, value)); }; } 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 112
//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(event:Event):Boolean{ return (_bindingEventDispatcher.dispatchEvent(event)); } public function get video():VideoMedia{ return (this._112202875video); } public function hasEventListener(type:String):Boolean{ return (_bindingEventDispatcher.hasEventListener(type)); } 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(type:String, listener:Function, useCapture:Boolean=false, priority:int=0, weakRef:Boolean=false):void{ _bindingEventDispatcher.addEventListener(type, listener, useCapture, priority, weakRef); } public function set src(value:String):void{ var oldValue:Object = this._114148src; if (oldValue !== value){ this._114148src = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "src", oldValue, value)); }; } public function removeEventListener(type:String, listener:Function, useCapture:Boolean=false):void{ _bindingEventDispatcher.removeEventListener(type, listener, useCapture); } public function set alt(value:String):void{ var oldValue:Object = this._96681alt; if (oldValue !== value){ this._96681alt = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "alt", oldValue, value)); }; } public function willTrigger(type:String):Boolean{ return (_bindingEventDispatcher.willTrigger(type)); } public function set href(value:String):void{ var oldValue:Object = this._3211051href; if (oldValue !== value){ this._3211051href = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "href", oldValue, value)); }; } public function get alt():String{ return (this._96681alt); } public function get href():String{ return (this._3211051href); } public function set type(value:String):void{ var oldValue:Object = this._3575610type; if (oldValue !== value){ this._3575610type = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "type", oldValue, value)); }; } public function set video(value:VideoMedia):void{ var oldValue:Object = this._112202875video; if (oldValue !== value){ this._112202875video = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "video", oldValue, value)); }; } public function get photo():PhotoMedia{ return (this._106642994photo); } public function get type():String{ return (this._3575610type); } public function set photo(value:PhotoMedia):void{ var oldValue:Object = this._106642994photo; if (oldValue !== value){ this._106642994photo = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "photo", oldValue, value)); }; } } }//package com.facebook.data.stream
Section 113
//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 114
//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(value:String):void{ var oldValue:Object = this._309882753attribution; if (oldValue !== value){ this._309882753attribution = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "attribution", oldValue, value)); }; } public function get message():String{ return (this._954925063message); } public function set created_time(value:Date):void{ var oldValue:Object = this._2003148228created_time; if (oldValue !== value){ this._2003148228created_time = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "created_time", oldValue, value)); }; } public function get target_id():String{ return (this._815576439target_id); } public function get sourceXML():XML{ return (this._1698418180sourceXML); } public function set message(value:String):void{ var oldValue:Object = this._954925063message; if (oldValue !== value){ this._954925063message = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "message", oldValue, value)); }; } public function get privacy():String{ return (this._314498168privacy); } public function set target_id(value:String):void{ var oldValue:Object = this._815576439target_id; if (oldValue !== value){ this._815576439target_id = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "target_id", oldValue, value)); }; } public function set privacy(value:String):void{ var oldValue:Object = this._314498168privacy; if (oldValue !== value){ this._314498168privacy = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "privacy", oldValue, value)); }; } public function get filter_key():String{ return (this._1552737000filter_key); } public function get post_id():String{ return (this._391211750post_id); } public function willTrigger(type:String):Boolean{ return (_bindingEventDispatcher.willTrigger(type)); } public function hasEventListener(type:String):Boolean{ return (_bindingEventDispatcher.hasEventListener(type)); } 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(value:String):void{ var oldValue:Object = this._1552737000filter_key; if (oldValue !== value){ this._1552737000filter_key = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "filter_key", oldValue, value)); }; } public function set updated_time(value:Date):void{ var oldValue:Object = this._472881199updated_time; if (oldValue !== value){ this._472881199updated_time = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "updated_time", oldValue, value)); }; } public function set post_id(value:String):void{ var oldValue:Object = this._391211750post_id; if (oldValue !== value){ this._391211750post_id = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "post_id", oldValue, value)); }; } 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(event:Event):Boolean{ return (_bindingEventDispatcher.dispatchEvent(event)); } public function get created_time():Date{ return (this._2003148228created_time); } public function set actor_id(value:String):void{ var oldValue:Object = this._1650554971actor_id; if (oldValue !== value){ this._1650554971actor_id = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "actor_id", oldValue, value)); }; } public function set sourceXML(value:XML):void{ var oldValue:Object = this._1698418180sourceXML; if (oldValue !== value){ this._1698418180sourceXML = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "sourceXML", oldValue, value)); }; } public function set viewer_id(value:String):void{ var oldValue:Object = this._1567543704viewer_id; if (oldValue !== value){ this._1567543704viewer_id = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "viewer_id", oldValue, value)); }; } public function addEventListener(type:String, listener:Function, useCapture:Boolean=false, priority:int=0, weakRef:Boolean=false):void{ _bindingEventDispatcher.addEventListener(type, listener, useCapture, priority, weakRef); } public function get updated_time():Date{ return (this._472881199updated_time); } public function removeEventListener(type:String, listener:Function, useCapture:Boolean=false):void{ _bindingEventDispatcher.removeEventListener(type, listener, useCapture); } public function set attachment(value:AttachmentData):void{ var oldValue:Object = this._1963501277attachment; if (oldValue !== value){ this._1963501277attachment = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "attachment", oldValue, value)); }; } public function set metadata(value:Object):void{ var oldValue:Object = this._450004177metadata; if (oldValue !== value){ this._450004177metadata = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "metadata", oldValue, value)); }; } public function get viewer_id():String{ return (this._1567543704viewer_id); } public function set comments(value:CommentsData):void{ var oldValue:Object = this._602415628comments; if (oldValue !== value){ this._602415628comments = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "comments", oldValue, value)); }; } public function set app_id(value:String):void{ var oldValue:Object = this._1411074055app_id; if (oldValue !== value){ this._1411074055app_id = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "app_id", oldValue, value)); }; } public function set type(value:uint):void{ var oldValue:Object = this._3575610type; if (oldValue !== value){ this._3575610type = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "type", oldValue, value)); }; } public function set likes(value:LikesData):void{ var oldValue:Object = this._102974396likes; if (oldValue !== value){ this._102974396likes = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "likes", oldValue, value)); }; } public function get app_id():String{ return (this._1411074055app_id); } public function get comments():CommentsData{ return (this._602415628comments); } public function set source_id(value:String):void{ var oldValue:Object = this._1698410561source_id; if (oldValue !== value){ this._1698410561source_id = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "source_id", oldValue, value)); }; } public function get attribution():String{ return (this._309882753attribution); } } }//package com.facebook.data.stream
Section 115
//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(event:Event):Boolean{ return (_bindingEventDispatcher.dispatchEvent(event)); } public function removeEventListener(type:String, listener:Function, useCapture:Boolean=false):void{ _bindingEventDispatcher.removeEventListener(type, listener, useCapture); } public function get source_url():String{ return (this._1111107765source_url); } public function addEventListener(type:String, listener:Function, useCapture:Boolean=false, priority:int=0, weakRef:Boolean=false):void{ _bindingEventDispatcher.addEventListener(type, listener, useCapture, priority, weakRef); } public function willTrigger(type:String):Boolean{ return (_bindingEventDispatcher.willTrigger(type)); } public function set source_url(value:String):void{ var oldValue:Object = this._1111107765source_url; if (oldValue !== value){ this._1111107765source_url = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "source_url", oldValue, value)); }; } public function set permalink(value:String):void{ var oldValue:Object = this._668433131permalink; if (oldValue !== value){ this._668433131permalink = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "permalink", oldValue, value)); }; } public function set display_url(value:String):void{ var oldValue:Object = this._1714674802display_url; if (oldValue !== value){ this._1714674802display_url = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "display_url", oldValue, value)); }; } public function set owner(value:String):void{ var oldValue:Object = this._106164915owner; if (oldValue !== value){ this._106164915owner = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "owner", oldValue, value)); }; } 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(type:String):Boolean{ return (_bindingEventDispatcher.hasEventListener(type)); } } }//package com.facebook.data.stream
Section 116
//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(affiliationData:AffiliationData):void{ this.addItem(affiliationData); } } }//package com.facebook.data.users
Section 117
//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(event:Event):Boolean{ return (_bindingEventDispatcher.dispatchEvent(event)); } public function get type():String{ return (this._3575610type); } public function hasEventListener(type:String):Boolean{ return (_bindingEventDispatcher.hasEventListener(type)); } public function willTrigger(type:String):Boolean{ return (_bindingEventDispatcher.willTrigger(type)); } public function get nid():Number{ return (this._109065nid); } public function removeEventListener(type:String, listener:Function, useCapture:Boolean=false):void{ _bindingEventDispatcher.removeEventListener(type, listener, useCapture); } public function get name():String{ return (this._3373707name); } public function addEventListener(type:String, listener:Function, useCapture:Boolean=false, priority:int=0, weakRef:Boolean=false):void{ _bindingEventDispatcher.addEventListener(type, listener, useCapture, priority, weakRef); } public function set nid(value:Number):void{ var oldValue:Object = this._109065nid; if (oldValue !== value){ this._109065nid = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "nid", oldValue, value)); }; } public function set name(value:String):void{ var oldValue:Object = this._3373707name; if (oldValue !== value){ this._3373707name = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "name", oldValue, value)); }; } public function set status(value:String):void{ var oldValue:Object = this._892481550status; if (oldValue !== value){ this._892481550status = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "status", oldValue, value)); }; } public function get status():String{ return (this._892481550status); } public function set type(value:String):void{ var oldValue:Object = this._3575610type; if (oldValue !== value){ this._3575610type = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "type", oldValue, value)); }; } public function set year(value:String):void{ var oldValue:Object = this._3704893year; if (oldValue !== value){ this._3704893year = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "year", oldValue, value)); }; } public function get year():String{ return (this._3704893year); } } }//package com.facebook.data.users
Section 118
//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{ super(); } public function get timezone():int{ return (this._2076227591timezone); } public function set education_history(value:Array):void{ var oldValue:Object = this._1391670531education_history; if (oldValue !== value){ this._1391670531education_history = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "education_history", oldValue, value)); }; } public function set has_added_app(value:Boolean):void{ var oldValue:Object = this._2002886397has_added_app; if (oldValue !== value){ this._2002886397has_added_app = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "has_added_app", oldValue, value)); }; } 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(value:String):void{ var oldValue:Object = this._1678075120pic_big_with_logo; if (oldValue !== value){ this._1678075120pic_big_with_logo = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic_big_with_logo", oldValue, value)); }; } public function set pic_small(value:String):void{ var oldValue:Object = this._1762076142pic_small; if (oldValue !== value){ this._1762076142pic_small = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic_small", oldValue, value)); }; } public function get music():String{ return (this._104263205music); } public function set notes_count(value:int):void{ var oldValue:Object = this._2082876945notes_count; if (oldValue !== value){ this._2082876945notes_count = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "notes_count", oldValue, value)); }; } public function set pic_with_logo(value:String):void{ var oldValue:Object = this._213573361pic_with_logo; if (oldValue !== value){ this._213573361pic_with_logo = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic_with_logo", oldValue, value)); }; } 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(value:String):void{ var oldValue:Object = this._104263205music; if (oldValue !== value){ this._104263205music = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "music", oldValue, value)); }; } 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(value:String):void{ var oldValue:Object = this._547435215religion; if (oldValue !== value){ this._547435215religion = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "religion", oldValue, value)); }; } public function get sex():String{ return (this._113766sex); } public function set significant_other_id(value:int):void{ var oldValue:Object = this._1332014026significant_other_id; if (oldValue !== value){ this._1332014026significant_other_id = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "significant_other_id", oldValue, value)); }; } 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(value:Array):void{ var oldValue:Object = this._103846849email_hashes; if (oldValue !== value){ this._103846849email_hashes = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "email_hashes", oldValue, value)); }; } public function get interests():String{ return (this._502611593interests); } public function get name():String{ return (this._3373707name); } public function set movies(value:String):void{ var oldValue:Object = this._1068259517movies; if (oldValue !== value){ this._1068259517movies = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "movies", oldValue, value)); }; } 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(value:String):void{ var oldValue:Object = this._115792uid; if (oldValue !== value){ this._115792uid = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "uid", oldValue, value)); }; } public function set hometown_location(value:FacebookLocation):void{ var oldValue:Object = this._2512963hometown_location; if (oldValue !== value){ this._2512963hometown_location = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "hometown_location", oldValue, value)); }; } public function set hs2_name(value:String):void{ var oldValue:Object = this._1369922371hs2_name; if (oldValue !== value){ this._1369922371hs2_name = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "hs2_name", oldValue, value)); }; } public function set wall_count(value:int):void{ var oldValue:Object = this._2013968806wall_count; if (oldValue !== value){ this._2013968806wall_count = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "wall_count", oldValue, value)); }; } public function get books():String{ return (this._93921962books); } public function get first_name():String{ return (this._160985414first_name); } public function set proxied_email(value:String):void{ var oldValue:Object = this._172288934proxied_email; if (oldValue !== value){ this._172288934proxied_email = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "proxied_email", oldValue, value)); }; } public function set locale(value:String):void{ var oldValue:Object = this._1097462182locale; if (oldValue !== value){ this._1097462182locale = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "locale", oldValue, value)); }; } public function set meeting_sex(value:Array):void{ var oldValue:Object = this._883056542meeting_sex; if (oldValue !== value){ this._883056542meeting_sex = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "meeting_sex", oldValue, value)); }; } 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(value:Array):void{ var oldValue:Object = this._1478774426work_history; if (oldValue !== value){ this._1478774426work_history = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "work_history", oldValue, value)); }; } public function get networkAffiliations():Array{ return (this._776713425networkAffiliations); } public function set sex(value:String):void{ var oldValue:Object = this._113766sex; if (oldValue !== value){ this._113766sex = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "sex", oldValue, value)); }; } public function set pic_square(value:String):void{ var oldValue:Object = this._1214494066pic_square; if (oldValue !== value){ this._1214494066pic_square = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic_square", oldValue, value)); }; } public function set hs_info(value:String):void{ var oldValue:Object = this._1194426210hs_info; if (oldValue !== value){ this._1194426210hs_info = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "hs_info", oldValue, value)); }; } public function set hs1_id(value:int):void{ var oldValue:Object = this._1209776268hs1_id; if (oldValue !== value){ this._1209776268hs1_id = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "hs1_id", oldValue, value)); }; } public function get profile_update_time():Date{ return (this._1413913325profile_update_time); } public function set quotes(value:String):void{ var oldValue:Object = this._948399753quotes; if (oldValue !== value){ this._948399753quotes = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "quotes", oldValue, value)); }; } public function get pic_square_with_logo():String{ return (this._1182884599pic_square_with_logo); } public function set birthday(value:String):void{ var oldValue:Object = this._1069376125birthday; if (oldValue !== value){ this._1069376125birthday = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "birthday", oldValue, value)); }; } public function get isLoggedInUser():Boolean{ return (this._1168278276isLoggedInUser); } public function get political():String{ return (this._210452739political); } public function set tv(value:String):void{ var oldValue:Object = this._3714tv; if (oldValue !== value){ this._3714tv = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "tv", oldValue, value)); }; } public function set affiliations(value:Array):void{ var oldValue:Object = this._1807033469affiliations; if (oldValue !== value){ this._1807033469affiliations = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "affiliations", oldValue, value)); }; } 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(value:String):void{ var oldValue:Object = this._502611593interests; if (oldValue !== value){ this._502611593interests = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "interests", oldValue, value)); }; } public function get has_added_app():Boolean{ return (this._2002886397has_added_app); } public function set name(value:String):void{ var oldValue:Object = this._3373707name; if (oldValue !== value){ this._3373707name = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "name", oldValue, value)); }; } public function get pic_big_with_logo():String{ return (this._1678075120pic_big_with_logo); } public function set pic(value:String):void{ var oldValue:Object = this._110986pic; if (oldValue !== value){ this._110986pic = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic", oldValue, value)); }; } public function set last_name(value:String):void{ var oldValue:Object = this._2013122196last_name; if (oldValue !== value){ this._2013122196last_name = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "last_name", oldValue, value)); }; } public function set grad_year(value:String):void{ var oldValue:Object = this._1524435058grad_year; if (oldValue !== value){ this._1524435058grad_year = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "grad_year", oldValue, value)); }; } public function set pic_small_with_logo(value:String):void{ var oldValue:Object = this._1458126743pic_small_with_logo; if (oldValue !== value){ this._1458126743pic_small_with_logo = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic_small_with_logo", oldValue, value)); }; } public function get religion():String{ return (this._547435215religion); } public function set is_app_user(value:Boolean):void{ var oldValue:Object = this._432843422is_app_user; if (oldValue !== value){ this._432843422is_app_user = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "is_app_user", oldValue, value)); }; } public function set about_me(value:String):void{ var oldValue:Object = this._1619363722about_me; if (oldValue !== value){ this._1619363722about_me = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "about_me", oldValue, value)); }; } public function set hs1_name(value:String):void{ var oldValue:Object = this._1341293220hs1_name; if (oldValue !== value){ this._1341293220hs1_name = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "hs1_name", oldValue, value)); }; } public function get movies():String{ return (this._1068259517movies); } public function get hs2_name():String{ return (this._1369922371hs2_name); } public function set books(value:String):void{ var oldValue:Object = this._93921962books; if (oldValue !== value){ this._93921962books = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "books", oldValue, value)); }; } 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(value:String):void{ var oldValue:Object = this._160985414first_name; if (oldValue !== value){ this._160985414first_name = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "first_name", oldValue, value)); }; } public function set current_location(value:FacebookLocation):void{ var oldValue:Object = this._1126443963current_location; if (oldValue !== value){ this._1126443963current_location = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "current_location", oldValue, value)); }; } 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(value:String):void{ var oldValue:Object = this._578385717pic_big; if (oldValue !== value){ this._578385717pic_big = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic_big", oldValue, value)); }; } public function set networkAffiliations(value:Array):void{ var oldValue:Object = this._776713425networkAffiliations; if (oldValue !== value){ this._776713425networkAffiliations = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "networkAffiliations", oldValue, value)); }; } public function set birthdayDate(value:Date):void{ var oldValue:Object = this._2059518005birthdayDate; if (oldValue !== value){ this._2059518005birthdayDate = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "birthdayDate", oldValue, value)); }; } public function set hs2_id(value:int):void{ var oldValue:Object = this._1209746477hs2_id; if (oldValue !== value){ this._1209746477hs2_id = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "hs2_id", oldValue, value)); }; } public function get about_me():String{ return (this._1619363722about_me); } public function set relationship_status(value:String):void{ var oldValue:Object = this._2025166887relationship_status; if (oldValue !== value){ this._2025166887relationship_status = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "relationship_status", oldValue, value)); }; } public function set meeting_for(value:Array):void{ var oldValue:Object = this._883068731meeting_for; if (oldValue !== value){ this._883068731meeting_for = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "meeting_for", oldValue, value)); }; } public function set profile_url(value:String):void{ var oldValue:Object = this._178029017profile_url; if (oldValue !== value){ this._178029017profile_url = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "profile_url", oldValue, value)); }; } 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(value:Date):void{ var oldValue:Object = this._1413913325profile_update_time; if (oldValue !== value){ this._1413913325profile_update_time = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "profile_update_time", oldValue, value)); }; } public function get profile_url():String{ return (this._178029017profile_url); } public function set activities(value:String):void{ var oldValue:Object = this._2048605165activities; if (oldValue !== value){ this._2048605165activities = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "activities", oldValue, value)); }; } public function set status(value:StatusData):void{ var oldValue:Object = this._892481550status; if (oldValue !== value){ this._892481550status = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "status", oldValue, value)); }; } public function get activities():String{ return (this._2048605165activities); } public function set pic_square_with_logo(value:String):void{ var oldValue:Object = this._1182884599pic_square_with_logo; if (oldValue !== value){ this._1182884599pic_square_with_logo = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic_square_with_logo", oldValue, value)); }; } public function set timezone(value:int):void{ var oldValue:Object = this._2076227591timezone; if (oldValue !== value){ this._2076227591timezone = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "timezone", oldValue, value)); }; } public function set isLoggedInUser(value:Boolean):void{ var oldValue:Object = this._1168278276isLoggedInUser; if (oldValue !== value){ this._1168278276isLoggedInUser = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "isLoggedInUser", oldValue, value)); }; } public function get status():StatusData{ return (this._892481550status); } public function set political(value:String):void{ var oldValue:Object = this._210452739political; if (oldValue !== value){ this._210452739political = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "political", oldValue, value)); }; } } }//package com.facebook.data.users
Section 119
//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(uid:int):FacebookUser{ return ((findItemByProperty("uid", uid) as FacebookUser)); } public function addUser(user:FacebookUser):void{ addItem(user); } } }//package com.facebook.data.users
Section 120
//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 GetInfoData(){ super(); } public function get userCollection():FacebookUserCollection{ return (this._986811191userCollection); } public function set userCollection(value:FacebookUserCollection):void{ var oldValue:Object = this._986811191userCollection; if (oldValue !== value){ this._986811191userCollection = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "userCollection", oldValue, value)); }; } } }//package com.facebook.data.users
Section 121
//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 GetStandardInfoData(){ super(); } public function get userCollection():UserCollection{ return (this._986811191userCollection); } public function set userCollection(value:UserCollection):void{ var oldValue:Object = this._986811191userCollection; if (oldValue !== value){ this._986811191userCollection = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "userCollection", oldValue, value)); }; } } }//package com.facebook.data.users
Section 122
//StatusData (com.facebook.data.users.StatusData) package com.facebook.data.users { public class StatusData { public var time:Date; public var message:String; public function StatusData(){ super(); } } }//package com.facebook.data.users
Section 123
//UserCollection (com.facebook.data.users.UserCollection) package com.facebook.data.users { import com.facebook.utils.*; public class UserCollection extends FacebookArrayCollection { public function UserCollection(source:Array=null){ super(null, UserData); } } }//package com.facebook.data.users
Section 124
//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(event:Event):Boolean{ return (_bindingEventDispatcher.dispatchEvent(event)); } public function set timezone(value:Number):void{ var oldValue:Object = this._2076227591timezone; if (oldValue !== value){ this._2076227591timezone = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "timezone", oldValue, value)); }; } public function hasEventListener(type:String):Boolean{ return (_bindingEventDispatcher.hasEventListener(type)); } public function get affiations():AffiliationCollection{ return (this._1700293062affiations); } public function removeEventListener(type:String, listener:Function, useCapture:Boolean=false):void{ _bindingEventDispatcher.removeEventListener(type, listener, useCapture); } public function get name():String{ return (this._3373707name); } public function set affiations(value:AffiliationCollection):void{ var oldValue:Object = this._1700293062affiations; if (oldValue !== value){ this._1700293062affiations = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "affiations", oldValue, value)); }; } public function addEventListener(type:String, listener:Function, useCapture:Boolean=false, priority:int=0, weakRef:Boolean=false):void{ _bindingEventDispatcher.addEventListener(type, listener, useCapture, priority, weakRef); } public function get uid():String{ return (this._115792uid); } public function get last_name():String{ return (this._2013122196last_name); } public function set name(value:String):void{ var oldValue:Object = this._3373707name; if (oldValue !== value){ this._3373707name = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "name", oldValue, value)); }; } public function willTrigger(type:String):Boolean{ return (_bindingEventDispatcher.willTrigger(type)); } public function set uid(value:String):void{ var oldValue:Object = this._115792uid; if (oldValue !== value){ this._115792uid = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "uid", oldValue, value)); }; } public function set last_name(value:String):void{ var oldValue:Object = this._2013122196last_name; if (oldValue !== value){ this._2013122196last_name = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "last_name", oldValue, value)); }; } public function set first_name(value:String):void{ var oldValue:Object = this._160985414first_name; if (oldValue !== value){ this._160985414first_name = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "first_name", oldValue, value)); }; } 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 125
//ArrayResultData (com.facebook.data.ArrayResultData) package com.facebook.data { import mx.events.*; public class ArrayResultData extends FacebookData { private var _682377174arrayResult:Array; public function ArrayResultData(){ super(); } public function set arrayResult(value:Array):void{ var oldValue:Object = this._682377174arrayResult; if (oldValue !== value){ this._682377174arrayResult = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "arrayResult", oldValue, value)); }; } public function get arrayResult():Array{ return (this._682377174arrayResult); } } }//package com.facebook.data
Section 126
//BooleanResultData (com.facebook.data.BooleanResultData) package com.facebook.data { import mx.events.*; public class BooleanResultData extends FacebookData { private var _111972721value:Boolean; public function BooleanResultData(){ super(); } public function get value():Boolean{ return (this._111972721value); } public function set value(value:Boolean):void{ var oldValue:Object = this._111972721value; if (oldValue !== value){ this._111972721value = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "value", oldValue, value)); }; } } }//package com.facebook.data
Section 127
//FacebookData (com.facebook.data.FacebookData) package com.facebook.data { import flash.events.*; public class FacebookData extends EventDispatcher { public var rawResult:String; public function FacebookData(){ super(); } } }//package com.facebook.data
Section 128
//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(event:Event):Boolean{ return (_bindingEventDispatcher.dispatchEvent(event)); } public function willTrigger(type:String):Boolean{ return (_bindingEventDispatcher.willTrigger(type)); } public function removeEventListener(type:String, listener:Function, useCapture:Boolean=false):void{ _bindingEventDispatcher.removeEventListener(type, listener, useCapture); } public function get name():String{ return (this._3373707name); } public function set concentrations(value:Array):void{ var oldValue:Object = this._157624742concentrations; if (oldValue !== value){ this._157624742concentrations = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "concentrations", oldValue, value)); }; } public function addEventListener(type:String, listener:Function, useCapture:Boolean=false, priority:int=0, weakRef:Boolean=false):void{ _bindingEventDispatcher.addEventListener(type, listener, useCapture, priority, weakRef); } public function get degree():String{ return (this._1335595316degree); } public function set name(value:String):void{ var oldValue:Object = this._3373707name; if (oldValue !== value){ this._3373707name = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "name", oldValue, value)); }; } public function set degree(value:String):void{ var oldValue:Object = this._1335595316degree; if (oldValue !== value){ this._1335595316degree = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "degree", oldValue, value)); }; } public function get concentrations():Array{ return (this._157624742concentrations); } public function hasEventListener(type:String):Boolean{ return (_bindingEventDispatcher.hasEventListener(type)); } public function set year(value:String):void{ var oldValue:Object = this._3704893year; if (oldValue !== value){ this._3704893year = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "year", oldValue, value)); }; } public function get year():String{ return (this._3704893year); } } }//package com.facebook.data
Section 129
//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(event:Event):Boolean{ return (_bindingEventDispatcher.dispatchEvent(event)); } public function willTrigger(type:String):Boolean{ return (_bindingEventDispatcher.willTrigger(type)); } public function addEventListener(type:String, listener:Function, useCapture:Boolean=false, priority:int=0, weakRef:Boolean=false):void{ _bindingEventDispatcher.addEventListener(type, listener, useCapture, priority, weakRef); } public function removeEventListener(type:String, listener:Function, useCapture:Boolean=false):void{ _bindingEventDispatcher.removeEventListener(type, listener, useCapture); } public function hasEventListener(type:String):Boolean{ return (_bindingEventDispatcher.hasEventListener(type)); } } }//package com.facebook.data
Section 130
//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(event:Event):Boolean{ return (_bindingEventDispatcher.dispatchEvent(event)); } public function willTrigger(type:String):Boolean{ return (_bindingEventDispatcher.willTrigger(type)); } public function addEventListener(type:String, listener:Function, useCapture:Boolean=false, priority:int=0, weakRef:Boolean=false):void{ _bindingEventDispatcher.addEventListener(type, listener, useCapture, priority, weakRef); } public function removeEventListener(type:String, listener:Function, useCapture:Boolean=false):void{ _bindingEventDispatcher.removeEventListener(type, listener, useCapture); } public function hasEventListener(type:String):Boolean{ return (_bindingEventDispatcher.hasEventListener(type)); } } }//package com.facebook.data
Section 131
//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 FacebookLocation(){ super(); } public function get zip():String{ return (this._120609zip); } public function set state(value:String):void{ var oldValue:Object = this._109757585state; if (oldValue !== value){ this._109757585state = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "state", oldValue, value)); }; } public function get street():String{ return (this._891990013street); } public function set city(value:String):void{ var oldValue:Object = this._3053931city; if (oldValue !== value){ this._3053931city = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "city", oldValue, value)); }; } public function set street(value:String):void{ var oldValue:Object = this._891990013street; if (oldValue !== value){ this._891990013street = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "street", oldValue, value)); }; } public function set zip(value:String):void{ var oldValue:Object = this._120609zip; if (oldValue !== value){ this._120609zip = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "zip", oldValue, value)); }; } 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(value:String):void{ var oldValue:Object = this._957831062country; if (oldValue !== value){ this._957831062country = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "country", oldValue, value)); }; } } }//package com.facebook.data
Section 132
//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(event:Event):Boolean{ return (_bindingEventDispatcher.dispatchEvent(event)); } public function get type():String{ return (this._3575610type); } public function hasEventListener(type:String):Boolean{ return (_bindingEventDispatcher.hasEventListener(type)); } public function willTrigger(type:String):Boolean{ return (_bindingEventDispatcher.willTrigger(type)); } public function get nid():int{ return (this._109065nid); } public function removeEventListener(type:String, listener:Function, useCapture:Boolean=false):void{ _bindingEventDispatcher.removeEventListener(type, listener, useCapture); } public function get name():String{ return (this._3373707name); } public function addEventListener(type:String, listener:Function, useCapture:Boolean=false, priority:int=0, weakRef:Boolean=false):void{ _bindingEventDispatcher.addEventListener(type, listener, useCapture, priority, weakRef); } public function set nid(value:int):void{ var oldValue:Object = this._109065nid; if (oldValue !== value){ this._109065nid = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "nid", oldValue, value)); }; } public function set name(value:String):void{ var oldValue:Object = this._3373707name; if (oldValue !== value){ this._3373707name = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "name", oldValue, value)); }; } public function set status(value:String):void{ var oldValue:Object = this._892481550status; if (oldValue !== value){ this._892481550status = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "status", oldValue, value)); }; } public function get status():String{ return (this._892481550status); } public function set type(value:String):void{ var oldValue:Object = this._3575610type; if (oldValue !== value){ this._3575610type = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "type", oldValue, value)); }; } public function set year(value:String):void{ var oldValue:Object = this._3704893year; if (oldValue !== value){ this._3704893year = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "year", oldValue, value)); }; } public function get year():String{ return (this._3704893year); } } }//package com.facebook.data
Section 133
//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(event:Event):Boolean{ return (_bindingEventDispatcher.dispatchEvent(event)); } public function removeEventListener(type:String, listener:Function, useCapture:Boolean=false):void{ _bindingEventDispatcher.removeEventListener(type, listener, useCapture); } public function get company_name():String{ return (this._1429880077company_name); } public function set end_date(value:Date):void{ var oldValue:Object = this._1725067410end_date; if (oldValue !== value){ this._1725067410end_date = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "end_date", oldValue, value)); }; } public function set position(value:String):void{ var oldValue:Object = this._747804969position; if (oldValue !== value){ this._747804969position = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "position", oldValue, value)); }; } public function addEventListener(type:String, listener:Function, useCapture:Boolean=false, priority:int=0, weakRef:Boolean=false):void{ _bindingEventDispatcher.addEventListener(type, listener, useCapture, priority, weakRef); } public function willTrigger(type:String):Boolean{ return (_bindingEventDispatcher.willTrigger(type)); } public function set start_date(value:Date):void{ var oldValue:Object = this._1573629589start_date; if (oldValue !== value){ this._1573629589start_date = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "start_date", oldValue, value)); }; } public function get end_date():Date{ return (this._1725067410end_date); } public function set company_name(value:String):void{ var oldValue:Object = this._1429880077company_name; if (oldValue !== value){ this._1429880077company_name = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "company_name", oldValue, value)); }; } public function get position():String{ return (this._747804969position); } public function set location(value:FacebookLocation):void{ var oldValue:Object = this._1901043637location; if (oldValue !== value){ this._1901043637location = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "location", oldValue, value)); }; } public function get start_date():Date{ return (this._1573629589start_date); } public function hasEventListener(type:String):Boolean{ return (_bindingEventDispatcher.hasEventListener(type)); } public function get location():FacebookLocation{ return (this._1901043637location); } public function set description(value:String):void{ var oldValue:Object = this._1724546052description; if (oldValue !== value){ this._1724546052description = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "description", oldValue, value)); }; } public function get description():String{ return (this._1724546052description); } } }//package com.facebook.data
Section 134
//JSONResultData (com.facebook.data.JSONResultData) package com.facebook.data { import mx.events.*; public class JSONResultData extends FacebookData { private var _934426595result:Object; public function JSONResultData(){ super(); } public function set result(value:Object):void{ var oldValue:Object = this._934426595result; if (oldValue !== value){ this._934426595result = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "result", oldValue, value)); }; } public function get result():Object{ return (this._934426595result); } } }//package com.facebook.data
Section 135
//NumberResultData (com.facebook.data.NumberResultData) package com.facebook.data { import mx.events.*; public class NumberResultData extends FacebookData { private var _111972721value:Number; public function NumberResultData(){ super(); } public function get value():Number{ return (this._111972721value); } public function set value(value:Number):void{ var oldValue:Object = this._111972721value; if (oldValue !== value){ this._111972721value = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "value", oldValue, value)); }; } } }//package com.facebook.data
Section 136
//StringResultData (com.facebook.data.StringResultData) package com.facebook.data { import mx.events.*; public class StringResultData extends FacebookData { private var _111972721value:String; public function StringResultData(){ super(); } public function get value():String{ return (this._111972721value); } public function set value(value:String):void{ var oldValue:Object = this._111972721value; if (oldValue !== value){ this._111972721value = value; this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "value", oldValue, value)); }; } } }//package com.facebook.data
Section 137
//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(){ super(); fb_namespace = new Namespace("http://api.facebook.com/1.0/"); } protected function parseSendEmail(xml:XML):ArrayResultData{ var arr:ArrayResultData = new ArrayResultData(); arr.arrayResult = FacebookXMLParserUtils.toArray(xml); return (arr); } protected function parseGetPhotos(xml:XML):GetPhotosData{ var photo:*; var photoData:PhotoData; var getPhotosData:GetPhotosData = new GetPhotosData(); var photoCollection:PhotoCollection = new PhotoCollection(); for each (photo in xml..fb_namespace::photo) { photoData = new PhotoData(); photoData.pid = photo.fb_namespace::pid; photoData.aid = photo.fb_namespace::aid; photoData.owner = photo.fb_namespace::owner; photoData.src = photo.fb_namespace::src; photoData.src_big = photo.fb_namespace::src_big; photoData.src_small = photo.fb_namespace::src_small; photoData.caption = photo.fb_namespace::caption; photoData.created = FacebookXMLParserUtils.toDate(photo.fb_namespace::created); photoCollection.addPhoto(photoData); }; getPhotosData.photoCollection = photoCollection; return (getPhotosData); } protected function parseGetNotifications(xml:XML):GetNotificationData{ var message:*; var poke:*; var share:*; var messageData:NotificationMessageData; var pokesData:NotificationPokeData; var shareData:NotificationShareData; var getNotificationData:GetNotificationData = new GetNotificationData(); var notificationCollection:NotificationCollection = new NotificationCollection(); for each (message in xml.fb_namespace::messages) { messageData = new NotificationMessageData(); messageData.unread = message.fb_namespace::unread; messageData.most_recent = message.fb_namespace::most_recent; notificationCollection.addItem(messageData); }; for each (poke in xml.fb_namespace::pokes) { pokesData = new NotificationPokeData(); pokesData.unread = poke.fb_namespace::unread; pokesData.most_recent = poke.fb_namespace::most_recent; notificationCollection.addItem(pokesData); }; for each (share in xml.fb_namespace::shares) { shareData = new NotificationShareData(); shareData.unread = share.fb_namespace::unread; shareData.most_recent = share.fb_namespace::most_recent; notificationCollection.addItem(shareData); }; getNotificationData.friendsRequests = FacebookXMLParserUtils.toUIDArray(xml.fb_namespace::friend_requests[0]); getNotificationData.group_invites = FacebookXMLParserUtils.toUIDArray(xml.fb_namespace::group_invites[0]); getNotificationData.event_invites = FacebookXMLParserUtils.toUIDArray(xml.fb_namespace::event_invites[0]); getNotificationData.notificationCollection = notificationCollection; return (getNotificationData); } public function createFacebookError(p_error:Object, p_result:String):FacebookError{ var error:FacebookError = new FacebookError(); error.rawResult = p_result; error.errorCode = FacebookErrorCodes.SERVER_ERROR; if ((p_error is Error)){ error.error = (p_error as Error); } else { error.errorEvent = (p_error as ErrorEvent); }; return (error); } protected function getAffiliation(xml:XML):AffiliationCollection{ var aff:*; var ad:AffiliationData; var arr:AffiliationCollection = new AffiliationCollection(); for each (aff in xml..fb_namespace::afflication) { ad = new AffiliationData(); ad.nid = aff.fb_namespace::nid; ad.name = aff.fb_namespace::name; ad.type = aff.fb_namespace::type; ad.status = aff.fb_namespace::status; ad.year = aff.fb_namespace::year; arr.addAffiliation(ad); }; return (arr); } protected function parseGetUserPreferences(xml:XML):GetUserPreferencesData{ var pref:*; var pd:PreferenceData; var getUserPreferenceData:GetUserPreferencesData = new GetUserPreferencesData(); var preferenceCollection:PreferenceCollection = new PreferenceCollection(); for each (pref in xml..fb_namespace::preference) { pd = new PreferenceData(); pd.pref_id = pref.fb_namespace::pref_id; pd.value = pref.fb_namespace::value; preferenceCollection.addItem(pd); }; getUserPreferenceData.perferenceCollection = preferenceCollection; return (getUserPreferenceData); } public function parse(data:String, methodName:String):FacebookData{ var result:FacebookData; var xml:XML = new XML(data); switch (methodName){ case "application.getPublicInfo": result = parseGetPublicInfo(xml); break; case "data.getCookies": result = parseGetCookies(xml); break; case "admin.getAllocation": result = parseGetAllocation(xml); break; case "admin.getAppProperties": result = parseGetAppProperties(xml); break; case "admin.getMetrics": result = parseGetMetrics(xml); break; case "auth.getSession": result = new GetSessionData(); (result as GetSessionData).expires = FacebookXMLParserUtils.toDate(xml.fb_namespace::expires); (result as GetSessionData).uid = FacebookXMLParserUtils.toStringValue(xml.fb_namespace::uid[0]); (result as GetSessionData).session_key = xml.fb_namespace::session_key.toString(); (result as GetSessionData).secret = String(xml.fb_namespace::secret); break; case "feed.getRegisteredTemplateBundles": result = parseGetRegisteredTemplateBundles(xml); break; case "friends.areFriends": result = parseAreFriends(xml); break; case "notes.get": result = parseGetNotes(xml); break; case "friends.get": result = parseGetFriends(xml); break; case "friends.getAppUsers": result = parseGetAppUsersData(xml); break; case "friends.getLists": result = parseGetLists(xml); break; case "groups.get": result = parseGetGroups(xml); break; case "data.getAssociationDefinitions": result = new FacebookData(); break; case "data.getAssociationDefinition": result = new FacebookData(); break; case "data.getObject": case "data.getObjects": result = new FacebookData(); break; case "groups.getMembers": result = parseGetGroupMembers(xml); break; case "users.getInfo": result = parseGetInfo(xml); break; case "data.createObject": case "data.setHashValue": case "connect.getUnconnectedFriendsCount": case "feed.registerTemplateBundle": result = new NumberResultData(); (result as NumberResultData).value = FacebookXMLParserUtils.toNumber(xml); break; case "notifications.get": result = parseGetNotifications(xml); break; case "feed.getRegisteredTemplateBundleByID": result = parseGetRegisteredTemplateBundleByID(xml); break; case "users.getStandardInfo": result = parseGetStandardInfo(xml); break; case "feed.getRegisteredTemplateBundles": result = parseGetRegisteredTemplateBundles(xml); break; case "data.getUserPreferences": result = parseGetUserPreferences(xml); 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": result = new BooleanResultData(); (result as BooleanResultData).value = FacebookXMLParserUtils.toBoolean(xml); break; case "feed.publishUserAction": result = new BooleanResultData(); (result as BooleanResultData).value = FacebookXMLParserUtils.toBoolean(xml.children()[0]); break; case "notifications.sendEmail": result = parseSendEmail(xml); break; case "data.getObjectTypes": result = parseGetObjectTypes(xml); break; case "users.getStandardInfo": result = parseGetStandardInfo(xml); break; case "data.getObjectType": result = parseGetObjectType(xml); break; case "events.get": result = parseGetEvent(xml); break; case "events.getMembers": result = parseGetMembers(xml); break; case "fql.query": result = new FacebookData(); break; case "photos.createAlbum": result = parseCreateAlbum(xml); break; case "photos.get": result = parseGetPhotos(xml); break; case "photos.getTags": result = parseGetTags(xml); break; case "photos.getAlbums": result = parseGetAlbums(xml); break; case "photos.upload": result = parseFacebookPhoto(xml); break; case "pages.getInfo": result = parsePageGetInfo(xml); break; case "batch.run": result = parseBatchRun(xml); break; case "fbml.getCustomTags": result = parseGetCustomTags(xml); break; case "connect.unregisterUsers": case "connect.registerUsers": result = new ArrayResultData(); (result as ArrayResultData).arrayResult = FacebookXMLParserUtils.toArray(xml); break; case "status.get": result = parseGetStatus(xml); break; case "stream.get": result = FacebookStreamXMLParser.createStream(xml, fb_namespace); break; case "stream.getComments": result = FacebookStreamXMLParser.createGetCommentsData(xml, fb_namespace); break; case "stream.getFilters": result = FacebookStreamXMLParser.createStreamFilterCollection(xml, 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: result = new StringResultData(); (result as StringResultData).value = FacebookXMLParserUtils.toStringValue(xml); break; }; result.rawResult = data; return (result); } protected function parseGetStandardInfo(xml:XML):GetStandardInfoData{ var user:*; var userData:UserData; var getStandardData:GetStandardInfoData = new GetStandardInfoData(); var userCollection:UserCollection = new UserCollection(); for each (user in xml..fb_namespace::user) { userData = new UserData(); userData.uid = user.fb_namespace::uid; userData.affiations = getAffiliation(user.fb_namespace::affiliations); userData.first_name = user.fb_namespace::first_name; userData.last_name = user.fb_namespace::last_name; userData.name = user.fb_namespace::name; userData.timezone = user.fb_namespace::timezone; userCollection.addItem(userData); }; getStandardData.userCollection = userCollection; return (getStandardData); } protected function parseGetAppProperties(xml:XML):GetAppPropertiesData{ var data:GetAppPropertiesData = new GetAppPropertiesData(); data.appProperties = JSON.decode(xml.toString()); return (data); } protected function parseGetRegisteredTemplateBundles(xml:XML):GetRegisteredTemplateBundleData{ var tempBundle:*; var bundleData:GetRegisteredTemplateBundleData = new GetRegisteredTemplateBundleData(); var bundleCollection:TemplateBundleCollection = new TemplateBundleCollection(); var templateCollection:TemplateCollection = new TemplateCollection(); for each (tempBundle in xml..fb_namespace::template_bundle) { getTemplate(tempBundle.fb_namespace::one_line_story_template, templateCollection); getTemplate(tempBundle.fb_namespace::short_story_templates, templateCollection); getTemplate(tempBundle.fb_namespace::full_story_template, templateCollection); templateCollection.template_bundle_id = tempBundle.fb_namespace::template_bundle_id; templateCollection.time_created = FacebookXMLParserUtils.toDate(tempBundle.fb_namespace::time_created); }; bundleData.bundleCollection = templateCollection; return (bundleData); } protected function parseGetRegisteredTemplateBundleByID(xml:XML):GetRegisteredTemplateBundleByIDData{ var getTemplateData:GetRegisteredTemplateBundleByIDData = new GetRegisteredTemplateBundleByIDData(); var templateCollection:TemplateCollection = new TemplateCollection(); getTemplate(xml.fb_namespace::one_line_story_template, templateCollection); getTemplate(xml.fb_namespace::short_story_templates, templateCollection); getTemplate(xml.fb_namespace::full_story_template, templateCollection); templateCollection.template_bundle_id = xml.fb_namespace::template_bundle_id; templateCollection.time_created = FacebookXMLParserUtils.toDate(xml.fb_namespace::time_created); getTemplateData.templateCollection = templateCollection; return (getTemplateData); } protected function responseNodeNameToMethodName(name:String):String{ var peices:Array = name.split("_"); peices.pop(); return (peices.join(".")); } protected function parseGetObjectTypes(xml:XML):GetObjectTypesData{ var info:*; var objectTypeData:ObjectTypesData; var getObjectTypesData:GetObjectTypesData = new GetObjectTypesData(); var objectTypeCollection:ObjectTypesCollection = new ObjectTypesCollection(); for each (info in xml..fb_namespace::object_type_info) { objectTypeData = new ObjectTypesData(); objectTypeData.name = info.fb_namespace::name; objectTypeData.object_class = info.fb_namespace::object_class; objectTypeCollection.addItem(objectTypeData); }; getObjectTypesData.objectTypeCollection = objectTypeCollection; return (getObjectTypesData); } protected function parseFacebookPhoto(xml:XML):FacebookPhoto{ var fbPhoto:FacebookPhoto = new FacebookPhoto(); fbPhoto.pid = FacebookXMLParserUtils.toStringValue(xml.fb_namespace::pid[0]); fbPhoto.aid = FacebookXMLParserUtils.toStringValue(xml.fb_namespace::aid[0]); fbPhoto.owner = FacebookXMLParserUtils.toNumber(xml.fb_namespace::owner[0]); fbPhoto.src = FacebookXMLParserUtils.toStringValue(xml.fb_namespace::src[0]); fbPhoto.src_big = FacebookXMLParserUtils.toStringValue(xml.fb_namespace::src_big[0]); fbPhoto.src_small = FacebookXMLParserUtils.toStringValue(xml.fb_namespace::src_small[0]); fbPhoto.link = FacebookXMLParserUtils.toStringValue(xml.fb_namespace::link[0]); fbPhoto.caption = FacebookXMLParserUtils.toStringValue(xml.fb_namespace::caption[0]); return (fbPhoto); } protected function parseGetObjectType(xml:XML):GetObjectTypeData{ var getObjectTypeData:GetObjectTypeData = new GetObjectTypeData(); getObjectTypeData.name = xml.fb_namespace::name; getObjectTypeData.data_type = xml.fb_namespace::data_type; getObjectTypeData.index_type = xml.fb_namespace::index_type; return (getObjectTypeData); } protected function createTagObject(xml:XML, propList:Array){ var tagData:AbstractTagData; var value:Object; var l:Number = xml.children().length(); var type:String = xml.children()[0].toLowerCase(); if (type == "leaf"){ tagData = new LeafTagData(null, null, null, null, null); (tagData as LeafTagData).fbml = xml.children()[9]; } else { tagData = new ContainerTagData(null, null, null, null, null, null, null); (tagData as ContainerTagData).open_tag_fbml = xml.children()[2]; (tagData as ContainerTagData).close_tag_fbml = xml.children()[4]; }; var i:Number = 0; while (i < l) { value = xml.children()[i]; switch (propList[i]){ case "name": case "type": case "description": case "is_public": case "header_fbml": case "footer_fbml": tagData[propList[i]] = value.text(); break; case "attributes": if ((value.children() is XMLList)){ if (value.children().length() == 0){ tagData[propList[i]] = null; }; }; break; }; i++; }; return (tagData); } protected function parseGetNotes(xml:XML):GetNotesData{ var note:*; var noteData:NoteData; var getNotesData:GetNotesData = new GetNotesData(); var notesCollection:NotesCollection = new NotesCollection(); for each (note in xml..fb_namespace::note) { noteData = new NoteData(); noteData.note_id = note.fb_namespace::note_id; noteData.title = note.fb_namespace::title; noteData.content = note.fb_namespace::content; noteData.created_time = FacebookXMLParserUtils.toDate(note.fb_namespace::created_time); noteData.updated_time = FacebookXMLParserUtils.toDate(note.fb_namespace::updated_time); noteData.uid = note.fb_namespace::uid; notesCollection.addItem(noteData); }; getNotesData.notesCollection = notesCollection; return (getNotesData); } protected function parseGetMetrics(xml:XML):GetMetricsData{ var metrix:*; var metrixData:MetricsData; var getMetricsData:GetMetricsData = new GetMetricsData(); var metrixCollection:MetricsDataCollection = new MetricsDataCollection(); for each (metrix in xml..fb_namespace::metrics) { metrixData = new MetricsData(); metrixData.end_time = FacebookXMLParserUtils.toDate(metrix.fb_namespace::end_time); metrixData.active_users = metrix.fb_namespace::active_users; metrixData.canvas_page_views = metrix.fb_namespace::canvas_page_views; metrixCollection.addItem(metrixData); }; getMetricsData.metricsCollection = metrixCollection; return (getMetricsData); } protected function parsePageGetInfo(xml:XML):GetPageInfoData{ var page:*; var pageInfoData:PageInfoData; var getPageInfoData:GetPageInfoData = new GetPageInfoData(); var pageInfoCollection:PageInfoCollection = new PageInfoCollection(); for each (page in xml.fb_namespace::page) { pageInfoData = new PageInfoData(); pageInfoData.page_id = page.fb_namespace::page_id; pageInfoData.name = page.fb_namespace::name; pageInfoData.pic_small = page.fb_namespace::pic_small; pageInfoData.pic_big = page.fb_namespace::pic_big; pageInfoData.pic_square = page.fb_namespace::pic_square; pageInfoData.pic_large = page.fb_namespace::pic_large; pageInfoData.type = page.fb_namespace::type; pageInfoData.website = page.fb_namespace::website; pageInfoData.location = FacebookXMLParserUtils.createLocation(page.fb_namespace::location[0], fb_namespace); pageInfoData.hours = page.fb_namespace::hours; pageInfoData.band_members = page.fb_namespace::band_members; pageInfoData.bio = page.fb_namespace::bio; pageInfoData.hometown = page.fb_namespace::hometown; pageInfoData.genre = FacebookXMLParserUtils.toStringValue(page.fb_namespace::genre[0]); pageInfoData.record_label = page.fb_namespace::record_label; pageInfoData.influences = page.fb_namespace::influences; pageInfoData.has_added_app = FacebookXMLParserUtils.toBoolean(page.fb_namespace::has_added_app[0]); pageInfoData.founded = page.fb_namespace::founded; pageInfoData.company_overview = page.fb_namespace::company_overview; pageInfoData.mission = page.fb_namespace::mission; pageInfoData.products = page.fb_namespace::products; pageInfoData.release_date = page.fb_namespace::release_date; pageInfoData.starring = page.fb_namespace::starring; pageInfoData.written_by = page.fb_namespace::written_by; pageInfoData.directed_by = page.fb_namespace::directed_by; pageInfoData.produced_by = page.fb_namespace::produced_by; pageInfoData.studio = page.fb_namespace::studio; pageInfoData.awards = page.fb_namespace::awards; pageInfoData.plot_outline = page.fb_namespace::plot_outline; pageInfoData.network = page.fb_namespace::network; pageInfoData.season = page.fb_namespace::season; pageInfoData.schedule = page.fb_namespace::schedule; pageInfoCollection.addPageInfo(pageInfoData); }; getPageInfoData.pageInfoCollection = pageInfoCollection; return (getPageInfoData); } protected function parseGetTags(xml:XML):GetTagsData{ var photoTag:*; var tagData:TagData; var getTagsData:GetTagsData = new GetTagsData(); var photoTagCollection:PhotoTagCollection = new PhotoTagCollection(); for each (photoTag in xml..fb_namespace::photo_tag) { tagData = new TagData(); tagData.pid = photoTag.fb_namespace::pid; tagData.subject = photoTag.fb_namespace::subject; tagData.xcoord = photoTag.fb_namespace::xcoord; tagData.ycoord = photoTag.fb_namespace::ycoord; tagData.created = FacebookXMLParserUtils.toDate(photoTag.fb_namespace::created); photoTagCollection.addPhotoTag(tagData); }; getTagsData.photoTagsCollection = photoTagCollection; return (getTagsData); } protected function parseGetGroupMembers(xml:XML):GetMemberData{ var getMembersData:GetMemberData = new GetMemberData(); getMembersData.members = FacebookXMLParserUtils.toUIDArray(xml.fb_namespace::members[0]); getMembersData.admins = FacebookXMLParserUtils.toUIDArray(xml.fb_namespace::admins[0]); getMembersData.officers = FacebookXMLParserUtils.toUIDArray(xml.fb_namespace::officers[0]); getMembersData.notReplied = FacebookXMLParserUtils.toUIDArray(xml.fb_namespace::not_replied[0]); return (getMembersData); } protected function parseGetGroups(xml:XML):GetGroupData{ var group:*; var groupDataVO:GroupData; var getGroupData:GetGroupData = new GetGroupData(); var groupCollection:GroupCollection = new GroupCollection(); for each (group in xml..fb_namespace::group) { groupDataVO = new GroupData(); groupDataVO.gid = group.fb_namespace::gid; groupDataVO.name = group.fb_namespace::name; groupDataVO.nid = group.fb_namespace::nid; groupDataVO.description = group.fb_namespace::description; groupDataVO.group_type = group.fb_namespace::group_type; groupDataVO.group_subtype = group.fb_namespace::group_subtype; groupDataVO.recent_news = group.fb_namespace::recent_news; groupDataVO.pic = group.fb_namespace::pic; groupDataVO.pic_big = group.fb_namespace::pic_big; groupDataVO.pic_small = group.fb_namespace::pic_small; groupDataVO.creator = group.fb_namespace::creator; groupDataVO.update_time = FacebookXMLParserUtils.toDate(group.fb_namespace::update_time); groupDataVO.office = group.fb_namespace::office; groupDataVO.website = group.fb_namespace::website; groupDataVO.venue = FacebookXMLParserUtils.createLocation(group.fb_namespace::venue[0], fb_namespace); groupDataVO.privacy = group.fb_namespace::privacy; groupCollection.addGroup(groupDataVO); }; getGroupData.groups = groupCollection; return (getGroupData); } protected function parseCreateAlbum(xml:XML):GetCreateAlbumData{ var getCreateAlbum:GetCreateAlbumData = new GetCreateAlbumData(); var ad:AlbumData = new AlbumData(); ad.aid = xml.fb_namespace::aid; ad.cover_pid = xml.fb_namespace::cover_pid; ad.owner = xml.fb_namespace::owner; ad.name = xml.fb_namespace::name; ad.created = FacebookXMLParserUtils.toDate(xml.fb_namespace::created); ad.modified = FacebookXMLParserUtils.toDate(xml.fb_namespace::modified); ad.description = xml.fb_namespace::description; ad.location = xml.fb_namespace::location; ad.link = xml.fb_namespace::link; ad.size = xml.fb_namespace::size; ad.visible = xml.fb_namespace::visible; getCreateAlbum.albumData = ad; return (getCreateAlbum); } protected function parseGetAllocation(result:XML):GetAllocationData{ var data:GetAllocationData = new GetAllocationData(); data.allocationLimit = Number(result.toString()); return (data); } protected function parseGetCookies(xml:XML):GetCookiesData{ var getCookiesData:GetCookiesData = new GetCookiesData(); getCookiesData.uid = xml.fb_namespace::uid; getCookiesData.name = xml.fb_namespace::name; getCookiesData.value = xml.fb_namespace::value; getCookiesData.expires = xml.fb_namespace::expires; getCookiesData.path = xml.fb_namespace::path; return (getCookiesData); } protected function parseGetCustomTags(xml:XML):GetCustomTagsData{ var tag:*; var propList:Array = ["type", "name", "open_tag_fbml", "description", "close_tag_fbml", "is_public", "attributes", "header_fbml", "footer_fbml", "fbml"]; var getCustomTagsData:GetCustomTagsData = new GetCustomTagsData(); var tagCollection:TagCollection = new TagCollection(); for each (tag in xml..fb_namespace::custom_tag) { tagCollection.addItem(createTagObject(tag, propList)); }; getCustomTagsData.tagCollection = tagCollection; return (getCustomTagsData); } protected function parseGetAlbums(xml:XML):GetAlbumsData{ var getAlbumsData:GetAlbumsData = new GetAlbumsData(); getAlbumsData.albumCollection = FacebookXMLParserUtils.createAlbumCollection(xml, fb_namespace); return (getAlbumsData); } protected function parseGetInfo(xml:XML):GetInfoData{ var user:FacebookUser; var collection:FacebookUserCollection = new FacebookUserCollection(); var users:XMLList = xml..fb_namespace::user; var l:uint = users.length(); var i:uint; while (i < l) { user = FacebookUserXMLParser.createFacebookUser(users[i], fb_namespace); collection.addItem(user); i++; }; var data:GetInfoData = new GetInfoData(); data.userCollection = collection; return (data); } protected function parseGetLists(xml:XML):GetListsData{ var list:*; var listData:ListsData; var getListData:GetListsData = new GetListsData(); var friendsLists:Array = []; for each (list in xml..fb_namespace::friendlist) { listData = new ListsData(); listData.flid = list.fb_namespace::flid; listData.name = list.fb_namespace::name; friendsLists.push(listData); }; getListData.lists = friendsLists; return (getListData); } protected function parseGetAppUsersData(xml:XML):GetAppUserData{ var uids:Array = FacebookXMLParserUtils.toUIDArray(xml); var appUserData:GetAppUserData = new GetAppUserData(); appUserData.uids = uids; return (appUserData); } protected function parseGetStatus(xml:XML):GetStatusData{ var nodes:XMLList; var stausNode:Status; var gsd:GetStatusData = new GetStatusData(); var status:Array = []; var children:XMLList = xml.children(); var l:uint = children.length(); var i:uint; while (i < l) { nodes = children[i].children(); stausNode = new Status(); stausNode.uid = FacebookXMLParserUtils.toStringValue(nodes[0]); stausNode.status_id = FacebookXMLParserUtils.toStringValue(nodes[1]); stausNode.time = FacebookXMLParserUtils.toDate(nodes[2]); stausNode.source = FacebookXMLParserUtils.toStringValue(nodes[3]); stausNode.message = FacebookXMLParserUtils.toStringValue(nodes[4]); status.push(stausNode); i++; }; gsd.status = status; return (gsd); } protected function parseGetMembers(xml:XML):GetMembersData{ var getMembersData:GetMembersData = new GetMembersData(); getMembersData.attending = FacebookXMLParserUtils.toUIDArray(xml..fb_namespace::attending[0]); getMembersData.unsure = FacebookXMLParserUtils.toUIDArray(xml..fb_namespace::unsure[0]); getMembersData.declined = FacebookXMLParserUtils.toUIDArray(xml..fb_namespace::declined[0]); getMembersData.not_replied = FacebookXMLParserUtils.toUIDArray(xml..fb_namespace::not_replied[0]); return (getMembersData); } protected function parseGetEvent(xml:XML):GetEventsData{ var event:*; var eventData:EventData; var getEventsData:GetEventsData = new GetEventsData(); var eventCollection:EventCollection = new EventCollection(); for each (event in xml..fb_namespace::event) { eventData = new EventData(); eventData.eid = event.fb_namespace::eid; eventData.name = event.fb_namespace::name; eventData.tagline = event.fb_namespace::tagline; eventData.nid = event.fb_namespace::nid; eventData.pic = event.fb_namespace::pic; eventData.pic_big = event.fb_namespace::pic_big; eventData.pic_small = event.fb_namespace::pic_small; eventData.host = event.fb_namespace::host; eventData.description = event.fb_namespace::description; eventData.event_type = event.fb_namespace::event_type; eventData.event_subtype = event.fb_namespace::event_subtype; eventData.start_time = FacebookXMLParserUtils.toDate(event.fb_namespace::start_time); eventData.end_time = FacebookXMLParserUtils.toDate(event.fb_namespace::end_time); eventData.creator = event.fb_namespace::end_time; eventData.update_time = FacebookXMLParserUtils.toDate(event.fb_namespace::update_time); eventData.location = event.fb_namespace::location; eventData.venue = FacebookXMLParserUtils.createLocation(event.fb_namespace::venue[0], fb_namespace); eventCollection.addItem(eventData); }; getEventsData.eventCollection = eventCollection; return (getEventsData); } protected function parseGetFriends(xml:XML):GetFriendsData{ var friend:*; var fd:FacebookUser; var getFriendsData:GetFriendsData = new GetFriendsData(); var myFriends:FacebookUserCollection = new FacebookUserCollection(); for each (friend in xml..fb_namespace::uid) { fd = new FacebookUser(); fd.uid = friend; myFriends.addItem(fd); }; getFriendsData.friends = myFriends; return (getFriendsData); } protected function parseGetPublicInfo(xml:XML):GetPublicInfoData{ var getPageInfoData:GetPublicInfoData = new GetPublicInfoData(); getPageInfoData.app_id = xml.fb_namespace::app_id; getPageInfoData.api_key = xml.fb_namespace::api_key; getPageInfoData.canvas_name = xml.fb_namespace::canvas_name; getPageInfoData.display_name = xml.fb_namespace::display_name; getPageInfoData.icon_url = xml.fb_namespace::icon_url; getPageInfoData.logo_url = xml.fb_namespace::logo_url; getPageInfoData.developers = xml.fb_namespace::developers; getPageInfoData.company_name = xml.fb_namespace::company_name; getPageInfoData.developers = xml.fb_namespace::developers; getPageInfoData.daily_active_users = xml.fb_namespace::daily_active_users; getPageInfoData.weekly_active_users = xml.fb_namespace::weekly_active_users; getPageInfoData.monthly_active_users = xml.fb_namespace::monthly_active_users; return (getPageInfoData); } protected function parseAreFriends(xml:XML):AreFriendsData{ var friend:*; var friendData:FriendsData; var areFriendsData:AreFriendsData = new AreFriendsData(); var friendsCollection:FriendsCollection = new FriendsCollection(); for each (friend in xml..fb_namespace::friend_info) { friendData = new FriendsData(); friendData.uid1 = friend.fb_namespace::uid1; friendData.uid2 = friend.fb_namespace::uid2; friendData.are_friends = FacebookXMLParserUtils.toBoolean(friend.fb_namespace::are_friends); friendsCollection.addItem(friendData); }; areFriendsData.friendsCollection = friendsCollection; return (areFriendsData); } public function validateFacebookResponce(result:String):FacebookError{ var xml:XML; var xmlError:Error; var result = result; var error:FacebookError; var hasXMLError:Boolean; xml = new XML(result); //unresolved jump var _slot1 = e; xmlError = _slot1; 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(xml:XML):FacebookData{ var resultString:String; var resultXML:XML; var error:FacebookError; var methodName:String; var data:FacebookData; var results:XMLList = xml..fb_namespace::batch_run_response_elt; var l:uint = results.length(); var parsedResults:Array = []; var i:uint; while (i < l) { resultString = results[i].toString(); resultXML = new XML(resultString); error = validateFacebookResponce(resultString); if (error === null){ methodName = responseNodeNameToMethodName(resultXML.localName().toString()); data = parse(resultString, methodName); parsedResults.push(data); } else { parsedResults.push(error); }; i++; }; var br:BatchResult = new BatchResult(); br.results = parsedResults; return (br); } protected function getTemplate(xml:XMLList, templateCollection:TemplateCollection):void{ var temp:*; var tmpData:TemplateData; for each (temp in xml) { tmpData = new TemplateData(); tmpData.type = temp.localName(); tmpData.template_body = temp.fb_namespace::template_body; tmpData.template_title = temp.fb_namespace::template_title; templateCollection.addTemplateData(tmpData); }; } } }//package com.facebook.data
Section 138
//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(call:FacebookCall, session:DesktopSession){ super(call, session); } override protected function addOptionalArguments():void{ } } }//package com.facebook.delegates
Section 139
//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(:FacebookCall):void; function set session(:IFacebookSession):void; function get call():FacebookCall; } }//package com.facebook.delegates
Section 140
//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(call:FacebookCall, session:JSSession){ super(); this.call = call; this.session = session; execute(); } public function set call(newVal:FacebookCall):void{ this._call = newVal; } protected function onReceiveError(event:ErrorEvent):void{ var fbError:FacebookError = new FacebookError(); fbError.errorEvent = event; var _local3 = call; _local3.facebook_internal::handleError(fbError); } public function get call():FacebookCall{ return (_call); } protected function postBridgeAsyncReply(result:Object, exception:Object, exCallId:uint):void{ var data:JSONResultData; var error:FacebookError; var call:FacebookCall = externalInterfaceCalls[exCallId]; if (result){ data = new JSONResultData(); data.result = result; var _local7 = call; _local7.facebook_internal::handleResult(data); } else { error = new FacebookError(); error.rawResult = JSON.encode(exception); _local7 = call; _local7.facebook_internal::handleError(error); }; delete externalInterfaceCalls[exCallId]; } protected function buildCall():String{ var n:String; var jsCall:String; var bridgeCallFunctionName:String = ("bridgeFacebookCall_" + externalInterfaceCallId); RequestHelper.formatRequest(call); var objectArgs:Object = {}; for (n in call.args) { objectArgs[n] = call.args[n]; }; jsCall = (((((((((((((((("function " + bridgeCallFunctionName) + "() { ") + "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 (jsCall); } protected function execute():void{ var o:Object; var jsCall:String; var a:Array = []; for each (o in call.args) { a.push(o); }; var _local4 = ++externalInterfaceCallId; externalInterfaceCalls[_local4] = call; jsCall = buildCall(); ExternalInterface.addCallback("bridgeFacebookReply", postBridgeAsyncReply); ExternalInterface.call(jsCall); } protected function onReceiveStatus(event:StatusEvent):void{ var _local2:FacebookError; switch ((event.level == "error")){ case "error": _local2 = new FacebookError(); _local2.rawResult = event.level; var _local3 = call; _local3.facebook_internal::handleError(_local2); break; case "warning": case "status": break; }; } public function set session(newVal:IFacebookSession):void{ this._session = (newVal as JSSession); } public function get session():IFacebookSession{ return (_session); } public function close():void{ } } }//package com.facebook.delegates
Section 141
//RequestHelper (com.facebook.delegates.RequestHelper) package com.facebook.delegates { import flash.net.*; import flash.display.*; 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 function RequestHelper(){ super(); } public static function formatRequest(call:FacebookCall):void{ var session:IFacebookSession = call.session; call.setRequestArgument("v", session.api_version); if (session.api_key != null){ call.setRequestArgument("api_key", session.api_key); }; if (((!((session.session_key == null))) && (call.useSession))){ call.setRequestArgument("session_key", session.session_key); }; var call_id:String = (new Date().time.toString() + callID++.toString()); call.setRequestArgument("call_id", call_id); call.setRequestArgument("method", call.method); call.setRequestArgument("sig", formatSig(call)); } public static function formatSig(call:FacebookCall):String{ var p:String; var s:String; var arg:*; var session:IFacebookSession = call.session; var a:Array = []; for (p in call.args) { arg = call.args[p]; if (((((((((!((p === "sig"))) && (!((arg is ByteArray))))) && (!((arg is FileReference))))) && (!((arg is BitmapData))))) && (!((arg is Bitmap))))){ a.push(((p + "=") + arg.toString())); }; }; a.sort(); s = a.join(""); if (session.secret != null){ s = (s + session.secret); }; return (MD5.hash(s)); } } }//package com.facebook.delegates
Section 142
//WebDelegate (com.facebook.delegates.WebDelegate) package com.facebook.delegates { import com.facebook.events.*; import flash.events.*; import flash.net.*; import com.facebook.data.*; import com.facebook.errors.*; 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(call:FacebookCall, session:WebSession){ super(); this.call = call; this.session = session; parser = new XMLDataParser(); connectTimer = new Timer(call.connectTimeout, 1); connectTimer.addEventListener(TimerEvent.TIMER_COMPLETE, onConnectTimeout, false, 0, true); loadTimer = new Timer(call.loadTimeout, 1); loadTimer.addEventListener(TimerEvent.TIMER_COMPLETE, onLoadTimeOut, false, 0, true); execute(); } public function set call(newVal:FacebookCall):void{ _call = newVal; } 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(p_event:Event):void{ connectTimer.stop(); loadTimer.start(); } protected function addOptionalArguments():void{ call.setRequestArgument("ss", true); } protected function onConnectTimeout(p_event:TimerEvent):void{ var fbError:FacebookError = new FacebookError(); fbError.errorCode = FacebookErrorCodes.SERVER_ERROR; fbError.reason = FacebookErrorReason.CONNECT_TIMEOUT; _call.handleError(fbError); dispatchEvent(new FacebookEvent(FacebookEvent.COMPLETE, false, false, false, null, fbError)); 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(p_event:Event):void{ handleResult((p_event.target.data as String)); } protected function onLoadTimeOut(p_event:TimerEvent):void{ connectTimer.stop(); close(); var fbError:FacebookError = new FacebookError(); fbError.errorCode = FacebookErrorCodes.SERVER_ERROR; fbError.reason = FacebookErrorReason.LOAD_TIMEOUT; _call.handleError(fbError); dispatchEvent(new FacebookEvent(FacebookEvent.COMPLETE, false, false, false, null, fbError)); } 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 req:URLRequest = new URLRequest(_session.rest_url); req.contentType = "application/x-www-form-urlencoded"; req.method = URLRequestMethod.POST; req.data = call.args; loader.dataFormat = URLLoaderDataFormat.TEXT; loader.load(req); } protected function onError(p_event:ErrorEvent):void{ clean(); var fbError:FacebookError = parser.createFacebookError(p_event, loader.data); call.handleError(fbError); dispatchEvent(new FacebookEvent(FacebookEvent.COMPLETE, false, false, false, null, fbError)); } protected function handleResult(result:String):void{ var fbData:FacebookData; clean(); var error:FacebookError = parser.validateFacebookResponce(result); if (error == null){ fbData = parser.parse(result, call.method); call.handleResult(fbData); } else { call.handleError(error); }; } public function close():void{ loader.close(); //unresolved jump var _slot1 = e; connectTimer.stop(); loadTimer.stop(); } protected function onHTTPStatus(p_event:HTTPStatusEvent):void{ } public function set session(newVal:IFacebookSession):void{ _session = (newVal as WebSession); } } }//package com.facebook.delegates
Section 143
//WebImageUploadDelegate (com.facebook.delegates.WebImageUploadDelegate) package com.facebook.delegates { import flash.events.*; import flash.net.*; import com.facebook.errors.*; import flash.display.*; 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(call:FacebookCall, session:WebSession){ ba = new ByteArray(); super(call, session); } protected function uploadByteArray(bytes:ByteArray):void{ var argIndexName:String; var ext:String; var postReq:PostRequest = new PostRequest(); for (argIndexName in call.args) { if (argIndexName != "data"){ postReq.writePostData(argIndexName, call.args[argIndexName]); }; }; ext = (((call as UploadPhoto).uploadType == UploadPhotoTypes.JPEG)) ? "jpeg" : "png"; postReq.writeFileData(((("fn" + call.args["call_id"]) + ".") + ext), bytes); postReq.close(); var urlreq:URLRequest = new URLRequest(); urlreq.method = URLRequestMethod.POST; urlreq.contentType = ("multipart/form-data; boundary=" + postReq.boundary); urlreq.data = postReq.getPostData(); urlreq.url = _session.rest_url; createURLLoader(); loader.dataFormat = URLLoaderDataFormat.BINARY; loader.load(urlreq); connectTimer.start(); } protected function onImageLoaded(p_event:Event):void{ fileRef = (call.args.data as FileReference); uploadByteArray(fileRef["data"]); } override protected function onDataComplete(p_event:Event):void{ var error:FacebookError; var result:String; var ba:ByteArray = (p_event.target.data as ByteArray); if (ba == null){ error = new FacebookError(); call.handleError(error); clean(); } else { result = ba.readUTFBytes(ba.length); ba.length = 0; ba = null; handleResult(result); }; } override protected function sendRequest():void{ var data:ByteArray; var _local4:JPGEncoder; var urlReq:URLRequest = new URLRequest(_session.rest_url); var imageData:Object = call.args.data; if ((((PlayerUtils.majorVersion == 9)) && ((imageData is FileReference)))){ throw (new TypeError("Uploading FileReference with Player 9 is unsupported. Use either an BitmapData or ByteArray.")); }; if ((imageData is Bitmap)){ imageData = (imageData as Bitmap).bitmapData; }; if ((((PlayerUtils.majorVersion == 10)) && ((imageData is FileReference)))){ data = (imageData as FileReference)["load"](); fileRef = (imageData as FileReference); fileRef.addEventListener(Event.COMPLETE, onImageLoaded); } else { if ((imageData is ByteArray)){ uploadByteArray((imageData as ByteArray)); } else { if ((imageData is BitmapData)){ switch ((call as UploadPhoto).uploadType){ case UploadPhotoTypes.JPEG: _local4 = new JPGEncoder((call as UploadPhoto).uploadQuality); ba = _local4.encode((imageData as BitmapData)); break; case UploadPhotoTypes.PNG: ba = PNGEncoder.encode((imageData 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 144
//FacebookError (com.facebook.errors.FacebookError) package com.facebook.errors { import flash.events.*; import flash.net.*; import com.facebook.data.*; 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; public function FacebookError(){ super(); } } }//package com.facebook.errors
Section 145
//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(type:String, bubbles:Boolean=false, cancelable:Boolean=false, success:Boolean=false, data:FacebookData=null, error:FacebookError=null, permission:String="", hasPermission:Boolean=false){ this.success = success; this.data = data; this.error = error; this.permission = permission; this.hasPermission = hasPermission; super(type, bubbles, cancelable); } 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 146
//FacebookCall (com.facebook.net.FacebookCall) package com.facebook.net { import com.facebook.events.*; import flash.events.*; import flash.net.*; import com.facebook.data.*; import com.facebook.errors.*; 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(method:String="no_method_required", args:URLVariables=null){ super(); this.method = method; this.args = ((args)!=null) ? args : new URLVariables(); } facebook_internal function handleError(error:FacebookError):void{ this.error = error; success = false; dispatchEvent(new FacebookEvent(FacebookEvent.COMPLETE, false, false, false, null, error)); } facebook_internal function initialize():void{ } facebook_internal function handleResult(result:FacebookData):void{ this.result = result; success = true; dispatchEvent(new FacebookEvent(FacebookEvent.COMPLETE, false, false, true, result)); } facebook_internal function setRequestArgument(name:String, value:Object):void{ if ((((value is Number)) && (isNaN((value as Number))))){ return; }; if (((((name) && (!((value == null))))) && ((String(value).length > 0)))){ this.args[name] = value; }; } protected function applySchema(p_shema:Array, ... _args):void{ var l:uint = p_shema.length; var i:uint; while (i < l) { setRequestArgument(p_shema[i], _args[i]); i++; }; } facebook_internal function clearRequestArguments():void{ this.args = new URLVariables(); } } }//package com.facebook.net
Section 147
//DesktopSession (com.facebook.session.DesktopSession) package com.facebook.session { import com.facebook.events.*; import flash.net.*; import com.facebook.data.*; import com.facebook.errors.*; 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(api_key:String, secret:String=null, session_key:String=null){ super(api_key, null); this._is_connected = false; this._secret = secret; if (session_key){ this._session_key = session_key; }; } override public function post(call:FacebookCall):IFacebookCallDelegate{ if (call.method == UploadPhoto.METHOD_NAME){ return (new WebImageUploadDelegate(call, this)); }; return (new DesktopDelegate(call, this)); } override public function get waiting_for_login():Boolean{ return (_waiting_for_login); } protected function onLogin(p_event:FacebookEvent):void{ var request:URLRequest; var loginParams:String; p_event.target.removeEventListener(FacebookEvent.COMPLETE, onLogin); if (p_event.success){ _auth_token = (p_event.data as StringResultData).value; request = new URLRequest(); loginParams = "?"; if (_offline_access){ loginParams = (loginParams + "ext_perm=offline_access&"); }; request.url = (((((((login_url + loginParams) + "api_key=") + api_key) + "&v=") + api_version) + "&auth_token=") + _auth_token); navigateToURL(request, "_blank"); _waiting_for_login = true; dispatchEvent(new FacebookEvent(FacebookEvent.WAITING_FOR_LOGIN)); } else { onConnectionError(p_event.error); }; } protected function onConnectionError(error:FacebookError):void{ _is_connected = false; dispatchEvent(new FacebookEvent(FacebookEvent.CONNECT, false, false, false, null, error)); } protected function tokenCreated():void{ navigateToURL(new URLRequest(login_url)); } override public function login(offline_access:Boolean):void{ _offline_access = offline_access; _session_key = null; var getSession:FacebookCall = new CreateToken(); getSession.session = this; var _local3 = getSession; _local3.facebook_internal::initialize(); getSession.addEventListener(FacebookEvent.COMPLETE, onLogin); post(getSession); } protected function onVerifyLogin(event:FacebookEvent):void{ var successEvent:FacebookEvent; successEvent = new FacebookEvent(FacebookEvent.CONNECT); successEvent.success = event.success; if (event.success){ facebook_internal::_uid = (event.data as StringResultData).value; successEvent.data = event.data; _is_connected = true; } else { successEvent.error = event.error; _is_connected = false; }; dispatchEvent(successEvent); } override public function verifySession():void{ var call:FacebookCall; if (_session_key){ call = new GetLoggedInUser(); call.session = this; var _local2 = call; _local2.facebook_internal::initialize(); call.addEventListener(FacebookEvent.COMPLETE, onVerifyLogin, false, 0, true); post(call); dispatchEvent(new FacebookEvent(FacebookEvent.VERIFYING_SESSION)); } else { _is_connected = false; dispatchEvent(new FacebookEvent(FacebookEvent.CONNECT)); }; } protected function validateSessionReply(event:FacebookEvent):void{ var result:GetSessionData; if (event.success){ result = (event.data as GetSessionData); facebook_internal::_uid = result.uid; this._session_key = result.session_key; this._expires = result.expires; this._secret = ((((result.secret == null)) || ((result.secret == "")))) ? this._secret : result.secret; _is_connected = true; dispatchEvent(new FacebookEvent(FacebookEvent.CONNECT, false, false, true, result)); } else { onConnectionError(event.error); }; } override public function refreshSession():void{ _waiting_for_login = false; var call:GetSession = new GetSession(_auth_token); call.session = this; var _local2 = call; _local2.facebook_internal::initialize(); call.addEventListener(FacebookEvent.COMPLETE, validateSessionReply); post(call); } } }//package com.facebook.session
Section 148
//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(com.facebook.session:IFacebookSession/com.facebook.session:IFacebookSession:is_connected/get:String):void; function get waiting_for_login():Boolean; function refreshSession():void; function get rest_url():String; function post(com.facebook.session:IFacebookSession/com.facebook.session:IFacebookSession:waiting_for_login/get:FacebookCall):IFacebookCallDelegate; function set rest_url(com.facebook.session:IFacebookSession/com.facebook.session:IFacebookSession:is_connected/get:String):void; function login(com.facebook.session:IFacebookSession/com.facebook.session:IFacebookSession:is_connected/get:Boolean):void; function set session_key(com.facebook.session:IFacebookSession/com.facebook.session:IFacebookSession:is_connected/get: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 149
//JSSession (com.facebook.session.JSSession) package com.facebook.session { import com.facebook.events.*; import flash.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(api_key:String, as_swf_name:String){ super(); this._api_key = api_key; this.as_swf_name = as_swf_name; } 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(value:String):void{ } public function refreshSession():void{ } protected function onVerifyLogin(event:FacebookEvent):void{ if (event.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 call:FacebookCall = new GetLoggedInUser(); call.addEventListener(FacebookEvent.COMPLETE, onVerifyLogin); call.session = this; var _local2 = call; _local2.facebook_internal::initialize(); post(call); } public function set secret(value:String):void{ } public function login(offline_access:Boolean):void{ } public function set session_key(p_key:String):void{ _session_key = p_key; } public function post(call:FacebookCall):IFacebookCallDelegate{ return (new JSDelegate(call, 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 150
//WebSession (com.facebook.session.WebSession) package com.facebook.session { import com.facebook.events.*; import flash.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(api_key:String, ss:String, session_key:String=null){ super(); this._api_key = api_key; this._session_key = session_key; this.secret = ss; } public function get waiting_for_login():Boolean{ return (false); } public function get rest_url():String{ return (_rest_url); } public function set rest_url(value:String):void{ _rest_url = value; } public function post(call:FacebookCall):IFacebookCallDelegate{ if (call.method == UploadPhoto.METHOD_NAME){ return (new WebImageUploadDelegate(call, this)); }; return (new WebDelegate(call, 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(value:String):void{ _secret = value; } 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(newVal:String):void{ this._api_version = newVal; } public function login(offline_access:Boolean):void{ } public function set session_key(p_key:String):void{ _session_key = p_key; } } }//package com.facebook.session
Section 151
//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(source:Array=null, type:Class=null){ super(); reset(); _type = type; initilizeSource(source); } protected function verifyIndex(index:uint):void{ if (_source.length < index){ throw (new RangeError((("Index: " + index) + ", is out of range."))); }; } public function addItem(item:Object):void{ addItemAt(item, length); } public function get length():int{ return (_source.length); } public function addItemAt(item:Object, index:uint):void{ if (hash[item] != null){ throw (new Error("Item already exists.")); }; if (((!((_type === null))) && (!((item is _type))))){ throw (new TypeError((("This collection requires " + _type) + " as the type."))); }; hash[item] = true; _source.splice(index, 0, item); } public function indexOf(item:Object):int{ return (_source.indexOf(item)); } public function removeItemAt(index:uint):void{ verifyIndex(index); var item:Object = _source[index]; delete hash[item]; _source.splice(index, 1); } public function getItemAt(index:uint):Object{ verifyIndex(index); return (_source[index]); } override public function toString():String{ return (_source.join(", ")); } public function reset():void{ hash = new Dictionary(true); _source = []; } protected function initilizeSource(source:Array):void{ _source = []; if (source == null){ return; }; var l:uint = source.length; var i:uint; while (i < l) { addItem(source[i]); i++; }; } public function findItemByProperty(prop:String, value:Object, strict:Boolean=false):Object{ var obj:Object; for (obj in hash) { if (((((strict) && ((prop in obj)))) && ((obj[prop] === value)))){ return (obj); }; if (((((!(strict)) && ((prop in obj)))) && ((obj[prop] == value)))){ return (obj); }; }; return (null); } public function get type():Class{ return (_type); } public function get source():Array{ return (_source); } public function toArray():Array{ var newArr:Array = []; var l:uint = length; var i:uint; while (i < l) { newArr.push(getItemAt(i)); i++; }; return (newArr); } public function contains(value:Object):Boolean{ return ((hash[value] === true)); } } }//package com.facebook.utils
Section 152
//FacebookDataUtils (com.facebook.utils.FacebookDataUtils) package com.facebook.utils { import com.adobe.serialization.json.*; public class FacebookDataUtils { public function FacebookDataUtils(){ super(); } public static function toJSONValuesArray(array:Array):String{ if (array == null){ return (null); }; var newArray:Array = []; var l:Number = array.length; var i:Number = 0; while (i < l) { newArray.push(JSON.encode(array[i])); i++; }; return (newArray.join(",")); } public static function formatDate(string:String):Date{ var dateParts:Array; var timeParts:Array; if ((((string == "")) || ((string == null)))){ return (null); }; var date:Date = new Date(); var parts:Array = string.split(" "); if (parts.length == 2){ dateParts = parts[0].split("-"); timeParts = parts[1].split(":"); date.setFullYear(dateParts[0]); date.setMonth((dateParts[1] - 1)); date.setDate(dateParts[2]); date.setHours(timeParts[0]); date.setMinutes(timeParts[1]); date.setSeconds(timeParts[2]); } else { date.setTime((parseInt(string) * 1000)); }; return (date); } public static function facebookCollectionToJSONArray(value:FacebookArrayCollection):String{ if (value == null){ return (null); }; return (JSON.encode(value.toArray())); } public static function toDateString(date:Date):String{ if (date == null){ return (null); }; date.setDate((date.date + 1)); return (((date == null)) ? null : date.getTime().toString().slice(0, 10)); } public static function supplantString(string:String, replaceObj:Object):String{ var n:String; var str:String = string; for (n in replaceObj) { str = str.replace(new RegExp((("\\{" + n) + "\\}"), "g"), replaceObj[n]); }; return (str); } public static function toArrayString(array:Array):String{ return (((array == null)) ? null : array.join(",")); } } }//package com.facebook.utils
Section 153
//FacebookSessionUtil (com.facebook.utils.FacebookSessionUtil) package com.facebook.utils { import com.facebook.events.*; import flash.events.*; import flash.net.*; import flash.display.*; 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(api_key:String, secret:String, loaderInfo:LoaderInfo){ super(); this.secret = ((secret == null)) ? loaderInfo.parameters.fb_sig_ss : secret; this.api_key = api_key; this.loaderInfo = loaderInfo; var savedCreds:SharedObject = getStoredSession(); if (savedCreds.data.session_key){ session_key = savedCreds.data.session_key; }; var flashVars:Object = ((loaderInfo)!=null) ? loaderInfo.parameters : {}; if (flashVars.fb_sig_session_key != null){ session_key = flashVars.fb_sig_session_key; }; if ((((loaderInfo.url.slice(0, 5) == "file:")) || ((Capabilities.playerType == "Desktop")))){ _activeSession = new DesktopSession(api_key, this.secret); } else { if (((((flashVars.fb_sig_ss) && (flashVars.fb_sig_api_key))) && (flashVars.fb_sig_session_key))){ _activeSession = new WebSession(flashVars.fb_sig_api_key, flashVars.fb_sig_ss, flashVars.fb_sig_session_key); (_activeSession as WebSession).facebook_internal::_uid = flashVars.fb_sig_user; } else { if (flashVars.as_app_name){ _activeSession = new JSSession(api_key, flashVars.as_app_name); } else { _activeSession = new DesktopSession(api_key, secret); }; }; }; _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(event:FacebookEvent):void{ dispatchEvent(event); } public function logout():void{ getStoredSession().clear(); getStoredSession().flush(); facebook.logout(); } protected function onFacebookReady(event:FacebookEvent):void{ var storedSession:SharedObject; if (facebook.session_key){ storedSession = getStoredSession(); storedSession.data.session_key = facebook.session_key; storedSession.data.stored_secret = facebook.secret; storedSession.flush(3000); }; if (event){ dispatchEvent(event); }; } protected function onWaitingForLogin(event:FacebookEvent):void{ dispatchEvent(event); } public function validateLogin():void{ facebook.refreshSession(); } public function get activeSession():IFacebookSession{ return (_activeSession); } public function login(offline_access:Boolean=true):void{ facebook.login(offline_access); } public function onVerifyingSession(event:FacebookEvent):void{ dispatchEvent(event); } public function verifySession():void{ _activeSession.verifySession(); } protected function onVerifyLogin(event:FacebookEvent):void{ _activeSession.removeEventListener(FacebookEvent.CONNECT, onVerifyLogin); if (event.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 154
//FacebookStreamXMLParser (com.facebook.utils.FacebookStreamXMLParser) package com.facebook.utils { import com.facebook.data.stream.*; public class FacebookStreamXMLParser { public function FacebookStreamXMLParser(){ super(); } public static function createCommentsArray(source:XMLList, ns:Namespace):Array{ var c:XML; var comment:PostCommentData; var posts:Array = []; var l:uint = source.length(); var i:uint; while (i < l) { c = source[i]; comment = new PostCommentData(); comment.fromid = FacebookXMLParserUtils.toStringValue(c.ns::fromid[0]); comment.id = FacebookXMLParserUtils.toStringValue(c.ns::id[0]); comment.text = FacebookXMLParserUtils.toStringValue(c.ns::text[0]); comment.time = FacebookXMLParserUtils.toDate(c.ns::time[0]); posts.push(comment); i++; }; return (posts); } protected static function createMediaArray(value:XML, ns:Namespace):Array{ var mediaXML:XML; var smd:StreamMediaData; if (value == null){ return (null); }; var arr:Array = []; var media:XMLList = value.children(); var l:uint = media.length(); var i:uint; while (i < l) { mediaXML = media[i]; smd = new StreamMediaData(); smd.type = FacebookXMLParserUtils.toStringValue(mediaXML.ns::type[0]); smd.alt = FacebookXMLParserUtils.toStringValue(mediaXML.ns::alt[0]); smd.href = FacebookXMLParserUtils.toStringValue(mediaXML.ns::href[0]); smd.src = FacebookXMLParserUtils.toStringValue(mediaXML.ns::src[0]); smd.video = createVideoMedia(mediaXML.ns::video[0], ns); smd.photo = createPhotoMedia(mediaXML.ns::photo[0], ns); arr.push(smd); i++; }; return (arr); } public static function createStreamFilterCollection(xml:XML, ns:Namespace):GetFiltersData{ var filter:XML; var fd:StreamFilterData; var gfd:GetFiltersData = new GetFiltersData(); var ssc:StreamFilterCollection = new StreamFilterCollection(); var filters:XMLList = xml..ns::stream_filter; var l:uint = filters.length(); var i:uint; while (i < l) { filter = filters[i]; fd = new StreamFilterData(); fd.filter_key = FacebookXMLParserUtils.toStringValue(filter.ns::filter_key[0]); fd.icon_url = FacebookXMLParserUtils.toStringValue(filter.ns::icon_url[0]); fd.is_visible = FacebookXMLParserUtils.toBoolean(filter.ns::is_visible[0]); fd.name = FacebookXMLParserUtils.toStringValue(filter.ns::name[0]); fd.rank = FacebookXMLParserUtils.toNumber(filter.ns::rank[0]); fd.type = FacebookXMLParserUtils.toStringValue(filter.ns::type[0]); fd.uid = FacebookXMLParserUtils.toStringValue(filter.ns::uid[0]); fd.value = FacebookXMLParserUtils.toStringValue(filter.ns::value[0]); ssc.addItem(fd); i++; }; gfd.filters = ssc; return (gfd); } protected static function createVideoMedia(value:XML, ns:Namespace):VideoMedia{ if (value == null){ return (null); }; var vm:VideoMedia = new VideoMedia(); vm.display_url = FacebookXMLParserUtils.toStringValue(value.ns::display_url[0]); vm.owner = FacebookXMLParserUtils.toStringValue(value.ns::owner[0]); vm.permalink = FacebookXMLParserUtils.toStringValue(value.ns::permalink[0]); vm.source_url = FacebookXMLParserUtils.toStringValue(value.ns::source_url[0]); return (vm); } protected static function createComments(source:XML, ns:Namespace):CommentsData{ var comments:CommentsData = new CommentsData(); comments.can_remove = FacebookXMLParserUtils.toBoolean(source.ns::can_remove[0]); comments.can_post = FacebookXMLParserUtils.toBoolean(source.ns::can_post[0]); comments.count = FacebookXMLParserUtils.toNumber(source.ns::count[0]); var postsXML:XMLList = source.ns::posts.children(); comments.posts = createCommentsArray(postsXML, ns); return (comments); } public static function createGetCommentsData(source:XML, ns:Namespace):GetCommentsData{ var postsXML:XMLList = source..ns::comment; var gcd:GetCommentsData = new GetCommentsData(); gcd.comments = createCommentsArray(postsXML, ns); return (gcd); } public static function createStream(source:XML, ns:Namespace):GetStreamData{ var l:uint; var i:uint; var ssx:XML; var ss:StreamStoryData; var attachmentXML:XML; var attachment:AttachmentData; var likesData:LikesData; var likesXML:XML; var privacy:XML; var profile:ProfileData; var profXml:XML; var gsd:GetStreamData = new GetStreamData(); var streamStories:StreamStoryCollection = new StreamStoryCollection(); var profiles:ProfileCollection = new ProfileCollection(); gsd.stories = streamStories; gsd.profiles = profiles; var storyStreams:XMLList = source.ns::posts.children(); l = storyStreams.length(); i = 0; while (i < l) { ssx = storyStreams[i]; ss = new StreamStoryData(); ss.sourceXML = ssx; attachmentXML = ssx.ns::attachment[0]; attachment = new AttachmentData(); attachment.name = FacebookXMLParserUtils.toStringValue(attachmentXML.ns::name[0]); attachment.text = FacebookXMLParserUtils.toStringValue(attachmentXML.ns::text[0]); attachment.body = FacebookXMLParserUtils.toStringValue(attachmentXML.ns::body[0]); attachment.icon = FacebookXMLParserUtils.toStringValue(attachmentXML.ns::icon[0]); attachment.label = FacebookXMLParserUtils.toStringValue(attachmentXML.ns::label[0]); attachment.media = createMediaArray(attachmentXML.ns::media[0], ns); attachment.title = FacebookXMLParserUtils.toStringValue(attachmentXML.ns::title[0]); attachment.href = FacebookXMLParserUtils.toStringValue(attachmentXML.ns::href[0]); attachment.caption = FacebookXMLParserUtils.toStringValue(attachmentXML.ns::caption[0]); ss.attachment = attachment; ss.actor_id = FacebookXMLParserUtils.toStringValue(ssx.ns::actor_id[0]); ss.comments = createComments(ssx.ns::comments[0], ns); likesData = new LikesData(); likesXML = ssx.ns::likes[0]; likesData.can_like = FacebookXMLParserUtils.toBoolean(likesXML.ns::can_like[0]); likesData.user_likes = FacebookXMLParserUtils.toBoolean(likesXML.ns::user_likes[0]); likesData.count = FacebookXMLParserUtils.toNumber(likesXML.ns::count[0]); likesData.friends = FacebookXMLParserUtils.toUIDArray(likesXML.ns::friends[0]); likesData.sample = FacebookXMLParserUtils.toUIDArray(likesXML.ns::sample[0]); likesData.href = FacebookXMLParserUtils.toStringValue(likesXML.ns::href[0]); ss.likes = likesData; ss.attribution = FacebookXMLParserUtils.toStringValue(ssx.attribution[0]); ss.app_id = FacebookXMLParserUtils.toStringValue(ssx.app_id[0]); ss.metadata = FacebookXMLParserUtils.nodeToObject(ssx.ns::metadata); ss.message = FacebookXMLParserUtils.toStringValue(ssx.ns::message[0]); ss.source_id = FacebookXMLParserUtils.toStringValue(ssx.ns::source_id[0]); ss.target_id = FacebookXMLParserUtils.toStringValue(ssx.ns::target_id[0]); ss.post_id = FacebookXMLParserUtils.toStringValue(ssx.ns::post_id[0]); ss.updated_time = FacebookXMLParserUtils.toDate(ssx.ns::updated_time[0]); ss.created_time = FacebookXMLParserUtils.toDate(ssx.ns::created_time[0]); ss.type = FacebookXMLParserUtils.toNumber(ssx.ns::type[0]); ss.viewer_id = FacebookXMLParserUtils.toStringValue(ssx.ns::viewer_id[0]); privacy = ssx.ns::privacy[0]; ss.privacy = FacebookXMLParserUtils.toStringValue(privacy.ns::value[0]); ss.filter_key = FacebookXMLParserUtils.toStringValue(ssx.ns::filter_key[0]); streamStories.addItem(ss); i++; }; var profilesXml:XMLList = source.ns::profiles.children(); l = profilesXml.length(); i = 0; while (i < l) { profile = new ProfileData(); profXml = profilesXml[i]; profile.id = FacebookXMLParserUtils.toStringValue(profXml.ns::id[0]); profile.name = FacebookXMLParserUtils.toStringValue(profXml.ns::name[0]); profile.pic_square = FacebookXMLParserUtils.toStringValue(profXml.ns::pic_square[0]); profile.url = FacebookXMLParserUtils.toStringValue(profXml.ns::url[0]); profiles.addItem(profile); i++; }; gsd.albums = FacebookXMLParserUtils.createAlbumCollection(source.ns::albums[0], ns); return (gsd); } protected static function createPhotoMedia(value:XML, ns:Namespace):PhotoMedia{ if (value == null){ return (null); }; var pm:PhotoMedia = new PhotoMedia(); pm.aid = FacebookXMLParserUtils.toStringValue(value.ns::aid[0]); pm.index = FacebookXMLParserUtils.toNumber(value.ns::index[0]); pm.owner = FacebookXMLParserUtils.toStringValue(value.ns::owner[0]); pm.pid = FacebookXMLParserUtils.toStringValue(value.ns::pid[0]); return (pm); } } }//package com.facebook.utils
Section 155
//FacebookUserXMLParser (com.facebook.utils.FacebookUserXMLParser) package com.facebook.utils { import com.facebook.data.*; import com.facebook.data.users.*; public class FacebookUserXMLParser { public function FacebookUserXMLParser(){ super(); } protected static function parseWorkHistory(xml:XML, ns:Namespace):Array{ var xWorkInfo:Object; var workInfo:FacebookWorkInfo; var work_history:Array = []; for each (xWorkInfo in xml) { workInfo = new FacebookWorkInfo(); workInfo.location = FacebookXMLParserUtils.createLocation(xWorkInfo.ns::location[0], ns); workInfo.company_name = String(xWorkInfo.ns::company_name); workInfo.description = String(xWorkInfo.ns::description); workInfo.position = String(xWorkInfo.ns::position); workInfo.start_date = FacebookDataUtils.formatDate(xWorkInfo.ns::start_date); workInfo.end_date = FacebookDataUtils.formatDate(xWorkInfo.ns::end_date); work_history.push(workInfo); }; return (work_history); } protected static function createStatus(status:XML, ns:Namespace):StatusData{ var statusData:StatusData = new StatusData(); statusData.message = String(status.ns::message); statusData.time = FacebookDataUtils.formatDate(String(status.ns::time)); return (statusData); } protected static function parseEducationHistory(xml:XML, ns:Namespace):Array{ var e:Object; var educationInfo:FacebookEducationInfo; var c:XML; var education_history:Array = []; var xList:XMLList = xml.children(); for each (e in xList) { educationInfo = new FacebookEducationInfo(); educationInfo.name = String(e.ns::name); educationInfo.year = String(e.ns::year); educationInfo.degree = String(e.ns::degree); educationInfo.concentrations = []; for each (c in e.concentration) { educationInfo.concentrations.push(c); }; education_history.push(educationInfo); }; return (education_history); } public static function createFacebookUser(userProperties:XML, ns:Namespace):FacebookUser{ var userNode:XML; var localName:String; var fbUser:FacebookUser = new FacebookUser(); var props:XMLList = userProperties.children(); var l:uint = props.length(); var i:uint; while (i < l) { userNode = props[i]; localName = userNode.localName().toString(); switch (localName){ case "status": fbUser[localName] = createStatus(userNode, ns); break; case "affiliations": fbUser[localName] = createAffiliations(userNode.children(), ns); break; case "hometown_location": case "current_location": fbUser[localName] = FacebookXMLParserUtils.createLocation(userNode, ns); break; case "profile_update_time": fbUser[localName] = FacebookDataUtils.formatDate(userNode.toString()); break; case "hs_info": fbUser.hs1_id = parseInt(userNode.ns::hs1_id); fbUser.hs1_name = String(userNode.ns::hs1_name); fbUser.hs2_id = parseInt(userNode.ns::hs2_id); fbUser.hs2_name = String(userNode.ns::hs2_name); fbUser.grad_year = String(userNode.ns::grad_year); break; case "education_history": fbUser[localName] = parseEducationHistory(userNode, ns); break; case "work_history": fbUser[localName] = parseWorkHistory(userNode, ns); break; case "timezone": case "notes_count": case "wall_count": fbUser[localName] = Number(userNode.toString()); break; case "has_added_app": case "is_app_user": fbUser[localName] = FacebookXMLParserUtils.toBoolean(userNode); break; case "meeting_sex": case "meeting_for": case "email_hashes": fbUser[localName] = toArray(userNode, ns); break; default: if ((localName in fbUser)){ fbUser[localName] = String(userNode); }; }; i++; }; return (fbUser); } protected static function toArray(xml:XML, ns:Namespace):Array{ var arr:Array = []; var children:XMLList = xml.children(); var l:uint = children.length(); var i:uint; while (i < l) { arr.push(children[i].toString()); i++; }; return (arr); } protected static function createAffiliations(affilications:XMLList, ns:Namespace):Array{ var xNetwork:*; var fbNetwork:FacebookNetwork; var arr:Array = []; for each (xNetwork in affilications) { fbNetwork = new FacebookNetwork(); fbNetwork.nid = parseInt(xNetwork.ns::nid); fbNetwork.name = String(xNetwork.ns::name); fbNetwork.type = String(xNetwork.ns::type); fbNetwork.status = String(xNetwork.ns::status); fbNetwork.year = String(xNetwork.ns::year); arr.push(fbNetwork); }; return (arr); } } }//package com.facebook.utils
Section 156
//FacebookXMLParserUtils (com.facebook.utils.FacebookXMLParserUtils) package com.facebook.utils { import flash.net.*; import com.facebook.data.*; import com.facebook.data.photos.*; public class FacebookXMLParserUtils { public function FacebookXMLParserUtils(){ super(); } public static function createLocation(xml:XML, ns:Namespace):FacebookLocation{ var location:FacebookLocation = new FacebookLocation(); if (xml == null){ return (location); }; location.city = String(xml.ns::city); location.state = String(xml.ns::state); location.country = String(xml.ns::country); location.zip = String(xml.ns::zip); return (location); } public static function toNumber(value:XML):Number{ if (value == null){ return (NaN); }; return (Number(value.toString())); } public static function toStringValue(value:XML):String{ if (value == null){ return (null); }; return (value.toString()); } public static function createAlbumCollection(xml:XML, ns:Namespace):AlbumCollection{ var singleAlbum:*; var albumData:AlbumData; var albumCollection:AlbumCollection = new AlbumCollection(); for each (singleAlbum in xml..ns::album) { albumData = new AlbumData(); albumData.aid = FacebookXMLParserUtils.toStringValue(singleAlbum.ns::aid[0]); albumData.cover_pid = FacebookXMLParserUtils.toStringValue(singleAlbum.ns::cover_pid[0]); albumData.owner = singleAlbum.ns::owner; albumData.name = singleAlbum.ns::name; albumData.created = FacebookXMLParserUtils.toDate(singleAlbum.ns::created); albumData.modified = FacebookXMLParserUtils.toDate(singleAlbum.ns::modified); albumData.description = singleAlbum.ns::description; albumData.location = singleAlbum.ns::location; albumData.link = singleAlbum.ns::link; albumData.size = singleAlbum.ns::size; albumData.visible = singleAlbum.ns::visible; albumCollection.addAlbum(albumData); }; return (albumCollection); } public static function toDate(value:String):Date{ if (value == null){ return (null); }; var startDate:String = value; while (startDate.length < 13) { startDate = (startDate + "0"); }; var newDate:Date = new Date(Number(startDate)); return (newDate); } public static function xmlToUrlVariables(p_xml:XMLList):URLVariables{ var xml:XML; var vars:URLVariables = new URLVariables(); for each (xml in p_xml) { vars[xml.key.valueOf()] = xml.value.valueOf(); }; return (vars); } public static function toUIDArray(xml:XML):Array{ var arr:Array = []; if (xml == null){ return (arr); }; var uids:XMLList = xml.children(); var l:uint = uids.length(); var i:uint; while (i < l) { arr.push(toNumber(uids[i])); i++; }; return (arr); } public static function nodeToObject(p_xml:XMLList):Object{ var xml:XML; var vars:Object = {}; for each (xml in p_xml) { vars[xml.key.valueOf()] = xml.value.valueOf(); }; return (vars); } public static function toBoolean(value:XML):Boolean{ if (value == null){ return (false); }; return ((value.toString() == "1")); } public static function toArray(value:XML):Array{ if (value == null){ return (null); }; return (value.toString().split(",")); } } }//package com.facebook.utils
Section 157
//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(result:String):FacebookError; } }//package com.facebook.utils
Section 158
//JavascriptRequestHelper (com.facebook.utils.JavascriptRequestHelper) package com.facebook.utils { import flash.net.*; import flash.utils.*; public class JavascriptRequestHelper { public function JavascriptRequestHelper(){ super(); } public static function objectToString(obj:Object):String{ var n:String; var arr:Array = []; for (n in obj) { arr.push((((n + ": ") + quote(obj[n])) + "")); }; return ((("{" + arr.join(", ")) + " }")); } public static function quote(p_string:String):String{ var regx:RegExp = /[\\"\r\n]/g; return ((("\"" + p_string.replace(regx, _quote)) + "\"")); } public static function formatParams(params:Array):String{ var value:Object; var qualifiedClassName:String; var newParams:Array = []; var l:uint = params.length; var i:uint; while (i < l) { value = params[i]; qualifiedClassName = getQualifiedClassName(value); switch (qualifiedClassName){ case "Array": value = (("[" + value.join(", ")) + "]"); break; case "Object": value = objectToString(value); break; case "String": default: value = (("\"" + value) + "\""); break; }; newParams.push(value); i++; }; return (newParams.join(", ")); } protected static function _quote(p_string:String, ... _args):String{ switch (p_string){ case "\\": return ("\\\\"); case "\r": return ("\\r"); case "\n": return ("\\n"); case "\"": return ("\\\""); }; return (null); } public static function formatURLVariables(urlVars:URLVariables):String{ var n:String; var filter:Object = {method:true, sig:true, api_key:true, call_id:true}; var hasParams:Boolean; var obj:Object = {}; for (n in urlVars) { if (filter[n]){ } else { hasParams = true; obj[n] = urlVars[n]; }; }; return ((hasParams) ? objectToString(obj) : "null"); } } }//package com.facebook.utils
Section 159
//PlayerUtils (com.facebook.utils.PlayerUtils) package com.facebook.utils { import flash.system.*; public class PlayerUtils { protected static var versionObj:Object; public function PlayerUtils(){ super(); } 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 version:String = Capabilities.version; versionObj = {}; var peices1:Array = version.split(" "); versionObj.platform = peices1[0]; peices1.shift(); peices1 = peices1[0].split(","); versionObj.majorVersion = Number(peices1[0]); versionObj.minorVersion = Number(peices1[1]); versionObj.buildNumber = Number(peices1[2]); versionObj.internalBuildNumber = Number(peices1[3]); return (versionObj); } public static function get majorVersion():Number{ return (parseVersionString().majorVersion); } } }//package com.facebook.utils
Section 160
//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(){ super(); createPostData(); } public function getPostData():ByteArray{ postData.position = 0; return (postData); } protected function writeBoundary():void{ writeDoubleDash(); var i:Number = 0; while (i < boundary.length) { postData.writeByte(boundary.charCodeAt(i)); i++; }; } protected function writeDoubleDash():void{ postData.writeShort(0x2D2D); } public function writeFileData(filename:String, fileData:ByteArray):void{ var bytes:String; writeBoundary(); writeLineBreak(); bytes = "Content-Disposition: form-data; filename=\""; var i:Number = 0; while (i < bytes.length) { postData.writeByte(bytes.charCodeAt(i)); i++; }; postData.writeUTFBytes(filename); writeQuotationMark(); writeLineBreak(); bytes = "Content-Type: image/jpg"; i = 0; while (i < bytes.length) { postData.writeByte(bytes.charCodeAt(i)); i++; }; writeLineBreak(); writeLineBreak(); fileData.position = 0; postData.writeBytes(fileData, 0, fileData.length); writeLineBreak(); } public function createPostData():void{ postData = new ByteArray(); postData.endian = Endian.BIG_ENDIAN; } public function writePostData(name:String, value:String):void{ var bytes:String; writeBoundary(); writeLineBreak(); bytes = (("Content-Disposition: form-data; name=\"" + name) + "\""); var l:uint = bytes.length; var i:Number = 0; while (i < l) { postData.writeByte(bytes.charCodeAt(i)); i++; }; writeLineBreak(); writeLineBreak(); postData.writeUTFBytes(value); 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(value:String):void{ _boundary = value; } } }//package com.facebook.utils
Section 161
//Facebook (com.facebook.Facebook) package com.facebook { import com.facebook.events.*; import flash.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{ super(); } public function post(call:FacebookCall):FacebookCall{ var delegate:IFacebookCallDelegate; if (_currentSession){ call.session = _currentSession; call.initialize(); delegate = _currentSession.post(call); call.delegate = delegate; } else { throw (new Error("Cannot post a call; no session has been set.")); }; return (call); } public function startSession(session:IFacebookSession):void{ _currentSession = session; 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(perm:String):void{ navigateToURL(new URLRequest(((((("http://www.facebook.com/authorize.php?api_key=" + api_key) + "&v=") + api_version) + "&ext_perm=") + perm)), "_blank"); } public function refreshSession():void{ _currentSession.refreshSession(); } public function logout():void{ var call:ExpireSession = new ExpireSession(); call.addEventListener(FacebookEvent.COMPLETE, onLoggedOut, false, 0, true); post(call); } public function get api_version():String{ return ((_currentSession) ? this._currentSession.api_version : null); } protected function onLoggedOut(event:FacebookEvent):void{ if (event.success == true){ _currentSession.session_key = null; }; dispatchEvent(new FacebookEvent(FacebookEvent.LOGOUT, false, false, event.success, event.data, event.error)); } protected function onWaitingForLogin(event:FacebookEvent):void{ waiting_for_login = true; dispatchEvent(new FacebookEvent(FacebookEvent.WAITING_FOR_LOGIN)); } public function login(offline_access:Boolean):void{ _currentSession.login(offline_access); } public function get secret():String{ return ((_currentSession) ? this._currentSession.secret : null); } public function grantPermission(return_session:Boolean):void{ var authUrl:String = ((("http://www.facebook.com/login.php?return_session=" + (return_session) ? 1 : 0) + "&api_key=") + api_key); navigateToURL(new URLRequest(authUrl), "_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(event:FacebookEvent):void{ var session:IFacebookSession = (event.target as IFacebookSession); dispatchEvent(event); } 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 162
//facebook_internal (com.facebook.facebook_internal) package com.facebook { public namespace facebook_internal = "http://api.facebook.com/1.0/"; }//package com.facebook
Section 163
//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 164
//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 165
//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 166
//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 167
//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 168
//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 169
//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 170
//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 171
//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 172
//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 173
//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 174
//KongregateAPI (com.kongregate.as3.client.KongregateAPI) package com.kongregate.as3.client { import flash.events.*; import flash.display.*; import com.kongregate.as3.client.services.*; import flash.utils.*; import flash.net.*; import flash.system.*; 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 175
//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(){ super(); throw (new Error("")); } public static function play(assetName:String, loops:int=0, transform:SoundTransform=null):SoundChannel{ var cls:Class = (map[assetName] as Class); var instance:Sound = (new (cls) as Sound); if (_mute){ transform = new SoundTransform(); transform.volume = 0; }; return ((instance) ? instance.play(0, loops, transform) : null); } public static function resume():void{ _mute = false; } public static function mute():void{ _mute = true; } public static function registerSoundAsset(assetName:String, cls:Class):void{ if ((((assetName == null)) || ((assetName.split(" ").join("").length == 0)))){ return; }; if (!map.hasOwnProperty(assetName)){ map[assetName] = cls; }; } public static function unregisterSoundAsset(assetName:String):void{ delete map[assetName]; } } }//package com.melesta.sound
Section 176
//Direction (com.melesta.utils.math.Direction) package com.melesta.utils.math { import flash.geom.*; public class Direction { public static const DEG_TO_RAD:Number = 0.0174532925199433; public static const RAD_TO_DEG:Number = 57.2957795130823; private static var directionList:Array = new Array("left", "left_down", "left_up", "up", "right", "right_up", "right_down"); public function Direction(){ super(); } public static function getDirection(p1:Point, p2:Point):Object{ var object:Object = new Object(); object.direction = "down"; var direction:String = "down"; object.right = false; var angle:Number = (Math.atan(((p2.y - p1.y) / (p2.x - p1.x))) * RAD_TO_DEG); if (p2.x > p1.x){ object.right = true; angle = -(angle); }; if (angle > -60){ direction = "down_left"; }; if (angle > -30){ direction = "left"; }; if (angle > 30){ direction = "left_up"; }; if (angle > 60){ direction = "up"; }; if (angle == 90){ direction = "down"; }; if (angle == -90){ direction = "up"; }; object.direction = direction; return (object); } } }//package com.melesta.utils.math
Section 177
//TimeDecoder (com.melesta.utils.time.TimeDecoder) package com.melesta.utils.time { public class TimeDecoder { public function TimeDecoder(){ super(); } public static function decodeTime(time:Number):String{ var minutes:Number = Math.floor((time / 60)); var seconds:Number = Math.floor((time - (minutes * 60))); var minutess:String = ((minutes < 10)) ? ("0" + String(minutes)) : String(minutes); var secondss:String = ((seconds < 10)) ? ("0" + String(seconds)) : String(seconds); return (((minutess + ":") + secondss)); } } }//package com.melesta.utils.time
Section 178
//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(){ super(); 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; Fonts.applyDefaultFont(noBtn.caption); noBtn.caption.text = Config.currentLanguage.ok; Fonts.applyDefaultFont(caption); caption.text = "Press ok after login"; noBtn.addEventListener(MouseEvent.MOUSE_OVER, noOver, false, 0, true); } public function hide(event:MouseEvent=null):void{ var event = event; Tweener.addTween(this, {alpha:0, time:0.2, transition:"easeInBack", y:-100, onComplete:function ():void{ this.visible = false; Farm2.instance.closeFBAlert(); }}); } private function noOver(event:MouseEvent=null):void{ event.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 179
//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(){ super(); _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(event:MouseEvent=null):void{ var event = event; Tweener.addTween(this, {alpha:0, time:0.5, onComplete:function ():void{ this.visible = false; clearList(); }}); } private function clearList():void{ var j:int = _itemsContainer.numChildren; while (j--) { _itemsContainer.removeChildAt(j); }; } private function mouseUp(event:MouseEvent):void{ if (dragging){ dragging = false; sliderBtn.stopDrag(); scrollTimer.stop(); scrollTimer.removeEventListener(TimerEvent.TIMER, scroll, true); }; } public function getLeaderBoard():void{ var rpath:String = "http://en.facebook.promo.services.alawar.com/scores.php"; var loader:URLLoader = new URLLoader(); loader.addEventListener(Event.COMPLETE, createList); loader.load(new URLRequest(rpath)); } private function scroll(event:TimerEvent=null):void{ _itemsContainer.cacheAsBitmap = true; var scrollPercent:int = ((100 / 236) * (sliderBtn.y - 68)); var acty:Number = Number(_itemsContainer); var endy:Number = Number(((((_mask.height - 10) - _itemsContainer.height) / 100) * scrollPercent)); Tweener.addTween(_itemsContainer, {y:endy, time:0, transition:"linear"}); } private function startScroll(event: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(event:Event):void{ var item:FBLeaderboardItem; event.stopPropagation(); preloader.visible = false; var scoreList:XML = XML(event.target.data); clearList(); var i:int; while (i < scoreList.children().length()) { item = new FBLeaderboardItem(scoreList.user[i], (i + 1)); item.x = 27; item.y = (70 + (55 * i)); item.alpha = 0; _itemsContainer.addChild(item); Tweener.addTween(item, {alpha:1, time:0.5, delay:(0.05 * i)}); i++; }; } public function show():void{ visible = true; Tweener.addTween(this, {alpha:1, time:0.5}); preloader.visible = true; getLeaderBoard(); } } }//package facebook.ui
Section 180
//FBLeaderboardItem (facebook.ui.FBLeaderboardItem) package facebook.ui { import flash.events.*; import flash.display.*; import com.facebook.events.*; import flash.utils.*; import flash.net.*; import utils.*; import flash.system.*; 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(data:XML, pl:Number){ super(); ColorShortcuts.init(); this.score.text = data.score; Fonts.applyDefaultFont(score); this.title.text = ""; this.place.text = String(pl); _delay = pl; this.score.mouseEnabled = (this.title.mouseEnabled = (this.place.mouseEnabled = false)); this.place.text = String(pl); Fonts.applyDefaultFont(place); getInfo(data.id); _id = data.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(event:FacebookEvent):void{ var getInfoData:GetInfoData = GetInfoData(event.data); var user:FacebookUser = FacebookUser(getInfoData.userCollection.getItemAt(0)); _imagePath = user.pic_square; _id = user.uid; this.title.text = user.name; Fonts.applyDefaultFont(title); setTimeout(loadImage, Math.ceil(((1200 / 3) * _delay))); } private function out(event:MouseEvent):void{ Tweener.addTween(this, {_brightness:0, time:0.3}); } private function loadImage():void{ var photoLoader:Loader = new Loader(); photoLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, photoLoaded); photoLoader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, unableToLoadPhoto); var loaderContext:LoaderContext = new LoaderContext(true); photoLoader.load(new URLRequest(_imagePath), loaderContext); } private function photoLoaded(event:Event):void{ event.stopPropagation(); var photo:Bitmap = Bitmap(event.target.content); this.image.avatar.addChild(photo); } private function over(event:MouseEvent):void{ Tweener.addTween(this, {_brightness:0.5, time:0.3}); } public function getInfo(uid:String):void{ var call:FacebookCall = Farm2.facebookSession.facebook.post(new GetInfo([uid], ["name", "pic_square"])); call.addEventListener(FacebookEvent.COMPLETE, handle_getInfoComplete, false, 0, true); } private function gotoUserPage(event:MouseEvent):void{ navigateToURL(new URLRequest(("http://www.facebook.com/profile.php?id=" + _id)), "_blank"); } private function unableToLoadPhoto(event:IOErrorEvent):void{ } } }//package facebook.ui
Section 181
//__preloader_138 (Farm3Africa_fla.__preloader_138) package Farm3Africa_fla { import flash.events.*; import flash.display.*; public dynamic class __preloader_138 extends MovieClip { public var rotor:MovieClip; public function __preloader_138(){ super(); addFrameScript(0, frame1); } public function rotate(event:Event=null):void{ rotor.rotation = (rotor.rotation + 10); } function frame1(){ rotor.addEventListener(Event.ENTER_FRAME, rotate, false, 0, true); rotor.cacheAsBitmap = true; } } }//package Farm3Africa_fla
Section 182
//_line__71 (Farm3Africa_fla._line__71) package Farm3Africa_fla { import flash.display.*; public dynamic class _line__71 extends MovieClip { public var _mask:MovieClip; public function _line__71(){ super(); } } }//package Farm3Africa_fla
Section 183
//_line_100 (Farm3Africa_fla._line_100) package Farm3Africa_fla { import flash.display.*; public dynamic class _line_100 extends MovieClip { public function _line_100(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 184
//_progress_99 (Farm3Africa_fla._progress_99) package Farm3Africa_fla { import flash.display.*; public dynamic class _progress_99 extends MovieClip { public var line:MovieClip; public function _progress_99(){ super(); } } }//package Farm3Africa_fla
Section 185
//aim_btn_5 (Farm3Africa_fla.aim_btn_5) package Farm3Africa_fla { import flash.events.*; import flash.display.*; public dynamic class aim_btn_5 extends MovieClip { public function aim_btn_5(){ super(); addFrameScript(0, frame1); } public function out(event:MouseEvent):void{ this.gotoAndStop(1); } 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 down(event:MouseEvent):void{ this.gotoAndStop(3); } public function over(event:MouseEvent):void{ this.gotoAndStop(2); } } }//package Farm3Africa_fla
Section 186
//alawar_94 (Farm3Africa_fla.alawar_94) package Farm3Africa_fla { import flash.display.*; public dynamic class alawar_94 extends MovieClip { public function alawar_94(){ super(); addFrameScript(0, frame1, 3, frame4); } function frame1(){ stop(); } function frame4(){ stop(); } } }//package Farm3Africa_fla
Section 187
//bg_13 (Farm3Africa_fla.bg_13) package Farm3Africa_fla { import flash.display.*; public dynamic class bg_13 extends MovieClip { public function bg_13(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 188
//big_btn_48 (Farm3Africa_fla.big_btn_48) package Farm3Africa_fla { import flash.events.*; import flash.display.*; import flash.text.*; public dynamic class big_btn_48 extends MovieClip { public var caption:TextField; public function big_btn_48(){ super(); addFrameScript(0, frame1); } public function out(event:MouseEvent){ this.gotoAndStop(1); } function frame1(){ addEventListener(MouseEvent.MOUSE_OVER, over); addEventListener(MouseEvent.MOUSE_OUT, out); addEventListener(MouseEvent.MOUSE_DOWN, down); stop(); } public function down(event:MouseEvent){ this.gotoAndStop(3); } public function over(event:MouseEvent){ this.gotoAndStop(2); } } }//package Farm3Africa_fla
Section 189
//body_127 (Farm3Africa_fla.body_127) package Farm3Africa_fla { import flash.display.*; public dynamic class body_127 extends MovieClip { public function body_127(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 190
//body_144 (Farm3Africa_fla.body_144) package Farm3Africa_fla { import flash.display.*; public dynamic class body_144 extends MovieClip { public function body_144(){ super(); addFrameScript(23, frame24, 47, frame48, 71, frame72, 95, frame96, 119, frame120); } function frame72(){ gotoAndPlay("left_up"); } function frame24(){ gotoAndPlay("down"); } function frame96(){ gotoAndPlay("up"); } function frame120(){ gotoAndPlay("down_left"); } function frame48(){ gotoAndPlay("left"); } } }//package Farm3Africa_fla
Section 191
//body_152 (Farm3Africa_fla.body_152) package Farm3Africa_fla { import flash.display.*; public dynamic class body_152 extends MovieClip { public function body_152(){ super(); addFrameScript(23, frame24, 47, frame48, 71, frame72, 95, frame96, 119, frame120, 143, frame144, 176, frame177); } function frame144(){ gotoAndPlay("down"); } function frame72(){ gotoAndPlay("down_left"); } function frame177(){ gotoAndPlay("eat"); } function frame24(){ stop(); } function frame96(){ gotoAndPlay("up"); } function frame120(){ gotoAndPlay("left_up"); } function frame48(){ gotoAndPlay("left"); } } }//package Farm3Africa_fla
Section 192
//body_46 (Farm3Africa_fla.body_46) package Farm3Africa_fla { import flash.display.*; public dynamic class body_46 extends MovieClip { public function body_46(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 193
//bodyGrass_84 (Farm3Africa_fla.bodyGrass_84) package Farm3Africa_fla { import flash.display.*; public dynamic class bodyGrass_84 extends MovieClip { public function bodyGrass_84(){ super(); addFrameScript(16, frame17); } function frame17(){ stop(); } } }//package Farm3Africa_fla
Section 194
//bottomPanel_120 (Farm3Africa_fla.bottomPanel_120) package Farm3Africa_fla { import flash.display.*; public dynamic class bottomPanel_120 extends MovieClip { public var menuBtn:MovieClip; public var shopBtn:MovieClip; public function bottomPanel_120(){ super(); } } }//package Farm3Africa_fla
Section 195
//boxlineExpor_78 (Farm3Africa_fla.boxlineExpor_78) package Farm3Africa_fla { import flash.display.*; public dynamic class boxlineExpor_78 extends MovieClip { public function boxlineExpor_78(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 196
//buildCage_146 (Farm3Africa_fla.buildCage_146) package Farm3Africa_fla { import flash.display.*; public dynamic class buildCage_146 extends MovieClip { public function buildCage_146(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 197
//buyBtn_89 (Farm3Africa_fla.buyBtn_89) package Farm3Africa_fla { import flash.events.*; import flash.display.*; import flash.text.*; public dynamic class buyBtn_89 extends MovieClip { public var caption:TextField; public function buyBtn_89(){ super(); addFrameScript(0, frame1); } public function out(event:MouseEvent){ this.gotoAndStop(1); } function frame1(){ addEventListener(MouseEvent.MOUSE_OVER, over); addEventListener(MouseEvent.MOUSE_OUT, out); addEventListener(MouseEvent.MOUSE_DOWN, down); stop(); caption.mouseEnabled = false; } public function down(event:MouseEvent){ this.gotoAndStop(3); } public function over(event:MouseEvent){ this.gotoAndStop(2); } } }//package Farm3Africa_fla
Section 198
//buyButton_14 (Farm3Africa_fla.buyButton_14) package Farm3Africa_fla { import flash.display.*; import flash.text.*; public dynamic class buyButton_14 extends MovieClip { public var price:TextField; public function buyButton_14(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); price.mouseEnabled = false; } } }//package Farm3Africa_fla
Section 199
//buyButton_86 (Farm3Africa_fla.buyButton_86) package Farm3Africa_fla { import flash.display.*; import flash.text.*; public dynamic class buyButton_86 extends MovieClip { public var price:TextField; public function buyButton_86(){ super(); } } }//package Farm3Africa_fla
Section 200
//cage_18 (Farm3Africa_fla.cage_18) package Farm3Africa_fla { import flash.display.*; import flash.text.*; public dynamic class cage_18 extends MovieClip { public var bg:MovieClip; public var title:TextField; public var tick:MovieClip; public var buyBtn:MovieClip; public function cage_18(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 201
//Cake_20 (Farm3Africa_fla.Cake_20) package Farm3Africa_fla { import flash.display.*; import flash.text.*; public dynamic class Cake_20 extends MovieClip { public var bg:MovieClip; public var title:TextField; public var tick:MovieClip; public var buyBtn:MovieClip; public function Cake_20(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 202
//cake_body_34 (Farm3Africa_fla.cake_body_34) package Farm3Africa_fla { import flash.display.*; public dynamic class cake_body_34 extends MovieClip { public function cake_body_34(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 203
//car0_69 (Farm3Africa_fla.car0_69) package Farm3Africa_fla { import flash.display.*; public dynamic class car0_69 extends MovieClip { public function car0_69(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 204
//carOnTheRoad_62 (Farm3Africa_fla.carOnTheRoad_62) package Farm3Africa_fla { import flash.display.*; import flash.text.*; public dynamic class carOnTheRoad_62 extends MovieClip { public var body:MovieClip; public var money:TextField; public function carOnTheRoad_62(){ super(); } } }//package Farm3Africa_fla
Section 205
//cars_63 (Farm3Africa_fla.cars_63) package Farm3Africa_fla { import flash.display.*; public dynamic class cars_63 extends MovieClip { public function cars_63(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 206
//carShop_16 (Farm3Africa_fla.carShop_16) package Farm3Africa_fla { import flash.display.*; import flash.text.*; public dynamic class carShop_16 extends MovieClip { public var bg:MovieClip; public var title:TextField; public var tick:MovieClip; public var buyBtn:MovieClip; public function carShop_16(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 207
//chickenIcon_mc_142 (Farm3Africa_fla.chickenIcon_mc_142) package Farm3Africa_fla { import flash.events.*; import flash.display.*; public dynamic class chickenIcon_mc_142 extends MovieClip { public var active:Boolean; public function chickenIcon_mc_142(){ super(); addFrameScript(0, frame1); } public function out(event:MouseEvent=null):void{ if (active){ gotoAndStop("active"); }; } 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 down(event:MouseEvent=null):void{ if (active){ gotoAndStop("press"); }; } public function over(event:MouseEvent=null):void{ if (active){ gotoAndStop("over"); }; } } }//package Farm3Africa_fla
Section 208
//depot_15 (Farm3Africa_fla.depot_15) package Farm3Africa_fla { import flash.display.*; import flash.text.*; public dynamic class depot_15 extends MovieClip { public var bg:MovieClip; public var title:TextField; public var tick:MovieClip; public var buyBtn:MovieClip; public function depot_15(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 209
//dried_19 (Farm3Africa_fla.dried_19) package Farm3Africa_fla { import flash.display.*; import flash.text.*; public dynamic class dried_19 extends MovieClip { public var bg:MovieClip; public var title:TextField; public var tick:MovieClip; public var buyBtn:MovieClip; public function dried_19(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 210
//DriedEggs_body_36 (Farm3Africa_fla.DriedEggs_body_36) package Farm3Africa_fla { import flash.display.*; public dynamic class DriedEggs_body_36 extends MovieClip { public function DriedEggs_body_36(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 211
//floury_cake_21 (Farm3Africa_fla.floury_cake_21) package Farm3Africa_fla { import flash.display.*; import flash.text.*; public dynamic class floury_cake_21 extends MovieClip { public var bg:MovieClip; public var title:TextField; public var tick:MovieClip; public var buyBtn:MovieClip; public function floury_cake_21(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 212
//FlouryCake_body_32 (Farm3Africa_fla.FlouryCake_body_32) package Farm3Africa_fla { import flash.display.*; public dynamic class FlouryCake_body_32 extends MovieClip { public function FlouryCake_body_32(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 213
//goalItem_49 (Farm3Africa_fla.goalItem_49) package Farm3Africa_fla { import flash.display.*; import flash.text.*; public dynamic class goalItem_49 extends MovieClip { public var count:TextField; public var body:MovieClip; public function goalItem_49(){ super(); } } }//package Farm3Africa_fla
Section 214
//gold_113 (Farm3Africa_fla.gold_113) package Farm3Africa_fla { import flash.display.*; public dynamic class gold_113 extends MovieClip { public function gold_113(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 215
//helpBlockToolTip_104 (Farm3Africa_fla.helpBlockToolTip_104) package Farm3Africa_fla { import flash.display.*; import flash.text.*; public dynamic class helpBlockToolTip_104 extends MovieClip { public var okBtn:MovieClip; public var caption:TextField; public function helpBlockToolTip_104(){ super(); } } }//package Farm3Africa_fla
Section 216
//hungryProgress_149 (Farm3Africa_fla.hungryProgress_149) package Farm3Africa_fla { import flash.display.*; public dynamic class hungryProgress_149 extends MovieClip { public var _mask:MovieClip; public function hungryProgress_149(){ super(); } } }//package Farm3Africa_fla
Section 217
//hungryProgress_153 (Farm3Africa_fla.hungryProgress_153) package Farm3Africa_fla { import flash.display.*; public dynamic class hungryProgress_153 extends MovieClip { public var _mask:MovieClip; public function hungryProgress_153(){ super(); } } }//package Farm3Africa_fla
Section 218
//incubator_22 (Farm3Africa_fla.incubator_22) package Farm3Africa_fla { import flash.display.*; import flash.text.*; public dynamic class incubator_22 extends MovieClip { public var bg:MovieClip; public var title:TextField; public var tick:MovieClip; public var buyBtn:MovieClip; public function incubator_22(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 219
//incubator_body_30 (Farm3Africa_fla.incubator_body_30) package Farm3Africa_fla { import flash.display.*; public dynamic class incubator_body_30 extends MovieClip { public function incubator_body_30(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 220
//items_110 (Farm3Africa_fla.items_110) package Farm3Africa_fla { import flash.display.*; import flash.text.*; public dynamic class items_110 extends MovieClip { public var arrow:MovieClip; public var outCount:TextField; public var caption:TextField; public var inCount:TextField; public function items_110(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); caption.mouseEnabled = false; } } }//package Farm3Africa_fla
Section 221
//kubok_53 (Farm3Africa_fla.kubok_53) package Farm3Africa_fla { import flash.display.*; public dynamic class kubok_53 extends MovieClip { public function kubok_53(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 222
//logo_mc_91 (Farm3Africa_fla.logo_mc_91) package Farm3Africa_fla { import flash.display.*; public dynamic class logo_mc_91 extends MovieClip { public function logo_mc_91(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 223
//middleBtn_121 (Farm3Africa_fla.middleBtn_121) package Farm3Africa_fla { import flash.events.*; import flash.display.*; import flash.text.*; public dynamic class middleBtn_121 extends MovieClip { public var caption:TextField; public function middleBtn_121(){ super(); addFrameScript(0, frame1); } public function out(event:MouseEvent){ this.gotoAndStop(1); } function frame1(){ addEventListener(MouseEvent.MOUSE_OVER, over); addEventListener(MouseEvent.MOUSE_OUT, out); addEventListener(MouseEvent.MOUSE_DOWN, down); stop(); } public function down(event:MouseEvent){ this.gotoAndStop(3); } public function over(event:MouseEvent){ this.gotoAndStop(2); } } }//package Farm3Africa_fla
Section 224
//middleButton_7 (Farm3Africa_fla.middleButton_7) package Farm3Africa_fla { import flash.events.*; import flash.display.*; import flash.text.*; public dynamic class middleButton_7 extends MovieClip { public var caption:TextField; public function middleButton_7(){ super(); addFrameScript(0, frame1); } public function out(event:MouseEvent){ this.gotoAndStop(1); } function frame1(){ addEventListener(MouseEvent.MOUSE_OVER, over); addEventListener(MouseEvent.MOUSE_OUT, out); addEventListener(MouseEvent.MOUSE_DOWN, down); stop(); } public function down(event:MouseEvent){ this.gotoAndStop(3); } public function over(event:MouseEvent){ this.gotoAndStop(2); } } }//package Farm3Africa_fla
Section 225
//money_43 (Farm3Africa_fla.money_43) package Farm3Africa_fla { import flash.display.*; import flash.text.*; public dynamic class money_43 extends MovieClip { public var caption:TextField; public function money_43(){ super(); } } }//package Farm3Africa_fla
Section 226
//new_114 (Farm3Africa_fla.new_114) package Farm3Africa_fla { import flash.display.*; public dynamic class new_114 extends MovieClip { public function new_114(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 227
//none_115 (Farm3Africa_fla.none_115) package Farm3Africa_fla { import flash.display.*; public dynamic class none_115 extends MovieClip { public function none_115(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 228
//normal_116 (Farm3Africa_fla.normal_116) package Farm3Africa_fla { import flash.display.*; public dynamic class normal_116 extends MovieClip { public function normal_116(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 229
//okBtn_97 (Farm3Africa_fla.okBtn_97) package Farm3Africa_fla { import flash.events.*; import flash.display.*; import flash.text.*; public dynamic class okBtn_97 extends MovieClip { public var caption:TextField; public function okBtn_97(){ super(); addFrameScript(0, frame1); } public function out(event:MouseEvent){ this.gotoAndStop(1); } function frame1(){ stop(); addEventListener(MouseEvent.MOUSE_OVER, over); addEventListener(MouseEvent.MOUSE_OUT, out); addEventListener(MouseEvent.MOUSE_DOWN, down); } public function down(event:MouseEvent){ this.gotoAndStop(3); } public function over(event:MouseEvent){ this.gotoAndStop(2); } } }//package Farm3Africa_fla
Section 230
//okButton_105 (Farm3Africa_fla.okButton_105) package Farm3Africa_fla { import flash.events.*; import flash.display.*; import flash.text.*; public dynamic class okButton_105 extends MovieClip { public var caption:TextField; public function okButton_105(){ super(); addFrameScript(0, frame1); } public function out(event:MouseEvent){ this.gotoAndStop(1); } function frame1(){ addEventListener(MouseEvent.MOUSE_OVER, over); addEventListener(MouseEvent.MOUSE_OUT, out); stop(); } public function over(event:MouseEvent){ this.gotoAndStop(2); } } }//package Farm3Africa_fla
Section 231
//photo_132 (Farm3Africa_fla.photo_132) package Farm3Africa_fla { import flash.display.*; public dynamic class photo_132 extends MovieClip { public var avatar:MovieClip; public function photo_132(){ super(); } } }//package Farm3Africa_fla
Section 232
//pig_82 (Farm3Africa_fla.pig_82) package Farm3Africa_fla { import flash.display.*; public dynamic class pig_82 extends MovieClip { public function pig_82(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 233
//pigIcon_mc_141 (Farm3Africa_fla.pigIcon_mc_141) package Farm3Africa_fla { import flash.events.*; import flash.display.*; public dynamic class pigIcon_mc_141 extends MovieClip { public var active:Boolean; public function pigIcon_mc_141(){ super(); addFrameScript(0, frame1); } public function out(event:MouseEvent=null):void{ if (active){ gotoAndStop("active"); }; } 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 down(event:MouseEvent=null):void{ if (active){ gotoAndStop("press"); }; } public function over(event:MouseEvent=null):void{ if (active){ gotoAndStop("over"); }; } } }//package Farm3Africa_fla
Section 234
//plane_17 (Farm3Africa_fla.plane_17) package Farm3Africa_fla { import flash.display.*; import flash.text.*; public dynamic class plane_17 extends MovieClip { public var bg:MovieClip; public var title:TextField; public var tick:MovieClip; public var buyBtn:MovieClip; public function plane_17(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 235
//plane_77 (Farm3Africa_fla.plane_77) package Farm3Africa_fla { import flash.display.*; public dynamic class plane_77 extends MovieClip { public function plane_77(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 236
//plane_body_27 (Farm3Africa_fla.plane_body_27) package Farm3Africa_fla { import flash.display.*; public dynamic class plane_body_27 extends MovieClip { public function plane_body_27(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 237
//planeInTheSky_56 (Farm3Africa_fla.planeInTheSky_56) package Farm3Africa_fla { import flash.display.*; import flash.text.*; public dynamic class planeInTheSky_56 extends MovieClip { public var body:MovieClip; public var money:TextField; public function planeInTheSky_56(){ super(); } } }//package Farm3Africa_fla
Section 238
//planes_57 (Farm3Africa_fla.planes_57) package Farm3Africa_fla { import flash.display.*; public dynamic class planes_57 extends MovieClip { public function planes_57(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 239
//playerPanel_96 (Farm3Africa_fla.playerPanel_96) package Farm3Africa_fla { import flash.display.*; import flash.text.*; public dynamic class playerPanel_96 extends MovieClip { public var playerName:TextField; public var welcome:TextField; public var editBtn:MovieClip; public function playerPanel_96(){ super(); } } }//package Farm3Africa_fla
Section 240
//productionbody_20_10 (Farm3Africa_fla.productionbody_20_10) package Farm3Africa_fla { import flash.display.*; public dynamic class productionbody_20_10 extends MovieClip { public function productionbody_20_10(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 241
//productionbody_24 (Farm3Africa_fla.productionbody_24) package Farm3Africa_fla { import flash.display.*; public dynamic class productionbody_24 extends MovieClip { public function productionbody_24(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 242
//purposesItem_51 (Farm3Africa_fla.purposesItem_51) package Farm3Africa_fla { import flash.display.*; import flash.text.*; public dynamic class purposesItem_51 extends MovieClip { public var type_txt:TextField; public var count_txt:TextField; public var tick:MovieClip; public var body:MovieClip; public function purposesItem_51(){ super(); } } }//package Farm3Africa_fla
Section 243
//purposesItem_8 (Farm3Africa_fla.purposesItem_8) package Farm3Africa_fla { import flash.display.*; import flash.text.*; public dynamic class purposesItem_8 extends MovieClip { public var actual:TextField; public var tick:MovieClip; public var required:TextField; public var body:MovieClip; public function purposesItem_8(){ super(); } } }//package Farm3Africa_fla
Section 244
//purposesRibbon_6 (Farm3Africa_fla.purposesRibbon_6) package Farm3Africa_fla { import flash.display.*; import flash.text.*; public dynamic class purposesRibbon_6 extends MovieClip { public var time_txt:TextField; public function purposesRibbon_6(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 245
//silver_117 (Farm3Africa_fla.silver_117) package Farm3Africa_fla { import flash.display.*; public dynamic class silver_117 extends MovieClip { public function silver_117(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 246
//sklads_38 (Farm3Africa_fla.sklads_38) package Farm3Africa_fla { import flash.display.*; public dynamic class sklads_38 extends MovieClip { public function sklads_38(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 247
//smalButton_74 (Farm3Africa_fla.smalButton_74) package Farm3Africa_fla { import flash.display.*; import flash.text.*; public dynamic class smalButton_74 extends MovieClip { public var caption:TextField; public function smalButton_74(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 248
//SnaresPenguinBody_148 (Farm3Africa_fla.SnaresPenguinBody_148) package Farm3Africa_fla { import flash.display.*; public dynamic class SnaresPenguinBody_148 extends MovieClip { public function SnaresPenguinBody_148(){ super(); addFrameScript(23, frame24, 47, frame48, 83, frame84, 107, frame108, 131, frame132, 155, frame156, 179, frame180); } function frame156(){ gotoAndPlay("left"); } function frame84(){ gotoAndPlay("eat"); } function frame180(){ stop(); } function frame24(){ gotoAndPlay("down"); } function frame108(){ gotoAndPlay("up"); } function frame48(){ gotoAndPlay("down_left"); } function frame132(){ gotoAndPlay("left_up"); } } }//package Farm3Africa_fla
Section 249
//soundControl_92 (Farm3Africa_fla.soundControl_92) package Farm3Africa_fla { import flash.display.*; import flash.text.*; public dynamic class soundControl_92 extends MovieClip { public var caption:TextField; public function soundControl_92(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 250
//waterline_mc_41 (Farm3Africa_fla.waterline_mc_41) package Farm3Africa_fla { import flash.display.*; public dynamic class waterline_mc_41 extends MovieClip { public var progressMask:MovieClip; public function waterline_mc_41(){ super(); } } }//package Farm3Africa_fla
Section 251
//wellcopy_40 (Farm3Africa_fla.wellcopy_40) package Farm3Africa_fla { import flash.display.*; public dynamic class wellcopy_40 extends MovieClip { public function wellcopy_40(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 252
//wellShop_12 (Farm3Africa_fla.wellShop_12) package Farm3Africa_fla { import flash.display.*; import flash.text.*; public dynamic class wellShop_12 extends MovieClip { public var bg:MovieClip; public var title:TextField; public var tick:MovieClip; public var buyBtn:MovieClip; public function wellShop_12(){ super(); addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Farm3Africa_fla
Section 253
//Field (game.assets.Field) package game.assets { public class Field extends FieldTemplate { public function Field(){ super(); } } }//package game.assets
Section 254
//FieldTemplate (game.assets.FieldTemplate) package game.assets { import flash.display.*; public dynamic class FieldTemplate extends MovieClip { public function FieldTemplate(){ super(); } } }//package game.assets
Section 255
//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(posx:Number, posy:Number, stageInstance:DisplayObjectContainer=null){ super(); this.mouseChildren = false; this.mouseEnabled = false; gameController = GameController.instance; gameController.addEventListener(GameController.LEVEL_COMPLETED, destroy, false, 0, true); SoundManager.play("action_watering"); _stageInstance = stageInstance; this.x = posx; this.y = posy; 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(event: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(event:Event=null):void{ event.stopPropagation(); if (event.target.currentFrame == 13){ body.removeEventListener(Event.ENTER_FRAME, grow, false); this.body.stop(); }; } public function getGrass():Number{ if ((_capacity - 10) >= 0){ _capacity = (_capacity - 10); trace(_capacity); this.body.gotoAndStop((Math.ceil((_capacity / 10)) + 1)); return (_capacity); }; return (_capacity); } public function hasGrass():Number{ return (_capacity); } private function death(event:TimerEvent=null):void{ event.stopPropagation(); _capacity = (_capacity - 10); if (!_capacity){ destroy(); return; }; this.body.gotoAndStop(((_capacity / 10) + 1)); } public static function refreshIndexes():void{ var i:int; while (i < Grass.grassList.length) { Grass.grassList[i].index = i; i++; }; } public static function remove():void{ Grass.count--; Grass.refreshIndexes(); } public static function getNear(petX:Number, petY:Number):Grass{ var distanceList:Array = new Array(); var i:int; while (i < Grass.grassList.length) { distanceList.push(Math.sqrt((((petX - Grass.grassList[i].x) * (petX - Grass.grassList[i].x)) + ((petY - Grass.grassList[i].y) * (petY - Grass.grassList[i].y))))); Grass.grassList[i].distance = distanceList[i]; i++; }; Grass.grassList.sortOn("distance", Array.NUMERIC); Grass.refreshIndexes(); return (Grass.grassList[0]); } } }//package game.assets
Section 256
//GrassTemplate (game.assets.GrassTemplate) package game.assets { import flash.display.*; public dynamic class GrassTemplate extends MovieClip { public var body:MovieClip; public function GrassTemplate(){ super(); } } }//package game.assets
Section 257
//PlayGround (game.assets.PlayGround) package game.assets { public class PlayGround extends BackgroundTemplate { public static var instance:PlayGround; public function PlayGround(){ super(); instance = this; } } }//package game.assets
Section 258
//GameController (game.GameController) package game { import flash.events.*; import flash.display.*; import utils.*; import com.melesta.sound.*; public class GameController extends MovieClip { 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 CHANGE_MONEY:String = "shange_money"; public static var instance:GameController; public static var DESTROY_GAME:String = "destroy_game"; public static var PAUSE_GAME:String = "pause_game"; public function GameController(){ super(); 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 destroy():void{ dispatchEvent(new Event(DESTROY_GAME)); if (!SoundsList.muteMusic){ if (SoundsList.gameMusicSound){ SoundsList.gameMusicChannel.stop(); }; if (SoundsList.menuMusicSound){ SoundsList.menuMusicChannel.stop(); }; }; SoundsList.mute = true; SoundManager.mute(); } public function resume():void{ dispatchEvent(new Event(RESUME_GAME)); } } }//package game
Section 259
//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 extends MovieClip { 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 = new Array("DRIED_EGGS", "CAKE", "FLOURY_CAKE", "INCUBATOR"); super(); instance = this; } public function pause(event:Event=null):void{ _bearTimer.stop(); } public function get container():MovieClip{ return (_container); } private function carCame(event:Event=null):void{ SoundManager.play("car_came"); updateView(); } public function updateView(event:Event=null):void{ PetShop.instance.update(); BottomPanel.instance.update(); } public function addBear(event:TimerEvent=null):void{ var currentBear:Array; _bearTime++; if (_bearList.length > 0){ currentBear = _bearList[0].split(","); if (_bearTime >= Number(currentBear[1])){ PetsContainer.instance.addPet(currentBear[0], 0); _bearList.shift(); }; } else { _bearTime = 0; _bearTimer.stop(); }; } public function addHouses():void{ addPets(); _bearTimer.start(); BottomPanel.instance.startTime(); var housesLength:Number = currentLevelXML.child("Houses").child("h").length(); var houseType:Number = 0; var houseUpgrade:Number = 0; var posIndex:Number = 0; var housesList:Array = new Array(); var i:int; while (i < housesLength) { houseType = Number(currentLevelXML.child("Houses").h[i].@Type); houseUpgrade = Number(currentLevelXML.child("Houses").h[i].@Upgrade); posIndex = Number(currentLevelXML.child("Houses").h[i].@PosIndex); HouseContainer.instance.addHouse(houseTypes[houseType], posIndex, houseUpgrade, (i * 0.2)); i++; }; HouseContainer.instance.addHouse("WELL", 2, 0, (housesLength * 0.2)); if (Config.currentLevel > 3){ HouseContainer.instance.addHouse("PLANE", 2, 0, ((housesLength * 0.2) + 0.2)); }; HouseContainer.instance.addHouse("DEPOT", 2, 0, ((housesLength * 0.2) + 0.8)); if (Config.currentLevel > 1){ HouseContainer.instance.addHouse("CAR", 2, 0, ((housesLength * 0.2) + 0.6)); }; } public function addMoney(event:MouseEvent=null):void{ Road.instance.addMoney(10000); } private function gold(event:MouseEvent=null):void{ ResultsWindow.instance.show(); } public function createLevel(level:Number=1):void{ var goalType:Number; var bearType:String; var bearTime:String; var purpose:String; currentLevel = level; Config.currentLevel = level; currentLevelXML = Config.getLevel(level); var goalsLength:Number = currentLevelXML.child("Goals").child("g").length(); LevelStatistics.accessProduct = new Array(); var p:int; while (p < currentLevelXML.child("AccessProduct").child("c").length()) { LevelStatistics.accessProduct.push(Number(currentLevelXML.child("AccessProduct").c[p].@Product)); p++; }; LevelStatistics.goals = new Array(0, 0, 0, 0, 0, 0, 0, 0, 0); LevelStatistics.purposes = new Array(); var i:int; while (i < goalsLength) { goalType = Number(currentLevelXML.child("Goals").g[i].@Type); purpose = ((ProductTypes.numberToType(goalType) + ",") + Number(currentLevelXML.child("Goals").g[i].@Val)); LevelStatistics.purposes.push(purpose); i++; }; _bearTime = 0; _bearList = new Array(); var bearLength:Number = currentLevelXML.child("BearTimes").child("t").length(); var j:int; while (j < bearLength) { bearType = ((currentLevelXML.child("BearTimes").t[j].@Type == "0")) ? "POLAR_BEAR" : "BROWN"; bearTime = currentLevelXML.child("BearTimes").t[j].@Time; _bearList.push(((bearType + ",") + bearTime)); j++; }; goals.show(); LevelStatistics.updateStatistics(); Road.instance.setMoney(Number(currentLevelXML.@StartMoney)); bottomPanel.init(); bottomPanel.animate(); updateView(); } public function set container(value:MovieClip):void{ _container = value; } public function resume(event:Event=null):void{ _bearTimer.start(); } public function addPets():void{ Penguin.count = 0; Penguin.penguinList = new Array(); KingPenguin.count = 0; KingPenguin.penguinList = new Array(); var petsLength:Number = currentLevelXML.child("StartPets").child("p").length(); var petType:Number = 0; var petsList:Array = new Array(); var i:int; while (i < petsLength) { petType = Number(currentLevelXML.child("StartPets").p[i].@Type); if (petType){ PetsContainer.instance.addPet("KING_PENGUIN", (0.2 * i)); } else { PetsContainer.instance.addPet("PENGUIN", (0.2 * i)); }; i++; }; 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 = 350; 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 260
//CakeHouse (houses.CakeHouse) package houses { import flash.events.*; import flash.display.*; import flash.geom.*; import flash.filters.*; import ui.*; import shop.*; import game.*; import market.road.*; import pets.*; import flash.media.*; import utils.*; import production.*; import caurina.transitions.properties.*; import com.melesta.sound.*; import caurina.transitions.*; public class CakeHouse extends CakeHouseTemplate { private var posX:Number; private var posY:Number; private var left:Number;// = 1 private var madedProduction:Number;// = 0 private var _progress:WorkLine; private var _countAnimation:Number;// = 15 private var _upgrade:Number;// = 1 private var gameController:GameController; private var _upgradeButton:UpgradeButton; private var _working:Boolean;// = false private var _stageInstance:DisplayObjectContainer; public static var output:String = "CAKE"; public static var upgradeCost:Array = new Array(200, 300, 400, 500, 600); public static var input:Array = new Array("DRIED_EGGS"); public static var firstShow:Boolean = true; public function CakeHouse(stageInstance:DisplayObjectContainer, upgrd:Number, position:Array, delay:Number){ super(); 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); stageInstance.addChild(this); _progress = new WorkLine(); addChild(_progress); _stageInstance = stageInstance; var point:Point = new Point(position[0], position[1]); show(point, delay); 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); _upgrade = upgrd; _upgradeButton = new UpgradeButton(); _upgradeButton.x = -20; _upgradeButton.y = -50; _upgradeButton.target = this; addChild(_upgradeButton); upgrade(upgrd); this.width = Math.ceil(this.width); this.height = Math.ceil(this.height); FilterShortcuts.init(); body.mouseChildren = (body.mouseEnabled = false); } public function destroy(event:Event=null):void{ Tweener.removeTweens(body); removeEventListener(MouseEvent.MOUSE_DOWN, onClick); removeEventListener(MouseEvent.ROLL_OVER, dropShadow); removeEventListener(MouseEvent.ROLL_OVER, removeShadow); 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); } private function remove():void{ _stageInstance.removeChild(this); activeArea.removeEventListener(MouseEvent.MOUSE_DOWN, onClick); activeArea.removeEventListener(MouseEvent.ROLL_OVER, dropShadow); activeArea.removeEventListener(MouseEvent.ROLL_OVER, removeShadow); } public function removeShadow(event:MouseEvent=null):void{ Tooltip.instance.hide(); var mtx:Array = [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0]; var mtxFilter:ColorMatrixFilter = new ColorMatrixFilter(mtx); Tweener.addTween(this.body, {_ColorMatrix_matrix:mtx, time:0.5, delay:0.1}); } private function makeProduction():void{ var ypos:Number; _working = false; while (madedProduction > 0) { ypos = 0; if (y > 400){ ypos = ((this.y - 40) - (Math.random() * 20)); } else { ypos = ((this.y - 20) - (Math.random() * 20)); }; PetsContainer.instance.addProduct(output, ((this.x - (left * 80)) - ((left * Math.random()) * 20)), ypos); madedProduction--; _progress.setProgress(0); }; } private function landing():void{ left = ((this.x)<300) ? -1 : 1; _progress.x = (-(left) * 50); _progress.y = -20; _upgradeButton.x = (left * 40); _upgradeButton.y = -30; SoundManager.play("house_landing", 1, new SoundTransform(1, left)); updateMoney(); if (((firstShow) && (!(Config.skiped)))){ firstShow = false; BlockTooltip.instance.show(this.x, this.y, Config.currentLanguage.tooltips.bakery); }; } public function animate():void{ _countAnimation--; _progress.setProgress(((37 * (15 - _countAnimation)) / 15)); if (_countAnimation > 0){ Tweener.removeTweens(this.body); Tweener.addTween(this.body, {scaleX:0.8, time:0.2, delay:0, transition:"linear"}); Tweener.addTween(this.body, {scaleY:1.1, time:0.2, delay:0, transition:"linear"}); Tweener.addTween(this.body, {scaleY:1, time:0.2, delay:0.2, transition:"linear"}); Tweener.addTween(this.body, {scaleX:1, time:0.2, delay:0.2, transition:"linear"}); Tweener.addTween(this.body, {scaleY:0.8, time:0.2, delay:0.2, transition:"linear"}); Tweener.addTween(this.body, {scaleX:1.1, time:0.2, delay:0.4, transition:"linear", onComplete:animate}); } else { Tweener.addTween(this.body, {scaleX:1, time:0.2, delay:0, transition:"linear"}); Tweener.addTween(this.body, {scaleY:1, time:0.2, delay:0, transition:"linear", onComplete:makeProduction}); }; Road.instance.addMoney(0); } public function upgrade(level:Number):void{ this.body.gotoAndStop(level); if (_upgrade <= (ShopWindow.availableUpgrades[6] - 1)){ _upgradeButton.caption.text = upgradeCost[(_upgrade - 1)]; Fonts.applyDefaultFont(_upgradeButton.caption); }; if (_upgrade > (ShopWindow.availableUpgrades[6] - 1)){ _upgradeButton.destroy(); }; } public function onClick(event:MouseEvent=null):void{ var i:int; var movingProduction:MovingProduction; if (!_working){ _countAnimation = 15; madedProduction = Depot.instance.getProduction(input, _upgrade); if (madedProduction > 0){ i = 0; while (i < madedProduction) { movingProduction = new MovingProduction("DRIED_EGGS", this.x, (this.y - 15), (i / 7)); i++; }; _working = true; animate(); SoundManager.play("house_click", 1); }; }; } public function resume(event:Event=null):void{ Tweener.resumeTweens(this); Tweener.resumeTweens(this.body); } public function nextUpgrade():void{ Road.instance.addMoney(-(Number(upgradeCost[(_upgrade - 1)]))); _upgrade++; upgrade(_upgrade); SoundManager.play("action_upgrade", 1); } public function dropShadow(event:MouseEvent=null):void{ Tooltip.instance.show(x, y, output, _upgrade, Config.currentLanguage.bakery); var mtx: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 mtxFilter:ColorMatrixFilter = new ColorMatrixFilter(mtx); Tweener.addTween(this.body, {_ColorMatrix_matrix:mtx, time:0.5, delay:0.1}); } public function pause(event:Event=null):void{ Tweener.pauseTweens(this.body); Tweener.pauseTweens(this); } public function show(position:Point, delay:Number):void{ this.x = position.x; this.y = -50; Tweener.addTween(this, {y:(position.y + 15), time:0.4, delay:delay, transition:"easeInQuint", onComplete:landing}); } public function updateMoney(event:Event=null):void{ if (_upgradeButton){ if (upgradeCost[(_upgrade - 1)] <= Road.currentMoney){ _upgradeButton.disabled(true); } else { _upgradeButton.disabled(false); }; }; } } }//package houses
Section 261
//Depot (houses.Depot) package houses { import flash.events.*; import flash.display.*; import flash.geom.*; import flash.filters.*; import ui.*; import shop.*; import game.*; import market.road.*; import utils.*; import market.*; import vehicles.*; import production.*; import caurina.transitions.properties.*; import com.melesta.sound.*; import caurina.transitions.*; public class Depot extends DepotTemplate { private var _container:MovieClip; private var _pruductionList:Array; private var _productionPrice:Array; private var _capacityList:Array; private var startTooltip:Boolean;// = false private var _importProduction:ExportWindow; private var _posX:Number;// = 0 private var _posY:Number;// = 0 private var _upgradePosition:Array; private var _productionDepotSize:Array; private var _currentItem:Number;// = 0 private var _upgradeButton:UpgradeButton; private var _stageInstance:DisplayObjectContainer; private var gameController:GameController; private var _productionCarSize:Array; public static var instance:Depot; public static var upgradeLevel:Number = 0; public static var upgradeCost:Array = new Array(150, 500, 1000, 10000); public static var _production:Array = new Array(0, 0, 0, 0, 0, 0, 0); public function Depot(stageInstance:DisplayObjectContainer, level:Number, delay:Number){ var depotProduct:DepotProduct; _upgradePosition = new Array(0, -8); _capacityList = new Array(50, 150, 300, 600); _productionDepotSize = new Array(1, 2, 4, 5, 6, 1.5, 20); _productionPrice = new Array(10, 100, 50, 100, 200, 10, 100, 50, 500); _productionCarSize = new Array(10, 10, 5, 5, 5, 5, 1, 5, 2); super(); instance = this; gameController = GameController.instance; _stageInstance = stageInstance; _container = new MovieClip(); gameController.addEventListener(GameController.LEVEL_COMPLETED, destroy, false, 0, true); gameController.addEventListener(GameController.CHANGE_MONEY, updateMoney, false, 0, true); _stageInstance.addChild(_container); _container.addChild(this); upgradeLevel = level; SoundManager.registerSoundAsset("house_landing", house_landing); _pruductionList = new Array(); var point:Point = new Point(277, 430); show(point, delay); this.mouseEnabled = false; body.addEventListener(MouseEvent.MOUSE_OVER, dropShadow, false, 0, true); body.addEventListener(MouseEvent.MOUSE_OUT, removeShadow, false, 0, true); body.addEventListener(MouseEvent.MOUSE_DOWN, showMarket, false, 0, true); var i:int; var j:int; var productionContainer:Sprite = new Sprite(); addChild(productionContainer); i = 0; while (j <= 7) { i = 0; while (i < 5) { depotProduct = new DepotProduct(); productionContainer.addChild(depotProduct); depotProduct.y = (-35 - (i * 9.4)); depotProduct.x = (-42 + (j * 9.4)); _pruductionList.push(depotProduct); i++; }; j++; }; productionContainer.mouseEnabled = false; productionContainer.mouseChildren = false; this.cacheAsBitmap = true; _importProduction = new ExportWindow(this, stageInstance); _upgradeButton = new UpgradeButton(); _upgradeButton.x = _upgradePosition[0]; _upgradeButton.y = _upgradePosition[1]; _upgradeButton.target = this; addChild(_upgradeButton); upgrade(upgradeLevel); this.width = Math.ceil(this.width); this.height = Math.ceil(this.height); FilterShortcuts.init(); } public function destroy(event:Event=null):void{ body.removeEventListener(MouseEvent.MOUSE_DOWN, onClick); body.removeEventListener(MouseEvent.ROLL_OUT, hideTooltip); removeEventListener(MouseEvent.MOUSE_DOWN, onClick); removeEventListener(MouseEvent.ROLL_OVER, dropShadow); removeEventListener(MouseEvent.ROLL_OVER, removeShadow); gameController.removeEventListener(GameController.LEVEL_COMPLETED, destroy); gameController.removeEventListener(GameController.CHANGE_MONEY, updateMoney); _production = new Array(0, 0, 0, 0, 0, 0, 0); _container.removeChild(this); _stageInstance.removeChild(_container); } public function animate():void{ } private function remove():void{ body.removeEventListener(MouseEvent.MOUSE_DOWN, onClick); body.removeEventListener(MouseEvent.ROLL_OUT, hideTooltip); removeEventListener(MouseEvent.ROLL_OVER, dropShadow); removeEventListener(MouseEvent.ROLL_OVER, removeShadow); } public function addProduct(type:String):Boolean{ var product:Number = ProductTypes.typeToNumber(type); if ((((freeSpace() - _productionDepotSize[product]))>=0) ? true : false){ putProduct(product); return (true); }; FArrow.instance.show((this.x + 50), (this.y - 100)); return (false); } public function updateMoney(event:Event=null):void{ if (_upgradeButton){ if (Depot.upgradeCost[upgradeLevel] <= Road.currentMoney){ _upgradeButton.disabled(true); } else { _upgradeButton.disabled(false); }; }; } private function freeSpace():Number{ var space:Number = 0; var i:Number = 0; while (i < _production.length) { space = (space + (_production[i] * _productionDepotSize[i])); i++; }; return ((_capacityList[upgradeLevel] - space)); } public function removeShadow(event:MouseEvent=null):void{ event.stopPropagation(); var mtx:Array = [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0]; var mtxFilter:ColorMatrixFilter = new ColorMatrixFilter(mtx); Tweener.addTween(this.body, {_ColorMatrix_matrix:mtx, time:0.5, delay:0.1}); Tooltip.instance.hide(); } public function show(position:Point, delay:Number):void{ this.x = position.x; this.y = -50; Tweener.addTween(this, {y:position.y, time:0.4, delay:delay, transition:"easeInQuint", onComplete:landing}); } private function hideTooltip(event:MouseEvent=null):void{ Tooltip.instance.hide(); } private function putProduct(type:Number):void{ var _local2 = _production; var _local3 = type; var _local4 = (_local2[_local3] + 1); _local2[_local3] = _local4; _local2 = LevelStatistics.goals; _local3 = type; _local4 = (_local2[_local3] + 1); _local2[_local3] = _local4; LevelStatistics.updateStatistics(); updateDepotView(); } public function onClick(event:MouseEvent=null):void{ } public function upgrade(level:Number):void{ this.body.gotoAndStop((level + 1)); updateDepotView(); if (upgradeLevel <= (ShopWindow.availableUpgrades[2] - 1)){ _upgradeButton.caption.text = Depot.upgradeCost[upgradeLevel]; Fonts.applyDefaultFont(_upgradeButton.caption); }; if (upgradeLevel > (ShopWindow.availableUpgrades[2] - 1)){ _upgradeButton.destroy(); }; Road.instance.addMoney(0); } public function nextUpgrade():void{ Road.instance.addMoney(-(Number(Depot.upgradeCost[upgradeLevel]))); upgradeLevel++; upgrade(upgradeLevel); SoundManager.play("action_upgrade", 1); } public function showMarket(event:MouseEvent=null):void{ if (Car.instance){ if (Car.instance.visible){ SoundManager.play("house_click", 1); _importProduction.show(); }; }; } public function productionSize(type:Number):Number{ var capacity:Number = _productionDepotSize[type]; return (((40 / _capacityList[upgradeLevel]) * capacity)); } public function dropShadow(event:MouseEvent=null):void{ event.stopPropagation(); var mtx: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 mtxFilter:ColorMatrixFilter = new ColorMatrixFilter(mtx); Tweener.addTween(this.body, {_ColorMatrix_matrix:mtx, time:0.5, delay:0.1}); Tooltip.instance.show(x, (y - 50), "DEPOT", upgradeLevel, "Склад"); } public function updateDepotView():void{ var j:int; var k:int; while (k < 40) { _pruductionList[k].hide(); k++; }; var item:Number = 0; var i:int; while (i < _production.length) { j = 0; while (j < Math.ceil((_production[i] * productionSize(i)))) { _pruductionList[item].show(i); if (item < 39){ item++; } else { break; }; j++; }; i++; }; } private function landing():void{ SoundManager.play("house_landing", 1); updateMoney(); } public function getProduction(type:Array, count:Number):Number{ var product:Number; var products:Array = new Array(); var i:int; while (i < type.length) { product = _production[ProductTypes.typeToNumber(type[i])]; products.push(product); i++; }; products.sort(Array.NUMERIC); var delta:Number = count; if (count > products[0]){ delta = products[0]; }; var j:int; while (j < type.length) { _production[ProductTypes.typeToNumber(type[j])] = (_production[ProductTypes.typeToNumber(type[j])] - delta); j++; }; updateDepotView(); return (delta); } } }//package houses
Section 262
//DepotTemplate (houses.DepotTemplate) package houses { import flash.display.*; public dynamic class DepotTemplate extends MovieClip { public var body:MovieClip; public function DepotTemplate(){ super(); addFrameScript(0, frame1); } function frame1(){ } } }//package houses
Section 263
//DriedEggsHouse (houses.DriedEggsHouse) package houses { import flash.events.*; import flash.display.*; import flash.geom.*; import flash.filters.*; import ui.*; import shop.*; import game.*; import market.road.*; import pets.*; import flash.media.*; import utils.*; import production.*; import caurina.transitions.properties.*; import com.melesta.sound.*; import caurina.transitions.*; public class DriedEggsHouse extends PowderedHouseTemplate { private var posX:Number; private var posY:Number; private var left:Number;// = 1 private var madedProduction:Number;// = 0 private var _progress:WorkLine; private var _countAnimation:Number;// = 15 private var _upgrade:Number;// = 1 private var gameController:GameController; private var _upgradeButton:UpgradeButton; private var _working:Boolean;// = false private var _stageInstance:DisplayObjectContainer; public static var output:String = "DRIED_EGGS"; public static var upgradeCost:Array = new Array(150, 200, 250, 300, 350); public static var input:Array = new Array("EGG"); public static var firstShow:Boolean = true; public function DriedEggsHouse(stageInstance:DisplayObjectContainer, upgrd:Number, position:Array, delay:Number){ super(); 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); stageInstance.addChild(this); _progress = new WorkLine(); addChild(_progress); _stageInstance = stageInstance; var point:Point = new Point(position[0], position[1]); show(point, delay); 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); _upgrade = upgrd; _upgradeButton = new UpgradeButton(); _upgradeButton.x = -20; _upgradeButton.y = -50; _upgradeButton.target = this; addChild(_upgradeButton); upgrade(upgrd); this.width = Math.ceil(this.width); this.height = Math.ceil(this.height); FilterShortcuts.init(); body.mouseChildren = (body.mouseEnabled = false); } public function destroy(event:Event=null):void{ Tweener.removeTweens(body); removeEventListener(MouseEvent.MOUSE_DOWN, onClick); removeEventListener(MouseEvent.ROLL_OVER, dropShadow); removeEventListener(MouseEvent.ROLL_OVER, removeShadow); 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); } private function remove():void{ _stageInstance.removeChild(this); activeArea.removeEventListener(MouseEvent.MOUSE_DOWN, onClick); activeArea.removeEventListener(MouseEvent.ROLL_OVER, dropShadow); activeArea.removeEventListener(MouseEvent.ROLL_OVER, removeShadow); } public function removeShadow(event:MouseEvent=null):void{ Tooltip.instance.hide(); var mtx:Array = [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0]; var mtxFilter:ColorMatrixFilter = new ColorMatrixFilter(mtx); Tweener.addTween(this.body, {_ColorMatrix_matrix:mtx, time:0.5, delay:0.1}); } private function makeProduction():void{ var ypos:Number; _working = false; while (madedProduction > 0) { ypos = 0; if (y > 400){ ypos = ((this.y - 40) - (Math.random() * 20)); } else { ypos = ((this.y - 20) - (Math.random() * 20)); }; PetsContainer.instance.addProduct(output, ((this.x - (left * 80)) - ((left * Math.random()) * 20)), ypos); madedProduction--; _progress.setProgress(0); }; } private function landing():void{ left = ((this.x)<300) ? -1 : 1; _progress.x = (-(left) * 50); _progress.y = -20; _upgradeButton.x = (left * 40); _upgradeButton.y = -30; SoundManager.play("house_landing", 1, new SoundTransform(1, left)); updateMoney(); if (((firstShow) && (!(Config.skiped)))){ firstShow = false; BlockTooltip.instance.show(this.x, this.y, Config.currentLanguage.tooltips.powdered); }; } public function animate():void{ _countAnimation--; _progress.setProgress(((37 * (15 - _countAnimation)) / 15)); if (_countAnimation > 0){ Tweener.removeTweens(this.body); Tweener.addTween(this.body, {scaleX:0.8, time:0.2, delay:0, transition:"linear"}); Tweener.addTween(this.body, {scaleY:1.1, time:0.2, delay:0, transition:"linear"}); Tweener.addTween(this.body, {scaleY:1, time:0.2, delay:0.2, transition:"linear"}); Tweener.addTween(this.body, {scaleX:1, time:0.2, delay:0.2, transition:"linear"}); Tweener.addTween(this.body, {scaleY:0.8, time:0.2, delay:0.2, transition:"linear"}); Tweener.addTween(this.body, {scaleX:1.1, time:0.2, delay:0.4, transition:"linear", onComplete:animate}); } else { Tweener.addTween(this.body, {scaleX:1, time:0.2, delay:0, transition:"linear"}); Tweener.addTween(this.body, {scaleY:1, time:0.2, delay:0, transition:"linear", onComplete:makeProduction}); }; Road.instance.addMoney(0); } public function upgrade(level:Number):void{ this.body.gotoAndStop(level); if (_upgrade <= (ShopWindow.availableUpgrades[5] - 1)){ _upgradeButton.caption.text = upgradeCost[(_upgrade - 1)]; Fonts.applyDefaultFont(_upgradeButton.caption); }; if (_upgrade > (ShopWindow.availableUpgrades[5] - 1)){ _upgradeButton.destroy(); }; } public function onClick(event:MouseEvent=null):void{ var i:int; var movingProduction:MovingProduction; if (!_working){ _countAnimation = 15; madedProduction = Depot.instance.getProduction(input, _upgrade); if (madedProduction > 0){ i = 0; while (i < madedProduction) { movingProduction = new MovingProduction("EGG", this.x, (this.y - 15), (i / 7)); i++; }; _working = true; animate(); SoundManager.play("house_click", 1); }; }; } public function resume(event:Event=null):void{ Tweener.resumeTweens(this); Tweener.resumeTweens(this.body); } public function nextUpgrade():void{ Road.instance.addMoney(-(Number(upgradeCost[(_upgrade - 1)]))); _upgrade++; upgrade(_upgrade); SoundManager.play("action_upgrade", 1); } public function dropShadow(event:MouseEvent=null):void{ Tooltip.instance.show(x, y, output, _upgrade, Config.currentLanguage.powdered); var mtx: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 mtxFilter:ColorMatrixFilter = new ColorMatrixFilter(mtx); Tweener.addTween(this.body, {_ColorMatrix_matrix:mtx, time:0.5, delay:0.1}); } public function pause(event:Event=null):void{ Tweener.pauseTweens(this.body); Tweener.pauseTweens(this); } public function show(position:Point, delay:Number):void{ this.x = position.x; this.y = -50; Tweener.addTween(this, {y:(position.y + 15), time:0.4, delay:delay, transition:"easeInQuint", onComplete:landing}); } public function updateMoney(event:Event=null):void{ if (_upgradeButton){ if (upgradeCost[(_upgrade - 1)] <= Road.currentMoney){ _upgradeButton.disabled(true); } else { _upgradeButton.disabled(false); }; }; } } }//package houses
Section 264
//FlouryCakeHouse (houses.FlouryCakeHouse) package houses { import flash.events.*; import flash.display.*; import flash.geom.*; import flash.filters.*; import ui.*; import shop.*; import game.*; import market.road.*; import pets.*; import flash.media.*; import utils.*; import production.*; import caurina.transitions.properties.*; import com.melesta.sound.*; import caurina.transitions.*; public class FlouryCakeHouse extends FlouryCakeHouseTemplate { private var posX:Number; private var posY:Number; private var left:Number;// = 1 private var madedProduction:Number;// = 0 private var _progress:WorkLine; private var _countAnimation:Number;// = 15 private var _upgrade:Number;// = 1 private var gameController:GameController; private var _upgradeButton:UpgradeButton; private var _working:Boolean;// = false private var _stageInstance:DisplayObjectContainer; public static var output:String = "FLOURY_CAKE"; public static var upgradeCost:Array = new Array(300, 400, 500, 600, 700); public static var input:Array = new Array("CAKE", "FLOUR"); public static var firstShow:Boolean = true; public function FlouryCakeHouse(stageInstance:DisplayObjectContainer, upgrd:Number, position:Array, delay:Number){ super(); 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); stageInstance.addChild(this); _progress = new WorkLine(); addChild(_progress); _stageInstance = stageInstance; var point:Point = new Point(position[0], position[1]); show(point, delay); 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); _upgrade = upgrd; _upgradeButton = new UpgradeButton(); _upgradeButton.x = -20; _upgradeButton.y = -50; _upgradeButton.target = this; addChild(_upgradeButton); upgrade(upgrd); this.width = Math.ceil(this.width); this.height = Math.ceil(this.height); FilterShortcuts.init(); body.mouseChildren = (body.mouseEnabled = false); } public function destroy(event:Event=null):void{ Tweener.removeTweens(body); removeEventListener(MouseEvent.MOUSE_DOWN, onClick); removeEventListener(MouseEvent.ROLL_OVER, dropShadow); removeEventListener(MouseEvent.ROLL_OVER, removeShadow); 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); } private function remove():void{ _stageInstance.removeChild(this); activeArea.removeEventListener(MouseEvent.MOUSE_DOWN, onClick); activeArea.removeEventListener(MouseEvent.ROLL_OVER, dropShadow); activeArea.removeEventListener(MouseEvent.ROLL_OVER, removeShadow); } public function removeShadow(event:MouseEvent=null):void{ Tooltip.instance.hide(); var mtx:Array = [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0]; var mtxFilter:ColorMatrixFilter = new ColorMatrixFilter(mtx); Tweener.addTween(this.body, {_ColorMatrix_matrix:mtx, time:0.5, delay:0.1}); } private function makeProduction():void{ var ypos:Number; _working = false; while (madedProduction > 0) { ypos = 0; if (y > 400){ ypos = ((this.y - 40) - (Math.random() * 20)); } else { ypos = ((this.y - 20) - (Math.random() * 20)); }; PetsContainer.instance.addProduct(output, ((this.x - (left * 80)) - ((left * Math.random()) * 20)), ypos); madedProduction--; _progress.setProgress(0); }; } private function landing():void{ left = ((this.x)<300) ? -1 : 1; _progress.x = (-(left) * 50); _progress.y = -20; _upgradeButton.x = (left * 40); _upgradeButton.y = -30; SoundManager.play("house_landing", 1, new SoundTransform(1, left)); updateMoney(); if (((firstShow) && (!(Config.skiped)))){ firstShow = false; BlockTooltip.instance.show(this.x, this.y, Config.currentLanguage.tooltips.confectionery); }; } public function animate():void{ _countAnimation--; _progress.setProgress(((37 * (15 - _countAnimation)) / 15)); if (_countAnimation > 0){ Tweener.removeTweens(this.body); Tweener.addTween(this.body, {scaleX:0.8, time:0.2, delay:0, transition:"linear"}); Tweener.addTween(this.body, {scaleY:1.1, time:0.2, delay:0, transition:"linear"}); Tweener.addTween(this.body, {scaleY:1, time:0.2, delay:0.2, transition:"linear"}); Tweener.addTween(this.body, {scaleX:1, time:0.2, delay:0.2, transition:"linear"}); Tweener.addTween(this.body, {scaleY:0.8, time:0.2, delay:0.2, transition:"linear"}); Tweener.addTween(this.body, {scaleX:1.1, time:0.2, delay:0.4, transition:"linear", onComplete:animate}); } else { Tweener.addTween(this.body, {scaleX:1, time:0.2, delay:0, transition:"linear"}); Tweener.addTween(this.body, {scaleY:1, time:0.2, delay:0, transition:"linear", onComplete:makeProduction}); }; Road.instance.addMoney(0); } public function upgrade(level:Number):void{ this.body.gotoAndStop(level); if (_upgrade <= (ShopWindow.availableUpgrades[7] - 1)){ _upgradeButton.caption.text = upgradeCost[(_upgrade - 1)]; Fonts.applyDefaultFont(_upgradeButton.caption); }; if (_upgrade > (ShopWindow.availableUpgrades[7] - 1)){ _upgradeButton.destroy(); }; } public function onClick(event:MouseEvent=null):void{ var i:int; var movingProduction:MovingProduction; var movingProduction2:MovingProduction; if (!_working){ _countAnimation = 15; madedProduction = Depot.instance.getProduction(input, _upgrade); if (madedProduction > 0){ i = 0; while (i < madedProduction) { movingProduction = new MovingProduction("FLOUR", this.x, (this.y - 15), (i / 7)); movingProduction2 = new MovingProduction("CAKE", this.x, (this.y - 15), (i / 7), true); i++; }; _working = true; animate(); SoundManager.play("house_click", 1); }; }; } public function resume(event:Event=null):void{ Tweener.resumeTweens(this); Tweener.resumeTweens(this.body); } public function nextUpgrade():void{ Road.instance.addMoney(-(Number(upgradeCost[(_upgrade - 1)]))); _upgrade++; upgrade(_upgrade); SoundManager.play("action_upgrade", 1); } public function dropShadow(event:MouseEvent=null):void{ Tooltip.instance.show(x, y, output, _upgrade, Config.currentLanguage.confectionery); var mtx: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 mtxFilter:ColorMatrixFilter = new ColorMatrixFilter(mtx); Tweener.addTween(this.body, {_ColorMatrix_matrix:mtx, time:0.5, delay:0.1}); } public function pause(event:Event=null):void{ Tweener.pauseTweens(this.body); Tweener.pauseTweens(this); } public function show(position:Point, delay:Number):void{ this.x = position.x; this.y = -50; Tweener.addTween(this, {y:(position.y + 15), time:0.4, delay:delay, transition:"easeInQuint", onComplete:landing}); } public function updateMoney(event:Event=null):void{ if (_upgradeButton){ if (upgradeCost[(_upgrade - 1)] <= Road.currentMoney){ _upgradeButton.disabled(true); } else { _upgradeButton.disabled(false); }; }; } } }//package houses
Section 265
//HouseContainer (houses.HouseContainer) package houses { import flash.display.*; import flash.geom.*; import vehicles.*; public class HouseContainer { private var _stageInstance:DisplayObjectContainer; public static var instance:HouseContainer; public static var positionList:Array = new Array("100,160", "70,246", "80,340", "455,158", "487,240", "487,340", "490,360"); public function HouseContainer(stageInstance:DisplayObjectContainer=null):void{ super(); instance = this; _stageInstance = stageInstance; } public function addHouse(type:String, posIndex:Number, upgrade:Number=0, delay:Number=0):void{ var housePlate:HousePlate; var pos:Array; var _local7:*; var _local8:*; var _local9:DriedEggsHouse; var _local10:*; var _local11:Depot; var _local12:Well; var _local13:Car; var _local14:Plane; if (((((((((!(upgrade)) && (!((type == "DEPOT"))))) && (!((type == "CAR"))))) && (!((type == "WELL"))))) && (!((type == "PLANE"))))){ housePlate = new HousePlate(_stageInstance, type, posIndex, delay); } else { pos = positionList[posIndex].split(","); switch (type){ case "CAKE": _local7 = new CakeHouse(_stageInstance, upgrade, pos, delay); break; case "INCUBATOR": _local8 = new Incubator(_stageInstance, upgrade, pos, delay); break; case "DRIED_EGGS": _local9 = new DriedEggsHouse(_stageInstance, upgrade, pos, delay); break; case "FLOURY_CAKE": _local10 = new FlouryCakeHouse(_stageInstance, upgrade, pos, delay); break; case "DEPOT": _local11 = new Depot(_stageInstance, upgrade, delay); break; case "WELL": _local12 = new Well(_stageInstance, upgrade, delay); break; case "CAR": _local13 = new Car(_stageInstance, upgrade, delay); break; case "PLANE": _local14 = new Plane(_stageInstance, upgrade, delay); break; }; }; } } }//package houses
Section 266
//HousePlate (houses.HousePlate) package houses { import flash.events.*; import flash.display.*; import flash.filters.*; import ui.*; import game.*; import market.road.*; import flash.media.*; import utils.*; import production.*; import com.melesta.sound.*; import caurina.transitions.*; 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 _icon:ViewProduction; 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 types:Array = new Array("DRIED_EGGS", "CAKE", "FLOURY_CAKE", "INCUBATOR"); public static var cost:Array = new Array(150, 200, 300, 270); public function HousePlate(stageInstance:DisplayObjectContainer, type:String, posIndex:Number, delay:Number){ super(); stageInstance.addChild(this); gameController = GameController.instance; gameController.addEventListener(GameController.LEVEL_COMPLETED, destroy, false, 0, true); gameController.addEventListener(GameController.CHANGE_MONEY, updateMoney, false, 0, true); _stageInstance = stageInstance; positionIndex = posIndex; _icon = new ViewProduction(type); _type = type; _icon.y = -53; addChild(_icon); _icon.scaleX = (_icon.scaleY = 0.6); show(delay); buyButton.price.text = cost[getHouseIndex(_type)]; Fonts.applyDefaultFont(buyButton.price); 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(event: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(event: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 out(event:MouseEvent):void{ if (active){ this.buyButton.gotoAndStop("active"); }; } private function click(event: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(event:MouseEvent):void{ if (active){ this.buyButton.gotoAndStop("over"); }; } 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(event: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(delay:Number):void{ var position:Array = HouseContainer.positionList[positionIndex].split(","); this.x = position[0]; this.y = -50; Tweener.addTween(this, {y:position[1], time:0.4, delay:delay, transition:"easeInQuint", onComplete:landing}); updateMoney(); } public static function getHouseIndex(house:String):Number{ switch (house){ case "DRIED_EGGS": return (0); case "CAKE": return (1); case "FLOURY_CAKE": return (2); case "INCUBATOR": return (3); }; return (0); } } }//package houses
Section 267
//HousePlateTemplate (houses.HousePlateTemplate) package houses { import flash.display.*; public dynamic class HousePlateTemplate extends MovieClip { public var buyButton:MovieClip; public function HousePlateTemplate(){ super(); } } }//package houses
Section 268
//Incubator (houses.Incubator) package houses { import flash.events.*; import flash.display.*; import flash.geom.*; import flash.filters.*; import ui.*; import shop.*; import game.*; import market.road.*; import pets.*; import flash.media.*; import utils.*; import production.*; import caurina.transitions.properties.*; import com.melesta.sound.*; import caurina.transitions.*; public class Incubator extends IncubatorTemplate { private var posX:Number; private var posY:Number; private var left:Number;// = 1 private var madedProduction:Number;// = 0 private var _progress:WorkLine; private var _countAnimation:Number;// = 15 private var _upgrade:Number;// = 1 private var gameController:GameController; private var _upgradeButton:UpgradeButton; private var _working:Boolean;// = false private var _stageInstance:DisplayObjectContainer; public static var output:String = "PENGUIN"; public static var upgradeCost:Array = new Array(270, 320, 370, 420, 470); public static var input:Array = new Array("EGG"); public static var firstShow:Boolean = true; public function Incubator(stageInstance:DisplayObjectContainer, upgrd:Number, position:Array, delay:Number){ super(); 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); stageInstance.addChild(this); _progress = new WorkLine(); addChild(_progress); _stageInstance = stageInstance; var point:Point = new Point(position[0], position[1]); show(point, delay); 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); _upgrade = upgrd; _upgradeButton = new UpgradeButton(); _upgradeButton.x = -20; _upgradeButton.y = -50; _upgradeButton.target = this; addChild(_upgradeButton); upgrade(upgrd); this.width = Math.ceil(this.width); this.height = Math.ceil(this.height); FilterShortcuts.init(); body.mouseChildren = (body.mouseEnabled = false); } public function destroy(event:Event=null):void{ Tweener.removeTweens(body); removeEventListener(MouseEvent.MOUSE_DOWN, onClick); removeEventListener(MouseEvent.ROLL_OVER, dropShadow); removeEventListener(MouseEvent.ROLL_OVER, removeShadow); 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); } private function remove():void{ _stageInstance.removeChild(this); activeArea.removeEventListener(MouseEvent.MOUSE_DOWN, onClick); activeArea.removeEventListener(MouseEvent.ROLL_OVER, dropShadow); activeArea.removeEventListener(MouseEvent.ROLL_OVER, removeShadow); } public function removeShadow(event:MouseEvent=null):void{ Tooltip.instance.hide(); var mtx:Array = [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0]; var mtxFilter:ColorMatrixFilter = new ColorMatrixFilter(mtx); Tweener.addTween(this.body, {_ColorMatrix_matrix:mtx, time:0.5, delay:0.1}); } private function makeProduction():void{ var ypos:Number; _working = false; while (madedProduction > 0) { ypos = 0; if (y > 400){ ypos = ((this.y - 40) - (Math.random() * 20)); } else { ypos = ((this.y - 20) - (Math.random() * 20)); }; PetsContainer.instance.makePet(output, ((this.x - (left * 80)) - ((left * Math.random()) * 20)), ypos); madedProduction--; _progress.setProgress(0); }; } private function landing():void{ left = ((this.x)<300) ? -1 : 1; _progress.x = (-(left) * 50); _progress.y = -20; _upgradeButton.x = (left * 40); _upgradeButton.y = -30; SoundManager.play("house_landing", 1, new SoundTransform(1, left)); updateMoney(); if (((firstShow) && (!(Config.skiped)))){ firstShow = false; BlockTooltip.instance.show(this.x, this.y, Config.currentLanguage.tooltips.incubator); }; } public function animate():void{ _countAnimation--; _progress.setProgress(((37 * (15 - _countAnimation)) / 15)); if (_countAnimation > 0){ Tweener.removeTweens(this.body); Tweener.addTween(this.body, {scaleX:0.8, time:0.2, delay:0, transition:"linear"}); Tweener.addTween(this.body, {scaleY:1.1, time:0.2, delay:0, transition:"linear"}); Tweener.addTween(this.body, {scaleY:1, time:0.2, delay:0.2, transition:"linear"}); Tweener.addTween(this.body, {scaleX:1, time:0.2, delay:0.2, transition:"linear"}); Tweener.addTween(this.body, {scaleY:0.8, time:0.2, delay:0.2, transition:"linear"}); Tweener.addTween(this.body, {scaleX:1.1, time:0.2, delay:0.4, transition:"linear", onComplete:animate}); } else { Tweener.addTween(this.body, {scaleX:1, time:0.2, delay:0, transition:"linear"}); Tweener.addTween(this.body, {scaleY:1, time:0.2, delay:0, transition:"linear", onComplete:makeProduction}); }; Road.instance.addMoney(0); } public function upgrade(level:Number):void{ this.body.gotoAndStop(level); if (_upgrade <= (ShopWindow.availableUpgrades[8] - 1)){ _upgradeButton.caption.text = upgradeCost[(_upgrade - 1)]; Fonts.applyDefaultFont(_upgradeButton.caption); }; if (_upgrade > (ShopWindow.availableUpgrades[8] - 1)){ _upgradeButton.destroy(); }; } public function onClick(event:MouseEvent=null):void{ var i:int; var movingProduction:MovingProduction; if (!_working){ _countAnimation = 15; madedProduction = Depot.instance.getProduction(input, _upgrade); if (madedProduction > 0){ i = 0; while (i < madedProduction) { movingProduction = new MovingProduction("EGG", this.x, (this.y - 15), (i / 7)); i++; }; _working = true; animate(); SoundManager.play("house_click", 1); }; }; } public function resume(event:Event=null):void{ Tweener.resumeTweens(this); Tweener.resumeTweens(this.body); } public function nextUpgrade():void{ Road.instance.addMoney(-(Number(upgradeCost[(_upgrade - 1)]))); _upgrade++; upgrade(_upgrade); SoundManager.play("action_upgrade", 1); } public function dropShadow(event:MouseEvent=null):void{ Tooltip.instance.show(x, y, "INCUBATOR", _upgrade, Config.currentLanguage.incubator); var mtx: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 mtxFilter:ColorMatrixFilter = new ColorMatrixFilter(mtx); Tweener.addTween(this.body, {_ColorMatrix_matrix:mtx, time:0.5, delay:0.1}); } public function pause(event:Event=null):void{ Tweener.pauseTweens(this.body); Tweener.pauseTweens(this); } public function show(position:Point, delay:Number):void{ this.x = position.x; this.y = -50; Tweener.addTween(this, {y:(position.y + 15), time:0.4, delay:delay, transition:"easeInQuint", onComplete:landing}); } public function updateMoney(event:Event=null):void{ if (_upgradeButton){ if (upgradeCost[(_upgrade - 1)] <= Road.currentMoney){ _upgradeButton.disabled(true); } else { _upgradeButton.disabled(false); }; }; } } }//package houses
Section 269
//UpgradeButton (houses.UpgradeButton) package houses { import flash.events.*; import flash.display.*; public class UpgradeButton extends UpgradeButtonTemplate { private var active:Boolean;// = true private var _target:MovieClip; public function UpgradeButton(){ super(); 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(target:MovieClip):void{ _target = target; } public function disabled(value:Boolean):void{ if (value){ this.active = true; this.gotoAndStop("active"); } else { this.active = false; this.gotoAndStop("disable"); }; } public function click(event:MouseEvent):void{ if (active){ this.gotoAndStop("press"); }; } public function out(event:MouseEvent):void{ if (active){ this.gotoAndStop("active"); }; } public function get target():MovieClip{ return (_target); } public function over(event: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); _target.removeChild(this); } private function upgrade(event:MouseEvent=null):void{ if (this.active){ target.nextUpgrade(); }; } } }//package houses
Section 270
//UpgradeButtonTemplate (houses.UpgradeButtonTemplate) package houses { import flash.display.*; import flash.text.*; public dynamic class UpgradeButtonTemplate extends MovieClip { public var caption:TextField; public function UpgradeButtonTemplate(){ super(); addFrameScript(0, frame1, 6, frame7); } function frame7(){ stop(); } function frame1(){ stop(); } } }//package houses
Section 271
//Well (houses.Well) package houses { import flash.events.*; import flash.display.*; import flash.geom.*; import flash.filters.*; import flash.utils.*; import ui.*; import shop.*; import game.*; import market.road.*; import flash.media.*; import utils.*; import com.melesta.sound.*; import caurina.transitions.*; public class Well extends MovieClip { private var startTooltip:Boolean;// = false private var posX:Number; private var posY:Number; private var tooltipTimer:Timer; private var container:MovieClip; private var _watering:SoundChannel; private var _countAnimation:Number;// = 0 private var well:WellTest; private var _size:Number;// = 100 private var _deltaWater:Array; private var _upgradePosition:Array; private var _upgradeLevel:Number;// = 0 private var gameController:GameController; private var _stageInstance:DisplayObjectContainer; private var _upgradeButton:UpgradeButton; private var _countSteps:Number;// = 0 public static var waterPrice:Array = new Array(19, 17, 10, 7); public static var instance:Well; public static var state:String = "full"; public static var upgradeCost:Array = new Array(250, 500, 1500, 5000); public static var firstShow:Boolean = true; public function Well(stageInstance:DisplayObjectContainer, level:Number, delay:Number){ _upgradePosition = new Array(-50, -30); _deltaWater = new Array(20, 15, 10, 1); super(); instance = this; state = "full"; 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); _upgradeLevel = level; _watering = new SoundChannel(); _stageInstance = (stageInstance as Sprite); stageInstance.addChild(this); SoundManager.registerSoundAsset("house_landing", house_landing); var point:Point = new Point(267, 135); show(point, delay); container = new MovieClip(); addChild(container); well = new WellTest(); well.activeArea.addEventListener(MouseEvent.MOUSE_DOWN, onClick, false, 0, true); container.addChild(well); well.body.mouseChildren = (well.body.mouseEnabled = false); _upgradeButton = new UpgradeButton(); _upgradeButton.x = _upgradePosition[0]; _upgradeButton.y = _upgradePosition[1]; _upgradeButton.target = this; addChild(_upgradeButton); upgrade(_upgradeLevel); } private function remove():void{ well.activeArea.removeEventListener(MouseEvent.MOUSE_DOWN, onClick); well.removeListeners(); } private function landing():void{ SoundManager.play("house_landing", 1); updateMoney(); } public function show(position:Point, delay:Number):void{ this.x = position.x; this.y = -50; Tweener.addTween(this, {y:position.y, time:0.4, delay:delay, transition:"easeInQuint", onComplete:landing}); } private function hideTooltip(event:MouseEvent=null):void{ Tooltip.instance.hide(); } public function setWater():void{ well.waterline.progressMask.height = (50 - ((45 * (10 - _countAnimation)) / 10)); } public function onClick(event:MouseEvent=null):void{ if ((((Road.levelMoney > Well.waterPrice[_upgradeLevel])) && ((Well.state == "empty")))){ Road.instance.addMoney(-(Well.waterPrice[_upgradeLevel])); Well.state = "working"; _watering = SoundManager.play("action_well", 1); _countAnimation = 0; animate(); }; if ((((Road.levelMoney < Well.waterPrice[_upgradeLevel])) && ((Well.state == "empty")))){ FArrow.instance.show((this.x + 150), (this.y - 100)); SoundManager.play("fool_action", 1); }; } public function upgrade(level:Number):void{ well.body.gotoAndStop((level + 1)); if (_upgradeLevel <= (ShopWindow.availableUpgrades[1] - 1)){ _upgradeButton.caption.text = Well.upgradeCost[_upgradeLevel]; Fonts.applyDefaultFont(_upgradeButton.caption); }; if (_upgradeLevel > (ShopWindow.availableUpgrades[1] - 1)){ _upgradeButton.destroy(); }; well.money.caption.text = String(Well.waterPrice[_upgradeLevel]); Fonts.applyDefaultFont(well.money.caption); Road.instance.addMoney(0); } public function resume(event:Event):void{ Tweener.resumeTweens(well.body); if (Well.state == "working"){ _watering = SoundManager.play("action_well", 1); }; } public function animate():void{ _countAnimation++; if (_countAnimation < 10){ setWater(); Tweener.removeTweens(well.body); Tweener.addTween(well.body, {scaleX:0.8, time:0.2, delay:0, transition:"linear"}); Tweener.addTween(well.body, {scaleY:1.1, time:0.2, delay:0, transition:"linear"}); Tweener.addTween(well.body, {scaleY:1, time:0.2, delay:0.2, transition:"linear"}); Tweener.addTween(well.body, {scaleX:1, time:0.2, delay:0.2, transition:"linear"}); Tweener.addTween(well.body, {scaleY:0.8, time:0.2, delay:0.2, transition:"linear"}); Tweener.addTween(well.body, {scaleX:1.1, time:0.2, delay:0.2, transition:"linear", onComplete:animate}); } else { Tweener.addTween(well.body, {scaleY:1, time:0.2, transition:"linear"}); Tweener.addTween(well.body, {scaleX:1, time:0.2, transition:"linear"}); Well.state = "full"; _watering.stop(); }; } public function nextUpgrade():void{ Road.instance.addMoney(-(Number(Well.upgradeCost[_upgradeLevel]))); _upgradeLevel++; upgrade(_upgradeLevel); SoundManager.play("action_upgrade", 1); } public function getWater():Boolean{ if (Well.state == "full"){ well.money.visible = false; _countSteps++; if (Math.ceil((100 / _deltaWater[_upgradeLevel])) > _countSteps){ well.waterline.progressMask.height = ((40 * (100 - (_deltaWater[_upgradeLevel] * _countSteps))) / 100); return (true); }; if (Math.ceil((100 / _deltaWater[_upgradeLevel])) == _countSteps){ FArrow.instance.show((this.x + 10), (this.y - 60)); well.waterline.progressMask.height = 0; Well.state = "empty"; well.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); } public function destroy(event:Event=null):void{ _watering.stop(); well.activeArea.removeEventListener(MouseEvent.MOUSE_DOWN, onClick); well.activeArea.removeEventListener(MouseEvent.ROLL_OUT, hideTooltip); well.removeListeners(); gameController.removeEventListener(GameController.LEVEL_COMPLETED, destroy); gameController.removeEventListener(GameController.CHANGE_MONEY, updateMoney); gameController.removeEventListener(GameController.RESUME_GAME, resume); gameController.removeEventListener(GameController.PAUSE_GAME, pause); container.removeChild(well); removeChild(container); _stageInstance.removeChild(this); } public function pause(event:Event):void{ Tweener.pauseTweens(well.body); _watering.stop(); } public function updateMoney(event:Event=null):void{ if (_upgradeButton){ if (Well.upgradeCost[_upgradeLevel] <= Road.currentMoney){ _upgradeButton.disabled(true); } else { _upgradeButton.disabled(false); }; }; } } }//package houses
Section 272
//WellTemplate (houses.WellTemplate) package houses { import flash.display.*; public dynamic class WellTemplate extends MovieClip { public var waterline:MovieClip; public var body:MovieClip; public var activeArea:MovieClip; public var money:MovieClip; public function WellTemplate(){ super(); addFrameScript(0, frame1); } function frame1(){ } } }//package houses
Section 273
//WellTest (houses.WellTest) package houses { import flash.events.*; import flash.filters.*; import flash.utils.*; import ui.*; import caurina.transitions.properties.*; import caurina.transitions.*; public class WellTest extends WellTemplate { private var startTooltip:Boolean;// = false private var timer:Timer; public function WellTest(){ super(); activeArea.addEventListener(MouseEvent.ROLL_OVER, dropShadow, false, 0, true); activeArea.addEventListener(MouseEvent.ROLL_OUT, removeShadow, false, 0, true); money.visible = false; this.width = Math.ceil(this.width); this.height = Math.ceil(this.height); body.mouseChildren = (body.mouseChildren = false); body.enabled = false; FilterShortcuts.init(); } public function removeShadow(event:MouseEvent=null):void{ event.stopPropagation(); var mtx:Array = [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0]; var mtxFilter:ColorMatrixFilter = new ColorMatrixFilter(mtx); Tweener.addTween(this.body, {_ColorMatrix_matrix:mtx, time:0.5, delay:0.1}); Tooltip.instance.hide(); } public function removeListeners():void{ activeArea.removeEventListener(MouseEvent.MOUSE_OVER, dropShadow); activeArea.removeEventListener(MouseEvent.MOUSE_OUT, removeShadow); } public function dropShadow(event:MouseEvent=null):void{ event.stopPropagation(); var mtx: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 mtxFilter:ColorMatrixFilter = new ColorMatrixFilter(mtx); Tweener.addTween(this.body, {_ColorMatrix_matrix:mtx, time:0.5, delay:0.1}); Tooltip.instance.show(270, 150, "WELL", 0, "WELL"); } } }//package houses
Section 274
//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 states:Array; public var _state:String;// = "inaccessible" public var level:Number; private var _positions:Array; 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(index:Number, stateIndex:Number){ _positions = new Array("92,85", "112, 104", "131, 124", "103,141", "73,160", "47,180", "66,202", "89,223", "111,245", "78,268", "46,289", "14,312", "40,340", "63,364", "87,389", "118,371", "149,347", "186,319", "208,339"); states = new Array("inaccessible", "none", "novel", "normal", "silver", "gold"); super(); this.x = _positions[index].split(",")[0]; this.y = _positions[index].split(",")[1]; this.level = (index + 1); this.state = states[stateIndex]; 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(event:MouseEvent=null):void{ if (state != "none"){ MapWindow.instance.hide(level); } else { ShopWindow.instance.show(); }; } public function set state(value:String):void{ _state = value; } public function press(event:MouseEvent=null):void{ _currentView.gotoAndStop(3); MapTooltip.instance.hide(); } public function out(event:MouseEvent=null):void{ _currentView.gotoAndStop(1); MapTooltip.instance.hide(); } public function update():void{ var i:int = this.numChildren; while (i--) { this.getChildAt(i).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(event: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 i:int; while (i < MapNode.nodeList.length) { MapNode.nodeList[i].update(); i++; }; } } }//package map
Section 275
//MapWindow (map.MapWindow) package map { import flash.events.*; import flash.display.*; import ui.*; import shop.*; import flash.net.*; import game.*; import utils.*; import com.melesta.sound.*; import caurina.transitions.*; 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(){ super(); instance = this; shopBtn = bottomPanel.shopBtn; menuBtn = bottomPanel.menuBtn; shopBtn.caption.text = Config.currentLanguage.shop; Fonts.applyDefaultFont(shopBtn.caption); menuBtn.caption.text = Config.currentLanguage.menu; Fonts.applyDefaultFont(menuBtn.caption); 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_OVER, btnOver, false, 0, true); shopBtn.addEventListener(MouseEvent.MOUSE_OVER, btnOver, false, 0, true); var i:int; while (i < 19) { addChild(new MapNode(i, 0)); i++; }; this.visible = false; buyBtn.caption.mouseEnabled = false; buyBtn.stop(); buyBtn.caption.htmlText = Config.currentLanguage.download_full_version; buyBtn.addEventListener(MouseEvent.MOUSE_OVER, btnOver, 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; buyBtn.visible = true; }; if (Farm2.portal == "kongregeat"){ buyBtn.visible = false; _shadow.visible = false; }; } public function hide(level:Number=1):void{ var level = level; 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 xml:XML; var accessLength:Number; var accessList:Array; var accessType:String; var accessValue:String; var i:int; if (LevelBuilder.maxLevel != 20){ MapNode.nodeList[(LevelBuilder.maxLevel - 1)].state = "novel"; xml = Config.getLevel(LevelBuilder.maxLevel); accessLength = xml.child("Accessibility").child("c").length(); accessList = new Array(); i = 0; while (i < accessLength) { accessType = xml.child("Accessibility").c[i].@CritID; accessValue = xml.child("Accessibility").c[i].@Value; accessList.push(((accessType + ",") + accessValue)); i++; }; needIndex = -1; if (!ShopWindow.isAvailable(accessList)){ MapNode.nodeList[(LevelBuilder.maxLevel - 1)].state = "none"; needIndex = (Number(accessList[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 i:int; while (i < 11) { MapNode.nodeList[i].state = "normal"; Config.nodes[i] = "normal"; i++; }; 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(event:MouseEvent=null):void{ MapTooltip.instance.hide(); ShopWindow.instance.show(); } private function buy(event:MouseEvent=null):void{ var request:URLRequest = new URLRequest(Config.downloadLink); navigateToURL(request, "_blank"); } private function btnOver(event:MouseEvent=null):void{ event.stopPropagation(); SoundManager.play("ui_button_hover"); } public function startGame():void{ this.visible = true; this.alpha = 1; MapNode.nodeList[0].state = "novel"; MapNode.updateViews(); var skipDialog:SkipEducationDialog = new SkipEducationDialog(); addChild(skipDialog); skipDialog.show(); StartScreen.instance.musicBtn.container = "map"; addChild(StartScreen.instance.musicBtn); addChild(StartScreen.instance.soundBtn); } public function startFirstLevel():void{ hide(1); } private function showMenu(event: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 i:int; while (i < (Config.level - 1)) { MapNode.nodeList[i].state = Config.nodes[i]; MapNode.nodeList[i].update(); i++; }; ShopWindow.availableUpgrades = new Array(0, 0, 0, 0, 0, 0, 0, 0, 0); var j:int; while (j < 10) { ShopWindow.availableUpgrades[j] = Config.upgrades[j]; j++; }; ShopWindow.instance.updateUpgradesViews(); MapNode.updateViews(); updateViews(); } } }//package map
Section 276
//Road (market.road.Road) package market.road { import flash.events.*; import game.*; import pets.*; import utils.*; import market.*; import vehicles.*; import com.melesta.sound.*; import caurina.transitions.*; 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(); 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(value:Number=0):void{ levelMoney = value; currentMoney = value; money.text = String(levelMoney); Fonts.applyDefaultFont(money); dispatchEvent(new Event(Road.UPDATE_MONEY)); GameController.instance.changeMoney(); } public function levelCompleted(event: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(moneyValue:Number, upgrade:Number):void{ Car.instance.visible = false; _carUpgrade = upgrade; car.body.gotoAndStop((upgrade + 1)); car.body.scaleX = -1; car.money.text = String(moneyValue); Fonts.applyDefaultFont(car.money); car.visible = true; car.x = 100; Tweener.addTween(car, {x:205, time:(upgradeForces[_carUpgrade] / 2), transition:"linear", onComplete:backCar}); } public function resume(event: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(event: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 product:*; plane.visible = false; dispatchEvent(new Event(Road.PLANE_CAME)); Plane.instance.visible = true; SoundManager.play("airplane_flyin"); var i:* = 0; while (i < ImportWindow.importProductionList.length) { product = ImportWindow.importProductionList[i].split(","); PetsContainer.instance.addFlyProduct(product[0], product[1]); i++; }; }}); } public function goPlane(moneyValue:Number, upgrade:Number):void{ _planeUpgrade = upgrade; dispatchEvent(new Event(Road.UPDATE_MONEY)); plane.body.gotoAndStop((upgrade + 1)); Plane.instance.visible = false; plane.body.scaleX = -1; plane.money.text = String(moneyValue); Fonts.applyDefaultFont(plane.money); 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(value:Number=0):void{ levelMoney = (levelMoney + value); money.text = String(levelMoney); Fonts.applyDefaultFont(money); currentMoney = (currentMoney + value); dispatchEvent(new Event(Road.UPDATE_MONEY)); GameController.instance.changeMoney(); } } }//package market.road
Section 277
//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 plane:MovieClip; public var money:TextField; public var car:MovieClip; public function RoadTemlate(){ super(); } } }//package market.road
Section 278
//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 = new Array(10, 10, 5, 5, 5, 5, 1, 5, 2); public function Box(){ super(); body.stop(); this.visible = false; this.type = -1; this.count = 0; } public function addProduct(typeS:String, countN:Number):Number{ var delta:Number; if (!count){ this.visible = true; this.body.gotoAndStop(typeS); type = ProductTypes.typeToNumber(typeS); }; if ((((count > 0)) && (!((type == ProductTypes.typeToNumber(typeS)))))){ return (0); }; if (count == sizeList[type]){ return (-1); }; if ((countN + count) <= sizeList[type]){ count = (count + countN); this.progress._mask.width = ((20 * count) / sizeList[type]); return (countN); }; if ((countN + count) > sizeList[type]){ delta = (sizeList[type] - count); count = (count + delta); this.progress._mask.width = ((20 * count) / sizeList[type]); return (delta); }; return (countN); } } }//package market
Section 279
//BoxTemplate (market.BoxTemplate) package market { import flash.display.*; public dynamic class BoxTemplate extends MovieClip { public var progress:MovieClip; public var body:MovieClip; public function BoxTemplate(){ super(); } } }//package market
Section 280
//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(_type:String, _count:Number, _cost:String){ super(); this.product.gotoAndStop(_type); this.count.text = String(_count); Fonts.applyDefaultFont(count); this.cost.text = _cost; Fonts.applyDefaultFont(cost); type = _type; one.caption.text = Config.currentLanguage.one; Fonts.applyDefaultFont(one.caption); all.caption.text = Config.currentLanguage.all; Fonts.applyDefaultFont(all.caption); one.gotoAndStop(1); all.gotoAndStop(1); one.addEventListener(MouseEvent.CLICK, chooseOne, false, 0, true); all.addEventListener(MouseEvent.CLICK, chooseAll, false, 0, true); all.addEventListener(MouseEvent.MOUSE_OVER, overA, false, 0, true); one.addEventListener(MouseEvent.MOUSE_OVER, overO, false, 0, true); all.addEventListener(MouseEvent.MOUSE_OUT, outA, false, 0, true); one.addEventListener(MouseEvent.MOUSE_OUT, outO, false, 0, true); } private function outO(event:MouseEvent=null):void{ one.gotoAndStop(1); } private function outA(event:MouseEvent=null):void{ all.gotoAndStop(1); } private function chooseAll(event:MouseEvent=null):void{ event.stopPropagation(); all.gotoAndStop(3); SoundManager.play("item_add", 1); dispatchEvent(new Event(ExportItem.CHOOSE_ALL)); } private function overO(event:MouseEvent=null):void{ event.stopPropagation(); one.gotoAndStop(2); } private function overA(event:MouseEvent=null):void{ event.stopPropagation(); all.gotoAndStop(2); } private function chooseOne(event:MouseEvent=null):void{ event.stopPropagation(); one.gotoAndStop(3); dispatchEvent(new Event(ExportItem.CHOOSE_ONE)); SoundManager.play("item_add", 1); } } }//package market
Section 281
//ExportItemTemplate (market.ExportItemTemplate) package market { import flash.display.*; import flash.text.*; public dynamic class ExportItemTemplate extends MovieClip { public var count:TextField; public var one:MovieClip; public var all:MovieClip; public var cost:TextField; public var product:MovieClip; public function ExportItemTemplate(){ super(); } } }//package market
Section 282
//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 com.melesta.sound.*; import caurina.transitions.*; public class ExportWindow extends ExportWindowTemplate { private var _money:Number;// = 0 private var _productionCarSize:Array; private var _boxList:Array; private var _boxContainer:Sprite; private var _typeList:Array; private var _productionPrice:Array; private var _carCapacity:Array; private var _marketProductionList:Array; private var _depot:Depot; private var itemContainer:Sprite; private var _boxPositions:Array; public static var firstShow:Boolean = true; public function ExportWindow(depot:Depot, stageInstance:DisplayObjectContainer){ _productionPrice = new Array(10, 100, 50, 100, 200, 10, 100, 50, 500); _typeList = new Array("EGG", "PLUME", "DRIED_EGGS", "CAKE", "FLOURY_CAKE", "FLOUR", "POLAR_BEAR", "PENGUIN", "KING_PENGUIN"); _boxPositions = new Array("409,268|433,268", "415,248|436,248|426,224", "416,276|439,276|462,276|427,253|450,253", "415,267|438,267|461,267|415,245|438,245|461,245|438,223"); _boxContainer = new Sprite(); _carCapacity = new Array(2, 3, 5, 7); _productionCarSize = new Array(10, 10, 5, 5, 5, 5, 1, 5, 2); super(); _depot = depot; itemContainer = new Sprite(); addChild(itemContainer); stageInstance.parent.parent.addChild(this); var simpleTooltip:SimpleTooltip = new SimpleTooltip(); stageInstance.parent.parent.addChild(simpleTooltip); title.text = Config.currentLanguage.ship_products; cancelBtn.caption.text = Config.currentLanguage.cancel; okBtn.caption.text = Config.currentLanguage.ship; this.visible = false; okBtn.addEventListener(MouseEvent.CLICK, hide, false, 0, true); cancelBtn.addEventListener(MouseEvent.CLICK, cancel, false, 0, true); addChild(_boxContainer); } public function updateItemsView():void{ var item:Number; var productItem:ExportItem; var penguinItem:ExportItem; var kingItem:ExportItem; var k:Number = 0; while (itemContainer.numChildren > 0) { itemContainer.removeChildAt((itemContainer.numChildren - 1)); }; var i:int; while (i < 7) { item = _marketProductionList[i]; if (item > 0){ productItem = new ExportItem(_typeList[i], item, _productionPrice[i]); itemContainer.addChild(productItem); productItem.y = (73 + (k * 22)); productItem.x = 35; k++; productItem.addEventListener(ExportItem.CHOOSE_ONE, chooseOne, false, 0, true); productItem.addEventListener(ExportItem.CHOOSE_ALL, chooseAll, false, 0, true); }; i++; }; var pet:Number = 0; if (_marketProductionList[7] > 0){ penguinItem = new ExportItem(_typeList[7], _marketProductionList[7], _productionPrice[7]); itemContainer.addChild(penguinItem); penguinItem.y = (73 + (pet * 22)); penguinItem.x = 404; pet++; penguinItem.addEventListener(ExportItem.CHOOSE_ONE, chooseOne, false, 0, true); penguinItem.addEventListener(ExportItem.CHOOSE_ALL, chooseAll, false, 0, true); }; if (_marketProductionList[8] > 0){ kingItem = new ExportItem(_typeList[8], _marketProductionList[8], _productionPrice[8]); itemContainer.addChild(kingItem); kingItem.y = (73 + (pet * 22)); kingItem.x = 404; kingItem.addEventListener(ExportItem.CHOOSE_ONE, chooseOne, false, 0, true); kingItem.addEventListener(ExportItem.CHOOSE_ALL, chooseAll, false, 0, true); }; } public function hide(event:MouseEvent=null):void{ var event = event; var p:int; while (p < 7) { 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[7])); KingPenguin.remove((KingPenguin.count - _marketProductionList[8])); GameController.instance.resume(); } public function show():void{ var box: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 p:int; while (p < Depot._production.length) { _marketProductionList[p] = Depot._production[p]; p++; }; _marketProductionList[7] = Penguin.count; _marketProductionList[8] = KingPenguin.count; Tweener.addTween(this, {alpha:1, time:0.5}); updateItemsView(); while (_boxContainer.numChildren > 0) { _boxContainer.removeChildAt((_boxContainer.numChildren - 1)); }; _boxList = new Array(); var boxes:Array = getBoxPositions(); var b:int; while (b < boxes.length) { box = new Box(); box.x = (boxes[b].split(",")[0] - 3); box.y = (boxes[b].split(",")[1] - 7); _boxContainer.addChild(box); _boxList.push(box); b++; }; if (((firstShow) && (!(Config.skiped)))){ SimpleTooltip.instance.show(Config.currentLanguage.tooltips.warehouse); firstShow = false; }; } private function chooseOne(event:Event=null):void{ event.stopPropagation(); var deltaProduction:Number = addProductToCar(event.target.type, 1); _marketProductionList[ProductTypes.typeToNumber(event.target.type)] = (_marketProductionList[ProductTypes.typeToNumber(event.target.type)] - deltaProduction); updateItemsView(); addMoney((deltaProduction * Number(event.target.cost.text))); } private function chooseAll(event:Event=null):void{ event.stopPropagation(); var deltaProduction:Number = addProductToCar(event.target.type, Number(event.target.count.text)); _marketProductionList[ProductTypes.typeToNumber(event.target.type)] = (_marketProductionList[ProductTypes.typeToNumber(event.target.type)] - deltaProduction); addMoney((deltaProduction * Number(event.target.cost.text))); updateItemsView(); } public function cancel(event:MouseEvent=null):void{ var event = event; 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(); } private function addMoney(cost:Number):void{ _money = (_money + cost); okBtn.visible = true; money.text = String(_money); } public function upgrade(level:Number=0):void{ car.gotoAndStop((Car.upgradeLevel + 1)); } private function addProductToCar(type:String, count:Number):Number{ var delta:Number = 0; var tempDelta:Number = 0; var i:int; while (i < _boxList.length) { tempDelta = _boxList[i].addProduct(type, count); if (tempDelta > 0){ delta = (delta + tempDelta); count = (count - tempDelta); if (count <= 0){ return (delta); }; }; i++; }; return (delta); } private function getBoxPositions():Array{ return (_boxPositions[Car.upgradeLevel].split("|")); } } }//package market
Section 283
//ExportWindowTemplate (market.ExportWindowTemplate) package market { import flash.display.*; import flash.text.*; public dynamic class ExportWindowTemplate extends MovieClip { public var title:TextField; public var cancelBtn:MovieClip; public var car:MovieClip; public var okBtn:MovieClip; public var money:TextField; public function ExportWindowTemplate(){ super(); } } }//package market
Section 284
//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(_type:String, _count:Number, _cost:String){ super(); this.product.gotoAndStop(_type); this.cost.text = _cost; Fonts.applyDefaultFont(cost); type = _type; one.caption.text = "1"; Fonts.applyDefaultFont(one.caption); five.caption.text = "5"; Fonts.applyDefaultFont(five.caption); ten.caption.text = "10"; Fonts.applyDefaultFont(ten.caption); 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); one.addEventListener(MouseEvent.MOUSE_DOWN, down, false, 0, true); five.addEventListener(MouseEvent.MOUSE_DOWN, down, false, 0, true); ten.addEventListener(MouseEvent.MOUSE_DOWN, down, false, 0, true); ten.addEventListener(MouseEvent.MOUSE_OVER, overT, false, 0, true); one.addEventListener(MouseEvent.MOUSE_OVER, overO, false, 0, true); five.addEventListener(MouseEvent.MOUSE_OVER, overF, false, 0, true); ten.addEventListener(MouseEvent.MOUSE_OUT, outT, false, 0, true); one.addEventListener(MouseEvent.MOUSE_OUT, outO, false, 0, true); five.addEventListener(MouseEvent.MOUSE_OUT, outF, 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 overT(event:MouseEvent=null):void{ event.stopPropagation(); ten.gotoAndStop(2); } private function outO(event:MouseEvent=null):void{ one.gotoAndStop(1); } public function down(event:MouseEvent=null):void{ event.stopPropagation(); event.target.gotoAndStop(3); } private function outT(event:MouseEvent=null):void{ ten.gotoAndStop(1); } private function chooseFive(event:MouseEvent=null):void{ event.stopPropagation(); SoundManager.play("item_add", 1); dispatchEvent(new Event(ImportItem.CHOOSE_FIVE)); } private function chooseTen(event:MouseEvent=null):void{ event.stopPropagation(); SoundManager.play("item_add", 1); dispatchEvent(new Event(ImportItem.CHOOSE_TEN)); } public function updateView(deltaMoney:Number=0):void{ if ((Road.currentMoney - deltaMoney) < (10 * Number(cost.text))){ ten.visible = false; }; if ((Road.currentMoney - deltaMoney) < (5 * Number(cost.text))){ five.visible = false; }; if ((Road.currentMoney - deltaMoney) < Number(cost.text)){ one.visible = false; }; } private function chooseOne(event:MouseEvent=null):void{ event.stopPropagation(); dispatchEvent(new Event(ImportItem.CHOOSE_ONE)); SoundManager.play("item_add", 1); } private function overF(event:MouseEvent=null):void{ event.stopPropagation(); five.gotoAndStop(2); } private function outF(event:MouseEvent=null):void{ five.gotoAndStop(1); } private function overO(event:MouseEvent=null):void{ event.stopPropagation(); one.gotoAndStop(2); } } }//package market
Section 285
//ImportItemTemplate (market.ImportItemTemplate) package market { import flash.display.*; import flash.text.*; public dynamic class ImportItemTemplate extends MovieClip { public var ten:MovieClip; public var one:MovieClip; public var five:MovieClip; public var cost:TextField; public var product:MovieClip; public function ImportItemTemplate(){ super(); } } }//package market
Section 286
//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 com.melesta.sound.*; import caurina.transitions.*; public class ImportWindow extends ImportWindowTemplate { private var _money:Number;// = 0 private var _productionPlaneSize:Array; private var _productionPrice:Array; private var _boxContainer:Sprite; private var _typeList:Array; private var _boxList:Array; private var _productItemList:Array; private var _carCapacity:Array; private var itemContainer:Sprite; private var _boxPositions:Array; public static var importProductionList:Array; public static var firstShow:Boolean = true; public function ImportWindow(stageInstance:DisplayObjectContainer){ _productionPrice = new Array(30, 200, 100, 200, 400, 20, 100, 1000); _typeList = new Array("EGG", "PLUME", "DRIED_EGGS", "CAKE", "FLOURY_CAKE", "FLOUR", "POLAR_BEAR", "PENGUIN", "KING_PENGUIN"); _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(); _carCapacity = new Array(2, 3, 5, 7); _productionPlaneSize = new Array(10, 10, 5, 5, 5, 5, 5, 2); super(); itemContainer = new Sprite(); addChild(itemContainer); stageInstance.parent.parent.addChild(this); cancelBtn.caption.text = Config.currentLanguage.cancel; Fonts.applyDefaultFont(cancelBtn.caption); okBtn.caption.text = Config.currentLanguage.order; Fonts.applyDefaultFont(okBtn.caption); title.text = Config.currentLanguage.order_products; Fonts.applyDefaultFont(title); this.visible = false; okBtn.addEventListener(MouseEvent.CLICK, hide, false, 0, true); cancelBtn.addEventListener(MouseEvent.CLICK, cancel, false, 0, true); addChild(_boxContainer); } public function updateItemsView():void{ var productItem:ImportItem; var k:Number = 0; while (itemContainer.numChildren > 0) { itemContainer.removeChildAt((itemContainer.numChildren - 1)); }; _productItemList = new Array(); var i:int; while (i < LevelStatistics.accessProduct.length) { productItem = new ImportItem(_typeList[LevelStatistics.accessProduct[i]], 1000, _productionPrice[LevelStatistics.accessProduct[i]]); itemContainer.addChild(productItem); productItem.y = (83 + (k * 24)); productItem.x = 35; k++; productItem.addEventListener(ImportItem.CHOOSE_ONE, chooseOne, false, 0, true); productItem.addEventListener(ImportItem.CHOOSE_TEN, chooseTen, false, 0, true); productItem.addEventListener(ImportItem.CHOOSE_FIVE, chooseFive, false, 0, true); _productItemList.push(productItem); i++; }; addMoney(0); } private function chooseTen(event:Event=null):void{ event.stopPropagation(); var deltaProduction:Number = addProductToPlane(event.target.type, 10); if (!deltaProduction){ }; addMoney((deltaProduction * Number(event.target.cost.text))); updateImportList(event.target.type, deltaProduction); } private function addProductToPlane(type:String, count:Number):Number{ var delta:Number = 0; var tempDelta:Number = 0; var i:int; while (i < _boxList.length) { tempDelta = _boxList[i].addProduct(type, count); if (tempDelta > 0){ delta = (delta + tempDelta); count = (count - tempDelta); if (count <= 0){ return (delta); }; }; i++; }; return (delta); } private function updateImportList(type:String, count:Number=0):Number{ var product:Array; var i:int; while (i < importProductionList.length) { product = importProductionList[i].split(","); if (product[0] == type){ product[1] = (Number(product[1]) + count); importProductionList[i] = product.join(","); return (0); }; i++; }; return (0); } private function chooseOne(event:Event=null):void{ event.stopPropagation(); var deltaProduction:Number = addProductToPlane(event.target.type, 1); if (!deltaProduction){ }; addMoney((deltaProduction * Number(event.target.cost.text))); updateImportList(event.target.type, deltaProduction); } public function hide(event:MouseEvent=null):void{ var event = event; 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 addMoney(cost:Number):void{ _money = (_money + cost); if (cost > 0){ okBtn.visible = true; }; money.text = String(_money); Fonts.applyDefaultFont(money); var i:int; while (i < _productItemList.length) { if (_productItemList[i]){ _productItemList[i].updateView(_money); }; i++; }; } public function upgrade(level:Number=0):void{ plane.gotoAndStop((Plane.upgradeLevel + 1)); boxline.gotoAndStop((Plane.upgradeLevel + 1)); } private function getBoxPositions():Array{ return (_boxPositions[Plane.upgradeLevel].split("|")); } private function chooseFive(event:Event=null):void{ event.stopPropagation(); var deltaProduction:Number = addProductToPlane(event.target.type, 5); if (!deltaProduction){ }; addMoney((deltaProduction * Number(event.target.cost.text))); updateImportList(event.target.type, deltaProduction); } public function cancel(event:MouseEvent=null):void{ var event = event; 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 show():void{ var item:String; var box:PlaneBox; GameController.instance.pause(); okBtn.visible = false; _money = 0; money.text = "0"; Fonts.applyDefaultFont(money); this.visible = true; plane.gotoAndStop((Plane.upgradeLevel + 1)); boxline.gotoAndStop((Plane.upgradeLevel + 1)); this.alpha = 0; importProductionList = new Array(); var i:int; while (i < LevelStatistics.accessProduct.length) { item = (_typeList[LevelStatistics.accessProduct[i]] + ",0"); importProductionList.push(item); i++; }; Tweener.addTween(this, {alpha:1, time:0.5}); updateItemsView(); while (_boxContainer.numChildren > 0) { _boxContainer.removeChildAt((_boxContainer.numChildren - 1)); }; _boxList = new Array(); var boxes:Array = getBoxPositions(); var b:int; while (b < boxes.length) { box = new PlaneBox(); box.x = boxes[b].split(",")[0]; box.y = boxes[b].split(",")[1]; _boxContainer.addChild(box); _boxList.push(box); b++; }; if (((firstShow) && (!(Config.skiped)))){ SimpleTooltip.instance.show(Config.currentLanguage.tooltips.plane); firstShow = false; }; } } }//package market
Section 287
//ImportWindowTemplate (market.ImportWindowTemplate) package market { import flash.display.*; import flash.text.*; public dynamic class ImportWindowTemplate extends MovieClip { public var boxline:MovieClip; public var title:TextField; public var plane:MovieClip; public var cancelBtn:MovieClip; public var okBtn:MovieClip; public var money:TextField; public function ImportWindowTemplate(){ super(); } } }//package market
Section 288
//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(){ super(); body.stop(); this.visible = false; this.type = -1; this.count = 0; } public function addProduct(typeS:String, countN:Number):Number{ var delta:Number; if (!count){ this.visible = true; this.body.gotoAndStop(typeS); type = ProductTypes.typeToNumber(typeS); }; if ((((count > 0)) && (!((type == ProductTypes.typeToNumber(typeS)))))){ return (0); }; if (count == sizeList[type]){ return (-1); }; if ((countN + count) <= sizeList[type]){ count = (count + countN); this.progress._mask.width = ((20 * count) / sizeList[type]); return (countN); }; if ((countN + count) > sizeList[type]){ delta = (sizeList[type] - count); count = (count + delta); this.progress._mask.width = ((20 * count) / sizeList[type]); return (delta); }; return (countN); } } }//package market
Section 289
//MochiAd (mochi.as3.MochiAd) package mochi.as3 { import flash.events.*; import flash.net.*; import flash.display.*; import flash.utils.*; import flash.system.*; public class MochiAd { public function MochiAd(){ super(); } public static function getVersion():String{ return (MochiServices.getVersion()); } public static function showClickAwayAd(options:Object):void{ var clip:Object; var mc:MovieClip; var chk:MovieClip; var options = options; 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 (width:Number, height: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 (callbackID:Number, arg:Object):void{ MochiAd.rpc(clip, callbackID, arg); }; var sendHostProgress:Boolean; mc.regContLC = function (lc_name:String):void{ mc._containerLCName = lc_name; }; chk["onEnterFrame"] = function ():void{ var total:Number; if (!this.parent){ delete this.onEnterFrame; return; }; var ad_clip:Object = this.parent._mochiad_ctr; var elapsed:Number = (getTimer() - this.started); var finished:Boolean; if (!chk.showing){ total = this.parent._mochiad_ctr.contentLoaderInfo.bytesTotal; if (total > 0){ chk.showing = true; finished = true; chk.started = getTimer(); } else { if (elapsed > chk.ad_timeout){ options.ad_failed(); finished = true; }; }; }; if (this.root == null){ finished = true; }; if (finished){ delete this.onEnterFrame; }; }; doOnEnterFrame(chk); } public static function _isNetworkAvailable():Boolean{ return (!((Security.sandboxType == "localWithFile"))); } public static function _allowDomains(server:String):String{ var hostname:String = server.split("/")[2].split(":")[0]; if (Security.sandboxType == "application"){ return (hostname); }; Security.allowDomain("*"); Security.allowDomain(hostname); Security.allowInsecureDomain("*"); Security.allowInsecureDomain(hostname); return (hostname); } public static function unload(clip:Object):Boolean{ if (((clip.clip) && (clip.clip._mochiad))){ clip = clip.clip; }; if (clip.origFrameRate != undefined){ clip.stage.frameRate = clip.origFrameRate; }; if (!clip._mochiad){ return (false); }; if (clip._mochiad._containerLCName != undefined){ clip._mochiad.lc.send(clip._mochiad._containerLCName, "notify", {id:"unload"}); }; if (clip._mochiad.onUnload){ clip._mochiad.onUnload(); }; delete clip._mochiad_loaded; delete clip._mochiad; return (true); } public static function showInterLevelAd(options:Object):void{ var clip:Object; var mc:MovieClip; var chk:MovieClip; var options = options; 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 (width:Number, height: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 p:Number = (100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time))); if (p > 0){ this.parent.alpha = (p * 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 (msec:Number):void{ var _chk:Object = mc._mochiad_wait; _chk.server_control = true; _chk.showing = true; _chk.started = getTimer(); _chk.ad_msec = (msec - 250); }; mc.rpc = function (callbackID:Number, arg:Object):void{ MochiAd.rpc(clip, callbackID, arg); }; chk["onEnterFrame"] = function ():void{ var total:Number; if (!this.parent){ delete this.onEnterFrame; delete this.fadeFunction; return; }; var ad_clip:Object = this.parent._mochiad_ctr; var elapsed:Number = (getTimer() - this.started); var finished:Boolean; if (!chk.showing){ total = this.parent._mochiad_ctr.contentLoaderInfo.bytesTotal; if (total > 0){ chk.showing = true; chk.started = getTimer(); MochiAd.adShowing(clip); } else { if (elapsed > chk.ad_timeout){ options.ad_failed(); finished = true; }; }; }; if (elapsed > chk.ad_msec){ finished = true; }; if (finished){ if (this.server_control){ delete this.onEnterFrame; } else { this.fadeout_start = getTimer(); this.onEnterFrame = this.fadeFunction; }; }; }; doOnEnterFrame(chk); } public static function _parseOptions(options:Object, defaults:Object):Object{ var k:String; var pairs:Array; var i:Number; var kv:Array; var optcopy:Object = {}; for (k in defaults) { optcopy[k] = defaults[k]; }; if (options){ for (k in options) { optcopy[k] = options[k]; }; }; if (optcopy.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.")); }; options = optcopy.clip.loaderInfo.parameters.mochiad_options; if (options){ pairs = options.split("&"); i = 0; while (i < pairs.length) { kv = pairs[i].split("="); optcopy[unescape(kv[0])] = unescape(kv[1]); i++; }; }; if (optcopy.id == "test"){ trace("[MochiAd] WARNING: Using the MochiAds test identifier, make sure to use the code from your dashboard, not this example!"); }; return (optcopy); } public static function _cleanup(mc:Object):void{ var k:String; var lc:LocalConnection; var f:Function; var mc = mc; if (("lc" in mc)){ lc = mc.lc; f = function ():void{ lc.client = null; lc.close(); //unresolved jump var _slot1 = e; }; 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(options: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 = options; 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); }; if (clip._mochiad_loaded){ return (null); }; //unresolved jump var _slot1 = e; 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 (ev:Object):void{ ev.target.removeEventListener(ev.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 (io:IOErrorEvent):void{ trace("[MochiAds] Blocked URL"); }); loader.load(req); mc.addChild(loader); mc._mochiad_ctr = loader; return (mc); } public static function runMethod(base:Object, methodName:String, argsArray:Array):Object{ var nameArray:Array = methodName.split("."); var i:Number = 0; while (i < (nameArray.length - 1)) { if ((((base[nameArray[i]] == undefined)) || ((base[nameArray[i]] == null)))){ return (undefined); }; base = base[nameArray[i]]; i++; }; if (typeof(base[nameArray[i]]) == "function"){ return (base[nameArray[i]].apply(base, argsArray)); }; return (undefined); } public static function createEmptyMovieClip(parent:Object, name:String, depth:Number):MovieClip{ var mc:MovieClip = new MovieClip(); if (((false) && (depth))){ parent.addChildAt(mc, depth); } else { parent.addChild(mc); }; parent[name] = mc; mc["_name"] = name; return (mc); } public static function _getRes(options:Object, clip:Object):Array{ var xy:Array; var b:Object = clip.getBounds(clip.root); var w:Number = 0; var h:Number = 0; if (typeof(options.res) != "undefined"){ xy = options.res.split("x"); w = parseFloat(xy[0]); h = parseFloat(xy[1]); } else { w = (b.xMax - b.xMin); h = (b.yMax - b.yMin); }; if ((((w == 0)) || ((h == 0)))){ w = clip.stage.stageWidth; h = clip.stage.stageHeight; }; return ([w, h]); } public static function adShowing(mc:Object):void{ mc.origFrameRate = mc.stage.frameRate; mc.stage.frameRate = 30; } public static function getValue(base:Object, objectName:String):Object{ var nameArray:Array = objectName.split("."); var i:Number = 0; while (i < (nameArray.length - 1)) { if ((((base[nameArray[i]] == undefined)) || ((base[nameArray[i]] == null)))){ return (undefined); }; base = base[nameArray[i]]; i++; }; return (base[nameArray[i]]); } public static function rpc(clip:Object, callbackID:Number, arg:Object):void{ var _local4:Object; var _local5:Object; switch (arg.id){ case "setValue": MochiAd.setValue(clip, arg.objectName, arg.value); break; case "getValue": _local4 = MochiAd.getValue(clip, arg.objectName); clip._mochiad.lc.send(clip._mochiad._containerLCName, "rpcResult", callbackID, _local4); break; case "runMethod": _local5 = MochiAd.runMethod(clip, arg.method, arg.args); clip._mochiad.lc.send(clip._mochiad._containerLCName, "rpcResult", callbackID, _local5); break; default: trace(("[mochiads rpc] unknown rpc id: " + arg.id)); }; } public static function setValue(base:Object, objectName:String, value:Object):void{ var nameArray:Array = objectName.split("."); var i:Number = 0; while (i < (nameArray.length - 1)) { if ((((base[nameArray[i]] == undefined)) || ((base[nameArray[i]] == null)))){ return; }; base = base[nameArray[i]]; i++; }; base[nameArray[i]] = value; } public static function showPreGameAd(options: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 = options; 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 (width:Number, height: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 (percent: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 p:Number = (100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time))); if (p > 0){ this.parent.alpha = (p * 0.01); } else { MochiAd.unload(clip); delete this["onEnterFrame"]; }; }; complete = false; unloaded = false; var f:Function = function (ev:Event):void{ ev.target.removeEventListener(ev.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 (msec:Number):void{ var _chk:Object = mc._mochiad_wait; _chk.server_control = true; _chk.showing = true; _chk.started = getTimer(); _chk.ad_msec = msec; }; mc.rpc = function (callbackID:Number, arg:Object):void{ MochiAd.rpc(clip, callbackID, arg); }; mc.rpcTestFn = function (s:String):Object{ trace(("[MOCHIAD rpcTestFn] " + s)); return (s); }; mc.regContLC = function (lc_name:String):void{ mc._containerLCName = lc_name; }; sendHostProgress = false; mc.sendHostLoadProgress = function (lc_name:String):void{ sendHostProgress = true; }; chk["onEnterFrame"] = function ():void{ var total:Number; if (((!(this.parent)) || (!(this.parent.parent)))){ delete this["onEnterFrame"]; return; }; var _clip:Object = this.parent.parent.root; var ad_clip:Object = this.parent._mochiad_ctr; var elapsed:Number = (getTimer() - this.started); var finished:Boolean; var clip_total:Number = _clip.loaderInfo.bytesTotal; var clip_loaded:Number = _clip.loaderInfo.bytesLoaded; if (complete){ clip_loaded = Math.max(1, clip_loaded); clip_total = clip_loaded; }; var clip_pcnt:Number = ((100 * clip_loaded) / clip_total); var ad_pcnt:Number = ((100 * elapsed) / chk.ad_msec); var _inside:Object = this._mochiad_bar._inside; var pcnt:Number = Math.min(100, Math.min(((clip_pcnt) || (0)), ad_pcnt)); pcnt = Math.max(this.last_pcnt, pcnt); this.last_pcnt = pcnt; _inside.scaleX = (pcnt * 0.01); options.ad_progress(pcnt); if (sendHostProgress){ clip._mochiad.lc.send(clip._mochiad._containerLCName, "notify", {id:"hostLoadPcnt", pcnt:clip_pcnt}); if (clip_pcnt >= 100){ sendHostProgress = false; }; }; if (!chk.showing){ total = this.parent._mochiad_ctr.contentLoaderInfo.bytesTotal; if (total > 0){ chk.showing = true; chk.started = getTimer(); MochiAd.adShowing(clip); } else { if ((((elapsed > chk.ad_timeout)) && ((clip_pcnt == 100)))){ options.ad_failed(); finished = true; }; }; }; if (elapsed > chk.ad_msec){ finished = true; }; if (((complete) && (finished))){ if (this.server_control){ delete this.onEnterFrame; } else { this.fadeout_start = getTimer(); this.onEnterFrame = chk.fadeFunction; }; }; }; doOnEnterFrame(chk); } public static function showPreloaderAd(options:Object):void{ trace("[MochiAd] DEPRECATED: showPreloaderAd was renamed to showPreGameAd in 2.0"); MochiAd.showPreGameAd(options); } public static function showTimedAd(options:Object):void{ trace("[MochiAd] DEPRECATED: showTimedAd was renamed to showInterLevelAd in 2.0"); MochiAd.showInterLevelAd(options); } public static function doOnEnterFrame(mc:MovieClip):void{ var mc = mc; var f:Function = function (ev:Object):void{ if (((("onEnterFrame" in mc)) && (mc.onEnterFrame))){ mc.onEnterFrame(); } else { ev.target.removeEventListener(ev.type, arguments.callee); }; }; mc.addEventListener(Event.ENTER_FRAME, f); } } }//package mochi.as3
Section 290
//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 function MochiCoins(){ super(); } public static function showItem(options:Object=null):void{ if (((!(options)) || (!((typeof(options.item) == "string"))))){ trace("ERROR: showItem call must pass an Object with an item key"); return; }; MochiServices.bringToTop(); MochiServices.send("coins_showItem", {options:options}, null, null); } public static function saveUserProperties(properties:Object):void{ MochiServices.send("coins_saveUserProperties", properties); } public static function triggerEvent(eventType:String, args:Object):void{ _dispatcher.triggerEvent(eventType, args); } public static function showLoginWidget(options:Object=null):void{ MochiServices.setContainer(); MochiServices.bringToTop(); MochiServices.send("coins_showLoginWidget", {options:options}); } public static function getStoreItems():void{ MochiServices.send("coins_getStoreItems"); } public static function getVersion():String{ return (MochiServices.getVersion()); } public static function showStore(options:Object=null):void{ MochiServices.bringToTop(); MochiServices.send("coins_showStore", {options:options}, null, null); } public static function addEventListener(eventType:String, delegate:Function):void{ _dispatcher.addEventListener(eventType, delegate); } public static function getUserInfo():void{ MochiServices.send("coins_getUserInfo"); } public static function hideLoginWidget():void{ MochiServices.send("coins_hideLoginWidget"); } public static function removeEventListener(eventType:String, delegate:Function):void{ _dispatcher.removeEventListener(eventType, delegate); } public static function showVideo(options:Object=null):void{ if (((!(options)) || (!((typeof(options.item) == "string"))))){ trace("ERROR: showVideo call must pass an Object with an item key"); return; }; MochiServices.bringToTop(); MochiServices.send("coins_showVideo", {options:options}, null, null); } } }//package mochi.as3
Section 291
//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(digit:Number=0, index:uint=0):void{ super(); Encoder = 0; setValue(digit, index); } public function reencode():void{ var newEncode:uint = int((2147483647 * Math.random())); Fragment = (Fragment ^ (newEncode ^ Encoder)); Encoder = newEncode; } public function set value(v:Number):void{ setValue(v); } public function toString():String{ var s:String = String.fromCharCode((Fragment ^ Encoder)); if (Sibling != null){ s = (s + Sibling.toString()); }; return (s); } public function setValue(digit:Number=0, index:uint=0):void{ var s:String = digit.toString(); var _temp1 = index; index = (index + 1); Fragment = (s.charCodeAt(_temp1) ^ Encoder); if (index < s.length){ Sibling = new MochiDigits(digit, index); } else { Sibling = null; }; reencode(); } public function get value():Number{ return (Number(this.toString())); } public function addValue(inc:Number):void{ value = (value + inc); } } }//package mochi.as3
Section 292
//MochiEventDispatcher (mochi.as3.MochiEventDispatcher) package mochi.as3 { public class MochiEventDispatcher { private var eventTable:Object; public function MochiEventDispatcher():void{ super(); eventTable = {}; } public function triggerEvent(event:String, args:Object):void{ var i:Object; if (eventTable[event] == undefined){ return; }; for (i in eventTable[event]) { var _local6 = eventTable[event]; _local6[i](args); }; } public function removeEventListener(event:String, delegate:Function):void{ var s:Object; if (eventTable[event] == undefined){ eventTable[event] = []; return; }; for (s in eventTable[event]) { if (eventTable[event][s] != delegate){ } else { eventTable[event].splice(Number(s), 1); }; }; } public function addEventListener(event:String, delegate:Function):void{ removeEventListener(event, delegate); eventTable[event].push(delegate); } } }//package mochi.as3
Section 293
//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 function MochiEvents(){ super(); } public static function addEventListener(eventType:String, delegate:Function):void{ _dispatcher.addEventListener(eventType, delegate); } public static function removeEventListener(eventType:String, delegate:Function):void{ _dispatcher.removeEventListener(eventType, delegate); } public static function startSession(achievementID:String):void{ MochiServices.send("events_beginSession", {achievementID:achievementID}, null, null); } public static function triggerEvent(eventType:String, args:Object):void{ _dispatcher.triggerEvent(eventType, args); } public static function setNotifications(clip:MovieClip, style:Object):void{ var s:Object; var args:Object = {}; for (s in style) { args[s] = style[s]; }; args.clip = clip; MochiServices.send("events_setNotifications", args, null, null); } public static function endGame():void{ var delta:Number = (new Date().time - gameStart); trigger("end_game", {time:delta}); } public static function startGame():void{ gameStart = new Date().time; trigger("start_game"); } public static function trigger(kind:String, obj:Object=null):void{ if (obj == null){ obj = {}; } else { if (obj["kind"] != undefined){ trace("WARNING: optional arguements package contains key 'id', it will be overwritten"); obj["kind"] = kind; }; }; MochiServices.send("events_triggerEvent", {eventObject:obj}, 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 delta:Number = (new Date().time - levelStart); trigger("end_level", {time:delta}); } } }//package mochi.as3
Section 294
//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 function MochiScores(){ super(); } public static function showLeaderboard(options:Object=null):void{ var n:Number; var options = options; 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(callbackObj:Object, callbackMethod:Object=null):void{ MochiServices.send("scores_getPlayerInfo", null, callbackObj, callbackMethod); } public static function requestList(callbackObj:Object, callbackMethod:Object=null):void{ MochiServices.send("scores_requestList", null, callbackObj, callbackMethod); } public static function scoresArrayToObjects(scores:Object):Object{ var i:Number; var j:Number; var o:Object; var row_obj:Object; var item:String; var param:String; var so:Object = {}; for (item in scores) { if (typeof(scores[item]) == "object"){ if (((!((scores[item].cols == null))) && (!((scores[item].rows == null))))){ so[item] = []; o = scores[item]; j = 0; while (j < o.rows.length) { row_obj = {}; i = 0; while (i < o.cols.length) { row_obj[o.cols[i]] = o.rows[j][i]; i++; }; so[item].push(row_obj); j++; }; } else { so[item] = {}; for (param in scores[item]) { so[item][param] = scores[item][param]; }; }; } else { so[item] = scores[item]; }; }; return (so); } public static function submit(score:Number, name:String, callbackObj:Object=null, callbackMethod:Object=null):void{ score = Number(score); if (isNaN(score)){ trace((("ERROR: Submitted score '" + String(score)) + "' will be rejected, score is 'Not a Number'")); } else { if ((((score == Number.NEGATIVE_INFINITY)) || ((score == Number.POSITIVE_INFINITY)))){ trace((("ERROR: Submitted score '" + String(score)) + "' will be rejected, score is an infinite")); } else { if (Math.floor(score) != score){ trace((("WARNING: Submitted score '" + String(score)) + "' will be truncated")); }; score = Number(score); }; }; MochiServices.send("scores_submit", {score:score, name:name}, callbackObj, callbackMethod); } public static function onClose(args:Object=null):void{ if (((((args) && ((args.error == true)))) && (onErrorHandler))){ if (args.errorCode == null){ args.errorCode = "IOError"; }; onErrorHandler(args.errorCode); MochiServices.doClose(); return; }; onCloseHandler(); MochiServices.doClose(); } public static function setBoardID(boardID:String):void{ MochiServices.warnID(boardID, true); MochiScores.boardID = boardID; MochiServices.send("scores_setBoardID", {boardID:boardID}); } } }//package mochi.as3
Section 295
//MochiServices (mochi.as3.MochiServices) package mochi.as3 { import flash.events.*; import flash.net.*; import flash.display.*; import flash.utils.*; import flash.geom.*; 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 function MochiServices(){ super(); } public static function isNetworkAvailable():Boolean{ return (!((Security.sandboxType == "localWithFile"))); } public static function get connected():Boolean{ return (_connected); } private static function onReceive(pkg:Object):void{ var methodName:String; var pkg = pkg; 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){ method.apply(obj, pkg.args); //unresolved jump var _slot1 = error; trace(((("Error invoking callback method '" + methodName) + "': ") + _slot1.toString())); } else { if (obj != null){ obj(pkg.args); //unresolved jump var _slot1 = error; trace(("Error invoking method on object: " + _slot1.toString())); }; }; delete _clip._callbacks[cb]; } public static function get childClip():Object{ return (_clip); } public static function send(methodName:String, args:Object=null, callbackObject:Object=null, callbackMethod:Object=null):void{ if (_connected){ _mochiLocalConnection.send(_sendChannelName, "onReceive", {methodName:methodName, args:args, callbackID:_clip._nextcallbackID}); } else { if ((((_clip == null)) || (!(_connecting)))){ trace(("Error: MochiServices not connected. Please call MochiServices.connect(). Function: " + methodName)); handleError(args, callbackObject, callbackMethod); flush(true); return; }; _clip._queue.push({methodName:methodName, args:args, callbackID:_clip._nextcallbackID}); }; if (_clip != null){ if (((!((_clip._callbacks == null))) && (!((_clip._nextcallbackID == null))))){ _clip._callbacks[_clip._nextcallbackID] = {callbackObject:callbackObject, callbackMethod:callbackMethod}; _clip._nextcallbackID++; }; }; } private static function init(id:String, clip:Object):void{ _id = id; if (clip != null){ _container = clip; loadCommunicator(id, _container); }; } private static function clickMovie(url:String, cb:Function):MovieClip{ var b:int; var loader:Loader; var avm1_bytecode: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 header:Array = [104, 0, 31, 64, 0, 7, 208, 0, 0, 12, 1, 0, 67, 2, 0xFF, 0xFF, 0xFF, 63, 3]; var footer:Array = [0, 64, 0, 0, 0]; var mc:MovieClip = new MovieClip(); var lc:LocalConnection = new LocalConnection(); var lc_name:String = ((("_click_" + Math.floor((Math.random() * 999999))) + "_") + Math.floor(new Date().time)); lc = new LocalConnection(); mc.lc = lc; mc.click = cb; lc.client = mc; lc.connect(lc_name); var ba:ByteArray = new ByteArray(); var cpool:ByteArray = new ByteArray(); cpool.endian = Endian.LITTLE_ENDIAN; cpool.writeShort(1); cpool.writeUTFBytes(((url + " ") + lc_name)); cpool.writeByte(0); var actionLength:uint = ((avm1_bytecode.length + cpool.length) + 4); var fileLength:uint = (actionLength + 35); ba.endian = Endian.LITTLE_ENDIAN; ba.writeUTFBytes("FWS"); ba.writeByte(8); ba.writeUnsignedInt(fileLength); for each (b in header) { ba.writeByte(b); }; ba.writeUnsignedInt(actionLength); ba.writeByte(136); ba.writeShort(cpool.length); ba.writeBytes(cpool); for each (b in avm1_bytecode) { ba.writeByte(b); }; for each (b in footer) { ba.writeByte(b); }; loader = new Loader(); loader.loadBytes(ba); mc.addChild(loader); return (mc); } 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(url:String, burl:String, btn:DisplayObjectContainer, onClick: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 = url; var burl = burl; var btn = btn; var onClick = onClick; 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 (url:String):void{ if (avm1Click){ btn.removeChild(avm1Click); }; avm1Click = clickMovie(url, onClick); var rect:Rectangle = btn.getBounds(btn); btn.addChild(avm1Click); avm1Click.x = rect.x; avm1Click.y = rect.y; avm1Click.scaleX = (0.01 * rect.width); avm1Click.scaleY = (0.01 * rect.height); }; err = function (ev:Object):void{ netup = false; ev.target.removeEventListener(ev.type, arguments.callee); setURL(burl); }; complete = function (ev:Object):void{ ev.target.removeEventListener(ev.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(bid:String, leaderboard:Boolean):void{ bid = bid.toLowerCase(); if (bid.length != 16){ trace((("WARNING: " + (leaderboard) ? "board" : "game") + " ID is not the appropriate length")); return; } else { if (bid == "1e113c7239048b3f"){ if (leaderboard){ trace("WARNING: Using testing board ID"); } else { trace("WARNING: Using testing board ID as game ID"); }; return; } else { if (bid == "84993a1de4031cd8"){ if (leaderboard){ trace("WARNING: Using testing game ID as board ID"); } else { trace("WARNING: Using testing game ID"); }; return; }; }; }; var i:Number = 0; while (i < bid.length) { switch (bid.charAt(i)){ 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: " + bid)); return; }; i++; }; } 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); _mochiLocalConnection.close(); //unresolved jump var _slot1 = error; }; if (_timer != null){ _timer.stop(); //unresolved jump var _slot1 = error; }; } public static function allowDomains(server:String):String{ var hostname:String; if (Security.sandboxType != "application"){ Security.allowDomain("*"); Security.allowInsecureDomain("*"); }; if (server.indexOf("http://") != -1){ hostname = server.split("/")[2].split(":")[0]; if (Security.sandboxType != "application"){ Security.allowDomain(hostname); Security.allowInsecureDomain(hostname); }; }; return (hostname); } 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(error:Boolean):void{ var request:Object; var callback:Object; if (((_clip) && (_clip._queue))){ while (_clip._queue.length > 0) { request = _clip._queue.shift(); callback = null; if (request != null){ if (request.callbackID != null){ callback = _clip._callbacks[request.callbackID]; }; delete _clip._callbacks[request.callbackID]; if (((error) && (!((callback == null))))){ handleError(request.args, callback.callbackObject, callback.callbackMethod); }; }; }; }; } public static function get id():String{ return (_id); } private static function onEvent(pkg:Object):void{ var target:String = pkg.target; var event:String = pkg.event; switch (target){ case "events": MochiEvents.triggerEvent(pkg.event, pkg.args); break; case "coins": MochiCoins.triggerEvent(pkg.event, pkg.args); break; case "sync": servicesSync.triggerEvent(pkg.event, pkg.args); break; }; } private static function urlOptions(clip:Object):Object{ var pairs:Array; var i:Number; var kv:Array; var opts:Object = {}; var options:String = clip.loaderInfo.parameters.mochiad_options; if (options){ pairs = options.split("&"); i = 0; while (i < pairs.length) { kv = pairs[i].split("="); opts[unescape(kv[0])] = unescape(kv[1]); i++; }; }; return (opts); } public static function setContainer(container:Object=null, doAdd:Boolean=true):void{ if (container != null){ if ((container is Sprite)){ _container = container; }; }; if (doAdd){ if ((_container is Sprite)){ Sprite(_container).addChild(_clip); }; }; } private static function handleError(args:Object, callbackObject:Object, callbackMethod:Object):void{ var args = args; var callbackObject = callbackObject; var callbackMethod = callbackMethod; 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)))){ var _local5 = callbackObject; _local5[callbackMethod](args); //unresolved jump var _slot1 = error; } else { if (callbackMethod != null){ callbackMethod.apply(args); //unresolved jump var _slot1 = error; }; }; }; } private static function loadError(ev: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(clip:Object):void{ var loader:Loader; var clip = clip; loader = new Loader(); var mochiLCURL:String = (_servURL + _mochiLC); var req:URLRequest = new URLRequest(mochiLCURL); var complete:Function = function (ev: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 (args:Object):void{ MochiServices.comChannelName = args.newChannel; }; trace("Waiting for MochiAds services to connect..."); } public static function get clip():Object{ return (_container); } public static function set comChannelName(val:String):void{ if (val != null){ if (val.length > 3){ _sendChannelName = (val + "_fromgame"); initComChannels(); }; }; } private static function loadCommunicator(id:String, clip:Object):MovieClip{ var clipname:String = ("_mochiservices_com_" + id); if (_clip != null){ return (_clip); }; if (!MochiServices.isNetworkAvailable()){ return (null); }; if (urlOptions(clip).servURL){ _servURL = urlOptions(clip).servURL; }; var servicesURL:String = (_servURL + _services); if (urlOptions(clip).servicesURL){ servicesURL = urlOptions(clip).servicesURL; }; _listenChannelName = (_listenChannelName + ((Math.floor(new Date().time) + "_") + Math.floor((Math.random() * 99999)))); MochiServices.allowDomains(servicesURL); _clip = createEmptyMovieClip(clip, clipname, 10336, false); loadLCBridge(_clip); _loader = new Loader(); _loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, loadError); var req:URLRequest = new URLRequest(servicesURL); var vars:URLVariables = new URLVariables(); vars.listenLC = _listenChannelName; vars.mochiad_options = clip.loaderInfo.parameters.mochiad_options; vars.api_version = getVersion(); if (widget){ vars.widget = true; }; req.data = vars; _loader.load(req); _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(id:String, clip:Object, onError:Object=null):void{ var id = id; var clip = clip; var onError = onError; 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 (errorCode:String):void{ trace(errorCode); }; }; }; } public static function createEmptyMovieClip(parent:Object, name:String, depth:Number, doAdd:Boolean=true):MovieClip{ var parent = parent; var name = name; var depth = depth; var doAdd = doAdd; var mc:MovieClip = new MovieClip(); if (doAdd){ if (((false) && (depth))){ parent.addChildAt(mc, depth); } else { parent.addChild(mc); }; }; parent[name] = mc; //unresolved jump var _slot1 = e; 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(e:Event=null):void{ var e = e; if (((!((MochiServices.clip == null))) && (!((MochiServices.childClip == null))))){ if (MochiServices.clip.numChildren > 1){ MochiServices.clip.setChildIndex(MochiServices.childClip, (MochiServices.clip.numChildren - 1)); }; //unresolved jump var _slot1 = errorObject; trace("Warning: Depth sort error."); _container.removeEventListener(Event.ENTER_FRAME, MochiServices.bringToTop); }; } public static function connectWait(e:TimerEvent):void{ if (!_connected){ _clip._mochiad_ctr_failed = true; trace("MochiServices could not load. (timeout)"); MochiServices.disconnect(); MochiServices.onError("IOError"); }; } } }//package mochi.as3
Section 296
//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{ super(); _syncContainer = {}; } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function setProperty(name, value):void{ if (_syncContainer[name] == value){ return; }; var n:String = name.toString(); _syncContainer[n] = value; MochiServices.send("sync_propUpdate", {name:n, value:value}); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function getProperty(name){ return (_syncContainer[name]); } public function triggerEvent(eventType:String, args:Object):void{ switch (eventType){ case SYNC_REQUEST: MochiServices.send("sync_syncronize", _syncContainer); break; case SYNC_PROPERTY: _syncContainer[args.name] = args.value; break; }; } } }//package mochi.as3
Section 297
//FontAsset (mx.core.FontAsset) package mx.core { import flash.text.*; public class FontAsset extends Font implements IFlexAsset { mx_internal static const VERSION:String = "3.3.0.4852"; public function FontAsset(){ super(); } } }//package mx.core
Section 298
//IFlexAsset (mx.core.IFlexAsset) package mx.core { public interface IFlexAsset { } }//package mx.core
Section 299
//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 300
//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(type:String, bubbles:Boolean=false, cancelable:Boolean=false, kind:String=null, property:Object=null, oldValue:Object=null, newValue:Object=null, source:Object=null){ super(type, bubbles, cancelable); this.kind = kind; this.property = property; this.oldValue = oldValue; this.newValue = newValue; this.source = source; } override public function clone():Event{ return (new PropertyChangeEvent(type, bubbles, cancelable, kind, property, oldValue, newValue, source)); } public static function createUpdateEvent(source:Object, property:Object, oldValue:Object, newValue:Object):PropertyChangeEvent{ var event:PropertyChangeEvent = new PropertyChangeEvent(PROPERTY_CHANGE); event.kind = PropertyChangeEventKind.UPDATE; event.oldValue = oldValue; event.newValue = newValue; event.source = source; event.property = property; return (event); } } }//package mx.events
Section 301
//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"; public function PropertyChangeEventKind(){ super(); } } }//package mx.events
Section 302
//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(D:\WORK\Flex3\Farm3Arctic\ext_src;org\flintparticles\common\actions;Action.as:Emitter):void; function removedFromEmitter(D:\WORK\Flex3\Farm3Arctic\ext_src;org\flintparticles\common\actions;Action.as:Emitter):void; function getDefaultPriority():Number; } }//package org.flintparticles.common.actions
Section 303
//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 ActionBase(){ super(); } public function addedToEmitter(emitter:Emitter):void{ } public function removedFromEmitter(emitter:Emitter):void{ } public function getDefaultPriority():Number{ return (0); } public function update(emitter:Emitter, particle:Particle, time:Number):void{ } } }//package org.flintparticles.common.actions
Section 304
//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(easing:Function=null){ super(); if (easing == null){ _easing = Linear.easeNone; } else { _easing = easing; }; } public function set easing(value:Function):void{ _easing = value; } override public function update(emitter:Emitter, particle:Particle, time:Number):void{ particle.age = (particle.age + time); if (particle.age >= particle.lifetime){ particle.energy = 0; particle.isDead = true; } else { particle.energy = _easing(particle.age, particle.lifetime); }; } public function get easing():Function{ return (_easing); } } }//package org.flintparticles.common.actions
Section 305
//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(startAlpha:Number=1, endAlpha:Number=0){ super(); _diffAlpha = (startAlpha - endAlpha); _endAlpha = endAlpha; } public function get endAlpha():Number{ return (_endAlpha); } public function set endAlpha(value:Number):void{ _diffAlpha = ((_endAlpha + _diffAlpha) - value); _endAlpha = value; } override public function update(emitter:Emitter, particle:Particle, time:Number):void{ var alpha:Number = (_endAlpha + (_diffAlpha * particle.energy)); particle.color = ((particle.color & 0xFFFFFF) | (Math.round((alpha * 0xFF)) << 24)); } override public function getDefaultPriority():Number{ return (-5); } public function set startAlpha(value:Number):void{ _diffAlpha = (value - _endAlpha); } public function get startAlpha():Number{ return ((_endAlpha + _diffAlpha)); } } }//package org.flintparticles.common.actions
Section 306
//Activity (org.flintparticles.common.activities.Activity) package org.flintparticles.common.activities { import org.flintparticles.common.emitters.*; public interface Activity { function initialize(D:\WORK\Flex3\Farm3Arctic\ext_src;org\flintparticles\common\activities;Activity.as:Emitter):void; function removedFromEmitter(D:\WORK\Flex3\Farm3Arctic\ext_src;org\flintparticles\common\activities;Activity.as:Emitter):void; function update(_arg1:Emitter, _arg2:Number):void; function addedToEmitter(D:\WORK\Flex3\Farm3Arctic\ext_src;org\flintparticles\common\activities;Activity.as:Emitter):void; function getDefaultPriority():Number; } }//package org.flintparticles.common.activities
Section 307
//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(startCount:uint){ super(); _startCount = startCount; } public function stop():void{ } public function updateEmitter(emitter:Emitter, time:Number):uint{ return (0); } public function startEmitter(emitter:Emitter):uint{ return (_startCount); } public function resume():void{ } public function set startCount(value:Number):void{ _startCount = value; } public function get startCount():Number{ return (_startCount); } } }//package org.flintparticles.common.counters
Section 308
//Counter (org.flintparticles.common.counters.Counter) package org.flintparticles.common.counters { import org.flintparticles.common.emitters.*; public interface Counter { function stop():void; function startEmitter(:Emitter):uint; function updateEmitter(_arg1:Emitter, _arg2:Number):uint; function resume():void; } }//package org.flintparticles.common.counters
Section 309
//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(numParticles:uint, duration:Number, easing:Function=null){ super(); _particles = numParticles; _duration = duration; if (easing == null){ _easing = Linear.easeNone; } else { _easing = easing; }; } public function get numParticles():uint{ return (_particles); } public function stop():void{ _stop = true; } public function set numParticles(value:uint):void{ _particles = value; } public function set easing(value:Function):void{ _easing = value; } public function get duration():Number{ return (_duration); } public function updateEmitter(emitter:Emitter, time:Number):uint{ var newParticles:uint; if (((_stop) || ((_particlesPassed == _particles)))){ return (0); }; _timePassed = (_timePassed + time); if (_timePassed >= _duration){ newParticles = (_particles - _particlesPassed); _particlesPassed = _particles; return (newParticles); }; var oldParticles:uint = _particlesPassed; _particlesPassed = Math.round(_easing(_timePassed, 0, _particles, _duration)); return ((_particlesPassed - oldParticles)); } public function set duration(value:Number):void{ _duration = value; } public function get easing():Function{ return (_easing); } public function resume():void{ _stop = false; } public function startEmitter(emitter:Emitter):uint{ _particlesPassed = 0; _timePassed = 0; return (0); } } }//package org.flintparticles.common.counters
Section 310
//ZeroCounter (org.flintparticles.common.counters.ZeroCounter) package org.flintparticles.common.counters { import org.flintparticles.common.emitters.*; public class ZeroCounter implements Counter { public function ZeroCounter(){ super(); } public function stop():void{ } public function updateEmitter(emitter:Emitter, time:Number):uint{ return (0); } public function startEmitter(emitter:Emitter):uint{ return (0); } public function resume():void{ } } }//package org.flintparticles.common.counters
Section 311
//Dot (org.flintparticles.common.displayObjects.Dot) package org.flintparticles.common.displayObjects { import flash.display.*; public class Dot extends Shape { public function Dot(radius:Number, color:uint=0xFFFFFF, bm:String="normal"){ super(); graphics.beginFill(color); graphics.drawCircle(0, 0, radius); graphics.endFill(); blendMode = bm; } } }//package org.flintparticles.common.displayObjects
Section 312
//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(radius:Number, color:uint=0xFFFFFF, bm:String="normal"){ var point:Point; super(); var rotStep:Number = (Math.PI / 5); var innerRadius:Number = (radius * Math.cos((rotStep * 2))); var halfPi:Number = (Math.PI * 0.5); graphics.beginFill(color); graphics.moveTo(0, -(radius)); point = Point.polar(innerRadius, (rotStep - halfPi)); graphics.lineTo(point.x, point.y); point = Point.polar(radius, ((2 * rotStep) - halfPi)); graphics.lineTo(point.x, point.y); point = Point.polar(innerRadius, ((3 * rotStep) - halfPi)); graphics.lineTo(point.x, point.y); point = Point.polar(radius, ((4 * rotStep) - halfPi)); graphics.lineTo(point.x, point.y); point = Point.polar(innerRadius, ((5 * rotStep) - halfPi)); graphics.lineTo(point.x, point.y); point = Point.polar(radius, ((6 * rotStep) - halfPi)); graphics.lineTo(point.x, point.y); point = Point.polar(innerRadius, ((7 * rotStep) - halfPi)); graphics.lineTo(point.x, point.y); point = Point.polar(radius, ((8 * rotStep) - halfPi)); graphics.lineTo(point.x, point.y); point = Point.polar(innerRadius, ((9 * rotStep) - halfPi)); graphics.lineTo(point.x, point.y); graphics.lineTo(0, -(radius)); graphics.endFill(); blendMode = bm; } } }//package org.flintparticles.common.displayObjects
Section 313
//Linear (org.flintparticles.common.easing.Linear) package org.flintparticles.common.easing { public class Linear { public function Linear(){ super(); } public static function easeOut(t:Number, b:Number, c:Number, d:Number):Number{ return ((((c * t) / d) + b)); } public static function easeIn(t:Number, b:Number, c:Number, d:Number):Number{ return ((((c * t) / d) + b)); } public static function easeInOut(t:Number, b:Number, c:Number, d:Number):Number{ return ((((c * t) / d) + b)); } public static function easeNone(t:Number, b:Number, c:Number, d:Number):Number{ return ((((c * t) / d) + b)); } } }//package org.flintparticles.common.easing
Section 314
//Emitter (org.flintparticles.common.emitters.Emitter) package org.flintparticles.common.emitters { import flash.events.*; import org.flintparticles.common.particles.*; import org.flintparticles.common.events.*; import org.flintparticles.common.initializers.*; import org.flintparticles.common.actions.*; import org.flintparticles.common.activities.*; import org.flintparticles.common.counters.*; 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(){ super(); _particles = new Array(); _actions = new PriorityArray(); _initializers = new PriorityArray(); _activities = new PriorityArray(); _counter = new ZeroCounter(); } public function addInitializer(initializer:Initializer, priority:Number=NaN):void{ if (isNaN(priority)){ priority = initializer.getDefaultPriority(); }; _initializers.add(initializer, priority); initializer.addedToEmitter(this); } public function stop():void{ if (_useInternalTick){ FrameUpdater.instance.removeEventListener(UpdateEvent.UPDATE, updateEventListener); }; _started = false; killAllParticles(); } public function killAllParticles():void{ var len:int = _particles.length; var i:int; while (i < len) { dispatchEvent(new ParticleEvent(ParticleEvent.PARTICLE_DEAD, _particles[i])); _particleFactory.disposeParticle(_particles[i]); i++; }; _particles.length = 0; } public function set fixedFrameTime(value:Number):void{ _fixedFrameTime = value; } public function get maximumFrameTime():Number{ return (_maximumFrameTime); } public function get useInternalTick():Boolean{ return (_useInternalTick); } protected function createParticle():Particle{ var particle:Particle = _particleFactory.createParticle(); var len:int = _initializers.length; initParticle(particle); var i:int; while (i < len) { _initializers[i].initialize(this, particle); i++; }; _particles.push(particle); dispatchEvent(new ParticleEvent(ParticleEvent.PARTICLE_CREATED, particle)); return (particle); } public function get particleFactory():ParticleFactory{ return (_particleFactory); } private function updateEventListener(ev:UpdateEvent):void{ if (_fixedFrameTime){ update(_fixedFrameTime); } else { update(ev.time); }; } public function get particles():Array{ return (_particles); } protected function sortParticles():void{ } public function removeActivity(activity:Activity):void{ if (_activities.remove(activity)){ activity.removedFromEmitter(this); }; } public function set maximumFrameTime(value:Number):void{ _maximumFrameTime = value; } protected function initParticle(particle:Particle):void{ } public function addAction(action:Action, priority:Number=NaN):void{ if (isNaN(priority)){ priority = action.getDefaultPriority(); }; _actions.add(action, priority); action.addedToEmitter(this); } public function hasInitializerOfType(initializerClass:Class):Boolean{ var len:uint = _initializers.length; var i:uint; while (i < len) { if ((_initializers[i] is initializerClass)){ return (true); }; i++; }; return (false); } public function resume():void{ _running = true; } public function removeInitializer(initializer:Initializer):void{ if (_initializers.remove(initializer)){ initializer.removedFromEmitter(this); }; } public function get running():Boolean{ return (_running); } public function hasActionOfType(actionClass:Class):Boolean{ var len:uint = _actions.length; var i:uint; while (i < len) { if ((_actions[i] is actionClass)){ return (true); }; i++; }; return (false); } public function get fixedFrameTime():Number{ return (_fixedFrameTime); } public function set particleFactory(value:ParticleFactory):void{ _particleFactory = value; } public function hasActivity(activity:Activity):Boolean{ return (_activities.contains(activity)); } public function addActivity(activity:Activity, priority:Number=NaN):void{ if (isNaN(priority)){ priority = activity.getDefaultPriority(); }; _activities.add(activity, priority); activity.addedToEmitter(this); } public function update(time:Number):void{ var i:int; var particle:Particle; var action:Action; var len2:int; var j:int; if (!_running){ return; }; if (time > _maximumFrameTime){ time = _maximumFrameTime; }; var len:int = _counter.updateEmitter(this, time); i = 0; while (i < len) { createParticle(); i++; }; sortParticles(); len = _activities.length; i = 0; while (i < len) { _activities[i].update(this, time); i++; }; if (_particles.length > 0){ len = _actions.length; len2 = _particles.length; j = 0; while (j < len) { action = _actions[j]; i = 0; while (i < len2) { particle = _particles[i]; action.update(this, particle, time); i++; }; j++; }; i = len2; while (i--) { particle = _particles[i]; if (particle.isDead){ dispatchEvent(new ParticleEvent(ParticleEvent.PARTICLE_DEAD, particle)); _particleFactory.disposeParticle(particle); _particles.splice(i, 1); }; }; } else { dispatchEvent(new EmitterEvent(EmitterEvent.EMITTER_EMPTY)); }; dispatchEvent(new EmitterEvent(EmitterEvent.EMITTER_UPDATED)); } public function addExistingParticles(particles:Array, applyInitializers:Boolean=false):void{ var i:int; var len2:int; var j:int; var len:int = particles.length; if (applyInitializers){ len2 = _initializers.length; j = 0; while (j < len2) { i = 0; while (i < len) { _initializers[j].initialize(this, particles[i]); i++; }; j++; }; }; i = 0; while (i < len) { _particles.push(particles[i]); dispatchEvent(new ParticleEvent(ParticleEvent.PARTICLE_ADDED, particles[i])); i++; }; } public function removeAction(action:Action):void{ if (_actions.remove(action)){ action.removedFromEmitter(this); }; } public function hasActivityOfType(activityClass:Class):Boolean{ var len:uint = _activities.length; var i:uint; while (i < len) { if ((_activities[i] is activityClass)){ return (true); }; i++; }; return (false); } public function set useInternalTick(value:Boolean):void{ if (_useInternalTick != value){ _useInternalTick = value; if (_started){ if (_useInternalTick){ FrameUpdater.instance.addEventListener(UpdateEvent.UPDATE, updateEventListener, false, 0, true); } else { FrameUpdater.instance.removeEventListener(UpdateEvent.UPDATE, updateEventListener); }; }; }; } public function hasInitializer(initializer:Initializer):Boolean{ return (_initializers.contains(initializer)); } public function start():void{ if (_useInternalTick){ FrameUpdater.instance.addEventListener(UpdateEvent.UPDATE, updateEventListener, false, 0, true); }; _started = true; _running = true; var len:int = _activities.length; var i:int; while (i < len) { _activities[i].initialize(this); i++; }; len = _counter.startEmitter(this); i = 0; while (i < len) { createParticle(); i++; }; } public function hasAction(action:Action):Boolean{ return (_actions.contains(action)); } public function pause():void{ _running = false; } public function set counter(value:Counter):void{ _counter = value; } public function get counter():Counter{ return (_counter); } public function runAhead(time:Number, frameRate:Number=10):void{ var maxTime:Number = _maximumFrameTime; var step:Number = (1 / frameRate); _maximumFrameTime = step; while (time > 0) { time = (time - step); update(step); }; _maximumFrameTime = maxTime; } } }//package org.flintparticles.common.emitters
Section 315
//Linear (org.flintparticles.common.energyEasing.Linear) package org.flintparticles.common.energyEasing { public class Linear { public function Linear(){ super(); } public static function easeOut(age:Number, lifetime:Number):Number{ return ((1 - (age / lifetime))); } public static function easeIn(age:Number, lifetime:Number):Number{ return ((1 - (age / lifetime))); } public static function easeInOut(age:Number, lifetime:Number):Number{ return ((1 - (age / lifetime))); } public static function easeNone(age:Number, lifetime:Number):Number{ return ((1 - (age / lifetime))); } } }//package org.flintparticles.common.energyEasing
Section 316
//Quadratic (org.flintparticles.common.energyEasing.Quadratic) package org.flintparticles.common.energyEasing { public class Quadratic { public function Quadratic(){ super(); } public static function easeOut(age:Number, lifetime:Number):Number{ age = (1 - (age / lifetime)); return ((age * age)); } public static function easeIn(age:Number, lifetime:Number):Number{ age = (age / lifetime); return ((1 - (age * age))); } public static function easeInOut(age:Number, lifetime:Number):Number{ age = (age / (lifetime * 0.5)); if (age < 1){ return ((1 - ((age * age) * 0.5))); }; age = (age - 2); return (((age * age) * 0.5)); } } }//package org.flintparticles.common.energyEasing
Section 317
//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(type:String, bubbles:Boolean=false, cancelable:Boolean=false){ super(type, bubbles, cancelable); } } }//package org.flintparticles.common.events
Section 318
//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(type:String, particle:Particle=null, bubbles:Boolean=false, cancelable:Boolean=false){ super(type, bubbles, cancelable); this.particle = particle; } } }//package org.flintparticles.common.events
Section 319
//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(type:String, time:Number=NaN, bubbles:Boolean=false, cancelable:Boolean=false){ super(type, bubbles, cancelable); this.time = time; } } }//package org.flintparticles.common.events
Section 320
//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(color1:uint, color2:uint){ super(); _min = color1; _max = color2; } public function set minColor(value:uint):void{ _min = value; } public function get color():uint{ return (((_min == _max)) ? _min : interpolateColors(_max, _min, 0.5)); } public function set color(value:uint):void{ _max = (_min = value); } override public function initialize(emitter:Emitter, particle:Particle):void{ if (_max == _min){ particle.color = _min; } else { particle.color = interpolateColors(_min, _max, Math.random()); }; } public function get minColor():uint{ return (_min); } public function set maxColor(value:uint):void{ _max = value; } public function get maxColor():uint{ return (_max); } } }//package org.flintparticles.common.initializers
Section 321
//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(D:\WORK\Flex3\Farm3Arctic\ext_src;org\flintparticles\common\initializers;Initializer.as:Emitter):void; function removedFromEmitter(D:\WORK\Flex3\Farm3Arctic\ext_src;org\flintparticles\common\initializers;Initializer.as:Emitter):void; function getDefaultPriority():Number; } }//package org.flintparticles.common.initializers
Section 322
//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 InitializerBase(){ super(); } public function initialize(emitter:Emitter, particle:Particle):void{ } public function addedToEmitter(emitter:Emitter):void{ } public function removedFromEmitter(emitter:Emitter):void{ } public function getDefaultPriority():Number{ return (0); } } }//package org.flintparticles.common.initializers
Section 323
//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(minLifetime:Number, maxLifetime:Number=NaN){ super(); _max = maxLifetime; _min = minLifetime; } public function get lifetime():Number{ return (((_min == _max)) ? _min : ((_max + _min) * 0.5)); } public function get maxLifetime():Number{ return (_max); } override public function initialize(emitter:Emitter, particle:Particle):void{ if (isNaN(_max)){ particle.lifetime = _min; } else { particle.lifetime = (_min + (Math.random() * (_max - _min))); }; } public function set lifetime(value:Number):void{ _max = (_min = value); } public function set minLifetime(value:Number):void{ _min = value; } public function set maxLifetime(value:Number):void{ _max = value; } public function get minLifetime():Number{ return (_min); } } }//package org.flintparticles.common.initializers
Section 324
//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(image:DisplayObject){ super(); _image = image; } override public function initialize(emitter:Emitter, particle:Particle):void{ particle.image = _image; } public function set image(value:DisplayObject):void{ _image = value; } public function get image():DisplayObject{ return (_image); } } }//package org.flintparticles.common.initializers
Section 325
//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 Particle(){ super(); } 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 326
//ParticleFactory (org.flintparticles.common.particles.ParticleFactory) package org.flintparticles.common.particles { public interface ParticleFactory { function createParticle():Particle; function disposeParticle(D:\WORK\Flex3\Farm3Arctic\ext_src;org\flintparticles\common\particles;ParticleFactory.as:Particle):void; } }//package org.flintparticles.common.particles
Section 327
//Renderer (org.flintparticles.common.renderers.Renderer) package org.flintparticles.common.renderers { import org.flintparticles.common.emitters.*; public interface Renderer { function removeEmitter(:Emitter):void; function addEmitter(:Emitter):void; } }//package org.flintparticles.common.renderers
Section 328
//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(){ super(); _emitters = new Array(); mouseEnabled = false; mouseChildren = false; addEventListener(Event.ADDED_TO_STAGE, addedToStage, false, 0, true); } private function particleAdded(ev:ParticleEvent):void{ addParticle(ev.particle); if (stage){ stage.invalidate(); }; } private function addedToStage(ev:Event):void{ if (stage){ stage.invalidate(); }; } public function get emitters():Array{ return (_emitters); } protected function addParticle(particle:Particle):void{ } private function updateParticles(ev:Event):void{ var particles:Array = new Array(); var i:int; while (i < _emitters.length) { particles = particles.concat(_emitters[i].particles); i++; }; renderParticles(particles); } private function emitterUpdated(ev:EmitterEvent):void{ if (stage){ stage.invalidate(); }; } public function removeEmitter(emitter:Emitter):void{ var p:Particle; var i:int; while (i < _emitters.length) { if (_emitters[i] == emitter){ _emitters.splice(i, 1); emitter.removeEventListener(EmitterEvent.EMITTER_UPDATED, emitterUpdated); emitter.removeEventListener(ParticleEvent.PARTICLE_CREATED, particleAdded); emitter.removeEventListener(ParticleEvent.PARTICLE_ADDED, particleAdded); emitter.removeEventListener(ParticleEvent.PARTICLE_DEAD, particleRemoved); for each (p in emitter.particles) { removeParticle(p); }; if (_emitters.length == 0){ removeEventListener(Event.RENDER, updateParticles); renderParticles([]); } else { stage.invalidate(); }; return; }; i++; }; } protected function renderParticles(particles:Array):void{ } protected function removeParticle(particle:Particle):void{ } private function particleRemoved(ev:ParticleEvent):void{ removeParticle(ev.particle); if (stage){ stage.invalidate(); }; } public function addEmitter(emitter:Emitter):void{ var p:Particle; _emitters.push(emitter); if (stage){ stage.invalidate(); }; emitter.addEventListener(EmitterEvent.EMITTER_UPDATED, emitterUpdated, false, 0, true); emitter.addEventListener(ParticleEvent.PARTICLE_CREATED, particleAdded, false, 0, true); emitter.addEventListener(ParticleEvent.PARTICLE_ADDED, particleAdded, false, 0, true); emitter.addEventListener(ParticleEvent.PARTICLE_DEAD, particleRemoved, false, 0, true); for each (p in emitter.particles) { addParticle(p); }; if (_emitters.length == 1){ addEventListener(Event.RENDER, updateParticles, false, 0, true); }; } } }//package org.flintparticles.common.renderers
Section 329
//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(){ super(); _shape = new Shape(); _shape.addEventListener(Event.ENTER_FRAME, frameUpdate, false, 0, true); _time = getTimer(); } private function frameUpdate(ev:Event):void{ var oldTime:int = _time; _time = getTimer(); var frameTime:Number = ((_time - oldTime) * 0.001); dispatchEvent(new UpdateEvent(UpdateEvent.UPDATE, frameTime)); } public static function get instance():FrameUpdater{ if (_instance == null){ _instance = new (FrameUpdater); }; return (_instance); } } }//package org.flintparticles.common.utils
Section 330
//interpolateColors (org.flintparticles.common.utils.interpolateColors) package org.flintparticles.common.utils { public function interpolateColors(color1:uint, color2:uint, ratio:Number):uint{ var inv:Number = (1 - ratio); var red:uint = Math.round(((((color1 >>> 16) & 0xFF) * ratio) + (((color2 >>> 16) & 0xFF) * inv))); var green:uint = Math.round(((((color1 >>> 8) & 0xFF) * ratio) + (((color2 >>> 8) & 0xFF) * inv))); var blue:uint = Math.round((((color1 & 0xFF) * ratio) + ((color2 & 0xFF) * inv))); var alpha:uint = Math.round(((((color1 >>> 24) & 0xFF) * ratio) + (((color2 >>> 24) & 0xFF) * inv))); return (((((alpha << 24) | (red << 16)) | (green << 8)) | blue)); } }//package org.flintparticles.common.utils
Section 331
//Maths (org.flintparticles.common.utils.Maths) package org.flintparticles.common.utils { public class Maths { private static const DEGTORAD:Number = 0.0174532925199433; private static const RADTODEG:Number = 57.2957795130823; public function Maths(){ super(); } public static function asRadians(degrees:Number):Number{ return ((degrees * DEGTORAD)); } public static function asDegrees(radians:Number):Number{ return ((radians * RADTODEG)); } } }//package org.flintparticles.common.utils
Section 332
//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(){ super(); _values = new Array(); } public function remove(value):Boolean{ var i:uint = _values.length; while (i--) { if (_values[i].value == value){ _values.splice(i, 1); return (true); }; }; return (false); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function nextName(index:int):String{ return ((index - 1).toString()); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function setProperty(name, value):void{ var index:uint = uint(name); if ((((index == name)) && ((index < _values.length)))){ _values[index].value = value; }; } public function add(value, priority:Number):uint{ var len:uint = _values.length; var i:uint; while (i < len) { if (_values[i].priority < priority){ break; }; i++; }; _values.splice(i, 0, new Pair(priority, value)); return (_values.length); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function getProperty(name){ var index:int = int(name); if ((((((index == name)) && ((index < _values.length)))) && (_values[index]))){ return (_values[index].value); }; return (undefined); } public function clear():void{ _values.length = 0; } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function nextNameIndex(index:int):int{ if (index < _values.length){ return ((index + 1)); }; return (0); } public function get length():uint{ return (_values.length); } public function removeAt(index:uint){ var temp:* = _values[index].value; _values.splice(index, 1); return (temp); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function nextValue(index:int){ return (_values[(index - 1)]); } public function contains(value):Boolean{ var i:uint = _values.length; while (i--) { if (_values[i].value == value){ return (true); }; }; return (false); } } }//package org.flintparticles.common.utils class Pair { private var value; private var priority:Number; private function Pair(priority:Number, value){ super(); this.priority = priority; this.value = value; } }
Section 333
//Accelerate (org.flintparticles.twoD.actions.Accelerate) package org.flintparticles.twoD.actions { import org.flintparticles.common.emitters.*; import org.flintparticles.common.particles.*; import org.flintparticles.twoD.particles.*; import org.flintparticles.common.actions.*; public class Accelerate extends ActionBase { private var _x:Number; private var _y:Number; public function Accelerate(accelerationX:Number, accelerationY:Number){ super(); _x = accelerationX; _y = accelerationY; } public function set x(value:Number):void{ _x = value; } public function get y():Number{ return (_y); } public function get x():Number{ return (_x); } override public function update(emitter:Emitter, particle:Particle, time:Number):void{ var p:Particle2D = Particle2D(particle); p.velX = (p.velX + (_x * time)); p.velY = (p.velY + (_y * time)); } public function set y(value:Number):void{ _y = value; } } }//package org.flintparticles.twoD.actions
Section 334
//Move (org.flintparticles.twoD.actions.Move) package org.flintparticles.twoD.actions { import org.flintparticles.common.emitters.*; import org.flintparticles.common.particles.*; import org.flintparticles.twoD.particles.*; import org.flintparticles.common.actions.*; public class Move extends ActionBase { private var p:Particle2D; public function Move(){ super(); } override public function getDefaultPriority():Number{ return (-10); } override public function update(emitter:Emitter, particle:Particle, time:Number):void{ p = Particle2D(particle); p.x = (p.x + (p.velX * time)); p.y = (p.y + (p.velY * time)); } } }//package org.flintparticles.twoD.actions
Section 335
//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(){ super(); _particleFactory = _creator; } public function get y():Number{ return (_y); } override protected function initParticle(particle:Particle):void{ var p:Particle2D; p = Particle2D(particle); p.x = _x; p.y = _y; p.rotation = _rotation; } override protected function sortParticles():void{ var len:int; var i:int; if (spaceSort){ spaceSortedX = _particles.sortOn("x", (Array.NUMERIC | Array.RETURNINDEXEDARRAY)); len = _particles.length; i = 0; while (i < len) { _particles[spaceSortedX[i]].sortID = i; i++; }; }; } public function set x(value:Number):void{ _x = value; } public function set rotRadians(value:Number):void{ _rotation = value; } public function get x():Number{ return (_x); } public function get rotRadians():Number{ return (_rotation); } public function set rotation(value:Number):void{ _rotation = Maths.asRadians(value); } public function get rotation():Number{ return (Maths.asDegrees(_rotation)); } public function set y(value:Number):void{ _y = value; } public static function get defaultParticleFactory():ParticleFactory{ return (_creator); } } }//package org.flintparticles.twoD.emitters
Section 336
//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.twoD.zones.*; import org.flintparticles.twoD.particles.*; import org.flintparticles.common.initializers.*; public class Velocity extends InitializerBase { private var _zone:Zone2D; public function Velocity(zone:Zone2D){ super(); _zone = zone; } override public function initialize(emitter:Emitter, particle:Particle):void{ var p:Particle2D; var sin:Number; var cos:Number; p = Particle2D(particle); var loc:Point = _zone.getLocation(); if (p.rotation == 0){ p.velX = loc.x; p.velY = loc.y; } else { sin = Math.sin(p.rotation); cos = Math.cos(p.rotation); p.velX = ((cos * loc.x) - (sin * loc.y)); p.velY = ((cos * loc.y) + (sin * loc.x)); }; } public function set zone(value:Zone2D):void{ _zone = value; } public function get zone():Zone2D{ return (_zone); } } }//package org.flintparticles.twoD.initializers
Section 337
//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 public function Particle2D(){ super(); } 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 cos:Number = (scale * Math.cos(rotation)); var sin:Number = (scale * Math.sin(rotation)); return (new Matrix(cos, sin, -(sin), cos, 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 338
//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(){ super(); _particles = new Array(); } public function clearAllParticles():void{ _particles = new Array(); } public function disposeParticle(particle:Particle):void{ if ((particle is Particle2D)){ particle.initialize(); _particles.push(particle); }; } public function createParticle():Particle{ if (_particles.length){ return (_particles.pop()); }; return (new Particle2D()); } } }//package org.flintparticles.twoD.particles
Section 339
//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(canvas:Rectangle, smoothing:Boolean=false){ super(); mouseEnabled = false; mouseChildren = false; _smoothing = smoothing; _preFilters = new Array(); _postFilters = new Array(); _canvas = canvas; createBitmap(); } public function get canvas():Rectangle{ return (_canvas); } public function set canvas(value:Rectangle):void{ _canvas = value; createBitmap(); } public function removeFilter(filter:BitmapFilter):void{ var i:int; while (i < _preFilters.length) { if (_preFilters[i] == filter){ _preFilters.splice(i, 1); return; }; i++; }; i = 0; while (i < _postFilters.length) { if (_postFilters[i] == filter){ _postFilters.splice(i, 1); return; }; i++; }; } override protected function renderParticles(particles:Array):void{ var i:int; var len:int; if (!_bitmap){ return; }; _bitmapData.lock(); len = _preFilters.length; i = 0; while (i < len) { _bitmapData.applyFilter(_bitmapData, _bitmapData.rect, BitmapRenderer.ZERO_POINT, _preFilters[i]); i++; }; if ((((len == 0)) && ((_postFilters.length == 0)))){ _bitmapData.fillRect(_bitmap.bitmapData.rect, 0); }; len = particles.length; if (len){ i = len; while (i--) { drawParticle(particles[i]); }; }; len = _postFilters.length; i = 0; while (i < len) { _bitmapData.applyFilter(_bitmapData, _bitmapData.rect, BitmapRenderer.ZERO_POINT, _postFilters[i]); i++; }; if (_colorMap){ _bitmapData.paletteMap(_bitmapData, _bitmapData.rect, ZERO_POINT, _colorMap[1], _colorMap[2], _colorMap[3], _colorMap[0]); }; _bitmapData.unlock(); } protected function drawParticle(particle:Particle2D):void{ var matrix:Matrix; matrix = particle.matrixTransform; matrix.translate(-(_canvas.x), -(_canvas.y)); _bitmapData.draw(particle.image, matrix, particle.colorTransform, DisplayObject(particle.image).blendMode, null, _smoothing); } public function setPaletteMap(red:Array=null, green:Array=null, blue:Array=null, alpha:Array=null):void{ _colorMap = new Array(4); _colorMap[0] = alpha; _colorMap[1] = red; _colorMap[2] = green; _colorMap[3] = blue; } public function clearPaletteMap():void{ _colorMap = null; } public function addFilter(filter:BitmapFilter, postRender:Boolean=false):void{ if (postRender){ _postFilters.push(filter); } else { _preFilters.push(filter); }; } 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 340
//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(center:Point, outerRadius:Number, innerRadius:Number, minAngle:Number, maxAngle:Number){ super(); if (outerRadius < innerRadius){ throw (new Error((((("The outerRadius (" + outerRadius) + ") can't be smaller than the innerRadius (") + innerRadius) + ") in your DiscSectorZone. N.B. the outerRadius is the second argument in the constructor and the innerRadius is the third argument."))); }; _center = center; _innerRadius = innerRadius; _outerRadius = outerRadius; _innerSq = (_innerRadius * _innerRadius); _outerSq = (_outerRadius * _outerRadius); _minAngle = minAngle; _maxAngle = maxAngle; while (_maxAngle > TWOPI) { _maxAngle = (_maxAngle - TWOPI); }; while (_maxAngle < 0) { _maxAngle = (_maxAngle + TWOPI); }; _minAllowed = (_maxAngle - TWOPI); if (minAngle == maxAngle){ _minAngle = _maxAngle; } else { _minAngle = clamp(_minAngle); }; } public function set minAngle(value:Number):void{ _minAngle = clamp(value); } 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(value:Number):void{ _innerRadius = value; _innerSq = (_innerRadius * _innerRadius); } public function set outerRadius(value:Number):void{ _outerRadius = value; _outerSq = (_outerRadius * _outerRadius); } public function set maxAngle(value:Number):void{ _maxAngle = value; while (_maxAngle > TWOPI) { _maxAngle = (_maxAngle - TWOPI); }; while (_maxAngle < 0) { _maxAngle = (_maxAngle + TWOPI); }; _minAllowed = (_maxAngle - TWOPI); } public function contains(x:Number, y:Number):Boolean{ x = (x - _center.x); y = (y - _center.y); var distSq:Number = ((x * x) + (y * y)); if ((((distSq > _outerSq)) || ((distSq < _innerSq)))){ return (false); }; var angle:Number = Math.atan2(y, x); angle = clamp(angle); return ((angle >= _minAngle)); } public function get minAngle():Number{ return (_minAngle); } public function get center():Point{ return (_center); } public function getLocation():Point{ var rand:Number = Math.random(); var point:Point = Point.polar((_innerRadius + ((1 - (rand * rand)) * (_outerRadius - _innerRadius))), (_minAngle + (Math.random() * (_maxAngle - _minAngle)))); point.x = (point.x + _center.x); point.y = (point.y + _center.y); return (point); } public function get outerRadius():Number{ return (_outerRadius); } public function set center(value:Point):void{ _center = value; } private function clamp(angle:Number):Number{ while (angle > _maxAngle) { angle = (angle - TWOPI); }; while (angle < _minAllowed) { angle = (angle + TWOPI); }; return (angle); } } }//package org.flintparticles.twoD.zones
Section 341
//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(center:Point, outerRadius:Number, innerRadius:Number=0){ super(); if (outerRadius < innerRadius){ throw (new Error((((("The outerRadius (" + outerRadius) + ") can't be smaller than the innerRadius (") + innerRadius) + ") in your DiscZone. N.B. the outerRadius is the second argument in the constructor and the innerRadius is the third argument."))); }; _center = center; _innerRadius = innerRadius; _outerRadius = outerRadius; _innerSq = (_innerRadius * _innerRadius); _outerSq = (_outerRadius * _outerRadius); } public function set outerRadius(value:Number):void{ _outerRadius = value; _outerSq = (_outerRadius * _outerRadius); } public function get center():Point{ return (_center); } public function getArea():Number{ return ((Math.PI * (_outerSq - _innerSq))); } public function getLocation():Point{ var rand:Number = Math.random(); var point:Point = Point.polar((_innerRadius + ((1 - (rand * rand)) * (_outerRadius - _innerRadius))), (Math.random() * TWOPI)); point.x = (point.x + _center.x); point.y = (point.y + _center.y); return (point); } public function get outerRadius():Number{ return (_outerRadius); } public function get innerRadius():Number{ return (_innerRadius); } public function set innerRadius(value:Number):void{ _innerRadius = value; _innerSq = (_innerRadius * _innerRadius); } public function set center(value:Point):void{ _center = value; } public function contains(x:Number, y:Number):Boolean{ x = (x - _center.x); y = (y - _center.y); var distSq:Number = ((x * x) + (y * y)); return ((((distSq <= _outerSq)) && ((distSq >= _innerSq)))); } } }//package org.flintparticles.twoD.zones
Section 342
//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 343
//KingPenguin (pets.KingPenguin) package pets { import flash.events.*; import flash.display.*; import flash.geom.*; import com.cheezeworld.math.*; import game.assets.*; import flash.utils.*; import ui.*; import game.*; import flash.media.*; import utils.*; import com.melesta.utils.math.*; import production.*; import com.melesta.sound.*; import caurina.transitions.*; public class KingPenguin extends KingPenguinTemplate { 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;// = "KING_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;// = "PLUME" 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 KingPenguin(){ super(); 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(event:Event=null):void{ _stageInstance.removeChild(this); if (event != null){ KingPenguin.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(posx:Number, posy:Number, delay:Number, stageInstance:DisplayObjectContainer, onLand:Boolean=false):void{ _counter = 7; this.x = posx; this.y = -10; stageInstance.addChild(this); _stageInstance = stageInstance; Tweener.addTween(this, {y:posy, time:0.3, delay:delay, transition:"easeInCirc", onComplete:startAnimation}); timer = new Timer(3000); timer.addEventListener(TimerEvent.TIMER, move); _hungryTimer.start(); } public function resume(event: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("ostrich_hungry", 1); }; break; case "moving": _stateTimer.start(); _hungryTimer.start(); timer.start(); this.body.play(); break; }; _produceTimer.start(); }; } public function startAnimation():void{ _produceTimer.start(); var left:Number = ((this.x)<300) ? -1 : 1; SoundManager.play("ostrich_voice", 1, new SoundTransform(1, left)); timer.start(); move(); if (((firstShow) && (!(Config.skiped)))){ firstShow = false; BlockTooltip.instance.show(this.x, this.y, Config.currentLanguage.tooltips.ostrich); }; index = KingPenguin.count; KingPenguin.penguinList.push(this); KingPenguin.count++; LevelStatistics.goals[8] = KingPenguin.count; LevelStatistics.updateStatistics(); } private function hungry(event:TimerEvent=null):void{ event.stopPropagation(); _hungryValue = (_hungryValue - _deltaHungry); if (_hungryValue <= 40){ if (_state != "hungry"){ _state = "hungry"; findGrass(); if (_hungryValue == 20){ _hungrySound = SoundManager.play("ostrich_hungry", 1); }; }; } else { _state = "moving"; }; if (_hungryValue <= 0){ _state = "death"; death(); }; this.hungryProgress._mask.width = ((_hungryValue / 100) * 17); } public function move(event:TimerEvent=null):void{ if (event != null){ event.stopPropagation(); }; var p1:Point = new Point(this.x, this.y); var newX:Number = MathUtils.rand(150, 400); var newY:Number = MathUtils.rand(150, 300); var p2:Point = new Point(newX, newY); var dir:Object = Direction.getDirection(p1, p2); this.body.gotoAndPlay(dir.direction); if (dir.right){ this.scaleX = -1; prewRight = true; } else { this.scaleX = 1; prewRight = false; }; Tweener.removeTweens(this); if (_hungryValue <= 30){ t = (Math.sqrt((((x - p2.x) * (x - p2.x)) + ((y - p2.y) * (y - p2.y)))) / 30); } else { t = (Math.sqrt((((x - p2.x) * (x - p2.x)) + ((y - p2.y) * (y - p2.y)))) / 10); }; Tweener.addTween(this, {y:p2.y, x:p2.x, time:t, transition:"linear", onComplete:move}); } private function nextPoint():Point{ var newX:Number = MathUtils.rand(150, 400); var newY:Number = MathUtils.rand(150, 300); var p2:Point = new Point(newX, newY); while (Math.sqrt((((x - newX) * (x - newX)) + ((y - newY) * (y - newY)))) < 100) { newX = MathUtils.rand(150, 400); newY = MathUtils.rand(150, 300); p2.x = newX; p2.y = newY; }; return (p2); } public function kill():void{ if (((!((this._state == "flyOut"))) && (!((this._state == "death"))))){ this._state = "flyOut"; Tweener.removeTweens(this); SoundManager.play("ostrich_flyout", 1); _hungrySound.stop(); KingPenguin.count--; this.body.stop(); timer.stop(); _hungryTimer.stop(); _stateTimer.stop(); KingPenguin.penguinList.splice(index, 1); KingPenguin.refreshIndexes(); LevelStatistics.goals[8] = KingPenguin.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 pay:Number; _hungryTimer.stop(); if (((!((nearGrass == null))) && ((Grass.grassList.length > 0)))){ pay = nearGrass.getGrass(); if (pay > 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 (!pay){ if (nearGrass != null){ nearGrass.destroy(); }; }; findGrass(); return (false); //unresolved jump }; _hungryTimer.start(); Tweener.removeTweens(this); findGrass(); return (false); } private function produce(event:TimerEvent=null):void{ event.stopPropagation(); _produceCounter++; if (_produceCounter == 19){ PetsContainer.instance.addProduct(_production, this.x, this.y); _produceCounter = 0; }; } private function checkHungry(event:TimerEvent=null):void{ if (event){ event.stopPropagation(); }; if (_state == "hungry"){ if (this._hungryValue > 80){ _state = "moving"; Tweener.removeTweens(this); _hungryTimer.start(); timer.start(); _counter = 7; move(); }; }; } public function pause(event: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("ostrich_die", 1); KingPenguin.count--; KingPenguin.penguinList.splice(index, 1); KingPenguin.refreshIndexes(); LevelStatistics.goals[8] = KingPenguin.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 i:int; while (i < KingPenguin.penguinList.length) { KingPenguin.penguinList[i].index = i; i++; }; } public static function remove(penguins:Number):void{ while (penguins > 0) { KingPenguin.penguinList[(KingPenguin.count - 1)].destroy(); KingPenguin.penguinList.pop(); penguins--; KingPenguin.count--; }; KingPenguin.refreshIndexes(); LevelStatistics.goals[8] = KingPenguin.count; LevelStatistics.updateStatistics(); } } }//package pets
Section 344
//Penguin (pets.Penguin) package pets { import flash.events.*; import flash.display.*; import flash.geom.*; import com.cheezeworld.math.*; import game.assets.*; import flash.utils.*; import ui.*; import game.*; import flash.media.*; import utils.*; import com.melesta.utils.math.*; import production.*; import com.melesta.sound.*; import caurina.transitions.*; public class Penguin extends PenguinTemplate { 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;// = "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(){ super(); 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(event:Event=null):void{ _stageInstance.removeChild(this); if (event != 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); } public function show(posx:Number, posy:Number, delay:Number, stageInstance:DisplayObjectContainer, onLand:Boolean=false):void{ _counter = 7; this.x = posx; this.y = posy; stageInstance.addChild(this); _stageInstance = stageInstance; timer = new Timer(3000); timer.addEventListener(TimerEvent.TIMER, move); if (!onLand){ this.y = -10; Tweener.addTween(this, {y:posy, time:0.3, delay:delay, transition:"easeInCirc", onComplete:startAnimation}); } else { startAnimation(); }; _hungryTimer.start(); } public function resume(event: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 left:Number = ((this.x)<300) ? -1 : 1; SoundManager.play("guinea_fowl_voice", 1, new SoundTransform(1, left)); 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[7] = Penguin.count; LevelStatistics.updateStatistics(); if ((((Farm2.portal == "kongregate")) && ((LevelStatistics.goals[7] == 15)))){ StartScreen.kongregate.stats.submit("15 penguins", 1); }; } private function hungry(event:TimerEvent=null):void{ event.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(event:TimerEvent=null):void{ if (event != null){ event.stopPropagation(); }; var p1:Point = new Point(this.x, this.y); var newX:Number = MathUtils.rand(150, 400); var newY:Number = MathUtils.rand(150, 300); var p2:Point = new Point(newX, newY); var dir:Object = Direction.getDirection(p1, p2); this.body.gotoAndPlay(dir.direction); if (dir.right){ this.scaleX = -1; prewRight = true; } else { this.scaleX = 1; prewRight = false; }; Tweener.removeTweens(this); if (_hungryValue <= 30){ t = (Math.sqrt((((x - p2.x) * (x - p2.x)) + ((y - p2.y) * (y - p2.y)))) / 30); } else { t = (Math.sqrt((((x - p2.x) * (x - p2.x)) + ((y - p2.y) * (y - p2.y)))) / 10); }; Tweener.addTween(this, {y:p2.y, x:p2.x, time:t, transition:"linear", onComplete:move}); } private function nextPoint():Point{ var newX:Number = MathUtils.rand(150, 400); var newY:Number = MathUtils.rand(150, 300); var p2:Point = new Point(newX, newY); while (Math.sqrt((((x - newX) * (x - newX)) + ((y - newY) * (y - newY)))) < 100) { newX = MathUtils.rand(150, 400); newY = MathUtils.rand(150, 300); p2.x = newX; p2.y = newY; }; return (p2); } 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[7] = 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 pay:Number; _hungryTimer.stop(); if (((!((nearGrass == null))) && ((Grass.grassList.length > 0)))){ pay = nearGrass.getGrass(); if (pay > 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 (!pay){ if (nearGrass != null){ nearGrass.destroy(); }; }; findGrass(); return (false); //unresolved jump }; _hungryTimer.start(); Tweener.removeTweens(this); findGrass(); return (false); } private function produce(event:TimerEvent=null):void{ event.stopPropagation(); _produceCounter++; if (_produceCounter == 19){ PetsContainer.instance.addProduct(_production, this.x, this.y); _produceCounter = 0; }; } private function checkHungry(event:TimerEvent=null):void{ if (event){ event.stopPropagation(); }; if (_state == "hungry"){ if (this._hungryValue > 80){ _state = "moving"; Tweener.removeTweens(this); _hungryTimer.start(); timer.start(); _counter = 7; move(); }; }; } public function pause(event:Event=null):void{ _stateTimer.stop(); _hungryTimer.stop(); timer.stop(); _produceTimer.stop(); _hungrySound.stop(); this.body.stop(); Tweener.pauseTweens(this); } 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[7] = 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 i:int; while (i < Penguin.penguinList.length) { Penguin.penguinList[i].index = i; i++; }; } public static function remove(penguins:Number):void{ while (penguins > 0) { Penguin.penguinList[(Penguin.count - 1)].destroy(); Penguin.penguinList.pop(); penguins--; Penguin.count--; }; Penguin.refreshIndexes(); LevelStatistics.goals[7] = Penguin.count; LevelStatistics.updateStatistics(); } } }//package pets
Section 345
//PetsContainer (pets.PetsContainer) package pets { import flash.events.*; import flash.display.*; import flash.geom.*; import com.cheezeworld.math.*; import game.assets.*; import org.flintparticles.twoD.zones.*; import flash.filters.*; import org.flintparticles.common.initializers.*; import org.flintparticles.common.actions.*; import org.flintparticles.common.counters.*; import flash.utils.*; import houses.*; import ui.*; import org.flintparticles.twoD.emitters.*; import org.flintparticles.twoD.renderers.*; import org.flintparticles.twoD.actions.*; import org.flintparticles.twoD.initializers.*; import org.flintparticles.common.energyEasing.*; import org.flintparticles.common.displayObjects.*; import production.*; 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:Field; public static var instance:PetsContainer; public function PetsContainer(stageInstance:DisplayObjectContainer):void{ super(); _stageInstance = stageInstance; container = new Sprite(); _field = new Field(); _field.x = 167; _field.y = 145; _field.alpha = 0; stageInstance.addChild(_field); stageInstance.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(type:String, _x:Number, _y:Number):void{ var _local4:Penguin; var _local5:KingPenguin; switch (type){ case "PENGUIN": _local4 = new Penguin(); _local4.show(_x, _y, 0, _stageInstance, true); break; case "KING_PENGUIN": _local5 = new KingPenguin(); _local5.show(_x, _y, 0, _stageInstance, true); break; }; } public function addProduct(production:String, posx:Number, posy:Number):void{ var product:Production = new Production(production, posx, (posy - (Math.random() * 30)), _stageInstance); } private function arrange(event:TimerEvent=null):void{ if (event != null){ event.stopPropagation(); }; _sortedItems = new Array(); var j:int; while (j < _stageInstance.numChildren) { _sortedItems[j] = _stageInstance.getChildAt(j); j++; }; _sortedItems.sortOn(["y", "x"], Array.NUMERIC); var i:int = _stageInstance.numChildren; while (i--) { if (_stageInstance.getChildAt(i) != _sortedItems[i]){ _stageInstance.setChildIndex(_sortedItems[i], i); }; }; } public function addGrass(event:MouseEvent=null):void{ var grass: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(); grass = new Grass(Math.ceil(_stageInstance.mouseX), Math.ceil(_stageInstance.mouseY), _stageInstance); }; } public function addFlyProduct(production:String, count:Number):void{ var product:Production; var i:int; while (i < count) { product = new Production(production, MathUtils.rand(150, 400), MathUtils.rand(150, 300), _stageInstance, true); i++; }; } public function addPet(type:String, delay:Number=0):void{ var _local5:Panda; var _local6:Penguin; var _local7:KingPenguin; var _local8:Penguin; var _local9:KingPenguin; var newX:Number = MathUtils.rand(150, 400); var newY:Number = MathUtils.rand(150, 300); switch (type){ case "POLAR_BEAR": _local5 = new Panda(); _local5.show(newX, newY, 1, _stageInstance); break; case "PENGUIN": _local6 = new Penguin(); _local6.show(newX, newY, delay, _stageInstance); break; case "KING_PENGUIN": _local7 = new KingPenguin(); _local7.show(newX, newY, delay, _stageInstance); break; case "GUINEA_FOWL": _local8 = new Penguin(); _local8.show(newX, newY, delay, _stageInstance); break; case "OSTRICH": _local9 = new KingPenguin(); _local9.show(newX, newY, delay, _stageInstance); break; }; } } }//package pets
Section 346
//DepotProduct (production.DepotProduct) package production { public class DepotProduct extends DepotProductTemplate { private var types:Array; public function DepotProduct():void{ types = new Array("EGG", "PLUME", "DRIED_EGGS", "CAKE", "FLOURY_CAKE", "FLOUR", "POLAR_BEAR", "PENGUIN", "KING_PENGUIN"); super(); this.visible = false; } public function hide():void{ this.visible = false; } public function show(productIndex:Number):void{ this.body.gotoAndStop(types[productIndex]); this.visible = true; } } }//package production
Section 347
//DepotProductTemplate (production.DepotProductTemplate) package production { import flash.display.*; public dynamic class DepotProductTemplate extends MovieClip { public var body:MovieClip; public function DepotProductTemplate(){ super(); } } }//package production
Section 348
//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(type:String, posx:Number, posy:Number, delay:Number, second:Boolean=false){ var type = type; var posx = posx; var posy = posy; var delay = delay; var second = second; 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(event:Event=null):void{ Tweener.removeTweens(this); container.removeChild(this); gameController.removeEventListener(GameController.LEVEL_COMPLETED, destroy); } } }//package production
Section 349
//Production (production.Production) package production { import flash.events.*; import flash.display.*; import flash.filters.*; import flash.utils.*; import houses.*; import ui.*; import game.*; import utils.*; import com.melesta.sound.*; import caurina.transitions.*; 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 _type:String; private var bgColor:uint;// = 0xFFFFFF private var gameController:GameController; private var _stageInstance:DisplayObjectContainer; public static var firstShow:Boolean = true; public function Production(type:String, posx:Number, posy:Number, stageInstance:DisplayObjectContainer=null, fly:Boolean=false){ var type = type; var posx = posx; var posy = posy; var stageInstance = stageInstance; var fly = fly; super(); 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 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 blinking():void{ Tweener.removeTweens(this, alpha); var blink:Number = 1; if (this.alpha < 1){ blink = 1; } else { blink = 0.3; }; Tweener.addTween(this, {alpha:blink, time:0.2}); } public function removeShadow(event:MouseEvent=null):void{ var filter:BitmapFilter = getBitmapFilter(0); var myFilters:Array = new Array(); myFilters.push(filter); filters = myFilters; } private function onClick(event:MouseEvent=null):void{ event.stopPropagation(); this.parashute.visible = false; 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"}); } else { SoundManager.play("fool_action", 1); }; } private function live(event:TimerEvent):void{ event.stopPropagation(); _lifeTime--; if (_lifeTime < 30){ blinking(); }; if (!_lifeTime){ _deathTimer.stop(); Tweener.removeTweens(this, alpha); _deathTimer.removeEventListener(TimerEvent.TIMER, live, false); remove(); }; } public function resume(event:Event=null):void{ _deathTimer.start(); Tweener.resumeTweens(this); } public function dropShadow(event:MouseEvent=null):void{ var filter:BitmapFilter = getBitmapFilter(4); var myFilters:Array = new Array(); myFilters.push(filter); filters = myFilters; } public function pause(event:Event=null):void{ _deathTimer.stop(); Tweener.pauseTweens(this); } public function destroy(event:Event=null):void{ _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); } private function getBitmapFilter(str:Number):BitmapFilter{ var color:Number = 0xFFFFFF; var angle:Number = 0; var alpha:Number = 0.8; var blurX:Number = 10; var blurY:Number = 10; var distance:Number = 0; var strength:Number = str; var inner:Boolean; var knockout:Boolean; var quality:Number = BitmapFilterQuality.HIGH; return (new DropShadowFilter(distance, angle, color, alpha, blurX, blurY, strength, quality, inner, knockout)); } } }//package production
Section 350
//PruductionTemplate (production.PruductionTemplate) package production { import flash.display.*; public dynamic class PruductionTemplate extends MovieClip { public var parashute:MovieClip; public var body:MovieClip; public function PruductionTemplate(){ super(); } } }//package production
Section 351
//ViewProduction (production.ViewProduction) package production { public class ViewProduction extends PruductionTemplate { public function ViewProduction(type:String){ super(); this.parashute.visible = false; if (type == "INCUBATOR"){ type = "PENGUIN"; }; this.body.gotoAndStop(type); } } }//package production
Section 352
//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 353
//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(nickName:String="", placeValue:int=0, ai:Boolean=false){ super(); _id = new Date().getTime(); _user = new UserObjectEmulator(nickName, ai); _place = placeValue; _isAI = ai; } 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 354
//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(){ super(); _client = new ClientObjectEmulator(); } public function sendResult(result:int, isTemp:Boolean):void{ } public function set trainingMode(value:Boolean):void{ } public function get data():Object{ return (null); } public function sendCommand(command:ICommand):void{ } public function get gameObject():IGameObject{ return (null); } public function set data(value:Object):void{ } public function disconnect():void{ } public function get trainingMode():Boolean{ return (true); } public function getTop(count:int=-1):void{ var xml: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(xml))); } public function connect(address:String="", port:int=-1):void{ dispatchEvent(new ConnectionEvent(ConnectionEvent.CONNECT)); } public function set uiManager(value:IUIManager):void{ } public function get clientObject():IClientObject{ return (_client); } public function ready():void{ } public function refreshPlayerInfo(userID:String="", mode:String=""):void{ var xml:XML = <command name="user"> <user id="0" nickname="player" guest="0" login="player" rating="1"/> </command> ; dispatchEvent(new ConnectionEvent(ConnectionEvent.PLAYER_UPDATED, new UpdatePlayer(xml))); } } }//package ru.rambler.games.debug
Section 355
//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.game.*; import ru.rambler.games.interfaces.ui.*; 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(container:DisplayObjectContainer){ super(); _uiManager = SingleplayerUIManager.instance; _uiManager.container = container; _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 356
//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(idValue:String="", isAI:Boolean=false){ super(); _id = ((idValue)=="") ? new Date().getTime().toString() : idValue; _avatar = (isAI) ? "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 357
//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(type:String, eventCommand:ICommand=null, bubbles:Boolean=false, cancelable:Boolean=false){ super(type, bubbles, cancelable); _command = eventCommand; } 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 358
//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(type:String, actionObj:Object=null, bubbles:Boolean=false, cancelable:Boolean=false){ super(type, bubbles, cancelable); _action = actionObj; } 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 359
//ICore (ru.rambler.games.interfaces.core.ICore) package ru.rambler.games.interfaces.core { import ru.rambler.games.interfaces.net.*; import ru.rambler.games.interfaces.game.*; import ru.rambler.games.interfaces.ui.*; 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 360
//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 361
//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(:ICore):void; } }//package ru.rambler.games.interfaces.game
Section 362
//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(:IGameState):void; function set game(:IMultiplayerGame):void; function get activePlayer():IClientObject; function get turnTime():int; function loadState(:String):void; function pauseTimer():void; function get state():IGameState; function set uiManager(:IUIManager):void; function saveState(ru.rambler.games.interfaces.ui:IGameState):String; function resumeTimer():void; function get isOwnTurn():Boolean; function set connection(:IMultiplayerConnection):void; } }//package ru.rambler.games.interfaces.game
Section 363
//IGameState (ru.rambler.games.interfaces.game.IGameState) package ru.rambler.games.interfaces.game { public interface IGameState { function get activePlayerIdx():int; function restoreFromObject(/Users/ksan/Documents/work/rg_relaunch/tmp;ru/rambler/games/interfaces/game;IGameState.as:Object):void; function toObject():Object; function set activePlayerIdx(/Users/ksan/Documents/work/rg_relaunch/tmp;ru/rambler/games/interfaces/game;IGameState.as:int):void; function clone():IGameState; } }//package ru.rambler.games.interfaces.game
Section 364
//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 365
//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(:IMoveDescription):void; function prepareForTurn():void; } }//package ru.rambler.games.interfaces.game
Section 366
//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 367
//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(ru.rambler.games.interfaces.net:ICommand/ru.rambler.games.interfaces.net:ICommand:params/get:String):void; function addXML(ru.rambler.games.interfaces.net:ICommand/ru.rambler.games.interfaces.net:ICommand:params/get:XML):void; function get commandName():String; function toXML():XML; function addParam(_arg1:String, _arg2:Object):void; function get params():Object; function decodeFromXML(ru.rambler.games.interfaces.net:ICommand/ru.rambler.games.interfaces.net:ICommand:params/get:XML):void; } }//package ru.rambler.games.interfaces.net
Section 368
//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(:ICommand):void; function refreshPlayerInfo(_arg1:String="", _arg2:String=""):void; function get data():Object; function get gameObject():IGameObject; function set uiManager(:IUIManager):void; function set data(:Object):void; function connect(_arg1:String="", _arg2:int=-1):void; function set trainingMode(:Boolean):void; function disconnect():void; function get trainingMode():Boolean; } }//package ru.rambler.games.interfaces.net
Section 369
//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 370
//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 371
//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(ru.rambler.games.interfaces.net:String):void; function endGame(_arg1:String, _arg2:String=""):void; function sendChatState(ru.rambler.games.interfaces.net:Boolean):void; function sendData(ru.rambler.games.interfaces.net:Object):void; function requestDraw():void; function get tableObject():ITableObject; function getQueue(/Users/ksan/Documents/work/rg_relaunch/tmp;ru/rambler/games/interfaces/net;IMultiplayerConnection.as:String):IQueue; function reconnectToTable():void; function sendAction(_arg1:Object, _arg2:int):void; } }//package ru.rambler.games.interfaces.net
Section 372
//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():Boolean; function getAt(*: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():Boolean; } }//package ru.rambler.games.interfaces.net
Section 373
//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(:int=-1):void; } }//package ru.rambler.games.interfaces.net
Section 374
//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(ru.rambler.games.interfaces.net:ITableObject/ru.rambler.games.interfaces.net:ITableObject:isRatingable:String):IClientObject; function get approvedCount():int; function isPrivate():Boolean; function get ID():String; function get moveTime():int; } }//package ru.rambler.games.interfaces.net
Section 375
//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 376
//IGameFrame (ru.rambler.games.interfaces.ui.IGameFrame) package ru.rambler.games.interfaces.ui { import flash.display.*; import flash.text.*; import flash.geom.*; public interface IGameFrame { function get container():DisplayObjectContainer; function set container(:DisplayObjectContainer):void; function get giveupButton():InteractiveObject; function get musicButton():InteractiveObject; function setActivePlayer(:int=-1):void; function set gameTitle(:String):void; function clear():void; function init(:int):void; function set tableID(:String):void; function get helpButton():InteractiveObject; function get sendButton():SimpleButton; function clearPlayerInfo(:int=0):void; function get customArea():Rectangle; function get soundButton():InteractiveObject; function getPlayerInfoContainer(/Users/ksan/Documents/work/rg_relaunch/tmp;ru/rambler/games/interfaces/ui;IGameFrame.as:int=0):DisplayObjectContainer; function get topButton():InteractiveObject; function set gameID(: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(:String):void; } }//package ru.rambler.games.interfaces.ui
Section 377
//IPopupManager (ru.rambler.games.interfaces.ui.IPopupManager) package ru.rambler.games.interfaces.ui { import flash.display.*; public interface IPopupManager { function registerInfoWindow(:Class):void; function set windowContainer(:DisplayObjectContainer):void; function centerWindow(:IWindow):void; function showCreatedPopup(_arg1:IWindow, _arg2:Boolean=false, _arg3:Boolean=true, _arg4:Function=null, _arg5=null, _arg6:Array=null):IWindow; function registerOneButtonWindow(:Class):void; function clear():void; function registerSelectWindow(: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(:Class):void; function get infoWindowClass():Class; function bringToFront(:IWindow):void; function get inputWindowClass():Class; } }//package ru.rambler.games.interfaces.ui
Section 378
//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(:Class):void; function set soundTransform(:SoundTransform):void; function set soundState(:Boolean):void; function get soundTransform():SoundTransform; function get gameStartSound():Class; } }//package ru.rambler.games.interfaces.ui
Section 379
//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(:IPopupManager):void; function set cursor(:DisplayObject):void; function get cursor():DisplayObject; function set container(:DisplayObjectContainer):void; function closeGame():void; function get gameFrame():IGameFrame; function set soundManager(:ISoundManager):void; function set gameFrame(:IGameFrame):void; function get soundManager():ISoundManager; } }//package ru.rambler.games.interfaces.ui
Section 380
//IWindow (ru.rambler.games.interfaces.ui.IWindow) package ru.rambler.games.interfaces.ui { import flash.events.*; public interface IWindow extends IEventDispatcher { function set title(/Users/ksan/Documents/work/rg_relaunch/tmp;ru/rambler/games/interfaces/ui;IWindow.as:String):void; function externalAction(/Users/ksan/Documents/work/rg_relaunch/tmp;ru/rambler/games/interfaces/ui;IWindow.as:String):void; function get buttonPressed():int; function close():void; function set text(/Users/ksan/Documents/work/rg_relaunch/tmp;ru/rambler/games/interfaces/ui;IWindow.as:String):void; function get text():String; } }//package ru.rambler.games.interfaces.ui
Section 381
//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(xml:XML){ super(COMMAND_NAME); decodeFromXML(xml); } 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(xml:XML):void{ var user:UserObject; _xml = xml; _userList = new Array(); var i:int; while (i < _xml.user.length()) { user = (_userList[i] = new UserObject()); user.decode(_xml.user[i]); i++; }; _userList.sortOn("rating", (Array.NUMERIC | Array.DESCENDING)); } } }//package ru.rambler.games.net.commands.server
Section 382
//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(xml:XML){ super(COMMAND_NAME); decodeFromXML(xml); } 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(xml:XML):void{ _xml = xml; _user = new UserObject(); _user.decode(_xml.user[0]); } } }//package ru.rambler.games.net.commands.server
Section 383
//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(commandNameParam:String=""){ super(); _xml = <command/> ; if (commandNameParam != ""){ commandName = commandNameParam; }; } private function _addConst(x:XML, name:String, o:Object):void{ var ba:ByteArray; if ((o is String)){ x[name] = o; } else { ba = new ByteArray(); ba.writeObject(o); ba.position = 0; x[name].rg_amf = ByteUtil.byteArrayToHexString(ba); }; } public function addConst(name:String, o:Object):void{ _addConst(_xml, name, o); } private function _pushAttribute(o:Object, name:String, attribute:Object):void{ var tmp:Object; if (o[name] == undefined){ o[name] = attribute; } else { if ((o[name] is Array)){ o[name].push(attribute); } else { tmp = o[name]; o[name] = new Array(); o[name].push(tmp); }; }; } private function _xml2obj(o:Object, xml:XML):void{ var element:XML; var attrib:XML; var ba:ByteArray; var inner:Object; var idx:String = xml.name().toString(); if (xml != _xml){ if (xml.attribute("value") != undefined){ _pushAttribute(o, idx, xml.attribute("value").toString()); } else { for each (attrib in xml.attributes()) { _pushAttribute(o, attrib.name().toString(), attrib.toString()); o[attrib.name().toString()] = attrib.toString(); }; }; }; for each (element in xml.elements()) { idx = element.name().toString(); if ((((idx == "rg_amf")) && (element.hasSimpleContent()))){ ba = ByteUtil.hexStringToByteArray(element.text()[0]); o = ba.readObject(); return; }; if (((element.hasSimpleContent()) && (!((element.text() == undefined))))){ _pushAttribute(o, idx, element.text()[0]); } else { inner = new Object(); _xml2obj(inner, element); _pushAttribute(o, idx, inner); }; }; } public function get params():Object{ var o:Object = new Object(); _xml2obj(o, _xml); return (o); } private function _addObject(x:XML, name:String, o:Object):void{ var node:XML; var i:String; if ((((((o is Number)) || ((o is Boolean)))) || ((((o is String)) && ((String(o).length < 0xFF)))))){ if (x != _xml){ x.@[name] = o; } else { node = new XML((("<" + name) + "/>")); x = x.appendChild(node); node.@["value"] = o; }; } else { if ((((o is String)) || ((o is Array)))){ _addConst(x, name, o); } else { node = new XML((("<" + name) + "/>")); x = x.appendChild(node); for (i in o) { _addObject(node, i, o[i]); }; }; }; } public function set commandName(command:String):void{ _xml.@name = command; } public function addXML(xml:XML):void{ _xml.appendChild(xml); } public function addParam(name:String, o:Object):void{ _addObject(_xml, name, o); } public function toXML():XML{ return (_xml); } public function get commandName():String{ return (_xml.@name.toString()); } public function decodeFromXML(xml:XML):void{ _xml = xml; } } }//package ru.rambler.games.net.commands
Section 384
//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(){ super(); _settings = new Object(); } public function get moderator():int{ return (_moderator); } public function get moderator_visible():int{ return (_moderator_visible); } public function set maxRating(r:int):void{ _max_rating = r; } public function toString():String{ return ((((((((("[UserObject id=" + _id) + ", nickname=") + _nickname) + ", rating=") + _rating) + ", max_rating=") + _max_rating) + "]")); } public function decode(xml:XML):void{ var attrib:XML; var aname:String; var ba:ByteArray; for each (attrib in xml.attributes()) { aname = attrib.name().toString(); switch (aname){ case "id": _id = attrib.toString(); break; case "nickname": _nickname = attrib.toString(); break; case "rating": _rating = int(attrib.toString()); break; case "max_rating": _max_rating = int(attrib.toString()); break; case "moderator": _moderator = int(attrib.toString()); break; case "moderator_visible": _moderator_visible = int(attrib.toString()); break; case "avatar": _avatar = attrib.toString(); break; case "login": _login = attrib.toString(); break; case "settings": break; default: this[aname] = attrib.toString(); }; if (xml.settings.text()[0] != null){ ba = ByteUtil.hexStringToByteArray(xml.settings.text()[0]); _settings = ba.readObject(); }; }; } public function get avatarURL():String{ return (_avatar); } public function get ID():String{ return (_id); } public function set nickname(nick:String):void{ _nickname = nick; } 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(mode:String=""):XML{ var ba:ByteArray; if (mode == ""){ mode = UserObject.FULL_MODE; }; var xml:XML = new XML("<user />"); xml.@id = _id; if (mode != UserObject.SHORT_MODE){ xml.@nickname = _nickname; xml.@avatar = _avatar; xml.@login = _login; xml.@rating = _rating; xml.@max_rating = _max_rating; if (mode != UserObject.MEDIUM_MODE){ ba = new ByteArray(); ba.writeObject(_settings); ba.position = 0; xml.settings = ByteUtil.byteArrayToHexString(ba); }; }; return (xml); } public function set avatarURL(r:String):void{ _avatar = r; } public function set ID(id:String):void{ _id = id; } public function set rating(r:int):void{ _rating = r; } public function get nickname():String{ return (_nickname); } } }//package ru.rambler.games.net.objects
Section 385
//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(){ super(); addEventListener(Event.ADDED_TO_STAGE, init); } private function mouseDownHandler(e:MouseEvent):void{ _startX = stage.mouseX; _startY = stage.mouseY; stage.addEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler); stage.addEventListener(MouseEvent.MOUSE_UP, mouseUpHandler); } private function mouseUpHandler(e:MouseEvent):void{ stage.removeEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler); stage.removeEventListener(MouseEvent.MOUSE_UP, mouseUpHandler); } public function init(e:Event=null):void{ _drawWindow(); } private function mouseMoveHandler(e:MouseEvent):void{ var dy:int; var dx:int = (stage.mouseX - _startX); dy = (stage.mouseY - _startY); x = (x + dx); y = (y + dy); _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(dist:Number, knockout:Boolean=false):DropShadowFilter{ return (new DropShadowFilter(dist, 45, Style.DROPSHADOW, 1, dist, dist, 0.3, 1, knockout)); } } }//package ru.rambler.games.ui.windows
Section 386
//InfoWindow (ru.rambler.games.ui.windows.InfoWindow) package ru.rambler.games.ui.windows { import ru.rambler.games.interfaces.ui.*; import flash.display.*; import flash.text.*; 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(){ super(); _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(txt:String):void{ _text.styleSheet = style; _text.htmlText = (("<span class='wtext'>" + txt) + "</span>"); } public function externalAction(event:String):void{ } override public function toString():String{ return (("InfoWindow " + _id)); } public function set title(text:String):void{ _title.styleSheet = style; _title.htmlText = (("<span class='wtitle'>" + text) + "</span>"); } override protected function _drawWindow():void{ _dragArea = new Shape(); var g:Graphics = _dragArea.graphics; g.clear(); g.beginFill(Style.WINDOW_FACE); g.drawRect(0, 0, Style.WINDOW_WIDTH, Style.WINDOW_HEIGHT); g.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 387
//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; public function OkWindow(){ super(); } 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(event:MouseEvent):void{ _buttonCode = Buttons.OK; close(); } } }//package ru.rambler.games.ui.windows
Section 388
//PushButton (ru.rambler.games.ui.windows.PushButton) package ru.rambler.games.ui.windows { import flash.events.*; import flash.display.*; import flash.text.*; 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(parent:DisplayObjectContainer=null, xpos:Number=0, ypos:Number=0, label:String="", defaultHandler:Function=null){ super(); if (defaultHandler != null){ addEventListener(MouseEvent.CLICK, defaultHandler); }; _labelText = label; init(); draw(); x = xpos; y = ypos; if (parent != null){ parent.addChild(this); }; } private function onMouseOut(event:MouseEvent):void{ _over = false; if (!_down){ _face.filters = [getShadow(1)]; }; } protected function draw():void{ var g:Graphics = _back.graphics; g.beginFill(Style.BACKGROUND); g.drawRect(0, 0, Style.BUTTON_WIDTH, Style.BUTTON_HEIGHT); g.endFill(); g = _face.graphics; g.beginFill(Style.BUTTON_FACE); g.drawRect(0, 0, (Style.BUTTON_WIDTH - 2), (Style.BUTTON_HEIGHT - 2)); g.endFill(); } private function onMouseDown(event: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(event:MouseEvent):void{ _over = true; addEventListener(MouseEvent.ROLL_OUT, onMouseOut); } protected function getShadow(dist:Number, knockout:Boolean=false):DropShadowFilter{ return (new DropShadowFilter(dist, 45, Style.DROPSHADOW, 1, dist, dist, 0.3, 1, knockout)); } private function onMouseUp(event: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 389
//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; public function Style(){ super(); } } }//package ru.rambler.games.ui.windows
Section 390
//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; public function YesNoWindow(){ super(); } 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(event:MouseEvent):void{ _buttonCode = Buttons.CANCEL; close(); } } }//package ru.rambler.games.ui.windows
Section 391
//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; public function Buttons(){ super(); } } }//package ru.rambler.games.ui
Section 392
//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(windowClass:Class):IWindow{ var window:IWindow; window = IWindow(new (windowClass)); _windowCount++; return (window); } protected function removeWindow(window:IWindow):void{ _windowContainer.removeChild((window as DisplayObject)); delete windows[window]; } public function registerOneButtonWindow(className:Class):void{ classOK = className; } private function addedToStageHandler(event: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(windowClass:Class, title:String, text:String, modal:Boolean=false, centered:Boolean=true, onClose:Function=null, onCloseScope=null, onCloseParams:Array=null):IWindow{ var window:IWindow = instance.createWindow(windowClass); window.title = title; window.text = text; return (instance.showCreatedPopup(window, modal, centered, onClose, onCloseScope, onCloseParams)); } private function removeModalBlocker():void{ if (_modalBlocker != null){ _windowContainer.removeChild(_modalBlocker); _modalBlocker = null; }; } protected function closeHandler(e:Event):void{ var a:Array; var window:IWindow = IWindow(e.target); window.removeEventListener(Event.CLOSE, closeHandler); var props:Object = windows[window]; if (props.onClose != null){ a = props.onCloseParams; if (a == null){ a = new Array(); }; a.unshift(window.buttonPressed); props.onClose.apply(props.onCloseScope, a); }; if (props.modal){ _modalCount--; if (_modalCount == 0){ removeModalBlocker(); }; }; instance.removeWindow(window); } public function centerWindow(window:IWindow):void{ var windowAsDO:DisplayObject = (window as DisplayObject); windowAsDO.x = int(((_windowContainer.stage.stageWidth - windowAsDO.width) / 2)); windowAsDO.y = int(((_windowContainer.stage.stageHeight - windowAsDO.height) / 2)); } public function registerInputWindow(className:Class):void{ classInput = className; } public function registerInfoWindow(className:Class):void{ classInfo = className; } public function get inputWindowClass():Class{ return (classInput); } public function get selectWindowClass():Class{ return (classYesNo); } protected function showWindow(window:IWindow, centered:Boolean=true):void{ _windowContainer.addChild((window as DisplayObject)); if (centered){ centerWindow(window); }; } public function registerSelectWindow(className:Class):void{ classYesNo = className; } public function showCreatedPopup(window:IWindow, modal:Boolean=false, centered:Boolean=true, onClose:Function=null, onCloseScope=null, onCloseParams:Array=null):IWindow{ window.addEventListener(Event.CLOSE, closeHandler); var props:Object = {window:window, modal:modal, onClose:onClose, onCloseScope:onCloseScope, onCloseParams:onCloseParams}; if (modal){ createModalBlocker(); _modalCount++; }; windows[window] = props; instance.showWindow(window, centered); return (window); } private function noAction(e:MouseEvent):void{ trace("noAction"); } public function get infoWindowClass():Class{ return (classInfo); } public function clear():void{ var props:Object; for each (props in windows) { props.window.removeEventListener(Event.CLOSE, closeHandler); removeWindow(props.window); }; windows = new Dictionary(); _modalCount = 0; _windowCount = 0; } public function set windowContainer(container:DisplayObjectContainer):void{ _windowContainer = container; if (_windowContainer.stage == null){ _windowContainer.addEventListener(Event.ADDED_TO_STAGE, addedToStageHandler); } else { _windowContainer.stage.addEventListener(Event.RESIZE, resizeHandler); clear(); }; } private function resizeHandler(e:Event):void{ var windowsCount:int = _windowContainer.numChildren; var i:int; while (i < windowsCount) { if (_windowContainer.getChildAt(i) == _modalBlocker){ } else { centerWindow(IWindow(_windowContainer.getChildAt(i))); }; i++; }; if (_modalBlocker != null){ _modalBlocker.width = _modalBlocker.stage.stageWidth; _modalBlocker.height = _modalBlocker.stage.stageHeight; }; } public function bringToFront(window:IWindow):void{ _windowContainer.setChildIndex(DisplayObject(window), (_windowContainer.numChildren - 1)); } } }//package ru.rambler.games.ui
Section 393
//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(){ super(); if (instance){ throw (new Error("UIManager - singleton. Сonstructor is locked.")); }; init(); } } }//package ru.rambler.games.ui
Section 394
//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(){ super(); if (instance){ throw (new Error("SoundManager - singleton. Сonstructor is locked.")); }; } public function get soundState():Boolean{ return (_isSoundOn); } public function set soundState(value:Boolean):void{ _isSoundOn = value; } public function registerGameStartSound(className:Class):void{ _gameStartSound = className; } public function play(soundClass:Class, startTime:Number=0, loops:int=0):SoundChannel{ var _sound:Sound; var _channel:SoundChannel; if (((soundState) && (soundClass))){ _sound = new (soundClass); _channel = _sound.play(startTime, loops); if (_transform != null){ _channel.soundTransform = _transform; }; return (_channel); //unresolved jump }; return (null); } public function playMusic():void{ if (ExternalInterface.available){ ExternalInterface.call("open_radio()"); //unresolved jump var _slot1 = e; }; } public function set soundTransform(value:SoundTransform):void{ _transform = value; } public function get soundTransform():SoundTransform{ return (_transform); } public function get gameStartSound():Class{ return (_gameStartSound); } } }//package ru.rambler.games.ui
Section 395
//UIManager (ru.rambler.games.ui.UIManager) package ru.rambler.games.ui { import ru.rambler.games.interfaces.core.*; import flash.events.*; 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 UIManager(){ super(); } public function set popupManager(value:IPopupManager):void{ _popupManager = value; _popupManager.windowContainer = _popupHolder; } public function closeGame():void{ if (ExternalInterface.available){ ExternalInterface.call("window.close()"); //unresolved jump var _slot1 = e; }; } private function cursorMove(event:MouseEvent):void{ _cursor.x = _cursorHolder.mouseX; _cursor.y = _cursorHolder.mouseY; event.updateAfterEvent(); } protected function init():void{ initSame(); _soundManager.registerGameStartSound(DefaultStartSound); } private function removeCursorListener(event: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(value:DisplayObjectContainer):void{ value.addChild(_popupHolder); value.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(event:Event):void{ if (_cursor != null){ _cursor.stage.addEventListener(MouseEvent.MOUSE_MOVE, cursorMove); }; } public function set cursor(value:DisplayObject):void{ if (value == null){ Mouse.show(); dropCursor(); } else { dropCursor(); _cursor = value; _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(value:IGameFrame):void{ } public function set soundManager(value:ISoundManager):void{ _soundManager = value; } } }//package ru.rambler.games.ui
Section 396
//ByteUtil (ru.rambler.games.utils.ByteUtil) package ru.rambler.games.utils { import flash.utils.*; public class ByteUtil { public function ByteUtil(){ super(); } public static function byteArrayToHexString(data:ByteArray):String{ var byte:int; var byteText:String; var oldPosition:int = data.position; var joinedBytes:String = ""; while (data.bytesAvailable) { byte = data.readByte(); if (byte < 0){ byte = (0x0100 + byte); }; byteText = byte.toString(16); if (byteText.length == 1){ byteText = ("0" + byteText); }; joinedBytes = (joinedBytes + byteText); }; data.position = oldPosition; return (joinedBytes); } public static function hexStringToByteArray(hexData:String):ByteArray{ var hexByte:String; var byte:int; var binaryData:ByteArray = new ByteArray(); var i:int; while (i < hexData.length) { hexByte = hexData.substr(i, 2); byte = int(("0x" + hexByte)); binaryData.writeByte(byte); i = (i + 2); }; binaryData.position = 0; return (binaryData); } } }//package ru.rambler.games.utils
Section 397
//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(icon:MovieClip, costs:String, caption:String, index:Number){ _costs = new Array(); _itemsList = new Array("cage", "well", "warehouse", "car", "plane", "powdered", "bakery", "confectionery", "incubator"); super(); _icon = icon; _costs = costs.split(","); _index = index; _icon.buyBtn.price.text = _costs[_currentUpgrade]; Fonts.applyDefaultFont(_icon.buyBtn.price); _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]); Fonts.applyDefaultFont(_icon.title); } private function btnDown(event:MouseEvent=null):void{ event.stopPropagation(); if (_active){ _icon.buyBtn.gotoAndStop("press"); }; } private function hideTooltip(event: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(upgrade:Number=0):void{ _currentUpgrade = upgrade; if (_currentUpgrade < _costs.length){ _icon.buyBtn.price.text = _costs[_currentUpgrade]; Fonts.applyDefaultFont(_icon.buyBtn.price); _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(event:MouseEvent=null):void{ if (_currentUpgrade < _costs.length){ ShopTooltip.instance.show((_icon.x + 50), (_icon.y + 50), _itemsList[_index], (_currentUpgrade + 1), Config.currentLanguage.shop_tooltips.descendants(_itemsList[_index])); }; } private function btnOut(event:MouseEvent=null):void{ event.stopPropagation(); if (_active){ _icon.buyBtn.gotoAndStop("active"); }; } private function buyUpgrade(event:MouseEvent=null):void{ event.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]; Fonts.applyDefaultFont(_icon.buyBtn.price); _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(event:MouseEvent=null):void{ event.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 398
//ShopWindow (shop.ShopWindow) package shop { import flash.events.*; import flash.display.*; import ui.*; import map.*; import utils.*; import com.melesta.sound.*; import caurina.transitions.*; public class ShopWindow extends ShopTemplate { private var _stars:Number;// = 0 private var _itemCaptions:Array; public var upgradeCosts:Array; private var _shopItems:Array; private var _shopTooltip:ShopTooltip; private var _itemsList:Array; public static var availableUpgrades:Array = new Array(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 = new Array("cage", "well", "warehouse", "car", "plane", "powdered", "bakery", "confectionery", "incubator"); _itemCaptions = new Array("cage", "well", "warehouse", "car", "plane", "powdered", "bakery", "confectionery", "incubator"); _shopItems = new Array(); upgradeCosts = new 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"); super(); this.visible = false; instance = this; okBtn.addEventListener(MouseEvent.CLICK, finished, false, 0, true); stars = Config.stars; var i:int; while (i < _itemsList.length) { _shopItems[i] = new ShopItem((this.getChildByName(_itemsList[i]) as MovieClip), upgradeCosts[i], _itemCaptions[i], i); i++; }; if (Config.use_cheats){ stars_txt.addEventListener(MouseEvent.CLICK, addMoney, false, 0, true); }; title.text = Config.currentLanguage.shop; Fonts.applyDefaultFont(title); okBtn.caption.text = Config.currentLanguage.ok; Fonts.applyDefaultFont(okBtn.caption); _shopTooltip = new ShopTooltip(); addChild(_shopTooltip); } public function get stars():Number{ return (_stars); } public function set stars(value:Number):void{ _stars = value; this.stars_txt.text = String(stars); Fonts.applyDefaultFont(stars_txt); } public function updateViews():void{ var i:int; while (i < _shopItems.length) { _shopItems[i].update(); i++; }; } public function finished(event:MouseEvent=null):void{ var event = event; 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 i:int; while (i < _shopItems.length) { _shopItems[i].updateUpgradesView(availableUpgrades[i]); i++; }; } private function addMoney(event:MouseEvent=null):void{ _stars = (_stars + 500); stars_txt.text = String(_stars); Fonts.applyDefaultFont(stars_txt); updateViews(); } private function hideArrows():void{ var i:int; while (i < _shopItems.length) { _shopItems[i].hideArrows(); i++; }; } public function show():void{ var item:Array; this.visible = true; this.alpha = 0; trace(MapWindow.needIndex); stars_txt.text = String(stars); Fonts.applyDefaultFont(stars_txt); 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 i:Number = 0; while (i < accessList.length) { item = accessList[i].split(","); _shopItems[(Number(item[0]) + 5)].addArrow(); i++; }; } public static function isAvailable(upgradeList:Array):Boolean{ var accessCounter:Number = 0; accessList = new Array(); var item:Array = new Array(); var i:Number = 0; while (i < upgradeList.length) { item = upgradeList[i].split(","); if (Number(item[1]) <= Number(availableUpgrades[(Number(item[0]) + 5)])){ accessCounter++; } else { accessList.push(upgradeList[i]); }; i++; }; return (((accessCounter == upgradeList.length)) ? true : false); } } }//package shop
Section 399
//BlockTooltip (ui.BlockTooltip) package ui { import flash.events.*; import game.*; import utils.*; import com.melesta.sound.*; import caurina.transitions.*; public class BlockTooltip extends BlockTooltipTemplate { public static var instance:BlockTooltip; public function BlockTooltip(){ super(); instance = this; visible = false; help.okBtn.caption.text = Config.currentLanguage.ok; Fonts.applyDefaultFont(help.okBtn.caption); 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(event: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(event:MouseEvent=null):void{ help.okBtn.gotoAndStop(3); } private function over(event:MouseEvent):void{ help.okBtn.gotoAndStop(2); } public function show(posX:Number, posY:Number, caption:String, autoHide:Boolean=false):void{ var posX = posX; var posY = posY; var caption = caption; var autoHide = autoHide; alpha = 0; lock.x = -(posX); lock.y = -(posY); help.okBtn.visible = true; this.visible = false; this.body.scaleX = 1; this.body.scaleY = 1; visible = true; lock.visible = true; this.help.x = -241; this.help.y = -114; if (posX < 300){ this.body.scaleX = -1; this.help.x = 29; this.x = (posX - 20); }; if (posY < 200){ this.help.y = 34; this.body.scaleY = -1; }; this.x = posX; this.y = (posY - 20); this.help.caption.text = caption; Fonts.applyDefaultFont(help.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(event:MouseEvent):void{ help.okBtn.gotoAndStop(1); } } }//package ui
Section 400
//BottomPanel (ui.BottomPanel) package ui { import flash.events.*; import flash.display.*; import flash.geom.*; import org.flintparticles.twoD.zones.*; import org.flintparticles.common.initializers.*; import org.flintparticles.common.actions.*; import org.flintparticles.common.counters.*; import flash.utils.*; import game.*; import market.road.*; import pets.*; import flash.media.*; import org.flintparticles.twoD.emitters.*; import utils.*; import org.flintparticles.twoD.renderers.*; import org.flintparticles.twoD.actions.*; import org.flintparticles.twoD.initializers.*; import org.flintparticles.common.energyEasing.*; import org.flintparticles.common.displayObjects.*; import com.melesta.utils.time.*; import com.melesta.sound.*; import caurina.transitions.*; 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 = new Array(0, 0, 0, 0, 0, 0, 0, 0, 0); super(); 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; Fonts.applyDefaultFont(menuBtn.caption); menuBtn.caption.mouseEnabled = false; this.y = 480; } public function showMenu(event:MouseEvent=null):void{ BlockTooltip.instance.hide(); SimpleTooltip.instance.hide(); WaterTooltip.instance.hide(); Tooltip.instance.hide(); GameMenu.instance.show(); var transform:SoundTransform = new SoundTransform(); transform.volume = 0.2; SoundManager.play("ui_button_click", 0, transform); } public function update():void{ var actual:Number; var requried:Number; LevelStatistics.goals[11] = Road.currentMoney; var i:int; while (i < assotiationList.length) { if (assotiationList[i] != 0){ assotiationList[i].actual.text = String(LevelStatistics.goals[i]); Fonts.applyDefaultFont(assotiationList[i].actual); actual = Number(assotiationList[i].actual.text); requried = Number(assotiationList[i].required.text); if (actual < requried){ assotiationList[i].required.visible = (assotiationList[i].actual.visible = true); assotiationList[i].tick.visible = false; }; if ((((actual > 0)) && ((actual == requried)))){ if (!assotiationList[i].tick.visible){ assotiationList[i].required.visible = (assotiationList[i].actual.visible = false); assotiationList[i].tick.visible = true; emitter.start(); SoundManager.play("fanfare_aim", 1); }; }; }; i++; }; } public function startTime():void{ levelTimer.start(); } private function btnOver(event:MouseEvent=null):void{ event.stopPropagation(); SoundManager.play("ui_button_hover"); } public function init():void{ var type: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); Fonts.applyDefaultFont(lenta.time_txt); var purposes:Array = LevelStatistics.purposes; var i:int; while (i < purposes.length) { type = purposes[i].split(","); this[("item" + i)].actual.text = "0"; Fonts.applyDefaultFont(this[("item" + i)].actual); this[("item" + i)].mouseEnabled = (this[("item" + i)].mouseChildren = false); this[("item" + i)].visible = true; this[("item" + i)]._type = type[0]; assotiationList[ProductTypes.typeToNumber(type[0])] = this[("item" + i)]; this[("item" + i)].required.text = type[1]; Fonts.applyDefaultFont(this[("item" + i)].required); this[("item" + i)].body.gotoAndStop(type[0]); i++; }; this.y = 480; } public function hideItems(event:Event=null):void{ levelTimer.stop(); _time = 0; state = "normal"; time_txt.text = TimeDecoder.decodeTime(_time); Fonts.applyDefaultFont(time_txt); assotiationList = new Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); var i:int; while (i < 4) { this[("item" + i)].visible = false; this[("item" + i)].actual.visible = true; this[("item" + i)].required.visible = true; this[("item" + i)].actual.text = "0"; Fonts.applyDefaultFont(this[("item" + i)].actual); this[("item" + i)].required.text = "0"; Fonts.applyDefaultFont(this[("item" + i)].required); this[("item" + i)].tick.visible = false; i++; }; } public function animate():void{ this.y = 480; Tweener.addTween(this, {y:430, time:0.3}); } public function resume(event:Event=null):void{ levelTimer.start(); } private function updateTime(event: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; BlockTooltip.instance.show(Penguin.penguinList[0].x, Penguin.penguinList[0].y, Config.currentLanguage.tooltips.feed); }; }; time_txt.text = TimeDecoder.decodeTime(_time); Fonts.applyDefaultFont(time_txt); 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); Fonts.applyDefaultFont(lenta.time_txt); }; if (_time < _goldTime){ lenta.visible = true; state = "gold"; lenta.gotoAndStop(1); lenta.time_txt.text = TimeDecoder.decodeTime(_goldTime); Fonts.applyDefaultFont(lenta.time_txt); }; } private function showPurposes(event: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 renderer:BitmapRenderer = new BitmapRenderer(new Rectangle(0, 0, 570, 430)); renderer.addEmitter(emitter); effectContainer.addChild(renderer); emitter.x = 530; emitter.y = 410; } public function pause(event:Event=null):void{ levelTimer.stop(); } } }//package ui
Section 401
//BottomPanelTemplate (ui.BottomPanelTemplate) package ui { import flash.display.*; import flash.text.*; public dynamic class BottomPanelTemplate extends MovieClip { public var time_txt:TextField; public var aim_btn:MovieClip; public var lenta:MovieClip; public var item2:MovieClip; public var item3:MovieClip; public var menuBtn:MovieClip; public var item0:MovieClip; public var item1:MovieClip; public function BottomPanelTemplate(){ super(); } } }//package ui
Section 402
//EndScreen (ui.EndScreen) package ui { import flash.events.*; import flash.display.*; import flash.net.*; import utils.*; import com.melesta.sound.*; import caurina.transitions.*; public class EndScreen extends EndScreenTemplate { public var showed:Boolean;// = false public static var instance:EndScreen; public function EndScreen(stageInstance:DisplayObjectContainer){ super(); instance = this; stageInstance.addChild(this); this.visible = false; exitBtn.caption.text = Config.currentLanguage.main_menu; Fonts.applyDefaultFont(exitBtn.caption); 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; buyBtn.visible = true; }; if ((((Farm2.portal == "mochi")) || ((Farm2.portal == "gamejacket")))){ buyBtn.visible = false; sendScoreBtn.visible = true; sendScoreBtn.caption.text = Config.currentLanguage.send_score; Fonts.applyDefaultFont(sendScoreBtn.caption); 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; Fonts.applyDefaultFont(sendScoreBtn.caption); 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; Fonts.applyDefaultFont(sendScoreBtn.caption); sendScoreBtn.addEventListener(MouseEvent.CLICK, sendRamblerScore, false, 0, true); }; } private function btnOver(event:MouseEvent=null):void{ event.stopPropagation(); SoundManager.play("ui_button_hover"); } private function sendRamblerScore(event:MouseEvent=null):void{ var event = event; SoundManager.play("ui_button_click"); Tweener.addTween(this, {alpha:0, time:0.1, transition:"linear", onComplete:function ():void{ this.visible = false; }}); Farm2.instance.sendRamblerScore(ResultsWindow.bankNum); //unresolved jump var _slot1 = error; } private function sendKongregateScore(event:MouseEvent=null):void{ var event = event; SoundManager.play("ui_button_click"); Tweener.addTween(this, {alpha:0, time:0.1, transition:"linear", onComplete:function ():void{ this.visible = false; }}); StartScreen.instance.submitKongregateScore(ResultsWindow.bankNum); //unresolved jump var _slot1 = error; } private function buy(event:MouseEvent=null):void{ var request:URLRequest = new URLRequest(Config.downloadLink); navigateToURL(request, 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(event:MouseEvent=null):void{ var event = event; 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(event:MouseEvent=null):void{ var event = event; 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 403
//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(){ super(); 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(event:MouseEvent=null):void{ } } }//package ui
Section 404
//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(cont:DisplayObjectContainer){ container = cont; 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(xpos:Number, ypos:Number, endless:Boolean=false):void{ this.visible = true; this.alpha = 1; this.x = xpos; this.y = ypos; if (!endless){ Tweener.addTween(this, {alpha:0, delay:1, time:1, transition:"linear", onComplete:hide}); }; } } }//package ui
Section 405
//GameMenu (ui.GameMenu) package ui { import flash.events.*; import flash.display.*; import flash.net.*; import map.*; import game.*; import utils.*; import com.melesta.sound.*; import caurina.transitions.*; public class GameMenu extends GameMenuTemplate { public static var instance:GameMenu; public function GameMenu(stageInstance:DisplayObjectContainer){ super(); instance = this; stageInstance.addChild(this); this.visible = false; resumeBtn.addEventListener(MouseEvent.CLICK, resumeGame, false, 0, true); resumeBtn.caption.text = Config.currentLanguage.resume; Fonts.applyDefaultFont(resumeBtn.caption); mapBtn.addEventListener(MouseEvent.CLICK, showMap, false, 0, true); mapBtn.caption.text = Config.currentLanguage.map; Fonts.applyDefaultFont(mapBtn.caption); restartBtn.addEventListener(MouseEvent.CLICK, restart, false, 0, true); restartBtn.caption.text = Config.currentLanguage.restart; Fonts.applyDefaultFont(restartBtn.caption); buyBtn.visible = false; if (Config.downloadable){ buyBtn.addEventListener(MouseEvent.CLICK, buy, false, 0, true); buyBtn.caption.text = Config.currentLanguage.download; Fonts.applyDefaultFont(buyBtn.caption); buyBtn.visible = true; }; exitBtn.caption.text = Config.currentLanguage.exit_to_menu; Fonts.applyDefaultFont(exitBtn.caption); exitBtn.addEventListener(MouseEvent.CLICK, exit, false, 0, true); exitBtn.visible = true; } private function buy(event:MouseEvent=null):void{ var request:URLRequest = new URLRequest(Config.downloadLink); navigateToURL(request, Config.target); } private function showMap(event:MouseEvent=null):void{ var event = event; SoundManager.play("ui_button_click"); Tweener.addTween(this, {alpha:0, time:0.1, y:-100, onComplete:function ():void{ this.visible = false; MapWindow.instance.show(); GameController.instance.levelCompleted(); }}); } private function resumeGame(event:MouseEvent=null):void{ var event = event; SoundManager.play("ui_button_click"); Tweener.addTween(this, {alpha:0, time:0.1, y:-100, onComplete:function ():void{ this.visible = false; 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(event:MouseEvent=null):void{ var event = event; SoundManager.play("ui_button_click"); Tweener.addTween(this, {alpha:0, time:0.1, y:-100, onComplete:function ():void{ this.visible = false; QuitDialog.instance.show(); }}); } private function restart(event:MouseEvent=null):void{ var event = event; SoundManager.play("ui_button_click"); Tweener.addTween(this, {alpha:0, time:0.1, y:-100, onComplete:function ():void{ this.visible = false; GameController.instance.levelCompleted(); LevelBuilder.instance.createLevel(LevelBuilder.currentLevel); }}); } } }//package ui
Section 406
//GameMenuTemplate (ui.GameMenuTemplate) package ui { import flash.display.*; public dynamic class GameMenuTemplate extends MovieClip { public var exitBtn:MovieClip; public var mapBtn:MovieClip; public var restartBtn:MovieClip; public var resumeBtn:MovieClip; public var buyBtn:MovieClip; public function GameMenuTemplate(){ super(); } } }//package ui
Section 407
//GoalsTemplate (ui.GoalsTemplate) package ui { import flash.display.*; import flash.text.*; public dynamic class GoalsTemplate extends MovieClip { public var for_completing:TextField; public var silverMoney_txt:TextField; public var silverTime_txt:TextField; public var collect:TextField; public var title:TextField; public var money_txt:TextField; public var item2:MovieClip; public var item0:MovieClip; public var item3:MovieClip; public var goldTime_txt:TextField; public var item1:MovieClip; public var okBtn:MovieClip; public var goldMoney_txt:TextField; public function GoalsTemplate(){ super(); } } }//package ui
Section 408
//GoalsWindow (ui.GoalsWindow) package ui { import flash.events.*; import flash.display.*; import game.*; import utils.*; import com.melesta.utils.time.*; import com.melesta.sound.*; import caurina.transitions.*; public class GoalsWindow extends GoalsTemplate { public static var instance:GoalsWindow; public function GoalsWindow(stageInstance:DisplayObjectContainer){ instance = this; super(); stageInstance.addChild(this); this.visible = false; okBtn.addEventListener(MouseEvent.CLICK, hide, false, 0, true); title.text = Config.currentLanguage.goals; Fonts.applyDefaultFont(title); collect.text = Config.currentLanguage.collect; Fonts.applyDefaultFont(collect); for_completing.text = Config.currentLanguage.for_completing; Fonts.applyDefaultFont(for_completing); hideItems(); } public function hide(event:MouseEvent=null):void{ var event = event; 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 type: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 purposes:Array = LevelStatistics.purposes; var i:int; while (i < purposes.length) { type = purposes[i].split(","); this[("item" + i)].visible = true; this[("item" + i)].count.text = type[1]; Fonts.applyDefaultFont(this[("item" + i)].count); this[("item" + i)].body.gotoAndStop(type[0]); i++; }; GameController.instance.pause(); money_txt.text = LevelBuilder.currentLevelXML.@Prize; Fonts.applyDefaultFont(money_txt); goldMoney_txt.text = ("+" + LevelBuilder.currentLevelXML.@GoldPrize); Fonts.applyDefaultFont(goldMoney_txt); silverMoney_txt.text = ("+" + LevelBuilder.currentLevelXML.@SilverPrize); Fonts.applyDefaultFont(silverMoney_txt); goldTime_txt.text = TimeDecoder.decodeTime(Number(LevelBuilder.currentLevelXML.@GoldTime)); Fonts.applyDefaultFont(goldTime_txt); silverTime_txt.text = TimeDecoder.decodeTime(Number(LevelBuilder.currentLevelXML.@SilverTime)); Fonts.applyDefaultFont(silverTime_txt); } public function hideItems():void{ var i:int; while (i < 4) { this[("item" + i)].visible = false; i++; }; } } }//package ui
Section 409
//InstallWindow (ui.InstallWindow) package ui { public class InstallWindow extends InstallWindowTemplate { public function InstallWindow(){ super(); } } }//package ui
Section 410
//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(){ super(); this.visible = false; instance = this; var bd:BitmapData = new BitmapData(570, 430, true, 1879048192); var bg:Sprite = new Sprite(); bg.addChild(new Bitmap(bd)); addChild(bg); } 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}); 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}); //unresolved jump var _slot1 = e; 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}); MochiServices.connect(Farm2.mochiads_game_id, this); MochiScores.showLeaderboard({boardID:Farm2.mochi_Leaderboard, res:"570x430", onClose:close, onError:close}); //unresolved jump var _slot1 = e; close(); } public function sendCurrentScore():void{ MochiServices.connect(Farm2.mochiads_game_id, this); MochiScores.submit(ResultsWindow.bankNum, Config.playerName); //unresolved jump var _slot1 = e; close(); } } }//package ui
Section 411
//MapTooltip (ui.MapTooltip) package ui { import utils.*; import caurina.transitions.*; public class MapTooltip extends MapTooltipTempalte { public static var instance:MapTooltip; public function MapTooltip(){ super(); 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(posX:Number, posY:Number, level:Number):void{ this.visible = false; this.body.scaleX = 1; this.body.scaleY = 1; visible = true; this.alpha = 0; this.x = (posX + 5); this.y = posY; this.caption.x = 38; this.caption.y = 42; if (posX > 300){ this.body.scaleX = -1; this.caption.x = -206; }; if (posY > 200){ this.caption.y = -94; this.body.scaleY = -1; }; this.caption.text = Config.currentLanguage.levels.level[(level - 1)]; Fonts.applyDefaultFont(caption); Tweener.removeTweens(this); Tweener.addTween(this, {alpha:1, time:0.7, delay:1}); } public function showHelp(posX:Number, posY:Number, caption:String):void{ this.visible = false; this.body.scaleX = 1; this.body.scaleY = 1; visible = true; this.alpha = 0; this.x = (posX + 5); this.y = posY; this.caption.x = 38; this.caption.y = 42; if (posX > 300){ this.body.scaleX = -1; this.caption.x = -206; }; if (posY > 200){ this.caption.y = -94; this.body.scaleY = -1; }; this.caption.text = caption; Fonts.applyDefaultFont(this.caption); Tweener.removeTweens(this); Tweener.addTween(this, {alpha:1, time:0.7}); } } }//package ui
Section 412
//PetShop (ui.PetShop) package ui { import flash.display.*; public class PetShop extends PetShopTemplate { public static var instance:PetShop; public static var kingButton:ShopButton; public static var penguinButton:ShopButton; public function PetShop(){ super(); instance = this; penguinButton = new ShopButton((getChildByName("penguin") as MovieClip), "GUINEA_FOWL", 100); kingButton = new ShopButton((getChildByName("king_penguin") as MovieClip), "OSTRICH", 1000); } public function update():void{ penguinButton.updateView(); kingButton.updateView(); } public function getHelp():void{ penguinButton.getHelp(); kingButton.getHelp(); } } }//package ui
Section 413
//PetShopTemplate (ui.PetShopTemplate) package ui { import flash.display.*; public dynamic class PetShopTemplate extends MovieClip { public var penguin:MovieClip; public var king_penguin:MovieClip; public function PetShopTemplate(){ super(); } } }//package ui
Section 414
//PurposesWindow (ui.PurposesWindow) package ui { import flash.events.*; import flash.display.*; import game.*; import utils.*; import com.melesta.sound.*; import caurina.transitions.*; public class PurposesWindow extends PurposesWindowTemplate { public static var instance:PurposesWindow; public function PurposesWindow(stageInstance:DisplayObjectContainer){ instance = this; super(); stageInstance.addChild(this); this.visible = false; okBtn.addEventListener(MouseEvent.CLICK, hide, false, 0, true); } public function hide(event:MouseEvent=null):void{ var event = event; 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 type:Array; FArrow.instance.hide(); title.text = Config.currentLanguage.goals; Fonts.applyDefaultFont(title); var j:int; while (j < 4) { this[("item" + j)].visible = false; this[("item" + j)].type_txt.text = ""; Fonts.applyDefaultFont(this[("item" + j)].type_txt); this[("item" + j)].count_txt.text = ""; Fonts.applyDefaultFont(this[("item" + j)].count_txt); j++; }; 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 purposes:Array = LevelStatistics.purposes; var i:int; while (i < purposes.length) { type = purposes[i].split(","); this[("item" + i)].tick.visible = false; this[("item" + i)].count_txt.visible = true; this[("item" + i)].visible = true; this[("item" + i)].type_txt.text = ProductTypes.translate(type[0]); Fonts.applyDefaultFont(this[("item" + i)].type_txt); this[("item" + i)].count_txt.text = ((LevelStatistics.goals[ProductTypes.typeToNumber(type[0])] + "/") + type[1]); Fonts.applyDefaultFont(this[("item" + i)].count_txt); this[("item" + i)].body.gotoAndStop(type[0]); if (Number(LevelStatistics.goals[ProductTypes.typeToNumber(type[0])]) >= Number(type[1])){ this[("item" + i)].tick.visible = true; this[("item" + i)].count_txt.visible = false; }; i++; }; } } }//package ui
Section 415
//PurposesWindowTemplate (ui.PurposesWindowTemplate) package ui { import flash.display.*; import flash.text.*; public dynamic class PurposesWindowTemplate extends MovieClip { public var title:TextField; public var item2:MovieClip; public var item0:MovieClip; public var item3:MovieClip; public var item1:MovieClip; public var okBtn:MovieClip; public function PurposesWindowTemplate(){ super(); } } }//package ui
Section 416
//QuitDialog (ui.QuitDialog) package ui { import flash.events.*; import game.*; import utils.*; import com.melesta.sound.*; import caurina.transitions.*; public class QuitDialog extends QuitDialogTemplate { public static var instance:QuitDialog; public function QuitDialog(){ super(); instance = this; 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; Fonts.applyDefaultFont(yesBtn.caption); noBtn.caption.mouseEnabled = false; yesBtn.caption.mouseEnabled = false; noBtn.caption.text = Config.currentLanguage.no; Fonts.applyDefaultFont(noBtn.caption); caption.text = Config.currentLanguage.quit_current_game; Fonts.applyDefaultFont(caption); yesBtn.addEventListener(MouseEvent.MOUSE_OVER, yesOver, false, 0, true); noBtn.addEventListener(MouseEvent.MOUSE_OVER, noOver, false, 0, true); } private function yesOver(event:MouseEvent=null):void{ event.stopPropagation(); SoundManager.play("ui_button_hover"); } public function hide(event:MouseEvent=null):void{ var event = event; 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(event:MouseEvent=null):void{ event.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(event:MouseEvent=null):void{ var event = event; 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 417
//QuitMenu (ui.QuitMenu) package ui { import flash.events.*; import utils.*; import com.melesta.sound.*; import caurina.transitions.*; import flash.external.*; public class QuitMenu extends QuitMenuTemplate { public static var instance:QuitMenu; public function QuitMenu(){ super(); instance = this; 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; Fonts.applyDefaultFont(yesBtn.caption); noBtn.caption.text = Config.currentLanguage.no; Fonts.applyDefaultFont(noBtn.caption); caption.text = Config.currentLanguage.quit; Fonts.applyDefaultFont(caption); 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(event:MouseEvent=null):void{ var event = event; SoundManager.play("ui_button_click"); Tweener.addTween(this, {alpha:0, time:0.2, onComplete:function ():void{ this.visible = false; }}); } private function noOver(event:MouseEvent=null):void{ event.stopPropagation(); pig.gotoAndStop(2); SoundManager.play("ui_button_hover"); } private function exit(event:MouseEvent=null):void{ ExternalInterface.call(Config.closeFunction, "close"); } private function yesOver(event:MouseEvent=null):void{ event.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(event:MouseEvent=null):void{ event.stopPropagation(); pig.gotoAndStop(1); } } }//package ui
Section 418
//ResultsWindow (ui.ResultsWindow) package ui { import flash.events.*; import flash.display.*; import flash.geom.*; import org.flintparticles.twoD.zones.*; import org.flintparticles.common.initializers.*; import org.flintparticles.common.actions.*; import org.flintparticles.common.counters.*; import flash.utils.*; import shop.*; import map.*; import game.*; import market.road.*; import org.flintparticles.twoD.emitters.*; import utils.*; import org.flintparticles.twoD.renderers.*; import org.flintparticles.twoD.actions.*; import org.flintparticles.twoD.initializers.*; import org.flintparticles.common.energyEasing.*; import org.flintparticles.common.displayObjects.*; import com.melesta.sound.*; import caurina.transitions.*; 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(stageInstance:DisplayObjectContainer){ super(); instance = this; stageInstance.addChild(this); okBtn.addEventListener(MouseEvent.CLICK, hide, false, 0, true); this.visible = false; emitter = new Emitter2D(); effectContainer = stageInstance; addScoreTimer = new Timer(10); addScoreTimer.addEventListener(TimerEvent.TIMER, incrementScore, false, 0, true); coins_txt.text = Config.currentLanguage.coins; Fonts.applyDefaultFont(coins_txt); bank_txt.text = Config.currentLanguage.bank; Fonts.applyDefaultFont(bank_txt); time_txt.text = Config.currentLanguage.time; Fonts.applyDefaultFont(time_txt); bonus_txt.text = Config.currentLanguage.bonus; Fonts.applyDefaultFont(bonus_txt); createEffect(); currentScore = Config.stars; bankNum = Config.score; } public function hide(event:MouseEvent=null):void{ var event = event; 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); Fonts.applyDefaultFont(bonus); addScoreTimer.stop(); this.cup.visible = false; } private function incrementScore(event:TimerEvent):void{ if (prewScore < currentScore){ prewScore = (prewScore + deltaScore); bonus.text = String(prewScore); Fonts.applyDefaultFont(bonus); 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 renderer:BitmapRenderer = new BitmapRenderer(new Rectangle(0, 0, 570, 430)); renderer.addEmitter(emitter); effectContainer.addChild(renderer); emitter.x = 400; emitter.y = 200; } public function addScore(value:Number):void{ prewScore = currentScore; currentScore = value; 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 < 20)))){ LevelBuilder.maxLevel = (LevelBuilder.currentLevel + 1); }; title.text = Config.currentLanguage.level_results; Fonts.applyDefaultFont(title); 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; Fonts.applyDefaultFont(coins); 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"; Fonts.applyDefaultFont(bonus); cup.visible = false; }; Config.stars = (Config.stars + (addBonus + Number(LevelBuilder.currentLevelXML.@Prize))); bank.text = String(bankNum); Fonts.applyDefaultFont(bank); if (Farm2.mail_ru_connection){ Farm2.mail_ru_connection.send(Farm2.connection_name, "cacheResult", bankNum); //unresolved jump var _slot1 = e; }; if (Farm2.portal == "rambler"){ Farm2.instance.sendRamblerScore(bankNum); //unresolved jump var _slot1 = 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; Fonts.applyDefaultFont(time); 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 419
//ResultsWindowTemplate (ui.ResultsWindowTemplate) package ui { import flash.display.*; import flash.text.*; public dynamic class ResultsWindowTemplate extends MovieClip { public var time_txt:TextField; public var coins:TextField; public var bonus:TextField; public var bank:TextField; public var cup:MovieClip; public var bonus_txt:TextField; public var title:TextField; public var coins_txt:TextField; public var time:TextField; public var okBtn:MovieClip; public var bank_txt:TextField; public function ResultsWindowTemplate(){ super(); } } }//package ui
Section 420
//ShopArrow (ui.ShopArrow) package ui { public class ShopArrow extends ArrowTemplate { public function ShopArrow(){ super(); this.mouseChildren = (this.mouseEnabled = false); } } }//package ui
Section 421
//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(icon:MovieClip, t:String, cost:Number){ super(); _cost = cost; type = t; _icon = icon; _icon.addEventListener(MouseEvent.CLICK, addPet, false, 0, true); } private function down(event:MouseEvent=null):void{ event.stopPropagation(); if (_icon.active){ this._icon.gotoAndStop("press"); }; } private function out(event:MouseEvent=null):void{ event.stopPropagation(); if (_icon.active){ this._icon.gotoAndStop("active"); }; Tooltip.instance.hide(); } public function updateView(event: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 + 15), (this.y + 60), Config.currentLanguage.buy.descendants(type.toLowerCase())); }; } private function over(event:MouseEvent=null):void{ event.stopPropagation(); if (_icon.active){ this._icon.gotoAndStop("over"); Tooltip.instance.show((this._icon.x - 10), (this.y + 70), type, 0, type); }; } private function addPet(event:MouseEvent=null):void{ if (_icon.active){ event.stopPropagation(); this._icon.gotoAndStop("active"); PetsContainer.instance.addPet(type); Road.instance.addMoney(-(_cost)); }; } } }//package ui
Section 422
//ShopTooltip (ui.ShopTooltip) package ui { import utils.*; import caurina.transitions.*; public class ShopTooltip extends TooltipTemplate { public static var instance:ShopTooltip; public function ShopTooltip(){ super(); 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(posX:Number, posY:Number, output:String, upgrade:Number, caption:String=""):void{ this.visible = false; this.body.scaleX = 1; this.body.scaleY = 1; visible = true; this.alpha = 0; this.x = posX; this.y = (this.y - 15); this.help.x = 130; this.help.y = 86; if (posX > 300){ this.body.scaleX = -1; this.help.x = -140; this.x = posX; }; if (posY > 200){ this.help.y = -70; this.body.scaleY = -1; }; this.help.gotoAndStop(output); this.help.inCount.text = (this.help.outCount.text = ("x" + String(upgrade))); Fonts.applyDefaultFont(help.inCount); this.help.arrow.visible = true; this.help.caption.text = caption; Fonts.applyDefaultFont(help.caption); switch (output){ case "warehouse": this.help.gotoAndStop(1); this.help.outCount.text = (this.help.inCount.text = ""); Fonts.applyDefaultFont(help.outCount); Fonts.applyDefaultFont(help.inCount); this.help.arrow.visible = false; break; case "cage": this.help.gotoAndStop(1); this.help.outCount.text = (this.help.inCount.text = ""); Fonts.applyDefaultFont(help.outCount); Fonts.applyDefaultFont(help.inCount); this.help.arrow.visible = false; break; case "car": this.help.gotoAndStop(1); this.help.outCount.text = (this.help.inCount.text = ""); Fonts.applyDefaultFont(help.outCount); Fonts.applyDefaultFont(help.inCount); this.help.arrow.visible = false; break; case "plane": this.help.gotoAndStop(1); this.help.outCount.text = (this.help.inCount.text = ""); Fonts.applyDefaultFont(help.outCount); Fonts.applyDefaultFont(help.inCount); this.help.arrow.visible = false; break; case "well": this.help.gotoAndStop(1); this.help.outCount.text = (this.help.inCount.text = ""); Fonts.applyDefaultFont(help.outCount); Fonts.applyDefaultFont(help.inCount); this.help.arrow.visible = false; break; case "powdered": this.help.gotoAndStop("DRIED_EGGS"); break; case "cake": this.help.gotoAndStop("CAKE"); break; case "floury_cake": this.help.gotoAndStop("FLOURY_CAKE"); break; case "bakery": this.help.gotoAndStop("CAKE"); break; case "confectionery": this.help.gotoAndStop("FLOURY_CAKE"); break; case "incubator": this.help.gotoAndStop("INCUBATOR"); break; default: break; }; Tweener.removeTweens(this); Tweener.addTween(this, {alpha:1, time:0.7, delay:0.2}); this.y = (posY - 40); } } }//package ui
Section 423
//SimpleTooltip (ui.SimpleTooltip) package ui { import flash.events.*; import utils.*; import com.melesta.sound.*; import caurina.transitions.*; public class SimpleTooltip extends SimpleTooltipTemplate { public static var instance:SimpleTooltip; public function SimpleTooltip(){ super(); instance = this; visible = false; okBtn.caption.text = Config.currentLanguage.ok; Fonts.applyDefaultFont(okBtn.caption); okBtn.addEventListener(MouseEvent.CLICK, hide, false, 0, true); okBtn.addEventListener(MouseEvent.MOUSE_DOWN, down, false, 0, true); } public function hide(event:MouseEvent=null):void{ this.visible = false; SoundManager.play("ui_button_click"); } public function down(event:MouseEvent=null):void{ okBtn.gotoAndStop(3); } public function show(caption:String):void{ this.caption.text = caption; Fonts.applyDefaultFont(this.caption); this.visible = true; alpha = 0; Tweener.addTween(this, {alpha:1, time:0.5}); } } }//package ui
Section 424
//SkipEducationDialog (ui.SkipEducationDialog) package ui { import flash.events.*; import map.*; import game.*; import utils.*; import com.melesta.sound.*; import caurina.transitions.*; public class SkipEducationDialog extends QuitDialogTemplate { public static var instance:SkipEducationDialog; public function SkipEducationDialog(){ super(); instance = this; 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; Fonts.applyDefaultFont(yesBtn.caption); noBtn.caption.mouseEnabled = false; yesBtn.caption.mouseEnabled = false; noBtn.caption.text = Config.currentLanguage.no; Fonts.applyDefaultFont(noBtn.caption); caption.text = Config.currentLanguage.skip_educational_levels; Fonts.applyDefaultFont(caption); yesBtn.addEventListener(MouseEvent.MOUSE_OVER, yesOver, false, 0, true); noBtn.addEventListener(MouseEvent.MOUSE_OVER, noOver, false, 0, true); } private function yesOver(event:MouseEvent=null):void{ event.stopPropagation(); SoundManager.play("ui_button_hover"); } public function hide(event:MouseEvent=null):void{ var event = event; 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(event:MouseEvent=null):void{ event.stopPropagation(); SoundManager.play("ui_button_hover"); } public function show():void{ this.visible = true; Tweener.addTween(this, {alpha:1, time:0.2}); } private function skip(event:MouseEvent=null):void{ var event = event; 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 425
//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 utils.*; import com.kongregate.as3.client.events.*; import com.melesta.sound.*; import caurina.transitions.*; 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(); okBtn.caption.text = Config.currentLanguage.start; Fonts.applyDefaultFont(okBtn.caption); soundBtn.caption.text = Config.currentLanguage.sounds; Fonts.applyDefaultFont(soundBtn.caption); musicBtn.caption.text = Config.currentLanguage.music; Fonts.applyDefaultFont(musicBtn.caption); 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 = 155; FarmPreloader.externalLogo.y = 40; addChild(FarmPreloader.externalLogo); }; buyBtn.visible = true; buyBtn.stop(); buyBtn.visible = false; buyBtn.caption.htmlText = Config.currentLanguage.download_full_version; 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; Fonts.applyDefaultFont(exitBtn.caption); }; 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; Fonts.applyDefaultFont(exitBtn.caption); 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; Fonts.applyDefaultFont(exitBtn.caption); playerPanel.visible = true; playerPanel.welcome.text = Config.currentLanguage.welcome; Fonts.applyDefaultFont(playerPanel.welcome); playerPanel.editBtn.caption.text = Config.currentLanguage.change; Fonts.applyDefaultFont(playerPanel.editBtn.caption); 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; Fonts.applyDefaultFont(exitBtn.caption); vkontakte_title.visible = true; buyBtn.caption.htmlText = "Наша группа<br>в Контакте"; 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; Fonts.applyDefaultFont(exitBtn.caption); buyBtn.caption.htmlText = "Join us<br>on Facebook!"; 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; Fonts.applyDefaultFont(exitBtn.caption); 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(event:MouseEvent=null):void{ playerPanel.playerName.mouseEnabled = true; playerPanel.playerName.background = true; playerPanel.playerName.textColor = 0; playerPanel.playerName.border = true; playerPanel.playerName.setSelection(0, 100); playerPanel.editBtn.caption.text = Config.currentLanguage.ok; Fonts.applyDefaultFont(playerPanel.editBtn.caption); 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(event:MouseEvent=null):void{ if (!SoundsList.muteMusic){ if (SoundsList.menuMusicSound){ SoundsList.menuMusicChannel.stop(); }; }; if (!SoundsList.muteMusic){ if (SoundsList.gameMusicSound){ SoundsList.gameMusicChannel = SoundsList.gameMusicSound.play(0, 1000); }; }; SoundManager.play("ui_button_click"); startGame(); Tweener.addTween(this, {alpha:0, time:0.5}); PlayGround.instance.alpha = 1; MapWindow.instance.addChild(musicBtn); MapWindow.instance.addChild(soundBtn); musicBtn.container = "map"; } private function showVLeaderboard(event:MouseEvent=null):void{ VLeaderBoard.instance.show(); } private function getKongregateUserData(event=null):void{ var event = event; if (kongregate.user.getName() != "undefined"){ playerPanel.playerName.text = kongregate.user.getName(); Fonts.applyDefaultFont(playerPanel.playerName); } else { playerPanel.playerName.text = Config.playerName; Fonts.applyDefaultFont(playerPanel.playerName); }; //unresolved jump var _slot1 = error; Config.playerName = playerPanel.playerName.text; Fonts.applyDefaultFont(playerPanel.playerName); } private function showLeaderboard(event:MouseEvent=null):void{ Leaderboard.instance.show(); } private function showFBLeaderboard(event:MouseEvent=null):void{ FBLeaderboard.instance.show(); } private function buy(event:MouseEvent=null):void{ var request:URLRequest = new URLRequest(Config.downloadLink); navigateToURL(request, Config.target); } private function closeRamblerGame(event:MouseEvent=null):void{ var event = event; trace("Close rambler"); Farm2.instance.sendRamblerScore(ResultsWindow.bankNum); Farm2.instance.closeGame(); ExternalInterface.call("window.close()"); //unresolved jump var _slot1 = error; ExternalInterface.call("window.close()"); //unresolved jump var _slot1 = error; } private function btnOver(event:MouseEvent=null):void{ event.stopPropagation(); SoundManager.play("ui_button_hover"); } public function switchMusic(event:MouseEvent=null):void{ if (!SoundsList.muteMusic){ musicBtn.gotoAndStop("off"); SoundsList.muteMusic = true; if (musicBtn.container == "menu"){ if (SoundsList.menuMusicChannel){ SoundsList.menuMusicChannel.stop(); }; } else { if (SoundsList.gameMusicChannel){ SoundsList.gameMusicChannel.stop(); }; }; } else { musicBtn.gotoAndStop("on"); if (musicBtn.container == "menu"){ if (SoundsList.menuMusicChannel){ SoundsList.menuMusicChannel = SoundsList.menuMusicSound.play(1); }; } else { if (SoundsList.gameMusicChannel){ SoundsList.gameMusicChannel = SoundsList.gameMusicSound.play(1); }; }; SoundsList.muteMusic = false; }; } private function exitMailRu(event:MouseEvent=null):void{ var event = event; if (((Farm2.mail_ru_connection) && ((Farm2.portal == "mail.ru")))){ Farm2.mail_ru_connection.send(Farm2.connection_name, "closeGame"); //unresolved jump var _slot1 = e; }; } private function gotoGroup(event:MouseEvent=null):void{ var request:URLRequest = new URLRequest("http://vkontakte.ru/club443534"); navigateToURL(request, Config.target); } private function exit(event:MouseEvent=null):void{ QuitMenu.instance.show(); } private function gotoVkontakte(event:MouseEvent=null):void{ var req:URLRequest = new URLRequest("http://vkontakte.ru/"); navigateToURL(req, "_blank"); } private function gotoFBGroup(event:MouseEvent=null):void{ var request:URLRequest = new URLRequest("http://www.facebook.com/group.php?gid=81590252965"); navigateToURL(request, Config.target); } private function gotoOdnoklassniki(event:MouseEvent=null):void{ var req:URLRequest = new URLRequest("http://odnoklassniki.ru/"); navigateToURL(req, "_blank"); } public function sendNonobaScore(score:Number=0):void{ } private function enterPressed(event:KeyboardEvent=null):void{ if (event.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; Fonts.applyDefaultFont(playerPanel.editBtn.caption); 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(event:MouseEvent=null):void{ var req:URLRequest = new URLRequest("http://rambler.ru/"); navigateToURL(req, "_blank"); } private function saveUsername(event: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; Fonts.applyDefaultFont(playerPanel.editBtn.caption); playerPanel.editBtn.addEventListener(MouseEvent.CLICK, editUsername, false, 0, true); playerPanel.editBtn.removeEventListener(MouseEvent.CLICK, saveUsername); Config.playerName = playerPanel.playerName.text; } private function startGame(event:MouseEvent=null):void{ this.visible = false; if (((!(_firstClick)) && (!(Config.played)))){ MapWindow.instance.show(); } else { if (((Config.played) && (!(_firstClick)))){ MapWindow.instance.resumeGame(); } else { MapWindow.instance.show(); }; }; _firstClick = true; } public function switchSound(event:MouseEvent=null):void{ if (!SoundsList.mute){ soundBtn.gotoAndStop("off"); SoundsList.mute = true; SoundManager.mute(); } else { soundBtn.gotoAndStop("on"); SoundsList.mute = false; SoundManager.resume(); }; } public function show():void{ if (firstShow){ firstShow = false; if (((Farm2.mail_ru_connection) && ((Farm2.portal == "mail.ru")))){ Farm2.mail_ru_connection.send(Farm2.connection_name, "startGame"); //unresolved jump var _slot1 = e; }; }; this.visible = true; Tweener.addTween(this, {alpha:1, time:1}); if (!SoundsList.muteMusic){ if (SoundsList.menuMusicSound){ SoundsList.menuMusicChannel = SoundsList.menuMusicSound.play(1); }; if (SoundsList.gameMusicChannel){ SoundsList.gameMusicChannel.stop(); }; }; musicBtn.container = "menu"; addChild(musicBtn); addChild(soundBtn); } public function submitKongregateScore(score:Number=0):void{ var score = score; kongregate.scores.submit(score); //unresolved jump var _slot1 = error; } } }//package ui
Section 426
//Tooltip (ui.Tooltip) package ui { import utils.*; import caurina.transitions.*; public class Tooltip extends TooltipTemplate { public static var instance:Tooltip; public function Tooltip(){ super(); 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(posX:Number, posY:Number, output:String, upgrade:Number, caption: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 = (posX + 20); this.help.x = 135; this.help.y = 90; if (posX > 300){ this.body.scaleX = -1; this.help.x = -150; this.x = (posX - 20); }; if (posY > 200){ this.help.y = -65; this.body.scaleY = -1; }; this.help.gotoAndStop(output); this.help.inCount.text = (this.help.outCount.text = ("x" + String(upgrade))); Fonts.applyDefaultFont(help.inCount); this.help.arrow.visible = true; this.help.caption.text = caption; Fonts.applyDefaultFont(help.caption); switch (output){ case "PENGUIN": this.help.outCount.text = (this.help.inCount.text = ""); this.help.arrow.visible = false; this.help.caption.text = ProductTypes.translate(caption, true); Fonts.applyDefaultFont(help.outCount); Fonts.applyDefaultFont(help.inCount); Fonts.applyDefaultFont(help.caption); break; case "GOALS": this.help.outCount.text = (this.help.inCount.text = ""); this.help.arrow.visible = false; this.help.caption.text = Config.currentLanguage.tooltips.goals; Fonts.applyDefaultFont(help.outCount); Fonts.applyDefaultFont(help.inCount); Fonts.applyDefaultFont(help.caption); break; case "KING_PENGUIN": this.help.outCount.text = (this.help.inCount.text = ""); this.help.arrow.visible = false; this.help.caption.text = ProductTypes.translate(caption, true); Fonts.applyDefaultFont(help.outCount); Fonts.applyDefaultFont(help.inCount); Fonts.applyDefaultFont(help.caption); break; case "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; Fonts.applyDefaultFont(help.outCount); Fonts.applyDefaultFont(help.inCount); Fonts.applyDefaultFont(help.caption); break; case "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; Fonts.applyDefaultFont(help.outCount); Fonts.applyDefaultFont(help.inCount); Fonts.applyDefaultFont(help.caption); 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 = caption; Fonts.applyDefaultFont(help.outCount); Fonts.applyDefaultFont(help.inCount); Fonts.applyDefaultFont(help.caption); break; case "CAR": this.help.outCount.text = (this.help.inCount.text = ""); this.help.arrow.visible = true; this.help.gotoAndStop("DEPOT"); this.help.caption.text = Config.currentLanguage.car; Fonts.applyDefaultFont(help.outCount); Fonts.applyDefaultFont(help.inCount); Fonts.applyDefaultFont(help.caption); break; case "PLANE": this.help.outCount.text = (this.help.inCount.text = ""); this.help.caption.text = Config.currentLanguage.plane; Fonts.applyDefaultFont(help.outCount); Fonts.applyDefaultFont(help.inCount); Fonts.applyDefaultFont(help.caption); break; default: break; }; Tweener.removeTweens(this); Tweener.addTween(this, {alpha:1, time:0.7, delay:1}); this.y = (posY - 40); } } }//package ui
Section 427
//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(){ super(); instance = this; visible = false; this.alpha = 0; this.mouseEnabled = false; this.mouseChildren = false; } public function hide(event: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; Fonts.applyDefaultFont(caption); this.x = 280; this.y = 200; visible = true; }; } } }//package ui
Section 428
//WorkLine (ui.WorkLine) package ui { public class WorkLine extends WorkLineTemplate { public function WorkLine(){ super(); this.line.height = 0; this.mouseEnabled = (this.mouseChildren = false); } public function setProgress(value:Number):void{ this.line.height = value; } } }//package ui
Section 429
//Config (utils.Config) package utils { import flash.net.*; public class Config { public static var API_ID:String = "698742"; public static var level:Number = 1; 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 sharedObject:SharedObject; public static var API_SECRET:String = "hDKEGh4BRt"; public static var api:String = "http://api.vkontakte.ru/api.php"; public static var TEST_MODE:int = 0; public static var nodes:Array = new Array("novel", "none", "none", "none", "novel", "none", "none", "none", "novel", "none", "none", "none", "novel", "none", "none", "none", "novel", "none", "none"); public static var use_cheats:Boolean = false; public static var downloadLink:String = "http://www.alawar.com/download/FarmFrenzy3IceAge_10105.exe"; public static var IS_APP_USER:Number = 0; public static var played:Boolean = false; public static var upgrades:Array = new Array(0, 0, 0, 0, 0, 0, 0, 0, 0); public static var language:String = "en"; public static var skiped:Boolean = false; private static var LevelesRecords:XML = <Records> <record StartMoney="50" World="5" Name="1" GoldTime="90" SilverTime="150" Prize="50" SilverPrize="100" GoldPrize="150" EnemyKillingNum="0"> <StartPets> <p Type="0" Val="1"/> </StartPets> <Goals> <g Type="0" Val="3"/> </Goals> <BearTimes/> <Houses/> </record> <record StartMoney="90" World="5" Name="2" GoldTime="120" SilverTime="180" Prize="150" SilverPrize="200" GoldPrize="250" EnemyKillingNum="0"> <StartPets> <p Type="0" Val="1"/> </StartPets> <Goals> <g Type="7" Val="4"/> <g Type="0" Val="8"/> </Goals> <BearTimes> <t Type="0" Time="5"/> <t Type="0" Time="35"/> </BearTimes> <Houses/> <Accessibility/> <AccessProduct/> </record> <record StartMoney="150" World="5" Name="3" BestTime="154" GoldTime="160" SilverTime="220" Prize="200" SilverPrize="300" GoldPrize="350" EnemyKillingNum="0"> <StartPets> <p Type="0"/> <p Type="0"/> </StartPets> <Goals> <g Type="0" Val="4"/> <g Type="2" Val="4"/> <g Type="3" Val="4"/> </Goals> <BearTimes> <t Type="0" Time="10"/> <t Type="0" Time="30"/> <t Type="0" Time="60"/> <t Type="0" Time="90"/> </BearTimes> <Houses> <h Type="0" PosIndex="0" Upgrade="0"/> <h Type="1" PosIndex="5" Upgrade="0"/> </Houses> <Accessibility> <c CritID="0" Value="1"/> <c CritID="1" Value="1"/> </Accessibility> <AccessProduct/> </record> <record StartMoney="300" Name="4" BestTime="144" GoldTime="150" SilverTime="210" Prize="400" SilverPrize="500" GoldPrize="600" EnemyKillingNum="1"> <StartPets> <p Type="0"/> </StartPets> <Goals> <g Type="2" Val="6"/> <g Type="3" Val="4"/> <g Type="4" Val="2"/> </Goals> <BearTimes> <t Type="0" Time="20"/> <t Type="0" Time="20.1"/> <t Type="0" Time="80"/> <t Type="0" Time="80.1"/> <t Type="0" Time="160"/> <t Type="0" Time="160.1"/> </BearTimes> <Houses> <h Type="1" PosIndex="1" Upgrade="1"/> <h Type="0" PosIndex="0" Upgrade="1"/> <h Type="2" PosIndex="2" Upgrade="0"/> </Houses> <Accessibility> <c CritID="2" Value="1"/> </Accessibility> <AccessProduct> <c Product="5"/> </AccessProduct> </record> <record StartMoney="20" Name="5" BestTime="185" GoldTime="190" SilverTime="250" Prize="300" SilverPrize="400" GoldPrize="500" EnemyKillingNum="1"> <StartPets> <p Type="0"/> <p Type="0"/> <p Type="0"/> <p Type="0"/> <p Type="0"/> </StartPets> <Goals> <g Type="2" Val="10"/> <g Type="3" Val="10"/> <g Type="7" Val="8"/> </Goals> <BearTimes> <t Type="0" Time="30"/> <t Type="0" Time="30.1"/> <t Type="0" Time="90"/> <t Type="0" Time="90.1"/> <t Type="0" Time="160"/> <t Type="0" Time="160.1"/> <t Type="0" Time="200"/> <t Type="0" Time="200.1"/> <t Type="0" Time="260"/> <t Type="0" Time="260.1"/> </BearTimes> <Houses> <h Type="0" PosIndex="2" Upgrade="1"/> <h Type="1" PosIndex="1" Upgrade="1"/> <h Type="2" PosIndex="4" Upgrade="1"/> </Houses> <Accessibility> <c CritID="0" Value="2"/> <c CritID="1" Value="2"/> </Accessibility> <AccessProduct> <c Product="5"/> </AccessProduct> </record> <record StartMoney="300" Name="6" BestTime="188" GoldTime="190" SilverTime="250" Prize="150" SilverPrize="200" GoldPrize="300" EnemyKillingNum="1"> <StartPets> <p Type="0"/> <p Type="0"/> </StartPets> <Goals> <g Type="8" Val="1"/> <g Type="4" Val="10"/> </Goals> <BearTimes> <t Type="0" Time="20"/> <t Type="0" Time="80"/> <t Type="0" Time="90.1"/> <t Type="0" Time="120"/> <t Type="0" Time="120.1"/> <t Type="0" Time="180"/> <t Type="0" Time="210"/> <t Type="0" Time="210.1"/> <t Type="0" Time="270.1"/> <t Type="0" Time="270.2"/> </BearTimes> <Houses> <h Type="0" PosIndex="3" Upgrade="2"/> <h Type="1" PosIndex="1" Upgrade="2"/> <h Type="2" PosIndex="5" Upgrade="1"/> </Houses> <Accessibility> <c CritID="2" Value="2"/> </Accessibility> <AccessProduct> <c Product="5"/> </AccessProduct> </record> <record StartMoney="200" Name="7" BestTime="269" GoldTime="270" SilverTime="330" Prize="1000" SilverPrize="1200" GoldPrize="1300" EnemyKillingNum="1"> <StartPets/> <Goals> <g Type="7" Val="20"/> <g Type="0" Val="50"/> </Goals> <BearTimes> <t Type="0" Time="15"/> <t Type="0" Time="50"/> <t Type="0" Time="50.1"/> <t Type="0" Time="50.3"/> <t Type="0" Time="100"/> <t Type="0" Time="100.1"/> <t Type="0" Time="100.2"/> <t Type="0" Time="150"/> <t Type="0" Time="150.1"/> <t Type="0" Time="150.2"/> <t Type="0" Time="200"/> <t Type="0" Time="200.1"/> <t Type="0" Time="200.2"/> </BearTimes> <Houses> <h Type="2" PosIndex="2" Upgrade="2"/> <h Type="1" PosIndex="1" Upgrade="2"/> <h Type="0" PosIndex="0" Upgrade="2"/> <h Type="3" PosIndex="4" Upgrade="0"/> </Houses> <Accessibility> <c CritID="3" Value="1"/> </Accessibility> <AccessProduct> <c Product="5"/> </AccessProduct> </record> <record StartMoney="0" Name="8" BestTime="274" GoldTime="280" SilverTime="340" Prize="300" SilverPrize="400" GoldPrize="500" EnemyKillingNum="1"> <StartPets> <p Type="0"/> </StartPets> <Goals> <g Type="2" Val="15"/> <g Type="3" Val="15"/> <g Type="4" Val="20"/> </Goals> <BearTimes> <t Type="0" Time="60"/> <t Type="0" Time="120"/> <t Type="0" Time="180"/> <t Type="0" Time="240"/> <t Type="0" Time="300"/> <t Type="0" Time="360"/> </BearTimes> <Houses> <h Type="2" PosIndex="2" Upgrade="2"/> <h Type="1" PosIndex="1" Upgrade="2"/> <h Type="0" PosIndex="0" Upgrade="2"/> <h Type="3" PosIndex="4" Upgrade="1"/> </Houses> <Accessibility> <c CritID="0" Value="3"/> <c CritID="1" Value="3"/> <c CritID="2" Value="3"/> </Accessibility> <AccessProduct> <c Product="5"/> </AccessProduct> </record> <record StartMoney="500" Name="9" BestTime="237" GoldTime="240" SilverTime="300" Prize="500" SilverPrize="600" GoldPrize="700" EnemyKillingNum="1"> <StartPets> </StartPets> <Goals> <g Type="7" Val="20"/> <g Type="8" Val="5"/> </Goals> <BearTimes> <t Type="0" Time="40"/> <t Type="0" Time="80"/> <t Type="0" Time="80.1"/> <t Type="0" Time="160"/> <t Type="0" Time="160.1"/> <t Type="0" Time="180"/> <t Type="0" Time="210"/> <t Type="0" Time="280"/> <t Type="0" Time="280.1"/> <t Type="0" Time="300"/> </BearTimes> <Houses> <h Type="3" PosIndex="1" Upgrade="1"/> <h Type="2" PosIndex="5" Upgrade="3"/> <h Type="1" PosIndex="4" Upgrade="3"/> <h Type="0" PosIndex="3" Upgrade="3"/> </Houses> <Accessibility> <c CritID="3" Value="2"/> </Accessibility> <AccessProduct> <c Product="5"/> </AccessProduct> </record> <record StartMoney="200" Name="10" BestTime="213" GoldTime="220" SilverTime="280" Prize="1400" SilverPrize="1500" GoldPrize="1800" EnemyKillingNum="1"> <Goals> <g Type="4" Val="5"/> </Goals> <BearTimes> <t Type="0" Time="60"/> <t Type="0" Time="120"/> <t Type="0" Time="120.1"/> <t Type="0" Time="180"/> <t Type="0" Time="240"/> <t Type="0" Time="240.1"/> <t Type="0" Time="300"/> <t Type="0" Time="360"/> <t Type="0" Time="360.1"/> </BearTimes> <Houses> <h Type="2" PosIndex="2" Upgrade="0"/> <h Type="1" PosIndex="1" Upgrade="0"/> <h Type="0" PosIndex="0" Upgrade="0"/> <h Type="3" PosIndex="4" Upgrade="2"/> </Houses> <Accessibility> <c CritID="3" Value="3"/> </Accessibility> <AccessProduct> <c Product="5"/> </AccessProduct> </record> <record StartMoney="90" Name="11" BestTime="327" GoldTime="330" SilverTime="390" Prize="700" SilverPrize="800" GoldPrize="1000" EnemyKillingNum="2"> <StartPets> <p Type="1"/> </StartPets> <Goals> <g Type="8" Val="5"/> </Goals> <BearTimes> <t Type="0" Time="20"/> <t Type="0" Time="80"/> <t Type="0" Time="120"/> <t Type="0" Time="120.1"/> <t Type="0" Time="160"/> <t Type="0" Time="160.1"/> <t Type="0" Time="210"/> <t Type="0" Time="280"/> <t Type="0" Time="280.1"/> <t Type="0" Time="320"/> </BearTimes> <Houses> <h Type="2" PosIndex="2" Upgrade="3"/> <h Type="1" PosIndex="1" Upgrade="3"/> <h Type="0" PosIndex="0" Upgrade="3"/> </Houses> <Accessibility> <c CritID="0" Value="4"/> <c CritID="1" Value="4"/> <c CritID="2" Value="4"/> </Accessibility> <AccessProduct> <c Product="5"/> </AccessProduct> </record> <record StartMoney="0" Name="12" BestTime="203" GoldTime="210" SilverTime="270" Prize="1600" SilverPrize="1800" GoldPrize="2000" EnemyKillingNum="2"> <StartPets> <p Type="1"/> </StartPets> <Goals> <g Type="2" Val="30"/> <g Type="3" Val="30"/> <g Type="7" Val="20"/> </Goals> <BearTimes> <t Type="0" Time="30"/> <t Type="0" Time="30.1"/> <t Type="0" Time="90"/> <t Type="0" Time="90.1"/> <t Type="0" Time="150"/> <t Type="0" Time="150.1"/> <t Type="0" Time="190"/> <t Type="0" Time="190.1"/> <t Type="0" Time="250"/> <t Type="0" Time="250.1"/> </BearTimes> <Houses> <h Type="2" PosIndex="5" Upgrade="0"/> <h Type="1" PosIndex="4" Upgrade="4"/> <h Type="0" PosIndex="3" Upgrade="4"/> <h Type="3" PosIndex="1" Upgrade="3"/> </Houses> <Accessibility> <c CritID="3" Value="4"/> </Accessibility> <AccessProduct> <c Product="5"/> </AccessProduct> </record> <record StartMoney="500" Name="13" BestTime="299" GoldTime="300" SilverTime="360" Prize="800" SilverPrize="1000" GoldPrize="1200" EnemyKillingNum="2"> <StartPets> <p Type="0"/> </StartPets> <Goals> <g Type="8" Val="5"/> <g Type="4" Val="30"/> </Goals> <BearTimes> <t Type="0" Time="89"/> <t Type="0" Time="90"/> <t Type="0" Time="90.1"/> <t Type="0" Time="179"/> <t Type="0" Time="180"/> <t Type="0" Time="180.1"/> <t Type="0" Time="269"/> <t Type="0" Time="270"/> <t Type="0" Time="270.1"/> <t Type="0" Time="300"/> <t Type="0" Time="300.1"/> <t Type="0" Time="300.2"/> </BearTimes> <Houses> <h Type="2" PosIndex="2" Upgrade="4"/> <h Type="1" PosIndex="1" Upgrade="4"/> <h Type="0" PosIndex="0" Upgrade="4"/> <h Type="3" PosIndex="4" Upgrade="0"/> </Houses> <Accessibility> <c CritID="0" Value="5"/> <c CritID="1" Value="5"/> <c CritID="2" Value="5"/> </Accessibility> <AccessProduct> <c Product="5"/> </AccessProduct> </record> <record StartMoney="500" Name="14" BestTime="225" GoldTime="230" SilverTime="290" Prize="100" SilverPrize="250" GoldPrize="500" EnemyKillingNum="2"> <StartPets/> <Goals> <g Type="7" Val="27"/> <g Type="4" Val="5"/> </Goals> <BearTimes> <t Type="0" Time="90"/> <t Type="0" Time="90.1"/> <t Type="0" Time="90.2"/> <t Type="0" Time="90.3"/> <t Type="0" Time="90.4"/> </BearTimes> <Houses> <h Type="2" PosIndex="5" Upgrade="1"/> <h Type="1" PosIndex="4" Upgrade="1"/> <h Type="0" PosIndex="3" Upgrade="1"/> <h Type="3" PosIndex="1" Upgrade="4"/> </Houses> <Accessibility> <c CritID="3" Value="5"/> </Accessibility> <AccessProduct> <c Product="5"/> </AccessProduct> </record> <record StartMoney="0" Name="15" BestTime="197" GoldTime="200" SilverTime="260" Prize="800" SilverPrize="1000" GoldPrize="1200" EnemyKillingNum="2"> <StartPets> <p Type="0"/> <p Type="0"/> <p Type="0"/> <p Type="0"/> <p Type="0"/> </StartPets> <Goals> <g Type="8" Val="1"/> <g Type="1" Val="2"/> </Goals> <BearTimes> <t Type="0" Time="60"/> <t Type="0" Time="60.1"/> <t Type="0" Time="60.2"/> <t Type="0" Time="100"/> <t Type="0" Time="100.1"/> <t Type="0" Time="160"/> <t Type="0" Time="160.1"/> <t Type="0" Time="160.2"/> <t Type="0" Time="200"/> <t Type="0" Time="200.1"/> <t Type="0" Time="260"/> <t Type="0" Time="260.1"/> <t Type="0" Time="260.2"/> <t Type="0" Time="300"/> <t Type="0" Time="300.1"/> <t Type="0" Time="360"/> <t Type="0" Time="360.1"/> <t Type="0" Time="360.2"/> <t Type="0" Time="400"/> <t Type="0" Time="400.1"/> </BearTimes> <Houses> <h Type="2" PosIndex="2" Upgrade="5"/> <h Type="1" PosIndex="1" Upgrade="5"/> <h Type="0" PosIndex="0" Upgrade="5"/> <h Type="3" PosIndex="5" Upgrade="5"/> </Houses> <Accessibility/> <AccessProduct> <c Product="5"/> </AccessProduct> </record> <record StartMoney="0" Name="16" BestTime="145" GoldTime="150" SilverTime="210" Prize="50" SilverPrize="100" GoldPrize="150" EnemyKillingNum="1"> <StartPets> <p Type="0"/> <p Type="0"/> <p Type="0"/> <p Type="0"/> <p Type="0"/> <p Type="0"/> <p Type="0"/> <p Type="0"/> <p Type="0"/> <p Type="0"/> </StartPets> <Goals> <g Type="4" Val="2"/> <g Type="0" Val="10"/> </Goals> <BearTimes> <t Type="0" Time="10"/> <t Type="0" Time="60"/> <t Type="0" Time="100"/> <t Type="0" Time="150"/> <t Type="0" Time="200"/> <t Type="0" Time="250"/> <t Type="0" Time="300"/> <t Type="0" Time="350"/> <t Type="0" Time="400"/> <t Type="0" Time="500"/> <t Type="0" Time="600"/> </BearTimes> <Houses> <h Type="2" PosIndex="2" Upgrade="0"/> <h Type="1" PosIndex="1" Upgrade="0"/> <h Type="0" PosIndex="0" Upgrade="0"/> </Houses> <Accessibility/> <AccessProduct> <c Product="5"/> </AccessProduct> </record> <record StartMoney="200" Name="17" BestTime="202" GoldTime="210" SilverTime="270" Prize="50" SilverPrize="100" GoldPrize="150" EnemyKillingNum="1"> <Goals> <g Type="4" Val="5"/> <g Type="0" Val="10"/> <g Type="7" Val="20"/> </Goals> <BearTimes> <t Type="0" Time="20"/> <t Type="0" Time="20.1"/> <t Type="0" Time="40"/> <t Type="0" Time="40.1"/> <t Type="0" Time="60"/> <t Type="0" Time="60.1"/> <t Type="0" Time="80"/> <t Type="0" Time="80.1"/> </BearTimes> <Houses> <h Type="2" PosIndex="2" Upgrade="1"/> <h Type="1" PosIndex="1" Upgrade="1"/> <h Type="0" PosIndex="0" Upgrade="1"/> <h Type="2" PosIndex="5" Upgrade="1"/> <h Type="1" PosIndex="4" Upgrade="1"/> <h Type="0" PosIndex="3" Upgrade="1"/> </Houses> <Accessibility> </Accessibility> <AccessProduct> <c Product="5"/> </AccessProduct> </record> <record StartMoney="100" Name="18" BestTime="233" GoldTime="240" SilverTime="300" Prize="50" SilverPrize="100" GoldPrize="150" EnemyKillingNum="1"> <Goals> <g Type="4" Val="1"/> <g Type="0" Val="35"/> <g Type="7" Val="17"/> </Goals> <BearTimes> <t Type="0" Time="100"/> <t Type="0" Time="100.1"/> <t Type="0" Time="100.2"/> <t Type="0" Time="100.3"/> <t Type="0" Time="100.4"/> </BearTimes> <Houses> <h Type="2" PosIndex="2" Upgrade="0"/> <h Type="1" PosIndex="1" Upgrade="0"/> <h Type="0" PosIndex="0" Upgrade="0"/> <h Type="3" PosIndex="4" Upgrade="3"/> </Houses> <Accessibility/> <AccessProduct> <c Product="5"/> </AccessProduct> </record> <record StartMoney="0" Name="19" BestTime="78" GoldTime="95" SilverTime="140" Prize="50" SilverPrize="100" GoldPrize="150" EnemyKillingNum="1"> <StartPets> <p Type="0"/> <p Type="0"/> <p Type="0"/> <p Type="0"/> <p Type="0"/> <p Type="0"/> <p Type="0"/> <p Type="0"/> <p Type="0"/> <p Type="0"/> <p Type="0"/> <p Type="0"/> <p Type="0"/> <p Type="0"/> <p Type="0"/> <p Type="0"/> <p Type="0"/> <p Type="0"/> <p Type="0"/> <p Type="0"/> </StartPets> <Goals> <g Type="8" Val="2"/> </Goals> <BearTimes> <t Type="0" Time="60"/> <t Type="0" Time="60.1"/> <t Type="0" Time="60.2"/> <t Type="0" Time="60.3"/> <t Type="0" Time="120"/> <t Type="0" Time="120.1"/> <t Type="0" Time="120.2"/> <t Type="0" Time="120.3"/> </BearTimes> <Houses> <h Type="2" PosIndex="2" Upgrade="4"/> <h Type="1" PosIndex="1" Upgrade="4"/> <h Type="0" PosIndex="0" Upgrade="4"/> </Houses> <Accessibility> <c CritID="2" Value="5"/> <c CritID="3" Value="5"/> </Accessibility> <Accessibility/> <AccessProduct> <c Product="5"/> </AccessProduct> </record> </Records> ; public static var stars:Number = 0; public static var VIEWER_ID:String = "3485491"; public static var closeFunction:String = ""; public static var currentLanguage:XML; public static var downloadable:Boolean = true; public function Config(){ super(); _slot1.sharedObject = SharedObject.getLocal(_slot1.sharedName); } public static function getLevel(level:Number=1):XML{ return (LevelesRecords.record[(level - 1)]); } 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; } } }//package utils
Section 430
//Fonts (utils.Fonts) package utils { import flash.text.*; public class Fonts { private static var dfontBold:Class = Fonts_dfontBold; private static var dfont:Class = Fonts_dfont; public function Fonts(){ super(); } public static function applyDefaultFont(txt:TextField, bold:Boolean=false):void{ txt.embedFonts = true; txt.antiAliasType = AntiAliasType.ADVANCED; txt.gridFitType = GridFitType.SUBPIXEL; txt.mouseEnabled = false; var fmt:TextFormat = new TextFormat("RotondaС"); fmt.bold = bold; txt.defaultTextFormat = fmt; txt.text = txt.text; } } }//package utils
Section 431
//Fonts_dfont (utils.Fonts_dfont) package utils { import mx.core.*; public class Fonts_dfont extends FontAsset { } }//package utils
Section 432
//Fonts_dfontBold (utils.Fonts_dfontBold) package utils { import mx.core.*; public class Fonts_dfontBold extends FontAsset { } }//package utils
Section 433
//Languages (utils.Languages) package utils { public class Languages { public static var language:XML = <english> <levels> <level>Level 1</level> <level>Level 2</level> <level>Level 3</level> <level>Level 4</level> <level>Level 5</level> <level>Level 6</level> <level>Level 7</level> <level>Level 8</level> <level>Level 9</level> <level>Level 10</level> <level>Level 11</level> <level>Level 12</level> <level>Level 13</level> <level>Level 14</level> <level>Level 15</level> <level>Level 16</level> <level>Level 17</level> <level>Level 18</level> <level>Level 19</level> <level>Level 20</level> </levels> <!-- Ui--> <download>Download</download> <download_full_version><![CDATA[Download<br>full version]]></download_full_version> <ok>Ok</ok> <yes>Yes</yes> <resume>Resume</resume> <map>Map</map> <restart>Restart</restart> <no>No</no> <cancel>Cancel</cancel> <upgrade_building>Upgrade building</upgrade_building> <start>Start</start> <shop>Shop</shop> <menu>Menu</menu> <one>1</one> <all>all</all> <sounds>Sounds</sounds> <music>Music</music> <main_menu>Main menu</main_menu> <exit_to_menu>Exit to menu</exit_to_menu> <exit>Exit</exit> <welcome>Welcome, </welcome> <change>Change</change> <leaderboard>Leaderboard</leaderboard> <send_score>Send score</send_score> <quit>Are you sure you want to quit?</quit> <quit_current_game>Quit your current game?</quit_current_game> <!-- Results --> <level_results>Level results</level_results> <coins>Coins:</coins> <time>Time:</time> <bonus>Bonus:</bonus> <bank>Bank:</bank> <!-- Results window --> <level_goals>Level goals</level_goals> <collect>Collect:</collect> <for_completing>For completing:</for_completing> <gold>Gold</gold> <silver>Silver</silver> <game_over><![CDATA[Congratulations! You have finished the online version! Download the full version! <br>90 all-new levels, <br>12 new products, <br>22 hilarious visual gags, <br>All-new storyline, <br>A special surprise guest!!]]></game_over> <money>Money</money> <powdered>Powdered eggs</powdered> <confectionery>Confectionery</confectionery> <bakery>Bakery</bakery> <incubator>Incubator</incubator> <warehouse tooltip="Warehouse for storing products">Warehouse</warehouse> <well tooltip="This is a fishing well. It produces fish for feeding animals.">Well</well> <skip_educational_levels>Skip educational levels?</skip_educational_levels> <cage>Cage</cage> <plane>Helicopter</plane> <car>Truck</car> <order_products>Order products</order_products> <products>Products</products> <price>Price</price> <order>Order</order> <ship_products>Ship products</ship_products> <ship>Ship</ship> <animals>Animals</animals> <ostrich produce="Royal penguin produces">Royal penguin</ostrich> <guinea_fowl produce="Penguin produces">Penguin</guinea_fowl> <guinea_fowls>Penguin</guinea_fowls> <ostrichs>Royal penguin</ostrichs> <lion>Polar bear</lion> <flour>Flour</flour> <!-- Продукты--> <goals>Goals</goals> <money>money</money> <egg>Egg</egg> <eggs>Eggs</eggs> <powdered_eggs>Powdered eggs</powdered_eggs> <plume>Feather</plume> <cake>Cake</cake> <floury_cake>Floury cake</floury_cake> <!-- Подсказки --> <tooltips> <guinea_fowl>This is a penguin. It eats fish and produces eggs.</guinea_fowl> <ostrich>This is a royal penguin. It eats fish and produces feathers.</ostrich> <lion>This is a polar bear. It throws animals off the farm. Catch it and then sell it.</lion> <house_plate>Click here to construct a building.</house_plate> <click_the_ground>Click this area to scatter fish and feed the animals.</click_the_ground> <well_empty>The fishing well is empty. Click it to buy more fish.</well_empty> <collect>This is a product. Click it to store it in the warehouse.</collect> <level_icon>This is the level icon. Click it to start playing.</level_icon> <level_inaccessible>To access a new level, go to the store and purchase the plans for the stated building.</level_inaccessible> <powdered>This is a powder factory. Click it to make powder from your eggs</powdered> <confectionery>This is a cake factory. It makes cakes from buns.</confectionery> <bakery>This is a bakery. It produces buns from powder.</bakery> <incubator>This is a incubator. It produces pets from eggs.</incubator> <warehouse>This is a warehouse. This is where your products are stored. Click it to sell your products.</warehouse> <plane>This is a helicopter. Use it to bring in goods from the city.</plane> <car>This is a truck. It takes products to the city..</car> <shop>Here, you can upgrade your buildings and more using the stars you collected.</shop> <goals>This is the goal icon. Click it to see your goals for the level.</goals> <feed>You have to scatter fish to feed your animals.</feed> </tooltips> <shop_tooltips> <powdered>Egg powder processing plant</powdered> <confectionery>The Confectionery processes</confectionery> <bakery>The Bakery processes</bakery> <incubator>The Incubator processes</incubator> <warehouse>Warehouse will be more spacious</warehouse> <well>The well will store more fish</well> <cage>Cage will catch bear faster</cage> <car>Truck will be faster and more spacious</car> <plane>Plane will be faster and more spacious</plane> </shop_tooltips> <buy> <guinea_fowl>Now you have enough money to buy a penguin.</guinea_fowl> <ostrich>Now you have enough money to buy royal penguin.</ostrich> </buy> </english> ; public function Languages(){ super(); } } }//package utils
Section 434
//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, 0); public static var purposes:Array = new Array(); public static var accessProduct:Array = new Array(); public function LevelStatistics(){ super(); } private static function checkCompleted():void{ var purpose:Array; var completed:Number = 0; var i:int; while (i < LevelStatistics.purposes.length) { purpose = LevelStatistics.purposes[i].split(","); if (Number(purpose[1]) <= Number(LevelStatistics.goals[ProductTypes.typeToNumber(purpose[0])])){ completed++; }; i++; }; if (completed == LevelStatistics.purposes.length){ GameController.instance.pause(); ResultsWindow.instance.show(); }; } public static function updateStatistics():void{ BottomPanel.instance.update(); checkCompleted(); } } }//package utils
Section 435
//ProductTypes (utils.ProductTypes) package utils { public class ProductTypes { private static var types:Array = new Array("EGG", "PLUME", "DRIED_EGGS", "CAKE", "FLOURY_CAKE", "FLOUR", "POLAR_BEAR", "PENGUIN", "KING_PENGUIN", "MONEY"); public function ProductTypes(){ super(); } public static function numberToType(type:Number):String{ return (types[type]); } public static function translate(type:String, help:Boolean=false):String{ switch (type){ case "EGG": return (Config.currentLanguage.eggs); case "DRIED_EGGS": return (Config.currentLanguage.powdered_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 (help){ return (Config.currentLanguage.guinea_fowl.@produce); }; return (Config.currentLanguage.guinea_fowl); case "KING_PENGUIN": if (help){ return (Config.currentLanguage.ostrich.@produce); }; return (Config.currentLanguage.ostrich); case "GUINEA_FOWL": if (help){ return (Config.currentLanguage.guinea_fowl.@produce); }; return (Config.currentLanguage.guinea_fowl); case "OSTRICH": if (help){ return (Config.currentLanguage.ostrich.@produce); }; return (Config.currentLanguage.ostrich); case "MONEY": return (Config.currentLanguage.money); default: return (Config.currentLanguage.eggs); }; } public static function typeToNumber(type:String):Number{ var i:int; while (i < types.length) { if (types[i] == type){ return (i); }; i++; }; return (0); } } }//package utils
Section 436
//SoundsList (utils.SoundsList) package utils { import flash.media.*; import com.melesta.sound.*; public class SoundsList { 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 function SoundsList(){ super(); } 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("lion_scream", lion_scream); SoundManager.registerSoundAsset("enemy_landing", enemy_landing); SoundManager.registerSoundAsset("light_pet_landing", light_pet_landing); SoundManager.registerSoundAsset("heavy_pet_landing", heavy_pet_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", guinea_fowl_die); SoundManager.registerSoundAsset("guinea_fowl_flyout", guinea_fowl_flyout); SoundManager.registerSoundAsset("guinea_fowl_hungry", guinea_fowl_hungry); SoundManager.registerSoundAsset("guinea_fowl_voice", guinea_fowl_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("ostrich_die", ostrich_die); SoundManager.registerSoundAsset("ostrich_flyout", ostrich_flyout); SoundManager.registerSoundAsset("ostrich_hungry", ostrich_hungry); SoundManager.registerSoundAsset("ostrich_voice", ostrich_voice); 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); menuMusicSound = new music_mainmenu(); gameMusicSound = new music_game(); } } }//package utils
Section 437
//Car (vehicles.Car) package vehicles { import flash.events.*; import flash.display.*; import flash.geom.*; import flash.filters.*; import houses.*; import ui.*; import shop.*; import game.*; import market.road.*; import flash.media.*; import utils.*; import caurina.transitions.properties.*; import com.melesta.sound.*; import caurina.transitions.*; public class Car extends CarTemplate { private var _upgradePosition:Array; private var gameController:GameController; private var _stageInstance:DisplayObjectContainer; private var _upgradeButton:UpgradeButton; public static var instance:Car; public static var upgradeLevel:Number = 0; public static var upgradeCost:Array = new Array(250, 500, 1500, 5000); public static var firstShow:Boolean = true; public function Car(stageInstance:DisplayObjectContainer, level:Number, delay:Number){ _upgradePosition = new Array(-45, -20); super(); Car.instance = this; gameController = GameController.instance; gameController.addEventListener(GameController.LEVEL_COMPLETED, destroy, false, 0, true); gameController.addEventListener(GameController.CHANGE_MONEY, updateMoney, false, 0, true); SoundManager.registerSoundAsset("house_landing", house_landing); upgradeLevel = level; _stageInstance = stageInstance; stageInstance.addChild(this); this.x = 140; var point:Point = new Point(140, 417); show(point, delay); body.addEventListener(MouseEvent.ROLL_OVER, dropShadow, false, 0, true); body.addEventListener(MouseEvent.ROLL_OUT, removeShadow, false, 0, true); body.addEventListener(MouseEvent.MOUSE_DOWN, onClick, false, 0, true); _upgradeButton = new UpgradeButton(); _upgradeButton.x = _upgradePosition[0]; _upgradeButton.y = _upgradePosition[1]; _upgradeButton.target = this; addChild(_upgradeButton); upgrade(upgradeLevel); FilterShortcuts.init(); this.width = Math.ceil(this.width); this.height = Math.ceil(this.height); } public function animate():void{ } public function upgrade(level:Number):void{ this.body.gotoAndStop((level + 1)); if (upgradeLevel <= (ShopWindow.availableUpgrades[3] - 1)){ _upgradeButton.caption.text = Car.upgradeCost[upgradeLevel]; Fonts.applyDefaultFont(_upgradeButton.caption); }; if (upgradeLevel > (ShopWindow.availableUpgrades[3] - 1)){ _upgradeButton.destroy(); }; Road.instance.addMoney(0); } public function removeShadow(event:MouseEvent=null):void{ var mtx:Array = [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0]; var mtxFilter:ColorMatrixFilter = new ColorMatrixFilter(mtx); Tweener.addTween(this.body, {_ColorMatrix_matrix:mtx, time:0.5, delay:0.1}); Tooltip.instance.hide(); } public function onClick(event:MouseEvent=null):void{ SoundManager.play("house_click", 1); Depot.instance.showMarket(); } private function remove():void{ removeEventListener(MouseEvent.MOUSE_DOWN, onClick); removeEventListener(MouseEvent.ROLL_OVER, dropShadow); removeEventListener(MouseEvent.ROLL_OVER, removeShadow); } public function dropShadow(event:MouseEvent=null):void{ var mtx: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 mtxFilter:ColorMatrixFilter = new ColorMatrixFilter(mtx); Tweener.addTween(this.body, {_ColorMatrix_matrix:mtx, time:0.5, delay:0.1}); Tooltip.instance.show(x, (y - 20), "CAR", upgradeLevel, "CAR"); } public function nextUpgrade():void{ Road.instance.addMoney(-(Number(Car.upgradeCost[upgradeLevel]))); upgradeLevel++; upgrade(upgradeLevel); SoundManager.play("action_upgrade", 1); } private function landing():void{ SoundManager.play("house_landing", 1, new SoundTransform(1, -1)); updateMoney(); if (((firstShow) && (!(Config.skiped)))){ firstShow = false; BlockTooltip.instance.show((this.x + 8), (this.y - 25), Config.currentLanguage.tooltips.car); }; } public function checkMoney():void{ PetShop.instance.getHelp(); } public function updateMoney(event:Event=null):void{ if (_upgradeButton){ if (Car.upgradeCost[upgradeLevel] <= Road.currentMoney){ _upgradeButton.disabled(true); } else { _upgradeButton.disabled(false); }; }; } public function destroy(event:Event=null):void{ removeEventListener(MouseEvent.MOUSE_DOWN, onClick); removeEventListener(MouseEvent.ROLL_OVER, dropShadow); removeEventListener(MouseEvent.ROLL_OVER, removeShadow); gameController.removeEventListener(GameController.LEVEL_COMPLETED, destroy); gameController.removeEventListener(GameController.CHANGE_MONEY, updateMoney); _stageInstance.removeChild(this); } public function show(position:Point, delay:Number):void{ this.x = position.x; this.y = -50; Tweener.addTween(this, {y:position.y, time:0.4, delay:delay, transition:"easeInQuint", onComplete:landing}); } } }//package vehicles
Section 438
//CarTemplate (vehicles.CarTemplate) package vehicles { import flash.display.*; public dynamic class CarTemplate extends MovieClip { public var body:MovieClip; public function CarTemplate(){ super(); } } }//package vehicles
Section 439
//Plane (vehicles.Plane) package vehicles { import flash.events.*; import flash.display.*; import flash.geom.*; import flash.filters.*; import houses.*; import ui.*; import shop.*; import game.*; import market.road.*; import flash.media.*; import utils.*; import market.*; import caurina.transitions.properties.*; import com.melesta.sound.*; import caurina.transitions.*; public class Plane extends PlaneTemplate { private var _upgradePosition:Array; private var gameController:GameController; private var _upgradeButton:UpgradeButton; private var _stageInstance:DisplayObjectContainer; private var _importProduction:ImportWindow; public static var instance:Plane; public static var upgradeLevel:Number = 0; public static var upgradeCost:Array = new Array(400, 800, 1600, 6000); public static var firstShow:Boolean = true; public function Plane(stageInstance:DisplayObjectContainer, level:Number, delay:Number){ _upgradePosition = new Array(-45, 0); super(); Plane.instance = this; SoundManager.registerSoundAsset("house_landing", house_landing); upgradeLevel = level; _stageInstance = stageInstance; gameController = GameController.instance; gameController.addEventListener(GameController.LEVEL_COMPLETED, destroy, false, 0, true); gameController.addEventListener(GameController.CHANGE_MONEY, updateMoney, false, 0, true); stageInstance.addChild(this); this.x = 403; var point:Point = new Point(403, 412); show(point, delay); body.mouseEnabled = (body.mouseChildren = false); activeArea.addEventListener(MouseEvent.ROLL_OVER, dropShadow, false, 0, true); activeArea.addEventListener(MouseEvent.ROLL_OUT, removeShadow, false, 0, true); activeArea.addEventListener(MouseEvent.CLICK, onClick, false, 0, true); _upgradeButton = new UpgradeButton(); _upgradeButton.x = _upgradePosition[0]; _upgradeButton.y = _upgradePosition[1]; _upgradeButton.target = this; addChild(_upgradeButton); upgrade(upgradeLevel); _importProduction = new ImportWindow(stageInstance); FilterShortcuts.init(); this.width = Math.ceil(this.width); this.height = Math.ceil(this.height); } public function animate():void{ } public function upgrade(level:Number):void{ this.body.gotoAndStop((level + 1)); if (upgradeLevel <= (ShopWindow.availableUpgrades[4] - 1)){ _upgradeButton.caption.text = Plane.upgradeCost[upgradeLevel]; Fonts.applyDefaultFont(_upgradeButton.caption); }; if (upgradeLevel > (ShopWindow.availableUpgrades[4] - 1)){ _upgradeButton.destroy(); }; Road.instance.addMoney(0); } private function remove():void{ activeArea.removeEventListener(MouseEvent.CLICK, onClick); activeArea.removeEventListener(MouseEvent.ROLL_OVER, dropShadow); activeArea.removeEventListener(MouseEvent.ROLL_OVER, removeShadow); } public function onClick(event:MouseEvent=null):void{ SoundManager.play("house_click", 1); _importProduction.show(); } public function removeShadow(event:MouseEvent=null):void{ var mtx:Array = [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0]; var mtxFilter:ColorMatrixFilter = new ColorMatrixFilter(mtx); Tweener.addTween(this.body, {_ColorMatrix_matrix:mtx, time:0.5, delay:0.1}); Tooltip.instance.hide(); } public function nextUpgrade():void{ Road.instance.addMoney(-(Number(Plane.upgradeCost[upgradeLevel]))); upgradeLevel++; upgrade(upgradeLevel); SoundManager.play("action_upgrade", 1); } public function destroy(event:Event=null):void{ activeArea.removeEventListener(MouseEvent.CLICK, onClick); activeArea.removeEventListener(MouseEvent.ROLL_OVER, dropShadow); activeArea.removeEventListener(MouseEvent.ROLL_OVER, removeShadow); gameController.removeEventListener(GameController.LEVEL_COMPLETED, destroy); gameController.removeEventListener(GameController.CHANGE_MONEY, updateMoney); _stageInstance.removeChild(this); } public function show(position:Point, delay:Number):void{ this.x = position.x; this.y = -50; Tweener.addTween(this, {y:position.y, time:0.4, delay:delay, transition:"easeInQuint", onComplete:landing}); } public function dropShadow(event:MouseEvent=null):void{ var mtx: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 mtxFilter:ColorMatrixFilter = new ColorMatrixFilter(mtx); Tweener.addTween(this.body, {_ColorMatrix_matrix:mtx, time:0.5, delay:0.1}); Tooltip.instance.show(x, y, "PLANE", upgradeLevel, "PLANE"); } private function landing():void{ SoundManager.play("house_landing", 1, new SoundTransform(1, 1)); updateMoney(); if (((firstShow) && (!(Config.skiped)))){ firstShow = false; BlockTooltip.instance.show(this.x, this.y, Config.currentLanguage.tooltips.plane); }; } public function updateMoney(event:Event=null):void{ if (_upgradeButton){ if (Plane.upgradeCost[upgradeLevel] <= Road.currentMoney){ _upgradeButton.disabled(true); } else { _upgradeButton.disabled(false); }; }; } } }//package vehicles
Section 440
//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(){ super(); addFrameScript(0, frame1); } function frame1(){ body.mouseEnabled = (body.mouseChildren = false); } } }//package vehicles
Section 441
//LeaderboardItem (vkontakte.ui.LeaderboardItem) package vkontakte.ui { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.net.*; import utils.*; import flash.system.*; 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(data:XML, pl:Number){ super(); ColorShortcuts.init(); this.score.text = data.score; Fonts.applyDefaultFont(score); this.title.text = data.user_name; Fonts.applyDefaultFont(title); this.place.text = String(pl); Fonts.applyDefaultFont(place); _delay = pl; this.score.mouseEnabled = (this.title.mouseEnabled = (this.place.mouseEnabled = false)); this.place.text = String(pl); Fonts.applyDefaultFont(place); getInfo(data.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(event:IOErrorEvent):void{ } private function out(event:MouseEvent):void{ Tweener.addTween(this, {_brightness:0, time:0.3}); } private function loadImage():void{ _loader.load(new URLRequest(_imagePath)); } private function photoLoaded(event:Event):void{ event.stopPropagation(); var photo:Bitmap = Bitmap(event.target.content); this.image.avatar.addChild(photo); } private function over(event:MouseEvent):void{ Tweener.addTween(this, {_brightness:0.5, time:0.3}); } public function getInfo(uids:Object, fields:String="photo"):void{ var _uids:String = ((uids is Array)) ? uids.join(",") : String(uids); _id = _uids; var path:String = ((((((((("api_id=" + Config.API_ID) + "&fields=") + fields) + "&method=getProfiles") + "&uids=") + _uids) + "&test_mode=") + Config.TEST_MODE) + "&v=2.0"); var sig:String = (((((((((((Config.VIEWER_ID + "api_id=") + Config.API_ID) + "fields=") + fields) + "method=getProfiles") + "test_mode=") + Config.TEST_MODE) + "uids=") + _uids) + "v=2.0") + Config.API_SECRET); var rpath:String = ((((Config.api + "?") + path) + "&sig=") + MD5.hash(sig)); _loader = new URLLoader(); _imagePath = rpath; _loader.addEventListener(Event.COMPLETE, userInfoLoaded); setTimeout(loadImage, Math.ceil(((1200 / 3) * _delay))); } private function gotoUserPage(event:MouseEvent):void{ navigateToURL(new URLRequest(("http://vkontakte.ru/id" + _id)), "_blank"); } private function userInfoLoaded(event:Event):void{ event.stopPropagation(); var user_info:XML = XML(event.target.data); var photoLoader:Loader = new Loader(); photoLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, photoLoaded); photoLoader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, unableToLoadPhoto); var loaderContext:LoaderContext = new LoaderContext(true); photoLoader.load(new URLRequest(user_info.user.photo), loaderContext); } } }//package vkontakte.ui
Section 442
//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(){ super(); _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(event:MouseEvent=null):void{ var event = event; Tweener.addTween(this, {alpha:0, time:0.5, onComplete:function ():void{ this.visible = false; clearList(); }}); } private function clearList():void{ var j:int = _itemsContainer.numChildren; while (j--) { _itemsContainer.removeChildAt(j); }; } private function mouseUp(event:MouseEvent):void{ if (dragging){ dragging = false; sliderBtn.stopDrag(); scrollTimer.stop(); scrollTimer.removeEventListener(TimerEvent.TIMER, scroll, true); }; } public function getLeaderBoard():void{ var path:String = (((((("api_id=" + Config.API_ID) + "&method=") + "getHighScores") + "&test_mode=") + Config.TEST_MODE) + "&v=2.0"); var sig:String = ((((((((Config.VIEWER_ID + "api_id=") + Config.API_ID) + "method=") + "getHighScores") + "test_mode=") + Config.TEST_MODE) + "v=2.0") + Config.API_SECRET); var rpath:String = ((((Config.api + "?") + path) + "&sig=") + MD5.hash(sig)); var loader:URLLoader = new URLLoader(); loader.addEventListener(Event.COMPLETE, createList); loader.load(new URLRequest(rpath)); } private function scroll(event:TimerEvent=null):void{ _itemsContainer.cacheAsBitmap = true; var scrollPercent:int = ((100 / 236) * (sliderBtn.y - 68)); var acty:Number = Number(_itemsContainer); var endy:Number = Number(((((_mask.height - 10) - _itemsContainer.height) / 100) * scrollPercent)); Tweener.addTween(_itemsContainer, {y:endy, time:0, transition:"linear"}); } private function startScroll(event: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(event:Event):void{ var item:LeaderboardItem; event.stopPropagation(); preloader.visible = false; var scoreList:XML = XML(event.target.data); clearList(); var i:int; while (i < scoreList.children().length()) { item = new LeaderboardItem(scoreList.score_info[i], (i + 1)); item.x = 27; item.y = (70 + (55 * i)); item.alpha = 0; _itemsContainer.addChild(item); Tweener.addTween(item, {alpha:1, time:0.5, delay:(0.05 * i)}); i++; }; } public function show():void{ visible = true; Tweener.addTween(this, {alpha:1, time:0.5}); preloader.visible = true; getLeaderBoard(); } } }//package vkontakte.ui
Section 443
//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(){ super(); _loader = new URLLoader(); _loader.addEventListener(Event.COMPLETE, completeLoading); } public static function getMyScore():void{ var path:String = ((((((("api_id=" + Config.API_ID) + "&method=") + "getVariable") + "&key=100") + "&test_mode=") + Config.TEST_MODE) + "&v=2.0"); var sig: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 rpath:String = ((((Config.api + "?") + path) + "&sig=") + MD5.hash(sig)); _loader.load(new URLRequest(rpath)); } private static function completeLoading(event:Event):void{ trace(event.target.data); } public static function sendFBScore(score:Number):void{ var url:String = "http://en.facebook.promo.services.alawar.com/scores.php"; var loader:URLLoader = new URLLoader(); loader.addEventListener(Event.COMPLETE, completeHandler, false, 0, true); var request:URLRequest = new URLRequest(url); var variables:URLVariables = new URLVariables(); variables.cmd = "send"; variables.score = score; variables.user_id = fb_uid; request.data = variables; loader.load(request); } public static function completeHandler(event:Event):void{ trace(("Facebook score has sent " + event.target.data)); } public static function sendScore(score:Number):void{ var path:String = (((((((("api_id=" + Config.API_ID) + "&method=") + "setUserScore") + "&score=") + score) + "&test_mode=") + Config.TEST_MODE) + "&v=2.0"); var sig:String = ((((((((((Config.VIEWER_ID + "api_id=") + Config.API_ID) + "method=") + "setUserScore") + "score=") + score) + "test_mode=") + Config.TEST_MODE) + "v=2.0") + Config.API_SECRET); var rpath:String = ((((Config.api + "?") + path) + "&sig=") + MD5.hash(sig)); _loader.load(new URLRequest(rpath)); } public static function sendMyScore(score:Number):void{ var path:String = ((((((((("api_id=" + Config.API_ID) + "&method=") + "putVariable") + "&key=100") + "&value=") + score) + "&test_mode=") + Config.TEST_MODE) + "&v=2.0"); var sig:String = (((((((((((Config.VIEWER_ID + "api_id=") + Config.API_ID) + "key=100") + "method=") + "putVariable") + "test_mode=") + Config.TEST_MODE) + "v=2.0") + "value=") + score) + Config.API_SECRET); var rpath:String = ((((Config.api + "?") + path) + "&sig=") + MD5.hash(sig)); _loader.load(new URLRequest(rpath)); } } }//package vkontakte
Section 444
//action_sell_buy (action_sell_buy) package { import flash.media.*; public dynamic class action_sell_buy extends Sound { public function action_sell_buy(){ super(); } } }//package
Section 445
//action_upgrade (action_upgrade) package { import flash.media.*; public dynamic class action_upgrade extends Sound { public function action_upgrade(){ super(); } } }//package
Section 446
//action_watering (action_watering) package { import flash.media.*; public dynamic class action_watering extends Sound { public function action_watering(){ super(); } } }//package
Section 447
//action_well (action_well) package { import flash.media.*; public dynamic class action_well extends Sound { public function action_well(){ super(); } } }//package
Section 448
//action_well_auto (action_well_auto) package { import flash.media.*; public dynamic class action_well_auto extends Sound { public function action_well_auto(){ super(); } } }//package
Section 449
//airplane_flyin (airplane_flyin) package { import flash.media.*; public dynamic class airplane_flyin extends Sound { public function airplane_flyin(){ super(); } } }//package
Section 450
//ArrowTemplate (ArrowTemplate) package { import flash.display.*; public dynamic class ArrowTemplate extends MovieClip { public function ArrowTemplate(){ super(); } } }//package
Section 451
//BackgroundTemplate (BackgroundTemplate) package { import flash.display.*; public dynamic class BackgroundTemplate extends MovieClip { public function BackgroundTemplate(){ super(); } } }//package
Section 452
//BlockTooltipTemplate (BlockTooltipTemplate) package { import flash.display.*; public dynamic class BlockTooltipTemplate extends MovieClip { public var lock:MovieClip; public var help:MovieClip; public var body:MovieClip; public function BlockTooltipTemplate(){ super(); } } }//package
Section 453
//cage_breaking (cage_breaking) package { import flash.media.*; public dynamic class cage_breaking extends Sound { public function cage_breaking(){ super(); } } }//package
Section 454
//cage_broke_bear_flee (cage_broke_bear_flee) package { import flash.media.*; public dynamic class cage_broke_bear_flee extends Sound { public function cage_broke_bear_flee(){ super(); } } }//package
Section 455
//cage_click (cage_click) package { import flash.media.*; public dynamic class cage_click extends Sound { public function cage_click(){ super(); } } }//package
Section 456
//CakeHouseTemplate (CakeHouseTemplate) package { import flash.display.*; public dynamic class CakeHouseTemplate extends MovieClip { public var body:MovieClip; public var activeArea:MovieClip; public function CakeHouseTemplate(){ super(); } } }//package
Section 457
//car_came (car_came) package { import flash.media.*; public dynamic class car_came extends Sound { public function car_came(){ super(); } } }//package
Section 458
//EndScreenTemplate (EndScreenTemplate) package { import flash.display.*; import flash.text.*; public dynamic class EndScreenTemplate extends MovieClip { public var sendScoreBtn:MovieClip; public var exitBtn:MovieClip; public var caption:TextField; public var buyBtn:MovieClip; public function EndScreenTemplate(){ super(); } } }//package
Section 459
//enemy_landing (enemy_landing) package { import flash.media.*; public dynamic class enemy_landing extends Sound { public function enemy_landing(){ super(); } } }//package
Section 460
//fanfare_aim (fanfare_aim) package { import flash.media.*; public dynamic class fanfare_aim extends Sound { public function fanfare_aim(){ super(); } } }//package
Section 461
//fanfare_best_time (fanfare_best_time) package { import flash.media.*; public dynamic class fanfare_best_time extends Sound { public function fanfare_best_time(){ super(); } } }//package
Section 462
//fanfare_level_complete (fanfare_level_complete) package { import flash.media.*; public dynamic class fanfare_level_complete extends Sound { public function fanfare_level_complete(){ super(); } } }//package
Section 463
//fanfare_medal (fanfare_medal) package { import flash.media.*; public dynamic class fanfare_medal extends Sound { public function fanfare_medal(){ super(); } } }//package
Section 464
//Farm2 (Farm2) package { import ru.rambler.games.interfaces.core.*; import com.facebook.events.*; import flash.events.*; import ru.rambler.games.events.*; import ru.rambler.games.interfaces.net.*; import ru.rambler.games.interfaces.game.*; import ru.rambler.games.interfaces.ui.*; import flash.net.*; import caurina.transitions.*; import flash.display.*; import com.facebook.data.users.*; import com.facebook.net.*; import com.facebook.utils.*; import flash.text.*; import flash.utils.*; import ui.*; import vkontakte.*; import com.facebook.commands.users.*; import utils.*; import ru.rambler.games.debug.*; import facebook.ui.*; import game.*; import mochi.as3.*; public class Farm2 extends MovieClip implements IGame { private var musicLoaded:Boolean;// = false private var preloader:FarmPreloader; private var musicCurrent:Number;// = 0 private var country:String;// = "US" private var adContainer:MovieClip; private var musicTotal:Number;// = 0 private var ad_loaded:Boolean;// = true private var _loader:ICore; private var farmTotal:Number;// = 0 private var _controller:IGameController; public var dataProvider:DataProvider; private var language:String;// = "en" private var farmLoaded:Boolean;// = false 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 = "b805518e75381959"; 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 = "d277f0b6407c9185"; public function Farm2(){ var bitmapData:BitmapData; var bg:Bitmap; trace("test"); super(); instance = this; stop(); preloader = new FarmPreloader(); addChild(preloader); Config.currentLanguage = Languages.language; var gc:GameController = new GameController(); _loaderInfo = loaderInfo.parameters; if (portal != "rambler"){ readSharedData(); }; 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(); }; //unresolved jump var _slot1 = e; trace(("Ошибка " + _slot1)); 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); musicLoaded = true; 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(); }; }; } public function handle_waitingForLogin(event:FacebookEvent):void{ var alert:AlertWindow = new AlertWindow(); addChild(alert); alert.show(); } private function farmLogoError(event:IOErrorEvent=null):void{ } public function closeFBAlert():void{ facebookSession.validateLogin(); //unresolved jump var _slot1 = error; trace(("facebookSession.validateLogin(): " + _slot1)); ad_loaded = true; initGame(); } public function destroy(... _args):void{ if (portal == "mail.ru"){ mail_ru_connection.close(); }; GameController.instance.destroy(); } private function error(event:IOErrorEvent=null):void{ } private function logoLoaded(event:Event=null):void{ preloader.addChild(event.target.content); event.target.content.x = 0; event.target.content.y = (425 - event.target.content.height); } public function closeGame(event:MouseEvent=null):void{ _uiManager.closeGame(); } private function initRambler(event:Event=null):void{ if (!isOnline){ _loader = new SingleplayerCoreEmulator(this); init(); trace("offline rambler"); } else { trace("online rambler"); }; _connection.connect(); FarmPreloader.instance.rambler.visible = true; } public function gameJacketError(errorObject:Object):void{ ad_loaded = true; adContainer.visible = false; initGame(); } private function gameJacketSecurityOK(e:Event):void{ ad_loaded = true; adContainer.visible = false; initGame(); } protected function get isOnline():Boolean{ return (!((_loader == null))); } private function initGame(event:Event=null):void{ var event = event; 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; }}); main(); }; }; } public function sendRamblerScore(score:Number=0):void{ (_connection as ISingleplayerConnection).sendResult(score, false); } public function set loader(value:ICore):void{ _loader = value; } private function closeRamblerGame(event: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(event:Event):void{ var loader:URLLoader = URLLoader(event.target); var languageXML:XML = new XML(loader.data); languageXML.ignoreWhitespace = true; Config.currentLanguage = languageXML; xmlLoaded = true; initGame(); } private function gameJacketSecurityError(e:Event):void{ var error:TextField = new TextField(); error.width = 300; error.htmlText = String("Security Error. <a href='http://www.alawar.com/download/FarmFrenzyPizzaParty_10105.exe'>Download full version.</a>"); } private function gameMusicLoaded(event:Event):void{ musicLoaded = true; initGame(); } private function main():void{ var app:Object; nextFrame(); var farmfrenzy2:Class = Class(getDefinitionByName(DOCUMENT_CLASS)); if (farmfrenzy2){ app = new (farmfrenzy2); addChildAt((app as DisplayObject), 0); }; } 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 loadSoundError(event:IOErrorEvent=null):void{ musicLoaded = true; SoundsList.gameMusicSound = null; initGame(); } private function showGameJacketAd():void{ var adOptions:Object = new Object(); var adHolder:MovieClip = new MovieClip(); adContainer.addChild(adHolder); adOptions.adDisplayObject = adHolder; adOptions.bgColour = 5090551; adOptions.bgAlpha = 1; adOptions.errorFunction = gameJacketError; adOptions.errorParameters = {testVar1:"Error Text", testVar2:0x0300}; adOptions.endFunction = gameJacketEnd; adOptions.endParameters = {testVar1:"End Text", testVar2:6}; } private function showInstallMessage():void{ trace("test"); var installWindow:InstallWindow = new InstallWindow(); addChild(installWindow); } private function connectRambler(event:ConnectionEvent):void{ trace("Rambler connection is ok"); startRamblerGame(); } private function handle_connect(event:FacebookEvent):void{ trace("connect"); var call:FacebookCall = facebookSession.facebook.post(new GetInfo([facebookSession.facebook.uid], ["name", "pic_square"])); call.addEventListener(FacebookEvent.COMPLETE, handle_getInfoComplete, false, 0, true); } private function progressHandler(event:ProgressEvent):void{ var loaded:uint = (event.bytesLoaded + musicCurrent); var total:uint = (event.bytesTotal + musicTotal); preloader.progress.line.gotoAndStop(Math.ceil(((loaded / total) * 100))); } 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); xmlLoader.load(xmlRequest); //unresolved jump var _slot1 = error; logoLoader.load(logoRequest); //unresolved jump var _slot1 = error; } public function gameJacketEnd(endObject:Object):void{ var endObject = endObject; ad_loaded = true; Tweener.addTween(adContainer, {alpha:0, time:0.1, onComplete:function ():void{ adContainer.visible = false; }}); initGame(); } private function readSharedData():void{ Config.sharedObject = SharedObject.getLocal(Config.sharedName); if (!Config.sharedObject.data.played){ Config.sharedObject.data.stars = (Config.stars = 0); Config.sharedObject.data.nodes = (Config.nodes = new Array("novel", "none", "none", "none", "novel", "none", "none", "none", "novel", "none", "none", "none", "novel", "none", "none", "none", "novel", "none", "none")); 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; }; //unresolved jump var _slot1 = error; } private function handle_getInfoComplete(event:FacebookEvent):void{ var getInfoData:GetInfoData = GetInfoData(event.data); var user:FacebookUser = FacebookUser(getInfoData.userCollection.getItemAt(0)); trace(user.pic_square); DataProvider.fb_uid = user.uid; trace(((user.name + " ") + user.uid)); } private function farmLogoLoaded(event:Event=null):void{ FarmPreloader.externalLogo = new Sprite(); FarmPreloader.externalLogo.addChild(event.target.content); } private function farmLoadedHandler(event:Event=null):void{ farmLoaded = true; initGame(); } private function readyRambler():void{ if (isOnline){ (_connection as ISingleplayerConnection).ready(); }; } private function progressMusic(event:ProgressEvent):void{ musicCurrent = event.bytesLoaded; musicTotal = event.bytesTotal; } } }//package
Section 465
//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 flash.text.*; import utils.*; import com.melesta.sound.*; import com.melesta.utils.fps.*; import flash.errors.*; 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(){ super(); var pg:PlayGround = new PlayGround(); addChild(pg); addEventListener(Event.ADDED_TO_STAGE, gameLoaded, false, 0, true); stop(); } public function destroy(event:Event=null):void{ } private function loaded(event:Event=null):void{ startScreen.addChild(event.target.content); event.target.content.x = 5; event.target.content.y = (425 - event.target.content.height); } private function prepareFPSMeter():void{ } private function error(event:IOErrorEvent=null):void{ } public function gameLoaded(event: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 tooltip:Tooltip = new Tooltip(); uiContainer.addChild(tooltip); var mapTooltip:MapTooltip = new MapTooltip(); uiContainer.addChild(mapTooltip); var blockTooltip:BlockTooltip = new BlockTooltip(); uiContainer.addChild(blockTooltip); var quitDialog:QuitDialog = new QuitDialog(); uiContainer.addChild(quitDialog); gameMenu = new GameMenu(this); endScreen = new EndScreen(this); arrow = new FArrow(this); var ldr:Loader = new Loader(); ldr.load(new URLRequest("logos/logo.png")); ldr.contentLoaderInfo.addEventListener(Event.COMPLETE, loaded, false, 0, true); ldr.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 quitMenu:QuitMenu = new QuitMenu(); uiContainer.addChild(quitMenu); } public function startGame(event:Event=null):void{ } } }//package
Section 466
//FlouryCakeHouseTemplate (FlouryCakeHouseTemplate) package { import flash.display.*; public dynamic class FlouryCakeHouseTemplate extends MovieClip { public var body:MovieClip; public var activeArea:MovieClip; public function FlouryCakeHouseTemplate(){ super(); } } }//package
Section 467
//fool_action (fool_action) package { import flash.media.*; public dynamic class fool_action extends Sound { public function fool_action(){ super(); } } }//package
Section 468
//guinea_fowl_die (guinea_fowl_die) package { import flash.media.*; public dynamic class guinea_fowl_die extends Sound { public function guinea_fowl_die(){ super(); } } }//package
Section 469
//guinea_fowl_flyout (guinea_fowl_flyout) package { import flash.media.*; public dynamic class guinea_fowl_flyout extends Sound { public function guinea_fowl_flyout(){ super(); } } }//package
Section 470
//guinea_fowl_hungry (guinea_fowl_hungry) package { import flash.media.*; public dynamic class guinea_fowl_hungry extends Sound { public function guinea_fowl_hungry(){ super(); } } }//package
Section 471
//guinea_fowl_voice (guinea_fowl_voice) package { import flash.media.*; public dynamic class guinea_fowl_voice extends Sound { public function guinea_fowl_voice(){ super(); } } }//package
Section 472
//heavy_pet_landing (heavy_pet_landing) package { import flash.media.*; public dynamic class heavy_pet_landing extends Sound { public function heavy_pet_landing(){ super(); } } }//package
Section 473
//house_board_landing (house_board_landing) package { import flash.media.*; public dynamic class house_board_landing extends Sound { public function house_board_landing(){ super(); } } }//package
Section 474
//house_click (house_click) package { import flash.media.*; public dynamic class house_click extends Sound { public function house_click(){ super(); } } }//package
Section 475
//house_landing (house_landing) package { import flash.media.*; public dynamic class house_landing extends Sound { public function house_landing(){ super(); } } }//package
Section 476
//IncubatorTemplate (IncubatorTemplate) package { import flash.display.*; public dynamic class IncubatorTemplate extends MovieClip { public var body:MovieClip; public var activeArea:MovieClip; public function IncubatorTemplate(){ super(); } } }//package
Section 477
//InstallWindowTemplate (InstallWindowTemplate) package { import flash.display.*; public dynamic class InstallWindowTemplate extends MovieClip { public function InstallWindowTemplate(){ super(); } } }//package
Section 478
//item_add (item_add) package { import flash.media.*; public dynamic class item_add extends Sound { public function item_add(){ super(); } } }//package
Section 479
//item_cancel (item_cancel) package { import flash.media.*; public dynamic class item_cancel extends Sound { public function item_cancel(){ super(); } } }//package
Section 480
//KingPenguinTemplate (KingPenguinTemplate) package { import flash.display.*; public dynamic class KingPenguinTemplate extends MovieClip { public var hungryProgress:MovieClip; public var body:MovieClip; public function KingPenguinTemplate(){ super(); } } }//package
Section 481
//LeaderboardItemTemplate (LeaderboardItemTemplate) package { import flash.display.*; import flash.text.*; public dynamic class LeaderboardItemTemplate extends MovieClip { public var place:TextField; public var image:MovieClip; public var title:TextField; public var score:TextField; public function LeaderboardItemTemplate(){ super(); } } }//package
Section 482
//light_pet_landing (light_pet_landing) package { import flash.media.*; public dynamic class light_pet_landing extends Sound { public function light_pet_landing(){ super(); } } }//package
Section 483
//lion_scream (lion_scream) package { import flash.media.*; public dynamic class lion_scream extends Sound { public function lion_scream(){ super(); } } }//package
Section 484
//MapNodeTemplate (MapNodeTemplate) package { import flash.display.*; public dynamic class MapNodeTemplate extends MovieClip { public var silver:MovieClip; public var none:MovieClip; public var novel:MovieClip; public var gold:MovieClip; public var normal:MovieClip; public function MapNodeTemplate(){ super(); } } }//package
Section 485
//MapTemplate (MapTemplate) package { import flash.display.*; public dynamic class MapTemplate extends MovieClip { public var _shadow:MovieClip; public var bottomPanel:MovieClip; public var buyBtn:MovieClip; public function MapTemplate(){ super(); } } }//package
Section 486
//MapTooltipTempalte (MapTooltipTempalte) package { import flash.display.*; import flash.text.*; public dynamic class MapTooltipTempalte extends MovieClip { public var body:MovieClip; public var caption:TextField; public function MapTooltipTempalte(){ super(); } } }//package
Section 487
//music_game (music_game) package { import flash.media.*; public dynamic class music_game extends Sound { public function music_game(){ super(); } } }//package
Section 488
//music_mainmenu (music_mainmenu) package { import flash.media.*; public dynamic class music_mainmenu extends Sound { public function music_mainmenu(){ super(); } } }//package
Section 489
//ostrich_die (ostrich_die) package { import flash.media.*; public dynamic class ostrich_die extends Sound { public function ostrich_die(){ super(); } } }//package
Section 490
//ostrich_flyout (ostrich_flyout) package { import flash.media.*; public dynamic class ostrich_flyout extends Sound { public function ostrich_flyout(){ super(); } } }//package
Section 491
//ostrich_hungry (ostrich_hungry) package { import flash.media.*; public dynamic class ostrich_hungry extends Sound { public function ostrich_hungry(){ super(); } } }//package
Section 492
//ostrich_voice (ostrich_voice) package { import flash.media.*; public dynamic class ostrich_voice extends Sound { public function ostrich_voice(){ super(); } } }//package
Section 493
//PenguinTemplate (PenguinTemplate) package { import flash.display.*; public dynamic class PenguinTemplate extends MovieClip { public var hungryProgress:MovieClip; public var body:MovieClip; public var activeArea:MovieClip; public function PenguinTemplate(){ super(); } } }//package
Section 494
//PolarBearTemplate (PolarBearTemplate) package { import flash.display.*; public dynamic class PolarBearTemplate extends MovieClip { public var buildCage:MovieClip; public var hit:MovieClip; public var body:MovieClip; public function PolarBearTemplate(){ super(); addFrameScript(0, frame1); } function frame1(){ buildCage.mouseEnabled = false; buildCage.mouseChildren = false; } } }//package
Section 495
//PowderedHouseTemplate (PowderedHouseTemplate) package { import flash.display.*; public dynamic class PowderedHouseTemplate extends MovieClip { public var body:MovieClip; public var activeArea:MovieClip; public function PowderedHouseTemplate(){ super(); } } }//package
Section 496
//PreloaderTemplate (PreloaderTemplate) package { import flash.display.*; public dynamic class PreloaderTemplate extends MovieClip { public var progress:MovieClip; public var rambler:MovieClip; public var alawar:MovieClip; public function PreloaderTemplate(){ super(); } } }//package
Section 497
//product_crack (product_crack) package { import flash.media.*; public dynamic class product_crack extends Sound { public function product_crack(){ super(); } } }//package
Section 498
//product_landing (product_landing) package { import flash.media.*; public dynamic class product_landing extends Sound { public function product_landing(){ super(); } } }//package
Section 499
//product_take (product_take) package { import flash.media.*; public dynamic class product_take extends Sound { public function product_take(){ super(); } } }//package
Section 500
//QuitDialogTemplate (QuitDialogTemplate) package { import flash.display.*; import flash.text.*; public dynamic class QuitDialogTemplate extends MovieClip { public var yesBtn:MovieClip; public var noBtn:MovieClip; public var caption:TextField; public function QuitDialogTemplate(){ super(); } } }//package
Section 501
//QuitMenuTemplate (QuitMenuTemplate) package { import flash.display.*; import flash.text.*; public dynamic class QuitMenuTemplate extends MovieClip { public var yesBtn:MovieClip; public var pig:MovieClip; public var noBtn:MovieClip; public var caption:TextField; public function QuitMenuTemplate(){ super(); } } }//package
Section 502
//ShopTemplate (ShopTemplate) package { import flash.display.*; import flash.text.*; public dynamic class ShopTemplate extends MovieClip { public var powdered:MovieClip; public var title:TextField; public var plane:MovieClip; public var stars_txt:TextField; public var incubator:MovieClip; public var warehouse:MovieClip; public var well:MovieClip; public var cage:MovieClip; public var confectionery:MovieClip; public var car:MovieClip; public var bakery:MovieClip; public var okBtn:MovieClip; public function ShopTemplate(){ super(); } } }//package
Section 503
//SimpleTooltipTemplate (SimpleTooltipTemplate) package { import flash.display.*; import flash.text.*; public dynamic class SimpleTooltipTemplate extends MovieClip { public var okBtn:MovieClip; public var caption:TextField; public function SimpleTooltipTemplate(){ super(); } } }//package
Section 504
//StartScreenTemplate (StartScreenTemplate) package { import flash.display.*; public dynamic class StartScreenTemplate extends MovieClip { public var musicBtn:MovieClip; public var exitBtn:MovieClip; public var rambler:MovieClip; public var alawar:MovieClip; public var logo:MovieClip; public var playerPanel:MovieClip; public var soundBtn:MovieClip; public var vkontakte_title:MovieClip; public var okBtn:MovieClip; public var buyBtn:MovieClip; public function StartScreenTemplate(){ super(); } } }//package
Section 505
//tick_money (tick_money) package { import flash.media.*; public dynamic class tick_money extends Sound { public function tick_money(){ super(); } } }//package
Section 506
//tick_time (tick_time) package { import flash.media.*; public dynamic class tick_time extends Sound { public function tick_time(){ super(); } } }//package
Section 507
//TooltipTemplate (TooltipTemplate) package { import flash.display.*; public dynamic class TooltipTemplate extends MovieClip { public var help:MovieClip; public var body:MovieClip; public function TooltipTemplate(){ super(); addFrameScript(0, frame1); } function frame1(){ help.mouseEnabled = false; help.mouseChildren = false; body.mouseEnabled = false; body.mouseChildren = false; } } }//package
Section 508
//ui_button_click (ui_button_click) package { import flash.media.*; public dynamic class ui_button_click extends Sound { public function ui_button_click(){ super(); } } }//package
Section 509
//ui_button_hover (ui_button_hover) package { import flash.media.*; public dynamic class ui_button_hover extends Sound { public function ui_button_hover(){ super(); } } }//package
Section 510
//ui_panel_showing (ui_panel_showing) package { import flash.media.*; public dynamic class ui_panel_showing extends Sound { public function ui_panel_showing(){ super(); } } }//package
Section 511
//WaterTooltipTemplate (WaterTooltipTemplate) package { import flash.display.*; import flash.text.*; public dynamic class WaterTooltipTemplate extends MovieClip { public var caption:TextField; public function WaterTooltipTemplate(){ super(); } } }//package
Section 512
//VLeaderboardTemplate (VLeaderboardTemplate) package { import flash.display.*; public dynamic class VLeaderboardTemplate extends MovieClip { public var closeBtn:SimpleButton; public var preloader:MovieClip; public var sliderBtn:MovieClip; public var _mask:MovieClip; public function VLeaderboardTemplate(){ super(); } } }//package
Section 513
//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

Library Items

Symbol 1 BitmapUsed by:3 196
Symbol 2 BitmapUsed by:3
Symbol 3 GraphicUses:1 2Used by:24
Symbol 4 BitmapUsed by:5
Symbol 5 GraphicUses:4Used by:11
Symbol 6 ShapeTweeningUsed by:8
Symbol 7 GraphicUsed by:8
Symbol 8 MovieClip {Farm3Africa_fla._line_100} [Farm3Africa_fla._line_100]Uses:6 7Used by:11
Symbol 9 BitmapUsed by:10
Symbol 10 GraphicUses:9Used by:11
Symbol 11 MovieClip {Farm3Africa_fla._progress_99} [Farm3Africa_fla._progress_99]Uses:5 8 10Used by:24
Symbol 12 BitmapUsed by:13
Symbol 13 GraphicUses:12Used by:16
Symbol 14 BitmapUsed by:15
Symbol 15 GraphicUses:14Used by:16
Symbol 16 MovieClip {Farm3Africa_fla.alawar_94} [Farm3Africa_fla.alawar_94]Uses:13 15Used by:24 179
Symbol 17 BitmapUsed by:18
Symbol 18 GraphicUses:17Used by:24
Symbol 19 BitmapUsed by:20
Symbol 20 GraphicUses:19Used by:23
Symbol 21 FontUsed by:22
Symbol 22 TextUses:21Used by:23
Symbol 23 MovieClipUses:20 22Used by:24 179
Symbol 24 MovieClip {PreloaderTemplate} [PreloaderTemplate]Uses:3 11 16 18 23
Symbol 25 BitmapUsed by:26
Symbol 26 GraphicUses:25Used by:36
Symbol 27 BitmapUsed by:28 31 32 33
Symbol 28 GraphicUses:27Used by:34
Symbol 29 FontUsed by:30 35 95 107 115 163 167 183 186 200 221 229 239 249 259 269 277 280 294 308 322 363 729 1317 1321 1322 1323 1709
Symbol 30 EditableTextUses:29Used by:34 177
Symbol 31 GraphicUses:27Used by:34
Symbol 32 GraphicUses:27Used by:34
Symbol 33 GraphicUses:27Used by:34
Symbol 34 MovieClip {Farm3Africa_fla.middleButton_7} [Farm3Africa_fla.middleButton_7]Uses:28 30 31 32 33Used by:36 120 201 336 1280 1318
Symbol 35 EditableTextUses:29Used by:36
Symbol 36 MovieClip {QuitDialogTemplate} [QuitDialogTemplate]Uses:26 34 35
Symbol 37 GraphicUsed by:45 720 1325 1738
Symbol 38 BitmapUsed by:39 125
Symbol 39 GraphicUses:38Used by:40
Symbol 40 MovieClipUses:39Used by:41
Symbol 41 MovieClipUses:40Used by:45
Symbol 42 BitmapUsed by:44
Symbol 43 BitmapUsed by:44
Symbol 44 GraphicUses:42 43Used by:45
Symbol 45 MovieClip {InstallWindowTemplate} [InstallWindowTemplate]Uses:37 41 44
Symbol 46 Sound {car_came} [car_came]
Symbol 47 Sound {ui_button_hover} [ui_button_hover]
Symbol 48 Sound {guinea_fowl_voice} [guinea_fowl_voice]
Symbol 49 Sound {music_mainmenu} [music_mainmenu]
Symbol 50 Sound {house_board_landing} [house_board_landing]
Symbol 51 Sound {light_pet_landing} [light_pet_landing]
Symbol 52 Sound {house_landing} [house_landing]
Symbol 53 Sound {lion_scream} [lion_scream]
Symbol 54 Sound {action_watering} [action_watering]
Symbol 55 Sound {action_well} [action_well]
Symbol 56 Sound {airplane_flyin} [airplane_flyin]
Symbol 57 Sound {ostrich_flyout} [ostrich_flyout]
Symbol 58 Sound {action_upgrade} [action_upgrade]
Symbol 59 Sound {house_click} [house_click]
Symbol 60 Sound {fool_action} [fool_action]
Symbol 61 Sound {guinea_fowl_die} [guinea_fowl_die]
Symbol 62 Sound {ui_button_click} [ui_button_click]
Symbol 63 Sound {ostrich_hungry} [ostrich_hungry]
Symbol 64 Sound {tick_money} [tick_money]
Symbol 65 Sound {product_crack} [product_crack]
Symbol 66 Sound {product_landing} [product_landing]
Symbol 67 Sound {heavy_pet_landing} [heavy_pet_landing]
Symbol 68 Sound {ostrich_die} [ostrich_die]
Symbol 69 Sound {fanfare_best_time} [fanfare_best_time]
Symbol 70 Sound {cage_broke_bear_flee} [cage_broke_bear_flee]
Symbol 71 Sound {tick_time} [tick_time]
Symbol 72 Sound {action_well_auto} [action_well_auto]
Symbol 73 Sound {product_take} [product_take]
Symbol 74 Sound {fanfare_aim} [fanfare_aim]
Symbol 75 Sound {ui_panel_showing} [ui_panel_showing]
Symbol 76 Sound {guinea_fowl_flyout} [guinea_fowl_flyout]
Symbol 77 Sound {cage_click} [cage_click]
Symbol 78 Sound {cage_breaking} [cage_breaking]
Symbol 79 Sound {guinea_fowl_hungry} [guinea_fowl_hungry]
Symbol 80 Sound {item_add} [item_add]
Symbol 81 Sound {action_sell_buy} [action_sell_buy]
Symbol 82 Sound {ostrich_voice} [ostrich_voice]
Symbol 83 Sound {music_game} [music_game]
Symbol 84 Sound {fanfare_level_complete} [fanfare_level_complete]
Symbol 85 Sound {item_cancel} [item_cancel]
Symbol 86 Sound {fanfare_medal} [fanfare_medal]
Symbol 87 Sound {enemy_landing} [enemy_landing]
Symbol 88 Sound {ru.rambler.games.assets.DefaultStartSound} [ru.rambler.games.assets.DefaultStartSound]
Symbol 89 Font {utils.Fonts_dfont} [utils.Fonts_dfont]
Symbol 90 Font {utils.Fonts_dfontBold} [utils.Fonts_dfontBold]
Symbol 91 BitmapUsed by:92
Symbol 92 GraphicUses:91Used by:100
Symbol 93 BitmapUsed by:94 96 97 98
Symbol 94 GraphicUses:93Used by:99
Symbol 95 EditableTextUses:29Used by:99
Symbol 96 GraphicUses:93Used by:99
Symbol 97 GraphicUses:93Used by:99
Symbol 98 GraphicUses:93Used by:99
Symbol 99 MovieClip {Farm3Africa_fla.big_btn_48} [Farm3Africa_fla.big_btn_48]Uses:94 95 96 97 98Used by:100 179 364 763 860 1287 1352 1784
Symbol 100 MovieClip {ui.GameMenuTemplate} [ui.GameMenuTemplate]Uses:92 99
Symbol 101 BitmapUsed by:102
Symbol 102 GraphicUses:101Used by:121
Symbol 103 GraphicUsed by:104 180 724
Symbol 104 MovieClipUses:103Used by:121
Symbol 105 BitmapUsed by:106 108 109
Symbol 106 GraphicUses:105Used by:110
Symbol 107 EditableTextUses:29Used by:110
Symbol 108 GraphicUses:105Used by:110
Symbol 109 GraphicUses:105Used by:110
Symbol 110 MovieClip {Farm3Africa_fla.buyBtn_89} [Farm3Africa_fla.buyBtn_89]Uses:106 107 108 109Used by:121 179 364
Symbol 111 BitmapUsed by:112
Symbol 112 GraphicUses:111Used by:120
Symbol 113 BitmapUsed by:114 116 117 118
Symbol 114 GraphicUses:113Used by:119
Symbol 115 EditableTextUses:29Used by:119
Symbol 116 GraphicUses:113Used by:119
Symbol 117 GraphicUses:113Used by:119
Symbol 118 GraphicUses:113Used by:119
Symbol 119 MovieClip {Farm3Africa_fla.middleBtn_121} [Farm3Africa_fla.middleBtn_121]Uses:114 115 116 117 118Used by:120
Symbol 120 MovieClip {Farm3Africa_fla.bottomPanel_120} [Farm3Africa_fla.bottomPanel_120]Uses:112 34 119Used by:121
Symbol 121 MovieClip {MapTemplate} [MapTemplate]Uses:102 104 110 120
Symbol 122 BitmapUsed by:123 181
Symbol 123 GraphicUses:122Used by:124
Symbol 124 MovieClipUses:123Used by:149
Symbol 125 GraphicUses:38Used by:126
Symbol 126 MovieClipUses:125Used by:148
Symbol 127 FontUsed by:128 129 130 205 827
Symbol 128 EditableTextUses:127Used by:148
Symbol 129 EditableTextUses:127Used by:148
Symbol 130 EditableTextUses:127Used by:148
Symbol 131 BitmapUsed by:133 134 1718
Symbol 132 BitmapUsed by:133 134
Symbol 133 GraphicUses:131 132Used by:148
Symbol 134 GraphicUses:131 132Used by:148
Symbol 135 BitmapUsed by:136 140 142 843
Symbol 136 GraphicUses:135Used by:148
Symbol 137 BitmapUsed by:138
Symbol 138 GraphicUses:137Used by:148 856
Symbol 139 BitmapUsed by:140 144 844
Symbol 140 GraphicUses:139 135Used by:148
Symbol 141 BitmapUsed by:142
Symbol 142 GraphicUses:141 135Used by:148
Symbol 143 BitmapUsed by:144 147 854
Symbol 144 GraphicUses:139 143Used by:148
Symbol 145 BitmapUsed by:147 855
Symbol 146 BitmapUsed by:147 845
Symbol 147 GraphicUses:143 145 146Used by:148
Symbol 148 MovieClip {Farm3Africa_fla.items_110} [Farm3Africa_fla.items_110]Uses:126 128 129 130 133 134 136 138 140 142 144 147Used by:149
Symbol 149 MovieClip {TooltipTemplate} [TooltipTemplate]Uses:124 148
Symbol 150 BitmapUsed by:151
Symbol 151 GraphicUses:150Used by:152
Symbol 152 MovieClip {BackgroundTemplate} [BackgroundTemplate]Uses:151
Symbol 153 BitmapUsed by:154
Symbol 154 GraphicUses:153Used by:179
Symbol 155 BitmapUsed by:156
Symbol 156 GraphicUses:155Used by:159
Symbol 157 BitmapUsed by:158
Symbol 158 GraphicUses:157Used by:159
Symbol 159 MovieClip {Farm3Africa_fla.logo_mc_91} [Farm3Africa_fla.logo_mc_91]Uses:156 158Used by:179
Symbol 160 BitmapUsed by:162
Symbol 161 BitmapUsed by:162 165
Symbol 162 GraphicUses:160 161Used by:166
Symbol 163 EditableTextUses:29Used by:166
Symbol 164 GraphicUsed by:166
Symbol 165 GraphicUses:161Used by:166
Symbol 166 MovieClip {Farm3Africa_fla.soundControl_92} [Farm3Africa_fla.soundControl_92]Uses:162 163 164 165Used by:179
Symbol 167 TextUses:29Used by:168
Symbol 168 MovieClipUses:167Used by:179
Symbol 169 FontUsed by:170 171 1284 1285 1785 1786
Symbol 170 EditableTextUses:169Used by:178
Symbol 171 EditableTextUses:169Used by:178
Symbol 172 BitmapUsed by:173 174 175 176
Symbol 173 GraphicUses:172Used by:177
Symbol 174 GraphicUses:172Used by:177
Symbol 175 GraphicUses:172Used by:177
Symbol 176 GraphicUses:172Used by:177
Symbol 177 MovieClip {Farm3Africa_fla.okBtn_97} [Farm3Africa_fla.okBtn_97]Uses:173 30 174 175 176Used by:178
Symbol 178 MovieClip {Farm3Africa_fla.playerPanel_96} [Farm3Africa_fla.playerPanel_96]Uses:170 171 177Used by:179
Symbol 179 MovieClip {StartScreenTemplate} [StartScreenTemplate]Uses:154 159 99 166 110 168 16 23 178
Symbol 180 MovieClipUses:103Used by:191 1318
Symbol 181 GraphicUses:122Used by:182
Symbol 182 MovieClipUses:181Used by:191
Symbol 183 EditableTextUses:29Used by:190
Symbol 184 BitmapUsed by:185 187 188 1708 1710 1711
Symbol 185 GraphicUses:184Used by:189
Symbol 186 EditableTextUses:29Used by:189
Symbol 187 GraphicUses:184Used by:189
Symbol 188 GraphicUses:184Used by:189
Symbol 189 MovieClip {Farm3Africa_fla.okButton_105} [Farm3Africa_fla.okButton_105]Uses:185 186 187 188Used by:190
Symbol 190 MovieClip {Farm3Africa_fla.helpBlockToolTip_104} [Farm3Africa_fla.helpBlockToolTip_104]Uses:183 189Used by:191
Symbol 191 MovieClip {BlockTooltipTemplate} [BlockTooltipTemplate]Uses:180 182 190
Symbol 192 BitmapUsed by:193 362
Symbol 193 GraphicUses:192Used by:201
Symbol 194 BitmapUsed by:195
Symbol 195 GraphicUses:194Used by:199
Symbol 196 GraphicUses:1Used by:199
Symbol 197 BitmapUsed by:198
Symbol 198 GraphicUses:197Used by:199
Symbol 199 MovieClip {Farm3Africa_fla.pig_82} [Farm3Africa_fla.pig_82]Uses:195 196 198Used by:201
Symbol 200 EditableTextUses:29Used by:201
Symbol 201 MovieClip {QuitMenuTemplate} [QuitMenuTemplate]Uses:193 199 34 200
Symbol 202 BitmapUsed by:203
Symbol 203 GraphicUses:202Used by:204
Symbol 204 MovieClipUses:203Used by:206
Symbol 205 EditableTextUses:127Used by:206
Symbol 206 MovieClip {MapTooltipTempalte} [MapTooltipTempalte]Uses:204 205
Symbol 207 BitmapUsed by:209 762 837 859
Symbol 208 BitmapUsed by:209
Symbol 209 GraphicUses:207 208Used by:336
Symbol 210 BitmapUsed by:211
Symbol 211 GraphicUses:210Used by:216
Symbol 212 BitmapUsed by:213
Symbol 213 GraphicUses:212Used by:216
Symbol 214 BitmapUsed by:215
Symbol 215 GraphicUses:214Used by:216
Symbol 216 MovieClip {Farm3Africa_fla.bg_13} [Farm3Africa_fla.bg_13]Uses:211 213 215Used by:236 246 256 266 276 293 307 321 335
Symbol 217 BitmapUsed by:218
Symbol 218 GraphicUses:217Used by:236
Symbol 219 BitmapUsed by:220 222 223 224
Symbol 220 GraphicUses:219Used by:225
Symbol 221 EditableTextUses:29Used by:225
Symbol 222 GraphicUses:219Used by:225
Symbol 223 GraphicUses:219Used by:225
Symbol 224 GraphicUses:219Used by:225
Symbol 225 MovieClip {Farm3Africa_fla.buyButton_14} [Farm3Africa_fla.buyButton_14]Uses:220 221 222 223 224Used by:236 246 256 266 276 293 307 321 335
Symbol 226 BitmapUsed by:227
Symbol 227 GraphicUses:226Used by:228
Symbol 228 MovieClipUses:227Used by:236 246 256 266 276 293 307 321 335 1279 1286
Symbol 229 EditableTextUses:29Used by:236
Symbol 230 BitmapUsed by:231
Symbol 231 GraphicUses:230Used by:236
Symbol 232 BitmapUsed by:233
Symbol 233 GraphicUses:232Used by:236
Symbol 234 BitmapUsed by:235
Symbol 235 GraphicUses:234Used by:236
Symbol 236 MovieClip {Farm3Africa_fla.wellShop_12} [Farm3Africa_fla.wellShop_12]Uses:216 218 225 228 229 231 233 235Used by:336
Symbol 237 BitmapUsed by:238
Symbol 238 GraphicUses:237Used by:246
Symbol 239 EditableTextUses:29Used by:246
Symbol 240 BitmapUsed by:241
Symbol 241 GraphicUses:240Used by:246
Symbol 242 BitmapUsed by:243
Symbol 243 GraphicUses:242Used by:246
Symbol 244 BitmapUsed by:245
Symbol 245 GraphicUses:244Used by:246
Symbol 246 MovieClip {Farm3Africa_fla.depot_15} [Farm3Africa_fla.depot_15]Uses:216 238 225 228 239 241 243 245Used by:336
Symbol 247 BitmapUsed by:248
Symbol 248 GraphicUses:247Used by:256
Symbol 249 EditableTextUses:29Used by:256
Symbol 250 BitmapUsed by:251
Symbol 251 GraphicUses:250Used by:256
Symbol 252 BitmapUsed by:253
Symbol 253 GraphicUses:252Used by:256
Symbol 254 BitmapUsed by:255
Symbol 255 GraphicUses:254Used by:256
Symbol 256 MovieClip {Farm3Africa_fla.carShop_16} [Farm3Africa_fla.carShop_16]Uses:216 248 225 228 249 251 253 255Used by:336
Symbol 257 BitmapUsed by:258
Symbol 258 GraphicUses:257Used by:266
Symbol 259 EditableTextUses:29Used by:266
Symbol 260 BitmapUsed by:261
Symbol 261 GraphicUses:260Used by:266
Symbol 262 BitmapUsed by:263
Symbol 263 GraphicUses:262Used by:266
Symbol 264 BitmapUsed by:265
Symbol 265 GraphicUses:264Used by:266
Symbol 266 MovieClip {Farm3Africa_fla.plane_17} [Farm3Africa_fla.plane_17]Uses:216 258 225 228 259 261 263 265Used by:336
Symbol 267 BitmapUsed by:268
Symbol 268 GraphicUses:267Used by:276
Symbol 269 EditableTextUses:29Used by:276
Symbol 270 BitmapUsed by:271
Symbol 271 GraphicUses:270Used by:276
Symbol 272 BitmapUsed by:273
Symbol 273 GraphicUses:272Used by:276
Symbol 274 BitmapUsed by:275
Symbol 275 GraphicUses:274Used by:276
Symbol 276 MovieClip {Farm3Africa_fla.cage_18} [Farm3Africa_fla.cage_18]Uses:216 225 228 268 269 271 273 275Used by:336
Symbol 277 EditableTextUses:29Used by:336
Symbol 278 FontUsed by:279
Symbol 279 EditableTextUses:278Used by:336
Symbol 280 EditableTextUses:29Used by:293
Symbol 281 BitmapUsed by:282
Symbol 282 GraphicUses:281Used by:293
Symbol 283 BitmapUsed by:284
Symbol 284 GraphicUses:283Used by:293
Symbol 285 BitmapUsed by:286
Symbol 286 GraphicUses:285Used by:293
Symbol 287 BitmapUsed by:288
Symbol 288 GraphicUses:287Used by:293
Symbol 289 BitmapUsed by:290
Symbol 290 GraphicUses:289Used by:293
Symbol 291 BitmapUsed by:292
Symbol 292 GraphicUses:291Used by:293
Symbol 293 MovieClip {Farm3Africa_fla.dried_19} [Farm3Africa_fla.dried_19]Uses:216 280 282 225 228 284 286 288 290 292Used by:336
Symbol 294 EditableTextUses:29Used by:307
Symbol 295 BitmapUsed by:296
Symbol 296 GraphicUses:295Used by:307
Symbol 297 BitmapUsed by:298
Symbol 298 GraphicUses:297Used by:307
Symbol 299 BitmapUsed by:300
Symbol 300 GraphicUses:299Used by:307
Symbol 301 BitmapUsed by:302
Symbol 302 GraphicUses:301Used by:307
Symbol 303 BitmapUsed by:304
Symbol 304 GraphicUses:303Used by:307
Symbol 305 BitmapUsed by:306
Symbol 306 GraphicUses:305Used by:307
Symbol 307 MovieClip {Farm3Africa_fla.Cake_20} [Farm3Africa_fla.Cake_20]Uses:216 294 296 225 228 298 300 302 304 306Used by:336
Symbol 308 EditableTextUses:29Used by:321
Symbol 309 BitmapUsed by:310
Symbol 310 GraphicUses:309Used by:321
Symbol 311 BitmapUsed by:312
Symbol 312 GraphicUses:311Used by:321
Symbol 313 BitmapUsed by:314
Symbol 314 GraphicUses:313Used by:321
Symbol 315 BitmapUsed by:316
Symbol 316 GraphicUses:315Used by:321
Symbol 317 BitmapUsed by:318
Symbol 318 GraphicUses:317Used by:321
Symbol 319 BitmapUsed by:320
Symbol 320 GraphicUses:319Used by:321
Symbol 321 MovieClip {Farm3Africa_fla.floury_cake_21} [Farm3Africa_fla.floury_cake_21]Uses:216 308 310 225 228 312 314 316 318 320Used by:336
Symbol 322 EditableTextUses:29Used by:335
Symbol 323 BitmapUsed by:324
Symbol 324 GraphicUses:323Used by:335
Symbol 325 BitmapUsed by:326
Symbol 326 GraphicUses:325Used by:335
Symbol 327 BitmapUsed by:328
Symbol 328 GraphicUses:327Used by:335
Symbol 329 BitmapUsed by:330
Symbol 330 GraphicUses:329Used by:335
Symbol 331 BitmapUsed by:332
Symbol 332 GraphicUses:331Used by:335
Symbol 333 BitmapUsed by:334
Symbol 334 GraphicUses:333Used by:335
Symbol 335 MovieClip {Farm3Africa_fla.incubator_22} [Farm3Africa_fla.incubator_22]Uses:216 322 324 225 228 326 328 330 332 334Used by:336
Symbol 336 MovieClip {ShopTemplate} [ShopTemplate]Uses:209 236 246 256 266 276 277 279 293 307 321 34 335
Symbol 337 BitmapUsed by:338 339
Symbol 338 GraphicUses:337Used by:340
Symbol 339 GraphicUses:337Used by:340
Symbol 340 MovieClip {ArrowTemplate} [ArrowTemplate]Uses:338 339
Symbol 341 BitmapUsed by:342
Symbol 342 GraphicUses:341Used by:361
Symbol 343 BitmapUsed by:344
Symbol 344 GraphicUses:343Used by:349
Symbol 345 BitmapUsed by:346
Symbol 346 GraphicUses:345Used by:349
Symbol 347 BitmapUsed by:348
Symbol 348 GraphicUses:347Used by:349
Symbol 349 ButtonUses:344 346 348Used by:361
Symbol 350 GraphicUsed by:351
Symbol 351 MovieClipUses:350Used by:361
Symbol 352 BitmapUsed by:353
Symbol 353 GraphicUses:352Used by:354
Symbol 354 MovieClipUses:353Used by:361
Symbol 355 TextUsed by:361
Symbol 356 GraphicUsed by:359
Symbol 357 BitmapUsed by:358
Symbol 358 GraphicUses:357Used by:359
Symbol 359 MovieClipUses:356 358Used by:360
Symbol 360 MovieClip {Farm3Africa_fla.__preloader_138} [Farm3Africa_fla.__preloader_138]Uses:359Used by:361
Symbol 361 MovieClip {VLeaderboardTemplate} [VLeaderboardTemplate]Uses:342 349 351 354 355 360
Symbol 362 GraphicUses:192Used by:364
Symbol 363 EditableTextUses:29Used by:364
Symbol 364 MovieClip {EndScreenTemplate} [EndScreenTemplate]Uses:362 363 110 99
Symbol 365 BitmapUsed by:366
Symbol 366 GraphicUses:365Used by:719
Symbol 367 BitmapUsed by:368
Symbol 368 GraphicUses:367Used by:719
Symbol 369 BitmapUsed by:370
Symbol 370 GraphicUses:369Used by:719
Symbol 371 BitmapUsed by:372
Symbol 372 GraphicUses:371Used by:719
Symbol 373 BitmapUsed by:374
Symbol 374 GraphicUses:373Used by:719
Symbol 375 BitmapUsed by:376
Symbol 376 GraphicUses:375Used by:719
Symbol 377 BitmapUsed by:378
Symbol 378 GraphicUses:377Used by:719
Symbol 379 BitmapUsed by:380
Symbol 380 GraphicUses:379Used by:719
Symbol 381 BitmapUsed by:382
Symbol 382 GraphicUses:381Used by:719
Symbol 383 BitmapUsed by:384
Symbol 384 GraphicUses:383Used by:719
Symbol 385 BitmapUsed by:386
Symbol 386 GraphicUses:385Used by:719
Symbol 387 BitmapUsed by:388
Symbol 388 GraphicUses:387Used by:719
Symbol 389 BitmapUsed by:390
Symbol 390 GraphicUses:389Used by:719
Symbol 391 BitmapUsed by:392
Symbol 392 GraphicUses:391Used by:719
Symbol 393 BitmapUsed by:394
Symbol 394 GraphicUses:393Used by:719
Symbol 395 BitmapUsed by:396
Symbol 396 GraphicUses:395Used by:719
Symbol 397 BitmapUsed by:398
Symbol 398 GraphicUses:397Used by:719
Symbol 399 BitmapUsed by:400
Symbol 400 GraphicUses:399Used by:719
Symbol 401 BitmapUsed by:402
Symbol 402 GraphicUses:401Used by:719
Symbol 403 BitmapUsed by:404
Symbol 404 GraphicUses:403Used by:719
Symbol 405 BitmapUsed by:406
Symbol 406 GraphicUses:405Used by:719
Symbol 407 BitmapUsed by:408
Symbol 408 GraphicUses:407Used by:719
Symbol 409 BitmapUsed by:410
Symbol 410 GraphicUses:409Used by:719
Symbol 411 BitmapUsed by:412
Symbol 412 GraphicUses:411Used by:719
Symbol 413 BitmapUsed by:414
Symbol 414 GraphicUses:413Used by:719
Symbol 415 BitmapUsed by:416
Symbol 416 GraphicUses:415Used by:719
Symbol 417 BitmapUsed by:418
Symbol 418 GraphicUses:417Used by:719
Symbol 419 BitmapUsed by:420
Symbol 420 GraphicUses:419Used by:719
Symbol 421 BitmapUsed by:422
Symbol 422 GraphicUses:421Used by:719
Symbol 423 BitmapUsed by:424
Symbol 424 GraphicUses:423Used by:719
Symbol 425 BitmapUsed by:426
Symbol 426 GraphicUses:425Used by:719
Symbol 427 BitmapUsed by:428
Symbol 428 GraphicUses:427Used by:719
Symbol 429 BitmapUsed by:430
Symbol 430 GraphicUses:429Used by:719
Symbol 431 BitmapUsed by:432
Symbol 432 GraphicUses:431Used by:719
Symbol 433 BitmapUsed by:434
Symbol 434 GraphicUses:433Used by:719
Symbol 435 BitmapUsed by:436
Symbol 436 GraphicUses:435Used by:719
Symbol 437 BitmapUsed by:438
Symbol 438 GraphicUses:437Used by:719
Symbol 439 BitmapUsed by:440
Symbol 440 GraphicUses:439Used by:719
Symbol 441 BitmapUsed by:442
Symbol 442 GraphicUses:441Used by:719
Symbol 443 BitmapUsed by:444
Symbol 444 GraphicUses:443Used by:719
Symbol 445 BitmapUsed by:446
Symbol 446 GraphicUses:445Used by:719
Symbol 447 BitmapUsed by:448
Symbol 448 GraphicUses:447Used by:719
Symbol 449 BitmapUsed by:450
Symbol 450 GraphicUses:449Used by:719
Symbol 451 BitmapUsed by:452
Symbol 452 GraphicUses:451Used by:719
Symbol 453 BitmapUsed by:454
Symbol 454 GraphicUses:453Used by:719
Symbol 455 BitmapUsed by:456
Symbol 456 GraphicUses:455Used by:719
Symbol 457 BitmapUsed by:458
Symbol 458 GraphicUses:457Used by:719
Symbol 459 BitmapUsed by:460
Symbol 460 GraphicUses:459Used by:719
Symbol 461 BitmapUsed by:462
Symbol 462 GraphicUses:461Used by:719
Symbol 463 BitmapUsed by:464
Symbol 464 GraphicUses:463Used by:719
Symbol 465 BitmapUsed by:466
Symbol 466 GraphicUses:465Used by:719
Symbol 467 BitmapUsed by:468
Symbol 468 GraphicUses:467Used by:719
Symbol 469 BitmapUsed by:470
Symbol 470 GraphicUses:469Used by:719
Symbol 471 BitmapUsed by:472
Symbol 472 GraphicUses:471Used by:719
Symbol 473 BitmapUsed by:474
Symbol 474 GraphicUses:473Used by:719
Symbol 475 BitmapUsed by:476
Symbol 476 GraphicUses:475Used by:719
Symbol 477 BitmapUsed by:478
Symbol 478 GraphicUses:477Used by:719
Symbol 479 BitmapUsed by:480
Symbol 480 GraphicUses:479Used by:719
Symbol 481 BitmapUsed by:482
Symbol 482 GraphicUses:481Used by:719
Symbol 483 BitmapUsed by:484
Symbol 484 GraphicUses:483Used by:719
Symbol 485 BitmapUsed by:486
Symbol 486 GraphicUses:485Used by:719
Symbol 487 BitmapUsed by:488
Symbol 488 GraphicUses:487Used by:719
Symbol 489 BitmapUsed by:490
Symbol 490 GraphicUses:489Used by:719
Symbol 491 BitmapUsed by:492
Symbol 492 GraphicUses:491Used by:719
Symbol 493 BitmapUsed by:494
Symbol 494 GraphicUses:493Used by:719
Symbol 495 BitmapUsed by:496
Symbol 496 GraphicUses:495Used by:719
Symbol 497 BitmapUsed by:498
Symbol 498 GraphicUses:497Used by:719
Symbol 499 BitmapUsed by:500
Symbol 500 GraphicUses:499Used by:719
Symbol 501 BitmapUsed by:502
Symbol 502 GraphicUses:501Used by:719
Symbol 503 BitmapUsed by:504
Symbol 504 GraphicUses:503Used by:719
Symbol 505 BitmapUsed by:506
Symbol 506 GraphicUses:505Used by:719
Symbol 507 BitmapUsed by:508
Symbol 508 GraphicUses:507Used by:719
Symbol 509 BitmapUsed by:510
Symbol 510 GraphicUses:509Used by:719
Symbol 511 BitmapUsed by:512
Symbol 512 GraphicUses:511Used by:719
Symbol 513 BitmapUsed by:514
Symbol 514 GraphicUses:513Used by:719
Symbol 515 BitmapUsed by:516
Symbol 516 GraphicUses:515Used by:719
Symbol 517 BitmapUsed by:518
Symbol 518 GraphicUses:517Used by:719
Symbol 519 BitmapUsed by:520
Symbol 520 GraphicUses:519Used by:719
Symbol 521 BitmapUsed by:522
Symbol 522 GraphicUses:521Used by:719
Symbol 523 BitmapUsed by:524
Symbol 524 GraphicUses:523Used by:719
Symbol 525 BitmapUsed by:526
Symbol 526 GraphicUses:525Used by:719
Symbol 527 BitmapUsed by:528
Symbol 528 GraphicUses:527Used by:719
Symbol 529 BitmapUsed by:530
Symbol 530 GraphicUses:529Used by:719
Symbol 531 BitmapUsed by:532
Symbol 532 GraphicUses:531Used by:719
Symbol 533 BitmapUsed by:534
Symbol 534 GraphicUses:533Used by:719
Symbol 535 BitmapUsed by:536
Symbol 536 GraphicUses:535Used by:719
Symbol 537 BitmapUsed by:538
Symbol 538 GraphicUses:537Used by:719
Symbol 539 BitmapUsed by:540
Symbol 540 GraphicUses:539Used by:719
Symbol 541 BitmapUsed by:542
Symbol 542 GraphicUses:541Used by:719
Symbol 543 BitmapUsed by:544
Symbol 544 GraphicUses:543Used by:719
Symbol 545 BitmapUsed by:546
Symbol 546 GraphicUses:545Used by:719
Symbol 547 BitmapUsed by:548
Symbol 548 GraphicUses:547Used by:719
Symbol 549 BitmapUsed by:550
Symbol 550 GraphicUses:549Used by:719
Symbol 551 BitmapUsed by:552
Symbol 552 GraphicUses:551Used by:719
Symbol 553 BitmapUsed by:554
Symbol 554 GraphicUses:553Used by:719
Symbol 555 BitmapUsed by:556
Symbol 556 GraphicUses:555Used by:719
Symbol 557 BitmapUsed by:558
Symbol 558 GraphicUses:557Used by:719
Symbol 559 BitmapUsed by:560
Symbol 560 GraphicUses:559Used by:719
Symbol 561 BitmapUsed by:562
Symbol 562 GraphicUses:561Used by:719
Symbol 563 BitmapUsed by:564
Symbol 564 GraphicUses:563Used by:719
Symbol 565 BitmapUsed by:566
Symbol 566 GraphicUses:565Used by:719
Symbol 567 BitmapUsed by:568
Symbol 568 GraphicUses:567Used by:719
Symbol 569 BitmapUsed by:570
Symbol 570 GraphicUses:569Used by:719
Symbol 571 BitmapUsed by:572
Symbol 572 GraphicUses:571Used by:719
Symbol 573 BitmapUsed by:574
Symbol 574 GraphicUses:573Used by:719
Symbol 575 BitmapUsed by:576
Symbol 576 GraphicUses:575Used by:719
Symbol 577 BitmapUsed by:578
Symbol 578 GraphicUses:577Used by:719
Symbol 579 BitmapUsed by:580
Symbol 580 GraphicUses:579Used by:719
Symbol 581 BitmapUsed by:582
Symbol 582 GraphicUses:581Used by:719
Symbol 583 BitmapUsed by:584
Symbol 584 GraphicUses:583Used by:719
Symbol 585 BitmapUsed by:586
Symbol 586 GraphicUses:585Used by:719
Symbol 587 BitmapUsed by:588
Symbol 588 GraphicUses:587Used by:719
Symbol 589 BitmapUsed by:590
Symbol 590 GraphicUses:589Used by:719
Symbol 591 BitmapUsed by:592
Symbol 592 GraphicUses:591Used by:719
Symbol 593 BitmapUsed by:594
Symbol 594 GraphicUses:593Used by:719
Symbol 595 BitmapUsed by:596
Symbol 596 GraphicUses:595Used by:719
Symbol 597 BitmapUsed by:598
Symbol 598 GraphicUses:597Used by:719
Symbol 599 BitmapUsed by:600
Symbol 600 GraphicUses:599Used by:719
Symbol 601 BitmapUsed by:602
Symbol 602 GraphicUses:601Used by:719
Symbol 603 BitmapUsed by:604
Symbol 604 GraphicUses:603Used by:719
Symbol 605 BitmapUsed by:606
Symbol 606 GraphicUses:605Used by:719
Symbol 607 BitmapUsed by:608
Symbol 608 GraphicUses:607Used by:719
Symbol 609 BitmapUsed by:610
Symbol 610 GraphicUses:609Used by:719
Symbol 611 BitmapUsed by:612
Symbol 612 GraphicUses:611Used by:719
Symbol 613 BitmapUsed by:614
Symbol 614 GraphicUses:613Used by:719
Symbol 615 BitmapUsed by:616
Symbol 616 GraphicUses:615Used by:719
Symbol 617 BitmapUsed by:618
Symbol 618 GraphicUses:617Used by:719
Symbol 619 BitmapUsed by:620
Symbol 620 GraphicUses:619Used by:719
Symbol 621 BitmapUsed by:622
Symbol 622 GraphicUses:621Used by:719
Symbol 623 BitmapUsed by:624
Symbol 624 GraphicUses:623Used by:719
Symbol 625 BitmapUsed by:626
Symbol 626 GraphicUses:625Used by:719
Symbol 627 BitmapUsed by:628
Symbol 628 GraphicUses:627Used by:719
Symbol 629 BitmapUsed by:630
Symbol 630 GraphicUses:629Used by:719
Symbol 631 BitmapUsed by:632
Symbol 632 GraphicUses:631Used by:719
Symbol 633 BitmapUsed by:634
Symbol 634 GraphicUses:633Used by:719
Symbol 635 BitmapUsed by:636
Symbol 636 GraphicUses:635Used by:719
Symbol 637 BitmapUsed by:638
Symbol 638 GraphicUses:637Used by:719
Symbol 639 BitmapUsed by:640
Symbol 640 GraphicUses:639Used by:719
Symbol 641 BitmapUsed by:642
Symbol 642 GraphicUses:641Used by:719
Symbol 643 BitmapUsed by:644
Symbol 644 GraphicUses:643Used by:719
Symbol 645 BitmapUsed by:646
Symbol 646 GraphicUses:645Used by:719
Symbol 647 BitmapUsed by:648
Symbol 648 GraphicUses:647Used by:719
Symbol 649 BitmapUsed by:650
Symbol 650 GraphicUses:649Used by:719
Symbol 651 BitmapUsed by:652
Symbol 652 GraphicUses:651Used by:719
Symbol 653 BitmapUsed by:654
Symbol 654 GraphicUses:653Used by:719
Symbol 655 BitmapUsed by:656
Symbol 656 GraphicUses:655Used by:719
Symbol 657 BitmapUsed by:658
Symbol 658 GraphicUses:657Used by:719
Symbol 659 BitmapUsed by:660
Symbol 660 GraphicUses:659Used by:719
Symbol 661 BitmapUsed by:662
Symbol 662 GraphicUses:661Used by:719
Symbol 663 BitmapUsed by:664
Symbol 664 GraphicUses:663Used by:719
Symbol 665 BitmapUsed by:666
Symbol 666 GraphicUses:665Used by:719
Symbol 667 BitmapUsed by:668
Symbol 668 GraphicUses:667Used by:719
Symbol 669 BitmapUsed by:670
Symbol 670 GraphicUses:669Used by:719
Symbol 671 BitmapUsed by:672
Symbol 672 GraphicUses:671Used by:719
Symbol 673 BitmapUsed by:674
Symbol 674 GraphicUses:673Used by:719
Symbol 675 BitmapUsed by:676
Symbol 676 GraphicUses:675Used by:719
Symbol 677 BitmapUsed by:678
Symbol 678 GraphicUses:677Used by:719
Symbol 679 BitmapUsed by:680
Symbol 680 GraphicUses:679Used by:719
Symbol 681 BitmapUsed by:682
Symbol 682 GraphicUses:681Used by:719
Symbol 683 BitmapUsed by:684
Symbol 684 GraphicUses:683Used by:719
Symbol 685 BitmapUsed by:686
Symbol 686 GraphicUses:685Used by:719
Symbol 687 BitmapUsed by:688
Symbol 688 GraphicUses:687Used by:719
Symbol 689 BitmapUsed by:690
Symbol 690 GraphicUses:689Used by:719
Symbol 691 BitmapUsed by:692
Symbol 692 GraphicUses:691Used by:719
Symbol 693 BitmapUsed by:694
Symbol 694 GraphicUses:693Used by:719
Symbol 695 BitmapUsed by:696
Symbol 696 GraphicUses:695Used by:719
Symbol 697 BitmapUsed by:698
Symbol 698 GraphicUses:697Used by:719
Symbol 699 BitmapUsed by:700
Symbol 700 GraphicUses:699Used by:719
Symbol 701 BitmapUsed by:702
Symbol 702 GraphicUses:701Used by:719
Symbol 703 BitmapUsed by:704
Symbol 704 GraphicUses:703Used by:719
Symbol 705 BitmapUsed by:706
Symbol 706 GraphicUses:705Used by:719
Symbol 707 BitmapUsed by:708
Symbol 708 GraphicUses:707Used by:719
Symbol 709 BitmapUsed by:710
Symbol 710 GraphicUses:709Used by:719
Symbol 711 BitmapUsed by:712
Symbol 712 GraphicUses:711Used by:719
Symbol 713 BitmapUsed by:714
Symbol 714 GraphicUses:713Used by:719
Symbol 715 BitmapUsed by:716
Symbol 716 GraphicUses:715Used by:719
Symbol 717 BitmapUsed by:718
Symbol 718 GraphicUses:717Used by:719
Symbol 719 MovieClip {Farm3Africa_fla.body_152} [Farm3Africa_fla.body_152]Uses:366 368 370 372 374 376 378 380 382 384 386 388 390 392 394 396 398 400 402 404 406 408 410 412 414 416 418 420 422 424 426 428 430 432 434 436 438 440 442 444 446 448 450 452 454 456 458 460 462 464 466 468 470 472 474 476 478 480 482 484 486 488 490 492 494 496 498 500 502 504 506 508 510 512 514 516 518 520 522 524 526 528 530 532 534 536 538 540 542 544 546 548 550 552 554 556 558 560 562 564 566 568 570 572 574 576 578 580 582 584 586 588 590 592 594 596 598 600 602 604 606 608 610 612 614 616 618 620 622 624 626 628 630 632 634 636 638 640 642 644 646 648 650 652 654 656 658 660 662 664 666 668 670 672 674 676 678 680 682 684 686 688 690 692 694 696 698 700 702 704 706 708 710 712 714 716 718Used by:725
Symbol 720 MovieClipUses:37Used by:723 1236
Symbol 721 BitmapUsed by:722 1235
Symbol 722 GraphicUses:721Used by:723
Symbol 723 MovieClip {Farm3Africa_fla.hungryProgress_153} [Farm3Africa_fla.hungryProgress_153]Uses:720 722Used by:725
Symbol 724 MovieClipUses:103Used by:725
Symbol 725 MovieClip {PenguinTemplate} [PenguinTemplate]Uses:719 723 724
Symbol 726 BitmapUsed by:728
Symbol 727 BitmapUsed by:728 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759
Symbol 728 GraphicUses:726 727Used by:763
Symbol 729 EditableTextUses:29Used by:763
Symbol 730 FontUsed by:731 732 733 734 735 736 742 743
Symbol 731 EditableTextUses:730Used by:763
Symbol 732 EditableTextUses:730Used by:763
Symbol 733 EditableTextUses:730Used by:763
Symbol 734 EditableTextUses:730Used by:763
Symbol 735 EditableTextUses:730Used by:763
Symbol 736 EditableTextUses:730Used by:763
Symbol 737 BitmapUsed by:738
Symbol 738 GraphicUses:737Used by:741
Symbol 739 BitmapUsed by:740
Symbol 740 GraphicUses:739Used by:741
Symbol 741 MovieClip {Farm3Africa_fla.kubok_53} [Farm3Africa_fla.kubok_53]Uses:738 740Used by:763
Symbol 742 EditableTextUses:730Used by:763
Symbol 743 EditableTextUses:730Used by:763
Symbol 744 GraphicUses:727Used by:760
Symbol 745 GraphicUses:727Used by:760
Symbol 746 GraphicUses:727Used by:760
Symbol 747 GraphicUses:727Used by:760
Symbol 748 GraphicUses:727Used by:760
Symbol 749 GraphicUses:727Used by:760
Symbol 750 GraphicUses:727Used by:760
Symbol 751 GraphicUses:727Used by:760
Symbol 752 GraphicUses:727Used by:760
Symbol 753 GraphicUses:727Used by:760
Symbol 754 GraphicUses:727Used by:760
Symbol 755 GraphicUses:727Used by:760
Symbol 756 GraphicUses:727Used by:760
Symbol 757 GraphicUses:727Used by:760
Symbol 758 GraphicUses:727Used by:760
Symbol 759 GraphicUses:727Used by:760
Symbol 760 MovieClipUses:744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759Used by:763 823
Symbol 761 BitmapUsed by:762
Symbol 762 GraphicUses:207 761Used by:763
Symbol 763 MovieClip {ui.ResultsWindowTemplate} [ui.ResultsWindowTemplate]Uses:728 729 731 732 733 734 735 736 741 99 742 743 760 762
Symbol 764 BitmapUsed by:765
Symbol 765 GraphicUses:764Used by:823
Symbol 766 FontUsed by:767 803 1742 1782
Symbol 767 EditableTextUses:766Used by:823
Symbol 768 BitmapUsed by:769
Symbol 769 GraphicUses:768Used by:804 822
Symbol 770 BitmapUsed by:771 772 773 774 775 776
Symbol 771 GraphicUses:770Used by:777
Symbol 772 GraphicUses:770Used by:777
Symbol 773 GraphicUses:770Used by:777
Symbol 774 GraphicUses:770Used by:777
Symbol 775 GraphicUses:770Used by:777
Symbol 776 GraphicUses:770Used by:777
Symbol 777 MovieClipUses:771 772 773 774 775 776Used by:802
Symbol 778 BitmapUsed by:779 780 781 782 783 784
Symbol 779 GraphicUses:778Used by:785
Symbol 780 GraphicUses:778Used by:785
Symbol 781 GraphicUses:778Used by:785
Symbol 782 GraphicUses:778Used by:785
Symbol 783 GraphicUses:778Used by:785
Symbol 784 GraphicUses:778Used by:785
Symbol 785 MovieClipUses:779 780 781 782 783 784Used by:802
Symbol 786 BitmapUsed by:787 788 789 790 791 792
Symbol 787 GraphicUses:786Used by:793
Symbol 788 GraphicUses:786Used by:793
Symbol 789 GraphicUses:786Used by:793
Symbol 790 GraphicUses:786Used by:793
Symbol 791 GraphicUses:786Used by:793
Symbol 792 GraphicUses:786Used by:793
Symbol 793 MovieClipUses:787 788 789 790 791 792Used by:802
Symbol 794 BitmapUsed by:795 796 797 798 799 800
Symbol 795 GraphicUses:794Used by:801
Symbol 796 GraphicUses:794Used by:801
Symbol 797 GraphicUses:794Used by:801
Symbol 798 GraphicUses:794Used by:801
Symbol 799 GraphicUses:794Used by:801
Symbol 800 GraphicUses:794Used by:801
Symbol 801 MovieClipUses:795 796 797 798 799 800Used by:802
Symbol 802 MovieClip {Farm3Africa_fla.planes_57} [Farm3Africa_fla.planes_57]Uses:777 785 793 801Used by:804
Symbol 803 EditableTextUses:766Used by:804 822
Symbol 804 MovieClip {Farm3Africa_fla.planeInTheSky_56} [Farm3Africa_fla.planeInTheSky_56]Uses:769 802 803Used by:823
Symbol 805 BitmapUsed by:806 807
Symbol 806 GraphicUses:805Used by:808
Symbol 807 GraphicUses:805Used by:808
Symbol 808 MovieClipUses:806 807Used by:821
Symbol 809 BitmapUsed by:810 811
Symbol 810 GraphicUses:809Used by:812
Symbol 811 GraphicUses:809Used by:812
Symbol 812 MovieClipUses:810 811Used by:821
Symbol 813 BitmapUsed by:814 815
Symbol 814 GraphicUses:813Used by:816
Symbol 815 GraphicUses:813Used by:816
Symbol 816 MovieClipUses:814 815Used by:821
Symbol 817 BitmapUsed by:818 819
Symbol 818 GraphicUses:817Used by:820
Symbol 819 GraphicUses:817Used by:820
Symbol 820 MovieClipUses:818 819Used by:821
Symbol 821 MovieClip {Farm3Africa_fla.cars_63} [Farm3Africa_fla.cars_63]Uses:808 812 816 820Used by:822
Symbol 822 MovieClip {Farm3Africa_fla.carOnTheRoad_62} [Farm3Africa_fla.carOnTheRoad_62]Uses:769 821 803Used by:823
Symbol 823 MovieClip {market.road.RoadTemlate} [market.road.RoadTemlate]Uses:765 760 767 804 822
Symbol 824 BitmapUsed by:826
Symbol 825 BitmapUsed by:826
Symbol 826 GraphicUses:824 825Used by:828
Symbol 827 EditableTextUses:127Used by:828
Symbol 828 MovieClip {WaterTooltipTemplate} [WaterTooltipTemplate]Uses:826 827
Symbol 829 BitmapUsed by:832
Symbol 830 BitmapUsed by:832
Symbol 831 BitmapUsed by:832
Symbol 832 GraphicUses:831 830 829Used by:860
Symbol 833 FontUsed by:834 835 836 838 839 840 841 842 858 1283 1351 1783
Symbol 834 EditableTextUses:833Used by:860
Symbol 835 EditableTextUses:833Used by:860
Symbol 836 EditableTextUses:833Used by:860
Symbol 837 GraphicUses:207Used by:860
Symbol 838 EditableTextUses:833Used by:860
Symbol 839 EditableTextUses:833Used by:860
Symbol 840 EditableTextUses:833Used by:860
Symbol 841 EditableTextUses:833Used by:860
Symbol 842 EditableTextUses:833Used by:857
Symbol 843 GraphicUses:135Used by:856
Symbol 844 GraphicUses:139Used by:856
Symbol 845 GraphicUses:146Used by:856
Symbol 846 BitmapUsed by:847
Symbol 847 GraphicUses:846Used by:856
Symbol 848 BitmapUsed by:849 1267 1350 1707 1743 1772 1787
Symbol 849 GraphicUses:848Used by:856
Symbol 850 BitmapUsed by:851
Symbol 851 GraphicUses:850Used by:856
Symbol 852 BitmapUsed by:853
Symbol 853 GraphicUses:852Used by:856
Symbol 854 GraphicUses:143Used by:856
Symbol 855 GraphicUses:145Used by:856
Symbol 856 MovieClip {Farm3Africa_fla.productionbody_24} [Farm3Africa_fla.productionbody_24]Uses:843 844 845 847 849 851 853 854 855 138Used by:857 1286 1447
Symbol 857 MovieClip {Farm3Africa_fla.goalItem_49} [Farm3Africa_fla.goalItem_49]Uses:842 856Used by:860
Symbol 858 EditableTextUses:833Used by:860
Symbol 859 GraphicUses:207Used by:860
Symbol 860 MovieClip {ui.GoalsTemplate} [ui.GoalsTemplate]Uses:832 834 835 836 837 838 839 840 841 99 857 858 859
Symbol 861 GraphicUsed by:864 867
Symbol 862 BitmapUsed by:863
Symbol 863 GraphicUses:862Used by:864
Symbol 864 MovieClip {Farm3Africa_fla.pigIcon_mc_141} [Farm3Africa_fla.pigIcon_mc_141]Uses:861 863Used by:873
Symbol 865 BitmapUsed by:866
Symbol 866 GraphicUses:865Used by:867
Symbol 867 MovieClip {Farm3Africa_fla.chickenIcon_mc_142} [Farm3Africa_fla.chickenIcon_mc_142]Uses:861 866Used by:873
Symbol 868 FontUsed by:869 870
Symbol 869 TextUses:868Used by:873
Symbol 870 TextUses:868Used by:873
Symbol 871 BitmapUsed by:872
Symbol 872 GraphicUses:871Used by:873
Symbol 873 MovieClip {ui.PetShopTemplate} [ui.PetShopTemplate]Uses:864 867 869 870 872
Symbol 874 BitmapUsed by:875
Symbol 875 GraphicUses:874Used by:1234
Symbol 876 BitmapUsed by:877
Symbol 877 GraphicUses:876Used by:1234
Symbol 878 BitmapUsed by:879
Symbol 879 GraphicUses:878Used by:1234
Symbol 880 BitmapUsed by:881
Symbol 881 GraphicUses:880Used by:1234
Symbol 882 BitmapUsed by:883
Symbol 883 GraphicUses:882Used by:1234
Symbol 884 BitmapUsed by:885
Symbol 885 GraphicUses:884Used by:1234
Symbol 886 BitmapUsed by:887
Symbol 887 GraphicUses:886Used by:1234
Symbol 888 BitmapUsed by:889
Symbol 889 GraphicUses:888Used by:1234
Symbol 890 BitmapUsed by:891
Symbol 891 GraphicUses:890Used by:1234
Symbol 892 BitmapUsed by:893
Symbol 893 GraphicUses:892Used by:1234
Symbol 894 BitmapUsed by:895
Symbol 895 GraphicUses:894Used by:1234
Symbol 896 BitmapUsed by:897
Symbol 897 GraphicUses:896Used by:1234
Symbol 898 BitmapUsed by:899
Symbol 899 GraphicUses:898Used by:1234
Symbol 900 BitmapUsed by:901
Symbol 901 GraphicUses:900Used by:1234
Symbol 902 BitmapUsed by:903
Symbol 903 GraphicUses:902Used by:1234
Symbol 904 BitmapUsed by:905
Symbol 905 GraphicUses:904Used by:1234
Symbol 906 BitmapUsed by:907
Symbol 907 GraphicUses:906Used by:1234
Symbol 908 BitmapUsed by:909
Symbol 909 GraphicUses:908Used by:1234
Symbol 910 BitmapUsed by:911
Symbol 911 GraphicUses:910Used by:1234
Symbol 912 BitmapUsed by:913
Symbol 913 GraphicUses:912Used by:1234
Symbol 914 BitmapUsed by:915
Symbol 915 GraphicUses:914Used by:1234
Symbol 916 BitmapUsed by:917
Symbol 917 GraphicUses:916Used by:1234
Symbol 918 BitmapUsed by:919
Symbol 919 GraphicUses:918Used by:1234
Symbol 920 BitmapUsed by:921
Symbol 921 GraphicUses:920Used by:1234
Symbol 922 BitmapUsed by:923
Symbol 923 GraphicUses:922Used by:1234
Symbol 924 BitmapUsed by:925
Symbol 925 GraphicUses:924Used by:1234
Symbol 926 BitmapUsed by:927
Symbol 927 GraphicUses:926Used by:1234
Symbol 928 BitmapUsed by:929
Symbol 929 GraphicUses:928Used by:1234
Symbol 930 BitmapUsed by:931
Symbol 931 GraphicUses:930Used by:1234
Symbol 932 BitmapUsed by:933
Symbol 933 GraphicUses:932Used by:1234
Symbol 934 BitmapUsed by:935
Symbol 935 GraphicUses:934Used by:1234
Symbol 936 BitmapUsed by:937
Symbol 937 GraphicUses:936Used by:1234
Symbol 938 BitmapUsed by:939
Symbol 939 GraphicUses:938Used by:1234
Symbol 940 BitmapUsed by:941
Symbol 941 GraphicUses:940Used by:1234
Symbol 942 BitmapUsed by:943
Symbol 943 GraphicUses:942Used by:1234
Symbol 944 BitmapUsed by:945
Symbol 945 GraphicUses:944Used by:1234
Symbol 946 BitmapUsed by:947
Symbol 947 GraphicUses:946Used by:1234
Symbol 948 BitmapUsed by:949
Symbol 949 GraphicUses:948Used by:1234
Symbol 950 BitmapUsed by:951
Symbol 951 GraphicUses:950Used by:1234
Symbol 952 BitmapUsed by:953
Symbol 953 GraphicUses:952Used by:1234
Symbol 954 BitmapUsed by:955
Symbol 955 GraphicUses:954Used by:1234
Symbol 956 BitmapUsed by:957
Symbol 957 GraphicUses:956Used by:1234
Symbol 958 BitmapUsed by:959
Symbol 959 GraphicUses:958Used by:1234
Symbol 960 BitmapUsed by:961
Symbol 961 GraphicUses:960Used by:1234
Symbol 962 BitmapUsed by:963
Symbol 963 GraphicUses:962Used by:1234
Symbol 964 BitmapUsed by:965
Symbol 965 GraphicUses:964Used by:1234
Symbol 966 BitmapUsed by:967
Symbol 967 GraphicUses:966Used by:1234
Symbol 968 BitmapUsed by:969
Symbol 969 GraphicUses:968Used by:1234
Symbol 970 BitmapUsed by:971
Symbol 971 GraphicUses:970Used by:1234
Symbol 972 BitmapUsed by:973
Symbol 973 GraphicUses:972Used by:1234
Symbol 974 BitmapUsed by:975
Symbol 975 GraphicUses:974Used by:1234
Symbol 976 BitmapUsed by:977
Symbol 977 GraphicUses:976Used by:1234
Symbol 978 BitmapUsed by:979
Symbol 979 GraphicUses:978Used by:1234
Symbol 980 BitmapUsed by:981
Symbol 981 GraphicUses:980Used by:1234
Symbol 982 BitmapUsed by:983
Symbol 983 GraphicUses:982Used by:1234
Symbol 984 BitmapUsed by:985
Symbol 985 GraphicUses:984Used by:1234
Symbol 986 BitmapUsed by:987
Symbol 987 GraphicUses:986Used by:1234
Symbol 988 BitmapUsed by:989
Symbol 989 GraphicUses:988Used by:1234
Symbol 990 BitmapUsed by:991
Symbol 991 GraphicUses:990Used by:1234
Symbol 992 BitmapUsed by:993
Symbol 993 GraphicUses:992Used by:1234
Symbol 994 BitmapUsed by:995
Symbol 995 GraphicUses:994Used by:1234
Symbol 996 BitmapUsed by:997
Symbol 997 GraphicUses:996Used by:1234
Symbol 998 BitmapUsed by:999
Symbol 999 GraphicUses:998Used by:1234
Symbol 1000 BitmapUsed by:1001
Symbol 1001 GraphicUses:1000Used by:1234
Symbol 1002 BitmapUsed by:1003
Symbol 1003 GraphicUses:1002Used by:1234
Symbol 1004 BitmapUsed by:1005
Symbol 1005 GraphicUses:1004Used by:1234
Symbol 1006 BitmapUsed by:1007
Symbol 1007 GraphicUses:1006Used by:1234
Symbol 1008 BitmapUsed by:1009
Symbol 1009 GraphicUses:1008Used by:1234
Symbol 1010 BitmapUsed by:1011
Symbol 1011 GraphicUses:1010Used by:1234
Symbol 1012 BitmapUsed by:1013
Symbol 1013 GraphicUses:1012Used by:1234
Symbol 1014 BitmapUsed by:1015
Symbol 1015 GraphicUses:1014Used by:1234
Symbol 1016 BitmapUsed by:1017
Symbol 1017 GraphicUses:1016Used by:1234
Symbol 1018 BitmapUsed by:1019
Symbol 1019 GraphicUses:1018Used by:1234
Symbol 1020 BitmapUsed by:1021
Symbol 1021 GraphicUses:1020Used by:1234
Symbol 1022 BitmapUsed by:1023
Symbol 1023 GraphicUses:1022Used by:1234
Symbol 1024 BitmapUsed by:1025
Symbol 1025 GraphicUses:1024Used by:1234
Symbol 1026 BitmapUsed by:1027
Symbol 1027 GraphicUses:1026Used by:1234
Symbol 1028 BitmapUsed by:1029
Symbol 1029 GraphicUses:1028Used by:1234
Symbol 1030 BitmapUsed by:1031
Symbol 1031 GraphicUses:1030Used by:1234
Symbol 1032 BitmapUsed by:1033
Symbol 1033 GraphicUses:1032Used by:1234
Symbol 1034 BitmapUsed by:1035
Symbol 1035 GraphicUses:1034Used by:1234
Symbol 1036 BitmapUsed by:1037
Symbol 1037 GraphicUses:1036Used by:1234
Symbol 1038 BitmapUsed by:1039
Symbol 1039 GraphicUses:1038Used by:1234
Symbol 1040 BitmapUsed by:1041
Symbol 1041 GraphicUses:1040Used by:1234
Symbol 1042 BitmapUsed by:1043
Symbol 1043 GraphicUses:1042Used by:1234
Symbol 1044 BitmapUsed by:1045
Symbol 1045 GraphicUses:1044Used by:1234
Symbol 1046 BitmapUsed by:1047
Symbol 1047 GraphicUses:1046Used by:1234
Symbol 1048 BitmapUsed by:1049
Symbol 1049 GraphicUses:1048Used by:1234
Symbol 1050 BitmapUsed by:1051
Symbol 1051 GraphicUses:1050Used by:1234
Symbol 1052 BitmapUsed by:1053
Symbol 1053 GraphicUses:1052Used by:1234
Symbol 1054 BitmapUsed by:1055
Symbol 1055 GraphicUses:1054Used by:1234
Symbol 1056 BitmapUsed by:1057
Symbol 1057 GraphicUses:1056Used by:1234
Symbol 1058 BitmapUsed by:1059
Symbol 1059 GraphicUses:1058Used by:1234
Symbol 1060 BitmapUsed by:1061
Symbol 1061 GraphicUses:1060Used by:1234
Symbol 1062 BitmapUsed by:1063
Symbol 1063 GraphicUses:1062Used by:1234
Symbol 1064 BitmapUsed by:1065
Symbol 1065 GraphicUses:1064Used by:1234
Symbol 1066 BitmapUsed by:1067
Symbol 1067 GraphicUses:1066Used by:1234
Symbol 1068 BitmapUsed by:1069
Symbol 1069 GraphicUses:1068Used by:1234
Symbol 1070 BitmapUsed by:1071
Symbol 1071 GraphicUses:1070Used by:1234
Symbol 1072 BitmapUsed by:1073
Symbol 1073 GraphicUses:1072Used by:1234
Symbol 1074 BitmapUsed by:1075
Symbol 1075 GraphicUses:1074Used by:1234
Symbol 1076 BitmapUsed by:1077
Symbol 1077 GraphicUses:1076Used by:1234
Symbol 1078 BitmapUsed by:1079
Symbol 1079 GraphicUses:1078Used by:1234
Symbol 1080 BitmapUsed by:1081
Symbol 1081 GraphicUses:1080Used by:1234
Symbol 1082 BitmapUsed by:1083
Symbol 1083 GraphicUses:1082Used by:1234
Symbol 1084 BitmapUsed by:1085
Symbol 1085 GraphicUses:1084Used by:1234
Symbol 1086 BitmapUsed by:1087
Symbol 1087 GraphicUses:1086Used by:1234
Symbol 1088 BitmapUsed by:1089
Symbol 1089 GraphicUses:1088Used by:1234
Symbol 1090 BitmapUsed by:1091
Symbol 1091 GraphicUses:1090Used by:1234
Symbol 1092 BitmapUsed by:1093
Symbol 1093 GraphicUses:1092Used by:1234
Symbol 1094 BitmapUsed by:1095
Symbol 1095 GraphicUses:1094Used by:1234
Symbol 1096 BitmapUsed by:1097
Symbol 1097 GraphicUses:1096Used by:1234
Symbol 1098 BitmapUsed by:1099
Symbol 1099 GraphicUses:1098Used by:1234
Symbol 1100 BitmapUsed by:1101
Symbol 1101 GraphicUses:1100Used by:1234
Symbol 1102 BitmapUsed by:1103
Symbol 1103 GraphicUses:1102Used by:1234
Symbol 1104 BitmapUsed by:1105
Symbol 1105 GraphicUses:1104Used by:1234
Symbol 1106 BitmapUsed by:1107
Symbol 1107 GraphicUses:1106Used by:1234
Symbol 1108 BitmapUsed by:1109
Symbol 1109 GraphicUses:1108Used by:1234
Symbol 1110 BitmapUsed by:1111
Symbol 1111 GraphicUses:1110Used by:1234
Symbol 1112 BitmapUsed by:1113
Symbol 1113 GraphicUses:1112Used by:1234
Symbol 1114 BitmapUsed by:1115
Symbol 1115 GraphicUses:1114Used by:1234
Symbol 1116 BitmapUsed by:1117
Symbol 1117 GraphicUses:1116Used by:1234
Symbol 1118 BitmapUsed by:1119
Symbol 1119 GraphicUses:1118Used by:1234
Symbol 1120 BitmapUsed by:1121
Symbol 1121 GraphicUses:1120Used by:1234
Symbol 1122 BitmapUsed by:1123
Symbol 1123 GraphicUses:1122Used by:1234
Symbol 1124 BitmapUsed by:1125
Symbol 1125 GraphicUses:1124Used by:1234
Symbol 1126 BitmapUsed by:1127
Symbol 1127 GraphicUses:1126Used by:1234
Symbol 1128 BitmapUsed by:1129
Symbol 1129 GraphicUses:1128Used by:1234
Symbol 1130 BitmapUsed by:1131
Symbol 1131 GraphicUses:1130Used by:1234
Symbol 1132 BitmapUsed by:1133
Symbol 1133 GraphicUses:1132Used by:1234
Symbol 1134 BitmapUsed by:1135
Symbol 1135 GraphicUses:1134Used by:1234
Symbol 1136 BitmapUsed by:1137
Symbol 1137 GraphicUses:1136Used by:1234
Symbol 1138 BitmapUsed by:1139
Symbol 1139 GraphicUses:1138Used by:1234
Symbol 1140 BitmapUsed by:1141
Symbol 1141 GraphicUses:1140Used by:1234
Symbol 1142 BitmapUsed by:1143
Symbol 1143 GraphicUses:1142Used by:1234
Symbol 1144 BitmapUsed by:1145
Symbol 1145 GraphicUses:1144Used by:1234
Symbol 1146 BitmapUsed by:1147
Symbol 1147 GraphicUses:1146Used by:1234
Symbol 1148 BitmapUsed by:1149
Symbol 1149 GraphicUses:1148Used by:1234
Symbol 1150 BitmapUsed by:1151
Symbol 1151 GraphicUses:1150Used by:1234
Symbol 1152 BitmapUsed by:1153
Symbol 1153 GraphicUses:1152Used by:1234
Symbol 1154 BitmapUsed by:1155
Symbol 1155 GraphicUses:1154Used by:1234
Symbol 1156 BitmapUsed by:1157
Symbol 1157 GraphicUses:1156Used by:1234
Symbol 1158 BitmapUsed by:1159
Symbol 1159 GraphicUses:1158Used by:1234
Symbol 1160 BitmapUsed by:1161
Symbol 1161 GraphicUses:1160Used by:1234
Symbol 1162 BitmapUsed by:1163
Symbol 1163 GraphicUses:1162Used by:1234
Symbol 1164 BitmapUsed by:1165
Symbol 1165 GraphicUses:1164Used by:1234
Symbol 1166 BitmapUsed by:1167
Symbol 1167 GraphicUses:1166Used by:1234
Symbol 1168 BitmapUsed by:1169
Symbol 1169 GraphicUses:1168Used by:1234
Symbol 1170 BitmapUsed by:1171
Symbol 1171 GraphicUses:1170Used by:1234
Symbol 1172 BitmapUsed by:1173
Symbol 1173 GraphicUses:1172Used by:1234
Symbol 1174 BitmapUsed by:1175
Symbol 1175 GraphicUses:1174Used by:1234
Symbol 1176 BitmapUsed by:1177
Symbol 1177 GraphicUses:1176Used by:1234
Symbol 1178 BitmapUsed by:1179
Symbol 1179 GraphicUses:1178Used by:1234
Symbol 1180 BitmapUsed by:1181
Symbol 1181 GraphicUses:1180Used by:1234
Symbol 1182 BitmapUsed by:1183
Symbol 1183 GraphicUses:1182Used by:1234
Symbol 1184 BitmapUsed by:1185
Symbol 1185 GraphicUses:1184Used by:1234
Symbol 1186 BitmapUsed by:1187
Symbol 1187 GraphicUses:1186Used by:1234
Symbol 1188 BitmapUsed by:1189
Symbol 1189 GraphicUses:1188Used by:1234
Symbol 1190 BitmapUsed by:1191
Symbol 1191 GraphicUses:1190Used by:1234
Symbol 1192 BitmapUsed by:1193
Symbol 1193 GraphicUses:1192Used by:1234
Symbol 1194 BitmapUsed by:1195
Symbol 1195 GraphicUses:1194Used by:1234
Symbol 1196 BitmapUsed by:1197
Symbol 1197 GraphicUses:1196Used by:1234
Symbol 1198 BitmapUsed by:1199
Symbol 1199 GraphicUses:1198Used by:1234
Symbol 1200 BitmapUsed by:1201
Symbol 1201 GraphicUses:1200Used by:1234
Symbol 1202 BitmapUsed by:1203
Symbol 1203 GraphicUses:1202Used by:1234
Symbol 1204 BitmapUsed by:1205
Symbol 1205 GraphicUses:1204Used by:1234
Symbol 1206 BitmapUsed by:1207
Symbol 1207 GraphicUses:1206Used by:1234
Symbol 1208 BitmapUsed by:1209
Symbol 1209 GraphicUses:1208Used by:1234
Symbol 1210 BitmapUsed by:1211
Symbol 1211 GraphicUses:1210Used by:1234
Symbol 1212 BitmapUsed by:1213
Symbol 1213 GraphicUses:1212Used by:1234
Symbol 1214 BitmapUsed by:1215
Symbol 1215 GraphicUses:1214Used by:1234
Symbol 1216 BitmapUsed by:1217
Symbol 1217 GraphicUses:1216Used by:1234
Symbol 1218 BitmapUsed by:1219
Symbol 1219 GraphicUses:1218Used by:1234
Symbol 1220 BitmapUsed by:1221
Symbol 1221 GraphicUses:1220Used by:1234
Symbol 1222 BitmapUsed by:1223
Symbol 1223 GraphicUses:1222Used by:1234
Symbol 1224 BitmapUsed by:1225
Symbol 1225 GraphicUses:1224Used by:1234
Symbol 1226 BitmapUsed by:1227
Symbol 1227 GraphicUses:1226Used by:1234
Symbol 1228 BitmapUsed by:1229
Symbol 1229 GraphicUses:1228Used by:1234
Symbol 1230 BitmapUsed by:1231
Symbol 1231 GraphicUses:1230Used by:1234
Symbol 1232 BitmapUsed by:1233
Symbol 1233 GraphicUses:1232Used by:1234
Symbol 1234 MovieClip {Farm3Africa_fla.SnaresPenguinBody_148} [Farm3Africa_fla.SnaresPenguinBody_148]Uses:875 877 879 881 883 885 887 889 891 893 895 897 899 901 903 905 907 909 911 913 915 917 919 921 923 925 927 929 931 933 935 937 939 941 943 945 947 949 951 953 955 957 959 961 963 965 967 969 971 973 975 977 979 981 983 985 987 989 991 993 995 997 999 1001 1003 1005 1007 1009 1011 1013 1015 1017 1019 1021 1023 1025 1027 1029 1031 1033 1035 1037 1039 1041 1043 1045 1047 1049 1051 1053 1055 1057 1059 1061 1063 1065 1067 1069 1071 1073 1075 1077 1079 1081 1083 1085 1087 1089 1091 1093 1095 1097 1099 1101 1103 1105 1107 1109 1111 1113 1115 1117 1119 1121 1123 1125 1127 1129 1131 1133 1135 1137 1139 1141 1143 1145 1147 1149 1151 1153 1155 1157 1159 1161 1163 1165 1167 1169 1171 1173 1175 1177 1179 1181 1183 1185 1187 1189 1191 1193 1195 1197 1199 1201 1203 1205 1207 1209 1211 1213 1215 1217 1219 1221 1223 1225 1227 1229 1231 1233Used by:1237
Symbol 1235 GraphicUses:721Used by:1236
Symbol 1236 MovieClip {Farm3Africa_fla.hungryProgress_149} [Farm3Africa_fla.hungryProgress_149]Uses:720 1235Used by:1237
Symbol 1237 MovieClip {KingPenguinTemplate} [KingPenguinTemplate]Uses:1234 1236
Symbol 1238 BitmapUsed by:1239
Symbol 1239 GraphicUses:1238Used by:1280
Symbol 1240 BitmapUsed by:1241 1242 1243
Symbol 1241 GraphicUses:1240Used by:1244
Symbol 1242 GraphicUses:1240Used by:1244
Symbol 1243 GraphicUses:1240Used by:1244
Symbol 1244 MovieClip {Farm3Africa_fla.aim_btn_5} [Farm3Africa_fla.aim_btn_5]Uses:1241 1242 1243Used by:1280
Symbol 1245 BitmapUsed by:1246
Symbol 1246 GraphicUses:1245Used by:1251
Symbol 1247 FontUsed by:1248 1252 1343
Symbol 1248 EditableTextUses:1247Used by:1251
Symbol 1249 BitmapUsed by:1250
Symbol 1250 GraphicUses:1249Used by:1251
Symbol 1251 MovieClip {Farm3Africa_fla.purposesRibbon_6} [Farm3Africa_fla.purposesRibbon_6]Uses:1246 1248 1250Used by:1280
Symbol 1252 EditableTextUses:1247Used by:1280
Symbol 1253 BitmapUsed by:1254
Symbol 1254 GraphicUses:1253Used by:1280
Symbol 1255 FontUsed by:1256
Symbol 1256 EditableTextUses:1255Used by:1279
Symbol 1257 FontUsed by:1258
Symbol 1258 EditableTextUses:1257Used by:1279
Symbol 1259 BitmapUsed by:1260
Symbol 1260 GraphicUses:1259Used by:1278
Symbol 1261 BitmapUsed by:1262
Symbol 1262 GraphicUses:1261Used by:1278
Symbol 1263 BitmapUsed by:1264
Symbol 1264 GraphicUses:1263Used by:1278
Symbol 1265 BitmapUsed by:1266
Symbol 1266 GraphicUses:1265Used by:1278
Symbol 1267 GraphicUses:848Used by:1278
Symbol 1268 BitmapUsed by:1269
Symbol 1269 GraphicUses:1268Used by:1278
Symbol 1270 BitmapUsed by:1271
Symbol 1271 GraphicUses:1270Used by:1278
Symbol 1272 BitmapUsed by:1273
Symbol 1273 GraphicUses:1272Used by:1278
Symbol 1274 BitmapUsed by:1275
Symbol 1275 GraphicUses:1274Used by:1278
Symbol 1276 BitmapUsed by:1277
Symbol 1277 GraphicUses:1276Used by:1278
Symbol 1278 MovieClip {Farm3Africa_fla.productionbody_20_10} [Farm3Africa_fla.productionbody_20_10]Uses:1260 1262 1264 1266 1267 1269 1271 1273 1275 1277Used by:1279 1713 1719 1790
Symbol 1279 MovieClip {Farm3Africa_fla.purposesItem_8} [Farm3Africa_fla.purposesItem_8]Uses:1256 1258 228 1278Used by:1280
Symbol 1280 MovieClip {ui.BottomPanelTemplate} [ui.BottomPanelTemplate]Uses:1239 1244 1251 1252 1254 34 1279
Symbol 1281 BitmapUsed by:1282
Symbol 1282 GraphicUses:1281Used by:1287
Symbol 1283 EditableTextUses:833Used by:1287
Symbol 1284 EditableTextUses:169Used by:1286
Symbol 1285 EditableTextUses:169Used by:1286
Symbol 1286 MovieClip {Farm3Africa_fla.purposesItem_51} [Farm3Africa_fla.purposesItem_51]Uses:1284 1285 856 228Used by:1287
Symbol 1287 MovieClip {ui.PurposesWindowTemplate} [ui.PurposesWindowTemplate]Uses:1282 1283 99 1286
Symbol 1288 BitmapUsed by:1289 1290 1291
Symbol 1289 GraphicUses:1288Used by:1292
Symbol 1290 GraphicUses:1288Used by:1292
Symbol 1291 GraphicUses:1288Used by:1292
Symbol 1292 MovieClip {Farm3Africa_fla.gold_113} [Farm3Africa_fla.gold_113]Uses:1289 1290 1291Used by:1313
Symbol 1293 BitmapUsed by:1294 1295 1296
Symbol 1294 GraphicUses:1293Used by:1297
Symbol 1295 GraphicUses:1293Used by:1297
Symbol 1296 GraphicUses:1293Used by:1297
Symbol 1297 MovieClip {Farm3Africa_fla.new_114} [Farm3Africa_fla.new_114]Uses:1294 1295 1296Used by:1313
Symbol 1298 BitmapUsed by:1299 1300 1301
Symbol 1299 GraphicUses:1298Used by:1302
Symbol 1300 GraphicUses:1298Used by:1302
Symbol 1301 GraphicUses:1298Used by:1302
Symbol 1302 MovieClip {Farm3Africa_fla.none_115} [Farm3Africa_fla.none_115]Uses:1299 1300 1301Used by:1313
Symbol 1303 BitmapUsed by:1304 1305 1306
Symbol 1304 GraphicUses:1303Used by:1307
Symbol 1305 GraphicUses:1303Used by:1307
Symbol 1306 GraphicUses:1303Used by:1307
Symbol 1307 MovieClip {Farm3Africa_fla.normal_116} [Farm3Africa_fla.normal_116]Uses:1304 1305 1306Used by:1313
Symbol 1308 BitmapUsed by:1309 1310 1311
Symbol 1309 GraphicUses:1308Used by:1312
Symbol 1310 GraphicUses:1308Used by:1312
Symbol 1311 GraphicUses:1308Used by:1312
Symbol 1312 MovieClip {Farm3Africa_fla.silver_117} [Farm3Africa_fla.silver_117]Uses:1309 1310 1311Used by:1313
Symbol 1313 MovieClip {MapNodeTemplate} [MapNodeTemplate]Uses:1292 1297 1302 1307 1312
Symbol 1314 MovieClip {com.kongregate.as3.client.KongregateAPI} [com.kongregate.as3.client.KongregateAPI]
Symbol 1315 BitmapUsed by:1316
Symbol 1316 GraphicUses:1315Used by:1318
Symbol 1317 EditableTextUses:29Used by:1318
Symbol 1318 MovieClip {SimpleTooltipTemplate} [SimpleTooltipTemplate]Uses:180 1316 1317 34
Symbol 1319 BitmapUsed by:1320
Symbol 1320 GraphicUses:1319Used by:1326
Symbol 1321 EditableTextUses:29Used by:1326
Symbol 1322 EditableTextUses:29Used by:1326
Symbol 1323 EditableTextUses:29Used by:1326
Symbol 1324 MovieClipUsed by:1325
Symbol 1325 MovieClip {Farm3Africa_fla.photo_132} [Farm3Africa_fla.photo_132]Uses:37 1324Used by:1326
Symbol 1326 MovieClip {LeaderboardItemTemplate} [LeaderboardItemTemplate]Uses:1320 1321 1322 1323 1325
Symbol 1327 GraphicUsed by:1330
Symbol 1328 BitmapUsed by:1329
Symbol 1329 GraphicUses:1328Used by:1330
Symbol 1330 MovieClip {Farm3Africa_fla.bodyGrass_84} [Farm3Africa_fla.bodyGrass_84]Uses:1327 1329Used by:1331
Symbol 1331 MovieClip {game.assets.GrassTemplate} [game.assets.GrassTemplate]Uses:1330
Symbol 1332 BitmapUsed by:1333
Symbol 1333 GraphicUses:1332Used by:1352
Symbol 1334 BitmapUsed by:1335
Symbol 1335 GraphicUses:1334Used by:1342
Symbol 1336 BitmapUsed by:1337
Symbol 1337 GraphicUses:1336Used by:1342
Symbol 1338 BitmapUsed by:1339
Symbol 1339 GraphicUses:1338Used by:1342
Symbol 1340 BitmapUsed by:1341
Symbol 1341 GraphicUses:1340Used by:1342
Symbol 1342 MovieClip {Farm3Africa_fla.plane_77} [Farm3Africa_fla.plane_77]Uses:1335 1337 1339 1341Used by:1352
Symbol 1343 EditableTextUses:1247Used by:1352
Symbol 1344 BitmapUsed by:1345 1346 1347 1348
Symbol 1345 GraphicUses:1344Used by:1349
Symbol 1346 GraphicUses:1344Used by:1349
Symbol 1347 GraphicUses:1344Used by:1349
Symbol 1348 GraphicUses:1344Used by:1349
Symbol 1349 MovieClip {Farm3Africa_fla.boxlineExpor_78} [Farm3Africa_fla.boxlineExpor_78]Uses:1345 1346 1347 1348Used by:1352
Symbol 1350 GraphicUses:848Used by:1352
Symbol 1351 EditableTextUses:833Used by:1352
Symbol 1352 MovieClip {market.ImportWindowTemplate} [market.ImportWindowTemplate]Uses:1333 1342 99 1343 1349 1350 1351
Symbol 1353 BitmapUsed by:1354
Symbol 1354 GraphicUses:1353Used by:1361
Symbol 1355 BitmapUsed by:1356
Symbol 1356 GraphicUses:1355Used by:1361
Symbol 1357 BitmapUsed by:1358
Symbol 1358 GraphicUses:1357Used by:1361
Symbol 1359 BitmapUsed by:1360
Symbol 1360 GraphicUses:1359Used by:1361
Symbol 1361 MovieClip {Farm3Africa_fla.plane_body_27} [Farm3Africa_fla.plane_body_27]Uses:1354 1356 1358 1360Used by:1364
Symbol 1362 GraphicUsed by:1363
Symbol 1363 MovieClipUses:1362Used by:1364 1386 1408 1420 1443
Symbol 1364 MovieClip {vehicles.PlaneTemplate} [vehicles.PlaneTemplate]Uses:1361 1363
Symbol 1365 BitmapUsed by:1366
Symbol 1366 GraphicUses:1365Used by:1373
Symbol 1367 BitmapUsed by:1368
Symbol 1368 GraphicUses:1367Used by:1373
Symbol 1369 BitmapUsed by:1370
Symbol 1370 GraphicUses:1369Used by:1373
Symbol 1371 BitmapUsed by:1372
Symbol 1372 GraphicUses:1371Used by:1373
Symbol 1373 MovieClip {Farm3Africa_fla.body_46} [Farm3Africa_fla.body_46]Uses:1366 1368 1370 1372Used by:1374
Symbol 1374 MovieClip {vehicles.CarTemplate} [vehicles.CarTemplate]Uses:1373
Symbol 1375 BitmapUsed by:1376
Symbol 1376 GraphicUses:1375Used by:1385
Symbol 1377 BitmapUsed by:1378
Symbol 1378 GraphicUses:1377Used by:1385
Symbol 1379 BitmapUsed by:1380
Symbol 1380 GraphicUses:1379Used by:1385
Symbol 1381 BitmapUsed by:1382
Symbol 1382 GraphicUses:1381Used by:1385
Symbol 1383 BitmapUsed by:1384
Symbol 1384 GraphicUses:1383Used by:1385
Symbol 1385 MovieClip {Farm3Africa_fla.cake_body_34} [Farm3Africa_fla.cake_body_34]Uses:1376 1378 1380 1382 1384Used by:1386
Symbol 1386 MovieClip {CakeHouseTemplate} [CakeHouseTemplate]Uses:1385 1363
Symbol 1387 BitmapUsed by:1388
Symbol 1388 GraphicUses:1387Used by:1395
Symbol 1389 BitmapUsed by:1390
Symbol 1390 GraphicUses:1389Used by:1395
Symbol 1391 BitmapUsed by:1392
Symbol 1392 GraphicUses:1391Used by:1395
Symbol 1393 BitmapUsed by:1394
Symbol 1394 GraphicUses:1393Used by:1395
Symbol 1395 MovieClip {Farm3Africa_fla.sklads_38} [Farm3Africa_fla.sklads_38]Uses:1388 1390 1392 1394Used by:1396
Symbol 1396 MovieClip {houses.DepotTemplate} [houses.DepotTemplate]Uses:1395
Symbol 1397 BitmapUsed by:1398
Symbol 1398 GraphicUses:1397Used by:1407
Symbol 1399 BitmapUsed by:1400
Symbol 1400 GraphicUses:1399Used by:1407
Symbol 1401 BitmapUsed by:1402
Symbol 1402 GraphicUses:1401Used by:1407
Symbol 1403 BitmapUsed by:1404
Symbol 1404 GraphicUses:1403Used by:1407
Symbol 1405 BitmapUsed by:1406
Symbol 1406 GraphicUses:1405Used by:1407
Symbol 1407 MovieClip {Farm3Africa_fla.DriedEggs_body_36} [Farm3Africa_fla.DriedEggs_body_36]Uses:1398 1400 1402 1404 1406Used by:1408
Symbol 1408 MovieClip {PowderedHouseTemplate} [PowderedHouseTemplate]Uses:1407 1363
Symbol 1409 BitmapUsed by:1410
Symbol 1410 GraphicUses:1409Used by:1419
Symbol 1411 BitmapUsed by:1412
Symbol 1412 GraphicUses:1411Used by:1419
Symbol 1413 BitmapUsed by:1414
Symbol 1414 GraphicUses:1413Used by:1419
Symbol 1415 BitmapUsed by:1416
Symbol 1416 GraphicUses:1415Used by:1419
Symbol 1417 BitmapUsed by:1418
Symbol 1418 GraphicUses:1417Used by:1419
Symbol 1419 MovieClip {Farm3Africa_fla.FlouryCake_body_32} [Farm3Africa_fla.FlouryCake_body_32]Uses:1410 1412 1414 1416 1418Used by:1420
Symbol 1420 MovieClip {FlouryCakeHouseTemplate} [FlouryCakeHouseTemplate]Uses:1419 1363
Symbol 1421 BitmapUsed by:1422
Symbol 1422 GraphicUses:1421Used by:1431
Symbol 1423 BitmapUsed by:1424 1427 1428 1429
Symbol 1424 GraphicUses:1423Used by:1430
Symbol 1425 FontUsed by:1426 1723
Symbol 1426 EditableTextUses:1425Used by:1430
Symbol 1427 GraphicUses:1423Used by:1430
Symbol 1428 GraphicUses:1423Used by:1430
Symbol 1429 GraphicUses:1423Used by:1430
Symbol 1430 MovieClip {Farm3Africa_fla.buyButton_86} [Farm3Africa_fla.buyButton_86]Uses:1424 1426 1427 1428 1429Used by:1431
Symbol 1431 MovieClip {houses.HousePlateTemplate} [houses.HousePlateTemplate]Uses:1422 1430
Symbol 1432 BitmapUsed by:1433
Symbol 1433 GraphicUses:1432Used by:1442
Symbol 1434 BitmapUsed by:1435
Symbol 1435 GraphicUses:1434Used by:1442
Symbol 1436 BitmapUsed by:1437
Symbol 1437 GraphicUses:1436Used by:1442
Symbol 1438 BitmapUsed by:1439
Symbol 1439 GraphicUses:1438Used by:1442
Symbol 1440 BitmapUsed by:1441
Symbol 1441 GraphicUses:1440Used by:1442
Symbol 1442 MovieClip {Farm3Africa_fla.incubator_body_30} [Farm3Africa_fla.incubator_body_30]Uses:1433 1435 1437 1439 1441Used by:1443
Symbol 1443 MovieClip {IncubatorTemplate} [IncubatorTemplate]Uses:1442 1363
Symbol 1444 BitmapUsed by:1445
Symbol 1445 GraphicUses:1444Used by:1446
Symbol 1446 MovieClipUses:1445Used by:1447
Symbol 1447 MovieClip {production.PruductionTemplate} [production.PruductionTemplate]Uses:856 1446
Symbol 1448 GraphicUsed by:1449
Symbol 1449 MovieClip {game.assets.FieldTemplate} [game.assets.FieldTemplate]Uses:1448
Symbol 1450 BitmapUsed by:1451
Symbol 1451 GraphicUses:1450Used by:1690
Symbol 1452 BitmapUsed by:1453
Symbol 1453 GraphicUses:1452Used by:1690
Symbol 1454 BitmapUsed by:1455
Symbol 1455 GraphicUses:1454Used by:1690
Symbol 1456 BitmapUsed by:1457
Symbol 1457 GraphicUses:1456Used by:1690
Symbol 1458 BitmapUsed by:1459
Symbol 1459 GraphicUses:1458Used by:1690
Symbol 1460 BitmapUsed by:1461
Symbol 1461 GraphicUses:1460Used by:1690
Symbol 1462 BitmapUsed by:1463
Symbol 1463 GraphicUses:1462Used by:1690
Symbol 1464 BitmapUsed by:1465
Symbol 1465 GraphicUses:1464Used by:1690
Symbol 1466 BitmapUsed by:1467
Symbol 1467 GraphicUses:1466Used by:1690
Symbol 1468 BitmapUsed by:1469
Symbol 1469 GraphicUses:1468Used by:1690
Symbol 1470 BitmapUsed by:1471
Symbol 1471 GraphicUses:1470Used by:1690
Symbol 1472 BitmapUsed by:1473
Symbol 1473 GraphicUses:1472Used by:1690
Symbol 1474 BitmapUsed by:1475
Symbol 1475 GraphicUses:1474Used by:1690
Symbol 1476 BitmapUsed by:1477
Symbol 1477 GraphicUses:1476Used by:1690
Symbol 1478 BitmapUsed by:1479
Symbol 1479 GraphicUses:1478Used by:1690
Symbol 1480 BitmapUsed by:1481
Symbol 1481 GraphicUses:1480Used by:1690
Symbol 1482 BitmapUsed by:1483
Symbol 1483 GraphicUses:1482Used by:1690
Symbol 1484 BitmapUsed by:1485
Symbol 1485 GraphicUses:1484Used by:1690
Symbol 1486 BitmapUsed by:1487
Symbol 1487 GraphicUses:1486Used by:1690
Symbol 1488 BitmapUsed by:1489
Symbol 1489 GraphicUses:1488Used by:1690
Symbol 1490 BitmapUsed by:1491
Symbol 1491 GraphicUses:1490Used by:1690
Symbol 1492 BitmapUsed by:1493
Symbol 1493 GraphicUses:1492Used by:1690
Symbol 1494 BitmapUsed by:1495
Symbol 1495 GraphicUses:1494Used by:1690
Symbol 1496 BitmapUsed by:1497
Symbol 1497 GraphicUses:1496Used by:1690
Symbol 1498 BitmapUsed by:1499
Symbol 1499 GraphicUses:1498Used by:1690
Symbol 1500 BitmapUsed by:1501
Symbol 1501 GraphicUses:1500Used by:1690
Symbol 1502 BitmapUsed by:1503
Symbol 1503 GraphicUses:1502Used by:1690
Symbol 1504 BitmapUsed by:1505
Symbol 1505 GraphicUses:1504Used by:1690
Symbol 1506 BitmapUsed by:1507
Symbol 1507 GraphicUses:1506Used by:1690
Symbol 1508 BitmapUsed by:1509
Symbol 1509 GraphicUses:1508Used by:1690
Symbol 1510 BitmapUsed by:1511
Symbol 1511 GraphicUses:1510Used by:1690
Symbol 1512 BitmapUsed by:1513
Symbol 1513 GraphicUses:1512Used by:1690
Symbol 1514 BitmapUsed by:1515
Symbol 1515 GraphicUses:1514Used by:1690
Symbol 1516 BitmapUsed by:1517
Symbol 1517 GraphicUses:1516Used by:1690
Symbol 1518 BitmapUsed by:1519
Symbol 1519 GraphicUses:1518Used by:1690
Symbol 1520 BitmapUsed by:1521
Symbol 1521 GraphicUses:1520Used by:1690
Symbol 1522 BitmapUsed by:1523
Symbol 1523 GraphicUses:1522Used by:1690
Symbol 1524 BitmapUsed by:1525
Symbol 1525 GraphicUses:1524Used by:1690
Symbol 1526 BitmapUsed by:1527
Symbol 1527 GraphicUses:1526Used by:1690
Symbol 1528 BitmapUsed by:1529
Symbol 1529 GraphicUses:1528Used by:1690
Symbol 1530 BitmapUsed by:1531
Symbol 1531 GraphicUses:1530Used by:1690
Symbol 1532 BitmapUsed by:1533
Symbol 1533 GraphicUses:1532Used by:1690
Symbol 1534 BitmapUsed by:1535
Symbol 1535 GraphicUses:1534Used by:1690
Symbol 1536 BitmapUsed by:1537
Symbol 1537 GraphicUses:1536Used by:1690
Symbol 1538 BitmapUsed by:1539
Symbol 1539 GraphicUses:1538Used by:1690
Symbol 1540 BitmapUsed by:1541
Symbol 1541 GraphicUses:1540Used by:1690
Symbol 1542 BitmapUsed by:1543
Symbol 1543 GraphicUses:1542Used by:1690
Symbol 1544 BitmapUsed by:1545
Symbol 1545 GraphicUses:1544Used by:1690
Symbol 1546 BitmapUsed by:1547
Symbol 1547 GraphicUses:1546Used by:1690
Symbol 1548 BitmapUsed by:1549
Symbol 1549 GraphicUses:1548Used by:1690
Symbol 1550 BitmapUsed by:1551
Symbol 1551 GraphicUses:1550Used by:1690
Symbol 1552 BitmapUsed by:1553
Symbol 1553 GraphicUses:1552Used by:1690
Symbol 1554 BitmapUsed by:1555
Symbol 1555 GraphicUses:1554Used by:1690
Symbol 1556 BitmapUsed by:1557
Symbol 1557 GraphicUses:1556Used by:1690
Symbol 1558 BitmapUsed by:1559
Symbol 1559 GraphicUses:1558Used by:1690
Symbol 1560 BitmapUsed by:1561
Symbol 1561 GraphicUses:1560Used by:1690
Symbol 1562 BitmapUsed by:1563
Symbol 1563 GraphicUses:1562Used by:1690
Symbol 1564 BitmapUsed by:1565
Symbol 1565 GraphicUses:1564Used by:1690
Symbol 1566 BitmapUsed by:1567
Symbol 1567 GraphicUses:1566Used by:1690
Symbol 1568 BitmapUsed by:1569
Symbol 1569 GraphicUses:1568Used by:1690
Symbol 1570 BitmapUsed by:1571
Symbol 1571 GraphicUses:1570Used by:1690
Symbol 1572 BitmapUsed by:1573
Symbol 1573 GraphicUses:1572Used by:1690
Symbol 1574 BitmapUsed by:1575
Symbol 1575 GraphicUses:1574Used by:1690
Symbol 1576 BitmapUsed by:1577
Symbol 1577 GraphicUses:1576Used by:1690
Symbol 1578 BitmapUsed by:1579
Symbol 1579 GraphicUses:1578Used by:1690
Symbol 1580 BitmapUsed by:1581
Symbol 1581 GraphicUses:1580Used by:1690
Symbol 1582 BitmapUsed by:1583
Symbol 1583 GraphicUses:1582Used by:1690
Symbol 1584 BitmapUsed by:1585
Symbol 1585 GraphicUses:1584Used by:1690
Symbol 1586 BitmapUsed by:1587
Symbol 1587 GraphicUses:1586Used by:1690
Symbol 1588 BitmapUsed by:1589
Symbol 1589 GraphicUses:1588Used by:1690
Symbol 1590 BitmapUsed by:1591
Symbol 1591 GraphicUses:1590Used by:1690
Symbol 1592 BitmapUsed by:1593
Symbol 1593 GraphicUses:1592Used by:1690
Symbol 1594 BitmapUsed by:1595
Symbol 1595 GraphicUses:1594Used by:1690
Symbol 1596 BitmapUsed by:1597
Symbol 1597 GraphicUses:1596Used by:1690
Symbol 1598 BitmapUsed by:1599
Symbol 1599 GraphicUses:1598Used by:1690
Symbol 1600 BitmapUsed by:1601
Symbol 1601 GraphicUses:1600Used by:1690
Symbol 1602 BitmapUsed by:1603
Symbol 1603 GraphicUses:1602Used by:1690
Symbol 1604 BitmapUsed by:1605
Symbol 1605 GraphicUses:1604Used by:1690
Symbol 1606 BitmapUsed by:1607
Symbol 1607 GraphicUses:1606Used by:1690
Symbol 1608 BitmapUsed by:1609
Symbol 1609 GraphicUses:1608Used by:1690
Symbol 1610 BitmapUsed by:1611
Symbol 1611 GraphicUses:1610Used by:1690
Symbol 1612 BitmapUsed by:1613
Symbol 1613 GraphicUses:1612Used by:1690
Symbol 1614 BitmapUsed by:1615
Symbol 1615 GraphicUses:1614Used by:1690
Symbol 1616 BitmapUsed by:1617
Symbol 1617 GraphicUses:1616Used by:1690
Symbol 1618 BitmapUsed by:1619
Symbol 1619 GraphicUses:1618Used by:1690
Symbol 1620 BitmapUsed by:1621
Symbol 1621 GraphicUses:1620Used by:1690
Symbol 1622 BitmapUsed by:1623
Symbol 1623 GraphicUses:1622Used by:1690
Symbol 1624 BitmapUsed by:1625
Symbol 1625 GraphicUses:1624Used by:1690
Symbol 1626 BitmapUsed by:1627
Symbol 1627 GraphicUses:1626Used by:1690
Symbol 1628 BitmapUsed by:1629
Symbol 1629 GraphicUses:1628Used by:1690
Symbol 1630 BitmapUsed by:1631
Symbol 1631 GraphicUses:1630Used by:1690
Symbol 1632 BitmapUsed by:1633
Symbol 1633 GraphicUses:1632Used by:1690
Symbol 1634 BitmapUsed by:1635
Symbol 1635 GraphicUses:1634Used by:1690
Symbol 1636 BitmapUsed by:1637
Symbol 1637 GraphicUses:1636Used by:1690
Symbol 1638 BitmapUsed by:1639
Symbol 1639 GraphicUses:1638Used by:1690
Symbol 1640 BitmapUsed by:1641
Symbol 1641 GraphicUses:1640Used by:1690
Symbol 1642 BitmapUsed by:1643
Symbol 1643 GraphicUses:1642Used by:1690
Symbol 1644 BitmapUsed by:1645
Symbol 1645 GraphicUses:1644Used by:1690
Symbol 1646 BitmapUsed by:1647
Symbol 1647 GraphicUses:1646Used by:1690
Symbol 1648 BitmapUsed by:1649
Symbol 1649 GraphicUses:1648Used by:1690
Symbol 1650 BitmapUsed by:1651
Symbol 1651 GraphicUses:1650Used by:1690
Symbol 1652 BitmapUsed by:1653
Symbol 1653 GraphicUses:1652Used by:1690
Symbol 1654 BitmapUsed by:1655
Symbol 1655 GraphicUses:1654Used by:1690
Symbol 1656 BitmapUsed by:1657
Symbol 1657 GraphicUses:1656Used by:1690
Symbol 1658 BitmapUsed by:1659
Symbol 1659 GraphicUses:1658Used by:1690
Symbol 1660 BitmapUsed by:1661
Symbol 1661 GraphicUses:1660Used by:1690
Symbol 1662 BitmapUsed by:1663
Symbol 1663 GraphicUses:1662Used by:1690
Symbol 1664 BitmapUsed by:1665
Symbol 1665 GraphicUses:1664Used by:1690
Symbol 1666 BitmapUsed by:1667
Symbol 1667 GraphicUses:1666Used by:1690
Symbol 1668 BitmapUsed by:1669
Symbol 1669 GraphicUses:1668Used by:1690
Symbol 1670 BitmapUsed by:1671
Symbol 1671 GraphicUses:1670Used by:1690
Symbol 1672 BitmapUsed by:1673
Symbol 1673 GraphicUses:1672Used by:1690
Symbol 1674 BitmapUsed by:1675
Symbol 1675 GraphicUses:1674Used by:1690
Symbol 1676 BitmapUsed by:1677
Symbol 1677 GraphicUses:1676Used by:1690
Symbol 1678 BitmapUsed by:1679
Symbol 1679 GraphicUses:1678Used by:1690
Symbol 1680 BitmapUsed by:1681
Symbol 1681 GraphicUses:1680Used by:1690
Symbol 1682 BitmapUsed by:1683
Symbol 1683 GraphicUses:1682Used by:1690
Symbol 1684 BitmapUsed by:1685
Symbol 1685 GraphicUses:1684Used by:1690
Symbol 1686 BitmapUsed by:1687
Symbol 1687 GraphicUses:1686Used by:1690
Symbol 1688 BitmapUsed by:1689
Symbol 1689 GraphicUses:1688Used by:1690
Symbol 1690 MovieClip {Farm3Africa_fla.body_144} [Farm3Africa_fla.body_144]Uses:1451 1453 1455 1457 1459 1461 1463 1465 1467 1469 1471 1473 1475 1477 1479 1481 1483 1485 1487 1489 1491 1493 1495 1497 1499 1501 1503 1505 1507 1509 1511 1513 1515 1517 1519 1521 1523 1525 1527 1529 1531 1533 1535 1537 1539 1541 1543 1545 1547 1549 1551 1553 1555 1557 1559 1561 1563 1565 1567 1569 1571 1573 1575 1577 1579 1581 1583 1585 1587 1589 1591 1593 1595 1597 1599 1601 1603 1605 1607 1609 1611 1613 1615 1617 1619 1621 1623 1625 1627 1629 1631 1633 1635 1637 1639 1641 1643 1645 1647 1649 1651 1653 1655 1657 1659 1661 1663 1665 1667 1669 1671 1673 1675 1677 1679 1681 1683 1685 1687 1689Used by:1704
Symbol 1691 GraphicUsed by:1692
Symbol 1692 MovieClipUses:1691Used by:1704
Symbol 1693 BitmapUsed by:1694 1695 1696 1697 1698 1699 1700 1701 1702
Symbol 1694 GraphicUses:1693Used by:1703
Symbol 1695 GraphicUses:1693Used by:1703
Symbol 1696 GraphicUses:1693Used by:1703
Symbol 1697 GraphicUses:1693Used by:1703
Symbol 1698 GraphicUses:1693Used by:1703
Symbol 1699 GraphicUses:1693Used by:1703
Symbol 1700 GraphicUses:1693Used by:1703
Symbol 1701 GraphicUses:1693Used by:1703
Symbol 1702 GraphicUses:1693Used by:1703
Symbol 1703 MovieClip {Farm3Africa_fla.buildCage_146} [Farm3Africa_fla.buildCage_146]Uses:1694 1695 1696 1697 1698 1699 1700 1701 1702Used by:1704
Symbol 1704 MovieClip {PolarBearTemplate} [PolarBearTemplate]Uses:1690 1692 1703
Symbol 1705 FontUsed by:1706
Symbol 1706 EditableTextUses:1705Used by:1713
Symbol 1707 GraphicUses:848Used by:1713
Symbol 1708 GraphicUses:184Used by:1712
Symbol 1709 EditableTextUses:29Used by:1712
Symbol 1710 GraphicUses:184Used by:1712
Symbol 1711 GraphicUses:184Used by:1712
Symbol 1712 MovieClip {Farm3Africa_fla.smalButton_74} [Farm3Africa_fla.smalButton_74]Uses:1708 1709 1710 1711Used by:1713 1790
Symbol 1713 MovieClip {market.ImportItemTemplate} [market.ImportItemTemplate]Uses:1706 1707 1278 1712
Symbol 1714 GraphicUsed by:1715
Symbol 1715 MovieClipUses:1714Used by:1717
Symbol 1716 GraphicUsed by:1717
Symbol 1717 MovieClip {Farm3Africa_fla._line__71} [Farm3Africa_fla._line__71]Uses:1715 1716Used by:1719
Symbol 1718 GraphicUses:131Used by:1719
Symbol 1719 MovieClip {market.BoxTemplate} [market.BoxTemplate]Uses:1717 1718 1278
Symbol 1720 GraphicUsed by:1726
Symbol 1721 BitmapUsed by:1722 1724 1725
Symbol 1722 GraphicUses:1721Used by:1726
Symbol 1723 EditableTextUses:1425Used by:1726
Symbol 1724 GraphicUses:1721Used by:1726
Symbol 1725 GraphicUses:1721Used by:1726
Symbol 1726 MovieClip {houses.UpgradeButtonTemplate} [houses.UpgradeButtonTemplate]Uses:1720 1722 1723 1724 1725
Symbol 1727 BitmapUsed by:1728
Symbol 1728 GraphicUses:1727Used by:1735
Symbol 1729 BitmapUsed by:1730
Symbol 1730 GraphicUses:1729Used by:1735
Symbol 1731 BitmapUsed by:1732
Symbol 1732 GraphicUses:1731Used by:1735
Symbol 1733 BitmapUsed by:1734
Symbol 1734 GraphicUses:1733Used by:1735
Symbol 1735 MovieClip {Farm3Africa_fla.wellcopy_40} [Farm3Africa_fla.wellcopy_40]Uses:1728 1730 1732 1734Used by:1747
Symbol 1736 BitmapUsed by:1737
Symbol 1737 GraphicUses:1736Used by:1741
Symbol 1738 MovieClipUses:37Used by:1741
Symbol 1739 BitmapUsed by:1740
Symbol 1740 GraphicUses:1739Used by:1741
Symbol 1741 MovieClip {Farm3Africa_fla.waterline_mc_41} [Farm3Africa_fla.waterline_mc_41]Uses:1737 1738 1740Used by:1747
Symbol 1742 EditableTextUses:766Used by:1744
Symbol 1743 GraphicUses:848Used by:1744
Symbol 1744 MovieClip {Farm3Africa_fla.money_43} [Farm3Africa_fla.money_43]Uses:1742 1743Used by:1747
Symbol 1745 GraphicUsed by:1746
Symbol 1746 MovieClipUses:1745Used by:1747
Symbol 1747 MovieClip {houses.WellTemplate} [houses.WellTemplate]Uses:1735 1741 1744 1746
Symbol 1748 BitmapUsed by:1749
Symbol 1749 GraphicUses:1748Used by:1754
Symbol 1750 GraphicUsed by:1751
Symbol 1751 MovieClipUses:1750Used by:1754
Symbol 1752 BitmapUsed by:1753
Symbol 1753 GraphicUses:1752Used by:1754
Symbol 1754 MovieClip {WorkLineTemplate} [WorkLineTemplate]Uses:1749 1751 1753
Symbol 1755 BitmapUsed by:1756
Symbol 1756 GraphicUses:1755Used by:1769
Symbol 1757 BitmapUsed by:1758
Symbol 1758 GraphicUses:1757Used by:1769
Symbol 1759 BitmapUsed by:1760
Symbol 1760 GraphicUses:1759Used by:1769
Symbol 1761 BitmapUsed by:1762
Symbol 1762 GraphicUses:1761Used by:1769
Symbol 1763 BitmapUsed by:1764
Symbol 1764 GraphicUses:1763Used by:1769
Symbol 1765 BitmapUsed by:1766
Symbol 1766 GraphicUses:1765Used by:1769
Symbol 1767 BitmapUsed by:1768
Symbol 1768 GraphicUses:1767Used by:1769
Symbol 1769 MovieClip {Farm3Africa_fla.body_127} [Farm3Africa_fla.body_127]Uses:1756 1758 1760 1762 1764 1766 1768Used by:1770
Symbol 1770 MovieClip {production.DepotProductTemplate} [production.DepotProductTemplate]Uses:1769
Symbol 1771 BitmapUsed by:1772
Symbol 1772 GraphicUses:848 1771Used by:1784
Symbol 1773 BitmapUsed by:1774
Symbol 1774 GraphicUses:1773Used by:1781
Symbol 1775 BitmapUsed by:1776
Symbol 1776 GraphicUses:1775Used by:1781
Symbol 1777 BitmapUsed by:1778
Symbol 1778 GraphicUses:1777Used by:1781
Symbol 1779 BitmapUsed by:1780
Symbol 1780 GraphicUses:1779Used by:1781
Symbol 1781 MovieClip {Farm3Africa_fla.car0_69} [Farm3Africa_fla.car0_69]Uses:1774 1776 1778 1780Used by:1784
Symbol 1782 EditableTextUses:766Used by:1784
Symbol 1783 EditableTextUses:833Used by:1784
Symbol 1784 MovieClip {market.ExportWindowTemplate} [market.ExportWindowTemplate]Uses:1772 1781 99 1782 1783
Symbol 1785 EditableTextUses:169Used by:1790
Symbol 1786 EditableTextUses:169Used by:1790
Symbol 1787 GraphicUses:848Used by:1790
Symbol 1788 BitmapUsed by:1789
Symbol 1789 GraphicUses:1788Used by:1790
Symbol 1790 MovieClip {market.ExportItemTemplate} [market.ExportItemTemplate]Uses:1785 1786 1787 1712 1278 1789

Instance Names

"line"Symbol 11 MovieClip {Farm3Africa_fla._progress_99} [Farm3Africa_fla._progress_99] Frame 1Symbol 8 MovieClip {Farm3Africa_fla._line_100} [Farm3Africa_fla._line_100]
"progress"Symbol 24 MovieClip {PreloaderTemplate} [PreloaderTemplate] Frame 1Symbol 11 MovieClip {Farm3Africa_fla._progress_99} [Farm3Africa_fla._progress_99]
"alawar"Symbol 24 MovieClip {PreloaderTemplate} [PreloaderTemplate] Frame 1Symbol 16 MovieClip {Farm3Africa_fla.alawar_94} [Farm3Africa_fla.alawar_94]
"rambler"Symbol 24 MovieClip {PreloaderTemplate} [PreloaderTemplate] Frame 1Symbol 23 MovieClip
"caption"Symbol 34 MovieClip {Farm3Africa_fla.middleButton_7} [Farm3Africa_fla.middleButton_7] Frame 1Symbol 30 EditableText
"yesBtn"Symbol 36 MovieClip {QuitDialogTemplate} [QuitDialogTemplate] Frame 1Symbol 34 MovieClip {Farm3Africa_fla.middleButton_7} [Farm3Africa_fla.middleButton_7]
"noBtn"Symbol 36 MovieClip {QuitDialogTemplate} [QuitDialogTemplate] Frame 1Symbol 34 MovieClip {Farm3Africa_fla.middleButton_7} [Farm3Africa_fla.middleButton_7]
"caption"Symbol 36 MovieClip {QuitDialogTemplate} [QuitDialogTemplate] Frame 1Symbol 35 EditableText
"caption"Symbol 99 MovieClip {Farm3Africa_fla.big_btn_48} [Farm3Africa_fla.big_btn_48] Frame 1Symbol 95 EditableText
"resumeBtn"Symbol 100 MovieClip {ui.GameMenuTemplate} [ui.GameMenuTemplate] Frame 1Symbol 99 MovieClip {Farm3Africa_fla.big_btn_48} [Farm3Africa_fla.big_btn_48]
"restartBtn"Symbol 100 MovieClip {ui.GameMenuTemplate} [ui.GameMenuTemplate] Frame 1Symbol 99 MovieClip {Farm3Africa_fla.big_btn_48} [Farm3Africa_fla.big_btn_48]
"mapBtn"Symbol 100 MovieClip {ui.GameMenuTemplate} [ui.GameMenuTemplate] Frame 1Symbol 99 MovieClip {Farm3Africa_fla.big_btn_48} [Farm3Africa_fla.big_btn_48]
"exitBtn"Symbol 100 MovieClip {ui.GameMenuTemplate} [ui.GameMenuTemplate] Frame 1Symbol 99 MovieClip {Farm3Africa_fla.big_btn_48} [Farm3Africa_fla.big_btn_48]
"buyBtn"Symbol 100 MovieClip {ui.GameMenuTemplate} [ui.GameMenuTemplate] Frame 1Symbol 99 MovieClip {Farm3Africa_fla.big_btn_48} [Farm3Africa_fla.big_btn_48]
"caption"Symbol 110 MovieClip {Farm3Africa_fla.buyBtn_89} [Farm3Africa_fla.buyBtn_89] Frame 1Symbol 107 EditableText
"caption"Symbol 119 MovieClip {Farm3Africa_fla.middleBtn_121} [Farm3Africa_fla.middleBtn_121] Frame 1Symbol 115 EditableText
"menuBtn"Symbol 120 MovieClip {Farm3Africa_fla.bottomPanel_120} [Farm3Africa_fla.bottomPanel_120] Frame 1Symbol 34 MovieClip {Farm3Africa_fla.middleButton_7} [Farm3Africa_fla.middleButton_7]
"shopBtn"Symbol 120 MovieClip {Farm3Africa_fla.bottomPanel_120} [Farm3Africa_fla.bottomPanel_120] Frame 1Symbol 119 MovieClip {Farm3Africa_fla.middleBtn_121} [Farm3Africa_fla.middleBtn_121]
"_shadow"Symbol 121 MovieClip {MapTemplate} [MapTemplate] Frame 1Symbol 104 MovieClip
"buyBtn"Symbol 121 MovieClip {MapTemplate} [MapTemplate] Frame 1Symbol 110 MovieClip {Farm3Africa_fla.buyBtn_89} [Farm3Africa_fla.buyBtn_89]
"bottomPanel"Symbol 121 MovieClip {MapTemplate} [MapTemplate] Frame 1Symbol 120 MovieClip {Farm3Africa_fla.bottomPanel_120} [Farm3Africa_fla.bottomPanel_120]
"arrow"Symbol 148 MovieClip {Farm3Africa_fla.items_110} [Farm3Africa_fla.items_110] Frame 1Symbol 126 MovieClip
"inCount"Symbol 148 MovieClip {Farm3Africa_fla.items_110} [Farm3Africa_fla.items_110] Frame 1Symbol 128 EditableText
"outCount"Symbol 148 MovieClip {Farm3Africa_fla.items_110} [Farm3Africa_fla.items_110] Frame 1Symbol 129 EditableText
"caption"Symbol 148 MovieClip {Farm3Africa_fla.items_110} [Farm3Africa_fla.items_110] Frame 1Symbol 130 EditableText
"body"Symbol 149 MovieClip {TooltipTemplate} [TooltipTemplate] Frame 1Symbol 124 MovieClip
"help"Symbol 149 MovieClip {TooltipTemplate} [TooltipTemplate] Frame 1Symbol 148 MovieClip {Farm3Africa_fla.items_110} [Farm3Africa_fla.items_110]
"caption"Symbol 166 MovieClip {Farm3Africa_fla.soundControl_92} [Farm3Africa_fla.soundControl_92] Frame 1Symbol 163 EditableText
"caption"Symbol 177 MovieClip {Farm3Africa_fla.okBtn_97} [Farm3Africa_fla.okBtn_97] Frame 1Symbol 30 EditableText
"welcome"Symbol 178 MovieClip {Farm3Africa_fla.playerPanel_96} [Farm3Africa_fla.playerPanel_96] Frame 1Symbol 170 EditableText
"playerName"Symbol 178 MovieClip {Farm3Africa_fla.playerPanel_96} [Farm3Africa_fla.playerPanel_96] Frame 1Symbol 171 EditableText
"editBtn"Symbol 178 MovieClip {Farm3Africa_fla.playerPanel_96} [Farm3Africa_fla.playerPanel_96] Frame 1Symbol 177 MovieClip {Farm3Africa_fla.okBtn_97} [Farm3Africa_fla.okBtn_97]
"logo"Symbol 179 MovieClip {StartScreenTemplate} [StartScreenTemplate] Frame 1Symbol 159 MovieClip {Farm3Africa_fla.logo_mc_91} [Farm3Africa_fla.logo_mc_91]
"okBtn"Symbol 179 MovieClip {StartScreenTemplate} [StartScreenTemplate] Frame 1Symbol 99 MovieClip {Farm3Africa_fla.big_btn_48} [Farm3Africa_fla.big_btn_48]
"soundBtn"Symbol 179 MovieClip {StartScreenTemplate} [StartScreenTemplate] Frame 1Symbol 166 MovieClip {Farm3Africa_fla.soundControl_92} [Farm3Africa_fla.soundControl_92]
"exitBtn"Symbol 179 MovieClip {StartScreenTemplate} [StartScreenTemplate] Frame 1Symbol 99 MovieClip {Farm3Africa_fla.big_btn_48} [Farm3Africa_fla.big_btn_48]
"musicBtn"Symbol 179 MovieClip {StartScreenTemplate} [StartScreenTemplate] Frame 1Symbol 166 MovieClip {Farm3Africa_fla.soundControl_92} [Farm3Africa_fla.soundControl_92]
"buyBtn"Symbol 179 MovieClip {StartScreenTemplate} [StartScreenTemplate] Frame 1Symbol 110 MovieClip {Farm3Africa_fla.buyBtn_89} [Farm3Africa_fla.buyBtn_89]
"vkontakte_title"Symbol 179 MovieClip {StartScreenTemplate} [StartScreenTemplate] Frame 1Symbol 168 MovieClip
"alawar"Symbol 179 MovieClip {StartScreenTemplate} [StartScreenTemplate] Frame 1Symbol 16 MovieClip {Farm3Africa_fla.alawar_94} [Farm3Africa_fla.alawar_94]
"rambler"Symbol 179 MovieClip {StartScreenTemplate} [StartScreenTemplate] Frame 1Symbol 23 MovieClip
"playerPanel"Symbol 179 MovieClip {StartScreenTemplate} [StartScreenTemplate] Frame 1Symbol 178 MovieClip {Farm3Africa_fla.playerPanel_96} [Farm3Africa_fla.playerPanel_96]
"caption"Symbol 189 MovieClip {Farm3Africa_fla.okButton_105} [Farm3Africa_fla.okButton_105] Frame 1Symbol 186 EditableText
"caption"Symbol 190 MovieClip {Farm3Africa_fla.helpBlockToolTip_104} [Farm3Africa_fla.helpBlockToolTip_104] Frame 1Symbol 183 EditableText
"okBtn"Symbol 190 MovieClip {Farm3Africa_fla.helpBlockToolTip_104} [Farm3Africa_fla.helpBlockToolTip_104] Frame 1Symbol 189 MovieClip {Farm3Africa_fla.okButton_105} [Farm3Africa_fla.okButton_105]
"lock"Symbol 191 MovieClip {BlockTooltipTemplate} [BlockTooltipTemplate] Frame 1Symbol 180 MovieClip
"body"Symbol 191 MovieClip {BlockTooltipTemplate} [BlockTooltipTemplate] Frame 1Symbol 182 MovieClip
"help"Symbol 191 MovieClip {BlockTooltipTemplate} [BlockTooltipTemplate] Frame 1Symbol 190 MovieClip {Farm3Africa_fla.helpBlockToolTip_104} [Farm3Africa_fla.helpBlockToolTip_104]
"pig"Symbol 201 MovieClip {QuitMenuTemplate} [QuitMenuTemplate] Frame 1Symbol 199 MovieClip {Farm3Africa_fla.pig_82} [Farm3Africa_fla.pig_82]
"yesBtn"Symbol 201 MovieClip {QuitMenuTemplate} [QuitMenuTemplate] Frame 1Symbol 34 MovieClip {Farm3Africa_fla.middleButton_7} [Farm3Africa_fla.middleButton_7]
"noBtn"Symbol 201 MovieClip {QuitMenuTemplate} [QuitMenuTemplate] Frame 1Symbol 34 MovieClip {Farm3Africa_fla.middleButton_7} [Farm3Africa_fla.middleButton_7]
"caption"Symbol 201 MovieClip {QuitMenuTemplate} [QuitMenuTemplate] Frame 1Symbol 200 EditableText
"body"Symbol 206 MovieClip {MapTooltipTempalte} [MapTooltipTempalte] Frame 1Symbol 204 MovieClip
"caption"Symbol 206 MovieClip {MapTooltipTempalte} [MapTooltipTempalte] Frame 1Symbol 205 EditableText
"price"Symbol 225 MovieClip {Farm3Africa_fla.buyButton_14} [Farm3Africa_fla.buyButton_14] Frame 1Symbol 221 EditableText
"bg"Symbol 236 MovieClip {Farm3Africa_fla.wellShop_12} [Farm3Africa_fla.wellShop_12] Frame 1Symbol 216 MovieClip {Farm3Africa_fla.bg_13} [Farm3Africa_fla.bg_13]
"buyBtn"Symbol 236 MovieClip {Farm3Africa_fla.wellShop_12} [Farm3Africa_fla.wellShop_12] Frame 1Symbol 225 MovieClip {Farm3Africa_fla.buyButton_14} [Farm3Africa_fla.buyButton_14]
"tick"Symbol 236 MovieClip {Farm3Africa_fla.wellShop_12} [Farm3Africa_fla.wellShop_12] Frame 1Symbol 228 MovieClip
"title"Symbol 236 MovieClip {Farm3Africa_fla.wellShop_12} [Farm3Africa_fla.wellShop_12] Frame 1Symbol 229 EditableText
"bg"Symbol 246 MovieClip {Farm3Africa_fla.depot_15} [Farm3Africa_fla.depot_15] Frame 1Symbol 216 MovieClip {Farm3Africa_fla.bg_13} [Farm3Africa_fla.bg_13]
"buyBtn"Symbol 246 MovieClip {Farm3Africa_fla.depot_15} [Farm3Africa_fla.depot_15] Frame 1Symbol 225 MovieClip {Farm3Africa_fla.buyButton_14} [Farm3Africa_fla.buyButton_14]
"tick"Symbol 246 MovieClip {Farm3Africa_fla.depot_15} [Farm3Africa_fla.depot_15] Frame 1Symbol 228 MovieClip
"title"Symbol 246 MovieClip {Farm3Africa_fla.depot_15} [Farm3Africa_fla.depot_15] Frame 1Symbol 239 EditableText
"bg"Symbol 256 MovieClip {Farm3Africa_fla.carShop_16} [Farm3Africa_fla.carShop_16] Frame 1Symbol 216 MovieClip {Farm3Africa_fla.bg_13} [Farm3Africa_fla.bg_13]
"buyBtn"Symbol 256 MovieClip {Farm3Africa_fla.carShop_16} [Farm3Africa_fla.carShop_16] Frame 1Symbol 225 MovieClip {Farm3Africa_fla.buyButton_14} [Farm3Africa_fla.buyButton_14]
"tick"Symbol 256 MovieClip {Farm3Africa_fla.carShop_16} [Farm3Africa_fla.carShop_16] Frame 1Symbol 228 MovieClip
"title"Symbol 256 MovieClip {Farm3Africa_fla.carShop_16} [Farm3Africa_fla.carShop_16] Frame 1Symbol 249 EditableText
"bg"Symbol 266 MovieClip {Farm3Africa_fla.plane_17} [Farm3Africa_fla.plane_17] Frame 1Symbol 216 MovieClip {Farm3Africa_fla.bg_13} [Farm3Africa_fla.bg_13]
"buyBtn"Symbol 266 MovieClip {Farm3Africa_fla.plane_17} [Farm3Africa_fla.plane_17] Frame 1Symbol 225 MovieClip {Farm3Africa_fla.buyButton_14} [Farm3Africa_fla.buyButton_14]
"tick"Symbol 266 MovieClip {Farm3Africa_fla.plane_17} [Farm3Africa_fla.plane_17] Frame 1Symbol 228 MovieClip
"title"Symbol 266 MovieClip {Farm3Africa_fla.plane_17} [Farm3Africa_fla.plane_17] Frame 1Symbol 259 EditableText
"bg"Symbol 276 MovieClip {Farm3Africa_fla.cage_18} [Farm3Africa_fla.cage_18] Frame 1Symbol 216 MovieClip {Farm3Africa_fla.bg_13} [Farm3Africa_fla.bg_13]
"buyBtn"Symbol 276 MovieClip {Farm3Africa_fla.cage_18} [Farm3Africa_fla.cage_18] Frame 1Symbol 225 MovieClip {Farm3Africa_fla.buyButton_14} [Farm3Africa_fla.buyButton_14]
"tick"Symbol 276 MovieClip {Farm3Africa_fla.cage_18} [Farm3Africa_fla.cage_18] Frame 1Symbol 228 MovieClip
"title"Symbol 276 MovieClip {Farm3Africa_fla.cage_18} [Farm3Africa_fla.cage_18] Frame 1Symbol 269 EditableText
"bg"Symbol 293 MovieClip {Farm3Africa_fla.dried_19} [Farm3Africa_fla.dried_19] Frame 1Symbol 216 MovieClip {Farm3Africa_fla.bg_13} [Farm3Africa_fla.bg_13]
"title"Symbol 293 MovieClip {Farm3Africa_fla.dried_19} [Farm3Africa_fla.dried_19] Frame 1Symbol 280 EditableText
"buyBtn"Symbol 293 MovieClip {Farm3Africa_fla.dried_19} [Farm3Africa_fla.dried_19] Frame 1Symbol 225 MovieClip {Farm3Africa_fla.buyButton_14} [Farm3Africa_fla.buyButton_14]
"tick"Symbol 293 MovieClip {Farm3Africa_fla.dried_19} [Farm3Africa_fla.dried_19] Frame 1Symbol 228 MovieClip
"bg"Symbol 307 MovieClip {Farm3Africa_fla.Cake_20} [Farm3Africa_fla.Cake_20] Frame 1Symbol 216 MovieClip {Farm3Africa_fla.bg_13} [Farm3Africa_fla.bg_13]
"title"Symbol 307 MovieClip {Farm3Africa_fla.Cake_20} [Farm3Africa_fla.Cake_20] Frame 1Symbol 294 EditableText
"buyBtn"Symbol 307 MovieClip {Farm3Africa_fla.Cake_20} [Farm3Africa_fla.Cake_20] Frame 1Symbol 225 MovieClip {Farm3Africa_fla.buyButton_14} [Farm3Africa_fla.buyButton_14]
"tick"Symbol 307 MovieClip {Farm3Africa_fla.Cake_20} [Farm3Africa_fla.Cake_20] Frame 1Symbol 228 MovieClip
"bg"Symbol 321 MovieClip {Farm3Africa_fla.floury_cake_21} [Farm3Africa_fla.floury_cake_21] Frame 1Symbol 216 MovieClip {Farm3Africa_fla.bg_13} [Farm3Africa_fla.bg_13]
"title"Symbol 321 MovieClip {Farm3Africa_fla.floury_cake_21} [Farm3Africa_fla.floury_cake_21] Frame 1Symbol 308 EditableText
"buyBtn"Symbol 321 MovieClip {Farm3Africa_fla.floury_cake_21} [Farm3Africa_fla.floury_cake_21] Frame 1Symbol 225 MovieClip {Farm3Africa_fla.buyButton_14} [Farm3Africa_fla.buyButton_14]
"tick"Symbol 321 MovieClip {Farm3Africa_fla.floury_cake_21} [Farm3Africa_fla.floury_cake_21] Frame 1Symbol 228 MovieClip
"bg"Symbol 335 MovieClip {Farm3Africa_fla.incubator_22} [Farm3Africa_fla.incubator_22] Frame 1Symbol 216 MovieClip {Farm3Africa_fla.bg_13} [Farm3Africa_fla.bg_13]
"title"Symbol 335 MovieClip {Farm3Africa_fla.incubator_22} [Farm3Africa_fla.incubator_22] Frame 1Symbol 322 EditableText
"buyBtn"Symbol 335 MovieClip {Farm3Africa_fla.incubator_22} [Farm3Africa_fla.incubator_22] Frame 1Symbol 225 MovieClip {Farm3Africa_fla.buyButton_14} [Farm3Africa_fla.buyButton_14]
"tick"Symbol 335 MovieClip {Farm3Africa_fla.incubator_22} [Farm3Africa_fla.incubator_22] Frame 1Symbol 228 MovieClip
"well"Symbol 336 MovieClip {ShopTemplate} [ShopTemplate] Frame 1Symbol 236 MovieClip {Farm3Africa_fla.wellShop_12} [Farm3Africa_fla.wellShop_12]
"warehouse"Symbol 336 MovieClip {ShopTemplate} [ShopTemplate] Frame 1Symbol 246 MovieClip {Farm3Africa_fla.depot_15} [Farm3Africa_fla.depot_15]
"car"Symbol 336 MovieClip {ShopTemplate} [ShopTemplate] Frame 1Symbol 256 MovieClip {Farm3Africa_fla.carShop_16} [Farm3Africa_fla.carShop_16]
"plane"Symbol 336 MovieClip {ShopTemplate} [ShopTemplate] Frame 1Symbol 266 MovieClip {Farm3Africa_fla.plane_17} [Farm3Africa_fla.plane_17]
"cage"Symbol 336 MovieClip {ShopTemplate} [ShopTemplate] Frame 1Symbol 276 MovieClip {Farm3Africa_fla.cage_18} [Farm3Africa_fla.cage_18]
"title"Symbol 336 MovieClip {ShopTemplate} [ShopTemplate] Frame 1Symbol 277 EditableText
"stars_txt"Symbol 336 MovieClip {ShopTemplate} [ShopTemplate] Frame 1Symbol 279 EditableText
"powdered"Symbol 336 MovieClip {ShopTemplate} [ShopTemplate] Frame 1Symbol 293 MovieClip {Farm3Africa_fla.dried_19} [Farm3Africa_fla.dried_19]
"bakery"Symbol 336 MovieClip {ShopTemplate} [ShopTemplate] Frame 1Symbol 307 MovieClip {Farm3Africa_fla.Cake_20} [Farm3Africa_fla.Cake_20]
"confectionery"Symbol 336 MovieClip {ShopTemplate} [ShopTemplate] Frame 1Symbol 321 MovieClip {Farm3Africa_fla.floury_cake_21} [Farm3Africa_fla.floury_cake_21]
"okBtn"Symbol 336 MovieClip {ShopTemplate} [ShopTemplate] Frame 1Symbol 34 MovieClip {Farm3Africa_fla.middleButton_7} [Farm3Africa_fla.middleButton_7]
"incubator"Symbol 336 MovieClip {ShopTemplate} [ShopTemplate] Frame 1Symbol 335 MovieClip {Farm3Africa_fla.incubator_22} [Farm3Africa_fla.incubator_22]
"rotor"Symbol 360 MovieClip {Farm3Africa_fla.__preloader_138} [Farm3Africa_fla.__preloader_138] Frame 1Symbol 359 MovieClip
"closeBtn"Symbol 361 MovieClip {VLeaderboardTemplate} [VLeaderboardTemplate] Frame 1Symbol 349 Button
"_mask"Symbol 361 MovieClip {VLeaderboardTemplate} [VLeaderboardTemplate] Frame 1Symbol 351 MovieClip
"sliderBtn"Symbol 361 MovieClip {VLeaderboardTemplate} [VLeaderboardTemplate] Frame 1Symbol 354 MovieClip
"preloader"Symbol 361 MovieClip {VLeaderboardTemplate} [VLeaderboardTemplate] Frame 1Symbol 360 MovieClip {Farm3Africa_fla.__preloader_138} [Farm3Africa_fla.__preloader_138]
"caption"Symbol 364 MovieClip {EndScreenTemplate} [EndScreenTemplate] Frame 1Symbol 363 EditableText
"buyBtn"Symbol 364 MovieClip {EndScreenTemplate} [EndScreenTemplate] Frame 1Symbol 110 MovieClip {Farm3Africa_fla.buyBtn_89} [Farm3Africa_fla.buyBtn_89]
"exitBtn"Symbol 364 MovieClip {EndScreenTemplate} [EndScreenTemplate] Frame 1Symbol 99 MovieClip {Farm3Africa_fla.big_btn_48} [Farm3Africa_fla.big_btn_48]
"sendScoreBtn"Symbol 364 MovieClip {EndScreenTemplate} [EndScreenTemplate] Frame 1Symbol 99 MovieClip {Farm3Africa_fla.big_btn_48} [Farm3Africa_fla.big_btn_48]
"_mask"Symbol 723 MovieClip {Farm3Africa_fla.hungryProgress_153} [Farm3Africa_fla.hungryProgress_153] Frame 1Symbol 720 MovieClip
"body"Symbol 725 MovieClip {PenguinTemplate} [PenguinTemplate] Frame 1Symbol 719 MovieClip {Farm3Africa_fla.body_152} [Farm3Africa_fla.body_152]
"hungryProgress"Symbol 725 MovieClip {PenguinTemplate} [PenguinTemplate] Frame 1Symbol 723 MovieClip {Farm3Africa_fla.hungryProgress_153} [Farm3Africa_fla.hungryProgress_153]
"activeArea"Symbol 725 MovieClip {PenguinTemplate} [PenguinTemplate] Frame 1Symbol 724 MovieClip
"title"Symbol 763 MovieClip {ui.ResultsWindowTemplate} [ui.ResultsWindowTemplate] Frame 1Symbol 729 EditableText
"coins_txt"Symbol 763 MovieClip {ui.ResultsWindowTemplate} [ui.ResultsWindowTemplate] Frame 1Symbol 731 EditableText
"bank_txt"Symbol 763 MovieClip {ui.ResultsWindowTemplate} [ui.ResultsWindowTemplate] Frame 1Symbol 732 EditableText
"coins"Symbol 763 MovieClip {ui.ResultsWindowTemplate} [ui.ResultsWindowTemplate] Frame 1Symbol 733 EditableText
"time"Symbol 763 MovieClip {ui.ResultsWindowTemplate} [ui.ResultsWindowTemplate] Frame 1Symbol 734 EditableText
"bank"Symbol 763 MovieClip {ui.ResultsWindowTemplate} [ui.ResultsWindowTemplate] Frame 1Symbol 735 EditableText
"time_txt"Symbol 763 MovieClip {ui.ResultsWindowTemplate} [ui.ResultsWindowTemplate] Frame 1Symbol 736 EditableText
"cup"Symbol 763 MovieClip {ui.ResultsWindowTemplate} [ui.ResultsWindowTemplate] Frame 1Symbol 741 MovieClip {Farm3Africa_fla.kubok_53} [Farm3Africa_fla.kubok_53]
"okBtn"Symbol 763 MovieClip {ui.ResultsWindowTemplate} [ui.ResultsWindowTemplate] Frame 1Symbol 99 MovieClip {Farm3Africa_fla.big_btn_48} [Farm3Africa_fla.big_btn_48]
"bonus_txt"Symbol 763 MovieClip {ui.ResultsWindowTemplate} [ui.ResultsWindowTemplate] Frame 1Symbol 742 EditableText
"bonus"Symbol 763 MovieClip {ui.ResultsWindowTemplate} [ui.ResultsWindowTemplate] Frame 1Symbol 743 EditableText
"body"Symbol 804 MovieClip {Farm3Africa_fla.planeInTheSky_56} [Farm3Africa_fla.planeInTheSky_56] Frame 1Symbol 802 MovieClip {Farm3Africa_fla.planes_57} [Farm3Africa_fla.planes_57]
"money"Symbol 804 MovieClip {Farm3Africa_fla.planeInTheSky_56} [Farm3Africa_fla.planeInTheSky_56] Frame 1Symbol 803 EditableText
"body"Symbol 822 MovieClip {Farm3Africa_fla.carOnTheRoad_62} [Farm3Africa_fla.carOnTheRoad_62] Frame 1Symbol 821 MovieClip {Farm3Africa_fla.cars_63} [Farm3Africa_fla.cars_63]
"money"Symbol 822 MovieClip {Farm3Africa_fla.carOnTheRoad_62} [Farm3Africa_fla.carOnTheRoad_62] Frame 1Symbol 803 EditableText
"coins"Symbol 823 MovieClip {market.road.RoadTemlate} [market.road.RoadTemlate] Frame 1Symbol 760 MovieClip
"money"Symbol 823 MovieClip {market.road.RoadTemlate} [market.road.RoadTemlate] Frame 1Symbol 767 EditableText
"plane"Symbol 823 MovieClip {market.road.RoadTemlate} [market.road.RoadTemlate] Frame 1Symbol 804 MovieClip {Farm3Africa_fla.planeInTheSky_56} [Farm3Africa_fla.planeInTheSky_56]
"car"Symbol 823 MovieClip {market.road.RoadTemlate} [market.road.RoadTemlate] Frame 1Symbol 822 MovieClip {Farm3Africa_fla.carOnTheRoad_62} [Farm3Africa_fla.carOnTheRoad_62]
"caption"Symbol 828 MovieClip {WaterTooltipTemplate} [WaterTooltipTemplate] Frame 1Symbol 827 EditableText
"count"Symbol 857 MovieClip {Farm3Africa_fla.goalItem_49} [Farm3Africa_fla.goalItem_49] Frame 1Symbol 842 EditableText
"body"Symbol 857 MovieClip {Farm3Africa_fla.goalItem_49} [Farm3Africa_fla.goalItem_49] Frame 1Symbol 856 MovieClip {Farm3Africa_fla.productionbody_24} [Farm3Africa_fla.productionbody_24]
"collect"Symbol 860 MovieClip {ui.GoalsTemplate} [ui.GoalsTemplate] Frame 1Symbol 834 EditableText
"silverTime_txt"Symbol 860 MovieClip {ui.GoalsTemplate} [ui.GoalsTemplate] Frame 1Symbol 835 EditableText
"goldTime_txt"Symbol 860 MovieClip {ui.GoalsTemplate} [ui.GoalsTemplate] Frame 1Symbol 836 EditableText
"goldMoney_txt"Symbol 860 MovieClip {ui.GoalsTemplate} [ui.GoalsTemplate] Frame 1Symbol 838 EditableText
"silverMoney_txt"Symbol 860 MovieClip {ui.GoalsTemplate} [ui.GoalsTemplate] Frame 1Symbol 839 EditableText
"for_completing"Symbol 860 MovieClip {ui.GoalsTemplate} [ui.GoalsTemplate] Frame 1Symbol 840 EditableText
"money_txt"Symbol 860 MovieClip {ui.GoalsTemplate} [ui.GoalsTemplate] Frame 1Symbol 841 EditableText
"okBtn"Symbol 860 MovieClip {ui.GoalsTemplate} [ui.GoalsTemplate] Frame 1Symbol 99 MovieClip {Farm3Africa_fla.big_btn_48} [Farm3Africa_fla.big_btn_48]
"item0"Symbol 860 MovieClip {ui.GoalsTemplate} [ui.GoalsTemplate] Frame 1Symbol 857 MovieClip {Farm3Africa_fla.goalItem_49} [Farm3Africa_fla.goalItem_49]
"item1"Symbol 860 MovieClip {ui.GoalsTemplate} [ui.GoalsTemplate] Frame 1Symbol 857 MovieClip {Farm3Africa_fla.goalItem_49} [Farm3Africa_fla.goalItem_49]
"item2"Symbol 860 MovieClip {ui.GoalsTemplate} [ui.GoalsTemplate] Frame 1Symbol 857 MovieClip {Farm3Africa_fla.goalItem_49} [Farm3Africa_fla.goalItem_49]
"item3"Symbol 860 MovieClip {ui.GoalsTemplate} [ui.GoalsTemplate] Frame 1Symbol 857 MovieClip {Farm3Africa_fla.goalItem_49} [Farm3Africa_fla.goalItem_49]
"title"Symbol 860 MovieClip {ui.GoalsTemplate} [ui.GoalsTemplate] Frame 1Symbol 858 EditableText
"king_penguin"Symbol 873 MovieClip {ui.PetShopTemplate} [ui.PetShopTemplate] Frame 1Symbol 864 MovieClip {Farm3Africa_fla.pigIcon_mc_141} [Farm3Africa_fla.pigIcon_mc_141]
"penguin"Symbol 873 MovieClip {ui.PetShopTemplate} [ui.PetShopTemplate] Frame 1Symbol 867 MovieClip {Farm3Africa_fla.chickenIcon_mc_142} [Farm3Africa_fla.chickenIcon_mc_142]
"_mask"Symbol 1236 MovieClip {Farm3Africa_fla.hungryProgress_149} [Farm3Africa_fla.hungryProgress_149] Frame 1Symbol 720 MovieClip
"body"Symbol 1237 MovieClip {KingPenguinTemplate} [KingPenguinTemplate] Frame 1Symbol 1234 MovieClip {Farm3Africa_fla.SnaresPenguinBody_148} [Farm3Africa_fla.SnaresPenguinBody_148]
"hungryProgress"Symbol 1237 MovieClip {KingPenguinTemplate} [KingPenguinTemplate] Frame 1Symbol 1236 MovieClip {Farm3Africa_fla.hungryProgress_149} [Farm3Africa_fla.hungryProgress_149]
"time_txt"Symbol 1251 MovieClip {Farm3Africa_fla.purposesRibbon_6} [Farm3Africa_fla.purposesRibbon_6] Frame 1Symbol 1248 EditableText
"actual"Symbol 1279 MovieClip {Farm3Africa_fla.purposesItem_8} [Farm3Africa_fla.purposesItem_8] Frame 1Symbol 1256 EditableText
"required"Symbol 1279 MovieClip {Farm3Africa_fla.purposesItem_8} [Farm3Africa_fla.purposesItem_8] Frame 1Symbol 1258 EditableText
"tick"Symbol 1279 MovieClip {Farm3Africa_fla.purposesItem_8} [Farm3Africa_fla.purposesItem_8] Frame 1Symbol 228 MovieClip
"body"Symbol 1279 MovieClip {Farm3Africa_fla.purposesItem_8} [Farm3Africa_fla.purposesItem_8] Frame 1Symbol 1278 MovieClip {Farm3Africa_fla.productionbody_20_10} [Farm3Africa_fla.productionbody_20_10]
"aim_btn"Symbol 1280 MovieClip {ui.BottomPanelTemplate} [ui.BottomPanelTemplate] Frame 1Symbol 1244 MovieClip {Farm3Africa_fla.aim_btn_5} [Farm3Africa_fla.aim_btn_5]
"lenta"Symbol 1280 MovieClip {ui.BottomPanelTemplate} [ui.BottomPanelTemplate] Frame 1Symbol 1251 MovieClip {Farm3Africa_fla.purposesRibbon_6} [Farm3Africa_fla.purposesRibbon_6]
"time_txt"Symbol 1280 MovieClip {ui.BottomPanelTemplate} [ui.BottomPanelTemplate] Frame 1Symbol 1252 EditableText
"menuBtn"Symbol 1280 MovieClip {ui.BottomPanelTemplate} [ui.BottomPanelTemplate] Frame 1Symbol 34 MovieClip {Farm3Africa_fla.middleButton_7} [Farm3Africa_fla.middleButton_7]
"item0"Symbol 1280 MovieClip {ui.BottomPanelTemplate} [ui.BottomPanelTemplate] Frame 1Symbol 1279 MovieClip {Farm3Africa_fla.purposesItem_8} [Farm3Africa_fla.purposesItem_8]
"item1"Symbol 1280 MovieClip {ui.BottomPanelTemplate} [ui.BottomPanelTemplate] Frame 1Symbol 1279 MovieClip {Farm3Africa_fla.purposesItem_8} [Farm3Africa_fla.purposesItem_8]
"item2"Symbol 1280 MovieClip {ui.BottomPanelTemplate} [ui.BottomPanelTemplate] Frame 1Symbol 1279 MovieClip {Farm3Africa_fla.purposesItem_8} [Farm3Africa_fla.purposesItem_8]
"item3"Symbol 1280 MovieClip {ui.BottomPanelTemplate} [ui.BottomPanelTemplate] Frame 1Symbol 1279 MovieClip {Farm3Africa_fla.purposesItem_8} [Farm3Africa_fla.purposesItem_8]
"type_txt"Symbol 1286 MovieClip {Farm3Africa_fla.purposesItem_51} [Farm3Africa_fla.purposesItem_51] Frame 1Symbol 1284 EditableText
"count_txt"Symbol 1286 MovieClip {Farm3Africa_fla.purposesItem_51} [Farm3Africa_fla.purposesItem_51] Frame 1Symbol 1285 EditableText
"body"Symbol 1286 MovieClip {Farm3Africa_fla.purposesItem_51} [Farm3Africa_fla.purposesItem_51] Frame 1Symbol 856 MovieClip {Farm3Africa_fla.productionbody_24} [Farm3Africa_fla.productionbody_24]
"tick"Symbol 1286 MovieClip {Farm3Africa_fla.purposesItem_51} [Farm3Africa_fla.purposesItem_51] Frame 1Symbol 228 MovieClip
"title"Symbol 1287 MovieClip {ui.PurposesWindowTemplate} [ui.PurposesWindowTemplate] Frame 1Symbol 1283 EditableText
"okBtn"Symbol 1287 MovieClip {ui.PurposesWindowTemplate} [ui.PurposesWindowTemplate] Frame 1Symbol 99 MovieClip {Farm3Africa_fla.big_btn_48} [Farm3Africa_fla.big_btn_48]
"item0"Symbol 1287 MovieClip {ui.PurposesWindowTemplate} [ui.PurposesWindowTemplate] Frame 1Symbol 1286 MovieClip {Farm3Africa_fla.purposesItem_51} [Farm3Africa_fla.purposesItem_51]
"item1"Symbol 1287 MovieClip {ui.PurposesWindowTemplate} [ui.PurposesWindowTemplate] Frame 1Symbol 1286 MovieClip {Farm3Africa_fla.purposesItem_51} [Farm3Africa_fla.purposesItem_51]
"item2"Symbol 1287 MovieClip {ui.PurposesWindowTemplate} [ui.PurposesWindowTemplate] Frame 1Symbol 1286 MovieClip {Farm3Africa_fla.purposesItem_51} [Farm3Africa_fla.purposesItem_51]
"item3"Symbol 1287 MovieClip {ui.PurposesWindowTemplate} [ui.PurposesWindowTemplate] Frame 1Symbol 1286 MovieClip {Farm3Africa_fla.purposesItem_51} [Farm3Africa_fla.purposesItem_51]
"gold"Symbol 1313 MovieClip {MapNodeTemplate} [MapNodeTemplate] Frame 1Symbol 1292 MovieClip {Farm3Africa_fla.gold_113} [Farm3Africa_fla.gold_113]
"novel"Symbol 1313 MovieClip {MapNodeTemplate} [MapNodeTemplate] Frame 1Symbol 1297 MovieClip {Farm3Africa_fla.new_114} [Farm3Africa_fla.new_114]
"none"Symbol 1313 MovieClip {MapNodeTemplate} [MapNodeTemplate] Frame 1Symbol 1302 MovieClip {Farm3Africa_fla.none_115} [Farm3Africa_fla.none_115]
"normal"Symbol 1313 MovieClip {MapNodeTemplate} [MapNodeTemplate] Frame 1Symbol 1307 MovieClip {Farm3Africa_fla.normal_116} [Farm3Africa_fla.normal_116]
"silver"Symbol 1313 MovieClip {MapNodeTemplate} [MapNodeTemplate] Frame 1Symbol 1312 MovieClip {Farm3Africa_fla.silver_117} [Farm3Africa_fla.silver_117]
"caption"Symbol 1318 MovieClip {SimpleTooltipTemplate} [SimpleTooltipTemplate] Frame 1Symbol 1317 EditableText
"okBtn"Symbol 1318 MovieClip {SimpleTooltipTemplate} [SimpleTooltipTemplate] Frame 1Symbol 34 MovieClip {Farm3Africa_fla.middleButton_7} [Farm3Africa_fla.middleButton_7]
"avatar"Symbol 1325 MovieClip {Farm3Africa_fla.photo_132} [Farm3Africa_fla.photo_132] Frame 1Symbol 1324 MovieClip
"title"Symbol 1326 MovieClip {LeaderboardItemTemplate} [LeaderboardItemTemplate] Frame 1Symbol 1321 EditableText
"score"Symbol 1326 MovieClip {LeaderboardItemTemplate} [LeaderboardItemTemplate] Frame 1Symbol 1322 EditableText
"place"Symbol 1326 MovieClip {LeaderboardItemTemplate} [LeaderboardItemTemplate] Frame 1Symbol 1323 EditableText
"image"Symbol 1326 MovieClip {LeaderboardItemTemplate} [LeaderboardItemTemplate] Frame 1Symbol 1325 MovieClip {Farm3Africa_fla.photo_132} [Farm3Africa_fla.photo_132]
"body"Symbol 1331 MovieClip {game.assets.GrassTemplate} [game.assets.GrassTemplate] Frame 1Symbol 1330 MovieClip {Farm3Africa_fla.bodyGrass_84} [Farm3Africa_fla.bodyGrass_84]
"plane"Symbol 1352 MovieClip {market.ImportWindowTemplate} [market.ImportWindowTemplate] Frame 1Symbol 1342 MovieClip {Farm3Africa_fla.plane_77} [Farm3Africa_fla.plane_77]
"cancelBtn"Symbol 1352 MovieClip {market.ImportWindowTemplate} [market.ImportWindowTemplate] Frame 1Symbol 99 MovieClip {Farm3Africa_fla.big_btn_48} [Farm3Africa_fla.big_btn_48]
"okBtn"Symbol 1352 MovieClip {market.ImportWindowTemplate} [market.ImportWindowTemplate] Frame 1Symbol 99 MovieClip {Farm3Africa_fla.big_btn_48} [Farm3Africa_fla.big_btn_48]
"money"Symbol 1352 MovieClip {market.ImportWindowTemplate} [market.ImportWindowTemplate] Frame 1Symbol 1343 EditableText
"boxline"Symbol 1352 MovieClip {market.ImportWindowTemplate} [market.ImportWindowTemplate] Frame 1Symbol 1349 MovieClip {Farm3Africa_fla.boxlineExpor_78} [Farm3Africa_fla.boxlineExpor_78]
"title"Symbol 1352 MovieClip {market.ImportWindowTemplate} [market.ImportWindowTemplate] Frame 1Symbol 1351 EditableText
"body"Symbol 1364 MovieClip {vehicles.PlaneTemplate} [vehicles.PlaneTemplate] Frame 1Symbol 1361 MovieClip {Farm3Africa_fla.plane_body_27} [Farm3Africa_fla.plane_body_27]
"activeArea"Symbol 1364 MovieClip {vehicles.PlaneTemplate} [vehicles.PlaneTemplate] Frame 1Symbol 1363 MovieClip
"body"Symbol 1374 MovieClip {vehicles.CarTemplate} [vehicles.CarTemplate] Frame 1Symbol 1373 MovieClip {Farm3Africa_fla.body_46} [Farm3Africa_fla.body_46]
"body"Symbol 1386 MovieClip {CakeHouseTemplate} [CakeHouseTemplate] Frame 1Symbol 1385 MovieClip {Farm3Africa_fla.cake_body_34} [Farm3Africa_fla.cake_body_34]
"activeArea"Symbol 1386 MovieClip {CakeHouseTemplate} [CakeHouseTemplate] Frame 1Symbol 1363 MovieClip
"body"Symbol 1396 MovieClip {houses.DepotTemplate} [houses.DepotTemplate] Frame 1Symbol 1395 MovieClip {Farm3Africa_fla.sklads_38} [Farm3Africa_fla.sklads_38]
"body"Symbol 1408 MovieClip {PowderedHouseTemplate} [PowderedHouseTemplate] Frame 1Symbol 1407 MovieClip {Farm3Africa_fla.DriedEggs_body_36} [Farm3Africa_fla.DriedEggs_body_36]
"activeArea"Symbol 1408 MovieClip {PowderedHouseTemplate} [PowderedHouseTemplate] Frame 1Symbol 1363 MovieClip
"body"Symbol 1420 MovieClip {FlouryCakeHouseTemplate} [FlouryCakeHouseTemplate] Frame 1Symbol 1419 MovieClip {Farm3Africa_fla.FlouryCake_body_32} [Farm3Africa_fla.FlouryCake_body_32]
"activeArea"Symbol 1420 MovieClip {FlouryCakeHouseTemplate} [FlouryCakeHouseTemplate] Frame 1Symbol 1363 MovieClip
"price"Symbol 1430 MovieClip {Farm3Africa_fla.buyButton_86} [Farm3Africa_fla.buyButton_86] Frame 1Symbol 1426 EditableText
"buyButton"Symbol 1431 MovieClip {houses.HousePlateTemplate} [houses.HousePlateTemplate] Frame 1Symbol 1430 MovieClip {Farm3Africa_fla.buyButton_86} [Farm3Africa_fla.buyButton_86]
"body"Symbol 1443 MovieClip {IncubatorTemplate} [IncubatorTemplate] Frame 1Symbol 1442 MovieClip {Farm3Africa_fla.incubator_body_30} [Farm3Africa_fla.incubator_body_30]
"activeArea"Symbol 1443 MovieClip {IncubatorTemplate} [IncubatorTemplate] Frame 1Symbol 1363 MovieClip
"body"Symbol 1447 MovieClip {production.PruductionTemplate} [production.PruductionTemplate] Frame 1Symbol 856 MovieClip {Farm3Africa_fla.productionbody_24} [Farm3Africa_fla.productionbody_24]
"parashute"Symbol 1447 MovieClip {production.PruductionTemplate} [production.PruductionTemplate] Frame 1Symbol 1446 MovieClip
"body"Symbol 1704 MovieClip {PolarBearTemplate} [PolarBearTemplate] Frame 1Symbol 1690 MovieClip {Farm3Africa_fla.body_144} [Farm3Africa_fla.body_144]
"hit"Symbol 1704 MovieClip {PolarBearTemplate} [PolarBearTemplate] Frame 1Symbol 1692 MovieClip
"buildCage"Symbol 1704 MovieClip {PolarBearTemplate} [PolarBearTemplate] Frame 1Symbol 1703 MovieClip {Farm3Africa_fla.buildCage_146} [Farm3Africa_fla.buildCage_146]
"caption"Symbol 1712 MovieClip {Farm3Africa_fla.smalButton_74} [Farm3Africa_fla.smalButton_74] Frame 1Symbol 1709 EditableText
"cost"Symbol 1713 MovieClip {market.ImportItemTemplate} [market.ImportItemTemplate] Frame 1Symbol 1706 EditableText
"product"Symbol 1713 MovieClip {market.ImportItemTemplate} [market.ImportItemTemplate] Frame 1Symbol 1278 MovieClip {Farm3Africa_fla.productionbody_20_10} [Farm3Africa_fla.productionbody_20_10]
"one"Symbol 1713 MovieClip {market.ImportItemTemplate} [market.ImportItemTemplate] Frame 1Symbol 1712 MovieClip {Farm3Africa_fla.smalButton_74} [Farm3Africa_fla.smalButton_74]
"five"Symbol 1713 MovieClip {market.ImportItemTemplate} [market.ImportItemTemplate] Frame 1Symbol 1712 MovieClip {Farm3Africa_fla.smalButton_74} [Farm3Africa_fla.smalButton_74]
"ten"Symbol 1713 MovieClip {market.ImportItemTemplate} [market.ImportItemTemplate] Frame 1Symbol 1712 MovieClip {Farm3Africa_fla.smalButton_74} [Farm3Africa_fla.smalButton_74]
"_mask"Symbol 1717 MovieClip {Farm3Africa_fla._line__71} [Farm3Africa_fla._line__71] Frame 1Symbol 1715 MovieClip
"progress"Symbol 1719 MovieClip {market.BoxTemplate} [market.BoxTemplate] Frame 1Symbol 1717 MovieClip {Farm3Africa_fla._line__71} [Farm3Africa_fla._line__71]
"progress"Symbol 1719 MovieClip {market.BoxTemplate} [market.BoxTemplate] Frame 1Symbol 1717 MovieClip {Farm3Africa_fla._line__71} [Farm3Africa_fla._line__71]
"body"Symbol 1719 MovieClip {market.BoxTemplate} [market.BoxTemplate] Frame 1Symbol 1278 MovieClip {Farm3Africa_fla.productionbody_20_10} [Farm3Africa_fla.productionbody_20_10]
"caption"Symbol 1726 MovieClip {houses.UpgradeButtonTemplate} [houses.UpgradeButtonTemplate] Frame 1Symbol 1723 EditableText
"progressMask"Symbol 1741 MovieClip {Farm3Africa_fla.waterline_mc_41} [Farm3Africa_fla.waterline_mc_41] Frame 1Symbol 1738 MovieClip
"caption"Symbol 1744 MovieClip {Farm3Africa_fla.money_43} [Farm3Africa_fla.money_43] Frame 1Symbol 1742 EditableText
"body"Symbol 1747 MovieClip {houses.WellTemplate} [houses.WellTemplate] Frame 1Symbol 1735 MovieClip {Farm3Africa_fla.wellcopy_40} [Farm3Africa_fla.wellcopy_40]
"waterline"Symbol 1747 MovieClip {houses.WellTemplate} [houses.WellTemplate] Frame 1Symbol 1741 MovieClip {Farm3Africa_fla.waterline_mc_41} [Farm3Africa_fla.waterline_mc_41]
"money"Symbol 1747 MovieClip {houses.WellTemplate} [houses.WellTemplate] Frame 1Symbol 1744 MovieClip {Farm3Africa_fla.money_43} [Farm3Africa_fla.money_43]
"activeArea"Symbol 1747 MovieClip {houses.WellTemplate} [houses.WellTemplate] Frame 1Symbol 1746 MovieClip
"line"Symbol 1754 MovieClip {WorkLineTemplate} [WorkLineTemplate] Frame 1Symbol 1751 MovieClip
"body"Symbol 1770 MovieClip {production.DepotProductTemplate} [production.DepotProductTemplate] Frame 1Symbol 1769 MovieClip {Farm3Africa_fla.body_127} [Farm3Africa_fla.body_127]
"car"Symbol 1784 MovieClip {market.ExportWindowTemplate} [market.ExportWindowTemplate] Frame 1Symbol 1781 MovieClip {Farm3Africa_fla.car0_69} [Farm3Africa_fla.car0_69]
"cancelBtn"Symbol 1784 MovieClip {market.ExportWindowTemplate} [market.ExportWindowTemplate] Frame 1Symbol 99 MovieClip {Farm3Africa_fla.big_btn_48} [Farm3Africa_fla.big_btn_48]
"money"Symbol 1784 MovieClip {market.ExportWindowTemplate} [market.ExportWindowTemplate] Frame 1Symbol 1782 EditableText
"okBtn"Symbol 1784 MovieClip {market.ExportWindowTemplate} [market.ExportWindowTemplate] Frame 1Symbol 99 MovieClip {Farm3Africa_fla.big_btn_48} [Farm3Africa_fla.big_btn_48]
"title"Symbol 1784 MovieClip {market.ExportWindowTemplate} [market.ExportWindowTemplate] Frame 1Symbol 1783 EditableText
"count"Symbol 1790 MovieClip {market.ExportItemTemplate} [market.ExportItemTemplate] Frame 1Symbol 1785 EditableText
"cost"Symbol 1790 MovieClip {market.ExportItemTemplate} [market.ExportItemTemplate] Frame 1Symbol 1786 EditableText
"one"Symbol 1790 MovieClip {market.ExportItemTemplate} [market.ExportItemTemplate] Frame 1Symbol 1712 MovieClip {Farm3Africa_fla.smalButton_74} [Farm3Africa_fla.smalButton_74]
"all"Symbol 1790 MovieClip {market.ExportItemTemplate} [market.ExportItemTemplate] Frame 1Symbol 1712 MovieClip {Farm3Africa_fla.smalButton_74} [Farm3Africa_fla.smalButton_74]
"product"Symbol 1790 MovieClip {market.ExportItemTemplate} [market.ExportItemTemplate] Frame 1Symbol 1278 MovieClip {Farm3Africa_fla.productionbody_20_10} [Farm3Africa_fla.productionbody_20_10]

Special Tags

FileAttributes (69)Timeline Frame 1Access local files only, Metadata present, AS3.
SWFMetaData (77)Timeline Frame 1457 bytes "<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#'><rdf:Description rdf:about='' xmlns ..."
ScriptLimits (65)Timeline Frame 1MaxRecursionDepth: 1000, ScriptTimeout: 60 seconds
ExportAssets (56)Timeline Frame 1Symbol 24 as "PreloaderTemplate"
ExportAssets (56)Timeline Frame 1Symbol 36 as "QuitDialogTemplate"
ExportAssets (56)Timeline Frame 1Symbol 45 as "InstallWindowTemplate"
ExportAssets (56)Timeline Frame 1Symbol 11 as "Farm3Africa_fla._progress_99"
ExportAssets (56)Timeline Frame 1Symbol 16 as "Farm3Africa_fla.alawar_94"
ExportAssets (56)Timeline Frame 1Symbol 34 as "Farm3Africa_fla.middleButton_7"
ExportAssets (56)Timeline Frame 1Symbol 46 as "car_came"
ExportAssets (56)Timeline Frame 1Symbol 47 as "ui_button_hover"
ExportAssets (56)Timeline Frame 1Symbol 48 as "guinea_fowl_voice"
ExportAssets (56)Timeline Frame 1Symbol 49 as "music_mainmenu"
ExportAssets (56)Timeline Frame 1Symbol 50 as "house_board_landing"
ExportAssets (56)Timeline Frame 1Symbol 51 as "light_pet_landing"
ExportAssets (56)Timeline Frame 1Symbol 52 as "house_landing"
ExportAssets (56)Timeline Frame 1Symbol 53 as "lion_scream"
ExportAssets (56)Timeline Frame 1Symbol 54 as "action_watering"
ExportAssets (56)Timeline Frame 1Symbol 55 as "action_well"
ExportAssets (56)Timeline Frame 1Symbol 56 as "airplane_flyin"
ExportAssets (56)Timeline Frame 1Symbol 57 as "ostrich_flyout"
ExportAssets (56)Timeline Frame 1Symbol 58 as "action_upgrade"
ExportAssets (56)Timeline Frame 1Symbol 59 as "house_click"
ExportAssets (56)Timeline Frame 1Symbol 60 as "fool_action"
ExportAssets (56)Timeline Frame 1Symbol 61 as "guinea_fowl_die"
ExportAssets (56)Timeline Frame 1Symbol 62 as "ui_button_click"
ExportAssets (56)Timeline Frame 1Symbol 63 as "ostrich_hungry"
ExportAssets (56)Timeline Frame 1Symbol 64 as "tick_money"
ExportAssets (56)Timeline Frame 1Symbol 65 as "product_crack"
ExportAssets (56)Timeline Frame 1Symbol 66 as "product_landing"
ExportAssets (56)Timeline Frame 1Symbol 67 as "heavy_pet_landing"
ExportAssets (56)Timeline Frame 1Symbol 68 as "ostrich_die"
ExportAssets (56)Timeline Frame 1Symbol 69 as "fanfare_best_time"
ExportAssets (56)Timeline Frame 1Symbol 70 as "cage_broke_bear_flee"
ExportAssets (56)Timeline Frame 1Symbol 71 as "tick_time"
ExportAssets (56)Timeline Frame 1Symbol 72 as "action_well_auto"
ExportAssets (56)Timeline Frame 1Symbol 73 as "product_take"
ExportAssets (56)Timeline Frame 1Symbol 74 as "fanfare_aim"
ExportAssets (56)Timeline Frame 1Symbol 75 as "ui_panel_showing"
ExportAssets (56)Timeline Frame 1Symbol 76 as "guinea_fowl_flyout"
ExportAssets (56)Timeline Frame 1Symbol 77 as "cage_click"
ExportAssets (56)Timeline Frame 1Symbol 78 as "cage_breaking"
ExportAssets (56)Timeline Frame 1Symbol 79 as "guinea_fowl_hungry"
ExportAssets (56)Timeline Frame 1Symbol 80 as "item_add"
ExportAssets (56)Timeline Frame 1Symbol 81 as "action_sell_buy"
ExportAssets (56)Timeline Frame 1Symbol 82 as "ostrich_voice"
ExportAssets (56)Timeline Frame 1Symbol 83 as "music_game"
ExportAssets (56)Timeline Frame 1Symbol 84 as "fanfare_level_complete"
ExportAssets (56)Timeline Frame 1Symbol 85 as "item_cancel"
ExportAssets (56)Timeline Frame 1Symbol 86 as "fanfare_medal"
ExportAssets (56)Timeline Frame 1Symbol 87 as "enemy_landing"
ExportAssets (56)Timeline Frame 1Symbol 8 as "Farm3Africa_fla._line_100"
ExportAssets (56)Timeline Frame 1Symbol 88 as "ru.rambler.games.assets.DefaultStartSound"
ExportAssets (56)Timeline Frame 1Symbol 89 as "utils.Fonts_dfont"
ExportAssets (56)Timeline Frame 1Symbol 90 as "utils.Fonts_dfontBold"
ExportAssets (56)Timeline Frame 2Symbol 100 as "ui.GameMenuTemplate"
ExportAssets (56)Timeline Frame 2Symbol 121 as "MapTemplate"
ExportAssets (56)Timeline Frame 2Symbol 149 as "TooltipTemplate"
ExportAssets (56)Timeline Frame 2Symbol 152 as "BackgroundTemplate"
ExportAssets (56)Timeline Frame 2Symbol 179 as "StartScreenTemplate"
ExportAssets (56)Timeline Frame 2Symbol 191 as "BlockTooltipTemplate"
ExportAssets (56)Timeline Frame 2Symbol 201 as "QuitMenuTemplate"
ExportAssets (56)Timeline Frame 2Symbol 206 as "MapTooltipTempalte"
ExportAssets (56)Timeline Frame 2Symbol 336 as "ShopTemplate"
ExportAssets (56)Timeline Frame 2Symbol 340 as "ArrowTemplate"
ExportAssets (56)Timeline Frame 2Symbol 361 as "VLeaderboardTemplate"
ExportAssets (56)Timeline Frame 2Symbol 364 as "EndScreenTemplate"
ExportAssets (56)Timeline Frame 2Symbol 725 as "PenguinTemplate"
ExportAssets (56)Timeline Frame 2Symbol 763 as "ui.ResultsWindowTemplate"
ExportAssets (56)Timeline Frame 2Symbol 823 as "market.road.RoadTemlate"
ExportAssets (56)Timeline Frame 2Symbol 828 as "WaterTooltipTemplate"
ExportAssets (56)Timeline Frame 2Symbol 860 as "ui.GoalsTemplate"
ExportAssets (56)Timeline Frame 2Symbol 873 as "ui.PetShopTemplate"
ExportAssets (56)Timeline Frame 2Symbol 1237 as "KingPenguinTemplate"
ExportAssets (56)Timeline Frame 2Symbol 1280 as "ui.BottomPanelTemplate"
ExportAssets (56)Timeline Frame 2Symbol 1287 as "ui.PurposesWindowTemplate"
ExportAssets (56)Timeline Frame 2Symbol 99 as "Farm3Africa_fla.big_btn_48"
ExportAssets (56)Timeline Frame 2Symbol 110 as "Farm3Africa_fla.buyBtn_89"
ExportAssets (56)Timeline Frame 2Symbol 120 as "Farm3Africa_fla.bottomPanel_120"
ExportAssets (56)Timeline Frame 2Symbol 1313 as "MapNodeTemplate"
ExportAssets (56)Timeline Frame 2Symbol 148 as "Farm3Africa_fla.items_110"
ExportAssets (56)Timeline Frame 2Symbol 178 as "Farm3Africa_fla.playerPanel_96"
ExportAssets (56)Timeline Frame 2Symbol 159 as "Farm3Africa_fla.logo_mc_91"
ExportAssets (56)Timeline Frame 2Symbol 166 as "Farm3Africa_fla.soundControl_92"
ExportAssets (56)Timeline Frame 2Symbol 1314 as "com.kongregate.as3.client.KongregateAPI"
ExportAssets (56)Timeline Frame 2Symbol 190 as "Farm3Africa_fla.helpBlockToolTip_104"
ExportAssets (56)Timeline Frame 2Symbol 199 as "Farm3Africa_fla.pig_82"
ExportAssets (56)Timeline Frame 2Symbol 236 as "Farm3Africa_fla.wellShop_12"
ExportAssets (56)Timeline Frame 2Symbol 246 as "Farm3Africa_fla.depot_15"
ExportAssets (56)Timeline Frame 2Symbol 276 as "Farm3Africa_fla.cage_18"
ExportAssets (56)Timeline Frame 2Symbol 321 as "Farm3Africa_fla.floury_cake_21"
ExportAssets (56)Timeline Frame 2Symbol 266 as "Farm3Africa_fla.plane_17"
ExportAssets (56)Timeline Frame 2Symbol 293 as "Farm3Africa_fla.dried_19"
ExportAssets (56)Timeline Frame 2Symbol 256 as "Farm3Africa_fla.carShop_16"
ExportAssets (56)Timeline Frame 2Symbol 335 as "Farm3Africa_fla.incubator_22"
ExportAssets (56)Timeline Frame 2Symbol 307 as "Farm3Africa_fla.Cake_20"
ExportAssets (56)Timeline Frame 2Symbol 1318 as "SimpleTooltipTemplate"
ExportAssets (56)Timeline Frame 2Symbol 360 as "Farm3Africa_fla.__preloader_138"
ExportAssets (56)Timeline Frame 2Symbol 1326 as "LeaderboardItemTemplate"
ExportAssets (56)Timeline Frame 2Symbol 723 as "Farm3Africa_fla.hungryProgress_153"
ExportAssets (56)Timeline Frame 2Symbol 719 as "Farm3Africa_fla.body_152"
ExportAssets (56)Timeline Frame 2Symbol 1331 as "game.assets.GrassTemplate"
ExportAssets (56)Timeline Frame 2Symbol 741 as "Farm3Africa_fla.kubok_53"
ExportAssets (56)Timeline Frame 2Symbol 822 as "Farm3Africa_fla.carOnTheRoad_62"
ExportAssets (56)Timeline Frame 2Symbol 804 as "Farm3Africa_fla.planeInTheSky_56"
ExportAssets (56)Timeline Frame 2Symbol 1352 as "market.ImportWindowTemplate"
ExportAssets (56)Timeline Frame 2Symbol 1364 as "vehicles.PlaneTemplate"
ExportAssets (56)Timeline Frame 2Symbol 1374 as "vehicles.CarTemplate"
ExportAssets (56)Timeline Frame 2Symbol 1386 as "CakeHouseTemplate"
ExportAssets (56)Timeline Frame 2Symbol 1396 as "houses.DepotTemplate"
ExportAssets (56)Timeline Frame 2Symbol 1408 as "PowderedHouseTemplate"
ExportAssets (56)Timeline Frame 2Symbol 1420 as "FlouryCakeHouseTemplate"
ExportAssets (56)Timeline Frame 2Symbol 1431 as "houses.HousePlateTemplate"
ExportAssets (56)Timeline Frame 2Symbol 1443 as "IncubatorTemplate"
ExportAssets (56)Timeline Frame 2Symbol 857 as "Farm3Africa_fla.goalItem_49"
ExportAssets (56)Timeline Frame 2Symbol 867 as "Farm3Africa_fla.chickenIcon_mc_142"
ExportAssets (56)Timeline Frame 2Symbol 864 as "Farm3Africa_fla.pigIcon_mc_141"
ExportAssets (56)Timeline Frame 2Symbol 1234 as "Farm3Africa_fla.SnaresPenguinBody_148"
ExportAssets (56)Timeline Frame 2Symbol 1236 as "Farm3Africa_fla.hungryProgress_149"
ExportAssets (56)Timeline Frame 2Symbol 1447 as "production.PruductionTemplate"
ExportAssets (56)Timeline Frame 2Symbol 1449 as "game.assets.FieldTemplate"
ExportAssets (56)Timeline Frame 2Symbol 1704 as "PolarBearTemplate"
ExportAssets (56)Timeline Frame 2Symbol 1244 as "Farm3Africa_fla.aim_btn_5"
ExportAssets (56)Timeline Frame 2Symbol 1279 as "Farm3Africa_fla.purposesItem_8"
ExportAssets (56)Timeline Frame 2Symbol 1251 as "Farm3Africa_fla.purposesRibbon_6"
ExportAssets (56)Timeline Frame 2Symbol 1286 as "Farm3Africa_fla.purposesItem_51"
ExportAssets (56)Timeline Frame 2Symbol 119 as "Farm3Africa_fla.middleBtn_121"
ExportAssets (56)Timeline Frame 2Symbol 1297 as "Farm3Africa_fla.new_114"
ExportAssets (56)Timeline Frame 2Symbol 1312 as "Farm3Africa_fla.silver_117"
ExportAssets (56)Timeline Frame 2Symbol 1307 as "Farm3Africa_fla.normal_116"
ExportAssets (56)Timeline Frame 2Symbol 1302 as "Farm3Africa_fla.none_115"
ExportAssets (56)Timeline Frame 2Symbol 1292 as "Farm3Africa_fla.gold_113"
ExportAssets (56)Timeline Frame 2Symbol 177 as "Farm3Africa_fla.okBtn_97"
ExportAssets (56)Timeline Frame 2Symbol 189 as "Farm3Africa_fla.okButton_105"
ExportAssets (56)Timeline Frame 2Symbol 225 as "Farm3Africa_fla.buyButton_14"
ExportAssets (56)Timeline Frame 2Symbol 216 as "Farm3Africa_fla.bg_13"
ExportAssets (56)Timeline Frame 2Symbol 1325 as "Farm3Africa_fla.photo_132"
ExportAssets (56)Timeline Frame 2Symbol 1330 as "Farm3Africa_fla.bodyGrass_84"
ExportAssets (56)Timeline Frame 2Symbol 821 as "Farm3Africa_fla.cars_63"
ExportAssets (56)Timeline Frame 2Symbol 802 as "Farm3Africa_fla.planes_57"
ExportAssets (56)Timeline Frame 2Symbol 1349 as "Farm3Africa_fla.boxlineExpor_78"
ExportAssets (56)Timeline Frame 2Symbol 1342 as "Farm3Africa_fla.plane_77"
ExportAssets (56)Timeline Frame 2Symbol 1713 as "market.ImportItemTemplate"
ExportAssets (56)Timeline Frame 2Symbol 1719 as "market.BoxTemplate"
ExportAssets (56)Timeline Frame 2Symbol 1361 as "Farm3Africa_fla.plane_body_27"
ExportAssets (56)Timeline Frame 2Symbol 1726 as "houses.UpgradeButtonTemplate"
ExportAssets (56)Timeline Frame 2Symbol 1373 as "Farm3Africa_fla.body_46"
ExportAssets (56)Timeline Frame 2Symbol 1747 as "houses.WellTemplate"
ExportAssets (56)Timeline Frame 2Symbol 1385 as "Farm3Africa_fla.cake_body_34"
ExportAssets (56)Timeline Frame 2Symbol 1754 as "WorkLineTemplate"
ExportAssets (56)Timeline Frame 2Symbol 1395 as "Farm3Africa_fla.sklads_38"
ExportAssets (56)Timeline Frame 2Symbol 1770 as "production.DepotProductTemplate"
ExportAssets (56)Timeline Frame 2Symbol 1784 as "market.ExportWindowTemplate"
ExportAssets (56)Timeline Frame 2Symbol 1407 as "Farm3Africa_fla.DriedEggs_body_36"
ExportAssets (56)Timeline Frame 2Symbol 1419 as "Farm3Africa_fla.FlouryCake_body_32"
ExportAssets (56)Timeline Frame 2Symbol 1430 as "Farm3Africa_fla.buyButton_86"
ExportAssets (56)Timeline Frame 2Symbol 1442 as "Farm3Africa_fla.incubator_body_30"
ExportAssets (56)Timeline Frame 2Symbol 856 as "Farm3Africa_fla.productionbody_24"
ExportAssets (56)Timeline Frame 2Symbol 1703 as "Farm3Africa_fla.buildCage_146"
ExportAssets (56)Timeline Frame 2Symbol 1690 as "Farm3Africa_fla.body_144"
ExportAssets (56)Timeline Frame 2Symbol 1278 as "Farm3Africa_fla.productionbody_20_10"
ExportAssets (56)Timeline Frame 2Symbol 1712 as "Farm3Africa_fla.smalButton_74"
ExportAssets (56)Timeline Frame 2Symbol 1717 as "Farm3Africa_fla._line__71"
ExportAssets (56)Timeline Frame 2Symbol 1744 as "Farm3Africa_fla.money_43"
ExportAssets (56)Timeline Frame 2Symbol 1735 as "Farm3Africa_fla.wellcopy_40"
ExportAssets (56)Timeline Frame 2Symbol 1741 as "Farm3Africa_fla.waterline_mc_41"
ExportAssets (56)Timeline Frame 2Symbol 1769 as "Farm3Africa_fla.body_127"
ExportAssets (56)Timeline Frame 2Symbol 1781 as "Farm3Africa_fla.car0_69"
ExportAssets (56)Timeline Frame 2Symbol 1790 as "market.ExportItemTemplate"
EnableDebugger2 (64)Timeline Frame 131 bytes "u.$1$QJ$qiACXdyerkaMwEHGVDsk6.."
DebugMX1 (63)Timeline Frame 1
SerialNumber (41)Timeline Frame 1

Labels

"Farm2"Frame 1
"Farm3Africa"Frame 2
"en"Symbol 16 MovieClip {Farm3Africa_fla.alawar_94} [Farm3Africa_fla.alawar_94] Frame 1
"ru"Symbol 16 MovieClip {Farm3Africa_fla.alawar_94} [Farm3Africa_fla.alawar_94] Frame 4
"up"Symbol 34 MovieClip {Farm3Africa_fla.middleButton_7} [Farm3Africa_fla.middleButton_7] Frame 1
"over"Symbol 34 MovieClip {Farm3Africa_fla.middleButton_7} [Farm3Africa_fla.middleButton_7] Frame 2
"down"Symbol 34 MovieClip {Farm3Africa_fla.middleButton_7} [Farm3Africa_fla.middleButton_7] Frame 3
"disabled"Symbol 34 MovieClip {Farm3Africa_fla.middleButton_7} [Farm3Africa_fla.middleButton_7] Frame 4
"up"Symbol 99 MovieClip {Farm3Africa_fla.big_btn_48} [Farm3Africa_fla.big_btn_48] Frame 1
"over"Symbol 99 MovieClip {Farm3Africa_fla.big_btn_48} [Farm3Africa_fla.big_btn_48] Frame 2
"down"Symbol 99 MovieClip {Farm3Africa_fla.big_btn_48} [Farm3Africa_fla.big_btn_48] Frame 3
"disabled"Symbol 99 MovieClip {Farm3Africa_fla.big_btn_48} [Farm3Africa_fla.big_btn_48] Frame 4
"up"Symbol 119 MovieClip {Farm3Africa_fla.middleBtn_121} [Farm3Africa_fla.middleBtn_121] Frame 1
"over"Symbol 119 MovieClip {Farm3Africa_fla.middleBtn_121} [Farm3Africa_fla.middleBtn_121] Frame 2
"down"Symbol 119 MovieClip {Farm3Africa_fla.middleBtn_121} [Farm3Africa_fla.middleBtn_121] Frame 3
"disabled"Symbol 119 MovieClip {Farm3Africa_fla.middleBtn_121} [Farm3Africa_fla.middleBtn_121] Frame 4
"DEPOT"Symbol 148 MovieClip {Farm3Africa_fla.items_110} [Farm3Africa_fla.items_110] Frame 2
"PLANE"Symbol 148 MovieClip {Farm3Africa_fla.items_110} [Farm3Africa_fla.items_110] Frame 3
"PENGUIN"Symbol 148 MovieClip {Farm3Africa_fla.items_110} [Farm3Africa_fla.items_110] Frame 4
"KING_PENGUIN"Symbol 148 MovieClip {Farm3Africa_fla.items_110} [Farm3Africa_fla.items_110] Frame 5
"DRIED_EGGS"Symbol 148 MovieClip {Farm3Africa_fla.items_110} [Farm3Africa_fla.items_110] Frame 6
"INCUBATOR"Symbol 148 MovieClip {Farm3Africa_fla.items_110} [Farm3Africa_fla.items_110] Frame 7
"CAKE"Symbol 148 MovieClip {Farm3Africa_fla.items_110} [Farm3Africa_fla.items_110] Frame 8
"FLOURY_CAKE"Symbol 148 MovieClip {Farm3Africa_fla.items_110} [Farm3Africa_fla.items_110] Frame 9
"en"Symbol 159 MovieClip {Farm3Africa_fla.logo_mc_91} [Farm3Africa_fla.logo_mc_91] Frame 1
"ru"Symbol 159 MovieClip {Farm3Africa_fla.logo_mc_91} [Farm3Africa_fla.logo_mc_91] Frame 6
"on"Symbol 166 MovieClip {Farm3Africa_fla.soundControl_92} [Farm3Africa_fla.soundControl_92] Frame 1
"off"Symbol 166 MovieClip {Farm3Africa_fla.soundControl_92} [Farm3Africa_fla.soundControl_92] Frame 2
"up"Symbol 177 MovieClip {Farm3Africa_fla.okBtn_97} [Farm3Africa_fla.okBtn_97] Frame 1
"over"Symbol 177 MovieClip {Farm3Africa_fla.okBtn_97} [Farm3Africa_fla.okBtn_97] Frame 2
"down"Symbol 177 MovieClip {Farm3Africa_fla.okBtn_97} [Farm3Africa_fla.okBtn_97] Frame 3
"disabled"Symbol 177 MovieClip {Farm3Africa_fla.okBtn_97} [Farm3Africa_fla.okBtn_97] Frame 4
"up"Symbol 189 MovieClip {Farm3Africa_fla.okButton_105} [Farm3Africa_fla.okButton_105] Frame 1
"over"Symbol 189 MovieClip {Farm3Africa_fla.okButton_105} [Farm3Africa_fla.okButton_105] Frame 2
"down"Symbol 189 MovieClip {Farm3Africa_fla.okButton_105} [Farm3Africa_fla.okButton_105] Frame 3
"active"Symbol 225 MovieClip {Farm3Africa_fla.buyButton_14} [Farm3Africa_fla.buyButton_14] Frame 1
"over"Symbol 225 MovieClip {Farm3Africa_fla.buyButton_14} [Farm3Africa_fla.buyButton_14] Frame 8
"press"Symbol 225 MovieClip {Farm3Africa_fla.buyButton_14} [Farm3Africa_fla.buyButton_14] Frame 14
"disable"Symbol 225 MovieClip {Farm3Africa_fla.buyButton_14} [Farm3Africa_fla.buyButton_14] Frame 19
"death"Symbol 719 MovieClip {Farm3Africa_fla.body_152} [Farm3Africa_fla.body_152] Frame 1
"left"Symbol 719 MovieClip {Farm3Africa_fla.body_152} [Farm3Africa_fla.body_152] Frame 25
"down_left"Symbol 719 MovieClip {Farm3Africa_fla.body_152} [Farm3Africa_fla.body_152] Frame 49
"up"Symbol 719 MovieClip {Farm3Africa_fla.body_152} [Farm3Africa_fla.body_152] Frame 73
"left_up"Symbol 719 MovieClip {Farm3Africa_fla.body_152} [Farm3Africa_fla.body_152] Frame 97
"down"Symbol 719 MovieClip {Farm3Africa_fla.body_152} [Farm3Africa_fla.body_152] Frame 121
"eat"Symbol 719 MovieClip {Farm3Africa_fla.body_152} [Farm3Africa_fla.body_152] Frame 145
"gold"Symbol 741 MovieClip {Farm3Africa_fla.kubok_53} [Farm3Africa_fla.kubok_53] Frame 1
"silver"Symbol 741 MovieClip {Farm3Africa_fla.kubok_53} [Farm3Africa_fla.kubok_53] Frame 2
"EGG"Symbol 856 MovieClip {Farm3Africa_fla.productionbody_24} [Farm3Africa_fla.productionbody_24] Frame 1
"DRIED_EGGS"Symbol 856 MovieClip {Farm3Africa_fla.productionbody_24} [Farm3Africa_fla.productionbody_24] Frame 2
"FLOUR"Symbol 856 MovieClip {Farm3Africa_fla.productionbody_24} [Farm3Africa_fla.productionbody_24] Frame 3
"POLAR_BEAR"Symbol 856 MovieClip {Farm3Africa_fla.productionbody_24} [Farm3Africa_fla.productionbody_24] Frame 4
"MONEY"Symbol 856 MovieClip {Farm3Africa_fla.productionbody_24} [Farm3Africa_fla.productionbody_24] Frame 5
"PENGUIN"Symbol 856 MovieClip {Farm3Africa_fla.productionbody_24} [Farm3Africa_fla.productionbody_24] Frame 6
"KING_PENGUIN"Symbol 856 MovieClip {Farm3Africa_fla.productionbody_24} [Farm3Africa_fla.productionbody_24] Frame 7
"CAKE"Symbol 856 MovieClip {Farm3Africa_fla.productionbody_24} [Farm3Africa_fla.productionbody_24] Frame 8
"FLOURY_CAKE"Symbol 856 MovieClip {Farm3Africa_fla.productionbody_24} [Farm3Africa_fla.productionbody_24] Frame 9
"PLUME"Symbol 856 MovieClip {Farm3Africa_fla.productionbody_24} [Farm3Africa_fla.productionbody_24] Frame 10
"lock"Symbol 864 MovieClip {Farm3Africa_fla.pigIcon_mc_141} [Farm3Africa_fla.pigIcon_mc_141] Frame 1
"active"Symbol 864 MovieClip {Farm3Africa_fla.pigIcon_mc_141} [Farm3Africa_fla.pigIcon_mc_141] Frame 2
"over"Symbol 864 MovieClip {Farm3Africa_fla.pigIcon_mc_141} [Farm3Africa_fla.pigIcon_mc_141] Frame 3
"press"Symbol 864 MovieClip {Farm3Africa_fla.pigIcon_mc_141} [Farm3Africa_fla.pigIcon_mc_141] Frame 4
"lock"Symbol 867 MovieClip {Farm3Africa_fla.chickenIcon_mc_142} [Farm3Africa_fla.chickenIcon_mc_142] Frame 1
"active"Symbol 867 MovieClip {Farm3Africa_fla.chickenIcon_mc_142} [Farm3Africa_fla.chickenIcon_mc_142] Frame 2
"over"Symbol 867 MovieClip {Farm3Africa_fla.chickenIcon_mc_142} [Farm3Africa_fla.chickenIcon_mc_142] Frame 3
"press"Symbol 867 MovieClip {Farm3Africa_fla.chickenIcon_mc_142} [Farm3Africa_fla.chickenIcon_mc_142] Frame 4
"down"Symbol 1234 MovieClip {Farm3Africa_fla.SnaresPenguinBody_148} [Farm3Africa_fla.SnaresPenguinBody_148] Frame 1
"down_left"Symbol 1234 MovieClip {Farm3Africa_fla.SnaresPenguinBody_148} [Farm3Africa_fla.SnaresPenguinBody_148] Frame 25
"eat"Symbol 1234 MovieClip {Farm3Africa_fla.SnaresPenguinBody_148} [Farm3Africa_fla.SnaresPenguinBody_148] Frame 49
"up"Symbol 1234 MovieClip {Farm3Africa_fla.SnaresPenguinBody_148} [Farm3Africa_fla.SnaresPenguinBody_148] Frame 85
"left_up"Symbol 1234 MovieClip {Farm3Africa_fla.SnaresPenguinBody_148} [Farm3Africa_fla.SnaresPenguinBody_148] Frame 109
"left"Symbol 1234 MovieClip {Farm3Africa_fla.SnaresPenguinBody_148} [Farm3Africa_fla.SnaresPenguinBody_148] Frame 133
"death"Symbol 1234 MovieClip {Farm3Africa_fla.SnaresPenguinBody_148} [Farm3Africa_fla.SnaresPenguinBody_148] Frame 157
"gold"Symbol 1251 MovieClip {Farm3Africa_fla.purposesRibbon_6} [Farm3Africa_fla.purposesRibbon_6] Frame 1
"EGG"Symbol 1278 MovieClip {Farm3Africa_fla.productionbody_20_10} [Farm3Africa_fla.productionbody_20_10] Frame 1
"DRIED_EGGS"Symbol 1278 MovieClip {Farm3Africa_fla.productionbody_20_10} [Farm3Africa_fla.productionbody_20_10] Frame 2
"FLOUR"Symbol 1278 MovieClip {Farm3Africa_fla.productionbody_20_10} [Farm3Africa_fla.productionbody_20_10] Frame 3
"POLAR_BEAR"Symbol 1278 MovieClip {Farm3Africa_fla.productionbody_20_10} [Farm3Africa_fla.productionbody_20_10] Frame 4
"MONEY"Symbol 1278 MovieClip {Farm3Africa_fla.productionbody_20_10} [Farm3Africa_fla.productionbody_20_10] Frame 5
"PENGUIN"Symbol 1278 MovieClip {Farm3Africa_fla.productionbody_20_10} [Farm3Africa_fla.productionbody_20_10] Frame 6
"KING_PENGUIN"Symbol 1278 MovieClip {Farm3Africa_fla.productionbody_20_10} [Farm3Africa_fla.productionbody_20_10] Frame 7
"CAKE"Symbol 1278 MovieClip {Farm3Africa_fla.productionbody_20_10} [Farm3Africa_fla.productionbody_20_10] Frame 8
"FLOURY_CAKE"Symbol 1278 MovieClip {Farm3Africa_fla.productionbody_20_10} [Farm3Africa_fla.productionbody_20_10] Frame 9
"PLUME"Symbol 1278 MovieClip {Farm3Africa_fla.productionbody_20_10} [Farm3Africa_fla.productionbody_20_10] Frame 10
"disable"Symbol 1430 MovieClip {Farm3Africa_fla.buyButton_86} [Farm3Africa_fla.buyButton_86] Frame 1
"active"Symbol 1430 MovieClip {Farm3Africa_fla.buyButton_86} [Farm3Africa_fla.buyButton_86] Frame 9
"over"Symbol 1430 MovieClip {Farm3Africa_fla.buyButton_86} [Farm3Africa_fla.buyButton_86] Frame 16
"press"Symbol 1430 MovieClip {Farm3Africa_fla.buyButton_86} [Farm3Africa_fla.buyButton_86] Frame 23
"down"Symbol 1690 MovieClip {Farm3Africa_fla.body_144} [Farm3Africa_fla.body_144] Frame 1
"left"Symbol 1690 MovieClip {Farm3Africa_fla.body_144} [Farm3Africa_fla.body_144] Frame 25
"left_up"Symbol 1690 MovieClip {Farm3Africa_fla.body_144} [Farm3Africa_fla.body_144] Frame 49
"up"Symbol 1690 MovieClip {Farm3Africa_fla.body_144} [Farm3Africa_fla.body_144] Frame 73
"down_left"Symbol 1690 MovieClip {Farm3Africa_fla.body_144} [Farm3Africa_fla.body_144] Frame 97
"up"Symbol 1712 MovieClip {Farm3Africa_fla.smalButton_74} [Farm3Africa_fla.smalButton_74] Frame 1
"over"Symbol 1712 MovieClip {Farm3Africa_fla.smalButton_74} [Farm3Africa_fla.smalButton_74] Frame 2
"down"Symbol 1712 MovieClip {Farm3Africa_fla.smalButton_74} [Farm3Africa_fla.smalButton_74] Frame 3
"disable"Symbol 1726 MovieClip {houses.UpgradeButtonTemplate} [houses.UpgradeButtonTemplate] Frame 1
"active"Symbol 1726 MovieClip {houses.UpgradeButtonTemplate} [houses.UpgradeButtonTemplate] Frame 7
"over"Symbol 1726 MovieClip {houses.UpgradeButtonTemplate} [houses.UpgradeButtonTemplate] Frame 13
"press"Symbol 1726 MovieClip {houses.UpgradeButtonTemplate} [houses.UpgradeButtonTemplate] Frame 18
"EGG"Symbol 1769 MovieClip {Farm3Africa_fla.body_127} [Farm3Africa_fla.body_127] Frame 1
"DRIED_EGGS"Symbol 1769 MovieClip {Farm3Africa_fla.body_127} [Farm3Africa_fla.body_127] Frame 2
"CAKE"Symbol 1769 MovieClip {Farm3Africa_fla.body_127} [Farm3Africa_fla.body_127] Frame 3
"PLUME"Symbol 1769 MovieClip {Farm3Africa_fla.body_127} [Farm3Africa_fla.body_127] Frame 4
"FLOUR"Symbol 1769 MovieClip {Farm3Africa_fla.body_127} [Farm3Africa_fla.body_127] Frame 5
"FLOURY_CAKE"Symbol 1769 MovieClip {Farm3Africa_fla.body_127} [Farm3Africa_fla.body_127] Frame 6
"POLAR_BEAR"Symbol 1769 MovieClip {Farm3Africa_fla.body_127} [Farm3Africa_fla.body_127] Frame 7




http://swfchan.com/27/134488/info.shtml
Created: 9/2 -2019 22:05:51 Last modified: 9/2 -2019 22:05:51 Server time: 07/05 -2024 11:03:32