Section 1
//_-64 (_-9-._-64)
package _-9- {
public class _-64 {
static const _-N5:Array;
static const _-JE:Array;
public function _-64(){
//unresolved jump
var _local1:String = (((true <= (-(false) + 1)) == !NULL!) >= !NULL!);
!ERROR! if (_local2){
super();
};
}
public static function _-Au(_arg1:int, _arg2:int):String{
//unresolved jump
_local7--;
_local5--;
var _local10 = ((~(false) - null) + 1);
var _local11 = (~(false) - null);
var _local3:String;
var _local4:int;
var _local5:int;
var _local6:int;
var _local7:int;
var _local8:*;
var _local9:*;
if (!_local10){
_local3 = "";
if (!_local10){
//unresolved if
_local4 = 0;
//unresolved if
};
};
if (_local11){
};
_local5 = _-N5[_arg1].length;
for (;_local4 < _local5;//unresolved if
, if (!((_local10) && (_-64))){
if (!((_local10) && (_arg2))){
};
if (!_local10){
if (!((_local10) && (_local3))){
//unresolved if
};
};
}) {
if (_local11){
_local6 = int(_-N5[((_arg1 - 5) ^ -359)][_local4]);
//unresolved if
//unresolved if
//unresolved if
};
//unresolved if
_local4 = int(_-N5[((_arg1 - 5) ^ -359)][_local4]);
//unresolved if
//unresolved if
_local7 = int(_-N5[((_arg1 - 5) ^ -359)][_local4]);
//unresolved if
_local8 = 2654435769;
_local9 = 84941944608;
if (_local11){
continue;
//unresolved if
if (((_local11) || (_-64))){
if (!_local10){
//unresolved if
//unresolved if
};
//unresolved if
};
//unresolved jump
_local7++;
_local7++;
_local9++;
_local8 = _local7;
//unresolved if
//unresolved if
var _temp2 = _local7;
_local7 = ((_local6 + _local6) - (_local9 ^ ( + _-JE.int(typeof(((_arg2 + 3) * undefined))[( ^ 815)][((_local9 >>> 11) & 3)]))));
//unresolved if
};
_local9 = (_local9 - _local8);
if (!_local10){
if (_local11){
if (!((_local10) && (_arg2))){
if (((_local11) || (_arg2))){
if (!((_local10) && (_arg2))){
//unresolved if
//unresolved if
};
};
};
};
};
};
if (!((_local10) && (_local3))){
//unresolved if
//unresolved if
//unresolved if
};
if (((_local11) || (_local3))){
//unresolved jump
_local4++;
_arg2++;
_arg2--;
//unresolved if
};
return (_local3);
}
var _local1:Boolean;
//unresolved jump
var _local2 = -((//unresolved nextvalue or nextname - ??getglobalscope
));
if (_local1){
_-JE = new Array([-1931357144, -1256982515, 1975522993, -1083357824], [1946370750, -1396387059, 726532364, 2105827084], [542007687, -1044571446, 1485637226, 1839427810]);
if (((_local1) || (_local1))){
//unresolved jump
//unresolved jump
new Array(, 705581935, [[263300861, 2066974177, -1725248778, -680192893, 809887125, 1440556690, 1047775312, -1117604151, 906301119, 1772588721, 1208931307, -1793874541, 625616868, 1151394273, -1024333419, 1491274912, 17038991, 1191971380, 744474415, -460534678, -549171825, 2098172351, 1373548713, (((1442148261 + ??getglobalscope
) instanceof -(true)) - NaN), (((1442148261 + ??getglobalscope
) instanceof -(true)) - NaN), -1562429742], [-1896038548, -1526421170, 417320895, -62990984, -1414251758, -330764190, 1978143455, 1891372205, -1794306514, -1539003098, -1228377894, -236944535, 975842759, -1519669072, -1128718340, 1653304320, -1760865541, -1118594177, -1489416365, 220800426, -1847054480, 1305875136, -113454448, 466009742, -1255376438, 1586058913, -1397511888, -1731983692, -1862205648, -1472653166, 1974938241, 1136155693], -1375445215, -873904456, -760195490, 1566362570, 1034638807, -355194625, 1450366379, -1629498483, 1344892746, -892477939, 1217271405, -355502557, -1484907619, 467290608, 702237961, -1977319313, -1679247883, 1309138847, 60132176, -381689999, 1957146070, 1638720291, ??hasnext
, _-64, 1079966468, -1611105524, 150940781, -1710336123, -817454913, -2123915821])._-N5 = !NULL!;
};
};
}
}//package _-9-
Section 2
//_-57 (_-A3._-57)
package _-A3 {
import flash.display.*;
import flash.events.*;
import gos.common.*;
import _-M9.*;
import flash.text.*;
public class _-57 extends _-Q1 {
public function _-57(_arg1:String, _arg2:String, _arg3:Object){
super(_arg1, _arg2, _arg3);
}
override protected function createPanelAssets():void{
_-DP = new _-Jv();
this.initBigScorePanel();
this.addChild(_-DP);
_-DP.x = 0;
_-DP.y = 2;
}
protected function initBigScorePanel():void{
_-DP.stop();
(_-DP["scoreText"] as TextField).text = (_-J5.score + "");
_-Kk.add((_-DP["okButton"] as SimpleButton), MouseEvent.CLICK, this.onOkButtonClicked);
_-Kk.add((_-DP["skipButton"] as SimpleButton), MouseEvent.CLICK, this.onSkipButtonClicked);
}
protected function onOkButtonClicked(_arg1:MouseEvent):void{
var e = _arg1;
_-Dm.debug("onOkButtonClicked", this);
submitScoreOutsideFacebook(function ():void{
changePanel();
});
}
protected function onSkipButtonClicked(_arg1:MouseEvent):void{
_-Dm.debug("onSkipButtonClicked", this);
this.changePanel();
}
protected function changePanel():void{
_-Kk.remove((_-DP["okButton"] as SimpleButton), MouseEvent.CLICK, this.onOkButtonClicked);
_-Kk.remove((_-DP["skipButton"] as SimpleButton), MouseEvent.CLICK, this.onSkipButtonClicked);
this.removeChild(_-DP);
var _local1:MovieClip = new _-46();
(_local1["scoreText"] as TextField).text = (_-J5.score + "");
this.addChild(_local1);
_local1.y = 0;
_-60 = new _-GB();
initButtonList();
this.addChild(_-60);
_-60.y = ((_local1.y + _local1.height) + 8);
}
}
}//package _-A3
Section 3
//_-Fd (_-A3._-Fd)
package _-A3 {
import flash.display.*;
public class _-Fd extends MovieClip {
public static const _-4u:String = "close";
public function close():void{
}
}
}//package _-A3
Section 4
//_-Q1 (_-A3._-Q1)
package _-A3 {
import flash.display.*;
import flash.events.*;
import gos.serviceAPI.*;
import gos.common.*;
import com.adobe.serialization.json.*;
import gos.obyoAPI.*;
import _-M9.*;
import _-PA.*;
import flash.external.*;
import flash.text.*;
public class _-Q1 extends _-Fd {
protected var _-Kk:EventTracker;
protected var _gameId:String;
protected var _gameKey:String;
protected var _-J5:Object;
protected var _gsess:String;// = null
protected var _fbuser:String;
protected var _fbuname:String;
protected var _fbsess:String;
protected var _-DP:MovieClip;
protected var _-60:MovieClip;
private var _autoSubmit:Boolean;// = true
public function _-Q1(_arg1:String, _arg2:String, _arg3:Object){
this._-Kk = new EventTracker();
this._-J5 = _arg3;
this._gameId = _arg1;
this._gameKey = _arg2;
this._-Kk.add(this, Event.ADDED_TO_STAGE, this.init);
}
protected function init(_arg1:Event):void{
this._-Kk.remove(this, Event.ADDED_TO_STAGE, this.init);
this._-GQ();
this._gsess = _-Ne._-MX(this._gameKey);
this.createPanelAssets();
if (((this._autoSubmit) && ((_-CJ._-7U == _-Mz._-0Q)))){
this.submitScore();
};
}
protected function createPanelAssets():void{
this._-DP = new _-41();
this._-60 = new _-GB();
this.initScorePanel();
this.initButtonList();
addChild(this._-DP);
addChild(this._-60);
this._-DP.x = 0;
this._-DP.y = 0;
this._-60.y = ((this._-DP.y + this._-DP.height) + 8);
}
protected function initScorePanel():void{
this._-DP.stop();
(this._-DP["scoreText"] as TextField).text = (this._-J5.score + "");
if (_-CJ._-7U == _-Mz._-0Q){
_-LE.removeChild(this._-DP, (this._-DP["submitToFacebookButton"] as MovieClip));
if (this._autoSubmit){
_-LE.removeChild(this._-DP, (this._-DP["submitButton"] as MovieClip));
this._-Kk.add((this._-DP["shareButton"] as MovieClip), MouseEvent.CLICK, this.onShareClicked);
} else {
_-LE.removeChild(this._-DP, (this._-DP["shareButton"] as MovieClip));
this._-Kk.add((this._-DP["submitButton"] as MovieClip), MouseEvent.CLICK, this.onSubmitClicked);
};
this.jsEventCall("score", _-08.encode({score:this._-J5.score}));
} else {
_-LE.removeChild(this._-DP, (this._-DP["shareButton"] as MovieClip));
_-LE.removeChild(this._-DP, (this._-DP["submitButton"] as MovieClip));
this._-Kk.add((this._-DP["submitToFacebookButton"] as MovieClip), MouseEvent.CLICK, this.onSubmitToFacebookClicked);
};
}
protected function initButtonList():void{
this._-Kk.add((this._-60["playAgainButton"] as MovieClip), MouseEvent.CLICK, this.onReplayClicked);
this._-Kk.add((this._-60["backToMenuButton"] as MovieClip), MouseEvent.CLICK, this.onBackToMenuClicked);
if (_-CJ._-7U == _-Mz._-Jr){
this._-Kk.add((this._-60["moreGamesButton"] as MovieClip), MouseEvent.CLICK, this.onMoreGamesClicked);
} else {
(this._-60["moreGamesButton"] as MovieClip).visible = false;
};
}
protected function _-GQ():void{
var loa:LoaderInfo = LoaderInfo(parent.root.loaderInfo);
try {
this._fbuser = loa.parameters["fbu"];
this._fbuname = loa.parameters["fbn"];
this._fbsess = loa.parameters["sess"];
_-Dm.debug(((("parseFlashVars: user:" + this._fbuser) + ", name:") + this._fbuname), this);
} catch(e:Error) {
_-Dm.error(("error in parseFlahsVars:" + e.message));
};
}
override public function close():void{
this._-Kk.removeAll();
_-LE.removeChild(this, this._-DP);
_-LE.removeChild(this, this._-60);
_-LE.removeChild(parent, this);
this._-J5 = null;
this._gameId = null;
this._gameKey = null;
this._gsess = null;
this._fbsess = null;
this._fbuser = null;
this._fbuname = null;
this._-DP = null;
this._-60 = null;
}
protected function submitScore():void{
_-Dm.debug("submitScore", this);
if (!this._autoSubmit){
this._-DP.gotoAndStop("submitting");
};
_-CJ._-4M.scoreService.submit(this._fbuname, this._-J5.score, {channel:_-CJ.channel, user:this._fbuser, misc:{gsess:this._gsess, sess:this._fbsess}, onError:this.onApiError, onComplete:function (_arg1:_-7k):void{
var _local2:*;
if (((((!(_-LE.isEmpty(_arg1.data))) && (!(_-LE.isEmpty(_arg1.data.code))))) && ((_arg1.data.code == "1")))){
_-Dm.debug(("score is submitted: " + _arg1.data), this);
if (!_autoSubmit){
_-DP.gotoAndStop("submitted");
};
_local2 = (_arg1.data.js) ? _-08.encode(_arg1.data.js) : "{}";
jsEventCall("submitScore", _local2);
} else {
onApiError(new _-7k({error:_-7k.INVALID_DATA_RETURNED, errorMessage:_arg1.data}));
};
}});
}
protected function submitScoreOutsideFacebookWithToken():void{
_-Dm.debug("submitScoreOutsideFacebook", "GosDashboard");
this._-DP.gotoAndStop("submitting");
_-CJ._-4M.scoreService.getSubmitToken(this._-J5.score, {channel:_-CJ.channel, onError:this.onApiError, onComplete:function (_arg1:_-7k):void{
if (((((!((_arg1.resultCode == "1"))) || (_-LE.isEmpty(_arg1.data)))) || (_-LE.isEmpty(_arg1.data.token)))){
onApiError(new _-7k({error:_-7k.INVALID_DATA_RETURNED, errorMessage:"no token returned"}));
} else {
_-Dm.debug(("token: " + _arg1.data.token), this);
_-DP.gotoAndStop("submitted");
_-BP.facebookGameLink(_gameId, {token:_arg1.data.token}, true);
};
}});
}
protected function submitScoreOutsideFacebook(_arg1:Function):void{
var _local2:Object = _-CJ._-4M.scoreService.getURLSubmitVariables(this._gsess, this._-J5.score);
if (!_local2){
this.onApiError(new _-7k().initError(_-7k.SYSTEM_ERROR, "cannot create url variables"));
};
_-Dm.debug(("submitScoreOutsideFacebook vars are being send: " + _-08.encode(_local2)), this);
_-BP.facebookGameLink(this._gameId, _local2, true);
_arg1();
}
protected function shareScore():void{
this._-DP.gotoAndStop("submitting");
_-CJ._-4M.scoreService._-Mr(this._fbuname, this._-J5.score, {channel:_-CJ.channel, user:this._fbuser, misc:{gsess:this._gsess, sess:this._fbsess}, onError:this.onApiError, onComplete:function (_arg1:_-7k):void{
var _local2:*;
var _local3:*;
if (((((!(_-LE.isEmpty(_arg1.data))) && (!(_-LE.isEmpty(_arg1.data.code))))) && ((_arg1.data.code == "1")))){
_-DP.gotoAndStop("submitted");
_local2 = (_arg1.data.js) ? _-08.encode(_arg1.data.js) : "{}";
jsEventCall("shareScore", _local2);
} else {
_local3 = "";
if (_-LE.isEmpty(_arg1.data)){
_local3 = ("data doesn't exist: " + _arg1.data);
} else {
if (((_-LE.isEmpty(_arg1.data.code)) || (!((_arg1.data.code == "1"))))){
_local3 = (((("data code: " + _arg1.data.code) + " (") + _-08.encode(_arg1.data)) + ")");
};
};
onApiError(new _-7k({errorCode:_-7k.INVALID_DATA_RETURNED, errorMessage:_local3}));
};
}});
}
protected function onApiError(_arg1:_-7k):void{
_-Dm.error(((("api error : " + _arg1.errorMessage) + ", event:") + _arg1.event));
this._-DP.gotoAndPlay("error");
}
protected function jsEventCall(_arg1:String, _arg2:String){
var name = _arg1;
var params = _arg2;
if (ExternalInterface.available){
_-Dm.debug(((("jsEventCall " + name) + ", ") + params), "GosDashboard");
try {
return (ExternalInterface.call(_-4a._-J0, name, params));
} catch(e:Error) {
_-Dm.error(("error in jsEventCall: " + e.message));
};
};
}
protected function onSubmitClicked(_arg1:Event):void{
this.submitScore();
}
protected function onSubmitToFacebookClicked(_arg1:Event):void{
var e = _arg1;
this.submitScoreOutsideFacebook(function ():void{
_-DP.gotoAndStop("submitted");
});
}
protected function onShareClicked(_arg1:Event):void{
this.shareScore();
}
protected function onReplayClicked(_arg1:Event):void{
if (this._-J5.onReplay){
this._-J5.onReplay(new _-7k({input:this._-J5, event:_arg1}));
};
dispatchEvent(new Event(_-4u));
}
protected function onBackToMenuClicked(_arg1:Event):void{
if (this._-J5.onBackToMenu){
this._-J5.onBackToMenu(new _-7k({input:this._-J5, event:_arg1}));
};
dispatchEvent(new Event(_-4u));
}
protected function onMoreGamesClicked(_arg1:Event):void{
_-BP._-0a({ref:this._gameId, refex:_-4a._-8I}, true);
if (this._-J5.onMoreGames){
this._-J5.onMoreGames(new _-7k({input:this._-J5, event:_arg1}));
};
}
protected function onError(_arg1:_-7k):void{
if ((this._-J5.onError is Function)){
this._-J5.onError(_arg1);
};
}
}
}//package _-A3
Section 5
//MD5 (_-Cb.MD5)
package _-Cb {
public class MD5 {
public function calculate(_arg1:String):String{
return (hex_md5(_arg1));
}
private static function hex_md5(_arg1:String):String{
return (binl2hex(core_md5(str2binl(_arg1), (_arg1.length * 8))));
}
private static function core_md5(_arg1:Array, _arg2:Number):Array{
var _local8:Number;
var _local9:Number;
var _local10:Number;
var _local11:Number;
_arg1[(_arg2 >> 5)] = (_arg1[(_arg2 >> 5)] | (128 << (_arg2 % 32)));
_arg1[((((_arg2 + 64) >>> 9) << 4) + 14)] = _arg2;
var _local3:Number = 1732584193;
var _local4:Number = -271733879;
var _local5:Number = -1732584194;
var _local6:Number = 271733878;
var _local7:Number = 0;
while (_local7 < _arg1.length) {
_local8 = _local3;
_local9 = _local4;
_local10 = _local5;
_local11 = _local6;
_local3 = md5_ff(_local3, _local4, _local5, _local6, _arg1[(_local7 + 0)], 7, -680876936);
_local6 = md5_ff(_local6, _local3, _local4, _local5, _arg1[(_local7 + 1)], 12, -389564586);
_local5 = md5_ff(_local5, _local6, _local3, _local4, _arg1[(_local7 + 2)], 17, 606105819);
_local4 = md5_ff(_local4, _local5, _local6, _local3, _arg1[(_local7 + 3)], 22, -1044525330);
_local3 = md5_ff(_local3, _local4, _local5, _local6, _arg1[(_local7 + 4)], 7, -176418897);
_local6 = md5_ff(_local6, _local3, _local4, _local5, _arg1[(_local7 + 5)], 12, 1200080426);
_local5 = md5_ff(_local5, _local6, _local3, _local4, _arg1[(_local7 + 6)], 17, -1473231341);
_local4 = md5_ff(_local4, _local5, _local6, _local3, _arg1[(_local7 + 7)], 22, -45705983);
_local3 = md5_ff(_local3, _local4, _local5, _local6, _arg1[(_local7 + 8)], 7, 1770035416);
_local6 = md5_ff(_local6, _local3, _local4, _local5, _arg1[(_local7 + 9)], 12, -1958414417);
_local5 = md5_ff(_local5, _local6, _local3, _local4, _arg1[(_local7 + 10)], 17, -42063);
_local4 = md5_ff(_local4, _local5, _local6, _local3, _arg1[(_local7 + 11)], 22, -1990404162);
_local3 = md5_ff(_local3, _local4, _local5, _local6, _arg1[(_local7 + 12)], 7, 1804603682);
_local6 = md5_ff(_local6, _local3, _local4, _local5, _arg1[(_local7 + 13)], 12, -40341101);
_local5 = md5_ff(_local5, _local6, _local3, _local4, _arg1[(_local7 + 14)], 17, -1502002290);
_local4 = md5_ff(_local4, _local5, _local6, _local3, _arg1[(_local7 + 15)], 22, 1236535329);
_local3 = md5_gg(_local3, _local4, _local5, _local6, _arg1[(_local7 + 1)], 5, -165796510);
_local6 = md5_gg(_local6, _local3, _local4, _local5, _arg1[(_local7 + 6)], 9, -1069501632);
_local5 = md5_gg(_local5, _local6, _local3, _local4, _arg1[(_local7 + 11)], 14, 643717713);
_local4 = md5_gg(_local4, _local5, _local6, _local3, _arg1[(_local7 + 0)], 20, -373897302);
_local3 = md5_gg(_local3, _local4, _local5, _local6, _arg1[(_local7 + 5)], 5, -701558691);
_local6 = md5_gg(_local6, _local3, _local4, _local5, _arg1[(_local7 + 10)], 9, 38016083);
_local5 = md5_gg(_local5, _local6, _local3, _local4, _arg1[(_local7 + 15)], 14, -660478335);
_local4 = md5_gg(_local4, _local5, _local6, _local3, _arg1[(_local7 + 4)], 20, -405537848);
_local3 = md5_gg(_local3, _local4, _local5, _local6, _arg1[(_local7 + 9)], 5, 568446438);
_local6 = md5_gg(_local6, _local3, _local4, _local5, _arg1[(_local7 + 14)], 9, -1019803690);
_local5 = md5_gg(_local5, _local6, _local3, _local4, _arg1[(_local7 + 3)], 14, -187363961);
_local4 = md5_gg(_local4, _local5, _local6, _local3, _arg1[(_local7 + 8)], 20, 1163531501);
_local3 = md5_gg(_local3, _local4, _local5, _local6, _arg1[(_local7 + 13)], 5, -1444681467);
_local6 = md5_gg(_local6, _local3, _local4, _local5, _arg1[(_local7 + 2)], 9, -51403784);
_local5 = md5_gg(_local5, _local6, _local3, _local4, _arg1[(_local7 + 7)], 14, 1735328473);
_local4 = md5_gg(_local4, _local5, _local6, _local3, _arg1[(_local7 + 12)], 20, -1926607734);
_local3 = md5_hh(_local3, _local4, _local5, _local6, _arg1[(_local7 + 5)], 4, -378558);
_local6 = md5_hh(_local6, _local3, _local4, _local5, _arg1[(_local7 + 8)], 11, -2022574463);
_local5 = md5_hh(_local5, _local6, _local3, _local4, _arg1[(_local7 + 11)], 16, 1839030562);
_local4 = md5_hh(_local4, _local5, _local6, _local3, _arg1[(_local7 + 14)], 23, -35309556);
_local3 = md5_hh(_local3, _local4, _local5, _local6, _arg1[(_local7 + 1)], 4, -1530992060);
_local6 = md5_hh(_local6, _local3, _local4, _local5, _arg1[(_local7 + 4)], 11, 1272893353);
_local5 = md5_hh(_local5, _local6, _local3, _local4, _arg1[(_local7 + 7)], 16, -155497632);
_local4 = md5_hh(_local4, _local5, _local6, _local3, _arg1[(_local7 + 10)], 23, -1094730640);
_local3 = md5_hh(_local3, _local4, _local5, _local6, _arg1[(_local7 + 13)], 4, 681279174);
_local6 = md5_hh(_local6, _local3, _local4, _local5, _arg1[(_local7 + 0)], 11, -358537222);
_local5 = md5_hh(_local5, _local6, _local3, _local4, _arg1[(_local7 + 3)], 16, -722521979);
_local4 = md5_hh(_local4, _local5, _local6, _local3, _arg1[(_local7 + 6)], 23, 76029189);
_local3 = md5_hh(_local3, _local4, _local5, _local6, _arg1[(_local7 + 9)], 4, -640364487);
_local6 = md5_hh(_local6, _local3, _local4, _local5, _arg1[(_local7 + 12)], 11, -421815835);
_local5 = md5_hh(_local5, _local6, _local3, _local4, _arg1[(_local7 + 15)], 16, 530742520);
_local4 = md5_hh(_local4, _local5, _local6, _local3, _arg1[(_local7 + 2)], 23, -995338651);
_local3 = md5_ii(_local3, _local4, _local5, _local6, _arg1[(_local7 + 0)], 6, -198630844);
_local6 = md5_ii(_local6, _local3, _local4, _local5, _arg1[(_local7 + 7)], 10, 1126891415);
_local5 = md5_ii(_local5, _local6, _local3, _local4, _arg1[(_local7 + 14)], 15, -1416354905);
_local4 = md5_ii(_local4, _local5, _local6, _local3, _arg1[(_local7 + 5)], 21, -57434055);
_local3 = md5_ii(_local3, _local4, _local5, _local6, _arg1[(_local7 + 12)], 6, 1700485571);
_local6 = md5_ii(_local6, _local3, _local4, _local5, _arg1[(_local7 + 3)], 10, -1894986606);
_local5 = md5_ii(_local5, _local6, _local3, _local4, _arg1[(_local7 + 10)], 15, -1051523);
_local4 = md5_ii(_local4, _local5, _local6, _local3, _arg1[(_local7 + 1)], 21, -2054922799);
_local3 = md5_ii(_local3, _local4, _local5, _local6, _arg1[(_local7 + 8)], 6, 1873313359);
_local6 = md5_ii(_local6, _local3, _local4, _local5, _arg1[(_local7 + 15)], 10, -30611744);
_local5 = md5_ii(_local5, _local6, _local3, _local4, _arg1[(_local7 + 6)], 15, -1560198380);
_local4 = md5_ii(_local4, _local5, _local6, _local3, _arg1[(_local7 + 13)], 21, 1309151649);
_local3 = md5_ii(_local3, _local4, _local5, _local6, _arg1[(_local7 + 4)], 6, -145523070);
_local6 = md5_ii(_local6, _local3, _local4, _local5, _arg1[(_local7 + 11)], 10, -1120210379);
_local5 = md5_ii(_local5, _local6, _local3, _local4, _arg1[(_local7 + 2)], 15, 718787259);
_local4 = md5_ii(_local4, _local5, _local6, _local3, _arg1[(_local7 + 9)], 21, -343485551);
_local3 = _-Mp(_local3, _local8);
_local4 = _-Mp(_local4, _local9);
_local5 = _-Mp(_local5, _local10);
_local6 = _-Mp(_local6, _local11);
_local7 = (_local7 + 16);
};
return (new Array(_local3, _local4, _local5, _local6));
}
private static function md5_cmn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number):Number{
return (_-Mp(_-1P(_-Mp(_-Mp(_arg2, _arg1), _-Mp(_arg4, _arg6)), _arg5), _arg3));
}
private static function md5_ff(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number):Number{
return (md5_cmn(((_arg2 & _arg3) | (~(_arg2) & _arg4)), _arg1, _arg2, _arg5, _arg6, _arg7));
}
private static function md5_gg(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number):Number{
return (md5_cmn(((_arg2 & _arg4) | (_arg3 & ~(_arg4))), _arg1, _arg2, _arg5, _arg6, _arg7));
}
private static function md5_hh(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number):Number{
return (md5_cmn(((_arg2 ^ _arg3) ^ _arg4), _arg1, _arg2, _arg5, _arg6, _arg7));
}
private static function md5_ii(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number):Number{
return (md5_cmn((_arg3 ^ (_arg2 | ~(_arg4))), _arg1, _arg2, _arg5, _arg6, _arg7));
}
private static function _-1P(_arg1:Number, _arg2:Number):Number{
return (((_arg1 << _arg2) | (_arg1 >>> (32 - _arg2))));
}
private static function _-Mp(_arg1:Number, _arg2:Number):Number{
var _local3:Number = ((_arg1 & 0xFFFF) + (_arg2 & 0xFFFF));
var _local4:Number = (((_arg1 >> 16) + (_arg2 >> 16)) + (_local3 >> 16));
return (((_local4 << 16) | (_local3 & 0xFFFF)));
}
private static function str2binl(_arg1:String):Array{
var _local2:Array = new Array();
var _local3:Number = ((1 << 8) - 1);
var _local4:Number = 0;
while (_local4 < (_arg1.length * 8)) {
_local2[(_local4 >> 5)] = (_local2[(_local4 >> 5)] | ((_arg1.charCodeAt((_local4 / 8)) & _local3) << (_local4 % 32)));
_local4 = (_local4 + 8);
};
return (_local2);
}
private static function binl2hex(_arg1:Array):String{
var _local2:String = new String("");
var _local3:String = new String("0123456789abcdef");
var _local4:Number = 0;
while (_local4 < (_arg1.length * 4)) {
_local2 = (_local2 + (_local3.charAt(((_arg1[(_local4 >> 2)] >> (((_local4 % 4) * 8) + 4)) & 15)) + _local3.charAt(((_arg1[(_local4 >> 2)] >> ((_local4 % 4) * 8)) & 15))));
_local4++;
};
return (_local2);
}
}
}//package _-Cb
Section 6
//_-41 (_-M9._-41)
package _-M9 {
import flash.display.*;
import flash.text.*;
public dynamic class _-41 extends MovieClip {
public var scoreInfoText:TextField;
public var submitButton:SubmitScoreButton;
public var submitToFacebookButton:SubmitToFacebookButton;
public var scoreText:TextField;
public var shareButton:ShareScoreButton;
public var _-F;
public function _-41(){
addFrameScript(0, this.frame1, 1, this.frame2, 2, this.frame3, 3, this.frame4, 5, this.frame6);
}
function frame1(){
this._-F = 0;
stop();
}
function frame2(){
stop();
}
function frame3(){
stop();
}
function frame4(){
stop();
}
function frame6(){
stop();
}
}
}//package _-M9
Section 7
//_-46 (_-M9._-46)
package _-M9 {
import flash.display.*;
import flash.text.*;
public dynamic class _-46 extends MovieClip {
public var scoreInfoText:TextField;
public var scoreText:TextField;
}
}//package _-M9
Section 8
//_-CC (_-M9._-CC)
package _-M9 {
import flash.display.*;
public dynamic class _-CC extends MovieClip {
public var obyoAddress:SimpleButton;
public var overlay:MovieClip;
public var obyoLogo:SimpleButton;
}
}//package _-M9
Section 9
//_-GB (_-M9._-GB)
package _-M9 {
import flash.display.*;
public dynamic class _-GB extends MovieClip {
public var backToMenuButton:BackToMenuButton;
public var moreGamesButton:MoreGamesButton;
public var playAgainButton:ReplayButton;
}
}//package _-M9
Section 10
//_-Jv (_-M9._-Jv)
package _-M9 {
import flash.display.*;
import flash.text.*;
public dynamic class _-Jv extends MovieClip {
public var scoreInfoText:TextField;
public var okButton:SimpleButton;
public var scoreText:TextField;
public var skipButton:SimpleButton;
public var _-F;
public function _-Jv(){
addFrameScript(0, this.frame1);
}
function frame1(){
this._-F = 0;
stop();
}
}
}//package _-M9
Section 11
//_-Ro (_-M9._-Ro)
package _-M9 {
import flash.display.*;
public dynamic class _-Ro extends MovieClip {
public var homeButton:SimpleButton;
public var intro:MovieClip;
public var preloaderBar:MovieClip;
}
}//package _-M9
Section 12
//BackToMenuButton (_-M9.BackToMenuButton)
package _-M9 {
import flash.display.*;
public dynamic class BackToMenuButton extends MovieClip {
}
}//package _-M9
Section 13
//MoreGamesButton (_-M9.MoreGamesButton)
package _-M9 {
import flash.display.*;
public dynamic class MoreGamesButton extends MovieClip {
}
}//package _-M9
Section 14
//ReplayButton (_-M9.ReplayButton)
package _-M9 {
import flash.display.*;
public dynamic class ReplayButton extends MovieClip {
}
}//package _-M9
Section 15
//ShareScoreButton (_-M9.ShareScoreButton)
package _-M9 {
import flash.display.*;
public dynamic class ShareScoreButton extends MovieClip {
}
}//package _-M9
Section 16
//SubmitScoreButton (_-M9.SubmitScoreButton)
package _-M9 {
import flash.display.*;
public dynamic class SubmitScoreButton extends MovieClip {
}
}//package _-M9
Section 17
//SubmitToFacebookButton (_-M9.SubmitToFacebookButton)
package _-M9 {
import flash.display.*;
public dynamic class SubmitToFacebookButton extends MovieClip {
}
}//package _-M9
Section 18
//_-4a (_-PA._-4a)
package _-PA {
public class _-4a {
public static const _-R-:String = "2.0.0";
public static const _-5N:String = "http://www.obyo.com";
public static const _-6x:String = "http://www.obyo.com";
public static const _-2k:String = "http://apps.facebook.com/obyogames/";
public static const _-QL:String = "20";
public static const _-8I:String = "11";
public static const _-Fw:String = "12";
public static const _-F0:String = "13";
public static const _-6Q:Number = 0.7;
public static const _-J0:String = "gosFlashEvent";
}
}//package _-PA
Section 19
//_-4T (_-PA._-4T)
package _-PA {
import gos.serviceAPI.*;
import gos.obyoAPI.serviceAPIImpl.services.*;
public class _-4T extends _-Nf {
override public function init(_arg1:String, _arg2:String, _arg3:Object=null):void{
if (_arg3 == null){
_arg3 = {};
};
_arg3.language = Languages._-DJ;
_arg3.libraryLoader = new _-2p(ObyoServiceClasses._-2o);
var _local4:ObyoServiceFactory = new ObyoServiceFactory();
super.init(_arg1, _arg2, _arg3);
}
public function get scoreService():_-3l{
return (_-3l(_-Dl.getObject(ObyoServiceClasses._-l)));
}
}
}//package _-PA
Section 20
//_-BP (_-PA._-BP)
package _-PA {
import gos.common.*;
public class _-BP {
public static function _-0a(_arg1=null, _arg2:Boolean=true):String{
return (_-F6._-8o("http://www.obyo.com/", _arg1, _arg2));
}
public static function _-SF(_arg1:String, _arg2=null, _arg3:Boolean=true):String{
return (_-F6._-8o(("http://www.obyo.com/game/" + _arg1), _arg2, _arg3));
}
public static function facebookLink(_arg1=null, _arg2:Boolean=true):String{
return (_-F6._-8o("http://apps.facebook.com/obyogames/", _arg1, _arg2));
}
public static function facebookGameLink(_arg1:String, _arg2=null, _arg3:Boolean=true):String{
return (_-F6._-8o(("http://apps.facebook.com/obyogames/game/" + _arg1), _arg2, _arg3));
}
}
}//package _-PA
Section 21
//_-Mz (_-PA._-Mz)
package _-PA {
public class _-Mz {
public static const _-6p:String = "obyo";
public static const _-0Q:String = "facebook";
public static const _-Jr:String = "others";
public static const _-Ic:String = "local";
}
}//package _-PA
Section 22
//_-Ne (_-PA._-Ne)
package _-PA {
import flash.display.*;
import gos.serviceAPI.*;
import gos.common.*;
public class _-Ne {
public static function _-9u(_arg1:DisplayObjectContainer):String{
var _local2:String = _-7U(_arg1);
if (_local2 == _-Mz._-0Q){
return (_-GG._-0Q);
};
if (_local2 == _-Mz._-6p){
return (_-GG._-9K);
};
return (_-GG._-8h);
}
public static function _-7U(_arg1:DisplayObjectContainer):String{
var _local4:Object;
var _local2:LoaderInfo = LoaderInfo(_arg1.root.loaderInfo);
var _local3:String = _local2.url;
if (_-F6._-2b(_local3, "obyo.com")){
_local4 = _local2.parameters;
if (!_-LE.isEmpty(_local4["fbu"])){
return (_-Mz._-0Q);
};
return (_-Mz._-6p);
};
return (_-Mz._-Jr);
}
public static function _-MX(_arg1:String):String{
var _local2:String = _-Ac.md5((("xx" + _arg1) + new Date().getTime()));
var _local3:int = (Math.random() * 16);
var _local4:String = (("" + _local2.substr(_local3, 14)) + (int((Math.random() * 80)) + 10));
return (_local4);
}
}
}//package _-PA
Section 23
//ObyoServiceClasses (_-PA.ObyoServiceClasses)
package _-PA {
public class ObyoServiceClasses {
public static const _-2o:String = "gos.obyoAPI.serviceAPIImpl.services.ObyoServiceFactory";
public static const _-l:String = "gos.obyoAPI.serviceAPIImpl.services.ObyoScoreService";
}
}//package _-PA
Section 24
//_-08 (com.adobe.serialization.json._-08)
package com.adobe.serialization.json {
public class _-08 {
public static function encode(_arg1:Object):String{
var _local2:_-B1 = new _-B1(_arg1);
return (_local2._-Ph());
}
public static function decode(_arg1:String){
var _local2:_-6B = new _-6B(_arg1);
return (_local2.getValue());
}
}
}//package com.adobe.serialization.json
Section 25
//_-6B (com.adobe.serialization.json._-6B)
package com.adobe.serialization.json {
public class _-6B {
private var value;
private var tokenizer:_-BY;
private var token:JSONToken;
public function _-6B(_arg1:String){
tokenizer = new _-BY(_arg1);
nextToken();
value = _-RK();
}
public function getValue(){
return (value);
}
private function nextToken():JSONToken{
return ((token = tokenizer.getNextToken()));
}
private function _-G5():Array{
var _local1:Array = new Array();
nextToken();
if (token.type == _-w._-Jd){
return (_local1);
};
while (true) {
_local1.push(_-RK());
nextToken();
if (token.type == _-w._-Jd){
return (_local1);
};
if (token.type == _-w._-Fp){
nextToken();
} else {
tokenizer._-LV(("Expecting ] or , but found " + token.value));
};
};
return (null);
}
private function parseObject():Object{
var _local2:String;
var _local1:Object = new Object();
nextToken();
if (token.type == _-w._-LP){
return (_local1);
};
while (true) {
if (token.type == _-w._-8e){
_local2 = String(token.value);
nextToken();
if (token.type == _-w._-6c){
nextToken();
_local1[_local2] = _-RK();
nextToken();
if (token.type == _-w._-LP){
return (_local1);
};
if (token.type == _-w._-Fp){
nextToken();
} else {
tokenizer._-LV(("Expecting } or , but found " + token.value));
};
} else {
tokenizer._-LV(("Expecting : but found " + token.value));
};
} else {
tokenizer._-LV(("Expecting string but found " + token.value));
};
};
return (null);
}
private function _-RK():Object{
if (token == null){
tokenizer._-LV("Unexpected end of input");
};
switch (token.type){
case _-w._-6d:
return (parseObject());
case _-w._-4B:
return (_-G5());
case _-w._-8e:
case _-w._-2i:
case _-w._-S2:
case _-w._-DH:
case _-w._-1z:
return (token.value);
default:
tokenizer._-LV(("Unexpected " + token.value));
};
return (null);
}
}
}//package com.adobe.serialization.json
Section 26
//_-B1 (com.adobe.serialization.json._-B1)
package com.adobe.serialization.json {
import flash.utils.*;
public class _-B1 {
private var jsonString:String;
public function _-B1(_arg1){
jsonString = _-ID(_arg1);
}
public function _-Ph():String{
return (jsonString);
}
private function _-ID(_arg1):String{
if ((_arg1 is String)){
return (escapeString((_arg1 as String)));
};
if ((_arg1 is Number)){
return ((isFinite((_arg1 as Number))) ? _arg1.toString() : "null");
} else {
if ((_arg1 is Boolean)){
return ((_arg1) ? "true" : "false");
} else {
if ((_arg1 is Array)){
return (_-LH((_arg1 as Array)));
};
if ((((_arg1 is Object)) && (!((_arg1 == null))))){
return (objectToString(_arg1));
};
};
};
return ("null");
}
private function escapeString(_arg1:String):String{
var _local3:String;
var _local6:String;
var _local7:String;
var _local2 = "";
var _local4:Number = _arg1.length;
var _local5:int;
while (_local5 < _local4) {
_local3 = _arg1.charAt(_local5);
switch (_local3){
case "\"":
_local2 = (_local2 + "\\\"");
break;
case "\\":
_local2 = (_local2 + "\\\\");
break;
case "\b":
_local2 = (_local2 + "\\b");
break;
case "\f":
_local2 = (_local2 + "\\f");
break;
case "\n":
_local2 = (_local2 + "\\n");
break;
case "\r":
_local2 = (_local2 + "\\r");
break;
case "\t":
_local2 = (_local2 + "\\t");
break;
default:
if (_local3 < " "){
_local6 = _local3.charCodeAt(0).toString(16);
_local7 = ((_local6.length == 2)) ? "00" : "000";
_local2 = (_local2 + (("\\u" + _local7) + _local6));
} else {
_local2 = (_local2 + _local3);
};
};
_local5++;
};
return ((("\"" + _local2) + "\""));
}
private function _-LH(_arg1:Array):String{
var _local2 = "";
var _local3:int;
while (_local3 < _arg1.length) {
if (_local2.length > 0){
_local2 = (_local2 + ",");
};
_local2 = (_local2 + _-ID(_arg1[_local3]));
_local3++;
};
return ((("[" + _local2) + "]"));
}
private function objectToString(_arg1:Object):String{
var value:Object;
var key:String;
var v:XML;
var o = _arg1;
var s = "";
var classInfo:XML = describeType(o);
if (classInfo.@name.toString() == "Object"){
for (key in o) {
value = o[key];
if ((value is Function)){
} else {
if (s.length > 0){
s = (s + ",");
};
s = (s + ((escapeString(key) + ":") + _-ID(value)));
};
};
} else {
for each (v in classInfo..*.(((name() == "variable")) || ((name() == "accessor")))) {
if (s.length > 0){
s = (s + ",");
};
s = (s + ((escapeString(v.@name.toString()) + ":") + _-ID(o[v.@name])));
};
};
return ((("{" + s) + "}"));
}
}
}//package com.adobe.serialization.json
Section 27
//_-BY (com.adobe.serialization.json._-BY)
package com.adobe.serialization.json {
public class _-BY {
private var obj:Object;
private var jsonString:String;
private var _-Gy:int;
private var ch:String;
public function _-BY(_arg1:String){
jsonString = _arg1;
_-Gy = 0;
_-21();
}
public function getNextToken():JSONToken{
var _local2:String;
var _local3:String;
var _local4:String;
var _local1:JSONToken = new JSONToken();
_-HN();
switch (ch){
case "{":
_local1.type = _-w._-6d;
_local1.value = "{";
_-21();
break;
case "}":
_local1.type = _-w._-LP;
_local1.value = "}";
_-21();
break;
case "[":
_local1.type = _-w._-4B;
_local1.value = "[";
_-21();
break;
case "]":
_local1.type = _-w._-Jd;
_local1.value = "]";
_-21();
break;
case ",":
_local1.type = _-w._-Fp;
_local1.value = ",";
_-21();
break;
case ":":
_local1.type = _-w._-6c;
_local1.value = ":";
_-21();
break;
case "t":
_local2 = ((("t" + _-21()) + _-21()) + _-21());
if (_local2 == "true"){
_local1.type = _-w._-S2;
_local1.value = true;
_-21();
} else {
_-LV(("Expecting 'true' but found " + _local2));
};
break;
case "f":
_local3 = (((("f" + _-21()) + _-21()) + _-21()) + _-21());
if (_local3 == "false"){
_local1.type = _-w._-DH;
_local1.value = false;
_-21();
} else {
_-LV(("Expecting 'false' but found " + _local3));
};
break;
case "n":
_local4 = ((("n" + _-21()) + _-21()) + _-21());
if (_local4 == "null"){
_local1.type = _-w._-1z;
_local1.value = null;
_-21();
} else {
_-LV(("Expecting 'null' but found " + _local4));
};
break;
case "\"":
_local1 = _-5S();
break;
default:
if (((isDigit(ch)) || ((ch == "-")))){
_local1 = _-7s();
} else {
if (ch == ""){
return (null);
};
_-LV((("Unexpected " + ch) + " encountered"));
};
};
return (_local1);
}
private function _-5S():JSONToken{
var _local3:String;
var _local4:int;
var _local1:JSONToken = new JSONToken();
_local1.type = _-w._-8e;
var _local2 = "";
_-21();
while (((!((ch == "\""))) && (!((ch == ""))))) {
if (ch == "\\"){
_-21();
switch (ch){
case "\"":
_local2 = (_local2 + "\"");
break;
case "/":
_local2 = (_local2 + "/");
break;
case "\\":
_local2 = (_local2 + "\\");
break;
case "b":
_local2 = (_local2 + "\b");
break;
case "f":
_local2 = (_local2 + "\f");
break;
case "n":
_local2 = (_local2 + "\n");
break;
case "r":
_local2 = (_local2 + "\r");
break;
case "t":
_local2 = (_local2 + "\t");
break;
case "u":
_local3 = "";
_local4 = 0;
while (_local4 < 4) {
if (!isHexDigit(_-21())){
_-LV((" Excepted a hex digit, but found: " + ch));
};
_local3 = (_local3 + ch);
_local4++;
};
_local2 = (_local2 + String.fromCharCode(parseInt(_local3, 16)));
break;
default:
_local2 = (_local2 + ("\\" + ch));
};
} else {
_local2 = (_local2 + ch);
};
_-21();
};
if (ch == ""){
_-LV("Unterminated string literal");
};
_-21();
_local1.value = _local2;
return (_local1);
}
private function _-7s():JSONToken{
var _local1:JSONToken = new JSONToken();
_local1.type = _-w._-2i;
var _local2 = "";
if (ch == "-"){
_local2 = (_local2 + "-");
_-21();
};
if (!isDigit(ch)){
_-LV("Expecting a digit");
};
if (ch == "0"){
_local2 = (_local2 + ch);
_-21();
if (isDigit(ch)){
_-LV("A digit cannot immediately follow 0");
};
} else {
while (isDigit(ch)) {
_local2 = (_local2 + ch);
_-21();
};
};
if (ch == "."){
_local2 = (_local2 + ".");
_-21();
if (!isDigit(ch)){
_-LV("Expecting a digit");
};
while (isDigit(ch)) {
_local2 = (_local2 + ch);
_-21();
};
};
if ((((ch == "e")) || ((ch == "E")))){
_local2 = (_local2 + "e");
_-21();
if ((((ch == "+")) || ((ch == "-")))){
_local2 = (_local2 + ch);
_-21();
};
if (!isDigit(ch)){
_-LV("Scientific notation number needs exponent value");
};
while (isDigit(ch)) {
_local2 = (_local2 + ch);
_-21();
};
};
var _local3:Number = Number(_local2);
if (((isFinite(_local3)) && (!(isNaN(_local3))))){
_local1.value = _local3;
return (_local1);
};
_-LV((("Number " + _local3) + " is not valid!"));
return (null);
}
private function _-21():String{
return ((ch = jsonString.charAt(_-Gy++)));
}
private function _-HN():void{
_-Ll();
_-RE();
_-Ll();
}
private function _-RE():void{
if (ch == "/"){
_-21();
switch (ch){
case "/":
do {
_-21();
} while (((!((ch == "\n"))) && (!((ch == "")))));
_-21();
break;
case "*":
_-21();
while (true) {
if (ch == "*"){
_-21();
if (ch == "/"){
_-21();
break;
};
} else {
_-21();
};
if (ch == ""){
_-LV("Multi-line comment not closed");
};
};
break;
default:
_-LV((("Unexpected " + ch) + " encountered (expecting '/' or '*' )"));
};
};
}
private function _-Ll():void{
while (isWhiteSpace(ch)) {
_-21();
};
}
private function isWhiteSpace(_arg1:String):Boolean{
return ((((((((_arg1 == " ")) || ((_arg1 == "\t")))) || ((_arg1 == "\n")))) || ((_arg1 == "\r"))));
}
private function isDigit(_arg1:String):Boolean{
return ((((_arg1 >= "0")) && ((_arg1 <= "9"))));
}
private function isHexDigit(_arg1:String):Boolean{
var _local2:String = _arg1.toUpperCase();
return (((isDigit(_arg1)) || ((((_local2 >= "A")) && ((_local2 <= "F"))))));
}
public function _-LV(_arg1:String):void{
throw (new JSONParseError(_arg1, _-Gy, jsonString));
}
}
}//package com.adobe.serialization.json
Section 28
//_-w (com.adobe.serialization.json._-w)
package com.adobe.serialization.json {
public class _-w {
public static const _-Lu:int = -1;
public static const _-Fp:int = 0;
public static const _-6d:int = 1;
public static const _-LP:int = 2;
public static const _-4B:int = 3;
public static const _-Jd:int = 4;
public static const _-6c:int = 6;
public static const _-S2:int = 7;
public static const _-DH:int = 8;
public static const _-1z:int = 9;
public static const _-8e:int = 10;
public static const _-2i:int = 11;
}
}//package com.adobe.serialization.json
Section 29
//JSONParseError (com.adobe.serialization.json.JSONParseError)
package com.adobe.serialization.json {
public class JSONParseError extends Error {
private var _location:int;
private var _text:String;
public function JSONParseError(_arg1:String="", _arg2:int=0, _arg3:String=""){
super(_arg1);
_location = _arg2;
_text = _arg3;
}
public function get location():int{
return (_location);
}
public function get text():String{
return (_text);
}
}
}//package com.adobe.serialization.json
Section 30
//JSONToken (com.adobe.serialization.json.JSONToken)
package com.adobe.serialization.json {
public class JSONToken {
private var _type:int;
private var _-8u:Object;
public function JSONToken(_arg1:int=-1, _arg2:Object=null){
_type = _arg1;
_-8u = _arg2;
}
public function get type():int{
return (_type);
}
public function set type(_arg1:int):void{
_type = _arg1;
}
public function get value():Object{
return (_-8u);
}
public function set value(_arg1:Object):void{
_-8u = _arg1;
}
}
}//package com.adobe.serialization.json
Section 31
//_-OG (com.novelgames.flashgames.bouncing._-OG)
package com.novelgames.flashgames.bouncing {
import flash.display.*;
public dynamic class _-OG extends MovieClip {
}
}//package com.novelgames.flashgames.bouncing
Section 32
//_-1g (com.novelgames.flashgames.common._-1g)
package com.novelgames.flashgames.common {
import flash.events.*;
import flash.utils.*;
public class _-1g {
private var parent:_-1g;
private var __speed:Number;
private var _-AQ:Number;
private var _-3M:Number;
private var _-PR:Number;
private var children:Array;
private var timers:Array;
private static var _-Jg:_-1g = new (_-1g);
;
public function _-1g(){
parent = null;
__speed = 1;
_-AQ = 1;
_-3M = getTimer();
_-PR = _-3M;
children = new Array();
timers = new Array();
}
public function _-98():_-1g{
var _local1:_-1g = new _-1g();
_local1.parent = this;
_local1._-3M = getTime();
_local1.updateRealSpeed();
children.push(_local1);
return (_local1);
}
public function _-2E(_arg1:Number, _arg2:int=0):_-CQ{
return (new _-CQ(_arg1, _arg2, this));
}
public function _-8r(_arg1:_-CQ):void{
timers.push(_arg1);
}
public function getTime():Number{
return ((_-3M + (_-CP * (getTimer() - _-PR))));
}
public function pause():void{
speed = 0;
}
public function unpause():void{
speed = 1;
}
public function set speed(_arg1:Number):void{
if (_arg1 < 0){
_arg1 = 0;
};
__speed = _arg1;
updateRealSpeed();
}
public function get speed():Number{
return (__speed);
}
public function get _-CP():Number{
return (_-AQ);
}
public function updateRealSpeed():void{
var _local1:int;
if (_-AQ == (_-Ns() * speed)){
return;
};
_-3M = getTime();
_-PR = getTimer();
_-AQ = (_-Ns() * speed);
_local1 = 0;
while (_local1 < timers.length) {
timers[_local1].speedUpdated();
_local1++;
};
_local1 = 0;
while (_local1 < children.length) {
children[_local1].updateRealSpeed();
_local1++;
};
}
private function _-Ns():Number{
if (parent){
return (parent.speed);
};
return (1);
}
public static function get _-DR():_-1g{
return (_-Jg);
}
}
}//package com.novelgames.flashgames.common
Section 33
//_-6P (com.novelgames.flashgames.common._-6P)
package com.novelgames.flashgames.common {
import flash.media.*;
import flash.net.*;
public class _-6P extends Sound {
public static var volume:Number = _-HS();
private static var allSoundChannels:Array = new Array();
override public function play(_arg1:Number=0, _arg2:int=0, _arg3:SoundTransform=null):SoundChannel{
var _local4:SoundChannel = super.play(_arg1, _arg2, new SoundTransform(volume));
allSoundChannels.push(_local4);
return (_local4);
}
private static function _-HS():Number{
var _local1:SharedObject = SharedObject.getLocal("gameOptions", "/");
_local1.objectEncoding = ObjectEncoding.AMF0;
if (isNaN(_local1.data.soundVolume)){
_local1.data.soundVolume = 1;
};
return (_local1.data.soundVolume);
}
public static function saveVolume():void{
var _local1:SharedObject = SharedObject.getLocal("gameOptions", "/");
_local1.objectEncoding = ObjectEncoding.AMF0;
_local1.data.soundVolume = volume;
}
public static function _-Gz(_arg1:Number):void{
var _local2:int;
_-6P.volume = _arg1;
_local2 = 0;
while (_local2 < allSoundChannels.length) {
allSoundChannels[_local2].soundTransform = new SoundTransform(_arg1);
_local2++;
};
}
}
}//package com.novelgames.flashgames.common
Section 34
//_-90 (com.novelgames.flashgames.common._-90)
package com.novelgames.flashgames.common {
import flash.display.*;
import flash.events.*;
public class _-90 extends MovieClip {
public var okButton:SimpleButton;
public var sound:MovieClip;
public var fullScreen:MovieClip;
public var _-JO:MovieClip;
public var separator0:MovieClip;
public var separator1:MovieClip;
private var soundOnX:Number;
private var soundOnY:Number;
private var soundOffX:Number;
private var soundOffY:Number;
private var _-4r:Number;
private var _-2G:Number;
private var _-AV:Number;
private var _-Cc:Number;
private var soundSlider:MovieClip;
private var _-RH:MovieClip;
public function _-90(){
this.addEventListener(Event.ADDED_TO_STAGE, onAddedToStage);
}
private function onAddedToStage(_arg1:Event):void{
soundOnX = sound.onSlider.x;
soundOnY = sound.onSlider.y;
soundOffX = sound.offSlider.x;
soundOffY = sound.offSlider.y;
_-4r = _-JO.onSlider.x;
_-2G = _-JO.onSlider.y;
_-AV = _-JO.offSlider.x;
_-Cc = _-JO.offSlider.y;
sound.offSlider.visible = false;
soundSlider = sound.onSlider;
_-JO.offSlider.visible = false;
_-RH = _-JO.onSlider;
updateSoundSlider(_-6P.volume);
updateMusicSlider(_-Pv.volume);
soundSlider.addEventListener(MouseEvent.MOUSE_DOWN, onSoundSliderMouseDown);
soundSlider.buttonMode = true;
_-RH.addEventListener(MouseEvent.MOUSE_DOWN, onMusicSliderMouseDown);
_-RH.buttonMode = true;
okButton.addEventListener(MouseEvent.CLICK, okButtonClicked);
updateFullScreenButtons();
}
private function updateSoundSlider(_arg1:Number):void{
soundSlider.x = ((soundOnX * _arg1) + (soundOffX * (1 - _arg1)));
soundSlider.y = ((soundOnY * _arg1) + (soundOffY * (1 - _arg1)));
}
private function updateMusicSlider(_arg1:Number):void{
_-RH.x = ((_-4r * _arg1) + (_-AV * (1 - _arg1)));
_-RH.y = ((_-2G * _arg1) + (_-Cc * (1 - _arg1)));
}
private function onSoundSliderMouseDown(_arg1:MouseEvent):void{
soundSlider.removeEventListener(MouseEvent.MOUSE_DOWN, onSoundSliderMouseDown);
this.addEventListener(MouseEvent.MOUSE_MOVE, onSoundSliderMouseMove);
this.addEventListener(MouseEvent.MOUSE_UP, onSoundSliderMouseUp);
}
private function onSoundSliderMouseMove(_arg1:MouseEvent):void{
var _local2:Number;
_arg1.updateAfterEvent();
_local2 = ((sound.mouseX - soundOffX) / (soundOnX - soundOffX));
if (_local2 < 0){
_local2 = 0;
};
if (_local2 > 1){
_local2 = 1;
};
updateSoundSlider(_local2);
_-6P._-Gz(_local2);
}
private function onSoundSliderMouseUp(_arg1:MouseEvent):void{
this.removeEventListener(MouseEvent.MOUSE_MOVE, onSoundSliderMouseMove);
this.removeEventListener(MouseEvent.MOUSE_UP, onSoundSliderMouseUp);
soundSlider.addEventListener(MouseEvent.MOUSE_DOWN, onSoundSliderMouseDown);
}
private function onMusicSliderMouseDown(_arg1:MouseEvent):void{
_-RH.removeEventListener(MouseEvent.MOUSE_DOWN, onMusicSliderMouseDown);
this.addEventListener(MouseEvent.MOUSE_MOVE, onMusicSliderMouseMove);
this.addEventListener(MouseEvent.MOUSE_UP, onMusicSliderMouseUp);
}
private function onMusicSliderMouseMove(_arg1:MouseEvent):void{
var _local2:Number;
_arg1.updateAfterEvent();
_local2 = ((_-JO.mouseX - _-AV) / (soundOnX - _-AV));
if (_local2 < 0){
_local2 = 0;
};
if (_local2 > 1){
_local2 = 1;
};
updateMusicSlider(_local2);
_-Pv._-Gz(_local2);
}
private function onMusicSliderMouseUp(_arg1:MouseEvent):void{
this.removeEventListener(MouseEvent.MOUSE_MOVE, onMusicSliderMouseMove);
this.removeEventListener(MouseEvent.MOUSE_UP, onMusicSliderMouseUp);
_-RH.addEventListener(MouseEvent.MOUSE_DOWN, onMusicSliderMouseDown);
}
private function okButtonClicked(_arg1:MouseEvent):void{
_-6P.saveVolume();
_-Pv.saveVolume();
Object(parent).hideOptions();
}
private function updateFullScreenButtons():void{
if (stage.displayState == StageDisplayState.FULL_SCREEN){
fullScreen.onButton.gotoAndStop("on");
fullScreen.onButton.removeEventListener(MouseEvent.CLICK, onFullScreenOnClicked);
fullScreen.onButton.buttonMode = false;
fullScreen.offButton.gotoAndStop("off");
fullScreen.offButton.addEventListener(MouseEvent.CLICK, onFullScreenOffClicked);
fullScreen.offButton.buttonMode = true;
} else {
fullScreen.onButton.gotoAndStop("off");
fullScreen.onButton.addEventListener(MouseEvent.CLICK, onFullScreenOnClicked);
fullScreen.onButton.buttonMode = true;
fullScreen.offButton.gotoAndStop("on");
fullScreen.offButton.removeEventListener(MouseEvent.CLICK, onFullScreenOffClicked);
fullScreen.offButton.buttonMode = false;
};
}
private function onFullScreenOnClicked(_arg1:MouseEvent):void{
stage.displayState = StageDisplayState.FULL_SCREEN;
updateFullScreenButtons();
}
private function onFullScreenOffClicked(_arg1:MouseEvent):void{
stage.displayState = StageDisplayState.NORMAL;
updateFullScreenButtons();
}
}
}//package com.novelgames.flashgames.common
Section 35
//_-BJ (com.novelgames.flashgames.common._-BJ)
package com.novelgames.flashgames.common {
public dynamic class _-BJ extends _-Pv {
}
}//package com.novelgames.flashgames.common
Section 36
//_-CQ (com.novelgames.flashgames.common._-CQ)
package com.novelgames.flashgames.common {
import flash.events.*;
import flash.utils.*;
public class _-CQ extends Timer {
private var _-2c:Number;
private var _-Mg:Function;
private var timerFactory:_-1g;
private var isRunning:Boolean;
private var _-0y:Number;
private var currentDelay:Number;
public function _-CQ(_arg1:Number, _arg2:int=0, _arg3:_-1g=null):void{
if (_arg3 == null){
_arg3 = _-1g._-DR;
};
super(((_arg3._-CP == 0)) ? 2147483647 : (_arg1 / _arg3._-CP), _arg2);
_-2c = _arg1;
currentDelay = _-2c;
_arg3._-8r(this);
this.timerFactory = _arg3;
isRunning = false;
}
override public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
this._-Mg = _arg2;
super.addEventListener(_arg1, timerEventListener, _arg3, _arg4, _arg5);
}
override public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
super.removeEventListener(_arg1, timerEventListener, _arg3);
if (_arg2 == this._-Mg){
this._-Mg = null;
};
}
override public function start():void{
_-0y = timerFactory.getTime();
if (timerFactory._-CP == 0){
return;
};
super.start();
isRunning = true;
}
override public function stop():void{
super.stop();
isRunning = false;
}
public function speedUpdated():void{
var _local1:Number;
if (_-Mg == null){
return;
};
if (!isRunning){
return;
};
super.stop();
_local1 = timerFactory.getTime();
currentDelay = (_-2c - (_local1 - _-0y));
if (currentDelay <= 0){
currentDelay = _-2c;
};
if (timerFactory._-CP == 0){
return;
};
delay = (currentDelay / timerFactory._-CP);
super.start();
}
private function timerEventListener(_arg1:TimerEvent):void{
if (_arg1.type != TimerEvent.TIMER){
return;
};
_-0y = timerFactory.getTime();
_-Mg(_arg1);
if (!isRunning){
return;
};
if (((!((repeatCount == 0))) && ((currentCount >= repeatCount)))){
isRunning = false;
return;
};
if (currentDelay != _-2c){
super.stop();
currentDelay = _-2c;
delay = (currentDelay / timerFactory._-CP);
super.start();
};
}
public static function getTimer():int{
return (_-1g._-DR.getTime());
}
public static function pause():void{
_-1g._-DR.pause();
}
public static function unpause():void{
_-1g._-DR.unpause();
}
}
}//package com.novelgames.flashgames.common
Section 37
//_-Ef (com.novelgames.flashgames.common._-Ef)
package com.novelgames.flashgames.common {
import flash.display.*;
import flash.events.*;
import flash.media.*;
import flash.geom.*;
import flash.net.*;
import flash.external.*;
public class _-Ef extends MovieClip {
private var title:_-FM;
protected var _-Gf:_-Gd;
protected var _-Ms:_-P1;
protected var messageClose:MessageClose;
protected var game:Game;
protected var _-QU:_-90;
protected var _-81:Sound;
protected var _-CW:SoundChannel;
protected var _-Ht:Sound;
protected var _-9o:SoundChannel;
public var buttonSoundOver:Sound;
public var buttonSoundClick:Sound;
private var titleX:Number;
private var titleY:Number;
private var titleIndex:int;
public function _-Ef(){
runConsole();
stop();
checkTitle();
}
public function runConsole():void{
}
public function gotoTitlePage():void{
removePage();
title = new _-FM();
title.x = titleX;
title.y = titleY;
this.addChildAt(title, titleIndex);
startIntroMusic();
}
public function gotoTitlePageAndClose():void{
game.destroyGame();
game.unpause();
this.removeChild(messageClose);
messageClose = null;
removePage();
title = new _-FM();
title.x = titleX;
title.y = titleY;
this.addChildAt(title, titleIndex);
startIntroMusic();
}
public function gotoInstructionsPage():void{
_-Gf = new _-Gd();
_-Gf.x = titleX;
_-Gf.y = titleY;
this.addChildAt(_-Gf, (titleIndex + 1));
}
public function _-5b():void{
removePage();
_-Ms = new _-P1();
_-Ms.x = titleX;
_-Ms.y = titleY;
this.addChildAt(_-Ms, titleIndex);
}
public function gotoGamePage():void{
Game._-CH = stage;
Game._-7R = this;
removePage();
_-81 = getMusicGame();
_-CW = _-81.play(0, int.MAX_VALUE);
game = getGame();
game.x = titleX;
game.y = titleY;
this.addChildAt(game, titleIndex);
}
public function showInstructionsFromGame():void{
game.pause();
_-Gf = new _-Gd(true);
_-Gf.x = titleX;
_-Gf.y = titleY;
this.addChildAt(_-Gf, (titleIndex + 1));
}
public function hideInstructionsFromGame():void{
this.removeChild(_-Gf);
_-Gf = null;
game.unpause();
}
public function showMessagePauseFromGame():void{
game.pause();
_-Ms = new _-P1(true);
_-Ms.x = game._-Eq.x;
_-Ms.y = game._-Eq.y;
this.addChildAt(_-Ms, (titleIndex + 1));
}
public function hideMessagePauseFromGame():void{
this.removeChild(_-Ms);
_-Ms = null;
game.visible = true;
game.unpause();
}
public function showMessageCloseFromGame():void{
game.pause();
messageClose = new MessageClose(true);
messageClose.x = game._-Eq.x;
messageClose.y = game._-Eq.y;
this.addChildAt(messageClose, (titleIndex + 1));
}
public function hideMessageCloseFromGame():void{
this.removeChild(messageClose);
messageClose = null;
game.visible = true;
game.unpause();
}
public function showOptions():void{
game.pause();
_-QU = new _-90();
_-QU.x = titleX;
_-QU.y = titleY;
this.addChildAt(_-QU, (titleIndex + 1));
}
public function hideOptions():void{
game.unpause();
this.removeChild(_-QU);
_-QU = null;
}
public function startGameMusic():void{
stopGameMusic();
_-81 = getMusicGame();
_-CW = _-81.play(0, int.MAX_VALUE);
}
public function stopGameMusic():void{
if (_-81){
_-CW.stop();
_-81 = null;
_-CW = null;
};
}
public function startIntroMusic():void{
stopIntroMusic();
_-Ht = _-7b();
_-9o = _-Ht.play(0, int.MAX_VALUE);
}
public function stopIntroMusic():void{
if (_-Ht){
_-9o.stop();
_-Ht = null;
_-9o = null;
};
}
public function showHighScores():void{
}
public function showEnterHighScore(_arg1:int):void{
}
public function gameEnded(_arg1:Object):void{
var _local3:String;
var _local2:Array = new Array();
for (_local3 in _arg1) {
_local2.push(((_local3 + ": ") + _arg1[_local3]));
};
showEnterHighScore(_arg1["score"]);
}
public function gotoMoreGamesURL(_arg1:String=""):void{
_-1k(_arg1);
}
public function _-1k(_arg1:String=""):void{
navigateToURL(new URLRequest(_-40(true, _arg1)), "_blank");
}
public function getGameId():String{
return ("");
}
public function _-40(_arg1:Boolean=true, _arg2:String=""):String{
if (_arg2 != ""){
_arg2 = ("&refex=" + _arg2);
};
if (_arg1){
return ((("http://www.obyo.com/?ref=" + getGameId()) + _arg2));
};
return ((("http://www.obyo.com/" + ((_arg2)!="") ? "?" : "") + _arg2));
}
protected function getTitle():_-FM{
return (null);
}
protected function getGame():Game{
return (null);
}
protected function getMusicGame():Sound{
return (null);
}
protected function _-7b():Sound{
return (new _-BJ());
}
protected function getButtonSoundOver():Sound{
return (null);
}
protected function getButtonSoundClick():Sound{
return (null);
}
private function checkTitle(_arg1:Event=null):void{
if (!(title = getTitle())){
return;
};
titleX = title.x;
titleY = title.y;
this.removeEventListener(Event.ENTER_FRAME, checkTitle);
stop();
titleIndex = this.getChildIndex(title);
buttonSoundOver = getButtonSoundOver();
buttonSoundClick = getButtonSoundClick();
startIntroMusic();
}
private function removePage():void{
if (title){
removeChild(title);
title = null;
};
if (_-Gf){
removeChild(_-Gf);
_-Gf = null;
};
if (game){
removeChild(game);
game = null;
};
if (_-81){
_-CW.stop();
_-81 = null;
_-CW = null;
};
if (_-Ht){
_-9o.stop();
_-Ht = null;
_-9o = null;
};
}
}
}//package com.novelgames.flashgames.common
Section 38
//_-FM (com.novelgames.flashgames.common._-FM)
package com.novelgames.flashgames.common {
import flash.display.*;
import flash.events.*;
import flash.media.*;
public class _-FM extends MovieClip {
public var helpButton:SimpleButton;
public var obyoLogoButton:SimpleButton;
public var moreGamesButton:SimpleButton;
public var startButton:SimpleButton;
public function _-FM(){
startButton.addEventListener(MouseEvent.ROLL_OVER, startButtonOvered);
startButton.addEventListener(MouseEvent.CLICK, startButtonClicked);
helpButton.addEventListener(MouseEvent.ROLL_OVER, helpButtonOvered);
helpButton.addEventListener(MouseEvent.CLICK, helpButtonClicked);
moreGamesButton.addEventListener(MouseEvent.ROLL_OVER, moreGamesButtonOvered);
moreGamesButton.addEventListener(MouseEvent.CLICK, moreGamesButtonClicked);
obyoLogoButton.addEventListener(MouseEvent.ROLL_OVER, moreGamesButtonOvered);
obyoLogoButton.addEventListener(MouseEvent.CLICK, _-6j);
}
private function startButtonOvered(_arg1:MouseEvent):void{
if (Object(parent).buttonSoundOver){
Object(parent).buttonSoundOver.play();
};
}
private function startButtonClicked(_arg1:MouseEvent):void{
if (Object(parent).buttonSoundClick){
Object(parent).buttonSoundClick.play();
};
Object(parent).gotoGamePage();
}
private function highScoresButtonOvered(_arg1:MouseEvent):void{
if (Object(parent).buttonSoundOver){
Object(parent).buttonSoundOver.play();
};
}
private function highScoresButtonClicked(_arg1:MouseEvent):void{
if (Object(parent).buttonSoundClick){
Object(parent).buttonSoundClick.play();
};
Object(parent).showHighScores();
}
private function moreGamesButtonOvered(_arg1:MouseEvent):void{
if (Object(parent).buttonSoundOver){
Object(parent).buttonSoundOver.play();
};
}
private function _-6j(_arg1:MouseEvent):void{
if (Object(parent).buttonSoundClick){
Object(parent).buttonSoundClick.play();
};
Object(parent).gotoMoreGamesURL("1");
}
private function moreGamesButtonClicked(_arg1:MouseEvent):void{
if (Object(parent).buttonSoundClick){
Object(parent).buttonSoundClick.play();
};
Object(parent).gotoMoreGamesURL("2");
}
private function helpButtonOvered(_arg1:MouseEvent):void{
if (Object(parent).buttonSoundOver){
Object(parent).buttonSoundOver.play();
};
}
private function helpButtonClicked(_arg1:MouseEvent):void{
if (Object(parent).buttonSoundClick){
Object(parent).buttonSoundClick.play();
};
Object(parent).gotoInstructionsPage();
}
}
}//package com.novelgames.flashgames.common
Section 39
//_-G1 (com.novelgames.flashgames.common._-G1)
package com.novelgames.flashgames.common {
public class _-G1 {
private var values:Array;
public function _-G1(){
this.value = 0;
}
public function set value(_arg1:Number):void{
var _local4:int;
var _local5:int;
var _local2:int = (2 + Math.floor((Math.random() * 9)));
var _local3:Number = _arg1;
values = new Array();
_local5 = 0;
while (_local5 < (_local2 - 1)) {
_local4 = ((-10000 + _arg1) + Math.floor((Math.random() * 20000)));
_local3 = (_local3 - _local4);
values.push(_local4);
_local5++;
};
values.push(_local3);
}
public function get value():Number{
var _local2:int;
var _local1:Number = 0;
_local2 = 0;
while (_local2 < values.length) {
_local1 = (_local1 + values[_local2]);
_local2++;
};
return (_local1);
}
public function toString():String{
return (this.value.toString());
}
}
}//package com.novelgames.flashgames.common
Section 40
//_-Gd (com.novelgames.flashgames.common._-Gd)
package com.novelgames.flashgames.common {
import flash.display.*;
import flash.events.*;
public class _-Gd extends MovieClip {
public var startButton:SimpleButton;
private var shownFromGame:Boolean;
public function _-Gd(_arg1:Boolean=false){
this.shownFromGame = _arg1;
startButton.addEventListener(MouseEvent.ROLL_OVER, startButtonOvered);
startButton.addEventListener(MouseEvent.CLICK, startButtonClicked);
}
private function startButtonOvered(_arg1:MouseEvent):void{
if (Object(parent).buttonSoundOver){
Object(parent).buttonSoundOver.play();
};
}
private function startButtonClicked(_arg1:MouseEvent):void{
if (Object(parent).buttonSoundClick){
Object(parent).buttonSoundClick.play();
};
if (!shownFromGame){
Object(parent).gotoGamePage();
} else {
Object(parent).hideInstructionsFromGame();
};
}
}
}//package com.novelgames.flashgames.common
Section 41
//_-OO (com.novelgames.flashgames.common._-OO)
package com.novelgames.flashgames.common {
import flash.display.*;
import flash.events.*;
import gos.obyoAPI.*;
import flash.media.*;
import flash.net.*;
import flash.external.*;
import flash.geom.*;
public class _-OO extends MovieClip {
private var title:_-FM;
protected var _-Gf:_-Gd;
protected var _-Ms:_-P1;
protected var messageClose:MessageClose;
protected var game:Game;
protected var _-QU:_-90;
protected var _-81:Sound;
protected var _-CW:SoundChannel;
protected var _-Ht:Sound;
protected var _-9o:SoundChannel;
public var buttonSoundOver:Sound;
public var buttonSoundClick:Sound;
private var titleX:Number;
private var titleY:Number;
private var titleIndex:int;
public function _-OO(){
super();
stage.scaleMode = StageScaleMode.SHOW_ALL;
try {
ExternalInterface.addCallback("onRightMouseDown", onRightMouseDown);
ExternalInterface.addCallback("onRightMouseUp", onRightMouseUp);
ExternalInterface.addCallback("onMiddleMouseDown", onMiddleMouseDown);
ExternalInterface.addCallback("onMiddleMouseUp", onMiddleMouseUp);
} catch(e) {
};
Sprite.prototype.startDragNew = function (_arg1:Boolean=false, _arg2:Rectangle=null):void{
Sprite.prototype.draggingSprite = this;
Sprite.prototype.draggingSpriteLockCenter = _arg1;
Sprite.prototype.draggingSpriteBounds = _arg2;
Sprite.prototype.draggingSpriteMouseX = this.mouseX;
Sprite.prototype.draggingSpriteMouseY = this.mouseY;
this.startDrag(_arg1, _arg2);
};
Sprite.prototype.stopDragNew = function ():void{
Sprite.prototype.draggingSprite = null;
this.stopDrag();
};
this.addEventListener(Event.ADDED_TO_STAGE, onAddedToStage);
this.addEventListener(Event.ENTER_FRAME, onFirstFrame);
stop();
}
private function onAddedToStage(_arg1:Event):void{
this.removeEventListener(Event.ADDED_TO_STAGE, onAddedToStage);
stage.stageFocusRect = false;
}
public function onFirstFrame(_arg1:Event):void{
this.removeEventListener(Event.ENTER_FRAME, onFirstFrame);
stop();
showPreloader();
}
public function showPreloader():void{
_-CJ.showPreloader(this, getGameId(), function ():void{
gotoAndStop(2);
});
}
public function getGameId():String{
return ("");
}
public function onRightMouseDown():void{
if (game){
game.onRightMouseDown();
};
}
public function onRightMouseUp():void{
if (game){
game.onRightMouseUp();
};
}
public function onMiddleMouseDown():void{
if (game){
game.onMiddleMouseDown();
};
}
public function onMiddleMouseUp():void{
if (game){
game.onMiddleMouseUp();
};
}
}
}//package com.novelgames.flashgames.common
Section 42
//_-P1 (com.novelgames.flashgames.common._-P1)
package com.novelgames.flashgames.common {
import flash.display.*;
import flash.events.*;
public class _-P1 extends MovieClip {
public var startButton:SimpleButton;
private var shownFromGame:Boolean;
public function _-P1(_arg1:Boolean=false){
this.shownFromGame = _arg1;
startButton.addEventListener(MouseEvent.ROLL_OVER, startButtonOvered);
startButton.addEventListener(MouseEvent.CLICK, startButtonClicked);
}
private function startButtonOvered(_arg1:MouseEvent):void{
if (Object(parent).buttonSoundOver){
Object(parent).buttonSoundOver.play();
};
}
private function startButtonClicked(_arg1:MouseEvent):void{
if (Object(parent).buttonSoundClick){
Object(parent).buttonSoundClick.play();
};
if (!shownFromGame){
Object(parent).gotoGamePage();
} else {
Object(parent).hideMessagePauseFromGame();
};
}
}
}//package com.novelgames.flashgames.common
Section 43
//_-Pv (com.novelgames.flashgames.common._-Pv)
package com.novelgames.flashgames.common {
import flash.media.*;
import flash.net.*;
public class _-Pv extends Sound {
public static var volume:Number = _-HS();
private static var allSoundChannels:Array = new Array();
override public function play(_arg1:Number=0, _arg2:int=0, _arg3:SoundTransform=null):SoundChannel{
var _local4:SoundChannel = super.play(_arg1, _arg2, new SoundTransform(volume));
allSoundChannels.push(_local4);
return (_local4);
}
private static function _-HS():Number{
var _local1:SharedObject = SharedObject.getLocal("gameOptions", "/");
_local1.objectEncoding = ObjectEncoding.AMF0;
if (isNaN(_local1.data.musicVolume)){
_local1.data.musicVolume = 1;
};
return (_local1.data.musicVolume);
}
public static function saveVolume():void{
var _local1:SharedObject = SharedObject.getLocal("gameOptions", "/");
_local1.objectEncoding = ObjectEncoding.AMF0;
_local1.data.musicVolume = volume;
}
public static function _-Gz(_arg1:Number):void{
var _local2:int;
_-Pv.volume = _arg1;
_local2 = 0;
while (_local2 < allSoundChannels.length) {
allSoundChannels[_local2].soundTransform = new SoundTransform(_arg1);
_local2++;
};
}
}
}//package com.novelgames.flashgames.common
Section 44
//CloseButton (com.novelgames.flashgames.common.CloseButton)
package com.novelgames.flashgames.common {
import flash.display.*;
import flash.events.*;
public class CloseButton extends MovieClip {
public function CloseButton(){
super();
this.buttonMode = true;
this.addEventListener(MouseEvent.CLICK, function ():void{
Object(parent.parent).showMessageCloseFromGame();
});
}
}
}//package com.novelgames.flashgames.common
Section 45
//Game (com.novelgames.flashgames.common.Game)
package com.novelgames.flashgames.common {
import flash.display.*;
import flash.events.*;
import flash.ui.*;
import flash.geom.*;
public class Game extends MovieClip {
public var _-Eq;
private var mouseHidden:Boolean;
public static var _-CH:Stage;
public static var _-7R:MovieClip;
public function Game(){
_-Eq = {x:0, y:0};
super();
}
public function pause():void{
_-CQ.pause();
_-CH.addEventListener(KeyboardEvent.KEY_DOWN, onKeyEventDuringPause, false, 2147483647);
_-CH.addEventListener(KeyboardEvent.KEY_UP, onKeyEventDuringPause, false, 2147483647);
this.mouseEnabled = false;
this.mouseChildren = false;
if (mouseHidden){
Mouse.show();
};
if (Sprite.prototype.draggingSprite){
Sprite.prototype.draggingSprite.stopDrag();
};
}
public function unpause():void{
_-CQ.unpause();
_-CH.focus = _-CH;
_-CH.removeEventListener(KeyboardEvent.KEY_DOWN, onKeyEventDuringPause);
_-CH.removeEventListener(KeyboardEvent.KEY_UP, onKeyEventDuringPause);
this.mouseEnabled = true;
this.mouseChildren = true;
if (mouseHidden){
Mouse.hide();
};
if (Sprite.prototype.draggingSprite){
Sprite.prototype.draggingSprite.x = (Sprite.prototype.draggingSprite.x + (Sprite.prototype.draggingSprite.mouseX - Sprite.prototype.draggingSpriteMouseX));
Sprite.prototype.draggingSprite.y = (Sprite.prototype.draggingSprite.y + (Sprite.prototype.draggingSprite.mouseY - Sprite.prototype.draggingSpriteMouseY));
Sprite.prototype.draggingSprite.startDrag(Sprite.prototype.draggingSpriteLockCenter, Sprite.prototype.draggingSpriteBounds);
};
}
public function destroyGame():void{
trace("destroy...");
}
public function hideMouse():void{
mouseHidden = true;
Mouse.hide();
}
public function showMouse():void{
mouseHidden = false;
Mouse.show();
}
public function onRightMouseDown():void{
var _local1:DisplayObject = _-Cd();
if (!_local1){
return;
};
_local1.dispatchEvent(new MouseEvent("mouseRightDown"));
}
public function onRightMouseUp():void{
var _local1:DisplayObject = _-Cd();
if (!_local1){
return;
};
_local1.dispatchEvent(new MouseEvent("mouseRightUp"));
}
public function onMiddleMouseDown():void{
var _local1:DisplayObject = _-Cd();
if (!_local1){
return;
};
_local1.dispatchEvent(new MouseEvent("mouseMiddleDown"));
}
public function onMiddleMouseUp():void{
var _local1:DisplayObject = _-Cd();
if (!_local1){
return;
};
_local1.dispatchEvent(new MouseEvent("mouseMiddleUp"));
}
private function _-Cd():DisplayObject{
var _local3:int;
var _local1:Point = this.localToGlobal(new Point(mouseX, mouseY));
var _local2:Array = this.getObjectsUnderPoint(_local1);
_local3 = (_local2.length - 1);
while (_local3 >= 0) {
if (!_local2[_local3].parent.mouseEnabled){
} else {
if (((_local2[_local3].parent.parent) && (!(_local2[_local3].parent.parent.mouseChildren)))){
} else {
return (_local2[_local3]);
};
};
_local3--;
};
return (null);
}
private function onKeyEventDuringPause(_arg1:KeyboardEvent):void{
_arg1.stopImmediatePropagation();
}
}
}//package com.novelgames.flashgames.common
Section 46
//InstructionsButton (com.novelgames.flashgames.common.InstructionsButton)
package com.novelgames.flashgames.common {
import flash.display.*;
import flash.events.*;
public class InstructionsButton extends MovieClip {
public function InstructionsButton(){
super();
this.buttonMode = true;
this.addEventListener(MouseEvent.CLICK, function ():void{
Object(parent.parent).showInstructionsFromGame();
});
}
}
}//package com.novelgames.flashgames.common
Section 47
//MessageClose (com.novelgames.flashgames.common.MessageClose)
package com.novelgames.flashgames.common {
import flash.display.*;
import flash.events.*;
public class MessageClose extends MovieClip {
public var startButton:SimpleButton;
public var gotoHomeButton:SimpleButton;
private var shownFromGame:Boolean;
public function MessageClose(_arg1:Boolean=false){
this.shownFromGame = _arg1;
startButton.addEventListener(MouseEvent.ROLL_OVER, startButtonOvered);
startButton.addEventListener(MouseEvent.CLICK, startButtonClicked);
gotoHomeButton.addEventListener(MouseEvent.ROLL_OVER, _-0Y);
gotoHomeButton.addEventListener(MouseEvent.CLICK, _-PP);
}
private function startButtonOvered(_arg1:MouseEvent):void{
if (Object(parent).buttonSoundOver){
Object(parent).buttonSoundOver.play();
};
}
private function startButtonClicked(_arg1:MouseEvent):void{
if (Object(parent).buttonSoundClick){
Object(parent).buttonSoundClick.play();
};
if (!shownFromGame){
Object(parent).gotoGamePage();
} else {
Object(parent).hideMessageCloseFromGame();
};
}
private function _-0Y(_arg1:MouseEvent):void{
if (Object(parent).buttonSoundOver){
Object(parent).buttonSoundOver.play();
};
}
private function _-PP(_arg1:MouseEvent):void{
if (Object(parent).buttonSoundClick){
Object(parent).buttonSoundClick.play();
};
if (!shownFromGame){
Object(parent).gotoGamePage();
} else {
Object(parent).gotoTitlePageAndClose();
};
}
}
}//package com.novelgames.flashgames.common
Section 48
//OptionsButton (com.novelgames.flashgames.common.OptionsButton)
package com.novelgames.flashgames.common {
import flash.display.*;
import flash.events.*;
public class OptionsButton extends MovieClip {
public function OptionsButton(){
super();
this.buttonMode = true;
this.addEventListener(MouseEvent.CLICK, function ():void{
Object(parent.parent).showOptions();
});
}
}
}//package com.novelgames.flashgames.common
Section 49
//PauseButton (com.novelgames.flashgames.common.PauseButton)
package com.novelgames.flashgames.common {
import flash.display.*;
import flash.events.*;
public class PauseButton extends MovieClip {
public function PauseButton(){
super();
this.buttonMode = true;
this.addEventListener(MouseEvent.CLICK, function ():void{
Object(parent.parent).showMessagePauseFromGame();
});
}
}
}//package com.novelgames.flashgames.common
Section 50
//SoundButton (com.novelgames.flashgames.common.SoundButton)
package com.novelgames.flashgames.common {
import flash.display.*;
import flash.events.*;
public class SoundButton extends MovieClip {
public var soundOnButton:SimpleButton;
public var soundOffButton:SimpleButton;
private var isSounOpen:Boolean;// = true
public function SoundButton(){
super();
addFrameScript(0, frame1, 1, frame2);
this.buttonMode = true;
if ((((_-Pv.volume == 0)) && ((_-6P.volume == 0)))){
isSounOpen = false;
};
if (isSounOpen){
gotoAndStop("soundOn");
} else {
gotoAndStop("soundOff");
};
this.addEventListener(MouseEvent.CLICK, function ():void{
changeSoundState();
});
}
public function changeSoundState():void{
isSounOpen = !(isSounOpen);
if (isSounOpen == true){
gotoAndStop("soundOn");
_-6P._-Gz(1);
_-Pv._-Gz(1);
} else {
if (isSounOpen == false){
gotoAndStop("soundOff");
_-6P._-Gz(0);
_-Pv._-Gz(0);
};
};
}
function frame1(){
stop();
}
function frame2(){
stop();
}
}
}//package com.novelgames.flashgames.common
Section 51
//_-0m (com.novelgames.flashgames.marble._-0m)
package com.novelgames.flashgames.marble {
public class _-0m {
public var lineIndex:Number;
public var ball:_-OG;
public var ballIndex:Number;
public var speed:Number;
public var combo:Number;
public function _-0m(_arg1:Number, _arg2:_-OG, _arg3:Number){
this.lineIndex = _arg1;
this.ball = _arg2;
this.combo = _arg3;
ballIndex = 0;
speed = 0;
}
}
}//package com.novelgames.flashgames.marble
Section 52
//_-0S (com.novelgames.flashgames.marble._-0S)
package com.novelgames.flashgames.marble {
import com.novelgames.flashgames.common.*;
public dynamic class _-0S extends _-6P {
}
}//package com.novelgames.flashgames.marble
Section 53
//_-0z (com.novelgames.flashgames.marble._-0z)
package com.novelgames.flashgames.marble {
import com.novelgames.flashgames.common.*;
public dynamic class _-0z extends _-6P {
}
}//package com.novelgames.flashgames.marble
Section 54
//_-11 (com.novelgames.flashgames.marble._-11)
package com.novelgames.flashgames.marble {
import com.novelgames.flashgames.common.*;
public dynamic class _-11 extends _-6P {
}
}//package com.novelgames.flashgames.marble
Section 55
//_-1I (com.novelgames.flashgames.marble._-1I)
package com.novelgames.flashgames.marble {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import gos.serviceAPI.*;
import _-9-.*;
import gos.obyoAPI.*;
public class _-1I extends MovieClip {
private var _-LM:_-5Z;
private var _-3b:_-P9;
private var level:Number;
private var background:Number;
public function _-1I(){
stop();
}
public function _-3Y(_arg1:Number, _arg2:Number):void{
gotoAndStop("hide");
this.level = _arg1;
this.background = _arg2;
_-LM = new _-5Z();
_-LM.levelText.text = _arg1.toString();
_-LM.backgroundText.text = _arg2.toString();
this.addChild(_-LM);
}
public function _-DK():void{
gotoAndStop("stageClear");
}
public function _-3q():void{
gotoAndStop("gameOver");
}
public function showPlayAgain(_arg1:Object=null):void{
var args = _arg1;
if (args == null){
args = {};
};
gotoAndStop("hide");
var score:Number = (args.score + 0);
_-CJ.showEndScreen(parent.parent, _-Fz._-LX, _-64._-Au(-355, 811), {title:_-Fz._-7z, score:args.score, onError:function (_arg1:_-7k){
homeButtonClicked(null);
}, onReplay:function (_arg1:_-7k){
playAgainButtonClicked(null);
}, onBackToMenu:function (_arg1:_-7k){
homeButtonClicked(null);
}});
}
public function hide():void{
if (_-LM){
this.removeChild(_-LM);
_-LM = null;
};
gotoAndStop("hide");
}
private function playAgainButtonClicked(_arg1:MouseEvent):void{
Object(parent.parent).gotoGamePage();
}
private function homeButtonClicked(_arg1:MouseEvent):void{
Object(parent.parent).gotoTitlePage();
}
}
}//package com.novelgames.flashgames.marble
Section 56
//_-1q (com.novelgames.flashgames.marble._-1q)
package com.novelgames.flashgames.marble {
import com.novelgames.flashgames.common.*;
public dynamic class _-1q extends _-Pv {
}
}//package com.novelgames.flashgames.marble
Section 57
//_-3F (com.novelgames.flashgames.marble._-3F)
package com.novelgames.flashgames.marble {
import com.novelgames.flashgames.common.*;
public dynamic class _-3F extends _-6P {
}
}//package com.novelgames.flashgames.marble
Section 58
//_-5D (com.novelgames.flashgames.marble._-5D)
package com.novelgames.flashgames.marble {
import com.novelgames.flashgames.common.*;
public dynamic class _-5D extends _-6P {
}
}//package com.novelgames.flashgames.marble
Section 59
//_-5Z (com.novelgames.flashgames.marble._-5Z)
package com.novelgames.flashgames.marble {
import flash.display.*;
import flash.text.*;
public dynamic class _-5Z extends MovieClip {
public var backgroundText:TextField;
public var levelText:TextField;
}
}//package com.novelgames.flashgames.marble
Section 60
//_-7f (com.novelgames.flashgames.marble._-7f)
package com.novelgames.flashgames.marble {
import flash.display.*;
import com.novelgames.flashgames.common.*;
import flash.media.*;
public class _-7f extends _-Ef {
public var title:_-FM;
override protected function getTitle():_-FM{
return (_-FM(this["title"]));
}
override protected function getGame():Game{
return (new Game());
}
override protected function getMusicGame():Sound{
return (new _-1q());
}
override public function startIntroMusic():void{
stopIntroMusic();
_-Ht = _-7b();
_-9o = _-Ht.play(0, 1);
}
override public function getGameId():String{
return (_-Fz._-LX);
}
}
}//package com.novelgames.flashgames.marble
Section 61
//_-7G (com.novelgames.flashgames.marble._-7G)
package com.novelgames.flashgames.marble {
import flash.display.*;
import com.novelgames.flashgames.common.*;
import flash.events.*;
import flash.utils.*;
public class _-7G extends MovieClip {
public var ballFront:_-OG;
public var ballBack:_-OG;
private var possibleBallTypes:Array;
private var _-5w:Boolean;
private var _-F2:Timer;
public function initialize(_arg1:Number){
var _local2:*;
possibleBallTypes = new Array();
_local2 = 0;
while (_local2 < _arg1) {
possibleBallTypes[_local2] = _local2;
_local2++;
};
_-5w = true;
ballFront.initialize(Math.floor((Math.random() * _arg1)));
ballBack.initialize(Math.floor((Math.random() * _arg1)));
}
public function _-O9():void{
var _local1:Number = ballFront.type;
ballFront.setType(ballBack.type);
ballBack.setType(_local1);
}
public function setPossibleBallTypes(_arg1:Array):void{
var _local4:*;
var _local2:Boolean;
var _local3:Boolean;
this.possibleBallTypes = _arg1;
_local4 = 0;
while (_local4 < _arg1.length) {
if (ballFront.type == _arg1[_local4]){
_local2 = true;
};
if (ballBack.type == _arg1[_local4]){
_local3 = true;
};
_local4++;
};
if (!_local2){
ballFront.setType(_arg1[Math.floor((Math.random() * _arg1.length))]);
};
if (!_local3){
ballBack.setType(_arg1[Math.floor((Math.random() * _arg1.length))]);
};
}
public function _-Qm():void{
ballFront.setType(ballBack.type);
ballFront.visible = true;
ballBack.setType(possibleBallTypes[Math.floor((Math.random() * possibleBallTypes.length))]);
}
}
}//package com.novelgames.flashgames.marble
Section 62
//_-D (com.novelgames.flashgames.marble._-D)
package com.novelgames.flashgames.marble {
import com.novelgames.flashgames.common.*;
public dynamic class _-D extends _-6P {
}
}//package com.novelgames.flashgames.marble
Section 63
//_-De (com.novelgames.flashgames.marble._-De)
package com.novelgames.flashgames.marble {
import flash.display.*;
import flash.geom.*;
public class _-De {
public var points:Array;
public var _-Hf:Array;
public var _-QZ:Array;
public var maxPointSpacing:Number;
public var ballSpacing:Number;
public var connectedBallSpacing:Number;
public function _-De(){
points = new Array();
_-Hf = new Array();
_-QZ = new Array();
maxPointSpacing = 0;
ballSpacing = 0;
}
public function addPoint(_arg1:Number, _arg2:Number):void{
points.push(new Point(_arg1, _arg2));
_-Hf.push(null);
_-QZ.push(false);
}
public function updateMask(_arg1:Array):void{
var _local2:*;
var _local3:*;
_local2 = 0;
while (_local2 < _arg1.length) {
_local3 = _arg1[_local2][0];
while (_local3 < _arg1[_local2][1]) {
_-Hf[_local3] = _arg1[_local2][2];
_local3++;
};
_local2++;
};
}
public function updateCannotHits(_arg1:Array):void{
var _local2:*;
var _local3:*;
_local2 = 0;
while (_local2 < _arg1.length) {
_local3 = _arg1[_local2][0];
while (_local3 < _arg1[_local2][1]) {
_-QZ[_local3] = true;
_local3++;
};
_local2++;
};
}
public function updateBallSpacing():void{
var _local2:Number;
var _local3:Number;
var _local4:*;
var _local1:Number = 0;
_local4 = 1;
while (_local4 < points.length) {
_local3 = Point.distance(points[(_local4 - 1)], points[_local4]);
_local1 = (_local1 + _local3);
_local4++;
};
_local2 = (_local1 / (points.length - 1));
maxPointSpacing = _local2;
ballSpacing = ((_-Fz._-Np * 2) / _local2);
connectedBallSpacing = (((_-Fz._-Np * 2) + _-Fz._-X) / _local2);
}
public function getXY(_arg1:Number):Point{
var _local2:Number;
var _local3:Number;
var _local4:Number;
var _local5:Number;
if (_arg1 <= 0){
return (points[0]);
};
if (_arg1 >= (points.length - 1)){
return (points[(points.length - 1)]);
};
_local4 = Math.floor(_arg1);
_local5 = (_arg1 - _local4);
_local2 = ((points[_local4].x * (1 - _local5)) + (points[(_local4 + 1)].x * _local5));
_local3 = ((points[_local4].y * (1 - _local5)) + (points[(_local4 + 1)].y * _local5));
return (new Point(_local2, _local3));
}
public function getMask(_arg1:Number):String{
if (_arg1 <= 0){
return (_-Hf[0]);
};
if (_arg1 >= (_-Hf.length - 1)){
return (_-Hf[(_-Hf.length - 1)]);
};
return (_-Hf[Math.floor(_arg1)]);
}
public function getCannotHit(_arg1:Number):Boolean{
if (_arg1 <= 0){
return (_-QZ[0]);
};
if (_arg1 >= (_-QZ.length - 1)){
return (_-QZ[(_-QZ.length - 1)]);
};
return (_-QZ[Math.floor(_arg1)]);
}
}
}//package com.novelgames.flashgames.marble
Section 64
//_-Fz (com.novelgames.flashgames.marble._-Fz)
package com.novelgames.flashgames.marble {
public class _-Fz {
public static var _-LX:String = "heru";
public static var _-7z:String = "Heru";
public static var _-6r:Number = 6;
public static var _-O4:Array = [{color1:0xA5000F, color2:14294832}, {color1:15108404, color2:16315224}, {color1:2772916, color2:6345460}, {color1:0x388D00, color2:6667084}, {color1:8461455, color2:13051099}, {color1:1253200, color2:5398186}];
public static var _-Np:Number = 13;
public static var _-Kj:Number = 1000;
public static var _-Bm:Number = 30;
public static var _-14:Number = 700;
public static var _-Gw:Number = 200;
public static var _-JV:Number = 100;
public static var _-X:Number = 5;
public static var _-EH:Number = 1000;
public static var _-Pf:Number = 1500;
public static var _-Nj:Number = 0.2;
public static var _-F8:Number = 0;
public static var _-38:Number = 0;
public static var _-OJ:Number = 600;
public static var _-6u:Number = 400;
public static var _-Fi:Boolean = false;
public static var _-t:Number = 8;
public static var _-El:Number = 400;
public static var _-HW:Number = 10;
public static var _-NN:Number = (_-Np * 3);
public static var _-Qq:Number = 1000;
public static var _-Q7:Number = 40;
public static var _-P4:Number = 3;
public static var _-I3:Number = 7;
public static var _-Kw:Number = 4;
public static var _-Cv:Number = 1;
public static var _-R:Number = 15;
public static var _-8l:Number = 5;
public static var _-C8:Number = 80;
public static var _-6f:Number = 20;
public static var _-Du:Number = 1000;
public static var _-Nr:Array = [null, [[[160, 210, "StageMask1_0"], [590, 660, "StageMask1_1"]]], null];
public static var _-5d:Array = [null, [[[168, 203], [603, 647]]], null];
public static var _-4c:Number = 20;
public static var _-2r:Number = 10;
public static var _-Hv:Number = 10;
public static var _-7D:Number = 50;
public static var _-I:Number = 1000;
public static var _-Ae:int = 1;
public static var _-Or:int = 1;
public static var _-Ik:Array = [[0, 0, 0, 0], [72, 0, 4, 51], [33, 30, -36, -138], [43, 30, -36, 101], [14, 20, -36, -44], [10, 5, -32, -109]];
}
}//package com.novelgames.flashgames.marble
Section 65
//_-Ge (com.novelgames.flashgames.marble._-Ge)
package com.novelgames.flashgames.marble {
import com.novelgames.flashgames.common.*;
public class _-Ge extends _-OO {
override public function getGameId():String{
return (_-Fz._-LX);
}
}
}//package com.novelgames.flashgames.marble
Section 66
//_-HK (com.novelgames.flashgames.marble._-HK)
package com.novelgames.flashgames.marble {
import com.novelgames.flashgames.common.*;
public dynamic class _-HK extends _-6P {
}
}//package com.novelgames.flashgames.marble
Section 67
//_-JT (com.novelgames.flashgames.marble._-JT)
package com.novelgames.flashgames.marble {
import com.novelgames.flashgames.common.*;
public dynamic class _-JT extends _-6P {
}
}//package com.novelgames.flashgames.marble
Section 68
//_-MK (com.novelgames.flashgames.marble._-MK)
package com.novelgames.flashgames.marble {
import com.novelgames.flashgames.common.*;
public dynamic class _-MK extends _-6P {
}
}//package com.novelgames.flashgames.marble
Section 69
//_-Na (com.novelgames.flashgames.marble._-Na)
package com.novelgames.flashgames.marble {
import flash.display.*;
import com.novelgames.flashgames.common.*;
import flash.text.*;
import fl.motion.*;
import flash.geom.*;
import flash.filters.*;
public class _-Na extends MovieClip {
public var scoreText:TextField;
private var index:Number;
private var startTime:Number;
private var _-9U:Boolean;// = false
public function _-Na(){
addFrameScript(9, frame10);
}
public function initialize(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:int=1):void{
this.index = _arg1;
this.x = _arg2;
this.y = _arg3;
startTime = (_-CQ.getTimer() + (_arg1 * _-Fz._-Q7));
_-Gm(_arg4);
scoreText.text = ("+" + _-Fz._-7D);
stop();
this.visible = false;
}
public function move(_arg1:Number):Boolean{
if (_arg1 < startTime){
return (false);
};
if (_arg1 >= (startTime + _-Fz._-Qq)){
this.visible = false;
return (true);
};
if (!_-9U){
_-9U = true;
play();
};
scoreText.alpha = (1 - ((_arg1 - startTime) / _-Fz._-Qq));
scoreText.y = (scoreText.y - 0.3);
this.visible = true;
return (false);
}
public function _-Gm(_arg1:int):void{
var _local2:Array = _-Fz._-Ik[_arg1];
var _local3:AdjustColor = new AdjustColor();
_local3.brightness = _local2[0];
_local3.contrast = _local2[1];
_local3.saturation = _local2[2];
_local3.hue = _local2[3];
var _local4:Array = new Array();
_local4 = _local3.CalculateFinalFlatArray();
var _local5:ColorMatrixFilter = new ColorMatrixFilter(_local4);
var _local6:Array = new Array();
_local6.push(_local5);
this.filters = _local6;
}
function frame10(){
stop();
}
}
}//package com.novelgames.flashgames.marble
Section 70
//_-OG (com.novelgames.flashgames.marble._-OG)
package com.novelgames.flashgames.marble {
import flash.display.*;
import flash.utils.*;
import fl.motion.*;
import flash.geom.*;
import flash.filters.*;
public class _-OG extends MovieClip {
public var type:Number;
public var pointIndex:Number;
public var _-v:Boolean;
public var cannotHit:Boolean;
public var xyPoint:Point;
public var speedX:Number;
public var speedY:Number;
public var _-7w:Number;
public var _-Dh:Number;
public var _-Cg:Number;
public var ballMask:MovieClip;
public var _-Hz:String;
public function _-OG(){
stop();
}
public function initialize(_arg1:Number):void{
setType(_arg1);
pointIndex = 0;
_-v = false;
cannotHit = false;
xyPoint = new Point(0, 0);
this.cacheAsBitmap = _-Fz._-Fi;
}
public function setType(_arg1:Number):void{
this.type = _arg1;
this.gotoAndStop((_arg1 + 1));
}
public function _-Gm(_arg1:Object):void{
var _local2:AdjustColor = new AdjustColor();
_local2.brightness = _arg1.brightness;
_local2.contrast = _arg1.contrast;
_local2.saturation = _arg1.saturation;
_local2.hue = _arg1.hue;
var _local3:Array = new Array();
_local3 = _local2.CalculateFinalFlatArray();
var _local4:ColorMatrixFilter = new ColorMatrixFilter(_local3);
var _local5:Array = new Array();
_local5.push(_local4);
this.filters = _local5;
}
public function setXY(_arg1:Number, _arg2:Number):void{
xyPoint.x = _arg1;
xyPoint.y = _arg2;
this.x = _arg1;
this.y = _arg2;
}
public function updateMask(_arg1:String):void{
var _local2:Class;
if (_arg1 == this._-Hz){
return;
};
this._-Hz = _arg1;
if ((((_arg1 == null)) || ((_arg1 == "")))){
parent.removeChild(ballMask);
ballMask = null;
this.mask = null;
} else {
_local2 = Class(getDefinitionByName(("com.novelgames.flashgames.marble." + _arg1)));
ballMask = new (_local2);
parent.addChild(ballMask);
this.mask = ballMask;
};
}
public function destroy():void{
if (ballMask){
parent.removeChild(ballMask);
};
parent.removeChild(this);
}
}
}//package com.novelgames.flashgames.marble
Section 71
//_-Ou (com.novelgames.flashgames.marble._-Ou)
package com.novelgames.flashgames.marble {
import com.novelgames.flashgames.common.*;
public dynamic class _-Ou extends _-6P {
}
}//package com.novelgames.flashgames.marble
Section 72
//_-P9 (com.novelgames.flashgames.marble._-P9)
package com.novelgames.flashgames.marble {
import flash.display.*;
public dynamic class _-P9 extends MovieClip {
public var playAgainButton:SimpleButton;
public var homeButton:SimpleButton;
}
}//package com.novelgames.flashgames.marble
Section 73
//Cannon (com.novelgames.flashgames.marble.Cannon)
package com.novelgames.flashgames.marble {
import flash.display.*;
import com.novelgames.flashgames.common.*;
import flash.events.*;
import flash.utils.*;
public class Cannon extends MovieClip {
private var possibleBallTypes:Array;
private var _-5w:Boolean;
private var _-F2:Timer;
private var cannonBg:_-7G;
public function initialize(_arg1:_-7G){
_-5w = true;
cannonBg = _arg1;
}
public function updateRotation():void{
this.rotation = (this.rotation + ((Math.atan2(this.mouseY, this.mouseX) * 180) / Math.PI));
}
public function shoot():void{
if (!_-5w){
return;
};
Object(parent.parent.parent).shoot();
_-5w = false;
_-F2 = new _-CQ(_-Fz._-Gw, 0);
_-F2.addEventListener(TimerEvent.TIMER, _-Qm);
_-F2.start();
}
private function _-Qm(_arg1:TimerEvent):void{
_-F2.stop();
cannonBg._-Qm();
_-5w = true;
}
}
}//package com.novelgames.flashgames.marble
Section 74
//Explode (com.novelgames.flashgames.marble.Explode)
package com.novelgames.flashgames.marble {
import flash.display.*;
import fl.motion.*;
import flash.geom.*;
import flash.filters.*;
public class Explode extends MovieClip {
private var _-Le:Number;
public function Explode(_arg1:int=-1){
addFrameScript(9, frame10);
this.rotation = ((Math.random() * 360) - 180);
this.alpha = 0.8;
_-Le = 0;
if (_arg1 >= 0){
_-Gm(_arg1);
};
}
public function _-Gm(_arg1:int):void{
var _local2:Array = _-Fz._-Ik[_arg1];
var _local3:AdjustColor = new AdjustColor();
_local3.brightness = _local2[0];
_local3.contrast = _local2[1];
_local3.saturation = _local2[2];
_local3.hue = _local2[3];
var _local4:Array = new Array();
_local4 = _local3.CalculateFinalFlatArray();
var _local5:ColorMatrixFilter = new ColorMatrixFilter(_local4);
var _local6:Array = new Array();
_local6.push(_local5);
this.filters = _local6;
}
public function move(_arg1:Number):Boolean{
var _local3:Number;
var _local4:Number;
var _local5:*;
var _local2:Boolean;
_-Le = (_-Le + _arg1);
if ((_-Le * 1000) >= _-Fz._-El){
_local3 = 1;
_local2 = true;
} else {
_local3 = ((_-Le * 1000) / _-Fz._-El);
};
_local4 = (_local3 * _-Fz._-HW);
return (_local2);
}
function frame10(){
stop();
}
}
}//package com.novelgames.flashgames.marble
Section 75
//Game (com.novelgames.flashgames.marble.Game)
package com.novelgames.flashgames.marble {
import flash.display.*;
import com.novelgames.flashgames.common.*;
import flash.events.*;
import flash.media.*;
import flash.utils.*;
import flash.text.*;
import flash.ui.*;
import flash.geom.*;
public class Game extends Game {
public var bottomObyoButton:SimpleButton;
public var dialog:_-1I;
public var clickDetector:MovieClip;
public var explodesHolder:MovieClip;
public var scoreText:TextField;
public var starsHolder:MovieClip;
public var ballsHolder:MovieClip;
public var backgroundHolder:MovieClip;
private var cannon:Cannon;
private var cannonBg:_-7G;
private var _-z:Array;
private var _-f:Array;
private var ballLines:Array;
private var lastDestroyPointIndexes:Array;
private var explodes:Array;
private var _-30:int;// = 0
private var _-3E:Number;
private var _-F2:Timer;
private var _-K5:Number;
private var currentBackground:Number;
private var noOfBallTypes:Number;
private var _-Iq:Number;
private var _-0A:Number;
private var _-B3:Number;
private var stageBackground:StageBackground;
private var _-AS:Boolean;
private var _-Ke:Boolean;
private var _-4K:Boolean;
private var starLines:Array;
private var __score:_-G1;
private var soundShoot:Sound;
private var soundLand:Sound;
private var _-Ly:Sound;
private var soundPut:Sound;
private var _-Qt:Sound;
private var soundStar:Sound;
private var soundWin:Sound;
private var soundGameOver:Sound;
private var _-0g:Sound;
private var soundSwap:Sound;
private var _-JG:Array;
private var soundCombo1:Sound;
private var soundCombo2:Sound;
private var soundCombo3:Sound;
private var soundStarChannel:SoundChannel;
public function Game(){
addFrameScript(0, frame1);
score = 0;
soundShoot = new _-HK();
_-Ly = new _-MK();
soundPut = new _-0S();
_-Qt = new _-0z();
soundStar = new _-5D();
soundWin = new _-JT();
soundGameOver = new _-Ou();
_-0g = new _-3F();
soundSwap = new _-D();
soundCombo1 = new SoundCombo1();
soundCombo2 = new _-11();
soundCombo3 = new SoundCombo3();
_-JG = new Array();
_-JG.push(soundCombo1);
_-JG.push(soundCombo2);
_-JG.push(soundCombo3);
_-CH.focus = _-CH;
_-CH.addEventListener(KeyboardEvent.KEY_DOWN, onKeyDownEvent);
this.addEventListener(MouseEvent.MOUSE_MOVE, onMouseMoveEvent);
clickDetector.addEventListener(MouseEvent.MOUSE_DOWN, onMouseDownEvent);
_-Eq.x = dialog.x;
_-Eq.y = dialog.y;
bottomObyoButton.addEventListener(MouseEvent.CLICK, onBottomObyoButtonClick);
startLevel(_-Fz._-Ae, _-Fz._-Or);
}
protected function onBottomObyoButtonClick(_arg1:Event):void{
_-7f(parent)._-1k("3");
}
public function set score(_arg1:Number):void{
if (__score == null){
__score = new _-G1();
};
__score.value = _arg1;
scoreText.text = _arg1.toString();
}
public function get score():Number{
if (__score == null){
__score = new _-G1();
};
return (__score.value);
}
override public function unpause():void{
super.unpause();
stage.focus = stage;
}
public function shoot():void{
var _local1:_-OG = new _-OG();
var _local2:Point = new Point(0, 0);
_local1.initialize(cannonBg.ballFront.type);
_local2 = this.globalToLocal(cannonBg.ballFront.localToGlobal(_local2));
_local1.x = _local2.x;
_local1.y = _local2.y;
_local1.speedX = (Math.cos(((cannon.rotation * Math.PI) / 180)) * _-Fz._-14);
_local1.speedY = (Math.sin(((cannon.rotation * Math.PI) / 180)) * _-Fz._-14);
ballsHolder.addChild(_local1);
_-z.push(_local1);
soundShoot.play();
}
private function onMouseMoveEvent(_arg1:MouseEvent):void{
if (_-Ke){
return;
};
if (_-4K){
return;
};
cannon.updateRotation();
}
private function onMouseDownEvent(_arg1:MouseEvent):void{
if (!_-AS){
return;
};
if (_-Ke){
return;
};
if (_-4K){
return;
};
cannon.shoot();
}
private function onKeyDownEvent(_arg1:KeyboardEvent):void{
if (!_-AS){
return;
};
if (_-Ke){
return;
};
if (_-4K){
return;
};
if (_arg1.keyCode == Keyboard.SPACE){
soundSwap.play();
cannonBg._-O9();
};
}
private function startLevel(_arg1:Number, _arg2:Number):void{
var _local3:*;
var _local4:Point;
var _local5:Class;
var _local6:*;
_-K5 = _arg1;
currentBackground = _arg2;
gotoAndStop(("background" + _arg2));
noOfBallTypes = (_-Fz._-Kw + ((_arg1 - 1) * _-Fz._-Cv));
if (noOfBallTypes > _-Fz._-6r){
noOfBallTypes = _-Fz._-6r;
};
_-Iq = (_-Fz._-R + ((_arg1 - 1) * _-Fz._-8l));
_-0A = (_-Fz._-C8 + ((_arg1 - 1) * _-Fz._-6f));
_-B3 = 0;
_-AS = false;
_-Ke = false;
_-4K = false;
_-z = new Array();
_-f = new Array();
ballLines = new Array();
lastDestroyPointIndexes = new Array();
explodes = new Array();
if (stageBackground){
backgroundHolder.removeChild(stageBackground);
};
_local5 = Class(getDefinitionByName(("com.novelgames.flashgames.marble.StageBackground" + (_arg2 - 1))));
stageBackground = new (_local5);
stageBackground.initialize();
backgroundHolder.addChild(stageBackground);
cannonBg = stageBackground._-2u;
cannonBg.initialize(noOfBallTypes);
cannon = stageBackground.cannon;
cannon.initialize(cannonBg);
_local6 = 0;
while (_local6 < stageBackground._-JH.length) {
if (((_-Fz._-Nr[(_arg2 - 1)]) && (_-Fz._-Nr[(_arg2 - 1)][_local6]))){
stageBackground._-JH[_local6].updateMask(_-Fz._-Nr[(_arg2 - 1)][_local6]);
};
if (((_-Fz._-5d[(_arg2 - 1)]) && (_-Fz._-5d[(_arg2 - 1)][_local6]))){
stageBackground._-JH[_local6].updateCannotHits(_-Fz._-5d[(_arg2 - 1)][_local6]);
};
ballLines[_local6] = new Array();
_local6++;
};
dialog._-3Y(_arg1, _arg2);
_-0g.play();
_-3E = _-CQ.getTimer();
_-F2 = new _-CQ(1, 0);
_-F2.addEventListener(TimerEvent.TIMER, doCreateMove);
_-F2.start();
}
private function doCreateMove(_arg1:TimerEvent):void{
var _local4:Point;
var _local6:*;
var _local7:*;
var _local2:Number = _-CQ.getTimer();
var _local3:Number = ((_local2 - _-3E) / 1000);
var _local5:Boolean;
moveBalls(_local3, _-Fz._-Kj);
_local6 = 0;
while (_local6 < ballLines.length) {
if (ballLines[_local6][(ballLines[_local6].length - 1)].pointIndex >= ((stageBackground._-JH[_local6].points.length * _-Fz._-Bm) / 100)){
_local5 = true;
};
_local6++;
};
_-3E = _local2;
_arg1.updateAfterEvent();
if (_local5){
_-F2.stop();
dialog.hide();
startPlaying();
};
}
private function startPlaying():void{
_-AS = true;
_-3E = _-CQ.getTimer();
_-F2 = new _-CQ(1, 0);
_-F2.addEventListener(TimerEvent.TIMER, doPlayMove);
_-F2.start();
}
private function doPlayMove(_arg1:TimerEvent):void{
var _local2:Number = _-CQ.getTimer();
var _local3:Number = ((_local2 - _-3E) / 1000);
moveShootingBalls(_local3);
moveBalls(_local3, _-Iq);
dropBalls(_local3);
moveExplodes(_local3);
_-Rl();
_-3E = _local2;
_arg1.updateAfterEvent();
}
private function moveShootingBalls(_arg1:Number):void{
var _local2:_-OG;
var _local3:Number;
var _local4:Number;
var _local5:Number;
var _local6:Number;
var _local7:Number;
var _local8:Number;
var _local9:Number;
var _local10:int;
var _local11:int;
_local10 = 0;
while (_local10 < _-z.length) {
_local2 = _-z[_local10];
_local3 = _local2.x;
_local4 = _local2.y;
_local5 = (_local2.speedX * _arg1);
_local6 = (_local2.speedY * _arg1);
_local7 = Math.ceil((Math.max(Math.abs(_local5), Math.abs(_local6)) / (_-Fz._-Np * 2)));
_local8 = (_local5 / _local7);
_local9 = (_local6 / _local7);
_local11 = 0;
while (_local11 < _local7) {
_local3 = (_local3 + _local8);
_local4 = (_local4 + _local9);
_local2.setXY(_local3, _local4);
if ((((((((_local3 < (_-Fz._-F8 - _-Fz._-Np))) || ((_local3 > (_-Fz._-OJ + _-Fz._-Np))))) || ((_local4 < (_-Fz._-38 - _-Fz._-Np))))) || ((_local4 > (_-Fz._-6u + _-Fz._-Np))))){
_local2.destroy();
_-z.splice(_local10, 1);
_local10--;
break;
};
if (landBallOnPath(_local2)){
_-z.splice(_local10, 1);
_local10--;
break;
};
_local11++;
};
_local10++;
};
}
private function landBallOnPath(_arg1:_-OG):Boolean{
var _local2:Number;
var _local3:Number;
var _local4:Point;
var _local5:Point;
var _local6:*;
var _local7:*;
var _local8:*;
_local6 = 0;
while (_local6 < ballLines.length) {
_local7 = 0;
while (_local7 < ballLines[_local6].length) {
if (ballLines[_local6][_local7].cannotHit){
} else {
_local2 = Point.distance(_arg1.xyPoint, ballLines[_local6][_local7].xyPoint);
if (_local2 > (_-Fz._-Np * 2)){
} else {
_local4 = stageBackground._-JH[_local6].getXY((ballLines[_local6][_local7].pointIndex - stageBackground._-JH[_local6].ballSpacing));
_local5 = stageBackground._-JH[_local6].getXY((ballLines[_local6][_local7].pointIndex + stageBackground._-JH[_local6].ballSpacing));
if (Point.distance(_arg1.xyPoint, _local4) >= Point.distance(_arg1.xyPoint, _local5)){
_arg1.pointIndex = (ballLines[_local6][_local7].pointIndex + stageBackground._-JH[_local6].ballSpacing);
_local3 = (_local7 + 1);
} else {
_arg1.pointIndex = ballLines[_local6][_local7].pointIndex;
_local3 = _local7;
};
_arg1._-7w = _-CQ.getTimer();
_arg1._-Dh = _arg1.x;
_arg1._-Cg = _arg1.y;
ballLines[_local6].splice(_local3, 0, _arg1);
if (_local3 > _local7){
_local8 = 0;
while (_local8 < _-f.length) {
if (_-f[_local8].ball == ballLines[_local6][_local7]){
_-f[_local8].ball = _arg1;
break;
};
_local8++;
};
};
return (true);
};
};
_local7++;
};
_local6++;
};
return (false);
}
private function moveBalls(_arg1:Number, _arg2:Number):void{
var _local3:Point;
var _local4:int;
var _local5:int;
_local4 = 0;
while (_local4 < ballLines.length) {
pushBalls(_local4, 0, ((_arg2 * _arg1) / stageBackground._-JH[_local4].maxPointSpacing));
while ((((_-B3 < _-0A)) && ((((ballLines[_local4].length == 0)) || ((ballLines[_local4][0].pointIndex >= stageBackground._-JH[_local4].ballSpacing)))))) {
_-6M(_local4);
_local3 = stageBackground._-JH[_local4].getXY(ballLines[_local4][0].pointIndex);
ballLines[_local4][0].setXY(_local3.x, _local3.y);
ballLines[_local4][0].updateMask(stageBackground._-JH[_local4].getMask(ballLines[_local4][0].pointIndex));
ballLines[_local4][0].cannotHit = stageBackground._-JH[_local4].getCannotHit(ballLines[_local4][0].pointIndex);
};
_local4++;
};
}
private function pushBalls(_arg1:Number, _arg2:Number, _arg3:Number):void{
var _local6:_-OG;
var _local7:Point;
var _local8:String;
var _local9:Boolean;
var _local10:Number;
var _local11:Number;
var _local12:int;
var _local4:Number = stageBackground._-JH[_arg1].ballSpacing;
var _local5:Array = ballLines[_arg1];
_local12 = _arg2;
while (_local12 < _local5.length) {
_local6 = _local5[_local12];
_local5[_local12].pointIndex = (_local6.pointIndex + _arg3);
_local7 = stageBackground._-JH[_arg1].getXY(_local6.pointIndex);
_local8 = stageBackground._-JH[_arg1].getMask(_local6.pointIndex);
_local9 = stageBackground._-JH[_arg1].getCannotHit(_local6.pointIndex);
if (_local6._-v){
_local6.setXY(_local7.x, _local7.y);
_local6.updateMask(_local8);
_local6.cannotHit = _local9;
if ((((_local12 < (_local5.length - 1))) && ((_local5[(_local12 + 1)].pointIndex > (_local6.pointIndex + _local4))))){
pushBalls(_arg1, (_local12 + 1), 0);
return;
};
} else {
_local10 = _-CQ.getTimer();
if ((_local10 - _local6._-7w) >= _-Fz._-JV){
_local6._-v = true;
_local6.setXY(_local7.x, _local7.y);
_local6.updateMask(_local8);
_local6.cannotHit = _local9;
if ((((_local12 < (_local5.length - 1))) && ((_local5[(_local12 + 1)].pointIndex <= (_local6.pointIndex + _local4))))){
pushBalls(_arg1, (_local12 + 1), ((_local6.pointIndex + _local4) - _local5[(_local12 + 1)].pointIndex));
};
_-Cz(_arg1, _local12, 0);
return;
} else {
_local11 = ((_local10 - _local6._-7w) / _-Fz._-JV);
_local6.setXY(((_local6._-Dh * (1 - _local11)) + (_local7.x * _local11)), ((_local6._-Cg * (1 - _local11)) + (_local7.y * _local11)));
_local6.updateMask(_local8);
_local6.cannotHit = _local9;
if ((((_local12 < (_local5.length - 1))) && ((_local5[(_local12 + 1)].pointIndex <= (_local6.pointIndex + (_local4 * _local11)))))){
pushBalls(_arg1, (_local12 + 1), ((_local6.pointIndex + (_local4 * _local11)) - _local5[(_local12 + 1)].pointIndex));
};
return;
};
};
_local12++;
};
}
private function _-6M(_arg1:Number):void{
var _local2:_-OG = new _-OG();
if (ballLines[_arg1].length == 0){
_local2.initialize(Math.floor((Math.random() * noOfBallTypes)));
_local2.pointIndex = 0;
} else {
_local2.initialize(((Math.random() < _-Fz._-Nj)) ? ballLines[_arg1][0].type : Math.floor((Math.random() * noOfBallTypes)));
_local2.pointIndex = (ballLines[_arg1][0].pointIndex - stageBackground._-JH[_arg1].ballSpacing);
};
_local2._-v = true;
ballsHolder.addChild(_local2);
ballLines[_arg1].unshift(_local2);
_-B3++;
}
private function _-Cz(_arg1:Number, _arg2:Number, _arg3:Number):void{
var _local9:_-0m;
var _local11:*;
var _local4:Number = stageBackground._-JH[_arg1].connectedBallSpacing;
var _local5:Array = ballLines[_arg1];
var _local6:Number = _local5[_arg2].type;
var _local7:Number = _arg2;
var _local8:Number = _arg2;
var _local10:Number = 0;
_local11 = (_arg2 - 1);
while (_local11 >= 0) {
if (_local5[_local11].type != _local6){
break;
};
if (_local5[_local11].pointIndex < (_local5[(_local11 + 1)].pointIndex - _local4)){
break;
};
_local7 = _local11;
_local11--;
};
_local11 = (_arg2 + 1);
while (_local11 < _local5.length) {
if (_local5[_local11].type != _local6){
break;
};
if (_local5[_local11].pointIndex > (_local5[(_local11 - 1)].pointIndex + _local4)){
break;
};
_local8 = _local11;
_local11++;
};
if (((_local8 - _local7) + 1) < _-Fz._-P4){
soundPut.play();
return;
};
_local10 = (_local10 + _-Fz._-4c);
if (((_local8 - _local7) + 1) > _-Fz._-P4){
_local10 = (_local10 + ((((_local8 - _local7) + 1) - _-Fz._-P4) * _-Fz._-2r));
};
_local10 = (_local10 + (_arg3 * _-Fz._-Hv));
score = (score + _local10);
lastDestroyPointIndexes[_arg1] = _local5[_local8].pointIndex;
_local11 = _local7;
while (_local11 <= _local8) {
addExplode(_local5[_local11].x, _local5[_local11].y, _local5[_local11].type);
_local5[_local11].destroy();
_local11++;
};
_local5.splice(_local7, ((_local8 - _local7) + 1));
if ((((_local7 > 0)) && ((_local7 < _local5.length)))){
_local9 = new _-0m(_arg1, _local5[(_local7 - 1)], (_arg3 + 1));
_local11 = 0;
while (_local11 < _-f.length) {
if (_-f[_local11].lineIndex > _arg1){
break;
};
if (_-f[_local11].lineIndex < _arg1){
} else {
if (_-RI(_arg1, _-f[_local11].ball) > (_local7 - 1)){
break;
};
};
_local11++;
};
_-f.splice(_local11, 0, _local9);
};
checkRemainingTypes();
if (_arg3 == 0){
_-Ly.play();
};
}
private function _-RI(_arg1:Number, _arg2:_-OG):Number{
var _local4:*;
var _local3:Array = ballLines[_arg1];
_local4 = 0;
while (_local4 < _local3.length) {
if (_local3[_local4] == _arg2){
return (_local4);
};
_local4++;
};
return (-1);
}
private function dropBalls(_arg1:Number):void{
var _local2:Number;
var _local3:Array;
var _local4:Number;
var _local5:Number;
var _local6:Boolean;
var _local7:Number;
var _local8:Number;
var _local9:Point;
var _local10:String;
var _local11:Boolean;
var _local12:Array;
var _local13:*;
var _local14:*;
if (_-f.length == 0){
return;
};
_local13 = 0;
while (_local13 < _-f.length) {
_local2 = _-f[_local13].lineIndex;
_local4 = _-RI(_local2, _-f[_local13].ball);
if ((((_local4 == -1)) || ((_-f[_local13].ballIndex >= (ballLines[_local2].length - 1))))){
_-f.splice(_local13, 1);
_local13--;
} else {
_-f[_local13].ballIndex = _local4;
};
_local13++;
};
_local12 = new Array();
_local13 = 0;
while (_local13 < _-f.length) {
_local6 = false;
_local2 = _-f[_local13].lineIndex;
_local3 = ballLines[_local2];
_-f[_local13].speed = (_-f[_local13].speed + (_-Fz._-EH * _arg1));
_local5 = ((_-f[_local13].speed * _arg1) / stageBackground._-JH[_local2].ballSpacing);
_local7 = (_-f[_local13].ballIndex + 1);
if (_local13 < (_-f.length - 1)){
if (_-f[(_local13 + 1)].lineIndex != _local2){
_local8 = _local3.length;
} else {
_local8 = (_-f[(_local13 + 1)].ballIndex + 1);
};
} else {
_local8 = _local3.length;
};
if ((_local3[_local7].pointIndex - _local5) <= (_local3[(_local7 - 1)].pointIndex + stageBackground._-JH[_local2].ballSpacing)){
_local5 = ((_local3[_local7].pointIndex - _local3[(_local7 - 1)].pointIndex) - stageBackground._-JH[_local2].ballSpacing);
_local6 = true;
};
_local14 = _local7;
while (_local14 < _local8) {
_local3[_local14].pointIndex = (_local3[_local14].pointIndex - _local5);
_local9 = stageBackground._-JH[_local2].getXY(_local3[_local14].pointIndex);
_local10 = stageBackground._-JH[_local2].getMask(_local3[_local14].pointIndex);
_local11 = stageBackground._-JH[_local2].getCannotHit(_local3[_local14].pointIndex);
_local3[_local14].setXY(_local9.x, _local9.y);
_local3[_local14].updateMask(_local10);
_local3[_local14].cannotHit = _local11;
_local14++;
};
if (_local6){
_local12.push(_-f[_local13]);
_-f.splice(_local13, 1);
_local13--;
};
_local13++;
};
_local13 = 0;
while (_local13 < _local12.length) {
_local2 = _local12[_local13].lineIndex;
_local4 = _-RI(_local2, _local12[_local13].ball);
if (ballLines[_local2][(_local4 + 1)].type == ballLines[_local2][_local4].type){
_-JG[(_local12[_local13].combo - 1)].play();
_-Cz(_local2, _local4, _local12[_local13].combo);
};
_local13++;
};
}
private function addExplode(_arg1:Number, _arg2:Number, _arg3:int):void{
_-30 = _arg3;
var _local4:Explode = new Explode(_arg3);
_local4.x = _arg1;
_local4.y = _arg2;
explodesHolder.addChild(_local4);
explodes.push(_local4);
}
private function moveExplodes(_arg1:Number):void{
var _local2:*;
_local2 = 0;
while (_local2 < explodes.length) {
if (explodes[_local2].move(_arg1)){
explodesHolder.removeChild(explodes[_local2]);
explodes.splice(_local2, 1);
_local2--;
};
_local2++;
};
}
private function checkRemainingTypes():void{
var _local1:Array;
var _local2:Array;
var _local3:*;
var _local4:*;
if (_-B3 < _-0A){
return;
};
_local1 = new Array();
_local3 = 0;
while (_local3 < ballLines.length) {
_local4 = 0;
while (_local4 < ballLines[_local3].length) {
_local1[ballLines[_local3][_local4].type] = true;
_local4++;
};
_local3++;
};
_local2 = new Array();
_local3 = 0;
while (_local3 < _local1.length) {
if (_local1[_local3]){
_local2.push(_local3);
};
_local3++;
};
if (_local2.length > 0){
cannonBg.setPossibleBallTypes(_local2);
};
}
private function _-Rl():void{
var _local2:*;
var _local1:Boolean;
_local2 = 0;
while (_local2 < ballLines.length) {
if (ballLines[_local2].length == 0){
} else {
_local1 = false;
if (ballLines[_local2][(ballLines[_local2].length - 1)].pointIndex >= (stageBackground._-JH[_local2].points.length - 1)){
showLose();
return;
};
};
_local2++;
};
if (_local1){
showWin();
};
}
private function showWin():void{
var _local1:Number;
var _local2:Number;
var _local3:Number;
var _local4:Number;
var _local5:*;
var _local6:_-Na;
var _local7:Point;
var _local8:*;
var _local9:*;
_-F2.stop();
_-Ke = true;
destroyShootingBalls();
starLines = new Array();
_local8 = 0;
while (_local8 < lastDestroyPointIndexes.length) {
_local1 = (((stageBackground._-JH[_local8].points.length - 1) - lastDestroyPointIndexes[_local8]) * stageBackground._-JH[_local8].maxPointSpacing);
_local2 = (Math.floor((_local1 / _-Fz._-NN)) + 1);
_local3 = (_-Fz._-NN / stageBackground._-JH[_local8].maxPointSpacing);
starLines[_local8] = new Array();
_local9 = 0;
while (_local9 < _local2) {
_local6 = new _-Na();
_local7 = stageBackground._-JH[_local8].getXY(((stageBackground._-JH[_local8].points.length - 1) - (_local9 * _local3)));
_local6.initialize(((_local2 - _local9) - 1), _local7.x, _local7.y, _-30);
starsHolder.addChild(_local6);
starLines[_local8].push(_local6);
_local9++;
};
_local8++;
};
soundStarChannel = soundStar.play(0, 2147483647);
_-3E = _-CQ.getTimer();
_-F2 = new _-CQ(1, 0);
_-F2.addEventListener(TimerEvent.TIMER, _-J);
_-F2.start();
}
private function showLose():void{
_-F2.stop();
_-4K = true;
destroyShootingBalls();
_-Qt.play();
_-3E = _-CQ.getTimer();
_-F2 = new _-CQ(1, 0);
_-F2.addEventListener(TimerEvent.TIMER, _-29);
_-F2.start();
}
private function destroyShootingBalls():void{
var _local1:*;
_local1 = 0;
while (_local1 < _-z.length) {
addExplode(_-z[_local1].x, _-z[_local1].y, _-z[_local1].type);
_-z[_local1].destroy();
_local1++;
};
_-z = new Array();
}
private function _-29(_arg1:TimerEvent):void{
var _local5:*;
var _local6:*;
var _local2:Number = _-CQ.getTimer();
var _local3:Number = ((_local2 - _-3E) / 1000);
var _local4:Boolean;
moveExplodes(_local3);
_local5 = 0;
while (_local5 < ballLines.length) {
pushBalls(_local5, 0, ((_-Fz._-Pf * _local3) / stageBackground._-JH[_local5].maxPointSpacing));
_local6 = 0;
while (_local6 < ballLines[_local5].length) {
if (ballLines[_local5][_local6].pointIndex >= (stageBackground._-JH[_local5].points.length - 1)){
ballLines[_local5][_local6].destroy();
ballLines[_local5].splice(_local6, 1);
_local6--;
};
_local6++;
};
if (ballLines[_local5].length > 0){
_local4 = false;
};
_local5++;
};
_-3E = _local2;
if (_local4){
_-F2.stop();
_-CH.removeEventListener(KeyboardEvent.KEY_DOWN, onKeyDownEvent);
dialog._-3q();
_-F2 = new _-CQ(_-Fz._-I, 1);
_-F2.addEventListener(TimerEvent.TIMER, showPlayAgain);
_-F2.start();
Object(parent).stopGameMusic();
soundGameOver.play();
};
_arg1.updateAfterEvent();
}
private function _-J(_arg1:TimerEvent):void{
var _local5:Boolean;
var _local6:*;
var _local7:*;
var _local2:Number = _-CQ.getTimer();
var _local3:Number = ((_local2 - _-3E) / 1000);
var _local4:Boolean;
moveExplodes(_local3);
_local6 = 0;
while (_local6 < starLines.length) {
_local7 = 0;
while (_local7 < starLines[_local6].length) {
_local5 = starLines[_local6][_local7].visible;
if (!starLines[_local6][_local7].move(_local2)){
_local4 = false;
if (((!(_local5)) && (starLines[_local6][_local7].visible))){
score = (score + _-Fz._-7D);
};
} else {
starsHolder.removeChild(starLines[_local6][_local7]);
starLines[_local6].splice(_local7, 1);
_local7--;
};
_local7++;
};
_local6++;
};
_-3E = _local2;
if (_local4){
_-F2.stop();
soundStarChannel.stop();
dialog._-DK();
soundWin.play();
_-F2 = new _-CQ(_-Fz._-Du, 0);
_-F2.addEventListener(TimerEvent.TIMER, _-Kf);
_-F2.start();
};
_arg1.updateAfterEvent();
}
private function _-Kf(_arg1:TimerEvent):void{
_-F2.stop();
dialog.hide();
if (currentBackground >= _-Fz._-I3){
startLevel((_-K5 + 1), 1);
} else {
startLevel(_-K5, (currentBackground + 1));
};
}
private function showPlayAgain(_arg1:TimerEvent):void{
dialog.showPlayAgain({score:__score.value, level:(((_-K5 - 1) * _-Fz._-I3) + currentBackground)});
}
override public function destroyGame():void{
_-F2.stop();
bottomObyoButton.removeEventListener(MouseEvent.CLICK, onBottomObyoButtonClick);
}
function frame1(){
}
}
}//package com.novelgames.flashgames.marble
Section 76
//SoundCombo1 (com.novelgames.flashgames.marble.SoundCombo1)
package com.novelgames.flashgames.marble {
import com.novelgames.flashgames.common.*;
public dynamic class SoundCombo1 extends _-6P {
}
}//package com.novelgames.flashgames.marble
Section 77
//SoundCombo3 (com.novelgames.flashgames.marble.SoundCombo3)
package com.novelgames.flashgames.marble {
import com.novelgames.flashgames.common.*;
public dynamic class SoundCombo3 extends _-6P {
}
}//package com.novelgames.flashgames.marble
Section 78
//StageBackground (com.novelgames.flashgames.marble.StageBackground)
package com.novelgames.flashgames.marble {
import flash.display.*;
public dynamic class StageBackground extends MovieClip {
public var ball0:_-OG;
public var ball1:_-OG;
public var _-2u:_-7G;
public var cannon:Cannon;
public var _-JH:Array;
public function StageBackground(){
stop();
}
public function initialize():void{
var _local2:*;
var _local1:Array = new Array();
_local2 = 0;
while (this[("ball" + _local2)]) {
_local1[_local2] = this[("ball" + _local2)];
_local1[_local2].visible = false;
_local2++;
};
_-JH = new Array();
_local2 = 0;
while (_local2 < _local1.length) {
_-JH.push(new _-De());
_local2++;
};
gotoAndStop(1);
while (true) {
_local2 = 0;
while (_local2 < _local1.length) {
_-JH[_local2].addPoint(_local1[_local2].x, _local1[_local2].y);
_local2++;
};
if (this.currentFrame >= this.totalFrames){
break;
};
this.nextFrame();
};
_local2 = 0;
while (_local2 < _local1.length) {
_-JH[_local2].updateBallSpacing();
_local2++;
};
this.cacheAsBitmap = true;
}
}
}//package com.novelgames.flashgames.marble
Section 79
//StageBackground0 (com.novelgames.flashgames.marble.StageBackground0)
package com.novelgames.flashgames.marble {
public dynamic class StageBackground0 extends StageBackground {
}
}//package com.novelgames.flashgames.marble
Section 80
//StageBackground1 (com.novelgames.flashgames.marble.StageBackground1)
package com.novelgames.flashgames.marble {
public dynamic class StageBackground1 extends StageBackground {
}
}//package com.novelgames.flashgames.marble
Section 81
//StageBackground2 (com.novelgames.flashgames.marble.StageBackground2)
package com.novelgames.flashgames.marble {
public dynamic class StageBackground2 extends StageBackground {
}
}//package com.novelgames.flashgames.marble
Section 82
//StageBackground3 (com.novelgames.flashgames.marble.StageBackground3)
package com.novelgames.flashgames.marble {
public dynamic class StageBackground3 extends StageBackground {
}
}//package com.novelgames.flashgames.marble
Section 83
//StageBackground4 (com.novelgames.flashgames.marble.StageBackground4)
package com.novelgames.flashgames.marble {
public dynamic class StageBackground4 extends StageBackground {
}
}//package com.novelgames.flashgames.marble
Section 84
//StageBackground5 (com.novelgames.flashgames.marble.StageBackground5)
package com.novelgames.flashgames.marble {
public dynamic class StageBackground5 extends StageBackground {
}
}//package com.novelgames.flashgames.marble
Section 85
//StageBackground6 (com.novelgames.flashgames.marble.StageBackground6)
package com.novelgames.flashgames.marble {
public dynamic class StageBackground6 extends StageBackground {
}
}//package com.novelgames.flashgames.marble
Section 86
//StageMask1_0 (com.novelgames.flashgames.marble.StageMask1_0)
package com.novelgames.flashgames.marble {
import flash.display.*;
public dynamic class StageMask1_0 extends MovieClip {
}
}//package com.novelgames.flashgames.marble
Section 87
//StageMask1_1 (com.novelgames.flashgames.marble.StageMask1_1)
package com.novelgames.flashgames.marble {
import flash.display.*;
public dynamic class StageMask1_1 extends MovieClip {
}
}//package com.novelgames.flashgames.marble
Section 88
//AdjustColor (fl.motion.AdjustColor)
package fl.motion {
public class AdjustColor {
private var m_brightnessMatrix:ColorMatrix;
private var m_contrastMatrix:ColorMatrix;
private var m_saturationMatrix:ColorMatrix;
private var m_hueMatrix:ColorMatrix;
private var m_finalMatrix:ColorMatrix;
private static var s_arrayOfDeltaIndex:Array = [0, 0.01, 0.02, 0.04, 0.05, 0.06, 0.07, 0.08, 0.1, 0.11, 0.12, 0.14, 0.15, 0.16, 0.17, 0.18, 0.2, 0.21, 0.22, 0.24, 0.25, 0.27, 0.28, 0.3, 0.32, 0.34, 0.36, 0.38, 0.4, 0.42, 0.44, 0.46, 0.48, 0.5, 0.53, 0.56, 0.59, 0.62, 0.65, 0.68, 0.71, 0.74, 0.77, 0.8, 0.83, 0.86, 0.89, 0.92, 0.95, 0.98, 1, 1.06, 1.12, 1.18, 1.24, 1.3, 1.36, 1.42, 1.48, 1.54, 1.6, 1.66, 1.72, 1.78, 1.84, 1.9, 1.96, 2, 2.12, 2.25, 2.37, 2.5, 2.62, 2.75, 2.87, 3, 3.2, 3.4, 3.6, 3.8, 4, 4.3, 4.7, 4.9, 5, 5.5, 6, 6.5, 6.8, 7, 7.3, 7.5, 7.8, 8, 8.4, 8.7, 9, 9.4, 9.6, 9.8, 10];
public function set brightness(_arg1:Number):void{
if (this.m_brightnessMatrix == null){
this.m_brightnessMatrix = new ColorMatrix();
};
if (_arg1 != 0){
this.m_brightnessMatrix.SetBrightnessMatrix(_arg1);
};
}
public function set contrast(_arg1:Number):void{
var _local2:Number = _arg1;
if (_arg1 == 0){
_local2 = 127;
} else {
if (_arg1 > 0){
_local2 = ((s_arrayOfDeltaIndex[int(_arg1)] * 127) + 127);
} else {
_local2 = (((_arg1 / 100) * 127) + 127);
};
};
if (this.m_contrastMatrix == null){
this.m_contrastMatrix = new ColorMatrix();
};
this.m_contrastMatrix.SetContrastMatrix(_local2);
}
public function set saturation(_arg1:Number):void{
var _local2:Number = _arg1;
if (_arg1 == 0){
_local2 = 1;
} else {
if (_arg1 > 0){
_local2 = (1 + ((3 * _arg1) / 100));
} else {
_local2 = ((_arg1 / 100) + 1);
};
};
if (this.m_saturationMatrix == null){
this.m_saturationMatrix = new ColorMatrix();
};
this.m_saturationMatrix.SetSaturationMatrix(_local2);
}
public function set hue(_arg1:Number):void{
if (this.m_hueMatrix == null){
this.m_hueMatrix = new ColorMatrix();
};
if (_arg1 != 0){
this.m_hueMatrix.SetHueMatrix(((_arg1 * Math.PI) / 180));
};
}
public function AllValuesAreSet():Boolean{
return (((((((this.m_brightnessMatrix) && (this.m_contrastMatrix))) && (this.m_saturationMatrix))) && (this.m_hueMatrix)));
}
public function CalculateFinalFlatArray():Array{
if (this.CalculateFinalMatrix()){
return (this.m_finalMatrix.GetFlatArray());
};
return (null);
}
private function CalculateFinalMatrix():Boolean{
if (!this.AllValuesAreSet()){
return (false);
};
this.m_finalMatrix = new ColorMatrix();
this.m_finalMatrix.Multiply(this.m_brightnessMatrix);
this.m_finalMatrix.Multiply(this.m_contrastMatrix);
this.m_finalMatrix.Multiply(this.m_saturationMatrix);
this.m_finalMatrix.Multiply(this.m_hueMatrix);
return (true);
}
}
}//package fl.motion
Section 89
//ColorMatrix (fl.motion.ColorMatrix)
package fl.motion {
public class ColorMatrix extends DynamicMatrix {
protected static const LUMINANCER:Number = 0.3086;
protected static const LUMINANCEG:Number = 0.6094;
protected static const LUMINANCEB:Number = 0.082;
public function ColorMatrix(){
super(5, 5);
LoadIdentity();
}
public function SetBrightnessMatrix(_arg1:Number):void{
if (!m_matrix){
return;
};
m_matrix[0][4] = _arg1;
m_matrix[1][4] = _arg1;
m_matrix[2][4] = _arg1;
}
public function SetContrastMatrix(_arg1:Number):void{
if (!m_matrix){
return;
};
var _local2:Number = (0.5 * (127 - _arg1));
_arg1 = (_arg1 / 127);
m_matrix[0][0] = _arg1;
m_matrix[1][1] = _arg1;
m_matrix[2][2] = _arg1;
m_matrix[0][4] = _local2;
m_matrix[1][4] = _local2;
m_matrix[2][4] = _local2;
}
public function SetSaturationMatrix(_arg1:Number):void{
if (!m_matrix){
return;
};
var _local2:Number = (1 - _arg1);
var _local3:Number = (_local2 * LUMINANCER);
m_matrix[0][0] = (_local3 + _arg1);
m_matrix[1][0] = _local3;
m_matrix[2][0] = _local3;
_local3 = (_local2 * LUMINANCEG);
m_matrix[0][1] = _local3;
m_matrix[1][1] = (_local3 + _arg1);
m_matrix[2][1] = _local3;
_local3 = (_local2 * LUMINANCEB);
m_matrix[0][2] = _local3;
m_matrix[1][2] = _local3;
m_matrix[2][2] = (_local3 + _arg1);
}
public function SetHueMatrix(_arg1:Number):void{
var _local11:int;
if (!m_matrix){
return;
};
LoadIdentity();
var _local2:DynamicMatrix = new DynamicMatrix(3, 3);
var _local3:DynamicMatrix = new DynamicMatrix(3, 3);
var _local4:DynamicMatrix = new DynamicMatrix(3, 3);
var _local5:Number = Math.cos(_arg1);
var _local6:Number = Math.sin(_arg1);
var _local7:Number = 0.213;
var _local8:Number = 0.715;
var _local9:Number = 0.072;
_local2.SetValue(0, 0, _local7);
_local2.SetValue(1, 0, _local7);
_local2.SetValue(2, 0, _local7);
_local2.SetValue(0, 1, _local8);
_local2.SetValue(1, 1, _local8);
_local2.SetValue(2, 1, _local8);
_local2.SetValue(0, 2, _local9);
_local2.SetValue(1, 2, _local9);
_local2.SetValue(2, 2, _local9);
_local3.SetValue(0, 0, (1 - _local7));
_local3.SetValue(1, 0, -(_local7));
_local3.SetValue(2, 0, -(_local7));
_local3.SetValue(0, 1, -(_local8));
_local3.SetValue(1, 1, (1 - _local8));
_local3.SetValue(2, 1, -(_local8));
_local3.SetValue(0, 2, -(_local9));
_local3.SetValue(1, 2, -(_local9));
_local3.SetValue(2, 2, (1 - _local9));
_local3.MultiplyNumber(_local5);
_local4.SetValue(0, 0, -(_local7));
_local4.SetValue(1, 0, 0.143);
_local4.SetValue(2, 0, -((1 - _local7)));
_local4.SetValue(0, 1, -(_local8));
_local4.SetValue(1, 1, 0.14);
_local4.SetValue(2, 1, _local8);
_local4.SetValue(0, 2, (1 - _local9));
_local4.SetValue(1, 2, -0.283);
_local4.SetValue(2, 2, _local9);
_local4.MultiplyNumber(_local6);
_local2.Add(_local3);
_local2.Add(_local4);
var _local10:int;
while (_local10 < 3) {
_local11 = 0;
while (_local11 < 3) {
m_matrix[_local10][_local11] = _local2.GetValue(_local10, _local11);
_local11++;
};
_local10++;
};
}
public function GetFlatArray():Array{
var _local4:int;
if (!m_matrix){
return (null);
};
var _local1:Array = new Array();
var _local2:int;
var _local3:int;
while (_local3 < 4) {
_local4 = 0;
while (_local4 < 5) {
_local1[_local2] = m_matrix[_local3][_local4];
_local2++;
_local4++;
};
_local3++;
};
return (_local1);
}
}
}//package fl.motion
class XFormData {
public var ox:Number;
public var oy:Number;
public var oz:Number;
private function XFormData(){
}
}
Section 90
//DynamicMatrix (fl.motion.DynamicMatrix)
package fl.motion {
public class DynamicMatrix {
protected var m_width:int;
protected var m_height:int;
protected var m_matrix:Array;
public static const MATRIX_ORDER_PREPEND:int = 0;
public static const MATRIX_ORDER_APPEND:int = 1;
public function DynamicMatrix(_arg1:int, _arg2:int){
this.Create(_arg1, _arg2);
}
protected function Create(_arg1:int, _arg2:int):void{
var _local3:int;
var _local4:int;
if ((((_arg1 > 0)) && ((_arg2 > 0)))){
this.m_width = _arg1;
this.m_height = _arg2;
this.m_matrix = new Array(_arg2);
_local3 = 0;
while (_local3 < _arg2) {
this.m_matrix[_local3] = new Array(_arg1);
_local4 = 0;
while (_local4 < _arg2) {
this.m_matrix[_local3][_local4] = 0;
_local4++;
};
_local3++;
};
};
}
protected function Destroy():void{
this.m_matrix = null;
}
public function GetWidth():Number{
return (this.m_width);
}
public function GetHeight():Number{
return (this.m_height);
}
public function GetValue(_arg1:int, _arg2:int):Number{
var _local3:Number = 0;
if ((((((((_arg1 >= 0)) && ((_arg1 < this.m_height)))) && ((_arg2 >= 0)))) && ((_arg2 <= this.m_width)))){
_local3 = this.m_matrix[_arg1][_arg2];
};
return (_local3);
}
public function SetValue(_arg1:int, _arg2:int, _arg3:Number):void{
if ((((((((_arg1 >= 0)) && ((_arg1 < this.m_height)))) && ((_arg2 >= 0)))) && ((_arg2 <= this.m_width)))){
this.m_matrix[_arg1][_arg2] = _arg3;
};
}
public function LoadIdentity():void{
var _local1:int;
var _local2:int;
if (this.m_matrix){
_local1 = 0;
while (_local1 < this.m_height) {
_local2 = 0;
while (_local2 < this.m_width) {
if (_local1 == _local2){
this.m_matrix[_local1][_local2] = 1;
} else {
this.m_matrix[_local1][_local2] = 0;
};
_local2++;
};
_local1++;
};
};
}
public function LoadZeros():void{
var _local1:int;
var _local2:int;
if (this.m_matrix){
_local1 = 0;
while (_local1 < this.m_height) {
_local2 = 0;
while (_local2 < this.m_width) {
this.m_matrix[_local1][_local2] = 0;
_local2++;
};
_local1++;
};
};
}
public function Multiply(_arg1:DynamicMatrix, _arg2:int=0):Boolean{
var _local5:DynamicMatrix;
var _local6:int;
var _local7:int;
var _local8:Number;
var _local9:int;
var _local10:int;
if (((!(this.m_matrix)) || (!(_arg1)))){
return (false);
};
var _local3:int = _arg1.GetHeight();
var _local4:int = _arg1.GetWidth();
if (_arg2 == MATRIX_ORDER_APPEND){
if (this.m_width != _local3){
return (false);
};
_local5 = new DynamicMatrix(_local4, this.m_height);
_local6 = 0;
while (_local6 < this.m_height) {
_local7 = 0;
while (_local7 < _local4) {
_local8 = 0;
_local9 = 0;
_local10 = 0;
while ((((_local9 < Math.max(this.m_height, _local3))) && ((_local10 < Math.max(this.m_width, _local4))))) {
_local8 = (_local8 + (_arg1.GetValue(_local9, _local7) * this.m_matrix[_local6][_local10]));
_local9++;
_local10++;
};
_local5.SetValue(_local6, _local7, _local8);
_local7++;
};
_local6++;
};
this.Destroy();
this.Create(_local4, this.m_height);
_local6 = 0;
while (_local6 < _local3) {
_local7 = 0;
while (_local7 < this.m_width) {
this.m_matrix[_local6][_local7] = _local5.GetValue(_local6, _local7);
_local7++;
};
_local6++;
};
} else {
if (this.m_height != _local4){
return (false);
};
_local5 = new DynamicMatrix(this.m_width, _local3);
_local6 = 0;
while (_local6 < _local3) {
_local7 = 0;
while (_local7 < this.m_width) {
_local8 = 0;
_local9 = 0;
_local10 = 0;
while ((((_local9 < Math.max(_local3, this.m_height))) && ((_local10 < Math.max(_local4, this.m_width))))) {
_local8 = (_local8 + (this.m_matrix[_local9][_local7] * _arg1.GetValue(_local6, _local10)));
_local9++;
_local10++;
};
_local5.SetValue(_local6, _local7, _local8);
_local7++;
};
_local6++;
};
this.Destroy();
this.Create(this.m_width, _local3);
_local6 = 0;
while (_local6 < _local3) {
_local7 = 0;
while (_local7 < this.m_width) {
this.m_matrix[_local6][_local7] = _local5.GetValue(_local6, _local7);
_local7++;
};
_local6++;
};
};
return (true);
}
public function MultiplyNumber(_arg1:Number):Boolean{
var _local3:int;
var _local4:Number;
if (!this.m_matrix){
return (false);
};
var _local2:int;
while (_local2 < this.m_height) {
_local3 = 0;
while (_local3 < this.m_width) {
_local4 = 0;
_local4 = (this.m_matrix[_local2][_local3] * _arg1);
this.m_matrix[_local2][_local3] = _local4;
_local3++;
};
_local2++;
};
return (true);
}
public function Add(_arg1:DynamicMatrix):Boolean{
var _local5:int;
var _local6:Number;
if (((!(this.m_matrix)) || (!(_arg1)))){
return (false);
};
var _local2:int = _arg1.GetHeight();
var _local3:int = _arg1.GetWidth();
if (((!((this.m_width == _local3))) || (!((this.m_height == _local2))))){
return (false);
};
var _local4:int;
while (_local4 < this.m_height) {
_local5 = 0;
while (_local5 < this.m_width) {
_local6 = 0;
_local6 = (this.m_matrix[_local4][_local5] + _arg1.GetValue(_local4, _local5));
this.m_matrix[_local4][_local5] = _local6;
_local5++;
};
_local4++;
};
return (true);
}
}
}//package fl.motion
Section 91
//_-Ac (gos.common._-Ac)
package gos.common {
import _-Cb.*;
public class _-Ac {
public static function md5(_arg1:String):String{
return (new MD5().calculate(_arg1));
}
public static function rc4EncryptHex(_arg1:String, _arg2:String):String{
return (hexEncode(rc4Encrypt(_arg1, _arg2)));
}
public static function rc4DecryptHex(_arg1:String, _arg2:String):String{
return (rc4Encrypt(_arg1, hexDecode(_arg2)));
}
public static function rc4Encrypt(_arg1:String, _arg2:String):String{
var _local4:int;
var _local6:int;
var _local3:Array = new Array();
_local4 = 0;
while (_local4 < 0x0100) {
_local3[_local4] = _local4;
_local4++;
};
var _local5:int;
_local4 = 0;
while (_local4 < 0x0100) {
_local5 = (((_local5 + _local3[_local4]) + _arg1.charCodeAt((_local4 % _arg1.length))) % 0x0100);
_local6 = _local3[_local4];
_local3[_local4] = _local3[_local5];
_local3[_local5] = _local6;
_local4++;
};
_local4 = 0;
_local5 = 0;
var _local7 = "";
var _local8:int;
while (_local8 < _arg2.length) {
_local4 = ((_local4 + 1) % 0x0100);
_local5 = ((_local5 + _local3[_local4]) % 0x0100);
_local6 = _local3[_local4];
_local3[_local4] = _local3[_local5];
_local3[_local5] = _local6;
_local7 = (_local7 + String.fromCharCode((_arg2.charCodeAt(_local8) ^ _local3[((_local3[_local4] + _local3[_local5]) % 0x0100)])));
_local8++;
};
return (_local7);
}
public static function rc4Decrypt(_arg1:String, _arg2:String):String{
return (rc4Encrypt(_arg1, _arg2));
}
public static function hexEncode(_arg1:String):String{
var _local4:int;
var _local2 = "0123456789abcdef";
var _local3:Array = new Array();
_local4 = 0;
while (_local4 < 0x0100) {
_local3[_local4] = (_local2.charAt((_local4 >> 4)) + _local2.charAt((_local4 & 15)));
_local4++;
};
var _local5:Array = new Array();
_local4 = 0;
while (_local4 < _arg1.length) {
_local5[_local4] = _local3[_arg1.charCodeAt(_local4)];
_local4++;
};
return (_local5.join(""));
}
public static function hexDecode(_arg1:String):String{
var _local4:int;
var _local2 = "0123456789abcdef";
var _local3:Array = new Array();
_local4 = 0;
while (_local4 < 0x0100) {
_local3[(_local2.charAt((_local4 >> 4)) + _local2.charAt((_local4 & 15)))] = String.fromCharCode(_local4);
_local4++;
};
if (!_arg1.match(/^[a-f0-9]*$/i)){
return (null);
};
if ((_arg1.length % 2)){
_arg1 = ("0" + _arg1);
};
var _local5:Array = new Array();
var _local6:int;
_local4 = 0;
while (_local4 < _arg1.length) {
var _temp1 = _local6;
_local6 = (_local6 + 1);
var _local7 = _temp1;
_local5[_local7] = _local3[_arg1.substr(_local4, 2)];
_local4 = (_local4 + 2);
};
return (_local5.join(""));
}
}
}//package gos.common
Section 92
//_-Dm (gos.common._-Dm)
package gos.common {
import flash.display.*;
import flash.utils.*;
import flash.text.*;
public class _-Dm {
public static var _-PE:Boolean = false;
public static var _-An:Boolean = false;
public static var _-7p:Boolean = false;
private static var _-QN:Stage = null;
private static var _-6s:MovieClip = null;
private static var textBox:TextField = null;
public static function set stage(_arg1:Stage):void{
_-QN = _arg1;
}
private static function _-N(_arg1:String):void{
trace(_arg1);
if (_-QN != null){
initMessageBox();
textBox.appendText((_arg1 + "\n"));
};
}
private static function initMessageBox():void{
var _local1:TextFormat;
if (_-6s == null){
_local1 = new TextFormat();
_local1.color = 0;
_local1.font = "Tahoma";
_local1.size = 12;
textBox = new TextField();
textBox.text = "";
textBox.x = 0;
textBox.y = 0;
textBox.width = 500;
textBox.height = 400;
textBox.scrollH = textBox.maxScrollH;
textBox.setTextFormat(_local1);
_-6s = new MovieClip();
_-6s.addChild(textBox);
_-QN.addChild(_-6s);
};
_-QN.addChildAt(_-6s, _-QN.numChildren);
}
public static function debug(_arg1:String, _arg2:Object=null):void{
if (_-PE){
_-N((("d| " + _arg1) + (_arg2) ? objectName(_arg2) : ""));
};
}
public static function _-QK(_arg1:String, _arg2:Object=null):void{
if (_-An){
_-N((("i| " + _arg1) + (_arg2) ? objectName(_arg2) : ""));
};
}
public static function error(_arg1:String, _arg2:Object=null):void{
if (_-7p){
_-N((("e! " + _arg1) + (_arg2) ? objectName(_arg2) : ""));
};
}
public static function _-EE(_arg1:String, _arg2:Object=null):void{
_-N((("f! " + _arg1) + (_arg2) ? objectName(_arg2) : ""));
}
private static function objectName(_arg1):String{
return (((_arg1 is String)) ? ((" (" + _arg1) + ")") : ((" (" + getQualifiedClassName(_arg1)) + ")"));
}
public static function closeTrace():void{
debugLevel(false, false, false);
}
public static function debugLevel(_arg1:Boolean=false, _arg2:Boolean=false, _arg3:Boolean=false):void{
_-An = _arg1;
_-7p = _arg2;
_-PE = _arg3;
}
}
}//package gos.common
Section 93
//_-F6 (gos.common._-F6)
package gos.common {
import flash.net.*;
public class _-F6 {
public static function _-49(_arg1:String):String{
var urlParts:Array;
var url = _arg1;
try {
urlParts = url.split(/\/+/g);
if (urlParts.length > 1){
return (urlParts[1]);
} else {
urlParts[0];
};
} catch(e:Error) {
};
return (null);
}
public static function _-2b(_arg1:String, _arg2:Object):Boolean{
var _local4:int;
var _local3:String = _-49(_arg1);
if (_local3 == null){
return (false);
};
if (_arg2 == null){
return (false);
};
if ((_arg2 is String)){
_arg2 = [_arg2];
};
while (_local4 < _arg2.length) {
if ((((_local3 == _arg2[_local4])) || (_local3.match(new RegExp((("." + _arg2[_local4]) + "$")))))){
return (true);
};
_local4++;
};
return (false);
}
public static function _-8o(_arg1:String, _arg2=null, _arg3:Boolean=true):String{
var i:int;
var k:String;
var url = _arg1;
var params = _arg2;
var go = _arg3;
if (params){
url = (url + ((url.indexOf("?"))>0) ? "&" : "?");
};
if ((((params is String)) && (!((params == ""))))){
url = (url + params);
} else {
if (params != null){
i = 0;
for (k in params) {
i = (i + 1);
if (i > 0){
url = (url + "&");
};
url = (url + ((k + "=") + escape((params[k] + ""))));
};
};
};
if (go){
try {
navigateToURL(new URLRequest(url), "_blank");
} catch(e:Error) {
};
};
return (url);
}
}
}//package gos.common
Section 94
//_-Fu (gos.common._-Fu)
package gos.common {
import flash.display.*;
public class _-Fu {
public static function _-Ex(_arg1:MovieClip, _arg2:String, _arg3:String=null):int{
var _local6:FrameLabel;
var _local4:Array = _arg1.currentLabels;
var _local5:uint;
while (_local5 < _local4.length) {
_local6 = _local4[_local5];
if (_local6.name == _arg2){
return (_local6.frame);
};
_local5++;
};
return (-1);
}
public static function addFrameScript(_arg1:MovieClip, _arg2:String, _arg3:Function):Boolean{
var _local4:int = _-Ex(_arg1, _arg2);
if (_local4 >= 0){
_arg1.addFrameScript((_-Ex(_arg1, _arg2) - 1), _arg3);
return (true);
};
return (false);
}
}
}//package gos.common
Section 95
//_-LE (gos.common._-LE)
package gos.common {
import flash.display.*;
public class _-LE {
public static function callFunction(_arg1:Function, _arg2:Object):Boolean{
if (((!((_arg1 == null))) && ((_arg1 is Function)))){
_arg1(_arg2);
return (true);
};
return (false);
}
public static function isEmpty(_arg1):Boolean{
return ((((((_arg1 == null)) || ((_arg1 == undefined)))) || ((((_arg1 is String)) && ((_arg1 == ""))))));
}
public static function objectToArray(_arg1:Object):Array{
var res:Array;
var o:Object;
var obj = _arg1;
try {
res = new Array();
for (o in obj) {
res.push(obj[o]);
};
return (res);
} catch(err:Error) {
};
return (null);
}
public static function removeChild(_arg1:DisplayObjectContainer, _arg2:DisplayObject):Boolean{
var parent = _arg1;
var child = _arg2;
try {
parent.removeChild(child);
return (true);
} catch(e:Error) {
};
return (false);
}
}
}//package gos.common
Section 96
//EventTracker (gos.common.EventTracker)
package gos.common {
import flash.events.*;
public class EventTracker {
protected var _-Kk:Array;
protected var _-Dv:Array;
public function EventTracker(){
this._-Kk = new Array();
this._-Dv = new Array();
}
public function add(_arg1:EventDispatcher, _arg2:String, _arg3:Function, _arg4:Boolean=false, _arg5:Boolean=false, _arg6:int=0):void{
_arg1.addEventListener(_arg2, _arg3, _arg5, _arg6, _arg4);
this._-Kk.push({owner:_arg1, type:_arg2, func:_arg3});
}
public function removeAll():void{
while (this._-Kk.length > 0) {
this.removeEvent(this._-Kk.pop());
};
}
public function removeAllListenersOf(_arg1:EventDispatcher):void{
var _local5:*;
var _local2:Array = new Array();
var _local3:int;
while (_local3 < this._-Kk.length) {
_local5 = this._-Kk[_local3];
if (_local5["owner"] == _arg1){
this.removeEvent(_local5);
_local2.push(_local3);
};
_local3++;
};
var _local4:int = (_local2.length - 1);
while (_local4 >= 0) {
this._-Kk.splice(_local2[_local4], 1);
_local4--;
};
}
public function remove(_arg1:EventDispatcher, _arg2:String, _arg3:Function=null):Boolean{
var _local5:*;
var _local4:int;
while (_local4 < this._-Kk.length) {
_local5 = this._-Kk[_local4];
if ((((((_local5["owner"] == _arg1)) && ((_local5["type"] == _arg2)))) && ((((_arg3 == null)) || ((_local5["func"] == _arg3)))))){
this.removeEvent(_local5);
this._-Kk.splice(_local4, 1);
return (true);
};
_local4++;
};
return (false);
}
protected function removeEvent(_arg1):Boolean{
(_arg1["owner"] as EventDispatcher).removeEventListener((_arg1["type"] as String), (_arg1["func"] as Function));
return (true);
}
public function pauseAll():Boolean{
var _local1:*;
while (this._-Kk.length > 0) {
_local1 = this._-Kk.pop();
this.removeEvent(_local1);
this._-Dv.push(_local1);
};
return (true);
}
public function pauseAllListenersOf(_arg1:EventDispatcher):Boolean{
var _local5:*;
var _local2:Array = new Array();
var _local3:int;
while (_local3 < this._-Kk.length) {
_local5 = this._-Kk[_local3];
if (_local5["owner"] == _arg1){
this.removeEvent(_local5);
this._-Dv.push(_local5);
_local2.push(_local3);
};
_local3++;
};
var _local4:int = (_local2.length - 1);
while (_local4 >= 0) {
this._-Kk.splice(_local2[_local4], 1);
_local4--;
};
return (true);
}
public function resumeAll():Boolean{
var _local1:*;
while (this._-Dv.length > 0) {
_local1 = this._-Dv.pop();
this.add((_local1["owner"] as EventDispatcher), (_local1["type"] as String), (_local1["func"] as Function));
};
return (false);
}
public function resumeAllListenersOf(_arg1:EventDispatcher):Boolean{
var _local5:*;
var _local2:Array = new Array();
var _local3:int;
while (_local3 < this._-Dv.length) {
_local5 = this._-Dv[_local3];
if (_local5["owner"] == _arg1){
this.add((_local5["owner"] as EventDispatcher), (_local5["type"] as String), (_local5["func"] as Function));
_local2.push(_local3);
};
_local3++;
};
var _local4:int = (_local2.length - 1);
while (_local4 >= 0) {
this._-Dv.splice(_local2[_local4], 1);
_local4--;
};
return (true);
}
}
}//package gos.common
Section 97
//ObyoScoreService (gos.obyoAPI.serviceAPIImpl.services.ObyoScoreService)
package gos.obyoAPI.serviceAPIImpl.services {
import gos.obyoAPI.*;
import gos.serviceAPI.services.*;
import _-9-.*;
public class ObyoScoreService extends _-2U {
override public function getURLSubmitVariables(_arg1:String, _arg2:Number, _arg3:Object=null):Object{
var _local4:Object = super.getURLSubmitVariables(_arg1, _arg2, _arg3);
_local4.version = _-CJ._-4M.version;
return (_local4);
}
override protected function getURLSubmitKey():String{
return (((_-CJ._-4M.version + _-64._-Au(-352, 810)) + _-CJ._-4M.gameKey));
}
}
}//package gos.obyoAPI.serviceAPIImpl.services
Section 98
//ObyoServiceFactory (gos.obyoAPI.serviceAPIImpl.services.ObyoServiceFactory)
package gos.obyoAPI.serviceAPIImpl.services {
import gos.serviceAPI.services.*;
import _-9-.*;
public class ObyoServiceFactory extends _-7l {
public static const _-IK:String = "http://www.obyo.com";
public function ObyoServiceFactory(){
_-4p = (_-IK + "/service/gameapi.php");
_-9g = this._-Mq();
var _local1:ObyoScoreService = new ObyoScoreService();
}
private function _-Mq():String{
return (_-64._-Au(-354, 812));
}
}
}//package gos.obyoAPI.serviceAPIImpl.services
Section 99
//_-Ao (gos.obyoAPI._-Ao)
package gos.obyoAPI {
import flash.display.*;
import flash.events.*;
import gos.serviceAPI.*;
import gos.common.*;
import _-M9.*;
import flash.net.*;
import _-PA.*;
import flash.utils.*;
public class _-Ao {
protected var _-2w:DisplayObjectContainer;
protected var _gameId:String;
protected var _-84:Function;
protected var _-34:Object;
protected var _debug:Boolean;// = false
protected var _-Ax:_-9R;
protected var _-8Q:MovieClip;
protected var _-Kk:EventTracker;
protected var _animationComplete:Boolean;
protected var _-8R:Boolean;
protected var _-5J:Boolean;
protected var _-6V:Number;
protected var _-LL:Timer;
protected static var _-5H:int = 8000;
protected static var _-E-:Number = 800;
protected static var _-s:Number = 600;
public function start(_arg1:DisplayObjectContainer, _arg2:String, _arg3:Function, _arg4:Object=null):MovieClip{
var temp:Number;
var parent = _arg1;
var gameId = _arg2;
var onCompleteCallBack = _arg3;
var args = _arg4;
if (this._-Ax != null){
throw (new Error("Already showing preloader"));
};
this._-34 = ((args)==null) ? {} : args;
this._-2w = parent;
this._gameId = gameId;
this._-84 = onCompleteCallBack;
this._debug = this._-34.debug;
this._-Kk = new EventTracker();
this._animationComplete = false;
this._-8R = false;
this._-5J = false;
this._-6V = 0;
try {
temp = this._-2w.loaderInfo.width;
this.init();
} catch(e:Error) {
_-2w.addEventListener(Event.ENTER_FRAME, function (_arg1:Event):void{
_arg1.currentTarget.removeEventListener(_arg1.type, arguments.callee);
init();
});
};
return (this._-8Q);
}
protected function init():void{
this.initAssets();
this.startPreloader();
this.startTimer();
}
protected function initAssets():void{
this._-8Q = new _-Ro();
this._-2w.addChild(this._-8Q);
this._-8Q.x = (this._-2w.loaderInfo.width / 2);
this._-8Q.y = (this._-2w.loaderInfo.height / 2);
this._-HL();
this.initLoadedBar();
this._-Kk.add(this._-8Q.homeButton, MouseEvent.CLICK, this.onHomeButtonClicked);
_-Fu.addFrameScript(this._-8Q.intro, "startTransition", function ():void{
_-5J = true;
if (_debug){
trace(("entered frame 'startTransition', _loadComplete=" + _-Ax.isLoadingCompleted));
};
if (!_-Ax.isLoadingCompleted){
_-8Q.intro.stop();
};
});
_-Fu.addFrameScript(this._-8Q.intro, "end", function ():void{
if (_debug){
trace(((("entered frame 'end', _animationComplete=" + _animationComplete) + ", _timerComplete=") + _-8R));
};
_-8Q.intro.stop();
_animationComplete = true;
if (_-8R){
end();
};
});
}
private function _-HL(_arg1:Object=null):void{
var _local3:Number;
var _local4:Number;
if (_arg1 == null){
_arg1 = {};
};
var _local2:Number = (_-E- / _-s);
if (!(_arg1.width > 0)){
_arg1.width = this._-2w.loaderInfo.width;
};
if (!(_arg1.height > 0)){
_arg1.height = this._-2w.loaderInfo.height;
};
if (this._debug){
trace(((("destinationw:" + _arg1.width) + ", destinationh:") + _arg1.height));
};
_local3 = ((_arg1.height * _-E-) / _-s);
_local4 = ((_local3 * _-s) / _-E-);
if (this._debug){
trace(((("resultw1:" + _local3) + ", resulth1:") + _local4));
};
if (_local3 < _arg1.width){
_local4 = ((_arg1.width * _-s) / _-E-);
_local3 = ((_local4 * _-E-) / _-s);
};
if (this._debug){
trace(((("resultw:" + _local3) + ", resulth:") + _local4));
};
if (this._debug){
trace(((("originalw:" + this._-8Q.width) + ", originalh:") + this._-8Q.height));
};
this._-8Q.height = ((this._-8Q.height * _local4) / _-s);
this._-8Q.width = ((this._-8Q.width * _local3) / _-E-);
if (this._debug){
trace(((("finalw:" + this._-8Q.width) + ", finalh:") + this._-8Q.height));
};
}
protected function initLoadedBar():void{
this._-6V = this._-8Q.preloaderBar.loadedBar.width;
this._-8Q.preloaderBar.loadedBar.width = 0;
}
protected function startTimer():void{
var _local1:int = ((this._-34.minDuration)>0) ? this._-34.minDuration : _-5H;
this._-LL = new Timer(_local1, 1);
this._-Kk.add(this._-LL, TimerEvent.TIMER_COMPLETE, this.onTimerComplete);
this._-LL.start();
}
protected function startPreloader():void{
try {
this._-Ax = new _-9R();
this._-Ax.start(this._-2w, this.onLoadComplete, this.onLoadProgress, {debug:this._debug});
} catch(e:Error) {
if (_-34.onError){
_-34.onError();
};
onLoadComplete();
};
}
protected function startCloseKeyListener():void{
if (this._-34.closeKeyCode > 0){
this._-Kk.add(this._-2w.stage, KeyboardEvent.KEY_DOWN, function (_arg1:KeyboardEvent):void{
if (_debug){
trace(("close key code is pressed: " + _-34.closeKeyCode));
};
_-Kk.remove(_-2w.stage, KeyboardEvent.KEY_DOWN, arguments.callee);
if (_arg1.keyCode == _-34.closeKeyCode){
end();
};
});
};
}
protected function onLoadProgress(_arg1:Number, _arg2:Number, _arg3:Number):void{
if (this._debug){
trace(("onProgress loadPercent:" + _arg3));
};
this._-8Q.preloaderBar.loadedBar.width = (this._-6V * _arg3);
}
protected function onLoadComplete():void{
if (this._debug){
trace("load complete");
};
this._-Ax.destroy();
this._-8Q.preloaderBar.visible = false;
if (this._-5J){
this._-8Q.intro.play();
};
this.startCloseKeyListener();
}
protected function onTimerComplete(_arg1:Event):void{
if (this._debug){
trace("timer complete");
};
this._-Kk.remove(this._-LL, TimerEvent.TIMER_COMPLETE, this.onTimerComplete);
this._-8R = true;
if (this._animationComplete){
this.end();
};
}
protected function onHomeButtonClicked(_arg1:MouseEvent):void{
var urlRequest:URLRequest;
var e = _arg1;
try {
urlRequest = new URLRequest(((((_-4a._-6x + "/?ref=") + this._gameId) + "&refEx=") + _-4a._-QL));
navigateToURL(urlRequest, "_blank");
} catch(e:Error) {
};
}
protected function removeAssets():void{
try {
this._-8Q.intro.gotoAndStop("end");
this._-2w.removeChild(this._-8Q);
this._-8Q = null;
} catch(e:Error) {
};
}
public function end():void{
if (this._debug){
trace("close");
};
this._-84();
this.destroy();
}
protected function destroy():void{
this._-Kk.removeAll();
this.removeAssets();
this._-2w = null;
this._-34 = null;
this._gameId = null;
this._debug = false;
}
}
}//package gos.obyoAPI
Section 100
//_-CJ (gos.obyoAPI._-CJ)
package gos.obyoAPI {
import flash.display.*;
import gos.serviceAPI.*;
import _-PA.*;
public class _-CJ {
private static var _-Ax:_-Ao;
private static var _endScreen:ObyoEndScreen;
private static var _-9H:_-4T = new _-4T();
private static var _-7a:String;
private static var _channel:String;
public static function showPreloader(_arg1:DisplayObjectContainer, _arg2:String, _arg3:Function, _arg4:Object=null):_-Ao{
if (!_-Ax){
_-Ax = new _-Ao();
};
_-Ax.start(_arg1, _arg2, _arg3, _arg4);
return (_-Ax);
}
public static function closePreloader():void{
if (_-Ax){
_-Ax.end();
};
}
public static function showEndScreen(_arg1:DisplayObjectContainer, _arg2:String, _arg3:String, _arg4:Object):ObyoEndScreen{
var displayObject = _arg1;
var gameId = _arg2;
var gameKey = _arg3;
var options = _arg4;
if (!_endScreen){
_endScreen = new ObyoEndScreen();
};
init(displayObject, gameId, gameKey, function (_arg1:_-7k):void{
if ((options.onError is Function)){
options.onError(_arg1);
};
}, function (_arg1:_-7k):void{
_endScreen.show(displayObject, gameId, gameKey, options);
});
return (_endScreen);
}
public static function closeEndScreen():void{
_endScreen.close();
}
private static function init(_arg1:DisplayObjectContainer, _arg2:String, _arg3:String, _arg4:Function, _arg5:Function):void{
if (!_-7a){
_-7a = _-Ne._-7U(_arg1);
};
if (!_channel){
_channel = _-Ne._-9u(_arg1);
};
_-9H.init(_arg2, _arg3, {channel:_channel, onLoad:_arg5, onError:_arg4});
}
public static function get _-7U():String{
return (_-7a);
}
public static function get channel():String{
return (_channel);
}
public static function get _-4M():_-4T{
return (_-9H);
}
}
}//package gos.obyoAPI
Section 101
//ObyoEndScreen (gos.obyoAPI.ObyoEndScreen)
package gos.obyoAPI {
import flash.display.*;
import flash.events.*;
import gos.serviceAPI.*;
import gos.common.*;
import _-A3.*;
import _-M9.*;
import _-PA.*;
public class ObyoEndScreen {
private var _-Kk:EventTracker;
private var _gameId:String;
private var _gameKey:String;
private var _-J5:Object;
private var _displayObject:DisplayObjectContainer;// = null
private var _mainPanel:_-CC;
private var _-1x:Number;// = 7
private var _-3n:Number;
private var _-6o:Number;
private var _-2g:_-Fd;
public function ObyoEndScreen(){
this._-Kk = new EventTracker();
}
public function show(_arg1:DisplayObjectContainer, _arg2:String, _arg3:String, _arg4:Object):MovieClip{
if (_-LE.isEmpty(_arg4)){
_arg4 = {};
};
_arg4["gameId"] = _arg2;
_arg4["gameKey"] = _arg3;
(((_arg1 == null)) || (_-LE.isEmpty(_arg2)));
if (_-LE.isEmpty(_arg3)){
if ((_arg4.onError is Function)){
_arg4.onError(new _-7k({errorCode:_-7k.INVALID_INPUT, errorMessage:"invalid parameters", input:_arg4}));
};
return (null);
};
this._displayObject = _arg1;
this._-J5 = _arg4;
this._gameId = _arg2;
this._gameKey = _arg3;
this._-C5();
this._displayObject.root.stage.addChild(this._mainPanel);
this._mainPanel.x = (this._displayObject.loaderInfo.width / 2);
this._mainPanel.y = (this._displayObject.loaderInfo.height / 2);
return (this._mainPanel);
}
private function _-C5():void{
this._mainPanel = new _-CC();
var mainPanelOverlay:MovieClip = (this._mainPanel["overlay"] as MovieClip);
var mainPanelLogo:SimpleButton = (this._mainPanel["obyoLogo"] as SimpleButton);
var mainPanelAddress:SimpleButton = (this._mainPanel["obyoAddress"] as SimpleButton);
this._-Kk.add(mainPanelLogo, MouseEvent.CLICK, function (_arg1:MouseEvent):void{
_-BP._-0a({ref:_gameId, refex:_-4a._-Fw}, true);
});
this._-Kk.add(mainPanelAddress, MouseEvent.CLICK, function (_arg1:MouseEvent):void{
_-BP._-0a({ref:_gameId, refex:_-4a._-F0}, true);
});
if (((_-LE.isEmpty(this._-J5.overlay)) || (!((this._-J5.overlay === false))))){
this._-J5.overlayOpacity = (((!(_-LE.isEmpty(this._-J5.overlayOpacity))) && ((this._-J5.overlayOpacity is Number)))) ? this._-J5.overlayOpacity : _-4a._-6Q;
mainPanelOverlay.alpha = this._-J5.overlayOpacity;
} else {
mainPanelOverlay.alpha = 0;
_-LE.removeChild(this._mainPanel, mainPanelOverlay);
};
this._-1x = 7;
this._-3n = 0;
this._-6o = ((mainPanelLogo.y + (mainPanelLogo.height * 0.5)) + 3);
if (_-CJ._-7U == _-Mz._-0Q){
this._-2g = new _-Q1(this._gameId, this._gameKey, this._-J5);
} else {
this._-2g = new _-57(this._gameId, this._gameKey, this._-J5);
};
this._mainPanel.addChild(this._-2g);
this._-2g.x = this._-3n;
this._-2g.y = this._-6o;
this._-Kk.add(this._-2g, _-Fd._-4u, function (_arg1:Event):void{
close();
});
}
public function close():void{
this._-Kk.removeAll();
_-LE.removeChild(this._displayObject.root.stage, this._mainPanel);
this._-2g.close();
this._-J5 = null;
this._gameId = null;
this._gameKey = null;
this._displayObject = null;
this._-2g = null;
this._mainPanel = null;
}
private function onError(_arg1:_-7k):void{
if ((this._-J5.onError is Function)){
this._-J5.onError(_arg1);
};
}
}
}//package gos.obyoAPI
Section 102
//_-2U (gos.serviceAPI.services._-2U)
package gos.serviceAPI.services {
import gos.serviceAPI.*;
import gos.common.*;
import com.adobe.serialization.json.*;
import _-9-.*;
public class _-2U implements _-3l {
protected var _-FG:Object;
protected var _-3P:Object;
protected var _-Hn:Array;
public function _-Ep(_arg1:Object):void{
var options = _arg1;
this.submit(this._-FG.name, this._-FG.score, {extra:this._-FG.extra, leaderBoard:this._-3P.showLeaderBoard, numScores:this._-3P.numScores, onError:options.onError, onComplete:function (_arg1:_-7k):void{
if (_-3P.showLeaderBoard){
_-Hn = _-LE.objectToArray(_arg1.data);
};
if ((options.onComplete is Function)){
options.onComplete(_arg1);
};
}});
}
public function submit(_arg1:String, _arg2:Number, _arg3:Object):void{
var name = _arg1;
var score = _arg2;
var options = _arg3;
if (options == null){
options = {};
};
if (((!(_-LE.isEmpty(options.leaderBoard))) && (!((options.leaderBoard === true))))){
options.leaderBoard = false;
};
this._-FG = {name:name, score:score, extra:options.extra};
this._-3P = options;
_-Hr.send("submitScore", {name:encodeURIComponent(name), score:score, extra:options.extra, leaderboard:options.leaderBoard, numScores:options.numScores, channel:options.channel, user:options.user, misc:options.misc}, {onComplete:function (_arg1:_-7k):void{
if ((options.onComplete is Function)){
options.onComplete(_arg1);
};
}, onError:options.onError});
}
public function _-Mr(_arg1:String, _arg2:Number, _arg3:Object):void{
var name = _arg1;
var score = _arg2;
var options = _arg3;
if (options == null){
options = {};
};
this._-FG = {name:name, score:score, extra:options.extra};
this._-3P = options;
_-Hr.send("shareScore", {name:encodeURIComponent(name), score:score, extra:options.extra, channel:options.channel, user:options.user, misc:options.misc}, {onComplete:function (_arg1:_-7k):void{
_-Dm.debug("shareScore success!");
if ((options.onComplete is Function)){
options.onComplete(_arg1);
};
}, onError:options.onError});
}
public function getSubmitToken(_arg1:Number, _arg2:Object):void{
var score = _arg1;
var options = _arg2;
if (options == null){
options = {};
};
_-Hr.send("getSubmitScoreToken", {score:score, extra:options.extra, channel:options.channel, misc:options.misc}, {onComplete:function (_arg1:_-7k):void{
if ((options.onComplete is Function)){
options.onComplete(_arg1);
};
}, onError:options.onError});
}
public function getURLSubmitVariables(_arg1:String, _arg2:Number, _arg3:Object=null):Object{
var _local4:String = this.getURLSubmitKey();
var _local5:String = _-08.encode({gsess:_arg1, score:_arg2, extra:_arg3});
var _local6:Object = new Object();
_local6.submit = (_-Ac.rc4EncryptHex(_local4, _local5) + _-Ac.md5(((_arg1 + _local4) + _local5)));
return (_local6);
}
protected function getURLSubmitKey():String{
return (_-64._-Au(-352, 810));
}
public function _-OZ(_arg1:Object):void{
var options = _arg1;
_-Hr.send("leaderBoard", {numScores:options.numScores}, {json:true, encryptedResult:true, onComplete:function (_arg1:_-7k):void{
_-Hn = _-LE.objectToArray(_arg1.data);
_arg1.data = _-Hn;
if ((options.onComplete is Function)){
options.onComplete(_arg1);
};
}});
}
public function get currentScoreData():Object{
return (this._-FG);
}
public function get currentOptions():Object{
return (this._-3P);
}
public function get currentLeaderBoardData():Array{
return (this._-Hn);
}
}
}//package gos.serviceAPI.services
Section 103
//_-7l (gos.serviceAPI.services._-7l)
package gos.serviceAPI.services {
import gos.serviceAPI.*;
import gos.common.*;
import flash.utils.*;
public class _-7l implements _-Q8 {
private var _-R9:Boolean;// = false
protected var _clientVersion:String;
protected var _gameId:String;
protected var _gameKey:String;
private var _-7n:String;
private var _-Rc:String;
public static const _-R-:String = "2.0.0";
public function init(_arg1:String, _arg2:String, _arg3:String):void{
if (((!(this._-7n)) || (!(this._-Rc)))){
throw (new Error("protected connectionURL and salt properties must be set by extending class to use ServiceLibraryMng"));
};
this._gameId = _arg1;
this._gameKey = _arg2;
this._clientVersion = _arg3;
this.initTransmitter();
this._-R9 = true;
}
protected function initTransmitter():void{
_-Hr.init(this._-7n, this._gameId, this._gameKey, this._-Rc, _-R-, this._clientVersion);
}
protected function checkIfInitialized():void{
if (!this._-R9){
throw (new Error("init method must be called to use ServiceLibraryMng"));
};
}
public function _-5p(_arg1:String):Class{
this.checkIfInitialized();
_-Dm.debug(("requested class name: " + _arg1));
return ((getDefinitionByName(_arg1) as Class));
}
public function getObject(_arg1:String){
this.checkIfInitialized();
var _local2:Class = this._-5p(_arg1);
var _local3:_-Bv = (new (_local2) as _-Bv);
return (_local3);
}
public function set _-4p(_arg1:String):void{
this._-7n = _arg1;
}
public function set _-9g(_arg1:String):void{
this._-Rc = _arg1;
}
}
}//package gos.serviceAPI.services
Section 104
//_-Hr (gos.serviceAPI.services._-Hr)
package gos.serviceAPI.services {
import flash.events.*;
import gos.serviceAPI.*;
import gos.common.*;
import com.adobe.serialization.json.*;
import flash.net.*;
public class _-Hr {
public static const _-R-:String = "1.2";
private static const _-SE:int = 0;
private static const _-MG:int = 1;
private static const _-Nn:int = 2;
private static var _-Nb:String = "";
private static var _-3L:String = "";
private static var _serviceVersion:String = "";
private static var _clientVersion:String = "";
private static var _-Rc:String = "";
private static var _gameId:String = "";
private static var _gameKey:String = "";
private static var _-R9:Boolean = false;
public static function init(_arg1:String, _arg2:String, _arg3:String, _arg4:String, _arg5:String, _arg6:String):void{
if (((((((((((_-LE.isEmpty(_arg1)) || (_-LE.isEmpty(_arg2)))) || (_-LE.isEmpty(_arg3)))) || (_-LE.isEmpty(_arg4)))) || (_-LE.isEmpty(_arg5)))) || (_-LE.isEmpty(_arg6)))){
throw (new Error("Transmitter.init: one of the parameters is empty "));
};
_-Nb = _arg1;
_gameId = _arg2;
_gameKey = _arg3;
_-Rc = (_arg4 + _-3L);
_serviceVersion = _arg5.replace(/\./g, "x");
_clientVersion = _arg6.replace(/\./g, "x");
_-R9 = true;
}
public static function send(_arg1:String, _arg2:Object, _arg3:Object):URLLoader{
var loader:URLLoader;
var dataToSendJSON:String;
var request:URLRequest;
var vars:URLVariables;
var command = _arg1;
var data = _arg2;
var options = _arg3;
if (_-LE.isEmpty(_-Nb)){
errorCall(options, new _-7k({input:options, data:data, errorCode:_-7k.INVALID_INPUT, errorMessage:"_connectUrl is null. you have initialize GosTransmitter with init method."}));
return (null);
};
loader = null;
var dataToSend:Object = {};
if (options == null){
options = {};
};
if (_-LE.isEmpty(options.json)){
options.json = true;
};
try {
dataToSend = data;
dataToSendJSON = _-08.encode(dataToSend);
request = new URLRequest(_-Nb);
vars = new URLVariables();
vars.cmd = command;
vars.g = _-Ac.rc4EncryptHex(((_clientVersion + _serviceVersion) + _-Rc), _gameId);
vars.d = (_-Ac.rc4EncryptHex(((_serviceVersion + _-Rc) + _gameKey), dataToSendJSON) + _-Ac.md5((((_clientVersion + _-Rc) + _gameKey) + dataToSendJSON)));
vars.s = _serviceVersion;
vars.c = _clientVersion;
request.data = vars;
loader = new URLLoader();
loader.addEventListener(IOErrorEvent.IO_ERROR, function (_arg1:IOErrorEvent):void{
errorCall(options, new _-7k({input:data, errorCode:_-7k.CONNECTION_ERROR, errorMessage:"[can not connect to server (GosTransmitter.send)]"}));
});
loader.addEventListener(Event.COMPLETE, function (_arg1:Event):void{
onComplete(loader, command, data, options, _arg1);
});
loader.load(request);
} catch(error:Error) {
errorCall(options, new _-7k({input:data, errorCode:_-7k.SYSTEM_ERROR, errorMessage:(("[exception in GosTransmitter.send: " + error.message) + "]")}));
};
return (loader);
}
private static function onComplete(_arg1:URLLoader, _arg2:String, _arg3:Object, _arg4:Object, _arg5:Event):Boolean{
var loader = _arg1;
var command = _arg2;
var data = _arg3;
var options = _arg4;
var event = _arg5;
var responseText:* = loader.data;
var responseObj:Object = {result:0, enc:_-SE, data:responseText, json:false, text:responseText};
var isJson:Boolean;
if ((((responseText == null)) && ((responseText == "")))){
errorCall(options, new _-7k({input:data, errorCode:_-7k.EMPTY_RESPONSE, errorMessage:"response is empty"}));
return (false);
};
if (!options.json){
responseObj.result = 1;
if ((options.onComplete is Function)){
options.onComplete(new _-7k({input:data, event:event, data:responseObj.data, response:responseObj}));
};
return (true);
};
try {
responseObj = _-08.decode(responseText);
if (responseObj.result == undefined){
errorCall(options, new _-7k({input:data, errorCode:_-7k.INVALID_DATA_RETURNED, errorMessage:"response is not a valid gos response object"}));
return (false);
};
} catch(e:Error) {
errorCall(options, new _-7k({input:data, errorCode:_-7k.INVALID_DATA_RETURNED, errorMessage:"response is not a valid json string"}));
return (false);
};
try {
if (responseObj.enc == _-MG){
responseObj.data = _-Ac.rc4DecryptHex(((_serviceVersion + _clientVersion) + _-Rc), responseObj.data);
} else {
if (responseObj.enc == _-Nn){
responseObj.data = _-Ac.rc4DecryptHex((((_serviceVersion + _clientVersion) + _-Rc) + _gameKey), responseObj.data);
};
};
if (responseObj.json){
responseObj.data = _-08.decode(responseObj.data);
};
if ((options.onComplete is Function)){
options.onComplete(new _-7k({input:data, event:event, data:responseObj.data, resultCode:responseObj.result, response:responseObj}));
};
} catch(e:Error) {
errorCall(options, new _-7k({input:data, errorCode:_-7k.SYSTEM_ERROR, errorMessage:("error in GosTransmitter: " + e.message)}));
return (false);
};
return (true);
}
private static function errorCall(_arg1:Object, _arg2:_-7k):void{
if ((_arg1.onError is Function)){
_arg1.onError(_arg2);
};
}
public static function get _-9Z():Boolean{
return (_-R9);
}
}
}//package gos.serviceAPI.services
Section 105
//_-1F (gos.serviceAPI._-1F)
package gos.serviceAPI {
public class _-1F {
public static const _-1t:uint = 1;
public static const _-2R:uint = 2;
public static const _-9C:uint = 3;
}
}//package gos.serviceAPI
Section 106
//_-2p (gos.serviceAPI._-2p)
package gos.serviceAPI {
import gos.common.*;
import flash.utils.*;
public class _-2p implements _-5G {
protected var _-Dl:_-Q8;// = null
protected var _-J6:String;// = null
public static const _-R8:String = "gos.serviceAPI.services.ServiceFactory";
public function _-2p(_arg1:String=null){
this._-J6 = (_arg1) ? _arg1 : _-R8;
}
public function load(_arg1:Function, _arg2:Function=null):void{
_-Dm.debug("loading local service", this);
if ((_arg1 is Function)){
_arg1(new _-7k());
};
}
public function get _-AJ():_-Q8{
if (this._-Dl == null){
this._-Dl = this._-EM(this._-J6);
};
return (this._-Dl);
}
private function _-EM(_arg1:String):_-Q8{
_-Dm.debug(("getServiceFactoryByName: " + _arg1), this);
var _local2:Class = (getDefinitionByName(_arg1) as Class);
return ((new (_local2) as _-Q8));
}
}
}//package gos.serviceAPI
Section 107
//_-3l (gos.serviceAPI._-3l)
package gos.serviceAPI {
public interface _-3l extends _-Bv {
"gos.serviceAPI:IScoreService"?? function _-Ep(_arg1:Object):void;
"gos.serviceAPI:IScoreService"?? function submit(_arg1:String, _arg2:Number, _arg3:Object):void;
"gos.serviceAPI:IScoreService"?? function _-Mr(_arg1:String, _arg2:Number, _arg3:Object):void;
"gos.serviceAPI:IScoreService"?? function getSubmitToken(_arg1:Number, _arg2:Object):void;
"gos.serviceAPI:IScoreService"?? function getURLSubmitVariables(_arg1:String, _arg2:Number, _arg3:Object=null):Object;
"gos.serviceAPI:IScoreService"?? function _-OZ(_arg1:Object):void;
"gos.serviceAPI:IScoreService"?? function get currentScoreData():Object;
"gos.serviceAPI:IScoreService"?? function get currentOptions():Object;
"gos.serviceAPI:IScoreService"?? function get currentLeaderBoardData():Array;
}
}//package gos.serviceAPI
Section 108
//_-5G (gos.serviceAPI._-5G)
package gos.serviceAPI {
public interface _-5G {
"gos.serviceAPI:ILibraryLoader"?? function load(_arg1:Function, _arg2:Function=null):void;
"gos.serviceAPI:ILibraryLoader"?? function get _-AJ():_-Q8;
}
}//package gos.serviceAPI
Section 109
//_-7k (gos.serviceAPI._-7k)
package gos.serviceAPI {
import flash.events.*;
import gos.common.*;
public dynamic class _-7k {
public var resultCode:String;// = null
public var errorCode:String;// = null
public var errorMessage:String;// = null
public var event:Event;// = null
public var input;// = null
public var data;// = null
public var response;// = null
public static const EMPTY_RESPONSE:String = "EMPTY_RESPONSE";
public static const INVALID_OPERATION:String = "INVALID_OPERATION";
public static const INVALID_INPUT:String = "INVALID_INPUT";
public static const INVALID_DATA_RETURNED:String = "INVALID_DATA_RETURNED";
public static const SERVICE_CANNOT_BE_LOADED:String = "SERVICE_CANNOT_BE_LOADED";
public static const IO_ERROR:String = "IO_ERROR";
public static const CONNECTION_ERROR:String = "CONNECTION_ERROR";
public static const SECURITY_ERROR:String = "SECURITY_ERROR";
public static const SYSTEM_ERROR:String = "SYSTEM_ERROR";
public static const CONNECTION_IS_ALREADY_INITIALIZED:String = "CONNECTION_IS_ALREADY_INITIALIZED";
public function _-7k(_arg1:Object=null){
this.init(_arg1);
}
public function init(_arg1:Object):_-7k{
this._- = _arg1;
return (this);
}
public function set _-(_arg1:Object):void{
var _local2:String;
if (!_-LE.isEmpty(_arg1)){
for (_local2 in _arg1) {
this[_local2] = _arg1[_local2];
};
};
}
public function _-Rt():Boolean{
return (_-LE.isEmpty(this.errorCode));
}
public function initError(_arg1:String, _arg2:String, _arg3:Event=null, _arg4=null):_-7k{
return (this.init({errorCode:_arg1, errorMessage:_arg2, event:_arg3, input:_arg4}));
}
}
}//package gos.serviceAPI
Section 110
//_-9R (gos.serviceAPI._-9R)
package gos.serviceAPI {
import flash.display.*;
import flash.events.*;
import gos.common.*;
public class _-9R {
protected var _-Kk:EventTracker;
protected var _-2w:DisplayObjectContainer;
protected var _onComplete:Function;
protected var _-0U:Function;
protected var _-PT:Boolean;
protected var _-34:Object;
public function _-9R(){
this._-Kk = new EventTracker();
}
public function start(_arg1:DisplayObjectContainer, _arg2:Function, _arg3:Function, _arg4:Object=null):void{
var temp:Number;
var parent = _arg1;
var onComplete = _arg2;
var onProgress = _arg3;
var args = _arg4;
this._-PT = false;
this._-2w = parent;
this._onComplete = onComplete;
this._-0U = onProgress;
this._-34 = args;
if (!this._-34){
this._-34 = {};
};
try {
temp = this._-2w.loaderInfo.width;
this._-2V();
} catch(e:Error) {
_-2w.addEventListener(Event.ENTER_FRAME, function (_arg1:Event):void{
_arg1.currentTarget.removeEventListener(_arg1.type, arguments.callee);
_-2V();
});
};
}
protected function _-2V():void{
if (this._-2w.loaderInfo.bytesLoaded >= this._-2w.loaderInfo.bytesTotal){
this.onLoadComplete(null);
} else {
this._-Kk.add(this._-2w.loaderInfo, ProgressEvent.PROGRESS, this.onProgress);
this._-Kk.add(this._-2w.loaderInfo, Event.COMPLETE, this.onLoadComplete);
};
}
protected function onProgress(_arg1:ProgressEvent):void{
var _local2:Number = _arg1.target.bytesLoaded;
var _local3:Number = _arg1.target.bytesTotal;
var _local4:Number = (_local2 / _local3);
this._-0U(_local2, _local3, _local4);
}
protected function onLoadComplete(_arg1:Event):void{
this._-Kk.removeAll();
this._-PT = true;
this._onComplete();
this.destroy();
}
public function destroy():void{
this._-Kk.removeAll();
this._-2w = null;
this._onComplete = null;
this._-0U = null;
this._-34 = null;
}
public function get isLoadingCompleted():Boolean{
return (this._-PT);
}
}
}//package gos.serviceAPI
Section 111
//_-Bv (gos.serviceAPI._-Bv)
package gos.serviceAPI {
public interface _-Bv {
}
}//package gos.serviceAPI
Section 112
//_-GG (gos.serviceAPI._-GG)
package gos.serviceAPI {
public class _-GG {
public static const _-9K:String = "own";
public static const _-0Q:String = "facebook";
public static const _-8h:String = "other";
}
}//package gos.serviceAPI
Section 113
//_-Nf (gos.serviceAPI._-Nf)
package gos.serviceAPI {
import gos.common.*;
public class _-Nf {
protected var _gameId:String;// = ""
protected var _gameKey:String;// = ""
protected var _channel:String;// = ""
protected var _-44:uint;// = 3
protected var _-BG:String;
protected var _-2D:Object;// = null
protected var _-H8:EventTracker;
protected var _-A7:_-5G;
protected var _-Dl:_-Q8;
private static const _-7T:String = "2.0.0";
public function _-Nf(){
this._-BG = Languages._-DJ;
this._-H8 = new EventTracker();
super();
}
public function init(_arg1:String, _arg2:String, _arg3:Object=null):void{
_-Dm._-QK(("version:" + _-7T), this);
if (_-LE.isEmpty(_arg3)){
_arg3 = {};
};
if (this._-44 == _-1F._-2R){
if ((_arg3.onError is Function)){
_arg3.onError(new _-7k({errorCode:_-7k.CONNECTION_IS_ALREADY_INITIALIZED, errorMessage:("connect method already has been called. current status:" + this._-44), input:_arg3}));
};
} else {
if (this._-44 == _-1F._-1t){
if ((_arg3.onLoad is Function)){
_arg3.onLoad(new _-7k({input:_arg3}));
};
} else {
if (_-LE.isEmpty(_arg1)){
if ((_arg3.onError is Function)){
_arg3.onError(new _-7k({errorCode:_-7k.INVALID_INPUT, errorMessage:"game id is null", input:_arg3}));
};
} else {
this._-44 = _-1F._-2R;
this._gameId = _arg1;
this._gameKey = _arg2;
this._-2D = _arg3;
this._-HB(this._-2D.libraryLoader);
this._channel = (this._-2D.channel) ? this._-2D.channel : _-GG._-8h;
this._-Fm();
};
};
};
}
protected function _-HB(_arg1):void{
if ((_arg1 is _-5G)){
this._-A7 = _arg1;
} else {
this._-A7 = new _-2p();
};
}
protected function _-Fm():void{
this._-A7.load(this.onLibraryLoaded, this.onLibraryLoadingError);
}
protected function onLibraryLoaded(_arg1:_-7k):Boolean{
var result = _arg1;
var emsg = "";
try {
this._-Dl = this._-A7._-AJ;
_-Dm.debug("service is loaded successfully", this);
return (this.initServiceFactory());
} catch(e:Error) {
emsg = e.message;
};
this.callConnectErrorFunction(_-7k.SERVICE_CANNOT_BE_LOADED, (("Can not load the service. " + emsg) + ""));
return (false);
}
protected function initServiceFactory():Boolean{
this._-Dl.init(this.gameId, this.gameKey, this.version);
this._-44 = _-1F._-1t;
_-Dm.debug("service is initialized successfully.", this);
if ((this._-2D.onLoad is Function)){
this._-2D.onLoad(new _-7k({input:this._-2D}));
};
return (true);
}
protected function onLibraryLoadingError(_arg1:_-7k):void{
this._-44 = _-1F._-9C;
this.callConnectErrorFunction(_arg1.errorCode, _arg1.errorMessage);
}
protected function callConnectErrorFunction(_arg1:String, _arg2:String):Boolean{
if ((this._-2D.onError is Function)){
this._-2D.onError(new _-7k({input:this._-2D, errorCode:_arg1, errorMessage:_arg2}));
return (true);
};
return (false);
}
public function get channel():String{
return (this._channel);
}
public function set channel(_arg1:String):void{
this._channel = _arg1;
}
public function get language():String{
return (this._-BG);
}
public function set language(_arg1:String):void{
this._-BG = _arg1;
}
public function get isReady():Boolean{
return ((this._-44 == _-1F._-1t));
}
public function get _-Ay():uint{
return (this._-44);
}
public function get gameId():String{
return (this._gameId);
}
public function get gameKey():String{
return (this._gameKey);
}
public function get version():String{
return (_-7T);
}
public function get _-AJ():_-Q8{
return (this._-Dl);
}
}
}//package gos.serviceAPI
Section 114
//_-Q8 (gos.serviceAPI._-Q8)
package gos.serviceAPI {
public interface _-Q8 {
"gos.serviceAPI:IServiceFactory"?? function _-5p(_arg1:String):Class;
"gos.serviceAPI:IServiceFactory"?? function getObject(_arg1:String);
"gos.serviceAPI:IServiceFactory"?? function init(_arg1:String, _arg2:String, _arg3:String):void;
"gos.serviceAPI:IServiceFactory"?? function set _-4p(_arg1:String):void;
"gos.serviceAPI:IServiceFactory"?? function set _-9g(_arg1:String):void;
}
}//package gos.serviceAPI
Section 115
//Languages (gos.serviceAPI.Languages)
package gos.serviceAPI {
public class Languages {
public static const _-DJ:String = "en";
public static const _-Qo:String = "tr";
public static const _-5o:String = "es";
public static const _-1Y:String = "de";
public static const _-8y:String = "fr";
public static const _-3D:String = "pt";
}
}//package gos.serviceAPI
Section 116
//cycle1_stage_70 (obyoapi_lib_fla.cycle1_stage_70)
package obyoapi_lib_fla {
import flash.display.*;
public dynamic class cycle1_stage_70 extends MovieClip {
public function cycle1_stage_70(){
addFrameScript(14, this.frame15);
}
function frame15(){
gotoAndPlay("loop");
}
}
}//package obyoapi_lib_fla
Section 117
//intro_2 (obyoapi_lib_fla.intro_2)
package obyoapi_lib_fla {
import flash.display.*;
public dynamic class intro_2 extends MovieClip {
public function intro_2(){
addFrameScript(0, this.frame1, 99, this.frame100, 274, this.frame275);
}
function frame1(){
}
function frame100(){
}
function frame275(){
stop();
}
}
}//package obyoapi_lib_fla
Section 118
//ObyoIntro_30 (obyoapi_lib_fla.ObyoIntro_30)
package obyoapi_lib_fla {
import flash.display.*;
public dynamic class ObyoIntro_30 extends MovieClip {
public function ObyoIntro_30(){
addFrameScript(26, this.frame27);
}
function frame27(){
stop();
}
}
}//package obyoapi_lib_fla
Section 119
//Waves_27 (obyoapi_lib_fla.Waves_27)
package obyoapi_lib_fla {
import flash.display.*;
public dynamic class Waves_27 extends MovieClip {
public var i:int;
public function Waves_27(){
addFrameScript(0, this.frame1);
}
function frame1(){
this.i = 0;
if (this.i++ <= 0){
gotoAndPlay(uint(((Math.random() * this.totalFrames) - 1)));
};
}
}
}//package obyoapi_lib_fla
Section 120
//Waves2_28 (obyoapi_lib_fla.Waves2_28)
package obyoapi_lib_fla {
import flash.display.*;
public dynamic class Waves2_28 extends MovieClip {
public var i:int;
public function Waves2_28(){
addFrameScript(0, this.frame1);
}
function frame1(){
this.i = 0;
if (this.i++ <= 0){
gotoAndPlay(uint(((Math.random() * this.totalFrames) - 1)));
};
}
}
}//package obyoapi_lib_fla
Section 121
//_-Q (_-Q)
package {
import flash.display.*;
public dynamic class _-Q extends MovieClip {
}
}//package