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

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

Penguin & Yeti - Arctic Bootcamp Blitz.swf

This is the info page for
Flash #234369

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


Text
<p align="left"><font face="Verdana" size="9" color="#000000" letterSpacing="0.000000" kerning="1">You need to set your gameID for the API to work.</font></p>

<p align="left"><font face="Verdana" size="9" color="#000000" letterSpacing="0.000000" kerning="1">For more info visit: </font></p>

<p align="left"><font face="Verdana" size="9" color="#ff0000" letterSpacing="0.000000" kerning="1">http://wiki.gameschart.com</font></p>

100%

Loading

PLAY NOW

LEADERBOARD

PLAY AGAIN

X CLOSE

Loading Scores...

Sending Score...

Problem connecting to server,
please try again later.

name of a player

3000

10

Rank

NickName

score

your
score

name of a player

3000

10

1 / 10

NEXT

BACK

SUBMIT SCORE

Leaderboard

You guys are getting soft.
We need you whipped
into shape pronto.

Kowalski, front and center!

Well sir, we need to navigate this training course as fast and far as possible.

So what's
the plan?

I have the layout here, Come take a closer look.

tRAINING DIRECTION

gET READY TO Move out, soldier,
We have work to do!

Avoid hazards along the way.

Get bonus help from the team.

Use your up and down arrows keys to navigate the course.

collect fish for extra health!

collect medals for extra points!

Private

Kowalski

Rico

Skipper

Choose Your Player

SKIP

PLAY

MENU

QUIT

HELP

Help

RESUME

Are you sure you want to quit?

NO

YES

0

SCORE:

Your mission has proven impossible.

not the success we anticipated!

Not too bad, soldier. There is hope for you yet.

Your final score is:

<p align="center"><font face="Housearama-Kingpin" size="24" color="#287098" letterSpacing="0.000000" kerning="1">0</font></p>

Sound Container

ActionScript [AS3]

Section 1
//AutoLayoutEvent (fl.video.AutoLayoutEvent) package fl.video { import flash.events.*; import flash.geom.*; public class AutoLayoutEvent extends LayoutEvent implements IVPEvent { private var _vp:uint; public static const AUTO_LAYOUT:String = "autoLayout"; public function AutoLayoutEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:Rectangle=null, _arg5:Rectangle=null, _arg6:uint=0){ super(_arg1, _arg2, _arg3, _arg4, _arg5); _vp = _arg6; } public function set vp(_arg1:uint):void{ _vp = _arg1; } public function get vp():uint{ return (_vp); } override public function clone():Event{ return (new AutoLayoutEvent(type, bubbles, cancelable, Rectangle(oldBounds.clone()), Rectangle(oldRegistrationBounds.clone()), vp)); } } }//package fl.video
Section 2
//ConnectClient (fl.video.ConnectClient) package fl.video { import flash.net.*; public class ConnectClient { public var owner:NCManager; public var nc:NetConnection; public var connIndex:uint; public var pending:Boolean; public function ConnectClient(_arg1:NCManager, _arg2:NetConnection, _arg3:uint=0){ this.owner = _arg1; this.nc = _arg2; this.connIndex = _arg3; this.pending = false; } public function onBWCheck(... _args):Number{ return (++owner._payload); } public function close():void{ } public function onBWDone(... _args):void{ var _local2:Number; if (_args.length > 0){ _local2 = _args[0]; }; owner.onConnected(nc, _local2); } } }//package fl.video
Section 3
//ControlData (fl.video.ControlData) package fl.video { import flash.display.*; public class ControlData { public var state_mc:Array; public var origWidth:Number; public var handle_mc:Sprite; public var fullness_mc:DisplayObject; public var state:uint; public var leftMargin:Number; public var isDragging:Boolean; public var currentState_mc:DisplayObject; public var percentage:Number; public var owner:DisplayObject; public var origX:Number; public var origY:Number; public var bottomMargin:Number; public var disabled_mc:DisplayObject; public var enabled:Boolean; public var hit_mc:Sprite; public var origHeight:Number; public var index:int; public var mask_mc:DisplayObject; public var avatar:DisplayObject; public var cachedFocusRect:Boolean; public var captureFocus:Boolean; public var fill_mc:DisplayObject; public var topMargin:Number; public var uiMgr:UIManager; public var progress_mc:DisplayObject; public var rightMargin:Number; public var ctrl:DisplayObject; public var origScaleX:Number; public var origScaleY:Number; public function ControlData(_arg1:UIManager, _arg2:DisplayObject, _arg3:DisplayObject, _arg4:int){ var uiMgr = _arg1; var ctrl = _arg2; var owner = _arg3; var index = _arg4; super(); this.uiMgr = uiMgr; this.index = index; this.ctrl = ctrl; this.owner = owner; try { ctrl["uiMgr"] = uiMgr; } catch(re:ReferenceError) { }; } } }//package fl.video
Section 4
//CuePointManager (fl.video.CuePointManager) package fl.video { public class CuePointManager { flvplayback_internal var _disabledCuePointsByNameOnly:Object; flvplayback_internal var navCuePoints:Array; flvplayback_internal var allCuePoints:Array; flvplayback_internal var _disabledCuePoints:Array; flvplayback_internal var _asCuePointTolerance:Number; flvplayback_internal var _linearSearchTolerance:Number; flvplayback_internal var _asCuePointIndex:int; flvplayback_internal var asCuePoints:Array; flvplayback_internal var flvCuePoints:Array; flvplayback_internal var _metadataLoaded:Boolean; flvplayback_internal var _id:uint; private var _owner:FLVPlayback; flvplayback_internal var eventCuePoints:Array; public static const SHORT_VERSION:String = "2.1"; public static const VERSION:String = "2.1.0.20"; flvplayback_internal static const DEFAULT_LINEAR_SEARCH_TOLERANCE:Number = 50; flvplayback_internal static var cuePointsReplace:Array = ["&quot;", "\"", "&#39;", "'", "&#44;", ",", "&amp;", "&"]; public function CuePointManager(_arg1:FLVPlayback, _arg2:uint){ _owner = _arg1; _id = _arg2; reset(); _asCuePointTolerance = (_owner.getVideoPlayer(_id).playheadUpdateInterval / 2000); _linearSearchTolerance = DEFAULT_LINEAR_SEARCH_TOLERANCE; } flvplayback_internal function getCuePoint(_arg1:Array, _arg2:Boolean, _arg3):Object{ var _local4:Object; switch (typeof(_arg3)){ case "string": _local4 = {name:_arg3}; break; case "number": _local4 = {time:_arg3}; break; case "object": _local4 = _arg3; break; }; var _local5:int = getCuePointIndex(_arg1, _arg2, _local4.time, _local4.name); if (_local5 < 0){ return (null); }; _local4 = deepCopyObject(_arg1[_local5]); _local4.array = _arg1; _local4.index = _local5; return (_local4); } public function resetASCuePointIndex(_arg1:Number):void{ if ((((_arg1 <= 0)) || ((asCuePoints == null)))){ _asCuePointIndex = 0; return; }; var _local2:int = getCuePointIndex(asCuePoints, true, _arg1); _asCuePointIndex = ((asCuePoints[_local2].time)<_arg1) ? (_local2 + 1) : _local2; } public function set playheadUpdateInterval(_arg1:Number):void{ _asCuePointTolerance = (_arg1 / 2000); } flvplayback_internal function addOrDisable(_arg1:Boolean, _arg2:Object):void{ if (_arg1){ if (_arg2.type == CuePointType.ACTIONSCRIPT){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "Cannot disable actionscript cue points")); }; setFLVCuePointEnabled(false, _arg2); } else { if (_arg2.type == CuePointType.ACTIONSCRIPT){ addASCuePoint(_arg2); }; }; } public function processFLVCuePoints(_arg1:Array):void{ var _local2:int; var _local4:Object; _metadataLoaded = true; if ((((_arg1 == null)) || ((_arg1.length < 1)))){ flvCuePoints = null; navCuePoints = null; eventCuePoints = null; return; }; flvCuePoints = _arg1; navCuePoints = new Array(); eventCuePoints = new Array(); var _local3:Number = -1; var _local5:Array = _disabledCuePoints; var _local6:Number = 0; _disabledCuePoints = new Array(); var _local7:int; while ((_local4 = flvCuePoints[_local7++]) != undefined) { if ((((_local3 > 0)) && ((_local3 >= _local4.time)))){ flvCuePoints = null; navCuePoints = null; eventCuePoints = null; _disabledCuePoints = new Array(); _disabledCuePointsByNameOnly = new Object(); throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, ("Unsorted cuePoint found after time: " + _local3))); }; _local3 = _local4.time; while ((((_local6 < _local5.length)) && ((cuePointCompare(_local5[_local6].time, null, _local4) < 0)))) { _local6++; }; if (((!((_disabledCuePointsByNameOnly[_local4.name] == undefined))) || ((((_local6 < _local5.length)) && ((cuePointCompare(_local5[_local6].time, _local5[_local6].name, _local4) == 0)))))){ _disabledCuePoints.push({time:_local4.time, name:_local4.name}); }; if (_local4.type == CuePointType.NAVIGATION){ navCuePoints.push(_local4); } else { if (_local4.type == CuePointType.EVENT){ eventCuePoints.push(_local4); }; }; if ((((allCuePoints == null)) || ((allCuePoints.length < 1)))){ allCuePoints = new Array(); allCuePoints.push(_local4); } else { _local2 = getCuePointIndex(allCuePoints, true, _local4.time); _local2 = ((allCuePoints[_local2].time)>_local4.time) ? 0 : (_local2 + 1); allCuePoints.splice(_local2, 0, _local4); }; }; _disabledCuePointsByNameOnly = new Object(); } public function addASCuePoint(_arg1, _arg2:String=null, _arg3:Object=null):Object{ var _local4:Object; var _local7:int; var _local10:int; if (typeof(_arg1) == "object"){ _local4 = deepCopyObject(_arg1); } else { _local4 = {time:_arg1, name:_arg2, parameters:deepCopyObject(_arg3)}; }; if (_local4.parameters == null){ delete _local4.parameters; }; var _local5:Boolean = ((isNaN(_local4.time)) || ((_local4.time < 0))); if (_local5){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "time must be number")); }; var _local6 = (_local4.name == null); if (_local6){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "name cannot be undefined or null")); }; _local4.type = CuePointType.ACTIONSCRIPT; if ((((asCuePoints == null)) || ((asCuePoints.length < 1)))){ _local7 = 0; asCuePoints = new Array(); asCuePoints.push(_local4); } else { _local7 = getCuePointIndex(asCuePoints, true, _local4.time); _local7 = ((asCuePoints[_local7].time)>_local4.time) ? 0 : (_local7 + 1); asCuePoints.splice(_local7, 0, _local4); }; if ((((allCuePoints == null)) || ((allCuePoints.length < 1)))){ allCuePoints = new Array(); allCuePoints.push(_local4); } else { _local10 = getCuePointIndex(allCuePoints, true, _local4.time); _local10 = ((allCuePoints[_local10].time)>_local4.time) ? 0 : (_local10 + 1); allCuePoints.splice(_local10, 0, _local4); }; var _local8:Number = _owner.getVideoPlayer(_id).playheadTime; if (_local8 > 0){ if (_asCuePointIndex == _local7){ if (_local8 > asCuePoints[_local7].time){ _asCuePointIndex++; }; } else { if (_asCuePointIndex > _local7){ _asCuePointIndex++; }; }; } else { _asCuePointIndex = 0; }; var _local9:Object = deepCopyObject(asCuePoints[_local7]); _local9.array = asCuePoints; _local9.index = _local7; return (_local9); } public function get metadataLoaded():Boolean{ return (_metadataLoaded); } public function reset():void{ _metadataLoaded = false; allCuePoints = null; asCuePoints = null; _disabledCuePoints = new Array(); _disabledCuePointsByNameOnly = new Object(); flvCuePoints = null; navCuePoints = null; eventCuePoints = null; _asCuePointIndex = 0; } public function removeCuePoints(_arg1:Array, _arg2:Object):Number{ var _local3:int; var _local4:Object; var _local5:int; _local3 = getCuePointIndex(_arg1, true, -1, _arg2.name); while (_local3 >= 0) { _local4 = _arg1[_local3]; _arg1.splice(_local3, 1); _local3--; _local5++; _local3 = getNextCuePointIndexWithName(_local4.name, _arg1, _local3); }; return (_local5); } flvplayback_internal function unescape(_arg1:String):String{ var _local2:String = _arg1; var _local3:int; while (_local3 < cuePointsReplace.length) { var _temp1 = _local3; _local3 = (_local3 + 1); var _temp2 = _local3; _local3 = (_local3 + 1); _local2 = _local2.replace(cuePointsReplace[_temp1], cuePointsReplace[_temp2]); }; return (_local2); } public function setFLVCuePointEnabled(_arg1:Boolean, _arg2):int{ var _local3:Object; var _local7:int; var _local8:int; var _local9:Object; switch (typeof(_arg2)){ case "string": _local3 = {name:_arg2}; break; case "number": _local3 = {time:_arg2}; break; case "object": _local3 = _arg2; break; }; var _local4:Boolean = ((isNaN(_local3.time)) || ((_local3.time < 0))); var _local5 = (_local3.name == null); if (((_local4) && (_local5))){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "time must be number and/or name must not be undefined or null")); }; var _local6:uint; if (_local4){ if (!_metadataLoaded){ if (_disabledCuePointsByNameOnly[_local3.name] == undefined){ if (!_arg1){ _disabledCuePointsByNameOnly[_local3.name] = new Array(); }; } else { if (_arg1){ delete _disabledCuePointsByNameOnly[_local3.name]; }; return (-1); }; removeCuePoints(_disabledCuePoints, _local3); return (-1); }; if (_arg1){ _local6 = removeCuePoints(_disabledCuePoints, _local3); } else { _local7 = getCuePointIndex(flvCuePoints, true, -1, _local3.name); while (_local7 >= 0) { _local9 = flvCuePoints[_local7]; _local8 = getCuePointIndex(_disabledCuePoints, true, _local9.time); if ((((_local8 < 0)) || (!((_disabledCuePoints[_local8].time == _local9.time))))){ _disabledCuePoints = insertCuePoint(_local8, _disabledCuePoints, {name:_local9.name, time:_local9.time}); _local6 = (_local6 + 1); }; _local7 = getNextCuePointIndexWithName(_local9.name, flvCuePoints, _local7); }; }; return (_local6); }; _local7 = getCuePointIndex(_disabledCuePoints, false, _local3.time, _local3.name); if (_local7 < 0){ if (_arg1){ if (!_metadataLoaded){ _local7 = getCuePointIndex(_disabledCuePoints, false, _local3.time); if (_local7 < 0){ _local8 = getCuePointIndex(_disabledCuePointsByNameOnly[_local3.name], true, _local3.time); if (cuePointCompare(_local3.time, null, _disabledCuePointsByNameOnly[_local3.name]) != 0){ _disabledCuePointsByNameOnly[_local3.name] = insertCuePoint(_local8, _disabledCuePointsByNameOnly[_local3.name], _local3); }; } else { _disabledCuePoints.splice(_local7, 1); }; }; return ((_metadataLoaded) ? 0 : -1); }; } else { if (_arg1){ _disabledCuePoints.splice(_local7, 1); _local6 = 1; } else { _local6 = 0; }; return ((_metadataLoaded) ? _local6 : -1); }; if (_metadataLoaded){ _local7 = getCuePointIndex(flvCuePoints, false, _local3.time, _local3.name); if (_local7 < 0){ return (0); }; if (_local5){ _local3.name = flvCuePoints[_local7].name; }; }; _local8 = getCuePointIndex(_disabledCuePoints, true, _local3.time); _disabledCuePoints = insertCuePoint(_local8, _disabledCuePoints, _local3); _local6 = 1; return ((_metadataLoaded) ? _local6 : -1); } public function isFLVCuePointEnabled(_arg1):Boolean{ var _local2:Object; var _local5:int; if (!_metadataLoaded){ return (true); }; switch (typeof(_arg1)){ case "string": _local2 = {name:_arg1}; break; case "number": _local2 = {time:_arg1}; break; case "object": _local2 = _arg1; break; }; var _local3:Boolean = ((isNaN(_local2.time)) || ((_local2.time < 0))); var _local4 = (_local2.name == null); if (((_local3) && (_local4))){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "time must be number and/or name must not be undefined or null")); }; if (_local3){ _local5 = getCuePointIndex(flvCuePoints, true, -1, _local2.name); if (_local5 < 0){ return (true); }; while (_local5 >= 0) { if (getCuePointIndex(_disabledCuePoints, false, flvCuePoints[_local5].time, flvCuePoints[_local5].name) < 0){ return (true); }; _local5 = getNextCuePointIndexWithName(_local2.name, flvCuePoints, _local5); }; return (false); }; return ((getCuePointIndex(_disabledCuePoints, false, _local2.time, _local2.name) < 0)); } public function removeASCuePoint(_arg1):Object{ var _local2:Object; if ((((asCuePoints == null)) || ((asCuePoints.length < 1)))){ return (null); }; switch (typeof(_arg1)){ case "string": _local2 = {name:_arg1}; break; case "number": _local2 = {time:_arg1}; break; case "object": _local2 = _arg1; break; }; var _local3:int = getCuePointIndex(asCuePoints, false, _local2.time, _local2.name); if (_local3 < 0){ return (null); }; _local2 = asCuePoints[_local3]; asCuePoints.splice(_local3, 1); _local3 = getCuePointIndex(allCuePoints, false, _local2.time, _local2.name); if (_local3 > 0){ allCuePoints.splice(_local3, 1); }; if (_owner.getVideoPlayer(_id).playheadTime > 0){ if (_asCuePointIndex > _local3){ _asCuePointIndex--; }; } else { _asCuePointIndex = 0; }; return (_local2); } public function get id():uint{ return (_id); } public function processCuePointsProperty(_arg1:Array):void{ var _local3:uint; var _local4:String; var _local5:String; var _local6:Object; var _local7:Boolean; if ((((_arg1 == null)) || ((_arg1.length == 0)))){ return; }; var _local2:uint; var _local8:int; while (_local8 < (_arg1.length - 1)) { switch (_local2){ case 6: addOrDisable(_local7, _local6); _local2 = 0; case 0: var _temp1 = _local8; _local8 = (_local8 + 1); if (_arg1[_temp1] != "t"){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "unexpected cuePoint parameter format")); }; if (isNaN(_arg1[_local8])){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "time must be number")); }; _local6 = new Object(); _local6.time = (_arg1[_local8] / 1000); _local2++; break; case 1: var _temp2 = _local8; _local8 = (_local8 + 1); if (_arg1[_temp2] != "n"){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "unexpected cuePoint parameter format")); }; if (_arg1[_local8] == undefined){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "name cannot be null or undefined")); }; _local6.name = unescape(_arg1[_local8]); _local2++; break; case 2: var _temp3 = _local8; _local8 = (_local8 + 1); if (_arg1[_temp3] != "t"){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "unexpected cuePoint parameter format")); }; if (isNaN(_arg1[_local8])){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "type must be number")); }; switch (_arg1[_local8]){ case 0: _local6.type = CuePointType.EVENT; break; case 1: _local6.type = CuePointType.NAVIGATION; break; case 2: _local6.type = CuePointType.ACTIONSCRIPT; break; default: throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "type must be 0, 1 or 2")); }; _local2++; break; case 3: var _temp4 = _local8; _local8 = (_local8 + 1); if (_arg1[_temp4] != "d"){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "unexpected cuePoint parameter format")); }; if (isNaN(_arg1[_local8])){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "disabled must be number")); }; _local7 = !((_arg1[_local8] == 0)); _local2++; break; case 4: var _temp5 = _local8; _local8 = (_local8 + 1); if (_arg1[_temp5] != "p"){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "unexpected cuePoint parameter format")); }; if (isNaN(_arg1[_local8])){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "num params must be number")); }; _local3 = _arg1[_local8]; _local2++; if (_local3 == 0){ _local2++; } else { _local6.parameters = new Object(); }; break; case 5: var _temp6 = _local8; _local8 = (_local8 + 1); _local4 = _arg1[_temp6]; _local5 = _arg1[_local8]; if ((_local4 is String)){ _local4 = unescape(_local4); }; if ((_local5 is String)){ _local5 = unescape(_local5); }; _local6.parameters[_local4] = _local5; _local3--; if (_local3 == 0){ _local2++; }; break; }; _local8++; }; if (_local2 == 6){ addOrDisable(_local7, _local6); } else { throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "unexpected end of cuePoint param string")); }; } flvplayback_internal function getNextCuePointIndexWithName(_arg1:String, _arg2:Array, _arg3:int):int{ var _local4:int; if (_arg1 == null){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "name cannot be undefined or null")); }; if (_arg2 == null){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "cuePoint.array undefined")); }; if (((((isNaN(_arg3)) || ((_arg3 < -1)))) || ((_arg3 >= _arg2.length)))){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "cuePoint.index must be number between -1 and cuePoint.array.length")); }; _local4 = (_arg3 + 1); while (_local4 < _arg2.length) { if (_arg2[_local4].name == _arg1){ break; }; _local4++; }; if (_local4 < _arg2.length){ return (_local4); }; return (-1); } public function dispatchASCuePoints():void{ var _local1:Number = _owner.getVideoPlayer(_id).playheadTime; if (((_owner.getVideoPlayer(_id).stateResponsive) && (!((asCuePoints == null))))){ while ((((_asCuePointIndex < asCuePoints.length)) && ((asCuePoints[_asCuePointIndex].time <= (_local1 + _asCuePointTolerance))))) { _owner.dispatchEvent(new MetadataEvent(MetadataEvent.CUE_POINT, false, false, deepCopyObject(asCuePoints[_asCuePointIndex++]), _id)); }; }; } flvplayback_internal function getNextCuePointWithName(_arg1:Object):Object{ if (_arg1 == null){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "cuePoint parameter undefined")); }; if (((isNaN(_arg1.time)) || ((_arg1.time < 0)))){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "time must be number")); }; var _local2:int = getNextCuePointIndexWithName(_arg1.name, _arg1.array, _arg1.index); if (_local2 < 0){ return (null); }; var _local3:Object = deepCopyObject(_arg1.array[_local2]); _local3.array = _arg1.array; _local3.index = _local2; return (_local3); } public function insertCuePoint(_arg1:int, _arg2:Array, _arg3:Object):Array{ if (_arg1 < 0){ _arg2 = new Array(); _arg2.push(_arg3); } else { if (_arg2[_arg1].time > _arg3.time){ _arg1 = 0; } else { _arg1++; }; _arg2.splice(_arg1, 0, _arg3); }; return (_arg2); } flvplayback_internal function getCuePointIndex(_arg1:Array, _arg2:Boolean, _arg3:Number=NaN, _arg4:String=null, _arg5:int=-1, _arg6:int=-1):int{ var _local9:int; var _local12:int; var _local13:int; var _local14:int; var _local15:int; if ((((_arg1 == null)) || ((_arg1.length < 1)))){ return (-1); }; var _local7:Boolean = ((isNaN(_arg3)) || ((_arg3 < 0))); var _local8 = (_arg4 == null); if (((_local7) && (_local8))){ throw (new VideoError(VideoError.ILLEGAL_CUE_POINT, "time must be number and/or name must not be undefined or null")); }; if (_arg5 < 0){ _arg5 = 0; }; if (_arg6 < 0){ _arg6 = _arg1.length; }; if (((!(_local8)) && (((_arg2) || (_local7))))){ if (_local7){ _local12 = _arg5; } else { _local12 = getCuePointIndex(_arg1, _arg2, _arg3); }; _local13 = _local12; while (_local13 >= _arg5) { if (_arg1[_local13].name == _arg4){ break; }; _local13--; }; if (_local13 >= _arg5){ return (_local13); }; _local13 = (_local12 + 1); while (_local13 < _arg6) { if (_arg1[_local13].name == _arg4){ break; }; _local13++; }; if (_local13 < _arg6){ return (_local13); }; return (-1); }; if (_arg6 <= _linearSearchTolerance){ _local14 = (_arg5 + _arg6); _local15 = _arg5; while (_local15 < _local14) { _local9 = cuePointCompare(_arg3, _arg4, _arg1[_local15]); if (_local9 == 0){ return (_local15); }; if (_local9 < 0){ break; }; _local15++; }; if (_arg2){ if (_local15 > 0){ return ((_local15 - 1)); }; return (0); }; return (-1); }; var _local10:int = int((_arg6 / 2)); var _local11:int = (_arg5 + _local10); _local9 = cuePointCompare(_arg3, _arg4, _arg1[_local11]); if (_local9 < 0){ return (getCuePointIndex(_arg1, _arg2, _arg3, _arg4, _arg5, _local10)); }; if (_local9 > 0){ return (getCuePointIndex(_arg1, _arg2, _arg3, _arg4, (_local11 + 1), ((_local10 - 1) + (_arg6 % 2)))); }; return (_local11); } flvplayback_internal static function deepCopyObject(_arg1:Object, _arg2:uint=0):Object{ var _local4:*; if (_arg1 == null){ return (_arg1); }; var _local3:Object = new Object(); for (_local4 in _arg1) { if ((((_arg2 == 0)) && ((((_local4 == "array")) || ((_local4 == "index")))))){ } else { if (typeof(_arg1[_local4]) == "object"){ _local3[_local4] = deepCopyObject(_arg1[_local4], (_arg2 + 1)); } else { _local3[_local4] = _arg1[_local4]; }; }; }; return (_local3); } flvplayback_internal static function cuePointCompare(_arg1:Number, _arg2:String, _arg3:Object):int{ var _local4:Number = Math.round((_arg1 * 1000)); var _local5:Number = Math.round((_arg3.time * 1000)); if (_local4 < _local5){ return (-1); }; if (_local4 > _local5){ return (1); }; if (_arg2 != null){ if (_arg2 == _arg3.name){ return (0); }; if (_arg2 < _arg3.name){ return (-1); }; return (1); }; return (0); } } }//package fl.video
Section 5
//CuePointType (fl.video.CuePointType) package fl.video { public final class CuePointType { public static const FLV:String = "flv"; public static const ALL:String = "all"; public static const ACTIONSCRIPT:String = "actionscript"; public static const EVENT:String = "event"; public static const NAVIGATION:String = "navigation"; } }//package fl.video
Section 6
//FLVPlayback (fl.video.FLVPlayback) package fl.video { import flash.display.*; import flash.events.*; import flash.geom.*; import flash.net.*; import flash.media.*; import flash.utils.*; public class FLVPlayback extends Sprite { private var _playheadUpdateInterval:Number; private var _align:String; flvplayback_internal var videoPlayerStateDict:Dictionary; flvplayback_internal var cuePointMgrs:Array; private var _volume:Number; flvplayback_internal var videoPlayerStates:Array; private var _origHeight:Number; private var _progressInterval:Number; private var _origWidth:Number; private var _seekToPrevOffset:Number; private var _scaleMode:String; flvplayback_internal var resizingNow:Boolean; flvplayback_internal var videoPlayers:Array; private var _bufferTime:Number; private var _aspectRatio:Boolean; flvplayback_internal var uiMgr:UIManager; private var previewImage_mc:Loader; private var _autoRewind:Boolean; private var _componentInspectorSetting:Boolean; flvplayback_internal var _firstStreamShown:Boolean; private var _visibleVP:uint; private var _idleTimeout:Number; private var _soundTransform:SoundTransform; flvplayback_internal var skinShowTimer:Timer; public var boundingBox_mc:DisplayObject; private var preview_mc:MovieClip; private var livePreviewHeight:Number; flvplayback_internal var _firstStreamReady:Boolean; private var _activeVP:uint; private var isLivePreview:Boolean; private var _topVP:uint; private var livePreviewWidth:Number; private var __forceNCMgr:NCManager; private var previewImageUrl:String; public static const SEEK_TO_PREV_OFFSET_DEFAULT:Number = 1; public static const SHORT_VERSION:String = "2.1"; flvplayback_internal static const skinShowTimerInterval:Number = 2000; public static const VERSION:String = "2.1.0.20"; flvplayback_internal static const DEFAULT_SKIN_SHOW_TIMER_INTERVAL:Number = 2000; public function FLVPlayback(){ mouseEnabled = false; isLivePreview = ((!((parent == null))) && ((getQualifiedClassName(parent) == "fl.livepreview::LivePreviewParent"))); _componentInspectorSetting = false; var _local1:Number = rotation; rotation = 0; _origWidth = super.width; _origHeight = super.height; super.scaleX = 1; super.scaleY = 1; rotation = _local1; var _local2:VideoPlayer = new VideoPlayer(0, 0); _local2.setSize(_origWidth, _origHeight); videoPlayers = new Array(); videoPlayers[0] = _local2; _align = _local2.align; _autoRewind = _local2.autoRewind; _scaleMode = _local2.scaleMode; _bufferTime = _local2.bufferTime; _idleTimeout = _local2.idleTimeout; _playheadUpdateInterval = _local2.playheadUpdateInterval; _progressInterval = _local2.progressInterval; _soundTransform = _local2.soundTransform; _volume = _local2.volume; _seekToPrevOffset = SEEK_TO_PREV_OFFSET_DEFAULT; _firstStreamReady = false; _firstStreamShown = false; resizingNow = false; uiMgr = new UIManager(this); if (isLivePreview){ uiMgr.visible = true; }; _activeVP = 0; _visibleVP = 0; _topVP = 0; videoPlayerStates = new Array(); videoPlayerStateDict = new Dictionary(true); cuePointMgrs = new Array(); createVideoPlayer(0); boundingBox_mc.visible = false; removeChild(boundingBox_mc); boundingBox_mc = null; if (isLivePreview){ previewImageUrl = ""; createLivePreviewMovieClip(); setSize(_origWidth, _origHeight); }; } public function setScale(_arg1:Number, _arg2:Number):void{ var _local6:VideoPlayer; var _local3:Rectangle = new Rectangle(x, y, width, height); var _local4:Rectangle = new Rectangle(registrationX, registrationY, registrationWidth, registrationHeight); resizingNow = true; var _local5:int; while (_local5 < videoPlayers.length) { _local6 = videoPlayers[_local5]; if (_local6 !== null){ _local6.setSize((_origWidth * _arg1), (_origWidth * _arg2)); }; _local5++; }; resizingNow = false; dispatchEvent(new LayoutEvent(LayoutEvent.LAYOUT, false, false, _local3, _local4)); } public function stop():void{ var _local1:VideoPlayerState; var _local2:VideoPlayer; if (!_firstStreamShown){ _local1 = videoPlayerStates[_activeVP]; queueCmd(_local1, QueuedCommand.STOP); } else { _local2 = videoPlayers[_activeVP]; _local2.stop(); }; } public function set align(_arg1:String):void{ if (_activeVP == 0){ _align = _arg1; }; var _local2:VideoPlayer = videoPlayers[_activeVP]; _local2.align = _arg1; } public function getVideoPlayer(_arg1:Number):VideoPlayer{ return (videoPlayers[_arg1]); } public function get playheadTime():Number{ var _local1:VideoPlayer = videoPlayers[_activeVP]; return (_local1.playheadTime); } public function get seekBarScrubTolerance():Number{ return (uiMgr.seekBarScrubTolerance); } public function get progressInterval():Number{ var _local1:VideoPlayer = videoPlayers[_activeVP]; return (_local1.progressInterval); } public function set skinFadeTime(_arg1:int):void{ uiMgr.skinFadeTime = _arg1; } public function get scaleMode():String{ var _local1:VideoPlayer = videoPlayers[_activeVP]; return (_local1.scaleMode); } public function get skinFadeTime():int{ return (uiMgr.skinFadeTime); } public function get seekToPrevOffset():Number{ return (_seekToPrevOffset); } public function set scaleMode(_arg1:String):void{ if (_activeVP == 0){ _scaleMode = _arg1; }; var _local2:VideoPlayer = videoPlayers[_activeVP]; _local2.scaleMode = _arg1; } public function get source():String{ var _local1:VideoPlayerState = videoPlayerStates[_activeVP]; if (_local1.isWaiting){ return (_local1.url); }; var _local2:VideoPlayer = videoPlayers[_activeVP]; return (_local2.source); } public function get activeVideoPlayerIndex():uint{ return (_activeVP); } public function set bufferingBar(_arg1:Sprite):void{ uiMgr.setControl(UIManager.BUFFERING_BAR, _arg1); } public function get ncMgr():INCManager{ var _local1:VideoPlayer = videoPlayers[_activeVP]; return (_local1.ncMgr); } public function closeVideoPlayer(_arg1:uint):void{ if (_arg1 == 0){ throw (new VideoError(VideoError.DELETE_DEFAULT_PLAYER)); }; if (videoPlayers[_arg1] == undefined){ return; }; var _local2:VideoPlayer = videoPlayers[_arg1]; if (_visibleVP == _arg1){ visibleVideoPlayerIndex = 0; }; if (_activeVP == _arg1){ activeVideoPlayerIndex = 0; }; removeChild(_local2); _local2.close(); delete videoPlayers[_arg1]; delete videoPlayerStates[_arg1]; delete videoPlayerStateDict[_local2]; } public function assignTabIndexes(_arg1:int):int{ if (tabIndex){ tabEnabled = false; tabChildren = true; if (isNaN(_arg1)){ _arg1 = tabIndex; }; }; var _local2:int = uiMgr.assignTabIndexes(_arg1); return (_local2); } public function set progressInterval(_arg1:Number):void{ if (_activeVP == 0){ _progressInterval = _arg1; }; var _local2:VideoPlayer = videoPlayers[_activeVP]; _local2.progressInterval = _arg1; } public function get metadataLoaded():Boolean{ var _local1:CuePointManager = cuePointMgrs[_activeVP]; return (_local1.metadataLoaded); } public function get playing():Boolean{ return ((state == VideoState.PLAYING)); } public function set playheadTime(_arg1:Number):void{ seek(_arg1); } public function get totalTime():Number{ if (isLivePreview){ return (1); }; var _local1:VideoPlayerState = videoPlayerStates[_activeVP]; if (_local1.totalTimeSet){ return (_local1.totalTime); }; var _local2:VideoPlayer = videoPlayers[_activeVP]; return (_local2.totalTime); } public function set seekToPrevOffset(_arg1:Number):void{ _seekToPrevOffset = _arg1; } public function set volume(_arg1:Number):void{ var _local2:VideoPlayer; if (_volume == _arg1){ return; }; _volume = _arg1; if (!scrubbing){ _local2 = videoPlayers[_visibleVP]; _local2.volume = _volume; }; dispatchEvent(new SoundEvent(SoundEvent.SOUND_UPDATE, false, false, _local2.soundTransform)); } public function get skinAutoHide():Boolean{ return (uiMgr.skinAutoHide); } public function set source(_arg1:String):void{ var _local2:VideoPlayerState; var _local3:CuePointManager; if (isLivePreview){ return; }; if (_arg1 == null){ _arg1 = ""; }; if (_componentInspectorSetting){ _local2 = videoPlayerStates[_activeVP]; _local2.url = _arg1; if (_arg1.length > 0){ _local2.isWaiting = true; addEventListener(Event.ENTER_FRAME, doContentPathConnect); }; } else { if (source == _arg1){ return; }; _local3 = cuePointMgrs[_activeVP]; _local3.reset(); _local2 = videoPlayerStates[_activeVP]; _local2.url = _arg1; _local2.isWaiting = true; doContentPathConnect(_activeVP); }; } public function set activeVideoPlayerIndex(_arg1:uint):void{ if (_activeVP == _arg1){ return; }; _activeVP = _arg1; if (videoPlayers[_activeVP] == undefined){ createVideoPlayer(_activeVP); }; } override public function set soundTransform(_arg1:SoundTransform):void{ if (_arg1 == null){ return; }; _volume = _arg1.volume; _soundTransform.volume = (scrubbing) ? 0 : _arg1.volume; _soundTransform.leftToLeft = _arg1.leftToLeft; _soundTransform.leftToRight = _arg1.leftToRight; _soundTransform.rightToLeft = _arg1.rightToLeft; _soundTransform.rightToRight = _arg1.rightToRight; var _local2:VideoPlayer = videoPlayers[_activeVP]; _local2.soundTransform = _soundTransform; dispatchEvent(new SoundEvent(SoundEvent.SOUND_UPDATE, false, false, _local2.soundTransform)); } public function get endTabIndex():int{ return (uiMgr.endTabIndex); } public function seekToNavCuePoint(_arg1):void{ var _local2:Object; if ((_arg1 is String)){ _local2 = {name:String(_arg1)}; } else { if ((_arg1 is Number)){ _local2 = {time:Number(_arg1)}; } else { _local2 = _arg1; }; }; if (_local2.name == undefined){ seekToNextNavCuePoint(_local2.time); return; }; if (isNaN(_local2.time)){ _local2.time = 0; }; var _local3:Object = findNearestCuePoint(_arg1, CuePointType.NAVIGATION); while (((!((_local3 == null))) && ((((_local3.time < _local2.time)) || (!(isFLVCuePointEnabled(_local3))))))) { _local3 = findNextCuePointWithName(_local3); }; if (_local3 == null){ throw (new VideoError(VideoError.INVALID_SEEK)); }; seek(_local3.time); } override public function set height(_arg1:Number):void{ var _local5:VideoPlayer; if (isLivePreview){ setSize(this.width, _arg1); return; }; var _local2:Rectangle = new Rectangle(x, y, width, height); var _local3:Rectangle = new Rectangle(registrationX, registrationY, registrationWidth, registrationHeight); resizingNow = true; var _local4:int; while (_local4 < videoPlayers.length) { _local5 = videoPlayers[_local4]; if (_local5 != null){ _local5.height = _arg1; }; _local4++; }; resizingNow = false; dispatchEvent(new LayoutEvent(LayoutEvent.LAYOUT, false, false, _local2, _local3)); } override public function get scaleY():Number{ var _local1:VideoPlayer = videoPlayers[_visibleVP]; return ((_local1.height / _origHeight)); } public function get bytesLoaded():uint{ var _local1:VideoPlayer = videoPlayers[_activeVP]; return (_local1.bytesLoaded); } override public function get scaleX():Number{ var _local1:VideoPlayer = videoPlayers[_visibleVP]; return ((_local1.width / _origWidth)); } public function get forwardButton():Sprite{ return (uiMgr.getControl(UIManager.FORWARD_BUTTON)); } public function get seekBarInterval():Number{ return (uiMgr.seekBarInterval); } public function set bufferTime(_arg1:Number):void{ var _local2:VideoPlayer = videoPlayers[_activeVP]; _local2.bufferTime = _arg1; } public function set totalTime(_arg1:Number):void{ var _local2:VideoPlayerState = videoPlayerStates[_activeVP]; _local2.totalTime = _arg1; _local2.totalTimeSet = true; } public function set skinAutoHide(_arg1:Boolean):void{ if (isLivePreview){ return; }; uiMgr.skinAutoHide = _arg1; } flvplayback_internal function queueCmd(_arg1:VideoPlayerState, _arg2:Number, _arg3:Number=NaN):void{ if (_arg1.cmdQueue == null){ _arg1.cmdQueue = new Array(); }; _arg1.cmdQueue.push(new QueuedCommand(_arg2, null, false, _arg3)); } public function get fullScreenSkinDelay():int{ return (uiMgr.fullScreenSkinDelay); } public function set isLive(_arg1:Boolean):void{ var _local2:VideoPlayerState = videoPlayerStates[_activeVP]; _local2.isLive = _arg1; _local2.isLiveSet = true; } private function onCompletePreview(_arg1:Event):void{ var e = _arg1; try { previewImage_mc.width = livePreviewWidth; previewImage_mc.height = livePreviewHeight; } catch(e:Error) { }; } flvplayback_internal function showSkinNow(_arg1:TimerEvent):void{ skinShowTimer = null; uiMgr.visible = true; } override public function get y():Number{ var _local1:VideoPlayer = videoPlayers[_visibleVP]; return ((super.y + _local1.y)); } public function get seekBar():Sprite{ return (uiMgr.getControl(UIManager.SEEK_BAR)); } public function get volumeBarInterval():Number{ return (uiMgr.volumeBarInterval); } public function seek(_arg1:Number):void{ var _local3:VideoPlayer; var _local2:VideoPlayerState = videoPlayerStates[_activeVP]; if (!_firstStreamShown){ _local2.preSeekTime = 0; queueCmd(_local2, QueuedCommand.SEEK, _arg1); } else { _local2.preSeekTime = playheadTime; _local3 = videoPlayers[_activeVP]; _local3.seek(_arg1); }; } public function set registrationHeight(_arg1:Number):void{ height = _arg1; } public function get bufferingBarHidesAndDisablesOthers():Boolean{ return (uiMgr.bufferingBarHidesAndDisablesOthers); } flvplayback_internal function skinError(_arg1:String):void{ if (isLivePreview){ return; }; if (((_firstStreamReady) && (!(_firstStreamShown)))){ showFirstStream(); }; dispatchEvent(new SkinErrorEvent(SkinErrorEvent.SKIN_ERROR, false, false, _arg1)); } public function get registrationWidth():Number{ var _local1:VideoPlayer = videoPlayers[_visibleVP]; return (_local1.registrationWidth); } override public function get x():Number{ var _local1:VideoPlayer = videoPlayers[_visibleVP]; return ((super.x + _local1.x)); } public function get state():String{ if (isLivePreview){ return (VideoState.STOPPED); }; var _local1:VideoPlayer = videoPlayers[_activeVP]; if ((((_activeVP == _visibleVP)) && (scrubbing))){ return (VideoState.SEEKING); }; var _local2:String = _local1.state; if (_local2 == VideoState.RESIZING){ return (VideoState.LOADING); }; var _local3:VideoPlayerState = videoPlayerStates[_activeVP]; if ((((((_local3.prevState == VideoState.LOADING)) && (_local3.autoPlay))) && ((_local2 == VideoState.STOPPED)))){ return (VideoState.LOADING); }; return (_local2); } public function set autoRewind(_arg1:Boolean):void{ if (_activeVP == 0){ _autoRewind = _arg1; }; var _local2:VideoPlayer = videoPlayers[_activeVP]; _local2.autoRewind = _arg1; } public function get volumeBar():Sprite{ return (uiMgr.getControl(UIManager.VOLUME_BAR)); } override public function set scaleY(_arg1:Number):void{ var _local5:VideoPlayer; var _local2:Rectangle = new Rectangle(x, y, width, height); var _local3:Rectangle = new Rectangle(registrationX, registrationY, registrationWidth, registrationHeight); resizingNow = true; var _local4:int; while (_local4 < videoPlayers.length) { _local5 = videoPlayers[_local4]; if (_local5 !== null){ _local5.height = (_origHeight * _arg1); }; _local4++; }; resizingNow = false; dispatchEvent(new LayoutEvent(LayoutEvent.LAYOUT, false, false, _local2, _local3)); } flvplayback_internal function createVideoPlayer(_arg1:Number):void{ var skinDepth:int; var index = _arg1; if (isLivePreview){ return; }; var vp:VideoPlayer = videoPlayers[index]; if (vp == null){ var _local3 = new VideoPlayer(0, 0); vp = _local3; videoPlayers[index] = _local3; vp.setSize(registrationWidth, registrationHeight); }; vp.visible = false; vp.volume = 0; vp.name = String(index); var added:Boolean; if (uiMgr.skin_mc != null){ try { skinDepth = getChildIndex(uiMgr.skin_mc); if (skinDepth > 0){ addChildAt(vp, skinDepth); added = true; }; } catch(err:Error) { }; }; if (!added){ addChild(vp); }; _topVP = index; vp.autoRewind = _autoRewind; vp.scaleMode = _scaleMode; vp.bufferTime = _bufferTime; vp.idleTimeout = _idleTimeout; vp.playheadUpdateInterval = _playheadUpdateInterval; vp.progressInterval = _progressInterval; vp.soundTransform = _soundTransform; var vpState:VideoPlayerState = new VideoPlayerState(vp, index); videoPlayerStates[index] = vpState; videoPlayerStateDict[vp] = vpState; vp.addEventListener(AutoLayoutEvent.AUTO_LAYOUT, handleAutoLayoutEvent); vp.addEventListener(MetadataEvent.CUE_POINT, handleMetadataEvent); vp.addEventListener(MetadataEvent.METADATA_RECEIVED, handleMetadataEvent); vp.addEventListener(VideoProgressEvent.PROGRESS, handleVideoProgressEvent); vp.addEventListener(VideoEvent.AUTO_REWOUND, handleVideoEvent); vp.addEventListener(VideoEvent.CLOSE, handleVideoEvent); vp.addEventListener(VideoEvent.COMPLETE, handleVideoEvent); vp.addEventListener(VideoEvent.PLAYHEAD_UPDATE, handleVideoEvent); vp.addEventListener(VideoEvent.STATE_CHANGE, handleVideoEvent); vp.addEventListener(VideoEvent.READY, handleVideoEvent); var cpMgr:CuePointManager = new CuePointManager(this, index); cuePointMgrs[index] = cpMgr; cpMgr.playheadUpdateInterval = _playheadUpdateInterval; } public function findNearestCuePoint(_arg1, _arg2:String="all"):Object{ var _local3:CuePointManager = cuePointMgrs[_activeVP]; switch (_arg2){ case "event": return (_local3.getCuePoint(_local3.eventCuePoints, true, _arg1)); case "navigation": return (_local3.getCuePoint(_local3.navCuePoints, true, _arg1)); case "flv": return (_local3.getCuePoint(_local3.flvCuePoints, true, _arg1)); case "actionscript": return (_local3.getCuePoint(_local3.asCuePoints, true, _arg1)); case "all": default: return (_local3.getCuePoint(_local3.allCuePoints, true, _arg1)); }; } override public function set scaleX(_arg1:Number):void{ var _local5:VideoPlayer; var _local2:Rectangle = new Rectangle(x, y, width, height); var _local3:Rectangle = new Rectangle(registrationX, registrationY, registrationWidth, registrationHeight); resizingNow = true; var _local4:int; while (_local4 < videoPlayers.length) { _local5 = videoPlayers[_local4]; if (_local5 !== null){ _local5.width = (_origWidth * _arg1); }; _local4++; }; resizingNow = false; dispatchEvent(new LayoutEvent(LayoutEvent.LAYOUT, false, false, _local2, _local3)); } public function get muteButton():Sprite{ return (uiMgr.getControl(UIManager.MUTE_BUTTON)); } public function seekPercent(_arg1:Number):void{ var _local2:VideoPlayer = videoPlayers[_activeVP]; if (((((((((isNaN(_arg1)) || ((_arg1 < 0)))) || ((_arg1 > 100)))) || (isNaN(_local2.totalTime)))) || ((_local2.totalTime <= 0)))){ throw (new VideoError(VideoError.INVALID_SEEK)); }; seek(((_local2.totalTime * _arg1) / 100)); } public function set forwardButton(_arg1:Sprite):void{ uiMgr.setControl(UIManager.FORWARD_BUTTON, _arg1); } private function doContentPathConnect(_arg1):void{ if (isLivePreview){ return; }; var _local2:int; if ((_arg1 is int)){ _local2 = int(_arg1); } else { removeEventListener(Event.ENTER_FRAME, doContentPathConnect); }; var _local3:VideoPlayer = videoPlayers[_local2]; var _local4:VideoPlayerState = videoPlayerStates[_local2]; if (!_local4.isWaiting){ return; }; if (((_local4.autoPlay) && (_firstStreamShown))){ _local3.play(_local4.url, _local4.totalTime, _local4.isLive); } else { _local3.load(_local4.url, _local4.totalTime, _local4.isLive); }; _local4.isLiveSet = false; _local4.totalTimeSet = false; _local4.isWaiting = false; } public function get registrationX():Number{ return (super.x); } public function get registrationY():Number{ return (super.y); } public function bringVideoPlayerToFront(_arg1:uint):void{ var skinDepth:int; var index = _arg1; if (index == _topVP){ return; }; var vp:VideoPlayer = videoPlayers[index]; if (vp == null){ createVideoPlayer(index); vp = videoPlayers[index]; }; var moved:Boolean; if (uiMgr.skin_mc != null){ try { skinDepth = getChildIndex(uiMgr.skin_mc); if (skinDepth > 0){ setChildIndex(vp, (skinDepth - 1)); moved = true; }; } catch(err:Error) { }; }; if (!moved){ setChildIndex(vp, (numChildren - 1)); }; _topVP = index; } public function get startTabIndex():int{ if (uiMgr.startTabIndex){ return (uiMgr.startTabIndex); }; if (tabIndex){ return (tabIndex); }; return (uiMgr.startTabIndex); } public function set seekBarInterval(_arg1:Number):void{ uiMgr.seekBarInterval = _arg1; } public function get pauseButton():Sprite{ return (uiMgr.getControl(UIManager.PAUSE_BUTTON)); } public function addASCuePoint(_arg1, _arg2:String=null, _arg3:Object=null):Object{ var _local4:CuePointManager = cuePointMgrs[_activeVP]; return (_local4.addASCuePoint(_arg1, _arg2, _arg3)); } public function get playheadPercentage():Number{ var _local1:VideoPlayer = videoPlayers[_activeVP]; if (isNaN(_local1.totalTime)){ return (NaN); }; return (((_local1.playheadTime / _local1.totalTime) * 100)); } public function setFLVCuePointEnabled(_arg1:Boolean, _arg2):Number{ var _local3:CuePointManager = cuePointMgrs[_activeVP]; return (_local3.setFLVCuePointEnabled(_arg1, _arg2)); } public function seekToNextNavCuePoint(_arg1:Number=NaN):void{ var _local2:VideoPlayer = videoPlayers[_activeVP]; if (((isNaN(_arg1)) || ((_arg1 < 0)))){ _arg1 = (_local2.playheadTime + 0.001); }; var _local3:Object = findNearestCuePoint(_arg1, CuePointType.NAVIGATION); if (_local3 == null){ seek(_local2.totalTime); return; }; var _local4:Number = _local3.index; if (_local3.time < _arg1){ _local4++; }; while ((((_local4 < _local3.array.length)) && (!(isFLVCuePointEnabled(_local3.array[_local4]))))) { _local4++; }; if (_local4 >= _local3.array.length){ _arg1 = _local2.totalTime; if (_local3.array[(_local3.array.length - 1)].time > _arg1){ _arg1 = _local3.array[(_local3.array.length - 1)]; }; seek(_arg1); } else { seek(_local3.array[_local4].time); }; } public function set fullScreenSkinDelay(_arg1:int):void{ uiMgr.fullScreenSkinDelay = _arg1; } public function get playheadUpdateInterval():Number{ var _local1:VideoPlayer = videoPlayers[_activeVP]; return (_local1.playheadUpdateInterval); } public function load(_arg1:String, _arg2:Number=NaN, _arg3:Boolean=false):void{ if ((((_arg1 == null)) || ((_arg1.length == 0)))){ return; }; if (_arg1 == this.source){ return; }; this.autoPlay = false; this.totalTime = _arg2; this.isLive = _arg3; this.source = _arg1; } public function seekSeconds(_arg1:Number):void{ seek(_arg1); } public function set componentInspectorSetting(_arg1:Boolean):void{ _componentInspectorSetting = _arg1; } public function get idleTimeout():Number{ var _local1:VideoPlayer = videoPlayers[_activeVP]; return (_local1.idleTimeout); } public function get scrubbing():Boolean{ var _local2:ControlData; var _local1:Sprite = seekBar; if (_local1 != null){ _local2 = uiMgr.ctrlDataDict[_local1]; return (_local2.isDragging); }; return (false); } public function set bitrate(_arg1:Number):void{ ncMgr.bitrate = _arg1; } public function removeASCuePoint(_arg1):Object{ var _local2:CuePointManager = cuePointMgrs[_activeVP]; return (_local2.removeASCuePoint(_arg1)); } public function get playPauseButton():Sprite{ return (uiMgr.getControl(UIManager.PLAY_PAUSE_BUTTON)); } public function get fullScreenTakeOver():Boolean{ return (uiMgr.fullScreenTakeOver); } public function get backButton():Sprite{ return (uiMgr.getControl(UIManager.BACK_BUTTON)); } public function set skin(_arg1:String):void{ uiMgr.skin = _arg1; } public function set fullScreenBackgroundColor(_arg1:uint):void{ uiMgr.fullScreenBackgroundColor = _arg1; } public function get fullScreenButton():Sprite{ return (uiMgr.getControl(UIManager.FULL_SCREEN_BUTTON)); } public function set seekBar(_arg1:Sprite):void{ uiMgr.setControl(UIManager.SEEK_BAR, _arg1); } override public function set x(_arg1:Number):void{ var _local2:VideoPlayer = videoPlayers[_visibleVP]; super.x = (_arg1 - _local2.x); } override public function set y(_arg1:Number):void{ var _local2:VideoPlayer = videoPlayers[_visibleVP]; super.y = (_arg1 - _local2.y); } public function set volumeBarInterval(_arg1:Number):void{ uiMgr.volumeBarInterval = _arg1; } public function get align():String{ var _local1:VideoPlayer = videoPlayers[_activeVP]; return (_local1.align); } public function get preferredHeight():int{ var _local1:VideoPlayer = videoPlayers[_activeVP]; return (_local1.videoHeight); } public function set bufferingBarHidesAndDisablesOthers(_arg1:Boolean):void{ uiMgr.bufferingBarHidesAndDisablesOthers = _arg1; } public function set autoPlay(_arg1:Boolean):void{ var _local2:VideoPlayerState = videoPlayerStates[_activeVP]; _local2.autoPlay = _arg1; } public function set visibleVideoPlayerIndex(_arg1:uint):void{ var _local5:Rectangle; var _local6:Rectangle; if (_visibleVP == _arg1){ return; }; if (videoPlayers[_arg1] == undefined){ createVideoPlayer(_arg1); }; var _local2:VideoPlayer = videoPlayers[_arg1]; var _local3:VideoPlayer = videoPlayers[_visibleVP]; _local3.visible = false; _local3.volume = 0; _visibleVP = _arg1; if (_firstStreamShown){ uiMgr.setupSkinAutoHide(false); _local2.visible = true; _soundTransform.volume = (scrubbing) ? 0 : _volume; _local2.soundTransform = _soundTransform; } else { if (((((((_local2.stateResponsive) || ((_local2.state == VideoState.CONNECTION_ERROR)))) || ((_local2.state == VideoState.DISCONNECTED)))) && (uiMgr.skinReady))){ uiMgr.visible = true; uiMgr.setupSkinAutoHide(false); _firstStreamReady = true; if (uiMgr.skin == ""){ uiMgr.hookUpCustomComponents(); }; showFirstStream(); }; }; if (((!((_local2.height == _local3.height))) || (!((_local2.width == _local3.width))))){ _local5 = new Rectangle((_local3.x + super.x), (_local3.y + super.y), _local3.width, _local3.height); _local6 = new Rectangle((_local3.registrationX + super.x), (_local3.registrationY + super.y), _local3.registrationWidth, _local3.registrationHeight); dispatchEvent(new LayoutEvent(LayoutEvent.LAYOUT, false, false, _local5, _local6)); }; var _local4:uint = _activeVP; _activeVP = _visibleVP; uiMgr.handleIVPEvent(new VideoEvent(VideoEvent.STATE_CHANGE, false, false, state, playheadTime, _visibleVP)); uiMgr.handleIVPEvent(new VideoEvent(VideoEvent.PLAYHEAD_UPDATE, false, false, state, playheadTime, _visibleVP)); if (_local2.isRTMP){ uiMgr.handleIVPEvent(new VideoEvent(VideoEvent.READY, false, false, state, playheadTime, _visibleVP)); } else { uiMgr.handleIVPEvent(new VideoProgressEvent(VideoProgressEvent.PROGRESS, false, false, bytesLoaded, bytesTotal, _visibleVP)); }; _activeVP = _local4; } public function get bufferingBar():Sprite{ return (uiMgr.getControl(UIManager.BUFFERING_BAR)); } flvplayback_internal function _scrubStart():void{ var _local1:Number = playheadTime; var _local2:VideoPlayer = videoPlayers[_visibleVP]; _volume = _local2.volume; _local2.volume = 0; dispatchEvent(new VideoEvent(VideoEvent.STATE_CHANGE, false, false, VideoState.SEEKING, _local1, _visibleVP)); dispatchEvent(new VideoEvent(VideoEvent.SCRUB_START, false, false, VideoState.SEEKING, _local1, _visibleVP)); } public function set playButton(_arg1:Sprite):void{ uiMgr.setControl(UIManager.PLAY_BUTTON, _arg1); } flvplayback_internal function handleAutoLayoutEvent(_arg1:AutoLayoutEvent):void{ var _local4:Rectangle; var _local5:Rectangle; var _local2:VideoPlayerState = videoPlayerStateDict[_arg1.currentTarget]; var _local3:AutoLayoutEvent = AutoLayoutEvent(_arg1.clone()); _local3.oldBounds.x = (_local3.oldBounds.x + super.x); _local3.oldBounds.y = (_local3.oldBounds.y + super.y); _local3.oldRegistrationBounds.x = (_local3.oldRegistrationBounds.x + super.y); _local3.oldRegistrationBounds.y = (_local3.oldRegistrationBounds.y + super.y); _local3.vp = _local2.index; dispatchEvent(_local3); if (((!(resizingNow)) && ((_local2.index == _visibleVP)))){ _local4 = Rectangle(_arg1.oldBounds.clone()); _local5 = Rectangle(_arg1.oldRegistrationBounds.clone()); _local4.x = (_local4.x + super.x); _local4.y = (_local4.y + super.y); _local5.x = (_local5.x + super.y); _local5.y = (_local5.y + super.y); dispatchEvent(new LayoutEvent(LayoutEvent.LAYOUT, false, false, _local4, _local5)); }; } public function findNextCuePointWithName(_arg1:Object):Object{ var _local2:CuePointManager = cuePointMgrs[_activeVP]; return (_local2.getNextCuePointWithName(_arg1)); } override public function get soundTransform():SoundTransform{ var _local1:VideoPlayer = videoPlayers[_visibleVP]; var _local2:SoundTransform = _local1.soundTransform; if (scrubbing){ _local2.volume = _volume; }; return (_local2); } public function set registrationWidth(_arg1:Number):void{ width = _arg1; } flvplayback_internal function showFirstStream():void{ var _local3:VideoPlayerState; var _local4:int; _firstStreamShown = true; var _local1:VideoPlayer = videoPlayers[_visibleVP]; _local1.visible = true; if (!scrubbing){ _soundTransform.volume = _volume; _local1.soundTransform = _soundTransform; }; var _local2:int; while (_local2 < videoPlayers.length) { _local1 = videoPlayers[_local2]; if (_local1 != null){ _local3 = videoPlayerStates[_local2]; if ((((_local1.state == VideoState.STOPPED)) && (_local3.autoPlay))){ if (_local1.isRTMP){ _local1.play(); } else { _local3.prevState = VideoState.STOPPED; _local1.playWhenEnoughDownloaded(); }; }; if (_local3.cmdQueue != null){ _local4 = 0; while (_local4 < _local3.cmdQueue.length) { switch (_local3.cmdQueue[_local4].type){ case QueuedCommand.PLAY: _local1.play(); break; case QueuedCommand.PAUSE: _local1.pause(); break; case QueuedCommand.STOP: _local1.stop(); break; case QueuedCommand.SEEK: _local1.seek(_local3.cmdQueue[_local4].time); break; case QueuedCommand.PLAY_WHEN_ENOUGH: _local1.playWhenEnoughDownloaded(); break; }; _local4++; }; _local3.cmdQueue = null; }; }; _local2++; }; } public function get stateResponsive():Boolean{ var _local1:VideoPlayer = videoPlayers[_activeVP]; return (_local1.stateResponsive); } public function set skinBackgroundAlpha(_arg1:Number):void{ uiMgr.skinBackgroundAlpha = _arg1; } flvplayback_internal function handleVideoEvent(_arg1:VideoEvent):void{ var _local6:Number; var _local2:VideoPlayerState = videoPlayerStateDict[_arg1.currentTarget]; var _local3:CuePointManager = cuePointMgrs[_local2.index]; var _local4:VideoEvent = VideoEvent(_arg1.clone()); _local4.vp = _local2.index; var _local5:String = ((((_local2.index == _visibleVP)) && (scrubbing))) ? VideoState.SEEKING : _arg1.state; switch (_arg1.type){ case VideoEvent.AUTO_REWOUND: dispatchEvent(_local4); dispatchEvent(new VideoEvent(VideoEvent.REWIND, false, false, _local5, _arg1.playheadTime, _local2.index)); _local3.resetASCuePointIndex(_arg1.playheadTime); break; case VideoEvent.PLAYHEAD_UPDATE: _local4.state = _local5; dispatchEvent(_local4); if (((!(isNaN(_local2.preSeekTime))) && (!((_arg1.state == VideoState.SEEKING))))){ _local6 = _local2.preSeekTime; _local2.preSeekTime = NaN; _local3.resetASCuePointIndex(_arg1.playheadTime); dispatchEvent(new VideoEvent(VideoEvent.SEEKED, false, false, _arg1.state, _arg1.playheadTime, _local2.index)); if (_local6 < _arg1.playheadTime){ dispatchEvent(new VideoEvent(VideoEvent.FAST_FORWARD, false, false, _arg1.state, _arg1.playheadTime, _local2.index)); } else { if (_local6 > _arg1.playheadTime){ dispatchEvent(new VideoEvent(VideoEvent.REWIND, false, false, _arg1.state, _arg1.playheadTime, _local2.index)); }; }; }; _local3.dispatchASCuePoints(); break; case VideoEvent.STATE_CHANGE: if ((((_local2.index == _visibleVP)) && (scrubbing))){ break; }; if (_arg1.state == VideoState.RESIZING){ break; }; if ((((((_local2.prevState == VideoState.LOADING)) && (_local2.autoPlay))) && ((_arg1.state == VideoState.STOPPED)))){ return; }; if ((((((((_arg1.state == VideoState.CONNECTION_ERROR)) && ((_arg1.vp == _visibleVP)))) && (!(_firstStreamShown)))) && (uiMgr.skinReady))){ showFirstStream(); uiMgr.visible = true; if (uiMgr.skin == ""){ uiMgr.hookUpCustomComponents(); }; if (skinShowTimer != null){ skinShowTimer.reset(); skinShowTimer = null; }; }; _local2.prevState = _arg1.state; _local4.state = _local5; dispatchEvent(_local4); if (_local2.owner.state != _arg1.state){ return; }; switch (_arg1.state){ case VideoState.BUFFERING: dispatchEvent(new VideoEvent(VideoEvent.BUFFERING_STATE_ENTERED, false, false, _local5, _arg1.playheadTime, _local2.index)); break; case VideoState.PAUSED: dispatchEvent(new VideoEvent(VideoEvent.PAUSED_STATE_ENTERED, false, false, _local5, _arg1.playheadTime, _local2.index)); break; case VideoState.PLAYING: dispatchEvent(new VideoEvent(VideoEvent.PLAYING_STATE_ENTERED, false, false, _local5, _arg1.playheadTime, _local2.index)); break; case VideoState.STOPPED: dispatchEvent(new VideoEvent(VideoEvent.STOPPED_STATE_ENTERED, false, false, _local5, _arg1.playheadTime, _local2.index)); break; }; break; case VideoEvent.READY: if (!_firstStreamReady){ if (_local2.index == _visibleVP){ _firstStreamReady = true; if (((uiMgr.skinReady) && (!(_firstStreamShown)))){ uiMgr.visible = true; if (uiMgr.skin == ""){ uiMgr.hookUpCustomComponents(); }; showFirstStream(); }; }; } else { if (((((_firstStreamShown) && ((_arg1.state == VideoState.STOPPED)))) && (_local2.autoPlay))){ if (_local2.owner.isRTMP){ _local2.owner.play(); } else { _local2.prevState = VideoState.STOPPED; _local2.owner.playWhenEnoughDownloaded(); }; }; }; _local4.state = _local5; dispatchEvent(_local4); break; case VideoEvent.CLOSE: case VideoEvent.COMPLETE: _local4.state = _local5; dispatchEvent(_local4); break; }; } public function get volume():Number{ return (_volume); } public function get metadata():Object{ var _local1:VideoPlayer = videoPlayers[_activeVP]; return (_local1.metadata); } public function set skinBackgroundColor(_arg1:uint):void{ uiMgr.skinBackgroundColor = _arg1; } public function set volumeBar(_arg1:Sprite):void{ uiMgr.setControl(UIManager.VOLUME_BAR, _arg1); } public function play(_arg1:String=null, _arg2:Number=NaN, _arg3:Boolean=false):void{ var _local4:VideoPlayerState; var _local5:VideoPlayer; if (_arg1 == null){ if (!_firstStreamShown){ _local4 = videoPlayerStates[_activeVP]; queueCmd(_local4, QueuedCommand.PLAY); } else { _local5 = videoPlayers[_activeVP]; _local5.play(); }; } else { if (_arg1 == this.source){ return; }; this.autoPlay = true; this.totalTime = _arg2; this.isLive = _arg3; this.source = _arg1; }; } public function get paused():Boolean{ return ((state == VideoState.PAUSED)); } override public function get height():Number{ if (isLivePreview){ return (livePreviewHeight); }; var _local1:VideoPlayer = videoPlayers[_visibleVP]; return (_local1.height); } public function get isLive():Boolean{ var _local1:VideoPlayerState = videoPlayerStates[_activeVP]; if (_local1.isLiveSet){ return (_local1.isLive); }; var _local2:VideoPlayer = videoPlayers[_activeVP]; return (_local2.isLive); } public function get registrationHeight():Number{ var _local1:VideoPlayer = videoPlayers[_visibleVP]; return (_local1.registrationHeight); } public function get bufferTime():Number{ var _local1:VideoPlayer = videoPlayers[_activeVP]; return (_local1.bufferTime); } public function set volumeBarScrubTolerance(_arg1:Number):void{ uiMgr.volumeBarScrubTolerance = _arg1; } public function set skinScaleMaximum(_arg1:Number):void{ uiMgr.skinScaleMaximum = _arg1; } public function get autoRewind():Boolean{ var _local1:VideoPlayer = videoPlayers[_activeVP]; return (_local1.autoRewind); } public function set muteButton(_arg1:Sprite):void{ uiMgr.setControl(UIManager.MUTE_BUTTON, _arg1); } public function enterFullScreenDisplayState():void{ uiMgr.enterFullScreenDisplayState(); } flvplayback_internal function handleMetadataEvent(_arg1:MetadataEvent):void{ var _local2:VideoPlayerState = videoPlayerStateDict[_arg1.currentTarget]; var _local3:CuePointManager = cuePointMgrs[_local2.index]; switch (_arg1.type){ case MetadataEvent.METADATA_RECEIVED: _local3.processFLVCuePoints(_arg1.info.cuePoints); break; case MetadataEvent.CUE_POINT: if (!_local3.isFLVCuePointEnabled(_arg1.info)){ return; }; break; }; var _local4:MetadataEvent = MetadataEvent(_arg1.clone()); _local4.vp = _local2.index; dispatchEvent(_local4); } public function playWhenEnoughDownloaded():void{ var _local1:VideoPlayerState; var _local2:VideoPlayer; if (!_firstStreamShown){ _local1 = videoPlayerStates[_activeVP]; queueCmd(_local1, QueuedCommand.PLAY_WHEN_ENOUGH); } else { _local2 = videoPlayers[_activeVP]; _local2.playWhenEnoughDownloaded(); }; } public function get bitrate():Number{ return (ncMgr.bitrate); } public function get fullScreenBackgroundColor():uint{ return (uiMgr.fullScreenBackgroundColor); } public function get skin():String{ return (uiMgr.skin); } public function set registrationX(_arg1:Number):void{ super.x = _arg1; } public function set registrationY(_arg1:Number):void{ super.y = _arg1; } public function get playButton():Sprite{ return (uiMgr.getControl(UIManager.PLAY_BUTTON)); } public function get visibleVideoPlayerIndex():uint{ return (_visibleVP); } public function setSize(_arg1:Number, _arg2:Number):void{ var _local6:VideoPlayer; var _local3:Rectangle = new Rectangle(x, y, this.width, this.height); var _local4:Rectangle = new Rectangle(registrationX, registrationY, registrationWidth, registrationHeight); if (isLivePreview){ livePreviewWidth = _arg1; livePreviewHeight = _arg2; if (previewImage_mc != null){ previewImage_mc.width = _arg1; previewImage_mc.height = _arg2; }; preview_mc.box_mc.width = _arg1; preview_mc.box_mc.height = _arg2; if ((((preview_mc.box_mc.width < preview_mc.icon_mc.width)) || ((preview_mc.box_mc.height < preview_mc.icon_mc.height)))){ preview_mc.icon_mc.visible = false; } else { preview_mc.icon_mc.visible = true; preview_mc.icon_mc.x = ((preview_mc.box_mc.width - preview_mc.icon_mc.width) / 2); preview_mc.icon_mc.y = ((preview_mc.box_mc.height - preview_mc.icon_mc.height) / 2); }; dispatchEvent(new LayoutEvent(LayoutEvent.LAYOUT, false, false, _local3, _local4)); return; }; resizingNow = true; var _local5:int; while (_local5 < videoPlayers.length) { _local6 = videoPlayers[_local5]; if (_local6 != null){ _local6.setSize(_arg1, _arg2); }; _local5++; }; resizingNow = false; dispatchEvent(new LayoutEvent(LayoutEvent.LAYOUT, false, false, _local3, _local4)); } override public function set width(_arg1:Number):void{ var _local5:VideoPlayer; if (isLivePreview){ setSize(_arg1, this.height); return; }; var _local2:Rectangle = new Rectangle(x, y, width, height); var _local3:Rectangle = new Rectangle(registrationX, registrationY, registrationWidth, registrationHeight); resizingNow = true; var _local4:int; while (_local4 < videoPlayers.length) { _local5 = videoPlayers[_local4]; if (_local5 != null){ _local5.width = _arg1; }; _local4++; }; resizingNow = false; dispatchEvent(new LayoutEvent(LayoutEvent.LAYOUT, false, false, _local2, _local3)); } public function get isRTMP():Boolean{ if (isLivePreview){ return (true); }; var _local1:VideoPlayer = videoPlayers[_activeVP]; return (_local1.isRTMP); } public function set preview(_arg1:String):void{ var filename = _arg1; if (!isLivePreview){ return; }; previewImageUrl = filename; if (previewImage_mc != null){ removeChild(previewImage_mc); }; previewImage_mc = new Loader(); previewImage_mc.contentLoaderInfo.addEventListener(Event.COMPLETE, onCompletePreview); previewImage_mc.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, function (_arg1:IOErrorEvent):void{ }); previewImage_mc.contentLoaderInfo.addEventListener(SecurityErrorEvent.SECURITY_ERROR, function (_arg1:SecurityErrorEvent):void{ }); addChildAt(previewImage_mc, 1); previewImage_mc.load(new URLRequest(previewImageUrl)); } public function get skinBackgroundAlpha():Number{ return (uiMgr.skinBackgroundAlpha); } public function set pauseButton(_arg1:Sprite):void{ uiMgr.setControl(UIManager.PAUSE_BUTTON, _arg1); } public function get bytesTotal():uint{ var _local1:VideoPlayer = videoPlayers[_activeVP]; return (_local1.bytesTotal); } public function seekToPrevNavCuePoint(_arg1:Number=NaN):void{ var _local4:VideoPlayer; if (((isNaN(_arg1)) || ((_arg1 < 0)))){ _local4 = videoPlayers[_activeVP]; _arg1 = _local4.playheadTime; }; var _local2:Object = findNearestCuePoint(_arg1, CuePointType.NAVIGATION); if (_local2 == null){ seek(0); return; }; var _local3:Number = _local2.index; while ((((_local3 >= 0)) && (((!(isFLVCuePointEnabled(_local2.array[_local3]))) || ((_local2.array[_local3].time >= (_arg1 - _seekToPrevOffset))))))) { _local3--; }; if (_local3 < 0){ seek(0); } else { seek(_local2.array[_local3].time); }; } public function get autoPlay():Boolean{ var _local1:VideoPlayerState = videoPlayerStates[_activeVP]; return (_local1.autoPlay); } public function set playheadPercentage(_arg1:Number):void{ seekPercent(_arg1); } public function isFLVCuePointEnabled(_arg1):Boolean{ var _local2:CuePointManager = cuePointMgrs[_activeVP]; return (_local2.isFLVCuePointEnabled(_arg1)); } public function get buffering():Boolean{ return ((state == VideoState.BUFFERING)); } public function get volumeBarScrubTolerance():Number{ return (uiMgr.volumeBarScrubTolerance); } public function get skinBackgroundColor():uint{ return (uiMgr.skinBackgroundColor); } public function get skinScaleMaximum():Number{ return (uiMgr.skinScaleMaximum); } public function set stopButton(_arg1:Sprite):void{ uiMgr.setControl(UIManager.STOP_BUTTON, _arg1); } public function get preferredWidth():int{ var _local1:VideoPlayer = videoPlayers[_activeVP]; return (_local1.videoWidth); } override public function get width():Number{ if (isLivePreview){ return (livePreviewWidth); }; var _local1:VideoPlayer = videoPlayers[_visibleVP]; return (_local1.width); } public function set playheadUpdateInterval(_arg1:Number):void{ if (_activeVP == 0){ _playheadUpdateInterval = _arg1; }; var _local2:CuePointManager = cuePointMgrs[_activeVP]; _local2.playheadUpdateInterval = _arg1; var _local3:VideoPlayer = videoPlayers[_activeVP]; _local3.playheadUpdateInterval = _arg1; } public function get stopped():Boolean{ return ((state == VideoState.STOPPED)); } public function set fullScreenButton(_arg1:Sprite):void{ uiMgr.setControl(UIManager.FULL_SCREEN_BUTTON, _arg1); } public function get stopButton():Sprite{ return (uiMgr.getControl(UIManager.STOP_BUTTON)); } private function createLivePreviewMovieClip():void{ preview_mc = new MovieClip(); preview_mc.name = "preview_mc"; preview_mc.box_mc = new MovieClip(); preview_mc.box_mc.name = "box_mc"; preview_mc.box_mc.graphics.beginFill(0); preview_mc.box_mc.graphics.moveTo(0, 0); preview_mc.box_mc.graphics.lineTo(0, 100); preview_mc.box_mc.graphics.lineTo(100, 100); preview_mc.box_mc.graphics.lineTo(100, 0); preview_mc.box_mc.graphics.lineTo(0, 0); preview_mc.box_mc.graphics.endFill(); preview_mc.addChild(preview_mc.box_mc); preview_mc.icon_mc = new Icon(); preview_mc.icon_mc.name = "icon_mc"; preview_mc.addChild(preview_mc.icon_mc); addChild(preview_mc); } public function set idleTimeout(_arg1:Number):void{ if (_activeVP == 0){ _idleTimeout = _arg1; }; var _local2:VideoPlayer = videoPlayers[_activeVP]; _local2.idleTimeout = _arg1; } flvplayback_internal function skinLoaded():void{ if (isLivePreview){ return; }; var _local1:VideoPlayer = videoPlayers[_visibleVP]; if (((((_firstStreamReady) || ((_local1.state == VideoState.CONNECTION_ERROR)))) || ((_local1.state == VideoState.DISCONNECTED)))){ uiMgr.visible = true; if (!_firstStreamShown){ showFirstStream(); }; } else { if (skinShowTimer != null){ skinShowTimer.reset(); skinShowTimer = null; }; skinShowTimer = new Timer(DEFAULT_SKIN_SHOW_TIMER_INTERVAL, 1); skinShowTimer.addEventListener(TimerEvent.TIMER, showSkinNow); skinShowTimer.start(); }; dispatchEvent(new VideoEvent(VideoEvent.SKIN_LOADED, false, false, state, playheadTime, _visibleVP)); } flvplayback_internal function _scrubFinish():void{ var _local1:Number = playheadTime; var _local2:String = state; var _local3:VideoPlayer = videoPlayers[_visibleVP]; _soundTransform.volume = _volume; _local3.soundTransform = _soundTransform; if (_local2 != VideoState.SEEKING){ dispatchEvent(new VideoEvent(VideoEvent.STATE_CHANGE, false, false, _local2, _local1, _visibleVP)); }; dispatchEvent(new VideoEvent(VideoEvent.SCRUB_FINISH, false, false, _local2, _local1, _visibleVP)); } public function set playPauseButton(_arg1:Sprite):void{ uiMgr.setControl(UIManager.PLAY_PAUSE_BUTTON, _arg1); } public function set fullScreenTakeOver(_arg1:Boolean):void{ uiMgr.fullScreenTakeOver = _arg1; } public function set backButton(_arg1:Sprite):void{ uiMgr.setControl(UIManager.BACK_BUTTON, _arg1); } public function set cuePoints(_arg1:Array):void{ if (!_componentInspectorSetting){ return; }; cuePointMgrs[0].processCuePointsProperty(_arg1); } public function pause():void{ var _local1:VideoPlayerState; var _local2:VideoPlayer; if (!_firstStreamShown){ _local1 = videoPlayerStates[_activeVP]; queueCmd(_local1, QueuedCommand.PAUSE); } else { _local2 = videoPlayers[_activeVP]; _local2.pause(); }; } public function set seekBarScrubTolerance(_arg1:Number):void{ uiMgr.seekBarScrubTolerance = _arg1; } flvplayback_internal function handleVideoProgressEvent(_arg1:VideoProgressEvent):void{ var _local2:VideoPlayerState = videoPlayerStateDict[_arg1.currentTarget]; var _local3:VideoProgressEvent = VideoProgressEvent(_arg1.clone()); _local3.vp = _local2.index; dispatchEvent(_local3); } public function findCuePoint(_arg1, _arg2:String="all"):Object{ var _local3:CuePointManager = cuePointMgrs[_activeVP]; switch (_arg2){ case "event": return (_local3.getCuePoint(_local3.eventCuePoints, false, _arg1)); case "navigation": return (_local3.getCuePoint(_local3.navCuePoints, false, _arg1)); case "flv": return (_local3.getCuePoint(_local3.flvCuePoints, false, _arg1)); case "actionscript": return (_local3.getCuePoint(_local3.asCuePoints, false, _arg1)); case "all": default: return (_local3.getCuePoint(_local3.allCuePoints, false, _arg1)); }; } } }//package fl.video
Section 7
//flvplayback_internal (fl.video.flvplayback_internal) package fl.video { public namespace flvplayback_internal = "http://www.adobe.com/2007/flash/flvplayback/internal"; }//package fl.video
Section 8
//FPADManager (fl.video.FPADManager) package fl.video { import flash.events.*; import flash.net.*; public class FPADManager { flvplayback_internal var _uriParam:String; flvplayback_internal var _parseResults:ParseResults; private var _owner:INCManager; flvplayback_internal var rtmpURL:String; flvplayback_internal var _url:String; flvplayback_internal var xmlLoader:URLLoader; flvplayback_internal var xml:XML; public static const VERSION:String = "2.1.0.20"; public static const SHORT_VERSION:String = "2.1"; public function FPADManager(_arg1:INCManager){ _owner = _arg1; } flvplayback_internal function connectXML(_arg1:String, _arg2:String, _arg3:String, _arg4:ParseResults):Boolean{ _uriParam = _arg2; _parseResults = _arg4; _url = ((_arg1 + "uri=") + _parseResults.protocol); if (_parseResults.serverName != null){ _url = (_url + ("/" + _parseResults.serverName)); }; if (_parseResults.portNumber != null){ _url = (_url + (":" + _parseResults.portNumber)); }; if (_parseResults.wrappedURL != null){ _url = (_url + ("/?" + _parseResults.wrappedURL)); }; _url = (_url + ("/" + _parseResults.appName)); _url = (_url + _arg3); xml = new XML(); xmlLoader = new URLLoader(); xmlLoader.addEventListener(Event.COMPLETE, xmlLoadEventHandler); xmlLoader.addEventListener(IOErrorEvent.IO_ERROR, xmlLoadEventHandler); xmlLoader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, xmlLoadEventHandler); xmlLoader.load(new URLRequest(_url)); return (false); } flvplayback_internal function xmlLoadEventHandler(_arg1:Event):void{ var proxy:String; var e = _arg1; try { if (e.type != Event.COMPLETE){ _owner.helperDone(this, false); } else { xml = new XML(xmlLoader.data); if ((((xml == null)) || ((xml.localName() == null)))){ throw (new VideoError(VideoError.INVALID_XML, (("URL: \"" + _url) + "\" No root node found; if url is for an flv it must have .flv extension and take no parameters"))); } else { if (xml.localName() != "fpad"){ throw (new VideoError(VideoError.INVALID_XML, (("URL: \"" + _url) + "\" Root node not fpad"))); }; }; proxy = null; if ((((((xml.proxy.length() > 0)) && (xml.proxy.hasSimpleContent()))) && ((xml.proxy.*[0].nodeKind() == "text")))){ proxy = xml.proxy.*[0].toString(); }; if (proxy == null){ throw (new VideoError(VideoError.INVALID_XML, (("URL: \"" + _url) + "\" fpad xml requires proxy tag."))); }; rtmpURL = ((((_parseResults.protocol + "/") + proxy) + "/?") + _uriParam); _owner.helperDone(this, true); }; } catch(err:Error) { _owner.helperDone(this, false); throw (err); }; } } }//package fl.video
Section 9
//Icon (fl.video.Icon) package fl.video { import flash.display.*; public dynamic class Icon extends MovieClip { } }//package fl.video
Section 10
//INCManager (fl.video.INCManager) package fl.video { import flash.net.*; public interface INCManager { function get timeout():uint; function set timeout(_arg1:uint):void; function get streamLength():Number; function get streamHeight():int; function connectToURL(_arg1:String):Boolean; function get streamName():String; function get bitrate():Number; function get isRTMP():Boolean; function helperDone(_arg1:Object, _arg2:Boolean):void; function getProperty(_arg1:String); function get streamWidth():int; function connectAgain():Boolean; function reconnect():void; function close():void; function set bitrate(_arg1:Number):void; function get netConnection():NetConnection; function get videoPlayer():VideoPlayer; function setProperty(_arg1:String, _arg2):void; function set videoPlayer(_arg1:VideoPlayer):void; } }//package fl.video
Section 11
//IVPEvent (fl.video.IVPEvent) package fl.video { public interface IVPEvent { function get vp():uint; function get type():String; function set vp(_arg1:uint):void; } }//package fl.video
Section 12
//LayoutEvent (fl.video.LayoutEvent) package fl.video { import flash.events.*; import flash.geom.*; public class LayoutEvent extends Event { private var _oldRegistrationBounds:Rectangle; private var _oldBounds:Rectangle; public static const LAYOUT:String = "layout"; public function LayoutEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:Rectangle=null, _arg5:Rectangle=null){ super(_arg1, _arg2, _arg3); _oldBounds = _arg4; _oldRegistrationBounds = _arg5; } public function set oldRegistrationBounds(_arg1:Rectangle):void{ _oldRegistrationBounds = _arg1; } override public function clone():Event{ return (new LayoutEvent(type, bubbles, cancelable, Rectangle(oldBounds.clone()), Rectangle(oldRegistrationBounds.clone()))); } public function get oldRegistrationBounds():Rectangle{ return (_oldRegistrationBounds); } public function set oldBounds(_arg1:Rectangle):void{ _oldBounds = _arg1; } public function get oldBounds():Rectangle{ return (_oldBounds); } } }//package fl.video
Section 13
//MetadataEvent (fl.video.MetadataEvent) package fl.video { import flash.events.*; public class MetadataEvent extends Event implements IVPEvent { private var _info:Object; private var _vp:uint; public static const METADATA_RECEIVED:String = "metadataReceived"; public static const CUE_POINT:String = "cuePoint"; public function MetadataEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:Object=null, _arg5:uint=0){ super(_arg1, _arg2, _arg3); _info = _arg4; _vp = _arg5; } public function set info(_arg1:Object):void{ _info = _arg1; } public function get vp():uint{ return (_vp); } public function get info():Object{ return (_info); } public function set vp(_arg1:uint):void{ _vp = _arg1; } override public function clone():Event{ return (new MetadataEvent(type, bubbles, cancelable, info, vp)); } } }//package fl.video
Section 14
//NCManager (fl.video.NCManager) package fl.video { import flash.events.*; import flash.net.*; import flash.utils.*; public class NCManager implements INCManager { public const DEFAULT_TIMEOUT:uint = 60000; flvplayback_internal var _serverName:String; flvplayback_internal var _tryNCTimer:Timer; flvplayback_internal var _autoSenseBW:Boolean; flvplayback_internal var _fpadZone:Number; flvplayback_internal var _appName:String; flvplayback_internal var _ncConnected:Boolean; flvplayback_internal var _fpadMgr:FPADManager; flvplayback_internal var _bitrate:Number; flvplayback_internal var _timeoutTimer:Timer; flvplayback_internal var _wrappedURL:String; flvplayback_internal var _payload:Number; flvplayback_internal var _nc:NetConnection; flvplayback_internal var _streamLength:Number; flvplayback_internal var _connTypeCounter:uint; flvplayback_internal var _streamWidth:int; flvplayback_internal var _proxyType:String; flvplayback_internal var _ncUri:String; flvplayback_internal var _contentPath:String; flvplayback_internal var _smilMgr:SMILManager; flvplayback_internal var _streamHeight:int; flvplayback_internal var _isRTMP:Boolean; flvplayback_internal var _tryNC:Array; flvplayback_internal var _streams:Array; flvplayback_internal var _owner:VideoPlayer; flvplayback_internal var _portNumber:String; flvplayback_internal var _streamName:String; flvplayback_internal var _objectEncoding:uint; public var fallbackServerName:String; flvplayback_internal var _protocol:String; public static const VERSION:String = "2.1.0.20"; public static const SHORT_VERSION:String = "2.1"; public function NCManager(){ _fpadZone = NaN; _objectEncoding = ObjectEncoding.AMF0; _proxyType = "best"; _timeoutTimer = new Timer(DEFAULT_TIMEOUT); _timeoutTimer.addEventListener(TimerEvent.TIMER, this._onFMSConnectTimeOut); _tryNCTimer = new Timer(1500, 1); _tryNCTimer.addEventListener(TimerEvent.TIMER, this.nextConnect); initNCInfo(); initOtherInfo(); _nc = null; _ncConnected = false; } flvplayback_internal function initNCInfo():void{ _isRTMP = false; _serverName = null; _wrappedURL = null; _portNumber = null; _appName = null; } flvplayback_internal function cleanConns():void{ var _local1:uint; _tryNCTimer.reset(); if (_tryNC != null){ _local1 = 0; while (_local1 < _tryNC.length) { if (_tryNC[_local1] != null){ _tryNC[_local1].removeEventListener(NetStatusEvent.NET_STATUS, connectOnStatus); if (_tryNC[_local1].client.pending){ _tryNC[_local1].addEventListener(NetStatusEvent.NET_STATUS, disconnectOnStatus); } else { _tryNC[_local1].close(); }; }; _tryNC[_local1] = null; _local1++; }; _tryNC = null; }; } public function get streamWidth():int{ return (_streamWidth); } public function connectToURL(_arg1:String):Boolean{ var canReuse:Boolean; var name:String; var url = _arg1; initOtherInfo(); _contentPath = url; if ((((_contentPath == null)) || ((_contentPath == "")))){ throw (new VideoError(VideoError.INVALID_SOURCE)); }; var parseResults:ParseResults = parseURL(_contentPath); if ((((parseResults.streamName == null)) || ((parseResults.streamName == "")))){ throw (new VideoError(VideoError.INVALID_SOURCE, url)); }; if (parseResults.isRTMP){ canReuse = canReuseOldConnection(parseResults); _isRTMP = true; _protocol = parseResults.protocol; _streamName = parseResults.streamName; _serverName = parseResults.serverName; _wrappedURL = parseResults.wrappedURL; _portNumber = parseResults.portNumber; _appName = parseResults.appName; if ((((((((_appName == null)) || ((_appName == "")))) || ((_streamName == null)))) || ((_streamName == "")))){ throw (new VideoError(VideoError.INVALID_SOURCE, url)); }; _autoSenseBW = (_streamName.indexOf(",") >= 0); return (((canReuse) || (connectRTMP()))); //unresolved jump }; name = parseResults.streamName; if ((((((((name.indexOf("?") < 0)) && ((((name.length < 4)) || (!((name.slice(-4).toLowerCase() == ".txt"))))))) && ((((name.length < 4)) || (!((name.slice(-4).toLowerCase() == ".xml"))))))) && ((((name.length < 5)) || (!((name.slice(-5).toLowerCase() == ".smil"))))))){ canReuse = canReuseOldConnection(parseResults); _isRTMP = false; _streamName = name; return (((canReuse) || (connectHTTP()))); }; if (name.indexOf("/fms/fpad") >= 0){ try { return (connectFPAD(name)); } catch(err:Error) { }; }; _smilMgr = new SMILManager(this); return (_smilMgr.connectXML(name)); } public function get streamName():String{ return (_streamName); } flvplayback_internal function reconnectOnStatus(_arg1:NetStatusEvent):void{ if ((((_arg1.info.code == "NetConnection.Connect.Failed")) || ((_arg1.info.code == "NetConnection.Connect.Rejected")))){ _nc = null; _ncConnected = false; _owner.ncReconnected(); }; } public function get videoPlayer():VideoPlayer{ return (_owner); } flvplayback_internal function getStreamLengthResult(_arg1:Number):void{ if (_arg1 > 0){ _streamLength = _arg1; }; _owner.ncConnected(); } flvplayback_internal function canReuseOldConnection(_arg1:ParseResults):Boolean{ if ((((_nc == null)) || (!(_ncConnected)))){ return (false); }; if (!_arg1.isRTMP){ if (!_isRTMP){ return (true); }; _owner.close(); _nc = null; _ncConnected = false; initNCInfo(); return (false); }; if (_isRTMP){ if ((((((((((_arg1.serverName == _serverName)) && ((_arg1.appName == _appName)))) && ((_arg1.protocol == _protocol)))) && ((_arg1.portNumber == _portNumber)))) && ((_arg1.wrappedURL == _wrappedURL)))){ return (true); }; _owner.close(); _nc = null; _ncConnected = false; }; initNCInfo(); return (false); } public function helperDone(_arg1:Object, _arg2:Boolean):void{ var _local3:ParseResults; var _local4:String; var _local7:Number; if (!_arg2){ _nc = null; _ncConnected = false; _owner.ncConnected(); _smilMgr = null; _fpadMgr = null; return; }; var _local5:Boolean; if (_arg1 == _fpadMgr){ _local4 = _fpadMgr.rtmpURL; _fpadMgr = null; _local3 = parseURL(_local4); _isRTMP = _local3.isRTMP; _protocol = _local3.protocol; _serverName = _local3.serverName; _portNumber = _local3.portNumber; _wrappedURL = _local3.wrappedURL; _appName = _local3.appName; _streamName = _local3.streamName; _local7 = _fpadZone; _fpadZone = NaN; connectRTMP(); _fpadZone = _local7; return; }; if (_arg1 != _smilMgr){ return; }; _streamWidth = _smilMgr.width; _streamHeight = _smilMgr.height; _local4 = _smilMgr.baseURLAttr[0]; if (((!((_local4 == null))) && (!((_local4 == ""))))){ if (_local4.charAt((_local4.length - 1)) != "/"){ _local4 = (_local4 + "/"); }; _local3 = parseURL(_local4); _isRTMP = _local3.isRTMP; _local5 = true; _streamName = _local3.streamName; if (_isRTMP){ _protocol = _local3.protocol; _serverName = _local3.serverName; _portNumber = _local3.portNumber; _wrappedURL = _local3.wrappedURL; _appName = _local3.appName; if ((((_appName == null)) || ((_appName == "")))){ _smilMgr = null; throw (new VideoError(VideoError.INVALID_XML, ("Base RTMP URL must include application name: " + _local4))); }; if (_smilMgr.baseURLAttr.length > 1){ _local3 = parseURL(_smilMgr.baseURLAttr[1]); if (_local3.serverName != null){ fallbackServerName = _local3.serverName; }; }; }; }; _streams = _smilMgr.videoTags; _smilMgr = null; var _local6:uint; while (_local6 < _streams.length) { _local4 = _streams[_local6].src; _local3 = parseURL(_local4); if (!_local5){ _isRTMP = _local3.isRTMP; _local5 = true; if (_isRTMP){ _protocol = _local3.protocol; if (_streams.length > 1){ throw (new VideoError(VideoError.INVALID_XML, "Cannot switch between multiple absolute RTMP URLs, must use meta tag base attribute.")); }; _serverName = _local3.serverName; _portNumber = _local3.portNumber; _wrappedURL = _local3.wrappedURL; _appName = _local3.appName; if ((((_appName == null)) || ((_appName == "")))){ throw (new VideoError(VideoError.INVALID_XML, ("Base RTMP URL must include application name: " + _local4))); }; } else { if ((((_local3.streamName.indexOf("/fms/fpad") >= 0)) && ((_streams.length > 1)))){ throw (new VideoError(VideoError.INVALID_XML, "Cannot switch between multiple absolute fpad URLs, must use meta tag base attribute.")); }; }; } else { if (((((((!((_streamName == null))) && (!((_streamName == ""))))) && (!(_local3.isRelative)))) && ((_streams.length > 1)))){ throw (new VideoError(VideoError.INVALID_XML, "When using meta tag base attribute, cannot use absolute URLs for video or ref tag src attributes.")); }; }; _streams[_local6].parseResults = _local3; _local6++; }; _autoSenseBW = (_streams.length > 1); if (!_autoSenseBW){ if (_streamName != null){ _streamName = (_streamName + _streams[0].parseResults.streamName); } else { _streamName = _streams[0].parseResults.streamName; }; if (((_isRTMP) && ((_streamName.substr(-4).toLowerCase() == ".flv")))){ _streamName = _streamName.substr(0, (_streamName.length - 4)); }; _streamLength = _streams[0].dur; }; if (_isRTMP){ connectRTMP(); } else { if (((!((_streamName == null))) && ((_streamName.indexOf("/fms/fpad") >= 0)))){ connectFPAD(_streamName); } else { if (_autoSenseBW){ bitrateMatch(); }; connectHTTP(); _owner.ncConnected(); }; }; } public function getProperty(_arg1:String){ switch (_arg1){ case "fallbackServerName": return (fallbackServerName); case "fpadZone": return (_fpadZone); case "objectEncoding": return (_objectEncoding); case "proxyType": return (_proxyType); default: throw (new VideoError(VideoError.UNSUPPORTED_PROPERTY, _arg1)); }; } flvplayback_internal function connectRTMP():Boolean{ _timeoutTimer.stop(); _timeoutTimer.start(); _tryNC = new Array(); var _local1:int = ((((_protocol == "rtmp:/")) || ((_protocol == "rtmpe:/")))) ? 2 : 1; var _local2:uint; while (_local2 < _local1) { _tryNC[_local2] = new NetConnection(); _tryNC[_local2].objectEncoding = _objectEncoding; _tryNC[_local2].proxyType = _proxyType; if (!isNaN(_fpadZone)){ _tryNC[_local2].fpadZone = _fpadZone; }; _tryNC[_local2].client = new ConnectClient(this, _tryNC[_local2], _local2); _tryNC[_local2].addEventListener(NetStatusEvent.NET_STATUS, connectOnStatus); _local2++; }; nextConnect(); return (false); } public function reconnect():void{ if (!_isRTMP){ throw (new Error("Cannot call reconnect on an http connection")); }; _nc.client = new ReconnectClient(this); _nc.addEventListener(NetStatusEvent.NET_STATUS, reconnectOnStatus); _nc.connect(_ncUri, false); } public function get netConnection():NetConnection{ return (_nc); } public function get bitrate():Number{ return (_bitrate); } public function setProperty(_arg1:String, _arg2):void{ switch (_arg1){ case "fallbackServerName": fallbackServerName = String(_arg2); break; case "fpadZone": _fpadZone = Number(_arg2); break; case "objectEncoding": _objectEncoding = uint(_arg2); break; case "proxyType": _proxyType = String(_arg2); break; default: throw (new VideoError(VideoError.UNSUPPORTED_PROPERTY, _arg1)); }; } public function get timeout():uint{ return (_timeoutTimer.delay); } flvplayback_internal function connectHTTP():Boolean{ _nc = new NetConnection(); _nc.connect(null); _ncConnected = true; return (true); } public function set videoPlayer(_arg1:VideoPlayer):void{ _owner = _arg1; } flvplayback_internal function bitrateMatch():void{ var _local1:Number = _bitrate; if (isNaN(_local1)){ _local1 = 0; }; var _local2:uint = _streams.length; var _local3:uint; while (_local3 < _streams.length) { if (((isNaN(_streams[_local3].bitrate)) || ((_local1 >= _streams[_local3].bitrate)))){ _local2 = _local3; break; }; _local3++; }; if (_local2 == _streams.length){ throw (new VideoError(VideoError.NO_BITRATE_MATCH)); }; if (_streamName != null){ _streamName = (_streamName + _streams[_local2].src); } else { _streamName = _streams[_local2].src; }; if (((_isRTMP) && ((_streamName.substr(-4).toLowerCase() == ".flv")))){ _streamName = _streamName.substr(0, (_streamName.length - 4)); }; _streamLength = _streams[_local2].dur; } flvplayback_internal function disconnectOnStatus(_arg1:NetStatusEvent):void{ if (_arg1.info.code == "NetConnection.Connect.Success"){ _arg1.target.removeEventListener(NetStatusEvent.NET_STATUS, disconnectOnStatus); _arg1.target.close(); }; } flvplayback_internal function nextConnect(_arg1:TimerEvent=null):void{ var _local2:String; var _local3:String; if (_connTypeCounter == 0){ _local2 = _protocol; _local3 = _portNumber; } else { _local3 = null; if (_protocol == "rtmp:/"){ _local2 = "rtmpt:/"; } else { if (_protocol == "rtmpe:/"){ _local2 = "rtmpte:/"; } else { _tryNC.pop(); return; }; }; }; var _local4:String = (((_local2 + ((_serverName)==null) ? "" : ((("/" + _serverName) + ((_local3)==null) ? "" : (":" + _local3)) + "/")) + ((_wrappedURL)==null) ? "" : (_wrappedURL + "/")) + _appName); _tryNC[_connTypeCounter].client.pending = true; _tryNC[_connTypeCounter].connect(_local4, _autoSenseBW); if (_connTypeCounter < (_tryNC.length - 1)){ _connTypeCounter++; _tryNCTimer.reset(); _tryNCTimer.start(); }; } flvplayback_internal function connectFPAD(_arg1:String):Boolean{ var _local2:Object = /^(.+)(\?|\&)(uri=)([^&]+)(\&.*)?$/.exec(_arg1); if (_local2 == null){ throw (new VideoError(VideoError.INVALID_SOURCE, ("fpad url must include uri parameter: " + _arg1))); }; var _local3:String = (_local2[1] + _local2[2]); var _local4:String = _local2[4]; var _local5:String = ((_local2[5])==undefined) ? "" : _local2[5]; var _local6:ParseResults = parseURL(_local4); if (!_local6.isRTMP){ throw (new VideoError(VideoError.INVALID_SOURCE, ("fpad url uri parameter must be rtmp url: " + _arg1))); }; _fpadMgr = new FPADManager(this); return (_fpadMgr.connectXML(_local3, _local4, _local5, _local6)); } public function get isRTMP():Boolean{ return (_isRTMP); } public function get streamLength():Number{ return (_streamLength); } public function connectAgain():Boolean{ var _local1:int = _appName.indexOf("/"); if (_local1 < 0){ _local1 = _streamName.indexOf("/"); if (_local1 >= 0){ _appName = (_appName + "/"); _appName = (_appName + _streamName.slice(0, _local1)); _streamName = _streamName.slice((_local1 + 1)); }; return (false); }; var _local2:String = _appName.slice((_local1 + 1)); _local2 = (_local2 + "/"); _local2 = (_local2 + _streamName); _streamName = _local2; _appName = _appName.slice(0, _local1); close(); _payload = 0; _connTypeCounter = 0; cleanConns(); connectRTMP(); return (true); } flvplayback_internal function parseURL(_arg1:String):ParseResults{ var _local5:int; var _local6:int; var _local7:String; var _local8:ParseResults; var _local2:ParseResults = new ParseResults(); var _local3:int; var _local4:int = _arg1.indexOf(":/", _local3); if (_local4 >= 0){ _local4 = (_local4 + 2); _local2.protocol = _arg1.slice(_local3, _local4).toLowerCase(); _local2.isRelative = false; } else { _local2.isRelative = true; }; if (((!((_local2.protocol == null))) && ((((((((((_local2.protocol == "rtmp:/")) || ((_local2.protocol == "rtmpt:/")))) || ((_local2.protocol == "rtmps:/")))) || ((_local2.protocol == "rtmpe:/")))) || ((_local2.protocol == "rtmpte:/")))))){ _local2.isRTMP = true; _local3 = _local4; if (_arg1.charAt(_local3) == "/"){ _local3++; _local5 = _arg1.indexOf(":", _local3); _local6 = _arg1.indexOf("/", _local3); if (_local6 < 0){ if (_local5 < 0){ _local2.serverName = _arg1.slice(_local3); } else { _local4 = _local5; _local2.portNumber = _arg1.slice(_local3, _local4); _local3 = (_local4 + 1); _local2.serverName = _arg1.slice(_local3); }; return (_local2); }; if ((((_local5 >= 0)) && ((_local5 < _local6)))){ _local4 = _local5; _local2.serverName = _arg1.slice(_local3, _local4); _local3 = (_local4 + 1); _local4 = _local6; _local2.portNumber = _arg1.slice(_local3, _local4); } else { _local4 = _local6; _local2.serverName = _arg1.slice(_local3, _local4); }; _local3 = (_local4 + 1); }; if (_arg1.charAt(_local3) == "?"){ _local7 = _arg1.slice((_local3 + 1)); _local8 = parseURL(_local7); if ((((_local8.protocol == null)) || (!(_local8.isRTMP)))){ throw (new VideoError(VideoError.INVALID_SOURCE, _arg1)); }; _local2.wrappedURL = "?"; _local2.wrappedURL = (_local2.wrappedURL + _local8.protocol); if (_local8.serverName != null){ _local2.wrappedURL = (_local2.wrappedURL + "/"); _local2.wrappedURL = (_local2.wrappedURL + _local8.serverName); }; if (_local8.portNumber != null){ _local2.wrappedURL = (_local2.wrappedURL + (":" + _local8.portNumber)); }; if (_local8.wrappedURL != null){ _local2.wrappedURL = (_local2.wrappedURL + "/"); _local2.wrappedURL = (_local2.wrappedURL + _local8.wrappedURL); }; _local2.appName = _local8.appName; _local2.streamName = _local8.streamName; return (_local2); }; _local4 = _arg1.indexOf("/", _local3); if (_local4 < 0){ _local2.appName = _arg1.slice(_local3); return (_local2); }; _local2.appName = _arg1.slice(_local3, _local4); _local3 = (_local4 + 1); _local4 = _arg1.indexOf("/", _local3); if (_local4 < 0){ _local2.streamName = _arg1.slice(_local3); if (_local2.streamName.slice(-4).toLowerCase() == ".flv"){ _local2.streamName = _local2.streamName.slice(0, -4); }; return (_local2); }; _local2.appName = (_local2.appName + "/"); _local2.appName = (_local2.appName + _arg1.slice(_local3, _local4)); _local3 = (_local4 + 1); _local2.streamName = _arg1.slice(_local3); if (_local2.streamName.slice(-4).toLowerCase() == ".flv"){ _local2.streamName = _local2.streamName.slice(0, -4); }; } else { _local2.isRTMP = false; _local2.streamName = _arg1; }; return (_local2); } flvplayback_internal function initOtherInfo():void{ _contentPath = null; _streamName = null; _streamWidth = -1; _streamHeight = -1; _streamLength = NaN; _streams = null; _autoSenseBW = false; _payload = 0; _connTypeCounter = 0; cleanConns(); } public function set timeout(_arg1:uint):void{ _timeoutTimer.delay = _arg1; } flvplayback_internal function _onFMSConnectTimeOut(_arg1:TimerEvent=null):void{ cleanConns(); _nc = null; _ncConnected = false; if (!connectAgain()){ _owner.ncConnected(); }; } public function get streamHeight():int{ return (_streamHeight); } flvplayback_internal function connectOnStatus(_arg1:NetStatusEvent):void{ var _local2:ParseResults; _arg1.target.client.pending = false; if (_arg1.info.code == "NetConnection.Connect.Success"){ _nc = _tryNC[_arg1.target.client.connIndex]; cleanConns(); } else { if ((((((_arg1.info.code == "NetConnection.Connect.Rejected")) && (!((_arg1.info.ex == null))))) && ((_arg1.info.ex.code == 302)))){ _connTypeCounter = 0; cleanConns(); _local2 = parseURL(_arg1.info.ex.redirect); if (_local2.isRTMP){ _protocol = _local2.protocol; _serverName = _local2.serverName; _wrappedURL = _local2.wrappedURL; _portNumber = _local2.portNumber; _appName = _local2.appName; if (_local2.streamName != null){ _appName = (_appName + ("/" + _local2.streamName)); }; connectRTMP(); } else { tryFallBack(); }; } else { if ((((((_arg1.info.code == "NetConnection.Connect.Failed")) || ((_arg1.info.code == "NetConnection.Connect.Rejected")))) && ((_arg1.target.client.connIndex == (_tryNC.length - 1))))){ if (!connectAgain()){ tryFallBack(); }; }; }; }; } flvplayback_internal function onReconnected():void{ _ncConnected = true; _owner.ncReconnected(); } flvplayback_internal function tryFallBack():void{ if ((((_serverName == fallbackServerName)) || ((fallbackServerName == null)))){ _nc = null; _ncConnected = false; _owner.ncConnected(); } else { _connTypeCounter = 0; cleanConns(); _serverName = fallbackServerName; connectRTMP(); }; } public function set bitrate(_arg1:Number):void{ if (!_isRTMP){ _bitrate = _arg1; }; } flvplayback_internal function onConnected(_arg1:NetConnection, _arg2:Number):void{ var _local3:Array; var _local4:uint; var _local5:String; _timeoutTimer.stop(); _arg1.removeEventListener(NetStatusEvent.NET_STATUS, connectOnStatus); _nc = _arg1; _ncUri = _nc.uri; _ncConnected = true; if (_autoSenseBW){ _bitrate = (_arg2 * 0x0400); if (_streams != null){ bitrateMatch(); } else { _local3 = _streamName.split(","); _local4 = 0; while (_local4 < _local3.length) { _local5 = stripFrontAndBackWhiteSpace(_local3[_local4]); if ((_local4 + 1) < _local3.length){ if (_arg2 <= Number(_local3[(_local4 + 1)])){ _streamName = _local5; break; }; } else { _streamName = _local5; break; }; _local4 = (_local4 + 2); }; if (_streamName.slice(-4).toLowerCase() == ".flv"){ _streamName = _streamName.slice(0, -4); }; }; }; if (((!(_owner.isLive)) && (isNaN(_streamLength)))){ _nc.call("getStreamLength", new Responder(getStreamLengthResult), _streamName); } else { _owner.ncConnected(); }; } public function close():void{ if (_nc){ _nc.close(); _ncConnected = false; }; } flvplayback_internal static function stripFrontAndBackWhiteSpace(_arg1:String):String{ var _local2:uint; var _local3:uint = _arg1.length; var _local4:int; var _local5:int = _local3; _local2 = 0; for (;_local2 < _local3;_local2++) { switch (_arg1.charCodeAt(_local2)){ case 9: case 10: case 13: case 32: continue; }; _local4 = _local2; break; }; _local2 = _local3; for (;_local2 >= 0;_local2--) { switch (_arg1.charCodeAt(_local2)){ case 9: case 10: case 13: case 32: continue; }; _local5 = (_local2 + 1); break; }; if (_local5 <= _local4){ return (""); }; return (_arg1.slice(_local4, _local5)); } } }//package fl.video
Section 15
//ParseResults (fl.video.ParseResults) package fl.video { public class ParseResults { public var portNumber:String; public var streamName:String; public var appName:String; public var serverName:String; public var isRTMP:Boolean; public var wrappedURL:String; public var isRelative:Boolean; public var protocol:String; } }//package fl.video
Section 16
//QueuedCommand (fl.video.QueuedCommand) package fl.video { public class QueuedCommand { public var isLive:Boolean; public var type:uint; public var time:Number; public var url:String; public static const LOAD:uint = 1; public static const STOP:uint = 3; public static const PLAY_WHEN_ENOUGH:uint = 5; public static const PLAY:uint = 0; public static const PAUSE:uint = 2; public static const SEEK:uint = 4; public function QueuedCommand(_arg1:uint, _arg2:String, _arg3:Boolean, _arg4:Number){ this.type = _arg1; this.url = _arg2; this.isLive = _arg3; this.time = _arg4; } } }//package fl.video
Section 17
//ReconnectClient (fl.video.ReconnectClient) package fl.video { public class ReconnectClient { public var owner:NCManager; public function ReconnectClient(_arg1:NCManager){ this.owner = _arg1; } public function close():void{ } public function onBWDone(... _args):void{ owner.onReconnected(); } } }//package fl.video
Section 18
//SeekBarAccImpl (fl.video.SeekBarAccImpl) package fl.video { import flash.display.*; import flash.events.*; import flash.utils.*; import flash.accessibility.*; public class SeekBarAccImpl extends AccessibilityImplementation { private var _timer:Timer; private var _vc:FLVPlayback; protected var master:Sprite; protected var role:uint; private var _cachedPercentage:Number; private static const ROLE_SYSTEM_INDICATOR:uint = 39; private static const ROLE_SLIDER:uint = 51; private static const STATE_SYSTEM_FOCUSABLE:uint = 0x100000; private static const EVENT_OBJECT_SELECTION:uint = 32774; private static const ROLE_SYSTEM_PUSHBUTTON:uint = 43; private static const STATE_SYSTEM_FOCUSED:uint = 4; private static const STATE_SYSTEM_SELECTABLE:uint = 0x200000; private static const EVENT_OBJECT_FOCUS:uint = 32773; private static const STATE_SYSTEM_SELECTED:uint = 2; private static const EVENT_OBJECT_VALUECHANGE:uint = 32782; private static const EVENT_OBJECT_LOCATIONCHANGE:uint = 32779; private static const STATE_SYSTEM_NORMAL:uint = 0; private static const STATE_SYSTEM_UNAVAILABLE:uint = 1; public function SeekBarAccImpl(_arg1:Sprite){ var n:int; var i:int; var sprite = _arg1; super(); stub = false; master = sprite; if (!master.accessibilityProperties){ master.accessibilityProperties = new AccessibilityProperties(); }; master.accessibilityProperties.forceSimple = true; var events:Array = eventsToHandle; if (events){ n = events.length; i = 0; while (i < n) { master.addEventListener(events[i], eventHandler); i = (i + 1); }; }; master.addEventListener(FocusEvent.FOCUS_IN, focusInHandler); try { _vc = Object(master).uiMgr._vc; _vc.addEventListener(VideoEvent.PLAYHEAD_UPDATE, eventHandler); } catch(e:Error) { }; role = SeekBarAccImpl.ROLE_SLIDER; } protected function getName(_arg1:uint):String{ var _local2 = ""; switch (_arg1){ case 1: _local2 = "Page Left"; break; case 2: _local2 = "Position"; break; case 3: _local2 = "Page Right"; break; case 0: _local2 = ""; break; }; return (_local2); } override public function get_accName(_arg1:uint):String{ var _local2 = ""; if ((((((((_arg1 == 0)) && (master.accessibilityProperties))) && (master.accessibilityProperties.name))) && (!((master.accessibilityProperties.name == ""))))){ _local2 = (_local2 + (master.accessibilityProperties.name + " ")); }; _local2 = (_local2 + (getName(_arg1) + getStatusName())); return ((((!((_local2 == null))) && (!((_local2 == ""))))) ? _local2 : null); } private function secondsToTime(_arg1:Number):String{ var _local2:String; var _local3:String; var _local4:String; var _local5:int; var _local6:int; var _local7:Number; _local5 = ((_arg1)>=3600) ? (_arg1 / 3600) : 0; _local6 = ((_arg1)>=60) ? ((_arg1 / 60) - (_local5 * 60)) : 0; _local7 = (_arg1 - ((_local5 * 3600) + (_local6 * 60))); _local2 = String(_local5); _local3 = ((((String(_local6).length == 1)) && ((_local5 > 0)))) ? ("0" + String(_local6)) : String(_local6); _local4 = ((String(Math.floor(_local7)).length)==1) ? ("0" + String(_local7)) : String(_local7); var _local8:String = ((_local3 + ":") + _local4); if (_local5 > 0){ _local8 = ((((_local2 + ":") + _local3) + ":") + _local4); }; return (_local8); } override public function accDoDefaultAction(_arg1:uint):void{ var nearestCuePoint:Object; var nextCuePoint:Object; var childID = _arg1; var percent:Number = _vc.playheadPercentage; nearestCuePoint = _vc.findNearestCuePoint(_vc.playheadTime); if (childID == 1){ percent = (percent - (_vc.seekBarScrubTolerance * 2)); _vc.playheadPercentage = Math.max(percent, 0); } else { if (childID == 3){ if (_vc.playheadPercentage >= 99){ return; }; if (((!((nearestCuePoint == null))) && ((nearestCuePoint.index < ((nearestCuePoint.array as Array).length - 1))))){ try { nextCuePoint = _vc.findCuePoint(nearestCuePoint.array[(nearestCuePoint.index + 1)]); if (((nextCuePoint) && (_vc.isFLVCuePointEnabled(nextCuePoint)))){ if (isNaN(Number(_vc.metadata.videocodecid))){ _vc.playheadPercentage = Math.max(((nextCuePoint.time / _vc.totalTime) * 100), Math.min(99, (_vc.playheadPercentage + (_vc.seekBarScrubTolerance * 2)))); } else { _vc.playheadTime = nextCuePoint.time; }; }; } catch(err:Error) { }; }; }; }; } protected function eventHandler(_arg1:Event):void{ var _local2:SeekBarAccImpl; if (Accessibility.active){ switch (_arg1.type){ case VideoEvent.PLAYHEAD_UPDATE: _cachedPercentage = _vc.playheadPercentage; _local2 = this; if (Accessibility.active){ Accessibility.sendEvent(master, 0, EVENT_OBJECT_SELECTION); Accessibility.sendEvent(master, 0, EVENT_OBJECT_VALUECHANGE, true); }; if (!_timer){ _timer = new Timer(10); _timer.removeEventListener(TimerEvent.TIMER, sendAccessibilityEvent); _timer.addEventListener(TimerEvent.TIMER, sendAccessibilityEvent); _timer.start(); }; break; }; }; } private function sendAccessibilityEvent(_arg1:TimerEvent):void{ if (_cachedPercentage != _vc.playheadPercentage){ _arg1.target.stop(); _arg1.target.removeEventListener(TimerEvent.TIMER, sendAccessibilityEvent); _timer = undefined; if (Accessibility.active){ Accessibility.sendEvent(master, 0, EVENT_OBJECT_SELECTION); Accessibility.sendEvent(master, 0, EVENT_OBJECT_VALUECHANGE, true); }; }; } override public function accLocation(_arg1:uint){ var _local2:Object = master; var _local3:UIManager = (_vc.uiMgr as UIManager); var _local4:DisplayObject = (_local3.controls[UIManager.SEEK_BAR] as DisplayObject); var _local5:Dictionary = (UIManager(_local3).ctrlDataDict as Dictionary); var _local6:ControlData = _local5[_local4]; switch (_arg1){ case 0: if (_local6.hit_mc){ _local2 = _local6.hit_mc; }; break; case 1: case 3: if (_local6.progress_mc){ _local2 = _local6.progress_mc; }; break; default: break; }; return (_local2); } override public function get_accState(_arg1:uint):uint{ var _local2:uint = getState(_arg1); return (_local2); } private function getStatusName():String{ return (""); } protected function getState(_arg1:uint):uint{ var _local2:uint = STATE_SYSTEM_NORMAL; if (_arg1 == 0){ if (((!(master.mouseEnabled)) || (!(master.tabEnabled)))){ _local2 = (_local2 | STATE_SYSTEM_UNAVAILABLE); } else { _local2 = (_local2 | STATE_SYSTEM_FOCUSABLE); }; if (Sprite(master).stage.focus == master){ _local2 = (_local2 | STATE_SYSTEM_FOCUSED); }; }; return (_local2); } override public function get_accDefaultAction(_arg1:uint):String{ if ((((_arg1 == 1)) || ((_arg1 == 3)))){ return ("Press"); }; return (null); } override public function getChildIDArray():Array{ var _local1:Array = []; var _local2:uint; while (_local2 < 3) { _local1[_local2] = (_local2 + 1); _local2++; }; return (_local1); } private function focusInHandler(_arg1:Event):void{ if (Accessibility.active){ Accessibility.sendEvent(master, 0, EVENT_OBJECT_FOCUS); Accessibility.sendEvent(master, 0, EVENT_OBJECT_VALUECHANGE, true); }; } override public function get_accRole(_arg1:uint):uint{ if (_arg1 == 0){ return (role); }; if (_arg1 == 2){ return (ROLE_SYSTEM_INDICATOR); }; return (ROLE_SYSTEM_PUSHBUTTON); } override public function get_accValue(_arg1:uint):String{ if (_arg1 == 0){ return ((Math.round(_vc.playheadPercentage).toString() + "%")); }; return (null); } protected function get eventsToHandle():Array{ return ([]); } public static function createAccessibilityImplementation(_arg1:Sprite):void{ _arg1.accessibilityImplementation = new SeekBarAccImpl(_arg1); } public static function enableAccessibility():void{ } } }//package fl.video
Section 19
//SkinErrorEvent (fl.video.SkinErrorEvent) package fl.video { import flash.events.*; public class SkinErrorEvent extends ErrorEvent { public static const SKIN_ERROR:String = "skinError"; public function SkinErrorEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:String=""){ super(_arg1, _arg2, _arg3, _arg4); } override public function clone():Event{ return (new SkinErrorEvent(type, bubbles, cancelable, text)); } } }//package fl.video
Section 20
//SMILManager (fl.video.SMILManager) package fl.video { import flash.events.*; import flash.net.*; public class SMILManager { flvplayback_internal var width:int; flvplayback_internal var xmlLoader:URLLoader; flvplayback_internal var xml:XML; flvplayback_internal var height:int; private var _url:String; flvplayback_internal var videoTags:Array; flvplayback_internal var baseURLAttr:Array; private var _owner:INCManager; public static const VERSION:String = "2.1.0.20"; public static const SHORT_VERSION:String = "2.1"; public function SMILManager(_arg1:INCManager){ _owner = _arg1; width = -1; height = -1; } flvplayback_internal function parseSwitch(_arg1:XML):void{ var _local2:String; var _local3:XML; for (_local2 in _arg1.*) { _local3 = _arg1.*[_local2]; if (_local3.nodeKind() != "element"){ } else { switch (_local3.localName()){ case "video": case "ref": videoTags.push(parseVideo(_local3)); break; default: break; }; }; }; } flvplayback_internal function parseVideo(_arg1:XML):Object{ var _local2:Object = new Object(); if (_arg1.@src.length() > 0){ _local2.src = _arg1.@src.toString(); }; if (_arg1.@["system-bitrate"].length() > 0){ _local2.bitrate = int(_arg1.@["system-bitrate"].toString()); }; if (_arg1.@dur.length() > 0){ _local2.dur = parseTime(_arg1.@dur.toString()); }; return (_local2); } flvplayback_internal function connectXML(_arg1:String):Boolean{ _url = fixURL(_arg1); xmlLoader = new URLLoader(); xmlLoader.addEventListener(Event.COMPLETE, xmlLoadEventHandler); xmlLoader.addEventListener(IOErrorEvent.IO_ERROR, xmlLoadEventHandler); xmlLoader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, xmlLoadEventHandler); xmlLoader.load(new URLRequest(_url)); return (false); } flvplayback_internal function fixURL(_arg1:String):String{ var _local2:String; if (/^(http:|https:)/i.test(_arg1)){ _local2 = ((_arg1.indexOf("?"))>=0) ? "&" : "?"; return ((((_arg1 + _local2) + "FLVPlaybackVersion=") + SHORT_VERSION)); }; return (_arg1); } flvplayback_internal function xmlLoadEventHandler(_arg1:Event):void{ var e = _arg1; try { if (e.type != Event.COMPLETE){ _owner.helperDone(this, false); } else { baseURLAttr = new Array(); videoTags = new Array(); xml = new XML(xmlLoader.data); if ((((xml == null)) || ((xml.localName() == null)))){ throw (new VideoError(VideoError.INVALID_XML, (("URL: \"" + _url) + "\" No root node found; if url is for an flv it must have .flv extension and take no parameters"))); } else { if (xml.localName() != "smil"){ throw (new VideoError(VideoError.INVALID_XML, (("URL: \"" + _url) + "\" Root node not smil"))); }; }; checkForIllegalNodes(xml, "element", ["head", "body"]); if (xml.head.length() > 0){ parseHead(xml.head[0]); }; if (xml.body.length() < 1){ throw (new VideoError(VideoError.INVALID_XML, (("URL: \"" + _url) + "\" Tag body is required."))); } else { parseBody(xml.body[0]); }; _owner.helperDone(this, true); }; } catch(err:Error) { _owner.helperDone(this, false); throw (err); } finally { xmlLoader.removeEventListener(Event.COMPLETE, xmlLoadEventHandler); xmlLoader.removeEventListener(IOErrorEvent.IO_ERROR, xmlLoadEventHandler); xmlLoader.removeEventListener(SecurityErrorEvent.SECURITY_ERROR, xmlLoadEventHandler); xmlLoader = null; }; } flvplayback_internal function checkForIllegalNodes(_arg1:XML, _arg2:String, _arg3:Array):void{ var _local4:String; var _local5:Boolean; var _local6:XML; var _local7:String; var _local8:String; for (_local4 in _arg1.*) { _local5 = false; _local6 = _arg1.*[_local4]; if (_local6.nodeKind() != _arg2){ } else { _local7 = _local6.localName(); for (_local8 in _arg3) { if (_arg3[_local8] == _local7){ _local5 = true; break; }; }; if (!_local5){ throw (new VideoError(VideoError.INVALID_XML, (((((((("URL: \"" + _url) + "\" ") + _arg2) + " ") + _local7) + " not supported in ") + _arg1.localName()) + " tag."))); }; }; }; } flvplayback_internal function parseHead(_arg1:XML):void{ checkForIllegalNodes(_arg1, "element", ["meta", "layout"]); if (_arg1.meta.length() > 0){ checkForIllegalNodes(_arg1.meta[0], "element", []); checkForIllegalNodes(_arg1.meta[0], "attribute", ["base"]); if (_arg1.meta.@base.length() > 0){ baseURLAttr.push(_arg1.meta.@base.toString()); }; }; if (_arg1.layout.length() > 0){ parseLayout(_arg1.layout[0]); }; } flvplayback_internal function parseBody(_arg1:XML):void{ var _local2:XML; var _local4:Object; if (((!((_arg1.*.length() == 1))) || (!((_arg1.*[0].nodeKind() == "element"))))){ throw (new VideoError(VideoError.INVALID_XML, (((("URL: \"" + _url) + "\" Tag ") + _arg1.localName()) + " is required to contain exactly one tag."))); }; _local2 = _arg1.*[0]; var _local3:String = _local2.localName(); switch (_local3){ case "switch": parseSwitch(_local2); break; case "video": case "ref": _local4 = parseVideo(_local2); videoTags.push(_local4); break; default: throw (new VideoError(VideoError.INVALID_XML, (((((("URL: \"" + _url) + "\" Tag ") + _local3) + " not supported in ") + _arg1.localName()) + " tag."))); }; if (videoTags.length < 1){ throw (new VideoError(VideoError.INVALID_XML, (("URL: \"" + _url) + "\" At least one video of ref tag is required."))); }; } flvplayback_internal function parseTime(_arg1:String):Number{ var _local3:Number; var _local4:Number; var _local2:Object = /^((\d+):)?(\d+):((\d+)(.\d+)?)$/.exec(_arg1); if (_local2 == null){ _local3 = Number(_arg1); if (((isNaN(_local3)) || ((_local3 < 0)))){ throw (new VideoError(VideoError.INVALID_XML, ("Invalid dur value: " + _arg1))); }; return (_local3); //unresolved jump }; _local4 = 0; _local4 = (_local4 + ((uint(_local2[2]) * 60) * 60)); _local4 = (_local4 + (uint(_local2[3]) * 60)); _local4 = (_local4 + Number(_local2[4])); return (_local4); } flvplayback_internal function parseLayout(_arg1:XML):void{ var _local2:XML; var _local3:Number; var _local4:Number; checkForIllegalNodes(_arg1, "element", ["root-layout"]); if (_arg1["root-layout"].length() > 1){ throw (new VideoError(VideoError.INVALID_XML, (("URL: \"" + _url) + "\" Only one base attribute supported in meta tag."))); }; if (_arg1["root-layout"].length() > 0){ _local2 = _arg1["root-layout"][0]; if (_local2.@width.length() > 0){ _local3 = Number(_local2.@width[0]); }; if (_local2.@height.length() > 0){ _local4 = Number(_local2.@height[0]); }; if (((((((isNaN(_local3)) || ((_local3 < 0)))) || (isNaN(_local4)))) || ((_local4 < 0)))){ throw (new VideoError(VideoError.INVALID_XML, (((("URL: \"" + _url) + "\" Tag ") + _arg1.localName()) + " requires attributes width and height. Width and height must be numbers greater than or equal to 0."))); }; width = Math.round(_local3); height = Math.round(_local4); }; } } }//package fl.video
Section 21
//SoundEvent (fl.video.SoundEvent) package fl.video { import flash.events.*; import flash.media.*; public class SoundEvent extends Event { private var _soundTransform:SoundTransform; public static const SOUND_UPDATE:String = "soundUpdate"; public function SoundEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:SoundTransform=null){ super(_arg1, _arg2, _arg3); _soundTransform = _arg4; } public function get soundTransform():SoundTransform{ return (_soundTransform); } override public function clone():Event{ return (new SoundEvent(type, bubbles, cancelable, soundTransform)); } } }//package fl.video
Section 22
//UIManager (fl.video.UIManager) package fl.video { import flash.display.*; import flash.events.*; import flash.geom.*; import flash.net.*; import flash.utils.*; import flash.accessibility.*; import flash.system.*; import flash.ui.*; public class UIManager { flvplayback_internal var cacheStageBGColor:uint; flvplayback_internal var _bufferingDelayTimer:Timer; public var ctrlDataDict:Dictionary; flvplayback_internal var _skinAutoHide:Boolean; flvplayback_internal var placeholderLeft:Number; flvplayback_internal var _playAfterScrub:Boolean; public var customClips:Array; flvplayback_internal var _skinFadeStartTime:int; flvplayback_internal var delayedControls:Array; flvplayback_internal var _lastScrubPos:Number; flvplayback_internal var endTabIndex:int; flvplayback_internal var _skinAutoHideLastMotionTime:int; flvplayback_internal var _volumeBarTimer:Timer; flvplayback_internal var cacheFLVPlaybackScaleMode:Array; flvplayback_internal var borderScale9Rects:Array; flvplayback_internal var _volumeBarScrubTolerance:Number; flvplayback_internal var fullScreenSourceRectMinAspectRatio:Number; flvplayback_internal var _skin:String; flvplayback_internal var fullScreenSourceRectMinHeight:uint; flvplayback_internal var _bufferingBarHides:Boolean; flvplayback_internal var videoRight:Number; flvplayback_internal var placeholderRight:Number; flvplayback_internal var cachedSoundLevel:Number; flvplayback_internal var videoBottom:Number; flvplayback_internal var border_mc:DisplayObject; flvplayback_internal var _skinFadingTimer:Timer; flvplayback_internal var borderAlpha:Number; flvplayback_internal var borderColorTransform:ColorTransform; flvplayback_internal var borderColor:uint; flvplayback_internal var __visible:Boolean; flvplayback_internal var cacheFLVPlaybackLocation:Rectangle; flvplayback_internal var cacheFLVPlaybackIndex:int; flvplayback_internal var _skinReady:Boolean; flvplayback_internal var hitTarget_mc:Sprite; flvplayback_internal var controls:Array; flvplayback_internal var cacheFLVPlaybackAlign:Array; flvplayback_internal var startTabIndex:int; flvplayback_internal var _skinAutoHideMouseX:Number; flvplayback_internal var _skinAutoHideMouseY:Number; flvplayback_internal var layout_mc:Sprite; flvplayback_internal var cacheSkinAutoHide:Boolean; flvplayback_internal var cacheStageScaleMode:String; flvplayback_internal var videoTop:Number; flvplayback_internal var _skinFadingMaxTime:int; flvplayback_internal var placeholderTop:Number; flvplayback_internal var focusRect:Boolean;// = true flvplayback_internal var _lastVolumePos:Number; flvplayback_internal var mouseCaptureCtrl:int; flvplayback_internal var _seekBarScrubTolerance:Number; flvplayback_internal var borderPrevRect:Rectangle; flvplayback_internal var skinTemplate:Sprite; flvplayback_internal var _progressPercent:Number; flvplayback_internal var videoLeft:Number; flvplayback_internal var _fullScreenVideoWidth:Number; flvplayback_internal var _isMuted:Boolean; flvplayback_internal var _skinAutoHideTimer:Timer; flvplayback_internal var _fullScreenBgColor:uint; flvplayback_internal var _vc:FLVPlayback; flvplayback_internal var _bufferingOn:Boolean; flvplayback_internal var _seekBarTimer:Timer; flvplayback_internal var _controlsEnabled:Boolean; flvplayback_internal var _fullScreen:Boolean; flvplayback_internal var placeholderBottom:Number; flvplayback_internal var fullScreenSourceRectMinWidth:uint; flvplayback_internal var _fullScreenTakeOver:Boolean; flvplayback_internal var skin_mc:Sprite; flvplayback_internal var _fullScreenAccel:Boolean; flvplayback_internal var _fullScreenVideoHeight:Number; flvplayback_internal var skinLoadDelayCount:uint; flvplayback_internal var _skinFadingIn:Boolean; flvplayback_internal var _skinAutoHideMotionTimeout:int; flvplayback_internal var borderCopy:Sprite; flvplayback_internal var accessibilityPropertyNames:Array; flvplayback_internal var cacheStageAlign:String; flvplayback_internal var cacheFLVPlaybackParent:DisplayObjectContainer; flvplayback_internal var skinLoader:Loader; flvplayback_internal var _skinScaleMaximum:Number; public static const VOLUME_BAR_HIT:int = 12; public static const MUTE_OFF_BUTTON:int = 10; public static const BACK_BUTTON:int = 5; public static const FORWARD_BUTTON:int = 6; public static const STOP_BUTTON:int = 2; public static const NUM_BUTTONS:int = 13; public static const NORMAL_STATE:uint = 0; public static const SEEK_BAR_HANDLE:int = 3; public static const PLAY_BUTTON:int = 1; public static const MUTE_BUTTON:int = 15; public static const DOWN_STATE:uint = 2; public static const SEEK_BAR_SCRUB_TOLERANCE_DEFAULT:Number = 5; public static const FULL_SCREEN_OFF_BUTTON:int = 8; flvplayback_internal static const SKIN_AUTO_HIDE_MOTION_TIMEOUT_DEFAULT:Number = 3000; public static const SEEK_BAR:int = 17; public static const VOLUME_BAR_SCRUB_TOLERANCE_DEFAULT:Number = 0; public static const FULL_SCREEN_ON_BUTTON:int = 7; public static const SHOW_CONTROLS_BUTTON:Number = 30; public static const FULL_SCREEN_BUTTON:int = 14; public static const BUFFERING_BAR:int = 16; public static const VERSION:String = "2.1.0.20"; public static const VOLUME_BAR_HANDLE:int = 11; public static const PAUSE_BUTTON:int = 0; flvplayback_internal static const SKIN_AUTO_HIDE_INTERVAL:Number = 200; public static const CAPTIONS_ON_BUTTON:Number = 28; public static const OVER_STATE:uint = 1; flvplayback_internal static const SKIN_FADING_INTERVAL:Number = 100; public static const VOLUME_BAR:int = 18; public static const CAPTIONS_OFF_BUTTON:Number = 29; public static const SHORT_VERSION:String = "2.1"; public static const SEEK_BAR_INTERVAL_DEFAULT:Number = 250; flvplayback_internal static const SKIN_FADING_MAX_TIME_DEFAULT:Number = 500; public static const SEEK_BAR_HIT:int = 4; public static const PLAY_PAUSE_BUTTON:int = 13; public static const BUFFERING_DELAY_INTERVAL_DEFAULT:Number = 1000; public static const MUTE_ON_BUTTON:int = 9; public static const HIDE_CONTROLS_BUTTON:Number = 31; public static const FULL_SCREEN_SOURCE_RECT_MIN_HEIGHT:uint = 240; public static const NUM_CONTROLS:int = 19; public static const VOLUME_BAR_INTERVAL_DEFAULT:Number = 250; public static const FULL_SCREEN_SOURCE_RECT_MIN_WIDTH:uint = 320; flvplayback_internal static var layoutNameToIndexMappings:Object = null; flvplayback_internal static var buttonSkinLinkageIDs:Array = ["upLinkageID", "overLinkageID", "downLinkageID"]; flvplayback_internal static var layoutNameArray:Array = ["pause_mc", "play_mc", "stop_mc", null, null, "back_mc", "forward_mc", null, null, null, null, null, null, "playpause_mc", "fullScreenToggle_mc", "volumeMute_mc", "bufferingBar_mc", "seekBar_mc", "volumeBar_mc", "seekBarHandle_mc", "seekBarHit_mc", "seekBarProgress_mc", "seekBarFullness_mc", "volumeBarHandle_mc", "volumeBarHit_mc", "volumeBarProgress_mc", "volumeBarFullness_mc", "progressFill_mc"]; flvplayback_internal static var skinClassPrefixes:Array = ["pauseButton", "playButton", "stopButton", null, null, "backButton", "forwardButton", "fullScreenButtonOn", "fullScreenButtonOff", "muteButtonOn", "muteButtonOff", null, null, null, null, null, "bufferingBar", "seekBar", "volumeBar"]; flvplayback_internal static var customComponentClassNames:Array = ["PauseButton", "PlayButton", "StopButton", null, null, "BackButton", "ForwardButton", null, null, null, null, null, null, "PlayPauseButton", "FullScreenButton", "MuteButton", "BufferingBar", "SeekBar", "VolumeBar"]; public function UIManager(_arg1:FLVPlayback){ var vc = _arg1; accessibilityPropertyNames = ["Pause", "Play", "Stop", "Seek Bar", null, "Back", "Forward", "Go Full Screen", "Exit Full Screen", "Volume Mute On", "Volume Mute Off", "Volume", null, null, null, null, "Buffering", null, null, null, null, null, null, null, null, null, null, null, "Captions Off", "Captions On", "Show Video Player Controls", "Hide Video Player Controls"]; super(); _vc = vc; _skin = null; _skinAutoHide = false; cacheSkinAutoHide = _skinAutoHide; _skinFadingMaxTime = SKIN_FADING_MAX_TIME_DEFAULT; _skinAutoHideMotionTimeout = SKIN_AUTO_HIDE_MOTION_TIMEOUT_DEFAULT; _skinReady = true; __visible = false; _bufferingBarHides = false; _controlsEnabled = true; _lastScrubPos = 0; _lastVolumePos = 0; cachedSoundLevel = _vc.volume; _isMuted = false; controls = new Array(); customClips = null; ctrlDataDict = new Dictionary(true); skin_mc = null; skinLoader = null; skinTemplate = null; layout_mc = null; border_mc = null; borderCopy = null; borderPrevRect = null; borderScale9Rects = null; borderAlpha = 0.85; borderColor = 4697035; borderColorTransform = new ColorTransform(0, 0, 0, 0, 71, 171, 203, (0xFF * borderAlpha)); _seekBarScrubTolerance = SEEK_BAR_SCRUB_TOLERANCE_DEFAULT; _volumeBarScrubTolerance = VOLUME_BAR_SCRUB_TOLERANCE_DEFAULT; _bufferingOn = false; mouseCaptureCtrl = -1; _seekBarTimer = new Timer(SEEK_BAR_INTERVAL_DEFAULT); _seekBarTimer.addEventListener(TimerEvent.TIMER, seekBarListener); _volumeBarTimer = new Timer(VOLUME_BAR_INTERVAL_DEFAULT); _volumeBarTimer.addEventListener(TimerEvent.TIMER, volumeBarListener); _bufferingDelayTimer = new Timer(BUFFERING_DELAY_INTERVAL_DEFAULT, 1); _bufferingDelayTimer.addEventListener(TimerEvent.TIMER, doBufferingDelay); _skinAutoHideTimer = new Timer(SKIN_AUTO_HIDE_INTERVAL); _skinAutoHideTimer.addEventListener(TimerEvent.TIMER, skinAutoHideHitTest); _skinFadingTimer = new Timer(SKIN_FADING_INTERVAL); _skinFadingTimer.addEventListener(TimerEvent.TIMER, skinFadeMore); _vc.addEventListener(MetadataEvent.METADATA_RECEIVED, handleIVPEvent); _vc.addEventListener(VideoEvent.PLAYHEAD_UPDATE, handleIVPEvent); _vc.addEventListener(VideoProgressEvent.PROGRESS, handleIVPEvent); _vc.addEventListener(VideoEvent.STATE_CHANGE, handleIVPEvent); _vc.addEventListener(VideoEvent.READY, handleIVPEvent); _vc.addEventListener(LayoutEvent.LAYOUT, handleLayoutEvent); _vc.addEventListener(AutoLayoutEvent.AUTO_LAYOUT, handleLayoutEvent); _vc.addEventListener(SoundEvent.SOUND_UPDATE, handleSoundEvent); _vc.addEventListener(Event.ADDED_TO_STAGE, handleEvent); _vc.addEventListener(Event.REMOVED_FROM_STAGE, handleEvent); fullScreenSourceRectMinWidth = FULL_SCREEN_SOURCE_RECT_MIN_WIDTH; fullScreenSourceRectMinHeight = FULL_SCREEN_SOURCE_RECT_MIN_HEIGHT; fullScreenSourceRectMinAspectRatio = (FULL_SCREEN_SOURCE_RECT_MIN_WIDTH / FULL_SCREEN_SOURCE_RECT_MIN_HEIGHT); _fullScreen = false; _fullScreenTakeOver = true; _fullScreenBgColor = 0; _fullScreenAccel = false; if (_vc.stage != null){ _vc.stage.addEventListener(FocusEvent.MOUSE_FOCUS_CHANGE, handleMouseFocusChangeEvent); try { _fullScreen = (_vc.stage.displayState == StageDisplayState.FULL_SCREEN); _vc.stage.addEventListener(FullScreenEvent.FULL_SCREEN, handleFullScreenEvent); } catch(se:SecurityError) { }; }; if (layoutNameToIndexMappings == null){ initLayoutNameToIndexMappings(); }; } public function get seekBarScrubTolerance():Number{ return (_seekBarScrubTolerance); } flvplayback_internal function removeButtonListeners(_arg1:Sprite):void{ if (_arg1 == null){ return; }; _arg1.removeEventListener(MouseEvent.ROLL_OVER, handleButtonEvent); _arg1.removeEventListener(MouseEvent.ROLL_OUT, handleButtonEvent); _arg1.removeEventListener(MouseEvent.MOUSE_DOWN, handleButtonEvent); _arg1.removeEventListener(MouseEvent.CLICK, handleButtonEvent); _arg1.removeEventListener(Event.ENTER_FRAME, skinButtonControl); } public function set skinFadeTime(_arg1:int):void{ _skinFadingMaxTime = _arg1; } public function get skinFadeTime():int{ return (_skinFadingMaxTime); } flvplayback_internal function finishLoad(_arg1:Event):void{ var i:int; var cachedActivePlayerIndex:int; var state:String; var j:int; var e = _arg1; try { skinLoadDelayCount++; if (skinLoadDelayCount < 2){ return; } else { _vc.removeEventListener(Event.ENTER_FRAME, finishLoad); }; focusRect = isFocusRectActive(); i = 0; while (i < NUM_CONTROLS) { if (delayedControls[i] != undefined){ setControl(i, delayedControls[i]); }; i = (i + 1); }; if (_fullScreenTakeOver){ enterFullScreenTakeOver(); } else { exitFullScreenTakeOver(); }; layoutSkin(); setupSkinAutoHide(false); skin_mc.visible = __visible; _vc.addChild(skin_mc); _skinReady = true; _vc.skinLoaded(); cachedActivePlayerIndex = _vc.activeVideoPlayerIndex; _vc.activeVideoPlayerIndex = _vc.visibleVideoPlayerIndex; state = _vc.state; j = 0; while (j < NUM_CONTROLS) { if (controls[j] == undefined){ } else { setEnabledAndVisibleForState(j, state); if (j < NUM_BUTTONS){ skinButtonControl(controls[j]); }; }; j = (j + 1); }; _vc.activeVideoPlayerIndex = cachedActivePlayerIndex; } catch(err:Error) { _vc.skinError(err.message); removeSkin(); }; } flvplayback_internal function downloadSkin():void{ if (skinLoader == null){ skinLoader = new Loader(); skinLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, handleLoad); skinLoader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, handleLoadErrorEvent); skinLoader.contentLoaderInfo.addEventListener(SecurityErrorEvent.SECURITY_ERROR, handleLoadErrorEvent); }; skinLoader.load(new URLRequest(_skin)); } flvplayback_internal function removeSkin():void{ var i:int; if (skinLoader != null){ try { skinLoader.close(); } catch(e1:Error) { }; skinLoader = null; }; if (skin_mc != null){ i = 0; while (i < NUM_CONTROLS) { if (controls[i] == undefined){ } else { if (i < NUM_BUTTONS){ removeButtonListeners(controls[i]); }; delete ctrlDataDict[controls[i]]; delete controls[i]; }; i = (i + 1); }; try { skin_mc.parent.removeChild(skin_mc); } catch(e2:Error) { }; skin_mc = null; }; skinTemplate = null; layout_mc = null; border_mc = null; borderCopy = null; borderPrevRect = null; borderScale9Rects = null; } flvplayback_internal function positionBar(_arg1:Sprite, _arg2:String, _arg3:Number):void{ var ctrl = _arg1; var type = _arg2; var percent = _arg3; try { if ((((ctrl["positionBar"] is Function)) && (ctrl["positionBar"](type, percent)))){ return; }; } catch(re2:ReferenceError) { }; var ctrlData:ControlData = ctrlDataDict[ctrl]; var bar:DisplayObject = ctrlData[(type + "_mc")]; if (bar == null){ return; }; var barData:ControlData = ctrlDataDict[bar]; if (bar.parent == ctrl){ if (barData.fill_mc == null){ bar.scaleX = ((barData.origScaleX * percent) / 100); } else { positionMaskedFill(bar, percent); }; } else { bar.x = (ctrl.x + barData.leftMargin); bar.y = (ctrl.y + barData.origY); if (barData.fill_mc == null){ bar.width = ((((ctrl.width - barData.leftMargin) - barData.rightMargin) * percent) / 100); } else { positionMaskedFill(bar, percent); }; }; } flvplayback_internal function setupButtonSkin(_arg1:int, _arg2:DisplayObject):Sprite{ var _local3:String = skinClassPrefixes[_arg1]; if (_local3 == null){ return (null); }; var _local4:Sprite = new Sprite(); var _local5:ControlData = new ControlData(this, _local4, null, _arg1); ctrlDataDict[_local4] = _local5; _local5.state_mc = new Array(); _local5.state_mc[NORMAL_STATE] = setupButtonSkinState(_local4, skinTemplate, (_local3 + "NormalState")); _local5.state_mc[NORMAL_STATE].visible = true; _local5.state_mc[OVER_STATE] = setupButtonSkinState(_local4, skinTemplate, (_local3 + "OverState"), _local5.state_mc[NORMAL_STATE]); _local5.state_mc[DOWN_STATE] = setupButtonSkinState(_local4, skinTemplate, (_local3 + "DownState"), _local5.state_mc[NORMAL_STATE]); _local5.disabled_mc = setupButtonSkinState(_local4, skinTemplate, (_local3 + "DisabledState"), _local5.state_mc[NORMAL_STATE]); if ((_arg2 is InteractiveObject)){ _local4.tabIndex = InteractiveObject(_arg2).tabIndex; }; return (_local4); } public function get skinReady():Boolean{ return (_skinReady); } public function get skinAutoHide():Boolean{ return (_skinAutoHide); } flvplayback_internal function dispatchMessage(_arg1:int):void{ var ctrl:Sprite; var ctrlData:ControlData; var handle:Sprite; var index = _arg1; if ((((index == SEEK_BAR_HANDLE)) || ((index == SEEK_BAR_HIT)))){ _vc._scrubStart(); }; var cachedActivePlayerIndex:int = _vc.activeVideoPlayerIndex; _vc.activeVideoPlayerIndex = _vc.visibleVideoPlayerIndex; switch (index){ case PAUSE_BUTTON: _vc.pause(); break; case PLAY_BUTTON: _vc.play(); break; case STOP_BUTTON: _vc.stop(); break; case SEEK_BAR_HIT: case SEEK_BAR_HANDLE: ctrl = controls[SEEK_BAR]; ctrlData = ctrlDataDict[ctrl]; calcPercentageFromHandle(ctrl); _lastScrubPos = ctrlData.percentage; if (index == SEEK_BAR_HIT){ handle = controls[SEEK_BAR_HANDLE]; handle.x = handle.parent.mouseX; handle.y = handle.parent.mouseY; }; _vc.removeEventListener(VideoEvent.PLAYHEAD_UPDATE, handleIVPEvent); if (((_vc.playing) || (_vc.buffering))){ _playAfterScrub = true; } else { if (_vc.state != VideoState.SEEKING){ _playAfterScrub = false; }; }; _seekBarTimer.start(); startHandleDrag(ctrl); _vc.pause(); break; case VOLUME_BAR_HIT: case VOLUME_BAR_HANDLE: ctrl = controls[VOLUME_BAR]; ctrlData = ctrlDataDict[ctrl]; calcPercentageFromHandle(ctrl); _lastVolumePos = ctrlData.percentage; if (index == VOLUME_BAR_HIT){ handle = controls[VOLUME_BAR_HANDLE]; handle.x = handle.parent.mouseX; handle.y = handle.parent.mouseY; }; _vc.removeEventListener(SoundEvent.SOUND_UPDATE, handleSoundEvent); _volumeBarTimer.start(); startHandleDrag(ctrl); break; case BACK_BUTTON: _vc.seekToPrevNavCuePoint(); break; case FORWARD_BUTTON: _vc.seekToNextNavCuePoint(); break; case MUTE_ON_BUTTON: if (!_isMuted){ _isMuted = true; cachedSoundLevel = _vc.volume; _vc.volume = 0; setEnabledAndVisibleForState(MUTE_OFF_BUTTON, VideoState.PLAYING); skinButtonControl(controls[MUTE_OFF_BUTTON]); setEnabledAndVisibleForState(MUTE_ON_BUTTON, VideoState.PLAYING); skinButtonControl(controls[MUTE_ON_BUTTON]); }; break; case MUTE_OFF_BUTTON: if (_isMuted){ _isMuted = false; _vc.volume = cachedSoundLevel; setEnabledAndVisibleForState(MUTE_OFF_BUTTON, VideoState.PLAYING); skinButtonControl(controls[MUTE_OFF_BUTTON]); setEnabledAndVisibleForState(MUTE_ON_BUTTON, VideoState.PLAYING); skinButtonControl(controls[MUTE_ON_BUTTON]); }; break; case FULL_SCREEN_ON_BUTTON: if (((!(_fullScreen)) && (!((_vc.stage == null))))){ enterFullScreenDisplayState(); setEnabledAndVisibleForState(FULL_SCREEN_OFF_BUTTON, VideoState.PLAYING); skinButtonControl(controls[FULL_SCREEN_OFF_BUTTON]); setEnabledAndVisibleForState(FULL_SCREEN_ON_BUTTON, VideoState.PLAYING); skinButtonControl(controls[FULL_SCREEN_ON_BUTTON]); }; break; case FULL_SCREEN_OFF_BUTTON: if (((_fullScreen) && (!((_vc.stage == null))))){ try { _vc.stage.displayState = StageDisplayState.NORMAL; } catch(se:SecurityError) { }; setEnabledAndVisibleForState(FULL_SCREEN_OFF_BUTTON, VideoState.PLAYING); skinButtonControl(controls[FULL_SCREEN_OFF_BUTTON]); setEnabledAndVisibleForState(FULL_SCREEN_ON_BUTTON, VideoState.PLAYING); skinButtonControl(controls[FULL_SCREEN_ON_BUTTON]); }; break; default: throw (new Error("Unknown ButtonControl")); }; _vc.activeVideoPlayerIndex = cachedActivePlayerIndex; } flvplayback_internal function handleFullScreenEvent(_arg1:FullScreenEvent):void{ _fullScreen = _arg1.fullScreen; setEnabledAndVisibleForState(FULL_SCREEN_OFF_BUTTON, VideoState.PLAYING); skinButtonControl(controls[FULL_SCREEN_OFF_BUTTON]); setEnabledAndVisibleForState(FULL_SCREEN_ON_BUTTON, VideoState.PLAYING); skinButtonControl(controls[FULL_SCREEN_ON_BUTTON]); if (((_fullScreen) && (_fullScreenTakeOver))){ enterFullScreenTakeOver(); } else { if (!_fullScreen){ exitFullScreenTakeOver(); }; }; } flvplayback_internal function handleLayoutEvent(_arg1:LayoutEvent):void{ var _local2:int; if (((((((_fullScreen) && (_fullScreenTakeOver))) && (_fullScreenAccel))) && (!((_vc.stage == null))))){ if (((((((((!((_vc.registrationX == 0))) || (!((_vc.registrationY == 0))))) || (!((_vc.parent == _vc.stage))))) || (((_fullScreenAccel) && (((!((_vc.registrationWidth == _vc.stage.fullScreenSourceRect.width))) || (!((_vc.registrationHeight == _vc.stage.fullScreenSourceRect.height))))))))) || (((!(_fullScreenAccel)) && (((!((_vc.registrationWidth == _vc.stage.stageWidth))) || (!((_vc.registrationHeight == _vc.stage.stageHeight))))))))){ _vc.stage.displayState = StageDisplayState.NORMAL; return; }; _local2 = _vc.activeVideoPlayerIndex; _vc.activeVideoPlayerIndex = _vc.visibleVideoPlayerIndex; if (_vc.align != VideoAlign.CENTER){ cacheFLVPlaybackAlign[_vc.visibleVideoPlayerIndex] = _vc.align; _vc.align = VideoAlign.CENTER; }; if (_vc.scaleMode != VideoScaleMode.MAINTAIN_ASPECT_RATIO){ cacheFLVPlaybackScaleMode[_vc.visibleVideoPlayerIndex] = _vc.scaleMode; _vc.scaleMode = VideoScaleMode.MAINTAIN_ASPECT_RATIO; _vc.activeVideoPlayerIndex = _local2; return; }; _vc.activeVideoPlayerIndex = _local2; }; layoutSkin(); setupSkinAutoHide(false); } flvplayback_internal function seekBarListener(_arg1:TimerEvent):void{ var _local2:int = _vc.activeVideoPlayerIndex; _vc.activeVideoPlayerIndex = _vc.visibleVideoPlayerIndex; var _local3:Sprite = controls[SEEK_BAR]; if (_local3 == null){ return; }; var _local4:ControlData = ctrlDataDict[_local3]; calcPercentageFromHandle(_local3); var _local5:Number = _local4.percentage; if (_arg1 == null){ _seekBarTimer.stop(); if (_local5 != _lastScrubPos){ _vc.seekPercent(_local5); }; _vc.addEventListener(VideoEvent.PLAYHEAD_UPDATE, handleIVPEvent); if (_playAfterScrub){ _vc.play(); }; } else { if (_vc.getVideoPlayer(_vc.visibleVideoPlayerIndex).state == VideoState.SEEKING){ } else { if ((((((((_seekBarScrubTolerance <= 0)) || ((Math.abs((_local5 - _lastScrubPos)) > _seekBarScrubTolerance)))) || ((_local5 < _seekBarScrubTolerance)))) || ((_local5 > (100 - _seekBarScrubTolerance))))){ if (_local5 != _lastScrubPos){ _lastScrubPos = _local5; _vc.seekPercent(_local5); }; }; }; }; _vc.activeVideoPlayerIndex = _local2; } private function handleMouseFocusChangeEvent(_arg1:FocusEvent):void{ var ctrlData:ControlData; var focusCtrlData:ControlData; var ctrl:Sprite; var setFocusedControl:Function; var event = _arg1; try { ctrlData = ctrlDataDict[event.relatedObject]; } catch(error:ReferenceError) { }; if (ctrlData == null){ return; }; var index:int = ctrlData.index; var currentFocus:InteractiveObject = (event.target.stage.focus as InteractiveObject); var focusControl:InteractiveObject; switch (index){ case PLAY_BUTTON: focusControl = (controls[PAUSE_BUTTON] as InteractiveObject); break; case PAUSE_BUTTON: focusControl = (controls[PLAY_BUTTON] as InteractiveObject); break; case STOP_BUTTON: case BACK_BUTTON: case FORWARD_BUTTON: case SEEK_BAR_HANDLE: case VOLUME_BAR_HANDLE: focusControl = (controls[event.relatedObject] as InteractiveObject); break; case SEEK_BAR_HIT: focusControl = (controls[SEEK_BAR_HANDLE] as InteractiveObject); break; case VOLUME_BAR_HIT: focusControl = (controls[VOLUME_BAR_HANDLE] as InteractiveObject); break; case MUTE_ON_BUTTON: focusControl = (controls[MUTE_OFF_BUTTON] as InteractiveObject); break; case MUTE_OFF_BUTTON: focusControl = (controls[MUTE_ON_BUTTON] as InteractiveObject); break; case FULL_SCREEN_ON_BUTTON: focusControl = (controls[FULL_SCREEN_OFF_BUTTON] as InteractiveObject); break; case FULL_SCREEN_OFF_BUTTON: focusControl = (controls[FULL_SCREEN_ON_BUTTON] as InteractiveObject); break; }; if (focusControl != null){ try { focusCtrlData = ctrlDataDict[focusControl]; focusCtrlData.cachedFocusRect = focusControl.focusRect; } catch(error:ReferenceError) { }; focusControl.focusRect = false; if (focusControl.visible){ focusControl.stage.focus = focusControl; focusControl.focusRect = focusCtrlData.cachedFocusRect; } else { ctrl = (event.currentTarget as Sprite); setFocusedControl = function (_arg1:Event):void{ if (_arg1.target.visible){ _arg1.target.stage.focus = _arg1.target; _arg1.target.focusRect = focusCtrlData.cachedFocusRect; _arg1.target.removeEventListener(Event.ENTER_FRAME, setFocusedControl); }; }; focusControl.addEventListener(Event.ENTER_FRAME, setFocusedControl); }; }; } public function get seekBarInterval():Number{ return (_seekBarTimer.delay); } public function set skinAutoHide(_arg1:Boolean):void{ if (_arg1 == _skinAutoHide){ return; }; _skinAutoHide = _arg1; cacheSkinAutoHide = _arg1; setupSkinAutoHide(true); } flvplayback_internal function setCustomClip(_arg1:DisplayObject):void{ var scale9Grid:Rectangle; var diff:Number; var numBorderBitmaps:int; var i:int; var lastXDim:Number; var floorLastXDim:Number; var lastYDim:Number; var floorLastYDim:Number; var newRect:Rectangle; var dispObj = _arg1; var dCopy:DisplayObject = new (dispObj["constructor"]); skin_mc.addChild(dCopy); var ctrlData:ControlData = new ControlData(this, dCopy, null, -1); ctrlDataDict[dCopy] = ctrlData; ctrlData.avatar = dispObj; customClips.push(dCopy); dCopy.accessibilityProperties = new AccessibilityProperties(); dCopy.accessibilityProperties.silent = true; if (dispObj.name == "border_mc"){ border_mc = dCopy; try { borderCopy = (ctrlData.avatar["colorMe"]) ? new Sprite() : null; } catch(re:ReferenceError) { borderCopy = null; }; if (borderCopy != null){ border_mc.visible = false; scale9Grid = border_mc.scale9Grid; scale9Grid.x = Math.round(scale9Grid.x); scale9Grid.y = Math.round(scale9Grid.y); scale9Grid.width = Math.round(scale9Grid.width); diff = ((scale9Grid.x + scale9Grid.width) - border_mc.scale9Grid.right); if (diff > 0.5){ scale9Grid.width--; } else { if (diff < -0.5){ scale9Grid.width++; }; }; scale9Grid.height = Math.round(scale9Grid.height); diff = ((scale9Grid.y + scale9Grid.height) - border_mc.scale9Grid.bottom); if (diff > 0.5){ scale9Grid.height--; } else { if (diff < -0.5){ scale9Grid.height++; }; }; if (scale9Grid != null){ borderScale9Rects = new Array(); lastXDim = (border_mc.width - (scale9Grid.x + scale9Grid.width)); floorLastXDim = Math.floor(lastXDim); if ((lastXDim - floorLastXDim) < 0.05){ lastXDim = floorLastXDim; } else { lastXDim = (floorLastXDim + 1); }; lastYDim = (border_mc.height - (scale9Grid.y + scale9Grid.height)); floorLastYDim = Math.floor(lastYDim); if ((lastYDim - floorLastYDim) < 0.05){ lastYDim = floorLastYDim; } else { lastYDim = (floorLastYDim + 1); }; newRect = new Rectangle(0, 0, scale9Grid.x, scale9Grid.y); borderScale9Rects.push(((((newRect.width < 1)) || ((newRect.height < 1)))) ? null : newRect); newRect = new Rectangle(scale9Grid.x, 0, scale9Grid.width, scale9Grid.y); borderScale9Rects.push(((((newRect.width < 1)) || ((newRect.height < 1)))) ? null : newRect); newRect = new Rectangle((scale9Grid.x + scale9Grid.width), 0, lastXDim, scale9Grid.y); borderScale9Rects.push(((((newRect.width < 1)) || ((newRect.height < 1)))) ? null : newRect); newRect = new Rectangle(0, scale9Grid.y, scale9Grid.x, scale9Grid.height); borderScale9Rects.push(((((newRect.width < 1)) || ((newRect.height < 1)))) ? null : newRect); newRect = new Rectangle(scale9Grid.x, scale9Grid.y, scale9Grid.width, scale9Grid.height); borderScale9Rects.push(((((newRect.width < 1)) || ((newRect.height < 1)))) ? null : newRect); newRect = new Rectangle((scale9Grid.x + scale9Grid.width), scale9Grid.y, lastXDim, scale9Grid.height); borderScale9Rects.push(((((newRect.width < 1)) || ((newRect.height < 1)))) ? null : newRect); newRect = new Rectangle(0, (scale9Grid.y + scale9Grid.height), scale9Grid.x, lastYDim); borderScale9Rects.push(((((newRect.width < 1)) || ((newRect.height < 1)))) ? null : newRect); newRect = new Rectangle(scale9Grid.x, (scale9Grid.y + scale9Grid.height), scale9Grid.width, lastYDim); borderScale9Rects.push(((((newRect.width < 1)) || ((newRect.height < 1)))) ? null : newRect); newRect = new Rectangle((scale9Grid.x + scale9Grid.width), (scale9Grid.y + scale9Grid.height), lastXDim, lastYDim); borderScale9Rects.push(((((newRect.width < 1)) || ((newRect.height < 1)))) ? null : newRect); i = 0; while (i < borderScale9Rects.length) { if (borderScale9Rects[i] != null){ break; }; i = (i + 1); }; if (i >= borderScale9Rects.length){ borderScale9Rects = null; }; }; numBorderBitmaps = ((borderScale9Rects)==null) ? 1 : 9; i = 0; while (i < numBorderBitmaps) { if ((((borderScale9Rects == null)) || (!((borderScale9Rects[i] == null))))){ borderCopy.addChild(new Bitmap()); }; i = (i + 1); }; borderCopy.accessibilityProperties = new AccessibilityProperties(); borderCopy.accessibilityProperties.silent = true; skin_mc.addChild(borderCopy); borderPrevRect = null; }; }; } public function get fullScreenSkinDelay():int{ return (_skinAutoHideMotionTimeout); } flvplayback_internal function doBufferingDelay(_arg1:TimerEvent):void{ _bufferingDelayTimer.reset(); var _local2:int = _vc.activeVideoPlayerIndex; _vc.activeVideoPlayerIndex = _vc.visibleVideoPlayerIndex; if (_vc.state == VideoState.BUFFERING){ _bufferingOn = true; handleIVPEvent(new VideoEvent(VideoEvent.STATE_CHANGE, false, false, VideoState.BUFFERING, NaN, _vc.visibleVideoPlayerIndex)); }; _vc.activeVideoPlayerIndex = _local2; } flvplayback_internal function volumeBarListener(_arg1:TimerEvent):void{ var _local2:Sprite = controls[VOLUME_BAR]; if (_local2 == null){ return; }; var _local3:ControlData = ctrlDataDict[_local2]; calcPercentageFromHandle(_local2); var _local4:Number = _local3.percentage; var _local5 = (_arg1 == null); if (_local5){ _volumeBarTimer.stop(); _vc.addEventListener(SoundEvent.SOUND_UPDATE, handleSoundEvent); }; if (((((((((_local5) || ((_volumeBarScrubTolerance <= 0)))) || ((Math.abs((_local4 - _lastVolumePos)) > _volumeBarScrubTolerance)))) || ((_local4 < _volumeBarScrubTolerance)))) || ((_local4 > (100 - _volumeBarScrubTolerance))))){ if (_local4 != _lastVolumePos){ if (_isMuted){ cachedSoundLevel = (_local4 / 100); } else { _vc.volume = (_local4 / 100); }; _lastVolumePos = _local4; }; }; } public function get visible():Boolean{ return (__visible); } flvplayback_internal function isFocusRectActive():Boolean{ var i:int; var doc:DisplayObjectContainer; var child:DisplayObject; var classReference:Class; var c:*; var o:InteractiveObject = _vc.parent; while (o) { if ((o is DisplayObjectContainer)){ doc = DisplayObjectContainer(o); }; i = 0; while (i < doc.numChildren) { try { child = (doc.getChildAt(i) as DisplayObject); classReference = (getDefinitionByName("fl.core.UIComponent") as Class); if (((((!((child == null))) && (!((child == _vc))))) && ((child is classReference)))){ c = (child as classReference); if (c.focusManager.showFocusIndicator){ return (false); }; break; }; } catch(e:Error) { }; i = (i + 1); }; o = o.parent; }; return (true); } flvplayback_internal function fixUpBar(_arg1:DisplayObject, _arg2:String, _arg3:DisplayObject, _arg4:String):void{ var bar:DisplayObject; var definitionHolder = _arg1; var propPrefix = _arg2; var ctrl = _arg3; var name = _arg4; var ctrlData:ControlData = ctrlDataDict[ctrl]; if (ctrlData[name] != null){ return; }; try { bar = ctrl[name]; } catch(re:ReferenceError) { bar = null; }; if (bar == null){ try { bar = createSkin(definitionHolder, (propPrefix + "LinkageID")); } catch(ve:VideoError) { bar = null; }; if (bar == null){ return; }; if (ctrl.parent != null){ if (getBooleanPropSafe(ctrl, (propPrefix + "Below"))){ ctrl.parent.addChildAt(bar, ctrl.parent.getChildIndex(ctrl)); } else { ctrl.parent.addChild(bar); }; }; }; ctrlData[name] = bar; var barData:ControlData = ctrlDataDict[bar]; if (barData == null){ barData = new ControlData(this, bar, ctrl, -1); ctrlDataDict[bar] = barData; }; } public function get volumeBarInterval():Number{ return (_volumeBarTimer.delay); } public function get bufferingBarHidesAndDisablesOthers():Boolean{ return (_bufferingBarHides); } flvplayback_internal function calcLayoutControl(_arg1:DisplayObject):Rectangle{ var ctrl = _arg1; var rect:Rectangle = new Rectangle(); if (ctrl == null){ return (rect); }; var ctrlData:ControlData = ctrlDataDict[ctrl]; if (ctrlData == null){ return (rect); }; if (ctrlData.avatar == null){ return (rect); }; var anchorRight:Boolean; var anchorLeft:Boolean; var anchorTop:Boolean; var anchorBottom:Boolean; try { anchorRight = ctrlData.avatar["anchorRight"]; } catch(re1:ReferenceError) { anchorRight = false; }; try { anchorLeft = ctrlData.avatar["anchorLeft"]; } catch(re1:ReferenceError) { anchorLeft = true; }; try { anchorTop = ctrlData.avatar["anchorTop"]; } catch(re1:ReferenceError) { anchorTop = false; }; try { anchorBottom = ctrlData.avatar["anchorBottom"]; } catch(re1:ReferenceError) { anchorBottom = true; }; if (anchorRight){ if (anchorLeft){ rect.x = ((ctrlData.avatar.x - placeholderLeft) + videoLeft); rect.width = ((((ctrlData.avatar.x + ctrlData.avatar.width) - placeholderRight) + videoRight) - rect.x); ctrlData.origWidth = NaN; } else { rect.x = ((ctrlData.avatar.x - placeholderRight) + videoRight); rect.width = ctrl.width; }; } else { rect.x = ((ctrlData.avatar.x - placeholderLeft) + videoLeft); rect.width = ctrl.width; }; if (anchorTop){ if (anchorBottom){ rect.y = ((ctrlData.avatar.y - placeholderTop) + videoTop); rect.height = ((((ctrlData.avatar.y + ctrlData.avatar.height) - placeholderBottom) + videoBottom) - rect.y); ctrlData.origHeight = NaN; } else { rect.y = ((ctrlData.avatar.y - placeholderTop) + videoTop); rect.height = ctrl.height; }; } else { rect.y = ((ctrlData.avatar.y - placeholderBottom) + videoBottom); rect.height = ctrl.height; }; try { if ((ctrl["layoutSelf"] is Function)){ rect = ctrl["layoutSelf"](rect); }; } catch(re3:ReferenceError) { }; return (rect); } flvplayback_internal function skinFadeMore(_arg1:TimerEvent):void{ var _local2:Number; if (((((!(_skinFadingIn)) && ((skin_mc.alpha <= 0.5)))) || (((_skinFadingIn) && ((skin_mc.alpha >= 0.95)))))){ skin_mc.visible = _skinFadingIn; skin_mc.alpha = 1; _skinFadingTimer.stop(); } else { _local2 = ((getTimer() - _skinFadeStartTime) / _skinFadingMaxTime); if (!_skinFadingIn){ _local2 = (1 - _local2); }; if (_local2 < 0){ _local2 = 0; } else { if (_local2 > 1){ _local2 = 1; }; }; skin_mc.alpha = _local2; }; } flvplayback_internal function resetPlayPause():void{ if (controls[PLAY_PAUSE_BUTTON] == undefined){ return; }; var _local1:int = PAUSE_BUTTON; while (_local1 <= PLAY_BUTTON) { removeButtonListeners(controls[_local1]); delete ctrlDataDict[controls[_local1]]; delete controls[_local1]; _local1++; }; delete ctrlDataDict[controls[PLAY_PAUSE_BUTTON]]; delete controls[PLAY_PAUSE_BUTTON]; } public function setControl(_arg1:int, _arg2:Sprite):void{ var index = _arg1; var ctrl = _arg2; if (ctrl == controls[index]){ return; }; if (ctrl){ ctrl.tabEnabled = false; }; switch (index){ case PAUSE_BUTTON: case PLAY_BUTTON: resetPlayPause(); break; case PLAY_PAUSE_BUTTON: if ((((ctrl == null)) || (!((ctrl.parent == skin_mc))))){ resetPlayPause(); }; if (ctrl != null){ setControl(PAUSE_BUTTON, Sprite(ctrl.getChildByName("pause_mc"))); setControl(PLAY_BUTTON, Sprite(ctrl.getChildByName("play_mc"))); }; break; case FULL_SCREEN_BUTTON: if (ctrl != null){ setControl(FULL_SCREEN_ON_BUTTON, Sprite(ctrl.getChildByName("on_mc"))); setControl(FULL_SCREEN_OFF_BUTTON, Sprite(ctrl.getChildByName("off_mc"))); }; break; case MUTE_BUTTON: if (ctrl != null){ setControl(MUTE_ON_BUTTON, Sprite(ctrl.getChildByName("on_mc"))); setControl(MUTE_OFF_BUTTON, Sprite(ctrl.getChildByName("off_mc"))); }; break; }; if (controls[index] != null){ try { delete controls[index]["uiMgr"]; } catch(re:ReferenceError) { }; if (index < NUM_BUTTONS){ removeButtonListeners(controls[index]); }; delete ctrlDataDict[controls[index]]; delete controls[index]; }; if (ctrl == null){ return; }; var ctrlData:ControlData = ctrlDataDict[ctrl]; if (ctrlData == null){ ctrlData = new ControlData(this, ctrl, null, index); ctrlDataDict[ctrl] = ctrlData; } else { ctrlData.index = index; }; if (index >= NUM_BUTTONS){ controls[index] = ctrl; switch (index){ case SEEK_BAR: addBarControl(ctrl); break; case VOLUME_BAR: addBarControl(ctrl); ctrlData.percentage = (_vc.volume * 100); break; case BUFFERING_BAR: if (ctrl.parent == skin_mc){ finishAddBufferingBar(); } else { ctrl.addEventListener(Event.ENTER_FRAME, finishAddBufferingBar); }; break; }; setEnabledAndVisibleForState(index, _vc.state); } else { controls[index] = ctrl; addButtonControl(ctrl); }; } flvplayback_internal function bitmapCopyBorder():void{ var _local2:BitmapData; var _local3:Matrix; var _local4:Number; var _local5:Number; var _local6:Rectangle; var _local7:int; var _local8:Number; var _local9:Number; var _local10:int; var _local11:Bitmap; var _local12:Number; var _local13:Number; if ((((border_mc == null)) || ((borderCopy == null)))){ return; }; var _local1:Rectangle = border_mc.getBounds(skin_mc); if ((((borderPrevRect == null)) || (!(borderPrevRect.equals(_local1))))){ borderCopy.x = _local1.x; borderCopy.y = _local1.y; _local3 = new Matrix(border_mc.scaleX, 0, 0, border_mc.scaleY, 0, 0); if (borderScale9Rects == null){ _local2 = new BitmapData(_local1.width, _local1.height, true, 0); _local2.draw(border_mc, _local3, borderColorTransform); Bitmap(borderCopy.getChildAt(0)).bitmapData = _local2; } else { _local4 = 0; _local5 = 0; _local6 = new Rectangle(0, 0, 0, 0); _local7 = 0; _local8 = 0; if (borderScale9Rects[3] != null){ _local8 = (_local8 + borderScale9Rects[3].width); }; if (borderScale9Rects[5] != null){ _local8 = (_local8 + borderScale9Rects[5].width); }; _local9 = 0; if (borderScale9Rects[1] != null){ _local9 = (_local9 + borderScale9Rects[1].height); }; if (borderScale9Rects[7] != null){ _local9 = (_local9 + borderScale9Rects[7].height); }; _local10 = 0; while (_local10 < borderScale9Rects.length) { if ((_local10 % 3) == 0){ _local4 = 0; _local5 = (_local5 + _local6.height); }; if (borderScale9Rects[_local10] == null){ } else { _local6 = Rectangle(borderScale9Rects[_local10]).clone(); _local3.a = 1; if ((((((_local10 == 1)) || ((_local10 == 4)))) || ((_local10 == 7)))){ _local12 = ((_local1.width - _local8) / _local6.width); _local6.x = (_local6.x * _local12); _local6.width = (_local6.width * _local12); _local6.width = Math.round(_local6.width); _local3.a = (_local3.a * _local12); }; _local3.tx = -(_local6.x); _local6.x = 0; _local3.d = 1; if ((((_local10 >= 3)) && ((_local10 <= 5)))){ _local13 = ((_local1.height - _local9) / _local6.height); _local6.y = (_local6.y * _local13); _local6.height = (_local6.height * _local13); _local6.height = Math.round(_local6.height); _local3.d = (_local3.d * _local13); }; _local3.ty = -(_local6.y); _local6.y = 0; _local2 = new BitmapData(_local6.width, _local6.height, true, 0); _local2.draw(border_mc, _local3, borderColorTransform, null, _local6, false); _local11 = Bitmap(borderCopy.getChildAt(_local7)); _local7++; _local11.bitmapData = _local2; _local11.x = _local4; _local11.y = _local5; _local4 = (_local4 + _local6.width); }; _local10++; }; }; borderPrevRect = _local1; }; } flvplayback_internal function createSkin(_arg1:DisplayObject, _arg2:String):DisplayObject{ var stateSkinDesc:*; var theClass:Class; var definitionHolder = _arg1; var skinName = _arg2; try { stateSkinDesc = definitionHolder[skinName]; if ((stateSkinDesc is String)){ try { theClass = Class(definitionHolder.loaderInfo.applicationDomain.getDefinition(stateSkinDesc)); } catch(err1:Error) { theClass = Class(getDefinitionByName(stateSkinDesc)); }; return (DisplayObject(new (theClass))); } else { if ((stateSkinDesc is Class)){ return (new (stateSkinDesc)); } else { if ((stateSkinDesc is DisplayObject)){ return (stateSkinDesc); }; }; }; } catch(err2:Error) { throw (new VideoError(VideoError.MISSING_SKIN_STYLE, skinName)); }; return (null); } flvplayback_internal function hookUpCustomComponents():void{ var i:int; var dispObj:DisplayObject; var name:String; var index:int; var ctrl:Sprite; focusRect = isFocusRectActive(); var searchHash:Object = new Object(); var doTheSearch:Boolean; i = 0; while (i < NUM_CONTROLS) { if (controls[i] == null){ searchHash[customComponentClassNames[i]] = i; doTheSearch = true; }; i = (i + 1); }; if (!doTheSearch){ return; }; i = 0; while (i < _vc.parent.numChildren) { dispObj = _vc.parent.getChildAt(i); name = getQualifiedClassName(dispObj); if (searchHash[name] != undefined){ if (typeof(searchHash[name]) == "number"){ index = int(searchHash[name]); try { ctrl = Sprite(dispObj); if ((((((index >= NUM_BUTTONS)) || ((ctrl["placeholder_mc"] is DisplayObject)))) && ((ctrl["uiMgr"] == null)))){ setControl(index, ctrl); searchHash[name] = ctrl; }; } catch(err:Error) { }; }; }; i = (i + 1); }; } flvplayback_internal function addButtonControl(_arg1:Sprite):void{ if (_arg1 == null){ return; }; var _local2:ControlData = ctrlDataDict[_arg1]; _arg1.buttonMode = true; _arg1.tabEnabled = true; _arg1.tabChildren = true; _arg1.focusRect = focusRect; _arg1.accessibilityProperties = new AccessibilityProperties(); _arg1.accessibilityProperties.forceSimple = true; _arg1.accessibilityProperties.silent = true; if (accessibilityPropertyNames[_local2.index] != null){ _arg1.accessibilityProperties.name = accessibilityPropertyNames[_local2.index]; _arg1.accessibilityProperties.silent = false; }; if ((((_local2.index == VOLUME_BAR_HIT)) || ((_local2.index == SEEK_BAR_HIT)))){ _arg1.buttonMode = false; _arg1.tabEnabled = false; _arg1.tabChildren = false; _arg1.focusRect = false; _arg1.accessibilityProperties.silent = true; }; if ((((_local2.index == VOLUME_BAR_HANDLE)) || ((_local2.index == SEEK_BAR_HANDLE)))){ _arg1.graphics.moveTo(0, -18); _arg1.graphics.lineStyle(0, 0, 0); _arg1.graphics.lineTo(0, -18); _arg1.buttonMode = false; _arg1.focusRect = true; _arg1.accessibilityProperties.silent = false; configureBarAccessibility(_local2.index); }; _arg1.mouseChildren = false; var _local3:int = _vc.activeVideoPlayerIndex; _vc.activeVideoPlayerIndex = _vc.visibleVideoPlayerIndex; _local2.state = NORMAL_STATE; setEnabledAndVisibleForState(_local2.index, _vc.state); _arg1.addEventListener(MouseEvent.ROLL_OVER, handleButtonEvent); _arg1.addEventListener(MouseEvent.ROLL_OUT, handleButtonEvent); _arg1.addEventListener(MouseEvent.MOUSE_DOWN, handleButtonEvent); _arg1.addEventListener(MouseEvent.CLICK, handleButtonEvent); _arg1.addEventListener(KeyboardEvent.KEY_DOWN, handleKeyEvent); _arg1.addEventListener(KeyboardEvent.KEY_UP, handleKeyEvent); _arg1.addEventListener(FocusEvent.FOCUS_IN, handleFocusEvent); _arg1.addEventListener(FocusEvent.FOCUS_OUT, handleFocusEvent); if (_arg1.parent == skin_mc){ skinButtonControl(_arg1); } else { _arg1.addEventListener(Event.ENTER_FRAME, skinButtonControl); }; _vc.activeVideoPlayerIndex = _local3; } flvplayback_internal function exitFullScreenTakeOver():void{ var fullScreenBG:Sprite; var cacheActiveIndex:int; var i:int; var vp:VideoPlayer; if (cacheFLVPlaybackParent == null){ return; }; _vc.removeEventListener(Event.ADDED_TO_STAGE, handleEvent); _vc.stage.removeEventListener(FullScreenEvent.FULL_SCREEN, handleFullScreenEvent); try { if (_fullScreenAccel){ _vc.stage.fullScreenSourceRect = new Rectangle(0, 0, -1, -1); } else { _vc.stage.align = cacheStageAlign; _vc.stage.scaleMode = cacheStageScaleMode; }; fullScreenBG = Sprite(_vc.getChildByName("fullScreenBG")); if (fullScreenBG != null){ _vc.removeChild(fullScreenBG); }; if (hitTarget_mc != null){ hitTarget_mc.graphics.clear(); hitTarget_mc.graphics.lineStyle(0, 0, 0); hitTarget_mc.graphics.drawRect(0, 0, _vc.width, _vc.height); }; if (_vc.parent != cacheFLVPlaybackParent){ cacheFLVPlaybackParent.addChildAt(_vc, cacheFLVPlaybackIndex); } else { cacheFLVPlaybackParent.setChildIndex(_vc, cacheFLVPlaybackIndex); }; cacheActiveIndex = _vc.activeVideoPlayerIndex; i = 0; while (i < _vc.videoPlayers.length) { vp = (_vc.videoPlayers[i] as VideoPlayer); if (vp != null){ _vc.activeVideoPlayerIndex = i; if (cacheFLVPlaybackScaleMode[i] != undefined){ _vc.scaleMode = cacheFLVPlaybackScaleMode[i]; }; if (cacheFLVPlaybackAlign[i]){ _vc.align = cacheFLVPlaybackAlign[i]; }; }; i = (i + 1); }; _vc.activeVideoPlayerIndex = cacheActiveIndex; _vc.registrationX = cacheFLVPlaybackLocation.x; _vc.registrationY = cacheFLVPlaybackLocation.y; _vc.setSize(cacheFLVPlaybackLocation.width, cacheFLVPlaybackLocation.height); } catch(err:Error) { }; _vc.addEventListener(Event.ADDED_TO_STAGE, handleEvent); _vc.stage.addEventListener(FullScreenEvent.FULL_SCREEN, handleFullScreenEvent); _fullScreen = false; _fullScreenAccel = false; cacheStageAlign = null; cacheStageScaleMode = null; cacheFLVPlaybackParent = null; cacheFLVPlaybackIndex = 0; cacheFLVPlaybackLocation = null; cacheFLVPlaybackScaleMode = null; cacheFLVPlaybackAlign = null; if (_skinAutoHide != cacheSkinAutoHide){ _skinAutoHide = cacheSkinAutoHide; setupSkinAutoHide(false); }; } flvplayback_internal function positionMaskedFill(_arg1:DisplayObject, _arg2:Number):void{ var ctrlData:ControlData; var slideReveal:Boolean; var maskSprite:Sprite; var barData:ControlData; var ctrl = _arg1; var percent = _arg2; if (ctrl == null){ return; }; ctrlData = ctrlDataDict[ctrl]; var fill:DisplayObject = ctrlData.fill_mc; if (fill == null){ return; }; var mask:DisplayObject = ctrlData.mask_mc; if (ctrlData.mask_mc == null){ try { var _local4 = ctrl["mask_mc"]; mask = _local4; ctrlData.mask_mc = _local4; } catch(re:ReferenceError) { ctrlData.mask_mc = null; }; if (ctrlData.mask_mc == null){ maskSprite = new Sprite(); _local4 = maskSprite; mask = _local4; ctrlData.mask_mc = _local4; maskSprite.graphics.beginFill(0xFFFFFF); maskSprite.graphics.drawRect(0, 0, 1, 1); maskSprite.graphics.endFill(); barData = ctrlDataDict[fill]; maskSprite.x = barData.origX; maskSprite.y = barData.origY; maskSprite.width = barData.origWidth; maskSprite.height = barData.origHeight; maskSprite.visible = false; fill.parent.addChild(maskSprite); fill.mask = maskSprite; }; if (ctrlData.mask_mc != null){ calcBarMargins(ctrl, "mask", true); }; }; var fillData:ControlData = ctrlDataDict[fill]; var maskData:ControlData = ctrlDataDict[mask]; try { slideReveal = fill["slideReveal"]; } catch(re:ReferenceError) { slideReveal = false; }; if (fill.parent == ctrl){ if (slideReveal){ fill.x = ((maskData.origX - fillData.origWidth) + ((fillData.origWidth * percent) / 100)); } else { mask.width = ((fillData.origWidth * percent) / 100); }; } else { if (fill.parent == ctrl.parent){ if (slideReveal){ mask.x = (ctrl.x + maskData.leftMargin); mask.y = (ctrl.y + maskData.topMargin); mask.width = ((ctrl.width - maskData.rightMargin) - maskData.leftMargin); mask.height = ((ctrl.height - maskData.topMargin) - maskData.bottomMargin); fill.x = ((mask.x - fillData.origWidth) + ((maskData.origWidth * percent) / 100)); fill.y = (ctrl.y + fillData.topMargin); } else { fill.x = (ctrl.x + fillData.leftMargin); fill.y = (ctrl.y + fillData.topMargin); mask.x = fill.x; mask.y = fill.y; mask.width = ((((ctrl.width - fillData.rightMargin) - fillData.leftMargin) * percent) / 100); mask.height = ((ctrl.height - fillData.topMargin) - fillData.bottomMargin); }; }; }; } flvplayback_internal function calcPercentageFromHandle(_arg1:Sprite):void{ if (_arg1 == null){ return; }; var _local2:ControlData = ctrlDataDict[_arg1]; if ((((_arg1["calcPercentageFromHandle"] is Function)) && (_arg1["calcPercentageFromHandle"]()))){ if (_local2.percentage < 0){ _local2.percentage = 0; }; if (_local2.percentage > 100){ _local2.percentage = 100; }; return; }; var _local3:Sprite = _local2.handle_mc; if (_local3 == null){ return; }; var _local4:ControlData = ctrlDataDict[_local3]; var _local5:Number = (isNaN(_local2.origWidth)) ? _arg1.width : _local2.origWidth; var _local6:Number = ((_local5 - _local4.rightMargin) - _local4.leftMargin); var _local7:Number = (_local3.x - (_arg1.x + _local4.leftMargin)); _local2.percentage = ((_local7 / _local6) * 100); if (_local2.percentage < 0){ _local2.percentage = 0; }; if (_local2.percentage > 100){ _local2.percentage = 100; }; if (_local2.fullness_mc != null){ positionBar(_arg1, "fullness", _local2.percentage); }; } flvplayback_internal function setTwoButtonHolderSkin(_arg1:int, _arg2:int, _arg3:String, _arg4:int, _arg5:String, _arg6:DisplayObject):Sprite{ var _local7:Sprite; var _local8:Sprite; var _local9:ControlData; _local8 = new Sprite(); _local9 = new ControlData(this, _local8, null, _arg1); ctrlDataDict[_local8] = _local9; skin_mc.addChild(_local8); _local7 = setupButtonSkin(_arg2, _arg6); _local7.name = _arg3; _local7.visible = true; _local8.addChild(_local7); _local7 = setupButtonSkin(_arg4, _arg6); _local7.name = _arg5; _local7.visible = false; _local8.addChild(_local7); return (_local8); } flvplayback_internal function handleRelease(_arg1:int):void{ var _local2:int = _vc.activeVideoPlayerIndex; _vc.activeVideoPlayerIndex = _vc.visibleVideoPlayerIndex; if (_arg1 == SEEK_BAR){ seekBarListener(null); } else { if (_arg1 == VOLUME_BAR){ volumeBarListener(null); }; }; stopHandleDrag(controls[_arg1]); _vc.activeVideoPlayerIndex = _local2; if (_arg1 == SEEK_BAR){ _vc._scrubFinish(); }; } public function set seekBarInterval(_arg1:Number):void{ if (_seekBarTimer.delay == _arg1){ return; }; _seekBarTimer.delay = _arg1; } flvplayback_internal function skinAutoHideHitTest(_arg1:TimerEvent, _arg2:Boolean=true):void{ var visibleVP:VideoPlayer; var hit:Boolean; var e = _arg1; var doFade = _arg2; try { if (!__visible){ skin_mc.visible = false; if (hitTarget_mc){ hitTarget_mc.accessibilityProperties.name = accessibilityPropertyNames[SHOW_CONTROLS_BUTTON]; }; } else { if (_vc.stage != null){ visibleVP = _vc.getVideoPlayer(_vc.visibleVideoPlayerIndex); hit = visibleVP.hitTestPoint(_vc.stage.mouseX, _vc.stage.mouseY, true); if (((((_fullScreen) && (_fullScreenTakeOver))) && (!((e == null))))){ if ((((_vc.stage.mouseX == _skinAutoHideMouseX)) && ((_vc.stage.mouseY == _skinAutoHideMouseY)))){ if ((getTimer() - _skinAutoHideLastMotionTime) > _skinAutoHideMotionTimeout){ hit = false; }; } else { _skinAutoHideLastMotionTime = getTimer(); _skinAutoHideMouseX = _vc.stage.mouseX; _skinAutoHideMouseY = _vc.stage.mouseY; }; }; if (((!(hit)) && (!((border_mc == null))))){ hit = border_mc.hitTestPoint(_vc.stage.mouseX, _vc.stage.mouseY, true); if (((((hit) && (_fullScreen))) && (_fullScreenTakeOver))){ _skinAutoHideLastMotionTime = getTimer(); }; }; if (((!(doFade)) || ((_skinFadingMaxTime <= 0)))){ _skinFadingTimer.stop(); skin_mc.visible = hit; skin_mc.alpha = 1; } else { if (((((((hit) && (skin_mc.visible))) && (((!(_skinFadingTimer.running)) || (_skinFadingIn))))) || (((!(hit)) && (((!(skin_mc.visible)) || (((_skinFadingTimer.running) && (!(_skinFadingIn)))))))))){ } else { _skinFadingTimer.stop(); _skinFadingIn = hit; if (((_skinFadingIn) && ((skin_mc.alpha == 1)))){ skin_mc.alpha = 0; }; _skinFadeStartTime = getTimer(); _skinFadingTimer.start(); skin_mc.visible = true; }; }; if (hitTarget_mc){ hitTarget_mc.accessibilityProperties.name = (hit) ? accessibilityPropertyNames[HIDE_CONTROLS_BUTTON] : accessibilityPropertyNames[SHOW_CONTROLS_BUTTON]; }; }; }; } catch(se:SecurityError) { _skinAutoHideTimer.stop(); _skinFadingTimer.stop(); skin_mc.visible = __visible; skin_mc.alpha = 1; if (hitTarget_mc){ hitTarget_mc.accessibilityProperties.name = accessibilityPropertyNames[HIDE_CONTROLS_BUTTON]; }; }; if (((hitTarget_mc) && (Capabilities.hasAccessibility))){ Accessibility.updateProperties(); }; } flvplayback_internal function layoutControl(_arg1:DisplayObject):void{ var _local4:Sprite; var _local5:Rectangle; if (_arg1 == null){ return; }; var _local2:ControlData = ctrlDataDict[_arg1]; if (_local2 == null){ return; }; if (_local2.avatar == null){ return; }; var _local3:Rectangle = calcLayoutControl(_arg1); _arg1.x = _local3.x; _arg1.y = _local3.y; _arg1.width = _local3.width; _arg1.height = _local3.height; switch (_local2.index){ case SEEK_BAR: case VOLUME_BAR: if (((!((_local2.hit_mc == null))) && ((_local2.hit_mc.parent == skin_mc)))){ _local4 = _local2.hit_mc; _local5 = calcLayoutControl(_local4); _local4.x = _local5.x; _local4.y = _local5.y; _local4.width = _local5.width; _local4.height = _local5.height; }; if (_local2.progress_mc != null){ if (isNaN(_progressPercent)){ _progressPercent = (_vc.isRTMP) ? 100 : 0; }; positionBar(Sprite(_arg1), "progress", _progressPercent); }; positionHandle(Sprite(_arg1)); break; case BUFFERING_BAR: positionMaskedFill(_arg1, 100); break; }; } public function set fullScreenSkinDelay(_arg1:int):void{ _skinAutoHideMotionTimeout = _arg1; } flvplayback_internal function captureMouseEvent(_arg1:MouseEvent):void{ _arg1.stopPropagation(); } flvplayback_internal function positionHandle(_arg1:Sprite):void{ if (_arg1 == null){ return; }; if ((((_arg1["positionHandle"] is Function)) && (_arg1["positionHandle"]()))){ return; }; var _local2:ControlData = ctrlDataDict[_arg1]; var _local3:Sprite = _local2.handle_mc; if (_local3 == null){ return; }; var _local4:ControlData = ctrlDataDict[_local3]; var _local5:Number = (isNaN(_local2.origWidth)) ? _arg1.width : _local2.origWidth; var _local6:Number = ((_local5 - _local4.rightMargin) - _local4.leftMargin); _local3.x = ((_arg1.x + _local4.leftMargin) + ((_local6 * _local2.percentage) / 100)); _local3.y = (_arg1.y + _local4.origY); if (_local2.fullness_mc != null){ positionBar(_arg1, "fullness", _local2.percentage); }; } flvplayback_internal function handleMouseUp(_arg1:MouseEvent):void{ var _local3:ControlData; var _local2:Sprite = controls[mouseCaptureCtrl]; if (_local2 != null){ _local3 = ctrlDataDict[_local2]; _local3.state = (_local2.hitTestPoint(_arg1.stageX, _arg1.stageY, true)) ? OVER_STATE : NORMAL_STATE; skinButtonControl(_local2); switch (mouseCaptureCtrl){ case SEEK_BAR_HANDLE: case SEEK_BAR_HIT: handleRelease(SEEK_BAR); break; case VOLUME_BAR_HANDLE: case VOLUME_BAR_HIT: handleRelease(VOLUME_BAR); break; case FULL_SCREEN_OFF_BUTTON: case FULL_SCREEN_ON_BUTTON: dispatchMessage(_local3.index); break; }; }; _arg1.currentTarget.removeEventListener(MouseEvent.MOUSE_DOWN, captureMouseEvent, true); _arg1.currentTarget.removeEventListener(MouseEvent.MOUSE_OUT, captureMouseEvent, true); _arg1.currentTarget.removeEventListener(MouseEvent.MOUSE_OVER, captureMouseEvent, true); _arg1.currentTarget.removeEventListener(MouseEvent.MOUSE_UP, handleMouseUp); _arg1.currentTarget.removeEventListener(MouseEvent.ROLL_OUT, captureMouseEvent, true); _arg1.currentTarget.removeEventListener(MouseEvent.ROLL_OVER, captureMouseEvent, true); } public function set visible(_arg1:Boolean):void{ if (__visible == _arg1){ return; }; __visible = _arg1; if (!__visible){ skin_mc.visible = false; } else { setupSkinAutoHide(false); }; } public function get bufferingDelayInterval():Number{ return (_bufferingDelayTimer.delay); } flvplayback_internal function handleFocusEvent(_arg1:FocusEvent):void{ var _local2:ControlData = ctrlDataDict[_arg1.currentTarget]; if (_local2 == null){ return; }; switch (_arg1.type){ case FocusEvent.FOCUS_IN: switch (_arg1.target){ case controls[SEEK_BAR_HANDLE]: case controls[VOLUME_BAR_HANDLE]: _arg1.target.focusRect = false; break; }; _local2.state = OVER_STATE; break; case FocusEvent.FOCUS_OUT: switch (_arg1.target){ case controls[SEEK_BAR_HANDLE]: case controls[VOLUME_BAR_HANDLE]: _arg1.target.focusRect = true; break; case controls[STOP_BUTTON]: if (!_local2.enabled){ _arg1.target.tabEnabled = false; }; break; }; _local2.state = NORMAL_STATE; break; }; skinButtonControl(_arg1.currentTarget); } public function set fullScreenBackgroundColor(_arg1:uint):void{ if (_fullScreenBgColor != _arg1){ _fullScreenBgColor = _arg1; if (_vc){ }; }; } public function get fullScreenTakeOver():Boolean{ return (_fullScreenTakeOver); } public function set skin(_arg1:String):void{ var _local2:String; if (_arg1 == null){ removeSkin(); _skin = null; _skinReady = true; } else { _local2 = String(_arg1); if (_arg1 == _skin){ return; }; removeSkin(); _skin = String(_arg1); _skinReady = (_skin == ""); if (!_skinReady){ downloadSkin(); }; }; } public function set volumeBarInterval(_arg1:Number):void{ if (_volumeBarTimer.delay == _arg1){ return; }; _volumeBarTimer.delay = _arg1; } flvplayback_internal function setSkin(_arg1:int, _arg2:DisplayObject):void{ var _local3:Sprite; var _local4:ControlData; var _local5:String; if (_arg1 >= NUM_CONTROLS){ return; }; if (_arg1 < NUM_BUTTONS){ _local3 = setupButtonSkin(_arg1, _arg2); skin_mc.addChild(_local3); _local4 = ctrlDataDict[_local3]; } else { switch (_arg1){ case PLAY_PAUSE_BUTTON: _local3 = setTwoButtonHolderSkin(_arg1, PLAY_BUTTON, "play_mc", PAUSE_BUTTON, "pause_mc", _arg2); _local4 = ctrlDataDict[_local3]; break; case FULL_SCREEN_BUTTON: _local3 = setTwoButtonHolderSkin(_arg1, FULL_SCREEN_ON_BUTTON, "on_mc", FULL_SCREEN_OFF_BUTTON, "off_mc", _arg2); _local4 = ctrlDataDict[_local3]; break; case MUTE_BUTTON: _local3 = setTwoButtonHolderSkin(_arg1, MUTE_ON_BUTTON, "on_mc", MUTE_OFF_BUTTON, "off_mc", _arg2); _local4 = ctrlDataDict[_local3]; break; case SEEK_BAR: case VOLUME_BAR: _local5 = skinClassPrefixes[_arg1]; _local3 = Sprite(createSkin(skinTemplate, _local5)); if (_local3 != null){ skin_mc.addChild(_local3); _local4 = new ControlData(this, _local3, null, _arg1); ctrlDataDict[_local3] = _local4; _local4.progress_mc = setupBarSkinPart(_local3, _arg2, skinTemplate, (_local5 + "Progress"), "progress_mc"); _local4.fullness_mc = setupBarSkinPart(_local3, _arg2, skinTemplate, (_local5 + "Fullness"), "fullness_mc"); _local4.hit_mc = Sprite(setupBarSkinPart(_local3, _arg2, skinTemplate, (_local5 + "Hit"), "hit_mc")); _local4.handle_mc = Sprite(setupBarSkinPart(_local3, _arg2, skinTemplate, (_local5 + "Handle"), "handle_mc", true)); _local3.width = _arg2.width; _local3.height = _arg2.height; _local3.accessibilityProperties = new AccessibilityProperties(); _local3.accessibilityProperties.silent = true; }; break; case BUFFERING_BAR: _local5 = skinClassPrefixes[_arg1]; _local3 = Sprite(createSkin(skinTemplate, _local5)); if (_local3 != null){ skin_mc.addChild(_local3); _local4 = new ControlData(this, _local3, null, _arg1); ctrlDataDict[_local3] = _local4; _local4.fill_mc = setupBarSkinPart(_local3, _arg2, skinTemplate, (_local5 + "Fill"), "fill_mc"); _local3.width = _arg2.width; _local3.height = _arg2.height; _local4.fill_mc.accessibilityProperties = new AccessibilityProperties(); _local4.fill_mc.accessibilityProperties.silent = true; _local3.accessibilityProperties = new AccessibilityProperties(); _local3.accessibilityProperties.silent = true; }; break; }; }; _local4.avatar = _arg2; ctrlDataDict[_local3] = _local4; delayedControls[_arg1] = _local3; } flvplayback_internal function configureBarAccessibility(_arg1:int):void{ switch (_arg1){ case SEEK_BAR_HANDLE: SeekBarAccImpl.createAccessibilityImplementation(controls[SEEK_BAR_HANDLE]); break; case VOLUME_BAR_HANDLE: VolumeBarAccImpl.createAccessibilityImplementation(controls[VOLUME_BAR_HANDLE]); break; }; } public function set bufferingBarHidesAndDisablesOthers(_arg1:Boolean):void{ _bufferingBarHides = _arg1; } flvplayback_internal function handleSoundEvent(_arg1:SoundEvent):void{ var _local3:ControlData; if (((_isMuted) && ((_arg1.soundTransform.volume > 0)))){ _isMuted = false; setEnabledAndVisibleForState(MUTE_OFF_BUTTON, VideoState.PLAYING); skinButtonControl(controls[MUTE_OFF_BUTTON]); setEnabledAndVisibleForState(MUTE_ON_BUTTON, VideoState.PLAYING); skinButtonControl(controls[MUTE_ON_BUTTON]); }; var _local2:Sprite = controls[VOLUME_BAR]; if (_local2 != null){ _local3 = ctrlDataDict[_local2]; _local3.percentage = ((_isMuted) ? cachedSoundLevel : _arg1.soundTransform.volume * 100); if (_local3.percentage < 0){ _local3.percentage = 0; } else { if (_local3.percentage > 100){ _local3.percentage = 100; }; }; positionHandle(_local2); }; } flvplayback_internal function stopHandleDrag(_arg1:Sprite):void{ var ctrl = _arg1; if (ctrl == null){ return; }; var ctrlData:ControlData = ctrlDataDict[ctrl]; try { if ((((ctrl["stopHandleDrag"] is Function)) && (ctrl["stopHandleDrag"]()))){ ctrlData.isDragging = false; return; }; } catch(re:ReferenceError) { }; var handle:Sprite = ctrlData.handle_mc; if (handle == null){ return; }; handle.stopDrag(); ctrlData.isDragging = false; handle.stage.focus = handle; } public function set skinBackgroundAlpha(_arg1:Number):void{ if (borderAlpha != _arg1){ borderAlpha = _arg1; borderColorTransform.alphaOffset = (0xFF * _arg1); borderPrevRect = null; layoutSkin(); }; } public function getControl(_arg1:int):Sprite{ return (controls[_arg1]); } public function set skinScaleMaximum(_arg1:Number):void{ _skinScaleMaximum = _arg1; } public function set volumeBarScrubTolerance(_arg1:Number):void{ _volumeBarScrubTolerance = _arg1; } flvplayback_internal function calcBarMargins(_arg1:DisplayObject, _arg2:String, _arg3:Boolean):void{ var ctrl = _arg1; var type = _arg2; var symmetricMargins = _arg3; if (ctrl == null){ return; }; var ctrlData:ControlData = ctrlDataDict[ctrl]; var bar:DisplayObject = ctrlData[(type + "_mc")]; if (bar == null){ try { bar = ctrl[(type + "_mc")]; } catch(re:ReferenceError) { bar = null; }; if (bar == null){ return; }; ctrlData[(type + "_mc")] = bar; }; var barData:ControlData = ctrlDataDict[bar]; if (barData == null){ barData = new ControlData(this, bar, ctrl, -1); ctrlDataDict[bar] = barData; }; barData.leftMargin = getNumberPropSafe(ctrl, (type + "LeftMargin")); if (((isNaN(barData.leftMargin)) && ((bar.parent == ctrl.parent)))){ barData.leftMargin = (bar.x - ctrl.x); }; barData.rightMargin = getNumberPropSafe(ctrl, (type + "RightMargin")); if (isNaN(barData.rightMargin)){ if (symmetricMargins){ barData.rightMargin = barData.leftMargin; } else { if (bar.parent == ctrl.parent){ barData.rightMargin = (((ctrl.width - bar.width) - bar.x) + ctrl.x); }; }; }; barData.topMargin = getNumberPropSafe(ctrl, (type + "TopMargin")); if (((isNaN(barData.topMargin)) && ((bar.parent == ctrl.parent)))){ barData.topMargin = (bar.y - ctrl.y); }; barData.bottomMargin = getNumberPropSafe(ctrl, (type + "BottomMargin")); if (isNaN(barData.bottomMargin)){ if (symmetricMargins){ barData.bottomMargin = barData.topMargin; } else { if (bar.parent == ctrl.parent){ barData.bottomMargin = (((ctrl.height - bar.height) - bar.y) + ctrl.y); }; }; }; barData.origX = getNumberPropSafe(ctrl, (type + "X")); if (isNaN(barData.origX)){ if (bar.parent == ctrl.parent){ barData.origX = (bar.x - ctrl.x); } else { if (bar.parent == ctrl){ barData.origX = bar.x; }; }; }; barData.origY = getNumberPropSafe(ctrl, (type + "Y")); if (isNaN(barData.origY)){ if (bar.parent == ctrl.parent){ barData.origY = (bar.y - ctrl.y); } else { if (bar.parent == ctrl){ barData.origY = bar.y; }; }; }; barData.origWidth = bar.width; barData.origHeight = bar.height; barData.origScaleX = bar.scaleX; barData.origScaleY = bar.scaleY; } public function set skinBackgroundColor(_arg1:uint):void{ if (borderColor != _arg1){ borderColor = _arg1; borderColorTransform.redOffset = ((borderColor >> 16) & 0xFF); borderColorTransform.greenOffset = ((borderColor >> 8) & 0xFF); borderColorTransform.blueOffset = (borderColor & 0xFF); borderPrevRect = null; layoutSkin(); }; } flvplayback_internal function handleLoad(_arg1:Event):void{ var i:int; var dispObj:DisplayObject; var index:Number; var e = _arg1; try { skin_mc = new Sprite(); if (e != null){ skinTemplate = Sprite(skinLoader.content); }; layout_mc = skinTemplate; customClips = new Array(); delayedControls = new Array(); i = 0; while (i < layout_mc.numChildren) { dispObj = layout_mc.getChildAt(i); index = layoutNameToIndexMappings[dispObj.name]; if (!isNaN(index)){ setSkin(int(index), dispObj); } else { if (dispObj.name != "video_mc"){ setCustomClip(dispObj); }; }; i = (i + 1); }; skinLoadDelayCount = 0; _vc.addEventListener(Event.ENTER_FRAME, finishLoad); } catch(err:Error) { _vc.skinError(err.message); removeSkin(); }; } flvplayback_internal function finishAddBufferingBar(_arg1:Event=null):void{ if (_arg1 != null){ _arg1.currentTarget.removeEventListener(Event.ENTER_FRAME, finishAddBufferingBar); }; var _local2:Sprite = controls[BUFFERING_BAR]; calcBarMargins(_local2, "fill", true); fixUpBar(_local2, "fill", _local2, "fill_mc"); positionMaskedFill(_local2, 100); } flvplayback_internal function handleButtonEvent(_arg1:MouseEvent):void{ var topLevel:DisplayObject; var e = _arg1; var ctrlData:ControlData = ctrlDataDict[e.currentTarget]; switch (e.type){ case MouseEvent.ROLL_OVER: ctrlData.state = OVER_STATE; break; case MouseEvent.ROLL_OUT: ctrlData.state = NORMAL_STATE; break; case MouseEvent.MOUSE_DOWN: ctrlData.state = DOWN_STATE; mouseCaptureCtrl = ctrlData.index; switch (mouseCaptureCtrl){ case SEEK_BAR_HANDLE: case SEEK_BAR_HIT: case VOLUME_BAR_HANDLE: case VOLUME_BAR_HIT: dispatchMessage(ctrlData.index); break; }; topLevel = _vc.stage; try { topLevel.addEventListener(MouseEvent.MOUSE_DOWN, captureMouseEvent, true); } catch(se:SecurityError) { topLevel = _vc.root; topLevel.addEventListener(MouseEvent.MOUSE_DOWN, captureMouseEvent, true); }; topLevel.addEventListener(MouseEvent.MOUSE_OUT, captureMouseEvent, true); topLevel.addEventListener(MouseEvent.MOUSE_OVER, captureMouseEvent, true); topLevel.addEventListener(MouseEvent.MOUSE_UP, handleMouseUp); topLevel.addEventListener(MouseEvent.ROLL_OUT, captureMouseEvent, true); topLevel.addEventListener(MouseEvent.ROLL_OVER, captureMouseEvent, true); break; case MouseEvent.CLICK: switch (mouseCaptureCtrl){ case SEEK_BAR_HANDLE: case SEEK_BAR_HIT: case VOLUME_BAR_HANDLE: case VOLUME_BAR_HIT: case FULL_SCREEN_OFF_BUTTON: case FULL_SCREEN_ON_BUTTON: break; default: dispatchMessage(ctrlData.index); break; }; return; }; skinButtonControl(e.currentTarget); } flvplayback_internal function applySkinState(_arg1:ControlData, _arg2:DisplayObject):void{ if (_arg2 != _arg1.currentState_mc){ if (_arg1.currentState_mc != null){ _arg1.currentState_mc.visible = false; }; _arg1.currentState_mc = _arg2; _arg1.currentState_mc.visible = true; }; } flvplayback_internal function handleLoadErrorEvent(_arg1:ErrorEvent):void{ _skinReady = true; _vc.skinError(_arg1.toString()); } flvplayback_internal function addBarControl(_arg1:Sprite):void{ var _local2:ControlData = ctrlDataDict[_arg1]; _local2.isDragging = false; _local2.percentage = 0; if ((((_arg1.parent == skin_mc)) && (!((skin_mc == null))))){ finishAddBarControl(_arg1); } else { _arg1.addEventListener(Event.REMOVED_FROM_STAGE, cleanupHandle); _arg1.addEventListener(Event.ENTER_FRAME, finishAddBarControl); }; } flvplayback_internal function handleEvent(_arg1:Event):void{ var e = _arg1; switch (e.type){ case Event.ADDED_TO_STAGE: _fullScreen = false; if (_vc.stage != null){ try { _fullScreen = (_vc.stage.displayState == StageDisplayState.FULL_SCREEN); _vc.stage.addEventListener(FullScreenEvent.FULL_SCREEN, handleFullScreenEvent); } catch(se:SecurityError) { }; }; if (!_fullScreen){ _fullScreenAccel = false; }; setEnabledAndVisibleForState(FULL_SCREEN_OFF_BUTTON, VideoState.PLAYING); skinButtonControl(controls[FULL_SCREEN_OFF_BUTTON]); setEnabledAndVisibleForState(FULL_SCREEN_ON_BUTTON, VideoState.PLAYING); skinButtonControl(controls[FULL_SCREEN_ON_BUTTON]); if (((_fullScreen) && (_fullScreenTakeOver))){ enterFullScreenTakeOver(); } else { if (!_fullScreen){ exitFullScreenTakeOver(); }; }; layoutSkin(); setupSkinAutoHide(false); break; case Event.REMOVED_FROM_STAGE: _vc.stage.removeEventListener(FullScreenEvent.FULL_SCREEN, handleFullScreenEvent); break; }; } flvplayback_internal function skinButtonControl(_arg1:Object):void{ var ctrl:Sprite; var e:Event; var ctrlOrEvent = _arg1; if (ctrlOrEvent == null){ return; }; if ((ctrlOrEvent is Event)){ e = Event(ctrlOrEvent); ctrl = Sprite(e.currentTarget); ctrl.removeEventListener(Event.ENTER_FRAME, skinButtonControl); } else { ctrl = Sprite(ctrlOrEvent); }; var ctrlData:ControlData = ctrlDataDict[ctrl]; if (ctrlData == null){ return; }; try { if (ctrl["placeholder_mc"] != undefined){ ctrl.removeChild(ctrl["placeholder_mc"]); ctrl["placeholder_mc"] = null; }; } catch(re:ReferenceError) { }; if (ctrlData.state_mc == null){ ctrlData.state_mc = new Array(); }; if (ctrlData.state_mc[NORMAL_STATE] == undefined){ ctrlData.state_mc[NORMAL_STATE] = setupButtonSkinState(ctrl, ctrl, buttonSkinLinkageIDs[NORMAL_STATE], null); }; if (((ctrlData.enabled) && (_controlsEnabled))){ if (ctrlData.state_mc[ctrlData.state] == undefined){ ctrlData.state_mc[ctrlData.state] = setupButtonSkinState(ctrl, ctrl, buttonSkinLinkageIDs[ctrlData.state], ctrlData.state_mc[NORMAL_STATE]); }; if (ctrlData.state_mc[ctrlData.state] != ctrlData.currentState_mc){ if (ctrlData.currentState_mc != null){ ctrlData.currentState_mc.visible = false; }; ctrlData.currentState_mc = ctrlData.state_mc[ctrlData.state]; ctrlData.currentState_mc.visible = true; }; applySkinState(ctrlData, ctrlData.state_mc[ctrlData.state]); } else { ctrlData.state = NORMAL_STATE; if (ctrlData.disabled_mc == null){ ctrlData.disabled_mc = setupButtonSkinState(ctrl, ctrl, "disabledLinkageID", ctrlData.state_mc[NORMAL_STATE]); }; applySkinState(ctrlData, ctrlData.disabled_mc); }; } public function set controlsEnabled(_arg1:Boolean):void{ if (_controlsEnabled == _arg1){ return; }; _controlsEnabled = _arg1; var _local2:int; while (_local2 < NUM_BUTTONS) { skinButtonControl(controls[_local2]); _local2++; }; } flvplayback_internal function setupSkinAutoHide(_arg1:Boolean):void{ var uiMgr:UIManager; var clickHandler:Function; var doFade = _arg1; if (((_skinAutoHide) && (!((skin_mc == null))))){ if (!hitTarget_mc){ hitTarget_mc = new Sprite(); hitTarget_mc.accessibilityProperties = new AccessibilityProperties(); hitTarget_mc.accessibilityProperties.name = accessibilityPropertyNames[SHOW_CONTROLS_BUTTON]; customClips.push(hitTarget_mc); uiMgr = this; clickHandler = function (_arg1):void{ if (_arg1.type == FocusEvent.FOCUS_IN){ uiMgr._skinAutoHide = false; } else { if (_arg1.type == MouseEvent.CLICK){ uiMgr._skinAutoHide = !(uiMgr._skinAutoHide); }; }; uiMgr.setupSkinAutoHide(true); if (uiMgr._skinAutoHide){ _arg1.target.accessibilityProperties.name = accessibilityPropertyNames[SHOW_CONTROLS_BUTTON]; } else { _arg1.target.accessibilityProperties.name = accessibilityPropertyNames[HIDE_CONTROLS_BUTTON]; }; if (Accessibility.active){ Accessibility.updateProperties(); }; }; hitTarget_mc.useHandCursor = false; hitTarget_mc.buttonMode = true; hitTarget_mc.tabEnabled = true; hitTarget_mc.tabChildren = true; hitTarget_mc.focusRect = true; hitTarget_mc.addEventListener(FocusEvent.FOCUS_IN, clickHandler); hitTarget_mc.addEventListener(MouseEvent.CLICK, clickHandler); hitTarget_mc.accessibilityProperties.silent = _fullScreen; hitTarget_mc.tabEnabled = !(_fullScreen); if (Accessibility.active){ Accessibility.updateProperties(); }; _vc.addChild(hitTarget_mc); }; hitTarget_mc.graphics.clear(); hitTarget_mc.graphics.lineStyle(0, 0xFF0000, 0); hitTarget_mc.graphics.drawRect(0, 0, _vc.width, _vc.height); skinAutoHideHitTest(null, doFade); _skinAutoHideTimer.start(); } else { if (skin_mc != null){ if (((((((doFade) && ((_skinFadingMaxTime > 0)))) && (((!(skin_mc.visible)) || ((skin_mc.alpha < 1)))))) && (__visible))){ _skinFadingTimer.stop(); _skinFadeStartTime = getTimer(); _skinFadingIn = true; if (skin_mc.alpha == 1){ skin_mc.alpha = 0; }; _skinFadingTimer.start(); } else { if (_skinFadingMaxTime <= 0){ _skinFadingTimer.stop(); skin_mc.alpha = 1; }; }; skin_mc.visible = __visible; }; _skinAutoHideTimer.stop(); }; } public function get skin():String{ return (_skin); } flvplayback_internal function finishAddBarControl(_arg1:Object):void{ var ctrl:Sprite; var e:Event; var ctrlOrEvent = _arg1; if (ctrlOrEvent == null){ return; }; if ((ctrlOrEvent is Event)){ e = Event(ctrlOrEvent); ctrl = Sprite(e.currentTarget); ctrl.removeEventListener(Event.ENTER_FRAME, finishAddBarControl); } else { ctrl = Sprite(ctrlOrEvent); }; var ctrlData:ControlData = ctrlDataDict[ctrl]; try { if ((ctrl["addBarControl"] is Function)){ var _local3 = ctrl; _local3["addBarControl"](); }; } catch(re:ReferenceError) { }; ctrlData.origWidth = ctrl.width; ctrlData.origHeight = ctrl.height; fixUpBar(ctrl, "progress", ctrl, "progress_mc"); calcBarMargins(ctrl, "progress", false); if (ctrlData.progress_mc != null){ fixUpBar(ctrl, "progressBarFill", ctrlData.progress_mc, "fill_mc"); calcBarMargins(ctrlData.progress_mc, "fill", false); calcBarMargins(ctrlData.progress_mc, "mask", false); if (isNaN(_progressPercent)){ _progressPercent = (_vc.isRTMP) ? 100 : 0; }; positionBar(ctrl, "progress", _progressPercent); }; fixUpBar(ctrl, "fullness", ctrl, "fullness_mc"); calcBarMargins(ctrl, "fullness", false); if (ctrlData.fullness_mc != null){ fixUpBar(ctrl, "fullnessBarFill", ctrlData.fullness_mc, "fill_mc"); calcBarMargins(ctrlData.fullness_mc, "fill", false); calcBarMargins(ctrlData.fullness_mc, "mask", false); }; fixUpBar(ctrl, "hit", ctrl, "hit_mc"); fixUpBar(ctrl, "handle", ctrl, "handle_mc"); calcBarMargins(ctrl, "handle", true); switch (ctrlData.index){ case SEEK_BAR: setControl(SEEK_BAR_HANDLE, ctrlData.handle_mc); if (ctrlData.hit_mc != null){ setControl(SEEK_BAR_HIT, ctrlData.hit_mc); }; break; case VOLUME_BAR: setControl(VOLUME_BAR_HANDLE, ctrlData.handle_mc); if (ctrlData.hit_mc != null){ setControl(VOLUME_BAR_HIT, ctrlData.hit_mc); }; break; }; positionHandle(ctrl); ctrl.accessibilityProperties = new AccessibilityProperties(); ctrl.accessibilityProperties.silent = true; } public function get fullScreenBackgroundColor():uint{ return (_fullScreenBgColor); } public function enterFullScreenDisplayState():void{ var theRect:Rectangle; var vp:VideoPlayer; var effectiveWidth:int; var effectiveHeight:int; var videoAspectRatio:Number; var screenAspectRatio:Number; var effectiveMinWidth:int; var effectiveMinHeight:int; var skinScaleMinWidth:int; var skinScaleMinHeight:int; if (((!(_fullScreen)) && (!((_vc.stage == null))))){ if (_fullScreenTakeOver){ try { theRect = _vc.stage.fullScreenSourceRect; _fullScreenAccel = true; vp = _vc.getVideoPlayer(_vc.visibleVideoPlayerIndex); effectiveWidth = vp.videoWidth; effectiveHeight = vp.videoHeight; videoAspectRatio = (effectiveWidth / effectiveHeight); screenAspectRatio = (_vc.stage.fullScreenWidth / _vc.stage.fullScreenHeight); if (videoAspectRatio > screenAspectRatio){ effectiveHeight = (effectiveWidth / screenAspectRatio); } else { if (videoAspectRatio < screenAspectRatio){ effectiveWidth = (effectiveHeight * screenAspectRatio); }; }; effectiveMinWidth = fullScreenSourceRectMinWidth; effectiveMinHeight = fullScreenSourceRectMinHeight; if (fullScreenSourceRectMinAspectRatio > screenAspectRatio){ effectiveMinHeight = (effectiveMinWidth / screenAspectRatio); } else { if (fullScreenSourceRectMinAspectRatio < screenAspectRatio){ effectiveMinWidth = (effectiveMinHeight * screenAspectRatio); }; }; skinScaleMinWidth = (_vc.stage.fullScreenWidth / _skinScaleMaximum); skinScaleMinHeight = (_vc.stage.fullScreenHeight / _skinScaleMaximum); if ((((effectiveMinWidth < skinScaleMinWidth)) || ((effectiveMinHeight < skinScaleMinHeight)))){ effectiveMinWidth = skinScaleMinWidth; effectiveMinHeight = skinScaleMinHeight; }; if ((((effectiveWidth < effectiveMinWidth)) || ((effectiveHeight < effectiveMinHeight)))){ effectiveWidth = effectiveMinWidth; effectiveHeight = effectiveMinHeight; }; _vc.stage.fullScreenSourceRect = new Rectangle(0, 0, effectiveWidth, effectiveHeight); _vc.stage.displayState = StageDisplayState.FULL_SCREEN; } catch(re:ReferenceError) { _fullScreenAccel = false; } catch(re:SecurityError) { _fullScreenAccel = false; }; }; try { _vc.stage.displayState = StageDisplayState.FULL_SCREEN; } catch(se:SecurityError) { }; }; } flvplayback_internal function setupBarSkinPart(_arg1:Sprite, _arg2:DisplayObject, _arg3:Sprite, _arg4:String, _arg5:String, _arg6:Boolean=false):DisplayObject{ var part:DisplayObject; var partAvatar:DisplayObject; var ctrlData:ControlData; var partData:ControlData; var ctrl = _arg1; var avatar = _arg2; var definitionHolder = _arg3; var skinName = _arg4; var partName = _arg5; var required = _arg6; try { part = ctrl[partName]; } catch(re:ReferenceError) { part = null; }; if (part == null){ try { part = createSkin(definitionHolder, skinName); } catch(ve:VideoError) { if (required){ throw (ve); }; }; if (part != null){ skin_mc.addChild(part); part.x = ctrl.x; part.y = ctrl.y; partAvatar = layout_mc.getChildByName((skinName + "_mc")); if (partAvatar != null){ if (partName == "hit_mc"){ ctrlData = ctrlDataDict[ctrl]; partData = new ControlData(this, part, controls[ctrlData.index], -1); partData.avatar = partAvatar; ctrlDataDict[part] = partData; } else { part.x = (part.x + (partAvatar.x - avatar.x)); part.y = (part.y + (partAvatar.y - avatar.y)); part.width = partAvatar.width; part.height = partAvatar.height; }; if ((((part is InteractiveObject)) && ((partAvatar is InteractiveObject)))){ InteractiveObject(part).tabIndex = InteractiveObject(partAvatar).tabIndex; }; }; }; }; if (((required) && ((part == null)))){ throw (new VideoError(VideoError.MISSING_SKIN_STYLE, skinName)); }; if (part != null){ part.accessibilityProperties = new AccessibilityProperties(); part.accessibilityProperties.silent = true; }; return (part); } flvplayback_internal function startHandleDrag(_arg1:Sprite):void{ var ctrl = _arg1; if (ctrl == null){ return; }; var ctrlData:ControlData = ctrlDataDict[ctrl]; try { if ((((ctrl["startHandleDrag"] is Function)) && (ctrl["startHandleDrag"]()))){ ctrlData.isDragging = true; return; }; } catch(re:ReferenceError) { }; var handle:Sprite = ctrlData.handle_mc; if (handle == null){ return; }; var handleData:ControlData = ctrlDataDict[handle]; var theY:Number = (ctrl.y + handleData.origY); var theWidth:Number = (isNaN(ctrlData.origWidth)) ? ctrl.width : ctrlData.origWidth; var bounds:Rectangle = new Rectangle((ctrl.x + handleData.leftMargin), theY, (theWidth - handleData.rightMargin), 0); handle.startDrag(false, bounds); ctrlData.isDragging = true; handle.focusRect = false; handle.stage.focus = handle; } public function get skinBackgroundAlpha():Number{ return (borderAlpha); } public function get volumeBarScrubTolerance():Number{ return (_volumeBarScrubTolerance); } public function get skinScaleMaximum():Number{ return (_skinScaleMaximum); } public function get skinBackgroundColor():uint{ return (borderColor); } public function get controlsEnabled():Boolean{ return (_controlsEnabled); } flvplayback_internal function handleKeyEvent(_arg1:KeyboardEvent):void{ var ctrlData:ControlData; var focusControl:InteractiveObject; var percent:Number; var nearestCuePoint:Object; var nextCuePoint:Object; var wasMuted:Boolean; var num:Number; var ctrl:Sprite; var setFocusedControl:Function; var event = _arg1; ctrlData = ctrlDataDict[event.currentTarget]; var k:int = event.keyCode; var ka:int = event.charCode; var kaBool:Boolean = (((ka >= 48)) && ((ka <= 57))); ka = int(String.fromCharCode(event.charCode)); switch (event.type){ case KeyboardEvent.KEY_DOWN: switch (event.target){ case controls[SEEK_BAR_HANDLE]: case controls[VOLUME_BAR_HANDLE]: if (((!((k == Keyboard.TAB))) && ((((((((((((((((((k == Keyboard.UP)) || ((k == Keyboard.DOWN)))) || ((k == Keyboard.LEFT)))) || ((k == Keyboard.RIGHT)))) || ((k == Keyboard.PAGE_UP)))) || ((k == Keyboard.PAGE_DOWN)))) || ((k == Keyboard.HOME)))) || ((k == Keyboard.END)))) || (((!(isNaN(ka))) && (kaBool))))))){ focusControl = (event.target as InteractiveObject); focusControl.stage.focus = focusControl; if (event.target == controls[SEEK_BAR_HANDLE]){ percent = _vc.playheadPercentage; nearestCuePoint = _vc.findNearestCuePoint(_vc.playheadTime); if ((((k == Keyboard.LEFT)) || ((k == Keyboard.DOWN)))){ percent = (percent - (_vc.seekBarScrubTolerance * 2)); _vc.playheadPercentage = Math.max(percent, 0); } else { if ((((k == Keyboard.RIGHT)) || ((k == Keyboard.UP)))){ if (_vc.playheadPercentage >= 99){ return; }; if (((!((nearestCuePoint == null))) && ((nearestCuePoint.index < ((nearestCuePoint.array as Array).length - 1))))){ try { nextCuePoint = _vc.findCuePoint(nearestCuePoint.array[(nearestCuePoint.index + 1)]); if (((nextCuePoint) && (_vc.isFLVCuePointEnabled(nextCuePoint)))){ if (isNaN(Number(_vc.metadata.videocodecid))){ _vc.playheadPercentage = Math.max(((nextCuePoint.time / _vc.totalTime) * 100), Math.min(99, (_vc.playheadPercentage + (_vc.seekBarScrubTolerance * 2)))); } else { _vc.playheadTime = nextCuePoint.time; }; }; } catch(err:Error) { }; } else { percent = (percent + _vc.seekBarScrubTolerance); _vc.playheadPercentage = Math.min(99, percent); }; } else { if ((((k == Keyboard.PAGE_UP)) || ((k == Keyboard.HOME)))){ _vc.playheadPercentage = 0; } else { if ((((k == Keyboard.PAGE_DOWN)) || ((k == Keyboard.END)))){ _vc.playheadPercentage = 99; }; }; }; }; } else { wasMuted = _isMuted; num = (_isMuted) ? (Math.round((cachedSoundLevel * 1000)) / 100) : (Math.round((_vc.volume * 1000)) / 100); if ((((k == Keyboard.LEFT)) || ((k == Keyboard.DOWN)))){ if (Math.floor(num) != num){ _vc.volume = (Math.floor(num) / 10); } else { _vc.volume = Math.max(0, ((num - 1) / 10)); }; } else { if ((((k == Keyboard.RIGHT)) || ((k == Keyboard.UP)))){ if (Math.round(num) != num){ _vc.volume = (Math.round(num) / 10); } else { _vc.volume = Math.min(1, ((num + 1) / 10)); }; } else { if ((((k == Keyboard.PAGE_UP)) || ((k == Keyboard.HOME)))){ _vc.volume = 1; } else { if ((((k == Keyboard.PAGE_DOWN)) || ((k == Keyboard.END)))){ _vc.volume = 0; } else { if (((!(isNaN(ka))) && (kaBool))){ _vc.volume = Math.min(1, ((ka + 1) / 10)); }; }; }; }; }; cachedSoundLevel = _vc.volume; if (wasMuted){ _isMuted = true; cachedSoundLevel = _vc.volume; _vc.volume = 0; setEnabledAndVisibleForState(MUTE_OFF_BUTTON, VideoState.PLAYING); skinButtonControl(controls[MUTE_OFF_BUTTON]); setEnabledAndVisibleForState(MUTE_ON_BUTTON, VideoState.PLAYING); skinButtonControl(controls[MUTE_ON_BUTTON]); }; }; }; break; case controls[PAUSE_BUTTON]: if ((((k == Keyboard.SPACE)) || ((k == Keyboard.ENTER)))){ ctrlData.state = DOWN_STATE; if (!event.target.focusRect){ dispatchMessage(ctrlData.index); }; focusControl = (controls[PLAY_BUTTON] as InteractiveObject); }; break; case controls[PLAY_BUTTON]: if ((((k == Keyboard.SPACE)) || ((k == Keyboard.ENTER)))){ ctrlData.state = DOWN_STATE; if (!event.target.focusRect){ dispatchMessage(ctrlData.index); }; focusControl = (controls[PAUSE_BUTTON] as InteractiveObject); }; break; case controls[STOP_BUTTON]: case controls[BACK_BUTTON]: case controls[FORWARD_BUTTON]: if ((((k == Keyboard.SPACE)) || ((k == Keyboard.ENTER)))){ ctrlData.state = DOWN_STATE; event.target.tabEnabled = true; if (!event.target.focusRect){ dispatchMessage(ctrlData.index); }; focusControl = (event.target as InteractiveObject); }; break; case controls[MUTE_ON_BUTTON]: if ((((k == Keyboard.SPACE)) || ((k == Keyboard.ENTER)))){ ctrlData.state = DOWN_STATE; if (!event.target.focusRect){ dispatchMessage(ctrlData.index); }; focusControl = (controls[MUTE_OFF_BUTTON] as InteractiveObject); }; break; case controls[MUTE_OFF_BUTTON]: if ((((k == Keyboard.SPACE)) || ((k == Keyboard.ENTER)))){ ctrlData.state = DOWN_STATE; if (!event.target.focusRect){ dispatchMessage(ctrlData.index); }; focusControl = (controls[MUTE_ON_BUTTON] as InteractiveObject); }; break; case controls[FULL_SCREEN_ON_BUTTON]: if ((((k == Keyboard.SPACE)) || ((k == Keyboard.ENTER)))){ ctrlData.state = DOWN_STATE; dispatchMessage(FULL_SCREEN_ON_BUTTON); }; break; case controls[FULL_SCREEN_OFF_BUTTON]: if ((((k == Keyboard.SPACE)) || ((k == Keyboard.ENTER)))){ ctrlData.state = DOWN_STATE; dispatchMessage(FULL_SCREEN_OFF_BUTTON); }; break; }; skinButtonControl(event.currentTarget); break; case KeyboardEvent.KEY_UP: switch (event.target){ case controls[SEEK_BAR_HANDLE]: case controls[VOLUME_BAR_HANDLE]: if (((!((k == Keyboard.TAB))) && ((((((((((((((((k == Keyboard.UP)) || ((k == Keyboard.DOWN)))) || ((k == Keyboard.LEFT)))) || ((k == Keyboard.RIGHT)))) || ((k == Keyboard.PAGE_UP)))) || ((k == Keyboard.PAGE_DOWN)))) || ((k == Keyboard.HOME)))) || ((k == Keyboard.END)))))){ focusControl = (event.target as InteractiveObject); focusControl.stage.focus = focusControl; }; break; default: ctrlData.state = OVER_STATE; break; }; break; }; if (focusControl != null){ if (focusControl.visible){ ctrlData.state = NORMAL_STATE; if (!focusControl.tabEnabled){ focusControl.tabEnabled = true; }; focusControl.stage.focus = focusControl; } else { ctrl = (event.currentTarget as Sprite); setFocusedControl = function (_arg1:Event):void{ if (_arg1.target.visible){ ctrlData.state = NORMAL_STATE; if (!_arg1.target.tabEnabled){ _arg1.target.tabEnabled = true; }; _arg1.target.stage.focus = _arg1.target; _arg1.target.removeEventListener(Event.ENTER_FRAME, setFocusedControl); }; }; focusControl.addEventListener(Event.ENTER_FRAME, setFocusedControl); }; }; } flvplayback_internal function handleIVPEvent(_arg1:IVPEvent):void{ var _local3:int; var _local4:VideoEvent; var _local5:Sprite; var _local6:ControlData; var _local7:VideoProgressEvent; var _local8:VideoPlayerState; var _local9:Number; var _local10:Number; var _local11:Number; if (_arg1.vp != _vc.visibleVideoPlayerIndex){ return; }; var _local2:uint = _vc.activeVideoPlayerIndex; _vc.activeVideoPlayerIndex = _vc.visibleVideoPlayerIndex; switch (_arg1.type){ case VideoEvent.STATE_CHANGE: _local4 = VideoEvent(_arg1); if (_local4.state == VideoState.BUFFERING){ if (!_bufferingOn){ _bufferingDelayTimer.reset(); _bufferingDelayTimer.start(); }; } else { _bufferingDelayTimer.reset(); _bufferingOn = false; }; if (_local4.state == VideoState.LOADING){ _progressPercent = (_vc.getVideoPlayer(_arg1.vp).isRTMP) ? 100 : 0; _local3 = SEEK_BAR; while (_local3 <= VOLUME_BAR) { _local5 = controls[_local3]; if (controls[_local3] == null){ } else { _local6 = ctrlDataDict[_local5]; if (_local6.progress_mc != null){ positionBar(_local5, "progress", _progressPercent); }; }; _local3++; }; }; _local3 = 0; while (_local3 < NUM_CONTROLS) { if (controls[_local3] == undefined){ } else { setEnabledAndVisibleForState(_local3, _local4.state); if (_local3 < NUM_BUTTONS){ skinButtonControl(controls[_local3]); }; }; _local3++; }; break; case VideoEvent.READY: case MetadataEvent.METADATA_RECEIVED: _local3 = 0; while (_local3 < NUM_CONTROLS) { if (controls[_local3] == undefined){ } else { setEnabledAndVisibleForState(_local3, _vc.state); if (_local3 < NUM_BUTTONS){ skinButtonControl(controls[_local3]); }; }; _local3++; }; if (_vc.getVideoPlayer(_arg1.vp).isRTMP){ _progressPercent = 100; _local3 = SEEK_BAR; while (_local3 <= VOLUME_BAR) { _local5 = controls[_local3]; if (_local5 == null){ } else { _local6 = ctrlDataDict[_local5]; if (_local6.progress_mc != null){ positionBar(_local5, "progress", _progressPercent); }; }; _local3++; }; }; break; case VideoEvent.PLAYHEAD_UPDATE: if (((((((!((controls[SEEK_BAR] == undefined))) && (!(_vc.isLive)))) && (!(isNaN(_vc.totalTime))))) && (!((_vc.getVideoPlayer(_vc.visibleVideoPlayerIndex).state == VideoState.SEEKING))))){ _local4 = VideoEvent(_arg1); _local10 = ((_local4.playheadTime / _vc.totalTime) * 100); if (_local10 < 0){ _local10 = 0; } else { if (_local10 > 100){ _local10 = 100; }; }; _local5 = controls[SEEK_BAR]; _local6 = ctrlDataDict[_local5]; _local6.percentage = _local10; positionHandle(_local5); }; break; case VideoProgressEvent.PROGRESS: _local7 = VideoProgressEvent(_arg1); _progressPercent = ((_local7.bytesTotal)<=0) ? 100 : ((_local7.bytesLoaded / _local7.bytesTotal) * 100); _local8 = _vc.videoPlayerStates[_arg1.vp]; _local9 = _local8.minProgressPercent; if (((!(isNaN(_local9))) && ((_local9 > _progressPercent)))){ _progressPercent = _local9; }; if (!isNaN(_vc.totalTime)){ _local11 = ((_vc.playheadTime / _vc.totalTime) * 100); if (_local11 > _progressPercent){ _progressPercent = _local11; _local8.minProgressPercent = _progressPercent; }; }; _local3 = SEEK_BAR; while (_local3 <= VOLUME_BAR) { _local5 = controls[_local3]; if (_local5 == null){ } else { _local6 = ctrlDataDict[_local5]; if (_local6.progress_mc != null){ positionBar(_local5, "progress", _progressPercent); }; }; _local3++; }; break; }; _vc.activeVideoPlayerIndex = _local2; } flvplayback_internal function layoutSkin():void{ var i:int; var borderRect:Rectangle; var forceSkinAutoHide:Boolean; var minWidth:Number; var vidWidth:Number; var minHeight:Number; var vidHeight:Number; if (layout_mc == null){ return; }; if (skinLoadDelayCount < 2){ return; }; var video_mc:DisplayObject = layout_mc["video_mc"]; if (video_mc == null){ throw (new Error("No layout_mc.video_mc")); }; placeholderLeft = video_mc.x; placeholderRight = (video_mc.x + video_mc.width); placeholderTop = video_mc.y; placeholderBottom = (video_mc.y + video_mc.height); videoLeft = (_vc.x - _vc.registrationX); videoRight = (videoLeft + _vc.width); videoTop = (_vc.y - _vc.registrationY); videoBottom = (videoTop + _vc.height); if (((((_fullScreen) && (_fullScreenTakeOver))) && (!((border_mc == null))))){ borderRect = calcLayoutControl(border_mc); forceSkinAutoHide = false; if ((((borderRect.width > 0)) && ((borderRect.height > 0)))){ if (borderRect.x < 0){ placeholderLeft = (placeholderLeft + (videoLeft - borderRect.x)); forceSkinAutoHide = true; }; if ((borderRect.x + borderRect.width) > _vc.registrationWidth){ placeholderRight = (placeholderRight + ((borderRect.x + borderRect.width) - videoRight)); forceSkinAutoHide = true; }; if (borderRect.y < 0){ placeholderTop = (placeholderTop + (videoTop - borderRect.y)); forceSkinAutoHide = true; }; if ((borderRect.y + borderRect.height) > _vc.registrationHeight){ placeholderBottom = (placeholderBottom + ((borderRect.y + borderRect.height) - videoBottom)); forceSkinAutoHide = true; }; if (forceSkinAutoHide){ _skinAutoHide = true; setupSkinAutoHide(true); }; }; }; try { if (!isNaN(layout_mc["minWidth"])){ minWidth = layout_mc["minWidth"]; vidWidth = (videoRight - videoLeft); if ((((minWidth > 0)) && ((minWidth > vidWidth)))){ videoLeft = (videoLeft - ((minWidth - vidWidth) / 2)); videoRight = (minWidth + videoLeft); }; }; } catch(re1:ReferenceError) { }; try { if (!isNaN(layout_mc["minHeight"])){ minHeight = layout_mc["minHeight"]; vidHeight = (videoBottom - videoTop); if ((((minHeight > 0)) && ((minHeight > vidHeight)))){ videoTop = (videoTop - ((minHeight - vidHeight) / 2)); videoBottom = (minHeight + videoTop); }; }; } catch(re2:ReferenceError) { }; i = 0; while (i < customClips.length) { layoutControl(customClips[i]); if (customClips[i] == border_mc){ bitmapCopyBorder(); }; i = (i + 1); }; i = 0; while (i < NUM_CONTROLS) { layoutControl(controls[i]); i = (i + 1); }; } public function set bufferingDelayInterval(_arg1:Number):void{ if (_bufferingDelayTimer.delay == _arg1){ return; }; _bufferingDelayTimer.delay = _arg1; } flvplayback_internal function setupButtonSkinState(_arg1:Sprite, _arg2:Sprite, _arg3:String, _arg4:DisplayObject=null):DisplayObject{ var stateSkin:DisplayObject; var ctrl = _arg1; var definitionHolder = _arg2; var skinName = _arg3; var defaultSkin = _arg4; try { stateSkin = createSkin(definitionHolder, skinName); } catch(ve:VideoError) { if (defaultSkin != null){ stateSkin = null; } else { throw (ve); }; }; if (stateSkin != null){ stateSkin.visible = false; ctrl.addChild(stateSkin); } else { if (defaultSkin != null){ stateSkin = defaultSkin; }; }; return (stateSkin); } flvplayback_internal function setEnabledAndVisibleForState(_arg1:int, _arg2:String):void{ var _local6:ControlData; var _local7:Boolean; var _local8:ControlData; var _local9:ControlData; var _local10:ControlData; var _local11:ControlData; var _local3:int = _vc.activeVideoPlayerIndex; _vc.activeVideoPlayerIndex = _vc.visibleVideoPlayerIndex; var _local4:String = _arg2; if ((((_local4 == VideoState.BUFFERING)) && (!(_bufferingOn)))){ _local4 = VideoState.PLAYING; }; var _local5:Sprite = controls[_arg1]; if (_local5 == null){ return; }; _local6 = ctrlDataDict[_local5]; if (_local6 == null){ return; }; switch (_arg1){ case VOLUME_BAR: case VOLUME_BAR_HANDLE: case VOLUME_BAR_HIT: _local6.enabled = true; break; case FULL_SCREEN_ON_BUTTON: _local6.enabled = !(_fullScreen); if (controls[FULL_SCREEN_BUTTON] != undefined){ _local5.visible = _local6.enabled; }; break; case FULL_SCREEN_OFF_BUTTON: _local6.enabled = _fullScreen; if (controls[FULL_SCREEN_BUTTON] != undefined){ _local5.visible = _local6.enabled; }; break; case MUTE_ON_BUTTON: _local6.enabled = !(_isMuted); if (controls[MUTE_BUTTON] != undefined){ _local5.visible = _local6.enabled; }; break; case MUTE_OFF_BUTTON: _local6.enabled = _isMuted; if (controls[MUTE_BUTTON] != undefined){ _local5.visible = _local6.enabled; }; break; default: switch (_local4){ case VideoState.LOADING: case VideoState.CONNECTION_ERROR: _local6.enabled = false; break; case VideoState.DISCONNECTED: _local6.enabled = ((!((_vc.source == null))) && (!((_vc.source == "")))); break; case VideoState.SEEKING: break; default: _local6.enabled = true; break; }; break; }; switch (_arg1){ case SEEK_BAR: switch (_local4){ case VideoState.STOPPED: case VideoState.PLAYING: case VideoState.PAUSED: case VideoState.REWINDING: case VideoState.SEEKING: _local6.enabled = true; break; case VideoState.BUFFERING: _local6.enabled = ((!(_bufferingBarHides)) || ((controls[BUFFERING_BAR] == undefined))); break; default: _local6.enabled = false; break; }; if (_local6.enabled){ _local6.enabled = !(isNaN(_vc.totalTime)); }; if (_local6.handle_mc != null){ _local8 = ctrlDataDict[_local6.handle_mc]; _local8.enabled = _local6.enabled; _local6.handle_mc.visible = _local8.enabled; }; if (_local6.hit_mc != null){ _local9 = ctrlDataDict[_local6.hit_mc]; _local9.enabled = _local6.enabled; _local6.hit_mc.visible = _local9.enabled; }; _local7 = ((((((!(_bufferingBarHides)) || (_local6.enabled))) || ((controls[BUFFERING_BAR] == undefined)))) || (!(controls[BUFFERING_BAR].visible))); _local5.visible = _local7; if (_local6.progress_mc != null){ _local6.progress_mc.visible = _local7; _local10 = ctrlDataDict[_local6.progress_mc]; if (_local10.fill_mc != null){ _local10.fill_mc.visible = _local7; }; }; if (_local6.fullness_mc != null){ _local6.fullness_mc.visible = _local7; _local11 = ctrlDataDict[_local6.fullness_mc]; if (_local11.fill_mc != null){ _local11.fill_mc.visible = _local7; }; }; break; case BUFFERING_BAR: switch (_local4){ case VideoState.STOPPED: case VideoState.PLAYING: case VideoState.PAUSED: case VideoState.REWINDING: case VideoState.SEEKING: _local6.enabled = false; break; default: _local6.enabled = true; break; }; _local5.visible = _local6.enabled; if (_local6.fill_mc != null){ _local6.fill_mc.visible = _local6.enabled; }; break; case PAUSE_BUTTON: switch (_local4){ case VideoState.DISCONNECTED: case VideoState.STOPPED: case VideoState.PAUSED: case VideoState.REWINDING: _local6.enabled = false; break; case VideoState.PLAYING: _local6.enabled = true; break; case VideoState.BUFFERING: _local6.enabled = ((!(_bufferingBarHides)) || ((controls[BUFFERING_BAR] == undefined))); break; }; if (controls[PLAY_PAUSE_BUTTON] != undefined){ _local5.visible = _local6.enabled; }; break; case PLAY_BUTTON: switch (_local4){ case VideoState.PLAYING: _local6.enabled = false; break; case VideoState.STOPPED: case VideoState.PAUSED: _local6.enabled = true; break; case VideoState.BUFFERING: _local6.enabled = ((!(_bufferingBarHides)) || ((controls[BUFFERING_BAR] == undefined))); break; }; if (controls[PLAY_PAUSE_BUTTON] != undefined){ _local5.visible = !(controls[PAUSE_BUTTON].visible); }; break; case STOP_BUTTON: switch (_local4){ case VideoState.DISCONNECTED: case VideoState.STOPPED: _local6.enabled = false; _local5.tabEnabled = false; break; case VideoState.PAUSED: case VideoState.PLAYING: case VideoState.BUFFERING: _local6.enabled = true; _local5.tabEnabled = true; break; }; break; case BACK_BUTTON: case FORWARD_BUTTON: switch (_local4){ case VideoState.BUFFERING: _local6.enabled = ((!(_bufferingBarHides)) || ((controls[BUFFERING_BAR] == undefined))); _local5.tabEnabled = ((!(_bufferingBarHides)) || ((controls[BUFFERING_BAR] == undefined))); break; }; }; _local5.mouseEnabled = _local6.enabled; _vc.activeVideoPlayerIndex = _local3; } public function set fullScreenTakeOver(_arg1:Boolean):void{ var v = _arg1; if (_fullScreenTakeOver != v){ _fullScreenTakeOver = v; if (_fullScreenTakeOver){ enterFullScreenTakeOver(); } else { if (((((!((_vc.stage == null))) && (_fullScreen))) && (_fullScreenAccel))){ try { _vc.stage.displayState = StageDisplayState.NORMAL; } catch(se:SecurityError) { }; }; exitFullScreenTakeOver(); }; }; } flvplayback_internal function enterFullScreenTakeOver():void{ var i:int; var fullScreenBG:Sprite; var vp:VideoPlayer; if (((!(_fullScreen)) || (!((cacheFLVPlaybackParent == null))))){ return; }; _vc.removeEventListener(LayoutEvent.LAYOUT, handleLayoutEvent); _vc.removeEventListener(AutoLayoutEvent.AUTO_LAYOUT, handleLayoutEvent); _vc.removeEventListener(Event.ADDED_TO_STAGE, handleEvent); _vc.stage.removeEventListener(FullScreenEvent.FULL_SCREEN, handleFullScreenEvent); try { cacheFLVPlaybackScaleMode = new Array(); cacheFLVPlaybackAlign = new Array(); i = 0; while (i < _vc.videoPlayers.length) { vp = (_vc.videoPlayers[i] as VideoPlayer); if (vp != null){ cacheFLVPlaybackScaleMode[i] = vp.scaleMode; cacheFLVPlaybackAlign[i] = vp.align; }; i = (i + 1); }; cacheFLVPlaybackParent = _vc.parent; cacheFLVPlaybackIndex = _vc.parent.getChildIndex(_vc); cacheFLVPlaybackLocation = new Rectangle(_vc.registrationX, _vc.registrationY, _vc.registrationWidth, _vc.registrationHeight); if (!_fullScreenAccel){ cacheStageAlign = _vc.stage.align; cacheStageScaleMode = _vc.stage.scaleMode; _vc.stage.align = StageAlign.TOP_LEFT; _vc.stage.scaleMode = StageScaleMode.NO_SCALE; }; _vc.align = VideoAlign.CENTER; _vc.scaleMode = VideoScaleMode.MAINTAIN_ASPECT_RATIO; _vc.registrationX = 0; _vc.registrationY = 0; if (_fullScreenAccel){ _vc.setSize(_vc.stage.fullScreenSourceRect.width, _vc.stage.fullScreenSourceRect.height); } else { _vc.setSize(_vc.stage.stageWidth, _vc.stage.stageHeight); }; if (_vc.stage != _vc.parent){ _vc.stage.addChild(_vc); } else { _vc.stage.setChildIndex(_vc, (_vc.stage.numChildren - 1)); }; fullScreenBG = Sprite(_vc.getChildByName("fullScreenBG")); if (fullScreenBG == null){ fullScreenBG = new Sprite(); fullScreenBG.name = "fullScreenBG"; _vc.addChildAt(fullScreenBG, 0); } else { _vc.setChildIndex(fullScreenBG, 0); }; fullScreenBG.graphics.beginFill(_fullScreenBgColor); if (_fullScreenAccel){ fullScreenBG.graphics.drawRect(0, 0, _vc.stage.fullScreenSourceRect.width, _vc.stage.fullScreenSourceRect.height); } else { fullScreenBG.graphics.drawRect(0, 0, _vc.stage.stageWidth, _vc.stage.stageHeight); }; layoutSkin(); setupSkinAutoHide(false); if (hitTarget_mc != null){ hitTarget_mc.graphics.clear(); hitTarget_mc.graphics.lineStyle(0, 0, 0); if (_fullScreenAccel){ hitTarget_mc.graphics.drawRect(0, 0, _vc.stage.fullScreenSourceRect.width, _vc.stage.fullScreenSourceRect.height); } else { hitTarget_mc.graphics.drawRect(0, 0, _vc.stage.stageWidth, _vc.stage.stageHeight); }; }; } catch(err:Error) { cacheFLVPlaybackParent = null; }; _vc.addEventListener(LayoutEvent.LAYOUT, handleLayoutEvent); _vc.addEventListener(AutoLayoutEvent.AUTO_LAYOUT, handleLayoutEvent); _vc.addEventListener(Event.ADDED_TO_STAGE, handleEvent); _vc.stage.addEventListener(FullScreenEvent.FULL_SCREEN, handleFullScreenEvent); } public function set seekBarScrubTolerance(_arg1:Number):void{ _seekBarScrubTolerance = _arg1; } flvplayback_internal function cleanupHandle(_arg1:Object):void{ var e:Event; var ctrl:Sprite; var ctrlData:ControlData; var ctrlOrEvent = _arg1; try { if ((ctrlOrEvent is Event)){ e = Event(ctrlOrEvent); }; ctrl = ((e == null)) ? Sprite(ctrlOrEvent) : Sprite(e.currentTarget); ctrlData = ctrlDataDict[ctrl]; if ((((ctrlData == null)) || ((e == null)))){ ctrl.removeEventListener(Event.REMOVED_FROM_STAGE, cleanupHandle, false); if (ctrlData == null){ return; }; }; ctrl.removeEventListener(Event.ENTER_FRAME, finishAddBarControl); if (ctrlData.handle_mc != null){ if (ctrlData.handle_mc.parent != null){ ctrlData.handle_mc.parent.removeChild(ctrlData.handle_mc); }; delete ctrlDataDict[ctrlData.handle_mc]; ctrlData.handle_mc = null; }; if (ctrlData.hit_mc != null){ if (ctrlData.hit_mc.parent != null){ ctrlData.hit_mc.parent.removeChild(ctrlData.hit_mc); }; delete ctrlDataDict[ctrlData.hit_mc]; ctrlData.hit_mc = null; }; } catch(err:Error) { }; } flvplayback_internal function assignTabIndexes(_arg1:int):int{ var controlsSlice:Array; var customSlice:Array; var sortedControls:Array; var i:int; var ctrl:Sprite; var startTabbing = _arg1; if (startTabbing){ startTabIndex = startTabbing; endTabIndex = (startTabIndex + 1); } else { if (_vc.tabIndex){ startTabIndex = _vc.tabIndex; endTabIndex = (startTabIndex + 1); } else { return (endTabIndex); }; }; var sortByPosition:Function = function (_arg1:DisplayObject, _arg2:DisplayObject):int{ var _local3:Rectangle = _arg1.getBounds(_vc); var _local4:Rectangle = _arg2.getBounds(_vc); if (_local3.x > _local4.x){ return (1); }; if (_local3.x < _local4.x){ return (-1); }; if (_local3.y > _local4.y){ return (-1); }; if (_local3.y < _local4.y){ return (1); }; return (0); }; try { controlsSlice = controls.slice(); if (((customClips) && ((customClips.length > 0)))){ customSlice = customClips.slice(); }; sortedControls = (customSlice) ? controlsSlice.concat(customSlice) : controlsSlice; sortedControls.sort(sortByPosition); while (i < sortedControls.length) { ctrl = (sortedControls[i] as Sprite); ctrl.tabIndex = ++endTabIndex; if (!ctrl.tabEnabled){ ctrl.tabEnabled = false; }; i = (i + 1); }; } catch(err:Error) { }; return (++endTabIndex); } flvplayback_internal static function getNumberPropSafe(_arg1:Object, _arg2:String):Number{ var numProp:*; var obj = _arg1; var propName = _arg2; try { numProp = obj[propName]; return (Number(numProp)); } catch(re:ReferenceError) { }; return (NaN); } flvplayback_internal static function getBooleanPropSafe(_arg1:Object, _arg2:String):Boolean{ var boolProp:*; var obj = _arg1; var propName = _arg2; try { boolProp = obj[propName]; return (Boolean(boolProp)); } catch(re:ReferenceError) { }; return (false); } flvplayback_internal static function initLayoutNameToIndexMappings():void{ layoutNameToIndexMappings = new Object(); var _local1:int; while (_local1 < layoutNameArray.length) { if (layoutNameArray[_local1] != null){ layoutNameToIndexMappings[layoutNameArray[_local1]] = _local1; }; _local1++; }; } } }//package fl.video
Section 23
//VideoAlign (fl.video.VideoAlign) package fl.video { public final class VideoAlign { public static const CENTER:String = "center"; public static const LEFT:String = "left"; public static const BOTTOM_RIGHT:String = "bottomRight"; public static const BOTTOM:String = "bottom"; public static const TOP_LEFT:String = "topLeft"; public static const TOP_RIGHT:String = "topRight"; public static const TOP:String = "top"; public static const BOTTOM_LEFT:String = "bottomLeft"; public static const RIGHT:String = "right"; } }//package fl.video
Section 24
//VideoError (fl.video.VideoError) package fl.video { public class VideoError extends Error { private var _code:uint; public static const INVALID_SOURCE:uint = 1004; flvplayback_internal static const ERROR_MSG:Array = ["Unable to make connection to server or to find FLV on server", "No matching cue point found", "Illegal cue point", "Invalid seek", "Invalid source", "Invalid xml", "No bitrate match, must be no default flv", "Cannot delete default VideoPlayer", "VideoPlayer.iNCManagerClass has not been set or its value is invalid", "Null url parameter sent to load()", "Skin is missing a required style definition or its value is invalid", "Unsupported property", "VideoPlayer.netStreamClientClass has not been set or its value is invalid"]; public static const NULL_URL_LOAD:uint = 1009; public static const INVALID_XML:uint = 1005; flvplayback_internal static const BASE_ERROR_CODE:uint = 1000; public static const DELETE_DEFAULT_PLAYER:uint = 1007; public static const SHORT_VERSION:String = "2.1"; public static const UNSUPPORTED_PROPERTY:uint = 1011; public static const ILLEGAL_CUE_POINT:uint = 1002; public static const INVALID_SEEK:uint = 1003; public static const NO_CONNECTION:uint = 1000; public static const MISSING_SKIN_STYLE:uint = 1010; public static const INCMANAGER_CLASS_UNSET:uint = 1008; public static const NO_BITRATE_MATCH:uint = 1006; public static const NETSTREAM_CLIENT_CLASS_UNSET:uint = 1012; public static const VERSION:String = "2.1.0.20"; public function VideoError(_arg1:uint, _arg2:String=null){ super((((("" + _arg1) + ": ") + ERROR_MSG[(_arg1 - BASE_ERROR_CODE)]) + ((_arg2)==null) ? "" : (": " + _arg2))); name = "VideoError"; _code = _arg1; } public function get code():uint{ return (_code); } } }//package fl.video
Section 25
//VideoEvent (fl.video.VideoEvent) package fl.video { import flash.events.*; public class VideoEvent extends Event implements IVPEvent { private var _playheadTime:Number; private var _vp:uint; private var _state:String; public static const FAST_FORWARD:String = "fastForward"; public static const READY:String = "ready"; public static const SKIN_LOADED:String = "skinLoaded"; public static const SCRUB_FINISH:String = "scrubFinish"; public static const BUFFERING_STATE_ENTERED:String = "bufferingStateEntered"; public static const STOPPED_STATE_ENTERED:String = "stoppedStateEntered"; public static const AUTO_REWOUND:String = "autoRewound"; public static const SCRUB_START:String = "scrubStart"; public static const PLAYHEAD_UPDATE:String = "playheadUpdate"; public static const SEEKED:String = "seeked"; public static const PLAYING_STATE_ENTERED:String = "playingStateEntered"; public static const CLOSE:String = "close"; public static const PAUSED_STATE_ENTERED:String = "pausedStateEntered"; public static const COMPLETE:String = "complete"; public static const REWIND:String = "rewind"; public static const STATE_CHANGE:String = "stateChange"; public function VideoEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:String=null, _arg5:Number=NaN, _arg6:uint=0){ super(_arg1, _arg2, _arg3); _state = _arg4; _playheadTime = _arg5; _vp = _arg6; } public function get playheadTime():Number{ return (_playheadTime); } public function set playheadTime(_arg1:Number):void{ _playheadTime = _arg1; } public function set state(_arg1:String):void{ _state = _arg1; } public function get state():String{ return (_state); } public function set vp(_arg1:uint):void{ _vp = _arg1; } public function get vp():uint{ return (_vp); } override public function clone():Event{ return (new VideoEvent(type, bubbles, cancelable, state, playheadTime, vp)); } } }//package fl.video
Section 26
//VideoPlayer (fl.video.VideoPlayer) package fl.video { import flash.events.*; import flash.geom.*; import flash.net.*; import flash.media.*; import flash.utils.*; public class VideoPlayer extends Video { protected var _align:String; protected var _registrationWidth:Number; flvplayback_internal var _updateProgressTimer:Timer; flvplayback_internal var _atEndCheckPlayhead:Number; flvplayback_internal var _hiddenForResize:Boolean; flvplayback_internal var startProgressTime:Number; protected var _volume:Number; flvplayback_internal var _invalidSeekTime:Boolean; protected var _isLive:Boolean; flvplayback_internal var _readyDispatched:Boolean; flvplayback_internal var lastUpdateTimeStuckCount:Number; protected var _ns:NetStream; protected var _streamLength:Number; flvplayback_internal var _bufferState:String; flvplayback_internal var _rtmpDoSeekTimer:Timer; flvplayback_internal var lastUpdateTimeStuckCountMax:int;// = 10 protected var _contentPath:String; flvplayback_internal var _lastUpdateTime:Number; protected var _metadata:Object; protected var __visible:Boolean; flvplayback_internal var autoResizeMetadataDelayMax:Number;// = 5 protected var _scaleMode:String; flvplayback_internal var _sawPlayStop:Boolean; flvplayback_internal var _atEnd:Boolean; flvplayback_internal var _sawSeekNotify:Boolean; flvplayback_internal var _idleTimeoutTimer:Timer; flvplayback_internal var _prevVideoWidth:int; protected var _registrationX:Number; protected var _registrationY:Number; protected var _bufferTime:Number; flvplayback_internal var _cachedState:String; flvplayback_internal var totalDownloadTime:Number; flvplayback_internal var _cachedPlayheadTime:Number; protected var _autoPlay:Boolean; protected var _autoRewind:Boolean; flvplayback_internal var _invalidSeekRecovery:Boolean; flvplayback_internal var _hiddenRewindPlayheadTime:Number; flvplayback_internal var _prevVideoHeight:int; protected var _ncMgr:INCManager; protected var _soundTransform:SoundTransform; flvplayback_internal var _httpDoSeekCount:Number; flvplayback_internal var oldRegistrationBounds:Rectangle; flvplayback_internal var _cmdQueue:Array; flvplayback_internal var _updateTimeTimer:Timer; flvplayback_internal var _startingPlay:Boolean; flvplayback_internal var httpDoSeekMaxCount:Number;// = 4 flvplayback_internal var _httpDoSeekTimer:Timer; flvplayback_internal var baselineProgressTime:Number; flvplayback_internal var _autoResizeTimer:Timer; flvplayback_internal var _autoResizeDone:Boolean; protected var _state:String; protected var _videoWidth:int; flvplayback_internal var _finishAutoResizeTimer:Timer; flvplayback_internal var _resizeImmediatelyOnMetadata:Boolean; flvplayback_internal var _currentPos:Number; flvplayback_internal var oldBounds:Rectangle; protected var _videoHeight:int; flvplayback_internal var _delayedBufferingTimer:Timer; flvplayback_internal var waitingForEnough:Boolean; flvplayback_internal var _hiddenForResizeMetadataDelay:Number; protected var _registrationHeight:Number; flvplayback_internal var autoResizePlayheadTimeout:Number;// = 0.5 flvplayback_internal var _rtmpDoStopAtEndTimer:Timer; flvplayback_internal var _lastSeekTime:Number; flvplayback_internal var totalProgressTime:Number; flvplayback_internal static const FINISH_AUTO_RESIZE_INTERVAL:Number = 250; flvplayback_internal static const DEFAULT_AUTO_RESIZE_PLAYHEAD_TIMEOUT:Number = 0.5; flvplayback_internal static const DEFAULT_AUTO_RESIZE_METADATA_DELAY_MAX:Number = 5; public static const SHORT_VERSION:String = "2.1"; flvplayback_internal static const HTTP_DO_SEEK_INTERVAL:Number = 250; flvplayback_internal static const DEFAULT_HTTP_DO_SEEK_MAX_COUNT:Number = 4; flvplayback_internal static const RTMP_DO_SEEK_INTERVAL:Number = 100; flvplayback_internal static const HTTP_DELAYED_BUFFERING_INTERVAL:Number = 100; public static const DEFAULT_UPDATE_TIME_INTERVAL:Number = 250; flvplayback_internal static const AUTO_RESIZE_INTERVAL:Number = 100; public static const DEFAULT_IDLE_TIMEOUT_INTERVAL:Number = 300000; flvplayback_internal static const DEFAULT_LAST_UPDATE_TIME_STUCK_COUNT_MAX:int = 10; flvplayback_internal static const RTMP_DO_STOP_AT_END_INTERVAL:Number = 500; public static const VERSION:String = "2.1.0.20"; public static const DEFAULT_UPDATE_PROGRESS_INTERVAL:Number = 250; public static var netStreamClientClass:Object = VideoPlayerClient; public static var iNCManagerClass:Object = "fl.video.NCManager"; flvplayback_internal static var BUFFER_FLUSH:String = "bufferFlush"; flvplayback_internal static var BUFFER_FULL:String = "bufferFull"; flvplayback_internal static var BUFFER_EMPTY:String = "bufferEmpty"; public function VideoPlayer(_arg1:int=320, _arg2:int=240){ super(_arg1, _arg2); _registrationX = x; _registrationY = y; _registrationWidth = _arg1; _registrationHeight = _arg2; _state = VideoState.DISCONNECTED; _cachedState = _state; _bufferState = BUFFER_EMPTY; _sawPlayStop = false; _cachedPlayheadTime = 0; _metadata = null; _startingPlay = false; _invalidSeekTime = false; _invalidSeekRecovery = false; _currentPos = 0; _atEnd = false; _streamLength = 0; _cmdQueue = new Array(); _readyDispatched = false; _autoResizeDone = false; _lastUpdateTime = NaN; lastUpdateTimeStuckCount = 0; _sawSeekNotify = false; _hiddenForResize = false; _hiddenForResizeMetadataDelay = 0; _resizeImmediatelyOnMetadata = false; _videoWidth = -1; _videoHeight = -1; _prevVideoWidth = 0; _prevVideoHeight = 0; _updateTimeTimer = new Timer(DEFAULT_UPDATE_TIME_INTERVAL); _updateTimeTimer.addEventListener(TimerEvent.TIMER, doUpdateTime); _updateProgressTimer = new Timer(DEFAULT_UPDATE_PROGRESS_INTERVAL); _updateProgressTimer.addEventListener(TimerEvent.TIMER, doUpdateProgress); _idleTimeoutTimer = new Timer(DEFAULT_IDLE_TIMEOUT_INTERVAL, 1); _idleTimeoutTimer.addEventListener(TimerEvent.TIMER, doIdleTimeout); _autoResizeTimer = new Timer(AUTO_RESIZE_INTERVAL); _autoResizeTimer.addEventListener(TimerEvent.TIMER, doAutoResize); _rtmpDoStopAtEndTimer = new Timer(RTMP_DO_STOP_AT_END_INTERVAL); _rtmpDoStopAtEndTimer.addEventListener(TimerEvent.TIMER, rtmpDoStopAtEnd); _rtmpDoSeekTimer = new Timer(RTMP_DO_SEEK_INTERVAL); _rtmpDoSeekTimer.addEventListener(TimerEvent.TIMER, rtmpDoSeek); _httpDoSeekTimer = new Timer(HTTP_DO_SEEK_INTERVAL); _httpDoSeekTimer.addEventListener(TimerEvent.TIMER, httpDoSeek); _httpDoSeekCount = 0; _finishAutoResizeTimer = new Timer(FINISH_AUTO_RESIZE_INTERVAL, 1); _finishAutoResizeTimer.addEventListener(TimerEvent.TIMER, finishAutoResize); _delayedBufferingTimer = new Timer(HTTP_DELAYED_BUFFERING_INTERVAL); _delayedBufferingTimer.addEventListener(TimerEvent.TIMER, doDelayedBuffering); _isLive = false; _align = VideoAlign.CENTER; _scaleMode = VideoScaleMode.MAINTAIN_ASPECT_RATIO; _autoPlay = true; _autoRewind = false; _bufferTime = 0.1; _soundTransform = new SoundTransform(); _volume = _soundTransform.volume; __visible = true; _contentPath = ""; waitingForEnough = false; baselineProgressTime = NaN; startProgressTime = NaN; totalDownloadTime = NaN; totalProgressTime = NaN; } public function get playheadTime():Number{ var _local1:Number = ((_ns)==null) ? _currentPos : _ns.time; if (((!((_metadata == null))) && (!((_metadata.audiodelay == undefined))))){ _local1 = (_local1 - _metadata.audiodelay); if (_local1 < 0){ _local1 = 0; }; }; return (_local1); } public function stop():void{ if (!isXnOK()){ if ((((((_state == VideoState.CONNECTION_ERROR)) || ((_ncMgr == null)))) || ((_ncMgr.netConnection == null)))){ throw (new VideoError(VideoError.NO_CONNECTION)); }; return; } else { if (_state == VideoState.EXEC_QUEUED_CMD){ _state = _cachedState; } else { if (!stateResponsive){ queueCmd(QueuedCommand.STOP); return; }; execQueuedCmds(); }; }; if ((((_state == VideoState.STOPPED)) || ((_ns == null)))){ return; }; if (_ncMgr.isRTMP){ if (((_autoRewind) && (!(_isLive)))){ _currentPos = 0; _play(0, 0); _state = VideoState.STOPPED; setState(VideoState.REWINDING); } else { closeNS(true); setState(VideoState.STOPPED); }; } else { _pause(true); if (_autoRewind){ _seek(0); _state = VideoState.STOPPED; setState(VideoState.REWINDING); } else { setState(VideoState.STOPPED); }; }; } public function setScale(_arg1:Number, _arg2:Number):void{ super.scaleX = _arg1; super.scaleY = _arg2; _registrationWidth = width; _registrationHeight = height; switch (_scaleMode){ case VideoScaleMode.MAINTAIN_ASPECT_RATIO: case VideoScaleMode.NO_SCALE: startAutoResize(); break; default: super.x = _registrationX; super.y = _registrationY; break; }; } public function set playheadTime(_arg1:Number):void{ seek(_arg1); } override public function get videoWidth():int{ if (_videoWidth > 0){ return (_videoWidth); }; if (((((!((_metadata == null))) && (!(isNaN(_metadata.width))))) && (!(isNaN(_metadata.height))))){ if ((((_metadata.width == _metadata.height)) && (_readyDispatched))){ return (super.videoWidth); }; return (int(_metadata.width)); }; if (_readyDispatched){ return (super.videoWidth); }; return (-1); } public function get scaleMode():String{ return (_scaleMode); } public function get progressInterval():Number{ return (_updateProgressTimer.delay); } public function set align(_arg1:String):void{ if (_align != _arg1){ switch (_arg1){ case VideoAlign.CENTER: case VideoAlign.TOP: case VideoAlign.LEFT: case VideoAlign.BOTTOM: case VideoAlign.RIGHT: case VideoAlign.TOP_LEFT: case VideoAlign.TOP_RIGHT: case VideoAlign.BOTTOM_LEFT: case VideoAlign.BOTTOM_RIGHT: break; default: return; }; _align = _arg1; switch (_scaleMode){ case VideoScaleMode.MAINTAIN_ASPECT_RATIO: case VideoScaleMode.NO_SCALE: startAutoResize(); break; }; }; } public function set scaleMode(_arg1:String):void{ if (_scaleMode != _arg1){ switch (_arg1){ case VideoScaleMode.MAINTAIN_ASPECT_RATIO: case VideoScaleMode.NO_SCALE: case VideoScaleMode.EXACT_FIT: break; default: return; }; if ((((((_scaleMode == VideoScaleMode.EXACT_FIT)) && (_resizeImmediatelyOnMetadata))) && ((((_videoWidth < 0)) || ((_videoHeight < 0)))))){ _resizeImmediatelyOnMetadata = false; }; _scaleMode = _arg1; startAutoResize(); }; } public function get source():String{ return (_contentPath); } flvplayback_internal function doUpdateTime(_arg1:TimerEvent=null):void{ var _local2:Number = playheadTime; if (_local2 != _atEndCheckPlayhead){ _atEndCheckPlayhead = NaN; }; switch (_state){ case VideoState.STOPPED: case VideoState.PAUSED: case VideoState.DISCONNECTED: case VideoState.CONNECTION_ERROR: _updateTimeTimer.stop(); break; case VideoState.PLAYING: case VideoState.BUFFERING: if (((((((((!((_ncMgr == null))) && (!(_ncMgr.isRTMP)))) && ((_lastUpdateTime == _local2)))) && (!((_ns == null))))) && ((_ns.bytesLoaded == _ns.bytesTotal)))){ if (lastUpdateTimeStuckCount > lastUpdateTimeStuckCountMax){ lastUpdateTimeStuckCount = 0; httpDoStopAtEnd(); } else { lastUpdateTimeStuckCount++; }; }; }; if (_lastUpdateTime != _local2){ dispatchEvent(new VideoEvent(VideoEvent.PLAYHEAD_UPDATE, false, false, _state, _local2)); _lastUpdateTime = _local2; lastUpdateTimeStuckCount = 0; }; } flvplayback_internal function rtmpNetStatus(_arg1:NetStatusEvent):void{ if (_state == VideoState.CONNECTION_ERROR){ return; }; switch (_arg1.info.code){ case "NetStream.Play.Stop": if (_startingPlay){ return; }; switch (_state){ case VideoState.RESIZING: if (_hiddenForResize){ finishAutoResize(); }; break; case VideoState.LOADING: case VideoState.STOPPED: case VideoState.PAUSED: break; default: _sawPlayStop = true; if (((!(_rtmpDoStopAtEndTimer.running)) && ((((_bufferState == BUFFER_FLUSH)) || ((((_ns.bufferTime <= 0.1)) && ((_ns.bufferLength <= 0.1)))))))){ _cachedPlayheadTime = playheadTime; _rtmpDoStopAtEndTimer.reset(); _rtmpDoStopAtEndTimer.start(); }; break; }; break; case "NetStream.Buffer.Empty": switch (_bufferState){ case BUFFER_FULL: if (_sawPlayStop){ rtmpDoStopAtEnd(); } else { if (_state == VideoState.PLAYING){ setState(VideoState.BUFFERING); }; }; break; }; _bufferState = BUFFER_EMPTY; _sawPlayStop = false; break; case "NetStream.Buffer.Flush": if (((_sawSeekNotify) && ((_state == VideoState.SEEKING)))){ _bufferState = BUFFER_EMPTY; _sawPlayStop = false; setStateFromCachedState(false); doUpdateTime(); execQueuedCmds(); }; if (((((!(_rtmpDoStopAtEndTimer.running)) && (_sawPlayStop))) && ((((_bufferState == BUFFER_EMPTY)) || ((((_ns.bufferTime <= 0.1)) && ((_ns.bufferLength <= 0.1)))))))){ _cachedPlayheadTime = playheadTime; _rtmpDoStopAtEndTimer.reset(); _rtmpDoStopAtEndTimer.start(); }; switch (_bufferState){ case BUFFER_EMPTY: if (!_hiddenForResize){ if ((((((_state == VideoState.LOADING)) && ((_cachedState == VideoState.PLAYING)))) || ((_state == VideoState.BUFFERING)))){ setState(VideoState.PLAYING); } else { if (_cachedState == VideoState.BUFFERING){ _cachedState = VideoState.PLAYING; }; }; }; _bufferState = BUFFER_FLUSH; break; default: if (_state == VideoState.BUFFERING){ setStateFromCachedState(); }; break; }; break; case "NetStream.Buffer.Full": if (((_sawSeekNotify) && ((_state == VideoState.SEEKING)))){ _bufferState = BUFFER_EMPTY; _sawPlayStop = false; setStateFromCachedState(false); doUpdateTime(); execQueuedCmds(); }; switch (_bufferState){ case BUFFER_EMPTY: _bufferState = BUFFER_FULL; if (!_hiddenForResize){ if ((((((_state == VideoState.LOADING)) && ((_cachedState == VideoState.PLAYING)))) || ((_state == VideoState.BUFFERING)))){ setState(VideoState.PLAYING); } else { if (_cachedState == VideoState.BUFFERING){ _cachedState = VideoState.PLAYING; }; }; if (_rtmpDoStopAtEndTimer.running){ _sawPlayStop = true; _rtmpDoStopAtEndTimer.reset(); }; }; break; case BUFFER_FLUSH: _bufferState = BUFFER_FULL; if (_rtmpDoStopAtEndTimer.running){ _sawPlayStop = true; _rtmpDoStopAtEndTimer.reset(); }; break; }; if (_state == VideoState.BUFFERING){ setStateFromCachedState(); }; break; case "NetStream.Pause.Notify": if ((((_state == VideoState.RESIZING)) && (_hiddenForResize))){ finishAutoResize(); }; break; case "NetStream.Unpause.Notify": if (_state == VideoState.PAUSED){ _state = VideoState.PLAYING; setState(VideoState.BUFFERING); } else { _cachedState = VideoState.PLAYING; }; break; case "NetStream.Play.Start": _rtmpDoStopAtEndTimer.reset(); _bufferState = BUFFER_EMPTY; _sawPlayStop = false; if (_startingPlay){ _startingPlay = false; _cachedPlayheadTime = playheadTime; } else { if (_state == VideoState.PLAYING){ setState(VideoState.BUFFERING); }; }; break; case "NetStream.Play.Reset": _rtmpDoStopAtEndTimer.reset(); if (_state == VideoState.REWINDING){ _rtmpDoSeekTimer.reset(); if ((((playheadTime == 0)) || ((playheadTime < _cachedPlayheadTime)))){ setStateFromCachedState(); } else { _cachedPlayheadTime = playheadTime; _rtmpDoSeekTimer.start(); }; }; break; case "NetStream.Seek.Notify": if (playheadTime != _cachedPlayheadTime){ setStateFromCachedState(false); doUpdateTime(); execQueuedCmds(); } else { _sawSeekNotify = true; _rtmpDoSeekTimer.start(); }; break; case "Netstream.Play.UnpublishNotify": break; case "Netstream.Play.PublishNotify": break; case "NetStream.Play.StreamNotFound": closeNS(false); if (!_ncMgr.connectAgain()){ setState(VideoState.CONNECTION_ERROR); }; break; case "NetStream.Play.Failed": case "NetStream.Failed": case "NetStream.Play.FileStructureInvalid": case "NetStream.Play.NoSupportedTrackFound": setState(VideoState.CONNECTION_ERROR); break; }; } public function get ncMgr():INCManager{ if (_ncMgr == null){ createINCManager(); }; return (_ncMgr); } public function set progressInterval(_arg1:Number):void{ _updateProgressTimer.delay = _arg1; } flvplayback_internal function createINCManager():void{ var theClass:Class; try { if ((iNCManagerClass is String)){ theClass = Class(getDefinitionByName(String(iNCManagerClass))); } else { if ((iNCManagerClass is Class)){ theClass = Class(iNCManagerClass); }; }; } catch(e:Error) { theClass = null; }; if (theClass == null){ throw (new VideoError(VideoError.INCMANAGER_CLASS_UNSET, ((iNCManagerClass)==null) ? "null" : iNCManagerClass.toString())); }; _ncMgr = new (theClass); _ncMgr.videoPlayer = this; } flvplayback_internal function doAutoResize(_arg1:TimerEvent=null):void{ var _local3:int; var _local4:int; var _local5:Number; var _local6:Number; if (_autoResizeTimer.running){ switch (_state){ case VideoState.RESIZING: case VideoState.LOADING: break; case VideoState.DISCONNECTED: case VideoState.CONNECTION_ERROR: _autoResizeTimer.reset(); return; default: if (!stateResponsive){ return; }; }; if (((((((((!((super.videoWidth == _prevVideoWidth))) || (!((super.videoHeight == _prevVideoHeight))))) || ((_bufferState == BUFFER_FULL)))) || ((_bufferState == BUFFER_FLUSH)))) || ((_ns.time > autoResizePlayheadTimeout)))){ if (((((_hiddenForResize) && (!(_ns.client.ready)))) && ((_hiddenForResizeMetadataDelay < autoResizeMetadataDelayMax)))){ _hiddenForResizeMetadataDelay++; return; }; _autoResizeTimer.reset(); } else { return; }; }; if (_autoResizeDone){ setState(_cachedState); return; }; oldBounds = new Rectangle(x, y, width, height); oldRegistrationBounds = new Rectangle(registrationX, registrationY, registrationWidth, registrationHeight); _autoResizeDone = true; var _local2:Boolean = _readyDispatched; _readyDispatched = true; _local3 = videoWidth; _local4 = videoHeight; _readyDispatched = _local2; switch (_scaleMode){ case VideoScaleMode.NO_SCALE: super.width = Math.round(_local3); super.height = Math.round(_local4); break; case VideoScaleMode.EXACT_FIT: super.width = registrationWidth; super.height = registrationHeight; break; case VideoScaleMode.MAINTAIN_ASPECT_RATIO: default: _local5 = ((_local3 * _registrationHeight) / _local4); _local6 = ((_local4 * _registrationWidth) / _local3); if (_local6 < _registrationHeight){ super.width = _registrationWidth; super.height = _local6; } else { if (_local5 < _registrationWidth){ super.width = _local5; super.height = _registrationHeight; } else { super.width = _registrationWidth; super.height = _registrationHeight; }; }; }; switch (_align){ case VideoAlign.CENTER: case VideoAlign.TOP: case VideoAlign.BOTTOM: default: super.x = Math.round((_registrationX + ((_registrationWidth - width) / 2))); break; case VideoAlign.LEFT: case VideoAlign.TOP_LEFT: case VideoAlign.BOTTOM_LEFT: super.x = Math.round(_registrationX); break; case VideoAlign.RIGHT: case VideoAlign.TOP_RIGHT: case VideoAlign.BOTTOM_RIGHT: super.x = Math.round((_registrationX + (_registrationWidth - width))); break; }; switch (_align){ case VideoAlign.CENTER: case VideoAlign.LEFT: case VideoAlign.RIGHT: default: super.y = Math.round((_registrationY + ((_registrationHeight - height) / 2))); break; case VideoAlign.TOP: case VideoAlign.TOP_LEFT: case VideoAlign.TOP_RIGHT: super.y = Math.round(_registrationY); break; case VideoAlign.BOTTOM: case VideoAlign.BOTTOM_LEFT: case VideoAlign.BOTTOM_RIGHT: super.y = Math.round((_registrationY + (_registrationHeight - height))); break; }; if (_hiddenForResize){ _hiddenRewindPlayheadTime = playheadTime; if (_state == VideoState.LOADING){ _cachedState = VideoState.PLAYING; }; if (!_ncMgr.isRTMP){ _pause(true); _seek(0); _finishAutoResizeTimer.reset(); _finishAutoResizeTimer.start(); } else { if (!_isLive){ _currentPos = 0; _play(0, 0); setState(VideoState.RESIZING); } else { if (_autoPlay){ _finishAutoResizeTimer.reset(); _finishAutoResizeTimer.start(); } else { finishAutoResize(); }; }; }; } else { dispatchEvent(new AutoLayoutEvent(AutoLayoutEvent.AUTO_LAYOUT, false, false, oldBounds, oldRegistrationBounds)); }; } public function get totalTime():Number{ return (_streamLength); } public function set volume(_arg1:Number):void{ var _local2:SoundTransform = soundTransform; _local2.volume = _arg1; soundTransform = _local2; } flvplayback_internal function _play(_arg1:int=0, _arg2:int=-1):void{ waitingForEnough = false; _rtmpDoStopAtEndTimer.reset(); _startingPlay = true; _ns.play(_ncMgr.streamName, (_isLive) ? -1 : _arg1, _arg2); } flvplayback_internal function finishAutoResize(_arg1:TimerEvent=null):void{ if (stateResponsive){ return; }; _hiddenForResize = false; super.visible = __visible; volume = _volume; dispatchEvent(new AutoLayoutEvent(AutoLayoutEvent.AUTO_LAYOUT, false, false, oldBounds, oldRegistrationBounds)); if (_autoPlay){ if (_ncMgr.isRTMP){ if (!_isLive){ _currentPos = 0; _play(0); }; if (_state == VideoState.RESIZING){ setState(VideoState.LOADING); _cachedState = VideoState.PLAYING; }; } else { waitingForEnough = true; _cachedState = _state; _state = VideoState.PAUSED; checkReadyForPlay(bytesLoaded, bytesTotal); if (waitingForEnough){ _state = _cachedState; setState(VideoState.PAUSED); } else { _cachedState = VideoState.PLAYING; }; }; } else { setState(VideoState.STOPPED); }; } public function set soundTransform(_arg1:SoundTransform):void{ if (_arg1 == null){ return; }; if (_hiddenForResize){ _volume = _arg1.volume; }; _soundTransform = new SoundTransform(); _soundTransform.volume = (_hiddenForResize) ? 0 : _arg1.volume; _soundTransform.leftToLeft = _arg1.leftToLeft; _soundTransform.leftToRight = _arg1.leftToRight; _soundTransform.rightToLeft = _arg1.rightToLeft; _soundTransform.rightToRight = _arg1.rightToRight; if (_ns != null){ _ns.soundTransform = _soundTransform; }; } flvplayback_internal function onCuePoint(_arg1:Object):void{ if (((!(_hiddenForResize)) || (((!(isNaN(_hiddenRewindPlayheadTime))) && ((playheadTime < _hiddenRewindPlayheadTime)))))){ dispatchEvent(new MetadataEvent(MetadataEvent.CUE_POINT, false, false, _arg1)); }; } flvplayback_internal function httpNetStatus(_arg1:NetStatusEvent):void{ switch (_arg1.info.code){ case "NetStream.Play.Stop": _delayedBufferingTimer.reset(); if (_invalidSeekTime){ _invalidSeekTime = false; _invalidSeekRecovery = true; setState(_cachedState); seek(playheadTime); } else { switch (_state){ case VideoState.SEEKING: httpDoSeek(null); case VideoState.PLAYING: case VideoState.BUFFERING: httpDoStopAtEnd(); break; }; }; break; case "NetStream.Seek.InvalidTime": if (_invalidSeekRecovery){ _invalidSeekTime = false; _invalidSeekRecovery = false; setState(_cachedState); seek(0); } else { _invalidSeekTime = true; _httpDoSeekCount = 0; _httpDoSeekTimer.start(); }; break; case "NetStream.Buffer.Empty": _bufferState = BUFFER_EMPTY; if (_state == VideoState.PLAYING){ _delayedBufferingTimer.reset(); _delayedBufferingTimer.start(); }; break; case "NetStream.Buffer.Full": case "NetStream.Buffer.Flush": _delayedBufferingTimer.reset(); _bufferState = BUFFER_FULL; if (!_hiddenForResize){ if ((((((_state == VideoState.LOADING)) && ((_cachedState == VideoState.PLAYING)))) || ((_state == VideoState.BUFFERING)))){ setState(VideoState.PLAYING); } else { if (_cachedState == VideoState.BUFFERING){ _cachedState = VideoState.PLAYING; }; }; }; break; case "NetStream.Seek.Notify": _invalidSeekRecovery = false; switch (_state){ case VideoState.SEEKING: case VideoState.REWINDING: _httpDoSeekCount = 0; _httpDoSeekTimer.start(); break; }; break; case "NetStream.Play.StreamNotFound": case "NetStream.Play.FileStructureInvalid": case "NetStream.Play.NoSupportedTrackFound": setState(VideoState.CONNECTION_ERROR); break; }; } flvplayback_internal function httpDoSeek(_arg1:TimerEvent):void{ var _local2:Boolean = (((_state == VideoState.REWINDING)) || ((_state == VideoState.SEEKING))); if (((((_local2) && ((_httpDoSeekCount < httpDoSeekMaxCount)))) && ((((_cachedPlayheadTime == playheadTime)) || (_invalidSeekTime))))){ _httpDoSeekCount++; return; }; _httpDoSeekCount = 0; _httpDoSeekTimer.reset(); if (!_local2){ return; }; setStateFromCachedState(false); if (_invalidSeekTime){ _invalidSeekTime = false; _invalidSeekRecovery = true; seek(playheadTime); } else { doUpdateTime(); _lastSeekTime = playheadTime; execQueuedCmds(); }; } override public function set height(_arg1:Number):void{ super.height = (_registrationHeight = _arg1); switch (_scaleMode){ case VideoScaleMode.MAINTAIN_ASPECT_RATIO: case VideoScaleMode.NO_SCALE: startAutoResize(); break; default: super.height = _arg1; break; }; } public function get bytesLoaded():uint{ if ((((_ns == null)) || (_ncMgr.isRTMP))){ return (uint.MIN_VALUE); }; return (_ns.bytesLoaded); } public function set bufferTime(_arg1:Number):void{ _bufferTime = _arg1; if (_ns != null){ _ns.bufferTime = _bufferTime; }; } public function get netConnection():NetConnection{ if (_ncMgr != null){ return (_ncMgr.netConnection); }; return (null); } flvplayback_internal function onMetaData(_arg1:Object):void{ if (_metadata != null){ return; }; _metadata = _arg1; if (isNaN(_streamLength)){ _streamLength = _arg1.duration; }; if (((_resizeImmediatelyOnMetadata) && (_ns.client.ready))){ _resizeImmediatelyOnMetadata = false; _autoResizeTimer.reset(); _autoResizeDone = false; doAutoResize(); }; dispatchEvent(new MetadataEvent(MetadataEvent.METADATA_RECEIVED, false, false, _arg1)); } flvplayback_internal function queueCmd(_arg1:Number, _arg2:String=null, _arg3:Boolean=false, _arg4:Number=NaN):void{ _cmdQueue.push(new QueuedCommand(_arg1, _arg2, _arg3, _arg4)); } public function seek(_arg1:Number):void{ if (_invalidSeekTime){ return; }; if (((isNaN(_arg1)) || ((_arg1 < 0)))){ throw (new VideoError(VideoError.INVALID_SEEK)); }; if (!isXnOK()){ if ((((((_state == VideoState.CONNECTION_ERROR)) || ((_ncMgr == null)))) || ((_ncMgr.netConnection == null)))){ throw (new VideoError(VideoError.NO_CONNECTION)); }; flushQueuedCmds(); queueCmd(QueuedCommand.SEEK, null, false, _arg1); setState(VideoState.LOADING); _cachedState = VideoState.LOADING; _ncMgr.reconnect(); return; } else { if (_state == VideoState.EXEC_QUEUED_CMD){ _state = _cachedState; } else { if (!stateResponsive){ queueCmd(QueuedCommand.SEEK, null, false, _arg1); return; }; execQueuedCmds(); }; }; if (_ns == null){ _createStream(); }; if (((_atEnd) && ((_arg1 < playheadTime)))){ _atEnd = false; }; switch (_state){ case VideoState.PLAYING: _state = VideoState.BUFFERING; case VideoState.BUFFERING: case VideoState.PAUSED: _seek(_arg1); setState(VideoState.SEEKING); break; case VideoState.STOPPED: if (_ncMgr.isRTMP){ _play(0); _pause(true); }; _seek(_arg1); _state = VideoState.PAUSED; setState(VideoState.SEEKING); break; }; } public function set registrationHeight(_arg1:Number):void{ height = _arg1; } override public function get visible():Boolean{ if (!_hiddenForResize){ __visible = super.visible; }; return (__visible); } public function get registrationWidth():Number{ return (_registrationWidth); } public function get state():String{ return (_state); } public function set autoRewind(_arg1:Boolean):void{ _autoRewind = _arg1; } override public function set scaleX(_arg1:Number):void{ super.scaleX = _arg1; _registrationWidth = width; switch (_scaleMode){ case VideoScaleMode.MAINTAIN_ASPECT_RATIO: case VideoScaleMode.NO_SCALE: startAutoResize(); break; }; } override public function set scaleY(_arg1:Number):void{ super.scaleY = _arg1; _registrationHeight = height; switch (_scaleMode){ case VideoScaleMode.MAINTAIN_ASPECT_RATIO: case VideoScaleMode.NO_SCALE: startAutoResize(); break; }; } flvplayback_internal function flushQueuedCmds():void{ while (_cmdQueue.length > 0) { _cmdQueue.pop(); }; } public function get registrationX():Number{ return (_registrationX); } flvplayback_internal function _setUpStream():void{ if (((!(isNaN(_ncMgr.streamLength))) && ((_ncMgr.streamLength >= 0)))){ _streamLength = _ncMgr.streamLength; }; _videoWidth = ((_ncMgr.streamWidth)>=0) ? _ncMgr.streamWidth : -1; _videoHeight = ((_ncMgr.streamHeight)>=0) ? _ncMgr.streamHeight : -1; _resizeImmediatelyOnMetadata = (((((_videoWidth >= 0)) && ((_videoHeight >= 0)))) || ((_scaleMode == VideoScaleMode.EXACT_FIT))); if (!_hiddenForResize){ __visible = super.visible; super.visible = false; _volume = volume; volume = 0; _hiddenForResize = true; }; _hiddenForResizeMetadataDelay = 0; _play(0); if (_currentPos > 0){ _seek(_currentPos); _currentPos = 0; }; _autoResizeTimer.reset(); _autoResizeTimer.start(); } public function get registrationY():Number{ return (_registrationY); } flvplayback_internal function httpDoStopAtEnd():void{ if ((((((_atEndCheckPlayhead == playheadTime)) && (!((_atEndCheckPlayhead == _lastUpdateTime))))) && (!((playheadTime == 0))))){ _atEnd = false; _seek(0); return; }; _atEndCheckPlayhead = NaN; _atEnd = true; if (isNaN(_streamLength)){ _streamLength = _ns.time; }; _pause(true); setState(VideoState.STOPPED); if (_state != VideoState.STOPPED){ return; }; doUpdateTime(); if (_state != VideoState.STOPPED){ return; }; dispatchEvent(new VideoEvent(VideoEvent.COMPLETE, false, false, _state, playheadTime)); if (_state != VideoState.STOPPED){ return; }; if (_autoRewind){ _atEnd = false; _pause(true); _seek(0); setState(VideoState.REWINDING); }; } public function ncConnected():void{ if ((((_ncMgr == null)) || ((_ncMgr.netConnection == null)))){ setState(VideoState.CONNECTION_ERROR); } else { if (_ns == null){ _createStream(); _setUpStream(); }; }; } override public function set visible(_arg1:Boolean):void{ __visible = _arg1; if (!_hiddenForResize){ super.visible = __visible; }; } public function get idleTimeout():Number{ return (_idleTimeoutTimer.delay); } public function get playheadUpdateInterval():Number{ return (_updateTimeTimer.delay); } override public function set y(_arg1:Number):void{ var _local2:Number; if (this.y != _arg1){ _local2 = (_arg1 - this.y); super.y = _arg1; _registrationY = (_registrationY + _local2); }; } public function load(_arg1:String, _arg2:Number=NaN, _arg3:Boolean=false):void{ if (_arg1 == null){ throw (new VideoError(VideoError.NULL_URL_LOAD)); }; if (_state == VideoState.EXEC_QUEUED_CMD){ _state = _cachedState; } else { if (((((!(stateResponsive)) && (!((_state == VideoState.DISCONNECTED))))) && (!((_state == VideoState.CONNECTION_ERROR))))){ queueCmd(QueuedCommand.LOAD, _arg1, _arg3, _arg2); return; }; execQueuedCmds(); }; _autoPlay = false; _load(_arg1, _arg2, _arg3); } override public function set x(_arg1:Number):void{ var _local2:Number; if (this.x != _arg1){ _local2 = (_arg1 - this.x); super.x = _arg1; _registrationX = (_registrationX + _local2); }; } flvplayback_internal function doDelayedBuffering(_arg1:TimerEvent):void{ switch (_state){ case VideoState.LOADING: case VideoState.RESIZING: break; case VideoState.PLAYING: _delayedBufferingTimer.reset(); if (((((((((!(isNaN(totalTime))) && ((totalTime > 0)))) && ((bytesLoaded > 0)))) && ((bytesLoaded < uint.MAX_VALUE)))) && ((bytesLoaded < bytesTotal)))){ pause(); if (_state == VideoState.PAUSED){ waitingForEnough = true; playWhenEnoughDownloaded(); }; } else { setState(VideoState.BUFFERING); }; break; default: _delayedBufferingTimer.reset(); break; }; } flvplayback_internal function _pause(_arg1:Boolean):void{ _atEndCheckPlayhead = playheadTime; _rtmpDoStopAtEndTimer.reset(); if (_arg1){ _ns.pause(); } else { _ns.resume(); }; } flvplayback_internal function createNetStreamClient():Object{ var theClass:Class; var theInst:Object; try { if ((netStreamClientClass is String)){ theClass = Class(getDefinitionByName(String(netStreamClientClass))); } else { if ((netStreamClientClass is Class)){ theClass = Class(netStreamClientClass); }; }; if (theClass != null){ theInst = new theClass(this); }; } catch(e:Error) { theClass = null; theInst = null; }; if (theInst == null){ throw (new VideoError(VideoError.NETSTREAM_CLIENT_CLASS_UNSET, ((netStreamClientClass)==null) ? "null" : netStreamClientClass.toString())); }; return (theInst); } public function get align():String{ return (_align); } public function set registrationWidth(_arg1:Number):void{ width = _arg1; } public function get soundTransform():SoundTransform{ if (_ns != null){ _soundTransform = _ns.soundTransform; }; var _local1:SoundTransform = new SoundTransform(); _local1.volume = (_hiddenForResize) ? _volume : _soundTransform.volume; _local1.leftToLeft = _soundTransform.leftToLeft; _local1.leftToRight = _soundTransform.leftToRight; _local1.rightToLeft = _soundTransform.rightToLeft; _local1.rightToRight = _soundTransform.rightToRight; return (_local1); } public function get volume():Number{ return (soundTransform.volume); } public function get stateResponsive():Boolean{ switch (_state){ case VideoState.STOPPED: case VideoState.PLAYING: case VideoState.PAUSED: case VideoState.BUFFERING: return (true); default: return (false); }; } public function get bufferTime():Number{ if (_ns != null){ _bufferTime = _ns.bufferTime; }; return (_bufferTime); } public function get metadata():Object{ return (_metadata); } public function play(_arg1:String=null, _arg2:Number=NaN, _arg3:Boolean=false):void{ if (_arg1 != null){ if (_state == VideoState.EXEC_QUEUED_CMD){ _state = _cachedState; } else { if (((((!(stateResponsive)) && (!((_state == VideoState.DISCONNECTED))))) && (!((_state == VideoState.CONNECTION_ERROR))))){ queueCmd(QueuedCommand.PLAY, _arg1, _arg3, _arg2); return; }; execQueuedCmds(); }; _autoPlay = true; _load(_arg1, _arg2, _arg3); return; }; if (!isXnOK()){ if ((((((_state == VideoState.CONNECTION_ERROR)) || ((_ncMgr == null)))) || ((_ncMgr.netConnection == null)))){ throw (new VideoError(VideoError.NO_CONNECTION)); }; flushQueuedCmds(); queueCmd(QueuedCommand.PLAY); setState(VideoState.LOADING); _cachedState = VideoState.LOADING; _ncMgr.reconnect(); return; } else { if (_state == VideoState.EXEC_QUEUED_CMD){ _state = _cachedState; } else { if (!stateResponsive){ queueCmd(QueuedCommand.PLAY); return; }; execQueuedCmds(); }; }; if (_ns == null){ _createStream(); }; switch (_state){ case VideoState.BUFFERING: if (_ncMgr.isRTMP){ _play(0); if (_atEnd){ _atEnd = false; _currentPos = 0; setState(VideoState.REWINDING); } else { if (_currentPos > 0){ _seek(_currentPos); _currentPos = 0; }; }; }; case VideoState.PLAYING: return; case VideoState.STOPPED: if (_ncMgr.isRTMP){ if (_isLive){ _play(-1); setState(VideoState.BUFFERING); } else { _play(0); if (_atEnd){ _atEnd = false; _currentPos = 0; _state = VideoState.BUFFERING; setState(VideoState.REWINDING); } else { if (_currentPos > 0){ _seek(_currentPos); _currentPos = 0; setState(VideoState.BUFFERING); } else { setState(VideoState.BUFFERING); }; }; }; } else { _pause(false); if (_atEnd){ _atEnd = false; _seek(0); _state = VideoState.BUFFERING; setState(VideoState.REWINDING); } else { if (_bufferState == BUFFER_EMPTY){ setState(VideoState.BUFFERING); } else { setState(VideoState.PLAYING); }; }; }; break; case VideoState.PAUSED: _pause(false); if (!_ncMgr.isRTMP){ if (_bufferState == BUFFER_EMPTY){ setState(VideoState.BUFFERING); } else { setState(VideoState.PLAYING); }; } else { setState(VideoState.BUFFERING); }; break; }; } public function get isLive():Boolean{ return (_isLive); } flvplayback_internal function setStateFromCachedState(_arg1:Boolean=true):void{ switch (_cachedState){ case VideoState.PLAYING: case VideoState.PAUSED: case VideoState.BUFFERING: setState(_cachedState, _arg1); break; default: setState(VideoState.STOPPED, _arg1); break; }; } public function ncReconnected():void{ if ((((_ncMgr == null)) || ((_ncMgr.netConnection == null)))){ setState(VideoState.CONNECTION_ERROR); } else { _ns = null; _state = VideoState.STOPPED; execQueuedCmds(); }; } public function get registrationHeight():Number{ return (_registrationHeight); } public function get autoRewind():Boolean{ return (_autoRewind); } flvplayback_internal function startAutoResize():void{ switch (_state){ case VideoState.DISCONNECTED: case VideoState.CONNECTION_ERROR: return; default: if (_ns == null){ return; }; _autoResizeDone = false; if (((stateResponsive) && (((((((((!((super.videoWidth == 0))) || (!((super.videoHeight == 0))))) || ((_bufferState == BUFFER_FULL)))) || ((_bufferState == BUFFER_FLUSH)))) || ((_ns.time > autoResizePlayheadTimeout)))))){ doAutoResize(); } else { _autoResizeTimer.reset(); _autoResizeTimer.start(); }; break; }; } flvplayback_internal function setState(_arg1:String, _arg2:Boolean=true):void{ if (_arg1 == _state){ return; }; _hiddenRewindPlayheadTime = NaN; _cachedState = _state; _cachedPlayheadTime = playheadTime; _state = _arg1; var _local3:String = _state; dispatchEvent(new VideoEvent(VideoEvent.STATE_CHANGE, false, false, _local3, playheadTime)); if (!_readyDispatched){ switch (_local3){ case VideoState.STOPPED: case VideoState.PLAYING: case VideoState.PAUSED: case VideoState.BUFFERING: _readyDispatched = true; dispatchEvent(new VideoEvent(VideoEvent.READY, false, false, _local3, playheadTime)); break; }; }; switch (_cachedState){ case VideoState.REWINDING: dispatchEvent(new VideoEvent(VideoEvent.AUTO_REWOUND, false, false, _local3, playheadTime)); if (((_ncMgr.isRTMP) && ((_local3 == VideoState.STOPPED)))){ closeNS(); }; break; }; switch (_local3){ case VideoState.STOPPED: case VideoState.PAUSED: if (_ncMgr.isRTMP){ _idleTimeoutTimer.reset(); _idleTimeoutTimer.start(); }; break; case VideoState.SEEKING: case VideoState.REWINDING: _bufferState = BUFFER_EMPTY; _sawPlayStop = false; _idleTimeoutTimer.reset(); break; case VideoState.PLAYING: case VideoState.BUFFERING: _updateTimeTimer.start(); _idleTimeoutTimer.reset(); break; case VideoState.LOADING: case VideoState.RESIZING: _idleTimeoutTimer.reset(); break; }; if (_arg2){ execQueuedCmds(); }; } flvplayback_internal function _seek(_arg1:Number):void{ _rtmpDoStopAtEndTimer.reset(); if (((((!((_metadata == null))) && (!((_metadata.audiodelay == undefined))))) && (((isNaN(_streamLength)) || (((_arg1 + _metadata.audiodelay) < _streamLength)))))){ _arg1 = (_arg1 + _metadata.audiodelay); }; _ns.seek(_arg1); _lastSeekTime = _arg1; _invalidSeekTime = false; _bufferState = BUFFER_EMPTY; _sawPlayStop = false; _sawSeekNotify = false; } flvplayback_internal function doIdleTimeout(_arg1:TimerEvent):void{ close(); } public function playWhenEnoughDownloaded():void{ if (((!((_ncMgr == null))) && (_ncMgr.isRTMP))){ play(); return; }; if (!isXnOK()){ throw (new VideoError(VideoError.NO_CONNECTION)); }; if (_state == VideoState.EXEC_QUEUED_CMD){ _state = _cachedState; } else { if (!stateResponsive){ queueCmd(QueuedCommand.PLAY_WHEN_ENOUGH); return; }; execQueuedCmds(); }; waitingForEnough = true; checkReadyForPlay(bytesLoaded, bytesTotal); } flvplayback_internal function rtmpDoSeek(_arg1:TimerEvent):void{ if (((!((_state == VideoState.REWINDING))) && (!((_state == VideoState.SEEKING))))){ _rtmpDoSeekTimer.reset(); _sawSeekNotify = false; } else { if (playheadTime != _cachedPlayheadTime){ _rtmpDoSeekTimer.reset(); _sawSeekNotify = false; setStateFromCachedState(false); doUpdateTime(); _lastSeekTime = playheadTime; execQueuedCmds(); }; }; } public function get netStream():NetStream{ return (_ns); } public function set registrationX(_arg1:Number):void{ var _local2:Number; if (_registrationX != _arg1){ _local2 = (_arg1 - _registrationX); _registrationX = _arg1; this.x = (this.x + _local2); }; } flvplayback_internal function doUpdateProgress(_arg1:TimerEvent):void{ if (_ns == null){ return; }; var _local2:uint = _ns.bytesLoaded; var _local3:uint = _ns.bytesTotal; if (_local3 < uint.MAX_VALUE){ dispatchEvent(new VideoProgressEvent(VideoProgressEvent.PROGRESS, false, false, _local2, _local3)); }; if ((((((_state == VideoState.DISCONNECTED)) || ((_state == VideoState.CONNECTION_ERROR)))) || ((_local2 >= _local3)))){ _updateProgressTimer.stop(); }; checkEnoughDownloaded(_local2, _local3); } public function set registrationY(_arg1:Number):void{ var _local2:Number; if (_registrationY != _arg1){ _local2 = (_arg1 - _registrationY); _registrationY = _arg1; this.y = (this.y + _local2); }; } override public function get videoHeight():int{ if (_videoHeight > 0){ return (_videoHeight); }; if (((((!((_metadata == null))) && (!(isNaN(_metadata.width))))) && (!(isNaN(_metadata.height))))){ if ((((_metadata.width == _metadata.height)) && (_readyDispatched))){ return (super.videoHeight); }; return (int(_metadata.height)); }; if (_readyDispatched){ return (super.videoHeight); }; return (-1); } public function setSize(_arg1:Number, _arg2:Number):void{ super.width = (_registrationWidth = _arg1); super.height = (_registrationHeight = _arg2); switch (_scaleMode){ case VideoScaleMode.MAINTAIN_ASPECT_RATIO: case VideoScaleMode.NO_SCALE: startAutoResize(); break; default: super.x = _registrationX; super.y = _registrationY; break; }; } public function get isRTMP():Boolean{ if (_ncMgr == null){ return (false); }; return (_ncMgr.isRTMP); } override public function set width(_arg1:Number):void{ super.width = (_registrationWidth = _arg1); switch (_scaleMode){ case VideoScaleMode.MAINTAIN_ASPECT_RATIO: case VideoScaleMode.NO_SCALE: startAutoResize(); break; default: super.width = _arg1; break; }; } public function get bytesTotal():uint{ if ((((_ns == null)) || (_ncMgr.isRTMP))){ return (uint.MAX_VALUE); }; return (_ns.bytesTotal); } flvplayback_internal function isXnOK():Boolean{ if (_state == VideoState.LOADING){ return (true); }; if (_state == VideoState.CONNECTION_ERROR){ return (false); }; if (_state != VideoState.DISCONNECTED){ if ((((((_ncMgr == null)) || ((_ncMgr.netConnection == null)))) || (((_ncMgr.isRTMP) && (!(_ncMgr.netConnection.connected)))))){ setState(VideoState.DISCONNECTED); return (false); }; return (true); }; return (false); } flvplayback_internal function _createStream():void{ _ns = null; var _local1:NetStream = new NetStream(_ncMgr.netConnection); if (_ncMgr.isRTMP){ _local1.addEventListener(NetStatusEvent.NET_STATUS, rtmpNetStatus); } else { _local1.addEventListener(NetStatusEvent.NET_STATUS, httpNetStatus); }; _local1.client = createNetStreamClient(); _local1.bufferTime = _bufferTime; _local1.soundTransform = soundTransform; _ns = _local1; attachNetStream(_ns); } flvplayback_internal function checkReadyForPlay(_arg1:uint, _arg2:uint):void{ var _local3:Number; if (_arg1 >= _arg2){ waitingForEnough = false; _cachedState = _state; _state = VideoState.EXEC_QUEUED_CMD; play(); execQueuedCmds(); return; }; if (isNaN(baselineProgressTime)){ return; }; if (((isNaN(totalTime)) || ((totalTime < 0)))){ waitingForEnough = false; _cachedState = _state; _state = VideoState.EXEC_QUEUED_CMD; play(); execQueuedCmds(); } else { if (totalDownloadTime > 1.5){ _local3 = ((totalProgressTime - baselineProgressTime) / totalDownloadTime); if ((totalTime - playheadTime) > ((totalTime - totalProgressTime) / _local3)){ waitingForEnough = false; _cachedState = _state; _state = VideoState.EXEC_QUEUED_CMD; play(); execQueuedCmds(); }; }; }; } flvplayback_internal function closeNS(_arg1:Boolean=false):void{ if (_ns != null){ if (_arg1){ doUpdateTime(); _currentPos = _ns.time; }; _updateTimeTimer.reset(); _updateProgressTimer.reset(); _idleTimeoutTimer.reset(); _autoResizeTimer.reset(); _rtmpDoStopAtEndTimer.reset(); _rtmpDoSeekTimer.reset(); _httpDoSeekTimer.reset(); _finishAutoResizeTimer.reset(); _delayedBufferingTimer.reset(); _ns.removeEventListener(NetStatusEvent.NET_STATUS, rtmpNetStatus); _ns.removeEventListener(NetStatusEvent.NET_STATUS, httpNetStatus); _ns.close(); _ns = null; }; } public function set playheadUpdateInterval(_arg1:Number):void{ _updateTimeTimer.delay = _arg1; } flvplayback_internal function _load(_arg1:String, _arg2:Number, _arg3:Boolean):void{ _prevVideoWidth = super.videoWidth; _prevVideoHeight = super.videoHeight; _autoResizeDone = false; _cachedPlayheadTime = 0; _bufferState = BUFFER_EMPTY; _sawPlayStop = false; _metadata = null; _startingPlay = false; _invalidSeekTime = false; _invalidSeekRecovery = false; _isLive = _arg3; _contentPath = _arg1; _currentPos = 0; _streamLength = (((isNaN(_arg2)) || ((_arg2 <= 0)))) ? NaN : _arg2; _atEnd = false; _readyDispatched = false; _lastUpdateTime = NaN; lastUpdateTimeStuckCount = 0; _sawSeekNotify = false; waitingForEnough = false; baselineProgressTime = NaN; startProgressTime = NaN; totalDownloadTime = NaN; totalProgressTime = NaN; _httpDoSeekCount = 0; _updateTimeTimer.reset(); _updateProgressTimer.reset(); _idleTimeoutTimer.reset(); _autoResizeTimer.reset(); _rtmpDoStopAtEndTimer.reset(); _rtmpDoSeekTimer.reset(); _httpDoSeekTimer.reset(); _finishAutoResizeTimer.reset(); _delayedBufferingTimer.reset(); closeNS(false); if (_ncMgr == null){ createINCManager(); }; var _local4:Boolean = _ncMgr.connectToURL(_contentPath); setState(VideoState.LOADING); _cachedState = VideoState.LOADING; if (_local4){ _createStream(); _setUpStream(); }; if (!_ncMgr.isRTMP){ _updateProgressTimer.start(); }; } flvplayback_internal function rtmpDoStopAtEnd(_arg1:TimerEvent=null):void{ if (_rtmpDoStopAtEndTimer.running){ switch (_state){ case VideoState.DISCONNECTED: case VideoState.CONNECTION_ERROR: _rtmpDoStopAtEndTimer.reset(); return; }; if ((((_arg1 == null)) || ((_cachedPlayheadTime == playheadTime)))){ _rtmpDoStopAtEndTimer.reset(); } else { _cachedPlayheadTime = playheadTime; return; }; }; if ((((((((_atEndCheckPlayhead == playheadTime)) && (!((_atEndCheckPlayhead == _lastSeekTime))))) && (!(_isLive)))) && (!((playheadTime == 0))))){ _atEnd = false; _currentPos = 0; _play(0); return; }; _atEndCheckPlayhead = NaN; _bufferState = BUFFER_EMPTY; _sawPlayStop = false; _atEnd = true; setState(VideoState.STOPPED); if (_state != VideoState.STOPPED){ return; }; doUpdateTime(); if (_state != VideoState.STOPPED){ return; }; dispatchEvent(new VideoEvent(VideoEvent.COMPLETE, false, false, _state, playheadTime)); if (_state != VideoState.STOPPED){ return; }; if (((((_autoRewind) && (!(_isLive)))) && (!((playheadTime == 0))))){ _atEnd = false; _currentPos = 0; _play(0, 0); setState(VideoState.REWINDING); } else { closeNS(); }; } public function set idleTimeout(_arg1:Number):void{ _idleTimeoutTimer.delay = _arg1; } flvplayback_internal function checkEnoughDownloaded(_arg1:uint, _arg2:uint):void{ if ((((_arg1 == 0)) || ((_arg2 == uint.MAX_VALUE)))){ return; }; if (((isNaN(totalTime)) || ((totalTime <= 0)))){ if (((waitingForEnough) && (stateResponsive))){ waitingForEnough = false; _cachedState = _state; _state = VideoState.EXEC_QUEUED_CMD; play(); execQueuedCmds(); }; return; }; if (_arg1 >= _arg2){ if (waitingForEnough){ waitingForEnough = false; _cachedState = _state; _state = VideoState.EXEC_QUEUED_CMD; play(); execQueuedCmds(); }; return; }; if (isNaN(baselineProgressTime)){ baselineProgressTime = ((_arg1 / _arg2) * totalTime); }; if (isNaN(startProgressTime)){ startProgressTime = getTimer(); } else { totalDownloadTime = ((getTimer() - startProgressTime) / 1000); totalProgressTime = ((_arg1 / _arg2) * totalTime); if (waitingForEnough){ checkReadyForPlay(_arg1, _arg2); }; }; } public function pause():void{ if (!isXnOK()){ if ((((((_state == VideoState.CONNECTION_ERROR)) || ((_ncMgr == null)))) || ((_ncMgr.netConnection == null)))){ throw (new VideoError(VideoError.NO_CONNECTION)); }; return; } else { if (_state == VideoState.EXEC_QUEUED_CMD){ _state = _cachedState; } else { if (!stateResponsive){ queueCmd(QueuedCommand.PAUSE); return; }; execQueuedCmds(); }; }; if ((((((_state == VideoState.PAUSED)) || ((_state == VideoState.STOPPED)))) || ((_ns == null)))){ return; }; _pause(true); setState(VideoState.PAUSED); } public function close():void{ closeNS(true); if (((!((_ncMgr == null))) && (_ncMgr.isRTMP))){ _ncMgr.close(); }; setState(VideoState.DISCONNECTED); dispatchEvent(new VideoEvent(VideoEvent.CLOSE, false, false, _state, playheadTime)); } flvplayback_internal function execQueuedCmds():void{ var nextCmd:Object; while ((((((_cmdQueue.length > 0)) && (((((stateResponsive) || ((_state == VideoState.DISCONNECTED)))) || ((_state == VideoState.CONNECTION_ERROR)))))) && (((!((_cmdQueue[0].url == null))) || (((!((_state == VideoState.DISCONNECTED))) && (!((_state == VideoState.CONNECTION_ERROR))))))))) { try { nextCmd = _cmdQueue.shift(); _cachedState = _state; _state = VideoState.EXEC_QUEUED_CMD; switch (nextCmd.type){ case QueuedCommand.PLAY: play(nextCmd.url, nextCmd.time, nextCmd.isLive); break; case QueuedCommand.LOAD: load(nextCmd.url, nextCmd.time, nextCmd.isLive); break; case QueuedCommand.PAUSE: pause(); break; case QueuedCommand.STOP: stop(); break; case QueuedCommand.SEEK: seek(nextCmd.time); break; case QueuedCommand.PLAY_WHEN_ENOUGH: playWhenEnoughDownloaded(); break; }; } finally { if (_state == VideoState.EXEC_QUEUED_CMD){ _state = _cachedState; }; }; }; } } }//package fl.video
Section 27
//VideoPlayerClient (fl.video.VideoPlayerClient) package fl.video { public dynamic class VideoPlayerClient { protected var _owner:VideoPlayer; protected var gotMetadata:Boolean; public function VideoPlayerClient(_arg1:VideoPlayer){ _owner = _arg1; gotMetadata = false; } public function get ready():Boolean{ return (gotMetadata); } public function get owner():VideoPlayer{ return (_owner); } public function onCuePoint(_arg1:Object, ... _args):void{ _arg1.name; _arg1.time; _arg1.type; _owner.onCuePoint(_arg1); } public function onMetaData(_arg1:Object, ... _args):void{ _arg1.duration; _arg1.width; _arg1.height; _owner.onMetaData(_arg1); gotMetadata = true; } } }//package fl.video
Section 28
//VideoPlayerState (fl.video.VideoPlayerState) package fl.video { public class VideoPlayerState { public var autoPlay:Boolean; public var isWaiting:Boolean; public var isLiveSet:Boolean; public var index:int; public var prevState:String; public var preSeekTime:Number; public var minProgressPercent:Number; public var url:String; public var totalTimeSet:Boolean; public var owner:VideoPlayer; public var isLive:Boolean; public var cmdQueue:Array; public var totalTime:Number; public function VideoPlayerState(_arg1:VideoPlayer, _arg2:int){ this.owner = _arg1; this.index = _arg2; this.url = ""; this.isLive = false; this.isLiveSet = true; this.totalTime = NaN; this.totalTimeSet = true; this.autoPlay = (_arg2 == 0); this.isWaiting = false; this.preSeekTime = NaN; this.cmdQueue = null; } } }//package fl.video
Section 29
//VideoProgressEvent (fl.video.VideoProgressEvent) package fl.video { import flash.events.*; public class VideoProgressEvent extends ProgressEvent implements IVPEvent { private var _vp:uint; public static const PROGRESS:String = "progress"; public function VideoProgressEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:uint=0, _arg5:uint=0, _arg6:uint=0){ super(_arg1, _arg2, _arg3, _arg4, _arg5); _vp = _arg6; } public function set vp(_arg1:uint):void{ _vp = _arg1; } public function get vp():uint{ return (_vp); } override public function clone():Event{ return (new VideoProgressEvent(type, bubbles, cancelable, bytesLoaded, bytesTotal, vp)); } } }//package fl.video
Section 30
//VideoScaleMode (fl.video.VideoScaleMode) package fl.video { public final class VideoScaleMode { public static const EXACT_FIT:String = "exactFit"; public static const MAINTAIN_ASPECT_RATIO:String = "maintainAspectRatio"; public static const NO_SCALE:String = "noScale"; } }//package fl.video
Section 31
//VideoState (fl.video.VideoState) package fl.video { public final class VideoState { public static const CONNECTION_ERROR:String = "connectionError"; public static const BUFFERING:String = "buffering"; public static const SEEKING:String = "seeking"; public static const STOPPED:String = "stopped"; public static const PAUSED:String = "paused"; public static const RESIZING:String = "resizing"; public static const PLAYING:String = "playing"; public static const DISCONNECTED:String = "disconnected"; public static const LOADING:String = "loading"; public static const REWINDING:String = "rewinding"; flvplayback_internal static var EXEC_QUEUED_CMD:String = "execQueuedCmd"; } }//package fl.video
Section 32
//VolumeBarAccImpl (fl.video.VolumeBarAccImpl) package fl.video { import flash.display.*; import flash.events.*; import flash.utils.*; import flash.accessibility.*; public class VolumeBarAccImpl extends AccessibilityImplementation { protected var master:Sprite; protected var role:uint; private var _vc:FLVPlayback; private static const ROLE_SYSTEM_INDICATOR:uint = 39; private static const ROLE_SLIDER:uint = 51; private static const STATE_SYSTEM_FOCUSABLE:uint = 0x100000; private static const EVENT_OBJECT_SELECTION:uint = 32774; private static const ROLE_SYSTEM_PUSHBUTTON:uint = 43; private static const STATE_SYSTEM_FOCUSED:uint = 4; private static const STATE_SYSTEM_SELECTABLE:uint = 0x200000; private static const ROLE_WINDOW:uint = 9; private static const EVENT_OBJECT_FOCUS:uint = 32773; private static const STATE_SYSTEM_SELECTED:uint = 2; private static const EVENT_OBJECT_VALUECHANGE:uint = 32782; private static const EVENT_OBJECT_LOCATIONCHANGE:uint = 32779; private static const STATE_SYSTEM_NORMAL:uint = 0; private static const STATE_SYSTEM_UNAVAILABLE:uint = 1; public function VolumeBarAccImpl(_arg1:Sprite){ var n:int; var i:int; var sprite = _arg1; super(); stub = false; master = sprite; if (!master.accessibilityProperties){ master.accessibilityProperties = new AccessibilityProperties(); }; master.accessibilityProperties.forceSimple = true; var events:Array = eventsToHandle; if (events){ n = events.length; i = 0; while (i < n) { master.addEventListener(events[i], eventHandler); i = (i + 1); }; }; master.addEventListener(FocusEvent.FOCUS_IN, focusInHandler); try { _vc = Object(master).uiMgr._vc; _vc.addEventListener(SoundEvent.SOUND_UPDATE, eventHandler); } catch(e:Error) { }; role = VolumeBarAccImpl.ROLE_SLIDER; } override public function get_accState(_arg1:uint):uint{ var _local2:uint = getState(_arg1); return (_local2); } protected function getName(_arg1:uint):String{ var _local2 = ""; switch (_arg1){ case 1: _local2 = "Page Left"; break; case 2: _local2 = "Position"; break; case 3: _local2 = "Page Right"; break; case 0: _local2 = ""; break; }; return (_local2); } override public function get_accName(_arg1:uint):String{ var _local2 = ""; if ((((((((_arg1 == 0)) && (master.accessibilityProperties))) && (master.accessibilityProperties.name))) && (!((master.accessibilityProperties.name == ""))))){ _local2 = (_local2 + (master.accessibilityProperties.name + " ")); }; _local2 = (_local2 + (getName(_arg1) + getStatusName())); return ((((!((_local2 == null))) && (!((_local2 == ""))))) ? _local2 : null); } override public function get_accDefaultAction(_arg1:uint):String{ if ((((_arg1 == 1)) || ((_arg1 == 3)))){ return ("Press"); }; return (null); } protected function getState(_arg1:uint):uint{ var _local2:uint = STATE_SYSTEM_NORMAL; if (_arg1 == 0){ if (((!(master.mouseEnabled)) || (!(master.tabEnabled)))){ _local2 = (_local2 | STATE_SYSTEM_UNAVAILABLE); } else { _local2 = (_local2 | STATE_SYSTEM_FOCUSABLE); }; if (Sprite(master).stage.focus == master){ _local2 = (_local2 | STATE_SYSTEM_FOCUSED); }; }; return (_local2); } override public function accDoDefaultAction(_arg1:uint):void{ var _local2:UIManager = (_vc.uiMgr as UIManager); var _local3:Boolean = _local2._isMuted; var _local4:Number = (_local3) ? (Math.round((_local2.cachedSoundLevel * 1000)) / 100) : (Math.round((_vc.volume * 1000)) / 100); if (_arg1 == 1){ if (Math.floor(_local4) != _local4){ _vc.volume = (Math.floor(_local4) / 10); } else { _vc.volume = Math.max(0, ((_local4 - 1) / 10)); }; } else { if (_arg1 == 3){ if (Math.round(_local4) != _local4){ _vc.volume = (Math.round(_local4) / 10); } else { _vc.volume = Math.min(1, ((_local4 + 1) / 10)); }; }; }; _local2.cachedSoundLevel = _vc.volume; if (_local3){ _local2._isMuted = true; _local2.cachedSoundLevel = _vc.volume; _vc.volume = 0; _local2.setEnabledAndVisibleForState(UIManager.MUTE_OFF_BUTTON, VideoState.PLAYING); _local2.skinButtonControl(_local2.controls[UIManager.MUTE_OFF_BUTTON]); _local2.setEnabledAndVisibleForState(UIManager.MUTE_ON_BUTTON, VideoState.PLAYING); _local2.skinButtonControl(_local2.controls[UIManager.MUTE_ON_BUTTON]); }; } private function focusInHandler(_arg1:Event):void{ if (Accessibility.active){ Accessibility.sendEvent(master, 0, EVENT_OBJECT_FOCUS); Accessibility.sendEvent(master, 0, EVENT_OBJECT_VALUECHANGE, true); }; } override public function get_accRole(_arg1:uint):uint{ if (_arg1 == 0){ return (role); }; if (_arg1 == 2){ return (ROLE_SYSTEM_INDICATOR); }; return (ROLE_SYSTEM_PUSHBUTTON); } protected function eventHandler(_arg1:Event):void{ if (_arg1.type == SoundEvent.SOUND_UPDATE){ if (Accessibility.active){ Accessibility.sendEvent(master, 0, EVENT_OBJECT_SELECTION); Accessibility.sendEvent(master, 0, EVENT_OBJECT_VALUECHANGE, true); }; }; } override public function get_accValue(_arg1:uint):String{ var _local2:Number; if (_arg1 == 0){ _local2 = (Math.round((_vc.volume * 10000)) / 100); return ((String(_local2) + "%")); }; return (null); } private function getStatusName():String{ return (""); } protected function get eventsToHandle():Array{ return ([]); } override public function accLocation(_arg1:uint){ var _local7:DisplayObject; var _local2:Object = master; var _local3:UIManager = (_vc.uiMgr as UIManager); var _local4:DisplayObject = (_local3.controls[UIManager.VOLUME_BAR] as DisplayObject); var _local5:Dictionary = (UIManager(_local3).ctrlDataDict as Dictionary); var _local6:ControlData = _local5[_local4]; if (_local5[_local6.fullness_mc].mask_mc){ _local7 = DisplayObject(_local5[_local6.fullness_mc].mask_mc); }; switch (_arg1){ case 1: case 3: if (_local7){ _local2 = _local7; }; break; default: break; }; return (_local2); } override public function getChildIDArray():Array{ var _local1:Array = []; var _local2:uint; while (_local2 < 3) { _local1[_local2] = (_local2 + 1); _local2++; }; return (_local1); } public static function createAccessibilityImplementation(_arg1:Sprite):void{ _arg1.accessibilityImplementation = new VolumeBarAccImpl(_arg1); } public static function enableAccessibility():void{ } } }//package fl.video
Section 33
//GCSWFConnection (gc.utils.GCSWFConnection) package gc.utils { import flash.events.*; import flash.net.*; public class GCSWFConnection extends EventDispatcher { protected var _host:Boolean; protected var _connected:Boolean; protected var _baseID:String; public var clientVersion:String; protected var _callbackObjects:Array; protected var _lc:LocalConnection; protected var _version:String; protected var _myID:String; protected var _client:Object; protected var _logName:String;// = "GC-API" protected var _close:Boolean; protected var _extID:String; protected var _queuedMessages:Array; public static const CONNECTED:String = "CONNECTED"; public function GCSWFConnection(_arg1:String, _arg2:Object, _arg3:String="unknown"){ var connectionID = _arg1; var client = _arg2; var version = _arg3; super(); _connected = false; _host = true; _queuedMessages = []; _close = false; _client = client; _version = version; _baseID = connectionID.split(":").join(""); _lc = new LocalConnection(); _lc.allowDomain("*"); _lc.allowInsecureDomain("*"); _lc.client = this; _lc.addEventListener(StatusEvent.STATUS, onStatus); try { _lc.connect((_baseID + "_HOST")); } catch(e:ArgumentError) { _host = false; }; _myID = (_baseID + (_host) ? "_HOST" : "_CLIENT"); _extID = (_baseID + (_host) ? "_CLIENT" : "_HOST"); if (!_host){ try { _lc.connect(_myID); } catch(e:ArgumentError) { trace((("[" + _logName) + "] [GCSWFConnection] ERROR! Failed to connect")); }; _lc.send(_extID, "GC_utils_GCSWFConnection_init", _version); trace((("[" + _logName) + "] [GCSWFConnection] Connected as client..")); } else { trace((("[" + _logName) + "] [GCSWFConnection] Connected as host..")); }; } protected function bridgeConnected():void{ var _local2:String; var _local3:Array; var _local4:Array; var _local1:int; while (_local1 < _queuedMessages.length) { _local2 = _queuedMessages[_local1].methodName; _local3 = _queuedMessages[_local1].methodArgs; _local4 = [_local2]; if (_local3){ _local4 = _local4.concat(_local3); }; send.apply(null, _local4); _local1++; }; _queuedMessages = []; if (_close){ close(); }; } public function GC_utils_GCSWFConnection_init(_arg1:String):void{ trace((("[" + _logName) + "] [GCSWFConnection] Reccieved Init")); if (_host){ _lc.send(_extID, "GC_utils_GCSWFConnection_init", _version); }; _connected = true; clientVersion = _arg1; bridgeConnected(); dispatchEvent(new Event(CONNECTED)); } public function send(_arg1:String, ... _args):void{ if (_connected){ _args.unshift(_arg1); _args.unshift("GC_utils_GCSWFConnection_receive"); _args.unshift(_extID); _lc.send.apply(_lc, _args); } else { _queuedMessages.push({methodName:_arg1, methodArgs:_args}); }; } public function get connected():Boolean{ return (_connected); } public function get id():String{ return (_baseID); } private function onStatus(_arg1:StatusEvent):void{ if (_arg1.level == "error"){ }; } public function GC_utils_GCSWFConnection_receive(_arg1:String, ... _args):void{ var methodName = _arg1; var args = _args; try { _client[methodName].apply(_client, args); } catch(e) { }; } public function close():void{ trace((("[" + _logName) + "] [GCSWFConnection] Connection Closing")); if (_queuedMessages.length != 0){ _close = true; return; }; try { _lc.close(); } catch(e) { }; _lc = null; _connected = false; } } }//package gc.utils
Section 34
//GameObject (nick.pom.bootcampblitz.game.GameObject) package nick.pom.bootcampblitz.game { import flash.display.*; import flash.events.*; import flash.geom.*; import nick.pom.bootcampblitz.*; import flash.utils.*; import nick.pom.bootcampblitz.smashing.utils.*; public class GameObject extends MovieClip { private var _lastX:Number; private var MIN_X:Number; public var hit:MovieClip; private var X_AMOUNT:Number;// = -100 private var _lastKey:uint; protected var startPosition:Number; public var penguin:MovieClip; public var startX:Number; public var type:String; public var hitPos:Point; protected var scrollController:ScrollController; protected var currentPosition:Point; public var sortPos:MovieClip; public var hitDist:Number; private var _hit:Boolean; public var player:Player; public var nextObjectPos:Number;// = 150 private var _startY:Number; private var _tan:Number; public var game:Game; public var zPos:Number; private var Y_AMOUNT:Number;// = -5.24 public static var HOLE:String = "hole"; public static var SNOWBALL:String = "snowball"; public static var SEWER_EXIT:String = "sewerExit"; public static var BONUS_ELEVATED:String = "bonusElevated"; public static var HEALTH_ELEVATED:String = "healthElevated"; public static var OBSTACLE:String = "obstacle"; public static var RAMP:String = "ramp"; public static var HEALTH:String = "health"; public static var BONUS:String = "bonus"; public function GameObject(){ addEventListener(Event.ADDED_TO_STAGE, addedToStageHandler); _tan = Math.tan(MathUtils.degreesToRadians(3)); currentPosition = new Point(); startX = (600 + this.width); startPosition = (startX + ScrollController.instance.position); scrollController = ScrollController.instance; } protected function objecthit():void{ var _local1:Event; if (_hit){ return; }; _hit = true; switch (type){ case OBSTACLE: ScrollController.instance.crash(); _local1 = new GameEvents(GameEvents.DAMAGE); dispatchEvent(_local1); SoundController.instance.playSFX("bootcamp_sfx_hit"); break; case HEALTH: _local1 = new GameEvents(GameEvents.HEALTH); dispatchEvent(_local1); SoundController.instance.playSFX("bootcamp_sfx_fish"); break; case HEALTH_ELEVATED: if (player.jumping){ _local1 = new GameEvents(GameEvents.HEALTH); dispatchEvent(_local1); SoundController.instance.playSFX("bootcamp_sfx_fish"); }; break; case RAMP: if (player.invuln){ return; }; player.jump(); SoundController.instance.playSFX("bootcamp_sfx_ramp"); break; case BONUS: _local1 = new GameEvents(GameEvents.BONUS); dispatchEvent(_local1); SoundController.instance.playSFX("bootcamp_sfx_bonus"); break; case BONUS_ELEVATED: if (player.jumping){ _local1 = new GameEvents(GameEvents.BONUS); dispatchEvent(_local1); SoundController.instance.playSFX("bootcamp_sfx_bonus"); }; break; case SNOWBALL: if (player.invuln){ return; }; player.snowball(); SoundController.instance.playSFX("bootcamp_sfx_snowball"); break; case HOLE: if (player.invuln){ return; }; player.sewer(); _local1 = new GameEvents(GameEvents.HOLE); dispatchEvent(_local1); ScrollController.instance.hold(true); SoundController.instance.playSFX("bootcamp_sfx_manhole"); break; default: break; }; gotoAndPlay("hit"); } protected function nextObject():void{ var _local1:Event = new GameEvents(GameEvents.RELEASE_OBJECT); dispatchEvent(_local1); this.nextObjectPos = -10000; } public function render(_arg1:Number=undefined):void{ var _local2:Event; if (currentPosition.x < MIN_X){ _local2 = new Event(Event.COMPLETE); dispatchEvent(_local2); }; if (currentPosition.x < (600 - nextObjectPos)){ nextObject(); }; x = Math.round(currentPosition.x); y = Math.round(currentPosition.y); hitDetect(); zSort(); } protected function hitDetect():void{ var _local4:Number; if (player.inactive){ return; }; if (player.jumping){ if (((!((type == BONUS_ELEVATED))) && (!((type == HEALTH_ELEVATED))))){ return; }; _local4 = Math.abs(((player.currentPosition.x + player.hitPos.x) - (currentPosition.x + hitPos.x))); if (_local4 < hitDist){ objecthit(); return; }; }; if (!player.jumping){ if ((((type == BONUS_ELEVATED)) || ((type == HEALTH_ELEVATED)))){ return; }; }; var _local1:Number = ((player.currentPosition.x + player.hitPos.x) - (currentPosition.x + hitPos.x)); var _local2:Number = ((player.currentPosition.y + player.hitPos.y) - (currentPosition.y + hitPos.y)); var _local3:Number = Math.sqrt(((_local1 * _local1) + (_local2 * _local2))); if (_local3 < (hitDist + player.hitDist)){ objecthit(); }; } protected function addedToStageHandler(_arg1:Event):void{ FrameUtils.addFrameLabelScript(this, "hit", true, hold); removeEventListener(Event.ADDED_TO_STAGE, addedToStageHandler); hitPos = new Point(hit.x, hit.y); zPos = sortPos.y; this.y = (this.y - zPos); sortPos.visible = false; hitDist = (0.5 * hit.width); hit.visible = false; reset(); if (penguin){ setPenguin(); }; } protected function zSort():void{ if (!parent){ return; }; var _local1:Number = parent.getChildIndex(player); var _local2:Number = parent.getChildIndex(this); if ((this.y + zPos) > player.y){ if (_local1 > _local2){ game.setChildIndex(this, game.getChildIndex(game.foreground_item)); }; } else { if (_local1 < _local2){ game.setChildIndex(this, game.getChildIndex(game.bg_item)); }; }; } protected function complete():void{ var _local1:Event = new Event(Event.COMPLETE); dispatchEvent(_local1); } protected function hold():void{ stop(); } public function update(_arg1:Number):void{ _lastX = currentPosition.x; currentPosition.x = (startPosition - scrollController.position); currentPosition.y = (_startY + (currentPosition.x * _tan)); render(); } protected function reset():void{ MIN_X = -(this.width); currentPosition.x = (this.x = startX); startPosition = (startX + ScrollController.instance.position); _startY = (currentPosition.y = this.y); } private function log(_arg1:Object):void{ Debug.log(((getQualifiedClassName(this) + ": ") + _arg1)); } protected function setPenguin():void{ var _local3:Number; var _local1:String = Engine.CHAR; var _local2:Array = ["skipper", "rico", "kowalski", "private"]; _local3 = 0; while (_local3 < _local2.length) { if (_local2[_local3] == _local1){ _local2.splice(_local3, 1); }; _local3++; }; var _local4:Number = MathUtils.randomRange(0, 2); penguin.gotoAndStop(_local2[_local4]); } } }//package nick.pom.bootcampblitz.game
Section 35
//Player (nick.pom.bootcampblitz.game.Player) package nick.pom.bootcampblitz.game { import flash.display.*; import flash.events.*; import flash.geom.*; import nick.pom.bootcampblitz.*; import nick.pom.bootcampblitz.smashing.math.*; import flash.utils.*; import nick.pom.bootcampblitz.smashing.utils.*; import flash.ui.*; public class Player extends VectorObject { public var jumping:Boolean; private var _yInc:Number; private var _sewerDuration:Number;// = 4 private var MIN_X:Number;// = 77 private var MIN_Y:Number;// = 115 private var _ballDuration:Number;// = 4.5 public var hit:MovieClip; private var _yAccel:Number;// = 0 public var landing:Boolean; private var MAX_X:Number;// = 102 private var MAX_Y:Number;// = 315 private var X_AMOUNT:Number;// = 20 private var _xInc:Number; private var jumpingDuration:Number;// = 2.5 private var _lastKey:uint; public var invuln:Boolean; private var _sewerHeld:Number; private var _ballHeld:Number; private var SEWER_OUT_X:Number;// = 83.25 private var SEWER_OUT_Y:Number;// = 265 public var hitPos:Point; private var jumpingHeld:Number; private var _dir:Number; private var _sewer:Boolean; public var hitDist:Number; private var _snowball:Boolean; private var _accel:Number;// = 5 public var inactive:Boolean; private var _xAccel:Number;// = 0 private var _xAccelMax:Number;// = 10 public var zPos:Number;// = 0 private var _yAccelMax:Number;// = 100 private var Y_AMOUNT:Number;// = 180 public function Player(){ log("Class created."); addEventListener(Event.ADDED_TO_STAGE, addedToStageHandler); addEventListener(Event.REMOVED_FROM_STAGE, destroy); hitPos = new Point(hit.x, hit.y); hitDist = (0.5 * hit.width); hit.visible = false; } public function destroy(_arg1:Event):void{ log("Destroy"); removeEventListener(Event.REMOVED_FROM_STAGE, destroy); this.stage.removeEventListener(KeyboardEvent.KEY_DOWN, setDirection); this.stage.removeEventListener(KeyboardEvent.KEY_UP, stopChar); } public function snowball():void{ if (!_snowball){ _ballHeld = 0; _snowball = true; invuln = true; hitDist = hit.width; hitPos.y = (hit.y - 15); gotoAndPlay("snowballIn"); }; } protected function initKeyListener():void{ log("initKeyListener"); this.stage.addEventListener(KeyboardEvent.KEY_DOWN, setDirection); this.stage.addEventListener(KeyboardEvent.KEY_UP, stopChar); } protected function sewerOutComplete():void{ ScrollController.instance.hold(false); idle(); } public function init(_arg1:XMLList):void{ _accel = _arg1.game.player_accel; } protected function initFrameScripts():void{ FrameUtils.addFrameLabelScript(this, "jumpAir", true, hold); FrameUtils.addFrameLabelScript(this, "jumpLand", true, idle); FrameUtils.addFrameLabelScript(this, "snowballRoll", true, hold); FrameUtils.addFrameLabelScript(this, "snowballOut", true, idle); FrameUtils.addFrameLabelScript(this, "sewerIn", true, sewerInComplete); FrameUtils.addFrameLabelScript(this, "sewerOut", true, sewerOutComplete); FrameUtils.addFrameLabelScript(this, "hit", true, idle); } protected function addedToStageHandler(_arg1:Event):void{ removeEventListener(Event.ADDED_TO_STAGE, addedToStageHandler); initFrameScripts(); currentPosition.x = this.x; currentPosition.y = this.y; _movementVector.x = 0; _movementVector.y = 0; initKeyListener(); } public function sewerOut():void{ SoundController.instance.playSFX("bootcamp_sfx_manhole_exit"); currentPosition.x = (this.x = SEWER_OUT_X); currentPosition.y = (this.y = SEWER_OUT_Y); ScrollController.instance.hold(true); gotoAndPlay("sewerOut"); var _local1:Event = new GameEvents(GameEvents.SEWER_COMPLETE); dispatchEvent(_local1); } override public function render(_arg1:Number=undefined):void{ var _local2:Number; switch (_dir){ case Keyboard.UP: _movementVector.x = (_movementVector.x + (_arg1 * (_accel * X_AMOUNT))); _movementVector.x = ((_movementVector.x)<X_AMOUNT) ? _movementVector.x : X_AMOUNT; _movementVector.y = (_movementVector.y - (_arg1 * (_accel * Y_AMOUNT))); _movementVector.y = ((_movementVector.y)>-(Y_AMOUNT)) ? _movementVector.y : -(Y_AMOUNT); break; case Keyboard.DOWN: _movementVector.x = (_movementVector.x - (_arg1 * (_accel * X_AMOUNT))); _movementVector.x = ((_movementVector.x)>X_AMOUNT) ? _movementVector.x : -(X_AMOUNT); _movementVector.y = (_movementVector.y + (_arg1 * (_accel * Y_AMOUNT))); _movementVector.y = ((_movementVector.y)<Y_AMOUNT) ? _movementVector.y : Y_AMOUNT; _lastKey = Keyboard.DOWN; break; default: if (Math.abs(_movementVector.y) > 3){ _local2 = (1 - (_arg1 * 3)); if (_local2 < 0){ _local2 = 0; }; _movementVector.x = (_movementVector.x * _local2); _movementVector.y = (_movementVector.y * _local2); } else { _movementVector.y = 0; _movementVector.x = 0; }; break; }; if (currentPosition.x > MAX_X){ currentPosition.x = MAX_X; }; if (currentPosition.y > MAX_Y){ currentPosition.y = MAX_Y; if (_movementVector.y > 0){ _movementVector.y = 0; }; }; if (currentPosition.x < MIN_X){ currentPosition.x = MIN_X; }; if (currentPosition.y < MIN_Y){ currentPosition.y = MIN_Y; if (_movementVector.y < 0){ _movementVector.y = 0; }; }; x = currentPosition.x; y = currentPosition.y; } public function jump():void{ if (!jumping){ jumpingHeld = 0; jumping = true; gotoAndPlay("jumpUp"); }; } protected function hold():void{ stop(); } private function log(_arg1:Object):void{ Debug.log(((getQualifiedClassName(this) + ": ") + _arg1)); } public function sewer():void{ if (!_sewer){ ScrollController.instance.hold(true); _sewerHeld = 0; _sewer = true; inactive = true; gotoAndPlay("sewerIn"); }; } protected function setDirection(_arg1:KeyboardEvent):void{ _dir = _arg1.keyCode; switch (_dir){ case Keyboard.UP: _lastKey = Keyboard.UP; break; case Keyboard.DOWN: _lastKey = Keyboard.DOWN; break; default: break; }; } override public function update(_arg1:Number):void{ if (jumping){ jumpingHeld = (jumpingHeld + _arg1); if (jumpingHeld > jumpingDuration){ land(); jumpingHeld = -1000; }; return; }; if (_snowball){ _ballHeld = (_ballHeld + _arg1); if (_ballHeld > _ballDuration){ gotoAndPlay("snowballOut"); _ballHeld = -1000; hitDist = (hit.width * 0.5); hitPos.y = hit.y; }; }; if (_sewer){ return; }; if (landing){ return; }; currentPosition.addVector(Vector2DMath.getScaledVector(_movementVector, _arg1)); render(_arg1); } protected function idle():void{ jumping = false; _snowball = false; _sewer = false; invuln = false; inactive = false; landing = false; gotoAndStop("static"); } protected function sewerInComplete():void{ ScrollController.instance.hold(false); hold(); } protected function land():void{ gotoAndPlay("jumpLand"); landing = true; jumping = false; } protected function stopChar(_arg1:KeyboardEvent):void{ if (_arg1.keyCode == _lastKey){ _dir = 0; }; } } }//package nick.pom.bootcampblitz.game
Section 36
//ScrollController (nick.pom.bootcampblitz.game.ScrollController) package nick.pom.bootcampblitz.game { import flash.utils.*; import nick.pom.bootcampblitz.smashing.utils.*; public class ScrollController { private var _speed:Number; private var _held:Boolean; private var _objects:Array; private var _initSpeed:Number;// = 200 private var _lastSpeed:Number; private var _accelAmount:Number;// = 3 private var _maxSpeed:Number;// = 800 public var position:Number;// = 0 private static var _instance:ScrollController; public static var SPEED:Number; public function ScrollController(){ _objects = []; super(); log("Class created."); } public function addScrollItem(_arg1:ScrollObject):void{ _objects.push(_arg1); } public function maxSpeed():void{ _lastSpeed = ScrollController.SPEED; ScrollController.SPEED = _maxSpeed; } public function update(_arg1:Number):void{ if (_held){ return; }; _speed = ScrollController.SPEED; if (_speed == _maxSpeed){ updateItems(_arg1); return; }; _speed = (_speed + (_arg1 * _accelAmount)); if (_speed > _maxSpeed){ _speed = _maxSpeed; }; ScrollController.SPEED = _speed; updateItems(_arg1); } private function log(_arg1:Object):void{ Debug.log(((getQualifiedClassName(this) + ": ") + _arg1)); } public function reset():void{ SPEED = _initSpeed; } public function init(_arg1:XMLList):void{ trace("ScrollController.init"); _initSpeed = _arg1.game.game_init_speed; _maxSpeed = _arg1.game.game_max_speed; _accelAmount = _arg1.game.game_accel; SPEED = _initSpeed; } public function normalSpeed():void{ ScrollController.SPEED = (_speed = _lastSpeed); } public function crash():void{ } public function removeScrollItem(_arg1:ScrollObject):void{ var _local2:Number; _local2 = 0; while (_local2 < _objects.length) { if (_objects[_local2] == _arg1){ _objects.splice(_local2, 1); return; }; _local2++; }; log("removeScrollItem: item not found"); } public function get held():Boolean{ return (_held); } private function updateItems(_arg1:Number):void{ var _local2:ScrollObject; position = (position + (SPEED * _arg1)); for each (_local2 in _objects) { _local2.update(_arg1); }; } public function destroy():void{ log("Destroy"); } public function hold(_arg1:Boolean):void{ _held = _arg1; } public static function get instance():ScrollController{ if (!_instance){ _instance = new (ScrollController); }; return (_instance); } } }//package nick.pom.bootcampblitz.game
Section 37
//ScrollObject (nick.pom.bootcampblitz.game.ScrollObject) package nick.pom.bootcampblitz.game { import flash.display.*; import flash.events.*; import flash.geom.*; import flash.utils.*; import nick.pom.bootcampblitz.smashing.utils.*; public class ScrollObject extends MovieClip { protected var _tan:Number; protected var _rect:Rectangle; public var speedMultiplier:Number;// = 1 protected var MAX_X:Number;// = 600 public function ScrollObject(){ log("Class created."); _tan = Math.tan(MathUtils.degreesToRadians(3)); addEventListener(Event.ADDED_TO_STAGE, addedToStageHandler); } protected function addedToStageHandler(_arg1:Event):void{ removeEventListener(Event.ADDED_TO_STAGE, addedToStageHandler); ScrollController.instance.addScrollItem(this); reset(); } public function update(_arg1:Number):void{ _rect.x = (_rect.x + ((_arg1 * ScrollController.SPEED) * speedMultiplier)); if (_rect.x > MAX_X){ _rect.x = (_rect.x - MAX_X); }; _rect.y = (_rect.x * _tan); this.scrollRect = _rect; } private function log(_arg1:Object):void{ Debug.log(((getQualifiedClassName(this) + ": ") + _arg1)); } protected function reset():void{ _rect = new Rectangle(0, 0, 600, 400); this.scrollRect = _rect; } public function render():void{ } } }//package nick.pom.bootcampblitz.game
Section 38
//Sewer (nick.pom.bootcampblitz.game.Sewer) package nick.pom.bootcampblitz.game { import flash.display.*; import flash.events.*; import flash.geom.*; import nick.pom.bootcampblitz.*; import flash.utils.*; import nick.pom.bootcampblitz.smashing.utils.*; public class Sewer extends ScrollObject { public var bonus12:MovieClip; public var bonus10:MovieClip; public var bonus8:MovieClip; private var OBJECTS_X:Number; private var _bonusIndex:Number; private var _objectsShowing:Boolean; private var _bonusDist:Number;// = 200 private var _lastBonus:Number; public var bonus2:MovieClip; public var bonus3:MovieClip; public var bonus4:MovieClip; public var bonus5:MovieClip; public var bonus6:MovieClip; public var bonus7:MovieClip; public var bonus1:MovieClip; public var bonus9:MovieClip; public var bonus11:MovieClip; public function Sewer(){ log("Class created."); MAX_X = 2280; OBJECTS_X = 1900; } public function sewerComplete():void{ ScrollController.instance.removeScrollItem(this); var _local1:Event = new GameEvents(GameEvents.SEWER_COMPLETE); dispatchEvent(_local1); ScrollController.instance.normalSpeed(); } private function log(_arg1:Object):void{ Debug.log(((getQualifiedClassName(this) + ": ") + _arg1)); } override public function update(_arg1:Number):void{ _rect.x = (_rect.x + ((_arg1 * ScrollController.SPEED) * speedMultiplier)); if (_rect.x > (_lastBonus + _bonusDist)){ pickupBonus(); }; if (_rect.x > OBJECTS_X){ if (!_objectsShowing){ restartObjects(); }; }; if (_rect.x > MAX_X){ _rect.x = MAX_X; sewerComplete(); }; this.scrollRect = _rect; } protected function pickupBonus():void{ var _local1:MovieClip = (this[("bonus" + _bonusIndex)] as MovieClip); _local1.visible = false; _bonusIndex++; _lastBonus = (_lastBonus + _bonusDist); SoundController.instance.playSFX("bootcamp_sfx_bonus"); var _local2:Event = new GameEvents(GameEvents.BONUS); dispatchEvent(_local2); } public function restartObjects():void{ _objectsShowing = true; var _local1:Event = new GameEvents(GameEvents.RELEASE_OBJECT); dispatchEvent(_local1); } override protected function reset():void{ var _local1:Number; var _local2:MovieClip; _rect = new Rectangle(0, 0, 600, 400); this.scrollRect = _rect; _bonusIndex = 1; _lastBonus = 0; _objectsShowing = false; _local1 = 1; while (_local1 < 11) { _local2 = (this[("bonus" + _local1)] as MovieClip); _local2.visible = true; _local1++; }; } public function start():void{ reset(); ScrollController.instance.maxSpeed(); ScrollController.instance.addScrollItem(this); } override protected function addedToStageHandler(_arg1:Event):void{ removeEventListener(Event.ADDED_TO_STAGE, addedToStageHandler); } } }//package nick.pom.bootcampblitz.game
Section 39
//Wall (nick.pom.bootcampblitz.game.Wall) package nick.pom.bootcampblitz.game { import flash.utils.*; import nick.pom.bootcampblitz.smashing.utils.*; public class Wall extends ScrollObject { public function Wall(){ log("Class created."); MAX_X = 598; _tan = 0.055685618729097; } private function log(_arg1:Object):void{ Debug.log(((getQualifiedClassName(this) + ": ") + _arg1)); } } }//package nick.pom.bootcampblitz.game
Section 40
//VectorObject (nick.pom.bootcampblitz.game.VectorObject) package nick.pom.bootcampblitz.game { import flash.display.*; import flash.geom.*; import nick.pom.bootcampblitz.smashing.math.*; public class VectorObject extends MovieClip { protected var _movementVector:Vector2D; public var currentPosition:Vector2D; public function VectorObject(){ currentPosition = new Vector2D(0, 0); _movementVector = new Vector2D(0, 0); } public function get position():Point{ return (new Point(currentPosition.x, currentPosition.y)); } public function set position(_arg1:Point):void{ currentPosition.x = _arg1.x; currentPosition.y = _arg1.y; x = _arg1.x; y = _arg1.y; } public function pause():void{ } public function update(_arg1:Number):void{ currentPosition.addVector(Vector2DMath.getScaledVector(_movementVector, _arg1)); render(_arg1); } public function unpause():void{ } public function render(_arg1:Number=undefined):void{ x = currentPosition.x; y = currentPosition.y; } } }//package nick.pom.bootcampblitz.game
Section 41
//HighScoreData (nick.pom.bootcampblitz.highscore.HighScoreData) package nick.pom.bootcampblitz.highscore { import flash.events.*; import flash.net.*; import nick.pom.bootcampblitz.nickServices.*; import flash.utils.*; import nick.pom.bootcampblitz.smashing.utils.*; public class HighScoreData extends EventDispatcher { private const PLAYER_NAME_CODE:String = "pn"; private const HIGH_SCORE_ERROR_CODE:String = "EE"; private const DEBUG_USERNAME:String = "DEBUG_USER"; private const PLAYER_SCORE_CODE:String = "ps"; private var _scores:Array; private var _isInternational:Boolean;// = false private var _nickServices:NickServices; private var _userLoginLoader:URLLoader; private var _score:Number;// = 0 private var _userName:String; private var _config:XMLList; private var _highScoresLoader:URLLoader; private var _submitted:Boolean;// = false private static var _isUserLoggedIn:Boolean; public function HighScoreData(){ _scores = new Array(); log("Class created."); } public function checkLogin():void{ if (_isInternational){ return; }; _nickServices.checkLoginState(); } private function highScoresErrorListener(_arg1:NickServiceEvent):void{ removeHighScoresLoadListeners(); log(("Could not load high scores. Error code: " + _arg1.type)); onHighScoresLoadError(); } public function clearSession():void{ _submitted = false; } public function get isInternational():Boolean{ return (_isInternational); } public function init(_arg1:XMLList, _arg2:XMLList):void{ _config = _arg1; log("Inited."); if (_arg2.isInternational != "false"){ _isInternational = true; }; if (_isInternational){ _isUserLoggedIn = false; _nickServices = null; return; }; _nickServices = new NickServices(_config.serviceLink); _nickServices.addEventListener(NickServiceEvent.CHECK_LOGIN, checkUserLogin); } private function onHighScoresLoadError():void{ dispatchEvent(new Event(HighScoreEvents.HIGH_SCORES_LOAD_ERROR)); } private function highScoresCompleteListener(_arg1:NickServiceEvent):void{ var event = _arg1; removeHighScoresLoadListeners(); try { _scores = new Array(); _scores = event.data.scores; dispatchEvent(new Event(HighScoreEvents.HIGH_SCORES_LOADED)); } catch(error:Error) { log(((("Could not parse high scores. Error code: " + error.errorID) + " - ") + error.message)); onHighScoresLoadError(); } catch(error:TypeError) { log(((("Could not parse high scores. Error code: " + error.errorID) + " - ") + error.message)); onHighScoresLoadError(); }; } public function get score():Number{ return (_score); } private function setHighScoresLoadListeners():void{ if (_isInternational){ return; }; _nickServices.addEventListener(NickServiceEvent.HIGH_SCORES_LOADED, highScoresCompleteListener); _nickServices.addEventListener(NickServiceEvent.HIGH_SCORES_ERROR, highScoresErrorListener); } public function loadScores():void{ if (_isInternational){ return; }; setHighScoresLoadListeners(); _nickServices.loadHighScores(_config.gameID); } public function get scores():Array{ return (_scores); } public function set score(_arg1:Number):void{ _score = _arg1; } public function get playerRank():Number{ var _local1:int; while (_local1 < _scores.length) { if (_scores[_local1].name == _userName){ return ((_local1 + 1)); }; _local1++; }; return (-1); } private function removeHighScoresLoadListeners():void{ if (_isInternational){ return; }; _nickServices.removeEventListener(NickServiceEvent.HIGH_SCORES_LOADED, highScoresCompleteListener); _nickServices.removeEventListener(NickServiceEvent.HIGH_SCORES_ERROR, highScoresErrorListener); } public function get userName():String{ return (_userName); } private function log(_arg1:Object):void{ Debug.log(((getQualifiedClassName(this) + ": ") + _arg1)); } public function sendScore():void{ if (_isInternational){ return; }; _submitted = true; setHighScoresLoadListeners(); _nickServices.submitHighScores(_config.gameID, _score); } public function get submitted():Boolean{ return (_submitted); } private function checkUserLogin(_arg1:NickServiceEvent):void{ if (_isInternational){ return; }; log("checkUserLogin"); var _local2:String = _config.debug; if (_local2.toLowerCase() == "true"){ _isUserLoggedIn = true; _userName = DEBUG_USERNAME; _nickServices.currentUser = new Object(); _nickServices.currentUser.nickName = DEBUG_USERNAME; log(("DEBUG ACTIVE: Fake log-in enabled. Username: " + _userName)); return; }; if (_nickServices.currentUser == null){ log("User is not logged in."); _isUserLoggedIn = false; return; }; _userName = _nickServices.currentUser.nickName; _isUserLoggedIn = true; if ((((((((_userName == "null")) || ((_userName == null)))) || ((_userName == "")))) || ((_userName == "undefined")))){ log("User is not logged in."); }; } public static function get isUserLoggedIn():Boolean{ return (_isUserLoggedIn); } } }//package nick.pom.bootcampblitz.highscore
Section 42
//HighScoreEvents (nick.pom.bootcampblitz.highscore.HighScoreEvents) package nick.pom.bootcampblitz.highscore { public class HighScoreEvents { public static const HIGH_SCORES_LOADED:String = "hihgScoresLoaded"; public static const BACK:String = "back"; public static const SUBMIT_SCORE:String = "submitScore"; public static const NEXT:String = "next"; public static const PLAY:String = "play"; public static const HIGH_SCORES_LOAD_ERROR:String = "hihgScoresLoadError"; public static const CLOSE:String = "close"; public static const OUTRO_COMPLETE:String = "outroComplete"; } }//package nick.pom.bootcampblitz.highscore
Section 43
//HighScoreTable (nick.pom.bootcampblitz.highscore.HighScoreTable) package nick.pom.bootcampblitz.highscore { import flash.display.*; import flash.events.*; import flash.text.*; import flash.utils.*; import nick.pom.bootcampblitz.smashing.utils.*; import nick.pom.bootcampblitz.smashing.buttons.*; public class HighScoreTable extends MovieClip { private const READY_LABEL:String = "ready"; private const SPLASH_SCREEN:String = "splash"; private const GAME_OVER_SCREEN:String = "gameOver"; private const SENDING_LABEL:String = "sending"; private const ERROR_LABEL:String = "error"; private const OFF_LABEL:String = "off"; private const SCORES_PER_PAGE:Number = 10; private const LOADING_LABEL:String = "loading"; public var hs_4:MovieClip; public var hs_5:MovieClip; public var hs_7:MovieClip; public var hs_9:MovieClip; public var hs_6:MovieClip; public var hs_8:MovieClip; private var _targetLabel:String; public var playAgainBtn:StandardButton; public var closeBtn:StandardButton; private var _currentScreen:String; public var pagination_txt:TextField; public var nextBtn:StandardButton; private var _totalPages:Number; public var playBtn:StandardButton; public var submitScoreBtn:StandardButton; public var playerPanel:MovieClip; public var hs_10:MovieClip; private var _highScoreData:HighScoreData; private var _currentPage:Number; public var backBtn:StandardButton; public var hs_1:MovieClip; public var hs_2:MovieClip; public var hs_3:MovieClip; public function HighScoreTable(){ addFrameScript(0, frame1, 5, frame6, 13, frame14, 14, frame15, 21, frame22, 28, frame29, 33, frame34, 39, frame40, 48, frame49); log("Class created."); } private function hideSubmitScoreButton():void{ submitScoreBtn.enabled = false; submitScoreBtn.disabled = true; submitScoreBtn.visible = false; } public function outro():void{ log("Outro."); gotoAndPlay("outro"); } private function onReady():void{ trace("ready"); reset(); setExitButtons(); populateTable(); if (_totalPages > 1){ backBtn.addEventListener(MouseEvent.CLICK, mouseClickBackListener); nextBtn.addEventListener(MouseEvent.CLICK, mouseClickNextListener); } else { backBtn.enabled = false; backBtn.visible = false; nextBtn.enabled = false; nextBtn.visible = false; }; if (_currentScreen == SPLASH_SCREEN){ hidePlayerPanel(); hideSubmitScoreButton(); } else { if (_currentScreen == GAME_OVER_SCREEN){ populatePlayerPanel(); if (((_highScoreData.submitted) || (!(HighScoreData.isUserLoggedIn)))){ hideSubmitScoreButton(); }; submitScoreBtn.addEventListener(MouseEvent.CLICK, mouseClickSubmitListener); }; }; } public function init(_arg1:HighScoreData):void{ _highScoreData = _arg1; log("Inited."); } private function hidePlayerPanel():void{ playerPanel.enabled = false; playerPanel.visible = false; } private function populateTable():void{ var _local3:MovieClip; var _local4:Number; var _local5:Object; var _local1:Array = _highScoreData.scores; var _local2:Number = 0; while (_local2 < SCORES_PER_PAGE) { _local3 = this[("hs_" + String((_local2 + 1)))]; _local4 = ((_currentPage * SCORES_PER_PAGE) + _local2); _local3.rank.text = (_local4 + 1); _local5 = _local1[_local4]; if (_local5 != null){ _local3.player.text = _local5.name; _local3.score.text = _local5.score; } else { _local3.player.text = ""; _local3.score.text = ""; }; _local2++; }; pagination_txt.text = (((_currentPage + 1) + " / ") + _totalPages); } private function removeHighScoreDataListeners():void{ _highScoreData.removeEventListener(HighScoreEvents.HIGH_SCORES_LOADED, highScoreDataLoadListener); _highScoreData.removeEventListener(HighScoreEvents.HIGH_SCORES_LOAD_ERROR, highScoreDataLoadErrorListener); } private function mouseClickBackListener(_arg1:MouseEvent):void{ var _local2:MovieClip = (_arg1.currentTarget as MovieClip); _local2.gotoAndStop("over"); _currentPage--; if (_currentPage < 0){ _currentPage = (_totalPages - 1); }; populateTable(); } private function mouseClickNextListener(_arg1:MouseEvent):void{ var _local2:MovieClip = (_arg1.currentTarget as MovieClip); _local2.gotoAndStop("over"); _currentPage++; if (_currentPage >= _totalPages){ _currentPage = 0; }; populateTable(); } private function reset():void{ _currentPage = 0; var _local1:Array = _highScoreData.scores; _totalPages = Math.ceil((_local1.length / SCORES_PER_PAGE)); if (_totalPages < 1){ _totalPages = 1; }; } function frame14(){ stop(); trace("intro complete"); gotoAndPlay("ready"); } function frame15(){ stop(); trace("loading"); onLoading(); } private function populatePlayerPanel():void{ if (HighScoreData.isUserLoggedIn){ playerPanel.playerName.text = _highScoreData.userName; } else { playerPanel.playerName.text = ""; }; playerPanel.score.text = _highScoreData.score; var _local1:Number = _highScoreData.playerRank; if (_local1 < 0){ playerPanel.rank.text = ""; } else { playerPanel.rank.text = String(_local1); }; } private function log(_arg1:Object):void{ Debug.log(((getQualifiedClassName(this) + ": ") + _arg1)); } private function onLoading():void{ trace("onloading"); setExitButtons(); } private function outroComplete():void{ dispatchEvent(new Event(HighScoreEvents.OUTRO_COMPLETE)); } function frame6(){ play(); trace("intro"); } function frame1(){ stop(); trace("off"); } function frame22(){ stop(); trace("sending"); onSending(); } public function off():void{ gotoAndStop(OFF_LABEL); } function frame29(){ stop(); onError(); } public function submitAndViewScoresFromGameOver():void{ log("Submit and view scores from game over screen."); _currentScreen = GAME_OVER_SCREEN; _targetLabel = SENDING_LABEL; gotoAndPlay("intro"); } public function viewScoresFromSplash():void{ log("View scores from splash screen."); _currentScreen = SPLASH_SCREEN; _targetLabel = LOADING_LABEL; gotoAndPlay("intro"); } private function onError():void{ trace("onerror"); setExitButtons(); } private function onSending():void{ trace("onsending"); setExitButtons(); } private function setHighScoreDataListeners():void{ _highScoreData.addEventListener(HighScoreEvents.HIGH_SCORES_LOADED, highScoreDataLoadListener); _highScoreData.addEventListener(HighScoreEvents.HIGH_SCORES_LOAD_ERROR, highScoreDataLoadErrorListener); } private function mouseClickPlayListener(_arg1:MouseEvent):void{ trace("PLAY CLICKED"); destroy(); dispatchEvent(new Event(HighScoreEvents.PLAY)); } function frame34(){ stop(); onReady(); } private function loadScores():void{ gotoAndStop(LOADING_LABEL); setHighScoreDataListeners(); _highScoreData.loadScores(); } function frame40(){ play(); } private function mouseClickSubmitListener(_arg1:MouseEvent):void{ destroy(); dispatchEvent(new Event(HighScoreEvents.SUBMIT_SCORE)); sendScore(); } private function mouseClickCloseListener(_arg1:MouseEvent):void{ trace("CLOSE CLICKED"); destroy(); dispatchEvent(new Event(HighScoreEvents.CLOSE)); } function frame49(){ stop(); outroComplete(); } private function highScoreDataLoadListener(_arg1:Event):void{ removeHighScoreDataListeners(); gotoAndStop(READY_LABEL); } private function setExitButtons():void{ trace("set exit buttons"); closeBtn.addEventListener(MouseEvent.CLICK, mouseClickCloseListener); if (_currentScreen == SPLASH_SCREEN){ playBtn.addEventListener(MouseEvent.CLICK, mouseClickPlayListener); playAgainBtn.visible = false; playAgainBtn.disabled = true; } else { if (_currentScreen == GAME_OVER_SCREEN){ playAgainBtn.addEventListener(MouseEvent.CLICK, mouseClickPlayListener); playBtn.visible = false; playBtn.disabled = true; }; }; } private function introComplete():void{ if (_targetLabel == SENDING_LABEL){ sendScore(); } else { if (_targetLabel == LOADING_LABEL){ loadScores(); }; }; } private function highScoreDataLoadErrorListener(_arg1:Event):void{ removeHighScoreDataListeners(); gotoAndStop(ERROR_LABEL); } private function sendScore():void{ gotoAndStop(SENDING_LABEL); setHighScoreDataListeners(); _highScoreData.sendScore(); } public function viewScoresFromGameOver():void{ log("View scores from game over screen."); _currentScreen = GAME_OVER_SCREEN; _targetLabel = LOADING_LABEL; gotoAndPlay("intro"); } public function destroy():void{ log("Destroy"); switch (currentLabel){ case LOADING_LABEL: break; case ERROR_LABEL: break; case READY_LABEL: submitScoreBtn.removeEventListener(MouseEvent.CLICK, mouseClickSubmitListener); if (_totalPages > 1){ backBtn.removeEventListener(MouseEvent.CLICK, mouseClickBackListener); nextBtn.removeEventListener(MouseEvent.CLICK, mouseClickNextListener); }; break; }; if (_currentScreen == SPLASH_SCREEN){ } else { if (_currentScreen == GAME_OVER_SCREEN){ }; }; } } }//package nick.pom.bootcampblitz.highscore
Section 44
//CharSelect (nick.pom.bootcampblitz.intro.CharSelect) package nick.pom.bootcampblitz.intro { import flash.display.*; import flash.events.*; import nick.pom.bootcampblitz.*; import flash.utils.*; import nick.pom.bootcampblitz.smashing.utils.*; import nick.pom.bootcampblitz.smashing.buttons.*; public class CharSelect extends MovieClip { public var privat:StandardButton; public var rico:StandardButton; public var kowalski:StandardButton; public var skipper:StandardButton; public function CharSelect(){ addFrameScript(43, frame44); log("Class created."); addEventListener(Event.ADDED_TO_STAGE, init); } protected function resetBtns():void{ skipper.selected = false; rico.selected = false; kowalski.selected = false; privat.selected = false; } private function log(_arg1:Object):void{ Debug.log(((getQualifiedClassName(this) + ": ") + _arg1)); } protected function init(_arg1:Event):void{ removeEventListener(Event.ADDED_TO_STAGE, init); skipper.addEventListener(MouseEvent.CLICK, charSelected); rico.addEventListener(MouseEvent.CLICK, charSelected); kowalski.addEventListener(MouseEvent.CLICK, charSelected); privat.addEventListener(MouseEvent.CLICK, charSelected); } protected function charSelected(_arg1:Event):void{ var _local2:String; resetBtns(); var _local3:StandardButton = (_arg1.target as StandardButton); switch (_local3){ case skipper: _local2 = "skipper"; break; case rico: _local2 = "rico"; break; case kowalski: _local2 = "kowalski"; break; case privat: _local2 = "private"; break; }; Engine.CHAR = _local2; _local3.selected = true; var _local4:Event = new Event(Event.COMPLETE); dispatchEvent(_local4); } function frame44(){ stop(); } } }//package nick.pom.bootcampblitz.intro
Section 45
//IntroContent (nick.pom.bootcampblitz.intro.IntroContent) package nick.pom.bootcampblitz.intro { import flash.display.*; import flash.events.*; import flash.utils.*; import nick.pom.bootcampblitz.smashing.utils.*; public class IntroContent extends MovieClip { public var charSelect:CharSelect; public function IntroContent(){ addFrameScript(0, frame1, 9, frame10, 17, frame18, 24, frame25); log("Class created."); addEventListener(Event.ADDED_TO_STAGE, addedToStageHandler); } function frame25(){ stop(); } private function charSelected(_arg1:Event):void{ dispatchEvent(_arg1); } protected function initCharSelect():void{ charSelect.addEventListener(Event.COMPLETE, charSelected); } function frame18(){ stop(); } private function addedToStageHandler(_arg1:Event):void{ FrameUtils.addFrameLabelScript(this, "page5", false, initCharSelect); } private function log(_arg1:Object):void{ Debug.log(((getQualifiedClassName(this) + ": ") + _arg1)); } function frame1(){ stop(); } function frame10(){ stop(); } } }//package nick.pom.bootcampblitz.intro
Section 46
//GameLoader (nick.pom.bootcampblitz.loader.GameLoader) package nick.pom.bootcampblitz.loader { import fl.video.*; import flash.display.*; import flash.events.*; import flash.text.*; import flash.utils.*; import nick.pom.bootcampblitz.smashing.utils.*; public class GameLoader extends MovieClip { private const LOAD_CHECK_TIME:Number = 10; private var _timer:Timer; public var percentage_txt:TextField; public var __setPropDict:Dictionary; public var powerRangersStreamingPlayback:FLVPlayback; public var progress:MovieClip; public function GameLoader(){ __setPropDict = new Dictionary(true); super(); addFrameScript(0, frame1, 4, frame5, 10, frame11, 15, frame16, 24, frame25, 29, frame30, 5, frame6, 6, frame7, 7, frame8, 8, frame9, 9, frame10, 11, frame12, 12, frame13, 13, frame14, 14, frame15, 16, frame17, 17, frame18, 18, frame19, 19, frame20, 20, frame21, 21, frame22, 22, frame23, 23, frame24, 25, frame26, 26, frame27, 27, frame28, 28, frame29); log("Class created."); } function frame28(){ if ((((__setPropDict[powerRangersStreamingPlayback] == undefined)) || (!((((int(__setPropDict[powerRangersStreamingPlayback]) >= 5)) && ((int(__setPropDict[powerRangersStreamingPlayback]) <= 30))))))){ __setPropDict[powerRangersStreamingPlayback] = currentFrame; __setProp_powerRangersStreamingPlayback__loader_FLVPlayer_4(); }; } private function updatePercentage(_arg1:Number):void{ percentage_txt.text = (String(_arg1) + "%"); if (_arg1 < 0){ _arg1 = 1; } else { if (_arg1 >= 100){ _arg1 = 100; }; }; progress.gotoAndStop(_arg1); } private function log(_arg1:Object):void{ Debug.log(((getQualifiedClassName(this) + ": ") + _arg1)); } private function introComplete():void{ log("Intro Complete."); dispatchEvent(new Event(LoaderEvents.INTRO_COMPLETE)); } function frame30(){ if ((((__setPropDict[powerRangersStreamingPlayback] == undefined)) || (!((((int(__setPropDict[powerRangersStreamingPlayback]) >= 5)) && ((int(__setPropDict[powerRangersStreamingPlayback]) <= 30))))))){ __setPropDict[powerRangersStreamingPlayback] = currentFrame; __setProp_powerRangersStreamingPlayback__loader_FLVPlayer_4(); }; powerRangersStreamingPlayback.stop(); stop(); outroComplete(); } function frame11(){ if ((((__setPropDict[powerRangersStreamingPlayback] == undefined)) || (!((((int(__setPropDict[powerRangersStreamingPlayback]) >= 5)) && ((int(__setPropDict[powerRangersStreamingPlayback]) <= 30))))))){ __setPropDict[powerRangersStreamingPlayback] = currentFrame; __setProp_powerRangersStreamingPlayback__loader_FLVPlayer_4(); }; stop(); introComplete(); } function frame12(){ if ((((__setPropDict[powerRangersStreamingPlayback] == undefined)) || (!((((int(__setPropDict[powerRangersStreamingPlayback]) >= 5)) && ((int(__setPropDict[powerRangersStreamingPlayback]) <= 30))))))){ __setPropDict[powerRangersStreamingPlayback] = currentFrame; __setProp_powerRangersStreamingPlayback__loader_FLVPlayer_4(); }; } function frame13(){ if ((((__setPropDict[powerRangersStreamingPlayback] == undefined)) || (!((((int(__setPropDict[powerRangersStreamingPlayback]) >= 5)) && ((int(__setPropDict[powerRangersStreamingPlayback]) <= 30))))))){ __setPropDict[powerRangersStreamingPlayback] = currentFrame; __setProp_powerRangersStreamingPlayback__loader_FLVPlayer_4(); }; } public function init(_arg1:XMLList):void{ _timer = new Timer(LOAD_CHECK_TIME, 0); _timer.addEventListener(TimerEvent.TIMER, timerListener); _timer.start(); log("Inited."); } private function outroComplete():void{ log("Outro Complete."); dispatchEvent(new Event(LoaderEvents.OUTRO_COMPLETE)); } public function outro():void{ log("Outro."); gotoAndPlay("outro"); } function frame10(){ if ((((__setPropDict[powerRangersStreamingPlayback] == undefined)) || (!((((int(__setPropDict[powerRangersStreamingPlayback]) >= 5)) && ((int(__setPropDict[powerRangersStreamingPlayback]) <= 30))))))){ __setPropDict[powerRangersStreamingPlayback] = currentFrame; __setProp_powerRangersStreamingPlayback__loader_FLVPlayer_4(); }; } function frame18(){ if ((((__setPropDict[powerRangersStreamingPlayback] == undefined)) || (!((((int(__setPropDict[powerRangersStreamingPlayback]) >= 5)) && ((int(__setPropDict[powerRangersStreamingPlayback]) <= 30))))))){ __setPropDict[powerRangersStreamingPlayback] = currentFrame; __setProp_powerRangersStreamingPlayback__loader_FLVPlayer_4(); }; } function frame19(){ if ((((__setPropDict[powerRangersStreamingPlayback] == undefined)) || (!((((int(__setPropDict[powerRangersStreamingPlayback]) >= 5)) && ((int(__setPropDict[powerRangersStreamingPlayback]) <= 30))))))){ __setPropDict[powerRangersStreamingPlayback] = currentFrame; __setProp_powerRangersStreamingPlayback__loader_FLVPlayer_4(); }; } function frame14(){ if ((((__setPropDict[powerRangersStreamingPlayback] == undefined)) || (!((((int(__setPropDict[powerRangersStreamingPlayback]) >= 5)) && ((int(__setPropDict[powerRangersStreamingPlayback]) <= 30))))))){ __setPropDict[powerRangersStreamingPlayback] = currentFrame; __setProp_powerRangersStreamingPlayback__loader_FLVPlayer_4(); }; } function frame15(){ if ((((__setPropDict[powerRangersStreamingPlayback] == undefined)) || (!((((int(__setPropDict[powerRangersStreamingPlayback]) >= 5)) && ((int(__setPropDict[powerRangersStreamingPlayback]) <= 30))))))){ __setPropDict[powerRangersStreamingPlayback] = currentFrame; __setProp_powerRangersStreamingPlayback__loader_FLVPlayer_4(); }; } private function timerListener(_arg1:TimerEvent):void{ var _local5:Event; var _local2:Number = stage.loaderInfo.bytesTotal; var _local3:Number = stage.loaderInfo.bytesLoaded; var _local4:Number = Math.floor(((_local3 / _local2) * 100)); updatePercentage(_local4); if (_local4 >= 100){ _timer.removeEventListener(TimerEvent.TIMER, timerListener); _timer.stop(); _local5 = new Event(LoaderEvents.LOAD_COMPLETE, false, false); dispatchEvent(_local5); }; } function frame16(){ if ((((__setPropDict[powerRangersStreamingPlayback] == undefined)) || (!((((int(__setPropDict[powerRangersStreamingPlayback]) >= 5)) && ((int(__setPropDict[powerRangersStreamingPlayback]) <= 30))))))){ __setPropDict[powerRangersStreamingPlayback] = currentFrame; __setProp_powerRangersStreamingPlayback__loader_FLVPlayer_4(); }; play(); } function frame17(){ if ((((__setPropDict[powerRangersStreamingPlayback] == undefined)) || (!((((int(__setPropDict[powerRangersStreamingPlayback]) >= 5)) && ((int(__setPropDict[powerRangersStreamingPlayback]) <= 30))))))){ __setPropDict[powerRangersStreamingPlayback] = currentFrame; __setProp_powerRangersStreamingPlayback__loader_FLVPlayer_4(); }; } function frame21(){ if ((((__setPropDict[powerRangersStreamingPlayback] == undefined)) || (!((((int(__setPropDict[powerRangersStreamingPlayback]) >= 5)) && ((int(__setPropDict[powerRangersStreamingPlayback]) <= 30))))))){ __setPropDict[powerRangersStreamingPlayback] = currentFrame; __setProp_powerRangersStreamingPlayback__loader_FLVPlayer_4(); }; } function frame29(){ if ((((__setPropDict[powerRangersStreamingPlayback] == undefined)) || (!((((int(__setPropDict[powerRangersStreamingPlayback]) >= 5)) && ((int(__setPropDict[powerRangersStreamingPlayback]) <= 30))))))){ __setPropDict[powerRangersStreamingPlayback] = currentFrame; __setProp_powerRangersStreamingPlayback__loader_FLVPlayer_4(); }; } function frame5(){ if ((((__setPropDict[powerRangersStreamingPlayback] == undefined)) || (!((((int(__setPropDict[powerRangersStreamingPlayback]) >= 5)) && ((int(__setPropDict[powerRangersStreamingPlayback]) <= 30))))))){ __setPropDict[powerRangersStreamingPlayback] = currentFrame; __setProp_powerRangersStreamingPlayback__loader_FLVPlayer_4(); }; play(); } function frame6(){ if ((((__setPropDict[powerRangersStreamingPlayback] == undefined)) || (!((((int(__setPropDict[powerRangersStreamingPlayback]) >= 5)) && ((int(__setPropDict[powerRangersStreamingPlayback]) <= 30))))))){ __setPropDict[powerRangersStreamingPlayback] = currentFrame; __setProp_powerRangersStreamingPlayback__loader_FLVPlayer_4(); }; } function frame7(){ if ((((__setPropDict[powerRangersStreamingPlayback] == undefined)) || (!((((int(__setPropDict[powerRangersStreamingPlayback]) >= 5)) && ((int(__setPropDict[powerRangersStreamingPlayback]) <= 30))))))){ __setPropDict[powerRangersStreamingPlayback] = currentFrame; __setProp_powerRangersStreamingPlayback__loader_FLVPlayer_4(); }; } function __setProp_powerRangersStreamingPlayback__loader_FLVPlayer_4(){ try { powerRangersStreamingPlayback["componentInspectorSetting"] = true; } catch(e:Error) { }; powerRangersStreamingPlayback.align = "center"; powerRangersStreamingPlayback.autoPlay = true; powerRangersStreamingPlayback.isLive = false; powerRangersStreamingPlayback.scaleMode = "maintainAspectRatio"; powerRangersStreamingPlayback.skin = ""; powerRangersStreamingPlayback.skinAutoHide = false; powerRangersStreamingPlayback.skinBackgroundAlpha = 0.85; powerRangersStreamingPlayback.skinBackgroundColor = 0; powerRangersStreamingPlayback.source = "http://dubitprevideo.s3.amazonaws.com/videos/power_rangers1.flv"; powerRangersStreamingPlayback.volume = 1; try { powerRangersStreamingPlayback["componentInspectorSetting"] = false; } catch(e:Error) { }; } public function intro():void{ log("Intro."); gotoAndPlay("intro"); } function frame23(){ if ((((__setPropDict[powerRangersStreamingPlayback] == undefined)) || (!((((int(__setPropDict[powerRangersStreamingPlayback]) >= 5)) && ((int(__setPropDict[powerRangersStreamingPlayback]) <= 30))))))){ __setPropDict[powerRangersStreamingPlayback] = currentFrame; __setProp_powerRangersStreamingPlayback__loader_FLVPlayer_4(); }; } function frame24(){ if ((((__setPropDict[powerRangersStreamingPlayback] == undefined)) || (!((((int(__setPropDict[powerRangersStreamingPlayback]) >= 5)) && ((int(__setPropDict[powerRangersStreamingPlayback]) <= 30))))))){ __setPropDict[powerRangersStreamingPlayback] = currentFrame; __setProp_powerRangersStreamingPlayback__loader_FLVPlayer_4(); }; } function frame25(){ if ((((__setPropDict[powerRangersStreamingPlayback] == undefined)) || (!((((int(__setPropDict[powerRangersStreamingPlayback]) >= 5)) && ((int(__setPropDict[powerRangersStreamingPlayback]) <= 30))))))){ __setPropDict[powerRangersStreamingPlayback] = currentFrame; __setProp_powerRangersStreamingPlayback__loader_FLVPlayer_4(); }; powerRangersStreamingPlayback.addEventListener("complete", function (){ play(); }); stop(); } function frame20(){ if ((((__setPropDict[powerRangersStreamingPlayback] == undefined)) || (!((((int(__setPropDict[powerRangersStreamingPlayback]) >= 5)) && ((int(__setPropDict[powerRangersStreamingPlayback]) <= 30))))))){ __setPropDict[powerRangersStreamingPlayback] = currentFrame; __setProp_powerRangersStreamingPlayback__loader_FLVPlayer_4(); }; } function frame8(){ if ((((__setPropDict[powerRangersStreamingPlayback] == undefined)) || (!((((int(__setPropDict[powerRangersStreamingPlayback]) >= 5)) && ((int(__setPropDict[powerRangersStreamingPlayback]) <= 30))))))){ __setPropDict[powerRangersStreamingPlayback] = currentFrame; __setProp_powerRangersStreamingPlayback__loader_FLVPlayer_4(); }; } function frame22(){ if ((((__setPropDict[powerRangersStreamingPlayback] == undefined)) || (!((((int(__setPropDict[powerRangersStreamingPlayback]) >= 5)) && ((int(__setPropDict[powerRangersStreamingPlayback]) <= 30))))))){ __setPropDict[powerRangersStreamingPlayback] = currentFrame; __setProp_powerRangersStreamingPlayback__loader_FLVPlayer_4(); }; } function frame26(){ if ((((__setPropDict[powerRangersStreamingPlayback] == undefined)) || (!((((int(__setPropDict[powerRangersStreamingPlayback]) >= 5)) && ((int(__setPropDict[powerRangersStreamingPlayback]) <= 30))))))){ __setPropDict[powerRangersStreamingPlayback] = currentFrame; __setProp_powerRangersStreamingPlayback__loader_FLVPlayer_4(); }; } function frame27(){ if ((((__setPropDict[powerRangersStreamingPlayback] == undefined)) || (!((((int(__setPropDict[powerRangersStreamingPlayback]) >= 5)) && ((int(__setPropDict[powerRangersStreamingPlayback]) <= 30))))))){ __setPropDict[powerRangersStreamingPlayback] = currentFrame; __setProp_powerRangersStreamingPlayback__loader_FLVPlayer_4(); }; } function frame9(){ if ((((__setPropDict[powerRangersStreamingPlayback] == undefined)) || (!((((int(__setPropDict[powerRangersStreamingPlayback]) >= 5)) && ((int(__setPropDict[powerRangersStreamingPlayback]) <= 30))))))){ __setPropDict[powerRangersStreamingPlayback] = currentFrame; __setProp_powerRangersStreamingPlayback__loader_FLVPlayer_4(); }; } function frame1(){ stop(); } } }//package nick.pom.bootcampblitz.loader
Section 47
//LoaderEvents (nick.pom.bootcampblitz.loader.LoaderEvents) package nick.pom.bootcampblitz.loader { public class LoaderEvents { public static const LOAD_COMPLETE:String = "loadComplete"; public static const INTRO_COMPLETE:String = "introComplete"; public static const OUTRO_COMPLETE:String = "outroComplete"; } }//package nick.pom.bootcampblitz.loader
Section 48
//Menu (nick.pom.bootcampblitz.menu.Menu) package nick.pom.bootcampblitz.menu { import flash.display.*; import flash.events.*; import nick.pom.bootcampblitz.*; import nick.pom.bootcampblitz.screens.*; import nick.pom.bootcampblitz.smashing.buttons.*; public class Menu extends Screen { public var resumeBtn:StandardButton; public var quitBtn:StandardButton; public var musicToggle:MovieClip; public var helpBtn:StandardButton; public function Menu(){ addFrameScript(0, frame1, 4, frame5, 11, frame12, 17, frame18, 23, frame24); log("Class created."); } private function clearButtons():void{ resumeBtn.removeEventListener(MouseEvent.CLICK, mouseClickResumeListener); helpBtn.removeEventListener(MouseEvent.CLICK, mouseClickHelpListener); quitBtn.removeEventListener(MouseEvent.CLICK, mouseClickQuitListener); musicToggle.removeEventListener(MouseEvent.CLICK, musicToggleClickListener); } private function outroComplete():void{ log("Outro Complete."); dispatchOutroComplete(); } private function introComplete():void{ log("Intro Complete."); setButtons(); dispatchIntroComplete(); } private function mouseClickQuitListener(_arg1:MouseEvent):void{ dispatchEvent(new Event(MenuEvents.QUIT)); } function frame24(){ stop(); outroComplete(); } function frame5(){ play(); onIntro(); } private function musicToggleClickListener(_arg1:MouseEvent):void{ var _local2:Boolean = SoundController.instance.isMusic; if (_local2){ SoundController.instance.toggleMusic(false); musicToggle.gotoAndStop("off"); } else { SoundController.instance.toggleMusic(true); musicToggle.gotoAndStop("on"); }; } private function mouseClickResumeListener(_arg1:MouseEvent):void{ clearButtons(); dispatchEvent(new Event(MenuEvents.RESUME)); } function frame18(){ play(); } private function onIntro():void{ var _local1:Boolean = SoundController.instance.isMusic; if (_local1){ musicToggle.gotoAndStop("on"); } else { musicToggle.gotoAndStop("off"); }; } function frame12(){ stop(); introComplete(); } private function setMusicButton():void{ var _local1:Boolean = SoundController.instance.isMusic; if (_local1){ musicToggle.gotoAndStop("on"); } else { musicToggle.gotoAndStop("off"); }; musicToggle.addEventListener(MouseEvent.CLICK, musicToggleClickListener); } private function mouseClickHelpListener(_arg1:MouseEvent):void{ clearButtons(); dispatchEvent(new Event(MenuEvents.HELP)); } function frame1(){ stop(); } private function setButtons():void{ resumeBtn.addEventListener(MouseEvent.CLICK, mouseClickResumeListener); helpBtn.addEventListener(MouseEvent.CLICK, mouseClickHelpListener); quitBtn.addEventListener(MouseEvent.CLICK, mouseClickQuitListener); setMusicButton(); } } }//package nick.pom.bootcampblitz.menu
Section 49
//MenuEvents (nick.pom.bootcampblitz.menu.MenuEvents) package nick.pom.bootcampblitz.menu { public class MenuEvents { public static const HELP:String = "help"; public static const MUSIC:String = "music"; public static const INTRO_COMPLETE:String = "introComplete"; public static const RESUME:String = "resume"; public static const QUIT:String = "quit"; public static const OUTRO_COMPLETE:String = "outroComplete"; public static const CANCELED_QUIT:String = "canceledQuit"; public static const CONFIRMED_QUIT:String = "confirmedQuit"; } }//package nick.pom.bootcampblitz.menu
Section 50
//MenuQuitConfirmation (nick.pom.bootcampblitz.menu.MenuQuitConfirmation) package nick.pom.bootcampblitz.menu { import flash.events.*; import nick.pom.bootcampblitz.screens.*; import nick.pom.bootcampblitz.smashing.buttons.*; public class MenuQuitConfirmation extends Screen { public var yesBtn:StandardButton; public var noBtn:StandardButton; public function MenuQuitConfirmation(){ addFrameScript(0, frame1, 4, frame5, 12, frame13, 18, frame19, 24, frame25); } private function outroComplete():void{ log("Outro Complete."); dispatchEvent(new Event(MenuEvents.OUTRO_COMPLETE)); } private function introComplete():void{ log("Intro Complete."); setButtons(); dispatchIntroComplete(); } private function setButtons():void{ yesBtn.addEventListener(MouseEvent.CLICK, mouseClickYesListener); noBtn.addEventListener(MouseEvent.CLICK, mouseClickNoListener); } function frame5(){ play(); } function frame1(){ stop(); } function frame13(){ stop(); introComplete(); } function frame25(){ stop(); outroComplete(); } private function clearButtons():void{ yesBtn.removeEventListener(MouseEvent.CLICK, mouseClickYesListener); noBtn.removeEventListener(MouseEvent.CLICK, mouseClickNoListener); } private function mouseClickNoListener(_arg1:MouseEvent):void{ clearButtons(); dispatchEvent(new Event(MenuEvents.CANCELED_QUIT)); } function frame19(){ play(); } private function mouseClickYesListener(_arg1:MouseEvent):void{ clearButtons(); dispatchEvent(new Event(MenuEvents.CONFIRMED_QUIT)); } } }//package nick.pom.bootcampblitz.menu
Section 51
//NickServiceEvent (nick.pom.bootcampblitz.nickServices.NickServiceEvent) package nick.pom.bootcampblitz.nickServices { import flash.events.*; public class NickServiceEvent extends Event { public var value:Number; public var data:Object; public static const LOGIN_MODULE_LOADED:String = "loginModuleLoaded"; public static const CHECK_LOGIN:String = "checkLogin"; public static const HIGH_SCORES_LOADED:String = "highScoresLoaded"; public static const NICK_POINTS_EARNED:String = "nickPointsEarned"; public static const HIGH_SCORES_ERROR:String = "highScoresError"; public function NickServiceEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false){ super(_arg1, _arg2, _arg3); } override public function toString():String{ return (formatToString("NickServiceEvent", "type", "bubbles", "cancelable", "eventPhase")); } override public function clone():Event{ return (new NickServiceEvent(type, bubbles, cancelable)); } } }//package nick.pom.bootcampblitz.nickServices
Section 52
//NickServices (nick.pom.bootcampblitz.nickServices.NickServices) package nick.pom.bootcampblitz.nickServices { import flash.display.*; import flash.events.*; public class NickServices extends MovieClip { private var serviceManagerURI:String;// = "/common/flash/services/ServiceManager.swf" private var pCurrentUser:Object; private var serviceManagerConfigURI:String;// = "/common/flash/services/data/services.xml" private var loadTarget:MovieClip; private var nickLoginUi; public function NickServices(_arg1:String){ this.addEventListener(Event.ENTER_FRAME, onEnterFrame); } public function set currentUser(_arg1:Object):void{ this.pCurrentUser = _arg1; } public function submitHighScores(_arg1:String, _arg2:Number):void{ } public function loadHighScores(_arg1:String):void{ var _local2:NickServiceEvent = new NickServiceEvent(NickServiceEvent.HIGH_SCORES_LOADED); _local2.data = {}; _local2.data.scores = []; dispatchEvent(_local2); } public function awardNickPoints(_arg1:String, _arg2:String):void{ var _local3:NickServiceEvent = new NickServiceEvent(NickServiceEvent.NICK_POINTS_EARNED); _local3.value = 20; dispatchEvent(_local3); } public function get currentUser():Object{ return (this.pCurrentUser); } public function checkLoginState():void{ var _local1:NickServiceEvent = new NickServiceEvent(NickServiceEvent.CHECK_LOGIN); _local1.value = 1; dispatchEvent(_local1); } public function printServiceInfo(_arg1:Object):void{ trace((((((((((("ServiceInfo: " + "\n\tService ") + _arg1.name) + "\n\tClass: ") + _arg1.serviceClass) + "\n\tMethod: ") + _arg1.method) + "\n\tType: ") + _arg1.type) + "\n\tData: ") + _arg1.data)); } private function onEnterFrame(_arg1:Event):void{ var _local2:NickServiceEvent = new NickServiceEvent(NickServiceEvent.CHECK_LOGIN); _local2.value = 1; dispatchEvent(_local2); this.removeEventListener(Event.ENTER_FRAME, onEnterFrame); } } }//package nick.pom.bootcampblitz.nickServices
Section 53
//GameOverScreenFlow (nick.pom.bootcampblitz.screenflows.GameOverScreenFlow) package nick.pom.bootcampblitz.screenflows { import flash.events.*; import nick.pom.bootcampblitz.*; import nick.pom.bootcampblitz.transitions.*; import nick.pom.bootcampblitz.highscore.*; import nick.pom.bootcampblitz.screens.*; public class GameOverScreenFlow extends ScreenFlowBase { public function GameOverScreenFlow(){ log("Class created."); } private function introListener(_arg1:Event):void{ _gameOver.removeEventListener(ScreenEvents.INTRO_COMPLETE, introListener); setListeners(); } private function highScoreTableOutroListener(_arg1:Event):void{ _highScoreTable.removeEventListener(HighScoreEvents.OUTRO_COMPLETE, highScoreTableOutroListener); _gameOver.activate(); } private function removeHighScoreTableListeners():void{ _highScoreTable.removeEventListener(HighScoreEvents.CLOSE, highScoreTableCloseListener); _highScoreTable.removeEventListener(HighScoreEvents.PLAY, highScoreTablePlayListener); _highScoreTable.removeEventListener(HighScoreEvents.SUBMIT_SCORE, highScoreTableSubmitListener); } private function highScoreTablePlayListener(_arg1:Event):void{ _highScoreTable.outro(); playAgain(); } private function playListener(_arg1:Event):void{ playAgain(); } private function highScoreTableSubmitListener(_arg1:Event):void{ _gameOver.disableSubmitButton(); _gameOver.enable(); } private function transitionIntroListener(_arg1:Event):void{ _transition.removeEventListener(TransitionEvents.INTRO_COMPLETE, transitionIntroListener); _highScoreTable.off(); _isTransitionIntroComplete = true; if (((_isTransitionIntroComplete) && (_isScreenOutroComplete))){ dispatchEvent(new Event(ScreenFlowEvents.SHOW_GAME)); }; } private function playAgain():void{ removeListeners(); removeHighScoreTableListeners(); _isTransitionIntroComplete = false; _isScreenOutroComplete = false; _transition.addEventListener(TransitionEvents.INTRO_COMPLETE, transitionIntroListener); _transition.intro(); _gameOver.addEventListener(ScreenEvents.OUTRO_COMPLETE, outroListener); _gameOver.outro(); _engine.destroyNickPointModule(); } private function highScoreTableCloseListener(_arg1:Event):void{ removeHighScoreTableListeners(); _highScoreTable.addEventListener(HighScoreEvents.OUTRO_COMPLETE, highScoreTableOutroListener); _highScoreTable.outro(); _gameOver.enable(); } public function init(_arg1:Engine, _arg2:Transition, _arg3:HighScoreTable, _arg4:GameOver, _arg5:XMLList):void{ setCommonReference(_arg1, _arg2, _arg3); _gameOver = _arg4; _transition.outro(); _gameOver.addEventListener(ScreenEvents.INTRO_COMPLETE, introListener); _gameOver.init(_engine, _arg5); _gameOver.intro(); } private function submitScoreListener(_arg1:Event):void{ setHighScoreTableListeners(); _highScoreTable.submitAndViewScoresFromGameOver(); } private function setHighScoreTableListeners():void{ _highScoreTable.addEventListener(HighScoreEvents.CLOSE, highScoreTableCloseListener); _highScoreTable.addEventListener(HighScoreEvents.PLAY, highScoreTablePlayListener); _highScoreTable.addEventListener(HighScoreEvents.SUBMIT_SCORE, highScoreTableSubmitListener); } private function viewScoresListener(_arg1:Event):void{ log("View High Score"); setHighScoreTableListeners(); _highScoreTable.viewScoresFromGameOver(); } private function removeListeners():void{ _gameOver.removeEventListener(ScreenEvents.VIEW_SCORES, viewScoresListener); _gameOver.removeEventListener(ScreenEvents.SUBMIT_SCORE, submitScoreListener); _gameOver.removeEventListener(ScreenEvents.PLAY, playListener); } private function setListeners():void{ _gameOver.addEventListener(ScreenEvents.VIEW_SCORES, viewScoresListener); _gameOver.addEventListener(ScreenEvents.SUBMIT_SCORE, submitScoreListener); _gameOver.addEventListener(ScreenEvents.PLAY, playListener); } private function outroListener(_arg1:Event):void{ _gameOver.removeEventListener(ScreenEvents.OUTRO_COMPLETE, outroListener); _isScreenOutroComplete = true; if (((_isTransitionIntroComplete) && (_isScreenOutroComplete))){ dispatchEvent(new Event(ScreenFlowEvents.SHOW_GAME)); }; } } }//package nick.pom.bootcampblitz.screenflows
Section 54
//InGameScreenFlow (nick.pom.bootcampblitz.screenflows.InGameScreenFlow) package nick.pom.bootcampblitz.screenflows { import flash.events.*; import nick.pom.bootcampblitz.*; import nick.pom.bootcampblitz.transitions.*; import nick.pom.bootcampblitz.highscore.*; import nick.pom.bootcampblitz.screens.*; public class InGameScreenFlow extends ScreenFlowBase { private var _forceHelp:Boolean; public function InGameScreenFlow(){ log("Class created."); } private function menuQuitListener(_arg1:Event):void{ showGameOver(); dispatchEvent(new Event(ScreenFlowEvents.PAUSE_GAME)); } private function showGameOver():void{ _game.removeEventListener(GameEvents.GAME_OVER, gameOverListener); _transition.addEventListener(TransitionEvents.INTRO_COMPLETE, transitionIntroListener); _transition.intro(); } private function gameOverListener(_arg1:Event):void{ showGameOver(); dispatchEvent(new Event(ScreenFlowEvents.STOP_GAME)); } private function transitionOutroListener(_arg1:Event):void{ _transition.removeEventListener(ScreenEvents.OUTRO_COMPLETE, transitionOutroListener); if (_forceHelp){ _help.addEventListener(ScreenEvents.OUTRO_COMPLETE, forceHelpOutroListener); _help.intro(); _engine.ui.menuBtn.disabled = true; } else { dispatchEvent(new Event(ScreenFlowEvents.START_GAME)); }; } private function transitionIntroListener(_arg1:Event):void{ _transition.removeEventListener(TransitionEvents.INTRO_COMPLETE, transitionIntroListener); dispatchEvent(new Event(ScreenFlowEvents.STOP_GAME)); _game.destroy(); dispatchEvent(new Event(ScreenFlowEvents.SHOW_GAME_OVER)); } public function init(_arg1:Engine, _arg2:Transition, _arg3:HighScoreTable, _arg4:Game, _arg5:UI):void{ setCommonReference(_arg1, _arg2, _arg3); _game = _arg4; _ui = _arg5; _ui.addEventListener(UIEvents.MENU_OPENED, menuOpenedListener); _game.addEventListener(GameEvents.GAME_OVER, gameOverListener); } public function initHelp(_arg1:Help, _arg2:Boolean):void{ _help = _arg1; _forceHelp = _arg2; _transition.addEventListener(ScreenEvents.OUTRO_COMPLETE, transitionOutroListener); _transition.outro(); } private function forceHelpOutroListener(_arg1:Event):void{ _help.removeEventListener(ScreenEvents.OUTRO_COMPLETE, forceHelpOutroListener); _engine.ui.menuBtn.disabled = false; dispatchEvent(new Event(ScreenFlowEvents.START_GAME)); } private function menuHelpListener(_arg1:Event):void{ _help.addEventListener(ScreenEvents.OUTRO_COMPLETE, uiHelpOutroListener); _help.intro(); } private function uiHelpOutroListener(_arg1:Event):void{ _help.removeEventListener(ScreenEvents.OUTRO_COMPLETE, uiHelpOutroListener); _ui.addEventListener(UIEvents.MENU_OPENED, menuOpenedListener); _ui.onHelpClosed(); dispatchEvent(new Event(ScreenFlowEvents.RESUME_GAME)); } private function menuOpenedListener(_arg1:Event):void{ _ui.removeEventListener(UIEvents.MENU_OPENED, menuOpenedListener); _ui.addEventListener(UIEvents.MENU_CLOSED, menuClosedListener); _ui.addEventListener(UIEvents.HELP, menuHelpListener); _ui.addEventListener(UIEvents.QUIT, menuQuitListener); dispatchEvent(new Event(ScreenFlowEvents.PAUSE_GAME)); } private function menuClosedListener(_arg1:Event):void{ _ui.removeEventListener(UIEvents.MENU_CLOSED, menuClosedListener); _ui.addEventListener(UIEvents.MENU_OPENED, menuOpenedListener); dispatchEvent(new Event(ScreenFlowEvents.RESUME_GAME)); } } }//package nick.pom.bootcampblitz.screenflows
Section 55
//IntroScreenFlow (nick.pom.bootcampblitz.screenflows.IntroScreenFlow) package nick.pom.bootcampblitz.screenflows { import flash.events.*; import nick.pom.bootcampblitz.*; import nick.pom.bootcampblitz.transitions.*; import nick.pom.bootcampblitz.highscore.*; import nick.pom.bootcampblitz.screens.*; public class IntroScreenFlow extends ScreenFlowBase { public function IntroScreenFlow(){ log("Class created."); } public function init(_arg1:Engine, _arg2:Transition, _arg3:HighScoreTable, _arg4:Intro):void{ setCommonReference(_arg1, _arg2, _arg3); _intro = _arg4; _transition.outro(); _intro.addEventListener(ScreenEvents.PLAY, playClickListener); _intro.skipIntro = _engine.skipIntro; _intro.intro(); } private function introListener(_arg1:Event):void{ _intro.removeEventListener(ScreenEvents.INTRO_COMPLETE, introListener); } private function playClickListener(_arg1:Event):void{ _intro.removeEventListener(ScreenEvents.PLAY, playClickListener); _intro.deactivate(); introScreenOutro(); } private function introScreenOutro():void{ _transition.addEventListener(TransitionEvents.INTRO_COMPLETE, transitionIntroListener); _transition.intro(); _intro.addEventListener(ScreenEvents.OUTRO_COMPLETE, outroListener); _intro.outro(); } private function transitionIntroListener(_arg1:Event):void{ _transition.removeEventListener(TransitionEvents.INTRO_COMPLETE, transitionIntroListener); _isTransitionIntroComplete = true; if (((_isTransitionIntroComplete) && (_isScreenOutroComplete))){ dispatchEvent(new Event(ScreenFlowEvents.SHOW_GAME)); }; } private function outroListener(_arg1:Event):void{ _intro.removeEventListener(ScreenEvents.OUTRO_COMPLETE, outroListener); _isScreenOutroComplete = true; if (((_isTransitionIntroComplete) && (_isScreenOutroComplete))){ dispatchEvent(new Event(ScreenFlowEvents.SHOW_GAME)); }; } } }//package nick.pom.bootcampblitz.screenflows
Section 56
//ScreenFlowBase (nick.pom.bootcampblitz.screenflows.ScreenFlowBase) package nick.pom.bootcampblitz.screenflows { import flash.events.*; import nick.pom.bootcampblitz.*; import nick.pom.bootcampblitz.transitions.*; import nick.pom.bootcampblitz.highscore.*; import nick.pom.bootcampblitz.screens.*; import flash.utils.*; import nick.pom.bootcampblitz.smashing.utils.*; public class ScreenFlowBase extends EventDispatcher { var _help:Help; var _engine:Engine; var _gameOver:GameOver; var _splash:Splash; var _intro:Intro; var _isTransitionIntroComplete:Boolean; var _isScreenOutroComplete:Boolean; var _game:Game; var _ui:UI; var _transition:Transition; var _highScoreTable:HighScoreTable; function setCommonReference(_arg1:Engine, _arg2:Transition, _arg3:HighScoreTable):void{ _engine = _arg1; _transition = _arg2; _highScoreTable = _arg3; } function log(_arg1:Object):void{ Debug.log(((getQualifiedClassName(this) + ": ") + _arg1)); } } }//package nick.pom.bootcampblitz.screenflows
Section 57
//ScreenFlowEvents (nick.pom.bootcampblitz.screenflows.ScreenFlowEvents) package nick.pom.bootcampblitz.screenflows { public class ScreenFlowEvents { public static const RESUME_GAME:String = "resumeGame"; public static const CHAR_SELECT:String = "charSelect"; public static const START_GAME:String = "startGame"; public static const SHOW_INTRO:String = "showIntro"; public static const PAUSE_GAME:String = "pauseGame"; public static const SHOW_GAME:String = "showGame"; public static const STOP_GAME:String = "stopGame"; public static const SHOW_GAME_OVER:String = "showGameOver"; } }//package nick.pom.bootcampblitz.screenflows
Section 58
//SplashScreenFlow (nick.pom.bootcampblitz.screenflows.SplashScreenFlow) package nick.pom.bootcampblitz.screenflows { import flash.events.*; import nick.pom.bootcampblitz.*; import nick.pom.bootcampblitz.transitions.*; import nick.pom.bootcampblitz.highscore.*; import nick.pom.bootcampblitz.screens.*; public class SplashScreenFlow extends ScreenFlowBase { public function SplashScreenFlow(){ log("Class created."); } private function introListener(_arg1:Event):void{ _splash.removeEventListener(ScreenEvents.INTRO_COMPLETE, introListener); setListeners(); } private function highScoreTableOutroListener(_arg1:Event):void{ _highScoreTable.removeEventListener(HighScoreEvents.OUTRO_COMPLETE, highScoreTableOutroListener); _splash.activate(); } private function setListeners():void{ _splash.addEventListener(ScreenEvents.VIEW_SCORES, viewScoresListener); _splash.addEventListener(ScreenEvents.PLAY, playListener); } private function highScoreTablePlayListener(_arg1:Event):void{ log("Play Game"); removeHighScoreTableListeners(); removeListeners(); _highScoreTable.outro(); splashScreenOutro(); } private function playListener(_arg1:Event):void{ log("Play Game"); removeListeners(); _splash.deactivate(); splashScreenOutro(); } private function transitionIntroListener(_arg1:Event):void{ _transition.removeEventListener(TransitionEvents.INTRO_COMPLETE, transitionIntroListener); _highScoreTable.off(); _isTransitionIntroComplete = true; if (((_isTransitionIntroComplete) && (_isScreenOutroComplete))){ dispatchEvent(new Event(ScreenFlowEvents.SHOW_INTRO)); }; } private function highScoreTableCloseListener(_arg1:Event):void{ removeHighScoreTableListeners(); _highScoreTable.addEventListener(HighScoreEvents.OUTRO_COMPLETE, highScoreTableOutroListener); _highScoreTable.outro(); } public function init(_arg1:Engine, _arg2:Transition, _arg3:HighScoreTable, _arg4:Splash):void{ setCommonReference(_arg1, _arg2, _arg3); _splash = _arg4; _splash.addEventListener(ScreenEvents.INTRO_COMPLETE, introListener); _splash.intro(); } private function outroListener(_arg1:Event):void{ _splash.removeEventListener(ScreenEvents.OUTRO_COMPLETE, outroListener); _isScreenOutroComplete = true; if (((_isTransitionIntroComplete) && (_isScreenOutroComplete))){ dispatchEvent(new Event(ScreenFlowEvents.SHOW_INTRO)); }; } private function splashScreenOutro():void{ _isTransitionIntroComplete = false; _isScreenOutroComplete = false; _transition.addEventListener(TransitionEvents.INTRO_COMPLETE, transitionIntroListener); _transition.intro(); _splash.addEventListener(ScreenEvents.OUTRO_COMPLETE, outroListener); _splash.outro(); } private function viewScoresListener(_arg1:Event):void{ _splash.deactivate(); log("View High Score"); setHighScoreTableListeners(); _highScoreTable.viewScoresFromSplash(); } private function removeListeners():void{ _splash.removeEventListener(ScreenEvents.VIEW_SCORES, viewScoresListener); _splash.removeEventListener(ScreenEvents.PLAY, playListener); } private function removeHighScoreTableListeners():void{ _highScoreTable.removeEventListener(HighScoreEvents.CLOSE, highScoreTableCloseListener); _highScoreTable.removeEventListener(HighScoreEvents.PLAY, highScoreTablePlayListener); } private function setHighScoreTableListeners():void{ _highScoreTable.addEventListener(HighScoreEvents.CLOSE, highScoreTableCloseListener); _highScoreTable.addEventListener(HighScoreEvents.PLAY, highScoreTablePlayListener); } } }//package nick.pom.bootcampblitz.screenflows
Section 59
//GameOver (nick.pom.bootcampblitz.screens.GameOver) package nick.pom.bootcampblitz.screens { import flash.display.*; import flash.events.*; import nick.pom.bootcampblitz.*; import nick.pom.bootcampblitz.highscore.*; import flash.text.*; import flash.utils.*; import nick.pom.bootcampblitz.smashing.buttons.*; public class GameOver extends Screen { public var msg:MovieClip; public var rank1:Number;// = 1000 public var rank2:Number;// = 2000 public var playBtn:StandardButton; public var score:TextField; private var _gameData:XMLList; public var outroBoard:MovieClip; private var _loggedIn:Boolean; private var _scoreSubmitted:Boolean; private var _timer:Timer; private var _engine:Engine; public var grayOut:MovieClip; public function GameOver(){ addFrameScript(0, frame1, 4, frame5, 15, frame16, 17, frame18, 24, frame25, 34, frame35, 50, frame51, 57, frame58); log("Class created."); addEventListener(Event.REMOVED_FROM_STAGE, destroy); } public function enable():void{ grayOut.gotoAndStop(1); checkSubmitButton(); } override public function outro():void{ log("Outro."); clearButtons(); gotoAndPlay("outro"); } public function enableSubmitButton():void{ } function frame35(){ stop(); trace("static frame"); introComplete(); } public function init(_arg1:Engine, _arg2:XMLList):void{ _engine = _arg1; _gameData = _arg2; rank1 = _arg2.nickPoints.events.event[0].scoreThreshold; rank2 = _arg2.nickPoints.events.event[1].scoreThreshold; } private function checkSubmitButton():void{ enableSubmitButton(); } private function mouseClickPlayListener(_arg1:MouseEvent):void{ dispatchEvent(new Event(ScreenEvents.PLAY)); } private function setText():void{ log("setText"); var _local1:Number = _engine.score; if (_local1 < rank2){ if (_local1 < rank1){ msg.gotoAndStop(1); return; }; msg.gotoAndStop(2); return; }; msg.gotoAndStop(3); } public function disableTimer():void{ if (_timer){ _timer.stop(); _timer.removeEventListener(TimerEvent.TIMER_COMPLETE, checkLoggedIn); _timer = null; }; } private function mouseClickViewScoresListener(_arg1:MouseEvent):void{ dispatchEvent(new Event(ScreenEvents.VIEW_SCORES)); } private function introComplete():void{ log("Intro Complete."); initButtons(); dispatchIntroComplete(); } function frame51(){ play(); trace("outro frame"); } public function showButtons():void{ log("showButtons"); checkSubmitButton(); } private function initButtons():void{ playBtn.addEventListener(MouseEvent.CLICK, mouseClickPlayListener); } private function mouseClickSubmitScoreListener(_arg1:MouseEvent):void{ disableSubmitButton(); _scoreSubmitted = true; dispatchEvent(new Event(ScreenEvents.SUBMIT_SCORE)); } function frame18(){ setText(); trace("set text frame"); } private function setScore():void{ log("setScore"); score.text = String(_engine.score); } function frame16(){ showButtons(); trace("intro frame show buttons"); } function frame58(){ stop(); trace("outro complete frame"); outroComplete(); } function frame1(){ stop(); } public function disable():void{ } public function checkLoggedIn(_arg1:Event=null):void{ if (HighScoreData.isUserLoggedIn == true){ log(HighScoreData.isUserLoggedIn); disableTimer(); }; } function frame25(){ setScore(); trace("set core frame"); } public function disableSubmitButton():void{ } private function outroComplete():void{ log("Outro Complete."); dispatchOutroComplete(); } private function clearButtons():void{ if (playBtn){ playBtn.removeEventListener(MouseEvent.CLICK, mouseClickPlayListener); }; } function frame5(){ play(); trace("intro frame"); } public function destroy(_arg1:Event=null):void{ log("Destroy."); clearButtons(); removeEventListener(Event.REMOVED_FROM_STAGE, destroy); disableTimer(); } } }//package nick.pom.bootcampblitz.screens
Section 60
//Help (nick.pom.bootcampblitz.screens.Help) package nick.pom.bootcampblitz.screens { import flash.events.*; import nick.pom.bootcampblitz.smashing.buttons.*; public class Help extends Screen { public var playBtn:StandardButton; public function Help(){ addFrameScript(0, frame1, 4, frame5, 9, frame10, 14, frame15, 20, frame21); log("Class created."); } private function outroComplete():void{ log("Outro Complete."); dispatchOutroComplete(); } private function introComplete():void{ log("Intro Complete."); initButtons(); dispatchIntroComplete(); } private function mouseClickPlayListener(_arg1:MouseEvent):void{ destroy(); outro(); dispatchEvent(new Event(ScreenEvents.PLAY)); } function frame10(){ stop(); introComplete(); } function frame5(){ play(); } private function initButtons():void{ playBtn.addEventListener(MouseEvent.CLICK, mouseClickPlayListener); } private function clearButtons():void{ playBtn.removeEventListener(MouseEvent.CLICK, mouseClickPlayListener); } function frame15(){ play(); } public function destroy():void{ log("Destroy."); clearButtons(); } function frame21(){ stop(); outroComplete(); } function frame1(){ stop(); } } }//package nick.pom.bootcampblitz.screens
Section 61
//Intro (nick.pom.bootcampblitz.screens.Intro) package nick.pom.bootcampblitz.screens { import flash.display.*; import flash.events.*; import nick.pom.bootcampblitz.intro.*; public class Intro extends Screen { public var playBtn:MovieClip; public var skipBtn:MovieClip; public var nextBtn:MovieClip; public var introContent:IntroContent; private var _currentPage:Number;// = 1 public var skipIntro:Boolean; public var backBtn:MovieClip; public function Intro(){ addFrameScript(0, frame1, 4, frame5, 10, frame11, 16, frame17, 22, frame23); log("Class created."); } private function clearPlayBtn():void{ playBtn.visible = false; playBtn.disabled = true; playBtn.removeEventListener(MouseEvent.CLICK, mouseClickPlayListener); } private function introComplete():void{ log("Intro Complete."); if (skipIntro){ clearButtons(); _currentPage = 5; gotoPage(); introContent.addEventListener(Event.COMPLETE, setPlayBtn); } else { setButtons(); introContent.addEventListener(Event.COMPLETE, setPlayBtn); dispatchIntroComplete(); }; } private function setPlayBtn(_arg1:Event=null):void{ playBtn.visible = true; playBtn.disabled = false; playBtn.addEventListener(MouseEvent.CLICK, mouseClickPlayListener); } private function mouseClickNextListener(_arg1:MouseEvent):void{ clearButtons(); _currentPage++; if (_currentPage == 4){ _currentPage++; }; setButtons(); gotoPage(); } private function gotoPage():void{ var _local1:String = ("page" + String(_currentPage)); introContent.gotoAndStop(_local1); } function frame11(){ stop(); introComplete(); } function frame17(){ play(); } private function mouseClickSkipListener(_arg1:MouseEvent):void{ clearButtons(); _currentPage = 4; setButtons(); gotoPage(); } private function clearSkipBtn():void{ skipBtn.visible = false; skipBtn.disabled = true; skipBtn.removeEventListener(MouseEvent.CLICK, mouseClickSkipListener); } private function setSkipBtn():void{ skipBtn.visible = true; skipBtn.disabled = false; skipBtn.addEventListener(MouseEvent.CLICK, mouseClickSkipListener); } private function clearNextBtn():void{ nextBtn.visible = false; nextBtn.disabled = true; nextBtn.removeEventListener(MouseEvent.CLICK, mouseClickNextListener); } private function mouseClickPlayListener(_arg1:MouseEvent):void{ clearButtons(); introContent.removeEventListener(Event.COMPLETE, setPlayBtn); dispatchEvent(new Event(ScreenEvents.PLAY)); } private function outroComplete():void{ log("Outro Complete."); dispatchOutroComplete(); } private function setNextBtn():void{ nextBtn.visible = true; nextBtn.disabled = false; nextBtn.addEventListener(MouseEvent.CLICK, mouseClickNextListener); } private function clearBackBtn():void{ backBtn.visible = false; backBtn.disabled = true; backBtn.removeEventListener(MouseEvent.CLICK, mouseClickBackListener); } function frame1(){ stop(); } override public function intro():void{ log("Intro."); if (skipIntro){ gotoAndStop("static"); } else { gotoAndPlay("intro"); }; } function frame23(){ stop(); outroComplete(); } function frame5(){ play(); } private function setBackBtn():void{ backBtn.visible = true; backBtn.disabled = false; backBtn.addEventListener(MouseEvent.CLICK, mouseClickBackListener); } private function clearButtons():void{ clearNextBtn(); clearBackBtn(); clearPlayBtn(); clearSkipBtn(); } private function mouseClickBackListener(_arg1:MouseEvent):void{ clearButtons(); _currentPage--; if (_currentPage == 3){ _currentPage--; }; setButtons(); gotoPage(); } private function setButtons():void{ clearButtons(); switch (_currentPage){ case 1: setNextBtn(); setSkipBtn(); break; case 2: setNextBtn(); setBackBtn(); break; case 3: setNextBtn(); setBackBtn(); break; case 4: setNextBtn(); setBackBtn(); break; case 5: setBackBtn(); break; }; } } }//package nick.pom.bootcampblitz.screens
Section 62
//NickPointsScreen (nick.pom.bootcampblitz.screens.NickPointsScreen) package nick.pom.bootcampblitz.screens { import flash.display.*; import flash.events.*; import flash.net.*; import nick.pom.bootcampblitz.smashing.utils.*; import flash.system.*; public class NickPointsScreen extends Screen { private var _sbpromo:XMLList; private var _campaignID:String; public var placeholder:Object; private var _events:Array; public var loader:Loader; public function loadNickPointModule(_arg1:String):void{ var modulePath = _arg1; _events = []; var request:URLRequest = new URLRequest(modulePath); var ldrContext:LoaderContext = new LoaderContext(false, new ApplicationDomain()); loader = new Loader(); try { loader.load(request); } catch(e:Error) { Debug.log(e.message); dispatchEvent(new Event("loaderError")); return; }; loader.contentLoaderInfo.addEventListener(Event.COMPLETE, this.onLoadComplete); } public function sendNickPoints(_arg1:String, _arg2:Array, _arg3:XMLList=null):void{ _campaignID = _arg1; _events = _arg2; _sbpromo = _arg3; } private function onModuleEvent(_arg1:Event):void{ trace(("onModuleEvent: " + _arg1.type)); switch (_arg1.type){ case "moduleNotConnected": placeholder.playIntro(); dispatchEvent(new Event(ScreenEvents.OPEN_MODULE)); break; case "moduleConnected": placeholder.sendNickPointEvents(_campaignID, _events); dispatchEvent(new Event(ScreenEvents.INTRO_COMPLETE)); dispatchEvent(new Event(ScreenEvents.OPEN_MODULE)); break; case "collectNickPoints": dispatchEvent(new Event(ScreenEvents.OPEN_MODULE)); break; case "moduleOutroComplete": dispatchEvent(new Event(ScreenEvents.OUTRO_COMPLETE)); break; default: break; }; _arg1.stopImmediatePropagation(); } public function destroyModule():void{ if (placeholder != null){ placeholder.removeEventListener("moduleConnected", onModuleEvent); placeholder.removeEventListener("moduleNotConnected", onModuleEvent); placeholder.removeEventListener("collectNickPoints", onModuleEvent); placeholder.removeEventListener("moduleOutroComplete", onModuleEvent); removeChild(MovieClip(placeholder)); placeholder.destroy(); }; } private function onLoadComplete(_arg1:Event):void{ trace("onLoadComplete"); var _local2:MovieClip = MovieClip(loader.content); placeholder = addChild(_local2); placeholder.addEventListener("moduleConnected", onModuleEvent); placeholder.addEventListener("moduleNotConnected", onModuleEvent); placeholder.addEventListener("collectNickPoints", onModuleEvent); placeholder.addEventListener("moduleOutroComplete", onModuleEvent); loader.contentLoaderInfo.removeEventListener(Event.COMPLETE, this.onLoadComplete); placeholder.setSizeVars(600, 600, 340); placeholder.init(_campaignID, _events, _sbpromo); } } }//package nick.pom.bootcampblitz.screens
Section 63
//Screen (nick.pom.bootcampblitz.screens.Screen) package nick.pom.bootcampblitz.screens { import flash.display.*; import flash.events.*; import flash.utils.*; import nick.pom.bootcampblitz.smashing.utils.*; public class Screen extends MovieClip { protected function dispatchOutroComplete():void{ dispatchEvent(new Event(ScreenEvents.OUTRO_COMPLETE)); } public function outro():void{ log("Outro."); gotoAndPlay("outro"); } public function deactivate():void{ } protected function log(_arg1:Object):void{ Debug.log(((getQualifiedClassName(this) + ": ") + _arg1)); } public function activate():void{ this.mouseChildren = true; this.enabled = true; } protected function dispatchIntroComplete():void{ dispatchEvent(new Event(ScreenEvents.INTRO_COMPLETE)); } public function intro():void{ log("Intro."); gotoAndPlay("intro"); } } }//package nick.pom.bootcampblitz.screens
Section 64
//ScreenEvents (nick.pom.bootcampblitz.screens.ScreenEvents) package nick.pom.bootcampblitz.screens { public class ScreenEvents { public static const OPEN_MODULE:String = "openModule"; public static const BACK:String = "back"; public static const SUBMIT_SCORE:String = "submitScore"; public static const INTRO_COMPLETE:String = "introComplete"; public static const OUTRO_COMPLETE:String = "outroComplete"; public static const NEXT:String = "nexy"; public static const PLAY:String = "play"; public static const CLOSE:String = "close"; public static const VIEW_SCORES:String = "viewScores"; } }//package nick.pom.bootcampblitz.screens
Section 65
//Splash (nick.pom.bootcampblitz.screens.Splash) package nick.pom.bootcampblitz.screens { import flash.display.*; import flash.events.*; import nick.pom.bootcampblitz.*; import nick.pom.bootcampblitz.smashing.buttons.*; public class Splash extends Screen { public var playBtn:StandardButton; public var viewScoresBtn:StandardButton; public var musicToggle:MovieClip; public function Splash(){ addFrameScript(0, frame1, 4, frame5, 40, frame41, 46, frame47, 55, frame56); log("Class created."); } private function setMuteBtn():void{ var _local1:Boolean; if (_local1){ musicToggle.gotoAndStop("off"); } else { musicToggle.gotoAndStop("on"); }; musicToggle.disabled = false; musicToggle.addEventListener(MouseEvent.CLICK, mouseClickMuteListener); _local1 = SoundController.instance.isMusic; } private function mouseClickPlayListener(_arg1:MouseEvent):void{ dispatchEvent(new Event(ScreenEvents.PLAY)); } private function outroComplete():void{ log("Outro Complete."); dispatchOutroComplete(); } private function introComplete():void{ log("Intro Complete."); initButtons(); dispatchIntroComplete(); } function frame41(){ stop(); introComplete(); } override public function outro():void{ log("Outro."); clearButtons(); gotoAndPlay("outro"); } function frame56(){ stop(); outroComplete(); } function frame5(){ play(); } private function initButtons():void{ playBtn.addEventListener(MouseEvent.CLICK, mouseClickPlayListener); viewScoresBtn.addEventListener(MouseEvent.CLICK, mouseClickViewScoresListener); setMuteBtn(); } private function clearButtons():void{ playBtn.removeEventListener(MouseEvent.CLICK, mouseClickPlayListener); viewScoresBtn.removeEventListener(MouseEvent.CLICK, mouseClickViewScoresListener); disableMuteBtn(); } private function mouseClickMuteListener(_arg1:MouseEvent):void{ var _local2:Boolean = SoundController.instance.isMusic; if (_local2){ SoundController.instance.toggleMusic(false); musicToggle.gotoAndStop("off"); } else { SoundController.instance.toggleMusic(true); musicToggle.gotoAndStop("on"); }; } public function destroy():void{ log("Destroy."); clearButtons(); } private function disableMuteBtn():void{ musicToggle.disabled = true; musicToggle.removeEventListener(MouseEvent.CLICK, mouseClickMuteListener); } function frame1(){ stop(); } private function mouseClickViewScoresListener(_arg1:MouseEvent):void{ dispatchEvent(new Event(ScreenEvents.VIEW_SCORES)); } function frame47(){ play(); } } }//package nick.pom.bootcampblitz.screens
Section 66
//BaseButton (nick.pom.bootcampblitz.smashing.buttons.BaseButton) package nick.pom.bootcampblitz.smashing.buttons { import flash.display.*; public class BaseButton extends MovieClip implements IButton { protected var _selected:Boolean;// = false protected var _state:String;// = "up" protected var _index:int;// = 0 protected var _disabled:Boolean;// = false protected var _id:String;// = null public function BaseButton(){ this.stop(); this.mouseEnabled = true; this.mouseChildren = false; this.buttonMode = true; } public function get disabled():Boolean{ return (_disabled); } protected function updateSelected():void{ } public function get id():String{ return (_id); } public function get state():String{ return (_state); } public function get index():int{ return (_index); } protected function updateDisabled():void{ } public function get selected():Boolean{ return (_selected); } public function set index(_arg1:int):void{ _index = _arg1; } public function set selected(_arg1:Boolean):void{ if (_selected == _arg1){ return; }; _selected = _arg1; updateSelected(); } public function set disabled(_arg1:Boolean):void{ if (_disabled == _arg1){ return; }; _disabled = _arg1; updateDisabled(); } public function set id(_arg1:String):void{ _id = _arg1; } } }//package nick.pom.bootcampblitz.smashing.buttons
Section 67
//IButton (nick.pom.bootcampblitz.smashing.buttons.IButton) package nick.pom.bootcampblitz.smashing.buttons { import flash.events.*; public interface IButton extends IEventDispatcher { function get state():String; function get index():int; function set index(_arg1:int):void; function set id(_arg1:String):void; function set disabled(_arg1:Boolean):void; function get selected():Boolean; function get id():String; function get disabled():Boolean; function set selected(_arg1:Boolean):void; } }//package nick.pom.bootcampblitz.smashing.buttons
Section 68
//StandardButton (nick.pom.bootcampblitz.smashing.buttons.StandardButton) package nick.pom.bootcampblitz.smashing.buttons { import flash.display.*; import flash.events.*; public class StandardButton extends BaseButton { public var sfx:MovieClip; public function StandardButton(){ this.addEventListener(MouseEvent.MOUSE_OVER, mouseOverHandler); this.addEventListener(MouseEvent.MOUSE_OUT, mouseOutHandler); this.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler); this.addEventListener(MouseEvent.MOUSE_UP, mouseUpHandler); this.addEventListener(MouseEvent.CLICK, mouseClickHandler); } protected function mouseOutHandler(_arg1:MouseEvent):void{ if (this.mouseEnabled == false){ _arg1.stopPropagation(); _arg1.stopImmediatePropagation(); return; }; _state = "up"; if (_arg1.buttonDown == true){ }; updateUserInteraction(); } protected function mouseDownHandler(_arg1:MouseEvent):void{ if (this.mouseEnabled == false){ _arg1.stopPropagation(); _arg1.stopImmediatePropagation(); return; }; _state = "down"; triggerSFX("down"); updateUserInteraction(); } override protected function updateSelected():void{ _disabled = false; if ((((_selected == true)) && (!((_state == "selected"))))){ _state = "selected"; this.mouseEnabled = false; } else { if ((((_selected == false)) && ((_state == "selected")))){ _state = "up"; this.mouseEnabled = true; }; }; this.gotoAndStop(_state); } protected function mouseClickHandler(_arg1:MouseEvent):void{ if (this.mouseEnabled == false){ _arg1.stopPropagation(); _arg1.stopImmediatePropagation(); return; }; _state = "over"; triggerSFX("click"); triggerSFX("release"); updateUserInteraction(); } protected function mouseOverHandler(_arg1:MouseEvent):void{ if (this.mouseEnabled == false){ _arg1.stopPropagation(); _arg1.stopImmediatePropagation(); return; }; _state = "over"; if (_arg1.buttonDown == true){ }; triggerSFX("over"); updateUserInteraction(); } protected function mouseUpHandler(_arg1:MouseEvent):void{ if (this.mouseEnabled == false){ _arg1.stopPropagation(); _arg1.stopImmediatePropagation(); return; }; _state = "up"; if (_arg1.currentTarget == this.stage){ this.hitArea.stage.removeEventListener(MouseEvent.MOUSE_UP, mouseUpHandler); this.dispatchEvent(_arg1.clone()); }; updateUserInteraction(); } override protected function updateDisabled():void{ _selected = false; if ((((_disabled == true)) && (!((_state == "disabled"))))){ _state = "disabled"; this.mouseEnabled = false; } else { if ((((_disabled == false)) && ((_state == "disabled")))){ _state = "up"; this.mouseEnabled = true; }; }; this.gotoAndStop(_state); } protected function triggerSFX(_arg1:String):void{ if (sfx != null){ sfx.gotoAndStop("off"); sfx.gotoAndStop(_arg1); }; } protected function updateUserInteraction():void{ if ((((_disabled == false)) && ((_selected == false)))){ this.gotoAndStop(_state); }; } } }//package nick.pom.bootcampblitz.smashing.buttons
Section 69
//Localization (nick.pom.bootcampblitz.smashing.localization.Localization) package nick.pom.bootcampblitz.smashing.localization { import flash.display.*; import flash.events.*; import flash.text.*; public dynamic class Localization extends MovieClip { private static const FONT_SANS:String = "_sans"; private static const FONT_SERIF:String = "_serif"; private static const FONT_TYPEWRITER:String = "_typewriter"; public static var DEBUG_REPLACE:String = "*localized*"; public static var DEBUG_MODE:Boolean = false; public static var SHARED_FONT_APPEND:String = " Embedded"; public function Localization(){ this.visible = false; this.addEventListener(Event.ADDED_TO_STAGE, addedToStageHandler); } private function addedToStageHandler(_arg1:Event):void{ var _local2:int; var _local3:*; this.removeEventListener(Event.ADDED_TO_STAGE, addedToStageHandler); _local2 = 0; while (_local2 < this.numChildren) { _local3 = this.getChildAt(_local2); if ((((_local3 is TextField)) && ((_local3.name.search(new RegExp(/(instance)([0-9]+)/)) == -1)))){ Localization.localizeTextField(_local3.name, _local3); }; _local2++; }; this.visible = true; } public static function localizeTextField(_arg1:String, _arg2:TextField):void{ var _local3:XMLList = seekNode(_arg1, _arg2); if (_local3 == null){ throw (new Error((("Localization Node by name: " + _arg1) + " could not be looked up."))); }; applyNodeToTextField(_local3, _arg2); } public static function seekNode(_arg1:String, _arg2:DisplayObject):XMLList{ var pNodeName = _arg1; var pStartClip = _arg2; var localizationNode:XMLList = new XMLList(); var clipReference:DisplayObject = pStartClip; var i:int; i = 0; while (i < 1000) { try { localizationNode = clipReference["localization"]; } catch(pError) { localizationNode = null; }; if (((!((localizationNode == null))) && ((localizationNode.hasOwnProperty(pNodeName) == true)))){ return (localizationNode[pNodeName]); }; if (clipReference.parent == null){ return (null); }; clipReference = clipReference.parent; i = (i + 1); }; return (null); } public static function applyNodeToTextField(_arg1:XMLList, _arg2:TextField):void{ var _local7:Number; var _local8:Number; var _local3:XMLList = _arg1; var _local4:TextField = _arg2; var _local5:TextFormat = _local4.defaultTextFormat; var _local6 = (_local4.type == TextFieldType.INPUT); if (DEBUG_MODE == true){ _local5.font = FONT_SANS; _local4.embedFonts = false; _local4.htmlText = DEBUG_REPLACE; return; }; _local5 = _local4.defaultTextFormat; if (_local3.hasOwnProperty("@size")){ _local5.size = Number(_local3.@size); }; if (_local3.hasOwnProperty("@x")){ _local4.x = (_local4.x + Number(_local3.@x)); }; if (_local3.hasOwnProperty("@y")){ _local4.y = (_local4.y + Number(_local3.@y)); }; if (_local6){ _local4.text = String(_local3.text()); } else { _local4.multiline = true; _local4.htmlText = String((((("<font face=\"" + _local4.defaultTextFormat.font) + "\">") + _local3.text()) + "</font>")); }; _local4.defaultTextFormat = _local5; _local4.setTextFormat(_local5); applySharedFont(_local4); if (((_local3.hasOwnProperty("@valign")) && ((_local3.@valign == "true")))){ _local7 = _local4.height; _local8 = _local4.textHeight; _local4.y = (_local4.y + (((_local7 - _local8) / 2) - (Number(_local5.size) / 4))); }; if (_local3.hasOwnProperty("@condenseWhite")){ _local4.condenseWhite = (_local3.@condenseWhite == "true"); }; } public static function applySharedFont(_arg1:TextField):void{ var _local4:int; var _local6:Font; var _local2:TextField = _arg1; var _local3:TextFormat = _local2.getTextFormat(); var _local5:Array = Font.enumerateFonts(); if ((((((_local3.font == FONT_SANS)) || ((_local3.font == FONT_SERIF)))) || ((_local3.font == FONT_TYPEWRITER)))){ return; }; _local4 = 0; while (_local4 < _local5.length) { _local6 = _local5[_local4]; if ((((_local6.fontName == (_local3.font + SHARED_FONT_APPEND))) || ((_local6.fontName == _local3.font)))){ _local3.font = _local6.fontName; _local2.embedFonts = true; _local2.setTextFormat(_local3); break; }; _local4++; }; if (Localization.DEBUG_MODE){ _local2.htmlText = " "; }; } } }//package nick.pom.bootcampblitz.smashing.localization
Section 70
//Vector2D (nick.pom.bootcampblitz.smashing.math.Vector2D) package nick.pom.bootcampblitz.smashing.math { public class Vector2D { public var x:Number; public var y:Number; public static var FULLY_QUALIFIED_CLASS_PATH:String = "nick.pom.bootcampblitz.smashing.math.Vector2D"; public function Vector2D(_arg1:Number=0, _arg2:Number=0){ x = _arg1; y = _arg2; } public function divide(_arg1:Number):void{ x = (x / _arg1); y = (y / _arg1); } public function addVector(_arg1:Vector2D):void{ x = (x + _arg1.x); y = (y + _arg1.y); } public function get length():Number{ return (Math.sqrt(((x * x) + (y * y)))); } public function zero():void{ length = 0; } public function scale(_arg1:Number):void{ x = (x * _arg1); y = (y * _arg1); } public function get fullyQualifiedClassPath():String{ return (Vector2D.FULLY_QUALIFIED_CLASS_PATH); } public function toString():String{ return (fullyQualifiedClassPath); } public function set angle(_arg1:Number):void{ var _local2:Number = length; x = (_local2 * Math.cos(_arg1)); y = (_local2 * Math.sin(_arg1)); } public function get angle():Number{ return (Math.atan2(y, x)); } public function normalize():void{ if (length > 0){ x = (x / length); y = (y / length); }; } public function subtractVector(_arg1:Vector2D):void{ x = (x - _arg1.x); y = (y - _arg1.y); } public function destroy():void{ } public function set length(_arg1:Number):void{ var _local2:Number = angle; x = (_arg1 * Math.cos(_local2)); y = (_arg1 * Math.sin(_local2)); } public function clone():Vector2D{ return (new Vector2D(x, y)); } } }//package nick.pom.bootcampblitz.smashing.math
Section 71
//Vector2DMath (nick.pom.bootcampblitz.smashing.math.Vector2DMath) package nick.pom.bootcampblitz.smashing.math { public class Vector2DMath { public static var FULLY_QUALIFIED_CLASS_PATH:String = "nick.pom.bootcampblitz.smashing.math.Vector2DMath"; public function destroy():void{ } public function get fullyQualifiedClassPath():String{ return (Vector2DMath.FULLY_QUALIFIED_CLASS_PATH); } public function toString():String{ return (fullyQualifiedClassPath); } public static function getNormalizedVector(_arg1:Vector2D):Vector2D{ var _local2:Number = (_arg1.x / _arg1.length); var _local3:Number = (_arg1.y / _arg1.length); var _local4:Vector2D = new Vector2D(_local2, _local3); return (_local4); } public static function getScaledVector(_arg1:Vector2D, _arg2:Number):Vector2D{ var _local3:Number = (_arg1.x * _arg2); var _local4:Number = (_arg1.y * _arg2); var _local5:Vector2D = new Vector2D(_local3, _local4); return (_local5); } public static function getRightPerpendicularVector(_arg1:Vector2D):Vector2D{ var _local2:Vector2D = new Vector2D(-(_arg1.y), _arg1.x); return (_local2); } public static function getDotProduct(_arg1:Vector2D, _arg2:Vector2D):Number{ return (((_arg1.x * _arg2.x) + (_arg1.y * _arg2.y))); } public static function getLeftPerpendicularVector(_arg1:Vector2D):Vector2D{ var _local2:Vector2D = new Vector2D(_arg1.y, -(_arg1.x)); return (_local2); } } }//package nick.pom.bootcampblitz.smashing.math
Section 72
//Debug (nick.pom.bootcampblitz.smashing.utils.Debug) package nick.pom.bootcampblitz.smashing.utils { import flash.events.*; import flash.net.*; public class Debug { private static function onSecurityError(_arg1:Error):void{ } private static function onStatus(_arg1:StatusEvent):void{ } public static function log(_arg1:Object):void{ var _local2:LocalConnection = new LocalConnection(); _local2.allowDomain("localhost"); _local2.addEventListener(StatusEvent.STATUS, onStatus); _local2.addEventListener(SecurityErrorEvent.SECURITY_ERROR, onSecurityError); _local2.send("_SILCtrace", "trace", _arg1.toString()); trace(_arg1); } } }//package nick.pom.bootcampblitz.smashing.utils
Section 73
//FrameUtils (nick.pom.bootcampblitz.smashing.utils.FrameUtils) package nick.pom.bootcampblitz.smashing.utils { import flash.display.*; public class FrameUtils { public static function labelToNumber(_arg1:MovieClip, _arg2:String, _arg3:Boolean=false):int{ var _local6:FrameLabel; var _local4:Array = _arg1.currentLabels; if (_arg2 == "target.min"){ return (((_arg3)==true) ? 0 : 1); } else { if (_arg2 == "target.max"){ return (((_arg3)==true) ? (_arg1.totalFrames - 1) : _arg1.totalFrames); }; }; var _local5:Number = 0; while (_local5 < _local4.length) { _local6 = _local4[_local5]; if (_local6.name == _arg2){ return (((_arg3)==true) ? (_local6.frame - 1) : _local6.frame); }; _local5++; }; return (((_arg3)==true) ? 0 : 1); } public static function addFrameLabelScript(_arg1:MovieClip, _arg2:String, _arg3:Boolean, _arg4:Function):void{ var _local5:Number = 0; if (_arg3 == true){ _local5 = FrameUtils.lastFrameInLabel(_arg1, _arg2, true); } else { _local5 = FrameUtils.labelToNumber(_arg1, _arg2, true); }; _arg1.addFrameScript(_local5, _arg4); } public static function lastFrameInLabel(_arg1:MovieClip, _arg2:String, _arg3:Boolean=false):int{ var _local8:FrameLabel; var _local4:Array = _arg1.currentLabels; var _local5:Boolean; var _local6:Number = 1; var _local7:Number = 0; while (_local7 < _local4.length) { _local8 = _local4[_local7]; if ((((_local5 == true)) && (!((_local8.name == _arg2))))){ _local6 = (_local8.frame - 1); break; } else { if (_local8.name == _arg2){ _local5 = true; _local6 = _arg1.totalFrames; }; }; _local7++; }; _local6 = ((_arg3)==true) ? (_local6 - 1) : _local6; return (_local6); } } }//package nick.pom.bootcampblitz.smashing.utils
Section 74
//MathUtils (nick.pom.bootcampblitz.smashing.utils.MathUtils) package nick.pom.bootcampblitz.smashing.utils { public class MathUtils { public static function degreesToRadians(_arg1:Number):Number{ return ((_arg1 * (Math.PI / 180))); } public static function randomRange(_arg1:Number, _arg2:Number):Number{ return ((_arg1 + Math.floor((Math.random() * ((_arg2 + 1) - _arg1))))); } public static function radiansToDegrees(_arg1:Number):Number{ return (((_arg1 * 180) / Math.PI)); } } }//package nick.pom.bootcampblitz.smashing.utils
Section 75
//Iris (nick.pom.bootcampblitz.transitions.Iris) package nick.pom.bootcampblitz.transitions { public class Iris extends Transition { public function Iris(){ addFrameScript(0, frame1, 4, frame5, 13, frame14, 19, frame20, 28, frame29); log("Class created."); } function frame14(){ stop(); introComplete(); } function frame20(){ play(); } private function outroComplete():void{ log("Outro Complete."); dispatchOutroComplete(); } private function introComplete():void{ log("Intro Complete."); dispatchIntroComplete(); } function frame5(){ play(); } function frame1(){ stop(); } function frame29(){ stop(); outroComplete(); } } }//package nick.pom.bootcampblitz.transitions
Section 76
//Transition (nick.pom.bootcampblitz.transitions.Transition) package nick.pom.bootcampblitz.transitions { import flash.display.*; import flash.events.*; import flash.utils.*; import nick.pom.bootcampblitz.smashing.utils.*; public class Transition extends MovieClip { function dispatchOutroComplete():void{ dispatchEvent(new Event(TransitionEvents.OUTRO_COMPLETE)); } public function outro():void{ log("Outro."); gotoAndPlay("outro"); } public function intro():void{ log("Intro."); gotoAndPlay("intro"); } function dispatchIntroComplete():void{ dispatchEvent(new Event(TransitionEvents.INTRO_COMPLETE)); } function log(_arg1:Object):void{ Debug.log(((getQualifiedClassName(this) + ": ") + _arg1)); } } }//package nick.pom.bootcampblitz.transitions
Section 77
//TransitionEvents (nick.pom.bootcampblitz.transitions.TransitionEvents) package nick.pom.bootcampblitz.transitions { public class TransitionEvents { public static const INTRO_COMPLETE:String = "introComplete"; public static const OUTRO_COMPLETE:String = "outroComplete"; } }//package nick.pom.bootcampblitz.transitions
Section 78
//Engine (nick.pom.bootcampblitz.Engine) package nick.pom.bootcampblitz { import flash.display.*; import flash.events.*; import nick.pom.bootcampblitz.transitions.*; import nick.pom.bootcampblitz.highscore.*; import nick.pom.bootcampblitz.screens.*; import flash.utils.*; import nick.pom.bootcampblitz.smashing.utils.*; public class Engine extends MovieClip { private var _screenController:ScreenController; public var iris:Iris; private var _now:int; private var _score:Number;// = 0 public var ui:UI; public var highScoreTable:HighScoreTable; public var moduleLoader:NickPointsScreen; private var _gameData:XMLList; public var skipIntro:Boolean; public var help:Help; private var _localizationData:XMLList; private var _timer:Timer; private var _isFirstTime:Boolean;// = true private var _highScoreData:HighScoreData; public var gameOver:GameOver; public var splash:Splash; public var intro:Intro; public var game:Game; private var _then:int; public static var CHAR:String; public function Engine(){ addFrameScript(0, frame1, 9, frame10, 20, frame21, 29, frame30); _timer = new Timer(0, 0); log("Class created."); } public function togglePause(_arg1:Boolean):void{ if (_arg1){ _timer.removeEventListener(TimerEvent.TIMER, update); _timer.stop(); if (game != null){ game.pause(); }; } else { _now = (_then = getTimer()); _timer.addEventListener(TimerEvent.TIMER, update); _timer.start(); if (game != null){ game.unpause(); }; }; } function frame30(){ stop(); initGameOver(); } public function init(_arg1:XML):void{ _localizationData = _arg1.localization; _gameData = _arg1.gameSettings; log("Inited."); _screenController = new ScreenController(); _screenController.init(this, iris, highScoreTable); _highScoreData = new HighScoreData(); _highScoreData.init(_arg1.highScore, _arg1.version); highScoreTable.init(_highScoreData); } public function get score():Number{ return (_score); } public function stopGame():void{ game.removeEventListener(GameEvents.SCORE_CHANGED, gameScoreChangedListener); game.removeEventListener(GameEvents.HEALTH_CHANGED, healthChangedListener); game.stopGame(); _highScoreData.score = _score; togglePause(true); } private function onModuleOpen(_arg1:Event):void{ log("onModuleOpen"); gameOver.disable(); } private function initGameOver():void{ _screenController.initGameOver(gameOver, _gameData); SoundController.instance.stopMusic("gameMusic"); SoundController.instance.playMusic("splashMusic", 30); checkNickPoints(); } private function onModuleOutro(_arg1:Event):void{ gameOver.enable(); } private function healthChangedListener(_arg1:GameEvents):void{ ui.setHealth(game.health); } private function initGame():void{ skipIntro = true; _screenController.initGame(game, ui); game.init(_localizationData, _gameData); if (_isFirstTime){ _isFirstTime = false; _screenController.initHelp(help, false); } else { _screenController.initHelp(help, false); }; SoundController.instance.stopMusic("splashMusic"); SoundController.instance.playMusic("gameMusic", 30); } private function gameScoreChangedListener(_arg1:GameEvents):void{ _score = (_score + _arg1.points); ui.showScore(_score); _arg1.stopImmediatePropagation(); } private function initSplash():void{ _screenController.initSplash(splash); SoundController.instance.playMusic("splashMusic", 30); } private function initIntro():void{ _screenController.initIntro(intro); } private function log(_arg1:Object):void{ Debug.log(((getQualifiedClassName(this) + ": ") + _arg1)); } private function update(_arg1:TimerEvent):void{ _then = _now; _now = getTimer(); var _local2:int = (_now - _then); var _local3:Number = (_local2 / 1000); game.update(_local3); _arg1.updateAfterEvent(); _arg1.stopImmediatePropagation(); } public function checkLoginState():void{ _highScoreData.checkLogin(); } function frame10(){ stop(); initIntro(); } private function checkNickPoints():void{ if (_highScoreData.isInternational){ return; }; var _local1:String = _gameData.nickPoints.campaignID; var _local2:Array = []; var _local3:Number = 0; var _local4:int; while (_local4 < 3) { if (_score >= Number(_gameData.nickPoints.events.event[_local4].scoreThreshold)){ if (_local3 < Number(_gameData.nickPoints.events.event[_local4].scoreThreshold)){ _local2 = []; _local2.push(_gameData.nickPoints.events.event[_local4].name); _local3 = Number(_gameData.nickPoints.events.event[_local4].scoreThreshold); }; }; _local4++; }; if ((((_local2.length > 0)) || (_gameData.nickPoints.sbpromo.hasComplexContent()))){ gameOver.disable(); moduleLoader.addEventListener("loaderError", onModuleLoadError); moduleLoader.loadNickPointModule(_gameData.nickPoints.modulePath); moduleLoader.addEventListener(ScreenEvents.OUTRO_COMPLETE, onModuleOutro); moduleLoader.addEventListener(ScreenEvents.OPEN_MODULE, onModuleOpen); moduleLoader.sendNickPoints(_local1, _local2, _gameData.nickPoints.sbpromo); }; } private function onModuleLoadError(_arg1:Event):void{ gameOver.enable(); } public function destroyNickPointModule():void{ moduleLoader.destroyModule(); } function frame1(){ stop(); initSplash(); } function frame21(){ stop(); initGame(); } public function startGame():void{ _score = 0; _highScoreData.clearSession(); ui.init(_localizationData); game.addEventListener(GameEvents.SCORE_CHANGED, gameScoreChangedListener); game.addEventListener(GameEvents.HEALTH_CHANGED, healthChangedListener); game.startGame(); togglePause(false); } } }//package nick.pom.bootcampblitz
Section 79
//Game (nick.pom.bootcampblitz.Game) package nick.pom.bootcampblitz { import flash.display.*; import flash.events.*; import flash.geom.*; import nick.pom.bootcampblitz.game.*; import flash.utils.*; import nick.pom.bootcampblitz.smashing.utils.*; public class Game extends MovieClip { private var TOTALhealth:Number;// = 15 private var _down:Boolean; private var _objectSpacing:Number; public var foreground_item:MovieClip; private var MIN_Y:Number;// = 100 private var _noObjects:Boolean; private var TIME_POINTS:Number;// = 1 private var _setY:Number; private var _lastPoint:Number;// = 0 public var trees:Wall; private var _gameData:XMLList; private var BONUS_POINTS:Number;// = 25 private var MAX_Y:Number;// = 290 private var _scrollController:ScrollController; private var _transitionSpeed:Number;// = 300 private var _currentIndex:Number; private var _up:Boolean; private var _localizationData:XMLList; private var _rect:Rectangle; private var SMASH_POINTS:Number;// = 10 private var _currentSet:Array; public var bg_item:MovieClip; public var sewer:Sewer; public var sewerPlayer:MovieClip; private var POINT_DELAY:Number;// = 2 private var _objects:Array; private var _startY:Number;// = 0 public var health:Number;// = 1 public var player:Player; private var _setY2:Number; private var _sewerY:Number;// = 380 private var _currentSet2:Array; public function Game(){ log("Class created."); _objects = []; _rect = new Rectangle(0, 0, 600, 400); this.scrollRect = _rect; } protected function popOutFromSewer(_arg1:Event):void{ player.sewerOut(); selectObject(9, player.currentPosition.y); } private function addBonus(_arg1:Event):void{ updateScore(25); } protected function initPlayer():void{ switch (Engine.CHAR){ case "skipper": player = new pom_bootcamp_player_skipper(); break; case "rico": player = new pom_bootcamp_player_rico(); break; case "kowalski": player = new pom_bootcamp_player_kowalski(); break; case "private": player = new pom_bootcamp_player_private(); break; }; player.x = 85.3; player.y = 233.3; player.init(_gameData); addChildAt(player, (this.getChildIndex(bg_item) + 1)); } public function nextObject(_arg1:Event=undefined):void{ if (_arg1){ _arg1.target.removeEventListener(GameEvents.RELEASE_OBJECT, nextObject); }; addObject(); } public function init(_arg1:XMLList, _arg2:XMLList):void{ _localizationData = _arg1; _gameData = _arg2; _objectSpacing = _arg2.game.obstacle_spacing; BONUS_POINTS = _gameData.game.bonus; TIME_POINTS = _gameData.game.time; POINT_DELAY = _gameData.game.point_interval; SMASH_POINTS = _gameData.game.smash; _scrollController = ScrollController.instance; _scrollController.init(_gameData); _scrollController.reset(); log("Inited."); initPlayer(); player.addEventListener(GameEvents.SEWER_COMPLETE, sewerComplete); sewer.addEventListener(GameEvents.BONUS, addBonus); trees.speedMultiplier = 0.1; } protected function restartObjects(_arg1:Event):void{ trace(restartObjects); sewer.removeEventListener(GameEvents.RELEASE_OBJECT, restartObjects); _noObjects = false; addObject(); } protected function newSet():void{ _currentIndex = 0; var _local1:Number = _gameData.game.sets.objectset.length(); var _local2:Number = MathUtils.randomRange(1, _local1); _currentSet = _gameData.game.sets.objectset[(_local2 - 1)].a.toString().split(","); _currentSet2 = _gameData.game.sets.objectset[(_local2 - 1)].b.toString().split(","); newY(); addObject(); } protected function sewerComplete(_arg1:Event):void{ _down = false; _transitionSpeed = 800; _up = true; sewerPlayer.gotoAndStop("off"); } protected function newY():void{ var _local1:Number; _setY = MathUtils.randomRange(MIN_Y, MAX_Y); _setY2 = (MIN_Y + (MAX_Y - _setY)); if (Math.abs((_setY - _setY2)) < 75){ _local1 = ((MAX_Y - MIN_Y) / 2); if ((_setY - MIN_Y) < _local1){ _setY2 = (_setY + _local1); } else { _setY2 = (_setY - _local1); }; }; } public function stopGame():void{ } protected function transitionDown(_arg1:Number):void{ _rect.y = (_rect.y + (_arg1 * _transitionSpeed)); if (_rect.y >= _sewerY){ _rect.y = _sewerY; _down = false; }; this.scrollRect = _rect; } protected function addObject():void{ if (_noObjects){ return; }; if (_currentIndex == 3){ newY(); }; if (_currentIndex == _currentSet.length){ newSet(); return; }; var _local1:GameObject = selectObject(_currentSet[_currentIndex], _setY); _local1.addEventListener(GameEvents.RELEASE_OBJECT, nextObject); selectObject(_currentSet2[_currentIndex], _setY2); _currentIndex++; } protected function transitionUp(_arg1:Number):void{ _rect.y = (_rect.y - (_arg1 * _transitionSpeed)); if (_rect.y <= 0){ _rect.y = 0; _up = false; sewerPlayer.gotoAndStop("off"); }; this.scrollRect = _rect; } public function update(_arg1:Number):void{ var _local2:GameObject; if (player){ player.update(_arg1); }; _scrollController.update(_arg1); if (!_scrollController.held){ for each (_local2 in _objects) { _local2.update(_arg1); }; }; _lastPoint = (_lastPoint + _arg1); if (_lastPoint > POINT_DELAY){ _lastPoint = (_lastPoint - POINT_DELAY); updateScore(TIME_POINTS); }; if (_down){ transitionDown(_arg1); }; if (_up){ transitionUp(_arg1); }; } private function addHealth(_arg1:Event):void{ if (health == 1){ return; }; if (health > 2){ health--; health--; } else { health = 1; }; var _local2:GameEvents = new GameEvents(GameEvents.HEALTH_CHANGED); dispatchEvent(_local2); } protected function selectObject(_arg1:Number, _arg2:Number):GameObject{ var _local3:GameObject; var _local4:Number; var _local5:Number; var _local6:Point; var _local7:Number; switch (_arg1){ case 0: _local3 = new bootcamp_obstacle_tires(); _local3.type = GameObject.OBSTACLE; _local3.addEventListener(GameEvents.DAMAGE, damage); break; case 1: _local3 = new bootcamp_bonus(); _local3.type = GameObject.BONUS; _local3.addEventListener(GameEvents.BONUS, addBonus); break; case 2: _local3 = new bootcamp_fish(); _local3.type = GameObject.HEALTH; _local3.addEventListener(GameEvents.HEALTH, addHealth); break; case 3: _local3 = new bootcamp_obstacle_haybale(); _local3.type = GameObject.OBSTACLE; _local3.addEventListener(GameEvents.DAMAGE, damage); break; case 4: _local3 = new bootcamp_obstacle_snowmound(); _local3.type = GameObject.OBSTACLE; _local3.addEventListener(GameEvents.DAMAGE, damage); break; case 5: _local7 = MathUtils.randomRange(0, 1); if (_local7 == 0){ _local3 = new bootcamp_snowball(); _local3.type = GameObject.SNOWBALL; } else { _local3 = new bootcamp_hole(); _local3.type = GameObject.HOLE; _local3.addEventListener(GameEvents.HOLE, showsewer); }; break; case 6: _local3 = new bootcamp_ramp(); _local3.type = GameObject.RAMP; break; case 7: _local3 = new bootcamp_bonus_elevated(); _local3.type = GameObject.BONUS_ELEVATED; _local3.addEventListener(GameEvents.BONUS, addBonus); break; case 8: _local3 = new bootcamp_fish_elevated(); _local3.type = GameObject.HEALTH_ELEVATED; _local3.addEventListener(GameEvents.HEALTH, addHealth); break; case 9: _local3 = new bootcamp_sewerHole(); _local3.type = GameObject.SEWER_EXIT; _local3.startX = player.currentPosition.x; break; default: _local3 = new bootcamp_obstacle_tires(); _local3.type = GameObject.OBSTACLE; _local3.addEventListener(GameEvents.DAMAGE, damage); break; }; _local3.player = player; _local3.game = this; _local3.nextObjectPos = _objectSpacing; _local3.addEventListener(Event.COMPLETE, removeObject); _local3.y = _arg2; addChildAt(_local3, getChildIndex(foreground_item)); _objects.push(_local3); return (_local3); } private function updateScore(_arg1:Number):void{ var _local2:GameEvents = new GameEvents(GameEvents.SCORE_CHANGED); _local2.points = _arg1; dispatchEvent(_local2); } private function damage(_arg1:Event):void{ var _local2:GameEvents; _arg1.target.removeEventListener(GameEvents.DAMAGE, damage); if (player.invuln){ updateScore(SMASH_POINTS); return; }; player.gotoAndPlay("hit"); health = (health + 3); if (health > TOTALhealth){ gameOver(); } else { _local2 = new GameEvents(GameEvents.HEALTH_CHANGED); dispatchEvent(_local2); }; } private function log(_arg1:Object):void{ Debug.log(((getQualifiedClassName(this) + ": ") + _arg1)); } public function removeObject(_arg1:Event):void{ var _local3:Number; var _local2:GameObject = (_arg1.target as GameObject); _local2.removeEventListener(Event.COMPLETE, removeObject); this.removeChild(_local2); _local3 = 0; while (_local3 < _objects.length) { if (_local2 == _objects[_local3]){ _objects.splice(_local3, 1); break; }; _local3++; }; } protected function showsewer(_arg1:Event):void{ sewerPlayer.gotoAndStop(Engine.CHAR); _transitionSpeed = 300; _down = true; _noObjects = true; sewer.addEventListener(GameEvents.SEWER_COMPLETE, popOutFromSewer); sewer.addEventListener(GameEvents.RELEASE_OBJECT, restartObjects); sewer.start(); } public function pause():void{ player.visible = false; sewerPlayer.visible = false; } public function destroy():void{ log("Destroy"); player.removeEventListener(GameEvents.SEWER_COMPLETE, sewerComplete); sewer.removeEventListener(GameEvents.BONUS, addBonus); } public function startGame():void{ newSet(); } public function unpause():void{ player.visible = true; sewerPlayer.visible = true; } private function gameOver():void{ dispatchEvent(new Event(GameEvents.GAME_OVER)); } } }//package nick.pom.bootcampblitz
Section 80
//GameEvents (nick.pom.bootcampblitz.GameEvents) package nick.pom.bootcampblitz { import flash.events.*; public class GameEvents extends Event { private var _points:Number; public static const HOLE:String = "hole"; public static const GAME_OVER:String = "gameOver"; public static const SEWER_COMPLETE:String = "sewerComplete"; public static const SCORE_CHANGED:String = "scoreChanged"; public static const DAMAGE:String = "damage"; public static const HEALTH_CHANGED:String = "healthChanged"; public static const RELEASE_OBJECT:String = "releaseObject"; public static const HEALTH:String = "health"; public static const BONUS:String = "bonus"; public function GameEvents(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false):void{ super(_arg1, _arg2, _arg3); } public function get points():Number{ return (_points); } public function set points(_arg1:Number):void{ _points = _arg1; } override public function toString():String{ return (formatToString("GameEvents", "type", "bubbles", "cancelable", "eventPhase")); } override public function clone():Event{ return (new GameEvents(type, bubbles, cancelable)); } } }//package nick.pom.bootcampblitz
Section 81
//Main (nick.pom.bootcampblitz.Main) package nick.pom.bootcampblitz { import flash.display.*; import flash.events.*; import flash.net.*; import flash.utils.*; import nick.pom.bootcampblitz.smashing.utils.*; import nick.pom.bootcampblitz.loader.*; import flash.system.*; public class Main extends MovieClip { public var engine:Engine; private var _strings:XML; public var __id5_:GamesChartAPI_AS3; public var loader:GameLoader; public var localization:XMLList; private var _config:XML; private var _urlLoader:URLLoader; private var _stringsLoader:URLLoader; public function Main(){ addFrameScript(0, frame1, 15, frame16, 23, frame24); showFlashVersion(); log("Class created."); loadConfigXML(); this.tabEnabled = false; this.tabChildren = false; __setProp___id5__Scene1_GamesChartAPI_0(); } private function loaderCompleteListener(_arg1:Event):void{ log("Game loaded."); loader.removeEventListener(LoaderEvents.LOAD_COMPLETE, loaderCompleteListener); loader.addEventListener(LoaderEvents.OUTRO_COMPLETE, loaderOutroListener); loader.outro(); } private function keyFixLoadInitListener(_arg1:Event):void{ } private function log(_arg1:Object):void{ Debug.log(((getQualifiedClassName(this) + ": ") + _arg1)); } private function loaderOutroListener(_arg1:Event):void{ loader.removeEventListener(LoaderEvents.OUTRO_COMPLETE, loaderOutroListener); trace("im going to GAME frame"); gotoAndStop("game"); } private function xmlLoadCompleteListener(_arg1:Event=null):void{ var event = _arg1; log("XML loaded."); try { _config = <config> <version> <!-- 'false' will enable high score viewing/submission. 'true' will disable high score viewing/submission. --> <isInternational>false</isInternational> </version> <highScore> <!-- Debug mode. Force user to be logged in with the username of 'DEBUG_USER'. --> <debug>false</debug> <userPath>http://www.nick.com/games/common/user_name/getUserInfo.jhtml</userPath> <scorePath>http://www.nick.com/common/score/Scoreboard.jhtml</scorePath> <serviceLink>http://www.nick.com</serviceLink> <gameID>penguins-arctic-hsb</gameID> </highScore> <gameSettings> <nickPoints> <campaignID>peng-arctic-nps</campaignID> <modulePath>http://www.nick.com/common/flash/nickpoints/NickPoints_Module_build.swf</modulePath> <!--Run the module locally when running on your machine, but swap the modulePath(s) when you deliver--> <!--modulePath>NickPoints_Module_build.swf</modulePath--> <events> <event> <name>rank_low</name> <scoreThreshold>1000</scoreThreshold> </event> <event> <name>rank_mid</name> <scoreThreshold>3000</scoreThreshold> </event> <event> <name>rank_high</name> <scoreThreshold>6000</scoreThreshold> </event> </events> <!-- Used if the game awards a Spongebob Mini-game at the end. Keep commented out when not used. --> <sbpromo> <img>SB_Promo.jpg</img> <url target='_blank'>http://www.nick.com/games/nick_games/spongebob/spongebob-geyser.jhtml</url> </sbpromo> </nickPoints> <game> <!-- how fast the scrolling accelerates --> <game_accel>4</game_accel> <game_init_speed>200</game_init_speed> <game_max_speed>800</game_max_speed> <!-- how quickly the player accelerates (up/down movement)/increasing will make the player change direction, move quicker --> <player_accel>5</player_accel> <!-- points for picking up a bonus --> <bonus>25</bonus> <!-- points for smashing an obstacle in snowball mode --> <smash>10</smash> <!-- points for time-elapsed --> <time>1</time> <!-- how often to award a time point - in seconds --> <point_interval>2</point_interval> <!-- distance between obstacles--> <obstacle_spacing>150</obstacle_spacing> <!-- obstacle sets --> <!-- 0:tires, 1:bonus, 2:health, 3:hay, 4:snow, 5:special(randomizes - hole or snowball) 6:ramp, 7:bonus_elevated, 8:fish_elevated--> <sets> <objectset> <a><![CDATA[0,1,1,4,1,1,5]]></a> <b><![CDATA[0,1,1,3,1,4,1]]></b> </objectset> <objectset> <a><![CDATA[1,1,2,0,2,5,3]]></a> <b><![CDATA[1,1,1,3,1,1,4]]></b> </objectset> <objectset> <a><![CDATA[3,1,2,0,1,4,5]]></a> <b><![CDATA[0,1,3,2,1,1,4]]></b> </objectset> <objectset> <a><![CDATA[3,1,2,0,1,4,6, 7, 8, 7, 7, 8, 7, 8, 1, 1, 1]]></a> <b><![CDATA[4,1,2,4,1,3,1, 1, 3, 2, 1, 1, 1, 1, 1, 1, 1]]></b> </objectset> </sets> </game> </gameSettings> <localization> </localization> </config> ; loadStringsXML(); } catch(e:TypeError) { log("Could not parse the XML file."); }; setContent(); } function frame16(){ stop(); trace("im in loader frame"); initGameLoader(); } function __setProp___id5__Scene1_GamesChartAPI_0(){ try { __id5_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id5_.gameKey = "e02361feebfd6f156dc2b0772528936e"; try { __id5_["componentInspectorSetting"] = false; } catch(e:Error) { }; } private function initGameLoader():void{ this.addEventListener(Event.ENTER_FRAME, onEnterFrameInitLoader); } private function setVersion():void{ Version.isInternational = false; log("This game is an international version. High score viewing and submission is DISABLED."); } private function onEnterFrameInitLoader(_arg1:Event):void{ this.removeEventListener(Event.ENTER_FRAME, onEnterFrameInitLoader); loader.addEventListener(LoaderEvents.INTRO_COMPLETE, loaderIntroListener); loader.intro(); } function frame24(){ stop(); initGame(); } private function initGame():void{ engine.init(_config); SoundController.init(); } function frame1(){ GamesChart.showTab(520, 20); stop(); } private function showFlashVersion():void{ log(((("playerType: " + Capabilities.playerType) + "version: ") + Capabilities.version)); } private function loadKeyCaptureFix():void{ } private function loaderIntroListener(_arg1:Event):void{ loader.removeEventListener(LoaderEvents.INTRO_COMPLETE, loaderIntroListener); loader.addEventListener(LoaderEvents.LOAD_COMPLETE, loaderCompleteListener); loader.init(localization); } private function loadConfigXML():void{ xmlLoadCompleteListener(); } private function setContent():void{ localization = _strings.localization; setVersion(); trace("im going to frame 16"); this.gotoAndPlay(16); } private function stringXmlLoadCompleteListener(_arg1:Event=null):void{ var event = _arg1; log("Strings XML loaded."); try { _strings = <strings> <localization> <gameover_score_header><![CDATA[Your final score is:]]></gameover_score_header> <btn_submit><![CDATA[SUBMIT SCORE]]></btn_submit> <btn_leaderboard><![CDATA[LEADERBOARD]]></btn_leaderboard> <btn_play_again><![CDATA[PLAY AGAIN]]></btn_play_again> <gameover_msg3><![CDATA[Not too bad, soldier. There is hope for you yet.]]></gameover_msg3> <gameover_msg2><![CDATA[not the success we anticipated!]]></gameover_msg2> <gameover_msg1><![CDATA[Your mission has proven impossible.]]></gameover_msg1> <btn_no><![CDATA[NO]]></btn_no> <btn_yes><![CDATA[YES]]></btn_yes> <quit_header><![CDATA[Are you sure you want to quit?]]></quit_header> <btn_quit><![CDATA[QUIT]]></btn_quit> <btn_resume><![CDATA[RESUME]]></btn_resume> <btn_help><![CDATA[HELP]]></btn_help> <btn_menu><![CDATA[MENU]]></btn_menu> <ui_score><![CDATA[SCORE:]]></ui_score> <btn_next><![CDATA[NEXT]]></btn_next> <btn_play><![CDATA[PLAY]]></btn_play> <btn_skip><![CDATA[SKIP]]></btn_skip> <btn_back><![CDATA[BACK]]></btn_back> <charSelect_private><![CDATA[Private]]></charSelect_private> <charSelect_kowalski><![CDATA[Kowalski]]></charSelect_kowalski> <charSelect_rico><![CDATA[Rico]]></charSelect_rico> <charSelect_skipper><![CDATA[Skipper]]></charSelect_skipper> <charSelect_title><![CDATA[Choose Your Player]]></charSelect_title> <help_controls><![CDATA[Use your up and down arrows keys to navigate the course.]]></help_controls> <help_team><![CDATA[Get bonus help from the team.]]></help_team> <help_hazards><![CDATA[Avoid hazards along the way.]]></help_hazards> <help_subhead><![CDATA[gET READY TO Move out, soldier, We have work to do!]]></help_subhead> <help_title><![CDATA[tRAINING DIRECTION]]></help_title> <help_bonus><![CDATA[collect medals for extra points!]]></help_bonus> <help_health><![CDATA[collect fish for extra health!]]></help_health> <intro_2c><![CDATA[I have the layout here, Come take a closer look.]]></intro_2c> <intro_2b><![CDATA[Well sir, we need to navigate this training course as fast and far as possible.]]></intro_2b> <intro_2a><![CDATA[So what's the plan?]]></intro_2a> <intro_1b><![CDATA[Kowalski, front and center!]]></intro_1b> <intro_1a><![CDATA[You guys are getting soft. We need you whipped into shape pronto.]]></intro_1a> <btn_play_now><![CDATA[PLAY NOW]]></btn_play_now> <loader_loading><![CDATA[LOADING]]></loader_loading> </localization> </strings> ; } catch(e:TypeError) { log("Could not parse the Strings XML file."); }; } private function loadStringsXML():void{ stringXmlLoadCompleteListener(); } private function keyFixLoadErrorHandler(_arg1:IOErrorEvent):void{ var _local2:LoaderInfo = LoaderInfo(_arg1.target); _local2.removeEventListener(Event.INIT, keyFixLoadInitListener); _local2.removeEventListener(IOErrorEvent.IO_ERROR, keyFixLoadErrorHandler); log(((("Could not load Key Fix. Error code: " + _arg1.type) + " - ") + _arg1.text)); } } }//package nick.pom.bootcampblitz
Section 82
//ScreenController (nick.pom.bootcampblitz.ScreenController) package nick.pom.bootcampblitz { import flash.events.*; import nick.pom.bootcampblitz.transitions.*; import nick.pom.bootcampblitz.highscore.*; import nick.pom.bootcampblitz.screens.*; import flash.utils.*; import nick.pom.bootcampblitz.screenflows.*; import nick.pom.bootcampblitz.smashing.utils.*; public class ScreenController { private var _introScreenFlow:IntroScreenFlow; private var _gameOverScreenFlow:GameOverScreenFlow; private var _splashScreenFlow:SplashScreenFlow; private var _engine:Engine; private var _inGameScreenFlow:InGameScreenFlow; private var _transition:Transition; private var _highScoreTable:HighScoreTable; public function ScreenController(){ _splashScreenFlow = new SplashScreenFlow(); _introScreenFlow = new IntroScreenFlow(); _inGameScreenFlow = new InGameScreenFlow(); _gameOverScreenFlow = new GameOverScreenFlow(); log("Class created."); } private function showIntroListener(_arg1:Event):void{ _splashScreenFlow.removeEventListener(ScreenFlowEvents.SHOW_INTRO, showIntroListener); _engine.gotoAndStop("intro"); } private function log(_arg1:Object):void{ Debug.log(((getQualifiedClassName(this) + ": ") + _arg1)); } private function startGameListener(_arg1:Event):void{ _inGameScreenFlow.removeEventListener(ScreenFlowEvents.START_GAME, startGameListener); _engine.startGame(); } public function init(_arg1:Engine, _arg2:Transition, _arg3:HighScoreTable):void{ _engine = _arg1; _transition = _arg2; _highScoreTable = _arg3; } private function resumeGameListener(_arg1:Event):void{ _engine.togglePause(false); } public function initGameOver(_arg1:GameOver, _arg2:XMLList):void{ _gameOverScreenFlow.addEventListener(ScreenFlowEvents.SHOW_GAME, gameOverShowGameListener); _gameOverScreenFlow.init(_engine, _transition, _highScoreTable, _arg1, _arg2); } public function initSplash(_arg1:Splash):void{ _splashScreenFlow.addEventListener(ScreenFlowEvents.SHOW_INTRO, showIntroListener); _splashScreenFlow.init(_engine, _transition, _highScoreTable, _arg1); } private function pauseGameListener(_arg1:Event):void{ _engine.togglePause(true); } private function showGameOverListener(_arg1:Event):void{ _inGameScreenFlow.removeEventListener(ScreenFlowEvents.SHOW_GAME_OVER, showGameOverListener); _inGameScreenFlow.removeEventListener(ScreenFlowEvents.PAUSE_GAME, pauseGameListener); _inGameScreenFlow.removeEventListener(ScreenFlowEvents.RESUME_GAME, resumeGameListener); _engine.checkLoginState(); _engine.gotoAndStop("gameOver"); } public function initGame(_arg1:Game, _arg2:UI):void{ _inGameScreenFlow.addEventListener(ScreenFlowEvents.PAUSE_GAME, pauseGameListener); _inGameScreenFlow.addEventListener(ScreenFlowEvents.RESUME_GAME, resumeGameListener); _inGameScreenFlow.addEventListener(ScreenFlowEvents.START_GAME, startGameListener); _inGameScreenFlow.addEventListener(ScreenFlowEvents.STOP_GAME, stopGameListener); _inGameScreenFlow.addEventListener(ScreenFlowEvents.SHOW_GAME_OVER, showGameOverListener); _inGameScreenFlow.init(_engine, _transition, _highScoreTable, _arg1, _arg2); } private function gameOverShowGameListener(_arg1:Event):void{ _gameOverScreenFlow.removeEventListener(ScreenFlowEvents.SHOW_GAME, gameOverShowGameListener); _engine.gotoAndStop("intro"); } private function introShowGameListener(_arg1:Event):void{ _introScreenFlow.removeEventListener(ScreenFlowEvents.SHOW_GAME, introShowGameListener); _engine.gotoAndStop("game"); } public function initHelp(_arg1:Help, _arg2:Boolean):void{ _inGameScreenFlow.initHelp(_arg1, _arg2); } private function stopGameListener(_arg1:Event):void{ _inGameScreenFlow.removeEventListener(ScreenFlowEvents.STOP_GAME, stopGameListener); _engine.stopGame(); } public function initIntro(_arg1:Intro):void{ _introScreenFlow.addEventListener(ScreenFlowEvents.SHOW_GAME, introShowGameListener); _introScreenFlow.init(_engine, _transition, _highScoreTable, _arg1); } } }//package nick.pom.bootcampblitz
Section 83
//SoundController (nick.pom.bootcampblitz.SoundController) package nick.pom.bootcampblitz { import flash.media.*; public class SoundController { private var _sounds:Object; private var _currentMusicPlayingNames:Array; private var _currentMusicPlaying:Object; private var _isMusic:Boolean;// = true public static var instance:SoundController; public function SoundController():void{ _currentMusicPlaying = new Object(); _currentMusicPlayingNames = new Array(); _sounds = new Object(); createSounds(); } public function playMusic(_arg1:String, _arg2:Number=100):SoundChannel{ if (!_isMusic){ return (null); }; var _local3:Sound = _sounds[_arg1]; var _local4:SoundChannel = _local3.play(0, 999999, null); _currentMusicPlaying[_arg1] = _local4; var _local5:Object = new Object(); _local5.name = _arg1; _local5.volume = _arg2; _currentMusicPlayingNames.push(_local5); if (_arg2 == 100){ return (_local4); }; if (_arg2 < 0){ _arg2 = 0; } else { if (_arg2 > 100){ _arg2 = 100; }; }; setVolume(_local4, _arg2); return (_local4); } private function createSounds():void{ _sounds["over"] = new nick_pom_bootcamp_sounds_over(); _sounds["down"] = new nick_pom_bootcamp_sounds_down(); _sounds["splashMusic"] = new nick_pom_bootcamp_sounds_splashMusic(); _sounds["gameMusic"] = new nick_pom_bootcamp_sounds_gameMusic(); _sounds["bootcamp_sfx_ramp"] = new bootcamp_sfx_ramp(); _sounds["bootcamp_sfx_fish"] = new bootcamp_sfx_fish(); _sounds["bootcamp_sfx_hit"] = new bootcamp_sfx_hit(); _sounds["bootcamp_sfx_manhole"] = new bootcamp_sfx_manhole(); _sounds["bootcamp_sfx_bonus"] = new bootcamp_sfx_bonus(); _sounds["bootcamp_sfx_snowball"] = new bootcamp_sfx_snowball(); _sounds["bootcamp_sfx_manhole"] = new bootcamp_sfx_manhole(); _sounds["bootcamp_sfx_manhole_exit"] = new bootcamp_sfx_manhole_exit(); } public function toggleMusic(_arg1:Boolean):void{ var _local3:Object; var _local4:Sound; var _local5:SoundChannel; var _local6:SoundChannel; _isMusic = _arg1; var _local2:Number = _currentMusicPlayingNames.length; while (_local2 > 0) { _local2--; _local3 = _currentMusicPlayingNames[_local2]; if (_arg1){ _local4 = _sounds[_local3.name]; _local5 = _local4.play(0, 999999, null); _currentMusicPlaying[_local3.name] = _local5; if (_local3.volume != 100){ setVolume(_local5, _local3.volume); }; } else { _local6 = _currentMusicPlaying[_local3.name]; _local6.stop(); _currentMusicPlaying[_local3.name] = null; }; }; } private function setVolume(_arg1:SoundChannel, _arg2:Number):void{ var _local3:SoundTransform = _arg1.soundTransform; _local3.volume = (_arg2 / 100); _arg1.soundTransform = _local3; } public function playSFX(_arg1:String, _arg2:Number=0, _arg3:Number=100):SoundChannel{ var _local4:Sound = _sounds[_arg1]; var _local5:SoundChannel = _local4.play(0, _arg2, null); if (_arg3 == 100){ return (_local5); }; if (_arg3 < 0){ _arg3 = 0; } else { if (_arg3 > 100){ _arg3 = 100; }; }; var _local6:SoundTransform = _local5.soundTransform; _local6.volume = (_arg3 / 100); _local5.soundTransform = _local6; return (_local5); } public function stopMusic(_arg1:String):void{ if (!_isMusic){ return; }; var _local2:SoundChannel = _currentMusicPlaying[_arg1]; if (_local2 == null){ return; }; _local2.stop(); _currentMusicPlaying[_arg1] = null; var _local3:Number = _currentMusicPlayingNames.length; while (_local3 > 0) { _local3--; if (_currentMusicPlayingNames[_local3].name == _arg1){ _currentMusicPlayingNames.splice(_local3, 1); }; }; } public function get isMusic():Boolean{ return (_isMusic); } public static function init():void{ instance = new (SoundController); } } }//package nick.pom.bootcampblitz
Section 84
//UI (nick.pom.bootcampblitz.UI) package nick.pom.bootcampblitz { import flash.display.*; import flash.events.*; import flash.text.*; import flash.utils.*; import nick.pom.bootcampblitz.smashing.utils.*; import nick.pom.bootcampblitz.menu.*; import nick.pom.bootcampblitz.smashing.buttons.*; public class UI extends MovieClip { private var _localizationData:XMLList; public var healthMeter:MovieClip; public var score:TextField; public var char:MovieClip; public var musicToggle:MovieClip; public var menu:Menu; public var quitConfirmation:MenuQuitConfirmation; public var menuBtn:StandardButton; public function UI(){ log("Class created."); addEventListener(Event.ADDED_TO_STAGE, addedToStageHandler); } private function menuOutroListener(_arg1:Event):void{ menu.removeEventListener(MenuEvents.OUTRO_COMPLETE, menuOutroListener); dispatchEvent(new Event(UIEvents.MENU_CLOSED)); setMenuBtn(); } private function setMuteBtn():void{ var _local1:Boolean = SoundController.instance.isMusic; musicToggle.disabled = false; musicToggle.addEventListener(MouseEvent.CLICK, mouseClickMuteListener); if (_local1){ musicToggle.gotoAndStop("on"); } else { musicToggle.gotoAndStop("off"); }; } private function resetHealthMeter():void{ healthMeter.gotoAndStop(1); } private function menuResumeListener(_arg1:Event):void{ clearMenuListeners(); menu.addEventListener(MenuEvents.OUTRO_COMPLETE, menuOutroListener); menu.outro(); } private function log(_arg1:Object):void{ Debug.log(((getQualifiedClassName(this) + ": ") + _arg1)); } public function onHelpClosed():void{ setMenuBtn(); } public function init(_arg1:XMLList):void{ _localizationData = _arg1; log("Inited."); setMenuBtn(); setMuteBtn(); resetHealthMeter(); } private function clearMenuListeners():void{ menu.removeEventListener(MenuEvents.RESUME, menuResumeListener); menu.removeEventListener(MenuEvents.HELP, menuHelpListener); menu.removeEventListener(MenuEvents.QUIT, menuQuitListener); menu.removeEventListener(MenuEvents.MUSIC, menuMusicListener); } private function menuHelpListener(_arg1:Event):void{ menu.outro(); dispatchEvent(new Event(UIEvents.HELP)); } public function showScore(_arg1:Number):void{ score.text = String(_arg1); } private function quitConfirmationOutroListener(_arg1:Event):void{ quitConfirmation.removeEventListener(MenuEvents.OUTRO_COMPLETE, quitConfirmationOutroListener); menu.activate(); } private function setMenuListeners():void{ menu.addEventListener(MenuEvents.RESUME, menuResumeListener); menu.addEventListener(MenuEvents.HELP, menuHelpListener); menu.addEventListener(MenuEvents.QUIT, menuQuitListener); menu.addEventListener(MenuEvents.MUSIC, menuMusicListener); } private function menuIntroListener(_arg1:Event):void{ menu.addEventListener(MenuEvents.INTRO_COMPLETE, menuIntroListener); setMenuListeners(); } private function menuQuitListener(_arg1:Event):void{ menu.deactivate(); quitConfirmation.addEventListener(MenuEvents.INTRO_COMPLETE, quitConfirmationIntroListener); quitConfirmation.intro(); } public function setHealth(_arg1:Number):void{ healthMeter.gotoAndStop(_arg1); } protected function addedToStageHandler(_arg1:Event):void{ removeEventListener(Event.ADDED_TO_STAGE, addedToStageHandler); char.gotoAndStop(Engine.CHAR); } private function menuMusicListener(_arg1:Event):void{ } private function quitConfirmationConfirmedListener(_arg1:Event):void{ quitConfirmation.removeEventListener(MenuEvents.CONFIRMED_QUIT, quitConfirmationConfirmedListener); quitConfirmation.removeEventListener(MenuEvents.CANCELED_QUIT, quitConfirmationCanceledListener); clearMenuListeners(); dispatchEvent(new Event(UIEvents.QUIT)); } private function mouseClickMuteListener(_arg1:MouseEvent):void{ var _local2:Boolean = SoundController.instance.isMusic; if (_local2){ SoundController.instance.toggleMusic(false); musicToggle.gotoAndStop("off"); } else { SoundController.instance.toggleMusic(true); musicToggle.gotoAndStop("on"); }; } private function quitConfirmationCanceledListener(_arg1:Event):void{ quitConfirmation.removeEventListener(MenuEvents.CONFIRMED_QUIT, quitConfirmationConfirmedListener); quitConfirmation.removeEventListener(MenuEvents.CANCELED_QUIT, quitConfirmationCanceledListener); quitConfirmation.addEventListener(MenuEvents.OUTRO_COMPLETE, quitConfirmationOutroListener); quitConfirmation.outro(); } private function mouseClickMenuListener(_arg1:MouseEvent):void{ menuBtn.removeEventListener(MouseEvent.CLICK, mouseClickMenuListener); menuBtn.disabled = true; dispatchEvent(new Event(UIEvents.MENU_OPENED)); menu.addEventListener(MenuEvents.INTRO_COMPLETE, menuIntroListener); menu.intro(); } private function setMenuBtn():void{ menuBtn.disabled = false; menuBtn.addEventListener(MouseEvent.CLICK, mouseClickMenuListener); } private function quitConfirmationIntroListener(_arg1:Event):void{ quitConfirmation.removeEventListener(MenuEvents.INTRO_COMPLETE, quitConfirmationIntroListener); quitConfirmation.addEventListener(MenuEvents.CONFIRMED_QUIT, quitConfirmationConfirmedListener); quitConfirmation.addEventListener(MenuEvents.CANCELED_QUIT, quitConfirmationCanceledListener); } } }//package nick.pom.bootcampblitz
Section 85
//UIEvents (nick.pom.bootcampblitz.UIEvents) package nick.pom.bootcampblitz { public class UIEvents { public static const HELP:String = "help"; public static const MENU_OPENED:String = "menuOpened"; public static const MENU_CLOSED:String = "menuClosed"; public static const QUIT:String = "quit"; } }//package nick.pom.bootcampblitz
Section 86
//Version (nick.pom.bootcampblitz.Version) package nick.pom.bootcampblitz { public class Version { private static var _isInternational:Boolean = false; public static function set isInternational(_arg1:Boolean):void{ _isInternational = _arg1; } public static function get isInternational():Boolean{ return (_isInternational); } } }//package nick.pom.bootcampblitz
Section 87
//_grayOut_241 (penguins_fla._grayOut_241) package penguins_fla { import flash.display.*; public dynamic class _grayOut_241 extends MovieClip { public function _grayOut_241(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package penguins_fla
Section 88
//_sewerPlayer_187 (penguins_fla._sewerPlayer_187) package penguins_fla { import flash.display.*; public dynamic class _sewerPlayer_187 extends MovieClip { public function _sewerPlayer_187(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package penguins_fla
Section 89
//ani_skipperEyes_93 (penguins_fla.ani_skipperEyes_93) package penguins_fla { import flash.display.*; public dynamic class ani_skipperEyes_93 extends MovieClip { public function ani_skipperEyes_93(){ addFrameScript(45, frame46); } function frame46(){ stop(); } } }//package penguins_fla
Section 90
//bg_btns_gameOverScreen_243 (penguins_fla.bg_btns_gameOverScreen_243) package penguins_fla { import flash.display.*; public dynamic class bg_btns_gameOverScreen_243 extends MovieClip { public function bg_btns_gameOverScreen_243(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package penguins_fla
Section 91
//bg_help_95 (penguins_fla.bg_help_95) package penguins_fla { import flash.display.*; public dynamic class bg_help_95 extends MovieClip { public function bg_help_95(){ addFrameScript(30, frame31); } function frame31(){ stop(); } } }//package penguins_fla
Section 92
//btn_sfx_26 (penguins_fla.btn_sfx_26) package penguins_fla { import flash.display.*; import flash.events.*; import flash.geom.*; import flash.net.*; import flash.media.*; import flash.text.*; import flash.utils.*; import flash.accessibility.*; import flash.system.*; import flash.ui.*; import flash.external.*; import adobe.utils.*; import flash.errors.*; import flash.filters.*; import flash.printing.*; import flash.profiler.*; import flash.sampler.*; import flash.xml.*; public dynamic class btn_sfx_26 extends MovieClip { public var __setPropDict:Dictionary; public var __id4_:PlaySound; public function btn_sfx_26(){ __setPropDict = new Dictionary(true); super(); addFrameScript(0, frame1, 20, frame21, 21, frame22, 22, frame23, 23, frame24, 24, frame25, 25, frame26, 26, frame27, 27, frame28, 28, frame29, 29, frame30, 30, frame31, 31, frame32, 32, frame33, 33, frame34, 34, frame35, 35, frame36, 36, frame37, 37, frame38, 38, frame39, 39, frame40); } function frame30(){ if ((((__setPropDict[__id4_] == undefined)) || (!((((int(__setPropDict[__id4_]) >= 21)) && ((int(__setPropDict[__id4_]) <= 30))))))){ __setPropDict[__id4_] = currentFrame; __setProp___id4__btn_sfx_sfx_20(); }; } function frame31(){ if ((((__setPropDict[__id4_] == undefined)) || (!((((int(__setPropDict[__id4_]) >= 31)) && ((int(__setPropDict[__id4_]) <= 40))))))){ __setPropDict[__id4_] = currentFrame; __setProp___id4__btn_sfx_sfx_30(); }; } function frame32(){ if ((((__setPropDict[__id4_] == undefined)) || (!((((int(__setPropDict[__id4_]) >= 31)) && ((int(__setPropDict[__id4_]) <= 40))))))){ __setPropDict[__id4_] = currentFrame; __setProp___id4__btn_sfx_sfx_30(); }; } function frame33(){ if ((((__setPropDict[__id4_] == undefined)) || (!((((int(__setPropDict[__id4_]) >= 31)) && ((int(__setPropDict[__id4_]) <= 40))))))){ __setPropDict[__id4_] = currentFrame; __setProp___id4__btn_sfx_sfx_30(); }; } function frame34(){ if ((((__setPropDict[__id4_] == undefined)) || (!((((int(__setPropDict[__id4_]) >= 31)) && ((int(__setPropDict[__id4_]) <= 40))))))){ __setPropDict[__id4_] = currentFrame; __setProp___id4__btn_sfx_sfx_30(); }; } function frame35(){ if ((((__setPropDict[__id4_] == undefined)) || (!((((int(__setPropDict[__id4_]) >= 31)) && ((int(__setPropDict[__id4_]) <= 40))))))){ __setPropDict[__id4_] = currentFrame; __setProp___id4__btn_sfx_sfx_30(); }; } function frame36(){ if ((((__setPropDict[__id4_] == undefined)) || (!((((int(__setPropDict[__id4_]) >= 31)) && ((int(__setPropDict[__id4_]) <= 40))))))){ __setPropDict[__id4_] = currentFrame; __setProp___id4__btn_sfx_sfx_30(); }; } function frame37(){ if ((((__setPropDict[__id4_] == undefined)) || (!((((int(__setPropDict[__id4_]) >= 31)) && ((int(__setPropDict[__id4_]) <= 40))))))){ __setPropDict[__id4_] = currentFrame; __setProp___id4__btn_sfx_sfx_30(); }; } function frame38(){ if ((((__setPropDict[__id4_] == undefined)) || (!((((int(__setPropDict[__id4_]) >= 31)) && ((int(__setPropDict[__id4_]) <= 40))))))){ __setPropDict[__id4_] = currentFrame; __setProp___id4__btn_sfx_sfx_30(); }; } function __setProp___id4__btn_sfx_sfx_30(){ try { __id4_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id4_.soundID = "down_global"; __id4_.loops = 0; __id4_.soundPan = 0; __id4_.startTime = 0; __id4_.soundVolume = 1; try { __id4_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame39(){ if ((((__setPropDict[__id4_] == undefined)) || (!((((int(__setPropDict[__id4_]) >= 31)) && ((int(__setPropDict[__id4_]) <= 40))))))){ __setPropDict[__id4_] = currentFrame; __setProp___id4__btn_sfx_sfx_30(); }; } function frame1(){ this.stop(); } function frame40(){ if ((((__setPropDict[__id4_] == undefined)) || (!((((int(__setPropDict[__id4_]) >= 31)) && ((int(__setPropDict[__id4_]) <= 40))))))){ __setPropDict[__id4_] = currentFrame; __setProp___id4__btn_sfx_sfx_30(); }; } function frame21(){ if ((((__setPropDict[__id4_] == undefined)) || (!((((int(__setPropDict[__id4_]) >= 21)) && ((int(__setPropDict[__id4_]) <= 30))))))){ __setPropDict[__id4_] = currentFrame; __setProp___id4__btn_sfx_sfx_20(); }; } function frame22(){ if ((((__setPropDict[__id4_] == undefined)) || (!((((int(__setPropDict[__id4_]) >= 21)) && ((int(__setPropDict[__id4_]) <= 30))))))){ __setPropDict[__id4_] = currentFrame; __setProp___id4__btn_sfx_sfx_20(); }; } function frame23(){ if ((((__setPropDict[__id4_] == undefined)) || (!((((int(__setPropDict[__id4_]) >= 21)) && ((int(__setPropDict[__id4_]) <= 30))))))){ __setPropDict[__id4_] = currentFrame; __setProp___id4__btn_sfx_sfx_20(); }; } function frame24(){ if ((((__setPropDict[__id4_] == undefined)) || (!((((int(__setPropDict[__id4_]) >= 21)) && ((int(__setPropDict[__id4_]) <= 30))))))){ __setPropDict[__id4_] = currentFrame; __setProp___id4__btn_sfx_sfx_20(); }; } function frame25(){ if ((((__setPropDict[__id4_] == undefined)) || (!((((int(__setPropDict[__id4_]) >= 21)) && ((int(__setPropDict[__id4_]) <= 30))))))){ __setPropDict[__id4_] = currentFrame; __setProp___id4__btn_sfx_sfx_20(); }; } function frame26(){ if ((((__setPropDict[__id4_] == undefined)) || (!((((int(__setPropDict[__id4_]) >= 21)) && ((int(__setPropDict[__id4_]) <= 30))))))){ __setPropDict[__id4_] = currentFrame; __setProp___id4__btn_sfx_sfx_20(); }; } function frame27(){ if ((((__setPropDict[__id4_] == undefined)) || (!((((int(__setPropDict[__id4_]) >= 21)) && ((int(__setPropDict[__id4_]) <= 30))))))){ __setPropDict[__id4_] = currentFrame; __setProp___id4__btn_sfx_sfx_20(); }; } function frame28(){ if ((((__setPropDict[__id4_] == undefined)) || (!((((int(__setPropDict[__id4_]) >= 21)) && ((int(__setPropDict[__id4_]) <= 30))))))){ __setPropDict[__id4_] = currentFrame; __setProp___id4__btn_sfx_sfx_20(); }; } function frame29(){ if ((((__setPropDict[__id4_] == undefined)) || (!((((int(__setPropDict[__id4_]) >= 21)) && ((int(__setPropDict[__id4_]) <= 30))))))){ __setPropDict[__id4_] = currentFrame; __setProp___id4__btn_sfx_sfx_20(); }; } function __setProp___id4__btn_sfx_sfx_20(){ try { __id4_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id4_.soundID = "over_global"; __id4_.loops = 0; __id4_.soundPan = 0; __id4_.startTime = 0; __id4_.soundVolume = 0.7; try { __id4_["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package penguins_fla
Section 93
//bubblePop_191 (penguins_fla.bubblePop_191) package penguins_fla { import flash.display.*; public dynamic class bubblePop_191 extends MovieClip { public function bubblePop_191(){ addFrameScript(2, frame3); } function frame3(){ stop(); } } }//package penguins_fla
Section 94
//char_Kowalski_spin_151 (penguins_fla.char_Kowalski_spin_151) package penguins_fla { import flash.display.*; public dynamic class char_Kowalski_spin_151 extends MovieClip { public function char_Kowalski_spin_151(){ addFrameScript(5, frame6); } function frame6(){ stop(); } } }//package penguins_fla
Section 95
//char_Private_spin_144 (penguins_fla.char_Private_spin_144) package penguins_fla { import flash.display.*; public dynamic class char_Private_spin_144 extends MovieClip { public function char_Private_spin_144(){ addFrameScript(5, frame6); } function frame6(){ stop(); } } }//package penguins_fla
Section 96
//char_Rico_spin_155 (penguins_fla.char_Rico_spin_155) package penguins_fla { import flash.display.*; public dynamic class char_Rico_spin_155 extends MovieClip { public function char_Rico_spin_155(){ addFrameScript(5, frame6); } function frame6(){ stop(); } } }//package penguins_fla
Section 97
//char_Skipper_spin_161 (penguins_fla.char_Skipper_spin_161) package penguins_fla { import flash.display.*; public dynamic class char_Skipper_spin_161 extends MovieClip { public function char_Skipper_spin_161(){ addFrameScript(5, frame6); } function frame6(){ stop(); } } }//package penguins_fla
Section 98
//hole_characters_280 (penguins_fla.hole_characters_280) package penguins_fla { import flash.display.*; public dynamic class hole_characters_280 extends MovieClip { public function hole_characters_280(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package penguins_fla
Section 99
//intro_page1_63 (penguins_fla.intro_page1_63) package penguins_fla { import flash.display.*; public dynamic class intro_page1_63 extends MovieClip { public function intro_page1_63(){ addFrameScript(58, frame59); } function frame59(){ stop(); } } }//package penguins_fla
Section 100
//intro_page2_84 (penguins_fla.intro_page2_84) package penguins_fla { import flash.display.*; public dynamic class intro_page2_84 extends MovieClip { public function intro_page2_84(){ addFrameScript(210, frame211); } function frame211(){ stop(); } } }//package penguins_fla
Section 101
//loaderProgressClip_3 (penguins_fla.loaderProgressClip_3) package penguins_fla { import flash.display.*; import flash.events.*; public dynamic class loaderProgressClip_3 extends MovieClip { public var skip_button:SimpleButton; public function loaderProgressClip_3(){ addFrameScript(0, frame1, 99, frame100); } function frame1(){ stop(); } function frame100(){ skip_button.addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent){ (parent as MovieClip).play(); }); } } }//package penguins_fla
Section 102
//musicToggle_31 (penguins_fla.musicToggle_31) package penguins_fla { import flash.display.*; public dynamic class musicToggle_31 extends MovieClip { public function musicToggle_31(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package penguins_fla
Section 103
//ramp_characters_286 (penguins_fla.ramp_characters_286) package penguins_fla { import flash.display.*; public dynamic class ramp_characters_286 extends MovieClip { public function ramp_characters_286(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package penguins_fla
Section 104
//snowball_characters_288 (penguins_fla.snowball_characters_288) package penguins_fla { import flash.display.*; public dynamic class snowball_characters_288 extends MovieClip { public function snowball_characters_288(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package penguins_fla
Section 105
//snowball_runaway_266 (penguins_fla.snowball_runaway_266) package penguins_fla { import flash.display.*; public dynamic class snowball_runaway_266 extends MovieClip { public function snowball_runaway_266(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package penguins_fla
Section 106
//soundContainer_250 (penguins_fla.soundContainer_250) package penguins_fla { import flash.display.*; public dynamic class soundContainer_250 extends MovieClip { public function soundContainer_250(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package penguins_fla
Section 107
//PlaySound (smashing.sound.PlaySound) package smashing.sound { import flash.display.*; import flash.events.*; import flash.media.*; import flash.utils.*; import flash.system.*; public class PlaySound extends MovieClip { private var __soundVolume:Number;// = 1 private var __sound:Sound; private var __applicationDomain:ApplicationDomain; private var __soundID:String; private var __class:Class; private var __soundLoops:Number;// = 0 private var __componentInspectorSetting:Boolean; private var __soundStartTime:Number;// = 0 private var __soundPan:Number;// = 0 private var __soundTransform:SoundTransform; public function PlaySound():void{ __applicationDomain = ApplicationDomain.currentDomain; __soundVolume = 1; __soundPan = 0; __soundStartTime = 0; __soundLoops = 0; super(); addEventListener(Event.ADDED_TO_STAGE, addedToStage); visible = false; stop(); } public function set componentInspectorSetting(_arg1:Boolean):void{ __componentInspectorSetting = _arg1; if (_arg1 == false){ playSound(); }; } public function set soundVolume(_arg1:Number):void{ __soundVolume = (Math.round((_arg1 * 10)) / 10); } public function set soundPan(_arg1:Number):void{ __soundPan = _arg1; } private function addedToStage(_arg1:Event):void{ visible = false; } private function playSound(_arg1:Event=null):void{ if (Capabilities.playerType == "PlugIn"){ }; if (__applicationDomain.hasDefinition(__soundID)){ __class = (__applicationDomain.getDefinition(__soundID) as Class); __sound = new __class(); __soundTransform = new SoundTransform(__soundVolume, __soundPan); __sound.play(__soundStartTime, __soundLoops, __soundTransform); } else { if (Capabilities.playerType == "PlugIn"){ trace(((((getQualifiedClassName(this) + " playSound():: Cannot create a sound with the id: ") + __soundID) + " in ") + getQualifiedClassName(this.parent))); }; }; } public function set startTime(_arg1:Number):void{ __soundStartTime = _arg1; } public function set soundID(_arg1:String):void{ __soundID = _arg1; } public function set loops(_arg1:Number):void{ __soundLoops = _arg1; } } }//package smashing.sound
Section 108
//_wall (_wall) package { import nick.pom.bootcampblitz.game.*; public dynamic class _wall extends Wall { } }//package
Section 109
//bg_scroll (bg_scroll) package { import nick.pom.bootcampblitz.game.*; public dynamic class bg_scroll extends Wall { } }//package
Section 110
//bootcamp_bonus (bootcamp_bonus) package { import nick.pom.bootcampblitz.game.*; public dynamic class bootcamp_bonus extends GameObject { public function bootcamp_bonus(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 111
//bootcamp_bonus_elevated (bootcamp_bonus_elevated) package { import nick.pom.bootcampblitz.game.*; public dynamic class bootcamp_bonus_elevated extends GameObject { public function bootcamp_bonus_elevated(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 112
//bootcamp_fish (bootcamp_fish) package { import nick.pom.bootcampblitz.game.*; public dynamic class bootcamp_fish extends GameObject { public function bootcamp_fish(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 113
//bootcamp_fish_elevated (bootcamp_fish_elevated) package { import nick.pom.bootcampblitz.game.*; public dynamic class bootcamp_fish_elevated extends GameObject { public function bootcamp_fish_elevated(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 114
//bootcamp_hole (bootcamp_hole) package { import nick.pom.bootcampblitz.game.*; public dynamic class bootcamp_hole extends GameObject { } }//package
Section 115
//bootcamp_obstacle_haybale (bootcamp_obstacle_haybale) package { import nick.pom.bootcampblitz.game.*; public dynamic class bootcamp_obstacle_haybale extends GameObject { public function bootcamp_obstacle_haybale(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 116
//bootcamp_obstacle_snowmound (bootcamp_obstacle_snowmound) package { import nick.pom.bootcampblitz.game.*; public dynamic class bootcamp_obstacle_snowmound extends GameObject { public function bootcamp_obstacle_snowmound(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 117
//bootcamp_obstacle_tires (bootcamp_obstacle_tires) package { import nick.pom.bootcampblitz.game.*; public dynamic class bootcamp_obstacle_tires extends GameObject { public function bootcamp_obstacle_tires(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 118
//bootcamp_ramp (bootcamp_ramp) package { import nick.pom.bootcampblitz.game.*; public dynamic class bootcamp_ramp extends GameObject { } }//package
Section 119
//bootcamp_sewerHole (bootcamp_sewerHole) package { import nick.pom.bootcampblitz.game.*; public dynamic class bootcamp_sewerHole extends GameObject { } }//package
Section 120
//bootcamp_sfx_bonus (bootcamp_sfx_bonus) package { import flash.media.*; public dynamic class bootcamp_sfx_bonus extends Sound { } }//package
Section 121
//bootcamp_sfx_fish (bootcamp_sfx_fish) package { import flash.media.*; public dynamic class bootcamp_sfx_fish extends Sound { } }//package
Section 122
//bootcamp_sfx_hit (bootcamp_sfx_hit) package { import flash.media.*; public dynamic class bootcamp_sfx_hit extends Sound { } }//package
Section 123
//bootcamp_sfx_manhole (bootcamp_sfx_manhole) package { import flash.media.*; public dynamic class bootcamp_sfx_manhole extends Sound { } }//package
Section 124
//bootcamp_sfx_manhole_exit (bootcamp_sfx_manhole_exit) package { import flash.media.*; public dynamic class bootcamp_sfx_manhole_exit extends Sound { } }//package
Section 125
//bootcamp_sfx_ramp (bootcamp_sfx_ramp) package { import flash.media.*; public dynamic class bootcamp_sfx_ramp extends Sound { } }//package
Section 126
//bootcamp_sfx_snowball (bootcamp_sfx_snowball) package { import flash.media.*; public dynamic class bootcamp_sfx_snowball extends Sound { } }//package
Section 127
//bootcamp_snowball (bootcamp_snowball) package { import nick.pom.bootcampblitz.game.*; public dynamic class bootcamp_snowball extends GameObject { public function bootcamp_snowball(){ addFrameScript(0, frame1, 13, frame14); } function frame14(){ stop(); } function frame1(){ stop(); } } }//package
Section 128
//btn_back (btn_back) package { import nick.pom.bootcampblitz.smashing.buttons.*; public dynamic class btn_back extends StandardButton { public function btn_back(){ addFrameScript(0, frame1); } function frame1(){ this.stop(); } } }//package
Section 129
//btn_backcopy (btn_backcopy) package { import nick.pom.bootcampblitz.smashing.buttons.*; public dynamic class btn_backcopy extends StandardButton { public function btn_backcopy(){ addFrameScript(0, frame1); } function frame1(){ this.stop(); } } }//package
Section 130
//btn_close (btn_close) package { import nick.pom.bootcampblitz.smashing.buttons.*; public dynamic class btn_close extends StandardButton { public function btn_close(){ addFrameScript(0, frame1); } function frame1(){ this.stop(); } } }//package
Section 131
//btn_help (btn_help) package { import nick.pom.bootcampblitz.smashing.buttons.*; public dynamic class btn_help extends StandardButton { public function btn_help(){ addFrameScript(0, frame1); } function frame1(){ this.stop(); } } }//package
Section 132
//btn_menu (btn_menu) package { import nick.pom.bootcampblitz.smashing.buttons.*; public dynamic class btn_menu extends StandardButton { public function btn_menu(){ addFrameScript(0, frame1); } function frame1(){ this.stop(); } } }//package
Section 133
//btn_music_off (btn_music_off) package { import nick.pom.bootcampblitz.smashing.buttons.*; public dynamic class btn_music_off extends StandardButton { public function btn_music_off(){ addFrameScript(0, frame1); } function frame1(){ this.stop(); } } }//package
Section 134
//btn_music_on (btn_music_on) package { import nick.pom.bootcampblitz.smashing.buttons.*; public dynamic class btn_music_on extends StandardButton { public function btn_music_on(){ addFrameScript(0, frame1); } function frame1(){ this.stop(); } } }//package
Section 135
//btn_no (btn_no) package { import nick.pom.bootcampblitz.smashing.buttons.*; public dynamic class btn_no extends StandardButton { public function btn_no(){ addFrameScript(0, frame1); } function frame1(){ this.stop(); } } }//package
Section 136
//btn_play (btn_play) package { import nick.pom.bootcampblitz.smashing.buttons.*; public dynamic class btn_play extends StandardButton { public function btn_play(){ addFrameScript(0, frame1); } function frame1(){ this.stop(); } } }//package
Section 137
//btn_play_again (btn_play_again) package { import nick.pom.bootcampblitz.smashing.buttons.*; public dynamic class btn_play_again extends StandardButton { public function btn_play_again(){ addFrameScript(0, frame1); } function frame1(){ this.stop(); } } }//package
Section 138
//btn_play02 (btn_play02) package { import nick.pom.bootcampblitz.smashing.buttons.*; public dynamic class btn_play02 extends StandardButton { public function btn_play02(){ addFrameScript(0, frame1); } function frame1(){ this.stop(); } } }//package
Section 139
//btn_playAgain (btn_playAgain) package { import nick.pom.bootcampblitz.smashing.buttons.*; public dynamic class btn_playAgain extends StandardButton { public function btn_playAgain(){ addFrameScript(0, frame1); } function frame1(){ this.stop(); } } }//package
Section 140
//btn_playcopy (btn_playcopy) package { import nick.pom.bootcampblitz.smashing.buttons.*; public dynamic class btn_playcopy extends StandardButton { public function btn_playcopy(){ addFrameScript(0, frame1); } function frame1(){ this.stop(); } } }//package
Section 141
//btn_quit (btn_quit) package { import nick.pom.bootcampblitz.smashing.buttons.*; public dynamic class btn_quit extends StandardButton { public function btn_quit(){ addFrameScript(0, frame1); } function frame1(){ this.stop(); } } }//package
Section 142
//btn_resume (btn_resume) package { import nick.pom.bootcampblitz.smashing.buttons.*; public dynamic class btn_resume extends StandardButton { public function btn_resume(){ addFrameScript(0, frame1); } function frame1(){ this.stop(); } } }//package
Section 143
//btn_select_kowalski (btn_select_kowalski) package { import flash.display.*; import flash.events.*; import flash.geom.*; import flash.net.*; import flash.media.*; import flash.text.*; import flash.utils.*; import nick.pom.bootcampblitz.smashing.buttons.*; import flash.accessibility.*; import flash.system.*; import flash.ui.*; import flash.external.*; import adobe.utils.*; import flash.errors.*; import flash.filters.*; import flash.printing.*; import flash.profiler.*; import flash.sampler.*; import flash.xml.*; public dynamic class btn_select_kowalski extends StandardButton { public var __setPropDict:Dictionary; public var __id2_:PlaySound; public function btn_select_kowalski(){ __setPropDict = new Dictionary(true); super(); addFrameScript(0, frame1, 10, frame11, 11, frame12, 12, frame13, 13, frame14, 14, frame15, 15, frame16, 16, frame17, 17, frame18, 18, frame19, 19, frame20, 20, frame21, 21, frame22, 22, frame23, 23, frame24, 24, frame25, 25, frame26, 26, frame27, 27, frame28, 28, frame29, 29, frame30); } function __setProp___id2__btn_select_kowalski_sfx_10(){ try { __id2_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id2_.soundID = "over_char"; __id2_.loops = 0; __id2_.soundPan = 0; __id2_.startTime = 0; __id2_.soundVolume = 1; try { __id2_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame30(){ if ((((__setPropDict[__id2_] == undefined)) || (!((((int(__setPropDict[__id2_]) >= 21)) && ((int(__setPropDict[__id2_]) <= 30))))))){ __setPropDict[__id2_] = currentFrame; __setProp___id2__btn_select_kowalski_sfx_20(); }; } function frame11(){ if ((((__setPropDict[__id2_] == undefined)) || (!((((int(__setPropDict[__id2_]) >= 11)) && ((int(__setPropDict[__id2_]) <= 20))))))){ __setPropDict[__id2_] = currentFrame; __setProp___id2__btn_select_kowalski_sfx_10(); }; } function frame12(){ if ((((__setPropDict[__id2_] == undefined)) || (!((((int(__setPropDict[__id2_]) >= 11)) && ((int(__setPropDict[__id2_]) <= 20))))))){ __setPropDict[__id2_] = currentFrame; __setProp___id2__btn_select_kowalski_sfx_10(); }; } function frame13(){ if ((((__setPropDict[__id2_] == undefined)) || (!((((int(__setPropDict[__id2_]) >= 11)) && ((int(__setPropDict[__id2_]) <= 20))))))){ __setPropDict[__id2_] = currentFrame; __setProp___id2__btn_select_kowalski_sfx_10(); }; } function frame15(){ if ((((__setPropDict[__id2_] == undefined)) || (!((((int(__setPropDict[__id2_]) >= 11)) && ((int(__setPropDict[__id2_]) <= 20))))))){ __setPropDict[__id2_] = currentFrame; __setProp___id2__btn_select_kowalski_sfx_10(); }; } function frame16(){ if ((((__setPropDict[__id2_] == undefined)) || (!((((int(__setPropDict[__id2_]) >= 11)) && ((int(__setPropDict[__id2_]) <= 20))))))){ __setPropDict[__id2_] = currentFrame; __setProp___id2__btn_select_kowalski_sfx_10(); }; } function frame17(){ if ((((__setPropDict[__id2_] == undefined)) || (!((((int(__setPropDict[__id2_]) >= 11)) && ((int(__setPropDict[__id2_]) <= 20))))))){ __setPropDict[__id2_] = currentFrame; __setProp___id2__btn_select_kowalski_sfx_10(); }; } function frame18(){ if ((((__setPropDict[__id2_] == undefined)) || (!((((int(__setPropDict[__id2_]) >= 11)) && ((int(__setPropDict[__id2_]) <= 20))))))){ __setPropDict[__id2_] = currentFrame; __setProp___id2__btn_select_kowalski_sfx_10(); }; } function frame19(){ if ((((__setPropDict[__id2_] == undefined)) || (!((((int(__setPropDict[__id2_]) >= 11)) && ((int(__setPropDict[__id2_]) <= 20))))))){ __setPropDict[__id2_] = currentFrame; __setProp___id2__btn_select_kowalski_sfx_10(); }; } function frame14(){ if ((((__setPropDict[__id2_] == undefined)) || (!((((int(__setPropDict[__id2_]) >= 11)) && ((int(__setPropDict[__id2_]) <= 20))))))){ __setPropDict[__id2_] = currentFrame; __setProp___id2__btn_select_kowalski_sfx_10(); }; } function __setProp___id2__btn_select_kowalski_sfx_20(){ try { __id2_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id2_.soundID = "down_global"; __id2_.loops = 0; __id2_.soundPan = 0; __id2_.startTime = 0; __id2_.soundVolume = 1; try { __id2_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame1(){ this.stop(); } function frame20(){ if ((((__setPropDict[__id2_] == undefined)) || (!((((int(__setPropDict[__id2_]) >= 11)) && ((int(__setPropDict[__id2_]) <= 20))))))){ __setPropDict[__id2_] = currentFrame; __setProp___id2__btn_select_kowalski_sfx_10(); }; } function frame21(){ if ((((__setPropDict[__id2_] == undefined)) || (!((((int(__setPropDict[__id2_]) >= 21)) && ((int(__setPropDict[__id2_]) <= 30))))))){ __setPropDict[__id2_] = currentFrame; __setProp___id2__btn_select_kowalski_sfx_20(); }; } function frame22(){ if ((((__setPropDict[__id2_] == undefined)) || (!((((int(__setPropDict[__id2_]) >= 21)) && ((int(__setPropDict[__id2_]) <= 30))))))){ __setPropDict[__id2_] = currentFrame; __setProp___id2__btn_select_kowalski_sfx_20(); }; } function frame23(){ if ((((__setPropDict[__id2_] == undefined)) || (!((((int(__setPropDict[__id2_]) >= 21)) && ((int(__setPropDict[__id2_]) <= 30))))))){ __setPropDict[__id2_] = currentFrame; __setProp___id2__btn_select_kowalski_sfx_20(); }; } function frame24(){ if ((((__setPropDict[__id2_] == undefined)) || (!((((int(__setPropDict[__id2_]) >= 21)) && ((int(__setPropDict[__id2_]) <= 30))))))){ __setPropDict[__id2_] = currentFrame; __setProp___id2__btn_select_kowalski_sfx_20(); }; } function frame25(){ if ((((__setPropDict[__id2_] == undefined)) || (!((((int(__setPropDict[__id2_]) >= 21)) && ((int(__setPropDict[__id2_]) <= 30))))))){ __setPropDict[__id2_] = currentFrame; __setProp___id2__btn_select_kowalski_sfx_20(); }; } function frame26(){ if ((((__setPropDict[__id2_] == undefined)) || (!((((int(__setPropDict[__id2_]) >= 21)) && ((int(__setPropDict[__id2_]) <= 30))))))){ __setPropDict[__id2_] = currentFrame; __setProp___id2__btn_select_kowalski_sfx_20(); }; } function frame27(){ if ((((__setPropDict[__id2_] == undefined)) || (!((((int(__setPropDict[__id2_]) >= 21)) && ((int(__setPropDict[__id2_]) <= 30))))))){ __setPropDict[__id2_] = currentFrame; __setProp___id2__btn_select_kowalski_sfx_20(); }; } function frame28(){ if ((((__setPropDict[__id2_] == undefined)) || (!((((int(__setPropDict[__id2_]) >= 21)) && ((int(__setPropDict[__id2_]) <= 30))))))){ __setPropDict[__id2_] = currentFrame; __setProp___id2__btn_select_kowalski_sfx_20(); }; } function frame29(){ if ((((__setPropDict[__id2_] == undefined)) || (!((((int(__setPropDict[__id2_]) >= 21)) && ((int(__setPropDict[__id2_]) <= 30))))))){ __setPropDict[__id2_] = currentFrame; __setProp___id2__btn_select_kowalski_sfx_20(); }; } } }//package
Section 144
//btn_select_private (btn_select_private) package { import flash.display.*; import flash.events.*; import flash.geom.*; import flash.net.*; import flash.media.*; import flash.text.*; import flash.utils.*; import nick.pom.bootcampblitz.smashing.buttons.*; import flash.accessibility.*; import flash.system.*; import flash.ui.*; import flash.external.*; import adobe.utils.*; import flash.errors.*; import flash.filters.*; import flash.printing.*; import flash.profiler.*; import flash.sampler.*; import flash.xml.*; public dynamic class btn_select_private extends StandardButton { public var __id3_:PlaySound; public var __setPropDict:Dictionary; public function btn_select_private(){ __setPropDict = new Dictionary(true); super(); addFrameScript(0, frame1, 10, frame11, 11, frame12, 12, frame13, 13, frame14, 14, frame15, 15, frame16, 16, frame17, 17, frame18, 18, frame19, 19, frame20, 20, frame21, 21, frame22, 22, frame23, 23, frame24, 24, frame25, 25, frame26, 26, frame27, 27, frame28, 28, frame29, 29, frame30); } function frame30(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 21)) && ((int(__setPropDict[__id3_]) <= 30))))))){ __setPropDict[__id3_] = currentFrame; __setProp___id3__btn_select_private_sfx_20(); }; } function frame11(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 11)) && ((int(__setPropDict[__id3_]) <= 20))))))){ __setPropDict[__id3_] = currentFrame; __setProp___id3__btn_select_private_sfx_10(); }; } function frame12(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 11)) && ((int(__setPropDict[__id3_]) <= 20))))))){ __setPropDict[__id3_] = currentFrame; __setProp___id3__btn_select_private_sfx_10(); }; } function frame13(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 11)) && ((int(__setPropDict[__id3_]) <= 20))))))){ __setPropDict[__id3_] = currentFrame; __setProp___id3__btn_select_private_sfx_10(); }; } function frame14(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 11)) && ((int(__setPropDict[__id3_]) <= 20))))))){ __setPropDict[__id3_] = currentFrame; __setProp___id3__btn_select_private_sfx_10(); }; } function frame15(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 11)) && ((int(__setPropDict[__id3_]) <= 20))))))){ __setPropDict[__id3_] = currentFrame; __setProp___id3__btn_select_private_sfx_10(); }; } function frame16(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 11)) && ((int(__setPropDict[__id3_]) <= 20))))))){ __setPropDict[__id3_] = currentFrame; __setProp___id3__btn_select_private_sfx_10(); }; } function frame17(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 11)) && ((int(__setPropDict[__id3_]) <= 20))))))){ __setPropDict[__id3_] = currentFrame; __setProp___id3__btn_select_private_sfx_10(); }; } function frame18(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 11)) && ((int(__setPropDict[__id3_]) <= 20))))))){ __setPropDict[__id3_] = currentFrame; __setProp___id3__btn_select_private_sfx_10(); }; } function __setProp___id3__btn_select_private_sfx_10(){ try { __id3_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id3_.soundID = "over_private"; __id3_.loops = 0; __id3_.soundPan = 0; __id3_.startTime = 0; __id3_.soundVolume = 1; try { __id3_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame19(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 11)) && ((int(__setPropDict[__id3_]) <= 20))))))){ __setPropDict[__id3_] = currentFrame; __setProp___id3__btn_select_private_sfx_10(); }; } function frame1(){ this.stop(); } function frame20(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 11)) && ((int(__setPropDict[__id3_]) <= 20))))))){ __setPropDict[__id3_] = currentFrame; __setProp___id3__btn_select_private_sfx_10(); }; } function frame21(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 21)) && ((int(__setPropDict[__id3_]) <= 30))))))){ __setPropDict[__id3_] = currentFrame; __setProp___id3__btn_select_private_sfx_20(); }; } function frame22(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 21)) && ((int(__setPropDict[__id3_]) <= 30))))))){ __setPropDict[__id3_] = currentFrame; __setProp___id3__btn_select_private_sfx_20(); }; } function frame23(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 21)) && ((int(__setPropDict[__id3_]) <= 30))))))){ __setPropDict[__id3_] = currentFrame; __setProp___id3__btn_select_private_sfx_20(); }; } function frame24(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 21)) && ((int(__setPropDict[__id3_]) <= 30))))))){ __setPropDict[__id3_] = currentFrame; __setProp___id3__btn_select_private_sfx_20(); }; } function frame25(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 21)) && ((int(__setPropDict[__id3_]) <= 30))))))){ __setPropDict[__id3_] = currentFrame; __setProp___id3__btn_select_private_sfx_20(); }; } function frame26(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 21)) && ((int(__setPropDict[__id3_]) <= 30))))))){ __setPropDict[__id3_] = currentFrame; __setProp___id3__btn_select_private_sfx_20(); }; } function frame27(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 21)) && ((int(__setPropDict[__id3_]) <= 30))))))){ __setPropDict[__id3_] = currentFrame; __setProp___id3__btn_select_private_sfx_20(); }; } function frame28(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 21)) && ((int(__setPropDict[__id3_]) <= 30))))))){ __setPropDict[__id3_] = currentFrame; __setProp___id3__btn_select_private_sfx_20(); }; } function frame29(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 21)) && ((int(__setPropDict[__id3_]) <= 30))))))){ __setPropDict[__id3_] = currentFrame; __setProp___id3__btn_select_private_sfx_20(); }; } function __setProp___id3__btn_select_private_sfx_20(){ try { __id3_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id3_.soundID = "down_global"; __id3_.loops = 0; __id3_.soundPan = 0; __id3_.startTime = 0; __id3_.soundVolume = 1; try { __id3_["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package
Section 145
//btn_select_rico (btn_select_rico) package { import flash.display.*; import flash.events.*; import flash.geom.*; import flash.net.*; import flash.media.*; import flash.text.*; import flash.utils.*; import nick.pom.bootcampblitz.smashing.buttons.*; import flash.accessibility.*; import flash.system.*; import flash.ui.*; import flash.external.*; import adobe.utils.*; import flash.errors.*; import flash.filters.*; import flash.printing.*; import flash.profiler.*; import flash.sampler.*; import flash.xml.*; public dynamic class btn_select_rico extends StandardButton { public var __id1_:PlaySound; public var __setPropDict:Dictionary; public function btn_select_rico(){ __setPropDict = new Dictionary(true); super(); addFrameScript(0, frame1, 10, frame11, 11, frame12, 12, frame13, 13, frame14, 14, frame15, 15, frame16, 16, frame17, 17, frame18, 18, frame19, 19, frame20, 20, frame21, 21, frame22, 22, frame23, 23, frame24, 24, frame25, 25, frame26, 26, frame27, 27, frame28, 28, frame29, 29, frame30); } function frame30(){ if ((((__setPropDict[__id1_] == undefined)) || (!((((int(__setPropDict[__id1_]) >= 21)) && ((int(__setPropDict[__id1_]) <= 30))))))){ __setPropDict[__id1_] = currentFrame; __setProp___id1__btn_select_rico_sfx_20(); }; } function frame11(){ if ((((__setPropDict[__id1_] == undefined)) || (!((((int(__setPropDict[__id1_]) >= 11)) && ((int(__setPropDict[__id1_]) <= 20))))))){ __setPropDict[__id1_] = currentFrame; __setProp___id1__btn_select_rico_sfx_10(); }; } function frame12(){ if ((((__setPropDict[__id1_] == undefined)) || (!((((int(__setPropDict[__id1_]) >= 11)) && ((int(__setPropDict[__id1_]) <= 20))))))){ __setPropDict[__id1_] = currentFrame; __setProp___id1__btn_select_rico_sfx_10(); }; } function frame13(){ if ((((__setPropDict[__id1_] == undefined)) || (!((((int(__setPropDict[__id1_]) >= 11)) && ((int(__setPropDict[__id1_]) <= 20))))))){ __setPropDict[__id1_] = currentFrame; __setProp___id1__btn_select_rico_sfx_10(); }; } function __setProp___id1__btn_select_rico_sfx_20(){ try { __id1_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id1_.soundID = "down_global"; __id1_.loops = 0; __id1_.soundPan = 0; __id1_.startTime = 0; __id1_.soundVolume = 1; try { __id1_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame15(){ if ((((__setPropDict[__id1_] == undefined)) || (!((((int(__setPropDict[__id1_]) >= 11)) && ((int(__setPropDict[__id1_]) <= 20))))))){ __setPropDict[__id1_] = currentFrame; __setProp___id1__btn_select_rico_sfx_10(); }; } function frame17(){ if ((((__setPropDict[__id1_] == undefined)) || (!((((int(__setPropDict[__id1_]) >= 11)) && ((int(__setPropDict[__id1_]) <= 20))))))){ __setPropDict[__id1_] = currentFrame; __setProp___id1__btn_select_rico_sfx_10(); }; } function frame18(){ if ((((__setPropDict[__id1_] == undefined)) || (!((((int(__setPropDict[__id1_]) >= 11)) && ((int(__setPropDict[__id1_]) <= 20))))))){ __setPropDict[__id1_] = currentFrame; __setProp___id1__btn_select_rico_sfx_10(); }; } function frame19(){ if ((((__setPropDict[__id1_] == undefined)) || (!((((int(__setPropDict[__id1_]) >= 11)) && ((int(__setPropDict[__id1_]) <= 20))))))){ __setPropDict[__id1_] = currentFrame; __setProp___id1__btn_select_rico_sfx_10(); }; } function frame14(){ if ((((__setPropDict[__id1_] == undefined)) || (!((((int(__setPropDict[__id1_]) >= 11)) && ((int(__setPropDict[__id1_]) <= 20))))))){ __setPropDict[__id1_] = currentFrame; __setProp___id1__btn_select_rico_sfx_10(); }; } function frame16(){ if ((((__setPropDict[__id1_] == undefined)) || (!((((int(__setPropDict[__id1_]) >= 11)) && ((int(__setPropDict[__id1_]) <= 20))))))){ __setPropDict[__id1_] = currentFrame; __setProp___id1__btn_select_rico_sfx_10(); }; } function frame1(){ this.stop(); } function frame20(){ if ((((__setPropDict[__id1_] == undefined)) || (!((((int(__setPropDict[__id1_]) >= 11)) && ((int(__setPropDict[__id1_]) <= 20))))))){ __setPropDict[__id1_] = currentFrame; __setProp___id1__btn_select_rico_sfx_10(); }; } function frame21(){ if ((((__setPropDict[__id1_] == undefined)) || (!((((int(__setPropDict[__id1_]) >= 21)) && ((int(__setPropDict[__id1_]) <= 30))))))){ __setPropDict[__id1_] = currentFrame; __setProp___id1__btn_select_rico_sfx_20(); }; } function frame22(){ if ((((__setPropDict[__id1_] == undefined)) || (!((((int(__setPropDict[__id1_]) >= 21)) && ((int(__setPropDict[__id1_]) <= 30))))))){ __setPropDict[__id1_] = currentFrame; __setProp___id1__btn_select_rico_sfx_20(); }; } function frame23(){ if ((((__setPropDict[__id1_] == undefined)) || (!((((int(__setPropDict[__id1_]) >= 21)) && ((int(__setPropDict[__id1_]) <= 30))))))){ __setPropDict[__id1_] = currentFrame; __setProp___id1__btn_select_rico_sfx_20(); }; } function frame24(){ if ((((__setPropDict[__id1_] == undefined)) || (!((((int(__setPropDict[__id1_]) >= 21)) && ((int(__setPropDict[__id1_]) <= 30))))))){ __setPropDict[__id1_] = currentFrame; __setProp___id1__btn_select_rico_sfx_20(); }; } function frame25(){ if ((((__setPropDict[__id1_] == undefined)) || (!((((int(__setPropDict[__id1_]) >= 21)) && ((int(__setPropDict[__id1_]) <= 30))))))){ __setPropDict[__id1_] = currentFrame; __setProp___id1__btn_select_rico_sfx_20(); }; } function frame26(){ if ((((__setPropDict[__id1_] == undefined)) || (!((((int(__setPropDict[__id1_]) >= 21)) && ((int(__setPropDict[__id1_]) <= 30))))))){ __setPropDict[__id1_] = currentFrame; __setProp___id1__btn_select_rico_sfx_20(); }; } function frame27(){ if ((((__setPropDict[__id1_] == undefined)) || (!((((int(__setPropDict[__id1_]) >= 21)) && ((int(__setPropDict[__id1_]) <= 30))))))){ __setPropDict[__id1_] = currentFrame; __setProp___id1__btn_select_rico_sfx_20(); }; } function frame28(){ if ((((__setPropDict[__id1_] == undefined)) || (!((((int(__setPropDict[__id1_]) >= 21)) && ((int(__setPropDict[__id1_]) <= 30))))))){ __setPropDict[__id1_] = currentFrame; __setProp___id1__btn_select_rico_sfx_20(); }; } function frame29(){ if ((((__setPropDict[__id1_] == undefined)) || (!((((int(__setPropDict[__id1_]) >= 21)) && ((int(__setPropDict[__id1_]) <= 30))))))){ __setPropDict[__id1_] = currentFrame; __setProp___id1__btn_select_rico_sfx_20(); }; } function __setProp___id1__btn_select_rico_sfx_10(){ try { __id1_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id1_.soundID = "over_rico"; __id1_.loops = 0; __id1_.soundPan = 0; __id1_.startTime = 0; __id1_.soundVolume = 1; try { __id1_["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package
Section 146
//btn_select_skipper (btn_select_skipper) package { import flash.display.*; import flash.events.*; import flash.geom.*; import flash.net.*; import flash.media.*; import flash.text.*; import flash.utils.*; import nick.pom.bootcampblitz.smashing.buttons.*; import flash.accessibility.*; import flash.system.*; import flash.ui.*; import flash.external.*; import adobe.utils.*; import flash.errors.*; import flash.filters.*; import flash.printing.*; import flash.profiler.*; import flash.sampler.*; import flash.xml.*; public dynamic class btn_select_skipper extends StandardButton { public var __setPropDict:Dictionary; public var __id0_:PlaySound; public function btn_select_skipper(){ __setPropDict = new Dictionary(true); super(); addFrameScript(0, frame1, 10, frame11, 11, frame12, 12, frame13, 13, frame14, 14, frame15, 15, frame16, 16, frame17, 17, frame18, 18, frame19, 19, frame20, 20, frame21, 21, frame22, 22, frame23, 23, frame24, 24, frame25, 25, frame26, 26, frame27, 27, frame28, 28, frame29, 29, frame30); } function frame30(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 21)) && ((int(__setPropDict[__id0_]) <= 30))))))){ __setPropDict[__id0_] = currentFrame; __setProp___id0__btn_select_skipper_sfx_20(); }; } function frame11(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 11)) && ((int(__setPropDict[__id0_]) <= 20))))))){ __setPropDict[__id0_] = currentFrame; __setProp___id0__btn_select_skipper_sfx_10(); }; } function frame12(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 11)) && ((int(__setPropDict[__id0_]) <= 20))))))){ __setPropDict[__id0_] = currentFrame; __setProp___id0__btn_select_skipper_sfx_10(); }; } function frame13(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 11)) && ((int(__setPropDict[__id0_]) <= 20))))))){ __setPropDict[__id0_] = currentFrame; __setProp___id0__btn_select_skipper_sfx_10(); }; } function frame14(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 11)) && ((int(__setPropDict[__id0_]) <= 20))))))){ __setPropDict[__id0_] = currentFrame; __setProp___id0__btn_select_skipper_sfx_10(); }; } function frame15(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 11)) && ((int(__setPropDict[__id0_]) <= 20))))))){ __setPropDict[__id0_] = currentFrame; __setProp___id0__btn_select_skipper_sfx_10(); }; } function frame16(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 11)) && ((int(__setPropDict[__id0_]) <= 20))))))){ __setPropDict[__id0_] = currentFrame; __setProp___id0__btn_select_skipper_sfx_10(); }; } function frame17(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 11)) && ((int(__setPropDict[__id0_]) <= 20))))))){ __setPropDict[__id0_] = currentFrame; __setProp___id0__btn_select_skipper_sfx_10(); }; } function frame18(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 11)) && ((int(__setPropDict[__id0_]) <= 20))))))){ __setPropDict[__id0_] = currentFrame; __setProp___id0__btn_select_skipper_sfx_10(); }; } function frame19(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 11)) && ((int(__setPropDict[__id0_]) <= 20))))))){ __setPropDict[__id0_] = currentFrame; __setProp___id0__btn_select_skipper_sfx_10(); }; } function __setProp___id0__btn_select_skipper_sfx_10(){ try { __id0_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id0_.soundID = "over_char"; __id0_.loops = 0; __id0_.soundPan = 0; __id0_.startTime = 0; __id0_.soundVolume = 1; try { __id0_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame1(){ this.stop(); } function frame20(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 11)) && ((int(__setPropDict[__id0_]) <= 20))))))){ __setPropDict[__id0_] = currentFrame; __setProp___id0__btn_select_skipper_sfx_10(); }; } function frame21(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 21)) && ((int(__setPropDict[__id0_]) <= 30))))))){ __setPropDict[__id0_] = currentFrame; __setProp___id0__btn_select_skipper_sfx_20(); }; } function frame22(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 21)) && ((int(__setPropDict[__id0_]) <= 30))))))){ __setPropDict[__id0_] = currentFrame; __setProp___id0__btn_select_skipper_sfx_20(); }; } function frame23(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 21)) && ((int(__setPropDict[__id0_]) <= 30))))))){ __setPropDict[__id0_] = currentFrame; __setProp___id0__btn_select_skipper_sfx_20(); }; } function frame24(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 21)) && ((int(__setPropDict[__id0_]) <= 30))))))){ __setPropDict[__id0_] = currentFrame; __setProp___id0__btn_select_skipper_sfx_20(); }; } function frame25(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 21)) && ((int(__setPropDict[__id0_]) <= 30))))))){ __setPropDict[__id0_] = currentFrame; __setProp___id0__btn_select_skipper_sfx_20(); }; } function frame26(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 21)) && ((int(__setPropDict[__id0_]) <= 30))))))){ __setPropDict[__id0_] = currentFrame; __setProp___id0__btn_select_skipper_sfx_20(); }; } function frame27(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 21)) && ((int(__setPropDict[__id0_]) <= 30))))))){ __setPropDict[__id0_] = currentFrame; __setProp___id0__btn_select_skipper_sfx_20(); }; } function frame28(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 21)) && ((int(__setPropDict[__id0_]) <= 30))))))){ __setPropDict[__id0_] = currentFrame; __setProp___id0__btn_select_skipper_sfx_20(); }; } function frame29(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 21)) && ((int(__setPropDict[__id0_]) <= 30))))))){ __setPropDict[__id0_] = currentFrame; __setProp___id0__btn_select_skipper_sfx_20(); }; } function __setProp___id0__btn_select_skipper_sfx_20(){ try { __id0_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id0_.soundID = "down_global"; __id0_.loops = 0; __id0_.soundPan = 0; __id0_.startTime = 0; __id0_.soundVolume = 1; try { __id0_["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package
Section 147
//btn_skip (btn_skip) package { import nick.pom.bootcampblitz.smashing.buttons.*; public dynamic class btn_skip extends StandardButton { public function btn_skip(){ addFrameScript(0, frame1); } function frame1(){ this.stop(); } } }//package
Section 148
//btn_submit_score02 (btn_submit_score02) package { import nick.pom.bootcampblitz.smashing.buttons.*; public dynamic class btn_submit_score02 extends StandardButton { public function btn_submit_score02(){ addFrameScript(0, frame1); } function frame1(){ this.stop(); } } }//package
Section 149
//btn_yes (btn_yes) package { import nick.pom.bootcampblitz.smashing.buttons.*; public dynamic class btn_yes extends StandardButton { public function btn_yes(){ addFrameScript(0, frame1); } function frame1(){ this.stop(); } } }//package
Section 150
//down_global (down_global) package { import flash.media.*; public dynamic class down_global extends Sound { } }//package
Section 151
//GamesChart (GamesChart) package { import flash.display.*; public class GamesChart { public static var onGCEvent:Function = null; private static var _errors:Object = {noInterface:"[GC-API] ERROR! Please call gc.setup() first. See: http://wiki.gameschart.com/index.php/Static_Functions", alreadyDefinedInterface:"[GC-API] ERROR! Can only call setup once! See: http://wiki.gameschart.com/index.php/Static_Functions", noContainerMC:"[GC-API] ERROR! You must supply a container to hold GamesChart! See: http://wiki.gameschart.com/index.php/Static_Functions#Setup", noGameIDHash:"[GC-API] ERROR! You must supply the game ID key associated with this game! http://wiki.gameschart.com/index.php/Static_Functions#Setup"}; private static var _interface:GCBrainInterface; public static var VERSION:String = "0.2.0"; public static function openCharts():void{ if (_interface == null){ trace(_errors.noInterface); return; }; _interface.sendNotification(GCNotificationTypes.SHOW_CHART_LISTS, {}); } public static function hideTab():void{ if (_interface == null){ trace(_errors.noInterface); return; }; _interface.sendNotification(GCNotificationTypes.HIDE_TAB, {}); } public static function showTab(_arg1:Number, _arg2:Number):void{ if (_interface == null){ trace(_errors.noInterface); return; }; _interface.sendNotification(GCNotificationTypes.SHOW_TAB, {xPos:_arg1, yPos:_arg2}); } public static function setup(_arg1:Stage, _arg2:String):void{ if (_interface == null){ if (_arg1 == null){ trace(_errors.noContainerMC); return; }; if ((((_arg2 == null)) || ((_arg2 == "")))){ trace(_errors.noGameIDHash); return; }; _interface = new GCBrainInterface(_arg1); _interface.begin(_arg2); } else { trace(_errors.alreadyDefinedInterface); }; } } }//package
Section 152
//GamesChartAPI_AS3 (GamesChartAPI_AS3) package { import flash.display.*; import flash.utils.*; public class GamesChartAPI_AS3 extends MovieClip { public var _preview:MovieClip; private var _GC:GamesChart; private var _gameKey:String;// = "" public function GamesChartAPI_AS3(){ GCBrainInterface.apiType = "AS3-MXP"; gameKey = ""; } public function set gameKey(_arg1:String):void{ _gameKey = _arg1; if ((((_gameKey == null)) || ((_gameKey == "")))){ _preview.txt.text = "You need to set your gameID for the API to work."; } else { if (((!((parent == null))) && ((getQualifiedClassName(parent) == "fl.livepreview::LivePreviewParent")))){ _preview.txt.text = (("Your gameID has been set to '" + _gameKey) + "'. This message will be hidden when the game is run."); } else { GamesChart.setup(stage, _gameKey); _preview.visible = false; }; }; } public function get gameKey():String{ return (_gameKey); } } }//package
Section 153
//GCBrainInterface (GCBrainInterface) package { import flash.display.*; import flash.events.*; import flash.net.*; import gc.utils.*; import flash.system.*; import flash.external.*; public class GCBrainInterface { private var _lcID:int; private var _container:Sprite; private var _notificationBuffer:Array; private var _conn:GCSWFConnection; private var _brainLoader:Loader; private var _brainLoaded:Boolean; private var _stage:Stage; public static var apiType:String = "AS3-API"; private static var BRAIN_URL:String = "http://gameschart.com/flash_client/getBrain.php"; public function GCBrainInterface(_arg1:Stage){ _stage = _arg1; _container = new Sprite(); _container.addEventListener(Event.ENTER_FRAME, onFrameEntered); _stage.addChild(_container); Security.allowDomain("*"); Security.allowInsecureDomain("*"); trace(("[GC-API] Games Chart v." + GamesChart.VERSION)); _lcID = (Math.random() * 10000); loadBrain(); startLC(); } public function begin(_arg1:String):void{ sendNotification(GCNotificationTypes.BEGIN_LOAD, {gameIDHash:_arg1, apiType:apiType, apiVersion:GamesChart.VERSION, swfURL:getURL()}); } public function onGCEvent(_arg1:String, _arg2:Object):void{ if (GamesChart.onGCEvent != null){ GamesChart.onGCEvent.apply(null, [_arg1, _arg2]); }; } private function getURL():String{ var pageURL:String; try { pageURL = String(ExternalInterface.call("window.location.href.toString")); if (pageURL == "null"){ return (_container.stage.loaderInfo.url); } else { return (pageURL); }; } catch(e:Error) { }; return (_container.stage.loaderInfo.url); } private function onFrameEntered(_arg1:Event):void{ if (!_stage.contains(_container)){ _stage.addChild(_container); } else { if (_stage.getChildIndex(_container) != (_stage.numChildren - 1)){ _stage.setChildIndex(_container, (_stage.numChildren - 1)); }; }; } private function onFinishedLoading(_arg1:Event):void{ _brainLoaded = true; trace("[GC-API] Brain Loaded!"); } public function sendNotification(_arg1:String, _arg2:Object, _arg3:String=""):void{ if (_conn.connected){ _conn.send("sendNotification", _arg1, _arg2, _arg3); } else { _notificationBuffer.push({name:_arg1, body:_arg2, type:_arg3}); }; } private function loadBrain():void{ _brainLoaded = false; _brainLoader = new Loader(); _brainLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, onFinishedLoading); _brainLoader.load(new URLRequest(((BRAIN_URL + "?r=") + _lcID))); _container.addChild(_brainLoader); trace("[GC-API] Loading Brain.. "); } private function startLC():void{ _notificationBuffer = []; _conn = new GCSWFConnection(("_GamesChartLC" + _lcID), this, GamesChart.VERSION); _conn.addEventListener(GCSWFConnection.CONNECTED, onLCConnected); } private function onLCConnected(_arg1:Event):void{ var _local2:Object; trace("[GC-API] API Connected to Brain!"); while (_notificationBuffer.length > 0) { _local2 = _notificationBuffer.pop(); sendNotification(_local2.name, _local2.body, _local2.type); }; } } }//package
Section 154
//GCNotificationTypes (GCNotificationTypes) package { public class GCNotificationTypes { public static var LOAD_SKIN_AND_STYLE:String = "LOAD_SKIN_AND_STYLE"; public static var BEGIN_LOAD:String = "BEGIN_LOAD"; public static var STARTUP:String = "STARTUP"; public static var SHOW_CHART_LISTS:String = "SHOW_CHART_LISTS"; public static var SHOW_TAB:String = "SHOW_TAB"; public static var SKIN_AND_STYLE_LOADED:String = "SKIN_AND_STYLE_LOADED"; public static var LAUNCH_GAME:String = "LAUNCH_GAME"; public static var HIDE_TAB:String = "HIDE_TAB"; } }//package
Section 155
//nick_pom_bootcamp_sounds_down (nick_pom_bootcamp_sounds_down) package { import flash.media.*; public dynamic class nick_pom_bootcamp_sounds_down extends Sound { } }//package
Section 156
//nick_pom_bootcamp_sounds_gameMusic (nick_pom_bootcamp_sounds_gameMusic) package { import flash.media.*; public dynamic class nick_pom_bootcamp_sounds_gameMusic extends Sound { } }//package
Section 157
//nick_pom_bootcamp_sounds_over (nick_pom_bootcamp_sounds_over) package { import flash.media.*; public dynamic class nick_pom_bootcamp_sounds_over extends Sound { } }//package
Section 158
//nick_pom_bootcamp_sounds_splashMusic (nick_pom_bootcamp_sounds_splashMusic) package { import flash.media.*; public dynamic class nick_pom_bootcamp_sounds_splashMusic extends Sound { } }//package
Section 159
//over_char (over_char) package { import flash.media.*; public dynamic class over_char extends Sound { } }//package
Section 160
//over_global (over_global) package { import flash.media.*; public dynamic class over_global extends Sound { } }//package
Section 161
//over_private (over_private) package { import flash.media.*; public dynamic class over_private extends Sound { } }//package
Section 162
//over_rico (over_rico) package { import flash.media.*; public dynamic class over_rico extends Sound { } }//package
Section 163
//PlaySound (PlaySound) package { import smashing.sound.*; public dynamic class PlaySound extends PlaySound { } }//package
Section 164
//pom_bootcamp_player_kowalski (pom_bootcamp_player_kowalski) package { import nick.pom.bootcampblitz.game.*; public dynamic class pom_bootcamp_player_kowalski extends Player { public function pom_bootcamp_player_kowalski(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 165
//pom_bootcamp_player_private (pom_bootcamp_player_private) package { import nick.pom.bootcampblitz.game.*; public dynamic class pom_bootcamp_player_private extends Player { public function pom_bootcamp_player_private(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 166
//pom_bootcamp_player_rico (pom_bootcamp_player_rico) package { import nick.pom.bootcampblitz.game.*; public dynamic class pom_bootcamp_player_rico extends Player { public function pom_bootcamp_player_rico(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 167
//pom_bootcamp_player_skipper (pom_bootcamp_player_skipper) package { import nick.pom.bootcampblitz.game.*; public dynamic class pom_bootcamp_player_skipper extends Player { public function pom_bootcamp_player_skipper(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 168
//pom_bootcampblitz_sewer (pom_bootcampblitz_sewer) package { import nick.pom.bootcampblitz.game.*; public dynamic class pom_bootcampblitz_sewer extends Sewer { } }//package
Section 169
//txt_btn_back (txt_btn_back) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_btn_back extends Localization { } }//package
Section 170
//txt_btn_help (txt_btn_help) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_btn_help extends Localization { } }//package
Section 171
//txt_btn_leaderboard (txt_btn_leaderboard) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_btn_leaderboard extends Localization { } }//package
Section 172
//txt_btn_menu (txt_btn_menu) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_btn_menu extends Localization { } }//package
Section 173
//txt_btn_next (txt_btn_next) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_btn_next extends Localization { } }//package
Section 174
//txt_btn_no (txt_btn_no) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_btn_no extends Localization { } }//package
Section 175
//txt_btn_play (txt_btn_play) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_btn_play extends Localization { } }//package
Section 176
//txt_btn_play_again (txt_btn_play_again) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_btn_play_again extends Localization { } }//package
Section 177
//txt_btn_play_now (txt_btn_play_now) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_btn_play_now extends Localization { } }//package
Section 178
//txt_btn_quit (txt_btn_quit) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_btn_quit extends Localization { } }//package
Section 179
//txt_btn_resume (txt_btn_resume) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_btn_resume extends Localization { } }//package
Section 180
//txt_btn_skip (txt_btn_skip) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_btn_skip extends Localization { } }//package
Section 181
//txt_btn_submit (txt_btn_submit) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_btn_submit extends Localization { } }//package
Section 182
//txt_btn_yes (txt_btn_yes) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_btn_yes extends Localization { } }//package
Section 183
//txt_charSelect_kowalski (txt_charSelect_kowalski) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_charSelect_kowalski extends Localization { } }//package
Section 184
//txt_charSelect_private (txt_charSelect_private) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_charSelect_private extends Localization { } }//package
Section 185
//txt_charSelect_rico (txt_charSelect_rico) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_charSelect_rico extends Localization { } }//package
Section 186
//txt_charSelect_skipper (txt_charSelect_skipper) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_charSelect_skipper extends Localization { } }//package
Section 187
//txt_charSelect_title (txt_charSelect_title) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_charSelect_title extends Localization { } }//package
Section 188
//txt_gameover_msg1 (txt_gameover_msg1) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_gameover_msg1 extends Localization { } }//package
Section 189
//txt_gameover_msg2 (txt_gameover_msg2) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_gameover_msg2 extends Localization { } }//package
Section 190
//txt_gameover_msg3 (txt_gameover_msg3) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_gameover_msg3 extends Localization { } }//package
Section 191
//txt_gameover_score_header (txt_gameover_score_header) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_gameover_score_header extends Localization { } }//package
Section 192
//txt_help_bonus (txt_help_bonus) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_help_bonus extends Localization { } }//package
Section 193
//txt_help_controls (txt_help_controls) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_help_controls extends Localization { } }//package
Section 194
//txt_help_hazards (txt_help_hazards) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_help_hazards extends Localization { } }//package
Section 195
//txt_help_health (txt_help_health) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_help_health extends Localization { } }//package
Section 196
//txt_help_subhead (txt_help_subhead) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_help_subhead extends Localization { } }//package
Section 197
//txt_help_team (txt_help_team) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_help_team extends Localization { } }//package
Section 198
//txt_help_title (txt_help_title) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_help_title extends Localization { } }//package
Section 199
//txt_intro_1a (txt_intro_1a) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_intro_1a extends Localization { } }//package
Section 200
//txt_intro_1b (txt_intro_1b) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_intro_1b extends Localization { } }//package
Section 201
//txt_intro_2a (txt_intro_2a) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_intro_2a extends Localization { } }//package
Section 202
//txt_intro_2b (txt_intro_2b) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_intro_2b extends Localization { } }//package
Section 203
//txt_intro_2c (txt_intro_2c) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_intro_2c extends Localization { } }//package
Section 204
//txt_loader_loading (txt_loader_loading) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_loader_loading extends Localization { } }//package
Section 205
//txt_playAgain (txt_playAgain) package { import nick.pom.bootcampblitz.smashing.buttons.*; public dynamic class txt_playAgain extends StandardButton { } }//package
Section 206
//txt_quit_header (txt_quit_header) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_quit_header extends Localization { } }//package
Section 207
//txt_ui_score (txt_ui_score) package { import nick.pom.bootcampblitz.smashing.localization.*; public dynamic class txt_ui_score extends Localization { } }//package

Library Items

Symbol 1 Sound {over_global}
Symbol 2 Sound {down_global}
Symbol 3 Sound {over_rico}
Symbol 4 Sound {over_private}
Symbol 5 Sound {over_char}
Symbol 6 Sound {nick_pom_bootcamp_sounds_over}Used by:554
Symbol 7 GraphicUsed by:8 112
Symbol 8 MovieClipUses:7Used by:22 27 70 131 196 198 235 260 339 381 461 485 525 542 662 672 684 685 702 707 711 714 717 719  Timeline
Symbol 9 GraphicUsed by:10
Symbol 10 MovieClipUses:9Used by:11 331 332 422 433 446 456 612 614 626
Symbol 11 MovieClipUses:10Used by:22 410 557 563 598 610 613 614 623 626 627 628 632 636 637 638 639 642 672 684 685 702 707 711 714 719
Symbol 12 GraphicUsed by:13
Symbol 13 MovieClipUses:12Used by:22 339 381
Symbol 14 GraphicUsed by:15
Symbol 15 MovieClipUses:14Used by:22 610 626 636 642 662 672 684 685 702 707 711 714 717 719
Symbol 16 GraphicUsed by:22 707 711
Symbol 17 GraphicUsed by:22 707 711
Symbol 18 GraphicUsed by:22 707 711
Symbol 19 GraphicUsed by:22 707 711
Symbol 20 GraphicUsed by:22 707 711
Symbol 21 GraphicUsed by:22 707 711
Symbol 22 MovieClip {bootcamp_obstacle_tires}Uses:8 11 13 15 16 17 18 19 20 21Used by:720
Symbol 23 BitmapUsed by:24 396
Symbol 24 GraphicUses:23Used by:27
Symbol 25 GraphicUsed by:26
Symbol 26 MovieClipUses:25Used by:27
Symbol 27 MovieClipUses:8 24 26Used by:38 214
Symbol 28 GraphicUsed by:37
Symbol 29 GraphicUsed by:30
Symbol 30 MovieClipUses:29Used by:37 213
Symbol 31 GraphicUsed by:32
Symbol 32 MovieClipUses:31Used by:37
Symbol 33 GraphicUsed by:34
Symbol 34 MovieClipUses:33Used by:37 213
Symbol 35 GraphicUsed by:36
Symbol 36 MovieClipUses:35Used by:37
Symbol 37 MovieClipUses:28 30 32 34 36Used by:38
Symbol 38 MovieClip {_wall}Uses:27 37Used by:461
Symbol 39 GraphicUsed by:40
Symbol 40 MovieClipUses:39Used by:42
Symbol 41 GraphicUsed by:42
Symbol 42 MovieClipUses:40 41Used by:43
Symbol 43 MovieClip {PlaySound}Uses:42Used by:113 349 357 365 376
Symbol 44 GraphicUsed by:45
Symbol 45 MovieClipUses:44Used by:49
Symbol 46 BitmapUsed by:47
Symbol 47 GraphicUses:46Used by:48
Symbol 48 MovieClip {fl.video.Icon}Uses:47Used by:49
Symbol 49 MovieClip {fl.video.FLVPlayback}Uses:45 48Used by:78
Symbol 50 GraphicUsed by:58
Symbol 51 GraphicUsed by:52
Symbol 52 MovieClipUses:51Used by:53
Symbol 53 MovieClipUses:52Used by:58
Symbol 54 FontUsed by:55 56 57
Symbol 55 EditableTextUses:54Used by:58
Symbol 56 EditableTextUses:54Used by:58
Symbol 57 EditableTextUses:54Used by:58
Symbol 58 MovieClipUses:50 53 55 56 57Used by:59
Symbol 59 MovieClip {GamesChartAPI_AS3}Uses:58Used by:Timeline
Symbol 60 GraphicUsed by:61
Symbol 61 MovieClipUses:60Used by:70 88 217 220 223 345 355 363 371 374 610 626 636 642
Symbol 62 BitmapUsed by:63
Symbol 63 GraphicUses:62Used by:64
Symbol 64 MovieClipUses:63Used by:70
Symbol 65 BitmapUsed by:66
Symbol 66 GraphicUses:65Used by:67
Symbol 67 MovieClipUses:66Used by:70
Symbol 68 GraphicUsed by:69
Symbol 69 ButtonUses:68Used by:70
Symbol 70 MovieClip {penguins_fla.loaderProgressClip_3}Uses:61 64 8 67 69Used by:78
Symbol 71 FontUsed by:72 73 160 161 162 170 171 172 174 182 195 228 232 240 243 248 263 266 269 272 275 335 337 340 350 358 366 377 487 519 520 530 532 534 538 541
Symbol 72 EditableTextUses:71Used by:78
Symbol 73 EditableTextUses:71Used by:74
Symbol 74 MovieClip {txt_loader_loading}Uses:73Used by:75
Symbol 75 MovieClipUses:74Used by:78
Symbol 76 BitmapUsed by:77
Symbol 77 GraphicUses:76Used by:78
Symbol 78 MovieClip {nick.pom.bootcampblitz.loader.GameLoader}Uses:70 72 75 77 49Used by:Timeline
Symbol 79 GraphicUsed by:Timeline
Symbol 80 BitmapUsed by:81
Symbol 81 GraphicUses:80Used by:Timeline
Symbol 82 GraphicUsed by:83
Symbol 83 MovieClipUses:82Used by:84
Symbol 84 MovieClipUses:83Used by:116 131
Symbol 85 GraphicUsed by:95
Symbol 86 BitmapUsed by:87
Symbol 87 GraphicUses:86Used by:88
Symbol 88 MovieClipUses:61 87Used by:95
Symbol 89 BitmapUsed by:91
Symbol 90 BitmapUsed by:91
Symbol 91 GraphicUses:89 90Used by:95
Symbol 92 GraphicUsed by:95
Symbol 93 GraphicUsed by:94
Symbol 94 MovieClipUses:93Used by:95
Symbol 95 MovieClipUses:85 88 91 92 94Used by:131
Symbol 96 BitmapUsed by:97
Symbol 97 GraphicUses:96Used by:98
Symbol 98 MovieClipUses:97Used by:131
Symbol 99 BitmapUsed by:101 526
Symbol 100 BitmapUsed by:101 526
Symbol 101 GraphicUses:99 100Used by:104
Symbol 102 GraphicUsed by:103
Symbol 103 MovieClipUses:102Used by:104
Symbol 104 MovieClipUses:101 103Used by:115 131 470
Symbol 105 GraphicUsed by:115
Symbol 106 GraphicUsed by:107
Symbol 107 MovieClipUses:106Used by:115 131 528 542
Symbol 108 FontUsed by:109 118 151 157 183 187 191 384 388 462 471 475 481 490 494
Symbol 109 EditableTextUses:108Used by:110
Symbol 110 MovieClip {txt_btn_play_now}Uses:109Used by:111
Symbol 111 MovieClipUses:110Used by:114
Symbol 112 MovieClipUses:7Used by:114 121 126 129 154 159 186 190 194 349 357 365 376 387 391 465 474 480 484 493 497 527
Symbol 113 MovieClip {penguins_fla.btn_sfx_26}Uses:43Used by:114 121 126 129 154 159 186 190 194 387 391 465 474 480 484 493 497 527
Symbol 114 MovieClip {btn_play}Uses:111 112 113Used by:115 131 196
Symbol 115 MovieClipUses:104 105 107 114Used by:131
Symbol 116 MovieClipUses:84Used by:131
Symbol 117 GraphicUsed by:131
Symbol 118 EditableTextUses:108Used by:119
Symbol 119 MovieClip {txt_btn_leaderboard}Uses:118Used by:120
Symbol 120 MovieClipUses:119Used by:121
Symbol 121 MovieClip {btn_playcopy}Uses:120 112 113Used by:131
Symbol 122 GraphicUsed by:123
Symbol 123 MovieClipUses:122Used by:126 129
Symbol 124 BitmapUsed by:125
Symbol 125 GraphicUses:124Used by:126
Symbol 126 MovieClip {btn_music_on}Uses:123 125 112 113Used by:130
Symbol 127 BitmapUsed by:128
Symbol 128 GraphicUses:127Used by:129
Symbol 129 MovieClip {btn_music_off}Uses:123 128 112 113Used by:130
Symbol 130 MovieClip {penguins_fla.musicToggle_31}Uses:126 129Used by:131 485 523
Symbol 131 MovieClip {nick.pom.bootcampblitz.screens.Splash}Uses:84 95 8 98 115 116 104 117 107 121 114 130Used by:720
Symbol 132 GraphicUsed by:141 339
Symbol 133 GraphicUsed by:141 339
Symbol 134 GraphicUsed by:141 339
Symbol 135 GraphicUsed by:141 339
Symbol 136 GraphicUsed by:141 339
Symbol 137 GraphicUsed by:141 339
Symbol 138 GraphicUsed by:141 339
Symbol 139 GraphicUsed by:141 339
Symbol 140 GraphicUsed by:141 339
Symbol 141 MovieClip {nick.pom.bootcampblitz.transitions.Iris}Uses:132 133 134 135 136 137 138 139 140Used by:720
Symbol 142 GraphicUsed by:143
Symbol 143 MovieClipUses:142Used by:720
Symbol 144 MovieClip {nick.pom.bootcampblitz.screens.NickPointsScreen}Used by:720
Symbol 145 GraphicUsed by:146
Symbol 146 MovieClipUses:145Used by:196 339 381
Symbol 147 GraphicUsed by:148
Symbol 148 MovieClipUses:147Used by:196 339 381
Symbol 149 GraphicUsed by:150
Symbol 150 MovieClipUses:149Used by:154 186 190 391
Symbol 151 EditableTextUses:108Used by:152
Symbol 152 MovieClip {txt_btn_play_again}Uses:151Used by:153
Symbol 153 MovieClip {txt_playAgain}Uses:152Used by:154 527
Symbol 154 MovieClip {btn_play_again}Uses:150 153 112 113Used by:196
Symbol 155 GraphicUsed by:156
Symbol 156 MovieClipUses:155Used by:159 194 465
Symbol 157 TextUses:108Used by:158
Symbol 158 MovieClipUses:157Used by:159
Symbol 159 MovieClip {btn_close}Uses:156 158 112 113Used by:196
Symbol 160 TextUses:71Used by:196
Symbol 161 TextUses:71Used by:196
Symbol 162 TextUses:71Used by:196
Symbol 163 GraphicUsed by:164
Symbol 164 MovieClipUses:163Used by:169 196
Symbol 165 FontUsed by:166 167 168 543
Symbol 166 EditableTextUses:165Used by:169
Symbol 167 EditableTextUses:165Used by:169
Symbol 168 EditableTextUses:165Used by:169
Symbol 169 MovieClipUses:164 166 167 168Used by:196
Symbol 170 TextUses:71Used by:196
Symbol 171 TextUses:71Used by:196
Symbol 172 TextUses:71Used by:196
Symbol 173 GraphicUsed by:181
Symbol 174 TextUses:71Used by:175
Symbol 175 MovieClipUses:174Used by:181
Symbol 176 GraphicUsed by:181
Symbol 177 FontUsed by:178 179 180
Symbol 178 EditableTextUses:177Used by:181
Symbol 179 EditableTextUses:177Used by:181
Symbol 180 EditableTextUses:177Used by:181
Symbol 181 MovieClipUses:173 175 176 178 179 180Used by:196
Symbol 182 EditableTextUses:71Used by:196
Symbol 183 EditableTextUses:108Used by:184
Symbol 184 MovieClip {txt_btn_next}Uses:183Used by:185
Symbol 185 MovieClipUses:184Used by:186
Symbol 186 MovieClip {btn_backcopy}Uses:150 185 112 113Used by:196 392
Symbol 187 EditableTextUses:108Used by:188
Symbol 188 MovieClip {txt_btn_back}Uses:187Used by:189
Symbol 189 MovieClipUses:188Used by:190
Symbol 190 MovieClip {btn_back}Uses:150 189 112 113Used by:196 392
Symbol 191 EditableTextUses:108Used by:192
Symbol 192 MovieClip {txt_btn_submit}Uses:191Used by:193
Symbol 193 MovieClipUses:192Used by:194
Symbol 194 MovieClip {btn_submit_score02}Uses:156 193 112 113Used by:196
Symbol 195 TextUses:71Used by:196
Symbol 196 MovieClip {nick.pom.bootcampblitz.highscore.HighScoreTable}Uses:8 146 148 154 114 159 160 161 162 164 169 170 171 172 181 182 186 190 194 195Used by:720
Symbol 197 GraphicUsed by:198
Symbol 198 MovieClipUses:197 8Used by:202 461
Symbol 199 BitmapUsed by:200
Symbol 200 GraphicUses:199Used by:201 262
Symbol 201 MovieClipUses:200Used by:202
Symbol 202 MovieClipUses:198 201Used by:214 461
Symbol 203 BitmapUsed by:204
Symbol 204 GraphicUses:203Used by:205
Symbol 205 MovieClipUses:204Used by:214 400
Symbol 206 BitmapUsed by:207
Symbol 207 GraphicUses:206Used by:208
Symbol 208 MovieClipUses:207Used by:214
Symbol 209 BitmapUsed by:210
Symbol 210 GraphicUses:209Used by:211
Symbol 211 MovieClipUses:210Used by:214
Symbol 212 GraphicUsed by:213
Symbol 213 MovieClipUses:212 34 30Used by:214
Symbol 214 MovieClipUses:202 205 208 211 27 213Used by:235 260 380 381 542
Symbol 215 BitmapUsed by:216
Symbol 216 GraphicUses:215Used by:217
Symbol 217 MovieClipUses:61 216Used by:235 260 356 501
Symbol 218 BitmapUsed by:219
Symbol 219 GraphicUses:218Used by:220
Symbol 220 MovieClipUses:61 219Used by:235 260 349 381 501
Symbol 221 BitmapUsed by:222
Symbol 222 GraphicUses:221Used by:223
Symbol 223 MovieClipUses:61 222Used by:235 260 365 381 501
Symbol 224 BitmapUsed by:225
Symbol 225 GraphicUses:224Used by:226
Symbol 226 MovieClipUses:225Used by:235 260 381 542
Symbol 227 GraphicUsed by:235
Symbol 228 EditableTextUses:71Used by:229
Symbol 229 MovieClip {txt_intro_1a}Uses:228Used by:230
Symbol 230 MovieClipUses:229Used by:235
Symbol 231 GraphicUsed by:235
Symbol 232 EditableTextUses:71Used by:233
Symbol 233 MovieClip {txt_intro_1b}Uses:232Used by:234
Symbol 234 MovieClipUses:233Used by:235
Symbol 235 MovieClip {penguins_fla.intro_page1_63}Uses:214 217 220 223 226 8 227 230 231 234Used by:381
Symbol 236 BitmapUsed by:237
Symbol 237 GraphicUses:236Used by:238
Symbol 238 MovieClipUses:237Used by:260 381
Symbol 239 GraphicUsed by:260
Symbol 240 EditableTextUses:71Used by:241
Symbol 241 MovieClip {txt_intro_2b}Uses:240Used by:242
Symbol 242 MovieClipUses:241Used by:260 381
Symbol 243 EditableTextUses:71Used by:244
Symbol 244 MovieClip {txt_intro_2a}Uses:243Used by:245
Symbol 245 MovieClipUses:244Used by:260 381
Symbol 246 GraphicUsed by:260
Symbol 247 GraphicUsed by:260 381
Symbol 248 EditableTextUses:71Used by:249
Symbol 249 MovieClip {txt_intro_2c}Uses:248Used by:250
Symbol 250 MovieClipUses:249Used by:260 381
Symbol 251 BitmapUsed by:252
Symbol 252 GraphicUses:251Used by:253
Symbol 253 MovieClipUses:252Used by:260
Symbol 254 BitmapUsed by:255
Symbol 255 GraphicUses:254Used by:259
Symbol 256 BitmapUsed by:257
Symbol 257 GraphicUses:256Used by:258
Symbol 258 MovieClipUses:257Used by:259
Symbol 259 MovieClip {penguins_fla.ani_skipperEyes_93}Uses:255 258Used by:260
Symbol 260 MovieClip {penguins_fla.intro_page2_84}Uses:214 217 220 223 226 238 8 239 242 245 246 247 250 253 259Used by:381
Symbol 261 GraphicUsed by:339 381
Symbol 262 MovieClipUses:200Used by:339 381
Symbol 263 EditableTextUses:71Used by:264
Symbol 264 MovieClip {txt_help_title}Uses:263Used by:265
Symbol 265 MovieClipUses:264Used by:339 381
Symbol 266 EditableTextUses:71Used by:267
Symbol 267 MovieClip {txt_help_subhead}Uses:266Used by:268
Symbol 268 MovieClipUses:267Used by:339 381
Symbol 269 EditableTextUses:71Used by:270
Symbol 270 MovieClip {txt_help_hazards}Uses:269Used by:271
Symbol 271 MovieClipUses:270Used by:339 381
Symbol 272 EditableTextUses:71Used by:273
Symbol 273 MovieClip {txt_help_team}Uses:272Used by:274
Symbol 274 MovieClipUses:273Used by:339 381
Symbol 275 EditableTextUses:71Used by:276
Symbol 276 MovieClip {txt_help_controls}Uses:275Used by:277
Symbol 277 MovieClipUses:276Used by:339 381
Symbol 278 GraphicUsed by:339 381
Symbol 279 GraphicUsed by:280
Symbol 280 MovieClipUses:279Used by:283 285
Symbol 281 GraphicUsed by:282
Symbol 282 MovieClipUses:281Used by:283 285
Symbol 283 MovieClipUses:280 282Used by:284
Symbol 284 MovieClipUses:283Used by:339 381
Symbol 285 MovieClipUses:280 282Used by:286
Symbol 286 MovieClipUses:285Used by:339 381
Symbol 287 GraphicUsed by:288
Symbol 288 MovieClipUses:287Used by:339 381
Symbol 289 GraphicUsed by:339 381
Symbol 290 GraphicUsed by:291
Symbol 291 MovieClipUses:290Used by:339 381
Symbol 292 GraphicUsed by:293
Symbol 293 MovieClipUses:292Used by:339 381
Symbol 294 BitmapUsed by:295
Symbol 295 GraphicUses:294Used by:296
Symbol 296 MovieClipUses:295Used by:339 381
Symbol 297 GraphicUsed by:298
Symbol 298 MovieClipUses:297Used by:299
Symbol 299 MovieClipUses:298Used by:339 381 672
Symbol 300 GraphicUsed by:301
Symbol 301 MovieClipUses:300Used by:339 381 672
Symbol 302 GraphicUsed by:303
Symbol 303 MovieClipUses:302Used by:306 410 685 712 714
Symbol 304 GraphicUsed by:305
Symbol 305 MovieClipUses:304Used by:306 410 685 712 714
Symbol 306 MovieClipUses:303 305Used by:339 381
Symbol 307 GraphicUsed by:308
Symbol 308 MovieClipUses:307Used by:332 422 436 447 459 557 563 598 602 610 612 614 619 626 627 628 632 633 636 637 638 639 640 642
Symbol 309 GraphicUsed by:310
Symbol 310 MovieClipUses:309Used by:332 422 612 614 626
Symbol 311 GraphicUsed by:312
Symbol 312 MovieClipUses:311Used by:317 422 612 614 626
Symbol 313 GraphicUsed by:314
Symbol 314 MovieClipUses:313Used by:317 436 557 563 602 610
Symbol 315 GraphicUsed by:316
Symbol 316 MovieClipUses:315Used by:317 447 459 627 628 633 636 637 638 640 642
Symbol 317 MovieClipUses:312 314 316Used by:332
Symbol 318 GraphicUsed by:319
Symbol 319 MovieClipUses:318Used by:332 422 612 614 626
Symbol 320 GraphicUsed by:323
Symbol 321 GraphicUsed by:322
Symbol 322 MovieClipUses:321Used by:323 435 458
Symbol 323 MovieClipUses:320 322Used by:332 422 612 626
Symbol 324 GraphicUsed by:331
Symbol 325 GraphicUsed by:331
Symbol 326 GraphicUsed by:331
Symbol 327 GraphicUsed by:328
Symbol 328 MovieClipUses:327Used by:331 433 445 456
Symbol 329 GraphicUsed by:330
Symbol 330 MovieClipUses:329Used by:331
Symbol 331 MovieClipUses:324 10 325 326 328 330Used by:332 422 612 614 626
Symbol 332 MovieClipUses:308 310 317 319 10 323 331Used by:339 381
Symbol 333 BitmapUsed by:334 686 688 692 694 696 698 700
Symbol 334 GraphicUses:333Used by:339 381
Symbol 335 EditableTextUses:71Used by:336
Symbol 336 MovieClip {txt_help_health}Uses:335Used by:339 381
Symbol 337 EditableTextUses:71Used by:338
Symbol 338 MovieClip {txt_help_bonus}Uses:337Used by:339 381
Symbol 339 MovieClip {penguins_fla.bg_help_95}Uses:132 133 134 135 136 137 146 261 262 8 148 265 268 271 274 277 278 284 286 288 289 291 13 293 296 299 301 306 332 334 336 338 138 139 140Used by:381 524
Symbol 340 EditableTextUses:71Used by:341
Symbol 341 MovieClip {txt_charSelect_private}Uses:340Used by:342
Symbol 342 MovieClipUses:341Used by:349
Symbol 343 BitmapUsed by:344
Symbol 344 GraphicUses:343Used by:345
Symbol 345 MovieClipUses:61 344Used by:346
Symbol 346 MovieClip {penguins_fla.char_Private_spin_144}Uses:345Used by:349
Symbol 347 GraphicUsed by:348
Symbol 348 MovieClipUses:347Used by:349
Symbol 349 MovieClip {btn_select_private}Uses:342 220 112 346 43 348Used by:380
Symbol 350 EditableTextUses:71Used by:351
Symbol 351 MovieClip {txt_charSelect_kowalski}Uses:350Used by:352
Symbol 352 MovieClipUses:351Used by:357
Symbol 353 BitmapUsed by:354
Symbol 354 GraphicUses:353Used by:355
Symbol 355 MovieClipUses:61 354Used by:357
Symbol 356 MovieClip {penguins_fla.char_Kowalski_spin_151}Uses:217Used by:357
Symbol 357 MovieClip {btn_select_kowalski}Uses:352 355 112 356 43Used by:380
Symbol 358 EditableTextUses:71Used by:359
Symbol 359 MovieClip {txt_charSelect_rico}Uses:358Used by:360
Symbol 360 MovieClipUses:359Used by:365
Symbol 361 BitmapUsed by:362
Symbol 362 GraphicUses:361Used by:363
Symbol 363 MovieClipUses:61 362Used by:364
Symbol 364 MovieClip {penguins_fla.char_Rico_spin_155}Uses:363Used by:365
Symbol 365 MovieClip {btn_select_rico}Uses:360 223 112 364 43Used by:380
Symbol 366 EditableTextUses:71Used by:367
Symbol 367 MovieClip {txt_charSelect_skipper}Uses:366Used by:368
Symbol 368 MovieClipUses:367Used by:376
Symbol 369 BitmapUsed by:370
Symbol 370 GraphicUses:369Used by:371
Symbol 371 MovieClipUses:61 370Used by:376
Symbol 372 BitmapUsed by:373
Symbol 373 GraphicUses:372Used by:374
Symbol 374 MovieClipUses:61 373Used by:375 501
Symbol 375 MovieClip {penguins_fla.char_Skipper_spin_161}Uses:374Used by:376
Symbol 376 MovieClip {btn_select_skipper}Uses:368 371 112 375 43Used by:380
Symbol 377 EditableTextUses:71Used by:378
Symbol 378 MovieClip {txt_charSelect_title}Uses:377Used by:379
Symbol 379 MovieClipUses:378Used by:380
Symbol 380 MovieClip {nick.pom.bootcampblitz.intro.CharSelect}Uses:214 349 357 365 376 379Used by:381
Symbol 381 MovieClip {nick.pom.bootcampblitz.intro.IntroContent}Uses:235 260 214 220 223 226 238 247 250 245 242 339 146 261 262 8 148 265 268 271 274 277 278 284 286 288 289 291 13 293 296 299 301 306 332 334 336 338 380Used by:392
Symbol 382 GraphicUsed by:383
Symbol 383 MovieClipUses:382Used by:387
Symbol 384 EditableTextUses:108Used by:385
Symbol 385 MovieClip {txt_btn_skip}Uses:384Used by:386
Symbol 386 MovieClipUses:385Used by:387
Symbol 387 MovieClip {btn_skip}Uses:383 386 112 113Used by:392
Symbol 388 EditableTextUses:108Used by:389
Symbol 389 MovieClip {txt_btn_play}Uses:388Used by:390
Symbol 390 MovieClipUses:389Used by:391
Symbol 391 MovieClip {btn_play02}Uses:150 390 112 113Used by:392 524
Symbol 392 MovieClip {nick.pom.bootcampblitz.screens.Intro}Uses:381 186 190 387 391Used by:720
Symbol 393 BitmapUsed by:394
Symbol 394 GraphicUses:393Used by:395
Symbol 395 MovieClipUses:394Used by:400
Symbol 396 GraphicUses:23Used by:399
Symbol 397 GraphicUsed by:398
Symbol 398 MovieClipUses:397Used by:399
Symbol 399 MovieClipUses:396 398Used by:400
Symbol 400 MovieClipUses:205 395 399Used by:401
Symbol 401 MovieClip {bg_scroll}Uses:400Used by:461
Symbol 402 BitmapUsed by:403 407 408 409 412
Symbol 403 GraphicUses:402Used by:414
Symbol 404 BitmapUsed by:405 412
Symbol 405 GraphicUses:404Used by:406
Symbol 406 MovieClipUses:405Used by:414
Symbol 407 GraphicUses:402Used by:414
Symbol 408 GraphicUses:402Used by:414
Symbol 409 GraphicUses:402Used by:414
Symbol 410 MovieClipUses:303 11 305Used by:414
Symbol 411 BitmapUsed by:412
Symbol 412 GraphicUses:411 402 404Used by:413
Symbol 413 MovieClipUses:412Used by:414
Symbol 414 MovieClip {pom_bootcampblitz_sewer}Uses:403 406 407 408 409 410 413Used by:461
Symbol 415 GraphicUsed by:418
Symbol 416 GraphicUsed by:417
Symbol 417 MovieClipUses:416Used by:418
Symbol 418 MovieClipUses:415 417Used by:422 436 447 459
Symbol 419 GraphicUsed by:421
Symbol 420 GraphicUsed by:421
Symbol 421 MovieClip {penguins_fla.bubblePop_191}Uses:419 420Used by:422 436 447 459
Symbol 422 MovieClipUses:308 310 312 319 10 331 323 418 421Used by:460 626
Symbol 423 GraphicUsed by:424
Symbol 424 MovieClipUses:423Used by:436 557 563 602 610
Symbol 425 GraphicUsed by:426
Symbol 426 MovieClipUses:425Used by:436 557 563 602 610
Symbol 427 GraphicUsed by:433
Symbol 428 GraphicUsed by:433
Symbol 429 GraphicUsed by:430
Symbol 430 MovieClipUses:429Used by:433
Symbol 431 GraphicUsed by:432
Symbol 432 MovieClipUses:431Used by:433
Symbol 433 MovieClipUses:427 10 428 328 430 432Used by:436 557 563 602 610
Symbol 434 GraphicUsed by:435
Symbol 435 MovieClipUses:434 322Used by:436 447 557 602 610 627 633 636
Symbol 436 MovieClipUses:308 424 314 426 433 435 418 421Used by:460 610
Symbol 437 GraphicUsed by:438
Symbol 438 MovieClipUses:437Used by:447 627 628 633 636
Symbol 439 GraphicUsed by:440
Symbol 440 MovieClipUses:439Used by:447 627 628 633 636
Symbol 441 GraphicUsed by:446
Symbol 442 GraphicUsed by:446
Symbol 443 GraphicUsed by:446
Symbol 444 GraphicUsed by:445
Symbol 445 MovieClipUses:444 328Used by:446
Symbol 446 MovieClipUses:441 10 442 443 445Used by:447 627 628 633 636
Symbol 447 MovieClipUses:308 438 316 440 446 435 418 421Used by:460 636
Symbol 448 GraphicUsed by:449
Symbol 449 MovieClipUses:448Used by:459 637 638 640 642
Symbol 450 GraphicUsed by:451
Symbol 451 MovieClipUses:450Used by:459 637 638 640 642
Symbol 452 GraphicUsed by:456
Symbol 453 GraphicUsed by:454
Symbol 454 MovieClipUses:453Used by:456
Symbol 455 GraphicUsed by:456
Symbol 456 MovieClipUses:452 10 328 454 455Used by:459 637 638 640 642
Symbol 457 GraphicUsed by:458
Symbol 458 MovieClipUses:457 322Used by:459 637 640 642
Symbol 459 MovieClipUses:308 449 316 451 456 458 418 421Used by:460 642
Symbol 460 MovieClip {penguins_fla._sewerPlayer_187}Uses:422 436 447 459Used by:461
Symbol 461 MovieClip {nick.pom.bootcampblitz.Game}Uses:198 202 401 38 414 8 460Used by:720
Symbol 462 EditableTextUses:108Used by:463
Symbol 463 MovieClip {txt_btn_menu}Uses:462Used by:464
Symbol 464 MovieClipUses:463Used by:465
Symbol 465 MovieClip {btn_menu}Uses:156 464 112 113Used by:523
Symbol 466 GraphicUsed by:470
Symbol 467 GraphicUsed by:470
Symbol 468 GraphicUsed by:469
Symbol 469 MovieClipUses:468Used by:470
Symbol 470 MovieClipUses:104 466 467 469Used by:485
Symbol 471 EditableTextUses:108Used by:472
Symbol 472 MovieClip {txt_btn_quit}Uses:471Used by:473
Symbol 473 MovieClipUses:472Used by:474
Symbol 474 MovieClip {btn_quit}Uses:473 112 113Used by:485
Symbol 475 EditableTextUses:108Used by:476
Symbol 476 MovieClip {txt_btn_help}Uses:475Used by:477
Symbol 477 MovieClipUses:476Used by:480
Symbol 478 FontUsed by:479
Symbol 479 TextUses:478Used by:480
Symbol 480 MovieClip {btn_help}Uses:477 112 113 479Used by:485
Symbol 481 EditableTextUses:108Used by:482
Symbol 482 MovieClip {txt_btn_resume}Uses:481Used by:483
Symbol 483 MovieClipUses:482Used by:484
Symbol 484 MovieClip {btn_resume}Uses:483 112 113Used by:485
Symbol 485 MovieClip {nick.pom.bootcampblitz.menu.Menu}Uses:8 470 474 130 480 484Used by:523
Symbol 486 GraphicUsed by:498
Symbol 487 EditableTextUses:71Used by:488
Symbol 488 MovieClip {txt_quit_header}Uses:487Used by:489
Symbol 489 MovieClipUses:488Used by:498
Symbol 490 EditableTextUses:108Used by:491
Symbol 491 MovieClip {txt_btn_no}Uses:490Used by:492
Symbol 492 MovieClipUses:491Used by:493
Symbol 493 MovieClip {btn_no}Uses:492 112 113Used by:498
Symbol 494 EditableTextUses:108Used by:495
Symbol 495 MovieClip {txt_btn_yes}Uses:494Used by:496
Symbol 496 MovieClipUses:495Used by:497
Symbol 497 MovieClip {btn_yes}Uses:496 112 113Used by:498
Symbol 498 MovieClip {nick.pom.bootcampblitz.menu.MenuQuitConfirmation}Uses:486 489 493 497Used by:523
Symbol 499 GraphicUsed by:501
Symbol 500 GraphicUsed by:501
Symbol 501 MovieClipUses:499 500 374 223 217 220Used by:523
Symbol 502 GraphicUsed by:518
Symbol 503 GraphicUsed by:518
Symbol 504 GraphicUsed by:518
Symbol 505 GraphicUsed by:518
Symbol 506 GraphicUsed by:518
Symbol 507 GraphicUsed by:518
Symbol 508 GraphicUsed by:518
Symbol 509 GraphicUsed by:518
Symbol 510 GraphicUsed by:518
Symbol 511 GraphicUsed by:518
Symbol 512 GraphicUsed by:518
Symbol 513 GraphicUsed by:518
Symbol 514 GraphicUsed by:518
Symbol 515 GraphicUsed by:518
Symbol 516 GraphicUsed by:518
Symbol 517 GraphicUsed by:518
Symbol 518 MovieClipUses:502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517Used by:523
Symbol 519 EditableTextUses:71Used by:523
Symbol 520 EditableTextUses:71Used by:521
Symbol 521 MovieClip {txt_ui_score}Uses:520Used by:522
Symbol 522 MovieClipUses:521Used by:523
Symbol 523 MovieClip {nick.pom.bootcampblitz.UI}Uses:465 485 130 498 501 518 519 522Used by:720
Symbol 524 MovieClip {nick.pom.bootcampblitz.screens.Help}Uses:339 391Used by:720
Symbol 525 MovieClip {penguins_fla._grayOut_241}Uses:8Used by:542
Symbol 526 GraphicUses:99 100Used by:528 542
Symbol 527 MovieClip {btn_playAgain}Uses:153 112 113Used by:528 542
Symbol 528 MovieClip {penguins_fla.bg_btns_gameOverScreen_243}Uses:526 107 527Used by:542
Symbol 529 GraphicUsed by:542
Symbol 530 EditableTextUses:71Used by:531
Symbol 531 MovieClip {txt_gameover_msg1}Uses:530Used by:536
Symbol 532 EditableTextUses:71Used by:533
Symbol 533 MovieClip {txt_gameover_msg2}Uses:532Used by:536
Symbol 534 EditableTextUses:71Used by:535
Symbol 535 MovieClip {txt_gameover_msg3}Uses:534Used by:536
Symbol 536 MovieClipUses:531 533 535Used by:542
Symbol 537 GraphicUsed by:542
Symbol 538 EditableTextUses:71Used by:539
Symbol 539 MovieClip {txt_gameover_score_header}Uses:538Used by:540
Symbol 540 MovieClipUses:539Used by:542
Symbol 541 EditableTextUses:71Used by:542
Symbol 542 MovieClip {nick.pom.bootcampblitz.screens.GameOver}Uses:525 214 226 526 107 527 528 8 529 536 537 540 541Used by:720
Symbol 543 EditableTextUses:165Used by:554
Symbol 544 Sound {nick_pom_bootcamp_sounds_down}Used by:554
Symbol 545 Sound {bootcamp_sfx_fish}Used by:554
Symbol 546 Sound {bootcamp_sfx_hit}Used by:554
Symbol 547 Sound {bootcamp_sfx_manhole}Used by:554
Symbol 548 Sound {bootcamp_sfx_bonus}Used by:554
Symbol 549 Sound {bootcamp_sfx_ramp}Used by:554
Symbol 550 Sound {bootcamp_sfx_manhole_exit}Used by:554
Symbol 551 Sound {bootcamp_sfx_snowball}Used by:554
Symbol 552 Sound {nick_pom_bootcamp_sounds_splashMusic}Used by:554
Symbol 553 Sound {nick_pom_bootcamp_sounds_gameMusic}Used by:554
Symbol 554 MovieClip {penguins_fla.soundContainer_250}Uses:543 6 544 545 546 547 548 549 550 551 552 553Used by:720
Symbol 555 GraphicUsed by:556
Symbol 556 MovieClipUses:555Used by:557 610 611 626 627 636 637 642
Symbol 557 MovieClipUses:11 556 308 424 314 426 433 435Used by:610
Symbol 558 GraphicUsed by:563 610 614 626 628 636 638 642
Symbol 559 GraphicUsed by:563 610 614 626 628 636 638 642
Symbol 560 GraphicUsed by:563 610 614 626 628 636 638 642
Symbol 561 GraphicUsed by:563 610 614 626 628 636 638 642
Symbol 562 GraphicUsed by:563 610 614 626 628 636 638 642
Symbol 563 MovieClipUses:11 558 308 424 314 426 433 559 560 561 562Used by:610
Symbol 564 BitmapUsed by:565
Symbol 565 GraphicUses:564Used by:566
Symbol 566 MovieClipUses:565Used by:598 610 623 626 632 636 639 642
Symbol 567 GraphicUsed by:598 610 623 626 632 636 639 642
Symbol 568 GraphicUsed by:598 610 623 626 632 636 639 642
Symbol 569 GraphicUsed by:598 610 623 626 632 636 639 642
Symbol 570 GraphicUsed by:598 610 623 626 632 636 639 642
Symbol 571 GraphicUsed by:598 610 623 626 632 636 639 642
Symbol 572 GraphicUsed by:598 610 623 626 632 636 639 642
Symbol 573 GraphicUsed by:598 610 623 626 632 636 639 642
Symbol 574 GraphicUsed by:598 610 623 626 632 636 639 642
Symbol 575 GraphicUsed by:598 610 623 626 632 636 639 642
Symbol 576 GraphicUsed by:598 610 623 626 632 636 639 642
Symbol 577 GraphicUsed by:598 610 623 626 632 636 639 642
Symbol 578 GraphicUsed by:598 610 623 626 632 636 639 642
Symbol 579 GraphicUsed by:610 626 636 642
Symbol 580 GraphicUsed by:581
Symbol 581 MovieClipUses:580Used by:610 626 636 642 684
Symbol 582 GraphicUsed by:610 626 636 642
Symbol 583 GraphicUsed by:610 626 636 642
Symbol 584 GraphicUsed by:610 626 636 642
Symbol 585 GraphicUsed by:586
Symbol 586 MovieClipUses:585Used by:598 610 619 626 632 636 639 642
Symbol 587 BitmapUsed by:588
Symbol 588 GraphicUses:587Used by:598 610 619
Symbol 589 GraphicUsed by:598 610 619 626 632 636 639 642
Symbol 590 GraphicUsed by:598 610 619
Symbol 591 GraphicUsed by:610 642
Symbol 592 GraphicUsed by:610 626 636 642
Symbol 593 GraphicUsed by:610 642
Symbol 594 GraphicUsed by:610 626 636 642
Symbol 595 GraphicUsed by:610 642
Symbol 596 GraphicUsed by:610 626 636 642
Symbol 597 GraphicUsed by:610 626 636 642
Symbol 598 MovieClipUses:11 566 586 588 308 589 590 567 568 569 570 571 572 573 574 575 576 577 578Used by:610
Symbol 599 BitmapUsed by:600
Symbol 600 GraphicUses:599Used by:610 619 626 636 642
Symbol 601 GraphicUsed by:610 619 626 632 636 639 642
Symbol 602 MovieClipUses:308 424 314 426 433 435Used by:610
Symbol 603 GraphicUsed by:610
Symbol 604 GraphicUsed by:610
Symbol 605 GraphicUsed by:610 626 636 642
Symbol 606 GraphicUsed by:610 626 636 642
Symbol 607 GraphicUsed by:610 626 636 642
Symbol 608 GraphicUsed by:610 626 636 642
Symbol 609 GraphicUsed by:610 626 636 642
Symbol 610 MovieClip {pom_bootcamp_player_rico}Uses:557 15 11 556 308 424 314 426 433 435 558 559 560 561 562 563 566 567 568 569 570 571 572 573 574 575 576 577 578 579 581 582 583 584 586 588 589 590 591 592 593 594 595 596 597 598 600 601 61 602 603 436 604 605 606 607 608 609Used by:720
Symbol 611 MovieClipUses:556Used by:613
Symbol 612 MovieClipUses:308 310 312 319 10 331 323Used by:613 626
Symbol 613 MovieClipUses:11 611 612Used by:626
Symbol 614 MovieClipUses:11 558 308 310 312 319 10 331 559 560 561 562Used by:626
Symbol 615 BitmapUsed by:616
Symbol 616 GraphicUses:615Used by:619 632 636
Symbol 617 BitmapUsed by:618
Symbol 618 GraphicUses:617Used by:619 639 642
Symbol 619 MovieClip {penguins_fla.snowball_runaway_266}Uses:586 600 308 589 601 588 590 616 618Used by:623 626
Symbol 620 GraphicUsed by:626
Symbol 621 GraphicUsed by:626
Symbol 622 GraphicUsed by:626
Symbol 623 MovieClipUses:11 566 619 567 568 569 570 571 572 573 574 575 576 577 578Used by:626
Symbol 624 GraphicUsed by:626 642
Symbol 625 GraphicUsed by:626
Symbol 626 MovieClip {pom_bootcamp_player_skipper}Uses:613 15 11 556 308 310 312 319 10 331 323 558 559 560 561 562 614 566 567 568 569 570 571 572 573 574 575 576 577 578 579 581 582 583 584 619 620 592 621 594 622 596 597 623 586 600 589 601 61 612 624 422 625 605 606 607 608 609Used by:720
Symbol 627 MovieClipUses:11 556 308 438 316 440 446 435Used by:636
Symbol 628 MovieClipUses:11 558 308 438 316 440 446 559 560 561 562Used by:636
Symbol 629 GraphicUsed by:636
Symbol 630 GraphicUsed by:636
Symbol 631 GraphicUsed by:636
Symbol 632 MovieClipUses:11 566 586 616 308 589 601 567 568 569 570 571 572 573 574 575 576 577 578Used by:636
Symbol 633 MovieClipUses:308 438 316 440 446 435Used by:636
Symbol 634 GraphicUsed by:636
Symbol 635 GraphicUsed by:636
Symbol 636 MovieClip {pom_bootcamp_player_kowalski}Uses:627 15 11 556 308 438 316 440 446 435 558 559 560 561 562 628 566 567 568 569 570 571 572 573 574 575 576 577 578 579 581 582 583 584 586 616 589 601 629 592 630 594 631 596 597 632 600 61 633 634 447 635 605 606 607 608 609Used by:720
Symbol 637 MovieClipUses:11 556 308 449 316 451 456 458Used by:642
Symbol 638 MovieClipUses:11 558 308 449 316 451 456 559 560 561 562Used by:642
Symbol 639 MovieClipUses:11 566 586 618 308 589 601 567 568 569 570 571 572 573 574 575 576 577 578Used by:642
Symbol 640 MovieClipUses:308 449 316 451 456 458Used by:642
Symbol 641 GraphicUsed by:642
Symbol 642 MovieClip {pom_bootcamp_player_private}Uses:637 15 11 556 308 449 316 451 456 458 558 559 560 561 562 638 566 567 568 569 570 571 572 573 574 575 576 577 578 579 581 582 583 584 586 618 589 601 591 592 593 594 595 596 597 639 600 61 640 624 459 641 605 606 607 608 609Used by:720
Symbol 643 BitmapUsed by:644
Symbol 644 GraphicUses:643Used by:656
Symbol 645 GraphicUsed by:649
Symbol 646 BitmapUsed by:647
Symbol 647 GraphicUses:646Used by:648
Symbol 648 MovieClipUses:647Used by:649 656
Symbol 649 MovieClipUses:645 648Used by:656
Symbol 650 BitmapUsed by:651
Symbol 651 GraphicUses:650Used by:656
Symbol 652 BitmapUsed by:653
Symbol 653 GraphicUses:652Used by:656
Symbol 654 BitmapUsed by:655
Symbol 655 GraphicUses:654Used by:656
Symbol 656 MovieClip {penguins_fla.hole_characters_280}Uses:644 649 651 648 653 655Used by:662
Symbol 657 BitmapUsed by:658
Symbol 658 GraphicUses:657Used by:659
Symbol 659 MovieClipUses:658Used by:662
Symbol 660 GraphicUsed by:661
Symbol 661 MovieClipUses:660Used by:662 672 684
Symbol 662 MovieClip {bootcamp_hole}Uses:656 659 15 8 661Used by:720
Symbol 663 BitmapUsed by:664
Symbol 664 GraphicUses:663Used by:671
Symbol 665 BitmapUsed by:666
Symbol 666 GraphicUses:665Used by:671
Symbol 667 BitmapUsed by:668
Symbol 668 GraphicUses:667Used by:671
Symbol 669 BitmapUsed by:670
Symbol 670 GraphicUses:669Used by:671
Symbol 671 MovieClip {penguins_fla.ramp_characters_286}Uses:664 666 668 670Used by:672
Symbol 672 MovieClip {bootcamp_ramp}Uses:11 8 15 671 299 301 661Used by:720
Symbol 673 BitmapUsed by:674
Symbol 674 GraphicUses:673Used by:681
Symbol 675 BitmapUsed by:676
Symbol 676 GraphicUses:675Used by:681
Symbol 677 BitmapUsed by:678
Symbol 678 GraphicUses:677Used by:681
Symbol 679 BitmapUsed by:680
Symbol 680 GraphicUses:679Used by:681
Symbol 681 MovieClip {penguins_fla.snowball_characters_288}Uses:674 676 678 680Used by:684
Symbol 682 GraphicUsed by:683
Symbol 683 MovieClipUses:682Used by:684
Symbol 684 MovieClip {bootcamp_snowball}Uses:11 681 683 581 8 15 661Used by:720
Symbol 685 MovieClip {bootcamp_bonus}Uses:15 11 305 303 8Used by:720
Symbol 686 GraphicUses:333Used by:687
Symbol 687 MovieClipUses:686Used by:702 718
Symbol 688 GraphicUses:333Used by:691
Symbol 689 GraphicUsed by:690
Symbol 690 MovieClipUses:689Used by:691 693 695
Symbol 691 MovieClipUses:688 690Used by:702 719
Symbol 692 GraphicUses:333Used by:693
Symbol 693 MovieClipUses:692 690Used by:702 719
Symbol 694 GraphicUses:333Used by:695
Symbol 695 MovieClipUses:694 690Used by:702 719
Symbol 696 GraphicUses:333Used by:697
Symbol 697 MovieClipUses:696Used by:702 719
Symbol 698 GraphicUses:333Used by:699
Symbol 699 MovieClipUses:698Used by:702 719
Symbol 700 GraphicUses:333Used by:701
Symbol 701 MovieClipUses:700Used by:702 719
Symbol 702 MovieClip {bootcamp_fish}Uses:11 687 15 8 691 693 695 697 699 701Used by:720
Symbol 703 GraphicUsed by:704
Symbol 704 MovieClipUses:703Used by:707
Symbol 705 GraphicUsed by:706
Symbol 706 MovieClipUses:705Used by:707
Symbol 707 MovieClip {bootcamp_obstacle_snowmound}Uses:11 704 15 8 16 706 17 18 19 20 21Used by:720
Symbol 708 GraphicUsed by:709
Symbol 709 MovieClipUses:708Used by:711
Symbol 710 GraphicUsed by:711
Symbol 711 MovieClip {bootcamp_obstacle_haybale}Uses:709 15 8 16 11 710 17 18 19 20 21Used by:720
Symbol 712 MovieClipUses:303 305Used by:713
Symbol 713 MovieClipUses:712Used by:714
Symbol 714 MovieClip {bootcamp_bonus_elevated}Uses:15 11 713 8 303 305Used by:720
Symbol 715 GraphicUsed by:717
Symbol 716 GraphicUsed by:717
Symbol 717 MovieClip {bootcamp_sewerHole}Uses:715 15 8 716Used by:720
Symbol 718 MovieClipUses:687Used by:719
Symbol 719 MovieClip {bootcamp_fish_elevated}Uses:15 8 11 718 691 693 695 697 699 701Used by:720
Symbol 720 MovieClip {nick.pom.bootcampblitz.Engine}Uses:131 141 143 144 196 392 461 523 524 542 554 610 626 636 642 22 662 672 684 685 702 707 711 714 717 719Used by:Timeline

Instance Names

"__id5_"Frame 1Symbol 59 MovieClip {GamesChartAPI_AS3}
"loader"Frame 16Symbol 78 MovieClip {nick.pom.bootcampblitz.loader.GameLoader}
"engine"Frame 24Symbol 720 MovieClip {nick.pom.bootcampblitz.Engine}
"sortPos"Symbol 22 MovieClip {bootcamp_obstacle_tires} Frame 1Symbol 8 MovieClip
"hit"Symbol 22 MovieClip {bootcamp_obstacle_tires} Frame 1Symbol 15 MovieClip
"boundingBox_mc"Symbol 49 MovieClip {fl.video.FLVPlayback} Frame 1Symbol 45 MovieClip
"txt"Symbol 58 MovieClip Frame 1Symbol 55 EditableText
"_preview"Symbol 59 MovieClip {GamesChartAPI_AS3} Frame 1Symbol 58 MovieClip
"skip_button"Symbol 70 MovieClip {penguins_fla.loaderProgressClip_3} Frame 100Symbol 69 Button
"loader_loading"Symbol 74 MovieClip {txt_loader_loading} Frame 1Symbol 73 EditableText
"progress"Symbol 78 MovieClip {nick.pom.bootcampblitz.loader.GameLoader} Frame 5Symbol 70 MovieClip {penguins_fla.loaderProgressClip_3}
"percentage_txt"Symbol 78 MovieClip {nick.pom.bootcampblitz.loader.GameLoader} Frame 5Symbol 72 EditableText
"powerRangersStreamingPlayback"Symbol 78 MovieClip {nick.pom.bootcampblitz.loader.GameLoader} Frame 5Symbol 49 MovieClip {fl.video.FLVPlayback}
"btn_play_now"Symbol 110 MovieClip {txt_btn_play_now} Frame 1Symbol 109 EditableText
"__id4_"Symbol 113 MovieClip {penguins_fla.btn_sfx_26} Frame 21Symbol 43 MovieClip {PlaySound}
"hitArea"Symbol 114 MovieClip {btn_play} Frame 1Symbol 112 MovieClip
"sfx"Symbol 114 MovieClip {btn_play} Frame 1Symbol 113 MovieClip {penguins_fla.btn_sfx_26}
"btn_leaderboard"Symbol 119 MovieClip {txt_btn_leaderboard} Frame 1Symbol 118 EditableText
"hitArea"Symbol 121 MovieClip {btn_playcopy} Frame 1Symbol 112 MovieClip
"sfx"Symbol 121 MovieClip {btn_playcopy} Frame 1Symbol 113 MovieClip {penguins_fla.btn_sfx_26}
"hitArea"Symbol 126 MovieClip {btn_music_on} Frame 1Symbol 112 MovieClip
"sfx"Symbol 126 MovieClip {btn_music_on} Frame 1Symbol 113 MovieClip {penguins_fla.btn_sfx_26}
"hitArea"Symbol 129 MovieClip {btn_music_off} Frame 1Symbol 112 MovieClip
"sfx"Symbol 129 MovieClip {btn_music_off} Frame 1Symbol 113 MovieClip {penguins_fla.btn_sfx_26}
"viewScoresBtn"Symbol 131 MovieClip {nick.pom.bootcampblitz.screens.Splash} Frame 41Symbol 121 MovieClip {btn_playcopy}
"playBtn"Symbol 131 MovieClip {nick.pom.bootcampblitz.screens.Splash} Frame 41Symbol 114 MovieClip {btn_play}
"musicToggle"Symbol 131 MovieClip {nick.pom.bootcampblitz.screens.Splash} Frame 41Symbol 130 MovieClip {penguins_fla.musicToggle_31}
"btn_play_again"Symbol 152 MovieClip {txt_btn_play_again} Frame 1Symbol 151 EditableText
"hitArea"Symbol 154 MovieClip {btn_play_again} Frame 1Symbol 112 MovieClip
"sfx"Symbol 154 MovieClip {btn_play_again} Frame 1Symbol 113 MovieClip {penguins_fla.btn_sfx_26}
"hitArea"Symbol 159 MovieClip {btn_close} Frame 1Symbol 112 MovieClip
"sfx"Symbol 159 MovieClip {btn_close} Frame 1Symbol 113 MovieClip {penguins_fla.btn_sfx_26}
"player"Symbol 169 MovieClip Frame 1Symbol 166 EditableText
"score"Symbol 169 MovieClip Frame 1Symbol 167 EditableText
"rank"Symbol 169 MovieClip Frame 1Symbol 168 EditableText
"playerName"Symbol 181 MovieClip Frame 1Symbol 178 EditableText
"score"Symbol 181 MovieClip Frame 1Symbol 179 EditableText
"rank"Symbol 181 MovieClip Frame 1Symbol 180 EditableText
"btn_next"Symbol 184 MovieClip {txt_btn_next} Frame 1Symbol 183 EditableText
"hitArea"Symbol 186 MovieClip {btn_backcopy} Frame 1Symbol 112 MovieClip
"sfx"Symbol 186 MovieClip {btn_backcopy} Frame 1Symbol 113 MovieClip {penguins_fla.btn_sfx_26}
"btn_back"Symbol 188 MovieClip {txt_btn_back} Frame 1Symbol 187 EditableText
"hitArea"Symbol 190 MovieClip {btn_back} Frame 1Symbol 112 MovieClip
"sfx"Symbol 190 MovieClip {btn_back} Frame 1Symbol 113 MovieClip {penguins_fla.btn_sfx_26}
"btn_submit"Symbol 192 MovieClip {txt_btn_submit} Frame 1Symbol 191 EditableText
"hitArea"Symbol 194 MovieClip {btn_submit_score02} Frame 1Symbol 112 MovieClip
"sfx"Symbol 194 MovieClip {btn_submit_score02} Frame 1Symbol 113 MovieClip {penguins_fla.btn_sfx_26}
"playAgainBtn"Symbol 196 MovieClip {nick.pom.bootcampblitz.highscore.HighScoreTable} Frame 15Symbol 154 MovieClip {btn_play_again}
"playBtn"Symbol 196 MovieClip {nick.pom.bootcampblitz.highscore.HighScoreTable} Frame 15Symbol 114 MovieClip {btn_play}
"closeBtn"Symbol 196 MovieClip {nick.pom.bootcampblitz.highscore.HighScoreTable} Frame 15Symbol 159 MovieClip {btn_close}
"hs_3"Symbol 196 MovieClip {nick.pom.bootcampblitz.highscore.HighScoreTable} Frame 34Symbol 169 MovieClip
"hs_4"Symbol 196 MovieClip {nick.pom.bootcampblitz.highscore.HighScoreTable} Frame 34Symbol 169 MovieClip
"hs_5"Symbol 196 MovieClip {nick.pom.bootcampblitz.highscore.HighScoreTable} Frame 34Symbol 169 MovieClip
"hs_6"Symbol 196 MovieClip {nick.pom.bootcampblitz.highscore.HighScoreTable} Frame 34Symbol 169 MovieClip
"hs_7"Symbol 196 MovieClip {nick.pom.bootcampblitz.highscore.HighScoreTable} Frame 34Symbol 169 MovieClip
"hs_8"Symbol 196 MovieClip {nick.pom.bootcampblitz.highscore.HighScoreTable} Frame 34Symbol 169 MovieClip
"hs_9"Symbol 196 MovieClip {nick.pom.bootcampblitz.highscore.HighScoreTable} Frame 34Symbol 169 MovieClip
"hs_10"Symbol 196 MovieClip {nick.pom.bootcampblitz.highscore.HighScoreTable} Frame 34Symbol 169 MovieClip
"hs_2"Symbol 196 MovieClip {nick.pom.bootcampblitz.highscore.HighScoreTable} Frame 34Symbol 169 MovieClip
"hs_1"Symbol 196 MovieClip {nick.pom.bootcampblitz.highscore.HighScoreTable} Frame 34Symbol 169 MovieClip
"playerPanel"Symbol 196 MovieClip {nick.pom.bootcampblitz.highscore.HighScoreTable} Frame 34Symbol 181 MovieClip
"pagination_txt"Symbol 196 MovieClip {nick.pom.bootcampblitz.highscore.HighScoreTable} Frame 34Symbol 182 EditableText
"nextBtn"Symbol 196 MovieClip {nick.pom.bootcampblitz.highscore.HighScoreTable} Frame 34Symbol 186 MovieClip {btn_backcopy}
"backBtn"Symbol 196 MovieClip {nick.pom.bootcampblitz.highscore.HighScoreTable} Frame 34Symbol 190 MovieClip {btn_back}
"submitScoreBtn"Symbol 196 MovieClip {nick.pom.bootcampblitz.highscore.HighScoreTable} Frame 34Symbol 194 MovieClip {btn_submit_score02}
"intro_1a"Symbol 229 MovieClip {txt_intro_1a} Frame 1Symbol 228 EditableText
"intro_1b"Symbol 233 MovieClip {txt_intro_1b} Frame 1Symbol 232 EditableText
"intro_2b"Symbol 241 MovieClip {txt_intro_2b} Frame 1Symbol 240 EditableText
"intro_2a"Symbol 244 MovieClip {txt_intro_2a} Frame 1Symbol 243 EditableText
"intro_2c"Symbol 249 MovieClip {txt_intro_2c} Frame 1Symbol 248 EditableText
"help_title"Symbol 264 MovieClip {txt_help_title} Frame 1Symbol 263 EditableText
"help_subhead"Symbol 267 MovieClip {txt_help_subhead} Frame 1Symbol 266 EditableText
"help_hazards"Symbol 270 MovieClip {txt_help_hazards} Frame 1Symbol 269 EditableText
"help_team"Symbol 273 MovieClip {txt_help_team} Frame 1Symbol 272 EditableText
"help_controls"Symbol 276 MovieClip {txt_help_controls} Frame 1Symbol 275 EditableText
"help_health"Symbol 336 MovieClip {txt_help_health} Frame 1Symbol 335 EditableText
"help_bonus"Symbol 338 MovieClip {txt_help_bonus} Frame 1Symbol 337 EditableText
"charSelect_private"Symbol 341 MovieClip {txt_charSelect_private} Frame 1Symbol 340 EditableText
"hitArea"Symbol 349 MovieClip {btn_select_private} Frame 1Symbol 112 MovieClip
"__id3_"Symbol 349 MovieClip {btn_select_private} Frame 11Symbol 43 MovieClip {PlaySound}
"charSelect_kowalski"Symbol 351 MovieClip {txt_charSelect_kowalski} Frame 1Symbol 350 EditableText
"hitArea"Symbol 357 MovieClip {btn_select_kowalski} Frame 1Symbol 112 MovieClip
"__id2_"Symbol 357 MovieClip {btn_select_kowalski} Frame 11Symbol 43 MovieClip {PlaySound}
"charSelect_rico"Symbol 359 MovieClip {txt_charSelect_rico} Frame 1Symbol 358 EditableText
"hitArea"Symbol 365 MovieClip {btn_select_rico} Frame 1Symbol 112 MovieClip
"__id1_"Symbol 365 MovieClip {btn_select_rico} Frame 11Symbol 43 MovieClip {PlaySound}
"charSelect_skipper"Symbol 367 MovieClip {txt_charSelect_skipper} Frame 1Symbol 366 EditableText
"hitArea"Symbol 376 MovieClip {btn_select_skipper} Frame 1Symbol 112 MovieClip
"__id0_"Symbol 376 MovieClip {btn_select_skipper} Frame 11Symbol 43 MovieClip {PlaySound}
"charSelect_title"Symbol 378 MovieClip {txt_charSelect_title} Frame 1Symbol 377 EditableText
"privat"Symbol 380 MovieClip {nick.pom.bootcampblitz.intro.CharSelect} Frame 1Symbol 349 MovieClip {btn_select_private}
"kowalski"Symbol 380 MovieClip {nick.pom.bootcampblitz.intro.CharSelect} Frame 1Symbol 357 MovieClip {btn_select_kowalski}
"rico"Symbol 380 MovieClip {nick.pom.bootcampblitz.intro.CharSelect} Frame 1Symbol 365 MovieClip {btn_select_rico}
"skipper"Symbol 380 MovieClip {nick.pom.bootcampblitz.intro.CharSelect} Frame 1Symbol 376 MovieClip {btn_select_skipper}
"charSelect"Symbol 381 MovieClip {nick.pom.bootcampblitz.intro.IntroContent} Frame 25Symbol 380 MovieClip {nick.pom.bootcampblitz.intro.CharSelect}
"btn_skip"Symbol 385 MovieClip {txt_btn_skip} Frame 1Symbol 384 EditableText
"hitArea"Symbol 387 MovieClip {btn_skip} Frame 1Symbol 112 MovieClip
"sfx"Symbol 387 MovieClip {btn_skip} Frame 1Symbol 113 MovieClip {penguins_fla.btn_sfx_26}
"btn_play"Symbol 389 MovieClip {txt_btn_play} Frame 1Symbol 388 EditableText
"hitArea"Symbol 391 MovieClip {btn_play02} Frame 1Symbol 112 MovieClip
"sfx"Symbol 391 MovieClip {btn_play02} Frame 1Symbol 113 MovieClip {penguins_fla.btn_sfx_26}
"introContent"Symbol 392 MovieClip {nick.pom.bootcampblitz.screens.Intro} Frame 5Symbol 381 MovieClip {nick.pom.bootcampblitz.intro.IntroContent}
"nextBtn"Symbol 392 MovieClip {nick.pom.bootcampblitz.screens.Intro} Frame 11Symbol 186 MovieClip {btn_backcopy}
"backBtn"Symbol 392 MovieClip {nick.pom.bootcampblitz.screens.Intro} Frame 11Symbol 190 MovieClip {btn_back}
"skipBtn"Symbol 392 MovieClip {nick.pom.bootcampblitz.screens.Intro} Frame 11Symbol 387 MovieClip {btn_skip}
"playBtn"Symbol 392 MovieClip {nick.pom.bootcampblitz.screens.Intro} Frame 11Symbol 391 MovieClip {btn_play02}
"bonus11"Symbol 414 MovieClip {pom_bootcampblitz_sewer} Frame 1Symbol 410 MovieClip
"bonus10"Symbol 414 MovieClip {pom_bootcampblitz_sewer} Frame 1Symbol 410 MovieClip
"bonus9"Symbol 414 MovieClip {pom_bootcampblitz_sewer} Frame 1Symbol 410 MovieClip
"bonus8"Symbol 414 MovieClip {pom_bootcampblitz_sewer} Frame 1Symbol 410 MovieClip
"bonus7"Symbol 414 MovieClip {pom_bootcampblitz_sewer} Frame 1Symbol 410 MovieClip
"bonus6"Symbol 414 MovieClip {pom_bootcampblitz_sewer} Frame 1Symbol 410 MovieClip
"bonus5"Symbol 414 MovieClip {pom_bootcampblitz_sewer} Frame 1Symbol 410 MovieClip
"bonus4"Symbol 414 MovieClip {pom_bootcampblitz_sewer} Frame 1Symbol 410 MovieClip
"bonus3"Symbol 414 MovieClip {pom_bootcampblitz_sewer} Frame 1Symbol 410 MovieClip
"bonus2"Symbol 414 MovieClip {pom_bootcampblitz_sewer} Frame 1Symbol 410 MovieClip
"bonus1"Symbol 414 MovieClip {pom_bootcampblitz_sewer} Frame 1Symbol 410 MovieClip
"trees"Symbol 461 MovieClip {nick.pom.bootcampblitz.Game} Frame 1Symbol 401 MovieClip {bg_scroll}
"sewer"Symbol 461 MovieClip {nick.pom.bootcampblitz.Game} Frame 1Symbol 414 MovieClip {pom_bootcampblitz_sewer}
"bg_item"Symbol 461 MovieClip {nick.pom.bootcampblitz.Game} Frame 1Symbol 8 MovieClip
"sewerPlayer"Symbol 461 MovieClip {nick.pom.bootcampblitz.Game} Frame 1Symbol 460 MovieClip {penguins_fla._sewerPlayer_187}
"foreground_item"Symbol 461 MovieClip {nick.pom.bootcampblitz.Game} Frame 1Symbol 8 MovieClip
"btn_menu"Symbol 463 MovieClip {txt_btn_menu} Frame 1Symbol 462 EditableText
"hitArea"Symbol 465 MovieClip {btn_menu} Frame 1Symbol 112 MovieClip
"sfx"Symbol 465 MovieClip {btn_menu} Frame 1Symbol 113 MovieClip {penguins_fla.btn_sfx_26}
"btn_quit"Symbol 472 MovieClip {txt_btn_quit} Frame 1Symbol 471 EditableText
"hitArea"Symbol 474 MovieClip {btn_quit} Frame 1Symbol 112 MovieClip
"sfx"Symbol 474 MovieClip {btn_quit} Frame 1Symbol 113 MovieClip {penguins_fla.btn_sfx_26}
"btn_help"Symbol 476 MovieClip {txt_btn_help} Frame 1Symbol 475 EditableText
"hitArea"Symbol 480 MovieClip {btn_help} Frame 1Symbol 112 MovieClip
"sfx"Symbol 480 MovieClip {btn_help} Frame 1Symbol 113 MovieClip {penguins_fla.btn_sfx_26}
"btn_resume"Symbol 482 MovieClip {txt_btn_resume} Frame 1Symbol 481 EditableText
"hitArea"Symbol 484 MovieClip {btn_resume} Frame 1Symbol 112 MovieClip
"sfx"Symbol 484 MovieClip {btn_resume} Frame 1Symbol 113 MovieClip {penguins_fla.btn_sfx_26}
"quitBtn"Symbol 485 MovieClip {nick.pom.bootcampblitz.menu.Menu} Frame 5Symbol 474 MovieClip {btn_quit}
"musicToggle"Symbol 485 MovieClip {nick.pom.bootcampblitz.menu.Menu} Frame 5Symbol 130 MovieClip {penguins_fla.musicToggle_31}
"helpBtn"Symbol 485 MovieClip {nick.pom.bootcampblitz.menu.Menu} Frame 5Symbol 480 MovieClip {btn_help}
"resumeBtn"Symbol 485 MovieClip {nick.pom.bootcampblitz.menu.Menu} Frame 5Symbol 484 MovieClip {btn_resume}
"quit_header"Symbol 488 MovieClip {txt_quit_header} Frame 1Symbol 487 EditableText
"btn_no"Symbol 491 MovieClip {txt_btn_no} Frame 1Symbol 490 EditableText
"hitArea"Symbol 493 MovieClip {btn_no} Frame 1Symbol 112 MovieClip
"sfx"Symbol 493 MovieClip {btn_no} Frame 1Symbol 113 MovieClip {penguins_fla.btn_sfx_26}
"btn_yes"Symbol 495 MovieClip {txt_btn_yes} Frame 1Symbol 494 EditableText
"hitArea"Symbol 497 MovieClip {btn_yes} Frame 1Symbol 112 MovieClip
"sfx"Symbol 497 MovieClip {btn_yes} Frame 1Symbol 113 MovieClip {penguins_fla.btn_sfx_26}
"noBtn"Symbol 498 MovieClip {nick.pom.bootcampblitz.menu.MenuQuitConfirmation} Frame 5Symbol 493 MovieClip {btn_no}
"yesBtn"Symbol 498 MovieClip {nick.pom.bootcampblitz.menu.MenuQuitConfirmation} Frame 5Symbol 497 MovieClip {btn_yes}
"ui_score"Symbol 521 MovieClip {txt_ui_score} Frame 1Symbol 520 EditableText
"menuBtn"Symbol 523 MovieClip {nick.pom.bootcampblitz.UI} Frame 1Symbol 465 MovieClip {btn_menu}
"menu"Symbol 523 MovieClip {nick.pom.bootcampblitz.UI} Frame 1Symbol 485 MovieClip {nick.pom.bootcampblitz.menu.Menu}
"musicToggle"Symbol 523 MovieClip {nick.pom.bootcampblitz.UI} Frame 1Symbol 130 MovieClip {penguins_fla.musicToggle_31}
"quitConfirmation"Symbol 523 MovieClip {nick.pom.bootcampblitz.UI} Frame 1Symbol 498 MovieClip {nick.pom.bootcampblitz.menu.MenuQuitConfirmation}
"char"Symbol 523 MovieClip {nick.pom.bootcampblitz.UI} Frame 1Symbol 501 MovieClip
"healthMeter"Symbol 523 MovieClip {nick.pom.bootcampblitz.UI} Frame 1Symbol 518 MovieClip
"score"Symbol 523 MovieClip {nick.pom.bootcampblitz.UI} Frame 1Symbol 519 EditableText
"playBtn"Symbol 524 MovieClip {nick.pom.bootcampblitz.screens.Help} Frame 5Symbol 391 MovieClip {btn_play02}
"hitArea"Symbol 527 MovieClip {btn_playAgain} Frame 1Symbol 112 MovieClip
"sfx"Symbol 527 MovieClip {btn_playAgain} Frame 1Symbol 113 MovieClip {penguins_fla.btn_sfx_26}
"gameover_msg1"Symbol 531 MovieClip {txt_gameover_msg1} Frame 1Symbol 530 EditableText
"gameover_msg2"Symbol 533 MovieClip {txt_gameover_msg2} Frame 1Symbol 532 EditableText
"gameover_msg3"Symbol 535 MovieClip {txt_gameover_msg3} Frame 1Symbol 534 EditableText
"gameover_score_header"Symbol 539 MovieClip {txt_gameover_score_header} Frame 1Symbol 538 EditableText
"grayOut"Symbol 542 MovieClip {nick.pom.bootcampblitz.screens.GameOver} Frame 1Symbol 525 MovieClip {penguins_fla._grayOut_241}
"outroBoard"Symbol 542 MovieClip {nick.pom.bootcampblitz.screens.GameOver} Frame 16Symbol 528 MovieClip {penguins_fla.bg_btns_gameOverScreen_243}
"playBtn"Symbol 542 MovieClip {nick.pom.bootcampblitz.screens.GameOver} Frame 16Symbol 527 MovieClip {btn_playAgain}
"msg"Symbol 542 MovieClip {nick.pom.bootcampblitz.screens.GameOver} Frame 18Symbol 536 MovieClip
"score"Symbol 542 MovieClip {nick.pom.bootcampblitz.screens.GameOver} Frame 25Symbol 541 EditableText
"hit"Symbol 610 MovieClip {pom_bootcamp_player_rico} Frame 1Symbol 15 MovieClip
"hit"Symbol 626 MovieClip {pom_bootcamp_player_skipper} Frame 1Symbol 15 MovieClip
"hit"Symbol 636 MovieClip {pom_bootcamp_player_kowalski} Frame 1Symbol 15 MovieClip
"hit"Symbol 642 MovieClip {pom_bootcamp_player_private} Frame 1Symbol 15 MovieClip
"penguin"Symbol 662 MovieClip {bootcamp_hole} Frame 1Symbol 656 MovieClip {penguins_fla.hole_characters_280}
"hit"Symbol 662 MovieClip {bootcamp_hole} Frame 1Symbol 15 MovieClip
"sortPos"Symbol 662 MovieClip {bootcamp_hole} Frame 1Symbol 8 MovieClip
"sortPos"Symbol 672 MovieClip {bootcamp_ramp} Frame 1Symbol 8 MovieClip
"hit"Symbol 672 MovieClip {bootcamp_ramp} Frame 1Symbol 15 MovieClip
"penguin"Symbol 672 MovieClip {bootcamp_ramp} Frame 1Symbol 671 MovieClip {penguins_fla.ramp_characters_286}
"penguin"Symbol 684 MovieClip {bootcamp_snowball} Frame 1Symbol 681 MovieClip {penguins_fla.snowball_characters_288}
"sortPos"Symbol 684 MovieClip {bootcamp_snowball} Frame 1Symbol 8 MovieClip
"hit"Symbol 684 MovieClip {bootcamp_snowball} Frame 1Symbol 15 MovieClip
"hit"Symbol 685 MovieClip {bootcamp_bonus} Frame 1Symbol 15 MovieClip
"sortPos"Symbol 685 MovieClip {bootcamp_bonus} Frame 1Symbol 8 MovieClip
"hit"Symbol 702 MovieClip {bootcamp_fish} Frame 1Symbol 15 MovieClip
"sortPos"Symbol 702 MovieClip {bootcamp_fish} Frame 1Symbol 8 MovieClip
"hit"Symbol 707 MovieClip {bootcamp_obstacle_snowmound} Frame 1Symbol 15 MovieClip
"sortPos"Symbol 707 MovieClip {bootcamp_obstacle_snowmound} Frame 1Symbol 8 MovieClip
"hit"Symbol 711 MovieClip {bootcamp_obstacle_haybale} Frame 1Symbol 15 MovieClip
"sortPos"Symbol 711 MovieClip {bootcamp_obstacle_haybale} Frame 1Symbol 8 MovieClip
"hit"Symbol 714 MovieClip {bootcamp_bonus_elevated} Frame 1Symbol 15 MovieClip
"sortPos"Symbol 714 MovieClip {bootcamp_bonus_elevated} Frame 1Symbol 8 MovieClip
"hit"Symbol 717 MovieClip {bootcamp_sewerHole} Frame 1Symbol 15 MovieClip
"sortPos"Symbol 717 MovieClip {bootcamp_sewerHole} Frame 1Symbol 8 MovieClip
"hit"Symbol 719 MovieClip {bootcamp_fish_elevated} Frame 1Symbol 15 MovieClip
"sortPos"Symbol 719 MovieClip {bootcamp_fish_elevated} Frame 1Symbol 8 MovieClip
"splash"Symbol 720 MovieClip {nick.pom.bootcampblitz.Engine} Frame 1Symbol 131 MovieClip {nick.pom.bootcampblitz.screens.Splash}
"iris"Symbol 720 MovieClip {nick.pom.bootcampblitz.Engine} Frame 1Symbol 141 MovieClip {nick.pom.bootcampblitz.transitions.Iris}
"moduleLoader"Symbol 720 MovieClip {nick.pom.bootcampblitz.Engine} Frame 1Symbol 144 MovieClip {nick.pom.bootcampblitz.screens.NickPointsScreen}
"highScoreTable"Symbol 720 MovieClip {nick.pom.bootcampblitz.Engine} Frame 1Symbol 196 MovieClip {nick.pom.bootcampblitz.highscore.HighScoreTable}
"intro"Symbol 720 MovieClip {nick.pom.bootcampblitz.Engine} Frame 10Symbol 392 MovieClip {nick.pom.bootcampblitz.screens.Intro}
"game"Symbol 720 MovieClip {nick.pom.bootcampblitz.Engine} Frame 21Symbol 461 MovieClip {nick.pom.bootcampblitz.Game}
"ui"Symbol 720 MovieClip {nick.pom.bootcampblitz.Engine} Frame 21Symbol 523 MovieClip {nick.pom.bootcampblitz.UI}
"help"Symbol 720 MovieClip {nick.pom.bootcampblitz.Engine} Frame 21Symbol 524 MovieClip {nick.pom.bootcampblitz.screens.Help}
"gameOver"Symbol 720 MovieClip {nick.pom.bootcampblitz.Engine} Frame 30Symbol 542 MovieClip {nick.pom.bootcampblitz.screens.GameOver}

Special Tags

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

Labels

"loader"Frame 16
"game"Frame 24
" init and XML loading"Frame 1
" game bg color here"Frame 1
"root"Symbol 22 MovieClip {bootcamp_obstacle_tires} Frame 1
"hit"Symbol 22 MovieClip {bootcamp_obstacle_tires} Frame 7
"intro"Symbol 78 MovieClip {nick.pom.bootcampblitz.loader.GameLoader} Frame 5
"static"Symbol 78 MovieClip {nick.pom.bootcampblitz.loader.GameLoader} Frame 11
"outro"Symbol 78 MovieClip {nick.pom.bootcampblitz.loader.GameLoader} Frame 16
"off"Symbol 113 MovieClip {penguins_fla.btn_sfx_26} Frame 1
"up"Symbol 113 MovieClip {penguins_fla.btn_sfx_26} Frame 11
"over"Symbol 113 MovieClip {penguins_fla.btn_sfx_26} Frame 21
"down"Symbol 113 MovieClip {penguins_fla.btn_sfx_26} Frame 31
"release"Symbol 113 MovieClip {penguins_fla.btn_sfx_26} Frame 41
"up"Symbol 114 MovieClip {btn_play} Frame 1
"over"Symbol 114 MovieClip {btn_play} Frame 11
"down"Symbol 114 MovieClip {btn_play} Frame 21
"selected"Symbol 114 MovieClip {btn_play} Frame 31
"disabled"Symbol 114 MovieClip {btn_play} Frame 41
"off"Symbol 114 MovieClip {btn_play} Frame 51
"up"Symbol 121 MovieClip {btn_playcopy} Frame 1
"over"Symbol 121 MovieClip {btn_playcopy} Frame 11
"down"Symbol 121 MovieClip {btn_playcopy} Frame 21
"selected"Symbol 121 MovieClip {btn_playcopy} Frame 31
"disabled"Symbol 121 MovieClip {btn_playcopy} Frame 41
"off"Symbol 121 MovieClip {btn_playcopy} Frame 51
"up"Symbol 126 MovieClip {btn_music_on} Frame 1
"over"Symbol 126 MovieClip {btn_music_on} Frame 11
"down"Symbol 126 MovieClip {btn_music_on} Frame 21
"selected"Symbol 126 MovieClip {btn_music_on} Frame 31
"disabled"Symbol 126 MovieClip {btn_music_on} Frame 41
"off"Symbol 126 MovieClip {btn_music_on} Frame 51
"up"Symbol 129 MovieClip {btn_music_off} Frame 1
"over"Symbol 129 MovieClip {btn_music_off} Frame 11
"down"Symbol 129 MovieClip {btn_music_off} Frame 21
"selected"Symbol 129 MovieClip {btn_music_off} Frame 31
"disabled"Symbol 129 MovieClip {btn_music_off} Frame 41
"off"Symbol 129 MovieClip {btn_music_off} Frame 51
"on"Symbol 130 MovieClip {penguins_fla.musicToggle_31} Frame 1
"off"Symbol 130 MovieClip {penguins_fla.musicToggle_31} Frame 10
"intro"Symbol 131 MovieClip {nick.pom.bootcampblitz.screens.Splash} Frame 5
"static"Symbol 131 MovieClip {nick.pom.bootcampblitz.screens.Splash} Frame 41
"outro"Symbol 131 MovieClip {nick.pom.bootcampblitz.screens.Splash} Frame 47
"intro"Symbol 141 MovieClip {nick.pom.bootcampblitz.transitions.Iris} Frame 5
"static"Symbol 141 MovieClip {nick.pom.bootcampblitz.transitions.Iris} Frame 14
"outro"Symbol 141 MovieClip {nick.pom.bootcampblitz.transitions.Iris} Frame 20
"up"Symbol 154 MovieClip {btn_play_again} Frame 1
"over"Symbol 154 MovieClip {btn_play_again} Frame 11
"down"Symbol 154 MovieClip {btn_play_again} Frame 21
"selected"Symbol 154 MovieClip {btn_play_again} Frame 31
"disabled"Symbol 154 MovieClip {btn_play_again} Frame 41
"off"Symbol 154 MovieClip {btn_play_again} Frame 51
"up"Symbol 159 MovieClip {btn_close} Frame 1
"over"Symbol 159 MovieClip {btn_close} Frame 11
"down"Symbol 159 MovieClip {btn_close} Frame 21
"selected"Symbol 159 MovieClip {btn_close} Frame 31
"disabled"Symbol 159 MovieClip {btn_close} Frame 41
"off"Symbol 159 MovieClip {btn_close} Frame 51
"up"Symbol 186 MovieClip {btn_backcopy} Frame 1
"over"Symbol 186 MovieClip {btn_backcopy} Frame 11
"down"Symbol 186 MovieClip {btn_backcopy} Frame 21
"selected"Symbol 186 MovieClip {btn_backcopy} Frame 31
"disabled"Symbol 186 MovieClip {btn_backcopy} Frame 41
"off"Symbol 186 MovieClip {btn_backcopy} Frame 51
"up"Symbol 190 MovieClip {btn_back} Frame 1
"over"Symbol 190 MovieClip {btn_back} Frame 11
"down"Symbol 190 MovieClip {btn_back} Frame 21
"selected"Symbol 190 MovieClip {btn_back} Frame 31
"disabled"Symbol 190 MovieClip {btn_back} Frame 41
"off"Symbol 190 MovieClip {btn_back} Frame 51
"up"Symbol 194 MovieClip {btn_submit_score02} Frame 1
"over"Symbol 194 MovieClip {btn_submit_score02} Frame 11
"down"Symbol 194 MovieClip {btn_submit_score02} Frame 21
"selected"Symbol 194 MovieClip {btn_submit_score02} Frame 31
"disabled"Symbol 194 MovieClip {btn_submit_score02} Frame 41
"off"Symbol 194 MovieClip {btn_submit_score02} Frame 51
"off"Symbol 196 MovieClip {nick.pom.bootcampblitz.highscore.HighScoreTable} Frame 1
"intro"Symbol 196 MovieClip {nick.pom.bootcampblitz.highscore.HighScoreTable} Frame 6
"loading"Symbol 196 MovieClip {nick.pom.bootcampblitz.highscore.HighScoreTable} Frame 15
"sending"Symbol 196 MovieClip {nick.pom.bootcampblitz.highscore.HighScoreTable} Frame 22
"error"Symbol 196 MovieClip {nick.pom.bootcampblitz.highscore.HighScoreTable} Frame 29
"ready"Symbol 196 MovieClip {nick.pom.bootcampblitz.highscore.HighScoreTable} Frame 34
"outro"Symbol 196 MovieClip {nick.pom.bootcampblitz.highscore.HighScoreTable} Frame 40
"up"Symbol 349 MovieClip {btn_select_private} Frame 1
"over"Symbol 349 MovieClip {btn_select_private} Frame 11
"down"Symbol 349 MovieClip {btn_select_private} Frame 21
"selected"Symbol 349 MovieClip {btn_select_private} Frame 31
"disabled"Symbol 349 MovieClip {btn_select_private} Frame 41
"off"Symbol 349 MovieClip {btn_select_private} Frame 51
"up"Symbol 357 MovieClip {btn_select_kowalski} Frame 1
"over"Symbol 357 MovieClip {btn_select_kowalski} Frame 11
"down"Symbol 357 MovieClip {btn_select_kowalski} Frame 21
"selected"Symbol 357 MovieClip {btn_select_kowalski} Frame 31
"disabled"Symbol 357 MovieClip {btn_select_kowalski} Frame 41
"off"Symbol 357 MovieClip {btn_select_kowalski} Frame 51
"up"Symbol 365 MovieClip {btn_select_rico} Frame 1
"over"Symbol 365 MovieClip {btn_select_rico} Frame 11
"down"Symbol 365 MovieClip {btn_select_rico} Frame 21
"selected"Symbol 365 MovieClip {btn_select_rico} Frame 31
"disabled"Symbol 365 MovieClip {btn_select_rico} Frame 41
"off"Symbol 365 MovieClip {btn_select_rico} Frame 51
"up"Symbol 376 MovieClip {btn_select_skipper} Frame 1
"over"Symbol 376 MovieClip {btn_select_skipper} Frame 11
"down"Symbol 376 MovieClip {btn_select_skipper} Frame 21
"selected"Symbol 376 MovieClip {btn_select_skipper} Frame 31
"disabled"Symbol 376 MovieClip {btn_select_skipper} Frame 41
"off"Symbol 376 MovieClip {btn_select_skipper} Frame 51
"content"Symbol 380 MovieClip {nick.pom.bootcampblitz.intro.CharSelect} Frame 1
"page1"Symbol 381 MovieClip {nick.pom.bootcampblitz.intro.IntroContent} Frame 1
"page2"Symbol 381 MovieClip {nick.pom.bootcampblitz.intro.IntroContent} Frame 10
"page3"Symbol 381 MovieClip {nick.pom.bootcampblitz.intro.IntroContent} Frame 18
"page4"Symbol 381 MovieClip {nick.pom.bootcampblitz.intro.IntroContent} Frame 23
"page5"Symbol 381 MovieClip {nick.pom.bootcampblitz.intro.IntroContent} Frame 25
"up"Symbol 387 MovieClip {btn_skip} Frame 1
"over"Symbol 387 MovieClip {btn_skip} Frame 11
"down"Symbol 387 MovieClip {btn_skip} Frame 21
"selected"Symbol 387 MovieClip {btn_skip} Frame 31
"disabled"Symbol 387 MovieClip {btn_skip} Frame 41
"off"Symbol 387 MovieClip {btn_skip} Frame 51
"up"Symbol 391 MovieClip {btn_play02} Frame 1
"over"Symbol 391 MovieClip {btn_play02} Frame 11
"down"Symbol 391 MovieClip {btn_play02} Frame 21
"selected"Symbol 391 MovieClip {btn_play02} Frame 31
"disabled"Symbol 391 MovieClip {btn_play02} Frame 41
"off"Symbol 391 MovieClip {btn_play02} Frame 51
"intro"Symbol 392 MovieClip {nick.pom.bootcampblitz.screens.Intro} Frame 5
"static"Symbol 392 MovieClip {nick.pom.bootcampblitz.screens.Intro} Frame 11
"outro"Symbol 392 MovieClip {nick.pom.bootcampblitz.screens.Intro} Frame 17
"off"Symbol 460 MovieClip {penguins_fla._sewerPlayer_187} Frame 1
"skipper"Symbol 460 MovieClip {penguins_fla._sewerPlayer_187} Frame 2
"rico"Symbol 460 MovieClip {penguins_fla._sewerPlayer_187} Frame 3
"kowalski"Symbol 460 MovieClip {penguins_fla._sewerPlayer_187} Frame 4
"private"Symbol 460 MovieClip {penguins_fla._sewerPlayer_187} Frame 5
"up"Symbol 465 MovieClip {btn_menu} Frame 1
"over"Symbol 465 MovieClip {btn_menu} Frame 11
"down"Symbol 465 MovieClip {btn_menu} Frame 21
"selected"Symbol 465 MovieClip {btn_menu} Frame 31
"disabled"Symbol 465 MovieClip {btn_menu} Frame 41
"off"Symbol 465 MovieClip {btn_menu} Frame 51
"up"Symbol 474 MovieClip {btn_quit} Frame 1
"over"Symbol 474 MovieClip {btn_quit} Frame 11
"down"Symbol 474 MovieClip {btn_quit} Frame 21
"selected"Symbol 474 MovieClip {btn_quit} Frame 31
"disabled"Symbol 474 MovieClip {btn_quit} Frame 41
"off"Symbol 474 MovieClip {btn_quit} Frame 51
"up"Symbol 480 MovieClip {btn_help} Frame 1
"over"Symbol 480 MovieClip {btn_help} Frame 11
"down"Symbol 480 MovieClip {btn_help} Frame 21
"selected"Symbol 480 MovieClip {btn_help} Frame 31
"disabled"Symbol 480 MovieClip {btn_help} Frame 41
"off"Symbol 480 MovieClip {btn_help} Frame 51
"up"Symbol 484 MovieClip {btn_resume} Frame 1
"over"Symbol 484 MovieClip {btn_resume} Frame 11
"down"Symbol 484 MovieClip {btn_resume} Frame 21
"selected"Symbol 484 MovieClip {btn_resume} Frame 31
"disabled"Symbol 484 MovieClip {btn_resume} Frame 41
"off"Symbol 484 MovieClip {btn_resume} Frame 51
"intro"Symbol 485 MovieClip {nick.pom.bootcampblitz.menu.Menu} Frame 5
"static"Symbol 485 MovieClip {nick.pom.bootcampblitz.menu.Menu} Frame 12
"outro"Symbol 485 MovieClip {nick.pom.bootcampblitz.menu.Menu} Frame 18
"up"Symbol 493 MovieClip {btn_no} Frame 1
"over"Symbol 493 MovieClip {btn_no} Frame 11
"down"Symbol 493 MovieClip {btn_no} Frame 21
"selected"Symbol 493 MovieClip {btn_no} Frame 31
"disabled"Symbol 493 MovieClip {btn_no} Frame 41
"off"Symbol 493 MovieClip {btn_no} Frame 51
"up"Symbol 497 MovieClip {btn_yes} Frame 1
"over"Symbol 497 MovieClip {btn_yes} Frame 11
"down"Symbol 497 MovieClip {btn_yes} Frame 21
"selected"Symbol 497 MovieClip {btn_yes} Frame 31
"disabled"Symbol 497 MovieClip {btn_yes} Frame 41
"off"Symbol 497 MovieClip {btn_yes} Frame 51
"intro"Symbol 498 MovieClip {nick.pom.bootcampblitz.menu.MenuQuitConfirmation} Frame 5
"static"Symbol 498 MovieClip {nick.pom.bootcampblitz.menu.MenuQuitConfirmation} Frame 13
"outro"Symbol 498 MovieClip {nick.pom.bootcampblitz.menu.MenuQuitConfirmation} Frame 19
"skipper"Symbol 501 MovieClip Frame 2
"rico"Symbol 501 MovieClip Frame 3
"kowalski"Symbol 501 MovieClip Frame 4
"private"Symbol 501 MovieClip Frame 5
"intro"Symbol 524 MovieClip {nick.pom.bootcampblitz.screens.Help} Frame 5
"static"Symbol 524 MovieClip {nick.pom.bootcampblitz.screens.Help} Frame 10
"outro"Symbol 524 MovieClip {nick.pom.bootcampblitz.screens.Help} Frame 15
"up"Symbol 527 MovieClip {btn_playAgain} Frame 1
"over"Symbol 527 MovieClip {btn_playAgain} Frame 11
"down"Symbol 527 MovieClip {btn_playAgain} Frame 21
"selected"Symbol 527 MovieClip {btn_playAgain} Frame 31
"disabled"Symbol 527 MovieClip {btn_playAgain} Frame 41
"off"Symbol 527 MovieClip {btn_playAgain} Frame 51
"intro"Symbol 542 MovieClip {nick.pom.bootcampblitz.screens.GameOver} Frame 5
"setText"Symbol 542 MovieClip {nick.pom.bootcampblitz.screens.GameOver} Frame 18
"setScore"Symbol 542 MovieClip {nick.pom.bootcampblitz.screens.GameOver} Frame 25
"static"Symbol 542 MovieClip {nick.pom.bootcampblitz.screens.GameOver} Frame 35
"outro"Symbol 542 MovieClip {nick.pom.bootcampblitz.screens.GameOver} Frame 51
"static"Symbol 610 MovieClip {pom_bootcamp_player_rico} Frame 1
"jumpUp"Symbol 610 MovieClip {pom_bootcamp_player_rico} Frame 10
"jumpAir"Symbol 610 MovieClip {pom_bootcamp_player_rico} Frame 20
"jumpLand"Symbol 610 MovieClip {pom_bootcamp_player_rico} Frame 30
"snowballIn"Symbol 610 MovieClip {pom_bootcamp_player_rico} Frame 58
"snowballRoll"Symbol 610 MovieClip {pom_bootcamp_player_rico} Frame 66
"snowballOut"Symbol 610 MovieClip {pom_bootcamp_player_rico} Frame 76
"sewerIn"Symbol 610 MovieClip {pom_bootcamp_player_rico} Frame 99
"sewerStatic"Symbol 610 MovieClip {pom_bootcamp_player_rico} Frame 116
"sewerOut"Symbol 610 MovieClip {pom_bootcamp_player_rico} Frame 128
"hit"Symbol 610 MovieClip {pom_bootcamp_player_rico} Frame 166
"static"Symbol 626 MovieClip {pom_bootcamp_player_skipper} Frame 1
"jumpUp"Symbol 626 MovieClip {pom_bootcamp_player_skipper} Frame 10
"jumpAir"Symbol 626 MovieClip {pom_bootcamp_player_skipper} Frame 20
"jumpLand"Symbol 626 MovieClip {pom_bootcamp_player_skipper} Frame 30
"snowballIn"Symbol 626 MovieClip {pom_bootcamp_player_skipper} Frame 58
"snowballRoll"Symbol 626 MovieClip {pom_bootcamp_player_skipper} Frame 66
"snowballOut"Symbol 626 MovieClip {pom_bootcamp_player_skipper} Frame 76
"sewerIn"Symbol 626 MovieClip {pom_bootcamp_player_skipper} Frame 100
"sewerStatic"Symbol 626 MovieClip {pom_bootcamp_player_skipper} Frame 117
"sewerOut"Symbol 626 MovieClip {pom_bootcamp_player_skipper} Frame 129
"hit"Symbol 626 MovieClip {pom_bootcamp_player_skipper} Frame 167
"static"Symbol 636 MovieClip {pom_bootcamp_player_kowalski} Frame 1
"jumpUp"Symbol 636 MovieClip {pom_bootcamp_player_kowalski} Frame 10
"jumpAir"Symbol 636 MovieClip {pom_bootcamp_player_kowalski} Frame 20
"jumpLand"Symbol 636 MovieClip {pom_bootcamp_player_kowalski} Frame 30
"snowballIn"Symbol 636 MovieClip {pom_bootcamp_player_kowalski} Frame 58
"snowballRoll"Symbol 636 MovieClip {pom_bootcamp_player_kowalski} Frame 66
"snowballOut"Symbol 636 MovieClip {pom_bootcamp_player_kowalski} Frame 74
"sewerIn"Symbol 636 MovieClip {pom_bootcamp_player_kowalski} Frame 97
"sewerStatic"Symbol 636 MovieClip {pom_bootcamp_player_kowalski} Frame 114
"sewerOut"Symbol 636 MovieClip {pom_bootcamp_player_kowalski} Frame 124
"hit"Symbol 636 MovieClip {pom_bootcamp_player_kowalski} Frame 162
"static"Symbol 642 MovieClip {pom_bootcamp_player_private} Frame 1
"jumpUp"Symbol 642 MovieClip {pom_bootcamp_player_private} Frame 10
"jumpAir"Symbol 642 MovieClip {pom_bootcamp_player_private} Frame 20
"jumpLand"Symbol 642 MovieClip {pom_bootcamp_player_private} Frame 30
"snowballIn"Symbol 642 MovieClip {pom_bootcamp_player_private} Frame 58
"snowballRoll"Symbol 642 MovieClip {pom_bootcamp_player_private} Frame 66
"snowballOut"Symbol 642 MovieClip {pom_bootcamp_player_private} Frame 76
"sewerIn"Symbol 642 MovieClip {pom_bootcamp_player_private} Frame 99
"sewerStatic"Symbol 642 MovieClip {pom_bootcamp_player_private} Frame 116
"sewerOut"Symbol 642 MovieClip {pom_bootcamp_player_private} Frame 128
"hit"Symbol 642 MovieClip {pom_bootcamp_player_private} Frame 166
"skipper"Symbol 656 MovieClip {penguins_fla.hole_characters_280} Frame 1
"rico"Symbol 656 MovieClip {penguins_fla.hole_characters_280} Frame 2
"kowalski"Symbol 656 MovieClip {penguins_fla.hole_characters_280} Frame 3
"private"Symbol 656 MovieClip {penguins_fla.hole_characters_280} Frame 4
"skipper"Symbol 671 MovieClip {penguins_fla.ramp_characters_286} Frame 1
"rico"Symbol 671 MovieClip {penguins_fla.ramp_characters_286} Frame 2
"kowalski"Symbol 671 MovieClip {penguins_fla.ramp_characters_286} Frame 3
"private"Symbol 671 MovieClip {penguins_fla.ramp_characters_286} Frame 4
"skipper"Symbol 681 MovieClip {penguins_fla.snowball_characters_288} Frame 1
"rico"Symbol 681 MovieClip {penguins_fla.snowball_characters_288} Frame 2
"kowalski"Symbol 681 MovieClip {penguins_fla.snowball_characters_288} Frame 3
"private"Symbol 681 MovieClip {penguins_fla.snowball_characters_288} Frame 4
"root"Symbol 684 MovieClip {bootcamp_snowball} Frame 1
"hit"Symbol 684 MovieClip {bootcamp_snowball} Frame 7
"root"Symbol 685 MovieClip {bootcamp_bonus} Frame 1
"hit"Symbol 685 MovieClip {bootcamp_bonus} Frame 8
"root"Symbol 702 MovieClip {bootcamp_fish} Frame 1
"hit"Symbol 702 MovieClip {bootcamp_fish} Frame 7
"root"Symbol 707 MovieClip {bootcamp_obstacle_snowmound} Frame 1
"hit"Symbol 707 MovieClip {bootcamp_obstacle_snowmound} Frame 8
"root"Symbol 711 MovieClip {bootcamp_obstacle_haybale} Frame 1
"hit"Symbol 711 MovieClip {bootcamp_obstacle_haybale} Frame 8
"root"Symbol 714 MovieClip {bootcamp_bonus_elevated} Frame 1
"hit"Symbol 714 MovieClip {bootcamp_bonus_elevated} Frame 8
"root"Symbol 719 MovieClip {bootcamp_fish_elevated} Frame 1
"hit"Symbol 719 MovieClip {bootcamp_fish_elevated} Frame 7
"intro"Symbol 720 MovieClip {nick.pom.bootcampblitz.Engine} Frame 10
"game"Symbol 720 MovieClip {nick.pom.bootcampblitz.Engine} Frame 21
"gameOver"Symbol 720 MovieClip {nick.pom.bootcampblitz.Engine} Frame 30




http://swfchan.com/47/234369/info.shtml
Created: 10/4 -2020 09:21:31 Last modified: 10/4 -2020 09:21:31 Server time: 02/05 -2024 17:13:55