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

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

The Fire Swamp.swf

This is the info page for
Flash #67674

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


Text
SCORE:

The Fire Swamp

0

Now!

Buy

<p align="left"><font face="Booter - Five Zero" size="39" color="#ffffff" letterSpacing="1.500000" kerning="1">The Rous&apos; Lair</font></p>

YOU DIED!

Loading...

2

H

ow toWi

n

Get

Buttercup

and

Westley

safely to the

exit

!

You’ll get

bonus

points for

speed

.

Collect

gems

along the way for extra points!

ow to move Buttercup

and Westley aroun

d

Left

right

arrows

will move the characters.

Up arrow

is for

jumping

.

WESTLEY

ow to Switc

h

B

etween Character

s

Click

on the portraits of

and

to

switch

characters.

Ctrl

"Z"

keys also work.

B

uttercup

'

s Jumpin

g

Buttercup can

jump

… really

high

T

angled Vine

s

Step on a

tangled vine

to

untangle

it.

W

estley

s Swor

d

Westley can kill

ROUS

with his sword.

Press the Spacebar

attack

P

oints Multiplie

r

If Westley or Buttercup touches a

multiplier

” you’ll get

double

points

afterwards.

oulder

Westley

can move

boulders

by

pushing

them.

L

ever

Touch the

lever

to lower the branch.

Now Buttercup & Westley can use it

as a

bridge

uttercup is

a

F

ighter to

o

Walk

Buttercup

to the

stick

lying ROUS

Meet the

flying ROUS.

<p align="center"><font face="HelveticaRounded LT Std Bd" size="23" color="#03ff34" letterSpacing="3.000000" kerning="0">0</font></p>

0

0

0

5

E

R

O

C

S

L

V

M

Green Gems

Blue Gems

Time

Purple Gems

ROUS Killed

<p align="center"><font face="Booter - Five Zero" size="60" color="#ffffff" letterSpacing="3.000000" kerning="0">-</font></p>

BONUS

+2000

TOTAL SCORE

WESTLEY

Buy Now

Think that was fun?
Experience all 5 games in 1!

Buy the full version now

Play Game

Fire

Swamp

Puzzle Platformer

ActionScript [AS3]

Section 1
//WorkinTweener (com.workinman.lib.display.tweener.WorkinTweener) package com.workinman.lib.display.tweener { import com.workinman.lib.math.*; import flash.events.*; import com.workinman.lib.events.*; import com.workinman.lib.utils.*; public class WorkinTweener extends EventDispatcher { public static const TWEEN_GLOW:String = "glow"; public static const TWEEN_SHADOW:String = "shadow"; public static const TWEEN_SCALE:String = "scale"; public static const TWEEN_POS:String = "pos"; public static const TWEEN_IDLE:String = "idle"; public static const TWEEN_ALPHA:String = "fade"; public static const TWEEN_POS_3D:String = "pos3d"; public static const TWEEN_ROTATE:String = "rotate"; public static const TWEEN_FRAME:String = "frame"; public static const TWEEN_BLUR:String = "blur"; public static const ROOM:String = "workinTweenerRoom"; public static const TWEEN_PROP:String = "prop"; public static const TWEEN_COLOR:String = "color"; private static var _loop:Number; private static var _activeScopes:Array; private static var _isUpdating:Boolean; private static var _isPaused:Boolean; public static function stopAllTweens():void{ if (_activeScopes == null){ return; }; _loop = _activeScopes.length; while (_loop--) { _activeScopes[_loop].stopAllTweens(); }; _clearTweens(); } public static function get isUpdating():Boolean{ return (_isUpdating); } public static function pauseAllTweens():void{ if (_isPaused){ return; }; _stopInterval(); _isPaused = true; } public static function completeScope(_arg1:Object):void{ _loop = _findScope(_arg1); if (_loop >= 0){ _activeScopes[_loop].completeAllTweens(); }; } private static function _findScope(_arg1:Object):Number{ var _local2:Number; if (_activeScopes == null){ return (-1); }; _local2 = _activeScopes.length; while (_local2--) { if (_activeScopes[_local2] == _arg1){ }; return (_local2); }; return (-1); } private static function _cleanData(_arg1:Object):void{ if (((!(_arg1.hasOwnProperty("start"))) || (isNaN(_arg1.start)))){ _arg1.start = WorkinTweenInstance.INVALID_IN_VALUE; }; if (!_arg1.hasOwnProperty("ease")){ _arg1.ease = PennerManager.EASE_LINEAR; }; if (((!(_arg1.hasOwnProperty("delay"))) || (isNaN(_arg1.delay)))){ _arg1.delay = 0; }; } public static function removeScope(_arg1:Object):void{ _loop = _findScope(_arg1); if (_loop >= 0){ _activeScopes[_loop].cleanUp(); _activeScopes.splice(_loop, 1); }; } public static function completeAllTweens():void{ if (_activeScopes == null){ return; }; _loop = _activeScopes.length; while (_loop--) { _activeScopes[_loop].completeAllTweens(); }; _clearTweens(); } private static function _validateData(_arg1:String, _arg2:Object):Boolean{ if (!_arg2.hasOwnProperty("dur")){ return (false); }; switch (_arg1){ case TWEEN_PROP: if (!_arg2.hasOwnProperty("prop")){ return (false); }; break; case TWEEN_POS: if (!((_arg2.hasOwnProperty("x")) && (_arg2.hasOwnProperty("y")))){ return (false); }; return (true); case TWEEN_POS_3D: if (!((((_arg2.hasOwnProperty("x")) && (_arg2.hasOwnProperty("y")))) && (_arg2.hasOwnProperty("z")))){ return (false); }; return (true); case TWEEN_SCALE: if (!((_arg2.hasOwnProperty("scaleX")) && (_arg2.hasOwnProperty("scaleY")))){ return (false); }; return (true); }; if (!_arg2.hasOwnProperty("end")){ return (false); }; return (true); } public static function cleanUp():void{ _stopInterval(); _loop = _activeScopes.length; while (_loop--) { _activeScopes[_loop].cleanUp(); _activeScopes[_loop] = null; }; _activeScopes = []; } private static function _stopInterval():void{ if (!_isUpdating){ return; }; _isUpdating = false; Updater.getInstance().removeEventListener(Updater.EVENT_UPDATE, _updateTweens); } public static function addTween(_arg1:Object, _arg2:String, _arg3:Object):void{ if (_activeScopes == null){ _activeScopes = []; }; if (_validateData(_arg2, _arg3)){ _cleanData(_arg3); } else { return; }; _loop = _activeScopes.length; while (_loop--) { if (_activeScopes[_loop].scope == _arg1){ if (_activeScopes[_loop].testTweenExists(_arg2, _arg3)){ _activeScopes[_loop].replaceTween(_arg2, _arg3); } else { _activeScopes[_loop].addTween(_arg2, _arg3); }; return; }; }; _activeScopes.push(new WorkinTweenScope(_arg1, _arg2, _arg3)); if (!_isUpdating){ _startInterval(); }; } private static function _clearTweens():void{ if (_activeScopes == null){ return; }; _loop = _activeScopes.length; while (_loop--) { _activeScopes[_loop].cleanUp(); _activeScopes[_loop] = null; }; _activeScopes = []; _isPaused = false; _stopInterval(); } private static function _startInterval():void{ if (_isUpdating){ return; }; if (_activeScopes.length == 0){ return; }; _isUpdating = true; Updater.getInstance().addEventListener(Updater.EVENT_UPDATE, _updateTweens); } public static function unpauseScope(_arg1:Object):void{ _loop = _findScope(_arg1); if (_loop >= 0){ _activeScopes[_loop].unpause(); }; } private static function _updateTweens(_arg1:EUpdate):void{ _loop = _activeScopes.length; while (_loop--) { _activeScopes[_loop].updateTweens(_arg1.dt); if (_activeScopes[_loop].doDelete){ _activeScopes[_loop].cleanUp(); _activeScopes.splice(_loop, 1); }; }; if (_activeScopes.length == 0){ _stopInterval(); }; } public static function stopScope(_arg1:Object):void{ _loop = _findScope(_arg1); if (_loop >= 0){ _activeScopes[_loop].stopAllTweens(); }; } public static function unpauseAllTweens():void{ if (!_isPaused){ return; }; _startInterval(); _isPaused = false; } public static function pauseScope(_arg1:Object):void{ _loop = _findScope(_arg1); if (_loop >= 0){ _activeScopes[_loop].pause(); }; } } }//package com.workinman.lib.display.tweener
Section 2
//WorkinTweenInstance (com.workinman.lib.display.tweener.WorkinTweenInstance) package com.workinman.lib.display.tweener { import com.workinman.lib.math.*; import flash.events.*; public class WorkinTweenInstance extends EventDispatcher { protected var _delay:Number; protected var _useCurrentIn:Boolean; protected var _out:Number; protected var _isComplete:Boolean; protected var _formula:Function; protected var _time:Number; protected var _current:Number; protected var _isError:Boolean; protected var _prop:String; protected var _dur:Number; protected var _in:Number; protected var _change:Number; protected var _scope:Object; protected var _ease:String; public static const INVALID_IN_VALUE:Number = -10000.85412; public static var ERROR:String = "onTweenError"; public static var COMPLETE:String = "onTweenComplete"; public function WorkinTweenInstance(_arg1:String, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:String, _arg6:Number, _arg7:Object){ _scope = _arg7; _prop = _arg1; _dur = _arg4; _delay = _arg6; if (_arg2 == INVALID_IN_VALUE){ _useCurrentIn = true; } else { _useCurrentIn = false; }; _in = _arg2; _out = _arg3; _resetIn(); _ease = _arg5; _formula = PennerManager.getEaseFunction(_ease); _time = 0; _isComplete = false; _isError = false; } public function get isComplete():Boolean{ return (_isComplete); } public function get dur():Number{ return (_dur); } private function _resetIn():void{ if (_useCurrentIn){ _in = _scope[_prop]; }; _change = (_out - _in); } public function get doDelete():Boolean{ return ((((_delay <= 0)) && (((_isComplete) || (_isError))))); } protected function _onError():void{ _isError = true; dispatchEvent(new Event(ERROR)); } public function get isRunning():Boolean{ return ((((_delay <= 0)) && (!(((_isComplete) || (_isError)))))); } public function complete():void{ _onComplete(false); } public function update(_arg1:Number):void{ if (_delay > 0){ _delay = (_delay - _arg1); if (_delay < 0){ _arg1 = Math.abs(_delay); _resetIn(); } else { return; }; }; _time = (_time + _arg1); if (_time > _dur){ _time = _dur; }; _current = _formula(_in, _change, _time, _dur); if (_time == _dur){ complete(); }; } public function cleanUp():void{ _formula = null; _scope = null; } protected function _onComplete(_arg1:Boolean=true):void{ _isComplete = true; _current = _out; if (_arg1){ dispatchEvent(new Event(COMPLETE)); }; } public function get prop():String{ return (_prop); } public function get current():Number{ return (_current); } public function get isError():Boolean{ return (_isError); } } }//package com.workinman.lib.display.tweener
Section 3
//WorkinTweenScope (com.workinman.lib.display.tweener.WorkinTweenScope) package com.workinman.lib.display.tweener { public class WorkinTweenScope { private var _loop:Number; private var _tweens:Array; private var _scope:Object; private var _isPaused:Boolean; public function WorkinTweenScope(_arg1:Object, _arg2:String, _arg3:Object){ _tweens = []; _scope = _arg1; _isPaused = false; addTween(_arg2, _arg3); } public function cleanUp():void{ stopAllTweens(); _scope = null; } public function addTween(_arg1:String, _arg2:Object):void{ if (!_validateProperty(_arg1, _arg2)){ return; }; _generateNewTween(_arg1, _arg2); } public function updateTweens(_arg1:Number):void{ if (_isPaused){ return; }; _loop = _tweens.length; while (_loop--) { _tweens[_loop].update(_arg1); _scope[_tweens[_loop].prop] = _tweens[_loop].current; if (_tweens[_loop].doDelete){ _tweens[_loop].cleanUp(); _tweens.splice(_loop, 1); }; }; } public function get scope():Object{ return (_scope); } public function get doDelete():Boolean{ return ((_tweens.length == 0)); } public function replaceTween(_arg1:String, _arg2:Object):void{ if (!_validateProperty(_arg1, _arg2)){ return; }; testTweenExists(_arg1, _arg2); _tweens[_loop].cleanUp(); _tweens.splice(_loop, 1); _generateNewTween(_arg1, _arg2); } private function _generateNewTween(_arg1:String, _arg2:Object):void{ var _local3:Array; _local3 = _getTweenProperties(_arg1, _arg2); _loop = _local3.length; switch (_arg1){ case WorkinTweener.TWEEN_POS: case WorkinTweener.TWEEN_POS_3D: while (_loop--) { _tweens.push(new WorkinTweenInstance(_local3[_loop], WorkinTweenInstance.INVALID_IN_VALUE, _arg2[_local3[_loop]], _arg2.dur, _arg2.ease, _arg2.delay, _scope)); }; return; case WorkinTweener.TWEEN_SCALE: while (_loop--) { _tweens.push(new WorkinTweenInstance(_local3[_loop], WorkinTweenInstance.INVALID_IN_VALUE, _arg2[_local3[_loop]], _arg2.dur, _arg2.ease, _arg2.delay, _scope)); }; return; case WorkinTweener.TWEEN_BLUR: case WorkinTweener.TWEEN_SHADOW: case WorkinTweener.TWEEN_GLOW: default: while (_loop--) { _tweens.push(new WorkinTweenInstance(_local3[_loop], _arg2.start, _arg2.end, _arg2.dur, _arg2.ease, _arg2.delay, _scope)); }; break; }; } private function _getTweenProperties(_arg1:String, _arg2:Object):Array{ switch (_arg1){ case WorkinTweener.TWEEN_PROP: return ([_arg2.prop]); case WorkinTweener.TWEEN_FRAME: return (["currentFrame"]); case WorkinTweener.TWEEN_POS: return (["x", "y"]); case WorkinTweener.TWEEN_POS_3D: return (["x", "y", "z"]); case WorkinTweener.TWEEN_SCALE: return (["scaleX", "scaleY"]); case WorkinTweener.TWEEN_ALPHA: return (["alpha"]); case WorkinTweener.TWEEN_ROTATE: return (["rotation"]); case WorkinTweener.TWEEN_COLOR: return (["colorTransform"]); case WorkinTweener.TWEEN_BLUR: case WorkinTweener.TWEEN_GLOW: case WorkinTweener.TWEEN_SHADOW: return (["filters"]); case WorkinTweener.TWEEN_IDLE: default: return ([]); }; } public function stopAllTweens():void{ _loop = _tweens.length; while (_loop--) { _tweens[_loop].cleanUp(); try { _scope.onTweensComplete(); } catch(pError:Error) { }; }; _tweens = []; } public function completeAllTweens():void{ _loop = _tweens.length; while (_loop--) { _tweens[_loop].finish(); _scope[_tweens[_loop].prop] = _tweens[_loop].current; _tweens[_loop].cleanUp(); try { _scope.onTweensComplete(); } catch(pError:Error) { }; }; _tweens = []; } private function _validateProperty(_arg1:String, _arg2:Object):Boolean{ var _local3:Array; _local3 = _getTweenProperties(_arg1, _arg2); _loop = _local3.length; while (_loop--) { if (!_scope.hasOwnProperty(_local3[_loop])){ return (false); }; }; return (true); } public function testTweenExists(_arg1:String, _arg2:Object):Boolean{ _loop = _tweens.length; while (_loop--) { if (_tweens[_loop].prop == _arg1){ if (((((!(_tweens[_loop].complete)) && (!(_tweens[_loop].error)))) && (((_tweens[_loop].delay + _tweens[_loop].dur) <= _arg2.delay)))){ return (true); }; }; }; return (false); } public function pause():void{ _isPaused = true; } public function unpause():void{ _isPaused = false; } } }//package com.workinman.lib.display.tweener
Section 4
//TextCounter (com.workinman.lib.display.TextCounter) package com.workinman.lib.display { import flash.events.*; import com.workinman.lib.events.*; import flash.display.*; import com.workinman.lib.utils.*; import flash.text.*; public class TextCounter extends MovieClip { protected const _DEF_COUNT_RATE:Number = 600; protected var _countRate:Number; protected var _isPercent:Boolean; protected var _isCounting:Boolean; public var txt:TextField; protected var _value:Number; protected var _targetValue:Number; public static const COMPLETE:String = "onComplete"; public function TextCounter(){ super(); addEventListener(Event.REMOVED_FROM_STAGE, _onRemove); _isPercent = false; _isCounting = false; _countRate = _DEF_COUNT_RATE; if ((((txt.text == null)) || ((txt.text == undefined)))){ _value = 0; } else { try { _value = Number(txt.text); } catch(pError:Error) { _value = (_targetValue = 0); return; }; if (isNaN(_value)){ _value = (_targetValue = 0); }; }; _targetValue = _value; } protected function _count(_arg1:EUpdate):void{ if (_value < _targetValue){ _value = (_value + Math.round((_countRate * _arg1.dt))); if (_value >= _targetValue){ _value = _targetValue; _stopCount(); }; } else { if (_value > _targetValue){ _value = (_value - Math.round((_countRate * _arg1.dt))); if (_value <= _targetValue){ _value = _targetValue; _stopCount(); }; }; }; txt.text = (String(_value) + (_isPercent) ? "%" : ""); if (!_isCounting){ dispatchEvent(new Event(COMPLETE)); }; } public function set countRate(_arg1:Number){ _countRate = _arg1; } public function get text():String{ return (txt.text); } public function set text(_arg1:String):void{ var pValue = _arg1; try { _targetValue = (_value = Number(pValue)); } catch(pError:Error) { _targetValue = (_value = 0); return; }; txt.text = (pValue + (_isPercent) ? "%" : ""); } public function set isPercent(_arg1:Boolean){ _isPercent = _arg1; } protected function _startCount():void{ _isCounting = true; Updater.getInstance().addEventListener(Updater.EVENT_UPDATE, _count); } public function to(_arg1:Number):void{ _targetValue = _arg1; txt.text = (String(_value) + (_isPercent) ? "%" : ""); if (_targetValue != _value){ _startCount(); } else { dispatchEvent(new Event(COMPLETE)); }; } protected function _onRemove(_arg1:Event):void{ if (_isCounting){ _stopCount(); }; removeEventListener(Event.REMOVED_FROM_STAGE, _onRemove); } protected function _stopCount():void{ _isCounting = false; Updater.getInstance().removeEventListener(Updater.EVENT_UPDATE, _count); } } }//package com.workinman.lib.display
Section 5
//WorkinButton (com.workinman.lib.display.WorkinButton) package com.workinman.lib.display { import flash.events.*; import flash.display.*; import flash.geom.*; public class WorkinButton extends WorkinMovieClip { protected var _isDown:Boolean; protected var _hasUpAnimation:Boolean; protected var _isEnabled:Boolean; protected var _isDrawn:Boolean; public static var OVER:String = "workinBtnOver"; public static var DOWN:String = "workinBtnDown"; public static var UP:String = "workinBtnUp"; public static var OUT:String = "workinBtnOut"; public static var CLICK:String = "workinBtnClick"; public function WorkinButton(){ addEventListener(Event.ADDED_TO_STAGE, _onDrawn); addEventListener(Event.REMOVED_FROM_STAGE, _onRemoved); _isDown = false; _isDrawn = ((stage == null)) ? false : true; _hasUpAnimation = ((totalFrames > 3)) ? true : false; _generateHitBox(); enable(); } protected function _onRemoved(_arg1:Event):void{ if (_isDown){ stage.removeEventListener(MouseEvent.MOUSE_UP, _onUpEvent); }; _removeEventListeners(); _isDrawn = false; } protected function get _CUSTOM_HIT_BOX():Point{ return (new Point(0, 0)); } private function _onDownEvent(_arg1:MouseEvent):void{ _onDown(); } protected function _onDown():void{ _isDown = true; gotoAndStop(3); if (!_isDrawn){ return; }; stage.addEventListener(MouseEvent.MOUSE_UP, _onUpEvent); _dispatch(DOWN); } private function _onUpEvent(_arg1:MouseEvent):void{ _onUp(); } private function _onOutEvent(_arg1:MouseEvent):void{ _onOut(); } protected function _click():void{ _dispatch(CLICK); } protected function _onOver():void{ if (_isDown){ gotoAndStop(3); } else { gotoAndStop(2); }; _dispatch(OVER); } private function _testMouseOver():Boolean{ if (!_isDrawn){ return (false); }; if (hitTestPoint(stage.mouseX, stage.mouseY, true)){ return (true); }; return (false); } protected function get _CREATE_HIT_BOX():Boolean{ return (true); } override public function cleanUp():void{ super.cleanUp(); disable(); removeEventListener(Event.ADDED_TO_STAGE, _onDrawn); removeEventListener(Event.REMOVED_FROM_STAGE, _onRemoved); _removeEventListeners(); } public function disable():void{ buttonMode = false; useHandCursor = false; mouseEnabled = false; _isEnabled = false; gotoAndStop(_DISABLE_FRAME); } protected function get _DISABLE_FRAME():Number{ return (1); } protected function _generateHitBox():void{ var _local1:Sprite; if (!_CREATE_HIT_BOX){ return; }; _local1 = new Sprite(); _local1.graphics.beginFill(0xFF0000, 0); if ((((_CUSTOM_HIT_BOX.x == 0)) || ((_CUSTOM_HIT_BOX.y == 0)))){ _local1.graphics.moveTo(0, 0); _local1.graphics.lineTo(width, 0); _local1.graphics.lineTo(width, height); _local1.graphics.lineTo(0, height); _local1.graphics.lineTo(0, 0); } else { _local1.graphics.moveTo(0, 0); _local1.graphics.lineTo(_CUSTOM_HIT_BOX.x, 0); _local1.graphics.lineTo(_CUSTOM_HIT_BOX.x, _CUSTOM_HIT_BOX.y); _local1.graphics.lineTo(0, _CUSTOM_HIT_BOX.y); _local1.graphics.lineTo(0, 0); }; addChild(_local1); } private function _addEventListeners():void{ addEventListener(MouseEvent.MOUSE_OVER, _onOverEvent); addEventListener(MouseEvent.MOUSE_OUT, _onOutEvent); addEventListener(MouseEvent.MOUSE_DOWN, _onDownEvent); } private function _onOverEvent(_arg1:MouseEvent):void{ _onOver(); } private function _removeEventListeners():void{ removeEventListener(MouseEvent.MOUSE_OVER, _onOverEvent); removeEventListener(MouseEvent.MOUSE_OUT, _onOutEvent); removeEventListener(MouseEvent.MOUSE_DOWN, _onDownEvent); } public function enable():void{ buttonMode = true; mouseEnabled = true; mouseChildren = false; useHandCursor = true; _isEnabled = true; if (!_isDrawn){ gotoAndStop(1); } else { if (_testMouseOver()){ gotoAndStop(2); } else { gotoAndStop(1); }; }; } protected function _onUp():void{ if (_isDown){ stage.removeEventListener(MouseEvent.MOUSE_UP, _onUpEvent); _isDown = false; _dispatch(UP); if (_testMouseOver()){ gotoAndStop(2); _click(); } else { gotoAndStop(4); }; }; } protected function _onDrawn(_arg1:Event):void{ _isDrawn = true; _addEventListeners(); } protected function _dispatch(_arg1:String){ if (!_DO_DISPATCH){ return; }; dispatchEvent(new Event(_arg1)); } protected function _onOut():void{ if (_isDown){ gotoAndStop(3); } else { gotoAndStop((_hasUpAnimation) ? 4 : 1); }; _dispatch(OUT); } protected function get _DO_DISPATCH():Boolean{ return (true); } } }//package com.workinman.lib.display
Section 6
//WorkinMovieClip (com.workinman.lib.display.WorkinMovieClip) package com.workinman.lib.display { import flash.events.*; import com.workinman.lib.events.*; import flash.display.*; import com.workinman.lib.utils.*; import flash.geom.*; import com.workinman.lib.display.tweener.*; public class WorkinMovieClip extends MovieClip { protected var _trackOutFrame:Number; protected var _isTracking:Boolean; protected var _trackDelayTimer:Number; public static var COMPLETE_TRACK:String = "onWMCCompleteTracking"; public static var COMPLETE_TWEEN:String = "onWMCTweensComplete"; public static var STOP_TRACK:String = "onWMCStopTracking"; public function completeTweens():void{ WorkinTweener.completeScope(this); } override public function stop():void{ if (_isTracking){ stopTrack(); }; super.stop(); } public function frameTween(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:String="linear", _arg5:Number=0, _arg6:MovieClip=null):void{ WorkinTweener.addTween(this, WorkinTweener.TWEEN_FRAME, {start:_arg1, end:_arg2, dur:_arg3, ease:_arg4, delay:_arg5}); } public function moveBy(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:String="linear", _arg5:Number=0):void{ WorkinTweener.addTween(this, WorkinTweener.TWEEN_POS, {x:(x + _arg1), y:(y + _arg2), dur:_arg3, ease:_arg4, delay:_arg5}); } public function fadeBy(_arg1:Number, _arg2:Number, _arg3:String="linear", _arg4:Number=0):void{ alphaBy(_arg1, _arg2, _arg3, _arg4); } public function rotateSet(_arg1:Number):void{ rotation = _arg1; } public function rotateBy(_arg1:Number, _arg2:Number, _arg3:String="linear", _arg4:Number=0):void{ WorkinTweener.addTween(this, WorkinTweener.TWEEN_ROTATE, {end:_arg1, dur:_arg2, ease:_arg3, delay:_arg4, by:true}); } public function fadeTo(_arg1:Number, _arg2:Number, _arg3:String="linear", _arg4:Number=0):void{ alphaTo(_arg1, _arg2, _arg3, _arg4); } public function colorBy(_arg1:uint, _arg2:Number, _arg3:String="linear", _arg4:Number=0):void{ } public function pauseTween():void{ WorkinTweener.pauseScope(this); } public function blurBy(_arg1:Object, _arg2:Number, _arg3:String="linear", _arg4:Number=0):void{ } public function shadowSet(_arg1:Object, _arg2:Number=0):void{ } public function moveTo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:String="linear", _arg5:Number=0):void{ WorkinTweener.addTween(this, WorkinTweener.TWEEN_POS, {x:_arg1, y:_arg2, dur:_arg3, ease:_arg4, delay:_arg5}); } public function clearTweens():void{ WorkinTweener.removeScope(this); } public function trackPlay(_arg1:Object, _arg2:Number, _arg3:Number=0):void{ if (_isTracking){ stopTrack(); }; _trackDelayTimer = _arg3; if (_trackDelayTimer > 0){ gotoAndStop(_arg1); } else { gotoAndPlay(_arg1); }; _isTracking = true; _trackOutFrame = _arg2; Updater.getInstance().addEventListener(Updater.EVENT_UPDATE, _onTrack, false, 0, true); } public function shadowOut(_arg1:Number=1, _arg2:String="linear", _arg3:Number=0):void{ } public function rotateTo(_arg1:Number, _arg2:Number, _arg3:String="linear", _arg4:Number=0):void{ WorkinTweener.addTween(this, WorkinTweener.TWEEN_ROTATE, {end:_arg1, dur:_arg2, ease:_arg3, delay:_arg4, by:false}); } public function alphaSet(_arg1:Number):void{ alpha = _arg1; } public function propTo(_arg1:Number, _arg2:Number, _arg3:String="linear", _arg4:Number=0):void{ WorkinTweener.addTween(this, WorkinTweener.TWEEN_PROP, {end:_arg1, dur:_arg2, ease:_arg3, delay:_arg4}); } public function blurInit(_arg1:Number=0):void{ } public function colorTo(_arg1:uint, _arg2:Number, _arg3:String="linear", _arg4:Number=0):void{ } public function scaleBy(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:String="linear", _arg5:Number=0):void{ WorkinTweener.addTween(this, WorkinTweener.TWEEN_SCALE, {scaleX:(scaleX + _arg1), scaleY:(scaleY + _arg2), dur:_arg3, ease:_arg4, delay:_arg5}); } public function glowInit(_arg1:Number=0):void{ } public function shadowInit(_arg1:Number=0):void{ } public function stopTrack():void{ _clearTrack(); dispatchEvent(new Event(STOP_TRACK)); } public function glowRemove(_arg1:Number=0):void{ } public function unpauseTween():void{ WorkinTweener.unpauseScope(this); } public function blurOut(_arg1:Number=1, _arg2:String="linear", _arg3:Number=0):void{ } public function addTween(_arg1:String, _arg2:Object):void{ WorkinTweener.addTween(this, _arg1, _arg2); } public function blurTo(_arg1:Object, _arg2:Number, _arg3:String="linear", _arg4:Number=0):void{ } protected function _onTrack(_arg1:EUpdate):void{ if (_trackDelayTimer > 0){ _trackDelayTimer = (_trackDelayTimer - _arg1.dt); if (_trackDelayTimer <= 0){ play(); }; }; if (currentFrame >= _trackOutFrame){ _completeTrack(); }; } public function fadeSet(_arg1:Number):void{ alphaSet(_arg1); } public function blurSet(_arg1:Object, _arg2:Number=0):void{ } public function posSet(_arg1:Number, _arg2:Number):void{ x = _arg1; y = _arg2; } public function alphaTo(_arg1:Number, _arg2:Number, _arg3:String="linear", _arg4:Number=0):void{ WorkinTweener.addTween(this, WorkinTweener.TWEEN_ALPHA, {end:_arg1, dur:_arg2, ease:_arg3, delay:_arg4}); } public function glowSet(_arg1:Object, _arg2:Number=0):void{ } override public function gotoAndStop(_arg1:Object, _arg2:String=null):void{ if (_isTracking){ stopTrack(); }; super.gotoAndStop(_arg1, _arg2); } public function shadowBy(_arg1:Object, _arg2:Number, _arg3:String="linear", _arg4:Number=0):void{ } public function onTweensComplete():void{ dispatchEvent(new Event(COMPLETE_TWEEN)); _tweenComplete(); } public function glowOut(_arg1:Number=1, _arg2:String="linear", _arg3:Number=0, _arg4:uint=0):void{ } protected function _completeTrack():void{ gotoAndStop(_trackOutFrame); dispatchEvent(new Event(COMPLETE_TRACK)); _clearTrack(); } protected function _clearTrack():void{ if (!_isTracking){ return; }; _isTracking = false; _trackDelayTimer = 0; Updater.getInstance().removeEventListener(Updater.EVENT_UPDATE, _onTrack); } public function clear():void{ } public function alphaBy(_arg1:Number, _arg2:Number, _arg3:String="linear", _arg4:Number=0):void{ WorkinTweener.addTween(this, WorkinTweener.TWEEN_ALPHA, {end:(alpha + _arg1), dur:_arg2, ease:_arg3, delay:_arg4}); } public function frameSet(_arg1:Number):void{ gotoAndStop(_arg1); } public function scaleTo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:String="linear", _arg5:Number=0):void{ WorkinTweener.addTween(this, WorkinTweener.TWEEN_SCALE, {scaleX:_arg1, scaleY:_arg2, dur:_arg3, ease:_arg4, delay:_arg5}); } public function shadowTo(_arg1:Object, _arg2:Number, _arg3:String="linear", _arg4:Number=0):void{ } protected function _tweenComplete():void{ } override public function gotoAndPlay(_arg1:Object, _arg2:String=null):void{ if (_isTracking){ stopTrack(); }; super.gotoAndPlay(_arg1, _arg2); } public function propTween(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:String="linear", _arg5:Number=0, _arg6:MovieClip=null):void{ WorkinTweener.addTween(this, WorkinTweener.TWEEN_PROP, {start:_arg1, end:_arg2, dur:_arg3, ease:_arg4, delay:_arg5}); } public function scaleSet(_arg1:Number, _arg2:Number):void{ scaleX = _arg1; scaleY = _arg2; } public function posBy(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:String="linear", _arg5:Number=0):void{ WorkinTweener.addTween(this, WorkinTweener.TWEEN_POS, {x:(x + _arg1), y:(y + _arg2), dur:_arg3, ease:_arg4, delay:_arg5}); } public function cleanUp():void{ _clearTrack(); WorkinTweener.removeScope(this); } public function frameTo(_arg1:Number, _arg2:Number, _arg3:String="linear", _arg4:Number=0):void{ WorkinTweener.addTween(this, WorkinTweener.TWEEN_FRAME, {end:_arg1, dur:_arg2, ease:_arg3, delay:_arg4}); } public function blurRemove(_arg1:Number=0):void{ } public function glowBy(_arg1:Object, _arg2:Number, _arg3:String="linear", _arg4:Number=0):void{ } public function glowTo(_arg1:Object, _arg2:Number, _arg3:String="linear", _arg4:Number=0):void{ } public function posTo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:String="linear", _arg5:Number=0):void{ WorkinTweener.addTween(this, WorkinTweener.TWEEN_POS, {x:_arg1, y:_arg2, dur:_arg3, ease:_arg4, delay:_arg5}); } public function shadowRemove(_arg1:Number=0):void{ } public function colorSet(_arg1:uint):void{ var _local2:ColorTransform; _local2 = transform.colorTransform; _local2.color = _arg1; transform.colorTransform = _local2; } } }//package com.workinman.lib.display
Section 7
//EBitmap (com.workinman.lib.events.EBitmap) package com.workinman.lib.events { import flash.events.*; import flash.display.*; import com.workinman.lib.net.*; public class EBitmap extends Event { private var _success:Boolean; private var _bitmap:Bitmap; private var _url:String; public function EBitmap(_arg1:Boolean, _arg2:Bitmap=null, _arg3:String=""){ super(BitmapLoader.ON_BITMAP, false, false); _success = _arg1; _bitmap = _arg2; _url = _arg3; } public function get success():Boolean{ return (_success); } public function get bitmap():Bitmap{ return (_bitmap); } public function get url():String{ return (_url); } } }//package com.workinman.lib.events
Section 8
//EData (com.workinman.lib.events.EData) package com.workinman.lib.events { import flash.events.*; public class EData extends Event { private var _data:Object; public function EData(_arg1:String, _arg2:Object){ super(_arg1, false, false); _data = _arg2; } public function get data():Object{ return (_data); } } }//package com.workinman.lib.events
Section 9
//EFile (com.workinman.lib.events.EFile) package com.workinman.lib.events { import flash.events.*; import flash.display.*; import com.workinman.lib.net.*; public class EFile extends Event { private var _success:Boolean; private var _file:DisplayObject; private var _url:String; public function EFile(_arg1:Boolean, _arg2:DisplayObject=null, _arg3:String=""){ super(BitmapLoader.ON_BITMAP, false, false); _success = _arg1; _file = _arg2; _url = _arg3; } public function get success():Boolean{ return (_success); } public function get url():String{ return (_url); } public function get file():DisplayObject{ return (_file); } } }//package com.workinman.lib.events
Section 10
//ELoaderQueue (com.workinman.lib.events.ELoaderQueue) package com.workinman.lib.events { import flash.events.*; import com.workinman.lib.net.*; public class ELoaderQueue extends Event { public var _loader:WorkinLoader; public function ELoaderQueue(_arg1:WorkinLoader){ super(WorkinLoader.ON_QUEUE, false, false); _loader = _arg1; } public function get loader():WorkinLoader{ return (_loader); } } }//package com.workinman.lib.events
Section 11
//EProgress (com.workinman.lib.events.EProgress) package com.workinman.lib.events { import flash.events.*; public class EProgress extends Event { private var _bytesLoaded:Number; private var _url:String; private var _bytesTotal:Number; public function EProgress(_arg1:String, _arg2:Number, _arg3:Number, _arg4:String=""){ super(_arg1, false, false); _bytesLoaded = _arg2; _bytesTotal = _arg3; _url = _arg4; } public function get ratio():Number{ return ((_bytesLoaded / _bytesTotal)); } public function get bytesLoaded():Number{ return (_bytesLoaded); } public function get bytesTotal():Number{ return (_bytesTotal); } public function get url():String{ return (_url); } } }//package com.workinman.lib.events
Section 12
//ESWF (com.workinman.lib.events.ESWF) package com.workinman.lib.events { import flash.events.*; import flash.display.*; import com.workinman.lib.net.*; public class ESWF extends Event { private var _success:Boolean; private var _swf:DisplayObject; private var _url:String; public function ESWF(_arg1:Boolean, _arg2:DisplayObject=null, _arg3:String=""){ super(SWFLoader.ON_SWF, false, false); _success = _arg1; _swf = _arg2; _url = _arg3; } public function get swf():DisplayObject{ return (_swf); } public function get success():Boolean{ return (_success); } public function get url():String{ return (_url); } } }//package com.workinman.lib.events
Section 13
//EUpdate (com.workinman.lib.events.EUpdate) package com.workinman.lib.events { import flash.events.*; public class EUpdate extends Event { private var _dt:Number; public function EUpdate(_arg1:String, _arg2:Number){ super(_arg1, false, false); _dt = _arg2; } public function get dt():Number{ return (_dt); } } }//package com.workinman.lib.events
Section 14
//EXML (com.workinman.lib.events.EXML) package com.workinman.lib.events { import flash.events.*; import com.workinman.lib.net.*; public class EXML extends Event { private var _success:Boolean; private var _xml:XML; public function EXML(_arg1:Boolean, _arg2:XML=null){ super(XMLLoader.ON_XML, false, false); _success = _arg1; _xml = _arg2; } public function get success():Boolean{ return (_success); } public function get xml():XML{ return (_xml); } } }//package com.workinman.lib.events
Section 15
//InterceptResult (com.workinman.lib.math.InterceptResult) package com.workinman.lib.math { public class InterceptResult { private var _result:WorkinPoint; private var _success:Boolean; private var _line1:WorkinLine; private var _line2:WorkinLine; public function InterceptResult(_arg1:Boolean, _arg2:WorkinPoint=null){ _success = _arg1; _result = _arg2; } public function get success():Boolean{ return (_success); } public function set line2(_arg1:WorkinLine):void{ _line2 = _arg1; } public function get line1():WorkinLine{ return (_line1); } public function get line2():WorkinLine{ return (_line2); } public function set line1(_arg1:WorkinLine):void{ _line1 = _arg1; } public function toString():String{ return (("[Intercept Result] " + (_success) ? ("Collided! -> " + _result) : "Failed.")); } public function get result():WorkinPoint{ return (_result); } } }//package com.workinman.lib.math
Section 16
//PennerEasing (com.workinman.lib.math.PennerEasing) package com.workinman.lib.math { public class PennerEasing { public static function easeInBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number=-0.123456):Number{ if (_arg5 == -0.123456){ _arg5 = 1.70158; }; _arg1 = (_arg1 / _arg4); return (((((_arg3 * _arg1) * _arg1) * (((_arg5 + 1) * _arg1) - _arg5)) + _arg2)); } public static function easeInOutQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ return (((((_arg3 / 2) * _arg1) * _arg1) + _arg2)); }; --_arg1; return ((((-(_arg3) / 2) * ((_arg1 * (_arg1 - 2)) - 1)) + _arg2)); } public static function easeInOutBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ if (_arg1 < (_arg4 / 2)){ return (((easeInBounce((_arg1 * 2), 0, _arg3, _arg4) * 0.5) + _arg2)); }; return ((((easeOutBounce(((_arg1 * 2) - _arg4), 0, _arg3, _arg4) * 0.5) + (_arg3 * 0.5)) + _arg2)); } public static function easeInExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (((_arg1)==0) ? _arg2 : ((_arg3 * Math.pow(2, (10 * ((_arg1 / _arg4) - 1)))) + _arg2)); } public static function easeOutInQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = (_arg1 / (_arg4 / 2)); --_arg1; return ((((_arg3 / 2) * (((((_arg1 * _arg1) * _arg1) * _arg1) * _arg1) + 1)) + _arg2)); } public static function easeOutBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number=-0.123456):Number{ if (_arg5 == -0.123456){ _arg5 = 1.70158; }; _arg1 = ((_arg1 / _arg4) - 1); return (((_arg3 * (((_arg1 * _arg1) * (((_arg5 + 1) * _arg1) + _arg5)) + 1)) + _arg2)); } public static function easeInOutSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return ((((-(_arg3) / 2) * (Math.cos(((Math.PI * _arg1) / _arg4)) - 1)) + _arg2)); } public static function easeOutInQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ --_arg1; return ((((-(_arg3) / 2) * ((((_arg1 * _arg1) * _arg1) * _arg1) - 1)) + _arg2)); }; --_arg1; return ((((_arg3 / 2) * ((((_arg1 * _arg1) * _arg1) * _arg1) + 1)) + _arg2)); } public static function easeOutInCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ --_arg1; return ((((_arg3 / 2) * Math.sqrt((1 - (_arg1 * _arg1)))) + _arg2)); }; --_arg1; return ((((_arg3 / 2) * (2 - Math.sqrt((1 - (_arg1 * _arg1))))) + _arg2)); } public static function easeOutInBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number=-0.123456):Number{ if (_arg5 == -0.123456){ _arg5 = 1.70158; }; _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ --_arg1; _arg5 = (_arg5 * 1.525); return ((((_arg3 / 2) * (((_arg1 * _arg1) * (((_arg5 + 1) * _arg1) + _arg5)) + 1)) + _arg2)); }; --_arg1; _arg5 = (_arg5 * 1.525); return ((((_arg3 / 2) * (((_arg1 * _arg1) * (((_arg5 + 1) * _arg1) - _arg5)) + 1)) + _arg2)); } public static function easeOutInElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number=-0.123456, _arg6:Number=-0.123456):Number{ var _local7:Number; if (_arg1 == 0){ return (_arg2); }; _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 == 2){ return ((_arg2 + _arg3)); }; if (_arg6 == -0.123456){ _arg6 = (_arg4 * (0.3 * 1.5)); }; if ((((_arg5 == -0.123456)) || ((_arg5 < Math.abs(_arg3))))){ _arg5 = _arg3; _local7 = (_arg6 / 4); } else { _local7 = ((_arg6 / (2 * Math.PI)) * Math.asin((_arg3 / _arg5))); }; if (_arg1 < 1){ return ((((0.5 * ((_arg5 * Math.pow(2, (-10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _arg6)))) + (_arg3 / 2)) + _arg2)); }; return ((((_arg3 / 2) + (0.5 * ((_arg5 * Math.pow(2, (10 * (_arg1 - 2)))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _arg6))))) + _arg2)); } public static function easeOutExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (((_arg1)==_arg4) ? (_arg2 + _arg3) : ((_arg3 * (-(Math.pow(2, ((-10 * _arg1) / _arg4))) + 1)) + _arg2)); } public static function easeInQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = (_arg1 / _arg4); return ((((((_arg3 * _arg1) * _arg1) * _arg1) * _arg1) + _arg2)); } public static function easeOutInCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = (_arg1 / (_arg4 / 2)); --_arg1; return ((((_arg3 / 2) * (((_arg1 * _arg1) * _arg1) + 1)) + _arg2)); } public static function easeOutInExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ if (_arg1 == 0){ return (_arg2); }; if (_arg1 == _arg4){ return ((_arg2 + _arg3)); }; _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ return ((((_arg3 / 2) * (-(Math.pow(2, (-10 * _arg1))) + 1)) + _arg2)); }; return ((((_arg3 / 2) * (Math.pow(2, (10 * (_arg1 - 2))) + 1)) + _arg2)); } public static function easeInQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = (_arg1 / _arg4); return (((((((_arg3 * _arg1) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2)); } public static function easeInOutCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ return ((((-(_arg3) / 2) * (Math.sqrt((1 - (_arg1 * _arg1))) - 1)) + _arg2)); }; _arg1 = (_arg1 - 2); return ((((_arg3 / 2) * (Math.sqrt((1 - (_arg1 * _arg1))) + 1)) + _arg2)); } public static function easeInQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = (_arg1 / _arg4); return ((((_arg3 * _arg1) * _arg1) + _arg2)); } public static function easeInBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (((_arg3 - easeOutBounce((_arg4 - _arg1), 0, _arg3, _arg4)) + _arg2)); } public static function easeInCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = (_arg1 / _arg4); return (((((_arg3 * _arg1) * _arg1) * _arg1) + _arg2)); } public static function easeOutQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = ((_arg1 / _arg4) - 1); return (((-(_arg3) * ((((_arg1 * _arg1) * _arg1) * _arg1) - 1)) + _arg2)); } public static function easeInSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return ((((-(_arg3) * Math.cos(((_arg1 / _arg4) * (Math.PI / 2)))) + _arg3) + _arg2)); } public static function easeInOutQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ return (((((((_arg3 / 2) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2)); }; _arg1 = (_arg1 - 2); return ((((-(_arg3) / 2) * ((((_arg1 * _arg1) * _arg1) * _arg1) - 2)) + _arg2)); } public static function linear(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return ((((_arg3 * _arg1) / _arg4) + _arg2)); } public static function easeOutQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = (_arg1 / _arg4); return ((((-(_arg3) * _arg1) * (_arg1 - 2)) + _arg2)); } public static function easeOutBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = (_arg1 / _arg4); if (_arg1 < (1 / 2.75)){ return (((_arg3 * ((7.5625 * _arg1) * _arg1)) + _arg2)); }; if (_arg1 < (2 / 2.75)){ _arg1 = (_arg1 - (1.5 / 2.75)); return (((_arg3 * (((7.5625 * _arg1) * _arg1) + 0.75)) + _arg2)); }; if (_arg1 < (2.5 / 2.75)){ _arg1 = (_arg1 - (2.25 / 2.75)); return (((_arg3 * (((7.5625 * _arg1) * _arg1) + 0.9375)) + _arg2)); }; _arg1 = (_arg1 - (2.625 / 2.75)); return (((_arg3 * (((7.5625 * _arg1) * _arg1) + 0.984375)) + _arg2)); } public static function easeInOutBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number=-0.123456):Number{ if (_arg5 == -0.123456){ _arg5 = 1.70158; }; _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ _arg5 = (_arg5 * 1.525); return ((((_arg3 / 2) * ((_arg1 * _arg1) * (((_arg5 + 1) * _arg1) - _arg5))) + _arg2)); }; _arg1 = (_arg1 - 2); _arg5 = (_arg5 * 1.525); return ((((_arg3 / 2) * (((_arg1 * _arg1) * (((_arg5 + 1) * _arg1) + _arg5)) + 2)) + _arg2)); } public static function easeOutCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = ((_arg1 / _arg4) - 1); return (((_arg3 * (((_arg1 * _arg1) * _arg1) + 1)) + _arg2)); } public static function easeOutQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = ((_arg1 / _arg4) - 1); return (((_arg3 * (((((_arg1 * _arg1) * _arg1) * _arg1) * _arg1) + 1)) + _arg2)); } public static function easeInOutExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ if (_arg1 == 0){ return (_arg2); }; if (_arg1 == _arg4){ return ((_arg2 + _arg3)); }; _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ return ((((_arg3 / 2) * Math.pow(2, (10 * (_arg1 - 1)))) + _arg2)); }; --_arg1; return ((((_arg3 / 2) * (-(Math.pow(2, (-10 * _arg1))) + 2)) + _arg2)); } public static function easeInOutCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ return ((((((_arg3 / 2) * _arg1) * _arg1) * _arg1) + _arg2)); }; _arg1 = (_arg1 - 2); return ((((_arg3 / 2) * (((_arg1 * _arg1) * _arg1) + 2)) + _arg2)); } public static function easeInOutQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ return ((((((((_arg3 / 2) * _arg1) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2)); }; _arg1 = (_arg1 - 2); return ((((_arg3 / 2) * (((((_arg1 * _arg1) * _arg1) * _arg1) * _arg1) + 2)) + _arg2)); } public static function easeInElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number=-0.123456, _arg6:Number=-0.123456):Number{ var _local7:Number; if (_arg1 == 0){ return (_arg2); }; _arg1 = (_arg1 / _arg4); if (_arg1 == 1){ return ((_arg2 + _arg3)); }; if (_arg6 == -0.123456){ _arg6 = (_arg4 * 0.3); }; if ((((_arg5 == -0.123456)) || ((_arg5 < Math.abs(_arg3))))){ _arg5 = _arg3; _local7 = (_arg6 / 4); } else { _local7 = ((_arg6 / (2 * Math.PI)) * Math.asin((_arg3 / _arg5))); }; --_arg1; return ((-(((_arg5 * Math.pow(2, (10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _arg6)))) + _arg2)); } public static function easeOutInSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ return ((((_arg3 / 2) * Math.sin(((Math.PI * _arg1) / 2))) + _arg2)); }; --_arg1; return ((((-(_arg3) / 2) * (Math.cos(((Math.PI * _arg1) / 2)) - 2)) + _arg2)); } public static function easeOutInBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ if (_arg1 < (_arg4 / 2)){ return (((easeOutBounce((_arg1 * 2), 0, _arg3, _arg4) * 0.5) + _arg2)); }; return ((((easeInBounce(((_arg1 * 2) - _arg4), 0, _arg3, _arg4) * 0.5) + (_arg3 * 0.5)) + _arg2)); } public static function easeOutElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number=-0.123456, _arg6:Number=-0.123456):Number{ var _local7:Number; if (_arg1 == 0){ return (_arg2); }; _arg1 = (_arg1 / _arg4); if (_arg1 == 1){ return ((_arg2 + _arg3)); }; if (_arg6 == -0.123456){ _arg6 = (_arg4 * 0.3); }; if ((((_arg5 == -0.123456)) || ((_arg5 < Math.abs(_arg3))))){ _arg5 = _arg3; _local7 = (_arg6 / 4); } else { _local7 = ((_arg6 / (2 * Math.PI)) * Math.asin((_arg3 / _arg5))); }; return (((((_arg5 * Math.pow(2, (-10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _arg6))) + _arg3) + _arg2)); } public static function easeOutCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = ((_arg1 / _arg4) - 1); return (((_arg3 * Math.sqrt((1 - (_arg1 * _arg1)))) + _arg2)); } public static function easeInCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = (_arg1 / _arg4); return (((-(_arg3) * (Math.sqrt((1 - (_arg1 * _arg1))) - 1)) + _arg2)); } public static function easeInOutElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number=-0.123456, _arg6:Number=-0.123456):Number{ var _local7:Number; if (_arg1 == 0){ return (_arg2); }; _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 == 2){ return ((_arg2 + _arg3)); }; if (_arg6 == -0.123456){ _arg6 = (_arg4 * (0.3 * 1.5)); }; if ((((_arg5 == -0.123456)) || ((_arg5 < Math.abs(_arg3))))){ _arg5 = _arg3; _local7 = (_arg6 / 4); } else { _local7 = ((_arg6 / (2 * Math.PI)) * Math.asin((_arg3 / _arg5))); }; if (_arg1 < 1){ --_arg1; return (((-0.5 * ((_arg5 * Math.pow(2, (10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _arg6)))) + _arg2)); }; --_arg1; return ((((((_arg5 * Math.pow(2, (-10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _arg6))) * 0.5) + _arg3) + _arg2)); } public static function easeOutSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (((_arg3 * Math.sin(((_arg1 / _arg4) * (Math.PI / 2)))) + _arg2)); } } }//package com.workinman.lib.math
Section 17
//PennerManager (com.workinman.lib.math.PennerManager) package com.workinman.lib.math { public class PennerManager { public static var EASE_CUBIC_IN:String = "cubicIn"; public static var EASE_CUBIC_OUT:String = "cubicOut"; public static var EASE_EXPO_OUT:String = "expoOut"; public static var EASE_IN:String = "easeIn"; public static var EASE_CUBIC:String = "cubic"; public static var EASE_LINEAR:String = "linear"; public static var EASE_WAVE_OUT:String = "waveOut"; public static var EASE_EXPO:String = "expo"; public static var EASE_BOUNCE_IN:String = "bounceIn"; public static var EASE_CIRCLE_OUT:String = "circleOut"; public static var EASE_WAVE:String = "wave"; public static var EASE_BLAST_IN:String = "blastIn"; public static var EASE_BLAST_OUT:String = "blastOut"; public static var EASE_EXPO_IN:String = "expoIn"; public static var EASE_SPACE_OUT:String = "spaceOut"; public static var EASE_BLAST:String = "blast"; public static var EASE_QUAD_IN:String = "quadIn"; public static var EASE_SPACE_IN:String = "spaceIn"; public static var EASE_ELASTIC_OUT:String = "elasticOut"; public static var EASE_CIRCLE:String = "circle"; public static var EASE_WAVE_IN:String = "waveIn"; public static var EASE_BUMP_OUT:String = "bumpOut"; public static var EASE_ELASTIC_IN:String = "elasticIn"; public static var EASE_CIRCLE_IN:String = "circleIn"; public static var EASE_ELASTIC:String = "elastic"; public static var EASE_QUAD_OUT:String = "quadOut"; public static var EASE_BOUNCE_OUT:String = "bounceOut"; public static var EASE_OUT:String = "easeOut"; public static var EASE_SPACE:String = "space"; public static var EASE:String = "ease"; public static var EASE_BUMP:String = "bump"; public static var EASE_QUAD:String = "quad"; public static var EASE_BOUNCE:String = "bounce"; public static var EASE_BUMP_IN:String = "bumpIn"; protected static function _tweenCubicIn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (PennerEasing.easeInCubic(_arg3, _arg1, _arg2, _arg4)); } protected static function _tweenCircleBoth(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (PennerEasing.easeInOutCirc(_arg3, _arg1, _arg2, _arg4)); } protected static function _tweenBumpIn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (PennerEasing.easeInBack(_arg3, _arg1, _arg2, _arg4)); } protected static function _tweenWaveIn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (PennerEasing.easeInSine(_arg3, _arg1, _arg2, _arg4)); } protected static function _tweenSpaceOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (PennerEasing.easeOutQuart(_arg3, _arg1, _arg2, _arg4)); } protected static function _tweenBlastBoth(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (PennerEasing.easeInOutQuint(_arg3, _arg1, _arg2, _arg4)); } protected static function _tweenBounceOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (PennerEasing.easeOutBounce(_arg3, _arg1, _arg2, _arg4)); } protected static function _tweenEaseBoth(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (PennerEasing.easeInOutQuad(_arg3, _arg1, _arg2, _arg4)); } protected static function _tweenExpoBoth(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (PennerEasing.easeInOutExpo(_arg3, _arg1, _arg2, _arg4)); } protected static function _tweenWaveOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (PennerEasing.easeOutSine(_arg3, _arg1, _arg2, _arg4)); } protected static function _tweenCircleIn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (PennerEasing.easeInCirc(_arg3, _arg1, _arg2, _arg4)); } protected static function _tweenWaveBoth(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (PennerEasing.easeInOutSine(_arg3, _arg1, _arg2, _arg4)); } protected static function _tweenCubicOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (PennerEasing.easeOutCubic(_arg3, _arg1, _arg2, _arg4)); } protected static function _tweenLinear(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return ((_arg1 + ((_arg3 / _arg4) * _arg2))); } protected static function _tweenBounceBoth(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (PennerEasing.easeInOutBounce(_arg3, _arg1, _arg2, _arg4)); } protected static function _tweenSpaceBoth(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (PennerEasing.easeInOutQuart(_arg3, _arg1, _arg2, _arg4)); } protected static function _tweenEaseIn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (PennerEasing.easeInQuad(_arg3, _arg1, _arg2, _arg4)); } protected static function _tweenBlastOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (PennerEasing.easeOutQuint(_arg3, _arg1, _arg2, _arg4)); } protected static function _tweenExpoIn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (PennerEasing.easeInExpo(_arg3, _arg1, _arg2, _arg4)); } protected static function _tweenElasticOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (PennerEasing.easeOutElastic(_arg3, _arg1, _arg2, _arg4)); } protected static function _tweenCircleOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (PennerEasing.easeOutCirc(_arg3, _arg1, _arg2, _arg4)); } protected static function _tweenSpaceIn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (PennerEasing.easeInQuart(_arg3, _arg1, _arg2, _arg4)); } protected static function _tweenBlastIn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (PennerEasing.easeInQuint(_arg3, _arg1, _arg2, _arg4)); } protected static function _tweenCubicBoth(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (PennerEasing.easeInOutCubic(_arg3, _arg1, _arg2, _arg4)); } protected static function _tweenBumpOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (PennerEasing.easeOutBack(_arg3, _arg1, _arg2, _arg4)); } protected static function _tweenElasticIn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (PennerEasing.easeInElastic(_arg3, _arg1, _arg2, _arg4)); } protected static function _tweenElasticBoth(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (PennerEasing.easeInOutElastic(_arg3, _arg1, _arg2, _arg4)); } public static function getEaseFunction(_arg1:String):Function{ switch (_arg1){ case EASE_IN: case EASE_QUAD_IN: return (_tweenEaseIn); case EASE_OUT: case EASE_QUAD_OUT: return (_tweenEaseOut); case EASE: case EASE_QUAD: return (_tweenEaseBoth); case EASE_EXPO: return (_tweenExpoBoth); case EASE_EXPO_IN: return (_tweenExpoIn); case EASE_EXPO_OUT: return (_tweenExpoOut); case EASE_ELASTIC: return (_tweenElasticBoth); case EASE_ELASTIC_IN: return (_tweenElasticIn); case EASE_ELASTIC_OUT: return (_tweenElasticOut); case EASE_BUMP: return (_tweenBumpBoth); case EASE_BUMP_IN: return (_tweenBumpIn); case EASE_BUMP_OUT: return (_tweenBumpBoth); case EASE_BOUNCE: return (_tweenBounceBoth); case EASE_BOUNCE_IN: return (_tweenBounceIn); case EASE_BOUNCE_OUT: return (_tweenBounceOut); case EASE_CUBIC: return (_tweenCubicBoth); case EASE_CUBIC_IN: return (_tweenCubicIn); case EASE_CUBIC_OUT: return (_tweenCubicOut); case EASE_SPACE: return (_tweenSpaceBoth); case EASE_SPACE_IN: return (_tweenSpaceIn); case EASE_SPACE_OUT: return (_tweenSpaceOut); case EASE_BLAST: return (_tweenBlastBoth); case EASE_BLAST_IN: return (_tweenBlastIn); case EASE_BLAST_OUT: return (_tweenBlastOut); case EASE_WAVE: return (_tweenWaveBoth); case EASE_WAVE_IN: return (_tweenWaveIn); case EASE_WAVE_OUT: return (_tweenWaveOut); case EASE_CIRCLE: return (_tweenCircleBoth); case EASE_CIRCLE_IN: return (_tweenCircleIn); case EASE_CIRCLE_OUT: return (_tweenCircleOut); case EASE_LINEAR: default: return (_tweenLinear); }; } protected static function _tweenBounceIn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (PennerEasing.easeInBounce(_arg3, _arg1, _arg2, _arg4)); } protected static function _tweenEaseOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (PennerEasing.easeOutQuad(_arg3, _arg1, _arg2, _arg4)); } protected static function _tweenExpoOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (PennerEasing.easeOutExpo(_arg3, _arg1, _arg2, _arg4)); } protected static function _tweenBumpBoth(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (PennerEasing.easeInOutBack(_arg3, _arg1, _arg2, _arg4)); } } }//package com.workinman.lib.math
Section 18
//WorkinBezier (com.workinman.lib.math.WorkinBezier) package com.workinman.lib.math { public class WorkinBezier { private var _loop:Number; protected var _c0:WorkinPoint; protected var _c1:WorkinPoint; protected var _length:Number; private var _bVal:Object; private var _cVal:Object; protected var _p0:WorkinPoint; protected var _p1:WorkinPoint; private var _aVal:Object; protected var _segments:Number; public function WorkinBezier(_arg1:WorkinPoint, _arg2:WorkinPoint, _arg3:WorkinPoint, _arg4:WorkinPoint, _arg5:Number=4){ _p0 = _arg1.copy(); _p1 = _arg2.copy(); _c0 = _arg3.copy(); _c1 = _arg4.copy(); _segments = _arg5; if (_segments < 2){ _segments = 2; }; _calcProperties(); } public function copy():WorkinBezier{ return (new WorkinBezier(_p0, _p1, _c0, _c1, _segments)); } public function get p1():WorkinPoint{ return (_p1); } public function set p1(_arg1:WorkinPoint):void{ _p1 = _arg1; } public function testPointIntercept(_arg1:WorkinPoint, _arg2:Number=3):Boolean{ var _local3:Array; _local3 = getAsLines(_arg2); _loop = _local3.length; while (_loop--) { if (_local3[_loop].testPointSegmentIntercept(_arg1)){ return (true); }; }; return (false); } private function _calcProperties():void{ _length = (Math.round((Math.sqrt((((_p0.x - _p1.x) * (_p0.x - _p1.x)) + ((_p0.y - _p1.y) * (_p0.y - _p1.y)))) * 1000)) / 1000); _cVal = {x:(3 * (c0.x - p0.x)), y:(3 * (c0.y - p0.y))}; _bVal = {x:((3 * (c1.x - c0.x)) - _cVal.x), y:((3 * (c1.y - c0.y)) - _cVal.y)}; _aVal = {x:(((p1.x - p0.x) - _bVal.x) - _cVal.x), y:(((p1.y - p0.y) - _bVal.y) - _cVal.y)}; } public function clean():void{ _p0.clean(); _p1.clean(); _c0.clean(); _c1.clean(); _calcProperties(); } public function endToPoint(_arg1:WorkinPoint):void{ _p1.toPoint(_arg1); _calcProperties(); } public function set length(_arg1:Number):void{ _length = _arg1; } public function get center():WorkinPoint{ return (getPoint(0.5)); } public function originTo(_arg1:Number, _arg2:Number, _arg3:Number):void{ _p0.to(_arg1, _arg2, _arg3); _p0.clean(); _calcProperties(); } public function set c1(_arg1:WorkinPoint):void{ _c1 = _arg1; } public function originToPoint(_arg1:WorkinPoint):void{ _p0.toPoint(_arg1); _calcProperties(); } public function set c0(_arg1:WorkinPoint):void{ _c0 = _arg1; } public function get p0():WorkinPoint{ return (_p0); } public function testLineSegmentIntercept(_arg1:WorkinLine, _arg2:Number=3):InterceptResult{ var _local3:Array; var _local4:InterceptResult; _local3 = getAsLines(_arg2); _loop = _local3.length; while (_loop--) { _local4 = _arg1.testLineSegmentIntercept(_local3[_loop]); if (_local4.success){ return (_local4); }; }; return (new InterceptResult(false)); } public function getPoint(_arg1:Number):WorkinPoint{ return (new WorkinPoint(((((_aVal.x * ((_arg1 * _arg1) * _arg1)) + (_bVal.x * (_arg1 * _arg1))) + (_cVal.x * _arg1)) + p0.x), ((((_aVal.y * ((_arg1 * _arg1) * _arg1)) + (_bVal.y * (_arg1 * _arg1))) + (_cVal.y * _arg1)) + p0.y))); } public function toString():String{ return (((((((((((((("[WorkinBezier] " + "(") + _p0.x) + ", ") + _p0.y) + ", ") + _p0.z) + ") ~> (") + _p1.x) + ", ") + _p1.y) + ", ") + _p1.z) + ")")); } public function get c0():WorkinPoint{ return (_c0); } public function get c1():WorkinPoint{ return (_c1); } public function testLineIntercept(_arg1:WorkinLine, _arg2:Number=3):InterceptResult{ var _local3:Array; var _local4:InterceptResult; _local3 = getAsLines(_arg2); _loop = _local3.length; while (_loop--) { _local4 = _arg1.testLineIntercept(_local3[_loop]); if (_local4.success){ return (_local4); }; }; return (new InterceptResult(false)); } public function testBezierIntercept(_arg1:WorkinBezier, _arg2:Number=3):InterceptResult{ var _local3:Array; var _local4:Array; var _local5:InterceptResult; var _local6:Number; _local3 = getAsLines(_arg2); _local4 = _arg1.getAsLines(_arg2); _loop = _local3.length; while (_loop--) { _local6 = _local4.length; while (_local6--) { _local5 = _local3[_loop].testLineSegmentInterceipt(_local4[_local6]); if (_local5.success){ return (_local5); }; }; }; return (new InterceptResult(false)); } public function get length():Number{ return (_length); } public function endTo(_arg1:Number, _arg2:Number, _arg3:Number):void{ _p1.to(_arg1, _arg2, _arg3); _p1.clean(); _calcProperties(); } public function getAsLines(_arg1:Number=3):Array{ var _local2:WorkinPoint; var _local3:*; var _local4:*; _local2 = p0; _local3 = []; _local4 = 0; _loop = 1; while (_loop <= _arg1) { _local4 = (_loop / _arg1); var _temp1 = _local2; _local2 = getPoint(_local4); _local3.push(new WorkinLine(_temp1, _local2)); _loop++; }; return (_local3); } public function set p0(_arg1:WorkinPoint):void{ _p0 = _arg1; } public function getDerivative(_arg1:Number):WorkinPoint{ return (new WorkinPoint((((((3 * _aVal.x) * _arg1) * _arg1) + ((2 * _bVal.x) * _arg1)) + _cVal.x), (((((3 * _aVal.y) * _arg1) * _arg1) + ((2 * _bVal.y) * _arg1)) + _cVal.y))); } } }//package com.workinman.lib.math
Section 19
//WorkinLine (com.workinman.lib.math.WorkinLine) package com.workinman.lib.math { public class WorkinLine { protected var _length:Number; protected var _normal:WorkinPoint; protected var _slope:Number; private var _xSegmentResult:Number; private var _parametricDenom:WorkinPoint; private var _inverseDeterminate:Number; private var _ySegmentResult:Number; protected var _p0:WorkinPoint; protected var _p1:WorkinPoint; protected var _vector:WorkinPoint; protected var _yIntercept:Number; public function WorkinLine(_arg1:WorkinPoint, _arg2:WorkinPoint){ _p0 = _arg1.copy(); _p1 = _arg2.copy(); _calcProperties(); } public function testPointSegmentIntercept(_arg1:WorkinPoint, _arg2:Boolean=false):Boolean{ if (_parametricDenom.x == 0){ _xSegmentResult = 0; } else { _xSegmentResult = ((_arg1.x - p0.x) / _parametricDenom.x); }; if (_parametricDenom.y == 0){ _ySegmentResult = 0; } else { _ySegmentResult = ((_arg1.y - p0.y) / _parametricDenom.y); }; if (_arg2){ }; if ((((((((_xSegmentResult >= 0)) && ((_xSegmentResult <= 1)))) && ((_ySegmentResult >= 0)))) && ((_ySegmentResult <= 1)))){ return (true); }; return (false); } private function _calcProperties():void{ _length = (Math.round((Math.sqrt((((_p0.x - _p1.x) * (_p0.x - _p1.x)) + ((_p0.y - _p1.y) * (_p0.y - _p1.y)))) * 1000)) / 1000); _vector = new WorkinPoint((p1.x - p0.x), (p1.y - p0.y)); _slope = (_vector.y / _vector.x); if (vector.x == 0){ _slope = 100000; }; _yIntercept = (p0.y - (_slope * p0.x)); _parametricDenom = new WorkinPoint((p1.x - p0.x), (p1.y - p0.y)); _normal = _vector.pseudoCross(); _normal.normalize(); } public function testLineSegmentIntercept(_arg1:WorkinLine, _arg2:Boolean=false):InterceptResult{ var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; _local3 = ((-(_arg1.vector.x) * _vector.y) + (_vector.x * _arg1.vector.y)); _local4 = (p0.x - _arg1.p0.x); _local5 = (p0.y - _arg1.p0.y); _local6 = (((-(_vector.y) * _local4) + (_vector.x * _local5)) / _local3); _local7 = (((_arg1.vector.x * _local5) - (_arg1.vector.y * _local4)) / _local3); if ((((((((_local6 >= 0)) && ((_local6 <= 1)))) && ((_local7 >= 0)))) && ((_local7 <= 1)))){ return (new InterceptResult(true, new WorkinPoint((p0.x + (_local7 * _vector.x)), (p0.y + (_local7 * _vector.y))))); }; return (new InterceptResult(false)); } public function toLine(_arg1:WorkinLine):void{ _p0.toPoint(_arg1.p0); _p1.toPoint(_arg1.p1); _calcProperties(); } public function get centerX():Number{ return ((_p0.x + (_vector.x / 2))); } public function get centerY():Number{ return ((_p0.y + (_vector.y / 2))); } public function get slope():Number{ return (_slope); } public function endTo(_arg1:Number, _arg2:Number, _arg3:Number):void{ _p1.to(_arg1, _arg2, _arg3); _p1.clean(); _calcProperties(); } public function get p1():WorkinPoint{ return (_p1); } public function get vector():WorkinPoint{ return (_vector); } public function get p0():WorkinPoint{ return (_p0); } public function originTo(_arg1:Number, _arg2:Number, _arg3:Number):void{ _p0.to(_arg1, _arg2, _arg3); _p0.clean(); _calcProperties(); } public function get yIntercept():Number{ return (_yIntercept); } public function testLineIntercept(_arg1:WorkinLine):InterceptResult{ var _local2:WorkinPoint; _inverseDeterminate = (1 / ((_slope * -1) - (_arg1.slope * -1))); _local2 = new WorkinPoint((((-1 * _arg1.yIntercept) - (-1 * _yIntercept)) * _inverseDeterminate), (((_arg1.slope * _yIntercept) - (slope * _arg1.yIntercept)) * _inverseDeterminate), 0); return (new InterceptResult(true, _local2)); } public function set length(_arg1:Number):void{ if (length == 0){ return; }; _p1 = new WorkinPoint((_p0.x + (_vector.x * (_arg1 / length))), (_p0.y + (_vector.y * (_arg1 / length)))); _calcProperties(); } public function get center():WorkinPoint{ return (new WorkinPoint((_p0.x + (_vector.x / 2)), (_p0.y + (_vector.y / 2)))); } public function getPoint(_arg1:Number):WorkinPoint{ return (new WorkinPoint((p0.x + (_vector.x * _arg1)), (p0.y + (_vector.y * _arg1)))); } public function rotate(_arg1:Number):void{ _vector.rotate(_arg1); _p1.toPoint(_p0.addPointCopy(_vector)); _calcProperties(); } public function originToPoint(_arg1:WorkinPoint):void{ _p0.toPoint(_arg1); _calcProperties(); } public function clean():void{ _p0.clean(); _p1.clean(); _calcProperties(); } public function get length():Number{ return (_length); } public function get normal():WorkinPoint{ return (_normal); } public function toString():String{ return (((((((((((((("[WorkinLine] " + "(") + _p0.x) + ", ") + _p0.y) + ", ") + _p0.z) + ") ~> (") + _p1.x) + ", ") + _p1.y) + ", ") + _p1.z) + ")")); } public function flip():void{ var _local1:WorkinPoint; _local1 = _p0.copy(); _p0.toPoint(_p1); _p1.toPoint(_local1); _calcProperties(); } public function toNumbers(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):void{ _p0.to(_arg1, _arg2); _p0.clean(); _p1.to(_arg3, _arg4); _p1.clean(); _calcProperties(); } public function copy():WorkinLine{ return (new WorkinLine(_p0, _p1)); } public function projectOntoLine(_arg1:WorkinLine):WorkinLine{ var _local2:Number; _local2 = _arg1.vector.dot(vector.normalizeCopy()); return (new WorkinLine(_arg1.p0, _arg1.p1.addPointCopy(_normal.copyAndResize(Math.sqrt(((_arg1.length * _arg1.length) - (_local2 * _local2))))))); } public function endToPoint(_arg1:WorkinPoint):void{ _p1.toPoint(_arg1); _calcProperties(); } public function to(_arg1:WorkinPoint, _arg2:WorkinPoint):void{ _p0.toPoint(_arg1); _p0.clean(); _p1.toPoint(_arg2); _p1.clean(); _calcProperties(); } } }//package com.workinman.lib.math
Section 20
//WorkinPoint (com.workinman.lib.math.WorkinPoint) package com.workinman.lib.math { import com.workinman.lib.display.tweener.*; public class WorkinPoint { private var _length:Number; private var _x:Number; private var _y:Number; private var _z:Number; public function WorkinPoint(_arg1:Number=0, _arg2:Number=0, _arg3:Number=0){ _x = (Math.round((_arg1 * 1000)) / 1000); _y = (Math.round((_arg2 * 1000)) / 1000); _z = (Math.round((_arg3 * 1000)) / 1000); _calculateLength(); } public function onTweensComplete():void{ } public function to(_arg1:Number, _arg2:Number, _arg3:Number=0):void{ _x = _arg1; _y = _arg2; _z = _arg3; _calculateLength(); } public function addPointCopy(_arg1:WorkinPoint):WorkinPoint{ return (new WorkinPoint((_x + _arg1.x), (_y + _arg1.y), (_z + _arg1.z))); } public function moveBy(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:String="linear", _arg6:Number=0):void{ WorkinTweener.addTween(this, WorkinTweener.TWEEN_POS_3D, {x:(x + _arg1), y:(y + _arg2), z:(z + _arg3), dur:_arg4, ease:_arg5, delay:_arg6, by:false}); } public function get z():Number{ return (_z); } public function diff(_arg1:WorkinPoint):WorkinPoint{ return (new WorkinPoint((_arg1.x - _x), (_arg1.y - _y), (_arg1.z - _z))); } public function normalize():void{ if (_length == 0){ return; }; _x = (_x / _length); _y = (_y / _length); _z = (_z / _length); _calculateLength(); } public function divideCopy(_arg1:Number):WorkinPoint{ return (new WorkinPoint((_x / _arg1), (_y / _arg1), (_z / _arg1))); } public function divide(_arg1:Number):void{ _x = (_x / _arg1); _y = (_y / _arg1); _z = (_z / _arg1); clean(); _calculateLength(); } public function subtract(_arg1:Number, _arg2:Number, _arg3:Number=0):void{ _x = (_x - _arg1); _y = (_y - _arg2); _z = (_z - _arg3); clean(); _calculateLength(); } public function normalizeTo(_arg1:Number):void{ length = _arg1; } public function distTo2D(_arg1:WorkinPoint):Number{ return (Math.abs(Math.sqrt((((_x - _arg1.x) * (_x - _arg1.x)) + ((_y - _arg1.y) * (_y - _arg1.y)))))); } public function get y():Number{ return (_y); } public function add(_arg1:Number, _arg2:Number, _arg3:Number=0):void{ _x = (_x + _arg1); _y = (_y + _arg2); _z = (_z + _arg3); clean(); _calculateLength(); } public function normalizeCopy():WorkinPoint{ if (_length == 0){ return (new WorkinPoint(0, 0, 0)); }; return (new WorkinPoint((_x / _length), (_y / _length), (_z / _length))); } public function multiply(_arg1:Number):void{ _x = (_x * _arg1); _y = (_y * _arg1); _z = (_z * _arg1); clean(); _calculateLength(); } public function subtractCopy(_arg1:Number, _arg2:Number, _arg3:Number=0):WorkinPoint{ return (new WorkinPoint((_x - _arg1), (_y - _arg2), (_z - _arg3))); } public function completeMove():void{ WorkinTweener.completeScope(this); } public function moveTo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:String="linear", _arg6:Number=0):void{ WorkinTweener.addTween(this, WorkinTweener.TWEEN_POS_3D, {x:_arg1, y:_arg2, z:_arg3, dur:_arg4, ease:_arg5, delay:_arg6, by:false}); } private function _calculateLength():void{ _length = Math.sqrt((((_x * _x) + (_y * _y)) + (_z * _z))); } public function dampenByPoint(_arg1:WorkinPoint):void{ if ((((((x < 0)) && ((_arg1.x > 0)))) || ((((x > 0)) && ((_arg1.x < 0)))))){ x = (x + _arg1.x); }; if ((((((y < 0)) && ((_arg1.y > 0)))) || ((((y > 0)) && ((_arg1.y < 0)))))){ y = (y + _arg1.y); }; if ((((((z < 0)) && ((_arg1.z > 0)))) || ((((z > 0)) && ((_arg1.z < 0)))))){ z = (z + _arg1.z); }; _calculateLength(); } public function pseudoCross():WorkinPoint{ return (new WorkinPoint(_y, -(_x), _z)); } public function addCopy(_arg1:Number, _arg2:Number, _arg3:Number=0):WorkinPoint{ return (new WorkinPoint((_x + _arg1), (_y + _arg2), (_z + _arg3))); } public function multiplyCopy(_arg1:Number):WorkinPoint{ return (new WorkinPoint((_x * _arg1), (_y * _arg1), (_z * _arg1))); } public function decay(_arg1:Number):void{ if (length == 0){ return; }; if ((length - _arg1) < 0){ length = 0; return; }; length = (length - _arg1); } public function normalizeCopyTo(_arg1:Number):WorkinPoint{ var _local2:Number; if (_length == 0){ return (new WorkinPoint(0, 0, 0)); }; _local2 = (_arg1 / _length); return (new WorkinPoint((_x * _local2), (_y * _local2), (z * _local2))); } public function equals(_arg1:WorkinPoint):Boolean{ return ((((((x == _arg1.x)) && ((y == _arg1.y)))) && ((z == _arg1.z)))); } public function deflectOff(_arg1:WorkinPoint):void{ toPoint(projectOntoCopy(_arg1).addPointCopy(projectOntoCopy(_arg1.pseudoCross()).reverseCopy())); } public function distTo(_arg1:WorkinPoint):Number{ return (Math.abs(Math.sqrt(((((_x - _arg1.x) * (_x - _arg1.x)) + ((_y - _arg1.y) * (_y - _arg1.y))) + ((_z - _arg1.z) * (_z - _arg1.z)))))); } public function cross(_arg1:WorkinPoint):WorkinPoint{ return (new WorkinPoint(((_y * _arg1.z) - (_z * _arg1.y)), ((_x * _arg1.z) - (_z * _arg1._x)), ((_x * _arg1.y) - (_y * _arg1.x)))); } public function clean():void{ _x = (Math.round((_x * 1000)) / 1000); _y = (Math.round((_y * 1000)) / 1000); _z = (Math.round((_z * 1000)) / 1000); } public function set length(_arg1:Number):void{ if (_length == 0){ return; }; multiply((_arg1 / _length)); } public function dot(_arg1:WorkinPoint):Number{ return ((((_x * _arg1.x) + (_y * _arg1.y)) + (_z * _arg1.z))); } public function get angle():Number{ return (((Math.atan2(y, x) * 180) / Math.PI)); } public function toPoint(_arg1:WorkinPoint):void{ _x = _arg1.x; _y = _arg1.y; _z = _arg1.z; _calculateLength(); } public function projectOnto(_arg1:WorkinPoint):void{ var _local2:WorkinPoint; var _local3:Number; _local2 = _arg1.normalizeCopy(); _local3 = dot(_local2); to((_local3 * _local2.x), (_local3 * _local2.y), 0); } public function rotate(_arg1:Number):void{ var _local2:Number; var _local3:Number; _local2 = Math.cos(((_arg1 * Math.PI) / 180)); _local3 = Math.sin(((_arg1 * Math.PI) / 180)); x = ((x * _local2) - (y * _local3)); y = ((x * _local3) - (y * _local2)); } public function subtractPoint(_arg1:WorkinPoint):void{ _x = (_x - _arg1.x); _y = (_y - _arg1.y); _z = (_z - _arg1.z); clean(); _calculateLength(); } public function decayX(_arg1:Number):void{ if (x == 0){ return; }; if (x > 0){ x = (x - _arg1); if (x < 0){ x = 0; }; } else { if (x < 0){ x = (x + _arg1); if (x > 0){ x = 0; }; }; }; } public function decayY(_arg1:Number):void{ if (y == 0){ return; }; if (y > 0){ y = (y - _arg1); if (y < 0){ y = 0; }; } else { if (y < 0){ y = (y + _arg1); if (y > 0){ y = 0; }; }; }; } public function reverse():void{ x = -(x); y = -(y); z = -(z); } public function deflectOffCopy(_arg1:WorkinPoint):WorkinPoint{ return (projectOntoCopy(_arg1).addPointCopy(projectOntoCopy(_arg1.pseudoCross()).reverseCopy())); } public function get length():Number{ return (_length); } public function projectOntoCopy(_arg1:WorkinPoint):WorkinPoint{ var _local2:WorkinPoint; var _local3:Number; _local2 = _arg1.normalizeCopy(); _local3 = dot(_local2); return (new WorkinPoint((_local3 * _local2.x), (_local3 * _local2.y), 0)); } public function cancelMove():void{ WorkinTweener.stopScope(this); } public function toString():String{ return ((((((("{ WorkinPoint : " + _x) + " , ") + _y) + " , ") + _z) + " }")); } public function addPoint(_arg1:WorkinPoint):void{ _x = (_x + _arg1.x); _y = (_y + _arg1.y); _z = (_z + _arg1.z); clean(); _calculateLength(); } public function set x(_arg1:Number):void{ _x = _arg1; } public function subtractPointCopy(_arg1:WorkinPoint):WorkinPoint{ return (new WorkinPoint((_x - _arg1.x), (_y - _arg1.y), (_z - _arg1.z))); } public function set y(_arg1:Number):void{ _y = _arg1; } public function set z(_arg1:Number):void{ _z = _arg1; } public function copy():WorkinPoint{ return (new WorkinPoint(_x, _y, _z)); } public function copyAndResize(_arg1:Number):WorkinPoint{ return (multiplyCopy((_arg1 / _length))); } public function reverseCopy():WorkinPoint{ return (new WorkinPoint((x * -1), (y * -1), (z * -1))); } public function get x():Number{ return (_x); } public function rotateCopy(_arg1:Number):WorkinPoint{ var _local2:Number; var _local3:Number; _local2 = Math.cos(((_arg1 * Math.PI) / 180)); _local3 = Math.sin(((_arg1 * Math.PI) / 180)); return (new WorkinPoint(((x * _local2) - (y * _local3)), ((x * _local3) - (y * _local2)))); } } }//package com.workinman.lib.math
Section 21
//BitmapLoader (com.workinman.lib.net.BitmapLoader) package com.workinman.lib.net { import flash.events.*; import com.workinman.lib.events.*; import flash.display.*; import flash.net.*; public class BitmapLoader { private static var _bitmapLoader:Loader; private static var _eventDispatcher:EventDispatcher; private static var _loadQueue:Array; private static var _isLoading:Boolean; private static function _clearBitmapListeners():void{ _bitmapLoader.removeEventListener("complete", _onBitmapLoaded); _bitmapLoader.removeEventListener("ioError", _onBitmapError); _bitmapLoader.removeEventListener("securityError", _onBitmapSecurityError); } private static function _onBitmapSecurityError(_arg1:Event):void{ _dispatchEvent(new EBitmap(false)); _clearBitmapListeners(); _completeLoad(); } public static function cleanUp():void{ if (_bitmapLoader != null){ _bitmapLoader.unload(); }; } public static function get ON_PROGRESS():String{ return ("onBitmapProgress"); } public static function get ON_BITMAP():String{ return ("onBitmap"); } protected static function _beginLoad(_arg1:String):void{ if (_bitmapLoader != null){ _bitmapLoader.unload(); }; _bitmapLoader = new Loader(); _bitmapLoader.load(new URLRequest(_arg1)); _bitmapLoader.contentLoaderInfo.addEventListener("progress", _onBitmapProgress); _bitmapLoader.contentLoaderInfo.addEventListener("complete", _onBitmapLoaded); _bitmapLoader.contentLoaderInfo.addEventListener("ioError", _onBitmapError); _bitmapLoader.contentLoaderInfo.addEventListener("securityError", _onBitmapSecurityError); } private static function _onBitmapLoaded(_arg1:Event):void{ _dispatchEvent(new EBitmap(true, Bitmap(_bitmapLoader.content), _bitmapLoader.contentLoaderInfo.url)); _clearBitmapListeners(); _completeLoad(); } public static function addEventListener(_arg1:String, _arg2:Function):void{ if (_eventDispatcher == null){ _eventDispatcher = new EventDispatcher(); }; _eventDispatcher.addEventListener(_arg1, _arg2); } public static function load(_arg1:String):void{ if (_loadQueue == null){ _loadQueue = []; }; if (_isLoading == true){ _queueLoad(_arg1); } else { _beginLoad(_arg1); }; } public static function removeEventListener(_arg1:String, _arg2:Function):void{ if (_eventDispatcher == null){ _eventDispatcher = new EventDispatcher(); }; _eventDispatcher.removeEventListener(_arg1, _arg2); } protected static function _dispatchEvent(_arg1:Event):void{ if (_eventDispatcher == null){ _eventDispatcher = new EventDispatcher(); }; _eventDispatcher.dispatchEvent(_arg1); } private static function _onBitmapProgress(_arg1:ProgressEvent):void{ _dispatchEvent(new EProgress(ON_PROGRESS, _arg1.bytesLoaded, _arg1.bytesTotal, _bitmapLoader.contentLoaderInfo.url)); } private static function _onBitmapError(_arg1:Event):void{ _dispatchEvent(new EBitmap(false)); _clearBitmapListeners(); _completeLoad(); } protected static function _completeLoad():void{ if (_loadQueue.length == 0){ _isLoading = false; } else { _beginLoad(_loadQueue.shift()); }; } private static function _queueLoad(_arg1:String):void{ _loadQueue.push(_arg1); } } }//package com.workinman.lib.net
Section 22
//FileLoader (com.workinman.lib.net.FileLoader) package com.workinman.lib.net { import flash.events.*; import com.workinman.lib.events.*; import flash.display.*; import flash.net.*; public class FileLoader { private static var _eventDispatcher:EventDispatcher; private static var _loadQueue:Array; private static var _fileLoader:Loader; private static var _isLoading:Boolean; protected static function _dispatchEvent(_arg1:Event):void{ if (_eventDispatcher == null){ _eventDispatcher = new EventDispatcher(); }; _eventDispatcher.dispatchEvent(_arg1); } private static function _onFileProgress(_arg1:ProgressEvent):void{ _dispatchEvent(new EProgress(ON_PROGRESS, _arg1.bytesLoaded, _arg1.bytesTotal, _fileLoader.contentLoaderInfo.url)); } public static function removeEventListener(_arg1:String, _arg2:Function):void{ if (_eventDispatcher == null){ _eventDispatcher = new EventDispatcher(); }; _eventDispatcher.removeEventListener(_arg1, _arg2); } public static function cleanUp():void{ if (_fileLoader != null){ _fileLoader.unload(); }; } public static function get ON_PROGRESS():String{ return ("onFileProgress"); } protected static function _beginLoad(_arg1:String):void{ if (_fileLoader != null){ _fileLoader.unload(); }; _fileLoader = new Loader(); _fileLoader.load(new URLRequest(_arg1)); _fileLoader.contentLoaderInfo.addEventListener("progress", _onFileProgress); _fileLoader.contentLoaderInfo.addEventListener("complete", _onFileLoaded); _fileLoader.contentLoaderInfo.addEventListener("ioError", _onFileError); _fileLoader.contentLoaderInfo.addEventListener("securityError", _onFileSecurityError); } private static function _clearBitmapListeners():void{ _fileLoader.removeEventListener("complete", _onFileLoaded); _fileLoader.removeEventListener("ioError", _onFileError); _fileLoader.removeEventListener("securityError", _onFileSecurityError); } public static function addEventListener(_arg1:String, _arg2:Function):void{ if (_eventDispatcher == null){ _eventDispatcher = new EventDispatcher(); }; _eventDispatcher.addEventListener(_arg1, _arg2); } public static function load(_arg1:String):void{ if (_loadQueue == null){ _loadQueue = []; }; if (_isLoading == true){ _queueLoad(_arg1); } else { _beginLoad(_arg1); }; } private static function _onFileLoaded(_arg1:Event):void{ _dispatchEvent(new EFile(true, _fileLoader.content, _fileLoader.contentLoaderInfo.url)); _clearBitmapListeners(); _completeLoad(); } private static function _onFileSecurityError(_arg1:Event):void{ _dispatchEvent(new EFile(false)); _clearBitmapListeners(); _completeLoad(); } public static function get ON_FILE():String{ return ("onFile"); } private static function _onFileError(_arg1:Event):void{ _dispatchEvent(new EFile(false)); _clearBitmapListeners(); _completeLoad(); } protected static function _completeLoad():void{ var _local1:Object; if (_loadQueue.length == 0){ _isLoading = false; } else { _local1 = _loadQueue.shift(); _beginLoad(_local1.url); }; } private static function _queueLoad(_arg1:String, _arg2:Boolean=false):void{ _loadQueue.push({url:_arg1, isCross:_arg2}); } } }//package com.workinman.lib.net
Section 23
//LoaderQueue (com.workinman.lib.net.LoaderQueue) package com.workinman.lib.net { import com.workinman.lib.events.*; public class LoaderQueue { private var _active:Array; private var _maxThreads:uint; private var _queue:Array; private var _DEF_MAX_THREADS:uint;// = 3 private static var _instance:LoaderQueue; public function LoaderQueue(){ _DEF_MAX_THREADS = 3; super(); } private function _activateLoader(_arg1:WorkinLoader):void{ _arg1.addEventListener(WorkinLoader.ON_QUEUE, _onLoaderComplete); _arg1.executeQueuedLoad(); _active.push(_arg1); } public function onAddLoader(_arg1:WorkinLoader):void{ if (_active.length < _maxThreads){ _activateLoader(_arg1); } else { _queue.push(_arg1); }; } public function onChangeMaxThreads(_arg1:uint):void{ _maxThreads = _arg1; } private function _onLoaderComplete(_arg1:ELoaderQueue):void{ var _local2:Number; _local2 = _active.length; while (_local2--) { if (_active[_local2] == _arg1.loader){ _arg1.loader.removeEventListener(WorkinLoader.ON_QUEUE, _onLoaderComplete); _active.splice(_local2, 1); _local2 = 0; }; }; if (_queue.length > 0){ _activateLoader(_queue.shift()); }; } public function onInitInstance():void{ _active = []; _queue = []; _maxThreads = _DEF_MAX_THREADS; } public static function add(_arg1:WorkinLoader):void{ getInstance().onAddLoader(_arg1); } public static function getInstance():LoaderQueue{ if (_instance == null){ _instance = new (LoaderQueue); _instance.onInitInstance(); }; return (_instance); } public static function setMaxThreads(_arg1:uint):void{ getInstance().onChangeMaxThreads(_arg1); } } }//package com.workinman.lib.net
Section 24
//SWFLoader (com.workinman.lib.net.SWFLoader) package com.workinman.lib.net { import flash.events.*; import com.workinman.lib.events.*; import flash.display.*; import flash.net.*; import flash.system.*; public class SWFLoader { private static var _eventDispatcher:EventDispatcher; private static var _isLoading:Boolean; private static var _SWFLoader:Loader; private static var _loadQueue:Array; private static function _onSWFProgress(_arg1:ProgressEvent):void{ _dispatchEvent(new EProgress(ON_PROGRESS, _arg1.bytesLoaded, _arg1.bytesTotal, _SWFLoader.contentLoaderInfo.url)); } private static function _onSWFLoaded(_arg1:Event):void{ _dispatchEvent(new ESWF(true, _SWFLoader.content, _SWFLoader.contentLoaderInfo.url)); _clearBitmapListeners(); _completeLoad(); } public static function get ON_SWF():String{ return ("onSWF"); } protected static function _dispatchEvent(_arg1:Event):void{ if (_eventDispatcher == null){ _eventDispatcher = new EventDispatcher(); }; _eventDispatcher.dispatchEvent(_arg1); } public static function removeEventListener(_arg1:String, _arg2:Function):void{ if (_eventDispatcher == null){ _eventDispatcher = new EventDispatcher(); }; _eventDispatcher.removeEventListener(_arg1, _arg2); } public static function cleanUp():void{ if (_SWFLoader != null){ _SWFLoader.unload(); }; _SWFLoader = null; } public static function get ON_PROGRESS():String{ return ("onSWFProgress"); } protected static function _beginLoad(_arg1:String, _arg2:Boolean=false):void{ var pURL = _arg1; var pIsCrossServer = _arg2; if (_SWFLoader != null){ try { _SWFLoader.unload(); } catch(pError:Error) { }; }; _SWFLoader = new Loader(); try { _SWFLoader.load(new URLRequest(pURL), new LoaderContext(false, ApplicationDomain.currentDomain, (pIsCrossServer) ? SecurityDomain.currentDomain : null)); } catch(pError:Error) { _SWFLoader.load(new URLRequest(pURL), new LoaderContext(false, ApplicationDomain.currentDomain)); }; _SWFLoader.contentLoaderInfo.addEventListener("progress", _onSWFProgress); _SWFLoader.contentLoaderInfo.addEventListener("complete", _onSWFLoaded); _SWFLoader.contentLoaderInfo.addEventListener("ioError", _onSWFError); _SWFLoader.contentLoaderInfo.addEventListener("securityError", _onSWFSecurityError); } public static function addEventListener(_arg1:String, _arg2:Function):void{ if (_eventDispatcher == null){ _eventDispatcher = new EventDispatcher(); }; _eventDispatcher.addEventListener(_arg1, _arg2); } public static function load(_arg1:String, _arg2:Boolean=false):void{ if (_loadQueue == null){ _loadQueue = []; }; if (_isLoading == true){ _queueLoad(_arg1, _arg2); } else { _beginLoad(_arg1, _arg2); }; } private static function _clearBitmapListeners():void{ _SWFLoader.removeEventListener("complete", _onSWFLoaded); _SWFLoader.removeEventListener("ioError", _onSWFError); _SWFLoader.removeEventListener("securityError", _onSWFSecurityError); } private static function _onSWFError(_arg1:Event):void{ _dispatchEvent(new ESWF(false)); _clearBitmapListeners(); _completeLoad(); } private static function _onSWFSecurityError(_arg1:Event):void{ _dispatchEvent(new ESWF(false)); _clearBitmapListeners(); _completeLoad(); } protected static function _completeLoad():void{ var _local1:Object; if (_loadQueue.length == 0){ _isLoading = false; } else { _local1 = _loadQueue.shift(); _beginLoad(_local1.url, _local1.isCross); }; } private static function _queueLoad(_arg1:String, _arg2:Boolean=false):void{ _loadQueue.push({url:_arg1, isCross:_arg2}); } } }//package com.workinman.lib.net
Section 25
//WorkinLoader (com.workinman.lib.net.WorkinLoader) package com.workinman.lib.net { import flash.events.*; import com.workinman.lib.events.*; import flash.display.*; import flash.net.*; import flash.system.*; public class WorkinLoader extends EventDispatcher { private var _bitmapLoader:Loader; private var _queuedMethod:Function; private var _SWFLoader:Loader; private var _isQueued:Boolean; private var _SWFQueue:Array; private var _XMLQueue:Array; private var _isLoading:Boolean; private var _queuedIsCross:Boolean; private var _fileLoader:Loader; private var _ERR_EMPTY_URL:String;// = "Supplied URL string is empty." private var _ERR_ALREADY_LOADING:String;// = "Data is already loading. Create a new instance of WorkinLoader if you wish to load multiple threads." private var _bitmapQueue:Array; private var _XMLLoader:URLLoader; private var _fileQueue:Array; private var _queuedURL:String; public function WorkinLoader(){ _ERR_ALREADY_LOADING = "Data is already loading. Create a new instance of WorkinLoader if you wish to load multiple threads."; _ERR_EMPTY_URL = "Supplied URL string is empty."; super(); _isLoading = false; _fileQueue = []; _bitmapQueue = []; _XMLQueue = []; _SWFQueue = []; } public function loadFile(_arg1:String):void{ if (_isLoading){ _error(_ERR_ALREADY_LOADING); return; }; if (_arg1 == ""){ _error(_ERR_EMPTY_URL); return; }; _beginFileLoad(_arg1); } private function _onSWFError(_arg1:Event):void{ _endSWFLoad(); _error("SWF Loading Error : File not found. Session terminated."); dispatchEvent(new ESWF(false)); } private function _onFileError(_arg1:Event):void{ _endBitmapLoad(); _error("File Loading Error : File not found. Session terminated."); dispatchEvent(new EFile(false)); } private function _error(_arg1:String):void{ } private function _onXMLProgress(_arg1:ProgressEvent):void{ dispatchEvent(new EProgress(XML_PROGRESS, _arg1.bytesLoaded, _arg1.bytesTotal)); } private function _beginXMLLoad(_arg1:String):void{ _isLoading = true; XML.ignoreWhitespace = true; _XMLLoader = new URLLoader(new URLRequest(_arg1)); _XMLLoader.addEventListener("progress", _onXMLProgress); _XMLLoader.addEventListener("complete", _onXMLLoaded); _XMLLoader.addEventListener("ioError", _onXMLError); _XMLLoader.addEventListener("securityError", _onXMLSecurityError); } private function _onXMLLoaded(_arg1:Event):void{ _endXMLLoad(); dispatchEvent(new EXML(true, XML(_XMLLoader.data))); } private function _onBitmapProgress(_arg1:ProgressEvent):void{ dispatchEvent(new EProgress(BITMAP_PROGRESS, _arg1.bytesLoaded, _arg1.bytesTotal, _bitmapLoader.contentLoaderInfo.url)); } public function queueBitmap(_arg1:String):void{ if (_isLoading){ _error(_ERR_ALREADY_LOADING); return; }; if (_arg1 == ""){ _error(_ERR_EMPTY_URL); return; }; _isQueued = true; _queuedURL = _arg1; _queuedMethod = _beginBitmapLoad; _queuedIsCross = false; LoaderQueue.add(this); } public function queueFile(_arg1:String):void{ if (_isLoading){ _error(_ERR_ALREADY_LOADING); return; }; if (_arg1 == ""){ _error(_ERR_EMPTY_URL); return; }; _isQueued = true; _queuedURL = _arg1; _queuedMethod = _beginFileLoad; _queuedIsCross = false; LoaderQueue.add(this); } public function queueSWF(_arg1:String, _arg2:Boolean=false):void{ if (_isLoading){ _error(_ERR_ALREADY_LOADING); return; }; if (_arg1 == ""){ _error(_ERR_EMPTY_URL); return; }; _isQueued = true; _queuedURL = _arg1; _queuedMethod = _beginSWFLoad; _queuedIsCross = _arg2; LoaderQueue.add(this); } private function _onBitmapLoaded(_arg1:Event):void{ _endBitmapLoad(); dispatchEvent(new EBitmap(true, Bitmap(_bitmapLoader.content), _bitmapLoader.contentLoaderInfo.url)); } public function loadBitmap(_arg1:String):void{ if (_isLoading){ _error(_ERR_ALREADY_LOADING); return; }; if (_arg1 == ""){ _error(_ERR_EMPTY_URL); return; }; _beginBitmapLoad(_arg1); } private function _onBitmapError(_arg1:Event):void{ _endBitmapLoad(); _error("Bitmap Loading Error : File not found. Session terminated."); dispatchEvent(new EBitmap(false)); } public function loadSWF(_arg1:String, _arg2:Boolean=false):void{ if (_isLoading){ _error(_ERR_ALREADY_LOADING); return; }; if (_arg1 == ""){ _error(_ERR_EMPTY_URL); return; }; _beginSWFLoad(_arg1, _arg2); } private function _onFileSecurityError(_arg1:Event):void{ _endBitmapLoad(); _error("File Loading Error : Security Sandbox Error. Session terminated."); dispatchEvent(new EFile(false)); } private function _endFileLoad():void{ _isLoading = false; if (_isQueued){ _resolveQueue(); }; _bitmapLoader.contentLoaderInfo.removeEventListener("progress", _onBitmapProgress); _bitmapLoader.contentLoaderInfo.removeEventListener("complete", _onBitmapLoaded); _bitmapLoader.contentLoaderInfo.removeEventListener("ioError", _onBitmapError); _bitmapLoader.contentLoaderInfo.removeEventListener("securityError", _onBitmapSecurityError); } private function _onSWFLoaded(_arg1:Event):void{ _endSWFLoad(); dispatchEvent(new ESWF(true, _SWFLoader.content, _SWFLoader.contentLoaderInfo.url)); } public function cleanUp():void{ if (_bitmapLoader != null){ try { _bitmapLoader.unload(); } catch(pError:Error) { }; }; if (_SWFLoader != null){ try { _SWFLoader.unload(); } catch(pError:Error) { }; }; } private function _beginFileLoad(_arg1:String):void{ if (_fileLoader != null){ _fileLoader.unload(); }; _isLoading = true; _fileLoader = new Loader(); _fileLoader.load(new URLRequest(_arg1)); _fileLoader.contentLoaderInfo.addEventListener("progress", _onFileProgress); _fileLoader.contentLoaderInfo.addEventListener("complete", _onFileLoaded); _fileLoader.contentLoaderInfo.addEventListener("ioError", _onFileError); _fileLoader.contentLoaderInfo.addEventListener("securityError", _onFileSecurityError); } private function _onXMLError(_arg1:Event):void{ _endXMLLoad(); _error("XML Loading Error : File not found. Session terminated."); dispatchEvent(new EXML(false)); } public function queueXML(_arg1:String):void{ if (_isLoading){ _error(_ERR_ALREADY_LOADING); return; }; if (_arg1 == ""){ _error(_ERR_EMPTY_URL); return; }; _isQueued = true; _queuedURL = _arg1; _queuedMethod = _beginXMLLoad; _queuedIsCross = false; LoaderQueue.add(this); } private function _onFileLoaded(_arg1:Event):void{ _endBitmapLoad(); dispatchEvent(new EFile(true, _fileLoader.content, _fileLoader.contentLoaderInfo.url)); } public function loadXML(_arg1:String):void{ if (_isLoading){ _error(_ERR_ALREADY_LOADING); return; }; if (_arg1 == ""){ _error(_ERR_EMPTY_URL); return; }; _beginXMLLoad(_arg1); } private function _onBitmapSecurityError(_arg1:Event):void{ _endBitmapLoad(); _error("Bitmap Loading Error : Security Sandbox Error. Session terminated."); dispatchEvent(new EBitmap(false)); } public function executeQueuedLoad():void{ if (_queuedIsCross){ _queuedMethod(_queuedURL, _queuedIsCross); } else { _queuedMethod(_queuedURL); }; } private function _endXMLLoad():void{ _isLoading = false; if (_isQueued){ _resolveQueue(); }; _XMLLoader.removeEventListener("progress", _onXMLProgress); _XMLLoader.removeEventListener("complete", _onXMLLoaded); _XMLLoader.removeEventListener("ioError", _onXMLError); _XMLLoader.removeEventListener("securityError", _onXMLSecurityError); } private function _resolveQueue():void{ _isQueued = false; dispatchEvent(new ELoaderQueue(this)); } private function _onFileProgress(_arg1:ProgressEvent):void{ dispatchEvent(new EProgress(FILE_PROGRESS, _arg1.bytesLoaded, _arg1.bytesTotal, _fileLoader.contentLoaderInfo.url)); } private function _endSWFLoad():void{ _isLoading = false; if (_isQueued){ _resolveQueue(); }; _SWFLoader.contentLoaderInfo.removeEventListener("progress", _onSWFProgress); _SWFLoader.contentLoaderInfo.removeEventListener("init", _onSWFLoaded); _SWFLoader.contentLoaderInfo.removeEventListener("ioError", _onSWFError); _SWFLoader.contentLoaderInfo.removeEventListener("securityError", _onSWFSecurityError); } private function _onXMLSecurityError(_arg1:Event):void{ _endXMLLoad(); _error("XML Loading Error : Security Sandbox Error. Session terminated."); dispatchEvent(new EXML(false)); } private function _endBitmapLoad():void{ _isLoading = false; if (_isQueued){ _resolveQueue(); }; _bitmapLoader.contentLoaderInfo.removeEventListener("progress", _onBitmapProgress); _bitmapLoader.contentLoaderInfo.removeEventListener("complete", _onBitmapLoaded); _bitmapLoader.contentLoaderInfo.removeEventListener("ioError", _onBitmapError); _bitmapLoader.contentLoaderInfo.removeEventListener("securityError", _onBitmapSecurityError); } private function _onSWFProgress(_arg1:ProgressEvent):void{ dispatchEvent(new EProgress(SWF_PROGRESS, _arg1.bytesLoaded, _arg1.bytesTotal, _SWFLoader.contentLoaderInfo.url)); } private function _onSWFSecurityError(_arg1:Event):void{ _endSWFLoad(); _error("SWF Loading Error : Security Sandbox Error. Session terminated."); dispatchEvent(new ESWF(false)); } private function _beginSWFLoad(_arg1:String, _arg2:Boolean=false):void{ var pURL = _arg1; var pIsCrossServer = _arg2; if (_SWFLoader != null){ try { _SWFLoader.unload(); } catch(pError:Error) { }; }; _isLoading = true; _SWFLoader = new Loader(); try { _SWFLoader.load(new URLRequest(pURL), new LoaderContext(false, ApplicationDomain.currentDomain, (pIsCrossServer) ? SecurityDomain.currentDomain : null)); } catch(pError:Error) { _SWFLoader.load(new URLRequest(pURL), new LoaderContext(false, ApplicationDomain.currentDomain)); }; _SWFLoader.contentLoaderInfo.addEventListener("progress", _onSWFProgress); _SWFLoader.contentLoaderInfo.addEventListener("complete", _onSWFLoaded); _SWFLoader.contentLoaderInfo.addEventListener("ioError", _onSWFError); _SWFLoader.contentLoaderInfo.addEventListener("securityError", _onSWFSecurityError); } private function _beginBitmapLoad(_arg1:String):void{ var pURL = _arg1; if (_bitmapLoader != null){ try { _bitmapLoader.unload(); } catch(pError:Error) { }; }; _isLoading = true; _bitmapLoader = new Loader(); _bitmapLoader.load(new URLRequest(pURL)); _bitmapLoader.contentLoaderInfo.addEventListener("progress", _onBitmapProgress); _bitmapLoader.contentLoaderInfo.addEventListener("complete", _onBitmapLoaded); _bitmapLoader.contentLoaderInfo.addEventListener("ioError", _onBitmapError); _bitmapLoader.contentLoaderInfo.addEventListener("securityError", _onBitmapSecurityError); } public static function get FILE_PROGRESS():String{ return (FileLoader.ON_PROGRESS); } public static function get ON_QUEUE():String{ return ("onQueuedLoadEnd"); } public static function get XML_LOADED():String{ return (XMLLoader.ON_XML); } public static function get BITMAP_LOADED():String{ return (BitmapLoader.ON_BITMAP); } public static function get FILE_LOADED():String{ return (FileLoader.ON_FILE); } public static function get SWF_LOADED():String{ return (SWFLoader.ON_SWF); } public static function get SWF_PROGRESS():String{ return (SWFLoader.ON_PROGRESS); } public static function get XML_PROGRESS():String{ return (XMLLoader.ON_PROGRESS); } public static function get BITMAP_PROGRESS():String{ return (BitmapLoader.ON_PROGRESS); } } }//package com.workinman.lib.net
Section 26
//XMLLoader (com.workinman.lib.net.XMLLoader) package com.workinman.lib.net { import flash.events.*; import com.workinman.lib.events.*; import flash.net.*; public class XMLLoader { private static var _eventDispatcher:EventDispatcher; private static var _XMLURLLoader:URLLoader; private static var _loadQueue:Array; private static var _isLoading:Boolean; protected static function _dispatchEvent(_arg1:Event):void{ if (_eventDispatcher == null){ _eventDispatcher = new EventDispatcher(); }; _eventDispatcher.dispatchEvent(_arg1); } private static function _onXMLLoaded(_arg1:Event):void{ _dispatchEvent(new EXML(true, XML(_XMLURLLoader.data))); _clearXMLListeners(); _completeLoad(); } private static function _onXMLProgress(_arg1:ProgressEvent):void{ _dispatchEvent(new EProgress(ON_PROGRESS, _arg1.bytesLoaded, _arg1.bytesTotal)); } public static function get ON_PROGRESS():String{ return ("onXMLProgress"); } private static function _onXMLError(_arg1:Event):void{ _dispatchEvent(new EXML(false)); _clearXMLListeners(); _completeLoad(); } protected static function _beginLoad(_arg1:String):void{ _isLoading = true; XML.ignoreWhitespace = true; _XMLURLLoader = new URLLoader(new URLRequest(_arg1)); _XMLURLLoader.addEventListener("progress", _onXMLProgress); _XMLURLLoader.addEventListener("complete", _onXMLLoaded); _XMLURLLoader.addEventListener("ioError", _onXMLError); _XMLURLLoader.addEventListener("securityError", _onXMLSecurityError); } public static function removeEventListener(_arg1:String, _arg2:Function):void{ if (_eventDispatcher == null){ _eventDispatcher = new EventDispatcher(); }; _eventDispatcher.removeEventListener(_arg1, _arg2); } public static function load(_arg1:String):void{ if (_loadQueue == null){ _loadQueue = []; }; if (_isLoading == true){ _queueLoad(_arg1); } else { _beginLoad(_arg1); }; } private static function _onXMLSecurityError(_arg1:Event):void{ _dispatchEvent(new EXML(false)); _clearXMLListeners(); _completeLoad(); } public static function get ON_XML():String{ return ("onXML"); } public static function addEventListener(_arg1:String, _arg2:Function):void{ if (_eventDispatcher == null){ _eventDispatcher = new EventDispatcher(); }; _eventDispatcher.addEventListener(_arg1, _arg2); } private static function _clearXMLListeners():void{ _XMLURLLoader.removeEventListener("complete", _onXMLLoaded); _XMLURLLoader.removeEventListener("ioError", _onXMLError); _XMLURLLoader.removeEventListener("securityError", _onXMLSecurityError); } protected static function _completeLoad():void{ if (_loadQueue.length == 0){ _isLoading = false; } else { _beginLoad(_loadQueue.shift()); }; } private static function _queueLoad(_arg1:String):void{ _loadQueue.push(_arg1); } } }//package com.workinman.lib.net
Section 27
//GlobalSound (com.workinman.lib.sound.GlobalSound) package com.workinman.lib.sound { public class GlobalSound { private static var _instance:SoundManager; public static function getInstance():SoundManager{ if (_instance == null){ _instance = new SoundManager(); }; return (_instance); } } }//package com.workinman.lib.sound
Section 28
//GlobalVoice (com.workinman.lib.sound.GlobalVoice) package com.workinman.lib.sound { public class GlobalVoice { private static var _instance:VoiceManager; public static function getInstance():VoiceManager{ if (_instance == null){ _instance = new VoiceManager(); }; return (_instance); } } }//package com.workinman.lib.sound
Section 29
//SoundManager (com.workinman.lib.sound.SoundManager) package com.workinman.lib.sound { import flash.events.*; import com.workinman.lib.utils.*; import flash.media.*; import flash.net.*; public class SoundManager extends EventDispatcher { protected const _DEFAULT_GROUP:String = "def"; protected var _loop:Number; protected var _externalSounds:Array; protected var _isSoundOff:Boolean; protected var _isLoading:Boolean; protected var _sounds:Object; protected var _isMusicOff:Boolean; protected var _currentMusicID:String; public function SoundManager():void{ _sounds = {}; _externalSounds = []; _currentMusicID = ""; _isLoading = false; _isSoundOff = false; _isMusicOff = false; } public function musicOff():void{ stopMusic(); _isMusicOff = true; } public function soundEffectsOff():void{ _isSoundOff = true; } public function muteOff():void{ _isSoundOff = false; _isMusicOff = false; playMusic(); } public function unpauseSound(_arg1:String):void{ resumeSound(_arg1); } public function stopGroup(_arg1:String):void{ var _local2:String; for (_local2 in _sounds) { if ((((_sounds[_local2].group == _arg1)) && (_sounds[_local2].isPlaying))){ stopSound(_local2); }; }; } public function registerExternalSound(_arg1:String, _arg2:String):void{ _sounds[_arg1] = new WorkinSoundData(null, new URLRequest(_arg2)); _sounds[_arg1].id = _arg1; _externalSounds.push(_sounds[_arg1]); if (!_isLoading){ Updater.getInstance().addEventListener(Updater.EVENT_UPDATE, _updateExternalLoader); }; _isLoading = true; } public function setVolume(_arg1:Number, _arg2:String="def"):void{ var _local3:String; for (_local3 in _sounds) { if ((((_arg2 == "all")) || ((_sounds[_local3].group == _arg2)))){ _sounds[_local3].volume = _arg1; }; }; } public function soundEffectsToggle():void{ if (_isSoundOff){ soundEffectsOn(); } else { soundEffectsOff(); }; } public function silence():void{ var _local1:String; for (_local1 in _sounds) { stopSound(_local1); }; } public function get isSoundOff():Boolean{ return (_isSoundOff); } public function registerSound(_arg1:String, _arg2:Class, _arg3:String="def"):void{ _sounds[_arg1] = new WorkinSoundData(_arg2); _sounds[_arg1].id = _arg1; _sounds[_arg1].group = _arg3; } public function stopSound(_arg1:String):void{ if (!_verifySound(_arg1, true)){ return; }; _sounds[_arg1].stop(); } public function get isLoading():Boolean{ return (_isLoading); } public function pauseSound(_arg1:String):void{ if (!_verifySound(_arg1, true)){ return; }; _sounds[_arg1].stop(); } public function playSound(_arg1:String, _arg2:Boolean=false, _arg3:Number=0, _arg4:Number=0, _arg5:SoundTransform=null):void{ if (!_verifySound(_arg1)){ return; }; if (_arg2){ stopSound(_arg1); }; _sounds[_arg1].play(_arg3, _arg4, _arg5); } public function soundEffectsOn():void{ _isSoundOff = false; } public function stopMusic():void{ if (_currentMusicID == ""){ return; }; stopSound(_currentMusicID); } public function cleanUp():void{ var _local1:String; if (_currentMusicID != ""){ stopMusic(); }; for (_local1 in _sounds) { stopSound(_local1); _sounds[_local1].cleanUp(); delete _sounds[_local1]; }; _externalSounds = []; if (_isLoading){ Updater.getInstance().removeEventListener(Updater.EVENT_UPDATE, _updateExternalLoader); }; } public function fadeInSound(_arg1:String):void{ if (!_verifySound(_arg1)){ return; }; _sounds[_arg1].fadeIn(); } public function loopSound(_arg1:String, _arg2:SoundTransform=null):void{ if (!_verifySound(_arg1)){ return; }; _sounds[_arg1].loop(_arg2); } protected function _updateExternalLoader(_arg1:Number):void{ _isLoading = false; _loop = _externalSounds.length; while (_loop--) { if (_externalSounds[_loop].bytesLoaded < _externalSounds[_loop].bytesTotal){ _isLoading = true; }; }; if (!_isLoading){ _externalSounds = []; Updater.getInstance().removeEventListener(Updater.EVENT_UPDATE, _updateExternalLoader); }; } private function _verifySound(_arg1:String, _arg2:Boolean=false):Boolean{ return (((((_arg2) || (!(_isSoundOff)))) && (!((_sounds[_arg1] == null))))); } public function playMusic(_arg1:String=null, _arg2:SoundTransform=null):void{ if (_isMusicOff){ return; }; if (_arg1 == null){ _arg1 = _currentMusicID; }; if (_sounds[_arg1] == null){ return; }; if (_currentMusicID != ""){ if ((((_currentMusicID == _arg1)) && ((_sounds[_currentMusicID].isPlaying == true)))){ return; }; if (_sounds[_currentMusicID].isPlaying){ stopMusic(); }; }; _currentMusicID = _arg1; _sounds[_arg1].loop(_arg2); } public function getSound(_arg1:String):WorkinSoundData{ return (_sounds[_arg1]); } public function get isMusicOff():Boolean{ return (_isMusicOff); } public function muteToggle():void{ if (isMute){ muteOff(); } else { muteOn(); }; } public function muteOn():void{ stopMusic(); _isSoundOff = true; _isMusicOff = true; } public function musicToggle():void{ if (_isMusicOff){ musicOn(); } else { musicOff(); }; } public function resumeSound(_arg1:String, _arg2:Number=-1):void{ if (!_verifySound(_arg1, true)){ return; }; _sounds[_arg1].resume(_arg2); } public function musicOn():void{ _isMusicOff = false; playMusic(); } public function playExclusiveSound(_arg1:String, _arg2:Number=0, _arg3:Number=0, _arg4:SoundTransform=null):void{ if (!_verifySound(_arg1)){ return; }; stopGroup(_sounds[_arg1].group); _sounds[_arg1].play(_arg2, _arg3, _arg4); } public function isSoundPlaying(_arg1:String):Boolean{ if (_sounds[_arg1] == undefined){ return (false); }; return ((_sounds[_arg1].isPlaying == true)); } public function get isMute():Boolean{ return (((_isMusicOff) && (_isSoundOff))); } public function addSound(_arg1:String, _arg2:Class, _arg3:String="def"):void{ registerSound(_arg1, _arg2, _arg3); } private function _verifyMusic(_arg1:String, _arg2:Boolean=false):Boolean{ return (((((_arg2) || (!(_isMusicOff)))) && (!((_sounds[_arg1] == null))))); } public function fadeOutSound(_arg1:String):void{ if (!_verifySound(_arg1, true)){ return; }; _sounds[_arg1].fadeOut(); } } }//package com.workinman.lib.sound
Section 30
//VoiceManager (com.workinman.lib.sound.VoiceManager) package com.workinman.lib.sound { import flash.events.*; import com.workinman.lib.events.*; import com.workinman.lib.utils.*; import flash.media.*; import flash.net.*; public class VoiceManager extends EventDispatcher { private var _loop:Number; private var _channel:SoundChannel; private var _externalSounds:Array; private var _currentVOID:String; private var _clips:Object; private var _isPlaying:Boolean; private var _currentMusicID:String; private var _isLoading:Boolean; public static var EVENT_VOICE_COMPLETE:String = "onVoiceManagerVOComplete"; public function VoiceManager():void{ _clips = {}; _externalSounds = []; _currentVOID = ""; _isLoading = false; _isPlaying = false; } public function setVolume(_arg1:Number):void{ var _local2:String; for (_local2 in _clips) { _clips[_local2].volume = _arg1; }; } private function _cleanPlaying():void{ if (!_isPlaying){ return; }; _isPlaying = false; _currentVOID = ""; _channel.removeEventListener(Event.SOUND_COMPLETE, _onVOComplete); } private function _onVOComplete(_arg1:Event):void{ WorkinDispatcher.getInstance().dispatchEvent(new EData(EVENT_VOICE_COMPLETE, {id:_currentVOID})); _cleanPlaying(); } public function stopVO(_arg1:String):void{ if (!_isPlaying){ return; }; _clips[_arg1].stop(); _cleanPlaying(); } public function registerExternalVO(_arg1:String, _arg2:String):void{ _clips[_arg1] = new WorkinSoundData(null, new URLRequest(_arg2)); _clips[_arg1].id = _arg1; _externalSounds.push(_clips[_arg1]); if (!_isLoading){ Updater.getInstance().addEventListener(Updater.EVENT_UPDATE, _updateExternalLoader); }; _isLoading = true; } public function addVO(_arg1:String, _arg2:Class):void{ registerVO(_arg1, _arg2); } public function silence():void{ if (!_isPlaying){ return; }; stopVO(_currentVOID); } private function _updateExternalLoader(_arg1:Number):void{ _isLoading = false; _loop = _externalSounds.length; while (_loop--) { if (_externalSounds[_loop].bytesLoaded < _externalSounds[_loop].bytesTotal){ _isLoading = true; }; }; if (!_isLoading){ _externalSounds = []; Updater.getInstance().removeEventListener(Updater.EVENT_UPDATE, _updateExternalLoader); }; } public function get isPlaying():Boolean{ return (_isPlaying); } public function cleanUp():void{ var _local1:String; _cleanPlaying(); for (_local1 in _clips) { _clips[_local1].cleanUp(); delete _clips[_local1]; }; _externalSounds = []; if (_isLoading){ Updater.getInstance().removeEventListener(Updater.EVENT_UPDATE, _updateExternalLoader); }; } public function get isLoading():Boolean{ return (_isLoading); } public function get currentVoice():String{ return (_currentMusicID); } public function playVO(_arg1:String, _arg2:Number=0):void{ if (_isPlaying){ stopVO(_currentVOID); }; _channel = _clips[_arg1].play(0, _arg2); _channel.addEventListener(Event.SOUND_COMPLETE, _onVOComplete); _currentVOID = _arg1; _isPlaying = true; } public function registerVO(_arg1:String, _arg2:Class):void{ _clips[_arg1] = new WorkinSoundData(_arg2); _clips[_arg1].id = _arg1; } } }//package com.workinman.lib.sound
Section 31
//WorkinSoundData (com.workinman.lib.sound.WorkinSoundData) package com.workinman.lib.sound { import flash.events.*; import com.workinman.lib.events.*; import com.workinman.lib.utils.*; import flash.media.*; import flash.net.*; public class WorkinSoundData extends EventDispatcher { private var _sound:Sound; private var _group:String; private var _isPlaying:Boolean; private var _fadeDir:Number; private var _isLooping:Boolean; private var _volume:Number; private var _id:String; private var _channel:SoundChannel; private var _isPaused:Boolean; private var _pausePosition:Number; private var _fadeRate:Number; private var _isFading:Boolean; private var _fadeVol:Number; public static const COMPLETE:String = "onWorkinSoundDataComplete"; public static const SOUND_STOP:String = "onWorkinSoundStop"; public static const SOUND_PAUSE:String = "onWorkinSoundPause"; private static const _DEF_FADE_RATE:Number = 0.8; public static const SOUND_PLAY:String = "onWorkinSoundPlay"; public static const SOUND_POSITION:String = "onWorkinSoundPosition"; public function WorkinSoundData(_arg1:Class=null, _arg2:URLRequest=null, _arg3:SoundLoaderContext=null){ if (_arg1 == null){ _sound = new Sound(_arg2, _arg3); } else { _sound = new (_arg1); }; _volume = 1; _fadeVol = _volume; _isPlaying = false; _isPaused = false; _isLooping = false; _isFading = false; _fadeRate = _DEF_FADE_RATE; } public function stop():void{ if (!_isPlaying){ return; }; _isPlaying = false; _isLooping = false; _isFading = false; _removeListener(); _channel.stop(); _channel = null; dispatchEvent(new Event(SOUND_STOP)); } private function _onSoundComplete(_arg1:Event):void{ _isPlaying = false; dispatchEvent(new Event(COMPLETE)); _removeListener(); if (_isLooping){ play(0, 100); }; } public function get bytesTotal():Number{ return (_sound.bytesTotal); } public function set fadeRate(_arg1:Number):void{ _fadeRate = _arg1; } public function get id():String{ return (_id); } private function _setVolume(_arg1:Number):void{ var _local2:SoundTransform; _local2 = _channel.soundTransform; _local2.volume = _volume; _channel.soundTransform = _local2; } public function get volume():Number{ return (_volume); } public function get isPlaying():Boolean{ return (_isPlaying); } public function get position():Number{ return ((_isPlaying) ? _channel.position : 0); } public function loop(_arg1:SoundTransform=null):void{ if (_isPlaying){ if (_isLooping){ return; }; stop(); }; play(0, 100, _arg1); _isLooping = true; } public function resume(_arg1:Number=-1):void{ if (_arg1 >= 0){ _pausePosition = _arg1; }; play(); } public function get isLooping():Boolean{ return (_isLooping); } public function set volume(_arg1:Number):void{ _volume = _arg1; if (_isPlaying){ _setVolume(_arg1); }; } public function set id(_arg1:String):void{ _id = _arg1; } public function play(_arg1:Number=0, _arg2:int=0, _arg3:SoundTransform=null):SoundChannel{ if (_isPaused){ _channel = _sound.play(_pausePosition); _isPaused = false; } else { _channel = _sound.play(_arg1, _arg2, _arg3); }; _isPlaying = true; _channel.addEventListener(Event.SOUND_COMPLETE, _onSoundComplete); if (_volume != 1){ _setVolume(_volume); }; dispatchEvent(new Event(SOUND_PLAY)); return (_channel); } private function _beginFade():void{ if (_isFading){ return; }; _setVolume(_fadeVol); Updater.getInstance().addEventListener(Updater.EVENT_UPDATE, _fade); _isFading = true; } public function fadeIn(_arg1:Number=0, _arg2:int=0, _arg3:SoundTransform=null):void{ var _local4:Number; if (((_isPlaying) && (!(_isFading)))){ return; }; if (!_isPlaying){ _local4 = _volume; _volume = 0; play(_arg1, _arg2, _arg3); _volume = _local4; }; if (!_isFading){ _fadeVol = 0; }; _fadeDir = 1; _beginFade(); } private function _completeFade():void{ Updater.getInstance().removeEventListener(Updater.EVENT_UPDATE, _fade); _isFading = false; } public function get isLoaded():Boolean{ return ((_sound.bytesLoaded == _sound.bytesTotal)); } public function get bytesLoaded():Number{ return (_sound.bytesLoaded); } public function cleanUp():void{ _isLooping = false; if (_isPlaying){ stop(); }; if (_isFading){ Updater.getInstance().removeEventListener(Updater.EVENT_UPDATE, _fade); }; } public function fadeOut():void{ if (!_isPlaying){ return; }; if (!_isFading){ _fadeVol = _volume; }; _fadeDir = -1; _beginFade(); } public function get length():Number{ return (_sound.length); } private function _fade(_arg1:EUpdate):void{ if (_fadeDir > 0){ _fadeVol = (_fadeVol + (_arg1.dt * _fadeRate)); if (_fadeVol >= _volume){ _fadeVol = _volume; _completeFade(); }; } else { _fadeVol = (_fadeVol - (_arg1.dt * _fadeRate)); if (_fadeVol <= 0){ _fadeVol = 0; _completeFade(); stop(); }; }; _setVolume(_fadeVol); } public function pause():void{ if (!_isPlaying){ return; }; _isPlaying = false; _isPaused = true; _pausePosition = _channel.position; _channel.stop(); _removeListener(); _channel = null; dispatchEvent(new Event(SOUND_PAUSE)); } private function _removeListener():void{ try { _channel.removeEventListener(Event.SOUND_COMPLETE, _onSoundComplete); } catch(pError:Error) { }; } public function get fadeRate():Number{ return (_fadeRate); } public function unpause(_arg1:Number=-1):void{ resume(_arg1); } public function set group(_arg1:String):void{ _group = _arg1; } public function get group():String{ return (_group); } } }//package com.workinman.lib.sound
Section 32
//Updater (com.workinman.lib.utils.Updater) package com.workinman.lib.utils { import flash.events.*; import com.workinman.lib.events.*; import flash.utils.*; public class Updater extends EventDispatcher { private var _lastTimer:Number; private var _loop:Number; private var _timer:Timer; private var _minimumUpdateTime:Number; private var _deltaTime:Number; private var _currentTimer:Number; private var _autoStart:Boolean; private var _listenerCount:Number; private static var _instance:Updater; public static var EVENT_UPDATE:String = "onUpdate"; public function Updater():void{ } public function get UPDATE():String{ return (Updater.EVENT_UPDATE); } public function get autoStart():Boolean{ return (_autoStart); } override public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{ _listenerCount--; super.removeEventListener(_arg1, _arg2, _arg3); if ((((_listenerCount == 0)) && (_autoStart))){ stop(); }; } override public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{ _listenerCount++; super.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5); if ((((_listenerCount == 1)) && (_autoStart))){ start(); }; } public function init():void{ _timer = new Timer(0, 0); _timer.stop(); _timer.addEventListener("timer", _timerHandler); _deltaTime = 0; _minimumUpdateTime = 0; _autoStart = true; _listenerCount = 0; } public function stop():void{ pause(); } public function start():void{ unpause(); } private function _timerHandler(_arg1:TimerEvent):void{ _currentTimer = getTimer(); _deltaTime = (_deltaTime + ((_currentTimer - _lastTimer) / 1000)); _lastTimer = _currentTimer; if (_deltaTime < _minimumUpdateTime){ return; }; dispatchEvent(new EUpdate(EVENT_UPDATE, _deltaTime)); _deltaTime = 0; _arg1.updateAfterEvent(); } public function enableAutoStart():void{ _autoStart = true; } public function disableAutoStart():void{ _autoStart = false; } public function pause():void{ if (!_timer.running){ return; }; _timer.stop(); } public function unpause():void{ if (_timer.running){ return; }; _lastTimer = getTimer(); _timer.start(); } public function lockFPS(_arg1:Number):void{ _minimumUpdateTime = (Math.round(((1 / _arg1) * 1000)) / 1000); } public static function getInstance():Updater{ if (_instance == null){ _instance = new (Updater); _instance.init(); }; return (_instance); } } }//package com.workinman.lib.utils
Section 33
//WorkinDispatcher (com.workinman.lib.utils.WorkinDispatcher) package com.workinman.lib.utils { import flash.events.*; public class WorkinDispatcher extends EventDispatcher { private var _rooms:Object; private static var _instance:WorkinDispatcher; public function WorkinDispatcher():void{ } public function getRoom(_arg1:String):EventDispatcher{ if (_rooms == null){ _rooms = {}; }; if (_rooms[_arg1] == undefined){ _rooms[_arg1] = new EventDispatcher(); }; return (_rooms[_arg1]); } public static function getInstance():WorkinDispatcher{ if (_instance == null){ _instance = new (WorkinDispatcher); }; return (_instance); } } }//package com.workinman.lib.utils
Section 34
//EmptyAsset (com.workinman.paradise.assets.EmptyAsset) package com.workinman.paradise.assets { import com.workinman.lib.display.*; public class EmptyAsset extends GameAsset { public function EmptyAsset(){ _addAnim("idle", (WorkinMovieClip as Class)); animate("idle"); } } }//package com.workinman.paradise.assets
Section 35
//GameAsset (com.workinman.paradise.assets.GameAsset) package com.workinman.paradise.assets { import com.workinman.lib.math.*; import com.workinman.lib.events.*; import flash.display.*; import com.workinman.lib.display.*; public class GameAsset extends WorkinMovieClip { private var _currentFrame:String; private var _frames:Object; public function GameAsset(){ _frames = {}; _currentFrame = ""; } public function dispatchToAnim(_arg1:EData):void{ _frames[_currentFrame].dispatchEvent(_arg1); } public function isAnimationComplete():Boolean{ return ((mc.currentFrame == mc.totalFrames)); } public function animate(_arg1:String):void{ if (_currentFrame == _arg1){ return; }; if (!_frames.hasOwnProperty(_arg1)){ return; }; if (_currentFrame != ""){ _frames[_currentFrame].stop(); removeChild(_frames[_currentFrame]); }; addChild(_frames[_arg1]); _frames[_arg1].gotoAndPlay(1); _currentFrame = _arg1; } public function getFrameDimensions(_arg1:String):WorkinPoint{ if (!_frames.hasOwnProperty(_arg1)){ return (new WorkinPoint()); }; return (new WorkinPoint(_frames[_arg1].width, _frames[_arg1].height)); } protected function _addAnim(_arg1:String, _arg2:Class):void{ _frames[_arg1] = new (_arg2); _frames[_arg1].gotoAndStop(1); } public function getFrameArt(_arg1:String):Class{ if (!_frames.hasOwnProperty(_arg1)){ return (null); }; return (_frames[_arg1]); } public function get animation():String{ return (_currentFrame); } public function get mc():MovieClip{ return (_frames[_currentFrame]); } } }//package com.workinman.paradise.assets
Section 36
//AssetManager (com.workinman.paradise.data.AssetManager) package com.workinman.paradise.data { import flash.events.*; import com.workinman.lib.events.*; import flash.display.*; public class AssetManager extends EventDispatcher { private var _loop:Number; private var _sequentialDataLoadIndex:Number; private var _assets:Array; public static var ON_ERROR:String = "onAssetManagerLoadError"; public static var ON_COMPLETE:String = "onAssetManagerLoadComplete"; public function AssetManager(){ _assets = []; } private function _onAssetDataLoadComplete():void{ dispatchEvent(new Event(ON_COMPLETE)); } private function _onAssetDataLoaded(_arg1:Event):void{ _assets[_sequentialDataLoadIndex].removeEventListener(AssetStorage.ON_DATA, _onAssetDataLoaded); _assets[_sequentialDataLoadIndex].removeEventListener(AssetStorage.ON_ERROR, _onAssetDataLoadFailed); _sequentialDataLoadIndex++; if (_sequentialDataLoadIndex < _assets.length){ _loadAssetData(); } else { _onAssetDataLoadComplete(); }; } public function cleanUp():void{ if (_sequentialDataLoadIndex < _assets.length){ _assets[_sequentialDataLoadIndex].removeEventListener(AssetStorage.ON_DATA, _onAssetDataLoaded); _assets[_sequentialDataLoadIndex].removeEventListener(AssetStorage.ON_ERROR, _onAssetDataLoadFailed); _sequentialDataLoadIndex = (_assets.length + 1); }; _loop = _assets.length; while (_loop--) { _assets[_loop].cleanUp(); }; _assets = []; } private function _findAssetByID(_arg1:String):AssetStorage{ _loop = _assets.length; while (_loop--) { if (_assets[_loop].id == _arg1){ return (_assets[_loop]); }; }; return (null); } public function beginSequentialDataLoad():void{ _sequentialDataLoadIndex = 0; _loadAssetData(); } public function add(_arg1:String):void{ _assets.push(new AssetStorage(_arg1)); } private function _loadAssetData():void{ _assets[_sequentialDataLoadIndex].addEventListener(AssetStorage.ON_DATA, _onAssetDataLoaded); _assets[_sequentialDataLoadIndex].addEventListener(AssetStorage.ON_ERROR, _onAssetDataLoadFailed); _assets[_sequentialDataLoadIndex].loadData(); } public function getAsset(_arg1:String):DisplayObject{ return (_findAssetByID(_arg1).asset); } private function _onAssetDataLoadFailed(_arg1:Event):void{ _assets[_sequentialDataLoadIndex].removeEventListener(AssetStorage.ON_DATA, _onAssetDataLoaded); _assets[_sequentialDataLoadIndex].removeEventListener(AssetStorage.ON_ERROR, _onAssetDataLoadFailed); dispatchEvent(new EData(ON_ERROR, {url:_assets[_sequentialDataLoadIndex].url})); } } }//package com.workinman.paradise.data
Section 37
//AssetStorage (com.workinman.paradise.data.AssetStorage) package com.workinman.paradise.data { import flash.events.*; import com.workinman.lib.events.*; import flash.display.*; import com.workinman.lib.net.*; public class AssetStorage extends EventDispatcher { private var _workinLoader:WorkinLoader; private var _isLoaded:Boolean; private var _url:String; private var _asset:DisplayObject; public static var ON_ERROR:String = "onAssetStorageError"; public static var ON_DATA:String = "onAssetStorageData"; public function AssetStorage(_arg1:String){ _url = _arg1; _workinLoader = new WorkinLoader(); _isLoaded = false; } public function cleanUp():void{ _asset = null; } private function _onSWFLoaded(_arg1:ESWF):void{ if (_arg1.success){ _onAssetLoaded(_arg1.swf); } else { _onAssetError(); }; } private function _onAssetError():void{ _clearLoader(); dispatchEvent(new Event(ON_ERROR)); } private function _clearLoader():void{ _workinLoader.removeEventListener(WorkinLoader.BITMAP_LOADED, _onBitmapLoaded); _workinLoader.removeEventListener(WorkinLoader.SWF_LOADED, _onSWFLoaded); _workinLoader.cleanUp(); _workinLoader = null; } private function _loadAsset():void{ if (_url.indexOf("swf") > -1){ _workinLoader.loadSWF(_url); } else { _workinLoader.loadBitmap(_url); }; } public function get url():String{ return (_url); } private function _onBitmapLoaded(_arg1:EBitmap):void{ var _local2:MovieClip; if (_arg1.success){ _local2 = new MovieClip(); _local2.addChild(_arg1.bitmap); _onAssetLoaded(_local2); } else { _onAssetError(); }; } public function get asset():DisplayObject{ return (_asset); } private function _onAssetLoaded(_arg1:DisplayObject):void{ _asset = _arg1; _isLoaded = true; _clearLoader(); dispatchEvent(new Event(ON_DATA)); } public function loadData():void{ _workinLoader.addEventListener(WorkinLoader.BITMAP_LOADED, _onBitmapLoaded); _workinLoader.addEventListener(WorkinLoader.SWF_LOADED, _onSWFLoaded); _loadAsset(); } } }//package com.workinman.paradise.data
Section 38
//BaseLevelData (com.workinman.paradise.data.BaseLevelData) package com.workinman.paradise.data { public class BaseLevelData { protected var _loop:Number; public function BaseLevelData(_arg1:LevelStorage){ } } }//package com.workinman.paradise.data
Section 39
//LevelManager (com.workinman.paradise.data.LevelManager) package com.workinman.paradise.data { import flash.events.*; import com.workinman.lib.events.*; public class LevelManager extends EventDispatcher { private var _loop:Number; private var _sequentialDataLoadIndex:Number; protected var _levels:Array; public static var ON_ERROR:String = "onLevelManagerLoadError"; public static var ON_COMPLETE:String = "onLevelManagerLoadComplete"; public function LevelManager(){ _levels = []; } private function _loadLevelData():void{ _levels[_sequentialDataLoadIndex].addEventListener(LevelStorage.ON_DATA, _onLevelDataLoaded); _levels[_sequentialDataLoadIndex].addEventListener(LevelStorage.ON_ERROR, _onLevelDataLoadFailed); _levels[_sequentialDataLoadIndex].loadData(); } public function cleanUp():void{ if (_sequentialDataLoadIndex < _levels.length){ _levels[_sequentialDataLoadIndex].removeEventListener(LevelStorage.ON_DATA, _onLevelDataLoaded); _levels[_sequentialDataLoadIndex].removeEventListener(LevelStorage.ON_ERROR, _onLevelDataLoadFailed); _sequentialDataLoadIndex = (_levels.length + 1); }; _loop = _levels.length; while (_loop--) { _levels[_loop].cleanUp(); }; _levels = []; } private function _findLevelByNum(_arg1:Number):LevelStorage{ _loop = _levels.length; while (_loop--) { if (_levels[_loop].num == _arg1){ return (_levels[_loop]); }; }; return (null); } private function _onLevelDataLoadFailed(_arg1:Event):void{ _levels[_sequentialDataLoadIndex].removeEventListener(LevelStorage.ON_DATA, _onLevelDataLoaded); _levels[_sequentialDataLoadIndex].removeEventListener(LevelStorage.ON_ERROR, _onLevelDataLoadFailed); dispatchEvent(new EData(ON_ERROR, {url:_levels[_sequentialDataLoadIndex].url})); } private function _onLevelDataLoadComplete():void{ dispatchEvent(new Event(ON_COMPLETE)); } public function getLastLevel():Number{ return ((_levels.length - 1)); } public function useDataLevels():void{ } public function add(_arg1:Number, _arg2:String):void{ _levels.push(new LevelStorage(_arg1, _arg2)); } private function _onLevelDataLoaded(_arg1:Event):void{ _levels[_sequentialDataLoadIndex].removeEventListener(LevelStorage.ON_DATA, _onLevelDataLoaded); _levels[_sequentialDataLoadIndex].removeEventListener(LevelStorage.ON_ERROR, _onLevelDataLoadFailed); _sequentialDataLoadIndex++; if (_sequentialDataLoadIndex < _levels.length){ _loadLevelData(); } else { _onLevelDataLoadComplete(); }; } public function getLevelStorage(_arg1:Number):LevelStorage{ if (!_findLevelByNum(_arg1).isLoaded){ return (null); }; return (_findLevelByNum(_arg1)); } public function beginSequentialDataLoad():void{ _sequentialDataLoadIndex = 0; _loadLevelData(); } public function getLevelCount():Number{ return (_levels.length); } } }//package com.workinman.paradise.data
Section 40
//LevelStorage (com.workinman.paradise.data.LevelStorage) package com.workinman.paradise.data { import flash.events.*; import com.workinman.lib.events.*; import com.workinman.lib.net.*; public class LevelStorage extends EventDispatcher { private var _levelNum:Number; private var _dataXML:XML; private var _workinLoader:WorkinLoader; private var _dataURL:String; private var _isXMLLoaded:Boolean; public static var ON_ERROR:String = "onLevelStorageError"; public static var ON_DATA:String = "onLevelStorageData"; public function LevelStorage(_arg1:Number, _arg2:String){ _dataURL = _arg2; _levelNum = _arg1; _workinLoader = new WorkinLoader(); _isXMLLoaded = false; } public function cleanUp():void{ try { _workinLoader.removeEventListener(WorkinLoader.XML_LOADED, _onXMLLoaded); } catch(pError:Error) { }; _dataXML = null; } public function loadFromData(_arg1:XML):void{ _isXMLLoaded = true; _dataXML = _arg1.copy(); _workinLoader.cleanUp(); _workinLoader = null; } public function get isLoaded():Boolean{ return (_isXMLLoaded); } public function get num():Number{ return (_levelNum); } public function get dataXML():XML{ return (_dataXML); } public function get url():String{ return (_dataURL); } public function loadData():void{ if (_isXMLLoaded){ return; }; _workinLoader.addEventListener(WorkinLoader.XML_LOADED, _onXMLLoaded); _workinLoader.loadXML(_dataURL); } private function _onXMLLoaded(_arg1:EXML):void{ _workinLoader.removeEventListener(WorkinLoader.XML_LOADED, _onXMLLoaded); if (_arg1.success){ _dataXML = _arg1.xml; _isXMLLoaded = true; dispatchEvent(new Event(ON_DATA)); } else { dispatchEvent(new Event(ON_ERROR)); }; _workinLoader.cleanUp(); _workinLoader = null; } } }//package com.workinman.paradise.data
Section 41
//ECamera (com.workinman.paradise.events.ECamera) package com.workinman.paradise.events { import flash.events.*; import com.workinman.paradise.world.camera.*; public class ECamera extends Event { private var _camera:BaseCamera; private var _request:String; public function ECamera(_arg1:String, _arg2:BaseCamera){ super(_arg1, false, false); _camera = _arg2; } public function get camera():BaseCamera{ return (_camera); } } }//package com.workinman.paradise.events
Section 42
//EView (com.workinman.paradise.events.EView) package com.workinman.paradise.events { import flash.events.*; import com.workinman.paradise.world.entitys.*; public class EView extends Event { private var _request:String; private var _renderable:Renderable; public function EView(_arg1:String, _arg2:Renderable){ super(_arg1, false, false); _renderable = _arg2; } public function get renderable():Renderable{ return (_renderable); } } }//package com.workinman.paradise.events
Section 43
//CollisionBox (com.workinman.paradise.math.CollisionBox) package com.workinman.paradise.math { import com.workinman.lib.math.*; public class CollisionBox { private var _collisionVertexArray:Array; private var _loop:Number; private var _height:Number; private var _width:Number; private var _collisionResultArray:Array; private var _newSweepLine:MotionSweepLine; private var _boxDimensions:Object; private var _centerOffset:WorkinPoint; public function CollisionBox(_arg1:Number, _arg2:Number, _arg3:WorkinPoint=null):void{ var _local4:Number; var _local5:Number; super(); _collisionVertexArray = []; if (_arg3 == null){ _centerOffset = new WorkinPoint(0, 0, 0); } else { _centerOffset = _arg3.copy(); }; _width = _arg1; _height = _arg2; _local4 = (_width / 2); _local5 = (_height / 2); _collisionVertexArray.push(new CollisionVertex(_collisionVertexArray.length, _centerOffset, -(_local4), -(_local5))); _collisionVertexArray.push(new CollisionVertex(_collisionVertexArray.length, _centerOffset, _local4, -(_local5))); _collisionVertexArray.push(new CollisionVertex(_collisionVertexArray.length, _centerOffset, _local4, 0)); _collisionVertexArray.push(new CollisionVertex(_collisionVertexArray.length, _centerOffset, _local4, _local5, "f")); _collisionVertexArray.push(new CollisionVertex(_collisionVertexArray.length, _centerOffset, -(_local4), _local5, "f")); _collisionVertexArray.push(new CollisionVertex(_collisionVertexArray.length, _centerOffset, -(_local4), 0)); } public function getCollisionLineArray(_arg1:WorkinPoint, _arg2:WorkinPoint):Array{ _boxDimensions = {left:((_arg1.x + _centerOffset.x) - (_width / 2)), right:((_arg1.x + _centerOffset.x) + (_width / 2)), top:((_arg1.y + _centerOffset.y) - (_height / 2)), bottom:((_arg1.y + _centerOffset.y) + (_height / 2))}; _collisionResultArray = []; _loop = _collisionVertexArray.length; while (_loop--) { _newSweepLine = _collisionVertexArray[_loop].getSweepLine(_arg1, _arg2); if ((((((((_newSweepLine.p1.x < _boxDimensions.left)) || ((_newSweepLine.p1.x > _boxDimensions.right)))) || ((_newSweepLine.p1.y < _boxDimensions.top)))) || ((_newSweepLine.p1.y > _boxDimensions.bottom)))){ _collisionResultArray.push(_newSweepLine); }; }; return (_collisionResultArray); } public function getCollisionCenter(_arg1:WorkinPoint):WorkinPoint{ return (_arg1.addPointCopy(_centerOffset)); } public function getVertexByID(_arg1:Number):CollisionVertex{ return (_collisionVertexArray[_arg1]); } } }//package com.workinman.paradise.math
Section 44
//CollisionVertex (com.workinman.paradise.math.CollisionVertex) package com.workinman.paradise.math { import com.workinman.lib.math.*; public class CollisionVertex { private var _vector:WorkinPoint; private var _flag:String; private var _point:WorkinPoint; private var _id:Number; public function CollisionVertex(_arg1:Number, _arg2:WorkinPoint, _arg3:Number=0, _arg4:Number=0, _arg5:String=""){ _vector = new WorkinPoint(_arg3, _arg4, 0); _point = _arg2.addCopy(_arg3, _arg4, 0); _point.clean(); _vector.clean(); _id = _arg1; _flag = _arg5; } public function get vector():WorkinPoint{ return (_vector); } public function getSweepLine(_arg1:WorkinPoint, _arg2:WorkinPoint):MotionSweepLine{ return (new MotionSweepLine(_id, new WorkinPoint((_arg1.x + _point.x), (_arg1.y + _point.y)), new WorkinPoint((_arg2.x + _point.x), (_arg2.y + _point.y)), new WorkinPoint(((_vector.x < 0)) ? -1 : ((_vector.x > 0)) ? 1 : 0, ((_vector.y < 0)) ? -1 : ((_vector.y > 0)) ? 1 : 0).normalizeCopy(), _flag)); } public function get flag():String{ return (_flag); } public function toString():String{ return (("[CollisionVertex] " + _point)); } public function get point():WorkinPoint{ return (_point); } public function get id():Number{ return (_id); } } }//package com.workinman.paradise.math
Section 45
//MotionCurve (com.workinman.paradise.math.MotionCurve) package com.workinman.paradise.math { import com.workinman.lib.math.*; import flash.events.*; public class MotionCurve extends EventDispatcher { private var _bezier:WorkinBezier; private var _pathRatio:Number; private var _formula:Function; private var _timeElapsed:Number; private var _duration:Number; private var _current:WorkinPoint; private var _timeRatio:Number; public static var COMPLETE:String = "onPathComplete"; public function MotionCurve(_arg1:WorkinPoint, _arg2:WorkinPoint, _arg3:WorkinPoint, _arg4:WorkinPoint, _arg5:Number, _arg6:String="linear"){ _bezier = new WorkinBezier(_arg1, _arg2, _arg3, _arg4); _bezier.getAsLines(); _duration = _arg5; _timeElapsed = 0; _timeRatio = 0; _pathRatio = 0; _calculatePath(); _formula = PennerManager.getEaseFunction(_arg6); } private function _calculatePath():void{ _current = _bezier.getPoint(_pathRatio); } public function get current():WorkinPoint{ return (_current); } public function update(_arg1:Number):void{ _updatePath(_arg1); } public function get isComplete():Boolean{ return ((timeRatio == 1)); } public function startToPoint(_arg1:WorkinPoint):void{ _bezier.originToPoint(_arg1); _calculatePath(); } public function get timeRatio():Number{ return (_timeRatio); } protected function _updatePath(_arg1:Number):void{ if (isComplete){ return; }; _timeElapsed = (_timeElapsed + _arg1); if (_timeElapsed > _duration){ _timeElapsed = _duration; }; _timeRatio = (_timeElapsed / _duration); _pathRatio = _formula(0, 1, _timeElapsed, _duration); _current = _bezier.getPoint(_pathRatio); if (isComplete){ dispatchEvent(new Event(COMPLETE)); }; } public function get end():WorkinPoint{ return (_bezier.p1); } public function endToPoint(_arg1:WorkinPoint):void{ _bezier.endToPoint(_arg1); _calculatePath(); } public function get start():WorkinPoint{ return (_bezier.p0); } public function get duration():Number{ return (_duration); } public function get hasPosition():Boolean{ return (true); } public function get pathRatio():Number{ return (_pathRatio); } public function endTo(_arg1:Number, _arg2:Number, _arg3:Number):void{ _bezier.endTo(_arg1, _arg2, _arg3); _calculatePath(); } public function get x():Number{ return (_current.x); } public function get y():Number{ return (_current.y); } public function startTo(_arg1:Number, _arg2:Number, _arg3:Number):void{ _bezier.originTo(_arg1, _arg2, _arg3); _calculatePath(); } } }//package com.workinman.paradise.math
Section 46
//MotionDelay (com.workinman.paradise.math.MotionDelay) package com.workinman.paradise.math { import flash.events.*; public class MotionDelay extends EventDispatcher { private var _ratio:Number; private var _timeElapsed:Number; private var _duration:Number; public static var COMPLETE:String = "onDelayComplete"; public function MotionDelay(_arg1:Number){ _duration = _arg1; _timeElapsed = 0; _ratio = 0; } public function get isComplete():Boolean{ return ((_ratio == 1)); } public function update(_arg1:Number):void{ _timeElapsed = (_timeElapsed + _arg1); if (_timeElapsed > _duration){ _timeElapsed = _duration; }; _ratio = (_timeElapsed / _duration); if (isComplete){ dispatchEvent(new Event(COMPLETE)); }; } public function get ratio():Number{ return (_ratio); } public function get duration():Number{ return (_duration); } public function get hasPosition():Boolean{ return (false); } } }//package com.workinman.paradise.math
Section 47
//MotionLine (com.workinman.paradise.math.MotionLine) package com.workinman.paradise.math { import com.workinman.lib.math.*; import flash.events.*; public class MotionLine extends EventDispatcher { private var _line:WorkinLine; private var _pathRatio:Number; private var _formula:Function; private var _timeElapsed:Number; private var _duration:Number; private var _current:WorkinPoint; private var _timeRatio:Number; public static var COMPLETE:String = "onPathComplete"; public function MotionLine(_arg1:WorkinPoint, _arg2:WorkinPoint, _arg3:Number, _arg4:String="linear"){ _line = new WorkinLine(_arg1, _arg2); _current = new WorkinPoint(); _duration = _arg3; _timeElapsed = 0; _timeRatio = 0; _pathRatio = 0; _calculatePath(); _formula = PennerManager.getEaseFunction(_arg4); } private function _calculatePath():void{ _current = _line.getPoint(_pathRatio); } public function get diff():WorkinPoint{ return (_line.vector); } public function get current():WorkinPoint{ return (_current); } public function update(_arg1:Number):void{ _updatePath(_arg1); } public function get isComplete():Boolean{ return ((timeRatio == 1)); } public function get timeRatio():Number{ return (_timeRatio); } public function startToPoint(_arg1:WorkinPoint):void{ _line.originToPoint(_arg1); _calculatePath(); } public function get end():WorkinPoint{ return (_line.p1); } public function endToPoint(_arg1:WorkinPoint):void{ _line.endToPoint(_arg1); _calculatePath(); } public function get pathRatio():Number{ return (_pathRatio); } public function get start():WorkinPoint{ return (_line.p0); } public function get duration():Number{ return (_duration); } public function get hasPosition():Boolean{ return (true); } public function get origin():WorkinPoint{ return (_line.p0); } public function endTo(_arg1:Number, _arg2:Number, _arg3:Number=0):void{ _line.endTo(_arg1, _arg2, _arg3); _calculatePath(); } public function get x():Number{ return (_current.x); } public function get y():Number{ return (_current.y); } protected function _updatePath(_arg1:Number):void{ if (isComplete){ return; }; _timeElapsed = (_timeElapsed + _arg1); if (_timeElapsed > _duration){ _timeElapsed = _duration; }; _timeRatio = (_timeElapsed / _duration); _pathRatio = _formula(0, 1, _timeElapsed, _duration); _current = _line.getPoint(_pathRatio); if (isComplete){ dispatchEvent(new Event(COMPLETE)); }; } public function startTo(_arg1:Number, _arg2:Number, _arg3:Number=0):void{ _line.originTo(_arg1, _arg2, _arg3); _calculatePath(); } } }//package com.workinman.paradise.math
Section 48
//MotionSweepLine (com.workinman.paradise.math.MotionSweepLine) package com.workinman.paradise.math { import com.workinman.lib.math.*; public class MotionSweepLine { private var _flag:String; private var _exclusionVector:WorkinPoint; private var _line:WorkinLine; private var _excludes:Boolean; private var _id:Number; public function MotionSweepLine(_arg1:Number, _arg2:WorkinPoint, _arg3:WorkinPoint, _arg4:WorkinPoint=null, _arg5:String=""){ _id = _arg1; _flag = _arg5; _line = new WorkinLine(_arg2, _arg3); if (_arg4 == null){ _excludes = false; _exclusionVector = new WorkinPoint(0, 0); } else { _excludes = true; _exclusionVector = _arg4; }; } public function get p0():WorkinPoint{ return (_line.p0); } public function get line():WorkinLine{ return (_line); } public function get p1():WorkinPoint{ return (_line.p1); } public function get flag():String{ return (_flag); } public function get length():Number{ return (_line.length); } public function toString():String{ return (((("[MotionSweepLine] " + _id) + " : ") + _line)); } public function get id():Number{ return (_id); } public function testExclusion(_arg1:WorkinLine):Boolean{ if (_excludes){ return ((_exclusionVector.dot(_arg1.normal) > -0.5)); }; return (false); } } }//package com.workinman.paradise.math
Section 49
//SurfaceCollisionLine (com.workinman.paradise.math.SurfaceCollisionLine) package com.workinman.paradise.math { import com.workinman.lib.math.*; public class SurfaceCollisionLine extends WorkinLine { private var _appearance:String; private var _standable:Boolean; private var _effects:Array; private var _grade:Number; private static var _STANDABLE_THRESHOLD:Number = 45; public function SurfaceCollisionLine(_arg1:WorkinPoint, _arg2:WorkinPoint, _arg3:Array, _arg4:String=""){ var _local5:Number; super(_arg1, _arg2); _grade = (90 + (Math.atan2(_normal.y, _normal.x) * (180 / Math.PI))); if (_grade > 180){ _grade = (-180 - (_grade - 180)); }; if (Math.abs(_grade) < _STANDABLE_THRESHOLD){ _standable = true; } else { _standable = false; }; _effects = _arg3; _appearance = _arg4; _local5 = _effects.length; while (_local5--) { if (_effects[_local5] == "fire"){ _appearance = "fire"; } else { if (_effects[_local5] == "poison"){ _appearance = "poison"; } else { if (_effects[_local5] == "water"){ _appearance = "water"; }; }; }; }; } public function get effects():Array{ return (_effects); } public function get standable():Boolean{ return (_standable); } public function get appearance():String{ return (_appearance); } override public function toString():String{ return ((((((((((((((("[SurfaceCollisionLine] " + "(") + _p0.x) + ", ") + _p0.y) + ", ") + _p0.z) + ") ~> (") + _p1.x) + ", ") + _p1.y) + ", ") + _p1.z) + ") :: grade ") + _grade)); } } }//package com.workinman.paradise.math
Section 50
//SurfaceCollisionResult (com.workinman.paradise.math.SurfaceCollisionResult) package com.workinman.paradise.math { import com.workinman.lib.math.*; public class SurfaceCollisionResult { private var _surfaceLine:SurfaceCollisionLine; private var _intercept:WorkinPoint; private var _collisionVertex:CollisionVertex; private var _motionSweep:MotionSweepLine; public function SurfaceCollisionResult(_arg1:InterceptResult, _arg2:CollisionVertex, _arg3:MotionSweepLine, _arg4:SurfaceCollisionLine){ _intercept = _arg1.result; _collisionVertex = _arg2; _motionSweep = _arg3; _surfaceLine = _arg4; } public function get surfaceLine():SurfaceCollisionLine{ return (_surfaceLine); } public function get intercept():WorkinPoint{ return (_intercept); } public function get vertex():CollisionVertex{ return (_collisionVertex); } public function get motionSweep():MotionSweepLine{ return (_motionSweep); } } }//package com.workinman.paradise.math
Section 51
//BaseInterface (com.workinman.paradise.ui.interfaces.BaseInterface) package com.workinman.paradise.ui.interfaces { import flash.display.*; import flash.filters.*; public class BaseInterface extends MovieClip { public function BaseInterface(){ _addEventListeners(); } protected function _removeEventListeners():void{ } protected function _addEventListeners():void{ } public function blur():void{ filters = [new BlurFilter(7, 7)]; } public function unblur():void{ filters = []; cacheAsBitmap = false; } public function cleanUp():void{ _removeEventListeners(); } } }//package com.workinman.paradise.ui.interfaces
Section 52
//BaseUI (com.workinman.paradise.ui.BaseUI) package com.workinman.paradise.ui { public class BaseUI { } }//package com.workinman.paradise.ui
Section 53
//ViewGroup (com.workinman.paradise.view.groups.ViewGroup) package com.workinman.paradise.view.groups { import flash.display.*; import com.workinman.paradise.world.entitys.*; public class ViewGroup { private var _container:Sprite; private var _loop:Number; private var _renderables:Array; public function ViewGroup(_arg1:Sprite){ _container = _arg1; _renderables = []; } public function get container():Sprite{ return (_container); } public function drawMC(_arg1:Renderable):void{ var _local2:Number; if (_arg1.doDepthRender){ _renderables.push({renderable:_arg1, depth:_arg1.depth}); _renderables.sortOn("depth", Array.NUMERIC); _loop = _renderables.length; _local2 = 0; while (_loop--) { if (_renderables[_loop].renderable == _arg1){ _local2 = _loop; _loop = 0; }; }; _container.addChildAt(_arg1, _local2); } else { _renderables.push({renderable:_arg1, depth:1}); _container.addChild(_arg1); }; _arg1.onDrawn(); } public function clear():void{ _loop = _renderables.length; while (_loop--) { _container.removeChild(_renderables[_loop].renderable); }; _renderables = []; } public function eraseMC(_arg1:Renderable):void{ _loop = _renderables.length; while (_loop--) { if (_renderables[_loop].renderable == _arg1){ _renderables.splice(_loop, 1); _loop = 0; }; }; _container.removeChild(_arg1); _arg1.onErased(); } } }//package com.workinman.paradise.view.groups
Section 54
//ViewManager (com.workinman.paradise.view.ViewManager) package com.workinman.paradise.view { import flash.events.*; import com.workinman.paradise.*; import flash.display.*; import com.workinman.lib.utils.*; import com.workinman.paradise.events.*; import flash.geom.*; import com.workinman.paradise.view.groups.*; public class ViewManager extends EventDispatcher { private var _loop:Number; private var _timeline:MovieClip; private var _DEF_GROUP_NAME:String;// = "base" private var _groups:Object; private var _viewRoom:EventDispatcher; public function ViewManager(_arg1:MovieClip){ _DEF_GROUP_NAME = "base"; super(); _timeline = _arg1; _viewRoom = WorkinDispatcher.getInstance().getRoom(ParadiseConfig.ROOM_VIEW); _viewRoom.addEventListener(ParadiseConfig.EVENT_VIEW_DRAW, _draw); _viewRoom.addEventListener(ParadiseConfig.EVENT_VIEW_ERASE, _erase); _groups = {}; addGroup(_DEF_GROUP_NAME, 0); } public function clear():void{ var _local1:*; for (_local1 in _groups) { _groups[_local1].clear(); }; } public function _draw(_arg1:EView):void{ _groups[((_arg1.renderable.group == "")) ? _DEF_GROUP_NAME : _arg1.renderable.group].drawMC(_arg1.renderable); } public function addGroup(_arg1:String, _arg2:Number):void{ var _local3:*; _local3 = new Sprite(); _local3.x = ParadiseConfig.SCREEN_OFFSET.x; _local3.y = ParadiseConfig.SCREEN_OFFSET.y; _timeline.addChildAt(_local3, _arg2); _groups[_arg1] = new ViewGroup(_local3); } public function _erase(_arg1:EView):void{ _groups[((_arg1.renderable.group == "")) ? _DEF_GROUP_NAME : _arg1.renderable.group].eraseMC(_arg1.renderable); } public function resort():void{ } public function getContentsAsBitmap():BitmapData{ var _local1:BitmapData; _local1 = new BitmapData((ParadiseConfig.SCREEN_WIDTH + ParadiseConfig.SCREEN_OFFSET.x), (ParadiseConfig.SCREEN_HEIGHT + ParadiseConfig.SCREEN_OFFSET.y)); _local1.draw(_timeline, null, null, null, new Rectangle(ParadiseConfig.SCREEN_OFFSET.x, ParadiseConfig.SCREEN_OFFSET.y, ParadiseConfig.SCREEN_WIDTH, ParadiseConfig.SCREEN_HEIGHT)); _local1.floodFill(0, 0, 0); return (_local1); } } }//package com.workinman.paradise.view
Section 55
//BaseCamera (com.workinman.paradise.world.camera.BaseCamera) package com.workinman.paradise.world.camera { import com.workinman.lib.math.*; import com.workinman.paradise.world.entitys.*; public class BaseCamera extends Element { protected var _halfDimensions:WorkinPoint; protected var _focusPoint:WorkinPoint; protected var _dimensions:WorkinPoint; protected var _focusZ:Number; protected var _focusY:Number; protected var _screenCenter:WorkinPoint; public function BaseCamera(_arg1:Object){ super(_arg1); if ((((((_arg1.fx == undefined)) || ((_arg1.fy == undefined)))) || ((_arg1.fz == undefined)))){ _focusPoint = _pos.copy(); } else { _focusPoint = new WorkinPoint(_arg1.fx, _arg1.fy, _arg1.fz); }; } public function get center():WorkinPoint{ return (_screenCenter); } override public function get x():Number{ return (_pos.x); } override public function get y():Number{ return (_pos.y); } public function isOnscreen(_arg1:Renderable):Boolean{ if (((((Math.abs((_pos.x - (_arg1.pos.x + _arg1.displayCenter.x))) - _arg1.halfDisplayWidth) > _halfDimensions.x)) || (((Math.abs((_pos.y - (_arg1.pos.y + _arg1.displayCenter.y))) - _arg1.halfDisplayHeight) > _halfDimensions.y)))){ return (false); }; return (true); } public function get z():Number{ return (_pos.z); } public function getRelativePos(_arg1:WorkinPoint):WorkinPoint{ return (new WorkinPoint((_pos.x + (_arg1.x - _pos.x)), (_pos.y + (_arg1.y - _pos.y)))); } override public function update(_arg1:Number):void{ if (_paths.length > 0){ _updatePath(_arg1); }; } public function get fx():Number{ return (_pos.x); } public function get fy():Number{ return (_pos.y); } public function get fz():Number{ return (_pos.z); } override public function set x(_arg1:Number):void{ _pos.x = _arg1; } override public function set y(_arg1:Number):void{ _pos.y = _arg1; } public function set z(_arg1:Number):void{ _pos.z = _arg1; } public function set fx(_arg1:Number):void{ _pos.x = _arg1; } public function set fy(_arg1:Number):void{ _pos.y = _arg1; } public function set fz(_arg1:Number):void{ _pos.z = _arg1; } function setDimensions(_arg1:WorkinPoint):void{ _dimensions = _arg1; _screenCenter = _dimensions.divideCopy(2); _halfDimensions = _dimensions.divideCopy(2); } } }//package com.workinman.paradise.world.camera
Section 56
//CameraManager (com.workinman.paradise.world.camera.CameraManager) package com.workinman.paradise.world.camera { import com.workinman.lib.math.*; import flash.events.*; import com.workinman.paradise.*; import com.workinman.lib.utils.*; import com.workinman.paradise.events.*; public class CameraManager { private var _activeCameraID:String; private var _worldRoom:EventDispatcher; private var _activeCamera:BaseCamera; private var _dimensions:WorkinPoint; private var _cameras:Object; public function CameraManager():void{ _registerEventRooms(); _dimensions = ParadiseConfig.DIMENSIONS.addPointCopy(ParadiseConfig.SCREEN_OFFSET); _cameras = {}; _activeCameraID = ""; } public function clear():void{ _activeCamera = null; _worldRoom = null; } protected function _setActiveCamera(_arg1:String):void{ if ((((_activeCameraID == _arg1)) || (!(_cameras.hasOwnProperty(_arg1))))){ return; }; _activeCameraID = _arg1; _activeCamera = _cameras[_arg1]; _worldRoom.dispatchEvent(new ECamera(ParadiseConfig.EVENT_CAMERA_CHANGE, _activeCamera)); } public function renderCameraView():void{ _worldRoom.dispatchEvent(new ECamera(ParadiseConfig.EVENT_RENDER_FROM_CAMERA, _activeCamera)); } public function get camera():BaseCamera{ return (_activeCamera); } protected function _registerEventRooms():void{ _worldRoom = WorkinDispatcher.getInstance().getRoom(ParadiseConfig.ROOM_WORLD); } public function getRelativePos(_arg1:WorkinPoint):WorkinPoint{ return (_activeCamera.getRelativePos(_arg1)); } public function updateActiveCamera(_arg1:Number):void{ _activeCamera.update(_arg1); } public function changeCamera(_arg1:String):void{ _setActiveCamera(_arg1); } public function updateAllCameras(_arg1:Number):void{ } public function addCustomCamera(_arg1:BaseCamera, _arg2:String, _arg3:Boolean=true):void{ _cameras[_arg2] = _arg1; _cameras[_arg2].setDimensions(_dimensions); if (((_arg3) || ((_activeCameraID == "")))){ _setActiveCamera(_arg2); }; } public function addSimpleCamera(_arg1:String, _arg2:Boolean=true, _arg3:Number=0, _arg4:Number=0, _arg5:Number=0, _arg6:Number=0, _arg7:Number=0, _arg8:Number=0):void{ _cameras[_arg1] = new BaseCamera({x:_arg3, y:_arg4, z:_arg5, fx:_arg6, fy:_arg7, fz:_arg8}); _cameras[_arg1].setDimensions(_dimensions); if (((_arg2) || ((_activeCameraID == "")))){ _setActiveCamera(_arg1); }; } } }//package com.workinman.paradise.world.camera
Section 57
//Element (com.workinman.paradise.world.entitys.Element) package com.workinman.paradise.world.entitys { import com.workinman.lib.math.*; import com.workinman.paradise.math.*; import com.workinman.lib.display.*; public class Element extends WorkinMovieClip { protected var _velocity:WorkinPoint; protected var _lastPos:WorkinPoint; protected var _pos:WorkinPoint; protected var _paths:Array; public function Element(_arg1:Object){ _validateData(_arg1); if (_pos == null){ _pos = new WorkinPoint(_arg1.x, _arg1.y, _arg1.z); }; _lastPos = _pos.copy(); _setInitialVelocity(); _setInitialPath(); } override public function moveBy(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:String="linear", _arg5:Number=0):void{ setPath(new WorkinPoint((_pos.x + _arg1), (_pos.y + _arg2)), _arg3, _arg4); } protected function _setInitialVelocity():void{ _velocity = new WorkinPoint(0, 0); } protected function _onPathComplete():void{ } override public function moveTo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:String="linear", _arg5:Number=0):void{ setPath(new WorkinPoint(_arg1, _arg2), _arg3, _arg4); } protected function _updatePath(_arg1:Number):void{ _paths[0].update(_arg1); if (_paths[0].hasPosition){ _pos.toPoint(_paths[0].current); }; if (_paths[0].isComplete){ _paths.splice(0, 1); if (_paths.length == 0){ _onPathComplete(); } else { if (_paths[0].hasPosition){ _paths[0].startToPoint(_pos); }; }; }; } public function setDelay(_arg1:Number):void{ clearPaths(); addDelay(_arg1); } public function get pos():WorkinPoint{ return (_pos); } public function get exists():Boolean{ return (true); } public function addPath(_arg1:WorkinPoint, _arg2:Number, _arg3:String="linear"):void{ if (_arg2 == 0){ _pos.toPoint(_arg1); return; }; _paths.push(new MotionLine(_pos, _arg1, _arg2, _arg3)); if (_paths.length > 1){ _onPathBegin(); }; } public function pos3DSet(_arg1:Number, _arg2:Number, _arg3:Number):void{ _pos.x = _arg1; _pos.y = _arg2; _pos.z = _arg3; } public function to(_arg1:Number, _arg2:Number, _arg3:Number=0):void{ _pos.to(_arg1, _arg2, _arg3); } public function clearPaths():void{ if (_paths.length == 0){ return; }; _paths = []; _onPathCancelled(); } protected function _onPathBegin():void{ } public function clearCurrentPath():void{ if (_paths.length == 0){ return; }; _paths.shift(); if (_paths.length == 0){ _onPathCancelled(); }; } public function update(_arg1:Number):void{ _lastPos.toPoint(_pos); if (_paths.length == 0){ _pos.add((_velocity.x * _arg1), (_velocity.y * _arg1), (_velocity.z * _arg1)); } else { _updatePath(_arg1); }; } public function addCurve(_arg1:WorkinPoint, _arg2:WorkinPoint, _arg3:WorkinPoint, _arg4:Number, _arg5:String="linear"):void{ _paths.push(new MotionCurve(_pos, _arg1, _arg2, _arg3, _arg4, _arg5)); if (_paths.length > 1){ _onPathBegin(); }; } protected function _onPathCancelled():void{ } public function get isPathing():Boolean{ return ((_paths.length > 0)); } public function addDelay(_arg1:Number):void{ _paths.push(new MotionDelay(_arg1)); } override public function posSet(_arg1:Number, _arg2:Number):void{ _pos.x = _arg1; _pos.y = _arg2; } public function setPath(_arg1:WorkinPoint, _arg2:Number, _arg3:String="linear"):void{ clearPaths(); addPath(_arg1, _arg2, _arg3); } public function setCurve(_arg1:WorkinPoint, _arg2:WorkinPoint, _arg3:WorkinPoint, _arg4:Number, _arg5:String="linear"):void{ clearPaths(); addCurve(_arg1, _arg2, _arg3, _arg4, _arg5); } private function _validateData(_arg1:Object):void{ if (_arg1.x == undefined){ _arg1.x = 0; }; if (_arg1.y == undefined){ _arg1.y = 0; }; if (_arg1.z == undefined){ _arg1.z = 0; }; } public function toPoint(_arg1:WorkinPoint):void{ _pos.toPoint(_arg1); } public function get lastPos():WorkinPoint{ return (_lastPos); } protected function _setInitialPath():void{ _paths = []; } } }//package com.workinman.paradise.world.entitys
Section 58
//ParaSprite (com.workinman.paradise.world.entitys.ParaSprite) package com.workinman.paradise.world.entitys { import com.workinman.paradise.assets.*; public class ParaSprite extends Renderable { protected var _assetClass:Class; protected var _asset:GameAsset; public function ParaSprite(_arg1:Object){ super(_arg1); if (_arg1.asset == null){ _assetClass = _defaultAsset; } else { _assetClass = _arg1.asset; }; _asset = new _assetClass(); addChild(_asset); _onGenerateAsset(); _recalculateDimensions(); } public function get assetClass():Class{ return (_assetClass); } protected function _onGenerateAsset():void{ } override public function cleanUp():void{ super.cleanUp(); _asset.cleanUp(); } public function get asset():GameAsset{ return (_asset); } protected function get _defaultAsset():Class{ return (GameAsset); } protected function _animate(_arg1:String):void{ _asset.animate(_arg1); } } }//package com.workinman.paradise.world.entitys
Section 59
//Renderable (com.workinman.paradise.world.entitys.Renderable) package com.workinman.paradise.world.entitys { import com.workinman.lib.math.*; import flash.events.*; import com.workinman.paradise.*; import com.workinman.paradise.world.camera.*; import com.workinman.lib.utils.*; import com.workinman.paradise.events.*; public class Renderable extends Element { protected var _displayWidth:Number; protected var _worldRoom:EventDispatcher; protected var _halfDisplayWidth:Number; protected var _mcVisible:Boolean; protected var _viewRoom:EventDispatcher; protected var _halfDisplayHeight:Number; protected var _displayHeight:Number; protected var _displayCenter:WorkinPoint; protected var _depth:Number; protected var _isOnscreen:Boolean; public function Renderable(_arg1:Object){ super(_arg1); _registerEventRooms(); _isOnscreen = false; _mcVisible = false; _displayWidth = 0; _displayHeight = 0; _halfDisplayWidth = 0; _halfDisplayHeight = 0; _displayCenter = new WorkinPoint(); _worldRoom.addEventListener(ParadiseConfig.EVENT_RENDER_FROM_CAMERA, _onRender, false, 0, true); _worldRoom.addEventListener(ParadiseConfig.EVENT_CAMERA_CHANGE, _onCameraChange, false, 0, true); } protected function get _padDisplayDimensionsForNonCenteredAssets():Boolean{ return (false); } protected function _registerEventRooms():void{ _viewRoom = WorkinDispatcher.getInstance().getRoom(ParadiseConfig.ROOM_VIEW); _worldRoom = WorkinDispatcher.getInstance().getRoom(ParadiseConfig.ROOM_WORLD); } protected function _draw():void{ _updateDepth(); _viewRoom.dispatchEvent(new EView(ParadiseConfig.EVENT_VIEW_DRAW, this)); } public function get displayWidth():Number{ return (_displayWidth); } protected function get _assetRegistrationPoint():String{ return ("cc"); } public function get displayHeight():Number{ return (_displayHeight); } public function get doDepthRender():Boolean{ return (false); } public function get depth():Number{ return (_depth); } override public function update(_arg1:Number):void{ } override public function cleanUp():void{ super.cleanUp(); _erase(); _worldRoom.removeEventListener(ParadiseConfig.EVENT_CAMERA_CHANGE, _onCameraChange); _worldRoom.removeEventListener(ParadiseConfig.EVENT_RENDER_FROM_CAMERA, _onRender); } public function get group():String{ return (""); } protected function _onCameraChange(_arg1:ECamera):void{ _onRender(_arg1); } protected function get _automaticallyDetermineDisplayDimensions():Boolean{ return (true); } public function onDrawn():void{ _mcVisible = true; } protected function _renderPosition(_arg1:BaseCamera):void{ x = (_arg1.center.x + (_pos.x - _arg1.x)); y = (_arg1.center.y + (_pos.y - _arg1.y)); } public function get halfDisplayHeight():Number{ return (_halfDisplayHeight); } public function onErased():void{ _mcVisible = false; } protected function _recalculateDisplayCenter(_arg1:String=""):void{ switch (((_arg1)!="") ? _arg1 : _assetRegistrationPoint){ case "br": _displayCenter.to(-(_halfDisplayWidth), -(_halfDisplayHeight)); break; case "bc": _displayCenter.to(0, -(_halfDisplayHeight)); break; case "bl": _displayCenter.to(_halfDisplayWidth, -(_halfDisplayHeight)); break; case "cr": _displayCenter.to(-(_halfDisplayWidth), 0); break; case "cl": _displayCenter.to(_halfDisplayWidth, 0); break; case "tr": _displayCenter.to(-(_halfDisplayWidth), _halfDisplayHeight); break; case "tc": _displayCenter.to(0, _halfDisplayHeight); break; case "tl": _displayCenter.to(_halfDisplayWidth, _halfDisplayHeight); break; case "cc": default: _displayCenter.to(0, 0); break; }; } protected function _onRender(_arg1:ECamera):void{ _renderPosition(_arg1.camera); _renderVisibility(_arg1.camera); } protected function _renderVisibility(_arg1:BaseCamera):void{ _isOnscreen = _arg1.isOnscreen(this); if (((_isOnscreen) && (!(_mcVisible)))){ _draw(); } else { if (((!(_isOnscreen)) && (_mcVisible))){ _erase(); }; }; } public function get displayCenter():WorkinPoint{ return (_displayCenter); } protected function _recalculateDimensions():void{ if (_automaticallyDetermineDisplayDimensions){ _displayWidth = width; _displayHeight = height; if (_padDisplayDimensionsForNonCenteredAssets){ _halfDisplayWidth = width; _halfDisplayHeight = height; } else { _halfDisplayWidth = (width / 2); _halfDisplayHeight = (height / 2); }; }; _recalculateDisplayCenter(); } protected function _updateDepth():void{ _depth = _pos.z; } protected function _erase():void{ if (_mcVisible){ _viewRoom.dispatchEvent(new EView(ParadiseConfig.EVENT_VIEW_ERASE, this)); }; } public function get halfDisplayWidth():Number{ return (_halfDisplayWidth); } } }//package com.workinman.paradise.world.entitys
Section 60
//BaseController (com.workinman.paradise.BaseController) package com.workinman.paradise { import flash.events.*; import com.workinman.lib.events.*; import flash.display.*; import com.workinman.lib.utils.*; import flash.geom.*; import flash.ui.*; public class BaseController { private var _timeline:MovieClip; private var _mouseRectangle:Rectangle; public function BaseController(_arg1:MovieClip){ _timeline = _arg1; } private function _onMouseUp(_arg1:Event):void{ if (mouseInPlayArea){ WorkinDispatcher.getInstance().dispatchEvent(new Event(ParadiseConfig.EVENT_MOUSE_UP)); }; } public function activateKeyboardControl(_arg1:MovieClip=null):void{ if (_arg1 == null){ _arg1 = _timeline; }; _arg1.addEventListener(KeyboardEvent.KEY_DOWN, _onKeyDown); _arg1.addEventListener(KeyboardEvent.KEY_UP, _onKeyUp); } private function _onMouseClick(_arg1:Event):void{ if (mouseInPlayArea){ WorkinDispatcher.getInstance().dispatchEvent(new Event(ParadiseConfig.EVENT_MOUSE_CLICK)); }; } private function _onKeyDown(_arg1:KeyboardEvent):void{ if (_arg1.keyCode == Keyboard.SPACE){ WorkinDispatcher.getInstance().dispatchEvent(new EData(ParadiseConfig.EVENT_SPACEBAR, {keyCode:_arg1.keyCode, charCode:_arg1.charCode})); } else { if (_arg1.keyCode == Keyboard.ENTER){ WorkinDispatcher.getInstance().dispatchEvent(new EData(ParadiseConfig.EVENT_ENTER, {keyCode:_arg1.keyCode, charCode:_arg1.charCode})); }; }; WorkinDispatcher.getInstance().dispatchEvent(new EData(ParadiseConfig.EVENT_KEY_DOWN, {keyCode:_arg1.keyCode, charCode:_arg1.charCode})); } public function get mouseInPlayArea():Boolean{ return (_mouseRectangle.contains(_timeline.mouseX, _timeline.mouseY)); } private function _onMouseDown(_arg1:Event):void{ if (mouseInPlayArea){ WorkinDispatcher.getInstance().dispatchEvent(new Event(ParadiseConfig.EVENT_MOUSE_DOWN)); }; } private function _onKeyUp(_arg1:KeyboardEvent):void{ WorkinDispatcher.getInstance().dispatchEvent(new EData(ParadiseConfig.EVENT_KEY_UP, {keyCode:_arg1.keyCode, charCode:_arg1.charCode})); } public function activeMouseControl(_arg1:MovieClip=null, _arg2:Boolean=false):void{ if (_arg1 == null){ _arg1 = _timeline; }; _mouseRectangle = new Rectangle(ParadiseConfig.SCREEN_OFFSET.x, ParadiseConfig.SCREEN_OFFSET.y, ParadiseConfig.DIMENSIONS.x, ParadiseConfig.DIMENSIONS.y); _arg1.addEventListener(MouseEvent.CLICK, _onMouseClick); if (_arg2){ return; }; _arg1.addEventListener(MouseEvent.MOUSE_UP, _onMouseUp); _arg1.addEventListener(MouseEvent.MOUSE_DOWN, _onMouseDown); } } }//package com.workinman.paradise
Section 61
//BaseEngine (com.workinman.paradise.BaseEngine) package com.workinman.paradise { import com.workinman.lib.sound.*; import com.workinman.paradise.view.*; import com.workinman.lib.events.*; import flash.display.*; import com.workinman.lib.net.*; import flash.text.*; public class BaseEngine { protected var _view:ViewManager; protected var _sound:SoundManager; protected var _configXMLURL:String; protected var _control:BaseController; protected var _timeline:BaseTimeline; protected var _debugText:TextField; protected var _configXML:XML; public function BaseEngine(_arg1:BaseTimeline){ _generate(_arg1); } public function clearDebug():void{ _debugText.text = ""; } public function debug(_arg1:String):void{ if (!_DEBUG){ return; }; if (_debugText == null){ _generateDebugField(); _debugText.text = "<[[ Debugger initialized ]]>"; }; _debugText.appendText("\n"); _debugText.appendText(_arg1); } protected function _generate(_arg1:BaseTimeline):void{ _timeline = _arg1; if (_timeline.configurl != null){ _configXMLURL = _timeline.configurl; } else { _configXMLURL = ""; }; _generateState(); _generateSounds(); _generateControls(); _generateView(); _generateUI(); } public function get sound():SoundManager{ return (_sound); } protected function _generateDebugField():void{ _debugText = new TextField(); _debugText.width = (ParadiseConfig.SCREEN_WIDTH - 70); _debugText.height = (ParadiseConfig.SCREEN_HEIGHT - 70); _debugText.x = 50; _debugText.y = 50; _debugText.textColor = 0xFFFFFF; _timeline.addChild(_debugText); } public function get control():BaseController{ return (_control); } public function get timeline():BaseTimeline{ return (_timeline); } protected function _generateState():void{ } public function get view():ViewManager{ return (_view); } protected function _generateView():void{ var _local1:MovieClip; _local1 = new MovieClip(); _view = new ViewManager(_local1); _timeline.addChild(_local1); } protected function _begin():void{ } protected function _onConfigXMLReturn(_arg1:EXML):void{ XMLLoader.removeEventListener(XMLLoader.ON_XML, _onConfigXMLReturn); if (_arg1.success){ _configXML = _arg1.xml; _parseConfigXML(); } else { if (_DEBUG){ debug(("Error Loading Config XML : " + _configXMLURL)); }; }; } protected function _generateUI():void{ } protected function _loadConfigXML():void{ XMLLoader.addEventListener(XMLLoader.ON_XML, _onConfigXMLReturn); XMLLoader.load(_configXMLURL); } protected function _generateControls():void{ _control = new BaseController(_timeline); _control.activeMouseControl(); _control.activateKeyboardControl(); } protected function get _DEBUG():Boolean{ return (false); } protected function _generateSounds():void{ _sound = new SoundManager(); } protected function _parseConfigXML():void{ _begin(); } } }//package com.workinman.paradise
Section 62
//BaseTimeline (com.workinman.paradise.BaseTimeline) package com.workinman.paradise { import flash.display.*; public class BaseTimeline extends MovieClip { public var configurl:String; public function BaseTimeline():void{ _generate(); } protected function _generate():void{ } } }//package com.workinman.paradise
Section 63
//ParadiseConfig (com.workinman.paradise.ParadiseConfig) package com.workinman.paradise { import com.workinman.lib.math.*; public class ParadiseConfig { public static var EVENT_KEY_UP:String = "onKeyUp"; public static var EVENT_MOUSE_DOWN:String = "onMouseDown"; public static var EVENT_CAMERA_CHANGE:String = "cameraChange"; public static var ROOM_VIEW:String = "view"; protected static var _SCREEN_CENTER:WorkinPoint; public static var ROOM_WORLD:String = "world"; public static var EVENT_RENDER_FROM_CAMERA:String = "cameraRender"; public static var EVENT_VIEW_DRAW:String = "viewDraw"; public static var EVENT_RETURN:String = "onEnter"; public static var ROOM_ENGINE:String = "engine"; public static var EVENT_ENTER:String = "onEnter"; public static var EVENT_MOUSE_UP:String = "onMouseUp"; protected static var _SCREEN_OFFSET:WorkinPoint; public static var EVENT_KEY_DOWN:String = "onKeyDown"; public static var EVENT_VIEW_ERASE:String = "viewErase"; public static var ROOM_CONTROL:String = "control"; protected static var _SCREEN_HEIGHT:Number = 400; protected static var _DIMENSIONS:WorkinPoint; public static var EVENT_MOUSE_CLICK:String = "onMouseClick"; public static var EVENT_SPACEBAR:String = "onSpacebar"; protected static var _SCREEN_WIDTH:Number = 550; public function ParadiseConfig():void{ } public static function get SCREEN_CENTER():WorkinPoint{ if (_SCREEN_CENTER == null){ _SCREEN_CENTER = new WorkinPoint(((_SCREEN_WIDTH / 2) + _SCREEN_OFFSET.x), ((_SCREEN_HEIGHT / 2) + _SCREEN_OFFSET.y)); }; return (_SCREEN_CENTER); } public static function set SCREEN_OFFSET(_arg1:WorkinPoint):void{ _SCREEN_OFFSET = _arg1.copy(); } public static function get SCREEN_WIDTH():Number{ return (_SCREEN_WIDTH); } public static function set SCREEN_CENTER(_arg1:WorkinPoint):void{ _SCREEN_CENTER = _arg1.copy(); } public static function set DIMENSIONS(_arg1:WorkinPoint):void{ _SCREEN_WIDTH = _arg1.x; _SCREEN_HEIGHT = _arg1.y; _SCREEN_OFFSET = new WorkinPoint(0, 0, 0); } public static function get SCREEN_OFFSET():WorkinPoint{ return (_SCREEN_OFFSET); } public static function get DIMENSIONS():WorkinPoint{ if (_DIMENSIONS == null){ _DIMENSIONS = new WorkinPoint(_SCREEN_WIDTH, _SCREEN_HEIGHT); }; return (_DIMENSIONS); } public static function get SCREEN_HEIGHT():Number{ return (_SCREEN_HEIGHT); } public static function get SCREEN_BOTTOM():Number{ return ((_SCREEN_OFFSET.y + _SCREEN_HEIGHT)); } public static function get SCREEN_TOP():Number{ return (_SCREEN_OFFSET.y); } public static function get SCREEN_RIGHT():Number{ return ((_SCREEN_OFFSET.x + _SCREEN_WIDTH)); } public static function get SCREEN_LEFT():Number{ return (_SCREEN_OFFSET.x); } } }//package com.workinman.paradise
Section 64
//WeaponButtercupStickLeft (com.wwb.princessbride.fire_swamp.assets.weapons.WeaponButtercupStickLeft) package com.wwb.princessbride.fire_swamp.assets.weapons { import com.wwb.princessbride.fire_swamp.*; import flash.events.*; import com.workinman.lib.utils.*; public class WeaponButtercupStickLeft extends WeaponDisplayAsset { public function WeaponButtercupStickLeft(){ WorkinDispatcher.getInstance().addEventListener(PlayerAppearanceManager.EVENT_BUTTERCUP_APPEARANCE_CHANGE, _updateVisibility); } protected function _updateVisibility(_arg1:Event):void{ if (((PlayerAppearanceManager.getButtercupFacingLeft()) && (PlayerAppearanceManager.getButtercupArmed()))){ visible = true; } else { visible = false; }; } } }//package com.wwb.princessbride.fire_swamp.assets.weapons
Section 65
//WeaponButtercupStickRight (com.wwb.princessbride.fire_swamp.assets.weapons.WeaponButtercupStickRight) package com.wwb.princessbride.fire_swamp.assets.weapons { import com.wwb.princessbride.fire_swamp.*; import flash.events.*; import com.workinman.lib.utils.*; public class WeaponButtercupStickRight extends WeaponDisplayAsset { public function WeaponButtercupStickRight(){ WorkinDispatcher.getInstance().addEventListener(PlayerAppearanceManager.EVENT_BUTTERCUP_APPEARANCE_CHANGE, _updateVisibility); } protected function _updateVisibility(_arg1:Event):void{ if (((!(PlayerAppearanceManager.getButtercupFacingLeft())) && (PlayerAppearanceManager.getButtercupArmed()))){ visible = true; } else { visible = false; }; } } }//package com.wwb.princessbride.fire_swamp.assets.weapons
Section 66
//WeaponDisplayAsset (com.wwb.princessbride.fire_swamp.assets.weapons.WeaponDisplayAsset) package com.wwb.princessbride.fire_swamp.assets.weapons { import flash.display.*; public class WeaponDisplayAsset extends MovieClip { public function WeaponDisplayAsset():void{ } } }//package com.wwb.princessbride.fire_swamp.assets.weapons
Section 67
//WeaponWestleySwordLeft (com.wwb.princessbride.fire_swamp.assets.weapons.WeaponWestleySwordLeft) package com.wwb.princessbride.fire_swamp.assets.weapons { import com.wwb.princessbride.fire_swamp.*; import flash.events.*; import com.workinman.lib.utils.*; public class WeaponWestleySwordLeft extends WeaponDisplayAsset { public function WeaponWestleySwordLeft(){ WorkinDispatcher.getInstance().addEventListener(PlayerAppearanceManager.EVENT_WESTLEY_APPEARANCE_CHANGE, _updateVisibility); } protected function _updateVisibility(_arg1:Event):void{ if (((((!(PlayerAppearanceManager.getWestleyFacingLeft())) && (PlayerAppearanceManager.getWestleySwordLeft()))) || (((PlayerAppearanceManager.getWestleyFacingLeft()) && (!(PlayerAppearanceManager.getWestleySwordLeft())))))){ visible = true; } else { visible = false; }; } } }//package com.wwb.princessbride.fire_swamp.assets.weapons
Section 68
//WeaponWestleySwordRight (com.wwb.princessbride.fire_swamp.assets.weapons.WeaponWestleySwordRight) package com.wwb.princessbride.fire_swamp.assets.weapons { import com.wwb.princessbride.fire_swamp.*; import flash.events.*; import com.workinman.lib.utils.*; public class WeaponWestleySwordRight extends WeaponDisplayAsset { public function WeaponWestleySwordRight(){ WorkinDispatcher.getInstance().addEventListener(PlayerAppearanceManager.EVENT_WESTLEY_APPEARANCE_CHANGE, _updateVisibility); } protected function _updateVisibility(_arg1:Event):void{ if (((((PlayerAppearanceManager.getWestleyFacingLeft()) && (PlayerAppearanceManager.getWestleySwordLeft()))) || (((!(PlayerAppearanceManager.getWestleyFacingLeft())) && (!(PlayerAppearanceManager.getWestleySwordLeft())))))){ visible = true; } else { visible = false; }; } } }//package com.wwb.princessbride.fire_swamp.assets.weapons
Section 69
//ArrowAsset (com.wwb.princessbride.fire_swamp.assets.ArrowAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class ArrowAsset extends GameAsset { public function ArrowAsset(){ _addAnim("target", (getDefinitionByName("AssetArrowTarget") as Class)); _addAnim("idle", (getDefinitionByName("AssetArrowIdle") as Class)); animate("idle"); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 70
//BoulderAsset (com.wwb.princessbride.fire_swamp.assets.BoulderAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class BoulderAsset extends GameAsset { public function BoulderAsset(){ _addAnim("idle", (getDefinitionByName("AssetBoulder") as Class)); animate("idle"); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 71
//BridgeAsset (com.wwb.princessbride.fire_swamp.assets.BridgeAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class BridgeAsset extends GameAsset { public function BridgeAsset(){ _addAnim("open", (getDefinitionByName("AssetBridgeOpen") as Class)); _addAnim("close", (getDefinitionByName("AssetBridgeClose") as Class)); _addAnim("idleOpen", (getDefinitionByName("AssetBridgeIdleOpen") as Class)); _addAnim("idleClose", (getDefinitionByName("AssetBridgeIdleClose") as Class)); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 72
//ButtercupAsset (com.wwb.princessbride.fire_swamp.assets.ButtercupAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class ButtercupAsset extends GameAsset { public function ButtercupAsset(){ _addAnim("idle", (getDefinitionByName("AssetButtercupIdle") as Class)); _addAnim("run", (getDefinitionByName("AssetButtercupRun") as Class)); _addAnim("slide", (getDefinitionByName("AssetButtercupSlide") as Class)); _addAnim("edge", (getDefinitionByName("AssetButtercupSlide") as Class)); _addAnim("jump_up", (getDefinitionByName("AssetButtercupJumpUp") as Class)); _addAnim("jump_down", (getDefinitionByName("AssetButtercupJumpDown") as Class)); _addAnim("climb", (getDefinitionByName("AssetButtercupClimb") as Class)); _addAnim("attack_left", (getDefinitionByName("AssetButtercupAttackLeft") as Class)); _addAnim("attack_right", (getDefinitionByName("AssetButtercupAttackRight") as Class)); _addAnim("jump_attack_right", (getDefinitionByName("AssetButtercupAttackJumpLeft") as Class)); _addAnim("jump_attack_left", (getDefinitionByName("AssetButtercupAttackJumpRight") as Class)); _addAnim("damage", (getDefinitionByName("AssetButtercupDamageMelee") as Class)); _addAnim("firedamage", (getDefinitionByName("AssetButtercupDamageFire") as Class)); _addAnim("aim", (getDefinitionByName("AssetButtercupAim") as Class)); _addAnim("throw", (getDefinitionByName("AssetButtercupThrow") as Class)); _addAnim("crouch", (getDefinitionByName("AssetButtercupCrouch") as Class)); _addAnim("crawl", (getDefinitionByName("AssetButtercupCrawl") as Class)); _addAnim("swingback", (getDefinitionByName("AssetButtercupSwingBack") as Class)); _addAnim("swingfore", (getDefinitionByName("AssetButtercupSwingFore") as Class)); _addAnim("hold", (getDefinitionByName("AssetButtercupHold") as Class)); _addAnim("climbcap", (getDefinitionByName("AssetButtercupClimbTop") as Class)); animate("idle"); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 73
//CharEffectHeatAsset (com.wwb.princessbride.fire_swamp.assets.CharEffectHeatAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class CharEffectHeatAsset extends GameAsset { public function CharEffectHeatAsset(){ _addAnim("idle", (getDefinitionByName("AssetEffectFireHeat") as Class)); animate("idle"); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 74
//CharEffectPoisonAsset (com.wwb.princessbride.fire_swamp.assets.CharEffectPoisonAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class CharEffectPoisonAsset extends GameAsset { public function CharEffectPoisonAsset(){ _addAnim("idle", (getDefinitionByName("AssetEffectPoison") as Class)); animate("idle"); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 75
//CharEffectShieldAsset (com.wwb.princessbride.fire_swamp.assets.CharEffectShieldAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class CharEffectShieldAsset extends GameAsset { public function CharEffectShieldAsset(){ _addAnim("idle", (getDefinitionByName("AssetEffectFireShield") as Class)); animate("idle"); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 76
//CharEffectSparkleAsset (com.wwb.princessbride.fire_swamp.assets.CharEffectSparkleAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class CharEffectSparkleAsset extends GameAsset { public function CharEffectSparkleAsset(){ _addAnim("idle", (getDefinitionByName("AssetEffectSparkle") as Class)); animate("idle"); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 77
//CharEffectWaterAsset (com.wwb.princessbride.fire_swamp.assets.CharEffectWaterAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class CharEffectWaterAsset extends GameAsset { public function CharEffectWaterAsset(){ _addAnim("idle", (getDefinitionByName("AssetEffectWater") as Class)); animate("idle"); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 78
//CheckpointAsset (com.wwb.princessbride.fire_swamp.assets.CheckpointAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class CheckpointAsset extends GameAsset { public function CheckpointAsset(){ _addAnim("idleon", (getDefinitionByName("AssetCheckpointIdleOn") as Class)); _addAnim("idleoff", (getDefinitionByName("AssetCheckpointIdleOff") as Class)); _addAnim("trigger", (getDefinitionByName("AssetCheckpointTrigger") as Class)); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 79
//CrumbsAsset (com.wwb.princessbride.fire_swamp.assets.CrumbsAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class CrumbsAsset extends GameAsset { public function CrumbsAsset(){ _addAnim("idle", (getDefinitionByName("AssetCrumbsIdle") as Class)); _addAnim("vanish", (getDefinitionByName("AssetCrumbsIdle") as Class)); animate("idle"); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 80
//CrumbsPileAsset (com.wwb.princessbride.fire_swamp.assets.CrumbsPileAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class CrumbsPileAsset extends GameAsset { public function CrumbsPileAsset(){ _addAnim("idle", (getDefinitionByName("AssetCrumbsProjectileIdle") as Class)); _addAnim("open", (getDefinitionByName("AssetCrumbsProjectileHit") as Class)); animate("idle"); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 81
//CrumbsProjectileAsset (com.wwb.princessbride.fire_swamp.assets.CrumbsProjectileAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class CrumbsProjectileAsset extends GameAsset { public function CrumbsProjectileAsset(){ _addAnim("idle", (getDefinitionByName("AssetCrumbsProjectileIdle") as Class)); _addAnim("hit", (getDefinitionByName("AssetCrumbsProjectileHit") as Class)); animate("idle"); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 82
//DewAsset (com.wwb.princessbride.fire_swamp.assets.DewAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class DewAsset extends GameAsset { public function DewAsset(){ _addAnim("idle", (getDefinitionByName("AssetDewIdle") as Class)); _addAnim("vanish", (getDefinitionByName("AssetDewVanish") as Class)); animate("idle"); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 83
//DewProjectileAsset (com.wwb.princessbride.fire_swamp.assets.DewProjectileAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class DewProjectileAsset extends GameAsset { public function DewProjectileAsset(){ _addAnim("idle", (getDefinitionByName("AssetDewProjectileIdle") as Class)); _addAnim("hit", (getDefinitionByName("AssetDewProjectileHit") as Class)); animate("idle"); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 84
//EffectCrumbParticleAsset (com.wwb.princessbride.fire_swamp.assets.EffectCrumbParticleAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class EffectCrumbParticleAsset extends GameAsset { public function EffectCrumbParticleAsset(){ _addAnim("idle", (getDefinitionByName("AssetCrumbParticle") as Class)); animate("idle"); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 85
//FireMossAsset (com.wwb.princessbride.fire_swamp.assets.FireMossAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class FireMossAsset extends GameAsset { public function FireMossAsset(){ _addAnim("hangon", (getDefinitionByName("AssetHangingFireMossOn") as Class)); _addAnim("hangoff", (getDefinitionByName("AssetHangingFireMossOff") as Class)); _addAnim("reston", (getDefinitionByName("AssetRestingFireMossOn") as Class)); _addAnim("restoff", (getDefinitionByName("AssetRestingFireMossOff") as Class)); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 86
//FireShieldAsset (com.wwb.princessbride.fire_swamp.assets.FireShieldAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class FireShieldAsset extends GameAsset { public function FireShieldAsset(){ _addAnim("idle", (getDefinitionByName("AssetFireShieldIdle") as Class)); _addAnim("vanish", (getDefinitionByName("AssetFireShieldVanish") as Class)); animate("idle"); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 87
//FireSpanAsset (com.wwb.princessbride.fire_swamp.assets.FireSpanAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class FireSpanAsset extends GameAsset { public function FireSpanAsset(){ _addAnim("small1", (getDefinitionByName("AssetFireSpanSmall1") as Class)); _addAnim("small2", (getDefinitionByName("AssetFireSpanSmall2") as Class)); _addAnim("small3", (getDefinitionByName("AssetFireSpanSmall3") as Class)); _addAnim("large1", (getDefinitionByName("AssetFireSpanLarge1") as Class)); _addAnim("large2", (getDefinitionByName("AssetFireSpanLarge2") as Class)); _addAnim("large3", (getDefinitionByName("AssetFireSpanLarge3") as Class)); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 88
//FireSpoutAsset (com.wwb.princessbride.fire_swamp.assets.FireSpoutAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class FireSpoutAsset extends GameAsset { public function FireSpoutAsset(){ _addAnim("idleOn", (getDefinitionByName("AssetFireSpoutIdleOn") as Class)); _addAnim("idleOff", (getDefinitionByName("AssetFireSpoutIdleOff") as Class)); _addAnim("on", (getDefinitionByName("AssetFireSpoutOn") as Class)); _addAnim("off", (getDefinitionByName("AssetFireSpoutOff") as Class)); animate("idleOn"); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 89
//FlyRousAsset (com.wwb.princessbride.fire_swamp.assets.FlyRousAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class FlyRousAsset extends GameAsset { public function FlyRousAsset(){ _addAnim("idle", (getDefinitionByName("AssetFlyRousFly") as Class)); _addAnim("pause", (getDefinitionByName("AssetFlyRousPause") as Class)); _addAnim("fly", (getDefinitionByName("AssetFlyRousFly") as Class)); _addAnim("dive", (getDefinitionByName("AssetFlyRousDive") as Class)); _addAnim("attack", (getDefinitionByName("AssetFlyRousAttack") as Class)); _addAnim("damage", (getDefinitionByName("AssetFlyRousDamage") as Class)); _addAnim("dead", (getDefinitionByName("AssetFlyRousDead") as Class)); animate("idle"); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 90
//GateAsset (com.wwb.princessbride.fire_swamp.assets.GateAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class GateAsset extends GameAsset { public function GateAsset(){ _addAnim("open", (getDefinitionByName("AssetGateOpen") as Class)); _addAnim("close", (getDefinitionByName("AssetGateClose") as Class)); _addAnim("idleOpen", (getDefinitionByName("AssetGateIdleOpen") as Class)); _addAnim("idleClose", (getDefinitionByName("AssetGateIdleClose") as Class)); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 91
//GemAsset (com.wwb.princessbride.fire_swamp.assets.GemAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class GemAsset extends GameAsset { public function GemAsset(){ _addAnim("idle1", (getDefinitionByName("AssetGemIdle") as Class)); _addAnim("vanish1", (getDefinitionByName("AssetGemVanish") as Class)); _addAnim("idle2", (getDefinitionByName("AssetGemTwoIdle") as Class)); _addAnim("vanish2", (getDefinitionByName("AssetGemTwoVanish") as Class)); _addAnim("idle3", (getDefinitionByName("AssetGemThreeIdle") as Class)); _addAnim("vanish3", (getDefinitionByName("AssetGemThreeVanish") as Class)); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 92
//GoalAsset (com.wwb.princessbride.fire_swamp.assets.GoalAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class GoalAsset extends GameAsset { public function GoalAsset(){ _addAnim("idle", (getDefinitionByName("AssetGoalIdle") as Class)); animate("idle"); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 93
//LifeAsset (com.wwb.princessbride.fire_swamp.assets.LifeAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class LifeAsset extends GameAsset { public function LifeAsset(){ _addAnim("idle", (getDefinitionByName("AssetLifeIdle") as Class)); _addAnim("vanish", (getDefinitionByName("AssetLifeVanish") as Class)); animate("idle"); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 94
//MultiplierAsset (com.wwb.princessbride.fire_swamp.assets.MultiplierAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class MultiplierAsset extends GameAsset { public function MultiplierAsset(){ _addAnim("idleTwo", (getDefinitionByName("AssetMultiplierIdleTwo") as Class)); _addAnim("idleFive", (getDefinitionByName("AssetMultiplierIdleFive") as Class)); _addAnim("idleTen", (getDefinitionByName("AssetMultiplierIdleTen") as Class)); _addAnim("vanishTwo", (getDefinitionByName("AssetMultiplierVanishTwo") as Class)); _addAnim("vanishFive", (getDefinitionByName("AssetMultiplierVanishFive") as Class)); _addAnim("vanishTen", (getDefinitionByName("AssetMultiplierVanishTen") as Class)); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 95
//PoisonSpanAsset (com.wwb.princessbride.fire_swamp.assets.PoisonSpanAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class PoisonSpanAsset extends GameAsset { public function PoisonSpanAsset(){ _addAnim("small1", (getDefinitionByName("AssetPoisonSpanSmall1") as Class)); _addAnim("small2", (getDefinitionByName("AssetPoisonSpanSmall2") as Class)); _addAnim("small3", (getDefinitionByName("AssetPoisonSpanSmall3") as Class)); _addAnim("large1", (getDefinitionByName("AssetPoisonSpanLarge1") as Class)); _addAnim("large2", (getDefinitionByName("AssetPoisonSpanLarge2") as Class)); _addAnim("large3", (getDefinitionByName("AssetPoisonSpanLarge3") as Class)); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 96
//PortalAsset (com.wwb.princessbride.fire_swamp.assets.PortalAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class PortalAsset extends GameAsset { public function PortalAsset(){ _addAnim("idleOn", (getDefinitionByName("AssetPortalIdleOn") as Class)); _addAnim("idleOff", (getDefinitionByName("AssetPortalIdleOff") as Class)); _addAnim("on", (getDefinitionByName("AssetPortalOn") as Class)); _addAnim("off", (getDefinitionByName("AssetPortalOff") as Class)); animate("idleOn"); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 97
//RousAsset (com.wwb.princessbride.fire_swamp.assets.RousAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class RousAsset extends GameAsset { public function RousAsset(){ _addAnim("idle", (getDefinitionByName("AssetRousIdle") as Class)); _addAnim("pause", (getDefinitionByName("AssetRousPause") as Class)); _addAnim("run", (getDefinitionByName("AssetRousRun") as Class)); _addAnim("walk", (getDefinitionByName("AssetRousWalk") as Class)); _addAnim("slide", (getDefinitionByName("AssetRousSlide") as Class)); _addAnim("attack", (getDefinitionByName("AssetRousAttack") as Class)); _addAnim("damage", (getDefinitionByName("AssetRousDamage") as Class)); _addAnim("dead", (getDefinitionByName("AssetRousDead") as Class)); _addAnim("eat", (getDefinitionByName("AssetRousEat") as Class)); animate("idle"); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 98
//ScoreEffectAsset (com.wwb.princessbride.fire_swamp.assets.ScoreEffectAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class ScoreEffectAsset extends GameAsset { public function ScoreEffectAsset(){ _addAnim("idle", (getDefinitionByName("AssetScoreEffect") as Class)); animate("idle"); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 99
//SpikeAsset (com.wwb.princessbride.fire_swamp.assets.SpikeAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class SpikeAsset extends GameAsset { public function SpikeAsset(){ _addAnim("idle", (getDefinitionByName("AssetSpikeIdle") as Class)); animate("idle"); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 100
//StickAsset (com.wwb.princessbride.fire_swamp.assets.StickAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class StickAsset extends GameAsset { public function StickAsset(){ _addAnim("idle", (getDefinitionByName("AssetStickIdle") as Class)); _addAnim("vanish", (getDefinitionByName("AssetStickVanish") as Class)); animate("idle"); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 101
//SwitchAsset (com.wwb.princessbride.fire_swamp.assets.SwitchAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class SwitchAsset extends GameAsset { public function SwitchAsset(){ _addAnim("leverup", (getDefinitionByName("AssetLeverUp") as Class)); _addAnim("leverdown", (getDefinitionByName("AssetLeverDown") as Class)); _addAnim("levertoup", (getDefinitionByName("AssetLeverToUp") as Class)); _addAnim("levertodown", (getDefinitionByName("AssetLeverToDown") as Class)); _addAnim("padup", (getDefinitionByName("AssetPadUp") as Class)); _addAnim("paddown", (getDefinitionByName("AssetPadDown") as Class)); _addAnim("padtoup", (getDefinitionByName("AssetPadToUp") as Class)); _addAnim("padtodown", (getDefinitionByName("AssetPadToDown") as Class)); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 102
//TimeAsset (com.wwb.princessbride.fire_swamp.assets.TimeAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class TimeAsset extends GameAsset { public function TimeAsset(){ _addAnim("idle", (getDefinitionByName("AssetTimeIdle") as Class)); _addAnim("vanish", (getDefinitionByName("AssetTimeVanish") as Class)); animate("idle"); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 103
//WaterItemAsset (com.wwb.princessbride.fire_swamp.assets.WaterItemAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class WaterItemAsset extends GameAsset { public function WaterItemAsset(){ _addAnim("idle", (getDefinitionByName("AssetWaterIdle") as Class)); _addAnim("vanish", (getDefinitionByName("AssetWaterVanish") as Class)); animate("idle"); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 104
//WaterSpanAsset (com.wwb.princessbride.fire_swamp.assets.WaterSpanAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class WaterSpanAsset extends GameAsset { public function WaterSpanAsset(){ _addAnim("small1", (getDefinitionByName("AssetWaterSpanSmall1") as Class)); _addAnim("small2", (getDefinitionByName("AssetWaterSpanSmall1") as Class)); _addAnim("small3", (getDefinitionByName("AssetWaterSpanSmall1") as Class)); _addAnim("large1", (getDefinitionByName("AssetWaterSpanLarge1") as Class)); _addAnim("large2", (getDefinitionByName("AssetWaterSpanLarge1") as Class)); _addAnim("large3", (getDefinitionByName("AssetWaterSpanLarge1") as Class)); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 105
//WestleyAsset (com.wwb.princessbride.fire_swamp.assets.WestleyAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class WestleyAsset extends GameAsset { public function WestleyAsset(){ _addAnim("idle", (getDefinitionByName("AssetWestleyIdle") as Class)); _addAnim("run", (getDefinitionByName("AssetWestleyRun") as Class)); _addAnim("slide", (getDefinitionByName("AssetWestleySlide") as Class)); _addAnim("edge", (getDefinitionByName("AssetWestleySlide") as Class)); _addAnim("jump_up", (getDefinitionByName("AssetWestleyJumpUp") as Class)); _addAnim("jump_down", (getDefinitionByName("AssetWestleyJumpDown") as Class)); _addAnim("climb", (getDefinitionByName("AssetWestleyClimb") as Class)); _addAnim("push", (getDefinitionByName("AssetWestleyPush") as Class)); _addAnim("attack_left", (getDefinitionByName("AssetWestleyAttackLeft") as Class)); _addAnim("attack_right", (getDefinitionByName("AssetWestleyAttackRight") as Class)); _addAnim("jump_attack_left", (getDefinitionByName("AssetWestleyAttackJumpLeft") as Class)); _addAnim("jump_attack_right", (getDefinitionByName("AssetWestleyAttackJumpRight") as Class)); _addAnim("damage", (getDefinitionByName("AssetWestleyDamageMelee") as Class)); _addAnim("firedamage", (getDefinitionByName("AssetWestleyDamageFire") as Class)); _addAnim("aim", (getDefinitionByName("AssetWestleyAim") as Class)); _addAnim("throw", (getDefinitionByName("AssetWestleyThrow") as Class)); _addAnim("swingback", (getDefinitionByName("AssetWestleySwingBack") as Class)); _addAnim("swingfore", (getDefinitionByName("AssetWestleySwingFore") as Class)); _addAnim("hold", (getDefinitionByName("AssetWestleyHold") as Class)); _addAnim("climbcap", (getDefinitionByName("AssetWestleyClimbTop") as Class)); animate("idle"); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 106
//VineAsset (com.wwb.princessbride.fire_swamp.assets.VineAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.paradise.assets.*; import flash.utils.*; public class VineAsset extends GameAsset { public function VineAsset(){ _addAnim("idle", (getDefinitionByName("AssetVineIdle") as Class)); _addAnim("coiled", (getDefinitionByName("AssetVineCoiled") as Class)); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 107
//VineLengthAsset (com.wwb.princessbride.fire_swamp.assets.VineLengthAsset) package com.wwb.princessbride.fire_swamp.assets { import com.workinman.lib.events.*; import flash.display.*; public class VineLengthAsset extends MovieClip { public static var EVENT_SET_LENGTH:String = "setLen"; public function VineLengthAsset(){ parent.addEventListener(EVENT_SET_LENGTH, _onSetLength); } private function _onSetLength(_arg1:EData):void{ _len(_arg1.data.len); } private function _len(_arg1:Number):void{ y = (-(height) + _arg1); } } }//package com.wwb.princessbride.fire_swamp.assets
Section 108
//BridgeData (com.wwb.princessbride.fire_swamp.data.gizmos.BridgeData) package com.wwb.princessbride.fire_swamp.data.gizmos { import com.wwb.princessbride.fire_swamp.data.surfaces.*; import com.wwb.princessbride.fire_swamp.world.entitys.*; import com.wwb.princessbride.fire_swamp.world.entitys.gizmos.*; public class BridgeData extends GizmoData { public var dir:String; public var isOpen:Boolean; public var color:uint; public var toggleEvent:String; public var startClosed:Boolean; private var _BRIDGE_Y_OFFSET:Number;// = 10 public function BridgeData(_arg1:XML, _arg2:SurfaceData){ _BRIDGE_Y_OFFSET = 10; super(_arg1, _arg2); y = (y + _BRIDGE_Y_OFFSET); dir = _arg1.attribute("dir"); startClosed = ((_arg1.attribute("closed") == "true")) ? true : false; isOpen = !(startClosed); toggleEvent = _arg1.attribute("toggleevent"); if (_arg1.attribute("color") == undefined){ color = 0; } else { color = uint(_arg1.attribute("color")); }; } override public function reconstruct(_arg1:FireSwampSprite):void{ super.reconstruct(_arg1); isOpen = Bridge(_arg1).isOpen; } } }//package com.wwb.princessbride.fire_swamp.data.gizmos
Section 109
//CheckpointData (com.wwb.princessbride.fire_swamp.data.gizmos.CheckpointData) package com.wwb.princessbride.fire_swamp.data.gizmos { import com.wwb.princessbride.fire_swamp.data.surfaces.*; import com.wwb.princessbride.fire_swamp.world.entitys.*; import com.wwb.princessbride.fire_swamp.world.entitys.gizmos.*; public class CheckpointData extends GizmoData { public var triggered:Boolean; public function CheckpointData(_arg1:XML, _arg2:SurfaceData){ triggered = false; super(_arg1, _arg2); } override public function reconstruct(_arg1:FireSwampSprite):void{ super.reconstruct(_arg1); triggered = Checkpoint(_arg1).isTriggered; } } }//package com.wwb.princessbride.fire_swamp.data.gizmos
Section 110
//FireMossData (com.wwb.princessbride.fire_swamp.data.gizmos.FireMossData) package com.wwb.princessbride.fire_swamp.data.gizmos { import com.wwb.princessbride.fire_swamp.*; import com.wwb.princessbride.fire_swamp.data.surfaces.*; import com.wwb.princessbride.fire_swamp.world.entitys.*; import com.wwb.princessbride.fire_swamp.world.entitys.gizmos.*; public class FireMossData extends GizmoData { public var hangOffset:Number; public var isBurning:Boolean; public var isHanging:Boolean; public function FireMossData(_arg1:XML, _arg2:SurfaceData){ super(_arg1, _arg2); isHanging = ((_arg1.attribute("hanging") == "true")) ? true : false; if (isHanging){ hangOffset = FireSwampConfig.unitsToPixels(Number(_arg1.attribute("hang"))); y = (y + hangOffset); }; isBurning = true; } override public function reconstruct(_arg1:FireSwampSprite):void{ super.reconstruct(_arg1); isBurning = FireMoss(_arg1).isBurning; } } }//package com.wwb.princessbride.fire_swamp.data.gizmos
Section 111
//FireSpoutData (com.wwb.princessbride.fire_swamp.data.gizmos.FireSpoutData) package com.wwb.princessbride.fire_swamp.data.gizmos { import com.wwb.princessbride.fire_swamp.data.surfaces.*; import com.wwb.princessbride.fire_swamp.world.entitys.*; public class FireSpoutData extends GizmoData { public var behavior:String; public var toggleEvent:String; public var starttime:Number; public var startBurning:Boolean; public var ontime:Number; public var offtime:Number; public function FireSpoutData(_arg1:XML, _arg2:SurfaceData){ super(_arg1, _arg2); behavior = _arg1.attribute("behavior"); if (behavior == "pulse"){ ontime = Number(_arg1.attribute("ontime")); offtime = Number(_arg1.attribute("offtime")); starttime = Number(_arg1.attribute("starttime")); startBurning = ((((starttime < ontime)) || ((starttime > offtime)))) ? true : false; } else { if (behavior == "constant"){ startBurning = ((_arg1.attribute("starton") == "false")) ? false : true; if (_arg1.attribute("toggleevent") != undefined){ toggleEvent = _arg1.attribute("toggleevent"); } else { toggleEvent = ""; }; //unresolved jump }; }; } override public function reconstruct(_arg1:FireSwampSprite):void{ super.reconstruct(_arg1); } } }//package com.wwb.princessbride.fire_swamp.data.gizmos
Section 112
//GateData (com.wwb.princessbride.fire_swamp.data.gizmos.GateData) package com.wwb.princessbride.fire_swamp.data.gizmos { import com.wwb.princessbride.fire_swamp.data.surfaces.*; import com.wwb.princessbride.fire_swamp.world.entitys.*; import com.wwb.princessbride.fire_swamp.world.entitys.gizmos.*; public class GateData extends GizmoData { public var dir:String; public var isOpen:Boolean; public var color:uint; public var toggleEvent:String; public var startClosed:Boolean; private var _GATE_Y_OFFSET:Number;// = 8 public function GateData(_arg1:XML, _arg2:SurfaceData){ _GATE_Y_OFFSET = 8; super(_arg1, _arg2); y = (y + _GATE_Y_OFFSET); startClosed = ((_arg1.attribute("closed") == "true")) ? true : false; isOpen = !(startClosed); toggleEvent = _arg1.attribute("toggleevent"); if (_arg1.attribute("color") == undefined){ color = 0; } else { color = uint(_arg1.attribute("color")); }; } override public function reconstruct(_arg1:FireSwampSprite):void{ super.reconstruct(_arg1); isOpen = Gate(_arg1).isOpen; } } }//package com.wwb.princessbride.fire_swamp.data.gizmos
Section 113
//GizmoData (com.wwb.princessbride.fire_swamp.data.gizmos.GizmoData) package com.wwb.princessbride.fire_swamp.data.gizmos { import com.wwb.princessbride.fire_swamp.*; import com.wwb.princessbride.fire_swamp.data.surfaces.*; import com.wwb.princessbride.fire_swamp.world.entitys.*; public class GizmoData implements IEntityData { public var orientation:String; public var offset:Number; public var x:Number; public var y:Number; public var type:String; public function GizmoData(_arg1:XML, _arg2:SurfaceData){ type = String(_arg1.attribute("type")); if (_arg1.attribute("orientation") != undefined){ orientation = _arg1.attribute("orientation"); } else { orientation = ""; }; if (_arg1.attribute("offset") != undefined){ offset = FireSwampConfig.unitsToPixels(Number(_arg1.attribute("offset"))); } else { offset = 0; }; if (orientation != ""){ switch (orientation){ case "right": x = (_arg2.x + _arg2.width); break; case "center": x = (_arg2.x + (_arg2.width / 2)); break; case "left": default: x = _arg2.x; break; }; } else { x = (_arg2.x + FireSwampConfig.unitsToPixels(Number(_arg1.attribute("offset")))); }; y = (_arg2.getYatX(x) + 1); } public function reconstruct(_arg1:FireSwampSprite):void{ x = _arg1.pos.x; y = _arg1.pos.y; } public function toString():String{ return ("[gizmo DATA] id"); } } }//package com.wwb.princessbride.fire_swamp.data.gizmos
Section 114
//GizmoDataLibrary (com.wwb.princessbride.fire_swamp.data.gizmos.GizmoDataLibrary) package com.wwb.princessbride.fire_swamp.data.gizmos { import com.wwb.princessbride.fire_swamp.data.surfaces.*; public class GizmoDataLibrary { public static function generateGizmoData(_arg1:XML, _arg2:SurfaceData):GizmoData{ switch (_arg1.attribute("type").toLowerCase()){ case "checkpoint": return (new CheckpointData(_arg1, _arg2)); case "firespout": return (new FireSpoutData(_arg1, _arg2)); case "firemoss": return (new FireMossData(_arg1, _arg2)); case "vine": return (new VineData(_arg1, _arg2)); case "swingvine": return (new SwingVineData(_arg1, _arg2)); case "switch": return (new SwitchData(_arg1, _arg2)); case "bridge": return (new BridgeData(_arg1, _arg2)); case "gate": return (new GateData(_arg1, _arg2)); case "portal": return (new PortalData(_arg1, _arg2)); case "spikes": return (new SpikeData(_arg1, _arg2)); case "multiswitch": return (new MultiSwitchData(_arg1, _arg2)); case "goal": return (new GoalData(_arg1, _arg2)); }; return (null); } } }//package com.wwb.princessbride.fire_swamp.data.gizmos
Section 115
//GoalData (com.wwb.princessbride.fire_swamp.data.gizmos.GoalData) package com.wwb.princessbride.fire_swamp.data.gizmos { import com.wwb.princessbride.fire_swamp.data.surfaces.*; public class GoalData extends GizmoData { public function GoalData(_arg1:XML, _arg2:SurfaceData){ super(_arg1, _arg2); } } }//package com.wwb.princessbride.fire_swamp.data.gizmos
Section 116
//MultiSwitchData (com.wwb.princessbride.fire_swamp.data.gizmos.MultiSwitchData) package com.wwb.princessbride.fire_swamp.data.gizmos { import com.wwb.princessbride.fire_swamp.data.surfaces.*; public class MultiSwitchData extends SwitchData { public function MultiSwitchData(_arg1:XML, _arg2:SurfaceData){ super(_arg1, _arg2); } } }//package com.wwb.princessbride.fire_swamp.data.gizmos
Section 117
//PortalData (com.wwb.princessbride.fire_swamp.data.gizmos.PortalData) package com.wwb.princessbride.fire_swamp.data.gizmos { import com.wwb.princessbride.fire_swamp.data.surfaces.*; public class PortalData extends GizmoData { public var id:String; public var toggleEvent:String; public var powerless:Boolean; public function PortalData(_arg1:XML, _arg2:SurfaceData){ super(_arg1, _arg2); id = _arg1.attribute("id"); if (_arg1.attribute("powerless") == undefined){ powerless = ((_arg1.attribute("powerless") == "true")) ? true : false; toggleEvent = _arg1.attribute("toggleevent"); } else { powerless = false; }; } } }//package com.wwb.princessbride.fire_swamp.data.gizmos
Section 118
//SpikeData (com.wwb.princessbride.fire_swamp.data.gizmos.SpikeData) package com.wwb.princessbride.fire_swamp.data.gizmos { import com.wwb.princessbride.fire_swamp.data.surfaces.*; public class SpikeData extends GizmoData { public function SpikeData(_arg1:XML, _arg2:SurfaceData){ super(_arg1, _arg2); } } }//package com.wwb.princessbride.fire_swamp.data.gizmos
Section 119
//SwingVineData (com.wwb.princessbride.fire_swamp.data.gizmos.SwingVineData) package com.wwb.princessbride.fire_swamp.data.gizmos { import com.wwb.princessbride.fire_swamp.data.surfaces.*; public class SwingVineData extends GizmoData { public var dir:String; public function SwingVineData(_arg1:XML, _arg2:SurfaceData){ super(_arg1, _arg2); dir = _arg1.attribute("dir"); } } }//package com.wwb.princessbride.fire_swamp.data.gizmos
Section 120
//SwitchData (com.wwb.princessbride.fire_swamp.data.gizmos.SwitchData) package com.wwb.princessbride.fire_swamp.data.gizmos { import com.wwb.princessbride.fire_swamp.data.surfaces.*; import com.wwb.princessbride.fire_swamp.world.entitys.*; import com.wwb.princessbride.fire_swamp.world.entitys.gizmos.*; public class SwitchData extends GizmoData { public var isHeldDown:Boolean; public var toggle:Boolean; public var isActive:Boolean; public var event:String; public var color:uint; public function SwitchData(_arg1:XML, _arg2:SurfaceData){ super(_arg1, _arg2); toggle = ((_arg1.attribute("toggle") == "true")) ? true : false; event = _arg1.attribute("event"); isActive = false; isHeldDown = false; if (_arg1.attribute("color") == undefined){ color = 0; } else { color = uint(_arg1.attribute("color")); }; } override public function reconstruct(_arg1:FireSwampSprite):void{ super.reconstruct(_arg1); if (toggle == false){ isActive = Switch(_arg1).isActive; isHeldDown = Switch(_arg1).isHeldDown; }; } } }//package com.wwb.princessbride.fire_swamp.data.gizmos
Section 121
//VineData (com.wwb.princessbride.fire_swamp.data.gizmos.VineData) package com.wwb.princessbride.fire_swamp.data.gizmos { import com.wwb.princessbride.fire_swamp.*; import com.wwb.princessbride.fire_swamp.data.surfaces.*; import com.wwb.princessbride.fire_swamp.world.entitys.*; import com.wwb.princessbride.fire_swamp.world.entitys.gizmos.*; public class VineData extends GizmoData { public var length:Number; public var coiled:Boolean; public function VineData(_arg1:XML, _arg2:SurfaceData){ super(_arg1, _arg2); length = FireSwampConfig.unitsToPixels(Number(_arg1.attribute("length"))); coiled = ((_arg1.attribute("coiled") == "true")) ? true : false; } override public function reconstruct(_arg1:FireSwampSprite):void{ super.reconstruct(_arg1); coiled = Vine(_arg1).isCoiled; } } }//package com.wwb.princessbride.fire_swamp.data.gizmos
Section 122
//CrumbsItemData (com.wwb.princessbride.fire_swamp.data.items.CrumbsItemData) package com.wwb.princessbride.fire_swamp.data.items { import com.wwb.princessbride.fire_swamp.data.surfaces.*; public class CrumbsItemData extends ItemData { public var noreset:Boolean; public function CrumbsItemData(_arg1:XML, _arg2:SurfaceData){ super(_arg1, _arg2); if (_arg1.attribute("noreset") == "true"){ noreset = true; } else { noreset = false; }; } } }//package com.wwb.princessbride.fire_swamp.data.items
Section 123
//DewItemData (com.wwb.princessbride.fire_swamp.data.items.DewItemData) package com.wwb.princessbride.fire_swamp.data.items { import com.wwb.princessbride.fire_swamp.data.surfaces.*; public class DewItemData extends ItemData { private var _FLOAT_HEIGHT:Number;// = 20 public var noreset:Boolean; public function DewItemData(_arg1:XML, _arg2:SurfaceData){ _FLOAT_HEIGHT = 20; super(_arg1, _arg2); if (_arg1.attribute("noreset") == "true"){ noreset = true; } else { noreset = false; }; y = (y - _FLOAT_HEIGHT); } } }//package com.wwb.princessbride.fire_swamp.data.items
Section 124
//FireShieldData (com.wwb.princessbride.fire_swamp.data.items.FireShieldData) package com.wwb.princessbride.fire_swamp.data.items { import com.wwb.princessbride.fire_swamp.data.surfaces.*; public class FireShieldData extends ItemData { private var _FLOAT_HEIGHT:Number;// = 20 public function FireShieldData(_arg1:XML, _arg2:SurfaceData){ _FLOAT_HEIGHT = 20; super(_arg1, _arg2); y = (y - _FLOAT_HEIGHT); } } }//package com.wwb.princessbride.fire_swamp.data.items
Section 125
//GemItemData (com.wwb.princessbride.fire_swamp.data.items.GemItemData) package com.wwb.princessbride.fire_swamp.data.items { import com.wwb.princessbride.fire_swamp.data.surfaces.*; public class GemItemData extends ItemData { private var _FLOAT_HEIGHT:Number;// = 20 public var value:Number; public function GemItemData(_arg1:XML, _arg2:SurfaceData){ _FLOAT_HEIGHT = 20; super(_arg1, _arg2); if (_arg1.attribute("value") != undefined){ value = Number(_arg1.attribute("value")); } else { value = 1; }; y = (y - _FLOAT_HEIGHT); } } }//package com.wwb.princessbride.fire_swamp.data.items
Section 126
//ItemData (com.wwb.princessbride.fire_swamp.data.items.ItemData) package com.wwb.princessbride.fire_swamp.data.items { import com.wwb.princessbride.fire_swamp.*; import com.wwb.princessbride.fire_swamp.data.surfaces.*; import com.wwb.princessbride.fire_swamp.world.entitys.*; import com.wwb.princessbride.fire_swamp.world.entitys.items.*; public class ItemData implements IEntityData { public var isConsumed:Boolean; public var x:Number; public var y:Number; public var type:String; public function ItemData(_arg1:XML, _arg2:SurfaceData){ var _local3:Number; var _local4:String; super(); type = String(_arg1.attribute("type")); if (_arg1.attribute("height") != undefined){ _local3 = Number(_arg1.attribute("height")); } else { _local3 = 0; }; if (_arg1.attribute("orientation") != undefined){ _local4 = _arg1.attribute("orientation"); } else { _local4 = ""; }; if (_local4 != ""){ switch (_local4){ case "right": x = (_arg2.x + _arg2.width); break; case "center": x = (_arg2.x + (_arg2.width / 2)); break; case "left": default: x = _arg2.x; break; }; } else { x = (_arg2.x + FireSwampConfig.unitsToPixels(Number(_arg1.attribute("offset")))); }; y = (_arg2.getYatX(x) - FireSwampConfig.unitsToPixels(_local3)); isConsumed = false; } public function reconstruct(_arg1:FireSwampSprite):void{ x = _arg1.pos.x; y = _arg1.pos.y; isConsumed = Item(_arg1).isConsumed; } public function toString():String{ return (((((("[Item DATA] type : " + type) + " , x : ") + x) + " , y : ") + y)); } } }//package com.wwb.princessbride.fire_swamp.data.items
Section 127
//ItemDataLibrary (com.wwb.princessbride.fire_swamp.data.items.ItemDataLibrary) package com.wwb.princessbride.fire_swamp.data.items { import com.wwb.princessbride.fire_swamp.data.surfaces.*; public class ItemDataLibrary { public static function generateItemData(_arg1:XML, _arg2:SurfaceData):ItemData{ switch (_arg1.attribute("type").toLowerCase()){ case "gem": return (new GemItemData(_arg1, _arg2)); case "water": return (new WaterItemData(_arg1, _arg2)); case "multiplier": case "mult": return (new MultiplierItemData(_arg1, _arg2)); case "life": return (new LifeItemData(_arg1, _arg2)); case "dew": return (new DewItemData(_arg1, _arg2)); case "crumbs": return (new CrumbsItemData(_arg1, _arg2)); case "stick": return (new StickItemData(_arg1, _arg2)); case "time": return (new TimeItemData(_arg1, _arg2)); case "shield": return (new FireShieldData(_arg1, _arg2)); }; return (null); } } }//package com.wwb.princessbride.fire_swamp.data.items
Section 128
//LifeItemData (com.wwb.princessbride.fire_swamp.data.items.LifeItemData) package com.wwb.princessbride.fire_swamp.data.items { import com.wwb.princessbride.fire_swamp.data.surfaces.*; public class LifeItemData extends ItemData { private var _FLOAT_HEIGHT:Number;// = 20 public function LifeItemData(_arg1:XML, _arg2:SurfaceData){ _FLOAT_HEIGHT = 20; super(_arg1, _arg2); y = (y - _FLOAT_HEIGHT); } } }//package com.wwb.princessbride.fire_swamp.data.items
Section 129
//MultiplierItemData (com.wwb.princessbride.fire_swamp.data.items.MultiplierItemData) package com.wwb.princessbride.fire_swamp.data.items { import com.wwb.princessbride.fire_swamp.data.surfaces.*; public class MultiplierItemData extends ItemData { private var _FLOAT_HEIGHT:Number;// = 20 public var value:Number; public function MultiplierItemData(_arg1:XML, _arg2:SurfaceData){ _FLOAT_HEIGHT = 20; super(_arg1, _arg2); if (_arg1.attribute("value") != undefined){ value = Number(_arg1.attribute("value")); } else { value = 1; }; y = (y - _FLOAT_HEIGHT); } } }//package com.wwb.princessbride.fire_swamp.data.items
Section 130
//StickItemData (com.wwb.princessbride.fire_swamp.data.items.StickItemData) package com.wwb.princessbride.fire_swamp.data.items { import com.wwb.princessbride.fire_swamp.data.surfaces.*; public class StickItemData extends ItemData { public var noreset:Boolean; public function StickItemData(_arg1:XML, _arg2:SurfaceData){ super(_arg1, _arg2); if (_arg1.attribute("noreset") == "true"){ noreset = true; } else { noreset = false; }; } } }//package com.wwb.princessbride.fire_swamp.data.items
Section 131
//TimeItemData (com.wwb.princessbride.fire_swamp.data.items.TimeItemData) package com.wwb.princessbride.fire_swamp.data.items { import com.wwb.princessbride.fire_swamp.data.surfaces.*; public class TimeItemData extends ItemData { private var _FLOAT_HEIGHT:Number;// = 20 public function TimeItemData(_arg1:XML, _arg2:SurfaceData){ _FLOAT_HEIGHT = 20; super(_arg1, _arg2); y = (y - _FLOAT_HEIGHT); } } }//package com.wwb.princessbride.fire_swamp.data.items
Section 132
//WaterItemData (com.wwb.princessbride.fire_swamp.data.items.WaterItemData) package com.wwb.princessbride.fire_swamp.data.items { import com.wwb.princessbride.fire_swamp.data.surfaces.*; public class WaterItemData extends ItemData { private var _FLOAT_HEIGHT:Number;// = 20 public function WaterItemData(_arg1:XML, _arg2:SurfaceData){ _FLOAT_HEIGHT = 20; super(_arg1, _arg2); y = (y - _FLOAT_HEIGHT); } } }//package com.wwb.princessbride.fire_swamp.data.items
Section 133
//FlyRousData (com.wwb.princessbride.fire_swamp.data.mobs.FlyRousData) package com.wwb.princessbride.fire_swamp.data.mobs { import com.wwb.princessbride.fire_swamp.*; import com.wwb.princessbride.fire_swamp.data.surfaces.*; import com.wwb.princessbride.fire_swamp.world.entitys.*; public class FlyRousData extends MobData { private const _MIN_FLY_HEIGHT:Number = 4; public var isAlive:Boolean; public var flyheight:Number; public var difficulty:Number; public function FlyRousData(_arg1:XML, _arg2:SurfaceData){ if (_arg1.attribute("difficulty") == undefined){ difficulty = 0; } else { difficulty = Number(_arg1.attribute("difficulty")); }; if (_arg1.attribute("height") == undefined){ flyheight = FireSwampConfig.unitsToPixels(_MIN_FLY_HEIGHT); } else { flyheight = FireSwampConfig.unitsToPixels(Number(_arg1.attribute("height"))); if (flyheight < _MIN_FLY_HEIGHT){ flyheight = FireSwampConfig.unitsToPixels(_MIN_FLY_HEIGHT); }; }; isAlive = true; super(_arg1, _arg2); y = (y - 40); } override public function reconstruct(_arg1:FireSwampSprite):void{ super.reconstruct(_arg1); isAlive = _arg1.isAlive; } override public function toString():String{ return (((((((("[FlyingRous DATA] type : " + type) + " , x : ") + x) + " , y : ") + y) + " , diff : ") + difficulty)); } } }//package com.wwb.princessbride.fire_swamp.data.mobs
Section 134
//MobData (com.wwb.princessbride.fire_swamp.data.mobs.MobData) package com.wwb.princessbride.fire_swamp.data.mobs { import com.wwb.princessbride.fire_swamp.*; import com.wwb.princessbride.fire_swamp.data.surfaces.*; import com.wwb.princessbride.fire_swamp.world.entitys.*; public class MobData implements IEntityData { public var x:Number; public var y:Number; public var type:String; public function MobData(_arg1:XML, _arg2:SurfaceData){ var _local3:String; super(); type = String(_arg1.attribute("type")); if (_arg1.attribute("orientation") != undefined){ _local3 = _arg1.attribute("orientation"); } else { _local3 = ""; }; if (_local3 != ""){ switch (_local3){ case "right": x = (_arg2.x + _arg2.width); break; case "center": x = (_arg2.x + (_arg2.width / 2)); break; case "left": default: x = _arg2.x; break; }; } else { x = (_arg2.x + FireSwampConfig.unitsToPixels(Number(_arg1.attribute("offset")))); }; y = _arg2.getYatX(x); } public function reconstruct(_arg1:FireSwampSprite):void{ x = _arg1.pos.x; y = _arg1.pos.y; } public function toString():String{ return (((((("[Mob DATA] type : " + type) + " , x : ") + x) + " , y : ") + y)); } } }//package com.wwb.princessbride.fire_swamp.data.mobs
Section 135
//MobDataLibrary (com.wwb.princessbride.fire_swamp.data.mobs.MobDataLibrary) package com.wwb.princessbride.fire_swamp.data.mobs { import com.wwb.princessbride.fire_swamp.data.surfaces.*; public class MobDataLibrary { public static function generateMobData(_arg1:XML, _arg2:SurfaceData):MobData{ switch (_arg1.attribute("type").toLowerCase()){ case "boulder": return (new MobData(_arg1, _arg2)); case "rous": return (new RousData(_arg1, _arg2)); case "flyingrous": return (new FlyRousData(_arg1, _arg2)); }; return (null); } } }//package com.wwb.princessbride.fire_swamp.data.mobs
Section 136
//RousData (com.wwb.princessbride.fire_swamp.data.mobs.RousData) package com.wwb.princessbride.fire_swamp.data.mobs { import com.wwb.princessbride.fire_swamp.data.surfaces.*; import com.wwb.princessbride.fire_swamp.world.entitys.*; public class RousData extends MobData { public var isAlive:Boolean; public var difficulty:Number; public function RousData(_arg1:XML, _arg2:SurfaceData){ if (_arg1.attribute("difficulty") == undefined){ difficulty = 0; } else { difficulty = Number(_arg1.attribute("difficulty")); }; isAlive = true; super(_arg1, _arg2); y = (y - 2); } override public function reconstruct(_arg1:FireSwampSprite):void{ super.reconstruct(_arg1); isAlive = _arg1.isAlive; } override public function toString():String{ return (((((((("[Rous DATA] type : " + type) + " , x : ") + x) + " , y : ") + y) + " , diff : ") + difficulty)); } } }//package com.wwb.princessbride.fire_swamp.data.mobs
Section 137
//PlayerData (com.wwb.princessbride.fire_swamp.data.players.PlayerData) package com.wwb.princessbride.fire_swamp.data.players { import com.wwb.princessbride.fire_swamp.*; import com.wwb.princessbride.fire_swamp.data.surfaces.*; import com.wwb.princessbride.fire_swamp.world.entitys.*; import com.wwb.princessbride.fire_swamp.world.entitys.mobs.players.*; public class PlayerData implements IEntityData { public var room:Number; public var x:Number; public var y:Number; public var id:String; public function PlayerData(_arg1:XML, _arg2:SurfaceData){ id = String(_arg1.attribute("id")); room = Number(_arg1.attribute("room")); x = (_arg2.x + FireSwampConfig.unitsToPixels(Number(_arg1.attribute("offset")))); y = _arg2.getYatX(x); } public function reconstruct(_arg1:FireSwampSprite):void{ var _local2:Player; _local2 = Player(_arg1); x = _local2.pos.x; y = _local2.pos.y; } public function toString():String{ return (((((((("[Player DATA] id : " + id) + " , room : ") + room) + " , x : ") + x) + " , y : ") + y)); } } }//package com.wwb.princessbride.fire_swamp.data.players
Section 138
//RoomData (com.wwb.princessbride.fire_swamp.data.rooms.RoomData) package com.wwb.princessbride.fire_swamp.data.rooms { import com.wwb.princessbride.fire_swamp.*; import com.wwb.princessbride.fire_swamp.data.surfaces.*; import com.wwb.princessbride.fire_swamp.data.mobs.*; public class RoomData { public var platforms:Array; private var _loop:Number; public var mobs:Array; public var pos:Number; public var timelimit:Number; public var ground:GroundData; private var _loopb:Number; public function RoomData(_arg1:XML){ var _local2:Number; var _local3:SurfaceData; super(); pos = Number(_arg1.attribute("pos")); _local2 = FireSwampConfig.roomToPixels(pos); if (_arg1.attribute("time") == undefined){ timelimit = 30; } else { timelimit = Number(_arg1.attribute("time")); }; ground = new GroundData(_arg1.ground[0], _local2); platforms = []; if (_arg1.platforms != undefined){ _loop = _arg1.platforms.platform.length(); while (_loop--) { platforms.push(new PlatformData(_arg1.platforms.platform[_loop], _local2)); }; }; mobs = []; if (_arg1.mobs != undefined){ _loop = _arg1.mobs.mob.length(); while (_loop--) { _local3 = _findPlatform(_arg1.mobs.mob[_loop].attribute("platform")); mobs.push(MobDataLibrary.generateMobData(_arg1.mobs.mob[_loop], _local3)); }; }; } public function getRousCount():Number{ var _local1:Number; var _local2:Number; _local1 = 0; _local2 = mobs.length; while (_local2--) { if ((((mobs[_local2].type == "rous")) || ((mobs[_local2].type == "flyingrous")))){ _local1++; }; }; return (_local1); } public function getPlatform(_arg1:String):SurfaceData{ return (_findPlatform(_arg1)); } private function _findPlatform(_arg1:String):SurfaceData{ if (_arg1 == "ground"){ return (ground); }; _loopb = platforms.length; while (_loopb--) { if (platforms[_loopb].id == _arg1){ return (platforms[_loopb]); }; }; return (null); } public function toString():String{ return (((((("[Room DATA] pos : " + pos) + " platforms : ") + platforms.length) + " mobs : ") + mobs.length)); } public function getGemCount(_arg1:Number):Number{ var _local2:Number; var _local3:Number; _local2 = ground.getGemCount(_arg1); _local3 = platforms.length; while (_local3--) { _local2 = (_local2 + platforms[_local3].getGemCount(_arg1)); }; return (_local2); } } }//package com.wwb.princessbride.fire_swamp.data.rooms
Section 139
//FireSpanData (com.wwb.princessbride.fire_swamp.data.spans.FireSpanData) package com.wwb.princessbride.fire_swamp.data.spans { public class FireSpanData extends SpanData { public function FireSpanData(_arg1:XML){ super(_arg1); } override public function get type():String{ return ("fire"); } override public function toString():String{ return (((("[FireSpan DATA] begin : " + begin) + " , end : ") + end)); } } }//package com.wwb.princessbride.fire_swamp.data.spans
Section 140
//GroundSpanData (com.wwb.princessbride.fire_swamp.data.spans.GroundSpanData) package com.wwb.princessbride.fire_swamp.data.spans { import com.wwb.princessbride.fire_swamp.*; public class GroundSpanData extends SpanData { public var height:Number; public function GroundSpanData(_arg1:XML){ super(_arg1); height = FireSwampConfig.unitsToPixels(Number(_arg1.attribute("height"))); } override public function toString():String{ return (((((("[groundSpan DATA] begin : " + begin) + " , end : ") + end) + " height : ") + height)); } override public function get type():String{ return ("ground"); } } }//package com.wwb.princessbride.fire_swamp.data.spans
Section 141
//PoisonSpanData (com.wwb.princessbride.fire_swamp.data.spans.PoisonSpanData) package com.wwb.princessbride.fire_swamp.data.spans { public class PoisonSpanData extends SpanData { public function PoisonSpanData(_arg1:XML){ super(_arg1); } override public function get type():String{ return ("poison"); } override public function toString():String{ return (((("[PoisonSpan DATA] begin : " + begin) + " , end : ") + end)); } } }//package com.wwb.princessbride.fire_swamp.data.spans
Section 142
//SpanData (com.wwb.princessbride.fire_swamp.data.spans.SpanData) package com.wwb.princessbride.fire_swamp.data.spans { import com.wwb.princessbride.fire_swamp.*; public class SpanData { public var begin:Number; public var end:Number; public function SpanData(_arg1:XML){ begin = FireSwampConfig.unitsToPixels(Math.abs(Number(_arg1.attribute("begin")))); end = FireSwampConfig.unitsToPixels(Math.abs(Number(_arg1.attribute("end")))); } public function get type():String{ return ("BASESPAN"); } public function toString():String{ return (((("[span DATA] begin : " + begin) + " , end : ") + end)); } } }//package com.wwb.princessbride.fire_swamp.data.spans
Section 143
//SpanDataLibrary (com.wwb.princessbride.fire_swamp.data.spans.SpanDataLibrary) package com.wwb.princessbride.fire_swamp.data.spans { public class SpanDataLibrary { public static function generateSpanData(_arg1:XML):SpanData{ switch (_arg1.attribute("type").toLowerCase()){ case "ground": return (new GroundSpanData(_arg1)); case "water": return (new WaterSpanData(_arg1)); case "poison": return (new PoisonSpanData(_arg1)); case "fire": return (new FireSpanData(_arg1)); }; return (null); } } }//package com.wwb.princessbride.fire_swamp.data.spans
Section 144
//WaterSpanData (com.wwb.princessbride.fire_swamp.data.spans.WaterSpanData) package com.wwb.princessbride.fire_swamp.data.spans { public class WaterSpanData extends SpanData { public function WaterSpanData(_arg1:XML){ super(_arg1); } override public function get type():String{ return ("water"); } override public function toString():String{ return (((("[WaterSpan DATA] begin : " + begin) + " , end : ") + end)); } } }//package com.wwb.princessbride.fire_swamp.data.spans
Section 145
//GroundData (com.wwb.princessbride.fire_swamp.data.surfaces.GroundData) package com.wwb.princessbride.fire_swamp.data.surfaces { import com.wwb.princessbride.fire_swamp.*; import com.wwb.princessbride.fire_swamp.world.entitys.*; public class GroundData extends SurfaceData { public function GroundData(_arg1:XML, _arg2:Number){ super(_arg1, _arg2); x = _arg2; y = (FireSwampConfig.roomBottom - FireSwampConfig.unitsToPixels(Number(_arg1.attribute("y")))); width = FireSwampConfig.roomWidth; id = "ground"; _generateGizmosAndSpans(_arg1); } override public function reconstruct(_arg1:FireSwampSprite):void{ super.reconstruct(_arg1); } override public function toString():String{ return (((((((("[ground DATA] : x : " + x) + " , y : ") + y) + " , gizmos : ") + gizmos.length) + " , spans : ") + spans.length)); } } }//package com.wwb.princessbride.fire_swamp.data.surfaces
Section 146
//PlatformData (com.wwb.princessbride.fire_swamp.data.surfaces.PlatformData) package com.wwb.princessbride.fire_swamp.data.surfaces { import com.wwb.princessbride.fire_swamp.*; import com.wwb.princessbride.fire_swamp.world.entitys.*; public class PlatformData extends SurfaceData { public var bottomCollision:Boolean; public function PlatformData(_arg1:XML, _arg2:Number){ super(_arg1, _arg2); x = (_arg2 + FireSwampConfig.unitsToPixels(Number(_arg1.attribute("x")))); y = (FireSwampConfig.roomBottom - FireSwampConfig.unitsToPixels(Number(_arg1.attribute("y")))); width = FireSwampConfig.unitsToPixels(Number(_arg1.attribute("width"))); bottomCollision = ((_arg1.attribute("bottomCollision") == "true")) ? true : false; _generateGizmosAndSpans(_arg1); } override public function reconstruct(_arg1:FireSwampSprite):void{ super.reconstruct(_arg1); } override public function toString():String{ return (((((((((("[platform DATA] id : " + id) + " , x : ") + x) + " , y : ") + y) + " , gizmos : ") + gizmos.length) + " , spans : ") + spans.length)); } } }//package com.wwb.princessbride.fire_swamp.data.surfaces
Section 147
//SurfaceData (com.wwb.princessbride.fire_swamp.data.surfaces.SurfaceData) package com.wwb.princessbride.fire_swamp.data.surfaces { import com.wwb.princessbride.fire_swamp.*; import com.wwb.princessbride.fire_swamp.world.entitys.*; import com.wwb.princessbride.fire_swamp.data.items.*; import com.wwb.princessbride.fire_swamp.data.gizmos.*; import com.wwb.princessbride.fire_swamp.data.spans.*; public class SurfaceData implements IEntityData { public var items:Array; private var _loop:Number; public var gizmos:Array; private var _width:Number; public var id:String; public var drawTiles:Boolean; public var appearance:String; public var spans:Array; private var _x:Number; private var _y:Number; public function SurfaceData(_arg1:XML, _arg2:Number){ if (_arg1.attribute("id") != undefined){ id = _arg1.attribute("id"); } else { id = ""; }; if (GameEngine.getInstance().getFlag(FireSwampConfig.FLAG_SHOW_TILES) == "true"){ drawTiles = true; } else { drawTiles = false; }; if (GameEngine.getInstance().getFlag(FireSwampConfig.FLAG_PINK_TILES) == "true"){ appearance = FireSwampConfig.DEBUG_TILESET; } else { if (_arg1.attribute("appearance") != undefined){ appearance = _arg1.attribute("appearance"); } else { appearance = FireSwampConfig.DEFAULT_TILESET; }; }; } public function reconstruct(_arg1:FireSwampSprite):void{ } public function set width(_arg1:Number):void{ _width = _arg1; } public function get width():Number{ return (_width); } public function get y():Number{ return (_y); } public function set y(_arg1:Number):void{ _y = _arg1; } protected function _generateGizmosAndSpans(_arg1:XML):void{ spans = []; if (_arg1.spans != undefined){ _loop = _arg1.spans.span.length(); while (_loop--) { spans.push(SpanDataLibrary.generateSpanData(_arg1.spans.span[_loop])); }; }; gizmos = []; if (_arg1.gizmos != undefined){ _loop = _arg1.gizmos.gizmo.length(); while (_loop--) { gizmos.push(GizmoDataLibrary.generateGizmoData(_arg1.gizmos.gizmo[_loop], this)); }; }; items = []; if (_arg1.items != undefined){ _loop = _arg1.items.item.length(); while (_loop--) { items.push(ItemDataLibrary.generateItemData(_arg1.items.item[_loop], this)); }; }; } public function getYatX(_arg1:Number):Number{ var _local2:Number; var _local3:Number; var _local4:Number; _arg1 = (_arg1 - x); _local2 = spans.length; _local3 = 100000; _local4 = y; while (_local2--) { if (spans[_local2].type == "ground"){ if ((((spans[_local2].begin < _arg1)) && ((spans[_local2].end > _arg1)))){ if (Math.abs((spans[_local2].begin - _arg1)) <= _local3){ if ((((Math.abs((spans[_local2].begin - _arg1)) == _local3)) && ((_local4 <= (y - spans[_local2].height))))){ } else { _local4 = (y - spans[_local2].height); _local3 = Math.abs((spans[_local2].begin - _arg1)); }; }; }; }; }; return ((_local4 - 1)); } public function toString():String{ return (((((((((("[surface DATA] id : " + id) + " , x : ") + x) + " , y : ") + y) + " , gizmos : ") + gizmos.length) + " , spans : ") + spans.length)); } public function set x(_arg1:Number):void{ _x = _arg1; } public function get x():Number{ return (_x); } public function getGemCount(_arg1:Number):Number{ var _local2:Number; var _local3:Number; _local2 = 0; _local3 = items.length; while (_local3--) { if ((items[_local3] is GemItemData)){ if (items[_local3].value == _arg1){ _local2++; }; }; }; return (_local2); } } }//package com.wwb.princessbride.fire_swamp.data.surfaces
Section 148
//BackgroundData (com.wwb.princessbride.fire_swamp.data.BackgroundData) package com.wwb.princessbride.fire_swamp.data { import flash.display.*; import flash.utils.*; public class BackgroundData { private var _linkage:String; private var _asset:DisplayObject; private var _id:String; public function BackgroundData(_arg1:String, _arg2:String){ _id = _arg1; _linkage = _arg2; _asset = new ((getDefinitionByName(_linkage) as Class)); } public function toString():String{ return (((("[Background Data] " + _id) + " , url : ") + _linkage)); } public function get linkage():String{ return (_linkage); } public function get asset():DisplayObject{ return (_asset); } public function get id():String{ return (_id); } } }//package com.wwb.princessbride.fire_swamp.data
Section 149
//BackgroundManager (com.wwb.princessbride.fire_swamp.data.BackgroundManager) package com.wwb.princessbride.fire_swamp.data { import flash.events.*; public class BackgroundManager extends EventDispatcher { private var _loop:Number; private var _sequentialDataLoadIndex:Number; private var _backgrounds:Array; public static var ON_ERROR:String = "onBackgroundManagerLoadError"; public static var ON_COMPLETE:String = "onBackgroundManagerLoadComplete"; public function BackgroundManager(){ _backgrounds = []; } public function cleanUp():void{ _sequentialDataLoadIndex = (_backgrounds.length + 1); _loop = _backgrounds.length; while (_loop--) { _backgrounds[_loop].cleanUp(); }; _backgrounds = []; } public function getBackgroundCountByID(_arg1:String, _arg2:String):Number{ _loop = _backgrounds.length; while (_loop--) { if (_backgrounds[_loop].id == _arg1){ return (_backgrounds[_loop].getLayerCount(_arg2)); }; }; return (-1); } public function add(_arg1:String, _arg2:XML, _arg3:String):void{ _backgrounds.push(new BackgroundStorage(_arg1, _arg2, _arg3)); } private function _findLayerByID(_arg1:String, _arg2:String, _arg3:Number):BackgroundData{ _loop = _backgrounds.length; while (_loop--) { if (_backgrounds[_loop].id == _arg1){ return (_backgrounds[_loop].getLayer(_arg2, _arg3)); }; }; return (null); } public function getBackgroundByID(_arg1:String, _arg2:String, _arg3:Number):BackgroundData{ return (_findLayerByID(_arg1, _arg2, _arg3)); } } }//package com.wwb.princessbride.fire_swamp.data
Section 150
//BackgroundStorage (com.wwb.princessbride.fire_swamp.data.BackgroundStorage) package com.wwb.princessbride.fire_swamp.data { import flash.events.*; public class BackgroundStorage extends EventDispatcher { private var _path:String; private var _backgroundIDs:Array; private var _backgrounds:Object; private var _isCleaned:Boolean; private var _id:String; public static var ON_ERROR:String = "onBackgroundStorageError"; public static var ON_DATA:String = "onBackgroundStorageData"; public function BackgroundStorage(_arg1:String, _arg2:XML, _arg3:String){ var _local4:Number; var _local5:Number; super(); _id = _arg1; _path = _arg3; _backgrounds = {}; _backgroundIDs = []; _isCleaned = false; _local5 = _arg2.children().length(); while (_local5--) { _backgroundIDs.push(_arg2.children()[_local5].name()); if (_backgrounds[_arg2.children()[_local5].name()] == undefined){ _backgrounds[_arg2.children()[_local5].name()] = []; }; _local4 = 0; while (_local4 < _arg2.children()[_local5].children().length()) { _backgrounds[_arg2.children()[_local5].name()].push(new BackgroundData(_arg2.children()[_local5].name(), String(_arg2.children()[_local5].children()[_local4]))); _local4++; }; if (_local4 == 1){ _backgrounds[_arg2.children()[_local5].name()].push(new BackgroundData(_arg2.children()[_local5].name(), String(_arg2.children()[_local5].children()[0]))); }; }; } public function cleanUp():void{ var _local1:Number; _isCleaned = true; _local1 = _backgroundIDs.length; while (_local1--) { _backgrounds[_backgroundIDs[_local1]] = null; }; _backgrounds = {}; _backgroundIDs = []; } public function get id():String{ return (_id); } public function getLayerCount(_arg1:String):Number{ return (_backgrounds[_arg1].length); } public function getLayer(_arg1:String, _arg2:Number):BackgroundData{ if (!_backgrounds.hasOwnProperty(_arg1)){ return (null); }; if (_arg2 > (_backgrounds[_arg1].length - 1)){ _arg2 = (Math.floor((_arg2 % _backgrounds[_arg1].length)) - 1); }; if (_arg2 < 0){ _arg2 = 0; }; return (_backgrounds[_arg1][_arg2]); } } }//package com.wwb.princessbride.fire_swamp.data
Section 151
//FireSwampLevelData (com.wwb.princessbride.fire_swamp.data.FireSwampLevelData) package com.wwb.princessbride.fire_swamp.data { import com.workinman.paradise.data.*; import com.wwb.princessbride.fire_swamp.data.rooms.*; import com.wwb.princessbride.fire_swamp.data.players.*; public class FireSwampLevelData extends BaseLevelData { private var _westley:PlayerData; private var _backgroundSet:String; private var _highestRoomPos:Number; private var _levelName:String; private var _rooms:Array; private var _buttercup:PlayerData; public function FireSwampLevelData(_arg1:LevelStorage){ var _local2:*; _local2 = _arg1.dataXML; _backgroundSet = _local2.attribute("background"); if (_local2.attribute("name") == undefined){ _levelName = _local2.attribute(""); } else { _levelName = _local2.attribute("name"); }; _rooms = []; _loop = _local2.rooms.room.length(); if (_loop == 0){ _rooms.push(new RoomData(_local2.rooms.room)); } else { while (_loop--) { _rooms.push(new RoomData(_local2.rooms.room[_loop])); }; }; _loop = _local2.players.player.length(); while (_loop--) { if (_local2.players.player[_loop].attribute("id") == "westley"){ _westley = new PlayerData(_local2.players.player[_loop], getRoom(_local2.players.player[_loop].attribute("room")).getPlatform(_local2.players.player[_loop].attribute("platform"))); } else { if (_local2.players.player[_loop].attribute("id") == "buttercup"){ _buttercup = new PlayerData(_local2.players.player[_loop], getRoom(_local2.players.player[_loop].attribute("room")).getPlatform(_local2.players.player[_loop].attribute("platform"))); }; }; }; _highestRoomPos = 0; _loop = _rooms.length; while (_loop--) { if (Number(_rooms[_loop].pos) > _highestRoomPos){ _highestRoomPos = Number(_rooms[_loop].pos); }; }; super(_arg1); } public function getLevelRousCount():Number{ var _local1:Number; var _local2:Number; _local1 = 0; _local2 = _rooms.length; while (_local2--) { _local1 = (_local1 + _rooms[_local2].getRousCount()); }; return (_local1); } public function getRoom(_arg1:Number):RoomData{ var _local2:Number; _local2 = _rooms.length; while (_local2--) { if (_rooms[_local2].pos == _arg1){ return (_rooms[_local2]); }; }; return (null); } public function get backgroundSet():String{ return (_backgroundSet); } public function getIsLastRoom(_arg1:Number):Boolean{ if (_arg1 == _highestRoomPos){ return (true); }; return (false); } public function getButtercupData():PlayerData{ return (_buttercup); } public function getRoomTimeLimit(_arg1:Number):Number{ return (getRoom(_arg1).timelimit); } public function getRoomRousCount(_arg1:Number):Number{ return (getRoom(_arg1).getRousCount()); } public function getWestleyData():PlayerData{ return (_westley); } public function toString():String{ return (("[Level] Rooms : " + _rooms.length)); } public function getLevelGemCount(_arg1:Number):Number{ var _local2:Number; var _local3:Number; _local2 = 0; _local3 = _rooms.length; while (_local3--) { _local2 = (_local2 + _rooms[_local3].getGemCount(_arg1)); }; return (_local2); } public function get levelName():String{ return (_levelName); } public function getRoomGemCount(_arg1:Number, _arg2:Number):Number{ return (getRoom(_arg1).getGemCount(_arg2)); } public function getIsValidRoom(_arg1:Number):Boolean{ if ((((_arg1 < 1)) || ((_arg1 > _highestRoomPos)))){ return (false); }; return (true); } public function getRoomCount():Number{ return (_rooms.length); } } }//package com.wwb.princessbride.fire_swamp.data
Section 152
//FireSwampLevelManager (com.wwb.princessbride.fire_swamp.data.FireSwampLevelManager) package com.wwb.princessbride.fire_swamp.data { import com.wwb.princessbride.fire_swamp.*; import com.workinman.paradise.data.*; public class FireSwampLevelManager extends LevelManager { override public function useDataLevels():void{ _levels.push(new LevelStorage(0, "")); _levels[(_levels.length - 1)].loadFromData(LevelDataClass1.getXML()); _levels.push(new LevelStorage(1, "")); _levels[(_levels.length - 1)].loadFromData(LevelDataClass2.getXML()); _levels.push(new LevelStorage(2, "")); _levels[(_levels.length - 1)].loadFromData(LevelDataClass3.getXML()); _levels.push(new LevelStorage(3, "")); _levels[(_levels.length - 1)].loadFromData(LevelDataClass4.getXML()); _levels.push(new LevelStorage(4, "")); _levels[(_levels.length - 1)].loadFromData(LevelDataClass5.getXML()); } } }//package com.wwb.princessbride.fire_swamp.data
Section 153
//TutorialManager (com.wwb.princessbride.fire_swamp.data.TutorialManager) package com.wwb.princessbride.fire_swamp.data { import flash.events.*; import com.workinman.paradise.*; import com.workinman.lib.events.*; import flash.display.*; import com.workinman.lib.net.*; import com.workinman.lib.utils.*; import flash.utils.*; import princessbride.*; import flash.ui.*; public class TutorialManager extends MovieClip { private const FILE_NAME:String = "tutorial.swf"; private var _container:MovieClip; private var _prevShown:Boolean; private var _isDisplayed:Boolean; private var _libPrev:SimpleButton; private var _libTutorial:MovieClip; private var _nextShown:Boolean; private var _libBackground:MovieClip; private var _url:String; private var _swf:DisplayObject; private var _useLibrary:Boolean; private var _libNext:SimpleButton; public static const ON_COMPLETE:String = "tutLoadComplete"; public static const ON_CLOSED:String = "tutClosed"; public function TutorialManager(_arg1:String, _arg2:MovieClip){ _url = _arg1; _container = _arg2; _isDisplayed = false; _useLibrary = false; } public function useLibraryTutorials():void{ _useLibrary = true; _libBackground = new AssetTutorialShell(); addChild(_libBackground); _nextShown = (_prevShown = false); _libNext = new PBButton("NEXT"); _libNext.addEventListener(MouseEvent.CLICK, _onNextClick); _libNext.x = 502; _libNext.y = 330; _libNext.addEventListener(MouseEvent.CLICK, _onNextClick); _libPrev = new PBButton("PREV"); _libPrev.addEventListener(MouseEvent.CLICK, _onPrevClick); _libPrev.x = 98; _libPrev.y = 330; _libPrev.addEventListener(MouseEvent.CLICK, _onPrevClick); } private function _onKey(_arg1:EData):void{ if ((((_arg1.data.keyCode == Keyboard.ENTER)) || ((_arg1.data.keyCode == Keyboard.SPACE)))){ _goNext(); }; } private function _goNext():void{ if (_libTutorial.currentFrame < _libTutorial.totalFrames){ _libTutorial.nextFrame(); _libTutorial.stop(); _showLibButtons(); } else { remove(); }; } private function _onSWF(_arg1:ESWF):void{ SWFLoader.removeEventListener(SWFLoader.ON_SWF, _onSWF); if (_arg1.success){ _swf = _arg1.swf; addChild(_swf); _swf.addEventListener(Event.COMPLETE, _onComplete); //unresolved jump }; dispatchEvent(new Event(ON_COMPLETE)); } private function _showLibButtons():void{ if (_libTutorial.currentFrame == 1){ if (_prevShown){ removeChild(_libPrev); _prevShown = false; }; } else { if (!_prevShown){ addChild(_libPrev); _prevShown = true; }; }; if (!_nextShown){ addChild(_libNext); _nextShown = true; }; } private function _goPrev():void{ if (_libTutorial.currentFrame > 1){ _libTutorial.prevFrame(); _libTutorial.stop(); }; _showLibButtons(); } private function _onPrevClick(_arg1:MouseEvent):void{ _goPrev(); } private function _onNextClick(_arg1:MouseEvent):void{ _goNext(); } public function displayAll():void{ if (_isDisplayed){ return; }; if (_useLibrary){ }; _isDisplayed = true; _container.addChild(this); dispatchEvent(new Event("AllTutorials", true)); } public function remove():void{ if (!_isDisplayed){ return; }; if (_useLibrary){ removeChild(_libTutorial); _libTutorial = null; WorkinDispatcher.getInstance().removeEventListener(ParadiseConfig.EVENT_KEY_UP, _onKey); }; _isDisplayed = false; _container.removeChild(this); dispatchEvent(new Event(ON_CLOSED)); if (_nextShown){ removeChild(_libNext); _nextShown = false; }; if (_prevShown){ removeChild(_libPrev); _prevShown = false; }; } public function display(_arg1:Number=1):void{ if (_isDisplayed){ return; }; _isDisplayed = true; _container.addChild(this); if (_useLibrary){ _libTutorial = new ((getDefinitionByName(("AssetTutorial" + _arg1)) as Class)); _libTutorial.x = 0; _libTutorial.y = 0; _libTutorial.gotoAndStop(1); addChild(_libTutorial); _showLibButtons(); WorkinDispatcher.getInstance().addEventListener(ParadiseConfig.EVENT_KEY_UP, _onKey); } else { dispatchEvent(new Event((("Level" + _arg1) + "Tutorial"), true)); }; } private function _onComplete(_arg1:Event):void{ remove(); } public function cleanUp():void{ remove(); try { removeChild(_swf); } catch(pError:Error) { }; _swf = null; } public function load():void{ if (_useLibrary){ return; }; SWFLoader.addEventListener(SWFLoader.ON_SWF, _onSWF); SWFLoader.load((_url + FILE_NAME)); } } }//package com.wwb.princessbride.fire_swamp.data
Section 154
//ETrigger (com.wwb.princessbride.fire_swamp.events.ETrigger) package com.wwb.princessbride.fire_swamp.events { import flash.events.*; public class ETrigger extends Event { private var _on:Boolean; public function ETrigger(_arg1:String, _arg2:Boolean){ super(_arg1, false, false); _on = _arg2; } public function get on():Boolean{ return (_on); } } }//package com.wwb.princessbride.fire_swamp.events
Section 155
//MultiEventObject (com.wwb.princessbride.fire_swamp.events.MultiEventObject) package com.wwb.princessbride.fire_swamp.events { public class MultiEventObject { private var _count:Number; private var _triggered:Number; private var _event:String; public function MultiEventObject(_arg1:String){ _event = _arg1; _count = 1; clearTriggers(); } public function decrement():void{ _count--; } public function get triggered():Number{ return (_triggered); } public function clearTriggers():void{ _triggered = 0; } public function toString():String{ return (((((("[MultiEventObject] " + _event) + " count : ") + _count) + " triggered : ") + _triggered)); } public function get isActivated():Boolean{ return ((_triggered >= _count)); } public function get count():Number{ return (_count); } public function increment():void{ _count++; } public function detrigger():void{ _triggered--; } public function get event():String{ return (_event); } public function trigger():void{ _triggered++; } } }//package com.wwb.princessbride.fire_swamp.events
Section 156
//Bonus (com.wwb.princessbride.fire_swamp.ui.interfaces.Bonus) package com.wwb.princessbride.fire_swamp.ui.interfaces { import flash.display.*; import flash.text.*; public class Bonus extends MovieClip { public var bonus_txt:TextField; public var txt:TextField; public function Bonus(){ txt.text = ""; bonus_txt.text = ""; } public function show(_arg1:String, _arg2:String):void{ txt.text = _arg1; bonus_txt.text = _arg2; } } }//package com.wwb.princessbride.fire_swamp.ui.interfaces
Section 157
//ButtercupSelectButton (com.wwb.princessbride.fire_swamp.ui.interfaces.ButtercupSelectButton) package com.wwb.princessbride.fire_swamp.ui.interfaces { import com.wwb.princessbride.fire_swamp.*; import flash.events.*; import com.workinman.lib.events.*; import com.workinman.lib.utils.*; public class ButtercupSelectButton extends CharacterSelectButton { public function ButtercupSelectButton(){ x = 341; y = 609; } override protected function _click():void{ if (((_isSelected) || (!(_isEnabled)))){ return; }; WorkinDispatcher.getInstance().dispatchEvent(new Event(FireSwampConfig.UI_EVENT_BUTTERCUP_CLICK)); } override protected function _onCharacterChange(_arg1:EData){ if (_arg1.data.player.character == "buttercup"){ select(); } else { deselect(); }; } } }//package com.wwb.princessbride.fire_swamp.ui.interfaces
Section 158
//ButtonBuyNow (com.wwb.princessbride.fire_swamp.ui.interfaces.ButtonBuyNow) package com.wwb.princessbride.fire_swamp.ui.interfaces { import com.wwb.princessbride.fire_swamp.*; import flash.events.*; import com.workinman.lib.utils.*; import com.workinman.lib.display.*; public class ButtonBuyNow extends WorkinButton { public function ButtonBuyNow():void{ } override protected function _click():void{ super._click(); disable(); WorkinDispatcher.getInstance().dispatchEvent(new Event(FireSwampConfig.EVENT_BUY_NOW)); } } }//package com.wwb.princessbride.fire_swamp.ui.interfaces
Section 159
//ButtonSummaryComplete (com.wwb.princessbride.fire_swamp.ui.interfaces.ButtonSummaryComplete) package com.wwb.princessbride.fire_swamp.ui.interfaces { import com.wwb.princessbride.fire_swamp.*; import flash.events.*; import com.workinman.lib.utils.*; import com.workinman.lib.display.*; public class ButtonSummaryComplete extends WorkinButton { public function ButtonSummaryComplete():void{ } override protected function _click():void{ super._click(); disable(); WorkinDispatcher.getInstance().dispatchEvent(new Event(FireSwampConfig.EVENT_CLOSE_SUMMARY)); } } }//package com.wwb.princessbride.fire_swamp.ui.interfaces
Section 160
//BuyNowManager (com.wwb.princessbride.fire_swamp.ui.interfaces.BuyNowManager) package com.wwb.princessbride.fire_swamp.ui.interfaces { public class BuyNowManager extends SummaryWindow { public function BuyNowManager(){ addFrameScript(35, frame36); super(); } function frame36(){ stop(); } } }//package com.wwb.princessbride.fire_swamp.ui.interfaces
Section 161
//CharacterSelectButton (com.wwb.princessbride.fire_swamp.ui.interfaces.CharacterSelectButton) package com.wwb.princessbride.fire_swamp.ui.interfaces { import com.wwb.princessbride.fire_swamp.*; import flash.events.*; import com.workinman.lib.events.*; import flash.display.*; import com.workinman.lib.utils.*; import flash.filters.*; public class CharacterSelectButton extends MovieClip { protected var _isDown:Boolean; protected var _isEnabled:Boolean; protected var _isOver:Boolean; protected var _isDrawn:Boolean; protected var _isSelected:Boolean; public function CharacterSelectButton(){ addEventListener(Event.ADDED_TO_STAGE, _onDrawn); addEventListener(Event.REMOVED_FROM_STAGE, _onRemoved); WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.EVENT_PLAYER_CHANGE, _onCharacterChange); buttonMode = true; mouseEnabled = true; mouseChildren = false; useHandCursor = true; _isOver = false; _isDown = false; _isSelected = false; _isEnabled = true; } protected function _onRemoved(_arg1:Event):void{ _removeEventListeners(); _isDrawn = false; } protected function select():void{ _isSelected = true; updateDisplay(); } private function _onOverEvent(_arg1:MouseEvent):void{ _onOver(); } private function _removeEventListeners():void{ if (_isDown){ GameEngine.getInstance().timeline.removeEventListener(MouseEvent.MOUSE_UP, _onUpEvent); }; removeEventListener(MouseEvent.MOUSE_OVER, _onOverEvent); removeEventListener(MouseEvent.MOUSE_OUT, _onOutEvent); removeEventListener(MouseEvent.MOUSE_DOWN, _onDownEvent); } private function _addEventListeners():void{ addEventListener(MouseEvent.MOUSE_OVER, _onOverEvent); addEventListener(MouseEvent.MOUSE_OUT, _onOutEvent); addEventListener(MouseEvent.MOUSE_DOWN, _onDownEvent); } protected function _onDown():void{ _isDown = true; if (!_isDrawn){ return; }; updateDisplay(); GameEngine.getInstance().timeline.addEventListener(MouseEvent.MOUSE_UP, _onUpEvent); } public function reset():void{ } public function blur():void{ filters = [new BlurFilter(7, 7)]; } private function _onUpEvent(_arg1:MouseEvent):void{ _onUp(); } public function unblur():void{ filters = []; } private function _onOutEvent(_arg1:MouseEvent):void{ _onOut(); } protected function _click():void{ } private function _onDownEvent(_arg1:MouseEvent):void{ _onDown(); } protected function _onOver():void{ _isOver = true; updateDisplay(); } private function _testMouseOver():Boolean{ if (!_isDrawn){ return (false); }; if (hitTestPoint(GameEngine.getInstance().mousePoint.x, GameEngine.getInstance().mousePoint.y, true)){ return (true); }; return (false); } public function enable():void{ if (_isEnabled){ return; }; _isEnabled = true; filters = []; } protected function updateDisplay():void{ if (_isSelected){ gotoAndStop(1); return; }; if (((_isDown) || (_isOver))){ gotoAndStop(3); } else { gotoAndStop(2); }; } protected function deselect():void{ _isSelected = false; updateDisplay(); } protected function _onDrawn(_arg1:Event):void{ _isDrawn = true; _isOver = _testMouseOver(); _addEventListeners(); updateDisplay(); } protected function _onUp():void{ if (_isDown){ GameEngine.getInstance().timeline.removeEventListener(MouseEvent.MOUSE_UP, _onUpEvent); _isDown = false; if (_testMouseOver()){ _click(); }; updateDisplay(); }; } public function cleanUp():void{ _removeEventListeners(); removeEventListener(Event.ADDED_TO_STAGE, _onDrawn); removeEventListener(Event.REMOVED_FROM_STAGE, _onRemoved); WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.EVENT_PLAYER_CHANGE, _onCharacterChange); } protected function _onCharacterChange(_arg1:EData){ } public function disable():void{ if (!_isEnabled){ return; }; _isEnabled = false; } protected function _onOut():void{ _isOver = false; updateDisplay(); } } }//package com.wwb.princessbride.fire_swamp.ui.interfaces
Section 162
//ExitManager (com.wwb.princessbride.fire_swamp.ui.interfaces.ExitManager) package com.wwb.princessbride.fire_swamp.ui.interfaces { import com.wwb.princessbride.fire_swamp.*; import flash.events.*; import flash.display.*; import com.workinman.lib.utils.*; public class ExitManager extends MovieClip { public var btnContinue:SimpleButton; private var _isDrawn:Boolean; private var _timeline:MovieClip; public var btnKeepPlaying:SimpleButton; public static const ON_CLOSED:String = "onExitManClosed"; public function ExitManager(){ _isDrawn = false; if (GameState.getInstance().getConfigOption("browserBuild") == "true"){ return; }; btnKeepPlaying.addEventListener(MouseEvent.CLICK, _onKeepPlayingClick); btnContinue.addEventListener(MouseEvent.CLICK, _onContinueClick); } private function _onContinueClick(_arg1:MouseEvent):void{ WorkinDispatcher.getInstance().dispatchEvent(new Event(FireSwampConfig.SHELL_OUTRO)); } public function remove():void{ if (!_isDrawn){ return; }; _timeline.removeChild(this); _isDrawn = false; dispatchEvent(new Event(ON_CLOSED)); } public function assignParent(_arg1:MovieClip):void{ _timeline = _arg1; } public function get isDrawn():Boolean{ return (_isDrawn); } private function _onKeepPlayingClick(_arg1:MouseEvent):void{ remove(); } public function cleanUp():void{ remove(); } public function show():void{ if (_isDrawn){ return; }; _timeline.addChild(this); _isDrawn = true; } } }//package com.wwb.princessbride.fire_swamp.ui.interfaces
Section 163
//FireSwampTextCounter (com.wwb.princessbride.fire_swamp.ui.interfaces.FireSwampTextCounter) package com.wwb.princessbride.fire_swamp.ui.interfaces { import flash.display.*; import com.workinman.lib.display.*; public class FireSwampTextCounter extends TextCounter { public var bonus:MovieClip; public function showBonus(_arg1:Number):void{ bonus.txt_mc.txt.text = ("+" + String(_arg1)); bonus.gotoAndPlay("in"); } public function get isCounting():Boolean{ return (_isCounting); } } }//package com.wwb.princessbride.fire_swamp.ui.interfaces
Section 164
//GameScoreSummary (com.wwb.princessbride.fire_swamp.ui.interfaces.GameScoreSummary) package com.wwb.princessbride.fire_swamp.ui.interfaces { import com.wwb.princessbride.fire_swamp.*; import flash.events.*; import flash.display.*; import com.workinman.lib.utils.*; import princessbride.*; public class GameScoreSummary extends SummaryWindow { public var btnContinue:SimpleButton; public var total:FireSwampTextCounter; public function GameScoreSummary(){ total.text = String((GameState.getInstance().baseScore + GameState.getInstance().score.currentGameTotal)); btnContinue = new PBButton("PLAY OUTRO"); btnContinue.addEventListener(MouseEvent.CLICK, _onContinueClick); btnContinue.x = 519; btnContinue.y = 564; addChild(btnContinue); btnContinue.addEventListener(MouseEvent.CLICK, _onContinueClick); } private function _onContinueClick(_arg1:MouseEvent):void{ WorkinDispatcher.getInstance().dispatchEvent(new Event(FireSwampConfig.SHELL_OUTRO)); } } }//package com.wwb.princessbride.fire_swamp.ui.interfaces
Section 165
//GemDisplay (com.wwb.princessbride.fire_swamp.ui.interfaces.GemDisplay) package com.wwb.princessbride.fire_swamp.ui.interfaces { import com.wwb.princessbride.fire_swamp.*; import flash.events.*; import com.workinman.lib.events.*; import flash.display.*; import com.workinman.lib.utils.*; import flash.text.*; import com.workinman.paradise.ui.interfaces.*; public class GemDisplay extends BaseInterface { public var gem1circle:MovieClip; public var gem2circle:MovieClip; private var _isDrawn:Boolean; private var _state:GameState; public var gem3circle:MovieClip; public var txt1:TextField; public var gem1:MovieClip; public var gem2:MovieClip; public var txt2:TextField; public var txt3:TextField; public var gem3:MovieClip; public function GemDisplay(){ x = 20; y = 676; _isDrawn = false; _state = GameState.getInstance(); super(); } private function _onRemoved(_arg1:Event):void{ _isDrawn = false; } override protected function _removeEventListeners():void{ WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.UI_GEMS_UPDATE, _onUpdate); removeEventListener(Event.ADDED_TO_STAGE, _onDrawn); removeEventListener(Event.REMOVED_FROM_STAGE, _onRemoved); super._removeEventListeners(); } override protected function _addEventListeners():void{ WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.UI_GEMS_UPDATE, _onUpdate); addEventListener(Event.ADDED_TO_STAGE, _onDrawn); addEventListener(Event.REMOVED_FROM_STAGE, _onRemoved); super._addEventListeners(); } public function reset():void{ } private function _hideGem(_arg1:MovieClip, _arg2:MovieClip):void{ _arg1.visible = false; _arg2.visible = false; } public function updateDisplay(_arg1:Number=0):void{ if (!_isDrawn){ return; }; if (_arg1 > 0){ this[("gem" + _arg1)].gotoAndPlay("spin"); this[("gem" + _arg1)].sparkle.gotoAndPlay(2); }; if (_state.purplegem.availableThisRoom){ _showGem(gem1, gem1circle); txt1.text = String(_state.purplegem.currentRoomTotal); } else { _hideGem(gem1, gem1circle); txt1.text = ""; }; if (_state.greengem.availableThisRoom){ _showGem(gem2, gem2circle); txt2.text = String(_state.greengem.currentRoomTotal); } else { _hideGem(gem2, gem2circle); txt2.text = ""; }; if (_state.bluegem.availableThisRoom){ _showGem(gem3, gem3circle); txt3.text = String(_state.bluegem.currentRoomTotal); } else { _hideGem(gem3, gem3circle); txt3.text = ""; }; } private function _onDrawn(_arg1:Event):void{ _isDrawn = true; gem1.gotoAndStop("idle"); gem2.gotoAndStop("idle"); gem3.gotoAndStop("idle"); updateDisplay(); } private function _showGem(_arg1:MovieClip, _arg2:MovieClip):void{ _arg1.visible = true; _arg2.visible = true; } private function _onUpdate(_arg1:EData):void{ updateDisplay(_arg1.data.gem); } } }//package com.wwb.princessbride.fire_swamp.ui.interfaces
Section 166
//GenericScoreSummary (com.wwb.princessbride.fire_swamp.ui.interfaces.GenericScoreSummary) package com.wwb.princessbride.fire_swamp.ui.interfaces { import com.wwb.princessbride.fire_swamp.*; import flash.events.*; import com.workinman.lib.sound.*; import com.workinman.paradise.*; import com.workinman.lib.events.*; import com.workinman.lib.utils.*; import com.workinman.lib.display.*; import flash.ui.*; public class GenericScoreSummary extends SummaryWindow { public var bonus4:Bonus; public var bonus2:Bonus; public var green:FireSwampTextCounter; public var bonus3:Bonus; protected var _removed:Boolean; public var total:FireSwampTextCounter; public var blue:FireSwampTextCounter; protected var _state:GameState; protected var _totalScore:Number; public var rous:FireSwampTextCounter; protected var _step:Number; public var purple:FireSwampTextCounter; public var time:FireSwampTextCounter; public var bonus1:Bonus; public function GenericScoreSummary(){ _state = GameState.getInstance(); _setInitialScore(); _removed = false; total.text = String(_totalScore); purple.isPercent = true; green.isPercent = true; blue.isPercent = true; rous.isPercent = true; purple.countRate = 100; green.countRate = 100; blue.countRate = 100; rous.countRate = 100; total.countRate = 1900; if (GameState.getInstance().getConfigOption("browserBuild") == "true"){ y = (y + 30); }; _step = 1; purple.addEventListener(TextCounter.COMPLETE, _onPurpleComplete); _populatePurple(); WorkinDispatcher.getInstance().addEventListener(ParadiseConfig.EVENT_KEY_UP, _onKeyUp); } protected function _setInitialScore():void{ _totalScore = _state.score.room; } protected function _onRousComplete(_arg1:Event):void{ rous.removeEventListener(TextCounter.COMPLETE, _onRousComplete); _stopCountUpSound(); _nextStep(); } protected function _playCountUpSound():void{ GlobalSound.getInstance().loopSound("scoreCount"); } protected function _populateBlue():void{ blue.to(_state.bluegem.percentRoom); _playCountUpSound(); } protected function _addBonus(_arg1:Number, _arg2:FireSwampTextCounter):void{ _totalScore = (_totalScore + _arg1); total.to(_totalScore); _arg2.showBonus(_arg1); GlobalSound.getInstance().playSound("scoreBonus"); } private function _onKeyUp(_arg1:EData):void{ if ((((_arg1.data.keyCode == Keyboard.SPACE)) || ((_arg1.data.keyCode == Keyboard.ENTER)))){ WorkinDispatcher.getInstance().removeEventListener(ParadiseConfig.EVENT_KEY_UP, _onKeyUp); WorkinDispatcher.getInstance().dispatchEvent(new Event(FireSwampConfig.EVENT_CLOSE_SUMMARY)); }; } protected function _populateRous():void{ rous.to(_state.rous.percentRoom); _playCountUpSound(); } protected function _onPurpleComplete(_arg1:Event):void{ purple.removeEventListener(TextCounter.COMPLETE, _onPurpleComplete); _stopCountUpSound(); _nextStep(); } protected function _onBlueComplete(_arg1:Event):void{ blue.removeEventListener(TextCounter.COMPLETE, _onBlueComplete); _stopCountUpSound(); _nextStep(); } protected function _populateGreen():void{ green.to(_state.greengem.percentRoom); _playCountUpSound(); } protected function _stopCountUpSound():void{ GlobalSound.getInstance().stopSound("scoreCount"); } override protected function _onRemove(_arg1:Event):void{ var pEvent = _arg1; super._onRemove(pEvent); try { WorkinDispatcher.getInstance().removeEventListener(ParadiseConfig.EVENT_KEY_DOWN, _onKeyUp); } catch(pError:Error) { }; _removed = true; _stopCountUpSound(); if (_step == 1){ purple.removeEventListener(TextCounter.COMPLETE, _onPurpleComplete); }; if (_step == 2){ green.removeEventListener(TextCounter.COMPLETE, _onGreenComplete); }; if (_step == 3){ blue.removeEventListener(TextCounter.COMPLETE, _onBlueComplete); }; if (_step == 4){ rous.removeEventListener(TextCounter.COMPLETE, _onRousComplete); }; if (_step == 5){ time.removeEventListener(TextCounter.COMPLETE, _onTimeComplete); }; if (_step == 6){ total.removeEventListener(TextCounter.COMPLETE, _onTotalComplete); }; } protected function _onGreenComplete(_arg1:Event):void{ green.removeEventListener(TextCounter.COMPLETE, _onGreenComplete); _stopCountUpSound(); _nextStep(); } protected function _populatePurple():void{ purple.to(_state.purplegem.percentRoom); _playCountUpSound(); } protected function _populateTime():void{ time.to(((_state.roomTime < 200)) ? _state.roomTime : 200); _playCountUpSound(); } protected function _nextStep():void{ if (_removed){ return; }; _step++; switch (_step){ case 2: if (!_state.greengem.availableThisRoom){ _nextStep(); return; }; green.addEventListener(TextCounter.COMPLETE, _onGreenComplete); _populateGreen(); break; case 3: if (!_state.bluegem.availableThisRoom){ _nextStep(); return; }; blue.addEventListener(TextCounter.COMPLETE, _onBlueComplete); _populateBlue(); break; case 4: if (!_state.rous.availableThisRoom){ _nextStep(); return; }; rous.addEventListener(TextCounter.COMPLETE, _onRousComplete); _populateRous(); break; case 5: time.addEventListener(TextCounter.COMPLETE, _onTimeComplete); _populateTime(); break; case 6: if (total.isCounting){ _playCountUpSound(); total.addEventListener(TextCounter.COMPLETE, _onTotalComplete); } else { _step++; }; break; }; } protected function _onTotalComplete(_arg1:Event):void{ total.removeEventListener(TextCounter.COMPLETE, _onTotalComplete); _stopCountUpSound(); _step++; } protected function _onTimeComplete(_arg1:Event):void{ time.removeEventListener(TextCounter.COMPLETE, _onTimeComplete); _stopCountUpSound(); if (_state.roomTime > 200){ time.txt.appendText("+"); }; _nextStep(); } } }//package com.wwb.princessbride.fire_swamp.ui.interfaces
Section 167
//HeatMeter (com.wwb.princessbride.fire_swamp.ui.interfaces.HeatMeter) package com.wwb.princessbride.fire_swamp.ui.interfaces { import com.wwb.princessbride.fire_swamp.*; import flash.events.*; import com.workinman.lib.events.*; import flash.display.*; import com.workinman.lib.utils.*; import com.workinman.paradise.ui.interfaces.*; public class HeatMeter extends BaseInterface { private var _MAX_FRAME:Number;// = 100 private var _currentFrame:Number; public var meter_fill:MovieClip; private var _isAnimating:Boolean; private var _targetFrame:Number; private static var _ANIMATION_RATE:Number = 40; public function HeatMeter(){ _MAX_FRAME = 100; x = 652; y = 696; _isAnimating = false; if (!isNaN(GameState.getInstance().heat)){ _currentFrame = (_targetFrame = _calculateTargetFrame()); } else { _currentFrame = (_targetFrame = _MAX_FRAME); }; super(); } private function _calculateTargetFrame():Number{ return ((100 - Math.floor(Math.round(((GameState.getInstance().heat / 100) * _MAX_FRAME))))); } override protected function _removeEventListeners():void{ if (_isAnimating){ _completeAnimation(); }; WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.UI_HEAT_UPDATE, _onUpdate); removeEventListener(Event.ADDED_TO_STAGE, _onDrawn); super._removeEventListeners(); } override protected function _addEventListeners():void{ WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.UI_HEAT_UPDATE, _onUpdate); addEventListener(Event.ADDED_TO_STAGE, _onDrawn); super._addEventListeners(); } public function reset():void{ } private function _animate(_arg1:EUpdate):void{ if (_currentFrame < _targetFrame){ _currentFrame = (_currentFrame + Math.floor((_ANIMATION_RATE * _arg1.dt))); if (_currentFrame >= _targetFrame){ _completeAnimation(); }; } else { if (_currentFrame > _targetFrame){ _currentFrame = (_currentFrame - Math.floor((_ANIMATION_RATE * _arg1.dt))); if (_currentFrame <= _targetFrame){ _completeAnimation(); }; } else { _completeAnimation(); }; }; updateDisplay(); } public function updateDisplay():void{ if (_currentFrame == 0){ meter_fill.gotoAndStop(1); return; }; meter_fill.gotoAndStop(_currentFrame); } private function _completeAnimation():void{ if (!_isAnimating){ return; }; _currentFrame = _targetFrame; _isAnimating = false; Updater.getInstance().removeEventListener(Updater.EVENT_UPDATE, _animate); } private function _onDrawn(_arg1:Event):void{ updateDisplay(); } private function _onUpdate(_arg1:Event):void{ _targetFrame = _calculateTargetFrame(); if (_targetFrame > _MAX_FRAME){ _targetFrame = _MAX_FRAME; }; if (!_isAnimating){ _isAnimating = true; Updater.getInstance().addEventListener(Updater.EVENT_UPDATE, _animate); }; } } }//package com.wwb.princessbride.fire_swamp.ui.interfaces
Section 168
//LevelDebug (com.wwb.princessbride.fire_swamp.ui.interfaces.LevelDebug) package com.wwb.princessbride.fire_swamp.ui.interfaces { import com.wwb.princessbride.fire_swamp.*; import flash.display.*; import flash.text.*; public class LevelDebug extends MovieClip { public function LevelDebug(){ var _local1:TextField; var _local2:Number; super(); _local1 = new TextField(); _local1.width = 100; _local1.autoSize = TextFieldAutoSize.LEFT; _local1.defaultTextFormat = new TextFormat("Helvetica", 12, 0xFFFFFF, true); _local1.wordWrap = false; _local1.multiline = false; _local1.selectable = false; _local1.embedFonts = true; _local1.x = 0; _local1.y = 3; _local1.text = "Level:"; addChild(_local1); _local2 = GameEngine.getInstance().levelManager.getLevelCount(); while (_local2--) { _addLevelButton(_local2); }; if (GameState.getInstance().getConfigOption("browserBuild") == "true"){ x = 20; y = 40; scaleX = (scaleY = 0.7); } else { x = 40; y = 108; }; } public function _addLevelButton(_arg1:Number):void{ var _local2:MovieClip; var _local3:TextField; _local2 = new LevelDebugButton(_arg1); _local2.graphics.lineStyle(1, 0x999999, 0.3); _local2.graphics.beginFill(0, 0.3); _local2.graphics.moveTo(0, 0); _local2.graphics.lineTo(20, 0); _local2.graphics.lineTo(20, 20); _local2.graphics.lineTo(0, 20); _local2.graphics.lineTo(0, 0); _local3 = new TextField(); _local3.width = 30; _local3.autoSize = TextFieldAutoSize.CENTER; _local3.defaultTextFormat = new TextFormat("Helvetica", 12, 0xFFFFFF, true); _local3.wordWrap = false; _local3.multiline = false; _local3.selectable = false; _local3.embedFonts = true; _local3.alpha = 0.6; _local3.text = String((_arg1 + 1)); _local3.x = (9 - (_local3.textWidth / 2)); _local3.y = 2.5; if (_arg1 > 12){ _arg1 = (_arg1 - 13); _local2.y = 28; }; _local2.x = (45 + (_arg1 * 30)); _local2.addChild(_local3); addChild(_local2); } } }//package com.wwb.princessbride.fire_swamp.ui.interfaces
Section 169
//LevelDebugButton (com.wwb.princessbride.fire_swamp.ui.interfaces.LevelDebugButton) package com.wwb.princessbride.fire_swamp.ui.interfaces { import com.wwb.princessbride.fire_swamp.*; import flash.events.*; import com.workinman.lib.utils.*; import com.workinman.lib.display.*; public class LevelDebugButton extends WorkinButton { private var _levelnum:Number; public function LevelDebugButton(_arg1:Number):void{ _levelnum = _arg1; } override protected function _click():void{ GameState.getInstance().levelnum = _levelnum; WorkinDispatcher.getInstance().dispatchEvent(new Event(FireSwampConfig.EVENT_DEBUG_LEVEL_WARP)); } } }//package com.wwb.princessbride.fire_swamp.ui.interfaces
Section 170
//LevelScoreSummary (com.wwb.princessbride.fire_swamp.ui.interfaces.LevelScoreSummary) package com.wwb.princessbride.fire_swamp.ui.interfaces { import com.wwb.princessbride.fire_swamp.*; import flash.events.*; import com.workinman.lib.events.*; import flash.display.*; import com.workinman.lib.utils.*; import princessbride.*; public class LevelScoreSummary extends GenericScoreSummary { public var btnOutro:SimpleButton; public var btnContinue:SimpleButton; public function LevelScoreSummary(){ time.isPercent = true; time.countRate = 100; btnContinue = new PBButton("CONTINUE"); btnContinue.addEventListener(MouseEvent.CLICK, _onContinueClick); btnContinue.x = 807.6; btnContinue.y = 729; addChild(btnContinue); if (GameState.getInstance().getConfigOption("hasExitReached") == "true"){ btnOutro = new PBButton("PLAY OUTRO"); btnOutro.addEventListener(MouseEvent.CLICK, _onOutroClick); btnOutro.x = 700; btnOutro.y = 729; addChild(btnOutro); btnContinue.x = 899.6; }; if (GameState.getInstance().getConfigOption("browserBuild") == "true"){ x = (x - 30); y = (y - 35); } else { y = (y - 60); }; } override protected function _onPurpleComplete(_arg1:Event):void{ if (_state.purplegem.ratioLevel == 1){ _addBonus(Math.round((_state.getGemLevelRatioBonus(1) * _state.purplegem.ratioLevel)), purple); }; super._onPurpleComplete(_arg1); } override protected function _populateBlue():void{ blue.to(_state.bluegem.percentLevel); _playCountUpSound(); } private function _onOutroClick(_arg1:MouseEvent):void{ visible = false; WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.EVENT_REPORT_LEVEL_COMPLETE_TO_SHELL, {level:(GameState.getInstance().levelnum + 1), score:GameState.getInstance().scoreToPublish})); WorkinDispatcher.getInstance().dispatchEvent(new Event(FireSwampConfig.SHELL_OUTRO)); } private function _onContinueClick(_arg1:MouseEvent):void{ WorkinDispatcher.getInstance().dispatchEvent(new Event(FireSwampConfig.EVENT_CLOSE_SUMMARY)); } override protected function _populateRous():void{ rous.to(_state.rous.percentLevel); _playCountUpSound(); } override protected function _populatePurple():void{ purple.to(_state.purplegem.percentLevel); _playCountUpSound(); } override protected function _onBlueComplete(_arg1:Event):void{ if (_state.bluegem.ratioLevel == 1){ _addBonus(Math.round((_state.getGemLevelRatioBonus(3) * _state.bluegem.ratioLevel)), blue); }; super._onBlueComplete(_arg1); } override protected function _onRousComplete(_arg1:Event):void{ if (_state.rous.ratioLevel == 1){ _addBonus(Math.round((_state.getRousLevelRatioBonus() * _state.rous.ratioLevel)), rous); }; super._onRousComplete(_arg1); } override protected function _populateGreen():void{ green.to(_state.greengem.percentLevel); _playCountUpSound(); } override protected function _onGreenComplete(_arg1:Event):void{ if (_state.greengem.ratioLevel == 1){ _addBonus(Math.round((_state.getGemLevelRatioBonus(2) * _state.greengem.ratioLevel)), green); }; super._onGreenComplete(_arg1); } override protected function _populateTime():void{ time.to(Math.round((_state.levelTimeRatio * 100))); _playCountUpSound(); } override protected function _setInitialScore():void{ _totalScore = _state.score.level; } override protected function _onTimeComplete(_arg1:Event):void{ if (_state.levelTimeRatio == 1){ _addBonus(_state.getTimeLevelRatioBonus(), time); }; super._onTimeComplete(_arg1); } } }//package com.wwb.princessbride.fire_swamp.ui.interfaces
Section 171
//MainHeader (com.wwb.princessbride.fire_swamp.ui.interfaces.MainHeader) package com.wwb.princessbride.fire_swamp.ui.interfaces { import com.wwb.princessbride.fire_swamp.*; import flash.events.*; import com.workinman.lib.events.*; import flash.display.*; import com.workinman.lib.utils.*; import flash.text.*; import com.workinman.paradise.ui.interfaces.*; public class MainHeader extends BaseInterface { public var btnPause:SimpleButton; public var TxtLevel:TextField; public var TxtScore:TextField; private var _isEnabled:Boolean; public var TxtGame:TextField; public var btnHelp:SimpleButton; public function MainHeader(){ _isEnabled = true; if (GameState.getInstance().getConfigOption("browserBuild") == "false"){ btnPause.addEventListener(MouseEvent.CLICK, _onPauseClick); btnHelp.addEventListener(MouseEvent.CLICK, _onHelpClick); }; } private function _onUpdateRoomDisplay(_arg1:EData):void{ if (GameState.getInstance().getConfigOption("browserBuild") != "true"){ TxtLevel.text = _arg1.data.name; } else { TxtLevel.text = ""; }; } override protected function _removeEventListeners():void{ WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.EVENT_ROOM_DISPLAY_CHANGE, _onUpdateRoomDisplay); WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.UI_SCORE_UPDATE, _onUpdateScoreDisplay); removeEventListener(Event.ADDED_TO_STAGE, _onDrawn); super._removeEventListeners(); } private function _onPauseClick(_arg1:MouseEvent):void{ WorkinDispatcher.getInstance().dispatchEvent(new Event(FireSwampConfig.SHELL_MENU)); } private function _onUpdateScoreDisplay(_arg1:EData):void{ TxtScore.text = _arg1.data.score; } override protected function _addEventListeners():void{ WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.EVENT_ROOM_DISPLAY_CHANGE, _onUpdateRoomDisplay); WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.UI_SCORE_UPDATE, _onUpdateScoreDisplay); addEventListener(Event.ADDED_TO_STAGE, _onDrawn); super._addEventListeners(); } public function enable():void{ if (_isEnabled){ return; }; _isEnabled = true; filters = []; if (GameState.getInstance().getConfigOption("browserBuild") == "false"){ btnPause.addEventListener(MouseEvent.CLICK, _onPauseClick); btnHelp.addEventListener(MouseEvent.CLICK, _onHelpClick); }; } private function _onDrawn(_arg1:Event):void{ } public function disable():void{ if (!_isEnabled){ return; }; _isEnabled = false; if (GameState.getInstance().getConfigOption("browserBuild") == "false"){ btnPause.removeEventListener(MouseEvent.CLICK, _onPauseClick); btnHelp.removeEventListener(MouseEvent.CLICK, _onHelpClick); }; } private function _onHelpClick(_arg1:MouseEvent):void{ WorkinDispatcher.getInstance().dispatchEvent(new Event(FireSwampConfig.SHELL_HELP)); } } }//package com.wwb.princessbride.fire_swamp.ui.interfaces
Section 172
//MultiplierDisplay (com.wwb.princessbride.fire_swamp.ui.interfaces.MultiplierDisplay) package com.wwb.princessbride.fire_swamp.ui.interfaces { import com.wwb.princessbride.fire_swamp.*; import flash.events.*; import com.workinman.lib.events.*; import flash.display.*; import com.workinman.lib.utils.*; import flash.utils.*; import com.workinman.paradise.ui.interfaces.*; public class MultiplierDisplay extends BaseInterface { private var _isDrawn:Boolean; private var _multiplierDisplay:Array; private var _state:GameState; public function MultiplierDisplay(){ x = 975; y = 188; _isDrawn = false; _state = GameState.getInstance(); _multiplierDisplay = []; super(); } private function _onRemoved(_arg1:Event):void{ _isDrawn = false; _clearDisplay(); } public function _drawDisplay():void{ var _local1:Number; var _local2:Number; if (!_isDrawn){ return; }; _local1 = 0; _local2 = 0; while (_local2 < _multiplierDisplay.length) { _multiplierDisplay[_local2].x = _local1; _local1 = (_local1 - 80); _local2++; }; } private function _onAdd(_arg1:EData):void{ var _local2:MovieClip; switch (_arg1.data.mult){ case 2: _local2 = new ((getDefinitionByName("AssetMultiplierHudTwo") as Class)); break; case 5: _local2 = new ((getDefinitionByName("AssetMultiplierHudFive") as Class)); break; case 10: _local2 = new ((getDefinitionByName("AssetMultiplierHudTen") as Class)); break; }; _multiplierDisplay.push(_local2); addChild(_local2); _drawDisplay(); } override protected function _removeEventListeners():void{ WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.UI_MULT_ADD, _onAdd); WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.UI_MULT_REMOVE, _onRemove); removeEventListener(Event.ADDED_TO_STAGE, _onDrawn); removeEventListener(Event.REMOVED_FROM_STAGE, _onRemoved); super._removeEventListeners(); } override protected function _addEventListeners():void{ WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.UI_MULT_ADD, _onAdd); WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.UI_MULT_REMOVE, _onRemove); addEventListener(Event.ADDED_TO_STAGE, _onDrawn); addEventListener(Event.REMOVED_FROM_STAGE, _onRemoved); super._addEventListeners(); } public function reset():void{ } private function _onRemove(_arg1:Event):void{ _clearDisplay(); } private function _clearDisplay():void{ var _local1:Number; _local1 = _multiplierDisplay.length; while (_local1--) { removeChild(_multiplierDisplay[_local1]); }; _multiplierDisplay = []; } private function _onDrawn(_arg1:Event):void{ _isDrawn = true; _drawDisplay(); } } }//package com.wwb.princessbride.fire_swamp.ui.interfaces
Section 173
//PauseManager (com.wwb.princessbride.fire_swamp.ui.interfaces.PauseManager) package com.wwb.princessbride.fire_swamp.ui.interfaces { import com.wwb.princessbride.fire_swamp.*; import flash.events.*; import flash.display.*; import com.workinman.lib.utils.*; import princessbride.*; public class PauseManager extends MovieClip { private var _isDrawn:Boolean; public var btnMap:SimpleButton; private var _timeline:MovieClip; public var btnResume:SimpleButton; public static const ON_CLOSED:String = "onPauseManClosed"; public function PauseManager(){ _isDrawn = false; if (GameState.getInstance().getConfigOption("browserBuild") == "true"){ return; }; btnResume = new PBButton("RESUME GAME"); btnResume.addEventListener(MouseEvent.CLICK, _onResumeClick); btnResume.x = 401.6; btnResume.y = 494.4; addChild(btnResume); btnMap = new PBButton("BACK TO MAP"); btnMap.addEventListener(MouseEvent.CLICK, _onMapClick); btnMap.x = 628.2; btnMap.y = 494.4; addChild(btnMap); btnResume.addEventListener(MouseEvent.CLICK, _onResumeClick); btnMap.addEventListener(MouseEvent.CLICK, _onMapClick); } public function show():void{ if (_isDrawn){ return; }; _timeline.addChild(this); _isDrawn = true; } private function _onMapClick(_arg1:MouseEvent):void{ WorkinDispatcher.getInstance().dispatchEvent(new Event(FireSwampConfig.SHELL_MAP)); } public function remove():void{ if (!_isDrawn){ return; }; _timeline.removeChild(this); _isDrawn = false; dispatchEvent(new Event(ON_CLOSED)); } public function assignParent(_arg1:MovieClip):void{ _timeline = _arg1; } public function get isDrawn():Boolean{ return (_isDrawn); } public function cleanUp():void{ remove(); } private function _onResumeClick(_arg1:MouseEvent):void{ remove(); } } }//package com.wwb.princessbride.fire_swamp.ui.interfaces
Section 174
//ResetRoomButton (com.wwb.princessbride.fire_swamp.ui.interfaces.ResetRoomButton) package com.wwb.princessbride.fire_swamp.ui.interfaces { import com.wwb.princessbride.fire_swamp.*; import flash.events.*; import com.workinman.lib.utils.*; import com.workinman.paradise.ui.interfaces.*; public class ResetRoomButton extends BaseInterface { public function ResetRoomButton(){ buttonMode = true; mouseEnabled = true; mouseChildren = false; useHandCursor = true; x = 919; y = 743; super(); gotoAndStop(1); } protected function _onClickEvent(_arg1:MouseEvent):void{ WorkinDispatcher.getInstance().dispatchEvent(new Event(FireSwampConfig.EVENT_RESET_ROOM)); gotoAndStop(1); } override protected function _removeEventListeners():void{ removeEventListener(MouseEvent.MOUSE_OVER, _onOverEvent); removeEventListener(MouseEvent.MOUSE_OUT, _onOutEvent); removeEventListener(MouseEvent.CLICK, _onClickEvent); super._removeEventListeners(); } protected function _onOverEvent(_arg1:MouseEvent):void{ gotoAndStop(2); } override protected function _addEventListeners():void{ addEventListener(MouseEvent.MOUSE_OVER, _onOverEvent); addEventListener(MouseEvent.MOUSE_OUT, _onOutEvent); addEventListener(MouseEvent.CLICK, _onClickEvent); super._addEventListeners(); } public function reset():void{ } protected function _onOutEvent(_arg1:MouseEvent):void{ gotoAndStop(1); } } }//package com.wwb.princessbride.fire_swamp.ui.interfaces
Section 175
//RoomDebug (com.wwb.princessbride.fire_swamp.ui.interfaces.RoomDebug) package com.wwb.princessbride.fire_swamp.ui.interfaces { import com.wwb.princessbride.fire_swamp.*; import com.workinman.lib.events.*; import flash.display.*; import com.workinman.lib.utils.*; import flash.text.*; public class RoomDebug extends MovieClip { private var _roomButtons:Array; public function RoomDebug(){ var _local1:TextField; super(); _local1 = new TextField(); _local1.width = 100; _local1.autoSize = TextFieldAutoSize.LEFT; _local1.defaultTextFormat = new TextFormat("Helvetica", 12, 0xFFFFFF, true); _local1.wordWrap = false; _local1.multiline = false; _local1.selectable = false; _local1.embedFonts = true; _local1.x = 0; _local1.y = 3; _local1.text = "Room Skip:"; addChild(_local1); WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.UI_ROOMS_UPDATE, _onUpdate); _roomButtons = []; if (GameState.getInstance().getConfigOption("browserBuild") == "true"){ x = 450; y = 68; scaleX = (scaleY = 0.7); } else { x = 800; y = 140; }; } public function _addRoomButton(_arg1:Number):void{ var _local2:MovieClip; var _local3:TextField; _arg1++; _local2 = new RoomDebugButton(_arg1); _local2.graphics.lineStyle(1, 0x999999, 0.3); _local2.graphics.beginFill(0, 0.3); _local2.graphics.moveTo(0, 0); _local2.graphics.lineTo(20, 0); _local2.graphics.lineTo(20, 20); _local2.graphics.lineTo(0, 20); _local2.graphics.lineTo(0, 0); _local3 = new TextField(); _local3.width = 30; _local3.autoSize = TextFieldAutoSize.CENTER; _local3.defaultTextFormat = new TextFormat("Helvetica", 12, 0xFFFFFF, true); _local3.wordWrap = false; _local3.multiline = false; _local3.selectable = false; _local3.embedFonts = true; _local3.alpha = 0.6; _local3.text = String(_arg1); _local3.x = (9 - (_local3.textWidth / 2)); _local3.y = 2.5; _local2.x = (45 + (_arg1 * 30)); _local2.addChild(_local3); addChild(_local2); _roomButtons.push(_local2); } private function _onUpdate(_arg1:EData):void{ var _local2:Number; _clearRoomButtons(); _local2 = _arg1.data.rooms; while (_local2--) { _addRoomButton(_local2); }; } private function _clearRoomButtons():void{ var _local1:Number; _local1 = _roomButtons.length; while (_local1--) { removeChild(_roomButtons[_local1]); }; _roomButtons = []; } } }//package com.wwb.princessbride.fire_swamp.ui.interfaces
Section 176
//RoomDebugButton (com.wwb.princessbride.fire_swamp.ui.interfaces.RoomDebugButton) package com.wwb.princessbride.fire_swamp.ui.interfaces { import com.wwb.princessbride.fire_swamp.*; import com.workinman.lib.events.*; import com.workinman.lib.utils.*; import com.workinman.lib.display.*; public class RoomDebugButton extends WorkinButton { private var _roomnum:Number; public function RoomDebugButton(_arg1:Number):void{ _roomnum = _arg1; } override protected function _click():void{ WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.EVENT_DEBUG_ROOM_WARP, {room:_roomnum})); } } }//package com.wwb.princessbride.fire_swamp.ui.interfaces
Section 177
//RoomDisplay (com.wwb.princessbride.fire_swamp.ui.interfaces.RoomDisplay) package com.wwb.princessbride.fire_swamp.ui.interfaces { import com.wwb.princessbride.fire_swamp.*; import com.workinman.lib.events.*; import com.workinman.lib.utils.*; import flash.text.*; import com.workinman.paradise.ui.interfaces.*; public class RoomDisplay extends BaseInterface { public var txt_room:TextField; public function RoomDisplay(){ x = 43; y = 26; mouseEnabled = false; mouseChildren = false; super(); } private function _onUpdateRoomDisplay(_arg1:EData):void{ txt_room.text = String(_arg1.data.name); } override protected function _removeEventListeners():void{ WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.EVENT_ROOM_DISPLAY_CHANGE, _onUpdateRoomDisplay); super._removeEventListeners(); } override protected function _addEventListeners():void{ WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.EVENT_ROOM_DISPLAY_CHANGE, _onUpdateRoomDisplay); super._addEventListeners(); } public function reset():void{ } } }//package com.wwb.princessbride.fire_swamp.ui.interfaces
Section 178
//RoomScoreSummary (com.wwb.princessbride.fire_swamp.ui.interfaces.RoomScoreSummary) package com.wwb.princessbride.fire_swamp.ui.interfaces { import com.wwb.princessbride.fire_swamp.*; import flash.events.*; import flash.display.*; import com.workinman.lib.utils.*; import princessbride.*; public class RoomScoreSummary extends GenericScoreSummary { public var btnOutro:SimpleButton; public var btnContinue:SimpleButton; public function RoomScoreSummary(){ time.countRate = Math.round(_state.roomTime); btnContinue = new PBButton("CONTINUE"); btnContinue.addEventListener(MouseEvent.CLICK, _onContinueClick); btnContinue.x = 807.6; btnContinue.y = 729; addChild(btnContinue); if (GameState.getInstance().getConfigOption("browserBuild") == "true"){ x = (x - 30); y = (y - 35); } else { y = (y - 60); }; } override protected function _onPurpleComplete(_arg1:Event):void{ if (_state.purplegem.ratioRoom == 1){ _addBonus(Math.round((_state.getGemRoomRatioBonus(1) * _state.purplegem.ratioRoom)), purple); }; super._onPurpleComplete(_arg1); } private function _onOutroClick(_arg1:MouseEvent):void{ visible = false; WorkinDispatcher.getInstance().dispatchEvent(new Event(FireSwampConfig.SHELL_OUTRO)); } private function _onContinueClick(_arg1:MouseEvent):void{ WorkinDispatcher.getInstance().dispatchEvent(new Event(FireSwampConfig.EVENT_CLOSE_SUMMARY)); } override protected function _onBlueComplete(_arg1:Event):void{ if (_state.bluegem.ratioRoom == 1){ _addBonus(Math.round((_state.getGemRoomRatioBonus(3) * _state.bluegem.ratioRoom)), blue); }; super._onBlueComplete(_arg1); } override protected function _onRousComplete(_arg1:Event):void{ if (_state.rous.ratioRoom == 1){ _addBonus(Math.round((_state.getRousRoomRatioBonus() * _state.rous.ratioRoom)), rous); }; super._onRousComplete(_arg1); } override protected function _onGreenComplete(_arg1:Event):void{ if (_state.greengem.ratioRoom == 1){ _addBonus(Math.round((_state.getGemRoomRatioBonus(2) * _state.greengem.ratioRoom)), green); }; super._onGreenComplete(_arg1); } override protected function _onTimeComplete(_arg1:Event):void{ if (_state.roomTimeLimitBeaten){ _addBonus(_state.getTimeRoomRatioBonus(), time); }; super._onTimeComplete(_arg1); time.txt.appendText(" sec"); } } }//package com.wwb.princessbride.fire_swamp.ui.interfaces
Section 179
//ScoreDisplay (com.wwb.princessbride.fire_swamp.ui.interfaces.ScoreDisplay) package com.wwb.princessbride.fire_swamp.ui.interfaces { import com.wwb.princessbride.fire_swamp.*; import com.workinman.lib.events.*; import com.workinman.lib.utils.*; import flash.text.*; public class ScoreDisplay extends TextDisplay { private var _display:TextField; private var _tag:TextField; public function ScoreDisplay(){ _tag = new TextField(); _prepTextField(_tag, "Score: "); addChild(_tag); _display = new TextField(); _prepTextField(_display); addChild(_display); x = 690; y = 700; _display.x = (_tag.textWidth + 20); WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.UI_SCORE_UPDATE, _onUpdate); _onUpdate(new EData("force", {score:GameState.getInstance().score.currentGameTotal})); } public function cleanUp():void{ WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.UI_SCORE_UPDATE, _onUpdate); } private function _onUpdate(_arg1:EData):void{ _display.text = String((GameState.getInstance().baseScore + _arg1.data.score)); } } }//package com.wwb.princessbride.fire_swamp.ui.interfaces
Section 180
//SummaryWindow (com.wwb.princessbride.fire_swamp.ui.interfaces.SummaryWindow) package com.wwb.princessbride.fire_swamp.ui.interfaces { import com.wwb.princessbride.fire_swamp.*; import flash.events.*; import flash.display.*; import com.workinman.lib.utils.*; public class SummaryWindow extends MovieClip { public static const COMPLETE:String = "onComplete"; public function SummaryWindow(){ addEventListener(Event.REMOVED_FROM_STAGE, _onRemove); WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.EVENT_CLOSE_SUMMARY, _onClose); super(); } protected function _onClose(_arg1:Event):void{ dispatchEvent(new Event(COMPLETE)); } protected function _onRemove(_arg1:Event):void{ removeEventListener(Event.REMOVED_FROM_STAGE, _onRemove); WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.EVENT_CLOSE_SUMMARY, _onClose); } } }//package com.wwb.princessbride.fire_swamp.ui.interfaces
Section 181
//TextDisplay (com.wwb.princessbride.fire_swamp.ui.interfaces.TextDisplay) package com.wwb.princessbride.fire_swamp.ui.interfaces { import flash.display.*; import flash.text.*; public class TextDisplay extends MovieClip { protected function _prepTextField(_arg1:TextField, _arg2:String="", _arg3:Number=0, _arg4:String="helvetica"):void{ _arg1.width = 200; _arg1.autoSize = TextFieldAutoSize.LEFT; _arg1.wordWrap = false; _arg1.multiline = false; _arg1.selectable = false; _arg1.embedFonts = true; switch (_arg4){ case "helvetica": default: _arg1.defaultTextFormat = new TextFormat("Helvetica", 12, 0xFFFFFF, true); break; }; _arg1.text = _arg2; } public function reset():void{ } } }//package com.wwb.princessbride.fire_swamp.ui.interfaces
Section 182
//WestleySelectButton (com.wwb.princessbride.fire_swamp.ui.interfaces.WestleySelectButton) package com.wwb.princessbride.fire_swamp.ui.interfaces { import com.wwb.princessbride.fire_swamp.*; import flash.events.*; import com.workinman.lib.events.*; import com.workinman.lib.utils.*; public class WestleySelectButton extends CharacterSelectButton { public function WestleySelectButton(){ x = 410; y = 24; } override protected function _click():void{ if (((_isSelected) || (!(_isEnabled)))){ return; }; WorkinDispatcher.getInstance().dispatchEvent(new Event(FireSwampConfig.UI_EVENT_WESTLEY_CLICK)); } override protected function _onCharacterChange(_arg1:EData){ if (_arg1.data.player.character == "westley"){ select(); } else { deselect(); }; } } }//package com.wwb.princessbride.fire_swamp.ui.interfaces
Section 183
//GameUI (com.wwb.princessbride.fire_swamp.ui.GameUI) package com.wwb.princessbride.fire_swamp.ui { import com.wwb.princessbride.fire_swamp.*; import flash.display.*; import com.wwb.princessbride.fire_swamp.ui.interfaces.*; import com.workinman.paradise.ui.*; public class GameUI extends BaseUI { private var _gemDisplay:GemDisplay; private var _score:ScoreDisplay; private var _buttercupSelect:ButtercupSelectButton; private var _timeline:MovieClip; private var _roomDisplay:RoomDisplay; private var _roomReset:ResetRoomButton; private var _roomDebug:RoomDebug; private var _multiplierDisplay:MultiplierDisplay; private var _mainHeader:MainHeader; private var _blackBottom:MovieClip; private var _levelDebug:LevelDebug; private var _westleySelect:WestleySelectButton; private var _isPopulated:Boolean; private var _heatMeter:HeatMeter; public function GameUI(_arg1:MovieClip){ _timeline = _arg1; _isPopulated = false; } public function unblur():void{ _mainHeader.unblur(); _westleySelect.unblur(); _buttercupSelect.unblur(); _gemDisplay.unblur(); _heatMeter.unblur(); } public function enable():void{ _mainHeader.enable(); _westleySelect.enable(); _buttercupSelect.enable(); _roomReset.visible = true; } private function _generateHeatMeter():void{ _heatMeter = new HeatMeter(); if (GameState.getInstance().getConfigOption("browserBuild") == "true"){ _heatMeter.scaleX = (_heatMeter.scaleY = 0.5); _heatMeter.x = (_heatMeter.x - 270); _heatMeter.y = (_heatMeter.y - 320); }; } private function _generateMainHeader():void{ _mainHeader = new MainHeader(); } private function _generateBlackBottom():void{ _blackBottom = new AssetBlackBottom(); if (GameState.getInstance().getConfigOption("browserBuild") == "true"){ _blackBottom.scaleX = (_blackBottom.scaleY = 0.7); _blackBottom.y = 382; } else { _blackBottom.y = 672; }; } private function _generateScore():void{ _score = new ScoreDisplay(); } private function _generateLevelDebug():void{ _levelDebug = new LevelDebug(); } public function erase():void{ _timeline.removeChild(_mainHeader); _timeline.removeChild(_blackBottom); _timeline.removeChild(_gemDisplay); _timeline.removeChild(_multiplierDisplay); if (GameState.getInstance().getConfigOption("browserBuild") != "true"){ _timeline.removeChild(_roomReset); }; _timeline.removeChild(_heatMeter); _timeline.removeChild(_westleySelect); _timeline.removeChild(_buttercupSelect); if (GameEngine.getInstance().getFlag(FireSwampConfig.FLAG_SHOW_TILES) == "true"){ _timeline.removeChild(_levelDebug); _timeline.removeChild(_roomDebug); }; } public function draw():void{ _timeline.addChild(_mainHeader); _timeline.addChild(_blackBottom); _timeline.addChild(_gemDisplay); _timeline.addChild(_multiplierDisplay); if (GameState.getInstance().getConfigOption("browserBuild") != "true"){ _timeline.addChild(_roomReset); }; _timeline.addChild(_heatMeter); _timeline.addChild(_westleySelect); _timeline.addChild(_buttercupSelect); if (GameEngine.getInstance().getFlag(FireSwampConfig.FLAG_SHOW_TILES) == "true"){ _timeline.addChild(_levelDebug); _timeline.addChild(_roomDebug); }; enable(); } private function _generateRoomReset():void{ _roomReset = new ResetRoomButton(); if (GameState.getInstance().getConfigOption("browserBuild") == "true"){ _roomReset.scaleX = (_roomReset.scaleY = 0.5); _roomReset.x = (_roomReset.x - 365); _roomReset.y = (_roomReset.y - 360); }; } private function _generateMultiplierDisplay():void{ _multiplierDisplay = new MultiplierDisplay(); if (GameState.getInstance().getConfigOption("browserBuild") == "true"){ _multiplierDisplay.scaleX = (_multiplierDisplay.scaleY = 0.5); _multiplierDisplay.x = (_multiplierDisplay.x - 0); _multiplierDisplay.y = (_multiplierDisplay.y - 312); }; } public function cleanUp():void{ _mainHeader.cleanUp(); _gemDisplay.cleanUp(); _multiplierDisplay.cleanUp(); _roomReset.cleanUp(); _heatMeter.cleanUp(); _westleySelect.cleanUp(); _buttercupSelect.cleanUp(); } private function _reset():void{ _gemDisplay.reset(); _multiplierDisplay.reset(); _roomReset.reset(); _heatMeter.reset(); _westleySelect.reset(); _buttercupSelect.reset(); } private function _generateButtercupSelect():void{ _buttercupSelect = new ButtercupSelectButton(); if (GameState.getInstance().getConfigOption("browserBuild") == "true"){ _buttercupSelect.scaleX = (_buttercupSelect.scaleY = 0.5); _buttercupSelect.x = (_buttercupSelect.x - 155); _buttercupSelect.y = (_buttercupSelect.y - 285); }; } public function blur():void{ _mainHeader.blur(); _westleySelect.blur(); _buttercupSelect.blur(); _gemDisplay.blur(); _heatMeter.blur(); } public function disable():void{ _mainHeader.disable(); _westleySelect.disable(); _buttercupSelect.disable(); _roomReset.visible = false; } public function populate():void{ if (_isPopulated){ erase(); }; _generateMainHeader(); _generateBlackBottom(); _generateGemDisplay(); _generateMultiplierDisplay(); _generateHeatMeter(); _generateWestleySelect(); _generateButtercupSelect(); _generateRoomReset(); if (GameEngine.getInstance().getFlag(FireSwampConfig.FLAG_SHOW_TILES) == "true"){ _generateLevelDebug(); _generateRoomDebug(); }; } private function _generateRoomDisplay():void{ _roomDisplay = new RoomDisplay(); } private function _generateGemDisplay():void{ _gemDisplay = new GemDisplay(); if (GameState.getInstance().getConfigOption("browserBuild") == "true"){ _gemDisplay.scaleX = (_gemDisplay.scaleY = 0.5); _gemDisplay.x = (_gemDisplay.x - 0); _gemDisplay.y = (_gemDisplay.y - 312); }; } private function _generateWestleySelect():void{ _westleySelect = new WestleySelectButton(); if (GameState.getInstance().getConfigOption("browserBuild") == "true"){ _westleySelect.scaleX = (_westleySelect.scaleY = 0.5); _westleySelect.x = (_westleySelect.x - 180); _westleySelect.y = (_westleySelect.y + 7); }; } private function _generateRoomDebug():void{ _roomDebug = new RoomDebug(); } } }//package com.wwb.princessbride.fire_swamp.ui
Section 184
//FireSwampCamera (com.wwb.princessbride.fire_swamp.world.camera.FireSwampCamera) package com.wwb.princessbride.fire_swamp.world.camera { import com.wwb.princessbride.fire_swamp.*; import com.workinman.lib.math.*; import com.workinman.paradise.*; import com.workinman.paradise.world.camera.*; public class FireSwampCamera extends BaseCamera { private var _SCROLL_RATE:Number;// = 700 public function FireSwampCamera(_arg1:Object){ _SCROLL_RATE = 700; super(_arg1); } public function toRoom(_arg1:Number):void{ var _local2:Number; _local2 = ((ParadiseConfig.SCREEN_CENTER.x + FireSwampConfig.roomCameraPos(_arg1)) - (2 * (_arg1 - 1))); moveTo(_local2, _pos.y, (Math.abs((_local2 - _pos.x)) / _SCROLL_RATE), PennerManager.EASE_QUAD); } public function showRoom(_arg1:Number):void{ clearPaths(); _pos.x = ((ParadiseConfig.SCREEN_CENTER.x + ((_arg1 - 1) * ParadiseConfig.SCREEN_WIDTH)) - (2 * (_arg1 - 1))); } } }//package com.wwb.princessbride.fire_swamp.world.camera
Section 185
//CharEffectHeat (com.wwb.princessbride.fire_swamp.world.entitys.effects.CharEffectHeat) package com.wwb.princessbride.fire_swamp.world.entitys.effects { import com.wwb.princessbride.fire_swamp.assets.*; public class CharEffectHeat extends Effect { private var _flipped:Number; private var _scale:Number; private var _isFading:Boolean; public function CharEffectHeat(_arg1:Object){ _arg1.asset = CharEffectHeatAsset; super(_arg1); _isFading = true; _scale = (0.5 + Math.random()); _flipped = ((Math.random() < 0.5)) ? -1 : 1; _asset.scaleX = (_asset.scaleY = (_scale * _flipped)); _asset.fadeTo(0, 0.7); _setVelocity(0, -40); } override public function updateEverything(_arg1:Number):void{ super.updateEverything(_arg1); } override protected function get _removeAfterTimer():Boolean{ return (true); } override protected function get _removeTimerDuration():Number{ return (0.8); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.effects
Section 186
//CharEffectPoison (com.wwb.princessbride.fire_swamp.world.entitys.effects.CharEffectPoison) package com.wwb.princessbride.fire_swamp.world.entitys.effects { import com.wwb.princessbride.fire_swamp.assets.*; public class CharEffectPoison extends Effect { private var _flipped:Number; private var _scale:Number; private var _isFading:Boolean; public function CharEffectPoison(_arg1:Object){ _arg1.asset = CharEffectPoisonAsset; super(_arg1); _isFading = false; _scale = (0.5 + Math.random()); _flipped = ((Math.random() < 0.5)) ? -1 : 1; _asset.scaleX = (_asset.scaleY = (_scale * _flipped)); _setVelocity(0, -40); } override public function updateEverything(_arg1:Number):void{ super.updateEverything(_arg1); } override protected function get _removeAfterTimer():Boolean{ return (true); } override protected function get _removeTimerDuration():Number{ return (0.6); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.effects
Section 187
//CharEffectShield (com.wwb.princessbride.fire_swamp.world.entitys.effects.CharEffectShield) package com.wwb.princessbride.fire_swamp.world.entitys.effects { import com.wwb.princessbride.fire_swamp.assets.*; public class CharEffectShield extends Effect { private var _flipped:Number; private var _scale:Number; private var _isFading:Boolean; public function CharEffectShield(_arg1:Object){ _arg1.asset = CharEffectShieldAsset; super(_arg1); _isFading = true; fadeTo(0, 0.25); _setVelocity(0, 0); } override public function updateEverything(_arg1:Number):void{ super.updateEverything(_arg1); } override protected function get _removeAfterTimer():Boolean{ return (true); } override protected function get _removeTimerDuration():Number{ return (0.2); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.effects
Section 188
//CharEffectSparkle (com.wwb.princessbride.fire_swamp.world.entitys.effects.CharEffectSparkle) package com.wwb.princessbride.fire_swamp.world.entitys.effects { import com.wwb.princessbride.fire_swamp.assets.*; public class CharEffectSparkle extends Effect { private var _flipped:Number; private var _scale:Number; private var _isFading:Boolean; public function CharEffectSparkle(_arg1:Object){ _arg1.asset = CharEffectSparkleAsset; super(_arg1); _isFading = false; _scale = (0.5 + Math.random()); _flipped = ((Math.random() < 0.5)) ? -1 : 1; _asset.scaleX = (_asset.scaleY = (_scale * _flipped)); _setVelocity(0, -40); } override public function updateEverything(_arg1:Number):void{ super.updateEverything(_arg1); } override protected function get _removeAfterTimer():Boolean{ return (true); } override protected function get _removeTimerDuration():Number{ return (0.6); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.effects
Section 189
//CharEffectWater (com.wwb.princessbride.fire_swamp.world.entitys.effects.CharEffectWater) package com.wwb.princessbride.fire_swamp.world.entitys.effects { import com.wwb.princessbride.fire_swamp.assets.*; public class CharEffectWater extends Effect { private var _flipped:Number; private var _scale:Number; private var _isFading:Boolean; public function CharEffectWater(_arg1:Object){ _arg1.asset = CharEffectWaterAsset; super(_arg1); _isFading = false; _scale = (0.5 + Math.random()); _flipped = ((Math.random() < 0.5)) ? -1 : 1; _asset.scaleX = (_asset.scaleY = (_scale * _flipped)); _setVelocity(0, -40); } override public function updateEverything(_arg1:Number):void{ super.updateEverything(_arg1); } override protected function get _removeAfterTimer():Boolean{ return (true); } override protected function get _removeTimerDuration():Number{ return (0.6); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.effects
Section 190
//CrumbsProjectileEffect (com.wwb.princessbride.fire_swamp.world.entitys.effects.CrumbsProjectileEffect) package com.wwb.princessbride.fire_swamp.world.entitys.effects { import com.wwb.princessbride.fire_swamp.*; import com.workinman.lib.math.*; import com.workinman.lib.sound.*; import com.workinman.lib.events.*; import com.workinman.lib.utils.*; import com.wwb.princessbride.fire_swamp.assets.*; public class CrumbsProjectileEffect extends Effect { private var _isUsedUp:Boolean; private var _destination:WorkinPoint; private var _MOVE_RATE:Number;// = 500 public function CrumbsProjectileEffect(_arg1:Object){ var _local2:WorkinPoint; _MOVE_RATE = 500; _arg1.asset = CrumbsProjectileAsset; super(_arg1); _isUsedUp = false; _destination = _arg1.destination; _local2 = new WorkinPoint(); _local2.toPoint(_pos.diff(_destination)); _local2.length = _MOVE_RATE; _setVelocity(_local2.x, _local2.y, _local2.z); _generateCollisionBox(); _setCollisionBox(); _animate("idle"); } public function onUseUp():void{ _isUsedUp = true; } override protected function _applyVelocity(_arg1:Number):void{ if (_pos.diff(_destination).length < _velocity.multiplyCopy(_arg1).length){ WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.EVENT_PARTICLE_EFFECT, {x:pos.x, y:(pos.y + 4), type:"crumb"})); WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.EVENT_PARTICLE_EFFECT, {x:(pos.x - 3), y:(pos.y + 2), type:"crumb"})); WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.EVENT_PARTICLE_EFFECT, {x:(pos.x + 3), y:pos.y, type:"crumb"})); _pos.toPoint(_destination); GlobalSound.getInstance().playSound("crumbsHit"); _clearVelocity(); _collisionCenter = _collisionBox.getCollisionCenter(_pos); WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.EVENT_CRUMBS_COLLIDE, {source:this})); } else { _pos.addPoint(_velocity.multiplyCopy(_arg1)); }; } override protected function _setCollisionBox():void{ collisionWidth = _displayWidth; collisionHeight = _displayHeight; } override protected function get _assetRegistrationPoint():String{ return ("cc"); } override public function get type():String{ return ("crumbs"); } override protected function get _removeAfterAnimation():Boolean{ return (!(_hasVelocity)); } override protected function _animate(_arg1:String):void{ _asset.animate(_arg1); if (_arg1 == "idle"){ _asset.mc.rotation = 0; } else { _asset.mc.rotation = 0; }; } override protected function _recalculateDimensions():void{ var _local1:WorkinPoint; _local1 = _asset.getFrameDimensions("hit"); _displayWidth = _local1.x; _displayHeight = _local1.y; _halfDisplayWidth = (_displayWidth / 2); _halfDisplayHeight = (_displayHeight / 2); _recalculateDisplayCenter(); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.effects
Section 191
//DewProjectileEffect (com.wwb.princessbride.fire_swamp.world.entitys.effects.DewProjectileEffect) package com.wwb.princessbride.fire_swamp.world.entitys.effects { import com.wwb.princessbride.fire_swamp.*; import com.workinman.lib.math.*; import com.workinman.lib.sound.*; import com.workinman.lib.events.*; import com.wwb.princessbride.fire_swamp.world.entitys.*; import com.workinman.lib.utils.*; import com.wwb.princessbride.fire_swamp.assets.*; public class DewProjectileEffect extends Effect { private const _SPIN_RATE:Number = 420; private var _isUsedUp:Boolean; private var _destination:WorkinPoint; private var _MOVE_RATE:Number;// = 500 private var _isSpinning:Boolean; private var _spin:Number; public function DewProjectileEffect(_arg1:Object){ var _local2:WorkinPoint; _MOVE_RATE = 500; _arg1.asset = DewProjectileAsset; super(_arg1); _isUsedUp = false; _destination = _arg1.destination; _local2 = new WorkinPoint(); _local2.toPoint(_pos.diff(_destination)); _local2.length = _MOVE_RATE; _setVelocity(_local2.x, _local2.y, _local2.z); _spin = 0; _generateCollisionBox(); _setCollisionBox(); _isSpinning = true; _animate("idle"); } public function onUseUp():void{ _isUsedUp = true; } override public function updateEverything(_arg1:Number):void{ super.updateEverything(_arg1); if (_isSpinning){ _spin = (_spin + (_SPIN_RATE * _arg1)); _asset.mc.rotation = _spin; }; } override protected function _applyVelocity(_arg1:Number):void{ if (_pos.diff(_destination).length < _velocity.multiplyCopy(_arg1).length){ _pos.toPoint(_destination); _animate("hit"); GlobalSound.getInstance().playSound("crumbsHit"); _isSpinning = false; _clearVelocity(); _collisionCenter = _collisionBox.getCollisionCenter(_pos); WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.EVENT_DEW_COLLIDE, {source:this})); } else { _pos.addPoint(_velocity.multiplyCopy(_arg1)); }; } override protected function _setCollisionBox():void{ collisionWidth = _displayWidth; collisionHeight = _displayHeight; } override protected function get _assetRegistrationPoint():String{ return ("cc"); } override public function get type():String{ return ("dew"); } override protected function get _removeAfterAnimation():Boolean{ return (!(_hasVelocity)); } override protected function _animate(_arg1:String):void{ _asset.animate(_arg1); if (_arg1 == "idle"){ _asset.mc.rotation = 0; } else { _asset.mc.rotation = 0; }; _spin = 0; } public function testAndResolveDewCollision(_arg1:FireSwampSprite):void{ var _local2:WorkinPoint; if (_isUsedUp){ return; }; _local2 = collisionCenter.diff(_arg1.collisionCenter); if ((((Math.abs(_local2.x) > (collisionWidthHalf + _arg1.collisionWidthHalf))) || ((Math.abs(_local2.y) > (collisionHeightHalf + _arg1.collisionHeightHalf))))){ return; }; _arg1.onEntityCollision(this); } override protected function _recalculateDimensions():void{ var _local1:WorkinPoint; _local1 = _asset.getFrameDimensions("hit"); _displayWidth = _local1.x; _displayHeight = _local1.y; _halfDisplayWidth = (_displayWidth / 2); _halfDisplayHeight = (_displayHeight / 2); _recalculateDisplayCenter(); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.effects
Section 192
//Effect (com.wwb.princessbride.fire_swamp.world.entitys.effects.Effect) package com.wwb.princessbride.fire_swamp.world.entitys.effects { import com.workinman.lib.math.*; import com.wwb.princessbride.fire_swamp.world.entitys.*; public class Effect extends FireSwampSprite { protected var _removeTimer:Number; protected var _hasVelocity:Boolean; public function Effect(_arg1:Object){ super(_arg1); if (_removeAfterTimer){ _setRemoveTimer(); }; } protected function _clearVelocity():void{ _hasVelocity = false; _velocity = new WorkinPoint(0, 0, 0); } public function updateEverything(_arg1:Number):void{ if (_removeAfterAnimation){ if (_asset.mc.currentFrame == _asset.mc.totalFrames){ _remove(); }; }; if (_removeAfterTimer){ _removeTimer = (_removeTimer - _arg1); if (_removeTimer <= 0){ _remove(); }; }; if (_hasVelocity){ _applyVelocity(_arg1); }; } protected function _applyVelocity(_arg1:Number):void{ _pos.addPoint(_velocity.multiplyCopy(_arg1)); } override public function get group():String{ return ("effects"); } public function get room():Number{ return (-1); } override public function degenerate():void{ cleanUp(); _doDelete = true; _doDegenerate = false; } protected function get _removeAfterTimer():Boolean{ return (false); } override public function get type():String{ return ("effect"); } protected function get _removeTimerDuration():Number{ return (5); } protected function _setRemoveTimer():void{ _removeTimer = _removeTimerDuration; } protected function get _removeAfterAnimation():Boolean{ return (false); } protected function _remove():void{ if (_doDelete){ return; }; degenerateAfterErase(); _erase(); } protected function _setVelocity(_arg1:Number, _arg2:Number, _arg3:Number=0):void{ _hasVelocity = true; _velocity = new WorkinPoint(_arg1, _arg2, _arg3); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.effects
Section 193
//EffectCrumbParticle (com.wwb.princessbride.fire_swamp.world.entitys.effects.EffectCrumbParticle) package com.wwb.princessbride.fire_swamp.world.entitys.effects { import com.wwb.princessbride.fire_swamp.assets.*; public class EffectCrumbParticle extends Effect { private const _GRAVITY:Number = 300; public function EffectCrumbParticle(_arg1:Object){ _arg1.asset = EffectCrumbParticleAsset; super(_arg1); _setVelocity((100 - (Math.random() * 200)), (-200 - (Math.random() * -200))); _asset.scaleX = (_asset.scaleY = (1 - (Math.random() / 2))); } override public function updateEverything(_arg1:Number):void{ _velocity.y = (_velocity.y + (_GRAVITY * _arg1)); super.updateEverything(_arg1); } override protected function get _removeAfterTimer():Boolean{ return (true); } override protected function get _removeTimerDuration():Number{ return (1); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.effects
Section 194
//EffectLibrary (com.wwb.princessbride.fire_swamp.world.entitys.effects.EffectLibrary) package com.wwb.princessbride.fire_swamp.world.entitys.effects { public class EffectLibrary { public static function generateNewEffect(_arg1:Object):Effect{ switch (_arg1.type){ case "score": return (new ScoreEffect(_arg1)); case "dew": return (new DewProjectileEffect(_arg1)); case "crumbs": return (new CrumbsProjectileEffect(_arg1)); case "waterspan": return (new WaterSpanEffect(_arg1)); case "firespan": return (new FireSpanEffect(_arg1)); case "poisonspan": return (new PoisonSpanEffect(_arg1)); case "select": return (new CharEffectSparkle(_arg1)); case "heat": return (new CharEffectHeat(_arg1)); case "water": return (new CharEffectWater(_arg1)); case "poison": return (new CharEffectPoison(_arg1)); case "shield": return (new CharEffectShield(_arg1)); case "crumb": return (new EffectCrumbParticle(_arg1)); }; return (null); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.effects
Section 195
//FireSpanEffect (com.wwb.princessbride.fire_swamp.world.entitys.effects.FireSpanEffect) package com.wwb.princessbride.fire_swamp.world.entitys.effects { import com.workinman.paradise.assets.*; import com.wwb.princessbride.fire_swamp.assets.*; public class FireSpanEffect extends SpanEffect { public function FireSpanEffect(_arg1:Object){ super(_arg1); } override protected function _getNewSpanAsset():GameAsset{ return (new FireSpanAsset()); } override protected function get _OFFSET_Y():Number{ return (8); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.effects
Section 196
//GlowManager (com.wwb.princessbride.fire_swamp.world.entitys.effects.GlowManager) package com.wwb.princessbride.fire_swamp.world.entitys.effects { import com.wwb.princessbride.fire_swamp.*; import com.workinman.lib.events.*; import com.wwb.princessbride.fire_swamp.world.entitys.*; import com.workinman.lib.utils.*; public class GlowManager { private var _timer:Number; private var _ownerRef:FireSwampSprite; private var _type:String; private var _frequency:Number; private var _scatter:Boolean; public function GlowManager(_arg1:FireSwampSprite, _arg2:String, _arg3:Number, _arg4:Boolean=true){ _ownerRef = _arg1; _frequency = _arg3; _type = _arg2; _scatter = _arg4; _resetTimer(); } public function get type():String{ return (_type); } public function update(_arg1:Number):void{ _timer = (_timer - _arg1); if (_timer < 0){ showEffect(); _resetTimer(); }; } private function _randx():Number{ if (!_scatter){ return (0); }; return (((_ownerRef.displayWidth / 2) - (Math.random() * _ownerRef.displayWidth))); } private function _resetTimer():void{ _timer = _frequency; } public function showEffect():void{ WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.EVENT_PARTICLE_EFFECT, {x:(_ownerRef.pos.x + _randx()), y:(_ownerRef.pos.y + _randy()), type:_type})); } private function _randy():Number{ if (!_scatter){ return (-((_ownerRef.displayHeight / 2))); }; return ((-(Math.random()) * _ownerRef.displayHeight)); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.effects
Section 197
//PoisonSpanEffect (com.wwb.princessbride.fire_swamp.world.entitys.effects.PoisonSpanEffect) package com.wwb.princessbride.fire_swamp.world.entitys.effects { import com.workinman.paradise.assets.*; import com.wwb.princessbride.fire_swamp.assets.*; public class PoisonSpanEffect extends SpanEffect { public function PoisonSpanEffect(_arg1:Object){ super(_arg1); } override protected function _getNewSpanAsset():GameAsset{ return (new PoisonSpanAsset()); } override protected function get _SMALL_WIDTH():Number{ return (50); } override protected function get _OFFSET_Y():Number{ return (8); } override protected function get _LARGE_WIDTH():Number{ return (140); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.effects
Section 198
//ScoreEffect (com.wwb.princessbride.fire_swamp.world.entitys.effects.ScoreEffect) package com.wwb.princessbride.fire_swamp.world.entitys.effects { import com.wwb.princessbride.fire_swamp.*; import com.wwb.princessbride.fire_swamp.assets.*; public class ScoreEffect extends Effect { private var _alpha:Number; private var _value:String; private var _ALPHA_RATE:Number;// = 2 private var _isFading:Boolean; public function ScoreEffect(_arg1:Object){ _ALPHA_RATE = 2; _arg1.asset = ScoreEffectAsset; super(_arg1); _isFading = false; _alpha = 1; if (_arg1.isScore == true){ _value = (String(_arg1.value) + ((GameState.getInstance().multiplier > 1)) ? (" x" + String(GameState.getInstance().multiplier)) : ""); } else { _value = String(_arg1.value); }; _asset.mc.txt.text = _value; _setVelocity(0, -80); } override public function updateEverything(_arg1:Number):void{ if (((!(_isFading)) && ((_removeTimer < 0.6)))){ _isFading = true; }; if (_isFading){ _alpha = (_alpha - (_ALPHA_RATE * _arg1)); if (_alpha < 0){ _alpha = 0; }; _asset.alpha = _alpha; }; super.updateEverything(_arg1); } override public function get group():String{ return ("uieffects"); } override protected function get _removeAfterTimer():Boolean{ return (true); } override protected function get _removeTimerDuration():Number{ return (2); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.effects
Section 199
//SpanEffect (com.wwb.princessbride.fire_swamp.world.entitys.effects.SpanEffect) package com.wwb.princessbride.fire_swamp.world.entitys.effects { import com.workinman.lib.math.*; import com.workinman.paradise.assets.*; import com.wwb.princessbride.fire_swamp.assets.*; public class SpanEffect extends Effect { protected var _end:WorkinPoint; protected var _width:Number; protected var _start:WorkinPoint; protected var _room:Number; protected var _effects:Array; public function SpanEffect(_arg1:Object){ _arg1.asset = EmptyAsset; _arg1.x = _arg1.start.x; _arg1.y = (_arg1.start.y + _OFFSET_Y); super(_arg1); _room = _arg1.room; _start = _arg1.start.copy(); _end = _arg1.end.copy(); _width = (_end.x - _start.x); } protected function _getNewSpanAsset():GameAsset{ return (new WaterSpanAsset()); } override public function get group():String{ return ("ground"); } protected function get _SMALL_WIDTH():Number{ return (80); } override public function get room():Number{ return (_room); } override public function onDrawn():void{ var _local1:Number; var _local2:GameAsset; var _local3:Number; _effects = []; _local1 = 0; while (_local1 < (_width - _SMALL_WIDTH)) { _local2 = _getNewSpanAsset(); _local2.y = 0; _local2.x = _local1; _effects.push(_local2); _local3 = Math.ceil((Math.random() * 3)); if (_local3 == 0){ _local3 = 1; }; if (((((_width - _local1) >= _LARGE_WIDTH)) && ((Math.abs(((_width - _local1) - _LARGE_WIDTH)) > 10)))){ _local2.animate(("large" + _local3)); _local1 = (_local1 + _LARGE_WIDTH); } else { _local2.animate(("small" + _local3)); _local1 = (_local1 + _SMALL_WIDTH); }; _asset.addChild(_local2); }; _asset.x = (_asset.x + 10); super.onDrawn(); } protected function get _OFFSET_Y():Number{ return (8); } override public function onErased():void{ var _local1:Number; super.onErased(); _local1 = _effects.length; while (_local1--) { _asset.removeChild(_effects[_local1]); }; _effects = []; } protected function get _LARGE_WIDTH():Number{ return (150); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.effects
Section 200
//WaterSpanEffect (com.wwb.princessbride.fire_swamp.world.entitys.effects.WaterSpanEffect) package com.wwb.princessbride.fire_swamp.world.entitys.effects { import com.workinman.paradise.assets.*; import com.wwb.princessbride.fire_swamp.assets.*; public class WaterSpanEffect extends SpanEffect { public function WaterSpanEffect(_arg1:Object){ super(_arg1); } override protected function _getNewSpanAsset():GameAsset{ return (new WaterSpanAsset()); } override protected function get _OFFSET_Y():Number{ return (0); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.effects
Section 201
//Bridge (com.wwb.princessbride.fire_swamp.world.entitys.gizmos.Bridge) package com.wwb.princessbride.fire_swamp.world.entitys.gizmos { import com.wwb.princessbride.fire_swamp.*; import com.workinman.lib.math.*; import com.workinman.lib.sound.*; import com.workinman.lib.utils.*; import flash.geom.*; import com.wwb.princessbride.fire_swamp.events.*; import com.wwb.princessbride.fire_swamp.assets.*; public class Bridge extends Gizmo { private var _toggleevent:String; private var _color:uint; private var _facingLeft:Boolean; private var _startClosed:Boolean; private var _isOpen:Boolean; private var _dir:String; private var _registrationPoint:String; private var _transform:ColorTransform; public function Bridge(_arg1:Object){ _arg1.asset = BridgeAsset; _dir = _arg1.gizmoData.dir; _facingLeft = ((_dir == "left")) ? true : false; _startClosed = _arg1.gizmoData.startClosed; _toggleevent = _arg1.gizmoData.toggleEvent; _isOpen = _arg1.gizmoData.isOpen; _color = _arg1.gizmoData.color; WorkinDispatcher.getInstance().getRoom(FireSwampConfig.ROOM_TRIGGERS).addEventListener(_toggleevent, _onToggleEvent); super(_arg1); if (_isOpen){ _openIdle(); } else { _closeIdle(); }; _generateCollisionLines(); } private function _onToggleEvent(_arg1:ETrigger):void{ if (((((_arg1.on) && (_startClosed))) || (((!(_arg1.on)) && (!(_startClosed)))))){ _open(); } else { _close(); }; } override public function get entityCollisionAsSurface():Boolean{ return (true); } private function _closeIdle():void{ _animate("idleClose"); _isOpen = false; } override protected function _setCollisionBox():void{ collisionWidth = _displayWidth; collisionHeight = _displayHeight; } override protected function get _assetRegistrationPoint():String{ return (_registrationPoint); } public function get isOpen():Boolean{ return (_isOpen); } private function _openIdle():void{ _animate("idleOpen"); _isOpen = true; } override public function updateAnimation(_arg1:Number):void{ } override public function cleanUp():void{ WorkinDispatcher.getInstance().getRoom(FireSwampConfig.ROOM_TRIGGERS).removeEventListener(_toggleevent, _onToggleEvent); super.cleanUp(); } override public function get entityCollisionAsBox():Boolean{ return (false); } private function _close():void{ GlobalSound.getInstance().stopSound("bridgeDown"); GlobalSound.getInstance().playSound("bridgeUp", true); _animate("close"); _isOpen = false; _recalculateDimensions(); _setCollisionBox(); _generateCollisionLines(); } override public function get doComplexCollision():Boolean{ return (true); } override public function get type():String{ return ("bridge"); } private function _open():void{ GlobalSound.getInstance().stopSound("bridgeUp"); GlobalSound.getInstance().playSound("bridgeDown", true); _animate("open"); _isOpen = true; _recalculateDimensions(); _setCollisionBox(); _generateCollisionLines(); } override protected function _animate(_arg1:String):void{ var _local2:Number; _local2 = 0; if ((((_asset.animation == "open")) || ((_asset.animation == "close")))){ if (_asset.mc.currentFrame != _asset.mc.totalFrames){ _local2 = _asset.mc.currentFrame; }; }; _asset.animate(_arg1); if (_local2 > 0){ if ((_asset.mc.totalFrames - _local2) > 0){ _asset.mc.gotoAndPlay((_asset.mc.totalFrames - _local2)); }; }; if (_facingLeft){ _asset.scaleX = 1; } else { _asset.scaleX = -1; }; if (_color == 0){ asset.mc.color.visible = false; } else { asset.mc.color.visible = true; _transform = asset.mc.color.fill.transform.colorTransform; _transform.color = _color; asset.mc.color.fill.transform.colorTransform = _transform; }; } override protected function _recalculateDimensions():void{ var _local1:WorkinPoint; if (_isOpen){ _local1 = new WorkinPoint(147, 20); if (_facingLeft){ _registrationPoint = "cr"; } else { _registrationPoint = "cl"; }; } else { _local1 = new WorkinPoint(20, 147); if (_facingLeft){ _registrationPoint = "bl"; } else { _registrationPoint = "br"; }; }; _displayWidth = _local1.x; _displayHeight = _local1.y; _halfDisplayWidth = (_displayWidth / 2); _halfDisplayHeight = (_displayHeight / 2); _recalculateDisplayCenter(); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.gizmos
Section 202
//Checkpoint (com.wwb.princessbride.fire_swamp.world.entitys.gizmos.Checkpoint) package com.wwb.princessbride.fire_swamp.world.entitys.gizmos { import com.workinman.lib.math.*; import com.wwb.princessbride.fire_swamp.world.entitys.*; import com.wwb.princessbride.fire_swamp.assets.*; public class Checkpoint extends Gizmo { private var _triggered:Boolean; public function Checkpoint(_arg1:Object){ _arg1.asset = CheckpointAsset; _triggered = _arg1.gizmoData.triggered; super(_arg1); if (_triggered){ _on(); } else { _off(); }; } override protected function _setCollisionBox():void{ collisionWidth = _displayWidth; collisionHeight = _displayHeight; } override protected function get _assetRegistrationPoint():String{ return ("bc"); } protected function _on():void{ _triggered = true; _animate("idleon"); } protected function _trigger():void{ _triggered = true; _animate("trigger"); } override public function onEntityCollision(_arg1:FireSwampSprite):void{ if ((((_arg1.type == "dew")) || ((_arg1.type == "crumbspile")))){ return; }; if (!_triggered){ _trigger(); }; } protected function _off():void{ _triggered = false; _animate("idleoff"); } public function get isTriggered():Boolean{ return (_triggered); } override public function get type():String{ return ("checkpoint"); } override protected function _recalculateDimensions():void{ var _local1:WorkinPoint; _local1 = _asset.getFrameDimensions("idleoff"); _displayWidth = _local1.x; _displayHeight = _local1.y; _halfDisplayWidth = (_displayWidth / 2); _halfDisplayHeight = (_displayHeight / 2); _recalculateDisplayCenter(); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.gizmos
Section 203
//FireMoss (com.wwb.princessbride.fire_swamp.world.entitys.gizmos.FireMoss) package com.wwb.princessbride.fire_swamp.world.entitys.gizmos { import com.wwb.princessbride.fire_swamp.*; import com.workinman.lib.math.*; import com.wwb.princessbride.fire_swamp.world.entitys.*; import com.wwb.princessbride.fire_swamp.assets.*; public class FireMoss extends Gizmo { private var _isHanging:Boolean; private var _damage:Number; private var _isBurning:Boolean; public function FireMoss(_arg1:Object){ _isHanging = _arg1.gizmoData.isHanging; _arg1.asset = FireMossAsset; _isBurning = _arg1.gizmoData.isBurning; super(_arg1); if (_isBurning){ _on(); } else { _off(); }; _damage = Number(GameState.getInstance().getConfigOption("fireMossHeatDamage")); _generateCollisionLines(); } override public function get entityCollisionAsSurface():Boolean{ return (_isBurning); } override protected function _setCollisionBox():void{ collisionWidth = _displayWidth; collisionHeight = _displayHeight; } override protected function get _assetRegistrationPoint():String{ return ((_isHanging) ? "tc" : "bc"); } private function _on():void{ _animate(((_isHanging) ? "hang" : "rest" + "on")); _isBurning = true; } override public function onEntityCollision(_arg1:FireSwampSprite):void{ if (((!((_arg1.type == "dew"))) || (!(_isBurning)))){ return; }; _off(); } private function _off():void{ _animate(((_isHanging) ? "hang" : "rest" + "off")); _isBurning = false; } override public function updateAnimation(_arg1:Number):void{ } override public function get type():String{ return ("firemoss"); } public function get isBurning():Boolean{ return (_isBurning); } override public function get damage():Number{ return (_damage); } override protected function _recalculateDimensions():void{ var _local1:WorkinPoint; _local1 = _asset.getFrameDimensions(((_isHanging) ? "hang" : "rest" + "on")); _displayWidth = (_local1.x * 0.85); _displayHeight = _local1.y; _halfDisplayWidth = (_displayWidth / 2); _halfDisplayHeight = (_displayHeight / 2); _recalculateDisplayCenter(); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.gizmos
Section 204
//FireSpout (com.wwb.princessbride.fire_swamp.world.entitys.gizmos.FireSpout) package com.wwb.princessbride.fire_swamp.world.entitys.gizmos { import com.wwb.princessbride.fire_swamp.*; import com.workinman.lib.math.*; import com.workinman.lib.sound.*; import com.wwb.princessbride.fire_swamp.world.entitys.*; import com.workinman.lib.utils.*; import com.wwb.princessbride.fire_swamp.events.*; import com.wwb.princessbride.fire_swamp.assets.*; public class FireSpout extends Gizmo { private var _active:Boolean; private var _toggleevent:String; private var _onTime:Number; private var _damage:Number; private var _pulseTimer:Number; private var _startTime:Number; private var _doesPulse:Boolean; private var _offTime:Number; private var _behavior:String; public function FireSpout(_arg1:Object){ _arg1.asset = FireSpoutAsset; _behavior = _arg1.gizmoData.behavior; if (_behavior == "pulse"){ _doesPulse = true; _onTime = _arg1.gizmoData.ontime; _offTime = _arg1.gizmoData.offtime; _startTime = _arg1.gizmoData.starttime; } else { if (_behavior == "constant"){ _doesPulse = false; _toggleevent = _arg1.gizmoData.toggleEvent; WorkinDispatcher.getInstance().getRoom(FireSwampConfig.ROOM_TRIGGERS).addEventListener(_toggleevent, _onToggleEvent); _pulseTimer = 0; }; }; super(_arg1); if (_arg1.gizmoData.startBurning){ _onIdle(); if (_behavior == "pulse"){ _pulseTimer = (_onTime - _startTime); }; } else { _offIdle(); if (_behavior == "pulse"){ _pulseTimer = (_offTime - (_startTime - _onTime)); }; }; _damage = Number(GameState.getInstance().getConfigOption((_doesPulse) ? "fireSpoutHeatDamage" : "constantSpoutHeatDamage")); _generateCollisionLines(); } private function _onToggleEvent(_arg1:ETrigger):void{ if (_arg1.on){ _off(); } else { _on(); }; } override public function get entityCollisionAsSurface():Boolean{ return (_active); } override protected function _setCollisionBox():void{ collisionWidth = _displayWidth; collisionHeight = _displayHeight; } override protected function get _assetRegistrationPoint():String{ return ("bc"); } private function _offIdle():void{ _animate("idleOff"); _active = false; } override public function onEntityCollision(_arg1:FireSwampSprite):void{ } private function _on():void{ _animate("on"); _active = true; if (_mcVisible){ GlobalSound.getInstance().playSound("firespoutOn"); }; } override public function updateAnimation(_arg1:Number):void{ if (_doesPulse){ _pulseTimer = (_pulseTimer - _arg1); if (_pulseTimer <= 0){ if (_active){ _off(); _pulseTimer = _offTime; } else { _on(); _pulseTimer = _onTime; }; }; }; } private function _off():void{ _animate("off"); _active = false; if (_mcVisible){ GlobalSound.getInstance().playSound("firespoutOff"); }; } override public function cleanUp():void{ if (_behavior == "constant"){ WorkinDispatcher.getInstance().getRoom(FireSwampConfig.ROOM_TRIGGERS).removeEventListener(_toggleevent, _onToggleEvent); }; super.cleanUp(); } public function get active():Boolean{ return (_active); } override public function get type():String{ return ("firespout"); } private function _onIdle():void{ _animate("idleOn"); _active = true; } override public function get damage():Number{ return (_damage); } override protected function _recalculateDimensions():void{ var _local1:WorkinPoint; _local1 = _asset.getFrameDimensions("idleOn"); _displayWidth = _local1.x; _displayHeight = _local1.y; _halfDisplayWidth = (_displayWidth / 2); _halfDisplayHeight = (_displayHeight / 2); _recalculateDisplayCenter(); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.gizmos
Section 205
//Gate (com.wwb.princessbride.fire_swamp.world.entitys.gizmos.Gate) package com.wwb.princessbride.fire_swamp.world.entitys.gizmos { import com.wwb.princessbride.fire_swamp.*; import com.workinman.lib.math.*; import com.workinman.lib.utils.*; import flash.geom.*; import com.wwb.princessbride.fire_swamp.events.*; import com.wwb.princessbride.fire_swamp.assets.*; public class Gate extends Gizmo { private var _toggleevent:String; private var _color:uint; private var _startClosed:Boolean; private var _isOpen:Boolean; private var _transform:ColorTransform; public function Gate(_arg1:Object){ _arg1.asset = GateAsset; _startClosed = _arg1.gizmoData.startClosed; _toggleevent = _arg1.gizmoData.toggleEvent; _isOpen = _arg1.gizmoData.isOpen; _color = _arg1.gizmoData.color; WorkinDispatcher.getInstance().getRoom(FireSwampConfig.ROOM_TRIGGERS).addEventListener(_toggleevent, _onToggleEvent); super(_arg1); if (_isOpen){ _openIdle(); } else { _closeIdle(); }; _generateCollisionLines(); } private function _onToggleEvent(_arg1:ETrigger):void{ if (((((_arg1.on) && (_startClosed))) || (((!(_arg1.on)) && (!(_startClosed)))))){ _open(); } else { _close(); }; } override public function get entityCollisionAsSurface():Boolean{ return (true); } private function _closeIdle():void{ _animate("idleClose"); _isOpen = false; } override protected function _setCollisionBox():void{ collisionWidth = _displayWidth; collisionHeight = _displayHeight; } override protected function get _assetRegistrationPoint():String{ return ("bc"); } public function get isOpen():Boolean{ return (_isOpen); } private function _openIdle():void{ _animate("idleOpen"); _isOpen = true; } override public function updateAnimation(_arg1:Number):void{ } override public function cleanUp():void{ WorkinDispatcher.getInstance().getRoom(FireSwampConfig.ROOM_TRIGGERS).removeEventListener(_toggleevent, _onToggleEvent); super.cleanUp(); } private function _close():void{ _animate("close"); _isOpen = false; _recalculateDimensions(); _setCollisionBox(); _generateCollisionLines(); } override public function get doComplexCollision():Boolean{ return (true); } override public function get type():String{ return ("gate"); } private function _open():void{ _animate("open"); _isOpen = true; _recalculateDimensions(); _setCollisionBox(); _generateCollisionLines(); } override protected function _animate(_arg1:String):void{ var _local2:Number; _local2 = 0; if ((((_asset.animation == "open")) || ((_asset.animation == "close")))){ if (_asset.mc.currentFrame != _asset.mc.totalFrames){ _local2 = _asset.mc.currentFrame; }; }; _asset.animate(_arg1); if (_local2 > 0){ if ((_asset.mc.totalFrames - _local2) > 0){ _asset.mc.gotoAndPlay((_asset.mc.totalFrames - _local2)); }; }; if (_color == 0){ asset.mc.color.visible = false; } else { asset.mc.color.visible = true; _transform = asset.mc.color.fill.transform.colorTransform; _transform.color = _color; asset.mc.color.fill.transform.colorTransform = _transform; }; } override protected function _recalculateDimensions():void{ var _local1:WorkinPoint; if (_isOpen){ _local1 = new WorkinPoint(0, 0); } else { _local1 = new WorkinPoint(14, 143); }; _displayWidth = _local1.x; _displayHeight = _local1.y; _halfDisplayWidth = (_displayWidth / 2); _halfDisplayHeight = (_displayHeight / 2); _recalculateDisplayCenter(); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.gizmos
Section 206
//Gizmo (com.wwb.princessbride.fire_swamp.world.entitys.gizmos.Gizmo) package com.wwb.princessbride.fire_swamp.world.entitys.gizmos { import com.wwb.princessbride.fire_swamp.world.entitys.*; public class Gizmo extends RoomInhabitant { public function Gizmo(_arg1:Object){ _generator = _arg1.gizmoData; _arg1.x = _arg1.gizmoData.x; _arg1.y = _arg1.gizmoData.y; super(_arg1); _setCollisionBox(); } override public function get group():String{ return ("gizmos"); } public function updateAnimation(_arg1:Number):void{ } } }//package com.wwb.princessbride.fire_swamp.world.entitys.gizmos
Section 207
//GizmoLibrary (com.wwb.princessbride.fire_swamp.world.entitys.gizmos.GizmoLibrary) package com.wwb.princessbride.fire_swamp.world.entitys.gizmos { import com.wwb.princessbride.fire_swamp.data.gizmos.*; public class GizmoLibrary { public static function generateNewGizmo(_arg1:GizmoData, _arg2:Number):Gizmo{ switch (_arg1.type){ case "vine": return (new Vine({gizmoData:_arg1, room:_arg2})); case "swingvine": return (new SwingVine({gizmoData:_arg1, room:_arg2})); case "switch": return (new Switch({gizmoData:_arg1, room:_arg2})); case "multiswitch": return (new MultiSwitch({gizmoData:_arg1, room:_arg2})); case "firespout": return (new FireSpout({gizmoData:_arg1, room:_arg2})); case "firemoss": return (new FireMoss({gizmoData:_arg1, room:_arg2})); case "bridge": return (new Bridge({gizmoData:_arg1, room:_arg2})); case "gate": return (new Gate({gizmoData:_arg1, room:_arg2})); case "portal": return (new Portal({gizmoData:_arg1, room:_arg2})); case "spikes": return (new Spike({gizmoData:_arg1, room:_arg2})); case "checkpoint": return (new Checkpoint({gizmoData:_arg1, room:_arg2})); case "goal": return (new Goal({gizmoData:_arg1, room:_arg2})); }; return (null); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.gizmos
Section 208
//Goal (com.wwb.princessbride.fire_swamp.world.entitys.gizmos.Goal) package com.wwb.princessbride.fire_swamp.world.entitys.gizmos { import com.workinman.lib.math.*; import com.wwb.princessbride.fire_swamp.assets.*; public class Goal extends Gizmo { public function Goal(_arg1:Object){ _arg1.asset = GoalAsset; super(_arg1); } override protected function _setCollisionBox():void{ collisionWidth = _displayWidth; collisionHeight = _displayHeight; } override protected function get _assetRegistrationPoint():String{ return ("bc"); } override public function get type():String{ return ("goal"); } override protected function _recalculateDimensions():void{ var _local1:WorkinPoint; _local1 = _asset.getFrameDimensions("idle"); _displayWidth = _local1.x; _displayHeight = _local1.y; _halfDisplayWidth = (_displayWidth / 2); _halfDisplayHeight = (_displayHeight / 2); _recalculateDisplayCenter(); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.gizmos
Section 209
//MultiSwitch (com.wwb.princessbride.fire_swamp.world.entitys.gizmos.MultiSwitch) package com.wwb.princessbride.fire_swamp.world.entitys.gizmos { import com.wwb.princessbride.fire_swamp.*; import com.workinman.lib.events.*; import com.workinman.lib.utils.*; public class MultiSwitch extends Switch { public function MultiSwitch(_arg1:Object){ super(_arg1); WorkinDispatcher.getInstance().getRoom(FireSwampConfig.ROOM_TRIGGERS).dispatchEvent(new EData(FireSwampConfig.EVENT_ANNOUNCE_MULTI_SWITCH, {event:_event})); } override protected function _trigger():void{ _heldDown = true; if (!_toggle){ _active = !(_active); if (_active){ _animate("todown"); } else { _animate("toup"); }; } else { _active = true; _animate("todown"); }; WorkinDispatcher.getInstance().getRoom(FireSwampConfig.ROOM_TRIGGERS).dispatchEvent(new EData(FireSwampConfig.EVENT_ACTIVATE_MULTI_SWITCH, {event:_event, on:_active})); } override public function cleanUp():void{ WorkinDispatcher.getInstance().getRoom(FireSwampConfig.ROOM_TRIGGERS).dispatchEvent(new EData(FireSwampConfig.EVENT_REMOVE_MULTI_SWITCH, {event:_event})); super.cleanUp(); } override protected function _release():void{ _heldDown = false; if (_toggle){ WorkinDispatcher.getInstance().getRoom(FireSwampConfig.ROOM_TRIGGERS).dispatchEvent(new EData(FireSwampConfig.EVENT_ACTIVATE_MULTI_SWITCH, {event:_event, on:false})); _active = false; _animate("toup"); }; } override public function get type():String{ return ("multiswitch"); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.gizmos
Section 210
//Portal (com.wwb.princessbride.fire_swamp.world.entitys.gizmos.Portal) package com.wwb.princessbride.fire_swamp.world.entitys.gizmos { import com.wwb.princessbride.fire_swamp.*; import com.workinman.lib.math.*; import com.workinman.lib.events.*; import com.workinman.lib.utils.*; import com.wwb.princessbride.fire_swamp.events.*; import com.wwb.princessbride.fire_swamp.assets.*; public class Portal extends Gizmo { private var _active:Boolean; private var _toggleevent:String; private var _powerless:Boolean; private var _portalID:String; public function Portal(_arg1:Object){ _arg1.asset = PortalAsset; _portalID = _arg1.gizmoData.id; _powerless = _arg1.gizmoData.powerless; super(_arg1); if (_powerless){ _offIdle(); _toggleevent = _arg1.gizmoData.toggleEvent; WorkinDispatcher.getInstance().getRoom(FireSwampConfig.ROOM_TRIGGERS).addEventListener(_toggleevent, _onToggleEvent); } else { _onIdle(); }; WorkinDispatcher.getInstance().getRoom(FireSwampConfig.ROOM_TRIGGERS).addEventListener(FireSwampConfig.EVENT_PLAYER_PORTAL, _onPortalRequest); if (GameState.getInstance().getConfigOption("showPortals") == "false"){ visible = false; }; _generateCollisionLines(); } private function _onToggleEvent(_arg1:ETrigger):void{ if (_arg1.on){ _off(); } else { _on(); }; } override public function get entityCollisionAsSurface():Boolean{ return (false); } override protected function _setCollisionBox():void{ collisionWidth = _displayWidth; collisionHeight = _displayHeight; } override protected function get _assetRegistrationPoint():String{ return ("bc"); } private function _on():void{ _animate("on"); _active = true; } private function _onPortalRequest(_arg1:EData):void{ if (((!((_arg1.data.portal.id == _portalID))) || ((_arg1.data.portal == this)))){ return; }; if (_powerless){ WorkinDispatcher.getInstance().getRoom(FireSwampConfig.ROOM_TRIGGERS).dispatchEvent(new EData(FireSwampConfig.EVENT_PORTAL_RESPONSE, {fail:true})); return; }; WorkinDispatcher.getInstance().getRoom(FireSwampConfig.ROOM_TRIGGERS).dispatchEvent(new EData(FireSwampConfig.EVENT_PORTAL_RESPONSE, {portal:this, fail:false})); } private function _offIdle():void{ _animate("idleOff"); _active = false; } private function _off():void{ _animate("off"); _active = false; } override public function cleanUp():void{ if (_powerless){ WorkinDispatcher.getInstance().getRoom(FireSwampConfig.ROOM_TRIGGERS).removeEventListener(_toggleevent, _onToggleEvent); }; WorkinDispatcher.getInstance().getRoom(FireSwampConfig.ROOM_TRIGGERS).removeEventListener(FireSwampConfig.EVENT_PLAYER_PORTAL, _onPortalRequest); super.cleanUp(); } public function get active():Boolean{ return (_active); } public function get id():String{ return (_portalID); } override public function get type():String{ return ("portal"); } private function _onIdle():void{ _animate("idleOn"); _active = true; } override protected function _recalculateDimensions():void{ var _local1:WorkinPoint; _local1 = new WorkinPoint(15, 10); _displayWidth = _local1.x; _displayHeight = _local1.y; _halfDisplayWidth = (_displayWidth / 2); _halfDisplayHeight = (_displayHeight / 2); _recalculateDisplayCenter(); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.gizmos
Section 211
//Spike (com.wwb.princessbride.fire_swamp.world.entitys.gizmos.Spike) package com.wwb.princessbride.fire_swamp.world.entitys.gizmos { import com.wwb.princessbride.fire_swamp.*; import com.workinman.lib.math.*; import com.wwb.princessbride.fire_swamp.assets.*; public class Spike extends Gizmo { private var _damage:Number; public function Spike(_arg1:Object){ _arg1.asset = SpikeAsset; _damage = Number(GameState.getInstance().getConfigOption("fireMossHeatDamage")); super(_arg1); } override public function get entityCollisionAsSurface():Boolean{ return (false); } override protected function _setCollisionBox():void{ collisionWidth = _displayWidth; collisionHeight = _displayHeight; } override protected function get _assetRegistrationPoint():String{ return ("bc"); } override public function get type():String{ return ("spike"); } override public function get damage():Number{ return (_damage); } override protected function _recalculateDimensions():void{ var _local1:WorkinPoint; _local1 = _asset.getFrameDimensions("idle"); _displayWidth = (_local1.x - 15); _displayHeight = _local1.y; _halfDisplayWidth = (_displayWidth / 2); _halfDisplayHeight = (_displayHeight / 2); _recalculateDisplayCenter(); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.gizmos
Section 212
//SwingVine (com.wwb.princessbride.fire_swamp.world.entitys.gizmos.SwingVine) package com.wwb.princessbride.fire_swamp.world.entitys.gizmos { import com.workinman.lib.math.*; import com.workinman.paradise.world.camera.*; import com.workinman.paradise.math.*; import com.wwb.princessbride.fire_swamp.world.entitys.*; import com.workinman.paradise.assets.*; import com.wwb.princessbride.fire_swamp.world.entitys.mobs.players.*; public class SwingVine extends Gizmo { private const _HANG_DEPTH:Number = 15; private const _MAX_SWING_OFFSET:Number = 15; private const _COLLISION_OFFSET_Y:Number = 60; private const _COLLISION_OFFSET_X:Number = 130; private const _IDLE_ROTATION:Number = 32; private const _NUB_SWING_DIST:Number = 14; private var _swingerRef:Player; private var _isHeld:Boolean; private var _vineLength:Number; private var _idleDir:String; private var _hangLine:WorkinPoint; private var _diff:WorkinPoint; private var _prevDiffX:Number; private var _isSwinging:Boolean; private var _swingOffset:Number; private static var _SWING_RATE:Number = 50; private static var _SWING_MAX:Number = 60; private static var _HANG_Y_OFFSET:Number = 90; private static var _HANG_X_OFFSET:Number = 150; public function SwingVine(_arg1:Object){ _arg1.asset = EmptyAsset; _hangLine = new WorkinPoint(); _vineLength = 190; _idleDir = _arg1.gizmoData.dir; super(_arg1); _generateCollisionBox(); } override protected function _generateCollisionBox():void{ _collisionBox = new CollisionBox(_hdBoxWidth, _hdBoxHeight, _displayCenter.addCopy((_COLLISION_OFFSET_X * ((_idleDir == "left")) ? -1 : 1), _COLLISION_OFFSET_Y, 0)); _collisionCenter = _collisionBox.getCollisionCenter(_pos); } public function onReleased():void{ if (_swingerRef.pos.x > _pos.x){ _idleDir = "right"; } else { _idleDir = "left"; }; _generateCollisionBox(); _isHeld = false; _isSwinging = false; } public function get isLeft():Boolean{ return ((_idleDir == "left")); } public function onSwing(_arg1:Player):void{ _swingerRef = _arg1; _isSwinging = true; } override protected function _setCollisionBox():void{ collisionWidth = _displayWidth; collisionHeight = _displayHeight; } override protected function get _assetRegistrationPoint():String{ return ("tc"); } public function getCenterY():Number{ return ((_pos.y + _vineLength)); } override public function onEntityCollision(_arg1:FireSwampSprite):void{ if (_arg1.type == "player"){ if (!Player(_arg1).isAirborne){ return; }; }; } override protected function _renderPosition(_arg1:BaseCamera):void{ super._renderPosition(_arg1); _asset.mc.graphics.clear(); _asset.mc.graphics.lineStyle(3, 6264629, 1); _asset.mc.graphics.moveTo(0, 0); if (_isSwinging){ _diff = _pos.diff(_swingerRef.pos); _asset.mc.graphics.curveTo((_diff.x / 2), (_diff.y - 90), _diff.x, (_diff.y - 60)); _swingOffset = (-(((_diff.x - _prevDiffX) / _MAX_SWING_OFFSET)) * _NUB_SWING_DIST); _hangLine.to(_swingOffset, ((1 - Math.abs((_swingOffset / _NUB_SWING_DIST))) * _HANG_DEPTH)); _hangLine.length = _HANG_DEPTH; _hangLine.add(_diff.x, _diff.y); } else { if (_isHeld){ _diff = _pos.diff(_swingerRef.pos); _asset.mc.graphics.curveTo((_diff.x / 2), (_diff.y - 50), _diff.x, (_diff.y - 40)); _hangLine.to(_diff.x, (_diff.y - 20)); } else { _diff = new WorkinPoint(((isLeft) ? -1 : 1 * _HANG_X_OFFSET), _HANG_Y_OFFSET); _asset.mc.graphics.curveTo((_diff.x / 2), _diff.y, _diff.x, _diff.y); _hangLine.to(_diff.x, (_diff.y + 20)); }; }; _asset.mc.graphics.lineTo(_hangLine.x, _hangLine.y); _prevDiffX = _diff.x; } override public function get type():String{ return ("swingvine"); } override protected function _recalculateDimensions():void{ _displayWidth = 50; _displayHeight = 40; _halfDisplayWidth = (_displayWidth / 2); _halfDisplayHeight = (_displayHeight / 2); _recalculateDisplayCenter(); } public function onHeld(_arg1:Player):void{ _swingerRef = _arg1; _isHeld = true; } } }//package com.wwb.princessbride.fire_swamp.world.entitys.gizmos
Section 213
//Switch (com.wwb.princessbride.fire_swamp.world.entitys.gizmos.Switch) package com.wwb.princessbride.fire_swamp.world.entitys.gizmos { import com.wwb.princessbride.fire_swamp.*; import com.wwb.princessbride.fire_swamp.world.entitys.*; import com.wwb.princessbride.fire_swamp.world.entitys.mobs.*; import com.workinman.lib.utils.*; import com.workinman.paradise.events.*; import flash.geom.*; import com.wwb.princessbride.fire_swamp.world.entitys.mobs.players.*; import com.wwb.princessbride.fire_swamp.events.*; import com.wwb.princessbride.fire_swamp.assets.*; public class Switch extends Gizmo { protected var _active:Boolean; protected var _color:uint; protected var _toggle:Boolean; protected var _heldDownThisUpdate:Boolean; protected var _heldDown:Boolean; protected var _event:String; protected var _transform:ColorTransform; public function Switch(_arg1:Object){ _arg1.asset = SwitchAsset; _toggle = _arg1.gizmoData.toggle; _event = _arg1.gizmoData.event; _heldDown = _arg1.gizmoData.isHeldDown; _color = _arg1.gizmoData.color; if (!_toggle){ _active = _arg1.gizmoData.isActive; } else { _active = false; }; super(_arg1); if (_toggle){ if (_heldDown){ _animate("down"); _heldDownThisUpdate = true; } else { _animate("up"); _heldDownThisUpdate = false; }; } else { if (_active){ _animate("down"); } else { _animate("up"); }; }; } public function get _assetPrefix():String{ return ((_toggle) ? "pad" : "lever"); } override protected function _setCollisionBox():void{ collisionWidth = _displayWidth; collisionHeight = 20; } override protected function get _assetRegistrationPoint():String{ return ("bc"); } protected function _trigger():void{ _heldDown = true; if (!_toggle){ _active = !(_active); if (_active){ _animate("todown"); } else { _animate("toup"); }; } else { _active = true; _animate("todown"); }; WorkinDispatcher.getInstance().getRoom(FireSwampConfig.ROOM_TRIGGERS).dispatchEvent(new ETrigger(_event, _active)); } override public function onEntityCollision(_arg1:FireSwampSprite):void{ if ((((((_arg1.type == "dew")) || ((_arg1.type == "crumbspile")))) || (Mobile(_arg1).isAirborne))){ return; }; _heldDownThisUpdate = true; if (!_heldDown){ if (_arg1.type == "player"){ (_arg1 as Player).chat("switch"); }; _trigger(); }; } public function get isHeldDown():Boolean{ return (_heldDown); } public function get isActive():Boolean{ return (_active); } override public function get type():String{ return ("switch"); } protected function _release():void{ _heldDown = false; if (_toggle){ WorkinDispatcher.getInstance().getRoom(FireSwampConfig.ROOM_TRIGGERS).dispatchEvent(new ETrigger(_event, false)); _active = false; _animate("toup"); }; } override protected function _animate(_arg1:String):void{ super._animate((_assetPrefix + _arg1)); if (_color == 0){ asset.mc.color.visible = false; } else { asset.mc.color.visible = true; _transform = asset.mc.color.fill.transform.colorTransform; _transform.color = _color; asset.mc.color.fill.transform.colorTransform = _transform; }; } override protected function _onRender(_arg1:ECamera):void{ if (((!(_heldDownThisUpdate)) && (_heldDown))){ _release(); }; super._onRender(_arg1); _heldDownThisUpdate = false; } override protected function _recalculateDimensions():void{ _displayWidth = 26; _displayHeight = 40; _halfDisplayWidth = (_displayWidth / 2); _halfDisplayHeight = (_displayHeight / 2); _recalculateDisplayCenter(); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.gizmos
Section 214
//Vine (com.wwb.princessbride.fire_swamp.world.entitys.gizmos.Vine) package com.wwb.princessbride.fire_swamp.world.entitys.gizmos { import com.workinman.lib.sound.*; import com.workinman.lib.events.*; import com.wwb.princessbride.fire_swamp.world.entitys.*; import com.wwb.princessbride.fire_swamp.world.entitys.mobs.players.*; import com.wwb.princessbride.fire_swamp.assets.*; public class Vine extends Gizmo { private var _length:Number; private var _coiled:Boolean; private var _isUncoilAnimating:Boolean; private var _uncoilProgress:Number; private static var _ASSET_WIDTH:Number = 11; private static var _UNCOIL_RATE:Number = 300; public function Vine(_arg1:Object){ _arg1.asset = VineAsset; _coiled = _arg1.gizmoData.coiled; _length = _arg1.gizmoData.length; super(_arg1); _isUncoilAnimating = false; _uncoilProgress = 0; if (isCoiled){ _toCoiled(); } else { _toUncoiled(); }; } override protected function _setCollisionBox():void{ if (_coiled){ collisionWidth = 45; collisionHeight = _ASSET_WIDTH; } else { collisionWidth = _ASSET_WIDTH; collisionHeight = (_length + 10); }; } override protected function get _assetRegistrationPoint():String{ return ("tc"); } private function _toUncoiled():void{ _animate("idle"); _setDisplayLength(_length); } override public function onEntityCollision(_arg1:FireSwampSprite):void{ if (!isCoiled){ return; }; if (_arg1.type == "player"){ if (Player(_arg1).isAirborne){ return; }; uncoil(); }; } public function uncoil():void{ _animate("idle"); _setDisplayLength(1); _isUncoilAnimating = true; _coiled = false; _recalculateDimensions(); _setCollisionBox(); GlobalSound.getInstance().playSound("dropVine"); } override public function updateAnimation(_arg1:Number):void{ if (_isUncoilAnimating){ _uncoilProgress = (_uncoilProgress + (_UNCOIL_RATE * _arg1)); if (_uncoilProgress > _length){ _uncoilProgress = _length; _isUncoilAnimating = false; }; _setDisplayLength(_uncoilProgress); }; } private function _toCoiled():void{ _animate("coiled"); } override public function get type():String{ return ("vine"); } public function get isCoiled():Boolean{ return (_coiled); } private function _setDisplayLength(_arg1:Number):void{ _asset.dispatchToAnim(new EData(VineLengthAsset.EVENT_SET_LENGTH, {len:_arg1})); } override protected function _recalculateDimensions():void{ if (_coiled){ _displayWidth = _ASSET_WIDTH; _displayHeight = _ASSET_WIDTH; } else { _displayWidth = _ASSET_WIDTH; _displayHeight = (_length + 10); }; _halfDisplayWidth = (_displayWidth / 2); _halfDisplayHeight = (_displayHeight / 2); _recalculateDisplayCenter((_coiled) ? "cc" : ""); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.gizmos
Section 215
//Crumbs (com.wwb.princessbride.fire_swamp.world.entitys.items.Crumbs) package com.wwb.princessbride.fire_swamp.world.entitys.items { import com.workinman.lib.sound.*; import com.wwb.princessbride.fire_swamp.world.entitys.mobs.players.*; import com.wwb.princessbride.fire_swamp.assets.*; public class Crumbs extends Item { private var _isConsumePermanent:Boolean; public function Crumbs(_arg1:Object){ _arg1.asset = CrumbsAsset; _isConsumePermanent = _arg1.itemData.noreset; super(_arg1); } override protected function _setCollisionBox():void{ collisionWidth = 20; collisionHeight = 20; } override protected function get _assetRegistrationPoint():String{ return ("bc"); } override protected function _onConsumed():void{ if (_isConsumed){ return; }; _asset.visible = false; super._onConsumed(); GlobalSound.getInstance().playSound("crumbsPickup"); } override public function get respawnTime():Number{ return (10); } override protected function _onRespawn():void{ _asset.visible = true; super._onRespawn(); } override protected function _reactPlayerCollision(_arg1:Player):void{ } override public function get consumeIsPermanent():Boolean{ return (_isConsumePermanent); } override public function get type():String{ return ("crumbs"); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.items
Section 216
//Dew (com.wwb.princessbride.fire_swamp.world.entitys.items.Dew) package com.wwb.princessbride.fire_swamp.world.entitys.items { import com.workinman.lib.sound.*; import com.wwb.princessbride.fire_swamp.world.entitys.mobs.players.*; import com.wwb.princessbride.fire_swamp.assets.*; public class Dew extends Item { private var _isConsumePermanent:Boolean; public function Dew(_arg1:Object){ _arg1.asset = DewAsset; _isConsumePermanent = _arg1.itemData.noreset; super(_arg1); } override protected function _setCollisionBox():void{ collisionWidth = 20; collisionHeight = 20; } override protected function get _assetRegistrationPoint():String{ return ("cc"); } override protected function _onConsumed():void{ if (_isConsumed){ return; }; super._onConsumed(); GlobalSound.getInstance().playSound("dewPickup"); } override public function get respawnTime():Number{ return (7); } override protected function _reactPlayerCollision(_arg1:Player):void{ } override public function get consumeIsPermanent():Boolean{ return (_isConsumePermanent); } override public function get type():String{ return ("dew"); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.items
Section 217
//FireShield (com.wwb.princessbride.fire_swamp.world.entitys.items.FireShield) package com.wwb.princessbride.fire_swamp.world.entitys.items { import com.wwb.princessbride.fire_swamp.assets.*; public class FireShield extends Item { private var _VALUE:Number;// = 100 public function FireShield(_arg1:Object){ _VALUE = 100; _arg1.asset = FireShieldAsset; super(_arg1); } override protected function _setCollisionBox():void{ collisionWidth = 20; collisionHeight = 20; } override protected function get _assetRegistrationPoint():String{ return ("cc"); } override protected function _onConsumed():void{ super._onConsumed(); } override public function get type():String{ return ("shield"); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.items
Section 218
//Gem (com.wwb.princessbride.fire_swamp.world.entitys.items.Gem) package com.wwb.princessbride.fire_swamp.world.entitys.items { import com.wwb.princessbride.fire_swamp.*; import com.workinman.lib.sound.*; import com.workinman.lib.events.*; import com.workinman.lib.utils.*; import com.wwb.princessbride.fire_swamp.assets.*; public class Gem extends Item { private var _value:Number; public function Gem(_arg1:Object){ _value = _arg1.itemData.value; _arg1.asset = GemAsset; super(_arg1); _animate("idle"); } override protected function _setCollisionBox():void{ collisionWidth = 35; collisionHeight = 25; } override protected function get _assetRegistrationPoint():String{ return ("cc"); } override protected function _onConsumed():void{ super._onConsumed(); GlobalSound.getInstance().playSound(("gemPickup" + _value)); GameState.getInstance().onPlayerGetGem(_value); WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.EVENT_SCORE_EFFECT, {x:_pos.x, y:_pos.y, isScore:true, value:GameState.getInstance().calculateGemScoreValue(_value)})); } override public function get type():String{ return ("gem"); } override protected function _animate(_arg1:String):void{ super._animate((_arg1 + _value)); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.items
Section 219
//Item (com.wwb.princessbride.fire_swamp.world.entitys.items.Item) package com.wwb.princessbride.fire_swamp.world.entitys.items { import com.wwb.princessbride.fire_swamp.world.entitys.*; import com.wwb.princessbride.fire_swamp.world.entitys.mobs.players.*; public class Item extends RoomInhabitant { public var _isConsumed:Boolean; protected var _respawnTimer:Number; public function Item(_arg1:Object){ _generator = _arg1.itemData; _arg1.x = _arg1.itemData.x; _arg1.y = _arg1.itemData.y; super(_arg1); _isConsumed = _arg1.itemData.isConsumed; _setCollisionBox(); } public function requestConsume():void{ if (_isConsumed){ return; }; _onConsumed(); } override public function get group():String{ return ("mobiles"); } protected function _onConsumed():void{ if (_isConsumed){ return; }; _animate("vanish"); _isConsumed = true; if (!consumeIsPermanent){ _respawnTimer = respawnTime; }; } public function get respawnTime():Number{ return (5); } override public function onEntityCollision(_arg1:FireSwampSprite):void{ switch (_arg1.type){ case "player": _reactPlayerCollision(Player(_arg1)); break; }; } public function updateAnimation(_arg1:Number):void{ if (((_isConsumed) && (!(consumeIsPermanent)))){ _respawnTimer = (_respawnTimer - _arg1); if (_respawnTimer <= 0){ _onRespawn(); }; }; } protected function _onRespawn():void{ _isConsumed = false; _asset.alpha = 0; _asset.alphaTo(1, 0.6); _animate("idle"); } protected function _reactPlayerCollision(_arg1:Player):void{ if (_isConsumed){ return; }; _onConsumed(); } override public function degenerate():void{ if (!consumeIsPermanent){ _isConsumed = false; }; super.degenerate(); } public function get consumeIsPermanent():Boolean{ return (true); } public function get isConsumed():Boolean{ return (_isConsumed); } override public function get type():String{ return ("item"); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.items
Section 220
//ItemLibrary (com.wwb.princessbride.fire_swamp.world.entitys.items.ItemLibrary) package com.wwb.princessbride.fire_swamp.world.entitys.items { import com.wwb.princessbride.fire_swamp.data.items.*; public class ItemLibrary { public static function generateNewItem(_arg1:ItemData, _arg2:Number):Item{ switch (_arg1.type){ case "gem": return (new Gem({itemData:_arg1, room:_arg2})); case "water": return (new WaterItem({itemData:_arg1, room:_arg2})); case "life": return (new Life({itemData:_arg1, room:_arg2})); case "shield": return (new FireShield({itemData:_arg1, room:_arg2})); case "multiplier": case "mult": return (new Multiplier({itemData:_arg1, room:_arg2})); case "stick": return (new Stick({itemData:_arg1, room:_arg2})); case "dew": return (new Dew({itemData:_arg1, room:_arg2})); case "crumbs": return (new Crumbs({itemData:_arg1, room:_arg2})); case "time": return (new Time({itemData:_arg1, room:_arg2})); }; return (null); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.items
Section 221
//Life (com.wwb.princessbride.fire_swamp.world.entitys.items.Life) package com.wwb.princessbride.fire_swamp.world.entitys.items { import com.wwb.princessbride.fire_swamp.assets.*; public class Life extends Item { private var _VALUE:Number;// = 100 public function Life(_arg1:Object){ _VALUE = 100; _arg1.asset = LifeAsset; super(_arg1); } override protected function _setCollisionBox():void{ collisionWidth = 20; collisionHeight = 20; } override protected function get _assetRegistrationPoint():String{ return ("cc"); } override protected function _onConsumed():void{ super._onConsumed(); } override public function get type():String{ return ("life"); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.items
Section 222
//Multiplier (com.wwb.princessbride.fire_swamp.world.entitys.items.Multiplier) package com.wwb.princessbride.fire_swamp.world.entitys.items { import com.wwb.princessbride.fire_swamp.*; import com.workinman.lib.sound.*; import com.workinman.lib.events.*; import com.workinman.lib.utils.*; import com.wwb.princessbride.fire_swamp.assets.*; public class Multiplier extends Item { private var _value:Number; public function Multiplier(_arg1:Object){ _arg1.asset = MultiplierAsset; _value = _arg1.itemData.value; super(_arg1); _onIdle(); } override protected function _setCollisionBox():void{ collisionWidth = 20; collisionHeight = 20; } override protected function get _assetRegistrationPoint():String{ return ("cc"); } override protected function _onConsumed():void{ if (_isConsumed){ return; }; switch (_value){ case 1: _animate("vanishTwo"); break; case 2: _animate("vanishFive"); break; case 3: _animate("vanishTen"); break; }; _isConsumed = true; GlobalSound.getInstance().playSound("multPickup"); if (!consumeIsPermanent){ _respawnTimer = respawnTime; }; WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.EVENT_COLLECT_MULTIPLIER, {value:getValue()})); WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.EVENT_SCORE_EFFECT, {x:_pos.x, y:_pos.y, value:getValueDisplay()})); } private function getValueDisplay():String{ return (("x" + String(getValue()))); } override public function get type():String{ return ("multiplier"); } private function _onIdle():void{ switch (_value){ case 1: _animate("idleTwo"); break; case 2: _animate("idleFive"); break; case 3: _animate("idleTen"); break; }; } private function getValue():Number{ switch (_value){ case 1: default: return (2); case 2: return (5); case 3: return (10); }; } } }//package com.wwb.princessbride.fire_swamp.world.entitys.items
Section 223
//Stick (com.wwb.princessbride.fire_swamp.world.entitys.items.Stick) package com.wwb.princessbride.fire_swamp.world.entitys.items { import com.wwb.princessbride.fire_swamp.world.entitys.mobs.players.*; import com.wwb.princessbride.fire_swamp.assets.*; public class Stick extends Item { private var _isConsumePermanent:Boolean; public function Stick(_arg1:Object){ _arg1.asset = StickAsset; _isConsumePermanent = _arg1.itemData.noreset; super(_arg1); } override protected function _setCollisionBox():void{ collisionWidth = 15; collisionHeight = 25; } override protected function get _assetRegistrationPoint():String{ return ("bc"); } override protected function _onConsumed():void{ super._onConsumed(); } override protected function _reactPlayerCollision(_arg1:Player):void{ if (_arg1.character != "buttercup"){ return; }; if (_isConsumed){ return; }; _onConsumed(); } override public function get consumeIsPermanent():Boolean{ return (_isConsumePermanent); } override public function get type():String{ return ("stick"); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.items
Section 224
//Time (com.wwb.princessbride.fire_swamp.world.entitys.items.Time) package com.wwb.princessbride.fire_swamp.world.entitys.items { import com.wwb.princessbride.fire_swamp.assets.*; public class Time extends Item { private var _VALUE:Number;// = 100 public function Time(_arg1:Object){ _VALUE = 100; _arg1.asset = TimeAsset; super(_arg1); } override protected function _setCollisionBox():void{ collisionWidth = 20; collisionHeight = 20; } override protected function get _assetRegistrationPoint():String{ return ("cc"); } override protected function _onConsumed():void{ super._onConsumed(); } override public function get type():String{ return ("time"); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.items
Section 225
//WaterItem (com.wwb.princessbride.fire_swamp.world.entitys.items.WaterItem) package com.wwb.princessbride.fire_swamp.world.entitys.items { import com.wwb.princessbride.fire_swamp.assets.*; public class WaterItem extends Item { private var _VALUE:Number;// = 100 public function WaterItem(_arg1:Object){ _VALUE = 100; _arg1.asset = WaterItemAsset; super(_arg1); } override protected function _setCollisionBox():void{ collisionWidth = 20; collisionHeight = 20; } override protected function get _assetRegistrationPoint():String{ return ("cc"); } override protected function _onConsumed():void{ super._onConsumed(); } override public function get type():String{ return ("water"); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.items
Section 226
//FlyRous (com.wwb.princessbride.fire_swamp.world.entitys.mobs.hostiles.FlyRous) package com.wwb.princessbride.fire_swamp.world.entitys.mobs.hostiles { import com.wwb.princessbride.fire_swamp.*; import com.workinman.lib.math.*; import com.workinman.lib.sound.*; import com.workinman.lib.events.*; import com.workinman.paradise.world.camera.*; import com.workinman.paradise.math.*; import com.wwb.princessbride.fire_swamp.world.entitys.*; import com.wwb.princessbride.fire_swamp.world.entitys.mobs.*; import com.workinman.lib.utils.*; import com.wwb.princessbride.fire_swamp.world.entitys.mobs.players.*; import com.wwb.princessbride.fire_swamp.world.entitys.surfaces.*; import com.wwb.princessbride.fire_swamp.assets.*; public class FlyRous extends Mobile { private const _FLAP_SOUND_FREQUENCY:Number = 1.2; private const _FADE_RATE:Number = 1; private var _isSliding:Boolean; private var _invincibleTimer:Number; private var _attackTimer:Number; private var _LAUNCH_RATE:Number;// = 90 private var _bloodthirstyFrictionRate:Number; private var _hortMotion:Number; private var _injuredTimer:Number; private var _hasFoundSurface:Boolean; private var _DEFAULT_HEALTH:Number;// = 60 private var _touchedSurfaceThisUpdate:Boolean; private var _isAlive:Boolean; private var _damage:Number; private var _bloodthirstyAccelRate:Number; private var _EDGE_CAUTION:Number;// = 10 private var _isEating:Boolean; private var _isAttacking:Boolean; private var _ATTACK_COOLDOWN_DURATION:Number;// = 0.8 private var _fadeOutTimer:Number; private var _INJURED_DURATION:Number;// = 0.5 private var _difficulty:Number; protected var _touchedKnockbackThisUpdate:Boolean; private var _snapshotTimer:Number; private var _ATTACK_END_FRAME:Number;// = 17 private var _knockbackForce:WorkinPoint; private var _ATTACK_RANGE:Number;// = 105 private var _ATTACK_FRAME:Number;// = 11 private var _attackCooldownTimer:Number; private var _bloodTarget:Mobile; private var _fadeAlpha:Number; private var _AGGRO_RADIUS:Number;// = 200 private var _INVINCIBLE_DURATION:Number;// = 0.5 private var _flapSoundTimer:Number; private var _bloodthirstyMaxRate:Number; private var _isInjured:Boolean; private var _surface:SurfaceCollisionLine; private var _ATTACK_DURATION:Number;// = 0.1 private var _health:Number; private var _isLaunching:Boolean; private var _isBloodthirsty:Boolean; private var _MIN_ATTACK_RANGE:Number;// = 3 private var _hoverY:Number; public function FlyRous(_arg1:Object):void{ _DEFAULT_HEALTH = 60; _INJURED_DURATION = 0.5; _INVINCIBLE_DURATION = 0.5; _ATTACK_DURATION = 0.1; _ATTACK_COOLDOWN_DURATION = 0.8; _ATTACK_FRAME = 11; _ATTACK_END_FRAME = 17; _ATTACK_RANGE = 105; _MIN_ATTACK_RANGE = 3; _AGGRO_RADIUS = 200; _LAUNCH_RATE = 90; _EDGE_CAUTION = 10; _generator = _arg1.mobData; _arg1.asset = FlyRousAsset; _arg1.x = _arg1.mobData.x; _arg1.y = _arg1.mobData.y; _isAlive = _arg1.mobData.isAlive; super(_arg1); _hoverY = (pos.y - _arg1.mobData.flyheight); _difficulty = _arg1.mobData.difficulty; _health = Number(GameState.getInstance().getConfigOption("flyingRousHealth")); _damage = Number(GameState.getInstance().getConfigOption("flyingRousHeatDamage")); _fadeAlpha = 1; _snapshotTimer = 0.5; _attackCooldownTimer = 0; _flapSoundTimer = (Math.random() * _FLAP_SOUND_FREQUENCY); _hortMotion = 0; _invincibleTimer = 0; _isLaunching = true; _hasFoundSurface = false; _isBloodthirsty = false; _isSliding = false; _isAttacking = false; _isInjured = false; _isEating = false; _isWeightless = true; _touchedKnockbackThisUpdate = false; WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.EVENT_CRUMBS_PULSE, _onCrumbsPulse); WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.EVENT_CRUMBS_DESPAWN, _onCrumbsDespawn); } protected function _onEat():void{ _isEating = true; _hortMotion = 0; _voluntaryVelocity.x = 0; if (_bloodTarget.pos.x < _pos.x){ _hortMotion = -1; _asset.scaleX = 1; _facingLeft = true; } else { _hortMotion = 1; _asset.scaleX = -1; _facingLeft = false; }; } public function get isDangerous():Boolean{ return (((((_isAttacking) && ((_asset.animation == "attack")))) && ((((_asset.mc.currentFrame >= _ATTACK_FRAME)) && ((_asset.mc.currentFrame <= _ATTACK_END_FRAME)))))); } override protected function _setCollisionBox():void{ if (_isAlive){ collisionWidth = 70; collisionHeight = 70; } else { collisionWidth = 15; }; } protected function _reactPlayerCollision(_arg1:Player):void{ if (!_isAlive){ return; }; if (_arg1.isDangerous){ if (((((_arg1.isFacingLeft) && ((_arg1.pos.x > _pos.x)))) || (((!(_arg1.isFacingLeft)) && ((_arg1.pos.x < _pos.x)))))){ _takeKnockbackDamage(_arg1.damage, (_arg1.pos.x - _pos.x)); }; }; } private function _takeDamage(_arg1:Number):void{ if (_invincibleTimer > 0){ return; }; _invincibleTimer = _INVINCIBLE_DURATION; _isAttacking = false; _attackTimer = 0; _health = (_health - _arg1); } private function _onCrumbsDespawn(_arg1:EData):void{ if (((_isBloodthirsty) && ((_arg1.data.source == _bloodTarget)))){ _endBloodrage(); _isEating = false; }; } private function _takeKnockbackDamage(_arg1:Number, _arg2:Number):void{ if (_invincibleTimer > 0){ return; }; _isInjured = true; _isEating = false; _touchedKnockbackThisUpdate = true; _takeDamage(_arg1); if (_health <= 0){ _injuredTimer = 0; _knockbackForce = new WorkinPoint(((_arg2 < 0)) ? 200 : -200, -100); return; }; _injuredTimer = _INJURED_DURATION; _knockbackForce = new WorkinPoint(((_arg2 < 0)) ? 200 : -200, 0); } private function _applyEdgeCaution():void{ if (!_isAlive){ return; }; if (_surface.length < (_EDGE_CAUTION * 2)){ if (_surface.centerX < (_pos.x - 10)){ _hortMotion = -1; } else { if (_surface.centerX > (_pos.x + 10)){ _hortMotion = 1; } else { _hortMotion = 0; }; }; }; if (_hortMotion == 1){ if ((_surface.p1.x - _pos.x) < _EDGE_CAUTION){ _hortMotion = -1; }; } else { if (_hortMotion == -1){ if ((_pos.x - _surface.p0.x) < _EDGE_CAUTION){ _hortMotion = 1; }; }; }; } override public function updatePosition():void{ if (((!(_isAlive)) && (!(_touchedSurfaceThisUpdate)))){ _hasFoundSurface = false; }; super.updatePosition(); if (_isLaunching){ if (pos.y < _hoverY){ _isLaunching = false; _voluntaryVelocity.to(0, 0, 0); pos.y = _hoverY; }; } else { if (_touchedKnockbackThisUpdate){ _voluntaryVelocity.x = 0; if (_involuntaryVelocity.y < 0){ _knockbackForce.y = 0; }; _addMomentaryForce(_knockbackForce); }; }; _touchedSurfaceThisUpdate = false; _touchedKnockbackThisUpdate = false; } private function _onDie():void{ var _local1:String; _fadeOutTimer = 5; _isAlive = false; _isBloodthirsty = false; _isAttacking = false; _isEating = false; _isLaunching = false; _isWeightless = false; _setCollisionBox(); _local1 = ((Math.random() < 0.5)) ? "1" : "2"; GlobalSound.getInstance().playSound(("rousDeath" + _local1)); GameState.getInstance().onPlayerKillFlyingRous(); WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.EVENT_SCORE_EFFECT, {x:_pos.x, y:_pos.y, isScore:true, value:GameState.getInstance().calculateRousScoreValue(true)})); _generateCollisionBox(); } override public function testAndResolveSurfaceCollision(_arg1:Surface):void{ if (_predictedMotionSweeps.length == 0){ return; }; _loop = _arg1.collisionLines.length; while (_loop--) { if (_resolveSurfaceCollisions(_testLineCollision(_arg1.collisionLines[_loop]))){ if (_primaryCollision.surfaceLine.normal.x == 0){ if (_hasFoundSurface){ if (_surface == _primaryCollision.surfaceLine){ _touchedSurfaceThisUpdate = true; }; } else { if (((!(_isLaunching)) && (_isAlive))){ } else { _hasFoundSurface = true; _touchedSurfaceThisUpdate = true; _surface = _primaryCollision.surfaceLine; }; }; }; }; }; } override public function get isAlive():Boolean{ return (_isAlive); } override protected function _setMotionRates():void{ super._setMotionRates(); _baseMaxRate = 60; _baseGroundAccelRate = 100; _baseGroundFrictionRate = 60; _bloodthirstyMaxRate = 110; _bloodthirstyAccelRate = 270; _bloodthirstyFrictionRate = 100; _voluntaryMaxRate = _baseMaxRate; _groundAccelRate = _baseGroundAccelRate; _groundFrictionRate = _baseGroundFrictionRate; } private function _updateAISnapshot():void{ var _local1:WorkinPoint; if (!_isAlive){ return; }; if (_isEating){ _hortMotion = 0; _snapshotTimer = 1; } else { if (_isBloodthirsty){ _local1 = _bloodTarget.pos.diff(_pos); if ((((_local1.x > _MIN_ATTACK_RANGE)) || ((Math.random() < 0.3)))){ if (_bloodTarget.pos.x < _pos.x){ _hortMotion = -1; } else { _hortMotion = 1; }; } else { if (Math.random() < 0.3){ } else { if (_bloodTarget.pos.x < _pos.x){ _hortMotion = 1; } else { _hortMotion = -1; }; }; }; if ((((Math.abs(_local1.x) < _ATTACK_RANGE)) && ((Math.abs(_local1.x) > _MIN_ATTACK_RANGE)))){ if (_bloodTarget.type == "crumbspile"){ } else { _onAttack(); }; }; _snapshotTimer = 0.5; } else { if (_hortMotion == 0){ _hortMotion = ((Math.random() < 0.5)) ? -1 : 1; } else { _hortMotion = 0; }; _snapshotTimer = (0.5 + (Math.random() * 3)); }; }; } override public function get combatCollisionWidthHalf():Number{ return ((_hdBoxWidthHalf + 30)); } override protected function _generateCollisionBox():void{ super._generateCollisionBox(); } override public function updatePrediction(_arg1:Number):void{ _snapshotTimer = (_snapshotTimer - _arg1); if (_invincibleTimer > 0){ _invincibleTimer = (_invincibleTimer - _arg1); }; if (_isInjured){ _injuredTimer = (_injuredTimer - _arg1); if (_injuredTimer < 0){ _isInjured = false; if (_health <= 0){ _onDie(); }; }; }; if (_isLaunching){ if (_hasFoundSurface){ _voluntaryVelocity.add(0, (-(_arg1) * _LAUNCH_RATE)); } else { _voluntaryVelocity.add(0, (_arg1 * _LAUNCH_RATE)); }; } else { if (_isAlive){ if (_snapshotTimer < 0){ _updateAISnapshot(); }; if (_isAttacking){ _updateAttack(_arg1); _voluntaryVelocity.decay(((_groundFrictionRate * _arg1) * 1.5)); } else { _attackCooldownTimer = (_attackCooldownTimer - _arg1); _applyEdgeCaution(); _flapSoundTimer = (_flapSoundTimer - _arg1); if (_flapSoundTimer < 0){ if (_mcVisible){ GlobalSound.getInstance().playSound("rousFly"); }; _flapSoundTimer = (_FLAP_SOUND_FREQUENCY + Math.random()); }; }; if ((((_hortMotion < 0)) && (!(_isAttacking)))){ _voluntaryVelocity.add((-(_arg1) * (_groundAccelRate + ((_voluntaryVelocity.x > 0)) ? _groundFrictionRate : 0)), 0, 0); if (_voluntaryVelocity.x > 0){ _isSliding = true; }; } else { if ((((_hortMotion > 0)) && (!(_isAttacking)))){ _voluntaryVelocity.add((_arg1 * (_groundAccelRate + ((_voluntaryVelocity.x < 0)) ? _groundFrictionRate : 0)), 0, 0); if (_voluntaryVelocity.x < 0){ _isSliding = true; }; } else { _voluntaryVelocity.decay(((_groundFrictionRate * _arg1) * 1.5)); if (Math.abs(_voluntaryVelocity.x) > 0){ _isSliding = true; }; }; }; } else { _voluntaryVelocity.decay(((_airFrictionRate * _arg1) * 2)); if (!_isAlive){ if ((((_fadeOutTimer > 0)) || ((_fadeAlpha > 0)))){ _fadeOutTimer = (_fadeOutTimer - _arg1); if (_fadeOutTimer < 0){ _fadeAlpha = (_fadeAlpha - (_FADE_RATE * _arg1)); if (_fadeAlpha < 0){ _fadeAlpha = 0; }; _asset.alpha = _fadeAlpha; }; }; }; }; }; if (_voluntaryVelocity.x > _voluntaryMaxRate){ _voluntaryVelocity.x = _voluntaryMaxRate; }; if (_voluntaryVelocity.x < -(_voluntaryMaxRate)){ _voluntaryVelocity.x = -(_voluntaryMaxRate); }; if (_involuntaryVelocity.x != 0){ _involuntaryVelocity.decayX(((_groundFrictionRate * _arg1) * 2)); }; super.updatePrediction(_arg1); } override public function get entityCollisionAsSurface():Boolean{ return (false); } protected function _updateAttack(_arg1:Number):void{ _attackTimer = (_attackTimer - _arg1); if ((((_attackTimer <= 0)) && ((_asset.mc.currentFrame == _asset.mc.totalFrames)))){ _isAttacking = false; _attackCooldownTimer = _ATTACK_COOLDOWN_DURATION; _updateAISnapshot(); }; } override protected function get _assetRegistrationPoint():String{ return ("cc"); } protected function _onAttack():void{ if (((_isAttacking) || ((_attackCooldownTimer > 0)))){ return; }; GlobalSound.getInstance().playSound("rousDive"); if (_bloodTarget.pos.x < _pos.x){ if (_voluntaryVelocity.x > 0){ _voluntaryVelocity.x = (_voluntaryVelocity.x * -1); }; _hortMotion = -1; _asset.scaleX = 1; _facingLeft = true; } else { if (_voluntaryVelocity.x < 0){ _voluntaryVelocity.x = (_voluntaryVelocity.x * -1); }; _hortMotion = 1; _asset.scaleX = -1; _facingLeft = false; }; _isAttacking = true; _attackTimer = _ATTACK_DURATION; } override public function onEntityCollision(_arg1:FireSwampSprite):void{ switch (_arg1.type){ case "player": _reactPlayerCollision(Player(_arg1)); break; }; } override public function updateAI(_arg1:Array):void{ var _local2:Boolean; var _local3:Number; var _local4:Number; if (!_isAlive){ return; }; if (((_isBloodthirsty) && ((_bloodTarget.type == "crumbspile")))){ return; }; _local2 = false; _local3 = 0; _local4 = _AGGRO_RADIUS; _loop = _arg1.length; while (_loop--) { if (_arg1[_loop].pos.diff(_pos).length < _local4){ _local2 = true; _local3 = _loop; _local4 = _arg1[_loop].pos.diff(_pos).length; }; }; if (((_local2) && (((!(_isBloodthirsty)) || (!((_bloodTarget == _arg1[_local3]))))))){ _bloodrage(_arg1[_local3]); } else { if (((_isBloodthirsty) && (!(_local2)))){ _endBloodrage(); }; }; } override public function cleanUp():void{ WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.EVENT_CRUMBS_PULSE, _onCrumbsPulse); WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.EVENT_CRUMBS_DESPAWN, _onCrumbsDespawn); super.cleanUp(); } private function _bloodrage(_arg1:Mobile):void{ if (_isLaunching){ return; }; _isBloodthirsty = true; _bloodTarget = _arg1; _snapshotTimer = 0; _voluntaryMaxRate = _bloodthirstyMaxRate; _groundAccelRate = _bloodthirstyAccelRate; _groundFrictionRate = _bloodthirstyFrictionRate; } override protected function _renderPosition(_arg1:BaseCamera):void{ x = (_arg1.center.x + (_pos.x - _arg1.x)); y = ((_arg1.center.y + (_pos.y - _arg1.y)) - (_isAlive) ? 36 : 0); } override protected function _determineAnimation():void{ if (!_isAlive){ _animate("dead"); } else { if (_isInjured){ _animate("damage"); } else { if (_isAttacking){ _animate("attack"); } else { _animate("fly"); }; }; }; _isSliding = false; } override public function get combatCollisionHeightHalf():Number{ return ((_hdBoxHeightHalf + 50)); } override public function get type():String{ return ("flyrous"); } private function _onCrumbsPulse(_arg1:EData):void{ if (_arg1.data.source.pos.diff(_pos).length < _AGGRO_RADIUS){ _bloodrage(_arg1.data.source); }; } override public function onPause():void{ if (_isAlive){ _animate("pause"); }; } override public function get damage():Number{ return ((_damage + (_difficulty * 5))); } private function _endBloodrage():void{ _isBloodthirsty = false; _voluntaryMaxRate = _baseMaxRate; _groundAccelRate = _baseGroundAccelRate; _groundFrictionRate = _baseGroundFrictionRate; } override protected function _recalculateDimensions():void{ var _local1:WorkinPoint; _local1 = _asset.getFrameDimensions("idle"); _displayWidth = _local1.x; _displayHeight = _local1.y; _halfDisplayWidth = (_displayWidth / 2); _halfDisplayHeight = (_displayHeight / 2); _recalculateDisplayCenter(); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.mobs.hostiles
Section 227
//Rous (com.wwb.princessbride.fire_swamp.world.entitys.mobs.hostiles.Rous) package com.wwb.princessbride.fire_swamp.world.entitys.mobs.hostiles { import com.wwb.princessbride.fire_swamp.*; import com.workinman.lib.math.*; import com.workinman.lib.sound.*; import com.workinman.lib.events.*; import com.workinman.paradise.math.*; import com.wwb.princessbride.fire_swamp.world.entitys.*; import com.wwb.princessbride.fire_swamp.world.entitys.mobs.*; import com.workinman.lib.utils.*; import com.wwb.princessbride.fire_swamp.world.entitys.mobs.players.*; import com.wwb.princessbride.fire_swamp.world.entitys.surfaces.*; import com.wwb.princessbride.fire_swamp.world.entitys.mobs.inanimates.*; import com.wwb.princessbride.fire_swamp.assets.*; public class Rous extends Mobile { private const _FADE_RATE:Number = 1; private var _isSliding:Boolean; private var _invincibleTimer:Number; private var _attackTimer:Number; private var _bloodthirstyFrictionRate:Number; private var _hortMotion:Number; private var _injuredTimer:Number; private var _hasFoundSurface:Boolean; private var _DEFAULT_HEALTH:Number;// = 60 private var _touchedSurfaceThisUpdate:Boolean; private var _isAlive:Boolean; private var _damage:Number; private var _EAT_DIST_Y:Number;// = 20 private var _bloodthirstyAccelRate:Number; private var _EDGE_CAUTION:Number;// = 50 private var _isEating:Boolean; private var _EAT_DIST_X:Number;// = 50 private var _isAttacking:Boolean; private var _ATTACK_COOLDOWN_DURATION:Number;// = 0.8 private var _fadeOutTimer:Number; private var _INJURED_DURATION:Number;// = 0.5 private var _difficulty:Number; protected var _touchedKnockbackThisUpdate:Boolean; private var _snapshotTimer:Number; private var _ATTACK_END_FRAME:Number;// = 14 private var _knockbackForce:WorkinPoint; private var _ATTACK_RANGE:Number;// = 70 private var _ATTACK_FRAME:Number;// = 11 private var _attackCooldownTimer:Number; private var _bloodTarget:Mobile; private var _fadeAlpha:Number; private var _AGGRO_RADIUS:Number;// = 200 private var _INVINCIBLE_DURATION:Number;// = 0.5 private var _bloodthirstyMaxRate:Number; private var _isInjured:Boolean; private var _surface:SurfaceCollisionLine; private var _ATTACK_DURATION:Number;// = 0.1 private var _health:Number; private var _isBloodthirsty:Boolean; private var _MIN_ATTACK_RANGE:Number;// = 2 public function Rous(_arg1:Object):void{ _DEFAULT_HEALTH = 60; _INJURED_DURATION = 0.5; _INVINCIBLE_DURATION = 0.5; _ATTACK_DURATION = 0.1; _ATTACK_COOLDOWN_DURATION = 0.8; _ATTACK_FRAME = 11; _ATTACK_END_FRAME = 14; _EAT_DIST_X = 50; _EAT_DIST_Y = 20; _ATTACK_RANGE = 70; _MIN_ATTACK_RANGE = 2; _AGGRO_RADIUS = 200; _EDGE_CAUTION = 50; _generator = _arg1.mobData; _arg1.asset = RousAsset; _arg1.x = _arg1.mobData.x; _arg1.y = _arg1.mobData.y; super(_arg1); _difficulty = _arg1.mobData.difficulty; _health = Number(GameState.getInstance().getConfigOption("rousHealth")); _damage = Number(GameState.getInstance().getConfigOption("rousHeatDamage")); _snapshotTimer = 0.5; _attackCooldownTimer = 0; _fadeAlpha = 1; _hortMotion = 0; _invincibleTimer = 0; _hasFoundSurface = false; _isBloodthirsty = false; _isSliding = false; _isAttacking = false; _isInjured = false; _isEating = false; _isAlive = _arg1.mobData.isAlive; _touchedKnockbackThisUpdate = false; WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.EVENT_CRUMBS_PULSE, _onCrumbsPulse); WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.EVENT_CRUMBS_DESPAWN, _onCrumbsDespawn); } protected function _onEat(_arg1:Mobile):void{ _isEating = true; _hortMotion = 0; _voluntaryVelocity.x = 0; (_arg1 as CrumbsPile).onEat(); if (_bloodTarget.pos.x < _pos.x){ _hortMotion = -1; _asset.scaleX = 1; _facingLeft = true; } else { _hortMotion = 1; _asset.scaleX = -1; _facingLeft = false; }; } public function get isDangerous():Boolean{ return (((((_isAttacking) && ((_asset.animation == "attack")))) && ((((_asset.mc.currentFrame >= _ATTACK_FRAME)) && ((_asset.mc.currentFrame <= _ATTACK_END_FRAME)))))); } override protected function _setCollisionBox():void{ collisionWidth = 62; collisionHeight = 50; } protected function _reactPlayerCollision(_arg1:Player):void{ if (!_isAlive){ return; }; if (_arg1.isDangerous){ if (((((_arg1.isFacingLeft) && ((_arg1.pos.x > _pos.x)))) || (((!(_arg1.isFacingLeft)) && ((_arg1.pos.x < _pos.x)))))){ _arg1.onAttackCauseDamage(); _takeKnockbackDamage(_arg1.damage, (_arg1.pos.x - _pos.x)); }; }; } private function _takeDamage(_arg1:Number):void{ if (_invincibleTimer > 0){ return; }; _invincibleTimer = _INVINCIBLE_DURATION; _isAttacking = false; _attackTimer = 0; _health = (_health - _arg1); } private function _onCrumbsDespawn(_arg1:EData):void{ if (((_isBloodthirsty) && ((_arg1.data.source == _bloodTarget)))){ _endBloodrage(); _isEating = false; }; } private function _takeKnockbackDamage(_arg1:Number, _arg2:Number):void{ if (_invincibleTimer > 0){ return; }; _isInjured = true; _isEating = false; _takeDamage(_arg1); if (_health <= 0){ _injuredTimer = 0; return; }; _injuredTimer = _INJURED_DURATION; _touchedKnockbackThisUpdate = true; _knockbackForce = new WorkinPoint(((_arg2 < 0)) ? 220 : -220, -20, 0); } private function _applyEdgeCaution():void{ if (!_isAlive){ return; }; if (_surface.length < (_EDGE_CAUTION * 2)){ if (_surface.centerX < (_pos.x - 10)){ _hortMotion = -1; } else { if (_surface.centerX > (_pos.x + 10)){ _hortMotion = 1; } else { _hortMotion = 0; }; }; }; if (_hortMotion == 1){ if ((_surface.p1.x - _pos.x) < _EDGE_CAUTION){ _hortMotion = -1; }; } else { if (_hortMotion == -1){ if ((_pos.x - _surface.p0.x) < _EDGE_CAUTION){ _hortMotion = 1; }; }; }; } override public function updatePosition():void{ if (!_touchedSurfaceThisUpdate){ _hasFoundSurface = false; }; super.updatePosition(); if (_touchedKnockbackThisUpdate){ _voluntaryVelocity.x = 0; if (_involuntaryVelocity.y < 0){ _knockbackForce.y = 0; }; _addMomentaryForce(_knockbackForce); }; _touchedSurfaceThisUpdate = false; _touchedKnockbackThisUpdate = false; } private function _onDie():void{ var _local1:String; _fadeOutTimer = 5; _isAlive = false; _isBloodthirsty = false; _isAttacking = false; _isEating = false; _local1 = ((Math.random() < 0.5)) ? "1" : "2"; GlobalSound.getInstance().playSound(("rousDeath" + _local1)); GameState.getInstance().onPlayerKillRous(); WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.EVENT_SCORE_EFFECT, {x:_pos.x, y:_pos.y, isScore:true, value:GameState.getInstance().calculateRousScoreValue()})); } override public function testAndResolveSurfaceCollision(_arg1:Surface):void{ if (_predictedMotionSweeps.length == 0){ return; }; _loop = _arg1.collisionLines.length; while (_loop--) { if (_resolveSurfaceCollisions(_testLineCollision(_arg1.collisionLines[_loop]))){ if (_primaryCollision.surfaceLine.normal.x == 0){ if (_hasFoundSurface){ if (_surface == _primaryCollision.surfaceLine){ _touchedSurfaceThisUpdate = true; }; } else { _hasFoundSurface = true; _touchedSurfaceThisUpdate = true; _surface = _primaryCollision.surfaceLine; }; }; }; }; } override public function get isAlive():Boolean{ return (_isAlive); } override protected function _setMotionRates():void{ super._setMotionRates(); _baseMaxRate = 60; _baseGroundAccelRate = 100; _baseGroundFrictionRate = 60; _bloodthirstyMaxRate = 110; _bloodthirstyAccelRate = 270; _bloodthirstyFrictionRate = 100; _voluntaryMaxRate = _baseMaxRate; _groundAccelRate = _baseGroundAccelRate; _groundFrictionRate = _baseGroundFrictionRate; } private function _updateAISnapshot():void{ var _local1:WorkinPoint; if (!_isAlive){ return; }; if (_isEating){ _hortMotion = 0; _snapshotTimer = 1; } else { if (_isBloodthirsty){ _local1 = _bloodTarget.pos.diff(_pos); if ((((((_local1.x > _MIN_ATTACK_RANGE)) || ((Math.random() < 0.3)))) || ((_bloodTarget.type == "crumbspile")))){ if (_bloodTarget.pos.x < _pos.x){ _hortMotion = -1; } else { _hortMotion = 1; }; } else { if (Math.random() < 0.3){ } else { if (_bloodTarget.pos.x < _pos.x){ _hortMotion = 1; } else { _hortMotion = -1; }; }; }; if ((((Math.abs(_local1.length) < _ATTACK_RANGE)) && ((Math.abs(_local1.x) > _MIN_ATTACK_RANGE)))){ if (_bloodTarget.type == "crumbspile"){ if ((((Math.abs((_bloodTarget.pos.x - _pos.x)) < _EAT_DIST_X)) && ((Math.abs((_bloodTarget.pos.y - _pos.y)) < _EAT_DIST_Y)))){ _onEat(_bloodTarget); }; } else { _onAttack(); }; }; _snapshotTimer = 0.5; } else { if (_hortMotion == 0){ _hortMotion = ((Math.random() < 0.5)) ? -1 : 1; } else { _hortMotion = 0; }; _snapshotTimer = (0.7 + (Math.random() * 2)); }; }; } override public function get combatCollisionWidthHalf():Number{ return ((_hdBoxWidthHalf + _ATTACK_RANGE)); } override public function updatePrediction(_arg1:Number):void{ _snapshotTimer = (_snapshotTimer - _arg1); if (_invincibleTimer > 0){ _invincibleTimer = (_invincibleTimer - _arg1); }; if (_isInjured){ _injuredTimer = (_injuredTimer - _arg1); if (_injuredTimer < 0){ _isInjured = false; if (_health <= 0){ _onDie(); }; }; }; if (((_hasFoundSurface) && (_isAlive))){ if (_snapshotTimer < 0){ _updateAISnapshot(); }; if (_isAttacking){ _updateAttack(_arg1); _voluntaryVelocity.decay(((_groundFrictionRate * _arg1) * 1.5)); } else { _attackCooldownTimer = (_attackCooldownTimer - _arg1); _applyEdgeCaution(); }; if ((((_hortMotion < 0)) && (!(_isAttacking)))){ _voluntaryVelocity.add((-(_arg1) * (_groundAccelRate + ((_voluntaryVelocity.x > 0)) ? _groundFrictionRate : 0)), 0, 0); if (_voluntaryVelocity.x > 0){ _isSliding = true; }; } else { if ((((_hortMotion > 0)) && (!(_isAttacking)))){ _voluntaryVelocity.add((_arg1 * (_groundAccelRate + ((_voluntaryVelocity.x < 0)) ? _groundFrictionRate : 0)), 0, 0); if (_voluntaryVelocity.x < 0){ _isSliding = true; }; } else { _voluntaryVelocity.decay(((_groundFrictionRate * _arg1) * 1.5)); if (Math.abs(_voluntaryVelocity.x) > 0){ _isSliding = true; }; }; }; } else { _voluntaryVelocity.decay(((_airFrictionRate * _arg1) * 2)); if (!_isAlive){ if ((((_fadeOutTimer > 0)) || ((_fadeAlpha > 0)))){ _fadeOutTimer = (_fadeOutTimer - _arg1); if (_fadeOutTimer < 0){ _fadeAlpha = (_fadeAlpha - (_FADE_RATE * _arg1)); if (_fadeAlpha < 0){ _fadeAlpha = 0; }; _asset.alpha = _fadeAlpha; }; }; }; }; if (_voluntaryVelocity.x > _voluntaryMaxRate){ _voluntaryVelocity.x = _voluntaryMaxRate; }; if (_voluntaryVelocity.x < -(_voluntaryMaxRate)){ _voluntaryVelocity.x = -(_voluntaryMaxRate); }; if (_involuntaryVelocity.x != 0){ _involuntaryVelocity.decayX(((_groundFrictionRate * _arg1) * 2)); }; super.updatePrediction(_arg1); } override public function get entityCollisionAsSurface():Boolean{ return (false); } protected function _updateAttack(_arg1:Number):void{ _attackTimer = (_attackTimer - _arg1); if ((((_attackTimer <= 0)) && ((_asset.mc.currentFrame == _asset.mc.totalFrames)))){ _isAttacking = false; _attackCooldownTimer = _ATTACK_COOLDOWN_DURATION; _updateAISnapshot(); }; } override protected function get _assetRegistrationPoint():String{ return ("bc"); } protected function _onAttack():void{ if (((_isAttacking) || ((_attackCooldownTimer > 0)))){ return; }; GlobalSound.getInstance().playSound("rousAttack"); if (_bloodTarget.pos.x < _pos.x){ if (_voluntaryVelocity.x > 0){ _voluntaryVelocity.x = (_voluntaryVelocity.x * -1); }; _hortMotion = -1; _asset.scaleX = 1; _facingLeft = true; } else { if (_voluntaryVelocity.x < 0){ _voluntaryVelocity.x = (_voluntaryVelocity.x * -1); }; _hortMotion = 1; _asset.scaleX = -1; _facingLeft = false; }; _isAttacking = true; _attackTimer = _ATTACK_DURATION; } override public function onEntityCollision(_arg1:FireSwampSprite):void{ switch (_arg1.type){ case "player": _reactPlayerCollision(Player(_arg1)); break; }; } override public function updateAI(_arg1:Array):void{ var _local2:Boolean; var _local3:Number; var _local4:Number; if (!_isAlive){ return; }; if (((_isBloodthirsty) && ((_bloodTarget.type == "crumbspile")))){ return; }; _local2 = false; _local3 = 0; _local4 = _AGGRO_RADIUS; _loop = _arg1.length; while (_loop--) { if (_arg1[_loop].pos.diff(_pos).length < _local4){ _local2 = true; _local3 = _loop; _local4 = _arg1[_loop].pos.diff(_pos).length; }; }; if (((_local2) && (((!(_isBloodthirsty)) || (!((_bloodTarget == _arg1[_local3]))))))){ _bloodrage(_arg1[_local3]); } else { if (((_isBloodthirsty) && (!(_local2)))){ _endBloodrage(); }; }; } override public function cleanUp():void{ WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.EVENT_CRUMBS_PULSE, _onCrumbsPulse); WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.EVENT_CRUMBS_DESPAWN, _onCrumbsDespawn); super.cleanUp(); } private function _bloodrage(_arg1:Mobile):void{ _isBloodthirsty = true; _bloodTarget = _arg1; _snapshotTimer = 0; _voluntaryMaxRate = _bloodthirstyMaxRate; _groundAccelRate = _bloodthirstyAccelRate; _groundFrictionRate = _bloodthirstyFrictionRate; } override public function get doComplexCollision():Boolean{ return (true); } override protected function _determineAnimation():void{ if (!_isAlive){ _animate("dead"); } else { if (_isInjured){ _animate("damage"); } else { if (_isEating){ _animate("eat"); } else { if (_isAirborne){ if (_involuntaryVelocity.y < 0){ _animate("idle"); } else { _animate("idle"); }; } else { if (_isAttacking){ _animate("attack"); } else { if (((_isSliding) && (_isBloodthirsty))){ _animate("slide"); } else { if (Math.abs(_voluntaryVelocity.x) > 0){ _animate((_isBloodthirsty) ? "run" : "walk"); } else { _animate("idle"); }; }; }; }; }; }; }; _isSliding = false; } override public function get type():String{ return ("rous"); } private function _onCrumbsPulse(_arg1:EData):void{ if ((((Math.abs((_arg1.data.source.pos.x - _pos.x)) < _AGGRO_RADIUS)) && ((Math.abs((_arg1.data.source.pos.y - _pos.y)) < 5)))){ _bloodrage(_arg1.data.source); }; } override public function onPause():void{ if (_isAlive){ _animate("pause"); }; } override public function get damage():Number{ return ((_damage + (_difficulty * 5))); } private function _endBloodrage():void{ _isBloodthirsty = false; _voluntaryMaxRate = _baseMaxRate; _groundAccelRate = _baseGroundAccelRate; _groundFrictionRate = _baseGroundFrictionRate; } override protected function _recalculateDimensions():void{ var _local1:WorkinPoint; _local1 = _asset.getFrameDimensions("idle"); _displayWidth = _local1.x; _displayHeight = _local1.y; _halfDisplayWidth = (_displayWidth / 2); _halfDisplayHeight = (_displayHeight / 2); _recalculateDisplayCenter(); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.mobs.hostiles
Section 228
//Boulder (com.wwb.princessbride.fire_swamp.world.entitys.mobs.inanimates.Boulder) package com.wwb.princessbride.fire_swamp.world.entitys.mobs.inanimates { import com.workinman.lib.sound.*; import com.wwb.princessbride.fire_swamp.world.entitys.mobs.*; import com.wwb.princessbride.fire_swamp.world.entitys.mobs.players.*; import com.wwb.princessbride.fire_swamp.assets.*; public class Boulder extends Mobile { private var _isPushed:Boolean; private var _airborneTimer:Number; private var _pushSource:Player; public function Boulder(_arg1:Object){ _generator = _arg1.mobData; _airborneTimer = 0; _arg1.asset = BoulderAsset; _arg1.x = _arg1.mobData.x; _arg1.y = _arg1.mobData.y; super(_arg1); _generateCollisionLines(); } override protected function _setCollisionBox():void{ collisionWidth = 50; collisionHeight = 50; } public function onReleasePushed():void{ _isPushed = false; _pushSource = null; } override public function updatePosition():void{ super.updatePosition(); if (_isPushed){ _pushSource.onUpdatePushPosition(); }; } override public function get doNonCombatCollisionOnly():Boolean{ return (true); } override public function updatePrediction(_arg1:Number):void{ if (_isAirborne){ _airborneTimer = (_airborneTimer + _arg1); }; super.updatePrediction(_arg1); if (((!((_pos.x == _predictedPos.x))) || (!((_pos.y == _predictedPos.y))))){ _generateCollisionLines(); }; } override public function get entityCollisionAsSurface():Boolean{ return (true); } override protected function _airborneOn():void{ _airborneTimer = 0; super._airborneOn(); } override protected function get _assetRegistrationPoint():String{ return ("bc"); } override public function get entityCollisionAsBox():Boolean{ return (false); } override public function get doComplexCollision():Boolean{ return (true); } override protected function _airborneOff():void{ if (_airborneTimer > 0.1){ GlobalSound.getInstance().playSound("boulderLand"); }; super._airborneOff(); } override public function get type():String{ return ("boulder"); } override public function get pushable():Boolean{ return (true); } override protected function _calculateVelocity(_arg1:Number):void{ if (((_isPushed) && (_pushSource.isFacing(this)))){ _voluntaryVelocity.toPoint(_pushSource.voluntaryVelocity); } else { _voluntaryVelocity.decay((_groundFrictionRate * _arg1)); }; super._calculateVelocity(_arg1); } public function onPushed(_arg1:Player):void{ _isPushed = true; _pushSource = _arg1; } } }//package com.wwb.princessbride.fire_swamp.world.entitys.mobs.inanimates
Section 229
//CrumbsPile (com.wwb.princessbride.fire_swamp.world.entitys.mobs.inanimates.CrumbsPile) package com.wwb.princessbride.fire_swamp.world.entitys.mobs.inanimates { import com.wwb.princessbride.fire_swamp.*; import com.workinman.lib.events.*; import com.workinman.paradise.world.camera.*; import com.wwb.princessbride.fire_swamp.world.entitys.mobs.*; import com.workinman.lib.utils.*; import com.wwb.princessbride.fire_swamp.assets.*; public class CrumbsPile extends Mobile { private var _LIFESPAN_BASE:Number;// = 10 private var _lifespan:Number; public function CrumbsPile(_arg1:Object){ _LIFESPAN_BASE = 10; _arg1.asset = CrumbsPileAsset; super(_arg1); _lifespan = _LIFESPAN_BASE; } override protected function _setCollisionBox():void{ collisionWidth = 20; collisionHeight = 20; } override public function degenerate():void{ cleanUp(); _doDelete = true; _doDegenerate = false; } public function onEat():void{ _lifespan = 9; } override public function updatePrediction(_arg1:Number):void{ _lifespan = (_lifespan - _arg1); if (_lifespan < 0){ if (_doDelete){ return; }; degenerateAfterErase(); _erase(); WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.EVENT_CRUMBS_DESPAWN, {source:this})); return; }; super.updatePrediction(_arg1); } override protected function get _assetRegistrationPoint():String{ return ("bc"); } override public function updateAI(_arg1:Array):void{ WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.EVENT_CRUMBS_PULSE, {source:this})); } override protected function _renderPosition(_arg1:BaseCamera):void{ x = (_arg1.center.x + (_pos.x - _arg1.x)); y = ((_arg1.center.y + (_pos.y - _arg1.y)) + 5); } override protected function _airborneOff():void{ _isAirborne = false; _animate("open"); WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.EVENT_PARTICLE_EFFECT, {x:pos.x, y:(pos.y + 4), type:"crumb"})); WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.EVENT_PARTICLE_EFFECT, {x:(pos.x - 3), y:(pos.y + 2), type:"crumb"})); WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.EVENT_PARTICLE_EFFECT, {x:(pos.x + 3), y:pos.y, type:"crumb"})); } override public function get type():String{ return ("crumbspile"); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.mobs.inanimates
Section 230
//Buttercup (com.wwb.princessbride.fire_swamp.world.entitys.mobs.players.Buttercup) package com.wwb.princessbride.fire_swamp.world.entitys.mobs.players { import com.wwb.princessbride.fire_swamp.*; import flash.events.*; import com.workinman.lib.sound.*; import com.wwb.princessbride.fire_swamp.world.entitys.items.*; import com.workinman.lib.utils.*; import com.wwb.princessbride.fire_swamp.assets.*; public class Buttercup extends Player { private var _damage:Number; private var _isArmed:Boolean; public static var EVENT_DISARMED:String = "onButtercupDisarmed"; public static var EVENT_ARMED:String = "onButtercupArmed"; public static var EVENT_CHANGE_FACE_RIGHT:String = "onButtercupFaceRight"; public static var EVENT_CHANGE_FACE_LEFT:String = "onButtercupFaceLeft"; public function Buttercup(_arg1:Object){ _arg1.asset = ButtercupAsset; _isArmed = false; WorkinDispatcher.getInstance().dispatchEvent(new Event(EVENT_DISARMED)); super(_arg1); _jumpHeight = (Number(GameState.getInstance().getConfigOption("buttercupJumpHeight")) * FireSwampConfig.ppu); _damage = Number(GameState.getInstance().getConfigOption("buttercupDamageToRous")); } override public function get isDangerous():Boolean{ return (((((_isAttacking) && ((_isAirborne) ? (_asset.mc.currentFrame > 5) : (_asset.mc.currentFrame > 11)))) && ((_isAirborne) ? (_asset.mc.currentFrame < 10) : (_asset.mc.currentFrame < 16)))); } override protected function _reactStickCollision(_arg1:Stick):void{ _isArmed = true; WorkinDispatcher.getInstance().dispatchEvent(new Event(EVENT_ARMED)); } override protected function _onChangeFacing():void{ if (_facingLeft){ WorkinDispatcher.getInstance().dispatchEvent(new Event(EVENT_CHANGE_FACE_LEFT)); } else { WorkinDispatcher.getInstance().dispatchEvent(new Event(EVENT_CHANGE_FACE_RIGHT)); }; } override protected function _onAttack():void{ if (((_isAttacking) || (!(_isArmed)))){ return; }; super._onAttack(); } override protected function _playAttackHitSound():void{ GlobalSound.getInstance().playSound("attackHitStick"); } public function removeStick():void{ _isArmed = false; WorkinDispatcher.getInstance().dispatchEvent(new Event(EVENT_DISARMED)); } override protected function _playJumpSound():void{ var _local1:String; _local1 = ((Math.random() < 0.5)) ? "1" : "2"; GlobalSound.getInstance().playSound(("jumpButtercup" + _local1), true); } override protected function _playLandSound():void{ } override public function get character():String{ return ("buttercup"); } override public function chat(_arg1:String):void{ var _local2:Number; if ((((_chatTimer > 0)) && (!((_arg1 == "success"))))){ return; }; switch (_arg1){ case "switch": if (Math.random() < 0.4){ _local2 = Math.ceil((Math.random() * 3)); if (_local2 == 0){ (_local2 == 1); }; GlobalVoice.getInstance().playVO(("voWestleySwitch" + String(_local2))); }; _setChatTimer(3); break; case "damage": _local2 = Math.ceil((Math.random() * 3)); if (_local2 == 0){ (_local2 == 1); }; GlobalVoice.getInstance().playVO(("voButtercupDamage" + String(_local2))); _setChatTimer(5); break; }; } override public function get damage():Number{ return (_damage); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.mobs.players
Section 231
//Player (com.wwb.princessbride.fire_swamp.world.entitys.mobs.players.Player) package com.wwb.princessbride.fire_swamp.world.entitys.mobs.players { import com.wwb.princessbride.fire_swamp.*; import com.workinman.lib.math.*; import flash.events.*; import com.workinman.lib.sound.*; import com.workinman.paradise.*; import com.workinman.lib.events.*; import com.workinman.paradise.world.camera.*; import com.workinman.paradise.math.*; import com.wwb.princessbride.fire_swamp.world.entitys.*; import com.wwb.princessbride.fire_swamp.world.entitys.items.*; import com.wwb.princessbride.fire_swamp.world.entitys.effects.*; import com.wwb.princessbride.fire_swamp.world.entitys.mobs.*; import com.wwb.princessbride.fire_swamp.world.entitys.gizmos.*; import com.wwb.princessbride.fire_swamp.data.players.*; import com.workinman.lib.utils.*; import com.wwb.princessbride.fire_swamp.world.entitys.mobs.inanimates.*; import com.wwb.princessbride.fire_swamp.world.entitys.mobs.hostiles.*; import flash.ui.*; public class Player extends Mobile { private const _POISON_GLOW_FREQUENCY:Number = 0.3; private const _WATER_GLOW_FREQUENCY:Number = 0.3; private const _HEAT_GLOW_FREQUENCY:Number = 0.1; private const _ATTACK_COOLDOWN_DURATION:Number = 0.23; private const _INJURED_DURATION:Number = 0.5; private const _SHIELD_GLOW_FREQUENCY:Number = 0.08; private const _JUMP_LAUNCH_RATE:Number = 300; private const _SWING_COOLDOWN:Number = 0.25; private const _PORTAL_COOLDOWN_DURATION:Number = 0.4; private const _SWING_EXTENT_Y:Number = 55; private const _INVINCIBLE_DURATION:Number = 1; private const _SWING_EXTENT_X:Number = 100; private const _SHIELD_DURATION:Number = 5; private const _ATTACK_DURATION:Number = 0.25; private const _VINE_TOP_SNAP:Number = 35; protected const _COLLECT_DURATION:Number = 2; private const _SELECT_GLOW_FREQUENCY:Number = 0.15; private const _PUSH_RESIDUE_TIME:Number = 0.25; private var _mouseHeld:Boolean; private var _attackTimer:Number; protected var _isCrouching:Boolean; protected var _isSliding:Boolean; private var _invincibleTimer:Number; private var _poisonRatio:Number; protected var _isThrowing:Boolean; private var _mouseControlAngle:Number; private var _injuredTimer:Number; private var _isShieldGlowing:Boolean; protected var _isWeightlessOnce:Boolean; protected var _collectCooldown:Number; protected var _isPushing:Boolean; protected var _touchedPushThisUpdate:Boolean; private var _pushRate:Number; protected var _jumpHeight:Number; protected var _touchedWaterThisUpdate:Boolean; public var roomNum:Number; private var _healTimer:Number; protected var _touchedClimbThisUpdate:Boolean; protected var _isAttacking:Boolean; private var _isHortConsumed:Boolean; protected var _isSwinging:Boolean; private var _targetJumpY:Number; private var _airborneDuration:Number; private var _baseAirMaxHorizontalRate:Number; private var _dt:Number; protected var _hasAttackDamaged:Boolean; protected var _chatTimer:Number; private var _jumpTime:Number; protected var _touchedPortalLastUpdate:Boolean; private var _pushFrictionRate:Number; private var _isHeatGlowing:Boolean; private var _vertHeld:Number; private var _swingGoal:WorkinPoint; private var _hortHeld:Number; private var _jumpDuration:Number; private var _heatTimer:Number; protected var _touchedKnockbackThisUpdate:Boolean; protected var _isClimbing:Boolean; protected var _hasJustSpawned:Boolean; private var _knockbackForce:WorkinPoint; private var _portalCooldown:Number; private var _swingProgressRatio:Number; private var _isActive:Boolean; private var _rightBounds:Number; private var _poisonMaxRate:Number; protected var _isHoldingSwing:Boolean; private var _attackCollisionBox:CollisionBox; private var _gameEngine:GameEngine; private var _swingCooldown:Number; private var _isWaterGlowing:Boolean; private var _climbReleaseDelay:Number; private var _swingDir:Number; protected var _pushTarget:Boulder; private var _climbTarget:Vine; private var _swingHeadedIn:Boolean; private var _jumpChange:Number; protected var _touchedPoisonThisUpdate:Boolean; private var _swingCenter:WorkinPoint; private var _leftBounds:Number; private var _crouchMaxRate:Number; protected var _isTeleporting:Boolean; private var _pushResidue:Number; private var _jumpStart:Number; protected var _isInjured:Boolean; private var _isSelectGlowing:Boolean; private var _baseClimbRate:Number; private var _poisonTimer:Number; protected var _inLimbo:Boolean; private var _mouseControlDiff:WorkinPoint; private var _swingingSource:SwingVine; protected var _glows:Array; protected var _touchedPortalThisUpdate:Boolean; private var _shieldTimer:Number; protected var _isAiming:Boolean; protected var _ammo:Item; private var _climbRate:Number; private var _isSpaceConsumed:Boolean; private var _isPoisonGlowing:Boolean; protected var _touchedHeatThisUpdate:Boolean; private var _spaceHeld:Number; protected var _isFireDamage:Boolean; private var _attackCooldown:Number; public function Player(_arg1:Object){ var _local2:PlayerData; _local2 = _arg1.playerData; _generator = _local2; _gameEngine = GameEngine.getInstance(); WorkinDispatcher.getInstance().addEventListener(ParadiseConfig.EVENT_MOUSE_UP, _onMouseUp); WorkinDispatcher.getInstance().addEventListener(ParadiseConfig.EVENT_MOUSE_DOWN, _onMouseDown); WorkinDispatcher.getInstance().addEventListener(ParadiseConfig.EVENT_KEY_UP, _onKeyUp); WorkinDispatcher.getInstance().addEventListener(ParadiseConfig.EVENT_KEY_DOWN, _onKeyDown); _arg1.room = _local2.room; _arg1.x = _local2.x; _arg1.y = _local2.y; _glows = []; _vertHeld = 0; _hortHeld = 0; _spaceHeld = 0; _healTimer = 0; _attackCooldown = 0; _heatTimer = 0.25; _shieldTimer = 0; _swingCooldown = 0; _poisonTimer = 0; _mouseControlAngle = 0; _targetJumpY = 0; _pushResidue = 0; _mouseHeld = false; _isSpaceConsumed = false; _isHortConsumed = false; _chatTimer = 0; _collectCooldown = 0; super(_arg1); _hasJustSpawned = true; _isWeightlessOnce = false; _isCrouching = false; _isClimbing = false; _isPushing = false; _isActive = false; _inLimbo = true; _isTeleporting = false; _isAttacking = false; _isInjured = false; _isAiming = false; _isThrowing = false; _isSelectGlowing = false; _isWaterGlowing = false; _isShieldGlowing = false; _isHeatGlowing = false; _isPoisonGlowing = false; _isFireDamage = false; _hasAttackDamaged = false; room = _room; _isOnscreen = true; _touchedPortalThisUpdate = false; _touchedPortalLastUpdate = false; _touchedKnockbackThisUpdate = false; _animate("idle"); _facingLeft = false; _asset.scaleX = -1; _onChangeFacing(); } protected function _applyWater(_arg1:Number):void{ _healTimer = (_healTimer + _arg1); if (_healTimer >= 1){ _healTimer--; GameState.getInstance().onPlayerHealDamage(Number(GameState.getInstance().getConfigOption("waterHealPerSecond"))); }; _playWaterGlow(); } public function get isDangerous():Boolean{ return (((((_isAttacking) && ((_asset.mc.currentFrame > 5)))) && ((_isAirborne) ? (_asset.mc.currentFrame < 7) : (_asset.mc.currentFrame < 9)))); } override protected function _resolveWallCollisionAftermath():void{ if (_isSwinging){ _onReleaseSwing(); _takeKnockbackDamage(0, _swingDir); }; } protected function _reactDewCollision(_arg1:Dew):void{ if (((((((((_arg1.isConsumed) || (_isAiming))) || (_isClimbing))) || (_isAirborne))) || ((_collectCooldown > 0)))){ return; }; _arg1.requestConsume(); _ammo = _arg1; _onAim(); } protected function _reactBoulderCollision(_arg1:Boulder):void{ } private function _takeDamage(_arg1:Number, _arg2:Boolean=false):void{ if (_invincibleTimer > 0){ return; }; GameState.getInstance().onPlayerTakeDamage(_arg1); chat("damage"); if (_arg2){ _isFireDamage = true; WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.EVENT_PARTICLE_EFFECT, {x:(pos.x + 10), y:(pos.y - 80), type:"heat"})); WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.EVENT_PARTICLE_EFFECT, {x:(pos.x - 30), y:(pos.y - 40), type:"heat"})); WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.EVENT_PARTICLE_EFFECT, {x:pos.x, y:(pos.y - 20), type:"heat"})); } else { _isFireDamage = false; }; _invincibleTimer = _INVINCIBLE_DURATION; } override protected function _setCollisionBox():void{ collisionWidth = (_displayWidth * 0.55); collisionHeight = _displayHeight; } protected function _onReleaseClimb():void{ GlobalSound.getInstance().stopSound("climbVine"); _climbReleaseDelay = 0.5; _isClimbing = false; _isEthereal = false; _isWeightless = false; _climbTarget = null; } private function _playWaterGlow():void{ if (_isWaterGlowing){ return; }; _isWaterGlowing = true; _addGlow(new GlowManager(this, "water", _WATER_GLOW_FREQUENCY)); } private function _addGlow(_arg1:GlowManager):void{ var _local2:Number; _local2 = _glows.length; while (_local2--) { if (_glows[_local2].type == _arg1.type){ return; }; }; _glows.push(_arg1); } protected function _onHoldSwing(_arg1:SwingVine):void{ if (_hortHeld != 0){ _isHortConsumed = true; }; _isHoldingSwing = true; _voluntaryVelocity.to(0, 0, 0); _swingingSource = _arg1; _swingingSource.onHeld(this); } public function get swingDir():Number{ return (_swingDir); } private function _takeKnockbackDamage(_arg1:Number, _arg2:Number, _arg3:Boolean=false):void{ if (_invincibleTimer > 0){ return; }; _isInjured = true; if (_isPushing){ _onReleasePush(); }; _pushResidue = 0; if (_isClimbing){ _onReleaseClimb(); }; if (_isSwinging){ _onReleaseSwing(); }; if (_isAiming){ _onCancelAim(); }; if (_isThrowing){ _onReleaseThrow(); }; _injuredTimer = _INJURED_DURATION; _touchedKnockbackThisUpdate = true; _knockbackForce = new WorkinPoint(((_arg2 < 0)) ? 200 : -200, -230, 0); _isWeightlessOnce = true; _targetJumpY = _pos.y; _jumpTime = 0; _takeDamage(_arg1, _arg3); } protected function _onReleaseThrow():void{ _isThrowing = false; } override protected function _reactPoisonSurfaceCollision(_arg1:WorkinPoint):void{ _touchedPoisonThisUpdate = true; } private function _playHeatGlow():void{ if (_isHeatGlowing){ return; }; _isHeatGlowing = true; _addGlow(new GlowManager(this, "heat", _HEAT_GLOW_FREQUENCY)); } protected function _onReleaseSwing():void{ clearPaths(); _isHoldingSwing = false; _isEthereal = false; _isWeightless = false; _swingingSource.onReleased(); _swingCooldown = _SWING_COOLDOWN; if (_isSwinging){ _isSwinging = false; if (_swingingSource.pos.x > _pos.x){ if (_voluntaryVelocity.x > 0){ _voluntaryVelocity.x = (_voluntaryVelocity.x * -1); }; } else { if (_voluntaryVelocity.x < 0){ _voluntaryVelocity.x = (_voluntaryVelocity.x * -1); }; }; _voluntaryVelocity.x = (_voluntaryVelocity.x * 2); _onJump(); }; } private function _removeWaterGlow():void{ if (!_isWaterGlowing){ return; }; _isWaterGlowing = false; _removeGlow("water"); } protected function _reactSwingVineCollision(_arg1:SwingVine):void{ if (((((((((((_isActive) && (!(_isInjured)))) && (!(_isSwinging)))) && (!(_isHoldingSwing)))) && (!(_isCrouching)))) && ((_swingCooldown <= 0)))){ if (((_isAirborne) && ((_vertHeld == -1)))){ _onSwing(_arg1); } else { if (!_isAirborne){ _predictedPos.toPoint(_pos); _onHoldSwing(_arg1); }; }; }; } protected function _applyHeat(_arg1:Number):void{ if (isShielded){ return; }; _heatTimer = (_heatTimer + _arg1); if (_heatTimer >= 0.25){ _heatTimer = (_heatTimer - 0.25); GameState.getInstance().onPlayerTakeDamage(Math.round((0.25 * Number(GameState.getInstance().getConfigOption("fireGroundHeatDamagePerSecond"))))); }; _playHeatGlow(); } public function onRoomRegenerated():void{ _inLimbo = false; } override public function updatePosition():void{ if (_inLimbo){ return; }; if (_isClimbing){ if (!_touchedClimbThisUpdate){ _onReleaseClimb(); } else { if (((((_predictedPos.y - _climbTarget.pos.y) < _VINE_TOP_SNAP)) && ((_vertHeld < 0)))){ _predictedPos.y = (_climbTarget.pos.y - 0.5); _onReleaseClimb(); _animate("climbcap"); }; }; }; if (((_isPushing) && (!(_touchedPushThisUpdate)))){ onUpdatePushPosition(); _onReleasePush(); }; if (_touchedWaterThisUpdate){ _applyWater(_dt); } else { if (_isWaterGlowing){ _removeWaterGlow(); }; }; if (_touchedPoisonThisUpdate){ _applyPoison(_dt); }; if (_touchedHeatThisUpdate){ _applyHeat(_dt); } else { if (_isHeatGlowing){ _removeHeatGlow(); }; }; super.updatePosition(); if (_pos.x < _leftBounds){ _pos.x = _leftBounds; }; if (_pos.x > _rightBounds){ _pos.x = _rightBounds; }; _touchedClimbThisUpdate = false; _touchedPushThisUpdate = false; _touchedPortalLastUpdate = _touchedPortalThisUpdate; _touchedPortalThisUpdate = false; _touchedWaterThisUpdate = false; _touchedPoisonThisUpdate = false; _touchedHeatThisUpdate = false; } protected function _applyFireShield():void{ _shieldTimer = Number(GameState.getInstance().getConfigOption("fireShieldDuration")); _playShieldGlow(); } private function _playShieldGlow():void{ if (_isShieldGlowing){ return; }; _isShieldGlowing = true; _addGlow(new GlowManager(this, "shield", _SHIELD_GLOW_FREQUENCY, false)); } public function get isShielded():Boolean{ return ((_shieldTimer > 0)); } protected function _reactStickCollision(_arg1:Stick):void{ } private function _playSelectGlow():void{ _isSelectGlowing = true; _addGlow(new GlowManager(this, "select", _SELECT_GLOW_FREQUENCY)); } protected function _reactShieldCollision(_arg1:FireShield):void{ if (_arg1.isConsumed){ return; }; _applyFireShield(); } private function _playPoisonGlow():void{ if (_isPoisonGlowing){ return; }; _isPoisonGlowing = true; _addGlow(new GlowManager(this, "poison", _POISON_GLOW_FREQUENCY)); } protected function _reactGate(_arg1:Gate):void{ if (((!(_arg1.isOpen)) && ((Math.abs((_arg1.pos.x - _pos.x)) < (_arg1.collisionWidth - 0.2))))){ _takeKnockbackDamage(0, (_arg1.pos.x - _pos.x)); }; } private function _onKeyUp(_arg1:EData):void{ switch (_arg1.data.keyCode){ case 65: case Keyboard.LEFT: if (_hortHeld == -1){ _hortHeld = 0; }; _isHortConsumed = false; break; case 68: case Keyboard.RIGHT: if (_hortHeld == 1){ _hortHeld = 0; }; _isHortConsumed = false; break; case 87: case Keyboard.UP: if (_vertHeld == -1){ _vertHeld = 0; }; break; case 83: case Keyboard.DOWN: if (_vertHeld == 1){ _vertHeld = 0; }; break; case Keyboard.SPACE: _spaceHeld = 0; _isSpaceConsumed = false; break; }; } public function isFacing(_arg1:Mobile):Boolean{ if (_arg1 == null){ return (false); }; return (((((_facingLeft) && ((_arg1.pos.x < _pos.x)))) || (((!(_facingLeft)) && ((_arg1.pos.x > _pos.x)))))); } public function onAttackCauseDamage():void{ if (_hasAttackDamaged){ return; }; _hasAttackDamaged = true; _playAttackHitSound(); } override public function set room(_arg1:Number):void{ _room = _arg1; _leftBounds = FireSwampConfig.getRoomLeftBounds(_room); _rightBounds = FireSwampConfig.getRoomRightBounds(_room); if (_isSwinging){ _onReleaseSwing(); }; } protected function _reactSwitchCollision():void{ } private function _onMouseUp(_arg1:Event):void{ if (_isAiming){ _onThrow(); }; } private function _removeGlow(_arg1:String):void{ var _local2:Number; _local2 = _glows.length; while (_local2--) { if (_glows[_local2].type == _arg1){ _glows.splice(_local2, 1); return; }; }; } override protected function _setMotionRates():void{ _crouchMaxRate = 0; _poisonRatio = Number(GameState.getInstance().getConfigOption("poisonSlowPercent")); _baseAirMaxHorizontalRate = 124; _baseClimbRate = 110; _climbRate = _baseClimbRate; _pushRate = 60; _pushFrictionRate = 400; super._setMotionRates(); _baseMaxRate = 160; } override protected function _testEntitySurfaceCollision(_arg1:FireSwampSprite):Boolean{ var _local2:Boolean; if ((((_arg1.type == "firespout")) && (isShielded))){ return (false); }; _local2 = false; _loop = _arg1.collisionLines.length; while (_loop--) { if (((_isPushing) && ((_arg1 == _pushTarget)))){ if (_testLineCollision(_arg1.collisionLines[_loop]).length > 0){ _local2 = true; }; } else { if (!_arg1.pushable){ if (_resolveSurfaceCollisions(_testLineCollision(_arg1.collisionLines[_loop]))){ _local2 = true; }; } else { if (_resolveSurfaceCollisions(_testLineCollision(_arg1.collisionLines[_loop]))){ if (_arg1.collisionLines[_loop].normal.x != 0){ _local2 = true; }; }; }; }; }; return (_local2); } protected function _onAim():void{ if (_isAiming){ return; }; _isAiming = true; _isAttacking = false; _onReleaseCrouch(); if (_isPushing){ _onReleasePush(); }; _pushResidue = 0; _voluntaryVelocity.to(0, 0, 0); } public function setActive():void{ _isActive = true; _playSelectGlow(); } private function _onMouseDown(_arg1:Event):void{ } public function onUpdatePushPosition():void{ _loop = _pushTarget.collisionLines.length; while (_loop--) { _resolveSurfaceCollisions(_testLineCollision(_pushTarget.collisionLines[_loop])); }; } override public function get combatCollisionWidthHalf():Number{ return ((_isAttacking) ? (_hdBoxWidthHalf + 30) : _hdBoxWidthHalf); } override protected function _onPathComplete():void{ _updateSwingGoal(); } override protected function _draw():void{ if (_hasJustSpawned){ _inLimbo = false; _hasJustSpawned = false; }; super._draw(); } private function _updateSwingGoal():void{ var _local1:String; var _local2:Number; var _local3:Number; _swingHeadedIn = false; _swingProgressRatio = 0; if (_predictedPos.x > _swingCenter.x){ if (_swingDir > 0){ _swingDir = -1; }; _swingGoal.toPoint(_swingCenter); } else { if (_predictedPos.x == _swingCenter.x){ _swingGoal.to((_swingCenter.x + ((_swingDir > 0)) ? _SWING_EXTENT_X : -(_SWING_EXTENT_X)), (_swingCenter.y - _SWING_EXTENT_Y)); _swingHeadedIn = true; } else { if (_swingDir < 0){ _swingDir = 1; }; _swingGoal.toPoint(_swingCenter); }; }; _local2 = ((_pos.x - _swingGoal.x) / 2); _local3 = ((_pos.y - _swingGoal.y) / 2); if (_swingHeadedIn){ setCurve(_swingGoal, _predictedPos.addCopy((_local2 * -1), 0), _swingGoal.addCopy(0, _local3), 0.6, PennerManager.EASE_LINEAR); } else { setCurve(_swingGoal, _predictedPos.addCopy(0, _local3), _swingGoal.addCopy(_local2, 0), 0.6, PennerManager.EASE_LINEAR); }; _voluntaryVelocity = _paths[0].start.diff(_paths[0].end); } protected function _reactVineCollision(_arg1:Vine):void{ if (_arg1.isCoiled){ return; }; if (_isClimbing){ _touchedClimbThisUpdate = true; } else { if (((_isActive) && (!((_vertHeld == 0))))){ if ((((_pos.y <= _arg1.pos.y)) && ((_vertHeld == -1)))){ return; }; _onClimb(_arg1); }; }; } override protected function _generateCollisionBox():void{ super._generateCollisionBox(); _attackCollisionBox = new CollisionBox((_hdBoxWidth + 25), _hdBoxHeight, _displayCenter); } override public function updatePrediction(_arg1:Number):void{ _dt = _arg1; if (_invincibleTimer > 0){ _invincibleTimer = (_invincibleTimer - _arg1); }; if (_attackCooldown > 0){ _attackCooldown = (_attackCooldown - _arg1); }; if (_collectCooldown > 0){ _collectCooldown = (_collectCooldown - _arg1); }; if (_portalCooldown > 0){ _portalCooldown = (_portalCooldown - _arg1); }; if (((((_inLimbo) || (_isTeleporting))) || (_isAiming))){ return; }; if (_isThrowing){ if (_asset.mc.currentFrame == _asset.mc.totalFrames){ _onReleaseThrow(); } else { return; }; }; if (_pushResidue > 0){ _pushResidue = (_pushResidue - _dt); if ((((_pushResidue <= 0)) && (!(_isPushing)))){ GlobalSound.getInstance().stopSound("push"); }; }; _loop = _glows.length; while (_loop--) { _glows[_loop].update(_dt); }; if (_isInjured){ _injuredTimer = (_injuredTimer - _arg1); if (_injuredTimer < 0){ _isInjured = false; _isFireDamage = false; }; }; if (_isAttacking){ _updateAttack(_arg1); }; if (((_spaceHeld) && (!(_isSpaceConsumed)))){ if (((!(_isSwinging)) && (!(_isClimbing)))){ _onAttack(); }; _isSpaceConsumed = true; }; if (_swingCooldown > 0){ _swingCooldown = (_swingCooldown - _arg1); }; if (_shieldTimer > 0){ _shieldTimer = (_shieldTimer - _arg1); if (_shieldTimer <= 0){ _removeShieldGlow(); }; }; if (_chatTimer > 0){ _chatTimer = (_chatTimer - _arg1); }; if (!_isInjured){ if (_isSwinging){ _swingProgressRatio = _paths[0].pathRatio; if (((((((!(_isHortConsumed)) && (!((_hortHeld == 0))))) && ((_swingCooldown <= 0)))) && (_isActive))){ _onReleaseSwing(); }; } else { if (_isHoldingSwing){ if (((((!(_isHortConsumed)) && (!((_hortHeld == 0))))) && (_isActive))){ if (((((_swingingSource.isLeft) && ((_hortHeld == 1)))) || (((!(_swingingSource.isLeft)) && ((_hortHeld == -1)))))){ _onSwing(); } else { if (((((_swingingSource.isLeft) && ((_hortHeld == -1)))) || (((!(_swingingSource.isLeft)) && ((_hortHeld == 1)))))){ _onReleaseSwing(); }; }; }; } else { if (((_isActive) && (_isClimbing))){ if (_vertHeld < 0){ _voluntaryVelocity.y = -(_climbRate); GlobalSound.getInstance().loopSound("climbVine"); } else { if (_vertHeld > 0){ _voluntaryVelocity.y = _climbRate; GlobalSound.getInstance().loopSound("climbVine"); } else { _voluntaryVelocity.y = 0; GlobalSound.getInstance().stopSound("climbVine"); }; }; if (((!(_isHortConsumed)) && (!((_hortHeld == 0))))){ _onReleaseClimb(); _onJump(); }; } else { if (((_isActive) && (_isPushing))){ if (_hortHeld < 0){ _voluntaryVelocity.to(-(_pushRate), 0, 0); } else { if (_hortHeld > 0){ _voluntaryVelocity.to(_pushRate, 0, 0); } else { _voluntaryVelocity.decay((_pushFrictionRate * _arg1)); }; }; } else { if (_isAirborne){ _airborneDuration = (_airborneDuration + _dt); if (_climbReleaseDelay > 0){ _climbReleaseDelay = (_climbReleaseDelay - _arg1); }; if (_isActive){ if (_hortHeld < 0){ _voluntaryVelocity.add((-(_arg1) * _airAccelRate), 0, 0); } else { if (_hortHeld > 0){ _voluntaryVelocity.add((_arg1 * _airAccelRate), 0, 0); } else { _voluntaryVelocity.decay((_airFrictionRate * _arg1)); }; }; } else { _voluntaryVelocity.decay((_airFrictionRate * _arg1)); }; if (_airborneDuration > 4){ _predictedPos.x = (FireSwampConfig.getRoomLeftBounds(room) + 40); _predictedPos.y = 0; }; } else { if (_isActive){ if ((((_hortHeld < 0)) && (!(_isAttacking)))){ _voluntaryVelocity.add((-(_arg1) * (_groundAccelRate + ((_voluntaryVelocity.x > 0)) ? _groundFrictionRate : 0)), 0, 0); if (_voluntaryVelocity.x > 0){ _isSliding = true; }; } else { if ((((_hortHeld > 0)) && (!(_isAttacking)))){ _voluntaryVelocity.add((_arg1 * (_groundAccelRate + ((_voluntaryVelocity.x < 0)) ? _groundFrictionRate : 0)), 0, 0); if (_voluntaryVelocity.x < 0){ _isSliding = true; }; } else { _voluntaryVelocity.decay(((_groundFrictionRate * _arg1) * 1.5)); if (Math.abs(_voluntaryVelocity.x) > 0){ _isSliding = true; }; }; }; } else { if (_voluntaryVelocity.length > 0){ _voluntaryVelocity.decay((_groundFrictionRate * _arg1)); }; }; }; }; }; }; }; if (_voluntaryVelocity.x > _voluntaryMaxRate){ _voluntaryVelocity.x = _voluntaryMaxRate; }; if (_voluntaryVelocity.x < -(_voluntaryMaxRate)){ _voluntaryVelocity.x = -(_voluntaryMaxRate); }; if (_isActive){ if ((((((((((((((_vertHeld < 0)) && (!(_isAirborne)))) && (!(_isClimbing)))) && (!(_isAttacking)))) && (!(_isAiming)))) && (!(_isInjured)))) && (!(_isTeleporting)))){ _onJump(); }; if (_isSelectGlowing){ if (((((!((_vertHeld == 0))) || (!((_hortHeld == 0))))) || (_isAttacking))){ _removeSelectGlow(); }; }; }; } else { if (_voluntaryVelocity.length > 0){ _voluntaryVelocity.decay((_groundFrictionRate * _arg1)); }; }; if (_involuntaryVelocity.x != 0){ _involuntaryVelocity.decayX(((_groundFrictionRate * _arg1) * 2)); }; if (_poisonTimer > 0){ _poisonTimer = (_poisonTimer - _arg1); if (_poisonTimer < 0){ if (_isAirborne){ _voluntaryMaxRate = _baseAirMaxHorizontalRate; } else { _voluntaryMaxRate = _baseMaxRate; }; _removePoisonGlow(); }; }; super.updatePrediction(_arg1); } override protected function _airborneOn():void{ super._airborneOn(); if (((_isHoldingSwing) && (!(_isSwinging)))){ _onReleaseSwing(); }; _airborneDuration = 0; _voluntaryMaxRate = (_baseAirMaxHorizontalRate * ((_poisonTimer > 0)) ? _poisonRatio : 1); } public function get isAiming():Boolean{ return (_isAiming); } override protected function get _assetRegistrationPoint():String{ return ("bc"); } private function _removeHeatGlow():void{ if (!_isHeatGlowing){ return; }; _isHeatGlowing = false; _removeGlow("heat"); _heatTimer = 0.25; } protected function _setChatTimer(_arg1:Number=1):void{ _chatTimer = _arg1; } protected function _onReleasePush():void{ _isPushing = false; _pushTarget.onReleasePushed(); _pushResidue = _PUSH_RESIDUE_TIME; } public function onRoomDegenerated():void{ _inLimbo = true; } protected function _onAttack():void{ if (((((((!(_isActive)) || (_isAttacking))) || (_isClimbing))) || ((_attackCooldown > 0)))){ return; }; if (_isHoldingSwing){ _onReleaseSwing(); }; _isAttacking = true; _hasAttackDamaged = false; _attackTimer = _ATTACK_DURATION; GlobalSound.getInstance().playSound("attackMiss"); } protected function _applyPoison(_arg1:Number):void{ _poisonTimer = Number(GameState.getInstance().getConfigOption("poisonSlowDuration")); _voluntaryMaxRate = _poisonMaxRate; _voluntaryMaxRate = (_baseMaxRate * ((_poisonTimer > 0)) ? _poisonRatio : 1); _playPoisonGlow(); } protected function _reactSpikeCollision(_arg1:Spike):void{ _takeKnockbackDamage(_arg1.damage, (_arg1.pos.x - _pos.x)); } override public function get group():String{ return ("players"); } protected function _playAttackHitSound():void{ } protected function _reactFireSpout(_arg1:FireSpout):void{ if (isShielded){ return; }; if (_arg1.active){ _takeKnockbackDamage(_arg1.damage, (_arg1.pos.x - _pos.x), true); }; } private function _removeSelectGlow():void{ if (!_isSelectGlowing){ return; }; _isSelectGlowing = false; _removeGlow("select"); } protected function _playJumpSound():void{ } override public function onEntityCollision(_arg1:FireSwampSprite):void{ switch (_arg1.type){ case "switch": _reactSwitchCollision(); break; case "rous": _reactRousCollision(Rous(_arg1)); break; case "flyrous": _reactFlyRousCollision(FlyRous(_arg1)); break; case "vine": _reactVineCollision(Vine(_arg1)); break; case "firespout": _reactFireSpout(FireSpout(_arg1)); break; case "gate": _reactGate(Gate(_arg1)); break; case "firemoss": _reactFireMoss(FireMoss(_arg1)); break; case "boulder": _reactBoulderCollision(Boulder(_arg1)); break; case "portal": _reactPortalCollision(Portal(_arg1)); break; case "stick": _reactStickCollision(Stick(_arg1)); break; case "spike": _reactSpikeCollision(Spike(_arg1)); break; case "dew": _reactDewCollision(Dew(_arg1)); break; case "crumbs": _reactCrumbsCollision(Crumbs(_arg1)); break; case "swingvine": _reactSwingVineCollision(SwingVine(_arg1)); break; case "shield": _reactShieldCollision(FireShield(_arg1)); break; }; } public function get mouseControlAngle():Number{ return (_mouseControlAngle); } private function _removePoisonGlow():void{ if (!_isPoisonGlowing){ return; }; _isPoisonGlowing = false; _removeGlow("poison"); } private function _removeShieldGlow():void{ if (!_isShieldGlowing){ return; }; _isShieldGlowing = false; _removeGlow("shield"); } protected function _onPush(_arg1:Boulder):void{ if (((_isAttacking) || (_isAirborne))){ return; }; if (((!(_isPushing)) && ((_pushResidue <= 0)))){ GlobalSound.getInstance().loopSound("push"); }; _isPushing = true; _pushTarget = _arg1; _pushTarget.onPushed(this); _voluntaryVelocity.to(0, 0, 0); _touchedPushThisUpdate = true; } public function _onReleaseCrouch():void{ } protected function _reactFlyRousCollision(_arg1:FlyRous):void{ if (((_arg1.isDangerous) && (!(_isAttacking)))){ if (((((_arg1.isFacingLeft) && ((_arg1.pos.x > _pos.x)))) || (((!(_arg1.isFacingLeft)) && ((_arg1.pos.x < _pos.x)))))){ _takeKnockbackDamage(_arg1.damage, (_arg1.pos.x - _pos.x)); }; }; } protected function _onClimb(_arg1:Vine):void{ if ((((_climbReleaseDelay > 0)) || (((!(_isAirborne)) && (_isAttacking))))){ return; }; _isClimbing = true; _isAirborne = false; _isAttacking = false; _isEthereal = true; _isWeightless = true; _climbTarget = _arg1; _onReleaseCrouch(); _involuntaryVelocity.to(0, 0, 0); _voluntaryVelocity.to(0, 0, 0); _momentaryForces = []; if (_hortHeld != 0){ _isHortConsumed = true; }; if ((((_vertHeld > 0)) && (((_predictedPos.y - _climbTarget.pos.y) < _VINE_TOP_SNAP)))){ _predictedPos.y = ((_climbTarget.pos.y + _VINE_TOP_SNAP) + 6); }; _touchedClimbThisUpdate = true; _predictedPos.x = _arg1.pos.x; } protected function _updateAttack(_arg1:Number):void{ _attackTimer = (_attackTimer - _arg1); if ((((_attackTimer <= 0)) && ((_asset.mc.currentFrame == _asset.mc.totalFrames)))){ _isAttacking = false; _attackCooldown = _ATTACK_COOLDOWN_DURATION; }; } protected function _onPortalResponse(_arg1:EData):void{ WorkinDispatcher.getInstance().getRoom(FireSwampConfig.ROOM_TRIGGERS).removeEventListener(FireSwampConfig.EVENT_PORTAL_RESPONSE, _onPortalResponse); if (!_isTeleporting){ return; }; if (_arg1.data.fail){ return; }; _portalCooldown = _PORTAL_COOLDOWN_DURATION; _pos.toPoint(_arg1.data.portal.pos); _predictedPos.toPoint(_arg1.data.portal.pos); _targetJumpY = _pos.y; _jumpChange = 0; _jumpDuration = 0; _jumpTime = 0; _isTeleporting = false; } protected function _onThrow():void{ if (((((!(_isAiming)) || (_isThrowing))) || (!(_isActive)))){ return; }; _isAiming = false; _isThrowing = false; _collectCooldown = Number(GameState.getInstance().getConfigOption("dewCollectCooldown")); GlobalSound.getInstance().playSound("throw"); WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.EVENT_PLAYER_THROW, {ammo:_ammo, source:this})); } override protected function _determineAnimation():void{ if (_asset.animation == "climbcap"){ if (_asset.mc.currentFrame == _asset.mc.totalFrames){ _animate("idle"); }; return; }; if (_isSwinging){ if (((_swingHeadedIn) && ((_swingProgressRatio > 0.4)))){ _animate("swingback"); } else { _animate("swingfore"); }; } else { if (_isHoldingSwing){ _animate("hold"); } else { if (_isTeleporting){ _animate("jump_up"); } else { if (_isInjured){ if (_isFireDamage){ _animate("firedamage"); } else { _animate("damage"); }; } else { if (_isAiming){ _animate("aim"); } else { if (_isThrowing){ _animate("throw"); } else { if (_isClimbing){ _animate("climb"); if ((((_vertHeld == 0)) || (!(_isActive)))){ _asset.mc.stop(); } else { _asset.mc.play(); }; } else { if (((_isPushing) || ((((_pushResidue > 0)) && (isFacing(_pushTarget)))))){ _animate("push"); } else { if (_isAirborne){ if (_isAttacking){ _animate(("jump_attack_" + (_facingLeft) ? "left" : "right")); } else { if (_involuntaryVelocity.y < 0){ _animate("jump_up"); } else { _animate("jump_down"); }; }; } else { if (_isAttacking){ _animate(("attack_" + (_facingLeft) ? "left" : "right")); } else { if (_isSliding){ _animate("slide"); } else { if (Math.abs(_voluntaryVelocity.x) > 0){ _animate("run"); } else { _animate("idle"); }; }; }; }; }; }; }; }; }; }; }; }; _isSliding = false; } protected function _playLandSound():void{ } protected function _onSwing(_arg1:SwingVine=null):void{ if (_arg1 != null){ _swingingSource = _arg1; }; _isSwinging = true; _isAirborne = false; _isAttacking = false; _isEthereal = true; _isWeightless = true; _onReleaseCrouch(); _involuntaryVelocity.to(0, 0, 0); _voluntaryVelocity.to(0, 0, 0); _swingCooldown = _SWING_COOLDOWN; _momentaryForces = []; if (_hortHeld != 0){ _isHortConsumed = true; }; _swingingSource.onSwing(this); _swingGoal = new WorkinPoint(); _swingCenter = new WorkinPoint(_swingingSource.pos.x, _swingingSource.getCenterY()); _swingDir = (_swingingSource.isLeft) ? 1 : -1; _updateSwingGoal(); } override public function get character():String{ return ("player"); } override protected function _airborneOff():void{ super._airborneOff(); if (_airborneDuration > 0.5){ _playLandSound(); }; _airborneDuration = 0; _voluntaryMaxRate = (_baseMaxRate * ((_poisonTimer > 0)) ? _poisonRatio : 1); if (_isAttacking){ _isAttacking = false; _attackCooldown = _ATTACK_COOLDOWN_DURATION; }; _climbReleaseDelay = 0; } protected function _reactRousCollision(_arg1:Rous):void{ if (((_arg1.isDangerous) && (!(_isAttacking)))){ if (((((_arg1.isFacingLeft) && ((_arg1.pos.x > (_pos.x - 15))))) || (((!(_arg1.isFacingLeft)) && ((_arg1.pos.x < (_pos.x + 15))))))){ _takeKnockbackDamage(_arg1.damage, (_arg1.pos.x - _pos.x)); }; }; } override public function get type():String{ return ("player"); } override public function onPause():void{ } private function _onKeyDown(_arg1:EData):void{ switch (_arg1.data.keyCode){ case 65: case Keyboard.LEFT: _hortHeld = -1; break; case 68: case Keyboard.RIGHT: _hortHeld = 1; break; case 87: case Keyboard.UP: _vertHeld = -1; break; case 83: case Keyboard.DOWN: _vertHeld = 1; break; case Keyboard.SPACE: _spaceHeld = 1; break; }; } public function setInactive():void{ _isActive = false; _removeSelectGlow(); if (_isClimbing){ _voluntaryVelocity.y = 0; }; } public function chat(_arg1:String):void{ if ((((_chatTimer > 0)) && (!((_arg1 == "success"))))){ return; }; } protected function _reactFireMoss(_arg1:FireMoss):void{ if (isShielded){ return; }; if (_arg1.isBurning){ _takeKnockbackDamage(_arg1.damage, (_arg1.pos.x - _pos.x), true); }; } protected function _onCancelAim():void{ _isAiming = false; } override protected function _reactWaterSurfaceCollision(_arg1:WorkinPoint):void{ _touchedWaterThisUpdate = true; } protected function _reactPortalCollision(_arg1:Portal):void{ if (_isAirborne){ return; }; _touchedPortalThisUpdate = true; if (((((((!(_arg1.active)) || (_isTeleporting))) || (_touchedPortalLastUpdate))) || ((_portalCooldown > 0)))){ return; }; _isTeleporting = true; GlobalSound.getInstance().playSound("portal"); WorkinDispatcher.getInstance().getRoom(FireSwampConfig.ROOM_TRIGGERS).addEventListener(FireSwampConfig.EVENT_PORTAL_RESPONSE, _onPortalResponse); WorkinDispatcher.getInstance().getRoom(FireSwampConfig.ROOM_TRIGGERS).dispatchEvent(new EData(FireSwampConfig.EVENT_PLAYER_PORTAL, {portal:_arg1})); } protected function _reactCrumbsCollision(_arg1:Crumbs):void{ if (((((((_arg1.isConsumed) || (_isClimbing))) || (_isAirborne))) || ((_collectCooldown > 0)))){ return; }; _arg1.requestConsume(); _ammo = _arg1; _onAim(); } override protected function _renderVisibility(_arg1:BaseCamera):void{ if (!_mcVisible){ _draw(); }; } override protected function _recalculateDimensions():void{ _displayWidth = 20; _displayHeight = (_isCrouching) ? 67 : 44; _halfDisplayWidth = (_displayWidth / 2); _halfDisplayHeight = (_displayHeight / 2); _recalculateDisplayCenter(); } protected function _onJump():void{ if (_isPushing){ _onReleasePush(); }; if (_isHoldingSwing){ _onReleaseSwing(); }; _addMomentaryForce(new WorkinPoint(0, -100, 0)); _targetJumpY = (_pos.y - _jumpHeight); _playJumpSound(); _jumpChange = -(_jumpHeight); _jumpDuration = (_jumpHeight / 110); _jumpTime = _jumpDuration; _jumpStart = pos.y; _isWeightlessOnce = true; _pushResidue = 0; GlobalSound.getInstance().stopSound("push"); } override protected function _calculateVelocity(_arg1:Number):void{ var _local2:Number; if (_touchedKnockbackThisUpdate){ _voluntaryVelocity.x = 0; if (_voluntaryVelocity.y < 0){ _knockbackForce.y = 0; }; if (_involuntaryVelocity.y < 0){ _knockbackForce.y = 0; }; _clearMomentaryForces(); _addMomentaryForce(_knockbackForce); }; _touchedKnockbackThisUpdate = false; _momentaryVoluntaryMotion.to((_voluntaryVelocity.x * _arg1), (_voluntaryVelocity.y * _arg1)); _loop = _momentaryForces.length; while (_loop--) { _involuntaryVelocity.addPoint(_momentaryForces[_loop]); }; if (((((_isAirborne) && ((_involuntaryVelocity.y < 0)))) && ((_pos.y > _targetJumpY)))){ _local2 = (_arg1 * ((_involuntaryVelocity.y < 0)) ? 2 : 1); _loop = _persistantForces.length; while (_loop--) { _involuntaryVelocity.add((_persistantForces[_loop].x * _local2), 0); }; } else { if (((!(_isWeightless)) && (!(_isWeightlessOnce)))){ _local2 = (_arg1 * ((_involuntaryVelocity.y < 0)) ? 2 : 1); _loop = _persistantForces.length; while (_loop--) { _involuntaryVelocity.add((_persistantForces[_loop].x * _local2), (_persistantForces[_loop].y * _local2)); }; } else { _isWeightlessOnce = false; }; }; _velocity.to((_involuntaryVelocity.x + _voluntaryVelocity.x), (_involuntaryVelocity.y + _voluntaryVelocity.y)); if (((((_isAirborne) && ((_involuntaryVelocity.y < 0)))) && ((_pos.y > _targetJumpY)))){ _velocity.y = -(_JUMP_LAUNCH_RATE); _jumpTime = (_jumpTime - _arg1); if (((!((_jumpDuration == 0))) && (!((_jumpChange == 0))))){ _velocity.y = (-(((((_jumpChange * (_jumpTime / _jumpDuration)) * (_jumpTime / _jumpDuration)) / _jumpChange) + 0.25)) * _JUMP_LAUNCH_RATE); }; }; } override protected function _reactFireSurfaceCollision(_arg1:WorkinPoint):void{ _touchedHeatThisUpdate = true; } } }//package com.wwb.princessbride.fire_swamp.world.entitys.mobs.players
Section 232
//Westley (com.wwb.princessbride.fire_swamp.world.entitys.mobs.players.Westley) package com.wwb.princessbride.fire_swamp.world.entitys.mobs.players { import com.wwb.princessbride.fire_swamp.*; import flash.events.*; import com.workinman.lib.sound.*; import com.workinman.lib.utils.*; import com.wwb.princessbride.fire_swamp.world.entitys.mobs.inanimates.*; import com.wwb.princessbride.fire_swamp.assets.*; public class Westley extends Player { private var _damage:Number; public static var EVENT_CHANGE_SWORD_RIGHT:String = "onWestleySwordRight"; public static var EVENT_CHANGE_SWORD_LEFT:String = "onWestleySwordLeft"; public static var EVENT_CHANGE_FACE_RIGHT:String = "onWestleyFaceRight"; public static var EVENT_CHANGE_FACE_LEFT:String = "onWestleyFaceLeft"; public function Westley(_arg1:Object){ _arg1.asset = WestleyAsset; super(_arg1); _jumpHeight = (Number(GameState.getInstance().getConfigOption("westleyJumpHeight")) * FireSwampConfig.ppu); _damage = Number(GameState.getInstance().getConfigOption("westleyDamageToRous")); WorkinDispatcher.getInstance().dispatchEvent(new Event(EVENT_CHANGE_SWORD_RIGHT)); } override protected function _reactBoulderCollision(_arg1:Boulder):void{ if (_isAirborne){ return; }; if (_isPushing){ _touchedPushThisUpdate = true; } else { _onPush(_arg1); }; } override protected function _onChangeFacing():void{ if (_facingLeft){ WorkinDispatcher.getInstance().dispatchEvent(new Event(EVENT_CHANGE_FACE_LEFT)); } else { WorkinDispatcher.getInstance().dispatchEvent(new Event(EVENT_CHANGE_FACE_RIGHT)); }; } override protected function _playAttackHitSound():void{ GlobalSound.getInstance().playSound("attackHitSword"); } override protected function _playJumpSound():void{ var _local1:String; _local1 = ((Math.random() < 0.5)) ? "1" : "2"; GlobalSound.getInstance().playSound(("jumpWestley" + _local1), true); } override protected function _playLandSound():void{ } override public function get character():String{ return ("westley"); } override public function chat(_arg1:String):void{ var _local2:Number; if ((((_chatTimer > 0)) && (!((_arg1 == "success"))))){ return; }; switch (_arg1){ case "switch": if (Math.random() < 0.4){ _local2 = Math.ceil((Math.random() * 3)); if (_local2 == 0){ (_local2 == 1); }; GlobalVoice.getInstance().playVO(("voWestleySwitch" + String(_local2))); }; _setChatTimer(3); break; case "damage": GlobalSound.getInstance().playSound("jumpWestley1"); _setChatTimer(0.7); break; case "success": _local2 = Math.ceil((Math.random() * 6)); if (_local2 == 0){ (_local2 == 1); }; GlobalVoice.getInstance().playVO(("voWestleySuccess" + String(_local2))); _setChatTimer(); break; case "kill": GlobalVoice.getInstance().playVO("voWestleyKill"); _setChatTimer(); break; }; } override public function get damage():Number{ return (_damage); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.mobs.players
Section 233
//Mobile (com.wwb.princessbride.fire_swamp.world.entitys.mobs.Mobile) package com.wwb.princessbride.fire_swamp.world.entitys.mobs { import com.wwb.princessbride.fire_swamp.*; import com.workinman.lib.math.*; import com.workinman.paradise.math.*; import com.wwb.princessbride.fire_swamp.world.entitys.*; import com.wwb.princessbride.fire_swamp.world.entitys.surfaces.*; public class Mobile extends RoomInhabitant { protected var _isAirborne:Boolean; protected var _voluntaryMaxRate:Number; private var _shortestDistanceContender:Number; protected var _voluntaryVelocity:WorkinPoint; protected var _facingLeft:Boolean; private var _pathOriginPos:WorkinPoint; protected var _groundFrictionRate:Number; protected var _collisions:Array; protected var _loopb:Number; protected var _loopc:Number; protected var _interceptResult:InterceptResult; protected var _airAccelRate:Number; protected var _primaryCollision:SurfaceCollisionResult; protected var _involuntaryVelocity:WorkinPoint; protected var _predictedPos:WorkinPoint; protected var _groundAccelRate:Number; protected var _baseGroundFrictionRate:Number; private var _lineVetoed:Boolean; protected var _baseGroundAccelRate:Number; protected var _isEthereal:Boolean; protected var _baseMaxRate:Number; protected var _predictedMotionSweeps:Array; protected var _persistantForces:Array; protected var _isWeightless:Boolean; private var _touchedGroundThisUpdate:Boolean; protected var _airFrictionRate:Number; protected var _isEdge:Boolean; protected var _momentaryForces:Array; protected var _leftOverMotion:WorkinLine; protected var _loop:Number; protected var _baseAirAccelRate:Number; protected var _baseAirFrictionRate:Number; private var _shortestDistanceIndex:Number; protected var _momentaryVoluntaryMotion:WorkinPoint; private var _shortestDistance:Number; public function Mobile(_arg1:Object):void{ super(_arg1); _velocity = new WorkinPoint(); _voluntaryVelocity = new WorkinPoint(); _involuntaryVelocity = new WorkinPoint(); _momentaryVoluntaryMotion = new WorkinPoint(); _predictedMotionSweeps = []; _momentaryForces = []; _persistantForces = []; _applyGravity(); _predictedPos = new WorkinPoint(); _pathOriginPos = new WorkinPoint(); _setMotionRates(); _isAirborne = true; _isEthereal = false; _isWeightless = false; _facingLeft = true; _onChangeFacing(); _setCollisionBox(); } protected function _reactFireSurfaceCollision(_arg1:WorkinPoint):void{ } protected function _resolveWallCollisionAftermath():void{ } protected function _testEntityBoxCollision(_arg1:FireSwampSprite):Boolean{ var _local2:WorkinPoint; _local2 = collisionCenter.diff(_arg1.collisionCenter); if ((((Math.abs(_local2.x) > (collisionWidthHalf + _arg1.collisionWidthHalf))) || ((Math.abs(_local2.y) > (collisionHeightHalf + _arg1.collisionHeightHalf))))){ return (false); }; return (true); } override protected function _setCollisionBox():void{ } public function get involuntaryVelocity():WorkinPoint{ return (_involuntaryVelocity); } protected function _reactPoisonSurfaceCollision(_arg1:WorkinPoint):void{ } private function _resolveSurfaceCollisionEffects(_arg1:SurfaceCollisionLine):void{ var _local2:Array; var _local3:Number; _local2 = _arg1.effects; _local3 = _local2.length; while (_local3--) { if ((((_local2[_local3] == "ground")) || ((_local2[_local3] == "appearance")))){ } else { if (_local2[_local3] == "fire"){ _reactFireSurfaceCollision(_arg1.center); } else { if (_local2[_local3] == "water"){ _reactWaterSurfaceCollision(_arg1.center); } else { if (_local2[_local3] == "poison"){ _reactPoisonSurfaceCollision(_arg1.center); }; }; }; }; }; } public function get isEthereal():Boolean{ return (_isEthereal); } public function get velocity():WorkinPoint{ return (_velocity); } protected function _applyGravity():void{ _addPersistantForce(new WorkinPoint(0, FireSwampConfig.GRAVITY_FORCE, 0)); } public function get isWeightless():Boolean{ return (_isWeightless); } public function updatePosition():void{ _pos.toPoint(_predictedPos); _pathOriginPos.toPoint(_predictedPos); _collisionCenter = _collisionBox.getCollisionCenter(_pos); if (_touchedGroundThisUpdate){ if (_isAirborne){ _airborneOff(); }; } else { if (!_isAirborne){ _airborneOn(); }; }; _touchedGroundThisUpdate = false; _momentaryForces = []; _determineAnimation(); } public function testAndResolveEntityCollision(_arg1:FireSwampSprite):void{ if (_arg1.entityCollisionAsSurface){ if (_testEntitySurfaceCollision(_arg1)){ _resolveEntityCollision(_arg1); return; }; }; if (_arg1.entityCollisionAsBox){ if (_testEntityBoxCollision(_arg1)){ _resolveEntityCollision(_arg1); }; }; } public function testAndResolveCombatCollision(_arg1:FireSwampSprite):void{ var _local2:WorkinPoint; if (_arg1.doNonCombatCollisionOnly){ testAndResolveEntityCollision(_arg1); return; }; _local2 = collisionCenter.diff(_arg1.collisionCenter); if ((((Math.abs(_local2.x) > (combatCollisionWidthHalf + _arg1.combatCollisionWidthHalf))) || ((Math.abs(_local2.y) > (combatCollisionHeightHalf + _arg1.combatCollisionHeightHalf))))){ return; }; _resolveEntityCollision(_arg1); } protected function _onChangeFacing():void{ } public function testAndResolveSurfaceCollision(_arg1:Surface):void{ if ((((_predictedMotionSweeps.length == 0)) || (((_isEthereal) && (!((_arg1.group == "ground"))))))){ return; }; _loop = _arg1.collisionLines.length; while (_loop--) { _resolveSurfaceCollisions(_testLineCollision(_arg1.collisionLines[_loop])); }; } override protected function _animate(_arg1:String):void{ super._animate(_arg1); if ((((_voluntaryVelocity.x > 0)) && (_facingLeft))){ _facingLeft = false; _asset.scaleX = -1; _onChangeFacing(); } else { if ((((_voluntaryVelocity.x < 0)) && (!(_facingLeft)))){ _facingLeft = true; _asset.scaleX = 1; _onChangeFacing(); }; }; } public function get predictedMotionSweeps():Array{ return (_predictedMotionSweeps); } private function _debugDrawSweeps():void{ var _local1:Number; graphics.clear(); graphics.lineStyle(1, 0xCC0000); _local1 = _predictedMotionSweeps.length; while (_local1--) { graphics.moveTo((_predictedMotionSweeps[_local1].line.p0.x - _pos.x), (_predictedMotionSweeps[_local1].line.p0.y - _pos.y)); graphics.lineTo((_predictedMotionSweeps[_local1].line.p1.x - _pos.x), (_predictedMotionSweeps[_local1].line.p1.y - _pos.y)); }; } protected function _testEntitySurfaceCollision(_arg1:FireSwampSprite):Boolean{ var _local2:Boolean; _local2 = false; _loop = _arg1.collisionLines.length; while (_loop--) { if (_resolveSurfaceCollisions(_testLineCollision(_arg1.collisionLines[_loop]))){ _local2 = true; }; }; return (_local2); } protected function _setMotionRates():void{ _baseMaxRate = 220; _baseGroundAccelRate = 500; _baseGroundFrictionRate = 300; _baseAirAccelRate = 340; _baseAirFrictionRate = 150; _voluntaryMaxRate = _baseMaxRate; _groundAccelRate = _baseGroundAccelRate; _groundFrictionRate = _baseGroundFrictionRate; _airAccelRate = _baseAirAccelRate; _airFrictionRate = _baseAirFrictionRate; } protected function _resolveEntityCollision(_arg1:FireSwampSprite):void{ onEntityCollision(_arg1); _arg1.onEntityCollision(this); } override protected function _updatePath(_arg1:Number):void{ _paths[0].update(_arg1); if (_paths[0].hasPosition){ _predictedPos.toPoint(_paths[0].current); }; if (_paths[0].isComplete){ _paths.splice(0, 1); if (_paths.length == 0){ _onPathComplete(); } else { if (_paths[0].hasPosition){ _paths[0].startToPoint(_pos); }; }; }; } public function updatePrediction(_arg1:Number):void{ if (isPathing){ _updatePath(_arg1); } else { _calculateVelocity(_arg1); _predictedPos.to((_pos.x + (_velocity.x * _arg1)), (_pos.y + (_velocity.y * _arg1))); if (_predictedPos.x < 0){ _predictedPos.x = 0; }; }; _predictedMotionSweeps = _collisionBox.getCollisionLineArray(_pos, _predictedPos); } public function get momentaryMotion():WorkinPoint{ return (_momentaryVoluntaryMotion); } protected function _airborneOn():void{ _isAirborne = true; } protected function _clearMomentaryForces():void{ _momentaryForces = []; } public function get isAirborne():Boolean{ return (_isAirborne); } override public function get group():String{ return ("mobiles"); } public function updateAI(_arg1:Array):void{ } protected function _addPersistantForce(_arg1:WorkinPoint):void{ _persistantForces.push(_arg1); } protected function _resolveSurfaceCollisions(_arg1:Array):Boolean{ _loopb = _arg1.length; if (_loopb == 0){ return (false); }; if ((((_loopb == 1)) && ((_arg1[0].motionSweep.flag == "f")))){ _isEdge = true; } else { _isEdge = false; }; _shortestDistance = 100000; _shortestDistanceIndex = -1; while (_loopb--) { _shortestDistanceContender = _arg1[_loopb].motionSweep.line.p0.distTo(_arg1[_loopb].intercept); if (_shortestDistanceContender < _shortestDistance){ _shortestDistance = _shortestDistanceContender; _shortestDistanceIndex = _loopb; }; }; _primaryCollision = _arg1[_shortestDistanceIndex]; if (((!((_primaryCollision.motionSweep.flag == "f"))) && (_primaryCollision.surfaceLine.standable))){ return (false); }; if ((((_primaryCollision.motionSweep.flag == "f")) && (!(_primaryCollision.surfaceLine.standable)))){ if ((((_primaryCollision.surfaceLine.normal.x == 1)) && (_primaryCollision.intercept.equals(_primaryCollision.surfaceLine.p0)))){ return (false); }; if ((((_primaryCollision.surfaceLine.normal.x == -1)) && (_primaryCollision.intercept.equals(_primaryCollision.surfaceLine.p1)))){ return (false); }; }; _involuntaryVelocity.dampenByPoint(_involuntaryVelocity.deflectOffCopy(_primaryCollision.surfaceLine.vector)); _voluntaryVelocity.dampenByPoint(_voluntaryVelocity.deflectOffCopy(_primaryCollision.surfaceLine.vector)); _leftOverMotion = new WorkinLine(_primaryCollision.intercept.copy(), _primaryCollision.intercept.addPointCopy(_primaryCollision.intercept.diff(_primaryCollision.motionSweep.line.p1).projectOntoCopy(_primaryCollision.surfaceLine.vector))); if ((((_primaryCollision.motionSweep.flag == "f")) && (_primaryCollision.surfaceLine.standable))){ _touchedGroundThisUpdate = true; if (_isAirborne){ _predictedPos = _primaryCollision.intercept.subtractPointCopy(_primaryCollision.vertex.point); } else { _leftOverMotion.length = _momentaryVoluntaryMotion.length; _predictedPos = _leftOverMotion.p1.subtractPointCopy(_primaryCollision.vertex.point); }; } else { _predictedPos = _leftOverMotion.p1.subtractPointCopy(_primaryCollision.vertex.point); _resolveWallCollisionAftermath(); }; _pathOriginPos = _primaryCollision.surfaceLine.p0.addPointCopy(_primaryCollision.surfaceLine.p0.diff(_pos.addPointCopy(_primaryCollision.vertex.point)).projectOntoCopy(_primaryCollision.surfaceLine.vector)).subtractPointCopy(_primaryCollision.vertex.point); _predictedMotionSweeps = _collisionBox.getCollisionLineArray(_pathOriginPos, _predictedPos); _resolveSurfaceCollisionEffects(_primaryCollision.surfaceLine); return (true); } protected function _determineAnimation():void{ } public function get voluntaryVelocity():WorkinPoint{ return (_voluntaryVelocity); } public function get character():String{ return ("none"); } protected function _airborneOff():void{ _isAirborne = false; } public function onPause():void{ } protected function _reactWaterSurfaceCollision(_arg1:WorkinPoint):void{ } protected function _testLineCollision(_arg1:SurfaceCollisionLine):Array{ if (_predictedMotionSweeps.length == 0){ return ([]); }; if ((((_arg1.normal.y <= 0)) && ((((_pos.x < ((_arg1.p0.x - collisionWidth) - 20))) || ((_pos.x > ((_arg1.p1.x + collisionWidth) + 20))))))){ return ([]); }; _collisions = []; if (_predictedMotionSweeps[0].line.vector.dot(_arg1.normal) < 0){ _loopb = _predictedMotionSweeps.length; while (_loopb--) { if (_predictedMotionSweeps[_loopb].testExclusion(_arg1)){ } else { _interceptResult = _predictedMotionSweeps[_loopb].line.testLineSegmentIntercept(_arg1); if (_interceptResult.success){ _collisions.push(new SurfaceCollisionResult(_interceptResult, _collisionBox.getVertexByID(_predictedMotionSweeps[_loopb].id), _predictedMotionSweeps[_loopb], _arg1)); }; }; }; }; return (_collisions); } public function get isFacingLeft():Boolean{ return (_facingLeft); } protected function _calculateVelocity(_arg1:Number):void{ _momentaryVoluntaryMotion = _voluntaryVelocity.multiplyCopy(_arg1); _loop = _momentaryForces.length; while (_loop--) { _involuntaryVelocity.addPoint(_momentaryForces[_loop]); }; if (!_isWeightless){ _loop = _persistantForces.length; while (_loop--) { _involuntaryVelocity.addPoint(_persistantForces[_loop].multiplyCopy(_arg1)); }; }; _velocity.toPoint(_involuntaryVelocity.addPointCopy(_voluntaryVelocity)); } protected function _addMomentaryForce(_arg1:WorkinPoint):void{ _momentaryForces.push(_arg1); } public function get predictedPos():WorkinPoint{ return (_predictedPos); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.mobs
Section 234
//MobLibrary (com.wwb.princessbride.fire_swamp.world.entitys.mobs.MobLibrary) package com.wwb.princessbride.fire_swamp.world.entitys.mobs { import com.wwb.princessbride.fire_swamp.data.mobs.*; import com.wwb.princessbride.fire_swamp.world.entitys.mobs.inanimates.*; import com.wwb.princessbride.fire_swamp.world.entitys.mobs.hostiles.*; public class MobLibrary { public static function generateNewMob(_arg1:MobData, _arg2:Number):Mobile{ switch (_arg1.type){ case "boulder": return (new Boulder({mobData:_arg1, room:_arg2})); case "rous": return (new Rous({mobData:_arg1, room:_arg2})); case "flyingrous": return (new FlyRous({mobData:_arg1, room:_arg2})); }; return (null); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.mobs
Section 235
//Ground (com.wwb.princessbride.fire_swamp.world.entitys.surfaces.Ground) package com.wwb.princessbride.fire_swamp.world.entitys.surfaces { import com.wwb.princessbride.fire_swamp.*; import com.workinman.lib.math.*; import com.workinman.paradise.*; import flash.display.*; import com.wwb.princessbride.fire_swamp.data.surfaces.*; import flash.geom.*; import flash.utils.*; public class Ground extends Surface { private var _isLastRoomGround:Boolean; public function Ground(_arg1:Object){ var _local2:GroundData; var _local3:Number; _local2 = _arg1.groundData; _generator = _local2; _drawTiles = _local2.drawTiles; _pos = new WorkinPoint(_local2.x, 0, 0); _isLastRoomGround = _arg1.isLast; _local3 = _local2.y; _appearance = _local2.appearance; _p0 = new WorkinPoint(_pos.x, _local3); _p1 = new WorkinPoint((_pos.x + FireSwampConfig.roomWidth), _local3); _room = _arg1.room; _generateSpanMap(_local2.spans); _generateCollisionLines(); super({room:_arg1.room}); } override protected function get _assetRegistrationPoint():String{ return ("tl"); } override public function get group():String{ return ("ground"); } override protected function _onGenerateAsset():void{ var _local1:BitmapData; var _local2:BitmapData; var _local3:BitmapData; var _local4:Sprite; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Boolean; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; if (!_drawTiles){ return; }; _local1 = new BitmapData(ParadiseConfig.SCREEN_WIDTH, (ParadiseConfig.SCREEN_HEIGHT + (ParadiseConfig.SCREEN_OFFSET.x * 2)), true, 0); _local3 = new BitmapData(20, 20); _local3.draw(new ((getDefinitionByName("debug_ground") as Class))); _local4 = new Sprite(); _local4.graphics.beginBitmapFill(_local3.clone(), new Matrix()); _local5 = 0; _local4.graphics.moveTo((_collisionLines[0].p0.x - _pos.x), ParadiseConfig.SCREEN_BOTTOM); while (_local5 < _collisionLines.length) { if ((((_collisionLines[_local5].p0.y == FireSwampConfig.roomBottom)) || ((_collisionLines[_local5].p1.y == FireSwampConfig.roomBottom)))){ _local5++; } else { _local4.graphics.lineTo((_collisionLines[_local5].p0.x - _pos.x), _collisionLines[_local5].p0.y); _local4.graphics.lineTo((_collisionLines[_local5].p1.x - _pos.x), _collisionLines[_local5].p1.y); _local5++; }; }; _local4.graphics.lineTo((_collisionLines[(_collisionLines.length - 1)].p1.x - _pos.x), ParadiseConfig.SCREEN_BOTTOM); _local4.graphics.lineTo((_collisionLines[0].p0.x - _pos.x), ParadiseConfig.SCREEN_BOTTOM); _local4.graphics.lineTo((_collisionLines[0].p0.x - _pos.x), _collisionLines[0].p0.y); _local4.graphics.endFill(); _local1.draw(_local4); _loop = _collisionLines.length; while (_loop--) { if (_collisionLines[_loop].p0.y != _collisionLines[_loop].p1.y){ } else { _local6 = (_collisionLines[_loop].p0.x - _pos.x); _local7 = _collisionLines[_loop].p0.y; if (_loop > 0){ _local12 = ((_collisionLines[(_loop - 1)].centerY < _local7)) ? -1 : ((_collisionLines[(_loop - 1)].centerY > _local7)) ? 1 : 0; } else { _local12 = 1; }; if (_loop < (_collisionLines.length - 1)){ _local13 = ((_collisionLines[(_loop + 1)].centerY < _local7)) ? -1 : ((_collisionLines[(_loop + 1)].centerY > _local7)) ? 1 : 0; } else { _local13 = 1; }; if (_local13 == 0){ _local14 = 0; } else { _local14 = _local3.width; }; _local15 = _local3.height; if (_local12 != 0){ _local2 = _local3; _local1.copyPixels(_local2, new Rectangle(0, 0, _local2.width, _local2.height), new Point((_collisionLines[_loop].p0.x - _pos.x), (_local7 - (_local2.height - _local15)))); _local6 = (_local6 + _local2.width); }; _local2 = _local3; _local8 = _local2.width; _local9 = _local2.height; _local11 = true; while (_local11) { _local10 = ((_collisionLines[_loop].p1.x - _pos.x) - _local6); if (_local10 > _local8){ _local10 = _local8; }; _local1.copyPixels(_local2, new Rectangle(0, 0, _local10, _local9), new Point(_local6, _local7)); _local6 = (_local6 + _local10); if (_local6 >= ((_collisionLines[_loop].p1.x - _pos.x) - _local14)){ _local11 = false; }; }; if (_local13 != 0){ _local2 = _local3; _local1.copyPixels(_local2, new Rectangle(0, 0, _local2.width, _local2.height), new Point(((_collisionLines[_loop].p1.x - _local2.width) - _pos.x), (_local7 - (_local2.height - _local15)))); }; }; }; _asset.addChild(new Bitmap(_local1)); _asset.cacheAsBitmap = true; } override protected function _generateCollisionLines():void{ super._generateCollisionLines(); if (_isLastRoomGround){ _addCollisionLine(new WorkinPoint((_pos.x + FireSwampConfig.roomWidth), FireSwampConfig.roomBottom), new WorkinPoint((_pos.x + FireSwampConfig.roomWidth), ParadiseConfig.SCREEN_TOP), []); }; if (_room == 1){ _addCollisionLine(new WorkinPoint(0, ParadiseConfig.SCREEN_TOP, 0), new WorkinPoint(0, FireSwampConfig.roomBottom, 0), []); }; _addCollisionLine(new WorkinPoint(_pos.x, FireSwampConfig.roomBottom), new WorkinPoint(_pos.x, _p0.y), []); _addCollisionLine(new WorkinPoint(_p1.x, _p1.y), new WorkinPoint(_p1.x, FireSwampConfig.roomBottom), []); } } }//package com.wwb.princessbride.fire_swamp.world.entitys.surfaces
Section 236
//Platform (com.wwb.princessbride.fire_swamp.world.entitys.surfaces.Platform) package com.wwb.princessbride.fire_swamp.world.entitys.surfaces { import com.wwb.princessbride.fire_swamp.*; import com.workinman.lib.math.*; import com.workinman.paradise.*; import flash.display.*; import com.wwb.princessbride.fire_swamp.data.surfaces.*; import com.workinman.paradise.math.*; import flash.geom.*; import flash.utils.*; public class Platform extends Surface { private var _width:Number; private var _bottomCollision:Boolean; private var _bitmapAsset:Bitmap; private var _id:String; public function Platform(_arg1:Object){ var _local2:PlatformData; _local2 = _arg1.platformData; _generator = _local2; _drawTiles = _local2.drawTiles; _pos = new WorkinPoint(_local2.x, _local2.y, 0); _width = _local2.width; _id = _local2.id; _bottomCollision = _local2.bottomCollision; _appearance = _local2.appearance; _p0 = new WorkinPoint(_pos.x, _pos.y); _p1 = new WorkinPoint((_pos.x + _width), _pos.y); _generateSpanMap(_local2.spans); _generateCollisionLines(); super({room:_arg1.room}); } override protected function get _assetRegistrationPoint():String{ return ("tl"); } override public function get group():String{ return ("platforms"); } override protected function _onGenerateAsset():void{ var _local1:BitmapData; var _local2:BitmapData; var _local3:BitmapData; var _local4:Sprite; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Boolean; var _local16:Number; var _local17:Number; var _local18:Number; if (!_drawTiles){ return; }; _local1 = new BitmapData(ParadiseConfig.SCREEN_WIDTH, (ParadiseConfig.SCREEN_HEIGHT + (ParadiseConfig.SCREEN_OFFSET.x * 2)), true, 0); _local3 = new BitmapData(20, 20); _local3.draw(new ((getDefinitionByName("debug_ground") as Class))); _local4 = new Sprite(); _local5 = 0; _local6 = 10000; _local5 = _collisionLines.length; while (_local5--) { if ((_collisionLines[_local5].p0.x - _pos.x) < _local6){ _local6 = (_collisionLines[_local5].p0.x - _pos.x); }; if ((_collisionLines[_local5].p1.x - _pos.x) < _local6){ _local6 = (_collisionLines[_local5].p1.x - _pos.x); }; }; _local7 = _local6; _local6 = -10000; _local5 = _collisionLines.length; while (_local5--) { if ((_collisionLines[_local5].p0.x - _pos.x) > _local6){ _local6 = (_collisionLines[_local5].p0.x - _pos.x); }; if ((_collisionLines[_local5].p1.x - _pos.x) > _local6){ _local6 = (_collisionLines[_local5].p1.x - _pos.x); }; }; _local8 = _local6; _local9 = (_bottomCollision) ? 0 : _local3.height; _local9 = (_bottomCollision) ? 0 : _local3.height; _local4.graphics.beginBitmapFill(_local3.clone(), new Matrix()); _local5 = 0; _local4.graphics.moveTo((_collisionLines[0].p0.x - _pos.x), (_collisionLines[0].p0.y + _local9)); while (_local5 < _collisionLines.length) { _local4.graphics.lineTo((_collisionLines[_local5].p0.x - _pos.x), (_collisionLines[_local5].p0.y + _local9)); _local4.graphics.lineTo((_collisionLines[_local5].p1.x - _pos.x), (_collisionLines[_local5].p1.y + _local9)); _local5++; }; _local4.graphics.lineTo((_collisionLines[0].p0.x - _pos.x), (_collisionLines[0].p0.y + _local9)); _local4.graphics.endFill(); _local1.draw(_local4); _loop = _collisionLines.length; while (_loop--) { if (((!((_collisionLines[_loop].p0.y == _collisionLines[_loop].p1.y))) || ((_collisionLines[_loop].p0.x > _collisionLines[_loop].p1.x)))){ } else { _local10 = (_collisionLines[_loop].p0.x - _pos.x); _local11 = _collisionLines[_loop].p0.y; if (_loop > 0){ _local16 = ((_collisionLines[(_loop - 1)].centerY < _local11)) ? -1 : ((_collisionLines[(_loop - 1)].centerY > _local11)) ? 1 : 0; } else { _local16 = 1; }; if (_loop < (_collisionLines.length - 1)){ _local17 = ((_collisionLines[(_loop + 1)].centerY < _local11)) ? -1 : ((_collisionLines[(_loop + 1)].centerY > _local11)) ? 1 : 0; } else { _local17 = 1; }; _local18 = _local3.width; _local9 = _local3.height; _local2 = _local3; _local1.copyPixels(_local2, new Rectangle(0, 0, _local2.width, _local2.height), new Point((_collisionLines[_loop].p0.x - _pos.x), (_local11 - (_local2.height - _local9)))); _local10 = (_local10 + _local2.width); _local2 = _local3; _local12 = _local2.width; _local13 = _local2.height; _local15 = true; while (_local15) { _local14 = ((_collisionLines[_loop].p1.x - _local10) - _pos.x); if (_local14 > _local12){ _local14 = _local12; }; _local1.copyPixels(_local2, new Rectangle(0, 0, _local14, _local13), new Point(_local10, _local11)); _local10 = (_local10 + _local14); if (_local10 >= ((_collisionLines[_loop].p1.x - _local18) - _pos.x)){ _local15 = false; }; }; _local2 = _local3; _local1.copyPixels(_local2, new Rectangle(0, 0, _local2.width, _local2.height), new Point(((_collisionLines[_loop].p1.x - _local2.width) - _pos.x), _local11)); }; }; _local10 = _local7; _local11 = (_collisionLines[0].p0.y + _local3.height); _local18 = _local3.width; _local9 = _local3.height; _local2 = _local3; _local1.copyPixels(_local2, new Rectangle(0, 0, _local2.width, _local2.height), new Point((_collisionLines[0].p0.x - _pos.x), _local11)); _local10 = (_local10 + _local2.width); _local2 = _local3; _local12 = _local2.width; _local13 = _local2.height; _local15 = true; while (_local15) { _local14 = (_local8 - _local10); if (_local14 > _local12){ _local14 = _local12; }; _local1.copyPixels(_local2, new Rectangle(0, 0, _local14, _local13), new Point(_local10, _local11)); _local10 = (_local10 + _local14); if (_local10 >= (_local8 - _local18)){ _local15 = false; }; }; _local2 = _local3; _local1.copyPixels(_local2, new Rectangle(0, 0, _local2.width, _local2.height), new Point((_local8 - _local2.width), _local11)); _bitmapAsset = new Bitmap(_local1); _bitmapAsset.y = -(_pos.y); _asset.addChild(_bitmapAsset); _asset.cacheAsBitmap = true; } override public function cleanUp():void{ try { _bitmapAsset.bitmapData.dispose(); } catch(pError:Error) { }; super.cleanUp(); } override protected function _generateCollisionLines():void{ super._generateCollisionLines(); } public function get id():String{ return (_id); } private function _getPlatformTileID(_arg1:SurfaceCollisionLine, _arg2:Number=1, _arg3:Boolean=false, _arg4:Boolean=false):String{ if (_arg1.p0.y == _pos.y){ return (((_arg2 < 0)) ? (_arg3) ? (_arg4) ? FireSwampConfig.TILEID_PLATFORM_BOOKEND_LEFT_UP : FireSwampConfig.TILEID_PLATFORM_BOOKEND_RIGHT_UP : FireSwampConfig.TILEID_PLATFORM : ((_arg2 > 0)) ? (_arg3) ? (_arg4) ? FireSwampConfig.TILEID_PLATFORM_BOOKEND_LEFT_DOWN : FireSwampConfig.TILEID_PLATFORM_BOOKEND_RIGHT_DOWN : FireSwampConfig.TILEID_PLATFORM : FireSwampConfig.TILEID_PLATFORM); //unresolved jump }; return (((_arg2 < 0)) ? (_arg3) ? (_arg4) ? FireSwampConfig.TILEID_GROUND_BOOKEND_LEFT_UP : FireSwampConfig.TILEID_GROUND_BOOKEND_RIGHT_UP : FireSwampConfig.TILEID_GROUND : ((_arg2 > 0)) ? (_arg3) ? (_arg4) ? FireSwampConfig.TILEID_GROUND_BOOKEND_LEFT_DOWN : FireSwampConfig.TILEID_GROUND_BOOKEND_RIGHT_DOWN : FireSwampConfig.TILEID_GROUND : FireSwampConfig.TILEID_GROUND); } override protected function _debugDrawCollisionLines():void{ var _local1:Number; _asset.graphics.clear(); _asset.graphics.lineStyle(1, 0); _local1 = _collisionLines.length; while (_local1--) { _asset.graphics.moveTo((_collisionLines[_local1].p0.x - _pos.x), (_collisionLines[_local1].p0.y - _pos.y)); _asset.graphics.lineTo((_collisionLines[_local1].p1.x - _pos.x), (_collisionLines[_local1].p1.y - _pos.y)); }; } } }//package com.wwb.princessbride.fire_swamp.world.entitys.surfaces
Section 237
//Surface (com.wwb.princessbride.fire_swamp.world.entitys.surfaces.Surface) package com.wwb.princessbride.fire_swamp.world.entitys.surfaces { import com.workinman.lib.math.*; import com.workinman.paradise.math.*; import com.wwb.princessbride.fire_swamp.world.entitys.*; import com.wwb.princessbride.fire_swamp.world.*; public class Surface extends RoomInhabitant { protected var _appearance:String; protected var _p0:WorkinPoint; protected var _p1:WorkinPoint; protected var _spanEffects:Array; protected var _spanmap:Array; protected var _drawTiles:Boolean; protected var _loopb:Number; protected var _loopc:Number; protected var _loop:Number; public function Surface(_arg1:Object){ super(_arg1); } protected function _generateSpanMap(_arg1:Array):void{ var _local2:Array; var _local3:Number; var _local4:Array; var _local5:Array; var _local6:Array; var _local7:Number; _local2 = []; _local3 = _arg1.length; while (_local3--) { _local2.push({x:_arg1[_local3].begin, flag:"start", type:_arg1[_local3].type, span:_arg1[_local3], id:_local3}); _local2.push({x:_arg1[_local3].end, flag:"stop", type:_arg1[_local3].type, span:_arg1[_local3], id:_local3}); }; _local2.sortOn("x", Array.NUMERIC); _local4 = []; _local5 = []; _local3 = 0; while (_local3 < _local2.length) { if (_local2[_local3].flag == "start"){ _local5.push({span:_local2[_local3].span, id:_local2[_local3].id}); } else { if (_local2[_local3].flag == "stop"){ _local7 = _local5.length; while (_local7--) { if (_local5[_local7].id == _local2[_local3].id){ _local5.splice(_local7, 1); }; }; }; }; if ((((_local3 < (_local2.length - 1))) && ((_local2[(_local3 + 1)].x == _local2[_local3].x)))){ _local3++; } else { _local6 = []; _local7 = _local5.length; while (_local7--) { _local6.push(_local5[_local7].span); }; _local4.push({x:_local2[_local3].x, effects:_local6}); _local3++; }; }; _spanmap = []; _local3 = _local4.length; while (_local3--) { if (_local3 < (_local4.length - 1)){ _spanmap.push(new Span({start:_local4[_local3].x, end:(_local4[_local3].x + (_local4[(_local3 + 1)].x - _local4[_local3].x)), isCap:false, effects:_local4[_local3].effects})); } else { _spanmap.push(new Span({start:_local4[_local3].x, end:1000, isCap:true, effects:_local4[_local3].effects})); }; }; } public function get spanEffects():Array{ return (_spanEffects); } override public function get doDepthRender():Boolean{ return (true); } public function get sortY():Number{ var _local1:Number; var _local2:Number; _local1 = 1000; _local2 = _collisionLines.length; while (_local2--) { if (_collisionLines[_local2].p0.y < _local1){ _local1 = _collisionLines[_local2].p0.y; }; if (_collisionLines[_local2].p1.y < _local1){ _local1 = _collisionLines[_local2].p1.y; }; }; return (_local1); } override protected function _generateCollisionLines():void{ var _local1:Number; var _local2:Number; var _local3:Number; var _local4:Number; var _local5:Array; var _local6:String; var _local7:Number; var _local8:Number; _spanEffects = []; if (_spanmap.length == 0){ _addCollisionLine(_p0, _p1, []); return; }; _local1 = _p0.x; _local2 = _p1.y; _local3 = _local2; _local4 = 0; _addCollisionLine(new WorkinPoint(_local1, _local2), new WorkinPoint((_local1 + _spanmap[(_spanmap.length - 1)].start), _local2), []); _local7 = _spanmap.length; while (_local7--) { _local6 = _appearance; _local5 = []; _local4 = _local2; _local8 = _spanmap[_local7].effects.length; while (_local8--) { switch (_spanmap[_local7].effects[_local8].type){ case "ground": if ((((_spanmap[_local7].effects[_local8].height > 0)) && (((_local2 - _spanmap[_local7].effects[_local8].height) > _local4)))){ break; }; if ((((_spanmap[_local7].effects[_local8].height < 0)) && (((_local2 - _spanmap[_local7].effects[_local8].height) < _local4)))){ break; }; _local4 = (_local2 - _spanmap[_local7].effects[_local8].height); break; case "appearance": _local6 = _spanmap[_local7].effects[_local8].appearance; break; default: _local5.push(_spanmap[_local7].effects[_local8].type); break; }; }; if ((_local1 + _spanmap[_local7].start) > _p1.x){ _spanmap[_local7].start = _p1.x; }; if ((_local1 + _spanmap[_local7].end) > _p1.x){ _spanmap[_local7].end = _p1.x; }; if (_spanmap[_local7].isCap){ if (_local4 != _local3){ _addCollisionLine(new WorkinPoint((_local1 + _spanmap[_local7].start), _local3), new WorkinPoint((_local1 + _spanmap[_local7].start), _local4), [], _local6); _local3 = _local4; }; _addCollisionLine(new WorkinPoint((_local1 + _spanmap[_local7].start), _local3), new WorkinPoint(_p1.x, _local3), _local5, _local6); } else { if (_local4 != _local3){ _addCollisionLine(new WorkinPoint((_local1 + _spanmap[_local7].start), _local3), new WorkinPoint((_local1 + _spanmap[_local7].start), _local4), [], _local6); _local3 = _local4; }; _addCollisionLine(new WorkinPoint((_local1 + _spanmap[_local7].start), _local3), new WorkinPoint((_local1 + _spanmap[_local7].end), _local3), _local5, _local6); }; }; _loop = _collisionLines.length; while (_loop--) { _local7 = _collisionLines[_loop].effects.length; while (_local7--) { if ((((((_collisionLines[_loop].effects[_local7] == "water")) || ((_collisionLines[_loop].effects[_local7] == "fire")))) || ((_collisionLines[_loop].effects[_local7] == "poison")))){ _spanEffects.push({effect:_collisionLines[_loop].effects[_local7], start:_collisionLines[_loop].p0, end:_collisionLines[_loop].p1}); }; }; }; } protected function _addCollisionLine(_arg1:WorkinPoint, _arg2:WorkinPoint, _arg3:Array, _arg4:String=""):void{ if (_collisionLines == null){ _collisionLines = []; }; if (_arg4 == ""){ _arg4 = _appearance; }; if ((((_arg1.x == _arg2.x)) && ((_arg1.y == _arg2.y)))){ return; }; _collisionLines.push(new SurfaceCollisionLine(_arg1, _arg2, _arg3, _arg4)); } override protected function _updateDepth():void{ _depth = _pos.y; } protected function _debugDrawCollisionLines():void{ var _local1:Number; _asset.graphics.clear(); _asset.graphics.lineStyle(1, 0); _local1 = _collisionLines.length; while (_local1--) { _asset.graphics.moveTo((_collisionLines[_local1].p0.x - _pos.x), _collisionLines[_local1].p0.y); _asset.graphics.lineTo((_collisionLines[_local1].p1.x - _pos.x), _collisionLines[_local1].p1.y); }; } } }//package com.wwb.princessbride.fire_swamp.world.entitys.surfaces
Section 238
//Arrow (com.wwb.princessbride.fire_swamp.world.entitys.Arrow) package com.wwb.princessbride.fire_swamp.world.entitys { import com.wwb.princessbride.fire_swamp.*; import com.workinman.paradise.*; import com.workinman.paradise.world.entitys.*; import com.wwb.princessbride.fire_swamp.world.entitys.mobs.players.*; import com.wwb.princessbride.fire_swamp.assets.*; public class Arrow extends ParaSprite { private var _screenOffsetX:Number; private var _screenOffsetY:Number; private var _angle:Number; public function Arrow(_arg1:Object):void{ _arg1.asset = ArrowAsset; _screenOffsetX = ParadiseConfig.SCREEN_OFFSET.x; _screenOffsetY = ParadiseConfig.SCREEN_OFFSET.y; super(_arg1); _animate("idle"); } override public function get group():String{ return ("arrow"); } public function updateArrow(_arg1:Player, _arg2:Number):void{ _pos.toPoint(GameEngine.getInstance().mousePoint.addCopy(FireSwampConfig.roomToPixels(_arg1.room), 0, 0)); _pos.subtract(_screenOffsetX, _screenOffsetY, 0); if (_arg1.isAiming){ _animate("target"); return; }; _animate("idle"); } public function show():void{ visible = true; } public function hide():void{ visible = false; } } }//package com.wwb.princessbride.fire_swamp.world.entitys
Section 239
//Background (com.wwb.princessbride.fire_swamp.world.entitys.Background) package com.wwb.princessbride.fire_swamp.world.entitys { import com.wwb.princessbride.fire_swamp.*; import com.workinman.lib.math.*; import com.workinman.paradise.*; import flash.display.*; import com.workinman.paradise.world.camera.*; import flash.geom.*; public class Background extends FireSwampSprite { private var _FAR_MULTIPLIER:Number;// = 0.35 private var _far:BackgroundLayer; private var _zeroPoint:Point; private var _horizon:BackgroundLayer; private var _screenHeight:Number; private var _lastCameraX:Number; private var _effect:BackgroundLayer; private var _isCleaned:Boolean; private var _bgSet:String; private var _renderContainer:MovieClip; private var _screenWidth:Number; private var _near:BackgroundLayer; private var _screenCenter:WorkinPoint; private var _NEAR_MULTIPLIER:Number;// = 1 public function Background(_arg1:String){ _NEAR_MULTIPLIER = 1; _FAR_MULTIPLIER = 0.35; _zeroPoint = new Point(0, 0); _screenCenter = ParadiseConfig.SCREEN_CENTER; _screenWidth = ParadiseConfig.SCREEN_WIDTH; _screenHeight = ParadiseConfig.SCREEN_HEIGHT; _isCleaned = false; _bgSet = _arg1; _near = new BackgroundLayer("near", _NEAR_MULTIPLIER); _addBackgroundTiles(_near, "near"); _effect = new BackgroundLayer("effect", _NEAR_MULTIPLIER); _addBackgroundTiles(_effect, "effect"); _far = new BackgroundLayer("far", _FAR_MULTIPLIER); _addBackgroundTiles(_far, "far"); _horizon = new BackgroundLayer("horizon", 0); _horizon.cacheAsBitmap = true; _addBackgroundTiles(_horizon, "horizon"); _horizon.drawAtZero(); _lastCameraX = -100000; _renderContainer = new MovieClip(); _renderContainer.addChild(_horizon); _renderContainer.addChild(_far); _renderContainer.addChild(_effect); _renderContainer.addChild(_near); if (((!((GameEngine.getInstance().getFlag(FireSwampConfig.FLAG_SHOW_BACKGROUND) == "false"))) && (!((GameEngine.getInstance().getFlag(FireSwampConfig.FLAG_SHOW_TILES) == "true"))))){ addChild(_renderContainer); }; super({}); } override protected function get _assetRegistrationPoint():String{ return ("bc"); } override public function get group():String{ return ("background"); } private function _addBackgroundTiles(_arg1:BackgroundLayer, _arg2:String):void{ var _local3:Number; var _local4:Number; _local3 = GameEngine.getInstance().backgroundManager.getBackgroundCountByID(_bgSet, _arg2); _local4 = 0; while (_local4 < _local3) { _arg1.addTile(GameEngine.getInstance().backgroundManager.getBackgroundByID(_bgSet, _arg2, _local4)); _local4++; }; } override public function cleanUp():void{ if (((!((GameEngine.getInstance().getFlag(FireSwampConfig.FLAG_SHOW_BACKGROUND) == "false"))) && (!((GameEngine.getInstance().getFlag(FireSwampConfig.FLAG_SHOW_TILES) == "true"))))){ removeChild(_renderContainer); }; _renderContainer.removeChild(_horizon); _renderContainer.removeChild(_far); _renderContainer.removeChild(_effect); _renderContainer.removeChild(_near); _renderContainer = null; _isCleaned = true; _near.cleanUp(); _effect.cleanUp(); _far.cleanUp(); _horizon.cleanUp(); super.cleanUp(); _near = null; _far = null; _effect = null; _horizon = null; } override protected function _renderPosition(_arg1:BaseCamera):void{ if (_isCleaned){ return; }; if (_arg1.x == _lastCameraX){ return; }; _near.update(_arg1); _effect.update(_arg1); _far.update(_arg1); _horizon.update(_arg1); _lastCameraX = _arg1.x; } override public function get type():String{ return ("background"); } override protected function _renderVisibility(_arg1:BaseCamera):void{ if (_isCleaned){ return; }; _isOnscreen = true; if (!_mcVisible){ _draw(); }; } } }//package com.wwb.princessbride.fire_swamp.world.entitys
Section 240
//BackgroundLayer (com.wwb.princessbride.fire_swamp.world.entitys.BackgroundLayer) package com.wwb.princessbride.fire_swamp.world.entitys { import com.workinman.lib.math.*; import com.workinman.paradise.*; import flash.display.*; import com.wwb.princessbride.fire_swamp.data.*; import com.workinman.paradise.world.camera.*; import flash.geom.*; public class BackgroundLayer extends MovieClip { private var _cameraRatio:Number; private var _zeroPoint:Point; private var _removeUnused:Boolean; private var _loop:Number; private var _screenWidth:Number; private var _tiles:Array; private var _screenHeight:Number; private var _relativeX:Number; private var _set:String; private var _screenWidthHalf:Number; private var _screenCenter:WorkinPoint; public function BackgroundLayer(_arg1:String, _arg2:Number){ _tiles = []; _set = _arg1; _removeUnused = true; _zeroPoint = new Point(0, 0); _screenCenter = ParadiseConfig.SCREEN_CENTER; _screenWidth = ParadiseConfig.SCREEN_WIDTH; _screenHeight = ParadiseConfig.SCREEN_HEIGHT; _screenWidthHalf = (_screenWidth / 2); _cameraRatio = _arg2; } public function update(_arg1:BaseCamera):void{ var _local2:Number; var _local3:Number; if (_cameraRatio == 0){ return; }; _local2 = (((_arg1.x * _cameraRatio) - _screenWidthHalf) / _screenWidth); _local2 = Math.floor(Math.abs(_local2)); if (_local2 > (_tiles.length - 1)){ (_local2 % (_tiles.length - 1)); _local2--; }; if (_local2 > (_tiles.length - 1)){ _local2 = (_tiles.length - 1); }; if (!_tiles[_local2].isDrawn){ addChild(_tiles[_local2]); _tiles[_local2].onDrawn(); _removeUnused = true; }; _tiles[_local2].x = _calculateRelativeX(_arg1.x, _cameraRatio); _local3 = _local2; if ((_local2 + 1) > (_tiles.length - 1)){ _local2 = 0; } else { _local2++; }; if (!_tiles[_local2].isDrawn){ addChild(_tiles[_local2]); _tiles[_local2].onDrawn(); _removeUnused = true; }; _tiles[_local2].x = (_calculateRelativeX(_arg1.x, _cameraRatio) + _screenWidth); if (_removeUnused){ _loop = _tiles.length; while (_loop--) { if (((((!((_loop == _local3))) && (!((_loop == _local2))))) && (_tiles[_loop].isDrawn))){ _tiles[_loop].onErased(); removeChild(_tiles[_loop]); }; }; _removeUnused = false; }; _loop = _tiles.length; } public function cleanUp():void{ _loop = _tiles.length; while (_loop--) { if (_tiles[_loop].isDrawn){ removeChild(_tiles[_loop]); }; _tiles[_loop].cleanUp(); delete _tiles[_loop]; }; _tiles = null; } private function _calculateRelativeX(_arg1:Number, _arg2:Number):Number{ _relativeX = (_arg1 - _screenWidthHalf); return ((-((_relativeX - (Math.floor((_relativeX / _screenWidth)) * _screenWidth))) * _arg2)); } public function drawAtZero():void{ addChild(_tiles[0]); _tiles[0].onDrawn(); } public function addTile(_arg1:BackgroundData):void{ _tiles.push(new BackgroundTile(_arg1)); } } }//package com.wwb.princessbride.fire_swamp.world.entitys
Section 241
//BackgroundTile (com.wwb.princessbride.fire_swamp.world.entitys.BackgroundTile) package com.wwb.princessbride.fire_swamp.world.entitys { import flash.events.*; import flash.display.*; import com.wwb.princessbride.fire_swamp.data.*; public class BackgroundTile extends Sprite { private var _isOnscreen:Boolean; private var _isDrawn:Boolean; private var _data:BackgroundData; private var _asset:DisplayObject; public function BackgroundTile(_arg1:BackgroundData){ _data = _arg1; addChild(_data.asset); _isOnscreen = false; _isDrawn = false; } public function onDrawn():void{ _isDrawn = true; } public function onOnscreen():void{ _isOnscreen = true; } private function _onAssetErased(_arg1:Event):void{ if (!_isDrawn){ return; }; _isDrawn = false; } public function onErased():void{ _isDrawn = false; } override public function toString():String{ return (("[Background Tile] " + _asset)); } public function get isOnscreen():Boolean{ return (_isOnscreen); } public function onOffscreen():void{ _isOnscreen = false; } public function get isDrawn():Boolean{ return (_isDrawn); } private function _onAssetDrawn(_arg1:Event):void{ if (_isDrawn){ return; }; _isDrawn = true; } public function cleanUp():void{ removeChild(_data.asset); _asset = null; _data = null; _isDrawn = false; } } }//package com.wwb.princessbride.fire_swamp.world.entitys
Section 242
//FireSwampSprite (com.wwb.princessbride.fire_swamp.world.entitys.FireSwampSprite) package com.wwb.princessbride.fire_swamp.world.entitys { import com.wwb.princessbride.fire_swamp.*; import com.workinman.lib.math.*; import com.workinman.paradise.world.camera.*; import com.workinman.paradise.math.*; import com.workinman.paradise.world.entitys.*; public class FireSwampSprite extends ParaSprite { protected var _collisionCenter:WorkinPoint; protected var _hdBoxHeightHalf:Number; protected var _hdBoxWidthHalf:Number; protected var _collisionLines:Array; protected var _collisionBox:CollisionBox; protected var _generator:IEntityData; protected var _hdBoxWidth:Number; protected var _hdBoxHeight:Number; protected var _doDelete:Boolean; protected var _doDegenerate:Boolean; public function FireSwampSprite(_arg1:Object){ super(_arg1); _doDelete = false; _doDegenerate = false; } protected function _debugDrawBox(_arg1:Boolean=true):void{ if (_arg1){ graphics.clear(); }; graphics.lineStyle(1, 0xCC00); graphics.moveTo(_collisionBox.getVertexByID(0).point.x, _collisionBox.getVertexByID(0).point.y); graphics.lineTo(_collisionBox.getVertexByID(1).point.x, _collisionBox.getVertexByID(1).point.y); graphics.lineTo(_collisionBox.getVertexByID(3).point.x, _collisionBox.getVertexByID(3).point.y); graphics.lineTo(_collisionBox.getVertexByID(4).point.x, _collisionBox.getVertexByID(4).point.y); graphics.lineTo(_collisionBox.getVertexByID(0).point.x, _collisionBox.getVertexByID(0).point.y); } public function get combatCollisionWidthHalf():Number{ return (_hdBoxWidthHalf); } public function get collisionCenter():WorkinPoint{ return (_collisionCenter); } public function get collisionWidthHalf():Number{ return (_hdBoxWidthHalf); } public function get doDelete():Boolean{ return (_doDelete); } protected function _generateCollisionBox():void{ _collisionBox = new CollisionBox(collisionWidth, collisionHeight, _displayCenter); _collisionCenter = _collisionBox.getCollisionCenter(_pos); } public function get entityCollisionAsSurface():Boolean{ return (false); } protected function _setCollisionBox():void{ collisionWidth = _hdBoxWidth; collisionHeight = _hdBoxHeight; } public function onEntityCollision(_arg1:FireSwampSprite):void{ } public function get collisionHeightHalf():Number{ return (_hdBoxHeightHalf); } protected function _generateCollisionLines():void{ _collisionLines = []; _collisionLines.push(new SurfaceCollisionLine(_pos.addPointCopy(_collisionBox.getVertexByID(0).point), _pos.addPointCopy(_collisionBox.getVertexByID(1).point), [], "")); _collisionLines.push(new SurfaceCollisionLine(_pos.addPointCopy(_collisionBox.getVertexByID(1).point), _pos.addPointCopy(_collisionBox.getVertexByID(3).point), [], "")); _collisionLines.push(new SurfaceCollisionLine(_pos.addPointCopy(_collisionBox.getVertexByID(3).point), _pos.addPointCopy(_collisionBox.getVertexByID(4).point), [], "")); _collisionLines.push(new SurfaceCollisionLine(_pos.addPointCopy(_collisionBox.getVertexByID(4).point), _pos.addPointCopy(_collisionBox.getVertexByID(0).point), [], "")); } public function get collisionLines():Array{ return (_collisionLines); } public function get entityCollisionAsBox():Boolean{ return (true); } public function degenerate():void{ cleanUp(); _generator.reconstruct(this); _doDelete = true; _doDegenerate = false; } public function get collisionHeight():Number{ return (_hdBoxHeight); } public function get doComplexCollision():Boolean{ return (false); } public function get collisionBox():CollisionBox{ return (_collisionBox); } public function get type():String{ return ("generic"); } override public function onErased():void{ super.onErased(); if (_doDegenerate){ degenerate(); }; } public function get combatCollisionHeightHalf():Number{ return (_hdBoxHeightHalf); } public function set collisionWidth(_arg1:Number):void{ _hdBoxWidth = _arg1; _hdBoxWidthHalf = (_arg1 / 2); _generateCollisionBox(); } public function get pushable():Boolean{ return (false); } public function get damage():Number{ return (100); } override protected function _renderVisibility(_arg1:BaseCamera):void{ if (_doDelete){ _isOnscreen = false; } else { _isOnscreen = _arg1.isOnscreen(this); }; if (((_isOnscreen) && (!(_mcVisible)))){ _draw(); } else { if (((!(_isOnscreen)) && (_mcVisible))){ _erase(); }; }; } public function get collisionWidth():Number{ return (_hdBoxWidth); } public function get doNonCombatCollisionOnly():Boolean{ return (false); } public function get isAlive():Boolean{ return (true); } public function degenerateAfterErase():void{ if (_mcVisible){ _doDegenerate = true; } else { degenerate(); }; } public function set collisionHeight(_arg1:Number):void{ _hdBoxHeight = _arg1; _hdBoxHeightHalf = (_arg1 / 2); _generateCollisionBox(); } public function destroy():void{ cleanUp(); _doDelete = true; _doDegenerate = false; } } }//package com.wwb.princessbride.fire_swamp.world.entitys
Section 243
//Foreground (com.wwb.princessbride.fire_swamp.world.entitys.Foreground) package com.wwb.princessbride.fire_swamp.world.entitys { import com.wwb.princessbride.fire_swamp.*; import com.workinman.lib.math.*; import com.workinman.paradise.*; import flash.display.*; import com.workinman.paradise.world.camera.*; import flash.geom.*; public class Foreground extends FireSwampSprite { private var _zeroPoint:Point; private var _screenHeight:Number; private var _lastCameraX:Number; private var _bgSet:String; private var _renderContainer:MovieClip; private var _screenWidth:Number; private var _fore:BackgroundLayer; private var _screenCenter:WorkinPoint; private var _NEAR_MULTIPLIER:Number;// = 1 public function Foreground(_arg1:String){ _NEAR_MULTIPLIER = 1; _zeroPoint = new Point(0, 0); _screenCenter = ParadiseConfig.SCREEN_CENTER; _screenWidth = ParadiseConfig.SCREEN_WIDTH; _screenHeight = ParadiseConfig.SCREEN_HEIGHT; _bgSet = _arg1; _fore = new BackgroundLayer("fore", _NEAR_MULTIPLIER); _addBackgroundTiles(_fore, "fore"); _lastCameraX = -100000; _renderContainer = new MovieClip(); _renderContainer.addChild(_fore); if (((!((GameEngine.getInstance().getFlag(FireSwampConfig.FLAG_SHOW_BACKGROUND) == "false"))) && (!((GameEngine.getInstance().getFlag(FireSwampConfig.FLAG_SHOW_TILES) == "true"))))){ addChild(_renderContainer); }; super({}); } override protected function get _assetRegistrationPoint():String{ return ("tc"); } override public function get group():String{ return ("foreground"); } private function _addBackgroundTiles(_arg1:BackgroundLayer, _arg2:String):void{ var _local3:Number; var _local4:Number; _local3 = GameEngine.getInstance().backgroundManager.getBackgroundCountByID(_bgSet, _arg2); _local4 = 0; while (_local4 < _local3) { _arg1.addTile(GameEngine.getInstance().backgroundManager.getBackgroundByID(_bgSet, _arg2, _local4)); _local4++; }; if (_local3 == 1){ _arg1.addTile(GameEngine.getInstance().backgroundManager.getBackgroundByID(_bgSet, _arg2, 1)); }; } override public function cleanUp():void{ _fore.cleanUp(); super.cleanUp(); } override protected function _renderPosition(_arg1:BaseCamera):void{ if (_arg1.x == _lastCameraX){ return; }; _fore.update(_arg1); _lastCameraX = _arg1.x; } override public function get type():String{ return ("foreground"); } override protected function _renderVisibility(_arg1:BaseCamera):void{ _isOnscreen = true; if (!_mcVisible){ _draw(); }; } } }//package com.wwb.princessbride.fire_swamp.world.entitys
Section 244
//RoomInhabitant (com.wwb.princessbride.fire_swamp.world.entitys.RoomInhabitant) package com.wwb.princessbride.fire_swamp.world.entitys { public class RoomInhabitant extends FireSwampSprite { protected var _room:Number; public function RoomInhabitant(_arg1:Object){ _room = _arg1.room; super(_arg1); } public function get room():Number{ return (_room); } public function set room(_arg1:Number):void{ _room = _arg1; } } }//package com.wwb.princessbride.fire_swamp.world.entitys
Section 245
//Span (com.wwb.princessbride.fire_swamp.world.Span) package com.wwb.princessbride.fire_swamp.world { import com.wwb.princessbride.fire_swamp.*; public class Span { public var start:Number; public var isCap:Boolean; public var effects:Array; public var end:Number; public function Span(_arg1:Object){ start = _arg1.start; end = _arg1.end; if (end > FireSwampConfig.roomWidth){ end = FireSwampConfig.roomWidth; }; isCap = _arg1.isCap; effects = _arg1.effects; } public function toString():String{ return ((((((("[Span] " + start) + " -> ") + end) + (isCap) ? " ( cap ) " : "") + " effects : ") + effects)); } } }//package com.wwb.princessbride.fire_swamp.world
Section 246
//WorldManager (com.wwb.princessbride.fire_swamp.world.WorldManager) package com.wwb.princessbride.fire_swamp.world { import com.wwb.princessbride.fire_swamp.*; import com.workinman.lib.math.*; import flash.events.*; import com.workinman.lib.sound.*; import com.workinman.paradise.*; import com.workinman.lib.events.*; import com.wwb.princessbride.fire_swamp.data.*; import com.wwb.princessbride.fire_swamp.world.camera.*; import com.workinman.paradise.world.camera.*; import com.wwb.princessbride.fire_swamp.world.entitys.*; import com.wwb.princessbride.fire_swamp.world.entitys.items.*; import com.wwb.princessbride.fire_swamp.world.entitys.effects.*; import com.wwb.princessbride.fire_swamp.world.entitys.mobs.*; import com.wwb.princessbride.fire_swamp.world.entitys.gizmos.*; import com.wwb.princessbride.fire_swamp.data.rooms.*; import com.workinman.lib.utils.*; import com.wwb.princessbride.fire_swamp.world.entitys.mobs.players.*; import com.wwb.princessbride.fire_swamp.world.entitys.surfaces.*; import com.wwb.princessbride.fire_swamp.world.entitys.mobs.inanimates.*; public class WorldManager { private var _isResetRoom:Boolean; private var _arrow:Arrow; private var _activeRoomBoundsLeft:Number; private var _fps:Number; private var _dt:Number; private var _loopb:Number; private var _debugTimer:Number; private var _mobs:Array; private var _isPaused:Boolean; private var _gizmos:Array; private var _generatedRoomNums:Array; private var _doRender:Boolean; private var _activePlayer:Player; private var _loop:Number; private var _grounds:Array; private var _state:GameState; private var _isArrowVisible:Boolean; private var _roomTime:Number; private var _activeRoomBoundsRight:Number; private var _cameras:CameraManager; private var _buttercup:Buttercup; private var _items:Array; private var _effects:Array; private var _multiplierTimer:Number; private var _activeRoomNum:Number; private var _background:Background; private var _levelData:FireSwampLevelData; private var _westley:Westley; private var _isGameOver:Boolean; private var _platforms:Array; private var _foreground:Foreground; public function WorldManager(_arg1:FireSwampLevelData):void{ _addEventListeners(); _generate(_arg1); } private function _setActiveRoom(_arg1:Number):void{ var _local2:Number; _local2 = _activeRoomNum; _activeRoomNum = _arg1; _activeRoomBoundsLeft = FireSwampConfig.getRoomLeftBounds(_activeRoomNum); _activeRoomBoundsRight = (FireSwampConfig.getRoomRightBounds(_activeRoomNum) - 25); WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.EVENT_ROOM_DISPLAY_CHANGE, {name:_levelData.levelName})); _state.setRoomTotals(_levelData.getRoomTimeLimit(_arg1), _levelData.getRoomGemCount(_arg1, 1), _levelData.getRoomGemCount(_arg1, 2), _levelData.getRoomGemCount(_arg1, 3), _levelData.getRoomRousCount(_arg1)); _generateSurroundingRooms(_activeRoomNum); _degenerateNonSurroundingRooms(_activeRoomNum); _moveCameraToActiveRoom(_local2); WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.UI_GEMS_UPDATE, {gem:0})); } public function requestRender():void{ _cameras.renderCameraView(); } private function _activateButtercup():void{ _westley.setInactive(); _buttercup.setActive(); _activePlayer = _buttercup; _setActiveRoom(_activePlayer.room); WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.EVENT_PLAYER_CHANGE, {player:_buttercup})); } private function _onToggleKeyEvent(_arg1:EData):void{ if ((((_arg1.data.keyCode == 17)) || ((_arg1.data.keyCode == 90)))){ _toggleActivePlayer(); }; } private function _degenerateRoom(_arg1:Number):void{ var _local2:Boolean; var _local3:Number; _local2 = false; _local3 = _generatedRoomNums.length; while (_local3--) { if (_generatedRoomNums[_local3] == _arg1){ _generatedRoomNums.splice(_local3, 1); _local2 = true; _local3 = 0; }; }; if (!_local2){ return; }; if (_westley.room == _arg1){ _westley.onRoomDegenerated(); }; if (_buttercup.room == _arg1){ _buttercup.onRoomDegenerated(); }; _local3 = _gizmos.length; while (_local3--) { if (_gizmos[_local3].room == _arg1){ _gizmos[_local3].degenerateAfterErase(); }; }; _local3 = _items.length; while (_local3--) { if (_items[_local3].room == _arg1){ _items[_local3].degenerateAfterErase(); }; }; _local3 = _mobs.length; while (_local3--) { if (_mobs[_local3].room == _arg1){ _mobs[_local3].degenerateAfterErase(); }; }; _local3 = _platforms.length; while (_local3--) { if (_platforms[_local3].room == _arg1){ _platforms[_local3].degenerateAfterErase(); }; }; _local3 = _grounds.length; while (_local3--) { if (_grounds[_local3].room == _arg1){ _grounds[_local3].degenerateAfterErase(); }; }; _local3 = _effects.length; while (_local3--) { if (_effects[_local3].room == _arg1){ _effects[_local3].degenerateAfterErase(); }; }; } private function _advanceToRoom(_arg1:Number):void{ if ((((((_activeRoomNum == _arg1)) || ((_arg1 < 1)))) || (!(_levelData.getIsValidRoom(_arg1))))){ return; }; unpause(); if (_buttercup.predictedPos.x != _buttercup.pos.x){ _buttercup.pos.toPoint(_buttercup.predictedPos); }; _buttercup.room = _arg1; _buttercup.pos.x = (_buttercup.pos.x + 40); if (_buttercup.pos.x < (FireSwampConfig.roomToPixels(_arg1) + 10)){ _buttercup.pos.x = (FireSwampConfig.roomToPixels(_arg1) + 10); }; if (_westley.predictedPos.x != _westley.pos.x){ _westley.pos.toPoint(_westley.predictedPos); }; _westley.room = _arg1; _westley.pos.x = (_westley.pos.x + 40); if (_westley.pos.x < (FireSwampConfig.roomToPixels(_arg1) + 10)){ _westley.pos.x = (FireSwampConfig.roomToPixels(_arg1) + 10); }; _roomTime = 0; _buttercup.removeStick(); _state.recordRoomStartPos(_westley.pos, _buttercup.pos); _setActiveRoom(_arg1); } private function _onWestleyClickEvent(_arg1:Event):void{ if (_isPaused){ return; }; _activateWestley(); GlobalSound.getInstance().playSound("charSelect"); } private function _onPlayersChangeRoom():void{ pause(); _state.onAssignRoomTime(_roomTime); GameEngine.getInstance().showRoomSummary(); } public function get camera():FireSwampCamera{ return ((_cameras.camera as FireSwampCamera)); } private function _onPlayerThrow(_arg1:EData):void{ var _local2:WorkinPoint; _local2 = GameEngine.getInstance().mousePoint; _local2.add(FireSwampConfig.roomToPixels(_arg1.data.source.room), -(ParadiseConfig.SCREEN_OFFSET.y), 0); _generateEffect(_arg1.data.ammo.type, {x:_arg1.data.source.pos.x, y:(_arg1.data.source.pos.y - 15), destination:_local2}); } private function _generateGizmos(_arg1:Array, _arg2:Number):void{ var _local3:Number; _local3 = _arg1.length; while (_local3--) { _gizmos.push(GizmoLibrary.generateNewGizmo(_arg1[_local3], _arg2)); }; } public function onCloseRoomSummary():void{ var _local1:Number; _state.onPlayerCompleteRoom(); WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.UI_SCORE_UPDATE, {score:(_state.score.currentGameTotal + _state.baseScore)})); _local1 = (_activeRoomNum + 1); if (_levelData.getIsLastRoom((_local1 - 1))){ if (_state.roomsThisLevel == 1){ onCloseLevelSummary(); } else { GameEngine.getInstance().showLevelSummary(); }; return; }; WorkinDispatcher.getInstance().dispatchEvent(new Event(FireSwampConfig.EVENT_CLEAR_SCREENSHOT)); WorkinDispatcher.getInstance().dispatchEvent(new Event(FireSwampConfig.REFOCUS_STAGE)); _advanceToRoom(_local1); } private function _addEventListeners():void{ Updater.getInstance().addEventListener(Updater.EVENT_UPDATE, _update); Updater.getInstance().lockFPS(30); WorkinDispatcher.getInstance().addEventListener(ParadiseConfig.EVENT_KEY_DOWN, _onToggleKeyEvent); WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.EVENT_PLAYER_THROW, _onPlayerThrow); WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.EVENT_DEW_COLLIDE, _onDewCollision); WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.EVENT_CRUMBS_COLLIDE, _onCrumbCollision); WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.EVENT_GAME_OVER, _onGameOver); WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.EVENT_RESET_ROOM, _onResetRoom); WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.UI_EVENT_BUTTERCUP_CLICK, _onButtercupClickEvent); WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.UI_EVENT_WESTLEY_CLICK, _onWestleyClickEvent); WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.EVENT_DEBUG_ROOM_WARP, _onDebugRoomWarp); WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.EVENT_COLLECT_MULTIPLIER, _onCollectMultiplier); WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.EVENT_SCORE_EFFECT, _onSpawnScoreEffect); WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.EVENT_PARTICLE_EFFECT, _onSpawnParticleEffect); } private function _generateItems(_arg1:Array, _arg2:Number):void{ var _local3:Number; _local3 = _arg1.length; while (_local3--) { if (_arg1[_local3].isConsumed){ } else { _items.push(ItemLibrary.generateNewItem(_arg1[_local3], _arg2)); }; }; } private function _onDewCollision(_arg1:EData):void{ var _local2:Number; _local2 = _gizmos.length; while (_local2--) { _arg1.data.source.testAndResolveDewCollision(_gizmos[_local2]); }; _arg1.data.source.onUseUp(); } public function get exists():Boolean{ return (true); } private function _hideArrow():void{ if (!_isArrowVisible){ return; }; GameEngine.getInstance().showMouse(); _arrow.hide(); _isArrowVisible = false; } private function _activateWestley():void{ _westley.setActive(); _buttercup.setInactive(); _activePlayer = _westley; _setActiveRoom(_activePlayer.room); WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.EVENT_PLAYER_CHANGE, {player:_westley})); } private function _generateSurroundingRooms(_arg1:Number):void{ if (_arg1 < (_levelData.getRoomCount() - 1)){ _generateRoom((_arg1 + 1)); }; _generateRoom(_arg1); } private function _moveCameraToActiveRoom(_arg1:Number=-1):void{ if (_arg1 < 0){ _arg1 = _activeRoomNum; }; if (Math.abs((_arg1 - _activeRoomNum)) > 1){ camera.showRoom(_activeRoomNum); } else { camera.toRoom(_activeRoomNum); }; } private function _onButtercupClickEvent(_arg1:Event):void{ if (_isPaused){ return; }; _activateButtercup(); GlobalSound.getInstance().playSound("charSelect"); } public function onCloseLevelSummary():void{ _state.onPlayerCompleteLevel(); WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.UI_SCORE_UPDATE, {score:(_state.score.currentGameTotal + _state.baseScore)})); _cameras.clear(); _cameras = null; _doRender = false; WorkinDispatcher.getInstance().dispatchEvent(new Event(FireSwampConfig.REFOCUS_STAGE)); WorkinDispatcher.getInstance().dispatchEvent(new Event(FireSwampConfig.EVENT_LEVEL_COMPLETE)); } private function _onGameOver(_arg1:Event):void{ _isGameOver = true; _state.startRoom = _activeRoomNum; } private function _generateEffect(_arg1:String, _arg2:Object):void{ _arg2.type = _arg1; _effects.push(EffectLibrary.generateNewEffect(_arg2)); } private function _degenerateNonSurroundingRooms(_arg1:Number):void{ var _local2:Number; _local2 = _generatedRoomNums.length; while (_local2--) { if (((!((_generatedRoomNums[_local2] == _arg1))) && (!((_generatedRoomNums[_local2] == (_arg1 + 1)))))){ _degenerateRoom(_generatedRoomNums[_local2]); }; }; } private function _showArrow():void{ if (_isArrowVisible){ return; }; GameEngine.getInstance().hideMouse(); _arrow.show(); _isArrowVisible = true; } private function _onCrumbCollision(_arg1:EData):void{ _arg1.data.source.onUseUp(); _mobs.push(new CrumbsPile({x:_arg1.data.source.pos.x, y:_arg1.data.source.pos.y, room:_activeRoomNum})); } private function _onDebugRoomWarp(_arg1:EData):void{ var _local2:Number; _local2 = _arg1.data.room; if (_local2 > _levelData.getRoomCount()){ return; }; _state.onPlayerCompleteRoom(); _advanceToRoom(_local2); _buttercup.room = _local2; _buttercup.pos.x = (FireSwampConfig.getRoomLeftBounds(_local2) + 5); _buttercup.pos.y = 100; _westley.room = _local2; _westley.pos.x = (FireSwampConfig.getRoomLeftBounds(_local2) + 10); _westley.pos.y = 100; _setActiveRoom(_local2); } private function _degenerateAllRooms():void{ var _local1:*; _generatedRoomNums = []; _local1 = _gizmos.length; while (_local1--) { _gizmos[_local1].degenerate(); }; _local1 = _items.length; while (_local1--) { _items[_local1].degenerate(); }; _local1 = _mobs.length; while (_local1--) { _mobs[_local1].degenerate(); }; _local1 = _platforms.length; while (_local1--) { _platforms[_local1].degenerate(); }; _local1 = _grounds.length; while (_local1--) { _grounds[_local1].degenerate(); }; _local1 = _effects.length; while (_local1--) { _effects[_local1].degenerate(); }; _gizmos = []; _items = []; _mobs = []; _platforms = []; _grounds = []; _effects = []; _westley.degenerate(); _buttercup.degenerate(); _arrow.cleanUp(); _background.cleanUp(); _foreground.cleanUp(); _activePlayer = null; _background = null; _foreground = null; _westley = null; _buttercup = null; _arrow = null; } private function _toggleActivePlayer():void{ if (_isPaused){ return; }; if (_activePlayer == _westley){ _activateButtercup(); } else { _activateWestley(); }; GlobalSound.getInstance().playSound("charSelect"); } private function _onCollectMultiplier(_arg1:EData):void{ _multiplierTimer = Number(_state.getConfigOption("multiplierDuration")); _state.onPlayerGetMultiplier(_arg1.data.value); } private function _onSpawnParticleEffect(_arg1:EData):void{ var _local2:Object; _local2 = {}; _local2.x = _arg1.data.x; _local2.y = _arg1.data.y; _generateEffect(_arg1.data.type, _local2); } public function cleanUp():void{ _degenerateAllRooms(); Updater.getInstance().removeEventListener(Updater.EVENT_UPDATE, _update); WorkinDispatcher.getInstance().removeEventListener(ParadiseConfig.EVENT_KEY_DOWN, _onToggleKeyEvent); WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.EVENT_PLAYER_THROW, _onPlayerThrow); WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.EVENT_DEW_COLLIDE, _onDewCollision); WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.EVENT_CRUMBS_COLLIDE, _onCrumbCollision); WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.EVENT_GAME_OVER, _onGameOver); WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.EVENT_RESET_ROOM, _onResetRoom); WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.UI_EVENT_BUTTERCUP_CLICK, _onButtercupClickEvent); WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.UI_EVENT_WESTLEY_CLICK, _onWestleyClickEvent); WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.EVENT_DEBUG_ROOM_WARP, _onDebugRoomWarp); WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.EVENT_COLLECT_MULTIPLIER, _onCollectMultiplier); WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.EVENT_SCORE_EFFECT, _onSpawnScoreEffect); WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.EVENT_PARTICLE_EFFECT, _onSpawnParticleEffect); } private function _generate(_arg1:FireSwampLevelData):void{ _levelData = _arg1; _state = GameState.getInstance(); _generatedRoomNums = []; _state.setLevelTotals(_levelData.getRoomCount(), _levelData.getLevelGemCount(1), _levelData.getLevelGemCount(2), _levelData.getLevelGemCount(3), _levelData.getLevelRousCount()); _isPaused = false; _platforms = []; _grounds = []; _gizmos = []; _items = []; _effects = []; _mobs = []; _roomTime = 0; _multiplierTimer = 0; _arrow = new Arrow({}); _isArrowVisible = false; _isGameOver = false; _isResetRoom = false; _westley = new Westley({playerData:_levelData.getWestleyData()}); _buttercup = new Buttercup({playerData:_levelData.getButtercupData()}); _westley.room = _state.startRoom; _buttercup.room = _state.startRoom; if (_state.startRoom > 1){ _buttercup.pos.to(_state.buttercupRoomStart.x, (_state.buttercupRoomStart.y - 2)); _westley.pos.to(_state.westleyRoomStart.x, (_state.westleyRoomStart.y - 2)); }; _state.recordRoomStartPos(_westley.pos, _buttercup.pos); _background = new Background(_levelData.backgroundSet); _foreground = new Foreground(_levelData.backgroundSet); _doRender = true; _debugTimer = 0; _fps = 0; _cameras = new CameraManager(); _cameras.addCustomCamera(new FireSwampCamera({x:(FireSwampConfig.getRoomLeftBounds(_westley.room) + (ParadiseConfig.SCREEN_WIDTH / 2)), y:((ParadiseConfig.SCREEN_OFFSET.y / 2) + (ParadiseConfig.SCREEN_HEIGHT / 2))}), "main", true); camera.showRoom(_westley.room); WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.UI_ROOMS_UPDATE, {rooms:_levelData.getRoomCount()})); _activateWestley(); _update(new EUpdate(Updater.EVENT_UPDATE, 0.1)); } private function _generateRoom(_arg1:Number):void{ var _local2:Number; var _local3:RoomData; _local2 = _generatedRoomNums.length; while (_local2--) { if (_generatedRoomNums[_local2] == _arg1){ return; }; }; _local3 = _levelData.getRoom(_arg1); _grounds.push(new Ground({groundData:_local3.ground, room:_local3.pos, isLast:_levelData.getIsLastRoom(_arg1)})); _generateGizmos(_local3.ground.gizmos, _local3.pos); _generateItems(_local3.ground.items, _local3.pos); _generateSpanEffects(_grounds[(_grounds.length - 1)].spanEffects, _local3.pos); _loop = _local3.platforms.length; while (_loop--) { _platforms.push(new Platform({platformData:_local3.platforms[_loop], room:_local3.pos})); _generateGizmos(_local3.platforms[_loop].gizmos, _arg1); _generateItems(_local3.platforms[_loop].items, _arg1); _generateSpanEffects(_platforms[(_platforms.length - 1)].spanEffects, _local3.pos); }; _platforms.sortOn("sortY", (Array.NUMERIC | Array.DESCENDING)); _loop = _local3.mobs.length; while (_loop--) { _mobs.push(MobLibrary.generateNewMob(_local3.mobs[_loop], _local3.pos)); }; _generatedRoomNums.push(_arg1); if (_westley.room == _arg1){ _westley.onRoomRegenerated(); }; if (_buttercup.room == _arg1){ _buttercup.onRoomRegenerated(); }; } private function _generateSpanEffects(_arg1:Array, _arg2:Number):void{ var _local3:Object; var _local4:Number; _local4 = _arg1.length; while (_local4--) { _local3 = {type:(_arg1[_local4].effect + "span"), start:_arg1[_local4].start, end:_arg1[_local4].end, room:_arg2}; _effects.push(EffectLibrary.generateNewEffect(_local3)); }; } private function _onSpawnScoreEffect(_arg1:EData):void{ var _local2:Object; _local2 = {}; _local2.x = _arg1.data.x; _local2.y = _arg1.data.y; _local2.value = _arg1.data.value; if (_arg1.data.isScore != undefined){ _local2.isScore = _arg1.data.isScore; } else { _local2.isScore = false; }; _generateEffect("score", _local2); } private function _update(_arg1:EUpdate):void{ if (_isPaused){ return; }; if (_arg1.dt > 0.1){ _dt = 0.1; } else { _dt = _arg1.dt; }; _cameras.updateActiveCamera(_dt); _loop = _effects.length; while (_loop--) { _effects[_loop].updateEverything(_dt); if (_effects[_loop].doDelete){ _effects.splice(_loop, 1); }; }; if (_multiplierTimer > 0){ _multiplierTimer = (_multiplierTimer - _dt); if (_multiplierTimer <= 0){ _state.onResetMultiplier(); }; }; _westley.updatePrediction(_dt); _buttercup.updatePrediction(_dt); _arrow.updateArrow(_activePlayer, _dt); _loopb = _platforms.length; while (_loopb--) { _westley.testAndResolveSurfaceCollision(_platforms[_loopb]); _buttercup.testAndResolveSurfaceCollision(_platforms[_loopb]); if (_platforms[_loopb].doDelete){ _platforms.splice(_loopb, 1); }; }; _loopb = _grounds.length; while (_loopb--) { _westley.testAndResolveSurfaceCollision(_grounds[_loopb]); _buttercup.testAndResolveSurfaceCollision(_grounds[_loopb]); if (_grounds[_loopb].doDelete){ _grounds.splice(_loopb, 1); }; }; _loop = _mobs.length; while (_loop--) { if (_mobs[_loop].room == _activeRoomNum){ _mobs[_loop].updateAI([_westley, _buttercup]); _mobs[_loop].updatePrediction(_dt); _loopb = _grounds.length; while (_loopb--) { _mobs[_loop].testAndResolveSurfaceCollision(_grounds[_loopb]); }; _loopb = _platforms.length; while (_loopb--) { _mobs[_loop].testAndResolveSurfaceCollision(_platforms[_loopb]); }; _westley.testAndResolveCombatCollision(_mobs[_loop]); _buttercup.testAndResolveCombatCollision(_mobs[_loop]); if (_mobs[_loop].doComplexCollision){ _loopb = _mobs.length; while (_loopb--) { _mobs[_loop].testAndResolveEntityCollision(_mobs[_loopb]); }; _loopb = _gizmos.length; while (_loopb--) { if (_gizmos[_loopb].doComplexCollision){ _mobs[_loop].testAndResolveEntityCollision(_gizmos[_loopb]); }; }; }; _mobs[_loop].updatePosition(); }; if (_mobs[_loop].doDelete){ _mobs.splice(_loop, 1); }; }; _loop = _items.length; while (_loop--) { _items[_loop].updateAnimation(_dt); _westley.testAndResolveEntityCollision(_items[_loop]); _buttercup.testAndResolveEntityCollision(_items[_loop]); if (_items[_loop].doDelete){ _items.splice(_loop, 1); }; }; _loop = _gizmos.length; while (_loop--) { _gizmos[_loop].updateAnimation(_dt); _westley.testAndResolveEntityCollision(_gizmos[_loop]); _buttercup.testAndResolveEntityCollision(_gizmos[_loop]); _loopb = _mobs.length; while (_loopb--) { _mobs[_loopb].testAndResolveEntityCollision(_gizmos[_loop]); }; if (_gizmos[_loop].doDelete){ _gizmos.splice(_loop, 1); }; }; _westley.updatePosition(); _buttercup.updatePosition(); if (GameEngine.getInstance().control.mouseInPlayArea){ _showArrow(); } else { _hideArrow(); }; _roomTime = (_roomTime + _dt); if ((((_westley.pos.x > _activeRoomBoundsRight)) && ((_buttercup.pos.x > _activeRoomBoundsRight)))){ if (((!(_westley.isAirborne)) && (!(_buttercup.isAirborne)))){ _onPlayersChangeRoom(); }; }; if (_doRender){ _cameras.renderCameraView(); }; if (_isGameOver){ GameEngine.getInstance().onWorldDeclareGameOver(); } else { if (_isResetRoom){ GameEngine.getInstance().onWorldDeclareResetRoomr(); }; }; } private function _onResetRoom(_arg1:Event):void{ _isResetRoom = true; _state.startRoom = _activeRoomNum; } public function get roomCount():Number{ return (_levelData.getRoomCount()); } public function pause():void{ _isPaused = true; _buttercup.onPause(); _westley.onPause(); _loop = _mobs.length; while (_loop--) { _mobs[_loop].onPause(); }; } public function unpause():void{ _isPaused = false; } } }//package com.wwb.princessbride.fire_swamp.world
Section 247
//Collectable (com.wwb.princessbride.fire_swamp.Collectable) package com.wwb.princessbride.fire_swamp { public class Collectable { public var level:Number; public var total:Number; public var id:String; public var totalAvailableLevel:Number; public var totalAvailableRoom:Number; public var room:Number; public function Collectable(_arg1:String){ id = _arg1; zero(); } public function get percentRoom():Number{ return (((totalAvailableRoom == 0)) ? 100 : Math.round(((room / totalAvailableRoom) * 100))); } public function get availableThisRoom():Boolean{ return ((totalAvailableRoom > 0)); } public function get ratioRoom():Number{ return (((totalAvailableRoom == 0)) ? 0 : (room / totalAvailableRoom)); } public function onWipeRoom():void{ level = (level - room); room = 0; } public function get currentLevelTotal():Number{ return ((total + level)); } public function get ratioLevel():Number{ return (((totalAvailableLevel == 0)) ? 0 : (level / totalAvailableLevel)); } public function zero():void{ total = (level = (room = 0)); totalAvailableLevel = (totalAvailableRoom = 0); } public function collect(_arg1:Number=1):void{ room = (room + _arg1); } public function onResetRoom():void{ room = 0; } public function onCompleteLevel():void{ total = (total + level); level = 0; } public function get currentRoomTotal():Number{ return (room); } public function onResetLevel():void{ level = 0; room = 0; } public function get currentGameTotal():Number{ return (((total + level) + room)); } public function onCompleteRoom():void{ level = (level + room); room = 0; } public function get availableThisLevel():Boolean{ return ((totalAvailableLevel > 0)); } public function get percentLevel():Number{ return (((totalAvailableLevel == 0)) ? 100 : Math.round(((level / totalAvailableLevel) * 100))); } } }//package com.wwb.princessbride.fire_swamp
Section 248
//ConfigDataClass (com.wwb.princessbride.fire_swamp.ConfigDataClass) package com.wwb.princessbride.fire_swamp { public class ConfigDataClass { public static function getXML():XML{ var _local1:XML; _local1 = new XML(); _local1.ignoreComments = false; _local1.ignoreProcessingInstructions = false; _local1.ignoreWhitespace = true; if (GameState.getInstance().getConfigOption("browserBuild") == "true"){ _local1 = XML("<princess_bride_fire_swamp_config><levels><level num='0'>FS_xml/FireSwampLevel_b_1.xml</level><level num='1'>FS_xml/FireSwampLevel_b_2.xml</level><level num='2'>FS_xml/FireSwampLevel_b_3.xml</level><level num='3'>FS_xml/FireSwampLevel_b_4.xml</level><level num='4'>FS_xml/FireSwampLevel_b_5.xml</level></levels><tutorial path='FS_media/tutorials/' /><flags><pinktiles>false</pinktiles><showtiles>false</showtiles><showbackground>true</showbackground></flags><assets path='FS_media/assets/'></assets><backgrounds path='FS_media/backgrounds/'><background id='level1b'><fore><img>fs_fg0004</img></fore><near><img>fs_bg0004</img></near><effect><img>bg_swamp_fog</img></effect><mid><img>fs_fg0004</img></mid><far><img>bg_swamp_mid</img></far><horizon><img>bg_swamp_horizon</img></horizon></background><background id='level2b'><fore><img>fs_fg0007</img></fore><near><img>fs_bg0007</img></near><effect><img>bg_swamp_fog</img></effect><mid><img>fs_fg0007</img></mid><far><img>bg_swamp_mid</img></far><horizon><img>bg_swamp_horizon</img></horizon></background><background id='level3b'><fore><img>fs_fg0008</img></fore><near><img>fs_bg0008</img></near><effect><img>bg_swamp_fog</img></effect><mid><img>fs_fg0008</img></mid><far><img>bg_swamp_mid</img></far><horizon><img>bg_swamp_horizon</img></horizon></background><background id='level4b'><fore><img>fs_fg0012</img></fore><near><img>fs_bg0012</img></near><effect><img>bg_swamp_fog</img></effect><mid><img>fs_fg0012</img></mid><far><img>bg_swamp_mid</img></far><horizon><img>bg_swamp_horizon</img></horizon></background><background id='level5b'><fore><img>fs_fg0022</img> <!--FORGROUND --></fore><near><img>fs_bg0022</img> <!--PLATFORMS --></near><effect><img>bg_swamp_fog</img></effect><mid><img>fs_fg0022</img> <!--GRASS VINES --></mid><far><img>bg_swamp_mid</img></far><horizon><img>bg_swamp_horizon</img></horizon></background></backgrounds><config><buttercupJumpHeight>10</buttercupJumpHeight><westleyJumpHeight>7</westleyJumpHeight><buttercupDamageToRous>20</buttercupDamageToRous><westleyDamageToRous>20</westleyDamageToRous><rousHealth>60</rousHealth><flyingRousHealth>40</flyingRousHealth><waterHealPerSecond>5</waterHealPerSecond><poisonSlowPercent>.3</poisonSlowPercent><poisonSlowDuration>5</poisonSlowDuration><fireShieldDuration>5</fireShieldDuration><rousHeatDamage>20</rousHeatDamage><flyingRousHeatDamage>15</flyingRousHeatDamage><fireMossHeatDamage>15</fireMossHeatDamage><spikeHeatDamage>20</spikeHeatDamage><fireSpoutHeatDamage>5</fireSpoutHeatDamage><constantSpoutHeatDamage>5</constantSpoutHeatDamage><fireGroundHeatDamagePerSecond>15</fireGroundHeatDamagePerSecond><gem1value>25</gem1value><gem2value>75</gem2value><gem3value>150</gem3value><rousValue>100</rousValue><flyingRousValue>300</flyingRousValue><gem1RoomCollectRatioBonus>100</gem1RoomCollectRatioBonus><gem2RoomCollectRatioBonus>200</gem2RoomCollectRatioBonus><gem3RoomCollectRatioBonus>300</gem3RoomCollectRatioBonus><rousRoomCollectRatioBonus>150</rousRoomCollectRatioBonus><timeRoomBonus>500</timeRoomBonus><gem1LevelCollectRatioBonus>200</gem1LevelCollectRatioBonus><gem2LevelCollectRatioBonus>400</gem2LevelCollectRatioBonus><gem3LevelCollectRatioBonus>600</gem3LevelCollectRatioBonus><rousLevelCollectRatioBonus>300</rousLevelCollectRatioBonus><timeLevelBonus>1000</timeLevelBonus><multiplierDurationInSeconds>7</multiplierDurationInSeconds></config></princess_bride_fire_swamp_config>"); } else { _local1 = XML("<princess_bride_fire_swamp_config><levels><level num='0' name='Welcome'>FS_xml/FireSwampLevel1.xml</level><level num='1' name='Fight and Jump!'>FS_xml/FireSwampLevel2.xml</level><level num='2' name='Climb Up!'>FS_xml/FireSwampLevel3.xml</level><level num='3' name='Tangled Vines'>FS_xml/FireSwampLevel4.xml</level><level num='4' name='Life Water'>FS_xml/FireSwampLevel5.xml</level>\t\t<level num='5' name='The Vine Intervention'>FS_xml/FireSwampLevel6.xml</level><level num='6' name='Moving Boulders'>FS_xml/FireSwampLevel7.xml</level>\t\t<level num='7' name='Great Walls of Fire!'>FS_xml/FireSwampLevel8.xml</level>\t\t<level num='8' name='Bridging the Gap'>FS_xml/FireSwampLevel9.xml</level><level num='9' name='Feed the R.O.U.S.s'>FS_xml/FireSwampLevel10.xml</level>\t\t<level num='10' name='Secret Tree Trunks'>FS_xml/FireSwampLevel11.xml</level>\t\t<level num='11' name='Crossing the Chasm'>FS_xml/FireSwampLevel12.xml</level>\t\t<level num='12' name='Flying R.O.U.S.s!'>FS_xml/FireSwampLevel13.xml</level>\t\t<level num='13' name='Divide and Conquer'>FS_xml/FireSwampLevel14.xml</level><level num='14' name='Teamwork!'>FS_xml/FireSwampLevel15.xml</level><level num='15' name='Portal Peril'>FS_xml/FireSwampLevel16.xml</level>\t\t<level num='16' name='Swing Time'>FS_xml/FireSwampLevel17.xml</level><level num='17' name='Trapped'>FS_xml/FireSwampLevel18.xml</level>\t\t<level num='18' name='The End is Near'>FS_xml/FireSwampLevel19.xml</level><!--<level num='19' name='Level 20'>FS_xml/FireSwampLevel20.xml</level>--></levels><tutorial path='FS_media/tutorials/' /><flags><pinktiles>false</pinktiles><showtiles>false</showtiles><showbackground>true</showbackground><showportals>false</showportals></flags><assets path='FS_media/assets/'><asset>asset_westley.swf</asset><asset>asset_buttercup.swf</asset><asset>asset_rous.swf</asset><asset>asset_boulder.swf</asset><asset>asset_vine.swf</asset><asset>asset_firespout.swf</asset><asset>asset_switch.swf</asset><asset>asset_bridge.swf</asset><asset>asset_portal.swf</asset><asset>asset_gem.swf</asset><asset>asset_stick.swf</asset><asset>asset_spike.swf</asset><asset>asset_firemoss.swf</asset><asset>asset_dew.swf</asset><asset>asset_crumbs.swf</asset><asset>asset_arrow.swf</asset><asset>asset_checkpoint.swf</asset><asset>asset_multiplier.swf</asset><asset>asset_fireshield.swf</asset><asset>asset_wateritem.swf</asset><asset>asset_life.swf</asset><asset>asset_time.swf</asset><asset>asset_flyingrous.swf</asset><asset>asset_goal.swf</asset><asset>asset_swingvine.swf</asset><asset>asset_gate.swf</asset><asset>asset_waterSpan.swf</asset><asset>asset_fireSpan.swf</asset><asset>asset_poisonSpan.swf</asset><asset>asset_effects.swf</asset><asset>asset_backgrounds.swf</asset></assets><backgrounds path='FS_media/backgrounds/'><background id='swamp'><fore><img>bg_swamp_NO_fore</img></fore><near><img>bg_swamp_empty</img><!--<img>bg_swamp_screenGRID</img>--></near><effect><img>bg_swamp_fog</img></effect>\t\t<far><img>bg_swamp_mid</img></far><horizon><img>bg_swamp_horizon</img></horizon></background><background id='level1'><fore><img>fs_fg0001</img> <!--FORGROUND --></fore><near><img>fs_bg0001</img> <!--PLATFORMS --></near><effect><img>bg_swamp_fog</img></effect><far><img>bg_swamp_mid</img></far><horizon><img>bg_swamp_horizon</img></horizon></background><background id='level2'><fore><img>fs_fg0002</img> <!--FORGROUND --></fore><near><img>fs_bg0002</img> <!--PLATFORMS --></near><effect><img>bg_swamp_fog</img></effect><far><img>bg_swamp_mid</img></far><horizon><img>bg_swamp_horizon</img></horizon></background><background id='level3'><fore><img>fs_fg0003</img> <!--FORGROUND --></fore>\t\t<near><img>fs_bg0003</img> <!--PLATFORMS --></near><effect><img>bg_swamp_fog</img></effect><far><img>bg_swamp_mid</img></far><horizon><img>bg_swamp_horizon</img></horizon></background><background id='level4'><fore><img>fs_fg0004</img> <!--FORGROUND --></fore>\t<near><img>fs_bg0004</img> <!--PLATFORMS --></near><effect><img>bg_swamp_fog</img></effect><far><img>bg_swamp_mid</img></far><horizon><img>bg_swamp_horizon</img></horizon></background><background id='level5'><fore><img>fs_fg0005</img> <!--FORGROUND --></fore>\t\t<near><img>fs_bg0005</img> <!--PLATFORMS --></near><effect><img>bg_swamp_fog</img></effect><far><img>bg_swamp_mid</img></far><horizon><img>bg_swamp_horizon</img></horizon></background><background id='level6'><fore><img>fs_fg0006</img> <!--FORGROUND --><img>fs_fg0007</img></fore>\t\t<near><img>fs_bg0006</img> <!--PLATFORMS --><img>fs_bg0007</img></near><effect><img>bg_swamp_fog</img></effect><far><img>bg_swamp_mid</img></far><horizon><img>bg_swamp_horizon</img></horizon></background><background id='level7'><fore><img>fs_fg0008</img> <!--FORGROUND --><img>fs_fg0009</img></fore>\t\t<near><img>fs_bg0008</img> <!--PLATFORMS --><img>fs_bg0009</img></near><effect><img>bg_swamp_fog</img></effect><far><img>bg_swamp_mid</img></far><horizon><img>bg_swamp_horizon</img></horizon></background><background id='level8'><fore><img>fs_fg0010</img> <!--FORGROUND --><img>fs_fg0011</img></fore>\t\t<near><img>fs_bg0010</img> <!--PLATFORMS --><img>fs_bg0011</img></near><effect><img>bg_swamp_fog</img></effect><far><img>bg_swamp_mid</img></far><horizon><img>bg_swamp_horizon</img></horizon></background><background id='level9'><fore><img>fs_fg0012</img> <!--FORGROUND --><img>fs_fg0013</img></fore>\t\t<near><img>fs_bg0012</img> <!--PLATFORMS --><img>fs_bg0013</img></near><effect><img>bg_swamp_fog</img></effect><far><img>bg_swamp_mid</img></far><horizon><img>bg_swamp_horizon</img></horizon></background>\t\t<background id='level10'><fore><img>fs_fg0014</img> <!--FORGROUND --><img>fs_fg0015</img></fore>\t\t<near><img>fs_bg0014</img> <!--PLATFORMS --><img>fs_bg0015</img></near><effect><img>bg_swamp_fog</img></effect><far><img>bg_swamp_mid</img></far><horizon><img>bg_swamp_horizon</img></horizon></background><background id='level11'><fore><img>fs_fg0016</img> <!--FORGROUND --><img>fs_fg0017</img><img>fs_fg0018</img></fore>\t\t<near><img>fs_bg0016</img> <!--PLATFORMS --><img>fs_bg0017</img><img>fs_bg0018</img></near><effect><img>bg_swamp_fog</img></effect><far><img>bg_swamp_mid</img></far><horizon><img>bg_swamp_horizon</img></horizon></background><background id='level12'><fore><img>fs_fg0019</img> <!--FORGROUND --><img>fs_fg0020</img><img>fs_fg0021</img></fore>\t\t<near><img>fs_bg0019</img> <!--PLATFORMS --><img>fs_bg0020</img><img>fs_bg0021</img></near><effect><img>bg_swamp_fog</img></effect><far><img>bg_swamp_mid</img></far><horizon><img>bg_swamp_horizon</img></horizon></background><background id='level13'><fore><img>fs_fg0022</img> <!--FORGROUND --><img>fs_fg0023</img><img>fs_fg0024</img></fore>\t\t<near><img>fs_bg0022</img> <!--PLATFORMS --><img>fs_bg0023</img><img>fs_bg0024</img></near><effect><img>bg_swamp_fog</img></effect><far><img>bg_swamp_mid</img></far><horizon><img>bg_swamp_horizon</img></horizon></background><background id='level14'><fore><img>fs_fg0025</img> <!--FORGROUND --><img>fs_fg0026</img><img>fs_fg0027</img></fore>\t\t<near><img>fs_bg0025</img> <!--PLATFORMS --><img>fs_bg0026</img><img>fs_bg0027</img></near><effect><img>bg_swamp_fog</img></effect><far><img>bg_swamp_mid</img></far><horizon><img>bg_swamp_horizon</img></horizon></background><background id='level15'><fore><img>fs_fg0028</img> <!--FORGROUND --><img>fs_fg0029</img><img>fs_fg0030</img></fore>\t\t<near><img>fs_bg0028</img> <!--PLATFORMS --><img>fs_bg0029</img><img>fs_bg0030</img></near><effect><img>bg_swamp_fog</img></effect><far><img>bg_swamp_mid</img></far><horizon><img>bg_swamp_horizon</img></horizon></background><background id='level16'><fore><img>fs_fg0031</img> <!--FORGROUND --><img>fs_fg0032</img><img>fs_fg0033</img></fore>\t\t<near><img>fs_bg0031</img> <!--PLATFORMS --><img>fs_bg0032</img><img>fs_bg0033</img></near><effect><img>bg_swamp_fog</img></effect><far><img>bg_swamp_mid</img></far><horizon><img>bg_swamp_horizon</img></horizon></background><background id='level17'><fore><img>fs_fg0034</img> <!--FORGROUND --><img>fs_fg0035</img><img>fs_fg0036</img></fore>\t\t<near><img>fs_bg0034</img> <!--PLATFORMS --><img>fs_bg0035</img><img>fs_bg0036</img></near><effect><img>bg_swamp_fog</img></effect><far><img>bg_swamp_mid</img></far><horizon><img>bg_swamp_horizon</img></horizon></background><background id='level18'><fore><img>fs_fg0037</img> <!--FORGROUND --><img>fs_fg0038</img><img>fs_fg0039</img><img>fs_fg0040</img></fore>\t\t<near><img>fs_bg0037</img> <!--PLATFORMS --><img>fs_bg0038</img><img>fs_bg0039</img><img>fs_bg0040</img></near><effect><img>bg_swamp_fog</img></effect><far><img>bg_swamp_mid</img></far><horizon><img>bg_swamp_horizon</img></horizon></background><background id='level19'><fore><img>fs_fg0041</img> <img>fs_fg0042</img><img>fs_fg0043</img><img>fs_fg0044</img></fore>\t\t<near><img>fs_bg0041</img> <img>fs_bg0042</img><img>fs_bg0043</img><img>fs_bg0044</img></near><effect><img>bg_swamp_fog</img></effect><far><img>bg_swamp_mid</img></far><horizon><img>bg_swamp_horizon</img></horizon></background></backgrounds><tilesets path='FS_media/tiles/'><tileset id='debug'><ground>debug_ground</ground><ground_fill>debug_ground</ground_fill><ground_bookend_left_down>debug_ground</ground_bookend_left_down><ground_bookend_right_down>debug_ground</ground_bookend_right_down><ground_bookend_left_up>debug_ground</ground_bookend_left_up><ground_bookend_right_up>debug_ground</ground_bookend_right_up><platform>debug_ground</platform><platform_bookend_left_down>debug_ground</platform_bookend_left_down><platform_bookend_right_down>debug_ground</platform_bookend_right_down><platform_bookend_left_up>debug_ground</platform_bookend_left_up><platform_bookend_right_up>debug_ground</platform_bookend_right_up><platform_underside>debug_ground</platform_underside><platform_underside_bookend_left>debug_ground</platform_underside_bookend_left><platform_underside_bookend_right>debug_ground</platform_underside_bookend_right><bg>debug_invis</bg><bg_bookend_left>debug_invis</bg_bookend_left><bg_bookend_right>debug_invis</bg_bookend_right></tileset></tilesets><config><buttercupJumpHeight>10</buttercupJumpHeight><westleyJumpHeight>7</westleyJumpHeight><buttercupDamageToRous>20</buttercupDamageToRous><westleyDamageToRous>20</westleyDamageToRous><dewCollectCooldown>1</dewCollectCooldown><rousHealth>60</rousHealth><flyingRousHealth>60</flyingRousHealth><waterHealPerSecond>5</waterHealPerSecond><poisonSlowPercent>.3</poisonSlowPercent><poisonSlowDuration>5</poisonSlowDuration><fireShieldDuration>5</fireShieldDuration><rousHeatDamage>20</rousHeatDamage><flyingRousHeatDamage>15</flyingRousHeatDamage>\t\t<fireMossHeatDamage>15</fireMossHeatDamage><spikeHeatDamage>20</spikeHeatDamage><fireSpoutHeatDamage>5</fireSpoutHeatDamage><constantSpoutHeatDamage>5</constantSpoutHeatDamage>\t\t<fireGroundHeatDamagePerSecond>15</fireGroundHeatDamagePerSecond><!--<gem1value>25</gem1value><gem2value>75</gem2value><gem3value>150</gem3value><rousValue>100</rousValue><flyingRousValue>300</flyingRousValue><gem1RoomCollectRatioBonus>100</gem1RoomCollectRatioBonus><gem2RoomCollectRatioBonus>200</gem2RoomCollectRatioBonus><gem3RoomCollectRatioBonus>300</gem3RoomCollectRatioBonus><rousRoomCollectRatioBonus>150</rousRoomCollectRatioBonus><timeRoomBonus>500</timeRoomBonus><gem1LevelCollectRatioBonus>200</gem1LevelCollectRatioBonus><gem2LevelCollectRatioBonus>400</gem2LevelCollectRatioBonus><gem3LevelCollectRatioBonus>600</gem3LevelCollectRatioBonus><rousLevelCollectRatioBonus>300</rousLevelCollectRatioBonus><timeLevelBonus>1000</timeLevelBonus>--><gem1value>100</gem1value><gem2value>200</gem2value><gem3value>300</gem3value><rousValue>400</rousValue><flyingRousValue>600</flyingRousValue><gem1RoomCollectRatioBonus>200</gem1RoomCollectRatioBonus><gem2RoomCollectRatioBonus>400</gem2RoomCollectRatioBonus><gem3RoomCollectRatioBonus>600</gem3RoomCollectRatioBonus><rousRoomCollectRatioBonus>800</rousRoomCollectRatioBonus><timeRoomBonus>1000</timeRoomBonus><gem1LevelCollectRatioBonus>400</gem1LevelCollectRatioBonus><gem2LevelCollectRatioBonus>800</gem2LevelCollectRatioBonus><gem3LevelCollectRatioBonus>1200</gem3LevelCollectRatioBonus><rousLevelCollectRatioBonus>1600</rousLevelCollectRatioBonus><timeLevelBonus>2000</timeLevelBonus><multiplierDurationInSeconds>7</multiplierDurationInSeconds></config></princess_bride_fire_swamp_config>"); }; return (_local1); } } }//package com.wwb.princessbride.fire_swamp
Section 249
//FireSwampConfig (com.wwb.princessbride.fire_swamp.FireSwampConfig) package com.wwb.princessbride.fire_swamp { public class FireSwampConfig { public static var TILEID_PLATFORM_UNDERSIDE:String = "platform_underside"; public static var TILEID_PLATFORM_BOOKEND_RIGHT_UP:String = "platform_bookend_right_up"; public static var FLAG_PINK_TILES:String = "flagPinkTiles"; public static var TILEID_BG:String = "bg"; public static var SHELL_HELP:String = "pbfsonShellHelp"; public static var EVENT_LEVEL_COMPLETE:String = "pbfsLevelComplete"; public static var EVENT_CRUMBS_COLLIDE:String = "pbfsCrumbsCollide"; public static var SHELL_QUIT:String = "pbfsonShellQuit"; public static var EVENT_CLOSE_SUMMARY:String = "pbfsonCloseSummary"; public static var UI_SCORE_UPDATE:String = "pbfsonScoreUpdate"; public static var EVENT_ANNOUNCE_MULTI_SWITCH:String = "pbfsAnnounceMultiSwitch"; public static var SHELL_MENU:String = "pbfsonShellMenu"; public static var GOLD_GEM_VALUE:Number = 1000; public static var EVENT_DEBUG_LEVEL_WARP:String = "pbfsLevelWarp"; public static var TILEID_PLATFORM_BOOKEND_LEFT_UP:String = "platform_bookend_left_up"; public static var TILEID_GROUND:String = "ground"; public static var UI_GEMS_UPDATE:String = "pbfsonGemsUpdate"; public static var UI_MULT_ADD:String = "pbfsonMultAdd"; public static var TILEID_GROUND_FILL:String = "ground_fill"; public static var UI_MULT_REMOVE:String = "pbfsonMultRemove"; public static var EVENT_WIPE_REMOVE:String = "pbfsonWipeRemove"; public static var TILEID_PLATFORM_FILL:String = "platform_fill"; public static var FLAG_SHOW_TILES:String = "flagShowTiles"; public static var UI_EVENT_WESTLEY_CLICK:String = "pbfsonClickWestley"; public static var TILEID_BG_BOOKEND_RIGHT:String = "bg_bookend_right"; public static var EVENT_WIPE_LOAD:String = "pbfsonWipeLoaded"; public static var TILEID_GROUND_BOOKEND_RIGHT_DOWN:String = "ground_bookend_right_down"; public static var EVENT_CRUMBS_DESPAWN:String = "pbfsCrumbsDespawn"; public static var TILEID_PLATFORM_UNDERSIDE_BOOKEND_LEFT:String = "platform_underside_bookend_left"; public static var PURPLE_GEM_VALUE:Number = 100; public static var EVENT_START_GAME_AT_LEVEL:String = "pbfsonStartGameAtLevel"; public static var REFOCUS_STAGE:String = "pbfsonRefocusStage"; public static var EVENT_PLAYER_PORTAL:String = "pbfsPlayerPortal"; public static var GRAVITY_FORCE:Number = 780; public static var TILEID_GROUND_BOOKEND_LEFT_DOWN:String = "ground_bookend_left_down"; public static var EVENT_ROOM_DISPLAY_CHANGE:String = "pbfsRoomDisplayChange"; public static var EVENT_PLAYER_THROW:String = "pbfsPlayThrow"; public static var TILEID_PLATFORM_BOOKEND_RIGHT_DOWN:String = "platform_bookend_right_down"; public static var EVENT_DEW_COLLIDE:String = "pbfsDewCollide"; public static var EVENT_BUY_NOW:String = "pbfsonBuyNow"; private static var _PIXELS_PER_UNIT:Number = 10; public static var EVENT_DEBUG_ROOM_WARP:String = "pbfsRoomWarp"; public static var SHELL_MAP:String = "pbfsonShellMap"; public static var EVENT_GAME_OVER:String = "pbfsGameOver"; public static var ROOM_TRIGGERS:String = "PBFSTriggerRoom"; public static var EVENT_SCORE_EFFECT:String = "pbfsonDrawScoreEffect"; public static var EVENT_PARTICLE_EFFECT:String = "pbfsonDrawParticleEffect"; public static var TILEID_PLATFORM:String = "platform"; public static var EVENT_REMOVE_MULTI_SWITCH:String = "pbfsRemoveMultiSwitch"; public static var DEFAULT_TILESET:String = "debug"; public static var TILEID_BG_BOOKEND_LEFT:String = "bg_bookend_left"; private static var _mdmPath:String; public static var EVENT_SHOW_HELP:String = "pbfsonShowHelp"; public static var TILEID_GROUND_BOOKEND_LEFT_UP:String = "ground_bookend_left_up"; public static var DEBUG_TILESET:String = "debug"; public static var EVENT_PLAYER_CHANGE:String = "pbfsOnChangePlayer"; public static var EVENT_GAME_LOAD_COMPLETE:String = "pbfsonGameLoadComplete"; public static var UI_HEAT_UPDATE:String = "pbfsonHeatUpdate"; public static var EVENT_RESET_ROOM:String = "pbfsResetRoom"; public static var EVENT_REPORT_LEVEL_COMPLETE_TO_SHELL:String = "pbfsonReportLevelComplete"; public static var UI_EVENT_BUTTERCUP_CLICK:String = "pbfsonClickButtercup"; public static var UI_ROOMS_UPDATE:String = "pbfsonRoomsUpdate"; public static var EVENT_CLEAR_SCREENSHOT:String = "pbfsonCleaScreenshot"; public static var EVENT_ACTIVATE_MULTI_SWITCH:String = "pbfsActivateMultiSwitch"; public static var FLAG_SHOW_BACKGROUND:String = "flagShowBackground"; public static var GREEN_GEM_VALUE:Number = 400; public static var TILEID_PLATFORM_UNDERSIDE_BOOKEND_RIGHT:String = "platform_underside_bookend_right"; private static var _UNITS_PER_ROOM:Number = 102; public static var TILEID_GROUND_BOOKEND_RIGHT_UP:String = "ground_bookend_right_up"; public static var EVENT_PORTAL_RESPONSE:String = "pbfsPortalResponse"; public static var TILEID_PLATFORM_BOOKEND_LEFT_DOWN:String = "platform_bookend_left_down"; public static var EVENT_SHOW_PAUSE:String = "pbfsonShowPause"; public static var EVENT_COLLECT_MULTIPLIER:String = "pbfsonCollectMultiplier"; public static var SHELL_OUTRO:String = "pbfsonShellOutro"; public static var EVENT_CRUMBS_PULSE:String = "pbfsCrumbsPulse"; public static function set mdmPath(_arg1:String):void{ _mdmPath = _arg1; } public static function roomToPixels(_arg1:Number):Number{ return (((_arg1 - 1) * roomWidth)); } public static function get mdmPath():String{ return (_mdmPath); } public static function pixelsToUnits(_arg1:Number):Number{ return ((_arg1 / _PIXELS_PER_UNIT)); } public static function roomCameraPos(_arg1:Number):Number{ return (roomToPixels(_arg1)); } public static function get ppu():Number{ return (_PIXELS_PER_UNIT); } public static function roomToUnits(_arg1:Number):Number{ return (((_arg1 - 1) * _UNITS_PER_ROOM)); } public static function unitsToPixels(_arg1:Number):Number{ if (_arg1 == _UNITS_PER_ROOM){ return (0x0400); }; return ((_arg1 * _PIXELS_PER_UNIT)); } public static function get roomWidth():Number{ return ((_UNITS_PER_ROOM * _PIXELS_PER_UNIT)); } public static function getRoomLeftBounds(_arg1:Number):Number{ return ((roomToPixels(_arg1) + 5)); } public static function getRoomRightBounds(_arg1:Number):Number{ return (((roomToPixels(_arg1) + roomWidth) - 5)); } public static function get roomHeight():Number{ return (576); } public static function get roomBottom():Number{ return (576); } } }//package com.wwb.princessbride.fire_swamp
Section 250
//GameEngine (com.wwb.princessbride.fire_swamp.GameEngine) package com.wwb.princessbride.fire_swamp { import com.workinman.lib.math.*; import flash.events.*; import com.workinman.lib.sound.*; import com.workinman.paradise.*; import com.workinman.paradise.view.*; import com.workinman.lib.events.*; import flash.display.*; import com.wwb.princessbride.fire_swamp.data.*; import com.workinman.paradise.data.*; import com.wwb.princessbride.fire_swamp.ui.*; import com.workinman.lib.utils.*; import flash.net.*; import flash.text.*; import flash.geom.*; import com.wwb.princessbride.fire_swamp.ui.interfaces.*; import com.wwb.princessbride.fire_swamp.world.*; import com.workinman.lib.display.*; import flash.ui.*; import flash.filters.*; public class GameEngine extends BaseEngine { private var _transition:WorkinMovieClip; private var _screenshot:Bitmap; private var _backgroundManager:BackgroundManager; private var _tutorialManager:TutorialManager; private var _ui:GameUI; private var _summaryWindow:SummaryWindow; private var _intro:MovieClip; private var _levelManager:LevelManager; private var _deathFlash:MovieClip; private var _assetManager:AssetManager; private var _flags:Object; private var _deathSequenceTimer:Number; private var _state:GameState; private var _world:WorldManager; private var _buyWindow:BuyNowManager; private var _isCleaned:Boolean; private var _hasScreenshot:Boolean; private var _pauseManager:PauseManager; private var _isGenerated:Boolean; private var _SHOW_LOADER:Boolean;// = false private var _loaderLights:Sprite; private var _exitManager:ExitManager; private static const _DEFAULT_CONFIG_XML_URL:String = "FS_xml/FireSwampConfig.xml"; private static var _instance:GameEngine; public function GameEngine(_arg1:GameTimeline):void{ _SHOW_LOADER = false; _isGenerated = false; _isCleaned = false; _transition = null; _intro = null; super(_arg1); } public function onWorldDeclareGameOver():void{ onGameOver(); } private function _onRoomSummaryClose(_arg1:Event):void{ _addEndRoomBonuses(); if (control.mouseInPlayArea){ hideMouse(); }; _summaryWindow.removeEventListener(SummaryWindow.COMPLETE, _onRoomSummaryClose); (_timeline as GameTimeline).ui_container.removeChild(_summaryWindow); _summaryWindow = null; _world.onCloseRoomSummary(); } private function _loaderLightsFill(_arg1:Number):void{ var _local2:Number; _local2 = 5; while (_local2--) { if (_local2 <= (_arg1 - 1)){ _loaderLights.graphics.beginFill(0xFF00); } else { _loaderLights.graphics.beginFill(0xFF0000); }; _loaderLights.graphics.drawCircle((_local2 * 38), 0, 15); }; } public function showRoomSummary():void{ _showScreenshot(true); showMouse(); _summaryWindow = new RoomScoreSummary(); (_timeline as GameTimeline).ui_container.addChild(_summaryWindow); _summaryWindow.addEventListener(SummaryWindow.COMPLETE, _onRoomSummaryClose); } override public function get sound():SoundManager{ return (GlobalSound.getInstance()); } private function _beginTutorialDataLoad():void{ _tutorialManager.addEventListener(TutorialManager.ON_COMPLETE, _completeTutorialDataLoad); _tutorialManager.load(); } override protected function _generateState():void{ _state = GameState.getInstance(); } public function showLevelSummary():void{ showMouse(); _showScreenshot(true); _summaryWindow = new LevelScoreSummary(); (_timeline as GameTimeline).ui_container.addChild(_summaryWindow); _summaryWindow.addEventListener(SummaryWindow.COMPLETE, _onLevelSummaryClose); } override protected function _parseConfigXML():void{ var _local1:String; var _local2:Number; if (_SHOW_LOADER){ _loaderLightsFill(1); }; _addFlag(FireSwampConfig.FLAG_PINK_TILES, "false"); _addFlag(FireSwampConfig.FLAG_SHOW_TILES, "false"); _addFlag(FireSwampConfig.FLAG_SHOW_BACKGROUND, String(true)); _levelManager = new FireSwampLevelManager(); if (GameState.getInstance().getConfigOption("browserBuild") == "false"){ _local2 = _configXML.levels.level.length(); if (_local2 == 0){ _levelManager.add(Number(_configXML.levels.level.attribute("num")), (FireSwampConfig.mdmPath + _configXML.levels.level.valueOf())); } else { while (_local2--) { _levelManager.add(Number(_configXML.levels.level[_local2].attribute("num")), (FireSwampConfig.mdmPath + _configXML.levels.level[_local2].valueOf())); }; }; }; _local1 = (FireSwampConfig.mdmPath + _configXML.tutorial.attribute("path")); _tutorialManager = new TutorialManager(_local1, (_timeline as GameTimeline).ui_container); _assetManager = new AssetManager(); if (GameState.getInstance().getConfigOption("browserBuild") == "false"){ _local1 = (FireSwampConfig.mdmPath + _configXML.assets.attribute("path")); if (_local1.charAt((_local1.length - 1)) != "/"){ _local1 = (_local1 + "/"); }; _local2 = _configXML.assets.asset.length(); while (_local2--) { _assetManager.add((_local1 + String(_configXML.assets.asset[_local2].valueOf()))); }; }; GameState.getInstance().setConfigOption("buttercupJumpHeight", _configXML.config.buttercupJumpHeight.valueOf()); GameState.getInstance().setConfigOption("westleyJumpHeight", _configXML.config.westleyJumpHeight.valueOf()); GameState.getInstance().setConfigOption("buttercupDamageToRous", _configXML.config.buttercupDamageToRous.valueOf()); GameState.getInstance().setConfigOption("westleyDamageToRous", _configXML.config.westleyDamageToRous.valueOf()); GameState.getInstance().setConfigOption("rousHealth", _configXML.config.rousHealth.valueOf()); GameState.getInstance().setConfigOption("flyingRousHealth", _configXML.config.flyingRousHealth.valueOf()); GameState.getInstance().setConfigOption("fireShieldDuration", _configXML.config.fireShieldDuration.valueOf()); GameState.getInstance().setConfigOption("dewCollectCooldown", _configXML.config.dewCollectCooldown.valueOf()); GameState.getInstance().setConfigOption("waterHealPerSecond", _configXML.config.waterHealPerSecond.valueOf()); GameState.getInstance().setConfigOption("poisonSlowPercent", _configXML.config.poisonSlowPercent.valueOf()); GameState.getInstance().setConfigOption("poisonSlowDuration", _configXML.config.poisonSlowDuration.valueOf()); GameState.getInstance().setConfigOption("rousHeatDamage", _configXML.config.rousHeatDamage.valueOf()); GameState.getInstance().setConfigOption("flyingRousHeatDamage", _configXML.config.rousHeatDamage.valueOf()); GameState.getInstance().setConfigOption("fireMossHeatDamage", _configXML.config.fireMossHeatDamage.valueOf()); GameState.getInstance().setConfigOption("constantSpoutHeatDamage", _configXML.config.constantSpoutHeatDamage.valueOf()); GameState.getInstance().setConfigOption("fireSpoutHeatDamage", _configXML.config.fireSpoutHeatDamage.valueOf()); GameState.getInstance().setConfigOption("fireGroundHeatDamagePerSecond", _configXML.config.fireGroundHeatDamagePerSecond.valueOf()); GameState.getInstance().setConfigOption("gem1value", _configXML.config.gem1value.valueOf()); GameState.getInstance().setConfigOption("gem2value", _configXML.config.gem2value.valueOf()); GameState.getInstance().setConfigOption("gem3value", _configXML.config.gem3value.valueOf()); GameState.getInstance().setConfigOption("rousValue", _configXML.config.rousValue.valueOf()); GameState.getInstance().setConfigOption("flyingRousValue", _configXML.config.flyingRousValue.valueOf()); GameState.getInstance().setConfigOption("multiplierDuration", _configXML.config.multiplierDurationInSeconds.valueOf()); GameState.getInstance().setConfigOption("gem1RoomCollectRatioBonus", _configXML.config.gem1RoomCollectRatioBonus.valueOf()); GameState.getInstance().setConfigOption("gem2RoomCollectRatioBonus", _configXML.config.gem2RoomCollectRatioBonus.valueOf()); GameState.getInstance().setConfigOption("gem3RoomCollectRatioBonus", _configXML.config.gem3RoomCollectRatioBonus.valueOf()); GameState.getInstance().setConfigOption("rousRoomCollectRatioBonus", _configXML.config.rousRoomCollectRatioBonus.valueOf()); GameState.getInstance().setConfigOption("timeRoomBonus", _configXML.config.timeRoomBonus.valueOf()); GameState.getInstance().setConfigOption("gem1LevelCollectRatioBonus", _configXML.config.gem1LevelCollectRatioBonus.valueOf()); GameState.getInstance().setConfigOption("gem2LevelCollectRatioBonus", _configXML.config.gem2LevelCollectRatioBonus.valueOf()); GameState.getInstance().setConfigOption("gem3LevelCollectRatioBonus", _configXML.config.gem3LevelCollectRatioBonus.valueOf()); GameState.getInstance().setConfigOption("rousLevelCollectRatioBonus", _configXML.config.rousLevelCollectRatioBonus.valueOf()); GameState.getInstance().setConfigOption("timeLevelBonus", _configXML.config.timeLevelBonus.valueOf()); GameState.getInstance().setConfigOption("showPortals", _configXML.flags.showportals.valueOf()); if (GameState.getInstance().getConfigOption("browserBuild") == "false"){ _beginTutorialDataLoad(); } else { _tutorialManager.useLibraryTutorials(); _levelManager.useDataLevels(); _generateBackgroundManager(); if (_SHOW_LOADER){ _loaderLightsClear(); }; _onLoadComplete(); }; } private function _addEndLevelBonuses():void{ if (_state.purplegem.ratioLevel == 1){ _state.onAddScoreBonus(Math.round(_state.getGemLevelRatioBonus(1))); }; if (_state.greengem.ratioLevel == 1){ _state.onAddScoreBonus(Math.round(_state.getGemLevelRatioBonus(2))); }; if (_state.bluegem.ratioLevel == 1){ _state.onAddScoreBonus(Math.round(_state.getGemLevelRatioBonus(3))); }; if (_state.rous.ratioLevel == 1){ _state.onAddScoreBonus(Math.round(_state.getRousLevelRatioBonus())); }; if (_state.levelTimeRatio == 1){ _state.onAddScoreBonus(_state.getTimeLevelRatioBonus()); }; } private function _generateBackgroundManager():void{ var _local1:String; var _local2:Number; _backgroundManager = new BackgroundManager(); _local1 = ""; _local2 = _configXML.backgrounds.background.length(); while (_local2--) { _backgroundManager.add(String(_configXML.backgrounds.background[_local2].attribute("id")), _configXML.backgrounds.background[_local2], _local1); }; } public function showGameSummary():void{ showMouse(); if (GameState.getInstance().getConfigOption("browserBuild") == "true"){ _buyWindow = new BuyNowManager(); (_timeline as GameTimeline).ui_container.addChild(_buyWindow); } else { _summaryWindow = new GameScoreSummary(); (_timeline as GameTimeline).ui_container.addChild(_summaryWindow); }; } private function _playRandomMusic():void{ var _local1:Number; if (GameState.getInstance().getConfigOption("browserBuild") == "false"){ _local1 = Math.ceil((Math.random() * 3)); if (_local1 == 0){ _local1 = 1; }; sound.playMusic(("music" + String(_local1))); } else { sound.playMusic("music1"); }; } override protected function get _DEBUG():Boolean{ return (false); } private function _onClearScreenshot(_arg1:Event):void{ _removeScreenshot(); } override protected function _loadConfigXML():void{ _configXML = ConfigDataClass.getXML(); _parseConfigXML(); } override protected function _generateSounds():void{ super._generateSounds(); SoundLoader.loadSounds(); } private function _updateDeathTimer(_arg1:EUpdate):void{ _deathSequenceTimer = (_deathSequenceTimer - _arg1.dt); if (_deathSequenceTimer < 0){ (_timeline as GameTimeline).game_container.removeChild(_deathFlash); GlobalSound.getInstance().playMusic(); Updater.getInstance().removeEventListener(Updater.EVENT_UPDATE, _updateDeathTimer); _startLevel(false); _runTransition(); WorkinDispatcher.getInstance().dispatchEvent(new Event(FireSwampConfig.REFOCUS_STAGE)); }; } private function _onWipeUpdate(_arg1:EUpdate):void{ if (_intro.currentFrame == _intro.totalFrames){ WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.EVENT_WIPE_REMOVE, {swf:_intro})); Updater.getInstance().removeEventListener(Updater.EVENT_UPDATE, _onWipeUpdate); _intro = null; sound.playMusic("music1"); }; } public function exitGame():void{ cleanUp(); } private function _onHelpPressed(_arg1:Event):void{ if (((_exitManager.isDrawn) || (_pauseManager.isDrawn))){ return; }; if (_world != null){ _world.pause(); _showScreenshot(false); }; _ui.disable(); _tutorialManager.displayAll(); _tutorialManager.addEventListener(TutorialManager.ON_CLOSED, _onTutorialClose); } private function _failSequentialAssetDataLoad(_arg1:EData):void{ _assetManager.removeEventListener(AssetManager.ON_COMPLETE, _completeSequentialAssetDataLoad); _assetManager.removeEventListener(AssetManager.ON_ERROR, _failSequentialAssetDataLoad); if (_DEBUG){ debug((("Error Loading Game Assets from <assets>. " + _arg1.data.url) + " not found.")); }; } private function _onExitClosed(_arg1:Event):void{ if (_isCleaned){ return; }; _exitManager.removeEventListener(ExitManager.ON_CLOSED, _onPauseClosed); if (_world != null){ _runTransition(); _cleanUpGameplay(); _state.nextLevel(); _playRandomMusic(); _startLevel(); }; WorkinDispatcher.getInstance().dispatchEvent(new Event(FireSwampConfig.REFOCUS_STAGE)); } public function unpauseGameplay():void{ } public function pauseGameplay():void{ } public function _onLevelWarp(_arg1:Event):void{ _cleanUpGameplay(); _state.startRoom = 1; _startLevel(); } private function _removeEventListeners():void{ WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.EVENT_START_GAME_AT_LEVEL, _onBeginGameAtLevel); WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.EVENT_LEVEL_COMPLETE, _onLevelComplete); WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.EVENT_DEBUG_LEVEL_WARP, _onLevelWarp); WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.EVENT_BUY_NOW, _onBuyNow); WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.EVENT_CLEAR_SCREENSHOT, _onClearScreenshot); if (_deathSequenceTimer > 0){ Updater.getInstance().removeEventListener(Updater.EVENT_UPDATE, _updateDeathTimer); }; } private function _runTransition():void{ if (!_hasScreenshot){ return; }; try { (_timeline as GameTimeline).game_container.removeChild(_transition); _transition.removeEventListener(WorkinMovieClip.COMPLETE_TRACK, _onTransitionTrackComplete); } catch(pError:Error) { }; _transition = new AssetFireTransition(); (_timeline as GameTimeline).game_container.addChild(_transition); _screenshot.mask = _transition; _transition.addEventListener(WorkinMovieClip.COMPLETE_TRACK, _onTransitionTrackComplete); _transition.trackPlay(1, _transition.totalFrames); } private function _addEventListeners():void{ WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.EVENT_START_GAME_AT_LEVEL, _onBeginGameAtLevel); WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.EVENT_LEVEL_COMPLETE, _onLevelComplete); WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.EVENT_DEBUG_LEVEL_WARP, _onLevelWarp); WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.EVENT_BUY_NOW, _onBuyNow); WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.EVENT_CLEAR_SCREENSHOT, _onClearScreenshot); } public function onWorldDeclareResetRoomr():void{ onResetRoom(); } private function _completeSequentialAssetDataLoad(_arg1:Event):void{ _assetManager.removeEventListener(AssetManager.ON_COMPLETE, _completeSequentialAssetDataLoad); _assetManager.removeEventListener(AssetManager.ON_ERROR, _failSequentialAssetDataLoad); if (_SHOW_LOADER){ _loaderLightsFill(3); }; if (_isCleaned){ return; }; _generateBackgroundManager(); if (_SHOW_LOADER){ _loaderLightsClear(); }; _onLoadComplete(); } private function _addEndRoomBonuses():void{ if (_state.purplegem.ratioRoom == 1){ _state.onAddScoreBonus(Math.round(_state.getGemRoomRatioBonus(1))); }; if (_state.greengem.ratioRoom == 1){ _state.onAddScoreBonus(Math.round(_state.getGemRoomRatioBonus(2))); }; if (_state.bluegem.ratioRoom == 1){ _state.onAddScoreBonus(Math.round(_state.getGemRoomRatioBonus(3))); }; if (_state.rous.ratioRoom == 1){ _state.onAddScoreBonus(Math.round(_state.getRousRoomRatioBonus())); }; if (_state.roomTimeLimitBeaten){ _state.onAddScoreBonus(_state.getTimeRoomRatioBonus()); }; } override protected function _generateDebugField():void{ _debugText = new TextField(); _debugText.width = (ParadiseConfig.SCREEN_WIDTH - 70); _debugText.height = (ParadiseConfig.SCREEN_HEIGHT - 70); _debugText.x = 50; _debugText.y = 50; _debugText.textColor = 0xFFFFFF; (_timeline as GameTimeline).game_container.addChild(_debugText); } private function _onTutorialClose(_arg1:Event):void{ var pEvent = _arg1; if (_isCleaned){ return; }; _ui.enable(); _removeScreenshot(); try { (_timeline as GameTimeline).game_container.removeChild(_transition); _transition.removeEventListener(WorkinMovieClip.COMPLETE_TRACK, _onTransitionTrackComplete); _transition = null; } catch(pError:Error) { }; _tutorialManager.removeEventListener(TutorialManager.ON_CLOSED, _onTutorialClose); if (_world != null){ _world.unpause(); }; hideMouse(); WorkinDispatcher.getInstance().dispatchEvent(new Event(FireSwampConfig.REFOCUS_STAGE)); } public function kill():void{ cleanUp(); } private function _showScreenshot(_arg1:Boolean=true):void{ var _local2:ColorTransform; if (_hasScreenshot){ return; }; _hasScreenshot = true; _screenshot = new Bitmap(_view.getContentsAsBitmap()); if (_arg1){ _screenshot.filters = [new BlurFilter(10, 10)]; _local2 = new ColorTransform(0.8, 0.8, 0.8, 1, -30, -30, -30, 0); _screenshot.bitmapData.colorTransform(new Rectangle(0, 0, _screenshot.width, _screenshot.height), _local2); _ui.blur(); }; (_timeline as GameTimeline).game_container.addChild(_screenshot); } override protected function _generateUI():void{ _ui = new GameUI((_timeline as GameTimeline).ui_container); } private function _removeScreenshot():void{ if (!_hasScreenshot){ return; }; _ui.unblur(); _hasScreenshot = false; (_timeline as GameTimeline).game_container.removeChild(_screenshot); _screenshot.mask = null; _screenshot.bitmapData.dispose(); _screenshot = null; } private function _addFlag(_arg1:String, _arg2:String):void{ _flags[_arg1] = _arg2; } public function hideMouse():void{ } private function _waitForInit(_arg1:EUpdate):void{ Updater.getInstance().removeEventListener(Updater.EVENT_UPDATE, _waitForInit); _loadConfigXML(); } public function get levelManager():LevelManager{ return (_levelManager); } private function _beginSequentialLevelDataLoad():void{ _levelManager.addEventListener(LevelManager.ON_COMPLETE, _completeSequentialLevelDataLoad); _levelManager.addEventListener(LevelManager.ON_ERROR, _failSequentialLevelDataLoad); _levelManager.beginSequentialDataLoad(); } private function _onBuyNow(_arg1:Event):void{ navigateToURL(new URLRequest("http://elicense.com/wwbiggies/pbg1"), "_blank"); } public function get state():GameState{ return (_state); } public function get ui():GameUI{ return (_ui); } override protected function _generateView():void{ _view = new ViewManager((_timeline as GameTimeline).game_container); if (GameState.getInstance().getConfigOption("browserBuild") == "true"){ (_timeline as GameTimeline).game_container.scaleX = ((_timeline as GameTimeline).game_container.scaleY = 0.59); }; _view.addGroup("background", 1); _view.addGroup("platforms", 2); _view.addGroup("ground", 3); _view.addGroup("gizmos", 4); _view.addGroup("mobiles", 5); _view.addGroup("players", 6); _view.addGroup("effects", 7); _view.addGroup("foreground", 8); _view.addGroup("uieffects", 9); _view.addGroup("arrow", 10); } private function _loaderLightsGenerate():void{ _loaderLights = new Sprite(); _loaderLightsFill(0); if (GameState.getInstance().getConfigOption("browserBuild") == "true"){ _loaderLights.x = 200; _loaderLights.y = 130; } else { _loaderLights.x = ((ParadiseConfig.SCREEN_WIDTH / 2) - (_loaderLights.width / 2)); _loaderLights.y = 190; }; _timeline.addChild(_loaderLights); _loaderLightsFill(0); } public function get assetManager():AssetManager{ return (_assetManager); } private function _loaderLightsClear():void{ _timeline.removeChild(_loaderLights); } private function _onPauseClosed(_arg1:Event):void{ if (_isCleaned){ return; }; _ui.enable(); _removeScreenshot(); _pauseManager.removeEventListener(PauseManager.ON_CLOSED, _onPauseClosed); if (_world != null){ _world.unpause(); }; WorkinDispatcher.getInstance().dispatchEvent(new Event(FireSwampConfig.REFOCUS_STAGE)); } public function get backgroundManager():BackgroundManager{ return (_backgroundManager); } public function onResetRoom():void{ _cleanUpGameplay(); _state.wipeRoomScore(); _state.resetRoom(); _startLevel(false); } override protected function _generateControls():void{ _control = new BaseController(_timeline); _control.activeMouseControl(); } protected function _beginGameAtLevel(_arg1:Number):void{ var _local2:Number; _state.resetGame(); _state.levelnum = _arg1; _ui.populate(); _startLevel(); _local2 = Math.ceil((Math.random() * 3)); if (_local2 == 0){ _local2 = 1; }; if (GameState.getInstance().getConfigOption("browserBuild") != "true"){ if (_arg1 == 0){ sound.playMusic("music1"); } else { sound.playMusic(("music" + String(_local2))); }; }; } public function showMouse():void{ Mouse.show(); } private function _onLevelSummaryClose(_arg1:Event):void{ _addEndLevelBonuses(); if (control.mouseInPlayArea){ hideMouse(); }; _summaryWindow.removeEventListener(SummaryWindow.COMPLETE, _onRoomSummaryClose); (_timeline as GameTimeline).ui_container.removeChild(_summaryWindow); _summaryWindow = null; _world.onCloseLevelSummary(); } public function cleanUp():void{ _isCleaned = true; _cleanUpGameplay(); if (_world != null){ _world.cleanUp(); }; if (_intro != null){ try { Updater.getInstance().removeEventListener(Updater.EVENT_UPDATE, _onWipeUpdate); } catch(pError:Error) { }; }; if (_transition != null){ try { (_timeline as GameTimeline).game_container.removeChild(_transition); _transition.removeEventListener(WorkinMovieClip.COMPLETE_TRACK, _onTransitionTrackComplete); } catch(pError:Error) { }; }; if (GameState.getInstance().getConfigOption("browserBuild") == "true"){ Bitmap.prototype.smoothing = false; }; _removeEventListeners(); sound.cleanUp(); try { new LocalConnection().connect("foo"); new LocalConnection().connect("foo"); } catch(e) { }; _tutorialManager.cleanUp(); _levelManager.cleanUp(); _assetManager.cleanUp(); _backgroundManager.cleanUp(); _pauseManager.cleanUp(); _exitManager.cleanUp(); _ui.cleanUp(); _tutorialManager = null; _levelManager = null; _assetManager = null; _backgroundManager = null; try { WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.EVENT_SHOW_HELP, _onHelpPressed); } catch(pError:Error) { }; GlobalSound.getInstance().cleanUp(); GlobalVoice.getInstance().cleanUp(); } private function _cleanUpGameplay():void{ if (_world == null){ return; }; _world.cleanUp(); _view.clear(); _world = null; _ui.disable(); try { new LocalConnection().connect("foo"); new LocalConnection().connect("foo"); } catch(e) { }; } private function _getTutorialExists(_arg1:Number):Boolean{ var _local2:Array; var _local3:Number; _local2 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 16, 17, 18]; _local3 = _local2.length; while (_local3--) { if (_local2[_local3] == _arg1){ return (true); }; }; return (false); } override protected function _generate(_arg1:BaseTimeline):void{ if (_isGenerated){ return; }; _flags = {}; GameState.getInstance().setConfigOption("hasExitReached", "false"); GameState.getInstance().setConfigOption("browserBuild", (((_arg1 as GameTimeline).isBrowser)==true) ? "true" : "false"); if (GameState.getInstance().getConfigOption("browserBuild") == "true"){ Bitmap.prototype.smoothing = true; (_arg1 as GameTimeline).game_container.x = ((_arg1 as GameTimeline).game_container.x - 2); }; ParadiseConfig.DIMENSIONS = new WorkinPoint(0x0400, 576); ParadiseConfig.SCREEN_CENTER = new WorkinPoint(0x0200, 384); if (GameState.getInstance().getConfigOption("browserBuild") == "true"){ ParadiseConfig.SCREEN_OFFSET = new WorkinPoint(0, 66); } else { ParadiseConfig.SCREEN_OFFSET = new WorkinPoint(0, 96); }; FireSwampConfig.mdmPath = (_arg1 as GameTimeline).basePath; super._generate(_arg1); MultiEventTracker.getInstance(); if (_SHOW_LOADER){ _loaderLightsGenerate(); }; _pauseManager = new PauseManager(); _pauseManager.assignParent((_arg1 as GameTimeline).ui_container); _exitManager = new ExitManager(); _exitManager.assignParent((_arg1 as GameTimeline).ui_container); if (_configXMLURL == ""){ _configXMLURL = _DEFAULT_CONFIG_XML_URL; }; _configXMLURL = (FireSwampConfig.mdmPath + _configXMLURL); _addEventListeners(); _isGenerated = true; if (GameState.getInstance().getConfigOption("browserBuild") == "false"){ _loadConfigXML(); } else { Updater.getInstance().addEventListener(Updater.EVENT_UPDATE, _waitForInit); }; } private function _failSequentialLevelDataLoad(_arg1:EData):void{ _levelManager.removeEventListener(LevelManager.ON_COMPLETE, _completeSequentialLevelDataLoad); _levelManager.removeEventListener(LevelManager.ON_ERROR, _failSequentialLevelDataLoad); if (_DEBUG){ debug((("Error Loading XML from <levels>. " + _arg1.data.url) + " not found.")); }; } private function _onLoadComplete():void{ WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.EVENT_SHOW_PAUSE, _onPausePressed); WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.EVENT_SHOW_HELP, _onHelpPressed); WorkinDispatcher.getInstance().dispatchEvent(new Event(FireSwampConfig.EVENT_GAME_LOAD_COMPLETE)); } public function _startLevel(_arg1:Boolean=true):void{ var _local2:FireSwampLevelData; _state.resetLevel(_arg1); if (_levelManager.getLastLevel() < _state.levelnum){ showGameSummary(); return; }; _local2 = new FireSwampLevelData(_levelManager.getLevelStorage(_state.levelnum)); _ui.draw(); _world = new WorldManager(_local2); if (((_getTutorialExists((_state.levelnum + 1))) && ((_state.startRoom == 1)))){ _world.pause(); _showScreenshot(false); _tutorialManager.display((_state.levelnum + 1)); _tutorialManager.addEventListener(TutorialManager.ON_CLOSED, _onTutorialClose); _world.requestRender(); showMouse(); }; } public function getFlag(_arg1:String):String{ return (_flags[_arg1]); } private function _completeSequentialLevelDataLoad(_arg1:Event):void{ _levelManager.removeEventListener(LevelManager.ON_COMPLETE, _completeSequentialLevelDataLoad); _levelManager.removeEventListener(LevelManager.ON_ERROR, _failSequentialLevelDataLoad); if (_SHOW_LOADER){ _loaderLightsFill(2); }; if (_isCleaned){ return; }; _beginSequentialAssetDataLoad(); } public function onGameOver():void{ _showScreenshot(false); _deathFlash = new AssetDeathFlash(); _deathFlash.x = ParadiseConfig.SCREEN_OFFSET.x; _deathFlash.y = ParadiseConfig.SCREEN_OFFSET.y; (_timeline as GameTimeline).game_container.addChild(_deathFlash); _cleanUpGameplay(); GlobalSound.getInstance().stopMusic(); _state.wipeRoomScore(); _state.resetRoom(); _deathSequenceTimer = 1.5; Updater.getInstance().addEventListener(Updater.EVENT_UPDATE, _updateDeathTimer); } private function _completeTutorialDataLoad(_arg1:Event):void{ _tutorialManager.removeEventListener(TutorialManager.ON_COMPLETE, _completeTutorialDataLoad); if (_isCleaned){ return; }; _beginSequentialLevelDataLoad(); } private function _onPausePressed(_arg1:Event):void{ if (_exitManager.isDrawn){ return; }; if (_world != null){ _world.pause(); _showScreenshot(true); }; _ui.disable(); _pauseManager.show(); _pauseManager.addEventListener(PauseManager.ON_CLOSED, _onPauseClosed); } public function get mousePoint():WorkinPoint{ return (new WorkinPoint(_timeline.mouseX, _timeline.mouseY, 0)); } private function _onTransitionTrackComplete(_arg1:Event):void{ (_timeline as GameTimeline).game_container.removeChild(_transition); _removeScreenshot(); _transition.removeEventListener(WorkinMovieClip.COMPLETE_TRACK, _onTransitionTrackComplete); _transition = null; } public function get roomCount():Number{ return (_world.roomCount); } private function _onExitReached():void{ if (_world != null){ _world.pause(); _showScreenshot(true); }; GameState.getInstance().setConfigOption("hasExitReached", "true"); _exitManager.show(); _exitManager.addEventListener(ExitManager.ON_CLOSED, _onExitClosed); } private function _beginSequentialAssetDataLoad():void{ _assetManager.addEventListener(AssetManager.ON_COMPLETE, _completeSequentialAssetDataLoad); _assetManager.addEventListener(AssetManager.ON_ERROR, _failSequentialAssetDataLoad); _assetManager.beginSequentialDataLoad(); } private function _onBeginGameAtLevel(_arg1:EData):void{ if (_arg1.data.level > (Number(GameState.getInstance().getConfigOption("naturalExit")) - 1)){ GameState.getInstance().setConfigOption("hasExitReached", "true"); }; GameState.getInstance().baseScore = Number(GameState.getInstance().getConfigOption("baseScore")); if (GameState.getInstance().getConfigOption("browserBuild") == "true"){ _intro = new AssetIntroWipe(); WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.EVENT_WIPE_LOAD, {swf:_intro})); Updater.getInstance().addEventListener(Updater.EVENT_UPDATE, _onWipeUpdate); }; _beginGameAtLevel(_arg1.data.level); } public function _onLevelComplete(_arg1:Event):void{ WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.EVENT_REPORT_LEVEL_COMPLETE_TO_SHELL, {level:(_state.levelnum + 1), score:_state.scoreToPublish})); if ((_state.levelnum + 1) == Number(GameState.getInstance().getConfigOption("naturalExit"))){ _onExitReached(); return; }; _showScreenshot(true); _runTransition(); _cleanUpGameplay(); _state.nextLevel(); _playRandomMusic(); _startLevel(); } public static function initialize(_arg1:GameTimeline):void{ if (_instance != null){ return; }; _instance = new GameEngine(_arg1); } public static function getInstance():GameEngine{ if (_instance == null){ }; return (_instance); } } }//package com.wwb.princessbride.fire_swamp
Section 251
//GameState (com.wwb.princessbride.fire_swamp.GameState) package com.wwb.princessbride.fire_swamp { import com.workinman.lib.math.*; import flash.events.*; import com.workinman.lib.events.*; import com.workinman.lib.utils.*; import com.wwb.princessbride.fire_swamp.world.entitys.mobs.players.*; public class GameState { private var _roomTimesComplete:Number; public var purplegem:Collectable; private var _buttercupFacingLeft:Boolean; public var baseScore:Number; private var _buttercupRoomStart:WorkinPoint; private var _roomTimeLimit:Number; private var _multiplier:Number; public var greengem:Collectable; private var _westleyFacingLeft:Boolean; private var _buttercupArmed:Boolean; private var _roomsThisLevel:Number; private var _score:Collectable; private var _westleyRoomStart:WorkinPoint; public var rous:Collectable; public var scoreToPublish:Number; private var _roomTime:Number; public var bluegem:Collectable; private var _heat:Number; private var _startRoom:Number; private var _levelnum:Number; private var _westleySwordLeft:Boolean; private var _configOptions:Object; private static var _instance:GameState; public function GameState():void{ } public function calculateRousScoreValue(_arg1:Boolean=false):Number{ if (_arg1){ return (Number(getConfigOption("flyingRousValue"))); }; return (Number(getConfigOption("rousValue"))); } public function set levelnum(_arg1:Number):void{ _levelnum = _arg1; } public function onPlayerCompleteLevel():void{ scoreToPublish = _score.level; _score.onCompleteLevel(); purplegem.onCompleteLevel(); greengem.onCompleteLevel(); bluegem.onCompleteLevel(); rous.onCompleteLevel(); } private function _onWestleyAppearanceChange():void{ WorkinDispatcher.getInstance().dispatchEvent(new Event(PlayerAppearanceManager.EVENT_WESTLEY_APPEARANCE_CHANGE)); } public function init():void{ WorkinDispatcher.getInstance().addEventListener(Westley.EVENT_CHANGE_FACE_LEFT, _onWestleyFaceLeft); WorkinDispatcher.getInstance().addEventListener(Westley.EVENT_CHANGE_FACE_RIGHT, _onWestleyFaceRight); WorkinDispatcher.getInstance().addEventListener(Westley.EVENT_CHANGE_SWORD_LEFT, _onWestleySwordLeft); WorkinDispatcher.getInstance().addEventListener(Westley.EVENT_CHANGE_SWORD_RIGHT, _onWestleySwordRight); WorkinDispatcher.getInstance().addEventListener(Buttercup.EVENT_ARMED, _onButtercupArmed); WorkinDispatcher.getInstance().addEventListener(Buttercup.EVENT_DISARMED, _onButtercupDisarmed); WorkinDispatcher.getInstance().addEventListener(Buttercup.EVENT_CHANGE_FACE_LEFT, _onButtercupFaceLeft); WorkinDispatcher.getInstance().addEventListener(Buttercup.EVENT_CHANGE_FACE_RIGHT, _onButtercupFaceRight); _configOptions = {}; _score = new Collectable("score"); purplegem = new Collectable("purple"); greengem = new Collectable("green"); bluegem = new Collectable("blue"); rous = new Collectable("rous"); resetGame(); } public function get roomTimeLimitBeaten():Boolean{ return ((_roomTime < _roomTimeLimit)); } public function onAssignRoomTime(_arg1:Number):void{ _roomTime = (Math.round((_arg1 * 10)) / 10); if (roomTimeLimitBeaten){ _roomTimesComplete++; }; } public function getGemLevelRatioBonus(_arg1:Number):Number{ if (_arg1 == 1){ return (Number(getConfigOption("gem1LevelCollectRatioBonus"))); }; if (_arg1 == 2){ return (Number(getConfigOption("gem2LevelCollectRatioBonus"))); }; if (_arg1 == 3){ return (Number(getConfigOption("gem3LevelCollectRatioBonus"))); }; return (0); } public function get levelTimeRatio():Number{ return ((_roomTimesComplete / _roomsThisLevel)); } public function getRousLevelRatioBonus():Number{ return (Number(getConfigOption("rousLevelCollectRatioBonus"))); } private function _onWestleySwordLeft(_arg1:Event):void{ PlayerAppearanceManager.westleySwordLeft = true; _onWestleyAppearanceChange(); } public function getTimeRoomRatioBonus():Number{ return (Number(getConfigOption("timeRoomBonus"))); } public function onPlayerHealDamage(_arg1:Number):void{ _heat = (_heat - _arg1); if (_heat < 0){ _heat = 0; }; WorkinDispatcher.getInstance().dispatchEvent(new Event(FireSwampConfig.UI_HEAT_UPDATE)); } private function _onWestleySwordRight(_arg1:Event):void{ PlayerAppearanceManager.westleySwordLeft = false; _onWestleyAppearanceChange(); } public function get westleyRoomStart():WorkinPoint{ return (_westleyRoomStart); } private function _onButtercupFaceRight(_arg1:Event):void{ PlayerAppearanceManager.buttercupFacingLeft = false; _onButtercupAppearanceChange(); } private function _onWestleyFaceRight(_arg1:Event):void{ PlayerAppearanceManager.westleyFacingLeft = false; _onWestleyAppearanceChange(); } public function get roomTime():Number{ return (_roomTime); } public function nextLevel():void{ _levelnum++; _startRoom = 1; } public function get startRoom():Number{ return (_startRoom); } public function get roomsThisLevel():Number{ return (_roomsThisLevel); } public function onPlayerCompleteRoom():void{ _score.onCompleteRoom(); purplegem.onCompleteRoom(); greengem.onCompleteRoom(); bluegem.onCompleteRoom(); rous.onCompleteRoom(); _multiplier = 1; WorkinDispatcher.getInstance().dispatchEvent(new Event(FireSwampConfig.UI_MULT_REMOVE)); } public function resetLevel(_arg1:Boolean=true):void{ _buttercupArmed = false; _heat = 0; _roomTimesComplete = 0; if (_arg1){ purplegem.onResetLevel(); greengem.onResetLevel(); bluegem.onResetLevel(); rous.onResetLevel(); _score.onResetLevel(); }; resetRoom(); WorkinDispatcher.getInstance().dispatchEvent(new Event(FireSwampConfig.UI_HEAT_UPDATE)); } private function _onButtercupArmed(_arg1:Event):void{ PlayerAppearanceManager.buttercupArmed = true; _onButtercupAppearanceChange(); } public function recordRoomStartPos(_arg1:WorkinPoint, _arg2:WorkinPoint):void{ _westleyRoomStart.toPoint(_arg1); _buttercupRoomStart.toPoint(_arg2); } public function getRousRoomRatioBonus():Number{ return (Number(getConfigOption("rousRoomCollectRatioBonus"))); } private function _onButtercupFaceLeft(_arg1:Event):void{ PlayerAppearanceManager.buttercupFacingLeft = true; _onButtercupAppearanceChange(); } public function onPlayerKillFlyingRous():void{ rous.collect(); _addScore(calculateRousScoreValue(true)); } public function get levelnum():Number{ return (_levelnum); } public function setRoomTotals(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number):void{ _roomTimeLimit = _arg1; purplegem.totalAvailableRoom = _arg2; greengem.totalAvailableRoom = _arg3; bluegem.totalAvailableRoom = _arg4; rous.totalAvailableRoom = _arg5; } public function onAddScoreBonus(_arg1:Number):void{ _score.level = (_score.level + _arg1); } public function setLevelTotals(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number):void{ _roomsThisLevel = _arg1; purplegem.totalAvailableLevel = _arg2; greengem.totalAvailableLevel = _arg3; bluegem.totalAvailableLevel = _arg4; rous.totalAvailableLevel = _arg5; } public function get score():Collectable{ return (_score); } public function onPlayerTakeDamage(_arg1:Number):void{ _heat = (_heat + _arg1); WorkinDispatcher.getInstance().dispatchEvent(new Event(FireSwampConfig.UI_HEAT_UPDATE)); if (_heat >= 100){ WorkinDispatcher.getInstance().dispatchEvent(new Event(FireSwampConfig.EVENT_GAME_OVER)); }; } public function getGemRoomRatioBonus(_arg1:Number):Number{ if (_arg1 == 1){ return (Number(getConfigOption("gem1RoomCollectRatioBonus"))); }; if (_arg1 == 2){ return (Number(getConfigOption("gem2RoomCollectRatioBonus"))); }; if (_arg1 == 3){ return (Number(getConfigOption("gem3RoomCollectRatioBonus"))); }; return (0); } public function onResetMultiplier():void{ _multiplier = 1; WorkinDispatcher.getInstance().dispatchEvent(new Event(FireSwampConfig.UI_MULT_REMOVE)); } public function get roomTimeRatio():Number{ return ((1 - (_roomTime / _roomTimeLimit))); } public function get buttercupRoomStart():WorkinPoint{ return (_buttercupRoomStart); } private function _onButtercupDisarmed(_arg1:Event):void{ PlayerAppearanceManager.buttercupArmed = false; _onButtercupAppearanceChange(); } private function _onButtercupAppearanceChange():void{ WorkinDispatcher.getInstance().dispatchEvent(new Event(PlayerAppearanceManager.EVENT_BUTTERCUP_APPEARANCE_CHANGE)); } public function set startRoom(_arg1:Number):void{ _startRoom = _arg1; } public function get multiplier():Number{ return (_multiplier); } public function getTimeLevelRatioBonus():Number{ return (Number(getConfigOption("timeLevelBonus"))); } public function resetRoom():void{ _roomTime = 0; _multiplier = 1; WorkinDispatcher.getInstance().dispatchEvent(new Event(FireSwampConfig.UI_MULT_REMOVE)); purplegem.onResetRoom(); greengem.onResetRoom(); bluegem.onResetRoom(); rous.onResetRoom(); _score.onResetRoom(); WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.UI_SCORE_UPDATE, {score:(_score.currentGameTotal + baseScore)})); WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.UI_GEMS_UPDATE, {gem:0})); } public function getConfigOption(_arg1:String):String{ return (_configOptions[_arg1]); } private function _addScore(_arg1:Number):void{ _score.collect((_arg1 * _multiplier)); WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.UI_SCORE_UPDATE, {score:(_score.currentGameTotal + baseScore)})); } private function _onWestleyFaceLeft(_arg1:Event):void{ PlayerAppearanceManager.westleyFacingLeft = true; _onWestleyAppearanceChange(); } public function setConfigOption(_arg1:String, _arg2:String):void{ _configOptions[_arg1] = _arg2; } public function onPlayerGetGem(_arg1:Number):void{ if (_arg1 == 1){ purplegem.collect(); } else { if (_arg1 == 2){ greengem.collect(); } else { if (_arg1 == 3){ bluegem.collect(); }; }; }; _addScore(calculateGemScoreValue(_arg1)); WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.UI_GEMS_UPDATE, {gem:_arg1})); } public function resetGame():void{ _levelnum = 0; _startRoom = 1; _westleyRoomStart = new WorkinPoint(); _buttercupRoomStart = new WorkinPoint(); _score.zero(); purplegem.zero(); greengem.zero(); bluegem.zero(); rous.zero(); } public function calculateGemScoreValue(_arg1:Number):Number{ if (_arg1 == 1){ return (Number(getConfigOption("gem1value"))); }; if (_arg1 == 2){ return (Number(getConfigOption("gem2value"))); }; if (_arg1 == 3){ return (Number(getConfigOption("gem3value"))); }; return (0); } public function get heat():Number{ return (_heat); } public function onPlayerKillRous():void{ rous.collect(); _addScore(calculateRousScoreValue()); } public function wipeRoomScore():void{ } public function onPlayerGetMultiplier(_arg1:Number):void{ _multiplier = (_multiplier * _arg1); WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.UI_MULT_ADD, {mult:_arg1})); } public static function getInstance():GameState{ if (_instance == null){ _instance = new (GameState); _instance.init(); }; return (_instance); } } }//package com.wwb.princessbride.fire_swamp
Section 252
//GameTimeline (com.wwb.princessbride.fire_swamp.GameTimeline) package com.wwb.princessbride.fire_swamp { import com.workinman.paradise.*; import flash.display.*; public class GameTimeline extends BaseTimeline { public var isDebug:Boolean; public var game_container:MovieClip; public var ui_container:MovieClip; public var isBrowser:Boolean; public var basePath:String; public function GameTimeline(_arg1:Boolean=false, _arg2:Boolean=false):void{ basePath = ""; isBrowser = _arg1; game_container = new MovieClip(); ui_container = new MovieClip(); addChild(game_container); addChild(ui_container); isDebug = _arg2; if (isDebug){ beginGame(basePath); }; } public function beginGame(_arg1:String):void{ basePath = _arg1; GameEngine.initialize(this); } public function exitGame():void{ GameEngine.getInstance().exitGame(); } } }//package com.wwb.princessbride.fire_swamp
Section 253
//IEntityData (com.wwb.princessbride.fire_swamp.IEntityData) package com.wwb.princessbride.fire_swamp { import com.wwb.princessbride.fire_swamp.world.entitys.*; public interface IEntityData { function reconstruct(_arg1:FireSwampSprite):void; function toString():String; } }//package com.wwb.princessbride.fire_swamp
Section 254
//LevelDataClass1 (com.wwb.princessbride.fire_swamp.LevelDataClass1) package com.wwb.princessbride.fire_swamp { public class LevelDataClass1 { public static function getXML():XML{ var _local1:XML; _local1 = new XML(); _local1.ignoreComments = false; _local1.ignoreProcessingInstructions = false; _local1.ignoreWhitespace = true; _local1 = XML("<princess_bride_fire_swamp_level background='level1b'><rooms><!-- level init 4 -1 --><room pos='1'><ground y='1' appearance='grass'><spans><span type='ground' begin='0' end='10' height='40'/><span type='ground' begin='95' end='102.4' height='31'/></spans><items><item type='gem' offset='70' height='10' value='1'/><item type='gem' offset='70' height='14' value='1'/><item type='gem' offset='70' height='18' value='1'/></items></ground><platforms><platform x='0' y='41' width='15' appearance='grass' bottomCollision='false' id='npcStart'/><platform x='55' y='10' width='6' appearance='grass' bottomCollision='false'/><platform x='45' y='18' width='6' appearance='grass' bottomCollision='false'/><platform x='52' y='26' width='6' appearance='grass' bottomCollision='false'/><platform x='63' y='32' width='55' appearance='grass' bottomCollision='false'><gizmos><gizmo type='vine' offset='7' length='24' coiled='true'/></gizmos><gizmos><gizmo type='goal' offset='35'/></gizmos></platform></platforms></room></rooms><players><!--<player id='westley' room='1' platform='npcStart' offset='10' /><player id='buttercup' room='1' platform='npcStart' offset='5' />--><player id='westley' room='1' platform='npcStart' offset='10' /><player id='buttercup' room='1' platform='npcStart' offset='5' /></players></princess_bride_fire_swamp_level>"); return (_local1); } } }//package com.wwb.princessbride.fire_swamp
Section 255
//LevelDataClass2 (com.wwb.princessbride.fire_swamp.LevelDataClass2) package com.wwb.princessbride.fire_swamp { public class LevelDataClass2 { public static function getXML():XML{ var _local1:XML; _local1 = new XML(); _local1.ignoreComments = false; _local1.ignoreProcessingInstructions = false; _local1.ignoreWhitespace = true; _local1 = XML("<princess_bride_fire_swamp_level background='level2b' name='The Vine Intervention'><rooms><!-- level 6 - 1 --><room pos='1' time='60'><ground y='1' appearance='grass' ><items><item type='multiplier' offset='63' height='20'/><item type='gem' offset='15' height='30' value='1'/><item type='gem' offset='15' height='26' value='1'/><item type='gem' offset='15' height='22' value='1'/><item type='gem' offset='68' height='5' value='2'/></items>\t\t<spans><span type='ground' begin='7' end='11' height='3'/><span type='ground' begin='10' end='14' height='6'/><span type='ground' begin='13' end='22' height='3'/><span type='water' begin='45' end='55' /><span type='ground' begin='40' end='45' height='3'/><span type='ground' begin='55' end='59' height='19'/><span type='ground' begin='80' end='90' height='3'/><span type='ground' begin='87' end='93' height='9'/><span type='ground' begin='91' end='95' height='15'/><span type='ground' begin='95' end='102.4' height='20'/><!--<span type='ground' begin='99' end='102.5' height='24'/>--></spans><gizmos><gizmo type='goal' offset='100'/></gizmos></ground><platforms><!--<platform x='45' y='2' width='10' appearance='grass' bottomCollision='true'><spans><span type='water' begin='0' end='10' height='1'/></spans></platform>--><platform x='20' y='39' width='10' appearance='grass'><gizmos><gizmo type='vine' offset='6' length='30' coiled='true'/><gizmo type='firespout' offset='2' behavior='pulse' ontime='2' offtime='2' starttime='1'/></gizmos></platform><platform x='35' y='30' width='9' appearance='grass'/>\t\t\t\t\t<platform x='45' y='40' width='13' appearance='grass'><gizmos><gizmo type='vine' offset='4' length='20' coiled='false'/></gizmos></platform><platform x='46' y='14' width='6' appearance='grass'/><platform x='66' y='44' width='8' appearance='grass'/><platform x='55' y='20' width='12' appearance='grass'><gizmos><gizmo type='vine' offset='8' length='10' coiled='false'/><gizmo type='firespout' offset='2' behavior='pulse' ontime='2' offtime='2' starttime='0'/></gizmos></platform><platform x='79' y='35' width='9' appearance='grass'><gizmos><gizmo type='firespout' offset='3' behavior='pulse' ontime='2' offtime='2' starttime='1'/></gizmos><items><item type='gem' offset='3' height='8' value='1'/><item type='gem' offset='3' height='5' value='1'/><item type='gem' offset='3' height='2' value='1'/></items></platform></platforms><mobs><mob type='rous' platform='ground' offset='30' /><mob type='rous' platform='ground' offset='75' /></mobs></room></rooms>\t<players><player id='westley' room='1' platform='ground' offset='5' /><player id='buttercup' room='1' platform='ground' offset='3' /></players></princess_bride_fire_swamp_level>"); return (_local1); } } }//package com.wwb.princessbride.fire_swamp
Section 256
//LevelDataClass3 (com.wwb.princessbride.fire_swamp.LevelDataClass3) package com.wwb.princessbride.fire_swamp { public class LevelDataClass3 { public static function getXML():XML{ var _local1:XML; _local1 = new XML(); _local1.ignoreComments = false; _local1.ignoreProcessingInstructions = false; _local1.ignoreWhitespace = true; _local1 = XML("<princess_bride_fire_swamp_level background='level3b' name='Moving Boulders'><rooms><!-- level 7 - 1 - boulders --><room pos='1' time='30'><ground y='1' appearance='grass'><spans><span type='ground' begin='0' end='30' height='20'/><span type='ground' begin='30' end='38' height='5'/><span type='ground' begin='38' end='50' height='20'/><span type='ground' begin='80' end='90' height='20'/><span type='ground' begin='50' end='55' height='5'/><span type='water' begin='90' end='95' height='1'/></spans>\t\t<items><item type='gem' offset='33' height='10' value='1'/><item type='gem' offset='85' height='10' value='2'/></items><gizmos><gizmo type='goal' offset='100'/></gizmos></ground><platforms>\t\t\t\t\t\t\t<platform appearance='grass' x='15' y='30' width='10' bottomCollision='true'><spans>\t<span type='ground' begin='0' end='10' height='10'/></spans>\t\t\t\t\t</platform><platform appearance='fire' x='30' y='7' width='10'><spans>\t<span type='fire' begin='0' end='10' height='10'/></spans>\t\t\t\t\t</platform><platform appearance='grass' x='40' y='30' width='10' bottomCollision='true'><items>\t<item type='multiplier' offset='2' height='2'/>\t<item type='gem' offset='7' height='2' value='1'/>\t\t\t\t\t\t</items><spans>\t<span type='ground' begin='0' end='10' height='10'/></spans>\t\t\t\t\t</platform>\t<platform appearance='grass' x='60' y='30' width='15'><items>\t<item type='gem' offset='2' height='2' value='1'/>\t<item type='gem' offset='13' height='2' value='1'/></items><gizmos>\t<gizmo type='vine' offset='7' length='20' coiled='true'/></gizmos></platform>\t<platform appearance='grass' x='30' y='30' width='5' /><platform appearance='grass' x='30' y='40' width='5' /><platform appearance='grass' x='50' y='14' width='5' /></platforms><mobs><mob type='boulder' platform='ground' offset='20' /><mob type='boulder' platform='ground' offset='34' /><mob type='rous' platform='ground' offset='60' /><mob type='rous' platform='ground' offset='70' /></mobs></room></rooms>\t<players><!--\t<player id='westley' room='1' platform='npcStart' offset='10' /><player id='buttercup' room='1' platform='npcStart' offset='5' />-->\t<player id='westley' room='1' platform='ground' offset='10' /><player id='buttercup' room='1' platform='ground' offset='5' /></players></princess_bride_fire_swamp_level>"); return (_local1); } } }//package com.wwb.princessbride.fire_swamp
Section 257
//LevelDataClass4 (com.wwb.princessbride.fire_swamp.LevelDataClass4) package com.wwb.princessbride.fire_swamp { public class LevelDataClass4 { public static function getXML():XML{ var _local1:XML; _local1 = new XML(); _local1.ignoreComments = false; _local1.ignoreProcessingInstructions = false; _local1.ignoreWhitespace = true; _local1 = XML("<princess_bride_fire_swamp_level background='level4b'><rooms><!-- level 9 new - 1 simple bridge --><room pos='1'><ground y='1' appearance='grass'><items><item type='gem' offset='16' height='5'/><item type='gem' offset='30' height='1'/><item type='gem' offset='33' height='1'/><item type='gem' offset='73' height='13'/><item type='gem' offset='71' height='24'/><item type='gem' offset='75' height='24'/><item type='gem' offset='71' height='1'/><item type='gem' offset='75' height='1'/></items><spans><span type='ground' begin='15' end='20' height='8'/><span type='water' begin='60' end='65' height='1'/><span type='water' begin='67' end='72' height='1'/><span type='ground' begin='96' end='102.4' height='20'/></spans><gizmos><gizmo type='goal' offset='100'/></gizmos></ground><platforms><platform x='20' y='8' width='7' appearance='grass' bottomCollision='true'><spans><span type='ground' begin='0' end='7' height='5'></span></spans></platform><platform x='27' y='13' width='9' appearance='grass' bottomCollision='true'><spans><span type='ground' begin='0' end='9' height='5'></span></spans></platform><platform x='35' y='16' width='3' appearance='grass' bottomCollision='true'><spans><span type='ground' begin='0' end='3' height='16'></span></spans></platform><platform x='7' y='32' width='30' appearance='grass'><gizmos><gizmo type='vine' offset='3' length='21' coiled='true'/><gizmo type='vine' offset='15' length='10' coiled='false'/><gizmo type='switch' offset='20' toggle='false' event='openbridge' color='0x990000'/><gizmo type='bridge' offset='30' dir='right' closed='true' toggleevent='openbridge' color='0x990000'/></gizmos></platform><platform x='65' y='24' width='3' appearance='grass' bottomCollision='true'><spans><span type='ground' begin='0' end='3' height='15'></span></spans></platform><platform x='60' y='24' width='6' appearance='grass' bottomCollision='true'></platform><platform x='65' y='0' width='3' appearance='grass' bottomCollision='true'><spans><span type='ground' begin='0' end='3' height='12'></span></spans></platform><platform x='45' y='6' width='5' appearance='grass' bottomCollision='true'></platform><platform x='50' y='12' width='3' appearance='grass' bottomCollision='true'><gizmos><gizmo type='bridge' offset='3' dir='right' closed='true' toggleevent='openbridge2' color='0x1099EA'/></gizmos></platform><platform x='38' y='18' width='5' appearance='grass' bottomCollision='true'><gizmos><gizmo type='switch' offset='3' toggle='false' event='openbridge2' color='0x1099EA'/></gizmos></platform><platform x='66' y='10' width='15' appearance='grass' bottomCollision='false'/><platform x='87' y='18' width='7' appearance='grass' bottomCollision='true'><gizmos><gizmo type='vine' offset='3' length='10' coiled='true'/></gizmos></platform><platform x='66' y='24' width='13' appearance='grass' bottomCollision='true'></platform><platform x='45' y='23' width='8' appearance='grass' bottomCollision='true'><gizmos><gizmo type='vine' offset='2' length='10' coiled='false'/></gizmos></platform></platforms><mobs><mob type='rous' platform='ground' orientation='center' /><mob type='rous' platform='ground' offset='80' /></mobs></room></rooms><players><player id='westley' room='1' platform='ground' offset='10' /><player id='buttercup' room='1' platform='ground' offset='5' /><!--<player id='westley' room='1' platform='npcStart' offset='10' /><player id='buttercup' room='1' platform='npcStart' offset='5' />--></players></princess_bride_fire_swamp_level>"); return (_local1); } } }//package com.wwb.princessbride.fire_swamp
Section 258
//LevelDataClass5 (com.wwb.princessbride.fire_swamp.LevelDataClass5) package com.wwb.princessbride.fire_swamp { public class LevelDataClass5 { public static function getXML():XML{ var _local1:XML; _local1 = new XML(); _local1.ignoreComments = false; _local1.ignoreProcessingInstructions = false; _local1.ignoreWhitespace = true; _local1 = XML("<princess_bride_fire_swamp_level background='level5b'><rooms><!-- 9 - 1 - --><room pos='1'><ground y='1' appearance='grass'><items><item type='stick' platform='ground' offset='28' noreset='true'/><item type='gem' offset='33' height='10' value='1'/><item type='gem' offset='43' height='10' value='1'/><item type='gem' offset='53' height='10' value='1'/><item type='multiplier' offset='85' height='1'/></items><spans><span type='ground' begin='90' end='103.4' height='19'/></spans></ground><platforms>\t\t\t\t<platform x='20' y='20' width='45' appearance='grass' id='flyPlatform_01'></platform><platform x='75' y='20' width='27' appearance='grass'><gizmos><gizmo type='goal' offset='23'/></gizmos></platform><platform x='9' y='35' width='6' appearance='grass'><gizmos><gizmo type='vine' offset='5' length='10' coiled='false' />\t</gizmos></platform><platform x='30' y='35' width='33' appearance='grass' id='flyPlatform_02'><items><item type='gem' offset='15' height='2' value='2'/></items></platform><platform x='70' y='43' width='8' appearance='grass'><gizmos><gizmo type='vine' offset='5' length='35' coiled='true' />\t</gizmos></platform><platform x='66' y='10' width='6' appearance='grass'/><platform x='20' y='40' width='4' appearance='grass'/></platforms><mobs><mob type='flyingrous' platform='flyPlatform_01' offset='15' height='0'/><mob type='flyingrous' platform='flyPlatform_02' offset='20' height='0'/></mobs></room></rooms><players><!--<player id='westley' room='1' platform='npcStart' offset='10' /><player id='buttercup' room='1' platform='npcStart' offset='5' />--><player id='westley' room='1' platform='ground' offset='7' /><player id='buttercup' room='1' platform='ground' offset='4' /></players></princess_bride_fire_swamp_level>"); return (_local1); } } }//package com.wwb.princessbride.fire_swamp
Section 259
//MultiEventTracker (com.wwb.princessbride.fire_swamp.MultiEventTracker) package com.wwb.princessbride.fire_swamp { import com.workinman.lib.events.*; import com.workinman.lib.utils.*; import com.wwb.princessbride.fire_swamp.events.*; public class MultiEventTracker { private var _loop:Number; private var _multiEvents:Array; private static var _instance:MultiEventTracker; public function MultiEventTracker():void{ } private function _onMultiSwitchActivate(_arg1:EData):void{ var _local2:Boolean; _loop = _multiEvents.length; while (_loop--) { if (_multiEvents[_loop].event == _arg1.data.event){ _local2 = _multiEvents[_loop].isActivated; if (_arg1.data.on){ _multiEvents[_loop].trigger(); } else { _multiEvents[_loop].detrigger(); }; if (_multiEvents[_loop].isActivated){ WorkinDispatcher.getInstance().getRoom(FireSwampConfig.ROOM_TRIGGERS).dispatchEvent(new ETrigger(_arg1.data.event, true)); } else { if (((_local2) && (!(_multiEvents[_loop].isActivated)))){ WorkinDispatcher.getInstance().getRoom(FireSwampConfig.ROOM_TRIGGERS).dispatchEvent(new ETrigger(_arg1.data.event, false)); }; }; return; }; }; } private function _update(_arg1:EUpdate):void{ } private function _onMultiSwitchRemove(_arg1:EData):void{ var _local2:Boolean; _loop = _multiEvents.length; _local2 = false; while (((!(_local2)) && (_loop--))) { if (_multiEvents[_loop].event == _arg1.data.event){ _local2 = true; }; }; if (_local2){ _multiEvents[_loop].decrement(); if (_multiEvents[_loop].count <= 0){ _multiEvents.splice(_loop, 1); }; }; } public function init():void{ _multiEvents = []; Updater.getInstance().addEventListener(Updater.EVENT_UPDATE, _update); WorkinDispatcher.getInstance().getRoom(FireSwampConfig.ROOM_TRIGGERS).addEventListener(FireSwampConfig.EVENT_ANNOUNCE_MULTI_SWITCH, _onMultiSwitchAnnounce); WorkinDispatcher.getInstance().getRoom(FireSwampConfig.ROOM_TRIGGERS).addEventListener(FireSwampConfig.EVENT_REMOVE_MULTI_SWITCH, _onMultiSwitchRemove); WorkinDispatcher.getInstance().getRoom(FireSwampConfig.ROOM_TRIGGERS).addEventListener(FireSwampConfig.EVENT_ACTIVATE_MULTI_SWITCH, _onMultiSwitchActivate); } private function _onMultiSwitchAnnounce(_arg1:EData):void{ var _local2:Boolean; _loop = _multiEvents.length; _local2 = false; while (((!(_local2)) && (_loop--))) { if (_multiEvents[_loop].event == _arg1.data.event){ _local2 = true; }; }; if (_local2){ _multiEvents[_loop].increment(); } else { _multiEvents.push(new MultiEventObject(_arg1.data.event)); }; } public static function getInstance():MultiEventTracker{ if (_instance == null){ _instance = new (MultiEventTracker); _instance.init(); }; return (_instance); } } }//package com.wwb.princessbride.fire_swamp
Section 260
//PlayerAppearanceManager (com.wwb.princessbride.fire_swamp.PlayerAppearanceManager) package com.wwb.princessbride.fire_swamp { public class PlayerAppearanceManager { private static var _buttercupFacingLeft:Boolean; public static var EVENT_BUTTERCUP_APPEARANCE_CHANGE:String = "onButtercupAppearanceChange"; private static var _westleySwordLeft:Boolean; private static var _westleyFacingLeft:Boolean; private static var _buttercupArmed:Boolean; public static var EVENT_WESTLEY_APPEARANCE_CHANGE:String = "onWestleyAppearanceChange"; public static function getWestleySwordLeft():Boolean{ return (_westleySwordLeft); } public static function getWestleyFacingLeft():Boolean{ return (_westleyFacingLeft); } public static function getButtercupFacingLeft():Boolean{ return (_buttercupFacingLeft); } public static function set westleyFacingLeft(_arg1:Boolean){ _westleyFacingLeft = _arg1; } public static function set westleySwordLeft(_arg1:Boolean){ _westleySwordLeft = _arg1; } public static function getButtercupArmed():Boolean{ return (_buttercupArmed); } public static function set buttercupArmed(_arg1:Boolean){ _buttercupArmed = _arg1; } public static function set buttercupFacingLeft(_arg1:Boolean){ _buttercupFacingLeft = _arg1; } } }//package com.wwb.princessbride.fire_swamp
Section 261
//SoundLoader (com.wwb.princessbride.fire_swamp.SoundLoader) package com.wwb.princessbride.fire_swamp { import com.workinman.lib.sound.*; public class SoundLoader { public static function loadSounds():void{ var _local1:SoundManager; var _local2:VoiceManager; _local1 = GlobalSound.getInstance(); _local1.addSound("music1", fs_gamemusic_level1v1m); _local1.addSound("music2", fs_gamemusic_level2v1m); _local1.addSound("music3", fs_gamemusic_level3v1m); _local1.registerSound("portal", Portal_Use); _local1.registerSound("landPoison", land_cartoony); _local1.registerSound("dewPickup", Projectile_Bottle_PU); _local1.registerSound("dewHit", sfx_bottle_hit); _local1.registerSound("throw", sfx_bottle_throw_alt); _local1.registerSound("crumbsPickup", sfx_crumbs_pickup); _local1.registerSound("crumbsHit", sfx_crumbs_hit_alt); _local1.registerSound("push", sfx_boulder_alt); _local1.registerSound("boulderLand", bouldercrash); _local1.registerSound("firespoutOn", FireSpout_On); _local1.registerSound("firespoutOff", FireSpout_Off); _local1.registerSound("gemPickup1", Gem1_PU_alt5_2); _local1.registerSound("gemPickup2", Gem1_PU_alt5); _local1.registerSound("gemPickup3", Gem1_PU_alt5_3); _local1.registerSound("multPickup", sfx_multiplier); _local1.registerSound("jumpWestley1", jump_natural); _local1.registerSound("jumpWestley2", jump_natural_alt); _local1.registerSound("landWestley", land_natural); _local1.registerSound("jumpButtercup1", sfx_Butter_jump_takeoff_2); _local1.registerSound("jumpButtercup2", sfx_Butter_jump_takeoff_5); _local1.registerSound("landButtercup", sfx_Butter_jump_takeoff_1); _local1.registerSound("climbVine", Vine_Climb); _local1.registerSound("dropVine", sfx_vine_release_alt2); _local1.registerSound("attackMiss", sfx_attack_miss); _local1.registerSound("attackHitSword", sfx_attack_sword); _local1.registerSound("attackHitStick", sfx_attack_stick); _local1.registerSound("bridgeUp", sfx_bridge_raise); _local1.registerSound("bridgeDown", sfx_bridge_lower); _local1.registerSound("rousFly", safx_rous_fly); _local1.registerSound("rousAttack", sfx_rous_attack); _local1.registerSound("rousDeath1", sfx_rous_death); _local1.registerSound("rousDeath2", sfx_rous_death_alt); _local1.registerSound("rousDive", sfx_rous_dive); _local1.registerSound("scoreCount", sfx_shell_score); _local1.registerSound("scoreBonus", sfx_shell_bonus); _local1.registerSound("charSelect", sfx_shell_select); _local2 = GlobalVoice.getInstance(); _local2.registerVO("voButtercupDamage1", fs_bcdamage); _local2.registerVO("voButtercupDamage2", fs_wesbcdamage01); _local2.registerVO("voButtercupDamage3", fs_wesbcdamage02); _local2.registerVO("voButtercupSwitch1", fs_bcswitch); _local2.registerVO("voButtercupSwitch2", fs_wesbcswitch02); _local2.registerVO("voWestleyKill", fs_weskill); _local2.registerVO("voWestleySwitch1", fs_wesswitch01); _local2.registerVO("voWestleySwitch2", fs_wesswitch02); _local2.registerVO("voWestleySwitch3", fs_wesswitch03); _local2.registerVO("voWestleySuccess1", fs_wessuccess01); _local2.registerVO("voWestleySuccess2", fs_wessuccess02); _local2.registerVO("voWestleySuccess3", fs_wessuccess03); _local2.registerVO("voWestleySuccess4", fs_wessuccess04); _local2.registerVO("voWestleySuccess5", fs_wessuccess05); _local2.registerVO("voWestleySuccess6", fs_wessuccess06); } } }//package com.wwb.princessbride.fire_swamp
Section 262
//_loadingscreen_1 (FireSwampBrowser_fla._loadingscreen_1) package FireSwampBrowser_fla { import flash.display.*; public dynamic class _loadingscreen_1 extends MovieClip { public var loadbar:MovieClip; } }//package FireSwampBrowser_fla
Section 263
//_preloader_6 (FireSwampBrowser_fla._preloader_6) package FireSwampBrowser_fla { import flash.display.*; public dynamic class _preloader_6 extends MovieClip { public function _preloader_6(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package FireSwampBrowser_fla
Section 264
//_preloaderAudio_261 (FireSwampBrowser_fla._preloaderAudio_261) package FireSwampBrowser_fla { import flash.display.*; public dynamic class _preloaderAudio_261 extends MovieClip { public function _preloaderAudio_261(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package FireSwampBrowser_fla
Section 265
//bonus_anim_232 (FireSwampBrowser_fla.bonus_anim_232) package FireSwampBrowser_fla { import flash.display.*; public dynamic class bonus_anim_232 extends MovieClip { public var txt_mc:MovieClip; public function bonus_anim_232(){ addFrameScript(1, frame2, 12, frame13); } function frame13(){ stop(); } function frame2(){ stop(); } } }//package FireSwampBrowser_fla
Section 266
//bonus_score_234 (FireSwampBrowser_fla.bonus_score_234) package FireSwampBrowser_fla { import flash.display.*; import flash.text.*; public dynamic class bonus_score_234 extends MovieClip { public var txt:TextField; } }//package FireSwampBrowser_fla
Section 267
//buynow_actual_buttonglint_moving_272 (FireSwampBrowser_fla.buynow_actual_buttonglint_moving_272) package FireSwampBrowser_fla { import flash.display.*; public dynamic class buynow_actual_buttonglint_moving_272 extends MovieClip { public function buynow_actual_buttonglint_moving_272(){ addFrameScript(32, frame33); } function frame33(){ stop(); } } }//package FireSwampBrowser_fla
Section 268
//color_coil_10 (FireSwampBrowser_fla.color_coil_10) package FireSwampBrowser_fla { import flash.display.*; public dynamic class color_coil_10 extends MovieClip { public var fill:MovieClip; } }//package FireSwampBrowser_fla
Section 269
//effectsparkle_modified_202 (FireSwampBrowser_fla.effectsparkle_modified_202) package FireSwampBrowser_fla { import flash.display.*; public dynamic class effectsparkle_modified_202 extends MovieClip { public function effectsparkle_modified_202(){ addFrameScript(8, frame9); } function frame9(){ stop(); } } }//package FireSwampBrowser_fla
Section 270
//gemsparkleeffect_217 (FireSwampBrowser_fla.gemsparkleeffect_217) package FireSwampBrowser_fla { import flash.display.*; public dynamic class gemsparkleeffect_217 extends MovieClip { public function gemsparkleeffect_217(){ addFrameScript(0, frame1, 23, frame24); } function frame1(){ stop(); } function frame24(){ stop(); } } }//package FireSwampBrowser_fla
Section 271
//gemui_215 (FireSwampBrowser_fla.gemui_215) package FireSwampBrowser_fla { import flash.display.*; public dynamic class gemui_215 extends MovieClip { public var sparkle:MovieClip; public function gemui_215(){ addFrameScript(1, frame2); } function frame2(){ stop(); } } }//package FireSwampBrowser_fla
Section 272
//MainTimeline (FireSwampBrowser_fla.MainTimeline) package FireSwampBrowser_fla { import com.wwb.princessbride.fire_swamp.*; import flash.events.*; import com.workinman.paradise.*; import com.workinman.lib.events.*; import flash.display.*; import com.workinman.lib.utils.*; import flash.media.*; import flash.net.*; import princessbride.events.*; import flash.text.*; import flash.geom.*; import flash.utils.*; import flash.ui.*; import flash.system.*; import flash.filters.*; import adobe.utils.*; import flash.accessibility.*; import flash.errors.*; import flash.external.*; import flash.printing.*; import flash.xml.*; public dynamic class MainTimeline extends MovieClip { public var tRatio:Number; public var loader:MovieClip; public var tBrowser:Boolean; public var tGameName:String; public var game_container:MovieClip; public var _timer:Timer; public var tIsDrawn:Boolean; public var tStandAlone:Boolean; public var tTimeline; public function MainTimeline(){ addFrameScript(0, frame1, 1, frame2); } public function _onEventRemoved(_arg1:Event):void{ } public function _onEventGameInit(_arg1:GameEvent):void{ GameState.getInstance().setConfigOption("naturalExit", String(_arg1.getNaturalExit())); tGameName = _arg1.getGameName(); tTimeline.beginGame(_arg1.getBasePath()); } public function _onRefocusStage(_arg1:Event):void{ stage.focus = this; } public function _timerHandler(_arg1:Event):void{ tRatio = (loaderInfo.bytesLoaded / loaderInfo.bytesTotal); loader.loadbar.width = (tRatio * 600); if (tRatio == 1){ _timer.removeEventListener("timer", _timerHandler); _timer.stop(); _timer = null; gotoAndStop(2); }; } public function _onEventGameStart(_arg1:GameEvent):void{ GameState.getInstance().setConfigOption("baseScore", String(_arg1.getScore())); WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.EVENT_START_GAME_AT_LEVEL, {level:(_arg1.getLevel() - 1)})); } public function exitGame(){ _removeEventListeners(); tTimeline.exitGame(); } public function _onKeyDown(_arg1:KeyboardEvent){ WorkinDispatcher.getInstance().dispatchEvent(new EData(ParadiseConfig.EVENT_KEY_DOWN, {keyCode:_arg1.keyCode, charCode:_arg1.charCode})); } public function _removeEventListeners():void{ if (tIsDrawn){ stage.removeEventListener(KeyboardEvent.KEY_DOWN, _onKeyDown); stage.removeEventListener(KeyboardEvent.KEY_UP, _onKeyUp); }; removeEventListener(GameEvent.INIT, _onEventGameInit); removeEventListener(GameEvent.START, _onEventGameStart); removeEventListener(Event.REMOVED_FROM_STAGE, _onEventRemoved); WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.SHELL_QUIT, _onShellQuit); WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.SHELL_MENU, _onShellMenu); WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.SHELL_HELP, _onShellHelp); WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.SHELL_MAP, _onShellMap); WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.EVENT_WIPE_LOAD, _onWipeLoad); WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.EVENT_WIPE_REMOVE, _onWipeRemove); WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.SHELL_OUTRO, _onShellOutro); WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.EVENT_GAME_LOAD_COMPLETE, _onEventGameReady); WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.EVENT_REPORT_LEVEL_COMPLETE_TO_SHELL, _onEventLevelComplete); WorkinDispatcher.getInstance().removeEventListener(FireSwampConfig.REFOCUS_STAGE, _onRefocusStage); } public function _addEventListeners():void{ addEventListener(GameEvent.INIT, _onEventGameInit); addEventListener(GameEvent.START, _onEventGameStart); addEventListener(Event.REMOVED_FROM_STAGE, _onEventRemoved); WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.SHELL_QUIT, _onShellQuit); WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.SHELL_MENU, _onShellMenu); WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.SHELL_HELP, _onShellHelp); WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.SHELL_MAP, _onShellMap); WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.SHELL_OUTRO, _onShellOutro); WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.EVENT_WIPE_LOAD, _onWipeLoad); WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.EVENT_WIPE_REMOVE, _onWipeRemove); WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.EVENT_GAME_LOAD_COMPLETE, _onEventGameReady); WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.EVENT_REPORT_LEVEL_COMPLETE_TO_SHELL, _onEventLevelComplete); WorkinDispatcher.getInstance().addEventListener(FireSwampConfig.REFOCUS_STAGE, _onRefocusStage); } public function _onWipeLoad(_arg1:EData):void{ addChild(_arg1.data.swf); } public function _onEventGameReady(_arg1:Event):void{ if (tStandAlone){ GameState.getInstance().setConfigOption("baseScore", "0"); GameState.getInstance().setConfigOption("naturalExit", "10"); WorkinDispatcher.getInstance().dispatchEvent(new EData(FireSwampConfig.EVENT_START_GAME_AT_LEVEL, {level:0})); } else { dispatchEvent(new GameEvent(GameEvent.READY)); }; } public function _onKeyUp(_arg1:KeyboardEvent){ WorkinDispatcher.getInstance().dispatchEvent(new EData(ParadiseConfig.EVENT_KEY_UP, {keyCode:_arg1.keyCode, charCode:_arg1.charCode})); } function frame2(){ tBrowser = true; tStandAlone = true; tIsDrawn = false; tGameName = ""; try { stage.addEventListener(KeyboardEvent.KEY_DOWN, _onKeyDown); stage.addEventListener(KeyboardEvent.KEY_UP, _onKeyUp); stage.focus = this; tIsDrawn = true; } catch(pError:Error) { addEventListener(Event.ADDED_TO_STAGE, _onDrawn); }; _addEventListeners(); tTimeline = new GameTimeline(tBrowser, tStandAlone); game_container.addChild(tTimeline); stop(); } public function _onEventLevelComplete(_arg1:EData):void{ if (tStandAlone){ return; }; dispatchEvent(new GameEvent(GameEvent.SAVE, _arg1.data.level, _arg1.data.score, tGameName)); } function frame1(){ _timer = new Timer(0, 0); _timer.addEventListener("timer", _timerHandler); _timer.start(); tRatio = 0; stop(); } public function _onShellHelp(_arg1:Event):void{ WorkinDispatcher.getInstance().dispatchEvent(new Event(FireSwampConfig.EVENT_SHOW_HELP)); } public function _onShellQuit(_arg1:Event):void{ exitGame(); dispatchEvent(new GameEvent(GameEvent.QUIT)); } public function _onShellMap(_arg1:Event):void{ exitGame(); dispatchEvent(new GameEvent(GameEvent.QUIT)); } public function _onWipeRemove(_arg1:EData):void{ removeChild(_arg1.data.swf); } public function _onDrawn(_arg1:Event){ stage.addEventListener(KeyboardEvent.KEY_DOWN, _onKeyDown); stage.addEventListener(KeyboardEvent.KEY_UP, _onKeyUp); stage.focus = this; tIsDrawn = true; removeEventListener(Event.ADDED_TO_STAGE, _onDrawn); } public function _onShellOutro(_arg1:Event):void{ exitGame(); dispatchEvent(new GameEvent(GameEvent.OUTRO)); } public function _onShellMenu(_arg1:Event):void{ WorkinDispatcher.getInstance().dispatchEvent(new Event(FireSwampConfig.EVENT_SHOW_PAUSE)); } } }//package FireSwampBrowser_fla
Section 273
//pr_branch_01_123 (FireSwampBrowser_fla.pr_branch_01_123) package FireSwampBrowser_fla { import flash.display.*; public dynamic class pr_branch_01_123 extends MovieClip { public var fill:MovieClip; } }//package FireSwampBrowser_fla
Section 274
//pr_button_01_130 (FireSwampBrowser_fla.pr_button_01_130) package FireSwampBrowser_fla { import flash.display.*; public dynamic class pr_button_01_130 extends MovieClip { public var fill:MovieClip; } }//package FireSwampBrowser_fla
Section 275
//score_header_229 (FireSwampBrowser_fla.score_header_229) package FireSwampBrowser_fla { import flash.display.*; public dynamic class score_header_229 extends MovieClip { public function score_header_229(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package FireSwampBrowser_fla
Section 276
//GameEvent (princessbride.events.GameEvent) package princessbride.events { import flash.events.*; public class GameEvent extends Event { private var level:Number; private var score:uint; private var basePath:String; private var gameName:String; private var naturalExit:Number; public static const START:String = "gameEventStart"; public static const READY:String = "gameEventReady"; public static const OUTRO:String = "gameEventOutro"; public static const QUIT:String = "gameEventQuit"; public static const INIT:String = "gameEventInit"; public static const FINISH:String = "gameEventFinish"; public static const SAVE:String = "gameEventSave"; public function GameEvent(_arg1:String, _arg2:Number=1, _arg3:uint=0, _arg4:String="", _arg5:String="", _arg6:Number=1.79769313486232E308, _arg7:Boolean=true, _arg8:Boolean=false){ super(_arg1, _arg7, _arg8); this.level = _arg2; this.score = _arg3; this.gameName = _arg4; this.basePath = _arg5; this.naturalExit = _arg6; } public function getBasePath():String{ return (basePath); } public function getGameName():String{ return (gameName); } public function getLevel():Number{ return (level); } public function getScore():uint{ return (score); } override public function toString():String{ return ((((((((((((("GameEvent[type:" + type) + ", level:") + level) + ", score:") + score) + ", gameName:") + gameName) + ", basePath:") + basePath) + ", naturalExit:") + naturalExit) + "]")); } override public function clone():Event{ return (new GameEvent(type, level, score, gameName, basePath, naturalExit, bubbles, cancelable)); } public function getNaturalExit():Number{ return (naturalExit); } } }//package princessbride.events
Section 277
//PBButton (princessbride.PBButton) package princessbride { import flash.display.*; public class PBButton extends SimpleButton { public function PBButton(_arg1:String){ upState = new ButtonDisplayState(_arg1, 0x2E2E2E); overState = new ButtonDisplayState(_arg1, 10992959); downState = overState; hitTestState = upState; } } }//package princessbride import flash.display.*; import flash.text.*; import flash.geom.*; class ButtonField extends TextField { private static const FMT:TextFormat = new TextFormat("Booter - One Zero", 20, 0xFFFFFF); private static const ALT_FMT:TextFormat = new TextFormat("Arial", 16, 0xFFFFFF); private function ButtonField(_arg1:String){ antiAliasType = AntiAliasType.ADVANCED; autoSize = TextFieldAutoSize.LEFT; defaultTextFormat = FMT; embedFonts = true; selectable = false; this.text = _arg1; if (textHeight == 0){ embedFonts = false; defaultTextFormat = ALT_FMT; setTextFormat(ALT_FMT); }; } override public function set text(_arg1:String):void{ super.text = _arg1.toUpperCase(); } override public function appendText(_arg1:String):void{ super.appendText(_arg1.toUpperCase()); } } class ButtonDisplayState extends Sprite { private static const VERT_PADDING:int = 24; private static const HORIZ_PADDING:int = 42; private function ButtonDisplayState(_arg1:String, _arg2:uint){ createLabel(_arg1); createBackground(_arg2); } private function createLabel(_arg1:String):void{ var _local2:ButtonField; _local2 = new ButtonField(_arg1); _local2.x = -((_local2.width / 2)); _local2.y = -((_local2.height / 2)); addChild(_local2); } private function createBackground(_arg1:uint):void{ var _local2:int; var _local3:int; var _local4:Shape; var _local5:Matrix; _local2 = (getChildAt(0).width + HORIZ_PADDING); _local3 = (getChildAt(0).height + VERT_PADDING); _local4 = new Shape(); _local4.graphics.lineStyle(2, _arg1, 1, true); _local4.graphics.beginFill(0, 1); _local4.graphics.drawRoundRect(-((_local2 / 2)), -((_local3 / 2)), _local2, _local3, _local3, _local3); _local4.graphics.endFill(); _local5 = new Matrix(); _local5.createGradientBox(_local2, (_local3 * 0.75), (Math.PI / 2), -((_local2 / 2)), -((_local3 / 2))); _local4.graphics.lineStyle(); _local4.graphics.beginGradientFill(GradientType.LINEAR, [0xFFFFFF, 0xFFFFFF], [0.22, 0], [0, 0xFF], _local5); _local4.graphics.drawRoundRect(-((_local2 / 2)), -((_local3 / 2)), _local2, _local3, _local3, _local3); _local4.graphics.endFill(); addChildAt(_local4, 0); } }
Section 278
//AssetArrowIdle (AssetArrowIdle) package { import flash.display.*; public dynamic class AssetArrowIdle extends MovieClip { } }//package
Section 279
//AssetArrowTarget (AssetArrowTarget) package { import flash.display.*; public dynamic class AssetArrowTarget extends MovieClip { } }//package
Section 280
//AssetBlackBottom (AssetBlackBottom) package { import flash.display.*; public dynamic class AssetBlackBottom extends MovieClip { } }//package
Section 281
//AssetBoulder (AssetBoulder) package { import flash.display.*; public dynamic class AssetBoulder extends MovieClip { } }//package
Section 282
//AssetBridgeClose (AssetBridgeClose) package { import flash.display.*; public dynamic class AssetBridgeClose extends MovieClip { public var color:MovieClip; public function AssetBridgeClose(){ addFrameScript(38, frame39); } function frame39(){ stop(); } } }//package
Section 283
//AssetBridgeIdleClose (AssetBridgeIdleClose) package { import flash.display.*; public dynamic class AssetBridgeIdleClose extends MovieClip { public var color:MovieClip; } }//package
Section 284
//AssetBridgeIdleOpen (AssetBridgeIdleOpen) package { import flash.display.*; public dynamic class AssetBridgeIdleOpen extends MovieClip { public var color:MovieClip; } }//package
Section 285
//AssetBridgeOpen (AssetBridgeOpen) package { import flash.display.*; public dynamic class AssetBridgeOpen extends MovieClip { public var color:MovieClip; public function AssetBridgeOpen(){ addFrameScript(41, frame42); } function frame42(){ stop(); } } }//package
Section 286
//AssetButtercupAim (AssetButtercupAim) package { import flash.display.*; public dynamic class AssetButtercupAim extends MovieClip { } }//package
Section 287
//AssetButtercupAttackJumpLeft (AssetButtercupAttackJumpLeft) package { import flash.display.*; public dynamic class AssetButtercupAttackJumpLeft extends MovieClip { public function AssetButtercupAttackJumpLeft(){ addFrameScript(10, frame11); } function frame11(){ stop(); } } }//package
Section 288
//AssetButtercupAttackJumpRight (AssetButtercupAttackJumpRight) package { import flash.display.*; public dynamic class AssetButtercupAttackJumpRight extends MovieClip { public function AssetButtercupAttackJumpRight(){ addFrameScript(10, frame11); } function frame11(){ stop(); } } }//package
Section 289
//AssetButtercupAttackLeft (AssetButtercupAttackLeft) package { import flash.display.*; public dynamic class AssetButtercupAttackLeft extends MovieClip { public function AssetButtercupAttackLeft(){ addFrameScript(19, frame20); } function frame20(){ stop(); } } }//package
Section 290
//AssetButtercupAttackRight (AssetButtercupAttackRight) package { import flash.display.*; public dynamic class AssetButtercupAttackRight extends MovieClip { public function AssetButtercupAttackRight(){ addFrameScript(19, frame20); } function frame20(){ stop(); } } }//package
Section 291
//AssetButtercupClimb (AssetButtercupClimb) package { import flash.display.*; public dynamic class AssetButtercupClimb extends MovieClip { } }//package
Section 292
//AssetButtercupClimbDown (AssetButtercupClimbDown) package { import flash.display.*; public dynamic class AssetButtercupClimbDown extends MovieClip { } }//package
Section 293
//AssetButtercupClimbTop (AssetButtercupClimbTop) package { import flash.display.*; public dynamic class AssetButtercupClimbTop extends MovieClip { public function AssetButtercupClimbTop(){ addFrameScript(5, frame6); } function frame6(){ stop(); } } }//package
Section 294
//AssetButtercupCrawl (AssetButtercupCrawl) package { import flash.display.*; public dynamic class AssetButtercupCrawl extends MovieClip { } }//package
Section 295
//AssetButtercupCrouch (AssetButtercupCrouch) package { import flash.display.*; public dynamic class AssetButtercupCrouch extends MovieClip { } }//package
Section 296
//AssetButtercupDamageFire (AssetButtercupDamageFire) package { import flash.display.*; public dynamic class AssetButtercupDamageFire extends MovieClip { } }//package
Section 297
//AssetButtercupDamageMelee (AssetButtercupDamageMelee) package { import flash.display.*; public dynamic class AssetButtercupDamageMelee extends MovieClip { } }//package
Section 298
//AssetButtercupDie (AssetButtercupDie) package { import flash.display.*; public dynamic class AssetButtercupDie extends MovieClip { } }//package
Section 299
//AssetButtercupEdge (AssetButtercupEdge) package { import flash.display.*; public dynamic class AssetButtercupEdge extends MovieClip { } }//package
Section 300
//AssetButtercupHold (AssetButtercupHold) package { import flash.display.*; public dynamic class AssetButtercupHold extends MovieClip { } }//package
Section 301
//AssetButtercupIdle (AssetButtercupIdle) package { import flash.display.*; public dynamic class AssetButtercupIdle extends MovieClip { } }//package
Section 302
//AssetButtercupIdleAnim (AssetButtercupIdleAnim) package { import flash.display.*; public dynamic class AssetButtercupIdleAnim extends MovieClip { } }//package
Section 303
//AssetButtercupJumpDown (AssetButtercupJumpDown) package { import flash.display.*; public dynamic class AssetButtercupJumpDown extends MovieClip { public function AssetButtercupJumpDown(){ addFrameScript(11, frame12); } function frame12(){ gotoAndPlay(7); } } }//package
Section 304
//AssetButtercupJumpLand (AssetButtercupJumpLand) package { import flash.display.*; public dynamic class AssetButtercupJumpLand extends MovieClip { } }//package
Section 305
//AssetButtercupJumpUp (AssetButtercupJumpUp) package { import flash.display.*; public dynamic class AssetButtercupJumpUp extends MovieClip { public function AssetButtercupJumpUp(){ addFrameScript(0, frame1, 14, frame15); } function frame15(){ gotoAndPlay(9); } function frame1(){ gotoAndPlay(8); } } }//package
Section 306
//AssetButtercupRun (AssetButtercupRun) package { import flash.display.*; public dynamic class AssetButtercupRun extends MovieClip { } }//package
Section 307
//AssetButtercupSlide (AssetButtercupSlide) package { import flash.display.*; public dynamic class AssetButtercupSlide extends MovieClip { } }//package
Section 308
//AssetButtercupSwingBack (AssetButtercupSwingBack) package { import flash.display.*; public dynamic class AssetButtercupSwingBack extends MovieClip { } }//package
Section 309
//AssetButtercupSwingFore (AssetButtercupSwingFore) package { import flash.display.*; public dynamic class AssetButtercupSwingFore extends MovieClip { } }//package
Section 310
//AssetButtercupThrow (AssetButtercupThrow) package { import flash.display.*; public dynamic class AssetButtercupThrow extends MovieClip { } }//package
Section 311
//AssetButtercupVictory (AssetButtercupVictory) package { import flash.display.*; public dynamic class AssetButtercupVictory extends MovieClip { } }//package
Section 312
//AssetDeathFlash (AssetDeathFlash) package { import flash.display.*; public dynamic class AssetDeathFlash extends MovieClip { public function AssetDeathFlash(){ addFrameScript(7, frame8); } function frame8(){ stop(); } } }//package
Section 313
//AssetEffectFireHeat (AssetEffectFireHeat) package { import flash.display.*; public dynamic class AssetEffectFireHeat extends MovieClip { } }//package
Section 314
//AssetEffectSparkle (AssetEffectSparkle) package { import flash.display.*; public dynamic class AssetEffectSparkle extends MovieClip { } }//package
Section 315
//AssetEffectWater (AssetEffectWater) package { import flash.display.*; public dynamic class AssetEffectWater extends MovieClip { } }//package
Section 316
//AssetFireSpanLarge1 (AssetFireSpanLarge1) package { import flash.display.*; public dynamic class AssetFireSpanLarge1 extends MovieClip { } }//package
Section 317
//AssetFireSpanLarge2 (AssetFireSpanLarge2) package { import flash.display.*; public dynamic class AssetFireSpanLarge2 extends MovieClip { } }//package
Section 318
//AssetFireSpanLarge3 (AssetFireSpanLarge3) package { import flash.display.*; public dynamic class AssetFireSpanLarge3 extends MovieClip { } }//package
Section 319
//AssetFireSpanSmall1 (AssetFireSpanSmall1) package { import flash.display.*; public dynamic class AssetFireSpanSmall1 extends MovieClip { } }//package
Section 320
//AssetFireSpanSmall2 (AssetFireSpanSmall2) package { import flash.display.*; public dynamic class AssetFireSpanSmall2 extends MovieClip { } }//package
Section 321
//AssetFireSpanSmall3 (AssetFireSpanSmall3) package { import flash.display.*; public dynamic class AssetFireSpanSmall3 extends MovieClip { } }//package
Section 322
//AssetFireSpoutIdleOff (AssetFireSpoutIdleOff) package { import flash.display.*; public dynamic class AssetFireSpoutIdleOff extends MovieClip { } }//package
Section 323
//AssetFireSpoutIdleOn (AssetFireSpoutIdleOn) package { import flash.display.*; public dynamic class AssetFireSpoutIdleOn extends MovieClip { } }//package
Section 324
//AssetFireSpoutOff (AssetFireSpoutOff) package { import flash.display.*; public dynamic class AssetFireSpoutOff extends MovieClip { public function AssetFireSpoutOff(){ addFrameScript(7, frame8); } function frame8(){ stop(); } } }//package
Section 325
//AssetFireSpoutOn (AssetFireSpoutOn) package { import flash.display.*; public dynamic class AssetFireSpoutOn extends MovieClip { public function AssetFireSpoutOn(){ addFrameScript(5, frame6); } function frame6(){ stop(); } } }//package
Section 326
//AssetFireTransition (AssetFireTransition) package { import com.workinman.lib.display.*; public dynamic class AssetFireTransition extends WorkinMovieClip { } }//package
Section 327
//AssetFlyRousAttack (AssetFlyRousAttack) package { import flash.display.*; public dynamic class AssetFlyRousAttack extends MovieClip { public function AssetFlyRousAttack(){ addFrameScript(26, frame27); } function frame27(){ stop(); } } }//package
Section 328
//AssetFlyRousDamage (AssetFlyRousDamage) package { import flash.display.*; public dynamic class AssetFlyRousDamage extends MovieClip { } }//package
Section 329
//AssetFlyRousDead (AssetFlyRousDead) package { import flash.display.*; public dynamic class AssetFlyRousDead extends MovieClip { public function AssetFlyRousDead(){ addFrameScript(22, frame23); } function frame23(){ stop(); } } }//package
Section 330
//AssetFlyRousDive (AssetFlyRousDive) package { import flash.display.*; public dynamic class AssetFlyRousDive extends MovieClip { } }//package
Section 331
//AssetFlyRousFly (AssetFlyRousFly) package { import flash.display.*; public dynamic class AssetFlyRousFly extends MovieClip { } }//package
Section 332
//AssetFlyRousPause (AssetFlyRousPause) package { import flash.display.*; public dynamic class AssetFlyRousPause extends MovieClip { } }//package
Section 333
//AssetGemIdle (AssetGemIdle) package { import flash.display.*; public dynamic class AssetGemIdle extends MovieClip { } }//package
Section 334
//AssetGemThreeIdle (AssetGemThreeIdle) package { import flash.display.*; public dynamic class AssetGemThreeIdle extends MovieClip { } }//package
Section 335
//AssetGemThreeVanish (AssetGemThreeVanish) package { import flash.display.*; public dynamic class AssetGemThreeVanish extends MovieClip { public function AssetGemThreeVanish(){ addFrameScript(24, frame25); } function frame25(){ stop(); } } }//package
Section 336
//AssetGemTwoIdle (AssetGemTwoIdle) package { import flash.display.*; public dynamic class AssetGemTwoIdle extends MovieClip { } }//package
Section 337
//AssetGemTwoVanish (AssetGemTwoVanish) package { import flash.display.*; public dynamic class AssetGemTwoVanish extends MovieClip { public function AssetGemTwoVanish(){ addFrameScript(24, frame25); } function frame25(){ stop(); } } }//package
Section 338
//AssetGemVanish (AssetGemVanish) package { import flash.display.*; public dynamic class AssetGemVanish extends MovieClip { public function AssetGemVanish(){ addFrameScript(24, frame25); } function frame25(){ stop(); } } }//package
Section 339
//AssetGoalIdle (AssetGoalIdle) package { import flash.display.*; public dynamic class AssetGoalIdle extends MovieClip { } }//package
Section 340
//AssetIntroWipe (AssetIntroWipe) package { import flash.events.*; import flash.display.*; public dynamic class AssetIntroWipe extends MovieClip { public var btn_play:SimpleButton; public function AssetIntroWipe(){ addFrameScript(178, frame179, 179, frame180, 308, frame309); } function frame180(){ play(); } function frame179(){ stop(); btn_play.addEventListener(MouseEvent.CLICK, onButtonClicked); } function frame309(){ dispatchEvent(new Event(Event.INIT)); stop(); } public function onButtonClicked(_arg1:MouseEvent):void{ this.nextFrame(); dispatchEvent(new Event(Event.COMPLETE)); btn_play.removeEventListener(MouseEvent.CLICK, onButtonClicked); } } }//package
Section 341
//AssetLeverDown (AssetLeverDown) package { import flash.display.*; public dynamic class AssetLeverDown extends MovieClip { public var color:MovieClip; } }//package
Section 342
//AssetLeverToDown (AssetLeverToDown) package { import flash.display.*; public dynamic class AssetLeverToDown extends MovieClip { public var color:MovieClip; public function AssetLeverToDown(){ addFrameScript(16, frame17); } function frame17(){ stop(); } } }//package
Section 343
//AssetLeverToUp (AssetLeverToUp) package { import flash.display.*; public dynamic class AssetLeverToUp extends MovieClip { public var color:MovieClip; public function AssetLeverToUp(){ addFrameScript(16, frame17); } function frame17(){ stop(); } } }//package
Section 344
//AssetLeverUp (AssetLeverUp) package { import flash.display.*; public dynamic class AssetLeverUp extends MovieClip { public var color:MovieClip; } }//package
Section 345
//AssetMultiplierHudFive (AssetMultiplierHudFive) package { import flash.display.*; public dynamic class AssetMultiplierHudFive extends MovieClip { } }//package
Section 346
//AssetMultiplierHudTen (AssetMultiplierHudTen) package { import flash.display.*; public dynamic class AssetMultiplierHudTen extends MovieClip { } }//package
Section 347
//AssetMultiplierHudTwo (AssetMultiplierHudTwo) package { import flash.display.*; public dynamic class AssetMultiplierHudTwo extends MovieClip { } }//package
Section 348
//AssetMultiplierIdleFive (AssetMultiplierIdleFive) package { import flash.display.*; public dynamic class AssetMultiplierIdleFive extends MovieClip { } }//package
Section 349
//AssetMultiplierIdleTen (AssetMultiplierIdleTen) package { import flash.display.*; public dynamic class AssetMultiplierIdleTen extends MovieClip { } }//package
Section 350
//AssetMultiplierIdleTwo (AssetMultiplierIdleTwo) package { import flash.display.*; public dynamic class AssetMultiplierIdleTwo extends MovieClip { } }//package
Section 351
//AssetMultiplierVanishFive (AssetMultiplierVanishFive) package { import flash.display.*; public dynamic class AssetMultiplierVanishFive extends MovieClip { public function AssetMultiplierVanishFive(){ addFrameScript(20, frame21); } function frame21(){ stop(); } } }//package
Section 352
//AssetMultiplierVanishTen (AssetMultiplierVanishTen) package { import flash.display.*; public dynamic class AssetMultiplierVanishTen extends MovieClip { public function AssetMultiplierVanishTen(){ addFrameScript(20, frame21); } function frame21(){ stop(); } } }//package
Section 353
//AssetMultiplierVanishTwo (AssetMultiplierVanishTwo) package { import flash.display.*; public dynamic class AssetMultiplierVanishTwo extends MovieClip { public function AssetMultiplierVanishTwo(){ addFrameScript(20, frame21); } function frame21(){ stop(); } } }//package
Section 354
//AssetPadDown (AssetPadDown) package { import flash.display.*; public dynamic class AssetPadDown extends MovieClip { public var color:MovieClip; } }//package
Section 355
//AssetPadToDown (AssetPadToDown) package { import flash.display.*; public dynamic class AssetPadToDown extends MovieClip { public var color:MovieClip; public function AssetPadToDown(){ addFrameScript(10, frame11); } function frame11(){ stop(); } } }//package
Section 356
//AssetPadToUp (AssetPadToUp) package { import flash.display.*; public dynamic class AssetPadToUp extends MovieClip { public var color:MovieClip; public function AssetPadToUp(){ addFrameScript(14, frame15); } function frame15(){ stop(); } } }//package
Section 357
//AssetPadUp (AssetPadUp) package { import flash.display.*; public dynamic class AssetPadUp extends MovieClip { public var color:MovieClip; } }//package
Section 358
//AssetRousAttack (AssetRousAttack) package { import flash.display.*; public dynamic class AssetRousAttack extends MovieClip { public function AssetRousAttack(){ addFrameScript(21, frame22); } function frame22(){ stop(); } } }//package
Section 359
//AssetRousDamage (AssetRousDamage) package { import flash.display.*; public dynamic class AssetRousDamage extends MovieClip { } }//package
Section 360
//AssetRousDead (AssetRousDead) package { import flash.display.*; public dynamic class AssetRousDead extends MovieClip { public function AssetRousDead(){ addFrameScript(25, frame26); } function frame26(){ stop(); } } }//package
Section 361
//AssetRousEat (AssetRousEat) package { import flash.display.*; public dynamic class AssetRousEat extends MovieClip { } }//package
Section 362
//AssetRousIdle (AssetRousIdle) package { import flash.display.*; public dynamic class AssetRousIdle extends MovieClip { } }//package
Section 363
//AssetRousPause (AssetRousPause) package { import flash.display.*; public dynamic class AssetRousPause extends MovieClip { } }//package
Section 364
//AssetRousRun (AssetRousRun) package { import flash.display.*; public dynamic class AssetRousRun extends MovieClip { } }//package
Section 365
//AssetRousSlide (AssetRousSlide) package { import flash.display.*; public dynamic class AssetRousSlide extends MovieClip { } }//package
Section 366
//AssetRousWalk (AssetRousWalk) package { import flash.display.*; public dynamic class AssetRousWalk extends MovieClip { } }//package
Section 367
//AssetScoreEffect (AssetScoreEffect) package { import flash.display.*; import flash.text.*; public dynamic class AssetScoreEffect extends MovieClip { public var txt:TextField; } }//package
Section 368
//AssetStickIdle (AssetStickIdle) package { import flash.display.*; public dynamic class AssetStickIdle extends MovieClip { } }//package
Section 369
//AssetStickVanish (AssetStickVanish) package { import flash.display.*; public dynamic class AssetStickVanish extends MovieClip { public function AssetStickVanish(){ addFrameScript(7, frame8); } function frame8(){ stop(); } } }//package
Section 370
//AssetTutorial1 (AssetTutorial1) package { import flash.display.*; public dynamic class AssetTutorial1 extends MovieClip { } }//package
Section 371
//AssetTutorial2 (AssetTutorial2) package { import flash.display.*; public dynamic class AssetTutorial2 extends MovieClip { } }//package
Section 372
//AssetTutorial3 (AssetTutorial3) package { import flash.display.*; public dynamic class AssetTutorial3 extends MovieClip { } }//package
Section 373
//AssetTutorial4 (AssetTutorial4) package { import flash.display.*; public dynamic class AssetTutorial4 extends MovieClip { } }//package
Section 374
//AssetTutorial5 (AssetTutorial5) package { import flash.display.*; public dynamic class AssetTutorial5 extends MovieClip { } }//package
Section 375
//AssetTutorialShell (AssetTutorialShell) package { import flash.display.*; public dynamic class AssetTutorialShell extends MovieClip { public var mcBlockBack:MovieClip; } }//package
Section 376
//AssetWaterSpanLarge1 (AssetWaterSpanLarge1) package { import flash.display.*; public dynamic class AssetWaterSpanLarge1 extends MovieClip { } }//package
Section 377
//AssetWaterSpanLarge2 (AssetWaterSpanLarge2) package { import flash.display.*; public dynamic class AssetWaterSpanLarge2 extends MovieClip { } }//package
Section 378
//AssetWaterSpanLarge3 (AssetWaterSpanLarge3) package { import flash.display.*; public dynamic class AssetWaterSpanLarge3 extends MovieClip { } }//package
Section 379
//AssetWaterSpanSmall1 (AssetWaterSpanSmall1) package { import flash.display.*; public dynamic class AssetWaterSpanSmall1 extends MovieClip { } }//package
Section 380
//AssetWaterSpanSmall2 (AssetWaterSpanSmall2) package { import flash.display.*; public dynamic class AssetWaterSpanSmall2 extends MovieClip { } }//package
Section 381
//AssetWaterSpanSmall3 (AssetWaterSpanSmall3) package { import flash.display.*; public dynamic class AssetWaterSpanSmall3 extends MovieClip { } }//package
Section 382
//AssetWestleyAim (AssetWestleyAim) package { import flash.display.*; public dynamic class AssetWestleyAim extends MovieClip { } }//package
Section 383
//AssetWestleyAttackJumpLeft (AssetWestleyAttackJumpLeft) package { import flash.display.*; public dynamic class AssetWestleyAttackJumpLeft extends MovieClip { public function AssetWestleyAttackJumpLeft(){ addFrameScript(9, frame10); } function frame10(){ stop(); } } }//package
Section 384
//AssetWestleyAttackJumpRight (AssetWestleyAttackJumpRight) package { import flash.display.*; public dynamic class AssetWestleyAttackJumpRight extends MovieClip { public function AssetWestleyAttackJumpRight(){ addFrameScript(9, frame10); } function frame10(){ stop(); } } }//package
Section 385
//AssetWestleyAttackLeft (AssetWestleyAttackLeft) package { import flash.display.*; public dynamic class AssetWestleyAttackLeft extends MovieClip { public function AssetWestleyAttackLeft(){ addFrameScript(13, frame14); } function frame14(){ stop(); } } }//package
Section 386
//AssetWestleyAttackRight (AssetWestleyAttackRight) package { import flash.display.*; public dynamic class AssetWestleyAttackRight extends MovieClip { public function AssetWestleyAttackRight(){ addFrameScript(13, frame14); } function frame14(){ stop(); } } }//package
Section 387
//AssetWestleyClimb (AssetWestleyClimb) package { import flash.display.*; public dynamic class AssetWestleyClimb extends MovieClip { } }//package
Section 388
//AssetWestleyClimbTop (AssetWestleyClimbTop) package { import flash.display.*; public dynamic class AssetWestleyClimbTop extends MovieClip { public function AssetWestleyClimbTop(){ addFrameScript(5, frame6); } function frame6(){ stop(); } } }//package
Section 389
//AssetWestleyCrouch (AssetWestleyCrouch) package { import flash.display.*; public dynamic class AssetWestleyCrouch extends MovieClip { } }//package
Section 390
//AssetWestleyDamageFire (AssetWestleyDamageFire) package { import flash.display.*; public dynamic class AssetWestleyDamageFire extends MovieClip { } }//package
Section 391
//AssetWestleyDamageMelee (AssetWestleyDamageMelee) package { import flash.display.*; public dynamic class AssetWestleyDamageMelee extends MovieClip { } }//package
Section 392
//AssetWestleyDie (AssetWestleyDie) package { import flash.display.*; public dynamic class AssetWestleyDie extends MovieClip { } }//package
Section 393
//AssetWestleyEdge (AssetWestleyEdge) package { import flash.display.*; public dynamic class AssetWestleyEdge extends MovieClip { } }//package
Section 394
//AssetWestleyHold (AssetWestleyHold) package { import flash.display.*; public dynamic class AssetWestleyHold extends MovieClip { } }//package
Section 395
//AssetWestleyIdle (AssetWestleyIdle) package { import flash.display.*; public dynamic class AssetWestleyIdle extends MovieClip { } }//package
Section 396
//AssetWestleyIdleAnim (AssetWestleyIdleAnim) package { import flash.display.*; public dynamic class AssetWestleyIdleAnim extends MovieClip { } }//package
Section 397
//AssetWestleyJumpDown (AssetWestleyJumpDown) package { import flash.display.*; public dynamic class AssetWestleyJumpDown extends MovieClip { public function AssetWestleyJumpDown(){ addFrameScript(11, frame12); } function frame12(){ gotoAndPlay(7); } } }//package
Section 398
//AssetWestleyJumpLand (AssetWestleyJumpLand) package { import flash.display.*; public dynamic class AssetWestleyJumpLand extends MovieClip { } }//package
Section 399
//AssetWestleyJumpUp (AssetWestleyJumpUp) package { import flash.display.*; public dynamic class AssetWestleyJumpUp extends MovieClip { public function AssetWestleyJumpUp(){ addFrameScript(0, frame1, 13, frame14); } function frame14(){ gotoAndPlay(9); } function frame1(){ gotoAndPlay(8); } } }//package
Section 400
//AssetWestleyPush (AssetWestleyPush) package { import flash.display.*; public dynamic class AssetWestleyPush extends MovieClip { } }//package
Section 401
//AssetWestleyRun (AssetWestleyRun) package { import flash.display.*; public dynamic class AssetWestleyRun extends MovieClip { } }//package
Section 402
//AssetWestleySlide (AssetWestleySlide) package { import flash.display.*; public dynamic class AssetWestleySlide extends MovieClip { } }//package
Section 403
//AssetWestleySwingBack (AssetWestleySwingBack) package { import flash.display.*; public dynamic class AssetWestleySwingBack extends MovieClip { } }//package
Section 404
//AssetWestleySwingFore (AssetWestleySwingFore) package { import flash.display.*; public dynamic class AssetWestleySwingFore extends MovieClip { } }//package
Section 405
//AssetWestleySwitch (AssetWestleySwitch) package { import flash.display.*; public dynamic class AssetWestleySwitch extends MovieClip { public function AssetWestleySwitch(){ addFrameScript(9, frame10); } function frame10(){ stop(); } } }//package
Section 406
//AssetWestleyThrow (AssetWestleyThrow) package { import flash.display.*; public dynamic class AssetWestleyThrow extends MovieClip { } }//package
Section 407
//AssetWestleyVictory (AssetWestleyVictory) package { import flash.display.*; public dynamic class AssetWestleyVictory extends MovieClip { } }//package
Section 408
//AssetVineCoiled (AssetVineCoiled) package { import flash.display.*; public dynamic class AssetVineCoiled extends MovieClip { } }//package
Section 409
//AssetVineIdle (AssetVineIdle) package { import flash.display.*; public dynamic class AssetVineIdle extends MovieClip { } }//package
Section 410
//bg_swamp_fog (bg_swamp_fog) package { import flash.display.*; public dynamic class bg_swamp_fog extends MovieClip { } }//package
Section 411
//bg_swamp_horizon (bg_swamp_horizon) package { import flash.display.*; public dynamic class bg_swamp_horizon extends MovieClip { } }//package
Section 412
//bg_swamp_mid (bg_swamp_mid) package { import flash.display.*; public dynamic class bg_swamp_mid extends MovieClip { } }//package
Section 413
//Booter (Booter) package { import flash.text.*; public dynamic class Booter extends Font { } }//package
Section 414
//bouldercrash (bouldercrash) package { import flash.media.*; public dynamic class bouldercrash extends Sound { } }//package
Section 415
//buynow_actual_buttonBuyNow (buynow_actual_buttonBuyNow) package { import com.wwb.princessbride.fire_swamp.ui.interfaces.*; public dynamic class buynow_actual_buttonBuyNow extends ButtonBuyNow { } }//package
Section 416
//buynow_btn_next (buynow_btn_next) package { import com.wwb.princessbride.fire_swamp.ui.interfaces.*; public dynamic class buynow_btn_next extends ButtonBuyNow { } }//package
Section 417
//Fire_boulder_idle (Fire_boulder_idle) package { import flash.display.*; public dynamic class Fire_boulder_idle extends MovieClip { } }//package
Section 418
//FireSpout_Off (FireSpout_Off) package { import flash.media.*; public dynamic class FireSpout_Off extends Sound { } }//package
Section 419
//FireSpout_On (FireSpout_On) package { import flash.media.*; public dynamic class FireSpout_On extends Sound { } }//package
Section 420
//fs_bcdamage (fs_bcdamage) package { import flash.media.*; public dynamic class fs_bcdamage extends Sound { } }//package
Section 421
//fs_bcswitch (fs_bcswitch) package { import flash.media.*; public dynamic class fs_bcswitch extends Sound { } }//package
Section 422
//fs_bg0004 (fs_bg0004) package { import flash.display.*; public dynamic class fs_bg0004 extends MovieClip { } }//package
Section 423
//fs_bg0007 (fs_bg0007) package { import flash.display.*; public dynamic class fs_bg0007 extends MovieClip { } }//package
Section 424
//fs_bg0008 (fs_bg0008) package { import flash.display.*; public dynamic class fs_bg0008 extends MovieClip { } }//package
Section 425
//fs_bg0012 (fs_bg0012) package { import flash.display.*; public dynamic class fs_bg0012 extends MovieClip { } }//package
Section 426
//fs_bg0022 (fs_bg0022) package { import flash.display.*; public dynamic class fs_bg0022 extends MovieClip { } }//package
Section 427
//fs_fg0004 (fs_fg0004) package { import flash.display.*; public dynamic class fs_fg0004 extends MovieClip { } }//package
Section 428
//fs_fg0007 (fs_fg0007) package { import flash.display.*; public dynamic class fs_fg0007 extends MovieClip { } }//package
Section 429
//fs_fg0008 (fs_fg0008) package { import flash.display.*; public dynamic class fs_fg0008 extends MovieClip { } }//package
Section 430
//fs_fg0012 (fs_fg0012) package { import flash.display.*; public dynamic class fs_fg0012 extends MovieClip { } }//package
Section 431
//fs_fg0022 (fs_fg0022) package { import flash.display.*; public dynamic class fs_fg0022 extends MovieClip { } }//package
Section 432
//fs_gamemusic_level1v1m (fs_gamemusic_level1v1m) package { import flash.media.*; public dynamic class fs_gamemusic_level1v1m extends Sound { } }//package
Section 433
//fs_gamemusic_level2v1m (fs_gamemusic_level2v1m) package { import flash.media.*; public dynamic class fs_gamemusic_level2v1m extends Sound { } }//package
Section 434
//fs_gamemusic_level3v1m (fs_gamemusic_level3v1m) package { import flash.media.*; public dynamic class fs_gamemusic_level3v1m extends Sound { } }//package
Section 435
//fs_wesbcdamage01 (fs_wesbcdamage01) package { import flash.media.*; public dynamic class fs_wesbcdamage01 extends Sound { } }//package
Section 436
//fs_wesbcdamage02 (fs_wesbcdamage02) package { import flash.media.*; public dynamic class fs_wesbcdamage02 extends Sound { } }//package
Section 437
//fs_wesbcswitch02 (fs_wesbcswitch02) package { import flash.media.*; public dynamic class fs_wesbcswitch02 extends Sound { } }//package
Section 438
//fs_weskill (fs_weskill) package { import flash.media.*; public dynamic class fs_weskill extends Sound { } }//package
Section 439
//fs_wessuccess01 (fs_wessuccess01) package { import flash.media.*; public dynamic class fs_wessuccess01 extends Sound { } }//package
Section 440
//fs_wessuccess02 (fs_wessuccess02) package { import flash.media.*; public dynamic class fs_wessuccess02 extends Sound { } }//package
Section 441
//fs_wessuccess03 (fs_wessuccess03) package { import flash.media.*; public dynamic class fs_wessuccess03 extends Sound { } }//package
Section 442
//fs_wessuccess04 (fs_wessuccess04) package { import flash.media.*; public dynamic class fs_wessuccess04 extends Sound { } }//package
Section 443
//fs_wessuccess05 (fs_wessuccess05) package { import flash.media.*; public dynamic class fs_wessuccess05 extends Sound { } }//package
Section 444
//fs_wessuccess06 (fs_wessuccess06) package { import flash.media.*; public dynamic class fs_wessuccess06 extends Sound { } }//package
Section 445
//fs_wesswitch01 (fs_wesswitch01) package { import flash.media.*; public dynamic class fs_wesswitch01 extends Sound { } }//package
Section 446
//fs_wesswitch02 (fs_wesswitch02) package { import flash.media.*; public dynamic class fs_wesswitch02 extends Sound { } }//package
Section 447
//fs_wesswitch03 (fs_wesswitch03) package { import flash.media.*; public dynamic class fs_wesswitch03 extends Sound { } }//package
Section 448
//Gem1_PU_alt5 (Gem1_PU_alt5) package { import flash.media.*; public dynamic class Gem1_PU_alt5 extends Sound { } }//package
Section 449
//Gem1_PU_alt5_2 (Gem1_PU_alt5_2) package { import flash.media.*; public dynamic class Gem1_PU_alt5_2 extends Sound { } }//package
Section 450
//Gem1_PU_alt5_3 (Gem1_PU_alt5_3) package { import flash.media.*; public dynamic class Gem1_PU_alt5_3 extends Sound { } }//package
Section 451
//Helvetica (Helvetica) package { import flash.text.*; public dynamic class Helvetica extends Font { } }//package
Section 452
//jump_natural (jump_natural) package { import flash.media.*; public dynamic class jump_natural extends Sound { } }//package
Section 453
//jump_natural_alt (jump_natural_alt) package { import flash.media.*; public dynamic class jump_natural_alt extends Sound { } }//package
Section 454
//land_cartoony (land_cartoony) package { import flash.media.*; public dynamic class land_cartoony extends Sound { } }//package
Section 455
//land_natural (land_natural) package { import flash.media.*; public dynamic class land_natural extends Sound { } }//package
Section 456
//Portal_Use (Portal_Use) package { import flash.media.*; public dynamic class Portal_Use extends Sound { } }//package
Section 457
//Projectile_Bottle_PU (Projectile_Bottle_PU) package { import flash.media.*; public dynamic class Projectile_Bottle_PU extends Sound { } }//package
Section 458
//safx_rous_fly (safx_rous_fly) package { import flash.media.*; public dynamic class safx_rous_fly extends Sound { } }//package
Section 459
//sfx_attack_miss (sfx_attack_miss) package { import flash.media.*; public dynamic class sfx_attack_miss extends Sound { } }//package
Section 460
//sfx_attack_stick (sfx_attack_stick) package { import flash.media.*; public dynamic class sfx_attack_stick extends Sound { } }//package
Section 461
//sfx_attack_sword (sfx_attack_sword) package { import flash.media.*; public dynamic class sfx_attack_sword extends Sound { } }//package
Section 462
//sfx_bottle_hit (sfx_bottle_hit) package { import flash.media.*; public dynamic class sfx_bottle_hit extends Sound { } }//package
Section 463
//sfx_bottle_throw_alt (sfx_bottle_throw_alt) package { import flash.media.*; public dynamic class sfx_bottle_throw_alt extends Sound { } }//package
Section 464
//sfx_boulder_alt (sfx_boulder_alt) package { import flash.media.*; public dynamic class sfx_boulder_alt extends Sound { } }//package
Section 465
//sfx_bridge_lower (sfx_bridge_lower) package { import flash.media.*; public dynamic class sfx_bridge_lower extends Sound { } }//package
Section 466
//sfx_bridge_raise (sfx_bridge_raise) package { import flash.media.*; public dynamic class sfx_bridge_raise extends Sound { } }//package
Section 467
//sfx_Butter_jump_takeoff_1 (sfx_Butter_jump_takeoff_1) package { import flash.media.*; public dynamic class sfx_Butter_jump_takeoff_1 extends Sound { } }//package
Section 468
//sfx_Butter_jump_takeoff_2 (sfx_Butter_jump_takeoff_2) package { import flash.media.*; public dynamic class sfx_Butter_jump_takeoff_2 extends Sound { } }//package
Section 469
//sfx_Butter_jump_takeoff_5 (sfx_Butter_jump_takeoff_5) package { import flash.media.*; public dynamic class sfx_Butter_jump_takeoff_5 extends Sound { } }//package
Section 470
//sfx_crumbs_hit_alt (sfx_crumbs_hit_alt) package { import flash.media.*; public dynamic class sfx_crumbs_hit_alt extends Sound { } }//package
Section 471
//sfx_crumbs_pickup (sfx_crumbs_pickup) package { import flash.media.*; public dynamic class sfx_crumbs_pickup extends Sound { } }//package
Section 472
//sfx_multiplier (sfx_multiplier) package { import flash.media.*; public dynamic class sfx_multiplier extends Sound { } }//package
Section 473
//sfx_rous_attack (sfx_rous_attack) package { import flash.media.*; public dynamic class sfx_rous_attack extends Sound { } }//package
Section 474
//sfx_rous_death (sfx_rous_death) package { import flash.media.*; public dynamic class sfx_rous_death extends Sound { } }//package
Section 475
//sfx_rous_death_alt (sfx_rous_death_alt) package { import flash.media.*; public dynamic class sfx_rous_death_alt extends Sound { } }//package
Section 476
//sfx_rous_dive (sfx_rous_dive) package { import flash.media.*; public dynamic class sfx_rous_dive extends Sound { } }//package
Section 477
//sfx_shell_bonus (sfx_shell_bonus) package { import flash.media.*; public dynamic class sfx_shell_bonus extends Sound { } }//package
Section 478
//sfx_shell_score (sfx_shell_score) package { import flash.media.*; public dynamic class sfx_shell_score extends Sound { } }//package
Section 479
//sfx_shell_select (sfx_shell_select) package { import flash.media.*; public dynamic class sfx_shell_select extends Sound { } }//package
Section 480
//sfx_vine_release_alt2 (sfx_vine_release_alt2) package { import flash.media.*; public dynamic class sfx_vine_release_alt2 extends Sound { } }//package
Section 481
//Vine_Climb (Vine_Climb) package { import flash.media.*; public dynamic class Vine_Climb extends Sound { } }//package

Library Items

Symbol 1 Sound {Vine_Climb}
Symbol 2 Sound {sfx_vine_release_alt2}
Symbol 3 Sound {sfx_shell_select}
Symbol 4 Sound {sfx_shell_score}
Symbol 5 Sound {sfx_shell_bonus}
Symbol 6 Sound {safx_rous_fly}
Symbol 7 Sound {sfx_rous_dive}
Symbol 8 Sound {sfx_rous_death}
Symbol 9 Sound {sfx_rous_death_alt}
Symbol 10 Sound {sfx_rous_attack}
Symbol 11 Sound {sfx_multiplier}
Symbol 12 Sound {sfx_crumbs_pickup}
Symbol 13 Sound {sfx_crumbs_hit_alt}
Symbol 14 Sound {sfx_Butter_jump_takeoff_5}
Symbol 15 Sound {sfx_Butter_jump_takeoff_2}
Symbol 16 Sound {sfx_Butter_jump_takeoff_1}
Symbol 17 Sound {sfx_bridge_raise}
Symbol 18 Sound {sfx_bridge_lower}
Symbol 19 Sound {sfx_boulder_alt}
Symbol 20 Sound {sfx_bottle_throw_alt}
Symbol 21 Sound {sfx_bottle_hit}
Symbol 22 Sound {sfx_attack_sword}
Symbol 23 Sound {sfx_attack_stick}
Symbol 24 Sound {sfx_attack_miss}
Symbol 25 Sound {Projectile_Bottle_PU}
Symbol 26 Sound {Portal_Use}
Symbol 27 Sound {land_natural}
Symbol 28 Sound {land_cartoony}
Symbol 29 Sound {jump_natural}
Symbol 30 Sound {jump_natural_alt}
Symbol 31 Sound {Gem1_PU_alt5}
Symbol 32 Sound {Gem1_PU_alt5_3}
Symbol 33 Sound {Gem1_PU_alt5_2}
Symbol 34 GraphicUsed by:35 63 2200
Symbol 35 MovieClip {AssetBlackBottom}Uses:34
Symbol 36 GraphicUsed by:55
Symbol 37 GraphicUsed by:38
Symbol 38 MovieClipUses:37Used by:55
Symbol 39 GraphicUsed by:55
Symbol 40 FontUsed by:41 42 43 44 47 48 56 60 64 1452 2046 2047 2048 2049 2050 2051 2052 2053 2056 2057 2059 2062 2063 2073 2082 2094
Symbol 41 TextUses:40Used by:55
Symbol 42 EditableTextUses:40Used by:55
Symbol 43 EditableTextUses:40Used by:55
Symbol 44 EditableTextUses:40Used by:55
Symbol 45 GraphicUsed by:46
Symbol 46 MovieClipUses:45Used by:50 53
Symbol 47 TextUses:40Used by:49
Symbol 48 TextUses:40Used by:49
Symbol 49 MovieClipUses:47 48Used by:50 53
Symbol 50 MovieClipUses:46 49Used by:54
Symbol 51 GraphicUsed by:52
Symbol 52 MovieClipUses:51Used by:53
Symbol 53 MovieClip {FireSwampBrowser_fla.buynow_actual_buttonglint_moving_272}Uses:46 49 52Used by:54
Symbol 54 MovieClip {buynow_actual_buttonBuyNow}Uses:50 53Used by:55
Symbol 55 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.MainHeader}Uses:36 38 39 41 42 43 44 54
Symbol 56 EditableTextUses:40 690Used by:57
Symbol 57 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.RoomDisplay}Uses:56
Symbol 58 GraphicUsed by:59 66
Symbol 59 MovieClipUses:58Used by:62
Symbol 60 TextUses:40Used by:61
Symbol 61 MovieClipUses:60Used by:62
Symbol 62 MovieClip {AssetDeathFlash}Uses:59 61
Symbol 63 MovieClipUses:34Used by:67
Symbol 64 TextUses:40Used by:65
Symbol 65 MovieClipUses:64Used by:67
Symbol 66 MovieClipUses:58Used by:67
Symbol 67 MovieClip {FireSwampBrowser_fla._loadingscreen_1}Uses:63 65 66Used by:Timeline
Symbol 68 MovieClipUsed by:Timeline
Symbol 69 GraphicUsed by:70
Symbol 70 MovieClip {Fire_boulder_idle}Uses:69Used by:71
Symbol 71 MovieClip {AssetBoulder}Uses:70Used by:2201
Symbol 72 GraphicUsed by:106 108 110 135
Symbol 73 GraphicUsed by:106 108 110 135
Symbol 74 GraphicUsed by:75
Symbol 75 MovieClipUses:74Used by:76
Symbol 76 MovieClip {FireSwampBrowser_fla.color_coil_10}Uses:75Used by:106 108 110 135
Symbol 77 GraphicUsed by:106 108 110 135
Symbol 78 GraphicUsed by:106
Symbol 79 GraphicUsed by:106 108 110 135
Symbol 80 GraphicUsed by:106 108 110 135
Symbol 81 GraphicUsed by:106
Symbol 82 GraphicUsed by:106
Symbol 83 GraphicUsed by:106
Symbol 84 GraphicUsed by:106
Symbol 85 GraphicUsed by:106
Symbol 86 GraphicUsed by:106
Symbol 87 GraphicUsed by:106
Symbol 88 GraphicUsed by:106
Symbol 89 GraphicUsed by:106
Symbol 90 GraphicUsed by:106
Symbol 91 GraphicUsed by:106
Symbol 92 GraphicUsed by:106
Symbol 93 GraphicUsed by:106
Symbol 94 GraphicUsed by:106
Symbol 95 GraphicUsed by:106
Symbol 96 GraphicUsed by:106
Symbol 97 GraphicUsed by:106
Symbol 98 GraphicUsed by:106
Symbol 99 GraphicUsed by:106
Symbol 100 GraphicUsed by:106
Symbol 101 GraphicUsed by:106
Symbol 102 GraphicUsed by:106 135
Symbol 103 GraphicUsed by:106
Symbol 104 GraphicUsed by:106
Symbol 105 GraphicUsed by:106 135
Symbol 106 MovieClip {AssetBridgeClose}Uses:72 73 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105Used by:2201
Symbol 107 GraphicUsed by:108
Symbol 108 MovieClip {AssetBridgeIdleClose}Uses:72 73 76 77 107 79 80Used by:2201
Symbol 109 GraphicUsed by:110
Symbol 110 MovieClip {AssetBridgeIdleOpen}Uses:72 73 76 77 109 79 80Used by:2201
Symbol 111 GraphicUsed by:135
Symbol 112 GraphicUsed by:135
Symbol 113 GraphicUsed by:135
Symbol 114 GraphicUsed by:135
Symbol 115 GraphicUsed by:135
Symbol 116 GraphicUsed by:135
Symbol 117 GraphicUsed by:135
Symbol 118 GraphicUsed by:135
Symbol 119 GraphicUsed by:135
Symbol 120 GraphicUsed by:135
Symbol 121 GraphicUsed by:135
Symbol 122 GraphicUsed by:135
Symbol 123 GraphicUsed by:135
Symbol 124 GraphicUsed by:135
Symbol 125 GraphicUsed by:135
Symbol 126 GraphicUsed by:135
Symbol 127 GraphicUsed by:135
Symbol 128 GraphicUsed by:135
Symbol 129 GraphicUsed by:135
Symbol 130 GraphicUsed by:135
Symbol 131 GraphicUsed by:135
Symbol 132 GraphicUsed by:135
Symbol 133 GraphicUsed by:135
Symbol 134 GraphicUsed by:135
Symbol 135 MovieClip {AssetBridgeOpen}Uses:72 73 76 77 105 79 80 111 102 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134Used by:2201
Symbol 136 BitmapUsed by:137
Symbol 137 GraphicUses:136Used by:138
Symbol 138 MovieClip {AssetButtercupAim}Uses:137Used by:2201
Symbol 139 GraphicUsed by:183 191 202 310 470
Symbol 140 GraphicUsed by:183 194 202 310 470
Symbol 141 GraphicUsed by:142 163 183 251 861
Symbol 142 MovieClip {com.wwb.princessbride.fire_swamp.assets.weapons.WeaponButtercupStickLeft}Uses:141Used by:183 202 236 271 313 314 317 320 326 332 333 358 379 381 420 429 430 473
Symbol 143 GraphicUsed by:183 198 202 310 470
Symbol 144 GraphicUsed by:183 202
Symbol 145 GraphicUsed by:183 202 310 470
Symbol 146 GraphicUsed by:183 202 310 470
Symbol 147 GraphicUsed by:183 202
Symbol 148 GraphicUsed by:183 202
Symbol 149 GraphicUsed by:183 202 310 470
Symbol 150 GraphicUsed by:183 202
Symbol 151 GraphicUsed by:183 202 310 470
Symbol 152 GraphicUsed by:183 202 310
Symbol 153 GraphicUsed by:183 202 310 470
Symbol 154 GraphicUsed by:183 202 310 470 1604
Symbol 155 GraphicUsed by:183 202 310 1604
Symbol 156 GraphicUsed by:183 202 310 1604
Symbol 157 GraphicUsed by:183 202 310 470 1604
Symbol 158 GraphicUsed by:183 202 310
Symbol 159 GraphicUsed by:183 202 310 470 1604
Symbol 160 GraphicUsed by:183 202 310
Symbol 161 GraphicUsed by:183 191 202 310 470
Symbol 162 GraphicUsed by:183 194 202 310 470
Symbol 163 MovieClip {com.wwb.princessbride.fire_swamp.assets.weapons.WeaponButtercupStickRight}Uses:141Used by:183 202 236 271 313 314 317 320 326 332 333 358 379 381 420 429 430 473
Symbol 164 GraphicUsed by:183 198 202 310 470
Symbol 165 GraphicUsed by:183 202
Symbol 166 GraphicUsed by:183 202
Symbol 167 GraphicUsed by:183 202
Symbol 168 GraphicUsed by:183 202
Symbol 169 GraphicUsed by:183 202
Symbol 170 GraphicUsed by:183 202
Symbol 171 GraphicUsed by:183 202
Symbol 172 GraphicUsed by:183
Symbol 173 GraphicUsed by:183 202
Symbol 174 GraphicUsed by:183 202
Symbol 175 GraphicUsed by:183
Symbol 176 GraphicUsed by:183 202
Symbol 177 GraphicUsed by:183 202
Symbol 178 GraphicUsed by:183 202
Symbol 179 GraphicUsed by:183 202
Symbol 180 GraphicUsed by:183 202
Symbol 181 GraphicUsed by:183 202
Symbol 182 GraphicUsed by:183 202
Symbol 183 MovieClip {AssetButtercupAttackJumpLeft}Uses:139 140 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 141 172 173 174 175 176 177 178 179 180 181 182Used by:2201
Symbol 184 GraphicUsed by:191
Symbol 185 GraphicUsed by:191 310
Symbol 186 GraphicUsed by:191
Symbol 187 GraphicUsed by:191
Symbol 188 GraphicUsed by:191
Symbol 189 GraphicUsed by:191
Symbol 190 GraphicUsed by:191
Symbol 191 MovieClipUses:161 184 185 186 187 139 188 189 190Used by:202
Symbol 192 GraphicUsed by:194 310
Symbol 193 GraphicUsed by:194
Symbol 194 MovieClipUses:162 192 140 193Used by:202
Symbol 195 GraphicUsed by:198
Symbol 196 GraphicUsed by:198 310
Symbol 197 GraphicUsed by:198
Symbol 198 MovieClipUses:195 143 164 196 197Used by:202
Symbol 199 GraphicUsed by:202
Symbol 200 GraphicUsed by:202
Symbol 201 GraphicUsed by:202
Symbol 202 MovieClip {AssetButtercupAttackJumpRight}Uses:144 139 140 142 143 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 191 194 198 165 166 167 168 169 170 171 199 173 174 200 176 177 201 178 179 180 181 182Used by:2201
Symbol 203 BitmapUsed by:204
Symbol 204 GraphicUses:203Used by:236
Symbol 205 BitmapUsed by:206
Symbol 206 GraphicUses:205Used by:236
Symbol 207 BitmapUsed by:208
Symbol 208 GraphicUses:207Used by:236
Symbol 209 BitmapUsed by:210
Symbol 210 GraphicUses:209Used by:236
Symbol 211 BitmapUsed by:212
Symbol 212 GraphicUses:211Used by:236
Symbol 213 BitmapUsed by:214
Symbol 214 GraphicUses:213Used by:236
Symbol 215 BitmapUsed by:216
Symbol 216 GraphicUses:215Used by:236
Symbol 217 BitmapUsed by:218
Symbol 218 GraphicUses:217Used by:236
Symbol 219 GraphicUsed by:236
Symbol 220 BitmapUsed by:221
Symbol 221 GraphicUses:220Used by:236
Symbol 222 GraphicUsed by:236
Symbol 223 BitmapUsed by:224
Symbol 224 GraphicUses:223Used by:236
Symbol 225 GraphicUsed by:236
Symbol 226 BitmapUsed by:227
Symbol 227 GraphicUses:226Used by:236
Symbol 228 BitmapUsed by:229
Symbol 229 GraphicUses:228Used by:236
Symbol 230 BitmapUsed by:231
Symbol 231 GraphicUses:230Used by:236
Symbol 232 BitmapUsed by:233
Symbol 233 GraphicUses:232Used by:236
Symbol 234 BitmapUsed by:235
Symbol 235 GraphicUses:234Used by:236
Symbol 236 MovieClip {AssetButtercupAttackLeft}Uses:142 204 163 206 208 210 212 214 216 218 219 221 222 224 225 227 229 231 233 235Used by:2201
Symbol 237 BitmapUsed by:238
Symbol 238 GraphicUses:237Used by:271
Symbol 239 BitmapUsed by:240
Symbol 240 GraphicUses:239Used by:271
Symbol 241 BitmapUsed by:242
Symbol 242 GraphicUses:241Used by:271
Symbol 243 BitmapUsed by:244
Symbol 244 GraphicUses:243Used by:271
Symbol 245 BitmapUsed by:246
Symbol 246 GraphicUses:245Used by:271
Symbol 247 BitmapUsed by:248
Symbol 248 GraphicUses:247Used by:271
Symbol 249 BitmapUsed by:250
Symbol 250 GraphicUses:249Used by:271
Symbol 251 MovieClipUses:141Used by:271
Symbol 252 BitmapUsed by:253
Symbol 253 GraphicUses:252Used by:271
Symbol 254 GraphicUsed by:271
Symbol 255 BitmapUsed by:256
Symbol 256 GraphicUses:255Used by:271
Symbol 257 GraphicUsed by:271
Symbol 258 BitmapUsed by:259
Symbol 259 GraphicUses:258Used by:271
Symbol 260 GraphicUsed by:271
Symbol 261 BitmapUsed by:262
Symbol 262 GraphicUses:261Used by:271
Symbol 263 BitmapUsed by:264
Symbol 264 GraphicUses:263Used by:271
Symbol 265 BitmapUsed by:266
Symbol 266 GraphicUses:265Used by:271
Symbol 267 BitmapUsed by:268
Symbol 268 GraphicUses:267Used by:271
Symbol 269 BitmapUsed by:270
Symbol 270 GraphicUses:269Used by:271
Symbol 271 MovieClip {AssetButtercupAttackRight}Uses:142 238 163 240 242 244 246 248 250 251 253 254 256 257 259 260 262 264 266 268 270Used by:2201
Symbol 272 BitmapUsed by:273
Symbol 273 GraphicUses:272Used by:296 297
Symbol 274 BitmapUsed by:275
Symbol 275 GraphicUses:274Used by:296 297
Symbol 276 BitmapUsed by:277
Symbol 277 GraphicUses:276Used by:296 297
Symbol 278 BitmapUsed by:279
Symbol 279 GraphicUses:278Used by:296 297
Symbol 280 BitmapUsed by:281
Symbol 281 GraphicUses:280Used by:296 297
Symbol 282 BitmapUsed by:283
Symbol 283 GraphicUses:282Used by:296 297
Symbol 284 BitmapUsed by:285
Symbol 285 GraphicUses:284Used by:296 297
Symbol 286 BitmapUsed by:287
Symbol 287 GraphicUses:286Used by:296 297
Symbol 288 BitmapUsed by:289
Symbol 289 GraphicUses:288Used by:296 297
Symbol 290 BitmapUsed by:291
Symbol 291 GraphicUses:290Used by:296 297
Symbol 292 BitmapUsed by:293
Symbol 293 GraphicUses:292Used by:296 297
Symbol 294 BitmapUsed by:295
Symbol 295 GraphicUses:294Used by:296 297
Symbol 296 MovieClip {AssetButtercupClimb}Uses:273 275 277 279 281 283 285 287 289 291 293 295Used by:2201
Symbol 297 MovieClip {AssetButtercupClimbDown}Uses:295 293 291 289 287 285 283 281 279 277 275 273Used by:2201
Symbol 298 GraphicUsed by:310
Symbol 299 GraphicUsed by:310
Symbol 300 GraphicUsed by:310
Symbol 301 GraphicUsed by:310
Symbol 302 GraphicUsed by:310
Symbol 303 GraphicUsed by:310
Symbol 304 GraphicUsed by:310 470
Symbol 305 GraphicUsed by:310 470
Symbol 306 GraphicUsed by:310
Symbol 307 GraphicUsed by:310
Symbol 308 GraphicUsed by:310
Symbol 309 GraphicUsed by:310 470
Symbol 310 MovieClip {AssetButtercupClimbTop}Uses:143 192 185 196 145 146 298 299 149 300 301 302 303 304 305 139 140 306 307 308 309 151 152 153 154 155 156 157 158 159 160 161 162 164Used by:2201
Symbol 311 BitmapUsed by:312
Symbol 312 GraphicUses:311Used by:313 314
Symbol 313 MovieClip {AssetButtercupCrawl}Uses:312 142 163Used by:2201
Symbol 314 MovieClip {AssetButtercupCrouch}Uses:312 142 163Used by:2201
Symbol 315 BitmapUsed by:316
Symbol 316 GraphicUses:315Used by:317
Symbol 317 MovieClip {AssetButtercupDamageFire}Uses:316 142 163Used by:2201
Symbol 318 BitmapUsed by:319
Symbol 319 GraphicUses:318Used by:320
Symbol 320 MovieClip {AssetButtercupDamageMelee}Uses:319 142 163Used by:2201
Symbol 321 BitmapUsed by:322
Symbol 322 GraphicUses:321Used by:323
Symbol 323 MovieClip {AssetButtercupDie}Uses:322Used by:2201
Symbol 324 BitmapUsed by:325
Symbol 325 GraphicUses:324Used by:326 420 429 430
Symbol 326 MovieClip {AssetButtercupEdge}Uses:142 325 163Used by:2201
Symbol 327 BitmapUsed by:328
Symbol 328 GraphicUses:327Used by:329 462
Symbol 329 MovieClipUses:328Used by:2201
Symbol 330 BitmapUsed by:331
Symbol 331 GraphicUses:330Used by:332 333 471
Symbol 332 MovieClip {AssetButtercupIdle}Uses:142 331 163Used by:2201
Symbol 333 MovieClip {AssetButtercupIdleAnim}Uses:142 331 163Used by:2201
Symbol 334 BitmapUsed by:335
Symbol 335 GraphicUses:334Used by:358
Symbol 336 BitmapUsed by:337
Symbol 337 GraphicUses:336Used by:358
Symbol 338 BitmapUsed by:339
Symbol 339 GraphicUses:338Used by:358
Symbol 340 BitmapUsed by:341
Symbol 341 GraphicUses:340Used by:358
Symbol 342 BitmapUsed by:343
Symbol 343 GraphicUses:342Used by:358
Symbol 344 BitmapUsed by:345
Symbol 345 GraphicUses:344Used by:358
Symbol 346 BitmapUsed by:347
Symbol 347 GraphicUses:346Used by:358
Symbol 348 BitmapUsed by:349
Symbol 349 GraphicUses:348Used by:358
Symbol 350 BitmapUsed by:351
Symbol 351 GraphicUses:350Used by:358
Symbol 352 BitmapUsed by:353
Symbol 353 GraphicUses:352Used by:358
Symbol 354 BitmapUsed by:355
Symbol 355 GraphicUses:354Used by:358
Symbol 356 BitmapUsed by:357
Symbol 357 GraphicUses:356Used by:358
Symbol 358 MovieClip {AssetButtercupJumpUp}Uses:142 335 163 337 339 341 343 345 347 349 351 353 355 357Used by:2201
Symbol 359 BitmapUsed by:360
Symbol 360 GraphicUses:359Used by:379
Symbol 361 BitmapUsed by:362
Symbol 362 GraphicUses:361Used by:379
Symbol 363 BitmapUsed by:364
Symbol 364 GraphicUses:363Used by:379
Symbol 365 BitmapUsed by:366
Symbol 366 GraphicUses:365Used by:379
Symbol 367 BitmapUsed by:368
Symbol 368 GraphicUses:367Used by:379
Symbol 369 BitmapUsed by:370
Symbol 370 GraphicUses:369Used by:379
Symbol 371 BitmapUsed by:372
Symbol 372 GraphicUses:371Used by:379
Symbol 373 BitmapUsed by:374
Symbol 374 GraphicUses:373Used by:379
Symbol 375 BitmapUsed by:376
Symbol 376 GraphicUses:375Used by:379
Symbol 377 BitmapUsed by:378
Symbol 378 GraphicUses:377Used by:379
Symbol 379 MovieClip {AssetButtercupJumpDown}Uses:142 360 163 362 364 366 368 370 372 374 376 378Used by:2201
Symbol 380 GraphicUsed by:381 1204
Symbol 381 MovieClip {AssetButtercupJumpLand}Uses:380 142 163Used by:2201
Symbol 382 BitmapUsed by:383
Symbol 383 GraphicUses:382Used by:420 429
Symbol 384 BitmapUsed by:385
Symbol 385 GraphicUses:384Used by:420 429
Symbol 386 BitmapUsed by:387
Symbol 387 GraphicUses:386Used by:420 429
Symbol 388 BitmapUsed by:389
Symbol 389 GraphicUses:388Used by:420 429
Symbol 390 BitmapUsed by:391
Symbol 391 GraphicUses:390Used by:420 429
Symbol 392 BitmapUsed by:393
Symbol 393 GraphicUses:392Used by:420 429
Symbol 394 BitmapUsed by:395
Symbol 395 GraphicUses:394Used by:420 429
Symbol 396 BitmapUsed by:397
Symbol 397 GraphicUses:396Used by:420 429
Symbol 398 BitmapUsed by:399
Symbol 399 GraphicUses:398Used by:420 429
Symbol 400 BitmapUsed by:401
Symbol 401 GraphicUses:400Used by:420 429
Symbol 402 BitmapUsed by:403
Symbol 403 GraphicUses:402Used by:420 429
Symbol 404 BitmapUsed by:405
Symbol 405 GraphicUses:404Used by:420 429
Symbol 406 BitmapUsed by:407
Symbol 407 GraphicUses:406Used by:420 429
Symbol 408 BitmapUsed by:409
Symbol 409 GraphicUses:408Used by:420 429
Symbol 410 BitmapUsed by:411
Symbol 411 GraphicUses:410Used by:420 429
Symbol 412 BitmapUsed by:413
Symbol 413 GraphicUses:412Used by:420 429
Symbol 414 BitmapUsed by:415
Symbol 415 GraphicUses:414Used by:420 429
Symbol 416 BitmapUsed by:417
Symbol 417 GraphicUses:416Used by:420 429
Symbol 418 BitmapUsed by:419
Symbol 419 GraphicUses:418Used by:420 429
Symbol 420 MovieClip {AssetButtercupRun}Uses:142 383 163 385 387 389 391 393 395 397 399 401 403 405 407 409 411 413 325 415 417 419Used by:2201
Symbol 421 BitmapUsed by:422
Symbol 422 GraphicUses:421Used by:429
Symbol 423 BitmapUsed by:424
Symbol 424 GraphicUses:423Used by:429
Symbol 425 BitmapUsed by:426
Symbol 426 GraphicUses:425Used by:429
Symbol 427 BitmapUsed by:428
Symbol 428 GraphicUses:427Used by:429
Symbol 429 MovieClipUses:142 383 163 385 387 389 391 422 393 395 397 399 401 424 403 405 407 409 411 426 413 325 415 417 428 419Used by:2201
Symbol 430 MovieClip {AssetButtercupSlide}Uses:142 325 163Used by:2201
Symbol 431 BitmapUsed by:432
Symbol 432 GraphicUses:431Used by:447
Symbol 433 BitmapUsed by:434
Symbol 434 GraphicUses:433Used by:447
Symbol 435 BitmapUsed by:436
Symbol 436 GraphicUses:435Used by:447
Symbol 437 BitmapUsed by:438
Symbol 438 GraphicUses:437Used by:447
Symbol 439 BitmapUsed by:440
Symbol 440 GraphicUses:439Used by:447
Symbol 441 BitmapUsed by:442
Symbol 442 GraphicUses:441Used by:447
Symbol 443 BitmapUsed by:444
Symbol 444 GraphicUses:443Used by:447
Symbol 445 BitmapUsed by:446
Symbol 446 GraphicUses:445Used by:447
Symbol 447 MovieClip {AssetButtercupSwingBack}Uses:432 434 436 438 440 442 444 446Used by:2201
Symbol 448 BitmapUsed by:449
Symbol 449 GraphicUses:448Used by:462
Symbol 450 BitmapUsed by:451
Symbol 451 GraphicUses:450Used by:462
Symbol 452 BitmapUsed by:453
Symbol 453 GraphicUses:452Used by:462
Symbol 454 BitmapUsed by:455
Symbol 455 GraphicUses:454Used by:462
Symbol 456 BitmapUsed by:457
Symbol 457 GraphicUses:456Used by:462
Symbol 458 BitmapUsed by:459
Symbol 459 GraphicUses:458Used by:462
Symbol 460 BitmapUsed by:461
Symbol 461 GraphicUses:460Used by:462
Symbol 462 MovieClip {AssetButtercupSwingFore}Uses:328 449 451 453 455 457 459 461Used by:2201
Symbol 463 GraphicUsed by:470
Symbol 464 GraphicUsed by:470
Symbol 465 GraphicUsed by:470
Symbol 466 GraphicUsed by:470
Symbol 467 GraphicUsed by:470
Symbol 468 GraphicUsed by:470
Symbol 469 GraphicUsed by:470
Symbol 470 MovieClip {AssetButtercupHold}Uses:305 139 140 143 145 146 463 304 149 309 151 153 154 464 465 157 466 467 159 468 469 161 162 164Used by:2201
Symbol 471 MovieClip {AssetButtercupThrow}Uses:331Used by:2201
Symbol 472 GraphicUsed by:473
Symbol 473 MovieClip {AssetButtercupVictory}Uses:472 142 163Used by:2201
Symbol 474 ShapeTweeningUsed by:477
Symbol 475 ShapeTweeningUsed by:477
Symbol 476 GraphicUsed by:477
Symbol 477 MovieClipUses:474 475 476Used by:486 488
Symbol 478 GraphicUsed by:486
Symbol 479 GraphicUsed by:486
Symbol 480 GraphicUsed by:486
Symbol 481 GraphicUsed by:486
Symbol 482 GraphicUsed by:486
Symbol 483 GraphicUsed by:486
Symbol 484 GraphicUsed by:486
Symbol 485 GraphicUsed by:486
Symbol 486 MovieClip {AssetFireSpoutOff}Uses:477 478 479 480 481 482 483 484 485Used by:2201
Symbol 487 GraphicUsed by:488
Symbol 488 MovieClip {AssetFireSpoutIdleOff}Uses:477 487Used by:2201
Symbol 489 GraphicUsed by:506
Symbol 490 GraphicUsed by:506
Symbol 491 GraphicUsed by:506
Symbol 492 GraphicUsed by:506
Symbol 493 GraphicUsed by:506
Symbol 494 GraphicUsed by:505
Symbol 495 GraphicUsed by:505
Symbol 496 GraphicUsed by:505
Symbol 497 GraphicUsed by:505
Symbol 498 GraphicUsed by:505
Symbol 499 GraphicUsed by:505
Symbol 500 GraphicUsed by:505
Symbol 501 GraphicUsed by:505
Symbol 502 GraphicUsed by:505
Symbol 503 GraphicUsed by:505
Symbol 504 GraphicUsed by:505
Symbol 505 MovieClipUses:494 495 496 497 498 499 500 501 502 503 504Used by:506 507
Symbol 506 MovieClip {AssetFireSpoutOn}Uses:489 490 491 492 493 505Used by:2201
Symbol 507 MovieClip {AssetFireSpoutIdleOn}Uses:505Used by:2201
Symbol 508 GraphicUsed by:569 580 640
Symbol 509 GraphicUsed by:569 580 612 640 641
Symbol 510 GraphicUsed by:569 580 612 640 641
Symbol 511 GraphicUsed by:569 580 612 640 641
Symbol 512 GraphicUsed by:569 580 612 640 641 1604
Symbol 513 GraphicUsed by:569 580 612 640 641
Symbol 514 GraphicUsed by:569 580 612 640 641
Symbol 515 GraphicUsed by:569
Symbol 516 GraphicUsed by:569 580
Symbol 517 GraphicUsed by:569 580 612 640 641
Symbol 518 GraphicUsed by:569 580 640
Symbol 519 GraphicUsed by:569 580 612 640 641
Symbol 520 GraphicUsed by:569 580 612 640 641 781 796 830 839 840 841 857 858 859
Symbol 521 GraphicUsed by:569 580 612 640 641
Symbol 522 GraphicUsed by:569
Symbol 523 GraphicUsed by:569
Symbol 524 GraphicUsed by:569
Symbol 525 GraphicUsed by:569 580 612 640 641 781 796 830 839 840 841 857 858 859
Symbol 526 GraphicUsed by:569 580 612 640 641
Symbol 527 GraphicUsed by:569 580 612 640 641
Symbol 528 GraphicUsed by:569 580 612 640 641 781 796 830 839 840 841 857 858 859 2072
Symbol 529 GraphicUsed by:569 580 612 640 641
Symbol 530 GraphicUsed by:569
Symbol 531 GraphicUsed by:569 580 612 640 641
Symbol 532 GraphicUsed by:569
Symbol 533 GraphicUsed by:569 580 612 640
Symbol 534 GraphicUsed by:569
Symbol 535 GraphicUsed by:569 580 612 640
Symbol 536 GraphicUsed by:569
Symbol 537 GraphicUsed by:569
Symbol 538 GraphicUsed by:569 580 612 640
Symbol 539 GraphicUsed by:569
Symbol 540 GraphicUsed by:569
Symbol 541 GraphicUsed by:569
Symbol 542 GraphicUsed by:569
Symbol 543 GraphicUsed by:569 781 796 830 839 840 841 857 858 859
Symbol 544 GraphicUsed by:569 612
Symbol 545 GraphicUsed by:569
Symbol 546 GraphicUsed by:569 612 781 796
Symbol 547 GraphicUsed by:569
Symbol 548 GraphicUsed by:569
Symbol 549 GraphicUsed by:569
Symbol 550 GraphicUsed by:569
Symbol 551 GraphicUsed by:569
Symbol 552 GraphicUsed by:569
Symbol 553 GraphicUsed by:569 580 640
Symbol 554 GraphicUsed by:569
Symbol 555 GraphicUsed by:569 839 840 841
Symbol 556 GraphicUsed by:569
Symbol 557 GraphicUsed by:569
Symbol 558 GraphicUsed by:569
Symbol 559 GraphicUsed by:569 580 612 781 796 830 839 840 841
Symbol 560 GraphicUsed by:569
Symbol 561 GraphicUsed by:569 612 640
Symbol 562 GraphicUsed by:569 580 612 640 641
Symbol 563 GraphicUsed by:569
Symbol 564 GraphicUsed by:569 612
Symbol 565 GraphicUsed by:569
Symbol 566 GraphicUsed by:569 612 640
Symbol 567 GraphicUsed by:569
Symbol 568 GraphicUsed by:569 580
Symbol 569 MovieClip {AssetFlyRousAttack}Uses:508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568Used by:2201
Symbol 570 GraphicUsed by:580
Symbol 571 GraphicUsed by:580
Symbol 572 GraphicUsed by:580 640
Symbol 573 GraphicUsed by:580 612
Symbol 574 GraphicUsed by:580 612
Symbol 575 GraphicUsed by:580 612
Symbol 576 GraphicUsed by:580 612
Symbol 577 GraphicUsed by:580 612
Symbol 578 GraphicUsed by:580 640
Symbol 579 GraphicUsed by:580 640
Symbol 580 MovieClip {AssetFlyRousDamage}Uses:529 509 510 511 512 517 514 568 516 531 519 520 521 570 562 559 525 526 527 528 513 571 533 572 535 573 574 575 553 576 577 538 508 518 578 579Used by:2201
Symbol 581 GraphicUsed by:612
Symbol 582 GraphicUsed by:612
Symbol 583 GraphicUsed by:612
Symbol 584 GraphicUsed by:612 640 641
Symbol 585 GraphicUsed by:612
Symbol 586 GraphicUsed by:612
Symbol 587 GraphicUsed by:612
Symbol 588 GraphicUsed by:612
Symbol 589 GraphicUsed by:612 781 796 830 839 840 841 857 858 859 2072
Symbol 590 GraphicUsed by:612
Symbol 591 GraphicUsed by:612
Symbol 592 GraphicUsed by:612 781 796 839
Symbol 593 GraphicUsed by:612
Symbol 594 GraphicUsed by:612
Symbol 595 GraphicUsed by:612 830 2072
Symbol 596 GraphicUsed by:612
Symbol 597 GraphicUsed by:612
Symbol 598 GraphicUsed by:612
Symbol 599 GraphicUsed by:612
Symbol 600 GraphicUsed by:612
Symbol 601 GraphicUsed by:612
Symbol 602 GraphicUsed by:612
Symbol 603 GraphicUsed by:612
Symbol 604 GraphicUsed by:612
Symbol 605 GraphicUsed by:612
Symbol 606 GraphicUsed by:612
Symbol 607 GraphicUsed by:612
Symbol 608 GraphicUsed by:612
Symbol 609 GraphicUsed by:612
Symbol 610 GraphicUsed by:612
Symbol 611 GraphicUsed by:612
Symbol 612 MovieClip {AssetFlyRousDead}Uses:533 509 510 511 512 513 514 581 546 544 517 535 520 521 582 562 559 525 526 527 528 531 583 584 538 573 574 575 566 585 561 576 577 564 586 519 587 529 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611Used by:2201
Symbol 613 GraphicUsed by:614
Symbol 614 MovieClipUses:613Used by:615
Symbol 615 MovieClipUses:614Used by:622
Symbol 616 GraphicUsed by:617
Symbol 617 MovieClipUses:616Used by:622
Symbol 618 GraphicUsed by:619
Symbol 619 MovieClipUses:618Used by:622
Symbol 620 GraphicUsed by:621
Symbol 621 MovieClipUses:620Used by:622
Symbol 622 MovieClip {AssetFlyRousDive}Uses:615 617 619 621Used by:2201
Symbol 623 GraphicUsed by:640 641
Symbol 624 GraphicUsed by:640 641
Symbol 625 GraphicUsed by:640 641
Symbol 626 GraphicUsed by:640
Symbol 627 GraphicUsed by:640
Symbol 628 GraphicUsed by:640
Symbol 629 GraphicUsed by:640
Symbol 630 GraphicUsed by:640
Symbol 631 GraphicUsed by:640
Symbol 632 GraphicUsed by:640
Symbol 633 GraphicUsed by:640
Symbol 634 GraphicUsed by:640
Symbol 635 GraphicUsed by:640
Symbol 636 GraphicUsed by:640
Symbol 637 GraphicUsed by:640
Symbol 638 GraphicUsed by:640
Symbol 639 GraphicUsed by:640
Symbol 640 MovieClip {AssetFlyRousFly}Uses:529 509 510 511 512 513 514 623 584 624 517 531 519 520 521 625 562 525 526 527 528 626 627 628 629 572 630 631 632 533 579 535 578 553 633 634 635 538 636 566 637 561 508 638 518 639Used by:2201
Symbol 641 MovieClip {AssetFlyRousPause}Uses:529 509 510 511 512 513 514 623 584 624 517 531 519 520 521 625 562 525 526 527 528Used by:2201
Symbol 642 GraphicUsed by:644 660 661 663 664 666 700 720 740
Symbol 643 GraphicUsed by:644 661 664
Symbol 644 MovieClip {AssetGemIdle}Uses:642 643Used by:2201
Symbol 645 GraphicUsed by:646 659 695 2020
Symbol 646 MovieClipUses:645Used by:647 2201
Symbol 647 MovieClipUses:646Used by:2201
Symbol 648 GraphicUsed by:657
Symbol 649 GraphicUsed by:657
Symbol 650 GraphicUsed by:657
Symbol 651 GraphicUsed by:657
Symbol 652 GraphicUsed by:657
Symbol 653 GraphicUsed by:657
Symbol 654 GraphicUsed by:657
Symbol 655 GraphicUsed by:657
Symbol 656 GraphicUsed by:657
Symbol 657 MovieClipUses:648 649 650 651 652 653 654 655 656Used by:658 662 665
Symbol 658 MovieClipUses:657Used by:660
Symbol 659 MovieClipUses:645Used by:660 663 666
Symbol 660 MovieClip {AssetGemVanish}Uses:642 658 659Used by:2201
Symbol 661 MovieClip {AssetGemTwoIdle}Uses:642 643Used by:2201
Symbol 662 MovieClipUses:657Used by:663
Symbol 663 MovieClip {AssetGemTwoVanish}Uses:642 662 659Used by:2201
Symbol 664 MovieClip {AssetGemThreeIdle}Uses:642 643Used by:2201
Symbol 665 MovieClipUses:657Used by:666
Symbol 666 MovieClip {AssetGemThreeVanish}Uses:642 665 659Used by:2201
Symbol 667 GraphicUsed by:668
Symbol 668 MovieClipUses:667Used by:673
Symbol 669 GraphicUsed by:673
Symbol 670 GraphicUsed by:673 864 1669
Symbol 671 GraphicUsed by:672 863
Symbol 672 MovieClipUses:671Used by:673
Symbol 673 MovieClip {AssetGoalIdle}Uses:668 669 670 672Used by:2201
Symbol 674 GraphicUsed by:688 715 735
Symbol 675 GraphicUsed by:686
Symbol 676 GraphicUsed by:686
Symbol 677 GraphicUsed by:686
Symbol 678 GraphicUsed by:686
Symbol 679 GraphicUsed by:686
Symbol 680 GraphicUsed by:686
Symbol 681 GraphicUsed by:686
Symbol 682 GraphicUsed by:686
Symbol 683 GraphicUsed by:686
Symbol 684 GraphicUsed by:686
Symbol 685 GraphicUsed by:686
Symbol 686 MovieClipUses:675 676 677 678 679 680 681 682 683 684 685Used by:687
Symbol 687 MovieClipUses:686Used by:688 700
Symbol 688 MovieClip {AssetMultiplierHudTwo}Uses:674 687Used by:2201
Symbol 689 GraphicUsed by:698
Symbol 690 FontUsed by:56 691 2073 2124 2126 2128 2141 2144 2145 2147
Symbol 691 TextUses:690Used by:698
Symbol 692 GraphicUsed by:698 718 738 2087 2089
Symbol 693 GraphicUsed by:698
Symbol 694 GraphicUsed by:698 718 738
Symbol 695 MovieClipUses:645Used by:696 700 720 740
Symbol 696 MovieClipUses:695Used by:698 718 738
Symbol 697 GraphicUsed by:698 718 738
Symbol 698 MovieClipUses:689 691 692 693 694 696 697Used by:699
Symbol 699 MovieClip {AssetMultiplierIdleTwo}Uses:698Used by:2201
Symbol 700 MovieClip {AssetMultiplierVanishTwo}Uses:642 687 695Used by:2201
Symbol 701 GraphicUsed by:713
Symbol 702 GraphicUsed by:713
Symbol 703 GraphicUsed by:713
Symbol 704 GraphicUsed by:713
Symbol 705 GraphicUsed by:713
Symbol 706 GraphicUsed by:713
Symbol 707 GraphicUsed by:713
Symbol 708 GraphicUsed by:713
Symbol 709 GraphicUsed by:713
Symbol 710 GraphicUsed by:713
Symbol 711 GraphicUsed by:713
Symbol 712 GraphicUsed by:713
Symbol 713 MovieClipUses:701 702 703 704 705 706 707 708 709 710 711 712Used by:714
Symbol 714 MovieClipUses:713Used by:715 720
Symbol 715 MovieClip {AssetMultiplierHudFive}Uses:674 714Used by:2201
Symbol 716 GraphicUsed by:718
Symbol 717 GraphicUsed by:718
Symbol 718 MovieClipUses:716 692 717 694 696 697Used by:719
Symbol 719 MovieClip {AssetMultiplierIdleFive}Uses:718Used by:2201
Symbol 720 MovieClip {AssetMultiplierVanishFive}Uses:642 714 695Used by:2201
Symbol 721 GraphicUsed by:733
Symbol 722 GraphicUsed by:733
Symbol 723 GraphicUsed by:733
Symbol 724 GraphicUsed by:733
Symbol 725 GraphicUsed by:733
Symbol 726 GraphicUsed by:733
Symbol 727 GraphicUsed by:733
Symbol 728 GraphicUsed by:733
Symbol 729 GraphicUsed by:733
Symbol 730 GraphicUsed by:733
Symbol 731 GraphicUsed by:733
Symbol 732 GraphicUsed by:733
Symbol 733 MovieClipUses:721 722 723 724 725 726 727 728 729 730 731 732Used by:734
Symbol 734 MovieClipUses:733Used by:735 740
Symbol 735 MovieClip {AssetMultiplierHudTen}Uses:674 734Used by:2201
Symbol 736 GraphicUsed by:738
Symbol 737 GraphicUsed by:738
Symbol 738 MovieClipUses:736 692 737 694 696 697Used by:739
Symbol 739 MovieClip {AssetMultiplierIdleTen}Uses:738Used by:2201
Symbol 740 MovieClip {AssetMultiplierVanishTen}Uses:642 734 695Used by:2201
Symbol 741 GraphicUsed by:781 796 830 839 840 841
Symbol 742 GraphicUsed by:781 796 830 839 840 841
Symbol 743 GraphicUsed by:781 796 830 839 840 841 857 858 859
Symbol 744 GraphicUsed by:781 796 830 839 840 841
Symbol 745 GraphicUsed by:781 796 830 839 840 841
Symbol 746 GraphicUsed by:781 796 830 839 840 841
Symbol 747 GraphicUsed by:781 796 830 839 840 841 857 858 859
Symbol 748 GraphicUsed by:781 796 830 839 840 841 857 858 859
Symbol 749 GraphicUsed by:781 796 830 839 840 841 857 858 859
Symbol 750 GraphicUsed by:781 796 830 839 840 841
Symbol 751 GraphicUsed by:781 796 830 839 840 841 857 858 859
Symbol 752 GraphicUsed by:781
Symbol 753 GraphicUsed by:781 796 857 858 859
Symbol 754 GraphicUsed by:781 796 830 839 840 841 857 858 859
Symbol 755 GraphicUsed by:781 796 830 839 840 841 857 858 859
Symbol 756 GraphicUsed by:781 796 830 839
Symbol 757 GraphicUsed by:781
Symbol 758 GraphicUsed by:781 796 830 839
Symbol 759 GraphicUsed by:781 830
Symbol 760 GraphicUsed by:781
Symbol 761 GraphicUsed by:781
Symbol 762 GraphicUsed by:781 839
Symbol 763 GraphicUsed by:781
Symbol 764 GraphicUsed by:781
Symbol 765 GraphicUsed by:781
Symbol 766 GraphicUsed by:781
Symbol 767 GraphicUsed by:781 830 857 858 859 2072
Symbol 768 GraphicUsed by:781
Symbol 769 GraphicUsed by:781
Symbol 770 GraphicUsed by:781
Symbol 771 GraphicUsed by:781
Symbol 772 GraphicUsed by:781
Symbol 773 GraphicUsed by:781
Symbol 774 GraphicUsed by:781
Symbol 775 GraphicUsed by:781 857 858 859
Symbol 776 GraphicUsed by:781
Symbol 777 GraphicUsed by:781
Symbol 778 GraphicUsed by:781
Symbol 779 GraphicUsed by:781
Symbol 780 GraphicUsed by:781
Symbol 781 MovieClip {AssetRousAttack}Uses:741 742 743 744 745 746 747 543 748 589 749 750 520 751 752 753 559 525 754 755 528 756 757 758 759 760 546 761 762 763 764 765 766 767 768 592 769 770 771 772 773 774 775 776 777 778 779 780Used by:2201
Symbol 782 GraphicUsed by:796
Symbol 783 GraphicUsed by:796 839 840
Symbol 784 GraphicUsed by:796
Symbol 785 GraphicUsed by:796
Symbol 786 GraphicUsed by:796
Symbol 787 GraphicUsed by:796 830
Symbol 788 GraphicUsed by:796 830
Symbol 789 GraphicUsed by:796 830
Symbol 790 GraphicUsed by:796
Symbol 791 GraphicUsed by:796
Symbol 792 GraphicUsed by:796 830
Symbol 793 GraphicUsed by:796 830
Symbol 794 GraphicUsed by:796
Symbol 795 GraphicUsed by:796
Symbol 796 MovieClip {AssetRousDamage}Uses:741 742 743 744 745 746 747 543 748 589 749 750 520 751 782 783 559 525 754 755 528 784 546 785 786 758 787 788 789 790 791 792 793 794 795 756 592 753Used by:2201
Symbol 797 GraphicUsed by:830
Symbol 798 GraphicUsed by:830
Symbol 799 GraphicUsed by:830
Symbol 800 GraphicUsed by:830
Symbol 801 GraphicUsed by:830
Symbol 802 GraphicUsed by:830
Symbol 803 GraphicUsed by:830
Symbol 804 GraphicUsed by:830
Symbol 805 GraphicUsed by:830
Symbol 806 GraphicUsed by:830
Symbol 807 GraphicUsed by:830
Symbol 808 GraphicUsed by:830
Symbol 809 GraphicUsed by:830
Symbol 810 GraphicUsed by:830
Symbol 811 GraphicUsed by:830
Symbol 812 GraphicUsed by:830
Symbol 813 GraphicUsed by:830
Symbol 814 GraphicUsed by:830
Symbol 815 GraphicUsed by:830
Symbol 816 GraphicUsed by:830
Symbol 817 GraphicUsed by:830
Symbol 818 GraphicUsed by:830
Symbol 819 GraphicUsed by:830
Symbol 820 GraphicUsed by:830
Symbol 821 GraphicUsed by:830
Symbol 822 GraphicUsed by:830
Symbol 823 GraphicUsed by:830
Symbol 824 GraphicUsed by:830
Symbol 825 GraphicUsed by:830
Symbol 826 GraphicUsed by:830 2072
Symbol 827 GraphicUsed by:830
Symbol 828 GraphicUsed by:830
Symbol 829 GraphicUsed by:830
Symbol 830 MovieClip {AssetRousDead}Uses:741 742 743 744 745 746 747 543 748 589 749 750 520 751 797 758 798 755 528 756 799 559 525 754 787 788 789 792 793 759 800 801 802 767 803 804 805 806 807 808 809 810 811 812 813 814 815 816 595 817 818 819 820 821 822 823 824 825 826 827 828 829Used by:2201
Symbol 831 GraphicUsed by:839 840 841
Symbol 832 GraphicUsed by:839 840
Symbol 833 GraphicUsed by:839 840
Symbol 834 GraphicUsed by:839
Symbol 835 GraphicUsed by:839
Symbol 836 GraphicUsed by:839
Symbol 837 GraphicUsed by:839
Symbol 838 GraphicUsed by:839
Symbol 839 MovieClip {AssetRousEat}Uses:741 742 743 744 745 746 747 543 748 589 749 750 520 751 831 783 559 525 754 755 528 832 555 833 834 758 835 756 836 762 592 837 838Used by:2201
Symbol 840 MovieClip {AssetRousIdle}Uses:741 742 743 744 745 746 747 543 748 589 749 750 520 751 831 783 559 525 754 755 528 832 555 833Used by:2201
Symbol 841 MovieClip {AssetRousPause}Uses:741 742 743 744 745 746 747 543 748 589 749 750 520 751 831 555 559 525 754 755 528Used by:2201
Symbol 842 GraphicUsed by:857 858 859
Symbol 843 GraphicUsed by:857 858 859
Symbol 844 GraphicUsed by:857 858 859
Symbol 845 GraphicUsed by:857 858 859
Symbol 846 GraphicUsed by:857 858 859
Symbol 847 GraphicUsed by:857 858 859
Symbol 848 GraphicUsed by:857 858 859
Symbol 849 GraphicUsed by:857 858 859
Symbol 850 GraphicUsed by:857 858 859
Symbol 851 GraphicUsed by:857 858 859
Symbol 852 GraphicUsed by:857 858 859
Symbol 853 GraphicUsed by:857 858 859
Symbol 854 GraphicUsed by:857 858 859
Symbol 855 GraphicUsed by:857 858 859
Symbol 856 GraphicUsed by:857 858 859
Symbol 857 MovieClip {AssetRousRun}Uses:589 767 743 842 747 543 748 749 520 751 843 753 525 754 755 528 844 845 775 846 847 848 849 850 851 852 853 854 855 856Used by:2201
Symbol 858 MovieClip {AssetRousSlide}Uses:589 767 743 842 747 543 748 749 520 751 843 753 525 754 755 528 844 845 775 846 847 848 849 850 851 852 853 854 855 856Used by:2201
Symbol 859 MovieClip {AssetRousWalk}Uses:589 767 743 842 747 543 748 749 520 751 843 753 525 754 755 528 844 845 775 846 847 848 849 850 851 852 853 854 855 856Used by:2201
Symbol 860 MovieClipUsed by:864
Symbol 861 MovieClipUses:141Used by:864 865
Symbol 862 GraphicUsed by:864
Symbol 863 MovieClipUses:671Used by:864
Symbol 864 MovieClip {AssetStickIdle}Uses:860 861 862 670 863Used by:2201
Symbol 865 MovieClip {AssetStickVanish}Uses:861Used by:2201
Symbol 866 GraphicUsed by:876
Symbol 867 GraphicUsed by:876
Symbol 868 GraphicUsed by:876
Symbol 869 GraphicUsed by:876
Symbol 870 GraphicUsed by:876
Symbol 871 GraphicUsed by:876
Symbol 872 GraphicUsed by:876
Symbol 873 GraphicUsed by:876
Symbol 874 GraphicUsed by:876
Symbol 875 GraphicUsed by:876
Symbol 876 MovieClip {AssetWaterSpanLarge1}Uses:866 867 868 869 870 871 872 873 874 875Used by:2201
Symbol 877 GraphicUsed by:889
Symbol 878 GraphicUsed by:889
Symbol 879 GraphicUsed by:889
Symbol 880 GraphicUsed by:889
Symbol 881 GraphicUsed by:889
Symbol 882 GraphicUsed by:889
Symbol 883 GraphicUsed by:889
Symbol 884 GraphicUsed by:889
Symbol 885 GraphicUsed by:889
Symbol 886 GraphicUsed by:889
Symbol 887 GraphicUsed by:889
Symbol 888 GraphicUsed by:889
Symbol 889 MovieClip {AssetWaterSpanLarge2}Uses:877 878 879 880 881 882 883 884 885 886 887 888Used by:2201
Symbol 890 GraphicUsed by:900
Symbol 891 GraphicUsed by:900
Symbol 892 GraphicUsed by:900
Symbol 893 GraphicUsed by:900
Symbol 894 GraphicUsed by:900
Symbol 895 GraphicUsed by:900
Symbol 896 GraphicUsed by:900
Symbol 897 GraphicUsed by:900
Symbol 898 GraphicUsed by:900
Symbol 899 GraphicUsed by:900
Symbol 900 MovieClip {AssetWaterSpanLarge3}Uses:890 891 892 893 894 895 896 897 898 899Used by:2201
Symbol 901 GraphicUsed by:911
Symbol 902 GraphicUsed by:911
Symbol 903 GraphicUsed by:911
Symbol 904 GraphicUsed by:911
Symbol 905 GraphicUsed by:911
Symbol 906 GraphicUsed by:911
Symbol 907 GraphicUsed by:911
Symbol 908 GraphicUsed by:911
Symbol 909 GraphicUsed by:911
Symbol 910 GraphicUsed by:911
Symbol 911 MovieClip {AssetWaterSpanSmall1}Uses:901 902 903 904 905 906 907 908 909 910Used by:2201
Symbol 912 GraphicUsed by:922
Symbol 913 GraphicUsed by:922
Symbol 914 GraphicUsed by:922
Symbol 915 GraphicUsed by:922
Symbol 916 GraphicUsed by:922
Symbol 917 GraphicUsed by:922
Symbol 918 GraphicUsed by:922
Symbol 919 GraphicUsed by:922
Symbol 920 GraphicUsed by:922
Symbol 921 GraphicUsed by:922
Symbol 922 MovieClip {AssetWaterSpanSmall2}Uses:912 913 914 915 916 917 918 919 920 921Used by:2201
Symbol 923 GraphicUsed by:933
Symbol 924 GraphicUsed by:933
Symbol 925 GraphicUsed by:933
Symbol 926 GraphicUsed by:933
Symbol 927 GraphicUsed by:933
Symbol 928 GraphicUsed by:933
Symbol 929 GraphicUsed by:933
Symbol 930 GraphicUsed by:933
Symbol 931 GraphicUsed by:933
Symbol 932 GraphicUsed by:933
Symbol 933 MovieClip {AssetWaterSpanSmall3}Uses:923 924 925 926 927 928 929 930 931 932Used by:2201
Symbol 934 GraphicUsed by:935
Symbol 935 MovieClipUses:934Used by:936
Symbol 936 MovieClip {FireSwampBrowser_fla.pr_branch_01_123}Uses:935Used by:940 950 962 964
Symbol 937 GraphicUsed by:940 950 951 962 964
Symbol 938 GraphicUsed by:940 950 951 962 964
Symbol 939 GraphicUsed by:940
Symbol 940 MovieClip {AssetLeverDown}Uses:936 937 938 939Used by:2201
Symbol 941 GraphicUsed by:950
Symbol 942 GraphicUsed by:950
Symbol 943 GraphicUsed by:950
Symbol 944 GraphicUsed by:950
Symbol 945 GraphicUsed by:950
Symbol 946 GraphicUsed by:950
Symbol 947 GraphicUsed by:950
Symbol 948 GraphicUsed by:950
Symbol 949 GraphicUsed by:950 962
Symbol 950 MovieClip {AssetLeverToDown}Uses:936 937 938 941 942 943 944 945 946 947 948 949Used by:2201
Symbol 951 MovieClipUses:937 938Used by:962
Symbol 952 GraphicUsed by:962
Symbol 953 GraphicUsed by:962
Symbol 954 GraphicUsed by:962
Symbol 955 GraphicUsed by:962
Symbol 956 GraphicUsed by:962
Symbol 957 GraphicUsed by:962
Symbol 958 GraphicUsed by:962
Symbol 959 GraphicUsed by:962
Symbol 960 GraphicUsed by:962
Symbol 961 GraphicUsed by:962
Symbol 962 MovieClip {AssetLeverToUp}Uses:936 951 949 938 952 953 954 937 955 956 957 958 959 960 961Used by:2201
Symbol 963 GraphicUsed by:964
Symbol 964 MovieClip {AssetLeverUp}Uses:936 937 938 963Used by:2201
Symbol 965 GraphicUsed by:971 972 973 974
Symbol 966 GraphicUsed by:967
Symbol 967 MovieClipUses:966Used by:969
Symbol 968 GraphicUsed by:969
Symbol 969 MovieClip {FireSwampBrowser_fla.pr_button_01_130}Uses:967 968Used by:971 972 973 974
Symbol 970 GraphicUsed by:971 972 973 974
Symbol 971 MovieClip {AssetPadDown}Uses:965 969 970Used by:2201
Symbol 972 MovieClip {AssetPadToDown}Uses:965 969 970Used by:2201
Symbol 973 MovieClip {AssetPadToUp}Uses:965 969 970Used by:2201
Symbol 974 MovieClip {AssetPadUp}Uses:965 969 970Used by:2201
Symbol 975 BitmapUsed by:976
Symbol 976 GraphicUses:975Used by:977
Symbol 977 MovieClip {AssetWestleyAim}Uses:976Used by:2201
Symbol 978 GraphicUsed by:979
Symbol 979 MovieClipUses:978Used by:980 983
Symbol 980 MovieClip {com.wwb.princessbride.fire_swamp.assets.weapons.WeaponWestleySwordLeft}Uses:979Used by:1004 1027 1052 1079 1140 1143 1146 1152 1158 1159 1182 1201 1204 1304 1341 1360 1361 1401 1404 1405
Symbol 981 BitmapUsed by:982
Symbol 982 GraphicUses:981Used by:1004
Symbol 983 MovieClip {com.wwb.princessbride.fire_swamp.assets.weapons.WeaponWestleySwordRight}Uses:979Used by:1004 1027 1052 1079 1140 1143 1146 1152 1158 1159 1182 1201 1204 1304 1341 1360 1361 1401 1404 1405
Symbol 984 GraphicUsed by:1004 1052 1079
Symbol 985 BitmapUsed by:986
Symbol 986 GraphicUses:985Used by:1004
Symbol 987 GraphicUsed by:1004
Symbol 988 BitmapUsed by:989
Symbol 989 GraphicUses:988Used by:1004
Symbol 990 BitmapUsed by:991
Symbol 991 GraphicUses:990Used by:1004
Symbol 992 BitmapUsed by:993
Symbol 993 GraphicUses:992Used by:1004
Symbol 994 BitmapUsed by:995
Symbol 995 GraphicUses:994Used by:1004
Symbol 996 BitmapUsed by:997
Symbol 997 GraphicUses:996Used by:1004
Symbol 998 BitmapUsed by:999
Symbol 999 GraphicUses:998Used by:1004
Symbol 1000 BitmapUsed by:1001
Symbol 1001 GraphicUses:1000Used by:1004
Symbol 1002 BitmapUsed by:1003
Symbol 1003 GraphicUses:1002Used by:1004
Symbol 1004 MovieClip {AssetWestleyAttackJumpLeft}Uses:980 982 983 984 986 987 989 991 993 995 997 999 1001 1003Used by:2201
Symbol 1005 BitmapUsed by:1006
Symbol 1006 GraphicUses:1005Used by:1027
Symbol 1007 GraphicUsed by:1027
Symbol 1008 BitmapUsed by:1009
Symbol 1009 GraphicUses:1008Used by:1027
Symbol 1010 GraphicUsed by:1027
Symbol 1011 BitmapUsed by:1012
Symbol 1012 GraphicUses:1011Used by:1027
Symbol 1013 BitmapUsed by:1014
Symbol 1014 GraphicUses:1013Used by:1027
Symbol 1015 BitmapUsed by:1016
Symbol 1016 GraphicUses:1015Used by:1027
Symbol 1017 BitmapUsed by:1018
Symbol 1018 GraphicUses:1017Used by:1027
Symbol 1019 BitmapUsed by:1020
Symbol 1020 GraphicUses:1019Used by:1027
Symbol 1021 BitmapUsed by:1022
Symbol 1022 GraphicUses:1021Used by:1027
Symbol 1023 BitmapUsed by:1024
Symbol 1024 GraphicUses:1023Used by:1027
Symbol 1025 BitmapUsed by:1026
Symbol 1026 GraphicUses:1025Used by:1027
Symbol 1027 MovieClip {AssetWestleyAttackJumpRight}Uses:980 1006 983 1007 1009 1010 1012 1014 1016 1018 1020 1022 1024 1026Used by:2201
Symbol 1028 BitmapUsed by:1029
Symbol 1029 GraphicUses:1028Used by:1052
Symbol 1030 BitmapUsed by:1031
Symbol 1031 GraphicUses:1030Used by:1052
Symbol 1032 BitmapUsed by:1033
Symbol 1033 GraphicUses:1032Used by:1052
Symbol 1034 BitmapUsed by:1035
Symbol 1035 GraphicUses:1034Used by:1052
Symbol 1036 GraphicUsed by:1052
Symbol 1037 BitmapUsed by:1038
Symbol 1038 GraphicUses:1037Used by:1052
Symbol 1039 BitmapUsed by:1040
Symbol 1040 GraphicUses:1039Used by:1052
Symbol 1041 GraphicUsed by:1052
Symbol 1042 BitmapUsed by:1043
Symbol 1043 GraphicUses:1042Used by:1052
Symbol 1044 BitmapUsed by:1045
Symbol 1045 GraphicUses:1044Used by:1052
Symbol 1046 BitmapUsed by:1047
Symbol 1047 GraphicUses:1046Used by:1052
Symbol 1048 BitmapUsed by:1049
Symbol 1049 GraphicUses:1048Used by:1052
Symbol 1050 BitmapUsed by:1051
Symbol 1051 GraphicUses:1050Used by:1052
Symbol 1052 MovieClip {AssetWestleyAttackLeft}Uses:980 1029 983 1031 1033 1035 1036 1038 984 1040 1041 1043 1045 1047 1049 1051Used by:2201
Symbol 1053 BitmapUsed by:1054
Symbol 1054 GraphicUses:1053Used by:1079
Symbol 1055 BitmapUsed by:1056
Symbol 1056 GraphicUses:1055Used by:1079
Symbol 1057 BitmapUsed by:1058
Symbol 1058 GraphicUses:1057Used by:1079
Symbol 1059 BitmapUsed by:1060
Symbol 1060 GraphicUses:1059Used by:1079
Symbol 1061 GraphicUsed by:1079
Symbol 1062 BitmapUsed by:1063
Symbol 1063 GraphicUses:1062Used by:1079
Symbol 1064 BitmapUsed by:1065
Symbol 1065 GraphicUses:1064Used by:1079
Symbol 1066 GraphicUsed by:1079
Symbol 1067 BitmapUsed by:1068
Symbol 1068 GraphicUses:1067Used by:1079
Symbol 1069 BitmapUsed by:1070
Symbol 1070 GraphicUses:1069Used by:1079
Symbol 1071 BitmapUsed by:1072
Symbol 1072 GraphicUses:1071Used by:1079
Symbol 1073 BitmapUsed by:1074
Symbol 1074 GraphicUses:1073Used by:1079
Symbol 1075 BitmapUsed by:1076
Symbol 1076 GraphicUses:1075Used by:1079
Symbol 1077 BitmapUsed by:1078
Symbol 1078 GraphicUses:1077Used by:1079
Symbol 1079 MovieClip {AssetWestleyAttackRight}Uses:980 1054 983 1056 1058 1060 1061 1063 984 1065 1066 1068 1070 1072 1074 1076 1078Used by:2201
Symbol 1080 BitmapUsed by:1081
Symbol 1081 GraphicUses:1080Used by:1104 1105
Symbol 1082 BitmapUsed by:1083
Symbol 1083 GraphicUses:1082Used by:1104 1105
Symbol 1084 BitmapUsed by:1085
Symbol 1085 GraphicUses:1084Used by:1104 1105
Symbol 1086 BitmapUsed by:1087
Symbol 1087 GraphicUses:1086Used by:1104 1105
Symbol 1088 BitmapUsed by:1089
Symbol 1089 GraphicUses:1088Used by:1104 1105
Symbol 1090 BitmapUsed by:1091
Symbol 1091 GraphicUses:1090Used by:1104 1105
Symbol 1092 BitmapUsed by:1093
Symbol 1093 GraphicUses:1092Used by:1104 1105
Symbol 1094 BitmapUsed by:1095
Symbol 1095 GraphicUses:1094Used by:1104 1105
Symbol 1096 BitmapUsed by:1097
Symbol 1097 GraphicUses:1096Used by:1104 1105
Symbol 1098 BitmapUsed by:1099
Symbol 1099 GraphicUses:1098Used by:1104 1105
Symbol 1100 BitmapUsed by:1101
Symbol 1101 GraphicUses:1100Used by:1104 1105
Symbol 1102 BitmapUsed by:1103
Symbol 1103 GraphicUses:1102Used by:1104 1105
Symbol 1104 MovieClip {AssetWestleyClimb}Uses:1081 1083 1085 1087 1089 1091 1093 1095 1097 1099 1101 1103Used by:2201
Symbol 1105 MovieClipUses:1103 1101 1099 1097 1095 1093 1091 1089 1087 1085 1083 1081Used by:2201
Symbol 1106 GraphicUsed by:1137 2201
Symbol 1107 GraphicUsed by:1137 2201
Symbol 1108 GraphicUsed by:1137 1304 1399 2201
Symbol 1109 GraphicUsed by:1137 2201
Symbol 1110 GraphicUsed by:1137
Symbol 1111 GraphicUsed by:1137
Symbol 1112 GraphicUsed by:1137
Symbol 1113 GraphicUsed by:1137
Symbol 1114 GraphicUsed by:1137
Symbol 1115 GraphicUsed by:1137
Symbol 1116 GraphicUsed by:1137 1304 1399
Symbol 1117 GraphicUsed by:1137
Symbol 1118 GraphicUsed by:1137
Symbol 1119 GraphicUsed by:1137
Symbol 1120 GraphicUsed by:1137
Symbol 1121 GraphicUsed by:1137
Symbol 1122 GraphicUsed by:1137
Symbol 1123 GraphicUsed by:1137
Symbol 1124 GraphicUsed by:1137
Symbol 1125 GraphicUsed by:1137
Symbol 1126 GraphicUsed by:1137
Symbol 1127 GraphicUsed by:1137
Symbol 1128 GraphicUsed by:1137
Symbol 1129 GraphicUsed by:1137 1304 1399
Symbol 1130 GraphicUsed by:1137 1304 1399
Symbol 1131 GraphicUsed by:1137
Symbol 1132 GraphicUsed by:1137
Symbol 1133 GraphicUsed by:1137
Symbol 1134 GraphicUsed by:1137 1399
Symbol 1135 GraphicUsed by:1137
Symbol 1136 GraphicUsed by:1137 1399
Symbol 1137 MovieClip {AssetWestleyClimbTop}Uses:1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1106 1107 1108 1109 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136Used by:2201
Symbol 1138 BitmapUsed by:1139
Symbol 1139 GraphicUses:1138Used by:1140
Symbol 1140 MovieClip {AssetWestleyCrouch}Uses:1139 980 983Used by:2201
Symbol 1141 BitmapUsed by:1142
Symbol 1142 GraphicUses:1141Used by:1143
Symbol 1143 MovieClip {AssetWestleyDamageFire}Uses:1142 980 983Used by:2201
Symbol 1144 BitmapUsed by:1145
Symbol 1145 GraphicUses:1144Used by:1146
Symbol 1146 MovieClip {AssetWestleyDamageMelee}Uses:1145 980 983Used by:2201
Symbol 1147 BitmapUsed by:1148
Symbol 1148 GraphicUses:1147Used by:1149
Symbol 1149 MovieClip {AssetWestleyDie}Uses:1148Used by:2201
Symbol 1150 BitmapUsed by:1151
Symbol 1151 GraphicUses:1150Used by:1152 1341 1360 1361
Symbol 1152 MovieClip {AssetWestleyEdge}Uses:980 1151 983Used by:2201
Symbol 1153 BitmapUsed by:1154
Symbol 1154 GraphicUses:1153Used by:1155 1393
Symbol 1155 MovieClipUses:1154Used by:2201
Symbol 1156 BitmapUsed by:1157
Symbol 1157 GraphicUses:1156Used by:1158 1159
Symbol 1158 MovieClip {AssetWestleyIdle}Uses:980 1157 983Used by:2201
Symbol 1159 MovieClip {AssetWestleyIdleAnim}Uses:980 1157 983Used by:2201
Symbol 1160 BitmapUsed by:1161
Symbol 1161 GraphicUses:1160Used by:1182
Symbol 1162 BitmapUsed by:1163
Symbol 1163 GraphicUses:1162Used by:1182
Symbol 1164 BitmapUsed by:1165
Symbol 1165 GraphicUses:1164Used by:1182
Symbol 1166 BitmapUsed by:1167
Symbol 1167 GraphicUses:1166Used by:1182
Symbol 1168 BitmapUsed by:1169
Symbol 1169 GraphicUses:1168Used by:1182
Symbol 1170 BitmapUsed by:1171
Symbol 1171 GraphicUses:1170Used by:1182
Symbol 1172 BitmapUsed by:1173
Symbol 1173 GraphicUses:1172Used by:1182
Symbol 1174 BitmapUsed by:1175
Symbol 1175 GraphicUses:1174Used by:1182
Symbol 1176 BitmapUsed by:1177
Symbol 1177 GraphicUses:1176Used by:1182
Symbol 1178 BitmapUsed by:1179
Symbol 1179 GraphicUses:1178Used by:1182
Symbol 1180 BitmapUsed by:1181
Symbol 1181 GraphicUses:1180Used by:1182
Symbol 1182 MovieClip {AssetWestleyJumpUp}Uses:980 1161 983 1163 1165 1167 1169 1171 1173 1175 1177 1179 1181Used by:2201
Symbol 1183 BitmapUsed by:1184
Symbol 1184 GraphicUses:1183Used by:1201
Symbol 1185 BitmapUsed by:1186
Symbol 1186 GraphicUses:1185Used by:1201
Symbol 1187 BitmapUsed by:1188
Symbol 1188 GraphicUses:1187Used by:1201
Symbol 1189 BitmapUsed by:1190
Symbol 1190 GraphicUses:1189Used by:1201
Symbol 1191 BitmapUsed by:1192
Symbol 1192 GraphicUses:1191Used by:1201
Symbol 1193 BitmapUsed by:1194
Symbol 1194 GraphicUses:1193Used by:1201
Symbol 1195 BitmapUsed by:1196
Symbol 1196 GraphicUses:1195Used by:1201
Symbol 1197 BitmapUsed by:1198
Symbol 1198 GraphicUses:1197Used by:1201
Symbol 1199 BitmapUsed by:1200
Symbol 1200 GraphicUses:1199Used by:1201
Symbol 1201 MovieClip {AssetWestleyJumpDown}Uses:980 1184 983 1186 1188 1190 1192 1194 1196 1198 1200Used by:2201
Symbol 1202 GraphicUsed by:1203
Symbol 1203 MovieClipUses:1202Used by:1204 1401
Symbol 1204 MovieClip {AssetWestleyJumpLand}Uses:380 980 983 1203Used by:2201
Symbol 1205 GraphicUsed by:1304
Symbol 1206 GraphicUsed by:1304
Symbol 1207 GraphicUsed by:1304
Symbol 1208 GraphicUsed by:1304
Symbol 1209 GraphicUsed by:1304 1399
Symbol 1210 GraphicUsed by:1304 1399
Symbol 1211 GraphicUsed by:1304 1399
Symbol 1212 GraphicUsed by:1304
Symbol 1213 GraphicUsed by:1304
Symbol 1214 GraphicUsed by:1304 1399
Symbol 1215 GraphicUsed by:1304 1399
Symbol 1216 GraphicUsed by:1304 1399
Symbol 1217 GraphicUsed by:1304 1399
Symbol 1218 GraphicUsed by:1304 1399
Symbol 1219 GraphicUsed by:1304 1399
Symbol 1220 GraphicUsed by:1304 1399
Symbol 1221 GraphicUsed by:1304 1399
Symbol 1222 GraphicUsed by:1304 1399
Symbol 1223 GraphicUsed by:1304 1399
Symbol 1224 GraphicUsed by:1304 1399
Symbol 1225 GraphicUsed by:1304 1399
Symbol 1226 BitmapUsed by:1227
Symbol 1227 GraphicUses:1226Used by:1304
Symbol 1228 GraphicUsed by:1304
Symbol 1229 GraphicUsed by:1304
Symbol 1230 BitmapUsed by:1231
Symbol 1231 GraphicUses:1230Used by:1304
Symbol 1232 GraphicUsed by:1304
Symbol 1233 GraphicUsed by:1304
Symbol 1234 BitmapUsed by:1235
Symbol 1235 GraphicUses:1234Used by:1304
Symbol 1236 GraphicUsed by:1304
Symbol 1237 GraphicUsed by:1304
Symbol 1238 BitmapUsed by:1239
Symbol 1239 GraphicUses:1238Used by:1304
Symbol 1240 GraphicUsed by:1304
Symbol 1241 BitmapUsed by:1242
Symbol 1242 GraphicUses:1241Used by:1304
Symbol 1243 GraphicUsed by:1304
Symbol 1244 BitmapUsed by:1245
Symbol 1245 GraphicUses:1244Used by:1304
Symbol 1246 GraphicUsed by:1304
Symbol 1247 BitmapUsed by:1248
Symbol 1248 GraphicUses:1247Used by:1304
Symbol 1249 GraphicUsed by:1304
Symbol 1250 BitmapUsed by:1251
Symbol 1251 GraphicUses:1250Used by:1304
Symbol 1252 GraphicUsed by:1304
Symbol 1253 BitmapUsed by:1254
Symbol 1254 GraphicUses:1253Used by:1304
Symbol 1255 GraphicUsed by:1304
Symbol 1256 BitmapUsed by:1257
Symbol 1257 GraphicUses:1256Used by:1304
Symbol 1258 GraphicUsed by:1304
Symbol 1259 BitmapUsed by:1260
Symbol 1260 GraphicUses:1259Used by:1304
Symbol 1261 GraphicUsed by:1304
Symbol 1262 BitmapUsed by:1263
Symbol 1263 GraphicUses:1262Used by:1304
Symbol 1264 GraphicUsed by:1304
Symbol 1265 BitmapUsed by:1266
Symbol 1266 GraphicUses:1265Used by:1304
Symbol 1267 GraphicUsed by:1304
Symbol 1268 BitmapUsed by:1269
Symbol 1269 GraphicUses:1268Used by:1304
Symbol 1270 GraphicUsed by:1304
Symbol 1271 BitmapUsed by:1272
Symbol 1272 GraphicUses:1271Used by:1304
Symbol 1273 GraphicUsed by:1304
Symbol 1274 BitmapUsed by:1275
Symbol 1275 GraphicUses:1274Used by:1304
Symbol 1276 GraphicUsed by:1304
Symbol 1277 BitmapUsed by:1278
Symbol 1278 GraphicUses:1277Used by:1304
Symbol 1279 GraphicUsed by:1304
Symbol 1280 BitmapUsed by:1281
Symbol 1281 GraphicUses:1280Used by:1304
Symbol 1282 GraphicUsed by:1304
Symbol 1283 BitmapUsed by:1284
Symbol 1284 GraphicUses:1283Used by:1304
Symbol 1285 GraphicUsed by:1304
Symbol 1286 BitmapUsed by:1287
Symbol 1287 GraphicUses:1286Used by:1304
Symbol 1288 GraphicUsed by:1304
Symbol 1289 BitmapUsed by:1290
Symbol 1290 GraphicUses:1289Used by:1304
Symbol 1291 GraphicUsed by:1304
Symbol 1292 BitmapUsed by:1293
Symbol 1293 GraphicUses:1292Used by:1304
Symbol 1294 GraphicUsed by:1304
Symbol 1295 BitmapUsed by:1296
Symbol 1296 GraphicUses:1295Used by:1304
Symbol 1297 GraphicUsed by:1304
Symbol 1298 GraphicUsed by:1304
Symbol 1299 GraphicUsed by:1304
Symbol 1300 BitmapUsed by:1301
Symbol 1301 GraphicUses:1300Used by:1304
Symbol 1302 BitmapUsed by:1303
Symbol 1303 GraphicUses:1302Used by:1304
Symbol 1304 MovieClip {AssetWestleyPush}Uses:1205 1206 1207 980 1116 1129 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1108 1220 1221 1222 1223 1224 1225 1227 983 1228 1229 1231 1232 1233 1235 1236 1237 1239 1240 1242 1243 1245 1246 1248 1249 1251 1130 1252 1254 1255 1257 1258 1260 1261 1263 1264 1266 1267 1269 1270 1272 1273 1275 1276 1278 1279 1281 1282 1284 1285 1287 1288 1290 1291 1293 1294 1296 1297 1298 1299 1301 1303Used by:2201
Symbol 1305 BitmapUsed by:1306
Symbol 1306 GraphicUses:1305Used by:1341 1360
Symbol 1307 BitmapUsed by:1308
Symbol 1308 GraphicUses:1307Used by:1341 1360
Symbol 1309 BitmapUsed by:1310
Symbol 1310 GraphicUses:1309Used by:1341 1360
Symbol 1311 BitmapUsed by:1312
Symbol 1312 GraphicUses:1311Used by:1341 1360
Symbol 1313 BitmapUsed by:1314
Symbol 1314 GraphicUses:1313Used by:1341 1360
Symbol 1315 BitmapUsed by:1316
Symbol 1316 GraphicUses:1315Used by:1341 1360
Symbol 1317 BitmapUsed by:1318
Symbol 1318 GraphicUses:1317Used by:1341 1360
Symbol 1319 BitmapUsed by:1320
Symbol 1320 GraphicUses:1319Used by:1341 1360
Symbol 1321 BitmapUsed by:1322
Symbol 1322 GraphicUses:1321Used by:1341 1360
Symbol 1323 BitmapUsed by:1324
Symbol 1324 GraphicUses:1323Used by:1341 1360
Symbol 1325 BitmapUsed by:1326
Symbol 1326 GraphicUses:1325Used by:1341 1360
Symbol 1327 BitmapUsed by:1328
Symbol 1328 GraphicUses:1327Used by:1341 1360
Symbol 1329 BitmapUsed by:1330
Symbol 1330 GraphicUses:1329Used by:1341 1360
Symbol 1331 BitmapUsed by:1332
Symbol 1332 GraphicUses:1331Used by:1341 1360
Symbol 1333 BitmapUsed by:1334
Symbol 1334 GraphicUses:1333Used by:1341 1360
Symbol 1335 BitmapUsed by:1336
Symbol 1336 GraphicUses:1335Used by:1341 1360
Symbol 1337 BitmapUsed by:1338
Symbol 1338 GraphicUses:1337Used by:1341 1360
Symbol 1339 BitmapUsed by:1340
Symbol 1340 GraphicUses:1339Used by:1341 1360
Symbol 1341 MovieClip {AssetWestleyRun}Uses:980 1306 983 1308 1310 1312 1314 1316 1318 1320 1322 1324 1326 1328 1330 1332 1334 1151 1336 1338 1340Used by:2201
Symbol 1342 BitmapUsed by:1343
Symbol 1343 GraphicUses:1342Used by:1360
Symbol 1344 BitmapUsed by:1345
Symbol 1345 GraphicUses:1344Used by:1360
Symbol 1346 BitmapUsed by:1347
Symbol 1347 GraphicUses:1346Used by:1360
Symbol 1348 BitmapUsed by:1349
Symbol 1349 GraphicUses:1348Used by:1360
Symbol 1350 BitmapUsed by:1351
Symbol 1351 GraphicUses:1350Used by:1360
Symbol 1352 BitmapUsed by:1353
Symbol 1353 GraphicUses:1352Used by:1360
Symbol 1354 BitmapUsed by:1355
Symbol 1355 GraphicUses:1354Used by:1360
Symbol 1356 BitmapUsed by:1357
Symbol 1357 GraphicUses:1356Used by:1360
Symbol 1358 BitmapUsed by:1359
Symbol 1359 GraphicUses:1358Used by:1360
Symbol 1360 MovieClipUses:980 1306 983 1308 1310 1312 1314 1343 1316 1318 1345 1347 1320 1322 1349 1351 1324 1326 1328 1330 1332 1353 1334 1151 1355 1357 1336 1338 1359 1340Used by:2201
Symbol 1361 MovieClip {AssetWestleySlide}Uses:980 1151 983Used by:2201
Symbol 1362 BitmapUsed by:1363
Symbol 1363 GraphicUses:1362Used by:1378
Symbol 1364 BitmapUsed by:1365
Symbol 1365 GraphicUses:1364Used by:1378
Symbol 1366 BitmapUsed by:1367
Symbol 1367 GraphicUses:1366Used by:1378
Symbol 1368 BitmapUsed by:1369
Symbol 1369 GraphicUses:1368Used by:1378
Symbol 1370 BitmapUsed by:1371
Symbol 1371 GraphicUses:1370Used by:1378
Symbol 1372 BitmapUsed by:1373
Symbol 1373 GraphicUses:1372Used by:1378
Symbol 1374 BitmapUsed by:1375
Symbol 1375 GraphicUses:1374Used by:1378
Symbol 1376 BitmapUsed by:1377
Symbol 1377 GraphicUses:1376Used by:1378
Symbol 1378 MovieClip {AssetWestleySwingBack}Uses:1363 1365 1367 1369 1371 1373 1375 1377Used by:2201
Symbol 1379 BitmapUsed by:1380
Symbol 1380 GraphicUses:1379Used by:1393
Symbol 1381 BitmapUsed by:1382
Symbol 1382 GraphicUses:1381Used by:1393
Symbol 1383 BitmapUsed by:1384
Symbol 1384 GraphicUses:1383Used by:1393
Symbol 1385 BitmapUsed by:1386
Symbol 1386 GraphicUses:1385Used by:1393
Symbol 1387 BitmapUsed by:1388
Symbol 1388 GraphicUses:1387Used by:1393
Symbol 1389 BitmapUsed by:1390
Symbol 1390 GraphicUses:1389Used by:1393
Symbol 1391 BitmapUsed by:1392
Symbol 1392 GraphicUses:1391Used by:1393
Symbol 1393 MovieClip {AssetWestleySwingFore}Uses:1154 1380 1382 1384 1386 1388 1390 1392Used by:2201
Symbol 1394 GraphicUsed by:1399
Symbol 1395 GraphicUsed by:1399
Symbol 1396 GraphicUsed by:1399
Symbol 1397 GraphicUsed by:1399
Symbol 1398 GraphicUsed by:1399
Symbol 1399 MovieClip {AssetWestleyHold}Uses:1394 1395 1396 1116 1130 1129 1209 1210 1211 1397 1398 1214 1215 1218 1219 1108 1220 1221 1222 1223 1224 1216 1134 1136 1217 1225Used by:2201
Symbol 1400 GraphicUsed by:1401
Symbol 1401 MovieClip {AssetWestleySwitch}Uses:1400 983 980 1203Used by:2201
Symbol 1402 BitmapUsed by:1403
Symbol 1403 GraphicUses:1402Used by:1404 1405
Symbol 1404 MovieClip {AssetWestleyThrow}Uses:1403 980 983Used by:2201
Symbol 1405 MovieClip {AssetWestleyVictory}Uses:1403 980 983Used by:2201
Symbol 1406 GraphicUsed by:1407
Symbol 1407 MovieClipUses:1406Used by:1409
Symbol 1408 GraphicUsed by:1409
Symbol 1409 MovieClip {AssetTutorialShell}Uses:1407 1408Used by:2201
Symbol 1410 GraphicUsed by:1502
Symbol 1411 GraphicUsed by:1502
Symbol 1412 GraphicUsed by:1502
Symbol 1413 FontUsed by:1414 1417 1439 1456 1457 1459
Symbol 1414 TextUses:1413Used by:1502
Symbol 1415 FontUsed by:1416 1437 1438 1455 1458
Symbol 1416 TextUses:1415Used by:1502
Symbol 1417 TextUses:1413Used by:1502
Symbol 1418 FontUsed by:1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1440 1441 1442 1443 1444 1445 1446 1447 1448 1460 1461 1462 1463 1464 1465 1466 1467 1468 1479 1480 1481 1482 1497 1498 1499 1500 1501 1517 1518 1519 1520 1521 1527 1528 1529 1530 1531 1532 1533 1538 1539 1540 1541 1542 1543 1552 1553 1554 1555 1556 1557 1588 1589 1590 1591 1593 1594 1675 2074 2076
Symbol 1419 TextUses:1418Used by:1502
Symbol 1420 TextUses:1418Used by:1502
Symbol 1421 TextUses:1418Used by:1502
Symbol 1422 TextUses:1418Used by:1502
Symbol 1423 TextUses:1418Used by:1502
Symbol 1424 TextUses:1418Used by:1502
Symbol 1425 TextUses:1418Used by:1502
Symbol 1426 TextUses:1418Used by:1502
Symbol 1427 TextUses:1418Used by:1502
Symbol 1428 TextUses:1418Used by:1502
Symbol 1429 TextUses:1418Used by:1502
Symbol 1430 TextUses:1418Used by:1502 1534 1558 1604
Symbol 1431 TextUses:1418Used by:1502
Symbol 1432 TextUses:1418Used by:1502
Symbol 1433 TextUses:1418Used by:1502
Symbol 1434 BitmapUsed by:1436
Symbol 1435 BitmapUsed by:1436
Symbol 1436 GraphicUses:1434 1435Used by:1502
Symbol 1437 TextUses:1415Used by:1502
Symbol 1438 TextUses:1415Used by:1502
Symbol 1439 TextUses:1413Used by:1502
Symbol 1440 TextUses:1418Used by:1502
Symbol 1441 TextUses:1418Used by:1502
Symbol 1442 TextUses:1418Used by:1502
Symbol 1443 TextUses:1418Used by:1502
Symbol 1444 TextUses:1418Used by:1502
Symbol 1445 TextUses:1418Used by:1502
Symbol 1446 TextUses:1418Used by:1502
Symbol 1447 TextUses:1418Used by:1502
Symbol 1448 TextUses:1418Used by:1502
Symbol 1449 BitmapUsed by:1451 1454
Symbol 1450 BitmapUsed by:1451
Symbol 1451 GraphicUses:1449 1450Used by:1502
Symbol 1452 TextUses:40Used by:1502
Symbol 1453 BitmapUsed by:1454
Symbol 1454 GraphicUses:1449 1453Used by:1502
Symbol 1455 TextUses:1415Used by:1502
Symbol 1456 TextUses:1413Used by:1502
Symbol 1457 TextUses:1413Used by:1502
Symbol 1458 TextUses:1415Used by:1502
Symbol 1459 TextUses:1413Used by:1502
Symbol 1460 TextUses:1418Used by:1502
Symbol 1461 TextUses:1418Used by:1502
Symbol 1462 TextUses:1418Used by:1502
Symbol 1463 TextUses:1418Used by:1502 1534 1604
Symbol 1464 TextUses:1418Used by:1502
Symbol 1465 TextUses:1418Used by:1502
Symbol 1466 TextUses:1418Used by:1502
Symbol 1467 TextUses:1418Used by:1502
Symbol 1468 TextUses:1418Used by:1502
Symbol 1469 BitmapUsed by:1471
Symbol 1470 BitmapUsed by:1471
Symbol 1471 GraphicUses:1469 1470Used by:1502
Symbol 1472 FontUsed by:1473 1476 1478 1494 1496 1513 1516 1524 1526 1550 1584 1585 1587
Symbol 1473 TextUses:1472Used by:1502 1544 1604
Symbol 1474 FontUsed by:1475 1477 1495 1514 1515 1525 1537 1551 1583 1586 1592
Symbol 1475 TextUses:1474Used by:1502
Symbol 1476 TextUses:1472Used by:1502 1534
Symbol 1477 TextUses:1474Used by:1502
Symbol 1478 TextUses:1472Used by:1502
Symbol 1479 TextUses:1418Used by:1502
Symbol 1480 TextUses:1418Used by:1502
Symbol 1481 TextUses:1418Used by:1502
Symbol 1482 TextUses:1418Used by:1502
Symbol 1483 BitmapUsed by:1484
Symbol 1484 GraphicUses:1483Used by:1502
Symbol 1485 GraphicUsed by:1502
Symbol 1486 GraphicUsed by:1502
Symbol 1487 GraphicUsed by:1502
Symbol 1488 GraphicUsed by:1502
Symbol 1489 GraphicUsed by:1502
Symbol 1490 GraphicUsed by:1502
Symbol 1491 GraphicUsed by:1502
Symbol 1492 GraphicUsed by:1502
Symbol 1493 GraphicUsed by:1502
Symbol 1494 TextUses:1472Used by:1502
Symbol 1495 TextUses:1474Used by:1502
Symbol 1496 TextUses:1472Used by:1502 1544 1558
Symbol 1497 TextUses:1418Used by:1502
Symbol 1498 TextUses:1418Used by:1502
Symbol 1499 TextUses:1418Used by:1502
Symbol 1500 TextUses:1418Used by:1502
Symbol 1501 TextUses:1418Used by:1502
Symbol 1502 MovieClip {AssetTutorial1}Uses:1410 1411 1412 1414 1416 1417 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1451 1452 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1471 1473 1475 1476 1477 1478 1479 1480 1481 1482 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501Used by:2201
Symbol 1503 BitmapUsed by:1504
Symbol 1504 GraphicUses:1503Used by:1534
Symbol 1505 GraphicUsed by:1534
Symbol 1506 GraphicUsed by:1534
Symbol 1507 GraphicUsed by:1534
Symbol 1508 GraphicUsed by:1534
Symbol 1509 GraphicUsed by:1534
Symbol 1510 GraphicUsed by:1534
Symbol 1511 GraphicUsed by:1534
Symbol 1512 GraphicUsed by:1534
Symbol 1513 TextUses:1472Used by:1534
Symbol 1514 TextUses:1474Used by:1534
Symbol 1515 TextUses:1474Used by:1534
Symbol 1516 TextUses:1472Used by:1534
Symbol 1517 TextUses:1418Used by:1534
Symbol 1518 TextUses:1418Used by:1534
Symbol 1519 TextUses:1418Used by:1534
Symbol 1520 TextUses:1418Used by:1534 1604
Symbol 1521 TextUses:1418Used by:1534 1604
Symbol 1522 GraphicUsed by:1534
Symbol 1523 GraphicUsed by:1534
Symbol 1524 TextUses:1472Used by:1534
Symbol 1525 TextUses:1474Used by:1534
Symbol 1526 TextUses:1472Used by:1534
Symbol 1527 TextUses:1418Used by:1534
Symbol 1528 TextUses:1418Used by:1534
Symbol 1529 TextUses:1418Used by:1534
Symbol 1530 TextUses:1418Used by:1534
Symbol 1531 TextUses:1418Used by:1534
Symbol 1532 TextUses:1418Used by:1534
Symbol 1533 TextUses:1418Used by:1534
Symbol 1534 MovieClip {AssetTutorial2}Uses:1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1476 1515 1516 1517 1518 1519 1520 1463 1521 1430 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533Used by:2201
Symbol 1535 BitmapUsed by:1536
Symbol 1536 GraphicUses:1535Used by:1544
Symbol 1537 TextUses:1474Used by:1544
Symbol 1538 TextUses:1418Used by:1544
Symbol 1539 TextUses:1418Used by:1544
Symbol 1540 TextUses:1418Used by:1544
Symbol 1541 TextUses:1418Used by:1544
Symbol 1542 TextUses:1418Used by:1544
Symbol 1543 TextUses:1418Used by:1544
Symbol 1544 MovieClip {AssetTutorial3}Uses:1536 1473 1537 1496 1538 1539 1540 1541 1542 1543Used by:2201
Symbol 1545 BitmapUsed by:1546
Symbol 1546 GraphicUses:1545Used by:1558
Symbol 1547 GraphicUsed by:1558
Symbol 1548 GraphicUsed by:1558
Symbol 1549 GraphicUsed by:1558
Symbol 1550 TextUses:1472Used by:1558
Symbol 1551 TextUses:1474Used by:1558
Symbol 1552 TextUses:1418Used by:1558
Symbol 1553 TextUses:1418Used by:1558
Symbol 1554 TextUses:1418Used by:1558
Symbol 1555 TextUses:1418Used by:1558
Symbol 1556 TextUses:1418Used by:1558
Symbol 1557 TextUses:1418Used by:1558
Symbol 1558 MovieClip {AssetTutorial4}Uses:1546 1547 1548 1549 1550 1551 1496 1552 1553 1554 1555 1556 1430 1557Used by:2201
Symbol 1559 GraphicUsed by:1604
Symbol 1560 GraphicUsed by:1604
Symbol 1561 GraphicUsed by:1604
Symbol 1562 GraphicUsed by:1604
Symbol 1563 GraphicUsed by:1604
Symbol 1564 GraphicUsed by:1604
Symbol 1565 GraphicUsed by:1604
Symbol 1566 GraphicUsed by:1604
Symbol 1567 GraphicUsed by:1604
Symbol 1568 GraphicUsed by:1604
Symbol 1569 GraphicUsed by:1604
Symbol 1570 GraphicUsed by:1604
Symbol 1571 GraphicUsed by:1604
Symbol 1572 GraphicUsed by:1604
Symbol 1573 GraphicUsed by:1604
Symbol 1574 GraphicUsed by:1604
Symbol 1575 GraphicUsed by:1604
Symbol 1576 GraphicUsed by:1604
Symbol 1577 GraphicUsed by:1604
Symbol 1578 GraphicUsed by:1604
Symbol 1579 GraphicUsed by:1604
Symbol 1580 GraphicUsed by:1604
Symbol 1581 GraphicUsed by:1604
Symbol 1582 GraphicUsed by:1604
Symbol 1583 TextUses:1474Used by:1604
Symbol 1584 TextUses:1472Used by:1604
Symbol 1585 TextUses:1472Used by:1604
Symbol 1586 TextUses:1474Used by:1604
Symbol 1587 TextUses:1472Used by:1604
Symbol 1588 TextUses:1418Used by:1604
Symbol 1589 TextUses:1418Used by:1604
Symbol 1590 TextUses:1418Used by:1604
Symbol 1591 TextUses:1418Used by:1604
Symbol 1592 TextUses:1474Used by:1604
Symbol 1593 TextUses:1418Used by:1604
Symbol 1594 TextUses:1418Used by:1604
Symbol 1595 GraphicUsed by:1604
Symbol 1596 GraphicUsed by:1604
Symbol 1597 GraphicUsed by:1604
Symbol 1598 GraphicUsed by:1604
Symbol 1599 GraphicUsed by:1604
Symbol 1600 GraphicUsed by:1604
Symbol 1601 GraphicUsed by:1604
Symbol 1602 GraphicUsed by:1604
Symbol 1603 GraphicUsed by:1604
Symbol 1604 MovieClip {AssetTutorial5}Uses:1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 154 155 156 157 1573 159 1574 1575 1576 1577 1578 1579 1580 1581 1582 1473 1583 1584 1585 1586 1587 1588 1589 1590 1591 1430 1520 1521 1463 1592 1593 1594 1595 1596 1597 1598 512 1599 1600 1601 1602 1603Used by:2201
Symbol 1605 BitmapUsed by:1606
Symbol 1606 GraphicUses:1605Used by:1607
Symbol 1607 MovieClip {fs_bg0004}Uses:1606Used by:2201
Symbol 1608 BitmapUsed by:1609
Symbol 1609 GraphicUses:1608Used by:1610
Symbol 1610 MovieClip {fs_bg0007}Uses:1609Used by:2201
Symbol 1611 BitmapUsed by:1612
Symbol 1612 GraphicUses:1611Used by:1613
Symbol 1613 MovieClip {fs_bg0008}Uses:1612Used by:2201
Symbol 1614 BitmapUsed by:1615
Symbol 1615 GraphicUses:1614Used by:1616
Symbol 1616 MovieClip {fs_bg0012}Uses:1615Used by:2201
Symbol 1617 BitmapUsed by:1618
Symbol 1618 GraphicUses:1617Used by:1619
Symbol 1619 MovieClip {fs_bg0022}Uses:1618Used by:2201
Symbol 1620 BitmapUsed by:1621
Symbol 1621 GraphicUses:1620Used by:1622
Symbol 1622 MovieClip {fs_fg0004}Uses:1621Used by:2201
Symbol 1623 BitmapUsed by:1624
Symbol 1624 GraphicUses:1623Used by:1625
Symbol 1625 MovieClip {fs_fg0007}Uses:1624Used by:2201
Symbol 1626 BitmapUsed by:1627
Symbol 1627 GraphicUses:1626Used by:1628
Symbol 1628 MovieClip {fs_fg0008}Uses:1627Used by:2201
Symbol 1629 BitmapUsed by:1630
Symbol 1630 GraphicUses:1629Used by:1631
Symbol 1631 MovieClip {fs_fg0012}Uses:1630Used by:2201
Symbol 1632 BitmapUsed by:1633
Symbol 1633 GraphicUses:1632Used by:1634
Symbol 1634 MovieClip {fs_fg0022}Uses:1633Used by:2201
Symbol 1635 GraphicUsed by:1645
Symbol 1636 BitmapUsed by:1637
Symbol 1637 GraphicUses:1636Used by:1638
Symbol 1638 MovieClipUses:1637Used by:1645
Symbol 1639 BitmapUsed by:1640
Symbol 1640 GraphicUses:1639Used by:1641
Symbol 1641 MovieClipUses:1640Used by:1645
Symbol 1642 BitmapUsed by:1643
Symbol 1643 GraphicUses:1642Used by:1644
Symbol 1644 MovieClipUses:1643Used by:1645
Symbol 1645 MovieClip {bg_swamp_fog}Uses:1635 1638 1641 1644Used by:2201
Symbol 1646 BitmapUsed by:1647
Symbol 1647 GraphicUses:1646Used by:1648
Symbol 1648 MovieClip {bg_swamp_horizon}Uses:1647Used by:2201
Symbol 1649 BitmapUsed by:1650
Symbol 1650 GraphicUses:1649Used by:1651
Symbol 1651 MovieClip {bg_swamp_mid}Uses:1650Used by:2201
Symbol 1652 MovieClip {AssetArrowIdle}Used by:2201
Symbol 1653 GraphicUsed by:1656
Symbol 1654 GraphicUsed by:1655
Symbol 1655 MovieClipUses:1654Used by:1656
Symbol 1656 MovieClip {AssetArrowTarget}Uses:1653 1655Used by:2201
Symbol 1657 GraphicUsed by:1663
Symbol 1658 GraphicUsed by:1663
Symbol 1659 GraphicUsed by:1663
Symbol 1660 GraphicUsed by:1663
Symbol 1661 GraphicUsed by:1663
Symbol 1662 GraphicUsed by:1663
Symbol 1663 MovieClipUses:1657 1658 1659 1660 1661 1662Used by:1669
Symbol 1664 GraphicUsed by:1669
Symbol 1665 GraphicUsed by:1666
Symbol 1666 MovieClipUses:1665Used by:1669
Symbol 1667 GraphicUsed by:1668
Symbol 1668 MovieClipUses:1667Used by:1669
Symbol 1669 MovieClip {AssetVineCoiled}Uses:1663 1664 670 1666 1668Used by:2201
Symbol 1670 GraphicUsed by:1674
Symbol 1671 GraphicUsed by:1672
Symbol 1672 MovieClip {com.wwb.princessbride.fire_swamp.assets.VineLengthAsset}Uses:1671Used by:1674
Symbol 1673 GraphicUsed by:1674
Symbol 1674 MovieClip {AssetVineIdle}Uses:1670 1672 1673Used by:2201
Symbol 1675 EditableTextUses:1418Used by:1676
Symbol 1676 MovieClip {AssetScoreEffect}Uses:1675Used by:2201
Symbol 1677 GraphicUsed by:1678
Symbol 1678 MovieClipUses:1677Used by:1679
Symbol 1679 MovieClip {FireSwampBrowser_fla.effectsparkle_modified_202}Uses:1678Used by:1680 1681
Symbol 1680 MovieClip {AssetEffectSparkle}Uses:1679Used by:2201
Symbol 1681 MovieClip {AssetEffectWater}Uses:1679Used by:2201
Symbol 1682 GraphicUsed by:1739
Symbol 1683 GraphicUsed by:1739
Symbol 1684 GraphicUsed by:1739
Symbol 1685 GraphicUsed by:1739
Symbol 1686 GraphicUsed by:1739
Symbol 1687 GraphicUsed by:1739
Symbol 1688 GraphicUsed by:1739
Symbol 1689 GraphicUsed by:1739
Symbol 1690 GraphicUsed by:1739
Symbol 1691 GraphicUsed by:1739
Symbol 1692 GraphicUsed by:1739
Symbol 1693 GraphicUsed by:1739
Symbol 1694 GraphicUsed by:1739 1863
Symbol 1695 GraphicUsed by:1739
Symbol 1696 GraphicUsed by:1739
Symbol 1697 GraphicUsed by:1739
Symbol 1698 GraphicUsed by:1739
Symbol 1699 GraphicUsed by:1739
Symbol 1700 GraphicUsed by:1739
Symbol 1701 GraphicUsed by:1739
Symbol 1702 GraphicUsed by:1739
Symbol 1703 GraphicUsed by:1739
Symbol 1704 GraphicUsed by:1739
Symbol 1705 GraphicUsed by:1739
Symbol 1706 GraphicUsed by:1739
Symbol 1707 GraphicUsed by:1739
Symbol 1708 GraphicUsed by:1739
Symbol 1709 GraphicUsed by:1739
Symbol 1710 GraphicUsed by:1739
Symbol 1711 GraphicUsed by:1739
Symbol 1712 GraphicUsed by:1739
Symbol 1713 GraphicUsed by:1739
Symbol 1714 GraphicUsed by:1739
Symbol 1715 GraphicUsed by:1739
Symbol 1716 GraphicUsed by:1739
Symbol 1717 GraphicUsed by:1739
Symbol 1718 GraphicUsed by:1739
Symbol 1719 GraphicUsed by:1739
Symbol 1720 GraphicUsed by:1739
Symbol 1721 GraphicUsed by:1739
Symbol 1722 GraphicUsed by:1739
Symbol 1723 GraphicUsed by:1739
Symbol 1724 GraphicUsed by:1739
Symbol 1725 GraphicUsed by:1739
Symbol 1726 GraphicUsed by:1739
Symbol 1727 GraphicUsed by:1739
Symbol 1728 GraphicUsed by:1739
Symbol 1729 GraphicUsed by:1739
Symbol 1730 GraphicUsed by:1739
Symbol 1731 GraphicUsed by:1739
Symbol 1732 GraphicUsed by:1739
Symbol 1733 GraphicUsed by:1739
Symbol 1734 GraphicUsed by:1739
Symbol 1735 GraphicUsed by:1739
Symbol 1736 GraphicUsed by:1739
Symbol 1737 GraphicUsed by:1739
Symbol 1738 GraphicUsed by:1739
Symbol 1739 MovieClip {AssetFireSpanLarge1}Uses:1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738Used by:2201
Symbol 1740 GraphicUsed by:1805
Symbol 1741 GraphicUsed by:1805
Symbol 1742 GraphicUsed by:1805
Symbol 1743 GraphicUsed by:1805
Symbol 1744 GraphicUsed by:1805
Symbol 1745 GraphicUsed by:1805
Symbol 1746 GraphicUsed by:1805
Symbol 1747 GraphicUsed by:1805
Symbol 1748 GraphicUsed by:1805
Symbol 1749 GraphicUsed by:1805
Symbol 1750 GraphicUsed by:1805
Symbol 1751 GraphicUsed by:1805
Symbol 1752 GraphicUsed by:1805
Symbol 1753 GraphicUsed by:1805
Symbol 1754 GraphicUsed by:1805
Symbol 1755 GraphicUsed by:1805
Symbol 1756 GraphicUsed by:1805 1863
Symbol 1757 GraphicUsed by:1805
Symbol 1758 GraphicUsed by:1805
Symbol 1759 GraphicUsed by:1805
Symbol 1760 GraphicUsed by:1805
Symbol 1761 GraphicUsed by:1805
Symbol 1762 GraphicUsed by:1805
Symbol 1763 GraphicUsed by:1805
Symbol 1764 GraphicUsed by:1805 1863 1936
Symbol 1765 GraphicUsed by:1805
Symbol 1766 GraphicUsed by:1805
Symbol 1767 GraphicUsed by:1805
Symbol 1768 GraphicUsed by:1805
Symbol 1769 GraphicUsed by:1805
Symbol 1770 GraphicUsed by:1805
Symbol 1771 GraphicUsed by:1805
Symbol 1772 GraphicUsed by:1805
Symbol 1773 GraphicUsed by:1805
Symbol 1774 GraphicUsed by:1805
Symbol 1775 GraphicUsed by:1805
Symbol 1776 GraphicUsed by:1805
Symbol 1777 GraphicUsed by:1805
Symbol 1778 GraphicUsed by:1805
Symbol 1779 GraphicUsed by:1805
Symbol 1780 GraphicUsed by:1805
Symbol 1781 GraphicUsed by:1805
Symbol 1782 GraphicUsed by:1805 1988
Symbol 1783 GraphicUsed by:1805
Symbol 1784 GraphicUsed by:1805
Symbol 1785 GraphicUsed by:1805
Symbol 1786 GraphicUsed by:1805
Symbol 1787 GraphicUsed by:1805
Symbol 1788 GraphicUsed by:1805
Symbol 1789 GraphicUsed by:1805
Symbol 1790 GraphicUsed by:1805
Symbol 1791 GraphicUsed by:1805
Symbol 1792 GraphicUsed by:1805
Symbol 1793 GraphicUsed by:1805
Symbol 1794 GraphicUsed by:1805 1863
Symbol 1795 GraphicUsed by:1805
Symbol 1796 GraphicUsed by:1805
Symbol 1797 GraphicUsed by:1805
Symbol 1798 GraphicUsed by:1805
Symbol 1799 GraphicUsed by:1805
Symbol 1800 GraphicUsed by:1805
Symbol 1801 GraphicUsed by:1805
Symbol 1802 GraphicUsed by:1805
Symbol 1803 GraphicUsed by:1805
Symbol 1804 GraphicUsed by:1805
Symbol 1805 MovieClip {AssetFireSpanLarge2}Uses:1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804Used by:2201
Symbol 1806 GraphicUsed by:1863
Symbol 1807 GraphicUsed by:1863
Symbol 1808 GraphicUsed by:1863
Symbol 1809 GraphicUsed by:1863
Symbol 1810 GraphicUsed by:1863
Symbol 1811 GraphicUsed by:1863
Symbol 1812 GraphicUsed by:1863
Symbol 1813 GraphicUsed by:1863
Symbol 1814 GraphicUsed by:1863
Symbol 1815 GraphicUsed by:1863
Symbol 1816 GraphicUsed by:1863
Symbol 1817 GraphicUsed by:1863
Symbol 1818 GraphicUsed by:1863
Symbol 1819 GraphicUsed by:1863
Symbol 1820 GraphicUsed by:1863
Symbol 1821 GraphicUsed by:1863
Symbol 1822 GraphicUsed by:1863
Symbol 1823 GraphicUsed by:1863
Symbol 1824 GraphicUsed by:1863
Symbol 1825 GraphicUsed by:1863
Symbol 1826 GraphicUsed by:1863
Symbol 1827 GraphicUsed by:1863
Symbol 1828 GraphicUsed by:1863
Symbol 1829 GraphicUsed by:1863
Symbol 1830 GraphicUsed by:1863
Symbol 1831 GraphicUsed by:1863
Symbol 1832 GraphicUsed by:1863
Symbol 1833 GraphicUsed by:1863
Symbol 1834 GraphicUsed by:1863
Symbol 1835 GraphicUsed by:1863
Symbol 1836 GraphicUsed by:1863
Symbol 1837 GraphicUsed by:1863
Symbol 1838 GraphicUsed by:1863
Symbol 1839 GraphicUsed by:1863
Symbol 1840 GraphicUsed by:1863
Symbol 1841 GraphicUsed by:1863
Symbol 1842 GraphicUsed by:1863
Symbol 1843 GraphicUsed by:1863
Symbol 1844 GraphicUsed by:1863
Symbol 1845 GraphicUsed by:1863
Symbol 1846 GraphicUsed by:1863
Symbol 1847 GraphicUsed by:1863
Symbol 1848 GraphicUsed by:1863
Symbol 1849 GraphicUsed by:1863
Symbol 1850 GraphicUsed by:1863
Symbol 1851 GraphicUsed by:1863
Symbol 1852 GraphicUsed by:1863
Symbol 1853 GraphicUsed by:1863
Symbol 1854 GraphicUsed by:1863
Symbol 1855 GraphicUsed by:1863
Symbol 1856 GraphicUsed by:1863
Symbol 1857 GraphicUsed by:1863
Symbol 1858 GraphicUsed by:1863
Symbol 1859 GraphicUsed by:1863
Symbol 1860 GraphicUsed by:1863
Symbol 1861 GraphicUsed by:1863
Symbol 1862 GraphicUsed by:1863
Symbol 1863 MovieClip {AssetFireSpanLarge3}Uses:1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1756 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 1833 1834 1764 1835 1836 1837 1838 1839 1840 1841 1842 1694 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1794 1854 1855 1856 1857 1858 1859 1860 1861 1862Used by:2201
Symbol 1864 GraphicUsed by:1899
Symbol 1865 GraphicUsed by:1899
Symbol 1866 GraphicUsed by:1899
Symbol 1867 GraphicUsed by:1899
Symbol 1868 GraphicUsed by:1899
Symbol 1869 GraphicUsed by:1899
Symbol 1870 GraphicUsed by:1899
Symbol 1871 GraphicUsed by:1899
Symbol 1872 GraphicUsed by:1899
Symbol 1873 GraphicUsed by:1899
Symbol 1874 GraphicUsed by:1899
Symbol 1875 GraphicUsed by:1899
Symbol 1876 GraphicUsed by:1899
Symbol 1877 GraphicUsed by:1899
Symbol 1878 GraphicUsed by:1899
Symbol 1879 GraphicUsed by:1899
Symbol 1880 GraphicUsed by:1899
Symbol 1881 GraphicUsed by:1899
Symbol 1882 GraphicUsed by:1899
Symbol 1883 GraphicUsed by:1899
Symbol 1884 GraphicUsed by:1899
Symbol 1885 GraphicUsed by:1899
Symbol 1886 GraphicUsed by:1899
Symbol 1887 GraphicUsed by:1899
Symbol 1888 GraphicUsed by:1899
Symbol 1889 GraphicUsed by:1899
Symbol 1890 GraphicUsed by:1899
Symbol 1891 GraphicUsed by:1899
Symbol 1892 GraphicUsed by:1899
Symbol 1893 GraphicUsed by:1899
Symbol 1894 GraphicUsed by:1899
Symbol 1895 GraphicUsed by:1899
Symbol 1896 GraphicUsed by:1899
Symbol 1897 GraphicUsed by:1899
Symbol 1898 GraphicUsed by:1899
Symbol 1899 MovieClip {AssetFireSpanSmall1}Uses:1864 1865 1866 1867 1868 1869 1870 1871 1872 1873 1874 1875 1876 1877 1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898Used by:2201
Symbol 1900 GraphicUsed by:1936
Symbol 1901 GraphicUsed by:1936
Symbol 1902 GraphicUsed by:1936
Symbol 1903 GraphicUsed by:1936
Symbol 1904 GraphicUsed by:1936
Symbol 1905 GraphicUsed by:1936
Symbol 1906 GraphicUsed by:1936
Symbol 1907 GraphicUsed by:1936
Symbol 1908 GraphicUsed by:1936
Symbol 1909 GraphicUsed by:1936
Symbol 1910 GraphicUsed by:1936
Symbol 1911 GraphicUsed by:1936
Symbol 1912 GraphicUsed by:1936
Symbol 1913 GraphicUsed by:1936
Symbol 1914 GraphicUsed by:1936
Symbol 1915 GraphicUsed by:1936
Symbol 1916 GraphicUsed by:1936
Symbol 1917 GraphicUsed by:1936
Symbol 1918 GraphicUsed by:1936
Symbol 1919 GraphicUsed by:1936
Symbol 1920 GraphicUsed by:1936
Symbol 1921 GraphicUsed by:1936
Symbol 1922 GraphicUsed by:1936
Symbol 1923 GraphicUsed by:1936
Symbol 1924 GraphicUsed by:1936
Symbol 1925 GraphicUsed by:1936
Symbol 1926 GraphicUsed by:1936
Symbol 1927 GraphicUsed by:1936
Symbol 1928 GraphicUsed by:1936
Symbol 1929 GraphicUsed by:1936
Symbol 1930 GraphicUsed by:1936
Symbol 1931 GraphicUsed by:1936
Symbol 1932 GraphicUsed by:1936
Symbol 1933 GraphicUsed by:1936
Symbol 1934 GraphicUsed by:1936
Symbol 1935 GraphicUsed by:1936
Symbol 1936 MovieClip {AssetFireSpanSmall2}Uses:1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1764Used by:2201
Symbol 1937 GraphicUsed by:1988
Symbol 1938 GraphicUsed by:1988
Symbol 1939 GraphicUsed by:1988
Symbol 1940 GraphicUsed by:1988
Symbol 1941 GraphicUsed by:1988
Symbol 1942 GraphicUsed by:1988
Symbol 1943 GraphicUsed by:1988
Symbol 1944 GraphicUsed by:1988
Symbol 1945 GraphicUsed by:1988
Symbol 1946 GraphicUsed by:1988
Symbol 1947 GraphicUsed by:1988
Symbol 1948 GraphicUsed by:1988
Symbol 1949 GraphicUsed by:1988
Symbol 1950 GraphicUsed by:1988
Symbol 1951 GraphicUsed by:1988
Symbol 1952 GraphicUsed by:1988
Symbol 1953 GraphicUsed by:1988
Symbol 1954 GraphicUsed by:1988
Symbol 1955 GraphicUsed by:1988
Symbol 1956 GraphicUsed by:1988
Symbol 1957 GraphicUsed by:1988
Symbol 1958 GraphicUsed by:1988
Symbol 1959 GraphicUsed by:1988
Symbol 1960 GraphicUsed by:1988
Symbol 1961 GraphicUsed by:1988
Symbol 1962 GraphicUsed by:1988
Symbol 1963 GraphicUsed by:1988
Symbol 1964 GraphicUsed by:1988
Symbol 1965 GraphicUsed by:1988
Symbol 1966 GraphicUsed by:1988
Symbol 1967 GraphicUsed by:1988
Symbol 1968 GraphicUsed by:1988
Symbol 1969 GraphicUsed by:1988
Symbol 1970 GraphicUsed by:1988
Symbol 1971 GraphicUsed by:1988
Symbol 1972 GraphicUsed by:1988
Symbol 1973 GraphicUsed by:1988
Symbol 1974 GraphicUsed by:1988
Symbol 1975 GraphicUsed by:1988
Symbol 1976 GraphicUsed by:1988
Symbol 1977 GraphicUsed by:1988
Symbol 1978 GraphicUsed by:1988
Symbol 1979 GraphicUsed by:1988
Symbol 1980 GraphicUsed by:1988
Symbol 1981 GraphicUsed by:1988
Symbol 1982 GraphicUsed by:1988
Symbol 1983 GraphicUsed by:1988
Symbol 1984 GraphicUsed by:1988
Symbol 1985 GraphicUsed by:1988
Symbol 1986 GraphicUsed by:1988
Symbol 1987 GraphicUsed by:1988
Symbol 1988 MovieClip {AssetFireSpanSmall3}Uses:1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1782 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987Used by:2201
Symbol 1989 GraphicUsed by:1990
Symbol 1990 MovieClip {AssetEffectFireHeat}Uses:1989Used by:2201
Symbol 1991 GraphicUsed by:2013
Symbol 1992 GraphicUsed by:2013
Symbol 1993 GraphicUsed by:2013
Symbol 1994 GraphicUsed by:2013
Symbol 1995 GraphicUsed by:2013
Symbol 1996 GraphicUsed by:2013
Symbol 1997 GraphicUsed by:2013
Symbol 1998 GraphicUsed by:2013
Symbol 1999 GraphicUsed by:2013
Symbol 2000 GraphicUsed by:2013
Symbol 2001 GraphicUsed by:2013
Symbol 2002 GraphicUsed by:2013
Symbol 2003 GraphicUsed by:2013
Symbol 2004 GraphicUsed by:2013
Symbol 2005 GraphicUsed by:2013
Symbol 2006 GraphicUsed by:2013
Symbol 2007 GraphicUsed by:2013
Symbol 2008 GraphicUsed by:2013
Symbol 2009 GraphicUsed by:2013
Symbol 2010 GraphicUsed by:2013
Symbol 2011 GraphicUsed by:2013
Symbol 2012 GraphicUsed by:2013
Symbol 2013 MovieClip {AssetFireTransition}Uses:1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012Used by:2201
Symbol 2014 GraphicUsed by:2015
Symbol 2015 MovieClipUses:2014Used by:2029
Symbol 2016 Font {Booter}Used by:2017 2025 2028
Symbol 2017 EditableTextUses:2016Used by:2029
Symbol 2018 GraphicUsed by:2019 2022
Symbol 2019 MovieClipUses:2018Used by:2022
Symbol 2020 MovieClipUses:645Used by:2021
Symbol 2021 MovieClip {FireSwampBrowser_fla.gemsparkleeffect_217}Uses:2020Used by:2022
Symbol 2022 MovieClip {FireSwampBrowser_fla.gemui_215}Uses:2019 2021 2018Used by:2029 2087 2089
Symbol 2023 GraphicUsed by:2024
Symbol 2024 MovieClipUses:2023Used by:2029
Symbol 2025 EditableTextUses:2016Used by:2029
Symbol 2026 GraphicUsed by:2027
Symbol 2027 MovieClipUses:2026Used by:2029
Symbol 2028 EditableTextUses:2016Used by:2029
Symbol 2029 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.GemDisplay}Uses:2015 2017 2022 2024 2025 2027 2028Used by:2201
Symbol 2030 GraphicUsed by:2031
Symbol 2031 MovieClipUses:2030Used by:2036
Symbol 2032 GraphicUsed by:2033
Symbol 2033 MovieClipUses:2032Used by:2036
Symbol 2034 GraphicUsed by:2035
Symbol 2035 MovieClipUses:2034Used by:2036
Symbol 2036 MovieClipUses:2031 2033 2035Used by:2038
Symbol 2037 GraphicUsed by:2038
Symbol 2038 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.HeatMeter}Uses:2036 2037Used by:2201
Symbol 2039 GraphicUsed by:2040
Symbol 2040 MovieClipUses:2039Used by:2087 2089
Symbol 2041 GraphicUsed by:2042
Symbol 2042 MovieClipUses:2041Used by:2087 2089
Symbol 2043 Font {Helvetica}Used by:2044
Symbol 2044 TextUses:2043Used by:2087 2089
Symbol 2045 GraphicUsed by:2087 2089
Symbol 2046 TextUses:40Used by:2054
Symbol 2047 TextUses:40Used by:2054
Symbol 2048 TextUses:40Used by:2054
Symbol 2049 TextUses:40Used by:2054
Symbol 2050 TextUses:40Used by:2054
Symbol 2051 TextUses:40Used by:2054
Symbol 2052 TextUses:40Used by:2054
Symbol 2053 TextUses:40Used by:2054
Symbol 2054 MovieClip {FireSwampBrowser_fla.score_header_229}Uses:2046 2047 2048 2049 2050 2051 2052 2053Used by:2087 2089
Symbol 2055 GraphicUsed by:2087 2089
Symbol 2056 TextUses:40Used by:2087 2089
Symbol 2057 TextUses:40Used by:2087 2089
Symbol 2058 GraphicUsed by:2087
Symbol 2059 TextUses:40Used by:2087 2089
Symbol 2060 GraphicUsed by:2087 2089
Symbol 2061 GraphicUsed by:2087 2089
Symbol 2062 TextUses:40Used by:2087 2089
Symbol 2063 TextUses:40Used by:2087 2089
Symbol 2064 GraphicUsed by:2072
Symbol 2065 GraphicUsed by:2072
Symbol 2066 GraphicUsed by:2072
Symbol 2067 GraphicUsed by:2072
Symbol 2068 GraphicUsed by:2072
Symbol 2069 GraphicUsed by:2072
Symbol 2070 GraphicUsed by:2072
Symbol 2071 GraphicUsed by:2072
Symbol 2072 MovieClipUses:2064 589 767 2065 595 2066 2067 2068 2069 528 2070 826 2071Used by:2087 2089
Symbol 2073 EditableTextUses:40 690Used by:2079
Symbol 2074 TextUses:1418Used by:2075
Symbol 2075 MovieClipUses:2074Used by:2078
Symbol 2076 EditableTextUses:1418Used by:2077
Symbol 2077 MovieClip {FireSwampBrowser_fla.bonus_score_234}Uses:2076Used by:2078
Symbol 2078 MovieClip {FireSwampBrowser_fla.bonus_anim_232}Uses:2075 2077Used by:2079
Symbol 2079 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.FireSwampTextCounter}Uses:2073 2078Used by:2087 2089
Symbol 2080 GraphicUsed by:2081
Symbol 2081 MovieClipUses:2080Used by:2087 2089
Symbol 2082 TextUses:40Used by:2087 2089
Symbol 2083 BitmapUsed by:2084
Symbol 2084 GraphicUses:2083Used by:2086
Symbol 2085 GraphicUsed by:2086
Symbol 2086 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.ButtonSummaryComplete}Uses:2084 2085Used by:2087 2089
Symbol 2087 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.LevelScoreSummary}Uses:2040 2042 2044 2045 2054 2055 2056 2057 2058 2059 2060 692 2061 2022 2062 2063 2072 2079 2081 2082 2086Used by:2201
Symbol 2088 GraphicUsed by:2089
Symbol 2089 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.RoomScoreSummary}Uses:2040 2042 2044 2045 2054 2055 2056 2057 2088 2059 2060 692 2061 2022 2062 2063 2072 2079 2081 2082 2086Used by:2201
Symbol 2090 BitmapUsed by:2091 2096
Symbol 2091 GraphicUses:2090Used by:2099
Symbol 2092 BitmapUsed by:2093 2102
Symbol 2093 GraphicUses:2092Used by:2095
Symbol 2094 TextUses:40Used by:2095
Symbol 2095 MovieClipUses:2093 2094Used by:2099
Symbol 2096 GraphicUses:2090Used by:2097
Symbol 2097 MovieClipUses:2096Used by:2099
Symbol 2098 GraphicUsed by:2099
Symbol 2099 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.WestleySelectButton}Uses:2091 2095 2097 2098Used by:2201
Symbol 2100 BitmapUsed by:2101
Symbol 2101 GraphicUses:2100Used by:2104 2105
Symbol 2102 GraphicUses:2092Used by:2103
Symbol 2103 MovieClipUses:2102Used by:2105
Symbol 2104 MovieClipUses:2101Used by:2105
Symbol 2105 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.ButtercupSelectButton}Uses:2101 2103 2104Used by:2201
Symbol 2106 BitmapUsed by:2107
Symbol 2107 GraphicUses:2106Used by:2108
Symbol 2108 MovieClipUses:2107Used by:2129
Symbol 2109 GraphicUsed by:2114
Symbol 2110 GraphicUsed by:2114
Symbol 2111 GraphicUsed by:2114
Symbol 2112 GraphicUsed by:2114
Symbol 2113 GraphicUsed by:2114
Symbol 2114 MovieClipUses:2109 2110 2111 2112 2113Used by:2115
Symbol 2115 MovieClipUses:2114Used by:2129
Symbol 2116 BitmapUsed by:2117
Symbol 2117 GraphicUses:2116Used by:2129
Symbol 2118 GraphicUsed by:2119
Symbol 2119 MovieClipUses:2118Used by:2121
Symbol 2120 GraphicUsed by:2121
Symbol 2121 MovieClipUses:2119 2120Used by:2122
Symbol 2122 MovieClipUses:2121Used by:2129
Symbol 2123 GraphicUsed by:2125 2143
Symbol 2124 TextUses:690Used by:2125
Symbol 2125 MovieClip {buynow_btn_next}Uses:2123 2124Used by:2129
Symbol 2126 TextUses:690Used by:2127
Symbol 2127 MovieClipUses:2126Used by:2129
Symbol 2128 TextUses:690Used by:2129
Symbol 2129 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.BuyNowManager}Uses:2108 2115 2117 2122 2125 2127 2128Used by:2201
Symbol 2130 GraphicUsed by:2131
Symbol 2131 MovieClipUses:2130Used by:2200
Symbol 2132 BitmapUsed by:2133
Symbol 2133 GraphicUses:2132Used by:2200
Symbol 2134 GraphicUsed by:2135
Symbol 2135 MovieClipUses:2134Used by:2137
Symbol 2136 GraphicUsed by:2137
Symbol 2137 MovieClipUses:2135 2136Used by:2138
Symbol 2138 MovieClipUses:2137Used by:2200
Symbol 2139 GraphicUsed by:2140
Symbol 2140 MovieClipUses:2139Used by:2200
Symbol 2141 TextUses:690Used by:2143
Symbol 2142 GraphicUsed by:2143
Symbol 2143 ButtonUses:2123 2141 2142Used by:2200
Symbol 2144 TextUses:690Used by:2146
Symbol 2145 TextUses:690Used by:2146
Symbol 2146 MovieClipUses:2144 2145Used by:2200
Symbol 2147 TextUses:690Used by:2200
Symbol 2148 BitmapUsed by:2149
Symbol 2149 GraphicUses:2148Used by:2200
Symbol 2150 BitmapUsed by:2151
Symbol 2151 GraphicUses:2150Used by:2200
Symbol 2152 BitmapUsed by:2153
Symbol 2153 GraphicUses:2152Used by:2200
Symbol 2154 BitmapUsed by:2155
Symbol 2155 GraphicUses:2154Used by:2200
Symbol 2156 BitmapUsed by:2157
Symbol 2157 GraphicUses:2156Used by:2200
Symbol 2158 BitmapUsed by:2159
Symbol 2159 GraphicUses:2158Used by:2200
Symbol 2160 BitmapUsed by:2161
Symbol 2161 GraphicUses:2160Used by:2200
Symbol 2162 BitmapUsed by:2163
Symbol 2163 GraphicUses:2162Used by:2200
Symbol 2164 BitmapUsed by:2165
Symbol 2165 GraphicUses:2164Used by:2200
Symbol 2166 BitmapUsed by:2167
Symbol 2167 GraphicUses:2166Used by:2200
Symbol 2168 BitmapUsed by:2169
Symbol 2169 GraphicUses:2168Used by:2200
Symbol 2170 BitmapUsed by:2171
Symbol 2171 GraphicUses:2170Used by:2200
Symbol 2172 BitmapUsed by:2173
Symbol 2173 GraphicUses:2172Used by:2200
Symbol 2174 BitmapUsed by:2175
Symbol 2175 GraphicUses:2174Used by:2200
Symbol 2176 BitmapUsed by:2177
Symbol 2177 GraphicUses:2176Used by:2200
Symbol 2178 BitmapUsed by:2179
Symbol 2179 GraphicUses:2178Used by:2200
Symbol 2180 BitmapUsed by:2181
Symbol 2181 GraphicUses:2180Used by:2200
Symbol 2182 BitmapUsed by:2183
Symbol 2183 GraphicUses:2182Used by:2200
Symbol 2184 BitmapUsed by:2185
Symbol 2185 GraphicUses:2184Used by:2200
Symbol 2186 BitmapUsed by:2187
Symbol 2187 GraphicUses:2186Used by:2200
Symbol 2188 BitmapUsed by:2189
Symbol 2189 GraphicUses:2188Used by:2200
Symbol 2190 BitmapUsed by:2191
Symbol 2191 GraphicUses:2190Used by:2200
Symbol 2192 BitmapUsed by:2193
Symbol 2193 GraphicUses:2192Used by:2200
Symbol 2194 BitmapUsed by:2195
Symbol 2195 GraphicUses:2194Used by:2200
Symbol 2196 BitmapUsed by:2197
Symbol 2197 GraphicUses:2196Used by:2200
Symbol 2198 BitmapUsed by:2199
Symbol 2199 GraphicUses:2198Used by:2200
Symbol 2200 MovieClip {AssetIntroWipe}Uses:34 2131 2133 2138 2140 2143 2146 2147 2149 2151 2153 2155 2157 2159 2161 2163 2165 2167 2169 2171 2173 2175 2177 2179 2181 2183 2185 2187 2189 2191 2193 2195 2197 2199Used by:2201
Symbol 2201 MovieClip {FireSwampBrowser_fla._preloader_6}Uses:71 106 108 110 135 138 183 202 236 271 296 297 310 313 314 317 320 323 326 329 332 333 358 379 381 420 429 430 447 462 470 471 473 486 488 506 507 569 580 612 622 640 641 644 646 647 660 661 663 664 666 673 688 699 700 715 719 720 735 739 740 781 796 830 839 840 841 857 858 859 864 865 876 889 900 911 922 933 940 950 962 964 971 972 973 974 977 1004 1027 1052 1079 1104 1105 1106 1107 1108 1109 1137 1140 1143 1146 1149 1152 1155 1158 1159 1182 1201 1204 1304 1341 1360 1361 1378 1393 1399 1401 1404 1405 1409 1502 1534 1544 1558 1604 1607 1610 1613 1616 1619 1622 1625 1628 1631 1634 1645 1648 1651 1652 1656 1669 1674 1676 1680 1681 1739 1805 1863 1899 1936 1988 1990 2013 2029 2038 2087 2089 2099 2105 2129 2200Used by:Timeline
Symbol 2202 Sound {fs_gamemusic_level3v1m}Used by:2223
Symbol 2203 Sound {fs_gamemusic_level2v1m}Used by:2223
Symbol 2204 Sound {fs_wesswitch03}Used by:2223
Symbol 2205 Sound {fs_wesswitch02}Used by:2223
Symbol 2206 Sound {fs_wesswitch01}Used by:2223
Symbol 2207 Sound {fs_wessuccess06}Used by:2223
Symbol 2208 Sound {fs_wessuccess05}Used by:2223
Symbol 2209 Sound {fs_wessuccess04}Used by:2223
Symbol 2210 Sound {fs_wessuccess03}Used by:2223
Symbol 2211 Sound {fs_wessuccess02}Used by:2223
Symbol 2212 Sound {fs_wessuccess01}Used by:2223
Symbol 2213 Sound {fs_weskill}Used by:2223
Symbol 2214 Sound {fs_wesbcswitch02}Used by:2223
Symbol 2215 Sound {fs_wesbcdamage02}Used by:2223
Symbol 2216 Sound {fs_wesbcdamage01}Used by:2223
Symbol 2217 Sound {fs_gamemusic_level1v1m}Used by:2223
Symbol 2218 Sound {fs_bcswitch}Used by:2223
Symbol 2219 Sound {fs_bcdamage}Used by:2223
Symbol 2220 Sound {FireSpout_On}Used by:2223
Symbol 2221 Sound {FireSpout_Off}Used by:2223
Symbol 2222 Sound {bouldercrash}Used by:2223
Symbol 2223 MovieClip {FireSwampBrowser_fla._preloaderAudio_261}Uses:2202 2203 2204 2205 2206 2207 2208 2209 2210 2211 2212 2213 2214 2215 2216 2217 2218 2219 2220 2221 2222Used by:Timeline

Instance Names

"loader"Frame 1Symbol 67 MovieClip {FireSwampBrowser_fla._loadingscreen_1}
"game_container"Frame 1Symbol 68 MovieClip
"TxtGame"Symbol 55 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.MainHeader} Frame 1Symbol 42 EditableText
"TxtScore"Symbol 55 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.MainHeader} Frame 1Symbol 43 EditableText
"TxtLevel"Symbol 55 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.MainHeader} Frame 1Symbol 44 EditableText
"txt_room"Symbol 57 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.RoomDisplay} Frame 1Symbol 56 EditableText
"loadbar"Symbol 67 MovieClip {FireSwampBrowser_fla._loadingscreen_1} Frame 1Symbol 66 MovieClip
"fill"Symbol 76 MovieClip {FireSwampBrowser_fla.color_coil_10} Frame 1Symbol 75 MovieClip
"color"Symbol 106 MovieClip {AssetBridgeClose} Frame 1Symbol 76 MovieClip {FireSwampBrowser_fla.color_coil_10}
"color"Symbol 108 MovieClip {AssetBridgeIdleClose} Frame 1Symbol 76 MovieClip {FireSwampBrowser_fla.color_coil_10}
"color"Symbol 110 MovieClip {AssetBridgeIdleOpen} Frame 1Symbol 76 MovieClip {FireSwampBrowser_fla.color_coil_10}
"color"Symbol 135 MovieClip {AssetBridgeOpen} Frame 1Symbol 76 MovieClip {FireSwampBrowser_fla.color_coil_10}
"fill"Symbol 936 MovieClip {FireSwampBrowser_fla.pr_branch_01_123} Frame 1Symbol 935 MovieClip
"color"Symbol 940 MovieClip {AssetLeverDown} Frame 1Symbol 936 MovieClip {FireSwampBrowser_fla.pr_branch_01_123}
"color"Symbol 950 MovieClip {AssetLeverToDown} Frame 1Symbol 936 MovieClip {FireSwampBrowser_fla.pr_branch_01_123}
"color"Symbol 962 MovieClip {AssetLeverToUp} Frame 1Symbol 936 MovieClip {FireSwampBrowser_fla.pr_branch_01_123}
"color"Symbol 964 MovieClip {AssetLeverUp} Frame 1Symbol 936 MovieClip {FireSwampBrowser_fla.pr_branch_01_123}
"fill"Symbol 969 MovieClip {FireSwampBrowser_fla.pr_button_01_130} Frame 1Symbol 967 MovieClip
"color"Symbol 971 MovieClip {AssetPadDown} Frame 1Symbol 969 MovieClip {FireSwampBrowser_fla.pr_button_01_130}
"color"Symbol 972 MovieClip {AssetPadToDown} Frame 1Symbol 969 MovieClip {FireSwampBrowser_fla.pr_button_01_130}
"color"Symbol 973 MovieClip {AssetPadToUp} Frame 1Symbol 969 MovieClip {FireSwampBrowser_fla.pr_button_01_130}
"color"Symbol 974 MovieClip {AssetPadUp} Frame 1Symbol 969 MovieClip {FireSwampBrowser_fla.pr_button_01_130}
"mcBlockBack"Symbol 1409 MovieClip {AssetTutorialShell} Frame 1Symbol 1407 MovieClip
"txt"Symbol 1676 MovieClip {AssetScoreEffect} Frame 1Symbol 1675 EditableText
"sparkle"Symbol 2022 MovieClip {FireSwampBrowser_fla.gemui_215} Frame 1Symbol 2021 MovieClip {FireSwampBrowser_fla.gemsparkleeffect_217}
"gem1circle"Symbol 2029 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.GemDisplay} Frame 1Symbol 2015 MovieClip
"txt1"Symbol 2029 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.GemDisplay} Frame 1Symbol 2017 EditableText
"gem1"Symbol 2029 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.GemDisplay} Frame 1Symbol 2022 MovieClip {FireSwampBrowser_fla.gemui_215}
"gem2circle"Symbol 2029 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.GemDisplay} Frame 1Symbol 2024 MovieClip
"gem2"Symbol 2029 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.GemDisplay} Frame 1Symbol 2022 MovieClip {FireSwampBrowser_fla.gemui_215}
"txt2"Symbol 2029 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.GemDisplay} Frame 1Symbol 2025 EditableText
"gem3circle"Symbol 2029 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.GemDisplay} Frame 1Symbol 2027 MovieClip
"gem3"Symbol 2029 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.GemDisplay} Frame 1Symbol 2022 MovieClip {FireSwampBrowser_fla.gemui_215}
"txt3"Symbol 2029 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.GemDisplay} Frame 1Symbol 2028 EditableText
"meter_fill"Symbol 2038 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.HeatMeter} Frame 1Symbol 2036 MovieClip
"txt"Symbol 2077 MovieClip {FireSwampBrowser_fla.bonus_score_234} Frame 1Symbol 2076 EditableText
"txt_mc"Symbol 2078 MovieClip {FireSwampBrowser_fla.bonus_anim_232} Frame 1Symbol 2077 MovieClip {FireSwampBrowser_fla.bonus_score_234}
"txt"Symbol 2079 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.FireSwampTextCounter} Frame 1Symbol 2073 EditableText
"bonus"Symbol 2079 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.FireSwampTextCounter} Frame 1Symbol 2078 MovieClip {FireSwampBrowser_fla.bonus_anim_232}
"header"Symbol 2087 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.LevelScoreSummary} Frame 1Symbol 2054 MovieClip {FireSwampBrowser_fla.score_header_229}
"rous"Symbol 2087 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.LevelScoreSummary} Frame 1Symbol 2079 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.FireSwampTextCounter}
"purple"Symbol 2087 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.LevelScoreSummary} Frame 1Symbol 2079 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.FireSwampTextCounter}
"green"Symbol 2087 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.LevelScoreSummary} Frame 1Symbol 2079 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.FireSwampTextCounter}
"blue"Symbol 2087 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.LevelScoreSummary} Frame 1Symbol 2079 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.FireSwampTextCounter}
"time"Symbol 2087 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.LevelScoreSummary} Frame 1Symbol 2079 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.FireSwampTextCounter}
"total"Symbol 2087 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.LevelScoreSummary} Frame 1Symbol 2079 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.FireSwampTextCounter}
"header"Symbol 2089 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.RoomScoreSummary} Frame 1Symbol 2054 MovieClip {FireSwampBrowser_fla.score_header_229}
"rous"Symbol 2089 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.RoomScoreSummary} Frame 1Symbol 2079 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.FireSwampTextCounter}
"time"Symbol 2089 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.RoomScoreSummary} Frame 1Symbol 2079 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.FireSwampTextCounter}
"purple"Symbol 2089 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.RoomScoreSummary} Frame 1Symbol 2079 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.FireSwampTextCounter}
"green"Symbol 2089 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.RoomScoreSummary} Frame 1Symbol 2079 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.FireSwampTextCounter}
"blue"Symbol 2089 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.RoomScoreSummary} Frame 1Symbol 2079 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.FireSwampTextCounter}
"total"Symbol 2089 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.RoomScoreSummary} Frame 1Symbol 2079 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.FireSwampTextCounter}
"btn_play"Symbol 2200 MovieClip {AssetIntroWipe} Frame 176Symbol 2143 Button

Special Tags

FileAttributes (69)Timeline Frame 1Access local files only, Metadata not present, AS3.
Protect (24)Timeline Frame 10 bytes ""

Labels

"Antic"Symbol 236 MovieClip {AssetButtercupAttackLeft} Frame 1
"Antic cont'd"Symbol 236 MovieClip {AssetButtercupAttackLeft} Frame 5
"strike"Symbol 236 MovieClip {AssetButtercupAttackLeft} Frame 8
"back --->"Symbol 236 MovieClip {AssetButtercupAttackLeft} Frame 14
"S/A frame 1"Symbol 236 MovieClip {AssetButtercupAttackLeft} Frame 20
"Antic"Symbol 271 MovieClip {AssetButtercupAttackRight} Frame 1
"Antic cont'd"Symbol 271 MovieClip {AssetButtercupAttackRight} Frame 5
"strike"Symbol 271 MovieClip {AssetButtercupAttackRight} Frame 8
"back --->"Symbol 271 MovieClip {AssetButtercupAttackRight} Frame 14
"S/A frame 1"Symbol 271 MovieClip {AssetButtercupAttackRight} Frame 20
"1/2"Symbol 296 MovieClip {AssetButtercupClimb} Frame 13
"1/2"Symbol 297 MovieClip {AssetButtercupClimbDown} Frame 13
"CYCLE"Symbol 358 MovieClip {AssetButtercupJumpUp} Frame 9
"S/A  frame 9"Symbol 358 MovieClip {AssetButtercupJumpUp} Frame 15
"CYCLE"Symbol 379 MovieClip {AssetButtercupJumpDown} Frame 7
"Cycle"Symbol 420 MovieClip {AssetButtercupRun} Frame 1
"1/2"Symbol 420 MovieClip {AssetButtercupRun} Frame 11
"Cycle"Symbol 429 MovieClip Frame 1
"1/2"Symbol 429 MovieClip Frame 13
"1/2"Symbol 447 MovieClip {AssetButtercupSwingBack} Frame 5
"1/2"Symbol 462 MovieClip {AssetButtercupSwingFore} Frame 5
"Antic"Symbol 1052 MovieClip {AssetWestleyAttackLeft} Frame 1
"Antic cont'd"Symbol 1052 MovieClip {AssetWestleyAttackLeft} Frame 2
"strike"Symbol 1052 MovieClip {AssetWestleyAttackLeft} Frame 4
"back --->"Symbol 1052 MovieClip {AssetWestleyAttackLeft} Frame 8
"S/A frame 1"Symbol 1052 MovieClip {AssetWestleyAttackLeft} Frame 14
"Antic cont'd"Symbol 1079 MovieClip {AssetWestleyAttackRight} Frame 1
"strike"Symbol 1079 MovieClip {AssetWestleyAttackRight} Frame 3
"back --->"Symbol 1079 MovieClip {AssetWestleyAttackRight} Frame 8
"S/A frame 1"Symbol 1079 MovieClip {AssetWestleyAttackRight} Frame 14
"1/2"Symbol 1104 MovieClip {AssetWestleyClimb} Frame 13
"1/2"Symbol 1105 MovieClip Frame 13
"CYCLE"Symbol 1182 MovieClip {AssetWestleyJumpUp} Frame 9
"Cycle"Symbol 1201 MovieClip {AssetWestleyJumpDown} Frame 7
"1/2 way"Symbol 1304 MovieClip {AssetWestleyPush} Frame 25
"SA frame 1"Symbol 1304 MovieClip {AssetWestleyPush} Frame 49
"1/2"Symbol 1341 MovieClip {AssetWestleyRun} Frame 10
"1/2"Symbol 1360 MovieClip Frame 15
"1/2"Symbol 1378 MovieClip {AssetWestleySwingBack} Frame 5
"1/2"Symbol 1393 MovieClip {AssetWestleySwingFore} Frame 5
"idle"Symbol 2022 MovieClip {FireSwampBrowser_fla.gemui_215} Frame 1
"spin"Symbol 2022 MovieClip {FireSwampBrowser_fla.gemui_215} Frame 5
"in"Symbol 2078 MovieClip {FireSwampBrowser_fla.bonus_anim_232} Frame 5
"selected"Symbol 2099 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.WestleySelectButton} Frame 1
"deselected"Symbol 2099 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.WestleySelectButton} Frame 2
"over"Symbol 2099 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.WestleySelectButton} Frame 3
"selected"Symbol 2105 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.ButtercupSelectButton} Frame 1
"deselected"Symbol 2105 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.ButtercupSelectButton} Frame 2
"over"Symbol 2105 MovieClip {com.wwb.princessbride.fire_swamp.ui.interfaces.ButtercupSelectButton} Frame 3




http://swfchan.com/14/67674/info.shtml
Created: 11/4 -2019 10:26:09 Last modified: 11/4 -2019 10:26:09 Server time: 22/12 -2024 17:17:35