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

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

Gravity-Footbal.swf

This is the info page for
Flash #112508

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


Text
<p align="center"><font face="Meta-Bold" size="16" color="#ffffff" letterSpacing="0.000000" kerning="1">COTE D&apos;IVOIRE</font></p>

<p align="center"><font face="Arial Black" size="14" color="#ffffff" letterSpacing="0.000000" kerning="1">10</font></p>

ActionScript [AS3]

Section 1
//Rippler (be.nascom.flash.graphics.Rippler) package be.nascom.flash.graphics { import flash.events.*; import flash.display.*; import flash.geom.*; import flash.filters.*; public class Rippler { private var _colourTransform:ColorTransform; private var _origin:Point; private var _source:DisplayObject; private var _defData:BitmapData; private var _expandFilter:ConvolutionFilter; private var _filter:DisplacementMapFilter; private var _drawRect:Rectangle; private var _scaleInv:Number; private var _matrix:Matrix; private var _buffer1:BitmapData; private var _buffer2:BitmapData; private var _fullRect:Rectangle; public function Rippler(_arg1:DisplayObject, _arg2:Number, _arg3:Number=2){ var _local4:Number; var _local5:Number; _origin = new Point(); super(); _source = _arg1; _scaleInv = (1 / _arg3); _buffer1 = new BitmapData((_arg1.width * _scaleInv), (_arg1.height * _scaleInv), false, 0); _buffer2 = new BitmapData(_buffer1.width, _buffer1.height, false, 0); _defData = new BitmapData(_arg1.width, _arg1.height); _local4 = (_defData.width / _buffer1.width); _local5 = (_defData.height / _buffer1.height); _fullRect = new Rectangle(0, 0, _buffer1.width, _buffer1.height); _drawRect = new Rectangle(); _filter = new DisplacementMapFilter(_buffer1, _origin, BitmapDataChannel.BLUE, BitmapDataChannel.BLUE, _arg2, _arg2, "wrap"); _source.filters = [_filter]; _source.addEventListener(Event.ENTER_FRAME, handleEnterFrame); _expandFilter = new ConvolutionFilter(3, 3, [0.5, 1, 0.5, 1, 0, 1, 0.5, 1, 0.5], 3); _colourTransform = new ColorTransform(1, 1, 1, 1, 127, 127, 127); _matrix = new Matrix(_local4, 0, 0, _local5); } public function destroy():void{ _source.removeEventListener(Event.ENTER_FRAME, handleEnterFrame); _buffer1.dispose(); _buffer2.dispose(); _defData.dispose(); } public function drawRipple(_arg1:int, _arg2:int, _arg3:int, _arg4:Number):void{ var _local5 = (_arg3 >> 1); var _local6:int = (((_arg4 * 0xFF) & 0xFF) * _arg4); _drawRect.x = ((-(_local5) + _arg1) * _scaleInv); _drawRect.y = ((-(_local5) + _arg2) * _scaleInv); _drawRect.width = (_drawRect.height = (_arg3 * _scaleInv)); _buffer1.fillRect(_drawRect, _local6); } public function getRippleImage():BitmapData{ return (_defData); } private function switchBuffers():void{ var _local1:BitmapData; _local1 = _buffer1; _buffer1 = _buffer2; _buffer2 = _local1; } private function handleEnterFrame(_arg1:Event):void{ var _local2:BitmapData = _buffer2.clone(); _buffer2.applyFilter(_buffer1, _fullRect, _origin, _expandFilter); _buffer2.draw(_local2, null, null, BlendMode.SUBTRACT, null, false); _defData.draw(_buffer2, _matrix, _colourTransform, null, null, true); _filter.mapBitmap = _defData; _source.filters = [_filter]; _local2.dispose(); switchBuffers(); } } }//package be.nascom.flash.graphics
Section 2
//AuxFunctions (caurina.transitions.AuxFunctions) package caurina.transitions { public class AuxFunctions { public static function getObjectLength(_arg1:Object):uint{ var _local3:String; var _local2:uint; for (_local3 in _arg1) { _local2++; }; return (_local2); } public static function numberToG(_arg1:Number):Number{ return (((_arg1 & 0xFF00) >> 8)); } public static function numberToB(_arg1:Number):Number{ return ((_arg1 & 0xFF)); } public static function numberToR(_arg1:Number):Number{ return (((_arg1 & 0xFF0000) >> 16)); } public static function concatObjects(... _args):Object{ var _local3:Object; var _local5:String; var _local2:Object = {}; var _local4:int; while (_local4 < _args.length) { _local3 = _args[_local4]; for (_local5 in _local3) { if (_local3[_local5] == null){ delete _local2[_local5]; } else { _local2[_local5] = _local3[_local5]; }; }; _local4++; }; return (_local2); } } }//package caurina.transitions
Section 3
//Equations (caurina.transitions.Equations) package caurina.transitions { public class Equations { public function Equations(){ trace("Equations is a static class and should not be instantiated."); } public static function easeOutBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = (_arg1 / _arg4); if (_arg1 < (1 / 2.75)){ return (((_arg3 * ((7.5625 * _arg1) * _arg1)) + _arg2)); }; if (_arg1 < (2 / 2.75)){ _arg1 = (_arg1 - (1.5 / 2.75)); return (((_arg3 * (((7.5625 * _arg1) * _arg1) + 0.75)) + _arg2)); }; if (_arg1 < (2.5 / 2.75)){ _arg1 = (_arg1 - (2.25 / 2.75)); return (((_arg3 * (((7.5625 * _arg1) * _arg1) + 0.9375)) + _arg2)); }; _arg1 = (_arg1 - (2.625 / 2.75)); return (((_arg3 * (((7.5625 * _arg1) * _arg1) + 0.984375)) + _arg2)); } public static function easeInOutElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ var _local7:Number; if (_arg1 == 0){ return (_arg2); }; _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 == 2){ return ((_arg2 + _arg3)); }; var _local6:Number = (((!(Boolean(_arg5))) || (isNaN(_arg5.period)))) ? (_arg4 * (0.3 * 1.5)) : _arg5.period; var _local8:Number = (((!(Boolean(_arg5))) || (isNaN(_arg5.amplitude)))) ? 0 : _arg5.amplitude; if (((!(Boolean(_local8))) || ((_local8 < Math.abs(_arg3))))){ _local8 = _arg3; _local7 = (_local6 / 4); } else { _local7 = ((_local6 / (2 * Math.PI)) * Math.asin((_arg3 / _local8))); }; if (_arg1 < 1){ --_arg1; return (((-0.5 * ((_local8 * Math.pow(2, (10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _local6)))) + _arg2)); }; --_arg1; return ((((((_local8 * Math.pow(2, (-10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _local6))) * 0.5) + _arg3) + _arg2)); } public static function easeInOutQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ return (((((_arg3 / 2) * _arg1) * _arg1) + _arg2)); }; --_arg1; return ((((-(_arg3) / 2) * ((_arg1 * (_arg1 - 2)) - 1)) + _arg2)); } public static function easeInOutBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ if (_arg1 < (_arg4 / 2)){ return (((easeInBounce((_arg1 * 2), 0, _arg3, _arg4) * 0.5) + _arg2)); }; return ((((easeOutBounce(((_arg1 * 2) - _arg4), 0, _arg3, _arg4) * 0.5) + (_arg3 * 0.5)) + _arg2)); } public static function easeInOutBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ var _local6:Number = (((!(Boolean(_arg5))) || (isNaN(_arg5.overshoot)))) ? 1.70158 : _arg5.overshoot; _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ _local6 = (_local6 * 1.525); return ((((_arg3 / 2) * ((_arg1 * _arg1) * (((_local6 + 1) * _arg1) - _local6))) + _arg2)); }; _arg1 = (_arg1 - 2); _local6 = (_local6 * 1.525); return ((((_arg3 / 2) * (((_arg1 * _arg1) * (((_local6 + 1) * _arg1) + _local6)) + 2)) + _arg2)); } public static function easeOutInCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ if (_arg1 < (_arg4 / 2)){ return (easeOutCubic((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5)); }; return (easeInCubic(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5)); } public static function easeNone(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ return ((((_arg3 * _arg1) / _arg4) + _arg2)); } public static function easeOutBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ var _local6:Number = (((!(Boolean(_arg5))) || (isNaN(_arg5.overshoot)))) ? 1.70158 : _arg5.overshoot; _arg1 = ((_arg1 / _arg4) - 1); return (((_arg3 * (((_arg1 * _arg1) * (((_local6 + 1) * _arg1) + _local6)) + 1)) + _arg2)); } public static function easeInOutSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ return ((((-(_arg3) / 2) * (Math.cos(((Math.PI * _arg1) / _arg4)) - 1)) + _arg2)); } public static function easeInBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ var _local6:Number = (((!(Boolean(_arg5))) || (isNaN(_arg5.overshoot)))) ? 1.70158 : _arg5.overshoot; _arg1 = (_arg1 / _arg4); return (((((_arg3 * _arg1) * _arg1) * (((_local6 + 1) * _arg1) - _local6)) + _arg2)); } public static function easeInQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = (_arg1 / _arg4); return ((((((_arg3 * _arg1) * _arg1) * _arg1) * _arg1) + _arg2)); } public static function easeOutInQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ if (_arg1 < (_arg4 / 2)){ return (easeOutQuint((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5)); }; return (easeInQuint(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5)); } public static function easeOutInBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ if (_arg1 < (_arg4 / 2)){ return (easeOutBounce((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5)); }; return (easeInBounce(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5)); } public static function init():void{ Tweener.registerTransition("easenone", easeNone); Tweener.registerTransition("linear", easeNone); Tweener.registerTransition("easeinquad", easeInQuad); Tweener.registerTransition("easeoutquad", easeOutQuad); Tweener.registerTransition("easeinoutquad", easeInOutQuad); Tweener.registerTransition("easeoutinquad", easeOutInQuad); Tweener.registerTransition("easeincubic", easeInCubic); Tweener.registerTransition("easeoutcubic", easeOutCubic); Tweener.registerTransition("easeinoutcubic", easeInOutCubic); Tweener.registerTransition("easeoutincubic", easeOutInCubic); Tweener.registerTransition("easeinquart", easeInQuart); Tweener.registerTransition("easeoutquart", easeOutQuart); Tweener.registerTransition("easeinoutquart", easeInOutQuart); Tweener.registerTransition("easeoutinquart", easeOutInQuart); Tweener.registerTransition("easeinquint", easeInQuint); Tweener.registerTransition("easeoutquint", easeOutQuint); Tweener.registerTransition("easeinoutquint", easeInOutQuint); Tweener.registerTransition("easeoutinquint", easeOutInQuint); Tweener.registerTransition("easeinsine", easeInSine); Tweener.registerTransition("easeoutsine", easeOutSine); Tweener.registerTransition("easeinoutsine", easeInOutSine); Tweener.registerTransition("easeoutinsine", easeOutInSine); Tweener.registerTransition("easeincirc", easeInCirc); Tweener.registerTransition("easeoutcirc", easeOutCirc); Tweener.registerTransition("easeinoutcirc", easeInOutCirc); Tweener.registerTransition("easeoutincirc", easeOutInCirc); Tweener.registerTransition("easeinexpo", easeInExpo); Tweener.registerTransition("easeoutexpo", easeOutExpo); Tweener.registerTransition("easeinoutexpo", easeInOutExpo); Tweener.registerTransition("easeoutinexpo", easeOutInExpo); Tweener.registerTransition("easeinelastic", easeInElastic); Tweener.registerTransition("easeoutelastic", easeOutElastic); Tweener.registerTransition("easeinoutelastic", easeInOutElastic); Tweener.registerTransition("easeoutinelastic", easeOutInElastic); Tweener.registerTransition("easeinback", easeInBack); Tweener.registerTransition("easeoutback", easeOutBack); Tweener.registerTransition("easeinoutback", easeInOutBack); Tweener.registerTransition("easeoutinback", easeOutInBack); Tweener.registerTransition("easeinbounce", easeInBounce); Tweener.registerTransition("easeoutbounce", easeOutBounce); Tweener.registerTransition("easeinoutbounce", easeInOutBounce); Tweener.registerTransition("easeoutinbounce", easeOutInBounce); } public static function easeOutExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ return (((_arg1)==_arg4) ? (_arg2 + _arg3) : (((_arg3 * 1.001) * (-(Math.pow(2, ((-10 * _arg1) / _arg4))) + 1)) + _arg2)); } public static function easeOutInBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ if (_arg1 < (_arg4 / 2)){ return (easeOutBack((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5)); }; return (easeInBack(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5)); } public static function easeInExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ return (((_arg1)==0) ? _arg2 : (((_arg3 * Math.pow(2, (10 * ((_arg1 / _arg4) - 1)))) + _arg2) - (_arg3 * 0.001))); } public static function easeInCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = (_arg1 / _arg4); return (((((_arg3 * _arg1) * _arg1) * _arg1) + _arg2)); } public static function easeInQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = (_arg1 / _arg4); return (((((((_arg3 * _arg1) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2)); } public static function easeInOutCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ return ((((-(_arg3) / 2) * (Math.sqrt((1 - (_arg1 * _arg1))) - 1)) + _arg2)); }; _arg1 = (_arg1 - 2); return ((((_arg3 / 2) * (Math.sqrt((1 - (_arg1 * _arg1))) + 1)) + _arg2)); } public static function easeInQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = (_arg1 / _arg4); return ((((_arg3 * _arg1) * _arg1) + _arg2)); } public static function easeInBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ return (((_arg3 - easeOutBounce((_arg4 - _arg1), 0, _arg3, _arg4)) + _arg2)); } public static function easeOutInExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ if (_arg1 < (_arg4 / 2)){ return (easeOutExpo((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5)); }; return (easeInExpo(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5)); } public static function easeOutQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = ((_arg1 / _arg4) - 1); return (((-(_arg3) * ((((_arg1 * _arg1) * _arg1) * _arg1) - 1)) + _arg2)); } public static function easeInSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ return ((((-(_arg3) * Math.cos(((_arg1 / _arg4) * (Math.PI / 2)))) + _arg3) + _arg2)); } public static function easeInOutQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ return (((((((_arg3 / 2) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2)); }; _arg1 = (_arg1 - 2); return ((((-(_arg3) / 2) * ((((_arg1 * _arg1) * _arg1) * _arg1) - 2)) + _arg2)); } public static function easeOutQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = (_arg1 / _arg4); return ((((-(_arg3) * _arg1) * (_arg1 - 2)) + _arg2)); } public static function easeOutInElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ if (_arg1 < (_arg4 / 2)){ return (easeOutElastic((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5)); }; return (easeInElastic(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5)); } public static function easeInElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ var _local7:Number; if (_arg1 == 0){ return (_arg2); }; _arg1 = (_arg1 / _arg4); if (_arg1 == 1){ return ((_arg2 + _arg3)); }; var _local6:Number = (((!(Boolean(_arg5))) || (isNaN(_arg5.period)))) ? (_arg4 * 0.3) : _arg5.period; var _local8:Number = (((!(Boolean(_arg5))) || (isNaN(_arg5.amplitude)))) ? 0 : _arg5.amplitude; if (((!(Boolean(_local8))) || ((_local8 < Math.abs(_arg3))))){ _local8 = _arg3; _local7 = (_local6 / 4); } else { _local7 = ((_local6 / (2 * Math.PI)) * Math.asin((_arg3 / _local8))); }; --_arg1; return ((-(((_local8 * Math.pow(2, (10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _local6)))) + _arg2)); } public static function easeOutCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = ((_arg1 / _arg4) - 1); return (((_arg3 * (((_arg1 * _arg1) * _arg1) + 1)) + _arg2)); } public static function easeOutQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = ((_arg1 / _arg4) - 1); return (((_arg3 * (((((_arg1 * _arg1) * _arg1) * _arg1) * _arg1) + 1)) + _arg2)); } public static function easeOutInQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ if (_arg1 < (_arg4 / 2)){ return (easeOutQuad((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5)); }; return (easeInQuad(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5)); } public static function easeOutSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ return (((_arg3 * Math.sin(((_arg1 / _arg4) * (Math.PI / 2)))) + _arg2)); } public static function easeInOutCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ return ((((((_arg3 / 2) * _arg1) * _arg1) * _arg1) + _arg2)); }; _arg1 = (_arg1 - 2); return ((((_arg3 / 2) * (((_arg1 * _arg1) * _arg1) + 2)) + _arg2)); } public static function easeInOutQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ return ((((((((_arg3 / 2) * _arg1) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2)); }; _arg1 = (_arg1 - 2); return ((((_arg3 / 2) * (((((_arg1 * _arg1) * _arg1) * _arg1) * _arg1) + 2)) + _arg2)); } public static function easeInCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = (_arg1 / _arg4); return (((-(_arg3) * (Math.sqrt((1 - (_arg1 * _arg1))) - 1)) + _arg2)); } public static function easeOutInSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ if (_arg1 < (_arg4 / 2)){ return (easeOutSine((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5)); }; return (easeInSine(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5)); } public static function easeInOutExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ if (_arg1 == 0){ return (_arg2); }; if (_arg1 == _arg4){ return ((_arg2 + _arg3)); }; _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ return (((((_arg3 / 2) * Math.pow(2, (10 * (_arg1 - 1)))) + _arg2) - (_arg3 * 0.0005))); }; --_arg1; return (((((_arg3 / 2) * 1.0005) * (-(Math.pow(2, (-10 * _arg1))) + 2)) + _arg2)); } public static function easeOutElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ var _local7:Number; if (_arg1 == 0){ return (_arg2); }; _arg1 = (_arg1 / _arg4); if (_arg1 == 1){ return ((_arg2 + _arg3)); }; var _local6:Number = (((!(Boolean(_arg5))) || (isNaN(_arg5.period)))) ? (_arg4 * 0.3) : _arg5.period; var _local8:Number = (((!(Boolean(_arg5))) || (isNaN(_arg5.amplitude)))) ? 0 : _arg5.amplitude; if (((!(Boolean(_local8))) || ((_local8 < Math.abs(_arg3))))){ _local8 = _arg3; _local7 = (_local6 / 4); } else { _local7 = ((_local6 / (2 * Math.PI)) * Math.asin((_arg3 / _local8))); }; return (((((_local8 * Math.pow(2, (-10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _local6))) + _arg3) + _arg2)); } public static function easeOutCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = ((_arg1 / _arg4) - 1); return (((_arg3 * Math.sqrt((1 - (_arg1 * _arg1)))) + _arg2)); } public static function easeOutInQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ if (_arg1 < (_arg4 / 2)){ return (easeOutQuart((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5)); }; return (easeInQuart(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5)); } public static function easeOutInCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ if (_arg1 < (_arg4 / 2)){ return (easeOutCirc((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5)); }; return (easeInCirc(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5)); } } }//package caurina.transitions
Section 4
//PropertyInfoObj (caurina.transitions.PropertyInfoObj) package caurina.transitions { public class PropertyInfoObj { public var modifierParameters:Array; public var isSpecialProperty:Boolean; public var valueComplete:Number; public var modifierFunction:Function; public var extra:Object; public var valueStart:Number; public var hasModifier:Boolean; public var arrayIndex:Number; public var originalValueComplete:Object; public function PropertyInfoObj(_arg1:Number, _arg2:Number, _arg3:Object, _arg4:Number, _arg5:Object, _arg6:Boolean, _arg7:Function, _arg8:Array){ valueStart = _arg1; valueComplete = _arg2; originalValueComplete = _arg3; arrayIndex = _arg4; extra = _arg5; isSpecialProperty = _arg6; hasModifier = Boolean(_arg7); modifierFunction = _arg7; modifierParameters = _arg8; } public function toString():String{ var _local1 = "\n[PropertyInfoObj "; _local1 = (_local1 + ("valueStart:" + String(valueStart))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("valueComplete:" + String(valueComplete))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("originalValueComplete:" + String(originalValueComplete))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("arrayIndex:" + String(arrayIndex))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("extra:" + String(extra))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("isSpecialProperty:" + String(isSpecialProperty))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("hasModifier:" + String(hasModifier))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("modifierFunction:" + String(modifierFunction))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("modifierParameters:" + String(modifierParameters))); _local1 = (_local1 + "]\n"); return (_local1); } public function clone():PropertyInfoObj{ var _local1:PropertyInfoObj = new PropertyInfoObj(valueStart, valueComplete, originalValueComplete, arrayIndex, extra, isSpecialProperty, modifierFunction, modifierParameters); return (_local1); } } }//package caurina.transitions
Section 5
//SpecialProperty (caurina.transitions.SpecialProperty) package caurina.transitions { public class SpecialProperty { public var parameters:Array; public var getValue:Function; public var preProcess:Function; public var setValue:Function; public function SpecialProperty(_arg1:Function, _arg2:Function, _arg3:Array=null, _arg4:Function=null){ getValue = _arg1; setValue = _arg2; parameters = _arg3; preProcess = _arg4; } public function toString():String{ var _local1 = ""; _local1 = (_local1 + "[SpecialProperty "); _local1 = (_local1 + ("getValue:" + String(getValue))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("setValue:" + String(setValue))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("parameters:" + String(parameters))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("preProcess:" + String(preProcess))); _local1 = (_local1 + "]"); return (_local1); } } }//package caurina.transitions
Section 6
//SpecialPropertyModifier (caurina.transitions.SpecialPropertyModifier) package caurina.transitions { public class SpecialPropertyModifier { public var getValue:Function; public var modifyValues:Function; public function SpecialPropertyModifier(_arg1:Function, _arg2:Function){ modifyValues = _arg1; getValue = _arg2; } public function toString():String{ var _local1 = ""; _local1 = (_local1 + "[SpecialPropertyModifier "); _local1 = (_local1 + ("modifyValues:" + String(modifyValues))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("getValue:" + String(getValue))); _local1 = (_local1 + "]"); return (_local1); } } }//package caurina.transitions
Section 7
//SpecialPropertySplitter (caurina.transitions.SpecialPropertySplitter) package caurina.transitions { public class SpecialPropertySplitter { public var parameters:Array; public var splitValues:Function; public function SpecialPropertySplitter(_arg1:Function, _arg2:Array){ splitValues = _arg1; parameters = _arg2; } public function toString():String{ var _local1 = ""; _local1 = (_local1 + "[SpecialPropertySplitter "); _local1 = (_local1 + ("splitValues:" + String(splitValues))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("parameters:" + String(parameters))); _local1 = (_local1 + "]"); return (_local1); } } }//package caurina.transitions
Section 8
//Tweener (caurina.transitions.Tweener) package caurina.transitions { import flash.events.*; import flash.display.*; import flash.utils.*; public class Tweener { private static var _timeScale:Number = 1; private static var _currentTimeFrame:Number; private static var _specialPropertySplitterList:Object; private static var _engineExists:Boolean = false; private static var _specialPropertyModifierList:Object; private static var _currentTime:Number; private static var _tweenList:Array; private static var _specialPropertyList:Object; private static var _transitionList:Object; private static var _inited:Boolean = false; private static var __tweener_controller__:MovieClip; public function Tweener(){ trace("Tweener is a static class and should not be instantiated."); } public static function registerSpecialPropertyModifier(_arg1:String, _arg2:Function, _arg3:Function):void{ if (!_inited){ init(); }; var _local4:SpecialPropertyModifier = new SpecialPropertyModifier(_arg2, _arg3); _specialPropertyModifierList[_arg1] = _local4; } public static function registerSpecialProperty(_arg1:String, _arg2:Function, _arg3:Function, _arg4:Array=null, _arg5:Function=null):void{ if (!_inited){ init(); }; var _local6:SpecialProperty = new SpecialProperty(_arg2, _arg3, _arg4, _arg5); _specialPropertyList[_arg1] = _local6; } public static function init(... _args):void{ _inited = true; _transitionList = new Object(); Equations.init(); _specialPropertyList = new Object(); _specialPropertyModifierList = new Object(); _specialPropertySplitterList = new Object(); } private static function updateTweens():Boolean{ var _local1:int; if (_tweenList.length == 0){ return (false); }; _local1 = 0; while (_local1 < _tweenList.length) { if ((((_tweenList[_local1] == undefined)) || (!(_tweenList[_local1].isPaused)))){ if (!updateTweenByIndex(_local1)){ removeTweenByIndex(_local1); }; if (_tweenList[_local1] == null){ removeTweenByIndex(_local1, true); _local1--; }; }; _local1++; }; return (true); } public static function addCaller(_arg1:Object=null, _arg2:Object=null):Boolean{ var _local3:Number; var _local4:Array; var _local8:Function; var _local9:TweenListObj; var _local10:Number; var _local11:String; if (!Boolean(_arg1)){ return (false); }; if ((_arg1 is Array)){ _local4 = _arg1.concat(); } else { _local4 = [_arg1]; }; var _local5:Object = _arg2; if (!_inited){ init(); }; if (((!(_engineExists)) || (!(Boolean(__tweener_controller__))))){ startEngine(); }; var _local6:Number = (isNaN(_local5.time)) ? 0 : _local5.time; var _local7:Number = (isNaN(_local5.delay)) ? 0 : _local5.delay; if (typeof(_local5.transition) == "string"){ _local11 = _local5.transition.toLowerCase(); _local8 = _transitionList[_local11]; } else { _local8 = _local5.transition; }; if (!Boolean(_local8)){ _local8 = _transitionList["easeoutexpo"]; }; _local3 = 0; while (_local3 < _local4.length) { if (_local5.useFrames == true){ _local9 = new TweenListObj(_local4[_local3], (_currentTimeFrame + (_local7 / _timeScale)), (_currentTimeFrame + ((_local7 + _local6) / _timeScale)), true, _local8, _local5.transitionParams); } else { _local9 = new TweenListObj(_local4[_local3], (_currentTime + ((_local7 * 1000) / _timeScale)), (_currentTime + (((_local7 * 1000) + (_local6 * 1000)) / _timeScale)), false, _local8, _local5.transitionParams); }; _local9.properties = null; _local9.onStart = _local5.onStart; _local9.onUpdate = _local5.onUpdate; _local9.onComplete = _local5.onComplete; _local9.onOverwrite = _local5.onOverwrite; _local9.onStartParams = _local5.onStartParams; _local9.onUpdateParams = _local5.onUpdateParams; _local9.onCompleteParams = _local5.onCompleteParams; _local9.onOverwriteParams = _local5.onOverwriteParams; _local9.onStartScope = _local5.onStartScope; _local9.onUpdateScope = _local5.onUpdateScope; _local9.onCompleteScope = _local5.onCompleteScope; _local9.onOverwriteScope = _local5.onOverwriteScope; _local9.onErrorScope = _local5.onErrorScope; _local9.isCaller = true; _local9.count = _local5.count; _local9.waitFrames = _local5.waitFrames; _tweenList.push(_local9); if ((((_local6 == 0)) && ((_local7 == 0)))){ _local10 = (_tweenList.length - 1); updateTweenByIndex(_local10); removeTweenByIndex(_local10); }; _local3++; }; return (true); } public static function pauseAllTweens():Boolean{ var _local2:uint; if (!Boolean(_tweenList)){ return (false); }; var _local1:Boolean; _local2 = 0; while (_local2 < _tweenList.length) { pauseTweenByIndex(_local2); _local1 = true; _local2++; }; return (_local1); } public static function removeTweens(_arg1:Object, ... _args):Boolean{ var _local4:uint; var _local5:SpecialPropertySplitter; var _local6:Array; var _local7:uint; var _local3:Array = new Array(); _local4 = 0; while (_local4 < _args.length) { if ((((typeof(_args[_local4]) == "string")) && ((_local3.indexOf(_args[_local4]) == -1)))){ if (_specialPropertySplitterList[_args[_local4]]){ _local5 = _specialPropertySplitterList[_args[_local4]]; _local6 = _local5.splitValues(_arg1, null); _local7 = 0; while (_local7 < _local6.length) { _local3.push(_local6[_local7].name); _local7++; }; } else { _local3.push(_args[_local4]); }; }; _local4++; }; return (affectTweens(removeTweenByIndex, _arg1, _local3)); } public static function splitTweens(_arg1:Number, _arg2:Array):uint{ var _local5:uint; var _local6:String; var _local7:Boolean; var _local3:TweenListObj = _tweenList[_arg1]; var _local4:TweenListObj = _local3.clone(false); _local5 = 0; while (_local5 < _arg2.length) { _local6 = _arg2[_local5]; if (Boolean(_local3.properties[_local6])){ _local3.properties[_local6] = undefined; delete _local3.properties[_local6]; }; _local5++; }; for (_local6 in _local4.properties) { _local7 = false; _local5 = 0; while (_local5 < _arg2.length) { if (_arg2[_local5] == _local6){ _local7 = true; break; }; _local5++; }; if (!_local7){ _local4.properties[_local6] = undefined; delete _local4.properties[_local6]; }; }; _tweenList.push(_local4); return ((_tweenList.length - 1)); } public static function updateFrame():void{ _currentTimeFrame++; } public static function resumeTweenByIndex(_arg1:Number):Boolean{ var _local2:TweenListObj = _tweenList[_arg1]; if ((((_local2 == null)) || (!(_local2.isPaused)))){ return (false); }; var _local3:Number = getCurrentTweeningTime(_local2); _local2.timeStart = (_local2.timeStart + (_local3 - _local2.timePaused)); _local2.timeComplete = (_local2.timeComplete + (_local3 - _local2.timePaused)); _local2.timePaused = undefined; _local2.isPaused = false; return (true); } public static function getVersion():String{ return ("AS3 1.31.74"); } public static function onEnterFrame(_arg1:Event):void{ updateTime(); updateFrame(); var _local2:Boolean; _local2 = updateTweens(); if (!_local2){ stopEngine(); }; } public static function updateTime():void{ _currentTime = getTimer(); } private static function updateTweenByIndex(_arg1:Number):Boolean{ var tTweening:TweenListObj; var mustUpdate:Boolean; var nv:Number; var t:Number; var b:Number; var c:Number; var d:Number; var pName:String; var eventScope:Object; var tScope:Object; var tProperty:Object; var pv:Number; var i = _arg1; tTweening = _tweenList[i]; if ((((tTweening == null)) || (!(Boolean(tTweening.scope))))){ return (false); }; var isOver:Boolean; var cTime:Number = getCurrentTweeningTime(tTweening); if (cTime >= tTweening.timeStart){ tScope = tTweening.scope; if (tTweening.isCaller){ do { t = (((tTweening.timeComplete - tTweening.timeStart) / tTweening.count) * (tTweening.timesCalled + 1)); b = tTweening.timeStart; c = (tTweening.timeComplete - tTweening.timeStart); d = (tTweening.timeComplete - tTweening.timeStart); nv = tTweening.transition(t, b, c, d); } while (!(cTime >= nv)); } else { mustUpdate = (((((tTweening.skipUpdates < 1)) || (!(tTweening.skipUpdates)))) || ((tTweening.updatesSkipped >= tTweening.skipUpdates))); if (cTime >= tTweening.timeComplete){ isOver = true; mustUpdate = true; }; if (!tTweening.hasStarted){ if (Boolean(tTweening.onStart)){ eventScope = (Boolean(tTweening.onStartScope)) ? tTweening.onStartScope : tScope; try { tTweening.onStart.apply(eventScope, tTweening.onStartParams); } catch(e2:Error) { handleError(tTweening, e2, "onStart"); }; }; for (pName in tTweening.properties) { if (tTweening.properties[pName].isSpecialProperty){ if (Boolean(_specialPropertyList[pName].preProcess)){ tTweening.properties[pName].valueComplete = _specialPropertyList[pName].preProcess(tScope, _specialPropertyList[pName].parameters, tTweening.properties[pName].originalValueComplete, tTweening.properties[pName].extra); }; pv = _specialPropertyList[pName].getValue(tScope, _specialPropertyList[pName].parameters, tTweening.properties[pName].extra); } else { pv = tScope[pName]; }; tTweening.properties[pName].valueStart = (isNaN(pv)) ? tTweening.properties[pName].valueComplete : pv; }; mustUpdate = true; tTweening.hasStarted = true; }; if (mustUpdate){ for (pName in tTweening.properties) { tProperty = tTweening.properties[pName]; if (isOver){ nv = tProperty.valueComplete; } else { if (tProperty.hasModifier){ t = (cTime - tTweening.timeStart); d = (tTweening.timeComplete - tTweening.timeStart); nv = tTweening.transition(t, 0, 1, d, tTweening.transitionParams); nv = tProperty.modifierFunction(tProperty.valueStart, tProperty.valueComplete, nv, tProperty.modifierParameters); } else { t = (cTime - tTweening.timeStart); b = tProperty.valueStart; c = (tProperty.valueComplete - tProperty.valueStart); d = (tTweening.timeComplete - tTweening.timeStart); nv = tTweening.transition(t, b, c, d, tTweening.transitionParams); }; }; if (tTweening.rounded){ nv = Math.round(nv); }; if (tProperty.isSpecialProperty){ _specialPropertyList[pName].setValue(tScope, nv, _specialPropertyList[pName].parameters, tTweening.properties[pName].extra); } else { tScope[pName] = nv; }; }; tTweening.updatesSkipped = 0; if (Boolean(tTweening.onUpdate)){ eventScope = (Boolean(tTweening.onUpdateScope)) ? tTweening.onUpdateScope : tScope; try { tTweening.onUpdate.apply(eventScope, tTweening.onUpdateParams); } catch(e3:Error) { handleError(tTweening, e3, "onUpdate"); }; }; } else { tTweening.updatesSkipped++; }; }; if (((isOver) && (Boolean(tTweening.onComplete)))){ eventScope = (Boolean(tTweening.onCompleteScope)) ? tTweening.onCompleteScope : tScope; try { tTweening.onComplete.apply(eventScope, tTweening.onCompleteParams); } catch(e4:Error) { handleError(tTweening, e4, "onComplete"); }; }; return (!(isOver)); }; return (true); } public static function setTimeScale(_arg1:Number):void{ var _local2:Number; var _local3:Number; if (isNaN(_arg1)){ _arg1 = 1; }; if (_arg1 < 1E-5){ _arg1 = 1E-5; }; if (_arg1 != _timeScale){ if (_tweenList != null){ _local2 = 0; while (_local2 < _tweenList.length) { _local3 = getCurrentTweeningTime(_tweenList[_local2]); _tweenList[_local2].timeStart = (_local3 - (((_local3 - _tweenList[_local2].timeStart) * _timeScale) / _arg1)); _tweenList[_local2].timeComplete = (_local3 - (((_local3 - _tweenList[_local2].timeComplete) * _timeScale) / _arg1)); if (_tweenList[_local2].timePaused != undefined){ _tweenList[_local2].timePaused = (_local3 - (((_local3 - _tweenList[_local2].timePaused) * _timeScale) / _arg1)); }; _local2++; }; }; _timeScale = _arg1; }; } public static function resumeAllTweens():Boolean{ var _local2:uint; if (!Boolean(_tweenList)){ return (false); }; var _local1:Boolean; _local2 = 0; while (_local2 < _tweenList.length) { resumeTweenByIndex(_local2); _local1 = true; _local2++; }; return (_local1); } private static function handleError(_arg1:TweenListObj, _arg2:Error, _arg3:String):void{ var eventScope:Object; var pTweening = _arg1; var pError = _arg2; var pCallBackName = _arg3; if (((Boolean(pTweening.onError)) && ((pTweening.onError is Function)))){ eventScope = (Boolean(pTweening.onErrorScope)) ? pTweening.onErrorScope : pTweening.scope; try { pTweening.onError.apply(eventScope, [pTweening.scope, pError]); } catch(metaError:Error) { printError(((((String(pTweening.scope) + " raised an error while executing the 'onError' handler. Original error:\n ") + pError.getStackTrace()) + "\nonError error: ") + metaError.getStackTrace())); }; } else { if (!Boolean(pTweening.onError)){ printError(((((String(pTweening.scope) + " raised an error while executing the '") + pCallBackName) + "'handler. \n") + pError.getStackTrace())); }; }; } private static function startEngine():void{ _engineExists = true; _tweenList = new Array(); __tweener_controller__ = new MovieClip(); __tweener_controller__.addEventListener(Event.ENTER_FRAME, Tweener.onEnterFrame); _currentTimeFrame = 0; updateTime(); } public static function removeAllTweens():Boolean{ var _local2:uint; if (!Boolean(_tweenList)){ return (false); }; var _local1:Boolean; _local2 = 0; while (_local2 < _tweenList.length) { removeTweenByIndex(_local2); _local1 = true; _local2++; }; return (_local1); } public static function addTween(_arg1:Object=null, _arg2:Object=null):Boolean{ var _local3:Number; var _local4:Number; var _local5:String; var _local6:Array; var _local13:Function; var _local14:Object; var _local15:TweenListObj; var _local16:Number; var _local17:Array; var _local18:Array; var _local19:Array; var _local20:String; if (!Boolean(_arg1)){ return (false); }; if ((_arg1 is Array)){ _local6 = _arg1.concat(); } else { _local6 = [_arg1]; }; var _local7:Object = TweenListObj.makePropertiesChain(_arg2); if (!_inited){ init(); }; if (((!(_engineExists)) || (!(Boolean(__tweener_controller__))))){ startEngine(); }; var _local8:Number = (isNaN(_local7.time)) ? 0 : _local7.time; var _local9:Number = (isNaN(_local7.delay)) ? 0 : _local7.delay; var _local10:Array = new Array(); var _local11:Object = {time:true, delay:true, useFrames:true, skipUpdates:true, transition:true, transitionParams:true, onStart:true, onUpdate:true, onComplete:true, onOverwrite:true, onError:true, rounded:true, onStartParams:true, onUpdateParams:true, onCompleteParams:true, onOverwriteParams:true, onStartScope:true, onUpdateScope:true, onCompleteScope:true, onOverwriteScope:true, onErrorScope:true}; var _local12:Object = new Object(); for (_local5 in _local7) { if (!_local11[_local5]){ if (_specialPropertySplitterList[_local5]){ _local17 = _specialPropertySplitterList[_local5].splitValues(_local7[_local5], _specialPropertySplitterList[_local5].parameters); _local3 = 0; while (_local3 < _local17.length) { if (_specialPropertySplitterList[_local17[_local3].name]){ _local18 = _specialPropertySplitterList[_local17[_local3].name].splitValues(_local17[_local3].value, _specialPropertySplitterList[_local17[_local3].name].parameters); _local4 = 0; while (_local4 < _local18.length) { _local10[_local18[_local4].name] = {valueStart:undefined, valueComplete:_local18[_local4].value, arrayIndex:_local18[_local4].arrayIndex, isSpecialProperty:false}; _local4++; }; } else { _local10[_local17[_local3].name] = {valueStart:undefined, valueComplete:_local17[_local3].value, arrayIndex:_local17[_local3].arrayIndex, isSpecialProperty:false}; }; _local3++; }; } else { if (_specialPropertyModifierList[_local5] != undefined){ _local19 = _specialPropertyModifierList[_local5].modifyValues(_local7[_local5]); _local3 = 0; while (_local3 < _local19.length) { _local12[_local19[_local3].name] = {modifierParameters:_local19[_local3].parameters, modifierFunction:_specialPropertyModifierList[_local5].getValue}; _local3++; }; } else { _local10[_local5] = {valueStart:undefined, valueComplete:_local7[_local5]}; }; }; }; }; for (_local5 in _local10) { if (_specialPropertyList[_local5] != undefined){ _local10[_local5].isSpecialProperty = true; } else { if (_local6[0][_local5] == undefined){ printError((((("The property '" + _local5) + "' doesn't seem to be a normal object property of ") + String(_local6[0])) + " or a registered special property.")); }; }; }; for (_local5 in _local12) { if (_local10[_local5] != undefined){ _local10[_local5].modifierParameters = _local12[_local5].modifierParameters; _local10[_local5].modifierFunction = _local12[_local5].modifierFunction; }; }; if (typeof(_local7.transition) == "string"){ _local20 = _local7.transition.toLowerCase(); _local13 = _transitionList[_local20]; } else { _local13 = _local7.transition; }; if (!Boolean(_local13)){ _local13 = _transitionList["easeoutexpo"]; }; _local3 = 0; while (_local3 < _local6.length) { _local14 = new Object(); for (_local5 in _local10) { _local14[_local5] = new PropertyInfoObj(_local10[_local5].valueStart, _local10[_local5].valueComplete, _local10[_local5].valueComplete, _local10[_local5].arrayIndex, {}, _local10[_local5].isSpecialProperty, _local10[_local5].modifierFunction, _local10[_local5].modifierParameters); }; if (_local7.useFrames == true){ _local15 = new TweenListObj(_local6[_local3], (_currentTimeFrame + (_local9 / _timeScale)), (_currentTimeFrame + ((_local9 + _local8) / _timeScale)), true, _local13, _local7.transitionParams); } else { _local15 = new TweenListObj(_local6[_local3], (_currentTime + ((_local9 * 1000) / _timeScale)), (_currentTime + (((_local9 * 1000) + (_local8 * 1000)) / _timeScale)), false, _local13, _local7.transitionParams); }; _local15.properties = _local14; _local15.onStart = _local7.onStart; _local15.onUpdate = _local7.onUpdate; _local15.onComplete = _local7.onComplete; _local15.onOverwrite = _local7.onOverwrite; _local15.onError = _local7.onError; _local15.onStartParams = _local7.onStartParams; _local15.onUpdateParams = _local7.onUpdateParams; _local15.onCompleteParams = _local7.onCompleteParams; _local15.onOverwriteParams = _local7.onOverwriteParams; _local15.onStartScope = _local7.onStartScope; _local15.onUpdateScope = _local7.onUpdateScope; _local15.onCompleteScope = _local7.onCompleteScope; _local15.onOverwriteScope = _local7.onOverwriteScope; _local15.onErrorScope = _local7.onErrorScope; _local15.rounded = _local7.rounded; _local15.skipUpdates = _local7.skipUpdates; removeTweensByTime(_local15.scope, _local15.properties, _local15.timeStart, _local15.timeComplete); _tweenList.push(_local15); if ((((_local8 == 0)) && ((_local9 == 0)))){ _local16 = (_tweenList.length - 1); updateTweenByIndex(_local16); removeTweenByIndex(_local16); }; _local3++; }; return (true); } public static function registerTransition(_arg1:String, _arg2:Function):void{ if (!_inited){ init(); }; _transitionList[_arg1] = _arg2; } public static function printError(_arg1:String):void{ trace(("## [Tweener] Error: " + _arg1)); } private static function affectTweens(_arg1:Function, _arg2:Object, _arg3:Array):Boolean{ var _local5:uint; var _local6:Array; var _local7:uint; var _local8:uint; var _local9:uint; var _local4:Boolean; if (!Boolean(_tweenList)){ return (false); }; _local5 = 0; while (_local5 < _tweenList.length) { if (((_tweenList[_local5]) && ((_tweenList[_local5].scope == _arg2)))){ if (_arg3.length == 0){ _arg1(_local5); _local4 = true; } else { _local6 = new Array(); _local7 = 0; while (_local7 < _arg3.length) { if (Boolean(_tweenList[_local5].properties[_arg3[_local7]])){ _local6.push(_arg3[_local7]); }; _local7++; }; if (_local6.length > 0){ _local8 = AuxFunctions.getObjectLength(_tweenList[_local5].properties); if (_local8 == _local6.length){ _arg1(_local5); _local4 = true; } else { _local9 = splitTweens(_local5, _local6); _arg1(_local9); _local4 = true; }; }; }; }; _local5++; }; return (_local4); } public static function getTweens(_arg1:Object):Array{ var _local2:uint; var _local3:String; if (!Boolean(_tweenList)){ return ([]); }; var _local4:Array = new Array(); _local2 = 0; while (_local2 < _tweenList.length) { if (((Boolean(_tweenList[_local2])) && ((_tweenList[_local2].scope == _arg1)))){ for (_local3 in _tweenList[_local2].properties) { _local4.push(_local3); }; }; _local2++; }; return (_local4); } public static function isTweening(_arg1:Object):Boolean{ var _local2:uint; if (!Boolean(_tweenList)){ return (false); }; _local2 = 0; while (_local2 < _tweenList.length) { if (((Boolean(_tweenList[_local2])) && ((_tweenList[_local2].scope == _arg1)))){ return (true); }; _local2++; }; return (false); } public static function pauseTweenByIndex(_arg1:Number):Boolean{ var _local2:TweenListObj = _tweenList[_arg1]; if ((((_local2 == null)) || (_local2.isPaused))){ return (false); }; _local2.timePaused = getCurrentTweeningTime(_local2); _local2.isPaused = true; return (true); } public static function getCurrentTweeningTime(_arg1:Object):Number{ return ((_arg1.useFrames) ? _currentTimeFrame : _currentTime); } public static function getTweenCount(_arg1:Object):Number{ var _local2:uint; if (!Boolean(_tweenList)){ return (0); }; var _local3:Number = 0; _local2 = 0; while (_local2 < _tweenList.length) { if (((Boolean(_tweenList[_local2])) && ((_tweenList[_local2].scope == _arg1)))){ _local3 = (_local3 + AuxFunctions.getObjectLength(_tweenList[_local2].properties)); }; _local2++; }; return (_local3); } private static function stopEngine():void{ _engineExists = false; _tweenList = null; _currentTime = 0; _currentTimeFrame = 0; __tweener_controller__.removeEventListener(Event.ENTER_FRAME, Tweener.onEnterFrame); __tweener_controller__ = null; } public static function removeTweensByTime(_arg1:Object, _arg2:Object, _arg3:Number, _arg4:Number):Boolean{ var removedLocally:Boolean; var i:uint; var pName:String; var eventScope:Object; var p_scope = _arg1; var p_properties = _arg2; var p_timeStart = _arg3; var p_timeComplete = _arg4; var removed:Boolean; var tl:uint = _tweenList.length; i = 0; while (i < tl) { if (((Boolean(_tweenList[i])) && ((p_scope == _tweenList[i].scope)))){ if ((((p_timeComplete > _tweenList[i].timeStart)) && ((p_timeStart < _tweenList[i].timeComplete)))){ removedLocally = false; for (pName in _tweenList[i].properties) { if (Boolean(p_properties[pName])){ if (Boolean(_tweenList[i].onOverwrite)){ eventScope = (Boolean(_tweenList[i].onOverwriteScope)) ? _tweenList[i].onOverwriteScope : _tweenList[i].scope; try { _tweenList[i].onOverwrite.apply(eventScope, _tweenList[i].onOverwriteParams); } catch(e:Error) { handleError(_tweenList[i], e, "onOverwrite"); }; }; _tweenList[i].properties[pName] = undefined; delete _tweenList[i].properties[pName]; removedLocally = true; removed = true; }; }; if (removedLocally){ if (AuxFunctions.getObjectLength(_tweenList[i].properties) == 0){ removeTweenByIndex(i); }; }; }; }; i = (i + 1); }; return (removed); } public static function registerSpecialPropertySplitter(_arg1:String, _arg2:Function, _arg3:Array=null):void{ if (!_inited){ init(); }; var _local4:SpecialPropertySplitter = new SpecialPropertySplitter(_arg2, _arg3); _specialPropertySplitterList[_arg1] = _local4; } public static function removeTweenByIndex(_arg1:Number, _arg2:Boolean=false):Boolean{ _tweenList[_arg1] = null; if (_arg2){ _tweenList.splice(_arg1, 1); }; return (true); } public static function resumeTweens(_arg1:Object, ... _args):Boolean{ var _local4:uint; var _local3:Array = new Array(); _local4 = 0; while (_local4 < _args.length) { if ((((typeof(_args[_local4]) == "string")) && ((_local3.indexOf(_args[_local4]) == -1)))){ _local3.push(_args[_local4]); }; _local4++; }; return (affectTweens(resumeTweenByIndex, _arg1, _local3)); } public static function pauseTweens(_arg1:Object, ... _args):Boolean{ var _local4:uint; var _local3:Array = new Array(); _local4 = 0; while (_local4 < _args.length) { if ((((typeof(_args[_local4]) == "string")) && ((_local3.indexOf(_args[_local4]) == -1)))){ _local3.push(_args[_local4]); }; _local4++; }; return (affectTweens(pauseTweenByIndex, _arg1, _local3)); } } }//package caurina.transitions
Section 9
//TweenListObj (caurina.transitions.TweenListObj) package caurina.transitions { public class TweenListObj { public var hasStarted:Boolean; public var onUpdate:Function; public var useFrames:Boolean; public var count:Number; public var onOverwriteParams:Array; public var timeStart:Number; public var timeComplete:Number; public var onStartParams:Array; public var onUpdateScope:Object; public var rounded:Boolean; public var onUpdateParams:Array; public var properties:Object; public var onComplete:Function; public var transitionParams:Object; public var updatesSkipped:Number; public var onStart:Function; public var onOverwriteScope:Object; public var skipUpdates:Number; public var onStartScope:Object; public var scope:Object; public var isCaller:Boolean; public var timePaused:Number; public var transition:Function; public var onCompleteParams:Array; public var onError:Function; public var timesCalled:Number; public var onErrorScope:Object; public var onOverwrite:Function; public var isPaused:Boolean; public var waitFrames:Boolean; public var onCompleteScope:Object; public function TweenListObj(_arg1:Object, _arg2:Number, _arg3:Number, _arg4:Boolean, _arg5:Function, _arg6:Object){ scope = _arg1; timeStart = _arg2; timeComplete = _arg3; useFrames = _arg4; transition = _arg5; transitionParams = _arg6; properties = new Object(); isPaused = false; timePaused = undefined; isCaller = false; updatesSkipped = 0; timesCalled = 0; skipUpdates = 0; hasStarted = false; } public function clone(_arg1:Boolean):TweenListObj{ var _local3:String; var _local2:TweenListObj = new TweenListObj(scope, timeStart, timeComplete, useFrames, transition, transitionParams); _local2.properties = new Array(); for (_local3 in properties) { _local2.properties[_local3] = properties[_local3].clone(); }; _local2.skipUpdates = skipUpdates; _local2.updatesSkipped = updatesSkipped; if (!_arg1){ _local2.onStart = onStart; _local2.onUpdate = onUpdate; _local2.onComplete = onComplete; _local2.onOverwrite = onOverwrite; _local2.onError = onError; _local2.onStartParams = onStartParams; _local2.onUpdateParams = onUpdateParams; _local2.onCompleteParams = onCompleteParams; _local2.onOverwriteParams = onOverwriteParams; _local2.onStartScope = onStartScope; _local2.onUpdateScope = onUpdateScope; _local2.onCompleteScope = onCompleteScope; _local2.onOverwriteScope = onOverwriteScope; _local2.onErrorScope = onErrorScope; }; _local2.rounded = rounded; _local2.isPaused = isPaused; _local2.timePaused = timePaused; _local2.isCaller = isCaller; _local2.count = count; _local2.timesCalled = timesCalled; _local2.waitFrames = waitFrames; _local2.hasStarted = hasStarted; return (_local2); } public function toString():String{ var _local3:String; var _local1 = "\n[TweenListObj "; _local1 = (_local1 + ("scope:" + String(scope))); _local1 = (_local1 + ", properties:"); var _local2:Boolean; for (_local3 in properties) { if (!_local2){ _local1 = (_local1 + ","); }; _local1 = (_local1 + ("[name:" + properties[_local3].name)); _local1 = (_local1 + (",valueStart:" + properties[_local3].valueStart)); _local1 = (_local1 + (",valueComplete:" + properties[_local3].valueComplete)); _local1 = (_local1 + "]"); _local2 = false; }; _local1 = (_local1 + (", timeStart:" + String(timeStart))); _local1 = (_local1 + (", timeComplete:" + String(timeComplete))); _local1 = (_local1 + (", useFrames:" + String(useFrames))); _local1 = (_local1 + (", transition:" + String(transition))); _local1 = (_local1 + (", transitionParams:" + String(transitionParams))); if (skipUpdates){ _local1 = (_local1 + (", skipUpdates:" + String(skipUpdates))); }; if (updatesSkipped){ _local1 = (_local1 + (", updatesSkipped:" + String(updatesSkipped))); }; if (Boolean(onStart)){ _local1 = (_local1 + (", onStart:" + String(onStart))); }; if (Boolean(onUpdate)){ _local1 = (_local1 + (", onUpdate:" + String(onUpdate))); }; if (Boolean(onComplete)){ _local1 = (_local1 + (", onComplete:" + String(onComplete))); }; if (Boolean(onOverwrite)){ _local1 = (_local1 + (", onOverwrite:" + String(onOverwrite))); }; if (Boolean(onError)){ _local1 = (_local1 + (", onError:" + String(onError))); }; if (onStartParams){ _local1 = (_local1 + (", onStartParams:" + String(onStartParams))); }; if (onUpdateParams){ _local1 = (_local1 + (", onUpdateParams:" + String(onUpdateParams))); }; if (onCompleteParams){ _local1 = (_local1 + (", onCompleteParams:" + String(onCompleteParams))); }; if (onOverwriteParams){ _local1 = (_local1 + (", onOverwriteParams:" + String(onOverwriteParams))); }; if (onStartScope){ _local1 = (_local1 + (", onStartScope:" + String(onStartScope))); }; if (onUpdateScope){ _local1 = (_local1 + (", onUpdateScope:" + String(onUpdateScope))); }; if (onCompleteScope){ _local1 = (_local1 + (", onCompleteScope:" + String(onCompleteScope))); }; if (onOverwriteScope){ _local1 = (_local1 + (", onOverwriteScope:" + String(onOverwriteScope))); }; if (onErrorScope){ _local1 = (_local1 + (", onErrorScope:" + String(onErrorScope))); }; if (rounded){ _local1 = (_local1 + (", rounded:" + String(rounded))); }; if (isPaused){ _local1 = (_local1 + (", isPaused:" + String(isPaused))); }; if (timePaused){ _local1 = (_local1 + (", timePaused:" + String(timePaused))); }; if (isCaller){ _local1 = (_local1 + (", isCaller:" + String(isCaller))); }; if (count){ _local1 = (_local1 + (", count:" + String(count))); }; if (timesCalled){ _local1 = (_local1 + (", timesCalled:" + String(timesCalled))); }; if (waitFrames){ _local1 = (_local1 + (", waitFrames:" + String(waitFrames))); }; if (hasStarted){ _local1 = (_local1 + (", hasStarted:" + String(hasStarted))); }; _local1 = (_local1 + "]\n"); return (_local1); } public static function makePropertiesChain(_arg1:Object):Object{ var _local3:Object; var _local4:Object; var _local5:Object; var _local6:Number; var _local7:Number; var _local8:Number; var _local2:Object = _arg1.base; if (_local2){ _local3 = {}; if ((_local2 is Array)){ _local4 = []; _local8 = 0; while (_local8 < _local2.length) { _local4.push(_local2[_local8]); _local8++; }; } else { _local4 = [_local2]; }; _local4.push(_arg1); _local6 = _local4.length; _local7 = 0; while (_local7 < _local6) { if (_local4[_local7]["base"]){ _local5 = AuxFunctions.concatObjects(makePropertiesChain(_local4[_local7]["base"]), _local4[_local7]); } else { _local5 = _local4[_local7]; }; _local3 = AuxFunctions.concatObjects(_local3, _local5); _local7++; }; if (_local3["base"]){ delete _local3["base"]; }; return (_local3); //unresolved jump }; return (_arg1); } } }//package caurina.transitions
Section 10
//JSONDecoder (com.adobe.serialization.json.JSONDecoder) package com.adobe.serialization.json { public class JSONDecoder { private var value; private var tokenizer:JSONTokenizer; private var token:JSONToken; public function JSONDecoder(_arg1:String){ tokenizer = new JSONTokenizer(_arg1); nextToken(); value = parseValue(); } private function parseObject():Object{ var _local2:String; var _local1:Object = new Object(); nextToken(); if (token.type == JSONTokenType.RIGHT_BRACE){ return (_local1); }; while (true) { if (token.type == JSONTokenType.STRING){ _local2 = String(token.value); nextToken(); if (token.type == JSONTokenType.COLON){ nextToken(); _local1[_local2] = parseValue(); nextToken(); if (token.type == JSONTokenType.RIGHT_BRACE){ return (_local1); }; if (token.type == JSONTokenType.COMMA){ nextToken(); } else { tokenizer.parseError(("Expecting } or , but found " + token.value)); }; } else { tokenizer.parseError(("Expecting : but found " + token.value)); }; } else { tokenizer.parseError(("Expecting string but found " + token.value)); }; }; return (null); } private function parseValue():Object{ if (token == null){ tokenizer.parseError("Unexpected end of input"); }; switch (token.type){ case JSONTokenType.LEFT_BRACE: return (parseObject()); case JSONTokenType.LEFT_BRACKET: return (parseArray()); case JSONTokenType.STRING: case JSONTokenType.NUMBER: case JSONTokenType.TRUE: case JSONTokenType.FALSE: case JSONTokenType.NULL: return (token.value); default: tokenizer.parseError(("Unexpected " + token.value)); }; return (null); } private function nextToken():JSONToken{ return ((token = tokenizer.getNextToken())); } public function getValue(){ return (value); } private function parseArray():Array{ var _local1:Array = new Array(); nextToken(); if (token.type == JSONTokenType.RIGHT_BRACKET){ return (_local1); }; while (true) { _local1.push(parseValue()); nextToken(); if (token.type == JSONTokenType.RIGHT_BRACKET){ return (_local1); }; if (token.type == JSONTokenType.COMMA){ nextToken(); } else { tokenizer.parseError(("Expecting ] or , but found " + token.value)); }; }; return (null); } } }//package com.adobe.serialization.json
Section 11
//JSONEncoder (com.adobe.serialization.json.JSONEncoder) package com.adobe.serialization.json { import flash.utils.*; public class JSONEncoder { private var jsonString:String; public function JSONEncoder(_arg1){ jsonString = convertToString(_arg1); } private function escapeString(_arg1:String):String{ var _local3:String; var _local6:String; var _local7:String; var _local2 = ""; var _local4:Number = _arg1.length; var _local5:int; while (_local5 < _local4) { _local3 = _arg1.charAt(_local5); switch (_local3){ case "\"": _local2 = (_local2 + "\\\""); break; case "\\": _local2 = (_local2 + "\\\\"); break; case "\b": _local2 = (_local2 + "\\b"); break; case "\f": _local2 = (_local2 + "\\f"); break; case "\n": _local2 = (_local2 + "\\n"); break; case "\r": _local2 = (_local2 + "\\r"); break; case "\t": _local2 = (_local2 + "\\t"); break; default: if (_local3 < " "){ _local6 = _local3.charCodeAt(0).toString(16); _local7 = ((_local6.length == 2)) ? "00" : "000"; _local2 = (_local2 + (("\\u" + _local7) + _local6)); } else { _local2 = (_local2 + _local3); }; }; _local5++; }; return ((("\"" + _local2) + "\"")); } private function arrayToString(_arg1:Array):String{ var _local2 = ""; var _local3:int; while (_local3 < _arg1.length) { if (_local2.length > 0){ _local2 = (_local2 + ","); }; _local2 = (_local2 + convertToString(_arg1[_local3])); _local3++; }; return ((("[" + _local2) + "]")); } public function getString():String{ return (jsonString); } private function objectToString(_arg1:Object):String{ var value:Object; var key:String; var v:XML; var o = _arg1; var s = ""; var classInfo:XML = describeType(o); if (classInfo.@name.toString() == "Object"){ for (key in o) { value = o[key]; if ((value is Function)){ } else { if (s.length > 0){ s = (s + ","); }; s = (s + ((escapeString(key) + ":") + convertToString(value))); }; }; } else { for each (v in classInfo..*.(((name() == "variable")) || ((name() == "accessor")))) { if (s.length > 0){ s = (s + ","); }; s = (s + ((escapeString(v.@name.toString()) + ":") + convertToString(o[v.@name]))); }; }; return ((("{" + s) + "}")); } private function convertToString(_arg1):String{ if ((_arg1 is String)){ return (escapeString((_arg1 as String))); }; if ((_arg1 is Number)){ return ((isFinite((_arg1 as Number))) ? _arg1.toString() : "null"); } else { if ((_arg1 is Boolean)){ return ((_arg1) ? "true" : "false"); } else { if ((_arg1 is Array)){ return (arrayToString((_arg1 as Array))); }; if ((((_arg1 is Object)) && (!((_arg1 == null))))){ return (objectToString(_arg1)); }; }; }; return ("null"); } } }//package com.adobe.serialization.json
Section 12
//JSONParseError (com.adobe.serialization.json.JSONParseError) package com.adobe.serialization.json { public class JSONParseError extends Error { private var _location:int; private var _text:String; public function JSONParseError(_arg1:String="", _arg2:int=0, _arg3:String=""){ super(_arg1); name = "JSONParseError"; _location = _arg2; _text = _arg3; } public function get location():int{ return (_location); } public function get text():String{ return (_text); } } }//package com.adobe.serialization.json
Section 13
//JSONToken (com.adobe.serialization.json.JSONToken) package com.adobe.serialization.json { public class JSONToken { private var _value:Object; private var _type:int; public function JSONToken(_arg1:int=-1, _arg2:Object=null){ _type = _arg1; _value = _arg2; } public function get value():Object{ return (_value); } public function get type():int{ return (_type); } public function set type(_arg1:int):void{ _type = _arg1; } public function set value(_arg1:Object):void{ _value = _arg1; } } }//package com.adobe.serialization.json
Section 14
//JSONTokenizer (com.adobe.serialization.json.JSONTokenizer) package com.adobe.serialization.json { public class JSONTokenizer { private var loc:int; private var ch:String; private var obj:Object; private var jsonString:String; public function JSONTokenizer(_arg1:String){ jsonString = _arg1; loc = 0; nextChar(); } private function skipComments():void{ if (ch == "/"){ nextChar(); switch (ch){ case "/": do { nextChar(); } while (((!((ch == "\n"))) && (!((ch == ""))))); nextChar(); break; case "*": nextChar(); while (true) { if (ch == "*"){ nextChar(); if (ch == "/"){ nextChar(); break; }; } else { nextChar(); }; if (ch == ""){ parseError("Multi-line comment not closed"); }; }; break; default: parseError((("Unexpected " + ch) + " encountered (expecting '/' or '*' )")); }; }; } private function isDigit(_arg1:String):Boolean{ return ((((_arg1 >= "0")) && ((_arg1 <= "9")))); } private function readString():JSONToken{ var _local3:String; var _local4:int; var _local1:JSONToken = new JSONToken(); _local1.type = JSONTokenType.STRING; var _local2 = ""; nextChar(); while (((!((ch == "\""))) && (!((ch == ""))))) { if (ch == "\\"){ nextChar(); switch (ch){ case "\"": _local2 = (_local2 + "\""); break; case "/": _local2 = (_local2 + "/"); break; case "\\": _local2 = (_local2 + "\\"); break; case "b": _local2 = (_local2 + "\b"); break; case "f": _local2 = (_local2 + "\f"); break; case "n": _local2 = (_local2 + "\n"); break; case "r": _local2 = (_local2 + "\r"); break; case "t": _local2 = (_local2 + "\t"); break; case "u": _local3 = ""; _local4 = 0; while (_local4 < 4) { if (!isHexDigit(nextChar())){ parseError((" Excepted a hex digit, but found: " + ch)); }; _local3 = (_local3 + ch); _local4++; }; _local2 = (_local2 + String.fromCharCode(parseInt(_local3, 16))); break; default: _local2 = (_local2 + ("\\" + ch)); }; } else { _local2 = (_local2 + ch); }; nextChar(); }; if (ch == ""){ parseError("Unterminated string literal"); }; nextChar(); _local1.value = _local2; return (_local1); } private function nextChar():String{ return ((ch = jsonString.charAt(loc++))); } public function getNextToken():JSONToken{ var _local2:String; var _local3:String; var _local4:String; var _local1:JSONToken = new JSONToken(); skipIgnored(); switch (ch){ case "{": _local1.type = JSONTokenType.LEFT_BRACE; _local1.value = "{"; nextChar(); break; case "}": _local1.type = JSONTokenType.RIGHT_BRACE; _local1.value = "}"; nextChar(); break; case "[": _local1.type = JSONTokenType.LEFT_BRACKET; _local1.value = "["; nextChar(); break; case "]": _local1.type = JSONTokenType.RIGHT_BRACKET; _local1.value = "]"; nextChar(); break; case ",": _local1.type = JSONTokenType.COMMA; _local1.value = ","; nextChar(); break; case ":": _local1.type = JSONTokenType.COLON; _local1.value = ":"; nextChar(); break; case "t": _local2 = ((("t" + nextChar()) + nextChar()) + nextChar()); if (_local2 == "true"){ _local1.type = JSONTokenType.TRUE; _local1.value = true; nextChar(); } else { parseError(("Expecting 'true' but found " + _local2)); }; break; case "f": _local3 = (((("f" + nextChar()) + nextChar()) + nextChar()) + nextChar()); if (_local3 == "false"){ _local1.type = JSONTokenType.FALSE; _local1.value = false; nextChar(); } else { parseError(("Expecting 'false' but found " + _local3)); }; break; case "n": _local4 = ((("n" + nextChar()) + nextChar()) + nextChar()); if (_local4 == "null"){ _local1.type = JSONTokenType.NULL; _local1.value = null; nextChar(); } else { parseError(("Expecting 'null' but found " + _local4)); }; break; case "\"": _local1 = readString(); break; default: if (((isDigit(ch)) || ((ch == "-")))){ _local1 = readNumber(); } else { if (ch == ""){ return (null); }; parseError((("Unexpected " + ch) + " encountered")); }; }; return (_local1); } private function skipWhite():void{ while (isWhiteSpace(ch)) { nextChar(); }; } public function parseError(_arg1:String):void{ throw (new JSONParseError(_arg1, loc, jsonString)); } private function isWhiteSpace(_arg1:String):Boolean{ return ((((((((_arg1 == " ")) || ((_arg1 == "\t")))) || ((_arg1 == "\n")))) || ((_arg1 == "\r")))); } private function skipIgnored():void{ var _local1:int; do { _local1 = loc; skipWhite(); skipComments(); } while (_local1 != loc); } private function isHexDigit(_arg1:String):Boolean{ var _local2:String = _arg1.toUpperCase(); return (((isDigit(_arg1)) || ((((_local2 >= "A")) && ((_local2 <= "F")))))); } private function readNumber():JSONToken{ var _local1:JSONToken = new JSONToken(); _local1.type = JSONTokenType.NUMBER; var _local2 = ""; if (ch == "-"){ _local2 = (_local2 + "-"); nextChar(); }; if (!isDigit(ch)){ parseError("Expecting a digit"); }; if (ch == "0"){ _local2 = (_local2 + ch); nextChar(); if (isDigit(ch)){ parseError("A digit cannot immediately follow 0"); }; } else { while (isDigit(ch)) { _local2 = (_local2 + ch); nextChar(); }; }; if (ch == "."){ _local2 = (_local2 + "."); nextChar(); if (!isDigit(ch)){ parseError("Expecting a digit"); }; while (isDigit(ch)) { _local2 = (_local2 + ch); nextChar(); }; }; if ((((ch == "e")) || ((ch == "E")))){ _local2 = (_local2 + "e"); nextChar(); if ((((ch == "+")) || ((ch == "-")))){ _local2 = (_local2 + ch); nextChar(); }; if (!isDigit(ch)){ parseError("Scientific notation number needs exponent value"); }; while (isDigit(ch)) { _local2 = (_local2 + ch); nextChar(); }; }; var _local3:Number = Number(_local2); if (((isFinite(_local3)) && (!(isNaN(_local3))))){ _local1.value = _local3; return (_local1); }; parseError((("Number " + _local3) + " is not valid!")); return (null); } } }//package com.adobe.serialization.json
Section 15
//JSONTokenType (com.adobe.serialization.json.JSONTokenType) package com.adobe.serialization.json { public class JSONTokenType { public static const NUMBER:int = 11; public static const FALSE:int = 8; public static const RIGHT_BRACKET:int = 4; public static const NULL:int = 9; public static const TRUE:int = 7; public static const RIGHT_BRACE:int = 2; public static const UNKNOWN:int = -1; public static const COMMA:int = 0; public static const LEFT_BRACKET:int = 3; public static const STRING:int = 10; public static const LEFT_BRACE:int = 1; public static const COLON:int = 6; } }//package com.adobe.serialization.json
Section 16
//AdHandler (com.ahrooga.flash_ad_manager.components.AdHandler) package com.ahrooga.flash_ad_manager.components { import flash.events.*; import flash.display.*; import com.ahrooga.flash_ad_manager.interfaces.*; import caurina.transitions.*; import flash.utils.*; public class AdHandler extends Sprite { private var timer:Timer; private var customAdLoader:AdLoader; private var adPath:String; private var minAdSeconds:uint; public var preloader:IPreloader; private var timeRemainderIncrement:Number; private var adLink:String; private var modifier:Number;// = 0.7 public var progressPercentage:Number;// = 0 public static const INIT:String = "init"; public static const COMPLETE:String = "complete"; public static const PROGRESS:String = "progress"; public function AdHandler(_arg1:String, _arg2:uint, _arg3:String=null){ this.adPath = _arg1; this.adLink = _arg3; this.minAdSeconds = _arg2; addEventListener(Event.ADDED_TO_STAGE, init, false, 0, true); } private function loadComplete(_arg1:Event=null):void{ var _local2:Number; if (timer.running){ _local2 = (timer.repeatCount - timer.currentCount); timeRemainderIncrement = ((1 - progressPercentage) / _local2); timer.addEventListener(TimerEvent.TIMER, timerEventListener, false, 0, true); } else { if (this.loaderInfo.bytesLoaded < this.loaderInfo.bytesTotal){ modifier = 1; } else { this.loaderInfo.removeEventListener(ProgressEvent.PROGRESS, loadProgress); this.loaderInfo.removeEventListener(Event.COMPLETE, loadComplete); timer.removeEventListener(TimerEvent.TIMER, timerEventListener); timer.removeEventListener(TimerEvent.TIMER_COMPLETE, loadComplete); timer = null; dispatchEvent(new Event(AdHandler.COMPLETE)); removeChild(customAdLoader); customAdLoader = null; }; }; } private function loadProgress(_arg1:ProgressEvent):void{ progressPercentage = ((_arg1.bytesLoaded / _arg1.bytesTotal) * modifier); dispatchEvent(new Event(AdHandler.PROGRESS)); if (progressPercentage > 0.7){ Tweener.addTween(customAdLoader, {time:4, alpha:0}); }; } private function timerEventListener(_arg1:TimerEvent):void{ progressPercentage = (progressPercentage + timeRemainderIncrement); dispatchEvent(new Event(AdHandler.PROGRESS)); } private function init(_arg1:Event):void{ customAdLoader = new AdLoader(adPath, adLink); customAdLoader.addEventListener(Event.INIT, customAdLoaded, false, 0, true); customAdLoader.load(); addChild(customAdLoader); this.loaderInfo.addEventListener(ProgressEvent.PROGRESS, loadProgress, false, 0, true); this.loaderInfo.addEventListener(Event.COMPLETE, loadComplete, false, 0, true); timer = new Timer(50, (minAdSeconds * 20)); timer.addEventListener(TimerEvent.TIMER_COMPLETE, loadComplete, false, 0, true); timer.start(); if (this.loaderInfo.bytesLoaded >= this.loaderInfo.bytesTotal){ loadComplete(); }; } private function customAdLoaded(_arg1:Event):void{ customAdLoader.removeEventListener(Event.INIT, customAdLoaded); customAdLoader.x = int(((stage.stageWidth - customAdLoader.width) * 0.5)); customAdLoader.y = int(((stage.stageHeight - customAdLoader.height) * 0.5)); customAdLoader.alpha = 0; Tweener.addTween(customAdLoader, {time:4, alpha:1}); dispatchEvent(new Event(AdHandler.INIT)); } } }//package com.ahrooga.flash_ad_manager.components
Section 17
//AdLoader (com.ahrooga.flash_ad_manager.components.AdLoader) package com.ahrooga.flash_ad_manager.components { import flash.events.*; import flash.display.*; import flash.net.*; import flash.system.*; import flash.errors.*; public class AdLoader extends Sprite { private var adWidth:uint;// = 0 private var adPath:String; private var adHeight:uint;// = 0 private var loader:Loader; private var adLink:String; public function AdLoader(_arg1:String, _arg2:String=null){ Security.allowDomain("*"); this.adPath = _arg1; this.adLink = _arg2; } private function adClicked(_arg1:MouseEvent):void{ navigateToURL(new URLRequest(adLink)); _arg1.stopImmediatePropagation(); } override public function get height():Number{ return (adHeight); } private function adLoaded(_arg1:Event):void{ var _local3:Sprite; loader.contentLoaderInfo.removeEventListener(Event.COMPLETE, adLoaded); adWidth = _arg1.target.width; adHeight = _arg1.target.height; var _local2:Sprite = new Sprite(); _local2.graphics.beginFill(0xFF); _local2.graphics.drawRect(0, 0, adWidth, adHeight); _local2.graphics.endFill(); addChild(_local2); _arg1.target.loader.mask = _local2; if (((!((adLink === null))) && (!((adLink === ""))))){ _local3 = new Sprite(); _local3.graphics.beginFill(0, 0); _local3.graphics.drawRect(0, 0, adWidth, adHeight); _local3.graphics.endFill(); _local3.buttonMode = true; _local3.addEventListener(MouseEvent.MOUSE_DOWN, adClicked, false, 0, true); addChild(_local3); }; dispatchEvent(new Event(Event.INIT)); } public function load():void{ loader = new Loader(); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, adLoaded, false, 0, true); loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, ioErrorListener, false, 0, true); loader.load(new URLRequest(adPath)); addChild(loader); } private function ioErrorListener(_arg1:IOErrorEvent):void{ throw (new IOError(("Ad not found at the following URL: " + adPath))); } override public function get width():Number{ return (adWidth); } } }//package com.ahrooga.flash_ad_manager.components
Section 18
//BasicPreloader (com.ahrooga.flash_ad_manager.components.BasicPreloader) package com.ahrooga.flash_ad_manager.components { import flash.display.*; import com.ahrooga.flash_ad_manager.interfaces.*; import flash.geom.*; import flash.text.*; public class BasicPreloader extends Sprite implements IPreloader { private var _percent:Number;// = 0 private var loadingCompleted:Boolean;// = false private var barWidth:Number;// = 440 private var animationDone:Boolean;// = false private var loadingBar:Sprite; private var _textPercent:TextField; private var barHeight:Number;// = 20 public function BasicPreloader(){ loadingBar = new Sprite(); loadingBar.x = 100; loadingBar.y = (CONFIG.SCREEN_HEIGHT - 50); addChild(loadingBar); _textPercent = new TextField(); var _local1:TextFormat = new TextFormat("Arial", 14, 0xFFFFFF, true, false, false); _local1.align = TextFormatAlign.RIGHT; _textPercent.defaultTextFormat = _local1; _textPercent.x = (barWidth - 105); _textPercent.y = 0; loadingBar.addChild(_textPercent); } public function get percentage():Number{ return (_percent); } public function set percentage(_arg1:Number):void{ _percent = _arg1; paint(); if (_percent >= 1){ loadingCompleted = true; }; } protected function paint():void{ loadingBar.graphics.clear(); loadingBar.graphics.lineStyle(5, 0xFFFFFF); loadingBar.graphics.beginFill(7988985, 1); loadingBar.graphics.drawRoundRect(0, 0, barWidth, barHeight, 20, 20); loadingBar.graphics.endFill(); loadingBar.graphics.lineStyle(0, 0, 0); var _local1:Matrix = new Matrix(); _local1.createGradientBox(barWidth, barHeight, ((90 / 180) * Math.PI), 0, 0); loadingBar.graphics.beginGradientFill(GradientType.LINEAR, [1878476, 11135735], [1, 1], [0, 127], _local1, SpreadMethod.PAD); loadingBar.graphics.drawRoundRect(2, 2, ((_percent * barWidth) - 4), (barHeight - 4), 20); loadingBar.graphics.endFill(); _textPercent.text = (int((_percent * 100)) + "%"); } public function get displayObject():DisplayObject{ return (this); } public function destroy():void{ removeChild(loadingBar); } } }//package com.ahrooga.flash_ad_manager.components
Section 19
//ilMareSplash (com.ahrooga.flash_ad_manager.components.ilMareSplash) package com.ahrooga.flash_ad_manager.components { import flash.events.*; import flash.display.*; import flash.geom.*; import caurina.transitions.*; import be.nascom.flash.graphics.*; import flash.net.*; import flash.text.*; import flash.filters.*; public class ilMareSplash extends Sprite { private const SIZE_WAVE:Number = 100; private var _curve1Canvas:Sprite; private var _curve1:Array; private var _rippler:Rippler; public var callback:Function; private var _curve2:Array; private var buttonPressed:Boolean;// = false private var IMG_play:Class; private var _waveCount:Number;// = 0 private var _ilMareGames:Bitmap; private var animationDone:Boolean;// = false private var _doWaves:Boolean;// = false private var _time:Number; private var loadingCompleted:Boolean;// = false public var button:Sprite; private var FONT_makisupa:Class; private var _curve2Canvas:Sprite; private var IMG_ilMareGames:Class; private var wasOver:Boolean;// = false public function ilMareSplash(){ FONT_makisupa = ilMareSplash_FONT_makisupa; IMG_ilMareGames = ilMareSplash_IMG_ilMareGames; IMG_play = ilMareSplash_IMG_play; super(); _curve1 = [new SpritePoint(0, 0), new SpritePoint(SIZE_WAVE, -(SIZE_WAVE)), new SpritePoint(SIZE_WAVE, -(SIZE_WAVE))]; _curve2 = [new SpritePoint(SIZE_WAVE, 0), new SpritePoint((SIZE_WAVE / 2), (-(SIZE_WAVE) / 4)), _curve1[2]]; useHandCursor = true; buttonMode = true; var _local1:Bitmap = (new IMG_play() as Bitmap); initAnimation(); button = new Sprite(); var _local2:Matrix = new Matrix(); _local2.translate((-(_local1.width) / 2), (-(_local1.height) / 2)); button.graphics.beginBitmapFill(_local1.bitmapData, _local2); button.graphics.drawRect((-(_local1.width) / 2), (-(_local1.height) / 2), _local1.width, _local1.height); button.graphics.endFill(); button.useHandCursor = true; button.buttonMode = true; button.addEventListener(MouseEvent.CLICK, buttonClicked, false, 0, true); button.addEventListener(MouseEvent.MOUSE_OVER, buttonOver, false, 0, true); button.addEventListener(MouseEvent.MOUSE_OUT, buttonOut, false, 0, true); button.x = (CONFIG.SCREEN_WIDTH / 2); button.y = ((CONFIG.SCREEN_HEIGHT / 4) + (CONFIG.SCREEN_HEIGHT / 2)); button.visible = false; var _local3:Sprite = new Sprite(); _local3.addEventListener(MouseEvent.CLICK, onClick, false, 0, true); _local3.graphics.beginFill(0xFFFFFF, 0.01); _local3.graphics.drawRect(0, 0, CONFIG.SCREEN_WIDTH, CONFIG.SCREEN_HEIGHT); _local3.graphics.endFill(); _local3.buttonMode = true; addChild(_local3); addChild(button); addEventListener(Event.ENTER_FRAME, update, false, 0, true); } protected function drawCurve(_arg1:Sprite, _arg2:Array):void{ _arg1.graphics.lineStyle(2, 6711039); _arg1.graphics.moveTo((_arg2[0] as SpritePoint).x, (_arg2[0] as SpritePoint).y); _arg1.graphics.curveTo((_arg2[1] as SpritePoint).x, (_arg2[1] as SpritePoint).y, (_arg2[2] as SpritePoint).x, (_arg2[2] as SpritePoint).y); _arg1.graphics.lineStyle(); } public function destroy():void{ removeEventListener(Event.ENTER_FRAME, update); removeChild(button); removeChild(_curve1Canvas); removeChild(_curve2Canvas); removeChild(_ilMareGames); useHandCursor = false; buttonMode = false; } public function initAnimation():void{ var gradientMatrix:Matrix = new Matrix(); gradientMatrix.createGradientBox(CONFIG.SCREEN_WIDTH, CONFIG.SCREEN_HEIGHT, (-(Math.PI) / 2), 0, 0); var colors:Array = [11001855, 0xFFFFFF]; graphics.beginGradientFill("linear", colors, [1, 1], [0, 0xFF], gradientMatrix, "pad", "RGB"); graphics.drawRect(0, 0, CONFIG.SCREEN_WIDTH, CONFIG.SCREEN_HEIGHT); graphics.endFill(); var bmpFilter:BitmapFilter = new GlowFilter(9437132, 1, 2, 2); var newFilter:Array = new Array(); newFilter.push(bmpFilter); _curve1Canvas = new Sprite(); _curve1Canvas.x = ((CONFIG.SCREEN_WIDTH / 2) - SIZE_WAVE); _curve1Canvas.y = ((CONFIG.SCREEN_HEIGHT / 2) - 20); addChild(_curve1Canvas); _curve1Canvas.filters = newFilter; _curve1Canvas.visible = false; _curve2Canvas = new Sprite(); _curve2Canvas.x = (_curve1Canvas.x + SIZE_WAVE); _curve2Canvas.y = _curve1Canvas.y; addChild(_curve2Canvas); _curve2Canvas.filters = newFilter; _curve2Canvas.visible = false; _ilMareGames = (new IMG_ilMareGames() as Bitmap); addChild(_ilMareGames); _ilMareGames.x = ((CONFIG.SCREEN_WIDTH / 2) - (_ilMareGames.width / 2)); _ilMareGames.y = ((CONFIG.SCREEN_HEIGHT / 2) - (_ilMareGames.height / 2)); _ilMareGames.alpha = 1; Tweener.addTween((_curve1[1] as Sprite), {delay:2, time:1, x:(SIZE_WAVE / 2), y:-(SIZE_WAVE), transition:"linear"}); Tweener.addTween((_curve1[2] as Sprite), {delay:2.5, time:1, x:SIZE_WAVE, y:(-(SIZE_WAVE) / 2), transition:"linear", onComplete:function ():void{ animationDone = true; }}); Tweener.addTween(_ilMareGames, {delay:0, time:2, alpha:1, transition:"linear", onComplete:function ():void{ _doWaves = true; }}); this.alpha = 0; Tweener.addTween(this, {delay:0, time:2, alpha:1, transition:"linear"}); } public function buttonClicked(_arg1:MouseEvent):void{ callback(); } public function isReady():Boolean{ return (buttonPressed); } protected function update(_arg1:Event):void{ _curve1Canvas.graphics.clear(); drawCurve(_curve1Canvas, _curve1); drawCurve(_curve1Canvas, _curve2); _curve2Canvas.graphics.clear(); drawCurve(_curve2Canvas, _curve1); drawCurve(_curve2Canvas, _curve2); } public function onClick(_arg1:MouseEvent):void{ var _local2:URLRequest; if ((_arg1.target is Stage)){ _local2 = new URLRequest("http://www.freefootballgames.org"); navigateToURL(_local2, "_blank"); }; } public function buttonOver(_arg1:MouseEvent):void{ var target:DisplayObjectContainer; var evt = _arg1; if ((evt.target is TextField)){ target = evt.target.parent; } else { target = (evt.target as DisplayObjectContainer); }; Tweener.addTween(target, {time:0.2, delay:0, scaleX:1.05, scaleY:1.05, transition:"easeOutBounce", onComplete:function ():void{ }}); wasOver = true; } public function buttonOut(_arg1:MouseEvent):void{ var target:DisplayObjectContainer; var evt = _arg1; if ((evt.target is TextField)){ target = evt.target.parent; } else { target = (evt.target as DisplayObjectContainer); }; Tweener.addTween(target, {time:0.2, delay:0, scaleX:1, scaleY:1, transition:"easeOutBounce", onComplete:function ():void{ }}); wasOver = false; } } }//package com.ahrooga.flash_ad_manager.components
Section 20
//ilMareSplash_FONT_makisupa (com.ahrooga.flash_ad_manager.components.ilMareSplash_FONT_makisupa) package com.ahrooga.flash_ad_manager.components { import mx.core.*; public class ilMareSplash_FONT_makisupa extends FontAsset { } }//package com.ahrooga.flash_ad_manager.components
Section 21
//ilMareSplash_IMG_ilMareGames (com.ahrooga.flash_ad_manager.components.ilMareSplash_IMG_ilMareGames) package com.ahrooga.flash_ad_manager.components { import mx.core.*; public class ilMareSplash_IMG_ilMareGames extends BitmapAsset { } }//package com.ahrooga.flash_ad_manager.components
Section 22
//ilMareSplash_IMG_play (com.ahrooga.flash_ad_manager.components.ilMareSplash_IMG_play) package com.ahrooga.flash_ad_manager.components { import mx.core.*; public class ilMareSplash_IMG_play extends BitmapAsset { } }//package com.ahrooga.flash_ad_manager.components
Section 23
//SpritePoint (com.ahrooga.flash_ad_manager.components.SpritePoint) package com.ahrooga.flash_ad_manager.components { import flash.display.*; public class SpritePoint extends Sprite { public function SpritePoint(_arg1:Number, _arg2:Number){ this.x = _arg1; this.y = _arg2; } } }//package com.ahrooga.flash_ad_manager.components
Section 24
//XMLRetriever (com.ahrooga.flash_ad_manager.components.XMLRetriever) package com.ahrooga.flash_ad_manager.components { import flash.events.*; import flash.net.*; import flash.system.*; public class XMLRetriever extends EventDispatcher { private var voArray:Array; private var urlLoader:URLLoader; private var index:uint;// = 0 private var _xml:XML; public static const XML_RETRIEVED:String = "xmlRetrieved"; public static const XML_FAILED:String = "xmlFailed"; public function XMLRetriever(){ voArray = new Array(); } private function errorHandler(_arg1:IOErrorEvent=null):void{ if ((index + 1) <= (voArray.length - 1)){ index++; load(); } else { dispatchEvent(new Event(XMLRetriever.XML_FAILED)); }; } public function load():void{ urlLoader = new URLLoader(); urlLoader.addEventListener(Event.COMPLETE, loadCompleteListener, false, 0, true); urlLoader.addEventListener(IOErrorEvent.IO_ERROR, errorHandler, false, 0, true); var _local1:XMLRetrieverVO = (voArray[index] as XMLRetrieverVO); if (_local1.pathToPolicyFile !== null){ Security.loadPolicyFile(_local1.pathToPolicyFile); }; urlLoader.load(new URLRequest(_local1.pathToXML)); } public function get adPath():String{ return (_xml.application.ad.(@type == "CUSTOM")[0].ad_path); } public function get minAdSeconds():Number{ return (_xml.application.ad.(@type == "CUSTOM")[0].min_ad_seconds); } public function get useEmbeddedAd():Boolean{ return (((_xml.application.use_ad_type == "CUSTOM")) ? false : true); } private function loadCompleteListener(_arg1:Event):void{ var e = _arg1; try { _xml = new XML(e.target.data); urlLoader.removeEventListener(Event.COMPLETE, loadCompleteListener); urlLoader.removeEventListener(IOErrorEvent.IO_ERROR, errorHandler); dispatchEvent(new Event(XMLRetriever.XML_RETRIEVED)); } catch(e:TypeError) { errorHandler(); }; } public function get adDisabledDomains():Array{ var _local3:XML; var _local1:Array = new Array(); var _local2:XMLList = _xml.application.ad_disabled_domains.domain; for each (_local3 in _local2) { _local1.push(_local3.toString()); }; return (_local1); } public function addVO(_arg1:XMLRetrieverVO):void{ voArray.push(_arg1); } public function get adLink():String{ return (_xml.application.ad.(@type == "CUSTOM")[0].ad_link); } public function get embeddedAdName():String{ var adName:String; adName = _xml.application.ad.(@type == "EMBEDDED")[0].ad_name; return (adName.toLowerCase()); } } }//package com.ahrooga.flash_ad_manager.components
Section 25
//XMLRetrieverVO (com.ahrooga.flash_ad_manager.components.XMLRetrieverVO) package com.ahrooga.flash_ad_manager.components { public class XMLRetrieverVO { public var pathToPolicyFile:String; public var pathToXML:String; public function XMLRetrieverVO(_arg1:String, _arg2:String=null){ this.pathToXML = _arg1; this.pathToPolicyFile = _arg2; } } }//package com.ahrooga.flash_ad_manager.components
Section 26
//IPreloader (com.ahrooga.flash_ad_manager.interfaces.IPreloader) package com.ahrooga.flash_ad_manager.interfaces { import flash.display.*; public interface IPreloader { function get displayObject():DisplayObject; function get percentage():Number; function set percentage(_arg1:Number):void; function destroy():void; } }//package com.ahrooga.flash_ad_manager.interfaces
Section 27
//AdManager (com.ahrooga.flash_ad_manager.AdManager) package com.ahrooga.flash_ad_manager { import flash.events.*; import flash.display.*; import com.ahrooga.flash_ad_manager.interfaces.*; import com.ahrooga.flash_ad_manager.components.*; import flash.net.*; public class AdManager extends Sprite { private var xmlRetriever:XMLRetriever; private var customPreloader:IPreloader; private var placeHolder:DisplayObject; private var appInit:Function; private var _preloaderBaseColor:uint;// = 0xCCCCCC private var adInitMappings:Object; private var adHandler:AdHandler; private var _preloaderBarColor:uint;// = 0xFF0000 private var adDisabledDomains:Array; public function AdManager(_arg1:Function, _arg2:DisplayObject, _arg3:String, _arg4:String=null){ this.appInit = _arg1; this.placeHolder = _arg2; addChild(_arg2); xmlRetriever = new XMLRetriever(); adDisabledDomains = new Array(); addEventListener(Event.ADDED_TO_STAGE, init, false, 0, true); addAlternateXML(_arg3, _arg4); } private function loadProgressListener(_arg1:ProgressEvent):void{ customPreloader.percentage = (_arg1.bytesLoaded / _arg1.bytesTotal); } private function loadCompleteHandler(_arg1:Event):void{ if (adHandler !== null){ adHandler.removeEventListener(AdHandler.COMPLETE, loadCompleteHandler); }; this.loaderInfo.removeEventListener(Event.COMPLETE, loadCompleteHandler); this.loaderInfo.removeEventListener(ProgressEvent.PROGRESS, loadProgressListener); removeChild(customPreloader.displayObject); appInit(); } private function failHandler(_arg1:Event=null):void{ if (this.loaderInfo.bytesLoaded == this.loaderInfo.bytesTotal){ removeChild(customPreloader.displayObject); appInit(); } else { this.loaderInfo.addEventListener(Event.COMPLETE, loadCompleteHandler, false, 0, true); this.loaderInfo.addEventListener(ProgressEvent.PROGRESS, loadProgressListener, false, 0, true); }; } public function addAlternateXML(_arg1:String, _arg2:String=null):void{ xmlRetriever.addVO(new XMLRetrieverVO(_arg1, _arg2)); } private function init(_arg1:Event):void{ removeEventListener(Event.ADDED_TO_STAGE, init); if (this.parent == root){ if (customPreloader == null){ customPreloader = new BasicPreloader(); addChild(customPreloader.displayObject); } else { addChild(customPreloader.displayObject); }; xmlRetriever.addEventListener(XMLRetriever.XML_RETRIEVED, xmlRetrieved, false, 0, true); xmlRetriever.addEventListener(XMLRetriever.XML_FAILED, failHandler, false, 0, true); xmlRetriever.load(); } else { throw (new Error("AdManager added as a child of an object which is not the document class.\nAdManager MUST be added to the document class only.")); }; } private function xmlRetrieved(_arg1:Event):void{ var _local4:int; var _local5:Function; xmlRetriever.removeEventListener(XMLRetriever.XML_RETRIEVED, xmlRetrieved); xmlRetriever.removeEventListener(XMLRetriever.XML_FAILED, xmlRetrieved); var _local2:Boolean; var _local3:String = currentDomain; adDisabledDomains = adDisabledDomains.concat((xmlRetriever.adDisabledDomains as Array)); _local4 = 0; while (_local4 < adDisabledDomains.length) { if (_local3 == adDisabledDomains[_local4]){ _local2 = true; break; }; _local4++; }; if (!_local2){ if (xmlRetriever.useEmbeddedAd){ if (adInitMappings[xmlRetriever.embeddedAdName] !== null){ _local5 = (adInitMappings[xmlRetriever.embeddedAdName] as Function); _local5(); removeChild(customPreloader.displayObject); } else { trace((("Init method not found for ad titled '" + xmlRetriever.embeddedAdName) + "'. Embedded ads must be registered with the method registerEmbeddedAd.")); failHandler(); }; } else { adHandler = new AdHandler(xmlRetriever.adPath, xmlRetriever.minAdSeconds, xmlRetriever.adLink); adHandler.addEventListener(AdHandler.INIT, customAdInit, false, 0, true); adHandler.addEventListener(AdHandler.PROGRESS, customAdPreloader, false, 0, true); adHandler.addEventListener(AdHandler.COMPLETE, loadCompleteHandler, false, 0, true); addChild(adHandler); }; }; xmlRetriever = null; } override public function set width(_arg1:Number):void{ positionalError(); } private function positionalError():void{ throw (new Error("positional properties are intentionally disabled on AdManager")); } public function registerEmbeddedAd(_arg1:String, _arg2:Function):void{ if (adInitMappings == null){ adInitMappings = new Object(); }; adInitMappings[_arg1.toLowerCase()] = _arg2; } override public function set scaleX(_arg1:Number):void{ positionalError(); } public function get currentDomain():String{ return (new LocalConnection().domain); } override public function set scaleY(_arg1:Number):void{ positionalError(); } public function addDisabledDomain(_arg1:String):void{ adDisabledDomains.push(_arg1); } private function customAdInit(_arg1:Event):void{ adHandler.removeEventListener(AdHandler.INIT, customAdInit); } private function customAdPreloader(_arg1:Event):void{ customPreloader.percentage = adHandler.progressPercentage; } public function get preloaderBarColor():uint{ return (_preloaderBarColor); } private function removePlaceHolder():void{ if (placeHolder !== null){ removeChild(placeHolder); placeHolder = null; }; } public function attachPreloader(_arg1:IPreloader):void{ customPreloader = _arg1; } override public function set y(_arg1:Number):void{ positionalError(); } public function set preloaderBaseColor(_arg1:uint):void{ _preloaderBaseColor = _arg1; } public function set preloaderBarColor(_arg1:uint):void{ _preloaderBarColor = _arg1; } public function destroy():void{ customPreloader.destroy(); } override public function set height(_arg1:Number):void{ positionalError(); } public function get preloaderBaseColor():uint{ return (_preloaderBaseColor); } override public function set x(_arg1:Number):void{ positionalError(); } } }//package com.ahrooga.flash_ad_manager
Section 28
//CampaignInfo (com.google.analytics.campaign.CampaignInfo) package com.google.analytics.campaign { import com.google.analytics.utils.*; public class CampaignInfo { private var _new:Boolean; private var _empty:Boolean; public function CampaignInfo(_arg1:Boolean=true, _arg2:Boolean=false){ _empty = _arg1; _new = _arg2; } public function toURLString():String{ var _local1:Variables = toVariables(); return (_local1.toString()); } public function isNew():Boolean{ return (_new); } public function get utmcn():String{ return ("1"); } public function isEmpty():Boolean{ return (_empty); } public function toVariables():Variables{ var _local1:Variables = new Variables(); _local1.URIencode = true; if (((!(isEmpty())) && (isNew()))){ _local1.utmcn = utmcn; }; if (((!(isEmpty())) && (!(isNew())))){ _local1.utmcr = utmcr; }; return (_local1); } public function get utmcr():String{ return ("1"); } } }//package com.google.analytics.campaign
Section 29
//CampaignKey (com.google.analytics.campaign.CampaignKey) package com.google.analytics.campaign { public class CampaignKey { public var UCMD:String;// = "utm_medium" public var UCID:String;// = "utm_id" public var UCTR:String;// = "utm_term" public var UCSR:String;// = "utm_source" public var UCNO:String;// = "utm_nooverride" public var UCCN:String;// = "utm_campaign" public var UGCLID:String;// = "gclid" public var UCCT:String;// = "utm_content" } }//package com.google.analytics.campaign
Section 30
//CampaignManager (com.google.analytics.campaign.CampaignManager) package com.google.analytics.campaign { import com.google.analytics.core.*; import com.google.analytics.v4.*; import com.google.analytics.debug.*; import com.google.analytics.utils.*; public class CampaignManager { private var _config:Configuration; private var _domainHash:Number; private var _debug:DebugConfiguration; private var _timeStamp:Number; private var _referrer:String; private var _buffer:Buffer; public static const trackingDelimiter:String = "|"; public function CampaignManager(_arg1:Configuration, _arg2:DebugConfiguration, _arg3:Buffer, _arg4:Number, _arg5:String, _arg6:Number){ _config = _arg1; _debug = _arg2; _buffer = _arg3; _domainHash = _arg4; _referrer = _arg5; _timeStamp = _arg6; } public function getCampaignInformation(_arg1:String, _arg2:Boolean):CampaignInfo{ var _local4:CampaignTracker; var _local8:CampaignTracker; var _local9:int; var _local3:CampaignInfo = new CampaignInfo(); var _local5:Boolean; var _local6:Boolean; var _local7:int; if (((_config.allowLinker) && (_buffer.isGenuine()))){ if (!_buffer.hasUTMZ()){ return (_local3); }; }; _local4 = getTrackerFromSearchString(_arg1); if (isValid(_local4)){ _local6 = hasNoOverride(_arg1); if (((_local6) && (!(_buffer.hasUTMZ())))){ return (_local3); }; }; if (!isValid(_local4)){ _local4 = getOrganicCampaign(); if (((!(_buffer.hasUTMZ())) && (isIgnoredKeyword(_local4)))){ return (_local3); }; }; if (((!(isValid(_local4))) && (_arg2))){ _local4 = getReferrerCampaign(); if (((!(_buffer.hasUTMZ())) && (isIgnoredReferral(_local4)))){ return (_local3); }; }; if (!isValid(_local4)){ if (((!(_buffer.hasUTMZ())) && (_arg2))){ _local4 = getDirectCampaign(); }; }; if (!isValid(_local4)){ return (_local3); }; if (((_buffer.hasUTMZ()) && (!(_buffer.utmz.isEmpty())))){ _local8 = new CampaignTracker(); _local8.fromTrackerString(_buffer.utmz.campaignTracking); _local5 = (_local8.toTrackerString() == _local4.toTrackerString()); _local7 = _buffer.utmz.responseCount; }; if (((!(_local5)) || (_arg2))){ _local9 = _buffer.utma.sessionCount; _local7++; if (_local9 == 0){ _local9 = 1; }; _buffer.utmz.domainHash = _domainHash; _buffer.utmz.campaignCreation = _timeStamp; _buffer.utmz.campaignSessions = _local9; _buffer.utmz.responseCount = _local7; _buffer.utmz.campaignTracking = _local4.toTrackerString(); _debug.info(_buffer.utmz.toString(), VisualDebugMode.geek); _local3 = new CampaignInfo(false, true); } else { _local3 = new CampaignInfo(false, false); }; return (_local3); } public function hasNoOverride(_arg1:String):Boolean{ var _local2:CampaignKey = _config.campaignKey; if (_arg1 == ""){ return (false); }; var _local3:Variables = new Variables(_arg1); var _local4 = ""; if (_local3.hasOwnProperty(_local2.UCNO)){ _local4 = _local3[_local2.UCNO]; switch (_local4){ case "1": return (true); case "": case "0": default: return (false); }; }; return (false); } public function getTrackerFromSearchString(_arg1:String):CampaignTracker{ var _local2:CampaignTracker = getOrganicCampaign(); var _local3:CampaignTracker = new CampaignTracker(); var _local4:CampaignKey = _config.campaignKey; if (_arg1 == ""){ return (_local3); }; var _local5:Variables = new Variables(_arg1); if (_local5.hasOwnProperty(_local4.UCID)){ _local3.id = _local5[_local4.UCID]; }; if (_local5.hasOwnProperty(_local4.UCSR)){ _local3.source = _local5[_local4.UCSR]; }; if (_local5.hasOwnProperty(_local4.UGCLID)){ _local3.clickId = _local5[_local4.UGCLID]; }; if (_local5.hasOwnProperty(_local4.UCCN)){ _local3.name = _local5[_local4.UCCN]; } else { _local3.name = "(not set)"; }; if (_local5.hasOwnProperty(_local4.UCMD)){ _local3.medium = _local5[_local4.UCMD]; } else { _local3.medium = "(not set)"; }; if (_local5.hasOwnProperty(_local4.UCTR)){ _local3.term = _local5[_local4.UCTR]; } else { if (((_local2) && (!((_local2.term == ""))))){ _local3.term = _local2.term; }; }; if (_local5.hasOwnProperty(_local4.UCCT)){ _local3.content = _local5[_local4.UCCT]; }; return (_local3); } public function getOrganicCampaign():CampaignTracker{ var _local1:CampaignTracker; var _local4:Array; var _local5:OrganicReferrer; var _local6:String; if (((isInvalidReferrer(_referrer)) || (isFromGoogleCSE(_referrer, _config)))){ return (_local1); }; var _local2:URL = new URL(_referrer); var _local3 = ""; if (_local2.hostName != ""){ if (_local2.hostName.indexOf(".") > -1){ _local4 = _local2.hostName.split("."); switch (_local4.length){ case 2: _local3 = _local4[0]; break; case 3: _local3 = _local4[1]; break; }; }; }; if (_config.organic.match(_local3)){ _local5 = _config.organic.getReferrerByName(_local3); _local6 = _config.organic.getKeywordValue(_local5, _local2.search); _local1 = new CampaignTracker(); _local1.source = _local5.engine; _local1.name = "(organic)"; _local1.medium = "organic"; _local1.term = _local6; }; return (_local1); } public function getDirectCampaign():CampaignTracker{ var _local1:CampaignTracker = new CampaignTracker(); _local1.source = "(direct)"; _local1.name = "(direct)"; _local1.medium = "(none)"; return (_local1); } public function isIgnoredKeyword(_arg1:CampaignTracker):Boolean{ if (((_arg1) && ((_arg1.medium == "organic")))){ return (_config.organic.isIgnoredKeyword(_arg1.term)); }; return (false); } public function isIgnoredReferral(_arg1:CampaignTracker):Boolean{ if (((_arg1) && ((_arg1.medium == "referral")))){ return (_config.organic.isIgnoredReferral(_arg1.source)); }; return (false); } public function isValid(_arg1:CampaignTracker):Boolean{ if (((_arg1) && (_arg1.isValid()))){ return (true); }; return (false); } public function getReferrerCampaign():CampaignTracker{ var _local1:CampaignTracker; if (((isInvalidReferrer(_referrer)) || (isFromGoogleCSE(_referrer, _config)))){ return (_local1); }; var _local2:URL = new URL(_referrer); var _local3:String = _local2.hostName; var _local4:String = _local2.path; if (_local3.indexOf("www.") == 0){ _local3 = _local3.substr(4); }; _local1 = new CampaignTracker(); _local1.source = _local3; _local1.name = "(referral)"; _local1.medium = "referral"; _local1.content = _local4; return (_local1); } public static function isInvalidReferrer(_arg1:String):Boolean{ var _local2:URL; if ((((((_arg1 == "")) || ((_arg1 == "-")))) || ((_arg1 == "0")))){ return (true); }; if (_arg1.indexOf("://") > -1){ _local2 = new URL(_arg1); if ((((_local2.protocol == Protocols.file)) || ((_local2.protocol == Protocols.none)))){ return (true); }; }; return (false); } public static function isFromGoogleCSE(_arg1:String, _arg2:Configuration):Boolean{ var _local3:URL = new URL(_arg1); if (_local3.hostName.indexOf(_arg2.google) > -1){ if (_local3.search.indexOf((_arg2.googleSearchParam + "=")) > -1){ if (_local3.path == ("/" + _arg2.googleCsePath)){ return (true); }; }; }; return (false); } } }//package com.google.analytics.campaign
Section 31
//CampaignTracker (com.google.analytics.campaign.CampaignTracker) package com.google.analytics.campaign { import com.google.analytics.utils.*; public class CampaignTracker { public var content:String; public var source:String; public var clickId:String; public var name:String; public var term:String; public var medium:String; public var id:String; public function CampaignTracker(_arg1:String="", _arg2:String="", _arg3:String="", _arg4:String="", _arg5:String="", _arg6:String="", _arg7:String=""){ this.id = _arg1; this.source = _arg2; this.clickId = _arg3; this.name = _arg4; this.medium = _arg5; this.term = _arg6; this.content = _arg7; } public function isValid():Boolean{ if (((((!((id == ""))) || (!((source == ""))))) || (!((clickId == ""))))){ return (true); }; return (false); } public function toTrackerString():String{ var _local1:Array = []; _addIfNotEmpty(_local1, "utmcsr=", source); _addIfNotEmpty(_local1, "utmccn=", name); _addIfNotEmpty(_local1, "utmcmd=", medium); _addIfNotEmpty(_local1, "utmctr=", term); _addIfNotEmpty(_local1, "utmcct=", content); _addIfNotEmpty(_local1, "utmcid=", id); _addIfNotEmpty(_local1, "utmgclid=", clickId); return (_local1.join(CampaignManager.trackingDelimiter)); } private function _addIfNotEmpty(_arg1:Array, _arg2:String, _arg3:String):void{ if (_arg3 != ""){ _arg3 = _arg3.split("+").join("%20"); _arg3 = _arg3.split(" ").join("%20"); _arg1.push((_arg2 + _arg3)); }; } public function fromTrackerString(_arg1:String):void{ var _local2:String = _arg1.split(CampaignManager.trackingDelimiter).join("&"); var _local3:Variables = new Variables(_local2); if (_local3.hasOwnProperty("utmcid")){ this.id = _local3["utmcid"]; }; if (_local3.hasOwnProperty("utmcsr")){ this.source = _local3["utmcsr"]; }; if (_local3.hasOwnProperty("utmccn")){ this.name = _local3["utmccn"]; }; if (_local3.hasOwnProperty("utmcmd")){ this.medium = _local3["utmcmd"]; }; if (_local3.hasOwnProperty("utmctr")){ this.term = _local3["utmctr"]; }; if (_local3.hasOwnProperty("utmcct")){ this.content = _local3["utmcct"]; }; if (_local3.hasOwnProperty("utmgclid")){ this.clickId = _local3["utmgclid"]; }; } } }//package com.google.analytics.campaign
Section 32
//BrowserInfo (com.google.analytics.core.BrowserInfo) package com.google.analytics.core { import com.google.analytics.v4.*; import com.google.analytics.utils.*; public class BrowserInfo { private var _config:Configuration; private var _info:Environment; public function BrowserInfo(_arg1:Configuration, _arg2:Environment){ _config = _arg1; _info = _arg2; } public function get utmul():String{ return (_info.language.toLowerCase()); } public function get utmje():String{ return ("0"); } public function toURLString():String{ var _local1:Variables = toVariables(); return (_local1.toString()); } public function get utmsr():String{ return (((_info.screenWidth + "x") + _info.screenHeight)); } public function get utmfl():String{ var _local1:Version; if (_config.detectFlash){ _local1 = _info.flashVersion; return (((((_local1.major + ".") + _local1.minor) + " r") + _local1.build)); }; return ("-"); } public function get utmcs():String{ return (_info.languageEncoding); } public function toVariables():Variables{ var _local1:Variables = new Variables(); _local1.URIencode = true; _local1.utmcs = utmcs; _local1.utmsr = utmsr; _local1.utmsc = utmsc; _local1.utmul = utmul; _local1.utmje = utmje; _local1.utmfl = utmfl; return (_local1); } public function get utmsc():String{ return ((_info.screenColorDepth + "-bit")); } } }//package com.google.analytics.core
Section 33
//Buffer (com.google.analytics.core.Buffer) package com.google.analytics.core { import flash.events.*; import com.google.analytics.v4.*; import com.google.analytics.debug.*; import flash.net.*; import com.google.analytics.data.*; public dynamic class Buffer { private var _SO:SharedObject; private var _OBJ:Object; private var _utma:UTMA; private var _utmb:UTMB; private var _utmc:UTMC; private var _debug:DebugConfiguration; private var _utmk:UTMK; private var _config:Configuration; private var _utmv:UTMV; private var _utmz:UTMZ; private var _volatile:Boolean; public function Buffer(_arg1:Configuration, _arg2:DebugConfiguration, _arg3:Boolean=false, _arg4:Object=null){ var _local5:Boolean; var _local6:String; super(); _config = _arg1; _debug = _arg2; UTMB.defaultTimespan = _config.sessionTimeout; UTMZ.defaultTimespan = _config.conversionTimeout; if (!_arg3){ _SO = SharedObject.getLocal(_config.cookieName, _config.cookiePath); _local5 = false; if (_SO.data.utma){ if (!hasUTMA()){ _createUMTA(); }; _utma.fromSharedObject(_SO.data.utma); if (_debug.verbose){ _debug.info(("found: " + _utma.toString(true)), VisualDebugMode.geek); }; if (_utma.isExpired()){ if (_debug.verbose){ _debug.warning("UTMA has expired", VisualDebugMode.advanced); }; _clearUTMA(); _local5 = true; }; }; if (_SO.data.utmb){ if (!hasUTMB()){ _createUMTB(); }; _utmb.fromSharedObject(_SO.data.utmb); if (_debug.verbose){ _debug.info(("found: " + _utmb.toString(true)), VisualDebugMode.geek); }; if (_utmb.isExpired()){ if (_debug.verbose){ _debug.warning("UTMB has expired", VisualDebugMode.advanced); }; _clearUTMB(); _local5 = true; }; }; if (_SO.data.utmc){ delete _SO.data.utmc; _local5 = true; }; if (_SO.data.utmk){ if (!hasUTMK()){ _createUMTK(); }; _utmk.fromSharedObject(_SO.data.utmk); if (_debug.verbose){ _debug.info(("found: " + _utmk.toString()), VisualDebugMode.geek); }; }; if (_SO.data.utmv){ if (!hasUTMV()){ _createUMTV(); }; _utmv.fromSharedObject(_SO.data.utmv); if (_debug.verbose){ _debug.info(("found: " + _utmv.toString(true)), VisualDebugMode.geek); }; if (_utmv.isExpired()){ if (_debug.verbose){ _debug.warning("UTMV has expired", VisualDebugMode.advanced); }; _clearUTMV(); _local5 = true; }; }; if (_SO.data.utmz){ if (!hasUTMZ()){ _createUMTZ(); }; _utmz.fromSharedObject(_SO.data.utmz); if (_debug.verbose){ _debug.info(("found: " + _utmz.toString(true)), VisualDebugMode.geek); }; if (_utmz.isExpired()){ if (_debug.verbose){ _debug.warning("UTMZ has expired", VisualDebugMode.advanced); }; _clearUTMZ(); _local5 = true; }; }; if (_local5){ save(); }; } else { _OBJ = new Object(); if (_arg4){ for (_local6 in _arg4) { _OBJ[_local6] = _arg4[_local6]; }; }; }; _volatile = _arg3; } public function clearCookies():void{ utma.reset(); utmb.reset(); utmc.reset(); utmz.reset(); utmv.reset(); utmk.reset(); } public function save():void{ var flushStatus:String; if (!isVolatile()){ flushStatus = null; try { flushStatus = _SO.flush(); } catch(e:Error) { _debug.warning("Error...Could not write SharedObject to disk"); }; switch (flushStatus){ case SharedObjectFlushStatus.PENDING: _debug.info("Requesting permission to save object..."); _SO.addEventListener(NetStatusEvent.NET_STATUS, _onFlushStatus); break; case SharedObjectFlushStatus.FLUSHED: _debug.info("Value flushed to disk."); break; }; }; } public function get utmv():UTMV{ if (!hasUTMV()){ _createUMTV(); }; return (_utmv); } public function get utmz():UTMZ{ if (!hasUTMZ()){ _createUMTZ(); }; return (_utmz); } public function hasUTMA():Boolean{ if (_utma){ return (true); }; return (false); } public function hasUTMB():Boolean{ if (_utmb){ return (true); }; return (false); } public function hasUTMC():Boolean{ if (_utmc){ return (true); }; return (false); } public function isGenuine():Boolean{ if (!hasUTMK()){ return (true); }; return ((utmk.hash == generateCookiesHash())); } public function resetCurrentSession():void{ _clearUTMB(); _clearUTMC(); save(); } public function hasUTMK():Boolean{ if (_utmk){ return (true); }; return (false); } public function generateCookiesHash():Number{ var _local1 = ""; _local1 = (_local1 + utma.valueOf()); _local1 = (_local1 + utmb.valueOf()); _local1 = (_local1 + utmc.valueOf()); _local1 = (_local1 + utmz.valueOf()); _local1 = (_local1 + utmv.valueOf()); return (Utils.generateHash(_local1)); } private function _createUMTB():void{ _utmb = new UTMB(); _utmb.proxy = this; } private function _createUMTC():void{ _utmc = new UTMC(); } private function _createUMTA():void{ _utma = new UTMA(); _utma.proxy = this; } public function hasUTMV():Boolean{ if (_utmv){ return (true); }; return (false); } private function _createUMTK():void{ _utmk = new UTMK(); _utmk.proxy = this; } public function hasUTMZ():Boolean{ if (_utmz){ return (true); }; return (false); } private function _createUMTV():void{ _utmv = new UTMV(); _utmv.proxy = this; } private function _onFlushStatus(_arg1:NetStatusEvent):void{ _debug.info("User closed permission dialog..."); switch (_arg1.info.code){ case "SharedObject.Flush.Success": _debug.info("User granted permission -- value saved."); break; case "SharedObject.Flush.Failed": _debug.info("User denied permission -- value not saved."); break; }; _SO.removeEventListener(NetStatusEvent.NET_STATUS, _onFlushStatus); } private function _createUMTZ():void{ _utmz = new UTMZ(); _utmz.proxy = this; } public function updateUTMA(_arg1:Number):void{ if (_debug.verbose){ _debug.info((("updateUTMA( " + _arg1) + " )"), VisualDebugMode.advanced); }; if (!utma.isEmpty()){ if (isNaN(utma.sessionCount)){ utma.sessionCount = 1; } else { utma.sessionCount = (utma.sessionCount + 1); }; utma.lastTime = utma.currentTime; utma.currentTime = _arg1; }; } private function _clearUTMA():void{ _utma = null; if (!isVolatile()){ _SO.data.utma = null; delete _SO.data.utma; }; } private function _clearUTMC():void{ _utmc = null; } private function _clearUTMB():void{ _utmb = null; if (!isVolatile()){ _SO.data.utmb = null; delete _SO.data.utmb; }; } public function update(_arg1:String, _arg2):void{ if (isVolatile()){ _OBJ[_arg1] = _arg2; } else { _SO.data[_arg1] = _arg2; }; } private function _clearUTMZ():void{ _utmz = null; if (!isVolatile()){ _SO.data.utmz = null; delete _SO.data.utmz; }; } private function _clearUTMV():void{ _utmv = null; if (!isVolatile()){ _SO.data.utmv = null; delete _SO.data.utmv; }; } public function isVolatile():Boolean{ return (_volatile); } public function get utma():UTMA{ if (!hasUTMA()){ _createUMTA(); }; return (_utma); } public function get utmb():UTMB{ if (!hasUTMB()){ _createUMTB(); }; return (_utmb); } public function get utmc():UTMC{ if (!hasUTMC()){ _createUMTC(); }; return (_utmc); } public function get utmk():UTMK{ if (!hasUTMK()){ _createUMTK(); }; return (_utmk); } } }//package com.google.analytics.core
Section 34
//DocumentInfo (com.google.analytics.core.DocumentInfo) package com.google.analytics.core { import com.google.analytics.v4.*; import com.google.analytics.external.*; import com.google.analytics.utils.*; public class DocumentInfo { private var _pageURL:String; private var _utmr:String; private var _config:Configuration; private var _adSense:AdSenseGlobals; private var _info:Environment; public function DocumentInfo(_arg1:Configuration, _arg2:Environment, _arg3:String, _arg4:String=null, _arg5:AdSenseGlobals=null){ _config = _arg1; _info = _arg2; _utmr = _arg3; _pageURL = _arg4; _adSense = _arg5; } public function get utmr():String{ if (!_utmr){ return ("-"); }; return (_utmr); } public function toURLString():String{ var _local1:Variables = toVariables(); return (_local1.toString()); } private function _renderPageURL(_arg1:String=""):String{ var _local2:String = _info.locationPath; var _local3:String = _info.locationSearch; if (((!(_arg1)) || ((_arg1 == "")))){ _arg1 = (_local2 + unescape(_local3)); }; return (_arg1); } public function get utmp():String{ return (_renderPageURL(_pageURL)); } public function get utmhid():String{ return (String(_generateHitId())); } private function _generateHitId():Number{ var _local1:Number; if (((_adSense.hid) && (!((_adSense.hid == ""))))){ _local1 = Number(_adSense.hid); } else { _local1 = Math.round((Math.random() * 2147483647)); _adSense.hid = String(_local1); }; return (_local1); } public function toVariables():Variables{ var _local1:Variables = new Variables(); _local1.URIencode = true; if (((_config.detectTitle) && (!((utmdt == ""))))){ _local1.utmdt = utmdt; }; _local1.utmhid = utmhid; _local1.utmr = utmr; _local1.utmp = utmp; return (_local1); } public function get utmdt():String{ return (_info.documentTitle); } } }//package com.google.analytics.core
Section 35
//Domain (com.google.analytics.core.Domain) package com.google.analytics.core { import com.google.analytics.debug.*; public class Domain { private var _mode:DomainNameMode; private var _debug:DebugConfiguration; private var _name:String; public function Domain(_arg1:DomainNameMode=null, _arg2:String="", _arg3:DebugConfiguration=null){ _debug = _arg3; if (_arg1 == null){ _arg1 = DomainNameMode.auto; }; _mode = _arg1; if (_arg1 == DomainNameMode.custom){ this.name = _arg2; } else { _name = _arg2; }; } public function get mode():DomainNameMode{ return (_mode); } public function set mode(_arg1:DomainNameMode):void{ _mode = _arg1; if (_mode == DomainNameMode.none){ _name = ""; }; } public function get name():String{ return (_name); } public function set name(_arg1:String):void{ if (((!((_arg1.charAt(0) == "."))) && (_debug))){ _debug.warning(("missing leading period \".\", cookie will only be accessible on " + _arg1), VisualDebugMode.geek); }; _name = _arg1; } } }//package com.google.analytics.core
Section 36
//DomainNameMode (com.google.analytics.core.DomainNameMode) package com.google.analytics.core { public class DomainNameMode { private var _value:int; private var _name:String; public static const custom:DomainNameMode = new DomainNameMode(2, "custom"); ; public static const none:DomainNameMode = new DomainNameMode(0, "none"); ; public static const auto:DomainNameMode = new DomainNameMode(1, "auto"); ; public function DomainNameMode(_arg1:int=0, _arg2:String=""){ _value = _arg1; _name = _arg2; } public function valueOf():int{ return (_value); } public function toString():String{ return (_name); } } }//package com.google.analytics.core
Section 37
//EventInfo (com.google.analytics.core.EventInfo) package com.google.analytics.core { import com.google.analytics.utils.*; import com.google.analytics.data.*; public class EventInfo { private var _ext10:X10; private var _isEventHit:Boolean; private var _x10:X10; public function EventInfo(_arg1:Boolean, _arg2:X10, _arg3:X10=null){ _isEventHit = _arg1; _x10 = _arg2; _ext10 = _arg3; } public function toURLString():String{ var _local1:Variables = toVariables(); return (_local1.toString()); } public function get utmt():String{ return ("event"); } public function get utme():String{ return (_x10.renderMergedUrlString(_ext10)); } public function toVariables():Variables{ var _local1:Variables = new Variables(); _local1.URIencode = true; if (_isEventHit){ _local1.utmt = utmt; }; _local1.utme = utme; return (_local1); } } }//package com.google.analytics.core
Section 38
//EventTracker (com.google.analytics.core.EventTracker) package com.google.analytics.core { import com.google.analytics.v4.*; public class EventTracker { private var _parent:GoogleAnalyticsAPI; public var name:String; public function EventTracker(_arg1:String, _arg2:GoogleAnalyticsAPI){ this.name = _arg1; _parent = _arg2; } public function trackEvent(_arg1:String, _arg2:String=null, _arg3:Number=NaN):Boolean{ return (_parent.trackEvent(name, _arg1, _arg2, _arg3)); } } }//package com.google.analytics.core
Section 39
//ga_internal (com.google.analytics.core.ga_internal) package com.google.analytics.core { public namespace ga_internal; }//package com.google.analytics.core
Section 40
//GIFRequest (com.google.analytics.core.GIFRequest) package com.google.analytics.core { import flash.events.*; import flash.display.*; import flash.system.*; import com.google.analytics.v4.*; import com.google.analytics.debug.*; import flash.net.*; import com.google.analytics.utils.*; public class GIFRequest { private var _info:Environment; private var _count:int; private var _utmac:String; private var _alertcount:int; private var _debug:DebugConfiguration; private var _lastRequest:URLRequest; private var _buffer:Buffer; private var _config:Configuration; private var _requests:Array; public function GIFRequest(_arg1:Configuration, _arg2:DebugConfiguration, _arg3:Buffer, _arg4:Environment){ _config = _arg1; _debug = _arg2; _buffer = _arg3; _info = _arg4; _count = 0; _alertcount = 0; _requests = []; } public function get utmn():String{ return ((Utils.generate32bitRandom() as String)); } public function onIOError(_arg1:IOErrorEvent):void{ var _local2:String = _lastRequest.url; var _local3:String = String((_requests.length - 1)); var _local4 = (("Gif Request #" + _local3) + " failed"); if (_debug.GIFRequests){ if (!_debug.verbose){ if (_local2.indexOf("?") > -1){ _local2 = _local2.split("?")[0]; }; _local2 = _shortenURL(_local2); }; if (int(_debug.mode) > int(VisualDebugMode.basic)){ _local4 = (_local4 + ((" \"" + _local2) + "\" does not exists or is unreachable")); }; _debug.failure(_local4); } else { _debug.warning(_local4); }; _removeListeners(_arg1.target); } public function send(_arg1:String, _arg2:Variables=null, _arg3:Boolean=false, _arg4:Boolean=false):void{ var _local5:String; var _local6:URLRequest; var _local7:URLRequest; _utmac = _arg1; if (!_arg2){ _arg2 = new Variables(); }; _arg2.URIencode = false; _arg2.pre = ["utmwv", "utmn", "utmhn", "utmt", "utme", "utmcs", "utmsr", "utmsc", "utmul", "utmje", "utmfl", "utmdt", "utmhid", "utmr", "utmp"]; _arg2.post = ["utmcc"]; if (_debug.verbose){ _debug.info(((("tracking: " + _buffer.utmb.trackCount) + "/") + _config.trackingLimitPerSession), VisualDebugMode.geek); }; if ((((_buffer.utmb.trackCount < _config.trackingLimitPerSession)) || (_arg3))){ if (_arg4){ updateToken(); }; if (((((_arg3) || (!(_arg4)))) || ((_buffer.utmb.token >= 1)))){ if (((!(_arg3)) && (_arg4))){ _buffer.utmb.token = (_buffer.utmb.token - 1); }; _buffer.utmb.trackCount = (_buffer.utmb.trackCount + 1); if (_debug.verbose){ _debug.info(_buffer.utmb.toString(), VisualDebugMode.geek); }; _arg2.utmwv = utmwv; _arg2.utmn = Utils.generate32bitRandom(); if (_info.domainName != ""){ _arg2.utmhn = _info.domainName; }; if (_config.sampleRate < 1){ _arg2.utmsp = (_config.sampleRate * 100); }; if ((((_config.serverMode == ServerOperationMode.local)) || ((_config.serverMode == ServerOperationMode.both)))){ _local5 = _info.locationSWFPath; if (_local5.lastIndexOf("/") > 0){ _local5 = _local5.substring(0, _local5.lastIndexOf("/")); }; _local6 = new URLRequest(); if (_config.localGIFpath.indexOf("http") == 0){ _local6.url = _config.localGIFpath; } else { _local6.url = (_local5 + _config.localGIFpath); }; _local6.url = (_local6.url + ("?" + _arg2.toString())); if (((_debug.active) && (_debug.GIFRequests))){ _debugSend(_local6); } else { sendRequest(_local6); }; }; if ((((_config.serverMode == ServerOperationMode.remote)) || ((_config.serverMode == ServerOperationMode.both)))){ _local7 = new URLRequest(); if (_info.protocol == Protocols.HTTPS){ _local7.url = _config.secureRemoteGIFpath; } else { if (_info.protocol == Protocols.HTTP){ _local7.url = _config.remoteGIFpath; } else { _local7.url = _config.remoteGIFpath; }; }; _arg2.utmac = utmac; _arg2.utmcc = encodeURIComponent(utmcc); _local7.url = (_local7.url + ("?" + _arg2.toString())); if (((_debug.active) && (_debug.GIFRequests))){ _debugSend(_local7); } else { sendRequest(_local7); }; }; }; }; } public function onSecurityError(_arg1:SecurityErrorEvent):void{ if (_debug.GIFRequests){ _debug.failure(_arg1.text); }; } public function get utmsp():String{ return (((_config.sampleRate * 100) as String)); } public function get utmcc():String{ var _local1:Array = []; if (_buffer.hasUTMA()){ _local1.push((_buffer.utma.toURLString() + ";")); }; if (_buffer.hasUTMZ()){ _local1.push((_buffer.utmz.toURLString() + ";")); }; if (_buffer.hasUTMV()){ _local1.push((_buffer.utmv.toURLString() + ";")); }; return (_local1.join("+")); } public function get utmac():String{ return (_utmac); } public function get utmwv():String{ return (_config.version); } public function sendRequest(_arg1:URLRequest):void{ var request = _arg1; var loader:Loader = new Loader(); loader.name = String(_count++); var context:LoaderContext = new LoaderContext(false); loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, onIOError); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete); _lastRequest = request; _requests[loader.name] = new RequestObject(request); try { loader.load(request, context); } catch(e:Error) { _debug.failure("\"Loader.load()\" could not instanciate Gif Request"); }; } private function _removeListeners(_arg1:Object):void{ _arg1.removeEventListener(IOErrorEvent.IO_ERROR, onIOError); _arg1.removeEventListener(Event.COMPLETE, onComplete); } public function updateToken():void{ var _local2:Number; var _local1:Number = new Date().getTime(); _local2 = ((_local1 - _buffer.utmb.lastTime) * (_config.tokenRate / 1000)); if (_debug.verbose){ _debug.info(("tokenDelta: " + _local2), VisualDebugMode.geek); }; if (_local2 >= 1){ _buffer.utmb.token = Math.min(Math.floor((_buffer.utmb.token + _local2)), _config.bucketCapacity); _buffer.utmb.lastTime = _local1; if (_debug.verbose){ _debug.info(_buffer.utmb.toString(), VisualDebugMode.geek); }; }; } public function get utmhn():String{ return (_info.domainName); } private function _shortenURL(_arg1:String):String{ var _local2:Array; if (_arg1.length > 60){ _local2 = _arg1.split("/"); while (_arg1.length > 60) { _local2.shift(); _arg1 = ("../" + _local2.join("/")); }; }; return (_arg1); } private function _debugSend(_arg1:URLRequest):void{ var _local3:String; var _local2 = ""; switch (_debug.mode){ case VisualDebugMode.geek: _local2 = ((("Gif Request #" + _alertcount) + ":\n") + _arg1.url); break; case VisualDebugMode.advanced: _local3 = _arg1.url; if (_local3.indexOf("?") > -1){ _local3 = _local3.split("?")[0]; }; _local3 = _shortenURL(_local3); _local2 = (((("Send Gif Request #" + _alertcount) + ":\n") + _local3) + " ?"); break; case VisualDebugMode.basic: default: _local2 = (((("Send " + _config.serverMode.toString()) + " Gif Request #") + _alertcount) + " ?"); }; _debug.alertGifRequest(_local2, _arg1, this); _alertcount++; } public function onComplete(_arg1:Event):void{ var _local2:String = _arg1.target.loader.name; _requests[_local2].complete(); var _local3 = (("Gif Request #" + _local2) + " sent"); var _local4:String = _requests[_local2].request.url; if (_debug.GIFRequests){ if (!_debug.verbose){ if (_local4.indexOf("?") > -1){ _local4 = _local4.split("?")[0]; }; _local4 = _shortenURL(_local4); }; if (int(_debug.mode) > int(VisualDebugMode.basic)){ _local3 = (_local3 + ((" to \"" + _local4) + "\"")); }; _debug.success(_local3); } else { _debug.info(_local3); }; _removeListeners(_arg1.target); } } }//package com.google.analytics.core
Section 41
//IdleTimer (com.google.analytics.core.IdleTimer) package com.google.analytics.core { import flash.events.*; import flash.display.*; import flash.utils.*; import com.google.analytics.v4.*; import com.google.analytics.debug.*; public class IdleTimer { private var _stage:Stage; private var _loop:Timer; private var _lastMove:int; private var _inactivity:Number; private var _debug:DebugConfiguration; private var _session:Timer; private var _buffer:Buffer; public function IdleTimer(_arg1:Configuration, _arg2:DebugConfiguration, _arg3:DisplayObject, _arg4:Buffer){ var _local5:Number = _arg1.idleLoop; var _local6:Number = _arg1.idleTimeout; var _local7:Number = _arg1.sessionTimeout; _loop = new Timer((_local5 * 1000)); _session = new Timer((_local7 * 1000), 1); _debug = _arg2; _stage = _arg3.stage; _buffer = _arg4; _lastMove = getTimer(); _inactivity = (_local6 * 1000); _loop.addEventListener(TimerEvent.TIMER, checkForIdle); _session.addEventListener(TimerEvent.TIMER_COMPLETE, endSession); _stage.addEventListener(MouseEvent.MOUSE_MOVE, onMouseMove); _debug.info(((((("delay: " + _local5) + "sec , inactivity: ") + _local6) + "sec, sessionTimeout: ") + _local7), VisualDebugMode.geek); _loop.start(); } private function onMouseMove(_arg1:MouseEvent):void{ _lastMove = getTimer(); if (_session.running){ _debug.info("session timer reset", VisualDebugMode.geek); _session.reset(); }; } public function endSession(_arg1:TimerEvent):void{ _session.removeEventListener(TimerEvent.TIMER_COMPLETE, endSession); _debug.info("session timer end session", VisualDebugMode.geek); _session.reset(); _buffer.resetCurrentSession(); _debug.info(_buffer.utmb.toString(), VisualDebugMode.geek); _debug.info(_buffer.utmc.toString(), VisualDebugMode.geek); _session.addEventListener(TimerEvent.TIMER_COMPLETE, endSession); } public function checkForIdle(_arg1:TimerEvent):void{ var _local2:int = getTimer(); if ((_local2 - _lastMove) >= _inactivity){ if (!_session.running){ _debug.info("session timer start", VisualDebugMode.geek); _session.start(); }; }; } } }//package com.google.analytics.core
Section 42
//Organic (com.google.analytics.core.Organic) package com.google.analytics.core { import com.google.analytics.utils.*; public class Organic { private var _sourcesCache:Array; private var _sourcesEngine:Array; private var _ignoredKeywords:Array; private var _ignoredReferralsCache:Object; private var _ignoredReferrals:Array; private var _ignoredKeywordsCache:Object; private var _sources:Array; public static var throwErrors:Boolean = false; public function Organic(){ _sources = []; _sourcesCache = []; _sourcesEngine = []; _ignoredReferrals = []; _ignoredReferralsCache = {}; _ignoredKeywords = []; _ignoredKeywordsCache = {}; } public function isIgnoredKeyword(_arg1:String):Boolean{ if (_ignoredKeywordsCache.hasOwnProperty(_arg1)){ return (true); }; return (false); } public function getKeywordValue(_arg1:OrganicReferrer, _arg2:String):String{ var _local3:String = _arg1.keyword; return (getKeywordValueFromPath(_local3, _arg2)); } public function isIgnoredReferral(_arg1:String):Boolean{ if (_ignoredReferralsCache.hasOwnProperty(_arg1)){ return (true); }; return (false); } public function clear():void{ clearEngines(); clearIgnoredReferrals(); clearIgnoredKeywords(); } public function get count():int{ return (_sources.length); } public function get ignoredKeywordsCount():int{ return (_ignoredKeywords.length); } public function match(_arg1:String):Boolean{ if (_arg1 == ""){ return (false); }; _arg1 = _arg1.toLowerCase(); if (_sourcesEngine[_arg1] != undefined){ return (true); }; return (false); } public function clearIgnoredKeywords():void{ _ignoredKeywords = []; _ignoredKeywordsCache = {}; } public function addSource(_arg1:String, _arg2:String):void{ var _local3:OrganicReferrer = new OrganicReferrer(_arg1, _arg2); if (_sourcesCache[_local3.toString()] == undefined){ _sources.push(_local3); _sourcesCache[_local3.toString()] = (_sources.length - 1); if (_sourcesEngine[_local3.engine] == undefined){ _sourcesEngine[_local3.engine] = [(_sources.length - 1)]; } else { _sourcesEngine[_local3.engine].push((_sources.length - 1)); }; } else { if (throwErrors){ throw (new Error((_local3.toString() + " already exists, we don't add it."))); }; }; } public function clearEngines():void{ _sources = []; _sourcesCache = []; _sourcesEngine = []; } public function get ignoredReferralsCount():int{ return (_ignoredReferrals.length); } public function addIgnoredReferral(_arg1:String):void{ if (_ignoredReferralsCache[_arg1] == undefined){ _ignoredReferrals.push(_arg1); _ignoredReferralsCache[_arg1] = (_ignoredReferrals.length - 1); } else { if (throwErrors){ throw (new Error((("\"" + _arg1) + "\" already exists, we don't add it."))); }; }; } public function clearIgnoredReferrals():void{ _ignoredReferrals = []; _ignoredReferralsCache = {}; } public function getReferrerByName(_arg1:String):OrganicReferrer{ var _local2:int; if (match(_arg1)){ _local2 = _sourcesEngine[_arg1][0]; return (_sources[_local2]); }; return (null); } public function addIgnoredKeyword(_arg1:String):void{ if (_ignoredKeywordsCache[_arg1] == undefined){ _ignoredKeywords.push(_arg1); _ignoredKeywordsCache[_arg1] = (_ignoredKeywords.length - 1); } else { if (throwErrors){ throw (new Error((("\"" + _arg1) + "\" already exists, we don't add it."))); }; }; } public function get sources():Array{ return (_sources); } public static function getKeywordValueFromPath(_arg1:String, _arg2:String):String{ var _local3:String; var _local4:Variables; if (_arg2.indexOf((_arg1 + "=")) > -1){ if (_arg2.charAt(0) == "?"){ _arg2 = _arg2.substr(1); }; _arg2 = _arg2.split("+").join("%20"); _local4 = new Variables(_arg2); _local3 = _local4[_arg1]; }; return (_local3); } } }//package com.google.analytics.core
Section 43
//OrganicReferrer (com.google.analytics.core.OrganicReferrer) package com.google.analytics.core { public class OrganicReferrer { private var _engine:String; private var _keyword:String; public function OrganicReferrer(_arg1:String, _arg2:String){ this.engine = _arg1; this.keyword = _arg2; } public function get keyword():String{ return (_keyword); } public function get engine():String{ return (_engine); } public function set engine(_arg1:String):void{ _engine = _arg1.toLowerCase(); } public function toString():String{ return (((engine + "?") + keyword)); } public function set keyword(_arg1:String):void{ _keyword = _arg1.toLowerCase(); } } }//package com.google.analytics.core
Section 44
//RequestObject (com.google.analytics.core.RequestObject) package com.google.analytics.core { import flash.utils.*; import flash.net.*; public class RequestObject { public var start:int; public var end:int; public var request:URLRequest; public function RequestObject(_arg1:URLRequest){ start = getTimer(); this.request = _arg1; } public function hasCompleted():Boolean{ return ((end > 0)); } public function toString():String{ var _local1:Array = []; _local1.push((("duration: " + duration) + "ms")); _local1.push(("url: " + request.url)); return ((("{ " + _local1.join(", ")) + " }")); } public function complete():void{ end = getTimer(); } public function get duration():int{ if (!hasCompleted()){ return (0); }; return ((end - start)); } } }//package com.google.analytics.core
Section 45
//ServerOperationMode (com.google.analytics.core.ServerOperationMode) package com.google.analytics.core { public class ServerOperationMode { private var _value:int; private var _name:String; public static const both:ServerOperationMode = new ServerOperationMode(2, "both"); ; public static const remote:ServerOperationMode = new ServerOperationMode(1, "remote"); ; public static const local:ServerOperationMode = new ServerOperationMode(0, "local"); ; public function ServerOperationMode(_arg1:int=0, _arg2:String=""){ _value = _arg1; _name = _arg2; } public function valueOf():int{ return (_value); } public function toString():String{ return (_name); } } }//package com.google.analytics.core
Section 46
//TrackerCache (com.google.analytics.core.TrackerCache) package com.google.analytics.core { import com.google.analytics.v4.*; import flash.errors.*; public class TrackerCache implements GoogleAnalyticsAPI { public var tracker:GoogleAnalyticsAPI; private var _ar:Array; public static var CACHE_THROW_ERROR:Boolean; public function TrackerCache(_arg1:GoogleAnalyticsAPI=null){ this.tracker = _arg1; _ar = []; } public function size():uint{ return (_ar.length); } public function flush():void{ var _local1:Object; var _local2:String; var _local3:Array; var _local4:int; var _local5:int; if (tracker == null){ return; }; if (size() > 0){ _local4 = _ar.length; while (_local5 < _local4) { _local1 = _ar.shift(); _local2 = (_local1.name as String); _local3 = (_local1.args as Array); if (((!((_local2 == null))) && ((_local2 in tracker)))){ (tracker[_local2] as Function).apply(tracker, _local3); }; _local5++; }; }; } public function enqueue(_arg1:String, ... _args):Boolean{ if (_arg1 == null){ return (false); }; _ar.push({name:_arg1, args:_args}); return (true); } public function link(_arg1:String, _arg2:Boolean=false):void{ enqueue("link", _arg1, _arg2); } public function addOrganic(_arg1:String, _arg2:String):void{ enqueue("addOrganic", _arg1, _arg2); } public function setAllowLinker(_arg1:Boolean):void{ enqueue("setAllowLinker", _arg1); } public function trackEvent(_arg1:String, _arg2:String, _arg3:String=null, _arg4:Number=NaN):Boolean{ enqueue("trackEvent", _arg1, _arg2, _arg3, _arg4); return (true); } public function getClientInfo():Boolean{ if (CACHE_THROW_ERROR){ throw (new IllegalOperationError("The tracker is not ready and you can use the 'getClientInfo' method for the moment.")); }; return (false); } public function trackTrans():void{ enqueue("trackTrans"); } public function trackPageview(_arg1:String=""):void{ enqueue("trackPageview", _arg1); } public function setClientInfo(_arg1:Boolean):void{ enqueue("setClientInfo", _arg1); } public function linkByPost(_arg1:Object, _arg2:Boolean=false):void{ enqueue("linkByPost", _arg1, _arg2); } public function setCookieTimeout(_arg1:int):void{ enqueue("setCookieTimeout", _arg1); } public function isEmpty():Boolean{ return ((_ar.length == 0)); } public function getDetectTitle():Boolean{ if (CACHE_THROW_ERROR){ throw (new IllegalOperationError("The tracker is not ready and you can use the 'getDetectTitle' method for the moment.")); }; return (false); } public function resetSession():void{ enqueue("resetSession"); } public function setDetectFlash(_arg1:Boolean):void{ enqueue("setDetectFlash", _arg1); } public function clear():void{ _ar = []; } public function setCampNameKey(_arg1:String):void{ enqueue("setCampNameKey", _arg1); } public function addItem(_arg1:String, _arg2:String, _arg3:String, _arg4:String, _arg5:Number, _arg6:int):void{ enqueue("addItem", _arg1, _arg2, _arg3, _arg4, _arg5, _arg6); } public function createEventTracker(_arg1:String):EventTracker{ if (CACHE_THROW_ERROR){ throw (new IllegalOperationError("The tracker is not ready and you can use the 'createEventTracker' method for the moment.")); }; return (null); } public function setVar(_arg1:String):void{ enqueue("setVar", _arg1); } public function clearIgnoredOrganic():void{ enqueue("clearIgnoredOrganic"); } public function setDomainName(_arg1:String):void{ enqueue("setDomainName", _arg1); } public function setCampSourceKey(_arg1:String):void{ enqueue("setCampSourceKey", _arg1); } public function addTrans(_arg1:String, _arg2:String, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:String, _arg7:String, _arg8:String):Object{ if (CACHE_THROW_ERROR){ throw (new IllegalOperationError("The tracker is not ready and you can use the 'addTrans' method for the moment.")); }; return (null); } public function setCampContentKey(_arg1:String):void{ enqueue("setCampContentKey", _arg1); } public function setLocalServerMode():void{ enqueue("setLocalServerMode"); } public function getLocalGifPath():String{ if (CACHE_THROW_ERROR){ throw (new IllegalOperationError("The tracker is not ready and you can use the 'getLocalGifPath' method for the moment.")); }; return (""); } public function setAllowAnchor(_arg1:Boolean):void{ enqueue("setAllowAnchor", _arg1); } public function clearIgnoredRef():void{ enqueue("clearIgnoredRef"); } public function setLocalGifPath(_arg1:String):void{ enqueue("setLocalGifPath", _arg1); } public function getVersion():String{ if (CACHE_THROW_ERROR){ throw (new IllegalOperationError("The tracker is not ready and you can use the 'getVersion' method for the moment.")); }; return (""); } public function setCookiePath(_arg1:String):void{ enqueue("setCookiePath", _arg1); } public function setSampleRate(_arg1:Number):void{ enqueue("setSampleRate", _arg1); } public function setDetectTitle(_arg1:Boolean):void{ enqueue("setDetectTitle", _arg1); } public function setAllowHash(_arg1:Boolean):void{ enqueue("setAllowHash", _arg1); } public function addIgnoredOrganic(_arg1:String):void{ enqueue("addIgnoredOrganic", _arg1); } public function setCampNOKey(_arg1:String):void{ enqueue("setCampNOKey", _arg1); } public function getServiceMode():ServerOperationMode{ if (CACHE_THROW_ERROR){ throw (new IllegalOperationError("The tracker is not ready and you can use the 'getServiceMode' method for the moment.")); }; return (null); } public function setLocalRemoteServerMode():void{ enqueue("setLocalRemoteServerMode"); } public function cookiePathCopy(_arg1:String):void{ enqueue("cookiePathCopy", _arg1); } public function getDetectFlash():Boolean{ if (CACHE_THROW_ERROR){ throw (new IllegalOperationError("The tracker is not ready and you can use the 'getDetectFlash' method for the moment.")); }; return (false); } public function setCampaignTrack(_arg1:Boolean):void{ enqueue("setCampaignTrack", _arg1); } public function clearOrganic():void{ enqueue("clearOrganic"); } public function setCampTermKey(_arg1:String):void{ enqueue("setCampTermKey", _arg1); } public function addIgnoredRef(_arg1:String):void{ enqueue("addIgnoredRef", _arg1); } public function setCampMediumKey(_arg1:String):void{ enqueue("setCampMediumKey", _arg1); } public function setSessionTimeout(_arg1:int):void{ enqueue("setSessionTimeout", _arg1); } public function setRemoteServerMode():void{ enqueue("setRemoteServerMode"); } public function element(){ return (_ar[0]); } public function getAccount():String{ if (CACHE_THROW_ERROR){ throw (new IllegalOperationError("The tracker is not ready and you can use the 'getAccount' method for the moment.")); }; return (""); } } }//package com.google.analytics.core
Section 47
//TrackerMode (com.google.analytics.core.TrackerMode) package com.google.analytics.core { public class TrackerMode { public static const BRIDGE:String = "Bridge"; public static const AS3:String = "AS3"; } }//package com.google.analytics.core
Section 48
//Utils (com.google.analytics.core.Utils) package com.google.analytics.core { public class Utils { public static function trim(_arg1:String, _arg2:Boolean=false):String{ var _local5:int; var _local6:int; var _local7:int; if (_arg1 == ""){ return (""); }; var _local3:Array = [" ", "\n", "\r", "\t"]; var _local4:String = _arg1; if (_arg2){ _local5 = 0; while ((((_local5 < _local3.length)) && ((_local4.indexOf(_local3[_local5]) > -1)))) { _local4 = _local4.split(_local3[_local5]).join(""); _local5++; }; } else { _local6 = 0; while ((((_local6 < _local4.length)) && ((_local3.indexOf(_local4.charAt(_local6)) > -1)))) { _local6++; }; _local4 = _local4.substr(_local6); _local7 = (_local4.length - 1); while ((((_local7 >= 0)) && ((_local3.indexOf(_local4.charAt(_local7)) > -1)))) { _local7--; }; _local4 = _local4.substring(0, (_local7 + 1)); }; return (_local4); } public static function generateHash(_arg1:String):int{ var _local4:int; var _local5:int; var _local2 = 1; var _local3:int; if (((!((_arg1 == null))) && (!((_arg1 == ""))))){ _local2 = 0; _local4 = (_arg1.length - 1); while (_local4 >= 0) { _local5 = _arg1.charCodeAt(_local4); _local2 = ((((_local2 << 6) & 268435455) + _local5) + (_local5 << 14)); _local3 = (_local2 & 266338304); if (_local3 != 0){ _local2 = (_local2 ^ (_local3 >> 21)); }; _local4--; }; }; return (_local2); } public static function generate32bitRandom():int{ return (Math.round((Math.random() * 2147483647))); } public static function validateAccount(_arg1:String):Boolean{ var _local2:RegExp = /^UA-[0-9]*-[0-9]*$/; return (_local2.test(_arg1)); } } }//package com.google.analytics.core
Section 49
//Cookie (com.google.analytics.data.Cookie) package com.google.analytics.data { public interface Cookie { function fromSharedObject(_arg1:Object):void; function toURLString():String; function get creation():Date; function toSharedObject():Object; function isExpired():Boolean; function set creation(_arg1:Date):void; function set expiration(_arg1:Date):void; function get expiration():Date; } }//package com.google.analytics.data
Section 50
//UTMA (com.google.analytics.data.UTMA) package com.google.analytics.data { import com.google.analytics.utils.*; public class UTMA extends UTMCookie { private var _sessionId:Number; private var _domainHash:Number; private var _firstTime:Number; private var _currentTime:Number; private var _lastTime:Number; private var _sessionCount:Number; public function UTMA(_arg1:Number=NaN, _arg2:Number=NaN, _arg3:Number=NaN, _arg4:Number=NaN, _arg5:Number=NaN, _arg6:Number=NaN){ super("utma", "__utma", ["domainHash", "sessionId", "firstTime", "lastTime", "currentTime", "sessionCount"], (Timespan.twoyears * 1000)); this.domainHash = _arg1; this.sessionId = _arg2; this.firstTime = _arg3; this.lastTime = _arg4; this.currentTime = _arg5; this.sessionCount = _arg6; } public function get lastTime():Number{ return (_lastTime); } public function set lastTime(_arg1:Number):void{ _lastTime = _arg1; update(); } public function set currentTime(_arg1:Number):void{ _currentTime = _arg1; update(); } public function get sessionId():Number{ return (_sessionId); } public function get sessionCount():Number{ return (_sessionCount); } public function get firstTime():Number{ return (_firstTime); } public function get currentTime():Number{ return (_currentTime); } public function set domainHash(_arg1:Number):void{ _domainHash = _arg1; update(); } public function set sessionId(_arg1:Number):void{ _sessionId = _arg1; update(); } public function set sessionCount(_arg1:Number):void{ _sessionCount = _arg1; update(); } public function get domainHash():Number{ return (_domainHash); } public function set firstTime(_arg1:Number):void{ _firstTime = _arg1; update(); } } }//package com.google.analytics.data
Section 51
//UTMB (com.google.analytics.data.UTMB) package com.google.analytics.data { import com.google.analytics.utils.*; public class UTMB extends UTMCookie { private var _trackCount:Number; private var _lastTime:Number; private var _domainHash:Number; private var _token:Number; public static var defaultTimespan:Number = Timespan.thirtyminutes; public function UTMB(_arg1:Number=NaN, _arg2:Number=NaN, _arg3:Number=NaN, _arg4:Number=NaN){ super("utmb", "__utmb", ["domainHash", "trackCount", "token", "lastTime"], (defaultTimespan * 1000)); this.domainHash = _arg1; this.trackCount = _arg2; this.token = _arg3; this.lastTime = _arg4; } public function set token(_arg1:Number):void{ _token = _arg1; update(); } public function set trackCount(_arg1:Number):void{ _trackCount = _arg1; update(); } public function get lastTime():Number{ return (_lastTime); } public function set domainHash(_arg1:Number):void{ _domainHash = _arg1; update(); } public function set lastTime(_arg1:Number):void{ _lastTime = _arg1; update(); } public function get domainHash():Number{ return (_domainHash); } public function get token():Number{ return (_token); } public function get trackCount():Number{ return (_trackCount); } } }//package com.google.analytics.data
Section 52
//UTMC (com.google.analytics.data.UTMC) package com.google.analytics.data { public class UTMC extends UTMCookie { private var _domainHash:Number; public function UTMC(_arg1:Number=NaN){ super("utmc", "__utmc", ["domainHash"]); this.domainHash = _arg1; } public function get domainHash():Number{ return (_domainHash); } public function set domainHash(_arg1:Number):void{ _domainHash = _arg1; update(); } } }//package com.google.analytics.data
Section 53
//UTMCookie (com.google.analytics.data.UTMCookie) package com.google.analytics.data { import com.google.analytics.core.*; public class UTMCookie implements Cookie { protected var inURL:String; protected var name:String; private var _creation:Date; private var _expiration:Date; public var proxy:Buffer; protected var fields:Array; private var _timespan:Number; public function UTMCookie(_arg1:String, _arg2:String, _arg3:Array, _arg4:Number=0){ this.name = _arg1; this.inURL = _arg2; this.fields = _arg3; _timestamp(_arg4); } public function isEmpty():Boolean{ var _local2:String; var _local1:int; var _local3:int; while (_local3 < fields.length) { _local2 = fields[_local3]; if ((((this[_local2] is Number)) && (isNaN(this[_local2])))){ _local1++; } else { if ((((this[_local2] is String)) && ((this[_local2] == "")))){ _local1++; }; }; _local3++; }; if (_local1 == fields.length){ return (true); }; return (false); } public function resetTimestamp(_arg1:Number=NaN):void{ if (!isNaN(_arg1)){ _timespan = _arg1; }; _creation = null; _expiration = null; _timestamp(_timespan); } protected function update():void{ resetTimestamp(); if (proxy){ proxy.update(name, toSharedObject()); }; } public function reset():void{ var _local1:String; var _local2:int; while (_local2 < fields.length) { _local1 = fields[_local2]; if ((this[_local1] is Number)){ this[_local1] = NaN; } else { if ((this[_local1] is String)){ this[_local1] = ""; }; }; _local2++; }; resetTimestamp(); update(); } public function fromSharedObject(_arg1:Object):void{ var _local2:String; var _local3:int = fields.length; var _local4:int; while (_local4 < _local3) { _local2 = fields[_local4]; if (_arg1[_local2]){ this[_local2] = _arg1[_local2]; }; _local4++; }; if (_arg1.creation){ this.creation = _arg1.creation; }; if (_arg1.expiration){ this.expiration = _arg1.expiration; }; } private function _timestamp(_arg1:Number):void{ creation = new Date(); _timespan = _arg1; if (_arg1 > 0){ expiration = new Date((creation.valueOf() + _arg1)); }; } public function isExpired():Boolean{ var _local1:Date = new Date(); var _local2:Number = (expiration.valueOf() - _local1.valueOf()); if (_local2 <= 0){ return (true); }; return (false); } public function set expiration(_arg1:Date):void{ _expiration = _arg1; } public function get creation():Date{ return (_creation); } public function valueOf():String{ var _local2:String; var _local3:*; var _local1:Array = []; var _local4:int; while (_local4 < fields.length) { _local2 = fields[_local4]; _local3 = this[_local2]; if ((_local3 is String)){ if (_local3 == ""){ _local3 = "-"; _local1.push(_local3); } else { _local1.push(_local3); }; } else { if ((_local3 is Number)){ if (_local3 == 0){ _local1.push(_local3); } else { if (isNaN(_local3)){ _local3 = "-"; _local1.push(_local3); } else { _local1.push(_local3); }; }; }; }; _local4++; }; return (("" + _local1.join("."))); } public function toURLString():String{ return (((inURL + "=") + valueOf())); } public function get expiration():Date{ if (_expiration){ return (_expiration); }; return (new Date((new Date().valueOf() + 1000))); } public function toSharedObject():Object{ var _local2:String; var _local3:*; var _local1:Object = {}; var _local4:int; for (;_local4 < fields.length;_local4++) { _local2 = fields[_local4]; _local3 = this[_local2]; if ((_local3 is String)){ _local1[_local2] = _local3; } else { if (_local3 == 0){ _local1[_local2] = _local3; } else { if (isNaN(_local3)){ continue; } else { _local1[_local2] = _local3; }; }; }; }; _local1.creation = creation; _local1.expiration = expiration; return (_local1); } public function toString(_arg1:Boolean=false):String{ var _local3:String; var _local4:*; var _local2:Array = []; var _local5:int = fields.length; var _local6:int; for (;_local6 < _local5;_local6++) { _local3 = fields[_local6]; _local4 = this[_local3]; if ((_local4 is String)){ _local2.push((((_local3 + ": \"") + _local4) + "\"")); } else { if (_local4 == 0){ _local2.push(((_local3 + ": ") + _local4)); } else { if (isNaN(_local4)){ continue; } else { _local2.push(((_local3 + ": ") + _local4)); }; }; }; }; var _local7 = (((name.toUpperCase() + " {") + _local2.join(", ")) + "}"); if (_arg1){ _local7 = (_local7 + (((" creation:" + creation) + ", expiration:") + expiration)); }; return (_local7); } public function set creation(_arg1:Date):void{ _creation = _arg1; } } }//package com.google.analytics.data
Section 54
//UTMK (com.google.analytics.data.UTMK) package com.google.analytics.data { public class UTMK extends UTMCookie { private var _hash:Number; public function UTMK(_arg1:Number=NaN){ super("utmk", "__utmk", ["hash"]); this.hash = _arg1; } public function set hash(_arg1:Number):void{ _hash = _arg1; update(); } public function get hash():Number{ return (_hash); } } }//package com.google.analytics.data
Section 55
//UTMV (com.google.analytics.data.UTMV) package com.google.analytics.data { import com.google.analytics.utils.*; public class UTMV extends UTMCookie { private var _domainHash:Number; private var _value:String; public function UTMV(_arg1:Number=NaN, _arg2:String=""){ super("utmv", "__utmv", ["domainHash", "value"], (Timespan.twoyears * 1000)); this.domainHash = _arg1; this.value = _arg2; } override public function toURLString():String{ return (((inURL + "=") + encodeURI(valueOf()))); } public function get value():String{ return (_value); } public function get domainHash():Number{ return (_domainHash); } public function set domainHash(_arg1:Number):void{ _domainHash = _arg1; update(); } public function set value(_arg1:String):void{ _value = _arg1; update(); } } }//package com.google.analytics.data
Section 56
//UTMZ (com.google.analytics.data.UTMZ) package com.google.analytics.data { import com.google.analytics.utils.*; public class UTMZ extends UTMCookie { private var _campaignTracking:String; private var _campaignCreation:Number; private var _responseCount:Number; private var _domainHash:Number; private var _campaignSessions:Number; public static var defaultTimespan:Number = Timespan.sixmonths; public function UTMZ(_arg1:Number=NaN, _arg2:Number=NaN, _arg3:Number=NaN, _arg4:Number=NaN, _arg5:String=""){ super("utmz", "__utmz", ["domainHash", "campaignCreation", "campaignSessions", "responseCount", "campaignTracking"], (defaultTimespan * 1000)); this.domainHash = _arg1; this.campaignCreation = _arg2; this.campaignSessions = _arg3; this.responseCount = _arg4; this.campaignTracking = _arg5; } public function set responseCount(_arg1:Number):void{ _responseCount = _arg1; update(); } public function set domainHash(_arg1:Number):void{ _domainHash = _arg1; update(); } public function set campaignCreation(_arg1:Number):void{ _campaignCreation = _arg1; update(); } public function get campaignTracking():String{ return (_campaignTracking); } public function get campaignSessions():Number{ return (_campaignSessions); } public function get domainHash():Number{ return (_domainHash); } public function get responseCount():Number{ return (_responseCount); } public function get campaignCreation():Number{ return (_campaignCreation); } public function set campaignSessions(_arg1:Number):void{ _campaignSessions = _arg1; update(); } public function set campaignTracking(_arg1:String):void{ _campaignTracking = _arg1; update(); } } }//package com.google.analytics.data
Section 57
//X10 (com.google.analytics.data.X10) package com.google.analytics.data { public class X10 { private var _delimEnd:String;// = ")" private var _minimum:int; private var _delimSet:String;// = "*" private var _escapeChar:String;// = "'" private var _delimBegin:String;// = "(" private var _delimNumValue:String;// = "!" private var _key:String;// = "k" private var _set:Array; private var _hasData:int; private var _escapeCharMap:Object; private var _projectData:Object; private var _value:String;// = "v" public function X10(){ _set = [_key, _value]; super(); _projectData = {}; _escapeCharMap = {}; _escapeCharMap[_escapeChar] = "'0"; _escapeCharMap[_delimEnd] = "'1"; _escapeCharMap[_delimSet] = "'2"; _escapeCharMap[_delimNumValue] = "'3"; _minimum = 1; } private function _setInternal(_arg1:Number, _arg2:String, _arg3:Number, _arg4:String):void{ if (!hasProject(_arg1)){ _projectData[_arg1] = {}; }; if (_projectData[_arg1][_arg2] == undefined){ _projectData[_arg1][_arg2] = []; }; _projectData[_arg1][_arg2][_arg3] = _arg4; _hasData = (_hasData + 1); } private function _renderProject(_arg1:Object):String{ var _local4:int; var _local5:Array; var _local2 = ""; var _local3:Boolean; var _local6:int = _set.length; _local4 = 0; while (_local4 < _local6) { _local5 = _arg1[_set[_local4]]; if (_local5){ if (_local3){ _local2 = (_local2 + _set[_local4]); }; _local2 = (_local2 + _renderDataType(_local5)); _local3 = false; } else { _local3 = true; }; _local4++; }; return (_local2); } public function hasProject(_arg1:Number):Boolean{ return (_projectData[_arg1]); } public function clearKey(_arg1:Number):void{ _clearInternal(_arg1, _key); } private function _renderDataType(_arg1:Array):String{ var _local3:String; var _local4:int; var _local2:Array = []; _local4 = 0; while (_local4 < _arg1.length) { if (_arg1[_local4] != undefined){ _local3 = ""; if (((!((_local4 == _minimum))) && ((_arg1[(_local4 - 1)] == undefined)))){ _local3 = (_local3 + _local4.toString()); _local3 = (_local3 + _delimNumValue); }; _local3 = (_local3 + _escapeExtensibleValue(_arg1[_local4])); _local2.push(_local3); }; _local4++; }; return (((_delimBegin + _local2.join(_delimSet)) + _delimEnd)); } public function getKey(_arg1:Number, _arg2:Number):String{ return ((_getInternal(_arg1, _key, _arg2) as String)); } public function hasData():Boolean{ return ((_hasData > 0)); } public function renderMergedUrlString(_arg1:X10=null):String{ var _local3:String; if (!_arg1){ return (renderUrlString()); }; var _local2:Array = [_arg1.renderUrlString()]; for (_local3 in _projectData) { if (((hasProject(Number(_local3))) && (!(_arg1.hasProject(Number(_local3)))))){ _local2.push((_local3 + _renderProject(_projectData[_local3]))); }; }; return (_local2.join("")); } public function setValue(_arg1:Number, _arg2:Number, _arg3:Number):Boolean{ if (((((!((Math.round(_arg3) == _arg3))) || (isNaN(_arg3)))) || ((_arg3 == Infinity)))){ return (false); }; _setInternal(_arg1, _value, _arg2, _arg3.toString()); return (true); } public function renderUrlString():String{ var _local2:String; var _local1:Array = []; for (_local2 in _projectData) { if (hasProject(Number(_local2))){ _local1.push((_local2 + _renderProject(_projectData[_local2]))); }; }; return (_local1.join("")); } private function _getInternal(_arg1:Number, _arg2:String, _arg3:Number):Object{ if (((hasProject(_arg1)) && (!((_projectData[_arg1][_arg2] == undefined))))){ return (_projectData[_arg1][_arg2][_arg3]); }; return (undefined); } public function setKey(_arg1:Number, _arg2:Number, _arg3:String):Boolean{ _setInternal(_arg1, _key, _arg2, _arg3); return (true); } public function clearValue(_arg1:Number):void{ _clearInternal(_arg1, _value); } private function _clearInternal(_arg1:Number, _arg2:String):void{ var _local3:Boolean; var _local4:int; var _local5:int; if (((hasProject(_arg1)) && (!((_projectData[_arg1][_arg2] == undefined))))){ _projectData[_arg1][_arg2] = undefined; _local3 = true; _local5 = _set.length; _local4 = 0; while (_local4 < _local5) { if (_projectData[_arg1][_set[_local4]] != undefined){ _local3 = false; break; }; _local4++; }; if (_local3){ _projectData[_arg1] = undefined; _hasData = (_hasData - 1); }; }; } public function getValue(_arg1:Number, _arg2:Number){ var _local3:* = _getInternal(_arg1, _value, _arg2); if (_local3 == null){ return (null); }; return (Number(_local3)); } private function _escapeExtensibleValue(_arg1:String):String{ var _local3:int; var _local4:String; var _local5:String; var _local2 = ""; _local3 = 0; while (_local3 < _arg1.length) { _local4 = _arg1.charAt(_local3); _local5 = _escapeCharMap[_local4]; if (_local5){ _local2 = (_local2 + _local5); } else { _local2 = (_local2 + _local4); }; _local3++; }; return (_local2); } } }//package com.google.analytics.data
Section 58
//_Style (com.google.analytics.debug._Style) package com.google.analytics.debug { import flash.text.*; import flash.net.*; public class _Style { public var failureColor:uint; public var borderColor:uint; public var backgroundColor:uint; private var _sheet:StyleSheet; public var roundedCorner:uint; public var warningColor:uint; public var infoColor:uint; public var alertColor:uint; public var successColor:uint; private var _loader:URLLoader; private var _defaultSheet:String; public function _Style(){ _sheet = new StyleSheet(); _loader = new URLLoader(); _init(); } private function _parseSheet(_arg1:String):void{ _sheet.parseCSS(_arg1); } public function get sheet():StyleSheet{ return (_sheet); } private function _init():void{ _defaultSheet = ""; _defaultSheet = (_defaultSheet + "a{text-decoration: underline;}\n"); _defaultSheet = (_defaultSheet + ".uiLabel{color: #000000;font-family: Arial;font-size: 12;margin-left: 2;margin-right: 2;}\n"); _defaultSheet = (_defaultSheet + ".uiWarning{color: #ffffff;font-family: Arial;font-size: 14;font-weight: bold;margin-left: 6;margin-right: 6;}\n"); _defaultSheet = (_defaultSheet + ".uiAlert{color: #ffffff;font-family: Arial;font-size: 14;font-weight: bold;margin-left: 6;margin-right: 6;}\n"); _defaultSheet = (_defaultSheet + ".uiInfo{color: #000000;font-family: Arial;font-size: 14;font-weight: bold;margin-left: 6;margin-right: 6;}\n"); _defaultSheet = (_defaultSheet + ".uiSuccess{color: #ffffff;font-family: Arial;font-size: 12;font-weight: bold;margin-left: 6;margin-right: 6;}\n"); _defaultSheet = (_defaultSheet + ".uiFailure{color: #ffffff;font-family: Arial;font-size: 12;font-weight: bold;margin-left: 6;margin-right: 6;}\n"); _defaultSheet = (_defaultSheet + ".uiAlertAction{color: #ffffff;text-align: center;font-family: Arial;font-size: 12;font-weight: bold;margin-left: 6;margin-right: 6;}\n"); _defaultSheet = (_defaultSheet + ".uiAlertTitle{color: #ffffff;font-family: Arial;font-size: 16;font-weight: bold;margin-left: 6;margin-right: 6;}\n"); _defaultSheet = (_defaultSheet + "\n"); roundedCorner = 6; backgroundColor = 0xCCCCCC; borderColor = 0x555555; infoColor = 16777113; alertColor = 0xFFCC00; warningColor = 0xCC0000; successColor = 0xFF00; failureColor = 0xFF0000; _parseSheet(_defaultSheet); } } }//package com.google.analytics.debug
Section 59
//Alert (com.google.analytics.debug.Alert) package com.google.analytics.debug { import flash.events.*; public class Alert extends Label { public var autoClose:Boolean;// = true public var actionOnNextLine:Boolean;// = true private var _actions:Array; public function Alert(_arg1:String, _arg2:Array, _arg3:String="uiAlert", _arg4:uint=0, _arg5:Align=null, _arg6:Boolean=false, _arg7:Boolean=true){ if (_arg4 == 0){ _arg4 = Style.alertColor; }; if (_arg5 == null){ _arg5 = Align.center; }; super(_arg1, _arg3, _arg4, _arg5, _arg6); this.selectable = true; super.mouseChildren = true; this.buttonMode = true; this.mouseEnabled = true; this.useHandCursor = true; this.actionOnNextLine = _arg7; _actions = []; var _local8:int; while (_local8 < _arg2.length) { _arg2[_local8].container = this; _actions.push(_arg2[_local8]); _local8++; }; } private function _defineActions():void{ var _local3:AlertAction; var _local1 = ""; if (actionOnNextLine){ _local1 = (_local1 + "\n"); } else { _local1 = (_local1 + " |"); }; _local1 = (_local1 + " "); var _local2:Array = []; var _local4:int; while (_local4 < _actions.length) { _local3 = _actions[_local4]; _local2.push((((("<a href=\"event:" + _local3.activator) + "\">") + _local3.name) + "</a>")); _local4++; }; _local1 = (_local1 + _local2.join(" | ")); appendText(_local1, "uiAlertAction"); } protected function isValidAction(_arg1:String):Boolean{ var _local2:int; while (_local2 < _actions.length) { if (_arg1 == _actions[_local2].activator){ return (true); }; _local2++; }; return (false); } override protected function layout():void{ super.layout(); _defineActions(); } protected function getAction(_arg1:String):AlertAction{ var _local2:int; while (_local2 < _actions.length) { if (_arg1 == _actions[_local2].activator){ return (_actions[_local2]); }; _local2++; }; return (null); } protected function spaces(_arg1:int):String{ var _local2 = ""; var _local3 = " "; var _local4:int; while (_local4 < (_arg1 + 1)) { _local2 = (_local2 + _local3); _local4++; }; return (_local2); } override public function onLink(_arg1:TextEvent):void{ var _local2:AlertAction; if (isValidAction(_arg1.text)){ _local2 = getAction(_arg1.text); if (_local2){ _local2.execute(); }; }; if (autoClose){ close(); }; } public function close():void{ if (parent != null){ parent.removeChild(this); }; } } }//package com.google.analytics.debug
Section 60
//AlertAction (com.google.analytics.debug.AlertAction) package com.google.analytics.debug { public class AlertAction { public var container:Alert; private var _callback; public var activator:String; public var name:String; public function AlertAction(_arg1:String, _arg2:String, _arg3){ this.name = _arg1; this.activator = _arg2; _callback = _arg3; } public function execute():void{ if (_callback){ if ((_callback is Function)){ (_callback as Function)(); } else { if ((_callback is String)){ var _local1 = container; _local1[_callback](); }; }; }; } } }//package com.google.analytics.debug
Section 61
//Align (com.google.analytics.debug.Align) package com.google.analytics.debug { public class Align { private var _value:int; private var _name:String; public static const bottomRight:Align = new Align(18, "bottomRight"); ; public static const right:Align = new Align(16, "right"); ; public static const left:Align = new Align(32, "left"); ; public static const topRight:Align = new Align(17, "topRight"); ; public static const bottom:Align = new Align(2, "bottom"); ; public static const bottomLeft:Align = new Align(34, "bottomLeft"); ; public static const topLeft:Align = new Align(33, "topLeft"); ; public static const center:Align = new Align(0x0100, "center"); ; public static const none:Align = new Align(0, "none"); ; public static const top:Align = new Align(1, "top"); ; public function Align(_arg1:int=0, _arg2:String=""){ _value = _arg1; _name = _arg2; } public function valueOf():int{ return (_value); } public function toString():String{ return (_name); } } }//package com.google.analytics.debug
Section 62
//Background (com.google.analytics.debug.Background) package com.google.analytics.debug { import flash.display.*; public class Background { public static function drawRounded(_arg1, _arg2:Graphics, _arg3:uint=0, _arg4:uint=0):void{ var _local5:uint; var _local6:uint; var _local7:uint = Style.roundedCorner; if ((((_arg3 > 0)) && ((_arg4 > 0)))){ _local5 = _arg3; _local6 = _arg4; } else { _local5 = _arg1.width; _local6 = _arg1.height; }; if (((_arg1.stickToEdge) && (!((_arg1.alignement == Align.none))))){ switch (_arg1.alignement){ case Align.top: _arg2.drawRoundRectComplex(0, 0, _local5, _local6, 0, 0, _local7, _local7); break; case Align.topLeft: _arg2.drawRoundRectComplex(0, 0, _local5, _local6, 0, 0, 0, _local7); break; case Align.topRight: _arg2.drawRoundRectComplex(0, 0, _local5, _local6, 0, 0, _local7, 0); break; case Align.bottom: _arg2.drawRoundRectComplex(0, 0, _local5, _local6, _local7, _local7, 0, 0); break; case Align.bottomLeft: _arg2.drawRoundRectComplex(0, 0, _local5, _local6, 0, _local7, 0, 0); break; case Align.bottomRight: _arg2.drawRoundRectComplex(0, 0, _local5, _local6, _local7, 0, 0, 0); break; case Align.left: _arg2.drawRoundRectComplex(0, 0, _local5, _local6, 0, _local7, 0, _local7); break; case Align.right: _arg2.drawRoundRectComplex(0, 0, _local5, _local6, _local7, 0, _local7, 0); break; case Align.center: _arg2.drawRoundRect(0, 0, _local5, _local6, _local7, _local7); break; }; } else { _arg2.drawRoundRect(0, 0, _local5, _local6, _local7, _local7); }; } } }//package com.google.analytics.debug
Section 63
//Debug (com.google.analytics.debug.Debug) package com.google.analytics.debug { import flash.events.*; import flash.ui.*; public class Debug extends Label { private var _lines:Array; private var _preferredForcedWidth:uint;// = 540 private var _linediff:int;// = 0 public var maxLines:uint;// = 16 public static var count:uint = 0; public function Debug(_arg1:uint=0, _arg2:Align=null, _arg3:Boolean=false){ if (_arg2 == null){ _arg2 = Align.bottom; }; super("", "uiLabel", _arg1, _arg2, _arg3); this.name = ("Debug" + count++); _lines = []; selectable = true; addEventListener(KeyboardEvent.KEY_DOWN, onKey); } public function writeBold(_arg1:String):void{ write(_arg1, true); } private function _getLinesToDisplay(_arg1:int=0):Array{ var _local2:Array; var _local3:uint; var _local4:uint; if ((_lines.length - 1) > maxLines){ if ((_linediff <= 0)){ _linediff = (_linediff + _arg1); } else { if ((((_linediff > 0)) && ((_arg1 < 0)))){ _linediff = (_linediff + _arg1); }; }; _local3 = ((_lines.length - maxLines) + _linediff); _local4 = (_local3 + maxLines); _local2 = _lines.slice(_local3, _local4); } else { _local2 = _lines; }; return (_local2); } private function onKey(_arg1:KeyboardEvent=null):void{ var _local2:Array; switch (_arg1.keyCode){ case Keyboard.DOWN: _local2 = _getLinesToDisplay(1); break; case Keyboard.UP: _local2 = _getLinesToDisplay(-1); break; default: _local2 = null; }; if (_local2 == null){ return; }; text = _local2.join("\n"); } override public function get forcedWidth():uint{ if (this.parent){ if (UISprite(this.parent).forcedWidth > _preferredForcedWidth){ return (_preferredForcedWidth); }; return (UISprite(this.parent).forcedWidth); //unresolved jump }; return (super.forcedWidth); } public function write(_arg1:String, _arg2:Boolean=false):void{ var _local3:Array; if (_arg1.indexOf("") > -1){ _local3 = _arg1.split("\n"); } else { _local3 = [_arg1]; }; var _local4 = ""; var _local5 = ""; if (_arg2){ _local4 = "<b>"; _local5 = "</b>"; }; var _local6:int; while (_local6 < _local3.length) { _lines.push(((_local4 + _local3[_local6]) + _local5)); _local6++; }; var _local7:Array = _getLinesToDisplay(); text = _local7.join("\n"); } public function close():void{ dispose(); } override protected function dispose():void{ removeEventListener(KeyboardEvent.KEY_DOWN, onKey); super.dispose(); } } }//package com.google.analytics.debug
Section 64
//DebugConfiguration (com.google.analytics.debug.DebugConfiguration) package com.google.analytics.debug { import flash.utils.*; import com.google.analytics.core.*; import flash.net.*; import flash.ui.*; public class DebugConfiguration { public var showHideKey:Number; private var _mode:VisualDebugMode; private var _verbose:Boolean;// = false public var destroyKey:Number; public var GIFRequests:Boolean;// = false public var showInfos:Boolean;// = true public var infoTimeout:Number;// = 1000 public var minimizedOnStart:Boolean;// = false private var _active:Boolean;// = false public var traceOutput:Boolean;// = false public var layout:ILayout; public var warningTimeout:Number;// = 1500 public var javascript:Boolean;// = false public var showWarnings:Boolean;// = true private var _visualInitialized:Boolean;// = false public function DebugConfiguration(){ _mode = VisualDebugMode.basic; showHideKey = Keyboard.SPACE; destroyKey = Keyboard.BACKSPACE; super(); } public function get verbose():Boolean{ return (_verbose); } public function set verbose(_arg1:Boolean):void{ _verbose = _arg1; } public function set mode(_arg1):void{ if ((_arg1 is String)){ switch (_arg1){ case "geek": _arg1 = VisualDebugMode.geek; break; case "advanced": _arg1 = VisualDebugMode.advanced; break; case "basic": default: _arg1 = VisualDebugMode.basic; }; }; _mode = _arg1; } public function success(_arg1:String):void{ if (layout){ layout.createSuccessAlert(_arg1); }; if (traceOutput){ trace((("[+] " + _arg1) + " !!")); }; } public function get active():Boolean{ return (_active); } private function _initializeVisual():void{ if (layout){ layout.init(); _visualInitialized = true; }; } private function _destroyVisual():void{ if (((layout) && (_visualInitialized))){ layout.destroy(); }; } public function warning(_arg1:String, _arg2:VisualDebugMode=null):void{ if (_filter(_arg2)){ return; }; if (((layout) && (showWarnings))){ layout.createWarning(_arg1); }; if (traceOutput){ trace((("## " + _arg1) + " ##")); }; } private function _filter(_arg1:VisualDebugMode=null):Boolean{ return (((_arg1) && ((int(_arg1) >= int(this.mode))))); } public function failure(_arg1:String):void{ if (layout){ layout.createFailureAlert(_arg1); }; if (traceOutput){ trace((("[-] " + _arg1) + " !!")); }; } public function get mode(){ return (_mode); } public function set active(_arg1:Boolean):void{ _active = _arg1; if (_active){ _initializeVisual(); } else { _destroyVisual(); }; } protected function trace(_arg1:String):void{ var _local7:Array; var _local8:int; var _local2:Array = []; var _local3 = ""; var _local4 = ""; if (this.mode == VisualDebugMode.geek){ _local3 = (getTimer() + " - "); _local4 = (new Array(_local3.length).join(" ") + " "); }; if (_arg1.indexOf("\n") > -1){ _local7 = _arg1.split("\n"); _local8 = 0; while (_local8 < _local7.length) { if (_local7[_local8] == ""){ } else { if (_local8 == 0){ _local2.push((_local3 + _local7[_local8])); } else { _local2.push((_local4 + _local7[_local8])); }; }; _local8++; }; } else { _local2.push((_local3 + _arg1)); }; var _local5:int = _local2.length; var _local6:int; while (_local6 < _local5) { trace(_local2[_local6]); _local6++; }; } public function alert(_arg1:String):void{ if (layout){ layout.createAlert(_arg1); }; if (traceOutput){ trace((("!! " + _arg1) + " !!")); }; } public function info(_arg1:String, _arg2:VisualDebugMode=null):void{ if (_filter(_arg2)){ return; }; if (((layout) && (showInfos))){ layout.createInfo(_arg1); }; if (traceOutput){ trace(_arg1); }; } public function alertGifRequest(_arg1:String, _arg2:URLRequest, _arg3:GIFRequest):void{ if (layout){ layout.createGIFRequestAlert(_arg1, _arg2, _arg3); }; if (traceOutput){ trace(((">> " + _arg1) + " <<")); }; } } }//package com.google.analytics.debug
Section 65
//FailureAlert (com.google.analytics.debug.FailureAlert) package com.google.analytics.debug { public class FailureAlert extends Alert { public function FailureAlert(_arg1:DebugConfiguration, _arg2:String, _arg3:Array){ var _local4:Align = Align.bottomLeft; var _local5:Boolean; var _local6:Boolean; if (_arg1.verbose){ _arg2 = ((("<u><span class=\"uiAlertTitle\">Failure</span>" + spaces(18)) + "</u>\n\n") + _arg2); _local4 = Align.center; _local5 = false; _local6 = true; }; super(_arg2, _arg3, "uiFailure", Style.failureColor, _local4, _local5, _local6); } } }//package com.google.analytics.debug
Section 66
//GIFRequestAlert (com.google.analytics.debug.GIFRequestAlert) package com.google.analytics.debug { public class GIFRequestAlert extends Alert { public function GIFRequestAlert(_arg1:String, _arg2:Array){ super(_arg1, _arg2); } } }//package com.google.analytics.debug
Section 67
//ILayout (com.google.analytics.debug.ILayout) package com.google.analytics.debug { import flash.display.*; import com.google.analytics.core.*; import flash.net.*; public interface ILayout { function createAlert(_arg1:String):void; function addToStage(_arg1:DisplayObject):void; function createGIFRequestAlert(_arg1:String, _arg2:URLRequest, _arg3:GIFRequest):void; function createWarning(_arg1:String):void; function createPanel(_arg1:String, _arg2:uint, _arg3:uint):void; function createInfo(_arg1:String):void; function createFailureAlert(_arg1:String):void; function addToPanel(_arg1:String, _arg2:DisplayObject):void; function init():void; function createSuccessAlert(_arg1:String):void; function createVisualDebug():void; function destroy():void; function bringToFront(_arg1:DisplayObject):void; function isAvailable():Boolean; } }//package com.google.analytics.debug
Section 68
//Info (com.google.analytics.debug.Info) package com.google.analytics.debug { import flash.events.*; import flash.utils.*; public class Info extends Label { private var _timer:Timer; public function Info(_arg1:String="", _arg2:uint=3000){ super(_arg1, "uiInfo", Style.infoColor, Align.top, true); if (_arg2 > 0){ _timer = new Timer(_arg2, 1); _timer.start(); _timer.addEventListener(TimerEvent.TIMER_COMPLETE, onComplete, false, 0, true); }; } public function close():void{ if (parent != null){ parent.removeChild(this); }; } override public function onLink(_arg1:TextEvent):void{ switch (_arg1.text){ case "hide": close(); break; }; } public function onComplete(_arg1:TimerEvent):void{ close(); } } }//package com.google.analytics.debug
Section 69
//Label (com.google.analytics.debug.Label) package com.google.analytics.debug { import flash.events.*; import flash.display.*; import flash.text.*; public class Label extends UISprite { private var _color:uint; private var _background:Shape; private var _textField:TextField; public var stickToEdge:Boolean; private var _text:String; protected var selectable:Boolean; private var _tag:String; public static var count:uint = 0; public function Label(_arg1:String="", _arg2:String="uiLabel", _arg3:uint=0, _arg4:Align=null, _arg5:Boolean=false){ this.name = ("Label" + count++); selectable = false; _background = new Shape(); _textField = new TextField(); _text = _arg1; _tag = _arg2; if (_arg4 == null){ _arg4 = Align.none; }; this.alignement = _arg4; this.stickToEdge = _arg5; if (_arg3 == 0){ _arg3 = Style.backgroundColor; }; _color = _arg3; _textField.addEventListener(TextEvent.LINK, onLink); } public function get tag():String{ return (_tag); } private function _draw():void{ var _local1:Graphics = _background.graphics; _local1.clear(); _local1.beginFill(_color); var _local2:uint = _textField.width; var _local3:uint = _textField.height; if (forcedWidth > 0){ _local2 = forcedWidth; }; Background.drawRounded(this, _local1, _local2, _local3); _local1.endFill(); } public function get text():String{ return (_textField.text); } public function appendText(_arg1:String, _arg2:String=""):void{ if (_arg1 == ""){ return; }; if (_arg2 == ""){ _arg2 = tag; }; _textField.htmlText = (_textField.htmlText + (((("<span class=\"" + _arg2) + "\">") + _arg1) + "</span>")); _text = (_text + _arg1); _draw(); resize(); } public function set text(_arg1:String):void{ if (_arg1 == ""){ _arg1 = _text; }; _textField.htmlText = (((("<span class=\"" + tag) + "\">") + _arg1) + "</span>"); _text = _arg1; _draw(); resize(); } override protected function layout():void{ _textField.type = TextFieldType.DYNAMIC; _textField.autoSize = TextFieldAutoSize.LEFT; _textField.background = false; _textField.selectable = selectable; _textField.multiline = true; _textField.styleSheet = Style.sheet; this.text = _text; addChild(_background); addChild(_textField); } public function set tag(_arg1:String):void{ _tag = _arg1; text = ""; } public function onLink(_arg1:TextEvent):void{ } override protected function dispose():void{ _textField.removeEventListener(TextEvent.LINK, onLink); super.dispose(); } } }//package com.google.analytics.debug
Section 70
//Layout (com.google.analytics.debug.Layout) package com.google.analytics.debug { import flash.events.*; import flash.display.*; import com.google.analytics.*; import com.google.analytics.core.*; import flash.net.*; public class Layout implements ILayout { private var _display:DisplayObject; private var _infoQueue:Array; private var _maxCharPerLine:int;// = 85 private var _hasInfo:Boolean; private var _warningQueue:Array; private var _hasDebug:Boolean; private var _hasWarning:Boolean; private var _mainPanel:Panel; private var _GRAlertQueue:Array; private var _debug:DebugConfiguration; public var visualDebug:Debug; private var _hasGRAlert:Boolean; public function Layout(_arg1:DebugConfiguration, _arg2:DisplayObject){ _display = _arg2; _debug = _arg1; _hasWarning = false; _hasInfo = false; _hasDebug = false; _hasGRAlert = false; _warningQueue = []; _infoQueue = []; _GRAlertQueue = []; } private function onKey(_arg1:KeyboardEvent=null):void{ switch (_arg1.keyCode){ case _debug.showHideKey: _mainPanel.visible = !(_mainPanel.visible); break; case _debug.destroyKey: destroy(); break; }; } public function createWarning(_arg1:String):void{ if (((_hasWarning) || (!(isAvailable())))){ _warningQueue.push(_arg1); return; }; _arg1 = _filterMaxChars(_arg1); _hasWarning = true; var _local2:Warning = new Warning(_arg1, _debug.warningTimeout); addToPanel("analytics", _local2); _local2.addEventListener(Event.REMOVED_FROM_STAGE, _clearWarning, false, 0, true); if (_hasDebug){ visualDebug.writeBold(_arg1); }; } public function bringToFront(_arg1:DisplayObject):void{ _display.stage.setChildIndex(_arg1, (_display.stage.numChildren - 1)); } public function createFailureAlert(_arg1:String):void{ var _local2:AlertAction; if (_debug.verbose){ _arg1 = _filterMaxChars(_arg1); _local2 = new AlertAction("Close", "close", "close"); } else { _local2 = new AlertAction("X", "close", "close"); }; var _local3:Alert = new FailureAlert(_debug, _arg1, [_local2]); addToPanel("analytics", _local3); if (_hasDebug){ if (_debug.verbose){ _arg1 = _arg1.split("\n").join(""); _arg1 = _filterMaxChars(_arg1, 66); }; visualDebug.writeBold(_arg1); }; } public function init():void{ var _local1 = 10; var _local2:uint = (_display.stage.stageWidth - (_local1 * 2)); var _local3:uint = (_display.stage.stageHeight - (_local1 * 2)); var _local4:Panel = new Panel("analytics", _local2, _local3); _local4.alignement = Align.top; _local4.stickToEdge = false; _local4.title = ("Google Analytics v" + GATracker.version); _mainPanel = _local4; addToStage(_local4); bringToFront(_local4); if (_debug.minimizedOnStart){ _mainPanel.onToggle(); }; createVisualDebug(); _display.stage.addEventListener(KeyboardEvent.KEY_DOWN, onKey, false, 0, true); } public function addToPanel(_arg1:String, _arg2:DisplayObject):void{ var _local4:Panel; var _local3:DisplayObject = _display.stage.getChildByName(_arg1); if (_local3){ _local4 = (_local3 as Panel); _local4.addData(_arg2); } else { trace((("panel \"" + _arg1) + "\" not found")); }; } private function _clearInfo(_arg1:Event):void{ _hasInfo = false; if (_infoQueue.length > 0){ createInfo(_infoQueue.shift()); }; } private function _filterMaxChars(_arg1:String, _arg2:int=0):String{ var _local6:String; var _local3 = "\n"; var _local4:Array = []; var _local5:Array = _arg1.split(_local3); if (_arg2 == 0){ _arg2 = _maxCharPerLine; }; var _local7:int; while (_local7 < _local5.length) { _local6 = _local5[_local7]; while (_local6.length > _arg2) { _local4.push(_local6.substr(0, _arg2)); _local6 = _local6.substring(_arg2); }; _local4.push(_local6); _local7++; }; return (_local4.join(_local3)); } private function _clearGRAlert(_arg1:Event):void{ _hasGRAlert = false; if (_GRAlertQueue.length > 0){ createGIFRequestAlert.apply(this, _GRAlertQueue.shift()); }; } public function createSuccessAlert(_arg1:String):void{ var _local2:AlertAction; if (_debug.verbose){ _arg1 = _filterMaxChars(_arg1); _local2 = new AlertAction("Close", "close", "close"); } else { _local2 = new AlertAction("X", "close", "close"); }; var _local3:Alert = new SuccessAlert(_debug, _arg1, [_local2]); addToPanel("analytics", _local3); if (_hasDebug){ if (_debug.verbose){ _arg1 = _arg1.split("\n").join(""); _arg1 = _filterMaxChars(_arg1, 66); }; visualDebug.writeBold(_arg1); }; } public function isAvailable():Boolean{ return (!((_display.stage == null))); } public function createAlert(_arg1:String):void{ _arg1 = _filterMaxChars(_arg1); var _local2:Alert = new Alert(_arg1, [new AlertAction("Close", "close", "close")]); addToPanel("analytics", _local2); if (_hasDebug){ visualDebug.writeBold(_arg1); }; } public function createInfo(_arg1:String):void{ if (((_hasInfo) || (!(isAvailable())))){ _infoQueue.push(_arg1); return; }; _arg1 = _filterMaxChars(_arg1); _hasInfo = true; var _local2:Info = new Info(_arg1, _debug.infoTimeout); addToPanel("analytics", _local2); _local2.addEventListener(Event.REMOVED_FROM_STAGE, _clearInfo, false, 0, true); if (_hasDebug){ visualDebug.write(_arg1); }; } public function createGIFRequestAlert(_arg1:String, _arg2:URLRequest, _arg3:GIFRequest):void{ var message = _arg1; var request = _arg2; var ref = _arg3; if (_hasGRAlert){ _GRAlertQueue.push([message, request, ref]); return; }; _hasGRAlert = true; var f:Function = function ():void{ ref.sendRequest(request); }; message = _filterMaxChars(message); var gra:GIFRequestAlert = new GIFRequestAlert(message, [new AlertAction("OK", "ok", f), new AlertAction("Cancel", "cancel", "close")]); addToPanel("analytics", gra); gra.addEventListener(Event.REMOVED_FROM_STAGE, _clearGRAlert, false, 0, true); if (_hasDebug){ if (_debug.verbose){ message = message.split("\n").join(""); message = _filterMaxChars(message, 66); }; visualDebug.write(message); }; } public function createVisualDebug():void{ if (!visualDebug){ visualDebug = new Debug(); visualDebug.alignement = Align.bottom; visualDebug.stickToEdge = true; addToPanel("analytics", visualDebug); _hasDebug = true; }; } public function addToStage(_arg1:DisplayObject):void{ _display.stage.addChild(_arg1); } private function _clearWarning(_arg1:Event):void{ _hasWarning = false; if (_warningQueue.length > 0){ createWarning(_warningQueue.shift()); }; } public function createPanel(_arg1:String, _arg2:uint, _arg3:uint):void{ var _local4:Panel = new Panel(_arg1, _arg2, _arg3); _local4.alignement = Align.center; _local4.stickToEdge = false; addToStage(_local4); bringToFront(_local4); } public function destroy():void{ _mainPanel.close(); _debug.layout = null; } } }//package com.google.analytics.debug
Section 71
//Margin (com.google.analytics.debug.Margin) package com.google.analytics.debug { public class Margin { public var top:int; public var left:int; public var bottom:int; public var right:int; public function Margin(_arg1:int=0, _arg2:int=0, _arg3:int=0, _arg4:int=0){ this.top = _arg1; this.bottom = _arg2; this.left = _arg3; this.right = _arg4; } } }//package com.google.analytics.debug
Section 72
//Panel (com.google.analytics.debug.Panel) package com.google.analytics.debug { import flash.events.*; import flash.display.*; public class Panel extends UISprite { private var _savedH:uint; private var _data:UISprite; private var _mask:Sprite; private var _background:Shape; private var _savedW:uint; private var _stickToEdge:Boolean; private var _border:Shape; private var _borderColor:uint; protected var baseAlpha:Number; private var _backgroundColor:uint; private var _title:Label; private var _colapsed:Boolean; private var _name:String; public function Panel(_arg1:String, _arg2:uint, _arg3:uint, _arg4:uint=0, _arg5:uint=0, _arg6:Number=0.3, _arg7:Align=null, _arg8:Boolean=false){ _name = _arg1; this.name = _arg1; this.mouseEnabled = false; _colapsed = false; forcedWidth = _arg2; forcedHeight = _arg3; this.baseAlpha = _arg6; _background = new Shape(); _data = new UISprite(); _data.forcedWidth = _arg2; _data.forcedHeight = _arg3; _data.mouseEnabled = false; _title = new Label(_arg1, "uiLabel", 0xFFFFFF, Align.topLeft, _arg8); _title.buttonMode = true; _title.margin.top = 0.6; _title.margin.left = 0.6; _title.addEventListener(MouseEvent.CLICK, onToggle); _title.mouseChildren = false; _border = new Shape(); _mask = new Sprite(); _mask.useHandCursor = false; _mask.mouseEnabled = false; _mask.mouseChildren = false; if (_arg7 == null){ _arg7 = Align.none; }; this.alignement = _arg7; this.stickToEdge = _arg8; if (_arg4 == 0){ _arg4 = Style.backgroundColor; }; _backgroundColor = _arg4; if (_arg5 == 0){ _arg5 = Style.borderColor; }; _borderColor = _arg5; } public function get stickToEdge():Boolean{ return (_stickToEdge); } public function onToggle(_arg1:MouseEvent=null):void{ if (_colapsed){ _data.visible = true; } else { _data.visible = false; }; _colapsed = !(_colapsed); _update(); resize(); } public function set stickToEdge(_arg1:Boolean):void{ _stickToEdge = _arg1; _title.stickToEdge = _arg1; } override protected function dispose():void{ _title.removeEventListener(MouseEvent.CLICK, onToggle); super.dispose(); } private function _draw():void{ var _local1:uint; var _local2:uint; if (((_savedW) && (_savedH))){ forcedWidth = _savedW; forcedHeight = _savedH; }; if (!_colapsed){ _local1 = forcedWidth; _local2 = forcedHeight; } else { _local1 = _title.width; _local2 = _title.height; _savedW = forcedWidth; _savedH = forcedHeight; forcedWidth = _local1; forcedHeight = _local2; }; var _local3:Graphics = _background.graphics; _local3.clear(); _local3.beginFill(_backgroundColor); Background.drawRounded(this, _local3, _local1, _local2); _local3.endFill(); var _local4:Graphics = _data.graphics; _local4.clear(); _local4.beginFill(_backgroundColor, 0); Background.drawRounded(this, _local4, _local1, _local2); _local4.endFill(); var _local5:Graphics = _border.graphics; _local5.clear(); _local5.lineStyle(0.1, _borderColor); Background.drawRounded(this, _local5, _local1, _local2); _local5.endFill(); var _local6:Graphics = _mask.graphics; _local6.clear(); _local6.beginFill(_backgroundColor); Background.drawRounded(this, _local6, (_local1 + 1), (_local2 + 1)); _local6.endFill(); } public function get title():String{ return (_title.text); } private function _update():void{ _draw(); if (baseAlpha < 1){ _background.alpha = baseAlpha; _border.alpha = baseAlpha; }; } public function addData(_arg1:DisplayObject):void{ _data.addChild(_arg1); } override protected function layout():void{ _update(); addChild(_background); addChild(_data); addChild(_title); addChild(_border); addChild(_mask); mask = _mask; } public function set title(_arg1:String):void{ _title.text = _arg1; } public function close():void{ dispose(); if (parent != null){ parent.removeChild(this); }; } } }//package com.google.analytics.debug
Section 73
//Style (com.google.analytics.debug.Style) package com.google.analytics.debug { public const Style:_Style = new _Style(); }//package com.google.analytics.debug
Section 74
//SuccessAlert (com.google.analytics.debug.SuccessAlert) package com.google.analytics.debug { public class SuccessAlert extends Alert { public function SuccessAlert(_arg1:DebugConfiguration, _arg2:String, _arg3:Array){ var _local4:Align = Align.bottomLeft; var _local5:Boolean; var _local6:Boolean; if (_arg1.verbose){ _arg2 = ((("<u><span class=\"uiAlertTitle\">Success</span>" + spaces(18)) + "</u>\n\n") + _arg2); _local4 = Align.center; _local5 = false; _local6 = true; }; super(_arg2, _arg3, "uiSuccess", Style.successColor, _local4, _local5, _local6); } } }//package com.google.analytics.debug
Section 75
//UISprite (com.google.analytics.debug.UISprite) package com.google.analytics.debug { import flash.events.*; import flash.display.*; public class UISprite extends Sprite { private var _forcedWidth:uint; public var margin:Margin; protected var alignTarget:DisplayObject; protected var listenResize:Boolean; public var alignement:Align; private var _forcedHeight:uint; public function UISprite(_arg1:DisplayObject=null){ listenResize = false; alignement = Align.none; this.alignTarget = _arg1; margin = new Margin(); addEventListener(Event.ADDED_TO_STAGE, _onAddedToStage); addEventListener(Event.REMOVED_FROM_STAGE, _onRemovedFromStage); } public function get forcedHeight():uint{ if (_forcedHeight){ return (_forcedHeight); }; return (height); } private function _onAddedToStage(_arg1:Event):void{ layout(); resize(); } protected function dispose():void{ var _local1:DisplayObject; var _local2:int; while (_local2 < numChildren) { _local1 = getChildAt(_local2); if (_local1){ removeChild(_local1); }; _local2++; }; } public function set forcedHeight(_arg1:uint):void{ _forcedHeight = _arg1; } public function set forcedWidth(_arg1:uint):void{ _forcedWidth = _arg1; } protected function layout():void{ } public function get forcedWidth():uint{ if (_forcedWidth){ return (_forcedWidth); }; return (width); } public function alignTo(_arg1:Align, _arg2:DisplayObject=null):void{ var _local3:uint; var _local4:uint; var _local5:uint; var _local6:uint; var _local7:UISprite; if (_arg2 == null){ if ((parent is Stage)){ _arg2 = this.stage; } else { _arg2 = parent; }; }; if (_arg2 == this.stage){ if (this.stage == null){ return; }; _local3 = this.stage.stageHeight; _local4 = this.stage.stageWidth; _local5 = 0; _local6 = 0; } else { _local7 = (_arg2 as UISprite); if (_local7.forcedHeight){ _local3 = _local7.forcedHeight; } else { _local3 = _local7.height; }; if (_local7.forcedWidth){ _local4 = _local7.forcedWidth; } else { _local4 = _local7.width; }; _local5 = 0; _local6 = 0; }; switch (_arg1){ case Align.top: x = ((_local4 / 2) - (forcedWidth / 2)); y = (_local6 + margin.top); break; case Align.bottom: x = ((_local4 / 2) - (forcedWidth / 2)); y = (((_local6 + _local3) - forcedHeight) - margin.bottom); break; case Align.left: x = (_local5 + margin.left); y = ((_local3 / 2) - (forcedHeight / 2)); break; case Align.right: x = (((_local5 + _local4) - forcedWidth) - margin.right); y = ((_local3 / 2) - (forcedHeight / 2)); break; case Align.center: x = ((_local4 / 2) - (forcedWidth / 2)); y = ((_local3 / 2) - (forcedHeight / 2)); break; case Align.topLeft: x = (_local5 + margin.left); y = (_local6 + margin.top); break; case Align.topRight: x = (((_local5 + _local4) - forcedWidth) - margin.right); y = (_local6 + margin.top); break; case Align.bottomLeft: x = (_local5 + margin.left); y = (((_local6 + _local3) - forcedHeight) - margin.bottom); break; case Align.bottomRight: x = (((_local5 + _local4) - forcedWidth) - margin.right); y = (((_local6 + _local3) - forcedHeight) - margin.bottom); break; }; if (((!(listenResize)) && (!((_arg1 == Align.none))))){ _arg2.addEventListener(Event.RESIZE, onResize, false, 0, true); listenResize = true; }; this.alignement = _arg1; this.alignTarget = _arg2; } private function _onRemovedFromStage(_arg1:Event):void{ removeEventListener(Event.ADDED_TO_STAGE, _onAddedToStage); removeEventListener(Event.REMOVED_FROM_STAGE, _onRemovedFromStage); dispose(); } public function resize():void{ if (alignement != Align.none){ alignTo(alignement, alignTarget); }; } protected function onResize(_arg1:Event):void{ resize(); } } }//package com.google.analytics.debug
Section 76
//Warning (com.google.analytics.debug.Warning) package com.google.analytics.debug { import flash.events.*; import flash.utils.*; public class Warning extends Label { private var _timer:Timer; public function Warning(_arg1:String="", _arg2:uint=3000){ super(_arg1, "uiWarning", Style.warningColor, Align.top, false); margin.top = 32; if (_arg2 > 0){ _timer = new Timer(_arg2, 1); _timer.start(); _timer.addEventListener(TimerEvent.TIMER_COMPLETE, onComplete, false, 0, true); }; } public function close():void{ if (parent != null){ parent.removeChild(this); }; } override public function onLink(_arg1:TextEvent):void{ switch (_arg1.text){ case "hide": close(); break; }; } public function onComplete(_arg1:TimerEvent):void{ close(); } } }//package com.google.analytics.debug
Section 77
//VisualDebugMode (com.google.analytics.debug.VisualDebugMode) package com.google.analytics.debug { public class VisualDebugMode { private var _value:int; private var _name:String; public static const advanced:VisualDebugMode = new VisualDebugMode(1, "advanced"); ; public static const geek:VisualDebugMode = new VisualDebugMode(2, "geek"); ; public static const basic:VisualDebugMode = new VisualDebugMode(0, "basic"); ; public function VisualDebugMode(_arg1:int=0, _arg2:String=""){ _value = _arg1; _name = _arg2; } public function valueOf():int{ return (_value); } public function toString():String{ return (_name); } } }//package com.google.analytics.debug
Section 78
//AnalyticsEvent (com.google.analytics.events.AnalyticsEvent) package com.google.analytics.events { import flash.events.*; import com.google.analytics.*; public class AnalyticsEvent extends Event { public var tracker:AnalyticsTracker; public static const READY:String = "ready"; public function AnalyticsEvent(_arg1:String, _arg2:AnalyticsTracker, _arg3:Boolean=false, _arg4:Boolean=false){ super(_arg1, _arg3, _arg4); this.tracker = _arg2; } override public function clone():Event{ return (new AnalyticsEvent(type, tracker, bubbles, cancelable)); } } }//package com.google.analytics.events
Section 79
//AdSenseGlobals (com.google.analytics.external.AdSenseGlobals) package com.google.analytics.external { import com.google.analytics.debug.*; public class AdSenseGlobals extends JavascriptProxy { private var _gaGlobalVerified:Boolean;// = false public static var gaGlobal_js:XML = <script> <![CDATA[ function() { try { gaGlobal } catch(e) { gaGlobal = {} ; } } ]]> </script> ; public function AdSenseGlobals(_arg1:DebugConfiguration){ super(_arg1); } public function set vid(_arg1:String):void{ if (!isAvailable()){ return; }; _verify(); setProperty("gaGlobal.vid", _arg1); } public function get hid():String{ if (!isAvailable()){ return (null); }; _verify(); return (getProperty("gaGlobal.hid")); } public function set hid(_arg1:String):void{ if (!isAvailable()){ return; }; _verify(); setProperty("gaGlobal.hid", _arg1); } public function get dh():String{ if (!isAvailable()){ return (null); }; _verify(); return (getProperty("gaGlobal.dh")); } public function get sid():String{ if (!isAvailable()){ return (null); }; _verify(); return (getProperty("gaGlobal.sid")); } public function get vid():String{ if (!isAvailable()){ return (null); }; _verify(); return (getProperty("gaGlobal.vid")); } private function _verify():void{ if (!_gaGlobalVerified){ executeBlock(gaGlobal_js); _gaGlobalVerified = true; }; } public function set sid(_arg1:String):void{ if (!isAvailable()){ return; }; _verify(); setProperty("gaGlobal.sid", _arg1); } public function get gaGlobal():Object{ if (!isAvailable()){ return (null); }; _verify(); return (getProperty("gaGlobal")); } } }//package com.google.analytics.external
Section 80
//HTMLDOM (com.google.analytics.external.HTMLDOM) package com.google.analytics.external { import com.google.analytics.debug.*; public class HTMLDOM extends JavascriptProxy { private var _referrer:String; private var _language:String; private var _host:String; private var _pathname:String; private var _location:String; private var _search:String; private var _characterSet:String; private var _title:String; private var _protocol:String; private var _colorDepth:String; public static var cache_properties_js:XML = <script> <![CDATA[ function() { var obj = {}; obj.host = document.location.host; obj.language = navigator.language ? navigator.language : navigator.browserLanguage; obj.characterSet = document.characterSet ? document.characterSet : document.charset; obj.colorDepth = window.screen.colorDepth; obj.location = document.location.toString(); obj.pathname = document.location.pathname; obj.protocol = document.location.protocol; obj.search = document.location.search; obj.referrer = document.referrer; obj.title = document.title; return obj; } ]]> </script> ; public function HTMLDOM(_arg1:DebugConfiguration){ super(_arg1); } public function get search():String{ if (_search){ return (_search); }; if (!isAvailable()){ return (null); }; _search = getProperty("document.location.search"); return (_search); } public function get location():String{ if (_location){ return (_location); }; if (!isAvailable()){ return (null); }; _location = getPropertyString("document.location"); return (_location); } public function get pathname():String{ if (_pathname){ return (_pathname); }; if (!isAvailable()){ return (null); }; _pathname = getProperty("document.location.pathname"); return (_pathname); } public function cacheProperties():void{ if (!isAvailable()){ return; }; var _local1:Object = call(cache_properties_js); if (_local1){ _host = _local1.host; _language = _local1.language; _characterSet = _local1.characterSet; _colorDepth = _local1.colorDepth; _location = _local1.location; _pathname = _local1.pathname; _protocol = _local1.protocol; _search = _local1.search; _referrer = _local1.referrer; _title = _local1.title; }; } public function get language():String{ if (_language){ return (_language); }; if (!isAvailable()){ return (null); }; var _local1:String = getProperty("navigator.language"); if (_local1 == null){ _local1 = getProperty("navigator.browserLanguage"); }; _language = _local1; return (_language); } public function get colorDepth():String{ if (_colorDepth){ return (_colorDepth); }; if (!isAvailable()){ return (null); }; _colorDepth = getProperty("window.screen.colorDepth"); return (_colorDepth); } public function get referrer():String{ if (_referrer){ return (_referrer); }; if (!isAvailable()){ return (null); }; _referrer = getProperty("document.referrer"); return (_referrer); } public function get protocol():String{ if (_protocol){ return (_protocol); }; if (!isAvailable()){ return (null); }; _protocol = getProperty("document.location.protocol"); return (_protocol); } public function get host():String{ if (_host){ return (_host); }; if (!isAvailable()){ return (null); }; _host = getProperty("document.location.host"); return (_host); } public function get characterSet():String{ if (_characterSet){ return (_characterSet); }; if (!isAvailable()){ return (null); }; var _local1:String = getProperty("document.characterSet"); if (_local1 == null){ _local1 = getProperty("document.charset"); }; _characterSet = _local1; return (_characterSet); } public function get title():String{ if (_title){ return (_title); }; if (!isAvailable()){ return (null); }; _title = getProperty("document.title"); return (_title); } } }//package com.google.analytics.external
Section 81
//JavascriptProxy (com.google.analytics.external.JavascriptProxy) package com.google.analytics.external { import flash.system.*; import com.google.analytics.debug.*; import flash.external.*; public class JavascriptProxy { private var _notAvailableWarning:Boolean;// = true private var _debug:DebugConfiguration; public static var setProperty_js:XML = <script> <![CDATA[ function( path , value ) { var paths; var prop; if( path.indexOf(".") > 0 ) { paths = path.split("."); prop = paths.pop() ; } else { paths = []; prop = path; } var target = window ; var len = paths.length ; for( var i = 0 ; i < len ; i++ ) { target = target[ paths[i] ] ; } target[ prop ] = value ; } ]]> </script> ; public static var hasProperty_js:XML = <script> <![CDATA[ function( path ) { var paths; if( path.indexOf(".") > 0 ) { paths = path.split("."); } else { paths = [path]; } var target = window ; var len = paths.length ; for( var i = 0 ; i < len ; i++ ) { target = target[ paths[i] ] ; } if( target ) { return true; } else { return false; } } ]]> </script> ; public static var setPropertyRef_js:XML = <script> <![CDATA[ function( path , target ) { var paths; var prop; if( path.indexOf(".") > 0 ) { paths = path.split("."); prop = paths.pop() ; } else { paths = []; prop = path; } alert( "paths:"+paths.length+", prop:"+prop ); var targets; var name; if( target.indexOf(".") > 0 ) { targets = target.split("."); name = targets.pop(); } else { targets = []; name = target; } alert( "targets:"+targets.length+", name:"+name ); var root = window; var len = paths.length; for( var i = 0 ; i < len ; i++ ) { root = root[ paths[i] ] ; } var ref = window; var depth = targets.length; for( var j = 0 ; j < depth ; j++ ) { ref = ref[ targets[j] ] ; } root[ prop ] = ref[name] ; } ]]> </script> ; public function JavascriptProxy(_arg1:DebugConfiguration){ _debug = _arg1; } public function getProperty(_arg1:String){ return (call((_arg1 + ".valueOf"))); } public function hasProperty(_arg1:String):Boolean{ return (call(hasProperty_js, _arg1)); } public function setProperty(_arg1:String, _arg2):void{ call(setProperty_js, _arg1, _arg2); } public function executeBlock(_arg1:String):void{ var data = _arg1; if (isAvailable()){ try { ExternalInterface.call(data); } catch(e:SecurityError) { if (_debug.javascript){ _debug.warning("ExternalInterface is not allowed.\nEnsure that allowScriptAccess is set to \"always\" in the Flash embed HTML."); }; } catch(e:Error) { if (_debug.javascript){ _debug.warning(("ExternalInterface failed to make the call\nreason: " + e.message)); }; }; }; } public function getPropertyString(_arg1:String):String{ return (call((_arg1 + ".toString"))); } public function setPropertyByReference(_arg1:String, _arg2:String):void{ call(setPropertyRef_js, _arg1, _arg2); } public function call(_arg1:String, ... _args){ var output:String; var functionName = _arg1; var args = _args; if (isAvailable()){ try { if (((_debug.javascript) && (_debug.verbose))){ output = ""; output = ("Flash->JS: " + functionName); output = (output + "( "); if (args.length > 0){ output = (output + args.join(",")); }; output = (output + " )"); _debug.info(output); }; args.unshift(functionName); return (ExternalInterface.call.apply(ExternalInterface, args)); } catch(e:SecurityError) { if (_debug.javascript){ _debug.warning("ExternalInterface is not allowed.\nEnsure that allowScriptAccess is set to \"always\" in the Flash embed HTML."); }; } catch(e:Error) { if (_debug.javascript){ _debug.warning(("ExternalInterface failed to make the call\nreason: " + e.message)); }; }; }; return (null); } public function isAvailable():Boolean{ var _local1:Boolean = ExternalInterface.available; if (((_local1) && ((Capabilities.playerType == "External")))){ _local1 = false; }; if (((((!(_local1)) && (_debug.javascript))) && (_notAvailableWarning))){ _debug.warning("ExternalInterface is not available."); _notAvailableWarning = false; }; return (_local1); } } }//package com.google.analytics.external
Section 82
//Environment (com.google.analytics.utils.Environment) package com.google.analytics.utils { import flash.system.*; import com.google.analytics.debug.*; import com.google.analytics.external.*; public class Environment { private var _dom:HTMLDOM; private var _appName:String; private var _debug:DebugConfiguration; private var _appVersion:Version; private var _url:String; private var _protocol:Protocols; private var _userAgent:UserAgent; public function Environment(_arg1:String="", _arg2:String="", _arg3:String="", _arg4:DebugConfiguration=null, _arg5:HTMLDOM=null){ var _local6:Version; super(); if (_arg2 == ""){ if (isAIR()){ _arg2 = "AIR"; } else { _arg2 = "Flash"; }; }; if (_arg3 == ""){ _local6 = flashVersion; } else { _local6 = Version.fromString(_arg3); }; _url = _arg1; _appName = _arg2; _appVersion = _local6; _debug = _arg4; _dom = _arg5; } public function isAIR():Boolean{ return ((((playerType == "Desktop")) && ((Security.sandboxType.toString() == "application")))); } public function get screenWidth():Number{ return (Capabilities.screenResolutionX); } public function get playerType():String{ return (Capabilities.playerType); } public function get locationSearch():String{ var _local1:String = _dom.search; if (_local1){ return (_local1); }; return (""); } public function get protocol():Protocols{ if (!_protocol){ _findProtocol(); }; return (_protocol); } public function get flashVersion():Version{ var _local1:Version = Version.fromString(Capabilities.version.split(" ")[1], ","); return (_local1); } public function get userAgent():UserAgent{ if (!_userAgent){ _userAgent = new UserAgent(this, appName, appVersion.toString(4)); }; return (_userAgent); } public function get languageEncoding():String{ var _local1:String; if (System.useCodePage){ _local1 = _dom.characterSet; if (_local1){ return (_local1); }; return ("-"); }; return ("UTF-8"); } public function get appName():String{ return (_appName); } public function get screenColorDepth():String{ var _local1:String; switch (Capabilities.screenColor){ case "bw": _local1 = "1"; break; case "gray": _local1 = "2"; break; case "color": default: _local1 = "24"; }; var _local2:String = _dom.colorDepth; if (_local2){ _local1 = _local2; }; return (_local1); } private function _findProtocol():void{ var _local4:String; var _local5:String; var _local1:Protocols = Protocols.none; if (_url != ""){ _local4 = _url.toLowerCase(); _local5 = _local4.substr(0, 5); switch (_local5){ case "file:": _local1 = Protocols.file; break; case "http:": _local1 = Protocols.HTTP; break; case "https": if (_local4.charAt(5) == ":"){ _local1 = Protocols.HTTPS; }; break; default: _protocol = Protocols.none; }; }; var _local2:String = _dom.protocol; var _local3:String = (_local1.toString() + ":").toLowerCase(); if (((((_local2) && (!((_local2 == _local3))))) && (_debug))){ _debug.warning(((("Protocol mismatch: SWF=" + _local3) + ", DOM=") + _local2)); }; _protocol = _local1; } public function get locationSWFPath():String{ return (_url); } public function get platform():String{ var _local1:String = Capabilities.manufacturer; return (_local1.split("Adobe ")[1]); } public function get operatingSystem():String{ return (Capabilities.os); } public function set appName(_arg1:String):void{ _appName = _arg1; userAgent.applicationProduct = _arg1; } function set url(_arg1:String):void{ _url = _arg1; } public function get referrer():String{ var _local1:String = _dom.referrer; if (_local1){ return (_local1); }; if (protocol == Protocols.file){ return ("localhost"); }; return (""); } public function isInHTML():Boolean{ return ((Capabilities.playerType == "PlugIn")); } public function get language():String{ var _local1:String = _dom.language; var _local2:String = Capabilities.language; if (_local1){ if ((((_local1.length > _local2.length)) && ((_local1.substr(0, _local2.length) == _local2)))){ _local2 = _local1; }; }; return (_local2); } public function get domainName():String{ var _local1:String; var _local2:String; var _local3:int; if ((((protocol == Protocols.HTTP)) || ((protocol == Protocols.HTTPS)))){ _local1 = _url.toLowerCase(); if (protocol == Protocols.HTTP){ _local2 = _local1.split("http://").join(""); } else { if (protocol == Protocols.HTTPS){ _local2 = _local1.split("https://").join(""); }; }; _local3 = _local2.indexOf("/"); if (_local3 > -1){ _local2 = _local2.substring(0, _local3); }; return (_local2); }; if (protocol == Protocols.file){ return ("localhost"); }; return (""); } public function set userAgent(_arg1:UserAgent):void{ _userAgent = _arg1; } public function set appVersion(_arg1:Version):void{ _appVersion = _arg1; userAgent.applicationVersion = _arg1.toString(4); } public function get screenHeight():Number{ return (Capabilities.screenResolutionY); } public function get locationPath():String{ var _local1:String = _dom.pathname; if (_local1){ return (_local1); }; return (""); } public function get documentTitle():String{ var _local1:String = _dom.title; if (_local1){ return (_local1); }; return (""); } public function get appVersion():Version{ return (_appVersion); } } }//package com.google.analytics.utils
Section 83
//Protocols (com.google.analytics.utils.Protocols) package com.google.analytics.utils { public class Protocols { private var _value:int; private var _name:String; public static const none:Protocols = new Protocols(0, "none"); ; public static const HTTPS:Protocols = new Protocols(3, "HTTPS"); ; public static const file:Protocols = new Protocols(1, "file"); ; public static const HTTP:Protocols = new Protocols(2, "HTTP"); ; public function Protocols(_arg1:int=0, _arg2:String=""){ _value = _arg1; _name = _arg2; } public function valueOf():int{ return (_value); } public function toString():String{ return (_name); } } }//package com.google.analytics.utils
Section 84
//Timespan (com.google.analytics.utils.Timespan) package com.google.analytics.utils { public class Timespan { public static var sixmonths:Number = 15768000; public static var twoyears:Number = 63072000; public static var thirtyminutes:Number = 1800; } }//package com.google.analytics.utils
Section 85
//URL (com.google.analytics.utils.URL) package com.google.analytics.utils { public class URL { private var _url:String; public function URL(_arg1:String=""){ _url = _arg1.toLowerCase(); } public function get domain():String{ var _local1:Array; if (((!((hostName == ""))) && ((hostName.indexOf(".") > -1)))){ _local1 = hostName.split("."); switch (_local1.length){ case 2: return (hostName); case 3: if (_local1[1] == "co"){ return (hostName); }; _local1.shift(); return (_local1.join(".")); case 4: _local1.shift(); return (_local1.join(".")); }; }; return (""); } public function get path():String{ var _local1:String = _url; if (_local1.indexOf("://") > -1){ _local1 = _local1.split("://")[1]; }; if (_local1.indexOf(hostName) == 0){ _local1 = _local1.substr(hostName.length); }; if (_local1.indexOf("?") > -1){ _local1 = _local1.split("?")[0]; }; if (_local1.charAt(0) != "/"){ _local1 = ("/" + _local1); }; return (_local1); } public function get protocol():Protocols{ var _local1:String = _url.split("://")[0]; switch (_local1){ case "file": return (Protocols.file); case "http": return (Protocols.HTTP); case "https": return (Protocols.HTTPS); default: return (Protocols.none); }; } public function get hostName():String{ var _local1:String = _url; if (_local1.indexOf("://") > -1){ _local1 = _local1.split("://")[1]; }; if (_local1.indexOf("/") > -1){ _local1 = _local1.split("/")[0]; }; if (_local1.indexOf("?") > -1){ _local1 = _local1.split("?")[0]; }; if ((((protocol == Protocols.file)) || ((protocol == Protocols.none)))){ return (""); }; return (_local1); } public function get subDomain():String{ if (((!((domain == ""))) && (!((domain == hostName))))){ return (hostName.split(("." + domain)).join("")); }; return (""); } public function get search():String{ var _local1:String = _url; if (_local1.indexOf("://") > -1){ _local1 = _local1.split("://")[1]; }; if (_local1.indexOf(hostName) == 0){ _local1 = _local1.substr(hostName.length); }; if (_local1.indexOf("?") > -1){ _local1 = _local1.split("?")[1]; } else { _local1 = ""; }; return (_local1); } } }//package com.google.analytics.utils
Section 86
//UserAgent (com.google.analytics.utils.UserAgent) package com.google.analytics.utils { import flash.system.*; import com.google.analytics.core.*; public class UserAgent { private var _localInfo:Environment; private var _applicationProduct:String; private var _version:Version; public static var minimal:Boolean = false; public function UserAgent(_arg1:Environment, _arg2:String="", _arg3:String=""){ _localInfo = _arg1; applicationProduct = _arg2; _version = Version.fromString(_arg3); } public function get tamarinProductToken():String{ if (UserAgent.minimal){ return (""); }; if (System.vmVersion){ return (("Tamarin/" + Utils.trim(System.vmVersion, true))); }; return (""); } public function get applicationVersion():String{ return (_version.toString(2)); } public function get vendorProductToken():String{ var _local1 = ""; if (_localInfo.isAIR()){ _local1 = (_local1 + "AIR"); } else { _local1 = (_local1 + "FlashPlayer"); }; _local1 = (_local1 + "/"); _local1 = (_local1 + _version.toString(3)); return (_local1); } public function toString():String{ var _local1 = ""; _local1 = (_local1 + applicationProductToken); if (applicationComment != ""){ _local1 = (_local1 + (" " + applicationComment)); }; if (tamarinProductToken != ""){ _local1 = (_local1 + (" " + tamarinProductToken)); }; if (vendorProductToken != ""){ _local1 = (_local1 + (" " + vendorProductToken)); }; return (_local1); } public function get applicationComment():String{ var _local1:Array = []; _local1.push(_localInfo.platform); _local1.push(_localInfo.playerType); if (!UserAgent.minimal){ _local1.push(_localInfo.operatingSystem); _local1.push(_localInfo.language); }; if (Capabilities.isDebugger){ _local1.push("DEBUG"); }; if (_local1.length > 0){ return ((("(" + _local1.join("; ")) + ")")); }; return (""); } public function set applicationVersion(_arg1:String):void{ _version = Version.fromString(_arg1); } public function get applicationProductToken():String{ var _local1:String = applicationProduct; if (applicationVersion != ""){ _local1 = (_local1 + ("/" + applicationVersion)); }; return (_local1); } public function set applicationProduct(_arg1:String):void{ _applicationProduct = _arg1; } public function get applicationProduct():String{ return (_applicationProduct); } } }//package com.google.analytics.utils
Section 87
//Variables (com.google.analytics.utils.Variables) package com.google.analytics.utils { import flash.net.*; public dynamic class Variables { public var post:Array; public var URIencode:Boolean; public var pre:Array; public var sort:Boolean;// = true public function Variables(_arg1:String=null, _arg2:Array=null, _arg3:Array=null){ pre = []; post = []; super(); if (_arg1){ decode(_arg1); }; if (_arg2){ this.pre = _arg2; }; if (_arg3){ this.post = _arg3; }; } private function _join(_arg1:Variables):void{ var _local2:String; if (!_arg1){ return; }; for (_local2 in _arg1) { this[_local2] = _arg1[_local2]; }; } public function join(... _args):void{ var _local2:int = _args.length; var _local3:int; while (_local3 < _local2) { if (!(_args[_local3] is Variables)){ } else { _join(_args[_local3]); }; _local3++; }; } public function toString():String{ var _local2:String; var _local3:String; var _local4:String; var _local5:int; var _local6:int; var _local7:String; var _local8:String; var _local1:Array = []; for (_local3 in this) { _local2 = this[_local3]; if (URIencode){ _local2 = encodeURI(_local2); }; _local1.push(((_local3 + "=") + _local2)); }; if (sort){ _local1.sort(); }; if (pre.length > 0){ pre.reverse(); _local5 = 0; while (_local5 < pre.length) { _local7 = pre[_local5]; _local6 = 0; while (_local6 < _local1.length) { _local4 = _local1[_local6]; if (_local4.indexOf(_local7) == 0){ _local1.unshift(_local1.splice(_local6, 1)[0]); }; _local6++; }; _local5++; }; pre.reverse(); }; if (post.length > 0){ _local5 = 0; while (_local5 < post.length) { _local8 = post[_local5]; _local6 = 0; while (_local6 < _local1.length) { _local4 = _local1[_local6]; if (_local4.indexOf(_local8) == 0){ _local1.push(_local1.splice(_local6, 1)[0]); }; _local6++; }; _local5++; }; }; return (_local1.join("&")); } public function decode(_arg1:String):void{ var _local2:Array; var _local3:String; var _local4:String; var _local5:String; var _local6:Array; if (_arg1 == ""){ return; }; if (_arg1.indexOf("&") > -1){ _local2 = _arg1.split("&"); } else { _local2 = [_arg1]; }; var _local7:int; while (_local7 < _local2.length) { _local3 = _local2[_local7]; if (_local3.indexOf("=") > -1){ _local6 = _local3.split("="); _local4 = _local6[0]; _local5 = decodeURI(_local6[1]); this[_local4] = _local5; }; _local7++; }; } public function toURLVariables():URLVariables{ var _local2:String; var _local1:URLVariables = new URLVariables(); for (_local2 in this) { _local1[_local2] = this[_local2]; }; return (_local1); } } }//package com.google.analytics.utils
Section 88
//Version (com.google.analytics.utils.Version) package com.google.analytics.utils { public class Version { private var _revision:uint; private var _maxBuild:uint;// = 0xFF private var _maxMinor:uint;// = 15 private var _maxMajor:uint;// = 15 private var _separator:String;// = "." private var _maxRevision:uint;// = 0xFFFF private var _build:uint; private var _major:uint; private var _minor:uint; public function Version(_arg1:uint=0, _arg2:uint=0, _arg3:uint=0, _arg4:uint=0){ var _local5:Version; super(); if ((((((((_arg1 > _maxMajor)) && ((_arg2 == 0)))) && ((_arg3 == 0)))) && ((_arg4 == 0)))){ _local5 = Version.fromNumber(_arg1); _arg1 = _local5.major; _arg2 = _local5.minor; _arg3 = _local5.build; _arg4 = _local5.revision; }; this.major = _arg1; this.minor = _arg2; this.build = _arg3; this.revision = _arg4; } public function toString(_arg1:int=0):String{ var _local2:Array; if ((((_arg1 <= 0)) || ((_arg1 > 4)))){ _arg1 = getFields(); }; switch (_arg1){ case 1: _local2 = [major]; break; case 2: _local2 = [major, minor]; break; case 3: _local2 = [major, minor, build]; break; case 4: default: _local2 = [major, minor, build, revision]; }; return (_local2.join(_separator)); } public function set revision(_arg1:uint):void{ _revision = Math.min(_arg1, _maxRevision); } public function get revision():uint{ return (_revision); } public function set build(_arg1:uint):void{ _build = Math.min(_arg1, _maxBuild); } public function set minor(_arg1:uint):void{ _minor = Math.min(_arg1, _maxMinor); } public function get build():uint{ return (_build); } public function set major(_arg1:uint):void{ _major = Math.min(_arg1, _maxMajor); } public function get minor():uint{ return (_minor); } private function getFields():int{ var _local1 = 4; if (revision == 0){ _local1--; }; if ((((_local1 == 3)) && ((build == 0)))){ _local1--; }; if ((((_local1 == 2)) && ((minor == 0)))){ _local1--; }; return (_local1); } public function valueOf():uint{ return (((((major << 28) | (minor << 24)) | (build << 16)) | revision)); } public function get major():uint{ return (_major); } public function equals(_arg1):Boolean{ if (!(_arg1 is Version)){ return (false); }; if ((((((((_arg1.major == major)) && ((_arg1.minor == minor)))) && ((_arg1.build == build)))) && ((_arg1.revision == revision)))){ return (true); }; return (false); } public static function fromString(_arg1:String="", _arg2:String="."):Version{ var _local4:Array; var _local3:Version = new (Version); if ((((_arg1 == "")) || ((_arg1 == null)))){ return (_local3); }; if (_arg1.indexOf(_arg2) > -1){ _local4 = _arg1.split(_arg2); _local3.major = parseInt(_local4[0]); _local3.minor = parseInt(_local4[1]); _local3.build = parseInt(_local4[2]); _local3.revision = parseInt(_local4[3]); } else { _local3.major = parseInt(_arg1); }; return (_local3); } public static function fromNumber(_arg1:Number=0):Version{ var _local2:Version = new (Version); if (((((((((((isNaN(_arg1)) || ((_arg1 == 0)))) || ((_arg1 < 0)))) || ((_arg1 == Number.MAX_VALUE)))) || ((_arg1 == Number.POSITIVE_INFINITY)))) || ((_arg1 == Number.NEGATIVE_INFINITY)))){ return (_local2); }; _local2.major = (_arg1 >>> 28); _local2.minor = ((_arg1 & 251658240) >>> 24); _local2.build = ((_arg1 & 0xFF0000) >>> 16); _local2.revision = (_arg1 & 0xFFFF); return (_local2); } } }//package com.google.analytics.utils
Section 89
//Bridge (com.google.analytics.v4.Bridge) package com.google.analytics.v4 { import com.google.analytics.core.*; import com.google.analytics.debug.*; import com.google.analytics.external.*; public class Bridge implements GoogleAnalyticsAPI { private var _debug:DebugConfiguration; private var _proxy:JavascriptProxy; private var _jsContainer:String;// = "_GATracker" private var _hasGATracker:Boolean;// = false private var _account:String; private static var _linkTrackingObject_js:XML = <script> <![CDATA[ function( container , target ) { var targets ; var name ; if( target.indexOf(".") > 0 ) { targets = target.split("."); name = targets.pop(); } else { targets = []; name = target; } var ref = window; var depth = targets.length; for( var j = 0 ; j < depth ; j++ ) { ref = ref[ targets[j] ] ; } window[container][target] = ref[name] ; } ]]> </script> ; private static var _createTrackingObject_js:XML = <script> <![CDATA[ function( acct ) { _GATracker[acct] = _gat._getTracker(acct); } ]]> </script> ; private static var _injectTrackingObject_js:XML = <script> <![CDATA[ function() { try { _GATracker } catch(e) { _GATracker = {}; } } ]]> </script> ; private static var _checkGAJS_js:XML = <script> <![CDATA[ function() { if( _gat && _gat._getTracker ) { return true; } return false; } ]]> </script> ; private static var _checkValidTrackingObject_js:XML = <script> <![CDATA[ function(acct) { if( _GATracker[acct] && (_GATracker[acct]._getAccount) ) { return true ; } else { return false; } } ]]> </script> ; public function Bridge(_arg1:String, _arg2:DebugConfiguration, _arg3:JavascriptProxy){ var _local4:String; var _local5:String; var _local6:String; super(); _account = _arg1; _debug = _arg2; _proxy = _arg3; if (!_checkGAJS()){ _local4 = ""; _local4 = (_local4 + "ga.js not found, be sure to check if\n"); _local4 = (_local4 + "<script src=\"http://www.google-analytics.com/ga.js\"></script>\n"); _local4 = (_local4 + "is included in the HTML."); _debug.warning(_local4); throw (new Error(_local4)); }; if (!_hasGATracker){ if (((_debug.javascript) && (_debug.verbose))){ _local5 = ""; _local5 = (_local5 + "The Google Analytics tracking code was not found on the container page\n"); _local5 = (_local5 + "we create it"); _debug.info(_local5, VisualDebugMode.advanced); }; _injectTrackingObject(); }; if (Utils.validateAccount(_arg1)){ _createTrackingObject(_arg1); } else { if (_checkTrackingObject(_arg1)){ _linkTrackingObject(_arg1); } else { _local6 = ""; _local6 = (_local6 + (("JS Object \"" + _arg1) + "\" doesn't exist in DOM\n")); _local6 = (_local6 + "Bridge object not created."); _debug.warning(_local6); throw (new Error(_local6)); }; }; } public function link(_arg1:String, _arg2:Boolean=false):void{ _debug.info((((("link( " + _arg1) + ", ") + _arg2) + " )")); _call("_link", _arg1, _arg2); } public function addOrganic(_arg1:String, _arg2:String):void{ _debug.info((("addOrganic( " + [_arg1, _arg2].join(", ")) + " )")); _call("_addOrganic", _arg1); } public function setAllowLinker(_arg1:Boolean):void{ _debug.info((("setAllowLinker( " + _arg1) + " )")); _call("_setAllowLinker", _arg1); } private function _linkTrackingObject(_arg1:String):void{ _proxy.call(_linkTrackingObject_js, _jsContainer, _arg1); } public function trackEvent(_arg1:String, _arg2:String, _arg3:String=null, _arg4:Number=NaN):Boolean{ var _local5 = 2; if (((_arg3) && (!((_arg3 == ""))))){ _local5 = 3; }; if ((((_local5 == 3)) && (!(isNaN(_arg4))))){ _local5 = 4; }; switch (_local5){ case 4: _debug.info((("trackEvent( " + [_arg1, _arg2, _arg3, _arg4].join(", ")) + " )")); return (_call("_trackEvent", _arg1, _arg2, _arg3, _arg4)); case 3: _debug.info((("trackEvent( " + [_arg1, _arg2, _arg3].join(", ")) + " )")); return (_call("_trackEvent", _arg1, _arg2, _arg3)); case 2: default: _debug.info((("trackEvent( " + [_arg1, _arg2].join(", ")) + " )")); return (_call("_trackEvent", _arg1, _arg2)); }; } public function setClientInfo(_arg1:Boolean):void{ _debug.info((("setClientInfo( " + _arg1) + " )")); _call("_setClientInfo", _arg1); } public function trackTrans():void{ _debug.info("trackTrans()"); _call("_trackTrans"); } public function setCookieTimeout(_arg1:int):void{ _debug.info((("setCookieTimeout( " + _arg1) + " )")); _call("_setCookieTimeout", _arg1); } public function trackPageview(_arg1:String=""):void{ _debug.info((("trackPageview( " + _arg1) + " )")); _call("_trackPageview", _arg1); } public function getClientInfo():Boolean{ _debug.info("getClientInfo()"); return (_call("_getClientInfo")); } private function _checkValidTrackingObject(_arg1:String):Boolean{ return (_proxy.call(_checkValidTrackingObject_js, _arg1)); } private function _checkGAJS():Boolean{ return (_proxy.call(_checkGAJS_js)); } public function linkByPost(_arg1:Object, _arg2:Boolean=false):void{ _debug.warning((((("linkByPost( " + _arg1) + ", ") + _arg2) + " ) not implemented")); } private function _call(_arg1:String, ... _args){ _args.unshift(((((("window." + _jsContainer) + "[\"") + _account) + "\"].") + _arg1)); return (_proxy.call.apply(_proxy, _args)); } public function hasGAJS():Boolean{ return (_checkGAJS()); } private function _checkTrackingObject(_arg1:String):Boolean{ var _local2:Boolean = _proxy.hasProperty(_arg1); var _local3:Boolean = _proxy.hasProperty((_arg1 + "._getAccount")); return (((_local2) && (_local3))); } public function resetSession():void{ _debug.warning("resetSession() not implemented"); } public function getDetectTitle():Boolean{ _debug.info("getDetectTitle()"); return (_call("_getDetectTitle")); } public function setCampNameKey(_arg1:String):void{ _debug.info((("setCampNameKey( " + _arg1) + " )")); _call("_setCampNameKey", _arg1); } public function setDetectFlash(_arg1:Boolean):void{ _debug.info((("setDetectFlash( " + _arg1) + " )")); _call("_setDetectFlash", _arg1); } public function createEventTracker(_arg1:String):EventTracker{ _debug.info((("createEventTracker( " + _arg1) + " )")); return (new EventTracker(_arg1, this)); } public function addItem(_arg1:String, _arg2:String, _arg3:String, _arg4:String, _arg5:Number, _arg6:int):void{ _debug.info((("addItem( " + [_arg1, _arg2, _arg3, _arg4, _arg5, _arg6].join(", ")) + " )")); _call("_addItem", _arg1, _arg2, _arg3, _arg4, _arg5, _arg6); } public function clearIgnoredOrganic():void{ _debug.info("clearIgnoredOrganic()"); _call("_clearIgnoreOrganic"); } public function setVar(_arg1:String):void{ _debug.info((("setVar( " + _arg1) + " )")); _call("_setVar", _arg1); } public function setDomainName(_arg1:String):void{ _debug.info((("setDomainName( " + _arg1) + " )")); _call("_setDomainName", _arg1); } public function hasTrackingAccount(_arg1:String):Boolean{ if (Utils.validateAccount(_arg1)){ return (_checkValidTrackingObject(_arg1)); }; return (_checkTrackingObject(_arg1)); } public function setCampSourceKey(_arg1:String):void{ _debug.info((("setCampSourceKey( " + _arg1) + " )")); _call("_setCampSourceKey", _arg1); } public function addTrans(_arg1:String, _arg2:String, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:String, _arg7:String, _arg8:String):Object{ _debug.info((("addTrans( " + [_arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7, _arg8].join(", ")) + " )")); _call("_addTrans", _arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7, _arg8); return (null); } public function setCampContentKey(_arg1:String):void{ _debug.info((("setCampContentKey( " + _arg1) + " )")); _call("_setCampContentKey", _arg1); } public function setLocalServerMode():void{ _debug.info("setLocalServerMode()"); _call("_setLocalServerMode"); } public function getLocalGifPath():String{ _debug.info("getLocalGifPath()"); return (_call("_getLocalGifPath")); } public function clearIgnoredRef():void{ _debug.info("clearIgnoredRef()"); _call("_clearIgnoreRef"); } public function setAllowAnchor(_arg1:Boolean):void{ _debug.info((("setAllowAnchor( " + _arg1) + " )")); _call("_setAllowAnchor", _arg1); } public function setLocalGifPath(_arg1:String):void{ _debug.info((("setLocalGifPath( " + _arg1) + " )")); _call("_setLocalGifPath", _arg1); } public function getVersion():String{ _debug.info("getVersion()"); return (_call("_getVersion")); } private function _injectTrackingObject():void{ _proxy.executeBlock(_injectTrackingObject_js); _hasGATracker = true; } public function setCookiePath(_arg1:String):void{ _debug.info((("setCookiePath( " + _arg1) + " )")); _call("_setCookiePath", _arg1); } public function setSampleRate(_arg1:Number):void{ _debug.info((("setSampleRate( " + _arg1) + " )")); _call("_setSampleRate", _arg1); } public function setAllowHash(_arg1:Boolean):void{ _debug.info((("setAllowHash( " + _arg1) + " )")); _call("_setAllowHash", _arg1); } public function addIgnoredOrganic(_arg1:String):void{ _debug.info((("addIgnoredOrganic( " + _arg1) + " )")); _call("_addIgnoredOrganic", _arg1); } public function setCampNOKey(_arg1:String):void{ _debug.info((("setCampNOKey( " + _arg1) + " )")); _call("_setCampNOKey", _arg1); } public function cookiePathCopy(_arg1:String):void{ _debug.info((("cookiePathCopy( " + _arg1) + " )")); _call("_cookiePathCopy", _arg1); } public function setLocalRemoteServerMode():void{ _debug.info("setLocalRemoteServerMode()"); _call("_setLocalRemoteServerMode"); } public function getServiceMode():ServerOperationMode{ _debug.info("getServiceMode()"); return (_call("_getServiceMode")); } public function setDetectTitle(_arg1:Boolean):void{ _debug.info((("setDetectTitle( " + _arg1) + " )")); _call("_setDetectTitle", _arg1); } private function _createTrackingObject(_arg1:String):void{ _proxy.call(_createTrackingObject_js, _arg1); } public function setCampaignTrack(_arg1:Boolean):void{ _debug.info((("setCampaignTrack( " + _arg1) + " )")); _call("_setCampaignTrack", _arg1); } public function clearOrganic():void{ _debug.info("clearOrganic()"); _call("_clearOrganic"); } public function setCampTermKey(_arg1:String):void{ _debug.info((("setCampTermKey( " + _arg1) + " )")); _call("_setCampTermKey", _arg1); } public function getDetectFlash():Boolean{ _debug.info("getDetectFlash()"); return (_call("_getDetectFlash")); } public function setCampMediumKey(_arg1:String):void{ _debug.info((("setCampMediumKey( " + _arg1) + " )")); _call("_setCampMediumKey", _arg1); } public function addIgnoredRef(_arg1:String):void{ _debug.info((("addIgnoredRef( " + _arg1) + " )")); _call("_addIgnoredRef", _arg1); } public function setSessionTimeout(_arg1:int):void{ _debug.info((("setSessionTimeout( " + _arg1) + " )")); _call("_setSessionTimeout", _arg1); } public function setRemoteServerMode():void{ _debug.info("setRemoteServerMode()"); _call("_setRemoteServerMode"); } public function getAccount():String{ _debug.info("getAccount()"); return (_call("_getAccount")); } } }//package com.google.analytics.v4
Section 90
//Configuration (com.google.analytics.v4.Configuration) package com.google.analytics.v4 { import com.google.analytics.core.*; import com.google.analytics.debug.*; import com.google.analytics.utils.*; import com.google.analytics.campaign.*; public class Configuration { public var serverMode:ServerOperationMode; public var detectFlash:Boolean;// = true public var hasSiteOverlay:Boolean;// = false public var allowLocalTracking:Boolean;// = true public var secureRemoteGIFpath:String;// = "https://ssl.google-analytics.com/__utm.gif" private var _version:String;// = "4.3as" public var allowDomainHash:Boolean;// = true public var detectClientInfo:Boolean;// = true public var idleLoop:Number;// = 30 public var isTrackOutboundSubdomains:Boolean;// = false public var cookiePath:String;// = "/" public var transactionFieldDelim:String;// = "|" private var _organic:Organic; private var _cookieName:String;// = "analytics" public var campaignKey:CampaignKey; public var google:String;// = "google" public var googleCsePath:String;// = "cse" public var bucketCapacity:Number;// = 10 private var _sampleRate:Number;// = 1 public var remoteGIFpath:String;// = "http://www.google-analytics.com/__utm.gif" public var googleSearchParam:String;// = "q" public var allowLinker:Boolean;// = false public var maxOutboundLinkExamined:Number;// = 1000 private var _debug:DebugConfiguration; public var allowAnchor:Boolean;// = false private var _domain:Domain; private var _trackingLimitPerSession:int;// = 500 public var tokenCliff:int;// = 10 public var sessionTimeout:Number; public var idleTimeout:Number;// = 60 public var campaignTracking:Boolean;// = true public var domainName:String;// = "" public var detectTitle:Boolean;// = true public var tokenRate:Number;// = 0.2 public var conversionTimeout:Number; public var localGIFpath:String;// = "/__utm.gif" public function Configuration(_arg1:DebugConfiguration=null){ _organic = new Organic(); conversionTimeout = Timespan.sixmonths; sessionTimeout = Timespan.thirtyminutes; campaignKey = new CampaignKey(); serverMode = ServerOperationMode.remote; super(); _debug = _arg1; _domain = new Domain(DomainNameMode.auto, "", _debug); serverMode = ServerOperationMode.remote; _initOrganicSources(); } public function get organic():Organic{ return (_organic); } public function get cookieName():String{ return (_cookieName); } public function get trackingLimitPerSession():int{ return (_trackingLimitPerSession); } private function _initOrganicSources():void{ addOrganicSource(google, googleSearchParam); addOrganicSource("yahoo", "p"); addOrganicSource("msn", "q"); addOrganicSource("aol", "query"); addOrganicSource("aol", "encquery"); addOrganicSource("lycos", "query"); addOrganicSource("ask", "q"); addOrganicSource("altavista", "q"); addOrganicSource("netscape", "query"); addOrganicSource("cnn", "query"); addOrganicSource("looksmart", "qt"); addOrganicSource("about", "terms"); addOrganicSource("mamma", "query"); addOrganicSource("alltheweb", "q"); addOrganicSource("gigablast", "q"); addOrganicSource("voila", "rdata"); addOrganicSource("virgilio", "qs"); addOrganicSource("live", "q"); addOrganicSource("baidu", "wd"); addOrganicSource("alice", "qs"); addOrganicSource("yandex", "text"); addOrganicSource("najdi", "q"); addOrganicSource("aol", "q"); addOrganicSource("club-internet", "q"); addOrganicSource("mama", "query"); addOrganicSource("seznam", "q"); addOrganicSource("search", "q"); addOrganicSource("wp", "szukaj"); addOrganicSource("onet", "qt"); addOrganicSource("netsprint", "q"); addOrganicSource("google.interia", "q"); addOrganicSource("szukacz", "q"); addOrganicSource("yam", "k"); addOrganicSource("pchome", "q"); addOrganicSource("kvasir", "searchExpr"); addOrganicSource("sesam", "q"); addOrganicSource("ozu", "q"); addOrganicSource("terra", "query"); addOrganicSource("nostrum", "query"); addOrganicSource("mynet", "q"); addOrganicSource("ekolay", "q"); addOrganicSource("search.ilse", "search_for"); } public function get sampleRate():Number{ return (_sampleRate); } public function addOrganicSource(_arg1:String, _arg2:String):void{ var engine = _arg1; var keyword = _arg2; try { _organic.addSource(engine, keyword); } catch(e:Error) { if (((_debug) && (_debug.active))){ _debug.warning(e.message); }; }; } public function get domain():Domain{ return (_domain); } public function set sampleRate(_arg1:Number):void{ if (_arg1 <= 0){ _arg1 = 0.1; }; if (_arg1 > 1){ _arg1 = 1; }; _arg1 = Number(_arg1.toFixed(2)); _sampleRate = _arg1; } public function get version():String{ return (_version); } } }//package com.google.analytics.v4
Section 91
//GoogleAnalyticsAPI (com.google.analytics.v4.GoogleAnalyticsAPI) package com.google.analytics.v4 { import com.google.analytics.core.*; public interface GoogleAnalyticsAPI { function setCampSourceKey(_arg1:String):void; function getServiceMode():ServerOperationMode; function resetSession():void; function setLocalServerMode():void; function setCampContentKey(_arg1:String):void; function addOrganic(_arg1:String, _arg2:String):void; function setDetectFlash(_arg1:Boolean):void; function addTrans(_arg1:String, _arg2:String, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:String, _arg7:String, _arg8:String):Object; function trackEvent(_arg1:String, _arg2:String, _arg3:String=null, _arg4:Number=NaN):Boolean; function setCampTermKey(_arg1:String):void; function setCampNameKey(_arg1:String):void; function addIgnoredOrganic(_arg1:String):void; function addItem(_arg1:String, _arg2:String, _arg3:String, _arg4:String, _arg5:Number, _arg6:int):void; function setAllowLinker(_arg1:Boolean):void; function getClientInfo():Boolean; function getDetectFlash():Boolean; function setCampaignTrack(_arg1:Boolean):void; function createEventTracker(_arg1:String):EventTracker; function setCookieTimeout(_arg1:int):void; function setAllowAnchor(_arg1:Boolean):void; function trackTrans():void; function clearOrganic():void; function trackPageview(_arg1:String=""):void; function setLocalGifPath(_arg1:String):void; function getVersion():String; function getLocalGifPath():String; function setVar(_arg1:String):void; function clearIgnoredOrganic():void; function setCampMediumKey(_arg1:String):void; function addIgnoredRef(_arg1:String):void; function setClientInfo(_arg1:Boolean):void; function setCookiePath(_arg1:String):void; function setSampleRate(_arg1:Number):void; function setSessionTimeout(_arg1:int):void; function setRemoteServerMode():void; function clearIgnoredRef():void; function setDomainName(_arg1:String):void; function setDetectTitle(_arg1:Boolean):void; function setAllowHash(_arg1:Boolean):void; function getAccount():String; function linkByPost(_arg1:Object, _arg2:Boolean=false):void; function link(_arg1:String, _arg2:Boolean=false):void; function setCampNOKey(_arg1:String):void; function setLocalRemoteServerMode():void; function cookiePathCopy(_arg1:String):void; function getDetectTitle():Boolean; } }//package com.google.analytics.v4
Section 92
//Tracker (com.google.analytics.v4.Tracker) package com.google.analytics.v4 { import com.google.analytics.core.*; import com.google.analytics.debug.*; import com.google.analytics.external.*; import com.google.analytics.utils.*; import com.google.analytics.data.*; import com.google.analytics.campaign.*; public class Tracker implements GoogleAnalyticsAPI { private const EVENT_TRACKER_LABEL_KEY_NUM:int = 3; private const EVENT_TRACKER_VALUE_VALUE_NUM:int = 1; private const EVENT_TRACKER_PROJECT_ID:int = 5; private const EVENT_TRACKER_OBJECT_NAME_KEY_NUM:int = 1; private const EVENT_TRACKER_TYPE_KEY_NUM:int = 2; private var _adSense:AdSenseGlobals; private var _eventTracker:X10; private var _noSessionInformation:Boolean;// = false private var _browserInfo:BrowserInfo; private var _debug:DebugConfiguration; private var _isNewVisitor:Boolean;// = false private var _buffer:Buffer; private var _config:Configuration; private var _x10Module:X10; private var _campaign:CampaignManager; private var _formatedReferrer:String; private var _timeStamp:Number; private var _info:Environment; private var _domainHash:Number; private var _campaignInfo:CampaignInfo; private var _gifRequest:GIFRequest; private var _hasInitData:Boolean;// = false private var _account:String; public function Tracker(_arg1:String, _arg2:Configuration, _arg3:DebugConfiguration, _arg4:Environment, _arg5:Buffer, _arg6:GIFRequest, _arg7:AdSenseGlobals){ var _local8:String; super(); _account = _arg1; _config = _arg2; _debug = _arg3; _info = _arg4; _buffer = _arg5; _gifRequest = _arg6; _adSense = _arg7; if (!Utils.validateAccount(_arg1)){ _local8 = (("Account \"" + _arg1) + "\" is not valid."); _debug.warning(_local8); throw (new Error(_local8)); }; _initData(); } private function _doTracking():Boolean{ if (((((!((_info.protocol == Protocols.file))) && (!((_info.protocol == Protocols.none))))) && (_isNotGoogleSearch()))){ return (true); }; if (_config.allowLocalTracking){ return (true); }; return (false); } public function addOrganic(_arg1:String, _arg2:String):void{ _debug.info((("addOrganic( " + [_arg1, _arg2].join(", ")) + " )")); _config.organic.addSource(_arg1, _arg2); } public function setAllowLinker(_arg1:Boolean):void{ _config.allowLinker = _arg1; _debug.info((("setAllowLinker( " + _config.allowLinker) + " )")); } public function trackEvent(_arg1:String, _arg2:String, _arg3:String=null, _arg4:Number=NaN):Boolean{ var _local5:Boolean; var _local6 = 2; if (((!((_arg1 == ""))) && (!((_arg2 == ""))))){ _eventTracker.clearKey(EVENT_TRACKER_PROJECT_ID); _eventTracker.clearValue(EVENT_TRACKER_PROJECT_ID); _local5 = _eventTracker.setKey(EVENT_TRACKER_PROJECT_ID, EVENT_TRACKER_OBJECT_NAME_KEY_NUM, _arg1); _local5 = _eventTracker.setKey(EVENT_TRACKER_PROJECT_ID, EVENT_TRACKER_TYPE_KEY_NUM, _arg2); if (((_arg3) && (!((_arg3 == ""))))){ _local5 = _eventTracker.setKey(EVENT_TRACKER_PROJECT_ID, EVENT_TRACKER_LABEL_KEY_NUM, _arg3); _local6 = 3; if (!isNaN(_arg4)){ _local5 = _eventTracker.setValue(EVENT_TRACKER_PROJECT_ID, EVENT_TRACKER_VALUE_VALUE_NUM, _arg4); _local6 = 4; }; }; if (_local5){ _debug.info(((("valid event tracking call\ncategory: " + _arg1) + "\naction: ") + _arg2), VisualDebugMode.geek); _sendXEvent(_eventTracker); }; } else { _debug.warning(((("event tracking call is not valid, failed!\ncategory: " + _arg1) + "\naction: ") + _arg2), VisualDebugMode.geek); _local5 = false; }; switch (_local6){ case 4: _debug.info((("trackEvent( " + [_arg1, _arg2, _arg3, _arg4].join(", ")) + " )")); break; case 3: _debug.info((("trackEvent( " + [_arg1, _arg2, _arg3].join(", ")) + " )")); break; case 2: default: _debug.info((("trackEvent( " + [_arg1, _arg2].join(", ")) + " )")); }; return (_local5); } public function trackPageview(_arg1:String=""):void{ _debug.info((("trackPageview( " + _arg1) + " )")); if (_doTracking()){ _initData(); _trackMetrics(_arg1); _noSessionInformation = false; } else { _debug.warning((("trackPageview( " + _arg1) + " ) failed")); }; } public function setCookieTimeout(_arg1:int):void{ _config.conversionTimeout = _arg1; _debug.info((("setCookieTimeout( " + _config.conversionTimeout) + " )")); } public function trackTrans():void{ _debug.warning("trackTrans() not implemented"); } public function setClientInfo(_arg1:Boolean):void{ _config.detectClientInfo = _arg1; _debug.info((("setClientInfo( " + _config.detectClientInfo) + " )")); } public function linkByPost(_arg1:Object, _arg2:Boolean=false):void{ _debug.warning((("linkByPost( " + [_arg1, _arg2].join(", ")) + " ) not implemented")); } private function _initData():void{ var _local1:String; var _local2:String; if (!_hasInitData){ _updateDomainName(); _domainHash = _getDomainHash(); _timeStamp = Math.round((new Date().getTime() / 1000)); if (_debug.verbose){ _local1 = ""; _local1 = (_local1 + "_initData 0"); _local1 = (_local1 + ("\ndomain name: " + _config.domainName)); _local1 = (_local1 + ("\ndomain hash: " + _domainHash)); _local1 = (_local1 + (((("\ntimestamp: " + _timeStamp) + " (") + new Date((_timeStamp * 1000))) + ")")); _debug.info(_local1, VisualDebugMode.geek); }; }; if (_doTracking()){ _handleCookie(); }; if (!_hasInitData){ if (_doTracking()){ _formatedReferrer = _formatReferrer(); _browserInfo = new BrowserInfo(_config, _info); _debug.info(("browserInfo: " + _browserInfo.toURLString()), VisualDebugMode.advanced); if (_config.campaignTracking){ _campaign = new CampaignManager(_config, _debug, _buffer, _domainHash, _formatedReferrer, _timeStamp); _campaignInfo = _campaign.getCampaignInformation(_info.locationSearch, _noSessionInformation); _debug.info(("campaignInfo: " + _campaignInfo.toURLString()), VisualDebugMode.advanced); }; }; _x10Module = new X10(); _eventTracker = new X10(); _hasInitData = true; }; if (_config.hasSiteOverlay){ _debug.warning("Site Overlay is not supported"); }; if (_debug.verbose){ _local2 = ""; _local2 = (_local2 + "_initData (misc)"); _local2 = (_local2 + ("\nflash version: " + _info.flashVersion.toString(4))); _local2 = (_local2 + ("\nprotocol: " + _info.protocol)); _local2 = (_local2 + (("\ndefault domain name (auto): \"" + _info.domainName) + "\"")); _local2 = (_local2 + ("\nlanguage: " + _info.language)); _local2 = (_local2 + ("\ndomain hash: " + _getDomainHash())); _local2 = (_local2 + ("\nuser-agent: " + _info.userAgent)); _debug.info(_local2, VisualDebugMode.geek); }; } public function getDetectTitle():Boolean{ _debug.info("getDetectTitle()"); return (_config.detectTitle); } public function resetSession():void{ _debug.info("resetSession()"); _buffer.resetCurrentSession(); } public function getClientInfo():Boolean{ _debug.info("getClientInfo()"); return (_config.detectClientInfo); } private function _sendXEvent(_arg1:X10=null):void{ var _local2:Variables; var _local3:EventInfo; var _local4:Variables; var _local5:Variables; _initData(); if (_takeSample()){ _local2 = new Variables(); _local2.URIencode = true; _local3 = new EventInfo(true, _x10Module, _arg1); _local4 = _local3.toVariables(); _local5 = _renderMetricsSearchVariables(); _local2.join(_local4, _local5); _gifRequest.send(_account, _local2, false, true); }; } public function setDetectFlash(_arg1:Boolean):void{ _config.detectFlash = _arg1; _debug.info((("setDetectFlash( " + _config.detectFlash) + " )")); } public function setCampNameKey(_arg1:String):void{ _config.campaignKey.UCCN = _arg1; var _local2 = (("setCampNameKey( " + _config.campaignKey.UCCN) + " )"); if (_debug.mode == VisualDebugMode.geek){ _debug.info((_local2 + " [UCCN]")); } else { _debug.info(_local2); }; } private function _formatReferrer():String{ var _local2:String; var _local3:URL; var _local4:URL; var _local1:String = _info.referrer; if ((((_local1 == "")) || ((_local1 == "localhost")))){ _local1 = "-"; } else { _local2 = _info.domainName; _local3 = new URL(_local1); _local4 = new URL(("http://" + _local2)); if (_local3.hostName == _local2){ return ("-"); }; if (_local4.domain == _local3.domain){ if (_local4.subDomain != _local3.subDomain){ _local1 = "0"; }; }; if ((((_local1.charAt(0) == "[")) && (_local1.charAt((_local1.length - 1))))){ _local1 = "-"; }; }; _debug.info(("formated referrer: " + _local1), VisualDebugMode.advanced); return (_local1); } private function _visitCode():Number{ if (_debug.verbose){ _debug.info(("visitCode: " + _buffer.utma.sessionId), VisualDebugMode.geek); }; return (_buffer.utma.sessionId); } public function createEventTracker(_arg1:String):EventTracker{ _debug.info((("createEventTracker( " + _arg1) + " )")); return (new EventTracker(_arg1, this)); } public function addItem(_arg1:String, _arg2:String, _arg3:String, _arg4:String, _arg5:Number, _arg6:int):void{ _debug.warning((("addItem( " + [_arg1, _arg2, _arg3, _arg4, _arg5, _arg6].join(", ")) + " ) not implemented")); } public function clearIgnoredOrganic():void{ _debug.info("clearIgnoredOrganic()"); _config.organic.clearIgnoredKeywords(); } public function setVar(_arg1:String):void{ var _local2:Variables; if (((!((_arg1 == ""))) && (_isNotGoogleSearch()))){ _initData(); _buffer.utmv.domainHash = _domainHash; _buffer.utmv.value = _arg1; if (_debug.verbose){ _debug.info(_buffer.utmv.toString(), VisualDebugMode.geek); }; _debug.info((("setVar( " + _arg1) + " )")); if (_takeSample()){ _local2 = new Variables(); _local2.utmt = "var"; _gifRequest.send(_account, _local2); }; } else { _debug.warning((("setVar \"" + _arg1) + "\" is ignored")); }; } public function setDomainName(_arg1:String):void{ if (_arg1 == "auto"){ _config.domain.mode = DomainNameMode.auto; } else { if (_arg1 == "none"){ _config.domain.mode = DomainNameMode.none; } else { _config.domain.mode = DomainNameMode.custom; _config.domain.name = _arg1; }; }; _updateDomainName(); _debug.info((("setDomainName( " + _config.domainName) + " )")); } private function _updateDomainName():void{ var _local1:String; if (_config.domain.mode == DomainNameMode.auto){ _local1 = _info.domainName; if (_local1.substring(0, 4) == "www."){ _local1 = _local1.substring(4); }; _config.domain.name = _local1; }; _config.domainName = _config.domain.name.toLowerCase(); _debug.info(("domain name: " + _config.domainName), VisualDebugMode.advanced); } public function addTrans(_arg1:String, _arg2:String, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:String, _arg7:String, _arg8:String):Object{ _debug.warning((("addTrans( " + [_arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7, _arg8].join(", ")) + " ) not implemented")); return (null); } private function _renderMetricsSearchVariables(_arg1:String=""):Variables{ var _local4:Variables; var _local2:Variables = new Variables(); _local2.URIencode = true; var _local3:DocumentInfo = new DocumentInfo(_config, _info, _formatedReferrer, _arg1, _adSense); _debug.info(("docInfo: " + _local3.toURLString()), VisualDebugMode.geek); if (_config.campaignTracking){ _local4 = _campaignInfo.toVariables(); }; var _local5:Variables = _browserInfo.toVariables(); _local2.join(_local3.toVariables(), _local5, _local4); return (_local2); } public function setCampContentKey(_arg1:String):void{ _config.campaignKey.UCCT = _arg1; var _local2 = (("setCampContentKey( " + _config.campaignKey.UCCT) + " )"); if (_debug.mode == VisualDebugMode.geek){ _debug.info((_local2 + " [UCCT]")); } else { _debug.info(_local2); }; } private function _handleCookie():void{ var _local1:String; var _local2:String; var _local3:Array; var _local4:String; if (_config.allowLinker){ }; if (((_buffer.hasUTMA()) && (!(_buffer.utma.isEmpty())))){ if (((!(_buffer.hasUTMB())) || (!(_buffer.hasUTMC())))){ _buffer.updateUTMA(_timeStamp); _noSessionInformation = true; }; if (_debug.verbose){ _debug.info(("from cookie " + _buffer.utma.toString()), VisualDebugMode.geek); }; } else { _debug.info("create a new utma", VisualDebugMode.advanced); _buffer.utma.domainHash = _domainHash; _buffer.utma.sessionId = _getUniqueSessionId(); _buffer.utma.firstTime = _timeStamp; _buffer.utma.lastTime = _timeStamp; _buffer.utma.currentTime = _timeStamp; _buffer.utma.sessionCount = 1; if (_debug.verbose){ _debug.info(_buffer.utma.toString(), VisualDebugMode.geek); }; _noSessionInformation = true; _isNewVisitor = true; }; if (((_adSense.gaGlobal) && ((_adSense.dh == String(_domainHash))))){ if (_adSense.sid){ _buffer.utma.currentTime = Number(_adSense.sid); if (_debug.verbose){ _local1 = ""; _local1 = (_local1 + "AdSense sid found\n"); _local1 = (_local1 + (((("Override currentTime(" + _buffer.utma.currentTime) + ") from AdSense sid(") + Number(_adSense.sid)) + ")")); _debug.info(_local1, VisualDebugMode.geek); }; }; if (_isNewVisitor){ if (_adSense.sid){ _buffer.utma.lastTime = Number(_adSense.sid); if (_debug.verbose){ _local2 = ""; _local2 = (_local2 + "AdSense sid found (new visitor)\n"); _local2 = (_local2 + (((("Override lastTime(" + _buffer.utma.lastTime) + ") from AdSense sid(") + Number(_adSense.sid)) + ")")); _debug.info(_local2, VisualDebugMode.geek); }; }; if (_adSense.vid){ _local3 = _adSense.vid.split("."); _buffer.utma.sessionId = Number(_local3[0]); _buffer.utma.firstTime = Number(_local3[1]); if (_debug.verbose){ _local4 = ""; _local4 = (_local4 + "AdSense vid found (new visitor)\n"); _local4 = (_local4 + (((("Override sessionId(" + _buffer.utma.sessionId) + ") from AdSense vid(") + Number(_local3[0])) + ")\n")); _local4 = (_local4 + (((("Override firstTime(" + _buffer.utma.firstTime) + ") from AdSense vid(") + Number(_local3[1])) + ")")); _debug.info(_local4, VisualDebugMode.geek); }; }; if (_debug.verbose){ _debug.info(("AdSense modified : " + _buffer.utma.toString()), VisualDebugMode.geek); }; }; }; _buffer.utmb.domainHash = _domainHash; if (isNaN(_buffer.utmb.trackCount)){ _buffer.utmb.trackCount = 0; }; if (isNaN(_buffer.utmb.token)){ _buffer.utmb.token = _config.tokenCliff; }; if (isNaN(_buffer.utmb.lastTime)){ _buffer.utmb.lastTime = _buffer.utma.currentTime; }; _buffer.utmc.domainHash = _domainHash; if (_debug.verbose){ _debug.info(_buffer.utmb.toString(), VisualDebugMode.advanced); _debug.info(_buffer.utmc.toString(), VisualDebugMode.advanced); }; } public function setLocalServerMode():void{ _config.serverMode = ServerOperationMode.local; _debug.info("setLocalServerMode()"); } public function clearIgnoredRef():void{ _debug.info("clearIgnoredRef()"); _config.organic.clearIgnoredReferrals(); } public function setCampSourceKey(_arg1:String):void{ _config.campaignKey.UCSR = _arg1; var _local2 = (("setCampSourceKey( " + _config.campaignKey.UCSR) + " )"); if (_debug.mode == VisualDebugMode.geek){ _debug.info((_local2 + " [UCSR]")); } else { _debug.info(_local2); }; } public function getLocalGifPath():String{ _debug.info("getLocalGifPath()"); return (_config.localGIFpath); } public function setLocalGifPath(_arg1:String):void{ _config.localGIFpath = _arg1; _debug.info((("setLocalGifPath( " + _config.localGIFpath) + " )")); } public function getVersion():String{ _debug.info("getVersion()"); return (_config.version); } public function setAllowAnchor(_arg1:Boolean):void{ _config.allowAnchor = _arg1; _debug.info((("setAllowAnchor( " + _config.allowAnchor) + " )")); } private function _isNotGoogleSearch():Boolean{ var _local1:String = _config.domainName; var _local2 = (_local1.indexOf("www.google.") < 0); var _local3 = (_local1.indexOf(".google.") < 0); var _local4 = (_local1.indexOf("google.") < 0); var _local5 = (_local1.indexOf("google.org") > -1); return (((((((((_local2) || (_local3))) || (_local4))) || (!((_config.cookiePath == "/"))))) || (_local5))); } public function setSampleRate(_arg1:Number):void{ if (_arg1 < 0){ _debug.warning("sample rate can not be negative, ignoring value."); } else { _config.sampleRate = _arg1; }; _debug.info((("setSampleRate( " + _config.sampleRate) + " )")); } private function _takeSample():Boolean{ if (_debug.verbose){ _debug.info((((("takeSample: (" + (_visitCode() % 10000)) + ") < (") + (_config.sampleRate * 10000)) + ")"), VisualDebugMode.geek); }; return (((_visitCode() % 10000) < (_config.sampleRate * 10000))); } public function setCookiePath(_arg1:String):void{ _config.cookiePath = _arg1; _debug.info((("setCookiePath( " + _config.cookiePath) + " )")); } public function setAllowHash(_arg1:Boolean):void{ _config.allowDomainHash = _arg1; _debug.info((("setAllowHash( " + _config.allowDomainHash) + " )")); } private function _generateUserDataHash():Number{ var _local1 = ""; _local1 = (_local1 + _info.appName); _local1 = (_local1 + _info.appVersion); _local1 = (_local1 + _info.language); _local1 = (_local1 + _info.platform); _local1 = (_local1 + _info.userAgent.toString()); _local1 = (_local1 + (((_info.screenWidth + "x") + _info.screenHeight) + _info.screenColorDepth)); _local1 = (_local1 + _info.referrer); return (Utils.generateHash(_local1)); } public function setCampNOKey(_arg1:String):void{ _config.campaignKey.UCNO = _arg1; var _local2 = (("setCampNOKey( " + _config.campaignKey.UCNO) + " )"); if (_debug.mode == VisualDebugMode.geek){ _debug.info((_local2 + " [UCNO]")); } else { _debug.info(_local2); }; } public function addIgnoredOrganic(_arg1:String):void{ _debug.info((("addIgnoredOrganic( " + _arg1) + " )")); _config.organic.addIgnoredKeyword(_arg1); } public function setLocalRemoteServerMode():void{ _config.serverMode = ServerOperationMode.both; _debug.info("setLocalRemoteServerMode()"); } public function cookiePathCopy(_arg1:String):void{ _debug.warning((("cookiePathCopy( " + _arg1) + " ) not implemented")); } public function setDetectTitle(_arg1:Boolean):void{ _config.detectTitle = _arg1; _debug.info((("setDetectTitle( " + _config.detectTitle) + " )")); } public function setCampTermKey(_arg1:String):void{ _config.campaignKey.UCTR = _arg1; var _local2 = (("setCampTermKey( " + _config.campaignKey.UCTR) + " )"); if (_debug.mode == VisualDebugMode.geek){ _debug.info((_local2 + " [UCTR]")); } else { _debug.info(_local2); }; } public function getServiceMode():ServerOperationMode{ _debug.info("getServiceMode()"); return (_config.serverMode); } private function _trackMetrics(_arg1:String=""):void{ var _local2:Variables; var _local3:Variables; var _local4:Variables; var _local5:EventInfo; if (_takeSample()){ _local2 = new Variables(); _local2.URIencode = true; if (((_x10Module) && (_x10Module.hasData()))){ _local5 = new EventInfo(false, _x10Module); _local3 = _local5.toVariables(); }; _local4 = _renderMetricsSearchVariables(_arg1); _local2.join(_local3, _local4); _gifRequest.send(_account, _local2); }; } public function setCampaignTrack(_arg1:Boolean):void{ _config.campaignTracking = _arg1; _debug.info((("setCampaignTrack( " + _config.campaignTracking) + " )")); } public function addIgnoredRef(_arg1:String):void{ _debug.info((("addIgnoredRef( " + _arg1) + " )")); _config.organic.addIgnoredReferral(_arg1); } public function clearOrganic():void{ _debug.info("clearOrganic()"); _config.organic.clearEngines(); } public function getDetectFlash():Boolean{ _debug.info("getDetectFlash()"); return (_config.detectFlash); } public function setCampMediumKey(_arg1:String):void{ _config.campaignKey.UCMD = _arg1; var _local2 = (("setCampMediumKey( " + _config.campaignKey.UCMD) + " )"); if (_debug.mode == VisualDebugMode.geek){ _debug.info((_local2 + " [UCMD]")); } else { _debug.info(_local2); }; } private function _getUniqueSessionId():Number{ var _local1:Number = ((Utils.generate32bitRandom() ^ _generateUserDataHash()) * 2147483647); _debug.info(("Session ID: " + _local1), VisualDebugMode.geek); return (_local1); } private function _getDomainHash():Number{ if (((((!(_config.domainName)) || ((_config.domainName == "")))) || ((_config.domain.mode == DomainNameMode.none)))){ _config.domainName = ""; return (1); }; _updateDomainName(); if (_config.allowDomainHash){ return (Utils.generateHash(_config.domainName)); }; return (1); } public function setSessionTimeout(_arg1:int):void{ _config.sessionTimeout = _arg1; _debug.info((("setSessionTimeout( " + _config.sessionTimeout) + " )")); } public function getAccount():String{ _debug.info("getAccount()"); return (_account); } public function link(_arg1:String, _arg2:Boolean=false):void{ _debug.warning((("link( " + [_arg1, _arg2].join(", ")) + " ) not implemented")); } public function setRemoteServerMode():void{ _config.serverMode = ServerOperationMode.remote; _debug.info("setRemoteServerMode()"); } } }//package com.google.analytics.v4
Section 93
//AnalyticsTracker (com.google.analytics.AnalyticsTracker) package com.google.analytics { import flash.events.*; import com.google.analytics.v4.*; import com.google.analytics.debug.*; public interface AnalyticsTracker extends GoogleAnalyticsAPI, IEventDispatcher { function set account(_arg1:String):void; function get config():Configuration; function get mode():String; function set config(_arg1:Configuration):void; function set mode(_arg1:String):void; function set debug(_arg1:DebugConfiguration):void; function get visualDebug():Boolean; function get account():String; function set visualDebug(_arg1:Boolean):void; function isReady():Boolean; function get debug():DebugConfiguration; } }//package com.google.analytics
Section 94
//API (com.google.analytics.API) package com.google.analytics { import com.google.analytics.utils.*; public class API { public static var version:Version = new Version(); version.major = 1; version.minor = 0; version.build = 1; version.revision = "$Rev: 319 $ ".split(" ")[1]; } }//package com.google.analytics
Section 95
//GATracker (com.google.analytics.GATracker) package com.google.analytics { import flash.events.*; import flash.display.*; import com.google.analytics.core.*; import com.google.analytics.v4.*; import com.google.analytics.debug.*; import com.google.analytics.external.*; import com.google.analytics.utils.*; import com.google.analytics.events.*; public class GATracker implements AnalyticsTracker { private var _adSense:AdSenseGlobals; private var _env:Environment; private var _visualDebug:Boolean; private var _idleTimer:IdleTimer; private var _debug:DebugConfiguration; private var _buffer:Buffer; private var _config:Configuration; private var _mode:String; private var _display:DisplayObject; private var _jsproxy:JavascriptProxy; private var _dom:HTMLDOM; private var _eventDispatcher:EventDispatcher; private var _ready:Boolean;// = false private var _gifRequest:GIFRequest; private var _account:String; private var _tracker:GoogleAnalyticsAPI; public static var version:Version = API.version; public static var autobuild:Boolean = true; public function GATracker(_arg1:DisplayObject, _arg2:String, _arg3:String="AS3", _arg4:Boolean=false, _arg5:Configuration=null, _arg6:DebugConfiguration=null){ _display = _arg1; _eventDispatcher = new EventDispatcher(this); _tracker = new TrackerCache(); this.account = _arg2; this.mode = _arg3; this.visualDebug = _arg4; if (!_arg6){ this.debug = new DebugConfiguration(); }; if (!_arg5){ this.config = new Configuration(_arg6); }; if (autobuild){ _factory(); }; } public function link(_arg1:String, _arg2:Boolean=false):void{ _tracker.link(_arg1, _arg2); } public function addOrganic(_arg1:String, _arg2:String):void{ _tracker.addOrganic(_arg1, _arg2); } public function setAllowLinker(_arg1:Boolean):void{ _tracker.setAllowLinker(_arg1); } public function trackEvent(_arg1:String, _arg2:String, _arg3:String=null, _arg4:Number=NaN):Boolean{ return (_tracker.trackEvent(_arg1, _arg2, _arg3, _arg4)); } public function setCookieTimeout(_arg1:int):void{ _tracker.setCookieTimeout(_arg1); } public function trackTrans():void{ _tracker.trackTrans(); } public function getClientInfo():Boolean{ return (_tracker.getClientInfo()); } public function trackPageview(_arg1:String=""):void{ _tracker.trackPageview(_arg1); } public function setClientInfo(_arg1:Boolean):void{ _tracker.setClientInfo(_arg1); } public function get account():String{ return (_account); } public function linkByPost(_arg1:Object, _arg2:Boolean=false):void{ _tracker.linkByPost(_arg1, _arg2); } public function getDetectTitle():Boolean{ return (_tracker.getDetectTitle()); } public function dispatchEvent(_arg1:Event):Boolean{ return (_eventDispatcher.dispatchEvent(_arg1)); } public function get config():Configuration{ return (_config); } public function set mode(_arg1:String):void{ _mode = _arg1; } public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{ _eventDispatcher.removeEventListener(_arg1, _arg2, _arg3); } public function setDetectFlash(_arg1:Boolean):void{ _tracker.setDetectFlash(_arg1); } public function resetSession():void{ _tracker.resetSession(); } public function setCampNameKey(_arg1:String):void{ _tracker.setCampNameKey(_arg1); } public function get debug():DebugConfiguration{ return (_debug); } public function addItem(_arg1:String, _arg2:String, _arg3:String, _arg4:String, _arg5:Number, _arg6:int):void{ _tracker.addItem(_arg1, _arg2, _arg3, _arg4, _arg5, _arg6); } private function _bridgeFactory():GoogleAnalyticsAPI{ debug.info(((("GATracker (Bridge) v" + version) + "\naccount: ") + account)); return (new Bridge(account, _debug, _jsproxy)); } public function clearIgnoredOrganic():void{ _tracker.clearIgnoredOrganic(); } public function set account(_arg1:String):void{ _account = _arg1; } public function setVar(_arg1:String):void{ _tracker.setVar(_arg1); } public function build():void{ if (!isReady()){ _factory(); }; } public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{ _eventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5); } public function setDomainName(_arg1:String):void{ _tracker.setDomainName(_arg1); } public function createEventTracker(_arg1:String):EventTracker{ return (_tracker.createEventTracker(_arg1)); } public function setCampSourceKey(_arg1:String):void{ _tracker.setCampSourceKey(_arg1); } public function set config(_arg1:Configuration):void{ _config = _arg1; } public function addTrans(_arg1:String, _arg2:String, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:String, _arg7:String, _arg8:String):Object{ return (_tracker.addTrans(_arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7, _arg8)); } public function setCampContentKey(_arg1:String):void{ _tracker.setCampContentKey(_arg1); } public function willTrigger(_arg1:String):Boolean{ return (_eventDispatcher.willTrigger(_arg1)); } public function setLocalServerMode():void{ _tracker.setLocalServerMode(); } public function getLocalGifPath():String{ return (_tracker.getLocalGifPath()); } public function setAllowAnchor(_arg1:Boolean):void{ _tracker.setAllowAnchor(_arg1); } public function clearIgnoredRef():void{ _tracker.clearIgnoredRef(); } public function isReady():Boolean{ return (_ready); } public function get mode():String{ return (_mode); } public function set debug(_arg1:DebugConfiguration):void{ _debug = _arg1; } public function setLocalGifPath(_arg1:String):void{ _tracker.setLocalGifPath(_arg1); } public function getVersion():String{ return (_tracker.getVersion()); } public function setSampleRate(_arg1:Number):void{ _tracker.setSampleRate(_arg1); } public function setCookiePath(_arg1:String):void{ _tracker.setCookiePath(_arg1); } public function setAllowHash(_arg1:Boolean):void{ _tracker.setAllowHash(_arg1); } public function addIgnoredOrganic(_arg1:String):void{ _tracker.addIgnoredOrganic(_arg1); } public function setLocalRemoteServerMode():void{ _tracker.setLocalRemoteServerMode(); } public function cookiePathCopy(_arg1:String):void{ _tracker.cookiePathCopy(_arg1); } private function _factory():void{ var _local1:GoogleAnalyticsAPI; _jsproxy = new JavascriptProxy(debug); if (visualDebug){ debug.layout = new Layout(debug, _display); debug.active = visualDebug; }; var _local2:TrackerCache = (_tracker as TrackerCache); switch (mode){ case TrackerMode.BRIDGE: _local1 = _bridgeFactory(); break; case TrackerMode.AS3: default: _local1 = _trackerFactory(); }; if (!_local2.isEmpty()){ _local2.tracker = _local1; _local2.flush(); }; _tracker = _local1; _ready = true; dispatchEvent(new AnalyticsEvent(AnalyticsEvent.READY, this)); } public function setCampTermKey(_arg1:String):void{ _tracker.setCampTermKey(_arg1); } private function _trackerFactory():GoogleAnalyticsAPI{ debug.info(((("GATracker (AS3) v" + version) + "\naccount: ") + account)); _adSense = new AdSenseGlobals(debug); _dom = new HTMLDOM(debug); _dom.cacheProperties(); _env = new Environment("", "", "", debug, _dom); _buffer = new Buffer(config, debug, false); _gifRequest = new GIFRequest(config, debug, _buffer, _env); _idleTimer = new IdleTimer(config, debug, _display, _buffer); _env.url = _display.stage.loaderInfo.url; return (new Tracker(account, config, debug, _env, _buffer, _gifRequest, _adSense)); } public function setCampNOKey(_arg1:String):void{ _tracker.setCampNOKey(_arg1); } public function setDetectTitle(_arg1:Boolean):void{ _tracker.setDetectTitle(_arg1); } public function getServiceMode():ServerOperationMode{ return (_tracker.getServiceMode()); } public function clearOrganic():void{ _tracker.clearOrganic(); } public function setCampaignTrack(_arg1:Boolean):void{ _tracker.setCampaignTrack(_arg1); } public function addIgnoredRef(_arg1:String):void{ _tracker.addIgnoredRef(_arg1); } public function set visualDebug(_arg1:Boolean):void{ _visualDebug = _arg1; } public function setCampMediumKey(_arg1:String):void{ _tracker.setCampMediumKey(_arg1); } public function getDetectFlash():Boolean{ return (_tracker.getDetectFlash()); } public function get visualDebug():Boolean{ return (_visualDebug); } public function hasEventListener(_arg1:String):Boolean{ return (_eventDispatcher.hasEventListener(_arg1)); } public function getAccount():String{ return (_tracker.getAccount()); } public function setSessionTimeout(_arg1:int):void{ _tracker.setSessionTimeout(_arg1); } public function setRemoteServerMode():void{ _tracker.setRemoteServerMode(); } } var _local1:* = ServerOperationMode; return (_local1); }//package com.google.analytics
Section 96
//ColorMatrix (com.gskinner.geom.ColorMatrix) package com.gskinner.geom { public dynamic class ColorMatrix extends Array { private static const IDENTITY_MATRIX:Array = [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1]; private static const LENGTH:Number = IDENTITY_MATRIX.length; private static const DELTA_INDEX: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 ColorMatrix(_arg1:Array=null){ _arg1 = fixMatrix(_arg1); copyMatrix(((_arg1.length)==LENGTH) ? _arg1 : IDENTITY_MATRIX); } public function adjustBrightness(_arg1:Number):void{ _arg1 = cleanValue(_arg1, 100); if ((((_arg1 == 0)) || (isNaN(_arg1)))){ return; }; multiplyMatrix([1, 0, 0, 0, _arg1, 0, 1, 0, 0, _arg1, 0, 0, 1, 0, _arg1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1]); } public function adjustSaturation(_arg1:Number):void{ _arg1 = cleanValue(_arg1, 100); if ((((_arg1 == 0)) || (isNaN(_arg1)))){ return; }; var _local2:Number = (1 + ((_arg1)>0) ? ((3 * _arg1) / 100) : (_arg1 / 100)); var _local3:Number = 0.3086; var _local4:Number = 0.6094; var _local5:Number = 0.082; multiplyMatrix([((_local3 * (1 - _local2)) + _local2), (_local4 * (1 - _local2)), (_local5 * (1 - _local2)), 0, 0, (_local3 * (1 - _local2)), ((_local4 * (1 - _local2)) + _local2), (_local5 * (1 - _local2)), 0, 0, (_local3 * (1 - _local2)), (_local4 * (1 - _local2)), ((_local5 * (1 - _local2)) + _local2), 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1]); } protected function multiplyMatrix(_arg1:Array):void{ var _local4:uint; var _local5:Number; var _local6:Number; var _local2:Array = []; var _local3:uint; while (_local3 < 5) { _local4 = 0; while (_local4 < 5) { _local2[_local4] = this[(_local4 + (_local3 * 5))]; _local4++; }; _local4 = 0; while (_local4 < 5) { _local5 = 0; _local6 = 0; while (_local6 < 5) { _local5 = (_local5 + (_arg1[(_local4 + (_local6 * 5))] * _local2[_local6])); _local6++; }; this[(_local4 + (_local3 * 5))] = _local5; _local4++; }; _local3++; }; } protected function cleanValue(_arg1:Number, _arg2:Number):Number{ return (Math.min(_arg2, Math.max(-(_arg2), _arg1))); } public function adjustHue(_arg1:Number):void{ _arg1 = ((cleanValue(_arg1, 180) / 180) * Math.PI); if ((((_arg1 == 0)) || (isNaN(_arg1)))){ return; }; var _local2:Number = Math.cos(_arg1); var _local3:Number = Math.sin(_arg1); var _local4:Number = 0.213; var _local5:Number = 0.715; var _local6:Number = 0.072; multiplyMatrix([((_local4 + (_local2 * (1 - _local4))) + (_local3 * -(_local4))), ((_local5 + (_local2 * -(_local5))) + (_local3 * -(_local5))), ((_local6 + (_local2 * -(_local6))) + (_local3 * (1 - _local6))), 0, 0, ((_local4 + (_local2 * -(_local4))) + (_local3 * 0.143)), ((_local5 + (_local2 * (1 - _local5))) + (_local3 * 0.14)), ((_local6 + (_local2 * -(_local6))) + (_local3 * -0.283)), 0, 0, ((_local4 + (_local2 * -(_local4))) + (_local3 * -((1 - _local4)))), ((_local5 + (_local2 * -(_local5))) + (_local3 * _local5)), ((_local6 + (_local2 * (1 - _local6))) + (_local3 * _local6)), 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1]); } public function toString():String{ return ((("ColorMatrix [ " + this.join(" , ")) + " ]")); } protected function fixMatrix(_arg1:Array=null):Array{ if (_arg1 == null){ return (IDENTITY_MATRIX); }; if ((_arg1 is _slot1)){ _arg1 = _arg1.slice(0); }; if (_arg1.length < LENGTH){ _arg1 = _arg1.slice(0, _arg1.length).concat(IDENTITY_MATRIX.slice(_arg1.length, LENGTH)); } else { if (_arg1.length > LENGTH){ _arg1 = _arg1.slice(0, LENGTH); }; }; return (_arg1); } public function reset():void{ var _local1:uint; while (_local1 < LENGTH) { this[_local1] = IDENTITY_MATRIX[_local1]; _local1++; }; } public function adjustContrast(_arg1:Number):void{ var _local2:Number; _arg1 = cleanValue(_arg1, 100); if ((((_arg1 == 0)) || (isNaN(_arg1)))){ return; }; if (_arg1 < 0){ _local2 = (127 + ((_arg1 / 100) * 127)); } else { _local2 = (_arg1 % 1); if (_local2 == 0){ _local2 = DELTA_INDEX[_arg1]; } else { _local2 = ((DELTA_INDEX[(_arg1 << 0)] * (1 - _local2)) + (DELTA_INDEX[((_arg1 << 0) + 1)] * _local2)); }; _local2 = ((_local2 * 127) + 127); }; multiplyMatrix([(_local2 / 127), 0, 0, 0, (0.5 * (127 - _local2)), 0, (_local2 / 127), 0, 0, (0.5 * (127 - _local2)), 0, 0, (_local2 / 127), 0, (0.5 * (127 - _local2)), 0, 0, 0, 1, 0, 0, 0, 0, 0, 1]); } public function adjustColor(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):void{ adjustHue(_arg4); adjustContrast(_arg2); adjustBrightness(_arg1); adjustSaturation(_arg3); } protected function copyMatrix(_arg1:Array):void{ var _local2:Number = LENGTH; var _local3:uint; while (_local3 < _local2) { this[_local3] = _arg1[_local3]; _local3++; }; } public function concat(_arg1:Array):void{ _arg1 = fixMatrix(_arg1); if (_arg1.length != LENGTH){ return; }; multiplyMatrix(_arg1); } public function clone():ColorMatrix{ return (new ColorMatrix(this)); } public function toArray():Array{ return (slice(0, 20)); } } }//package com.gskinner.geom
Section 97
//GoogleTracker (com.tracker.GoogleTracker) package com.tracker { import flash.display.*; import com.google.analytics.*; import flash.utils.*; public class GoogleTracker { private const UA:String = "UA-8409891-4"; private const DEBUG:Boolean = false; private var _parent:Sprite; private var _tracker:AnalyticsTracker; private static var _instance:GoogleTracker = null; public function get tracker():AnalyticsTracker{ return (_tracker); } public function trackClass(_arg1:Object):void{ var _local2:String = getQualifiedClassName(_arg1); _tracker.trackPageview(("/" + _local2)); } public function init(_arg1:Sprite):void{ _parent = _arg1; _tracker = new GATracker(_parent, UA, "AS3", DEBUG); } public function trackPageview(_arg1:String):void{ _tracker.trackPageview(_arg1); } public static function getSingleton():GoogleTracker{ if (!_instance){ _instance = new (GoogleTracker); }; return (_instance); } } }//package com.tracker
Section 98
//Array2 (de.polygonal.ds.Array2) package de.polygonal.ds { public class Array2 implements Collection { private var _a:Array; private var _h:int; private var _w:int; public function Array2(_arg1:int, _arg2:int){ if ((((_arg1 < 1)) || ((_arg2 < 1)))){ throw (new Error("illegal size")); }; _a = new Array((_w = _arg1), (_h = _arg2)); fill(null); } public function get size():int{ return ((_w * _h)); } public function fill(_arg1):void{ var _local3:int; var _local4:Class; var _local2:int = (_w * _h); if ((_arg1 is Class)){ _local4 = (_arg1 as Class); _local3 = 0; while (_local3 < _local2) { _a[_local3] = new (_local4); _local3++; }; } else { _local3 = 0; while (_local3 < _local2) { _a[_local3] = _arg1; _local3++; }; }; } public function get width():int{ return (_w); } public function getCol(_arg1:int):Array{ var _local2:Array = []; var _local3:int; while (_local3 < _h) { _local2[_local3] = _a[int(((_local3 * _w) + _arg1))]; _local3++; }; return (_local2); } public function shiftDown():void{ if (_h == 1){ return; }; var _local1:int = ((_h - 1) * _w); _a = _a.slice(_local1, (_local1 + _w)).concat(_a); _a.splice((_h * _w), _w); } public function set width(_arg1:int):void{ resize(_arg1, _h); } public function appendCol(_arg1:Array):void{ _arg1.length = _h; var _local2:int; while (_local2 < _h) { _a.splice((((_local2 * _w) + _w) + _local2), 0, _arg1[_local2]); _local2++; }; _w++; } public function set height(_arg1:int):void{ resize(_w, _arg1); } public function clear():void{ _a = new Array(size); } public function get(_arg1:int, _arg2:int){ return (_a[int(((_arg2 * _w) + _arg1))]); } public function setRow(_arg1:uint, _arg2:Array):void{ if ((((_arg1 < 0)) || ((_arg1 > _h)))){ throw (new Error("row index out of bounds")); }; var _local3:int = (_arg1 * _w); var _local4:int; while (_local4 < _w) { _a[int((_local3 + _local4))] = _arg2[_local4]; _local4++; }; } public function prependCol(_arg1:Array):void{ _arg1.length = _h; var _local2:int; while (_local2 < _h) { _a.splice(((_local2 * _w) + _local2), 0, _arg1[_local2]); _local2++; }; _w++; } public function isEmpty():Boolean{ return (false); } public function toArray():Array{ var _local1:Array = _a.concat(); var _local2:int = size; if (_local1.length > _local2){ _local1.length = _local2; }; return (_local1); } public function contains(_arg1):Boolean{ var _local2:int = size; var _local3:int; while (_local3 < _local2) { if (_a[_local3] === _arg1){ return (true); }; _local3++; }; return (false); } public function appendRow(_arg1:Array):void{ _arg1.length = _w; _a = _a.concat(_arg1); _h++; } public function dump():String{ var _local2:int; var _local3:*; var _local5:int; var _local1 = "Array2\n{"; var _local4:int; while (_local4 < _h) { _local1 = (_local1 + ("\n" + "\t")); _local2 = (_local4 * _w); _local5 = 0; while (_local5 < _w) { _local3 = _a[int((_local2 + _local5))]; _local1 = (_local1 + (("[" + ((_local3)!=undefined) ? _local3 : "?") + "]")); _local5++; }; _local4++; }; _local1 = (_local1 + "\n}"); return (_local1); } public function getArray():Array{ return (_a); } public function getRow(_arg1:int):Array{ var _local2:int = (_arg1 * _w); return (_a.slice(_local2, (_local2 + _w))); } public function get height():int{ return (_h); } public function shiftLeft():void{ var _local2:int; if (_w == 1){ return; }; var _local1:int = (_w - 1); var _local3:int; while (_local3 < _h) { _local2 = ((_local3 * _w) + _local1); _a.splice(_local2, 0, _a.splice((_local2 - _local1), 1)); _local3++; }; } public function getIterator():Iterator{ return (new Array2Iterator(this)); } public function prependRow(_arg1:Array):void{ _arg1.length = _w; _a = _arg1.concat(_a); _h++; } public function set(_arg1:int, _arg2:int, _arg3):void{ _a[int(((_arg2 * _w) + _arg1))] = _arg3; } public function resize(_arg1:int, _arg2:int):void{ var _local6:int; var _local7:int; var _local8:int; var _local9:int; if ((((_arg1 < 1)) || ((_arg2 < 1)))){ throw (new Error("illegal size")); }; var _local3:Array = _a.concat(); _a.length = 0; _a.length = (_arg1 * _arg2); var _local4:int = ((_arg1 < _w)) ? _arg1 : _w; var _local5:int = ((_arg2 < _h)) ? _arg2 : _h; _local7 = 0; while (_local7 < _local5) { _local8 = (_local7 * _arg1); _local9 = (_local7 * _w); _local6 = 0; while (_local6 < _local4) { _a[int((_local8 + _local6))] = _local3[int((_local9 + _local6))]; _local6++; }; _local7++; }; _w = _arg1; _h = _arg2; } public function transpose():void{ var _local3:int; var _local1:Array = _a.concat(); var _local2:int; while (_local2 < _h) { _local3 = 0; while (_local3 < _w) { _a[int(((_local3 * _w) + _local2))] = _local1[int(((_local2 * _w) + _local3))]; _local3++; }; _local2++; }; } public function shiftRight():void{ var _local2:int; if (_w == 1){ return; }; var _local1:int = (_w - 1); var _local3:int; while (_local3 < _h) { _local2 = ((_local3 * _w) + _local1); _a.splice((_local2 - _local1), 0, _a.splice(_local2, 1)); _local3++; }; } public function toString():String{ return ((((("[Array2, width=" + width) + ", height=") + height) + "]")); } public function shiftUp():void{ if (_h == 1){ return; }; _a = _a.concat(_a.slice(0, _w)); _a.splice(0, _w); } public function setCol(_arg1:int, _arg2:Array):void{ if ((((_arg1 < 0)) || ((_arg1 > _w)))){ throw (new Error("column index out of bounds")); }; var _local3:int; while (_local3 < _h) { _a[int(((_local3 * _w) + _arg1))] = _arg2[_local3]; _local3++; }; } } }//package de.polygonal.ds class Array2Iterator implements Iterator { private var _xCursor:int; private var _a2:Array2; private var _yCursor:int; private function Array2Iterator(_arg1:Array2){ _a2 = _arg1; _xCursor = (_yCursor = 0); } public function start():void{ _xCursor = (_yCursor = 0); } public function hasNext():Boolean{ return ((((_yCursor * _a2.width) + _xCursor) < _a2.size)); } public function get data(){ return (_a2.get(_xCursor, _yCursor)); } public function set data(_arg1):void{ _a2.set(_xCursor, _yCursor, _arg1); } public function next(){ var _local1:* = data; if (++_xCursor == _a2.width){ _yCursor++; _xCursor = 0; }; return (_local1); } }
Section 99
//ArrayedQueue (de.polygonal.ds.ArrayedQueue) package de.polygonal.ds { public class ArrayedQueue implements Collection { private var _que:Array; private var _count:int; private var _size:int; private var _front:int; private var _divisor:int; public function ArrayedQueue(_arg1:int){ init(_arg1); } public function get size():int{ return (_count); } public function isEmpty():Boolean{ return ((_count == 0)); } public function get maxSize():int{ return (_size); } public function enqueue(_arg1):Boolean{ if (_size != _count){ _que[int(((_count++ + _front) & _divisor))] = _arg1; return (true); }; return (false); } public function clear():void{ _que = new Array(_size); _front = (_count = 0); var _local1:int; while (_local1 < _size) { _que[_local1] = null; _local1++; }; } private function init(_arg1:int):void{ if (!(((_arg1 > 0)) && (((_arg1 & (_arg1 - 1)) == 0)))){ _arg1 = (_arg1 | (_arg1 >> 1)); _arg1 = (_arg1 | (_arg1 >> 2)); _arg1 = (_arg1 | (_arg1 >> 4)); _arg1 = (_arg1 | (_arg1 >> 8)); _arg1 = (_arg1 | (_arg1 >> 16)); _arg1++; }; _size = _arg1; _divisor = (_arg1 - 1); clear(); } public function peek(){ return (_que[_front]); } public function toArray():Array{ var _local1:Array = new Array(_count); var _local2:int; while (_local2 < _count) { _local1[_local2] = _que[int(((_local2 + _front) & _divisor))]; _local2++; }; return (_local1); } public function contains(_arg1):Boolean{ var _local2:int; while (_local2 < _count) { if (_que[int(((_local2 + _front) & _divisor))] === _arg1){ return (true); }; _local2++; }; return (false); } public function getIterator():Iterator{ return (new ArrayedQueueIterator(this)); } public function dispose():void{ if (!_front){ _que[int((_size - 1))] = null; } else { _que[int((_front - 1))] = null; }; } public function back(){ return (_que[int((((_count - 1) + _front) & _divisor))]); } public function getAt(_arg1:int){ if (_arg1 >= _count){ return (null); }; return (_que[int(((_arg1 + _front) & _divisor))]); } public function toString():String{ return ((("[ArrayedQueue, size=" + size) + "]")); } public function dequeue(){ var _local1:*; if (_count > 0){ _local1 = _que[int(_front++)]; if (_front == _size){ _front = 0; }; _count--; return (_local1); }; return (null); } public function dump():String{ var _local2:int; var _local1 = "[ArrayedQueue]\n"; _local1 = (_local1 + (("\t" + getAt(_local2)) + " -> front\n")); _local2 = 1; while (_local2 < _count) { _local1 = (_local1 + (("\t" + getAt(_local2)) + "\n")); _local2++; }; return (_local1); } public function setAt(_arg1:int, _arg2):void{ if (_arg1 >= _count){ return; }; _que[int(((_arg1 + _front) & _divisor))] = _arg2; } } }//package de.polygonal.ds class ArrayedQueueIterator implements Iterator { private var _que:ArrayedQueue; private var _cursor:int; private function ArrayedQueueIterator(_arg1:ArrayedQueue){ _que = _arg1; _cursor = 0; } public function get data(){ return (_que.getAt(_cursor)); } public function next(){ if (_cursor < _que.size){ return (_que.getAt(_cursor++)); }; return (null); } public function hasNext():Boolean{ return ((_cursor < _que.size)); } public function set data(_arg1):void{ _que.setAt(_cursor, _arg1); } public function start():void{ _cursor = 0; } }
Section 100
//Collection (de.polygonal.ds.Collection) package de.polygonal.ds { public interface Collection { function get size():int; function isEmpty():Boolean; function getIterator():Iterator; function clear():void; function toArray():Array; function contains(_arg1):Boolean; } }//package de.polygonal.ds
Section 101
//Iterator (de.polygonal.ds.Iterator) package de.polygonal.ds { public interface Iterator { function start():void; function set data(_arg1):void; function get data(); function next(); function hasNext():Boolean; } }//package de.polygonal.ds
Section 102
//CircularFilledClock (GenericUILib.CircularFilledClock) package GenericUILib { import flash.utils.*; public class CircularFilledClock extends SemiCircle { protected var _paused:Boolean;// = false protected var _forceEnd:Boolean;// = false protected var _maxTime:Number; protected var _backgroundColor:Number; protected var _borderColor:Number; protected var _initTime:Number; protected var _currentTime:Number; protected var _pauseTime:Number; protected var _borderWidth:Number; public function CircularFilledClock(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number){ _maxTime = _arg2; _currentTime = _arg1; _initTime = (getTimer() / 1000); _borderColor = _arg4; _borderWidth = _arg5; _backgroundColor = _arg6; draw(_arg3, getRadians(_currentTime), getRadians(_maxTime), _arg4, _arg5, _arg6); } public function update():void{ if (_paused){ return; }; var _local1:Number = getTimer(); _currentTime = ((_local1 / 1000) - _initTime); } public function paint():void{ draw(_radius, getRadians(_currentTime), getRadians(_maxTime), _borderColor, _borderWidth, _backgroundColor); } public function start():void{ _initTime = (getTimer() / 1000); } public function resume():void{ var _local1:Number = ((getTimer() / 1000) - _pauseTime); _initTime = (_initTime + _local1); _currentTime = (_currentTime + _local1); _paused = false; } public function finished():Boolean{ if (_forceEnd){ _forceEnd = false; return (true); }; return ((_currentTime >= _maxTime)); } public function forceEnd():void{ _forceEnd = true; } protected function getRadians(_arg1:Number):Number{ return ((((_arg1 / _maxTime) * Math.PI) * 2)); } public function pause():void{ _pauseTime = (getTimer() / 1000); _paused = true; } public function isPaused():Boolean{ return (_paused); } } }//package GenericUILib
Section 103
//GenericButton (GenericUILib.GenericButton) package GenericUILib { import flash.events.*; import flash.display.*; import flash.geom.*; import caurina.transitions.*; import flash.filters.*; public class GenericButton extends Sprite { private var _bmpUp:BitmapData; private var _bmpDown:BitmapData; private var _mixColorR:Number;// = -1 private var _state:Number;// = 1 private var _centered:Boolean;// = false private var _mixColorG:Number;// = -1 private var _glowing:Boolean;// = false private var _mixColorB:Number;// = -1 private var _isOver:Boolean;// = false public static const BUTTON_UP:Number = 1; public static const BUTTON_CLICKED:Number = 2; public static const BUTTON_DOWN:Number = 0; public function GenericButton(_arg1:BitmapData, _arg2:BitmapData, _arg3:Boolean=false){ addEventListener(MouseEvent.MOUSE_DOWN, mouseDown, false, 0, true); addEventListener(MouseEvent.MOUSE_UP, mouseUp, false, 0, true); addEventListener(MouseEvent.CLICK, mouseClick, false, 0, true); addEventListener(MouseEvent.MOUSE_OVER, mouseOver, false, 0, true); addEventListener(MouseEvent.MOUSE_OUT, mouseOut, false, 0, true); _bmpDown = _arg1; _bmpUp = _arg2; _centered = _arg3; buttonMode = true; paint(); } public function startGlowing():void{ if (_glowing){ return; }; _glowing = true; var glowIn:GlowFilter = new GlowFilter(16724787, 0.8, 10, 10, 7, 2); var glowOut:GlowFilter = new GlowFilter(16724787, 0, 10, 10, 7, 2); Tweener.addTween(this, {_filter:glowIn, time:1}); Tweener.addTween(this, {_filter:glowOut, delay:1, time:0.5, onComplete:function ():void{ _glowing = false; }}); } public function get isPressed():Boolean{ if (_state == BUTTON_CLICKED){ _state = BUTTON_UP; paint(); return (true); }; return (false); } public function mouseOver(_arg1:MouseEvent):void{ if (_isOver){ return; }; _isOver = true; MediaPlayer.getSingleton().play(MediaPlayer.SND_MENU_OVER_OPTION); var _local2:GlowFilter = new GlowFilter(0xCCCCCC); _arg1.target.filters = [_local2]; } public function paint():void{ var _local1:BitmapData; var _local3:BitmapData; var _local4:ColorTransform; var _local5:Rectangle; graphics.clear(); switch (_state){ case BUTTON_CLICKED: case BUTTON_UP: _local1 = _bmpUp; break; case BUTTON_DOWN: _local1 = _bmpDown; break; }; if (_mixColorR != -1){ _local3 = _local1.clone(); _local4 = new ColorTransform(1, 1, 1, 1, _mixColorR, _mixColorG, _mixColorB, 0); _local5 = new Rectangle(0, 0, _local1.width, _local1.height); _local3.colorTransform(_local5, _local4); _local1 = _local3; }; var _local2:Matrix = new Matrix(); if (_centered){ _local2.translate((-(_local1.width) / 2), (-(_local1.height) / 2)); graphics.beginBitmapFill(_local1, _local2); graphics.drawRect((-(_local1.width) / 2), (-(_local1.height) / 2), _local1.width, _local1.height); graphics.endFill(); } else { graphics.beginBitmapFill(_local1, _local2); graphics.drawRect(0, 0, _local1.width, _local1.height); graphics.endFill(); }; } public function mouseUp(_arg1:MouseEvent):void{ if (_state == BUTTON_DOWN){ _state = BUTTON_CLICKED; }; paint(); } public function mouseClick(_arg1:MouseEvent):void{ MediaPlayer.getSingleton().play(MediaPlayer.SND_MENU_SELECT); _state = BUTTON_CLICKED; paint(); } public function mouseDown(_arg1:MouseEvent):void{ _state = BUTTON_DOWN; paint(); } public function mouseOut(_arg1:MouseEvent):void{ _isOver = false; _arg1.target.filters = []; } public function mixColor(_arg1:Number, _arg2:Number, _arg3:Number):void{ if ((((((_mixColorR == _arg1)) && ((_mixColorG == _arg2)))) && ((_mixColorB == _arg3)))){ return; }; _mixColorR = _arg1; _mixColorG = _arg2; _mixColorB = _arg3; paint(); } } }//package GenericUILib
Section 104
//GenericMenu (GenericUILib.GenericMenu) package GenericUILib { import flash.events.*; import flash.display.*; import flash.geom.*; import flash.text.*; import caurina.transitions.*; import flash.filters.*; public class GenericMenu extends Sprite { private var _items:Array; private var _imageButtons:Boolean;// = false private var _buttons:Array; private var _alreadyTouched:Boolean;// = false private var _disabled:Boolean;// = false private var returnValue:Number;// = -1 private var _hint:String;// = "" public var text:TextField; public static const MENUOPTION_EXIT:Number = 12; public static const MENUOPTION_ABOUT:Number = 4; public static const MENUOPTION_NONE:Number = -1; public static const MENUOPTION_QUICK_MATCH:Number = 14; public static const MENUOPTION_HELP:Number = 5; public static const MENUOPTION_NORMAL_MODE:Number = 0; public static const MENUOPTION_OPTIONS:Number = 3; public static const MENUOPTION_SUBMIT_SCORE:Number = 7; public static const MENUOPTION_SHOW_HIGHSCORES:Number = 9; public static const MENUOPTION_CLASSIC_MODE:Number = 1; public static const MENUOPTION_TUTORIAL:Number = 10; public static const MENUOPTION_ACHIEVEMENTS:Number = 13; public static const MENUOPTION_TRY_AGAIN:Number = 6; public static const MENUOPTION_PLAY_MORE_GAMES:Number = 2; public static const MENUOPTION_RESUME:Number = 11; public static const MENUOPTION_MAIN_MENU:Number = 8; public function GenericMenu(_arg1:Array, _arg2:Bitmap=null, _arg3:Bitmap=null){ var _local5:Sprite; var _local6:BitmapData; var _local7:Matrix; var _local8:TextField; var _local9:TextFormat; var _local10:Sprite; super(); if (_arg3 != null){ graphics.beginBitmapFill(_arg3.bitmapData); graphics.drawRect(0, 0, _arg3.width, _arg3.height); graphics.endFill(); }; if (_arg2 != null){ graphics.beginBitmapFill(_arg2.bitmapData); graphics.drawRect(0, 0, _arg2.width, _arg2.height); graphics.endFill(); }; _items = _arg1; _buttons = new Array(); var _local4:Number = 0; while (_local4 < _arg1.length) { _local5 = new Sprite(); _local5.buttonMode = true; _local5.name = _items[_local4].returnValue; if (_items[_local4].image){ _local6 = IMG.getSingleton().getBitmapData(_items[_local4].image); _local5.graphics.beginBitmapFill(_local6); _local5.graphics.drawRect(0, 0, _local6.width, _local6.height); _local5.graphics.endFill(); _local5.addEventListener(MouseEvent.CLICK, buttonClicked, false, 0, true); _local5.addEventListener(MouseEvent.MOUSE_OVER, buttonOver, false, 0, true); _local5.addEventListener(MouseEvent.MOUSE_OUT, buttonOut, false, 0, true); _local5.x = (_items[_local4].x - (_local6.width / 2)); _local5.y = (_items[_local4].y - (_local6.height / 2)); _imageButtons = true; } else { _local5.graphics.lineStyle(2, 0x444400); _local5.graphics.drawRoundRect(0, 0, DEF.MENU_BUTTON_WIDTH, DEF.MENU_BUTTON_HEIGHT, 10, 10); _local5.graphics.lineStyle(); _local7 = new Matrix(); _local7.createGradientBox((DEF.MENU_BUTTON_WIDTH - (5 * 2)), (DEF.MENU_BUTTON_HEIGHT - (5 * 2)), (Math.PI / 2), 0, 0); _local5.graphics.beginGradientFill("linear", [DEF.MENU_BUTTON_COLOR, 14936256, DEF.MENU_BUTTON_COLOR], [DEF.MENU_BUTTON_ALPHA, DEF.MENU_BUTTON_ALPHA, DEF.MENU_BUTTON_ALPHA], [0, 127, 0xFF], _local7, "pad", "linearRGB"); _local5.graphics.drawRoundRect(5, 5, (DEF.MENU_BUTTON_WIDTH - (5 * 2)), (DEF.MENU_BUTTON_HEIGHT - (5 * 2)), 10, 10); _local5.graphics.endFill(); _local8 = new TextField(); _local9 = new TextFormat("casper", DEF.MENU_BUTTON_TEXT_SIZE); _local8.y = (((DEF.MENU_BUTTON_HEIGHT / 2) - (DEF.MENU_BUTTON_TEXT_SIZE / 2)) - 3); _local8.width = DEF.MENU_BUTTON_WIDTH; _local8.autoSize = "center"; _local9.color = DEF.MENU_BUTTON_TEXT_COLOR; _local9.align = "center"; _local8.embedFonts = true; _local8.defaultTextFormat = _local9; _local8.text = _items[_local4].string; _local8.selectable = false; _local8.name = _local5.name; _local5.addChild(_local8); _local10 = new Sprite(); _local10.graphics.lineStyle(3, 0); _local10.graphics.beginFill(0x444444); _local10.alpha = 0.01; _local10.graphics.drawRoundRect(0, 0, DEF.MENU_BUTTON_WIDTH, DEF.MENU_BUTTON_HEIGHT, 10, 10); _local10.graphics.endFill(); _local10.buttonMode = true; _local10.name = _items[_local4].returnValue; _local5.addChild(_local10); _local10.addEventListener(MouseEvent.CLICK, buttonClicked, false, 0, true); _local10.addEventListener(MouseEvent.MOUSE_OVER, buttonOver, false, 0, true); _local10.addEventListener(MouseEvent.MOUSE_OUT, buttonOut, false, 0, true); }; this.addChild(_local5); _buttons.push(_local5); _local4++; }; hide(); } public function enable():void{ _disabled = false; } public function get hint():String{ if (_hint != null){ return (_hint); }; return (""); } public function hideItem(_arg1:Number):void{ _buttons[_arg1].visible = false; } public function update():Number{ var _local1:Number = returnValue; returnValue = MENUOPTION_NONE; return (_local1); } public function buttonClicked(_arg1:MouseEvent):void{ if (_disabled){ return; }; MediaPlayer.getSingleton().play(MediaPlayer.SND_MENU_SELECT); var _local2:DisplayObject = (_arg1.target as DisplayObject); returnValue = Number(_local2.name); } public function hide():void{ this.visible = false; returnValue = MENUOPTION_NONE; } public function disable():void{ _disabled = true; } public function showItem(_arg1:Number):void{ _buttons[_arg1].visible = true; } public function buttonOver(_arg1:MouseEvent):void{ var _local4:DisplayObject; var _local6:Object; if (_disabled){ return; }; if (!_alreadyTouched){ MediaPlayer.getSingleton().play(MediaPlayer.SND_MENU_OVER_OPTION); _alreadyTouched = true; }; var _local2:BitmapFilter = new GlowFilter(DEF.MENU_BUTTON_GLOW_COLOR, 0.5, 1, 1, 10000); var _local3:Array = new Array(); _local3.push(_local2); if (_imageButtons){ _local4 = (_arg1.target as DisplayObject); } else { _local4 = (_arg1.target.parent as DisplayObject); }; _local4.filters = _local3; var _local5:Number = Number(_local4.name); for each (_local6 in _items) { if (_local6.returnValue == _local5){ _hint = _local6.hint; break; }; }; } public function buttonOut(_arg1:MouseEvent):void{ var _local2:DisplayObject; if (_imageButtons){ _local2 = (_arg1.target as DisplayObject); } else { _local2 = (_arg1.target.parent as DisplayObject); }; _local2.filters = null; _hint = ""; _alreadyTouched = false; } public function show():void{ var _local1:Number; if (!_imageButtons){ _local1 = 0; while (_local1 < _items.length) { _buttons[_local1].x = DEF.SCREEN_WIDTH; _buttons[_local1].y = (DEF.MENU_BUTTON_INITIAL_Y + (_local1 * DEF.MENU_BUTTON_SPACING)); Tweener.addTween(_buttons[_local1], {time:1, delay:(0.2 * _local1), x:DEF.MENU_BUTTON_X}); _local1++; }; }; this.visible = true; returnValue = MENUOPTION_NONE; } } }//package GenericUILib
Section 105
//SemiCircle (GenericUILib.SemiCircle) package GenericUILib { import flash.display.*; public class SemiCircle extends Sprite { protected var _radius:Number; protected var _firstAngle:Number; protected var _lastAngle:Number; public function draw(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number):void{ _firstAngle = _arg2; _lastAngle = _arg3; _radius = _arg1; var _local7:Number = (Math.PI / 16); graphics.clear(); graphics.lineStyle(_arg5, _arg4); graphics.beginFill(_arg6); var _local8:Number = (_arg1 * Math.sin(_arg3)); var _local9:Number = (-(_arg1) * Math.cos(_arg3)); graphics.moveTo(_local8, _local9); graphics.lineTo(0, 0); _local8 = (_arg1 * Math.sin(_arg2)); _local9 = (-(_arg1) * Math.cos(_arg2)); graphics.lineTo(_local8, _local9); var _local10:Number = _arg2; while (_local10 < _arg3) { _local8 = (_arg1 * Math.sin(_local10)); _local9 = (-(_arg1) * Math.cos(_local10)); graphics.lineTo(_local8, _local9); _local10 = (_local10 + _local7); }; _local8 = (_arg1 * Math.sin(_arg3)); _local9 = (-(_arg1) * Math.cos(_arg3)); graphics.lineTo(_local8, _local9); graphics.endFill(); } } }//package GenericUILib
Section 106
//MochiAd (mochi.as3.MochiAd) package mochi.as3 { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.net.*; import flash.system.*; public class MochiAd { public static function getVersion():String{ return ("3.0 as3"); } public static function showClickAwayAd(_arg1:Object):void{ var clip:Object; var mc:MovieClip; var chk:MovieClip; var options = _arg1; var DEFAULTS:Object = {ad_timeout:2000, regpt:"o", method:"showClickAwayAd", res:"300x250", no_bg:true, ad_started:function ():void{ }, ad_finished:function ():void{ }, ad_loaded:function (_arg1:Number, _arg2:Number):void{ }, ad_failed:function ():void{ trace("[MochiAd] Couldn't load an ad, make sure your game's local security sandbox is configured for Access Network Only and that you are not using ad blocking software"); }, ad_skipped:function ():void{ }}; options = MochiAd._parseOptions(options, DEFAULTS); clip = options.clip; var ad_timeout:Number = options.ad_timeout; delete options.ad_timeout; if (!MochiAd.load(options)){ options.ad_failed(); options.ad_finished(); return; }; options.ad_started(); mc = clip._mochiad; mc["onUnload"] = function ():void{ MochiAd._cleanup(mc); options.ad_finished(); }; var wh:Array = MochiAd._getRes(options, clip); var w:Number = wh[0]; var h:Number = wh[1]; mc.x = (w * 0.5); mc.y = (h * 0.5); chk = createEmptyMovieClip(mc, "_mochiad_wait", 3); chk.ad_timeout = ad_timeout; chk.started = getTimer(); chk.showing = false; mc.unloadAd = function ():void{ MochiAd.unload(clip); }; mc.adLoaded = options.ad_loaded; mc.adSkipped = options.ad_skipped; mc.rpc = function (_arg1:Number, _arg2:Object):void{ MochiAd.rpc(clip, _arg1, _arg2); }; var sendHostProgress:Boolean; mc.regContLC = function (_arg1:String):void{ mc._containerLCName = _arg1; }; chk["onEnterFrame"] = function ():void{ var _local4:Number; if (!this.parent){ delete this.onEnterFrame; return; }; var _local1:Object = this.parent._mochiad_ctr; var _local2:Number = (getTimer() - this.started); var _local3:Boolean; if (!chk.showing){ _local4 = this.parent._mochiad_ctr.contentLoaderInfo.bytesTotal; if (_local4 > 0){ chk.showing = true; _local3 = true; chk.started = getTimer(); } else { if (_local2 > chk.ad_timeout){ options.ad_failed(); _local3 = true; }; }; }; if (this.root == null){ _local3 = true; }; if (_local3){ delete this.onEnterFrame; }; }; doOnEnterFrame(chk); } public static function _isNetworkAvailable():Boolean{ return (!((Security.sandboxType == "localWithFile"))); } public static function _allowDomains(_arg1:String):String{ var _local2:String = _arg1.split("/")[2].split(":")[0]; if (Security.sandboxType == "application"){ return (_local2); }; Security.allowDomain("*"); Security.allowDomain(_local2); Security.allowInsecureDomain("*"); Security.allowInsecureDomain(_local2); return (_local2); } public static function unload(_arg1:Object):Boolean{ if (((_arg1.clip) && (_arg1.clip._mochiad))){ _arg1 = _arg1.clip; }; if (_arg1.origFrameRate != undefined){ _arg1.stage.frameRate = _arg1.origFrameRate; }; if (!_arg1._mochiad){ return (false); }; if (_arg1._mochiad._containerLCName != undefined){ _arg1._mochiad.lc.send(_arg1._mochiad._containerLCName, "notify", {id:"unload"}); }; if (_arg1._mochiad.onUnload){ _arg1._mochiad.onUnload(); }; delete _arg1._mochiad_loaded; delete _arg1._mochiad; return (true); } public static function showInterLevelAd(_arg1:Object):void{ var clip:Object; var mc:MovieClip; var chk:MovieClip; var options = _arg1; var DEFAULTS:Object = {ad_timeout:2000, fadeout_time:250, regpt:"o", method:"showTimedAd", ad_started:function ():void{ if ((this.clip is MovieClip)){ this.clip.stop(); } else { throw (new Error("MochiAd.showInterLevelAd requires a clip that is a MovieClip or is an instance of a class that extends MovieClip. If your clip is a Sprite, then you must provide custom ad_started and ad_finished handlers.")); }; }, ad_finished:function ():void{ if ((this.clip is MovieClip)){ this.clip.play(); } else { throw (new Error("MochiAd.showInterLevelAd requires a clip that is a MovieClip or is an instance of a class that extends MovieClip. If your clip is a Sprite, then you must provide custom ad_started and ad_finished handlers.")); }; }, ad_loaded:function (_arg1:Number, _arg2:Number):void{ }, ad_failed:function ():void{ trace("[MochiAd] Couldn't load an ad, make sure your game's local security sandbox is configured for Access Network Only and that you are not using ad blocking software"); }, ad_skipped:function ():void{ }}; options = MochiAd._parseOptions(options, DEFAULTS); clip = options.clip; var ad_msec:Number = 11000; var ad_timeout:Number = options.ad_timeout; delete options.ad_timeout; var fadeout_time:Number = options.fadeout_time; delete options.fadeout_time; if (!MochiAd.load(options)){ options.ad_failed(); options.ad_finished(); return; }; options.ad_started(); mc = clip._mochiad; mc["onUnload"] = function ():void{ MochiAd._cleanup(mc); options.ad_finished(); }; var wh:Array = MochiAd._getRes(options, clip); var w:Number = wh[0]; var h:Number = wh[1]; mc.x = (w * 0.5); mc.y = (h * 0.5); chk = createEmptyMovieClip(mc, "_mochiad_wait", 3); chk.ad_msec = ad_msec; chk.ad_timeout = ad_timeout; chk.started = getTimer(); chk.showing = false; chk.fadeout_time = fadeout_time; chk.fadeFunction = function ():void{ if (!this.parent){ delete this.onEnterFrame; delete this.fadeFunction; return; }; var _local1:Number = (100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time))); if (_local1 > 0){ this.parent.alpha = (_local1 * 0.01); } else { MochiAd.unload(clip); delete this["onEnterFrame"]; }; }; mc.unloadAd = function ():void{ MochiAd.unload(clip); }; mc.adLoaded = options.ad_loaded; mc.adSkipped = options.ad_skipped; mc.adjustProgress = function (_arg1:Number):void{ var _local2:Object = mc._mochiad_wait; _local2.server_control = true; _local2.showing = true; _local2.started = getTimer(); _local2.ad_msec = (_arg1 - 250); }; mc.rpc = function (_arg1:Number, _arg2:Object):void{ MochiAd.rpc(clip, _arg1, _arg2); }; chk["onEnterFrame"] = function ():void{ var _local4:Number; if (!this.parent){ delete this.onEnterFrame; delete this.fadeFunction; return; }; var _local1:Object = this.parent._mochiad_ctr; var _local2:Number = (getTimer() - this.started); var _local3:Boolean; if (!chk.showing){ _local4 = this.parent._mochiad_ctr.contentLoaderInfo.bytesTotal; if (_local4 > 0){ chk.showing = true; chk.started = getTimer(); MochiAd.adShowing(clip); } else { if (_local2 > chk.ad_timeout){ options.ad_failed(); _local3 = true; }; }; }; if (_local2 > chk.ad_msec){ _local3 = true; }; if (_local3){ if (this.server_control){ delete this.onEnterFrame; } else { this.fadeout_start = getTimer(); this.onEnterFrame = this.fadeFunction; }; }; }; doOnEnterFrame(chk); } public static function _parseOptions(_arg1:Object, _arg2:Object):Object{ var _local4:String; var _local5:Array; var _local6:Number; var _local7:Array; var _local3:Object = {}; for (_local4 in _arg2) { _local3[_local4] = _arg2[_local4]; }; if (_arg1){ for (_local4 in _arg1) { _local3[_local4] = _arg1[_local4]; }; }; if (_local3.clip == undefined){ throw (new Error("MochiAd is missing the 'clip' parameter. This should be a MovieClip, Sprite or an instance of a class that extends MovieClip or Sprite.")); }; _arg1 = _local3.clip.loaderInfo.parameters.mochiad_options; if (_arg1){ _local5 = _arg1.split("&"); _local6 = 0; while (_local6 < _local5.length) { _local7 = _local5[_local6].split("="); _local3[unescape(_local7[0])] = unescape(_local7[1]); _local6++; }; }; if (_local3.id == "test"){ trace("[MochiAd] WARNING: Using the MochiAds test identifier, make sure to use the code from your dashboard, not this example!"); }; return (_local3); } public static function _cleanup(_arg1:Object):void{ var k:String; var lc:LocalConnection; var f:Function; var mc = _arg1; if (("lc" in mc)){ lc = mc.lc; f = function ():void{ try { lc.client = null; lc.close(); } catch(e:Error) { }; }; setTimeout(f, 0); }; var idx:Number = DisplayObjectContainer(mc).numChildren; while (idx > 0) { idx = (idx - 1); DisplayObjectContainer(mc).removeChildAt(idx); }; for (k in mc) { delete mc[k]; }; } public static function load(_arg1:Object):MovieClip{ var clip:Object; var k:String; var server:String; var hostname:String; var lc:LocalConnection; var name:String; var loader:Loader; var g:Function; var req:URLRequest; var v:Object; var options = _arg1; var DEFAULTS:Object = {server:"http://x.mochiads.com/srv/1/", method:"load", depth:10333, id:"_UNKNOWN_"}; options = MochiAd._parseOptions(options, DEFAULTS); options.swfv = 9; options.mav = MochiAd.getVersion(); clip = options.clip; if (!MochiAd._isNetworkAvailable()){ return (null); }; try { if (clip._mochiad_loaded){ return (null); }; } catch(e:Error) { throw (new Error("MochiAd requires a clip that is an instance of a dynamic class. If your class extends Sprite or MovieClip, you must make it dynamic.")); }; var depth:Number = options.depth; delete options.depth; var mc:MovieClip = createEmptyMovieClip(clip, "_mochiad", depth); var wh:Array = MochiAd._getRes(options, clip); options.res = ((wh[0] + "x") + wh[1]); options.server = (options.server + options.id); delete options.id; clip._mochiad_loaded = true; if (clip.loaderInfo.loaderURL.indexOf("http") == 0){ options.as3_swf = clip.loaderInfo.loaderURL; } else { trace("[MochiAd] NOTE: Security Sandbox Violation errors below are normal"); }; var lv:URLVariables = new URLVariables(); for (k in options) { v = options[k]; if (!(v is Function)){ lv[k] = v; }; }; server = lv.server; delete lv.server; hostname = _allowDomains(server); lc = new LocalConnection(); lc.client = mc; name = ["", Math.floor(new Date().getTime()), Math.floor((Math.random() * 999999))].join("_"); lc.allowDomain("*", "localhost"); lc.allowInsecureDomain("*", "localhost"); lc.connect(name); mc.lc = lc; mc.lcName = name; lv.lc = name; lv.st = getTimer(); loader = new Loader(); g = function (_arg1:Object):void{ _arg1.target.removeEventListener(_arg1.type, arguments.callee); MochiAd.unload(clip); }; loader.contentLoaderInfo.addEventListener(Event.UNLOAD, g); req = new URLRequest(((server + ".swf?cacheBust=") + new Date().getTime())); req.contentType = "application/x-www-form-urlencoded"; req.method = URLRequestMethod.POST; req.data = lv; loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, function (_arg1:IOErrorEvent):void{ trace("[MochiAds] Blocked URL"); }); loader.load(req); mc.addChild(loader); mc._mochiad_ctr = loader; return (mc); } public static function runMethod(_arg1:Object, _arg2:String, _arg3:Array):Object{ var _local4:Array = _arg2.split("."); var _local5:Number = 0; while (_local5 < (_local4.length - 1)) { if ((((_arg1[_local4[_local5]] == undefined)) || ((_arg1[_local4[_local5]] == null)))){ return (undefined); }; _arg1 = _arg1[_local4[_local5]]; _local5++; }; if (typeof(_arg1[_local4[_local5]]) == "function"){ return (_arg1[_local4[_local5]].apply(_arg1, _arg3)); }; return (undefined); } public static function createEmptyMovieClip(_arg1:Object, _arg2:String, _arg3:Number):MovieClip{ var _local4:MovieClip = new MovieClip(); if (((false) && (_arg3))){ _arg1.addChildAt(_local4, _arg3); } else { _arg1.addChild(_local4); }; _arg1[_arg2] = _local4; _local4["_name"] = _arg2; return (_local4); } public static function _getRes(_arg1:Object, _arg2:Object):Array{ var _local6:Array; var _local3:Object = _arg2.getBounds(_arg2.root); var _local4:Number = 0; var _local5:Number = 0; if (typeof(_arg1.res) != "undefined"){ _local6 = _arg1.res.split("x"); _local4 = parseFloat(_local6[0]); _local5 = parseFloat(_local6[1]); } else { _local4 = (_local3.xMax - _local3.xMin); _local5 = (_local3.yMax - _local3.yMin); }; if ((((_local4 == 0)) || ((_local5 == 0)))){ _local4 = _arg2.stage.stageWidth; _local5 = _arg2.stage.stageHeight; }; return ([_local4, _local5]); } public static function adShowing(_arg1:Object):void{ _arg1.origFrameRate = _arg1.stage.frameRate; _arg1.stage.frameRate = 30; } public static function getValue(_arg1:Object, _arg2:String):Object{ var _local3:Array = _arg2.split("."); var _local4:Number = 0; while (_local4 < (_local3.length - 1)) { if ((((_arg1[_local3[_local4]] == undefined)) || ((_arg1[_local3[_local4]] == null)))){ return (undefined); }; _arg1 = _arg1[_local3[_local4]]; _local4++; }; return (_arg1[_local3[_local4]]); } public static function rpc(_arg1:Object, _arg2:Number, _arg3:Object):void{ var _local4:Object; var _local5:Object; switch (_arg3.id){ case "setValue": MochiAd.setValue(_arg1, _arg3.objectName, _arg3.value); break; case "getValue": _local4 = MochiAd.getValue(_arg1, _arg3.objectName); _arg1._mochiad.lc.send(_arg1._mochiad._containerLCName, "rpcResult", _arg2, _local4); break; case "runMethod": _local5 = MochiAd.runMethod(_arg1, _arg3.method, _arg3.args); _arg1._mochiad.lc.send(_arg1._mochiad._containerLCName, "rpcResult", _arg2, _local5); break; default: trace(("[mochiads rpc] unknown rpc id: " + _arg3.id)); }; } public static function setValue(_arg1:Object, _arg2:String, _arg3:Object):void{ var _local4:Array = _arg2.split("."); var _local5:Number = 0; while (_local5 < (_local4.length - 1)) { if ((((_arg1[_local4[_local5]] == undefined)) || ((_arg1[_local4[_local5]] == null)))){ return; }; _arg1 = _arg1[_local4[_local5]]; _local5++; }; _arg1[_local4[_local5]] = _arg3; } public static function showPreGameAd(_arg1:Object):void{ var clip:Object; var mc:MovieClip; var chk:MovieClip; var complete:Boolean; var unloaded:Boolean; var sendHostProgress:Boolean; var fn:Function; var r:MovieClip; var options = _arg1; var DEFAULTS:Object = {ad_timeout:3000, fadeout_time:250, regpt:"o", method:"showPreloaderAd", color:0xFF8A00, background:16777161, outline:13994812, no_progress_bar:false, ad_started:function ():void{ if ((this.clip is MovieClip)){ this.clip.stop(); } else { throw (new Error("MochiAd.showPreGameAd requires a clip that is a MovieClip or is an instance of a class that extends MovieClip. If your clip is a Sprite, then you must provide custom ad_started and ad_finished handlers.")); }; }, ad_finished:function ():void{ if ((this.clip is MovieClip)){ this.clip.play(); } else { throw (new Error("MochiAd.showPreGameAd requires a clip that is a MovieClip or is an instance of a class that extends MovieClip. If your clip is a Sprite, then you must provide custom ad_started and ad_finished handlers.")); }; }, ad_loaded:function (_arg1:Number, _arg2:Number):void{ }, ad_failed:function ():void{ trace("[MochiAd] Couldn't load an ad, make sure your game's local security sandbox is configured for Access Network Only and that you are not using ad blocking software"); }, ad_skipped:function ():void{ }, ad_progress:function (_arg1:Number):void{ }}; options = MochiAd._parseOptions(options, DEFAULTS); if ("c862232051e0a94e1c3609b3916ddb17".substr(0) == "dfeada81ac97cde83665f81c12da7def"){ options.ad_started(); fn = function ():void{ options.ad_finished(); }; setTimeout(fn, 100); return; }; clip = options.clip; var ad_msec:Number = 11000; var ad_timeout:Number = options.ad_timeout; delete options.ad_timeout; var fadeout_time:Number = options.fadeout_time; delete options.fadeout_time; if (!MochiAd.load(options)){ options.ad_failed(); options.ad_finished(); return; }; options.ad_started(); mc = clip._mochiad; mc["onUnload"] = function ():void{ MochiAd._cleanup(mc); var fn:Function = function ():void{ options.ad_finished(); }; setTimeout(fn, 100); }; var wh:Array = MochiAd._getRes(options, clip); var w:Number = wh[0]; var h:Number = wh[1]; mc.x = (w * 0.5); mc.y = (h * 0.5); chk = createEmptyMovieClip(mc, "_mochiad_wait", 3); chk.x = (w * -0.5); chk.y = (h * -0.5); var bar:MovieClip = createEmptyMovieClip(chk, "_mochiad_bar", 4); if (options.no_progress_bar){ bar.visible = false; delete options.no_progress_bar; } else { bar.x = 10; bar.y = (h - 20); }; var bar_color:Number = options.color; delete options.color; var bar_background:Number = options.background; delete options.background; var bar_outline:Number = options.outline; delete options.outline; var backing_mc:MovieClip = createEmptyMovieClip(bar, "_outline", 1); var backing:Object = backing_mc.graphics; backing.beginFill(bar_background); backing.moveTo(0, 0); backing.lineTo((w - 20), 0); backing.lineTo((w - 20), 10); backing.lineTo(0, 10); backing.lineTo(0, 0); backing.endFill(); var inside_mc:MovieClip = createEmptyMovieClip(bar, "_inside", 2); var inside:Object = inside_mc.graphics; inside.beginFill(bar_color); inside.moveTo(0, 0); inside.lineTo((w - 20), 0); inside.lineTo((w - 20), 10); inside.lineTo(0, 10); inside.lineTo(0, 0); inside.endFill(); inside_mc.scaleX = 0; var outline_mc:MovieClip = createEmptyMovieClip(bar, "_outline", 3); var outline:Object = outline_mc.graphics; outline.lineStyle(0, bar_outline, 100); outline.moveTo(0, 0); outline.lineTo((w - 20), 0); outline.lineTo((w - 20), 10); outline.lineTo(0, 10); outline.lineTo(0, 0); chk.ad_msec = ad_msec; chk.ad_timeout = ad_timeout; chk.started = getTimer(); chk.showing = false; chk.last_pcnt = 0; chk.fadeout_time = fadeout_time; chk.fadeFunction = function ():void{ var _local1:Number = (100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time))); if (_local1 > 0){ this.parent.alpha = (_local1 * 0.01); } else { MochiAd.unload(clip); delete this["onEnterFrame"]; }; }; complete = false; unloaded = false; var f:Function = function (_arg1:Event):void{ _arg1.target.removeEventListener(_arg1.type, arguments.callee); complete = true; if (unloaded){ MochiAd.unload(clip); }; }; clip.loaderInfo.addEventListener(Event.COMPLETE, f); if ((clip.root is MovieClip)){ r = (clip.root as MovieClip); if (r.framesLoaded >= r.totalFrames){ complete = true; }; }; mc.unloadAd = function ():void{ unloaded = true; if (complete){ MochiAd.unload(clip); }; }; mc.adLoaded = options.ad_loaded; mc.adSkipped = options.ad_skipped; mc.adjustProgress = function (_arg1:Number):void{ var _local2:Object = mc._mochiad_wait; _local2.server_control = true; _local2.showing = true; _local2.started = getTimer(); _local2.ad_msec = _arg1; }; mc.rpc = function (_arg1:Number, _arg2:Object):void{ MochiAd.rpc(clip, _arg1, _arg2); }; mc.rpcTestFn = function (_arg1:String):Object{ trace(("[MOCHIAD rpcTestFn] " + _arg1)); return (_arg1); }; mc.regContLC = function (_arg1:String):void{ mc._containerLCName = _arg1; }; sendHostProgress = false; mc.sendHostLoadProgress = function (_arg1:String):void{ sendHostProgress = true; }; chk["onEnterFrame"] = function ():void{ var _local11:Number; if (((!(this.parent)) || (!(this.parent.parent)))){ delete this["onEnterFrame"]; return; }; var _local1:Object = this.parent.parent.root; var _local2:Object = this.parent._mochiad_ctr; var _local3:Number = (getTimer() - this.started); var _local4:Boolean; var _local5:Number = _local1.loaderInfo.bytesTotal; var _local6:Number = _local1.loaderInfo.bytesLoaded; if (complete){ _local6 = Math.max(1, _local6); _local5 = _local6; }; var _local7:Number = ((100 * _local6) / _local5); var _local8:Number = ((100 * _local3) / chk.ad_msec); var _local9:Object = this._mochiad_bar._inside; var _local10:Number = Math.min(100, Math.min(((_local7) || (0)), _local8)); _local10 = Math.max(this.last_pcnt, _local10); this.last_pcnt = _local10; _local9.scaleX = (_local10 * 0.01); options.ad_progress(_local10); if (sendHostProgress){ clip._mochiad.lc.send(clip._mochiad._containerLCName, "notify", {id:"hostLoadPcnt", pcnt:_local7}); if (_local7 == 100){ sendHostProgress = false; }; }; if (!chk.showing){ _local11 = this.parent._mochiad_ctr.contentLoaderInfo.bytesTotal; if (_local11 > 0){ chk.showing = true; chk.started = getTimer(); MochiAd.adShowing(clip); } else { if ((((_local3 > chk.ad_timeout)) && ((_local7 == 100)))){ options.ad_failed(); _local4 = true; }; }; }; if (_local3 > chk.ad_msec){ _local4 = true; }; if (((complete) && (_local4))){ if (this.server_control){ delete this.onEnterFrame; } else { this.fadeout_start = getTimer(); this.onEnterFrame = chk.fadeFunction; }; }; }; doOnEnterFrame(chk); } public static function showPreloaderAd(_arg1:Object):void{ trace("[MochiAd] DEPRECATED: showPreloaderAd was renamed to showPreGameAd in 2.0"); MochiAd.showPreGameAd(_arg1); } public static function showTimedAd(_arg1:Object):void{ trace("[MochiAd] DEPRECATED: showTimedAd was renamed to showInterLevelAd in 2.0"); MochiAd.showInterLevelAd(_arg1); } public static function doOnEnterFrame(_arg1:MovieClip):void{ var mc = _arg1; var f:Function = function (_arg1:Object):void{ if (((("onEnterFrame" in mc)) && (mc.onEnterFrame))){ mc.onEnterFrame(); } else { _arg1.target.removeEventListener(_arg1.type, arguments.callee); }; }; mc.addEventListener(Event.ENTER_FRAME, f); } } }//package mochi.as3
Section 107
//BitmapAsset (mx.core.BitmapAsset) package mx.core { import flash.display.*; public class BitmapAsset extends FlexBitmap implements IFlexAsset, IFlexDisplayObject { mx_internal static const VERSION:String = "3.5.0.12683"; public function BitmapAsset(_arg1:BitmapData=null, _arg2:String="auto", _arg3:Boolean=false){ super(_arg1, _arg2, _arg3); } public function get measuredWidth():Number{ if (bitmapData){ return (bitmapData.width); }; return (0); } public function get measuredHeight():Number{ if (bitmapData){ return (bitmapData.height); }; return (0); } public function setActualSize(_arg1:Number, _arg2:Number):void{ width = _arg1; height = _arg2; } public function move(_arg1:Number, _arg2:Number):void{ this.x = _arg1; this.y = _arg2; } } }//package mx.core
Section 108
//EdgeMetrics (mx.core.EdgeMetrics) package mx.core { public class EdgeMetrics { public var top:Number; public var left:Number; public var bottom:Number; public var right:Number; mx_internal static const VERSION:String = "3.5.0.12683"; public static const EMPTY:EdgeMetrics = new EdgeMetrics(0, 0, 0, 0); ; public function EdgeMetrics(_arg1:Number=0, _arg2:Number=0, _arg3:Number=0, _arg4:Number=0){ this.left = _arg1; this.top = _arg2; this.right = _arg3; this.bottom = _arg4; } public function clone():EdgeMetrics{ return (new EdgeMetrics(left, top, right, bottom)); } } }//package mx.core
Section 109
//FlexBitmap (mx.core.FlexBitmap) package mx.core { import flash.display.*; import mx.utils.*; public class FlexBitmap extends Bitmap { mx_internal static const VERSION:String = "3.5.0.12683"; public function FlexBitmap(_arg1:BitmapData=null, _arg2:String="auto", _arg3:Boolean=false){ var bitmapData = _arg1; var pixelSnapping = _arg2; var smoothing = _arg3; super(bitmapData, pixelSnapping, smoothing); try { name = NameUtil.createUniqueName(this); } catch(e:Error) { }; } override public function toString():String{ return (NameUtil.displayObjectToString(this)); } } }//package mx.core
Section 110
//FlexLoader (mx.core.FlexLoader) package mx.core { import flash.display.*; import mx.utils.*; public class FlexLoader extends Loader { mx_internal static const VERSION:String = "3.5.0.12683"; public function FlexLoader(){ super(); try { name = NameUtil.createUniqueName(this); } catch(e:Error) { }; } override public function toString():String{ return (NameUtil.displayObjectToString(this)); } } }//package mx.core
Section 111
//FlexShape (mx.core.FlexShape) package mx.core { import flash.display.*; import mx.utils.*; public class FlexShape extends Shape { mx_internal static const VERSION:String = "3.5.0.12683"; public function FlexShape(){ super(); try { name = NameUtil.createUniqueName(this); } catch(e:Error) { }; } override public function toString():String{ return (NameUtil.displayObjectToString(this)); } } }//package mx.core
Section 112
//FlexVersion (mx.core.FlexVersion) package mx.core { import mx.resources.*; public class FlexVersion { public static const VERSION_2_0_1:uint = 33554433; public static const CURRENT_VERSION:uint = 50331648; public static const VERSION_3_0:uint = 50331648; public static const VERSION_2_0:uint = 33554432; public static const VERSION_ALREADY_READ:String = "versionAlreadyRead"; public static const VERSION_ALREADY_SET:String = "versionAlreadySet"; mx_internal static const VERSION:String = "3.5.0.12683"; private static var compatibilityVersionChanged:Boolean = false; private static var _compatibilityErrorFunction:Function; private static var _compatibilityVersion:uint = 50331648; private static var compatibilityVersionRead:Boolean = false; mx_internal static function changeCompatibilityVersionString(_arg1:String):void{ var _local2:Array = _arg1.split("."); var _local3:uint = parseInt(_local2[0]); var _local4:uint = parseInt(_local2[1]); var _local5:uint = parseInt(_local2[2]); _compatibilityVersion = (((_local3 << 24) + (_local4 << 16)) + _local5); } public static function set compatibilityVersion(_arg1:uint):void{ var _local2:String; if (_arg1 == _compatibilityVersion){ return; }; if (compatibilityVersionChanged){ if (compatibilityErrorFunction == null){ _local2 = ResourceManager.getInstance().getString("core", VERSION_ALREADY_SET); throw (new Error(_local2)); }; compatibilityErrorFunction(_arg1, VERSION_ALREADY_SET); }; if (compatibilityVersionRead){ if (compatibilityErrorFunction == null){ _local2 = ResourceManager.getInstance().getString("core", VERSION_ALREADY_READ); throw (new Error(_local2)); }; compatibilityErrorFunction(_arg1, VERSION_ALREADY_READ); }; _compatibilityVersion = _arg1; compatibilityVersionChanged = true; } public static function get compatibilityVersion():uint{ compatibilityVersionRead = true; return (_compatibilityVersion); } public static function set compatibilityErrorFunction(_arg1:Function):void{ _compatibilityErrorFunction = _arg1; } public static function set compatibilityVersionString(_arg1:String):void{ var _local2:Array = _arg1.split("."); var _local3:uint = parseInt(_local2[0]); var _local4:uint = parseInt(_local2[1]); var _local5:uint = parseInt(_local2[2]); compatibilityVersion = (((_local3 << 24) + (_local4 << 16)) + _local5); } public static function get compatibilityErrorFunction():Function{ return (_compatibilityErrorFunction); } public static function get compatibilityVersionString():String{ var _local1:uint = ((compatibilityVersion >> 24) & 0xFF); var _local2:uint = ((compatibilityVersion >> 16) & 0xFF); var _local3:uint = (compatibilityVersion & 0xFFFF); return (((((_local1.toString() + ".") + _local2.toString()) + ".") + _local3.toString())); } } }//package mx.core
Section 113
//FontAsset (mx.core.FontAsset) package mx.core { import flash.text.*; public class FontAsset extends Font implements IFlexAsset { mx_internal static const VERSION:String = "3.5.0.12683"; } }//package mx.core
Section 114
//IBorder (mx.core.IBorder) package mx.core { public interface IBorder { function get borderMetrics():EdgeMetrics; } }//package mx.core
Section 115
//IButton (mx.core.IButton) package mx.core { public interface IButton extends IUIComponent { function get emphasized():Boolean; function set emphasized(_arg1:Boolean):void; function callLater(_arg1:Function, _arg2:Array=null):void; } }//package mx.core
Section 116
//IChildList (mx.core.IChildList) package mx.core { import flash.display.*; import flash.geom.*; public interface IChildList { function get numChildren():int; function removeChild(_arg1:DisplayObject):DisplayObject; function getChildByName(_arg1:String):DisplayObject; function removeChildAt(_arg1:int):DisplayObject; function getChildIndex(_arg1:DisplayObject):int; function addChildAt(_arg1:DisplayObject, _arg2:int):DisplayObject; function getObjectsUnderPoint(_arg1:Point):Array; function setChildIndex(_arg1:DisplayObject, _arg2:int):void; function getChildAt(_arg1:int):DisplayObject; function addChild(_arg1:DisplayObject):DisplayObject; function contains(_arg1:DisplayObject):Boolean; } }//package mx.core
Section 117
//IContainer (mx.core.IContainer) package mx.core { import flash.display.*; import flash.geom.*; import flash.text.*; import mx.managers.*; import flash.media.*; public interface IContainer extends IUIComponent { function set hitArea(_arg1:Sprite):void; function swapChildrenAt(_arg1:int, _arg2:int):void; function getChildByName(_arg1:String):DisplayObject; function get doubleClickEnabled():Boolean; function get graphics():Graphics; function get useHandCursor():Boolean; function addChildAt(_arg1:DisplayObject, _arg2:int):DisplayObject; function set mouseChildren(_arg1:Boolean):void; function set creatingContentPane(_arg1:Boolean):void; function get textSnapshot():TextSnapshot; function getChildIndex(_arg1:DisplayObject):int; function set doubleClickEnabled(_arg1:Boolean):void; function getObjectsUnderPoint(_arg1:Point):Array; function get creatingContentPane():Boolean; function setChildIndex(_arg1:DisplayObject, _arg2:int):void; function get soundTransform():SoundTransform; function set useHandCursor(_arg1:Boolean):void; function get numChildren():int; function contains(_arg1:DisplayObject):Boolean; function get verticalScrollPosition():Number; function set defaultButton(_arg1:IFlexDisplayObject):void; function swapChildren(_arg1:DisplayObject, _arg2:DisplayObject):void; function set horizontalScrollPosition(_arg1:Number):void; function get focusManager():IFocusManager; function startDrag(_arg1:Boolean=false, _arg2:Rectangle=null):void; function set mouseEnabled(_arg1:Boolean):void; function getChildAt(_arg1:int):DisplayObject; function set soundTransform(_arg1:SoundTransform):void; function get tabChildren():Boolean; function get tabIndex():int; function set focusRect(_arg1:Object):void; function get hitArea():Sprite; function get mouseChildren():Boolean; function removeChildAt(_arg1:int):DisplayObject; function get defaultButton():IFlexDisplayObject; function stopDrag():void; function set tabEnabled(_arg1:Boolean):void; function get horizontalScrollPosition():Number; function get focusRect():Object; function get viewMetrics():EdgeMetrics; function set verticalScrollPosition(_arg1:Number):void; function get dropTarget():DisplayObject; function get mouseEnabled():Boolean; function set tabChildren(_arg1:Boolean):void; function set buttonMode(_arg1:Boolean):void; function get tabEnabled():Boolean; function get buttonMode():Boolean; function removeChild(_arg1:DisplayObject):DisplayObject; function set tabIndex(_arg1:int):void; function addChild(_arg1:DisplayObject):DisplayObject; function areInaccessibleObjectsUnderPoint(_arg1:Point):Boolean; } }//package mx.core
Section 118
//IFlexAsset (mx.core.IFlexAsset) package mx.core { public interface IFlexAsset { } }//package mx.core
Section 119
//IFlexDisplayObject (mx.core.IFlexDisplayObject) package mx.core { import flash.events.*; import flash.display.*; import flash.geom.*; import flash.accessibility.*; public interface IFlexDisplayObject extends IBitmapDrawable, IEventDispatcher { function get visible():Boolean; function get rotation():Number; function localToGlobal(_arg1:Point):Point; function get name():String; function set width(_arg1:Number):void; function get measuredHeight():Number; function get blendMode():String; function get scale9Grid():Rectangle; function set name(_arg1:String):void; function set scaleX(_arg1:Number):void; function set scaleY(_arg1:Number):void; function get measuredWidth():Number; function get accessibilityProperties():AccessibilityProperties; function set scrollRect(_arg1:Rectangle):void; function get cacheAsBitmap():Boolean; function globalToLocal(_arg1:Point):Point; function get height():Number; function set blendMode(_arg1:String):void; function get parent():DisplayObjectContainer; function getBounds(_arg1:DisplayObject):Rectangle; function get opaqueBackground():Object; function set scale9Grid(_arg1:Rectangle):void; function setActualSize(_arg1:Number, _arg2:Number):void; function set alpha(_arg1:Number):void; function set accessibilityProperties(_arg1:AccessibilityProperties):void; function get width():Number; function hitTestPoint(_arg1:Number, _arg2:Number, _arg3:Boolean=false):Boolean; function set cacheAsBitmap(_arg1:Boolean):void; function get scaleX():Number; function get scaleY():Number; function get scrollRect():Rectangle; function get mouseX():Number; function get mouseY():Number; function set height(_arg1:Number):void; function set mask(_arg1:DisplayObject):void; function getRect(_arg1:DisplayObject):Rectangle; function get alpha():Number; function set transform(_arg1:Transform):void; function move(_arg1:Number, _arg2:Number):void; function get loaderInfo():LoaderInfo; function get root():DisplayObject; function hitTestObject(_arg1:DisplayObject):Boolean; function set opaqueBackground(_arg1:Object):void; function set visible(_arg1:Boolean):void; function get mask():DisplayObject; function set x(_arg1:Number):void; function set y(_arg1:Number):void; function get transform():Transform; function set filters(_arg1:Array):void; function get x():Number; function get y():Number; function get filters():Array; function set rotation(_arg1:Number):void; function get stage():Stage; } }//package mx.core
Section 120
//IFlexModuleFactory (mx.core.IFlexModuleFactory) package mx.core { import flash.utils.*; public interface IFlexModuleFactory { function get preloadedRSLs():Dictionary; function allowInsecureDomain(... _args):void; function create(... _args):Object; function allowDomain(... _args):void; function info():Object; } }//package mx.core
Section 121
//IInvalidating (mx.core.IInvalidating) package mx.core { public interface IInvalidating { function validateNow():void; function invalidateSize():void; function invalidateDisplayList():void; function invalidateProperties():void; } }//package mx.core
Section 122
//IProgrammaticSkin (mx.core.IProgrammaticSkin) package mx.core { public interface IProgrammaticSkin { function validateNow():void; function validateDisplayList():void; } }//package mx.core
Section 123
//IRawChildrenContainer (mx.core.IRawChildrenContainer) package mx.core { public interface IRawChildrenContainer { function get rawChildren():IChildList; } }//package mx.core
Section 124
//IRectangularBorder (mx.core.IRectangularBorder) package mx.core { import flash.geom.*; public interface IRectangularBorder extends IBorder { function get backgroundImageBounds():Rectangle; function get hasBackgroundImage():Boolean; function set backgroundImageBounds(_arg1:Rectangle):void; function layoutBackgroundImage():void; } }//package mx.core
Section 125
//IRepeaterClient (mx.core.IRepeaterClient) package mx.core { public interface IRepeaterClient { function get instanceIndices():Array; function set instanceIndices(_arg1:Array):void; function get isDocument():Boolean; function set repeaters(_arg1:Array):void; function initializeRepeaterArrays(_arg1:IRepeaterClient):void; function get repeaters():Array; function set repeaterIndices(_arg1:Array):void; function get repeaterIndices():Array; } }//package mx.core
Section 126
//ISWFBridgeGroup (mx.core.ISWFBridgeGroup) package mx.core { import flash.events.*; public interface ISWFBridgeGroup { function getChildBridgeProvider(_arg1:IEventDispatcher):ISWFBridgeProvider; function removeChildBridge(_arg1:IEventDispatcher):void; function get parentBridge():IEventDispatcher; function addChildBridge(_arg1:IEventDispatcher, _arg2:ISWFBridgeProvider):void; function set parentBridge(_arg1:IEventDispatcher):void; function containsBridge(_arg1:IEventDispatcher):Boolean; function getChildBridges():Array; } }//package mx.core
Section 127
//ISWFBridgeProvider (mx.core.ISWFBridgeProvider) package mx.core { import flash.events.*; public interface ISWFBridgeProvider { function get childAllowsParent():Boolean; function get swfBridge():IEventDispatcher; function get parentAllowsChild():Boolean; } }//package mx.core
Section 128
//IUIComponent (mx.core.IUIComponent) package mx.core { import flash.display.*; import mx.managers.*; public interface IUIComponent extends IFlexDisplayObject { function set focusPane(_arg1:Sprite):void; function get enabled():Boolean; function set enabled(_arg1:Boolean):void; function set isPopUp(_arg1:Boolean):void; function get explicitMinHeight():Number; function get percentWidth():Number; function get isPopUp():Boolean; function get owner():DisplayObjectContainer; function get percentHeight():Number; function get baselinePosition():Number; function owns(_arg1:DisplayObject):Boolean; function initialize():void; function get maxWidth():Number; function get minWidth():Number; function getExplicitOrMeasuredWidth():Number; function get explicitMaxWidth():Number; function get explicitMaxHeight():Number; function set percentHeight(_arg1:Number):void; function get minHeight():Number; function set percentWidth(_arg1:Number):void; function get document():Object; function get focusPane():Sprite; function getExplicitOrMeasuredHeight():Number; function set tweeningProperties(_arg1:Array):void; function set explicitWidth(_arg1:Number):void; function set measuredMinHeight(_arg1:Number):void; function get explicitMinWidth():Number; function get tweeningProperties():Array; function get maxHeight():Number; function set owner(_arg1:DisplayObjectContainer):void; function set includeInLayout(_arg1:Boolean):void; function setVisible(_arg1:Boolean, _arg2:Boolean=false):void; function parentChanged(_arg1:DisplayObjectContainer):void; function get explicitWidth():Number; function get measuredMinHeight():Number; function set measuredMinWidth(_arg1:Number):void; function set explicitHeight(_arg1:Number):void; function get includeInLayout():Boolean; function get measuredMinWidth():Number; function get explicitHeight():Number; function set systemManager(_arg1:ISystemManager):void; function set document(_arg1:Object):void; function get systemManager():ISystemManager; } }//package mx.core
Section 129
//mx_internal (mx.core.mx_internal) package mx.core { public namespace mx_internal = "http://www.adobe.com/2006/flex/mx/internal"; }//package mx.core
Section 130
//Singleton (mx.core.Singleton) package mx.core { public class Singleton { mx_internal static const VERSION:String = "3.5.0.12683"; private static var classMap:Object = {}; public static function registerClass(_arg1:String, _arg2:Class):void{ var _local3:Class = classMap[_arg1]; if (!_local3){ classMap[_arg1] = _arg2; }; } public static function getClass(_arg1:String):Class{ return (classMap[_arg1]); } public static function getInstance(_arg1:String):Object{ var _local2:Class = classMap[_arg1]; if (!_local2){ throw (new Error((("No class registered for interface '" + _arg1) + "'."))); }; return (_local2["getInstance"]()); } } }//package mx.core
Section 131
//SoundAsset (mx.core.SoundAsset) package mx.core { import flash.media.*; public class SoundAsset extends Sound implements IFlexAsset { mx_internal static const VERSION:String = "3.5.0.12683"; } }//package mx.core
Section 132
//UIComponentGlobals (mx.core.UIComponentGlobals) package mx.core { import flash.display.*; import flash.geom.*; import mx.managers.*; public class UIComponentGlobals { mx_internal static var callLaterSuspendCount:int = 0; mx_internal static var layoutManager:ILayoutManager; mx_internal static var nextFocusObject:InteractiveObject; mx_internal static var designTime:Boolean = false; mx_internal static var tempMatrix:Matrix = new Matrix(); mx_internal static var callLaterDispatcherCount:int = 0; private static var _catchCallLaterExceptions:Boolean = false; public static function set catchCallLaterExceptions(_arg1:Boolean):void{ _catchCallLaterExceptions = _arg1; } public static function get designMode():Boolean{ return (designTime); } public static function set designMode(_arg1:Boolean):void{ designTime = _arg1; } public static function get catchCallLaterExceptions():Boolean{ return (_catchCallLaterExceptions); } } }//package mx.core
Section 133
//ModuleEvent (mx.events.ModuleEvent) package mx.events { import flash.events.*; import mx.modules.*; public class ModuleEvent extends ProgressEvent { public var errorText:String; private var _module:IModuleInfo; public static const READY:String = "ready"; public static const ERROR:String = "error"; public static const PROGRESS:String = "progress"; mx_internal static const VERSION:String = "3.5.0.12683"; public static const SETUP:String = "setup"; public static const UNLOAD:String = "unload"; public function ModuleEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:uint=0, _arg5:uint=0, _arg6:String=null, _arg7:IModuleInfo=null){ super(_arg1, _arg2, _arg3, _arg4, _arg5); this.errorText = _arg6; this._module = _arg7; } public function get module():IModuleInfo{ if (_module){ return (_module); }; return ((target as IModuleInfo)); } override public function clone():Event{ return (new ModuleEvent(type, bubbles, cancelable, bytesLoaded, bytesTotal, errorText, module)); } } }//package mx.events
Section 134
//ResourceEvent (mx.events.ResourceEvent) package mx.events { import flash.events.*; public class ResourceEvent extends ProgressEvent { public var errorText:String; mx_internal static const VERSION:String = "3.5.0.12683"; public static const COMPLETE:String = "complete"; public static const PROGRESS:String = "progress"; public static const ERROR:String = "error"; public function ResourceEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:uint=0, _arg5:uint=0, _arg6:String=null){ super(_arg1, _arg2, _arg3, _arg4, _arg5); this.errorText = _arg6; } override public function clone():Event{ return (new ResourceEvent(type, bubbles, cancelable, bytesLoaded, bytesTotal, errorText)); } } }//package mx.events
Section 135
//StyleEvent (mx.events.StyleEvent) package mx.events { import flash.events.*; public class StyleEvent extends ProgressEvent { public var errorText:String; mx_internal static const VERSION:String = "3.5.0.12683"; public static const COMPLETE:String = "complete"; public static const PROGRESS:String = "progress"; public static const ERROR:String = "error"; public function StyleEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:uint=0, _arg5:uint=0, _arg6:String=null){ super(_arg1, _arg2, _arg3, _arg4, _arg5); this.errorText = _arg6; } override public function clone():Event{ return (new StyleEvent(type, bubbles, cancelable, bytesLoaded, bytesTotal, errorText)); } } }//package mx.events
Section 136
//RectangularDropShadow (mx.graphics.RectangularDropShadow) package mx.graphics { import mx.core.*; import flash.display.*; import flash.geom.*; import mx.utils.*; import flash.filters.*; public class RectangularDropShadow { private var leftShadow:BitmapData; private var _tlRadius:Number;// = 0 private var _trRadius:Number;// = 0 private var _angle:Number;// = 45 private var topShadow:BitmapData; private var _distance:Number;// = 4 private var rightShadow:BitmapData; private var _alpha:Number;// = 0.4 private var shadow:BitmapData; private var _brRadius:Number;// = 0 private var _blRadius:Number;// = 0 private var _color:int;// = 0 private var bottomShadow:BitmapData; private var changed:Boolean;// = true mx_internal static const VERSION:String = "3.5.0.12683"; public function get blRadius():Number{ return (_blRadius); } public function set brRadius(_arg1:Number):void{ if (_brRadius != _arg1){ _brRadius = _arg1; changed = true; }; } public function set color(_arg1:int):void{ if (_color != _arg1){ _color = _arg1; changed = true; }; } public function drawShadow(_arg1:Graphics, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number):void{ var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; var _local20:Number; var _local21:Number; var _local22:Number; if (changed){ createShadowBitmaps(); changed = false; }; _arg4 = Math.ceil(_arg4); _arg5 = Math.ceil(_arg5); var _local6:int = (leftShadow) ? leftShadow.width : 0; var _local7:int = (rightShadow) ? rightShadow.width : 0; var _local8:int = (topShadow) ? topShadow.height : 0; var _local9:int = (bottomShadow) ? bottomShadow.height : 0; var _local10:int = (_local6 + _local7); var _local11:int = (_local8 + _local9); var _local12:Number = ((_arg5 + _local11) / 2); var _local13:Number = ((_arg4 + _local10) / 2); var _local14:Matrix = new Matrix(); if (((leftShadow) || (topShadow))){ _local15 = Math.min((tlRadius + _local10), _local13); _local16 = Math.min((tlRadius + _local11), _local12); _local14.tx = (_arg2 - _local6); _local14.ty = (_arg3 - _local8); _arg1.beginBitmapFill(shadow, _local14); _arg1.drawRect((_arg2 - _local6), (_arg3 - _local8), _local15, _local16); _arg1.endFill(); }; if (((rightShadow) || (topShadow))){ _local17 = Math.min((trRadius + _local10), _local13); _local18 = Math.min((trRadius + _local11), _local12); _local14.tx = (((_arg2 + _arg4) + _local7) - shadow.width); _local14.ty = (_arg3 - _local8); _arg1.beginBitmapFill(shadow, _local14); _arg1.drawRect((((_arg2 + _arg4) + _local7) - _local17), (_arg3 - _local8), _local17, _local18); _arg1.endFill(); }; if (((leftShadow) || (bottomShadow))){ _local19 = Math.min((blRadius + _local10), _local13); _local20 = Math.min((blRadius + _local11), _local12); _local14.tx = (_arg2 - _local6); _local14.ty = (((_arg3 + _arg5) + _local9) - shadow.height); _arg1.beginBitmapFill(shadow, _local14); _arg1.drawRect((_arg2 - _local6), (((_arg3 + _arg5) + _local9) - _local20), _local19, _local20); _arg1.endFill(); }; if (((rightShadow) || (bottomShadow))){ _local21 = Math.min((brRadius + _local10), _local13); _local22 = Math.min((brRadius + _local11), _local12); _local14.tx = (((_arg2 + _arg4) + _local7) - shadow.width); _local14.ty = (((_arg3 + _arg5) + _local9) - shadow.height); _arg1.beginBitmapFill(shadow, _local14); _arg1.drawRect((((_arg2 + _arg4) + _local7) - _local21), (((_arg3 + _arg5) + _local9) - _local22), _local21, _local22); _arg1.endFill(); }; if (leftShadow){ _local14.tx = (_arg2 - _local6); _local14.ty = 0; _arg1.beginBitmapFill(leftShadow, _local14); _arg1.drawRect((_arg2 - _local6), ((_arg3 - _local8) + _local16), _local6, ((((_arg5 + _local8) + _local9) - _local16) - _local20)); _arg1.endFill(); }; if (rightShadow){ _local14.tx = (_arg2 + _arg4); _local14.ty = 0; _arg1.beginBitmapFill(rightShadow, _local14); _arg1.drawRect((_arg2 + _arg4), ((_arg3 - _local8) + _local18), _local7, ((((_arg5 + _local8) + _local9) - _local18) - _local22)); _arg1.endFill(); }; if (topShadow){ _local14.tx = 0; _local14.ty = (_arg3 - _local8); _arg1.beginBitmapFill(topShadow, _local14); _arg1.drawRect(((_arg2 - _local6) + _local15), (_arg3 - _local8), ((((_arg4 + _local6) + _local7) - _local15) - _local17), _local8); _arg1.endFill(); }; if (bottomShadow){ _local14.tx = 0; _local14.ty = (_arg3 + _arg5); _arg1.beginBitmapFill(bottomShadow, _local14); _arg1.drawRect(((_arg2 - _local6) + _local19), (_arg3 + _arg5), ((((_arg4 + _local6) + _local7) - _local19) - _local21), _local9); _arg1.endFill(); }; } public function get brRadius():Number{ return (_brRadius); } public function get angle():Number{ return (_angle); } private function createShadowBitmaps():void{ var _local1:Number = ((Math.max(tlRadius, blRadius) + (2 * distance)) + Math.max(trRadius, brRadius)); var _local2:Number = ((Math.max(tlRadius, trRadius) + (2 * distance)) + Math.max(blRadius, brRadius)); if ((((_local1 < 0)) || ((_local2 < 0)))){ return; }; var _local3:Shape = new FlexShape(); var _local4:Graphics = _local3.graphics; _local4.beginFill(0xFFFFFF); GraphicsUtil.drawRoundRectComplex(_local4, 0, 0, _local1, _local2, tlRadius, trRadius, blRadius, brRadius); _local4.endFill(); var _local5:BitmapData = new BitmapData(_local1, _local2, true, 0); _local5.draw(_local3, new Matrix()); var _local6:DropShadowFilter = new DropShadowFilter(distance, angle, color, alpha); _local6.knockout = true; var _local7:Rectangle = new Rectangle(0, 0, _local1, _local2); var _local8:Rectangle = _local5.generateFilterRect(_local7, _local6); var _local9:Number = (_local7.left - _local8.left); var _local10:Number = (_local8.right - _local7.right); var _local11:Number = (_local7.top - _local8.top); var _local12:Number = (_local8.bottom - _local7.bottom); shadow = new BitmapData(_local8.width, _local8.height); shadow.applyFilter(_local5, _local7, new Point(_local9, _local11), _local6); var _local13:Point = new Point(0, 0); var _local14:Rectangle = new Rectangle(); if (_local9 > 0){ _local14.x = 0; _local14.y = ((tlRadius + _local11) + _local12); _local14.width = _local9; _local14.height = 1; leftShadow = new BitmapData(_local9, 1); leftShadow.copyPixels(shadow, _local14, _local13); } else { leftShadow = null; }; if (_local10 > 0){ _local14.x = (shadow.width - _local10); _local14.y = ((trRadius + _local11) + _local12); _local14.width = _local10; _local14.height = 1; rightShadow = new BitmapData(_local10, 1); rightShadow.copyPixels(shadow, _local14, _local13); } else { rightShadow = null; }; if (_local11 > 0){ _local14.x = ((tlRadius + _local9) + _local10); _local14.y = 0; _local14.width = 1; _local14.height = _local11; topShadow = new BitmapData(1, _local11); topShadow.copyPixels(shadow, _local14, _local13); } else { topShadow = null; }; if (_local12 > 0){ _local14.x = ((blRadius + _local9) + _local10); _local14.y = (shadow.height - _local12); _local14.width = 1; _local14.height = _local12; bottomShadow = new BitmapData(1, _local12); bottomShadow.copyPixels(shadow, _local14, _local13); } else { bottomShadow = null; }; } public function get alpha():Number{ return (_alpha); } public function get color():int{ return (_color); } public function set angle(_arg1:Number):void{ if (_angle != _arg1){ _angle = _arg1; changed = true; }; } public function set trRadius(_arg1:Number):void{ if (_trRadius != _arg1){ _trRadius = _arg1; changed = true; }; } public function set tlRadius(_arg1:Number):void{ if (_tlRadius != _arg1){ _tlRadius = _arg1; changed = true; }; } public function get trRadius():Number{ return (_trRadius); } public function set distance(_arg1:Number):void{ if (_distance != _arg1){ _distance = _arg1; changed = true; }; } public function get distance():Number{ return (_distance); } public function get tlRadius():Number{ return (_tlRadius); } public function set alpha(_arg1:Number):void{ if (_alpha != _arg1){ _alpha = _arg1; changed = true; }; } public function set blRadius(_arg1:Number):void{ if (_blRadius != _arg1){ _blRadius = _arg1; changed = true; }; } } }//package mx.graphics
Section 137
//IFocusManager (mx.managers.IFocusManager) package mx.managers { import flash.events.*; import mx.core.*; import flash.display.*; public interface IFocusManager { function get focusPane():Sprite; function getFocus():IFocusManagerComponent; function deactivate():void; function set defaultButton(_arg1:IButton):void; function set focusPane(_arg1:Sprite):void; function set showFocusIndicator(_arg1:Boolean):void; function moveFocus(_arg1:String, _arg2:DisplayObject=null):void; function addSWFBridge(_arg1:IEventDispatcher, _arg2:DisplayObject):void; function removeSWFBridge(_arg1:IEventDispatcher):void; function get defaultButtonEnabled():Boolean; function findFocusManagerComponent(_arg1:InteractiveObject):IFocusManagerComponent; function get nextTabIndex():int; function get defaultButton():IButton; function get showFocusIndicator():Boolean; function setFocus(_arg1:IFocusManagerComponent):void; function activate():void; function showFocus():void; function set defaultButtonEnabled(_arg1:Boolean):void; function hideFocus():void; function getNextFocusManagerComponent(_arg1:Boolean=false):IFocusManagerComponent; } }//package mx.managers
Section 138
//IFocusManagerComponent (mx.managers.IFocusManagerComponent) package mx.managers { public interface IFocusManagerComponent { function set focusEnabled(_arg1:Boolean):void; function drawFocus(_arg1:Boolean):void; function setFocus():void; function get focusEnabled():Boolean; function get tabEnabled():Boolean; function get tabIndex():int; function get mouseFocusEnabled():Boolean; } }//package mx.managers
Section 139
//IFocusManagerContainer (mx.managers.IFocusManagerContainer) package mx.managers { import flash.events.*; import flash.display.*; public interface IFocusManagerContainer extends IEventDispatcher { function set focusManager(_arg1:IFocusManager):void; function get focusManager():IFocusManager; function get systemManager():ISystemManager; function contains(_arg1:DisplayObject):Boolean; } }//package mx.managers
Section 140
//ILayoutManager (mx.managers.ILayoutManager) package mx.managers { import flash.events.*; public interface ILayoutManager extends IEventDispatcher { function validateNow():void; function validateClient(_arg1:ILayoutManagerClient, _arg2:Boolean=false):void; function isInvalid():Boolean; function invalidateDisplayList(_arg1:ILayoutManagerClient):void; function set usePhasedInstantiation(_arg1:Boolean):void; function invalidateSize(_arg1:ILayoutManagerClient):void; function get usePhasedInstantiation():Boolean; function invalidateProperties(_arg1:ILayoutManagerClient):void; } }//package mx.managers
Section 141
//ILayoutManagerClient (mx.managers.ILayoutManagerClient) package mx.managers { import flash.events.*; public interface ILayoutManagerClient extends IEventDispatcher { function get updateCompletePendingFlag():Boolean; function set updateCompletePendingFlag(_arg1:Boolean):void; function set initialized(_arg1:Boolean):void; function validateProperties():void; function validateDisplayList():void; function get nestLevel():int; function get initialized():Boolean; function get processedDescriptors():Boolean; function validateSize(_arg1:Boolean=false):void; function set nestLevel(_arg1:int):void; function set processedDescriptors(_arg1:Boolean):void; } }//package mx.managers
Section 142
//ISystemManager (mx.managers.ISystemManager) package mx.managers { import flash.events.*; import mx.core.*; import flash.display.*; import flash.geom.*; import flash.text.*; public interface ISystemManager extends IEventDispatcher, IChildList, IFlexModuleFactory { function set focusPane(_arg1:Sprite):void; function get toolTipChildren():IChildList; function useSWFBridge():Boolean; function isFontFaceEmbedded(_arg1:TextFormat):Boolean; function deployMouseShields(_arg1:Boolean):void; function get rawChildren():IChildList; function get topLevelSystemManager():ISystemManager; function dispatchEventFromSWFBridges(_arg1:Event, _arg2:IEventDispatcher=null, _arg3:Boolean=false, _arg4:Boolean=false):void; function getSandboxRoot():DisplayObject; function get swfBridgeGroup():ISWFBridgeGroup; function removeFocusManager(_arg1:IFocusManagerContainer):void; function addChildToSandboxRoot(_arg1:String, _arg2:DisplayObject):void; function get document():Object; function get focusPane():Sprite; function get loaderInfo():LoaderInfo; function addChildBridge(_arg1:IEventDispatcher, _arg2:DisplayObject):void; function getTopLevelRoot():DisplayObject; function removeChildBridge(_arg1:IEventDispatcher):void; function isDisplayObjectInABridgedApplication(_arg1:DisplayObject):Boolean; function get popUpChildren():IChildList; function get screen():Rectangle; function removeChildFromSandboxRoot(_arg1:String, _arg2:DisplayObject):void; function getDefinitionByName(_arg1:String):Object; function activate(_arg1:IFocusManagerContainer):void; function deactivate(_arg1:IFocusManagerContainer):void; function get cursorChildren():IChildList; function set document(_arg1:Object):void; function get embeddedFontList():Object; function set numModalWindows(_arg1:int):void; function isTopLevel():Boolean; function isTopLevelRoot():Boolean; function get numModalWindows():int; function addFocusManager(_arg1:IFocusManagerContainer):void; function get stage():Stage; function getVisibleApplicationRect(_arg1:Rectangle=null):Rectangle; } }//package mx.managers
Section 143
//SystemManagerGlobals (mx.managers.SystemManagerGlobals) package mx.managers { public class SystemManagerGlobals { public static var topLevelSystemManagers:Array = []; public static var changingListenersInOtherSystemManagers:Boolean; public static var bootstrapLoaderInfoURL:String; public static var showMouseCursor:Boolean; public static var dispatchingEventToOtherSystemManagers:Boolean; } }//package mx.managers
Section 144
//IModuleInfo (mx.modules.IModuleInfo) package mx.modules { import flash.events.*; import mx.core.*; import flash.utils.*; import flash.system.*; public interface IModuleInfo extends IEventDispatcher { function get ready():Boolean; function get loaded():Boolean; function load(_arg1:ApplicationDomain=null, _arg2:SecurityDomain=null, _arg3:ByteArray=null):void; function release():void; function get error():Boolean; function get data():Object; function publish(_arg1:IFlexModuleFactory):void; function get factory():IFlexModuleFactory; function set data(_arg1:Object):void; function get url():String; function get setup():Boolean; function unload():void; } }//package mx.modules
Section 145
//ModuleManager (mx.modules.ModuleManager) package mx.modules { import mx.core.*; public class ModuleManager { mx_internal static const VERSION:String = "3.5.0.12683"; public static function getModule(_arg1:String):IModuleInfo{ return (getSingleton().getModule(_arg1)); } private static function getSingleton():Object{ if (!ModuleManagerGlobals.managerSingleton){ ModuleManagerGlobals.managerSingleton = new ModuleManagerImpl(); }; return (ModuleManagerGlobals.managerSingleton); } public static function getAssociatedFactory(_arg1:Object):IFlexModuleFactory{ return (getSingleton().getAssociatedFactory(_arg1)); } } }//package mx.modules import flash.events.*; import mx.core.*; import flash.display.*; import flash.utils.*; import flash.system.*; import mx.events.*; import flash.net.*; class ModuleInfoProxy extends EventDispatcher implements IModuleInfo { private var _data:Object; private var info:ModuleInfo; private var referenced:Boolean;// = false private function ModuleInfoProxy(_arg1:ModuleInfo){ this.info = _arg1; _arg1.addEventListener(ModuleEvent.SETUP, moduleEventHandler, false, 0, true); _arg1.addEventListener(ModuleEvent.PROGRESS, moduleEventHandler, false, 0, true); _arg1.addEventListener(ModuleEvent.READY, moduleEventHandler, false, 0, true); _arg1.addEventListener(ModuleEvent.ERROR, moduleEventHandler, false, 0, true); _arg1.addEventListener(ModuleEvent.UNLOAD, moduleEventHandler, false, 0, true); } public function get loaded():Boolean{ return (info.loaded); } public function release():void{ if (referenced){ info.removeReference(); referenced = false; }; } public function get error():Boolean{ return (info.error); } public function get factory():IFlexModuleFactory{ return (info.factory); } public function publish(_arg1:IFlexModuleFactory):void{ info.publish(_arg1); } public function set data(_arg1:Object):void{ _data = _arg1; } public function get ready():Boolean{ return (info.ready); } public function load(_arg1:ApplicationDomain=null, _arg2:SecurityDomain=null, _arg3:ByteArray=null):void{ var _local4:ModuleEvent; info.resurrect(); if (!referenced){ info.addReference(); referenced = true; }; if (info.error){ dispatchEvent(new ModuleEvent(ModuleEvent.ERROR)); } else { if (info.loaded){ if (info.setup){ dispatchEvent(new ModuleEvent(ModuleEvent.SETUP)); if (info.ready){ _local4 = new ModuleEvent(ModuleEvent.PROGRESS); _local4.bytesLoaded = info.size; _local4.bytesTotal = info.size; dispatchEvent(_local4); dispatchEvent(new ModuleEvent(ModuleEvent.READY)); }; }; } else { info.load(_arg1, _arg2, _arg3); }; }; } private function moduleEventHandler(_arg1:ModuleEvent):void{ dispatchEvent(_arg1); } public function get url():String{ return (info.url); } public function get data():Object{ return (_data); } public function get setup():Boolean{ return (info.setup); } public function unload():void{ info.unload(); info.removeEventListener(ModuleEvent.SETUP, moduleEventHandler); info.removeEventListener(ModuleEvent.PROGRESS, moduleEventHandler); info.removeEventListener(ModuleEvent.READY, moduleEventHandler); info.removeEventListener(ModuleEvent.ERROR, moduleEventHandler); info.removeEventListener(ModuleEvent.UNLOAD, moduleEventHandler); } } class ModuleManagerImpl extends EventDispatcher { private var moduleList:Object; private function ModuleManagerImpl(){ moduleList = {}; super(); } public function getModule(_arg1:String):IModuleInfo{ var _local2:ModuleInfo = (moduleList[_arg1] as ModuleInfo); if (!_local2){ _local2 = new ModuleInfo(_arg1); moduleList[_arg1] = _local2; }; return (new ModuleInfoProxy(_local2)); } public function getAssociatedFactory(_arg1:Object):IFlexModuleFactory{ var m:Object; var info:ModuleInfo; var domain:ApplicationDomain; var cls:Class; var object = _arg1; var className:String = getQualifiedClassName(object); for each (m in moduleList) { info = (m as ModuleInfo); if (!info.ready){ } else { domain = info.applicationDomain; try { cls = Class(domain.getDefinition(className)); if ((object is cls)){ return (info.factory); }; } catch(error:Error) { }; }; }; return (null); } } class ModuleInfo extends EventDispatcher { private var _error:Boolean;// = false private var loader:Loader; private var factoryInfo:FactoryInfo; private var limbo:Dictionary; private var _loaded:Boolean;// = false private var _ready:Boolean;// = false private var numReferences:int;// = 0 private var _url:String; private var _setup:Boolean;// = false private function ModuleInfo(_arg1:String){ _url = _arg1; } private function clearLoader():void{ if (loader){ if (loader.contentLoaderInfo){ loader.contentLoaderInfo.removeEventListener(Event.INIT, initHandler); loader.contentLoaderInfo.removeEventListener(Event.COMPLETE, completeHandler); loader.contentLoaderInfo.removeEventListener(ProgressEvent.PROGRESS, progressHandler); loader.contentLoaderInfo.removeEventListener(IOErrorEvent.IO_ERROR, errorHandler); loader.contentLoaderInfo.removeEventListener(SecurityErrorEvent.SECURITY_ERROR, errorHandler); }; try { if (loader.content){ loader.content.removeEventListener("ready", readyHandler); loader.content.removeEventListener("error", moduleErrorHandler); }; } catch(error:Error) { }; if (_loaded){ try { loader.close(); } catch(error:Error) { }; }; try { loader.unload(); } catch(error:Error) { }; loader = null; }; } public function get size():int{ return ((((!(limbo)) && (factoryInfo))) ? factoryInfo.bytesTotal : 0); } public function get loaded():Boolean{ return ((limbo) ? false : _loaded); } public function release():void{ if (((_ready) && (!(limbo)))){ limbo = new Dictionary(true); limbo[factoryInfo] = 1; factoryInfo = null; } else { unload(); }; } public function get error():Boolean{ return ((limbo) ? false : _error); } public function get factory():IFlexModuleFactory{ return ((((!(limbo)) && (factoryInfo))) ? factoryInfo.factory : null); } public function completeHandler(_arg1:Event):void{ var _local2:ModuleEvent = new ModuleEvent(ModuleEvent.PROGRESS, _arg1.bubbles, _arg1.cancelable); _local2.bytesLoaded = loader.contentLoaderInfo.bytesLoaded; _local2.bytesTotal = loader.contentLoaderInfo.bytesTotal; dispatchEvent(_local2); } public function publish(_arg1:IFlexModuleFactory):void{ if (factoryInfo){ return; }; if (_url.indexOf("published://") != 0){ return; }; factoryInfo = new FactoryInfo(); factoryInfo.factory = _arg1; _loaded = true; _setup = true; _ready = true; _error = false; dispatchEvent(new ModuleEvent(ModuleEvent.SETUP)); dispatchEvent(new ModuleEvent(ModuleEvent.PROGRESS)); dispatchEvent(new ModuleEvent(ModuleEvent.READY)); } public function initHandler(_arg1:Event):void{ var moduleEvent:ModuleEvent; var event = _arg1; factoryInfo = new FactoryInfo(); try { factoryInfo.factory = (loader.content as IFlexModuleFactory); } catch(error:Error) { }; if (!factoryInfo.factory){ moduleEvent = new ModuleEvent(ModuleEvent.ERROR, event.bubbles, event.cancelable); moduleEvent.bytesLoaded = 0; moduleEvent.bytesTotal = 0; moduleEvent.errorText = "SWF is not a loadable module"; dispatchEvent(moduleEvent); return; }; loader.content.addEventListener("ready", readyHandler); loader.content.addEventListener("error", moduleErrorHandler); try { factoryInfo.applicationDomain = loader.contentLoaderInfo.applicationDomain; } catch(error:Error) { }; _setup = true; dispatchEvent(new ModuleEvent(ModuleEvent.SETUP)); } public function resurrect():void{ var _local1:Object; if (((!(factoryInfo)) && (limbo))){ for (_local1 in limbo) { factoryInfo = (_local1 as FactoryInfo); break; }; limbo = null; }; if (!factoryInfo){ if (_loaded){ dispatchEvent(new ModuleEvent(ModuleEvent.UNLOAD)); }; loader = null; _loaded = false; _setup = false; _ready = false; _error = false; }; } public function errorHandler(_arg1:ErrorEvent):void{ _error = true; var _local2:ModuleEvent = new ModuleEvent(ModuleEvent.ERROR, _arg1.bubbles, _arg1.cancelable); _local2.bytesLoaded = 0; _local2.bytesTotal = 0; _local2.errorText = _arg1.text; dispatchEvent(_local2); } public function get ready():Boolean{ return ((limbo) ? false : _ready); } private function loadBytes(_arg1:ApplicationDomain, _arg2:ByteArray):void{ var _local3:LoaderContext = new LoaderContext(); _local3.applicationDomain = (_arg1) ? _arg1 : new ApplicationDomain(ApplicationDomain.currentDomain); if (("allowLoadBytesCodeExecution" in _local3)){ _local3["allowLoadBytesCodeExecution"] = true; }; loader = new Loader(); loader.contentLoaderInfo.addEventListener(Event.INIT, initHandler); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler); loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, errorHandler); loader.contentLoaderInfo.addEventListener(SecurityErrorEvent.SECURITY_ERROR, errorHandler); loader.loadBytes(_arg2, _local3); } public function removeReference():void{ numReferences--; if (numReferences == 0){ release(); }; } public function addReference():void{ numReferences++; } public function progressHandler(_arg1:ProgressEvent):void{ var _local2:ModuleEvent = new ModuleEvent(ModuleEvent.PROGRESS, _arg1.bubbles, _arg1.cancelable); _local2.bytesLoaded = _arg1.bytesLoaded; _local2.bytesTotal = _arg1.bytesTotal; dispatchEvent(_local2); } public function load(_arg1:ApplicationDomain=null, _arg2:SecurityDomain=null, _arg3:ByteArray=null):void{ if (_loaded){ return; }; _loaded = true; limbo = null; if (_arg3){ loadBytes(_arg1, _arg3); return; }; if (_url.indexOf("published://") == 0){ return; }; var _local4:URLRequest = new URLRequest(_url); var _local5:LoaderContext = new LoaderContext(); _local5.applicationDomain = (_arg1) ? _arg1 : new ApplicationDomain(ApplicationDomain.currentDomain); _local5.securityDomain = _arg2; if ((((_arg2 == null)) && ((Security.sandboxType == Security.REMOTE)))){ _local5.securityDomain = SecurityDomain.currentDomain; }; loader = new Loader(); loader.contentLoaderInfo.addEventListener(Event.INIT, initHandler); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler); loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, progressHandler); loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, errorHandler); loader.contentLoaderInfo.addEventListener(SecurityErrorEvent.SECURITY_ERROR, errorHandler); loader.load(_local4, _local5); } public function get url():String{ return (_url); } public function get applicationDomain():ApplicationDomain{ return ((((!(limbo)) && (factoryInfo))) ? factoryInfo.applicationDomain : null); } public function moduleErrorHandler(_arg1:Event):void{ var _local2:ModuleEvent; _ready = true; factoryInfo.bytesTotal = loader.contentLoaderInfo.bytesTotal; clearLoader(); if ((_arg1 is ModuleEvent)){ _local2 = ModuleEvent(_arg1); } else { _local2 = new ModuleEvent(ModuleEvent.ERROR); }; dispatchEvent(_local2); } public function readyHandler(_arg1:Event):void{ _ready = true; factoryInfo.bytesTotal = loader.contentLoaderInfo.bytesTotal; var _local2:ModuleEvent = new ModuleEvent(ModuleEvent.READY); _local2.bytesLoaded = loader.contentLoaderInfo.bytesLoaded; _local2.bytesTotal = loader.contentLoaderInfo.bytesTotal; clearLoader(); dispatchEvent(_local2); } public function get setup():Boolean{ return ((limbo) ? false : _setup); } public function unload():void{ clearLoader(); if (_loaded){ dispatchEvent(new ModuleEvent(ModuleEvent.UNLOAD)); }; limbo = null; factoryInfo = null; _loaded = false; _setup = false; _ready = false; _error = false; } } class FactoryInfo { public var bytesTotal:int;// = 0 public var factory:IFlexModuleFactory; public var applicationDomain:ApplicationDomain; private function FactoryInfo(){ } }
Section 146
//ModuleManagerGlobals (mx.modules.ModuleManagerGlobals) package mx.modules { public class ModuleManagerGlobals { public static var managerSingleton:Object = null; } }//package mx.modules
Section 147
//IResourceBundle (mx.resources.IResourceBundle) package mx.resources { public interface IResourceBundle { function get content():Object; function get locale():String; function get bundleName():String; } }//package mx.resources
Section 148
//IResourceManager (mx.resources.IResourceManager) package mx.resources { import flash.events.*; import flash.system.*; public interface IResourceManager extends IEventDispatcher { function loadResourceModule(_arg1:String, _arg2:Boolean=true, _arg3:ApplicationDomain=null, _arg4:SecurityDomain=null):IEventDispatcher; function getBoolean(_arg1:String, _arg2:String, _arg3:String=null):Boolean; function getClass(_arg1:String, _arg2:String, _arg3:String=null):Class; function getLocales():Array; function removeResourceBundlesForLocale(_arg1:String):void; function getResourceBundle(_arg1:String, _arg2:String):IResourceBundle; function get localeChain():Array; function getInt(_arg1:String, _arg2:String, _arg3:String=null):int; function update():void; function set localeChain(_arg1:Array):void; function getUint(_arg1:String, _arg2:String, _arg3:String=null):uint; function addResourceBundle(_arg1:IResourceBundle):void; function getStringArray(_arg1:String, _arg2:String, _arg3:String=null):Array; function getBundleNamesForLocale(_arg1:String):Array; function removeResourceBundle(_arg1:String, _arg2:String):void; function getObject(_arg1:String, _arg2:String, _arg3:String=null); function getString(_arg1:String, _arg2:String, _arg3:Array=null, _arg4:String=null):String; function installCompiledResourceBundles(_arg1:ApplicationDomain, _arg2:Array, _arg3:Array):void; function unloadResourceModule(_arg1:String, _arg2:Boolean=true):void; function getPreferredLocaleChain():Array; function findResourceBundleWithResource(_arg1:String, _arg2:String):IResourceBundle; function initializeLocaleChain(_arg1:Array):void; function getNumber(_arg1:String, _arg2:String, _arg3:String=null):Number; } }//package mx.resources
Section 149
//IResourceModule (mx.resources.IResourceModule) package mx.resources { public interface IResourceModule { function get resourceBundles():Array; } }//package mx.resources
Section 150
//LocaleSorter (mx.resources.LocaleSorter) package mx.resources { public class LocaleSorter { mx_internal static const VERSION:String = "3.5.0.12683"; private static function normalizeLocale(_arg1:String):String{ return (_arg1.toLowerCase().replace(/-/g, "_")); } public static function sortLocalesByPreference(_arg1:Array, _arg2:Array, _arg3:String=null, _arg4:Boolean=false):Array{ var result:Array; var hasLocale:Object; var i:int; var j:int; var k:int; var l:int; var locale:String; var plocale:LocaleID; var appLocales = _arg1; var systemPreferences = _arg2; var ultimateFallbackLocale = _arg3; var addAll = _arg4; var promote:Function = function (_arg1:String):void{ if (typeof(hasLocale[_arg1]) != "undefined"){ result.push(appLocales[hasLocale[_arg1]]); delete hasLocale[_arg1]; }; }; result = []; hasLocale = {}; var locales:Array = trimAndNormalize(appLocales); var preferenceLocales:Array = trimAndNormalize(systemPreferences); addUltimateFallbackLocale(preferenceLocales, ultimateFallbackLocale); j = 0; while (j < locales.length) { hasLocale[locales[j]] = j; j = (j + 1); }; i = 0; l = preferenceLocales.length; while (i < l) { plocale = LocaleID.fromString(preferenceLocales[i]); promote(preferenceLocales[i]); promote(plocale.toString()); while (plocale.transformToParent()) { promote(plocale.toString()); }; plocale = LocaleID.fromString(preferenceLocales[i]); j = 0; while (j < l) { locale = preferenceLocales[j]; if (plocale.isSiblingOf(LocaleID.fromString(locale))){ promote(locale); }; j = (j + 1); }; j = 0; k = locales.length; while (j < k) { locale = locales[j]; if (plocale.isSiblingOf(LocaleID.fromString(locale))){ promote(locale); }; j = (j + 1); }; i = (i + 1); }; if (addAll){ j = 0; k = locales.length; while (j < k) { promote(locales[j]); j = (j + 1); }; }; return (result); } private static function addUltimateFallbackLocale(_arg1:Array, _arg2:String):void{ var _local3:String; if (((!((_arg2 == null))) && (!((_arg2 == ""))))){ _local3 = normalizeLocale(_arg2); if (_arg1.indexOf(_local3) == -1){ _arg1.push(_local3); }; }; } private static function trimAndNormalize(_arg1:Array):Array{ var _local2:Array = []; var _local3:int; while (_local3 < _arg1.length) { _local2.push(normalizeLocale(_arg1[_local3])); _local3++; }; return (_local2); } } }//package mx.resources class LocaleID { private var privateLangs:Boolean;// = false private var script:String;// = "" private var variants:Array; private var privates:Array; private var extensions:Object; private var lang:String;// = "" private var region:String;// = "" private var extended_langs:Array; public static const STATE_PRIMARY_LANGUAGE:int = 0; public static const STATE_REGION:int = 3; public static const STATE_EXTENDED_LANGUAGES:int = 1; public static const STATE_EXTENSIONS:int = 5; public static const STATE_SCRIPT:int = 2; public static const STATE_VARIANTS:int = 4; public static const STATE_PRIVATES:int = 6; private function LocaleID(){ extended_langs = []; variants = []; extensions = {}; privates = []; super(); } public function equals(_arg1:LocaleID):Boolean{ return ((toString() == _arg1.toString())); } public function canonicalize():void{ var _local1:String; for (_local1 in extensions) { if (extensions.hasOwnProperty(_local1)){ if (extensions[_local1].length == 0){ delete extensions[_local1]; } else { extensions[_local1] = extensions[_local1].sort(); }; }; }; extended_langs = extended_langs.sort(); variants = variants.sort(); privates = privates.sort(); if (script == ""){ script = LocaleRegistry.getScriptByLang(lang); }; if ((((script == "")) && (!((region == ""))))){ script = LocaleRegistry.getScriptByLangAndRegion(lang, region); }; if ((((region == "")) && (!((script == ""))))){ region = LocaleRegistry.getDefaultRegionForLangAndScript(lang, script); }; } public function toString():String{ var _local2:String; var _local1:Array = [lang]; appendElements(_local1, extended_langs); if (script != ""){ _local1.push(script); }; if (region != ""){ _local1.push(region); }; appendElements(_local1, variants); for (_local2 in extensions) { if (extensions.hasOwnProperty(_local2)){ _local1.push(_local2); appendElements(_local1, extensions[_local2]); }; }; if (privates.length > 0){ _local1.push("x"); appendElements(_local1, privates); }; return (_local1.join("_")); } public function isSiblingOf(_arg1:LocaleID):Boolean{ return ((((lang == _arg1.lang)) && ((script == _arg1.script)))); } public function transformToParent():Boolean{ var _local2:String; var _local3:Array; var _local4:String; if (privates.length > 0){ privates.splice((privates.length - 1), 1); return (true); }; var _local1:String; for (_local2 in extensions) { if (extensions.hasOwnProperty(_local2)){ _local1 = _local2; }; }; if (_local1){ _local3 = extensions[_local1]; if (_local3.length == 1){ delete extensions[_local1]; return (true); }; _local3.splice((_local3.length - 1), 1); return (true); }; if (variants.length > 0){ variants.splice((variants.length - 1), 1); return (true); }; if (script != ""){ if (LocaleRegistry.getScriptByLang(lang) != ""){ script = ""; return (true); }; if (region == ""){ _local4 = LocaleRegistry.getDefaultRegionForLangAndScript(lang, script); if (_local4 != ""){ region = _local4; script = ""; return (true); }; }; }; if (region != ""){ if (!(((script == "")) && ((LocaleRegistry.getScriptByLang(lang) == "")))){ region = ""; return (true); }; }; if (extended_langs.length > 0){ extended_langs.splice((extended_langs.length - 1), 1); return (true); }; return (false); } private static function appendElements(_arg1:Array, _arg2:Array):void{ var _local3:uint; var _local4:uint = _arg2.length; while (_local3 < _local4) { _arg1.push(_arg2[_local3]); _local3++; }; } public static function fromString(_arg1:String):LocaleID{ var _local5:Array; var _local8:String; var _local9:int; var _local10:String; var _local2:LocaleID = new (LocaleID); var _local3:int = STATE_PRIMARY_LANGUAGE; var _local4:Array = _arg1.replace(/-/g, "_").split("_"); var _local6:int; var _local7:int = _local4.length; while (_local6 < _local7) { _local8 = _local4[_local6].toLowerCase(); if (_local3 == STATE_PRIMARY_LANGUAGE){ if (_local8 == "x"){ _local2.privateLangs = true; } else { if (_local8 == "i"){ _local2.lang = (_local2.lang + "i-"); } else { _local2.lang = (_local2.lang + _local8); _local3 = STATE_EXTENDED_LANGUAGES; }; }; } else { _local9 = _local8.length; if (_local9 == 0){ } else { _local10 = _local8.charAt(0).toLowerCase(); if ((((_local3 <= STATE_EXTENDED_LANGUAGES)) && ((_local9 == 3)))){ _local2.extended_langs.push(_local8); if (_local2.extended_langs.length == 3){ _local3 = STATE_SCRIPT; }; } else { if ((((_local3 <= STATE_SCRIPT)) && ((_local9 == 4)))){ _local2.script = _local8; _local3 = STATE_REGION; } else { if ((((_local3 <= STATE_REGION)) && ((((_local9 == 2)) || ((_local9 == 3)))))){ _local2.region = _local8; _local3 = STATE_VARIANTS; } else { if ((((_local3 <= STATE_VARIANTS)) && ((((((((_local10 >= "a")) && ((_local10 <= "z")))) && ((_local9 >= 5)))) || ((((((_local10 >= "0")) && ((_local10 <= "9")))) && ((_local9 >= 4)))))))){ _local2.variants.push(_local8); _local3 = STATE_VARIANTS; } else { if ((((_local3 < STATE_PRIVATES)) && ((_local9 == 1)))){ if (_local8 == "x"){ _local3 = STATE_PRIVATES; _local5 = _local2.privates; } else { _local3 = STATE_EXTENSIONS; _local5 = ((_local2.extensions[_local8]) || ([])); _local2.extensions[_local8] = _local5; }; } else { if (_local3 >= STATE_EXTENSIONS){ _local5.push(_local8); }; }; }; }; }; }; }; }; _local6++; }; _local2.canonicalize(); return (_local2); } } class LocaleRegistry { private static const SCRIPT_ID_BY_LANG:Object = {ab:5, af:1, am:2, ar:3, as:4, ay:1, be:5, bg:5, bn:4, bs:1, ca:1, ch:1, cs:1, cy:1, da:1, de:1, dv:6, dz:7, el:8, en:1, eo:1, es:1, et:1, eu:1, fa:3, fi:1, fj:1, fo:1, fr:1, frr:1, fy:1, ga:1, gl:1, gn:1, gu:9, gv:1, he:10, hi:11, hr:1, ht:1, hu:1, hy:12, id:1, in:1, is:1, it:1, iw:10, ja:13, ka:14, kk:5, kl:1, km:15, kn:16, ko:17, la:1, lb:1, ln:1, lo:18, lt:1, lv:1, mg:1, mh:1, mk:5, ml:19, mo:1, mr:11, ms:1, mt:1, my:20, na:1, nb:1, nd:1, ne:11, nl:1, nn:1, no:1, nr:1, ny:1, om:1, or:21, pa:22, pl:1, ps:3, pt:1, qu:1, rn:1, ro:1, ru:5, rw:1, sg:1, si:23, sk:1, sl:1, sm:1, so:1, sq:1, ss:1, st:1, sv:1, sw:1, ta:24, te:25, th:26, ti:2, tl:1, tn:1, to:1, tr:1, ts:1, uk:5, ur:3, ve:1, vi:1, wo:1, xh:1, yi:10, zu:1, cpe:1, dsb:1, frs:1, gsw:1, hsb:1, kok:11, mai:11, men:1, nds:1, niu:1, nqo:27, nso:1, son:1, tem:1, tkl:1, tmh:1, tpi:1, tvl:1, zbl:28}; private static const SCRIPTS:Array = ["", "latn", "ethi", "arab", "beng", "cyrl", "thaa", "tibt", "grek", "gujr", "hebr", "deva", "armn", "jpan", "geor", "khmr", "knda", "kore", "laoo", "mlym", "mymr", "orya", "guru", "sinh", "taml", "telu", "thai", "nkoo", "blis", "hans", "hant", "mong", "syrc"]; private static const DEFAULT_REGION_BY_LANG_AND_SCRIPT:Object = {bg:{5:"bg"}, ca:{1:"es"}, zh:{30:"tw", 29:"cn"}, cs:{1:"cz"}, da:{1:"dk"}, de:{1:"de"}, el:{8:"gr"}, en:{1:"us"}, es:{1:"es"}, fi:{1:"fi"}, fr:{1:"fr"}, he:{10:"il"}, hu:{1:"hu"}, is:{1:"is"}, it:{1:"it"}, ja:{13:"jp"}, ko:{17:"kr"}, nl:{1:"nl"}, nb:{1:"no"}, pl:{1:"pl"}, pt:{1:"br"}, ro:{1:"ro"}, ru:{5:"ru"}, hr:{1:"hr"}, sk:{1:"sk"}, sq:{1:"al"}, sv:{1:"se"}, th:{26:"th"}, tr:{1:"tr"}, ur:{3:"pk"}, id:{1:"id"}, uk:{5:"ua"}, be:{5:"by"}, sl:{1:"si"}, et:{1:"ee"}, lv:{1:"lv"}, lt:{1:"lt"}, fa:{3:"ir"}, vi:{1:"vn"}, hy:{12:"am"}, az:{1:"az", 5:"az"}, eu:{1:"es"}, mk:{5:"mk"}, af:{1:"za"}, ka:{14:"ge"}, fo:{1:"fo"}, hi:{11:"in"}, ms:{1:"my"}, kk:{5:"kz"}, ky:{5:"kg"}, sw:{1:"ke"}, uz:{1:"uz", 5:"uz"}, tt:{5:"ru"}, pa:{22:"in"}, gu:{9:"in"}, ta:{24:"in"}, te:{25:"in"}, kn:{16:"in"}, mr:{11:"in"}, sa:{11:"in"}, mn:{5:"mn"}, gl:{1:"es"}, kok:{11:"in"}, syr:{32:"sy"}, dv:{6:"mv"}, nn:{1:"no"}, sr:{1:"cs", 5:"cs"}, cy:{1:"gb"}, mi:{1:"nz"}, mt:{1:"mt"}, quz:{1:"bo"}, tn:{1:"za"}, xh:{1:"za"}, zu:{1:"za"}, nso:{1:"za"}, se:{1:"no"}, smj:{1:"no"}, sma:{1:"no"}, sms:{1:"fi"}, smn:{1:"fi"}, bs:{1:"ba"}}; private static const SCRIPT_BY_ID:Object = {latn:1, ethi:2, arab:3, beng:4, cyrl:5, thaa:6, tibt:7, grek:8, gujr:9, hebr:10, deva:11, armn:12, jpan:13, geor:14, khmr:15, knda:16, kore:17, laoo:18, mlym:19, mymr:20, orya:21, guru:22, sinh:23, taml:24, telu:25, thai:26, nkoo:27, blis:28, hans:29, hant:30, mong:31, syrc:32}; private static const SCRIPT_ID_BY_LANG_AND_REGION:Object = {zh:{cn:29, sg:29, tw:30, hk:30, mo:30}, mn:{cn:31, sg:5}, pa:{pk:3, in:22}, ha:{gh:1, ne:1}}; private function LocaleRegistry(){ } public static function getScriptByLangAndRegion(_arg1:String, _arg2:String):String{ var _local3:Object = SCRIPT_ID_BY_LANG_AND_REGION[_arg1]; if (_local3 == null){ return (""); }; var _local4:Object = _local3[_arg2]; if (_local4 == null){ return (""); }; return (SCRIPTS[int(_local4)].toLowerCase()); } public static function getScriptByLang(_arg1:String):String{ var _local2:Object = SCRIPT_ID_BY_LANG[_arg1]; if (_local2 == null){ return (""); }; return (SCRIPTS[int(_local2)].toLowerCase()); } public static function getDefaultRegionForLangAndScript(_arg1:String, _arg2:String):String{ var _local3:Object = DEFAULT_REGION_BY_LANG_AND_SCRIPT[_arg1]; var _local4:Object = SCRIPT_BY_ID[_arg2]; if ((((_local3 == null)) || ((_local4 == null)))){ return (""); }; return (((_local3[int(_local4)]) || (""))); } }
Section 151
//ResourceBundle (mx.resources.ResourceBundle) package mx.resources { import mx.core.*; import flash.system.*; import mx.utils.*; public class ResourceBundle implements IResourceBundle { mx_internal var _locale:String; private var _content:Object; mx_internal var _bundleName:String; mx_internal static const VERSION:String = "3.5.0.12683"; mx_internal static var backupApplicationDomain:ApplicationDomain; mx_internal static var locale:String; public function ResourceBundle(_arg1:String=null, _arg2:String=null){ _content = {}; super(); mx_internal::_locale = _arg1; mx_internal::_bundleName = _arg2; _content = getContent(); } protected function getContent():Object{ return ({}); } public function getString(_arg1:String):String{ return (String(_getObject(_arg1))); } public function get content():Object{ return (_content); } public function getBoolean(_arg1:String, _arg2:Boolean=true):Boolean{ var _local3:String = _getObject(_arg1).toLowerCase(); if (_local3 == "false"){ return (false); }; if (_local3 == "true"){ return (true); }; return (_arg2); } public function getStringArray(_arg1:String):Array{ var _local2:Array = _getObject(_arg1).split(","); var _local3:int = _local2.length; var _local4:int; while (_local4 < _local3) { _local2[_local4] = StringUtil.trim(_local2[_local4]); _local4++; }; return (_local2); } public function getObject(_arg1:String):Object{ return (_getObject(_arg1)); } private function _getObject(_arg1:String):Object{ var _local2:Object = content[_arg1]; if (!_local2){ throw (new Error(((("Key " + _arg1) + " was not found in resource bundle ") + bundleName))); }; return (_local2); } public function get locale():String{ return (mx_internal::_locale); } public function get bundleName():String{ return (mx_internal::_bundleName); } public function getNumber(_arg1:String):Number{ return (Number(_getObject(_arg1))); } private static function getClassByName(_arg1:String, _arg2:ApplicationDomain):Class{ var _local3:Class; if (_arg2.hasDefinition(_arg1)){ _local3 = (_arg2.getDefinition(_arg1) as Class); }; return (_local3); } public static function getResourceBundle(_arg1:String, _arg2:ApplicationDomain=null):ResourceBundle{ var _local3:String; var _local4:Class; var _local5:Object; var _local6:ResourceBundle; if (!_arg2){ _arg2 = ApplicationDomain.currentDomain; }; _local3 = (((mx_internal::locale + "$") + _arg1) + "_properties"); _local4 = getClassByName(_local3, _arg2); if (!_local4){ _local3 = (_arg1 + "_properties"); _local4 = getClassByName(_local3, _arg2); }; if (!_local4){ _local3 = _arg1; _local4 = getClassByName(_local3, _arg2); }; if (((!(_local4)) && (mx_internal::backupApplicationDomain))){ _local3 = (_arg1 + "_properties"); _local4 = getClassByName(_local3, mx_internal::backupApplicationDomain); if (!_local4){ _local3 = _arg1; _local4 = getClassByName(_local3, mx_internal::backupApplicationDomain); }; }; if (_local4){ _local5 = new (_local4); if ((_local5 is ResourceBundle)){ _local6 = ResourceBundle(_local5); return (_local6); }; }; throw (new Error(("Could not find resource bundle " + _arg1))); } } }//package mx.resources
Section 152
//ResourceManager (mx.resources.ResourceManager) package mx.resources { import mx.core.*; public class ResourceManager { mx_internal static const VERSION:String = "3.5.0.12683"; private static var implClassDependency:ResourceManagerImpl; private static var instance:IResourceManager; public static function getInstance():IResourceManager{ if (!instance){ try { instance = IResourceManager(Singleton.getInstance("mx.resources::IResourceManager")); } catch(e:Error) { instance = new ResourceManagerImpl(); }; }; return (instance); } } }//package mx.resources
Section 153
//ResourceManagerImpl (mx.resources.ResourceManagerImpl) package mx.resources { import flash.events.*; import mx.core.*; import flash.utils.*; import flash.system.*; import mx.modules.*; import mx.events.*; import mx.utils.*; public class ResourceManagerImpl extends EventDispatcher implements IResourceManager { private var resourceModules:Object; private var initializedForNonFrameworkApp:Boolean;// = false private var localeMap:Object; private var _localeChain:Array; mx_internal static const VERSION:String = "3.5.0.12683"; private static var instance:IResourceManager; public function ResourceManagerImpl(){ localeMap = {}; resourceModules = {}; super(); } public function get localeChain():Array{ return (_localeChain); } public function set localeChain(_arg1:Array):void{ _localeChain = _arg1; update(); } public function getStringArray(_arg1:String, _arg2:String, _arg3:String=null):Array{ var _local4:IResourceBundle = findBundle(_arg1, _arg2, _arg3); if (!_local4){ return (null); }; var _local5:* = _local4.content[_arg2]; var _local6:Array = String(_local5).split(","); var _local7:int = _local6.length; var _local8:int; while (_local8 < _local7) { _local6[_local8] = StringUtil.trim(_local6[_local8]); _local8++; }; return (_local6); } mx_internal function installCompiledResourceBundle(_arg1:ApplicationDomain, _arg2:String, _arg3:String):void{ var _local4:String; var _local5:String = _arg3; var _local6:int = _arg3.indexOf(":"); if (_local6 != -1){ _local4 = _arg3.substring(0, _local6); _local5 = _arg3.substring((_local6 + 1)); }; if (getResourceBundle(_arg2, _arg3)){ return; }; var _local7 = (((_arg2 + "$") + _local5) + "_properties"); if (_local4 != null){ _local7 = ((_local4 + ".") + _local7); }; var _local8:Class; if (_arg1.hasDefinition(_local7)){ _local8 = Class(_arg1.getDefinition(_local7)); }; if (!_local8){ _local7 = _arg3; if (_arg1.hasDefinition(_local7)){ _local8 = Class(_arg1.getDefinition(_local7)); }; }; if (!_local8){ _local7 = (_arg3 + "_properties"); if (_arg1.hasDefinition(_local7)){ _local8 = Class(_arg1.getDefinition(_local7)); }; }; if (!_local8){ throw (new Error((((("Could not find compiled resource bundle '" + _arg3) + "' for locale '") + _arg2) + "'."))); }; var _local9:ResourceBundle = ResourceBundle(new (_local8)); _local9.mx_internal::_locale = _arg2; _local9.mx_internal::_bundleName = _arg3; addResourceBundle(_local9); } public function getString(_arg1:String, _arg2:String, _arg3:Array=null, _arg4:String=null):String{ var _local5:IResourceBundle = findBundle(_arg1, _arg2, _arg4); if (!_local5){ return (null); }; var _local6:String = String(_local5.content[_arg2]); if (_arg3){ _local6 = StringUtil.substitute(_local6, _arg3); }; return (_local6); } public function loadResourceModule(_arg1:String, _arg2:Boolean=true, _arg3:ApplicationDomain=null, _arg4:SecurityDomain=null):IEventDispatcher{ var moduleInfo:IModuleInfo; var resourceEventDispatcher:ResourceEventDispatcher; var timer:Timer; var timerHandler:Function; var url = _arg1; var updateFlag = _arg2; var applicationDomain = _arg3; var securityDomain = _arg4; moduleInfo = ModuleManager.getModule(url); resourceEventDispatcher = new ResourceEventDispatcher(moduleInfo); var readyHandler:Function = function (_arg1:ModuleEvent):void{ var _local2:* = _arg1.module.factory.create(); resourceModules[_arg1.module.url].resourceModule = _local2; if (updateFlag){ update(); }; }; moduleInfo.addEventListener(ModuleEvent.READY, readyHandler, false, 0, true); var errorHandler:Function = function (_arg1:ModuleEvent):void{ var _local3:ResourceEvent; var _local2:String = ("Unable to load resource module from " + url); if (resourceEventDispatcher.willTrigger(ResourceEvent.ERROR)){ _local3 = new ResourceEvent(ResourceEvent.ERROR, _arg1.bubbles, _arg1.cancelable); _local3.bytesLoaded = 0; _local3.bytesTotal = 0; _local3.errorText = _local2; resourceEventDispatcher.dispatchEvent(_local3); } else { throw (new Error(_local2)); }; }; moduleInfo.addEventListener(ModuleEvent.ERROR, errorHandler, false, 0, true); resourceModules[url] = new ResourceModuleInfo(moduleInfo, readyHandler, errorHandler); timer = new Timer(0); timerHandler = function (_arg1:TimerEvent):void{ timer.removeEventListener(TimerEvent.TIMER, timerHandler); timer.stop(); moduleInfo.load(applicationDomain, securityDomain); }; timer.addEventListener(TimerEvent.TIMER, timerHandler, false, 0, true); timer.start(); return (resourceEventDispatcher); } public function getLocales():Array{ var _local2:String; var _local1:Array = []; for (_local2 in localeMap) { _local1.push(_local2); }; return (_local1); } public function removeResourceBundlesForLocale(_arg1:String):void{ delete localeMap[_arg1]; } public function getResourceBundle(_arg1:String, _arg2:String):IResourceBundle{ var _local3:Object = localeMap[_arg1]; if (!_local3){ return (null); }; return (_local3[_arg2]); } private function dumpResourceModule(_arg1):void{ var _local2:ResourceBundle; var _local3:String; for each (_local2 in _arg1.resourceBundles) { trace(_local2.locale, _local2.bundleName); for (_local3 in _local2.content) { }; }; } public function addResourceBundle(_arg1:IResourceBundle):void{ var _local2:String = _arg1.locale; var _local3:String = _arg1.bundleName; if (!localeMap[_local2]){ localeMap[_local2] = {}; }; localeMap[_local2][_local3] = _arg1; } public function getObject(_arg1:String, _arg2:String, _arg3:String=null){ var _local4:IResourceBundle = findBundle(_arg1, _arg2, _arg3); if (!_local4){ return (undefined); }; return (_local4.content[_arg2]); } public function getInt(_arg1:String, _arg2:String, _arg3:String=null):int{ var _local4:IResourceBundle = findBundle(_arg1, _arg2, _arg3); if (!_local4){ return (0); }; var _local5:* = _local4.content[_arg2]; return (int(_local5)); } private function findBundle(_arg1:String, _arg2:String, _arg3:String):IResourceBundle{ supportNonFrameworkApps(); return (((_arg3)!=null) ? getResourceBundle(_arg3, _arg1) : findResourceBundleWithResource(_arg1, _arg2)); } private function supportNonFrameworkApps():void{ if (initializedForNonFrameworkApp){ return; }; initializedForNonFrameworkApp = true; if (getLocales().length > 0){ return; }; var _local1:ApplicationDomain = ApplicationDomain.currentDomain; if (!_local1.hasDefinition("_CompiledResourceBundleInfo")){ return; }; var _local2:Class = Class(_local1.getDefinition("_CompiledResourceBundleInfo")); var _local3:Array = _local2.compiledLocales; var _local4:Array = _local2.compiledResourceBundleNames; installCompiledResourceBundles(_local1, _local3, _local4); localeChain = _local3; } public function getBundleNamesForLocale(_arg1:String):Array{ var _local3:String; var _local2:Array = []; for (_local3 in localeMap[_arg1]) { _local2.push(_local3); }; return (_local2); } public function getPreferredLocaleChain():Array{ return (LocaleSorter.sortLocalesByPreference(getLocales(), getSystemPreferredLocales(), null, true)); } public function getNumber(_arg1:String, _arg2:String, _arg3:String=null):Number{ var _local4:IResourceBundle = findBundle(_arg1, _arg2, _arg3); if (!_local4){ return (NaN); }; var _local5:* = _local4.content[_arg2]; return (Number(_local5)); } public function update():void{ dispatchEvent(new Event(Event.CHANGE)); } public function getClass(_arg1:String, _arg2:String, _arg3:String=null):Class{ var _local4:IResourceBundle = findBundle(_arg1, _arg2, _arg3); if (!_local4){ return (null); }; var _local5:* = _local4.content[_arg2]; return ((_local5 as Class)); } public function removeResourceBundle(_arg1:String, _arg2:String):void{ delete localeMap[_arg1][_arg2]; if (getBundleNamesForLocale(_arg1).length == 0){ delete localeMap[_arg1]; }; } public function initializeLocaleChain(_arg1:Array):void{ localeChain = LocaleSorter.sortLocalesByPreference(_arg1, getSystemPreferredLocales(), null, true); } public function findResourceBundleWithResource(_arg1:String, _arg2:String):IResourceBundle{ var _local5:String; var _local6:Object; var _local7:ResourceBundle; if (!_localeChain){ return (null); }; var _local3:int = _localeChain.length; var _local4:int; while (_local4 < _local3) { _local5 = localeChain[_local4]; _local6 = localeMap[_local5]; if (!_local6){ } else { _local7 = _local6[_arg1]; if (!_local7){ } else { if ((_arg2 in _local7.content)){ return (_local7); }; }; }; _local4++; }; return (null); } public function getUint(_arg1:String, _arg2:String, _arg3:String=null):uint{ var _local4:IResourceBundle = findBundle(_arg1, _arg2, _arg3); if (!_local4){ return (0); }; var _local5:* = _local4.content[_arg2]; return (uint(_local5)); } private function getSystemPreferredLocales():Array{ var _local1:Array; if (Capabilities["languages"]){ _local1 = Capabilities["languages"]; } else { _local1 = [Capabilities.language]; }; return (_local1); } public function installCompiledResourceBundles(_arg1:ApplicationDomain, _arg2:Array, _arg3:Array):void{ var _local7:String; var _local8:int; var _local9:String; var _local4:int = (_arg2) ? _arg2.length : 0; var _local5:int = (_arg3) ? _arg3.length : 0; var _local6:int; while (_local6 < _local4) { _local7 = _arg2[_local6]; _local8 = 0; while (_local8 < _local5) { _local9 = _arg3[_local8]; mx_internal::installCompiledResourceBundle(_arg1, _local7, _local9); _local8++; }; _local6++; }; } public function getBoolean(_arg1:String, _arg2:String, _arg3:String=null):Boolean{ var _local4:IResourceBundle = findBundle(_arg1, _arg2, _arg3); if (!_local4){ return (false); }; var _local5:* = _local4.content[_arg2]; return ((String(_local5).toLowerCase() == "true")); } public function unloadResourceModule(_arg1:String, _arg2:Boolean=true):void{ var _local4:Array; var _local5:int; var _local6:int; var _local7:String; var _local8:String; var _local3:ResourceModuleInfo = resourceModules[_arg1]; if (!_local3){ return; }; if (_local3.resourceModule){ _local4 = _local3.resourceModule.resourceBundles; if (_local4){ _local5 = _local4.length; _local6 = 0; while (_local6 < _local5) { _local7 = _local4[_local6].locale; _local8 = _local4[_local6].bundleName; removeResourceBundle(_local7, _local8); _local6++; }; }; }; resourceModules[_arg1] = null; delete resourceModules[_arg1]; _local3.moduleInfo.unload(); if (_arg2){ this.update(); }; } public static function getInstance():IResourceManager{ if (!instance){ instance = new (ResourceManagerImpl); }; return (instance); } } }//package mx.resources import flash.events.*; import mx.modules.*; import mx.events.*; class ResourceModuleInfo { public var resourceModule:IResourceModule; public var errorHandler:Function; public var readyHandler:Function; public var moduleInfo:IModuleInfo; private function ResourceModuleInfo(_arg1:IModuleInfo, _arg2:Function, _arg3:Function){ this.moduleInfo = _arg1; this.readyHandler = _arg2; this.errorHandler = _arg3; } } class ResourceEventDispatcher extends EventDispatcher { private function ResourceEventDispatcher(_arg1:IModuleInfo){ _arg1.addEventListener(ModuleEvent.ERROR, moduleInfo_errorHandler, false, 0, true); _arg1.addEventListener(ModuleEvent.PROGRESS, moduleInfo_progressHandler, false, 0, true); _arg1.addEventListener(ModuleEvent.READY, moduleInfo_readyHandler, false, 0, true); } private function moduleInfo_progressHandler(_arg1:ModuleEvent):void{ var _local2:ResourceEvent = new ResourceEvent(ResourceEvent.PROGRESS, _arg1.bubbles, _arg1.cancelable); _local2.bytesLoaded = _arg1.bytesLoaded; _local2.bytesTotal = _arg1.bytesTotal; dispatchEvent(_local2); } private function moduleInfo_readyHandler(_arg1:ModuleEvent):void{ var _local2:ResourceEvent = new ResourceEvent(ResourceEvent.COMPLETE); dispatchEvent(_local2); } private function moduleInfo_errorHandler(_arg1:ModuleEvent):void{ var _local2:ResourceEvent = new ResourceEvent(ResourceEvent.ERROR, _arg1.bubbles, _arg1.cancelable); _local2.bytesLoaded = _arg1.bytesLoaded; _local2.bytesTotal = _arg1.bytesTotal; _local2.errorText = _arg1.errorText; dispatchEvent(_local2); } }
Section 154
//HaloBorder (mx.skins.halo.HaloBorder) package mx.skins.halo { import mx.core.*; import flash.display.*; import mx.styles.*; import mx.skins.*; import mx.graphics.*; import mx.utils.*; public class HaloBorder extends RectangularBorder { mx_internal var radiusObj:Object; mx_internal var backgroundHole:Object; mx_internal var radius:Number; mx_internal var bRoundedCorners:Boolean; mx_internal var backgroundColor:Object; private var dropShadow:RectangularDropShadow; protected var _borderMetrics:EdgeMetrics; mx_internal var backgroundAlphaName:String; mx_internal static const VERSION:String = "3.5.0.12683"; private static var BORDER_WIDTHS:Object = {none:0, solid:1, inset:2, outset:2, alert:3, dropdown:2, menuBorder:1, comboNonEdit:2}; public function HaloBorder(){ BORDER_WIDTHS["default"] = 3; } override public function styleChanged(_arg1:String):void{ if ((((((((((_arg1 == null)) || ((_arg1 == "styleName")))) || ((_arg1 == "borderStyle")))) || ((_arg1 == "borderThickness")))) || ((_arg1 == "borderSides")))){ _borderMetrics = null; }; invalidateDisplayList(); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ if (((isNaN(_arg1)) || (isNaN(_arg2)))){ return; }; super.updateDisplayList(_arg1, _arg2); backgroundColor = getBackgroundColor(); bRoundedCorners = false; backgroundAlphaName = "backgroundAlpha"; backgroundHole = null; radius = 0; radiusObj = null; drawBorder(_arg1, _arg2); drawBackground(_arg1, _arg2); } mx_internal function drawBorder(_arg1:Number, _arg2:Number):void{ var _local5:Number; var _local6:uint; var _local7:uint; var _local8:String; var _local9:Number; var _local10:uint; var _local11:Boolean; var _local12:uint; var _local13:Array; var _local14:Array; var _local15:uint; var _local16:uint; var _local17:uint; var _local18:uint; var _local19:Boolean; var _local20:Object; var _local22:Number; var _local23:Number; var _local24:Number; var _local25:Object; var _local27:Number; var _local28:Number; var _local29:IContainer; var _local30:EdgeMetrics; var _local31:Boolean; var _local32:Number; var _local33:Array; var _local34:uint; var _local35:Boolean; var _local36:Number; var _local3:String = getStyle("borderStyle"); var _local4:Array = getStyle("highlightAlphas"); var _local21:Boolean; var _local26:Graphics = graphics; _local26.clear(); if (_local3){ switch (_local3){ case "none": break; case "inset": _local7 = getStyle("borderColor"); _local22 = ColorUtil.adjustBrightness2(_local7, -40); _local23 = ColorUtil.adjustBrightness2(_local7, 25); _local24 = ColorUtil.adjustBrightness2(_local7, 40); _local25 = backgroundColor; if ((((_local25 === null)) || ((_local25 === "")))){ _local25 = _local7; }; draw3dBorder(_local23, _local22, _local24, Number(_local25), Number(_local25), Number(_local25)); break; case "outset": _local7 = getStyle("borderColor"); _local22 = ColorUtil.adjustBrightness2(_local7, -40); _local23 = ColorUtil.adjustBrightness2(_local7, -25); _local24 = ColorUtil.adjustBrightness2(_local7, 40); _local25 = backgroundColor; if ((((_local25 === null)) || ((_local25 === "")))){ _local25 = _local7; }; draw3dBorder(_local23, _local24, _local22, Number(_local25), Number(_local25), Number(_local25)); break; case "alert": case "default": if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){ _local27 = getStyle("backgroundAlpha"); _local5 = getStyle("borderAlpha"); backgroundAlphaName = "borderAlpha"; radius = getStyle("cornerRadius"); bRoundedCorners = (getStyle("roundedBottomCorners").toString().toLowerCase() == "true"); _local28 = (bRoundedCorners) ? radius : 0; drawDropShadow(0, 0, _arg1, _arg2, radius, radius, _local28, _local28); if (!bRoundedCorners){ radiusObj = {}; }; _local29 = (parent as IContainer); if (_local29){ _local30 = _local29.viewMetrics; backgroundHole = {x:_local30.left, y:_local30.top, w:Math.max(0, ((_arg1 - _local30.left) - _local30.right)), h:Math.max(0, ((_arg2 - _local30.top) - _local30.bottom)), r:0}; if ((((backgroundHole.w > 0)) && ((backgroundHole.h > 0)))){ if (_local27 != _local5){ drawDropShadow(backgroundHole.x, backgroundHole.y, backgroundHole.w, backgroundHole.h, 0, 0, 0, 0); }; _local26.beginFill(Number(backgroundColor), _local27); _local26.drawRect(backgroundHole.x, backgroundHole.y, backgroundHole.w, backgroundHole.h); _local26.endFill(); }; }; backgroundColor = getStyle("borderColor"); }; break; case "dropdown": _local12 = getStyle("dropdownBorderColor"); drawDropShadow(0, 0, _arg1, _arg2, 4, 0, 0, 4); drawRoundRect(0, 0, _arg1, _arg2, {tl:4, tr:0, br:0, bl:4}, 5068126, 1); drawRoundRect(0, 0, _arg1, _arg2, {tl:4, tr:0, br:0, bl:4}, [0xFFFFFF, 0xFFFFFF], [0.7, 0], verticalGradientMatrix(0, 0, _arg1, _arg2)); drawRoundRect(1, 1, (_arg1 - 1), (_arg2 - 2), {tl:3, tr:0, br:0, bl:3}, 0xFFFFFF, 1); drawRoundRect(1, 2, (_arg1 - 1), (_arg2 - 3), {tl:3, tr:0, br:0, bl:3}, [0xEEEEEE, 0xFFFFFF], 1, verticalGradientMatrix(0, 0, (_arg1 - 1), (_arg2 - 3))); if (!isNaN(_local12)){ drawRoundRect(0, 0, (_arg1 + 1), _arg2, {tl:4, tr:0, br:0, bl:4}, _local12, 0.5); drawRoundRect(1, 1, (_arg1 - 1), (_arg2 - 2), {tl:3, tr:0, br:0, bl:3}, 0xFFFFFF, 1); drawRoundRect(1, 2, (_arg1 - 1), (_arg2 - 3), {tl:3, tr:0, br:0, bl:3}, [0xEEEEEE, 0xFFFFFF], 1, verticalGradientMatrix(0, 0, (_arg1 - 1), (_arg2 - 3))); }; backgroundColor = null; break; case "menuBorder": _local7 = getStyle("borderColor"); drawRoundRect(0, 0, _arg1, _arg2, 0, _local7, 1); drawDropShadow(1, 1, (_arg1 - 2), (_arg2 - 2), 0, 0, 0, 0); break; case "comboNonEdit": break; case "controlBar": if ((((_arg1 == 0)) || ((_arg2 == 0)))){ backgroundColor = null; break; }; _local14 = getStyle("footerColors"); _local31 = !((_local14 == null)); _local32 = getStyle("borderAlpha"); if (_local31){ _local26.lineStyle(0, ((_local14.length > 0)) ? _local14[1] : _local14[0], _local32); _local26.moveTo(0, 0); _local26.lineTo(_arg1, 0); _local26.lineStyle(0, 0, 0); if (((((parent) && (parent.parent))) && ((parent.parent is IStyleClient)))){ radius = IStyleClient(parent.parent).getStyle("cornerRadius"); _local32 = IStyleClient(parent.parent).getStyle("borderAlpha"); }; if (isNaN(radius)){ radius = 0; }; if (IStyleClient(parent.parent).getStyle("roundedBottomCorners").toString().toLowerCase() != "true"){ radius = 0; }; drawRoundRect(0, 1, _arg1, (_arg2 - 1), {tl:0, tr:0, bl:radius, br:radius}, _local14, _local32, verticalGradientMatrix(0, 0, _arg1, _arg2)); if ((((_local14.length > 1)) && (!((_local14[0] == _local14[1]))))){ drawRoundRect(0, 1, _arg1, (_arg2 - 1), {tl:0, tr:0, bl:radius, br:radius}, [0xFFFFFF, 0xFFFFFF], _local4, verticalGradientMatrix(0, 0, _arg1, _arg2)); drawRoundRect(1, 2, (_arg1 - 2), (_arg2 - 3), {tl:0, tr:0, bl:(radius - 1), br:(radius - 1)}, _local14, _local32, verticalGradientMatrix(0, 0, _arg1, _arg2)); }; }; backgroundColor = null; break; case "applicationControlBar": _local13 = getStyle("fillColors"); _local5 = getStyle("backgroundAlpha"); _local4 = getStyle("highlightAlphas"); _local33 = getStyle("fillAlphas"); _local11 = getStyle("docked"); _local34 = uint(backgroundColor); radius = getStyle("cornerRadius"); if (!radius){ radius = 0; }; drawDropShadow(0, 1, _arg1, (_arg2 - 1), radius, radius, radius, radius); if (((!((backgroundColor === null))) && (StyleManager.isValidStyleValue(backgroundColor)))){ drawRoundRect(0, 1, _arg1, (_arg2 - 1), radius, _local34, _local5, verticalGradientMatrix(0, 0, _arg1, _arg2)); }; drawRoundRect(0, 1, _arg1, (_arg2 - 1), radius, _local13, _local33, verticalGradientMatrix(0, 0, _arg1, _arg2)); drawRoundRect(0, 1, _arg1, ((_arg2 / 2) - 1), {tl:radius, tr:radius, bl:0, br:0}, [0xFFFFFF, 0xFFFFFF], _local4, verticalGradientMatrix(0, 0, _arg1, ((_arg2 / 2) - 1))); drawRoundRect(0, 1, _arg1, (_arg2 - 1), {tl:radius, tr:radius, bl:0, br:0}, 0xFFFFFF, 0.3, null, GradientType.LINEAR, null, {x:0, y:2, w:_arg1, h:(_arg2 - 2), r:{tl:radius, tr:radius, bl:0, br:0}}); backgroundColor = null; break; default: _local7 = getStyle("borderColor"); _local9 = getStyle("borderThickness"); _local8 = getStyle("borderSides"); _local35 = true; radius = getStyle("cornerRadius"); bRoundedCorners = (getStyle("roundedBottomCorners").toString().toLowerCase() == "true"); _local36 = Math.max((radius - _local9), 0); _local20 = {x:_local9, y:_local9, w:(_arg1 - (_local9 * 2)), h:(_arg2 - (_local9 * 2)), r:_local36}; if (!bRoundedCorners){ radiusObj = {tl:radius, tr:radius, bl:0, br:0}; _local20.r = {tl:_local36, tr:_local36, bl:0, br:0}; }; if (_local8 != "left top right bottom"){ _local20.r = {tl:_local36, tr:_local36, bl:(bRoundedCorners) ? _local36 : 0, br:(bRoundedCorners) ? _local36 : 0}; radiusObj = {tl:radius, tr:radius, bl:(bRoundedCorners) ? radius : 0, br:(bRoundedCorners) ? radius : 0}; _local8 = _local8.toLowerCase(); if (_local8.indexOf("left") == -1){ _local20.x = 0; _local20.w = (_local20.w + _local9); _local20.r.tl = 0; _local20.r.bl = 0; radiusObj.tl = 0; radiusObj.bl = 0; _local35 = false; }; if (_local8.indexOf("top") == -1){ _local20.y = 0; _local20.h = (_local20.h + _local9); _local20.r.tl = 0; _local20.r.tr = 0; radiusObj.tl = 0; radiusObj.tr = 0; _local35 = false; }; if (_local8.indexOf("right") == -1){ _local20.w = (_local20.w + _local9); _local20.r.tr = 0; _local20.r.br = 0; radiusObj.tr = 0; radiusObj.br = 0; _local35 = false; }; if (_local8.indexOf("bottom") == -1){ _local20.h = (_local20.h + _local9); _local20.r.bl = 0; _local20.r.br = 0; radiusObj.bl = 0; radiusObj.br = 0; _local35 = false; }; }; if ((((radius == 0)) && (_local35))){ drawDropShadow(0, 0, _arg1, _arg2, 0, 0, 0, 0); _local26.beginFill(_local7); _local26.drawRect(0, 0, _arg1, _arg2); _local26.drawRect(_local9, _local9, (_arg1 - (2 * _local9)), (_arg2 - (2 * _local9))); _local26.endFill(); } else { if (radiusObj){ drawDropShadow(0, 0, _arg1, _arg2, radiusObj.tl, radiusObj.tr, radiusObj.br, radiusObj.bl); drawRoundRect(0, 0, _arg1, _arg2, radiusObj, _local7, 1, null, null, null, _local20); radiusObj.tl = Math.max((radius - _local9), 0); radiusObj.tr = Math.max((radius - _local9), 0); radiusObj.bl = (bRoundedCorners) ? Math.max((radius - _local9), 0) : 0; radiusObj.br = (bRoundedCorners) ? Math.max((radius - _local9), 0) : 0; } else { drawDropShadow(0, 0, _arg1, _arg2, radius, radius, radius, radius); drawRoundRect(0, 0, _arg1, _arg2, radius, _local7, 1, null, null, null, _local20); radius = Math.max((getStyle("cornerRadius") - _local9), 0); }; }; }; }; } mx_internal function drawBackground(_arg1:Number, _arg2:Number):void{ var _local4:Number; var _local5:Number; var _local6:EdgeMetrics; var _local7:Graphics; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Array; var _local12:Number; if (((((((!((backgroundColor === null))) && (!((backgroundColor === ""))))) || (getStyle("mouseShield")))) || (getStyle("mouseShieldChildren")))){ _local4 = Number(backgroundColor); _local5 = 1; _local6 = getBackgroundColorMetrics(); _local7 = graphics; if (((((isNaN(_local4)) || ((backgroundColor === "")))) || ((backgroundColor === null)))){ _local5 = 0; _local4 = 0xFFFFFF; } else { _local5 = getStyle(backgroundAlphaName); }; if (((!((radius == 0))) || (backgroundHole))){ _local8 = _local6.bottom; if (radiusObj){ _local9 = Math.max((radius - Math.max(_local6.top, _local6.left, _local6.right)), 0); _local10 = (bRoundedCorners) ? Math.max((radius - Math.max(_local6.bottom, _local6.left, _local6.right)), 0) : 0; radiusObj = {tl:_local9, tr:_local9, bl:_local10, br:_local10}; drawRoundRect(_local6.left, _local6.top, (width - (_local6.left + _local6.right)), (height - (_local6.top + _local8)), radiusObj, _local4, _local5, null, GradientType.LINEAR, null, backgroundHole); } else { drawRoundRect(_local6.left, _local6.top, (width - (_local6.left + _local6.right)), (height - (_local6.top + _local8)), radius, _local4, _local5, null, GradientType.LINEAR, null, backgroundHole); }; } else { _local7.beginFill(_local4, _local5); _local7.drawRect(_local6.left, _local6.top, ((_arg1 - _local6.right) - _local6.left), ((_arg2 - _local6.bottom) - _local6.top)); _local7.endFill(); }; }; var _local3:String = getStyle("borderStyle"); if ((((((FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0)) && ((((_local3 == "alert")) || ((_local3 == "default")))))) && ((getStyle("headerColors") == null)))){ _local11 = getStyle("highlightAlphas"); _local12 = (_local11) ? _local11[0] : 0.3; drawRoundRect(0, 0, _arg1, _arg2, {tl:radius, tr:radius, bl:0, br:0}, 0xFFFFFF, _local12, null, GradientType.LINEAR, null, {x:0, y:1, w:_arg1, h:(_arg2 - 1), r:{tl:radius, tr:radius, bl:0, br:0}}); }; } mx_internal function drawDropShadow(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number, _arg8:Number):void{ var _local11:Number; var _local12:Boolean; if ((((((((getStyle("dropShadowEnabled") == false)) || ((getStyle("dropShadowEnabled") == "false")))) || ((_arg3 == 0)))) || ((_arg4 == 0)))){ return; }; var _local9:Number = getStyle("shadowDistance"); var _local10:String = getStyle("shadowDirection"); if (getStyle("borderStyle") == "applicationControlBar"){ _local12 = getStyle("docked"); _local11 = (_local12) ? 90 : getDropShadowAngle(_local9, _local10); _local9 = Math.abs(_local9); } else { _local11 = getDropShadowAngle(_local9, _local10); _local9 = (Math.abs(_local9) + 2); }; if (!dropShadow){ dropShadow = new RectangularDropShadow(); }; dropShadow.distance = _local9; dropShadow.angle = _local11; dropShadow.color = getStyle("dropShadowColor"); dropShadow.alpha = 0.4; dropShadow.tlRadius = _arg5; dropShadow.trRadius = _arg6; dropShadow.blRadius = _arg8; dropShadow.brRadius = _arg7; dropShadow.drawShadow(graphics, _arg1, _arg2, _arg3, _arg4); } mx_internal function getBackgroundColor():Object{ var _local2:Object; var _local1:IUIComponent = (parent as IUIComponent); if (((_local1) && (!(_local1.enabled)))){ _local2 = getStyle("backgroundDisabledColor"); if (((!((_local2 === null))) && (StyleManager.isValidStyleValue(_local2)))){ return (_local2); }; }; return (getStyle("backgroundColor")); } mx_internal function draw3dBorder(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number):void{ var _local7:Number = width; var _local8:Number = height; drawDropShadow(0, 0, width, height, 0, 0, 0, 0); var _local9:Graphics = graphics; _local9.beginFill(_arg1); _local9.drawRect(0, 0, _local7, _local8); _local9.drawRect(1, 0, (_local7 - 2), _local8); _local9.endFill(); _local9.beginFill(_arg2); _local9.drawRect(1, 0, (_local7 - 2), 1); _local9.endFill(); _local9.beginFill(_arg3); _local9.drawRect(1, (_local8 - 1), (_local7 - 2), 1); _local9.endFill(); _local9.beginFill(_arg4); _local9.drawRect(1, 1, (_local7 - 2), 1); _local9.endFill(); _local9.beginFill(_arg5); _local9.drawRect(1, (_local8 - 2), (_local7 - 2), 1); _local9.endFill(); _local9.beginFill(_arg6); _local9.drawRect(1, 2, (_local7 - 2), (_local8 - 4)); _local9.drawRect(2, 2, (_local7 - 4), (_local8 - 4)); _local9.endFill(); } mx_internal function getBackgroundColorMetrics():EdgeMetrics{ return (borderMetrics); } mx_internal function getDropShadowAngle(_arg1:Number, _arg2:String):Number{ if (_arg2 == "left"){ return (((_arg1 >= 0)) ? 135 : 225); //unresolved jump }; if (_arg2 == "right"){ return (((_arg1 >= 0)) ? 45 : 315); //unresolved jump }; return (((_arg1 >= 0)) ? 90 : 270); } override public function get borderMetrics():EdgeMetrics{ var _local1:Number; var _local3:String; if (_borderMetrics){ return (_borderMetrics); }; var _local2:String = getStyle("borderStyle"); if ((((_local2 == "default")) || ((_local2 == "alert")))){ if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){ _borderMetrics = new EdgeMetrics(0, 0, 0, 0); } else { return (EdgeMetrics.EMPTY); }; } else { if ((((_local2 == "controlBar")) || ((_local2 == "applicationControlBar")))){ _borderMetrics = new EdgeMetrics(1, 1, 1, 1); } else { if (_local2 == "solid"){ _local1 = getStyle("borderThickness"); if (isNaN(_local1)){ _local1 = 0; }; _borderMetrics = new EdgeMetrics(_local1, _local1, _local1, _local1); _local3 = getStyle("borderSides"); if (_local3 != "left top right bottom"){ if (_local3.indexOf("left") == -1){ _borderMetrics.left = 0; }; if (_local3.indexOf("top") == -1){ _borderMetrics.top = 0; }; if (_local3.indexOf("right") == -1){ _borderMetrics.right = 0; }; if (_local3.indexOf("bottom") == -1){ _borderMetrics.bottom = 0; }; }; } else { _local1 = BORDER_WIDTHS[_local2]; if (isNaN(_local1)){ _local1 = 0; }; _borderMetrics = new EdgeMetrics(_local1, _local1, _local1, _local1); }; }; }; return (_borderMetrics); } } }//package mx.skins.halo
Section 155
//HaloFocusRect (mx.skins.halo.HaloFocusRect) package mx.skins.halo { import flash.display.*; import mx.styles.*; import mx.skins.*; import mx.utils.*; public class HaloFocusRect extends ProgrammaticSkin implements IStyleClient { private var _focusColor:Number; mx_internal static const VERSION:String = "3.5.0.12683"; public function get inheritingStyles():Object{ return (styleName.inheritingStyles); } public function set inheritingStyles(_arg1:Object):void{ } public function notifyStyleChangeInChildren(_arg1:String, _arg2:Boolean):void{ } public function registerEffects(_arg1:Array):void{ } public function regenerateStyleCache(_arg1:Boolean):void{ } public function get styleDeclaration():CSSStyleDeclaration{ return (CSSStyleDeclaration(styleName)); } public function getClassStyleDeclarations():Array{ return ([]); } public function get className():String{ return ("HaloFocusRect"); } public function clearStyle(_arg1:String):void{ if (_arg1 == "focusColor"){ _focusColor = NaN; }; } public function setStyle(_arg1:String, _arg2):void{ if (_arg1 == "focusColor"){ _focusColor = _arg2; }; } public function set nonInheritingStyles(_arg1:Object):void{ } public function get nonInheritingStyles():Object{ return (styleName.nonInheritingStyles); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; super.updateDisplayList(_arg1, _arg2); var _local3:String = getStyle("focusBlendMode"); var _local4:Number = getStyle("focusAlpha"); var _local5:Number = getStyle("focusColor"); var _local6:Number = getStyle("cornerRadius"); var _local7:Number = getStyle("focusThickness"); var _local8:String = getStyle("focusRoundedCorners"); var _local9:Number = getStyle("themeColor"); var _local10:Number = _local5; if (isNaN(_local10)){ _local10 = _local9; }; var _local11:Graphics = graphics; _local11.clear(); if (_local3){ blendMode = _local3; }; if (((!((_local8 == "tl tr bl br"))) && ((_local6 > 0)))){ _local12 = 0; _local13 = 0; _local14 = 0; _local15 = 0; _local16 = (_local6 + _local7); if (_local8.indexOf("tl") >= 0){ _local12 = _local16; }; if (_local8.indexOf("tr") >= 0){ _local14 = _local16; }; if (_local8.indexOf("bl") >= 0){ _local13 = _local16; }; if (_local8.indexOf("br") >= 0){ _local15 = _local16; }; _local11.beginFill(_local10, _local4); GraphicsUtil.drawRoundRectComplex(_local11, 0, 0, _arg1, _arg2, _local12, _local14, _local13, _local15); _local12 = (_local12) ? _local6 : 0; _local14 = (_local14) ? _local6 : 0; _local13 = (_local13) ? _local6 : 0; _local15 = (_local15) ? _local6 : 0; GraphicsUtil.drawRoundRectComplex(_local11, _local7, _local7, (_arg1 - (2 * _local7)), (_arg2 - (2 * _local7)), _local12, _local14, _local13, _local15); _local11.endFill(); _local16 = (_local6 + (_local7 / 2)); _local12 = (_local12) ? _local16 : 0; _local14 = (_local14) ? _local16 : 0; _local13 = (_local13) ? _local16 : 0; _local15 = (_local15) ? _local16 : 0; _local11.beginFill(_local10, _local4); GraphicsUtil.drawRoundRectComplex(_local11, (_local7 / 2), (_local7 / 2), (_arg1 - _local7), (_arg2 - _local7), _local12, _local14, _local13, _local15); _local12 = (_local12) ? _local6 : 0; _local14 = (_local14) ? _local6 : 0; _local13 = (_local13) ? _local6 : 0; _local15 = (_local15) ? _local6 : 0; GraphicsUtil.drawRoundRectComplex(_local11, _local7, _local7, (_arg1 - (2 * _local7)), (_arg2 - (2 * _local7)), _local12, _local14, _local13, _local15); _local11.endFill(); } else { _local11.beginFill(_local10, _local4); _local17 = (((_local6 > 0)) ? (_local6 + _local7) : 0 * 2); _local11.drawRoundRect(0, 0, _arg1, _arg2, _local17, _local17); _local17 = (_local6 * 2); _local11.drawRoundRect(_local7, _local7, (_arg1 - (2 * _local7)), (_arg2 - (2 * _local7)), _local17, _local17); _local11.endFill(); _local11.beginFill(_local10, _local4); _local17 = (((_local6 > 0)) ? (_local6 + (_local7 / 2)) : 0 * 2); _local11.drawRoundRect((_local7 / 2), (_local7 / 2), (_arg1 - _local7), (_arg2 - _local7), _local17, _local17); _local17 = (_local6 * 2); _local11.drawRoundRect(_local7, _local7, (_arg1 - (2 * _local7)), (_arg2 - (2 * _local7)), _local17, _local17); _local11.endFill(); }; } override public function getStyle(_arg1:String){ return (((_arg1 == "focusColor")) ? _focusColor : super.getStyle(_arg1)); } public function set styleDeclaration(_arg1:CSSStyleDeclaration):void{ } } }//package mx.skins.halo
Section 156
//PanelSkin (mx.skins.halo.PanelSkin) package mx.skins.halo { import mx.core.*; import flash.display.*; import flash.utils.*; public class PanelSkin extends HaloBorder { private var oldControlBarHeight:Number; protected var _panelBorderMetrics:EdgeMetrics; private var oldHeaderHeight:Number; mx_internal static const VERSION:String = "3.5.0.12683"; private static var panels:Object = {}; override public function styleChanged(_arg1:String):void{ super.styleChanged(_arg1); if ((((((((((((((((((_arg1 == null)) || ((_arg1 == "styleName")))) || ((_arg1 == "borderStyle")))) || ((_arg1 == "borderThickness")))) || ((_arg1 == "borderThicknessTop")))) || ((_arg1 == "borderThicknessBottom")))) || ((_arg1 == "borderThicknessLeft")))) || ((_arg1 == "borderThicknessRight")))) || ((_arg1 == "borderSides")))){ _panelBorderMetrics = null; }; invalidateDisplayList(); } override mx_internal function drawBorder(_arg1:Number, _arg2:Number):void{ var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Graphics; var _local8:IContainer; var _local9:EdgeMetrics; super.drawBorder(_arg1, _arg2); if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){ return; }; var _local3:String = getStyle("borderStyle"); if (_local3 == "default"){ _local4 = getStyle("backgroundAlpha"); _local5 = getStyle("borderAlpha"); backgroundAlphaName = "borderAlpha"; radiusObj = null; radius = getStyle("cornerRadius"); bRoundedCorners = (getStyle("roundedBottomCorners").toString().toLowerCase() == "true"); _local6 = (bRoundedCorners) ? radius : 0; _local7 = graphics; drawDropShadow(0, 0, _arg1, _arg2, radius, radius, _local6, _local6); if (!bRoundedCorners){ radiusObj = {}; }; _local8 = (parent as IContainer); if (_local8){ _local9 = _local8.viewMetrics; backgroundHole = {x:_local9.left, y:_local9.top, w:Math.max(0, ((_arg1 - _local9.left) - _local9.right)), h:Math.max(0, ((_arg2 - _local9.top) - _local9.bottom)), r:0}; if ((((backgroundHole.w > 0)) && ((backgroundHole.h > 0)))){ if (_local4 != _local5){ drawDropShadow(backgroundHole.x, backgroundHole.y, backgroundHole.w, backgroundHole.h, 0, 0, 0, 0); }; _local7.beginFill(Number(backgroundColor), _local4); _local7.drawRect(backgroundHole.x, backgroundHole.y, backgroundHole.w, backgroundHole.h); _local7.endFill(); }; }; backgroundColor = getStyle("borderColor"); }; } override public function get borderMetrics():EdgeMetrics{ var _local4:Number; if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){ return (super.borderMetrics); }; var _local1:Boolean = isPanel(parent); var _local2:IUIComponent = (_local1) ? Object(parent)._controlBar : null; var _local3:Number = (_local1) ? Object(parent).getHeaderHeightProxy() : NaN; if (((_local2) && (_local2.includeInLayout))){ _local4 = _local2.getExplicitOrMeasuredHeight(); }; if (((!((_local4 == oldControlBarHeight))) && (!(((isNaN(oldControlBarHeight)) && (isNaN(_local4))))))){ _panelBorderMetrics = null; }; if (((!((_local3 == oldHeaderHeight))) && (!(((isNaN(_local3)) && (isNaN(oldHeaderHeight))))))){ _panelBorderMetrics = null; }; if (_panelBorderMetrics){ return (_panelBorderMetrics); }; var _local5:EdgeMetrics = super.borderMetrics; var _local6:EdgeMetrics = new EdgeMetrics(0, 0, 0, 0); var _local7:Number = getStyle("borderThickness"); var _local8:Number = getStyle("borderThicknessLeft"); var _local9:Number = getStyle("borderThicknessTop"); var _local10:Number = getStyle("borderThicknessRight"); var _local11:Number = getStyle("borderThicknessBottom"); _local6.left = (_local5.left + (isNaN(_local8)) ? _local7 : _local8); _local6.top = (_local5.top + (isNaN(_local9)) ? _local7 : _local9); _local6.right = (_local5.bottom + (isNaN(_local10)) ? _local7 : _local10); _local6.bottom = (_local5.bottom + (isNaN(_local11)) ? (((_local2) && (!(isNaN(_local9))))) ? _local9 : (isNaN(_local8)) ? _local7 : _local8 : _local11); oldHeaderHeight = _local3; if (!isNaN(_local3)){ _local6.top = (_local6.top + _local3); }; oldControlBarHeight = _local4; if (!isNaN(_local4)){ _local6.bottom = (_local6.bottom + _local4); }; _panelBorderMetrics = _local6; return (_panelBorderMetrics); } override mx_internal function drawBackground(_arg1:Number, _arg2:Number):void{ var _local3:Array; var _local4:Number; super.drawBackground(_arg1, _arg2); if ((((getStyle("headerColors") == null)) && ((getStyle("borderStyle") == "default")))){ _local3 = getStyle("highlightAlphas"); _local4 = (_local3) ? _local3[0] : 0.3; drawRoundRect(0, 0, _arg1, _arg2, {tl:radius, tr:radius, bl:0, br:0}, 0xFFFFFF, _local4, null, GradientType.LINEAR, null, {x:0, y:1, w:_arg1, h:(_arg2 - 1), r:{tl:radius, tr:radius, bl:0, br:0}}); }; } override mx_internal function getBackgroundColorMetrics():EdgeMetrics{ if (getStyle("borderStyle") == "default"){ return (EdgeMetrics.EMPTY); }; return (super.borderMetrics); } private static function isPanel(_arg1:Object):Boolean{ var s:String; var x:XML; var parent = _arg1; s = getQualifiedClassName(parent); if (panels[s] == 1){ return (true); }; if (panels[s] == 0){ return (false); }; if (s == "mx.containers::Panel"){ (panels[s] == 1); return (true); }; x = describeType(parent); var xmllist:XMLList = x.extendsClass.(@type == "mx.containers::Panel"); if (xmllist.length() == 0){ panels[s] = 0; return (false); }; panels[s] = 1; return (true); } } }//package mx.skins.halo
Section 157
//TitleBackground (mx.skins.halo.TitleBackground) package mx.skins.halo { import flash.display.*; import mx.styles.*; import mx.skins.*; import mx.utils.*; public class TitleBackground extends ProgrammaticSkin { mx_internal static const VERSION:String = "3.5.0.12683"; override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ super.updateDisplayList(_arg1, _arg2); var _local3:Number = getStyle("borderAlpha"); var _local4:Number = getStyle("cornerRadius"); var _local5:Array = getStyle("highlightAlphas"); var _local6:Array = getStyle("headerColors"); var _local7 = !((_local6 == null)); StyleManager.getColorNames(_local6); var _local8:Number = ColorUtil.adjustBrightness2((_local6) ? _local6[1] : 0xFFFFFF, -20); var _local9:Graphics = graphics; _local9.clear(); if (_arg2 < 3){ return; }; if (_local7){ _local9.lineStyle(0, _local8, _local3); _local9.moveTo(0, _arg2); _local9.lineTo(_arg1, _arg2); _local9.lineStyle(0, 0, 0); drawRoundRect(0, 0, _arg1, _arg2, {tl:_local4, tr:_local4, bl:0, br:0}, _local6, _local3, verticalGradientMatrix(0, 0, _arg1, _arg2)); drawRoundRect(0, 0, _arg1, (_arg2 / 2), {tl:_local4, tr:_local4, bl:0, br:0}, [0xFFFFFF, 0xFFFFFF], _local5, verticalGradientMatrix(0, 0, _arg1, (_arg2 / 2))); drawRoundRect(0, 0, _arg1, _arg2, {tl:_local4, tr:_local4, bl:0, br:0}, 0xFFFFFF, _local5[0], null, GradientType.LINEAR, null, {x:0, y:1, w:_arg1, h:(_arg2 - 1), r:{tl:_local4, tr:_local4, bl:0, br:0}}); }; } } }//package mx.skins.halo
Section 158
//Border (mx.skins.Border) package mx.skins { import mx.core.*; public class Border extends ProgrammaticSkin implements IBorder { mx_internal static const VERSION:String = "3.5.0.12683"; public function get borderMetrics():EdgeMetrics{ return (EdgeMetrics.EMPTY); } } }//package mx.skins
Section 159
//ProgrammaticSkin (mx.skins.ProgrammaticSkin) package mx.skins { import mx.core.*; import flash.display.*; import mx.styles.*; import flash.geom.*; import mx.managers.*; import mx.utils.*; public class ProgrammaticSkin extends FlexShape implements IFlexDisplayObject, IInvalidating, ILayoutManagerClient, ISimpleStyleClient, IProgrammaticSkin { private var _initialized:Boolean;// = false private var _height:Number; private var invalidateDisplayListFlag:Boolean;// = false private var _styleName:IStyleClient; private var _nestLevel:int;// = 0 private var _processedDescriptors:Boolean;// = false private var _updateCompletePendingFlag:Boolean;// = true private var _width:Number; mx_internal static const VERSION:String = "3.5.0.12683"; private static var tempMatrix:Matrix = new Matrix(); public function ProgrammaticSkin(){ _width = measuredWidth; _height = measuredHeight; } public function getStyle(_arg1:String){ return ((_styleName) ? _styleName.getStyle(_arg1) : null); } protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ } public function get nestLevel():int{ return (_nestLevel); } public function set nestLevel(_arg1:int):void{ _nestLevel = _arg1; invalidateDisplayList(); } override public function get height():Number{ return (_height); } public function get updateCompletePendingFlag():Boolean{ return (_updateCompletePendingFlag); } protected function verticalGradientMatrix(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Matrix{ return (rotatedGradientMatrix(_arg1, _arg2, _arg3, _arg4, 90)); } public function validateSize(_arg1:Boolean=false):void{ } public function invalidateDisplayList():void{ if (((!(invalidateDisplayListFlag)) && ((nestLevel > 0)))){ invalidateDisplayListFlag = true; UIComponentGlobals.layoutManager.invalidateDisplayList(this); }; } public function set updateCompletePendingFlag(_arg1:Boolean):void{ _updateCompletePendingFlag = _arg1; } protected function horizontalGradientMatrix(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Matrix{ return (rotatedGradientMatrix(_arg1, _arg2, _arg3, _arg4, 0)); } override public function set height(_arg1:Number):void{ _height = _arg1; invalidateDisplayList(); } public function set processedDescriptors(_arg1:Boolean):void{ _processedDescriptors = _arg1; } public function validateDisplayList():void{ invalidateDisplayListFlag = false; updateDisplayList(width, height); } public function get measuredWidth():Number{ return (0); } override public function set width(_arg1:Number):void{ _width = _arg1; invalidateDisplayList(); } public function get measuredHeight():Number{ return (0); } public function set initialized(_arg1:Boolean):void{ _initialized = _arg1; } protected function drawRoundRect(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null, _arg6:Object=null, _arg7:Object=null, _arg8:Matrix=null, _arg9:String="linear", _arg10:Array=null, _arg11:Object=null):void{ var _local13:Number; var _local14:Array; var _local15:Object; var _local12:Graphics = graphics; if ((((_arg3 == 0)) || ((_arg4 == 0)))){ return; }; if (_arg6 !== null){ if ((_arg6 is uint)){ _local12.beginFill(uint(_arg6), Number(_arg7)); } else { if ((_arg6 is Array)){ _local14 = ((_arg7 is Array)) ? (_arg7 as Array) : [_arg7, _arg7]; if (!_arg10){ _arg10 = [0, 0xFF]; }; _local12.beginGradientFill(_arg9, (_arg6 as Array), _local14, _arg10, _arg8); }; }; }; if (!_arg5){ _local12.drawRect(_arg1, _arg2, _arg3, _arg4); } else { if ((_arg5 is Number)){ _local13 = (Number(_arg5) * 2); _local12.drawRoundRect(_arg1, _arg2, _arg3, _arg4, _local13, _local13); } else { GraphicsUtil.drawRoundRectComplex(_local12, _arg1, _arg2, _arg3, _arg4, _arg5.tl, _arg5.tr, _arg5.bl, _arg5.br); }; }; if (_arg11){ _local15 = _arg11.r; if ((_local15 is Number)){ _local13 = (Number(_local15) * 2); _local12.drawRoundRect(_arg11.x, _arg11.y, _arg11.w, _arg11.h, _local13, _local13); } else { GraphicsUtil.drawRoundRectComplex(_local12, _arg11.x, _arg11.y, _arg11.w, _arg11.h, _local15.tl, _local15.tr, _local15.bl, _local15.br); }; }; if (_arg6 !== null){ _local12.endFill(); }; } public function get processedDescriptors():Boolean{ return (_processedDescriptors); } public function set styleName(_arg1:Object):void{ if (_styleName != _arg1){ _styleName = (_arg1 as IStyleClient); invalidateDisplayList(); }; } public function setActualSize(_arg1:Number, _arg2:Number):void{ var _local3:Boolean; if (_width != _arg1){ _width = _arg1; _local3 = true; }; if (_height != _arg2){ _height = _arg2; _local3 = true; }; if (_local3){ invalidateDisplayList(); }; } public function styleChanged(_arg1:String):void{ invalidateDisplayList(); } override public function get width():Number{ return (_width); } public function invalidateProperties():void{ } public function get initialized():Boolean{ return (_initialized); } protected function rotatedGradientMatrix(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number):Matrix{ tempMatrix.createGradientBox(_arg3, _arg4, ((_arg5 * Math.PI) / 180), _arg1, _arg2); return (tempMatrix); } public function move(_arg1:Number, _arg2:Number):void{ this.x = _arg1; this.y = _arg2; } public function get styleName():Object{ return (_styleName); } public function validateNow():void{ if (invalidateDisplayListFlag){ validateDisplayList(); }; } public function invalidateSize():void{ } public function validateProperties():void{ } } }//package mx.skins
Section 160
//RectangularBorder (mx.skins.RectangularBorder) package mx.skins { import flash.events.*; import mx.core.*; import flash.display.*; import flash.utils.*; import mx.styles.*; import flash.system.*; import flash.geom.*; import mx.resources.*; import flash.net.*; public class RectangularBorder extends Border implements IRectangularBorder { private var backgroundImage:DisplayObject; private var backgroundImageHeight:Number; private var _backgroundImageBounds:Rectangle; private var backgroundImageStyle:Object; private var backgroundImageWidth:Number; private var resourceManager:IResourceManager; mx_internal static const VERSION:String = "3.5.0.12683"; public function RectangularBorder(){ resourceManager = ResourceManager.getInstance(); super(); addEventListener(Event.REMOVED, removedHandler); } public function layoutBackgroundImage():void{ var _local4:Number; var _local5:Number; var _local7:Number; var _local8:Number; var _local14:Number; var _local15:Graphics; var _local1:DisplayObject = parent; var _local2:EdgeMetrics = ((_local1 is IContainer)) ? IContainer(_local1).viewMetrics : borderMetrics; var _local3 = !((getStyle("backgroundAttachment") == "fixed")); if (_backgroundImageBounds){ _local4 = _backgroundImageBounds.width; _local5 = _backgroundImageBounds.height; } else { _local4 = ((width - _local2.left) - _local2.right); _local5 = ((height - _local2.top) - _local2.bottom); }; var _local6:Number = getBackgroundSize(); if (isNaN(_local6)){ _local7 = 1; _local8 = 1; } else { _local14 = (_local6 * 0.01); _local7 = ((_local14 * _local4) / backgroundImageWidth); _local8 = ((_local14 * _local5) / backgroundImageHeight); }; backgroundImage.scaleX = _local7; backgroundImage.scaleY = _local8; var _local9:Number = Math.round((0.5 * (_local4 - (backgroundImageWidth * _local7)))); var _local10:Number = Math.round((0.5 * (_local5 - (backgroundImageHeight * _local8)))); backgroundImage.x = _local2.left; backgroundImage.y = _local2.top; var _local11:Shape = Shape(backgroundImage.mask); _local11.x = _local2.left; _local11.y = _local2.top; if (((_local3) && ((_local1 is IContainer)))){ _local9 = (_local9 - IContainer(_local1).horizontalScrollPosition); _local10 = (_local10 - IContainer(_local1).verticalScrollPosition); }; backgroundImage.alpha = getStyle("backgroundAlpha"); backgroundImage.x = (backgroundImage.x + _local9); backgroundImage.y = (backgroundImage.y + _local10); var _local12:Number = ((width - _local2.left) - _local2.right); var _local13:Number = ((height - _local2.top) - _local2.bottom); if (((!((_local11.width == _local12))) || (!((_local11.height == _local13))))){ _local15 = _local11.graphics; _local15.clear(); _local15.beginFill(0xFFFFFF); _local15.drawRect(0, 0, _local12, _local13); _local15.endFill(); }; } public function set backgroundImageBounds(_arg1:Rectangle):void{ if (((((_backgroundImageBounds) && (_arg1))) && (_backgroundImageBounds.equals(_arg1)))){ return; }; _backgroundImageBounds = _arg1; invalidateDisplayList(); } private function getBackgroundSize():Number{ var _local3:int; var _local1:Number = NaN; var _local2:Object = getStyle("backgroundSize"); if (((_local2) && ((_local2 is String)))){ _local3 = _local2.indexOf("%"); if (_local3 != -1){ _local1 = Number(_local2.substr(0, _local3)); }; }; return (_local1); } private function removedHandler(_arg1:Event):void{ var _local2:IChildList; if (backgroundImage){ _local2 = ((parent is IRawChildrenContainer)) ? IRawChildrenContainer(parent).rawChildren : IChildList(parent); _local2.removeChild(backgroundImage.mask); _local2.removeChild(backgroundImage); backgroundImage = null; }; } private function initBackgroundImage(_arg1:DisplayObject):void{ backgroundImage = _arg1; if ((_arg1 is Loader)){ backgroundImageWidth = Loader(_arg1).contentLoaderInfo.width; backgroundImageHeight = Loader(_arg1).contentLoaderInfo.height; } else { backgroundImageWidth = backgroundImage.width; backgroundImageHeight = backgroundImage.height; if ((_arg1 is ISimpleStyleClient)){ ISimpleStyleClient(_arg1).styleName = styleName; }; }; var _local2:IChildList = ((parent is IRawChildrenContainer)) ? IRawChildrenContainer(parent).rawChildren : IChildList(parent); var _local3:Shape = new FlexShape(); _local3.name = "backgroundMask"; _local3.x = 0; _local3.y = 0; _local2.addChild(_local3); var _local4:int = _local2.getChildIndex(this); _local2.addChildAt(backgroundImage, (_local4 + 1)); backgroundImage.mask = _local3; } public function get backgroundImageBounds():Rectangle{ return (_backgroundImageBounds); } public function get hasBackgroundImage():Boolean{ return (!((backgroundImage == null))); } private function completeEventHandler(_arg1:Event):void{ if (!parent){ return; }; var _local2:DisplayObject = DisplayObject(LoaderInfo(_arg1.target).loader); initBackgroundImage(_local2); layoutBackgroundImage(); dispatchEvent(_arg1.clone()); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ var cls:Class; var newStyleObj:DisplayObject; var loader:Loader; var loaderContext:LoaderContext; var message:String; var unscaledWidth = _arg1; var unscaledHeight = _arg2; if (!parent){ return; }; var newStyle:Object = getStyle("backgroundImage"); if (newStyle != backgroundImageStyle){ removedHandler(null); backgroundImageStyle = newStyle; if (((newStyle) && ((newStyle as Class)))){ cls = Class(newStyle); initBackgroundImage(new (cls)); } else { if (((newStyle) && ((newStyle is String)))){ try { cls = Class(getDefinitionByName(String(newStyle))); } catch(e:Error) { }; if (cls){ newStyleObj = new (cls); initBackgroundImage(newStyleObj); } else { loader = new FlexLoader(); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeEventHandler); loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, errorEventHandler); loader.contentLoaderInfo.addEventListener(ErrorEvent.ERROR, errorEventHandler); loaderContext = new LoaderContext(); loaderContext.applicationDomain = new ApplicationDomain(ApplicationDomain.currentDomain); loader.load(new URLRequest(String(newStyle)), loaderContext); }; } else { if (newStyle){ message = resourceManager.getString("skins", "notLoaded", [newStyle]); throw (new Error(message)); }; }; }; }; if (backgroundImage){ layoutBackgroundImage(); }; } private function errorEventHandler(_arg1:Event):void{ } } }//package mx.skins
Section 161
//CSSStyleDeclaration (mx.styles.CSSStyleDeclaration) package mx.styles { import flash.events.*; import mx.core.*; import flash.display.*; import flash.utils.*; import mx.managers.*; public class CSSStyleDeclaration extends EventDispatcher { mx_internal var effects:Array; protected var overrides:Object; public var defaultFactory:Function; public var factory:Function; mx_internal var selectorRefCount:int;// = 0 private var styleManager:IStyleManager2; private var clones:Dictionary; mx_internal static const VERSION:String = "3.5.0.12683"; private static const NOT_A_COLOR:uint = 4294967295; private static const FILTERMAP_PROP:String = "__reserved__filterMap"; public function CSSStyleDeclaration(_arg1:String=null){ clones = new Dictionary(true); super(); if (_arg1){ styleManager = (Singleton.getInstance("mx.styles::IStyleManager2") as IStyleManager2); styleManager.setStyleDeclaration(_arg1, this, false); }; } mx_internal function addStyleToProtoChain(_arg1:Object, _arg2:DisplayObject, _arg3:Object=null):Object{ var p:String; var emptyObjectFactory:Function; var filteredChain:Object; var filterObjectFactory:Function; var i:String; var chain = _arg1; var target = _arg2; var filterMap = _arg3; var nodeAddedToChain:Boolean; var originalChain:Object = chain; if (filterMap){ chain = {}; }; if (defaultFactory != null){ defaultFactory.prototype = chain; chain = new defaultFactory(); nodeAddedToChain = true; }; if (factory != null){ factory.prototype = chain; chain = new factory(); nodeAddedToChain = true; }; if (overrides){ if ((((defaultFactory == null)) && ((factory == null)))){ emptyObjectFactory = function ():void{ }; emptyObjectFactory.prototype = chain; chain = new (emptyObjectFactory); nodeAddedToChain = true; }; for (p in overrides) { if (overrides[p] === undefined){ delete chain[p]; } else { chain[p] = overrides[p]; }; }; }; if (filterMap){ if (nodeAddedToChain){ filteredChain = {}; filterObjectFactory = function ():void{ }; filterObjectFactory.prototype = originalChain; filteredChain = new (filterObjectFactory); for (i in chain) { if (filterMap[i] != null){ filteredChain[filterMap[i]] = chain[i]; }; }; chain = filteredChain; chain[FILTERMAP_PROP] = filterMap; } else { chain = originalChain; }; }; if (nodeAddedToChain){ clones[chain] = 1; }; return (chain); } public function getStyle(_arg1:String){ var _local2:*; var _local3:*; if (overrides){ if ((((_arg1 in overrides)) && ((overrides[_arg1] === undefined)))){ return (undefined); }; _local3 = overrides[_arg1]; if (_local3 !== undefined){ return (_local3); }; }; if (factory != null){ factory.prototype = {}; _local2 = new factory(); _local3 = _local2[_arg1]; if (_local3 !== undefined){ return (_local3); }; }; if (defaultFactory != null){ defaultFactory.prototype = {}; _local2 = new defaultFactory(); _local3 = _local2[_arg1]; if (_local3 !== undefined){ return (_local3); }; }; return (undefined); } public function clearStyle(_arg1:String):void{ setStyle(_arg1, undefined); } public function setStyle(_arg1:String, _arg2):void{ var _local7:int; var _local8:Object; var _local3:Object = getStyle(_arg1); var _local4:Boolean; if ((((((((((selectorRefCount > 0)) && ((factory == null)))) && ((defaultFactory == null)))) && (!(overrides)))) && (!((_local3 === _arg2))))){ _local4 = true; }; if (_arg2 !== undefined){ setStyle(_arg1, _arg2); } else { if (_arg2 == _local3){ return; }; setStyle(_arg1, _arg2); }; var _local5:Array = SystemManagerGlobals.topLevelSystemManagers; var _local6:int = _local5.length; if (_local4){ _local7 = 0; while (_local7 < _local6) { _local8 = _local5[_local7]; _local8.regenerateStyleCache(true); _local7++; }; }; _local7 = 0; while (_local7 < _local6) { _local8 = _local5[_local7]; _local8.notifyStyleChangeInChildren(_arg1, true); _local7++; }; } private function clearStyleAttr(_arg1:String):void{ var _local2:*; if (!overrides){ overrides = {}; }; overrides[_arg1] = undefined; for (_local2 in clones) { delete _local2[_arg1]; }; } mx_internal function createProtoChainRoot():Object{ var _local1:Object = {}; if (defaultFactory != null){ defaultFactory.prototype = _local1; _local1 = new defaultFactory(); }; if (factory != null){ factory.prototype = _local1; _local1 = new factory(); }; clones[_local1] = 1; return (_local1); } mx_internal function clearOverride(_arg1:String):void{ if (((overrides) && (overrides[_arg1]))){ delete overrides[_arg1]; }; } mx_internal function setStyle(_arg1:String, _arg2):void{ var _local3:Object; var _local4:*; var _local5:Number; var _local6:Object; if (_arg2 === undefined){ clearStyleAttr(_arg1); return; }; if ((_arg2 is String)){ if (!styleManager){ styleManager = (Singleton.getInstance("mx.styles::IStyleManager2") as IStyleManager2); }; _local5 = styleManager.getColorName(_arg2); if (_local5 != NOT_A_COLOR){ _arg2 = _local5; }; }; if (defaultFactory != null){ _local3 = new defaultFactory(); if (_local3[_arg1] !== _arg2){ if (!overrides){ overrides = {}; }; overrides[_arg1] = _arg2; } else { if (overrides){ delete overrides[_arg1]; }; }; }; if (factory != null){ _local3 = new factory(); if (_local3[_arg1] !== _arg2){ if (!overrides){ overrides = {}; }; overrides[_arg1] = _arg2; } else { if (overrides){ delete overrides[_arg1]; }; }; }; if ((((defaultFactory == null)) && ((factory == null)))){ if (!overrides){ overrides = {}; }; overrides[_arg1] = _arg2; }; for (_local4 in clones) { _local6 = _local4[FILTERMAP_PROP]; if (_local6){ if (_local6[_arg1] != null){ _local4[_local6[_arg1]] = _arg2; }; } else { _local4[_arg1] = _arg2; }; }; } } }//package mx.styles
Section 162
//ISimpleStyleClient (mx.styles.ISimpleStyleClient) package mx.styles { public interface ISimpleStyleClient { function set styleName(_arg1:Object):void; function styleChanged(_arg1:String):void; function get styleName():Object; } }//package mx.styles
Section 163
//IStyleClient (mx.styles.IStyleClient) package mx.styles { public interface IStyleClient extends ISimpleStyleClient { function regenerateStyleCache(_arg1:Boolean):void; function get className():String; function clearStyle(_arg1:String):void; function getClassStyleDeclarations():Array; function get inheritingStyles():Object; function set nonInheritingStyles(_arg1:Object):void; function setStyle(_arg1:String, _arg2):void; function get styleDeclaration():CSSStyleDeclaration; function set styleDeclaration(_arg1:CSSStyleDeclaration):void; function get nonInheritingStyles():Object; function set inheritingStyles(_arg1:Object):void; function getStyle(_arg1:String); function notifyStyleChangeInChildren(_arg1:String, _arg2:Boolean):void; function registerEffects(_arg1:Array):void; } }//package mx.styles
Section 164
//IStyleManager (mx.styles.IStyleManager) package mx.styles { import flash.events.*; public interface IStyleManager { function isColorName(_arg1:String):Boolean; function registerParentDisplayListInvalidatingStyle(_arg1:String):void; function registerInheritingStyle(_arg1:String):void; function set stylesRoot(_arg1:Object):void; function get typeSelectorCache():Object; function styleDeclarationsChanged():void; function setStyleDeclaration(_arg1:String, _arg2:CSSStyleDeclaration, _arg3:Boolean):void; function isParentDisplayListInvalidatingStyle(_arg1:String):Boolean; function isSizeInvalidatingStyle(_arg1:String):Boolean; function get inheritingStyles():Object; function isValidStyleValue(_arg1):Boolean; function isParentSizeInvalidatingStyle(_arg1:String):Boolean; function getColorName(_arg1:Object):uint; function set typeSelectorCache(_arg1:Object):void; function unloadStyleDeclarations(_arg1:String, _arg2:Boolean=true):void; function getColorNames(_arg1:Array):void; function loadStyleDeclarations(_arg1:String, _arg2:Boolean=true, _arg3:Boolean=false):IEventDispatcher; function isInheritingStyle(_arg1:String):Boolean; function set inheritingStyles(_arg1:Object):void; function get stylesRoot():Object; function initProtoChainRoots():void; function registerColorName(_arg1:String, _arg2:uint):void; function registerParentSizeInvalidatingStyle(_arg1:String):void; function registerSizeInvalidatingStyle(_arg1:String):void; function clearStyleDeclaration(_arg1:String, _arg2:Boolean):void; function isInheritingTextFormatStyle(_arg1:String):Boolean; function getStyleDeclaration(_arg1:String):CSSStyleDeclaration; } }//package mx.styles
Section 165
//IStyleManager2 (mx.styles.IStyleManager2) package mx.styles { import flash.events.*; import flash.system.*; public interface IStyleManager2 extends IStyleManager { function get selectors():Array; function loadStyleDeclarations2(_arg1:String, _arg2:Boolean=true, _arg3:ApplicationDomain=null, _arg4:SecurityDomain=null):IEventDispatcher; } }//package mx.styles
Section 166
//IStyleModule (mx.styles.IStyleModule) package mx.styles { public interface IStyleModule { function unload():void; } }//package mx.styles
Section 167
//StyleManager (mx.styles.StyleManager) package mx.styles { import flash.events.*; import mx.core.*; import flash.system.*; public class StyleManager { mx_internal static const VERSION:String = "3.5.0.12683"; public static const NOT_A_COLOR:uint = 4294967295; private static var _impl:IStyleManager2; private static var implClassDependency:StyleManagerImpl; public static function isParentSizeInvalidatingStyle(_arg1:String):Boolean{ return (impl.isParentSizeInvalidatingStyle(_arg1)); } public static function registerInheritingStyle(_arg1:String):void{ impl.registerInheritingStyle(_arg1); } mx_internal static function set stylesRoot(_arg1:Object):void{ impl.stylesRoot = _arg1; } mx_internal static function get inheritingStyles():Object{ return (impl.inheritingStyles); } mx_internal static function styleDeclarationsChanged():void{ impl.styleDeclarationsChanged(); } public static function setStyleDeclaration(_arg1:String, _arg2:CSSStyleDeclaration, _arg3:Boolean):void{ impl.setStyleDeclaration(_arg1, _arg2, _arg3); } public static function registerParentDisplayListInvalidatingStyle(_arg1:String):void{ impl.registerParentDisplayListInvalidatingStyle(_arg1); } mx_internal static function get typeSelectorCache():Object{ return (impl.typeSelectorCache); } mx_internal static function set inheritingStyles(_arg1:Object):void{ impl.inheritingStyles = _arg1; } public static function isColorName(_arg1:String):Boolean{ return (impl.isColorName(_arg1)); } public static function isParentDisplayListInvalidatingStyle(_arg1:String):Boolean{ return (impl.isParentDisplayListInvalidatingStyle(_arg1)); } public static function isSizeInvalidatingStyle(_arg1:String):Boolean{ return (impl.isSizeInvalidatingStyle(_arg1)); } public static function getColorName(_arg1:Object):uint{ return (impl.getColorName(_arg1)); } mx_internal static function set typeSelectorCache(_arg1:Object):void{ impl.typeSelectorCache = _arg1; } public static function unloadStyleDeclarations(_arg1:String, _arg2:Boolean=true):void{ impl.unloadStyleDeclarations(_arg1, _arg2); } public static function getColorNames(_arg1:Array):void{ impl.getColorNames(_arg1); } public static function loadStyleDeclarations(_arg1:String, _arg2:Boolean=true, _arg3:Boolean=false, _arg4:ApplicationDomain=null, _arg5:SecurityDomain=null):IEventDispatcher{ return (impl.loadStyleDeclarations2(_arg1, _arg2, _arg4, _arg5)); } private static function get impl():IStyleManager2{ if (!_impl){ _impl = IStyleManager2(Singleton.getInstance("mx.styles::IStyleManager2")); }; return (_impl); } public static function isValidStyleValue(_arg1):Boolean{ return (impl.isValidStyleValue(_arg1)); } mx_internal static function get stylesRoot():Object{ return (impl.stylesRoot); } public static function isInheritingStyle(_arg1:String):Boolean{ return (impl.isInheritingStyle(_arg1)); } mx_internal static function initProtoChainRoots():void{ impl.initProtoChainRoots(); } public static function registerParentSizeInvalidatingStyle(_arg1:String):void{ impl.registerParentSizeInvalidatingStyle(_arg1); } public static function get selectors():Array{ return (impl.selectors); } public static function registerSizeInvalidatingStyle(_arg1:String):void{ impl.registerSizeInvalidatingStyle(_arg1); } public static function clearStyleDeclaration(_arg1:String, _arg2:Boolean):void{ impl.clearStyleDeclaration(_arg1, _arg2); } public static function registerColorName(_arg1:String, _arg2:uint):void{ impl.registerColorName(_arg1, _arg2); } public static function isInheritingTextFormatStyle(_arg1:String):Boolean{ return (impl.isInheritingTextFormatStyle(_arg1)); } public static function getStyleDeclaration(_arg1:String):CSSStyleDeclaration{ return (impl.getStyleDeclaration(_arg1)); } } }//package mx.styles
Section 168
//StyleManagerImpl (mx.styles.StyleManagerImpl) package mx.styles { import flash.events.*; import mx.core.*; import flash.utils.*; import flash.system.*; import mx.modules.*; import mx.events.*; import mx.resources.*; import mx.managers.*; public class StyleManagerImpl implements IStyleManager2 { private var _stylesRoot:Object; private var _selectors:Object; private var styleModules:Object; private var _inheritingStyles:Object; private var resourceManager:IResourceManager; private var _typeSelectorCache:Object; mx_internal static const VERSION:String = "3.5.0.12683"; private static var parentSizeInvalidatingStyles:Object = {bottom:true, horizontalCenter:true, left:true, right:true, top:true, verticalCenter:true, baseline:true}; private static var colorNames:Object = {transparent:"transparent", black:0, blue:0xFF, green:0x8000, gray:0x808080, silver:0xC0C0C0, lime:0xFF00, olive:0x808000, white:0xFFFFFF, yellow:0xFFFF00, maroon:0x800000, navy:128, red:0xFF0000, purple:0x800080, teal:0x8080, fuchsia:0xFF00FF, aqua:0xFFFF, magenta:0xFF00FF, cyan:0xFFFF, halogreen:8453965, haloblue:40447, haloorange:0xFFB600, halosilver:11455193}; private static var inheritingTextFormatStyles:Object = {align:true, bold:true, color:true, font:true, indent:true, italic:true, size:true}; private static var instance:IStyleManager2; private static var parentDisplayListInvalidatingStyles:Object = {bottom:true, horizontalCenter:true, left:true, right:true, top:true, verticalCenter:true, baseline:true}; private static var sizeInvalidatingStyles:Object = {borderStyle:true, borderThickness:true, fontAntiAliasType:true, fontFamily:true, fontGridFitType:true, fontSharpness:true, fontSize:true, fontStyle:true, fontThickness:true, fontWeight:true, headerHeight:true, horizontalAlign:true, horizontalGap:true, kerning:true, leading:true, letterSpacing:true, paddingBottom:true, paddingLeft:true, paddingRight:true, paddingTop:true, strokeWidth:true, tabHeight:true, tabWidth:true, verticalAlign:true, verticalGap:true}; public function StyleManagerImpl(){ _selectors = {}; styleModules = {}; resourceManager = ResourceManager.getInstance(); _inheritingStyles = {}; _typeSelectorCache = {}; super(); } public function setStyleDeclaration(_arg1:String, _arg2:CSSStyleDeclaration, _arg3:Boolean):void{ _arg2.selectorRefCount++; _selectors[_arg1] = _arg2; typeSelectorCache = {}; if (_arg3){ styleDeclarationsChanged(); }; } public function registerParentDisplayListInvalidatingStyle(_arg1:String):void{ parentDisplayListInvalidatingStyles[_arg1] = true; } public function getStyleDeclaration(_arg1:String):CSSStyleDeclaration{ var _local2:int; if (_arg1.charAt(0) != "."){ _local2 = _arg1.lastIndexOf("."); if (_local2 != -1){ _arg1 = _arg1.substr((_local2 + 1)); }; }; return (_selectors[_arg1]); } public function set typeSelectorCache(_arg1:Object):void{ _typeSelectorCache = _arg1; } public function isColorName(_arg1:String):Boolean{ return (!((colorNames[_arg1.toLowerCase()] === undefined))); } public function set inheritingStyles(_arg1:Object):void{ _inheritingStyles = _arg1; } public function getColorNames(_arg1:Array):void{ var _local4:uint; if (!_arg1){ return; }; var _local2:int = _arg1.length; var _local3:int; while (_local3 < _local2) { if (((!((_arg1[_local3] == null))) && (isNaN(_arg1[_local3])))){ _local4 = getColorName(_arg1[_local3]); if (_local4 != StyleManager.NOT_A_COLOR){ _arg1[_local3] = _local4; }; }; _local3++; }; } public function isInheritingTextFormatStyle(_arg1:String):Boolean{ return ((inheritingTextFormatStyles[_arg1] == true)); } public function registerParentSizeInvalidatingStyle(_arg1:String):void{ parentSizeInvalidatingStyles[_arg1] = true; } public function registerColorName(_arg1:String, _arg2:uint):void{ colorNames[_arg1.toLowerCase()] = _arg2; } public function isParentSizeInvalidatingStyle(_arg1:String):Boolean{ return ((parentSizeInvalidatingStyles[_arg1] == true)); } public function registerInheritingStyle(_arg1:String):void{ inheritingStyles[_arg1] = true; } public function set stylesRoot(_arg1:Object):void{ _stylesRoot = _arg1; } public function get typeSelectorCache():Object{ return (_typeSelectorCache); } public function isParentDisplayListInvalidatingStyle(_arg1:String):Boolean{ return ((parentDisplayListInvalidatingStyles[_arg1] == true)); } public function isSizeInvalidatingStyle(_arg1:String):Boolean{ return ((sizeInvalidatingStyles[_arg1] == true)); } public function styleDeclarationsChanged():void{ var _local4:Object; var _local1:Array = SystemManagerGlobals.topLevelSystemManagers; var _local2:int = _local1.length; var _local3:int; while (_local3 < _local2) { _local4 = _local1[_local3]; _local4.regenerateStyleCache(true); _local4.notifyStyleChangeInChildren(null, true); _local3++; }; } public function isValidStyleValue(_arg1):Boolean{ return (!((_arg1 === undefined))); } public function loadStyleDeclarations(_arg1:String, _arg2:Boolean=true, _arg3:Boolean=false):IEventDispatcher{ return (loadStyleDeclarations2(_arg1, _arg2)); } public function get inheritingStyles():Object{ return (_inheritingStyles); } public function unloadStyleDeclarations(_arg1:String, _arg2:Boolean=true):void{ var _local4:IModuleInfo; var _local3:StyleModuleInfo = styleModules[_arg1]; if (_local3){ _local3.styleModule.unload(); _local4 = _local3.module; _local4.unload(); _local4.removeEventListener(ModuleEvent.READY, _local3.readyHandler); _local4.removeEventListener(ModuleEvent.ERROR, _local3.errorHandler); styleModules[_arg1] = null; }; if (_arg2){ styleDeclarationsChanged(); }; } public function getColorName(_arg1:Object):uint{ var _local2:Number; var _local3:*; if ((_arg1 is String)){ if (_arg1.charAt(0) == "#"){ _local2 = Number(("0x" + _arg1.slice(1))); return ((isNaN(_local2)) ? StyleManager.NOT_A_COLOR : uint(_local2)); }; if ((((_arg1.charAt(1) == "x")) && ((_arg1.charAt(0) == "0")))){ _local2 = Number(_arg1); return ((isNaN(_local2)) ? StyleManager.NOT_A_COLOR : uint(_local2)); }; _local3 = colorNames[_arg1.toLowerCase()]; if (_local3 === undefined){ return (StyleManager.NOT_A_COLOR); }; return (uint(_local3)); }; return (uint(_arg1)); } public function isInheritingStyle(_arg1:String):Boolean{ return ((inheritingStyles[_arg1] == true)); } public function get stylesRoot():Object{ return (_stylesRoot); } public function initProtoChainRoots():void{ if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){ delete _inheritingStyles["textDecoration"]; delete _inheritingStyles["leading"]; }; if (!stylesRoot){ stylesRoot = _selectors["global"].addStyleToProtoChain({}, null); }; } public function loadStyleDeclarations2(_arg1:String, _arg2:Boolean=true, _arg3:ApplicationDomain=null, _arg4:SecurityDomain=null):IEventDispatcher{ var module:IModuleInfo; var styleEventDispatcher:StyleEventDispatcher; var timer:Timer; var timerHandler:Function; var url = _arg1; var update = _arg2; var applicationDomain = _arg3; var securityDomain = _arg4; module = ModuleManager.getModule(url); var readyHandler:Function = function (_arg1:ModuleEvent):void{ var _local2:IStyleModule = IStyleModule(_arg1.module.factory.create()); styleModules[_arg1.module.url].styleModule = _local2; if (update){ styleDeclarationsChanged(); }; }; module.addEventListener(ModuleEvent.READY, readyHandler, false, 0, true); styleEventDispatcher = new StyleEventDispatcher(module); var errorHandler:Function = function (_arg1:ModuleEvent):void{ var _local3:StyleEvent; var _local2:String = resourceManager.getString("styles", "unableToLoad", [_arg1.errorText, url]); if (styleEventDispatcher.willTrigger(StyleEvent.ERROR)){ _local3 = new StyleEvent(StyleEvent.ERROR, _arg1.bubbles, _arg1.cancelable); _local3.bytesLoaded = 0; _local3.bytesTotal = 0; _local3.errorText = _local2; styleEventDispatcher.dispatchEvent(_local3); } else { throw (new Error(_local2)); }; }; module.addEventListener(ModuleEvent.ERROR, errorHandler, false, 0, true); styleModules[url] = new StyleModuleInfo(module, readyHandler, errorHandler); timer = new Timer(0); timerHandler = function (_arg1:TimerEvent):void{ timer.removeEventListener(TimerEvent.TIMER, timerHandler); timer.stop(); module.load(applicationDomain, securityDomain); }; timer.addEventListener(TimerEvent.TIMER, timerHandler, false, 0, true); timer.start(); return (styleEventDispatcher); } public function registerSizeInvalidatingStyle(_arg1:String):void{ sizeInvalidatingStyles[_arg1] = true; } public function clearStyleDeclaration(_arg1:String, _arg2:Boolean):void{ var _local3:CSSStyleDeclaration = getStyleDeclaration(_arg1); if (((_local3) && ((_local3.selectorRefCount > 0)))){ _local3.selectorRefCount--; }; delete _selectors[_arg1]; if (_arg2){ styleDeclarationsChanged(); }; } public function get selectors():Array{ var _local2:String; var _local1:Array = []; for (_local2 in _selectors) { _local1.push(_local2); }; return (_local1); } public static function getInstance():IStyleManager2{ if (!instance){ instance = new (StyleManagerImpl); }; return (instance); } } }//package mx.styles import flash.events.*; import mx.modules.*; import mx.events.*; class StyleEventDispatcher extends EventDispatcher { private function StyleEventDispatcher(_arg1:IModuleInfo){ _arg1.addEventListener(ModuleEvent.ERROR, moduleInfo_errorHandler, false, 0, true); _arg1.addEventListener(ModuleEvent.PROGRESS, moduleInfo_progressHandler, false, 0, true); _arg1.addEventListener(ModuleEvent.READY, moduleInfo_readyHandler, false, 0, true); } private function moduleInfo_progressHandler(_arg1:ModuleEvent):void{ var _local2:StyleEvent = new StyleEvent(StyleEvent.PROGRESS, _arg1.bubbles, _arg1.cancelable); _local2.bytesLoaded = _arg1.bytesLoaded; _local2.bytesTotal = _arg1.bytesTotal; dispatchEvent(_local2); } private function moduleInfo_readyHandler(_arg1:ModuleEvent):void{ var _local2:StyleEvent = new StyleEvent(StyleEvent.COMPLETE); _local2.bytesLoaded = _arg1.bytesLoaded; _local2.bytesTotal = _arg1.bytesTotal; dispatchEvent(_local2); } private function moduleInfo_errorHandler(_arg1:ModuleEvent):void{ var _local2:StyleEvent = new StyleEvent(StyleEvent.ERROR, _arg1.bubbles, _arg1.cancelable); _local2.bytesLoaded = _arg1.bytesLoaded; _local2.bytesTotal = _arg1.bytesTotal; _local2.errorText = _arg1.errorText; dispatchEvent(_local2); } } class StyleModuleInfo { public var errorHandler:Function; public var readyHandler:Function; public var module:IModuleInfo; public var styleModule:IStyleModule; private function StyleModuleInfo(_arg1:IModuleInfo, _arg2:Function, _arg3:Function){ this.module = _arg1; this.readyHandler = _arg2; this.errorHandler = _arg3; } }
Section 169
//ColorUtil (mx.utils.ColorUtil) package mx.utils { public class ColorUtil { mx_internal static const VERSION:String = "3.5.0.12683"; public static function adjustBrightness2(_arg1:uint, _arg2:Number):uint{ var _local3:Number; var _local4:Number; var _local5:Number; if (_arg2 == 0){ return (_arg1); }; if (_arg2 < 0){ _arg2 = ((100 + _arg2) / 100); _local3 = (((_arg1 >> 16) & 0xFF) * _arg2); _local4 = (((_arg1 >> 8) & 0xFF) * _arg2); _local5 = ((_arg1 & 0xFF) * _arg2); } else { _arg2 = (_arg2 / 100); _local3 = ((_arg1 >> 16) & 0xFF); _local4 = ((_arg1 >> 8) & 0xFF); _local5 = (_arg1 & 0xFF); _local3 = (_local3 + ((0xFF - _local3) * _arg2)); _local4 = (_local4 + ((0xFF - _local4) * _arg2)); _local5 = (_local5 + ((0xFF - _local5) * _arg2)); _local3 = Math.min(_local3, 0xFF); _local4 = Math.min(_local4, 0xFF); _local5 = Math.min(_local5, 0xFF); }; return ((((_local3 << 16) | (_local4 << 8)) | _local5)); } public static function rgbMultiply(_arg1:uint, _arg2:uint):uint{ var _local3:Number = ((_arg1 >> 16) & 0xFF); var _local4:Number = ((_arg1 >> 8) & 0xFF); var _local5:Number = (_arg1 & 0xFF); var _local6:Number = ((_arg2 >> 16) & 0xFF); var _local7:Number = ((_arg2 >> 8) & 0xFF); var _local8:Number = (_arg2 & 0xFF); return ((((((_local3 * _local6) / 0xFF) << 16) | (((_local4 * _local7) / 0xFF) << 8)) | ((_local5 * _local8) / 0xFF))); } public static function adjustBrightness(_arg1:uint, _arg2:Number):uint{ var _local3:Number = Math.max(Math.min((((_arg1 >> 16) & 0xFF) + _arg2), 0xFF), 0); var _local4:Number = Math.max(Math.min((((_arg1 >> 8) & 0xFF) + _arg2), 0xFF), 0); var _local5:Number = Math.max(Math.min(((_arg1 & 0xFF) + _arg2), 0xFF), 0); return ((((_local3 << 16) | (_local4 << 8)) | _local5)); } } }//package mx.utils
Section 170
//GraphicsUtil (mx.utils.GraphicsUtil) package mx.utils { import flash.display.*; public class GraphicsUtil { mx_internal static const VERSION:String = "3.5.0.12683"; public static function drawRoundRectComplex(_arg1:Graphics, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number, _arg8:Number, _arg9:Number):void{ var _local10:Number = (_arg2 + _arg4); var _local11:Number = (_arg3 + _arg5); var _local12:Number = ((_arg4 < _arg5)) ? (_arg4 * 2) : (_arg5 * 2); _arg6 = ((_arg6 < _local12)) ? _arg6 : _local12; _arg7 = ((_arg7 < _local12)) ? _arg7 : _local12; _arg8 = ((_arg8 < _local12)) ? _arg8 : _local12; _arg9 = ((_arg9 < _local12)) ? _arg9 : _local12; var _local13:Number = (_arg9 * 0.292893218813453); var _local14:Number = (_arg9 * 0.585786437626905); _arg1.moveTo(_local10, (_local11 - _arg9)); _arg1.curveTo(_local10, (_local11 - _local14), (_local10 - _local13), (_local11 - _local13)); _arg1.curveTo((_local10 - _local14), _local11, (_local10 - _arg9), _local11); _local13 = (_arg8 * 0.292893218813453); _local14 = (_arg8 * 0.585786437626905); _arg1.lineTo((_arg2 + _arg8), _local11); _arg1.curveTo((_arg2 + _local14), _local11, (_arg2 + _local13), (_local11 - _local13)); _arg1.curveTo(_arg2, (_local11 - _local14), _arg2, (_local11 - _arg8)); _local13 = (_arg6 * 0.292893218813453); _local14 = (_arg6 * 0.585786437626905); _arg1.lineTo(_arg2, (_arg3 + _arg6)); _arg1.curveTo(_arg2, (_arg3 + _local14), (_arg2 + _local13), (_arg3 + _local13)); _arg1.curveTo((_arg2 + _local14), _arg3, (_arg2 + _arg6), _arg3); _local13 = (_arg7 * 0.292893218813453); _local14 = (_arg7 * 0.585786437626905); _arg1.lineTo((_local10 - _arg7), _arg3); _arg1.curveTo((_local10 - _local14), _arg3, (_local10 - _local13), (_arg3 + _local13)); _arg1.curveTo(_local10, (_arg3 + _local14), _local10, (_arg3 + _arg7)); _arg1.lineTo(_local10, (_local11 - _arg9)); } } }//package mx.utils
Section 171
//NameUtil (mx.utils.NameUtil) package mx.utils { import flash.display.*; import mx.core.*; import flash.utils.*; public class NameUtil { mx_internal static const VERSION:String = "3.5.0.12683"; private static var counter:int = 0; public static function displayObjectToString(_arg1:DisplayObject):String{ var result:String; var o:DisplayObject; var s:String; var indices:Array; var displayObject = _arg1; try { o = displayObject; while (o != null) { if (((((o.parent) && (o.stage))) && ((o.parent == o.stage)))){ break; }; s = o.name; if ((o is IRepeaterClient)){ indices = IRepeaterClient(o).instanceIndices; if (indices){ s = (s + (("[" + indices.join("][")) + "]")); }; }; result = ((result == null)) ? s : ((s + ".") + result); o = o.parent; }; } catch(e:SecurityError) { }; return (result); } public static function createUniqueName(_arg1:Object):String{ if (!_arg1){ return (null); }; var _local2:String = getQualifiedClassName(_arg1); var _local3:int = _local2.indexOf("::"); if (_local3 != -1){ _local2 = _local2.substr((_local3 + 2)); }; var _local4:int = _local2.charCodeAt((_local2.length - 1)); if ((((_local4 >= 48)) && ((_local4 <= 57)))){ _local2 = (_local2 + "_"); }; return ((_local2 + counter++)); } } }//package mx.utils
Section 172
//StringUtil (mx.utils.StringUtil) package mx.utils { public class StringUtil { mx_internal static const VERSION:String = "3.5.0.12683"; public static function trim(_arg1:String):String{ if (_arg1 == null){ return (""); }; var _local2:int; while (isWhitespace(_arg1.charAt(_local2))) { _local2++; }; var _local3:int = (_arg1.length - 1); while (isWhitespace(_arg1.charAt(_local3))) { _local3--; }; if (_local3 >= _local2){ return (_arg1.slice(_local2, (_local3 + 1))); }; return (""); } public static function isWhitespace(_arg1:String):Boolean{ switch (_arg1){ case " ": case "\t": case "\r": case "\n": case "\f": return (true); default: return (false); }; } public static function substitute(_arg1:String, ... _args):String{ var _local4:Array; if (_arg1 == null){ return (""); }; var _local3:uint = _args.length; if ((((_local3 == 1)) && ((_args[0] is Array)))){ _local4 = (_args[0] as Array); _local3 = _local4.length; } else { _local4 = _args; }; var _local5:int; while (_local5 < _local3) { _arg1 = _arg1.replace(new RegExp((("\\{" + _local5) + "\\}"), "g"), _local4[_local5]); _local5++; }; return (_arg1); } public static function trimArrayElements(_arg1:String, _arg2:String):String{ var _local3:Array; var _local4:int; var _local5:int; if (((!((_arg1 == ""))) && (!((_arg1 == null))))){ _local3 = _arg1.split(_arg2); _local4 = _local3.length; _local5 = 0; while (_local5 < _local4) { _local3[_local5] = StringUtil.trim(_local3[_local5]); _local5++; }; if (_local4 > 0){ _arg1 = _local3.join(_arg2); }; }; return (_arg1); } } }//package mx.utils
Section 173
//ActiveGraph (net.rezmason.utils.ActiveGraph) package net.rezmason.utils { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.system.*; import flash.text.*; public class ActiveGraph extends Sprite { private const PAGE:Number = 0x1000; private const MEGABYTES:Number = 0; private const WIDTH:Number = 50; private const HEIGHT:Number = 15; private var output:String; private var textFormat:TextFormat; private var numerator:Number; private var history:Array; private var graphBackground:Sprite; private var average:int; private var itr:Number; private var high:Number; private var lastPlot1:int; private var plotLength:int; private var sign:String; private var old:int; private var verboseMode:Boolean; private var fn:Function; private var returnVal:Boolean; private var backY:Number; private var low:Number; private var backX:Number; private var textBox:TextField; private var plot:int; private var caught2:Boolean;// = false private var denominator:Number; private var timer:Timer; private var plotLine:Shape; private var lastPlot2:int; public function ActiveGraph(_arg1:Number=0, _arg2:Boolean=false, _arg3:Boolean=true, _arg4:int=2):void{ _arg4 = Math.min(_arg4, 2); lastPlot1 = (lastPlot2 = (plot = (plotLength = 0))); history = new Array(); numerator = (denominator = (average = 0)); timer = new Timer(_arg1); verboseMode = _arg2; switch (_arg4){ case 0: fn = test0; break; case 2: fn = test2; break; default: fn = test1; break; }; if (_arg3){ textBox = new TextField(); textFormat = new TextFormat(); graphBackground = new Sprite(); plotLine = new Shape(); textFormat.size = 9; textFormat.font = "Monaco"; textFormat.color = 0xFFFFFF; textBox.selectable = false; textBox.autoSize = TextFieldAutoSize.LEFT; textBox.x = (WIDTH + 5); textBox.height = HEIGHT; graphBackground.graphics.beginFill(0); graphBackground.graphics.drawRect(0, 0, (WIDTH + 85), HEIGHT); graphBackground.graphics.endFill(); graphBackground.graphics.lineStyle(0.5, 0xFFFFFF); graphBackground.graphics.drawRect(0, 0, WIDTH, (HEIGHT - 1)); this.addChild(graphBackground); this.addChild(plotLine); this.addChild(textBox); timer.addEventListener(TimerEvent.TIMER, drawMem, false, 0, true); textBox.mouseEnabled = false; backX = x; backY = y; graphBackground.addEventListener(MouseEvent.MOUSE_DOWN, handleDrag, false, 0, true); graphBackground.addEventListener(MouseEvent.MOUSE_UP, handleDrag, false, 0, true); this.addEventListener(Event.ADDED_TO_STAGE, loadDrag, false, 0, true); } else { trace("ActiveGraph Running."); timer.addEventListener(TimerEvent.TIMER, trackMem, false, 0, true); }; timer.start(); } public function get data():Number{ return (plot); } private function trackMem(_arg1:TimerEvent=null):Boolean{ returnVal = false; plot = (System.totalMemory / PAGE); old = average; numerator = (numerator + plot); denominator++; average = (numerator / denominator); if (((fn()) && (verboseMode))){ trace(plot); }; return (returnVal); } private function loadDrag(_arg1:Event):void{ this.stage.addEventListener(Event.MOUSE_LEAVE, handleDrag, false, 0, true); } private function test1():Boolean{ returnVal = ((!(lastPlot1)) || ((lastPlot1 > plot))); lastPlot1 = plot; return (returnVal); } private function test2():Boolean{ if ((((lastPlot1 > plot)) || (!(lastPlot1)))){ if ((((lastPlot2 > plot)) || (!(lastPlot2)))){ caught2 = true; }; lastPlot2 = plot; } else { if ((((lastPlot1 < plot)) && (caught2))){ plot = lastPlot2; returnVal = true; caught2 = false; }; }; lastPlot1 = plot; return (returnVal); } private function test0():Boolean{ if (lastPlot1 != plot){ returnVal = true; lastPlot1 = plot; }; return (returnVal); } private function drawMem(_arg1:TimerEvent=null):void{ if (trackMem()){ plotLine.graphics.clear(); if (plotLength == 21){ history.shift(); plotLength--; }; if (plot > history[int((plotLength - 1))]){ sign = "+ , "; } else { if (plot < history[int((plotLength - 1))]){ sign = "- , "; } else { sign = " , "; }; }; history.push(plot); plotLength = history.length; if (plotLength > 1){ plotLine.graphics.lineStyle(2.5, 0xFF0000); high = 0; low = Infinity; itr = 0; while (itr < plotLength) { high = Math.max(history[itr], high); low = Math.min(history[itr], low); itr++; }; plotLine.graphics.moveTo(0, (HEIGHT * (1 - ((history[0] - low) / (high - low))))); itr = 1; while (itr < plotLength) { plotLine.graphics.lineTo(((WIDTH * itr) / (plotLength - 1)), (HEIGHT * (1 - ((history[itr] - low) / (high - low))))); itr++; }; }; output = (plot + sign); textBox.text = (String(output) + String(average)); textBox.setTextFormat(textFormat); }; } private function handleDrag(_arg1:Event):void{ switch (_arg1.type){ case MouseEvent.MOUSE_DOWN: backX = x; backY = y; startDrag(); break; case MouseEvent.MOUSE_UP: stopDrag(); break; case Event.MOUSE_LEAVE: stopDrag(); x = backX; y = backY; break; }; } } }//package net.rezmason.utils
Section 174
//Action (org.flintparticles.common.actions.Action) package org.flintparticles.common.actions { import org.flintparticles.common.emitters.*; import org.flintparticles.common.particles.*; public interface Action { function update(_arg1:Emitter, _arg2:Particle, _arg3:Number):void; function addedToEmitter(_arg1:Emitter):void; function removedFromEmitter(_arg1:Emitter):void; function getDefaultPriority():Number; } }//package org.flintparticles.common.actions
Section 175
//ActionBase (org.flintparticles.common.actions.ActionBase) package org.flintparticles.common.actions { import org.flintparticles.common.emitters.*; import org.flintparticles.common.particles.*; public class ActionBase implements Action { public function addedToEmitter(_arg1:Emitter):void{ } public function removedFromEmitter(_arg1:Emitter):void{ } public function getDefaultPriority():Number{ return (0); } public function update(_arg1:Emitter, _arg2:Particle, _arg3:Number):void{ } } }//package org.flintparticles.common.actions
Section 176
//Fade (org.flintparticles.common.actions.Fade) package org.flintparticles.common.actions { import org.flintparticles.common.emitters.*; import org.flintparticles.common.particles.*; public class Fade extends ActionBase { private var _endAlpha:Number; private var _diffAlpha:Number; public function Fade(_arg1:Number=1, _arg2:Number=0){ _diffAlpha = (_arg1 - _arg2); _endAlpha = _arg2; } public function get endAlpha():Number{ return (_endAlpha); } public function set endAlpha(_arg1:Number):void{ _diffAlpha = ((_endAlpha + _diffAlpha) - _arg1); _endAlpha = _arg1; } override public function update(_arg1:Emitter, _arg2:Particle, _arg3:Number):void{ var _local4:Number = (_endAlpha + (_diffAlpha * _arg2.energy)); _arg2.color = ((_arg2.color & 0xFFFFFF) | (Math.round((_local4 * 0xFF)) << 24)); } override public function getDefaultPriority():Number{ return (-5); } public function set startAlpha(_arg1:Number):void{ _diffAlpha = (_arg1 - _endAlpha); } public function get startAlpha():Number{ return ((_endAlpha + _diffAlpha)); } } }//package org.flintparticles.common.actions
Section 177
//Activity (org.flintparticles.common.activities.Activity) package org.flintparticles.common.activities { import org.flintparticles.common.emitters.*; public interface Activity { function initialize(_arg1:Emitter):void; function removedFromEmitter(_arg1:Emitter):void; function update(_arg1:Emitter, _arg2:Number):void; function addedToEmitter(_arg1:Emitter):void; function getDefaultPriority():Number; } }//package org.flintparticles.common.activities
Section 178
//Counter (org.flintparticles.common.counters.Counter) package org.flintparticles.common.counters { import org.flintparticles.common.emitters.*; public interface Counter { function stop():void; function startEmitter(_arg1:Emitter):uint; function updateEmitter(_arg1:Emitter, _arg2:Number):uint; function resume():void; } }//package org.flintparticles.common.counters
Section 179
//Steady (org.flintparticles.common.counters.Steady) package org.flintparticles.common.counters { import org.flintparticles.common.emitters.*; public class Steady implements Counter { private var _stop:Boolean; private var _rateInv:Number; private var _timeToNext:Number; private var _rate:Number; public function Steady(_arg1:Number){ _stop = false; _rate = _arg1; _rateInv = (1 / _rate); } public function get rate():Number{ return (_rate); } public function updateEmitter(_arg1:Emitter, _arg2:Number):uint{ if (_stop){ return (0); }; var _local3:uint; _timeToNext = (_timeToNext - _arg2); while (_timeToNext <= 0) { _local3++; _timeToNext = (_timeToNext + _rateInv); }; return (_local3); } public function set rate(_arg1:Number):void{ _rate = _arg1; _rateInv = (1 / _arg1); } public function stop():void{ _stop = true; } public function startEmitter(_arg1:Emitter):uint{ _timeToNext = _rateInv; return (0); } public function resume():void{ _stop = false; } } }//package org.flintparticles.common.counters
Section 180
//ZeroCounter (org.flintparticles.common.counters.ZeroCounter) package org.flintparticles.common.counters { import org.flintparticles.common.emitters.*; public class ZeroCounter implements Counter { public function stop():void{ } public function updateEmitter(_arg1:Emitter, _arg2:Number):uint{ return (0); } public function startEmitter(_arg1:Emitter):uint{ return (0); } public function resume():void{ } } }//package org.flintparticles.common.counters
Section 181
//Rect (org.flintparticles.common.displayObjects.Rect) package org.flintparticles.common.displayObjects { import flash.display.*; public class Rect extends Shape { public function Rect(_arg1:Number, _arg2:Number, _arg3:uint=0xFFFFFF, _arg4:String="normal"){ graphics.beginFill(_arg3); graphics.drawRect((-(_arg1) * 0.5), (-(_arg2) * 0.5), _arg1, _arg2); graphics.endFill(); blendMode = _arg4; } } }//package org.flintparticles.common.displayObjects
Section 182
//Emitter (org.flintparticles.common.emitters.Emitter) package org.flintparticles.common.emitters { import flash.events.*; import org.flintparticles.common.events.*; import org.flintparticles.common.particles.*; import org.flintparticles.common.initializers.*; import org.flintparticles.common.actions.*; import org.flintparticles.common.activities.*; import org.flintparticles.common.counters.*; import org.flintparticles.common.utils.*; public class Emitter extends EventDispatcher { protected var _running:Boolean;// = false protected var _activities:PriorityArray; protected var _particles:Array; protected var _initializers:PriorityArray; protected var _counter:Counter; protected var _started:Boolean;// = false protected var _actions:PriorityArray; protected var _useInternalTick:Boolean;// = true protected var _particleFactory:ParticleFactory; protected var _fixedFrameTime:Number;// = 0 protected var _maximumFrameTime:Number;// = 0.1 public function Emitter(){ _particles = new Array(); _actions = new PriorityArray(); _initializers = new PriorityArray(); _activities = new PriorityArray(); _counter = new ZeroCounter(); } public function addInitializer(_arg1:Initializer, _arg2:Number=NaN):void{ if (isNaN(_arg2)){ _arg2 = _arg1.getDefaultPriority(); }; _initializers.add(_arg1, _arg2); _arg1.addedToEmitter(this); } public function stop():void{ if (_useInternalTick){ FrameUpdater.instance.removeEventListener(UpdateEvent.UPDATE, updateEventListener); }; _started = false; killAllParticles(); } public function killAllParticles():void{ var _local1:int = _particles.length; var _local2:int; while (_local2 < _local1) { dispatchEvent(new ParticleEvent(ParticleEvent.PARTICLE_DEAD, _particles[_local2])); _particleFactory.disposeParticle(_particles[_local2]); _local2++; }; _particles.length = 0; } public function set fixedFrameTime(_arg1:Number):void{ _fixedFrameTime = _arg1; } public function get maximumFrameTime():Number{ return (_maximumFrameTime); } public function get useInternalTick():Boolean{ return (_useInternalTick); } protected function createParticle():Particle{ var _local1:Particle = _particleFactory.createParticle(); var _local2:int = _initializers.length; initParticle(_local1); var _local3:int; while (_local3 < _local2) { _initializers[_local3].initialize(this, _local1); _local3++; }; _particles.push(_local1); dispatchEvent(new ParticleEvent(ParticleEvent.PARTICLE_CREATED, _local1)); return (_local1); } public function get particleFactory():ParticleFactory{ return (_particleFactory); } private function updateEventListener(_arg1:UpdateEvent):void{ if (_fixedFrameTime){ update(_fixedFrameTime); } else { update(_arg1.time); }; } public function get particles():Array{ return (_particles); } protected function sortParticles():void{ } public function removeActivity(_arg1:Activity):void{ if (_activities.remove(_arg1)){ _arg1.removedFromEmitter(this); }; } public function set maximumFrameTime(_arg1:Number):void{ _maximumFrameTime = _arg1; } protected function initParticle(_arg1:Particle):void{ } public function addAction(_arg1:Action, _arg2:Number=NaN):void{ if (isNaN(_arg2)){ _arg2 = _arg1.getDefaultPriority(); }; _actions.add(_arg1, _arg2); _arg1.addedToEmitter(this); } public function hasInitializerOfType(_arg1:Class):Boolean{ var _local2:uint = _initializers.length; var _local3:uint; while (_local3 < _local2) { if ((_initializers[_local3] is _arg1)){ return (true); }; _local3++; }; return (false); } public function resume():void{ _running = true; } public function removeInitializer(_arg1:Initializer):void{ if (_initializers.remove(_arg1)){ _arg1.removedFromEmitter(this); }; } public function get running():Boolean{ return (_running); } public function hasActionOfType(_arg1:Class):Boolean{ var _local2:uint = _actions.length; var _local3:uint; while (_local3 < _local2) { if ((_actions[_local3] is _arg1)){ return (true); }; _local3++; }; return (false); } public function get fixedFrameTime():Number{ return (_fixedFrameTime); } public function set particleFactory(_arg1:ParticleFactory):void{ _particleFactory = _arg1; } public function hasActivity(_arg1:Activity):Boolean{ return (_activities.contains(_arg1)); } public function addActivity(_arg1:Activity, _arg2:Number=NaN):void{ if (isNaN(_arg2)){ _arg2 = _arg1.getDefaultPriority(); }; _activities.add(_arg1, _arg2); _arg1.addedToEmitter(this); } public function update(_arg1:Number):void{ var _local2:int; var _local3:Particle; var _local5:Action; var _local6:int; var _local7:int; if (!_running){ return; }; if (_arg1 > _maximumFrameTime){ _arg1 = _maximumFrameTime; }; var _local4:int = _counter.updateEmitter(this, _arg1); _local2 = 0; while (_local2 < _local4) { createParticle(); _local2++; }; sortParticles(); _local4 = _activities.length; _local2 = 0; while (_local2 < _local4) { _activities[_local2].update(this, _arg1); _local2++; }; if (_particles.length > 0){ _local4 = _actions.length; _local6 = _particles.length; _local7 = 0; while (_local7 < _local4) { _local5 = _actions[_local7]; _local2 = 0; while (_local2 < _local6) { _local3 = _particles[_local2]; _local5.update(this, _local3, _arg1); _local2++; }; _local7++; }; _local2 = _local6; while (_local2--) { _local3 = _particles[_local2]; if (_local3.isDead){ dispatchEvent(new ParticleEvent(ParticleEvent.PARTICLE_DEAD, _local3)); _particleFactory.disposeParticle(_local3); _particles.splice(_local2, 1); }; }; } else { dispatchEvent(new EmitterEvent(EmitterEvent.EMITTER_EMPTY)); }; dispatchEvent(new EmitterEvent(EmitterEvent.EMITTER_UPDATED)); } public function addExistingParticles(_arg1:Array, _arg2:Boolean=false):void{ var _local4:int; var _local5:int; var _local6:int; var _local3:int = _arg1.length; if (_arg2){ _local5 = _initializers.length; _local6 = 0; while (_local6 < _local5) { _local4 = 0; while (_local4 < _local3) { _initializers[_local6].initialize(this, _arg1[_local4]); _local4++; }; _local6++; }; }; _local4 = 0; while (_local4 < _local3) { _particles.push(_arg1[_local4]); dispatchEvent(new ParticleEvent(ParticleEvent.PARTICLE_ADDED, _arg1[_local4])); _local4++; }; } public function removeAction(_arg1:Action):void{ if (_actions.remove(_arg1)){ _arg1.removedFromEmitter(this); }; } public function hasActivityOfType(_arg1:Class):Boolean{ var _local2:uint = _activities.length; var _local3:uint; while (_local3 < _local2) { if ((_activities[_local3] is _arg1)){ return (true); }; _local3++; }; return (false); } public function set useInternalTick(_arg1:Boolean):void{ if (_useInternalTick != _arg1){ _useInternalTick = _arg1; if (_started){ if (_useInternalTick){ FrameUpdater.instance.addEventListener(UpdateEvent.UPDATE, updateEventListener, false, 0, true); } else { FrameUpdater.instance.removeEventListener(UpdateEvent.UPDATE, updateEventListener); }; }; }; } public function hasInitializer(_arg1:Initializer):Boolean{ return (_initializers.contains(_arg1)); } public function start():void{ if (_useInternalTick){ FrameUpdater.instance.addEventListener(UpdateEvent.UPDATE, updateEventListener, false, 0, true); }; _started = true; _running = true; var _local1:int = _activities.length; var _local2:int; while (_local2 < _local1) { _activities[_local2].initialize(this); _local2++; }; _local1 = _counter.startEmitter(this); _local2 = 0; while (_local2 < _local1) { createParticle(); _local2++; }; } public function hasAction(_arg1:Action):Boolean{ return (_actions.contains(_arg1)); } public function pause():void{ _running = false; } public function set counter(_arg1:Counter):void{ _counter = _arg1; if (running){ _counter.startEmitter(this); }; } public function get counter():Counter{ return (_counter); } public function runAhead(_arg1:Number, _arg2:Number=10):void{ var _local3:Number = _maximumFrameTime; var _local4:Number = (1 / _arg2); _maximumFrameTime = _local4; while (_arg1 > 0) { _arg1 = (_arg1 - _local4); update(_local4); }; _maximumFrameTime = _local3; } } }//package org.flintparticles.common.emitters
Section 183
//EmitterEvent (org.flintparticles.common.events.EmitterEvent) package org.flintparticles.common.events { import flash.events.*; public class EmitterEvent extends Event { public static var EMITTER_UPDATED:String = "emitterUpdated"; public static var EMITTER_EMPTY:String = "emitterEmpty"; public function EmitterEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false){ super(_arg1, _arg2, _arg3); } } }//package org.flintparticles.common.events
Section 184
//ParticleEvent (org.flintparticles.common.events.ParticleEvent) package org.flintparticles.common.events { import flash.events.*; import org.flintparticles.common.particles.*; public class ParticleEvent extends Event { public var particle:Particle; public var otherObject; public static var PARTICLES_COLLISION:String = "particlesCollision"; public static var PARTICLE_ADDED:String = "particleAdded"; public static var PARTICLE_DEAD:String = "particleDead"; public static var PARTICLE_CREATED:String = "particleCreated"; public function ParticleEvent(_arg1:String, _arg2:Particle=null, _arg3:Boolean=false, _arg4:Boolean=false){ super(_arg1, _arg3, _arg4); this.particle = _arg2; } } }//package org.flintparticles.common.events
Section 185
//UpdateEvent (org.flintparticles.common.events.UpdateEvent) package org.flintparticles.common.events { import flash.events.*; public class UpdateEvent extends Event { public var time:Number; public static var UPDATE:String = "update"; public function UpdateEvent(_arg1:String, _arg2:Number=NaN, _arg3:Boolean=false, _arg4:Boolean=false){ super(_arg1, _arg3, _arg4); this.time = _arg2; } } }//package org.flintparticles.common.events
Section 186
//ImageClass (org.flintparticles.common.initializers.ImageClass) package org.flintparticles.common.initializers { import org.flintparticles.common.emitters.*; import org.flintparticles.common.particles.*; import org.flintparticles.common.utils.*; public class ImageClass extends InitializerBase { private var _parameters:Array; private var _imageClass:Class; public function ImageClass(_arg1:Class, ... _args){ _imageClass = _arg1; _parameters = _args; } override public function initialize(_arg1:Emitter, _arg2:Particle):void{ _arg2.image = construct(_imageClass, _parameters); } public function get parameters():Array{ return (_parameters); } public function set parameters(_arg1:Array):void{ _parameters = _arg1; } public function set imageClass(_arg1:Class):void{ _imageClass = _arg1; } public function get imageClass():Class{ return (_imageClass); } } }//package org.flintparticles.common.initializers
Section 187
//Initializer (org.flintparticles.common.initializers.Initializer) package org.flintparticles.common.initializers { import org.flintparticles.common.emitters.*; import org.flintparticles.common.particles.*; public interface Initializer { function initialize(_arg1:Emitter, _arg2:Particle):void; function addedToEmitter(_arg1:Emitter):void; function removedFromEmitter(_arg1:Emitter):void; function getDefaultPriority():Number; } }//package org.flintparticles.common.initializers
Section 188
//InitializerBase (org.flintparticles.common.initializers.InitializerBase) package org.flintparticles.common.initializers { import org.flintparticles.common.emitters.*; import org.flintparticles.common.particles.*; public class InitializerBase implements Initializer { public function initialize(_arg1:Emitter, _arg2:Particle):void{ } public function addedToEmitter(_arg1:Emitter):void{ } public function removedFromEmitter(_arg1:Emitter):void{ } public function getDefaultPriority():Number{ return (0); } } }//package org.flintparticles.common.initializers
Section 189
//ScaleImageInit (org.flintparticles.common.initializers.ScaleImageInit) package org.flintparticles.common.initializers { import org.flintparticles.common.emitters.*; import org.flintparticles.common.particles.*; public class ScaleImageInit extends InitializerBase { private var _max:Number; private var _min:Number; public function ScaleImageInit(_arg1:Number, _arg2:Number=NaN){ _min = _arg1; if (isNaN(_arg2)){ _max = _min; } else { _max = _arg2; }; } public function get scale():Number{ return (((_min == _max)) ? _min : ((_max + _min) / 2)); } public function set maxScale(_arg1:Number):void{ _max = _arg1; } public function get maxScale():Number{ return (_max); } public function set minScale(_arg1:Number):void{ _min = _arg1; } public function set scale(_arg1:Number):void{ _max = (_min = _arg1); } override public function initialize(_arg1:Emitter, _arg2:Particle):void{ if (_max == _min){ _arg2.scale = _min; } else { _arg2.scale = (_min + (Math.random() * (_max - _min))); }; } public function get minScale():Number{ return (_min); } } }//package org.flintparticles.common.initializers
Section 190
//Particle (org.flintparticles.common.particles.Particle) package org.flintparticles.common.particles { import flash.utils.*; import flash.geom.*; public class Particle { public var energy:Number;// = 1 public var lifetime:Number;// = 0 public var scale:Number;// = 1 public var image;// = null public var color:uint;// = 4294967295 public var collisionRadius:Number;// = 1 private var _colorTransform:ColorTransform;// = null private var _previousColor:uint; public var isDead:Boolean;// = false public var mass:Number;// = 1 private var _dictionary:Dictionary;// = null public var age:Number;// = 0 public function get dictionary():Dictionary{ if (_dictionary == null){ _dictionary = new Dictionary(true); }; return (_dictionary); } public function get colorTransform():ColorTransform{ if (((!(_colorTransform)) || (!((_previousColor == color))))){ _colorTransform = new ColorTransform((((color >>> 16) & 0xFF) / 0xFF), (((color >>> 8) & 0xFF) / 0xFF), ((color & 0xFF) / 0xFF), (((color >>> 24) & 0xFF) / 0xFF), 0, 0, 0, 0); _previousColor = color; }; return (_colorTransform); } protected function cloneInto(_arg1:Particle):Particle{ var _local2:Object; _arg1.color = color; _arg1.scale = scale; _arg1.mass = mass; _arg1.collisionRadius = collisionRadius; _arg1.lifetime = lifetime; _arg1.age = age; _arg1.energy = energy; _arg1.isDead = isDead; _arg1.image = image; if (_dictionary){ _arg1._dictionary = new Dictionary(true); for (_local2 in _dictionary) { _arg1._dictionary[_local2] = _dictionary[_local2]; }; }; return (_arg1); } public function get alpha():Number{ return ((((color & 4278190080) >>> 24) / 0xFF)); } public function initialize():void{ color = 4294967295; scale = 1; mass = 1; collisionRadius = 1; lifetime = 0; age = 0; energy = 1; isDead = false; image = null; _dictionary = null; _colorTransform = null; } public function clone(_arg1:ParticleFactory=null):Particle{ var _local2:Particle; if (_arg1){ _local2 = _arg1.createParticle(); } else { _local2 = new Particle(); }; return (cloneInto(_local2)); } } }//package org.flintparticles.common.particles
Section 191
//ParticleFactory (org.flintparticles.common.particles.ParticleFactory) package org.flintparticles.common.particles { public interface ParticleFactory { function createParticle():Particle; function disposeParticle(_arg1:Particle):void; } }//package org.flintparticles.common.particles
Section 192
//Renderer (org.flintparticles.common.renderers.Renderer) package org.flintparticles.common.renderers { import org.flintparticles.common.emitters.*; public interface Renderer { function removeEmitter(_arg1:Emitter):void; function addEmitter(_arg1:Emitter):void; } }//package org.flintparticles.common.renderers
Section 193
//SpriteRendererBase (org.flintparticles.common.renderers.SpriteRendererBase) package org.flintparticles.common.renderers { import flash.events.*; import flash.display.*; import org.flintparticles.common.emitters.*; import org.flintparticles.common.events.*; import org.flintparticles.common.particles.*; public class SpriteRendererBase extends Sprite implements Renderer { protected var _emitters:Array; public function SpriteRendererBase(){ _emitters = new Array(); mouseEnabled = false; mouseChildren = false; addEventListener(Event.ADDED_TO_STAGE, addedToStage, false, 0, true); } private function particleAdded(_arg1:ParticleEvent):void{ addParticle(_arg1.particle); if (stage){ stage.invalidate(); }; } private function addedToStage(_arg1:Event):void{ if (stage){ stage.invalidate(); }; } public function get emitters():Array{ return (_emitters); } protected function addParticle(_arg1:Particle):void{ } private function updateParticles(_arg1:Event):void{ var _local2:Array = new Array(); var _local3:int; while (_local3 < _emitters.length) { _local2 = _local2.concat(_emitters[_local3].particles); _local3++; }; renderParticles(_local2); } private function emitterUpdated(_arg1:EmitterEvent):void{ if (stage){ stage.invalidate(); }; } public function removeEmitter(_arg1:Emitter):void{ var _local3:Particle; var _local2:int; while (_local2 < _emitters.length) { if (_emitters[_local2] == _arg1){ _emitters.splice(_local2, 1); _arg1.removeEventListener(EmitterEvent.EMITTER_UPDATED, emitterUpdated); _arg1.removeEventListener(ParticleEvent.PARTICLE_CREATED, particleAdded); _arg1.removeEventListener(ParticleEvent.PARTICLE_ADDED, particleAdded); _arg1.removeEventListener(ParticleEvent.PARTICLE_DEAD, particleRemoved); for each (_local3 in _arg1.particles) { removeParticle(_local3); }; if (_emitters.length == 0){ removeEventListener(Event.RENDER, updateParticles); renderParticles([]); } else { stage.invalidate(); }; return; }; _local2++; }; } protected function renderParticles(_arg1:Array):void{ } protected function removeParticle(_arg1:Particle):void{ } private function particleRemoved(_arg1:ParticleEvent):void{ removeParticle(_arg1.particle); if (stage){ stage.invalidate(); }; } public function addEmitter(_arg1:Emitter):void{ var _local2:Particle; _emitters.push(_arg1); if (stage){ stage.invalidate(); }; _arg1.addEventListener(EmitterEvent.EMITTER_UPDATED, emitterUpdated, false, 0, true); _arg1.addEventListener(ParticleEvent.PARTICLE_CREATED, particleAdded, false, 0, true); _arg1.addEventListener(ParticleEvent.PARTICLE_ADDED, particleAdded, false, 0, true); _arg1.addEventListener(ParticleEvent.PARTICLE_DEAD, particleRemoved, false, 0, true); for each (_local2 in _arg1.particles) { addParticle(_local2); }; if (_emitters.length == 1){ addEventListener(Event.RENDER, updateParticles, false, 0, true); }; } } }//package org.flintparticles.common.renderers
Section 194
//construct (org.flintparticles.common.utils.construct) package org.flintparticles.common.utils { public function construct(_arg1:Class, _arg2:Array){ switch (_arg2.length){ case 0: return (new (_arg1)); case 1: return (new _arg1(_arg2[0])); case 2: return (new _arg1(_arg2[0], _arg2[1])); case 3: return (new _arg1(_arg2[0], _arg2[1], _arg2[2])); case 4: return (new _arg1(_arg2[0], _arg2[1], _arg2[2], _arg2[3])); case 5: return (new _arg1(_arg2[0], _arg2[1], _arg2[2], _arg2[3], _arg2[4])); case 6: return (new _arg1(_arg2[0], _arg2[1], _arg2[2], _arg2[3], _arg2[4], _arg2[5])); case 7: return (new _arg1(_arg2[0], _arg2[1], _arg2[2], _arg2[3], _arg2[4], _arg2[5], _arg2[6])); case 8: return (new _arg1(_arg2[0], _arg2[1], _arg2[2], _arg2[3], _arg2[4], _arg2[5], _arg2[6], _arg2[7])); case 9: return (new _arg1(_arg2[0], _arg2[1], _arg2[2], _arg2[3], _arg2[4], _arg2[5], _arg2[6], _arg2[7], _arg2[8])); case 10: return (new _arg1(_arg2[0], _arg2[1], _arg2[2], _arg2[3], _arg2[4], _arg2[5], _arg2[6], _arg2[7], _arg2[8], _arg2[9])); default: return (null); }; } }//package org.flintparticles.common.utils
Section 195
//FrameUpdater (org.flintparticles.common.utils.FrameUpdater) package org.flintparticles.common.utils { import flash.events.*; import flash.display.*; import flash.utils.*; import org.flintparticles.common.events.*; public class FrameUpdater extends EventDispatcher { private var _shape:Shape; private var _time:Number; private static var _instance:FrameUpdater; public function FrameUpdater(){ _shape = new Shape(); _shape.addEventListener(Event.ENTER_FRAME, frameUpdate, false, 0, true); _time = getTimer(); } private function frameUpdate(_arg1:Event):void{ var _local2:int = _time; _time = getTimer(); var _local3:Number = ((_time - _local2) * 0.001); dispatchEvent(new UpdateEvent(UpdateEvent.UPDATE, _local3)); } public static function get instance():FrameUpdater{ if (_instance == null){ _instance = new (FrameUpdater); }; return (_instance); } } }//package org.flintparticles.common.utils
Section 196
//Maths (org.flintparticles.common.utils.Maths) package org.flintparticles.common.utils { public class Maths { private static const DEGTORAD:Number = 0.0174532925199433; private static const RADTODEG:Number = 57.2957795130823; public static function asRadians(_arg1:Number):Number{ return ((_arg1 * DEGTORAD)); } public static function asDegrees(_arg1:Number):Number{ return ((_arg1 * RADTODEG)); } } }//package org.flintparticles.common.utils
Section 197
//PriorityArray (org.flintparticles.common.utils.PriorityArray) package org.flintparticles.common.utils { import flash.utils.*; public class PriorityArray extends Proxy { private var _values:Array; public function PriorityArray(){ _values = new Array(); } public function remove(_arg1):Boolean{ var _local2:uint = _values.length; while (_local2--) { if (_values[_local2].value == _arg1){ _values.splice(_local2, 1); return (true); }; }; return (false); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function nextName(_arg1:int):String{ return ((_arg1 - 1).toString()); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function setProperty(_arg1, _arg2):void{ var _local3:uint = uint(_arg1); if ((((_local3 == _arg1)) && ((_local3 < _values.length)))){ _values[_local3].value = _arg2; }; } public function add(_arg1, _arg2:Number):uint{ var _local3:uint = _values.length; var _local4:uint; while (_local4 < _local3) { if (_values[_local4].priority < _arg2){ break; }; _local4++; }; _values.splice(_local4, 0, new Pair(_arg2, _arg1)); return (_values.length); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function getProperty(_arg1){ var _local2:int = int(_arg1); if ((((((_local2 == _arg1)) && ((_local2 < _values.length)))) && (_values[_local2]))){ return (_values[_local2].value); }; return (undefined); } public function clear():void{ _values.length = 0; } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function nextNameIndex(_arg1:int):int{ if (_arg1 < _values.length){ return ((_arg1 + 1)); }; return (0); } public function get length():uint{ return (_values.length); } public function removeAt(_arg1:uint){ var _local2:* = _values[_arg1].value; _values.splice(_arg1, 1); return (_local2); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function nextValue(_arg1:int){ return (_values[(_arg1 - 1)].value); } public function contains(_arg1):Boolean{ var _local2:uint = _values.length; while (_local2--) { if (_values[_local2].value == _arg1){ return (true); }; }; return (false); } } }//package org.flintparticles.common.utils class Pair { private var value; private var priority:Number; private function Pair(_arg1:Number, _arg2){ this.priority = _arg1; this.value = _arg2; } }
Section 198
//DeathZone (org.flintparticles.twoD.actions.DeathZone) package org.flintparticles.twoD.actions { import org.flintparticles.common.emitters.*; import org.flintparticles.common.particles.*; import org.flintparticles.common.actions.*; import org.flintparticles.twoD.zones.*; import org.flintparticles.twoD.particles.*; public class DeathZone extends ActionBase { private var _invertZone:Boolean; private var _zone:Zone2D; private var p:Particle2D; private var inside:Boolean; public function DeathZone(_arg1:Zone2D, _arg2:Boolean=false){ _zone = _arg1; _invertZone = _arg2; } public function get zoneIsSafe():Boolean{ return (_invertZone); } public function set zoneIsSafe(_arg1:Boolean):void{ _invertZone = _arg1; } override public function update(_arg1:Emitter, _arg2:Particle, _arg3:Number):void{ p = Particle2D(_arg2); inside = _zone.contains(p.x, p.y); if (_invertZone){ if (!inside){ p.isDead = true; }; } else { if (inside){ p.isDead = true; }; }; } public function get zone():Zone2D{ return (_zone); } override public function getDefaultPriority():Number{ return (-20); } public function set zone(_arg1:Zone2D):void{ _zone = _arg1; } } }//package org.flintparticles.twoD.actions
Section 199
//Move (org.flintparticles.twoD.actions.Move) package org.flintparticles.twoD.actions { import org.flintparticles.common.emitters.*; import org.flintparticles.common.particles.*; import org.flintparticles.common.actions.*; import org.flintparticles.twoD.particles.*; public class Move extends ActionBase { private var p:Particle2D; override public function getDefaultPriority():Number{ return (-10); } override public function update(_arg1:Emitter, _arg2:Particle, _arg3:Number):void{ p = Particle2D(_arg2); p.x = (p.x + (p.velX * _arg3)); p.y = (p.y + (p.velY * _arg3)); } } }//package org.flintparticles.twoD.actions
Section 200
//RandomDrift (org.flintparticles.twoD.actions.RandomDrift) package org.flintparticles.twoD.actions { import org.flintparticles.common.emitters.*; import org.flintparticles.common.particles.*; import org.flintparticles.common.actions.*; import org.flintparticles.twoD.particles.*; public class RandomDrift extends ActionBase { private var _sizeX:Number; private var _sizeY:Number; public function RandomDrift(_arg1:Number, _arg2:Number){ _sizeX = (_arg1 * 2); _sizeY = (_arg2 * 2); } override public function update(_arg1:Emitter, _arg2:Particle, _arg3:Number):void{ var _local4:Particle2D = Particle2D(_arg2); Particle2D(_arg2).velX = (_local4.velX + (((Math.random() - 0.5) * _sizeX) * _arg3)); _local4.velY = (_local4.velY + (((Math.random() - 0.5) * _sizeY) * _arg3)); } public function get driftY():Number{ return ((_sizeY / 2)); } public function set driftY(_arg1:Number):void{ _sizeY = (_arg1 * 2); } public function set driftX(_arg1:Number):void{ _sizeX = (_arg1 * 2); } public function get driftX():Number{ return ((_sizeX / 2)); } } }//package org.flintparticles.twoD.actions
Section 201
//Emitter2D (org.flintparticles.twoD.emitters.Emitter2D) package org.flintparticles.twoD.emitters { import org.flintparticles.common.emitters.*; import org.flintparticles.common.particles.*; import org.flintparticles.common.utils.*; import org.flintparticles.twoD.particles.*; public class Emitter2D extends Emitter { protected var _y:Number;// = 0 public var spaceSort:Boolean;// = false public var spaceSortedX:Array; protected var _x:Number;// = 0 protected var _rotation:Number;// = 0 protected static var _creator:ParticleCreator2D = new ParticleCreator2D(); public function Emitter2D(){ _particleFactory = _creator; } public function get y():Number{ return (_y); } override protected function initParticle(_arg1:Particle):void{ var _local2:Particle2D; _local2 = Particle2D(_arg1); _local2.x = _x; _local2.y = _y; _local2.rotation = _rotation; } override protected function sortParticles():void{ var _local1:int; var _local2:int; if (spaceSort){ spaceSortedX = _particles.sortOn("x", (Array.NUMERIC | Array.RETURNINDEXEDARRAY)); _local1 = _particles.length; _local2 = 0; while (_local2 < _local1) { _particles[spaceSortedX[_local2]].sortID = _local2; _local2++; }; }; } public function set x(_arg1:Number):void{ _x = _arg1; } public function set rotRadians(_arg1:Number):void{ _rotation = _arg1; } public function get x():Number{ return (_x); } public function get rotRadians():Number{ return (_rotation); } public function set rotation(_arg1:Number):void{ _rotation = Maths.asRadians(_arg1); } public function get rotation():Number{ return (Maths.asDegrees(_rotation)); } public function set y(_arg1:Number):void{ _y = _arg1; } public static function get defaultParticleFactory():ParticleFactory{ return (_creator); } } }//package org.flintparticles.twoD.emitters
Section 202
//Position (org.flintparticles.twoD.initializers.Position) package org.flintparticles.twoD.initializers { import flash.geom.*; import org.flintparticles.common.emitters.*; import org.flintparticles.common.particles.*; import org.flintparticles.common.initializers.*; import org.flintparticles.twoD.zones.*; import org.flintparticles.twoD.particles.*; public class Position extends InitializerBase { private var _zone:Zone2D; public function Position(_arg1:Zone2D){ _zone = _arg1; } override public function initialize(_arg1:Emitter, _arg2:Particle):void{ var _local5:Number; var _local6:Number; var _local3:Particle2D = Particle2D(_arg2); var _local4:Point = _zone.getLocation(); if (_local3.rotation == 0){ _local3.x = (_local3.x + _local4.x); _local3.y = (_local3.y + _local4.y); } else { _local5 = Math.sin(_local3.rotation); _local6 = Math.cos(_local3.rotation); _local3.x = (_local3.x + ((_local6 * _local4.x) - (_local5 * _local4.y))); _local3.y = (_local3.y + ((_local6 * _local4.y) + (_local5 * _local4.x))); }; } public function set zone(_arg1:Zone2D):void{ _zone = _arg1; } public function get zone():Zone2D{ return (_zone); } } }//package org.flintparticles.twoD.initializers
Section 203
//Velocity (org.flintparticles.twoD.initializers.Velocity) package org.flintparticles.twoD.initializers { import flash.geom.*; import org.flintparticles.common.emitters.*; import org.flintparticles.common.particles.*; import org.flintparticles.common.initializers.*; import org.flintparticles.twoD.zones.*; import org.flintparticles.twoD.particles.*; public class Velocity extends InitializerBase { private var _zone:Zone2D; public function Velocity(_arg1:Zone2D){ _zone = _arg1; } override public function initialize(_arg1:Emitter, _arg2:Particle):void{ var _local3:Particle2D; var _local5:Number; var _local6:Number; _local3 = Particle2D(_arg2); var _local4:Point = _zone.getLocation(); if (_local3.rotation == 0){ _local3.velX = _local4.x; _local3.velY = _local4.y; } else { _local5 = Math.sin(_local3.rotation); _local6 = Math.cos(_local3.rotation); _local3.velX = ((_local6 * _local4.x) - (_local5 * _local4.y)); _local3.velY = ((_local6 * _local4.y) + (_local5 * _local4.x)); }; } public function set zone(_arg1:Zone2D):void{ _zone = _arg1; } public function get zone():Zone2D{ return (_zone); } } }//package org.flintparticles.twoD.initializers
Section 204
//Particle2D (org.flintparticles.twoD.particles.Particle2D) package org.flintparticles.twoD.particles { import flash.geom.*; import org.flintparticles.common.particles.*; public class Particle2D extends Particle { public var sortID:int;// = -1 private var _inertia:Number; public var velY:Number;// = 0 private var _previousRadius:Number; private var _previousMass:Number; public var angVelocity:Number;// = 0 public var x:Number;// = 0 public var y:Number;// = 0 public var velX:Number;// = 0 public var rotation:Number;// = 0 override public function clone(_arg1:ParticleFactory=null):Particle{ var _local2:Particle2D; if (_arg1){ _local2 = (_arg1.createParticle() as Particle2D); } else { _local2 = new Particle2D(); }; cloneInto(_local2); _local2.x = x; _local2.y = y; _local2.velX = velX; _local2.velY = velY; _local2.rotation = rotation; _local2.angVelocity = angVelocity; return (_local2); } override public function initialize():void{ super.initialize(); x = 0; y = 0; velX = 0; velY = 0; rotation = 0; angVelocity = 0; sortID = -1; } public function get matrixTransform():Matrix{ var _local1:Number = (scale * Math.cos(rotation)); var _local2:Number = (scale * Math.sin(rotation)); return (new Matrix(_local1, _local2, -(_local2), _local1, x, y)); } public function get inertia():Number{ if (((!((mass == _previousMass))) || (!((collisionRadius == _previousRadius))))){ _inertia = (((mass * collisionRadius) * collisionRadius) * 0.5); _previousMass = mass; _previousRadius = collisionRadius; }; return (_inertia); } } }//package org.flintparticles.twoD.particles
Section 205
//ParticleCreator2D (org.flintparticles.twoD.particles.ParticleCreator2D) package org.flintparticles.twoD.particles { import org.flintparticles.common.particles.*; public class ParticleCreator2D implements ParticleFactory { private var _particles:Array; public function ParticleCreator2D(){ _particles = new Array(); } public function clearAllParticles():void{ _particles = new Array(); } public function disposeParticle(_arg1:Particle):void{ if ((_arg1 is Particle2D)){ _arg1.initialize(); _particles.push(_arg1); }; } public function createParticle():Particle{ if (_particles.length){ return (_particles.pop()); }; return (new Particle2D()); } } }//package org.flintparticles.twoD.particles
Section 206
//DisplayObjectRenderer (org.flintparticles.twoD.renderers.DisplayObjectRenderer) package org.flintparticles.twoD.renderers { import flash.display.*; import org.flintparticles.common.particles.*; import org.flintparticles.common.renderers.*; import org.flintparticles.twoD.particles.*; public class DisplayObjectRenderer extends SpriteRendererBase { override protected function removeParticle(_arg1:Particle):void{ removeChild(_arg1.image); } override protected function addParticle(_arg1:Particle):void{ addChildAt(_arg1.image, 0); } override protected function renderParticles(_arg1:Array):void{ var _local2:Particle2D; var _local3:DisplayObject; var _local4:int = _arg1.length; var _local5:int; while (_local5 < _local4) { _local2 = _arg1[_local5]; _local3 = _local2.image; _local3.transform.colorTransform = _local2.colorTransform; _local3.transform.matrix = _local2.matrixTransform; _local5++; }; } } }//package org.flintparticles.twoD.renderers
Section 207
//PointZone (org.flintparticles.twoD.zones.PointZone) package org.flintparticles.twoD.zones { import flash.geom.*; public class PointZone implements Zone2D { private var _point:Point; public function PointZone(_arg1:Point){ _point = _arg1; } public function get point():Point{ return (_point); } public function getArea():Number{ return (1); } public function set point(_arg1:Point):void{ _point = _arg1; } public function getLocation():Point{ return (_point.clone()); } public function contains(_arg1:Number, _arg2:Number):Boolean{ return ((((_point.x == _arg1)) && ((_point.y == _arg2)))); } } }//package org.flintparticles.twoD.zones
Section 208
//RectangleZone (org.flintparticles.twoD.zones.RectangleZone) package org.flintparticles.twoD.zones { import flash.geom.*; public class RectangleZone implements Zone2D { private var _height:Number; private var _width:Number; private var _bottom:Number; private var _right:Number; private var _top:Number; private var _left:Number; public function RectangleZone(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number){ _left = _arg1; _top = _arg2; _right = _arg3; _bottom = _arg4; _width = (_arg3 - _arg1); _height = (_arg4 - _arg2); } public function getArea():Number{ return ((_width * _height)); } public function get top():Number{ return (_top); } public function set bottom(_arg1:Number):void{ _bottom = _arg1; _height = (bottom - top); } public function get right():Number{ return (_right); } public function set left(_arg1:Number):void{ _left = _arg1; _width = (right - left); } public function get left():Number{ return (_left); } public function set top(_arg1:Number):void{ _top = _arg1; _height = (bottom - top); } public function contains(_arg1:Number, _arg2:Number):Boolean{ return ((((((((_arg1 >= _left)) && ((_arg1 <= _right)))) && ((_arg2 >= _top)))) && ((_arg2 <= _bottom)))); } public function get bottom():Number{ return (_bottom); } public function set right(_arg1:Number):void{ _right = _arg1; _width = (right - left); } public function getLocation():Point{ return (new Point((_left + (Math.random() * _width)), (_top + (Math.random() * _height)))); } } }//package org.flintparticles.twoD.zones
Section 209
//Zone2D (org.flintparticles.twoD.zones.Zone2D) package org.flintparticles.twoD.zones { import flash.geom.*; public interface Zone2D { function getArea():Number; function getLocation():Point; function contains(_arg1:Number, _arg2:Number):Boolean; } }//package org.flintparticles.twoD.zones
Section 210
//BitmapFont (SFXLib.BitmapFont) package SFXLib { import flash.display.*; import flash.geom.*; public class BitmapFont { private var _matrix:Matrix; private var _indexes:Array; private var _bmp:BitmapData; private var _charWidth:int; private var _charHeight:int; public static const ALIGN_LEFT:Number = 1; public static const ALIGN_BOTTOM:Number = 5; public static const ALIGN_RIGHT:Number = 2; public static const ALIGN_TOP:Number = 4; public static const ALIGN_CENTER:Number = 0; public function BitmapFont(_arg1:BitmapData, _arg2:Number, _arg3:Number, _arg4:Array=null){ _bmp = _arg1; _charHeight = int(_arg3); _charWidth = int(_arg2); _indexes = _arg4; _matrix = new Matrix(); } public function paintText(_arg1:String, _arg2:Sprite, _arg3:Number, _arg4:Number, _arg5:Number=1, _arg6:Number=5):void{ var _local8:Number; switch (_arg5){ case ALIGN_CENTER: _arg3 = (_arg3 - ((_arg1.length * _charWidth) / 2)); break; case ALIGN_RIGHT: _arg3 = (_arg3 - (_arg1.length * _charWidth)); break; }; switch (_arg6){ case ALIGN_CENTER: _arg4 = (_arg4 + (_charHeight / 2)); break; case ALIGN_TOP: _arg4 = (_arg4 + _charHeight); break; }; var _local7:Number = 0; while (_local7 < _arg1.length) { _local8 = _arg1.charCodeAt(_local7); paintChar(_local8, _arg2, (_arg3 + (_local7 * _charWidth)), _arg4); _local7++; }; } public function paintChar(_arg1:Number, _arg2:Sprite, _arg3:Number, _arg4:Number):void{ var _local5:Number; var _local6:Number; if (_indexes != null){ _local5 = 0; for each (_local6 in _indexes) { if ((((_arg1 >= _local6)) && ((_arg1 < (_local6 + (_bmp.width / _charWidth)))))){ _matrix.identity(); _matrix.translate(((-((_arg1 - _local6)) * _charWidth) + int(_arg3)), ((-(_local5) * _charHeight) + int(_arg4))); _arg2.graphics.beginBitmapFill(_bmp, _matrix, false); _arg2.graphics.drawRect(int(_arg3), int(_arg4), _charWidth, _charHeight); _arg2.graphics.endFill(); break; }; _local5++; }; }; } } }//package SFXLib
Section 211
//PaperRain (SFXLib.PaperRain) package SFXLib { import flash.geom.*; import org.flintparticles.common.initializers.*; import org.flintparticles.common.actions.*; import org.flintparticles.common.counters.*; import org.flintparticles.twoD.zones.*; import org.flintparticles.twoD.emitters.*; import org.flintparticles.twoD.actions.*; import org.flintparticles.twoD.initializers.*; import org.flintparticles.common.displayObjects.*; public class PaperRain extends Emitter2D { public function PaperRain(){ counter = new Steady(200); addInitializer(new ImageClass(Rect, 2, 2)); addInitializer(new Position(new RectangleZone(0, 0, DEF.SCREEN_WIDTH, DEF.SCREEN_HEIGHT))); addInitializer(new Velocity(new PointZone(new Point(0, 65)))); addInitializer(new ScaleImageInit(0.75, 4)); addAction(new Move()); addAction(new DeathZone(new RectangleZone(-5, -5, (DEF.SCREEN_WIDTH + 10), (DEF.SCREEN_HEIGHT + 10)), true)); addAction(new RandomDrift(250, 50)); addAction(new Fade(1, 0)); } } }//package SFXLib
Section 212
//SFX (SFXLib.SFX) package SFXLib { import flash.display.*; import flash.geom.*; import flash.text.*; import caurina.transitions.*; import flash.filters.*; public class SFX { protected var _rewardText:TextField; private static var _instance:SFX = null; public function showFadingMessage(_arg1:Sprite, _arg2:BitmapData, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Function=null):void{ var spr:Sprite; var parent = _arg1; var bmp = _arg2; var posX = _arg3; var posY = _arg4; var seconds = _arg5; var delay = _arg6; var callback = _arg7; spr = new Sprite(); parent.addChild(spr); var matrix:Matrix = new Matrix(); matrix.translate((-(bmp.width) / 2), (-(bmp.height) / 2)); spr.graphics.beginBitmapFill(bmp, matrix); spr.graphics.drawRect((-(bmp.width) / 2), (-(bmp.height) / 2), bmp.width, bmp.height); spr.graphics.endFill(); spr.x = posX; spr.y = posY; spr.scaleX = 5; spr.scaleY = 0.5; spr.alpha = 1.5; var filter:BlurFilter = new BlurFilter(10, 0, 2); spr.filters = [filter]; spr.visible = false; MediaPlayer.getSingleton().play(MediaPlayer.SND_INGAME_MESSAGE); Tweener.addTween(spr, {time:delay, onComplete:function ():void{ spr.visible = true; }}); Tweener.addTween(spr, {delay:delay, time:(seconds / 4), scaleX:0.5, onComplete:function ():void{ spr.filters = null; }}); Tweener.addTween(spr, {delay:((seconds / 4) + delay), time:((seconds * 3) / 4), alpha:0, scaleX:1.5, scaleY:1.5, transition:"easeOutInQuart", onComplete:function ():void{ parent.removeChild(spr); if (callback != null){ callback(); }; }}); } public function showReward(_arg1:Sprite, _arg2:String, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number):void{ var format:TextFormat; var bmpFilter:BitmapFilter; var newFilter:Array; var parent = _arg1; var str = _arg2; var textWidth = _arg3; var initialX = _arg4; var initialY = _arg5; var seconds = _arg6; if (!_rewardText){ _rewardText = new TextField(); format = new TextFormat(DEF.REWARD_FONT, DEF.REWARD_FONT_SIZE); _rewardText.width = textWidth; _rewardText.height = 100; format.color = DEF.REWARD_COLOR; format.align = "center"; _rewardText.embedFonts = true; _rewardText.defaultTextFormat = format; _rewardText.selectable = false; bmpFilter = new GlowFilter(0, 0.5); newFilter = new Array(); newFilter.push(bmpFilter); _rewardText.filters = newFilter; parent.addChild(_rewardText); }; if (_rewardText.parent != parent){ _rewardText.parent.removeChild(_rewardText); parent.addChild(_rewardText); }; _rewardText.x = initialX; _rewardText.y = initialY; _rewardText.text = str; _rewardText.visible = true; _rewardText.alpha = 1; Tweener.addTween(_rewardText, {time:seconds, y:(initialY - 50), alpha:0, onComplete:function ():void{ _rewardText.visible = false; }}); } public function maskedExplode(_arg1:Sprite, _arg2:BitmapData, _arg3:BitmapData, _arg4:Number, _arg5:Number, _arg6:Number=-1, _arg7:Number=-1):void{ var _maskedExplodeSpr:Sprite; var spr = _arg1; var originalBitmap = _arg2; var maskData = _arg3; var scale = _arg4; var expTime = _arg5; var centerX = _arg6; var centerY = _arg7; _maskedExplodeSpr = null; var bitmap:BitmapData = originalBitmap.clone(); var mask:BitmapData = new BitmapData(bitmap.width, bitmap.height, true); var rect:Rectangle = new Rectangle(0, 0, bitmap.width, bitmap.height); var point:Point = new Point(0, 0); mask.copyChannel(bitmap, rect, point, 1, 1); mask.copyChannel(bitmap, rect, point, 2, 2); mask.copyChannel(bitmap, rect, point, 4, 4); mask.copyChannel(maskData, rect, point, 1, 8); _maskedExplodeSpr = new Sprite(); spr.addChild(_maskedExplodeSpr); var matrix:Matrix = new Matrix(); matrix.translate((-(bitmap.width) / 2), (-(bitmap.height) / 2)); _maskedExplodeSpr.graphics.beginBitmapFill(mask, matrix); _maskedExplodeSpr.graphics.drawRect((-(bitmap.width) / 2), (-(bitmap.height) / 2), bitmap.width, bitmap.height); _maskedExplodeSpr.graphics.endFill(); _maskedExplodeSpr.x = 0; _maskedExplodeSpr.y = 0; _maskedExplodeSpr.alpha = 1; _maskedExplodeSpr.scaleX = 1; _maskedExplodeSpr.scaleY = 1; var _scaleX:Number = scale; var _scaleY:Number = scale; var _width:Number = bitmap.width; var _height:Number = bitmap.height; var _centerX:Number = (spr.x + (_width / 2)); var _centerY:Number = spr.y; if (centerX != -1){ _centerX = centerX; }; if (centerY != -1){ _centerY = centerY; }; Tweener.addTween(_maskedExplodeSpr, {time:expTime, alpha:0, scaleX:_scaleX, scaleY:_scaleY, onComplete:function ():void{ spr.removeChild(_maskedExplodeSpr); _maskedExplodeSpr = null; }}); } public function radialGradient(_arg1:Sprite, _arg2:Number, _arg3:Number, _arg4:Number=-1, _arg5:Number=-1, _arg6:Boolean=true, _arg7:Number=5):void{ var _local11:BlurFilter; var _local12:Number; var _local13:Number; var _local8:Sprite = (_arg1.getChildByName("RADIAL_GRADIENT") as Sprite); if (_local8 == null){ _local8 = new Sprite(); _arg1.addChild(_local8); _local8.name = "RADIAL_GRADIENT"; if (_arg6){ _local11 = new BlurFilter(10, 10, 2); _local8.filters = [_local11]; }; }; _local8.graphics.clear(); var _local9:Number = (_arg1.width / 2); _arg4 = (_arg4 % (_local9 / _arg2)); var _local10:Number = 0; while (_local10 < _arg2) { _local12 = ((((_local10 * _local9) / _arg2) + _arg4) * _arg3); _local13 = ((_arg2 - _local10) / _arg2); _local8.graphics.lineStyle(_arg7, _arg5, _local13); _local8.graphics.drawCircle(0, 0, _local12); _local10++; }; } public static function getSingleton():SFX{ if (!_instance){ _instance = new (SFX); }; return (_instance); } } }//package SFXLib
Section 213
//BaseSportAI (ShooterLib.AI.BaseSportAI) package ShooterLib.AI { import flash.display.*; import ShooterLib.Unit.*; import ShooterLib.Base.*; public class BaseSportAI { protected var _player:GravityBallSprite; protected var _goUp:Boolean;// = false protected var _goDown:Boolean;// = false protected var _hasShoot:Boolean;// = false protected var _goRight:Boolean;// = false protected var _type:Number; protected var _ballLogic:GravityBallLogic; protected var _friendGoalkeeper:GravityBallLogic; protected var _shoot:Boolean;// = false protected var _foeGoalkeeper:GravityBallLogic; protected var _goLeft:Boolean;// = false protected var _playerLogic:GravityBallLogic; public static const TYPE_AGGRESSIVE:Number = 0; public static const TYPE_TACTIC:Number = 2; public static const TYPE_DEFENSIVE:Number = 1; public static var movingActive:Boolean = true; public static var debugSprite:Sprite; public function BaseSportAI(_arg1:GravityBallSprite, _arg2:GravityBallLogic, _arg3:GravityBallLogic, _arg4:GravityBallLogic, _arg5:Number){ _ballLogic = _arg2; _player = _arg1; _playerLogic = _arg1.logic; _friendGoalkeeper = _arg3; _foeGoalkeeper = _arg4; _type = _arg5; } protected function goToPoint(_arg1:Vector):void{ if (_playerLogic.pos.x < _arg1.x){ _goRight = true; }; if (_playerLogic.pos.x > _arg1.x){ _goLeft = true; }; if (_playerLogic.pos.y > _arg1.y){ _goUp = true; }; if (_playerLogic.pos.y < _arg1.y){ _goDown = true; }; } public function update(_arg1:Array, _arg2:Array):void{ var _local3:Vector; var _local4:Number; var _local7:Vector; var _local8:Number; var _local9:Number; var _local10:Number; _goDown = (_goUp = (_goLeft = (_goRight = (_shoot = false)))); var _local5:GravityBallLogic = (_arg2[0] as GravityBallLogic); var _local6:GravityBallLogic; if (((_arg1) && ((_arg1.length > 0)))){ _local6 = (_arg1[0] as GravityBallLogic); }; switch (_type){ case TYPE_AGGRESSIVE: if (_playerLogic.orbitChild == _ballLogic){ if (_playerLogic.pos.distance(_foeGoalkeeper.pos) < _local5.pos.distance(_foeGoalkeeper.pos)){ if (shouldShoot()){ _local3 = _ballLogic.launchVector; _local4 = _ballLogic.pos.minus(_foeGoalkeeper.pos).degreesWith(_local3); if ((((_local4 > 155)) && ((_local4 < 175)))){ _shoot = true; }; }; goToPoint(_foeGoalkeeper.pos); } else { if (_playerLogic.pos.distance(_local5.pos) < 100){ _local7 = _playerLogic.pos.minus(_local5.pos); _local7.normalizeEquals(); _local7.multEquals(((Math.random() * 10) - 2)); _local7.plusEquals(_playerLogic.pos); goToPoint(_local7); }; if (shouldShoot()){ _local3 = _ballLogic.launchVector; _local4 = _ballLogic.pos.minus(_foeGoalkeeper.pos).degreesWith(_local3); if ((((_local4 > 170)) && ((_local4 < 180)))){ _shoot = true; }; goToPoint(_foeGoalkeeper.pos); }; }; } else { if ((((_local5.orbitChild == _ballLogic)) || (((_local6) && ((_local6.orbitChild == _ballLogic)))))){ if (_local5.pos.distance(_player.pos) > 40){ goToPoint(_local5.pos); }; } else { goToPoint(_ballLogic.pos); }; }; break; case TYPE_DEFENSIVE: if (_playerLogic.orbitChild == _ballLogic){ if (_playerLogic.pos.distance(_foeGoalkeeper.pos) < _local5.pos.distance(_foeGoalkeeper.pos)){ if (shouldShoot()){ _local3 = _ballLogic.launchVector; _local4 = _ballLogic.pos.minus(_foeGoalkeeper.pos).degreesWith(_local3); if ((((_local4 > 155)) && ((_local4 < 175)))){ _shoot = true; }; }; goToPoint(_foeGoalkeeper.pos); } else { if (_playerLogic.pos.distance(_local5.pos) < 100){ _local7 = _playerLogic.pos.minus(_local5.pos); _local7.normalizeEquals(); _local7.multEquals(((Math.random() * 10) - 2)); _local7.plusEquals(_playerLogic.pos); goToPoint(_local7); }; if (shouldShoot()){ _local3 = _ballLogic.launchVector; _local4 = _ballLogic.pos.minus(_foeGoalkeeper.pos).degreesWith(_local3); if ((((_local4 > 170)) && ((_local4 < 180)))){ _shoot = true; }; goToPoint(_foeGoalkeeper.pos); }; }; } else { if ((((_local5.orbitChild == _ballLogic)) || (((_local6) && ((_local6.orbitChild == _ballLogic)))))){ goToPoint(circleDefense(_local5.pos, _friendGoalkeeper.pos, 100)); } else { goToPoint(_ballLogic.pos); }; }; break; case TYPE_TACTIC: if (_playerLogic.orbitChild == _ballLogic){ if (_playerLogic.pos.distance(_local5.pos) < 100){ _local7 = _playerLogic.pos.minus(_local5.pos); _local7.normalizeEquals(); _local7.multEquals(((Math.random() * 10) - 2)); _local7.plusEquals(_playerLogic.pos); goToPoint(_local7); }; if (shouldShoot()){ _local3 = _ballLogic.launchVector; _local4 = _ballLogic.launchVector.degreesWithPositiveX(); _local8 = getBottomWallLaunchAngle(_ballLogic.pos, _foeGoalkeeper.pos); _local9 = getTopWallLaunchAngle(_ballLogic.pos, _foeGoalkeeper.pos); _local10 = _ballLogic.pos.minus(_foeGoalkeeper.pos).degreesWith(_local3); if ((((((Math.abs((_local8 - _local4)) < 5)) || ((Math.abs((_local9 - _local4)) < 5)))) || ((((_local4 > 170)) && ((_local4 < 180)))))){ _shoot = true; }; }; } else { if ((((_local5.orbitChild == _ballLogic)) || (((_local6) && ((_local6.orbitChild == _ballLogic)))))){ if (_local5.pos.distance(_player.pos) > 40){ goToPoint(_local5.pos); }; } else { goToPoint(_ballLogic.pos); }; }; break; }; if (_shoot){ _hasShoot = true; }; if (movingActive){ _player.update(_goUp, _goDown, _goLeft, _goRight, _shoot, 0, 0); } else { _player.update(false, false, false, false, _shoot, 0, 0); }; } public function getTopWallLaunchAngle(_arg1:Vector, _arg2:Vector):Number{ var _local3:Number; var _local4:Number = _arg2.x; var _local5:Number = DEF.MAP_HEIGHT; var _local6:Number = _arg1.x; var _local7:Number = _arg1.y; var _local8:Number = ((((2 * _local4) * _local7) + ((2 * _local5) * _local6)) - (_local4 * _local5)); var _local9:Number = (_local5 + (2 * _local7)); _local3 = (_local8 / _local9); var _local10:Number = (DEF.MAP_HEIGHT / 2); var _local11:Number = (-((_arg2.x - _local3)) / 2); var _local12:Number = _local10; var _local13:Number = (_local12 / _local11); var _local14:Number = (_local10 - (_local13 * _local3)); return (((Math.atan2(-(_local7), ((-(_local14) / _local13) - _local6)) * 180) / Math.PI)); } public function circleDefense(_arg1:Vector, _arg2:Vector, _arg3:Number):Vector{ var _local4:Vector = new Vector(); var _local5:Number = Math.atan2((_arg1.y - _arg2.y), (_arg1.x - _arg2.x)); _local4.x = ((_arg3 * Math.cos(_local5)) + _arg2.x); _local4.y = ((_arg3 * Math.sin(_local5)) + _arg2.y); return (_local4); } public function getBottomWallLaunchAngle(_arg1:Vector, _arg2:Vector):Number{ var _local3:Number; var _local4:Number = _arg2.x; var _local5:Number = DEF.MAP_HEIGHT; var _local6:Number = _arg1.x; var _local7:Number = _arg1.y; var _local8:Number = (((_local5 * _local6) - (_local4 * _local7)) + ((_local5 * _local4) / 2)); var _local9:Number = (2 * (((3 / 4) * _local5) - (_local7 / 2))); _local3 = (_local8 / _local9); var _local10:Number = (DEF.MAP_HEIGHT / 2); var _local11:Number = (-((_arg2.x - _local3)) / 2); var _local12:Number = _local10; var _local13:Number = (_local12 / _local11); var _local14:Number = (_local10 - (_local13 * _local3)); return (((Math.atan2((DEF.MAP_HEIGHT - _local7), ((-(_local14) / _local13) - _local6)) * 180) / Math.PI)); } public function hasShoot():Boolean{ var _local1:Boolean = _hasShoot; _hasShoot = false; return (_local1); } public function shouldShoot():Boolean{ var _local1:Number = _ballLogic.angularVelMagnitude; if (_local1 < ((1 / 3) * DEF.MAX_ANGULAR_VELOCITY)){ return (false); }; if (_local1 >= DEF.MAX_ANGULAR_VELOCITY){ return (true); }; if (Math.random() < 0.3){ return (true); }; return (false); } public static function commandToPoint(_arg1:GravityBallSprite, _arg2:Vector, _arg3:Number=1):Boolean{ var _local4:Boolean; var _local5:Boolean; var _local6:Boolean; var _local7:Boolean; if (_arg1.logic.pos.x < _arg2.x){ _local7 = true; }; if (_arg1.logic.pos.x > _arg2.x){ _local6 = true; }; if (_arg1.logic.pos.y > _arg2.y){ _local4 = true; }; if (_arg1.logic.pos.y < _arg2.y){ _local5 = true; }; _arg1.update(_local4, _local5, _local6, _local7, false, 0, 0); if (_arg1.logic.pos.distance(_arg2) < _arg3){ return (true); }; return (false); } } }//package ShooterLib.AI
Section 214
//Mobile (ShooterLib.Base.Mobile) package ShooterLib.Base { import flash.geom.*; public class Mobile { public var dragCoeff:Number; public var appliedForce:Vector; public var pos:Vector; public var mass:Number; public var vel:Vector; public static var boundingBox:Rectangle; public function resetAppliedForce():void{ appliedForce.setTo(0, 0); } public function update():void{ vel.x = (vel.x + ((appliedForce.x / mass) - (vel.x * dragCoeff))); vel.y = (vel.y + ((appliedForce.y / mass) - (vel.y * dragCoeff))); pos.x = (pos.x + vel.x); pos.y = (pos.y + vel.y); } public function addForce(_arg1:Vector):void{ appliedForce.plusEquals(_arg1); } public function isVisible():Boolean{ if (boundingBox){ if (boundingBox.contains(pos.x, pos.y)){ return (true); }; return (false); }; return (true); } public static function setBoundingBox(_arg1:Rectangle):void{ boundingBox = _arg1.clone(); } } }//package ShooterLib.Base
Section 215
//Vector (ShooterLib.Base.Vector) package ShooterLib.Base { public class Vector { public var y:Number; public var x:Number; public static const UNITY_X:Vector = new Vector(1, 0); ; public static const UNITY_Y:Vector = new Vector(0, 1); ; public function Vector(_arg1:Number=0, _arg2:Number=0){ x = _arg1; y = _arg2; } public function cross(_arg1:Vector):Number{ return (((x * _arg1.y) - (y * _arg1.x))); } public function times(_arg1:Vector):Vector{ return (new Vector((x * _arg1.x), (y * _arg1.y))); } public function radiansWithPositiveX():Number{ var _local1:Vector = normalize(); var _local2:Number = ((_local1.cross(UNITY_X) > 0)) ? -1 : 1; return ((Math.acos(_local1.dot(UNITY_X)) * _local2)); } public function dot(_arg1:Vector):Number{ return (((x * _arg1.x) + (y * _arg1.y))); } public function normalize():Vector{ var _local1:Number = magnitude(); if (_local1 == 0){ _local1 = 0.0001; }; return (mult((1 / _local1))); } public function minusEquals(_arg1:Vector):Vector{ x = (x - _arg1.x); y = (y - _arg1.y); return (this); } public function magnitude():Number{ return (Math.sqrt(((x * x) + (y * y)))); } public function mult(_arg1:Number):Vector{ return (new Vector((x * _arg1), (y * _arg1))); } public function degreesWith(_arg1:Vector):Number{ var _local2:Vector = normalize(); var _local3:Vector = _arg1.normalize(); var _local4:Number = ((_local2.cross(_local3) > 0)) ? -1 : 1; return ((((Math.acos(_local2.dot(_local3)) * _local4) * 180) / Math.PI)); } public function multEquals(_arg1:Number):Vector{ x = (x * _arg1); y = (y * _arg1); return (this); } public function plus(_arg1:Vector):Vector{ return (new Vector((x + _arg1.x), (y + _arg1.y))); } public function rotateDegreesEquals(_arg1:Number):Vector{ var _local2:Number = x; var _local3:Number = y; x = ((Math.cos(_arg1) * _local2) - (Math.sin(_arg1) * _local3)); y = ((Math.cos(_arg1) * _local3) + (Math.sin(_arg1) * _local2)); return (this); } public function normalizeEquals():Vector{ var _local1:Number = magnitude(); if (_local1 == 0){ _local1 = 0.0001; }; return (multEquals((1 / _local1))); } public function divEquals(_arg1:Number):Vector{ if (_arg1 == 0){ _arg1 = 0.0001; }; x = (x / _arg1); y = (y / _arg1); return (this); } public function degreesWithPositiveX():Number{ var _local1:Vector = normalize(); var _local2:Number = ((_local1.cross(UNITY_X) > 0)) ? -1 : 1; return ((((Math.acos(_local1.dot(UNITY_X)) * _local2) * 180) / Math.PI)); } public function copy(_arg1:Vector):void{ x = _arg1.x; y = _arg1.y; } public function plusEquals(_arg1:Vector):Vector{ x = (x + _arg1.x); y = (y + _arg1.y); return (this); } public function toString():String{ return (((x + " : ") + y)); } public function distance(_arg1:Vector):Number{ var _local2:Vector = this.minus(_arg1); return (_local2.magnitude()); } public function setTo(_arg1:Number, _arg2:Number):void{ x = _arg1; y = _arg2; } public function minus(_arg1:Vector):Vector{ return (new Vector((x - _arg1.x), (y - _arg1.y))); } } }//package ShooterLib.Base
Section 216
//FixedObjects (ShooterLib.Shootable.FixedObjects) package ShooterLib.Shootable { import flash.display.*; import flash.geom.*; public class FixedObjects { public static var objects:Array; protected static var _canvas:Sprite; public static function init(_arg1:Sprite):void{ _canvas = _arg1; objects = new Array(); } public static function add(_arg1:Rectangle):void{ objects.push(_arg1); } public static function paint(_arg1:Number=0xFF0000, _arg2:Number=1):void{ var _local3:Rectangle; for each (_local3 in objects) { _canvas.graphics.moveTo(_local3.x, _local3.y); _canvas.graphics.beginFill(_arg1, _arg2); _canvas.graphics.drawRect(_local3.x, _local3.y, _local3.width, _local3.height); _canvas.graphics.endFill(); }; } } }//package ShooterLib.Shootable
Section 217
//GravityBallLogic (ShooterLib.Unit.GravityBallLogic) package ShooterLib.Unit { import flash.utils.*; import flash.geom.*; import ShooterLib.Base.*; import SFXLib.*; import ShooterLib.Shootable.*; public class GravityBallLogic extends Mobile { public var container:GravityBallSprite; public var inmobile:Boolean;// = false protected var _orbitChild:GravityBallLogic; public var radius:Number; protected var _collisionCallback:Function; public var shootPower:Number; protected var _orbitDelta:Number; protected var _orbitRadius:Number; protected var _orbiting:Boolean;// = false protected var _ballColliders:Array; public var canBeSatellite:Boolean;// = false protected var _orbitAngle:Number; protected var _boxColliders:Array; protected var _orbitParent:GravityBallLogic; public var isParentOrbiter:Boolean;// = false protected var _lastRepelTime:Number;// = -1 public static const G:Number = 1; public static var collisionsActivated:Boolean = true; public function GravityBallLogic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Boolean, _arg6:Boolean, _arg7:Boolean){ vel = new Vector(); appliedForce = new Vector(); pos = new Vector(); init(_arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7); } public function get orbitParent():GravityBallLogic{ return (_orbitParent); } public function stop():void{ vel.multEquals(0); } public function get launchMagnitude():Number{ return ((((5 * Math.abs(_orbitDelta)) * _orbitRadius) / 300)); } public function init(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Boolean, _arg6:Boolean, _arg7:Boolean):void{ this.mass = _arg3; this.radius = _arg4; this.isParentOrbiter = _arg5; this.canBeSatellite = _arg6; this.inmobile = _arg7; pos.setTo(_arg1, _arg2); _ballColliders = new Array(); _boxColliders = new Array(); } public function shoot():void{ if (_orbitChild){ _orbitChild.releaseFromOrbit(shootPower); _orbitChild = null; }; } protected function fineCollision(_arg1:Rectangle):Boolean{ var _local2:Number = Math.abs(((pos.x - _arg1.x) - (_arg1.width / 2))); var _local3:Number = Math.abs(((pos.y - _arg1.y) - (_arg1.height / 2))); if (_local2 > ((_arg1.width / 2) + radius)){ return (false); }; if (_local3 > ((_arg1.height / 2) + radius)){ return (false); }; if (_local2 <= (_arg1.width / 2)){ return (true); }; if (_local3 <= (_arg1.height / 2)){ return (true); }; var _local4:Number = Math.sqrt((((_local2 - (_arg1.width / 2)) * (_local2 - (_arg1.width / 2))) + ((_local3 - (_arg1.height / 2)) * (_local3 - (_arg1.height / 2))))); return ((_local4 < radius)); } public function set collisionCallback(_arg1:Function):void{ _collisionCallback = _arg1; } public function orbitAround(_arg1:GravityBallLogic, _arg2:Number=1, _arg3:Boolean=true):void{ if (((_orbiting) && ((_orbitParent == _arg1)))){ return; }; if (_orbitParent != null){ _orbitParent.orbitChild = null; }; _orbitParent = _arg1; _arg1.orbitChild = this; _orbiting = true; var _local4:Vector = new Vector((pos.x - _arg1.pos.x), (pos.y - _arg1.pos.y)); _local4.normalizeEquals(); _orbitAngle = _local4.degreesWithPositiveX(); _orbitRadius = ((_arg1.radius + radius) + 5); _orbitDelta = _arg2; if (_arg3){ _arg1.repelCompetence(); }; } public function attractBy(_arg1:GravityBallLogic):void{ var _local2:Vector; var _local3:Number; var _local4:Number; if (collisionsActivated){ _local2 = pos.minus(_arg1.pos); _local3 = _local2.magnitude(); _local4 = (-(G) * ((this.mass * _arg1.mass) / (_local3 * _local3))); _local2.normalizeEquals(); _local2.multEquals(_local4); appliedForce.plusEquals(_local2); }; } override public function update():void{ var _local1:Array; var _local2:Rectangle; var _local3:Vector; var _local4:Number; var _local5:Number; var _local6:GravityBallLogic; var _local7:Number; var _local8:Vector; var _local9:Number; var _local10:Vector; var _local11:Vector; if (_orbiting){ _orbitAngle = (_orbitAngle + _orbitDelta); pos.setTo(1, 0); pos.rotateDegreesEquals(((_orbitAngle * Math.PI) / 180)); pos.multEquals(_orbitRadius); pos.plusEquals(_orbitParent.pos); if (Math.abs(_orbitDelta) < DEF.MAX_ANGULAR_VELOCITY){ if (_orbitDelta > 0){ _orbitDelta = (_orbitDelta + DEF.ANGULAR_VELOCITY_DELTA); } else { _orbitDelta = (_orbitDelta - DEF.ANGULAR_VELOCITY_DELTA); }; }; } else { _local1 = FixedObjects.objects; _local3 = new Vector(pos.x, pos.y); _local4 = pos.x; vel.x = (vel.x + ((appliedForce.x / mass) - (vel.x * dragCoeff))); pos.x = (pos.x + vel.x); if (collisionsActivated){ for each (_local2 in _local1) { if (((((pos.y + radius) >= _local2.y)) && (((pos.y - radius) <= _local2.bottom)))){ if (((((pos.x + radius) >= _local2.left)) && (((pos.x - radius) <= _local2.right)))){ if (fineCollision(_local2)){ pos.x = _local4; vel.x = -(vel.x); break; }; }; }; }; }; _local5 = pos.y; vel.y = (vel.y + ((appliedForce.y / mass) - (vel.y * dragCoeff))); pos.y = (pos.y + vel.y); if (collisionsActivated){ for each (_local2 in _local1) { if (((((pos.x + radius) >= _local2.left)) && (((pos.x - radius) <= _local2.right)))){ if (((((pos.y + radius) >= _local2.y)) && (((pos.y - radius) <= _local2.bottom)))){ if (fineCollision(_local2)){ pos.y = _local5; vel.y = -(vel.y); break; }; }; }; }; }; if (collisionsActivated){ for each (_local6 in _ballColliders) { if (((!((_local6.orbitParent == this))) && (collidedWithBall(_local6)))){ _local7 = (vel.magnitude() + (_local6.vel.magnitude() * 0.5)); _local8 = new Vector((_local3.x - _local6.pos.x), (_local3.y - _local6.pos.y)); _local8.normalizeEquals(); if ((((_local8.x == 0)) && ((_local8.y == 0)))){ _local8.setTo(1, 0); }; _local9 = 0; do { _local9++; pos.x = (_local8.mult(((_local6.radius + radius) + _local9)).x + _local6.pos.x); pos.y = (_local8.mult(((_local6.radius + radius) + _local9)).y + _local6.pos.y); } while (((collidedWithBall(_local6)) && ((_local9 < 100)))); _local10 = _local8.mult(((-((mass - _local6.mass)) / (mass + _local6.mass)) * _local7)); _local11 = _local8.mult(((-((mass + mass)) / (mass + _local6.mass)) * _local7)); if (!inmobile){ vel.x = (_local10.x / mass); vel.y = (_local10.y / mass); }; if (!_local6.inmobile){ _local6.vel.x = (_local11.x / _local6.mass); _local6.vel.y = (_local11.y / _local6.mass); }; if (_collisionCallback != null){ _collisionCallback(_local6); }; }; }; }; }; } public function addBallCollider(_arg1:GravityBallLogic):void{ _ballColliders.push(_arg1); } public function get launchVector():Vector{ var _local1:Number; if (_orbitDelta > 0){ _local1 = 1; } else { _local1 = -1; }; var _local2:Vector = new Vector(1, 0); _local2.rotateDegreesEquals((((_orbitAngle + (_local1 * 90)) * Math.PI) / 180)); return (_local2); } public function get orbiting():Boolean{ return (_orbiting); } public function removeBallCollider(_arg1:GravityBallLogic):void{ var _local2:Number = _ballColliders.indexOf(_arg1); if (_local2 != -1){ _ballColliders.splice(_local2, 1); }; } public function get launchAngle():Number{ var _local1:Number; if (_orbitDelta > 0){ _local1 = 1; } else { _local1 = -1; }; return ((_orbitAngle + (_local1 * 90))); } public function set orbitChild(_arg1:GravityBallLogic):void{ _orbitChild = _arg1; } public function collidedWithBall(_arg1:GravityBallLogic):Boolean{ var _local2:Number; var _local3:Vector; var _local4:Vector; if (pos.distance(_arg1.pos) <= (radius + _arg1.radius)){ if (((((isParentOrbiter) && (!(_arg1.isParentOrbiter)))) && (_arg1.canBeSatellite))){ _local2 = 1; if (_arg1.orbiting){ _local3 = _arg1.orbitParent.pos.minus(pos).normalize(); _local4 = _arg1.pos.minus(pos).normalize(); _local2 = ((_local3.cross(_local4) > 0)) ? 1 : -1; }; _arg1.orbitAround(this, _local2); }; return (true); }; return (false); } public function repelCompetence(_arg1:Number=10):void{ var _local2:GravityBallLogic; var _local3:Vector; var _local4:Number; var _local5:Number; for each (_local2 in _ballColliders) { if (_local2.isParentOrbiter){ _local3 = pos.minus(_local2.pos); _local4 = _local3.magnitude(); _local5 = ((-(_arg1) * G) * ((this.mass * _local2.mass) / (_local4 * _local4))); _local3.normalizeEquals(); _local3.multEquals(_local5); if (((((getTimer() - _lastRepelTime) > 200)) || ((_lastRepelTime == -1)))){ SFX.getSingleton().maskedExplode(container, container.bmpBase, IMG.getSingleton().getBitmapData(IMG.MASKED_EXPLODE), 5, 2, 0, 0); _lastRepelTime = getTimer(); }; _local2.vel.plusEquals(_local3); }; }; } public function get orbitChild():GravityBallLogic{ return (_orbitChild); } public function get angularVelMagnitude():Number{ return (Math.abs(_orbitDelta)); } public function releaseFromOrbit(_arg1:Number):void{ var _local2:Number; _orbiting = false; if (_arg1 == 0){ return; }; if (!inmobile){ _local2 = (Math.abs(_orbitDelta) * _orbitRadius); vel = launchVector; vel.multEquals((((_arg1 * Math.abs(_orbitDelta)) * _orbitRadius) / 300)); vel.plusEquals(_orbitParent.vel); }; } public function addBoxCollider(_arg1:Rectangle):void{ _boxColliders.push(_arg1); } } }//package ShooterLib.Unit
Section 218
//GravityBallSprite (ShooterLib.Unit.GravityBallSprite) package ShooterLib.Unit { import flash.display.*; import flash.geom.*; import ShooterLib.Base.*; public class GravityBallSprite extends Sprite { protected var _movementSpeed:Number;// = 80 protected var _moveForce:Vector; protected var _ballLogic:GravityBallLogic; protected var _auxRotation:Number;// = 0 protected var _auxVector:Vector; protected var _blurVector:Vector; protected var _auxMatrix:Matrix; protected var _vectorUnity:Vector; protected var _bmpBase:BitmapData; protected var _rotates:Boolean; protected var _affectors:Array; public function GravityBallSprite(_arg1:BitmapData){ _vectorUnity = new Vector(1, 0); super(); _bmpBase = _arg1; _auxMatrix = new Matrix(); _auxMatrix.translate((-(_bmpBase.width) / 2), (-(_bmpBase.height) / 2)); graphics.beginBitmapFill(_bmpBase, _auxMatrix); graphics.drawRect((-(_bmpBase.width) / 2), (-(_bmpBase.height) / 2), _bmpBase.width, _bmpBase.height); graphics.endFill(); _rotates = false; } public function get posX():Number{ return (_ballLogic.pos.x); } public function get posY():Number{ return (_ballLogic.pos.y); } public function addAffector(_arg1:GravityBallSprite):void{ _affectors.push(_arg1.logic); } public function update(_arg1:Boolean, _arg2:Boolean, _arg3:Boolean, _arg4:Boolean, _arg5:Boolean, _arg6:Number, _arg7:Number):void{ var _local8:GravityBallLogic; _moveForce.setTo(0, 0); if (_arg1){ _moveForce.y = (_moveForce.y - _movementSpeed); }; if (_arg2){ _moveForce.y = (_moveForce.y + _movementSpeed); }; if (_arg3){ _moveForce.x = (_moveForce.x - _movementSpeed); }; if (_arg4){ _moveForce.x = (_moveForce.x + _movementSpeed); }; _ballLogic.resetAppliedForce(); for each (_local8 in _affectors) { _ballLogic.attractBy(_local8); }; _ballLogic.addForce(_moveForce); _ballLogic.update(); this.x = _ballLogic.pos.x; this.y = _ballLogic.pos.y; if (_arg5){ _ballLogic.shoot(); }; } public function addBallCollider(_arg1:GravityBallSprite):void{ _ballLogic.addBallCollider(_arg1.logic); } public function get pos():Vector{ return (_ballLogic.pos); } public function addBoxCollider(_arg1:Rectangle):void{ _ballLogic.addBoxCollider(_arg1); } public function init(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Boolean=false, _arg8:Boolean=false, _arg9:Boolean=false):void{ _moveForce = new Vector(); _auxVector = new Vector(); _affectors = new Array(); _blurVector = new Vector(); _movementSpeed = _arg4; this.x = _arg1; this.y = _arg2; _ballLogic = new GravityBallLogic(_arg1, _arg2, _arg3, (_bmpBase.width / 2), _arg7, _arg8, _arg9); _ballLogic.shootPower = _arg6; _ballLogic.dragCoeff = _arg5; _ballLogic.container = this; } public function set autoRotate(_arg1:Boolean):void{ _rotates = _arg1; } public function removeAffector(_arg1:GravityBallSprite):void{ var _local2:Number = _affectors.indexOf(_arg1); if (_local2 != -1){ _affectors.splice(_local2, 1); }; } public function paint():void{ if (_rotates){ rotation = (rotation - ((_ballLogic.vel.magnitude() * _ballLogic.vel.cross(_vectorUnity)) / 2)); }; } public function get logic():GravityBallLogic{ return (_ballLogic); } public function resetAffectors():void{ _affectors = []; } public function set collisionCallback(_arg1:Function):void{ _ballLogic.collisionCallback = _arg1; } public function get bmpBase():BitmapData{ return (_bmpBase); } public function removeBallCollider(_arg1:GravityBallSprite):void{ _ballLogic.removeBallCollider(_arg1.logic); } } }//package ShooterLib.Unit
Section 219
//State (StateLib.State) package StateLib { import flash.events.*; import com.tracker.*; import flash.display.*; import flash.net.*; import caurina.transitions.*; public class State { protected var _parent:Sprite; protected var _nextState:State; public static const NEXT:int = 0; public static const PREVIOUS:int = 1; public static const NEXT_AND_DESTROY:int = 4; public static const EXIT:int = 2; public static const CONTINUE:int = 3; public function mouseUp(_arg1:MouseEvent):void{ } public function keyUp(_arg1:KeyboardEvent):void{ } public function hide():void{ } protected function fadeIn(_arg1:Array):void{ var _local2:Sprite; for each (_local2 in _arg1) { if (_local2 != null){ _local2.visible = true; _local2.alpha = 0; Tweener.addTween(_local2, {alpha:1, time:StateManager.TRANSITION_TIME}); }; }; } public function get nextState():State{ return (_nextState); } public function mouseDown(_arg1:MouseEvent):void{ } public function keyDown(_arg1:KeyboardEvent):void{ } public function update():int{ return (CONTINUE); } protected function fadeOutAndRemove(_arg1:Array):void{ var object:Sprite; var objects = _arg1; for each (object in objects) { if (object != null){ try { _parent.removeChild((object as Sprite)); } catch(error:ArgumentError) { trace(error); }; }; }; } public function init(_arg1:Sprite):void{ _parent = _arg1; } protected function playMoreGames():void{ var _local1:URLRequest = new URLRequest("http://googamez.com?ref=GravityFootball2"); navigateToURL(_local1, "_blank"); if (DEF.GOOGLE_ANALYTICS){ GoogleTracker.getSingleton().trackPageview("/playMoreGames"); }; } protected function goToIlMareGames():void{ var _local1:URLRequest = new URLRequest("http://www.ilmaregames.com.ar?ref=GravityFootball2"); navigateToURL(_local1); if (DEF.GOOGLE_ANALYTICS){ GoogleTracker.getSingleton().trackPageview("/goToIlMareGames"); }; } public function mouseMove(_arg1:MouseEvent):void{ } protected function fadeOut(_arg1:Array):void{ var object:Sprite; var objects = _arg1; for each (object in objects) { if (object != null){ Tweener.addTween(object, {alpha:0, time:StateManager.TRANSITION_TIME, onComplete:function ():void{ object.visible = false; }}); }; }; } public function destroy():void{ } public function show():void{ } public function paint():void{ } } }//package StateLib
Section 220
//StateManager (StateLib.StateManager) package StateLib { import flash.events.*; import com.tracker.*; import flash.display.*; import States.*; public class StateManager { private var _parent:Sprite; private var _stateStack:Array; private var _state:State; public static const TRANSITION_TIME:Number = 0.5; public function StateManager(_arg1:Sprite){ _parent = _arg1; _stateStack = new Array(); _state = new StateMenu(); _state.init(_parent); _state.show(); } public function mouseUp(_arg1:MouseEvent):void{ _state.mouseUp(_arg1); } public function keyDown(_arg1:KeyboardEvent):void{ _state.keyDown(_arg1); } public function mouseDown(_arg1:MouseEvent):void{ _state.mouseDown(_arg1); } public function update():void{ var _local1:State; switch (_state.update()){ case State.CONTINUE: break; case State.PREVIOUS: _state.destroy(); _state = (_stateStack.pop() as State); _state.show(); if (DEF.GOOGLE_ANALYTICS){ GoogleTracker.getSingleton().trackClass(_state); }; break; case State.NEXT: _local1 = _state; _state = _local1.nextState; _state.init(_parent); _state.show(); _local1.hide(); _stateStack.push(_local1); if (DEF.GOOGLE_ANALYTICS){ GoogleTracker.getSingleton().trackClass(_state); }; break; case State.NEXT_AND_DESTROY: _local1 = _state; _state = _local1.nextState; _stateStack.push(_local1); for each (_local1 in _stateStack) { _local1.destroy(); }; _stateStack = new Array(); _state.init(_parent); _state.show(); if (DEF.GOOGLE_ANALYTICS){ GoogleTracker.getSingleton().trackClass(_state); }; break; case State.EXIT: break; }; } public function keyUp(_arg1:KeyboardEvent):void{ _state.keyUp(_arg1); } public function mouseMove(_arg1:MouseEvent):void{ _state.mouseMove(_arg1); } public function paint():void{ _state.paint(); } } }//package StateLib
Section 221
//StateAbout (States.StateAbout) package States { import flash.display.*; import StateLib.*; import flash.text.*; import GenericUILib.*; import flash.filters.*; public class StateAbout extends StateMenu { private static const FONT_SIZE:Number = 26; private static const OPTION_MAIN_MENU:Number = 0; private static const VERT_MARGIN:Number = 30; private static const OPTION_ILMAREGAMES:Number = 1; private static const FONT:String = "abadi"; public function StateAbout(){ _options = new Array({image:IMG.MENU_MAIN_MENU, x:320, y:430, returnValue:OPTION_MAIN_MENU}); } override public function init(_arg1:Sprite):void{ var _local4:Object; var _local5:TextField; var _local6:TextFormat; _parent = _arg1; _menu = new GenericMenu(_options, IMG.getSingleton().getBitmap(IMG.ABOUT_BACKGROUND), IMG.getSingleton().getBitmap(IMG.MENU_BACKGROUND)); _parent.addChild(_menu); _menu.show(); var _local2:GlowFilter = new GlowFilter(0xFFFFFF, 1, 2, 2, 2, 1, false); var _local3:Number = 0; for each (_local4 in DEF.ABOUT_TEXT) { _local5 = new TextField(); _local6 = new TextFormat(FONT, FONT_SIZE); _local6.align = "center"; _local6.color = _local4.color; _local5.embedFonts = true; _local5.defaultTextFormat = _local6; _local5.selectable = false; _local5.autoSize = "center"; if (_local4.url){ _local5.htmlText = (((("<a href='" + _local4.string) + "'>") + _local4.string) + "</a>"); } else { _local5.text = _local4.string; }; _local5.x = ((DEF.SCREEN_WIDTH / 2) - (_local5.width / 2)); _local5.y = ((VERT_MARGIN * 1.3) + _local3); _local5.filters = [_local2]; _menu.addChild(_local5); _local3 = (_local3 + (FONT_SIZE * 1.1)); }; } override public function update():int{ switch (_menu.update()){ case OPTION_MAIN_MENU: return (State.PREVIOUS); }; return (State.CONTINUE); } } }//package States
Section 222
//StateContinueSeasonMenu (States.StateContinueSeasonMenu) package States { import flash.display.*; import StateLib.*; import flash.text.*; import Tournament.*; public class StateContinueSeasonMenu extends StateMenu { private var _timeText:TextField; private var _difficultyOptions:Array; private var _currentTime:Number;// = 0 private var _timeDescText:TextField; private var _difficultyTexts:Array; private var _currentDifficulty:Number;// = 0 private var _difficultyText:TextField; private var _difficultyDescText:TextField; private var _timeOptions:Array; private static const OPTION_LESS_TIME:Number = 3; private static const OPTION_MORE_DIFFICULTY:Number = 6; private static const OPTION_MORE_TIME:Number = 4; private static const OPTION_BACK:Number = 2; private static const OPTION_LESS_DIFFICULTY:Number = 5; private static const OPTION_CONTINUE:Number = 0; private static const OPTION_NEW_GAME:Number = 1; private static const OPTIONS_X:Number = 435; public function StateContinueSeasonMenu(){ _difficultyTexts = ["easy", "normal", "hard"]; super(); _options = new Array({image:IMG.MENU_CONTINUE, x:200, y:270, returnValue:OPTION_CONTINUE, hint:"Continue your current World Cup"}, {image:IMG.MENU_NEW_SEASON, x:200, y:230, returnValue:OPTION_NEW_GAME, hint:"Start a new World Cup"}, {image:IMG.MENU_LESS, x:OPTIONS_X, y:270, returnValue:OPTION_LESS_TIME, hint:"Decrease the match time"}, {image:IMG.MENU_MORE, x:(OPTIONS_X + 160), y:270, returnValue:OPTION_MORE_TIME, hint:"Increase the match time"}, {image:IMG.MENU_LESS, x:OPTIONS_X, y:370, returnValue:OPTION_LESS_DIFFICULTY, hint:"Decrease the difficulty level"}, {image:IMG.MENU_MORE, x:(OPTIONS_X + 160), y:370, returnValue:OPTION_MORE_DIFFICULTY, hint:"Increase the difficulty level"}, {image:IMG.MENU_BACK, x:200, y:390, returnValue:OPTION_BACK}); _timeOptions = [1, 2, 5, 10, 20]; _difficultyOptions = [DifficultManager.LEVEL_EASY, DifficultManager.LEVEL_MEDIUM, DifficultManager.LEVEL_HARD]; _currentTime = OptionsManager.getSingleton().matchTimeIndex; _currentDifficulty = DifficultManager.instance.level; } private function updateMatchTime():void{ if (_currentTime < 0){ _currentTime = (_timeOptions.length - 1); }; if (_currentTime >= _timeOptions.length){ _currentTime = 0; }; OptionsManager.getSingleton().matchTime = _timeOptions[_currentTime]; OptionsManager.getSingleton().matchTimeIndex = _currentTime; _timeText.text = (_timeOptions[_currentTime] + " min"); } override public function update():int{ if (!MatchManager.getSingleton().hasSavedSeason()){ _menu.hideItem(0); }; switch (_menu.update()){ case OPTION_NEW_GAME: MatchManager.getSingleton().setType(MatchManager.TYPE_SEASON); _nextState = new StateSelectTeam(); return (State.NEXT); case OPTION_BACK: return (State.PREVIOUS); case OPTION_CONTINUE: if (MatchManager.getSingleton().load()){ _nextState = new StateScheduleInfo(); return (State.NEXT); }; case OPTION_LESS_TIME: _currentTime--; updateMatchTime(); break; case OPTION_MORE_TIME: _currentTime++; updateMatchTime(); break; case OPTION_LESS_DIFFICULTY: _currentDifficulty--; updateDifficulty(); break; case OPTION_MORE_DIFFICULTY: _currentDifficulty++; updateDifficulty(); break; }; return (State.CONTINUE); } override public function init(_arg1:Sprite):void{ super.init(_arg1); _timeDescText = createTextField("center"); _timeDescText.x = OPTIONS_X; _timeDescText.y = (230 - 20); _timeDescText.width = 160; _timeDescText.height = 40; _timeDescText.text = "Match Time"; _menu.addChild(_timeDescText); _timeText = createTextField("center"); _timeText.x = (OPTIONS_X + 20); _timeText.y = (270 - 20); _timeText.width = 120; _timeText.height = 40; _menu.addChild(_timeText); updateMatchTime(); _difficultyDescText = createTextField("center"); _difficultyDescText.x = OPTIONS_X; _difficultyDescText.y = (330 - 20); _difficultyDescText.width = 160; _difficultyDescText.height = 40; _difficultyDescText.text = "Difficulty"; _menu.addChild(_difficultyDescText); _difficultyText = createTextField("center"); _difficultyText.x = (OPTIONS_X + 20); _difficultyText.y = (370 - 20); _difficultyText.width = 120; _difficultyText.height = 40; _menu.addChild(_difficultyText); updateDifficulty(); } private function updateDifficulty():void{ if (_currentDifficulty < 0){ _currentDifficulty = (_difficultyOptions.length - 1); }; if (_currentDifficulty >= _difficultyOptions.length){ _currentDifficulty = 0; }; DifficultManager.instance.level = _currentDifficulty; _difficultyText.text = _difficultyTexts[_currentDifficulty]; } } }//package States
Section 223
//StateGame (States.StateGame) package States { import flash.events.*; import flash.display.*; import flash.geom.*; import ShooterLib.Unit.*; import ShooterLib.Base.*; import StateLib.*; import flash.text.*; import Teams.*; import SFXLib.*; import Tournament.*; import de.polygonal.ds.*; import com.gskinner.geom.*; import ShooterLib.AI.*; import GenericUILib.*; import ShooterLib.Shootable.*; import org.flintparticles.twoD.renderers.*; import caurina.transitions.*; import flash.filters.*; import flash.ui.*; public class StateGame extends State { protected var _rightPlayerAI:BaseSportAI; protected var _playerIndicatorDelta:Number;// = 1 protected var _topPanel:Sprite; protected var _clock:CircularFilledClock; protected var _areaRight:GravityBallSprite; protected var _down2Pressed:Boolean;// = false protected var _menuButton:GenericButton; protected var _leftSatellites:Array; protected var _frontCanvas:Sprite; protected var _rightPlayerData:Object; protected var _mouse2Pressed:Boolean;// = false protected var _deltaRadial:Number;// = 0 protected var _down1Pressed:Boolean;// = false protected var _blurCanvas:Sprite; protected var _trailCanvas:Sprite; protected var paperRain:PaperRain; protected var _rightScoreText:TextField; protected var _rightBackup:GravityBallSprite; protected var _leftBackup:GravityBallSprite; protected var _leftFinalScore:TextField; protected var _leftGoalkeeper:GravityBallSprite; protected var _leftScore:Number;// = 0 protected var _mouse1Pressed:Boolean;// = false protected var _arrowHelper:Sprite; protected var _rightPlayer:GravityBallSprite; protected var _rightHasBackup:Boolean;// = false protected var _secondHalf:Boolean;// = false protected var _leftPlayer:GravityBallSprite; protected var _rightLogo:Sprite; protected var _leftBackupAI:BaseSportAI; protected var _rightScore:Number;// = 0 protected var _left2Pressed:Boolean;// = false protected var particleRenderer:DisplayObjectRenderer; protected var _controlsActive:Boolean;// = false protected var _tutorialCanvas:Sprite; protected var _backgroundCanvas:Sprite; protected var _leftTeamName:TextField; protected var _rightScored:Boolean;// = false protected var _state:Number; protected var _rightSatellites:Array; protected var _leftScoreText:TextField; protected var _areaLeft:GravityBallSprite; protected var _leftScored:Boolean;// = false protected var _left1Pressed:Boolean;// = false protected var _rightBackupAI:BaseSportAI; protected var _right2Pressed:Boolean;// = false protected var _leftLogo:Sprite; protected var _leftHasBackup:Boolean;// = false protected var _resetPositionsState:Number;// = 0 protected var _leftPlayerData:Object; protected var _rightFinalScore:TextField; protected var _targetMousePoint:Point; protected var _rightGoalkeeper:GravityBallSprite; protected var _rightTeamName:TextField; protected var _boundingBox:Rectangle; protected var _up2Pressed:Boolean;// = false protected var _leftPlayerAI:BaseSportAI; protected var _anyKeyPressed:Boolean;// = false protected var _right1Pressed:Boolean;// = false protected var _activeControlsStates:Array; protected var _ball:GravityBallSprite; protected var _obstacleCanvas:Sprite; protected var _up1Pressed:Boolean;// = false protected var _playerIndicator:Sprite; protected var _ballTrail:ArrayedQueue; protected static const STATE_GAME:Number = 0; protected static const STATE_GOAL:Number = 3; protected static const STATE_GAME_END:Number = 4; protected static const STATE_INIT_TIME:Number = 2; protected static const STATE_INIT_GAME:Number = 5; protected static const TRAIL_COUNT:Number = 9; protected static const STATE_INTER_TIME:Number = 1; protected static const STATE_WAITING:Number = 6; public function StateGame(){ _activeControlsStates = [STATE_GAME]; super(); } protected function removeTutorialCanvas():void{ if (_tutorialCanvas != null){ _backgroundCanvas.removeChild(_tutorialCanvas); }; _tutorialCanvas = null; } protected function resetToCenterPositions():Boolean{ var _local1:Vector = new Vector(); var _local2:Boolean; var _local3:Boolean; var _local4:Boolean; _local1.setTo((DEF.MAP_WIDTH / 2), (DEF.MAP_HEIGHT / 3)); _local2 = BaseSportAI.commandToPoint(_leftPlayer, _local1, 10); _local1.setTo((DEF.MAP_WIDTH / 2), ((2 * DEF.MAP_HEIGHT) / 3)); _local3 = BaseSportAI.commandToPoint(_rightPlayer, _local1, 10); _local1.setTo((DEF.MAP_WIDTH / 2), (DEF.MAP_HEIGHT / 2)); _local4 = BaseSportAI.commandToPoint(_ball, _local1, 70); if (_leftHasBackup){ _local1.setTo((DEF.MAP_WIDTH / 2), ((DEF.MAP_HEIGHT / 3) - 50)); _local2 = ((BaseSportAI.commandToPoint(_leftBackup, _local1, 10)) && (_local2)); }; if (_rightHasBackup){ _local1.setTo((DEF.MAP_WIDTH / 2), (((2 * DEF.MAP_HEIGHT) / 3) + 50)); _local3 = ((BaseSportAI.commandToPoint(_rightBackup, _local1, 10)) && (_local3)); }; return (((((_local2) && (_local3))) && (_local4))); } protected function leftBackupCallback(_arg1:GravityBallLogic):void{ if (((!((_arg1 == _areaRight.logic))) && (!((_arg1 == _areaLeft.logic))))){ MediaPlayer.getSingleton().play(MediaPlayer.SND_INGAME_SHOCK); }; if (_arg1 == _rightPlayer.logic){ _leftBackup.logic.repelCompetence((_leftPlayerData.shoot / 2)); return; }; } override public function mouseMove(_arg1:MouseEvent):void{ if (DEF.MOUSE_CONTROL){ if (((MatchManager.getSingleton().rightAIControlled) || (MatchManager.getSingleton().leftAIControlled))){ _targetMousePoint.x = _arg1.stageX; _targetMousePoint.y = (_arg1.stageY - (DEF.SCREEN_HEIGHT - DEF.MAP_HEIGHT)); }; }; } protected function createLCDScreens():void{ var _local1:TextFormat = new TextFormat("lcd", 40); _local1.align = "right"; _local1.color = 0xEEEEEE; var _local2:BitmapFilter = new GlowFilter(0, 1, 2, 2, 2, 1, false); _leftScoreText = new TextField(); _leftScoreText.selectable = false; _leftScoreText.x = DEF.LEFT_SCORE_X; _leftScoreText.y = DEF.LEFT_SCORE_Y; _leftScoreText.width = DEF.PANEL_SCORE_WIDTH; _leftScoreText.height = DEF.PANEL_SCORE_HEIGHT; _leftScoreText.alpha = 0.8; _leftScoreText.embedFonts = true; _leftScoreText.defaultTextFormat = _local1; _leftScoreText.filters = [_local2]; _topPanel.addChild(_leftScoreText); _rightScoreText = new TextField(); _rightScoreText.selectable = false; _rightScoreText.x = DEF.RIGHT_SCORE_X; _rightScoreText.y = DEF.RIGHT_SCORE_Y; _rightScoreText.width = DEF.PANEL_SCORE_WIDTH; _rightScoreText.height = DEF.PANEL_SCORE_HEIGHT; _rightScoreText.alpha = 0.8; _rightScoreText.embedFonts = true; _rightScoreText.defaultTextFormat = _local1; _rightScoreText.filters = [_local2]; _topPanel.addChild(_rightScoreText); _leftScoreText.text = "0"; _leftScore = 0; _rightScoreText.text = "0"; _rightScore = 0; } override public function init(_arg1:Sprite):void{ var _local8:Matrix; var _local9:BitmapData; var _local10:Object; var _local11:GravityBallSprite; super.init(_arg1); MediaPlayer.getSingleton().stop(MediaPlayer.SND_INTRO); _parent.y = (DEF.SCREEN_HEIGHT - DEF.MAP_HEIGHT); _leftPlayerData = MatchManager.getSingleton().leftTeam; _rightPlayerData = MatchManager.getSingleton().rightTeam; var _local2:Number = 0; var _local3:Number = 10; var _local4:Number = 10; _backgroundCanvas = new Sprite(); _backgroundCanvas.graphics.beginBitmapFill(IMG.getSingleton().getBitmapData(IMG.BACKGROUND)); _backgroundCanvas.graphics.drawRect(0, 0, DEF.MAP_WIDTH, DEF.MAP_HEIGHT); _backgroundCanvas.graphics.endFill(); _backgroundCanvas.graphics.beginBitmapFill(IMG.getSingleton().getBitmapData(IMG[("BACKGROUND_MASK_" + _leftPlayerData.backgroundMask)])); _backgroundCanvas.graphics.drawRect(0, 0, DEF.MAP_WIDTH, DEF.MAP_HEIGHT); _backgroundCanvas.graphics.endFill(); _trailCanvas = new Sprite(); _backgroundCanvas.addChild(_trailCanvas); if (OptionsManager.getSingleton().showTutorial){ _tutorialCanvas = new Sprite(); _backgroundCanvas.addChild(_tutorialCanvas); _local9 = IMG.getSingleton().getBitmapData(IMG.TUTORIAL_KEYS); _local8 = new Matrix(); _local8.translate(((DEF.MAP_WIDTH / 2) - (_local9.width / 2)), ((DEF.MAP_HEIGHT / 2) - (_local9.height / 2))); _tutorialCanvas.graphics.beginBitmapFill(_local9, _local8); _tutorialCanvas.graphics.drawRect(((DEF.MAP_WIDTH / 2) - (_local9.width / 2)), ((DEF.MAP_HEIGHT / 2) - (_local9.height / 2)), _local9.width, _local9.height); }; _parent.addChild(_backgroundCanvas); _obstacleCanvas = new Sprite(); _parent.addChild(_obstacleCanvas); _frontCanvas = new Sprite(); _parent.addChild(_frontCanvas); createInterface(); if (DEF.USE_SATELLITES){ _leftSatellites = new Array(); for each (_local10 in _leftPlayerData.satellites) { _local11 = new GravityBallSprite(IMG.getSingleton().getBitmapData(IMG[(_leftPlayerData.graphicSet + "_DEFENDER")])); _leftSatellites.push(_local11); _backgroundCanvas.addChild(_local11); }; _rightSatellites = new Array(); for each (_local10 in _rightPlayerData.satellites) { _local11 = new GravityBallSprite(IMG.getSingleton().getBitmapData(IMG[(_rightPlayerData.graphicSet + "_DEFENDER")])); _rightSatellites.push(_local11); _backgroundCanvas.addChild(_local11); }; }; _rightPlayer = new GravityBallSprite(IMG.getSingleton().getBitmapData(IMG[(_rightPlayerData.graphicSet + "_ATTACKER")])); _rightBackup = new GravityBallSprite(IMG.getSingleton().getBitmapData(IMG[(_rightPlayerData.graphicSet + "_ATTACKER")])); _rightGoalkeeper = new GravityBallSprite(IMG.getSingleton().getBitmapData(IMG[(_rightPlayerData.graphicSet + "_GOALKEEPER")])); _leftPlayer = new GravityBallSprite(IMG.getSingleton().getBitmapData(IMG[(_leftPlayerData.graphicSet + "_ATTACKER")])); _leftBackup = new GravityBallSprite(IMG.getSingleton().getBitmapData(IMG[(_leftPlayerData.graphicSet + "_ATTACKER")])); _leftGoalkeeper = new GravityBallSprite(IMG.getSingleton().getBitmapData(IMG[(_leftPlayerData.graphicSet + "_GOALKEEPER")])); initTeams(); _arrowHelper = new Sprite(); _local9 = IMG.getSingleton().getBitmapData(IMG.ARROW_HELPER); _local8 = new Matrix(); _local8.translate(0, (-(_local9.height) / 2)); _arrowHelper.graphics.beginBitmapFill(_local9, _local8); _arrowHelper.graphics.drawRect(0, (-(_local9.height) / 2), _local9.width, _local9.height); _arrowHelper.graphics.endFill(); _arrowHelper.x = DEF.BALL_X; _arrowHelper.x = DEF.BALL_Y; _backgroundCanvas.addChild(_arrowHelper); _backgroundCanvas.addChild(_rightGoalkeeper); _backgroundCanvas.addChild(_leftGoalkeeper); if (currentPlayer == _leftPlayer){ _backgroundCanvas.addChild(_rightPlayer); if (_rightHasBackup){ _backgroundCanvas.addChild(_rightBackup); }; _backgroundCanvas.addChild(_leftPlayer); } else { _backgroundCanvas.addChild(_leftPlayer); if (_leftHasBackup){ _backgroundCanvas.addChild(_leftBackup); }; _backgroundCanvas.addChild(_rightPlayer); }; _ball = new GravityBallSprite(IMG.getSingleton().getBitmapData(IMG.BALL)); _ball.init(DEF.BALL_X, DEF.BALL_Y, 500, 100, 0.01, 0, false, true); _ball.autoRotate = true; _backgroundCanvas.addChild(_ball); _ballTrail = new ArrayedQueue(TRAIL_COUNT); var _local5:Number = 0; while (_local5 < TRAIL_COUNT) { _ballTrail.enqueue(new Vector(DEF.BALL_X, DEF.BALL_Y)); _local5++; }; _areaLeft = new GravityBallSprite(IMG.getSingleton().getBitmapData(IMG.AREA)); _areaLeft.init(DEF.LEFT_GOALKEEPER_X, DEF.LEFT_GOALKEEKER_Y, 1, 0, 0, 0, false, false, true); _backgroundCanvas.addChild(_areaLeft); _areaRight = new GravityBallSprite(IMG.getSingleton().getBitmapData(IMG.AREA)); _areaRight.init(DEF.RIGHT_GOALKEEPER_X, DEF.RIGHT_GOALKEEPER_Y, 1, 0, 0, 0, false, false, true); _backgroundCanvas.addChild(_areaRight); _leftPlayerAI = new BaseSportAI(_leftPlayer, _ball.logic, _leftGoalkeeper.logic, _rightGoalkeeper.logic, _leftPlayerData.AIType); if (_leftHasBackup){ _leftBackupAI = new BaseSportAI(_leftBackup, _ball.logic, _leftGoalkeeper.logic, _rightGoalkeeper.logic, ((_leftPlayerData.AIType)!=BaseSportAI.TYPE_DEFENSIVE) ? BaseSportAI.TYPE_DEFENSIVE : BaseSportAI.TYPE_AGGRESSIVE); }; _rightPlayerAI = new BaseSportAI(_rightPlayer, _ball.logic, _rightGoalkeeper.logic, _leftGoalkeeper.logic, _rightPlayerData.AIType); if (_rightHasBackup){ _rightBackupAI = new BaseSportAI(_rightBackup, _ball.logic, _rightGoalkeeper.logic, _leftGoalkeeper.logic, ((_rightPlayerData.AIType)!=BaseSportAI.TYPE_DEFENSIVE) ? BaseSportAI.TYPE_DEFENSIVE : BaseSportAI.TYPE_AGGRESSIVE); }; _ball.addAffector(_leftGoalkeeper); _ball.addAffector(_rightGoalkeeper); _ball.addAffector(_rightPlayer); _ball.addAffector(_leftPlayer); if (_leftHasBackup){ _ball.addAffector(_leftBackup); }; if (_rightHasBackup){ _ball.addAffector(_rightBackup); }; if (DEF.USE_SATELLITES){ for each (_local11 in _leftSatellites) { _ball.addAffector(_local11); }; for each (_local11 in _rightSatellites) { _ball.addAffector(_local11); }; }; _rightPlayer.addAffector(_ball); if (_rightHasBackup){ _rightBackup.addAffector(_ball); }; _leftPlayer.addAffector(_ball); if (_leftHasBackup){ _leftBackup.addAffector(_ball); }; _ball.addBallCollider(_rightPlayer); _ball.addBallCollider(_rightGoalkeeper); if (_rightHasBackup){ _ball.addBallCollider(_rightBackup); }; _ball.addBallCollider(_leftPlayer); _ball.addBallCollider(_leftGoalkeeper); if (_leftHasBackup){ _ball.addBallCollider(_leftBackup); }; _rightPlayer.addBallCollider(_ball); _rightPlayer.addBallCollider(_leftGoalkeeper); _rightPlayer.addBallCollider(_rightGoalkeeper); _rightPlayer.addBallCollider(_areaLeft); _rightPlayer.addBallCollider(_areaRight); _rightPlayer.addBallCollider(_leftPlayer); if (_rightHasBackup){ _rightBackup.addBallCollider(_ball); _rightBackup.addBallCollider(_leftGoalkeeper); _rightBackup.addBallCollider(_rightGoalkeeper); _rightBackup.addBallCollider(_areaLeft); _rightBackup.addBallCollider(_areaRight); _rightBackup.addBallCollider(_leftPlayer); _leftPlayer.addBallCollider(_rightBackup); }; _leftPlayer.addBallCollider(_ball); _leftPlayer.addBallCollider(_leftGoalkeeper); _leftPlayer.addBallCollider(_rightGoalkeeper); _leftPlayer.addBallCollider(_areaLeft); _leftPlayer.addBallCollider(_areaRight); _leftPlayer.addBallCollider(_rightPlayer); if (_leftHasBackup){ _leftBackup.addBallCollider(_ball); _leftBackup.addBallCollider(_leftGoalkeeper); _leftBackup.addBallCollider(_rightGoalkeeper); _leftBackup.addBallCollider(_areaLeft); _leftBackup.addBallCollider(_areaRight); _leftBackup.addBallCollider(_leftPlayer); _rightPlayer.addBallCollider(_leftBackup); }; _areaLeft.addBallCollider(_rightPlayer); _areaRight.addBallCollider(_rightPlayer); _areaLeft.addBallCollider(_leftPlayer); _areaRight.addBallCollider(_leftPlayer); if (_leftHasBackup){ _areaLeft.addBallCollider(_leftBackup); _areaRight.addBallCollider(_leftBackup); }; if (_rightHasBackup){ _areaLeft.addBallCollider(_rightBackup); _areaRight.addBallCollider(_rightBackup); }; _ball.collisionCallback = ballCallback; _leftPlayer.collisionCallback = leftPlayerCallback; _rightPlayer.collisionCallback = rightPlayerCallback; if (_leftHasBackup){ _leftBackup.collisionCallback = leftBackupCallback; }; if (_rightHasBackup){ _rightBackup.collisionCallback = rightBackupCallback; }; _boundingBox = new Rectangle(0, 0, DEF.MAP_WIDTH, DEF.MAP_HEIGHT); Mobile.setBoundingBox(_boundingBox); var _local6:Number = 100; var _local7:Number = -90; FixedObjects.init(_obstacleCanvas); FixedObjects.add(new Rectangle(0, _local7, DEF.MAP_WIDTH, _local6)); FixedObjects.add(new Rectangle(0, (DEF.MAP_HEIGHT - (_local7 + _local6)), DEF.MAP_WIDTH, _local6)); FixedObjects.add(new Rectangle(_local7, 0, _local6, DEF.MAP_HEIGHT)); FixedObjects.add(new Rectangle((DEF.MAP_WIDTH - (_local7 + _local6)), 0, _local6, DEF.MAP_HEIGHT)); paperRain = new PaperRain(); particleRenderer = new DisplayObjectRenderer(); particleRenderer.addEmitter(paperRain); _frontCanvas.addChild(particleRenderer); _menuButton = new GenericButton(IMG.getSingleton().getBitmapData(IMG.MENU_PANEL_BUTTON), IMG.getSingleton().getBitmapData(IMG.MENU_PANEL_BUTTON), true); _menuButton.x = 40; _menuButton.y = -40; _menuButton.visible = false; _frontCanvas.addChild(_menuButton); _playerIndicator = new Sprite(); _local8 = new Matrix(); _local9 = IMG.getSingleton().getBitmapData(IMG.PLAYER_INDICATOR); _local8.translate((-(_local9.width) / 2), (-(_local9.height) / 2)); _playerIndicator.graphics.beginBitmapFill(_local9, _local8); _playerIndicator.graphics.drawRect((-(_local9.width) / 2), (-(_local9.height) / 2), _local9.width, _local9.height); _playerIndicator.y = -30; if (((MatchManager.getSingleton().leftAIControlled) && (!(MatchManager.getSingleton().rightAIControlled)))){ _rightPlayer.addChild(_playerIndicator); } else { if (((!(MatchManager.getSingleton().leftAIControlled)) && (MatchManager.getSingleton().rightAIControlled))){ _leftPlayer.addChild(_playerIndicator); }; }; _secondHalf = false; setState(STATE_INIT_GAME); _frontCanvas.visible = false; _backgroundCanvas.visible = false; _targetMousePoint = new Point((DEF.MAP_WIDTH / 2), (DEF.MAP_HEIGHT / 2)); } override public function mouseUp(_arg1:MouseEvent):void{ super.mouseUp(_arg1); _mouse1Pressed = (_mouse2Pressed = false); } protected function leftPlayerCallback(_arg1:GravityBallLogic):void{ if (((!((_arg1 == _areaRight.logic))) && (!((_arg1 == _areaLeft.logic))))){ MediaPlayer.getSingleton().play(MediaPlayer.SND_INGAME_SHOCK); }; if (_arg1 == _rightPlayer.logic){ _leftPlayer.logic.repelCompetence((_leftPlayerData.shoot / 2)); return; }; } protected function onPlayerMouseOut(_arg1:MouseEvent):void{ var _local2:GravityBallSprite = (_arg1.target as GravityBallSprite); _local2.stopDrag(); var _local3:ColorMatrix = new ColorMatrix(); _local3.adjustSaturation(-100); var _local4:ColorMatrixFilter = new ColorMatrixFilter(_local3); _local2.filters = [_local4]; } protected function deactivateControls(_arg1:GravityBallSprite):void{ if (!_controlsActive){ return; }; _arg1.stopDrag(); _arg1.filters = []; _arg1.removeEventListener(MouseEvent.MOUSE_OVER, onPlayerMouseOver); _arg1.removeEventListener(MouseEvent.MOUSE_OUT, onPlayerMouseOut); _controlsActive = false; } public function setState(_arg1:Number):void{ var matrix:Matrix; var delay:Number; var player:GravityBallSprite; var state = _arg1; if (DEF.MOUSE_CONTROL){ if (_activeControlsStates.indexOf(state) >= 0){ activateControls(currentPlayer); } else { deactivateControls(currentPlayer); }; }; switch (state){ case STATE_INIT_GAME: _menuButton.visible = false; matrix = new Matrix(); matrix.translate(0, -80); _frontCanvas.graphics.beginBitmapFill(IMG.getSingleton().getBitmapData(IMG.PRE_MATCH_BACKGROUND), matrix); _frontCanvas.graphics.drawRect(0, -80, DEF.SCREEN_WIDTH, DEF.SCREEN_HEIGHT); _frontCanvas.graphics.endFill(); matrix.identity(); matrix.translate((160 - 25), ((220 - 80) - 25)); _frontCanvas.graphics.beginBitmapFill(IMG.getSingleton().getBitmapData(IMG[(_leftPlayerData.graphicSet + "_LOGO")]), matrix); _frontCanvas.graphics.drawRect((160 - 25), ((220 - 80) - 25), 50, 50); _frontCanvas.graphics.endFill(); matrix.identity(); matrix.translate((480 - 25), ((220 - 80) - 25)); _frontCanvas.graphics.beginBitmapFill(IMG.getSingleton().getBitmapData(IMG[(_rightPlayerData.graphicSet + "_LOGO")]), matrix); _frontCanvas.graphics.drawRect((480 - 25), ((220 - 80) - 25), 50, 50); _frontCanvas.graphics.endFill(); createTeamNames(); _frontCanvas.addChild(_leftTeamName); _frontCanvas.addChild(_rightTeamName); _leftTeamName.text = _leftPlayerData.name; _rightTeamName.text = _rightPlayerData.name; break; case STATE_INIT_TIME: _menuButton.visible = false; GravityBallLogic.collisionsActivated = false; paperRain.stop(); delay = 0; if (_secondHalf){ delay = 2; }; SFX.getSingleton().showFadingMessage(_frontCanvas, IMG.getSingleton().getBitmapData(IMG.MESSAGE_KICK_OFF), (DEF.MAP_WIDTH / 2), (DEF.MAP_HEIGHT / 2), 2, delay, function ():void{ setState(STATE_GAME); _clock.start(); }); break; case STATE_INTER_TIME: _menuButton.visible = false; _ball.logic.releaseFromOrbit(0); _ball.logic.stop(); GravityBallLogic.collisionsActivated = false; _resetPositionsState = 0; if (_secondHalf){ MediaPlayer.getSingleton().play(MediaPlayer.SND_INGAME_WHISTLE); SFX.getSingleton().showFadingMessage(_frontCanvas, IMG.getSingleton().getBitmapData(IMG.MESSAGE_FINAL_WHISTLE), (DEF.MAP_WIDTH / 2), (DEF.MAP_HEIGHT / 2), 2, 0, function ():void{ setState(STATE_GAME_END); }); } else { _secondHalf = true; MediaPlayer.getSingleton().play(MediaPlayer.SND_INGAME_WHISTLE); SFX.getSingleton().showFadingMessage(_frontCanvas, IMG.getSingleton().getBitmapData(IMG.MESSAGE_TIME_UP), (DEF.MAP_WIDTH / 2), (DEF.MAP_HEIGHT / 2), 2, 0, function ():void{ SFX.getSingleton().showFadingMessage(_frontCanvas, IMG.getSingleton().getBitmapData(IMG.MESSAGE_SECOND_HALF), (DEF.MAP_WIDTH / 2), (DEF.MAP_HEIGHT / 2), 2, 0); }); if (OptionsManager.getSingleton().showTutorial){ Tweener.addTween(_tutorialCanvas, {time:2, alpha:0, onComplete:removeTutorialCanvas}); OptionsManager.getSingleton().showTutorial = false; }; }; break; case STATE_GAME: _menuButton.visible = true; GravityBallLogic.collisionsActivated = true; MediaPlayer.getSingleton().play(MediaPlayer.SND_INGAME_WHISTLE); if (DEF.MOUSE_CONTROL){ player = currentPlayer; _targetMousePoint.x = player.x; _targetMousePoint.y = player.y; }; break; case STATE_GOAL: _menuButton.visible = false; _ball.logic.releaseFromOrbit(0); _ball.logic.stop(); _clock.pause(); MediaPlayer.getSingleton().play(MediaPlayer.SND_INGAME_GOAL); SFX.getSingleton().showFadingMessage(_frontCanvas, IMG.getSingleton().getBitmapData(IMG.MESSAGE_GOAL), (DEF.MAP_WIDTH / 2), (DEF.MAP_HEIGHT / 2), 2, 0); paperRain.start(); particleRenderer.alpha = 1; _resetPositionsState = 0; GravityBallLogic.collisionsActivated = false; break; case STATE_GAME_END: _menuButton.visible = false; MediaPlayer.getSingleton().play(MediaPlayer.SND_INGAME_WHISTLE); MediaPlayer.getSingleton().stop(MediaPlayer.SND_INGAME1, MediaPlayer.SND_INGAME5); break; }; _state = state; } override public function hide():void{ fadeOut([_backgroundCanvas, _frontCanvas, _obstacleCanvas, _blurCanvas]); } protected function createTeamNames():void{ var _local1:TextFormat = new TextFormat("lcd", 32); _local1.align = "center"; _local1.color = 0xEEEEEE; var _local2:GlowFilter = new GlowFilter(0, 1, 2, 2, 2, 1, false); _leftTeamName = new TextField(); _leftTeamName.selectable = false; _leftTeamName.x = 0; _leftTeamName.y = (250 - 80); _leftTeamName.width = (DEF.SCREEN_WIDTH / 2); _leftTeamName.height = 30; _leftTeamName.embedFonts = true; _leftTeamName.defaultTextFormat = _local1; _leftTeamName.filters = [_local2]; _rightTeamName = new TextField(); _rightTeamName.selectable = false; _rightTeamName.x = (DEF.SCREEN_WIDTH / 2); _rightTeamName.y = (250 - 80); _rightTeamName.width = (DEF.SCREEN_WIDTH / 2); _rightTeamName.height = 30; _rightTeamName.embedFonts = true; _rightTeamName.defaultTextFormat = _local1; _rightTeamName.filters = [_local2]; } protected function onPlayerMouseOver(_arg1:MouseEvent):void{ var _local2:GravityBallSprite = (_arg1.target as GravityBallSprite); _local2.startDrag(true, new Rectangle(30, 20, (DEF.MAP_WIDTH - 60), (DEF.MAP_HEIGHT - 40))); _local2.filters = []; } override public function keyUp(_arg1:KeyboardEvent):void{ super.keyUp(_arg1); _anyKeyPressed = false; if (((MatchManager.getSingleton().rightAIControlled) && (MatchManager.getSingleton().leftAIControlled))){ return; }; if (((MatchManager.getSingleton().rightAIControlled) || (MatchManager.getSingleton().leftAIControlled))){ switch (_arg1.keyCode){ case Keyboard.UP: case 87: _up1Pressed = (_up2Pressed = false); break; case Keyboard.DOWN: case 83: _down1Pressed = (_down2Pressed = false); break; case Keyboard.LEFT: case 65: _left1Pressed = (_left2Pressed = false); break; case Keyboard.RIGHT: case 68: _right1Pressed = (_right2Pressed = false); break; case Keyboard.SPACE: case Keyboard.ENTER: _mouse1Pressed = (_mouse2Pressed = false); break; }; } else { switch (_arg1.keyCode){ case Keyboard.UP: _up1Pressed = false; break; case 87: _up2Pressed = false; break; case Keyboard.DOWN: _down1Pressed = false; break; case 83: _down2Pressed = false; break; case Keyboard.LEFT: _left1Pressed = false; break; case 65: _left2Pressed = false; break; case Keyboard.RIGHT: _right1Pressed = false; break; case 68: _right2Pressed = false; break; case Keyboard.SPACE: _mouse1Pressed = false; break; case Keyboard.ENTER: _mouse2Pressed = false; break; }; }; } protected function rightBackupCallback(_arg1:GravityBallLogic):void{ if (((!((_arg1 == _areaRight.logic))) && (!((_arg1 == _areaLeft.logic))))){ MediaPlayer.getSingleton().play(MediaPlayer.SND_INGAME_SHOCK); }; if (_arg1 == _leftPlayer.logic){ _rightBackup.logic.repelCompetence((_rightPlayerData.shoot / 2)); return; }; } override public function paint():void{ var _local5:GravityBallSprite; var _local6:BitmapData; var _local7:Vector; _playerIndicatorDelta = (_playerIndicatorDelta + 0.5); _playerIndicator.y = (-26 + (Math.sin(_playerIndicatorDelta) * 2)); _playerIndicator.scaleX = (0.5 + (Math.cos(_playerIndicatorDelta) * 0.5)); var _local1:GravityBallSprite = currentPlayer; if (DEF.MOUSE_CONTROL){ }; if (OptionsManager.getSingleton().showArrow){ if (((_ball.logic.orbiting) && ((_ball.logic.orbitParent == _local1.logic)))){ _arrowHelper.visible = true; _arrowHelper.x = _ball.x; _arrowHelper.y = _ball.y; _arrowHelper.scaleX = (_ball.logic.launchMagnitude / 20); _arrowHelper.rotation = _ball.logic.launchAngle; } else { _arrowHelper.visible = false; }; }; _rightPlayer.paint(); _leftGoalkeeper.paint(); _ball.paint(); _deltaRadial = (_deltaRadial + 0.5); SFX.getSingleton().radialGradient(_leftGoalkeeper, _leftPlayerData.goalkeeper, 3, _deltaRadial, _leftPlayerData.color); SFX.getSingleton().radialGradient(_rightGoalkeeper, _rightPlayerData.goalkeeper, 3, _deltaRadial, _rightPlayerData.color); if (DEF.USE_SATELLITES){ for each (_local5 in _leftSatellites) { SFX.getSingleton().radialGradient(_local5, (_leftPlayerData.goalkeeper / 2), 3, (_deltaRadial / 10), _leftPlayerData.color, false, 1); }; for each (_local5 in _rightSatellites) { SFX.getSingleton().radialGradient(_local5, (_rightPlayerData.goalkeeper / 2), 3, (_deltaRadial / 10), _rightPlayerData.color, false, 1); }; }; _clock.paint(); var _local2:Matrix = new Matrix(); _trailCanvas.graphics.clear(); var _local3:Iterator = _ballTrail.getIterator(); _local3.start(); var _local4:Number = 0; while (_local3.hasNext()) { _local6 = IMG.getSingleton().getBitmapData(IMG[("BALL_" + _local4)]); _local7 = (_local3.data as Vector); _local2.identity(); _local2.translate(((-(_local6.width) / 2) + _local7.x), ((-(_local6.height) / 2) + _local7.y)); _trailCanvas.graphics.beginBitmapFill(_local6, _local2); _trailCanvas.graphics.drawRect(((-(_local6.width) / 2) + _local7.x), ((-(_local6.height) / 2) + _local7.y), _local6.width, _local6.height); _trailCanvas.graphics.endFill(); _local3.next(); _local4++; }; _ballTrail.dequeue(); _ballTrail.enqueue(new Vector(_ball.x, _ball.y)); } protected function ballCallback(_arg1:GravityBallLogic):void{ var _local2:Number; var _local3:Vector; var _local4:Vector; MediaPlayer.getSingleton().play(MediaPlayer.SND_INGAME_SHOCK); if (_arg1 == _leftGoalkeeper.logic){ _rightScore++; _rightScoreText.text = ("" + _rightScore); if (((!(MatchManager.getSingleton().rightAIControlled)) && (OptionsManager.getSingleton().showTutorial))){ Tweener.addTween(_tutorialCanvas, {time:2, alpha:0, onComplete:removeTutorialCanvas}); OptionsManager.getSingleton().showTutorial = false; }; _leftScored = false; _rightScored = true; setState(STATE_GOAL); return; }; if (_arg1 == _rightGoalkeeper.logic){ _leftScore++; _leftScoreText.text = ("" + _leftScore); if (((!(MatchManager.getSingleton().leftAIControlled)) && (OptionsManager.getSingleton().showTutorial))){ Tweener.addTween(_tutorialCanvas, {time:2, alpha:0, onComplete:removeTutorialCanvas}); OptionsManager.getSingleton().showTutorial = false; }; _leftScored = true; _rightScored = false; setState(STATE_GOAL); return; }; if (_arg1 == _rightPlayer.logic){ _local3 = _leftPlayer.pos.minus(_rightPlayer.pos).normalize(); _local4 = _ball.pos.minus(_rightPlayer.pos).normalize(); _ball.logic.orbitAround(_rightPlayer.logic, ((_local3.cross(_local4) > 0)) ? 1 : -1); trace(("delta1:" + ((_local3.cross(_local4) > 0)) ? 1 : -1)); return; }; if (_arg1 == _leftPlayer.logic){ _local3 = _rightPlayer.pos.minus(_leftPlayer.pos).normalize(); _local4 = _ball.pos.minus(_leftPlayer.pos).normalize(); _ball.logic.orbitAround(_leftPlayer.logic, ((_local3.cross(_local4) > 0)) ? 1 : -1); trace(("delta2:" + ((_local3.cross(_local4) > 0)) ? 1 : -1)); return; }; } protected function reallocatePlayer(_arg1:GravityBallLogic):void{ var _local2:Vector = _arg1.pos; var _local3:Number = _arg1.radius; var _local4:Number = 12; if ((_local2.x + _local3) > (_boundingBox.right - _local4)){ _local2.x = ((_boundingBox.right - _local4) - _local3); }; if ((_local2.x - _local3) < (_boundingBox.left + _local4)){ _local2.x = ((_boundingBox.left + _local4) + _local3); }; if ((_local2.y + _local3) > (_boundingBox.bottom - _local4)){ _local2.y = ((_boundingBox.bottom - _local4) - _local3); }; if ((_local2.y - _local3) < (_boundingBox.top + _local4)){ _local2.y = ((_boundingBox.top + _local4) + _local3); }; } protected function createClock():void{ _clock = new CircularFilledClock(0, (MatchManager.getSingleton().matchTime / 2), 25, 0x222222, 1, 0xFF0000); _topPanel.addChild(_clock); _clock.x = (DEF.SCREEN_WIDTH / 2); _clock.y = 40; } protected function rightPlayerCallback(_arg1:GravityBallLogic):void{ if (((!((_arg1 == _areaRight.logic))) && (!((_arg1 == _areaLeft.logic))))){ MediaPlayer.getSingleton().play(MediaPlayer.SND_INGAME_SHOCK); }; if (_arg1 == _leftPlayer.logic){ _rightPlayer.logic.repelCompetence((_rightPlayerData.shoot / 2)); return; }; } protected function initTeams():void{ var _local1:Object; _local1 = DifficultManager.instance.balancePlayer(_leftPlayerData, _rightPlayerData, MatchManager.getSingleton().leftAIControlled); _leftPlayer.init(DEF.LEFT_PLAYER_ADV_X, DEF.LEFT_PLAYER_Y, (_local1.mass * DEF.MASS_COEFF), (_local1.speed * DEF.SPEED_COEFF), 0.1, (_local1.shoot * DEF.ATTACK_COEFF), true); _leftGoalkeeper.init(DEF.LEFT_GOALKEEPER_X, DEF.LEFT_GOALKEEKER_Y, (_local1.goalkeeper * DEF.DEFENSE_COEFF), 0, 1, 0, false, false, true); if (_local1.hasBackup){ _leftHasBackup = true; _leftBackup.init(DEF.LEFT_PLAYER_ADV_BACKUP_X, DEF.LEFT_PLAYER_Y, (_local1.mass * DEF.MASS_COEFF), (_local1.speed * DEF.SPEED_COEFF), 0.1, (_local1.shoot * DEF.ATTACK_COEFF), true); }; _local1 = DifficultManager.instance.balancePlayer(_rightPlayerData, _leftPlayerData, MatchManager.getSingleton().rightAIControlled); _rightPlayer.init(DEF.RIGHT_PLAYER_X, DEF.RIGHT_PLAYER_Y, (_local1.mass * DEF.MASS_COEFF), (_local1.speed * DEF.SPEED_COEFF), 0.1, (_local1.shoot * DEF.ATTACK_COEFF), true); _rightGoalkeeper.init(DEF.RIGHT_GOALKEEPER_X, DEF.RIGHT_GOALKEEPER_Y, (_local1.goalkeeper * DEF.DEFENSE_COEFF), 0, 1, 0, false, false, true); if (_local1.hasBackup){ _rightHasBackup = true; _rightBackup.init(DEF.RIGHT_PLAYER_BACKUP_X, DEF.RIGHT_PLAYER_Y, (_local1.mass * DEF.MASS_COEFF), (_local1.speed * DEF.SPEED_COEFF), 0.1, (_local1.shoot * DEF.ATTACK_COEFF), true); }; } protected function resetGoalPositions():Boolean{ var _local1:Vector = new Vector(); var _local2:Vector = new Vector(); var _local3:Boolean; var _local4:Boolean; var _local5:Boolean; if (_resetPositionsState == 0){ if (resetToCenterPositions()){ _resetPositionsState = 1; }; }; if (_resetPositionsState == 1){ _local3 = false; _local4 = false; _local5 = false; _ball.logic.stop(); _ball.logic.pos.setTo((DEF.MAP_WIDTH / 2), (DEF.MAP_HEIGHT / 2)); _ball.update(false, false, false, false, false, 0, 0); if (_rightScored){ if (_secondHalf){ _local1.setTo(DEF.RIGHT_PLAYER_ADV_X, DEF.RIGHT_PLAYER_Y); _local2.setTo(DEF.RIGHT_PLAYER_ADV_BACKUP_X, DEF.RIGHT_PLAYER_Y); } else { _local1.setTo(DEF.LEFT_PLAYER_ADV_X, DEF.LEFT_PLAYER_Y); _local2.setTo(DEF.LEFT_PLAYER_ADV_BACKUP_X, DEF.LEFT_PLAYER_Y); }; } else { if (_secondHalf){ _local1.setTo(DEF.RIGHT_PLAYER_X, DEF.RIGHT_PLAYER_Y); _local2.setTo(DEF.RIGHT_PLAYER_BACKUP_X, DEF.RIGHT_PLAYER_Y); } else { _local1.setTo(DEF.LEFT_PLAYER_X, DEF.LEFT_PLAYER_Y); _local2.setTo(DEF.LEFT_PLAYER_BACKUP_X, DEF.LEFT_PLAYER_Y); }; }; _local3 = BaseSportAI.commandToPoint(_leftPlayer, _local1, 5); if (_leftHasBackup){ _local3 = ((BaseSportAI.commandToPoint(_leftBackup, _local2, 5)) && (_local3)); }; if (_leftScored){ if (_secondHalf){ _local1.setTo(DEF.LEFT_PLAYER_ADV_X, DEF.LEFT_PLAYER_Y); _local2.setTo(DEF.LEFT_PLAYER_ADV_BACKUP_X, DEF.LEFT_PLAYER_Y); } else { _local1.setTo(DEF.RIGHT_PLAYER_ADV_X, DEF.RIGHT_PLAYER_Y); _local2.setTo(DEF.RIGHT_PLAYER_ADV_BACKUP_X, DEF.RIGHT_PLAYER_Y); }; } else { if (_secondHalf){ _local1.setTo(DEF.LEFT_PLAYER_X, DEF.LEFT_PLAYER_Y); _local2.setTo(DEF.LEFT_PLAYER_BACKUP_X, DEF.LEFT_PLAYER_Y); } else { _local1.setTo(DEF.RIGHT_PLAYER_X, DEF.RIGHT_PLAYER_Y); _local2.setTo(DEF.RIGHT_PLAYER_BACKUP_X, DEF.RIGHT_PLAYER_Y); }; }; _local4 = BaseSportAI.commandToPoint(_rightPlayer, _local1, 5); if (_rightHasBackup){ _local4 = ((BaseSportAI.commandToPoint(_rightBackup, _local2, 5)) && (_local4)); }; if (((_local4) && (_local3))){ return (true); }; }; return (false); } public function resetInterTimePositions():Boolean{ var _local1:Vector = new Vector(); var _local2:Vector = new Vector(); var _local3:Boolean; var _local4:Boolean; var _local5:Boolean; if (_resetPositionsState == 0){ if (resetToCenterPositions()){ _resetPositionsState = 1; }; }; if (_resetPositionsState == 1){ _local3 = false; _local4 = false; _local5 = false; _ball.logic.stop(); _ball.logic.pos.setTo((DEF.MAP_WIDTH / 2), (DEF.MAP_HEIGHT / 2)); _ball.update(false, false, false, false, false, 0, 0); if (_secondHalf){ _local1.setTo(DEF.LEFT_PLAYER_ADV_X, DEF.LEFT_PLAYER_Y); _local2.setTo(DEF.LEFT_PLAYER_ADV_BACKUP_X, DEF.LEFT_PLAYER_Y); } else { _local1.setTo(DEF.LEFT_PLAYER_X, DEF.LEFT_PLAYER_Y); _local2.setTo(DEF.LEFT_PLAYER_BACKUP_X, DEF.LEFT_PLAYER_Y); }; _local3 = BaseSportAI.commandToPoint(_rightPlayer, _local1, 5); if (_rightHasBackup){ _local3 = ((BaseSportAI.commandToPoint(_rightBackup, _local2, 5)) && (_local3)); }; if (_secondHalf){ _local1.setTo(DEF.RIGHT_PLAYER_X, DEF.RIGHT_PLAYER_Y); _local2.setTo(DEF.RIGHT_PLAYER_BACKUP_X, DEF.RIGHT_PLAYER_Y); } else { _local1.setTo(DEF.RIGHT_PLAYER_ADV_X, DEF.RIGHT_PLAYER_Y); _local2.setTo(DEF.RIGHT_PLAYER_ADV_BACKUP_X, DEF.RIGHT_PLAYER_Y); }; _local4 = BaseSportAI.commandToPoint(_leftPlayer, _local1, 5); if (_leftHasBackup){ _local4 = ((BaseSportAI.commandToPoint(_leftBackup, _local2, 5)) && (_local4)); }; if (((_local4) && (_local3))){ return (true); }; }; return (false); } protected function createLogos():void{ _leftLogo = new Sprite(); _leftLogo.x = DEF.LEFT_LOGO_X; _leftLogo.y = DEF.LEFT_LOGO_Y; _topPanel.addChild(_leftLogo); _rightLogo = new Sprite(); _rightLogo.x = DEF.RIGHT_LOGO_X; _rightLogo.y = DEF.RIGHT_LOGO_Y; _topPanel.addChild(_rightLogo); _leftLogo.graphics.beginBitmapFill(IMG.getSingleton().getBitmapData(IMG[(_leftPlayerData.graphicSet + "_LOGO")])); _leftLogo.graphics.drawRect(0, 0, 50, 50); _leftLogo.graphics.endFill(); _rightLogo.graphics.beginBitmapFill(IMG.getSingleton().getBitmapData(IMG[(_rightPlayerData.graphicSet + "_LOGO")])); _rightLogo.graphics.drawRect(0, 0, 50, 50); _rightLogo.graphics.endFill(); } protected function createFinalScores():void{ var _local1:TextFormat = new TextFormat("meta-bold", 140); _local1.align = "center"; _local1.color = 0xEEEEEE; var _local2:GlowFilter = new GlowFilter(0, 1, 2, 2, 2, 1, false); _leftFinalScore = new TextField(); _leftFinalScore.selectable = false; _leftFinalScore.x = 0; _leftFinalScore.y = (0xFF - 80); _leftFinalScore.width = (DEF.SCREEN_WIDTH / 2); _leftFinalScore.height = 140; _leftFinalScore.embedFonts = true; _leftFinalScore.defaultTextFormat = _local1; _leftFinalScore.filters = [_local2]; _leftFinalScore.background = false; _rightFinalScore = new TextField(); _rightFinalScore.selectable = false; _rightFinalScore.x = (DEF.SCREEN_WIDTH / 2); _rightFinalScore.y = (0xFF - 80); _rightFinalScore.width = (DEF.SCREEN_WIDTH / 2); _rightFinalScore.height = 140; _rightFinalScore.embedFonts = true; _rightFinalScore.defaultTextFormat = _local1; _rightFinalScore.filters = [_local2]; _rightFinalScore.background = false; } protected function createInterface():void{ var _local1:BitmapData = IMG.getSingleton().getBitmapData(IMG.TOP_PANEL); _topPanel = new Sprite(); _topPanel.graphics.beginBitmapFill(_local1); _topPanel.graphics.drawRect(0, 0, DEF.SCREEN_WIDTH, _local1.height); _topPanel.graphics.endFill(); _topPanel.x = 0; _topPanel.y = -(_local1.height); var _local2:Sprite = new Sprite(); _local2.graphics.beginBitmapFill(IMG.getSingleton().getBitmapData(IMG.TOP_PANEL_REFLECTION)); _local2.graphics.drawRect(0, 0, DEF.SCREEN_WIDTH, _local1.height); _local2.graphics.endFill(); _local2.x = 0; _local2.y = -(_local1.height); _backgroundCanvas.addChild(_topPanel); _backgroundCanvas.addChild(_local2); createLCDScreens(); createClock(); createLogos(); } override public function keyDown(_arg1:KeyboardEvent):void{ super.keyDown(_arg1); _anyKeyPressed = true; if (((MatchManager.getSingleton().rightAIControlled) && (MatchManager.getSingleton().leftAIControlled))){ return; }; if (DEF.CHEATS){ if (_arg1.keyCode == Keyboard.ESCAPE){ _clock.forceEnd(); }; if (_arg1.keyCode == Keyboard.F1){ TeamUnlockerManager.getSingleton().unlockAll(); }; }; if (((MatchManager.getSingleton().rightAIControlled) || (MatchManager.getSingleton().leftAIControlled))){ switch (_arg1.keyCode){ case Keyboard.UP: case 87: _up1Pressed = (_up2Pressed = true); break; case Keyboard.DOWN: case 83: _down1Pressed = (_down2Pressed = true); break; case Keyboard.LEFT: case 65: _left1Pressed = (_left2Pressed = true); break; case Keyboard.RIGHT: case 68: _right1Pressed = (_right2Pressed = true); break; case Keyboard.SPACE: case Keyboard.ENTER: _mouse1Pressed = (_mouse2Pressed = true); break; }; } else { switch (_arg1.keyCode){ case Keyboard.UP: _up1Pressed = true; break; case 87: _up2Pressed = true; break; case Keyboard.DOWN: _down1Pressed = true; break; case 83: _down2Pressed = true; break; case Keyboard.LEFT: _left1Pressed = true; break; case 65: _left2Pressed = true; break; case Keyboard.RIGHT: _right1Pressed = true; break; case 68: _right2Pressed = true; break; case Keyboard.SPACE: _mouse1Pressed = true; break; case Keyboard.ENTER: _mouse2Pressed = true; break; }; }; } protected function get currentPlayer():GravityBallSprite{ var _local1:GravityBallSprite; if (MatchManager.getSingleton().rightAIControlled){ _local1 = _leftPlayer; } else { _local1 = _rightPlayer; }; return (_local1); } override public function update():int{ var point:Vector; var point2:Vector; var leftReady:Boolean; var rightReady:Boolean; var ballReady:Boolean; var player:GravityBallSprite; var ready:Boolean; if (_menuButton.isPressed){ _parent.y = 0; _clock.pause(); _nextState = new StateInGameMenu(); (_nextState as StateInGameMenu).background = _parent; return (State.NEXT); }; switch (_state){ case STATE_INIT_GAME: if (((_anyKeyPressed) || (_mouse1Pressed))){ setState(STATE_WAITING); Tweener.addTween(_frontCanvas, {time:0.5, alpha:0, onComplete:function ():void{ _frontCanvas.removeChild(_leftTeamName); _frontCanvas.removeChild(_rightTeamName); _frontCanvas.graphics.clear(); _frontCanvas.alpha = 1; SFX.getSingleton().showFadingMessage(_frontCanvas, IMG.getSingleton().getBitmapData(IMG.MESSAGE_FIRST_HALF), (DEF.MAP_WIDTH / 2), (DEF.MAP_HEIGHT / 2), 2, 0, function ():void{ setState(STATE_INIT_TIME); }); }}); }; break; case STATE_GAME: if (_clock.isPaused()){ _clock.resume(); }; reallocatePlayer(_rightPlayer.logic); reallocatePlayer(_leftPlayer.logic); if (_leftHasBackup){ reallocatePlayer(_leftBackup.logic); }; if (_rightHasBackup){ reallocatePlayer(_rightBackup.logic); }; if (!_ball.logic.orbiting){ reallocatePlayer(_ball.logic); }; if (DEF.MOUSE_CONTROL){ _left1Pressed = (_left2Pressed = false); _right1Pressed = (_right2Pressed = false); _up1Pressed = (_up2Pressed = false); _down1Pressed = (_down2Pressed = false); if (MatchManager.getSingleton().rightAIControlled){ player = _leftPlayer; } else { player = _rightPlayer; }; player.logic.pos.x = player.x; player.logic.pos.y = player.y; }; _ball.update(false, false, false, false, false, 0, 0); if (MatchManager.getSingleton().rightAIControlled){ if (_rightHasBackup){ _rightPlayerAI.update([_rightBackup.logic], [_leftPlayer.logic]); _rightBackupAI.update([_rightPlayer.logic], [_leftPlayer.logic]); } else { _rightPlayerAI.update(null, [_leftPlayer.logic]); }; } else { _rightPlayer.update(_up2Pressed, _down2Pressed, _left2Pressed, _right2Pressed, _mouse2Pressed, 0, 0); }; if (MatchManager.getSingleton().leftAIControlled){ if (_leftHasBackup){ _leftPlayerAI.update([_leftBackup.logic], [_rightPlayer.logic]); _leftBackupAI.update([_leftPlayer.logic], [_rightPlayer.logic]); } else { _leftPlayerAI.update(null, [_rightPlayer.logic]); }; } else { _leftPlayer.update(_up1Pressed, _down1Pressed, _left1Pressed, _right1Pressed, _mouse1Pressed, 0, 0); }; _clock.update(); if (_clock.finished()){ setState(STATE_INTER_TIME); }; break; case STATE_GOAL: ready = resetGoalPositions(); if (_resetPositionsState == 1){ Tweener.addTween(particleRenderer, {time:2, alpha:0}); if (ready){ setState(STATE_WAITING); paperRain.stop(); SFX.getSingleton().showFadingMessage(_frontCanvas, IMG.getSingleton().getBitmapData(IMG.MESSAGE_KICK_OFF), (DEF.MAP_WIDTH / 2), (DEF.MAP_HEIGHT / 2), 2, 0, function ():void{ _clock.resume(); setState(STATE_GAME); }); }; }; break; case STATE_INTER_TIME: ready = resetInterTimePositions(); if (_resetPositionsState == 1){ _leftGoalkeeper.pos.x = (_leftGoalkeeper.x = DEF.RIGHT_GOALKEEPER_X); _rightGoalkeeper.pos.x = (_rightGoalkeeper.x = DEF.LEFT_GOALKEEPER_X); _leftScoreText.x = DEF.RIGHT_SCORE_X; _rightScoreText.x = DEF.LEFT_SCORE_X; _leftLogo.x = DEF.RIGHT_LOGO_X; _rightLogo.x = DEF.LEFT_LOGO_X; Tweener.addTween(particleRenderer, {time:2, alpha:0}); if (ready){ setState(STATE_INIT_TIME); }; }; break; case STATE_GAME_END: _parent.y = 0; MatchManager.getSingleton().setMatchResults(_leftScore, _rightScore); _nextState = new StateMatchEnd(); return (State.NEXT_AND_DESTROY); }; return (State.CONTINUE); } protected function activateControls(_arg1:GravityBallSprite):void{ if (_controlsActive){ return; }; _arg1.mouseChildren = false; _arg1.buttonMode = true; _arg1.addEventListener(MouseEvent.MOUSE_OVER, onPlayerMouseOver, false, 0, true); _arg1.addEventListener(MouseEvent.MOUSE_OUT, onPlayerMouseOut, false, 0, true); _controlsActive = true; } override public function mouseDown(_arg1:MouseEvent):void{ super.mouseDown(_arg1); _mouse1Pressed = (_mouse2Pressed = true); } override public function destroy():void{ fadeOutAndRemove([_backgroundCanvas, _frontCanvas, _obstacleCanvas, _blurCanvas]); MediaPlayer.getSingleton().stop(MediaPlayer.SND_INGAME1, MediaPlayer.SND_INGAME5); } override public function show():void{ fadeIn([_backgroundCanvas, _frontCanvas, _obstacleCanvas, _blurCanvas]); MediaPlayer.getSingleton().loopBetween(MediaPlayer.SND_INGAME1, MediaPlayer.SND_INGAME5); } } }//package States
Section 224
//StateInGameMenu (States.StateInGameMenu) package States { import flash.display.*; import flash.geom.*; import StateLib.*; import GenericUILib.*; public class StateInGameMenu extends StateMenu { private var _backgroundBmp:BitmapData; private static const OPTION_MORE_GAMES:Number = 1; private static const OPTION_RESUME_GAME:Number = 2; private static const OPTION_MAIN_MENU:Number = 0; public function StateInGameMenu(){ _options = new Array({image:IMG.MENU_PLAY_MORE_GAMES_BUTTON, x:320, y:400, returnValue:OPTION_MORE_GAMES}, {image:IMG.MENU_RESUME_GAME, x:320, y:210, returnValue:OPTION_RESUME_GAME, hint:"Back to the game"}, {image:IMG.MENU_MAIN_MENU, x:320, y:270, returnValue:OPTION_MAIN_MENU, hint:"Return to the main menu"}); } override public function update():int{ switch (_menu.update()){ case OPTION_RESUME_GAME: _parent.y = (DEF.SCREEN_HEIGHT - DEF.MAP_HEIGHT); return (State.PREVIOUS); case OPTION_MAIN_MENU: _nextState = new StateMenu(); return (State.NEXT_AND_DESTROY); case OPTION_MORE_GAMES: playMoreGames(); break; }; return (State.CONTINUE); } override public function init(_arg1:Sprite):void{ _parent = _arg1; var _local2:Bitmap; if (_backgroundBmp != null){ _local2 = new Bitmap(_backgroundBmp); }; _menu = new GenericMenu(_options, _local2); _parent.addChild(_menu); _menu.show(); _hintText = createTextField("center", 28, 16777113); _hintText.x = 0; _hintText.y = (DEF.SCREEN_HEIGHT - 50); _hintText.width = DEF.SCREEN_WIDTH; _hintText.height = 40; _menu.addChild(_hintText); } public function set background(_arg1:Sprite):void{ _backgroundBmp = new BitmapData(_arg1.width, _arg1.height); var _local2:Matrix = new Matrix(); _local2.translate(0, (DEF.SCREEN_HEIGHT - DEF.MAP_HEIGHT)); var _local3:ColorTransform = new ColorTransform(0.7, 0.7, 0.7, 1, 0, 0, 0, 0); _backgroundBmp.draw(_arg1, _local2, _local3); } } }//package States
Section 225
//StateKnockout (States.StateKnockout) package States { import flash.events.*; import flash.display.*; import flash.geom.*; import StateLib.*; import Tournament.*; import ShooterLib.AI.*; import GenericUILib.*; import caurina.transitions.*; public class StateKnockout extends State { protected var _frontCanvas:Sprite; protected var _tooltip:KnockoutTooltip; protected var _nextButton:GenericButton; protected var _background:Sprite; protected var _optionsButton:GenericButton; protected var _backButton:GenericButton; protected var _skip:Boolean;// = false private static const DELTA_Y:Number = 50; protected static var NULL_TEAM_INFO:SeasonTeamInfo = new SeasonTeamInfo("", {name:"", graphicSet:"TEAM_NULL", color:0, backgroundMask:0, speed:0, mass:0, goalkeeper:0, shoot:0, AIType:BaseSportAI.TYPE_TACTIC, locked:false, unlockDesc:""}, -1); override public function update():int{ if (_optionsButton.isPressed){ _nextState = new StateOptions(); return (State.NEXT); }; if (((_nextButton.isPressed) || (_skip))){ if (DEF.SKIP_KNOCKOUT_MATCHES){ _skip = false; MatchManager.getSingleton().setupNextMatch(); MatchManager.getSingleton().setMatchResults((MatchManager.getSingleton().leftAIControlled) ? 0 : 2, (MatchManager.getSingleton().rightAIControlled) ? 0 : 2); _nextState = new StateMatchEnd(); return (State.NEXT_AND_DESTROY); } else { _skip = false; MatchManager.getSingleton().setupNextMatch(); _nextState = new StateGame(); return (State.NEXT_AND_DESTROY); }; }; if (_backButton.isPressed){ if ((((((MatchManager.getSingleton().getType() == MatchManager.TYPE_SEASON)) || ((MatchManager.getSingleton().getType() == MatchManager.TYPE_TOURNAMENT)))) || ((MatchManager.getSingleton().getType() == MatchManager.TYPE_KNOCKOUT)))){ _nextState = new StateMenu(); return (State.NEXT_AND_DESTROY); }; return (State.PREVIOUS); }; return (State.CONTINUE); } protected function onItemMouseOver(_arg1:MouseEvent):void{ _tooltip.teamName.text = _arg1.target.teamName; _arg1.target.addChild(_tooltip); _tooltip.scaleX = 1; _tooltip.x = 0; if ((_arg1.target.x - (_tooltip.width / 2)) < 0){ _tooltip.x = ((_tooltip.width / 2) - _arg1.target.x); }; if ((_arg1.target.x + (_tooltip.width / 2)) > DEF.SCREEN_WIDTH){ _tooltip.x = ((DEF.SCREEN_WIDTH - _arg1.target.x) - (_tooltip.width / 2)); }; _tooltip.visible = true; _tooltip.scaleX = 0.001; Tweener.addTween(_tooltip, {time:0.3, scaleX:1}); } protected function paintMatchLine(_arg1:Array, _arg2:Number, _arg3:Number, _arg4:Number):void{ var _local9:Match; var _local10:MovieClip; var _local5:Number = _arg1.length; var _local6:Number = _arg2; var _local7:Number = _arg3; var _local8:Number = 0; for each (_local9 in _arg1) { if (_local8 >= (_local5 / 2)){ _local6 = (DEF.SCREEN_WIDTH - _arg2); _local7 = _arg3; _local8 = 0; }; _local10 = createItem(_local9.team1, _local9.score1, (_local9.score1 >= _local9.score2), _local9.team1.isPlayer); _local10.x = _local6; _local10.y = _local7; _local7 = (_local7 + (_local10.height + 10)); _local10 = createItem(_local9.team2, _local9.score2, (_local9.score1 <= _local9.score2), _local9.team2.isPlayer); _local10.x = _local6; _local10.y = _local7; _local7 = (_local7 + ((_local10.height + 10) + _arg4)); _local8++; }; } public function fillKnockout():void{ var _local3:Number; var _local5:Array; var _local6:Number; var _local1:Number = MatchManager.getSingleton().currentWeek; var _local2:Array = [{x:35, y:(20 + DELTA_Y), spacing:20}, {x:130, y:(60 + DELTA_Y), spacing:115}, {x:225, y:(155 + DELTA_Y), spacing:10}, {x:320, y:(155 + DELTA_Y), spacing:10}]; var _local4:Number = 0; while (_local4 < 4) { _local5 = MatchManager.getSingleton().weekSchedule(_local4).matches; if (_local5.length == 0){ trace("dummy phase"); _local5 = new Array(); _local6 = 0; while (_local6 < (_local3 / 2)) { _local5.push(new Match(NULL_TEAM_INFO, NULL_TEAM_INFO)); _local6++; }; }; trace("phase:", _local4, _local5); paintMatchLine(_local5, _local2[_local4].x, _local2[_local4].y, _local2[_local4].spacing); _local3 = _local5.length; _local4++; }; } override public function destroy():void{ fadeOutAndRemove([_background]); _background = null; MediaPlayer.getSingleton().speakerVisible = true; } protected function onItemMouseOut(_arg1:MouseEvent):void{ var target:MovieClip; var evt = _arg1; target = (evt.target as MovieClip); Tweener.addTween(_tooltip, {time:0.2, scaleX:0.001, onComplete:function ():void{ target.removeChild(_tooltip); _tooltip.visible = false; }}); } public function createItem(_arg1:SeasonTeamInfo, _arg2:Number=-1, _arg3:Boolean=true, _arg4:Boolean=false):MovieClip{ var _local5:KnockoutItem = new KnockoutItem(); _background.addChildAt(_local5, 1); var _local6:BitmapData = IMG.getSingleton().getBitmapData(IMG[(_arg1.teamDesc.graphicSet + "_MINI_FLAG")]); var _local7:Sprite = new Sprite(); var _local8:Matrix = new Matrix(); _local8.translate((-(_local6.width) / 2), (-(_local6.height) / 2)); _local7.graphics.beginBitmapFill(_local6, _local8); _local7.graphics.drawRect((-(_local6.width) / 2), (-(_local6.height) / 2), _local6.width, _local6.height); _local7.graphics.endFill(); if (_arg3){ _local5.gotoAndStop("_enabled"); } else { _local5.gotoAndStop("_disabled"); }; if (_arg4){ _local5.gotoAndStop("_player"); }; _local5.imageDock.addChild(_local7); if (_arg2 == -1){ _local5.score.text = "-"; } else { _local5.score.text = _arg2.toString(); }; _local5.teamName = _arg1.teamName; _local5.mouseChildren = false; if (_arg1 != NULL_TEAM_INFO){ _local5.addEventListener(MouseEvent.MOUSE_OVER, onItemMouseOver, false, 0, true); _local5.addEventListener(MouseEvent.MOUSE_OUT, onItemMouseOut, false, 0, true); }; return (_local5); } override public function init(_arg1:Sprite):void{ super.init(_arg1); _parent = _arg1; MediaPlayer.getSingleton().speakerVisible = false; _background = new Sprite(); _background.graphics.beginBitmapFill(IMG.getSingleton().getBitmapData(IMG.KNOCKOUT_RESULTS)); _background.graphics.drawRect(0, 0, DEF.SCREEN_WIDTH, DEF.SCREEN_HEIGHT); _background.graphics.endFill(); _parent.addChild(_background); var _local2:KnockoutLines = new KnockoutLines(); _background.addChild(_local2); _local2.x = (DEF.SCREEN_WIDTH / 2); _local2.y = (170 + DELTA_Y); _nextButton = new GenericButton(IMG.getSingleton().getBitmapData(IMG.BUTTON_NEXT), IMG.getSingleton().getBitmapData(IMG.BUTTON_NEXT), true); _nextButton.x = DEF.BUTTON_NEXT_X; _nextButton.y = (DEF.BUTTON_NEXT_Y + DELTA_Y); _background.addChild(_nextButton); _backButton = new GenericButton(IMG.getSingleton().getBitmapData(IMG.BUTTON_BACK), IMG.getSingleton().getBitmapData(IMG.BUTTON_BACK), true); _backButton.x = DEF.BUTTON_BACK_X; _backButton.y = (DEF.BUTTON_BACK_Y + DELTA_Y); _background.addChild(_backButton); _optionsButton = new GenericButton(IMG.getSingleton().getBitmapData(IMG.OPTIONS_PANEL_BUTTON), IMG.getSingleton().getBitmapData(IMG.OPTIONS_PANEL_BUTTON), true); _optionsButton.x = (DEF.SCREEN_WIDTH / 2); _optionsButton.y = (DEF.BUTTON_NEXT_Y + DELTA_Y); _background.addChild(_optionsButton); fillKnockout(); _tooltip = new KnockoutTooltip(); _tooltip.visible = false; } override public function hide():void{ fadeOut([_background]); MediaPlayer.getSingleton().speakerVisible = true; } override public function show():void{ fadeIn([_background]); MediaPlayer.getSingleton().speakerVisible = false; } } }//package States
Section 226
//StateMatchEnd (States.StateMatchEnd) package States { import flash.events.*; import flash.display.*; import flash.geom.*; import StateLib.*; import flash.text.*; import Teams.*; import Tournament.*; import GenericUILib.*; import flash.filters.*; import mochi.as3.*; public class StateMatchEnd extends StateMenu { private var _rightTeamName:TextField; private var _continue:Boolean;// = false private var _rightPlayerData:Object; private var _leftFinalScore:TextField; private var _leftTeamName:TextField; private var _leftPlayerData:Object; private var _interlevelBackground:MovieClip; private var _rightFinalScore:TextField; private var _skip:Boolean;// = false private static const OPTION_CHOOSE_TEAMS:Number = 2; private static const OPTION_REMATCH:Number = 1; private static const OPTION_CONTINUE:Number = 0; private static const OPTION_MAIN_MENU:Number = 3; private static const OPTION_PLAY_MORE_GAMES:Number = 4; private static var interlevelNumber:Number = 0; public function StateMatchEnd(){ if ((((((MatchManager.getSingleton().getType() == MatchManager.TYPE_SEASON)) || ((MatchManager.getSingleton().getType() == MatchManager.TYPE_TOURNAMENT)))) || ((MatchManager.getSingleton().getType() == MatchManager.TYPE_KNOCKOUT)))){ _options = new Array({image:IMG.MENU_CONTINUE, x:480, y:400, returnValue:OPTION_CONTINUE, hint:"Continue to the Season info screen"}, {image:IMG.MENU_REMATCH, x:160, y:400, returnValue:OPTION_REMATCH, hint:"Play this match again"}, {image:IMG.MENU_MORE_GAMES, x:480, y:440, returnValue:OPTION_PLAY_MORE_GAMES}, {image:IMG.MENU_MAIN_MENU, x:160, y:440, returnValue:OPTION_MAIN_MENU, hint:"Exit to the main menu"}); } else { _options = new Array({image:IMG.MENU_CONTINUE, x:160, y:400, returnValue:OPTION_CONTINUE, hint:"Return to the main menu"}, {image:IMG.MENU_REMATCH, x:480, y:400, returnValue:OPTION_REMATCH, hint:"Play again with the same teams"}, {image:IMG.MENU_CHOOSE_TEAMS, x:160, y:440, returnValue:OPTION_CHOOSE_TEAMS, hint:"Go back to the team selection screen"}, {image:IMG.MENU_MAIN_MENU, x:480, y:440, returnValue:OPTION_MAIN_MENU, hint:"Return to the main menu"}); }; } override public function keyDown(_arg1:KeyboardEvent):void{ trace("keyDown"); _skip = true; } private function createTeamNames():void{ var _local1:TextFormat = new TextFormat("lcd", 32); _local1.align = "center"; _local1.color = 0xEEEEEE; var _local2:GlowFilter = new GlowFilter(0, 1, 2, 2, 2, 1, false); _leftTeamName = new TextField(); _leftTeamName.selectable = false; _leftTeamName.x = 0; _leftTeamName.y = (250 - 30); _leftTeamName.width = (DEF.SCREEN_WIDTH / 2); _leftTeamName.height = 30; _leftTeamName.embedFonts = true; _leftTeamName.defaultTextFormat = _local1; _leftTeamName.filters = [_local2]; _rightTeamName = new TextField(); _rightTeamName.selectable = false; _rightTeamName.x = (DEF.SCREEN_WIDTH / 2); _rightTeamName.y = (250 - 30); _rightTeamName.width = (DEF.SCREEN_WIDTH / 2); _rightTeamName.height = 30; _rightTeamName.embedFonts = true; _rightTeamName.defaultTextFormat = _local1; _rightTeamName.filters = [_local2]; } private function unlockTeams():void{ if (MatchManager.getSingleton().leftScore == MatchManager.getSingleton().rightScore){ if (((((MatchManager.getSingleton().leftAIControlled) && ((MatchManager.getSingleton().leftTeam.name == DEF.TEAMS[2].name)))) || (((MatchManager.getSingleton().rightAIControlled) && ((MatchManager.getSingleton().rightTeam.name == DEF.TEAMS[2].name)))))){ TeamUnlockerManager.getSingleton().unlockTeam(2, _parent); }; }; if (Math.abs((MatchManager.getSingleton().leftScore - MatchManager.getSingleton().rightScore)) >= 5){ if (((((MatchManager.getSingleton().leftAIControlled) && ((MatchManager.getSingleton().leftScore < MatchManager.getSingleton().rightScore)))) || (((MatchManager.getSingleton().rightAIControlled) && ((MatchManager.getSingleton().leftScore > MatchManager.getSingleton().rightScore)))))){ TeamUnlockerManager.getSingleton().unlockTeam(3, _parent); }; }; if (Math.abs((MatchManager.getSingleton().leftScore - MatchManager.getSingleton().rightScore)) >= 3){ if (((((MatchManager.getSingleton().leftAIControlled) && ((MatchManager.getSingleton().leftTeam.name == DEF.TEAMS[4].name)))) || (((MatchManager.getSingleton().rightAIControlled) && ((MatchManager.getSingleton().rightTeam.name == DEF.TEAMS[4].name)))))){ TeamUnlockerManager.getSingleton().unlockTeam(4, _parent); }; }; if (((((((((!(MatchManager.getSingleton().leftAIControlled)) && ((MatchManager.getSingleton().leftTeam.name == DEF.TEAMS[6].name)))) && (((MatchManager.getSingleton().rightAIControlled) && ((MatchManager.getSingleton().rightTeam.name == DEF.TEAMS[7].name)))))) && ((MatchManager.getSingleton().leftScore > MatchManager.getSingleton().rightScore)))) || (((((((MatchManager.getSingleton().leftAIControlled) && ((MatchManager.getSingleton().leftTeam.name == DEF.TEAMS[7].name)))) && (((!(MatchManager.getSingleton().rightAIControlled)) && ((MatchManager.getSingleton().rightTeam.name == DEF.TEAMS[6].name)))))) && ((MatchManager.getSingleton().leftScore < MatchManager.getSingleton().rightScore)))))){ TeamUnlockerManager.getSingleton().unlockTeam(7, _parent); }; } override public function update():int{ unlockTeams(); switch (_menu.update()){ case OPTION_CONTINUE: _skip = true; break; case OPTION_REMATCH: _nextState = new StateGame(); return (State.NEXT_AND_DESTROY); case OPTION_CHOOSE_TEAMS: _nextState = new StateSelectTeam(); return (State.NEXT_AND_DESTROY); case OPTION_MAIN_MENU: _nextState = new StateMenu(); return (State.NEXT_AND_DESTROY); case OPTION_PLAY_MORE_GAMES: playMoreGames(); break; }; if (_continue){ trace("continuamos"); _continue = false; if (((((!((MatchManager.getSingleton().getType() == MatchManager.TYPE_TOURNAMENT))) && (!((MatchManager.getSingleton().getType() == MatchManager.TYPE_SEASON))))) && (!((MatchManager.getSingleton().getType() == MatchManager.TYPE_KNOCKOUT))))){ _nextState = new StateMenu(); return (State.NEXT_AND_DESTROY); }; switch (MatchManager.getSingleton().setupNextWeek()){ case -1: _nextState = new StateSeasonEnd(); break; case MatchManager.TYPE_SEASON: _nextState = new StateScheduleInfo(); break; case MatchManager.TYPE_KNOCKOUT: _nextState = new StateKnockout(); break; case MatchManager.TYPE_PENALTIES: _nextState = new StatePenalty(); break; }; return (State.NEXT_AND_DESTROY); }; if (((_skip) && (!(_interlevelBackground.visible)))){ _skip = false; interlevelNumber++; if (((DEF.INTERLEVEL_ADS) && (((interlevelNumber % 4) == 0)))){ _interlevelBackground.visible = true; MochiAd.showInterLevelAd({clip:_interlevelBackground, id:"b89714bb1e889e4e", res:"640x480", no_bg:true, ad_started:function ():void{ }, ad_finished:function ():void{ _interlevelBackground.visible = false; _continue = true; trace("el ad skippeo"); }}); } else { _continue = true; }; }; return (State.CONTINUE); } private function createFinalScores():void{ var _local2:GlowFilter; var _local1:TextFormat = new TextFormat("abadi", 120); _local1.align = "center"; _local1.color = 0xEEEEEE; _local2 = new GlowFilter(0, 1, 2, 2, 2, 1, false); _leftFinalScore = new TextField(); _leftFinalScore.selectable = false; _leftFinalScore.x = 0; _leftFinalScore.y = (0xFF - 25); _leftFinalScore.width = (DEF.SCREEN_WIDTH / 2); _leftFinalScore.height = 140; _leftFinalScore.embedFonts = true; _leftFinalScore.defaultTextFormat = _local1; _leftFinalScore.filters = [_local2]; _leftFinalScore.background = false; _rightFinalScore = new TextField(); _rightFinalScore.selectable = false; _rightFinalScore.x = (DEF.SCREEN_WIDTH / 2); _rightFinalScore.y = (0xFF - 25); _rightFinalScore.width = (DEF.SCREEN_WIDTH / 2); _rightFinalScore.height = 140; _rightFinalScore.embedFonts = true; _rightFinalScore.defaultTextFormat = _local1; _rightFinalScore.filters = [_local2]; _rightFinalScore.background = false; } override public function init(_arg1:Sprite):void{ _parent = _arg1; _menu = new GenericMenu(_options, IMG.getSingleton().getBitmap(IMG.POST_MATCH_BACKGROUND)); _parent.addChild(_menu); _menu.show(); _logo = null; _leftPlayerData = MatchManager.getSingleton().leftTeam; _rightPlayerData = MatchManager.getSingleton().rightTeam; var _local2:Matrix = new Matrix(); _local2.translate((160 - 25), ((220 - 30) - 25)); _menu.graphics.beginBitmapFill(IMG.getSingleton().getBitmapData(IMG[(_leftPlayerData.graphicSet + "_LOGO")]), _local2); _menu.graphics.drawRect((160 - 25), ((220 - 30) - 25), 50, 50); _menu.graphics.endFill(); _local2.identity(); _local2.translate((480 - 25), ((220 - 30) - 25)); _menu.graphics.beginBitmapFill(IMG.getSingleton().getBitmapData(IMG[(_rightPlayerData.graphicSet + "_LOGO")]), _local2); _menu.graphics.drawRect((480 - 25), ((220 - 30) - 25), 50, 50); _menu.graphics.endFill(); createTeamNames(); createFinalScores(); _menu.addChild(_leftTeamName); _menu.addChild(_rightTeamName); _menu.addChild(_leftFinalScore); _menu.addChild(_rightFinalScore); _leftTeamName.text = _leftPlayerData.name; _rightTeamName.text = _rightPlayerData.name; _leftFinalScore.text = ("" + MatchManager.getSingleton().leftScore); _rightFinalScore.text = ("" + MatchManager.getSingleton().rightScore); _interlevelBackground = new MovieClip(); _interlevelBackground.graphics.beginBitmapFill(IMG.getSingleton().getBitmapData(IMG.INTERLEVEL_BACKGROUND)); _interlevelBackground.graphics.drawRect(0, 0, DEF.SCREEN_WIDTH, DEF.SCREEN_HEIGHT); _interlevelBackground.graphics.endFill(); _interlevelBackground.visible = false; _menu.addChild(_interlevelBackground); } } }//package States
Section 227
//StateMenu (States.StateMenu) package States { import flash.display.*; import flash.geom.*; import StateLib.*; import flash.text.*; import Teams.*; import GenericUILib.*; import caurina.transitions.*; import flash.filters.*; public class StateMenu extends State { protected var _logo:MovieClip; protected var _background:Sprite; private var _saveGame:SaveGame; protected var _hintText:TextField; protected var _menu:GenericMenu; protected var _options:Array; private static const OPTION_ABOUT:Number = 2; private static const OPTION_PLAYGROUND:Number = 5; private static const OPTION_QUICK_MATCH:Number = 0; private static const OPTION_TOURNAMENT:Number = 1; private static const OPTION_OPTIONS:Number = 4; private static const OPTION_PLAY_MORE_GAMES:Number = 3; private static const OPTION_ILMARE:Number = 6; public function StateMenu(){ _options = new Array({image:IMG.MENU_SEASON, x:200, y:230, returnValue:OPTION_TOURNAMENT, hint:"Start or Continue the World Cup 2010"}, {image:IMG.MENU_QUICK_MATCH, x:200, y:310, returnValue:OPTION_QUICK_MATCH, hint:"Play a quick match"}, {image:IMG.MENU_OPTIONS, x:200, y:350, returnValue:OPTION_OPTIONS, hint:"Customise match time, tutorial and more"}, {image:IMG.MENU_ABOUT, x:200, y:390, returnValue:OPTION_ABOUT, hint:"Find out who are the people behind this game"}, {image:IMG.MENU_PLAY_MORE_GAMES_BUTTON, x:510, y:310, returnValue:OPTION_PLAY_MORE_GAMES, hint:"Play more awesome games!"}); } override public function destroy():void{ fadeOutAndRemove([_menu]); MediaPlayer.getSingleton().stop(MediaPlayer.SND_INTRO); } override public function update():int{ unlockTeams(); switch (_menu.update()){ case OPTION_QUICK_MATCH: _nextState = new StateQuickMatchMenu(); return (State.NEXT); case OPTION_TOURNAMENT: _nextState = new StateContinueSeasonMenu(); return (State.NEXT); case OPTION_PLAYGROUND: _nextState = new StatePlayground(); return (State.NEXT); case OPTION_OPTIONS: _nextState = new StateOptions(); return (State.NEXT); case OPTION_PLAY_MORE_GAMES: playMoreGames(); break; case OPTION_ABOUT: _nextState = new StateAbout(); return (State.NEXT); case OPTION_ILMARE: goToIlMareGames(); break; }; return (State.CONTINUE); } override public function init(_arg1:Sprite):void{ super.init(_arg1); _menu = new GenericMenu(_options, IMG.getSingleton().getBitmap(IMG.MENU_FRONT_END), IMG.getSingleton().getBitmap(IMG.MENU_BACKGROUND)); _parent.addChild(_menu); _menu.show(); var _local2:BitmapData = IMG.getSingleton().getBitmapData(IMG.LOGO); var _local3:Matrix = new Matrix(); _local3.translate((-(_local2.width) / 2), (-(_local2.height) / 2)); _logo = new MovieClip(); _logo.graphics.beginBitmapFill(_local2, _local3); _logo.graphics.drawRect((-(_local2.width) / 2), (-(_local2.height) / 2), _local2.width, _local2.height); _logo.graphics.endFill(); _menu.addChild(_logo); _logo.x = DEF.LOGO_X; _logo.y = DEF.LOGO_Y; _logo.scaleX = 0.1; _logo.scaleY = 0.1; _hintText = createTextField("center", 28, 16777113); _hintText.x = 0; _hintText.y = (DEF.SCREEN_HEIGHT - 50); _hintText.width = DEF.SCREEN_WIDTH; _hintText.height = 40; _menu.addChild(_hintText); TeamUnlockerManager.getSingleton(); } override public function hide():void{ fadeOut([_menu]); if (_logo != null){ Tweener.addTween(_logo, {scaleX:0.1, scaleY:0.1, time:0.5, transition:"easeoutbounce"}); }; } private function unlockTeams():void{ if (_saveGame == null){ _saveGame = new SaveGame("ilMareGames_XeeBee"); }; if (!_saveGame.isFirstTime()){ TeamUnlockerManager.getSingleton().unlockTeam(9, _parent); }; } override public function paint():void{ if (_hintText != null){ _hintText.text = _menu.hint; }; } protected function createTextField(_arg1:String, _arg2:Number=32, _arg3:Number=0xEEEEEE):TextField{ var _local4:TextField = new TextField(); var _local5:TextFormat = new TextFormat("abadi", _arg2); _local5.align = _arg1; _local5.color = _arg3; var _local6:GlowFilter = new GlowFilter(0, 1, 2, 2, 20, 10, false); _local4.selectable = false; _local4.embedFonts = true; _local4.defaultTextFormat = _local5; _local4.filters = [_local6]; return (_local4); } override public function show():void{ if (!MediaPlayer.getSingleton().isPlaying(MediaPlayer.SND_INTRO)){ MediaPlayer.getSingleton().play(MediaPlayer.SND_INTRO, true); }; fadeIn([_menu]); if (_logo != null){ Tweener.addTween(_logo, {scaleX:1, scaleY:1, time:0.5, transition:"easeoutbounce"}); }; } } }//package States
Section 228
//StateOptions (States.StateOptions) package States { import flash.display.*; import StateLib.*; import flash.text.*; public class StateOptions extends StateMenu { private var _tutorialOptions:Array; private var _currentTime:Number;// = 0 private var _showArrow:Boolean;// = true private var _timeDescText:TextField; private var _timeOptions:Array; private var _showTutorialText:TextField; private var _timeText:TextField; private var _showTutorial:Boolean;// = true private var _showArrowText:TextField; private static const OPTION_BACK:Number = 0; private static const OPTION_SHOW_TUTORIAL:Number = 3; private static const OPTION_SHOW_ARROW:Number = 4; private static const OPTION_LESS_TIME:Number = 1; private static const OPTION_MORE_TIME:Number = 2; public function StateOptions(){ _options = new Array({image:IMG.MENU_CHECKED, x:350, y:310, returnValue:OPTION_SHOW_TUTORIAL, hint:"Shows ingame instructions"}, {image:IMG.MENU_UNCHECKED, x:350, y:310, returnValue:OPTION_SHOW_TUTORIAL, hint:"Shows ingame instructions"}, {image:IMG.MENU_CHECKED, x:350, y:350, returnValue:OPTION_SHOW_ARROW, hint:"Shows an arrow that indicates the shoot direction"}, {image:IMG.MENU_UNCHECKED, x:350, y:350, returnValue:OPTION_SHOW_ARROW, hint:"Shows an arrow that indicates the shoot direction"}, {image:IMG.MENU_LESS, x:120, y:270, returnValue:OPTION_LESS_TIME, hint:"Decrease the match time"}, {image:IMG.MENU_MORE, x:280, y:270, returnValue:OPTION_MORE_TIME, hint:"Increase the match time"}, {image:IMG.MENU_BACK, x:200, y:395, returnValue:OPTION_BACK}); _timeOptions = new Array(1, 2, 5, 10, 20); _currentTime = OptionsManager.getSingleton().matchTimeIndex; _showTutorial = OptionsManager.getSingleton().showTutorial; _showArrow = OptionsManager.getSingleton().showArrow; } private function updateShowArrow():void{ OptionsManager.getSingleton().showArrow = _showArrow; if (_showArrow){ _menu.showItem(2); _menu.hideItem(3); } else { _menu.showItem(3); _menu.hideItem(2); }; } private function updateShowTutorial():void{ OptionsManager.getSingleton().showTutorial = _showTutorial; if (_showTutorial){ _menu.showItem(0); _menu.hideItem(1); } else { _menu.showItem(1); _menu.hideItem(0); }; } private function updateMatchTime():void{ if (_currentTime < 0){ _currentTime = (_timeOptions.length - 1); }; if (_currentTime >= _timeOptions.length){ _currentTime = 0; }; OptionsManager.getSingleton().matchTime = _timeOptions[_currentTime]; OptionsManager.getSingleton().matchTimeIndex = _currentTime; _timeText.text = (_timeOptions[_currentTime] + " min"); } override public function init(_arg1:Sprite):void{ super.init(_arg1); _timeDescText = createTextField("center"); _timeDescText.x = 120; _timeDescText.y = (230 - 20); _timeDescText.width = 160; _timeDescText.height = 40; _timeDescText.text = "Match Time"; _menu.addChild(_timeDescText); _timeText = createTextField("center"); _timeText.x = (120 + 20); _timeText.y = (270 - 20); _timeText.width = 120; _timeText.height = 40; _menu.addChild(_timeText); updateMatchTime(); _showTutorialText = createTextField("center"); _showTutorialText.x = (200 - (210 / 2)); _showTutorialText.y = (310 - 20); _showTutorialText.width = 210; _showTutorialText.height = 40; _showTutorialText.text = "Tutorial"; _menu.addChild(_showTutorialText); updateShowTutorial(); _showArrowText = createTextField("center"); _showArrowText.x = (200 - (210 / 2)); _showArrowText.y = (350 - 20); _showArrowText.width = 210; _showArrowText.height = 40; _showArrowText.text = "Shoot Direction"; _menu.addChild(_showArrowText); updateShowArrow(); } override public function update():int{ switch (_menu.update()){ case OPTION_LESS_TIME: _currentTime--; updateMatchTime(); break; case OPTION_MORE_TIME: _currentTime++; updateMatchTime(); break; case OPTION_SHOW_TUTORIAL: _showTutorial = !(_showTutorial); updateShowTutorial(); break; case OPTION_SHOW_ARROW: _showArrow = !(_showArrow); updateShowArrow(); break; case OPTION_BACK: return (State.PREVIOUS); }; return (State.CONTINUE); } } }//package States
Section 229
//StatePenalty (States.StatePenalty) package States { import flash.events.*; import flash.display.*; import flash.geom.*; import ShooterLib.Unit.*; import ShooterLib.Base.*; import StateLib.*; import SFXLib.*; import Tournament.*; import ShooterLib.AI.*; import GenericUILib.*; import caurina.transitions.*; public class StatePenalty extends StateGame { protected var _originalDelta:Number; protected var _redSquare:Sprite; protected var _shootTurn:Number;// = 0 protected static const DEFENDING_GOALKEEPER_X:Number = 0; protected static const DEFENDING_X:Number = 160; protected static const STATE_CHANGE_POSITIONS:Number = 12; protected static const STATE_ATTACKING:Number = 11; protected static const STATE_SHOOTING:Number = 13; protected static const ATTACKING_X:Number = 321; protected static const NULL_GOALKEEPER_X:Number = 5000; private static const PENALTY_COUNT:Number = 2; protected static const STATE_DEFENDING:Number = 10; public function StatePenalty(){ _originalDelta = DEF.ANGULAR_VELOCITY_DELTA; DEF.ANGULAR_VELOCITY_DELTA = 0.15; _activeControlsStates = [STATE_ATTACKING, STATE_DEFENDING, STATE_SHOOTING]; } override public function destroy():void{ super.destroy(); BaseSportAI.movingActive = true; DEF.ANGULAR_VELOCITY_DELTA = _originalDelta; } public function reallocatePlayers(_arg1:Boolean=true):void{ var _local2:Vector = new Vector(); var _local3:Boolean; var _local4:Vector = new Vector(); var _local5:Boolean; _ball.logic.releaseFromOrbit(0); _ball.logic.stop(); if ((_shootTurn % 2) == 0){ _leftGoalkeeper.x = (_leftGoalkeeper.logic.pos.x = DEFENDING_GOALKEEPER_X); _rightGoalkeeper.x = (_rightGoalkeeper.logic.pos.x = NULL_GOALKEEPER_X); _local2.setTo(DEFENDING_X, DEF.LEFT_PLAYER_Y); _local4.setTo(ATTACKING_X, DEF.RIGHT_PLAYER_Y); _local3 = BaseSportAI.commandToPoint(_leftPlayer, _local2, 5); _local5 = BaseSportAI.commandToPoint(_rightPlayer, _local4, 5); if (((((_local3) && (_local5))) || (_arg1))){ _leftPlayer.x = (_leftPlayer.logic.pos.x = DEFENDING_X); _leftPlayer.y = (_leftPlayer.logic.pos.y = DEF.LEFT_PLAYER_Y); _rightPlayer.x = (_rightPlayer.logic.pos.x = ATTACKING_X); _rightPlayer.y = (_rightPlayer.logic.pos.y = DEF.RIGHT_PLAYER_Y); if (MatchManager.getSingleton().leftAIControlled){ setState(STATE_ATTACKING); } else { setState(STATE_DEFENDING); }; }; } else { _leftGoalkeeper.x = (_leftGoalkeeper.logic.pos.x = NULL_GOALKEEPER_X); _rightGoalkeeper.x = (_rightGoalkeeper.logic.pos.x = DEFENDING_GOALKEEPER_X); _local2.setTo(ATTACKING_X, DEF.LEFT_PLAYER_Y); _local4.setTo(DEFENDING_X, DEF.RIGHT_PLAYER_Y); _local3 = BaseSportAI.commandToPoint(_leftPlayer, _local2, 5); _local5 = BaseSportAI.commandToPoint(_rightPlayer, _local4, 5); if (((((_local3) && (_local5))) || (_arg1))){ _leftPlayer.x = (_leftPlayer.logic.pos.x = ATTACKING_X); _leftPlayer.y = (_leftPlayer.logic.pos.y = DEF.LEFT_PLAYER_Y); _rightPlayer.x = (_rightPlayer.logic.pos.x = DEFENDING_X); _rightPlayer.y = (_rightPlayer.logic.pos.y = DEF.RIGHT_PLAYER_Y); if (MatchManager.getSingleton().leftAIControlled){ setState(STATE_DEFENDING); } else { setState(STATE_ATTACKING); }; }; }; } protected function get foePlayer():GravityBallSprite{ if (_leftPlayer == currentPlayer){ return (_rightPlayer); }; return (_leftPlayer); } override protected function initTeams():void{ var _local1:Object; _local1 = DifficultManager.instance.balancePlayer(_leftPlayerData, _rightPlayerData, MatchManager.getSingleton().leftAIControlled); _leftPlayer.init(DEFENDING_X, DEF.LEFT_PLAYER_Y, (_local1.mass * DEF.MASS_COEFF), (_local1.speed * DEF.SPEED_COEFF), 0.1, (_local1.shoot * DEF.ATTACK_COEFF), true); _leftGoalkeeper.init(DEFENDING_GOALKEEPER_X, DEF.LEFT_GOALKEEKER_Y, (_local1.goalkeeper * DEF.DEFENSE_COEFF), 0, 1, 0, false, false, true); _local1 = DifficultManager.instance.balancePlayer(_rightPlayerData, _leftPlayerData, MatchManager.getSingleton().rightAIControlled); _rightPlayer.init(ATTACKING_X, DEF.RIGHT_PLAYER_Y, (_local1.mass * DEF.MASS_COEFF), (_local1.speed * DEF.SPEED_COEFF), 0.1, (_local1.shoot * DEF.ATTACK_COEFF), true); _rightGoalkeeper.init(NULL_GOALKEEPER_X, DEF.RIGHT_GOALKEEPER_Y, (_local1.goalkeeper * DEF.DEFENSE_COEFF), 0, 1, 0, false, false, true); } override public function update():int{ var hasShoot:Boolean; var ready:Boolean; switch (_state){ case STATE_INIT_GAME: if (((_anyKeyPressed) || (_mouse1Pressed))){ setState(STATE_WAITING); Tweener.addTween(_frontCanvas, {time:0.5, alpha:0, onComplete:function ():void{ _frontCanvas.removeChild(_leftTeamName); _frontCanvas.removeChild(_rightTeamName); _frontCanvas.graphics.clear(); _frontCanvas.alpha = 1; SFX.getSingleton().showFadingMessage(_frontCanvas, IMG.getSingleton().getBitmapData(IMG.MESSAGE_PENALTIES), (DEF.MAP_WIDTH / 2), (DEF.MAP_HEIGHT / 2), 2, 0, reallocatePlayers); }}); }; break; case STATE_ATTACKING: updatePlayers(true); if (_mouse2Pressed){ setState(STATE_SHOOTING); }; break; case STATE_DEFENDING: updatePlayers(true); hasShoot = false; if (MatchManager.getSingleton().rightAIControlled){ hasShoot = _rightPlayerAI.hasShoot(); }; if (MatchManager.getSingleton().leftAIControlled){ hasShoot = _leftPlayerAI.hasShoot(); }; if (hasShoot){ setState(STATE_SHOOTING); }; break; case STATE_CHANGE_POSITIONS: trace("TURN:", _shootTurn, _leftScore, _rightScore); if (_shootTurn > (((PENALTY_COUNT - 1) * 2) + 1)){ trace("FINISHEADO"); if (((((_shootTurn % 2) == 1)) && (!((_leftScore == _rightScore))))){ _parent.y = 0; MatchManager.getSingleton().setMatchResults(_leftScore, _rightScore); _nextState = new StateMatchEnd(); return (State.NEXT_AND_DESTROY); }; }; reallocatePlayers(false); break; case STATE_GOAL: Tweener.addTween(particleRenderer, {time:2, alpha:0, onComplete:function (){ paperRain.stop(); setState(STATE_CHANGE_POSITIONS); }}); setState(STATE_WAITING); break; case STATE_SHOOTING: updatePlayers(true); _clock.update(); if (_clock.finished()){ setState(STATE_CHANGE_POSITIONS); }; break; }; return (super.update()); } override protected function ballCallback(_arg1:GravityBallLogic):void{ super.ballCallback(_arg1); if ((((_state == STATE_SHOOTING)) && ((((_arg1 == _leftPlayer.logic)) || ((_arg1 == _rightPlayer.logic)))))){ _clock.forceEnd(); }; } override public function setState(_arg1:Number):void{ trace("setState(", _arg1, ")"); if (_redSquare){ if (_arg1 == STATE_DEFENDING){ _redSquare.visible = true; } else { _redSquare.visible = false; }; }; switch (_arg1){ case STATE_ATTACKING: _leftPlayer.logic.stop(); _rightPlayer.logic.stop(); activateControls(currentPlayer); currentPlayer.logic.orbitChild = _ball.logic; _ball.logic.orbitAround(currentPlayer.logic, ((Math.random() > 0.5)) ? 1 : -1, false); BaseSportAI.movingActive = false; GravityBallLogic.collisionsActivated = true; break; case STATE_DEFENDING: _leftPlayer.logic.stop(); _rightPlayer.logic.stop(); activateControls(currentPlayer); foePlayer.logic.orbitChild = _ball.logic; _ball.logic.orbitAround(foePlayer.logic, ((Math.random() > 0.5)) ? 1 : -1, false); BaseSportAI.movingActive = false; GravityBallLogic.collisionsActivated = true; break; case STATE_GOAL: _menuButton.visible = false; _ball.logic.releaseFromOrbit(0); _ball.logic.stop(); MediaPlayer.getSingleton().play(MediaPlayer.SND_INGAME_GOAL); SFX.getSingleton().showFadingMessage(_frontCanvas, IMG.getSingleton().getBitmapData(IMG.MESSAGE_GOAL), (DEF.MAP_WIDTH / 2), (DEF.MAP_HEIGHT / 2), 2, 0); paperRain.start(); particleRenderer.alpha = 1; GravityBallLogic.collisionsActivated = false; _state = _arg1; return; case STATE_CHANGE_POSITIONS: _shootTurn++; GravityBallLogic.collisionsActivated = false; break; case STATE_SHOOTING: _clock.start(); BaseSportAI.movingActive = true; break; }; super.setState(_arg1); } override protected function createClock():void{ _clock = new CircularFilledClock(0, 3, 25, 0x222222, 1, 0xFF0000); _topPanel.addChild(_clock); _clock.x = (DEF.SCREEN_WIDTH / 2); _clock.y = 40; } override public function init(_arg1:Sprite):void{ super.init(_arg1); _leftPlayer.resetAffectors(); _rightPlayer.resetAffectors(); _leftPlayerAI = new BaseSportAI(_leftPlayer, _ball.logic, _leftGoalkeeper.logic, _rightGoalkeeper.logic, BaseSportAI.TYPE_TACTIC); _rightPlayerAI = new BaseSportAI(_rightPlayer, _ball.logic, _rightGoalkeeper.logic, _leftGoalkeeper.logic, BaseSportAI.TYPE_TACTIC); _redSquare = new Sprite(); _redSquare.graphics.lineStyle(2, 0xFF0000); _redSquare.graphics.beginFill(0xFF0000, 0.2); _redSquare.graphics.drawRect(5, 5, ((10 + DEFENDING_X) + 40), (DEF.MAP_HEIGHT - 10)); _redSquare.graphics.endFill(); _backgroundCanvas.addChildAt(_redSquare, 0); _redSquare.visible = false; } protected function updatePlayers(_arg1:Boolean=false):void{ reallocatePlayer(_rightPlayer.logic); reallocatePlayer(_leftPlayer.logic); if (!_ball.logic.orbiting){ reallocatePlayer(_ball.logic); }; if (DEF.MOUSE_CONTROL){ _left1Pressed = (_left2Pressed = false); _right1Pressed = (_right2Pressed = false); _up1Pressed = (_up2Pressed = false); _down1Pressed = (_down2Pressed = false); currentPlayer.logic.pos.x = currentPlayer.x; currentPlayer.logic.pos.y = currentPlayer.y; }; _ball.update(false, false, false, false, false, 0, 0); if (_arg1){ currentPlayer.update(_up1Pressed, _down1Pressed, _left1Pressed, _right1Pressed, _mouse1Pressed, 0, 0); if (MatchManager.getSingleton().rightAIControlled){ _rightPlayerAI.update(null, [_leftPlayer.logic]); }; if (MatchManager.getSingleton().leftAIControlled){ _leftPlayerAI.update(null, [_rightPlayer.logic]); }; }; } override protected function onPlayerMouseOver(_arg1:MouseEvent):void{ var _local2:GravityBallSprite = (_arg1.target as GravityBallSprite); if (_state == STATE_ATTACKING){ _local2.startDrag(true, new Rectangle(ATTACKING_X, (DEF.MAP_HEIGHT / 2), 1, 1)); }; if (_state == STATE_DEFENDING){ _local2.startDrag(true, new Rectangle(20, 20, (20 + DEFENDING_X), (DEF.MAP_HEIGHT - 40))); }; if (_state == STATE_SHOOTING){ _local2.startDrag(true, new Rectangle(30, 20, (DEF.MAP_WIDTH - 60), (DEF.MAP_HEIGHT - 40))); }; _local2.filters = []; } } }//package States
Section 230
//StatePlayground (States.StatePlayground) package States { import flash.events.*; import flash.display.*; import flash.geom.*; import ShooterLib.Unit.*; import ShooterLib.Base.*; import StateLib.*; import SFXLib.*; import GenericUILib.*; import ShooterLib.Shootable.*; import flash.ui.*; public class StatePlayground extends State { private var _backgroundCanvas:Sprite; private var _playerIndicatorDelta:Number;// = 1 private var _topPanel:Sprite; private var _areaRight:GravityBallSprite; private var _down2Pressed:Boolean;// = false private var _areaLeft:GravityBallSprite; private var _left1Pressed:Boolean;// = false private var _frontCanvas:Sprite; private var _menuButton:GenericButton; private var _right2Pressed:Boolean;// = false private var _down1Pressed:Boolean;// = false private var _mouse2Pressed:Boolean;// = false private var _deltaRadial:Number;// = 0 private var _blurCanvas:Sprite; private var _rightGoalkeeper:GravityBallSprite; private var _boundingBox:Rectangle; private var _up2Pressed:Boolean;// = false private var _leftGoalkeeper:GravityBallSprite; private var _anyKeyPressed:Boolean;// = false private var _right1Pressed:Boolean;// = false private var _mouse1Pressed:Boolean;// = false private var _arrowHelper:Sprite; private var _ball:GravityBallSprite; private var _obstacleCanvas:Sprite; private var _leftPlayer:GravityBallSprite; private var _up1Pressed:Boolean;// = false private var _playerIndicator:Sprite; private var _tutorialCanvas:Sprite; private var _left2Pressed:Boolean;// = false protected function removeTutorialCanvas():void{ if (_tutorialCanvas != null){ _backgroundCanvas.removeChild(_tutorialCanvas); }; _tutorialCanvas = null; } protected function ballCallback(_arg1:GravityBallLogic):void{ var _local2:Number; var _local3:Vector; var _local4:Vector; MediaPlayer.getSingleton().play(MediaPlayer.SND_INGAME_SHOCK); if (_arg1 == _leftGoalkeeper.logic){ SFX.getSingleton().showFadingMessage(_frontCanvas, IMG.getSingleton().getBitmapData(IMG.MESSAGE_GOAL), (DEF.MAP_WIDTH / 2), -40, 2, 0); return; }; if (_arg1 == _rightGoalkeeper.logic){ SFX.getSingleton().showFadingMessage(_frontCanvas, IMG.getSingleton().getBitmapData(IMG.MESSAGE_GOAL), (DEF.MAP_WIDTH / 2), -40, 2, 0); return; }; if (_arg1 == _leftPlayer.logic){ _local3 = Vector.UNITY_X.minus(_leftPlayer.pos).normalize(); _local4 = _ball.pos.minus(_leftPlayer.pos).normalize(); _ball.logic.orbitAround(_leftPlayer.logic, ((_local3.cross(_local4) > 0)) ? 1 : -1); return; }; } override public function keyDown(_arg1:KeyboardEvent):void{ super.keyDown(_arg1); _anyKeyPressed = true; switch (_arg1.keyCode){ case Keyboard.UP: case 87: _up1Pressed = (_up2Pressed = true); break; case Keyboard.DOWN: case 83: _down1Pressed = (_down2Pressed = true); break; case Keyboard.LEFT: case 65: _left1Pressed = (_left2Pressed = true); break; case Keyboard.RIGHT: case 68: _right1Pressed = (_right2Pressed = true); break; case Keyboard.SPACE: case Keyboard.ENTER: _mouse1Pressed = (_mouse2Pressed = true); break; }; } private function leftPlayerCallback(_arg1:GravityBallLogic):void{ } override public function init(_arg1:Sprite):void{ var _local8:Matrix; var _local9:BitmapData; super.init(_arg1); MediaPlayer.getSingleton().stop(MediaPlayer.SND_INTRO); _parent.y = (DEF.SCREEN_HEIGHT - DEF.MAP_HEIGHT); _backgroundCanvas = new Sprite(); _backgroundCanvas.graphics.beginBitmapFill(IMG.getSingleton().getBitmapData(IMG.BACKGROUND_PLAYGROUND)); _backgroundCanvas.graphics.drawRect(0, 0, DEF.MAP_WIDTH, DEF.MAP_HEIGHT); _backgroundCanvas.graphics.endFill(); if (OptionsManager.getSingleton().showTutorial){ _tutorialCanvas = new Sprite(); _backgroundCanvas.addChild(_tutorialCanvas); _local9 = IMG.getSingleton().getBitmapData(IMG.TUTORIAL_KEYS); _local8 = new Matrix(); _local8.translate(((DEF.MAP_WIDTH / 2) - (_local9.width / 2)), ((DEF.MAP_HEIGHT / 2) - (_local9.height / 2))); _tutorialCanvas.graphics.beginBitmapFill(_local9, _local8); _tutorialCanvas.graphics.drawRect(((DEF.MAP_WIDTH / 2) - (_local9.width / 2)), ((DEF.MAP_HEIGHT / 2) - (_local9.height / 2)), _local9.width, _local9.height); }; _parent.addChild(_backgroundCanvas); _obstacleCanvas = new Sprite(); _parent.addChild(_obstacleCanvas); _frontCanvas = new Sprite(); _parent.addChild(_frontCanvas); _blurCanvas = new Sprite(); _parent.addChild(_blurCanvas); _leftPlayer = new GravityBallSprite(IMG.getSingleton().getBitmapData(IMG.TEAM0_ATTACKER)); _leftGoalkeeper = new GravityBallSprite(IMG.getSingleton().getBitmapData(IMG.TEAM0_GOALKEEPER)); _rightGoalkeeper = new GravityBallSprite(IMG.getSingleton().getBitmapData(IMG.TEAM0_GOALKEEPER)); var _local2:Number = 5; var _local3:Number = 5; var _local4:Number = 5; var _local5:Number = 5; _leftPlayer.init(DEF.LEFT_PLAYER_ADV_X, DEF.LEFT_PLAYER_Y, (_local3 * DEF.MASS_COEFF), (_local2 * DEF.SPEED_COEFF), 0.1, (_local5 * DEF.ATTACK_COEFF), true); _leftGoalkeeper.init(DEF.LEFT_GOALKEEPER_X, DEF.LEFT_GOALKEEKER_Y, (_local4 * DEF.DEFENSE_COEFF), 0, 1, 0, false, false, true); _rightGoalkeeper.init(DEF.RIGHT_GOALKEEPER_X, DEF.LEFT_GOALKEEKER_Y, (_local4 * DEF.DEFENSE_COEFF), 0, 1, 0, false, false, true); _arrowHelper = new Sprite(); _local9 = IMG.getSingleton().getBitmapData(IMG.ARROW_HELPER); _local8 = new Matrix(); _local8.translate(0, (-(_local9.height) / 2)); _arrowHelper.graphics.beginBitmapFill(_local9, _local8); _arrowHelper.graphics.drawRect(0, (-(_local9.height) / 2), _local9.width, _local9.height); _arrowHelper.graphics.endFill(); _arrowHelper.x = DEF.BALL_X; _arrowHelper.x = DEF.BALL_Y; _backgroundCanvas.addChild(_arrowHelper); _backgroundCanvas.addChild(_leftPlayer); _backgroundCanvas.addChild(_leftGoalkeeper); _backgroundCanvas.addChild(_rightGoalkeeper); _ball = new GravityBallSprite(IMG.getSingleton().getBitmapData(IMG.BALL)); _ball.init(DEF.BALL_X, DEF.BALL_Y, 500, 100, 0.01, 0, false, true); _ball.autoRotate = true; _backgroundCanvas.addChild(_ball); _areaLeft = new GravityBallSprite(IMG.getSingleton().getBitmapData(IMG.AREA)); _areaLeft.init(DEF.LEFT_GOALKEEPER_X, DEF.LEFT_GOALKEEKER_Y, 1, 0, 0, 0, false, false, true); _backgroundCanvas.addChild(_areaLeft); _areaRight = new GravityBallSprite(IMG.getSingleton().getBitmapData(IMG.AREA)); _areaRight.init(DEF.RIGHT_GOALKEEPER_X, DEF.RIGHT_GOALKEEPER_Y, 1, 0, 0, 0, false, false, true); _backgroundCanvas.addChild(_areaRight); _ball.addAffector(_leftGoalkeeper); _ball.addAffector(_rightGoalkeeper); _ball.addAffector(_leftPlayer); _leftPlayer.addAffector(_ball); _ball.addBallCollider(_leftPlayer); _ball.addBallCollider(_leftGoalkeeper); _ball.addBallCollider(_rightGoalkeeper); _leftPlayer.addBallCollider(_ball); _leftPlayer.addBallCollider(_leftGoalkeeper); _leftPlayer.addBallCollider(_rightGoalkeeper); _leftPlayer.addBallCollider(_areaLeft); _leftPlayer.addBallCollider(_areaRight); _ball.collisionCallback = ballCallback; _leftPlayer.collisionCallback = leftPlayerCallback; _boundingBox = new Rectangle(0, 0, DEF.MAP_WIDTH, DEF.MAP_HEIGHT); Mobile.setBoundingBox(_boundingBox); var _local6:Number = 100; var _local7:Number = -90; FixedObjects.init(_obstacleCanvas); FixedObjects.add(new Rectangle(0, _local7, DEF.MAP_WIDTH, _local6)); FixedObjects.add(new Rectangle(0, (DEF.MAP_HEIGHT - (_local7 + _local6)), DEF.MAP_WIDTH, _local6)); FixedObjects.add(new Rectangle(_local7, 0, _local6, DEF.MAP_HEIGHT)); FixedObjects.add(new Rectangle((DEF.MAP_WIDTH - (_local7 + _local6)), 0, _local6, DEF.MAP_HEIGHT)); _playerIndicator = new Sprite(); _local8 = new Matrix(); _local9 = IMG.getSingleton().getBitmapData(IMG.PLAYER_INDICATOR); _local8.translate((-(_local9.width) / 2), (-(_local9.height) / 2)); _playerIndicator.graphics.beginBitmapFill(_local9, _local8); _playerIndicator.graphics.drawRect((-(_local9.width) / 2), (-(_local9.height) / 2), _local9.width, _local9.height); _playerIndicator.y = -30; _leftPlayer.addChild(_playerIndicator); var _local10:BitmapData = IMG.getSingleton().getBitmapData(IMG.TOP_PANEL_PLAYGROUND); _topPanel = new Sprite(); _topPanel.graphics.beginBitmapFill(_local10); _topPanel.graphics.drawRect(0, 0, DEF.SCREEN_WIDTH, _local10.height); _topPanel.graphics.endFill(); _topPanel.x = 0; _topPanel.y = -(_local10.height); _backgroundCanvas.addChild(_topPanel); _menuButton = new GenericButton(IMG.getSingleton().getBitmapData(IMG.EXIT_PANEL_BUTTON), IMG.getSingleton().getBitmapData(IMG.EXIT_PANEL_BUTTON), true); _menuButton.x = 40; _menuButton.y = 40; _menuButton.visible = true; _topPanel.addChild(_menuButton); GravityBallLogic.collisionsActivated = true; } override public function update():int{ if (_menuButton.isPressed){ _parent.y = 0; return (State.PREVIOUS); }; reallocatePlayer(_leftPlayer.logic); if (!_ball.logic.orbiting){ reallocatePlayer(_ball.logic); }; _ball.update(false, false, false, false, false, 0, 0); _leftPlayer.update(_up1Pressed, _down1Pressed, _left1Pressed, _right1Pressed, _mouse1Pressed, 0, 0); return (State.CONTINUE); } override public function mouseUp(_arg1:MouseEvent):void{ super.mouseUp(_arg1); _mouse1Pressed = (_mouse2Pressed = false); } override public function hide():void{ fadeOut([_backgroundCanvas, _frontCanvas, _obstacleCanvas, _blurCanvas]); } override public function keyUp(_arg1:KeyboardEvent):void{ super.keyUp(_arg1); _anyKeyPressed = false; switch (_arg1.keyCode){ case Keyboard.UP: case 87: _up1Pressed = (_up2Pressed = false); break; case Keyboard.DOWN: case 83: _down1Pressed = (_down2Pressed = false); break; case Keyboard.LEFT: case 65: _left1Pressed = (_left2Pressed = false); break; case Keyboard.RIGHT: case 68: _right1Pressed = (_right2Pressed = false); break; case Keyboard.SPACE: case Keyboard.ENTER: _mouse1Pressed = (_mouse2Pressed = false); break; }; } override public function paint():void{ _playerIndicatorDelta = (_playerIndicatorDelta + 0.5); _playerIndicator.y = (-26 + (Math.sin(_playerIndicatorDelta) * 2)); _playerIndicator.scaleX = (0.5 + (Math.cos(_playerIndicatorDelta) * 0.5)); if (OptionsManager.getSingleton().showArrow){ if (((_ball.logic.orbiting) && ((_ball.logic.orbitParent == _leftPlayer.logic)))){ _arrowHelper.visible = true; _arrowHelper.x = _ball.x; _arrowHelper.y = _ball.y; _arrowHelper.scaleX = (_ball.logic.launchMagnitude / 20); _arrowHelper.rotation = _ball.logic.launchAngle; } else { _arrowHelper.visible = false; }; }; _leftGoalkeeper.paint(); _rightGoalkeeper.paint(); _ball.paint(); _deltaRadial = (_deltaRadial + 0.5); SFX.getSingleton().radialGradient(_leftGoalkeeper, 5, 3, _deltaRadial, 0xFFFFFF); SFX.getSingleton().radialGradient(_rightGoalkeeper, 5, 3, _deltaRadial, 0xFFFFFF); } override public function mouseDown(_arg1:MouseEvent):void{ super.mouseDown(_arg1); _mouse1Pressed = (_mouse2Pressed = true); } private function reallocatePlayer(_arg1:GravityBallLogic):void{ var _local2:Vector = _arg1.pos; var _local3:Number = _arg1.radius; var _local4:Number = 10; if ((_local2.x + _local3) > (_boundingBox.right - _local4)){ _local2.x = ((_boundingBox.right - _local4) - _local3); }; if ((_local2.x - _local3) < (_boundingBox.left + _local4)){ _local2.x = ((_boundingBox.left + _local4) + _local3); }; if ((_local2.y + _local3) > (_boundingBox.bottom - _local4)){ _local2.y = ((_boundingBox.bottom - _local4) - _local3); }; if ((_local2.y - _local3) < (_boundingBox.top + _local4)){ _local2.y = ((_boundingBox.top + _local4) + _local3); }; } override public function destroy():void{ fadeOutAndRemove([_backgroundCanvas, _frontCanvas, _obstacleCanvas, _blurCanvas]); MediaPlayer.getSingleton().stop(MediaPlayer.SND_INGAME1, MediaPlayer.SND_INGAME5); } override public function show():void{ fadeIn([_backgroundCanvas, _frontCanvas, _obstacleCanvas, _blurCanvas]); MediaPlayer.getSingleton().loopBetween(MediaPlayer.SND_INGAME1, MediaPlayer.SND_INGAME5); } } }//package States
Section 231
//StateQuickMatchMenu (States.StateQuickMatchMenu) package States { import StateLib.*; import Tournament.*; public class StateQuickMatchMenu extends StateMenu { private static const OPTION_BACK:Number = 3; private static const OPTION_1P_2P:Number = 1; private static const OPTION_COM_COM:Number = 2; private static const OPTION_1P_COM:Number = 0; public function StateQuickMatchMenu(){ _options = new Array({image:IMG.MENU_1P_VS_COM, x:200, y:230, returnValue:OPTION_1P_COM, hint:"Play against the computer"}, {image:IMG.MENU_BACK, x:200, y:390, returnValue:OPTION_BACK}); } override public function update():int{ var _local1:Boolean; switch (_menu.update()){ case OPTION_1P_COM: MatchManager.getSingleton().setType(MatchManager.TYPE_QUICK_MATCH_1P_COM); _local1 = true; break; case OPTION_1P_2P: MatchManager.getSingleton().setType(MatchManager.TYPE_QUICK_MATCH_1P_2P); _local1 = true; break; case OPTION_COM_COM: MatchManager.getSingleton().setType(MatchManager.TYPE_QUICK_MATCH_COM_COM); _local1 = true; break; case OPTION_BACK: return (State.PREVIOUS); }; if (_local1){ _nextState = new StateSelectTeam(); return (State.NEXT); }; return (State.CONTINUE); } } }//package States
Section 232
//StateScheduleInfo (States.StateScheduleInfo) package States { import flash.events.*; import flash.display.*; import StateLib.*; import flash.text.*; import Teams.*; import SFXLib.*; import Tournament.*; import GenericUILib.*; import caurina.transitions.*; import flash.filters.*; public class StateScheduleInfo extends State { protected var _weekDesc:TextField; protected var _lastWeek:GenericButton; protected var _lastGroup:GenericButton; protected var _background:Sprite; protected var _currentWeek:Number; protected var _nextGroup:GenericButton; protected var _backButton:GenericButton; protected var _skip:Boolean;// = false protected var _frontCanvas:Sprite; protected var _nextButton:GenericButton; protected var _currentGroup:Number; protected var _nextWeek:GenericButton; protected var _resultsDesc:TextField; protected var _font:BitmapFont; protected var _optionsButton:GenericButton; protected var _highlight:Sprite; public static const STANDINGS_X:Number = 320; public static const STANDINGS_Y:Number = 360; public static const POSITIONS_X:Number = 90; public static const POSITIONS_Y:Number = 182; private static const DELTA_Y:Number = 50; protected function touchPanelOver(_arg1:MouseEvent):void{ _resultsDesc.text = (_arg1.target.name as String); _highlight.y = (_arg1.target.y as Number); Tweener.addTween(_highlight, {time:1, x:_arg1.target.x}); _highlight.visible = true; } override public function hide():void{ fadeOut([_background]); } override public function init(_arg1:Sprite):void{ var _local8:Sprite; super.init(_arg1); _parent = _arg1; _currentGroup = MatchManager.getSingleton().playerGroup; _background = new Sprite(); _background.graphics.beginBitmapFill(IMG.getSingleton().getBitmapData(IMG.SEASON_RESULTS)); _background.graphics.drawRect(0, 0, DEF.SCREEN_WIDTH, DEF.SCREEN_HEIGHT); _background.graphics.endFill(); _parent.addChild(_background); _frontCanvas = new Sprite(); _background.addChild(_frontCanvas); _font = new BitmapFont(IMG.getSingleton().getBitmapData(IMG.LCD_FONT_SMALL), 13, 20, [97, 65, 32]); var _local2:TextFormat = new TextFormat("abadi", 32); _local2.align = "center"; _local2.color = 0xEEEEEE; var _local3:GlowFilter = new GlowFilter(0, 1, 2, 2, 2, 1, false); _resultsDesc = new TextField(); _resultsDesc.selectable = false; _resultsDesc.x = ((DEF.SCREEN_WIDTH / 2) - (375 / 2)); _resultsDesc.y = 111; _resultsDesc.width = 375; _resultsDesc.height = 30; _resultsDesc.alpha = 0.8; _resultsDesc.embedFonts = true; _resultsDesc.defaultTextFormat = _local2; _resultsDesc.filters = [_local3]; _resultsDesc.text = ("STANDINGS - GROUP " + MatchManager.GROUPS_STRINGS[_currentGroup]); _background.addChild(_resultsDesc); var _local4:Sprite = new Sprite(); var _local5:BitmapData = IMG.getSingleton().getBitmapData(IMG.TEAM_NAME_REFLECTION); _local4.graphics.beginBitmapFill(_local5); _local4.graphics.drawRect(0, 0, _local5.width, _local5.height); _local4.graphics.endFill(); _local4.x = ((DEF.SCREEN_WIDTH / 2) - (_local5.width / 2)); _local4.y = 106; _background.addChild(_local4); _weekDesc = new TextField(); _weekDesc.selectable = false; _weekDesc.x = ((DEF.SCREEN_WIDTH / 2) - (375 / 2)); _weekDesc.y = 311; _weekDesc.width = 375; _weekDesc.height = 30; _weekDesc.alpha = 0.8; _weekDesc.embedFonts = true; _weekDesc.defaultTextFormat = _local2; _weekDesc.filters = [_local3]; _background.addChild(_weekDesc); _local4 = new Sprite(); _local5 = IMG.getSingleton().getBitmapData(IMG.TEAM_NAME_REFLECTION); _local4.graphics.beginBitmapFill(_local5); _local4.graphics.drawRect(0, 0, _local5.width, _local5.height); _local4.graphics.endFill(); _local4.x = ((DEF.SCREEN_WIDTH / 2) - (_local5.width / 2)); _local4.y = 307; _background.addChild(_local4); paintStandings(_currentGroup); var _local6:SeasonWeekInfo = MatchManager.getSingleton().weekSchedule(); paintResults(_local6); _nextWeek = new GenericButton(IMG.getSingleton().getBitmapData(IMG.BUTTON_RIGHT_ARROW), IMG.getSingleton().getBitmapData(IMG.BUTTON_RIGHT_ARROW), true); _nextWeek.x = 536; _nextWeek.y = 330; _background.addChild(_nextWeek); _lastWeek = new GenericButton(IMG.getSingleton().getBitmapData(IMG.BUTTON_LEFT_ARROW), IMG.getSingleton().getBitmapData(IMG.BUTTON_LEFT_ARROW), true); _lastWeek.x = 103; _lastWeek.y = 330; _background.addChild(_lastWeek); _nextGroup = new GenericButton(IMG.getSingleton().getBitmapData(IMG.BUTTON_RIGHT_ARROW), IMG.getSingleton().getBitmapData(IMG.BUTTON_RIGHT_ARROW), true); _nextGroup.x = _nextWeek.x; _nextGroup.y = 129; _background.addChild(_nextGroup); _lastGroup = new GenericButton(IMG.getSingleton().getBitmapData(IMG.BUTTON_LEFT_ARROW), IMG.getSingleton().getBitmapData(IMG.BUTTON_LEFT_ARROW), true); _lastGroup.x = _lastWeek.x; _lastGroup.y = 129; _background.addChild(_lastGroup); _nextButton = new GenericButton(IMG.getSingleton().getBitmapData(IMG.BUTTON_NEXT), IMG.getSingleton().getBitmapData(IMG.BUTTON_NEXT), true); _nextButton.x = DEF.BUTTON_NEXT_X; _nextButton.y = (DEF.BUTTON_NEXT_Y + DELTA_Y); _background.addChild(_nextButton); _backButton = new GenericButton(IMG.getSingleton().getBitmapData(IMG.BUTTON_BACK), IMG.getSingleton().getBitmapData(IMG.BUTTON_BACK), true); _backButton.x = DEF.BUTTON_BACK_X; _backButton.y = (DEF.BUTTON_BACK_Y + DELTA_Y); _background.addChild(_backButton); _optionsButton = new GenericButton(IMG.getSingleton().getBitmapData(IMG.OPTIONS_PANEL_BUTTON), IMG.getSingleton().getBitmapData(IMG.OPTIONS_PANEL_BUTTON), true); _optionsButton.x = (DEF.SCREEN_WIDTH / 2); _optionsButton.y = (DEF.BUTTON_NEXT_Y + DELTA_Y); _background.addChild(_optionsButton); _currentWeek = MatchManager.getSingleton().currentWeek; _weekDesc.text = ("RESULTS - WEEK " + _currentWeek); _highlight = new Sprite(); _highlight.graphics.lineStyle(2, 15658751, 0.5); _highlight.graphics.beginFill(15663086, 0.1); _highlight.graphics.drawRoundRect(0, 0, 42, 120, 10, 10); _highlight.graphics.endFill(); _highlight.graphics.lineStyle(); _highlight.visible = false; _frontCanvas.addChild(_highlight); var _local7:Array = new Array("MATCHES PLAYED ", "MATCHES WON", "MATCHES DRAW", "MATCHES LOST", "GOALS FAVOUR", "GOALS AGAINST", "GOALS DIFFERENCE", "POINTS"); var _local9:Number = 0; while (_local9 < _local7.length) { _local8 = new Sprite(); _local8.graphics.beginFill(0xFFFFFF, 0); _local8.graphics.drawRect(0, 0, 42, 120); _local8.graphics.endFill(); _local8.name = _local7[_local9]; _local8.x = (250 + (42 * _local9)); _local8.y = 152; _frontCanvas.addChild(_local8); _local8.addEventListener(MouseEvent.MOUSE_OVER, touchPanelOver, false, 0, true); _local8.addEventListener(MouseEvent.MOUSE_OUT, touchPanelOut, false, 0, true); _local9++; }; MatchManager.getSingleton().save(); } public function unlockTeams():void{ if (MatchManager.getSingleton().currentPlayerGoalsDifference >= 10){ TeamUnlockerManager.getSingleton().unlockTeam(5, _parent); }; } override public function update():int{ unlockTeams(); if (_optionsButton.isPressed){ _nextState = new StateOptions(); return (State.NEXT); }; if (_nextWeek.isPressed){ _currentWeek++; if (_currentWeek >= MatchManager.getSingleton().weekCount){ _currentWeek = 0; }; _frontCanvas.graphics.clear(); paintStandings(_currentGroup); paintResults(MatchManager.getSingleton().seasonScheduleForGroupAndWeek(_currentGroup, _currentWeek)); }; if (_lastWeek.isPressed){ _currentWeek--; if (_currentWeek < 0){ _currentWeek = (MatchManager.getSingleton().weekCount - 1); }; _frontCanvas.graphics.clear(); paintStandings(_currentGroup); paintResults(MatchManager.getSingleton().seasonScheduleForGroupAndWeek(_currentGroup, _currentWeek)); }; if (_lastGroup.isPressed){ _currentGroup--; if (_currentGroup < 0){ _currentGroup = (MatchManager.getSingleton().groupCount - 1); }; trace(_currentGroup); _frontCanvas.graphics.clear(); paintStandings(_currentGroup); paintResults(MatchManager.getSingleton().seasonScheduleForGroupAndWeek(_currentGroup, _currentWeek)); }; if (_nextGroup.isPressed){ _currentGroup++; if (_currentGroup >= MatchManager.getSingleton().groupCount){ _currentGroup = 0; }; trace(_currentGroup); _frontCanvas.graphics.clear(); paintStandings(_currentGroup); paintResults(MatchManager.getSingleton().seasonScheduleForGroupAndWeek(_currentGroup, _currentWeek)); }; if (((_nextButton.isPressed) || (_skip))){ if (DEF.SKIP_SEASON_MATCHES){ _skip = false; MatchManager.getSingleton().setupNextMatch(); MatchManager.getSingleton().setMatchResults((MatchManager.getSingleton().leftAIControlled) ? 0 : 2, (MatchManager.getSingleton().rightAIControlled) ? 0 : 2); _nextState = new StateMatchEnd(); return (State.NEXT_AND_DESTROY); } else { _skip = false; MatchManager.getSingleton().setupNextMatch(); _nextState = new StateGame(); return (State.NEXT_AND_DESTROY); }; }; if (_backButton.isPressed){ if ((((MatchManager.getSingleton().getType() == MatchManager.TYPE_SEASON)) || ((MatchManager.getSingleton().getType() == MatchManager.TYPE_TOURNAMENT)))){ _nextState = new StateMenu(); return (State.NEXT_AND_DESTROY); }; return (State.PREVIOUS); }; return (State.CONTINUE); } protected function touchPanelOut(_arg1:MouseEvent):void{ _resultsDesc.text = ("STANDINGS - GROUP " + MatchManager.GROUPS_STRINGS[_currentGroup]); _highlight.visible = false; } protected function paintStandings(_arg1:Number):void{ var _local8:Object; var _local9:SeasonTeamInfo; _resultsDesc.text = ("STANDINGS - GROUP " + MatchManager.GROUPS_STRINGS[_currentGroup]); var _local2:Number = -1; var _local3:Number = POSITIONS_Y; var _local4:Number = 22; var _local5:Number = POSITIONS_X; var _local6:Number = (POSITIONS_X + 200); var _local7:Number = 42; _local2 = -1; _frontCanvas.graphics.beginFill(0x2E2E2E, 0.5); _frontCanvas.graphics.drawRoundRect((POSITIONS_X - 37), ((_local3 + ((_local2 - 0) * _local4)) - 3), ((_local7 * 7) + 239), _local4, 10, 10); _frontCanvas.graphics.endFill(); _font.paintText("NAME", _frontCanvas, _local5, ((_local3 + (_local2 * _local4)) - 2), BitmapFont.ALIGN_LEFT); _font.paintText("P", _frontCanvas, (_local6 + (_local7 * 0)), ((_local3 + (_local2 * _local4)) - 2), BitmapFont.ALIGN_RIGHT); _font.paintText("W", _frontCanvas, (_local6 + (_local7 * 1)), ((_local3 + (_local2 * _local4)) - 2), BitmapFont.ALIGN_RIGHT); _font.paintText("D", _frontCanvas, (_local6 + (_local7 * 2)), ((_local3 + (_local2 * _local4)) - 2), BitmapFont.ALIGN_RIGHT); _font.paintText("L", _frontCanvas, (_local6 + (_local7 * 3)), ((_local3 + (_local2 * _local4)) - 2), BitmapFont.ALIGN_RIGHT); _font.paintText("F", _frontCanvas, (_local6 + (_local7 * 4)), ((_local3 + (_local2 * _local4)) - 2), BitmapFont.ALIGN_RIGHT); _font.paintText("A", _frontCanvas, (_local6 + (_local7 * 5)), ((_local3 + (_local2 * _local4)) - 2), BitmapFont.ALIGN_RIGHT); _font.paintText("GD", _frontCanvas, (_local6 + (_local7 * 6)), ((_local3 + (_local2 * _local4)) - 2), BitmapFont.ALIGN_RIGHT); _font.paintText("PTS", _frontCanvas, (_local6 + (_local7 * 7)), ((_local3 + (_local2 * _local4)) - 2), BitmapFont.ALIGN_RIGHT); _local2 = 0; for each (_local9 in MatchManager.getSingleton().seasonDataForGroup(_arg1)) { if (_local9.isPlayer){ _frontCanvas.graphics.beginFill(0xFF0000, 0.5); _frontCanvas.graphics.drawRoundRect((POSITIONS_X - 37), ((_local3 + ((_local2 - 0) * _local4)) - 3), ((_local7 * 7) + 239), _local4, 10, 10); _frontCanvas.graphics.endFill(); _local8 = _local9.teamDesc; } else { if ((_local2 % 2) == 0){ _frontCanvas.graphics.beginFill(2635851, 0.5); } else { _frontCanvas.graphics.beginFill(271434, 0.5); }; _frontCanvas.graphics.drawRoundRect((POSITIONS_X - 37), ((_local3 + ((_local2 - 0) * _local4)) - 3), ((_local7 * 7) + 239), _local4, 10, 10); _frontCanvas.graphics.endFill(); }; _font.paintText(String((_local2 + 1)), _frontCanvas, (_local5 - 10), (_local3 + (_local2 * _local4)), BitmapFont.ALIGN_RIGHT); _font.paintText(_local9.teamName.toUpperCase(), _frontCanvas, _local5, (_local3 + (_local2 * _local4)), BitmapFont.ALIGN_LEFT); _font.paintText(String(_local9.matchesPlayed), _frontCanvas, (_local6 + (_local7 * 0)), (_local3 + (_local2 * _local4)), BitmapFont.ALIGN_RIGHT); _font.paintText(String(_local9.matchesWon), _frontCanvas, (_local6 + (_local7 * 1)), (_local3 + (_local2 * _local4)), BitmapFont.ALIGN_RIGHT); _font.paintText(String(_local9.matchesDraw), _frontCanvas, (_local6 + (_local7 * 2)), (_local3 + (_local2 * _local4)), BitmapFont.ALIGN_RIGHT); _font.paintText(String(_local9.matchesLost), _frontCanvas, (_local6 + (_local7 * 3)), (_local3 + (_local2 * _local4)), BitmapFont.ALIGN_RIGHT); _font.paintText(String(_local9.goalsFavor), _frontCanvas, (_local6 + (_local7 * 4)), (_local3 + (_local2 * _local4)), BitmapFont.ALIGN_RIGHT); _font.paintText(String(_local9.goalsAgainst), _frontCanvas, (_local6 + (_local7 * 5)), (_local3 + (_local2 * _local4)), BitmapFont.ALIGN_RIGHT); _font.paintText(String(_local9.goalsDifference), _frontCanvas, (_local6 + (_local7 * 6)), (_local3 + (_local2 * _local4)), BitmapFont.ALIGN_RIGHT); _font.paintText(String(_local9.points), _frontCanvas, (_local6 + (_local7 * 7)), (_local3 + (_local2 * _local4)), BitmapFont.ALIGN_RIGHT); if (_local2 == 0){ _frontCanvas.graphics.lineStyle(2, 16446126, 0.7); } else { _frontCanvas.graphics.lineStyle(1, 16446126, 0.7); }; _frontCanvas.graphics.moveTo((POSITIONS_X - 35), ((_local3 + (_local2 * _local4)) - 3)); _frontCanvas.graphics.lineTo((_local6 + (_local7 * 7)), ((_local3 + (_local2 * _local4)) - 3)); _frontCanvas.graphics.lineStyle(); _local2++; }; _frontCanvas.graphics.lineStyle(1, 16446126, 0.7); _frontCanvas.graphics.moveTo(((_local6 + (_local7 * 6)) + 2), ((_local3 + (0 * _local4)) - 3)); _frontCanvas.graphics.lineTo(((_local6 + (_local7 * 6)) + 2), ((_local3 + (4 * _local4)) - 3)); _frontCanvas.graphics.lineStyle(); _frontCanvas.graphics.moveTo(0, 0); } override public function keyDown(_arg1:KeyboardEvent):void{ _skip = true; } override public function destroy():void{ fadeOutAndRemove([_background]); _background = null; } override public function show():void{ fadeIn([_background]); } protected function paintResults(_arg1:SeasonWeekInfo):void{ var _local5:Match; var _local2:Number = -1; var _local3:Number = 22; var _local4:Number = 30; _local2 = 0; for each (_local5 in _arg1.matches) { if (((_local5.team1.isPlayer) || (_local5.team2.isPlayer))){ _frontCanvas.graphics.beginFill(0xFF0000, 0.5); _frontCanvas.graphics.drawRoundRect((STANDINGS_X - (18 * 13)), ((STANDINGS_Y + (_local2 * _local3)) - 3), ((18 * 13) * 2), _local3, 10, 10); _frontCanvas.graphics.endFill(); } else { if ((_local2 % 2) == 0){ _frontCanvas.graphics.beginFill(2635851, 0.5); } else { _frontCanvas.graphics.beginFill(271434, 0.5); }; _frontCanvas.graphics.drawRoundRect((STANDINGS_X - (18 * 13)), ((STANDINGS_Y + (_local2 * _local3)) - 3), ((18 * 13) * 2), _local3, 10, 10); _frontCanvas.graphics.endFill(); }; if ((((_local5.score1 == -1)) || ((_local5.score2 == -1)))){ _font.paintText(_local5.team1.teamName, _frontCanvas, (STANDINGS_X - (_local4 / 2)), (STANDINGS_Y + (_local2 * _local3)), BitmapFont.ALIGN_RIGHT); _font.paintText(_local5.team2.teamName, _frontCanvas, (STANDINGS_X + (_local4 / 2)), (STANDINGS_Y + (_local2 * _local3)), BitmapFont.ALIGN_LEFT); _font.paintText("-", _frontCanvas, STANDINGS_X, (STANDINGS_Y + (_local2 * _local3)), BitmapFont.ALIGN_CENTER); } else { _font.paintText(_local5.team1.teamName, _frontCanvas, (STANDINGS_X - (_local4 * 2)), (STANDINGS_Y + (_local2 * _local3)), BitmapFont.ALIGN_RIGHT); _font.paintText(String(_local5.score1), _frontCanvas, (STANDINGS_X - (_local4 / 2)), (STANDINGS_Y + (_local2 * _local3)), BitmapFont.ALIGN_RIGHT); _font.paintText(_local5.team2.teamName, _frontCanvas, (STANDINGS_X + (_local4 * 2)), (STANDINGS_Y + (_local2 * _local3)), BitmapFont.ALIGN_LEFT); _font.paintText(String(_local5.score2), _frontCanvas, (STANDINGS_X + (_local4 / 2)), (STANDINGS_Y + (_local2 * _local3)), BitmapFont.ALIGN_LEFT); _font.paintText("-", _frontCanvas, STANDINGS_X, (STANDINGS_Y + (_local2 * _local3)), BitmapFont.ALIGN_CENTER); }; trace(((_local5.team1.teamName + "-") + _local5.team2.teamName)); _local2++; }; _weekDesc.text = ("RESULTS - WEEK " + _currentWeek); } } }//package States
Section 233
//StateSeasonEnd (States.StateSeasonEnd) package States { import flash.display.*; import StateLib.*; import flash.text.*; import Teams.*; import SFXLib.*; import Tournament.*; import GenericUILib.*; import org.flintparticles.twoD.renderers.*; import flash.filters.*; public class StateSeasonEnd extends StateMenu { protected var paperRain:PaperRain; protected var particleRenderer:DisplayObjectRenderer; private static const OPTION_PLAY_MORE_GAMES:Number = 0; private static const OPTION_MAIN_MENU:Number = 1; public function StateSeasonEnd(){ if (MatchManager.getSingleton().currentPlayerPosition == 1){ _options = new Array({image:IMG.MENU_MAIN_MENU, x:120, y:410, returnValue:OPTION_MAIN_MENU}, {image:IMG.MENU_PLAY_MORE_GAMES_BUTTON, x:520, y:410, returnValue:OPTION_PLAY_MORE_GAMES}); } else { _options = new Array({image:IMG.MENU_MAIN_MENU, x:320, y:430, returnValue:OPTION_MAIN_MENU}, {image:IMG.MENU_PLAY_MORE_GAMES_BUTTON, x:550, y:430, returnValue:OPTION_PLAY_MORE_GAMES}); }; } private function unlockTeams():void{ if (MatchManager.getSingleton().currentPlayerPosition == 1){ TeamUnlockerManager.getSingleton().unlockTeam(6, _parent); }; if (MatchManager.getSingleton().currentPlayerWonAllMatches){ TeamUnlockerManager.getSingleton().unlockTeam(8, _parent); }; if (MatchManager.getSingleton().currentPlayerGoalsAgainst == 0){ TeamUnlockerManager.getSingleton().unlockTeam(9, _parent); }; } override public function init(_arg1:Sprite):void{ var _local2:TextFormat; var _local3:GlowFilter; var _local4:TextField; _parent = _arg1; paperRain = new PaperRain(); particleRenderer = new DisplayObjectRenderer(); particleRenderer.addEmitter(paperRain); if (MatchManager.getSingleton().currentPlayerPosition == 1){ MediaPlayer.getSingleton().stopSounds(); MediaPlayer.getSingleton().play(MediaPlayer.SND_GAME_WIN); _menu = new GenericMenu(_options, IMG.getSingleton().getBitmap(IMG.SEASON_WON)); _menu.addChild(particleRenderer); paperRain.start(); } else { MediaPlayer.getSingleton().stopSounds(); MediaPlayer.getSingleton().play(MediaPlayer.SND_INTRO); _menu = new GenericMenu(_options, IMG.getSingleton().getBitmap(IMG.SEASON_LOST)); _local2 = new TextFormat("abadi", 120); _local2.align = "center"; _local2.color = 0xF2F2F2; _local3 = new GlowFilter(0, 1, 8, 8, 2, 1, false); _local4 = new TextField(); _local4.selectable = false; _local4.x = 0; _local4.y = 160; _local4.width = DEF.SCREEN_WIDTH; _local4.height = 160; _local4.embedFonts = true; _local4.defaultTextFormat = _local2; _local4.filters = [_local3]; _local4.text = ("" + MatchManager.getSingleton().currentPlayerPosition); _menu.addChild(_local4); }; _parent.addChild(_menu); _menu.show(); _logo = null; } override public function update():int{ unlockTeams(); switch (_menu.update()){ case OPTION_MAIN_MENU: _nextState = new StateMenu(); return (State.NEXT_AND_DESTROY); case OPTION_PLAY_MORE_GAMES: playMoreGames(); break; }; return (State.CONTINUE); } override public function destroy():void{ paperRain.stop(); super.destroy(); } } }//package States
Section 234
//StateSelectTeam (States.StateSelectTeam) package States { import flash.events.*; import flash.display.*; import flash.geom.*; import StateLib.*; import flash.text.*; import Teams.*; import SFXLib.*; import Tournament.*; import GenericUILib.*; import caurina.transitions.*; import flash.filters.*; public class StateSelectTeam extends State { protected var _showingTeam:Number;// = -1 protected var _deltaButtonAnim:Number;// = 0 protected var _teamsPanel:Sprite; protected var _playPressed:Boolean;// = false protected var _backButton:GenericButton; protected var _rightPlayerSelected:Boolean;// = false protected var _rightTeam:Object;// = null protected var _leftPlayerSelected:Boolean;// = false protected var _nextButton:GenericButton; protected var _playButton:GenericButton; protected var _previousButton:GenericButton; protected var _logos:Array; protected var _leftLogo:Sprite;// = null protected var _statsPanel:Sprite; protected var _background:Sprite; protected var _leftTeam:Object;// = null protected var _teamName:TextField; protected var _currentPage:Number;// = 0 protected var _rightLogo:Sprite;// = null protected var _playerCount:Number;// = 1 protected var _selectedTeam:Number;// = -1 protected var _animDir:Number;// = 1 protected static const Y_LIST_SIZE:Number = 2; protected static const RIGHT_LOGO_X:Number = 585; protected static const RIGHT_LOGO_Y:Number = 250; protected static const PAGE_Y:Number = 140; protected static const NEXT_PAGE_X:Number = 560; protected static const LOGO_SIZE:Number = 75; protected static const PREVIOUS_PAGE_X:Number = 80; protected static const X_LIST_SIZE:Number = 5; protected static const LEFT_LOGO_X:Number = 55; protected static const LEFT_LOGO_Y:Number = 250; override public function destroy():void{ fadeOutAndRemove([_background]); _background = null; MediaPlayer.getSingleton().stop(MediaPlayer.SND_INTRO); } override public function show():void{ fadeIn([_background]); } override public function init(_arg1:Sprite):void{ var _local5:Number; var _local6:Object; var _local7:TextFormat; var _local8:GlowFilter; var _local9:Sprite; var _local10:BitmapData; var _local11:Sprite; var _local12:Sprite; var _local13:Matrix; var _local14:Sprite; var _local15:Sprite; var _local16:Sprite; super.init(_arg1); _background = new Sprite(); _background.graphics.beginBitmapFill(IMG.getSingleton().getBitmapData(IMG.SELECT_TEAM_BACKGROUND)); _background.graphics.drawRect(0, 0, DEF.SCREEN_WIDTH, DEF.SCREEN_HEIGHT); _background.graphics.endFill(); _arg1.addChild(_background); var _local2:Sprite = new Sprite(); _local2.x = 130; _local2.y = (LOGO_SIZE - 10); _local2.scrollRect = new Rectangle(((-(LOGO_SIZE) / 2) - 3), ((-(LOGO_SIZE) / 2) - 3), ((LOGO_SIZE * X_LIST_SIZE) + 6), ((LOGO_SIZE * Y_LIST_SIZE) + 6)); _background.addChild(_local2); _teamsPanel = new Sprite(); _local2.addChild(_teamsPanel); _logos = new Array(); var _local3:Number = 0; var _local4:Number = 0; for each (_local6 in DEF.TEAMS) { _local15 = createLogo(IMG.getSingleton().getBitmapData(IMG[(_local6.graphicSet + "_LOGO")]), _local6.locked); _local15.name = ("" + _local3); if ((_local3 % 2) == 0){ _local5 = 0; } else { _local5 = LOGO_SIZE; }; _local15.x = (LOGO_SIZE * _local4); _local15.y = _local5; _local15.addEventListener(MouseEvent.CLICK, logoClicked, false, 0, true); _local15.addEventListener(MouseEvent.MOUSE_OVER, logoOver, false, 0, true); _local15.addEventListener(MouseEvent.MOUSE_OUT, logoOut, false, 0, true); _logos.push(_local15); _teamsPanel.addChild(_local15); if ((_local3 % 2) != 0){ _local4++; }; _local3++; }; _statsPanel = new Sprite(); _statsPanel.x = 130; _statsPanel.y = 275; _background.addChild(_statsPanel); _local7 = new TextFormat("abadi", 32); _local7.align = "center"; _local7.color = 0xEEEEEE; _local8 = new GlowFilter(0, 1, 2, 2, 2, 1, false); _teamName = new TextField(); _teamName.selectable = false; _teamName.x = ((DEF.SCREEN_WIDTH / 2) - (375 / 2)); _teamName.y = 231; _teamName.width = 375; _teamName.height = 30; _teamName.alpha = 0.8; _teamName.embedFonts = true; _teamName.defaultTextFormat = _local7; _teamName.filters = [_local8]; _background.addChild(_teamName); _local9 = new Sprite(); _local10 = IMG.getSingleton().getBitmapData(IMG.TEAM_NAME_REFLECTION); _local9.graphics.beginBitmapFill(_local10); _local9.graphics.drawRect(0, 0, _local10.width, _local10.height); _local9.graphics.endFill(); _local9.x = ((DEF.SCREEN_WIDTH / 2) - (_local10.width / 2)); _local9.y = 227; _background.addChild(_local9); _local11 = new Sprite(); _local10 = IMG.getSingleton().getBitmapData(IMG.LEVEL_INDICATOR_REFLECTION); _local11.graphics.beginBitmapFill(_local10); _local11.graphics.drawRect(0, 0, _local10.width, _local10.height); _local11.graphics.endFill(); _local11.x = 260; _local11.y = 290; _background.addChild(_local11); _local12 = new Sprite(); _local10 = IMG.getSingleton().getBitmapData(IMG.STATS_INDICATOR_REFLECTION); _local12.graphics.beginBitmapFill(_local10); _local12.graphics.drawRect(0, 0, _local10.width, _local10.height); _local12.graphics.endFill(); _local12.x = 131; _local12.y = 290; _background.addChild(_local12); _playButton = new GenericButton(IMG.getSingleton().getBitmapData(IMG.BUTTON_NEXT), IMG.getSingleton().getBitmapData(IMG.BUTTON_NEXT), true); _playButton.visible = false; _playButton.x = RIGHT_LOGO_X; _playButton.y = DEF.BUTTON_NEXT_Y; _background.addChild(_playButton); _backButton = new GenericButton(IMG.getSingleton().getBitmapData(IMG.BUTTON_BACK), IMG.getSingleton().getBitmapData(IMG.BUTTON_BACK), true); _backButton.x = LEFT_LOGO_X; _backButton.y = DEF.BUTTON_BACK_Y; _background.addChild(_backButton); _background.visible = false; _previousButton = new GenericButton(IMG.getSingleton().getBitmapData(IMG.PREVIOUS_PAGE_BUTTON), IMG.getSingleton().getBitmapData(IMG.PREVIOUS_PAGE_BUTTON), true); _previousButton.x = PREVIOUS_PAGE_X; _previousButton.y = PAGE_Y; _background.addChild(_previousButton); _previousButton.visible = false; _nextButton = new GenericButton(IMG.getSingleton().getBitmapData(IMG.NEXT_PAGE_BUTTON), IMG.getSingleton().getBitmapData(IMG.NEXT_PAGE_BUTTON), true); _nextButton.x = NEXT_PAGE_X; _nextButton.y = PAGE_Y; _background.addChild(_nextButton); _currentPage = 0; _local13 = new Matrix(); _local14 = createLogo(null); _local14.x = LEFT_LOGO_X; _local14.y = LEFT_LOGO_Y; _background.addChild(_local14); _local10 = IMG.getSingleton().getBitmapData(IMG.LABEL_PLAYER_1); _local13.translate((-(_local10.width) / 2), ((-(_local10.height) / 2) + 55)); _local14.graphics.beginBitmapFill(_local10, _local13); _local14.graphics.drawRect((-(_local10.width) / 2), ((-(_local10.height) / 2) + 55), _local10.width, _local10.height); _local14.graphics.endFill(); if (((!((MatchManager.getSingleton().getType() == MatchManager.TYPE_SEASON))) && (!((MatchManager.getSingleton().getType() == MatchManager.TYPE_TOURNAMENT))))){ _local16 = createLogo(null); _local16.x = RIGHT_LOGO_X; _local16.y = RIGHT_LOGO_Y; _background.addChild(_local16); _local13.identity(); _local10 = IMG.getSingleton().getBitmapData(IMG.LABEL_PLAYER_2); _local13.translate((-(_local10.width) / 2), ((-(_local10.height) / 2) + 55)); _local16.graphics.beginBitmapFill(_local10, _local13); _local16.graphics.drawRect((-(_local10.width) / 2), ((-(_local10.height) / 2) + 55), _local10.width, _local10.height); _local16.graphics.endFill(); }; MediaPlayer.getSingleton().play(MediaPlayer.SND_INTRO, true); } protected function logoOver(_arg1:MouseEvent):void{ var _local5:String; if (_showingTeam == (_arg1.target.name as Number)){ return; }; MediaPlayer.getSingleton().play(MediaPlayer.SND_MENU_OVER_OPTION); _showingTeam = _arg1.target.name; var _local2:Object = DEF.TEAMS[_showingTeam]; _statsPanel.graphics.clear(); var _local3:Number = 20; var _local4:Number = 35; paintStat(135, (_local3 + (_local4 * 0)), _local2.shoot); paintStat(135, (_local3 + (_local4 * 1)), _local2.goalkeeper); paintStat(135, (_local3 + (_local4 * 2)), _local2.speed); paintStat(135, (_local3 + (_local4 * 3)), _local2.mass); _teamName.text = _local2.name.toUpperCase(); var _local6:GlowFilter = new GlowFilter(); _arg1.target.filters = [_local6]; } protected function logoOut(_arg1:MouseEvent):void{ _arg1.target.filters = null; _teamName.text = ""; _statsPanel.graphics.clear(); } protected function altLogoOut(_arg1:MouseEvent):void{ _arg1.target.filters = null; } override public function hide():void{ fadeOut([_background]); } protected function createLogo(_arg1:BitmapData, _arg2:Boolean=false):Sprite{ var _local7:BitmapData; var _local3:Sprite = new Sprite(); var _local4:BitmapData = IMG.getSingleton().getBitmapData(IMG.LOGO_PANEL); var _local5:BitmapData = IMG.getSingleton().getBitmapData(IMG.LOGO_PANEL_REFLECTION); var _local6:Matrix = new Matrix(); _local6.translate((-(_local4.width) / 2), (-(_local4.height) / 2)); _local3.graphics.beginBitmapFill(_local4, _local6); _local3.graphics.drawRect((-(_local4.width) / 2), (-(_local4.height) / 2), _local4.width, _local4.height); _local3.graphics.endFill(); if (_arg1 != null){ _local6.identity(); _local6.translate((-(_arg1.width) / 2), (-(_arg1.height) / 2)); _local3.graphics.beginBitmapFill(_arg1, _local6); _local3.graphics.drawRect((-(_arg1.width) / 2), (-(_arg1.height) / 2), _arg1.width, _arg1.height); _local3.graphics.endFill(); _local3.buttonMode = true; }; if (_arg2){ _local7 = IMG.getSingleton().getBitmapData(IMG.TEAM_LOCKED); _local6.identity(); _local6.translate((-(_local7.width) / 2), (-(_local7.height) / 2)); _local3.graphics.beginBitmapFill(_local7, _local6); _local3.graphics.drawRect((-(_local7.width) / 2), (-(_local7.height) / 2), _local7.width, _local7.height); _local3.graphics.endFill(); }; _local6.identity(); _local6.translate((-(_local5.width) / 2), (-(_local5.height) / 2)); _local3.graphics.beginBitmapFill(_local5, _local6); _local3.graphics.drawRect((-(_local5.width) / 2), (-(_local5.height) / 2), _local5.width, _local5.height); _local3.graphics.endFill(); return (_local3); } override public function update():int{ var _local1:Number; if ((((MatchManager.getSingleton().getType() == MatchManager.TYPE_SEASON)) || ((MatchManager.getSingleton().getType() == MatchManager.TYPE_TOURNAMENT)))){ _rightPlayerSelected = true; }; if (((((_leftPlayerSelected) && (_rightPlayerSelected))) && (!(_playButton.visible)))){ _playButton.visible = true; SFX.getSingleton().maskedExplode(_playButton, IMG.getSingleton().getBitmapData(IMG.BUTTON_NEXT), IMG.getSingleton().getBitmapData(IMG.BUTTON_NEXT), 2, 1, 0, 0); }; if (_playButton.isPressed){ switch (MatchManager.getSingleton().getType()){ case MatchManager.TYPE_QUICK_MATCH_1P_2P: case MatchManager.TYPE_QUICK_MATCH_1P_COM: case MatchManager.TYPE_QUICK_MATCH_COM_COM: _nextState = new StateGame(); MatchManager.getSingleton().leftTeam = _leftTeam; MatchManager.getSingleton().rightTeam = _rightTeam; MatchManager.getSingleton().setupNextMatch(); return (State.NEXT_AND_DESTROY); case MatchManager.TYPE_SEASON: MatchManager.getSingleton().playerTeam = _leftTeam; _nextState = new StateScheduleInfo(); return (State.NEXT); }; }; if (_backButton.isPressed){ return (State.PREVIOUS); }; if (_nextButton.isPressed){ _currentPage++; _previousButton.visible = true; _nextButton.visible = true; if (_currentPage >= (Math.floor((DEF.TEAMS.length / 2)) - X_LIST_SIZE)){ _currentPage = (Math.floor((DEF.TEAMS.length / 2)) - X_LIST_SIZE); _nextButton.visible = false; }; _local1 = (-(_currentPage) * LOGO_SIZE); Tweener.addTween(_teamsPanel, {time:0.3, x:_local1}); }; if (_previousButton.isPressed){ _currentPage--; _previousButton.visible = true; _nextButton.visible = true; if (_currentPage <= 0){ _currentPage = 0; _previousButton.visible = false; }; _local1 = (-(_currentPage) * LOGO_SIZE); Tweener.addTween(_teamsPanel, {time:0.3, x:_local1}); }; _deltaButtonAnim = (_deltaButtonAnim + _animDir); _previousButton.x = (PREVIOUS_PAGE_X + _deltaButtonAnim); _nextButton.x = (NEXT_PAGE_X - _deltaButtonAnim); if (Math.abs(_deltaButtonAnim) >= 3){ _animDir = -(_animDir); }; return (State.CONTINUE); } protected function paintStat(_arg1:Number, _arg2:Number, _arg3:Number):void{ var _local7:Number; var _local4:Matrix = new Matrix(); var _local5:BitmapData = IMG.getSingleton().getBitmapData(IMG.LEVEL_INDICATOR); var _local6:Number = 0; while (_local6 < _arg3) { _local7 = (_arg1 + (_local6 * (_local5.width - 7))); _local4.identity(); _local4.translate(_local7, _arg2); _statsPanel.graphics.beginBitmapFill(_local5, _local4); _statsPanel.graphics.drawRect(_local7, _arg2, _local5.width, _local5.height); _statsPanel.graphics.endFill(); _local6++; }; } protected function altLogoOver(_arg1:MouseEvent):void{ var _local2:GlowFilter = new GlowFilter(); _arg1.target.filters = [_local2]; } protected function removeLeftPlayer(_arg1:MouseEvent):void{ MediaPlayer.getSingleton().play(MediaPlayer.SND_MENU_SELECT); _playButton.visible = false; _background.removeChild(_leftLogo); _leftLogo = null; _leftPlayerSelected = false; _leftTeam = null; } protected function removeRightPlayer(_arg1:MouseEvent):void{ MediaPlayer.getSingleton().play(MediaPlayer.SND_MENU_SELECT); _playButton.visible = false; _background.removeChild(_rightLogo); _rightLogo = null; _rightPlayerSelected = false; _rightTeam = null; } protected function logoClicked(_arg1:MouseEvent):void{ _showingTeam = _arg1.target.name; var _local2:Object = DEF.TEAMS[_showingTeam]; MediaPlayer.getSingleton().play(MediaPlayer.SND_MENU_SELECT); if (_local2.locked){ TeamUnlockerManager.getSingleton().showUnlockCondition(_local2, _background); } else { if (!_leftPlayerSelected){ if (_leftLogo != null){ _background.removeChild(_leftLogo); }; _leftLogo = createLogo(IMG.getSingleton().getBitmapData(IMG[(_local2.graphicSet + "_LOGO")])); _leftLogo.x = LEFT_LOGO_X; _leftLogo.y = LEFT_LOGO_Y; _leftLogo.addEventListener(MouseEvent.CLICK, removeLeftPlayer, false, 0, true); _leftLogo.addEventListener(MouseEvent.MOUSE_OVER, altLogoOver, false, 0, true); _leftLogo.addEventListener(MouseEvent.MOUSE_OUT, altLogoOut, false, 0, true); _background.addChild(_leftLogo); _leftPlayerSelected = true; _leftTeam = _local2; return; }; if (!_rightPlayerSelected){ if (_rightLogo != null){ _background.removeChild(_rightLogo); }; _rightLogo = createLogo(IMG.getSingleton().getBitmapData(IMG[(_local2.graphicSet + "_LOGO")])); _rightLogo.x = RIGHT_LOGO_X; _rightLogo.y = RIGHT_LOGO_Y; _rightLogo.addEventListener(MouseEvent.CLICK, removeRightPlayer, false, 0, true); _rightLogo.addEventListener(MouseEvent.MOUSE_OVER, altLogoOver, false, 0, true); _rightLogo.addEventListener(MouseEvent.MOUSE_OUT, altLogoOut, false, 0, true); _background.addChild(_rightLogo); _rightPlayerSelected = true; _rightTeam = _local2; return; }; }; } } }//package States
Section 235
//TeamUnlockerManager (Teams.TeamUnlockerManager) package Teams { import flash.events.*; import flash.display.*; import flash.geom.*; import flash.text.*; import caurina.transitions.*; import flash.filters.*; public class TeamUnlockerManager { private var _teamName:TextField; private var _showingMessage:Boolean;// = false private var _background:Sprite; private var _lockedTeams:Array; private var _saveGame:SaveGame; private var _teamLogo:Sprite; private var _canvas:Sprite; private var _unlockCondition:TextField; private static var _instance:TeamUnlockerManager = null; public function TeamUnlockerManager(){ _lockedTeams = new Array(DEF.TEAMS.length); var _local1:Number = 0; while (_local1 < _lockedTeams.length) { _lockedTeams[_local1] = DEF.TEAMS[_local1].locked; _local1++; }; _saveGame = new SaveGame("ilMareGames_GravityFootball2010_Teams"); if (_saveGame.isFirstTime()){ _saveGame.save(_lockedTeams); }; _lockedTeams = (_saveGame.load() as Array); _local1 = 0; while (_local1 < DEF.TEAMS.length) { DEF.TEAMS[_local1].locked = (_lockedTeams[_local1] as Boolean); _local1++; }; } protected function dismissMessage(_arg1:MouseEvent):void{ var evt = _arg1; _background.removeEventListener(MouseEvent.CLICK, dismissMessage); Tweener.addTween(_background, {time:0.5, scaleY:0, onComplete:function ():void{ _canvas.stage.removeChild(_background); _showingMessage = false; }}); } public function isUnlocked(_arg1:Number):Boolean{ return ((!(_lockedTeams[_arg1]) as Boolean)); } public function showUnlockCondition(_arg1:Object, _arg2:Sprite):void{ var _local3:BitmapData; var _local4:Matrix; var _local5:TextFormat; var _local6:GlowFilter; _canvas = _arg2; _background = new Sprite(); _background.graphics.clear(); _canvas.stage.addChild(_background); _local3 = IMG.getSingleton().getBitmapData(IMG.TEAM_LOCKED_MESSAGE); _local4 = new Matrix(); _local4.translate((-(_local3.width) / 2), (-(_local3.height) / 2)); _background.graphics.beginBitmapFill(_local3, _local4); _background.graphics.drawRect((-(_local3.width) / 2), (-(_local3.height) / 2), _local3.width, _local3.height); _background.graphics.endFill(); _background.mouseChildren = false; _background.buttonMode = true; _background.x = (_background.width / 2); _background.y = (_background.height / 2); _teamLogo = new Sprite(); _teamLogo.x = ((_background.width / 2) - (_background.width / 2)); _teamLogo.y = (220 - (_background.height / 2)); _background.addChild(_teamLogo); _local5 = new TextFormat("abadi", 32); _local5.align = "center"; _local5.color = 0xEEEEEE; _local6 = new GlowFilter(0, 1, 2, 2, 2, 1, false); _teamName = new TextField(); _teamName.selectable = false; _teamName.x = (((DEF.SCREEN_WIDTH / 2) - (375 / 2)) - (_background.width / 2)); _teamName.y = (160 - (_background.height / 2)); _teamName.width = 375; _teamName.height = 30; _teamName.alpha = 1; _teamName.embedFonts = true; _teamName.defaultTextFormat = _local5; _teamName.filters = [_local6]; _background.addChild(_teamName); _local5 = new TextFormat("abadi", 22); _local5.align = "center"; _local5.color = 0xEEEEEE; _local6 = new GlowFilter(0, 1, 2, 2, 2, 1, false); _unlockCondition = new TextField(); _unlockCondition.selectable = false; _unlockCondition.x = (((DEF.SCREEN_WIDTH / 2) - (440 / 2)) - (_background.width / 2)); _unlockCondition.y = (245 - (_background.height / 2)); _unlockCondition.width = 440; _unlockCondition.height = 90; _unlockCondition.alpha = 1; _unlockCondition.embedFonts = true; _unlockCondition.defaultTextFormat = _local5; _unlockCondition.filters = [_local6]; _background.addChild(_unlockCondition); _local3 = IMG.getSingleton().getBitmapData(IMG[(_arg1.graphicSet + "_LOGO")]); _local4 = new Matrix(); _local4.translate((-(_local3.width) / 2), (-(_local3.height) / 2)); _teamLogo.graphics.clear(); _teamLogo.graphics.beginBitmapFill(_local3, _local4); _teamLogo.graphics.drawRect((-(_local3.width) / 2), (-(_local3.height) / 2), _local3.width, _local3.height); _teamLogo.graphics.endFill(); _teamName.text = (_arg1.name as String).toUpperCase(); _unlockCondition.text = ("You can unlock them by\n" + (_arg1.unlockDesc as String)); _background.addEventListener(MouseEvent.CLICK, dismissMessage, false, 0, true); _background.scaleY = 0; Tweener.addTween(_background, {time:0.5, scaleY:1}); } public function unlockAll():void{ var _local1:Number = 0; while (_local1 < _lockedTeams.length) { if (!isUnlocked(_local1)){ _lockedTeams[_local1] = false; DEF.TEAMS[_local1].locked = false; }; _local1++; }; _saveGame.save(_lockedTeams); } public function unlockedCount():Number{ var _local1:Number = 0; var _local2:Number = 0; while (_local2 < DEF.TEAMS.length) { if (!DEF.TEAMS[_local2].locked){ _local1++; }; _local2++; }; return (_local1); } public function unlockTeam(_arg1:Number, _arg2:Sprite):void{ var _local3:BitmapData; var _local4:Matrix; if (_showingMessage){ return; }; if (isUnlocked(_arg1)){ return; }; _showingMessage = true; _lockedTeams[_arg1] = false; _saveGame.save(_lockedTeams); DEF.TEAMS[_arg1].locked = false; _canvas = _arg2; _background = new Sprite(); _background.graphics.clear(); _canvas.stage.addChild(_background); _local3 = IMG.getSingleton().getBitmapData(IMG.TEAM_UNLOCKED); _local4 = new Matrix(); _local4.translate((-(_local3.width) / 2), (-(_local3.height) / 2)); _background.graphics.beginBitmapFill(_local3, _local4); _background.graphics.drawRect((-(_local3.width) / 2), (-(_local3.height) / 2), _local3.width, _local3.height); _background.graphics.endFill(); _background.mouseChildren = false; _background.buttonMode = true; _background.x = (_background.width / 2); _background.y = (_background.height / 2); _teamLogo = new Sprite(); _teamLogo.x = ((_background.width / 2) - (_background.width / 2)); _teamLogo.y = (260 - (_background.height / 2)); _background.addChild(_teamLogo); var _local5:TextFormat = new TextFormat("abadi", 32); _local5.align = "center"; _local5.color = 0xEEEEEE; var _local6:GlowFilter = new GlowFilter(0, 1, 2, 2, 2, 1, false); _teamName = new TextField(); _teamName.selectable = false; _teamName.x = (((DEF.SCREEN_WIDTH / 2) - (375 / 2)) - (_background.width / 2)); _teamName.y = (190 - (_background.height / 2)); _teamName.width = 375; _teamName.height = 30; _teamName.alpha = 1; _teamName.embedFonts = true; _teamName.defaultTextFormat = _local5; _teamName.filters = [_local6]; _background.addChild(_teamName); _local3 = IMG.getSingleton().getBitmapData(IMG[(DEF.TEAMS[_arg1].graphicSet + "_LOGO")]); _local4 = new Matrix(); _local4.translate((-(_local3.width) / 2), (-(_local3.height) / 2)); _teamLogo.graphics.clear(); _teamLogo.graphics.beginBitmapFill(_local3, _local4); _teamLogo.graphics.drawRect((-(_local3.width) / 2), (-(_local3.height) / 2), _local3.width, _local3.height); _teamLogo.graphics.endFill(); _teamName.text = (DEF.TEAMS[_arg1].name as String).toUpperCase(); _background.addEventListener(MouseEvent.CLICK, dismissMessage, false, 0, true); _background.scaleY = 0; Tweener.addTween(_background, {time:0.5, scaleY:1}); } public function init():void{ } public static function getSingleton():TeamUnlockerManager{ if (!_instance){ _instance = new (TeamUnlockerManager); }; return (_instance); } } }//package Teams
Section 236
//DifficultManager (Tournament.DifficultManager) package Tournament { public class DifficultManager { protected var _level:Number;// = 1 public static const LEVEL_MEDIUM:Number = 1; public static const LEVEL_HARD:Number = 2; public static const LEVEL_EASY:Number = 0; private static var _instance:DifficultManager = null; public function get level():Number{ return (_level); } protected function balanceValue(_arg1:Number, _arg2:Number):Number{ var _local5:Number; var _local3:Number = MatchManager.getSingleton().phase; var _local4:Number = 7; if (_level != LEVEL_EASY){ return (_arg1); }; if (_arg1 <= _arg2){ return (_arg1); }; _local5 = Math.max(_arg2, (_arg1 - (_local4 - _local3))); if (_local5 > _arg1){ return (_arg1); }; return (_local5); } public function set level(_arg1:Number):void{ _level = _arg1; } public function balancePlayer(_arg1:Object, _arg2:Object, _arg3:Boolean=false):Object{ var _local9:Number; var _local10:Number; var _local11:Array; var _local4:Number = 0; var _local5:Number = 0; var _local6:Number = 0; var _local7:Number = 0; var _local8:Boolean; switch (_level){ case LEVEL_EASY: _local9 = ((4.5 + (MatchManager.getSingleton().phase / 2)) / 10); _local10 = 1; if ((((MatchManager.getSingleton().phase == 6)) && (_arg3))){ _local8 = true; }; break; case LEVEL_MEDIUM: _local9 = ((4.5 + (MatchManager.getSingleton().phase / 2)) / 7); if (MatchManager.getSingleton().phase > 3){ _local10 = 1.5; } else { _local10 = 1; }; if ((((MatchManager.getSingleton().phase >= 3)) && (_arg3))){ _local8 = true; }; break; case LEVEL_HARD: _local9 = ((4.5 + (MatchManager.getSingleton().phase / 2)) / 4); if (MatchManager.getSingleton().phase > 3){ _local10 = 1.5; } else { _local10 = 1; }; _local8 = true; break; }; trace("DIFFICULT LEVEL:", _level); if (_arg3){ _local4 = (balanceValue(_arg1.speed, _arg2.speed) * _local9); _local6 = _arg1.mass; _local5 = (balanceValue(_arg1.goalkeeper, _arg2.goalkeeper) * _local10); _local7 = (balanceValue(_arg1.shoot, _arg2.shoot) * _local10); _local11 = _arg1.satellites; trace((((((((("BALANCED LEFT: (" + _local4) + ", ") + _local6) + ", ") + _local5) + ", ") + _local7) + ")")); } else { _local4 = _arg1.speed; _local6 = _arg1.mass; _local5 = _arg1.goalkeeper; _local7 = _arg1.shoot; _local11 = _arg1.satellites; trace((((((((("LEFT: (" + _local4) + ", ") + _local6) + ", ") + _local5) + ", ") + _local7) + ")")); }; trace("HAS BACKUP", _local8); return ({speed:_local4, mass:_local6, goalkeeper:_local5, shoot:_local7, satellites:_local11, hasBackup:_local8}); } public static function get instance():DifficultManager{ if (!_instance){ _instance = new (DifficultManager); }; return (_instance); } } }//package Tournament
Section 237
//Match (Tournament.Match) package Tournament { public class Match { public var score2:Number; public var score1:Number; public var team1:SeasonTeamInfo; public var team2:SeasonTeamInfo; public function Match(_arg1:SeasonTeamInfo, _arg2:SeasonTeamInfo, _arg3:Number=-1, _arg4:Number=-1){ this.team1 = _arg1; this.team2 = _arg2; this.score1 = _arg3; this.score2 = _arg4; } public function get isDraw():Boolean{ return ((score1 == score2)); } public function get loser():SeasonTeamInfo{ if (score1 < score2){ return (team1); }; return (team2); } public function get winner():SeasonTeamInfo{ if (score1 > score2){ return (team1); }; return (team2); } } }//package Tournament
Section 238
//MatchManager (Tournament.MatchManager) package Tournament { import com.adobe.serialization.json.*; import de.polygonal.ds.*; public class MatchManager { protected var _seasonWeek:Number;// = 0 protected var _seasonWeekCount:Number; protected var _rightTeam:Object; protected var _type:Number; protected var _seasonSchedule:Array; protected var _leftScore:Number; protected var _currentWeek:Number; protected var _seasonData:Array; protected var _leftTeam:Object; protected var _leftAIControlled:Boolean;// = false protected var _saveGame:SaveGame; protected var _rightScore:Number; protected var _seasonGroups:Array; protected var _rightAIControlled:Boolean;// = false public static const TYPE_SEASON:Number = 5; public static const TYPE_PENALTIES:Number = 7; public static const TYPE_QUICK_MATCH_1P_2P:Number = 1; public static const TYPE_TOURNAMENT:Number = 4; public static const TYPE_QUICK_MATCH_COM_COM:Number = 3; public static const GROUPS_STRINGS:Array = ["A", "B", "C", "D", "E", "F", "G", "H"]; public static const TYPE_QUICK_MATCH_1P_COM:Number = 0; public static const TYPE_KNOCKOUT:Number = 6; private static var _instance:MatchManager = null; public function get phase():Number{ if (_type == TYPE_SEASON){ return (_currentWeek); }; if (_type == TYPE_KNOCKOUT){ return ((_currentWeek + 3)); }; return (0); } public function get currentPlayerGoalsDifference():Number{ var _local1:SeasonTeamInfo; for each (_local1 in _seasonData) { if (_local1.isPlayer){ return (_local1.goalsDifference); }; }; return (0); } public function get leftTeam():Object{ return (_leftTeam); } public function set leftTeam(_arg1:Object):void{ _leftTeam = _arg1; } public function get currentPlayerPosition():Number{ var _local2:SeasonTeamInfo; var _local1:Number = 0; for each (_local2 in _seasonData) { _local1++; if (_local2.isPlayer){ return (_local1); }; }; return (_local1); } public function save():void{ var _local1:Object; var _local2:JSONEncoder; var _local3:Object; } public function get currentWeek():Number{ return (_currentWeek); } public function seasonDataForGroup(_arg1:Number):Array{ var _local2:Array = _seasonGroups[_arg1][0].involvedTeams; _local2.sortOn(["points", "goalsDifference"], (Array.NUMERIC | Array.DESCENDING)); return (_local2); } protected function getTeamInfoForName(_arg1:String):SeasonTeamInfo{ var _local2:SeasonTeamInfo; for each (_local2 in _seasonData) { if (_local2.teamName == _arg1){ return (_local2); }; }; return (null); } public function setupNextMatch():void{ var _local1:Number; var _local2:SeasonWeekInfo; var _local3:Match; var _local4:Number; switch (_type){ case TYPE_QUICK_MATCH_1P_COM: case TYPE_QUICK_MATCH_1P_2P: case TYPE_QUICK_MATCH_COM_COM: break; case TYPE_SEASON: case TYPE_TOURNAMENT: case TYPE_KNOCKOUT: _local1 = 0; while (_local1 < _seasonGroups.length) { trace("RESULTADOS GRUPO", GROUPS_STRINGS[_local1], " SEMANA", _currentWeek); _local2 = _seasonGroups[_local1][_currentWeek]; for each (_local3 in _local2.matches) { if (((_local3.team1.isPlayer) || (_local3.team2.isPlayer))){ _leftTeam = _local3.team1.teamDesc; _rightTeam = _local3.team2.teamDesc; if (_local3.team1.isPlayer){ _leftAIControlled = false; _rightAIControlled = true; } else { _leftAIControlled = true; _rightAIControlled = false; }; } else { if (_type != TYPE_KNOCKOUT){ _local3.score1 = 0; _local3.score2 = 0; _local4 = 0; while (_local4 < 5) { if (Math.random() > 0.5){ if (Math.floor((Math.random() * _local3.team1.teamDesc.handycap)) < Math.floor((Math.random() * _local3.team2.teamDesc.handycap))){ _local3.score1 = (_local3.score1 + 1); } else { _local3.score2 = (_local3.score2 + 1); }; }; _local4++; }; } else { do { _local3.score1 = Math.floor((Math.random() * 5)); _local3.score2 = Math.floor((Math.random() * 5)); } while (_local3.score1 == _local3.score2); }; }; trace(_local3.team1.teamName, _local3.score1, _local3.team2.teamName, _local3.score2); }; trace("----------------------"); _local1++; }; break; }; } public function createKnockout(_arg1:Number):void{ var _local2:SeasonWeekInfo; var _local3:Array; var _local4:Match; switch (_arg1){ case 0: _local3 = [[new SeasonWeekInfo(0), new SeasonWeekInfo(1), new SeasonWeekInfo(2), new SeasonWeekInfo(2)]]; _local3[0][0].addMatch(getTeamInfoForPosAndGroup(1, 0), getTeamInfoForPosAndGroup(2, 1)); _local3[0][0].addMatch(getTeamInfoForPosAndGroup(1, 2), getTeamInfoForPosAndGroup(2, 3)); _local3[0][0].addMatch(getTeamInfoForPosAndGroup(1, 4), getTeamInfoForPosAndGroup(2, 5)); _local3[0][0].addMatch(getTeamInfoForPosAndGroup(1, 6), getTeamInfoForPosAndGroup(2, 7)); _local3[0][0].addMatch(getTeamInfoForPosAndGroup(2, 0), getTeamInfoForPosAndGroup(1, 1)); _local3[0][0].addMatch(getTeamInfoForPosAndGroup(2, 2), getTeamInfoForPosAndGroup(1, 3)); _local3[0][0].addMatch(getTeamInfoForPosAndGroup(2, 4), getTeamInfoForPosAndGroup(1, 5)); _local3[0][0].addMatch(getTeamInfoForPosAndGroup(2, 6), getTeamInfoForPosAndGroup(1, 7)); _seasonGroups = _local3; _seasonSchedule = _seasonGroups[playerGroup]; break; case 1: _local2 = _seasonGroups[0][0]; _seasonGroups[0][1].addMatch(_local2.matches[0].winner, _local2.matches[1].winner); _seasonGroups[0][1].addMatch(_local2.matches[2].winner, _local2.matches[3].winner); _seasonGroups[0][1].addMatch(_local2.matches[4].winner, _local2.matches[5].winner); _seasonGroups[0][1].addMatch(_local2.matches[6].winner, _local2.matches[7].winner); _seasonSchedule = _seasonGroups[playerGroup]; break; case 2: _local2 = _seasonGroups[0][1]; _seasonGroups[0][2].addMatch(_local2.matches[0].winner, _local2.matches[1].winner); _seasonGroups[0][2].addMatch(_local2.matches[2].winner, _local2.matches[3].winner); _seasonSchedule = _seasonGroups[playerGroup]; break; case 3: _local2 = _seasonGroups[0][2]; _seasonGroups[0][3].addMatch(_local2.matches[0].winner, _local2.matches[1].winner); _seasonGroups[0][3].addMatch(_local2.matches[0].loser, _local2.matches[1].loser); _seasonSchedule = _seasonGroups[playerGroup]; break; }; trace("KNOCKOUT:", _arg1); for each (_local2 in _seasonSchedule) { trace("---------------"); for each (_local4 in _local2.matches) { trace(((_local4.team1.teamName + "-") + _local4.team2.teamName)); }; }; trace("---------------"); } public function get playerGroup():Number{ var _local2:Array; var _local3:SeasonTeamInfo; var _local1:Number = 0; while (_local1 < groupCount) { _local2 = _seasonGroups[_local1][0].involvedTeams; for each (_local3 in _local2) { if (_local3.isPlayer){ return (_local1); }; }; _local1++; }; return (0); } public function getTeamInfo(_arg1:Number):SeasonTeamInfo{ var _local2:SeasonTeamInfo; for each (_local2 in _seasonData) { if (_local2.id == _arg1){ return (_local2); }; }; return (null); } public function setupNextWeek():Number{ var _local4:SeasonWeekInfo; var _local5:SeasonTeamInfo; var _local6:Match; var _local7:SeasonTeamInfo; var _local1:Match = currentPlayerMatch; _local1.score1 = leftScore; _local1.score2 = rightScore; if ((((_type == TYPE_KNOCKOUT)) && (_local1.isDraw))){ return (TYPE_PENALTIES); }; var _local2:Number = GROUPS_STRINGS.length; if (_type == TYPE_KNOCKOUT){ _local2 = 1; }; var _local3:Number = 0; while (_local3 < _local2) { _local4 = _seasonGroups[_local3][_currentWeek]; for each (_local5 in _seasonData) { _local5 = (_local5 as SeasonTeamInfo); for each (_local6 in _local4.matches) { if (_local6.team1.teamName == _local5.teamName){ _local5.matchesPlayed = (_local5.matchesPlayed + 1); _local5.goalsAgainst = (_local5.goalsAgainst + _local6.score2); _local5.goalsFavor = (_local5.goalsFavor + _local6.score1); _local5.goalsDifference = (_local5.goalsFavor - _local5.goalsAgainst); if (_local6.score1 > _local6.score2){ _local5.points = (_local5.points + 3); _local5.matchesWon = (_local5.matchesWon + 1); } else { if (_local6.score1 == _local6.score2){ _local5.points = (_local5.points + 1); _local5.matchesDraw = (_local5.matchesDraw + 1); } else { _local5.matchesLost = (_local5.matchesLost + 1); }; }; }; if (_local6.team2.teamName == _local5.teamName){ _local5.matchesPlayed = (_local5.matchesPlayed + 1); _local5.goalsAgainst = (_local5.goalsAgainst + _local6.score1); _local5.goalsFavor = (_local5.goalsFavor + _local6.score2); _local5.goalsDifference = (_local5.goalsFavor - _local5.goalsAgainst); if (_local6.score2 > _local6.score1){ _local5.points = (_local5.points + 3); _local5.matchesWon = (_local5.matchesWon + 1); } else { if (_local6.score2 == _local6.score1){ _local5.points = (_local5.points + 1); _local5.matchesDraw = (_local5.matchesDraw + 1); } else { _local5.matchesLost = (_local5.matchesLost + 1); }; }; }; }; }; _local3++; }; _seasonData.sortOn(["points", "goalsDifference"], (Array.NUMERIC | Array.DESCENDING)); _currentWeek++; switch (_type){ case TYPE_SEASON: if (_currentWeek >= _seasonWeekCount){ setType(TYPE_KNOCKOUT); for each (_local7 in _seasonGroups[playerGroup][0].involvedTeams) { if (_local7.isPlayer){ return (TYPE_KNOCKOUT); }; trace(_local7.teamName, _local7.points, _local7.isPlayer); }; return (-1); }; break; case TYPE_KNOCKOUT: if (_currentWeek >= _seasonWeekCount){ return (-1); }; if (((_local1.loser.isPlayer) && (!(_local1.isDraw)))){ return (-1); }; createKnockout(_currentWeek); return (TYPE_KNOCKOUT); default: if (_currentWeek >= _seasonWeekCount){ return (-1); }; }; return (TYPE_SEASON); } protected function factorial(_arg1:Number):Number{ if (_arg1 < 1){ return (1); }; var _local2:Number = 1; while (_arg1 > 0) { _local2 = (_local2 * _arg1); _arg1--; }; return (_local2); } public function get rightTeam():Object{ return (_rightTeam); } public function weekSchedule(_arg1:Number=-1):SeasonWeekInfo{ if (_arg1 < 0){ return (_seasonSchedule[_currentWeek]); }; return (_seasonSchedule[_arg1]); } public function get seasonData():Array{ return (_seasonData); } public function getType():Number{ return (_type); } public function createSchedule():void{ var week:SeasonWeekInfo; var j:Number; var match:Match; var teamsAux:Array = _seasonData.sort(function (_arg1, _arg2):int{ var _local3:* = (Math.round((Math.random() * 2)) - 1); return (_local3); }); var weekCount:Number = (teamsAux.length - 1); var matches:Array = new Array(); var matchesCount:Number = (factorial(teamsAux.length) / (2 * factorial((teamsAux.length - 2)))); var matchesPerWeek:Number = (matchesCount / (teamsAux.length - 1)); var teams:Array = new Array(); _currentWeek = 0; _seasonSchedule = new Array(); var weekNumber:Number = 0; while (weekNumber < weekCount) { _seasonSchedule.push(new SeasonWeekInfo(weekNumber)); weekNumber = (weekNumber + 1); }; var matrix:Array2 = new Array2(teamsAux.length, teamsAux.length); matrix.fill(-1); var i:Number = 0; while (i < weekCount) { j = i; while (j < weekCount) { weekNumber = ((i + j) % weekCount); if (i != j){ matrix.set(i, j, weekNumber); } else { matrix.set(i, weekCount, weekNumber); }; j = (j + 1); }; i = (i + 1); }; i = 0; while (i < teamsAux.length) { j = i; while (j < teamsAux.length) { if (i != j){ week = _seasonSchedule[matrix.get(i, j)]; week.addMatch(teamsAux[i], teamsAux[j]); trace(((((("t" + i) + "-t") + j) + " week: ") + matrix.get(i, j))); }; j = (j + 1); }; i = (i + 1); }; for each (week in _seasonSchedule) { trace("---------------"); for each (match in week.matches) { trace(((match.team1.teamName + "-") + match.team2.teamName)); }; }; } public function get currentPlayerGoalsAgainst():Number{ var _local1:SeasonTeamInfo; for each (_local1 in _seasonData) { if (_local1.isPlayer){ return (_local1.goalsAgainst); }; }; return (0); } public function setType(_arg1:Number):void{ var _local2:Array; var _local3:Number; var _local4:Number; var _local5:Object; _type = _arg1; switch (_arg1){ case TYPE_QUICK_MATCH_1P_COM: _leftAIControlled = false; _rightAIControlled = true; break; case TYPE_QUICK_MATCH_1P_2P: _leftAIControlled = false; _rightAIControlled = false; break; case TYPE_QUICK_MATCH_COM_COM: _leftAIControlled = true; _rightAIControlled = true; break; case TYPE_SEASON: _seasonData = new Array(); _local2 = new Array(); _local3 = 0; _local4 = 0; while (_local4 < DEF.TEAMS.length) { _local5 = DEF.TEAMS[_local3]; _local2.push(_local5); _seasonData.push(new SeasonTeamInfo(_local5.name, _local5, _local4)); _local3++; _local4++; }; createGroups(); _seasonWeekCount = 3; break; case TYPE_KNOCKOUT: _seasonWeekCount = 4; _currentWeek = 0; createKnockout(_currentWeek); break; }; } public function get isFirstWeek():Boolean{ return ((_currentWeek == 0)); } public function set playerTeam(_arg1:Object):void{ var _local2:SeasonTeamInfo; if ((((_type == TYPE_TOURNAMENT)) || ((_type == TYPE_SEASON)))){ for each (_local2 in _seasonData) { _local2.isPlayer = false; if (_local2.teamDesc == _arg1){ _local2.isPlayer = true; break; }; }; _seasonSchedule = _seasonGroups[playerGroup]; }; } public function set rightTeam(_arg1:Object):void{ _rightTeam = _arg1; } public function get leftScore():Number{ return (_leftScore); } public function get currentPlayerMatch():Match{ var _local2:Match; var _local1:SeasonWeekInfo = weekSchedule(); for each (_local2 in _local1.matches) { if (((_local2.team1.isPlayer) || (_local2.team2.isPlayer))){ return (_local2); }; }; return (null); } public function hasSavedSeason():Boolean{ return (false); } public function setRandomRightTeam():void{ var _local1:Object; while (((((!((_local1 == null))) && (!((_local1 == _leftTeam))))) && (!(_local1.locked)))) { _local1 = DEF.TEAMS[Math.floor((Math.random() * DEF.TEAMS.length))]; }; _rightTeam = _local1; } public function get rightScore():Number{ return (_rightScore); } public function get groupCount():Number{ return (_seasonGroups.length); } protected function getTeamInfoForPosAndGroup(_arg1:Number, _arg2:Number):SeasonTeamInfo{ var _local3:Array = seasonDataForGroup(_arg2); return (_local3[(_arg1 - 1)]); } public function get leftAIControlled():Boolean{ return (_leftAIControlled); } public function get playerTeam():Object{ var _local1:SeasonTeamInfo; if ((((_type == TYPE_TOURNAMENT)) || ((_type == TYPE_SEASON)))){ for each (_local1 in _seasonData) { if (_local1.isPlayer == true){ return (_local1.teamDesc); }; }; }; return (null); } public function get matchTime():Number{ return (((OptionsManager.getSingleton().matchTime as int) * 60)); } public function seasonScheduleForGroupAndWeek(_arg1:Number, _arg2:Number):SeasonWeekInfo{ return (_seasonGroups[_arg1][_arg2]); } public function load():Boolean{ var _local4:Object; var _local5:Number; var _local6:Object; var _local7:SeasonTeamInfo; var _local8:SeasonWeekInfo; var _local9:Object; return (false); _seasonSchedule = new Array(); _local5 = 0; for each (_local6 in _local3._seasonSchedule) { _local8 = new SeasonWeekInfo(_local5); for each (_local9 in _local6.matches) { _local8.addMatch(getTeamInfo(_local9.team1.id), getTeamInfo(_local9.team2.id), _local9.score1, _local9.score2); }; _seasonSchedule.push(_local8); }; _seasonWeek = _local3._seasonWeek; _seasonWeekCount = _local3._seasonWeekCount; _currentWeek = _local3._currentWeek; return (true); } public function createGroups():void{ var _local1:SeasonWeekInfo; var _local2:Match; _currentWeek = 0; _seasonGroups = [[new SeasonWeekInfo(0), new SeasonWeekInfo(1), new SeasonWeekInfo(2)], [new SeasonWeekInfo(0), new SeasonWeekInfo(1), new SeasonWeekInfo(2)], [new SeasonWeekInfo(0), new SeasonWeekInfo(1), new SeasonWeekInfo(2)], [new SeasonWeekInfo(0), new SeasonWeekInfo(1), new SeasonWeekInfo(2)], [new SeasonWeekInfo(0), new SeasonWeekInfo(1), new SeasonWeekInfo(2)], [new SeasonWeekInfo(0), new SeasonWeekInfo(1), new SeasonWeekInfo(2)], [new SeasonWeekInfo(0), new SeasonWeekInfo(1), new SeasonWeekInfo(2)], [new SeasonWeekInfo(0), new SeasonWeekInfo(1), new SeasonWeekInfo(2)]]; _seasonGroups[0][0].addMatch(getTeamInfoForName("South Africa"), getTeamInfoForName("Mexico")); _seasonGroups[0][0].addMatch(getTeamInfoForName("Uruguay"), getTeamInfoForName("France")); _seasonGroups[0][1].addMatch(getTeamInfoForName("South Africa"), getTeamInfoForName("Uruguay")); _seasonGroups[0][1].addMatch(getTeamInfoForName("France"), getTeamInfoForName("Mexico")); _seasonGroups[0][2].addMatch(getTeamInfoForName("Mexico"), getTeamInfoForName("Uruguay")); _seasonGroups[0][2].addMatch(getTeamInfoForName("France"), getTeamInfoForName("South Africa")); _seasonGroups[1][0].addMatch(getTeamInfoForName("Argentina"), getTeamInfoForName("Nigeria")); _seasonGroups[1][0].addMatch(getTeamInfoForName("South Korea"), getTeamInfoForName("Greece")); _seasonGroups[1][1].addMatch(getTeamInfoForName("Greece"), getTeamInfoForName("Nigeria")); _seasonGroups[1][1].addMatch(getTeamInfoForName("Argentina"), getTeamInfoForName("South Korea")); _seasonGroups[1][2].addMatch(getTeamInfoForName("Nigeria"), getTeamInfoForName("South Korea")); _seasonGroups[1][2].addMatch(getTeamInfoForName("Greece"), getTeamInfoForName("Argentina")); _seasonGroups[2][0].addMatch(getTeamInfoForName("England"), getTeamInfoForName("United States")); _seasonGroups[2][0].addMatch(getTeamInfoForName("Algeria"), getTeamInfoForName("Slovenia")); _seasonGroups[2][1].addMatch(getTeamInfoForName("Slovenia"), getTeamInfoForName("United States")); _seasonGroups[2][1].addMatch(getTeamInfoForName("England"), getTeamInfoForName("Algeria")); _seasonGroups[2][2].addMatch(getTeamInfoForName("Slovenia"), getTeamInfoForName("England")); _seasonGroups[2][2].addMatch(getTeamInfoForName("United States"), getTeamInfoForName("Algeria")); _seasonGroups[3][0].addMatch(getTeamInfoForName("Germany"), getTeamInfoForName("Australia")); _seasonGroups[3][0].addMatch(getTeamInfoForName("Serbia"), getTeamInfoForName("Ghana")); _seasonGroups[3][1].addMatch(getTeamInfoForName("Germany"), getTeamInfoForName("Serbia")); _seasonGroups[3][1].addMatch(getTeamInfoForName("Ghana"), getTeamInfoForName("Australia")); _seasonGroups[3][2].addMatch(getTeamInfoForName("Ghana"), getTeamInfoForName("Germany")); _seasonGroups[3][2].addMatch(getTeamInfoForName("Australia"), getTeamInfoForName("Serbia")); _seasonGroups[4][0].addMatch(getTeamInfoForName("Netherlands"), getTeamInfoForName("Denmark")); _seasonGroups[4][0].addMatch(getTeamInfoForName("Japan"), getTeamInfoForName("Cameroon")); _seasonGroups[4][1].addMatch(getTeamInfoForName("Netherlands"), getTeamInfoForName("Japan")); _seasonGroups[4][1].addMatch(getTeamInfoForName("Cameroon"), getTeamInfoForName("Denmark")); _seasonGroups[4][2].addMatch(getTeamInfoForName("Denmark"), getTeamInfoForName("Japan")); _seasonGroups[4][2].addMatch(getTeamInfoForName("Cameroon"), getTeamInfoForName("Netherlands")); _seasonGroups[5][0].addMatch(getTeamInfoForName("Italy"), getTeamInfoForName("Paraguay")); _seasonGroups[5][0].addMatch(getTeamInfoForName("New Zealand"), getTeamInfoForName("Slovakia")); _seasonGroups[5][1].addMatch(getTeamInfoForName("Slovakia"), getTeamInfoForName("Paraguay")); _seasonGroups[5][1].addMatch(getTeamInfoForName("Italy"), getTeamInfoForName("New Zealand")); _seasonGroups[5][2].addMatch(getTeamInfoForName("Slovakia"), getTeamInfoForName("Italy")); _seasonGroups[5][2].addMatch(getTeamInfoForName("Paraguay"), getTeamInfoForName("New Zealand")); _seasonGroups[6][0].addMatch(getTeamInfoForName("Cote d'Ivoire"), getTeamInfoForName("Portugal")); _seasonGroups[6][0].addMatch(getTeamInfoForName("Brazil"), getTeamInfoForName("North Korea")); _seasonGroups[6][1].addMatch(getTeamInfoForName("Brazil"), getTeamInfoForName("Cote d'Ivoire")); _seasonGroups[6][1].addMatch(getTeamInfoForName("Portugal"), getTeamInfoForName("North Korea")); _seasonGroups[6][2].addMatch(getTeamInfoForName("Portugal"), getTeamInfoForName("Brazil")); _seasonGroups[6][2].addMatch(getTeamInfoForName("North Korea"), getTeamInfoForName("Cote d'Ivoire")); _seasonGroups[7][0].addMatch(getTeamInfoForName("Honduras"), getTeamInfoForName("Chile")); _seasonGroups[7][0].addMatch(getTeamInfoForName("Spain"), getTeamInfoForName("Switzerland")); _seasonGroups[7][1].addMatch(getTeamInfoForName("Chile"), getTeamInfoForName("Switzerland")); _seasonGroups[7][1].addMatch(getTeamInfoForName("Spain"), getTeamInfoForName("Honduras")); _seasonGroups[7][2].addMatch(getTeamInfoForName("Chile"), getTeamInfoForName("Spain")); _seasonGroups[7][2].addMatch(getTeamInfoForName("Switzerland"), getTeamInfoForName("Honduras")); _seasonSchedule = _seasonGroups[playerGroup]; for each (_local1 in _seasonSchedule) { trace("---------------"); for each (_local2 in _local1.matches) { trace(((_local2.team1.teamName + "-") + _local2.team2.teamName)); }; }; } public function setMatchResults(_arg1:Number, _arg2:Number):void{ _leftScore = _arg1; _rightScore = _arg2; } public function get rightAIControlled():Boolean{ return (_rightAIControlled); } public function get weekCount():Number{ return (_seasonSchedule.length); } public function get currentPlayerWonAllMatches():Boolean{ var _local1:SeasonTeamInfo; for each (_local1 in _seasonData) { if (_local1.isPlayer){ return ((((_local1.matchesDraw == 0)) && ((_local1.matchesLost == 0)))); }; }; return (false); } public static function getSingleton():MatchManager{ if (!_instance){ _instance = new (MatchManager); }; return (_instance); } } }//package Tournament
Section 239
//SeasonTeamInfo (Tournament.SeasonTeamInfo) package Tournament { public dynamic class SeasonTeamInfo { public var teamName:String;// = "" public var teamDesc:Object; public var matchesDraw:Number;// = 0 public var id:Number;// = 0 public var goalsDifference:Number;// = 0 public var goalsFavor:Number;// = 0 public var goalsAgainst:Number;// = 0 public var matchesWon:Number;// = 0 public var matchesPlayed:Number;// = 0 public var points:Number;// = 0 public var isPlayer:Boolean;// = false public var matchesLost:Number;// = 0 public function SeasonTeamInfo(_arg1:String, _arg2:Object, _arg3:Number){ this.teamName = _arg1; matchesPlayed = 0; matchesWon = 0; matchesDraw = 0; matchesLost = 0; goalsFavor = 0; goalsAgainst = 0; goalsDifference = 0; points = 0; this.teamDesc = _arg2; this.id = _arg3; } } }//package Tournament
Section 240
//SeasonWeekInfo (Tournament.SeasonWeekInfo) package Tournament { public class SeasonWeekInfo { public var matches:Array; public var week:Number; public function SeasonWeekInfo(_arg1:Number){ this.week = _arg1; matches = new Array(); } public function addMatch(_arg1:SeasonTeamInfo, _arg2:SeasonTeamInfo, _arg3:Number=-1, _arg4:Number=-1):void{ var _local5:Match = new Match(_arg1, _arg2); if (_arg3 != -1){ _local5.score1 = _arg3; }; if (_arg4 != -1){ _local5.score2 = _arg4; }; matches.push(_local5); } public function get involvedTeams():Array{ var _local2:Match; var _local1:Array = new Array(); for each (_local2 in matches) { _local1.push(_local2.team1); _local1.push(_local2.team2); }; return (_local1); } } }//package Tournament
Section 241
//_activeButtonStyleStyle (_activeButtonStyleStyle) package { import mx.core.*; import mx.styles.*; public class _activeButtonStyleStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".activeButtonStyle"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".activeButtonStyle", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ }; }; } } }//package
Section 242
//_activeTabStyleStyle (_activeTabStyleStyle) package { import mx.core.*; import mx.styles.*; public class _activeTabStyleStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".activeTabStyle"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".activeTabStyle", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.fontWeight = "bold"; }; }; } } }//package
Section 243
//_alertButtonStyleStyle (_alertButtonStyleStyle) package { import mx.core.*; import mx.styles.*; public class _alertButtonStyleStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".alertButtonStyle"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".alertButtonStyle", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.color = 734012; }; }; } } }//package
Section 244
//_AlertStyle (_AlertStyle) package { import mx.core.*; import mx.styles.*; public class _AlertStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration("Alert"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration("Alert", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.paddingTop = 2; this.borderColor = 8821927; this.roundedBottomCorners = true; this.color = 0xFFFFFF; this.buttonStyleName = "alertButtonStyle"; this.backgroundColor = 8821927; this.borderAlpha = 0.9; this.paddingLeft = 10; this.paddingBottom = 2; this.backgroundAlpha = 0.9; this.paddingRight = 10; }; }; } } }//package
Section 245
//_comboDropdownStyle (_comboDropdownStyle) package { import mx.core.*; import mx.styles.*; public class _comboDropdownStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".comboDropdown"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".comboDropdown", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.shadowDirection = "center"; this.fontWeight = "normal"; this.dropShadowEnabled = true; this.leading = 0; this.backgroundColor = 0xFFFFFF; this.shadowDistance = 1; this.cornerRadius = 0; this.borderThickness = 0; this.paddingLeft = 5; this.paddingRight = 5; }; }; } } }//package
Section 246
//_dataGridStylesStyle (_dataGridStylesStyle) package { import mx.core.*; import mx.styles.*; public class _dataGridStylesStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".dataGridStyles"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".dataGridStyles", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.fontWeight = "bold"; }; }; } } }//package
Section 247
//_dateFieldPopupStyle (_dateFieldPopupStyle) package { import mx.core.*; import mx.styles.*; public class _dateFieldPopupStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".dateFieldPopup"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".dateFieldPopup", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.dropShadowEnabled = true; this.backgroundColor = 0xFFFFFF; this.borderThickness = 0; }; }; } } }//package
Section 248
//_errorTipStyle (_errorTipStyle) package { import mx.core.*; import mx.styles.*; public class _errorTipStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".errorTip"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".errorTip", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.fontWeight = "bold"; this.borderStyle = "errorTipRight"; this.paddingTop = 4; this.borderColor = 13510953; this.color = 0xFFFFFF; this.fontSize = 9; this.shadowColor = 0; this.paddingLeft = 4; this.paddingBottom = 4; this.paddingRight = 4; }; }; } } }//package
Section 249
//_globalStyle (_globalStyle) package { import mx.core.*; import mx.styles.*; import mx.skins.halo.*; public class _globalStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration("global"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration("global", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.fillColor = 0xFFFFFF; this.kerning = false; this.iconColor = 0x111111; this.textRollOverColor = 2831164; this.horizontalAlign = "left"; this.shadowCapColor = 14015965; this.backgroundAlpha = 1; this.filled = true; this.textDecoration = "none"; this.roundedBottomCorners = true; this.fontThickness = 0; this.focusBlendMode = "normal"; this.fillColors = [0xFFFFFF, 0xCCCCCC, 0xFFFFFF, 0xEEEEEE]; this.horizontalGap = 8; this.borderCapColor = 9542041; this.buttonColor = 7305079; this.indentation = 17; this.selectionDisabledColor = 0xDDDDDD; this.closeDuration = 250; this.embedFonts = false; this.paddingTop = 0; this.letterSpacing = 0; this.focusAlpha = 0.4; this.bevel = true; this.fontSize = 10; this.shadowColor = 0xEEEEEE; this.borderAlpha = 1; this.paddingLeft = 0; this.fontWeight = "normal"; this.indicatorGap = 14; this.focusSkin = HaloFocusRect; this.dropShadowEnabled = false; this.leading = 2; this.borderSkin = HaloBorder; this.fontSharpness = 0; this.modalTransparencyDuration = 100; this.borderThickness = 1; this.backgroundSize = "auto"; this.borderStyle = "inset"; this.borderColor = 12040892; this.fontAntiAliasType = "advanced"; this.errorColor = 0xFF0000; this.shadowDistance = 2; this.horizontalGridLineColor = 0xF7F7F7; this.stroked = false; this.modalTransparencyColor = 0xDDDDDD; this.cornerRadius = 0; this.verticalAlign = "top"; this.textIndent = 0; this.fillAlphas = [0.6, 0.4, 0.75, 0.65]; this.verticalGridLineColor = 14015965; this.themeColor = 40447; this.version = "3.0.0"; this.shadowDirection = "center"; this.modalTransparency = 0.5; this.repeatInterval = 35; this.openDuration = 250; this.textAlign = "left"; this.fontFamily = "Verdana"; this.textSelectedColor = 2831164; this.paddingBottom = 0; this.strokeWidth = 1; this.fontGridFitType = "pixel"; this.horizontalGridLines = false; this.useRollOver = true; this.verticalGridLines = true; this.repeatDelay = 500; this.fontStyle = "normal"; this.dropShadowColor = 0; this.focusThickness = 2; this.verticalGap = 6; this.disabledColor = 11187123; this.paddingRight = 0; this.focusRoundedCorners = "tl tr bl br"; this.borderSides = "left top right bottom"; this.disabledIconColor = 0x999999; this.modalTransparencyBlur = 3; this.color = 734012; this.selectionDuration = 250; this.highlightAlphas = [0.3, 0]; }; }; } } }//package
Section 250
//_headerDateTextStyle (_headerDateTextStyle) package { import mx.core.*; import mx.styles.*; public class _headerDateTextStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".headerDateText"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".headerDateText", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.fontWeight = "bold"; this.textAlign = "center"; }; }; } } }//package
Section 251
//_headerDragProxyStyleStyle (_headerDragProxyStyleStyle) package { import mx.core.*; import mx.styles.*; public class _headerDragProxyStyleStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".headerDragProxyStyle"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".headerDragProxyStyle", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.fontWeight = "bold"; }; }; } } }//package
Section 252
//_linkButtonStyleStyle (_linkButtonStyleStyle) package { import mx.core.*; import mx.styles.*; public class _linkButtonStyleStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".linkButtonStyle"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".linkButtonStyle", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.paddingTop = 2; this.paddingLeft = 2; this.paddingBottom = 2; this.paddingRight = 2; }; }; } } }//package
Section 253
//_opaquePanelStyle (_opaquePanelStyle) package { import mx.core.*; import mx.styles.*; public class _opaquePanelStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".opaquePanel"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".opaquePanel", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.borderColor = 0xFFFFFF; this.backgroundColor = 0xFFFFFF; this.headerColors = [0xE7E7E7, 0xD9D9D9]; this.footerColors = [0xE7E7E7, 0xC7C7C7]; this.borderAlpha = 1; }; }; } } }//package
Section 254
//_PanelStyle (_PanelStyle) package { import mx.core.*; import mx.styles.*; import mx.skins.halo.*; public class _PanelStyle { public static function init(_arg1:IFlexModuleFactory):void{ var effects:Array; var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration("Panel"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration("Panel", style, false); effects = style.mx_internal::effects; if (!effects){ effects = (style.mx_internal::effects = new Array()); }; effects.push("resizeEndEffect"); effects.push("resizeStartEffect"); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.statusStyleName = "windowStatus"; this.borderStyle = "default"; this.paddingTop = 0; this.borderColor = 0xE2E2E2; this.backgroundColor = 0xFFFFFF; this.cornerRadius = 4; this.titleBackgroundSkin = TitleBackground; this.borderAlpha = 0.4; this.borderThicknessTop = 2; this.paddingLeft = 0; this.resizeEndEffect = "Dissolve"; this.paddingRight = 0; this.titleStyleName = "windowStyles"; this.roundedBottomCorners = false; this.borderThicknessRight = 10; this.dropShadowEnabled = true; this.resizeStartEffect = "Dissolve"; this.borderSkin = PanelSkin; this.borderThickness = 0; this.borderThicknessLeft = 10; this.paddingBottom = 0; }; }; } } }//package
Section 255
//_plainStyle (_plainStyle) package { import mx.core.*; import mx.styles.*; public class _plainStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".plain"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".plain", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.paddingTop = 0; this.backgroundColor = 0xFFFFFF; this.backgroundImage = ""; this.horizontalAlign = "left"; this.paddingLeft = 0; this.paddingBottom = 0; this.paddingRight = 0; }; }; } } }//package
Section 256
//_popUpMenuStyle (_popUpMenuStyle) package { import mx.core.*; import mx.styles.*; public class _popUpMenuStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".popUpMenu"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".popUpMenu", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.fontWeight = "normal"; this.textAlign = "left"; }; }; } } }//package
Section 257
//_richTextEditorTextAreaStyleStyle (_richTextEditorTextAreaStyleStyle) package { import mx.core.*; import mx.styles.*; public class _richTextEditorTextAreaStyleStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".richTextEditorTextAreaStyle"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".richTextEditorTextAreaStyle", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ }; }; } } }//package
Section 258
//_swatchPanelTextFieldStyle (_swatchPanelTextFieldStyle) package { import mx.core.*; import mx.styles.*; public class _swatchPanelTextFieldStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".swatchPanelTextField"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".swatchPanelTextField", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.borderStyle = "inset"; this.borderColor = 14015965; this.highlightColor = 12897484; this.backgroundColor = 0xFFFFFF; this.shadowCapColor = 14015965; this.shadowColor = 14015965; this.paddingLeft = 5; this.buttonColor = 7305079; this.borderCapColor = 9542041; this.paddingRight = 5; }; }; } } }//package
Section 259
//_textAreaHScrollBarStyleStyle (_textAreaHScrollBarStyleStyle) package { import mx.core.*; import mx.styles.*; public class _textAreaHScrollBarStyleStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".textAreaHScrollBarStyle"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".textAreaHScrollBarStyle", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ }; }; } } }//package
Section 260
//_textAreaVScrollBarStyleStyle (_textAreaVScrollBarStyleStyle) package { import mx.core.*; import mx.styles.*; public class _textAreaVScrollBarStyleStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".textAreaVScrollBarStyle"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".textAreaVScrollBarStyle", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ }; }; } } }//package
Section 261
//_todayStyleStyle (_todayStyleStyle) package { import mx.core.*; import mx.styles.*; public class _todayStyleStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".todayStyle"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".todayStyle", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.color = 0xFFFFFF; this.textAlign = "center"; }; }; } } }//package
Section 262
//_weekDayStyleStyle (_weekDayStyleStyle) package { import mx.core.*; import mx.styles.*; public class _weekDayStyleStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".weekDayStyle"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".weekDayStyle", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.fontWeight = "bold"; this.textAlign = "center"; }; }; } } }//package
Section 263
//_windowStatusStyle (_windowStatusStyle) package { import mx.core.*; import mx.styles.*; public class _windowStatusStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".windowStatus"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".windowStatus", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.color = 0x666666; }; }; } } }//package
Section 264
//_windowStylesStyle (_windowStylesStyle) package { import mx.core.*; import mx.styles.*; public class _windowStylesStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".windowStyles"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".windowStyles", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.fontWeight = "bold"; }; }; } } }//package
Section 265
//CONFIG (CONFIG) package { public class CONFIG { public static const MOCHIBOT:Boolean = true; public static const ADS_DISABLED:Array = ["kongregate"]; public static const HIDE_CONTEXT_MENU:Boolean = false; public static const SITELOCK:Boolean = false; public static const SCREEN_WIDTH:Number = 640; public static const SCREEN_HEIGHT:Number = 480; public static const CPM_STAR_PRELOAD:String = "1047QFADAA10F"; public static const CPM_STAR_INTERLEVEL:String = "1048QDEFFF78C"; public static const ALLOWED_SITE:String = "googamez"; public static var GAME_OPTIONS:Object = {id:"b89714bb1e889e4e", res:"640x480", no_bg:true, color:6975996, background:10924799}; } }//package
Section 266
//DEF (DEF) package { import ShooterLib.AI.*; public class DEF { public static const CHEATS:Boolean = false; public static const DEFENSE_COEFF:Number = -800; public static const HERO_HEIGHT:Number = 40; public static const LEFT_PLAYER_ADV_X:Number = 245; public static const PANEL_SCORE_HEIGHT:Number = 40; public static const MENU_BUTTON_INITIAL_Y:Number = 150; public static const LEFT_GOALKEEKER_Y:Number = 200; public static const SCREEN_WIDTH:Number = 640; public static const BALL_Y:Number = 200; public static const BALL_X:Number = 320; public static const HERO_WIDTH:Number = 20; public static const RIGHT_PLAYER_ADV_BACKUP_X:Number = 470; public static const RIGHT_PLAYER_ADV_X:Number = 395; public static const REWARD_COLOR:Number = 0xFF0000; public static const MENU_BUTTON_WIDTH:Number = 222; public static const ATTACK_COEFF:Number = 1.7; public static const MAX_ANGULAR_VELOCITY:Number = 30; public static const DEBUG_TURRETS:Boolean = false; public static const SCREEN_HEIGHT:Number = 480; public static const RIGHT_PLAYER_X:Number = 483; public static const RIGHT_PLAYER_Y:Number = 200; public static const REWARD_FONT:String = "lcd"; public static const MENU_BUTTON_GLOW_COLOR:Number = 0xFFFFFF; public static const RIGHT_LOGO_X:Number = 503; public static const RIGHT_LOGO_Y:Number = 15; public static const MENU_BUTTON_X:Number = 398; public static const USE_SATELLITES:Boolean = false; public static const RIGHT_PLAYER_BACKUP_X:Number = 533; public static const SKIP_SEASON_MATCHES:Boolean = false; public static const DEFENDER_COEFF:Number = -200; public static const LEFT_PLAYER_BACKUP_X:Number = 107; public static const MOUSE_CONTROL:Boolean = true; public static const RIGHT_SCORE_Y:Number = 20; public static const SKIP_KNOCKOUT_MATCHES:Boolean = false; public static const RIGHT_SCORE_X:Number = 390; public static const MAP_HEIGHT:Number = 400; public static const LEFT_SCORE_X:Number = 175; public static const LEFT_SCORE_Y:Number = 20; public static const LEFT_GOALKEEPER_X:Number = 0; public static const TEAMS:Array = new Array({name:"Algeria", graphicSet:"TEAM1", color:0xFFFFFF, backgroundMask:1, handycap:500, speed:3, mass:5, goalkeeper:3, shoot:4, AIType:BaseSportAI.TYPE_DEFENSIVE, satellites:[{x:150, y:100}, {x:150, y:300}, {x:200, y:200}], customSatellites1:[], customSatellites2:[], customSatellites3:[], locked:false, unlockDesc:""}, {name:"Argentina", graphicSet:"TEAM2", color:7711451, backgroundMask:2, handycap:9, speed:9, mass:7, goalkeeper:8, shoot:10, AIType:BaseSportAI.TYPE_AGGRESSIVE, satellites:[{x:200, y:100}, {x:200, y:300}], customSatellites1:[], customSatellites2:[], customSatellites3:[], locked:false, unlockDesc:""}, {name:"Australia", graphicSet:"TEAM3", color:16568598, backgroundMask:10, handycap:125, speed:4, mass:5, goalkeeper:5, shoot:5, AIType:BaseSportAI.TYPE_DEFENSIVE, satellites:[{x:200, y:100}, {x:200, y:300}], customSatellites1:[], customSatellites2:[], customSatellites3:[], locked:false, unlockDesc:"drawing a match with the\nNiynay FC in Season Mode"}, {name:"Brazil", graphicSet:"TEAM4", color:0xF8C300, backgroundMask:3, handycap:5, speed:10, mass:7, goalkeeper:9, shoot:10, AIType:BaseSportAI.TYPE_AGGRESSIVE, satellites:[{x:200, y:100}, {x:200, y:300}], customSatellites1:[], customSatellites2:[], customSatellites3:[], locked:false, unlockDesc:"winning any match by more than\n5 goals difference in Season Mode"}, {name:"Cameroon", graphicSet:"TEAM5", color:31326, backgroundMask:4, handycap:110, speed:5, mass:5, goalkeeper:4, shoot:7, AIType:BaseSportAI.TYPE_AGGRESSIVE, satellites:[{x:200, y:100}, {x:200, y:300}], customSatellites1:[], customSatellites2:[], customSatellites3:[], locked:false, unlockDesc:"winning by 3 goals or more\nover the Angry Apples in Season Mode"}, {name:"Chile", graphicSet:"TEAM6", color:13970206, backgroundMask:9, handycap:40, speed:7, mass:7, goalkeeper:9, shoot:7, AIType:BaseSportAI.TYPE_TACTIC, satellites:[{x:200, y:100}, {x:200, y:300}], customSatellites1:[], customSatellites2:[], customSatellites3:[], locked:false, unlockDesc:"having a goal difference of +10\nor more in a Season"}, {name:"Cote d'Ivoire", graphicSet:"TEAM7", color:0xF77F00, backgroundMask:5, handycap:20, speed:8, mass:7, goalkeeper:7, shoot:8, AIType:BaseSportAI.TYPE_AGGRESSIVE, satellites:[{x:200, y:100}, {x:200, y:300}], customSatellites1:[], customSatellites2:[], customSatellites3:[], locked:false, unlockDesc:"winning a Season"}, {name:"Denmark", graphicSet:"TEAM8", color:13634611, backgroundMask:6, handycap:66, speed:4, mass:5, goalkeeper:6, shoot:5, AIType:BaseSportAI.TYPE_DEFENSIVE, satellites:[{x:200, y:100}, {x:200, y:300}], customSatellites1:[], customSatellites2:[], customSatellites3:[], locked:false, unlockDesc:"beating the Raptors with\nthe Colibries in a Season match"}, {name:"England", graphicSet:"TEAM9", color:0xFFFFFF, backgroundMask:8, handycap:6, speed:8, mass:7, goalkeeper:10, shoot:9, AIType:BaseSportAI.TYPE_DEFENSIVE, satellites:[{x:200, y:100}, {x:200, y:300}], customSatellites1:[], customSatellites2:[], customSatellites3:[], locked:false, unlockDesc:"winning all matches\nin a Season"}, {name:"France", graphicSet:"TEAM10", color:9109, backgroundMask:7, handycap:12, speed:8, mass:8, goalkeeper:9, shoot:8, AIType:BaseSportAI.TYPE_TACTIC, satellites:[{x:200, y:100}, {x:200, y:300}], customSatellites1:[], customSatellites2:[], customSatellites3:[], locked:false, unlockDesc:"finishing a Season\nwith no goals against"}, {name:"Germany", graphicSet:"TEAM11", color:0xFFFFFF, backgroundMask:1, handycap:12, speed:7, mass:7, goalkeeper:8, shoot:10, AIType:BaseSportAI.TYPE_TACTIC, satellites:[{x:150, y:100}, {x:150, y:300}, {x:200, y:200}], customSatellites1:[], customSatellites2:[], customSatellites3:[], locked:false, unlockDesc:""}, {name:"Ghana", graphicSet:"TEAM12", color:0xFFFFFF, backgroundMask:2, handycap:66, speed:5, mass:6, goalkeeper:4, shoot:6, AIType:BaseSportAI.TYPE_AGGRESSIVE, satellites:[{x:200, y:100}, {x:200, y:300}], customSatellites1:[], customSatellites2:[], customSatellites3:[], locked:false, unlockDesc:""}, {name:"Greece", graphicSet:"TEAM13", color:0xFFFFFF, backgroundMask:10, handycap:66, speed:5, mass:5, goalkeeper:5, shoot:5, AIType:BaseSportAI.TYPE_DEFENSIVE, satellites:[{x:200, y:100}, {x:200, y:300}], customSatellites1:[], customSatellites2:[], customSatellites3:[], locked:false, unlockDesc:"drawing a match with the\nNiynay FC in Season Mode"}, {name:"Honduras", graphicSet:"TEAM14", color:0xFFFFFF, backgroundMask:3, handycap:350, speed:4, mass:6, goalkeeper:3, shoot:5, AIType:BaseSportAI.TYPE_DEFENSIVE, satellites:[{x:200, y:100}, {x:200, y:300}], customSatellites1:[], customSatellites2:[], customSatellites3:[], locked:false, unlockDesc:"winning any match by more than\n5 goals difference in Season Mode"}, {name:"Italy", graphicSet:"TEAM15", color:1791, backgroundMask:4, handycap:10, speed:8, mass:7, goalkeeper:7, shoot:9, AIType:BaseSportAI.TYPE_AGGRESSIVE, satellites:[{x:200, y:100}, {x:200, y:300}], customSatellites1:[], customSatellites2:[], customSatellites3:[], locked:false, unlockDesc:"winning by 3 goals or more\nover the Angry Apples in Season Mode"}, {name:"Japan", graphicSet:"TEAM16", color:0xFFFFFF, backgroundMask:9, handycap:150, speed:6, mass:3, goalkeeper:4, shoot:4, AIType:BaseSportAI.TYPE_TACTIC, satellites:[{x:200, y:100}, {x:200, y:300}], customSatellites1:[], customSatellites2:[], customSatellites3:[], locked:false, unlockDesc:"having a goal difference of +10\nor more in a Season"}, {name:"Mexico", graphicSet:"TEAM17", color:26695, backgroundMask:5, handycap:66, speed:6, mass:5, goalkeeper:5, shoot:6, AIType:BaseSportAI.TYPE_AGGRESSIVE, satellites:[{x:200, y:100}, {x:200, y:300}], customSatellites1:[], customSatellites2:[], customSatellites3:[], locked:false, unlockDesc:"winning a Season"}, {name:"Netherlands", graphicSet:"TEAM18", color:0xFF9000, backgroundMask:6, handycap:12, speed:7, mass:6, goalkeeper:8, shoot:8, AIType:BaseSportAI.TYPE_DEFENSIVE, satellites:[{x:200, y:100}, {x:200, y:300}], customSatellites1:[], customSatellites2:[], customSatellites3:[], locked:false, unlockDesc:"beating the Raptors with\nthe Colibries in a Season match"}, {name:"New Zealand", graphicSet:"TEAM19", color:9341, backgroundMask:8, handycap:750, speed:2, mass:7, goalkeeper:2, shoot:2, AIType:BaseSportAI.TYPE_DEFENSIVE, satellites:[{x:200, y:100}, {x:200, y:300}], customSatellites1:[], customSatellites2:[], customSatellites3:[], locked:false, unlockDesc:"winning all matches\nin a Season"}, {name:"Nigeria", graphicSet:"TEAM20", color:34641, backgroundMask:7, handycap:80, speed:6, mass:7, goalkeeper:4, shoot:3, AIType:BaseSportAI.TYPE_AGGRESSIVE, satellites:[{x:200, y:100}, {x:200, y:300}], customSatellites1:[], customSatellites2:[], customSatellites3:[], locked:false, unlockDesc:"finishing a Season\nwith no goals against"}, {name:"North Korea", graphicSet:"TEAM21", color:15539493, backgroundMask:1, handycap:500, speed:6, mass:3, goalkeeper:2, shoot:3, AIType:BaseSportAI.TYPE_DEFENSIVE, satellites:[{x:150, y:100}, {x:150, y:300}, {x:200, y:200}], customSatellites1:[], customSatellites2:[], customSatellites3:[], locked:false, unlockDesc:""}, {name:"Paraguay", graphicSet:"TEAM22", color:16195102, backgroundMask:2, handycap:50, speed:7, mass:6, goalkeeper:7, shoot:8, AIType:BaseSportAI.TYPE_AGGRESSIVE, satellites:[{x:200, y:100}, {x:200, y:300}], customSatellites1:[], customSatellites2:[], customSatellites3:[], locked:false, unlockDesc:""}, {name:"Portugal", graphicSet:"TEAM23", color:15539246, backgroundMask:10, handycap:25, speed:9, mass:6, goalkeeper:6, shoot:9, AIType:BaseSportAI.TYPE_TACTIC, satellites:[{x:200, y:100}, {x:200, y:300}], customSatellites1:[], customSatellites2:[], customSatellites3:[], locked:false, unlockDesc:"drawing a match with the\nNiynay FC in Season Mode"}, {name:"Serbia", graphicSet:"TEAM24", color:2441094, backgroundMask:3, handycap:66, speed:7, mass:4, goalkeeper:5, shoot:6, AIType:BaseSportAI.TYPE_AGGRESSIVE, satellites:[{x:200, y:100}, {x:200, y:300}], customSatellites1:[], customSatellites2:[], customSatellites3:[], locked:false, unlockDesc:"winning any match by more than\n5 goals difference in Season Mode"}, {name:"Slovakia", graphicSet:"TEAM25", color:741026, backgroundMask:4, handycap:250, speed:4, mass:5, goalkeeper:4, shoot:3, AIType:BaseSportAI.TYPE_DEFENSIVE, satellites:[{x:200, y:100}, {x:200, y:300}], customSatellites1:[], customSatellites2:[], customSatellites3:[], locked:false, unlockDesc:"winning by 3 goals or more\nover the Angry Apples in Season Mode"}, {name:"Slovenia", graphicSet:"TEAM26", color:23972, backgroundMask:9, handycap:200, speed:4, mass:5, goalkeeper:3, shoot:3, AIType:BaseSportAI.TYPE_DEFENSIVE, satellites:[{x:200, y:100}, {x:200, y:300}], customSatellites1:[], customSatellites2:[], customSatellites3:[], locked:false, unlockDesc:"having a goal difference of +10\nor more in a Season"}, {name:"South Africa", graphicSet:"TEAM27", color:15380758, backgroundMask:5, handycap:125, speed:5, mass:5, goalkeeper:5, shoot:5, AIType:BaseSportAI.TYPE_DEFENSIVE, satellites:[{x:200, y:100}, {x:200, y:300}], customSatellites1:[], customSatellites2:[], customSatellites3:[], locked:false, unlockDesc:"winning a Season"}, {name:"South Korea", graphicSet:"TEAM28", color:13044784, backgroundMask:6, handycap:200, speed:6, mass:3, goalkeeper:2, shoot:3, AIType:BaseSportAI.TYPE_DEFENSIVE, satellites:[{x:200, y:100}, {x:200, y:300}], customSatellites1:[], customSatellites2:[], customSatellites3:[], locked:false, unlockDesc:"beating the Raptors with\nthe Colibries in a Season match"}, {name:"Spain", graphicSet:"TEAM29", color:12978974, backgroundMask:8, handycap:4, speed:9, mass:8, goalkeeper:10, shoot:10, AIType:BaseSportAI.TYPE_TACTIC, satellites:[{x:200, y:100}, {x:200, y:300}], customSatellites1:[], customSatellites2:[], customSatellites3:[], locked:false, unlockDesc:"winning all matches\nin a Season"}, {name:"Switzerland", graphicSet:"TEAM30", color:0xFF0000, backgroundMask:7, handycap:150, speed:4, mass:5, goalkeeper:4, shoot:4, AIType:BaseSportAI.TYPE_TACTIC, satellites:[{x:200, y:100}, {x:200, y:300}], customSatellites1:[], customSatellites2:[], customSatellites3:[], locked:false, unlockDesc:"finishing a Season\nwith no goals against"}, {name:"United States", graphicSet:"TEAM31", color:0xFFFFFF, backgroundMask:8, handycap:66, speed:3, mass:5, goalkeeper:5, shoot:5, AIType:BaseSportAI.TYPE_AGGRESSIVE, satellites:[{x:200, y:100}, {x:200, y:300}], customSatellites1:[], customSatellites2:[], customSatellites3:[], locked:false, unlockDesc:"winning all matches\nin a Season"}, {name:"Uruguay", graphicSet:"TEAM32", color:8371967, backgroundMask:7, handycap:100, speed:5, mass:6, goalkeeper:5, shoot:7, AIType:BaseSportAI.TYPE_AGGRESSIVE, satellites:[{x:200, y:100}, {x:200, y:300}], customSatellites1:[], customSatellites2:[], customSatellites3:[], locked:false, unlockDesc:"finishing a Season\nwith no goals against"}); public static const LEFT_PLAYER_ADV_BACKUP_X:Number = 170; public static const LEFT_PLAYER_X:Number = 157; public static const LEFT_PLAYER_Y:Number = 200; public static const BUTTON_BACK_Y:Number = 390; public static const BUTTON_NEXT_X:Number = 600; public static const DEBUG_FPS:Boolean = false; public static const PANEL_SCORE_WIDTH:Number = 75; public static const ABOUT_TEXT:Array = new Array({color:0xFF0000, string:"GRAVITY FOOTBALL 2: WORLD CUP 2010"}, {color:0, string:"v1.0.0"}, {color:0, string:""}, {color:5592575, string:"ilMare Games"}, {color:85, string:"http://www.ilmaregames.com.ar", url:true}, {color:0, string:""}, {color:85, string:"Programming & Game Design"}, {color:2237183, string:"Juan Ignacio Albanesi (juan@ilmaregames.com.ar)"}, {color:0, string:""}, {color:85, string:"Music"}, {color:2237183, string:"Emmanuel Graglia (emmanuel@ilmaregames.com.ar)"}, {color:2237183, string:""}); public static const RIGHT_GOALKEEPER_X:Number = 640; public static const RIGHT_GOALKEEPER_Y:Number = 200; public static const LOGO_X:Number = 320; public static const MOCHIBOT:Boolean = true; public static const SPEED_COEFF:Number = 10; public static const LOGO_Y:Number = 95; public static const BUTTON_BACK_X:Number = 40; public static const MENU_BUTTON_ALPHA:Number = 0.7; public static const BUTTON_NEXT_Y:Number = 390; public static const MASS_COEFF:Number = 10; public static const MENU_BUTTON_COLOR:Number = 16737840; public static const REWARD_FONT_SIZE:Number = 32; public static const MAP_WIDTH:Number = 640; public static const MENU_BUTTON_TEXT_SIZE:Number = 24; public static const GOOGLE_ANALYTICS:Boolean = true; public static const MENU_BUTTON_HEIGHT:Number = 40; public static const MENU_BUTTON_SPACING:Number = 60; public static const INTERLEVEL_ADS:Boolean = true; public static const LEFT_LOGO_X:Number = 87; public static const LEFT_LOGO_Y:Number = 15; public static const MENU_BUTTON_TEXT_COLOR:Number = 0xFFFFFF; public static var ANGULAR_VELOCITY_DELTA:Number = 0.25; } }//package
Section 267
//en_US$core_properties (en_US$core_properties) package { import mx.resources.*; public class en_US$core_properties extends ResourceBundle { public function en_US$core_properties(){ super("en_US", "core"); } override protected function getContent():Object{ var _local1:Object = {multipleChildSets_ClassAndInstance:"Multiple sets of visual children have been specified for this component (component definition and component instance).", truncationIndicator:"...", notExecuting:"Repeater is not executing.", versionAlreadyRead:"Compatibility version has already been read.", multipleChildSets_ClassAndSubclass:"Multiple sets of visual children have been specified for this component (base component definition and derived component definition).", viewSource:"View Source", badFile:"File does not exist.", stateUndefined:"Undefined state '{0}'.", versionAlreadySet:"Compatibility version has already been set."}; return (_local1); } } }//package
Section 268
//en_US$skins_properties (en_US$skins_properties) package { import mx.resources.*; public class en_US$skins_properties extends ResourceBundle { public function en_US$skins_properties(){ super("en_US", "skins"); } override protected function getContent():Object{ var _local1:Object = {notLoaded:"Unable to load '{0}'."}; return (_local1); } } }//package
Section 269
//en_US$styles_properties (en_US$styles_properties) package { import mx.resources.*; public class en_US$styles_properties extends ResourceBundle { public function en_US$styles_properties(){ super("en_US", "styles"); } override protected function getContent():Object{ var _local1:Object = {unableToLoad:"Unable to load style({0}): {1}."}; return (_local1); } } }//package
Section 270
//FPS (FPS) package { import flash.utils.*; import flash.text.*; public class FPS extends TextField { private var _lastTime:Number;// = -1 private var _accumTime:Number;// = 0 public function update():void{ var _local1:Number = getTimer(); var _local2:Number = (_local1 - _lastTime); _lastTime = _local1; _accumTime = (_accumTime + _local2); if ((((_accumTime > 1000)) && ((_local2 > 0)))){ text = ("FPS: " + (1000 / _local2).toFixed(0)); _accumTime = 0; }; } } }//package
Section 271
//IMG (IMG) package { import flash.display.*; import flash.utils.*; public class IMG { private var _images:Dictionary; public static var MENU_1P_VS_2P:Class = IMG_MENU_1P_VS_2P; public static var TEAM25_GOALKEEPER:Class = IMG_TEAM25_GOALKEEPER; public static var TEAM2_MINI_FLAG:Class = IMG_TEAM2_MINI_FLAG; public static var TEAM12_LOGO:Class = IMG_TEAM12_LOGO; public static var MENU_BACKGROUND:Class = IMG_MENU_BACKGROUND; public static var SPONSOR_BANNER:Class = IMG_SPONSOR_BANNER; public static var TEAM5_LOGO:Class = IMG_TEAM5_LOGO; public static var TEAM11_GOALKEEPER:Class = IMG_TEAM11_GOALKEEPER; public static var MENU_MORE_GAMES:Class = IMG_MENU_MORE_GAMES; public static var TEAM28_GOALKEEPER:Class = IMG_TEAM28_GOALKEEPER; public static var TEAM14_GOALKEEPER:Class = IMG_TEAM14_GOALKEEPER; public static var STATS_INDICATOR_REFLECTION:Class = IMG_STATS_INDICATOR_REFLECTION; public static var TEAM17_GOALKEEPER:Class = IMG_TEAM17_GOALKEEPER; public static var TEAM5_MINI_FLAG:Class = IMG_TEAM5_MINI_FLAG; public static var MENU_CHOOSE_TEAMS:Class = IMG_MENU_CHOOSE_TEAMS; public static var TEAM28_ATTACKER:Class = IMG_TEAM28_ATTACKER; public static var TEAM9_ATTACKER:Class = IMG_TEAM9_ATTACKER; public static var TEAM32_ATTACKER:Class = IMG_TEAM32_ATTACKER; public static var TEAM19_LOGO:Class = IMG_TEAM19_LOGO; public static var MESSAGE_GOAL:Class = IMG_MESSAGE_GOAL; public static var MESSAGE_PENALTIES:Class = IMG_MESSAGE_PENALTIES; public static var TEAM20_MINI_FLAG:Class = IMG_TEAM20_MINI_FLAG; public static var MENU_REMATCH:Class = IMG_MENU_REMATCH; public static var TEAM17_ATTACKER:Class = IMG_TEAM17_ATTACKER; public static var MENU_LESS:Class = IMG_MENU_LESS; public static var TEAM_NAME_REFLECTION:Class = IMG_TEAM_NAME_REFLECTION; public static var TEAM2_ATTACKER:Class = IMG_TEAM2_ATTACKER; public static var TEAM21_ATTACKER:Class = IMG_TEAM21_ATTACKER; public static var GRAY_BACKGROUND:Class = IMG_GRAY_BACKGROUND; public static var TEAM24_LOGO:Class = IMG_TEAM24_LOGO; public static var AREA:Class = IMG_AREA; public static var TEAM8_MINI_FLAG:Class = IMG_TEAM8_MINI_FLAG; public static var TEAM12_MINI_FLAG:Class = IMG_TEAM12_MINI_FLAG; public static var MENU_ABOUT:Class = IMG_MENU_ABOUT; public static var TEAM31_MINI_FLAG:Class = IMG_TEAM31_MINI_FLAG; public static var TEAM10_ATTACKER:Class = IMG_TEAM10_ATTACKER; public static var MENU_PLAYGROUND:Class = IMG_MENU_PLAYGROUND; public static var MENU_CHECKED:Class = IMG_MENU_CHECKED; public static var TEAM13_LOGO:Class = IMG_TEAM13_LOGO; public static var TEAM6_LOGO:Class = IMG_TEAM6_LOGO; public static var TEAM23_MINI_FLAG:Class = IMG_TEAM23_MINI_FLAG; public static var TOP_PANEL_PLAYGROUND:Class = IMG_TOP_PANEL_PLAYGROUND; public static var ARROW_HELPER:Class = IMG_ARROW_HELPER; public static var MESSAGE_SECOND_HALF:Class = IMG_MESSAGE_SECOND_HALF; public static var MENU_TOURNAMENT:Class = IMG_MENU_TOURNAMENT; public static var MENU_PANEL_BUTTON:Class = IMG_MENU_PANEL_BUTTON; public static var TEAM2_GOALKEEPER:Class = IMG_TEAM2_GOALKEEPER; public static var TEAM15_MINI_FLAG:Class = IMG_TEAM15_MINI_FLAG; public static var BUTTON_LEFT_ARROW:Class = IMG_BUTTON_LEFT_ARROW; public static var MENU_NEW_TOURNAMENT:Class = IMG_MENU_NEW_TOURNAMENT; public static var TEAM5_GOALKEEPER:Class = IMG_TEAM5_GOALKEEPER; public static var SPEAKER_OFF:Class = IMG_SPEAKER_OFF; public static var MESSAGE_TIME_UP:Class = IMG_MESSAGE_TIME_UP; public static var TEAM26_MINI_FLAG:Class = IMG_TEAM26_MINI_FLAG; public static var TEAM6_ATTACKER:Class = IMG_TEAM6_ATTACKER; public static var TEAM25_ATTACKER:Class = IMG_TEAM25_ATTACKER; public static var TEAM8_GOALKEEPER:Class = IMG_TEAM8_GOALKEEPER; public static var MASKED_EXPLODE:Class = IMG_MASKED_EXPLODE; public static var TEAM31_GOALKEEPER:Class = IMG_TEAM31_GOALKEEPER; public static var TEAM18_MINI_FLAG:Class = IMG_TEAM18_MINI_FLAG; public static var SEASON_WON:Class = IMG_SEASON_WON; public static var TEAM14_ATTACKER:Class = IMG_TEAM14_ATTACKER; public static var TEAM25_LOGO:Class = IMG_TEAM25_LOGO; public static var BACKGROUND:Class = IMG_BACKGROUND; public static var TRAINING_PANEL_BUTTON:Class = IMG_TRAINING_PANEL_BUTTON; public static var MESSAGE_KICK_OFF:Class = IMG_MESSAGE_KICK_OFF; public static var TEAM20_GOALKEEPER:Class = IMG_TEAM20_GOALKEEPER; public static var TEAM29_MINI_FLAG:Class = IMG_TEAM29_MINI_FLAG; public static var ABOUT_BACKGROUND:Class = IMG_ABOUT_BACKGROUND; public static var MENU_MAIN_MENU:Class = IMG_MENU_MAIN_MENU; public static var TEAM23_GOALKEEPER:Class = IMG_TEAM23_GOALKEEPER; public static var TEAM1_MINI_FLAG:Class = IMG_TEAM1_MINI_FLAG; public static var TEAM7_LOGO:Class = IMG_TEAM7_LOGO; public static var TEAM14_LOGO:Class = IMG_TEAM14_LOGO; public static var TEAM30_LOGO:Class = IMG_TEAM30_LOGO; public static var MENU_NEW_SEASON:Class = IMG_MENU_NEW_SEASON; public static var TEAM26_GOALKEEPER:Class = IMG_TEAM26_GOALKEEPER; public static var TEAM12_GOALKEEPER:Class = IMG_TEAM12_GOALKEEPER; public static var BACKGROUND_PLAYGROUND:Class = IMG_BACKGROUND_PLAYGROUND; public static var TEAM29_ATTACKER:Class = IMG_TEAM29_ATTACKER; public static var LOGO_PANEL_REFLECTION:Class = IMG_LOGO_PANEL_REFLECTION; public static var TEAM15_GOALKEEPER:Class = IMG_TEAM15_GOALKEEPER; public static var TEAM29_GOALKEEPER:Class = IMG_TEAM29_GOALKEEPER; public static var TEAM18_ATTACKER:Class = IMG_TEAM18_ATTACKER; public static var TEAM4_MINI_FLAG:Class = IMG_TEAM4_MINI_FLAG; public static var TEAM1_LOGO:Class = IMG_TEAM1_LOGO; public static var TEAM22_ATTACKER:Class = IMG_TEAM22_ATTACKER; public static var TEAM18_GOALKEEPER:Class = IMG_TEAM18_GOALKEEPER; public static var PREVIOUS_PAGE_BUTTON:Class = IMG_PREVIOUS_PAGE_BUTTON; public static var TEAM3_ATTACKER:Class = IMG_TEAM3_ATTACKER; public static var LOGO:Class = IMG_LOGO; public static var INTERLEVEL_BACKGROUND:Class = IMG_INTERLEVEL_BACKGROUND; public static var TEAM11_ATTACKER:Class = IMG_TEAM11_ATTACKER; public static var MENU_SEASON:Class = IMG_MENU_SEASON; public static var POST_MATCH_BACKGROUND:Class = IMG_POST_MATCH_BACKGROUND; public static var TEAM26_LOGO:Class = IMG_TEAM26_LOGO; public static var TEAM30_MINI_FLAG:Class = IMG_TEAM30_MINI_FLAG; public static var TEAM11_MINI_FLAG:Class = IMG_TEAM11_MINI_FLAG; public static var MENU_QUICK_MATCH:Class = IMG_MENU_QUICK_MATCH; public static var BUTTON_BACK:Class = IMG_BUTTON_BACK; public static var MENU_PLAY_MORE_GAMES_BUTTON:Class = IMG_MENU_PLAY_MORE_GAMES_BUTTON; public static var TEAM_LOCKED_MESSAGE:Class = IMG_TEAM_LOCKED_MESSAGE; public static var TEAM7_MINI_FLAG:Class = IMG_TEAM7_MINI_FLAG; public static var MENU_RESUME_GAME:Class = IMG_MENU_RESUME_GAME; public static var TEAM15_LOGO:Class = IMG_TEAM15_LOGO; public static var TEAM31_LOGO:Class = IMG_TEAM31_LOGO; public static var BALL_0:Class = IMG_BALL_0; public static var BALL_1:Class = IMG_BALL_1; public static var TEAM22_MINI_FLAG:Class = IMG_TEAM22_MINI_FLAG; public static var BALL_3:Class = IMG_BALL_3; public static var BALL_4:Class = IMG_BALL_4; public static var BALL_5:Class = IMG_BALL_5; public static var TEAM8_LOGO:Class = IMG_TEAM8_LOGO; public static var BALL_7:Class = IMG_BALL_7; public static var BALL_8:Class = IMG_BALL_8; public static var BALL_2:Class = IMG_BALL_2; private static var _instance:IMG = null; public static var BALL_6:Class = IMG_BALL_6; public static var BALL:Class = IMG_BALL; public static var TEAM_NULL_LOGO:Class = IMG_TEAM_NULL_LOGO; public static var OPTIONS_PANEL_BUTTON:Class = IMG_OPTIONS_PANEL_BUTTON; public static var TEAM20_LOGO:Class = IMG_TEAM20_LOGO; public static var PLAYER_INDICATOR:Class = IMG_PLAYER_INDICATOR; public static var TEAM26_ATTACKER:Class = IMG_TEAM26_ATTACKER; public static var TEAM14_MINI_FLAG:Class = IMG_TEAM14_MINI_FLAG; public static var TEAM0_GOALKEEPER:Class = IMG_TEAM0_GOALKEEPER; public static var TEAM7_ATTACKER:Class = IMG_TEAM7_ATTACKER; public static var TEAM3_GOALKEEPER:Class = IMG_TEAM3_GOALKEEPER; public static var TEAM15_ATTACKER:Class = IMG_TEAM15_ATTACKER; public static var MENU_MORE:Class = IMG_MENU_MORE; public static var TEAM2_LOGO:Class = IMG_TEAM2_LOGO; public static var SPEAKER_ON:Class = IMG_SPEAKER_ON; public static var TEAM0_ATTACKER:Class = IMG_TEAM0_ATTACKER; public static var PRE_MATCH_BACKGROUND:Class = IMG_PRE_MATCH_BACKGROUND; public static var TEAM30_ATTACKER:Class = IMG_TEAM30_ATTACKER; public static var BACKGROUND_MASK_10:Class = IMG_BACKGROUND_MASK_10; public static var TEAM6_GOALKEEPER:Class = IMG_TEAM6_GOALKEEPER; public static var TEAM25_MINI_FLAG:Class = IMG_TEAM25_MINI_FLAG; public static var LOGO_PANEL:Class = IMG_LOGO_PANEL; public static var TUTORIAL_KEYS:Class = IMG_TUTORIAL_KEYS; public static var BUTTON_RIGHT_ARROW:Class = IMG_BUTTON_RIGHT_ARROW; public static var TOP_PANEL:Class = IMG_TOP_PANEL; public static var TEAM17_MINI_FLAG:Class = IMG_TEAM17_MINI_FLAG; public static var TEAM9_GOALKEEPER:Class = IMG_TEAM9_GOALKEEPER; public static var TEAM_NULL_ATTACKER:Class = IMG_TEAM_NULL_ATTACKER; public static var TEAM27_LOGO:Class = IMG_TEAM27_LOGO; public static var LEVEL_INDICATOR_REFLECTION:Class = IMG_LEVEL_INDICATOR_REFLECTION; public static var TEAM32_GOALKEEPER:Class = IMG_TEAM32_GOALKEEPER; public static var TEAM28_MINI_FLAG:Class = IMG_TEAM28_MINI_FLAG; public static var SEASON_RESULTS:Class = IMG_SEASON_RESULTS; public static var TEAM_UNLOCKED:Class = IMG_TEAM_UNLOCKED; public static var TEAM16_LOGO:Class = IMG_TEAM16_LOGO; public static var TEAM9_LOGO:Class = IMG_TEAM9_LOGO; public static var TEAM21_GOALKEEPER:Class = IMG_TEAM21_GOALKEEPER; public static var KNOCKOUT_RESULTS:Class = IMG_KNOCKOUT_RESULTS; public static var TEAM32_LOGO:Class = IMG_TEAM32_LOGO; public static var ILMARE_BANNER:Class = IMG_ILMARE_BANNER; public static var MENU_FRONT_END:Class = IMG_MENU_FRONT_END; public static var TEAM10_GOALKEEPER:Class = IMG_TEAM10_GOALKEEPER; public static var TEAM24_GOALKEEPER:Class = IMG_TEAM24_GOALKEEPER; public static var TEAM21_LOGO:Class = IMG_TEAM21_LOGO; public static var TEAM19_ATTACKER:Class = IMG_TEAM19_ATTACKER; public static var TEAM23_ATTACKER:Class = IMG_TEAM23_ATTACKER; public static var TEAM4_ATTACKER:Class = IMG_TEAM4_ATTACKER; public static var TEAM27_GOALKEEPER:Class = IMG_TEAM27_GOALKEEPER; public static var TEAM13_GOALKEEPER:Class = IMG_TEAM13_GOALKEEPER; public static var LCD_FONT_SMALL:Class = IMG_LCD_FONT_SMALL; public static var TEAM3_MINI_FLAG:Class = IMG_TEAM3_MINI_FLAG; public static var TEAM10_LOGO:Class = IMG_TEAM10_LOGO; public static var TEAM3_LOGO:Class = IMG_TEAM3_LOGO; public static var TEAM12_ATTACKER:Class = IMG_TEAM12_ATTACKER; public static var LEVEL_INDICATOR:Class = IMG_LEVEL_INDICATOR; public static var TEAM16_GOALKEEPER:Class = IMG_TEAM16_GOALKEEPER; public static var MESSAGE_FINAL_WHISTLE:Class = IMG_MESSAGE_FINAL_WHISTLE; public static var TEAM19_GOALKEEPER:Class = IMG_TEAM19_GOALKEEPER; public static var SEASON_LOST:Class = IMG_SEASON_LOST; public static var TEAM28_LOGO:Class = IMG_TEAM28_LOGO; public static var SELECT_TEAM_BACKGROUND:Class = IMG_SELECT_TEAM_BACKGROUND; public static var TEAM10_MINI_FLAG:Class = IMG_TEAM10_MINI_FLAG; public static var TEAM6_MINI_FLAG:Class = IMG_TEAM6_MINI_FLAG; public static var LEGIBLE_FONT_BIG:Class = IMG_LEGIBLE_FONT_BIG; public static var MENU_HIGHSCORES:Class = IMG_MENU_HIGHSCORES; public static var TEAM17_LOGO:Class = IMG_TEAM17_LOGO; public static var TEAM_LOCKED:Class = IMG_TEAM_LOCKED; public static var TOP_PANEL_REFLECTION:Class = IMG_TOP_PANEL_REFLECTION; public static var TEAM21_MINI_FLAG:Class = IMG_TEAM21_MINI_FLAG; public static var TEAM27_ATTACKER:Class = IMG_TEAM27_ATTACKER; public static var TEAM8_ATTACKER:Class = IMG_TEAM8_ATTACKER; public static var TEAM31_ATTACKER:Class = IMG_TEAM31_ATTACKER; public static var TEAM22_LOGO:Class = IMG_TEAM22_LOGO; public static var TEAM9_MINI_FLAG:Class = IMG_TEAM9_MINI_FLAG; public static var TEAM16_ATTACKER:Class = IMG_TEAM16_ATTACKER; public static var TEAM32_MINI_FLAG:Class = IMG_TEAM32_MINI_FLAG; public static var TEAM20_ATTACKER:Class = IMG_TEAM20_ATTACKER; public static var TEAM13_MINI_FLAG:Class = IMG_TEAM13_MINI_FLAG; public static var LEGIBLE_FONT_SMALL:Class = IMG_LEGIBLE_FONT_SMALL; public static var LABEL_PLAYER_1:Class = IMG_LABEL_PLAYER_1; public static var LABEL_PLAYER_2:Class = IMG_LABEL_PLAYER_2; public static var TEAM1_ATTACKER:Class = IMG_TEAM1_ATTACKER; public static var TEAM11_LOGO:Class = IMG_TEAM11_LOGO; public static var EXIT_PANEL_BUTTON:Class = IMG_EXIT_PANEL_BUTTON; public static var TEAM1_GOALKEEPER:Class = IMG_TEAM1_GOALKEEPER; public static var TEAM4_LOGO:Class = IMG_TEAM4_LOGO; public static var TEAM24_MINI_FLAG:Class = IMG_TEAM24_MINI_FLAG; public static var MENU_CONTINUE:Class = IMG_MENU_CONTINUE; public static var TEAM4_GOALKEEPER:Class = IMG_TEAM4_GOALKEEPER; public static var NEXT_PAGE_BUTTON:Class = IMG_NEXT_PAGE_BUTTON; public static var TEAM16_MINI_FLAG:Class = IMG_TEAM16_MINI_FLAG; public static var TEAM_NULL_GOALKEEPER:Class = IMG_TEAM_NULL_GOALKEEPER; public static var MENU_OPTIONS:Class = IMG_MENU_OPTIONS; public static var TEAM7_GOALKEEPER:Class = IMG_TEAM7_GOALKEEPER; public static var TEAM29_LOGO:Class = IMG_TEAM29_LOGO; public static var TEAM27_MINI_FLAG:Class = IMG_TEAM27_MINI_FLAG; public static var TEAM30_GOALKEEPER:Class = IMG_TEAM30_GOALKEEPER; public static var TEAM_NULL_MINI_FLAG:Class = IMG_TEAM_NULL_MINI_FLAG; public static var TEAM18_LOGO:Class = IMG_TEAM18_LOGO; public static var MENU_BACK:Class = IMG_MENU_BACK; public static var BACKGROUND_MASK_1:Class = IMG_BACKGROUND_MASK_1; public static var BACKGROUND_MASK_2:Class = IMG_BACKGROUND_MASK_2; public static var BACKGROUND_MASK_3:Class = IMG_BACKGROUND_MASK_3; public static var BACKGROUND_MASK_5:Class = IMG_BACKGROUND_MASK_5; public static var BACKGROUND_MASK_6:Class = IMG_BACKGROUND_MASK_6; public static var TEAM24_ATTACKER:Class = IMG_TEAM24_ATTACKER; public static var BACKGROUND_MASK_8:Class = IMG_BACKGROUND_MASK_8; public static var BACKGROUND_MASK_4:Class = IMG_BACKGROUND_MASK_4; public static var MESSAGE_FIRST_HALF:Class = IMG_MESSAGE_FIRST_HALF; public static var TEAM19_MINI_FLAG:Class = IMG_TEAM19_MINI_FLAG; public static var TEAM5_ATTACKER:Class = IMG_TEAM5_ATTACKER; public static var TEAM22_GOALKEEPER:Class = IMG_TEAM22_GOALKEEPER; public static var BACKGROUND_MASK_7:Class = IMG_BACKGROUND_MASK_7; public static var MENU_UNCHECKED:Class = IMG_MENU_UNCHECKED; public static var BUTTON_NEXT:Class = IMG_BUTTON_NEXT; public static var TEAM23_LOGO:Class = IMG_TEAM23_LOGO; public static var TEAM13_ATTACKER:Class = IMG_TEAM13_ATTACKER; public static var BACKGROUND_MASK_9:Class = IMG_BACKGROUND_MASK_9; public static var MENU_1P_VS_COM:Class = IMG_MENU_1P_VS_COM; public function IMG():void{ _images = new Dictionary(); } public function getBitmapData(_arg1:Class):BitmapData{ if (!_images[_arg1]){ _images[_arg1] = (new (_arg1) as Bitmap); }; return ((_images[_arg1] as Bitmap).bitmapData); } public function getBitmap(_arg1:Class):Bitmap{ if (!_images[_arg1]){ _images[_arg1] = (new (_arg1) as Bitmap); }; return ((_images[_arg1] as Bitmap)); } public static function getSingleton():IMG{ if (!_instance){ _instance = new (IMG); }; return (_instance); } } }//package
Section 272
//IMG_ABOUT_BACKGROUND (IMG_ABOUT_BACKGROUND) package { import mx.core.*; public class IMG_ABOUT_BACKGROUND extends BitmapAsset { } }//package
Section 273
//IMG_AREA (IMG_AREA) package { import mx.core.*; public class IMG_AREA extends BitmapAsset { } }//package
Section 274
//IMG_ARROW_HELPER (IMG_ARROW_HELPER) package { import mx.core.*; public class IMG_ARROW_HELPER extends BitmapAsset { } }//package
Section 275
//IMG_BACKGROUND (IMG_BACKGROUND) package { import mx.core.*; public class IMG_BACKGROUND extends BitmapAsset { } }//package
Section 276
//IMG_BACKGROUND_MASK_1 (IMG_BACKGROUND_MASK_1) package { import mx.core.*; public class IMG_BACKGROUND_MASK_1 extends BitmapAsset { } }//package
Section 277
//IMG_BACKGROUND_MASK_10 (IMG_BACKGROUND_MASK_10) package { import mx.core.*; public class IMG_BACKGROUND_MASK_10 extends BitmapAsset { } }//package
Section 278
//IMG_BACKGROUND_MASK_2 (IMG_BACKGROUND_MASK_2) package { import mx.core.*; public class IMG_BACKGROUND_MASK_2 extends BitmapAsset { } }//package
Section 279
//IMG_BACKGROUND_MASK_3 (IMG_BACKGROUND_MASK_3) package { import mx.core.*; public class IMG_BACKGROUND_MASK_3 extends BitmapAsset { } }//package
Section 280
//IMG_BACKGROUND_MASK_4 (IMG_BACKGROUND_MASK_4) package { import mx.core.*; public class IMG_BACKGROUND_MASK_4 extends BitmapAsset { } }//package
Section 281
//IMG_BACKGROUND_MASK_5 (IMG_BACKGROUND_MASK_5) package { import mx.core.*; public class IMG_BACKGROUND_MASK_5 extends BitmapAsset { } }//package
Section 282
//IMG_BACKGROUND_MASK_6 (IMG_BACKGROUND_MASK_6) package { import mx.core.*; public class IMG_BACKGROUND_MASK_6 extends BitmapAsset { } }//package
Section 283
//IMG_BACKGROUND_MASK_7 (IMG_BACKGROUND_MASK_7) package { import mx.core.*; public class IMG_BACKGROUND_MASK_7 extends BitmapAsset { } }//package
Section 284
//IMG_BACKGROUND_MASK_8 (IMG_BACKGROUND_MASK_8) package { import mx.core.*; public class IMG_BACKGROUND_MASK_8 extends BitmapAsset { } }//package
Section 285
//IMG_BACKGROUND_MASK_9 (IMG_BACKGROUND_MASK_9) package { import mx.core.*; public class IMG_BACKGROUND_MASK_9 extends BitmapAsset { } }//package
Section 286
//IMG_BACKGROUND_PLAYGROUND (IMG_BACKGROUND_PLAYGROUND) package { import mx.core.*; public class IMG_BACKGROUND_PLAYGROUND extends BitmapAsset { } }//package
Section 287
//IMG_BALL (IMG_BALL) package { import mx.core.*; public class IMG_BALL extends BitmapAsset { } }//package
Section 288
//IMG_BALL_0 (IMG_BALL_0) package { import mx.core.*; public class IMG_BALL_0 extends BitmapAsset { } }//package
Section 289
//IMG_BALL_1 (IMG_BALL_1) package { import mx.core.*; public class IMG_BALL_1 extends BitmapAsset { } }//package
Section 290
//IMG_BALL_2 (IMG_BALL_2) package { import mx.core.*; public class IMG_BALL_2 extends BitmapAsset { } }//package
Section 291
//IMG_BALL_3 (IMG_BALL_3) package { import mx.core.*; public class IMG_BALL_3 extends BitmapAsset { } }//package
Section 292
//IMG_BALL_4 (IMG_BALL_4) package { import mx.core.*; public class IMG_BALL_4 extends BitmapAsset { } }//package
Section 293
//IMG_BALL_5 (IMG_BALL_5) package { import mx.core.*; public class IMG_BALL_5 extends BitmapAsset { } }//package
Section 294
//IMG_BALL_6 (IMG_BALL_6) package { import mx.core.*; public class IMG_BALL_6 extends BitmapAsset { } }//package
Section 295
//IMG_BALL_7 (IMG_BALL_7) package { import mx.core.*; public class IMG_BALL_7 extends BitmapAsset { } }//package
Section 296
//IMG_BALL_8 (IMG_BALL_8) package { import mx.core.*; public class IMG_BALL_8 extends BitmapAsset { } }//package
Section 297
//IMG_BUTTON_BACK (IMG_BUTTON_BACK) package { import mx.core.*; public class IMG_BUTTON_BACK extends BitmapAsset { } }//package
Section 298
//IMG_BUTTON_LEFT_ARROW (IMG_BUTTON_LEFT_ARROW) package { import mx.core.*; public class IMG_BUTTON_LEFT_ARROW extends BitmapAsset { } }//package
Section 299
//IMG_BUTTON_NEXT (IMG_BUTTON_NEXT) package { import mx.core.*; public class IMG_BUTTON_NEXT extends BitmapAsset { } }//package
Section 300
//IMG_BUTTON_RIGHT_ARROW (IMG_BUTTON_RIGHT_ARROW) package { import mx.core.*; public class IMG_BUTTON_RIGHT_ARROW extends BitmapAsset { } }//package
Section 301
//IMG_EXIT_PANEL_BUTTON (IMG_EXIT_PANEL_BUTTON) package { import mx.core.*; public class IMG_EXIT_PANEL_BUTTON extends BitmapAsset { } }//package
Section 302
//IMG_GRAY_BACKGROUND (IMG_GRAY_BACKGROUND) package { import mx.core.*; public class IMG_GRAY_BACKGROUND extends BitmapAsset { } }//package
Section 303
//IMG_ILMARE_BANNER (IMG_ILMARE_BANNER) package { import mx.core.*; public class IMG_ILMARE_BANNER extends BitmapAsset { } }//package
Section 304
//IMG_INTERLEVEL_BACKGROUND (IMG_INTERLEVEL_BACKGROUND) package { import mx.core.*; public class IMG_INTERLEVEL_BACKGROUND extends BitmapAsset { } }//package
Section 305
//IMG_KNOCKOUT_RESULTS (IMG_KNOCKOUT_RESULTS) package { import mx.core.*; public class IMG_KNOCKOUT_RESULTS extends BitmapAsset { } }//package
Section 306
//IMG_LABEL_PLAYER_1 (IMG_LABEL_PLAYER_1) package { import mx.core.*; public class IMG_LABEL_PLAYER_1 extends BitmapAsset { } }//package
Section 307
//IMG_LABEL_PLAYER_2 (IMG_LABEL_PLAYER_2) package { import mx.core.*; public class IMG_LABEL_PLAYER_2 extends BitmapAsset { } }//package
Section 308
//IMG_LCD_FONT_SMALL (IMG_LCD_FONT_SMALL) package { import mx.core.*; public class IMG_LCD_FONT_SMALL extends BitmapAsset { } }//package
Section 309
//IMG_LEGIBLE_FONT_BIG (IMG_LEGIBLE_FONT_BIG) package { import mx.core.*; public class IMG_LEGIBLE_FONT_BIG extends BitmapAsset { } }//package
Section 310
//IMG_LEGIBLE_FONT_SMALL (IMG_LEGIBLE_FONT_SMALL) package { import mx.core.*; public class IMG_LEGIBLE_FONT_SMALL extends BitmapAsset { } }//package
Section 311
//IMG_LEVEL_INDICATOR (IMG_LEVEL_INDICATOR) package { import mx.core.*; public class IMG_LEVEL_INDICATOR extends BitmapAsset { } }//package
Section 312
//IMG_LEVEL_INDICATOR_REFLECTION (IMG_LEVEL_INDICATOR_REFLECTION) package { import mx.core.*; public class IMG_LEVEL_INDICATOR_REFLECTION extends BitmapAsset { } }//package
Section 313
//IMG_LOGO (IMG_LOGO) package { import mx.core.*; public class IMG_LOGO extends BitmapAsset { } }//package
Section 314
//IMG_LOGO_PANEL (IMG_LOGO_PANEL) package { import mx.core.*; public class IMG_LOGO_PANEL extends BitmapAsset { } }//package
Section 315
//IMG_LOGO_PANEL_REFLECTION (IMG_LOGO_PANEL_REFLECTION) package { import mx.core.*; public class IMG_LOGO_PANEL_REFLECTION extends BitmapAsset { } }//package
Section 316
//IMG_MASKED_EXPLODE (IMG_MASKED_EXPLODE) package { import mx.core.*; public class IMG_MASKED_EXPLODE extends BitmapAsset { } }//package
Section 317
//IMG_MENU_1P_VS_2P (IMG_MENU_1P_VS_2P) package { import mx.core.*; public class IMG_MENU_1P_VS_2P extends BitmapAsset { } }//package
Section 318
//IMG_MENU_1P_VS_COM (IMG_MENU_1P_VS_COM) package { import mx.core.*; public class IMG_MENU_1P_VS_COM extends BitmapAsset { } }//package
Section 319
//IMG_MENU_ABOUT (IMG_MENU_ABOUT) package { import mx.core.*; public class IMG_MENU_ABOUT extends BitmapAsset { } }//package
Section 320
//IMG_MENU_BACK (IMG_MENU_BACK) package { import mx.core.*; public class IMG_MENU_BACK extends BitmapAsset { } }//package
Section 321
//IMG_MENU_BACKGROUND (IMG_MENU_BACKGROUND) package { import mx.core.*; public class IMG_MENU_BACKGROUND extends BitmapAsset { } }//package
Section 322
//IMG_MENU_CHECKED (IMG_MENU_CHECKED) package { import mx.core.*; public class IMG_MENU_CHECKED extends BitmapAsset { } }//package
Section 323
//IMG_MENU_CHOOSE_TEAMS (IMG_MENU_CHOOSE_TEAMS) package { import mx.core.*; public class IMG_MENU_CHOOSE_TEAMS extends BitmapAsset { } }//package
Section 324
//IMG_MENU_CONTINUE (IMG_MENU_CONTINUE) package { import mx.core.*; public class IMG_MENU_CONTINUE extends BitmapAsset { } }//package
Section 325
//IMG_MENU_FRONT_END (IMG_MENU_FRONT_END) package { import mx.core.*; public class IMG_MENU_FRONT_END extends BitmapAsset { } }//package
Section 326
//IMG_MENU_HIGHSCORES (IMG_MENU_HIGHSCORES) package { import mx.core.*; public class IMG_MENU_HIGHSCORES extends BitmapAsset { } }//package
Section 327
//IMG_MENU_LESS (IMG_MENU_LESS) package { import mx.core.*; public class IMG_MENU_LESS extends BitmapAsset { } }//package
Section 328
//IMG_MENU_MAIN_MENU (IMG_MENU_MAIN_MENU) package { import mx.core.*; public class IMG_MENU_MAIN_MENU extends BitmapAsset { } }//package
Section 329
//IMG_MENU_MORE (IMG_MENU_MORE) package { import mx.core.*; public class IMG_MENU_MORE extends BitmapAsset { } }//package
Section 330
//IMG_MENU_MORE_GAMES (IMG_MENU_MORE_GAMES) package { import mx.core.*; public class IMG_MENU_MORE_GAMES extends BitmapAsset { } }//package
Section 331
//IMG_MENU_NEW_SEASON (IMG_MENU_NEW_SEASON) package { import mx.core.*; public class IMG_MENU_NEW_SEASON extends BitmapAsset { } }//package
Section 332
//IMG_MENU_NEW_TOURNAMENT (IMG_MENU_NEW_TOURNAMENT) package { import mx.core.*; public class IMG_MENU_NEW_TOURNAMENT extends BitmapAsset { } }//package
Section 333
//IMG_MENU_OPTIONS (IMG_MENU_OPTIONS) package { import mx.core.*; public class IMG_MENU_OPTIONS extends BitmapAsset { } }//package
Section 334
//IMG_MENU_PANEL_BUTTON (IMG_MENU_PANEL_BUTTON) package { import mx.core.*; public class IMG_MENU_PANEL_BUTTON extends BitmapAsset { } }//package
Section 335
//IMG_MENU_PLAY_MORE_GAMES_BUTTON (IMG_MENU_PLAY_MORE_GAMES_BUTTON) package { import mx.core.*; public class IMG_MENU_PLAY_MORE_GAMES_BUTTON extends BitmapAsset { } }//package
Section 336
//IMG_MENU_PLAYGROUND (IMG_MENU_PLAYGROUND) package { import mx.core.*; public class IMG_MENU_PLAYGROUND extends BitmapAsset { } }//package
Section 337
//IMG_MENU_QUICK_MATCH (IMG_MENU_QUICK_MATCH) package { import mx.core.*; public class IMG_MENU_QUICK_MATCH extends BitmapAsset { } }//package
Section 338
//IMG_MENU_REMATCH (IMG_MENU_REMATCH) package { import mx.core.*; public class IMG_MENU_REMATCH extends BitmapAsset { } }//package
Section 339
//IMG_MENU_RESUME_GAME (IMG_MENU_RESUME_GAME) package { import mx.core.*; public class IMG_MENU_RESUME_GAME extends BitmapAsset { } }//package
Section 340
//IMG_MENU_SEASON (IMG_MENU_SEASON) package { import mx.core.*; public class IMG_MENU_SEASON extends BitmapAsset { } }//package
Section 341
//IMG_MENU_TOURNAMENT (IMG_MENU_TOURNAMENT) package { import mx.core.*; public class IMG_MENU_TOURNAMENT extends BitmapAsset { } }//package
Section 342
//IMG_MENU_UNCHECKED (IMG_MENU_UNCHECKED) package { import mx.core.*; public class IMG_MENU_UNCHECKED extends BitmapAsset { } }//package
Section 343
//IMG_MESSAGE_FINAL_WHISTLE (IMG_MESSAGE_FINAL_WHISTLE) package { import mx.core.*; public class IMG_MESSAGE_FINAL_WHISTLE extends BitmapAsset { } }//package
Section 344
//IMG_MESSAGE_FIRST_HALF (IMG_MESSAGE_FIRST_HALF) package { import mx.core.*; public class IMG_MESSAGE_FIRST_HALF extends BitmapAsset { } }//package
Section 345
//IMG_MESSAGE_GOAL (IMG_MESSAGE_GOAL) package { import mx.core.*; public class IMG_MESSAGE_GOAL extends BitmapAsset { } }//package
Section 346
//IMG_MESSAGE_KICK_OFF (IMG_MESSAGE_KICK_OFF) package { import mx.core.*; public class IMG_MESSAGE_KICK_OFF extends BitmapAsset { } }//package
Section 347
//IMG_MESSAGE_PENALTIES (IMG_MESSAGE_PENALTIES) package { import mx.core.*; public class IMG_MESSAGE_PENALTIES extends BitmapAsset { } }//package
Section 348
//IMG_MESSAGE_SECOND_HALF (IMG_MESSAGE_SECOND_HALF) package { import mx.core.*; public class IMG_MESSAGE_SECOND_HALF extends BitmapAsset { } }//package
Section 349
//IMG_MESSAGE_TIME_UP (IMG_MESSAGE_TIME_UP) package { import mx.core.*; public class IMG_MESSAGE_TIME_UP extends BitmapAsset { } }//package
Section 350
//IMG_NEXT_PAGE_BUTTON (IMG_NEXT_PAGE_BUTTON) package { import mx.core.*; public class IMG_NEXT_PAGE_BUTTON extends BitmapAsset { } }//package
Section 351
//IMG_OPTIONS_PANEL_BUTTON (IMG_OPTIONS_PANEL_BUTTON) package { import mx.core.*; public class IMG_OPTIONS_PANEL_BUTTON extends BitmapAsset { } }//package
Section 352
//IMG_PLAYER_INDICATOR (IMG_PLAYER_INDICATOR) package { import mx.core.*; public class IMG_PLAYER_INDICATOR extends BitmapAsset { } }//package
Section 353
//IMG_POST_MATCH_BACKGROUND (IMG_POST_MATCH_BACKGROUND) package { import mx.core.*; public class IMG_POST_MATCH_BACKGROUND extends BitmapAsset { } }//package
Section 354
//IMG_PRE_MATCH_BACKGROUND (IMG_PRE_MATCH_BACKGROUND) package { import mx.core.*; public class IMG_PRE_MATCH_BACKGROUND extends BitmapAsset { } }//package
Section 355
//IMG_PREVIOUS_PAGE_BUTTON (IMG_PREVIOUS_PAGE_BUTTON) package { import mx.core.*; public class IMG_PREVIOUS_PAGE_BUTTON extends BitmapAsset { } }//package
Section 356
//IMG_SEASON_LOST (IMG_SEASON_LOST) package { import mx.core.*; public class IMG_SEASON_LOST extends BitmapAsset { } }//package
Section 357
//IMG_SEASON_RESULTS (IMG_SEASON_RESULTS) package { import mx.core.*; public class IMG_SEASON_RESULTS extends BitmapAsset { } }//package
Section 358
//IMG_SEASON_WON (IMG_SEASON_WON) package { import mx.core.*; public class IMG_SEASON_WON extends BitmapAsset { } }//package
Section 359
//IMG_SELECT_TEAM_BACKGROUND (IMG_SELECT_TEAM_BACKGROUND) package { import mx.core.*; public class IMG_SELECT_TEAM_BACKGROUND extends BitmapAsset { } }//package
Section 360
//IMG_SPEAKER_OFF (IMG_SPEAKER_OFF) package { import mx.core.*; public class IMG_SPEAKER_OFF extends BitmapAsset { } }//package
Section 361
//IMG_SPEAKER_ON (IMG_SPEAKER_ON) package { import mx.core.*; public class IMG_SPEAKER_ON extends BitmapAsset { } }//package
Section 362
//IMG_SPONSOR_BANNER (IMG_SPONSOR_BANNER) package { import mx.core.*; public class IMG_SPONSOR_BANNER extends BitmapAsset { } }//package
Section 363
//IMG_STATS_INDICATOR_REFLECTION (IMG_STATS_INDICATOR_REFLECTION) package { import mx.core.*; public class IMG_STATS_INDICATOR_REFLECTION extends BitmapAsset { } }//package
Section 364
//IMG_TEAM_LOCKED (IMG_TEAM_LOCKED) package { import mx.core.*; public class IMG_TEAM_LOCKED extends BitmapAsset { } }//package
Section 365
//IMG_TEAM_LOCKED_MESSAGE (IMG_TEAM_LOCKED_MESSAGE) package { import mx.core.*; public class IMG_TEAM_LOCKED_MESSAGE extends BitmapAsset { } }//package
Section 366
//IMG_TEAM_NAME_REFLECTION (IMG_TEAM_NAME_REFLECTION) package { import mx.core.*; public class IMG_TEAM_NAME_REFLECTION extends BitmapAsset { } }//package
Section 367
//IMG_TEAM_NULL_ATTACKER (IMG_TEAM_NULL_ATTACKER) package { import mx.core.*; public class IMG_TEAM_NULL_ATTACKER extends BitmapAsset { } }//package
Section 368
//IMG_TEAM_NULL_GOALKEEPER (IMG_TEAM_NULL_GOALKEEPER) package { import mx.core.*; public class IMG_TEAM_NULL_GOALKEEPER extends BitmapAsset { } }//package
Section 369
//IMG_TEAM_NULL_LOGO (IMG_TEAM_NULL_LOGO) package { import mx.core.*; public class IMG_TEAM_NULL_LOGO extends BitmapAsset { } }//package
Section 370
//IMG_TEAM_NULL_MINI_FLAG (IMG_TEAM_NULL_MINI_FLAG) package { import mx.core.*; public class IMG_TEAM_NULL_MINI_FLAG extends BitmapAsset { } }//package
Section 371
//IMG_TEAM_UNLOCKED (IMG_TEAM_UNLOCKED) package { import mx.core.*; public class IMG_TEAM_UNLOCKED extends BitmapAsset { } }//package
Section 372
//IMG_TEAM0_ATTACKER (IMG_TEAM0_ATTACKER) package { import mx.core.*; public class IMG_TEAM0_ATTACKER extends BitmapAsset { } }//package
Section 373
//IMG_TEAM0_GOALKEEPER (IMG_TEAM0_GOALKEEPER) package { import mx.core.*; public class IMG_TEAM0_GOALKEEPER extends BitmapAsset { } }//package
Section 374
//IMG_TEAM1_ATTACKER (IMG_TEAM1_ATTACKER) package { import mx.core.*; public class IMG_TEAM1_ATTACKER extends BitmapAsset { } }//package
Section 375
//IMG_TEAM1_GOALKEEPER (IMG_TEAM1_GOALKEEPER) package { import mx.core.*; public class IMG_TEAM1_GOALKEEPER extends BitmapAsset { } }//package
Section 376
//IMG_TEAM1_LOGO (IMG_TEAM1_LOGO) package { import mx.core.*; public class IMG_TEAM1_LOGO extends BitmapAsset { } }//package
Section 377
//IMG_TEAM1_MINI_FLAG (IMG_TEAM1_MINI_FLAG) package { import mx.core.*; public class IMG_TEAM1_MINI_FLAG extends BitmapAsset { } }//package
Section 378
//IMG_TEAM10_ATTACKER (IMG_TEAM10_ATTACKER) package { import mx.core.*; public class IMG_TEAM10_ATTACKER extends BitmapAsset { } }//package
Section 379
//IMG_TEAM10_GOALKEEPER (IMG_TEAM10_GOALKEEPER) package { import mx.core.*; public class IMG_TEAM10_GOALKEEPER extends BitmapAsset { } }//package
Section 380
//IMG_TEAM10_LOGO (IMG_TEAM10_LOGO) package { import mx.core.*; public class IMG_TEAM10_LOGO extends BitmapAsset { } }//package
Section 381
//IMG_TEAM10_MINI_FLAG (IMG_TEAM10_MINI_FLAG) package { import mx.core.*; public class IMG_TEAM10_MINI_FLAG extends BitmapAsset { } }//package
Section 382
//IMG_TEAM11_ATTACKER (IMG_TEAM11_ATTACKER) package { import mx.core.*; public class IMG_TEAM11_ATTACKER extends BitmapAsset { } }//package
Section 383
//IMG_TEAM11_GOALKEEPER (IMG_TEAM11_GOALKEEPER) package { import mx.core.*; public class IMG_TEAM11_GOALKEEPER extends BitmapAsset { } }//package
Section 384
//IMG_TEAM11_LOGO (IMG_TEAM11_LOGO) package { import mx.core.*; public class IMG_TEAM11_LOGO extends BitmapAsset { } }//package
Section 385
//IMG_TEAM11_MINI_FLAG (IMG_TEAM11_MINI_FLAG) package { import mx.core.*; public class IMG_TEAM11_MINI_FLAG extends BitmapAsset { } }//package
Section 386
//IMG_TEAM12_ATTACKER (IMG_TEAM12_ATTACKER) package { import mx.core.*; public class IMG_TEAM12_ATTACKER extends BitmapAsset { } }//package
Section 387
//IMG_TEAM12_GOALKEEPER (IMG_TEAM12_GOALKEEPER) package { import mx.core.*; public class IMG_TEAM12_GOALKEEPER extends BitmapAsset { } }//package
Section 388
//IMG_TEAM12_LOGO (IMG_TEAM12_LOGO) package { import mx.core.*; public class IMG_TEAM12_LOGO extends BitmapAsset { } }//package
Section 389
//IMG_TEAM12_MINI_FLAG (IMG_TEAM12_MINI_FLAG) package { import mx.core.*; public class IMG_TEAM12_MINI_FLAG extends BitmapAsset { } }//package
Section 390
//IMG_TEAM13_ATTACKER (IMG_TEAM13_ATTACKER) package { import mx.core.*; public class IMG_TEAM13_ATTACKER extends BitmapAsset { } }//package
Section 391
//IMG_TEAM13_GOALKEEPER (IMG_TEAM13_GOALKEEPER) package { import mx.core.*; public class IMG_TEAM13_GOALKEEPER extends BitmapAsset { } }//package
Section 392
//IMG_TEAM13_LOGO (IMG_TEAM13_LOGO) package { import mx.core.*; public class IMG_TEAM13_LOGO extends BitmapAsset { } }//package
Section 393
//IMG_TEAM13_MINI_FLAG (IMG_TEAM13_MINI_FLAG) package { import mx.core.*; public class IMG_TEAM13_MINI_FLAG extends BitmapAsset { } }//package
Section 394
//IMG_TEAM14_ATTACKER (IMG_TEAM14_ATTACKER) package { import mx.core.*; public class IMG_TEAM14_ATTACKER extends BitmapAsset { } }//package
Section 395
//IMG_TEAM14_GOALKEEPER (IMG_TEAM14_GOALKEEPER) package { import mx.core.*; public class IMG_TEAM14_GOALKEEPER extends BitmapAsset { } }//package
Section 396
//IMG_TEAM14_LOGO (IMG_TEAM14_LOGO) package { import mx.core.*; public class IMG_TEAM14_LOGO extends BitmapAsset { } }//package
Section 397
//IMG_TEAM14_MINI_FLAG (IMG_TEAM14_MINI_FLAG) package { import mx.core.*; public class IMG_TEAM14_MINI_FLAG extends BitmapAsset { } }//package
Section 398
//IMG_TEAM15_ATTACKER (IMG_TEAM15_ATTACKER) package { import mx.core.*; public class IMG_TEAM15_ATTACKER extends BitmapAsset { } }//package
Section 399
//IMG_TEAM15_GOALKEEPER (IMG_TEAM15_GOALKEEPER) package { import mx.core.*; public class IMG_TEAM15_GOALKEEPER extends BitmapAsset { } }//package
Section 400
//IMG_TEAM15_LOGO (IMG_TEAM15_LOGO) package { import mx.core.*; public class IMG_TEAM15_LOGO extends BitmapAsset { } }//package
Section 401
//IMG_TEAM15_MINI_FLAG (IMG_TEAM15_MINI_FLAG) package { import mx.core.*; public class IMG_TEAM15_MINI_FLAG extends BitmapAsset { } }//package
Section 402
//IMG_TEAM16_ATTACKER (IMG_TEAM16_ATTACKER) package { import mx.core.*; public class IMG_TEAM16_ATTACKER extends BitmapAsset { } }//package
Section 403
//IMG_TEAM16_GOALKEEPER (IMG_TEAM16_GOALKEEPER) package { import mx.core.*; public class IMG_TEAM16_GOALKEEPER extends BitmapAsset { } }//package
Section 404
//IMG_TEAM16_LOGO (IMG_TEAM16_LOGO) package { import mx.core.*; public class IMG_TEAM16_LOGO extends BitmapAsset { } }//package
Section 405
//IMG_TEAM16_MINI_FLAG (IMG_TEAM16_MINI_FLAG) package { import mx.core.*; public class IMG_TEAM16_MINI_FLAG extends BitmapAsset { } }//package
Section 406
//IMG_TEAM17_ATTACKER (IMG_TEAM17_ATTACKER) package { import mx.core.*; public class IMG_TEAM17_ATTACKER extends BitmapAsset { } }//package
Section 407
//IMG_TEAM17_GOALKEEPER (IMG_TEAM17_GOALKEEPER) package { import mx.core.*; public class IMG_TEAM17_GOALKEEPER extends BitmapAsset { } }//package
Section 408
//IMG_TEAM17_LOGO (IMG_TEAM17_LOGO) package { import mx.core.*; public class IMG_TEAM17_LOGO extends BitmapAsset { } }//package
Section 409
//IMG_TEAM17_MINI_FLAG (IMG_TEAM17_MINI_FLAG) package { import mx.core.*; public class IMG_TEAM17_MINI_FLAG extends BitmapAsset { } }//package
Section 410
//IMG_TEAM18_ATTACKER (IMG_TEAM18_ATTACKER) package { import mx.core.*; public class IMG_TEAM18_ATTACKER extends BitmapAsset { } }//package
Section 411
//IMG_TEAM18_GOALKEEPER (IMG_TEAM18_GOALKEEPER) package { import mx.core.*; public class IMG_TEAM18_GOALKEEPER extends BitmapAsset { } }//package
Section 412
//IMG_TEAM18_LOGO (IMG_TEAM18_LOGO) package { import mx.core.*; public class IMG_TEAM18_LOGO extends BitmapAsset { } }//package
Section 413
//IMG_TEAM18_MINI_FLAG (IMG_TEAM18_MINI_FLAG) package { import mx.core.*; public class IMG_TEAM18_MINI_FLAG extends BitmapAsset { } }//package
Section 414
//IMG_TEAM19_ATTACKER (IMG_TEAM19_ATTACKER) package { import mx.core.*; public class IMG_TEAM19_ATTACKER extends BitmapAsset { } }//package
Section 415
//IMG_TEAM19_GOALKEEPER (IMG_TEAM19_GOALKEEPER) package { import mx.core.*; public class IMG_TEAM19_GOALKEEPER extends BitmapAsset { } }//package
Section 416
//IMG_TEAM19_LOGO (IMG_TEAM19_LOGO) package { import mx.core.*; public class IMG_TEAM19_LOGO extends BitmapAsset { } }//package
Section 417
//IMG_TEAM19_MINI_FLAG (IMG_TEAM19_MINI_FLAG) package { import mx.core.*; public class IMG_TEAM19_MINI_FLAG extends BitmapAsset { } }//package
Section 418
//IMG_TEAM2_ATTACKER (IMG_TEAM2_ATTACKER) package { import mx.core.*; public class IMG_TEAM2_ATTACKER extends BitmapAsset { } }//package
Section 419
//IMG_TEAM2_GOALKEEPER (IMG_TEAM2_GOALKEEPER) package { import mx.core.*; public class IMG_TEAM2_GOALKEEPER extends BitmapAsset { } }//package
Section 420
//IMG_TEAM2_LOGO (IMG_TEAM2_LOGO) package { import mx.core.*; public class IMG_TEAM2_LOGO extends BitmapAsset { } }//package
Section 421
//IMG_TEAM2_MINI_FLAG (IMG_TEAM2_MINI_FLAG) package { import mx.core.*; public class IMG_TEAM2_MINI_FLAG extends BitmapAsset { } }//package
Section 422
//IMG_TEAM20_ATTACKER (IMG_TEAM20_ATTACKER) package { import mx.core.*; public class IMG_TEAM20_ATTACKER extends BitmapAsset { } }//package
Section 423
//IMG_TEAM20_GOALKEEPER (IMG_TEAM20_GOALKEEPER) package { import mx.core.*; public class IMG_TEAM20_GOALKEEPER extends BitmapAsset { } }//package
Section 424
//IMG_TEAM20_LOGO (IMG_TEAM20_LOGO) package { import mx.core.*; public class IMG_TEAM20_LOGO extends BitmapAsset { } }//package
Section 425
//IMG_TEAM20_MINI_FLAG (IMG_TEAM20_MINI_FLAG) package { import mx.core.*; public class IMG_TEAM20_MINI_FLAG extends BitmapAsset { } }//package
Section 426
//IMG_TEAM21_ATTACKER (IMG_TEAM21_ATTACKER) package { import mx.core.*; public class IMG_TEAM21_ATTACKER extends BitmapAsset { } }//package
Section 427
//IMG_TEAM21_GOALKEEPER (IMG_TEAM21_GOALKEEPER) package { import mx.core.*; public class IMG_TEAM21_GOALKEEPER extends BitmapAsset { } }//package
Section 428
//IMG_TEAM21_LOGO (IMG_TEAM21_LOGO) package { import mx.core.*; public class IMG_TEAM21_LOGO extends BitmapAsset { } }//package
Section 429
//IMG_TEAM21_MINI_FLAG (IMG_TEAM21_MINI_FLAG) package { import mx.core.*; public class IMG_TEAM21_MINI_FLAG extends BitmapAsset { } }//package
Section 430
//IMG_TEAM22_ATTACKER (IMG_TEAM22_ATTACKER) package { import mx.core.*; public class IMG_TEAM22_ATTACKER extends BitmapAsset { } }//package
Section 431
//IMG_TEAM22_GOALKEEPER (IMG_TEAM22_GOALKEEPER) package { import mx.core.*; public class IMG_TEAM22_GOALKEEPER extends BitmapAsset { } }//package
Section 432
//IMG_TEAM22_LOGO (IMG_TEAM22_LOGO) package { import mx.core.*; public class IMG_TEAM22_LOGO extends BitmapAsset { } }//package
Section 433
//IMG_TEAM22_MINI_FLAG (IMG_TEAM22_MINI_FLAG) package { import mx.core.*; public class IMG_TEAM22_MINI_FLAG extends BitmapAsset { } }//package
Section 434
//IMG_TEAM23_ATTACKER (IMG_TEAM23_ATTACKER) package { import mx.core.*; public class IMG_TEAM23_ATTACKER extends BitmapAsset { } }//package
Section 435
//IMG_TEAM23_GOALKEEPER (IMG_TEAM23_GOALKEEPER) package { import mx.core.*; public class IMG_TEAM23_GOALKEEPER extends BitmapAsset { } }//package
Section 436
//IMG_TEAM23_LOGO (IMG_TEAM23_LOGO) package { import mx.core.*; public class IMG_TEAM23_LOGO extends BitmapAsset { } }//package
Section 437
//IMG_TEAM23_MINI_FLAG (IMG_TEAM23_MINI_FLAG) package { import mx.core.*; public class IMG_TEAM23_MINI_FLAG extends BitmapAsset { } }//package
Section 438
//IMG_TEAM24_ATTACKER (IMG_TEAM24_ATTACKER) package { import mx.core.*; public class IMG_TEAM24_ATTACKER extends BitmapAsset { } }//package
Section 439
//IMG_TEAM24_GOALKEEPER (IMG_TEAM24_GOALKEEPER) package { import mx.core.*; public class IMG_TEAM24_GOALKEEPER extends BitmapAsset { } }//package
Section 440
//IMG_TEAM24_LOGO (IMG_TEAM24_LOGO) package { import mx.core.*; public class IMG_TEAM24_LOGO extends BitmapAsset { } }//package
Section 441
//IMG_TEAM24_MINI_FLAG (IMG_TEAM24_MINI_FLAG) package { import mx.core.*; public class IMG_TEAM24_MINI_FLAG extends BitmapAsset { } }//package
Section 442
//IMG_TEAM25_ATTACKER (IMG_TEAM25_ATTACKER) package { import mx.core.*; public class IMG_TEAM25_ATTACKER extends BitmapAsset { } }//package
Section 443
//IMG_TEAM25_GOALKEEPER (IMG_TEAM25_GOALKEEPER) package { import mx.core.*; public class IMG_TEAM25_GOALKEEPER extends BitmapAsset { } }//package
Section 444
//IMG_TEAM25_LOGO (IMG_TEAM25_LOGO) package { import mx.core.*; public class IMG_TEAM25_LOGO extends BitmapAsset { } }//package
Section 445
//IMG_TEAM25_MINI_FLAG (IMG_TEAM25_MINI_FLAG) package { import mx.core.*; public class IMG_TEAM25_MINI_FLAG extends BitmapAsset { } }//package
Section 446
//IMG_TEAM26_ATTACKER (IMG_TEAM26_ATTACKER) package { import mx.core.*; public class IMG_TEAM26_ATTACKER extends BitmapAsset { } }//package
Section 447
//IMG_TEAM26_GOALKEEPER (IMG_TEAM26_GOALKEEPER) package { import mx.core.*; public class IMG_TEAM26_GOALKEEPER extends BitmapAsset { } }//package
Section 448
//IMG_TEAM26_LOGO (IMG_TEAM26_LOGO) package { import mx.core.*; public class IMG_TEAM26_LOGO extends BitmapAsset { } }//package
Section 449
//IMG_TEAM26_MINI_FLAG (IMG_TEAM26_MINI_FLAG) package { import mx.core.*; public class IMG_TEAM26_MINI_FLAG extends BitmapAsset { } }//package
Section 450
//IMG_TEAM27_ATTACKER (IMG_TEAM27_ATTACKER) package { import mx.core.*; public class IMG_TEAM27_ATTACKER extends BitmapAsset { } }//package
Section 451
//IMG_TEAM27_GOALKEEPER (IMG_TEAM27_GOALKEEPER) package { import mx.core.*; public class IMG_TEAM27_GOALKEEPER extends BitmapAsset { } }//package
Section 452
//IMG_TEAM27_LOGO (IMG_TEAM27_LOGO) package { import mx.core.*; public class IMG_TEAM27_LOGO extends BitmapAsset { } }//package
Section 453
//IMG_TEAM27_MINI_FLAG (IMG_TEAM27_MINI_FLAG) package { import mx.core.*; public class IMG_TEAM27_MINI_FLAG extends BitmapAsset { } }//package
Section 454
//IMG_TEAM28_ATTACKER (IMG_TEAM28_ATTACKER) package { import mx.core.*; public class IMG_TEAM28_ATTACKER extends BitmapAsset { } }//package
Section 455
//IMG_TEAM28_GOALKEEPER (IMG_TEAM28_GOALKEEPER) package { import mx.core.*; public class IMG_TEAM28_GOALKEEPER extends BitmapAsset { } }//package
Section 456
//IMG_TEAM28_LOGO (IMG_TEAM28_LOGO) package { import mx.core.*; public class IMG_TEAM28_LOGO extends BitmapAsset { } }//package
Section 457
//IMG_TEAM28_MINI_FLAG (IMG_TEAM28_MINI_FLAG) package { import mx.core.*; public class IMG_TEAM28_MINI_FLAG extends BitmapAsset { } }//package
Section 458
//IMG_TEAM29_ATTACKER (IMG_TEAM29_ATTACKER) package { import mx.core.*; public class IMG_TEAM29_ATTACKER extends BitmapAsset { } }//package
Section 459
//IMG_TEAM29_GOALKEEPER (IMG_TEAM29_GOALKEEPER) package { import mx.core.*; public class IMG_TEAM29_GOALKEEPER extends BitmapAsset { } }//package
Section 460
//IMG_TEAM29_LOGO (IMG_TEAM29_LOGO) package { import mx.core.*; public class IMG_TEAM29_LOGO extends BitmapAsset { } }//package
Section 461
//IMG_TEAM29_MINI_FLAG (IMG_TEAM29_MINI_FLAG) package { import mx.core.*; public class IMG_TEAM29_MINI_FLAG extends BitmapAsset { } }//package
Section 462
//IMG_TEAM3_ATTACKER (IMG_TEAM3_ATTACKER) package { import mx.core.*; public class IMG_TEAM3_ATTACKER extends BitmapAsset { } }//package
Section 463
//IMG_TEAM3_GOALKEEPER (IMG_TEAM3_GOALKEEPER) package { import mx.core.*; public class IMG_TEAM3_GOALKEEPER extends BitmapAsset { } }//package
Section 464
//IMG_TEAM3_LOGO (IMG_TEAM3_LOGO) package { import mx.core.*; public class IMG_TEAM3_LOGO extends BitmapAsset { } }//package
Section 465
//IMG_TEAM3_MINI_FLAG (IMG_TEAM3_MINI_FLAG) package { import mx.core.*; public class IMG_TEAM3_MINI_FLAG extends BitmapAsset { } }//package
Section 466
//IMG_TEAM30_ATTACKER (IMG_TEAM30_ATTACKER) package { import mx.core.*; public class IMG_TEAM30_ATTACKER extends BitmapAsset { } }//package
Section 467
//IMG_TEAM30_GOALKEEPER (IMG_TEAM30_GOALKEEPER) package { import mx.core.*; public class IMG_TEAM30_GOALKEEPER extends BitmapAsset { } }//package
Section 468
//IMG_TEAM30_LOGO (IMG_TEAM30_LOGO) package { import mx.core.*; public class IMG_TEAM30_LOGO extends BitmapAsset { } }//package
Section 469
//IMG_TEAM30_MINI_FLAG (IMG_TEAM30_MINI_FLAG) package { import mx.core.*; public class IMG_TEAM30_MINI_FLAG extends BitmapAsset { } }//package
Section 470
//IMG_TEAM31_ATTACKER (IMG_TEAM31_ATTACKER) package { import mx.core.*; public class IMG_TEAM31_ATTACKER extends BitmapAsset { } }//package
Section 471
//IMG_TEAM31_GOALKEEPER (IMG_TEAM31_GOALKEEPER) package { import mx.core.*; public class IMG_TEAM31_GOALKEEPER extends BitmapAsset { } }//package
Section 472
//IMG_TEAM31_LOGO (IMG_TEAM31_LOGO) package { import mx.core.*; public class IMG_TEAM31_LOGO extends BitmapAsset { } }//package
Section 473
//IMG_TEAM31_MINI_FLAG (IMG_TEAM31_MINI_FLAG) package { import mx.core.*; public class IMG_TEAM31_MINI_FLAG extends BitmapAsset { } }//package
Section 474
//IMG_TEAM32_ATTACKER (IMG_TEAM32_ATTACKER) package { import mx.core.*; public class IMG_TEAM32_ATTACKER extends BitmapAsset { } }//package
Section 475
//IMG_TEAM32_GOALKEEPER (IMG_TEAM32_GOALKEEPER) package { import mx.core.*; public class IMG_TEAM32_GOALKEEPER extends BitmapAsset { } }//package
Section 476
//IMG_TEAM32_LOGO (IMG_TEAM32_LOGO) package { import mx.core.*; public class IMG_TEAM32_LOGO extends BitmapAsset { } }//package
Section 477
//IMG_TEAM32_MINI_FLAG (IMG_TEAM32_MINI_FLAG) package { import mx.core.*; public class IMG_TEAM32_MINI_FLAG extends BitmapAsset { } }//package
Section 478
//IMG_TEAM4_ATTACKER (IMG_TEAM4_ATTACKER) package { import mx.core.*; public class IMG_TEAM4_ATTACKER extends BitmapAsset { } }//package
Section 479
//IMG_TEAM4_GOALKEEPER (IMG_TEAM4_GOALKEEPER) package { import mx.core.*; public class IMG_TEAM4_GOALKEEPER extends BitmapAsset { } }//package
Section 480
//IMG_TEAM4_LOGO (IMG_TEAM4_LOGO) package { import mx.core.*; public class IMG_TEAM4_LOGO extends BitmapAsset { } }//package
Section 481
//IMG_TEAM4_MINI_FLAG (IMG_TEAM4_MINI_FLAG) package { import mx.core.*; public class IMG_TEAM4_MINI_FLAG extends BitmapAsset { } }//package
Section 482
//IMG_TEAM5_ATTACKER (IMG_TEAM5_ATTACKER) package { import mx.core.*; public class IMG_TEAM5_ATTACKER extends BitmapAsset { } }//package
Section 483
//IMG_TEAM5_GOALKEEPER (IMG_TEAM5_GOALKEEPER) package { import mx.core.*; public class IMG_TEAM5_GOALKEEPER extends BitmapAsset { } }//package
Section 484
//IMG_TEAM5_LOGO (IMG_TEAM5_LOGO) package { import mx.core.*; public class IMG_TEAM5_LOGO extends BitmapAsset { } }//package
Section 485
//IMG_TEAM5_MINI_FLAG (IMG_TEAM5_MINI_FLAG) package { import mx.core.*; public class IMG_TEAM5_MINI_FLAG extends BitmapAsset { } }//package
Section 486
//IMG_TEAM6_ATTACKER (IMG_TEAM6_ATTACKER) package { import mx.core.*; public class IMG_TEAM6_ATTACKER extends BitmapAsset { } }//package
Section 487
//IMG_TEAM6_GOALKEEPER (IMG_TEAM6_GOALKEEPER) package { import mx.core.*; public class IMG_TEAM6_GOALKEEPER extends BitmapAsset { } }//package
Section 488
//IMG_TEAM6_LOGO (IMG_TEAM6_LOGO) package { import mx.core.*; public class IMG_TEAM6_LOGO extends BitmapAsset { } }//package
Section 489
//IMG_TEAM6_MINI_FLAG (IMG_TEAM6_MINI_FLAG) package { import mx.core.*; public class IMG_TEAM6_MINI_FLAG extends BitmapAsset { } }//package
Section 490
//IMG_TEAM7_ATTACKER (IMG_TEAM7_ATTACKER) package { import mx.core.*; public class IMG_TEAM7_ATTACKER extends BitmapAsset { } }//package
Section 491
//IMG_TEAM7_GOALKEEPER (IMG_TEAM7_GOALKEEPER) package { import mx.core.*; public class IMG_TEAM7_GOALKEEPER extends BitmapAsset { } }//package
Section 492
//IMG_TEAM7_LOGO (IMG_TEAM7_LOGO) package { import mx.core.*; public class IMG_TEAM7_LOGO extends BitmapAsset { } }//package
Section 493
//IMG_TEAM7_MINI_FLAG (IMG_TEAM7_MINI_FLAG) package { import mx.core.*; public class IMG_TEAM7_MINI_FLAG extends BitmapAsset { } }//package
Section 494
//IMG_TEAM8_ATTACKER (IMG_TEAM8_ATTACKER) package { import mx.core.*; public class IMG_TEAM8_ATTACKER extends BitmapAsset { } }//package
Section 495
//IMG_TEAM8_GOALKEEPER (IMG_TEAM8_GOALKEEPER) package { import mx.core.*; public class IMG_TEAM8_GOALKEEPER extends BitmapAsset { } }//package
Section 496
//IMG_TEAM8_LOGO (IMG_TEAM8_LOGO) package { import mx.core.*; public class IMG_TEAM8_LOGO extends BitmapAsset { } }//package
Section 497
//IMG_TEAM8_MINI_FLAG (IMG_TEAM8_MINI_FLAG) package { import mx.core.*; public class IMG_TEAM8_MINI_FLAG extends BitmapAsset { } }//package
Section 498
//IMG_TEAM9_ATTACKER (IMG_TEAM9_ATTACKER) package { import mx.core.*; public class IMG_TEAM9_ATTACKER extends BitmapAsset { } }//package
Section 499
//IMG_TEAM9_GOALKEEPER (IMG_TEAM9_GOALKEEPER) package { import mx.core.*; public class IMG_TEAM9_GOALKEEPER extends BitmapAsset { } }//package
Section 500
//IMG_TEAM9_LOGO (IMG_TEAM9_LOGO) package { import mx.core.*; public class IMG_TEAM9_LOGO extends BitmapAsset { } }//package
Section 501
//IMG_TEAM9_MINI_FLAG (IMG_TEAM9_MINI_FLAG) package { import mx.core.*; public class IMG_TEAM9_MINI_FLAG extends BitmapAsset { } }//package
Section 502
//IMG_TOP_PANEL (IMG_TOP_PANEL) package { import mx.core.*; public class IMG_TOP_PANEL extends BitmapAsset { } }//package
Section 503
//IMG_TOP_PANEL_PLAYGROUND (IMG_TOP_PANEL_PLAYGROUND) package { import mx.core.*; public class IMG_TOP_PANEL_PLAYGROUND extends BitmapAsset { } }//package
Section 504
//IMG_TOP_PANEL_REFLECTION (IMG_TOP_PANEL_REFLECTION) package { import mx.core.*; public class IMG_TOP_PANEL_REFLECTION extends BitmapAsset { } }//package
Section 505
//IMG_TRAINING_PANEL_BUTTON (IMG_TRAINING_PANEL_BUTTON) package { import mx.core.*; public class IMG_TRAINING_PANEL_BUTTON extends BitmapAsset { } }//package
Section 506
//IMG_TUTORIAL_KEYS (IMG_TUTORIAL_KEYS) package { import mx.core.*; public class IMG_TUTORIAL_KEYS extends BitmapAsset { } }//package
Section 507
//KnockoutItem (KnockoutItem) package { import flash.display.*; import flash.text.*; public dynamic class KnockoutItem extends MovieClip { public var score:TextField; public var imageDock:MovieClip; } }//package
Section 508
//KnockoutLines (KnockoutLines) package { import flash.display.*; public dynamic class KnockoutLines extends MovieClip { } }//package
Section 509
//KnockoutTooltip (KnockoutTooltip) package { import flash.display.*; import flash.text.*; public dynamic class KnockoutTooltip extends MovieClip { public var teamName:TextField; } }//package
Section 510
//Main (Main) package { import flash.events.*; import com.tracker.*; import flash.display.*; import flash.utils.*; import StateLib.*; import net.rezmason.utils.*; public class Main extends Sprite { private var _sleepTime:int;// = 0 private var _afterTime:int;// = 0 private var _beforeTime:int;// = 0 private var _overSleepTime:int;// = 0 private var _excess:int;// = 0 private var _timeDiff:int;// = 0 private var FONT_lcd:Class; private var _period:Number;// = 33 private var _fps:FPS; private var _gameTimer:Timer; private var FONT_abadi:Class; private var FONT_metabold:Class; private var _stateManager:StateManager; public static const FRAME_RATE:int = 30; public static var _instance:Sprite; public function Main():void{ FONT_lcd = Main_FONT_lcd; FONT_metabold = Main_FONT_metabold; FONT_abadi = Main_FONT_abadi; super(); } private function update(_arg1:TimerEvent):void{ _beforeTime = getTimer(); _overSleepTime = ((_beforeTime - _afterTime) - _sleepTime); if (DEF.DEBUG_FPS){ _fps.update(); }; _stateManager.update(); _stateManager.paint(); _afterTime = getTimer(); _timeDiff = (_afterTime - _beforeTime); _sleepTime = ((_period - _timeDiff) - _overSleepTime); if (_sleepTime <= 0){ _excess = (_excess - _sleepTime); _sleepTime = 2; }; _gameTimer.reset(); _gameTimer.delay = _sleepTime; _gameTimer.start(); while (_excess > _period) { _stateManager.update(); _excess = (_excess - _period); }; } public function init(_arg1:Event=null):void{ var _local2:ActiveGraph; removeEventListener(Event.ADDED_TO_STAGE, init); _instance = this; stage.frameRate = 400; _stateManager = new StateManager(this); stage.addEventListener(KeyboardEvent.KEY_DOWN, _stateManager.keyDown); stage.addEventListener(KeyboardEvent.KEY_UP, _stateManager.keyUp); addEventListener(MouseEvent.MOUSE_MOVE, _stateManager.mouseMove); addEventListener(MouseEvent.MOUSE_DOWN, _stateManager.mouseDown); addEventListener(MouseEvent.MOUSE_UP, _stateManager.mouseUp); if (DEF.DEBUG_FPS){ _local2 = new ActiveGraph(); stage.addChild(_local2); _fps = new FPS(); addChild(_fps); _fps.x = 20; _fps.y = 20; }; if (DEF.GOOGLE_ANALYTICS){ GoogleTracker.getSingleton().init(this); GoogleTracker.getSingleton().trackPageview("/init"); }; _gameTimer = new Timer(_period, 1); _gameTimer.addEventListener(TimerEvent.TIMER, update); _gameTimer.start(); } } }//package
Section 511
//Main_FONT_abadi (Main_FONT_abadi) package { import mx.core.*; public class Main_FONT_abadi extends FontAsset { } }//package
Section 512
//Main_FONT_lcd (Main_FONT_lcd) package { import mx.core.*; public class Main_FONT_lcd extends FontAsset { } }//package
Section 513
//Main_FONT_metabold (Main_FONT_metabold) package { import mx.core.*; public class Main_FONT_metabold extends FontAsset { } }//package
Section 514
//MediaPlayer (MediaPlayer) package { import flash.events.*; import flash.display.*; import flash.media.*; public class MediaPlayer { private var SND_ingameGoal:Class; private var SND_ingame1:Class; private var SND_ingame2:Class; private var SND_ingame3:Class; private var SND_ingame4:Class; private var SND_ingame5:Class; private var _isPlaying:Array; public var SND_intro_mp3:Class; private var _loopingRandom:Boolean;// = false private var _channels:Array; private var _loopLast:Number;// = -1 private var _speaker:Sprite; private var SND_ingameWhistle:Class; private var _soundVolume:SoundTransform; private var SND_ingameShock:Class; private var SND_menuOverOption:Class; private var SND_win:Class; private var _classes:Array; private var _loopFirst:Number;// = -1 private var _soundON:Boolean;// = true private var SND_menuSelect:Class; private var _players:Array; private var SND_ingameMessage:Class; public static const SND_INGAME_WHISTLE:Number = 9; public static const SND_INGAME1:Number = 1; public static const SND_INGAME2:Number = 2; public static const SND_INGAME3:Number = 3; public static const SND_INGAME4:Number = 4; public static const SND_INGAME5:Number = 5; public static const SND_INGAME_GOAL:Number = 10; public static const SND_INTRO:Number = 0; public static const SND_INGAME_SHOCK:Number = 12; public static const SND_MENU_OVER_OPTION:Number = 8; public static const SND_GAME_WIN:Number = 6; public static const SND_MENU_SELECT:Number = 7; public static const SND_INGAME_MESSAGE:Number = 11; private static const SND_COUNT:Number = 13; private static var _instance:MediaPlayer = null; public function MediaPlayer(){ SND_intro_mp3 = MediaPlayer_SND_intro_mp3; SND_ingame1 = MediaPlayer_SND_ingame1; SND_ingame2 = MediaPlayer_SND_ingame2; SND_ingame3 = MediaPlayer_SND_ingame3; SND_ingame4 = MediaPlayer_SND_ingame4; SND_ingame5 = MediaPlayer_SND_ingame5; SND_win = MediaPlayer_SND_win; SND_menuSelect = MediaPlayer_SND_menuSelect; SND_menuOverOption = MediaPlayer_SND_menuOverOption; SND_ingameShock = MediaPlayer_SND_ingameShock; SND_ingameWhistle = MediaPlayer_SND_ingameWhistle; SND_ingameGoal = MediaPlayer_SND_ingameGoal; SND_ingameMessage = MediaPlayer_SND_ingameMessage; super(); } public function stop(_arg1:Number, _arg2:Number=-1):void{ if (_arg2 == -1){ _arg2 = (_arg1 + 1); }; var _local3:Number = _arg1; while (_local3 < _arg2) { if (_local3 < SND_COUNT){ if (_isPlaying[_local3]){ SoundChannel(_channels[_local3]).stop(); _isPlaying[_local3] = false; }; }; _local3++; }; } public function get speakerVisible():Boolean{ return (_speaker.visible); } public function set speakerVisible(_arg1:Boolean):void{ _speaker.visible = _arg1; } private function init():void{ _players = new Array(SND_COUNT); _channels = new Array(SND_COUNT); _isPlaying = new Array(SND_COUNT); _classes = new Array(SND_COUNT); _classes[SND_INTRO] = SND_intro_mp3; _classes[SND_INGAME1] = SND_ingame1; _classes[SND_INGAME2] = SND_ingame2; _classes[SND_INGAME3] = SND_ingame3; _classes[SND_INGAME4] = SND_ingame4; _classes[SND_INGAME5] = SND_ingame5; _classes[SND_GAME_WIN] = SND_win; _classes[SND_MENU_SELECT] = SND_menuSelect; _classes[SND_MENU_OVER_OPTION] = SND_menuOverOption; _classes[SND_INGAME_SHOCK] = SND_ingameShock; _classes[SND_INGAME_WHISTLE] = SND_ingameWhistle; _classes[SND_INGAME_GOAL] = SND_ingameGoal; _classes[SND_INGAME_MESSAGE] = SND_ingameMessage; var _local1:Number = 0; while (_local1 < SND_COUNT) { _isPlaying[_local1] = false; _local1++; }; _speaker = new Sprite(); Main._instance.stage.addChild(_speaker); paintSpeaker(); _speaker.addEventListener(MouseEvent.CLICK, speakerClick); _speaker.x = ((DEF.SCREEN_WIDTH - _speaker.width) - 20); _speaker.y = 40; _speaker.alpha = 0.5; _soundVolume = new SoundTransform(); } public function mute():void{ _soundVolume.volume = 0; var _local1:Number = 0; while (_local1 < SND_COUNT) { if (_channels[_local1]){ SoundChannel(_channels[_local1]).soundTransform = _soundVolume; }; _local1++; }; } public function isPlaying(_arg1:Number):Boolean{ return (_isPlaying[_arg1]); } public function play(_arg1:Number, _arg2:Boolean=false):void{ var _local3:Number; if (_arg1 < SND_COUNT){ if (_isPlaying[_arg1]){ stop(_arg1); }; _local3 = 1; if (_arg2){ _local3 = 999; }; if (!_players[_arg1]){ _players[_arg1] = (new (_classes[_arg1]) as Sound); }; _channels[_arg1] = Sound(_players[_arg1]).play(0, _local3); _channels[_arg1].addEventListener(Event.SOUND_COMPLETE, soundPlayed); _channels[_arg1].soundTransform = _soundVolume; _isPlaying[_arg1] = true; }; } private function paintSpeaker():void{ var _local1:BitmapData; _speaker.graphics.clear(); if (_soundON){ _local1 = IMG.getSingleton().getBitmapData(IMG.SPEAKER_ON); } else { _local1 = IMG.getSingleton().getBitmapData(IMG.SPEAKER_OFF); }; _speaker.graphics.beginBitmapFill(_local1); _speaker.graphics.drawRect(0, 0, _local1.width, _local1.height); _speaker.graphics.endFill(); } public function soundPlayed(_arg1:Event):void{ var _local2:Number = 0; while (_local2 < SND_COUNT) { if (_arg1.target == _channels[_local2]){ _isPlaying[_local2] = false; if (((((_loopingRandom) && ((_local2 >= _loopFirst)))) && ((_local2 <= _loopLast)))){ play(Math.floor(((Math.random() * (_loopLast - _loopFirst)) + _loopFirst))); }; }; _local2++; }; } private function speakerClick(_arg1:MouseEvent):void{ _soundON = !(_soundON); paintSpeaker(); if (_soundON){ unMute(); } else { mute(); }; } public function loopBetween(_arg1:Number, _arg2:Number):void{ _loopFirst = _arg1; _loopLast = _arg2; _loopingRandom = true; play(Math.floor(((Math.random() * (_loopLast - _loopFirst)) + _loopFirst))); } public function unMute():void{ _soundVolume.volume = 1; var _local1:Number = 0; while (_local1 < SND_COUNT) { if (_channels[_local1]){ SoundChannel(_channels[_local1]).soundTransform = _soundVolume; }; _local1++; }; } public function stopSounds():void{ _loopingRandom = false; var _local1:Number = 0; while (_local1 < SND_COUNT) { stop(_local1); _local1++; }; } public static function getSingleton():MediaPlayer{ if (_instance == null){ _instance = new (MediaPlayer); _instance.init(); }; return (_instance); } } }//package
Section 515
//MediaPlayer_SND_ingame1 (MediaPlayer_SND_ingame1) package { import mx.core.*; public class MediaPlayer_SND_ingame1 extends SoundAsset { } }//package
Section 516
//MediaPlayer_SND_ingame2 (MediaPlayer_SND_ingame2) package { import mx.core.*; public class MediaPlayer_SND_ingame2 extends SoundAsset { } }//package
Section 517
//MediaPlayer_SND_ingame3 (MediaPlayer_SND_ingame3) package { import mx.core.*; public class MediaPlayer_SND_ingame3 extends SoundAsset { } }//package
Section 518
//MediaPlayer_SND_ingame4 (MediaPlayer_SND_ingame4) package { import mx.core.*; public class MediaPlayer_SND_ingame4 extends SoundAsset { } }//package
Section 519
//MediaPlayer_SND_ingame5 (MediaPlayer_SND_ingame5) package { import mx.core.*; public class MediaPlayer_SND_ingame5 extends SoundAsset { } }//package
Section 520
//MediaPlayer_SND_ingameGoal (MediaPlayer_SND_ingameGoal) package { import mx.core.*; public class MediaPlayer_SND_ingameGoal extends SoundAsset { } }//package
Section 521
//MediaPlayer_SND_ingameMessage (MediaPlayer_SND_ingameMessage) package { import mx.core.*; public class MediaPlayer_SND_ingameMessage extends SoundAsset { } }//package
Section 522
//MediaPlayer_SND_ingameShock (MediaPlayer_SND_ingameShock) package { import mx.core.*; public class MediaPlayer_SND_ingameShock extends SoundAsset { } }//package
Section 523
//MediaPlayer_SND_ingameWhistle (MediaPlayer_SND_ingameWhistle) package { import mx.core.*; public class MediaPlayer_SND_ingameWhistle extends SoundAsset { } }//package
Section 524
//MediaPlayer_SND_intro_mp3 (MediaPlayer_SND_intro_mp3) package { import mx.core.*; public class MediaPlayer_SND_intro_mp3 extends SoundAsset { } }//package
Section 525
//MediaPlayer_SND_menuOverOption (MediaPlayer_SND_menuOverOption) package { import mx.core.*; public class MediaPlayer_SND_menuOverOption extends SoundAsset { } }//package
Section 526
//MediaPlayer_SND_menuSelect (MediaPlayer_SND_menuSelect) package { import mx.core.*; public class MediaPlayer_SND_menuSelect extends SoundAsset { } }//package
Section 527
//MediaPlayer_SND_win (MediaPlayer_SND_win) package { import mx.core.*; public class MediaPlayer_SND_win extends SoundAsset { } }//package
Section 528
//OptionsManager (OptionsManager) package { public class OptionsManager { private var _showTutorial:Boolean; private var _showArrow:Boolean; private var _saveGame:SaveGame; private var _matchTime:Number; private var _matchTimeIndex:Number; private var _options:Object; private static var _instance:OptionsManager = null; public function OptionsManager(){ _options = new Object(); _options.matchTimeIndex = 2; _options.matchTime = 5; _options.showTutorial = true; _options.showArrow = true; _saveGame = new SaveGame("ilMareGames_GravityFootball_Options"); load(); } public function get matchTimeIndex():Number{ return ((_options.matchTimeIndex as Number)); } public function set matchTime(_arg1:Number):void{ _options.matchTime = _arg1; save(); } public function set matchTimeIndex(_arg1:Number):void{ _options.matchTimeIndex = _arg1; save(); } public function get showArrow():Boolean{ return ((_options.showArrow as Boolean)); } public function get matchTime():Number{ return ((_options.matchTime as Number)); } public function load():void{ if (_saveGame.isFirstTime()){ _saveGame.save(_options); }; _options = _saveGame.load(); } public function set showTutorial(_arg1:Boolean):void{ _options.showTutorial = _arg1; save(); } public function set showArrow(_arg1:Boolean):void{ _options.showArrow = _arg1; save(); } public function get showTutorial():Boolean{ return ((_options.showTutorial as Boolean)); } public function save():void{ _saveGame.save(_options); } public static function getSingleton():OptionsManager{ if (!_instance){ _instance = new (OptionsManager); }; return (_instance); } } }//package
Section 529
//Preloader (Preloader) package { import flash.events.*; import flash.display.*; import com.ahrooga.flash_ad_manager.components.*; import com.ahrooga.flash_ad_manager.*; import mochi.as3.*; import flash.utils.*; public dynamic class Preloader extends MovieClip { private var placeHolder:ilMareSplash; private var adManager:AdManager; public static var MAIN_CLASS:String = "Main"; public function Preloader(){ super(); var f:Function = function (_arg1:IOErrorEvent):void{ }; loaderInfo.addEventListener(IOErrorEvent.IO_ERROR, f); stage.scaleMode = StageScaleMode.NO_SCALE; stage.align = StageAlign.TOP_LEFT; this.scaleX = (Number(stage.stageWidth) / CONFIG.SCREEN_WIDTH); this.scaleY = (Number(stage.stageHeight) / CONFIG.SCREEN_HEIGHT); placeHolder = new ilMareSplash(); placeHolder.x = 0; placeHolder.y = 0; adManager = new AdManager(adFinished, placeHolder, "http://www.ilmaregames.com.ar/data/xml/GravityFootball2AdConfig.xml"); adManager.addDisabledDomain("www.kongregate.com"); adManager.addDisabledDomain("www.ilmaregames.com.ar"); adManager.preloaderBarColor = 0xFF2F00; adManager.preloaderBaseColor = 0; adManager.registerEmbeddedAd("MochiAds", initMochiAds); addChild(adManager); } private function adFinished():void{ trace("adFinished"); placeHolder.button.visible = true; placeHolder.callback = function ():void{ trace("placeHolder callback"); placeHolder.destroy(); removeChild(adManager); adManager.destroy(); adManager = null; startApp(); }; } private function initMochiAds():void{ trace("mochiads"); CONFIG.GAME_OPTIONS.ad_started = function ():void{ trace("----------------------------- adStarted"); }; CONFIG.GAME_OPTIONS.ad_finished = adFinished; CONFIG.GAME_OPTIONS.clip = this; MochiAd.showPreGameAd(CONFIG.GAME_OPTIONS); } private function startApp():void{ var _local2:Object; var _local1:Class = Class(getDefinitionByName(MAIN_CLASS)); if (_local1){ _local2 = new (_local1); addChild((_local2 as DisplayObject)); graphics.beginFill(0); graphics.drawRect(0, 0, CONFIG.SCREEN_WIDTH, CONFIG.SCREEN_HEIGHT); graphics.endFill(); (_local2 as _local1).init(); }; } } }//package
Section 530
//SaveGame (SaveGame) package { import flash.net.*; public class SaveGame { private var _cookie:SharedObject; private var _name:String; public function SaveGame(_arg1:String){ _name = _arg1; _cookie = SharedObject.getLocal(_name); } public function load():Object{ if (_cookie.data.payload != undefined){ return (_cookie.data.payload); }; return (null); } public function isFirstTime():Boolean{ if (_cookie.data.payload == undefined){ return (true); }; return (false); } public function save(_arg1:Object):void{ _cookie.data.payload = _arg1; _cookie.flush(); } } }//package

Library Items

Symbol 1 Bitmap {com.ahrooga.flash_ad_manager.components.ilMareSplash_IMG_ilMareGames}
Symbol 2 Font {com.ahrooga.flash_ad_manager.components.ilMareSplash_FONT_makisupa}
Symbol 3 Bitmap {com.ahrooga.flash_ad_manager.components.ilMareSplash_IMG_play}
Symbol 4 Sound {MediaPlayer_SND_ingame5} [MediaPlayer_SND_ingame5]
Symbol 5 Sound {MediaPlayer_SND_ingame3} [MediaPlayer_SND_ingame3]
Symbol 6 Sound {MediaPlayer_SND_ingameShock} [MediaPlayer_SND_ingameShock]
Symbol 7 Sound {MediaPlayer_SND_ingame4} [MediaPlayer_SND_ingame4]
Symbol 8 Sound {MediaPlayer_SND_ingame1} [MediaPlayer_SND_ingame1]
Symbol 9 Sound {MediaPlayer_SND_ingame2} [MediaPlayer_SND_ingame2]
Symbol 10 Sound {MediaPlayer_SND_menuSelect} [MediaPlayer_SND_menuSelect]
Symbol 11 Sound {MediaPlayer_SND_intro_mp3} [MediaPlayer_SND_intro_mp3]
Symbol 12 Sound {MediaPlayer_SND_win} [MediaPlayer_SND_win]
Symbol 13 Sound {MediaPlayer_SND_ingameGoal} [MediaPlayer_SND_ingameGoal]
Symbol 14 Sound {MediaPlayer_SND_ingameMessage} [MediaPlayer_SND_ingameMessage]
Symbol 15 Sound {MediaPlayer_SND_menuOverOption} [MediaPlayer_SND_menuOverOption]
Symbol 16 Sound {MediaPlayer_SND_ingameWhistle} [MediaPlayer_SND_ingameWhistle]
Symbol 17 GraphicUsed by:21
Symbol 18 FontUsed by:19
Symbol 19 EditableTextUses:18Used by:21
Symbol 20 GraphicUsed by:21
Symbol 21 MovieClip {KnockoutTooltip} [KnockoutTooltip]Uses:17 19 20
Symbol 22 GraphicUsed by:29
Symbol 23 MovieClipUsed by:29
Symbol 24 FontUsed by:25
Symbol 25 EditableTextUses:24Used by:29
Symbol 26 GraphicUsed by:29
Symbol 27 GraphicUsed by:29
Symbol 28 GraphicUsed by:29
Symbol 29 MovieClip {KnockoutItem} [KnockoutItem]Uses:22 23 25 26 27 28
Symbol 30 GraphicUsed by:31
Symbol 31 MovieClip {KnockoutLines} [KnockoutLines]Uses:30
Symbol 32 Bitmap {IMG_TEAM12_MINI_FLAG}
Symbol 33 Bitmap {IMG_BACKGROUND_MASK_1}
Symbol 34 Bitmap {IMG_OPTIONS_PANEL_BUTTON}
Symbol 35 Bitmap {IMG_BACKGROUND_MASK_5}
Symbol 36 Bitmap {IMG_BACKGROUND_MASK_4}
Symbol 37 Bitmap {IMG_TEAM29_GOALKEEPER}
Symbol 38 Bitmap {IMG_BACKGROUND_MASK_3}
Symbol 39 Bitmap {IMG_TEAM30_GOALKEEPER}
Symbol 40 Bitmap {IMG_BACKGROUND_MASK_2}
Symbol 41 Bitmap {IMG_BACKGROUND_MASK_9}
Symbol 42 Bitmap {IMG_TEAM23_LOGO}
Symbol 43 Bitmap {IMG_BACKGROUND_MASK_8}
Symbol 44 Bitmap {IMG_TEAM13_ATTACKER}
Symbol 45 Bitmap {IMG_BACKGROUND_MASK_7}
Symbol 46 Bitmap {IMG_BACKGROUND_MASK_6}
Symbol 47 Bitmap {IMG_MESSAGE_SECOND_HALF}
Symbol 48 Bitmap {IMG_TEAM2_LOGO}
Symbol 49 Bitmap {IMG_TEAM_NULL_GOALKEEPER}
Symbol 50 Font {Main_FONT_abadi}
Symbol 51 Bitmap {IMG_BUTTON_NEXT}
Symbol 52 Bitmap {IMG_TRAINING_PANEL_BUTTON}
Symbol 53 Bitmap {IMG_TEAM10_LOGO}
Symbol 54 Bitmap {IMG_MESSAGE_FIRST_HALF}
Symbol 55 Bitmap {IMG_TEAM13_GOALKEEPER}
Symbol 56 Bitmap {IMG_ABOUT_BACKGROUND}
Symbol 57 Bitmap {IMG_TEAM18_MINI_FLAG}
Symbol 58 Bitmap {IMG_TEAM32_LOGO}
Symbol 59 Bitmap {IMG_MENU_NEW_TOURNAMENT}
Symbol 60 Bitmap {IMG_BUTTON_RIGHT_ARROW}
Symbol 61 Bitmap {IMG_TEAM6_MINI_FLAG}
Symbol 62 Bitmap {IMG_TEAM11_MINI_FLAG}
Symbol 63 Bitmap {IMG_TEAM16_GOALKEEPER}
Symbol 64 Bitmap {IMG_TEAM27_ATTACKER}
Symbol 65 Bitmap {IMG_TEAM19_MINI_FLAG}
Symbol 66 Bitmap {IMG_MENU_RESUME_GAME}
Symbol 67 Bitmap {IMG_TEAM27_MINI_FLAG}
Symbol 68 Bitmap {IMG_TEAM25_GOALKEEPER}
Symbol 69 Bitmap {IMG_TEAM27_GOALKEEPER}
Symbol 70 Font {Main_FONT_lcd}
Symbol 71 Bitmap {IMG_MENU_REMATCH}
Symbol 72 Bitmap {IMG_TEAM29_ATTACKER}
Symbol 73 Bitmap {IMG_SPEAKER_ON}
Symbol 74 Bitmap {IMG_TEAM2_MINI_FLAG}
Symbol 75 Bitmap {IMG_BACKGROUND_MASK_10}
Symbol 76 Bitmap {IMG_TEAM15_GOALKEEPER}
Symbol 77 Bitmap {IMG_TEAM28_ATTACKER}
Symbol 78 Bitmap {IMG_TEAM31_LOGO}
Symbol 79 Bitmap {IMG_MENU_CHECKED}
Symbol 80 Bitmap {IMG_TEAM21_GOALKEEPER}
Symbol 81 Bitmap {IMG_TEAM10_MINI_FLAG}
Symbol 82 Bitmap {IMG_MENU_CHOOSE_TEAMS}
Symbol 83 Bitmap {IMG_TEAM_NULL_MINI_FLAG}
Symbol 84 Bitmap {IMG_TEAM4_MINI_FLAG}
Symbol 85 Bitmap {IMG_TEAM10_ATTACKER}
Symbol 86 Bitmap {IMG_NEXT_PAGE_BUTTON}
Symbol 87 Bitmap {IMG_TEAM4_ATTACKER}
Symbol 88 Bitmap {IMG_LABEL_PLAYER_1}
Symbol 89 Bitmap {IMG_MENU_LESS}
Symbol 90 Bitmap {IMG_MENU_PANEL_BUTTON}
Symbol 91 Bitmap {IMG_LABEL_PLAYER_2}
Symbol 92 Bitmap {IMG_TEAM13_MINI_FLAG}
Symbol 93 Bitmap {IMG_TEAM22_GOALKEEPER}
Symbol 94 Bitmap {IMG_BALL}
Symbol 95 Bitmap {IMG_MESSAGE_KICK_OFF}
Symbol 96 Bitmap {IMG_POST_MATCH_BACKGROUND}
Symbol 97 Bitmap {IMG_TEAM14_MINI_FLAG}
Symbol 98 Bitmap {IMG_TEAM12_LOGO}
Symbol 99 Bitmap {IMG_TEAM4_LOGO}
Symbol 100 Bitmap {IMG_TEAM31_MINI_FLAG}
Symbol 101 Bitmap {IMG_TEAM31_ATTACKER}
Symbol 102 Bitmap {IMG_TEAM20_LOGO}
Symbol 103 Bitmap {IMG_TEAM21_ATTACKER}
Symbol 104 Bitmap {IMG_TEAM20_MINI_FLAG}
Symbol 105 Bitmap {IMG_MENU_UNCHECKED}
Symbol 106 Bitmap {IMG_MENU_MORE}
Symbol 107 Bitmap {IMG_TEAM3_MINI_FLAG}
Symbol 108 Bitmap {IMG_TEAM_UNLOCKED}
Symbol 109 Bitmap {IMG_TEAM17_ATTACKER}
Symbol 110 Bitmap {IMG_TEAM28_GOALKEEPER}
Symbol 111 Bitmap {IMG_TEAM1_LOGO}
Symbol 112 Bitmap {IMG_ARROW_HELPER}
Symbol 113 Bitmap {IMG_TEAM14_ATTACKER}
Symbol 114 Bitmap {IMG_MENU_PLAYGROUND}
Symbol 115 Bitmap {IMG_EXIT_PANEL_BUTTON}
Symbol 116 Bitmap {IMG_TEAM_LOCKED_MESSAGE}
Symbol 117 Bitmap {IMG_TOP_PANEL_REFLECTION}
Symbol 118 Bitmap {IMG_TEAM28_LOGO}
Symbol 119 Bitmap {IMG_TEAM26_ATTACKER}
Symbol 120 Bitmap {IMG_KNOCKOUT_RESULTS}
Symbol 121 Bitmap {IMG_LOGO_PANEL}
Symbol 122 Bitmap {IMG_TEAM18_GOALKEEPER}
Symbol 123 Bitmap {IMG_TEAM25_MINI_FLAG}
Symbol 124 Bitmap {IMG_ILMARE_BANNER}
Symbol 125 Bitmap {IMG_TEAM20_GOALKEEPER}
Symbol 126 Bitmap {IMG_TEAM25_ATTACKER}
Symbol 127 Bitmap {IMG_TEAM24_GOALKEEPER}
Symbol 128 Bitmap {IMG_TEAM24_ATTACKER}
Symbol 129 Bitmap {IMG_TEAM1_GOALKEEPER}
Symbol 130 Bitmap {IMG_BALL_7}
Symbol 131 Bitmap {IMG_BALL_6}
Symbol 132 Bitmap {IMG_TEAM19_GOALKEEPER}
Symbol 133 Bitmap {IMG_TEAM29_MINI_FLAG}
Symbol 134 Bitmap {IMG_BALL_5}
Symbol 135 Bitmap {IMG_TEAM30_LOGO}
Symbol 136 Bitmap {IMG_BALL_4}
Symbol 137 Bitmap {IMG_MENU_FRONT_END}
Symbol 138 Bitmap {IMG_TEAM7_MINI_FLAG}
Symbol 139 Bitmap {IMG_TEAM8_ATTACKER}
Symbol 140 Bitmap {IMG_BALL_8}
Symbol 141 Bitmap {IMG_TEAM22_ATTACKER}
Symbol 142 Bitmap {IMG_TEAM2_GOALKEEPER}
Symbol 143 Bitmap {IMG_BALL_2}
Symbol 144 Bitmap {IMG_TEAM7_GOALKEEPER}
Symbol 145 Bitmap {IMG_TEAM16_LOGO}
Symbol 146 Bitmap {IMG_TEAM25_LOGO}
Symbol 147 Bitmap {IMG_BALL_3}
Symbol 148 Bitmap {IMG_TEAM_NULL_ATTACKER}
Symbol 149 Bitmap {IMG_MESSAGE_TIME_UP}
Symbol 150 Bitmap {IMG_BALL_0}
Symbol 151 Bitmap {IMG_BALL_1}
Symbol 152 Bitmap {IMG_TEAM29_LOGO}
Symbol 153 Bitmap {IMG_LCD_FONT_SMALL}
Symbol 154 Bitmap {IMG_MENU_SEASON}
Symbol 155 Bitmap {IMG_MENU_1P_VS_2P}
Symbol 156 Bitmap {IMG_MENU_CONTINUE}
Symbol 157 Bitmap {IMG_TEAM22_LOGO}
Symbol 158 Bitmap {IMG_TEAM12_ATTACKER}
Symbol 159 Bitmap {IMG_TEAM0_GOALKEEPER}
Symbol 160 Bitmap {IMG_SPEAKER_OFF}
Symbol 161 Bitmap {IMG_TEAM_LOCKED}
Symbol 162 Bitmap {IMG_TEAM1_ATTACKER}
Symbol 163 Bitmap {IMG_TEAM26_LOGO}
Symbol 164 Bitmap {IMG_TEAM6_ATTACKER}
Symbol 165 Bitmap {IMG_TEAM18_ATTACKER}
Symbol 166 Bitmap {IMG_TEAM9_LOGO}
Symbol 167 Bitmap {IMG_TEAM19_LOGO}
Symbol 168 Bitmap {IMG_MENU_OPTIONS}
Symbol 169 Bitmap {IMG_TEAM15_MINI_FLAG}
Symbol 170 Bitmap {IMG_TEAM1_MINI_FLAG}
Symbol 171 Bitmap {IMG_SEASON_RESULTS}
Symbol 172 Bitmap {IMG_TEAM23_GOALKEEPER}
Symbol 173 Bitmap {IMG_TEAM16_MINI_FLAG}
Symbol 174 Bitmap {IMG_TEAM30_MINI_FLAG}
Symbol 175 Bitmap {IMG_TEAM10_GOALKEEPER}
Symbol 176 Bitmap {IMG_BACKGROUND_PLAYGROUND}
Symbol 177 Bitmap {IMG_LEGIBLE_FONT_SMALL}
Symbol 178 Bitmap {IMG_MENU_1P_VS_COM}
Symbol 179 Bitmap {IMG_LEVEL_INDICATOR_REFLECTION}
Symbol 180 Bitmap {IMG_TEAM0_ATTACKER}
Symbol 181 Bitmap {IMG_STATS_INDICATOR_REFLECTION}
Symbol 182 Bitmap {IMG_SEASON_LOST}
Symbol 183 Bitmap {IMG_TEAM5_ATTACKER}
Symbol 184 Bitmap {IMG_TEAM17_MINI_FLAG}
Symbol 185 Bitmap {IMG_TEAM4_GOALKEEPER}
Symbol 186 Bitmap {IMG_TEAM6_LOGO}
Symbol 187 Bitmap {IMG_TEAM27_LOGO}
Symbol 188 Bitmap {IMG_MENU_BACKGROUND}
Symbol 189 Bitmap {IMG_TEAM23_ATTACKER}
Symbol 190 Bitmap {IMG_PLAYER_INDICATOR}
Symbol 191 Bitmap {IMG_GRAY_BACKGROUND}
Symbol 192 Bitmap {IMG_TEAM22_MINI_FLAG}
Symbol 193 Bitmap {IMG_TEAM8_GOALKEEPER}
Symbol 194 Bitmap {IMG_BUTTON_LEFT_ARROW}
Symbol 195 Bitmap {IMG_TEAM17_LOGO}
Symbol 196 Bitmap {IMG_TEAM23_MINI_FLAG}
Symbol 197 Bitmap {IMG_TEAM17_GOALKEEPER}
Symbol 198 Bitmap {IMG_TEAM21_LOGO}
Symbol 199 Bitmap {IMG_TEAM3_ATTACKER}
Symbol 200 Bitmap {IMG_TEAM11_LOGO}
Symbol 201 Bitmap {IMG_TEAM18_LOGO}
Symbol 202 Bitmap {IMG_MENU_QUICK_MATCH}
Symbol 203 Bitmap {IMG_PREVIOUS_PAGE_BUTTON}
Symbol 204 Bitmap {IMG_SPONSOR_BANNER}
Symbol 205 Bitmap {IMG_PRE_MATCH_BACKGROUND}
Symbol 206 Bitmap {IMG_TEAM26_MINI_FLAG}
Symbol 207 Bitmap {IMG_LOGO_PANEL_REFLECTION}
Symbol 208 Bitmap {IMG_TEAM7_ATTACKER}
Symbol 209 Bitmap {IMG_TEAM8_LOGO}
Symbol 210 Bitmap {IMG_TEAM11_ATTACKER}
Symbol 211 Bitmap {IMG_TEAM26_GOALKEEPER}
Symbol 212 Bitmap {IMG_SELECT_TEAM_BACKGROUND}
Symbol 213 Bitmap {IMG_TEAM21_MINI_FLAG}
Symbol 214 Bitmap {IMG_TEAM14_GOALKEEPER}
Symbol 215 Bitmap {IMG_SEASON_WON}
Symbol 216 Bitmap {IMG_TEAM30_ATTACKER}
Symbol 217 Bitmap {IMG_TEAM5_MINI_FLAG}
Symbol 218 Bitmap {IMG_TEAM3_GOALKEEPER}
Symbol 219 Bitmap {IMG_BACKGROUND}
Symbol 220 Bitmap {IMG_MENU_MORE_GAMES}
Symbol 221 Bitmap {IMG_LEGIBLE_FONT_BIG}
Symbol 222 Bitmap {IMG_MENU_NEW_SEASON}
Symbol 223 Bitmap {IMG_TEAM2_ATTACKER}
Symbol 224 Bitmap {IMG_MENU_PLAY_MORE_GAMES_BUTTON}
Symbol 225 Bitmap {IMG_LOGO}
Symbol 226 Bitmap {IMG_INTERLEVEL_BACKGROUND}
Symbol 227 Bitmap {IMG_TEAM7_LOGO}
Symbol 228 Bitmap {IMG_TEAM11_GOALKEEPER}
Symbol 229 Bitmap {IMG_MASKED_EXPLODE}
Symbol 230 Bitmap {IMG_TEAM24_MINI_FLAG}
Symbol 231 Bitmap {IMG_TEAM8_MINI_FLAG}
Symbol 232 Bitmap {IMG_TEAM9_MINI_FLAG}
Symbol 233 Bitmap {IMG_TEAM14_LOGO}
Symbol 234 Bitmap {IMG_MESSAGE_FINAL_WHISTLE}
Symbol 235 Bitmap {IMG_BUTTON_BACK}
Symbol 236 Bitmap {IMG_TEAM16_ATTACKER}
Symbol 237 Bitmap {IMG_MESSAGE_GOAL}
Symbol 238 Bitmap {IMG_LEVEL_INDICATOR}
Symbol 239 Bitmap {IMG_TEAM13_LOGO}
Symbol 240 Bitmap {IMG_MENU_HIGHSCORES}
Symbol 241 Bitmap {IMG_TEAM15_ATTACKER}
Symbol 242 Bitmap {IMG_TEAM_NAME_REFLECTION}
Symbol 243 Bitmap {IMG_TEAM20_ATTACKER}
Symbol 244 Bitmap {IMG_AREA}
Symbol 245 Bitmap {IMG_TEAM28_MINI_FLAG}
Symbol 246 Bitmap {IMG_MESSAGE_PENALTIES}
Symbol 247 Bitmap {IMG_MENU_MAIN_MENU}
Symbol 248 Bitmap {IMG_TOP_PANEL_PLAYGROUND}
Symbol 249 Bitmap {IMG_TEAM15_LOGO}
Symbol 250 Bitmap {IMG_TEAM3_LOGO}
Symbol 251 Bitmap {IMG_TEAM31_GOALKEEPER}
Symbol 252 Bitmap {IMG_MENU_ABOUT}
Symbol 253 Bitmap {IMG_TEAM12_GOALKEEPER}
Symbol 254 Bitmap {IMG_TEAM19_ATTACKER}
Symbol 255 Bitmap {IMG_TUTORIAL_KEYS}
Symbol 256 Bitmap {IMG_TEAM9_GOALKEEPER}
Symbol 257 Bitmap {IMG_TEAM5_LOGO}
Symbol 258 Bitmap {IMG_TEAM9_ATTACKER}
Symbol 259 Font {Main_FONT_metabold}
Symbol 260 Bitmap {IMG_MENU_TOURNAMENT}
Symbol 261 Bitmap {IMG_TOP_PANEL}
Symbol 262 Bitmap {IMG_TEAM5_GOALKEEPER}
Symbol 263 Bitmap {IMG_MENU_BACK}
Symbol 264 Bitmap {IMG_TEAM24_LOGO}
Symbol 265 Bitmap {IMG_TEAM32_MINI_FLAG}
Symbol 266 Bitmap {IMG_TEAM6_GOALKEEPER}

Instance Names

"teamName"Symbol 21 MovieClip {KnockoutTooltip} [KnockoutTooltip] Frame 1Symbol 19 EditableText
"imageDock"Symbol 29 MovieClip {KnockoutItem} [KnockoutItem] Frame 1Symbol 23 MovieClip
"score"Symbol 29 MovieClip {KnockoutItem} [KnockoutItem] Frame 1Symbol 25 EditableText
"score"Symbol 29 MovieClip {KnockoutItem} [KnockoutItem] Frame 6Symbol 25 EditableText

Special Tags

FileAttributes (69)Timeline Frame 1Access network only, Metadata present, AS3.
SWFMetaData (77)Timeline Frame 1459 bytes "<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#'><rdf:Description rdf:about='' xmlns ..."
ScriptLimits (65)Timeline Frame 1MaxRecursionDepth: 1000, ScriptTimeout: 60 seconds
ExportAssets (56)Timeline Frame 2Symbol 4 as "MediaPlayer_SND_ingame5"
ExportAssets (56)Timeline Frame 2Symbol 5 as "MediaPlayer_SND_ingame3"
ExportAssets (56)Timeline Frame 2Symbol 6 as "MediaPlayer_SND_ingameShock"
ExportAssets (56)Timeline Frame 2Symbol 7 as "MediaPlayer_SND_ingame4"
ExportAssets (56)Timeline Frame 2Symbol 8 as "MediaPlayer_SND_ingame1"
ExportAssets (56)Timeline Frame 2Symbol 9 as "MediaPlayer_SND_ingame2"
ExportAssets (56)Timeline Frame 2Symbol 10 as "MediaPlayer_SND_menuSelect"
ExportAssets (56)Timeline Frame 2Symbol 11 as "MediaPlayer_SND_intro_mp3"
ExportAssets (56)Timeline Frame 2Symbol 12 as "MediaPlayer_SND_win"
ExportAssets (56)Timeline Frame 2Symbol 13 as "MediaPlayer_SND_ingameGoal"
ExportAssets (56)Timeline Frame 2Symbol 14 as "MediaPlayer_SND_ingameMessage"
ExportAssets (56)Timeline Frame 2Symbol 15 as "MediaPlayer_SND_menuOverOption"
ExportAssets (56)Timeline Frame 2Symbol 16 as "MediaPlayer_SND_ingameWhistle"
ExportAssets (56)Timeline Frame 2Symbol 21 as "KnockoutTooltip"
ExportAssets (56)Timeline Frame 2Symbol 29 as "KnockoutItem"
ExportAssets (56)Timeline Frame 2Symbol 31 as "KnockoutLines"
SerialNumber (41)Timeline Frame 1

Labels

"Preloader"Frame 1
"Main"Frame 2
"_enabled"Symbol 29 MovieClip {KnockoutItem} [KnockoutItem] Frame 1
"_player"Symbol 29 MovieClip {KnockoutItem} [KnockoutItem] Frame 3
"_disabled"Symbol 29 MovieClip {KnockoutItem} [KnockoutItem] Frame 5




http://swfchan.com/23/112508/info.shtml
Created: 12/3 -2019 08:19:28 Last modified: 12/3 -2019 08:19:28 Server time: 02/05 -2024 22:01:44