Section 1
//flag_icon_203 (Alice_fla.flag_icon_203)
package Alice_fla {
import flash.display.*;
public dynamic class flag_icon_203 extends MovieClip {
public function flag_icon_203(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Alice_fla
Section 2
//MainTimeline (Alice_fla.MainTimeline)
package Alice_fla {
import flash.xml.*;
import flash.display.*;
import flash.text.*;
import flash.events.*;
import spill.localisation.*;
import fangxu.manager.*;
import game.*;
import com.spilgames.api.*;
import flash.media.*;
import flash.utils.*;
import flash.geom.*;
import flash.net.*;
import flash.ui.*;
import flash.external.*;
import flash.system.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.printing.*;
import flash.profiler.*;
import flash.sampler.*;
public dynamic class MainTimeline extends MovieClip {
public var btPause:SimpleButton;
public var txtScore:TextField;
public var bt_drink_purple:SimpleButton;
public var LoadLogo:BrandingLogo;
public var mcTable4:MovieClip;
public var bt_paper_bowl:SimpleButton;
public var lpc:TextField;
public var mcHelpText:MovieClip;
public var btMoreGames:SimpleButton;
public var mcTable2:MovieClip;
public var mcOrder:MovieClip;
public var bt_glass_bowl:SimpleButton;
public var d_OverLogo:SimpleButton;
public var mcWaitress:Waitress;
public var mcTable3:MovieClip;
public var StartLogo:SimpleButton;
public var btMenu:SimpleButton;
public var mcHelpButton:MovieClip;
public var bt_drink_yellow:SimpleButton;
public var txtTime:TextField;
public var mcTable1:MovieClip;
public var bt_white:SimpleButton;
public var bt_strawberry:SimpleButton;
public var mcWaiter:Waiter;
public var mc_ice_machine:MovieClip;
public var bt_drink_green:SimpleButton;
public var btPlay:SimpleButton;
public var d_MainLogo:SimpleButton;
public var bt_coffea:SimpleButton;
public var txtLevel:TextField;
public var txtGoal:TextField;
public var bt_cooky:SimpleButton;
public var bt_drink_cup:SimpleButton;
public var bt_coffea_cup:SimpleButton;
public var bt_glass_cup:SimpleButton;
public var mcSound:MovieClip;
public var btHighScore:SimpleButton;
public var btPlayAgain:SimpleButton;
public var bt_almond:SimpleButton;
public var bt_black:SimpleButton;
public var bt_paper_cup:SimpleButton;
public var btHelp:SimpleButton;
public var lbar:MovieClip;
public var d_CreditsBack:SimpleButton;
public var btSubmitScore:SimpleButton;
public var mcWastebin:MovieClip;
public var bt_leaf:SimpleButton;
public var bt_gingeli:SimpleButton;
public var mcMusic:MovieClip;
public var _spilGamesServices:SpilGamesServices;
public var totalScore;
public var instance;
public function MainTimeline(){
addFrameScript(1, frame2, 2, frame3, 3, frame4, 4, frame5, 5, frame6, 6, frame7);
}
public function onServicesReady(_arg1:Event):void{
trace("ok", _spilGamesServices.isDomainAllowed());
}
public function onServicesFailed(_arg1:Event):void{
trace("Submitter failed to load");
trace(_spilGamesServices.isDomainAllowed());
}
public function fnLogoUrl(_arg1:MouseEvent){
var _local2:* = SpilGame.getMoreGamesLink("logo_intro");
navigateToURL(new URLRequest(_local2), "_blank");
}
public function enterFrameHandler(_arg1:Event):void{
lpc.text = (Math.floor(lbar.currentFrame) + "%");
if (lbar.currentFrame >= 100){
lbar.removeEventListener(Event.ENTER_FRAME, enterFrameHandler);
stage.removeEventListener(MouseEvent.CLICK, fnLogoUrl);
gotoAndStop("start");
};
}
public function StartLogoUrl(_arg1:MouseEvent){
var _local2:* = SpilGame.getMoreGamesLink("logo_intro");
navigateToURL(new URLRequest(_local2), "_blank");
}
public function onMainLogo(_arg1){
var _local2:* = SpilGame.getMoreGamesLink("button_mainscreen_moregames");
navigateToURL(new URLRequest(_local2), "_blank");
}
public function onOverLogo(_arg1){
var _local2:* = SpilGame.getMoreGamesLink("button_gameover_moregames");
navigateToURL(new URLRequest(_local2), "_blank");
}
function frame2(){
stop();
Languages.initialize();
SpilGame.initialize("Alice's Ice Bar", PortalGroup.FAMILY, "Alice's Ice Bar.html", this, true);
_spilGamesServices = SpilGamesServices.getInstance();
_spilGamesServices.addEventListener("servicesReady", onServicesReady);
_spilGamesServices.addEventListener("servicesFailed", onServicesFailed);
_spilGamesServices.connect(this);
stage.addEventListener(MouseEvent.CLICK, fnLogoUrl);
LoadLogo.addEventListener(MouseEvent.CLICK, fnLogoUrl);
lbar.addEventListener(Event.ENTER_FRAME, enterFrameHandler);
}
function frame3(){
stop();
totalScore = 0;
btHelp.addEventListener(MouseEvent.CLICK, function (){
nextFrame();
});
btPlay.addEventListener(MouseEvent.CLICK, function (){
gotoAndStop("main");
});
btHighScore.addEventListener(MouseEvent.CLICK, function ():void{
gotoAndStop("credit");
});
btMoreGames.addEventListener(MouseEvent.CLICK, function ():void{
var _local1:* = SpilGame.getMoreGamesLink("logo_intro");
navigateToURL(new URLRequest(_local1), "_blank");
});
SoundManager.getInstance().startSound(MainSound);
StartLogo.addEventListener(MouseEvent.CLICK, StartLogoUrl);
}
function frame4(){
stop();
btPlay.addEventListener(MouseEvent.CLICK, function (){
nextFrame();
});
}
function frame5(){
stop();
totalScore = 0;
btMenu.addEventListener(MouseEvent.CLICK, function (){
instance.destroy();
SoundManager.getInstance().clear();
gotoAndStop("start");
});
instance = Main.getInstance(stage, root);
mcMusic.buttonMode = true;
mcMusic.addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent){
if (mcMusic.currentFrame == 1){
instance.bMusic = false;
mcMusic.nextFrame();
SoundManager.getInstance().clear();
} else {
instance.bMusic = true;
mcMusic.prevFrame();
SoundManager.getInstance().startSound(GameSound);
};
});
mcSound.buttonMode = true;
mcSound.addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent){
if (mcSound.currentFrame == 1){
mcSound.nextFrame();
instance.bSound = false;
} else {
mcSound.prevFrame();
instance.bSound = true;
};
});
d_MainLogo.addEventListener(MouseEvent.CLICK, onMainLogo);
}
function frame6(){
stop();
txtScore.text = totalScore;
btSubmitScore.addEventListener(MouseEvent.CLICK, function ():void{
var _local1:* = totalScore;
ScoreService.submitScore(_local1);
});
btPlayAgain.addEventListener(MouseEvent.CLICK, function (){
prevFrame();
});
SoundManager.getInstance().startSound(MainSound);
d_OverLogo.addEventListener(MouseEvent.CLICK, onOverLogo);
}
function frame7(){
stop();
d_CreditsBack.addEventListener(MouseEvent.CLICK, function (){
gotoAndStop("start");
});
}
}
}//package Alice_fla
Section 3
//music_143 (Alice_fla.music_143)
package Alice_fla {
import flash.display.*;
public dynamic class music_143 extends MovieClip {
public function music_143(){
addFrameScript(0, frame1, 1, frame2);
}
function frame1(){
stop();
}
function frame2(){
stop();
}
}
}//package Alice_fla
Section 4
//Sound_144 (Alice_fla.Sound_144)
package Alice_fla {
import flash.display.*;
public dynamic class Sound_144 extends MovieClip {
public function Sound_144(){
addFrameScript(0, frame1, 1, frame2);
}
function frame1(){
stop();
}
function frame2(){
stop();
}
}
}//package Alice_fla
Section 5
//Timeline_1 (Alice_fla.Timeline_1)
package Alice_fla {
import flash.display.*;
public dynamic class Timeline_1 extends MovieClip {
public function Timeline_1(){
addFrameScript(99, frame100);
}
function frame100(){
stop();
}
}
}//package Alice_fla
Section 6
//Timeline_129 (Alice_fla.Timeline_129)
package Alice_fla {
import flash.display.*;
public dynamic class Timeline_129 extends MovieClip {
public function Timeline_129(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Alice_fla
Section 7
//walk1_167 (Alice_fla.walk1_167)
package Alice_fla {
import flash.display.*;
public dynamic class walk1_167 extends MovieClip {
public function walk1_167(){
addFrameScript(16, frame17);
}
function frame17(){
stop();
}
}
}//package Alice_fla
Section 8
//walk2_171 (Alice_fla.walk2_171)
package Alice_fla {
import flash.display.*;
public dynamic class walk2_171 extends MovieClip {
public function walk2_171(){
addFrameScript(22, frame23);
}
function frame23(){
stop();
}
}
}//package Alice_fla
Section 9
//walk3_172 (Alice_fla.walk3_172)
package Alice_fla {
import flash.display.*;
public dynamic class walk3_172 extends MovieClip {
public function walk3_172(){
addFrameScript(25, frame26);
}
function frame26(){
stop();
}
}
}//package Alice_fla
Section 10
//AuxFunctions (caurina.transitions.AuxFunctions)
package caurina.transitions {
public class AuxFunctions {
public static function numberToR(_arg1:Number):Number{
return (((_arg1 & 0xFF0000) >> 16));
}
public static function numberToG(_arg1:Number):Number{
return (((_arg1 & 0xFF00) >> 8));
}
public static function numberToB(_arg1:Number):Number{
return ((_arg1 & 0xFF));
}
public static function getObjectLength(_arg1:Object):uint{
var _local3:String;
var _local2:uint;
for (_local3 in _arg1) {
_local2++;
};
return (_local2);
}
public static function concatObjects(... _args):Object{
var _local3:Object;
var _local5:String;
var _local2:Object = {};
var _local4:int;
while (_local4 < _args.length) {
_local3 = _args[_local4];
for (_local5 in _local3) {
if (_local3[_local5] == null){
delete _local2[_local5];
} else {
_local2[_local5] = _local3[_local5];
};
};
_local4++;
};
return (_local2);
}
}
}//package caurina.transitions
Section 11
//Equations (caurina.transitions.Equations)
package caurina.transitions {
public class Equations {
public function Equations(){
trace("Equations is a static class and should not be instantiated.");
}
public static function 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 easeNone(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return ((((_arg3 * _arg1) / _arg4) + _arg2));
}
public static function easeInQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
return ((((_arg3 * _arg1) * _arg1) + _arg2));
}
public static function easeOutQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
return ((((-(_arg3) * _arg1) * (_arg1 - 2)) + _arg2));
}
public static function easeInOutQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return (((((_arg3 / 2) * _arg1) * _arg1) + _arg2));
};
--_arg1;
return ((((-(_arg3) / 2) * ((_arg1 * (_arg1 - 2)) - 1)) + _arg2));
}
public static function easeOutInQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutQuad((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInQuad(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeInCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
return (((((_arg3 * _arg1) * _arg1) * _arg1) + _arg2));
}
public static function easeOutCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = ((_arg1 / _arg4) - 1);
return (((_arg3 * (((_arg1 * _arg1) * _arg1) + 1)) + _arg2));
}
public static function easeInOutCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return ((((((_arg3 / 2) * _arg1) * _arg1) * _arg1) + _arg2));
};
_arg1 = (_arg1 - 2);
return ((((_arg3 / 2) * (((_arg1 * _arg1) * _arg1) + 2)) + _arg2));
}
public static function easeOutInCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutCubic((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInCubic(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeInQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
return ((((((_arg3 * _arg1) * _arg1) * _arg1) * _arg1) + _arg2));
}
public static function easeOutQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = ((_arg1 / _arg4) - 1);
return (((-(_arg3) * ((((_arg1 * _arg1) * _arg1) * _arg1) - 1)) + _arg2));
}
public static function easeInOutQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return (((((((_arg3 / 2) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2));
};
_arg1 = (_arg1 - 2);
return ((((-(_arg3) / 2) * ((((_arg1 * _arg1) * _arg1) * _arg1) - 2)) + _arg2));
}
public static function easeOutInQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutQuart((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInQuart(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeInQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
return (((((((_arg3 * _arg1) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2));
}
public static function easeOutQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = ((_arg1 / _arg4) - 1);
return (((_arg3 * (((((_arg1 * _arg1) * _arg1) * _arg1) * _arg1) + 1)) + _arg2));
}
public static function easeInOutQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return ((((((((_arg3 / 2) * _arg1) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2));
};
_arg1 = (_arg1 - 2);
return ((((_arg3 / 2) * (((((_arg1 * _arg1) * _arg1) * _arg1) * _arg1) + 2)) + _arg2));
}
public static function easeOutInQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutQuint((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInQuint(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeInSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return ((((-(_arg3) * Math.cos(((_arg1 / _arg4) * (Math.PI / 2)))) + _arg3) + _arg2));
}
public static function easeOutSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return (((_arg3 * Math.sin(((_arg1 / _arg4) * (Math.PI / 2)))) + _arg2));
}
public static function easeInOutSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return ((((-(_arg3) / 2) * (Math.cos(((Math.PI * _arg1) / _arg4)) - 1)) + _arg2));
}
public static function easeOutInSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutSine((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInSine(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeInExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return (((_arg1)==0) ? _arg2 : (((_arg3 * Math.pow(2, (10 * ((_arg1 / _arg4) - 1)))) + _arg2) - (_arg3 * 0.001)));
}
public static function easeOutExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return (((_arg1)==_arg4) ? (_arg2 + _arg3) : (((_arg3 * 1.001) * (-(Math.pow(2, ((-10 * _arg1) / _arg4))) + 1)) + _arg2));
}
public static function easeInOutExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 == 0){
return (_arg2);
};
if (_arg1 == _arg4){
return ((_arg2 + _arg3));
};
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return (((((_arg3 / 2) * Math.pow(2, (10 * (_arg1 - 1)))) + _arg2) - (_arg3 * 0.0005)));
};
--_arg1;
return (((((_arg3 / 2) * 1.0005) * (-(Math.pow(2, (-10 * _arg1))) + 2)) + _arg2));
}
public static function easeOutInExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutExpo((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInExpo(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeInCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
return (((-(_arg3) * (Math.sqrt((1 - (_arg1 * _arg1))) - 1)) + _arg2));
}
public static function easeOutCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = ((_arg1 / _arg4) - 1);
return (((_arg3 * Math.sqrt((1 - (_arg1 * _arg1)))) + _arg2));
}
public static function easeInOutCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return ((((-(_arg3) / 2) * (Math.sqrt((1 - (_arg1 * _arg1))) - 1)) + _arg2));
};
_arg1 = (_arg1 - 2);
return ((((_arg3 / 2) * (Math.sqrt((1 - (_arg1 * _arg1))) + 1)) + _arg2));
}
public static function easeOutInCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutCirc((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInCirc(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeInElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
var _local7:Number;
if (_arg1 == 0){
return (_arg2);
};
_arg1 = (_arg1 / _arg4);
if (_arg1 == 1){
return ((_arg2 + _arg3));
};
var _local6:Number = (((!(Boolean(_arg5))) || (isNaN(_arg5.period)))) ? (_arg4 * 0.3) : _arg5.period;
var _local8:Number = (((!(Boolean(_arg5))) || (isNaN(_arg5.amplitude)))) ? 0 : _arg5.amplitude;
if (((!(Boolean(_local8))) || ((_local8 < Math.abs(_arg3))))){
_local8 = _arg3;
_local7 = (_local6 / 4);
} else {
_local7 = ((_local6 / (2 * Math.PI)) * Math.asin((_arg3 / _local8)));
};
--_arg1;
return ((-(((_local8 * Math.pow(2, (10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _local6)))) + _arg2));
}
public static function easeOutElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
var _local7:Number;
if (_arg1 == 0){
return (_arg2);
};
_arg1 = (_arg1 / _arg4);
if (_arg1 == 1){
return ((_arg2 + _arg3));
};
var _local6:Number = (((!(Boolean(_arg5))) || (isNaN(_arg5.period)))) ? (_arg4 * 0.3) : _arg5.period;
var _local8:Number = (((!(Boolean(_arg5))) || (isNaN(_arg5.amplitude)))) ? 0 : _arg5.amplitude;
if (((!(Boolean(_local8))) || ((_local8 < Math.abs(_arg3))))){
_local8 = _arg3;
_local7 = (_local6 / 4);
} else {
_local7 = ((_local6 / (2 * Math.PI)) * Math.asin((_arg3 / _local8)));
};
return (((((_local8 * Math.pow(2, (-10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _local6))) + _arg3) + _arg2));
}
public static function easeInOutElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
var _local7:Number;
if (_arg1 == 0){
return (_arg2);
};
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 == 2){
return ((_arg2 + _arg3));
};
var _local6:Number = (((!(Boolean(_arg5))) || (isNaN(_arg5.period)))) ? (_arg4 * (0.3 * 1.5)) : _arg5.period;
var _local8:Number = (((!(Boolean(_arg5))) || (isNaN(_arg5.amplitude)))) ? 0 : _arg5.amplitude;
if (((!(Boolean(_local8))) || ((_local8 < Math.abs(_arg3))))){
_local8 = _arg3;
_local7 = (_local6 / 4);
} else {
_local7 = ((_local6 / (2 * Math.PI)) * Math.asin((_arg3 / _local8)));
};
if (_arg1 < 1){
--_arg1;
return (((-0.5 * ((_local8 * Math.pow(2, (10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _local6)))) + _arg2));
};
--_arg1;
return ((((((_local8 * Math.pow(2, (-10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _local6))) * 0.5) + _arg3) + _arg2));
}
public static function easeOutInElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutElastic((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInElastic(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeInBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
var _local6:Number = (((!(Boolean(_arg5))) || (isNaN(_arg5.overshoot)))) ? 1.70158 : _arg5.overshoot;
_arg1 = (_arg1 / _arg4);
return (((((_arg3 * _arg1) * _arg1) * (((_local6 + 1) * _arg1) - _local6)) + _arg2));
}
public static function easeOutBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
var _local6:Number = (((!(Boolean(_arg5))) || (isNaN(_arg5.overshoot)))) ? 1.70158 : _arg5.overshoot;
_arg1 = ((_arg1 / _arg4) - 1);
return (((_arg3 * (((_arg1 * _arg1) * (((_local6 + 1) * _arg1) + _local6)) + 1)) + _arg2));
}
public static function easeInOutBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
var _local6:Number = (((!(Boolean(_arg5))) || (isNaN(_arg5.overshoot)))) ? 1.70158 : _arg5.overshoot;
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
_local6 = (_local6 * 1.525);
return ((((_arg3 / 2) * ((_arg1 * _arg1) * (((_local6 + 1) * _arg1) - _local6))) + _arg2));
};
_arg1 = (_arg1 - 2);
_local6 = (_local6 * 1.525);
return ((((_arg3 / 2) * (((_arg1 * _arg1) * (((_local6 + 1) * _arg1) + _local6)) + 2)) + _arg2));
}
public static function easeOutInBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutBack((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInBack(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeInBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return (((_arg3 - easeOutBounce((_arg4 - _arg1), 0, _arg3, _arg4)) + _arg2));
}
public static function easeOutBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
if (_arg1 < (1 / 2.75)){
return (((_arg3 * ((7.5625 * _arg1) * _arg1)) + _arg2));
};
if (_arg1 < (2 / 2.75)){
_arg1 = (_arg1 - (1.5 / 2.75));
return (((_arg3 * (((7.5625 * _arg1) * _arg1) + 0.75)) + _arg2));
};
if (_arg1 < (2.5 / 2.75)){
_arg1 = (_arg1 - (2.25 / 2.75));
return (((_arg3 * (((7.5625 * _arg1) * _arg1) + 0.9375)) + _arg2));
};
_arg1 = (_arg1 - (2.625 / 2.75));
return (((_arg3 * (((7.5625 * _arg1) * _arg1) + 0.984375)) + _arg2));
}
public static function easeInOutBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (((easeInBounce((_arg1 * 2), 0, _arg3, _arg4) * 0.5) + _arg2));
};
return ((((easeOutBounce(((_arg1 * 2) - _arg4), 0, _arg3, _arg4) * 0.5) + (_arg3 * 0.5)) + _arg2));
}
public static function easeOutInBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutBounce((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInBounce(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
}
}//package caurina.transitions
Section 12
//PropertyInfoObj (caurina.transitions.PropertyInfoObj)
package caurina.transitions {
public class PropertyInfoObj {
public var valueStart:Number;
public var valueComplete:Number;
public var originalValueComplete:Object;
public var arrayIndex:Number;
public var extra:Object;
public var isSpecialProperty:Boolean;
public var hasModifier:Boolean;
public var modifierFunction:Function;
public var modifierParameters:Array;
public function PropertyInfoObj(_arg1:Number, _arg2:Number, _arg3:Object, _arg4:Number, _arg5:Object, _arg6:Boolean, _arg7:Function, _arg8:Array){
valueStart = _arg1;
valueComplete = _arg2;
originalValueComplete = _arg3;
arrayIndex = _arg4;
extra = _arg5;
isSpecialProperty = _arg6;
hasModifier = Boolean(_arg7);
modifierFunction = _arg7;
modifierParameters = _arg8;
}
public function clone():PropertyInfoObj{
var _local1:PropertyInfoObj = new PropertyInfoObj(valueStart, valueComplete, originalValueComplete, arrayIndex, extra, isSpecialProperty, modifierFunction, modifierParameters);
return (_local1);
}
public function toString():String{
var _local1 = "\n[PropertyInfoObj ";
_local1 = (_local1 + ("valueStart:" + String(valueStart)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("valueComplete:" + String(valueComplete)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("originalValueComplete:" + String(originalValueComplete)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("arrayIndex:" + String(arrayIndex)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("extra:" + String(extra)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("isSpecialProperty:" + String(isSpecialProperty)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("hasModifier:" + String(hasModifier)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("modifierFunction:" + String(modifierFunction)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("modifierParameters:" + String(modifierParameters)));
_local1 = (_local1 + "]\n");
return (_local1);
}
}
}//package caurina.transitions
Section 13
//SpecialProperty (caurina.transitions.SpecialProperty)
package caurina.transitions {
public class SpecialProperty {
public var getValue:Function;
public var setValue:Function;
public var parameters:Array;
public var preProcess:Function;
public function SpecialProperty(_arg1:Function, _arg2:Function, _arg3:Array=null, _arg4:Function=null){
getValue = _arg1;
setValue = _arg2;
parameters = _arg3;
preProcess = _arg4;
}
public function toString():String{
var _local1 = "";
_local1 = (_local1 + "[SpecialProperty ");
_local1 = (_local1 + ("getValue:" + String(getValue)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("setValue:" + String(setValue)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("parameters:" + String(parameters)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("preProcess:" + String(preProcess)));
_local1 = (_local1 + "]");
return (_local1);
}
}
}//package caurina.transitions
Section 14
//SpecialPropertyModifier (caurina.transitions.SpecialPropertyModifier)
package caurina.transitions {
public class SpecialPropertyModifier {
public var modifyValues:Function;
public var getValue:Function;
public function SpecialPropertyModifier(_arg1:Function, _arg2:Function){
modifyValues = _arg1;
getValue = _arg2;
}
public function toString():String{
var _local1 = "";
_local1 = (_local1 + "[SpecialPropertyModifier ");
_local1 = (_local1 + ("modifyValues:" + String(modifyValues)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("getValue:" + String(getValue)));
_local1 = (_local1 + "]");
return (_local1);
}
}
}//package caurina.transitions
Section 15
//SpecialPropertySplitter (caurina.transitions.SpecialPropertySplitter)
package caurina.transitions {
public class SpecialPropertySplitter {
public var parameters:Array;
public var splitValues:Function;
public function SpecialPropertySplitter(_arg1:Function, _arg2:Array){
splitValues = _arg1;
parameters = _arg2;
}
public function toString():String{
var _local1 = "";
_local1 = (_local1 + "[SpecialPropertySplitter ");
_local1 = (_local1 + ("splitValues:" + String(splitValues)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("parameters:" + String(parameters)));
_local1 = (_local1 + "]");
return (_local1);
}
}
}//package caurina.transitions
Section 16
//Tweener (caurina.transitions.Tweener)
package caurina.transitions {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
public class Tweener {
private static var __tweener_controller__:MovieClip;
private static var _engineExists:Boolean = false;
private static var _inited:Boolean = false;
private static var _currentTime:Number;
private static var _currentTimeFrame:Number;
private static var _tweenList:Array;
private static var _timeScale:Number = 1;
private static var _transitionList:Object;
private static var _specialPropertyList:Object;
private static var _specialPropertyModifierList:Object;
private static var _specialPropertySplitterList:Object;
public static var autoOverwrite:Boolean = true;
public function Tweener(){
trace("Tweener is a static class and should not be instantiated.");
}
public static function addTween(_arg1:Object=null, _arg2:Object=null):Boolean{
var _local3:Number;
var _local4:Number;
var _local5:String;
var _local6:Array;
var _local13:Function;
var _local14:Object;
var _local15:TweenListObj;
var _local16:Number;
var _local17:Array;
var _local18:Array;
var _local19:Array;
var _local20:String;
if (!Boolean(_arg1)){
return (false);
};
if ((_arg1 is Array)){
_local6 = _arg1.concat();
} else {
_local6 = [_arg1];
};
var _local7:Object = TweenListObj.makePropertiesChain(_arg2);
if (!_inited){
init();
};
if (((!(_engineExists)) || (!(Boolean(__tweener_controller__))))){
startEngine();
};
var _local8:Number = (isNaN(_local7.time)) ? 0 : _local7.time;
var _local9:Number = (isNaN(_local7.delay)) ? 0 : _local7.delay;
var _local10:Array = new Array();
var _local11:Object = {overwrite:true, time:true, delay:true, useFrames:true, skipUpdates:true, transition:true, transitionParams:true, onStart:true, onUpdate:true, onComplete:true, onOverwrite:true, onError:true, rounded:true, onStartParams:true, onUpdateParams:true, onCompleteParams:true, onOverwriteParams:true, onStartScope:true, onUpdateScope:true, onCompleteScope:true, onOverwriteScope:true, onErrorScope:true};
var _local12:Object = new Object();
for (_local5 in _local7) {
if (!_local11[_local5]){
if (_specialPropertySplitterList[_local5]){
_local17 = _specialPropertySplitterList[_local5].splitValues(_local7[_local5], _specialPropertySplitterList[_local5].parameters);
_local3 = 0;
while (_local3 < _local17.length) {
if (_specialPropertySplitterList[_local17[_local3].name]){
_local18 = _specialPropertySplitterList[_local17[_local3].name].splitValues(_local17[_local3].value, _specialPropertySplitterList[_local17[_local3].name].parameters);
_local4 = 0;
while (_local4 < _local18.length) {
_local10[_local18[_local4].name] = {valueStart:undefined, valueComplete:_local18[_local4].value, arrayIndex:_local18[_local4].arrayIndex, isSpecialProperty:false};
_local4++;
};
} else {
_local10[_local17[_local3].name] = {valueStart:undefined, valueComplete:_local17[_local3].value, arrayIndex:_local17[_local3].arrayIndex, isSpecialProperty:false};
};
_local3++;
};
} else {
if (_specialPropertyModifierList[_local5] != undefined){
_local19 = _specialPropertyModifierList[_local5].modifyValues(_local7[_local5]);
_local3 = 0;
while (_local3 < _local19.length) {
_local12[_local19[_local3].name] = {modifierParameters:_local19[_local3].parameters, modifierFunction:_specialPropertyModifierList[_local5].getValue};
_local3++;
};
} else {
_local10[_local5] = {valueStart:undefined, valueComplete:_local7[_local5]};
};
};
};
};
for (_local5 in _local10) {
if (_specialPropertyList[_local5] != undefined){
_local10[_local5].isSpecialProperty = true;
} else {
if (_local6[0][_local5] == undefined){
printError((((("The property '" + _local5) + "' doesn't seem to be a normal object property of ") + String(_local6[0])) + " or a registered special property."));
};
};
};
for (_local5 in _local12) {
if (_local10[_local5] != undefined){
_local10[_local5].modifierParameters = _local12[_local5].modifierParameters;
_local10[_local5].modifierFunction = _local12[_local5].modifierFunction;
};
};
if (typeof(_local7.transition) == "string"){
_local20 = _local7.transition.toLowerCase();
_local13 = _transitionList[_local20];
} else {
_local13 = _local7.transition;
};
if (!Boolean(_local13)){
_local13 = _transitionList["easeoutexpo"];
};
_local3 = 0;
while (_local3 < _local6.length) {
_local14 = new Object();
for (_local5 in _local10) {
_local14[_local5] = new PropertyInfoObj(_local10[_local5].valueStart, _local10[_local5].valueComplete, _local10[_local5].valueComplete, _local10[_local5].arrayIndex, {}, _local10[_local5].isSpecialProperty, _local10[_local5].modifierFunction, _local10[_local5].modifierParameters);
};
if (_local7.useFrames == true){
_local15 = new TweenListObj(_local6[_local3], (_currentTimeFrame + (_local9 / _timeScale)), (_currentTimeFrame + ((_local9 + _local8) / _timeScale)), true, _local13, _local7.transitionParams);
} else {
_local15 = new TweenListObj(_local6[_local3], (_currentTime + ((_local9 * 1000) / _timeScale)), (_currentTime + (((_local9 * 1000) + (_local8 * 1000)) / _timeScale)), false, _local13, _local7.transitionParams);
};
_local15.properties = _local14;
_local15.onStart = _local7.onStart;
_local15.onUpdate = _local7.onUpdate;
_local15.onComplete = _local7.onComplete;
_local15.onOverwrite = _local7.onOverwrite;
_local15.onError = _local7.onError;
_local15.onStartParams = _local7.onStartParams;
_local15.onUpdateParams = _local7.onUpdateParams;
_local15.onCompleteParams = _local7.onCompleteParams;
_local15.onOverwriteParams = _local7.onOverwriteParams;
_local15.onStartScope = _local7.onStartScope;
_local15.onUpdateScope = _local7.onUpdateScope;
_local15.onCompleteScope = _local7.onCompleteScope;
_local15.onOverwriteScope = _local7.onOverwriteScope;
_local15.onErrorScope = _local7.onErrorScope;
_local15.rounded = _local7.rounded;
_local15.skipUpdates = _local7.skipUpdates;
if (((_local7.overwrite == undefined)) ? autoOverwrite : _local7.overwrite){
removeTweensByTime(_local15.scope, _local15.properties, _local15.timeStart, _local15.timeComplete);
};
_tweenList.push(_local15);
if ((((_local8 == 0)) && ((_local9 == 0)))){
_local16 = (_tweenList.length - 1);
updateTweenByIndex(_local16);
removeTweenByIndex(_local16);
};
_local3++;
};
return (true);
}
public static function addCaller(_arg1:Object=null, _arg2:Object=null):Boolean{
var _local3:Number;
var _local4:Array;
var _local8:Function;
var _local9:TweenListObj;
var _local10:Number;
var _local11:String;
if (!Boolean(_arg1)){
return (false);
};
if ((_arg1 is Array)){
_local4 = _arg1.concat();
} else {
_local4 = [_arg1];
};
var _local5:Object = _arg2;
if (!_inited){
init();
};
if (((!(_engineExists)) || (!(Boolean(__tweener_controller__))))){
startEngine();
};
var _local6:Number = (isNaN(_local5.time)) ? 0 : _local5.time;
var _local7:Number = (isNaN(_local5.delay)) ? 0 : _local5.delay;
if (typeof(_local5.transition) == "string"){
_local11 = _local5.transition.toLowerCase();
_local8 = _transitionList[_local11];
} else {
_local8 = _local5.transition;
};
if (!Boolean(_local8)){
_local8 = _transitionList["easeoutexpo"];
};
_local3 = 0;
while (_local3 < _local4.length) {
if (_local5.useFrames == true){
_local9 = new TweenListObj(_local4[_local3], (_currentTimeFrame + (_local7 / _timeScale)), (_currentTimeFrame + ((_local7 + _local6) / _timeScale)), true, _local8, _local5.transitionParams);
} else {
_local9 = new TweenListObj(_local4[_local3], (_currentTime + ((_local7 * 1000) / _timeScale)), (_currentTime + (((_local7 * 1000) + (_local6 * 1000)) / _timeScale)), false, _local8, _local5.transitionParams);
};
_local9.properties = null;
_local9.onStart = _local5.onStart;
_local9.onUpdate = _local5.onUpdate;
_local9.onComplete = _local5.onComplete;
_local9.onOverwrite = _local5.onOverwrite;
_local9.onStartParams = _local5.onStartParams;
_local9.onUpdateParams = _local5.onUpdateParams;
_local9.onCompleteParams = _local5.onCompleteParams;
_local9.onOverwriteParams = _local5.onOverwriteParams;
_local9.onStartScope = _local5.onStartScope;
_local9.onUpdateScope = _local5.onUpdateScope;
_local9.onCompleteScope = _local5.onCompleteScope;
_local9.onOverwriteScope = _local5.onOverwriteScope;
_local9.onErrorScope = _local5.onErrorScope;
_local9.isCaller = true;
_local9.count = _local5.count;
_local9.waitFrames = _local5.waitFrames;
_tweenList.push(_local9);
if ((((_local6 == 0)) && ((_local7 == 0)))){
_local10 = (_tweenList.length - 1);
updateTweenByIndex(_local10);
removeTweenByIndex(_local10);
};
_local3++;
};
return (true);
}
public static function removeTweensByTime(_arg1:Object, _arg2:Object, _arg3:Number, _arg4:Number):Boolean{
var removedLocally:Boolean;
var i:uint;
var pName:String;
var eventScope:Object;
var p_scope = _arg1;
var p_properties = _arg2;
var p_timeStart = _arg3;
var p_timeComplete = _arg4;
var removed:Boolean;
var tl:uint = _tweenList.length;
i = 0;
while (i < tl) {
if (((Boolean(_tweenList[i])) && ((p_scope == _tweenList[i].scope)))){
if ((((p_timeComplete > _tweenList[i].timeStart)) && ((p_timeStart < _tweenList[i].timeComplete)))){
removedLocally = false;
for (pName in _tweenList[i].properties) {
if (Boolean(p_properties[pName])){
if (Boolean(_tweenList[i].onOverwrite)){
eventScope = (Boolean(_tweenList[i].onOverwriteScope)) ? _tweenList[i].onOverwriteScope : _tweenList[i].scope;
try {
_tweenList[i].onOverwrite.apply(eventScope, _tweenList[i].onOverwriteParams);
} catch(e:Error) {
handleError(_tweenList[i], e, "onOverwrite");
};
};
_tweenList[i].properties[pName] = undefined;
delete _tweenList[i].properties[pName];
removedLocally = true;
removed = true;
};
};
if (removedLocally){
if (AuxFunctions.getObjectLength(_tweenList[i].properties) == 0){
removeTweenByIndex(i);
};
};
};
};
i = (i + 1);
};
return (removed);
}
public static function removeTweens(_arg1:Object, ... _args):Boolean{
var _local4:uint;
var _local5:SpecialPropertySplitter;
var _local6:Array;
var _local7:uint;
var _local3:Array = new Array();
_local4 = 0;
while (_local4 < _args.length) {
if ((((typeof(_args[_local4]) == "string")) && ((_local3.indexOf(_args[_local4]) == -1)))){
if (_specialPropertySplitterList[_args[_local4]]){
_local5 = _specialPropertySplitterList[_args[_local4]];
_local6 = _local5.splitValues(_arg1, null);
_local7 = 0;
while (_local7 < _local6.length) {
_local3.push(_local6[_local7].name);
_local7++;
};
} else {
_local3.push(_args[_local4]);
};
};
_local4++;
};
return (affectTweens(removeTweenByIndex, _arg1, _local3));
}
public static function removeAllTweens():Boolean{
var _local2:uint;
if (!Boolean(_tweenList)){
return (false);
};
var _local1:Boolean;
_local2 = 0;
while (_local2 < _tweenList.length) {
removeTweenByIndex(_local2);
_local1 = true;
_local2++;
};
return (_local1);
}
public static function pauseTweens(_arg1:Object, ... _args):Boolean{
var _local4:uint;
var _local3:Array = new Array();
_local4 = 0;
while (_local4 < _args.length) {
if ((((typeof(_args[_local4]) == "string")) && ((_local3.indexOf(_args[_local4]) == -1)))){
_local3.push(_args[_local4]);
};
_local4++;
};
return (affectTweens(pauseTweenByIndex, _arg1, _local3));
}
public static function pauseAllTweens():Boolean{
var _local2:uint;
if (!Boolean(_tweenList)){
return (false);
};
var _local1:Boolean;
_local2 = 0;
while (_local2 < _tweenList.length) {
pauseTweenByIndex(_local2);
_local1 = true;
_local2++;
};
return (_local1);
}
public static function resumeTweens(_arg1:Object, ... _args):Boolean{
var _local4:uint;
var _local3:Array = new Array();
_local4 = 0;
while (_local4 < _args.length) {
if ((((typeof(_args[_local4]) == "string")) && ((_local3.indexOf(_args[_local4]) == -1)))){
_local3.push(_args[_local4]);
};
_local4++;
};
return (affectTweens(resumeTweenByIndex, _arg1, _local3));
}
public static function resumeAllTweens():Boolean{
var _local2:uint;
if (!Boolean(_tweenList)){
return (false);
};
var _local1:Boolean;
_local2 = 0;
while (_local2 < _tweenList.length) {
resumeTweenByIndex(_local2);
_local1 = true;
_local2++;
};
return (_local1);
}
private static function affectTweens(_arg1:Function, _arg2:Object, _arg3:Array):Boolean{
var _local5:uint;
var _local6:Array;
var _local7:uint;
var _local8:uint;
var _local9:uint;
var _local4:Boolean;
if (!Boolean(_tweenList)){
return (false);
};
_local5 = 0;
while (_local5 < _tweenList.length) {
if (((_tweenList[_local5]) && ((_tweenList[_local5].scope == _arg2)))){
if (_arg3.length == 0){
_arg1(_local5);
_local4 = true;
} else {
_local6 = new Array();
_local7 = 0;
while (_local7 < _arg3.length) {
if (Boolean(_tweenList[_local5].properties[_arg3[_local7]])){
_local6.push(_arg3[_local7]);
};
_local7++;
};
if (_local6.length > 0){
_local8 = AuxFunctions.getObjectLength(_tweenList[_local5].properties);
if (_local8 == _local6.length){
_arg1(_local5);
_local4 = true;
} else {
_local9 = splitTweens(_local5, _local6);
_arg1(_local9);
_local4 = true;
};
};
};
};
_local5++;
};
return (_local4);
}
public static function splitTweens(_arg1:Number, _arg2:Array):uint{
var _local5:uint;
var _local6:String;
var _local7:Boolean;
var _local3:TweenListObj = _tweenList[_arg1];
var _local4:TweenListObj = _local3.clone(false);
_local5 = 0;
while (_local5 < _arg2.length) {
_local6 = _arg2[_local5];
if (Boolean(_local3.properties[_local6])){
_local3.properties[_local6] = undefined;
delete _local3.properties[_local6];
};
_local5++;
};
for (_local6 in _local4.properties) {
_local7 = false;
_local5 = 0;
while (_local5 < _arg2.length) {
if (_arg2[_local5] == _local6){
_local7 = true;
break;
};
_local5++;
};
if (!_local7){
_local4.properties[_local6] = undefined;
delete _local4.properties[_local6];
};
};
_tweenList.push(_local4);
return ((_tweenList.length - 1));
}
private static function updateTweens():Boolean{
var _local1:int;
if (_tweenList.length == 0){
return (false);
};
_local1 = 0;
while (_local1 < _tweenList.length) {
if ((((_tweenList[_local1] == undefined)) || (!(_tweenList[_local1].isPaused)))){
if (!updateTweenByIndex(_local1)){
removeTweenByIndex(_local1);
};
if (_tweenList[_local1] == null){
removeTweenByIndex(_local1, true);
_local1--;
};
};
_local1++;
};
return (true);
}
public static function removeTweenByIndex(_arg1:Number, _arg2:Boolean=false):Boolean{
_tweenList[_arg1] = null;
if (_arg2){
_tweenList.splice(_arg1, 1);
};
return (true);
}
public static function pauseTweenByIndex(_arg1:Number):Boolean{
var _local2:TweenListObj = _tweenList[_arg1];
if ((((_local2 == null)) || (_local2.isPaused))){
return (false);
};
_local2.timePaused = getCurrentTweeningTime(_local2);
_local2.isPaused = true;
return (true);
}
public static function resumeTweenByIndex(_arg1:Number):Boolean{
var _local2:TweenListObj = _tweenList[_arg1];
if ((((_local2 == null)) || (!(_local2.isPaused)))){
return (false);
};
var _local3:Number = getCurrentTweeningTime(_local2);
_local2.timeStart = (_local2.timeStart + (_local3 - _local2.timePaused));
_local2.timeComplete = (_local2.timeComplete + (_local3 - _local2.timePaused));
_local2.timePaused = undefined;
_local2.isPaused = false;
return (true);
}
private static function updateTweenByIndex(_arg1:Number):Boolean{
var tTweening:TweenListObj;
var mustUpdate:Boolean;
var nv:Number;
var t:Number;
var b:Number;
var c:Number;
var d:Number;
var pName:String;
var eventScope:Object;
var tScope:Object;
var tProperty:Object;
var pv:Number;
var i = _arg1;
tTweening = _tweenList[i];
if ((((tTweening == null)) || (!(Boolean(tTweening.scope))))){
return (false);
};
var isOver:Boolean;
var cTime:Number = getCurrentTweeningTime(tTweening);
if (cTime >= tTweening.timeStart){
tScope = tTweening.scope;
if (tTweening.isCaller){
do {
t = (((tTweening.timeComplete - tTweening.timeStart) / tTweening.count) * (tTweening.timesCalled + 1));
b = tTweening.timeStart;
c = (tTweening.timeComplete - tTweening.timeStart);
d = (tTweening.timeComplete - tTweening.timeStart);
nv = tTweening.transition(t, b, c, d);
} while (!(cTime >= nv));
} else {
mustUpdate = (((((tTweening.skipUpdates < 1)) || (!(tTweening.skipUpdates)))) || ((tTweening.updatesSkipped >= tTweening.skipUpdates)));
if (cTime >= tTweening.timeComplete){
isOver = true;
mustUpdate = true;
};
if (!tTweening.hasStarted){
if (Boolean(tTweening.onStart)){
eventScope = (Boolean(tTweening.onStartScope)) ? tTweening.onStartScope : tScope;
try {
tTweening.onStart.apply(eventScope, tTweening.onStartParams);
} catch(e2:Error) {
handleError(tTweening, e2, "onStart");
};
};
for (pName in tTweening.properties) {
if (tTweening.properties[pName].isSpecialProperty){
if (Boolean(_specialPropertyList[pName].preProcess)){
tTweening.properties[pName].valueComplete = _specialPropertyList[pName].preProcess(tScope, _specialPropertyList[pName].parameters, tTweening.properties[pName].originalValueComplete, tTweening.properties[pName].extra);
};
pv = _specialPropertyList[pName].getValue(tScope, _specialPropertyList[pName].parameters, tTweening.properties[pName].extra);
} else {
pv = tScope[pName];
};
tTweening.properties[pName].valueStart = (isNaN(pv)) ? tTweening.properties[pName].valueComplete : pv;
};
mustUpdate = true;
tTweening.hasStarted = true;
};
if (mustUpdate){
for (pName in tTweening.properties) {
tProperty = tTweening.properties[pName];
if (isOver){
nv = tProperty.valueComplete;
} else {
if (tProperty.hasModifier){
t = (cTime - tTweening.timeStart);
d = (tTweening.timeComplete - tTweening.timeStart);
nv = tTweening.transition(t, 0, 1, d, tTweening.transitionParams);
nv = tProperty.modifierFunction(tProperty.valueStart, tProperty.valueComplete, nv, tProperty.modifierParameters);
} else {
t = (cTime - tTweening.timeStart);
b = tProperty.valueStart;
c = (tProperty.valueComplete - tProperty.valueStart);
d = (tTweening.timeComplete - tTweening.timeStart);
nv = tTweening.transition(t, b, c, d, tTweening.transitionParams);
};
};
if (tTweening.rounded){
nv = Math.round(nv);
};
if (tProperty.isSpecialProperty){
_specialPropertyList[pName].setValue(tScope, nv, _specialPropertyList[pName].parameters, tTweening.properties[pName].extra);
} else {
tScope[pName] = nv;
};
};
tTweening.updatesSkipped = 0;
if (Boolean(tTweening.onUpdate)){
eventScope = (Boolean(tTweening.onUpdateScope)) ? tTweening.onUpdateScope : tScope;
try {
tTweening.onUpdate.apply(eventScope, tTweening.onUpdateParams);
} catch(e3:Error) {
handleError(tTweening, e3, "onUpdate");
};
};
} else {
tTweening.updatesSkipped++;
};
};
if (((isOver) && (Boolean(tTweening.onComplete)))){
eventScope = (Boolean(tTweening.onCompleteScope)) ? tTweening.onCompleteScope : tScope;
try {
tTweening.onComplete.apply(eventScope, tTweening.onCompleteParams);
} catch(e4:Error) {
handleError(tTweening, e4, "onComplete");
};
};
return (!(isOver));
};
return (true);
}
public static function init(... _args):void{
_inited = true;
_transitionList = new Object();
Equations.init();
_specialPropertyList = new Object();
_specialPropertyModifierList = new Object();
_specialPropertySplitterList = new Object();
}
public static function registerTransition(_arg1:String, _arg2:Function):void{
if (!_inited){
init();
};
_transitionList[_arg1] = _arg2;
}
public static function registerSpecialProperty(_arg1:String, _arg2:Function, _arg3:Function, _arg4:Array=null, _arg5:Function=null):void{
if (!_inited){
init();
};
var _local6:SpecialProperty = new SpecialProperty(_arg2, _arg3, _arg4, _arg5);
_specialPropertyList[_arg1] = _local6;
}
public static function registerSpecialPropertyModifier(_arg1:String, _arg2:Function, _arg3:Function):void{
if (!_inited){
init();
};
var _local4:SpecialPropertyModifier = new SpecialPropertyModifier(_arg2, _arg3);
_specialPropertyModifierList[_arg1] = _local4;
}
public static function registerSpecialPropertySplitter(_arg1:String, _arg2:Function, _arg3:Array=null):void{
if (!_inited){
init();
};
var _local4:SpecialPropertySplitter = new SpecialPropertySplitter(_arg2, _arg3);
_specialPropertySplitterList[_arg1] = _local4;
}
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();
}
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 updateTime():void{
_currentTime = getTimer();
}
public static function updateFrame():void{
_currentTimeFrame++;
}
public static function onEnterFrame(_arg1:Event):void{
updateTime();
updateFrame();
var _local2:Boolean;
_local2 = updateTweens();
if (!_local2){
stopEngine();
};
}
public static function setTimeScale(_arg1:Number):void{
var _local2:Number;
var _local3:Number;
if (isNaN(_arg1)){
_arg1 = 1;
};
if (_arg1 < 1E-5){
_arg1 = 1E-5;
};
if (_arg1 != _timeScale){
if (_tweenList != null){
_local2 = 0;
while (_local2 < _tweenList.length) {
_local3 = getCurrentTweeningTime(_tweenList[_local2]);
_tweenList[_local2].timeStart = (_local3 - (((_local3 - _tweenList[_local2].timeStart) * _timeScale) / _arg1));
_tweenList[_local2].timeComplete = (_local3 - (((_local3 - _tweenList[_local2].timeComplete) * _timeScale) / _arg1));
if (_tweenList[_local2].timePaused != undefined){
_tweenList[_local2].timePaused = (_local3 - (((_local3 - _tweenList[_local2].timePaused) * _timeScale) / _arg1));
};
_local2++;
};
};
_timeScale = _arg1;
};
}
public static function isTweening(_arg1:Object):Boolean{
var _local2:uint;
if (!Boolean(_tweenList)){
return (false);
};
_local2 = 0;
while (_local2 < _tweenList.length) {
if (((Boolean(_tweenList[_local2])) && ((_tweenList[_local2].scope == _arg1)))){
return (true);
};
_local2++;
};
return (false);
}
public static function getTweens(_arg1:Object):Array{
var _local2:uint;
var _local3:String;
if (!Boolean(_tweenList)){
return ([]);
};
var _local4:Array = new Array();
_local2 = 0;
while (_local2 < _tweenList.length) {
if (((Boolean(_tweenList[_local2])) && ((_tweenList[_local2].scope == _arg1)))){
for (_local3 in _tweenList[_local2].properties) {
_local4.push(_local3);
};
};
_local2++;
};
return (_local4);
}
public static function getTweenCount(_arg1:Object):Number{
var _local2:uint;
if (!Boolean(_tweenList)){
return (0);
};
var _local3:Number = 0;
_local2 = 0;
while (_local2 < _tweenList.length) {
if (((Boolean(_tweenList[_local2])) && ((_tweenList[_local2].scope == _arg1)))){
_local3 = (_local3 + AuxFunctions.getObjectLength(_tweenList[_local2].properties));
};
_local2++;
};
return (_local3);
}
private static function handleError(_arg1:TweenListObj, _arg2:Error, _arg3:String):void{
var eventScope:Object;
var pTweening = _arg1;
var pError = _arg2;
var pCallBackName = _arg3;
if (((Boolean(pTweening.onError)) && ((pTweening.onError is Function)))){
eventScope = (Boolean(pTweening.onErrorScope)) ? pTweening.onErrorScope : pTweening.scope;
try {
pTweening.onError.apply(eventScope, [pTweening.scope, pError]);
} catch(metaError:Error) {
printError(((((String(pTweening.scope) + " raised an error while executing the 'onError' handler. Original error:\n ") + pError.getStackTrace()) + "\nonError error: ") + metaError.getStackTrace()));
};
} else {
if (!Boolean(pTweening.onError)){
printError(((((String(pTweening.scope) + " raised an error while executing the '") + pCallBackName) + "'handler. \n") + pError.getStackTrace()));
};
};
}
public static function getCurrentTweeningTime(_arg1:Object):Number{
return ((_arg1.useFrames) ? _currentTimeFrame : _currentTime);
}
public static function getVersion():String{
return ("AS3 1.33.74");
}
public static function printError(_arg1:String):void{
trace(("## [Tweener] Error: " + _arg1));
}
}
}//package caurina.transitions
Section 17
//TweenListObj (caurina.transitions.TweenListObj)
package caurina.transitions {
public class TweenListObj {
public var scope:Object;
public var properties:Object;
public var timeStart:Number;
public var timeComplete:Number;
public var useFrames:Boolean;
public var transition:Function;
public var transitionParams:Object;
public var onStart:Function;
public var onUpdate:Function;
public var onComplete:Function;
public var onOverwrite:Function;
public var onError:Function;
public var onStartParams:Array;
public var onUpdateParams:Array;
public var onCompleteParams:Array;
public var onOverwriteParams:Array;
public var onStartScope:Object;
public var onUpdateScope:Object;
public var onCompleteScope:Object;
public var onOverwriteScope:Object;
public var onErrorScope:Object;
public var rounded:Boolean;
public var isPaused:Boolean;
public var timePaused:Number;
public var isCaller:Boolean;
public var count:Number;
public var timesCalled:Number;
public var waitFrames:Boolean;
public var skipUpdates:Number;
public var updatesSkipped:Number;
public var hasStarted:Boolean;
public function TweenListObj(_arg1:Object, _arg2:Number, _arg3:Number, _arg4:Boolean, _arg5:Function, _arg6:Object){
scope = _arg1;
timeStart = _arg2;
timeComplete = _arg3;
useFrames = _arg4;
transition = _arg5;
transitionParams = _arg6;
properties = new Object();
isPaused = false;
timePaused = undefined;
isCaller = false;
updatesSkipped = 0;
timesCalled = 0;
skipUpdates = 0;
hasStarted = false;
}
public function clone(_arg1:Boolean):TweenListObj{
var _local3:String;
var _local2:TweenListObj = new TweenListObj(scope, timeStart, timeComplete, useFrames, transition, transitionParams);
_local2.properties = new Array();
for (_local3 in properties) {
_local2.properties[_local3] = properties[_local3].clone();
};
_local2.skipUpdates = skipUpdates;
_local2.updatesSkipped = updatesSkipped;
if (!_arg1){
_local2.onStart = onStart;
_local2.onUpdate = onUpdate;
_local2.onComplete = onComplete;
_local2.onOverwrite = onOverwrite;
_local2.onError = onError;
_local2.onStartParams = onStartParams;
_local2.onUpdateParams = onUpdateParams;
_local2.onCompleteParams = onCompleteParams;
_local2.onOverwriteParams = onOverwriteParams;
_local2.onStartScope = onStartScope;
_local2.onUpdateScope = onUpdateScope;
_local2.onCompleteScope = onCompleteScope;
_local2.onOverwriteScope = onOverwriteScope;
_local2.onErrorScope = onErrorScope;
};
_local2.rounded = rounded;
_local2.isPaused = isPaused;
_local2.timePaused = timePaused;
_local2.isCaller = isCaller;
_local2.count = count;
_local2.timesCalled = timesCalled;
_local2.waitFrames = waitFrames;
_local2.hasStarted = hasStarted;
return (_local2);
}
public function toString():String{
var _local3:String;
var _local1 = "\n[TweenListObj ";
_local1 = (_local1 + ("scope:" + String(scope)));
_local1 = (_local1 + ", properties:");
var _local2:Boolean;
for (_local3 in properties) {
if (!_local2){
_local1 = (_local1 + ",");
};
_local1 = (_local1 + ("[name:" + properties[_local3].name));
_local1 = (_local1 + (",valueStart:" + properties[_local3].valueStart));
_local1 = (_local1 + (",valueComplete:" + properties[_local3].valueComplete));
_local1 = (_local1 + "]");
_local2 = false;
};
_local1 = (_local1 + (", timeStart:" + String(timeStart)));
_local1 = (_local1 + (", timeComplete:" + String(timeComplete)));
_local1 = (_local1 + (", useFrames:" + String(useFrames)));
_local1 = (_local1 + (", transition:" + String(transition)));
_local1 = (_local1 + (", transitionParams:" + String(transitionParams)));
if (skipUpdates){
_local1 = (_local1 + (", skipUpdates:" + String(skipUpdates)));
};
if (updatesSkipped){
_local1 = (_local1 + (", updatesSkipped:" + String(updatesSkipped)));
};
if (Boolean(onStart)){
_local1 = (_local1 + (", onStart:" + String(onStart)));
};
if (Boolean(onUpdate)){
_local1 = (_local1 + (", onUpdate:" + String(onUpdate)));
};
if (Boolean(onComplete)){
_local1 = (_local1 + (", onComplete:" + String(onComplete)));
};
if (Boolean(onOverwrite)){
_local1 = (_local1 + (", onOverwrite:" + String(onOverwrite)));
};
if (Boolean(onError)){
_local1 = (_local1 + (", onError:" + String(onError)));
};
if (onStartParams){
_local1 = (_local1 + (", onStartParams:" + String(onStartParams)));
};
if (onUpdateParams){
_local1 = (_local1 + (", onUpdateParams:" + String(onUpdateParams)));
};
if (onCompleteParams){
_local1 = (_local1 + (", onCompleteParams:" + String(onCompleteParams)));
};
if (onOverwriteParams){
_local1 = (_local1 + (", onOverwriteParams:" + String(onOverwriteParams)));
};
if (onStartScope){
_local1 = (_local1 + (", onStartScope:" + String(onStartScope)));
};
if (onUpdateScope){
_local1 = (_local1 + (", onUpdateScope:" + String(onUpdateScope)));
};
if (onCompleteScope){
_local1 = (_local1 + (", onCompleteScope:" + String(onCompleteScope)));
};
if (onOverwriteScope){
_local1 = (_local1 + (", onOverwriteScope:" + String(onOverwriteScope)));
};
if (onErrorScope){
_local1 = (_local1 + (", onErrorScope:" + String(onErrorScope)));
};
if (rounded){
_local1 = (_local1 + (", rounded:" + String(rounded)));
};
if (isPaused){
_local1 = (_local1 + (", isPaused:" + String(isPaused)));
};
if (timePaused){
_local1 = (_local1 + (", timePaused:" + String(timePaused)));
};
if (isCaller){
_local1 = (_local1 + (", isCaller:" + String(isCaller)));
};
if (count){
_local1 = (_local1 + (", count:" + String(count)));
};
if (timesCalled){
_local1 = (_local1 + (", timesCalled:" + String(timesCalled)));
};
if (waitFrames){
_local1 = (_local1 + (", waitFrames:" + String(waitFrames)));
};
if (hasStarted){
_local1 = (_local1 + (", hasStarted:" + String(hasStarted)));
};
_local1 = (_local1 + "]\n");
return (_local1);
}
public static function makePropertiesChain(_arg1:Object):Object{
var _local3:Object;
var _local4:Object;
var _local5:Object;
var _local6:Number;
var _local7:Number;
var _local8:Number;
var _local2:Object = _arg1.base;
if (_local2){
_local3 = {};
if ((_local2 is Array)){
_local4 = [];
_local8 = 0;
while (_local8 < _local2.length) {
_local4.push(_local2[_local8]);
_local8++;
};
} else {
_local4 = [_local2];
};
_local4.push(_arg1);
_local6 = _local4.length;
_local7 = 0;
while (_local7 < _local6) {
if (_local4[_local7]["base"]){
_local5 = AuxFunctions.concatObjects(makePropertiesChain(_local4[_local7]["base"]), _local4[_local7]);
} else {
_local5 = _local4[_local7];
};
_local3 = AuxFunctions.concatObjects(_local3, _local5);
_local7++;
};
if (_local3["base"]){
delete _local3["base"];
};
return (_local3);
//unresolved jump
};
return (_arg1);
}
}
}//package caurina.transitions
Section 18
//ScoreService (com.spilgames.api.ScoreService)
package com.spilgames.api {
public class ScoreService {
public static function submitScore(_arg1:int, _arg2:Function=null):int{
return (SpilGamesServices.getInstance().send("Score", "submitScore", _arg2, {score:_arg1, userName:User.getUserName(), userHash:User.getUserHash()}));
}
}
}//package com.spilgames.api
Section 19
//SpilGamesServices (com.spilgames.api.SpilGamesServices)
package com.spilgames.api {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import flash.net.*;
import flash.system.*;
public class SpilGamesServices extends MovieClip {
private const DEFAULT_CONNECTION_LOCATION:String = "http://www8.agame.com/games/flash/services/ServicesConnection.swf";
private var _servicesConnection;// = null
private var _loader:Loader;
private var _connecting:Boolean;// = false
private var _connected:Boolean;// = false
private var _request:URLRequest;
private var _numConnectionLoadTries:uint;// = 0
private var _alwaysInFront:Boolean;// = false
private var currentDelay:Number;// = 0
private var previousFrameTime:Number;
public static const INVALID_ID:int = -1;
public static const INVALID_DOMAIN:String = "invalidDomain";
public static const CONFIGURATION_FAILED:String = "configurationFailure";
private static const MAX_CONNECTION_LOAD_RETRIES:uint = 99;
private static var _instance:SpilGamesServices = null;
public function SpilGamesServices(_arg1:Private=null){
if (!_arg1){
throw (new Error("Cannot instantiate this class, use SpilGamesServices.getInstance"));
};
}
public function get version():String{
return ("1.1");
}
public function get connecting():Boolean{
return (_connecting);
}
public function get connection(){
return (_servicesConnection);
}
public function set alwaysInFront(_arg1:Boolean):void{
if (_alwaysInFront != _arg1){
_alwaysInFront = _arg1;
if (_alwaysInFront){
addEventListener(Event.ENTER_FRAME, bringToFront);
} else {
removeEventListener(Event.ENTER_FRAME, bringToFront);
};
};
}
public function get alwaysInFront():Boolean{
return (_alwaysInFront);
}
public function connect(_arg1:DisplayObjectContainer, ... _args):void{
var _local3:String;
var _local4:URLVariables;
var _local5:Date;
if (((!(_connecting)) && (!(_connected)))){
if (!_arg1.stage){
throw (new Error("The given clip must be present in the display list (added to stage)"));
};
_connecting = true;
_arg1.stage.addChild(this);
addEventListener(Event.REMOVED_FROM_STAGE, handleRemovedFromStage);
if (((root.loaderInfo.parameters["servicesLoc"]) && ((root.loaderInfo.parameters["servicesLoc"].length > 0)))){
_local3 = root.loaderInfo.parameters["servicesLoc"];
_request = new URLRequest(_local3);
} else {
_local3 = DEFAULT_CONNECTION_LOCATION;
_local4 = new URLVariables();
_local5 = new Date();
_local4.nocache = ((((_local5.fullYear * 12) + (_local5.month + 1)) * 31) + _local5.day);
_request = new URLRequest(_local3);
_request.data = _local4;
};
allowDomain(_local3);
_loader = new Loader();
_loader.contentLoaderInfo.addEventListener(Event.COMPLETE, handleLoadComplete);
_loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, handleIOError);
_loader.load(_request);
};
}
public function disconnect():void{
if (_servicesConnection){
_servicesConnection.removeEventListener(Event.COMPLETE, handleServicesReady);
_servicesConnection.removeEventListener(ErrorEvent.ERROR, handleServicesFailed);
_servicesConnection.removeEventListener("serviceError", handleServiceError);
if (_connected){
_servicesConnection.disconnect();
};
removeChild(_servicesConnection);
};
_servicesConnection = null;
if (_loader){
try {
_loader.close();
} catch(e:Error) {
} finally {
_loader.contentLoaderInfo.removeEventListener(Event.COMPLETE, handleLoadComplete);
_loader.contentLoaderInfo.removeEventListener(IOErrorEvent.IO_ERROR, handleIOError);
};
_loader = null;
};
removeEventListener(Event.ENTER_FRAME, bringToFront);
removeEventListener(Event.REMOVED_FROM_STAGE, handleRemovedFromStage);
if (parent){
parent.removeChild(this);
};
_connected = (_connecting = false);
}
public function getChannelID():int{
if (_servicesConnection != null){
return (_servicesConnection.getChannelID());
};
return (INVALID_ID);
}
public function getSiteID():int{
if (_servicesConnection != null){
return (_servicesConnection.getSiteID());
};
return (INVALID_ID);
}
public function getItemID():int{
if (_servicesConnection != null){
return (_servicesConnection.getItemID());
};
return (INVALID_ID);
}
public function isReady():Boolean{
return (((!((_servicesConnection == null))) && (_servicesConnection.isReady())));
}
public function isDomainAllowed():Boolean{
return (((!((_servicesConnection == null))) && (_servicesConnection.isDomainValid())));
}
public function isServiceAvailable(_arg1:String):Boolean{
return (((isReady()) && (_servicesConnection.isServiceAvailable(_arg1))));
}
public function send(_arg1:String, _arg2:String, _arg3:Function, _arg4:Object=null):int{
if (isReady()){
return (_servicesConnection.send(_arg1, _arg2, _arg3, _arg4));
};
return (INVALID_ID);
}
public function bringToFront(_arg1:Event=null):void{
var e = _arg1;
if (parent){
try {
parent.setChildIndex(this, (parent.numChildren - 1));
} catch(e:Error) {
removeEventListener(Event.ENTER_FRAME, bringToFront);
};
};
}
public function allowDomain(_arg1:String):void{
Security.allowDomain("*");
Security.allowInsecureDomain("*");
}
private function handleRemovedFromStage(_arg1:Event):void{
trace("WARNING: please do not remove SpilGamesServices from the stage");
}
private function handleLoadComplete(_arg1:Event):void{
_loader.contentLoaderInfo.removeEventListener(Event.COMPLETE, handleLoadComplete);
_loader.contentLoaderInfo.removeEventListener(IOErrorEvent.IO_ERROR, handleIOError);
_servicesConnection = LoaderInfo(_arg1.target).content;
_servicesConnection.addEventListener(Event.COMPLETE, handleServicesReady);
_servicesConnection.addEventListener(ErrorEvent.ERROR, handleServicesFailed);
_servicesConnection.addEventListener("serviceError", handleServiceError);
addChild(_servicesConnection);
}
private function handleIOError(_arg1:IOErrorEvent):void{
_numConnectionLoadTries++;
if (_numConnectionLoadTries > MAX_CONNECTION_LOAD_RETRIES){
_loader.contentLoaderInfo.removeEventListener(Event.COMPLETE, handleLoadComplete);
_loader.contentLoaderInfo.removeEventListener(IOErrorEvent.IO_ERROR, handleIOError);
_connecting = false;
trace("ERROR: SpilGamesServices failed to load the connection object");
if (hasEventListener(_arg1.type)){
dispatchEvent(_arg1);
};
} else {
trace(("WARN: SpilGamesServices failed to load the connection object, retry #" + _numConnectionLoadTries));
previousFrameTime = getTimer();
addEventListener(Event.ENTER_FRAME, updateConnectionRetry);
};
}
private function updateConnectionRetry(_arg1:Event):void{
var _local2:Number = getTimer();
var _local3:Number = ((_local2 - previousFrameTime) / 1000);
currentDelay = (currentDelay + _local3);
if (currentDelay >= 2){
trace(("WARN: SpilGamesServices trying to reconnect after: " + currentDelay));
_loader.load(_request);
removeEventListener(Event.ENTER_FRAME, updateConnectionRetry);
currentDelay = 0;
};
previousFrameTime = _local2;
}
private function handleServicesReady(_arg1:Event):void{
_loader.contentLoaderInfo.removeEventListener(Event.COMPLETE, handleLoadComplete);
_loader.contentLoaderInfo.removeEventListener(IOErrorEvent.IO_ERROR, handleIOError);
_connected = true;
_connecting = false;
dispatchEvent(new Event("servicesReady"));
}
private function handleServicesFailed(_arg1:ErrorEvent):void{
_servicesConnection.addEventListener(Event.COMPLETE, handleServicesReady);
_servicesConnection.addEventListener(ErrorEvent.ERROR, handleServicesFailed);
_servicesConnection.addEventListener("serviceError", handleServiceError);
_connecting = false;
if (hasEventListener("servicesFailed")){
dispatchEvent(new ErrorEvent("servicesFailed", false, false, _arg1.text));
};
}
private function handleServiceError(_arg1:Event):void{
var _local2:String;
if (hasEventListener("serviceError")){
_local2 = "";
if ((_arg1 is ErrorEvent)){
_local2 = ErrorEvent(_arg1).text;
} else {
_local2 = _arg1.toString();
};
dispatchEvent(new ErrorEvent("serviceError", false, false, _local2));
};
}
public static function getInstance():SpilGamesServices{
if (!_instance){
_instance = new SpilGamesServices(new Private());
};
return (_instance);
}
}
}//package com.spilgames.api
class Private {
private function Private(){
}
}
Section 20
//User (com.spilgames.api.User)
package com.spilgames.api {
import flash.display.*;
public class User {
public static function isGuest():Boolean{
var _local2:DisplayObject;
var _local3:Object;
var _local1:* = SpilGamesServices.getInstance().connection;
if (_local1 != null){
return (_local1.isGuest());
};
_local2 = SpilGamesServices.getInstance().root;
if (_local2.loaderInfo != null){
_local3 = _local2.loaderInfo.parameters;
return (((((((!(_local3.username)) || ((_local3.username == "")))) || (!(_local3.hash)))) || ((_local3.hash == ""))));
};
return (false);
}
public static function getUserName():String{
var _local1:* = SpilGamesServices.getInstance().connection;
if (_local1 != null){
return (_local1.getUserName());
};
return ("");
}
public static function getUserHash():String{
var _local1:* = SpilGamesServices.getInstance().connection;
if (_local1 != null){
return (_local1.getUserHash());
};
return ("");
}
}
}//package com.spilgames.api
Section 21
//SoundManager (fangxu.manager.SoundManager)
package fangxu.manager {
import flash.events.*;
import flash.media.*;
public class SoundManager {
public var musicOn:Boolean;
public var effectsOn:Boolean;
private var _sound:Sound;
private var _channel:SoundChannel;
private var _isSound:Boolean;// = true
private static var instance:SoundManager;
private static var key:Boolean = false;
public function SoundManager(){
if (!key){
throw (new Error("单例,请用 getInstance() 取实例!"));
};
key = false;
musicOn = true;
effectsOn = true;
}
public function startSound(_arg1:Class){
if (_channel != null){
this.clear();
};
_sound = new (_arg1);
this.start();
}
private function onSoundEnd(_arg1:Event):void{
_channel.removeEventListener(Event.SOUND_COMPLETE, this.onSoundEnd);
this.start();
if (_isSound){
_channel.soundTransform = new SoundTransform(1);
} else {
_channel.soundTransform = new SoundTransform(0);
};
}
public function start():void{
if (_sound != null){
_channel = _sound.play();
_channel.addEventListener(Event.SOUND_COMPLETE, this.onSoundEnd);
};
}
public function stop():void{
if (_channel != null){
_channel.stop();
_channel.removeEventListener(Event.SOUND_COMPLETE, this.onSoundEnd);
};
}
public function clear():void{
this.stop();
_sound = null;
_channel = null;
_isSound = true;
}
public function stopSound():void{
_channel.stop();
_isSound = false;
}
public static function getInstance():SoundManager{
if (SoundManager.instance == null){
key = true;
SoundManager.instance = new (SoundManager);
};
return (SoundManager.instance);
}
}
}//package fangxu.manager
Section 22
//TimeManager (fangxu.manager.TimeManager)
package fangxu.manager {
import flash.events.*;
import flash.utils.*;
public class TimeManager {
private var _timer:Timer;
private var _timerFn:Function;
private var _completeFn:Function;
private var _isTimeOn:Boolean;// = false
private static var instance:TimeManager;
private static var key:Boolean = false;
public function TimeManager(){
if (!key){
throw (new Error("单例,请用 getInstance() 取实例!"));
};
key = false;
_isTimeOn = false;
}
public function clear():void{
if (_timer != null){
_isTimeOn = false;
_timer.removeEventListener(TimerEvent.TIMER, _timerFn);
_timer.removeEventListener(TimerEvent.TIMER_COMPLETE, _completeFn);
_timer.stop();
_timer = null;
};
}
public function stop():void{
if (_timer != null){
_isTimeOn = false;
_timer.stop();
};
}
public function start():void{
if (_timer != null){
_isTimeOn = true;
_timer.start();
};
}
public function adStart(_arg1:uint, _arg2:Function, _arg3:Function):void{
this._timerFn = _arg2;
this._completeFn = _arg3;
if (_timer == null){
_isTimeOn = true;
_timer = new Timer(1000, _arg1);
_timer.addEventListener(TimerEvent.TIMER, _timerFn);
_timer.addEventListener(TimerEvent.TIMER_COMPLETE, _completeFn);
_timer.start();
} else {
this.clear();
};
}
public function reStart(_arg1:uint):void{
if (_timer != null){
this.clear();
};
_isTimeOn = true;
_timer = new Timer(1000, _arg1);
_timer.addEventListener(TimerEvent.TIMER, _timerFn);
_timer.addEventListener(TimerEvent.TIMER_COMPLETE, _completeFn);
_timer.start();
}
public static function getInstance():TimeManager{
if (TimeManager.instance == null){
key = true;
TimeManager.instance = new (TimeManager);
};
return (TimeManager.instance);
}
}
}//package fangxu.manager
Section 23
//NumberUtil (fangxu.util.NumberUtil)
package fangxu.util {
public class NumberUtil {
public static function ranFloor(_arg1:int, _arg2:int):int{
return ((Math.floor((Math.random() * ((_arg2 - _arg1) + 1))) + _arg1));
}
public static function random(_arg1:Number, _arg2:Number):Number{
return (((Math.random() * ((_arg2 - _arg1) + 1)) + _arg1));
}
}
}//package fangxu.util
Section 24
//TimeUtil (fangxu.util.TimeUtil)
package fangxu.util {
public class TimeUtil {
public static function convertTime(_arg1:Number):String{
var _local2:* = Math.ceil(_arg1);
var _local3:* = Math.floor((_local2 / 60));
return (((_local3 + ":") + strPad((_local2 % 60))));
}
public static function strPad(_arg1):String{
var _local2:String = new String(_arg1);
if (_local2.length <= 1){
_local2 = ("0" + _local2);
};
return (_local2);
}
}
}//package fangxu.util
Section 25
//MainBase (fangxu.MainBase)
package fangxu {
import flash.display.*;
import flash.events.*;
import fangxu.manager.*;
public class MainBase extends Sprite {
public var mRoot;
public var mStage:Stage;
public var _mouseSprite:Sprite;
private var _bSound:Boolean;
private var _bMusic:Boolean;
private var _bPause:Boolean;
private var _bNLevel:Boolean;
var _mcPause;
var _mcNLevel;
public function initBase(_arg1:Stage, _arg2=null){
this.mRoot = _arg2;
this.mStage = _arg1;
_bSound = true;
_bMusic = true;
_bPause = false;
_bNLevel = false;
}
public function adMouseSprite(_arg1=null, _arg2:Number=0, _arg3:uint=0x9900):Sprite{
var _local4:Number;
var _local5:Number;
trace("adMouseSprite", _arg1);
if (_arg1 == null){
_arg1 = this.mStage;
_local4 = _arg1.stageWidth;
_local5 = _arg1.stageHeight;
} else {
_local4 = _arg1.width;
_local5 = _arg1.height;
};
var _local6:Sprite = new Sprite();
_local6.graphics.beginFill(_arg3);
_local6.graphics.drawRect(0, 0, _local4, _local5);
_local6.graphics.endFill();
_local6.alpha = _arg2;
_arg1.addChild(_local6);
mouseSprite = _local6;
return (_local6);
}
public function rmMouseSprite():Boolean{
try {
trace("rmMouseSprite", _mouseSprite.parent);
_mouseSprite.parent.removeChild(_mouseSprite);
} catch(e) {
trace(e);
return (false);
};
return (true);
}
public function get mouseSprite():Sprite{
return (_mouseSprite);
}
public function set bSound(_arg1:Boolean):void{
_bSound = _arg1;
}
public function get bSound():Boolean{
return (_bSound);
}
public function set bMusic(_arg1:Boolean):void{
_bMusic = _arg1;
}
public function get bMusic():Boolean{
return (_bMusic);
}
public function set bPause(_arg1:Boolean):void{
_bPause = _arg1;
}
public function get bPause():Boolean{
return (_bPause);
}
public function set bNLevel(_arg1:Boolean):void{
_bNLevel = _arg1;
}
public function get bNLevel():Boolean{
return (_bNLevel);
}
public function set mouseSprite(_arg1:Sprite):void{
_mouseSprite = _arg1;
}
public function pause(_arg1:Class, _arg2:Boolean=true, _arg3:Function=null, _arg4:Function=null):void{
var mcClass = _arg1;
var bPause = _arg2;
var onPause = _arg3;
var outPause = _arg4;
_bPause = bPause;
if (bPause){
_mcPause = new (mcClass);
_mcPause.x = ((mStage.stageWidth / 2) - (_mcPause.width / 2));
_mcPause.y = ((mStage.stageHeight / 2) - (_mcPause.height / 2));
mStage.addChild(_mcPause);
_mcPause.btContinue.addEventListener(MouseEvent.CLICK, function (){
pause(mcClass, false, onPause, outPause);
});
adMouseSprite(mStage);
_mcPause.visible = true;
mStage.swapChildren(_mcPause, _mouseSprite);
TimeManager.getInstance().stop();
if (_bMusic){
SoundManager.getInstance().stop();
};
if (onPause != null){
onPause();
};
} else {
rmMouseSprite();
mStage.removeChild(_mcPause);
TimeManager.getInstance().start();
if (_bMusic){
SoundManager.getInstance().start();
};
if (outPause != null){
outPause();
};
};
}
public function nextLevel(_arg1:Class, _arg2:Boolean=true, _arg3:Function=null, _arg4:Function=null):void{
var mcClass = _arg1;
var p_bNLevel = _arg2;
var onNLevel = _arg3;
var outNLevel = _arg4;
_bNLevel = p_bNLevel;
if (_bNLevel){
if (_mcNLevel == null){
_mcNLevel = new (mcClass);
_mcNLevel.x = ((mStage.stageWidth / 2) - (_mcNLevel.width / 2));
_mcNLevel.y = ((mStage.stageHeight / 2) - (_mcNLevel.height / 2));
mStage.addChild(_mcNLevel);
if ((_mcNLevel.btNextLevel is MovieClip)){
_mcNLevel.btNextLevel.buttonMode = true;
};
_mcNLevel.btNextLevel.addEventListener(MouseEvent.CLICK, function (){
nextLevel(mcClass, false, onNLevel, outNLevel);
});
};
adMouseSprite(mStage);
_mcNLevel.visible = true;
mStage.swapChildren(_mcNLevel, _mouseSprite);
TimeManager.getInstance().stop();
if (_bMusic){
SoundManager.getInstance().stop();
};
if (onNLevel != null){
onNLevel();
};
} else {
rmMouseSprite();
_mcNLevel.visible = false;
TimeManager.getInstance().start();
if (_bMusic){
SoundManager.getInstance().start();
};
if (outNLevel != null){
outNLevel();
};
};
}
}
}//package fangxu
Section 26
//Coffea (game.Coffea)
package game {
public class Coffea extends Product {
public function Coffea(){
steps = [Util.COFFEA_CUP, Util.COFFEA];
}
}
}//package game
Section 27
//Config (game.Config)
package game {
public class Config {
public static const MAX_LEVEL:int = 30;
public static function getTime(_arg1:int=1):int{
var _local2 = 60;
switch (_arg1){
case 1:
_local2 = 90;
break;
case 2:
_local2 = 130;
break;
case 3:
_local2 = 200;
break;
case 4:
_local2 = 260;
break;
case 5:
_local2 = 330;
break;
case 6:
_local2 = 400;
break;
case 7:
_local2 = 480;
break;
case 8:
_local2 = 560;
break;
case 9:
_local2 = 630;
break;
case 10:
_local2 = 700;
break;
};
return (_local2);
}
public static function getGoal(_arg1:int=1):int{
var _local2 = 1000;
switch (_arg1){
case 1:
_local2 = 800;
break;
case 2:
_local2 = 1500;
break;
case 3:
_local2 = 3000;
break;
case 4:
_local2 = 5000;
break;
case 5:
_local2 = 7500;
break;
case 6:
_local2 = 11500;
break;
case 7:
_local2 = 16000;
break;
case 8:
_local2 = 20000;
break;
case 9:
_local2 = 27000;
break;
case 10:
_local2 = 3500;
break;
};
return (_local2);
}
public static function getAngryTime(_arg1:int=1):int{
var _local2 = 60;
switch (_arg1){
case 1:
_local2 = 20;
break;
case 2:
_local2 = 17;
break;
case 3:
_local2 = 14;
break;
case 4:
_local2 = 12;
break;
case 5:
_local2 = 10;
break;
case 6:
_local2 = 9;
break;
case 7:
_local2 = 8;
break;
case 8:
_local2 = 7;
break;
case 9:
_local2 = 6;
break;
case 10:
_local2 = 5;
break;
};
return (_local2);
}
public static function getProducts(_arg1:int=1):Array{
var _local2:Array = [IceCream, IceCream2, IceCream4, IceCream5, IceCream6, IceCream7, IceCream8, IceCream9, IceCream10, Coffea, Drink1, Drink2, Drink3];
switch (_arg1){
case 1:
_local2 = [Coffea, Drink1, Drink2, Drink3];
break;
case 2:
_local2 = [IceCream4, Coffea, Drink1, Drink2, Drink3];
break;
case 3:
_local2 = [IceCream4, IceCream5, IceCream6, IceCream7, Coffea, Drink1, Drink2, Drink3];
break;
case 4:
_local2 = [IceCream, IceCream2, IceCream4, IceCream5, IceCream6, IceCream7, Coffea, Drink1, Drink2, Drink3];
break;
};
return (_local2);
}
public static function getCustomers(_arg1:int=1):Array{
var _local2:Array = [Customer1, Customer2, Customer3, Customer4];
switch (_arg1){
case 1:
_local2 = [Customer1, Customer2];
break;
case 2:
_local2 = [Customer1, Customer2, Customer3];
break;
};
return (_local2);
}
}
}//package game
Section 28
//Customer (game.Customer)
package game {
import flash.display.*;
import flash.events.*;
import caurina.transitions.*;
import fangxu.util.*;
public class Customer extends MovieClip {
private var state:String;
private var action:String;
private var mcCustomer1:MovieClip;
private var mcCustomer2:MovieClip;
private var mcOrder1:MovieClip;
private var mcOrder2:MovieClip;
private var mcMark1:MovieClip;
private var mcMark2:MovieClip;
private var mcTimer:MovieClip;
private var mcTable:MovieClip;
private var mcChair:MovieClip;
private var updateTime:int;// = 1
private var eatTime:int;// = 1
private var thinkTime:int;// = 2
private var bLeftCustomer1:Boolean;
private var arrProds:Array;
private var ProdClass1:Class;
private var ProdClass2:Class;
private var food1:MovieClip;
private var food2:MovieClip;
public var bFirstClick:Boolean;
public var curTable:MovieClip;
public function Customer(){
arrProds = [];
super();
this.gotoAndStop(1);
this.bFirstClick = true;
}
public function init(_arg1:MovieClip, _arg2:MovieClip, _arg3:MovieClip, _arg4:MovieClip, _arg5:MovieClip, _arg6:MovieClip, _arg7:MovieClip, _arg8:Number, _arg9:Number, _arg10:Boolean, _arg11:MovieClip, _arg12:MovieClip):void{
this.bLeftCustomer1 = _arg10;
this.mcCustomer1 = _arg3;
this.mcCustomer2 = _arg5;
this.mcOrder1 = _arg2;
this.mcOrder2 = _arg4;
this.mcMark1 = _arg11;
this.mcMark2 = _arg12;
this.mcTimer = _arg1;
this.mcTable = _arg6;
this.mcChair = _arg7;
this.updateTime = _arg8;
this.eatTime = _arg9;
this.mcOrder1.alpha = 0;
this.mcMark1.alpha = 0;
if (this.mcOrder2 != null){
this.mcOrder2.alpha = 0;
this.mcMark2.alpha = 0;
};
this.mcCustomer1.gotoAndStop(1);
if (this.mcCustomer2 != null){
this.mcCustomer2.gotoAndStop(1);
};
this.mcTable.visible = false;
this.mcChair.visible = false;
this.mcTimer.init(updateTime);
this.mcTimer.addEventListener(GameEvent.BUYER_CHANGE_STATE, changeState);
}
private function changeState(_arg1:GameEvent):void{
var _local2:Number;
if ((((mcCustomer1.currentFrame == mcCustomer1.totalFrames)) || ((mcCustomer1.currentFrame == (mcCustomer1.totalFrames / 2))))){
_local2 = clearTime();
trace(GameEvent.BUYER_VERY_ANGRY);
dispatchEvent(new GameEvent(GameEvent.BUYER_VERY_ANGRY, _local2));
} else {
mcCustomer1.nextFrame();
if (mcCustomer2 != null){
mcCustomer2.nextFrame();
};
};
}
private function clearTime():Number{
mcTimer.visible = false;
return (mcTimer.destory());
}
public function destory():void{
clearTime();
}
public function fnPause():void{
mcTimer.fnPause();
}
public function fnContinue():void{
mcTimer.fnContinue();
}
public function putFood(_arg1:Class):Boolean{
if ((((this.curTable == null)) || (!(mcTimer.visible)))){
return (false);
};
if ((((mcOrder1.alpha == 1)) && ((_arg1 == ProdClass1)))){
this.mcOrder1.alpha = 0;
if (bLeftCustomer1){
moveFood(food1, 28, 82.4);
} else {
moveFood(food1, 89.2, 78.2);
};
Tweener.addTween(food1, {alpha:0, time:eatTime, transition:"linear", onComplete:fnEatOver});
} else {
if (((!((mcOrder2 == null))) && ((_arg1 == ProdClass2)))){
this.mcOrder2.alpha = 0;
if (bLeftCustomer1){
moveFood(food2, 89.2, 78.2);
} else {
moveFood(food2, 28, 82.4);
};
Tweener.addTween(food2, {alpha:0, time:eatTime, transition:"linear", onComplete:fnEatOver});
} else {
trace("Food Error");
dispatchEvent(new GameEvent(GameEvent.PRODUCT_ERROR));
if (mcOrder1.alpha == 1){
Tweener.addTween([mcOrder1, food1], {alpha:0, time:0.5, delay:0, transition:"linear"});
Tweener.addTween([mcOrder1, food1], {alpha:1, time:0.5, delay:0.5, transition:"linear"});
Tweener.addTween([mcOrder1, food1], {alpha:0, time:0.5, delay:1, transition:"linear"});
Tweener.addTween([mcOrder1, food1], {alpha:1, time:0.5, delay:1.5, transition:"linear"});
};
if (((!((mcOrder2 == null))) && ((mcOrder2.alpha == 1)))){
Tweener.addTween([mcOrder2, food2], {alpha:0, time:0.5, delay:0, transition:"linear"});
Tweener.addTween([mcOrder2, food2], {alpha:1, time:0.5, delay:0.5, transition:"linear"});
Tweener.addTween([mcOrder2, food2], {alpha:0, time:0.5, delay:1, transition:"linear"});
Tweener.addTween([mcOrder2, food2], {alpha:1, time:0.5, delay:1.5, transition:"linear"});
};
return (false);
};
};
if ((((mcOrder1.alpha == 0)) && ((((mcOrder2 == null)) || (((!((mcOrder2 == null))) && ((mcOrder2.alpha == 0)))))))){
clearTime();
};
return (true);
}
private function fnEatOver():void{
var _local1:Number;
if ((((mcOrder1.alpha == 0)) && ((((mcOrder2 == null)) || (((!((mcOrder2 == null))) && ((mcOrder2.alpha == 0)))))))){
this.removeChild(food1);
if (food2 != null){
this.removeChild(food2);
};
_local1 = clearTime();
trace(GameEvent.BUYER_EAT_OVER);
dispatchEvent(new GameEvent(GameEvent.BUYER_EAT_OVER, _local1));
};
}
private function moveFood(_arg1:MovieClip, _arg2:Number, _arg3:Number):void{
_arg1.x = (_arg2 - (_arg1.width / 2));
_arg1.y = _arg3;
}
private function createFood(_arg1:Class, _arg2:MovieClip):Product{
var _local3:Product = new (_arg1);
_local3.gotoAndStop(_local3.totalFrames);
this.addChild(_local3);
_local3.alpha = 0;
moveFood(_local3, _arg2.x, _arg2.y);
return (_local3);
}
public function sitDown(_arg1:MovieClip, _arg2:Array):void{
arrProds = _arg2;
ProdClass1 = arrProds[NumberUtil.ranFloor(0, (arrProds.length - 1))];
ProdClass2 = arrProds[NumberUtil.ranFloor(0, (arrProds.length - 1))];
var _local3 = 3;
if (mcCustomer1.currentFrame > 1){
_local3 = 2;
};
mcCustomer1.gotoAndStop((mcCustomer1.currentFrame + _local3));
if (mcCustomer2 != null){
mcCustomer2.gotoAndStop((mcCustomer2.currentFrame + _local3));
};
mcTable.visible = true;
mcChair.visible = true;
curTable = _arg1;
this.x = (_arg1.x + 8);
this.y = _arg1.y;
food1 = createFood(ProdClass1, mcOrder1);
if (mcOrder2 != null){
food2 = createFood(ProdClass2, mcOrder2);
Tweener.addTween([mcOrder2, mcMark2], {alpha:1, time:thinkTime, transition:"linear"});
mcOrder2.addEventListener(MouseEvent.CLICK, fnGetOrder);
};
Tweener.addTween([mcOrder1, mcMark1], {alpha:1, time:thinkTime, transition:"linear"});
mcOrder1.addEventListener(MouseEvent.CLICK, fnGetOrder);
trace("显示订单需要服务员过来");
}
private function fnGetOrder(_arg1:MouseEvent):void{
trace(curTable);
dispatchEvent(new GameEvent(GameEvent.CUSTOMER_ORDER, 0, curTable));
}
public function fnFindOrder():void{
Tweener.removeTweens(mcMark1);
Tweener.removeTweens(mcMark2);
mcMark1.alpha = 0;
Tweener.addTween(food1, {alpha:1, time:0.5, transition:"linear", onComplete:fnOrder});
mcOrder1.removeEventListener(MouseEvent.CLICK, fnGetOrder);
if (mcOrder2 != null){
Tweener.addTween(food2, {alpha:1, time:0.5, transition:"linear"});
mcMark2.alpha = 0;
mcOrder2.removeEventListener(MouseEvent.CLICK, fnGetOrder);
};
}
private function fnOrder():void{
mcCustomer1.gotoAndStop((mcCustomer1.currentFrame - 3));
if (mcCustomer2 != null){
mcCustomer2.gotoAndStop((mcCustomer2.currentFrame - 3));
};
}
public function get cusFrame():uint{
return (mcCustomer1.currentFrame);
}
}
}//package game
Section 29
//Customer1 (game.Customer1)
package game {
import flash.display.*;
public class Customer1 extends Customer {
public var mcMark1:MovieClip;
public var mcChair:MovieClip;
public var mcCustomer:MovieClip;
public var mcOrder:MovieClip;
public var mcTable:MovieClip;
public var mcTimer:CustomerTimer;
public function start(_arg1:Number=8, _arg2:Number=2):void{
super.init(mcTimer, mcOrder, mcCustomer, null, null, mcTable, mcChair, _arg1, _arg2, true, mcMark1, null);
}
}
}//package game
Section 30
//Customer2 (game.Customer2)
package game {
import flash.display.*;
public class Customer2 extends Customer {
public var mcMark1:MovieClip;
public var mcChair:MovieClip;
public var mcCustomer:MovieClip;
public var mcOrder:MovieClip;
public var mcTable:MovieClip;
public var mcTimer:CustomerTimer;
public function start(_arg1:Number=8, _arg2:Number=2):void{
super.init(mcTimer, mcOrder, mcCustomer, null, null, mcTable, mcChair, _arg1, _arg2, false, mcMark1, null);
}
}
}//package game
Section 31
//Customer3 (game.Customer3)
package game {
import flash.display.*;
public class Customer3 extends Customer {
public var mcMark1:MovieClip;
public var mcMark2:MovieClip;
public var mcChair:MovieClip;
public var mcTable:MovieClip;
public var mcOrder2:MovieClip;
public var mcTimer:CustomerTimer;
public var mcCustomer1:MovieClip;
public var mcOrder1:MovieClip;
public var mcCustomer2:MovieClip;
public function start(_arg1:Number=8, _arg2:Number=2):void{
super.init(mcTimer, mcOrder1, mcCustomer1, mcOrder2, mcCustomer2, mcTable, mcChair, _arg1, _arg2, true, mcMark1, mcMark2);
}
}
}//package game
Section 32
//Customer4 (game.Customer4)
package game {
import flash.display.*;
public class Customer4 extends Customer {
public var mcMark1:MovieClip;
public var mcMark2:MovieClip;
public var mcChair:MovieClip;
public var mcTable:MovieClip;
public var mcOrder2:MovieClip;
public var mcTimer:CustomerTimer;
public var mcCustomer1:MovieClip;
public var mcOrder1:MovieClip;
public var mcCustomer2:MovieClip;
public function start(_arg1:Number=8, _arg2:Number=2):void{
super.init(mcTimer, mcOrder1, mcCustomer1, mcOrder2, mcCustomer2, mcTable, mcChair, _arg1, _arg2, true, mcMark1, mcMark2);
}
}
}//package game
Section 33
//CustomerTimer (game.CustomerTimer)
package game {
import flash.display.*;
import flash.utils.*;
public class CustomerTimer extends MovieClip {
private var stepTime:Number;// = 1000
private var intervalId:int;// = 0
private var score:int;// = 0
public function CustomerTimer(){
this.gotoAndStop(11);
}
public function init(_arg1:Number):void{
this.stepTime = _arg1;
fnContinue();
}
public function nextTime():void{
if (this.currentFrame < this.totalFrames){
this.nextFrame();
if (this.currentFrame == (this.totalFrames - 1)){
trace(GameEvent.BUYER_CHANGE_STATE);
dispatchEvent(new GameEvent(GameEvent.BUYER_CHANGE_STATE));
};
} else {
this.gotoAndStop(1);
};
score++;
}
public function fnPause():void{
if (intervalId > 0){
clearInterval(intervalId);
};
}
public function fnContinue():void{
fnPause();
intervalId = setInterval(nextTime, ((stepTime / 10) * 1000));
}
public function destory():Number{
clearInterval(intervalId);
return (score);
}
}
}//package game
Section 34
//Drink1 (game.Drink1)
package game {
public class Drink1 extends Product {
public function Drink1(){
steps = [Util.DRINK_CUP, Util.DRINK_YELLOW];
}
}
}//package game
Section 35
//Drink2 (game.Drink2)
package game {
public class Drink2 extends Product {
public function Drink2(){
steps = [Util.DRINK_CUP, Util.DRINK_PURPLE];
}
}
}//package game
Section 36
//Drink3 (game.Drink3)
package game {
public class Drink3 extends Product {
public function Drink3(){
steps = [Util.DRINK_CUP, Util.DRINK_GREEN];
}
}
}//package game
Section 37
//First (game.First)
package game {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
public class First extends MovieClip {
public var bt_drink_purple:SimpleButton;
public var mcTable4:MovieClip;
public var bt_paper_bowl:SimpleButton;
public var mcTable2:MovieClip;
public var bt_glass_bowl:SimpleButton;
public var mcTable3:MovieClip;
public var bt_drink_yellow:SimpleButton;
public var btMenu:SimpleButton;
public var mcTable1:MovieClip;
public var bt_white:SimpleButton;
public var bt_strawberry:SimpleButton;
public var mc_ice_machine:MovieClip;
public var bt_drink_green:SimpleButton;
public var mccArrow1:MovieClip;
public var bt_coffea:SimpleButton;
public var mcFinished:MovieClip;
public var bt_cooky:SimpleButton;
public var bt_drink_cup:SimpleButton;
public var bt_coffea_cup:SimpleButton;
public var bt_glass_cup:SimpleButton;
public var btSkip:SimpleButton;
public var bt_almond:SimpleButton;
public var bt_black:SimpleButton;
public var bt_paper_cup:SimpleButton;
public var mcWastebin:MovieClip;
public var bt_leaf:SimpleButton;
public var bt_gingeli:SimpleButton;
private var intervalId:uint;// = 0
public function First(){
this.gotoAndStop(1);
mcFinished.visible = false;
mccArrow1.buttonMode = true;
mccArrow1.addEventListener(MouseEvent.CLICK, fnArrowNext);
mcFinished.addEventListener(MouseEvent.CLICK, fnNext);
btSkip.addEventListener(MouseEvent.CLICK, fnSkip);
}
private function fnArrowNext(_arg1:MouseEvent):void{
if (this.currentFrame == (this.totalFrames - 2)){
mccArrow1.visible = false;
intervalId = setInterval(fnPlay, 2000);
mccArrow1.removeEventListener(MouseEvent.CLICK, fnArrowNext);
this.nextFrame();
} else {
this.nextFrame();
};
}
private function fnSkip(_arg1:MouseEvent):void{
dispatchEvent(new GameEvent(GameEvent.FIRST_NEXT));
}
private function fnNext(_arg1:MouseEvent):void{
dispatchEvent(new GameEvent(GameEvent.FIRST_NEXT));
}
private function fnPlay():void{
if (this.currentFrame == this.totalFrames){
mcFinished.visible = true;
clearInterval(intervalId);
intervalId = 0;
} else {
this.nextFrame();
};
}
}
}//package game
Section 38
//GameEvent (game.GameEvent)
package game {
import flash.display.*;
import flash.events.*;
public class GameEvent extends Event {
public var score:Number;
public var table:MovieClip;
public var customer:Customer;
public static const ALICE_PUT_PRODUCT:String = "ALICE_PUT_PRODUCT";
public static const ALICE_REBACK:String = "ALICE_REBACK";
public static const WAITER_REBACK:String = "WAITER_REBACK";
public static const BUYER_VERY_ANGRY:String = "BUYER_VERY_ANGRY";
public static const BUYER_EAT_OVER:String = "BUYER_EAT_OVER";
public static const PRODUCT_ERROR:String = "PRODUCT_ERROR";
public static const BUYER_CHANGE_STATE:String = "BUYER_CHANGE_STATE";
public static const HELP_PAPER_CLOSE:String = "HELP_PAPER_CLOSE";
public static const FIRST_NEXT:String = "FIRST_NEXT";
public static const WAITRESS_TABLE:String = "WAITRESS_TABLE";
public static const WAITRESS_PRODUCT:String = "WAITRESS_PRODUCT";
public static const CUSTOMER_ORDER:String = "CUSTOMER_ORDER";
public function GameEvent(_arg1:String, _arg2:Number=0, _arg3:MovieClip=null, _arg4:Customer=null, _arg5:Boolean=false, _arg6:Boolean=false){
super(_arg1, _arg5, _arg6);
this.score = _arg2;
this.table = _arg3;
this.customer = _arg4;
}
override public function clone():Event{
return (new GameEvent(type, score, table, customer, bubbles, cancelable));
}
override public function toString():String{
return (formatToString("GameEvent", "type", "bubbles", "cancelable", "eventPhase"));
}
}
}//package game
Section 39
//HelpPaper (game.HelpPaper)
package game {
import flash.display.*;
import flash.events.*;
public class HelpPaper extends MovieClip {
public var bt_prev:SimpleButton;
public var bt_next:SimpleButton;
public var bt_strawberry:SimpleButton;
public var bt_cooky:SimpleButton;
public var bt_almond:SimpleButton;
public var btContinue:SimpleButton;
public var bt_leaf:SimpleButton;
public var bt_gingeli:SimpleButton;
public function HelpPaper(){
this.gotoAndStop(1);
bt_prev.addEventListener(MouseEvent.CLICK, prev);
bt_next.addEventListener(MouseEvent.CLICK, next);
}
private function fClose(_arg1:MouseEvent):void{
dispatchEvent(new GameEvent(GameEvent.HELP_PAPER_CLOSE));
}
private function next(_arg1:MouseEvent):void{
this.nextFrame();
}
private function prev(_arg1:MouseEvent):void{
this.prevFrame();
}
}
}//package game
Section 40
//IceCream (game.IceCream)
package game {
public class IceCream extends Product {
public function IceCream(){
steps = [Util.PAPER_CUP, Util.BLACK_ICE, Util.WHITE_ICE, Util.GINGELI, Util.ALMOND, Util.LEAF];
}
}
}//package game
Section 41
//IceCream10 (game.IceCream10)
package game {
public class IceCream10 extends Product {
public function IceCream10(){
steps = [Util.GLASS_CUP, Util.DRINK_PURPLE, Util.WHITE_ICE, Util.STRAWBERRY, Util.LEAF];
}
}
}//package game
Section 42
//IceCream2 (game.IceCream2)
package game {
public class IceCream2 extends Product {
public function IceCream2(){
steps = [Util.PAPER_CUP, Util.BLACK_ICE, Util.WHITE_ICE, Util.GINGELI, Util.STRAWBERRY];
}
}
}//package game
Section 43
//IceCream3 (game.IceCream3)
package game {
public class IceCream3 extends Product {
public function IceCream3(){
steps = [Util.PAPER_CUP, Util.BLACK_ICE];
}
}
}//package game
Section 44
//IceCream4 (game.IceCream4)
package game {
public class IceCream4 extends Product {
public function IceCream4(){
steps = [Util.PAPER_CUP, Util.WHITE_ICE, Util.GINGELI];
}
}
}//package game
Section 45
//IceCream5 (game.IceCream5)
package game {
public class IceCream5 extends Product {
public function IceCream5(){
steps = [Util.PAPER_BOWL, Util.BLACK_ICE, Util.STRAWBERRY, Util.LEAF];
}
}
}//package game
Section 46
//IceCream6 (game.IceCream6)
package game {
public class IceCream6 extends Product {
public function IceCream6(){
steps = [Util.PAPER_BOWL, Util.WHITE_ICE, Util.GINGELI, Util.COOKY, Util.STRAWBERRY];
}
}
}//package game
Section 47
//IceCream7 (game.IceCream7)
package game {
public class IceCream7 extends Product {
public function IceCream7(){
steps = [Util.GLASS_BOWL, Util.WHITE_ICE, Util.GINGELI, Util.STRAWBERRY];
}
}
}//package game
Section 48
//IceCream8 (game.IceCream8)
package game {
public class IceCream8 extends Product {
public function IceCream8(){
steps = [Util.GLASS_BOWL, Util.WHITE_ICE, Util.BLACK_ICE, Util.COOKY, Util.STRAWBERRY];
}
}
}//package game
Section 49
//IceCream9 (game.IceCream9)
package game {
public class IceCream9 extends Product {
public function IceCream9(){
steps = [Util.GLASS_BOWL, Util.WHITE_ICE, Util.ALMOND, Util.STRAWBERRY, Util.LEAF];
}
}
}//package game
Section 50
//Product (game.Product)
package game {
import flash.display.*;
public class Product extends MovieClip {
public var steps:Array;
public function Product(){
steps = [];
super();
this.gotoAndStop(1);
}
public function destroy(_arg1:String):void{
}
public function nextStep(_arg1:String):Boolean{
if (((this.visible) && ((_arg1 == steps[this.currentFrame])))){
this.nextFrame();
return (true);
};
return (false);
}
public function nStep(_arg1:Array, _arg2:String):Boolean{
var _local3:int;
if (_arg1.length == 0){
if (((this.visible) && ((_arg2 == steps[0])))){
return (true);
};
return (false);
//unresolved jump
};
if (((this.visible) && ((steps[0] == _arg1[0])))){
} else {
return (false);
};
_local3 = 1;
while (_local3 < _arg1.length) {
if (((this.visible) && ((_arg1[_local3] == steps[_local3])))){
this.nextFrame();
} else {
return (false);
};
_local3++;
};
if (((this.visible) && ((_arg2 == steps[_local3])))){
this.nextFrame();
} else {
return (false);
};
return (true);
}
}
}//package game
Section 51
//Util (game.Util)
package game {
public class Util {
public static const PAPER_CUP:String = "paper cup";
public static const PAPER_BOWL:String = "paper bowl";
public static const GLASS_CUP:String = "glass cup";
public static const GLASS_BOWL:String = "glass bowl";
public static const COFFEA_CUP:String = "coffea cup";
public static const DRINK_CUP:String = "drink cup";
public static const DISH:String = "dish";
public static const CUP_OR_BOWL:String = "cup or bowl";
public static const COFFEA:String = "coffea";
public static const DRINK:String = "drink";
public static const DRINK_YELLOW:String = "drink yellow";
public static const DRINK_PURPLE:String = "drink purple";
public static const DRINK_GREEN:String = "drink green";
public static const BLACK_ICE:String = "black ice cream";
public static const WHITE_ICE:String = "white ice cream";
public static const GINGELI:String = "gingeli";
public static const STRAWBERRY:String = "strawberry";
public static const LEAF:String = "leaf";
public static const COOKY:String = "cooky";
public static const ALMOND:String = "almond";
public static const ARR_FOOD:Array = [IceCream, IceCream2, IceCream4, IceCream5, IceCream6, IceCream7, IceCream8, IceCream9, IceCream10, Coffea, Drink1, Drink2, Drink3];
public static const ARR_CUSTOMERS:Array = [Customer1, Customer2, Customer3, Customer4];
}
}//package game
Section 52
//Waiter (game.Waiter)
package game {
import flash.display.*;
import caurina.transitions.*;
import flash.geom.*;
public class Waiter extends MovieClip {
public var mcIceCream:IceCream;
private var startPoint:Point;
private var cupPoint:Point;
private var icePoint:Point;
private var drinkPoint:Point;
private var coffeaPoint:Point;
private var vTime:Number;
public static const make:String = "make";
public static const send:String = "send";
public static const back:String = "back";
public static const rightWork:String = "rightWork";
public static const leftWork:String = "leftWork";
public function Waiter(){
startPoint = new Point(286.8, 146.8);
cupPoint = new Point(202.3, 146.8);
icePoint = new Point(555.4, 146.8);
drinkPoint = new Point(455.4, 146.8);
coffeaPoint = new Point(355.4, 146.8);
super();
this.gotoAndStop(1);
}
public function move(_arg1:String=null):void{
var point:Point;
var param = _arg1;
if (this.x == startPoint.x){
point = startPoint;
switch (param){
case Util.BLACK_ICE:
case Util.WHITE_ICE:
point = icePoint;
gotoFrame(rightWork);
break;
case Util.DRINK:
point = drinkPoint;
gotoFrame(rightWork);
break;
case Util.COFFEA:
point = coffeaPoint;
gotoFrame(rightWork);
break;
case Util.CUP_OR_BOWL:
point = cupPoint;
gotoFrame(leftWork);
break;
};
vTime = ((Math.abs((point.x - startPoint.x)) * 0.5) / Math.abs((icePoint.x - startPoint.x)));
Tweener.addTween(this, {x:point.x, time:vTime, transition:"linear", onComplete:function (_arg1:MovieClip){
_arg1.move();
}, onCompleteParams:[this]});
} else {
Tweener.addTween(this, {x:startPoint.x, time:vTime, transition:"linear", delay:0.1, onComplete:function (_arg1:MovieClip){
_arg1.gotoAndStop(1);
_arg1.dispatchEvent(new GameEvent(GameEvent.WAITER_REBACK));
}, onCompleteParams:[this]});
};
}
private function gotoFrame(_arg1:String):void{
switch (_arg1){
case make:
if (this.currentFrame != 1){
this.gotoAndStop(1);
};
break;
case send:
if (this.currentFrame != 3){
this.gotoAndStop(3);
};
break;
case leftWork:
if (this.currentFrame != 2){
this.gotoAndStop(2);
};
break;
case rightWork:
if (this.currentFrame != 4){
this.gotoAndStop(4);
};
break;
};
}
public function get bMove():Boolean{
return (!((this.currentFrame == 1)));
}
}
}//package game
Section 53
//Waitress (game.Waitress)
package game {
import flash.display.*;
import caurina.transitions.*;
import flash.geom.*;
public class Waitress extends MovieClip {
public var mcFood:MovieClip;
private var startPoint:Point;
private var table1Point:Point;
private var table2Point:Point;
private var table3Point:Point;
private var table4Point:Point;
private var vTime:Number;// = 1
private var curFood:Product;
private var curCustomer:Customer;
public static const carry:String = "carry";
public static const make:String = "make";
public static const send:String = "send";
public static const lead:String = "lead";
public static const back12:String = "back12";
public static const back34:String = "back34";
public function Waitress(){
startPoint = new Point(276.6, 200.2);
table1Point = new Point(55.6, 348.2);
table2Point = new Point(265.2, 429.9);
table3Point = new Point(400.4, 295.3);
table4Point = new Point(496.1, 435.9);
super();
this.gotoAndStop(1);
mcFood.visible = false;
}
public function addProduct(_arg1:Class):void{
curFood = new (_arg1);
curFood.gotoAndStop(curFood.totalFrames);
curFood.x = (-9.4 - (curFood.width / 2));
curFood.y = 52.3;
this.addChild(curFood);
gotoFrame(carry);
}
public function start():void{
this.x = startPoint.x;
this.y = startPoint.y;
gotoFrame(make);
}
public function removeProduct():void{
if (curFood != null){
this.removeChild(curFood);
curFood = null;
if (this.currentFrame == 6){
gotoFrame(make);
};
};
}
public function moveTable(_arg1:MovieClip, _arg2:Customer, _arg3:Class=null):void{
var point:Point;
var p_table = _arg1;
var p_customer = _arg2;
var p_class = _arg3;
this.curCustomer = p_customer;
if (p_class != null){
if (this.currentFrame != 6){
return;
};
gotoFrame(send);
} else {
if (this.currentFrame == 6){
removeProduct();
};
gotoFrame(lead);
};
switch (p_table.name){
case "mcTable1":
vTime = 1;
point = table1Point;
break;
case "mcTable2":
vTime = 0.8;
point = table2Point;
break;
case "mcTable3":
vTime = 0.8;
point = table3Point;
break;
case "mcTable4":
vTime = 1.5;
point = table4Point;
break;
};
Tweener.addTween(this, {x:point.x, y:point.y, time:vTime, transition:"linear", onComplete:function (_arg1:MovieClip, _arg2:MovieClip){
_arg1.reback(_arg2);
_arg1.dispatchEvent(new GameEvent(GameEvent.WAITRESS_TABLE, 0, _arg2, _arg1.curCustomer));
}, onCompleteParams:[this, p_table]});
}
private function reback(_arg1:MovieClip):void{
var p_table = _arg1;
Tweener.addTween(this, {x:startPoint.x, y:startPoint.y, delay:0.5, time:vTime, transition:"linear", onStart:function (_arg1:MovieClip, _arg2:MovieClip){
_arg1.backFrame(_arg2);
}, onStartParams:[this, p_table], onComplete:function (_arg1:MovieClip){
_arg1.gotoAndStop(1);
}, onCompleteParams:[this]});
if (curFood != null){
Tweener.addTween(curFood, {alpha:0, delay:0, time:0.5, transition:"linear", onComplete:function (_arg1:MovieClip, _arg2:MovieClip){
_arg1.removeProduct();
_arg1.dispatchEvent(new GameEvent(GameEvent.WAITRESS_PRODUCT, 0, _arg2, _arg1.curCustomer));
}, onCompleteParams:[this, p_table]});
};
}
private function backFrame(_arg1:MovieClip):void{
switch (_arg1.name){
case "mcTable1":
case "mcTable2":
gotoFrame(back12);
break;
case "mcTable3":
case "mcTable4":
gotoFrame(back34);
break;
};
}
private function gotoFrame(_arg1:String):void{
switch (_arg1){
case carry:
if (this.currentFrame != 6){
this.gotoAndStop(6);
};
break;
case make:
if (this.currentFrame != 1){
this.gotoAndStop(1);
};
break;
case send:
if (this.currentFrame != 3){
this.gotoAndStop(3);
};
break;
case lead:
if (this.currentFrame != 5){
this.gotoAndStop(5);
};
break;
case back12:
if (this.currentFrame != 2){
this.gotoAndStop(2);
};
break;
case back34:
if (this.currentFrame != 4){
this.gotoAndStop(4);
};
break;
};
}
public function get bMove():Boolean{
return (((!((this.currentFrame == 1))) && (!((this.currentFrame == 6)))));
}
}
}//package game
Section 54
//Brand (spill.localisation.Brand)
package spill.localisation {
import flash.xml.*;
public class Brand {
public var domain:String;
public var site_id:uint;
public var moreLink:String;// = ""
public var emailLink:String;// = "game"
public var emailPage:String;
public var id:Number;
public var name:String;
public var portalGroup:uint;
public var useGoogleAnalitics:Boolean;// = true
public var hasSendToFriendLink:Boolean;// = true
public var preferedLanguage:String;// = ""
public var isExternal:Boolean;// = false
public var hostingDomain:String;// = ""
private static const topLevelDoubles:String = ((((((((((((((("ac.cn,ac.jp,ac.uk,ad.jp,adm.br,adv.br,agr.br," + "ah.cn,am.br,arq.br,art.br,asn.au,ato.br,av.tr,bel.tr,bio.br,biz.tr,bj.cn,bmd.br,") + "cim.br,cng.br,cnt.br,co.at,co.jp,co.uk,com.au,com.br,com.cn,com.eg,com.hk,com.mx,") + "com.ru,com.tr,com.tw,conf.au,cq.cn,csiro.au,dr.tr,ecn.br,edu.au,edu.br,edu.tr,") + "emu.id.au,eng.br,esp.br,etc.br,eti.br,eun.eg,far.br,fj.cn,fm.br,fnd.br,fot.br,") + "fst.br,g12.br,gb.com,gb.net,gd.cn,gen.tr,ggf.br,gob.mx,gov.au,gov.br,gov.cn,") + "gov.hk,gov.tr,gr.jp,gs.cn,gx.cn,gz.cn,ha.cn,hb.cn,he.cn,hi.cn,hk.cn,hl.cn,hn.cn,") + "id.au,idv.tw,imb.br,ind.br,inf.br,info.au,info.tr,jl.cn,jor.br,js.cn,jx.cn,k12.tr,") + "lel.br,ln.cn,ltd.uk,mat.br,me.uk,med.br,mil.br,mil.tr,mo.cn,mus.br,name.tr,ne.jp,") + "net.au,net.br,net.cn,net.eg,net.hk,net.lu,net.mx,net.ru,net.tr,net.tw,net.uk,") + "nm.cn,no.com,nom.br,not.br,ntr.br,nx.cn,odo.br,oop.br,or.at,or.jp,org.au,org.br,") + "org.cn,org.hk,org.lu,org.ru,org.tr,org.tw,org.uk,plc.uk,pol.tr,pp.ru,ppg.br,pro.br,") + "psc.br,psi.br,qh.cn,qsl.br,rec.br,sc.cn,sd.cn,se.com,se.net,sh.cn,slg.br,sn.cn,") + "srv.br,sx.cn,tel.tr,tj.cn,tmp.br,trd.br,tur.br,tv.br,tw.cn,uk.com,uk.net,vet.br,") + "wattle.id.au,web.tr,xj.cn,xz.cn,yn.cn,zj.cn,zlg.br,co.nr,co.nz,com.fr,com.ph,com.ar,") + "com.id,com.in");
public function getMoreGamesLink(_arg1:String, _arg2:Boolean, _arg3:String="", _arg4:String=""):String{
var _local5:String = ("http://" + domain);
_local5 = (_local5 + ("/" + moreLink));
if (useGoogleAnalitics){
_local5 = (_local5 + ("?utm_medium=brandedgames_" + (_arg2) ? "external" : "internal"));
_local5 = (_local5 + ("&utm_campaign=" + _arg1));
_arg3 = stripSubDomain(_arg3);
if (_arg3 == "localhost"){
_arg3 = "offline_play";
};
_local5 = (_local5 + ("&utm_source=" + _arg3));
if (((!((_arg4 == ""))) && (!((_arg4 == null))))){
_local5 = (_local5 + ("&utm_content=" + _arg4));
};
};
return (_local5);
}
public function getSendToFriendLink(_arg1:String, _arg2:String, _arg3:Boolean, _arg4:String=""):String{
if (!hasSendToFriendLink){
return (getMoreGamesLink(_arg1, _arg3));
};
var _local5:String = ("http://" + domain);
_local5 = (_local5 + ((("/" + emailLink) + "/") + _arg2));
if (useGoogleAnalitics){
_local5 = (_local5 + ("?utm_medium=brandedgames_" + (_arg3) ? "external" : "internal"));
_local5 = (_local5 + ("&utm_campaign=" + _arg1));
_arg4 = stripSubDomain(_arg4);
if (_arg4 == "localhost"){
_arg4 = "offline_play";
};
_local5 = (_local5 + ("&utm_source=" + _arg4));
_local5 = (_local5 + "&utm_content=send_to_friend");
};
return (_local5);
}
public function getPromotionLink(_arg1:String, _arg2:String, _arg3:Boolean, _arg4:String="", _arg5:String=""):String{
var _local6:String = ("http://" + domain);
_local6 = (_local6 + ((("/" + emailLink) + "/") + _arg2));
if (useGoogleAnalitics){
_local6 = (_local6 + ("?utm_medium=brandedgames_" + (_arg3) ? "external" : "internal"));
_local6 = (_local6 + ("&utm_campaign=" + _arg1));
_arg4 = stripSubDomain(_arg4);
trace(_arg4);
if (_arg4 == "localhost"){
_arg4 = "offline_play";
};
_local6 = (_local6 + ("&utm_source=" + _arg4));
if (((!((_arg5 == ""))) && (!((_arg5 == null))))){
_local6 = (_local6 + ("&utm_content=" + _arg5));
};
};
return (_local6);
}
public function get backgroundColor():uint{
return (PortalGroup.backgroundColors[portalGroup]);
}
public function exportXML():XML{
var _local3:XML;
var _local1:XML = <portal/>
;
_local1.@id = site_id;
_local1.@language = preferedLanguage;
_local1.@channel = portalGroup;
var _local2:XML = <domain/>
;
_local2.appendChild(new XMLNode(3, domain));
_local1.appendChild(_local2);
if (moreLink){
_local3 = <more_games_path/>
;
_local3.appendChild(new XMLNode(3, moreLink));
_local1.appendChild(_local3);
};
_local2 = <game_path/>
;
_local2.appendChild(new XMLNode(3, emailLink));
_local1.appendChild(_local2);
if (!useGoogleAnalitics){
_local1.attributes.noGoogleAnalitics = true;
};
if (!hasSendToFriendLink){
_local1.attributes.noSendToFriendLink = true;
};
return (_local1);
}
public function importXML(_arg1:XMLNode):void{
}
private function get utm_source():String{
return (("utm_source=brandedgames_" + (isExternal) ? "external" : "internal"));
}
private function get utm_term():String{
return ("utm_term=");
}
private function get utm_campaign():String{
if (isExternal){
return (("utm_campaign=" + hostingDomain));
};
return ("");
}
public static function stripSubDomain(_arg1:String):String{
if (!_arg1){
return ("");
};
var _local2:Array = _arg1.split(".");
if (_local2.length <= 2){
return (_arg1);
};
_local2 = _local2.reverse();
if (topLevelDoubles.indexOf((((_local2[1] + ".") + _local2[0]) + ",")) > 0){
return (((((_local2[2] + ".") + _local2[1]) + ".") + _local2[0]));
};
return (((_local2[1] + ".") + _local2[0]));
}
}
}//package spill.localisation
Section 55
//BrandingLogo (spill.localisation.BrandingLogo)
package spill.localisation {
import flash.display.*;
import flash.events.*;
public class BrandingLogo extends MovieClip {
public function BrandingLogo(){
addFrameScript(0, frame1);
super();
stop();
mouseEnabled = false;
mouseChildren = false;
addEventListener(Event.ADDED_TO_STAGE, added, false, 0, true);
addEventListener(Event.REMOVED_FROM_STAGE, removed, false, 0, true);
if (stage){
added();
};
brandingChanged();
}
private function added(_arg1:Event=null):void{
SpilGame.addEventListener("brandingChanged", brandingChanged, false, 0, true);
brandingChanged();
}
private function removed(_arg1:Event):void{
SpilGame.removeEventListener("brandingChanged", brandingChanged);
}
private function brandingChanged(_arg1:Event=null):void{
if (SpilGame.currentBranding){
gotoAndStop(SpilGame.currentBranding.domain);
};
}
function frame1(){
stop();
}
}
}//package spill.localisation
Section 56
//Brandings (spill.localisation.Brandings)
package spill.localisation {
public class Brandings {
private static var brands_by_id:Object = new Object();
private static var brands_by_domain:Object = new Object();
public static function initialize():void{
var _local1:Brand;
_local1 = new Brand();
_local1.site_id = 79;
_local1.domain = "www.agame.com";
_local1.preferedLanguage = "en_us";
_local1.portalGroup = PortalGroup.TEENS;
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 88;
_local1.domain = "www.gamesgames.com";
_local1.preferedLanguage = "en_us";
_local1.portalGroup = PortalGroup.FAMILY;
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 90;
_local1.domain = "www.girlsgogames.com";
_local1.preferedLanguage = "en_us";
_local1.portalGroup = PortalGroup.GIRL;
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 45;
_local1.domain = "www.a10.com";
_local1.preferedLanguage = "en_us";
_local1.portalGroup = PortalGroup.YOUNG_ADULTS;
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 92;
_local1.domain = "www.games.co.uk";
_local1.preferedLanguage = "en_uk";
_local1.portalGroup = PortalGroup.FAMILY;
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 107;
_local1.domain = "www.agame.co.uk";
_local1.preferedLanguage = "en_uk";
_local1.portalGroup = PortalGroup.TEENS;
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 102;
_local1.domain = "www.girlsgogames.co.uk";
_local1.preferedLanguage = "en_uk";
_local1.portalGroup = PortalGroup.GIRL;
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 2;
_local1.domain = "www.game.com.cn";
_local1.moreLink = "moregames/";
_local1.preferedLanguage = "cn";
_local1.portalGroup = PortalGroup.NONE;
_local1.useGoogleAnalitics = false;
_local1.hasSendToFriendLink = false;
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 25;
_local1.domain = "www.spel.nl";
_local1.portalGroup = PortalGroup.TEENS;
_local1.preferedLanguage = "nl";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 1;
_local1.domain = "www.spelletjes.nl";
_local1.emailLink = "spel";
_local1.portalGroup = PortalGroup.FAMILY;
_local1.preferedLanguage = "nl";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 93;
_local1.domain = "www.girlsgogames.nl";
_local1.emailLink = "spel";
_local1.portalGroup = PortalGroup.GIRL;
_local1.preferedLanguage = "nl";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 12;
_local1.domain = "www.jeu.fr";
_local1.emailLink = "jeu";
_local1.portalGroup = PortalGroup.TEENS;
_local1.preferedLanguage = "fr";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 95;
_local1.domain = "www.girlsgogames.fr";
_local1.emailLink = "jeu";
_local1.portalGroup = PortalGroup.GIRL;
_local1.preferedLanguage = "fr";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 11;
_local1.domain = "www.jeux.fr";
_local1.emailLink = "jeu";
_local1.portalGroup = PortalGroup.FAMILY;
_local1.preferedLanguage = "fr";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 26;
_local1.domain = "www.spielen.com";
_local1.emailLink = "spiel";
_local1.portalGroup = PortalGroup.TEENS;
_local1.preferedLanguage = "de";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 94;
_local1.domain = "www.girlsgogames.de";
_local1.emailLink = "spiel";
_local1.portalGroup = PortalGroup.GIRL;
_local1.preferedLanguage = "de";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 5;
_local1.domain = "www.jetztspielen.de";
_local1.emailLink = "spiel";
_local1.portalGroup = PortalGroup.FAMILY;
_local1.preferedLanguage = "de";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 109;
_local1.domain = "www.minigry.pl";
_local1.emailLink = "gra";
_local1.portalGroup = PortalGroup.TEENS;
_local1.preferedLanguage = "pl";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 16;
_local1.domain = "www.gry.pl";
_local1.emailLink = "gra";
_local1.portalGroup = PortalGroup.FAMILY;
_local1.preferedLanguage = "pl";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 98;
_local1.domain = "www.girlsgogames.pl";
_local1.emailLink = "gra";
_local1.portalGroup = PortalGroup.GIRL;
_local1.preferedLanguage = "pl";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 108;
_local1.domain = "www.spel.se";
_local1.emailLink = "spel_";
_local1.portalGroup = PortalGroup.TEENS;
_local1.preferedLanguage = "se";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 100;
_local1.domain = "www.girlsgogames.se";
_local1.emailLink = "spel_";
_local1.portalGroup = PortalGroup.GIRL;
_local1.preferedLanguage = "se";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 44;
_local1.domain = "www.spela.se";
_local1.emailLink = "spel_";
_local1.preferedLanguage = "se";
_local1.portalGroup = PortalGroup.FAMILY;
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 106;
_local1.domain = "www.giocaregratis.it";
_local1.emailLink = "gioco";
_local1.portalGroup = PortalGroup.TEENS;
_local1.preferedLanguage = "it";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 15;
_local1.domain = "www.gioco.it";
_local1.emailLink = "gioco";
_local1.portalGroup = PortalGroup.FAMILY;
_local1.preferedLanguage = "it";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 99;
_local1.domain = "www.girlsgogames.it";
_local1.emailLink = "gioco";
_local1.portalGroup = PortalGroup.GIRL;
_local1.preferedLanguage = "it";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 97;
_local1.domain = "www.zapjuegos.com";
_local1.emailLink = "juego";
_local1.portalGroup = PortalGroup.TEENS;
_local1.preferedLanguage = "es";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 86;
_local1.domain = "www.juegos.com";
_local1.emailLink = "juego";
_local1.portalGroup = PortalGroup.FAMILY;
_local1.preferedLanguage = "es";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 96;
_local1.domain = "www.juegosdechicas.com";
_local1.emailLink = "juego";
_local1.portalGroup = PortalGroup.GIRL;
_local1.preferedLanguage = "es";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 122;
_local1.domain = "www.girlsgogames.es";
_local1.emailLink = "juego";
_local1.portalGroup = PortalGroup.GIRL;
_local1.preferedLanguage = "es";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 125;
_local1.domain = "www.juegos.mx";
_local1.emailLink = "juego";
_local1.portalGroup = PortalGroup.TEENS;
_local1.preferedLanguage = "es";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 126;
_local1.domain = "www.juegosdechicas.mx";
_local1.emailLink = "juego";
_local1.portalGroup = PortalGroup.GIRL;
_local1.preferedLanguage = "es";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 127;
_local1.domain = "www.juegos.com.ar";
_local1.emailLink = "juego";
_local1.portalGroup = PortalGroup.TEENS;
_local1.preferedLanguage = "es";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 128;
_local1.domain = "www.juegosdechicas.com.ar";
_local1.emailLink = "juego";
_local1.portalGroup = PortalGroup.GIRL;
_local1.preferedLanguage = "es";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 91;
_local1.domain = "www.clickjogos.com";
_local1.emailLink = "jogo";
_local1.portalGroup = PortalGroup.TEENS;
_local1.preferedLanguage = "br";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 101;
_local1.domain = "www.girlsgogames.com.br";
_local1.emailLink = "jogo";
_local1.portalGroup = PortalGroup.GIRL;
_local1.preferedLanguage = "br";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 50;
_local1.domain = "www.ojogos.com.br";
_local1.emailLink = "jogo";
_local1.portalGroup = PortalGroup.FAMILY;
_local1.preferedLanguage = "br";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 55;
_local1.domain = "www.games.co.id";
_local1.emailLink = "permainanme";
_local1.portalGroup = PortalGroup.TEENS;
_local1.preferedLanguage = "id";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 105;
_local1.domain = "www.flashgames.ru";
_local1.emailLink = "igra";
_local1.portalGroup = PortalGroup.TEENS;
_local1.preferedLanguage = "ru";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 104;
_local1.domain = "www.girlsgogames.ru";
_local1.emailLink = "igra";
_local1.portalGroup = PortalGroup.GIRL;
_local1.preferedLanguage = "ru";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 103;
_local1.domain = "www.ourgames.ru";
_local1.emailLink = "igra";
_local1.portalGroup = PortalGroup.FAMILY;
_local1.preferedLanguage = "ru";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 24;
_local1.domain = "www.game.co.in";
_local1.emailLink = "game";
_local1.portalGroup = PortalGroup.TEENS;
_local1.preferedLanguage = "in";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 87;
_local1.domain = "www.ojogos.pt";
_local1.emailLink = "jogo";
_local1.portalGroup = PortalGroup.FAMILY;
_local1.preferedLanguage = "pt";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 120;
_local1.domain = "www.egames.jp";
_local1.emailLink = "game";
_local1.portalGroup = PortalGroup.TEENS;
_local1.preferedLanguage = "jp";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 121;
_local1.domain = "www.dailygame.com";
_local1.emailLink = "/game/";
_local1.portalGroup = PortalGroup.FAMILY;
_local1.preferedLanguage = "en_us";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 123;
_local1.domain = "www.zapapa.com";
_local1.emailLink = "game";
_local1.portalGroup = PortalGroup.ZAPAPA;
_local1.preferedLanguage = "en_us";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 124;
_local1.domain = "www.zapapa.nl";
_local1.emailLink = "game";
_local1.portalGroup = PortalGroup.HYVES;
_local1.preferedLanguage = "nl";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 0;
_local1.domain = "gamedev.dev.spilgames.com";
_local1.portalGroup = PortalGroup.FAMILY;
_local1.preferedLanguage = "en_us";
addBrand(_local1);
}
public static function hasDomain(_arg1:String):Boolean{
return (!((brands_by_domain[_arg1] == null)));
}
public static function getBrandByDomain(_arg1:String):Brand{
return (brands_by_domain[_arg1]);
}
public static function getBrandByID(_arg1:Number):Brand{
return (brands_by_id[_arg1]);
}
private static function addBrand(_arg1:Brand):Brand{
if (brands_by_domain[_arg1.domain]){
trace(("ERROR: Attempting to add duplicate brand by domain: " + _arg1.domain));
} else {
brands_by_domain[_arg1.domain] = _arg1;
};
if (brands_by_id[_arg1.site_id]){
trace(("ERROR: Attempting to add duplicate brand by id: " + _arg1.site_id));
} else {
brands_by_id[_arg1.site_id] = _arg1;
};
return (_arg1);
}
public static function getBrandsArray():Array{
var _local2:Brand;
var _local1:Array = new Array();
for each (_local2 in brands_by_domain) {
_local1.push(_local2);
};
return (_local1);
}
public static function exportXML():XML{
var _local2:Brand;
var _local1:XML = <portals/>
;
for each (_local2 in brands_by_domain) {
_local1.appendChild(_local2.exportXML());
};
return (_local1);
}
}
}//package spill.localisation
Section 57
//Language (spill.localisation.Language)
package spill.localisation {
import flash.xml.*;
public class Language {
public var name:String;
public var dname:String;
public var id:uint;
public var portal_groups:Array;
public var textLanguage:String;
public var embedFonts:Boolean;// = true
public var embedInputFonts:Boolean;// = true
public var forceFont:String;// = null
public var bwcId:int;
public var references:Array;
public var displayName:String;// = ""
public function Language(_arg1:String, _arg2:String=null){
references = [];
super();
name = _arg1;
dname = _arg2;
portal_groups = new Array();
}
public function get displayAcronim():String{
return ((dname) ? dname : name);
}
public function set p_family(_arg1:String):void{
portal_groups[PortalGroup.FAMILY] = _arg1;
}
public function get p_family():String{
return (portal_groups[PortalGroup.FAMILY]);
}
public function set p_tween(_arg1:String):void{
portal_groups[PortalGroup.TEENS] = _arg1;
}
public function get p_tween():String{
return (portal_groups[PortalGroup.TEENS]);
}
public function set p_girl(_arg1:String):void{
portal_groups[PortalGroup.GIRL] = _arg1;
}
public function get p_girl():String{
trace("Language", portal_groups[PortalGroup.GIRL]);
return (portal_groups[PortalGroup.GIRL]);
}
public function set p_teen(_arg1:String):void{
portal_groups[PortalGroup.YOUNG_ADULTS] = _arg1;
}
public function get p_teen():String{
return (portal_groups[PortalGroup.YOUNG_ADULTS]);
}
public function set p_zapapa(_arg1:String):void{
portal_groups[PortalGroup.ZAPAPA] = _arg1;
}
public function get p_zapapa():String{
return (portal_groups[PortalGroup.ZAPAPA]);
}
public function set p_hyves(_arg1:String):void{
portal_groups[PortalGroup.HYVES] = _arg1;
}
public function get p_hyves():String{
return (portal_groups[PortalGroup.HYVES]);
}
public function exportXML():XMLNode{
var _local1:XMLNode = new XMLNode(1, "language");
_local1.attributes.name = name;
if (textLanguage != null){
_local1.attributes.textLanguage = textLanguage;
};
if (references.length){
_local1.attributes.references = references.toString();
};
_local1.attributes.id = bwcId;
var _local2:XMLNode = new XMLNode(1, "display_name");
_local2.firstChild = new XMLNode(3, displayName);
_local1.appendChild(_local2);
var _local3:Array = [];
var _local4:Array = PortalGroup.channelNames;
var _local5:int;
while (_local5 < _local4.length) {
_local3.push(Brandings.getBrandByDomain(portal_groups[_local5]).site_id);
_local5++;
};
_local1.attributes.channels = _local3.join(",");
return (_local1);
}
}
}//package spill.localisation
Section 58
//Languages (spill.localisation.Languages)
package spill.localisation {
import flash.xml.*;
public class Languages {
public static var languages:Object = new Object();
private static var _init:Boolean = false;
public static function initialize():void{
var _local1:Language;
if (_init){
return;
};
_init = true;
_local1 = new Language("nl");
_local1.displayName = "Nederlands";
_local1.p_family = "www.spelletjes.nl";
_local1.p_tween = "www.spel.nl";
_local1.p_girl = "www.girlsgogames.nl";
_local1.p_teen = "www.a10.com";
_local1.p_zapapa = "www.zapapa.com";
_local1.p_hyves = "www.zapapa.nl";
_local1.bwcId = 3;
addLanguage(_local1);
_local1 = new Language("es");
_local1.displayName = "Español";
_local1.p_family = "www.juegos.com";
_local1.p_tween = "www.zapjuegos.com";
_local1.p_girl = "www.girlsgogames.es";
_local1.p_teen = "www.a10.com";
_local1.p_zapapa = "www.zapapa.com";
_local1.bwcId = 9;
addLanguage(_local1);
_local1 = new Language("pl");
_local1.displayName = "Polski";
_local1.p_family = "www.gry.pl";
_local1.p_tween = "www.gry.pl";
_local1.p_girl = "www.girlsgogames.pl";
_local1.p_teen = "www.a10.com";
_local1.p_zapapa = "www.zapapa.com";
_local1.bwcId = 6;
addLanguage(_local1);
_local1 = new Language("fr");
_local1.displayName = "Français";
_local1.p_family = "www.jeux.fr";
_local1.p_tween = "www.jeu.fr";
_local1.p_girl = "www.girlsgogames.fr";
_local1.p_teen = "www.a10.com";
_local1.p_zapapa = "www.zapapa.com";
_local1.bwcId = 4;
addLanguage(_local1);
_local1 = new Language("en_us", "us");
_local1.displayName = "English";
_local1.p_family = "www.gamesgames.com";
_local1.p_tween = "www.agame.com";
_local1.p_girl = "www.girlsgogames.com";
_local1.p_teen = "www.a10.com";
_local1.p_zapapa = "www.zapapa.com";
_local1.bwcId = 1;
addLanguage(_local1);
addReference(_local1, "en");
_local1 = new Language("id");
_local1.displayName = "Bahasa Ind.";
_local1.p_family = "www.games.co.id";
_local1.p_tween = "www.games.co.id";
_local1.p_girl = "www.games.co.id";
_local1.p_teen = "www.a10.com";
_local1.p_zapapa = "www.zapapa.com";
_local1.bwcId = 11;
addLanguage(_local1);
_local1 = new Language("ru");
_local1.displayName = "Русский";
_local1.p_family = "www.ourgames.ru";
_local1.p_tween = "www.flashgames.ru";
_local1.p_girl = "www.girlsgogames.ru";
_local1.p_teen = "www.a10.com";
_local1.p_zapapa = "www.zapapa.com";
_local1.bwcId = 12;
addLanguage(_local1);
_local1 = new Language("se");
_local1.displayName = "Svenska";
_local1.p_family = "www.spela.se";
_local1.p_tween = "www.spel.se";
_local1.p_girl = "www.girlsgogames.se";
_local1.p_teen = "www.a10.com";
_local1.p_zapapa = "www.zapapa.com";
_local1.bwcId = 7;
addLanguage(_local1);
addReference(_local1, "sv");
_local1 = new Language("it");
_local1.displayName = "Italiano";
_local1.p_family = "www.gioco.it";
_local1.p_tween = "www.gioco.it";
_local1.p_girl = "www.girlsgogames.it";
_local1.p_teen = "www.a10.com";
_local1.p_zapapa = "www.zapapa.com";
_local1.bwcId = 8;
addLanguage(_local1);
_local1 = new Language("en_uk", "uk");
_local1.displayName = "English";
_local1.p_family = "www.games.co.uk";
_local1.p_tween = "www.agame.com";
_local1.p_girl = "www.girlsgogames.co.uk";
_local1.p_teen = "www.a10.com";
_local1.p_zapapa = "www.zapapa.com";
_local1.bwcId = 13;
addLanguage(_local1);
_local1 = new Language("cn");
_local1.displayName = "中文";
_local1.p_family = "www.game.com.cn";
_local1.p_tween = "www.game.com.cn";
_local1.p_girl = "www.game.com.cn";
_local1.p_teen = "www.game.com.cn";
_local1.p_zapapa = "www.zapapa.com";
_local1.bwcId = 2;
_local1.embedInputFonts = false;
addLanguage(_local1);
addReference(_local1, "zh-CN");
addReference(_local1, "zh-TW");
_local1 = new Language("pt");
_local1.displayName = "Português";
_local1.p_family = "www.ojogos.pt";
_local1.p_tween = "www.ojogos.pt";
_local1.p_girl = "www.ojogos.pt";
_local1.p_teen = "www.a10.com";
_local1.p_zapapa = "www.zapapa.com";
_local1.bwcId = 17;
addLanguage(_local1);
_local1 = new Language("in");
_local1.displayName = "English";
_local1.p_family = "www.game.co.in";
_local1.p_tween = "www.game.co.in";
_local1.p_girl = "www.game.co.in";
_local1.p_teen = "www.a10.com";
_local1.p_zapapa = "www.zapapa.com";
_local1.textLanguage = "en_uk";
_local1.bwcId = 14;
addLanguage(_local1);
_local1 = new Language("de");
_local1.displayName = "Deutsch";
_local1.p_family = "www.jetztspielen.de";
_local1.p_tween = "www.spielen.com";
_local1.p_girl = "www.girlsgogames.de";
_local1.p_teen = "www.a10.com";
_local1.p_zapapa = "www.zapapa.com";
_local1.bwcId = 5;
addLanguage(_local1);
_local1 = new Language("br");
_local1.displayName = "Português (BR)";
_local1.p_family = "www.ojogos.com.br";
_local1.p_tween = "www.clickjogos.com";
_local1.p_girl = "www.girlsgogames.com.br";
_local1.p_teen = "www.a10.com";
_local1.p_zapapa = "www.zapapa.com";
_local1.bwcId = 10;
addLanguage(_local1);
_local1 = new Language("jp");
_local1.displayName = "日本語";
_local1.p_family = "www.egames.jp";
_local1.p_tween = "www.egames.jp";
_local1.p_girl = "www.egames.jp";
_local1.p_teen = "www.a10.com";
_local1.p_zapapa = "www.zapapa.com";
_local1.embedInputFonts = false;
_local1.bwcId = 19;
addLanguage(_local1);
addReference(_local1, "ja");
_local1 = new Language("ar");
_local1.displayName = "English";
_local1.p_family = "www.dailygame.com";
_local1.p_tween = "www.dailygame.com";
_local1.p_girl = "www.dailygame.com";
_local1.p_teen = "www.a10.com";
_local1.p_zapapa = "www.zapapa.com";
_local1.bwcId = 20;
addLanguage(_local1);
addReference(_local1, "ar");
_local1 = new Language("es_mx", "mx");
_local1.displayName = "Español (mx)";
_local1.p_family = "www.juegos.mx";
_local1.p_tween = "www.juegos.mx";
_local1.p_girl = "www.juegosdechicas.mx";
_local1.p_teen = "www.a10.com";
_local1.p_zapapa = "www.zapapa.com";
addLanguage(_local1);
addReference(_local1, "mx");
_local1 = new Language("es_ar", "arg");
_local1.displayName = "Español (ar)";
_local1.p_family = "www.juegos.com.ar";
_local1.p_tween = "www.juegos.com.ar";
_local1.p_girl = "www.juegosdechicas.com.ar";
_local1.p_teen = "www.a10.com";
_local1.p_zapapa = "www.zapapa.com";
addLanguage(_local1);
addReference(_local1, "arg");
}
private static function addReference(_arg1:Language, _arg2:String):void{
languages[_arg2] = _arg1;
_arg1.references.push(_arg2);
}
private static function addLanguage(_arg1:Language):void{
languages[_arg1.name] = _arg1;
}
public static function getLanguage(_arg1:String):Language{
return (languages[_arg1]);
}
public static function getLanguageByOldID(_arg1:int):Language{
var _local2:Language;
for each (_local2 in languages) {
if (_local2.bwcId == _arg1){
return (_local2);
};
};
return (null);
}
public static function getLanguagesArray():Array{
var _local3:Language;
var _local1:Array = new Array();
var _local2:Object = new Object();
for each (_local3 in languages) {
if (!_local2[_local3.name]){
_local1.push(_local3);
_local2[_local3.name] = true;
};
};
return (_local1);
}
public static function exportXML():XMLNode{
var _local3:Language;
var _local1:Array = getLanguagesArray();
var _local2:XMLNode = new XMLNode(1, "languages");
for each (_local3 in _local1) {
_local2.appendChild(_local3.exportXML());
};
return (_local2);
}
}
}//package spill.localisation
Section 59
//LanguageSelectBox (spill.localisation.LanguageSelectBox)
package spill.localisation {
import flash.display.*;
import flash.text.*;
import flash.events.*;
public class LanguageSelectBox extends MovieClip {
private var popup:MovieClip;
private var flag:MovieClip;
private var languageName_text:TextField;
private var mc:MovieClip;
public function LanguageSelectBox(){
trace("new langselecbox");
super();
if (numChildren > 0){
removeChildAt(0);
};
addEventListener(Event.ADDED_TO_STAGE, added, false, 0, true);
addEventListener(Event.REMOVED_FROM_STAGE, removed, false, 0, true);
addEventListener(MouseEvent.MOUSE_OVER, mouseOver, false, 0, true);
addEventListener(MouseEvent.MOUSE_OUT, mouseOut, false, 0, true);
Languages.initialize();
popup = new LanguageSelectPopup_mc();
x = Math.round(x);
y = Math.round(y);
popup.y = (-(Math.floor(popup.height)) + 1);
popup.visible = false;
addChild(popup);
mc = new LanguageSelectBox_mc();
addChild(mc);
flag = mc.flag;
languageName_text = mc.languageName_text;
if (stage){
added();
};
init();
languageChanged();
}
public function init():void{
var _local3:MovieClip;
var _local4:Language;
trace("initselectbox");
var _local1:Array = new Array(popup.l_br, popup.l_de, popup.l_en_us, popup.l_fr, popup.l_in, popup.l_jp, popup.l_pt, popup.l_ru, popup.l_ar, popup.l_cn, popup.l_en_uk, popup.l_es, popup.l_id, popup.l_it, popup.l_nl, popup.l_pl, popup.l_se, popup.l_es_mx, popup.l_es_ar);
var _local2:int;
while (_local2 < _local1.length) {
_local3 = MovieClip(_local1[_local2]);
if (_local3){
_local3.addEventListener(MouseEvent.CLICK, itemClicked, true, 0, true);
_local3.flag.gotoAndStop(_local3.name.substr(2));
_local3.flag.mouseEnabled = false;
_local3.text.mouseEnabled = false;
_local4 = Languages.getLanguage(_local3.name.substr(2));
if (_local4){
_local3.text.text = _local4.displayAcronim;
} else {
trace((("Error, '" + _local3.name.substr(2)) + "' language not found"));
};
} else {
trace((((("Error, btn number '" + _local2) + "' is not a MovieClip or there is no button '") + _local1[_local2]) + "'"));
};
_local2++;
};
}
private function itemClicked(_arg1:MouseEvent):void{
SpilGame.changeLanguage(_arg1.currentTarget.name.substr(2));
popup.visible = false;
}
private function mouseOver(_arg1:MouseEvent):void{
popup.visible = true;
}
private function mouseOut(_arg1:MouseEvent):void{
popup.visible = false;
}
private function added(_arg1:Event=null):void{
trace("addedselebnox");
SpilGame.addEventListener("languageChanged", languageChanged, false, 0, true);
}
private function removed(_arg1:Event):void{
SpilGame.removeEventListener("languageChanged", languageChanged);
}
private function languageChanged(_arg1:Event=null):void{
if (SpilGame.currentLanguage){
if ((((SpilGame.portalGroup == PortalGroup.HYVES)) && ((SpilGame.currentLanguage.name == "nl")))){
this.visible = false;
return;
};
this.visible = true;
flag.gotoAndStop(SpilGame.currentLanguage.name);
languageName_text.text = SpilGame.currentLanguage.displayName;
languageName_text.embedFonts = SpilGame.currentLanguage.embedInputFonts;
};
}
public function set popupLocation(_arg1:String):void{
trace(("popupLocation = " + _arg1));
if (_arg1 == "bottom"){
popup.y = Math.floor(mc.height);
} else {
popup.y = (-(Math.floor(mc.height)) + 1);
};
}
}
}//package spill.localisation
Section 60
//LanguageSelectBox_mc (spill.localisation.LanguageSelectBox_mc)
package spill.localisation {
import flash.display.*;
import flash.text.*;
public dynamic class LanguageSelectBox_mc extends MovieClip {
public var languageName_text:TextField;
public var flag:MovieClip;
}
}//package spill.localisation
Section 61
//LanguageSelectPopup_mc (spill.localisation.LanguageSelectPopup_mc)
package spill.localisation {
import flash.display.*;
public dynamic class LanguageSelectPopup_mc extends MovieClip {
public var l_ar:MovieClip;
public var l_pt:MovieClip;
public var l_en_uk:MovieClip;
public var l_br:MovieClip;
public var l_ru:MovieClip;
public var l_se:MovieClip;
public var l_in:MovieClip;
public var l_es:MovieClip;
public var l_fr:MovieClip;
public var l_de:MovieClip;
public var l_jp:MovieClip;
public var l_nl:MovieClip;
public var l_pl:MovieClip;
public var l_es_ar:MovieClip;
public var l_id:MovieClip;
public var l_en_us:MovieClip;
public var l_it:MovieClip;
public var l_es_mx:MovieClip;
public var l_cn:MovieClip;
}
}//package spill.localisation
Section 62
//LocalizedTextField (spill.localisation.LocalizedTextField)
package spill.localisation {
import flash.events.*;
public class LocalizedTextField extends TextFieldFit {
private var originalText:String;
private var regex:RegExp;
public function LocalizedTextField(){
regex = /{([^{}]*)}/g;
super();
addEventListener(Event.ADDED_TO_STAGE, added, false, 0, true);
addEventListener(Event.REMOVED_FROM_STAGE, removed, false, 0, true);
added();
}
private function added(_arg1:Event=null):void{
SpilGame.addEventListener("languageChanged", languageChanged, false, 0, true);
text = originalText;
}
private function removed(_arg1:Event):void{
SpilGame.removeEventListener("languageChanged", languageChanged);
}
private function languageChanged(_arg1:Event):void{
text = originalText;
updateProperties();
}
override public function set text(_arg1:String):void{
originalText = _arg1;
if ((_arg1 is String)){
super.text = _arg1.replace(regex, replaceFn);
} else {
super.text = "";
};
trace(super.text);
}
private function replaceFn():String{
var _local2:String = SpilGame.getString(arguments[1]);
if (((!(_local2)) || ((_local2 == "")))){
return ((("{" + arguments[1]) + "}"));
};
return (_local2);
}
}
}//package spill.localisation
Section 63
//PortalGroup (spill.localisation.PortalGroup)
package spill.localisation {
import flash.xml.*;
public class PortalGroup {
public static const FAMILY:uint = 0;
public static const TEENS:uint = 1;
public static const GIRL:uint = 2;
public static const YOUNG_ADULTS:uint = 3;
public static const ZAPAPA:uint = 4;
public static const HYVES:uint = 5;
public static const NONE:uint = 6;
public static const channelNames:Array = ["family", "tween", "girl", "teen", "zapapa", "hyves"];
public static const backgroundColors:Array = [0xFFFFFF, 0xFFFFFF, 16742331, 0xFFFFFF, 0xFFFFFF, 0xFFFFFF];
public static function getName(_arg1:int):String{
return (channelNames[_arg1]);
}
public static function exportXML():XMLNode{
var _local3:XMLNode;
var _local1:XMLNode = new XMLNode(1, "channels");
var _local2:int;
while (_local2 < 5) {
_local3 = new XMLNode(1, "channel");
_local3.attributes.name = channelNames[_local2];
_local3.attributes.id = _local2;
_local1.appendChild(_local3);
_local2++;
};
return (_local1);
}
}
}//package spill.localisation
Section 64
//spil_internal (spill.localisation.spil_internal)
package spill.localisation {
public namespace spil_internal = "spill.localisation";
}//package spill.localisation
Section 65
//SpilGame (spill.localisation.SpilGame)
package spill.localisation {
import flash.display.*;
import flash.text.*;
import flash.events.*;
import flash.net.*;
import flash.ui.*;
import flash.external.*;
import flash.system.*;
public class SpilGame {
private static const cookiePath:String = "/";
private static const cookieName:String = "spilgames_language_v100";
private static const cookieLanguageVar:String = "savedLang";
public static const LANGUAGE_CHANGED:String = "languageChanged";
public static const BRANDING_CHANGED:String = "brandingChanged";
spil_internal static var gameName:String;
public static var currentBranding:Brand;
public static var currentLanguage:Language;
spil_internal static var emailPage:String;
spil_internal static var portalGroup:uint;
private static var channelLock:Boolean = false;
private static var _init:Boolean = false;
private static var eventDispatcher:EventDispatcher;
private static var localDomains:Object = new Object();
private static var strings:Object = new Object();
private static var contexMenuItem:ContextMenuItem;
private static var stage:Sprite;
spil_internal static var debugHostDomain:String = "";
spil_internal static var debugEmbedDomain:String = "";
public static function initialize(_arg1:String, _arg2:int, _arg3:String, _arg4:Sprite, _arg5:Boolean=false):void{
stage = _arg4;
if (_init){
trace("ERROR: LocalisationManager already initialised");
return;
};
_init = true;
localDomains["localhost"] = true;
localDomains["www8.agame.com"] = true;
localDomains["gamedev.dev.spilgames.com"] = true;
localDomains["stg.spel.nl"] = true;
localDomains["stg.girlsgogames.nl"] = true;
localDomains["stg.pl.spel.nl"] = true;
localDomains["stg.pl.girlsgogames.nl"] = true;
trace(localDomains["stg.girlsgogames.nl"]);
Brandings.initialize();
Languages.initialize();
initContexMenu(_arg4);
channelLock = _arg5;
gameName = _arg1.replace(" ", "_");
portalGroup = _arg2;
emailPage = _arg3;
chooseLanguage();
chooseBranding();
if (portalGroup == PortalGroup.HYVES){
changeLanguage("nl");
};
}
public static function initTextField(_arg1:TextField):void{
var _local2:TextFormat;
trace(_arg1.text);
_arg1.text = _arg1.text.replace(/{([^{}]*)}/g, replaceFn);
trace(_arg1.text);
_arg1.embedFonts = currentLanguage.embedFonts;
if (currentLanguage.forceFont != ""){
_local2 = new TextFormat();
_local2.font = currentLanguage.forceFont;
_arg1.setTextFormat(_local2);
};
}
private static function replaceFn():String{
var _local2:String = SpilGame.getString(arguments[1]);
if (((!(_local2)) || ((_local2 == "")))){
return ((("{" + arguments[1]) + "}"));
};
return (_local2);
}
public static function outputAllBrands():String{
var _local3:Brand;
var _local1:Array = Brandings.getBrandsArray();
var _local2 = "";
for each (_local3 in _local1) {
_local2 = (_local2 + (_local3.getSendToFriendLink(gameName, emailPage, isExternal, embedDomain) + "\n"));
};
return (_local2);
}
public static function traceAllBrands():void{
trace(outputAllBrands());
}
public static function getMoreGamesLink(_arg1:String=""):String{
var _local2:String = (embedDomain) ? embedDomain : hostingDomain;
return (currentBranding.getMoreGamesLink(gameName, isExternal, _local2, _arg1));
}
public static function getSendToFriendLink():String{
return (currentBranding.getSendToFriendLink(gameName, emailPage, isExternal, embedDomain));
}
public static function getPromotionLink(_arg1:String="feature_promotion"):String{
var _local2:String = (embedDomain) ? embedDomain : hostingDomain;
return (currentBranding.getPromotionLink(gameName, emailPage, isExternal, _local2, _arg1));
}
public static function getSpilCompanyLink():String{
var _local1 = "http://www.gameportal.net/";
_local1 = (_local1 + ("?utm_medium=brandedgames_" + (isExternal) ? "external" : "internal"));
_local1 = (_local1 + ("&utm_campaign=" + gameName));
_local1 = (_local1 + ("&utm_source=" + Brand.stripSubDomain((embedDomain) ? embedDomain : hostingDomain)));
_local1 = (_local1 + "&utm_content=Branding_Link");
return (_local1);
}
public static function importXML(_arg1:XML):void{
var _local2:XML;
var _local3:Object;
var _local4:XML;
for each (_local2 in _arg1.children()) {
_local3 = (strings[_local2.identifier] = new Object());
for each (_local4 in _local2.children()) {
_local3[_local4.name()] = _local4.children()[0].toString();
};
};
}
public static function importXMLv2(_arg1:XML):void{
var _local2:XML;
var _local3:Object;
var _local4:XML;
for each (_local2 in _arg1.children()) {
_local3 = (strings[_local2.attribute("identifier")] = new Object());
for each (_local4 in _local2.children()) {
if (_local4.children().length() > 0){
_local3[_local4.name()] = _local4.children()[0].toString();
} else {
_local3[_local4.name()] = "";
};
};
};
}
public static function getString(_arg1:String):String{
var _local2:Object = strings[_arg1];
if (_local2){
if (currentLanguage.textLanguage){
return (_local2[currentLanguage.textLanguage]);
};
if (_local2[currentLanguage.name]){
return (_local2[currentLanguage.name]);
};
return (_local2["en_us"]);
//unresolved jump
};
return ("");
}
private static function initContexMenu(_arg1:Sprite):void{
contexMenuItem = new ContextMenuItem("");
_arg1.contextMenu = new ContextMenu();
_arg1.contextMenu.customItems.push(contexMenuItem);
contexMenuItem.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT, contexMenuClicked);
}
private static function contexMenuClicked(_arg1:ContextMenuEvent):void{
navigateToURL(new URLRequest(getMoreGamesLink("Contex_Menu")));
}
spil_internal static function chooseLanguage():void{
if (cookieLanguage != null){
currentLanguage = cookieLanguage;
} else {
if (isExternal){
currentLanguage = systemLanguage;
} else {
currentLanguage = portalLanguage;
if (!currentLanguage){
currentLanguage = systemLanguage;
};
};
};
if (!currentLanguage){
trace("Unable to determine language, using 'English US'");
currentLanguage = Languages.getLanguage("en_us");
};
TextFieldFit.embedFonts = currentLanguage.embedFonts;
TextFieldFit.forceFont = currentLanguage.forceFont;
dispatchEvent(new Event(LANGUAGE_CHANGED));
}
spil_internal static function chooseBranding():void{
currentBranding = Brandings.getBrandByDomain(currentLanguage.portal_groups[portalGroup]);
if (!(currentBranding is Brand)){
currentBranding = Brandings.getBrandByDomain("www.agame.com");
};
contexMenuItem.caption = ("More Games: " + currentBranding.domain);
dispatchEvent(new Event(BRANDING_CHANGED));
}
spil_internal static function changeLanguage(_arg1:String):void{
var _local2:Language = Languages.getLanguage(_arg1);
if (!_local2){
trace("ERROR: Supplied language string does not have a matching language");
} else {
cookieLanguage = _local2;
currentLanguage = _local2;
};
TextFieldFit.embedFonts = currentLanguage.embedFonts;
TextFieldFit.forceFont = currentLanguage.forceFont;
chooseBranding();
dispatchEvent(new Event(LANGUAGE_CHANGED));
}
private static function get portalLanguage():Language{
var _local1:Brand;
var _local2:String;
var _local3:Language;
if (isExternal){
return (null);
};
if (!embedDomain){
return (null);
};
_local1 = Brandings.getBrandByDomain(embedDomain);
if (!_local1){
return (null);
};
_local2 = _local1.preferedLanguage;
if (!_local2){
return (null);
};
_local3 = Languages.getLanguage(_local2);
if (!_local3){
return (null);
};
return (_local3);
}
spil_internal static function get systemLanguage():Language{
return (Languages.getLanguage(Capabilities.language));
}
spil_internal static function get cookieLanguage():Language{
var _local1:SharedObject = SharedObject.getLocal(cookieName, cookiePath);
var _local2:String = String(_local1.data[cookieLanguageVar]);
return (Languages.getLanguage(_local2));
}
spil_internal static function set cookieLanguage(_arg1:Language):void{
var _local2:SharedObject = SharedObject.getLocal(cookieName, cookiePath);
if (_arg1 == null){
_local2.data[cookieLanguageVar] = null;
} else {
_local2.data[cookieLanguageVar] = _arg1.name;
};
_local2.flush();
}
public static function get isExternal():Boolean{
return (((((!(Brandings.hasDomain(embedDomain))) && (!(localDomains[embedDomain])))) && (!(isStagingDomain))));
}
public static function get isStagingDomain():Boolean{
var _local1:String = ("http://" + embedDomain);
return ((_local1.indexOf("http://stg.") >= 0));
}
spil_internal static function get hostingDomain():String{
var _local1:LocalConnection;
if (debugHostDomain != ""){
return (debugHostDomain);
};
_local1 = new LocalConnection();
return (_local1.domain);
}
spil_internal static function get embedDomain():String{
var loc:String;
if (debugEmbedDomain != ""){
return (debugEmbedDomain);
};
if (ExternalInterface.available){
try {
loc = ExternalInterface.call("window.location.href.toString");
if (((!((loc == ""))) && (!((loc == null))))){
trace(("embed domain = " + getDomain(loc)));
return (getDomain(loc));
};
} catch(e:SecurityError) {
trace(("Security Error connecting to external interface, error = " + e));
} catch(e:Error) {
trace(("Error connecting to external interface, error = " + e));
};
};
return (null);
}
public static function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
if (!eventDispatcher){
eventDispatcher = new EventDispatcher();
};
eventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public static function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
if (!eventDispatcher){
eventDispatcher = new EventDispatcher();
};
eventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
spil_internal static function dispatchEvent(_arg1:Event):void{
if (!eventDispatcher){
eventDispatcher = new EventDispatcher();
};
eventDispatcher.dispatchEvent(_arg1);
}
public static function exportXML():XML{
var _local1:XML = <spil_games/>
;
_local1.appendChild(Brandings.exportXML());
_local1.appendChild(Languages.exportXML());
_local1.appendChild(PortalGroup.exportXML());
return (_local1);
}
private static function getDomain(_arg1:String):String{
var _local2:String;
var _local3:uint;
if (_arg1.indexOf("file") == 0){
return ("offline_play");
};
_local2 = new String();
_local3 = 7;
while (_local3 < _arg1.length) {
if (_arg1.charAt(_local3) == "/"){
break;
};
_local2 = (_local2 + _arg1.charAt(_local3));
_local3++;
};
if (_local2 == "localhost"){
_local2 = "offline_play";
};
return (_local2);
}
}
}//package spill.localisation
Section 66
//SpilGamesLink (spill.localisation.SpilGamesLink)
package spill.localisation {
import flash.display.*;
import flash.events.*;
import flash.net.*;
public class SpilGamesLink extends SimpleButton {
public function SpilGamesLink(){
addEventListener(MouseEvent.CLICK, buttonClicked);
}
private function buttonClicked(_arg1:MouseEvent):void{
navigateToURL(new URLRequest(SpilGame.getSpilCompanyLink()), "_blank");
}
}
}//package spill.localisation
Section 67
//TextFieldFit (spill.localisation.TextFieldFit)
package spill.localisation {
import flash.display.*;
import flash.text.*;
import flash.events.*;
import flash.utils.*;
import flash.filters.*;
public class TextFieldFit extends MovieClip {
private var field:TextField;
private var w:Number;
private var h:Number;
private var format:TextFormat;
private var embeddedFonts:Array;
private var sizeChanged:Boolean;// = true
private var debugBounding:Sprite;
private var valid:Boolean;// = true
protected var _text:String;// = "default"
protected var _textColor:uint;// = 0
protected var _textSize:Number;// = 12
protected var _multiline:Boolean;// = false
protected var _disableWordwrap:Boolean;// = false
protected var _hAlign:String;// = "left"
protected var _vAlign:String;// = "top"
protected var _bold:Boolean;// = false
protected var _underline:Boolean;// = false
protected var _italic:Boolean;// = false
protected var _selectable:Boolean;// = false
protected var _font:String;// = ""
protected var _embedFonts:Boolean;// = true
protected var _antiAliasType:String;// = "advanced"
protected var _gridFitType:String;// = "pixel"
protected var _useGlowFilter:Boolean;// = false
protected var _glowBlur:Number;// = 3
protected var _glowColor:uint;// = 0
protected var _glowStrength:Number;// = 5
protected var _glowQuality:Number;// = 1
private static const gutter:Number = 2;
spil_internal static var embedFonts:Boolean = true;
spil_internal static var forceFont:String = null;
spil_internal static var forceAAType:String = null;
public static var alwaysCheckWidth:Boolean = false;
public function TextFieldFit(){
var _local1:Boolean = ((!((parent == null))) && ((getQualifiedClassName(parent) == "fl.livepreview::LivePreviewParent")));
var _local2:Number = width;
var _local3:Number = height;
if (numChildren > 0){
removeChildAt(0);
};
if (!field){
field = new TextField();
addChild(field);
};
field.border = false;
field.background = false;
field.type = TextFieldType.DYNAMIC;
mouseEnabled = false;
mouseChildren = false;
format = new TextFormat();
embeddedFonts = Font.enumerateFonts(false);
setSize(_local2, _local3);
validate();
if (stage){
addEventListener(Event.RENDER, init);
stage.invalidate();
};
init();
}
public function get textField():TextField{
return (field);
}
private function init(_arg1:Event=null):void{
removeEventListener(Event.RENDER, init);
updateProperties();
layoutText();
}
protected function updateProperties():void{
var _local1:Boolean;
var _local2:Font;
field.text = _text;
field.multiline = ((((_text.indexOf(" ") < 0)) && ((_text.length < 14)))) ? false : _multiline;
field.wordWrap = ((field.multiline) && (!(_disableWordwrap)));
field.selectable = _selectable;
field.antiAliasType = (forceAAType) ? forceAAType : _antiAliasType;
field.gridFitType = _gridFitType;
embeddedFonts = Font.enumerateFonts(false);
if (((((_embedFonts) && (!((_font == ""))))) && (TextFieldFit.embedFonts))){
_local1 = false;
for each (_local2 in embeddedFonts) {
if (_font == _local2.fontName){
_local1 = true;
break;
};
};
field.embedFonts = _local1;
if (!_local1){
trace(((("WARNING: Embedded font '" + _font) + "' not found, disabling embedding of fonts, text = ") + _text));
} else {
trace((("Found Embedded font '" + _font) + "' using font"));
};
} else {
field.embedFonts = false;
};
if (TextFieldFit.forceFont){
format.font = TextFieldFit.forceFont;
} else {
format.font = _font;
};
if (sizeChanged){
format.size = _textSize;
};
format.color = _textColor;
format.align = _hAlign;
format.bold = _bold;
format.italic = _italic;
format.underline = _underline;
format.leftMargin = 0;
format.rightMargin = 0;
field.setTextFormat(format);
if (_useGlowFilter){
filters = [new GlowFilter(_glowColor, 1, _glowBlur, _glowBlur, _glowStrength, _glowQuality)];
} else {
filters = [];
};
}
public function setSize(_arg1:Number, _arg2:Number):void{
w = _arg1;
h = _arg2;
scaleX = (scaleY = 1);
field.width = w;
field.height = h;
invalidate();
}
private function layoutText():void{
resizeText();
field.height = (field.textHeight + (gutter * 2));
if (vAlign == "top"){
field.y = 0;
} else {
if (vAlign == "middle"){
field.y = ((h - field.height) / 2);
} else {
if (vAlign == "bottom"){
field.y = (h - field.height);
};
};
};
}
private function resizeText(_arg1:Boolean=false):void{
if (!doesTextFit()){
format.size = Object((Number(format.size) - 1));
if (format.size <= 3){
trace("WARNING: Text resised to 3px, either an error occured or the text just wont fit");
return;
};
field.setTextFormat(format);
resizeText(true);
} else {
if (_arg1 == false){
while (doesTextFit()) {
if (format.size <= textSize){
format.size = Object((Number(format.size) + 1));
field.setTextFormat(format);
if (!doesTextFit()){
format.size = Object((Number(format.size) - 1));
field.setTextFormat(format);
break;
};
} else {
break;
};
};
};
};
}
private function doesTextFit():Boolean{
if (((((field.textHeight + (gutter * 2)) > h)) || (((((field.textWidth + (gutter * 2)) > w)) && (((!(field.multiline)) || (alwaysCheckWidth))))))){
return (false);
};
return (true);
}
private function invalidate():void{
if (valid){
addEventListener(Event.ENTER_FRAME, validate);
if (stage){
stage.invalidate();
};
valid = false;
};
}
private function validate(_arg1:Event=null):void{
updateProperties();
layoutText();
removeEventListener(Event.ENTER_FRAME, validate);
valid = true;
}
public function set text(_arg1:String):void{
_text = _arg1;
invalidate();
}
public function get text():String{
return (_text);
}
public function set textColor(_arg1:uint):void{
_textColor = _arg1;
invalidate();
}
public function get textColor():uint{
return (_textColor);
}
public function set textSize(_arg1:Number):void{
_textSize = _arg1;
sizeChanged = true;
invalidate();
}
public function get textSize():Number{
return (_textSize);
}
public function set multiline(_arg1:Boolean):void{
_multiline = _arg1;
invalidate();
}
public function get multiline():Boolean{
return (_multiline);
}
public function set disableWordwrap(_arg1:Boolean):void{
_disableWordwrap = _arg1;
invalidate();
}
public function get disableWordwrap():Boolean{
return (_disableWordwrap);
}
public function set hAlign(_arg1:String):void{
_hAlign = _arg1;
invalidate();
}
public function get hAlign():String{
return (_hAlign);
}
public function set vAlign(_arg1:String):void{
_vAlign = _arg1;
invalidate();
}
public function get vAlign():String{
return (_vAlign);
}
public function set bold(_arg1:Boolean):void{
_bold = _arg1;
invalidate();
}
public function get bold():Boolean{
return (_bold);
}
public function set underline(_arg1:Boolean):void{
_underline = _arg1;
invalidate();
}
public function get underline():Boolean{
return (_underline);
}
public function set italic(_arg1:Boolean):void{
_italic = _arg1;
invalidate();
}
public function get italic():Boolean{
return (_italic);
}
public function set selectable(_arg1:Boolean):void{
_selectable = _arg1;
invalidate();
}
public function get selectable():Boolean{
return (_selectable);
}
public function set font(_arg1:String):void{
_font = _arg1;
invalidate();
}
public function get font():String{
return (_font);
}
public function set embedFonts(_arg1:Boolean):void{
_embedFonts = _arg1;
invalidate();
}
public function get embedFonts():Boolean{
return (_embedFonts);
}
public function set antiAliasType(_arg1:String):void{
_antiAliasType = _arg1;
invalidate();
}
public function get antiAliasType():String{
return (_antiAliasType);
}
public function set gridFitType(_arg1:String):void{
_gridFitType = _arg1;
invalidate();
}
public function get gridFitType():String{
return (_gridFitType);
}
public function set useGlowFilter(_arg1:Boolean):void{
_useGlowFilter = _arg1;
invalidate();
}
public function get useGlowFilter():Boolean{
return (_useGlowFilter);
}
public function set glowBlur(_arg1:Number):void{
_glowBlur = _arg1;
invalidate();
}
public function get glowBlur():Number{
return (_glowBlur);
}
public function set glowColor(_arg1:uint):void{
_glowColor = _arg1;
invalidate();
}
public function get glowColor():uint{
return (_glowColor);
}
public function set glowStrength(_arg1:Number):void{
_glowStrength = _arg1;
invalidate();
}
public function get glowStrength():Number{
return (_glowStrength);
}
public function set glowQuality(_arg1:Number):void{
_glowQuality = _arg1;
invalidate();
}
public function get glowQuality():Number{
return (_glowQuality);
}
}
}//package spill.localisation
Section 68
//Submitter (Spill.Components.Submitter)
package Spill.Components {
import flash.display.*;
public dynamic class Submitter extends MovieClip {
public var OO00OO1l1l:OOO000lll;
}
}//package Spill.Components
Section 69
//O1OOO0O00 (Util.O1OOO0O00)
package Util {
import flash.net.*;
import flash.external.*;
public class O1OOO0O00 {
private static const _O1lO0Oll1:Array = ["www.a10.com.gp.dev.spilgames.eu", "stg.pl.a10.com", "gamedev.dev.spilgames.com", "www.agame.com", "www.girlsgogames.com", "www.games.co.uk", "www.mygames.co.uk", "www.girlsgogames.co.uk", "www.spel.nl", "www.spelletjes.nl", "www.girlsgogames.nl", "www.jetztspielen.de", "www.spielen.com", "www.girlsgogames.de", "www.jeux.fr", "www.jeu.fr", "www.girlsgogames.fr", "www.juegos.com", "www.zapjuegos.com", "www.juegosdechicas.com", "www.gioco.it", "www.giocaregratis.it", "www.girlsgogames.it", "www.gry.pl", "www.minigry.pl", "www.girlsgogames.pl", "www.spela.se", "www.spel.eu", "www.girlsgogames.se", "www.ojogos.pt", "www.ourgames.ru", "www.flashgames.ru", "www.girlsgogames.ru", "www.oyunlar123.com", "www.asoyun.com", "www.girlsgogamestr.com", "www.gamesgames.com", "www.agame.com", "www.girlsgogames.com", "www.juegos.com", "www.zapjuegos.com", "www.juegosdechicas.com", "www.ojogos.com.br", "www.clickjogos.com", "www.girlsgogames.com.br", "www.game.com.cn", "www.xiaoyouxi.com", "www.egames.jp", "www.game.co.in", "www.game.co.in", "www.girlsgogames.in", "www.games.co.id", "www.laro.com.ph", "www.game.com.my", "www.onrpg.com", "www.zlonggames.com", "www.a10.com", "localhost"];
private static var _OOl10ll1l:URLRequest;
private static var _O0Oll0l00;
public function O1OOO0O00():void{
super();
try {
_O0Oll0l00 = ExternalInterface.call("window.location.href.toString");
} catch(e) {
_O0Oll0l00 = "error";
};
if ((((_O0Oll0l00 == null)) || ((_O0Oll0l00 == "")))){
_O0Oll0l00 = "error";
};
if (String(_O0Oll0l00).indexOf(".swf") != -1){
_O0Oll0l00 = "error";
};
}
public function O0111l110():Boolean{
if (((!((_O001llOll(_O11ll1l00(_O0Oll0l00)) == -1))) && (!((_O0Oll0l00 == "error"))))){
return (true);
};
return (false);
}
private static function _O11ll1l00(_arg1:String):String{
var _local2:String = new String();
var _local3:uint = 7;
while (_local3 < _arg1.length) {
if (_arg1.charAt(_local3) == "/"){
break;
};
_local2 = (_local2 + _arg1.charAt(_local3));
_local3++;
};
return (_local2);
}
private static function _O001llOll(_arg1:String):Number{
var _local2:uint;
if (((_O1lO0Oll1) && (_arg1))){
_local2 = 0;
while (_local2 < _O1lO0Oll1.length) {
if (_arg1 == _O1lO0Oll1[_local2]){
return (_local2);
};
_local2++;
};
return (-1);
} else {
trace("cannot find site name");
};
return (-1);
}
}
}//package Util
Section 70
//AngrySound (AngrySound)
package {
import flash.media.*;
public dynamic class AngrySound extends Sound {
}
}//package
Section 71
//GameOverSound (GameOverSound)
package {
import flash.media.*;
public dynamic class GameOverSound extends Sound {
}
}//package
Section 72
//GameSound (GameSound)
package {
import flash.media.*;
public dynamic class GameSound extends Sound {
}
}//package
Section 73
//LevelUpSound (LevelUpSound)
package {
import flash.media.*;
public dynamic class LevelUpSound extends Sound {
}
}//package
Section 74
//Main (Main)
package {
import flash.display.*;
import flash.events.*;
import fangxu.manager.*;
import caurina.transitions.*;
import game.*;
import fangxu.util.*;
import flash.utils.*;
import fangxu.*;
import flash.geom.*;
public class Main extends MainBase {
private var isEnd:Boolean;
private var level:uint;
private var currentTime:uint;
private var wastebinPoint:Point;
private var startPoint:Point;
private var product:Product;// = null
private var prodClas:Class;// = null
private var arrProds:Array;
private var arrCusts:Array;
private var arrSteps:Array;
private var curMake:String;// = null
private var customers:Array;
private var curCustomer:Customer;// = null
private var timeoutId:int;// = -1
private var vTime:int;// = 10000
private var mcFirst:First;
private var bFirst:Boolean;// = true
private var bShowFirst:Boolean;// = false
private var mcTables:Array;
private var mcArrows:Array;
private var mcShowFirstArrow:MovieClip;
private static var instance:Main;
public function Main(){
wastebinPoint = new Point(164.1, 232.3);
startPoint = new Point(314.1, 241.8);
arrProds = Util.ARR_FOOD;
arrCusts = [];
arrSteps = [];
customers = [];
super();
}
private function end(_arg1:TimerEvent=null):void{
if (bSound){
new GameOverSound().play();
};
destroy();
isEnd = true;
mRoot.nextFrame();
}
private function updateTimer(_arg1:TimerEvent=null){
if (currentTime > 0){
mRoot.txtTime.text = TimeUtil.convertTime(currentTime);
} else {
end();
};
currentTime--;
}
private function fnScore(_arg1:Number, _arg2:Boolean=false):Boolean{
var score = _arg1;
var bComplete = _arg2;
if (!bComplete){
Tweener.addTween(mRoot, {totalScore:(mRoot.totalScore + score), time:2, transition:"easeOutCubic", rounded:true, onUpdate:function (_arg1){
_arg1.txtScore.text = _arg1.totalScore;
}, onUpdateParams:[mRoot], onComplete:fnScore, onCompleteParams:[0, true]});
};
if (bShowFirst){
bShowFirst = false;
mRoot.mcHelpText.visible = false;
level = 0;
fnNextLevel(true);
return (true);
};
if (((!(bNLevel)) && ((mRoot.totalScore >= Config.getGoal(level))))){
fnNextLevel(true);
return (true);
};
return (false);
}
private function fnNextLevel(_arg1:Boolean=false):void{
if (_arg1){
if (bSound){
new LevelUpSound().play();
};
nextLevel(MCNextLevel, true, fnClearInterval, fnNextLevel);
return;
};
level++;
destroy(true);
start();
}
private function fnClearInterval():void{
if (!bShowFirst){
if (timeoutId > -1){
clearTimeout(timeoutId);
};
timeoutId = -1;
TimeManager.getInstance().stop();
};
customers.forEach(function (_arg1, _arg2:int, _arg3:Array){
if (_arg1 != null){
_arg1.fnPause();
};
});
Tweener.pauseAllTweens();
}
private function fnSetInterval():void{
if (!bShowFirst){
TimeManager.getInstance().start();
timeoutId = setTimeout(timeAction, (vTime - ((level - 1) * 0.4)));
};
customers.forEach(function (_arg1, _arg2:int, _arg3:Array){
if (_arg1 != null){
_arg1.fnContinue();
};
});
Tweener.resumeAllTweens();
}
public function destroy(_arg1:Boolean=false):void{
var _local3:*;
if (!bShowFirst){
TimeManager.getInstance().clear();
};
Tweener.removeAllTweens();
currentTime = 0;
bPause = false;
bNLevel = false;
removeProduct();
var _local2:* = 0;
while (_local2 < mcTables.length) {
mcTables[_local2].visible = false;
_local2++;
};
for (_local3 in customers) {
if (customers[_local3] != null){
if (customers[_local3].curTable != null){
if (!_arg1){
customers[_local3].curTable.alpha = 0;
customers[_local3].curTable.visible = false;
} else {
customers[_local3].curTable.alpha = 1;
customers[_local3].curTable.visible = true;
};
customers[_local3].parent.swapChildren(customers[_local3].curTable, customers[_local3]);
trace("customers[i].curTable", customers[_local3].curTable, customers[_local3].curTable.visible);
};
customers[_local3].destory();
customers[_local3].removeEventListener(MouseEvent.CLICK, customerClick);
customers[_local3].removeEventListener(MouseEvent.MOUSE_DOWN, customerDown);
customers[_local3].removeEventListener(MouseEvent.MOUSE_UP, customerUp);
customers[_local3].removeEventListener(GameEvent.BUYER_VERY_ANGRY, customerAngry);
customers[_local3].removeEventListener(GameEvent.BUYER_EAT_OVER, customerEatOver);
customers[_local3].removeEventListener(GameEvent.CUSTOMER_ORDER, customerOrder);
customers[_local3].parent.removeChild(customers[_local3]);
};
};
customers = [];
arrSteps = [];
curCustomer = null;
curMake = null;
product = null;
prodClas = null;
if (timeoutId > -1){
clearTimeout(timeoutId);
};
timeoutId = -1;
}
public function init():void{
trace("bShowFirst", bShowFirst);
isEnd = false;
level = 1;
currentTime = 0;
initMC();
start();
}
private function initMC():void{
mRoot.mcHelpText.visible = false;
mRoot.mcHelpText.gotoAndStop(1);
mRoot.mcHelpButton.buttonMode = true;
mRoot.mcHelpButton.addEventListener(MouseEvent.CLICK, function (){
trace("HelpPaper");
pause(HelpPaper, true, fnClearInterval, fnHelpClose);
});
mRoot.btPause.addEventListener(MouseEvent.CLICK, function (){
trace("btPause");
pause(MCPause, true, fnClearInterval, fnSetInterval);
});
mRoot.bt_paper_cup.addEventListener(MouseEvent.CLICK, cupClick);
mRoot.bt_paper_bowl.addEventListener(MouseEvent.CLICK, cupClick);
mRoot.bt_glass_cup.addEventListener(MouseEvent.CLICK, cupClick);
mRoot.bt_glass_bowl.addEventListener(MouseEvent.CLICK, cupClick);
mRoot.bt_coffea_cup.addEventListener(MouseEvent.CLICK, cupClick);
mRoot.bt_drink_cup.addEventListener(MouseEvent.CLICK, cupClick);
mRoot.bt_leaf.addEventListener(MouseEvent.CLICK, ornamentClick);
mRoot.bt_cooky.addEventListener(MouseEvent.CLICK, ornamentClick);
mRoot.bt_almond.addEventListener(MouseEvent.CLICK, ornamentClick);
mRoot.bt_gingeli.addEventListener(MouseEvent.CLICK, ornamentClick);
mRoot.bt_strawberry.addEventListener(MouseEvent.CLICK, ornamentClick);
mRoot.bt_black.addEventListener(MouseEvent.CLICK, ornamentClick);
mRoot.bt_white.addEventListener(MouseEvent.CLICK, ornamentClick);
mRoot.bt_coffea.addEventListener(MouseEvent.CLICK, ornamentClick);
mRoot.bt_drink_green.addEventListener(MouseEvent.CLICK, ornamentClick);
mRoot.bt_drink_purple.addEventListener(MouseEvent.CLICK, ornamentClick);
mRoot.bt_drink_yellow.addEventListener(MouseEvent.CLICK, ornamentClick);
mRoot.mcWaiter.addEventListener(GameEvent.WAITER_REBACK, waiterReback);
mRoot.mcWastebin.buttonMode = true;
mRoot.mcWastebin.addEventListener(MouseEvent.CLICK, removeProduct);
mRoot.mcWaitress.addEventListener(GameEvent.WAITRESS_TABLE, waitressTable);
mRoot.mcWaitress.addEventListener(GameEvent.WAITRESS_PRODUCT, waitressProduct);
mcTables = [mRoot.mcTable1, mRoot.mcTable2, mRoot.mcTable3, mRoot.mcTable4];
mcArrows = [mRoot.mcHelpText.mccArrow2, mRoot.mcHelpText.mccArrow3, mRoot.mcHelpText.mccArrow4, mRoot.mcHelpText.mccArrow5];
}
private function fnHelpClose():void{
if (bShowFirst){
mRoot.mcHelpText.nextFrame();
mcShowFirstArrow.visible = false;
};
fnSetInterval();
}
private function waitressProduct(_arg1:GameEvent):void{
var customer:Customer;
var e = _arg1;
try {
customer = e.customer;
if ((customer as Customer).putFood(prodClas)){
removeProduct();
} else {
product.visible = true;
};
} catch(e) {
product.visible = true;
};
}
private function waitressTable(_arg1:GameEvent):void{
var _local2:MovieClip = _arg1.table;
if ((((curCustomer == null)) || (!((curCustomer.alpha == 1))))){
return;
};
if (_local2.visible){
if (bShowFirst){
curCustomer.sitDown(_local2, [Coffea]);
} else {
curCustomer.sitDown(_local2, Config.getProducts(level));
};
_local2.visible = false;
_local2.parent.swapChildren(_local2, curCustomer);
curCustomer = null;
if (!bShowFirst){
if (timeoutId >= 0){
clearTimeout(timeoutId);
};
timeoutId = setTimeout(timeAction, (vTime - ((level - 1) * 0.4)));
};
};
}
private function start():void{
(mRoot.mcWaitress as Waitress).start();
arrCusts = Config.getCustomers(level);
mRoot.txtGoal.text = Config.getGoal(level);
mRoot.txtLevel.text = level;
currentTime = Config.getTime(level);
if (!bShowFirst){
TimeManager.getInstance().adStart(currentTime, updateTimer, end);
};
var _local1:* = 0;
while (_local1 < mcTables.length) {
mcTables[_local1].visible = true;
_local1++;
};
timeAction();
}
private function timeAction():void{
curCustomer = createCustomer(Config.getAngryTime(level), 1.5);
customers.push(curCustomer);
if (bShowFirst){
mRoot.mcHelpText.visible = true;
};
}
private function createCustomer(_arg1:Number, _arg2:Number):Customer{
var _local3:* = new (arrCusts[NumberUtil.ranFloor(0, (arrCusts.length - 1))]);
_local3.x = 95.1;
_local3.y = 183.8;
_local3.scaleX = 0.1;
_local3.scaleY = 0.1;
_local3.alpha = 0;
_local3.buttonMode = true;
mRoot.addChild(_local3);
Tweener.addTween(_local3, {x:2.2, y:143.8, scaleX:1, scaleY:1, alpha:1, time:0.5, transition:"linear"});
_local3.start(_arg1, _arg2);
_local3.addEventListener(MouseEvent.CLICK, customerClick);
_local3.addEventListener(MouseEvent.MOUSE_DOWN, customerDown);
_local3.addEventListener(MouseEvent.MOUSE_UP, customerUp);
_local3.addEventListener(GameEvent.BUYER_VERY_ANGRY, customerAngry);
_local3.addEventListener(GameEvent.BUYER_EAT_OVER, customerEatOver);
_local3.addEventListener(GameEvent.CUSTOMER_ORDER, customerOrder);
return (_local3);
}
private function customerOrder(_arg1:GameEvent):void{
if ((mRoot.mcWaitress as Waitress).bMove){
return;
};
var _local2:Customer = (_arg1.currentTarget as Customer);
_local2.fnFindOrder();
if (bShowFirst){
mRoot.mcHelpText.gotoAndStop(3);
mcShowFirstArrow.visible = false;
};
}
private function customerDown(_arg1:MouseEvent):void{
var _local2:MovieClip = (_arg1.currentTarget as MovieClip);
if ((((_local2.x == 2.2)) && ((_local2.y == 143.8)))){
_local2.startDrag(false, new Rectangle(2.2, 140, 694, 454));
_local2.addEventListener(Event.ENTER_FRAME, testTable);
};
}
private function testTable(_arg1:Event):void{
var _local2:* = 0;
while (_local2 < mcTables.length) {
mcTables[_local2].alpha = 1;
if ((((mcTables[_local2].visible == true)) && (mcTables[_local2].hitTestPoint(mStage.mouseX, mStage.mouseY)))){
mcTables[_local2].alpha = 0.2;
};
_local2++;
};
}
private function customerUp(_arg1:MouseEvent):void{
var e = _arg1;
var mc:MovieClip = (e.currentTarget as MovieClip);
mc.removeEventListener(Event.ENTER_FRAME, testTable);
mc.stopDrag();
var i:* = 0;
while (i < mcTables.length) {
mcTables[i].alpha = 1;
if ((((mcTables[i].visible == true)) && (mcTables[i].hitTestPoint(mStage.mouseX, mStage.mouseY)))){
mcTables[i].alpha = 0.2;
};
if ((((mcTables[i].visible == true)) && (mcTables[i].hitTestPoint(mStage.mouseX, mStage.mouseY)))){
mc.removeEventListener(MouseEvent.MOUSE_DOWN, customerDown);
mc.removeEventListener(MouseEvent.MOUSE_UP, customerUp);
mRoot.mcWaitress.dispatchEvent(new GameEvent(GameEvent.WAITRESS_TABLE, 0, mcTables[i]));
if (bShowFirst){
mRoot.mcHelpText.gotoAndStop(2);
mcArrows.forEach(function (_arg1, _arg2:int, _arg3:Array){
_arg1.visible = false;
});
mcShowFirstArrow = mcArrows[i];
mcShowFirstArrow.visible = true;
};
return;
};
i = (i + 1);
};
mc.x = 2.2;
mc.y = 143.8;
}
private function customerClick(_arg1:MouseEvent):void{
var _local3:MovieClip;
var _local2:Customer = (_arg1.currentTarget as Customer);
if (_local2.bFirstClick){
if ((((_local2.x == 2.2)) && ((_local2.y == 143.8)))){
} else {
_local2.bFirstClick = false;
};
} else {
if (_local2.cusFrame == 4){
if ((mRoot.mcWaitress as Waitress).bMove){
return;
};
(mRoot.mcWaitress as Waitress).moveTable(_local2.curTable, null, null);
_local2.fnFindOrder();
if (product != null){
product.visible = true;
};
if (bShowFirst){
mRoot.mcHelpText.gotoAndStop(3);
mcShowFirstArrow.visible = false;
};
} else {
if ((mRoot.mcWaitress as Waitress).bMove){
return;
};
_local3 = (_arg1.currentTarget as Customer).curTable;
(mRoot.mcWaitress as Waitress).moveTable(_local3, _local2, prodClas);
};
};
}
private function removeCustomer(_arg1:Customer):void{
var p_customer = _arg1;
if (p_customer.curTable != null){
p_customer.curTable.alpha = 1;
p_customer.curTable.visible = true;
p_customer.parent.swapChildren(p_customer.curTable, p_customer);
};
p_customer.destory();
p_customer.removeEventListener(MouseEvent.CLICK, customerClick);
p_customer.removeEventListener(GameEvent.BUYER_VERY_ANGRY, customerAngry);
p_customer.removeEventListener(GameEvent.BUYER_EAT_OVER, customerEatOver);
p_customer.removeEventListener(GameEvent.CUSTOMER_ORDER, customerOrder);
p_customer.parent.removeChild(p_customer);
customers = customers.filter(function (_arg1, _arg2:int, _arg3:Array){
return (!((_arg1 == p_customer)));
});
}
private function customerEatOver(_arg1:GameEvent):void{
removeCustomer((_arg1.currentTarget as Customer));
if (bSound){
new PaySound().play();
};
fnScore(((60 - _arg1.score) * 5));
}
private function customerAngry(_arg1:GameEvent):void{
if (bSound){
new AngrySound().play();
};
removeCustomer((_arg1.currentTarget as Customer));
}
private function removeProduct(_arg1:MouseEvent=null):void{
if (_arg1 != null){
mRoot.mcWastebin.gotoAndPlay(2);
};
if (product != null){
(mRoot.mcWaitress as Waitress).removeProduct();
product.removeEventListener(MouseEvent.MOUSE_DOWN, productClick);
mRoot.removeChild(product);
product = null;
arrSteps = [];
};
}
private function ornamentClick(_arg1:MouseEvent):void{
if (mRoot.mcWaiter.bMove){
return;
};
if (product == null){
return;
};
if (bShowFirst){
if (_arg1.currentTarget.name == "bt_coffea"){
if (product != null){
product.visible = false;
};
curMake = Util.COFFEA;
mRoot.mcWaiter.move(Util.COFFEA);
mRoot.mcHelpText.nextFrame();
};
} else {
switch (_arg1.currentTarget.name){
case "bt_leaf":
nextStep(Util.LEAF);
break;
case "bt_cooky":
nextStep(Util.COOKY);
break;
case "bt_almond":
nextStep(Util.ALMOND);
break;
case "bt_gingeli":
nextStep(Util.GINGELI);
break;
case "bt_strawberry":
nextStep(Util.STRAWBERRY);
break;
case "bt_black":
if (product != null){
product.visible = false;
};
curMake = Util.BLACK_ICE;
mRoot.mcWaiter.move(Util.BLACK_ICE);
break;
case "bt_white":
if (product != null){
product.visible = false;
};
curMake = Util.WHITE_ICE;
mRoot.mcWaiter.move(Util.WHITE_ICE);
break;
case "bt_coffea":
if (product != null){
product.visible = false;
};
curMake = Util.COFFEA;
mRoot.mcWaiter.move(Util.COFFEA);
break;
case "bt_drink_yellow":
if (product != null){
product.visible = false;
};
curMake = Util.DRINK_YELLOW;
mRoot.mcWaiter.move(Util.DRINK);
break;
case "bt_drink_purple":
if (product != null){
product.visible = false;
};
curMake = Util.DRINK_PURPLE;
mRoot.mcWaiter.move(Util.DRINK);
break;
case "bt_drink_green":
if (product != null){
product.visible = false;
};
curMake = Util.DRINK_GREEN;
mRoot.mcWaiter.move(Util.DRINK);
break;
};
};
}
private function cupClick(_arg1:MouseEvent):void{
if (mRoot.mcWaiter.bMove){
return;
};
if (bShowFirst){
if (_arg1.currentTarget.name == "bt_coffea_cup"){
curMake = Util.COFFEA_CUP;
mRoot.mcWaiter.move(Util.CUP_OR_BOWL);
mRoot.mcHelpText.nextFrame();
};
} else {
curMake = Util.PAPER_CUP;
switch (_arg1.currentTarget.name){
case "bt_paper_cup":
curMake = Util.PAPER_CUP;
break;
case "bt_paper_bowl":
curMake = Util.PAPER_BOWL;
break;
case "bt_glass_cup":
curMake = Util.GLASS_CUP;
break;
case "bt_glass_bowl":
curMake = Util.GLASS_BOWL;
break;
case "bt_coffea_cup":
curMake = Util.COFFEA_CUP;
break;
case "bt_drink_cup":
curMake = Util.DRINK_CUP;
break;
case "bt_dish":
break;
};
mRoot.mcWaiter.move(Util.CUP_OR_BOWL);
};
}
private function waiterReback(_arg1:GameEvent):void{
nextStep(curMake);
}
private function moveProduct():void{
product.x = (startPoint.x - (product.width / 2));
product.y = startPoint.y;
}
private function nextStep(_arg1:String):void{
var _local2:Product;
var _local3:*;
if (((!((product == null))) && (!(product.visible)))){
product.visible = true;
};
if (((!((product == null))) && (product.nextStep(_arg1)))){
arrSteps.push(_arg1);
trace("nextStep1", product, product.currentFrame, product.totalFrames);
if (product.currentFrame == product.totalFrames){
product.buttonMode = true;
product.addEventListener(MouseEvent.MOUSE_DOWN, productClick);
};
} else {
if (product == null){
arrSteps = [];
};
_local3 = 0;
while (_local3 < arrProds.length) {
_local2 = new (arrProds[_local3]);
if (_local2.nStep(arrSteps, _arg1)){
prodClas = arrProds[_local3];
removeProduct();
if (product == null){
arrSteps.push(_local2.steps[0]);
};
product = _local2;
moveProduct();
mRoot.addChild(product);
trace("nextStep2", product, product.currentFrame, product.totalFrames);
if (product.currentFrame == product.totalFrames){
product.buttonMode = true;
product.addEventListener(MouseEvent.MOUSE_DOWN, productClick);
};
_local2 = null;
return;
};
_local3++;
};
};
}
private function productClick(_arg1:MouseEvent):void{
if ((mRoot.mcWaitress as Waitress).bMove){
return;
};
if (product != null){
product.visible = false;
(mRoot.mcWaitress as Waitress).addProduct(prodClas);
if (bShowFirst){
mRoot.mcHelpText.nextFrame();
mcShowFirstArrow.visible = true;
};
};
}
public static function getInstance(_arg1:Stage, _arg2=null):Main{
if (Main.instance == null){
Main.instance = new (Main);
Main.instance.initBase(_arg1, _arg2);
Main.instance.bShowFirst = true;
Main.instance.init();
} else {
Main.instance.bShowFirst = false;
Main.instance.init();
};
return (Main.instance);
}
}
}//package
Section 75
//MainSound (MainSound)
package {
import flash.media.*;
public dynamic class MainSound extends Sound {
}
}//package
Section 76
//MCNextLevel (MCNextLevel)
package {
import flash.display.*;
public dynamic class MCNextLevel extends MovieClip {
public var btNextLevel:SimpleButton;
}
}//package
Section 77
//MCPause (MCPause)
package {
import flash.display.*;
public dynamic class MCPause extends MovieClip {
public var btContinue:SimpleButton;
}
}//package
Section 78
//NewMoveTilesSound (NewMoveTilesSound)
package {
import flash.media.*;
public dynamic class NewMoveTilesSound extends Sound {
}
}//package
Section 79
//OOO000lll (OOO000lll)
package {
import flash.display.*;
import flash.events.*;
import Util.*;
import flash.net.*;
import flash.system.*;
public class OOO000lll extends MovieClip {
public var O1OlOO00O:XML;
private var _O10OOO1O0:Loader;
private var _O1l10l101:Object;
private var _OO0l101l1:Object;
public var OOO10O100:String;
public var O0l00l0O0:XML;
private var _OOl10010l:String;
private var _O001OO010:Object;
private var _O01OO1O00;
private var _O01O0lOl0:int;
private var _O1Ol011l1:String;
private var _O11OO0110:String;
private var _OOO00l00l:int;
private var _O0lO0100O:String;
private var _OOOOll01l:Array;
private var _O111O01OO:Object;
private var _OO10001Ol:Boolean;
private var _OO1l1OO10:String;
public var O1lll0ll0:XML;
private var _O1OO1OllO:Object;
private var _O0l0OO01O;
private var _OO0l1lOO1:int;
public var OOOll0OO0:int;
public function OOO000lll():void{
var _O1OlO10O0:*;
super();
Security.allowDomain("*");
_OO10001Ol = false;
_O01OO1O00 = this.parent;
_O01OO1O00.stop();
var _OOll00l11:int;
while (true) {
try {
_O1OlO10O0 = _O01OO1O00.getChildAt(_OOll00l11);
if ((_O1OlO10O0 is MovieClip)){
_O1OlO10O0.visible = false;
} else {
_O01OO1O00.removeChild(_O1OlO10O0);
};
_OOll00l11 = (_OOll00l11 + 1);
} catch(e:Error) {
break;
};
};
try {
_O01OO1O00["_O0000Ol01"] = _O0000Ol01;
_O01OO1O00["_O0Olll0lO"] = _O0Olll0lO;
} catch(e:Error) {
};
}
private function _O11lll1OO0(_arg1:String):void{
if (_O0l0OO01O){
_O0l0OO01O.OO0011ll1O(_arg1);
};
}
private function _OO0OO1OO0(_arg1:Event):void{
if ((((((_arg1.type == "ScoreLoadSubmitComplete")) || ((_arg1.type == "ScoreLoadListComplete")))) || ((_arg1.type == "ScoreLoadUserListComplete")))){
O0l00l0O0 = _O0l0OO01O.O011Oll0O();
} else {
if (_arg1.type == "ScoreLoadTimeComplete"){
O1lll0ll0 = _O0l0OO01O.OO011OOl1();
} else {
O0l00l0O0 = _O0l0OO01O.O0001O0Ol();
};
};
_O01OO1O00.dispatchEvent(_arg1);
}
private function _O10Ol0l10(_arg1:IOErrorEvent):void{
removeEventListener(Event.ENTER_FRAME, _O0OlOOO1O);
_O01OO1O00.dispatchEvent(new IOErrorEvent(IOErrorEvent.IO_ERROR));
}
private function _O01Ol1O1O():void{
if (_O0l0OO01O){
_O0l0OO01O.OO011OOl1();
};
}
private function _O110l10ll():void{
if (_O0l0OO01O){
_O0l0OO01O.O01l01OlO();
};
}
private function _O01O1101l():void{
stop();
_O10OOO1O0 = new Loader();
_O10OOO1O0.load(new URLRequest(_O1Ol011l1));
_O01OO1O00.addChildAt(_O10OOO1O0, 0);
this.addEventListener(Event.ENTER_FRAME, _O0OlOOO1O);
_O10OOO1O0.contentLoaderInfo.addEventListener(Event.COMPLETE, _O100O0Oll);
_O10OOO1O0.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, _O10Ol0l10);
}
private function _O0000Ol01(_arg1=null, _arg2:String="default", _arg3="", _arg4:int=0, _arg5:String="normal", _arg6:String="", _arg7:int=0, _arg8:int=0, _arg9:int=1, _arg10:Boolean=false):void{
OOO10O100 = _arg5;
OOOll0OO0 = _arg4;
_O11OO0110 = _arg2;
if (_arg3 == ""){
_OO1l1OO10 = _O11OO0110;
} else {
_OO1l1OO10 = _arg3;
};
if (((!((_arg1 == null))) && (!((_arg1.loaderInfo == null))))){
_O1l10l101 = _arg1.loaderInfo.parameters["username"];
_O001OO010 = _arg1.loaderInfo.parameters["hash"];
_OO0l101l1 = _arg1.loaderInfo.parameters["id"];
_O1OO1OllO = _arg1.loaderInfo.parameters["s"];
_O111O01OO = _arg1.loaderInfo.parameters["c"];
_O1Ol011l1 = "http://www8.agame.com/games/flash/highscore/SubmitterV2.swf";
if (_O00O00010(_arg10)){
_O01O1101l();
} else {
_O01OO1O00.dispatchEvent(new Event("LoadingFailed"));
};
};
_OOl10010l = _arg6;
_OO0l1lOO1 = _arg7;
_O01O0lOl0 = _arg8;
_OOO00l00l = _arg9;
}
private function _O0O1l0OO0():Boolean{
return (!((_O0l0OO01O == null)));
}
private function _O100O0Oll(_arg1:Event):void{
_O0l0OO01O = _arg1.currentTarget.content;
_O0l0OO01O.O0011ll110O0(_O1OO1OllO, 1, _OO0l101l1, _O111O01OO, OOOll0OO0, _OOl10010l, _OO0l1lOO1, _O01O0lOl0, _OOO00l00l, _O1l10l101, _O001OO010);
_O0l0OO01O.addEventListener("HyScorSubmitterLoaded", _OOl11lOOl);
_O0l0OO01O.addEventListener("ScoreLoadError", _OO0OO1OO0);
_O0l0OO01O.addEventListener("ScoreLoadTimeComplete", _OO0OO1OO0);
_O0l0OO01O.addEventListener("ScoreLoadSubmitComplete", _OO0OO1OO0);
_O0l0OO01O.addEventListener("ScoreLoadListComplete", _OO0OO1OO0);
_O0l0OO01O.addEventListener("ScoreLoadUserListComplete", _OO0OO1OO0);
_O0l0OO01O.addEventListener("AchievLoadError", _O0l0O1Oll);
_O0l0OO01O.addEventListener("AchievLoadTimeComplete", _O0l0O1Oll);
_O0l0OO01O.addEventListener("AchievLoadListComplete", _O0l0O1Oll);
_O0l0OO01O.addEventListener("AchievLoadInfoComplete", _O0l0O1Oll);
_O0l0OO01O.addEventListener("AchievLoadGrantComplete", _O0l0O1Oll);
_O01OO1O00["_O0Olll0lO"] = _O0Olll0lO;
_O01OO1O00["_O0O1l0OO0"] = _O0O1l0OO0;
_O01OO1O00["_O01Ol1O1O"] = _O01Ol1O1O;
_O01OO1O00["_O01lOO10O"] = _O01lOO10O;
_O01OO1O00["_O110l10ll"] = _O110l10ll;
_O01OO1O00["_O11lll1OO0"] = _O11lll1OO0;
_O01OO1O00["_O00OOl1Ol"] = _O00OOl1Ol;
_O01OO1O00["_O1OlO10OO"] = _O1OlO10OO;
_O01OO1O00["_OOlOOOll1"] = _OOlOOOll1;
_O01OO1O00["_O010ll111"] = _O010ll111;
}
private function _O00O00010(_arg1:Boolean=false):Boolean{
var _local4:String;
var _local5:O1OOO0O00;
var _local2:Boolean = _arg1;
if (!_local2){
_OOOOll01l = ["www8.agame.com"];
} else {
_OOOOll01l = ["localhost", "www8.agame.com", "www.zlonggames.com", "gamedev.dev.spilgames.com", "stg.pl.a10.com", "www.a10.com.gp.dev.spilgames.eu"];
};
var _local3:LocalConnection = new LocalConnection();
if (((isNaN((_OO0l101l1 as int))) || (isNaN((_O1OO1OllO as int))))){
return (false);
};
for each (_local4 in _OOOOll01l) {
if (_local3.domain == _local4){
_local5 = new O1OOO0O00();
if (_local5.O0111l110()){
_OO10001Ol = true;
return (true);
};
};
};
return (false);
}
private function _O00OOl1Ol(_arg1:String):void{
if (_O0l0OO01O){
_O0l0OO01O.OO00lO1l0(_arg1, _O1l10l101, _O001OO010);
};
}
private function _O0OlOOO1O(_arg1:Event):void{
var _local2 = (((_O10OOO1O0.contentLoaderInfo.bytesLoaded / _O10OOO1O0.contentLoaderInfo.bytesTotal) * 100) >> 0);
if (_local2 >= 100){
removeEventListener(Event.ENTER_FRAME, _O0OlOOO1O);
};
}
private function _OOl11lOOl(_arg1:Event):void{
if (_O0l0OO01O){
_O0l0OO01O.removeEventListener("HyScorSubmitterLoaded", _OOl11lOOl);
};
_O01OO1O00.dispatchEvent(new Event(Event.COMPLETE));
}
private function _O01lOO10O(_arg1:int):void{
if (_O0l0OO01O){
_O0l0OO01O.O0l01llOl(_arg1, _O1l10l101, _O001OO010);
};
}
private function _O0Olll0lO():Boolean{
return (_O00O00010(false));
}
private function _O1OlO10OO():void{
if (_O0l0OO01O){
_O0l0OO01O.O1l0OOl1l(_O1l10l101, _O001OO010);
};
}
private function _O10O00lO0():String{
if (_O0l0OO01O){
return (_O0l0OO01O.OOOO00ll0());
};
return (("FAILED " + _O0l0OO01O));
}
private function _O0l0O1Oll(_arg1:Event):void{
if ((((((_arg1.type == "AchievLoadListComplete")) || ((_arg1.type == "AchievLoadInfoComplete")))) || ((_arg1.type == "AchievLoadGrantComplete")))){
O1OlOO00O = _O0l0OO01O.O11OO0l0l();
} else {
O1OlOO00O = _O0l0OO01O.O0O100l0l();
};
_O01OO1O00.dispatchEvent(_arg1);
}
private function _O010ll111():void{
_O0l0OO01O.removeEventListener("ScoreLoadError", _OO0OO1OO0);
_O0l0OO01O.removeEventListener("ScoreLoadTimeComplete", _OO0OO1OO0);
_O0l0OO01O.removeEventListener("ScoreLoadSubmitComplete", _OO0OO1OO0);
_O0l0OO01O.removeEventListener("ScoreLoadListComplete", _OO0OO1OO0);
_O0l0OO01O.removeEventListener("ScoreLoadUserListComplete", _OO0OO1OO0);
_O0l0OO01O.removeEventListener("AchievLoadError", _O0l0O1Oll);
_O0l0OO01O.removeEventListener("AchievLoadTimeComplete", _O0l0O1Oll);
_O0l0OO01O.removeEventListener("AchievLoadListComplete", _O0l0O1Oll);
_O0l0OO01O.removeEventListener("AchievLoadInfoComplete", _O0l0O1Oll);
_O0l0OO01O.removeEventListener("AchievLoadGrantComplete", _O0l0O1Oll);
_O01OO1O00 = null;
_OOOOll01l = null;
_O0l0OO01O = null;
_O1l10l101 = null;
_O001OO010 = null;
_O10OOO1O0 = null;
O1lll0ll0 = null;
O0l00l0O0 = null;
O1OlOO00O = null;
}
private function _OOlOOOll1(_arg1:int):void{
if (_O0l0OO01O){
_O0l0OO01O.O1OlOO111(_arg1);
};
}
}
}//package
Section 80
//PaySound (PaySound)
package {
import flash.media.*;
public dynamic class PaySound extends Sound {
}
}//package