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

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

Jetstream Penguin.swf

This is the info page for
Flash #100528

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


Text
LOADING  0%

CHALLENGE YOUR FACEBOOK FRIENDS?

POST TO YOUR PROFILE?

INVITE YOUR FACEBOOK FRIENDS?

FLY USING THE ARROW KEYS.

TRY USING THE MOUSE FOR EXTRA CONTROL.

+5

Challenge Friends

Challenge Friends

ActionScript [AS3]

Section 1
//Filters (as3lib.display.Filters) package as3lib.display { import flash.filters.*; public class Filters { private static var _outlines:GlowFilter; private static var _dropShaddow:DropShadowFilter; private static var _dropShaddow2:DropShadowFilter; private static var _blurFilter:BlurFilter; public static function getBlurFilter():BlurFilter{ if (!_blurFilter){ _blurFilter = new BlurFilter(30, 30, 1); }; return (_blurFilter); } public static function getDropShaddowFilter2():DropShadowFilter{ if (!_dropShaddow2){ _dropShaddow2 = new DropShadowFilter(0, 45, 0, 0.3, 10, 10); }; return (_dropShaddow2); } public static function getDropShaddowFilter():DropShadowFilter{ if (!_dropShaddow){ _dropShaddow = new DropShadowFilter(6, 45, 0, 0.3); }; return (_dropShaddow); } } }//package as3lib.display
Section 2
//ArrayTools (as3lib.utils.ArrayTools) package as3lib.utils { public class ArrayTools { public static function contains(_arg1:Array, _arg2:Object):Boolean{ var _local3:Boolean; var _local4:Number = 0; while (_local4 < _arg1.length) { if (_arg2 == _arg1[_local4]){ _local3 = true; break; }; _local4++; }; return (_local3); } public static function removeItem(_arg1:Array, _arg2:Object):void{ var _local3:Number = 0; while (_local3 < _arg1.length) { if (_arg2 == _arg1[_local3]){ _arg1.splice(_local3, 1); }; _local3++; }; } } }//package as3lib.utils
Section 3
//DisplayTools (as3lib.utils.DisplayTools) package as3lib.utils { import flash.display.*; import flash.filters.*; import flash.geom.*; public class DisplayTools { public static function setBrightness(_arg1:DisplayObject, _arg2:Number):void{ var _local3:ColorTransform = new ColorTransform(); _local3.redOffset = (_arg2 * 0xFF); _local3.greenOffset = (_arg2 * 0xFF); _local3.blueOffset = (_arg2 * 0xFF); _arg1.transform.colorTransform = _local3; } public static function getBlurFilter(_arg1:Number, _arg2:Number, _arg3:Number=1):BlurFilter{ var _local4:BlurFilter = new BlurFilter(); _local4.blurX = _arg1; _local4.blurY = _arg2; _local4.quality = _arg3; return (_local4); } public static function removeAllChildrenFrom(_arg1:DisplayObjectContainer):void{ while (_arg1.numChildren > 0) { _arg1.removeChildAt(0); }; } public static function getGlowFilter(_arg1:Number=0xFFFF00, _arg2:Number=10):GlowFilter{ var _local3:GlowFilter = new GlowFilter(); _local3.color = _arg1; _local3.alpha = 1; _local3.blurX = _arg2; _local3.blurY = _arg2; _local3.strength = 10; return (_local3); } public static function getDropShadowFilter(_arg1:Number=0, _arg2:Number=45, _arg3:Number=0, _arg4:Number=1, _arg5:Number=5, _arg6:Number=5, _arg7:Number=0.6):DropShadowFilter{ var _local8:DropShadowFilter = new DropShadowFilter(); _local8.distance = _arg1; _local8.angle = _arg2; _local8.color = _arg3; _local8.alpha = _arg4; _local8.blurX = _arg5; _local8.blurY = _arg6; _local8.strength = _arg7; return (_local8); } public static function setColour(_arg1:DisplayObject, _arg2:int, _arg3:int, _arg4:int):void{ var _local5:ColorTransform = _arg1.transform.colorTransform; _local5.redOffset = _arg2; _local5.greenOffset = _arg3; _local5.blueOffset = _arg4; _arg1.transform.colorTransform = _local5; } public static function getShapeRect(_arg1:Number, _arg2:Number, _arg3:Number=0xFFFFFF, _arg4:Number=1, _arg5:int=0, _arg6=0, _arg7:Number=1):Shape{ var _local8:Shape = new Shape(); _local8.graphics.lineStyle(_arg5, _arg6, _arg7); _local8.graphics.beginFill(_arg3, _arg4); _local8.graphics.drawRect(0, 0, _arg1, _arg2); _local8.graphics.endFill(); return (_local8); } } }//package as3lib.utils
Section 4
//HitTest (as3lib.utils.HitTest) package as3lib.utils { public class HitTest { public static function lineToLineIntersection(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number, _arg8:Number):Object{ var _local10:Number; var _local11:Number; var _local12:Number; var _local9:Object = {b:false, x:0, y:0}; _local12 = (((_arg3 - _arg1) * (_arg8 - _arg6)) - ((_arg4 - _arg2) * (_arg7 - _arg5))); if (_local12 != 0){ _local10 = ((((_arg2 - _arg6) * (_arg7 - _arg5)) - ((_arg1 - _arg5) * (_arg8 - _arg6))) / _local12); _local11 = ((((_arg2 - _arg6) * (_arg3 - _arg1)) - ((_arg1 - _arg5) * (_arg4 - _arg2))) / _local12); if ((((_local10 >= 0)) && ((_local10 <= 1)))){ if ((((_local11 >= 0)) && ((_local11 <= 1)))){ _local9.b = true; _local9.x = (_arg1 + (_local10 * (_arg3 - _arg1))); _local9.y = (_arg2 + (_local10 * (_arg4 - _arg2))); }; }; }; return (_local9); } } }//package as3lib.utils
Section 5
//NumberUtils (as3lib.utils.NumberUtils) package as3lib.utils { import flash.geom.*; public class NumberUtils { public static var sineTable:Array; public static var cosTable:Array; public static var initialised:Boolean; public static function initialiseSinCos():void{ sineTable = []; var _local1:int; while (_local1 < 360) { sineTable[_local1] = Math.sin(((Math.PI / 180) * _local1)); _local1++; }; cosTable = []; var _local2:int; while (_local2 < 360) { cosTable[_local2] = Math.cos(((Math.PI / 180) * _local2)); _local2++; }; initialised = true; } public static function interpolate(_arg1:Number, _arg2:Number, _arg3:Number):Number{ return ((_arg2 + ((_arg3 - _arg2) * _arg1))); } public static function quickSin(_arg1:Number):Number{ if (!initialised){ initialiseSinCos(); }; return (sineTable[int(_arg1)]); } public static function normalize(_arg1:Number, _arg2:Number, _arg3:Number):Number{ return (((_arg1 - _arg2) / (_arg3 - _arg2))); } public static function quickCos(_arg1:Number):Number{ if (!initialised){ initialiseSinCos(); }; return (cosTable[int(_arg1)]); } public static function rotatePointByAngle(_arg1:Point, _arg2:Number):void{ var _local3:Number = _arg2; var _local4:Number = _arg2; if (_arg2 < 0){ _local3 = (180 - _arg2); _local4 = (360 + _arg2); }; var _local5:Number = quickCos(_local4); var _local6:Number = quickSin(_local3); var _local7:Number = _arg1.x; var _local8:Number = _arg1.y; var _local9:Number = ((_local5 * _local7) - (_local6 * _local8)); var _local10:Number = ((_local5 * _local8) + (_local6 * _local7)); _arg1.x = Math.round(_local9); _arg1.y = Math.round(_local10); } public static function map(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number):Number{ return (interpolate(normalize(_arg1, _arg2, _arg3), _arg4, _arg5)); } } }//package as3lib.utils
Section 6
//CustomEvent (as3lib.CustomEvent) package as3lib { import flash.events.*; public class CustomEvent extends Event { protected var _data:Object; protected var _type:String; public static const LOAD_COMPLETE:String = "loadComplete"; public static const READY:String = "ready"; public static const CANCEL:String = "cancel"; public static const START_DRAG:String = "startDrag"; public static const HOVER:String = "hover"; public static const FAIL:String = "fail"; public static const DELETE:String = "delete"; public static const OUT:String = "out"; public static const CHANGE:String = "change"; public static const PREV:String = "prev"; public static const INTERACT:String = "interact"; public static const COMPLETE:String = "complete"; public static const EXIT_COMPLETE:String = "exitComplete"; public static const DESELECT:String = "deselect"; public static const INTERACT_FINISH:String = "interactFinish"; public static const EXIT_MIDPOINT:String = "exitMidpoint"; public static const OPEN:String = "open"; public static const OVER:String = "over"; public static const CLOSE:String = "close"; public static const SUCCESS:String = "successs"; public static const PLAY_COMPLETE:String = "playComplete"; public static const ENTER_COMPLETE:String = "enterComplete"; public static const DROP_ONTO:String = "dropOnto"; public static const ENTER_MIDPOINT:String = "enterMidpoint"; public static const NEXT:String = "next"; public static const INTERACT_START:String = "interactStart"; public static const SELECT:String = "select"; public function CustomEvent(_arg1:String, _arg2:Object=null){ super(_arg1); _type = _arg1; _data = _arg2; } public function get data():Object{ return (_data); } override public function clone():Event{ return (new CustomEvent(_type, _data)); } } }//package as3lib
Section 7
//KeyPoll (as3lib.KeyPoll) package as3lib { import flash.events.*; import flash.display.*; import flash.utils.*; public class KeyPoll { private var states:ByteArray; private var dispObj:DisplayObject; public static var KEY_0:Number = 48; public static var KEY_1:Number = 49; public static var KEY_2:Number = 50; public static var KEY_3:Number = 51; public static var KEY_4:Number = 52; public static var KEY_5:Number = 53; public static var KEY_6:Number = 54; public static var KEY_7:Number = 55; public static var KEY_8:Number = 56; public static var KEY_9:Number = 57; public static var KEY_A:Number = 65; public static var KEY_B:Number = 66; public static var KEY_C:Number = 67; public static var KEY_D:Number = 68; public static var KEY_E:Number = 69; public static var KEY_F:Number = 70; public static var KEY_G:Number = 71; public static var KEY_H:Number = 72; public static var KEY_I:Number = 73; public static var KEY_J:Number = 74; public static var KEY_K:Number = 75; public static var KEY_L:Number = 76; public static var KEY_M:Number = 77; public static var KEY_N:Number = 78; public static var KEY_O:Number = 79; public static var KEY_P:Number = 80; public static var KEY_Q:Number = 81; public static var KEY_R:Number = 82; public static var KEY_S:Number = 83; public static var KEY_T:Number = 84; public static var KEY_U:Number = 85; public static var KEY_V:Number = 86; public static var KEY_W:Number = 87; public static var KEY_X:Number = 88; public static var KEY_Y:Number = 89; public static var KEY_Z:Number = 90; private static var _instance:KeyPoll = null; public function initialise(_arg1:DisplayObject):void{ states = new ByteArray(); states.writeUnsignedInt(0); states.writeUnsignedInt(0); states.writeUnsignedInt(0); states.writeUnsignedInt(0); states.writeUnsignedInt(0); states.writeUnsignedInt(0); states.writeUnsignedInt(0); states.writeUnsignedInt(0); dispObj = _arg1; dispObj.addEventListener(KeyboardEvent.KEY_DOWN, keyDownListener, false, 0, true); dispObj.addEventListener(KeyboardEvent.KEY_UP, keyUpListener, false, 0, true); } public function isDown(_arg1:uint):Boolean{ return (!(((states[(_arg1 >>> 3)] & (1 << (_arg1 & 7))) == 0))); } private function keyDownListener(_arg1:KeyboardEvent):void{ states[(_arg1.keyCode >>> 3)] = (states[(_arg1.keyCode >>> 3)] | (1 << (_arg1.keyCode & 7))); } public function isUp(_arg1:uint):Boolean{ return (((states[(_arg1 >>> 3)] & (1 << (_arg1 & 7))) == 0)); } private function keyUpListener(_arg1:KeyboardEvent):void{ states[(_arg1.keyCode >>> 3)] = (states[(_arg1.keyCode >>> 3)] & ~((1 << (_arg1.keyCode & 7)))); } public function reset():void{ dispObj.removeEventListener(KeyboardEvent.KEY_DOWN, keyDownListener); dispObj.removeEventListener(KeyboardEvent.KEY_UP, keyUpListener); initialise(dispObj); } public static function get instance():KeyPoll{ if (_instance == null){ _instance = new (KeyPoll); }; return (_instance); } } }//package as3lib
Section 8
//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 isEmpty():Boolean{ return (_empty); } public function toURLString():String{ var _local1:Variables; _local1 = toVariables(); return (_local1.toString()); } public function toVariables():Variables{ var _local1:Variables; _local1 = new Variables(); _local1.URIencode = true; if (((!(isEmpty())) && (isNew()))){ _local1.utmcn = utmcn; }; if (((!(isEmpty())) && (!(isNew())))){ _local1.utmcr = utmcr; }; return (_local1); } public function isNew():Boolean{ return (_new); } public function get utmcn():String{ return ("1"); } public function get utmcr():String{ return ("1"); } } }//package com.google.analytics.campaign
Section 9
//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" public function CampaignKey(){ UCCN = "utm_campaign"; UCCT = "utm_content"; UCID = "utm_id"; UCMD = "utm_medium"; UCNO = "utm_nooverride"; UCSR = "utm_source"; UCTR = "utm_term"; UGCLID = "gclid"; super(); } } }//package com.google.analytics.campaign
Section 10
//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 hasNoOverride(_arg1:String):Boolean{ var _local2:CampaignKey; var _local3:Variables; var _local4:String; _local2 = _config.campaignKey; if (_arg1 == ""){ return (false); }; _local3 = new Variables(_arg1); _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 getCampaignInformation(_arg1:String, _arg2:Boolean):CampaignInfo{ var _local3:CampaignInfo; var _local4:CampaignTracker; var _local5:Boolean; var _local6:Boolean; var _local7:int; var _local8:CampaignTracker; var _local9:int; _local3 = new CampaignInfo(); _local5 = false; _local6 = false; _local7 = 0; 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 isValid(_arg1:CampaignTracker):Boolean{ if (((_arg1) && (_arg1.isValid()))){ return (true); }; return (false); } public function getTrackerFromSearchString(_arg1:String):CampaignTracker{ var _local2:CampaignTracker; var _local3:CampaignTracker; var _local4:CampaignKey; var _local5:Variables; _local2 = getOrganicCampaign(); _local3 = new CampaignTracker(); _local4 = _config.campaignKey; if (_arg1 == ""){ return (_local3); }; _local5 = 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 _local2:URL; var _local3:String; var _local4:Array; var _local5:OrganicReferrer; var _local6:String; if (((isInvalidReferrer(_referrer)) || (isFromGoogleCSE(_referrer, _config)))){ return (_local1); }; _local2 = new URL(_referrer); _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 isIgnoredReferral(_arg1:CampaignTracker):Boolean{ if (((_arg1) && ((_arg1.medium == "referral")))){ return (_config.organic.isIgnoredReferral(_arg1.source)); }; return (false); } public function getDirectCampaign():CampaignTracker{ var _local1:CampaignTracker; _local1 = 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 getReferrerCampaign():CampaignTracker{ var _local1:CampaignTracker; var _local2:URL; var _local3:String; var _local4:String; if (((isInvalidReferrer(_referrer)) || (isFromGoogleCSE(_referrer, _config)))){ return (_local1); }; _local2 = new URL(_referrer); _local3 = _local2.hostName; _local4 = _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; _local3 = 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 11
//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 id:String; public var clickId:String; public var name:String; public var term:String; public var medium:String; public var source: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 toTrackerString():String{ var _local1:Array; _local1 = []; _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)); } public function isValid():Boolean{ if (((((!((id == ""))) || (!((source == ""))))) || (!((clickId == ""))))){ return (true); }; return (false); } 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; var _local3:Variables; _local2 = _arg1.split(CampaignManager.trackingDelimiter).join("&"); _local3 = 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 12
//FlashTracker (com.google.analytics.components.FlashTracker) package com.google.analytics.components { import com.google.analytics.core.*; import com.google.analytics.v4.*; import com.google.analytics.debug.*; import com.google.analytics.utils.*; import flash.events.*; import flash.display.*; import com.google.analytics.external.*; import com.google.analytics.*; import flash.utils.*; import com.google.analytics.events.*; public class FlashTracker extends Sprite implements AnalyticsTracker { private var _adSense:AdSenseGlobals; private var _env:Environment; protected var _height:Number;// = 18 private var _idleTimer:IdleTimer; private var _config:Configuration; private var _mode:String;// = "AS3" private var _dom:HTMLDOM; private var _ready:Boolean;// = false protected var _width:Number;// = 18 private var _account:String;// = "" protected var _componentInspectorSetting:Boolean; private var _visualDebug:Boolean;// = false public var boundingBox_mc:DisplayObject; private var _debug:DebugConfiguration; private var _buffer:Buffer; private var _display:DisplayObject; protected var livePreviewHeight:Number; private var _jsproxy:JavascriptProxy; protected var isLivePreview:Boolean; protected var preview:MovieClip; private var _gifRequest:GIFRequest; protected var livePreviewWidth:Number; private var _tracker:GoogleAnalyticsAPI; public static var version:Version = API.version; public function FlashTracker(){ _ready = false; _account = ""; _mode = TrackerMode.AS3; _visualDebug = false; _width = 18; _height = 18; super(); _tracker = new TrackerCache(); isLivePreview = _checkLivePreview(); _componentInspectorSetting = false; if (boundingBox_mc){ boundingBox_mc.visible = false; removeChild(boundingBox_mc); boundingBox_mc = null; }; if (isLivePreview){ _createLivePreview(); }; addEventListener(Event.ENTER_FRAME, _factory); } public function trackEvent(_arg1:String, _arg2:String, _arg3:String=null, _arg4:Number=NaN):Boolean{ return (_tracker.trackEvent(_arg1, _arg2, _arg3, _arg4)); } public function trackTrans():void{ _tracker.trackTrans(); } private function _createLivePreview():void{ var _local1:Graphics; var _local2:Class; preview = new MovieClip(); _local1 = preview.graphics; _local1.beginFill(0xFFFFFF); _local1.moveTo(0, 0); _local1.lineTo(0, _width); _local1.lineTo(_width, _height); _local1.lineTo(_height, 0); _local1.lineTo(0, 0); _local1.endFill(); _local2 = (getDefinitionByName("com.google.analytics.components::Icon") as Class); preview.icon_mc = new (_local2); preview.icon_mc.name = "icon_mc"; preview.addChild(preview.icon_mc); addChild(preview); } public function trackPageview(_arg1:String=""):void{ _tracker.trackPageview(_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 setCampNameKey(_arg1:String):void{ _tracker.setCampNameKey(_arg1); } public function resetSession():void{ _tracker.resetSession(); } public function set account(_arg1:String):void{ _account = _arg1; } public function get debug():DebugConfiguration{ if (!_debug){ _createDebugAndConfig(); }; return (_debug); } public function createEventTracker(_arg1:String):EventTracker{ return (_tracker.createEventTracker(_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 setLocalServerMode():void{ _tracker.setLocalServerMode(); } public function getLocalGifPath():String{ return (_tracker.getLocalGifPath()); } public function clearIgnoredRef():void{ _tracker.clearIgnoredRef(); } public function isReady():Boolean{ return (_ready); } public function set debug(_arg1:DebugConfiguration):void{ _debug = _arg1; } public function getVersion():String{ return (_tracker.getVersion()); } public function setLocalRemoteServerMode():void{ _tracker.setLocalRemoteServerMode(); } public function setCampNOKey(_arg1:String):void{ _tracker.setCampNOKey(_arg1); } public function addIgnoredOrganic(_arg1:String):void{ _tracker.addIgnoredOrganic(_arg1); } public function setCookiePath(_arg1:String):void{ _tracker.setCookiePath(_arg1); } 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 setCampaignTrack(_arg1:Boolean):void{ _tracker.setCampaignTrack(_arg1); } public function getServiceMode():ServerOperationMode{ return (_tracker.getServiceMode()); } public function set componentInspectorSetting(_arg1:Boolean):void{ _componentInspectorSetting = _arg1; } public function setSessionTimeout(_arg1:int):void{ _tracker.setSessionTimeout(_arg1); } public function setRemoteServerMode():void{ _tracker.setRemoteServerMode(); } public function get visualDebug():Boolean{ return (_visualDebug); } public function addOrganic(_arg1:String, _arg2:String):void{ _tracker.addOrganic(_arg1, _arg2); } public function setCookieTimeout(_arg1:int):void{ _tracker.setCookieTimeout(_arg1); } public function getClientInfo():Boolean{ return (_tracker.getClientInfo()); } public function setAllowLinker(_arg1:Boolean):void{ _tracker.setAllowLinker(_arg1); } public function setClientInfo(_arg1:Boolean):void{ _tracker.setClientInfo(_arg1); } private function _bridgeFactory():GoogleAnalyticsAPI{ debug.info(((("GATracker (Bridge) v" + version) + "\naccount: ") + account)); return (new Bridge(account, _debug, _jsproxy)); } public function get config():Configuration{ if (!_config){ _createDebugAndConfig(); }; return (_config); } public function set mode(_arg1:String):void{ _mode = _arg1; } public function setDetectFlash(_arg1:Boolean):void{ _tracker.setDetectFlash(_arg1); } public function addItem(_arg1:String, _arg2:String, _arg3:String, _arg4:String, _arg5:Number, _arg6:int):void{ _tracker.addItem(_arg1, _arg2, _arg3, _arg4, _arg5, _arg6); } public function setVar(_arg1:String):void{ _tracker.setVar(_arg1); } public function clearIgnoredOrganic():void{ _tracker.clearIgnoredOrganic(); } public function setDomainName(_arg1:String):void{ _tracker.setDomainName(_arg1); } private function _checkLivePreview():Boolean{ if (((!((parent == null))) && ((getQualifiedClassName(parent) == "fl.livepreview::LivePreviewParent")))){ return (true); }; return (false); } public function setCampSourceKey(_arg1:String):void{ _tracker.setCampSourceKey(_arg1); } public function setCampContentKey(_arg1:String):void{ _tracker.setCampContentKey(_arg1); } public function setSize(_arg1:Number, _arg2:Number):void{ } public function setAllowAnchor(_arg1:Boolean):void{ _tracker.setAllowAnchor(_arg1); } public function setLocalGifPath(_arg1:String):void{ _tracker.setLocalGifPath(_arg1); } public function get mode():String{ return (_mode); } public function setSampleRate(_arg1:Number):void{ _tracker.setSampleRate(_arg1); } public function setAllowHash(_arg1:Boolean):void{ _tracker.setAllowHash(_arg1); } public function setDetectTitle(_arg1:Boolean):void{ _tracker.setDetectTitle(_arg1); } public function cookiePathCopy(_arg1:String):void{ _tracker.cookiePathCopy(_arg1); } private function _factory(_arg1:Event):void{ var _local2:GoogleAnalyticsAPI; var _local3:TrackerCache; removeEventListener(Event.ENTER_FRAME, _factory); if (isLivePreview){ return; }; _display = this; _createDebugAndConfig(); if (visualDebug){ debug.layout = new Layout(debug, _display); debug.active = visualDebug; }; _jsproxy = new JavascriptProxy(debug); _local3 = (_tracker as TrackerCache); switch (mode){ case TrackerMode.BRIDGE: _local2 = _bridgeFactory(); break; case TrackerMode.AS3: default: _local2 = _trackerFactory(); }; if (!_local3.isEmpty()){ _local3.tracker = _local2; _local3.flush(); }; _tracker = _local2; _ready = true; dispatchEvent(new AnalyticsEvent(AnalyticsEvent.READY, this)); } public function getDetectFlash():Boolean{ return (_tracker.getDetectFlash()); } public function clearOrganic():void{ _tracker.clearOrganic(); } private function _createDebugAndConfig():void{ if (!_debug){ this.debug = new DebugConfiguration(); }; if (!_config){ this.config = new Configuration(debug); }; } 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 getAccount():String{ return (_tracker.getAccount()); } public function link(_arg1:String, _arg2:Boolean=false):void{ _tracker.link(_arg1, _arg2); } } var _local1:* = ServerOperationMode; return (_local1); }//package com.google.analytics.components
Section 13
//Icon (com.google.analytics.components.Icon) package com.google.analytics.components { import flash.display.*; public dynamic class Icon extends MovieClip { } }//package com.google.analytics.components
Section 14
//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; _local1 = toVariables(); return (_local1.toString()); } public function get utmsr():String{ return (((_info.screenWidth + "x") + _info.screenHeight)); } public function get utmcs():String{ return (_info.languageEncoding); } 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 toVariables():Variables{ var _local1:Variables; _local1 = 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 15
//Buffer (com.google.analytics.core.Buffer) package com.google.analytics.core { import com.google.analytics.v4.*; import com.google.analytics.debug.*; import flash.net.*; import flash.events.*; 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 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 clearCookies():void{ utma.reset(); utmb.reset(); utmc.reset(); utmz.reset(); utmv.reset(); utmk.reset(); } 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 isGenuine():Boolean{ if (!hasUTMK()){ return (true); }; return ((utmk.hash == generateCookiesHash())); } public function resetCurrentSession():void{ _clearUTMB(); _clearUTMC(); save(); } public function hasUTMC():Boolean{ if (_utmc){ return (true); }; return (false); } public function hasUTMK():Boolean{ if (_utmk){ return (true); }; return (false); } public function generateCookiesHash():Number{ var _local1:String; _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 _createUMTA():void{ _utma = new UTMA(); _utma.proxy = this; } private function _createUMTB():void{ _utmb = new UTMB(); _utmb.proxy = this; } private function _createUMTC():void{ _utmc = new UTMC(); } 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 _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 _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 _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 16
//DocumentInfo (com.google.analytics.core.DocumentInfo) package com.google.analytics.core { import com.google.analytics.v4.*; import com.google.analytics.utils.*; import com.google.analytics.external.*; public class DocumentInfo { private var _config:Configuration; private var _utmr:String; private var _adSense:AdSenseGlobals; private var _info:Environment; private var _pageURL:String; 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; _local1 = toVariables(); return (_local1.toString()); } private function _renderPageURL(_arg1:String=""):String{ var _local2:String; var _local3:String; _local2 = _info.locationPath; _local3 = _info.locationSearch; if (((!(_arg1)) || ((_arg1 == "")))){ _arg1 = (_local2 + unescape(_local3)); }; return (_arg1); } public function get utmp():String{ return (_renderPageURL(_pageURL)); } 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 get utmhid():String{ return (String(_generateHitId())); } public function toVariables():Variables{ var _local1:Variables; _local1 = 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 17
//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 _name:String; private var _debug:DebugConfiguration; 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 18
//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 19
//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 _isEventHit:Boolean; private var _ext10:X10; 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; _local1 = 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; _local1 = new Variables(); _local1.URIencode = true; if (_isEventHit){ _local1.utmt = utmt; }; _local1.utme = utme; return (_local1); } } }//package com.google.analytics.core
Section 20
//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 21
//ga_internal (com.google.analytics.core.ga_internal) package com.google.analytics.core { public namespace ga_internal; }//package com.google.analytics.core
Section 22
//GIFRequest (com.google.analytics.core.GIFRequest) package com.google.analytics.core { import com.google.analytics.v4.*; import com.google.analytics.debug.*; import flash.net.*; import com.google.analytics.utils.*; import flash.events.*; import flash.display.*; import flash.system.*; 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; var _local3:String; var _local4:String; _local2 = _lastRequest.url; _local3 = String((_requests.length - 1)); _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; _local1 = []; 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 loader:Loader; var context:LoaderContext; var request = _arg1; loader = new Loader(); loader.name = String(_count++); context = 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 _local1:Number; var _local2:Number; _local1 = 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); }; }; } 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); } public function get utmhn():String{ return (_info.domainName); } private function _debugSend(_arg1:URLRequest):void{ var _local2:String; var _local3:String; _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; var _local3:String; var _local4:String; _local2 = _arg1.target.loader.name; _requests[_local2].complete(); _local3 = (("Gif Request #" + _local2) + " sent"); _local4 = _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 23
//IdleTimer (com.google.analytics.core.IdleTimer) package com.google.analytics.core { import com.google.analytics.v4.*; import com.google.analytics.debug.*; import flash.events.*; import flash.display.*; import flash.utils.*; public class IdleTimer { private var _loop:Timer; private var _stage:Stage; private var _lastMove:int; private var _debug:DebugConfiguration; private var _session:Timer; private var _inactivity:Number; private var _buffer:Buffer; public function IdleTimer(_arg1:Configuration, _arg2:DebugConfiguration, _arg3:DisplayObject, _arg4:Buffer){ var _local5:Number; var _local6:Number; var _local7:Number; super(); _local5 = _arg1.idleLoop; _local6 = _arg1.idleTimeout; _local7 = _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; _local2 = getTimer(); if ((_local2 - _lastMove) >= _inactivity){ if (!_session.running){ _debug.info("session timer start", VisualDebugMode.geek); _session.start(); }; }; } } }//package com.google.analytics.core
Section 24
//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 getKeywordValue(_arg1:OrganicReferrer, _arg2:String):String{ var _local3:String; _local3 = _arg1.keyword; return (getKeywordValueFromPath(_local3, _arg2)); } public function isIgnoredKeyword(_arg1:String):Boolean{ if (_ignoredKeywordsCache.hasOwnProperty(_arg1)){ return (true); }; return (false); } public function isIgnoredReferral(_arg1:String):Boolean{ if (_ignoredReferralsCache.hasOwnProperty(_arg1)){ return (true); }; return (false); } public function clear():void{ clearEngines(); clearIgnoredReferrals(); clearIgnoredKeywords(); } 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 get count():int{ return (_sources.length); } public function addSource(_arg1:String, _arg2:String):void{ var _local3:OrganicReferrer; _local3 = 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 clearIgnoredKeywords():void{ _ignoredKeywords = []; _ignoredKeywordsCache = {}; } 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 25
//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 set engine(_arg1:String):void{ _engine = _arg1.toLowerCase(); } public function get keyword():String{ return (_keyword); } public function toString():String{ return (((engine + "?") + keyword)); } public function get engine():String{ return (_engine); } public function set keyword(_arg1:String):void{ _keyword = _arg1.toLowerCase(); } } }//package com.google.analytics.core
Section 26
//RequestObject (com.google.analytics.core.RequestObject) package com.google.analytics.core { import flash.net.*; import flash.utils.*; public class RequestObject { public var start:int; public var request:URLRequest; public var end:int; public function RequestObject(_arg1:URLRequest){ start = getTimer(); this.request = _arg1; } public function toString():String{ var _local1:Array; _local1 = []; _local1.push((("duration: " + duration) + "ms")); _local1.push(("url: " + request.url)); return ((("{ " + _local1.join(", ")) + " }")); } public function get duration():int{ if (!hasCompleted()){ return (0); }; return ((end - start)); } public function hasCompleted():Boolean{ return ((end > 0)); } public function complete():void{ end = getTimer(); } } }//package com.google.analytics.core
Section 27
//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 28
//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 trackTrans():void{ enqueue("trackTrans"); } public function trackPageview(_arg1:String=""):void{ enqueue("trackPageview", _arg1); } public function setClientInfo(_arg1:Boolean):void{ enqueue("setClientInfo", _arg1); } 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 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 resetSession():void{ enqueue("resetSession"); } public function setDetectFlash(_arg1:Boolean):void{ enqueue("setDetectFlash", _arg1); } public function clear():void{ _ar = []; } 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 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 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 setCampSourceKey(_arg1:String):void{ enqueue("setCampSourceKey", _arg1); } public function setCampContentKey(_arg1:String):void{ enqueue("setCampContentKey", _arg1); } public function clearIgnoredRef():void{ enqueue("clearIgnoredRef"); } 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 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 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 setDetectTitle(_arg1:Boolean):void{ enqueue("setDetectTitle", _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 29
//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 30
//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 _local3:Array; var _local4:String; var _local5:int; var _local6:int; var _local7:int; if (_arg1 == ""){ return (""); }; _local3 = [" ", "\n", "\r", "\t"]; _local4 = _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 _local2:int; var _local3:int; var _local4:int; var _local5:int; _local2 = 1; _local3 = 0; 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; _local2 = /^UA-[0-9]*-[0-9]*$/; return (_local2.test(_arg1)); } } }//package com.google.analytics.core
Section 31
//Cookie (com.google.analytics.data.Cookie) package com.google.analytics.data { public interface Cookie { function toURLString():String; function toSharedObject():Object; function set creation(_arg1:Date):void; function fromSharedObject(_arg1:Object):void; function get expiration():Date; function isExpired():Boolean; function set expiration(_arg1:Date):void; function get creation():Date; } }//package com.google.analytics.data
Section 32
//UTMA (com.google.analytics.data.UTMA) package com.google.analytics.data { import com.google.analytics.utils.*; public class UTMA extends UTMCookie { private var _domainHash:Number; private var _firstTime:Number; private var _currentTime:Number; private var _sessionId: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 get sessionCount():Number{ return (_sessionCount); } public function get firstTime():Number{ return (_firstTime); } public function set sessionId(_arg1:Number):void{ _sessionId = _arg1; update(); } public function set sessionCount(_arg1:Number):void{ _sessionCount = _arg1; update(); } public function set firstTime(_arg1:Number):void{ _firstTime = _arg1; update(); } public function set currentTime(_arg1:Number):void{ _currentTime = _arg1; update(); } public function get sessionId():Number{ return (_sessionId); } public function set domainHash(_arg1:Number):void{ _domainHash = _arg1; update(); } public function get currentTime():Number{ return (_currentTime); } public function get domainHash():Number{ return (_domainHash); } } }//package com.google.analytics.data
Section 33
//UTMB (com.google.analytics.data.UTMB) package com.google.analytics.data { import com.google.analytics.utils.*; public class UTMB extends UTMCookie { private var _lastTime:Number; private var _domainHash:Number; private var _trackCount: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 get token():Number{ return (_token); } public function set trackCount(_arg1:Number):void{ _trackCount = _arg1; update(); } public function set lastTime(_arg1:Number):void{ _lastTime = _arg1; update(); } public function get lastTime():Number{ return (_lastTime); } public function set domainHash(_arg1:Number):void{ _domainHash = _arg1; update(); } public function get domainHash():Number{ return (_domainHash); } public function set token(_arg1:Number):void{ _token = _arg1; update(); } public function get trackCount():Number{ return (_trackCount); } } }//package com.google.analytics.data
Section 34
//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 set domainHash(_arg1:Number):void{ _domainHash = _arg1; update(); } public function get domainHash():Number{ return (_domainHash); } } }//package com.google.analytics.data
Section 35
//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; private var _timespan:Number; protected var fields:Array; 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 _local1:int; var _local2:String; var _local3:int; _local1 = 0; _local3 = 0; 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); } protected function update():void{ resetTimestamp(); if (proxy){ proxy.update(name, toSharedObject()); }; } public function fromSharedObject(_arg1:Object):void{ var _local2:String; var _local3:int; var _local4:int; _local3 = fields.length; _local4 = 0; 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; var _local2:Number; _local1 = new Date(); _local2 = (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 reset():void{ var _local1:String; var _local2:int; _local2 = 0; 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 valueOf():String{ var _local1:Array; var _local2:String; var _local3:*; var _local4:int; _local1 = []; _local4 = 0; 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 resetTimestamp(_arg1:Number=NaN):void{ if (!isNaN(_arg1)){ _timespan = _arg1; }; _creation = null; _expiration = null; _timestamp(_timespan); } public function get expiration():Date{ if (_expiration){ return (_expiration); }; return (new Date((new Date().valueOf() + 1000))); } public function toURLString():String{ return (((inURL + "=") + valueOf())); } public function toSharedObject():Object{ var _local1:Object; var _local2:String; var _local3:*; var _local4:int; _local1 = {}; _local4 = 0; 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 _local2:Array; var _local3:String; var _local4:*; var _local5:int; var _local6:int; var _local7:String; _local2 = []; _local5 = fields.length; _local6 = 0; 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)); }; }; }; }; _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 36
//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 get hash():Number{ return (_hash); } public function set hash(_arg1:Number):void{ _hash = _arg1; update(); } } }//package com.google.analytics.data
Section 37
//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; } public function get value():String{ return (_value); } public function set value(_arg1:String):void{ _value = _arg1; update(); } override public function toURLString():String{ return (((inURL + "=") + encodeURI(valueOf()))); } public function get domainHash():Number{ return (_domainHash); } public function set domainHash(_arg1:Number):void{ _domainHash = _arg1; update(); } } }//package com.google.analytics.data
Section 38
//UTMZ (com.google.analytics.data.UTMZ) package com.google.analytics.data { import com.google.analytics.utils.*; public class UTMZ extends UTMCookie { private var _domainHash:Number; private var _campaignSessions:Number; private var _campaignTracking:String; private var _responseCount:Number; private var _campaignCreation: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 get campaignCreation():Number{ return (_campaignCreation); } public function set campaignSessions(_arg1:Number):void{ _campaignSessions = _arg1; update(); } public function set responseCount(_arg1:Number):void{ _responseCount = _arg1; update(); } public function set campaignCreation(_arg1:Number):void{ _campaignCreation = _arg1; update(); } public function get campaignSessions():Number{ return (_campaignSessions); } public function get responseCount():Number{ return (_responseCount); } public function set domainHash(_arg1:Number):void{ _domainHash = _arg1; update(); } public function get campaignTracking():String{ return (_campaignTracking); } public function set campaignTracking(_arg1:String):void{ _campaignTracking = _arg1; update(); } public function get domainHash():Number{ return (_domainHash); } } }//package com.google.analytics.data
Section 39
//X10 (com.google.analytics.data.X10) package com.google.analytics.data { public class X10 { private var _delimEnd:String;// = ")" 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 _projectData:Object; private var _hasData:int; private var _escapeCharMap:Object; private var _minimum:int; private var _value:String;// = "v" public function X10(){ _key = "k"; _value = "v"; _set = [_key, _value]; _delimBegin = "("; _delimEnd = ")"; _delimSet = "*"; _delimNumValue = "!"; _escapeChar = "'"; super(); _projectData = {}; _escapeCharMap = {}; _escapeCharMap[_escapeChar] = "'0"; _escapeCharMap[_delimEnd] = "'1"; _escapeCharMap[_delimSet] = "'2"; _escapeCharMap[_delimNumValue] = "'3"; _minimum = 1; } 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 hasData():Boolean{ return ((_hasData > 0)); } 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); } 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 _local2:Array; var _local3:String; var _local4:int; _local2 = []; _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 clearValue(_arg1:Number):void{ _clearInternal(_arg1, _value); } public function renderMergedUrlString(_arg1:X10=null):String{ var _local2:Array; var _local3:String; if (!_arg1){ return (renderUrlString()); }; _local2 = [_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 _local1:Array; var _local2:String; _local1 = []; 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 getValue(_arg1:Number, _arg2:Number){ var _local3:*; _local3 = _getInternal(_arg1, _value, _arg2); if (_local3 == null){ return (null); }; return (Number(_local3)); } private function _renderProject(_arg1:Object):String{ var _local2:String; var _local3:Boolean; var _local4:int; var _local5:Array; var _local6:int; _local2 = ""; _local3 = false; _local6 = _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); } private function _escapeExtensibleValue(_arg1:String):String{ var _local2:String; var _local3:int; var _local4:String; var _local5:String; _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 40
//_Style (com.google.analytics.debug._Style) package com.google.analytics.debug { import flash.net.*; import flash.text.*; public class _Style { public var borderColor:uint; public var backgroundColor:uint; private var _sheet:StyleSheet; public var roundedCorner:uint; public var alertColor:uint; public var infoColor:uint; public var successColor:uint; private var _loader:URLLoader; public var failureColor:uint; private var _defaultSheet:String; public var warningColor:uint; 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 41
//Alert (com.google.analytics.debug.Alert) package com.google.analytics.debug { import flash.events.*; public class Alert extends Label { public var actionOnNextLine:Boolean;// = true public var autoClose: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){ var _local8:int; autoClose = true; actionOnNextLine = 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 = []; _local8 = 0; while (_local8 < _arg2.length) { _arg2[_local8].container = this; _actions.push(_arg2[_local8]); _local8++; }; } protected function getAction(_arg1:String):AlertAction{ var _local2:int; _local2 = 0; while (_local2 < _actions.length) { if (_arg1 == _actions[_local2].activator){ return (_actions[_local2]); }; _local2++; }; return (null); } override protected function layout():void{ super.layout(); _defineActions(); } protected function spaces(_arg1:int):String{ var _local2:String; var _local3:String; var _local4:int; _local2 = ""; _local3 = " "; _local4 = 0; 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(); }; } protected function isValidAction(_arg1:String):Boolean{ var _local2:int; _local2 = 0; while (_local2 < _actions.length) { if (_arg1 == _actions[_local2].activator){ return (true); }; _local2++; }; return (false); } private function _defineActions():void{ var _local1:String; var _local2:Array; var _local3:AlertAction; var _local4:int; _local1 = ""; if (actionOnNextLine){ _local1 = (_local1 + "\n"); } else { _local1 = (_local1 + " |"); }; _local1 = (_local1 + " "); _local2 = []; _local4 = 0; 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"); } public function close():void{ if (parent != null){ parent.removeChild(this); }; } } }//package com.google.analytics.debug
Section 42
//AlertAction (com.google.analytics.debug.AlertAction) package com.google.analytics.debug { public class AlertAction { public var container:Alert; private var _callback; public var name:String; public var activator: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 43
//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 44
//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; _local7 = 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 45
//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 public var maxLines:uint;// = 16 private var _linediff:int;// = 0 public static var count:uint = 0; public function Debug(_arg1:uint=0, _arg2:Align=null, _arg3:Boolean=false){ _linediff = 0; _preferredForcedWidth = 540; maxLines = 16; 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 close():void{ dispose(); } public function writeBold(_arg1:String):void{ write(_arg1, true); } override protected function dispose():void{ removeEventListener(KeyboardEvent.KEY_DOWN, onKey); super.dispose(); } override public function get forcedWidth():uint{ if (this.parent){ if (UISprite(this.parent).forcedWidth > _preferredForcedWidth){ return (_preferredForcedWidth); }; return (UISprite(this.parent).forcedWidth); } else { }; return (!NULL!); } 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"); } public function write(_arg1:String, _arg2:Boolean=false):void{ var _local3:Array; var _local4:String; var _local5:String; var _local6:int; var _local7:Array; if (_arg1.indexOf("") > -1){ _local3 = _arg1.split("\n"); } else { _local3 = [_arg1]; }; _local4 = ""; _local5 = ""; if (_arg2){ _local4 = "<b>"; _local5 = "</b>"; }; _local6 = 0; while (_local6 < _local3.length) { _lines.push(((_local4 + _local3[_local6]) + _local5)); _local6++; }; _local7 = _getLinesToDisplay(); text = _local7.join("\n"); } 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); } } }//package com.google.analytics.debug
Section 46
//DebugConfiguration (com.google.analytics.debug.DebugConfiguration) package com.google.analytics.debug { import com.google.analytics.core.*; import flash.net.*; import flash.utils.*; 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 infoTimeout:Number;// = 1000 public var showInfos:Boolean;// = true 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(){ _active = false; _verbose = false; _visualInitialized = false; _mode = VisualDebugMode.basic; traceOutput = false; javascript = false; GIFRequests = false; showInfos = true; infoTimeout = 1000; showWarnings = true; warningTimeout = 1500; minimizedOnStart = false; 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 _local2:Array; var _local3:String; var _local4:String; var _local5:int; var _local6:int; var _local7:Array; var _local8:int; _local2 = []; _local3 = ""; _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)); }; _local5 = _local2.length; _local6 = 0; 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 47
//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; var _local5:Boolean; var _local6:Boolean; _local4 = Align.bottomLeft; _local5 = true; _local6 = false; 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 48
//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 49
//ILayout (com.google.analytics.debug.ILayout) package com.google.analytics.debug { import com.google.analytics.core.*; import flash.net.*; import flash.display.*; public interface ILayout { function createWarning(_arg1:String):void; function addToStage(_arg1:DisplayObject):void; function createGIFRequestAlert(_arg1:String, _arg2:URLRequest, _arg3:GIFRequest):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 createAlert(_arg1:String):void; function destroy():void; function bringToFront(_arg1:DisplayObject):void; function isAvailable():Boolean; } }//package com.google.analytics.debug
Section 50
//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 onComplete(_arg1:TimerEvent):void{ close(); } override public function onLink(_arg1:TextEvent):void{ switch (_arg1.text){ case "hide": close(); break; }; } public function close():void{ if (parent != null){ parent.removeChild(this); }; } } }//package com.google.analytics.debug
Section 51
//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 _text:String; private var _textField:TextField; private var _color:uint; protected var selectable:Boolean; public var stickToEdge:Boolean; private var _background:Shape; 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); } override protected function dispose():void{ _textField.removeEventListener(TextEvent.LINK, onLink); super.dispose(); } private function _draw():void{ var _local1:Graphics; var _local2:uint; var _local3:uint; _local1 = _background.graphics; _local1.clear(); _local1.beginFill(_color); _local2 = _textField.width; _local3 = _textField.height; if (forcedWidth > 0){ _local2 = forcedWidth; }; Background.drawRounded(this, _local1, _local2, _local3); _local1.endFill(); } 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 get text():String{ return (_textField.text); } public function set tag(_arg1:String):void{ _tag = _arg1; text = ""; } public function set text(_arg1:String):void{ if (_arg1 == ""){ _arg1 = _text; }; _textField.htmlText = (((("<span class=\"" + tag) + "\">") + _arg1) + "</span>"); _text = _arg1; _draw(); resize(); } 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 onLink(_arg1:TextEvent):void{ } public function get tag():String{ return (_tag); } } }//package com.google.analytics.debug
Section 52
//Layout (com.google.analytics.debug.Layout) package com.google.analytics.debug { import com.google.analytics.core.*; import flash.net.*; import flash.events.*; import flash.display.*; import com.google.analytics.*; 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){ _maxCharPerLine = 85; super(); _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 bringToFront(_arg1:DisplayObject):void{ _display.stage.setChildIndex(_arg1, (_display.stage.numChildren - 1)); } public function createFailureAlert(_arg1:String):void{ var _local2:AlertAction; var _local3:Alert; if (_debug.verbose){ _arg1 = _filterMaxChars(_arg1); _local2 = new AlertAction("Close", "close", "close"); } else { _local2 = new AlertAction("X", "close", "close"); }; _local3 = 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:int; var _local2:uint; var _local3:uint; var _local4:Panel; _local1 = 10; _local2 = (_display.stage.stageWidth - (_local1 * 2)); _local3 = (_display.stage.stageHeight - (_local1 * 2)); _local4 = 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 _local3:DisplayObject; var _local4:Panel; _local3 = _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 _local3:String; var _local4:Array; var _local5:Array; var _local6:String; var _local7:int; _local3 = "\n"; _local4 = []; _local5 = _arg1.split(_local3); if (_arg2 == 0){ _arg2 = _maxCharPerLine; }; _local7 = 0; 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)); } public function createWarning(_arg1:String):void{ var _local2:Warning; if (((_hasWarning) || (!(isAvailable())))){ _warningQueue.push(_arg1); return; }; _arg1 = _filterMaxChars(_arg1); _hasWarning = true; _local2 = new Warning(_arg1, _debug.warningTimeout); addToPanel("analytics", _local2); _local2.addEventListener(Event.REMOVED_FROM_STAGE, _clearWarning, false, 0, true); if (_hasDebug){ visualDebug.writeBold(_arg1); }; } 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; var _local3:Alert; if (_debug.verbose){ _arg1 = _filterMaxChars(_arg1); _local2 = new AlertAction("Close", "close", "close"); } else { _local2 = new AlertAction("X", "close", "close"); }; _local3 = 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{ var _local2:Alert; _arg1 = _filterMaxChars(_arg1); _local2 = new Alert(_arg1, [new AlertAction("Close", "close", "close")]); addToPanel("analytics", _local2); if (_hasDebug){ visualDebug.writeBold(_arg1); }; } public function createInfo(_arg1:String):void{ var _local2:Info; if (((_hasInfo) || (!(isAvailable())))){ _infoQueue.push(_arg1); return; }; _arg1 = _filterMaxChars(_arg1); _hasInfo = true; _local2 = 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 f:Function; var gra:GIFRequestAlert; var message = _arg1; var request = _arg2; var ref = _arg3; if (_hasGRAlert){ _GRAlertQueue.push([message, request, ref]); return; }; _hasGRAlert = true; f = function ():void{ ref.sendRequest(request); }; message = _filterMaxChars(message); gra = 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; _local4 = 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 53
//Margin (com.google.analytics.debug.Margin) package com.google.analytics.debug { public class Margin { public var bottom:int; public var top:int; public var right:int; public var left: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 54
//Panel (com.google.analytics.debug.Panel) package com.google.analytics.debug { import flash.events.*; import flash.display.*; public class Panel extends UISprite { protected var baseAlpha:Number; private var _border:Shape; private var _name:String; private var _title:Label; private var _data:UISprite; private var _backgroundColor:uint; private var _colapsed:Boolean; private var _stickToEdge:Boolean; private var _background:Shape; private var _savedW:uint; private var _mask:Sprite; private var _savedH:uint; private var _borderColor:uint; 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 set stickToEdge(_arg1:Boolean):void{ _stickToEdge = _arg1; _title.stickToEdge = _arg1; } public function onToggle(_arg1:MouseEvent=null):void{ if (_colapsed){ _data.visible = true; } else { _data.visible = false; }; _colapsed = !(_colapsed); _update(); resize(); } override protected function dispose():void{ _title.removeEventListener(MouseEvent.CLICK, onToggle); super.dispose(); } private function _draw():void{ var _local1:uint; var _local2:uint; var _local3:Graphics; var _local4:Graphics; var _local5:Graphics; var _local6:Graphics; 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; }; _local3 = _background.graphics; _local3.clear(); _local3.beginFill(_backgroundColor); Background.drawRounded(this, _local3, _local1, _local2); _local3.endFill(); _local4 = _data.graphics; _local4.clear(); _local4.beginFill(_backgroundColor, 0); Background.drawRounded(this, _local4, _local1, _local2); _local4.endFill(); _local5 = _border.graphics; _local5.clear(); _local5.lineStyle(0.1, _borderColor); Background.drawRounded(this, _local5, _local1, _local2); _local5.endFill(); _local6 = _mask.graphics; _local6.clear(); _local6.beginFill(_backgroundColor); Background.drawRounded(this, _local6, (_local1 + 1), (_local2 + 1)); _local6.endFill(); } override protected function layout():void{ _update(); addChild(_background); addChild(_data); addChild(_title); addChild(_border); addChild(_mask); mask = _mask; } public function get title():String{ return (_title.text); } public function get stickToEdge():Boolean{ return (_stickToEdge); } public function set title(_arg1:String):void{ _title.text = _arg1; } private function _update():void{ _draw(); if (baseAlpha < 1){ _background.alpha = baseAlpha; _border.alpha = baseAlpha; }; } public function addData(_arg1:DisplayObject):void{ _data.addChild(_arg1); } public function close():void{ dispose(); if (parent != null){ parent.removeChild(this); }; } } }//package com.google.analytics.debug
Section 55
//Style (com.google.analytics.debug.Style) package com.google.analytics.debug { public const Style:_Style = new _Style(); }//package com.google.analytics.debug
Section 56
//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; var _local5:Boolean; var _local6:Boolean; _local4 = Align.bottomLeft; _local5 = true; _local6 = false; 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 57
//UISprite (com.google.analytics.debug.UISprite) package com.google.analytics.debug { import flash.events.*; import flash.display.*; public class UISprite extends Sprite { private var _forcedHeight:uint; protected var listenResize:Boolean; public var alignement:Align; private var _forcedWidth:uint; public var margin:Margin; protected var alignTarget:DisplayObject; 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); } protected function dispose():void{ var _local1:DisplayObject; var _local2:int; _local2 = 0; while (_local2 < numChildren) { _local1 = getChildAt(_local2); if (_local1){ removeChild(_local1); }; _local2++; }; } protected function layout():void{ } public function get forcedHeight():uint{ if (_forcedHeight){ return (_forcedHeight); }; return (height); } 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; } public function get forcedWidth():uint{ if (_forcedWidth){ return (_forcedWidth); }; return (width); } protected function onResize(_arg1:Event):void{ resize(); } 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); }; } private function _onAddedToStage(_arg1:Event):void{ layout(); resize(); } public function set forcedHeight(_arg1:uint):void{ _forcedHeight = _arg1; } public function set forcedWidth(_arg1:uint):void{ _forcedWidth = _arg1; } } }//package com.google.analytics.debug
Section 58
//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 onComplete(_arg1:TimerEvent):void{ close(); } override public function onLink(_arg1:TextEvent):void{ switch (_arg1.text){ case "hide": close(); break; }; } public function close():void{ if (parent != null){ parent.removeChild(this); }; } } }//package com.google.analytics.debug
Section 59
//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 60
//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 61
//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){ _gaGlobalVerified = false; 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 get dh():String{ if (!isAvailable()){ return (null); }; _verify(); return (getProperty("gaGlobal.dh")); } public function get gaGlobal():Object{ if (!isAvailable()){ return (null); }; _verify(); return (getProperty("gaGlobal")); } public function set hid(_arg1:String):void{ if (!isAvailable()){ return; }; _verify(); setProperty("gaGlobal.hid", _arg1); } public function get sid():String{ if (!isAvailable()){ return (null); }; _verify(); return (getProperty("gaGlobal.sid")); } private function _verify():void{ if (!_gaGlobalVerified){ executeBlock(gaGlobal_js); _gaGlobalVerified = true; }; } public function get vid():String{ if (!isAvailable()){ return (null); }; _verify(); return (getProperty("gaGlobal.vid")); } public function set sid(_arg1:String):void{ if (!isAvailable()){ return; }; _verify(); setProperty("gaGlobal.sid", _arg1); } } }//package com.google.analytics.external
Section 62
//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 _protocol:String; private var _host:String; private var _location:String; private var _pathname:String; private var _title:String; private var _characterSet:String; private var _search:String; private var _language: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 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 cacheProperties():void{ var _local1:Object; if (!isAvailable()){ return; }; _local1 = 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 colorDepth():String{ if (_colorDepth){ return (_colorDepth); }; if (!isAvailable()){ return (null); }; _colorDepth = getProperty("window.screen.colorDepth"); return (_colorDepth); } public function get title():String{ if (_title){ return (_title); }; if (!isAvailable()){ return (null); }; _title = getProperty("document.title"); return (_title); } 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{ var _local1:String; if (_characterSet){ return (_characterSet); }; if (!isAvailable()){ return (null); }; _local1 = getProperty("document.characterSet"); if (_local1 == null){ _local1 = getProperty("document.charset"); }; _characterSet = _local1; return (_characterSet); } public function get language():String{ var _local1:String; if (_language){ return (_language); }; if (!isAvailable()){ return (null); }; _local1 = getProperty("navigator.language"); if (_local1 == null){ _local1 = getProperty("navigator.browserLanguage"); }; _language = _local1; return (_language); } } }//package com.google.analytics.external
Section 63
//JavascriptProxy (com.google.analytics.external.JavascriptProxy) package com.google.analytics.external { import com.google.analytics.debug.*; import flash.system.*; 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){ _notAvailableWarning = true; super(); _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; _local1 = 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 64
//Environment (com.google.analytics.utils.Environment) package com.google.analytics.utils { import com.google.analytics.core.*; import com.google.analytics.debug.*; import com.google.analytics.external.*; import flash.system.*; 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 playerType():String{ return (Capabilities.playerType); } public function get locationSearch():String{ var _local1:String; _local1 = _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; _local1 = Version.fromString(Capabilities.version.split(" ")[1], ","); return (_local1); } public function get screenWidth():Number{ return (Capabilities.screenResolutionX); } 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; var _local2:String; switch (Capabilities.screenColor){ case "bw": _local1 = "1"; break; case "gray": _local1 = "2"; break; case "color": default: _local1 = "24"; }; _local2 = _dom.colorDepth; if (_local2){ _local1 = _local2; }; return (_local1); } private function _findProtocol():void{ var _local1:Protocols; var _local2:String; var _local3:String; var _local4:String; var _local5:String; _local1 = 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; }; }; _local2 = _dom.protocol; _local3 = (_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; _local1 = 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; } public function get userAgent():UserAgent{ if (!_userAgent){ _userAgent = new UserAgent(this, appName, appVersion.toString(4)); }; return (_userAgent); } ga_internal function set url(_arg1:String):void{ _url = _arg1; } public function get referrer():String{ var _local1:String; _local1 = _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; var _local2:String; _local1 = _dom.language; _local2 = 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; _local1 = _dom.pathname; if (_local1){ return (_local1); }; return (""); } public function get documentTitle():String{ var _local1:String; _local1 = _dom.title; if (_local1){ return (_local1); }; return (""); } public function get appVersion():Version{ return (_appVersion); } } }//package com.google.analytics.utils
Section 65
//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 66
//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 67
//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; _local1 = _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 search():String{ var _local1:String; _local1 = _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); } public function get subDomain():String{ if (((!((domain == ""))) && (!((domain == hostName))))){ return (hostName.split(("." + domain)).join("")); }; return (""); } public function get protocol():Protocols{ var _local1:String; _local1 = _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; _local1 = _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); } } }//package com.google.analytics.utils
Section 68
//UserAgent (com.google.analytics.utils.UserAgent) package com.google.analytics.utils { import com.google.analytics.core.*; import flash.system.*; public class UserAgent { private var _version:Version; private var _localInfo:Environment; private var _applicationProduct:String; 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 set applicationProduct(_arg1:String):void{ _applicationProduct = _arg1; } public function get applicationVersion():String{ return (_version.toString(2)); } public function get applicationProductToken():String{ var _local1:String; _local1 = applicationProduct; if (applicationVersion != ""){ _local1 = (_local1 + ("/" + applicationVersion)); }; return (_local1); } public function get vendorProductToken():String{ var _local1:String; _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:String; _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 = []; _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 applicationProduct():String{ return (_applicationProduct); } } }//package com.google.analytics.utils
Section 69
//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 = []; sort = true; 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; var _local3:int; _local2 = _args.length; _local3 = 0; while (_local3 < _local2) { if (!(_args[_local3] is Variables)){ } else { _join(_args[_local3]); }; _local3++; }; } public function toString():String{ var _local1:Array; var _local2:String; var _local3:String; var _local4:String; var _local5:int; var _local6:int; var _local7:String; var _local8:String; _local1 = []; 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; var _local7:int; if (_arg1 == ""){ return; }; if (_arg1.indexOf("&") > -1){ _local2 = _arg1.split("&"); } else { _local2 = [_arg1]; }; _local7 = 0; 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 _local1:URLVariables; var _local2:String; _local1 = new URLVariables(); for (_local2 in this) { _local1[_local2] = this[_local2]; }; return (_local1); } } }//package com.google.analytics.utils
Section 70
//Version (com.google.analytics.utils.Version) package com.google.analytics.utils { public class Version { private var _maxBuild:uint;// = 0xFF private var _maxMinor:uint;// = 15 private var _maxMajor:uint;// = 15 private var _revision:uint; private var _separator:String;// = "." private var _maxRevision:uint;// = 0xFFFF private var _build:uint; private var _minor:uint; private var _major:uint; public function Version(_arg1:uint=0, _arg2:uint=0, _arg3:uint=0, _arg4:uint=0){ var _local5:Version; _maxMajor = 15; _maxMinor = 15; _maxBuild = 0xFF; _maxRevision = 0xFFFF; _separator = "."; 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 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); } public function valueOf():uint{ return (((((major << 28) | (minor << 24)) | (build << 16)) | revision)); } public function get major():uint{ return (_major); } public function set revision(_arg1:uint):void{ _revision = Math.min(_arg1, _maxRevision); } private function getFields():int{ var _local1:int; _local1 = 4; if (revision == 0){ _local1--; }; if ((((_local1 == 3)) && ((build == 0)))){ _local1--; }; if ((((_local1 == 2)) && ((minor == 0)))){ _local1--; }; return (_local1); } 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 _local3:Version; var _local4:Array; _local3 = 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; _local2 = 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 71
//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; _hasGATracker = false; _jsContainer = "_GATracker"; 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 setClientInfo(_arg1:Boolean):void{ _debug.info((("setClientInfo( " + _arg1) + " )")); _call("_setClientInfo", _arg1); } public function trackTrans():void{ _debug.info("trackTrans()"); _call("_trackTrans"); } public function trackEvent(_arg1:String, _arg2:String, _arg3:String=null, _arg4:Number=NaN):Boolean{ var _local5:int; _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 trackPageview(_arg1:String=""):void{ _debug.info((("trackPageview( " + _arg1) + " )")); _call("_trackPageview", _arg1); } public function setCookieTimeout(_arg1:int):void{ _debug.info((("setCookieTimeout( " + _arg1) + " )")); _call("_setCookieTimeout", _arg1); } 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")); } public function getClientInfo():Boolean{ _debug.info("getClientInfo()"); return (_call("_getClientInfo")); } 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; var _local3:Boolean; _local2 = _proxy.hasProperty(_arg1); _local3 = _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 setDetectFlash(_arg1:Boolean):void{ _debug.info((("setDetectFlash( " + _arg1) + " )")); _call("_setDetectFlash", _arg1); } public function setCampNameKey(_arg1:String):void{ _debug.info((("setCampNameKey( " + _arg1) + " )")); _call("_setCampNameKey", _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 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 setCampSourceKey(_arg1:String):void{ _debug.info((("setCampSourceKey( " + _arg1) + " )")); _call("_setCampSourceKey", _arg1); } public function setCampContentKey(_arg1:String):void{ _debug.info((("setCampContentKey( " + _arg1) + " )")); _call("_setCampContentKey", _arg1); } public function clearIgnoredRef():void{ _debug.info("clearIgnoredRef()"); _call("_clearIgnoreRef"); } public function setLocalServerMode():void{ _debug.info("setLocalServerMode()"); _call("_setLocalServerMode"); } public function getLocalGifPath():String{ _debug.info("getLocalGifPath()"); return (_call("_getLocalGifPath")); } 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); } public function setCampTermKey(_arg1:String):void{ _debug.info((("setCampTermKey( " + _arg1) + " )")); _call("_setCampTermKey", _arg1); } private function _createTrackingObject(_arg1:String):void{ _proxy.call(_createTrackingObject_js, _arg1); } public function getDetectFlash():Boolean{ _debug.info("getDetectFlash()"); return (_call("_getDetectFlash")); } public function setCampaignTrack(_arg1:Boolean):void{ _debug.info((("setCampaignTrack( " + _arg1) + " )")); _call("_setCampaignTrack", _arg1); } public function clearOrganic():void{ _debug.info("clearOrganic()"); _call("_clearOrganic"); } public function addIgnoredRef(_arg1:String):void{ _debug.info((("addIgnoredRef( " + _arg1) + " )")); _call("_addIgnoredRef", _arg1); } public function setCampMediumKey(_arg1:String):void{ _debug.info((("setCampMediumKey( " + _arg1) + " )")); _call("_setCampMediumKey", _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 72
//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 allowLocalTracking:Boolean;// = true public var secureRemoteGIFpath:String;// = "https://ssl.google-analytics.com/__utm.gif" public var hasSiteOverlay:Boolean;// = false 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; private var _trackingLimitPerSession:int;// = 500 private var _domain:Domain; public var allowAnchor:Boolean;// = false 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){ _version = "4.3as"; _sampleRate = 1; _trackingLimitPerSession = 500; _organic = new Organic(); googleCsePath = "cse"; googleSearchParam = "q"; google = "google"; _cookieName = "analytics"; allowDomainHash = true; allowAnchor = false; allowLinker = false; hasSiteOverlay = false; tokenRate = 0.2; conversionTimeout = Timespan.sixmonths; sessionTimeout = Timespan.thirtyminutes; idleLoop = 30; idleTimeout = 60; maxOutboundLinkExamined = 1000; tokenCliff = 10; bucketCapacity = 10; detectClientInfo = true; detectFlash = true; detectTitle = true; campaignKey = new CampaignKey(); campaignTracking = true; isTrackOutboundSubdomains = false; serverMode = ServerOperationMode.remote; localGIFpath = "/__utm.gif"; remoteGIFpath = "http://www.google-analytics.com/__utm.gif"; secureRemoteGIFpath = "https://ssl.google-analytics.com/__utm.gif"; cookiePath = "/"; transactionFieldDelim = "|"; domainName = ""; allowLocalTracking = true; super(); _debug = _arg1; _domain = new Domain(DomainNameMode.auto, "", _debug); serverMode = ServerOperationMode.remote; _initOrganicSources(); } public function get organic():Organic{ return (_organic); } 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 get cookieName():String{ return (_cookieName); } 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 73
//GoogleAnalyticsAPI (com.google.analytics.v4.GoogleAnalyticsAPI) package com.google.analytics.v4 { import com.google.analytics.core.*; public interface GoogleAnalyticsAPI { function getServiceMode():ServerOperationMode; function setLocalRemoteServerMode():void; function setCampSourceKey(_arg1:String):void; function setCampContentKey(_arg1:String):void; function addOrganic(_arg1:String, _arg2:String):void; function setDetectFlash(_arg1:Boolean):void; function resetSession():void; 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 addTrans(_arg1:String, _arg2:String, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:String, _arg7:String, _arg8:String):Object; 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 trackEvent(_arg1:String, _arg2:String, _arg3:String=null, _arg4:Number=NaN):Boolean; 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 linkByPost(_arg1:Object, _arg2:Boolean=false):void; function setLocalServerMode():void; function setDetectTitle(_arg1:Boolean):void; function setAllowHash(_arg1:Boolean):void; function clearOrganic():void; function getAccount():String; function setDomainName(_arg1:String):void; function link(_arg1:String, _arg2:Boolean=false):void; function setCampNOKey(_arg1:String):void; function getClientInfo():Boolean; function cookiePathCopy(_arg1:String):void; function getDetectTitle():Boolean; } }//package com.google.analytics.v4
Section 74
//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.utils.*; import com.google.analytics.data.*; import com.google.analytics.external.*; 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; _hasInitData = false; _isNewVisitor = false; _noSessionInformation = false; 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 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 trackEvent(_arg1:String, _arg2:String, _arg3:String=null, _arg4:Number=NaN):Boolean{ var _local5:Boolean; var _local6:int; _local5 = true; _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 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(); } 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{ var _local2:String; _config.campaignKey.UCCN = _arg1; _local2 = (("setCampNameKey( " + _config.campaignKey.UCCN) + " )"); if (_debug.mode == VisualDebugMode.geek){ _debug.info((_local2 + " [UCCN]")); } else { _debug.info(_local2); }; } private function _formatReferrer():String{ var _local1:String; var _local2:String; var _local3:URL; var _local4:URL; _local1 = _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) + " )")); } public function getClientInfo():Boolean{ _debug.info("getClientInfo()"); return (_config.detectClientInfo); } 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); } public function setCampContentKey(_arg1:String):void{ var _local2:String; _config.campaignKey.UCCT = _arg1; _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()"); } private function _renderMetricsSearchVariables(_arg1:String=""):Variables{ var _local2:Variables; var _local3:DocumentInfo; var _local4:Variables; var _local5:Variables; _local2 = new Variables(); _local2.URIencode = true; _local3 = new DocumentInfo(_config, _info, _formatedReferrer, _arg1, _adSense); _debug.info(("docInfo: " + _local3.toURLString()), VisualDebugMode.geek); if (_config.campaignTracking){ _local4 = _campaignInfo.toVariables(); }; _local5 = _browserInfo.toVariables(); _local2.join(_local3.toVariables(), _local5, _local4); return (_local2); } public function clearIgnoredRef():void{ _debug.info("clearIgnoredRef()"); _config.organic.clearIgnoredReferrals(); } public function setCampSourceKey(_arg1:String):void{ var _local2:String; _config.campaignKey.UCSR = _arg1; _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; var _local2:Boolean; var _local3:Boolean; var _local4:Boolean; var _local5:Boolean; _local1 = _config.domainName; _local2 = (_local1.indexOf("www.google.") < 0); _local3 = (_local1.indexOf(".google.") < 0); _local4 = (_local1.indexOf("google.") < 0); _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:String; _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 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{ var _local2:String; _config.campaignKey.UCTR = _arg1; _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); } public function setCampNOKey(_arg1:String):void{ var _local2:String; _config.campaignKey.UCNO = _arg1; _local2 = (("setCampNOKey( " + _config.campaignKey.UCNO) + " )"); if (_debug.mode == VisualDebugMode.geek){ _debug.info((_local2 + " [UCNO]")); } else { _debug.info(_local2); }; } 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{ var _local2:String; _config.campaignKey.UCMD = _arg1; _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; _local1 = ((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 75
//AnalyticsTracker (com.google.analytics.AnalyticsTracker) package com.google.analytics { import com.google.analytics.v4.*; import com.google.analytics.debug.*; import flash.events.*; public interface AnalyticsTracker extends GoogleAnalyticsAPI, IEventDispatcher { function set config(_arg1:Configuration):void; function isReady():Boolean; function get mode():String; function set debug(_arg1:DebugConfiguration):void; function get account():String; function set mode(_arg1:String):void; function get config():Configuration; function get debug():DebugConfiguration; function set account(_arg1:String):void; function get visualDebug():Boolean; function set visualDebug(_arg1:Boolean):void; } }//package com.google.analytics
Section 76
//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: 234 $ ".split(" ")[1]; } }//package com.google.analytics
Section 77
//GATracker (com.google.analytics.GATracker) package com.google.analytics { import com.google.analytics.core.*; import com.google.analytics.v4.*; import com.google.analytics.debug.*; import com.google.analytics.utils.*; import flash.events.*; import flash.display.*; import com.google.analytics.external.*; 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){ _ready = false; super(); _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 trackPageview(_arg1:String=""):void{ _tracker.trackPageview(_arg1); } public function getClientInfo():Boolean{ return (_tracker.getClientInfo()); } 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 addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{ _eventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5); } 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 setDomainName(_arg1:String):void{ _tracker.setDomainName(_arg1); } public function createEventTracker(_arg1:String):EventTracker{ return (_tracker.createEventTracker(_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 setCampSourceKey(_arg1:String):void{ _tracker.setCampSourceKey(_arg1); } 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 isReady():Boolean{ return (_ready); } public function getLocalGifPath():String{ return (_tracker.getLocalGifPath()); } public function setAllowAnchor(_arg1:Boolean):void{ _tracker.setAllowAnchor(_arg1); } public function clearIgnoredRef():void{ _tracker.clearIgnoredRef(); } 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 setCampNOKey(_arg1:String):void{ _tracker.setCampNOKey(_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; var _local2:TrackerCache; _jsproxy = new JavascriptProxy(debug); if (visualDebug){ debug.layout = new Layout(debug, _display); debug.active = visualDebug; }; _local2 = (_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 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 setSessionTimeout(_arg1:int):void{ _tracker.setSessionTimeout(_arg1); } public function getDetectFlash():Boolean{ return (_tracker.getDetectFlash()); } public function get visualDebug():Boolean{ return (_visualDebug); } public function getAccount():String{ return (_tracker.getAccount()); } public function hasEventListener(_arg1:String):Boolean{ return (_eventDispatcher.hasEventListener(_arg1)); } public function setRemoteServerMode():void{ _tracker.setRemoteServerMode(); } } var _local1:* = ServerOperationMode; return (_local1); }//package com.google.analytics
Section 78
//Quad (gs.easing.Quad) package gs.easing { public class Quad { public static function easeOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = (_arg1 / _arg4); return ((((-(_arg3) * _arg1) * (_arg1 - 2)) + _arg2)); } public static function easeIn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = (_arg1 / _arg4); return ((((_arg3 * _arg1) * _arg1) + _arg2)); } public static function easeInOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ return (((((_arg3 / 2) * _arg1) * _arg1) + _arg2)); }; --_arg1; return ((((-(_arg3) / 2) * ((_arg1 * (_arg1 - 2)) - 1)) + _arg2)); } } }//package gs.easing
Section 79
//AutoAlphaPlugin (gs.plugins.AutoAlphaPlugin) package gs.plugins { import flash.display.*; import gs.*; public class AutoAlphaPlugin extends TweenPlugin { protected var _tweenVisible:Boolean; protected var _target:Object; protected var _visible:Boolean; protected var _tween:TweenLite; public static const VERSION:Number = 1; public static const API:Number = 1; public function AutoAlphaPlugin(){ this.propName = "autoAlpha"; this.overwriteProps = ["alpha", "visible"]; this.onComplete = onCompleteTween; } override public function killProps(_arg1:Object):void{ super.killProps(_arg1); _tweenVisible = !(Boolean(("visible" in _arg1))); } public function onCompleteTween():void{ if (((((_tweenVisible) && (!((_tween.vars.runBackwards == true))))) && ((_tween.ease == _tween.vars.ease)))){ _target.visible = _visible; }; } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ _target = _arg1; _tween = _arg3; _visible = Boolean(!((_arg2 == 0))); _tweenVisible = true; addTween(_arg1, "alpha", _arg1.alpha, _arg2, "alpha"); return (true); } override public function set changeFactor(_arg1:Number):void{ updateTweens(_arg1); if (((!((_target.visible == true))) && (_tweenVisible))){ _target.visible = true; }; } } }//package gs.plugins
Section 80
//EndArrayPlugin (gs.plugins.EndArrayPlugin) package gs.plugins { import flash.display.*; import gs.*; import gs.utils.tween.*; public class EndArrayPlugin extends TweenPlugin { protected var _a:Array; protected var _info:Array; public static const VERSION:Number = 1.01; public static const API:Number = 1; public function EndArrayPlugin(){ _info = []; super(); this.propName = "endArray"; this.overwriteProps = ["endArray"]; } public function init(_arg1:Array, _arg2:Array):void{ _a = _arg1; var _local3:int = (_arg2.length - 1); while (_local3 > -1) { if (((!((_arg1[_local3] == _arg2[_local3]))) && (!((_arg1[_local3] == null))))){ _info[_info.length] = new ArrayTweenInfo(_local3, _a[_local3], (_arg2[_local3] - _a[_local3])); }; _local3--; }; } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ if (((!((_arg1 is Array))) || (!((_arg2 is Array))))){ return (false); }; init((_arg1 as Array), _arg2); return (true); } override public function set changeFactor(_arg1:Number):void{ var _local2:int; var _local3:ArrayTweenInfo; var _local4:Number; var _local5:int; if (this.round){ _local2 = (_info.length - 1); while (_local2 > -1) { _local3 = _info[_local2]; _local4 = (_local3.start + (_local3.change * _arg1)); _local5 = ((_local4)<0) ? -1 : 1; _a[_local3.index] = ((((_local4 % 1) * _local5))>0.5) ? (int(_local4) + _local5) : int(_local4); _local2--; }; } else { _local2 = (_info.length - 1); while (_local2 > -1) { _local3 = _info[_local2]; _a[_local3.index] = (_local3.start + (_local3.change * _arg1)); _local2--; }; }; } } }//package gs.plugins
Section 81
//FramePlugin (gs.plugins.FramePlugin) package gs.plugins { import flash.display.*; import gs.*; public class FramePlugin extends TweenPlugin { protected var _target:MovieClip; public var frame:int; public static const VERSION:Number = 1.01; public static const API:Number = 1; public function FramePlugin(){ this.propName = "frame"; this.overwriteProps = ["frame"]; this.round = true; } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ if (((!((_arg1 is MovieClip))) || (isNaN(_arg2)))){ return (false); }; _target = (_arg1 as MovieClip); this.frame = _target.currentFrame; addTween(this, "frame", this.frame, _arg2, "frame"); return (true); } override public function set changeFactor(_arg1:Number):void{ updateTweens(_arg1); _target.gotoAndStop(this.frame); } } }//package gs.plugins
Section 82
//RemoveTintPlugin (gs.plugins.RemoveTintPlugin) package gs.plugins { public class RemoveTintPlugin extends TintPlugin { public static const VERSION:Number = 1.01; public static const API:Number = 1; public function RemoveTintPlugin(){ this.propName = "removeTint"; } } }//package gs.plugins
Section 83
//TintPlugin (gs.plugins.TintPlugin) package gs.plugins { import flash.display.*; import gs.*; import flash.geom.*; import gs.utils.tween.*; public class TintPlugin extends TweenPlugin { protected var _target:DisplayObject; protected var _ct:ColorTransform; protected var _ignoreAlpha:Boolean; public static const VERSION:Number = 1.1; public static const API:Number = 1; protected static var _props:Array = ["redMultiplier", "greenMultiplier", "blueMultiplier", "alphaMultiplier", "redOffset", "greenOffset", "blueOffset", "alphaOffset"]; public function TintPlugin(){ this.propName = "tint"; this.overwriteProps = ["tint"]; } public function init(_arg1:DisplayObject, _arg2:ColorTransform):void{ var _local3:int; var _local4:String; _target = _arg1; _ct = _target.transform.colorTransform; _local3 = (_props.length - 1); while (_local3 > -1) { _local4 = _props[_local3]; if (_ct[_local4] != _arg2[_local4]){ _tweens[_tweens.length] = new TweenInfo(_ct, _local4, _ct[_local4], (_arg2[_local4] - _ct[_local4]), "tint", false); }; _local3--; }; } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ if (!(_arg1 is DisplayObject)){ return (false); }; var _local4:ColorTransform = new ColorTransform(); if (((!((_arg2 == null))) && (!((_arg3.exposedVars.removeTint == true))))){ _local4.color = uint(_arg2); }; _ignoreAlpha = true; init((_arg1 as DisplayObject), _local4); return (true); } override public function set changeFactor(_arg1:Number):void{ var _local2:ColorTransform; updateTweens(_arg1); if (_ignoreAlpha){ _local2 = _target.transform.colorTransform; _ct.alphaMultiplier = _local2.alphaMultiplier; _ct.alphaOffset = _local2.alphaOffset; }; _target.transform.colorTransform = _ct; } } }//package gs.plugins
Section 84
//TweenPlugin (gs.plugins.TweenPlugin) package gs.plugins { import gs.*; import gs.utils.tween.*; public class TweenPlugin { public var overwriteProps:Array; protected var _tweens:Array; public var propName:String; public var onComplete:Function; public var round:Boolean; protected var _changeFactor:Number;// = 0 public static const VERSION:Number = 1.03; public static const API:Number = 1; public function TweenPlugin(){ _tweens = []; super(); } protected function updateTweens(_arg1:Number):void{ var _local2:int; var _local3:TweenInfo; var _local4:Number; var _local5:int; if (this.round){ _local2 = (_tweens.length - 1); while (_local2 > -1) { _local3 = _tweens[_local2]; _local4 = (_local3.start + (_local3.change * _arg1)); _local5 = ((_local4)<0) ? -1 : 1; _local3.target[_local3.property] = ((((_local4 % 1) * _local5))>0.5) ? (int(_local4) + _local5) : int(_local4); _local2--; }; } else { _local2 = (_tweens.length - 1); while (_local2 > -1) { _local3 = _tweens[_local2]; _local3.target[_local3.property] = (_local3.start + (_local3.change * _arg1)); _local2--; }; }; } public function set changeFactor(_arg1:Number):void{ updateTweens(_arg1); _changeFactor = _arg1; } protected function addTween(_arg1:Object, _arg2:String, _arg3:Number, _arg4, _arg5:String=null):void{ var _local6:Number; if (_arg4 != null){ _local6 = ((typeof(_arg4))=="number") ? (_arg4 - _arg3) : Number(_arg4); if (_local6 != 0){ _tweens[_tweens.length] = new TweenInfo(_arg1, _arg2, _arg3, _local6, ((_arg5) || (_arg2)), false); }; }; } public function killProps(_arg1:Object):void{ var _local2:int; _local2 = (this.overwriteProps.length - 1); while (_local2 > -1) { if ((this.overwriteProps[_local2] in _arg1)){ this.overwriteProps.splice(_local2, 1); }; _local2--; }; _local2 = (_tweens.length - 1); while (_local2 > -1) { if ((_tweens[_local2].name in _arg1)){ _tweens.splice(_local2, 1); }; _local2--; }; } public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ addTween(_arg1, this.propName, _arg1[this.propName], _arg2, this.propName); return (true); } public function get changeFactor():Number{ return (_changeFactor); } public static function activate(_arg1:Array):Boolean{ var _local2:int; var _local3:Object; _local2 = (_arg1.length - 1); while (_local2 > -1) { _local3 = new (_arg1[_local2]); TweenLite.plugins[_local3.propName] = _arg1[_local2]; _local2--; }; return (true); } } }//package gs.plugins
Section 85
//VisiblePlugin (gs.plugins.VisiblePlugin) package gs.plugins { import flash.display.*; import gs.*; public class VisiblePlugin extends TweenPlugin { protected var _target:Object; protected var _visible:Boolean; protected var _tween:TweenLite; public static const VERSION:Number = 1; public static const API:Number = 1; public function VisiblePlugin(){ this.propName = "visible"; this.overwriteProps = ["visible"]; this.onComplete = onCompleteTween; } public function onCompleteTween():void{ if (((!((_tween.vars.runBackwards == true))) && ((_tween.ease == _tween.vars.ease)))){ _target.visible = _visible; }; } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ _target = _arg1; _tween = _arg3; _visible = Boolean(_arg2); return (true); } override public function set changeFactor(_arg1:Number):void{ if (_target.visible != true){ _target.visible = true; }; } } }//package gs.plugins
Section 86
//VolumePlugin (gs.plugins.VolumePlugin) package gs.plugins { import flash.display.*; import flash.media.*; import gs.*; public class VolumePlugin extends TweenPlugin { protected var _target:Object; protected var _st:SoundTransform; public static const VERSION:Number = 1.01; public static const API:Number = 1; public function VolumePlugin(){ this.propName = "volume"; this.overwriteProps = ["volume"]; } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ if (((isNaN(_arg2)) || (!(_arg1.hasOwnProperty("soundTransform"))))){ return (false); }; _target = _arg1; _st = _target.soundTransform; addTween(_st, "volume", _st.volume, _arg2, "volume"); return (true); } override public function set changeFactor(_arg1:Number):void{ updateTweens(_arg1); _target.soundTransform = _st; } } }//package gs.plugins
Section 87
//ArrayTweenInfo (gs.utils.tween.ArrayTweenInfo) package gs.utils.tween { public class ArrayTweenInfo { public var change:Number; public var start:Number; public var index:uint; public function ArrayTweenInfo(_arg1:uint, _arg2:Number, _arg3:Number){ this.index = _arg1; this.start = _arg2; this.change = _arg3; } } }//package gs.utils.tween
Section 88
//TweenInfo (gs.utils.tween.TweenInfo) package gs.utils.tween { public class TweenInfo { public var start:Number; public var name:String; public var change:Number; public var target:Object; public var property:String; public var isPlugin:Boolean; public function TweenInfo(_arg1:Object, _arg2:String, _arg3:Number, _arg4:Number, _arg5:String, _arg6:Boolean){ this.target = _arg1; this.property = _arg2; this.start = _arg3; this.change = _arg4; this.name = _arg5; this.isPlugin = _arg6; } } }//package gs.utils.tween
Section 89
//TweenLite (gs.TweenLite) package gs { import flash.events.*; import flash.display.*; import flash.utils.*; import gs.utils.tween.*; import gs.plugins.*; public class TweenLite { public var started:Boolean; public var delay:Number; protected var _hasUpdate:Boolean; protected var _hasPlugins:Boolean; public var initted:Boolean; public var active:Boolean; public var startTime:Number; public var target:Object; public var duration:Number; public var gc:Boolean; public var tweens:Array; public var vars:Object; public var ease:Function; public var exposedVars:Object; public var initTime:Number; public var combinedTimeScale:Number; public static const version:Number = 10.092; private static var _timer:Timer = new Timer(2000); public static var defaultEase:Function = TweenLite.easeOut; public static var plugins:Object = {}; public static var currentTime:uint; public static var masterList:Dictionary = new Dictionary(false); protected static var _reservedProps:Object = {ease:1, delay:1, overwrite:1, onComplete:1, onCompleteParams:1, runBackwards:1, startAt:1, onUpdate:1, onUpdateParams:1, roundProps:1, onStart:1, onStartParams:1, persist:1, renderOnStart:1, proxiedEase:1, easeParams:1, yoyo:1, loop:1, onCompleteListener:1, onUpdateListener:1, onStartListener:1, orientToBezier:1, timeScale:1}; public static var killDelayedCallsTo:Function = TweenLite.killTweensOf; public static var timingSprite:Sprite = new Sprite(); public static var overwriteManager:Object; private static var _tlInitted:Boolean; public function TweenLite(_arg1:Object, _arg2:Number, _arg3:Object){ if (_arg1 == null){ return; }; if (!_tlInitted){ TweenPlugin.activate([TintPlugin, RemoveTintPlugin, FramePlugin, AutoAlphaPlugin, VisiblePlugin, VolumePlugin, EndArrayPlugin]); currentTime = getTimer(); timingSprite.addEventListener(Event.ENTER_FRAME, updateAll, false, 0, true); if (overwriteManager == null){ overwriteManager = {mode:1, enabled:false}; }; _timer.addEventListener("timer", killGarbage, false, 0, true); _timer.start(); _tlInitted = true; }; this.vars = _arg3; this.duration = ((_arg2) || (0.001)); this.delay = ((_arg3.delay) || (0)); this.combinedTimeScale = ((_arg3.timeScale) || (1)); this.active = Boolean((((_arg2 == 0)) && ((this.delay == 0)))); this.target = _arg1; if (typeof(this.vars.ease) != "function"){ this.vars.ease = defaultEase; }; if (this.vars.easeParams != null){ this.vars.proxiedEase = this.vars.ease; this.vars.ease = easeProxy; }; this.ease = this.vars.ease; this.exposedVars = ((this.vars.isTV)==true) ? this.vars.exposedVars : this.vars; this.tweens = []; this.initTime = currentTime; this.startTime = (this.initTime + (this.delay * 1000)); var _local4:int = ((((_arg3.overwrite == undefined)) || (((!(overwriteManager.enabled)) && ((_arg3.overwrite > 1)))))) ? overwriteManager.mode : int(_arg3.overwrite); if (((!((_arg1 in masterList))) || ((_local4 == 1)))){ masterList[_arg1] = [this]; } else { masterList[_arg1].push(this); }; if ((((((this.vars.runBackwards == true)) && (!((this.vars.renderOnStart == true))))) || (this.active))){ initTweenVals(); if (this.active){ render((this.startTime + 1)); } else { render(this.startTime); }; if (((((!((this.exposedVars.visible == null))) && ((this.vars.runBackwards == true)))) && ((this.target is DisplayObject)))){ this.target.visible = this.exposedVars.visible; }; }; } public function get enabled():Boolean{ return ((this.gc) ? false : true); } public function set enabled(_arg1:Boolean):void{ var _local2:Array; var _local3:Boolean; var _local4:int; if (_arg1){ if (!(this.target in masterList)){ masterList[this.target] = [this]; } else { _local2 = masterList[this.target]; _local4 = (_local2.length - 1); while (_local4 > -1) { if (_local2[_local4] == this){ _local3 = true; break; }; _local4--; }; if (!_local3){ _local2[_local2.length] = this; }; }; }; this.gc = (_arg1) ? false : true; if (this.gc){ this.active = false; } else { this.active = this.started; }; } public function clear():void{ this.tweens = []; this.vars = (this.exposedVars = {ease:this.vars.ease}); _hasUpdate = false; } public function render(_arg1:uint):void{ var _local3:Number; var _local4:TweenInfo; var _local5:int; var _local2:Number = ((_arg1 - this.startTime) * 0.001); if (_local2 >= this.duration){ _local2 = this.duration; _local3 = ((((this.ease == this.vars.ease)) || ((this.duration == 0.001)))) ? 1 : 0; } else { _local3 = this.ease(_local2, 0, 1, this.duration); }; _local5 = (this.tweens.length - 1); while (_local5 > -1) { _local4 = this.tweens[_local5]; _local4.target[_local4.property] = (_local4.start + (_local3 * _local4.change)); _local5--; }; if (_hasUpdate){ this.vars.onUpdate.apply(null, this.vars.onUpdateParams); }; if (_local2 == this.duration){ complete(true); }; } public function activate():void{ this.started = (this.active = true); if (!this.initted){ initTweenVals(); }; if (this.vars.onStart != null){ this.vars.onStart.apply(null, this.vars.onStartParams); }; if (this.duration == 0.001){ this.startTime = (this.startTime - 1); }; } public function initTweenVals():void{ var _local1:String; var _local2:int; var _local3:*; var _local4:TweenInfo; if (((!((this.exposedVars.timeScale == undefined))) && (this.target.hasOwnProperty("timeScale")))){ this.tweens[this.tweens.length] = new TweenInfo(this.target, "timeScale", this.target.timeScale, (this.exposedVars.timeScale - this.target.timeScale), "timeScale", false); }; for (_local1 in this.exposedVars) { if ((_local1 in _reservedProps)){ } else { if ((_local1 in plugins)){ _local3 = new (plugins[_local1]); if (_local3.onInitTween(this.target, this.exposedVars[_local1], this) == false){ this.tweens[this.tweens.length] = new TweenInfo(this.target, _local1, this.target[_local1], ((typeof(this.exposedVars[_local1]))=="number") ? (this.exposedVars[_local1] - this.target[_local1]) : Number(this.exposedVars[_local1]), _local1, false); } else { this.tweens[this.tweens.length] = new TweenInfo(_local3, "changeFactor", 0, 1, ((_local3.overwriteProps.length)==1) ? _local3.overwriteProps[0] : "_MULTIPLE_", true); _hasPlugins = true; }; } else { this.tweens[this.tweens.length] = new TweenInfo(this.target, _local1, this.target[_local1], ((typeof(this.exposedVars[_local1]))=="number") ? (this.exposedVars[_local1] - this.target[_local1]) : Number(this.exposedVars[_local1]), _local1, false); }; }; }; if (this.vars.runBackwards == true){ _local2 = (this.tweens.length - 1); while (_local2 > -1) { _local4 = this.tweens[_local2]; this.tweens[_local2].start = (_local4.start + _local4.change); _local4.change = -(_local4.change); _local2--; }; }; if (this.vars.onUpdate != null){ _hasUpdate = true; }; if (((TweenLite.overwriteManager.enabled) && ((this.target in masterList)))){ overwriteManager.manageOverwrites(this, masterList[this.target]); }; this.initted = true; } protected function easeProxy(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (this.vars.proxiedEase.apply(null, arguments.concat(this.vars.easeParams))); } public function killVars(_arg1:Object):void{ if (overwriteManager.enabled){ overwriteManager.killVars(_arg1, this.exposedVars, this.tweens); }; } public function complete(_arg1:Boolean=false):void{ var _local2:int; if (!_arg1){ if (!this.initted){ initTweenVals(); }; this.startTime = (currentTime - ((this.duration * 1000) / this.combinedTimeScale)); render(currentTime); return; }; if (_hasPlugins){ _local2 = (this.tweens.length - 1); while (_local2 > -1) { if (((this.tweens[_local2].isPlugin) && (!((this.tweens[_local2].target.onComplete == null))))){ this.tweens[_local2].target.onComplete(); }; _local2--; }; }; if (this.vars.persist != true){ this.enabled = false; }; if (this.vars.onComplete != null){ this.vars.onComplete.apply(null, this.vars.onCompleteParams); }; } public static function updateAll(_arg1:Event=null):void{ var _local4:Array; var _local5:int; var _local6:TweenLite; var _local2:uint = (currentTime = getTimer()); var _local3:Dictionary = masterList; for each (_local4 in _local3) { _local5 = (_local4.length - 1); while (_local5 > -1) { _local6 = _local4[_local5]; if (_local6.active){ _local6.render(_local2); } else { if (_local6.gc){ _local4.splice(_local5, 1); } else { if (_local2 >= _local6.startTime){ _local6.activate(); _local6.render(_local2); }; }; }; _local5--; }; }; } public static function removeTween(_arg1:TweenLite, _arg2:Boolean=true):void{ if (_arg1 != null){ if (_arg2){ _arg1.clear(); }; _arg1.enabled = false; }; } public static function killTweensOf(_arg1:Object=null, _arg2:Boolean=false):void{ var _local3:Array; var _local4:int; var _local5:TweenLite; if (((!((_arg1 == null))) && ((_arg1 in masterList)))){ _local3 = masterList[_arg1]; _local4 = (_local3.length - 1); while (_local4 > -1) { _local5 = _local3[_local4]; if (((_arg2) && (!(_local5.gc)))){ _local5.complete(false); }; _local5.clear(); _local4--; }; delete masterList[_arg1]; }; } public static function from(_arg1:Object, _arg2:Number, _arg3:Object):TweenLite{ _arg3.runBackwards = true; return (new TweenLite(_arg1, _arg2, _arg3)); } public static function easeOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = (_arg1 / _arg4); return ((((-(_arg3) * _arg1) * (_arg1 - 2)) + _arg2)); } protected static function killGarbage(_arg1:TimerEvent):void{ var _local3:Object; var _local2:Dictionary = masterList; for (_local3 in _local2) { if (_local2[_local3].length == 0){ delete _local2[_local3]; }; }; } public static function delayedCall(_arg1:Number, _arg2:Function, _arg3:Array=null):TweenLite{ return (new TweenLite(_arg2, 0, {delay:_arg1, onComplete:_arg2, onCompleteParams:_arg3, overwrite:0})); } public static function to(_arg1:Object, _arg2:Number, _arg3:Object):TweenLite{ return (new TweenLite(_arg1, _arg2, _arg3)); } } }//package gs
Section 90
//BossContainer_102 (penguin_fla.BossContainer_102) package penguin_fla { import flash.net.*; import flash.events.*; import flash.display.*; import flash.media.*; import flash.filters.*; import flash.geom.*; import flash.text.*; import flash.utils.*; import flash.ui.*; import flash.system.*; import flash.external.*; import flash.errors.*; import adobe.utils.*; import flash.accessibility.*; import flash.printing.*; import flash.profiler.*; import flash.sampler.*; import flash.xml.*; public dynamic class BossContainer_102 extends MovieClip { public var prepuffed20:Puff; public var prepuffed1:Puff; public var testCoin1:Coin; public var prepuffed6:Puff; public var prepuffed7:Puff; public var prepuffed8:Puff; public var prepuffed11:Puff; public var prepuffed12:Puff; public var prepuffed13:Puff; public var prepuffed14:Puff; public var prepuffed16:Puff; public var prepuffed17:Puff; public var prepuffed18:Puff; public var BossContainer:MovieClip; public var prepuffed19:Puff; public function BossContainer_102(){ addFrameScript(82, frame83, 108, frame109, 137, frame138, 219, frame220, 270, frame271, 297, frame298, 357, frame358, 459, frame460, 492, frame493, 526, frame527, 563, frame564, 592, frame593, 650, frame651, 691, frame692, 706, frame707, 783, frame784, 824, frame825); } function frame493(){ this.BossContainer.bossAnim.throwArm.gotoAndPlay("throwPuff_short"); } function frame593(){ this.BossContainer.bossAnim.throwArm.gotoAndPlay("throwFish_short"); } function frame298(){ this.BossContainer.bossAnim.throwArm.gotoAndPlay("throwFish_short"); } function frame138(){ this.BossContainer.bossAnim.throwArm.gotoAndPlay("throwFish_medium"); } function frame651(){ this.BossContainer.bossAnim.throwArm.gotoAndPlay("throwPuff_medium"); } function frame358(){ this.BossContainer.bossAnim.throwArm.gotoAndPlay("throwPuff_medium"); } function frame692(){ this.BossContainer.bossAnim.throwArm.gotoAndPlay("throwPuff_short"); } function frame527(){ this.BossContainer.bossAnim.throwArm.gotoAndPlay("throwPuff_medium"); } function frame460(){ this.BossContainer.bossAnim.throwArm.gotoAndPlay("throwPuff_short"); } function frame707(){ this.BossContainer.bossAnim.throwArm.gotoAndPlay("throwPuff_short"); } function frame220(){ this.BossContainer.bossAnim.throwArm.gotoAndPlay("throwPuff_medium"); } function frame564(){ this.BossContainer.bossAnim.throwArm.gotoAndPlay("throwPuff_short"); } function frame83(){ this.BossContainer.bossAnim.throwArm.gotoAndPlay("throwPuff_medium"); } function frame109(){ SoundController.instance.playMusicLoop(SoundController.STAGE4_A); } function frame825(){ stop(); } function frame784(){ SoundController.instance.fadeOutMusic(); } function frame271(){ this.BossContainer.bossAnim.throwArm.gotoAndPlay("throwPuff_short"); } } }//package penguin_fla
Section 91
//ExportHolder_100 (penguin_fla.ExportHolder_100) package penguin_fla { import flash.display.*; public dynamic class ExportHolder_100 extends MovieClip { public function ExportHolder_100(){ addFrameScript(1, frame2); } function frame2(){ stop(); } } }//package penguin_fla
Section 92
//MainTimeline (penguin_fla.MainTimeline) package penguin_fla { import flash.events.*; import flash.display.*; import flash.ui.*; import flash.text.*; import adobe.utils.*; import flash.accessibility.*; import flash.errors.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.printing.*; import flash.profiler.*; import flash.sampler.*; import flash.system.*; import flash.utils.*; import flash.xml.*; public dynamic class MainTimeline extends MovieClip { public var credit:ContextMenuItem; public var preloaderClip:MovieClip; public var IDLE_FRAMES_BEFORE_ASSUMING_LOADED:Number; public var oldBytesLoaded:Number; public var changeCounter:Number; public var HARD_CODED_BYTES_TOTAL:Number; public var traceCounter:Number; public var fm_menu:ContextMenu; public function MainTimeline(){ addFrameScript(0, frame1, 2, frame3); } function frame1(){ stop(); this.addEventListener("enterFrame", onEnterFrame); traceCounter = 0; changeCounter = 0; oldBytesLoaded = 0; IDLE_FRAMES_BEFORE_ASSUMING_LOADED = 100; HARD_CODED_BYTES_TOTAL = 839000; fm_menu = new ContextMenu(); credit = new ContextMenuItem("A game by Mark."); credit.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT, visitMark); credit.separatorBefore = false; fm_menu.hideBuiltInItems(); fm_menu.customItems.push(credit); this.contextMenu = fm_menu; } public function visitMark(_arg1:Event){ var _local2:URLRequest; var _local3:*; if (((Settings.bareBones) || ((Settings.facebookMode == false)))){ _local2 = new URLRequest("http://www.mark.com.au"); navigateToURL(_local2); } else { if (Settings.connectionName){ _local3 = new LocalConnection(); _local3.send(Settings.connectionName, "callFBJS", "navigateTo", ["http://www.mark.com.au"]); }; }; } function frame3(){ stop(); } public function onEnterFrame(_arg1:Event){ var _local2:Number; if (this.loaderInfo.bytesTotal > 0){ _local2 = this.loaderInfo.bytesTotal; } else { _local2 = HARD_CODED_BYTES_TOTAL; }; preloaderClip.percentText.text = (("LOADING " + String(Math.ceil(((this.loaderInfo.bytesLoaded / _local2) * 100)))) + "%"); if (int(((this.loaderInfo.bytesLoaded / _local2) * 100)) == 100){ completeLoad(); }; changeCounter++; if (oldBytesLoaded != this.loaderInfo.bytesLoaded){ changeCounter = 0; }; if (changeCounter == IDLE_FRAMES_BEFORE_ASSUMING_LOADED){ if (Math.ceil(((this.loaderInfo.bytesLoaded / _local2) * 100)) > 95){ completeLoad(); }; }; oldBytesLoaded = this.loaderInfo.bytesLoaded; } public function completeLoad():void{ gotoAndPlay(2); this.removeEventListener("enterFrame", onEnterFrame); } } }//package penguin_fla
Section 93
//NumbersPlain_240 (penguin_fla.NumbersPlain_240) package penguin_fla { import flash.display.*; public dynamic class NumbersPlain_240 extends MovieClip { public function NumbersPlain_240(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package penguin_fla
Section 94
//NumbersPlainSmall_9 (penguin_fla.NumbersPlainSmall_9) package penguin_fla { import flash.display.*; public dynamic class NumbersPlainSmall_9 extends MovieClip { public function NumbersPlainSmall_9(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package penguin_fla
Section 95
//penguinAnime_mc_209 (penguin_fla.penguinAnime_mc_209) package penguin_fla { import flash.events.*; import flash.display.*; public dynamic class penguinAnime_mc_209 extends MovieClip { public var shakeContent:MovieClip; public function penguinAnime_mc_209(){ addFrameScript(2, frame3, 57, frame58, 58, frame59, 99, frame100); } function frame58(){ dispatchEvent(new Event(Event.COMPLETE)); } function frame59(){ trace("P ZIP.."); } function frame100(){ stop(); dispatchEvent(new Event(Event.COMPLETE)); } function frame3(){ this.gotoAndPlay("flying"); } } }//package penguin_fla
Section 96
//PenguinBanking_210 (penguin_fla.PenguinBanking_210) package penguin_fla { import flash.display.*; public dynamic class PenguinBanking_210 extends MovieClip { public function PenguinBanking_210(){ addFrameScript(1, frame2); } function frame2(){ stop(); } } }//package penguin_fla
Section 97
//ScoreBoardSmall_7 (penguin_fla.ScoreBoardSmall_7) package penguin_fla { import flash.display.*; public dynamic class ScoreBoardSmall_7 extends MovieClip { public var hundreds:Digit1; public var tens:Digit1; public var ones:Digit1; public function ScoreBoardSmall_7(){ addFrameScript(2, frame3, 41, frame42, 83, frame84); } function frame84(){ gotoAndStop(1); } function frame42(){ gotoAndStop(1); } function frame3(){ stop(); } } }//package penguin_fla
Section 98
//TestFishGroup1_188 (penguin_fla.TestFishGroup1_188) package penguin_fla { import flash.display.*; public dynamic class TestFishGroup1_188 extends MovieClip { public function TestFishGroup1_188(){ addFrameScript(81, frame82); } function frame82(){ stop(); } } }//package penguin_fla
Section 99
//TestFishGroup1_198 (penguin_fla.TestFishGroup1_198) package penguin_fla { import flash.display.*; public dynamic class TestFishGroup1_198 extends MovieClip { public function TestFishGroup1_198(){ addFrameScript(198, frame199, 199, frame200); } function frame199(){ stop(); } function frame200(){ stop(); } } }//package penguin_fla
Section 100
//TestFishGroup2_196 (penguin_fla.TestFishGroup2_196) package penguin_fla { import flash.display.*; public dynamic class TestFishGroup2_196 extends MovieClip { public function TestFishGroup2_196(){ addFrameScript(196, frame197, 197, frame198); } function frame197(){ stop(); } function frame198(){ stop(); } } }//package penguin_fla
Section 101
//TestFishGroup3_190 (penguin_fla.TestFishGroup3_190) package penguin_fla { import flash.display.*; public dynamic class TestFishGroup3_190 extends MovieClip { public function TestFishGroup3_190(){ addFrameScript(132, frame133); } function frame133(){ stop(); } } }//package penguin_fla
Section 102
//TestFishGroup4_192 (penguin_fla.TestFishGroup4_192) package penguin_fla { import flash.display.*; public dynamic class TestFishGroup4_192 extends MovieClip { public function TestFishGroup4_192(){ addFrameScript(199, frame200); } function frame200(){ stop(); } } }//package penguin_fla
Section 103
//TestFishGroupZipperJump_194 (penguin_fla.TestFishGroupZipperJump_194) package penguin_fla { import flash.display.*; public dynamic class TestFishGroupZipperJump_194 extends MovieClip { public function TestFishGroupZipperJump_194(){ addFrameScript(307, frame308); } function frame308(){ SoundController.instance.fadeOutMusic(); stop(); } } }//package penguin_fla
Section 104
//throwingArm_106 (penguin_fla.throwingArm_106) package penguin_fla { import flash.display.*; public dynamic class throwingArm_106 extends MovieClip { public function throwingArm_106(){ addFrameScript(1, frame2, 46, frame47, 89, frame90); } function frame47(){ stop(); } function frame90(){ stop(); } function frame2(){ stop(); } } }//package penguin_fla
Section 105
//Title2_20 (penguin_fla.Title2_20) package penguin_fla { import flash.display.*; public dynamic class Title2_20 extends MovieClip { public function Title2_20(){ addFrameScript(208, frame209); } function frame209(){ gotoAndPlay("shine"); } } }//package penguin_fla
Section 106
//Trophies_233 (penguin_fla.Trophies_233) package penguin_fla { import flash.display.*; public dynamic class Trophies_233 extends MovieClip { public function Trophies_233(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package penguin_fla
Section 107
//zipper1_171 (penguin_fla.zipper1_171) package penguin_fla { import flash.display.*; public dynamic class zipper1_171 extends MovieClip { public function zipper1_171(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package penguin_fla
Section 108
//AnimationPlane (AnimationPlane) package { import flash.events.*; import flash.display.*; import as3lib.*; import as3lib.utils.*; public class AnimationPlane extends Sprite { private var _animationWidth:Number; private var _contentMask:Sprite; private var _animations:Array; private var _maskHeight:Number; private var _content:Sprite; private var _animationGraphicClass:Class; private var _scrollSpeedMultipyler:Number; private var _maskWidth:Number; private static const CREATE_BUFFER:Number = 100; private static const DESTROY_BUFFER:Number = 200; public function AnimationPlane(_arg1:Number, _arg2:Number){ _maskWidth = _arg1; _maskHeight = _arg2; _content = new Sprite(); this.addChild(_content); _animations = new Array(); GlobalEvents.instance.addEventListener(GameEvent.PAUSE, handleGamePause); GlobalEvents.instance.addEventListener(GameEvent.RESUME, handleGameResume); } private function handleGameResume(_arg1:CustomEvent):void{ var _local2:MovieClip; var _local3:MovieClip; var _local5:int; var _local4:int; while (_local4 < _animations.length) { _local2 = _animations[_local4]; _local5 = 0; while (_local5 < _local2.numChildren) { _local3 = (_local2.getChildAt(_local5) as MovieClip); if (_local3){ if (_local3.name.indexOf("holder") != -1){ if (_local3.BossContainer){ _local3.BossContainer.play(); if (_local3.BossContainer.bossAnim){ _local3.BossContainer.bossAnim.play(); if (_local3.BossContainer.bossAnim.throwArm){ _local3.BossContainer.bossAnim.throwArm.play(); }; }; }; _local3.play(); }; }; _local5++; }; _local2.play(); _local4++; }; } private function createMask():Sprite{ var _local1:Sprite = new Sprite(); _local1.graphics.beginFill(0xFF00, 1); _local1.graphics.drawRect(0, 0, _maskWidth, _maskHeight); _local1.graphics.endFill(); return (_local1); } public function update(_arg1:Number){ } public function addAnimationClip(_arg1:MovieClip):void{ _animations.push(_arg1); _content.addChild(_arg1); _arg1.addEventListener(Event.COMPLETE, handleAnimationComplete); } private function handleAnimationComplete(_arg1:Event):void{ var _local2:* = (_arg1.target as MovieClip); _local2.removeEventListener(Event.COMPLETE, handleAnimationComplete); ArrayTools.removeItem(_animations, _local2); if (_content.contains(_local2)){ trace("==REMOVE ANIMATION=="); _content.removeChild(_local2); }; } private function handleGamePause(_arg1:CustomEvent):void{ var _local2:MovieClip; var _local3:MovieClip; var _local5:int; var _local4:int; while (_local4 < _animations.length) { _local2 = (_animations[_local4] as MovieClip); if (_local2){ _local5 = 0; while (_local5 < _local2.numChildren) { _local3 = (_local2.getChildAt(_local5) as MovieClip); if (_local3){ if (_local3.name.indexOf("holder") != -1){ if (_local3.BossContainer){ _local3.BossContainer.stop(); if (_local3.BossContainer.bossAnim){ _local3.BossContainer.bossAnim.stop(); if (_local3.BossContainer.bossAnim.throwArm){ _local3.BossContainer.bossAnim.throwArm.stop(); }; }; }; _local3.stop(); }; }; _local5++; }; _local2.stop(); }; _local4++; }; } public function addAnimation(_arg1:Class):void{ var _local2:MovieClip = new (_arg1); addAnimationClip(_local2); } public function get content():Sprite{ return (_content); } public function destroy():void{ GlobalEvents.instance.removeEventListener(GameEvent.PAUSE, handleGamePause); GlobalEvents.instance.removeEventListener(GameEvent.RESUME, handleGameResume); } } }//package
Section 109
//BackgroundManager (BackgroundManager) package { import flash.events.*; import flash.display.*; import gs.*; import as3lib.*; import as3lib.utils.*; import gs.easing.*; public class BackgroundManager { private var _background1:ScrollingPlane;// = null private var _background2:ScrollingPlane;// = null private var _background3:ScrollingPlane;// = null private var _background4:ScrollingPlane;// = null private var _transitioning_2_3:Boolean; private var _stopped:Boolean; private var _skyHolder:Sprite; private var _transPlaneFront:ScrollingPlane; private var _transPlaneBack:ScrollingPlane; private var _transHolderBack:Sprite; private var _bgHolders:Array; private var _transitioning_1_2:Boolean; private var _transitioning_3_4:Boolean; private var _foreground:ScrollingPlane;// = null private var _sky:MovieClip; private var _transHolderFront:Sprite; public function BackgroundManager(_arg1:Sprite, _arg2:Sprite, _arg3:Sprite, _arg4:Array, _arg5:Sprite){ _transHolderBack = _arg3; _transHolderFront = _arg2; _skyHolder = _arg5; _foreground = new ScrollingPlane(Settings.WIDTH, Settings.HEIGHT, Settings.FG_SPEED_MULTIPLYER); _foreground.tileGraphicClassList = Settings.FG_GRAPHIC_LIST; _foreground.tileWidth = 760; _foreground.y = 0; _foreground.animatedClasses = [Settings.FG_GRAPHIC_LIST[0]]; _foreground.drawFirst(); _background1 = new ScrollingPlane(Settings.WIDTH, Settings.HEIGHT, Settings.BG1_SPEED_MULTIPLYER); _background1.tileGraphicClassList = Settings.BG1_GRAPHIC_LIST; _background1.tileWidth = 760; _background1.y = 0; _background1.drawFirst(); _background2 = new ScrollingPlane(Settings.WIDTH, Settings.HEIGHT, Settings.BG2_SPEED_MULTIPLYER); _background2.tileGraphicClassList = Settings.BG2_GRAPHIC_LIST; _background2.tileWidth = 760; _background2.y = 0; _background2.drawFirst(); _background3 = new ScrollingPlane(Settings.WIDTH, Settings.HEIGHT, Settings.BG3_SPEED_MULTIPLYER); _background3.tileGraphicClassList = Settings.BG3_GRAPHIC_LIST; _background3.tileWidth = 760; _background3.y = 0; _background3.drawFirst(); _sky = new BgSky1(); _bgHolders = _arg4; _arg1.addChild(_foreground); _arg4[0].addChild(_background1); _arg4[1].addChild(_background2); _arg4[2].addChild(_background3); _skyHolder.addChild(_sky); } private function panTo(_arg1:Array, _arg2:Number=0, _arg3:Function=null){ if (_arg2 != 0){ if (_foreground){ TweenLite.to(_foreground, _arg2, {y:_arg1[0], ease:_arg3}); }; if (_transPlaneFront){ TweenLite.to(_transPlaneFront, _arg2, {y:_arg1[1], ease:_arg3}); }; if (_transPlaneBack){ TweenLite.to(_transPlaneBack, _arg2, {y:_arg1[2], ease:_arg3}); }; if (_background1){ TweenLite.to(_background1, _arg2, {y:_arg1[3], ease:_arg3}); }; if (_background2){ TweenLite.to(_background2, _arg2, {y:_arg1[4], ease:_arg3}); }; if (_background3){ TweenLite.to(_background3, _arg2, {y:_arg1[5], ease:_arg3}); }; if (_background4){ TweenLite.to(_background4, _arg2, {y:_arg1[6], ease:_arg3}); }; if (_sky){ TweenLite.to(_sky, _arg2, {y:_arg1[7], ease:_arg3}); }; } else { if (_foreground){ _foreground.y = _arg1[0]; }; if (_transPlaneFront){ _transPlaneFront.y = _arg1[1]; }; if (_transPlaneBack){ _transPlaneBack.y = _arg1[2]; }; if (_background1){ _background1.y = _arg1[3]; }; if (_background2){ _background2.y = _arg1[4]; }; if (_background3){ _background3.y = _arg1[5]; }; if (_background4){ _background4.y = _arg1[6]; }; if (_sky){ _sky.y = _arg1[7]; }; }; } public function panUp(_arg1:Boolean=false):void{ var _local2:Number = 0; if (_arg1){ _local2 = 3; }; var _local3:Array = [600, 500, 405, 305, 205, 155, 130, 115]; panTo(_local3, _local2, Quad.easeInOut); } private function switchToLevel3bComplete():void{ _foreground.scrollSpeedMultipyler = Settings.FG_SPEED_MULTIPLYER_OCEAN; _foreground.setTileGraphicClassList(Settings.STAGE3_FG_GRAPHIC_LIST, false); } public function switchToLevel3aBackComplete():void{ _transitioning_2_3 = false; _transHolderBack.removeChild(_transPlaneBack); _transPlaneBack.destroy(); } public function transitionToLevel2b():void{ _foreground.setTileGraphicClassList([S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk_Trans1, S1_EmptyChunk, S1_Bg0Chunk_Trans2, S1_Bg0Chunk_Trans1, S1_EmptyChunk, S1_Bg0Chunk_Trans1, S1_EmptyChunk, S1_Bg0Chunk_Trans3, S1_EmptyChunk, S1_Bg0Chunk_Trans7, S1_Bg0Chunk_Trans7, S1_Bg0Chunk_Trans2, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk_Trans4, S1_Bg0Chunk_Trans6, S1_EmptyChunk, S1_Bg0Chunk_Trans5, S1_EmptyChunk, S1_Bg0Chunk_Trans6, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk], false); _foreground.addEventListener(ScrollingPlane.COMPLETE_LIST, handleTransition2FgComplete); } public function transitionToLevel2c():void{ GlobalEvents.instance.broadcastEvent(new CustomEvent(Trigger.ANIMATION, Stage2Anim)); } private function handleTransition3BackTransComplete(_arg1:CustomEvent):void{ _transPlaneBack.removeEventListener(ScrollingPlane.COMPLETE_LIST, handleTransition3BackTransComplete); switchToLevel3aBackComplete(); } private function handleTransition2BackTransComplete(_arg1:CustomEvent):void{ _transPlaneBack.removeEventListener(ScrollingPlane.COMPLETE_LIST, handleTransition2BackTransComplete); switchToLevel2aComplete(); } private function handleTransition2FgComplete(_arg1:CustomEvent):void{ _foreground.removeEventListener(ScrollingPlane.COMPLETE_LIST, handleTransition2FgComplete); switchToLevel2bComplete(); } private function handleTransition4FgComplete(_arg1:CustomEvent):void{ _foreground.removeEventListener(ScrollingPlane.COMPLETE_LIST, handleTransition4FgComplete); switchToLevel4bComplete(); } public function transitionToLevel2a():void{ _transPlaneBack = new ScrollingPlane(Settings.WIDTH, Settings.HEIGHT, Settings.TRANS_BACK_SPEED_MULTIPLYER_1_2, true); _transPlaneBack.tileGraphicClassList = [S1_EmptyChunk, S1_2_Trans1, S1_2_Trans2, S1_2_Trans3, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk]; _transPlaneBack.tileWidth = 760; _transHolderBack.addChild(_transPlaneBack); _transPlaneBack.addEventListener(ScrollingPlane.COMPLETE_LIST, handleTransition2BackTransComplete); _transitioning_1_2 = true; } public function transitionToLevel2d():void{ _background1.setTileGraphicClassList(Settings.STAGE2_BG1_GRAPHIC_LIST, true); _background2.setTileGraphicClassList(Settings.STAGE2_BG2_GRAPHIC_LIST, true); _background3.setTileGraphicClassList(Settings.STAGE2_BG3_GRAPHIC_LIST, true); DisplayTools.removeAllChildrenFrom(_skyHolder); _sky = new BgSky2(); _skyHolder.addChild(_sky); } public function switchToLevel4aFrontComplete():void{ _transHolderFront.removeChild(_transPlaneFront); _transPlaneFront.destroy(); } public function transitionToLevel3a():void{ _transPlaneFront = new ScrollingPlane(Settings.WIDTH, Settings.HEIGHT, Settings.TRANS_FRONT_SPEED_MULTIPLYER, true); _transPlaneFront.tileGraphicClassList = [S1_EmptyChunk, S2_3_Trans_Front1, S1_EmptyChunk, S2_3_Trans_Front1, S2_3_Trans_Front2, S2_3_Trans_Front3, S2_3_Trans_Front4, S1_EmptyChunk, S1_EmptyChunk]; _transPlaneFront.tileWidth = 760; _transHolderFront.addChild(_transPlaneFront); _transPlaneFront.addEventListener(ScrollingPlane.COMPLETE_LIST, handleTransition3FrontTransComplete); _transPlaneBack = new ScrollingPlane(Settings.WIDTH, Settings.HEIGHT, Settings.TRANS_BACK_SPEED_MULTIPLYER_2_3, true); _transPlaneBack.tileGraphicClassList = [S1_EmptyChunk, S2_3_Trans_Back1, S2_3_Trans_Back2, S2_3_Trans_Back4, S2_3_Trans_Back5, S1_EmptyChunk, S1_EmptyChunk]; _transPlaneBack.tileWidth = 760; _transHolderBack.addChild(_transPlaneBack); _transPlaneBack.addEventListener(ScrollingPlane.COMPLETE_LIST, handleTransition3BackTransComplete); _transitioning_2_3 = true; } public function transitionToLevel3d():void{ trace(("transitionToLevel3d " + transitionToLevel3d)); _background4 = new ScrollingPlane(Settings.WIDTH, Settings.HEIGHT, Settings.BG4_SPEED_MULTIPLYER_OCEAN); _background4.tileWidth = 760; _background4.y = 0; _bgHolders[3].addChild(_background4); _background1.setTileGraphicClassList(Settings.STAGE3_BG1_GRAPHIC_LIST, true); _background2.setTileGraphicClassList(Settings.STAGE3_BG2_GRAPHIC_LIST, true); _background3.setTileGraphicClassList(Settings.STAGE3_BG3_GRAPHIC_LIST, true); _background4.tileGraphicClassList = Settings.STAGE3_BG4_GRAPHIC_LIST; Settings.FG_SPEED_MULTIPLYER_OCEAN; _background4.scrollSpeedMultipyler = Settings.BG4_SPEED_MULTIPLYER_OCEAN; _background3.scrollSpeedMultipyler = Settings.BG3_SPEED_MULTIPLYER_OCEAN; _background2.scrollSpeedMultipyler = Settings.BG2_SPEED_MULTIPLYER_OCEAN; _background1.scrollSpeedMultipyler = Settings.BG1_SPEED_MULTIPLYER_OCEAN; DisplayTools.removeAllChildrenFrom(_skyHolder); _sky = new BgSky3(); _skyHolder.addChild(_sky); } private function handleTransition3FrontTransComplete(_arg1:CustomEvent):void{ _transPlaneFront.removeEventListener(ScrollingPlane.COMPLETE_LIST, handleTransition3FrontTransComplete); switchToLevel3aFrontComplete(); } public function update(_arg1:Number):void{ if (_stopped){ return; }; _foreground.update(_arg1); _background1.update(_arg1); _background2.update(_arg1); _background3.update(_arg1); if (_background4 != null){ _background4.update(_arg1); }; if (_transitioning_1_2){ _transPlaneBack.update(_arg1); }; if (_transitioning_2_3){ _transPlaneFront.update(_arg1); _transPlaneBack.update(_arg1); }; if (_transitioning_3_4){ _transPlaneFront.update(_arg1); _transPlaneBack.update(_arg1); }; } public function transitionToLevel3b():void{ _foreground.setTileGraphicClassList([S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk], false); _foreground.addEventListener(ScrollingPlane.COMPLETE_LIST, handleTransition3FgComplete); } public function switchToLevel4aBackComplete():void{ _transitioning_3_4 = false; _transHolderBack.removeChild(_transPlaneBack); _transPlaneBack.destroy(); } private function switchToLevel4bComplete():void{ _foreground.setTileGraphicClassList([S1_EmptyChunk], false); } public function panDown(_arg1:Boolean=false):void{ var _local2:Number = 0; if (_arg1){ _local2 = 3; }; var _local3:Array = [0, 0, 0, 0, 0, 0, 0, 0]; panTo(_local3, _local2, Quad.easeOut); } public function transitionToLevel4a():void{ _transPlaneFront = new ScrollingPlane(Settings.WIDTH, Settings.HEIGHT, Settings.TRANS_FRONT_SPEED_MULTIPLYER_3_4, true); _transPlaneFront.tileGraphicClassList = [S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk]; _transPlaneFront.tileWidth = 760; _transHolderFront.addChild(_transPlaneFront); _transPlaneFront.addEventListener(ScrollingPlane.COMPLETE_LIST, handleTransition4FrontTransComplete); _transPlaneBack = new ScrollingPlane(Settings.WIDTH, Settings.HEIGHT, Settings.TRANS_BACK_SPEED_MULTIPLYER_3_4, true); _transPlaneBack.tileGraphicClassList = [S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S3_4_Trans_Back1, S3_4_Trans_Back2, S3_4_Trans_Back1, S3_4_Trans_Back1, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk]; _transPlaneBack.tileWidth = 760; _transPlaneBack.animatedClasses = [S3_4_Trans_Back2]; _transHolderBack.addChild(_transPlaneBack); _transPlaneBack.addEventListener(ScrollingPlane.COMPLETE_LIST, handleTransition4BackTransComplete); _transitioning_3_4 = true; } public function transitionToLevel4c():void{ } public function transitionToLevel4d():void{ } public function transitionToLevel4e():void{ _stopped = true; GlobalEvents.instance.broadcastEvent(new CustomEvent(Trigger.END_GAME)); } public function transitionToLevel3c():void{ GlobalEvents.instance.broadcastEvent(new CustomEvent(Trigger.ANIMATION, Stage3Anim)); } private function handleTransition4BackTransComplete(_arg1:CustomEvent):void{ _transPlaneBack.removeEventListener(ScrollingPlane.COMPLETE_LIST, handleTransition4BackTransComplete); switchToLevel4aBackComplete(); } private function handleTransition4FrontTransComplete(_arg1:CustomEvent):void{ _transPlaneFront.removeEventListener(ScrollingPlane.COMPLETE_LIST, handleTransition4FrontTransComplete); switchToLevel4aFrontComplete(); } private function handleTransition3FgComplete(_arg1:CustomEvent):void{ _foreground.removeEventListener(ScrollingPlane.COMPLETE_LIST, handleTransition3FgComplete); switchToLevel3bComplete(); } public function transitionToLevel4b():void{ _foreground.setTileGraphicClassList([S3_Bg0ChunkIce1, S1_EmptyChunk, S3_Bg0ChunkIce2, S1_EmptyChunk, S3_Bg0ChunkIce1, S3_Bg0ChunkIce1, S3_Bg0ChunkIce2, S3_Bg0ChunkIce1, S3_Bg0ChunkIce2, S3_Bg0ChunkIce1, S3_Bg0ChunkIce1, S3_Bg0ChunkIce2, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk], false); _foreground.addEventListener(ScrollingPlane.COMPLETE_LIST, handleTransition4FgComplete); } public function switchToLevel2aComplete():void{ _transitioning_1_2 = false; _transHolderBack.removeChild(_transPlaneBack); _transPlaneBack.destroy(); } private function switchToLevel2bComplete():void{ _foreground.setTileGraphicClassList(Settings.STAGE2_FG_GRAPHIC_LIST, false); } public function switchToLevel3aFrontComplete():void{ _transHolderFront.removeChild(_transPlaneFront); _transPlaneFront.destroy(); } } }//package
Section 110
//BgSky1 (BgSky1) package { import flash.display.*; public dynamic class BgSky1 extends MovieClip { } }//package
Section 111
//BgSky2 (BgSky2) package { import flash.display.*; public dynamic class BgSky2 extends MovieClip { } }//package
Section 112
//BgSky3 (BgSky3) package { import flash.display.*; public dynamic class BgSky3 extends MovieClip { } }//package
Section 113
//Boss (Boss) package { import flash.events.*; import flash.display.*; public dynamic class Boss extends MovieClip { public var holder2:MovieClip; public function Boss(){ addFrameScript(834, frame835, 835, frame836); } function frame836(){ stop(); dispatchEvent(new Event(Event.COMPLETE)); } function frame835(){ dispatchEvent(new Event("scrollResume")); } } }//package
Section 114
//Cannon (Cannon) package { import flash.events.*; import flash.display.*; public class Cannon extends MovieClip { public var instructionsContent:MovieClip; public function Cannon(){ addFrameScript(4, frame5, 46, frame47, 125, frame126, 185, frame186); trace("new Cannon.."); ElementManager.instance.registerCannon(this); if (Settings.firstRun){ trace("FIRST RUN"); this.instructionsContent.gotoAndStop(1); } else { trace("NEXT RUN"); this.instructionsContent.gotoAndStop(2); }; } function frame47(){ SoundController.instance.playMusicLoop(SoundController.STAGE1_A); } function frame186(){ stop(); } public function action():void{ this.gotoAndPlay("action"); } function frame126(){ dispatchEvent(new Event(Event.COMPLETE)); } function frame5(){ stop(); } } }//package
Section 115
//Coin (Coin) package { import flash.display.*; public class Coin extends MovieClip implements ICollectable { public var collected:Boolean; public var value:int;// = 1 private var _nested:Boolean; public function Coin(){ addFrameScript(1, frame2, 13, frame14); this.cacheAsBitmap = true; ElementManager.instance.registerCollectable(this); if (this.parent.name.indexOf("holder") != -1){ _nested = true; }; } public function getGlobalY():Number{ if (_nested){ return (((this.y + this.parent.y) + this.parent.parent.y)); }; return ((this.y + this.parent.y)); } function frame2(){ stop(); } public function hasCollected():Boolean{ return (collected); } function frame14(){ stop(); } public function collect():void{ this.cacheAsBitmap = false; collected = true; this.gotoAndPlay("capture"); SoundController.instance.playUniqueSound(SoundController.COLLECT_COIN); } public function getValue():int{ return (this.value); } public function getGlobalX():Number{ if (_nested){ return (((this.x + this.parent.x) + this.parent.parent.x)); }; return ((this.x + this.parent.x)); } } }//package
Section 116
//CountDownAnim (CountDownAnim) package { import flash.events.*; import flash.display.*; import as3lib.*; public dynamic class CountDownAnim extends MovieClip { public function CountDownAnim(){ addFrameScript(20, frame21, 149, frame150); } function frame21(){ SoundController.instance.playMusicLoop(SoundController.STAGE1_B, 1, true); } function frame150(){ stop(); dispatchEvent(new Event(Event.COMPLETE)); GlobalEvents.instance.broadcastEvent(new CustomEvent("go")); } } }//package
Section 117
//Crosshair (Crosshair) package { import flash.display.*; public dynamic class Crosshair extends MovieClip { } }//package
Section 118
//CustomCursor (CustomCursor) package { import flash.events.*; import flash.display.*; import flash.ui.*; public class CustomCursor extends MovieClip { private static var _instance:CustomCursor; public function CustomCursor(){ _instance = this; this.parent.addEventListener(MouseEvent.MOUSE_MOVE, handleMouseMove); this.cacheAsBitmap = true; this.mouseEnabled = false; this.mouseChildren = false; this.visible = false; hideMouse(); this.stage.addEventListener(Event.MOUSE_LEAVE, handleMouseLeave); } public function hide():void{ this.alpha = 0; } public function showMouse():void{ Mouse.show(); } private function handleMouseLeave(_arg1:Event):void{ this.visible = false; } public function hideMouse():void{ Mouse.hide(); } public function show():void{ this.alpha = 1; } private function handleMouseMove(_arg1:MouseEvent):void{ if (this.alpha == 0){ this.alpha = 1; }; this.visible = true; this.x = _arg1.stageX; this.y = _arg1.stageY; } public static function get instance():CustomCursor{ if (_instance == null){ _instance = new (CustomCursor); }; return (_instance); } } }//package
Section 119
//Digit (Digit) package { import flash.events.*; import flash.display.*; public class Digit extends MovieClip { public var bounceContent:MovieClip; private var _value:Number; private var _clip:MovieClip; private var _pending:Boolean; private var _tempValue:Number; public function Digit(){ _clip = this; _value = 0; this.addEventListener("peek", updateToTemp); } public function get value():Number{ return (_value); } public function setValue(_arg1, _arg2:Boolean){ if (_pending){ updateToTemp(null); }; _value = _arg1; _tempValue = _value; if (!_arg2){ updateToTemp(null); } else { _pending = true; _clip.gotoAndPlay("bounce"); }; } public function get clip():MovieClip{ return (_clip); } private function updateToTemp(_arg1:Event):void{ _pending = false; _clip.bounceContent.gotoAndStop((_tempValue + 1)); } } }//package
Section 120
//Digit1 (Digit1) package { import flash.events.*; public dynamic class Digit1 extends Digit { public function Digit1(){ addFrameScript(2, frame3, 4, frame5, 6, frame7); } function frame5(){ dispatchEvent(new Event("peek")); } function frame7(){ dispatchEvent(new Event(Event.COMPLETE)); } function frame3(){ stop(); } } }//package
Section 121
//Digit2 (Digit2) package { import flash.events.*; public dynamic class Digit2 extends Digit { public function Digit2(){ addFrameScript(2, frame3, 4, frame5, 6, frame7); } function frame5(){ dispatchEvent(new Event("peek")); } function frame7(){ dispatchEvent(new Event(Event.COMPLETE)); } function frame3(){ stop(); } } }//package
Section 122
//ElementManager (ElementManager) package { import flash.events.*; import flash.display.*; import flash.geom.*; import as3lib.utils.*; public class ElementManager extends MovieClip { private var _coins:Array; public var puffFrames:Array; private var _zippers:Array; private var _triggers:Array; private var _lastHeadPoint:Point; private var _avoidables:Array; public var cannon:Cannon; private static var _instance:ElementManager = null; public function ElementManager(){ reset(); puffFrames = new Array(); } public function registerCannon(_arg1:Cannon):void{ this.cannon = _arg1; this.cannon.addEventListener(Event.COMPLETE, handleCannonComplete); } public function registerAnimTrigger(_arg1:MovieClip):void{ dispatchEvent(new GameEvent(GameEvent.TRIGGER_ANIMATION, _arg1)); } public function update(_arg1:Array, _arg2:Number):void{ var _local3:Point; var _local4:ICollectable; var _local6:IAvoidable; var _local8:Zipper; var _local10:ITriggerable; var _local12:int; var _local13:int; var _local5:int; while (_local5 < _coins.length) { _local4 = (_coins[_local5] as ICollectable); if (!_local4.hasCollected()){ _local12 = 0; while (_local12 < _arg1.length) { _local3 = (_arg1[_local12] as Point); if (Point.distance(_local3, new Point(_local4.getGlobalX(), _local4.getGlobalY())) < Settings.COLLECT_THRESH){ _local4.collect(); dispatchEvent(new GameEvent(GameEvent.COLLECT_COIN, _local4)); break; }; _local12++; }; }; _local5++; }; var _local7:int; while (_local7 < _avoidables.length) { _local6 = (_avoidables[_local7] as IAvoidable); if (!_local6.hasCollided()){ _local13 = 0; while (_local13 < _arg1.length) { _local3 = (_arg1[_local13] as Point); if (Point.distance(_local3, new Point(_local6.getGlobalX(), _local6.getGlobalY())) < Settings.PUFF_THRESH){ _local6.puff(); if (Point.distance(_local3, new Point(_local6.getGlobalX(), _local6.getGlobalY())) < Settings.COLLECT_THRESH){ _local6.collide(); dispatchEvent(new GameEvent(GameEvent.COLLIDE_BOMB, _local4)); break; }; }; _local13++; }; }; _local6.update(); _local7++; }; _local3 = _arg1[0]; var _local9:int; while (_local9 < _zippers.length) { _local8 = (_zippers[_local9] as Zipper); if (!_local8.zipped){ if (Point.distance(_local3, new Point(_local8.getGlobalX(), _local8.getGlobalY())) < 100){ if (HitTest.lineToLineIntersection((_lastHeadPoint.x - _arg2), _lastHeadPoint.y, _local3.x, _local3.y, _local8.getGlobalX(), (_local8.getGlobalY() - _local8.radius), _local8.getGlobalX(), (_local8.getGlobalY() + _local8.radius)).b == true){ _local8.zip(); dispatchEvent(new GameEvent(GameEvent.HIT_ZIPPER, _local8)); }; }; }; _local9++; }; _lastHeadPoint.x = _local3.x; _lastHeadPoint.y = _local3.y; var _local11:int; while (_local11 < _triggers.length) { _local10 = (_triggers[_local11] as ITriggerable); if (!_local10.hasTriggered()){ if (_local10.getGlobalX() < 0){ _local10.trigger(); }; }; _local11++; }; } public function reset():void{ _coins = new Array(); _avoidables = new Array(); _zippers = new Array(); _lastHeadPoint = new Point(); _triggers = new Array(); } private function handleTriggerRemoved(_arg1:Event):void{ var _local2:ITriggerable = (_arg1.target as ITriggerable); _local2.removeEventListener(Event.REMOVED_FROM_STAGE, handleTriggerRemoved); ArrayTools.removeItem(_triggers, _local2); } private function handleCollectableRemoved(_arg1:Event):void{ var _local2:ICollectable = (_arg1.target as ICollectable); _local2.removeEventListener(Event.REMOVED_FROM_STAGE, handleCollectableRemoved); ArrayTools.removeItem(_coins, _local2); } public function registerTrigger(_arg1:ITriggerable):void{ _triggers.push(_arg1); _arg1.addEventListener(Event.REMOVED_FROM_STAGE, handleTriggerRemoved); } private function handleAvoidableRemoved(_arg1:Event):void{ var _local2:IAvoidable = (_arg1.target as IAvoidable); _local2.removeEventListener(Event.REMOVED_FROM_STAGE, handleAvoidableRemoved); ArrayTools.removeItem(_avoidables, _local2); } private function handleZipperRemoved(_arg1:Event):void{ var _local2:Zipper = (_arg1.target as Zipper); _local2.removeEventListener(Event.REMOVED_FROM_STAGE, handleZipperRemoved); ArrayTools.removeItem(_zippers, _local2); } private function handleCannonComplete(_arg1:Event):void{ this.cannon.removeEventListener(Event.COMPLETE, handleCannonComplete); dispatchEvent(new GameEvent(GameEvent.CANNON_FIRE)); } public function registerZipper(_arg1:Zipper):void{ _zippers.push(_arg1); _arg1.addEventListener(Event.REMOVED_FROM_STAGE, handleZipperRemoved); } public function registerCollectable(_arg1:ICollectable):void{ _coins.push(_arg1); _arg1.addEventListener(Event.REMOVED_FROM_STAGE, handleCollectableRemoved); } public function registerAvoidable(_arg1:IAvoidable):void{ _avoidables.push(_arg1); _arg1.addEventListener(Event.REMOVED_FROM_STAGE, handleAvoidableRemoved); } public function initialiseBitmaps():void{ var _local1:PuffTemplate2 = new PuffTemplate2(); _local1.initialise(); puffFrames[Puff.IDLE] = _local1.idleFrames.slice(0, _local1.idleFrames.length); puffFrames[Puff.PUFFING] = _local1.puffingFrames.slice(0, _local1.puffingFrames.length); puffFrames[Puff.COLLIDING] = _local1.collidingFrames.slice(0, _local1.collidingFrames.length); } public static function resetSingleton():void{ _instance = new (ElementManager); } public static function get instance():ElementManager{ if (_instance == null){ _instance = new (ElementManager); }; return (_instance); } } }//package
Section 123
//Flake (Flake) package { import flash.display.*; public class Flake extends MovieClip { public var rotSpeed:Number; public var ySpeed:Number; public var homeX:Number; public var maxDisplacement:Number; public var xRot:Number; } }//package
Section 124
//GameEvent (GameEvent) package { import flash.events.*; public class GameEvent extends Event { protected var _data:Object; protected var _type:String; public static const COLLIDE_BOMB:String = "collideBomb"; public static const HIT_ZIPPER:String = "hitZipper"; public static const TRIGGER_SPEED_UP:String = "triggerSpeedUp"; public static const RESUME:String = "resume"; public static const COLLECT_COIN:String = "collectCoin"; public static const PAUSE:String = "pause"; public static const CANNON_FIRE:String = "cannonFire"; public static const TRIGGER_ANIMATION:String = "triggerAnimation"; public function GameEvent(_arg1:String, _arg2:Object=null){ super(_arg1); _type = _arg1; _data = _arg2; } public function get data():Object{ return (_data); } override public function clone():Event{ return (new GameEvent(_type, _data)); } } }//package
Section 125
//GamePlane (GamePlane) package { import flash.events.*; import flash.display.*; import as3lib.*; public class GamePlane { private var _running:Boolean;// = false private var _triggerTimes:Array; private var _runningGameAnimation:Boolean;// = false private var _triggers:Array; private var _easyIteratorIndex:int;// = 0 public var scrollingPlane:ScrollingPlane; public var animationPlane:AnimationPlane; public function GamePlane(_arg1:Number, _arg2:Number){ scrollingPlane = new ScrollingPlane(_arg1, _arg2, 1, true, false); scrollingPlane.addEventListener(Event.CHANGE, handleScrollPlaneChange); scrollingPlane.addEventListener(ScrollingPlane.COMPLETE_LIST, handleGameComplete); scrollingPlane.tileWidth = 500; animationPlane = new AnimationPlane(_arg1, _arg2); _triggers = new Array(); _triggerTimes = new Array(); var _local3:Trigger = new Trigger(Trigger.ANIMATION, CountDownAnim); var _local4:Trigger = new Trigger(Trigger.ANIMATION, InstructionsAnim); var _local5:Trigger = new Trigger(Trigger.SPEED_UP, Settings.PLAYER_MAX_X_SPEEDS[1]); var _local6:Trigger = new Trigger(Trigger.NEW_LEVEL, {level:2, transitionPart:"a"}); var _local7:Trigger = new Trigger(Trigger.NEW_LEVEL, {level:2, transitionPart:"b"}); var _local8:Trigger = new Trigger(Trigger.NEW_LEVEL, {level:3, transitionPart:"a"}); var _local9:Trigger = new Trigger(Trigger.NEW_LEVEL, {level:3, transitionPart:"b"}); var _local10:Trigger = new Trigger(Trigger.NEW_LEVEL, {level:4, transitionPart:"a"}); var _local11:Trigger = new Trigger(Trigger.NEW_LEVEL, {level:4, transitionPart:"b"}); var _local12:Trigger = new Trigger(Trigger.GAME_ANIMATION, JumpFishAnim_1); var _local13:Trigger = new Trigger(Trigger.GAME_ANIMATION, JumpFishAnim_2); var _local14:Trigger = new Trigger(Trigger.GAME_ANIMATION, JumpFishAnim_3); var _local15:Trigger = new Trigger(Trigger.GAME_ANIMATION, JumpFishAnim_4); var _local16:Trigger = new Trigger(Trigger.GAME_ANIMATION, JumpFishAnim_1_5); var _local17:Trigger = new Trigger(Trigger.GAME_ANIMATION, ZipperJumpFishAnim); var _local18:Trigger = new Trigger(Trigger.ENTER_BOSS, Boss); var _local19:Trigger = new Trigger(Trigger.MUSIC_CHANGE, SoundController.STAGE2_B); var _local20:Trigger = new Trigger(Trigger.MUSIC_CHANGE, SoundController.STAGE2_A); var _local21:Trigger = new Trigger(Trigger.MUSIC_CHANGE, SoundController.STAGE3_B); scrollingPlane.tileGraphicClassList = new Array(); addTiles([LevelChunk_Empty, LevelChunk_Empty, _local3]); addTiles([LevelChunk_Empty, LevelChunk_Empty, LevelChunk_Empty, LevelChunk_Empty]); addTiles([LevelChunk_FishIntro1, LevelChunk_Empty, LevelChunk_FishIntro3]); addTiles([LevelChunk_Empty]); addTiles([LevelChunk_SineA_1, LevelChunk_SineA_2, LevelChunk_SineA_3]); addTiles([LevelChunk_Empty]); addTiles([LevelChunk_ZipperIntroA_0, LevelChunk_ZipperIntroA_1, LevelChunk_ZipperIntroA_2, LevelChunk_ZipperIntroA_2, LevelChunk_ZipperIntroA_2, LevelChunk_ZipperIntroA_2, LevelChunk_ZipperIntroA_2, LevelChunk_Empty, LevelChunk_Empty, LevelChunk_Empty, LevelChunk_ZipperIntroB_1, LevelChunk_ZipperIntroB_2, LevelChunk_ZipperIntroA_3, LevelChunk_ZipperIntroA_4, _local5, LevelChunk_ZipperIntroA_4, LevelChunk_ZipperIntroA_4, LevelChunk_ZipperIntroA_4, LevelChunk_Empty, LevelChunk_Empty, LevelChunk_ZipperIntroA_5]); addTiles([LevelChunk_Empty, LevelChunk_Empty]); addTiles([_local6]); addTiles([LevelChunk_Empty]); addTiles([_local7]); addTiles([LevelChunk_Stage1Fin_1, LevelChunk_Stage1Fin_2, LevelChunk_Empty]); addTiles([LevelChunk_Empty, LevelChunk_Empty, LevelChunk_Empty]); addTiles([LevelChunk_Empty, LevelChunk_Empty, LevelChunk_Empty]); addTiles([LevelChunk_Empty, LevelChunk_Empty, LevelChunk_Empty]); addTiles([LevelChunk_Empty, LevelChunk_Empty, LevelChunk_Empty]); addTiles([LevelChunk_BombIntro_1]); addTiles([LevelChunk_Empty]); addTiles([LevelChunk_SineB_1, LevelChunk_SineB_2, LevelChunk_SineB_3]); addTiles([_local19]); addTiles([LevelChunk_Empty]); addTiles([LevelChunk_DeadEnd_1, LevelChunk_Empty, LevelChunk_DeadEnd_4]); addTiles([LevelChunk_Empty]); addTiles([LevelChunk_Gates_4, LevelChunk_Gates_3]); addTiles([LevelChunk_ZipperSetA_1, LevelChunk_ZipperSetA_2, LevelChunk_ZipperSetA_3, LevelChunk_ZipperSetA_4, LevelChunk_ZipperSetA_5, LevelChunk_ZipperSetA_6, LevelChunk_ZipperSetA_7, LevelChunk_ZipperSetA_8, LevelChunk_ZipperSetA_10, LevelChunk_ZipperSetA_9, LevelChunk_ZipperSetA_9, LevelChunk_ZipperSetA_10, LevelChunk_Empty, LevelChunk_ZipperSetA_9, LevelChunk_Empty, LevelChunk_ZipperSetA_9, LevelChunk_Empty]); addTiles([_local20]); addTiles([LevelChunk_Roof_1, LevelChunk_Empty, LevelChunk_Roof_2, LevelChunk_Empty, LevelChunk_Roof_3, LevelChunk_Roof_4]); addTiles([_local8]); addTiles([LevelChunk_Empty]); addTiles([_local9]); addTiles([LevelChunk_Empty, LevelChunk_Empty, LevelChunk_Empty]); addTiles([LevelChunk_Empty, LevelChunk_Empty, LevelChunk_Empty]); addTiles([LevelChunk_Empty, LevelChunk_Empty, LevelChunk_Empty]); addTiles([_local12]); addTiles([LevelChunk_Empty]); addTiles([_local16]); addTiles([LevelChunk_Empty]); addTiles([_local13]); addTiles([LevelChunk_Empty]); addTiles([_local14]); addTiles([LevelChunk_Empty]); addTiles([_local15]); addTiles([LevelChunk_Empty]); addTiles([_local17]); addTiles([LevelChunk_Empty]); addTiles([_local18]); addTiles([LevelChunk_Empty]); addTiles([_local10]); addTiles([LevelChunk_FinalZipper]); addTiles([_local11]); addTiles([LevelChunk_Empty]); addTiles([LevelChunk_Empty, LevelChunk_Empty, LevelChunk_Empty, LevelChunk_Empty]); GlobalEvents.instance.addEventListener(Trigger.ANIMATION, handleAnimationTrigger); GlobalEvents.instance.addEventListener(Trigger.GAME_ANIMATION, handleGameAnimationTrigger); GlobalEvents.instance.addEventListener(Trigger.ENTER_BOSS, handleGameAnimationTrigger); GlobalEvents.instance.addEventListener(Trigger.MUSIC_CHANGE, handleMusicChangeTrigger); } public function destroy():void{ GlobalEvents.instance.removeEventListener(Trigger.ANIMATION, handleAnimationTrigger); GlobalEvents.instance.removeEventListener(Trigger.GAME_ANIMATION, handleGameAnimationTrigger); GlobalEvents.instance.removeEventListener(Trigger.MUSIC_CHANGE, handleMusicChangeTrigger); animationPlane.destroy(); } public function update(_arg1:Number){ if (!_runningGameAnimation){ scrollingPlane.update(_arg1); }; } private function handleMusicChangeTrigger(_arg1:CustomEvent):void{ trace("handleMusicChangeTrigger"); var _local2:Class = (_arg1.data as Class); SoundController.instance.playMusicLoop(_local2, 1, true); } private function handleGameComplete(_arg1:Event):void{ scrollingPlane.tileGraphicClassList = [LevelChunk_Empty]; } private function handleScrollPlaneChange(_arg1:Event):void{ var _local2:Trigger; var _local3:CustomEvent; if (_triggerTimes[0] == scrollingPlane.itteratorIndex){ _triggerTimes.shift(); _local2 = _triggers.shift(); _local3 = new CustomEvent(_local2.type, _local2.data); GlobalEvents.instance.broadcastEvent(_local3); }; } private function handleAnimationTrigger(_arg1:CustomEvent):void{ var _local2:Class = (_arg1.data as Class); addAnimation(new (_local2)); } public function addAnimation(_arg1:MovieClip):void{ animationPlane.addAnimationClip(_arg1); } private function addTiles(_arg1:Array):void{ var _local2:Class; var _local3:Trigger; var _local4:int; while (_local4 < _arg1.length) { _local3 = (_arg1[_local4] as Trigger); if (_local3 != null){ _triggers.push(_local3); _triggerTimes.push(scrollingPlane.tileGraphicClassList.length); } else { _local2 = (_arg1[_local4] as Class); if (_local2){ scrollingPlane.tileGraphicClassList.push(_local2); }; }; _local4++; }; } private function handleGameAnimationTrigger(_arg1:CustomEvent):void{ var _local2:Class; trace(("1 == handleGameAnimationTrigger" + _local2)); _local2 = (_arg1.data as Class); var _local3:MovieClip = new (_local2); _runningGameAnimation = true; _local3.addEventListener("scrollResume", handleGameAnimationScrollResume); addAnimation(_local3); } private function handleGameAnimationScrollResume(_arg1:Event):void{ _arg1.target.removeEventListener("scrollResume", handleGameAnimationScrollResume); _runningGameAnimation = false; } public function startGame():void{ _running = true; } private function handleBossCompelte(_arg1:Event):void{ trace("handleBossCompelte"); } } }//package
Section 126
//GlobalEvents (GlobalEvents) package { import flash.events.*; import as3lib.*; public class GlobalEvents extends EventDispatcher { private static var _instance:GlobalEvents = null; public function broadcastEvent(_arg1:CustomEvent):void{ dispatchEvent(_arg1); } public static function resetSingleton():void{ _instance = new (GlobalEvents); } public static function get instance():GlobalEvents{ if (_instance == null){ _instance = new (GlobalEvents); }; return (_instance); } } }//package
Section 127
//GoalAnim (GoalAnim) package { import flash.events.*; import flash.display.*; import as3lib.*; public dynamic class GoalAnim extends MovieClip { public function GoalAnim(){ addFrameScript(43, frame44); } function frame44(){ stop(); dispatchEvent(new Event(Event.COMPLETE)); GlobalEvents.instance.broadcastEvent(new CustomEvent("go")); } } }//package
Section 128
//HeadTracker (HeadTracker) package { import flash.display.*; public dynamic class HeadTracker extends MovieClip { } }//package
Section 129
//Hud (Hud) package { import flash.display.*; public dynamic class Hud extends MovieClip { public var scoreBoard:MovieClip; public var pauseButton:SimpleButton; public var timeBoard:TimeBoard; } }//package
Section 130
//IAvoidable (IAvoidable) package { import flash.events.*; public interface IAvoidable extends IEventDispatcher { function hasCollided():Boolean; function puff():void; function getGlobalY():Number; function update():void; function collide():void; function getGlobalX():Number; } }//package
Section 131
//ICollectable (ICollectable) package { import flash.events.*; public interface ICollectable extends IEventDispatcher { function getGlobalY():Number; function hasCollected():Boolean; function collect():void; function getValue():int; function getGlobalX():Number; } }//package
Section 132
//InstructionsAnim (InstructionsAnim) package { import flash.events.*; import flash.display.*; public dynamic class InstructionsAnim extends MovieClip { public function InstructionsAnim(){ addFrameScript(133, frame134); } function frame134(){ dispatchEvent(new Event(Event.COMPLETE)); } } }//package
Section 133
//InterfaceSound1 (InterfaceSound1) package { import flash.media.*; public dynamic class InterfaceSound1 extends Sound { } }//package
Section 134
//InterfaceSound3 (InterfaceSound3) package { import flash.media.*; public dynamic class InterfaceSound3 extends Sound { } }//package
Section 135
//ITriggerable (ITriggerable) package { import flash.events.*; public interface ITriggerable extends IEventDispatcher { function trigger():void; function hasTriggered():Boolean; function getGlobalX():Number; } }//package
Section 136
//JumpFishAnim_1 (JumpFishAnim_1) package { import flash.events.*; import flash.display.*; public dynamic class JumpFishAnim_1 extends MovieClip { public var holder1:MovieClip; public function JumpFishAnim_1(){ addFrameScript(63, frame64, 101, frame102); } function frame64(){ dispatchEvent(new Event("scrollResume")); } function frame102(){ stop(); dispatchEvent(new Event(Event.COMPLETE)); } } }//package
Section 137
//JumpFishAnim_1_5 (JumpFishAnim_1_5) package { import flash.events.*; import flash.display.*; public dynamic class JumpFishAnim_1_5 extends MovieClip { public var holder2:MovieClip; public function JumpFishAnim_1_5(){ addFrameScript(7, frame8, 183, frame184, 200, frame201); } function frame184(){ dispatchEvent(new Event("scrollResume")); } function frame201(){ stop(); dispatchEvent(new Event(Event.COMPLETE)); } function frame8(){ SoundController.instance.playMusicLoop(SoundController.STAGE3_B, 1, true); } } }//package
Section 138
//JumpFishAnim_2 (JumpFishAnim_2) package { import flash.events.*; import flash.display.*; public dynamic class JumpFishAnim_2 extends MovieClip { public var holder2:MovieClip; public function JumpFishAnim_2(){ addFrameScript(151, frame152, 179, frame180); } function frame152(){ dispatchEvent(new Event("scrollResume")); } function frame180(){ stop(); dispatchEvent(new Event(Event.COMPLETE)); } } }//package
Section 139
//JumpFishAnim_3 (JumpFishAnim_3) package { import flash.events.*; import flash.display.*; public dynamic class JumpFishAnim_3 extends MovieClip { public var holder2:MovieClip; public function JumpFishAnim_3(){ addFrameScript(128, frame129, 153, frame154); } function frame154(){ stop(); dispatchEvent(new Event(Event.COMPLETE)); } function frame129(){ dispatchEvent(new Event("scrollResume")); } } }//package
Section 140
//JumpFishAnim_4 (JumpFishAnim_4) package { import flash.events.*; import flash.display.*; public dynamic class JumpFishAnim_4 extends MovieClip { public var holder2:MovieClip; public function JumpFishAnim_4(){ addFrameScript(174, frame175, 199, frame200); } function frame175(){ dispatchEvent(new Event("scrollResume")); } function frame200(){ stop(); dispatchEvent(new Event(Event.COMPLETE)); } } }//package
Section 141
//LevelChunk_BombIntro_1 (LevelChunk_BombIntro_1) package { import flash.display.*; public dynamic class LevelChunk_BombIntro_1 extends MovieClip { } }//package
Section 142
//LevelChunk_DeadEnd_1 (LevelChunk_DeadEnd_1) package { import flash.display.*; public dynamic class LevelChunk_DeadEnd_1 extends MovieClip { } }//package
Section 143
//LevelChunk_DeadEnd_2 (LevelChunk_DeadEnd_2) package { import flash.display.*; public dynamic class LevelChunk_DeadEnd_2 extends MovieClip { } }//package
Section 144
//LevelChunk_DeadEnd_3 (LevelChunk_DeadEnd_3) package { import flash.display.*; public dynamic class LevelChunk_DeadEnd_3 extends MovieClip { } }//package
Section 145
//LevelChunk_DeadEnd_4 (LevelChunk_DeadEnd_4) package { import flash.display.*; public dynamic class LevelChunk_DeadEnd_4 extends MovieClip { } }//package
Section 146
//LevelChunk_Empty (LevelChunk_Empty) package { import flash.display.*; public dynamic class LevelChunk_Empty extends MovieClip { } }//package
Section 147
//LevelChunk_FinalZipper (LevelChunk_FinalZipper) package { import flash.display.*; public dynamic class LevelChunk_FinalZipper extends MovieClip { } }//package
Section 148
//LevelChunk_FishIntro1 (LevelChunk_FishIntro1) package { import flash.display.*; public dynamic class LevelChunk_FishIntro1 extends MovieClip { } }//package
Section 149
//LevelChunk_FishIntro2 (LevelChunk_FishIntro2) package { import flash.display.*; public dynamic class LevelChunk_FishIntro2 extends MovieClip { } }//package
Section 150
//LevelChunk_FishIntro3 (LevelChunk_FishIntro3) package { import flash.display.*; public dynamic class LevelChunk_FishIntro3 extends MovieClip { } }//package
Section 151
//LevelChunk_Gates_1 (LevelChunk_Gates_1) package { import flash.display.*; public dynamic class LevelChunk_Gates_1 extends MovieClip { } }//package
Section 152
//LevelChunk_Gates_2 (LevelChunk_Gates_2) package { import flash.display.*; public dynamic class LevelChunk_Gates_2 extends MovieClip { } }//package
Section 153
//LevelChunk_Gates_3 (LevelChunk_Gates_3) package { import flash.display.*; public dynamic class LevelChunk_Gates_3 extends MovieClip { } }//package
Section 154
//LevelChunk_Gates_4 (LevelChunk_Gates_4) package { import flash.display.*; public dynamic class LevelChunk_Gates_4 extends MovieClip { } }//package
Section 155
//LevelChunk_Gates_5 (LevelChunk_Gates_5) package { import flash.display.*; public dynamic class LevelChunk_Gates_5 extends MovieClip { } }//package
Section 156
//LevelChunk_Roof_1 (LevelChunk_Roof_1) package { import flash.display.*; public dynamic class LevelChunk_Roof_1 extends MovieClip { } }//package
Section 157
//LevelChunk_Roof_2 (LevelChunk_Roof_2) package { import flash.display.*; public dynamic class LevelChunk_Roof_2 extends MovieClip { } }//package
Section 158
//LevelChunk_Roof_3 (LevelChunk_Roof_3) package { import flash.display.*; public dynamic class LevelChunk_Roof_3 extends MovieClip { } }//package
Section 159
//LevelChunk_Roof_4 (LevelChunk_Roof_4) package { import flash.display.*; public dynamic class LevelChunk_Roof_4 extends MovieClip { } }//package
Section 160
//LevelChunk_SineA_1 (LevelChunk_SineA_1) package { import flash.display.*; public dynamic class LevelChunk_SineA_1 extends MovieClip { } }//package
Section 161
//LevelChunk_SineA_2 (LevelChunk_SineA_2) package { import flash.display.*; public dynamic class LevelChunk_SineA_2 extends MovieClip { } }//package
Section 162
//LevelChunk_SineA_3 (LevelChunk_SineA_3) package { import flash.display.*; public dynamic class LevelChunk_SineA_3 extends MovieClip { } }//package
Section 163
//LevelChunk_SineB_1 (LevelChunk_SineB_1) package { import flash.display.*; public dynamic class LevelChunk_SineB_1 extends MovieClip { } }//package
Section 164
//LevelChunk_SineB_2 (LevelChunk_SineB_2) package { import flash.display.*; public dynamic class LevelChunk_SineB_2 extends MovieClip { } }//package
Section 165
//LevelChunk_SineB_3 (LevelChunk_SineB_3) package { import flash.display.*; public dynamic class LevelChunk_SineB_3 extends MovieClip { } }//package
Section 166
//LevelChunk_SlalemA_1 (LevelChunk_SlalemA_1) package { import flash.display.*; public dynamic class LevelChunk_SlalemA_1 extends MovieClip { } }//package
Section 167
//LevelChunk_SlalemA_2 (LevelChunk_SlalemA_2) package { import flash.display.*; public dynamic class LevelChunk_SlalemA_2 extends MovieClip { } }//package
Section 168
//LevelChunk_SlalemA_3 (LevelChunk_SlalemA_3) package { import flash.display.*; public dynamic class LevelChunk_SlalemA_3 extends MovieClip { } }//package
Section 169
//LevelChunk_Stage1Fin_1 (LevelChunk_Stage1Fin_1) package { import flash.display.*; public dynamic class LevelChunk_Stage1Fin_1 extends MovieClip { } }//package
Section 170
//LevelChunk_Stage1Fin_2 (LevelChunk_Stage1Fin_2) package { import flash.display.*; public dynamic class LevelChunk_Stage1Fin_2 extends MovieClip { } }//package
Section 171
//LevelChunk_TEST_bombs (LevelChunk_TEST_bombs) package { import flash.display.*; public dynamic class LevelChunk_TEST_bombs extends MovieClip { } }//package
Section 172
//LevelChunk_TEST_fish (LevelChunk_TEST_fish) package { import flash.display.*; public dynamic class LevelChunk_TEST_fish extends MovieClip { } }//package
Section 173
//LevelChunk_ZipperIntroA_0 (LevelChunk_ZipperIntroA_0) package { import flash.display.*; public dynamic class LevelChunk_ZipperIntroA_0 extends MovieClip { } }//package
Section 174
//LevelChunk_ZipperIntroA_1 (LevelChunk_ZipperIntroA_1) package { import flash.display.*; public dynamic class LevelChunk_ZipperIntroA_1 extends MovieClip { } }//package
Section 175
//LevelChunk_ZipperIntroA_2 (LevelChunk_ZipperIntroA_2) package { import flash.display.*; public dynamic class LevelChunk_ZipperIntroA_2 extends MovieClip { } }//package
Section 176
//LevelChunk_ZipperIntroA_3 (LevelChunk_ZipperIntroA_3) package { import flash.display.*; public dynamic class LevelChunk_ZipperIntroA_3 extends MovieClip { } }//package
Section 177
//LevelChunk_ZipperIntroA_4 (LevelChunk_ZipperIntroA_4) package { import flash.display.*; public dynamic class LevelChunk_ZipperIntroA_4 extends MovieClip { } }//package
Section 178
//LevelChunk_ZipperIntroA_5 (LevelChunk_ZipperIntroA_5) package { import flash.display.*; public dynamic class LevelChunk_ZipperIntroA_5 extends MovieClip { } }//package
Section 179
//LevelChunk_ZipperIntroA_6 (LevelChunk_ZipperIntroA_6) package { import flash.display.*; public dynamic class LevelChunk_ZipperIntroA_6 extends MovieClip { } }//package
Section 180
//LevelChunk_ZipperIntroB_1 (LevelChunk_ZipperIntroB_1) package { import flash.display.*; public dynamic class LevelChunk_ZipperIntroB_1 extends MovieClip { public var holder1:MovieClip; } }//package
Section 181
//LevelChunk_ZipperIntroB_2 (LevelChunk_ZipperIntroB_2) package { import flash.display.*; public dynamic class LevelChunk_ZipperIntroB_2 extends MovieClip { public var holder1:MovieClip; } }//package
Section 182
//LevelChunk_ZipperIntroB_3 (LevelChunk_ZipperIntroB_3) package { import flash.display.*; public dynamic class LevelChunk_ZipperIntroB_3 extends MovieClip { public var holder1:MovieClip; } }//package
Section 183
//LevelChunk_ZipperIntroB_4 (LevelChunk_ZipperIntroB_4) package { import flash.display.*; public dynamic class LevelChunk_ZipperIntroB_4 extends MovieClip { } }//package
Section 184
//LevelChunk_ZipperIntroB_5 (LevelChunk_ZipperIntroB_5) package { import flash.display.*; public dynamic class LevelChunk_ZipperIntroB_5 extends MovieClip { } }//package
Section 185
//LevelChunk_ZipperIntroB_6 (LevelChunk_ZipperIntroB_6) package { import flash.display.*; public dynamic class LevelChunk_ZipperIntroB_6 extends MovieClip { } }//package
Section 186
//LevelChunk_ZipperIntroB_7 (LevelChunk_ZipperIntroB_7) package { import flash.display.*; public dynamic class LevelChunk_ZipperIntroB_7 extends MovieClip { } }//package
Section 187
//LevelChunk_ZipperIntroB_8 (LevelChunk_ZipperIntroB_8) package { import flash.display.*; public dynamic class LevelChunk_ZipperIntroB_8 extends MovieClip { } }//package
Section 188
//LevelChunk_ZipperJumpingFish (LevelChunk_ZipperJumpingFish) package { import flash.display.*; public dynamic class LevelChunk_ZipperJumpingFish extends MovieClip { } }//package
Section 189
//LevelChunk_ZipperSetA_1 (LevelChunk_ZipperSetA_1) package { import flash.display.*; public dynamic class LevelChunk_ZipperSetA_1 extends MovieClip { } }//package
Section 190
//LevelChunk_ZipperSetA_10 (LevelChunk_ZipperSetA_10) package { import flash.display.*; public dynamic class LevelChunk_ZipperSetA_10 extends MovieClip { } }//package
Section 191
//LevelChunk_ZipperSetA_2 (LevelChunk_ZipperSetA_2) package { import flash.display.*; public dynamic class LevelChunk_ZipperSetA_2 extends MovieClip { } }//package
Section 192
//LevelChunk_ZipperSetA_3 (LevelChunk_ZipperSetA_3) package { import flash.display.*; public dynamic class LevelChunk_ZipperSetA_3 extends MovieClip { } }//package
Section 193
//LevelChunk_ZipperSetA_4 (LevelChunk_ZipperSetA_4) package { import flash.display.*; public dynamic class LevelChunk_ZipperSetA_4 extends MovieClip { } }//package
Section 194
//LevelChunk_ZipperSetA_5 (LevelChunk_ZipperSetA_5) package { import flash.display.*; public dynamic class LevelChunk_ZipperSetA_5 extends MovieClip { } }//package
Section 195
//LevelChunk_ZipperSetA_6 (LevelChunk_ZipperSetA_6) package { import flash.display.*; public dynamic class LevelChunk_ZipperSetA_6 extends MovieClip { } }//package
Section 196
//LevelChunk_ZipperSetA_7 (LevelChunk_ZipperSetA_7) package { import flash.display.*; public dynamic class LevelChunk_ZipperSetA_7 extends MovieClip { } }//package
Section 197
//LevelChunk_ZipperSetA_8 (LevelChunk_ZipperSetA_8) package { import flash.display.*; public dynamic class LevelChunk_ZipperSetA_8 extends MovieClip { } }//package
Section 198
//LevelChunk_ZipperSetA_9 (LevelChunk_ZipperSetA_9) package { import flash.display.*; public dynamic class LevelChunk_ZipperSetA_9 extends MovieClip { } }//package
Section 199
//LinePlane (LinePlane) package { import flash.display.*; public class LinePlane extends Sprite { private var _chunks:Array; private var _contentMask:Sprite; private var _maskHeight:Number; private var _drawing:Boolean;// = false private var _thicknessNow:Number;// = 1 private var _thicknessTarget:Number; private var _scrollSpeedMultipyler:Number; private var _chunkWidth:Number; private var _content:Sprite; private var _maskWidth:Number; private var _testChunk:LinePlaneChunk; private static const THICK_EASE:Number = 0.1; private static const CREATE_BUFFER:Number = 100; private static const TILE_WIDTH:Number = 500; private static const DESTROY_BUFFER:Number = 200; private static const DRAW_MIN_SPEED:Number = 15; public function LinePlane(_arg1:Number, _arg2:Number, _arg3:Number){ _maskWidth = _arg1; _maskHeight = _arg2; _scrollSpeedMultipyler = _arg3; _chunkWidth = TILE_WIDTH; _content = new Sprite(); this.addChild(_content); _chunks = new Array(); _thicknessTarget = Settings.STREAM_THICKNESS; } private function createMask():Sprite{ var _local1:Sprite = new Sprite(); _local1.graphics.beginFill(0xFF00, 1); _local1.graphics.drawRect(0, 0, _maskWidth, _maskHeight); _local1.graphics.endFill(); return (_local1); } public function update(_arg1:Number, _arg2, _arg3){ var _local5:LinePlaneChunk; var _local7:*; var _local4:Number = ((_chunks.length)>0) ? _chunks[0].x : 0; if ((_local4 + (_chunks.length * _chunkWidth)) < (_maskWidth + CREATE_BUFFER)){ addChunk(_arg2, _arg3); }; if (((_drawing) && ((_arg1 < DRAW_MIN_SPEED)))){ _drawing = false; } else { if (_arg1 >= DRAW_MIN_SPEED){ if (!_drawing){ _thicknessTarget = Settings.STREAM_THICKNESS; _thicknessNow = 1; _drawing = true; }; _local7 = (_thicknessTarget - _thicknessNow); _thicknessNow = (_thicknessNow + (_local7 * THICK_EASE)); }; }; var _local6:int; while (_local6 < _chunks.length) { _local5 = (_chunks[_local6] as LinePlaneChunk); _local5.x = Math.floor((_local5.x + (-(_arg1) * _scrollSpeedMultipyler))); _local5.update((_arg2 - _local5.x), _arg3, _arg1, _thicknessNow, _drawing); _local6++; }; if (_chunks.length > 0){ _local5 = (_chunks[0] as LinePlaneChunk); if (_local5.x < -((_chunkWidth + DESTROY_BUFFER))){ _chunks.shift(); _content.removeChild(_local5); }; }; } private function addChunk(_arg1:Number, _arg2:Number):LinePlaneChunk{ var _local5:LinePlaneChunk; var _local3:Number = 0; if (_chunks.length > 0){ _local5 = _chunks[(_chunks.length - 1)]; _local3 = Math.floor((_local5.x + _chunkWidth)); }; var _local4:LinePlaneChunk = new LinePlaneChunk(TILE_WIDTH, 427, (_arg1 - _local3), _arg2); _local4.x = _local3; _chunks.push(_local4); _content.addChild(_local4); return (_local4); } public function get content():Sprite{ return (_content); } } }//package
Section 200
//LinePlaneChunk (LinePlaneChunk) package { import flash.display.*; import flash.filters.*; import gs.*; import flash.geom.*; public class LinePlaneChunk extends MovieClip { private var _drawing:Boolean;// = true private var _display:Sprite; private var _origin:Point; private var _blur:BlurFilter; private var _boardHeight:Number; private var _oldX:Number;// = 0 private var _oldY:Number;// = 0 private var _bitmap:Bitmap; private var _myShape:Shape; private var _bitmapData:BitmapData; private var _boardWidth:Number; public function LinePlaneChunk(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number){ _display = new Sprite(); _myShape = new Shape(); _display.addChild(_myShape); _boardWidth = _arg1; _boardHeight = _arg2; _origin = new Point(0, 0); _oldX = _arg3; _oldY = _arg4; _bitmapData = new BitmapData(_boardWidth, _boardHeight, true, 0); _bitmap = new Bitmap(_bitmapData); this.addChild(_bitmap); _bitmap.alpha = Settings.STREAM_ALPHA; } public function update(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Boolean=true):void{ var _local6:uint; var _local7:Number; if (((!(_drawing)) && (_arg5))){ _oldX = _arg1; _oldY = _arg2; _bitmapData.fillRect(_bitmapData.rect, 0); _bitmap.alpha = Settings.STREAM_ALPHA; }; if (((_drawing) && (!(_arg5)))){ _myShape.graphics.clear(); TweenLite.to(_bitmap, 0.5, {alpha:0}); }; _drawing = _arg5; if (_drawing){ _local6 = Math.floor(0xFFFFFF); _local7 = 1; _myShape.graphics.moveTo(_oldX, _oldY); _myShape.graphics.lineStyle(_arg4, _local6, _local7); _myShape.graphics.lineTo(_arg1, _arg2); _oldX = _arg1; _oldY = _arg2; _bitmapData.draw(_display); _myShape.graphics.clear(); }; } } }//package
Section 201
//PauseMenu (PauseMenu) package { import flash.events.*; import flash.display.*; public class PauseMenu extends MovieClip { public var restartButton:SimpleButton; public var resumeButton:SimpleButton; public function PauseMenu(){ this.resumeButton.addEventListener(MouseEvent.CLICK, handleResumeClick); this.restartButton.addEventListener(MouseEvent.CLICK, handleRestartClick); } private function handleRestartClick(_arg1:MouseEvent):void{ dispatchEvent(new Event("restart")); } private function handleResumeClick(_arg1:MouseEvent):void{ dispatchEvent(new Event("resume")); } } }//package
Section 202
//PenguApp (PenguApp) package { import flash.events.*; import flash.display.*; import gs.*; import as3lib.utils.*; public class PenguApp extends MovieClip { public var faderHolder:MovieClip; private var _faderHolder:MovieClip; private var _resultsHolder:MovieClip; private var _penguGame:PenguGame; private var _gameHolder:MovieClip; public var titleHolder:MovieClip; private var _titleHolder:MovieClip; private var _bg:TitleBg; private var _titleScreen:TitleScreen; public var gameHolder:MovieClip; public function PenguApp(){ var keyStr:String; var valueStr:String; var paramObj:Object; super(); addFrameScript(1, frame2, 11, frame12); SoundController.instance.playMusicLoop(SoundController.TITLE_LOOP); try { paramObj = LoaderInfo(this.root.loaderInfo).parameters; if (paramObj.fb_local_connection){ Settings.connectionName = String(paramObj.fb_local_connection); Settings.facebookMode = true; } else { Settings.facebookMode = false; }; if (paramObj.bareBones){ Settings.bareBones = true; } else { Settings.bareBones = false; }; if (paramObj.personalBest){ Settings.personalBest = Number(paramObj.personalBest); }; if (paramObj.siteUrl){ Settings.siteUrl = String(paramObj.siteUrl); }; } catch(error:Error) { trace(("ERRROR " + error)); }; if (Settings.personalBest > 0){ Settings.firstRun = false; }; init(); } private function handleHitZipper(_arg1:GameEvent):void{ this.gotoAndPlay("shake"); } private function handleTitleChallenge(_arg1:Event):void{ } private function handleFacebook(_arg1:Event):void{ Settings.firstRun = false; restartApp(); } private function init():void{ stage.scaleMode = StageScaleMode.NO_SCALE; _titleHolder = this.titleHolder; _gameHolder = this.gameHolder; _faderHolder = this.faderHolder; DisplayTools.removeAllChildrenFrom(_titleHolder); DisplayTools.removeAllChildrenFrom(_gameHolder); DisplayTools.removeAllChildrenFrom(_faderHolder); Tracking.instance.initialise(this); if (Settings.facebookMode == true){ Tracking.instance.trackPageView("jetstream/facebook"); } else { Tracking.instance.trackPageView("jetstream/external"); }; restartApp(); } private function handleGameComplete(_arg1:GameEvent):void{ var _local2:Number = (_arg1.data as Number); showResultScreen(_local2); } private function showResultScreen(_arg1:Number):void{ DisplayTools.removeAllChildrenFrom(_titleHolder); var _local2:* = new ResultScreen(_arg1); _local2.addEventListener("skip", handleSkipFacebook); _local2.addEventListener("facebook", handleFacebook); _local2.y = -450; TweenLite.to(_local2, 1.5, {y:0}); _titleHolder.addChild(_local2); TweenLite.delayedCall(2, udpateServerScore, [_arg1]); } private function showGame():void{ if (_penguGame){ _penguGame.removeEventListener(Event.COMPLETE, handleGameComplete); _penguGame.removeEventListener("restart", handleGameRestart); _penguGame.destroy(); }; GlobalEvents.resetSingleton(); ElementManager.resetSingleton(); ElementManager.instance.addEventListener(GameEvent.HIT_ZIPPER, handleHitZipper); ElementManager.instance.addEventListener(GameEvent.CANNON_FIRE, handleHitZipper); ElementManager.instance.addEventListener(GameEvent.COLLIDE_BOMB, handleCollideBomb); DisplayTools.removeAllChildrenFrom(_gameHolder); _penguGame = new PenguGame(); _penguGame.addEventListener(Event.COMPLETE, handleGameComplete); _penguGame.addEventListener("restart", handleGameRestart); _gameHolder.addChild(_penguGame); _penguGame.initialise(); } private function restartApp():void{ showGame(); showTitleScreen(); } private function udpateServerScore(_arg1:Number):void{ } function frame12(){ gotoAndStop(1); } private function showTitleScreen():void{ var fader:MovieClip; var handleFadeInComplete:Function; handleFadeInComplete = function ():void{ if (_faderHolder.contains(fader)){ _faderHolder.removeChild(fader); }; }; DisplayTools.removeAllChildrenFrom(_titleHolder); if (_titleScreen){ _titleScreen.destroy(); _titleScreen.removeEventListener("play", handleTitlePlayGame); _titleScreen.removeEventListener("challenge", handleTitleChallenge); }; _titleScreen = new TitleScreen(); _titleScreen.addEventListener("play", handleTitlePlayGame); _titleScreen.addEventListener("challenge", handleTitleChallenge); fader = new WhiteFader(); fader.mouseEnabled = false; fader.mouseChildren = false; TweenLite.to(fader, 2, {alpha:0, onComplete:handleFadeInComplete}); var self:* = this; _titleScreen.alpha = 1; _titleScreen.y = 0; _titleHolder.addChild(_titleScreen); } private function handleTitleExitCompletet1(_arg1:Event):void{ _titleScreen.removeEventListener("exitComplete1", handleTitleExitCompletet1); _penguGame.start(); ElementManager.instance.cannon.action(); stage.focus = stage; } private function handleSkipFacebook(_arg1:Event):void{ Settings.firstRun = false; restartApp(); } private function handleGameRestart(_arg1:Event):void{ Settings.firstRun = false; showGame(); _penguGame.start(); ElementManager.instance.cannon.action(); } private function handleTitlePlayGame(_arg1:Event):void{ SoundController.instance.fadeOutMusic(); _titleScreen.exit(); _titleScreen.addEventListener("exitComplete1", handleTitleExitCompletet1); _titleScreen.addEventListener("exitComplete2", handleTitleExitCompletet2); } private function handleCollideBomb(_arg1:GameEvent):void{ this.gotoAndPlay("overshoot"); } function frame2(){ stop(); } private function handleTitleExitCompletet2(_arg1:Event):void{ _titleScreen.removeEventListener("exitComplete2", handleTitleExitCompletet2); DisplayTools.removeAllChildrenFrom(_titleHolder); } } }//package
Section 203
//PenguGame (PenguGame) package { import flash.events.*; import flash.display.*; import flash.filters.*; import gs.*; import flash.geom.*; import as3lib.*; import as3lib.utils.*; import flash.ui.*; public class PenguGame extends MovieClip { private var _player:Player; private var _gamePlane:GamePlane; private var _screenXLimit:Number;// = 350 private var _headPoint:Point; private var _score:int;// = 0 private var _keyYSpeed:Number;// = 0 private var _menuHolder:Sprite; private var _timeBoard:TimeBoard; private var _crosshair:Sprite; private var _torsoTracker:MovieClip; private var _bgManager:BackgroundManager; private var _scoreBoard:ScoreBoard; private var _playerLayer:Sprite; private var _hud:MovieClip; private var _playerBodyPoints:Array; private var _gameState:String; private var _gameOver:Boolean; private var _linePlaneBack:LinePlane; private var _slipStreamBitmapData1:BitmapData; private var _blurFilter:BlurFilter; private var _slipStreamLayer1:Sprite; private var _linePlaneFront:LinePlane; private var _slipStreamBitmap1:Bitmap; private var _keyXSpeed:Number;// = 0 private var _headTracker:MovieClip; private var _torsoPoint:Point; private var _keyPoll:KeyPoll; private static const PREPARING:String = "preparing"; private static const PAUSED:String = "paused"; private static const KEY_ACCEL:Number = 1; private static const FINISHED:String = "finished"; private static const PLAYING:String = "playing"; private function handleNewLevel(_arg1:CustomEvent):void{ var _local2:Number = (_arg1.data.level as Number); var _local3:String = (_arg1.data.transitionPart as String); switch (_local2){ case 2: switch (_local3){ case "a": _bgManager.transitionToLevel2a(); break; case "b": _bgManager.transitionToLevel2b(); break; case "c": _bgManager.transitionToLevel2c(); break; case "d": _bgManager.transitionToLevel2d(); break; }; break; case 3: switch (_local3){ case "a": _bgManager.transitionToLevel3a(); break; case "b": _bgManager.transitionToLevel3b(); break; case "c": _bgManager.transitionToLevel3c(); break; case "d": _bgManager.transitionToLevel3d(); break; }; break; case 4: switch (_local3){ case "a": _bgManager.transitionToLevel4a(); break; case "b": _bgManager.transitionToLevel4b(); break; case "c": _bgManager.transitionToLevel4c(); break; case "d": _bgManager.transitionToLevel4d(); break; case "e": _bgManager.transitionToLevel4e(); break; }; break; }; } public function start2():void{ _player.shootOut(); _gameState = PLAYING; _player.visible = true; } private function handleCannonFire(_arg1:GameEvent):void{ start2(); } private function handleEnterBoss(_arg1:CustomEvent):void{ _screenXLimit = Settings.SCREEN_X_LIMIT_2; } private function handleHitZipper(_arg1:GameEvent):void{ var _local2:Zipper = (_arg1.data as Zipper); _score = (_score + Settings.ZIPPER_VALUE); _scoreBoard.setScore(_score, true, true); _player.hitZipper(_local2); } private function showPauseMenu():void{ if (_gameState != PLAYING){ return; }; var _local1:PauseMenu = new PauseMenu(); _local1.addEventListener("resume", handleMenuResume); _local1.addEventListener("restart", handleMenuRestart); _menuHolder.addChild(_local1); _gameState = PAUSED; GlobalEvents.instance.broadcastEvent(new CustomEvent(GameEvent.PAUSE)); } private function handleEndGame3():void{ dispatchEvent(new GameEvent(Event.COMPLETE, _score)); } private function handleCollectCoin(_arg1:GameEvent):void{ var _local2:ICollectable = (_arg1.data as ICollectable); _score = (_score + _local2.getValue()); _scoreBoard.setScore(_score); _player.collectCoin(); } public function initialise():void{ var _local1:Sprite = new Sprite(); var _local2:Sprite = new Sprite(); var _local3:Sprite = new Sprite(); var _local4:Sprite = new Sprite(); var _local5:Sprite = new Sprite(); var _local6:Sprite = new Sprite(); var _local7:Sprite = new Sprite(); var _local8:Sprite = new Sprite(); _bgManager = new BackgroundManager(_local1, _local2, _local3, [_local4, _local5, _local6, _local7], _local8); _gamePlane = new GamePlane(Settings.WIDTH, Settings.HEIGHT); _playerLayer = new Sprite(); _player = new Player(); _player.x = 230; _player.y = 210; _player.visible = false; _playerLayer.addChild(_player); _hud = new Hud(); _hud.alpha = 0; _score = 0; _scoreBoard = new ScoreBoard(_hud.scoreBoard); var _local9:SimpleButton = _hud.pauseButton; _local9.addEventListener(MouseEvent.MOUSE_DOWN, handlePausePress); _timeBoard = _hud.timeBoard; _timeBoard.setTime(Settings.GAME_TIME, 0); _timeBoard.start(); _linePlaneBack = new LinePlane(Settings.WIDTH, Settings.HEIGHT, 1.5); _linePlaneFront = new LinePlane(Settings.WIDTH, Settings.HEIGHT, 1.5); _headPoint = new Point(); _headPoint = new Point(); _torsoPoint = new Point(); _playerBodyPoints = [_headPoint, _headPoint, _torsoPoint]; _crosshair = new Crosshair(); _crosshair.cacheAsBitmap = true; _crosshair.x = 300; _crosshair.y = _player.y; _crosshair.alpha = 0; _menuHolder = new Sprite(); this.addChild(_local8); this.addChild(_local7); this.addChild(_local6); this.addChild(_local5); this.addChild(_local4); this.addChild(_local3); this.addChild(_linePlaneBack); this.addChild(_playerLayer); this.addChild(_linePlaneFront); this.addChild(_local2); this.addChild(_gamePlane.scrollingPlane); this.addChild(_gamePlane.animationPlane); this.addChild(_local1); this.addChild(_hud); this.addChild(_menuHolder); ElementManager.instance.reset(); ElementManager.instance.addEventListener(GameEvent.COLLECT_COIN, handleCollectCoin); ElementManager.instance.addEventListener(GameEvent.COLLIDE_BOMB, handleCollideBomb); ElementManager.instance.addEventListener(GameEvent.HIT_ZIPPER, handleHitZipper); ElementManager.instance.addEventListener(GameEvent.CANNON_FIRE, handleCannonFire); GlobalEvents.instance.addEventListener(Trigger.SPEED_UP, handleSpeedUpTrigger); GlobalEvents.instance.addEventListener(Trigger.NEW_LEVEL, handleNewLevel); GlobalEvents.instance.addEventListener(Trigger.END_GAME, handleEndGame); GlobalEvents.instance.addEventListener(Trigger.ENTER_BOSS, handleEnterBoss); GlobalEvents.instance.addEventListener("go", handleCountdownGo); NumberUtils.initialiseSinCos(); _screenXLimit = Settings.SCREEN_X_LIMIT_1; _bgManager.panUp(false); _keyPoll = new KeyPoll(); _keyPoll.initialise(this.stage); stage.addEventListener(Event.ACTIVATE, handleStageActivate); stage.addEventListener(Event.DEACTIVATE, handleStageDeactivate); stage.addEventListener(MouseEvent.MOUSE_MOVE, handleMouseMove); ElementManager.instance.initialiseBitmaps(); } private function handleMenuResume(_arg1:Event):void{ GlobalEvents.instance.broadcastEvent(new CustomEvent(GameEvent.RESUME)); Tracking.instance.trackEvent(Tracking.CAT_GAME, Tracking.RESUME); DisplayTools.removeAllChildrenFrom(_menuHolder); _gameState = PLAYING; stage.focus = stage; } private function handleEndGame(_arg1:CustomEvent):void{ _gameState = FINISHED; _hud.alpha = 0; _gameOver = true; _player.gameOver(); TweenLite.to(_linePlaneFront, 3, {alpha:0}); TweenLite.to(_linePlaneBack, 4, {alpha:0}); GlobalEvents.instance.broadcastEvent(new CustomEvent(Trigger.ANIMATION, GoalAnim)); _player.xScreenSpeed = (_player.xSpeed * 2); SoundController.instance.playMusicLoop(SoundController.QUICK_BOOM); SoundController.instance.playMusicLoop(SoundController.TITLE_LOOP); TweenLite.delayedCall(2, handleEndGame2); TweenLite.delayedCall(4, handleEndGame3); } private function handleCollideBomb(_arg1:GameEvent):void{ var _local2:IAvoidable = (_arg1.data as IAvoidable); _score = (_score + Settings.BOMB_VALUE); _score = Math.max(0, _score); _scoreBoard.setScore(_score, true, false, true); if (Settings.usingKeys){ _crosshair.x = Math.max((_crosshair.x - 30), 0); }; _player.collideBomb(); } private function handleMouseDown(_arg1:MouseEvent):void{ } private function handleEnterFrame(_arg1:Event):void{ update(); } private function handleStageDeactivate(_arg1:Event):void{ trace("_gameState..."); if (_gameState == PLAYING){ Tracking.instance.trackEvent(Tracking.CAT_GAME, Tracking.FOCUS_OUT); showPauseMenu(); }; } private function handleMouseMove(_arg1:MouseEvent):void{ if (_gameState == PLAYING){ Settings.usingKeys = false; }; } private function handleEndGame2():void{ _bgManager.panUp(true); } private function handleCountdownGo(_arg1:CustomEvent):void{ GlobalEvents.instance.removeEventListener("go", handleCountdownGo); TweenLite.to(_hud, 2, {alpha:1}); } private function handlePausePress(_arg1:MouseEvent):void{ Tracking.instance.trackEvent(Tracking.CAT_GAME, Tracking.PAUSE); showPauseMenu(); } private function handleStageActivate(_arg1:Event):void{ _keyPoll.reset(); } private function update(){ var _local1:Number; var _local4:*; var _local5:*; if ((((_gameState == PREPARING)) || ((_gameState == PAUSED)))){ return; }; updateCrosshair(); if (!_gameOver){ _timeBoard.update(); _local4 = (_crosshair.y - _player.y); _local5 = (_crosshair.x - _player.x); _player.update(_local4, _local5); _player.y = (_player.y + _player.yScreenSpeed); _player.x = (_player.x + _player.xScreenSpeed); _local1 = _player.xScreenSpeed; if (_player.playerState != Player.ZIPPING){ if ((((_player.x > (_screenXLimit - 100))) && ((_local1 > 0)))){ _local1 = (_local1 * ((_screenXLimit - _player.x) / 100)); }; }; _headPoint.x = _player.x; _headPoint.y = _player.y; _torsoPoint.x = (_player.x - (_player.normalisedX * 50)); _torsoPoint.y = (_player.y - (_player.normalisedY * 50)); if (_player.y > Settings.HEIGHT){ _player.y = Settings.HEIGHT; }; if (_player.y < 0){ _player.y = 0; }; if (_player.x > (Settings.WIDTH + 200)){ _player.x = (Settings.WIDTH + 200); }; if (_player.x < 100){ _player.x = 100; }; ElementManager.instance.update(_playerBodyPoints, _player.xSpeed); SoundController.instance.update(); _bgManager.update(_player.xSpeed); } else { _local1 = _player.xScreenSpeed; }; _gamePlane.update(_player.xSpeed); _player.x = (_player.x + _local1); var _local2:Point = _player.getFrontWingOffset(); var _local3:Point = _player.getBackWingOffset(); _linePlaneBack.update(_player.xSpeed, (_player.x + _local3.x), (_player.y + _local3.y)); _linePlaneFront.update(_player.xSpeed, (_player.x + _local2.x), (_player.y + _local2.y)); } private function handleMouseUp(_arg1:MouseEvent):void{ } private function updateCrosshair():void{ if (Settings.usingKeys){ if (((_keyPoll.isDown(Keyboard.LEFT)) || (_keyPoll.isDown(KeyPoll.KEY_A)))){ _keyXSpeed = (_keyXSpeed - Settings.KEY_X_ACCEL); if (_keyXSpeed < -(Settings.KEY_MAX_X_SPEED)){ _keyXSpeed = -(Settings.KEY_MAX_X_SPEED); }; } else { if (((_keyPoll.isDown(Keyboard.RIGHT)) || (_keyPoll.isDown(KeyPoll.KEY_D)))){ _keyXSpeed = (_keyXSpeed + Settings.KEY_X_ACCEL); if (_keyXSpeed > Settings.KEY_MAX_X_SPEED){ _keyXSpeed = Settings.KEY_MAX_X_SPEED; }; } else { if (_crosshair.x > Settings.KEY_DRIFITBACK_THRESH){ if (_keyXSpeed > 0.5){ _keyXSpeed = (_keyXSpeed * Settings.KEY_X_DECEL); } else { _keyXSpeed = Math.max((_keyXSpeed - 0.5), -(Settings.KEY_DRIFITBACK_SPEED)); }; } else { _keyXSpeed = (_keyXSpeed * Settings.KEY_X_DECEL); }; }; }; if (((_keyPoll.isDown(Keyboard.UP)) || (_keyPoll.isDown(KeyPoll.KEY_W)))){ _keyYSpeed = (_keyYSpeed - Settings.KEY_Y_ACCEL); if (_keyYSpeed < -(Settings.KEY_MAX_Y_SPEED)){ _keyYSpeed = -(Settings.KEY_MAX_Y_SPEED); }; } else { if (((_keyPoll.isDown(Keyboard.DOWN)) || (_keyPoll.isDown(KeyPoll.KEY_S)))){ _keyYSpeed = (_keyYSpeed + Settings.KEY_Y_ACCEL); if (_keyYSpeed > Settings.KEY_MAX_Y_SPEED){ _keyYSpeed = Settings.KEY_MAX_Y_SPEED; }; } else { _keyYSpeed = (_keyYSpeed * Settings.KEY_Y_DECEL); }; }; _crosshair.x = (_crosshair.x + _keyXSpeed); _crosshair.y = (_crosshair.y + _keyYSpeed); _crosshair.x = Math.max(_crosshair.x, 0); _crosshair.x = Math.min(_crosshair.x, Settings.WIDTH); _crosshair.y = Math.max(_crosshair.y, 0); _crosshair.y = Math.min(_crosshair.y, Settings.HEIGHT); } else { _crosshair.x = Math.min(Settings.WIDTH, Math.max(this.mouseX, 0)); _crosshair.y = Math.min(Settings.HEIGHT, Math.max(this.mouseY, 0)); if (((((((((((((((_keyPoll.isDown(Keyboard.LEFT)) || (_keyPoll.isDown(KeyPoll.KEY_A)))) || (_keyPoll.isDown(Keyboard.RIGHT)))) || (_keyPoll.isDown(KeyPoll.KEY_D)))) || (_keyPoll.isDown(Keyboard.UP)))) || (_keyPoll.isDown(KeyPoll.KEY_W)))) || (_keyPoll.isDown(Keyboard.DOWN)))) || (_keyPoll.isDown(KeyPoll.KEY_S)))){ Settings.usingKeys = true; _crosshair.alpha = 0; }; }; } public function start():void{ _gameState = PREPARING; this.addEventListener(Event.ENTER_FRAME, handleEnterFrame); this.stage.addEventListener(MouseEvent.MOUSE_DOWN, handleMouseDown); this.stage.addEventListener(MouseEvent.MOUSE_UP, handleMouseUp); _bgManager.panDown(true); } private function handleSpeedUpTrigger(_arg1:CustomEvent):void{ _player.increaseMaxSpeed(); } private function handleMenuRestart(_arg1:Event):void{ Tracking.instance.trackEvent(Tracking.CAT_GAME, Tracking.RESTART); stage.focus = stage; dispatchEvent(new Event("restart")); } public function destroy():void{ this.removeEventListener(Event.ENTER_FRAME, handleEnterFrame); this.stage.removeEventListener(MouseEvent.MOUSE_DOWN, handleMouseDown); this.stage.removeEventListener(MouseEvent.MOUSE_UP, handleMouseUp); ElementManager.instance.reset(); ElementManager.instance.removeEventListener(GameEvent.COLLECT_COIN, handleCollectCoin); ElementManager.instance.removeEventListener(GameEvent.COLLIDE_BOMB, handleCollideBomb); ElementManager.instance.removeEventListener(GameEvent.HIT_ZIPPER, handleHitZipper); ElementManager.instance.removeEventListener(GameEvent.CANNON_FIRE, handleCannonFire); GlobalEvents.instance.removeEventListener(Trigger.SPEED_UP, handleSpeedUpTrigger); GlobalEvents.instance.removeEventListener(Trigger.NEW_LEVEL, handleNewLevel); GlobalEvents.instance.removeEventListener(Trigger.END_GAME, handleEndGame); GlobalEvents.instance.removeEventListener(Trigger.ENTER_BOSS, handleEnterBoss); _gamePlane.destroy(); stage.removeEventListener(Event.ACTIVATE, handleStageActivate); stage.removeEventListener(Event.DEACTIVATE, handleStageDeactivate); stage.removeEventListener(MouseEvent.MOUSE_MOVE, handleMouseMove); } } }//package
Section 204
//Player (Player) package { import flash.events.*; import flash.display.*; import flash.geom.*; import as3lib.*; import as3lib.utils.*; public class Player extends MovieClip { public var yScreenSpeed:Number; private var _targetRot:Number;// = 0 private var _targetBackWingOffset:Point; private var _maxScreenYSpeed:Number;// = 30 private var _minXSpeed:Number;// = 10 public var xScreenSpeed:Number;// = 0 public var normalisedX:Number; public var normalisedY:Number; public var xSpeed:Number; public var playerState:String; private var _contentClip:MovieClip; private var _maxXSpeed:Number; private var _targetFrontWingOffset:Point; private var _frontWingOffset:Point; private var _bankDown:Boolean;// = true private var _backWingOffset:Point; public var contentClip:MovieClip; private var _zipperAnimStreamIndex; private var _directionPoint:Point; private var _targetXScreenSpeed:Number;// = 0 private var _maxXSpeedIndex:int;// = 0 private static const BACK_WING_OFFSETS:Array = [-25, -24, -21, -12, -3, 6, 15, 23, 26]; private static const COLLIDING_FRONT_WING_OFFSETS:Array = [18]; public static const X_SPEED_EASE_ZIPPER:Number = 0.1; private static const ROTATION_EASE:Number = 1; public static const FLYING:String = "flying"; public static const X_SPEED_EASE_NORMAL:Number = 1; public static const COLLIDING:String = "colliding"; private static const COLLIDING_BACK_WING_OFFSETS:Array = [-3]; private static const FRONT_WING_OFFSETS:Array = [35, 28, 24, 20, 18, 1, -10, -23, -29]; public static const POST_ZIPPER:String = "postZipping"; public static const WING_OFFSET_EASE:Number = 0.5; private static const ZIPPING_FRONT_WING_OFFSETS:Array = [19, 19, 19, 19, 19, -20, -24, -18, 1, 30, 34, 27, 18, 5, -20, -24, -18, 1, 30, 34, 34, 34, 34, 33, 30, 30, 29, 28, 27, 26, 25, 24, 23, 23, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19]; public static const ZIPPING:String = "zipping"; private static const ZIPPING_BACK_WING_OFFSETS:Array = [-19, -19, -19, -19, -19, 20, 24, 18, -1, -21, -23, -23, -18, -5, 20, 24, 18, -1, -25, -24, -24, -24, -24, -23, -22, -21, -20, -19, -17, -15, -10, -8, -7, -5, -5, -4, -4, -4, -4, -4, -4, -4, -4, -3, -3, -3]; public static const CANNON:String = "cannon"; public function Player(){ addFrameScript(0, frame1); _contentClip = this.contentClip; _directionPoint = new Point(); _maxXSpeedIndex = 0; _maxXSpeed = Settings.PLAYER_MAX_X_SPEEDS[_maxXSpeedIndex]; this.xSpeed = 0; playerState = CANNON; _targetBackWingOffset = new Point(-55, 0); _targetFrontWingOffset = new Point(-55, 0); _backWingOffset = new Point(-55, 0); _frontWingOffset = new Point(-55, 0); GlobalEvents.instance.addEventListener(GameEvent.PAUSE, handlePause); GlobalEvents.instance.addEventListener(GameEvent.RESUME, handleResume); } public function collideBomb(){ trace("COLLIDE.. "); playerState = COLLIDING; this.xSpeed = -10; _contentClip.gotoAndPlay("explode"); _contentClip.addEventListener(Event.COMPLETE, handleCollideComplete); } private function handleResume(_arg1:CustomEvent):void{ _contentClip.play(); } public function increaseMaxSpeed():void{ if (_maxXSpeedIndex < (Settings.PLAYER_MAX_X_SPEEDS.length - 1)){ _maxXSpeedIndex++; }; _maxXSpeed = Settings.PLAYER_MAX_X_SPEEDS[_maxXSpeedIndex]; } private function handlePause(_arg1:CustomEvent):void{ _contentClip.stop(); } public function shootOut(){ playerState = ZIPPING; _zipperAnimStreamIndex = 0; this.xSpeed = Settings.CANNON_SPEED; xScreenSpeed = Settings.ZIPPER_EXIT_SCREEN_SPEED; _contentClip.gotoAndPlay("zip"); _contentClip.addEventListener(Event.COMPLETE, handleZipperComplete); } public function getBackWingOffset():Point{ return (_backWingOffset); } public function update(_arg1:Number, _arg2:Number){ var _local6:int; if (playerState == CANNON){ return; }; var _local3:Number = _arg2; _arg2 = Math.max(100, _arg2); _directionPoint.x = _arg2; _directionPoint.y = _arg1; _directionPoint.normalize(1); this.normalisedX = _directionPoint.x; this.normalisedY = _directionPoint.y; if ((_local3 - 100) < 0){ if ((((playerState == ZIPPING)) || ((playerState == POST_ZIPPER)))){ _targetXScreenSpeed = (((_local3 - 100) / Settings.PLAYER_MAX_SPEED_X_OFFSET) * (Settings.PLAYER_MAX_SCREEN_X_SPEED_REVERSE * 0.6)); } else { _targetXScreenSpeed = (((_local3 - 100) / Settings.PLAYER_MAX_SPEED_X_OFFSET) * Settings.PLAYER_MAX_SCREEN_X_SPEED_REVERSE); }; } else { _targetXScreenSpeed = (((_local3 - 100) / Settings.PLAYER_MAX_SPEED_X_OFFSET) * Settings.PLAYER_MAX_SCREEN_X_SPEED); }; var _local4:Number = (_targetXScreenSpeed - this.xScreenSpeed); if ((((playerState == ZIPPING)) || ((playerState == POST_ZIPPER)))){ this.xScreenSpeed = (this.xScreenSpeed + (_local4 * X_SPEED_EASE_ZIPPER)); } else { this.xScreenSpeed = (this.xScreenSpeed + (_local4 * X_SPEED_EASE_NORMAL)); }; this.yScreenSpeed = (_maxScreenYSpeed * _directionPoint.y); if (this.xSpeed < _maxXSpeed){ this.xSpeed = (this.xSpeed + Settings.PLAYER_ACCELERATION); if (this.xSpeed > _maxXSpeed){ this.xSpeed = _maxXSpeed; }; }; var _local5:int = Math.max(-4, Math.min(4, ((yScreenSpeed / 10) * 4))); if ((((playerState == FLYING)) || ((playerState == POST_ZIPPER)))){ if (_bankDown){ _local6 = (7 - _local5); } else { _local6 = (7 + _local5); }; _targetFrontWingOffset.y = FRONT_WING_OFFSETS[(_local6 - 3)]; _targetBackWingOffset.y = BACK_WING_OFFSETS[(_local6 - 3)]; if (playerState == POST_ZIPPER){ if (_local6 == 7){ playerState = FLYING; } else { _local6 = 7; }; }; if (_contentClip.shakeContent){ _contentClip.shakeContent.gotoAndStop(_local6); }; } else { if (playerState == ZIPPING){ _zipperAnimStreamIndex++; _targetFrontWingOffset.y = ZIPPING_FRONT_WING_OFFSETS[_zipperAnimStreamIndex]; _targetBackWingOffset.y = ZIPPING_BACK_WING_OFFSETS[_zipperAnimStreamIndex]; } else { if (playerState == COLLIDING){ _targetFrontWingOffset.y = COLLIDING_FRONT_WING_OFFSETS[0]; _targetBackWingOffset.y = COLLIDING_BACK_WING_OFFSETS[0]; }; }; }; _targetFrontWingOffset.x = -59; _targetBackWingOffset.x = -57; var _local7:Number = Math.atan2(_arg1, _arg2); var _local8:Number = Math.floor(((_local7 * 180) / Math.PI)); _contentClip.rotation = _local8; NumberUtils.rotatePointByAngle(_targetFrontWingOffset, _local8); NumberUtils.rotatePointByAngle(_targetBackWingOffset, _local8); var _local9:Number = (_targetFrontWingOffset.x - _frontWingOffset.x); var _local10:Number = (_targetFrontWingOffset.y - _frontWingOffset.y); _frontWingOffset.x = (_frontWingOffset.x + (_local9 * WING_OFFSET_EASE)); _frontWingOffset.y = (_frontWingOffset.y + (_local10 * WING_OFFSET_EASE)); var _local11:Number = (_targetBackWingOffset.x - _backWingOffset.x); var _local12:Number = (_targetBackWingOffset.y - _backWingOffset.y); _backWingOffset.x = (_backWingOffset.x + (_local11 * WING_OFFSET_EASE)); _backWingOffset.y = (_backWingOffset.y + (_local12 * WING_OFFSET_EASE)); if (xSpeed > _maxXSpeed){ this.xSpeed = (this.xSpeed - Settings.POST_ZIPPER_DECELERATION); }; } public function getFrontWingOffset():Point{ return (_frontWingOffset); } private function handleCollideComplete(_arg1:Event):void{ trace("COLLIDE..2 "); _contentClip.gotoAndPlay("flying"); _contentClip.removeEventListener(Event.COMPLETE, handleCollideComplete); playerState = FLYING; } public function collectCoin(){ } function frame1(){ stop(); } public function hitZipper(_arg1:Zipper){ playerState = ZIPPING; _zipperAnimStreamIndex = 0; this.xSpeed = _arg1.exitSpeed; xScreenSpeed = Settings.ZIPPER_EXIT_SCREEN_SPEED; _contentClip.gotoAndPlay("zip"); _contentClip.addEventListener(Event.COMPLETE, handleZipperComplete); } public function gameOver():void{ contentClip.rotation = 0; if (_contentClip.shakeContent){ _contentClip.shakeContent.gotoAndStop(7); }; } public function destroy():void{ GlobalEvents.instance.removeEventListener(GameEvent.PAUSE, handlePause); GlobalEvents.instance.removeEventListener(GameEvent.RESUME, handleResume); } private function handleZipperComplete(_arg1:Event):void{ playerState = POST_ZIPPER; _contentClip.gotoAndPlay("flying"); if (_contentClip.shakeContent){ _contentClip.shakeContent.gotoAndStop(5); }; _contentClip.removeEventListener(Event.COMPLETE, handleZipperComplete); } } }//package
Section 205
//Puff (Puff) package { import flash.events.*; import flash.display.*; import as3lib.utils.*; public class Puff extends Sprite implements IAvoidable { private var _animState:String; private var _puffed:Boolean;// = false private var _frames:Array; private var _collided:Boolean; private var _nested:Boolean;// = false private var _bitmapHolder:Sprite; private var _bitmapIndex:int;// = 0 public static const COLLIDING:String = "colliding"; public static const PUFFED:String = "puffed"; public static const COLLIDED:String = "collided"; public static const IDLE:String = "idle"; public static const PUFFING:String = "puffing"; public function Puff(){ var _local1:Bitmap; super(); trace(("new Puff..." + this.parent.name)); ElementManager.instance.registerAvoidable(this); DisplayTools.removeAllChildrenFrom(this); if (this.parent.name.indexOf("holder") != -1){ _nested = true; }; _bitmapHolder = new Sprite(); this.addChild(_bitmapHolder); _bitmapHolder.x = -139; _bitmapHolder.y = -113; _frames = new Array(); initFrames(IDLE); initFrames(PUFFING); initFrames(COLLIDING); if (this.name.indexOf("prepuffed") != -1){ _local1 = (_frames[PUFFING][(_frames[PUFFING].length - 1)] as Bitmap); _animState = PUFFED; _bitmapIndex = 0; _puffed = true; this.cacheAsBitmap = true; } else { _animState = IDLE; _local1 = (_frames[IDLE][0] as Bitmap); }; _bitmapHolder.addChild(_local1); } public function update():void{ var _local1:Bitmap; if ((((_animState == PUFFING)) || ((_animState == COLLIDING)))){ if (_bitmapHolder.numChildren > 0){ _bitmapHolder.removeChildAt(0); }; _local1 = (_frames[_animState][_bitmapIndex] as Bitmap); _bitmapHolder.addChild(_local1); _bitmapIndex++; if (_bitmapIndex == _frames[_animState].length){ if (_animState == PUFFING){ _animState = PUFFED; } else { _animState = COLLIDED; }; }; }; } public function collide():void{ this.cacheAsBitmap = false; _collided = true; _animState = COLLIDING; _bitmapIndex = 0; SoundController.instance.playUniqueSound(SoundController.HIT_BOMB); } public function puff():void{ if (!_puffed){ _animState = PUFFING; _bitmapIndex = 0; SoundController.instance.playUniqueSound(SoundController.PUFF); _puffed = true; }; } public function hasCollided():Boolean{ return (_collided); } private function initFrames(_arg1:String):void{ var _local3:BitmapData; var _local4:Bitmap; var _local2:Array = ElementManager.instance.puffFrames[_arg1]; _frames[_arg1] = new Array(); var _local5:Number = 0; while (_local5 < _local2.length) { _local3 = (_local2[_local5] as BitmapData); _local4 = new Bitmap(_local3, "auto", true); _frames[_arg1][_local5] = _local4; _local5++; }; } public function getGlobalX():Number{ if (_nested){ return (((this.x + this.parent.x) + this.parent.parent.x)); }; return ((this.x + this.parent.x)); } public function getGlobalY():Number{ if (_nested){ return (((this.y + this.parent.y) + this.parent.parent.y)); }; return ((this.y + this.parent.y)); } } }//package
Section 206
//PuffTemplate2 (PuffTemplate2) package { import flash.display.*; public class PuffTemplate2 extends MovieClip { public var collidingFrames:Array; public var puffingFrames:Array; public var idleFrames:Array; private static const PUFFING_START:int = 2; private static const IDLE_START:int = 1; private static const WIDTH:int = 327; private static const IDLE_END:int = 1; private static const HEIGHT:int = 281; private static const COLLIDING_END:int = 39; private static const PUFFING_END:int = 22; private static const COLLIDING_START:int = 23; public function PuffTemplate2(){ idleFrames = new Array(); puffingFrames = new Array(); collidingFrames = new Array(); } public function initialise():void{ var _local1:BitmapData; var _local2:Number = IDLE_START; while (_local2 <= IDLE_END) { this.gotoAndStop(_local2); _local1 = new BitmapData(WIDTH, HEIGHT, true, 0); _local1.draw(this); idleFrames.push(_local1); _local2++; }; var _local3:Number = PUFFING_START; while (_local3 <= PUFFING_END) { this.gotoAndStop(_local3); _local1 = new BitmapData(WIDTH, HEIGHT, true, 0); _local1.draw(this); puffingFrames.push(_local1); _local3++; }; var _local4:Number = COLLIDING_START; while (_local4 <= COLLIDING_END) { this.gotoAndStop(_local4); _local1 = new BitmapData(WIDTH, HEIGHT, true, 0); _local1.draw(this); collidingFrames.push(_local1); _local4++; }; } } }//package
Section 207
//ResultScreen (ResultScreen) package { import flash.net.*; import flash.events.*; import flash.display.*; public class ResultScreen extends MovieClip { public var ctaChallenge:MovieClip; public var trophies:MovieClip; public var ctaPost:MovieClip; public var fgSnowPlane:SnowPlane2; private var _score:Number; public var ctaReplay:MovieClip; public var ctaPortal:MovieClip; public var scoreBoard:MovieClip; public var ctaInvite:MovieClip; private var _connection:LocalConnection; public function ResultScreen(_arg1:Number){ _score = Math.min(_arg1, 300); var _local2:ScoreBoard = new ScoreBoard(this.scoreBoard); _local2.setScore(_arg1, false); this.ctaInvite.visible = false; this.ctaChallenge.visible = false; this.ctaPost.visible = false; showCta(); showTophy(); this.fgSnowPlane.mouseEnabled = false; this.fgSnowPlane.mouseChildren = false; if ((((Settings.facebookMode == true)) && (!(Settings.bareBones)))){ _connection = new LocalConnection(); if (Settings.connectionName){ _connection.send(Settings.connectionName, "callFBJS", "scoreUpdate", [_score]); }; }; Tracking.instance.trackEvent(Tracking.CAT_GAME, Tracking.FINISH_GAME, String(_arg1), 1); } private function handleChallengeOkClick(_arg1:MouseEvent):void{ Tracking.instance.trackEvent(Tracking.CAT_GAME, Tracking.CHALLENGE_OK); if (Settings.facebookMode == true){ _connection = new LocalConnection(); if (Settings.connectionName){ _connection.send(Settings.connectionName, "callFBJS", "scorePost", [_score]); }; }; dispatchEvent(new Event("skip")); } private function handlePostSkipClick(_arg1:MouseEvent):void{ Tracking.instance.trackEvent(Tracking.CAT_GAME, Tracking.POST_SKIP); dispatchEvent(new Event("skip")); } private function handlePortalSkipClick(_arg1:MouseEvent):void{ Tracking.instance.trackEvent(Tracking.CAT_GAME, Tracking.PORTAL_SKIP); dispatchEvent(new Event("skip")); } private function handleChallengeSkipClick(_arg1:MouseEvent):void{ Tracking.instance.trackEvent(Tracking.CAT_GAME, Tracking.CHALLENGE_SKIP); dispatchEvent(new Event("skip")); } private function handlePortalOkClick(_arg1:MouseEvent):void{ Tracking.instance.trackEvent(Tracking.CAT_GAME, Tracking.PORTAL_OK); SoundController.instance.fadeOutMusic(); var _local2:URLRequest = new URLRequest("http://apps.facebook.com/jetstream-penguin"); navigateToURL(_local2); } private function setViewPortal():void{ this.ctaInvite.visible = false; this.ctaChallenge.visible = false; this.ctaPost.visible = false; this.ctaReplay.visible = false; this.ctaPortal.visible = true; } private function showCta():void{ if (Settings.facebookMode == false){ if (Settings.bareBones){ setViewReplay(); } else { setViewPortal(); }; } else { if (_score > Settings.personalBest){ Settings.personalBest = _score; if (Math.random() > 0.5){ setViewPost(); } else { setViewChallenge(); }; } else { setViewInvite(); }; }; this.ctaReplay.replayButton.addEventListener(MouseEvent.CLICK, handleReplayClick); this.ctaPortal.skipButton.addEventListener(MouseEvent.CLICK, handlePortalSkipClick); this.ctaPortal.okButton.addEventListener(MouseEvent.CLICK, handlePortalOkClick); this.ctaPost.skipButton.addEventListener(MouseEvent.CLICK, handlePostSkipClick); this.ctaPost.okButton.addEventListener(MouseEvent.CLICK, handlePostOkClick); this.ctaPost.skipButton.addEventListener(MouseEvent.CLICK, handlePostSkipClick); this.ctaPost.okButton.addEventListener(MouseEvent.CLICK, handlePostOkClick); this.ctaChallenge.skipButton.addEventListener(MouseEvent.CLICK, handleChallengeSkipClick); this.ctaChallenge.okButton.addEventListener(MouseEvent.CLICK, handleChallengeOkClick); this.ctaInvite.skipButton.addEventListener(MouseEvent.CLICK, handleInviteSkipClick); this.ctaInvite.okButton.addEventListener(MouseEvent.CLICK, handleInviteOkClick); } private function setViewInvite():void{ this.ctaInvite.visible = true; this.ctaChallenge.visible = false; this.ctaPost.visible = false; this.ctaReplay.visible = false; this.ctaPortal.visible = false; } private function handleReplayClick(_arg1:MouseEvent):void{ Tracking.instance.trackEvent(Tracking.CAT_GAME, Tracking.REPLAY); dispatchEvent(new Event("skip")); } private function setViewPost():void{ this.ctaInvite.visible = false; this.ctaChallenge.visible = false; this.ctaPost.visible = true; this.ctaReplay.visible = false; this.ctaPortal.visible = false; } private function showTophy():void{ if (_score >= Settings.PLATINUM_SCORE){ this.trophies.gotoAndStop(4); } else { if (_score >= Settings.GOLD_SCORE){ this.trophies.gotoAndStop(3); } else { if (_score >= Settings.SILVER_SCORE){ this.trophies.gotoAndStop(2); } else { if (_score >= Settings.BRONZE_SCORE){ this.trophies.gotoAndStop(1); } else { this.trophies.gotoAndStop(5); }; }; }; }; } private function handlePostOkClick(_arg1:MouseEvent):void{ Tracking.instance.trackEvent(Tracking.CAT_GAME, Tracking.POST_OK); if (Settings.facebookMode == true){ _connection = new LocalConnection(); if (Settings.connectionName){ _connection.send(Settings.connectionName, "callFBJS", "scorePost", [_score]); }; }; dispatchEvent(new Event("skip")); } private function setViewReplay():void{ this.ctaInvite.visible = false; this.ctaChallenge.visible = false; this.ctaPost.visible = false; this.ctaReplay.visible = true; this.ctaPortal.visible = false; } private function handleInviteOkClick(_arg1:MouseEvent):void{ Tracking.instance.trackEvent(Tracking.CAT_GAME, Tracking.INVITE_OK); if (Settings.facebookMode == true){ _connection = new LocalConnection(); if (Settings.connectionName){ _connection.send(Settings.connectionName, "callFBJS", "inviteFriends", []); }; }; } private function setViewChallenge():void{ this.ctaInvite.visible = false; this.ctaChallenge.visible = true; this.ctaPost.visible = false; this.ctaReplay.visible = false; this.ctaPortal.visible = false; } private function handleInviteSkipClick(_arg1:MouseEvent):void{ dispatchEvent(new Event("skip")); Tracking.instance.trackEvent(Tracking.CAT_GAME, Tracking.INVITE_SKIP); } } }//package
Section 208
//S1_2_Trans1 (S1_2_Trans1) package { import flash.display.*; public dynamic class S1_2_Trans1 extends MovieClip { public var trigger_2_d:TransitionTrigger; public var trigger_2_c:TransitionTrigger; } }//package
Section 209
//S1_2_Trans2 (S1_2_Trans2) package { import flash.display.*; public dynamic class S1_2_Trans2 extends MovieClip { } }//package
Section 210
//S1_2_Trans3 (S1_2_Trans3) package { import flash.display.*; public dynamic class S1_2_Trans3 extends MovieClip { } }//package
Section 211
//S1_Bg0Chunk_Trans1 (S1_Bg0Chunk_Trans1) package { import flash.display.*; public dynamic class S1_Bg0Chunk_Trans1 extends MovieClip { } }//package
Section 212
//S1_Bg0Chunk_Trans2 (S1_Bg0Chunk_Trans2) package { import flash.display.*; public dynamic class S1_Bg0Chunk_Trans2 extends MovieClip { } }//package
Section 213
//S1_Bg0Chunk_Trans3 (S1_Bg0Chunk_Trans3) package { import flash.display.*; public dynamic class S1_Bg0Chunk_Trans3 extends MovieClip { } }//package
Section 214
//S1_Bg0Chunk_Trans4 (S1_Bg0Chunk_Trans4) package { import flash.display.*; public dynamic class S1_Bg0Chunk_Trans4 extends MovieClip { } }//package
Section 215
//S1_Bg0Chunk_Trans5 (S1_Bg0Chunk_Trans5) package { import flash.display.*; public dynamic class S1_Bg0Chunk_Trans5 extends MovieClip { } }//package
Section 216
//S1_Bg0Chunk_Trans6 (S1_Bg0Chunk_Trans6) package { import flash.display.*; public dynamic class S1_Bg0Chunk_Trans6 extends MovieClip { } }//package
Section 217
//S1_Bg0Chunk_Trans7 (S1_Bg0Chunk_Trans7) package { import flash.display.*; public dynamic class S1_Bg0Chunk_Trans7 extends MovieClip { } }//package
Section 218
//S1_Bg0Chunk1 (S1_Bg0Chunk1) package { import flash.display.*; public dynamic class S1_Bg0Chunk1 extends MovieClip { } }//package
Section 219
//S1_Bg0Chunk2 (S1_Bg0Chunk2) package { import flash.display.*; public dynamic class S1_Bg0Chunk2 extends MovieClip { } }//package
Section 220
//S1_Bg0Chunk3 (S1_Bg0Chunk3) package { import flash.display.*; public dynamic class S1_Bg0Chunk3 extends MovieClip { } }//package
Section 221
//S1_Bg0Chunk4 (S1_Bg0Chunk4) package { import flash.display.*; public dynamic class S1_Bg0Chunk4 extends MovieClip { } }//package
Section 222
//S1_Bg1Chunk1 (S1_Bg1Chunk1) package { import flash.display.*; public dynamic class S1_Bg1Chunk1 extends MovieClip { } }//package
Section 223
//S1_Bg1Chunk2 (S1_Bg1Chunk2) package { import flash.display.*; public dynamic class S1_Bg1Chunk2 extends MovieClip { } }//package
Section 224
//S1_Bg1Chunk3 (S1_Bg1Chunk3) package { import flash.display.*; public dynamic class S1_Bg1Chunk3 extends MovieClip { } }//package
Section 225
//S1_Bg1Chunk4 (S1_Bg1Chunk4) package { import flash.display.*; public dynamic class S1_Bg1Chunk4 extends MovieClip { } }//package
Section 226
//S1_Bg2Chunk1 (S1_Bg2Chunk1) package { import flash.display.*; public dynamic class S1_Bg2Chunk1 extends MovieClip { } }//package
Section 227
//S1_Bg2Chunk2 (S1_Bg2Chunk2) package { import flash.display.*; public dynamic class S1_Bg2Chunk2 extends MovieClip { } }//package
Section 228
//S1_Bg3Chunk1 (S1_Bg3Chunk1) package { import flash.display.*; public dynamic class S1_Bg3Chunk1 extends MovieClip { } }//package
Section 229
//S1_Bg3Chunk2 (S1_Bg3Chunk2) package { import flash.display.*; public dynamic class S1_Bg3Chunk2 extends MovieClip { } }//package
Section 230
//S1_Cannon (S1_Cannon) package { import flash.display.*; public dynamic class S1_Cannon extends MovieClip { } }//package
Section 231
//S1_EmptyChunk (S1_EmptyChunk) package { import flash.display.*; public dynamic class S1_EmptyChunk extends MovieClip { } }//package
Section 232
//S2_3_Trans_Back1 (S2_3_Trans_Back1) package { import flash.display.*; public dynamic class S2_3_Trans_Back1 extends MovieClip { public var trigger_3_c:TransitionTrigger; public var trigger_3_d:TransitionTrigger; } }//package
Section 233
//S2_3_Trans_Back2 (S2_3_Trans_Back2) package { import flash.display.*; public dynamic class S2_3_Trans_Back2 extends MovieClip { } }//package
Section 234
//S2_3_Trans_Back3 (S2_3_Trans_Back3) package { import flash.display.*; public dynamic class S2_3_Trans_Back3 extends MovieClip { } }//package
Section 235
//S2_3_Trans_Back4 (S2_3_Trans_Back4) package { import flash.display.*; public dynamic class S2_3_Trans_Back4 extends MovieClip { } }//package
Section 236
//S2_3_Trans_Back5 (S2_3_Trans_Back5) package { import flash.display.*; public dynamic class S2_3_Trans_Back5 extends MovieClip { } }//package
Section 237
//S2_3_Trans_Front1 (S2_3_Trans_Front1) package { import flash.display.*; public dynamic class S2_3_Trans_Front1 extends MovieClip { } }//package
Section 238
//S2_3_Trans_Front2 (S2_3_Trans_Front2) package { import flash.display.*; public dynamic class S2_3_Trans_Front2 extends MovieClip { } }//package
Section 239
//S2_3_Trans_Front3 (S2_3_Trans_Front3) package { import flash.display.*; public dynamic class S2_3_Trans_Front3 extends MovieClip { } }//package
Section 240
//S2_3_Trans_Front4 (S2_3_Trans_Front4) package { import flash.display.*; public dynamic class S2_3_Trans_Front4 extends MovieClip { } }//package
Section 241
//S2_Bg0Chunk1 (S2_Bg0Chunk1) package { import flash.display.*; public dynamic class S2_Bg0Chunk1 extends MovieClip { } }//package
Section 242
//S2_Bg0Chunk2 (S2_Bg0Chunk2) package { import flash.display.*; public dynamic class S2_Bg0Chunk2 extends MovieClip { } }//package
Section 243
//S2_Bg0Chunk3 (S2_Bg0Chunk3) package { import flash.display.*; public dynamic class S2_Bg0Chunk3 extends MovieClip { } }//package
Section 244
//S2_Bg1Chunk1 (S2_Bg1Chunk1) package { import flash.display.*; public dynamic class S2_Bg1Chunk1 extends MovieClip { } }//package
Section 245
//S2_Bg2Chunk1 (S2_Bg2Chunk1) package { import flash.display.*; public dynamic class S2_Bg2Chunk1 extends MovieClip { } }//package
Section 246
//S2_Bg3Chunk1 (S2_Bg3Chunk1) package { import flash.display.*; public dynamic class S2_Bg3Chunk1 extends MovieClip { } }//package
Section 247
//S3_4_Trans_Back1 (S3_4_Trans_Back1) package { import flash.display.*; public dynamic class S3_4_Trans_Back1 extends MovieClip { } }//package
Section 248
//S3_4_Trans_Back2 (S3_4_Trans_Back2) package { import flash.display.*; import as3lib.*; public dynamic class S3_4_Trans_Back2 extends MovieClip { public var trigger_4_e:TransitionTrigger; public var flag1:MovieClip; public var flag2:MovieClip; public function S3_4_Trans_Back2(){ addFrameScript(0, frame1, 5, frame6, 33, frame34); } public function handleEndGame(_arg1:CustomEvent):void{ gotoAndPlay("fireworks"); } function frame6(){ stop(); } function frame1(){ GlobalEvents.instance.addEventListener(Trigger.END_GAME, handleEndGame); flag1.gotoAndPlay(3); } function frame34(){ stop(); } } }//package
Section 249
//S3_4_Trans_Front1 (S3_4_Trans_Front1) package { import flash.display.*; public dynamic class S3_4_Trans_Front1 extends MovieClip { } }//package
Section 250
//S3_4_Trans_Front2 (S3_4_Trans_Front2) package { import flash.display.*; public dynamic class S3_4_Trans_Front2 extends MovieClip { } }//package
Section 251
//S3_4_Trans_Front3 (S3_4_Trans_Front3) package { import flash.display.*; public dynamic class S3_4_Trans_Front3 extends MovieClip { } }//package
Section 252
//S3_4_Trans_Front4 (S3_4_Trans_Front4) package { import flash.display.*; public dynamic class S3_4_Trans_Front4 extends MovieClip { } }//package
Section 253
//S3_Bg0Chunk1 (S3_Bg0Chunk1) package { import flash.display.*; public dynamic class S3_Bg0Chunk1 extends MovieClip { } }//package
Section 254
//S3_Bg0ChunkIce1 (S3_Bg0ChunkIce1) package { import flash.display.*; public dynamic class S3_Bg0ChunkIce1 extends MovieClip { } }//package
Section 255
//S3_Bg0ChunkIce2 (S3_Bg0ChunkIce2) package { import flash.display.*; public dynamic class S3_Bg0ChunkIce2 extends MovieClip { } }//package
Section 256
//S3_Bg1Chunk1 (S3_Bg1Chunk1) package { import flash.display.*; public dynamic class S3_Bg1Chunk1 extends MovieClip { } }//package
Section 257
//S3_Bg2Chunk1 (S3_Bg2Chunk1) package { import flash.display.*; public dynamic class S3_Bg2Chunk1 extends MovieClip { } }//package
Section 258
//S3_Bg3Chunk1 (S3_Bg3Chunk1) package { import flash.display.*; public dynamic class S3_Bg3Chunk1 extends MovieClip { } }//package
Section 259
//S3_Bg3Chunk2 (S3_Bg3Chunk2) package { import flash.display.*; public dynamic class S3_Bg3Chunk2 extends MovieClip { } }//package
Section 260
//S3_Bg3Chunk3 (S3_Bg3Chunk3) package { import flash.display.*; public dynamic class S3_Bg3Chunk3 extends MovieClip { } }//package
Section 261
//S3_Bg3Chunk4 (S3_Bg3Chunk4) package { import flash.display.*; public dynamic class S3_Bg3Chunk4 extends MovieClip { } }//package
Section 262
//S3_Bg4Chunk1 (S3_Bg4Chunk1) package { import flash.display.*; public dynamic class S3_Bg4Chunk1 extends MovieClip { } }//package
Section 263
//S3_Bg4Chunk2 (S3_Bg4Chunk2) package { import flash.display.*; public dynamic class S3_Bg4Chunk2 extends MovieClip { } }//package
Section 264
//S4_Bg1Chunk1 (S4_Bg1Chunk1) package { import flash.display.*; public dynamic class S4_Bg1Chunk1 extends MovieClip { } }//package
Section 265
//ScoreBoard (ScoreBoard) package { import flash.display.*; public class ScoreBoard extends MovieClip { private var _step:Number; private var _ones:Digit; private var _clip:MovieClip; private var _hundeds:Digit; private var _tens:Digit; private var _countUpTarget:Number; private var _counter:Number; private var _currentScore:Number; public function ScoreBoard(_arg1:MovieClip){ _clip = _arg1; _ones = _clip.ones; _tens = _clip.tens; _hundeds = _clip.hundreds; } public function get clip():MovieClip{ return (_clip); } public function setScore(_arg1:Number, _arg2:Boolean=true, _arg3:Boolean=false, _arg4:Boolean=false):void{ var _local6:Number; var _local7:Number; var _local8:Number; if (_arg3){ _clip.gotoAndPlay("zipper"); } else { if (_arg4){ _clip.gotoAndPlay("bomb"); }; }; var _local5:Number = _arg1; _local8 = Math.floor((_local5 / 100)); _local5 = (_local5 - (_local8 * 100)); _local7 = Math.floor((_local5 / 10)); _local5 = (_local5 - (_local7 * 10)); _local6 = _local5; var _local9:Number = _hundeds.value; var _local10:Number = _tens.value; var _local11:Number = _ones.value; if (_local8 != _local9){ _hundeds.setValue(_local8, _arg2); }; if (((!((_local7 == _local10))) || (!((_local8 == _local9))))){ _tens.setValue(_local7, _arg2); }; if (((((!((_local6 == _local11))) || (!((_local7 == _local10))))) || (!((_local8 == _local9))))){ _ones.setValue(_local6, _arg2); }; } } }//package
Section 266
//ScrollingPlane (ScrollingPlane) package { import flash.events.*; import flash.display.*; import as3lib.*; public class ScrollingPlane extends Sprite { private var _cacheTiles:Boolean;// = false private var _animatedClasses:Array; private var _contentMask:Sprite; private var _tiles:Array; private var _maskHeight:Number; private var _scrollSpeedMultipyler:Number; private var _tileGraphicClassList:Array; private var _tileGraphicClass:Class; private var _itteratorIndex:int; private var _dispatchUpdates:Boolean;// = false private var _tileWidth:Number; private var _content:Sprite; private var _maskWidth:Number; private static const CREATE_BUFFER:Number = 100; public static const COMPLETE_LIST:String = "completeList"; private static const DESTROY_BUFFER:Number = 200; public function ScrollingPlane(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Boolean=false, _arg5:Boolean=true){ _maskWidth = _arg1; _maskHeight = _arg2; _scrollSpeedMultipyler = _arg3; _dispatchUpdates = _arg4; _cacheTiles = _arg5; _content = new Sprite(); this.addChild(_content); _tiles = new Array(); _itteratorIndex = 0; } public function get content():Sprite{ return (_content); } public function update(_arg1:Number){ var _local3:ScrollingTile; var _local2:Number = ((_tiles.length)>0) ? _tiles[0].accurateX : 0; if ((_local2 + (_tiles.length * _tileWidth)) < (_maskWidth + CREATE_BUFFER)){ addTile(); }; var _local4:int; while (_local4 < _tiles.length) { _local3 = (_tiles[_local4] as ScrollingTile); _local3.accurateX = (_local3.accurateX + (-(_arg1) * _scrollSpeedMultipyler)); _local3.tileClip.x = Math.floor(_local3.accurateX); _local4++; }; if (_tiles.length > 0){ _local3 = (_tiles[0] as ScrollingTile); if (_local3.accurateX < -((_tileWidth + DESTROY_BUFFER))){ _tiles.shift(); _content.removeChild(_local3.tileClip); _local3.destroy(); }; }; } private function createMask():Sprite{ var _local1:Sprite = new Sprite(); _local1.graphics.beginFill(0xFF00, 1); _local1.graphics.drawRect(0, 0, _maskWidth, _maskHeight); _local1.graphics.endFill(); return (_local1); } public function get itteratorIndex():int{ return (_itteratorIndex); } public function destroy():void{ } public function set animatedClasses(_arg1:Array):void{ _animatedClasses = _arg1; } public function set scrollSpeedMultipyler(_arg1:Number):void{ _scrollSpeedMultipyler = _arg1; } public function drawFirst():void{ addTile(); } private function addTile():void{ var _local5:int; var _local6:ScrollingTile; var _local1:* = new ScrollingTile(); var _local2:Class = _tileGraphicClassList[_itteratorIndex]; var _local3:MovieClip = new (_local2); var _local4:* = _cacheTiles; if (_animatedClasses){ _local5 = 0; while (_local5 < _animatedClasses.length) { if (_local2 == _animatedClasses[_local5]){ _local4 = false; break; }; _local5++; }; }; _local3.cacheAsBimap = _local4; _local1.tileClip = _local3; if (_tiles.length > 0){ _local6 = (_tiles[(_tiles.length - 1)] as ScrollingTile); _local1.tileClip.x = Math.floor((_local6.tileClip.x + _tileWidth)); _local1.accurateX = (_local6.accurateX + _tileWidth); } else { _local1.accurateX = 0; }; _tiles.push(_local1); _content.addChild(_local1.tileClip); if (_dispatchUpdates){ dispatchEvent(new Event(Event.CHANGE)); }; _itteratorIndex++; if (_itteratorIndex == _tileGraphicClassList.length){ dispatchEvent(new CustomEvent(ScrollingPlane.COMPLETE_LIST)); _itteratorIndex = 0; }; } public function set tileWidth(_arg1:Number):void{ _tileWidth = _arg1; } public function set tileGraphicClassList(_arg1:Array):void{ _tileGraphicClassList = _arg1; } public function get tileGraphicClassList():Array{ return (_tileGraphicClassList); } public function setTileGraphicClassList(_arg1:Array, _arg2:Boolean=true){ var _local3:ScrollingTile; var _local4:int; this.tileGraphicClassList = _arg1; _itteratorIndex = 0; if (_arg2){ _local4 = 0; while (_local4 < _tiles.length) { _local3 = (_tiles[_local4] as ScrollingTile); _content.removeChild(_local3.tileClip); _local4++; }; _tiles = new Array(); }; } } }//package
Section 267
//ScrollingTile (ScrollingTile) package { import flash.display.*; public class ScrollingTile { public var accurateX:Number; public var tileClip:MovieClip; public function destroy():void{ tileClip = null; } } }//package
Section 268
//Settings (Settings) package { import flash.text.*; public class Settings { public static const GAME_TIME:Number = 90; public static const POST_ZIPPER_DECELERATION:Number = 1; public static const PLAYER_MAX_X_SPEEDS:Array = [17, 25]; public static const COLLECT_THRESH:Number = 40; public static const PLAYER_MIN_X_SPEED:Number = 10; public static const BG1_SPEED_MULTIPLYER_OCEAN:Number = 0.1; public static const PLAYER_ACCELERATION:Number = 1; public static const ZIPPER_BURN_TIME:Number = 60; public static const PLAYER_MAX_SCREEN_X_SPEED:Number = 15; public static const HEIGHT:Number = 427; public static const PLAYER_MOUSE_OFFSET:Number = 230; public static const TRANS_BACK_SPEED_MULTIPLYER_3_4:Number = 1; public static const KEY_X_ACCEL:Number = 3; public static const PUFF_THRESH:Number = 500; public static const BG1_SPEED_MULTIPLYER:Number = 0.05; public static const KEY_DRIFITBACK_THRESH:Number = 300; public static const FG_SPEED_MULTIPLYER_OCEAN:Number = 3.5; public static const STREAM_THICKNESS:Number = 5; public static const BG2_SPEED_MULTIPLYER:Number = 0.02; public static const TRANS_FRONT_SPEED_MULTIPLYER_3_4:Number = 1.7; public static const KEY_X_DECEL:Number = 0.8; public static const CANNON_SPEED:Number = 30; public static const PLAYER_MAX_SCREEN_Y_SPEED:Number = 30; public static const KEY_Y_ACCEL:Number = 2.8; public static const TRANS_BACK_SPEED_MULTIPLYER_2_3:Number = 0.8; public static const BOMB_VALUE:Number = -5; public static const BG3_SPEED_MULTIPLYER:Number = 0.01; public static const KEY_MAX_X_SPEED:Number = 20; public static const BRONZE_SCORE:int = 1; public static const MUSIC_VOLUME:Number = 0.65; public static const ZIPPER_EXIT_SPEED:Number = 90; public static const BG4_SPEED_MULTIPLYER:Number = 0.005; public static const SCREEN_X_LIMIT_1:Number = 760; public static const SCREEN_X_LIMIT_2:Number = 355; public static const PLATINUM_SCORE:int = 300; public static const KEY_Y_DECEL:Number = 0.75; public static const FG_SPEED_MULTIPLYER:Number = 3.5; public static const PLAYER_MAX_SCREEN_X_SPEED_REVERSE:Number = 7; public static const PLAYER_CENTER_X_OFFSET:Number = 20; public static const ZIPPER_VALUE:Number = 5; public static const TRANS_BACK_SPEED_MULTIPLYER_1_2:Number = 0.25; public static const WIDTH:Number = 760; public static const BG4_SPEED_MULTIPLYER_OCEAN:Number = 0.07; public static const STREAM_ALPHA:Number = 0.15; public static const SILVER_SCORE:int = 1; public static const KEY_MAX_Y_SPEED:Number = 16; public static const GOLD_SCORE:int = 275; public static const BG3_SPEED_MULTIPLYER_OCEAN:Number = 0.08; public static const TITLE_SCROLL_SPEED:Number = 17; public static const KEY_DRIFITBACK_SPEED:Number = 3; public static const PLAYER_MAX_SPEED_X_OFFSET:Number = 200; public static const ZIPPER_EXIT_SCREEN_SPEED:Number = 25; public static const TRANS_FRONT_SPEED_MULTIPLYER:Number = 1.7; public static const BG2_SPEED_MULTIPLYER_OCEAN:Number = 0.09; public static var debugText:TextField; public static var BG2_GRAPHIC_LIST:Array = [S1_Bg2Chunk1, S1_Bg2Chunk2]; public static var personalBest:int = 0; public static var STAGE2_FG_GRAPHIC_LIST:Array = [S2_Bg0Chunk1, S1_EmptyChunk, S2_Bg0Chunk1, S2_Bg0Chunk2, S2_Bg0Chunk1, S2_Bg0Chunk1, S1_EmptyChunk, S1_EmptyChunk, S2_Bg0Chunk1, S2_Bg0Chunk1, S2_Bg0Chunk3, S2_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S2_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S2_Bg0Chunk3, S2_Bg0Chunk1, S2_Bg0Chunk1, S2_Bg0Chunk1, S2_Bg0Chunk1, S2_Bg0Chunk1, S2_Bg0Chunk3, S2_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S2_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S2_Bg0Chunk3, S2_Bg0Chunk1, S2_Bg0Chunk1, S2_Bg0Chunk1, S2_Bg0Chunk1, S2_Bg0Chunk1, S2_Bg0Chunk1, S1_EmptyChunk, S1_EmptyChunk, S2_Bg0Chunk1, S2_Bg0Chunk1, S2_Bg0Chunk1, S1_EmptyChunk, S1_EmptyChunk, S2_Bg0Chunk1, S2_Bg0Chunk1, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S2_Bg0Chunk1, S2_Bg0Chunk1, S2_Bg0Chunk1, S1_EmptyChunk, S1_EmptyChunk, S2_Bg0Chunk1, S2_Bg0Chunk1, S2_Bg0Chunk1, S1_EmptyChunk, S1_EmptyChunk, S2_Bg0Chunk1, S2_Bg0Chunk1, S2_Bg0Chunk1, S1_EmptyChunk, S1_EmptyChunk, S2_Bg0Chunk1, S2_Bg0Chunk1, S2_Bg0Chunk1, S1_EmptyChunk, S1_EmptyChunk, S2_Bg0Chunk1, S2_Bg0Chunk1, S2_Bg0Chunk1, S1_EmptyChunk, S1_EmptyChunk, S2_Bg0Chunk1, S2_Bg0Chunk1, S2_Bg0Chunk1, S1_EmptyChunk, S1_EmptyChunk, S2_Bg0Chunk1, S2_Bg0Chunk1, S2_Bg0Chunk1, S1_EmptyChunk, S1_EmptyChunk, S2_Bg0Chunk1, S2_Bg0Chunk1, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S2_Bg0Chunk1, S2_Bg0Chunk1, S2_Bg0Chunk1, S1_EmptyChunk, S1_EmptyChunk, S2_Bg0Chunk1, S2_Bg0Chunk1, S2_Bg0Chunk3, S2_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S2_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S2_Bg0Chunk3, S2_Bg0Chunk1, S2_Bg0Chunk1, S2_Bg0Chunk1, S2_Bg0Chunk1, S2_Bg0Chunk1, S2_Bg0Chunk3, S2_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S2_Bg0Chunk3, S2_Bg0Chunk2, S1_EmptyChunk, S2_Bg0Chunk3, S2_Bg0Chunk1, S2_Bg0Chunk1, S2_Bg0Chunk1, S2_Bg0Chunk1, S2_Bg0Chunk2, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S2_Bg0Chunk1, S2_Bg0Chunk1, S2_Bg0Chunk1, S1_EmptyChunk, S1_EmptyChunk, S2_Bg0Chunk1, S2_Bg0Chunk1, S2_Bg0Chunk1, S1_EmptyChunk, S1_EmptyChunk, S2_Bg0Chunk1, S2_Bg0Chunk1, S2_Bg0Chunk1, S1_EmptyChunk, S1_EmptyChunk, S2_Bg0Chunk1, S2_Bg0Chunk1]; public static var STAGE3_FG_GRAPHIC_LIST:Array = [S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk, S1_EmptyChunk]; public static var STAGE3_BG2_GRAPHIC_LIST:Array = [S3_Bg2Chunk1]; public static var STAGE2_BG1_GRAPHIC_LIST:Array = [S2_Bg1Chunk1, S2_Bg1Chunk1]; public static var STAGE3_BG1_GRAPHIC_LIST:Array = [S3_Bg1Chunk1]; public static var TITLE_FG_GRAPHIC_LIST:Array = [S1_Bg0Chunk1, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk1, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk1, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk4, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk]; public static var TITLE_BG2_GRAPHIC_LIST:Array = [S1_Bg2Chunk1, S1_Bg2Chunk2]; public static var FG_GRAPHIC_LIST:Array = [S1_Cannon, S1_Bg0Chunk1, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk1, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk1, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk4, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk1, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk1, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk1, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk4, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk1, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk1, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk1, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk4, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk1, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk1, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk1, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk4, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk1, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk1, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk1, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk4, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk1, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk1, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk1, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk4, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk1, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk1, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk1, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk4, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk1, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk1, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk1, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk4, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk1, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk1, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk1, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk, S1_Bg0Chunk4, S1_EmptyChunk, S1_Bg0Chunk2, S1_Bg0Chunk3, S1_EmptyChunk, S1_EmptyChunk]; public static var facebookMode:Boolean = false; public static var BG1_GRAPHIC_LIST:Array = [S1_Bg1Chunk1, S1_Bg1Chunk2, S1_Bg1Chunk3, S1_Bg1Chunk4]; public static var connectionName:String; public static var STAGE2_BG3_GRAPHIC_LIST:Array = [S2_Bg3Chunk1, S2_Bg3Chunk1]; public static var STAGE3_BG4_GRAPHIC_LIST:Array = [S3_Bg4Chunk1, S3_Bg4Chunk1, S3_Bg4Chunk2, S3_Bg4Chunk2, S3_Bg4Chunk2, S3_Bg4Chunk2, S3_Bg4Chunk2, S3_Bg4Chunk2, S3_Bg4Chunk2, S3_Bg4Chunk2, S3_Bg4Chunk2, S3_Bg4Chunk2, S3_Bg4Chunk2, S3_Bg4Chunk2, S3_Bg4Chunk2, S3_Bg4Chunk2]; public static var bareBones:Boolean = false; public static var siteUrl:String; public static var usingKeys:Boolean = true; public static var STAGE3_BG3_GRAPHIC_LIST:Array = [S3_Bg3Chunk1, S3_Bg3Chunk1, S3_Bg3Chunk1, S3_Bg3Chunk1, S3_Bg3Chunk2, S3_Bg3Chunk3, S3_Bg3Chunk3, S3_Bg3Chunk3]; public static var firstRun:Boolean = true; public static var BG3_GRAPHIC_LIST:Array = [S1_Bg3Chunk1, S1_Bg3Chunk2]; public static var TITLE_BG3_GRAPHIC_LIST:Array = [S1_Bg3Chunk1, S1_Bg3Chunk2]; public static var TITLE_BG1_GRAPHIC_LIST:Array = [S1_Bg1Chunk1, S1_Bg1Chunk2, S1_Bg1Chunk3, S1_Bg1Chunk4]; public static var STAGE2_BG2_GRAPHIC_LIST:Array = [S2_Bg2Chunk1, S2_Bg2Chunk1]; } }//package
Section 269
//SnowPlane (SnowPlane) package { import flash.events.*; import flash.display.*; import as3lib.utils.*; public class SnowPlane extends MovieClip { private var _flakeHolder:Sprite; public var collected:Boolean; private var _count:int;// = 0 public var value:int;// = 1 private var _destroyCount:int;// = 0 public var sizeGuide:MovieClip; private var _flakes:Array; private static const MAX_X_DISPLACEMENT:Number = 10; private static const MAX_ALPHA:Number = 0.6; private static const FLAKES_PER_PERIOD:int = 2; private static const MAX_Y_SPEED:Number = 4; private static const MAX_ROT_SPEED:Number = 3; private static const DISPLACEMENT_ROT_SPEED:Number = 0.1; private static const MIN_ALPHA:Number = 0.2; private static const MIN_Y_SPEED:Number = 1; private static const CREATE_FREQUENCY:int = 10; private static const MIN_SCALE:Number = 0.2; private static const ROT_SPEED:Number = 1; public function SnowPlane(){ trace("NEW SP"); _flakeHolder = new Sprite(); _flakes = new Array(); this.addChild(_flakeHolder); this.addEventListener(Event.ADDED_TO_STAGE, handleAdded); this.addEventListener(Event.REMOVED_FROM_STAGE, handleRemoved); } public function destroy():void{ this.removeEventListener(Event.ADDED_TO_STAGE, handleAdded); this.removeEventListener(Event.REMOVED_FROM_STAGE, handleRemoved); this.removeEventListener(Event.ENTER_FRAME, run); } private function run(_arg1:Event):void{ var _local2:Flake; var _local4:int; _count++; _destroyCount++; if (_count == CREATE_FREQUENCY){ createFlakes(); _count = 0; }; var _local3:int; while (_local3 < _flakes.length) { _local2 = (_flakes[_local3] as Flake); _local2.y = (_local2.y + _local2.ySpeed); _local2.rotation = (_local2.rotation + _local2.rotSpeed); _local2.xRot = (_local2.xRot + DISPLACEMENT_ROT_SPEED); _local2.x = (_local2.homeX + (Math.sin(_local2.xRot) * _local2.maxDisplacement)); _local3++; }; if (_destroyCount == 10){ _local4 = (_flakes.length - 1); while (_local4 >= 0) { _local2 = (_flakes[_local4] as Flake); if (_local2.y > 450){ _local2.ySpeed = 0; _flakes.splice(_local4, 1); _flakeHolder.removeChild(_local2); }; _local4--; }; _destroyCount = 0; }; } public function initialise():void{ NumberUtils.initialiseSinCos(); this.addEventListener(Event.ENTER_FRAME, run); } private function handleAdded(_arg1:Event):void{ initialise(); } private function createFlakes():void{ var _local2:Flake; var _local3:Number; var _local4:Number; var _local1:int; while (_local1 < FLAKES_PER_PERIOD) { _local2 = new Flake(); _flakes.push(_local2); _flakeHolder.addChild(_local2); _local2.x = (Math.random() * this.sizeGuide.width); _local2.y = -20; _local2.homeX = _local2.x; _local3 = Math.random(); _local4 = Math.random(); _local2.scaleX = (MIN_SCALE + (_local3 * (1 - MIN_SCALE))); _local2.scaleY = (MIN_SCALE + (_local3 * (1 - MIN_SCALE))); _local2.alpha = (MIN_ALPHA + (_local3 * (MAX_ALPHA - MIN_ALPHA))); _local2.ySpeed = (MIN_Y_SPEED + (_local3 * (MAX_Y_SPEED - MIN_Y_SPEED))); _local2.maxDisplacement = (_local3 * MAX_X_DISPLACEMENT); _local2.cacheAsBitmap = true; _local2.rotSpeed = (_local4 * MAX_ROT_SPEED); _local2.xRot = (360 * _local4); _local1++; }; } private function handleRemoved(_arg1:Event):void{ destroy(); } } }//package
Section 270
//SnowPlane2 (SnowPlane2) package { import flash.events.*; import flash.display.*; import as3lib.utils.*; import as3lib.display.*; public class SnowPlane2 extends MovieClip { private var _flakeHolder:Sprite; public var collected:Boolean; private var _count:int;// = 0 public var value:int;// = 1 private var _destroyCount:int;// = 0 public var sizeGuide:MovieClip; private var _flakes:Array; private static const MAX_X_DISPLACEMENT:Number = 10; private static const MAX_ALPHA:Number = 0.6; private static const FLAKES_PER_PERIOD:int = 1; private static const MAX_Y_SPEED:Number = 4; private static const MAX_ROT_SPEED:Number = 3; private static const DISPLACEMENT_ROT_SPEED:Number = 0.1; private static const MIN_ALPHA:Number = 0.2; private static const MIN_Y_SPEED:Number = 1; private static const CREATE_FREQUENCY:int = 15; private static const MIN_SCALE:Number = 0.2; private static const ROT_SPEED:Number = 1; public function SnowPlane2(){ trace("NEW SP2"); _flakeHolder = new Sprite(); _flakes = new Array(); this.addChild(_flakeHolder); this.addEventListener(Event.ADDED_TO_STAGE, handleAdded); this.addEventListener(Event.REMOVED_FROM_STAGE, handleRemoved); } public function destroy():void{ this.removeEventListener(Event.ADDED_TO_STAGE, handleAdded); this.removeEventListener(Event.REMOVED_FROM_STAGE, handleRemoved); this.removeEventListener(Event.ENTER_FRAME, run); } private function run(_arg1:Event):void{ var _local2:Flake; var _local4:int; _count++; _destroyCount++; if (_count == CREATE_FREQUENCY){ if (Math.random() < 0.5){ createFlakes(); }; _count = 0; }; var _local3:int; while (_local3 < _flakes.length) { _local2 = (_flakes[_local3] as Flake); _local2.y = (_local2.y + _local2.ySpeed); _local2.rotation = (_local2.rotation + _local2.rotSpeed); _local2.xRot = (_local2.xRot + DISPLACEMENT_ROT_SPEED); _local2.x = (_local2.homeX + (Math.sin(_local2.xRot) * _local2.maxDisplacement)); _local3++; }; if (_destroyCount == 10){ _local4 = (_flakes.length - 1); while (_local4 >= 0) { _local2 = (_flakes[_local4] as Flake); if (_local2.y > 450){ _local2.ySpeed = 0; _flakes.splice(_local4, 1); _flakeHolder.removeChild(_local2); }; _local4--; }; _destroyCount = 0; }; } public function initialise():void{ NumberUtils.initialiseSinCos(); this.addEventListener(Event.ENTER_FRAME, run); } private function handleAdded(_arg1:Event):void{ initialise(); } private function createFlakes():void{ var _local2:Flake; var _local3:Number; var _local4:Number; var _local1:int; while (_local1 < FLAKES_PER_PERIOD) { _local2 = new Flake(); _flakes.push(_local2); _flakeHolder.addChild(_local2); _local2.x = (Math.random() * this.sizeGuide.width); _local2.y = -20; _local2.homeX = _local2.x; _local3 = 4; _local4 = Math.random(); _local2.scaleX = (MIN_SCALE + (_local3 * (1 - MIN_SCALE))); _local2.scaleY = (MIN_SCALE + (_local3 * (1 - MIN_SCALE))); _local2.alpha = (MIN_ALPHA + (_local3 * (MAX_ALPHA - MIN_ALPHA))); _local2.ySpeed = (MIN_Y_SPEED + (_local3 * (MAX_Y_SPEED - MIN_Y_SPEED))); _local2.maxDisplacement = (_local3 * MAX_X_DISPLACEMENT); _local2.rotSpeed = (_local4 * MAX_ROT_SPEED); _local2.xRot = (360 * _local4); _local2.filters = [Filters.getBlurFilter()]; _local2.cacheAsBitmap = true; _local1++; }; } private function handleRemoved(_arg1:Event):void{ destroy(); } } }//package
Section 271
//SoundController (SoundController) package { import flash.events.*; import flash.media.*; import flash.utils.*; public class SoundController { private var _counter:int; private var _musicSound:Sound; private var _playingSounds:Array; private var _oldMusicClass:Class; private var _windChannel:SoundChannel; private var _musicVolume:Number; private var _windSound:Sound; private var _fadeTimer:Timer; private var _pendingUniqueSounds:Array; private var _musicClass:Class; private var _musicTransform:SoundTransform; private var _musicChannel:SoundChannel; public static var PUFF:Class = SoundPuff; public static var TITLE_LOOP:Class = SoundMusicTitleLoop; public static var STAGE1_A:Class = SoundMusicStage1_A; public static var STAGE2_A:Class = SoundMusicStage2_A; public static var STAGE2_B:Class = SoundMusicStage2_B; public static var STAGE3_B:Class = SoundMusicStage3_B; public static var STAGE3_A:Class = SoundMusicStage3_A; public static var STAGE4_A:Class = SoundMusicBoss_A; private static var MAX_MULTISOUNDS:int = 2; public static var QUICK_BOOM:Class = SoundQuickBoom; public static var STAGE1_B:Class = SoundMusicStage1_B; public static var COLLECT_COIN:Class = SoundPickup; public static var HIT_BOMB:Class = SoundPufferHit; public static var USE_ZIPPER:Class = SoundZipper1; public static var FADE_STEP:Number = 0.05; private static var _instance:SoundController; private function handleMusicComplete(_arg1):void{ playMusicLoop(_musicClass, _musicVolume); } private function handleTic(_arg1:TimerEvent):void{ _musicVolume = (_musicVolume - FADE_STEP); if (_musicVolume <= 0){ _musicVolume = 0; }; _musicTransform.volume = _musicVolume; _musicChannel.soundTransform = _musicTransform; if (_musicVolume == 0){ stopFadeTimer(); }; } private function stopFadeTimer():void{ if (_fadeTimer){ _fadeTimer.stop(); _fadeTimer.removeEventListener(TimerEvent.TIMER, handleTic); _fadeTimer = null; if (_musicChannel){ _musicChannel.stop(); _musicChannel.removeEventListener(Event.SOUND_COMPLETE, handleMusicComplete); }; }; } public function playMusicLoop(_arg1:Class, _arg2:Number=1, _arg3:Boolean=false):void{ var _local4:*; _musicClass = _arg1; _arg2 = Settings.MUSIC_VOLUME; _musicVolume = _arg2; if (!_arg3){ if (((!(_musicSound)) || (!((_oldMusicClass == _musicClass))))){ _musicSound = new (_arg1); _oldMusicClass = _arg1; }; if (_musicChannel){ stopFadeTimer(); _musicChannel.stop(); _musicChannel.removeEventListener(Event.SOUND_COMPLETE, handleMusicComplete); }; _musicChannel = _musicSound.play(); _musicChannel.addEventListener(Event.SOUND_COMPLETE, handleMusicComplete); if (_arg2 != 1){ _local4 = new SoundTransform(); _local4.volume = _arg2; _musicChannel.soundTransform = _local4; }; }; } public function playOrRestartSound(_arg1:Class, _arg2:Number=1):Sound{ var _local3:Object; var _local7:*; if (!_playingSounds){ _playingSounds = new Array(); }; var _local4:int; while (_local4 < _playingSounds.length) { _local3 = (_playingSounds[_local4] as Object); if (_local3.soundClass == _arg1){ _local3.channel.stop(); _playingSounds.splice(_local4, 1); break; }; _local4++; }; var _local5:Sound = new (_arg1); var _local6:SoundChannel = _local5.play(); if (_arg2 != 1){ _local7 = new SoundTransform(); _local7.volume = _arg2; _local6.soundTransform = _local7; }; _playingSounds.push({id:_counter++, channel:_local6, soundClass:_arg1, volume:_arg2}); _local6.addEventListener(Event.SOUND_COMPLETE, handlePlayingSoundComplete); return (_local5); } public function update():void{ var _local1:Number; if (_pendingUniqueSounds){ _local1 = 0; while (_local1 < _pendingUniqueSounds.length) { playOrRestartSound(_pendingUniqueSounds[_local1][0], Number(_pendingUniqueSounds[_local1][1])); _local1++; }; _pendingUniqueSounds = null; }; } public function fadeOutMusic():void{ if (!_fadeTimer){ _fadeTimer = new Timer(100); _musicTransform = new SoundTransform(); _fadeTimer.addEventListener(TimerEvent.TIMER, handleTic); _fadeTimer.start(); }; } public function playWindLoop():void{ } private function handleWindComplete(_arg1:Event):void{ _windChannel.removeEventListener(Event.SOUND_COMPLETE, handleWindComplete); playWindLoop(); } private function handlePlayingSoundComplete(_arg1:Event):void{ var _local3:Object; var _local2:SoundChannel = (_arg1.target as SoundChannel); var _local4:int; while (_local4 < _playingSounds.length) { _local3 = (_playingSounds[_local4] as Object); if (_local3.channel == _local2){ _playingSounds.splice(_local4, 1); break; }; _local4++; }; } public function playUniqueSound(_arg1:Class, _arg2:Number=1):void{ if (_pendingUniqueSounds == null){ _pendingUniqueSounds = new Array(); }; var _local3:Number = 0; while (_local3 < _pendingUniqueSounds.length) { if (_pendingUniqueSounds[_local3][0] == _arg1){ if (_pendingUniqueSounds[_local3][2] < MAX_MULTISOUNDS){ var _local4 = _pendingUniqueSounds[_local3]; var _local5 = 2; var _local6 = (_local4[_local5] + 1); _local4[_local5] = _local6; }; return; }; _local3++; }; _pendingUniqueSounds.push([_arg1, _arg2, 1]); } public function playSound(_arg1:Class, _arg2:Number=1):Sound{ var _local5:*; var _local3:Sound = new (_arg1); var _local4:SoundChannel = _local3.play(); if (_arg2 != 1){ _local5 = new SoundTransform(); _local5.volume = _arg2; _local4.soundTransform = _local5; }; return (_local3); } public static function get instance():SoundController{ if (!_instance){ _instance = new (SoundController); }; return (_instance); } } }//package
Section 272
//SoundMusicBoss_A (SoundMusicBoss_A) package { import flash.media.*; public dynamic class SoundMusicBoss_A extends Sound { } }//package
Section 273
//SoundMusicStage1_A (SoundMusicStage1_A) package { import flash.media.*; public dynamic class SoundMusicStage1_A extends Sound { } }//package
Section 274
//SoundMusicStage1_B (SoundMusicStage1_B) package { import flash.media.*; public dynamic class SoundMusicStage1_B extends Sound { } }//package
Section 275
//SoundMusicStage2_A (SoundMusicStage2_A) package { import flash.media.*; public dynamic class SoundMusicStage2_A extends Sound { } }//package
Section 276
//SoundMusicStage2_B (SoundMusicStage2_B) package { import flash.media.*; public dynamic class SoundMusicStage2_B extends Sound { } }//package
Section 277
//SoundMusicStage3_A (SoundMusicStage3_A) package { import flash.media.*; public dynamic class SoundMusicStage3_A extends Sound { } }//package
Section 278
//SoundMusicStage3_B (SoundMusicStage3_B) package { import flash.media.*; public dynamic class SoundMusicStage3_B extends Sound { } }//package
Section 279
//SoundMusicTitleLoop (SoundMusicTitleLoop) package { import flash.media.*; public dynamic class SoundMusicTitleLoop extends Sound { } }//package
Section 280
//SoundPickup (SoundPickup) package { import flash.media.*; public dynamic class SoundPickup extends Sound { } }//package
Section 281
//SoundPuff (SoundPuff) package { import flash.media.*; public dynamic class SoundPuff extends Sound { } }//package
Section 282
//SoundPufferHit (SoundPufferHit) package { import flash.media.*; public dynamic class SoundPufferHit extends Sound { } }//package
Section 283
//SoundQuickBoom (SoundQuickBoom) package { import flash.media.*; public dynamic class SoundQuickBoom extends Sound { } }//package
Section 284
//SoundZipper1 (SoundZipper1) package { import flash.media.*; public dynamic class SoundZipper1 extends Sound { } }//package
Section 285
//Stage2Anim (Stage2Anim) package { import flash.events.*; import flash.display.*; import as3lib.*; public dynamic class Stage2Anim extends MovieClip { public function Stage2Anim(){ addFrameScript(28, frame29, 43, frame44); } function frame29(){ SoundController.instance.playMusicLoop(SoundController.STAGE2_A); } function frame44(){ stop(); dispatchEvent(new Event(Event.COMPLETE)); GlobalEvents.instance.broadcastEvent(new CustomEvent("go")); } } }//package
Section 286
//Stage3Anim (Stage3Anim) package { import flash.events.*; import flash.display.*; import as3lib.*; public dynamic class Stage3Anim extends MovieClip { public function Stage3Anim(){ addFrameScript(28, frame29, 43, frame44); } function frame29(){ SoundController.instance.playMusicLoop(SoundController.STAGE3_A); } function frame44(){ stop(); dispatchEvent(new Event(Event.COMPLETE)); GlobalEvents.instance.broadcastEvent(new CustomEvent("go")); } } }//package
Section 287
//TimeBoard (TimeBoard) package { import flash.events.*; import flash.display.*; public class TimeBoard extends MovieClip { private var _running:Boolean;// = false public var fracTens:Digit1; private var _counter:int; public var ones:Digit1; private var _tens:Digit; public var fracOnes:Digit1; private var _fracTens:Digit; private var _clip:MovieClip; public var tens:Digit1; private var _fracOnes:Digit; private var _ones:Digit; private static const FRAME_RATE:int = 31; public static const TIME_OUT:String = "timeout"; public function TimeBoard(){ _clip = this; _ones = this.ones; _tens = this.tens; _fracOnes = this.fracOnes; _fracTens = this.fracTens; } public function pause():void{ _running = false; } public function update():void{ var _local1:Number; var _local2:Number; if (_running){ _counter = (_counter - 1); if (_counter == 0){ pause(); renderDigits(0, 0, true); dispatchEvent(new Event(TIME_OUT)); } else { _local1 = Math.floor(((_counter * 100) / FRAME_RATE)); _local2 = 0; if (_local1 > 0){ while (_local1 > 99) { _local2++; _local1 = (_local1 - 100); }; }; renderDigits(_local2, _local1, true); }; }; } public function setTime(_arg1:Number, _arg2:Number=0):void{ renderDigits(_arg1, _arg2, false); _counter = (_arg1 * FRAME_RATE); } public function get clip():MovieClip{ return (_clip); } private function renderDigits(_arg1:int, _arg2:int=0, _arg3:Boolean=true):void{ var _local5:int; var _local6:int; var _local10:int; var _local11:int; var _local4:Number = _arg1; _local6 = Math.floor((_local4 / 10)); _local4 = (_local4 - (_local6 * 10)); _local5 = _local4; var _local7:int = _tens.value; var _local8:int = _ones.value; if (_local6 != _local7){ _tens.setValue(_local6, _arg3); }; if (((!((_local5 == _local8))) || (!((_local6 == _local7))))){ _ones.setValue(_local5, _arg3); }; var _local9:int = _arg2; _local11 = Math.floor((_local9 / 10)); _local9 = (_local9 - (_local11 * 10)); _local10 = _local9; var _local12:int = _fracTens.value; var _local13:int = _fracOnes.value; if (_local11 != _local12){ _fracTens.setValue(_local11, false); }; if (((!((_local10 == _local13))) || (!((_local11 == _local12))))){ _fracOnes.setValue(_local10, false); }; } public function start():void{ _running = true; } } }//package
Section 288
//TitleBg (TitleBg) package { import flash.events.*; import flash.display.*; import as3lib.utils.*; public class TitleBg extends MovieClip { private var _foreground:ScrollingPlane; private var _background1:ScrollingPlane; private var _background2:ScrollingPlane; private var _background3:ScrollingPlane; private var _background4:ScrollingPlane; private var _sky:MovieClip; public function TitleBg(){ _foreground = new ScrollingPlane(Settings.WIDTH, Settings.HEIGHT, Settings.FG_SPEED_MULTIPLYER); _foreground.tileGraphicClassList = Settings.TITLE_FG_GRAPHIC_LIST; _foreground.tileWidth = 760; _foreground.y = 0; _foreground.content.filters = [DisplayTools.getBlurFilter(50, 0, 1)]; _background1 = new ScrollingPlane(Settings.WIDTH, Settings.HEIGHT, Settings.BG1_SPEED_MULTIPLYER); _background1.tileGraphicClassList = Settings.TITLE_BG1_GRAPHIC_LIST; _background1.tileWidth = 760; _background1.y = 0; _background2 = new ScrollingPlane(Settings.WIDTH, Settings.HEIGHT, Settings.BG2_SPEED_MULTIPLYER); _background2.tileGraphicClassList = Settings.TITLE_BG2_GRAPHIC_LIST; _background2.tileWidth = 760; _background2.y = 0; _background3 = new ScrollingPlane(Settings.WIDTH, Settings.HEIGHT, 0); _background3.tileGraphicClassList = Settings.TITLE_BG3_GRAPHIC_LIST; _background3.tileWidth = 760; _background3.y = 0; _sky = new BgSky1(); this.addChild(_sky); this.addChild(_background3); this.addChild(_background2); this.addChild(_background1); this.addChild(_foreground); this.addEventListener(Event.ENTER_FRAME, handleEnterFrame); } public function destroy():void{ this.removeEventListener(Event.ENTER_FRAME, handleEnterFrame); } public function update():void{ _foreground.update(Settings.TITLE_SCROLL_SPEED); _background1.update(Settings.TITLE_SCROLL_SPEED); _background2.update(Settings.TITLE_SCROLL_SPEED); _background3.update(Settings.TITLE_SCROLL_SPEED); } private function handleEnterFrame(_arg1:Event):void{ update(); } } }//package
Section 289
//TitleScreen (TitleScreen) package { import flash.net.*; import flash.events.*; import flash.display.*; import flash.media.*; public class TitleScreen extends MovieClip { public var unmuteButton:SimpleButton; public var playButton:SimpleButton; public var muteButton:SimpleButton; public var challengeButton:SimpleButton; public var optusLogo:MovieClip; private var _globalSoundTransform:SoundTransform; public function TitleScreen(){ addFrameScript(86, frame87, 88, frame89, 105, frame106); this.playButton.addEventListener(MouseEvent.MOUSE_DOWN, handlePlayClick); this.challengeButton.addEventListener(MouseEvent.CLICK, handleChallengeClick); this.addEventListener(Event.ADDED_TO_STAGE, handleAddedToStage); _globalSoundTransform = SoundMixer.soundTransform; this.muteButton.addEventListener(MouseEvent.MOUSE_DOWN, handleMuteClick); this.unmuteButton.addEventListener(MouseEvent.MOUSE_DOWN, handleUnMuteClick); if (_globalSoundTransform.volume == 0){ this.muteButton.visible = false; this.unmuteButton.visible = true; } else { this.muteButton.visible = true; this.unmuteButton.visible = false; }; if (!Settings.facebookMode){ this.optusLogo.visible = true; this.optusLogo.addEventListener(MouseEvent.CLICK, handleLogoClick); this.optusLogo.buttonMode = true; } else { this.optusLogo.visible = false; }; } public function exit():void{ gotoAndPlay("exit"); } private function handleMuteClick(_arg1:MouseEvent):void{ Tracking.instance.trackEvent(Tracking.CAT_GAME, Tracking.MUTE); this.muteButton.visible = false; this.unmuteButton.visible = true; _globalSoundTransform.volume = 0; SoundMixer.soundTransform = _globalSoundTransform; } private function handleChallengeClick(_arg1:MouseEvent):void{ trace("handleChallengeClick"); } private function handleUnMuteClick(_arg1:MouseEvent):void{ this.muteButton.visible = true; this.unmuteButton.visible = false; _globalSoundTransform.volume = 1; SoundMixer.soundTransform = _globalSoundTransform; } function frame106(){ stop(); dispatchEvent(new Event("exitComplete2")); } private function handleAddedToStage(_arg1:Event):void{ } private function handleLogoClick(_arg1:MouseEvent):void{ Tracking.instance.trackEvent(Tracking.CAT_GAME, Tracking.LOGO); var _local2:URLRequest = new URLRequest("http://apps.facebook.com/jetstream-penguin"); navigateToURL(_local2); } function frame87(){ stop(); } public function destroy():void{ this.muteButton.removeEventListener(MouseEvent.MOUSE_DOWN, handleMuteClick); this.unmuteButton.removeEventListener(MouseEvent.MOUSE_DOWN, handleUnMuteClick); } private function handlePlayClick(_arg1:MouseEvent):void{ if (Settings.facebookMode){ Tracking.instance.trackEvent(Tracking.CAT_GAME, Tracking.PLAY_GAME); } else { Tracking.instance.trackEvent(Tracking.CAT_GAME, Tracking.PLAY_GAME_EXTERNAL); }; dispatchEvent(new Event("play")); } function frame89(){ dispatchEvent(new Event("exitComplete1")); } } }//package
Section 290
//Tracking (Tracking) package { import flash.display.*; import com.google.analytics.*; public class Tracking { private var _googleTracker:AnalyticsTracker; private var _initialised:Boolean;// = false public static const LOGO:String = "logo"; public static const PORTAL_OK:String = "portal/ok"; public static const INVITE_OK:String = "invite/ok"; public static const PAUSE:String = "pause"; public static const CHALLENGE_OK:String = "challenge/ok"; public static const MUTE:String = "mute"; public static const POST_OK:String = "post/ok"; public static const PLAY_GAME:String = "playGame"; public static const FINISH_GAME:String = "finishGame"; public static const FOCUS_OUT:String = "focusOut"; public static const CAT_GAME:String = "game"; public static const RESUME:String = "resume"; public static const REPLAY:String = "replay"; public static const RESTART:String = "restart"; public static const PLAY_GAME_EXTERNAL:String = "playGameExternal"; public static const INVITE_SKIP:String = "invite/skip"; public static const PORTAL_SKIP:String = "portal/skip"; public static const CHALLENGE_SKIP:String = "challenge/skip"; public static const POST_SKIP:String = "post/skip"; private static var _instance:Tracking; public function trackEvent(_arg1:String, _arg2:String, _arg3:String=null, _arg4:Number=-1):void{ if (_googleTracker){ if (_arg3 != null){ _googleTracker.trackEvent(_arg1, _arg2, _arg3, _arg4); } else { _googleTracker.trackEvent(_arg1, _arg2); }; }; } public function trackPageView(_arg1:String):void{ if (_googleTracker){ _googleTracker.trackPageview(_arg1); }; } public function initialise(_arg1:MovieClip):void{ if (!_initialised){ _googleTracker = new GATracker(_arg1, "UA-11184339-23", "AS3", false); _initialised = true; }; } public static function get instance():Tracking{ if (_instance == null){ _instance = new (Tracking); }; return (_instance); } } }//package
Section 291
//TransitionTrigger (TransitionTrigger) package { import flash.display.*; import as3lib.*; public class TransitionTrigger extends MovieClip implements ITriggerable { private var _transitionPart:String; private var _levelNumber:int; private var _triggered:Boolean; private var _parentClip:MovieClip; public function TransitionTrigger(){ ElementManager.instance.registerTrigger(this); switch (this.name){ case "trigger_2_c": _levelNumber = 2; _transitionPart = "c"; break; case "trigger_2_d": _levelNumber = 2; _transitionPart = "d"; break; case "trigger_3_c": _levelNumber = 3; _transitionPart = "c"; break; case "trigger_3_d": _levelNumber = 3; _transitionPart = "d"; break; case "trigger_4_c": _levelNumber = 4; _transitionPart = "c"; break; case "trigger_4_d": _levelNumber = 4; _transitionPart = "d"; break; case "trigger_4_e": _levelNumber = 4; _transitionPart = "e"; break; default: trace(("UNKNOWN TRIGGER" + this.name)); }; this.alpha = 0; } public function hasTriggered():Boolean{ return (_triggered); } public function trigger():void{ if (!_triggered){ _triggered = true; GlobalEvents.instance.broadcastEvent(new CustomEvent(Trigger.NEW_LEVEL, {level:_levelNumber, transitionPart:_transitionPart})); }; } public function getGlobalX():Number{ return ((this.x + this.parent.x)); } } }//package
Section 292
//Trigger (Trigger) package { public class Trigger { public var type:String; public var data:Object; public static const ANIMATION:String = "animation"; public static const NEW_LEVEL:String = "triggerLevelEnd"; public static const MUSIC_CHANGE:String = "musicChange"; public static const BOSS_ANIMATION:String = "bossAnimation"; public static const SPEED_UP:String = "speedUp"; public static const END_GAME:String = "triggerEndGame"; public static const GAME_ANIMATION:String = "gameAnimation"; public static const ENTER_BOSS:String = "enterBoss"; public function Trigger(_arg1:String, _arg2:Object=null){ this.type = _arg1; this.data = _arg2; } } }//package
Section 293
//WhiteFader (WhiteFader) package { import flash.display.*; public dynamic class WhiteFader extends MovieClip { } }//package
Section 294
//Zipper (Zipper) package { import flash.display.*; public class Zipper extends MovieClip { public var exitSpeed:Number;// = 90 public var zipped:Boolean; public var radius:Number;// = 50 public var burnTime:Number;// = 500 public function Zipper(){ addFrameScript(2, frame3, 23, frame24); cacheAsBitmap = true; ElementManager.instance.registerZipper(this); } public function getGlobalY():Number{ return ((this.y + this.parent.y)); } public function zip():void{ cacheAsBitmap = false; this.zipped = true; this.gotoAndPlay("zip"); SoundController.instance.playUniqueSound(SoundController.USE_ZIPPER); } function frame3(){ stop(); } function frame24(){ stop(); } public function getGlobalX():Number{ return ((this.x + this.parent.x)); } } }//package
Section 295
//ZipperJumpFishAnim (ZipperJumpFishAnim) package { import flash.events.*; import flash.display.*; public dynamic class ZipperJumpFishAnim extends MovieClip { public var holder2:MovieClip; public function ZipperJumpFishAnim(){ addFrameScript(300, frame301, 345, frame346); } function frame346(){ stop(); dispatchEvent(new Event(Event.COMPLETE)); } function frame301(){ dispatchEvent(new Event("scrollResume")); } } }//package

Library Items

Symbol 1 GraphicUsed by:24
Symbol 2 GraphicUsed by:3
Symbol 3 MovieClipUses:2Used by:24
Symbol 4 GraphicUsed by:24
Symbol 5 FontUsed by:6 38 52 54 145 148 349
Symbol 6 EditableTextUses:5Used by:24
Symbol 7 GraphicUsed by:24
Symbol 8 GraphicUsed by:24
Symbol 9 GraphicUsed by:24
Symbol 10 GraphicUsed by:24
Symbol 11 GraphicUsed by:24
Symbol 12 GraphicUsed by:24
Symbol 13 GraphicUsed by:24
Symbol 14 GraphicUsed by:24
Symbol 15 GraphicUsed by:24
Symbol 16 GraphicUsed by:24
Symbol 17 GraphicUsed by:24
Symbol 18 GraphicUsed by:24
Symbol 19 GraphicUsed by:24
Symbol 20 GraphicUsed by:24
Symbol 21 GraphicUsed by:24
Symbol 22 GraphicUsed by:24
Symbol 23 GraphicUsed by:24
Symbol 24 MovieClipUses:1 3 4 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23Used by:Timeline
Symbol 25 Sound {SoundMusicStage3_A}Used by:Timeline
Symbol 26 Sound {SoundMusicBoss_A}Used by:Timeline
Symbol 27 Sound {SoundPickup}Used by:Timeline
Symbol 28 Sound {SoundMusicStage1_A}Used by:Timeline
Symbol 29 Sound {SoundMusicStage2_A}Used by:Timeline
Symbol 30 Sound {SoundZipper1}Used by:Timeline
Symbol 31 Sound {SoundMusicTitleLoop}Used by:Timeline
Symbol 32 Sound {SoundMusicStage1_B}Used by:Timeline
Symbol 33 Sound {SoundMusicStage3_B}Used by:Timeline
Symbol 34 Sound {SoundPufferHit}Used by:Timeline
Symbol 35 Sound {SoundMusicStage2_B}Used by:Timeline
Symbol 36 Sound {SoundQuickBoom}Used by:112 285 288
Symbol 37 GraphicUsed by:99
Symbol 38 TextUses:5Used by:51 62
Symbol 39 BitmapUsed by:40
Symbol 40 GraphicUses:39Used by:45
Symbol 41 BitmapUsed by:42
Symbol 42 GraphicUses:41Used by:45
Symbol 43 Sound {InterfaceSound1}Used by:45 50 60 357 370 371 386
Symbol 44 Sound {InterfaceSound3}Used by:45 50 60 357 370 371 386
Symbol 45 ButtonUses:40 42 43 44Used by:51 53 55 62
Symbol 46 BitmapUsed by:47
Symbol 47 GraphicUses:46Used by:50
Symbol 48 BitmapUsed by:49
Symbol 49 GraphicUses:48Used by:50
Symbol 50 ButtonUses:47 49 43 44Used by:51 53 55 62
Symbol 51 MovieClipUses:38 45 50Used by:99
Symbol 52 TextUses:5Used by:53
Symbol 53 MovieClipUses:52 45 50Used by:99
Symbol 54 TextUses:5Used by:55
Symbol 55 MovieClipUses:54 45 50Used by:99
Symbol 56 BitmapUsed by:57
Symbol 57 GraphicUses:56Used by:60 371
Symbol 58 BitmapUsed by:59
Symbol 59 GraphicUses:58Used by:60 371
Symbol 60 ButtonUses:57 59 43 44Used by:61
Symbol 61 MovieClipUses:60Used by:99
Symbol 62 MovieClipUses:38 45 50Used by:99
Symbol 63 GraphicUsed by:65 67 69 71
Symbol 64 GraphicUsed by:65
Symbol 65 MovieClipUses:63 64Used by:72
Symbol 66 GraphicUsed by:67
Symbol 67 MovieClipUses:63 66Used by:72
Symbol 68 GraphicUsed by:69
Symbol 69 MovieClipUses:63 68Used by:72
Symbol 70 GraphicUsed by:71
Symbol 71 MovieClipUses:63 70Used by:72
Symbol 72 MovieClip {penguin_fla.Trophies_233}Uses:65 67 69 71Used by:99
Symbol 73 BitmapUsed by:74
Symbol 74 GraphicUses:73Used by:93
Symbol 75 BitmapUsed by:76
Symbol 76 GraphicUses:75Used by:93 307
Symbol 77 BitmapUsed by:78 286
Symbol 78 GraphicUses:77Used by:93 306
Symbol 79 BitmapUsed by:80
Symbol 80 GraphicUses:79Used by:93 304
Symbol 81 BitmapUsed by:82
Symbol 82 GraphicUses:81Used by:93
Symbol 83 BitmapUsed by:84
Symbol 84 GraphicUses:83Used by:93
Symbol 85 BitmapUsed by:86
Symbol 86 GraphicUses:85Used by:93
Symbol 87 BitmapUsed by:88
Symbol 88 GraphicUses:87Used by:93
Symbol 89 BitmapUsed by:90
Symbol 90 GraphicUses:89Used by:93
Symbol 91 BitmapUsed by:92
Symbol 92 GraphicUses:91Used by:93
Symbol 93 MovieClip {penguin_fla.NumbersPlain_240}Uses:74 76 78 80 82 84 86 88 90 92Used by:94
Symbol 94 MovieClip {Digit2}Uses:93Used by:95
Symbol 95 MovieClipUses:94Used by:99
Symbol 96 GraphicUsed by:97
Symbol 97 MovieClipUses:96Used by:98 111
Symbol 98 MovieClip {SnowPlane2}Uses:97Used by:99
Symbol 99 MovieClip {ResultScreen}Uses:37 51 53 55 61 62 72 95 98
Symbol 100 GraphicUsed by:112
Symbol 101 GraphicUsed by:108
Symbol 102 GraphicUsed by:108
Symbol 103 GraphicUsed by:108
Symbol 104 GraphicUsed by:108
Symbol 105 GraphicUsed by:108
Symbol 106 GraphicUsed by:108
Symbol 107 GraphicUsed by:108
Symbol 108 MovieClipUses:101 102 103 104 105 106 107Used by:112
Symbol 109 GraphicUsed by:110
Symbol 110 MovieClip {TransitionTrigger}Uses:109Used by:112 197 199
Symbol 111 MovieClip {SnowPlane}Uses:97Used by:112
Symbol 112 MovieClip {S3_4_Trans_Back2}Uses:100 108 110 111 36
Symbol 113 GraphicUsed by:114
Symbol 114 MovieClipUses:113Used by:115
Symbol 115 MovieClip {Flake}Uses:114
Symbol 116 GraphicUsed by:117
Symbol 117 MovieClip {S3_Bg2Chunk1}Uses:116
Symbol 118 GraphicUsed by:119
Symbol 119 MovieClip {S3_Bg3Chunk3}Uses:118
Symbol 120 GraphicUsed by:121
Symbol 121 MovieClip {S3_Bg3Chunk2}Uses:120
Symbol 122 GraphicUsed by:123
Symbol 123 MovieClip {S3_Bg3Chunk1}Uses:122
Symbol 124 GraphicUsed by:133 292
Symbol 125 GraphicUsed by:133
Symbol 126 GraphicUsed by:133
Symbol 127 GraphicUsed by:133
Symbol 128 GraphicUsed by:133
Symbol 129 GraphicUsed by:133
Symbol 130 GraphicUsed by:133
Symbol 131 GraphicUsed by:133
Symbol 132 GraphicUsed by:133
Symbol 133 MovieClip {PuffTemplate2}Uses:124 125 126 127 128 129 130 131 132
Symbol 134 GraphicUsed by:194
Symbol 135 GraphicUsed by:194
Symbol 136 GraphicUsed by:194
Symbol 137 GraphicUsed by:138
Symbol 138 MovieClip {penguin_fla.zipper1_171}Uses:137Used by:194
Symbol 139 GraphicUsed by:194
Symbol 140 GraphicUsed by:194
Symbol 141 GraphicUsed by:194
Symbol 142 GraphicUsed by:194
Symbol 143 GraphicUsed by:194
Symbol 144 GraphicUsed by:194
Symbol 145 TextUses:5Used by:149
Symbol 146 BitmapUsed by:147
Symbol 147 GraphicUses:146Used by:149
Symbol 148 TextUses:5Used by:149
Symbol 149 MovieClipUses:145 147 148Used by:194 289
Symbol 150 GraphicUsed by:194
Symbol 151 GraphicUsed by:194
Symbol 152 GraphicUsed by:194
Symbol 153 GraphicUsed by:194
Symbol 154 SoundUsed by:194
Symbol 155 GraphicUsed by:194
Symbol 156 GraphicUsed by:194
Symbol 157 GraphicUsed by:194
Symbol 158 GraphicUsed by:194
Symbol 159 GraphicUsed by:194
Symbol 160 GraphicUsed by:194
Symbol 161 GraphicUsed by:194
Symbol 162 GraphicUsed by:194
Symbol 163 GraphicUsed by:194
Symbol 164 GraphicUsed by:194
Symbol 165 GraphicUsed by:194
Symbol 166 GraphicUsed by:194
Symbol 167 GraphicUsed by:194
Symbol 168 GraphicUsed by:194
Symbol 169 GraphicUsed by:194
Symbol 170 GraphicUsed by:194
Symbol 171 GraphicUsed by:194
Symbol 172 GraphicUsed by:194
Symbol 173 GraphicUsed by:194
Symbol 174 GraphicUsed by:194
Symbol 175 GraphicUsed by:194
Symbol 176 GraphicUsed by:194
Symbol 177 GraphicUsed by:194
Symbol 178 GraphicUsed by:194
Symbol 179 GraphicUsed by:194
Symbol 180 GraphicUsed by:194
Symbol 181 GraphicUsed by:194
Symbol 182 GraphicUsed by:194
Symbol 183 SoundUsed by:194
Symbol 184 GraphicUsed by:194
Symbol 185 GraphicUsed by:194
Symbol 186 ShapeTweeningUsed by:194
Symbol 187 GraphicUsed by:188
Symbol 188 MovieClipUses:187Used by:194
Symbol 189 GraphicUsed by:194
Symbol 190 GraphicUsed by:194
Symbol 191 GraphicUsed by:194
Symbol 192 GraphicUsed by:194
Symbol 193 GraphicUsed by:194
Symbol 194 MovieClip {Cannon}Uses:134 135 136 138 139 140 141 142 143 144 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 188 189 190 191 192 193Used by:195 641
Symbol 195 MovieClip {S1_Cannon}Uses:194
Symbol 196 GraphicUsed by:197
Symbol 197 MovieClip {S2_3_Trans_Back1}Uses:196 110
Symbol 198 GraphicUsed by:199
Symbol 199 MovieClip {S1_2_Trans1}Uses:198 110
Symbol 200 GraphicUsed by:210
Symbol 201 GraphicUsed by:210
Symbol 202 GraphicUsed by:210
Symbol 203 GraphicUsed by:210
Symbol 204 GraphicUsed by:210
Symbol 205 GraphicUsed by:210
Symbol 206 GraphicUsed by:210
Symbol 207 GraphicUsed by:210
Symbol 208 GraphicUsed by:210
Symbol 209 GraphicUsed by:210
Symbol 210 MovieClip {penguin_fla.PenguinBanking_210}Uses:200 201 202 203 204 205 206 207 208 209Used by:264
Symbol 211 GraphicUsed by:264
Symbol 212 GraphicUsed by:264
Symbol 213 GraphicUsed by:264
Symbol 214 GraphicUsed by:264
Symbol 215 GraphicUsed by:264
Symbol 216 GraphicUsed by:264
Symbol 217 GraphicUsed by:264
Symbol 218 GraphicUsed by:264
Symbol 219 GraphicUsed by:264
Symbol 220 GraphicUsed by:264
Symbol 221 GraphicUsed by:264
Symbol 222 GraphicUsed by:264
Symbol 223 GraphicUsed by:264
Symbol 224 GraphicUsed by:264
Symbol 225 GraphicUsed by:264
Symbol 226 GraphicUsed by:264
Symbol 227 GraphicUsed by:264
Symbol 228 GraphicUsed by:264
Symbol 229 GraphicUsed by:264
Symbol 230 GraphicUsed by:264
Symbol 231 GraphicUsed by:264
Symbol 232 GraphicUsed by:264
Symbol 233 GraphicUsed by:264
Symbol 234 GraphicUsed by:264
Symbol 235 GraphicUsed by:264
Symbol 236 GraphicUsed by:264
Symbol 237 GraphicUsed by:264
Symbol 238 GraphicUsed by:264
Symbol 239 GraphicUsed by:264
Symbol 240 GraphicUsed by:264
Symbol 241 GraphicUsed by:264
Symbol 242 GraphicUsed by:264
Symbol 243 GraphicUsed by:264
Symbol 244 GraphicUsed by:264
Symbol 245 GraphicUsed by:264
Symbol 246 GraphicUsed by:264
Symbol 247 GraphicUsed by:264
Symbol 248 GraphicUsed by:264
Symbol 249 GraphicUsed by:264
Symbol 250 GraphicUsed by:264
Symbol 251 GraphicUsed by:264
Symbol 252 GraphicUsed by:264
Symbol 253 GraphicUsed by:264
Symbol 254 GraphicUsed by:264
Symbol 255 GraphicUsed by:264
Symbol 256 GraphicUsed by:264
Symbol 257 GraphicUsed by:264
Symbol 258 GraphicUsed by:264
Symbol 259 GraphicUsed by:264
Symbol 260 GraphicUsed by:264
Symbol 261 GraphicUsed by:264
Symbol 262 GraphicUsed by:264
Symbol 263 GraphicUsed by:264
Symbol 264 MovieClip {penguin_fla.penguinAnime_mc_209}Uses:210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263Used by:265
Symbol 265 MovieClip {Player}Uses:264
Symbol 266 GraphicUsed by:271 275 279 285 288 289 291 294 297 299 301 303 312 321 322 323 324 585 586 587 588 589 590 591 592 594 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 618 619 620 622 624 625 626 627 629 630 631 638 640
Symbol 267 GraphicUsed by:270
Symbol 268 GraphicUsed by:270
Symbol 269 GraphicUsed by:270
Symbol 270 MovieClip {Coin}Uses:267 268 269Used by:271 275 290 293 296 298 300 302 320 322 323 324 584 586 587 591 592 593 596 597 598 599 600 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 623 625 626 627 628 630 631 632 634 635 636 637 638 639 640  Timeline
Symbol 271 MovieClip {LevelChunk_Stage1Fin_1}Uses:266 270
Symbol 272 GraphicUsed by:273
Symbol 273 MovieClipUses:272Used by:274
Symbol 274 MovieClip {Zipper}Uses:273Used by:275 589 601 620 627 629 638  Timeline
Symbol 275 MovieClip {LevelChunk_Stage1Fin_2}Uses:266 274 270
Symbol 276 BitmapUsed by:277
Symbol 277 GraphicUses:276Used by:278
Symbol 278 MovieClipUses:277Used by:279
Symbol 279 MovieClip {GoalAnim}Uses:266 278
Symbol 280 BitmapUsed by:282
Symbol 281 BitmapUsed by:282 286
Symbol 282 GraphicUses:280 281Used by:283
Symbol 283 MovieClipUses:282Used by:285
Symbol 284 SoundUsed by:285 288
Symbol 285 MovieClip {Stage3Anim}Uses:266 283 36 284
Symbol 286 GraphicUses:77 281Used by:287
Symbol 287 MovieClipUses:286Used by:288
Symbol 288 MovieClip {Stage2Anim}Uses:266 287 36 284
Symbol 289 MovieClip {InstructionsAnim}Uses:266 149
Symbol 290 MovieClip {penguin_fla.TestFishGroup1_198}Uses:270Used by:291
Symbol 291 MovieClip {JumpFishAnim_1_5}Uses:266 290
Symbol 292 MovieClip {Puff}Uses:124Used by:293 298 300 321 322 323 324 584 586 587 591 592 602 603 608 609 610 612 617 619
Symbol 293 MovieClip {penguin_fla.TestFishGroup2_196}Uses:270 292Used by:294
Symbol 294 MovieClip {JumpFishAnim_2}Uses:266 293
Symbol 295 SoundUsed by:296
Symbol 296 MovieClip {penguin_fla.TestFishGroupZipperJump_194}Uses:270 295Used by:297
Symbol 297 MovieClip {ZipperJumpFishAnim}Uses:266 296
Symbol 298 MovieClip {penguin_fla.TestFishGroup4_192}Uses:270 292Used by:299
Symbol 299 MovieClip {JumpFishAnim_4}Uses:266 298
Symbol 300 MovieClip {penguin_fla.TestFishGroup3_190}Uses:270 292Used by:301
Symbol 301 MovieClip {JumpFishAnim_3}Uses:266 300
Symbol 302 MovieClip {penguin_fla.TestFishGroup1_188}Uses:270Used by:303
Symbol 303 MovieClip {JumpFishAnim_1}Uses:266 302
Symbol 304 MovieClipUses:80Used by:312
Symbol 305 SoundUsed by:312
Symbol 306 MovieClipUses:78Used by:312
Symbol 307 MovieClipUses:76Used by:312
Symbol 308 BitmapUsed by:309
Symbol 309 GraphicUses:308Used by:310
Symbol 310 MovieClipUses:309Used by:312
Symbol 311 SoundUsed by:312
Symbol 312 MovieClip {CountDownAnim}Uses:266 304 305 306 307 310 311
Symbol 313 GraphicUsed by:314
Symbol 314 MovieClip {HeadTracker}Uses:313
Symbol 315 GraphicUsed by:316
Symbol 316 MovieClip {WhiteFader}Uses:315
Symbol 317 BitmapUsed by:318
Symbol 318 GraphicUses:317Used by:319
Symbol 319 MovieClip {CustomCursor}Uses:318
Symbol 320 MovieClip {LevelChunk_TEST_fish}Uses:270Used by:641
Symbol 321 MovieClip {LevelChunk_TEST_bombs}Uses:266 292Used by:641
Symbol 322 MovieClip {LevelChunk_SlalemA_3}Uses:266 292 270Used by:641
Symbol 323 MovieClip {LevelChunk_SlalemA_2}Uses:266 292 270Used by:641
Symbol 324 MovieClip {LevelChunk_SlalemA_1}Uses:266 292 270Used by:641
Symbol 325 BitmapUsed by:326
Symbol 326 GraphicUses:325Used by:345
Symbol 327 BitmapUsed by:328
Symbol 328 GraphicUses:327Used by:345
Symbol 329 BitmapUsed by:330
Symbol 330 GraphicUses:329Used by:345
Symbol 331 BitmapUsed by:332
Symbol 332 GraphicUses:331Used by:345
Symbol 333 BitmapUsed by:334
Symbol 334 GraphicUses:333Used by:345
Symbol 335 BitmapUsed by:336
Symbol 336 GraphicUses:335Used by:345
Symbol 337 BitmapUsed by:338
Symbol 338 GraphicUses:337Used by:345
Symbol 339 BitmapUsed by:340
Symbol 340 GraphicUses:339Used by:345
Symbol 341 BitmapUsed by:342
Symbol 342 GraphicUses:341Used by:345
Symbol 343 BitmapUsed by:344
Symbol 344 GraphicUses:343Used by:345
Symbol 345 MovieClip {penguin_fla.NumbersPlainSmall_9}Uses:326 328 330 332 334 336 338 340 342 344Used by:346
Symbol 346 MovieClip {Digit1}Uses:345Used by:348 353
Symbol 347 GraphicUsed by:348
Symbol 348 MovieClip {TimeBoard}Uses:346 347Used by:358
Symbol 349 TextUses:5Used by:350
Symbol 350 MovieClipUses:349Used by:353
Symbol 351 GraphicUsed by:352
Symbol 352 MovieClipUses:351Used by:353
Symbol 353 MovieClip {penguin_fla.ScoreBoardSmall_7}Uses:346 350 352Used by:358
Symbol 354 BitmapUsed by:355
Symbol 355 GraphicUses:354Used by:357
Symbol 356 GraphicUsed by:357 398 401
Symbol 357 ButtonUses:355 356 43 44Used by:358
Symbol 358 MovieClip {Hud}Uses:353 348 357Used by:Timeline
Symbol 359 GraphicUsed by:360
Symbol 360 MovieClipUses:359Used by:364
Symbol 361 BitmapUsed by:362
Symbol 362 GraphicUses:361Used by:363
Symbol 363 MovieClip {com.google.analytics.components.Icon}Uses:362Used by:364
Symbol 364 MovieClip {com.google.analytics.components.FlashTracker}Uses:360 363
Symbol 365 GraphicUsed by:372
Symbol 366 BitmapUsed by:367 369
Symbol 367 GraphicUses:366Used by:370
Symbol 368 BitmapUsed by:369
Symbol 369 GraphicUses:368 366Used by:370
Symbol 370 ButtonUses:367 369 43 44Used by:372
Symbol 371 ButtonUses:57 59 43 44Used by:372
Symbol 372 MovieClip {PauseMenu}Uses:365 370 371Used by:Timeline
Symbol 373 GraphicUsed by:374
Symbol 374 MovieClip {Crosshair}Uses:373Used by:Timeline
Symbol 375 GraphicUsed by:379 380
Symbol 376 FontUsed by:377 378
Symbol 377 TextUses:376Used by:379 380
Symbol 378 TextUses:376Used by:379 380
Symbol 379 MovieClipUses:375 377 378Used by:380
Symbol 380 ButtonUses:379 375 377 378Used by:435
Symbol 381 BitmapUsed by:382
Symbol 382 GraphicUses:381Used by:386 435
Symbol 383 BitmapUsed by:384
Symbol 384 GraphicUses:383Used by:386
Symbol 385 GraphicUsed by:386
Symbol 386 ButtonUses:382 384 385 43 44Used by:435
Symbol 387 GraphicUsed by:392
Symbol 388 GraphicUsed by:392
Symbol 389 GraphicUsed by:392
Symbol 390 GraphicUsed by:392
Symbol 391 GraphicUsed by:392
Symbol 392 MovieClipUses:387 388 389 390 391Used by:395
Symbol 393 GraphicUsed by:395
Symbol 394 GraphicUsed by:395
Symbol 395 MovieClip {penguin_fla.Title2_20}Uses:392 393 394Used by:435
Symbol 396 BitmapUsed by:397
Symbol 397 GraphicUses:396Used by:398
Symbol 398 ButtonUses:397 356Used by:435
Symbol 399 BitmapUsed by:400
Symbol 400 GraphicUses:399Used by:401
Symbol 401 ButtonUses:400 356Used by:435
Symbol 402 GraphicUsed by:405
Symbol 403 BitmapUsed by:404
Symbol 404 GraphicUses:403Used by:405
Symbol 405 MovieClipUses:402 404Used by:435
Symbol 406 GraphicUsed by:435
Symbol 407 GraphicUsed by:435
Symbol 408 GraphicUsed by:435
Symbol 409 GraphicUsed by:435
Symbol 410 GraphicUsed by:435
Symbol 411 GraphicUsed by:435
Symbol 412 GraphicUsed by:435
Symbol 413 GraphicUsed by:435
Symbol 414 GraphicUsed by:435
Symbol 415 GraphicUsed by:435
Symbol 416 GraphicUsed by:435
Symbol 417 GraphicUsed by:435
Symbol 418 GraphicUsed by:435
Symbol 419 GraphicUsed by:435
Symbol 420 GraphicUsed by:435
Symbol 421 GraphicUsed by:435
Symbol 422 GraphicUsed by:435
Symbol 423 GraphicUsed by:435
Symbol 424 GraphicUsed by:435
Symbol 425 GraphicUsed by:435
Symbol 426 GraphicUsed by:435
Symbol 427 GraphicUsed by:435
Symbol 428 GraphicUsed by:435
Symbol 429 GraphicUsed by:435
Symbol 430 GraphicUsed by:435
Symbol 431 GraphicUsed by:435
Symbol 432 GraphicUsed by:435
Symbol 433 GraphicUsed by:435
Symbol 434 GraphicUsed by:435
Symbol 435 MovieClip {TitleScreen}Uses:380 386 395 398 401 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 382Used by:Timeline
Symbol 436 GraphicUsed by:437
Symbol 437 MovieClip {BgSky3}Uses:436Used by:Timeline
Symbol 438 MovieClip {S1_EmptyChunk}Used by:Timeline
Symbol 439 GraphicUsed by:440
Symbol 440 MovieClipUses:439Used by:443
Symbol 441 GraphicUsed by:442
Symbol 442 MovieClipUses:441Used by:443 483 484 503 504
Symbol 443 MovieClip {S1_Bg0Chunk4}Uses:440 442Used by:Timeline
Symbol 444 GraphicUsed by:445
Symbol 445 MovieClip {S1_Bg1Chunk1}Uses:444Used by:Timeline
Symbol 446 GraphicUsed by:447
Symbol 447 MovieClip {S2_Bg1Chunk1}Uses:446Used by:Timeline
Symbol 448 GraphicUsed by:449
Symbol 449 MovieClip {S3_Bg1Chunk1}Uses:448Used by:Timeline
Symbol 450 GraphicUsed by:451
Symbol 451 MovieClipUses:450Used by:452 554
Symbol 452 MovieClip {S1_Bg0Chunk_Trans5}Uses:451Used by:Timeline
Symbol 453 GraphicUsed by:454
Symbol 454 MovieClipUses:453Used by:455
Symbol 455 MovieClip {S1_Bg0Chunk_Trans6}Uses:454Used by:Timeline
Symbol 456 GraphicUsed by:457
Symbol 457 MovieClip {BgSky2}Uses:456Used by:Timeline
Symbol 458 GraphicUsed by:459
Symbol 459 MovieClip {S3_Bg3Chunk4}Uses:458Used by:Timeline
Symbol 460 GraphicUsed by:461
Symbol 461 MovieClip {S3_Bg4Chunk1}Uses:460Used by:Timeline
Symbol 462 GraphicUsed by:463
Symbol 463 MovieClip {S3_Bg4Chunk2}Uses:462Used by:Timeline
Symbol 464 GraphicUsed by:465
Symbol 465 MovieClip {S1_Bg1Chunk2}Uses:464Used by:Timeline
Symbol 466 GraphicUsed by:467
Symbol 467 MovieClip {S1_Bg1Chunk3}Uses:466Used by:Timeline
Symbol 468 GraphicUsed by:469
Symbol 469 MovieClip {S1_Bg1Chunk4}Uses:468Used by:Timeline
Symbol 470 GraphicUsed by:471
Symbol 471 MovieClip {S2_Bg2Chunk1}Uses:470Used by:Timeline
Symbol 472 GraphicUsed by:473
Symbol 473 MovieClip {S1_Bg2Chunk2}Uses:472Used by:Timeline
Symbol 474 GraphicUsed by:475
Symbol 475 MovieClip {S1_Bg3Chunk1}Uses:474Used by:Timeline
Symbol 476 GraphicUsed by:477
Symbol 477 MovieClip {S2_Bg3Chunk1}Uses:476Used by:Timeline
Symbol 478 GraphicUsed by:479
Symbol 479 MovieClip {S1_Bg3Chunk2}Uses:478Used by:Timeline
Symbol 480 GraphicUsed by:483 484 487 488
Symbol 481 GraphicUsed by:482
Symbol 482 MovieClipUses:481Used by:483 484
Symbol 483 MovieClip {S1_Bg0Chunk1}Uses:480 442 482Used by:Timeline
Symbol 484 MovieClip {S1_Bg0Chunk_Trans7}Uses:480 442 482Used by:Timeline
Symbol 485 GraphicUsed by:486
Symbol 486 MovieClipUses:485Used by:487 488
Symbol 487 MovieClip {S2_Bg0Chunk1}Uses:480 486Used by:Timeline
Symbol 488 MovieClip {S4_Bg1Chunk1}Uses:480 486Used by:Timeline
Symbol 489 MovieClip {S3_Bg0Chunk1}Used by:Timeline
Symbol 490 GraphicUsed by:491
Symbol 491 MovieClipUses:490Used by:492 495
Symbol 492 MovieClip {S3_Bg0ChunkIce1}Uses:491Used by:Timeline
Symbol 493 GraphicUsed by:494
Symbol 494 MovieClipUses:493Used by:495
Symbol 495 MovieClip {S3_Bg0ChunkIce2}Uses:491 494Used by:Timeline
Symbol 496 GraphicUsed by:499 502
Symbol 497 GraphicUsed by:498
Symbol 498 MovieClipUses:497Used by:499
Symbol 499 MovieClip {S2_Bg0Chunk2}Uses:496 498Used by:Timeline
Symbol 500 GraphicUsed by:501
Symbol 501 MovieClipUses:500Used by:502
Symbol 502 MovieClip {S2_Bg0Chunk3}Uses:496 501Used by:Timeline
Symbol 503 MovieClip {S1_Bg0Chunk2}Uses:442Used by:Timeline
Symbol 504 MovieClip {S1_Bg0Chunk3}Uses:442Used by:Timeline
Symbol 505 GraphicUsed by:506
Symbol 506 MovieClip {S1_Bg2Chunk1}Uses:505Used by:Timeline
Symbol 507 GraphicUsed by:508
Symbol 508 MovieClipUses:507Used by:509
Symbol 509 MovieClip {S2_3_Trans_Front1}Uses:508Used by:Timeline
Symbol 510 GraphicUsed by:511
Symbol 511 MovieClipUses:510Used by:512
Symbol 512 MovieClip {S3_4_Trans_Front1}Uses:511Used by:Timeline
Symbol 513 GraphicUsed by:514
Symbol 514 MovieClip {S3_4_Trans_Back1}Uses:513Used by:Timeline
Symbol 515 GraphicUsed by:516
Symbol 516 MovieClipUses:515Used by:517
Symbol 517 MovieClip {S3_4_Trans_Front2}Uses:516Used by:Timeline
Symbol 518 GraphicUsed by:519
Symbol 519 MovieClipUses:518Used by:520
Symbol 520 MovieClip {S3_4_Trans_Front3}Uses:519Used by:Timeline
Symbol 521 GraphicUsed by:522
Symbol 522 MovieClipUses:521Used by:523
Symbol 523 MovieClip {S3_4_Trans_Front4}Uses:522Used by:Timeline
Symbol 524 GraphicUsed by:525
Symbol 525 MovieClip {S2_3_Trans_Back3}Uses:524Used by:Timeline
Symbol 526 GraphicUsed by:527
Symbol 527 MovieClip {S2_3_Trans_Back4}Uses:526Used by:Timeline
Symbol 528 GraphicUsed by:529
Symbol 529 MovieClip {S2_3_Trans_Back5}Uses:528Used by:Timeline
Symbol 530 GraphicUsed by:531
Symbol 531 MovieClip {S2_3_Trans_Back2}Uses:530Used by:Timeline
Symbol 532 GraphicUsed by:533
Symbol 533 MovieClipUses:532Used by:534
Symbol 534 MovieClip {S2_3_Trans_Front2}Uses:533Used by:Timeline
Symbol 535 GraphicUsed by:536
Symbol 536 MovieClipUses:535Used by:537
Symbol 537 MovieClip {S2_3_Trans_Front3}Uses:536Used by:Timeline
Symbol 538 GraphicUsed by:539
Symbol 539 MovieClipUses:538Used by:540
Symbol 540 MovieClip {S2_3_Trans_Front4}Uses:539Used by:Timeline
Symbol 541 GraphicUsed by:542
Symbol 542 MovieClip {S1_2_Trans2}Uses:541Used by:Timeline
Symbol 543 GraphicUsed by:544
Symbol 544 MovieClip {S1_2_Trans3}Uses:543Used by:Timeline
Symbol 545 GraphicUsed by:546
Symbol 546 MovieClipUses:545Used by:547
Symbol 547 MovieClip {S1_Bg0Chunk_Trans1}Uses:546Used by:Timeline
Symbol 548 GraphicUsed by:549
Symbol 549 MovieClipUses:548Used by:550
Symbol 550 MovieClip {S1_Bg0Chunk_Trans2}Uses:549Used by:Timeline
Symbol 551 GraphicUsed by:552
Symbol 552 MovieClipUses:551Used by:553
Symbol 553 MovieClip {S1_Bg0Chunk_Trans3}Uses:552Used by:Timeline
Symbol 554 MovieClip {S1_Bg0Chunk_Trans4}Uses:451Used by:Timeline
Symbol 555 GraphicUsed by:556
Symbol 556 MovieClip {BgSky1}Uses:555Used by:Timeline
Symbol 557 GraphicUsed by:641
Symbol 558 GraphicUsed by:580
Symbol 559 GraphicUsed by:580
Symbol 560 GraphicUsed by:580
Symbol 561 GraphicUsed by:563
Symbol 562 GraphicUsed by:563
Symbol 563 MovieClipUses:561 562Used by:580
Symbol 564 GraphicUsed by:579
Symbol 565 GraphicUsed by:579
Symbol 566 GraphicUsed by:579
Symbol 567 GraphicUsed by:579
Symbol 568 GraphicUsed by:579
Symbol 569 GraphicUsed by:570
Symbol 570 MovieClipUses:569Used by:579
Symbol 571 GraphicUsed by:572
Symbol 572 MovieClipUses:571Used by:579
Symbol 573 GraphicUsed by:578
Symbol 574 GraphicUsed by:575
Symbol 575 MovieClipUses:574Used by:578
Symbol 576 GraphicUsed by:578
Symbol 577 GraphicUsed by:578
Symbol 578 MovieClipUses:573 575 576 577Used by:579
Symbol 579 MovieClip {penguin_fla.throwingArm_106}Uses:564 565 566 567 568 570 572 578Used by:580
Symbol 580 MovieClipUses:558 559 560 563 579Used by:582
Symbol 581 GraphicUsed by:582
Symbol 582 MovieClipUses:580 581Used by:584
Symbol 583 Sound {SoundPuff}Used by:584  Timeline
Symbol 584 MovieClip {penguin_fla.BossContainer_102}Uses:582 292 583 270 SS1Used by:585
Symbol 585 MovieClip {Boss}Uses:266 584Used by:641
Symbol 586 MovieClip {LevelChunk_DeadEnd_2}Uses:266 270 292Used by:641
Symbol 587 MovieClip {LevelChunk_DeadEnd_3}Uses:266 270 292Used by:641
Symbol 588 MovieClip {LevelChunk_Empty}Uses:266Used by:641
Symbol 589 MovieClip {LevelChunk_FinalZipper}Uses:266 274Used by:641
Symbol 590 MovieClip {LevelChunk_FishIntro2}Uses:266Used by:641
Symbol 591 MovieClip {LevelChunk_Gates_1}Uses:266 270 292Used by:641
Symbol 592 MovieClip {LevelChunk_Gates_5}Uses:266 270 292Used by:641
Symbol 593 MovieClipUses:270Used by:594 622
Symbol 594 MovieClip {LevelChunk_ZipperIntroB_3}Uses:266 593Used by:641
Symbol 595 GraphicUsed by:596 597 598 599 600 621 628 632 639
Symbol 596 MovieClip {LevelChunk_ZipperIntroB_4}Uses:595 270Used by:641
Symbol 597 MovieClip {LevelChunk_ZipperIntroB_5}Uses:595 270Used by:641
Symbol 598 MovieClip {LevelChunk_ZipperIntroB_6}Uses:595 270Used by:641
Symbol 599 MovieClip {LevelChunk_ZipperIntroB_7}Uses:595 270Used by:641
Symbol 600 MovieClip {LevelChunk_ZipperIntroB_8}Uses:595 270Used by:641
Symbol 601 MovieClip {LevelChunk_ZipperJumpingFish}Uses:266 274Used by:641
Symbol 602 MovieClip {LevelChunk_BombIntro_1}Uses:266 292 270Used by:641
Symbol 603 MovieClip {LevelChunk_DeadEnd_1}Uses:266 270 292Used by:641
Symbol 604 MovieClip {LevelChunk_DeadEnd_4}Uses:266 270Used by:641
Symbol 605 MovieClip {LevelChunk_FishIntro1}Uses:266 270Used by:641
Symbol 606 MovieClip {LevelChunk_FishIntro3}Uses:266 270Used by:641
Symbol 607 MovieClip {LevelChunk_Gates_2}Uses:266 270Used by:641
Symbol 608 MovieClip {LevelChunk_Gates_3}Uses:266 270 292Used by:641
Symbol 609 MovieClip {LevelChunk_Gates_4}Uses:266 270 292Used by:641
Symbol 610 MovieClip {LevelChunk_Roof_1}Uses:266 292 270Used by:641
Symbol 611 MovieClip {LevelChunk_Roof_2}Uses:266 270Used by:641
Symbol 612 MovieClip {LevelChunk_Roof_3}Uses:266 270 292Used by:641
Symbol 613 MovieClip {LevelChunk_Roof_4}Uses:266 270Used by:641
Symbol 614 MovieClip {LevelChunk_SineA_1}Uses:266 270Used by:641
Symbol 615 MovieClip {LevelChunk_SineA_2}Uses:266 270Used by:641
Symbol 616 MovieClip {LevelChunk_SineA_3}Uses:266 270Used by:641
Symbol 617 MovieClip {LevelChunk_SineB_1}Uses:270 292Used by:641
Symbol 618 MovieClip {LevelChunk_SineB_2}Uses:266 270Used by:641
Symbol 619 MovieClip {LevelChunk_SineB_3}Uses:266 270 292Used by:641
Symbol 620 MovieClip {LevelChunk_ZipperIntroA_3}Uses:266 274 270Used by:641
Symbol 621 MovieClip {LevelChunk_ZipperIntroA_6}Uses:595 270Used by:641
Symbol 622 MovieClip {LevelChunk_ZipperIntroB_1}Uses:266 593Used by:641
Symbol 623 MovieClipUses:270Used by:624
Symbol 624 MovieClip {LevelChunk_ZipperIntroB_2}Uses:266 623Used by:641
Symbol 625 MovieClip {LevelChunk_ZipperSetA_9}Uses:266 270Used by:641
Symbol 626 MovieClip {LevelChunk_ZipperIntroA_0}Uses:266 270Used by:641
Symbol 627 MovieClip {LevelChunk_ZipperIntroA_1}Uses:266 274 270Used by:641
Symbol 628 MovieClip {LevelChunk_ZipperIntroA_5}Uses:595 270Used by:641
Symbol 629 MovieClip {LevelChunk_ZipperSetA_1}Uses:266 274Used by:641
Symbol 630 MovieClip {LevelChunk_ZipperSetA_2}Uses:266 270Used by:641
Symbol 631 MovieClip {LevelChunk_ZipperSetA_3}Uses:266 270Used by:641
Symbol 632 MovieClip {LevelChunk_ZipperSetA_4}Uses:595 270Used by:641
Symbol 633 GraphicUsed by:634 635 636 637
Symbol 634 MovieClip {LevelChunk_ZipperSetA_5}Uses:633 270Used by:641
Symbol 635 MovieClip {LevelChunk_ZipperSetA_6}Uses:633 270Used by:641
Symbol 636 MovieClip {LevelChunk_ZipperSetA_7}Uses:633 270Used by:641
Symbol 637 MovieClip {LevelChunk_ZipperSetA_8}Uses:633 270Used by:641
Symbol 638 MovieClip {LevelChunk_ZipperSetA_10}Uses:266 274 270Used by:641
Symbol 639 MovieClip {LevelChunk_ZipperIntroA_4}Uses:595 270Used by:641
Symbol 640 MovieClip {LevelChunk_ZipperIntroA_2}Uses:266 270Used by:641
Symbol 641 MovieClip {penguin_fla.ExportHolder_100}Uses:557 585 586 587 588 589 590 591 592 324 323 322 321 320 594 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 624 625 626 627 628 629 630 631 632 634 635 636 637 638 639 640 194Used by:Timeline
Symbol 642 GraphicUsed by:Timeline
Symbol 643 GraphicUsed by:644 645
Symbol 644 MovieClipUses:643Used by:645
Symbol 645 MovieClip {PenguApp}Uses:643 644Used by:Timeline
Streaming Sound 1Used by:Symbol 584 MovieClip {penguin_fla.BossContainer_102}

Instance Names

"preloaderClip"Frame 1Symbol 24 MovieClip
"clouds"Symbol 24 MovieClip Frame 1Symbol 3 MovieClip
"percentText"Symbol 24 MovieClip Frame 1Symbol 6 EditableText
"skipButton"Symbol 51 MovieClip Frame 1Symbol 45 Button
"okButton"Symbol 51 MovieClip Frame 1Symbol 50 Button
"skipButton"Symbol 53 MovieClip Frame 1Symbol 45 Button
"okButton"Symbol 53 MovieClip Frame 1Symbol 50 Button
"skipButton"Symbol 55 MovieClip Frame 1Symbol 45 Button
"okButton"Symbol 55 MovieClip Frame 1Symbol 50 Button
"replayButton"Symbol 61 MovieClip Frame 1Symbol 60 Button
"skipButton"Symbol 62 MovieClip Frame 1Symbol 45 Button
"okButton"Symbol 62 MovieClip Frame 1Symbol 50 Button
"bounceContent"Symbol 94 MovieClip {Digit2} Frame 1Symbol 93 MovieClip {penguin_fla.NumbersPlain_240}
"hundreds"Symbol 95 MovieClip Frame 1Symbol 94 MovieClip {Digit2}
"tens"Symbol 95 MovieClip Frame 1Symbol 94 MovieClip {Digit2}
"ones"Symbol 95 MovieClip Frame 1Symbol 94 MovieClip {Digit2}
"sizeGuide"Symbol 98 MovieClip {SnowPlane2} Frame 1Symbol 97 MovieClip
"ctaChallenge"Symbol 99 MovieClip {ResultScreen} Frame 1Symbol 51 MovieClip
"ctaPost"Symbol 99 MovieClip {ResultScreen} Frame 1Symbol 53 MovieClip
"ctaInvite"Symbol 99 MovieClip {ResultScreen} Frame 1Symbol 55 MovieClip
"ctaReplay"Symbol 99 MovieClip {ResultScreen} Frame 1Symbol 61 MovieClip
"ctaPortal"Symbol 99 MovieClip {ResultScreen} Frame 1Symbol 62 MovieClip
"trophies"Symbol 99 MovieClip {ResultScreen} Frame 1Symbol 72 MovieClip {penguin_fla.Trophies_233}
"scoreBoard"Symbol 99 MovieClip {ResultScreen} Frame 1Symbol 95 MovieClip
"fgSnowPlane"Symbol 99 MovieClip {ResultScreen} Frame 1Symbol 98 MovieClip {SnowPlane2}
"sizeGuide"Symbol 111 MovieClip {SnowPlane} Frame 1Symbol 97 MovieClip
"flag1"Symbol 112 MovieClip {S3_4_Trans_Back2} Frame 1Symbol 108 MovieClip
"trigger_4_e"Symbol 112 MovieClip {S3_4_Trans_Back2} Frame 1Symbol 110 MovieClip {TransitionTrigger}
"flag2"Symbol 112 MovieClip {S3_4_Trans_Back2} Frame 1Symbol 108 MovieClip
"instructionsContent"Symbol 194 MovieClip {Cannon} Frame 1Symbol 149 MovieClip
"trigger_3_c"Symbol 197 MovieClip {S2_3_Trans_Back1} Frame 1Symbol 110 MovieClip {TransitionTrigger}
"trigger_3_d"Symbol 197 MovieClip {S2_3_Trans_Back1} Frame 1Symbol 110 MovieClip {TransitionTrigger}
"trigger_2_c"Symbol 199 MovieClip {S1_2_Trans1} Frame 1Symbol 110 MovieClip {TransitionTrigger}
"trigger_2_d"Symbol 199 MovieClip {S1_2_Trans1} Frame 1Symbol 110 MovieClip {TransitionTrigger}
"shakeContent"Symbol 264 MovieClip {penguin_fla.penguinAnime_mc_209} Frame 1Symbol 210 MovieClip {penguin_fla.PenguinBanking_210}
"contentClip"Symbol 265 MovieClip {Player} Frame 1Symbol 264 MovieClip {penguin_fla.penguinAnime_mc_209}
"holder2"Symbol 291 MovieClip {JumpFishAnim_1_5} Frame 1Symbol 290 MovieClip {penguin_fla.TestFishGroup1_198}
"holder2"Symbol 294 MovieClip {JumpFishAnim_2} Frame 1Symbol 293 MovieClip {penguin_fla.TestFishGroup2_196}
"holder2"Symbol 297 MovieClip {ZipperJumpFishAnim} Frame 1Symbol 296 MovieClip {penguin_fla.TestFishGroupZipperJump_194}
"holder2"Symbol 299 MovieClip {JumpFishAnim_4} Frame 1Symbol 298 MovieClip {penguin_fla.TestFishGroup4_192}
"holder2"Symbol 301 MovieClip {JumpFishAnim_3} Frame 1Symbol 300 MovieClip {penguin_fla.TestFishGroup3_190}
"holder1"Symbol 303 MovieClip {JumpFishAnim_1} Frame 1Symbol 302 MovieClip {penguin_fla.TestFishGroup1_188}
"bounceContent"Symbol 346 MovieClip {Digit1} Frame 1Symbol 345 MovieClip {penguin_fla.NumbersPlainSmall_9}
"fracOnes"Symbol 348 MovieClip {TimeBoard} Frame 1Symbol 346 MovieClip {Digit1}
"tens"Symbol 348 MovieClip {TimeBoard} Frame 1Symbol 346 MovieClip {Digit1}
"ones"Symbol 348 MovieClip {TimeBoard} Frame 1Symbol 346 MovieClip {Digit1}
"fracTens"Symbol 348 MovieClip {TimeBoard} Frame 1Symbol 346 MovieClip {Digit1}
"hundreds"Symbol 353 MovieClip {penguin_fla.ScoreBoardSmall_7} Frame 1Symbol 346 MovieClip {Digit1}
"tens"Symbol 353 MovieClip {penguin_fla.ScoreBoardSmall_7} Frame 1Symbol 346 MovieClip {Digit1}
"ones"Symbol 353 MovieClip {penguin_fla.ScoreBoardSmall_7} Frame 1Symbol 346 MovieClip {Digit1}
"scoreBoard"Symbol 358 MovieClip {Hud} Frame 1Symbol 353 MovieClip {penguin_fla.ScoreBoardSmall_7}
"timeBoard"Symbol 358 MovieClip {Hud} Frame 1Symbol 348 MovieClip {TimeBoard}
"pauseButton"Symbol 358 MovieClip {Hud} Frame 1Symbol 357 Button
"boundingBox_mc"Symbol 364 MovieClip {com.google.analytics.components.FlashTracker} Frame 1Symbol 360 MovieClip
"resumeButton"Symbol 372 MovieClip {PauseMenu} Frame 1Symbol 370 Button
"restartButton"Symbol 372 MovieClip {PauseMenu} Frame 1Symbol 371 Button
"challengeButton"Symbol 435 MovieClip {TitleScreen} Frame 1Symbol 380 Button
"playButton"Symbol 435 MovieClip {TitleScreen} Frame 1Symbol 386 Button
"muteButton"Symbol 435 MovieClip {TitleScreen} Frame 1Symbol 398 Button
"unmuteButton"Symbol 435 MovieClip {TitleScreen} Frame 1Symbol 401 Button
"optusLogo"Symbol 435 MovieClip {TitleScreen} Frame 1Symbol 405 MovieClip
"throwArm"Symbol 580 MovieClip Frame 1Symbol 579 MovieClip {penguin_fla.throwingArm_106}
"bossAnim"Symbol 582 MovieClip Frame 1Symbol 580 MovieClip
"BossContainer"Symbol 584 MovieClip {penguin_fla.BossContainer_102} Frame 1Symbol 582 MovieClip
"prepuffed1"Symbol 584 MovieClip {penguin_fla.BossContainer_102} Frame 109Symbol 292 MovieClip {Puff}
"testCoin1"Symbol 584 MovieClip {penguin_fla.BossContainer_102} Frame 164Symbol 270 MovieClip {Coin}
"prepuffed1"Symbol 584 MovieClip {penguin_fla.BossContainer_102} Frame 246Symbol 292 MovieClip {Puff}
"prepuffed1"Symbol 584 MovieClip {penguin_fla.BossContainer_102} Frame 246Symbol 292 MovieClip {Puff}
"prepuffed6"Symbol 584 MovieClip {penguin_fla.BossContainer_102} Frame 276Symbol 292 MovieClip {Puff}
"prepuffed6"Symbol 584 MovieClip {penguin_fla.BossContainer_102} Frame 276Symbol 292 MovieClip {Puff}
"prepuffed7"Symbol 584 MovieClip {penguin_fla.BossContainer_102} Frame 384Symbol 292 MovieClip {Puff}
"prepuffed6"Symbol 584 MovieClip {penguin_fla.BossContainer_102} Frame 384Symbol 292 MovieClip {Puff}
"prepuffed8"Symbol 584 MovieClip {penguin_fla.BossContainer_102} Frame 465Symbol 292 MovieClip {Puff}
"prepuffed7"Symbol 584 MovieClip {penguin_fla.BossContainer_102} Frame 498Symbol 292 MovieClip {Puff}
"prepuffed6"Symbol 584 MovieClip {penguin_fla.BossContainer_102} Frame 498Symbol 292 MovieClip {Puff}
"prepuffed11"Symbol 584 MovieClip {penguin_fla.BossContainer_102} Frame 552Symbol 292 MovieClip {Puff}
"prepuffed12"Symbol 584 MovieClip {penguin_fla.BossContainer_102} Frame 569Symbol 292 MovieClip {Puff}
"prepuffed13"Symbol 584 MovieClip {penguin_fla.BossContainer_102} Frame 569Symbol 292 MovieClip {Puff}
"prepuffed14"Symbol 584 MovieClip {penguin_fla.BossContainer_102} Frame 598Symbol 292 MovieClip {Puff}
"prepuffed16"Symbol 584 MovieClip {penguin_fla.BossContainer_102} Frame 677Symbol 292 MovieClip {Puff}
"prepuffed16"Symbol 584 MovieClip {penguin_fla.BossContainer_102} Frame 677Symbol 292 MovieClip {Puff}
"prepuffed18"Symbol 584 MovieClip {penguin_fla.BossContainer_102} Frame 697Symbol 292 MovieClip {Puff}
"prepuffed17"Symbol 584 MovieClip {penguin_fla.BossContainer_102} Frame 697Symbol 292 MovieClip {Puff}
"prepuffed19"Symbol 584 MovieClip {penguin_fla.BossContainer_102} Frame 702Symbol 292 MovieClip {Puff}
"prepuffed19"Symbol 584 MovieClip {penguin_fla.BossContainer_102} Frame 712Symbol 292 MovieClip {Puff}
"prepuffed20"Symbol 584 MovieClip {penguin_fla.BossContainer_102} Frame 712Symbol 292 MovieClip {Puff}
"holder2"Symbol 585 MovieClip {Boss} Frame 1Symbol 584 MovieClip {penguin_fla.BossContainer_102}
"holder1"Symbol 594 MovieClip {LevelChunk_ZipperIntroB_3} Frame 1Symbol 593 MovieClip
"holder1"Symbol 622 MovieClip {LevelChunk_ZipperIntroB_1} Frame 1Symbol 593 MovieClip
"holder1"Symbol 624 MovieClip {LevelChunk_ZipperIntroB_2} Frame 1Symbol 623 MovieClip
"gameHolder"Symbol 645 MovieClip {PenguApp} Frame 1Symbol 644 MovieClip
"titleHolder"Symbol 645 MovieClip {PenguApp} Frame 1Symbol 644 MovieClip
"faderHolder"Symbol 645 MovieClip {PenguApp} Frame 1Symbol 644 MovieClip

Special Tags

FileAttributes (69)Timeline Frame 1Access local files only, Metadata not present, AS3.

Labels

"bounce"Symbol 94 MovieClip {Digit2} Frame 4
"fireworks"Symbol 112 MovieClip {S3_4_Trans_Back2} Frame 7
"action"Symbol 194 MovieClip {Cannon} Frame 6
"flying"Symbol 264 MovieClip {penguin_fla.penguinAnime_mc_209} Frame 1
"explode"Symbol 264 MovieClip {penguin_fla.penguinAnime_mc_209} Frame 6
"zip"Symbol 264 MovieClip {penguin_fla.penguinAnime_mc_209} Frame 59
"capture"Symbol 270 MovieClip {Coin} Frame 3
"zip"Symbol 274 MovieClip {Zipper} Frame 4
"bounce"Symbol 346 MovieClip {Digit1} Frame 4
"zipper"Symbol 353 MovieClip {penguin_fla.ScoreBoardSmall_7} Frame 4
"bomb"Symbol 353 MovieClip {penguin_fla.ScoreBoardSmall_7} Frame 43
"shine"Symbol 395 MovieClip {penguin_fla.Title2_20} Frame 47
"exit"Symbol 435 MovieClip {TitleScreen} Frame 88
"throwPuff_medium"Symbol 579 MovieClip {penguin_fla.throwingArm_106} Frame 6
"throwPuff_short"Symbol 579 MovieClip {penguin_fla.throwingArm_106} Frame 27
"throwFish_medium"Symbol 579 MovieClip {penguin_fla.throwingArm_106} Frame 49
"throwFish_short"Symbol 579 MovieClip {penguin_fla.throwingArm_106} Frame 70
"shake"Symbol 645 MovieClip {PenguApp} Frame 3
"overshoot"Symbol 645 MovieClip {PenguApp} Frame 13




http://swfchan.com/21/100528/info.shtml
Created: 10/8 -2019 14:46:31 Last modified: 10/8 -2019 14:46:31 Server time: 22/12 -2024 19:36:40