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

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

Smiley Jump - arkanoid-style game with a smiley face.swf

This is the info page for
Flash #130287

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


Text
xxx%

PLAY THE GAME

PLAY THE GAME

SMILEY JUMP

is loading...

SMILEY

JUMP

PLAY

CREDITS

ONLINE

Credits

Sérgio "Awoke"

Beta Testers

DeepBlueMax
Sonicboom
Lorenzo
Maav

BACK

Sponsored by:

Programmer and art designer

Music by: thomas "Zodiac"

Lukynha
Sagaman
Spartaa
Black Star

Hauser
Dudutxs'
Fiix
The Jester of Pain

Ivy
Isabelinha
Black FM
Alejo AC

Lukim
Daniel Sidhion
Portuguese
Guidoido

GAME IS OVER

you scored

00000000000000000

played for

000

SECS

got a multiplier level

PERSONAL BEST SCORE

00000000000000000

MENU

Submit score

START

Double jump

Fast fall

W

A

D

S

move left

move Right

M

N

Mute music and sfx

P

Pause game

buttons

MAIN OBJECTIVE

EXTRA TIME!

FLIPPED!

SMOKE!

3

2

1

GO!

UPSIDE DOWN!

small platforms!

YOU ARE FAT!

SPIKEballs!

SPIKE PLATFORMS!

SMALL GATES!

NEW PLATFORMs!

Time powerup!

MORE PLATFORMS!

GAME IS PAUSED

Spacebar or P to unpause

R TO RESET

TIME IS ALMOST UP!

000 x

000

000

double jump

press up

double jump

<p align="left"><font face="Futura Md BT" size="10" color="#0000ff" letterSpacing="0.000000" kerning="1"><b>EXTRA TIME AT XXX</b></font></p>

mute

+2 SECS

ActionScript [AS3]

Section 1
//PropTween (com.greensock.core.PropTween) package com.greensock.core { public class PropTween { public var priority:int; public var start:Number; public var prevNode:PropTween; public var change:Number; public var target:Object; public var name:String; public var property:String; public var nextNode:PropTween; public var isPlugin:Boolean; public function PropTween(_arg1:Object, _arg2:String, _arg3:Number, _arg4:Number, _arg5:String, _arg6:Boolean, _arg7:PropTween=null, _arg8:int=0){ this.target = _arg1; this.property = _arg2; this.start = _arg3; this.change = _arg4; this.name = _arg5; this.isPlugin = _arg6; if (_arg7){ _arg7.prevNode = this; this.nextNode = _arg7; }; this.priority = _arg8; } } }//package com.greensock.core
Section 2
//SimpleTimeline (com.greensock.core.SimpleTimeline) package com.greensock.core { public class SimpleTimeline extends TweenCore { public var autoRemoveChildren:Boolean; protected var _lastChild:TweenCore; protected var _firstChild:TweenCore; public function SimpleTimeline(_arg1:Object=null){ super(0, _arg1); } override public function renderTime(_arg1:Number, _arg2:Boolean=false, _arg3:Boolean=false):void{ var _local5:Number; var _local6:TweenCore; var _local4:TweenCore = _firstChild; this.cachedTotalTime = _arg1; this.cachedTime = _arg1; while (_local4) { _local6 = _local4.nextNode; if (((_local4.active) || ((((((_arg1 >= _local4.cachedStartTime)) && (!(_local4.cachedPaused)))) && (!(_local4.gc)))))){ if (!_local4.cachedReversed){ _local4.renderTime(((_arg1 - _local4.cachedStartTime) * _local4.cachedTimeScale), _arg2, false); } else { _local5 = (_local4.cacheIsDirty) ? _local4.totalDuration : _local4.cachedTotalDuration; _local4.renderTime((_local5 - ((_arg1 - _local4.cachedStartTime) * _local4.cachedTimeScale)), _arg2, false); }; }; _local4 = _local6; }; } public function addChild(_arg1:TweenCore):void{ if (((!(_arg1.gc)) && (_arg1.timeline))){ _arg1.timeline.remove(_arg1, true); }; _arg1.timeline = this; if (_arg1.gc){ _arg1.setEnabled(true, true); }; if (_firstChild){ _firstChild.prevNode = _arg1; }; _arg1.nextNode = _firstChild; _firstChild = _arg1; _arg1.prevNode = null; } public function remove(_arg1:TweenCore, _arg2:Boolean=false):void{ if (_arg1.gc){ return; }; if (!_arg2){ _arg1.setEnabled(false, true); }; if (_arg1.nextNode){ _arg1.nextNode.prevNode = _arg1.prevNode; } else { if (_lastChild == _arg1){ _lastChild = _arg1.prevNode; }; }; if (_arg1.prevNode){ _arg1.prevNode.nextNode = _arg1.nextNode; } else { if (_firstChild == _arg1){ _firstChild = _arg1.nextNode; }; }; } public function get rawTime():Number{ return (this.cachedTotalTime); } } }//package com.greensock.core
Section 3
//TweenCore (com.greensock.core.TweenCore) package com.greensock.core { import com.greensock.*; public class TweenCore { public var initted:Boolean; protected var _hasUpdate:Boolean; public var active:Boolean; protected var _delay:Number; public var cachedTime:Number; public var cachedReversed:Boolean; public var nextNode:TweenCore; protected var _rawPrevTime:Number;// = -1 public var vars:Object; public var cachedTotalTime:Number; public var timeline:SimpleTimeline; public var data; public var cachedStartTime:Number; public var prevNode:TweenCore; public var cachedDuration:Number; public var gc:Boolean; protected var _pauseTime:Number; public var cacheIsDirty:Boolean; public var cachedPaused:Boolean; public var cachedTimeScale:Number; public var cachedTotalDuration:Number; public static const version:Number = 1.13; protected static var _classInitted:Boolean; public function TweenCore(_arg1:Number=0, _arg2:Object=null){ this.vars = ((_arg2) || ({})); this.cachedDuration = (this.cachedTotalDuration = ((_arg1) || (0))); _delay = ((this.vars.delay) || (0)); this.cachedTimeScale = ((this.vars.timeScale) || (1)); this.active = Boolean((((((_arg1 == 0)) && ((_delay == 0)))) && (!((this.vars.immediateRender == false))))); this.cachedTotalTime = (this.cachedTime = 0); this.data = this.vars.data; if (!_classInitted){ if (isNaN(TweenLite.rootFrame)){ TweenLite.initClass(); _classInitted = true; } else { return; }; }; var _local3:SimpleTimeline = ((this.vars.timeline is SimpleTimeline)) ? this.vars.timeline : (this.vars.useFrames) ? TweenLite.rootFramesTimeline : TweenLite.rootTimeline; this.cachedStartTime = (_local3.cachedTotalTime + _delay); _local3.addChild(this); if (this.vars.reversed){ this.cachedReversed = true; }; if (this.vars.paused){ this.paused = true; }; } public function renderTime(_arg1:Number, _arg2:Boolean=false, _arg3:Boolean=false):void{ } public function get delay():Number{ return (_delay); } public function get duration():Number{ return (this.cachedDuration); } public function restart(_arg1:Boolean=false, _arg2:Boolean=true):void{ this.reversed = false; this.paused = false; this.setTotalTime((_arg1) ? -(_delay) : 0, _arg2); } public function set reversed(_arg1:Boolean):void{ if (_arg1 != this.cachedReversed){ this.cachedReversed = _arg1; setTotalTime(this.cachedTotalTime, true); }; } public function set startTime(_arg1:Number):void{ var _local2:Boolean = Boolean(((!((this.timeline == null))) && (((!((_arg1 == this.cachedStartTime))) || (this.gc))))); this.cachedStartTime = _arg1; if (_local2){ this.timeline.addChild(this); }; } public function set delay(_arg1:Number):void{ this.startTime = (this.startTime + (_arg1 - _delay)); _delay = _arg1; } public function resume():void{ this.paused = false; } public function get paused():Boolean{ return (this.cachedPaused); } public function play():void{ this.reversed = false; this.paused = false; } public function set duration(_arg1:Number):void{ this.cachedDuration = (this.cachedTotalDuration = _arg1); setDirtyCache(false); } public function complete(_arg1:Boolean=false, _arg2:Boolean=false):void{ if (!_arg1){ renderTime(this.cachedTotalDuration, _arg2, false); return; }; if (this.timeline.autoRemoveChildren){ this.setEnabled(false, false); } else { this.active = false; }; if (!_arg2){ if (((((this.vars.onComplete) && ((this.cachedTotalTime == this.cachedTotalDuration)))) && (!(this.cachedReversed)))){ this.vars.onComplete.apply(null, this.vars.onCompleteParams); } else { if (((((this.cachedReversed) && ((this.cachedTotalTime == 0)))) && (this.vars.onReverseComplete))){ this.vars.onReverseComplete.apply(null, this.vars.onReverseCompleteParams); }; }; }; } public function invalidate():void{ } public function get totalTime():Number{ return (this.cachedTotalTime); } public function get reversed():Boolean{ return (this.cachedReversed); } public function get startTime():Number{ return (this.cachedStartTime); } public function set currentTime(_arg1:Number):void{ setTotalTime(_arg1, false); } protected function setDirtyCache(_arg1:Boolean=true):void{ var _local2:TweenCore = (_arg1) ? this : this.timeline; while (_local2) { _local2.cacheIsDirty = true; _local2 = _local2.timeline; }; } public function reverse(_arg1:Boolean=true):void{ this.reversed = true; if (_arg1){ this.paused = false; } else { if (this.gc){ this.setEnabled(true, false); }; }; } public function set paused(_arg1:Boolean):void{ if (((!((_arg1 == this.cachedPaused))) && (this.timeline))){ if (_arg1){ _pauseTime = this.timeline.rawTime; } else { this.cachedStartTime = (this.cachedStartTime + (this.timeline.rawTime - _pauseTime)); _pauseTime = NaN; setDirtyCache(false); }; this.cachedPaused = _arg1; this.active = Boolean(((((!(this.cachedPaused)) && ((this.cachedTotalTime > 0)))) && ((this.cachedTotalTime < this.cachedTotalDuration)))); }; if (((!(_arg1)) && (this.gc))){ this.setTotalTime(this.cachedTotalTime, false); this.setEnabled(true, false); }; } public function kill():void{ setEnabled(false, false); } public function set totalTime(_arg1:Number):void{ setTotalTime(_arg1, false); } public function get currentTime():Number{ return (this.cachedTime); } protected function setTotalTime(_arg1:Number, _arg2:Boolean=false):void{ var _local3:Number; var _local4:Number; if (this.timeline){ _local3 = (((_pauseTime) || ((_pauseTime == 0)))) ? _pauseTime : this.timeline.cachedTotalTime; if (this.cachedReversed){ _local4 = (this.cacheIsDirty) ? this.totalDuration : this.cachedTotalDuration; this.cachedStartTime = (_local3 - ((_local4 - _arg1) / this.cachedTimeScale)); } else { this.cachedStartTime = (_local3 - (_arg1 / this.cachedTimeScale)); }; if (!this.timeline.cacheIsDirty){ setDirtyCache(false); }; if (this.cachedTotalTime != _arg1){ renderTime(_arg1, _arg2, false); }; }; } public function pause():void{ this.paused = true; } public function set totalDuration(_arg1:Number):void{ this.duration = _arg1; } public function get totalDuration():Number{ return (this.cachedTotalDuration); } public function setEnabled(_arg1:Boolean, _arg2:Boolean=false):Boolean{ if (_arg1){ this.active = Boolean(((((!(this.cachedPaused)) && ((this.cachedTotalTime > 0)))) && ((this.cachedTotalTime < this.cachedTotalDuration)))); if (((!(_arg2)) && (this.gc))){ this.timeline.addChild(this); }; } else { this.active = false; if (!_arg2){ this.timeline.remove(this, true); }; }; this.gc = !(_arg1); return (false); } } }//package com.greensock.core
Section 4
//TweenEvent (com.greensock.events.TweenEvent) package com.greensock.events { import flash.events.*; public class TweenEvent extends Event { public static const COMPLETE:String = "complete"; public static const START:String = "start"; public static const UPDATE:String = "change"; public static const REVERSE_COMPLETE:String = "reverseComplete"; public static const INIT:String = "init"; public static const VERSION:Number = 1.1; public static const REPEAT:String = "repeat"; public function TweenEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false){ super(_arg1, _arg2, _arg3); } override public function clone():Event{ return (new TweenEvent(this.type, this.bubbles, this.cancelable)); } } }//package com.greensock.events
Section 5
//AutoAlphaPlugin (com.greensock.plugins.AutoAlphaPlugin) package com.greensock.plugins { import flash.display.*; import com.greensock.*; public class AutoAlphaPlugin extends TweenPlugin { protected var _target:Object; protected var _ignoreVisible:Boolean; public static const API:Number = 1; public function AutoAlphaPlugin(){ this.propName = "autoAlpha"; this.overwriteProps = ["alpha", "visible"]; } override public function killProps(_arg1:Object):void{ super.killProps(_arg1); _ignoreVisible = Boolean(("visible" in _arg1)); } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ _target = _arg1; addTween(_arg1, "alpha", _arg1.alpha, _arg2, "alpha"); return (true); } override public function set changeFactor(_arg1:Number):void{ updateTweens(_arg1); if (!_ignoreVisible){ _target.visible = Boolean(!((_target.alpha == 0))); }; } } }//package com.greensock.plugins
Section 6
//BevelFilterPlugin (com.greensock.plugins.BevelFilterPlugin) package com.greensock.plugins { import flash.display.*; import com.greensock.*; import flash.filters.*; public class BevelFilterPlugin extends FilterPlugin { public static const API:Number = 1; private static var _propNames:Array = ["distance", "angle", "highlightColor", "highlightAlpha", "shadowColor", "shadowAlpha", "blurX", "blurY", "strength", "quality"]; public function BevelFilterPlugin(){ this.propName = "bevelFilter"; this.overwriteProps = ["bevelFilter"]; } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ _target = _arg1; _type = BevelFilter; initFilter(_arg2, new BevelFilter(0, 0, 0xFFFFFF, 0.5, 0, 0.5, 2, 2, 0, ((_arg2.quality) || (2))), _propNames); return (true); } } }//package com.greensock.plugins
Section 7
//BezierPlugin (com.greensock.plugins.BezierPlugin) package com.greensock.plugins { import com.greensock.*; import com.greensock.core.*; public class BezierPlugin extends TweenPlugin { protected var _future:Object; protected var _orient:Boolean; protected var _orientData:Array; protected var _target:Object; protected var _beziers:Object; public static const API:Number = 1; protected static const _RAD2DEG:Number = 57.2957795130823; public function BezierPlugin(){ _future = {}; super(); this.propName = "bezier"; this.overwriteProps = []; } override public function killProps(_arg1:Object):void{ var _local2:String; for (_local2 in _beziers) { if ((_local2 in _arg1)){ delete _beziers[_local2]; }; }; super.killProps(_arg1); } protected function init(_arg1:TweenLite, _arg2:Array, _arg3:Boolean):void{ var _local6:int; var _local7:String; var _local8:Object; _target = _arg1.target; var _local4:Object = ((_arg1.vars.isTV)==true) ? _arg1.vars.exposedVars : _arg1.vars; if (_local4.orientToBezier == true){ _orientData = [["x", "y", "rotation", 0, 0.01]]; _orient = true; } else { if ((_local4.orientToBezier is Array)){ _orientData = _local4.orientToBezier; _orient = true; }; }; var _local5:Object = {}; _local6 = 0; while (_local6 < _arg2.length) { for (_local7 in _arg2[_local6]) { if (_local5[_local7] == undefined){ _local5[_local7] = [_arg1.target[_local7]]; }; if (typeof(_arg2[_local6][_local7]) == "number"){ _local5[_local7].push(_arg2[_local6][_local7]); } else { _local5[_local7].push((_arg1.target[_local7] + Number(_arg2[_local6][_local7]))); }; }; _local6++; }; for (_local7 in _local5) { this.overwriteProps[this.overwriteProps.length] = _local7; if (_local4[_local7] != undefined){ if (typeof(_local4[_local7]) == "number"){ _local5[_local7].push(_local4[_local7]); } else { _local5[_local7].push((_arg1.target[_local7] + Number(_local4[_local7]))); }; _local8 = {}; _local8[_local7] = true; _arg1.killVars(_local8, false); delete _local4[_local7]; }; }; _beziers = parseBeziers(_local5, _arg3); } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ if (!(_arg2 is Array)){ return (false); }; init(_arg3, (_arg2 as Array), false); return (true); } override public function set changeFactor(_arg1:Number):void{ var _local2:int; var _local3:String; var _local4:Object; var _local5:Number; var _local6:uint; var _local7:Number; var _local8:Object; var _local9:Number; var _local10:Number; var _local11:Array; var _local12:Number; var _local13:Object; var _local14:Boolean; if (_arg1 == 1){ for (_local3 in _beziers) { _local2 = (_beziers[_local3].length - 1); _target[_local3] = _beziers[_local3][_local2][2]; }; } else { for (_local3 in _beziers) { _local6 = _beziers[_local3].length; if (_arg1 < 0){ _local2 = 0; } else { if (_arg1 >= 1){ _local2 = (_local6 - 1); } else { _local2 = int((_local6 * _arg1)); }; }; _local5 = ((_arg1 - (_local2 * (1 / _local6))) * _local6); _local4 = _beziers[_local3][_local2]; if (this.round){ _local7 = (_local4[0] + (_local5 * (((2 * (1 - _local5)) * (_local4[1] - _local4[0])) + (_local5 * (_local4[2] - _local4[0]))))); _target[_local3] = ((_local7)>0) ? int((_local7 + 0.5)) : int((_local7 - 0.5)); } else { _target[_local3] = (_local4[0] + (_local5 * (((2 * (1 - _local5)) * (_local4[1] - _local4[0])) + (_local5 * (_local4[2] - _local4[0]))))); }; }; }; if (_orient){ _local2 = _orientData.length; _local8 = {}; while (_local2--) { _local11 = _orientData[_local2]; _local8[_local11[0]] = _target[_local11[0]]; _local8[_local11[1]] = _target[_local11[1]]; }; _local13 = _target; _local14 = this.round; _target = _future; this.round = false; _orient = false; _local2 = _orientData.length; while (_local2--) { _local11 = _orientData[_local2]; this.changeFactor = (_arg1 + ((_local11[4]) || (0.01))); _local12 = ((_local11[3]) || (0)); _local9 = (_future[_local11[0]] - _local8[_local11[0]]); _local10 = (_future[_local11[1]] - _local8[_local11[1]]); _local13[_local11[2]] = ((Math.atan2(_local10, _local9) * _RAD2DEG) + _local12); }; _target = _local13; this.round = _local14; _orient = true; }; } public static function parseBeziers(_arg1:Object, _arg2:Boolean=false):Object{ var _local3:int; var _local4:Array; var _local5:Object; var _local6:String; var _local7:Object = {}; if (_arg2){ for (_local6 in _arg1) { _local4 = _arg1[_local6]; _local5 = []; _local7[_local6] = _local5; if (_local4.length > 2){ _local5[_local5.length] = [_local4[0], (_local4[1] - ((_local4[2] - _local4[0]) / 4)), _local4[1]]; _local3 = 1; while (_local3 < (_local4.length - 1)) { _local5[_local5.length] = [_local4[_local3], (_local4[_local3] + (_local4[_local3] - _local5[(_local3 - 1)][1])), _local4[(_local3 + 1)]]; _local3++; }; } else { _local5[_local5.length] = [_local4[0], ((_local4[0] + _local4[1]) / 2), _local4[1]]; }; }; } else { for (_local6 in _arg1) { _local4 = _arg1[_local6]; _local5 = []; _local7[_local6] = _local5; if (_local4.length > 3){ _local5[_local5.length] = [_local4[0], _local4[1], ((_local4[1] + _local4[2]) / 2)]; _local3 = 2; while (_local3 < (_local4.length - 2)) { _local5[_local5.length] = [_local5[(_local3 - 2)][2], _local4[_local3], ((_local4[_local3] + _local4[(_local3 + 1)]) / 2)]; _local3++; }; _local5[_local5.length] = [_local5[(_local5.length - 1)][2], _local4[(_local4.length - 2)], _local4[(_local4.length - 1)]]; } else { if (_local4.length == 3){ _local5[_local5.length] = [_local4[0], _local4[1], _local4[2]]; } else { if (_local4.length == 2){ _local5[_local5.length] = [_local4[0], ((_local4[0] + _local4[1]) / 2), _local4[1]]; }; }; }; }; }; return (_local7); } } }//package com.greensock.plugins
Section 8
//BezierThroughPlugin (com.greensock.plugins.BezierThroughPlugin) package com.greensock.plugins { import com.greensock.*; public class BezierThroughPlugin extends BezierPlugin { public static const API:Number = 1; public function BezierThroughPlugin(){ this.propName = "bezierThrough"; } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ if (!(_arg2 is Array)){ return (false); }; init(_arg3, (_arg2 as Array), true); return (true); } } }//package com.greensock.plugins
Section 9
//BlurFilterPlugin (com.greensock.plugins.BlurFilterPlugin) package com.greensock.plugins { import flash.display.*; import com.greensock.*; import flash.filters.*; public class BlurFilterPlugin extends FilterPlugin { public static const API:Number = 1; private static var _propNames:Array = ["blurX", "blurY", "quality"]; public function BlurFilterPlugin(){ this.propName = "blurFilter"; this.overwriteProps = ["blurFilter"]; } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ _target = _arg1; _type = BlurFilter; initFilter(_arg2, new BlurFilter(0, 0, ((_arg2.quality) || (2))), _propNames); return (true); } } }//package com.greensock.plugins
Section 10
//ColorMatrixFilterPlugin (com.greensock.plugins.ColorMatrixFilterPlugin) package com.greensock.plugins { import flash.display.*; import com.greensock.*; import flash.filters.*; public class ColorMatrixFilterPlugin extends FilterPlugin { protected var _matrix:Array; protected var _matrixTween:EndArrayPlugin; public static const API:Number = 1; private static var _propNames:Array = []; protected static var _lumG:Number = 0.71516; protected static var _lumR:Number = 0.212671; protected static var _idMatrix:Array = [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0]; protected static var _lumB:Number = 0.072169; public function ColorMatrixFilterPlugin(){ this.propName = "colorMatrixFilter"; this.overwriteProps = ["colorMatrixFilter"]; } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ _target = _arg1; _type = ColorMatrixFilter; var _local4:Object = _arg2; initFilter({remove:_arg2.remove, index:_arg2.index, addFilter:_arg2.addFilter}, new ColorMatrixFilter(_idMatrix.slice()), _propNames); _matrix = ColorMatrixFilter(_filter).matrix; var _local5:Array = []; if (((!((_local4.matrix == null))) && ((_local4.matrix is Array)))){ _local5 = _local4.matrix; } else { if (_local4.relative == true){ _local5 = _matrix.slice(); } else { _local5 = _idMatrix.slice(); }; _local5 = setBrightness(_local5, _local4.brightness); _local5 = setContrast(_local5, _local4.contrast); _local5 = setHue(_local5, _local4.hue); _local5 = setSaturation(_local5, _local4.saturation); _local5 = setThreshold(_local5, _local4.threshold); if (!isNaN(_local4.colorize)){ _local5 = colorize(_local5, _local4.colorize, _local4.amount); }; }; _matrixTween = new EndArrayPlugin(); _matrixTween.init(_matrix, _local5); return (true); } override public function set changeFactor(_arg1:Number):void{ _matrixTween.changeFactor = _arg1; ColorMatrixFilter(_filter).matrix = _matrix; super.changeFactor = _arg1; } public static function setSaturation(_arg1:Array, _arg2:Number):Array{ if (isNaN(_arg2)){ return (_arg1); }; var _local3:Number = (1 - _arg2); var _local4:Number = (_local3 * _lumR); var _local5:Number = (_local3 * _lumG); var _local6:Number = (_local3 * _lumB); var _local7:Array = [(_local4 + _arg2), _local5, _local6, 0, 0, _local4, (_local5 + _arg2), _local6, 0, 0, _local4, _local5, (_local6 + _arg2), 0, 0, 0, 0, 0, 1, 0]; return (applyMatrix(_local7, _arg1)); } public static function setHue(_arg1:Array, _arg2:Number):Array{ if (isNaN(_arg2)){ return (_arg1); }; _arg2 = (_arg2 * (Math.PI / 180)); var _local3:Number = Math.cos(_arg2); var _local4:Number = Math.sin(_arg2); var _local5:Array = [((_lumR + (_local3 * (1 - _lumR))) + (_local4 * -(_lumR))), ((_lumG + (_local3 * -(_lumG))) + (_local4 * -(_lumG))), ((_lumB + (_local3 * -(_lumB))) + (_local4 * (1 - _lumB))), 0, 0, ((_lumR + (_local3 * -(_lumR))) + (_local4 * 0.143)), ((_lumG + (_local3 * (1 - _lumG))) + (_local4 * 0.14)), ((_lumB + (_local3 * -(_lumB))) + (_local4 * -0.283)), 0, 0, ((_lumR + (_local3 * -(_lumR))) + (_local4 * -((1 - _lumR)))), ((_lumG + (_local3 * -(_lumG))) + (_local4 * _lumG)), ((_lumB + (_local3 * (1 - _lumB))) + (_local4 * _lumB)), 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1]; return (applyMatrix(_local5, _arg1)); } public static function setContrast(_arg1:Array, _arg2:Number):Array{ if (isNaN(_arg2)){ return (_arg1); }; _arg2 = (_arg2 + 0.01); var _local3:Array = [_arg2, 0, 0, 0, (128 * (1 - _arg2)), 0, _arg2, 0, 0, (128 * (1 - _arg2)), 0, 0, _arg2, 0, (128 * (1 - _arg2)), 0, 0, 0, 1, 0]; return (applyMatrix(_local3, _arg1)); } public static function applyMatrix(_arg1:Array, _arg2:Array):Array{ var _local6:int; var _local7:int; if (((!((_arg1 is Array))) || (!((_arg2 is Array))))){ return (_arg2); }; var _local3:Array = []; var _local4:int; var _local5:int; _local6 = 0; while (_local6 < 4) { _local7 = 0; while (_local7 < 5) { if (_local7 == 4){ _local5 = _arg1[(_local4 + 4)]; } else { _local5 = 0; }; _local3[(_local4 + _local7)] = (((((_arg1[_local4] * _arg2[_local7]) + (_arg1[(_local4 + 1)] * _arg2[(_local7 + 5)])) + (_arg1[(_local4 + 2)] * _arg2[(_local7 + 10)])) + (_arg1[(_local4 + 3)] * _arg2[(_local7 + 15)])) + _local5); _local7++; }; _local4 = (_local4 + 5); _local6++; }; return (_local3); } public static function setThreshold(_arg1:Array, _arg2:Number):Array{ if (isNaN(_arg2)){ return (_arg1); }; var _local3:Array = [(_lumR * 0x0100), (_lumG * 0x0100), (_lumB * 0x0100), 0, (-256 * _arg2), (_lumR * 0x0100), (_lumG * 0x0100), (_lumB * 0x0100), 0, (-256 * _arg2), (_lumR * 0x0100), (_lumG * 0x0100), (_lumB * 0x0100), 0, (-256 * _arg2), 0, 0, 0, 1, 0]; return (applyMatrix(_local3, _arg1)); } public static function colorize(_arg1:Array, _arg2:Number, _arg3:Number=1):Array{ if (isNaN(_arg2)){ return (_arg1); }; if (isNaN(_arg3)){ _arg3 = 1; }; var _local4:Number = (((_arg2 >> 16) & 0xFF) / 0xFF); var _local5:Number = (((_arg2 >> 8) & 0xFF) / 0xFF); var _local6:Number = ((_arg2 & 0xFF) / 0xFF); var _local7:Number = (1 - _arg3); var _local8:Array = [(_local7 + ((_arg3 * _local4) * _lumR)), ((_arg3 * _local4) * _lumG), ((_arg3 * _local4) * _lumB), 0, 0, ((_arg3 * _local5) * _lumR), (_local7 + ((_arg3 * _local5) * _lumG)), ((_arg3 * _local5) * _lumB), 0, 0, ((_arg3 * _local6) * _lumR), ((_arg3 * _local6) * _lumG), (_local7 + ((_arg3 * _local6) * _lumB)), 0, 0, 0, 0, 0, 1, 0]; return (applyMatrix(_local8, _arg1)); } public static function setBrightness(_arg1:Array, _arg2:Number):Array{ if (isNaN(_arg2)){ return (_arg1); }; _arg2 = ((_arg2 * 100) - 100); return (applyMatrix([1, 0, 0, 0, _arg2, 0, 1, 0, 0, _arg2, 0, 0, 1, 0, _arg2, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1], _arg1)); } } }//package com.greensock.plugins
Section 11
//ColorTransformPlugin (com.greensock.plugins.ColorTransformPlugin) package com.greensock.plugins { import flash.display.*; import com.greensock.*; import flash.geom.*; public class ColorTransformPlugin extends TintPlugin { public static const API:Number = 1; public function ColorTransformPlugin(){ this.propName = "colorTransform"; } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ var _local5:String; var _local6:Number; if (!(_arg1 is DisplayObject)){ return (false); }; var _local4:ColorTransform = _arg1.transform.colorTransform; for (_local5 in _arg2) { if ((((_local5 == "tint")) || ((_local5 == "color")))){ if (_arg2[_local5] != null){ _local4.color = int(_arg2[_local5]); }; } else { if ((((((_local5 == "tintAmount")) || ((_local5 == "exposure")))) || ((_local5 == "brightness")))){ } else { _local4[_local5] = _arg2[_local5]; }; }; }; if (!isNaN(_arg2.tintAmount)){ _local6 = (_arg2.tintAmount / (1 - (((_local4.redMultiplier + _local4.greenMultiplier) + _local4.blueMultiplier) / 3))); _local4.redOffset = (_local4.redOffset * _local6); _local4.greenOffset = (_local4.greenOffset * _local6); _local4.blueOffset = (_local4.blueOffset * _local6); _local4.redMultiplier = (_local4.greenMultiplier = (_local4.blueMultiplier = (1 - _arg2.tintAmount))); } else { if (!isNaN(_arg2.exposure)){ _local4.redOffset = (_local4.greenOffset = (_local4.blueOffset = (0xFF * (_arg2.exposure - 1)))); _local4.redMultiplier = (_local4.greenMultiplier = (_local4.blueMultiplier = 1)); } else { if (!isNaN(_arg2.brightness)){ _local4.redOffset = (_local4.greenOffset = (_local4.blueOffset = Math.max(0, ((_arg2.brightness - 1) * 0xFF)))); _local4.redMultiplier = (_local4.greenMultiplier = (_local4.blueMultiplier = (1 - Math.abs((_arg2.brightness - 1))))); }; }; }; _ignoreAlpha = Boolean(((!((_arg3.vars.alpha == undefined))) && ((_arg2.alphaMultiplier == undefined)))); init((_arg1 as DisplayObject), _local4); return (true); } } }//package com.greensock.plugins
Section 12
//DropShadowFilterPlugin (com.greensock.plugins.DropShadowFilterPlugin) package com.greensock.plugins { import flash.display.*; import com.greensock.*; import flash.filters.*; public class DropShadowFilterPlugin extends FilterPlugin { public static const API:Number = 1; private static var _propNames:Array = ["distance", "angle", "color", "alpha", "blurX", "blurY", "strength", "quality", "inner", "knockout", "hideObject"]; public function DropShadowFilterPlugin(){ this.propName = "dropShadowFilter"; this.overwriteProps = ["dropShadowFilter"]; } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ _target = _arg1; _type = DropShadowFilter; initFilter(_arg2, new DropShadowFilter(0, 45, 0, 0, 0, 0, 1, ((_arg2.quality) || (2)), _arg2.inner, _arg2.knockout, _arg2.hideObject), _propNames); return (true); } } }//package com.greensock.plugins
Section 13
//EndArrayPlugin (com.greensock.plugins.EndArrayPlugin) package com.greensock.plugins { import flash.display.*; import com.greensock.*; public class EndArrayPlugin extends TweenPlugin { protected var _a:Array; protected var _info:Array; public static const API:Number = 1; public function EndArrayPlugin(){ _info = []; super(); this.propName = "endArray"; this.overwriteProps = ["endArray"]; } public function init(_arg1:Array, _arg2:Array):void{ _a = _arg1; var _local3:int = _arg2.length; while (_local3--) { if (((!((_arg1[_local3] == _arg2[_local3]))) && (!((_arg1[_local3] == null))))){ _info[_info.length] = new ArrayTweenInfo(_local3, _a[_local3], (_arg2[_local3] - _a[_local3])); }; }; } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ if (((!((_arg1 is Array))) || (!((_arg2 is Array))))){ return (false); }; init((_arg1 as Array), _arg2); return (true); } override public function set changeFactor(_arg1:Number):void{ var _local3:ArrayTweenInfo; var _local4:Number; var _local2:int = _info.length; if (this.round){ while (_local2--) { _local3 = _info[_local2]; _local4 = (_local3.start + (_local3.change * _arg1)); _a[_local3.index] = ((_local4)>0) ? int((_local4 + 0.5)) : int((_local4 - 0.5)); }; } else { while (_local2--) { _local3 = _info[_local2]; _a[_local3.index] = (_local3.start + (_local3.change * _arg1)); }; }; } } }//package com.greensock.plugins class ArrayTweenInfo { public var change:Number; public var start:Number; public var index:uint; private function ArrayTweenInfo(_arg1:uint, _arg2:Number, _arg3:Number){ this.index = _arg1; this.start = _arg2; this.change = _arg3; } }
Section 14
//FilterPlugin (com.greensock.plugins.FilterPlugin) package com.greensock.plugins { import flash.display.*; import com.greensock.*; import com.greensock.core.*; import flash.filters.*; public class FilterPlugin extends TweenPlugin { protected var _remove:Boolean; protected var _target:Object; protected var _index:int; protected var _filter:BitmapFilter; protected var _type:Class; public static const VERSION:Number = 2.03; public static const API:Number = 1; public function onCompleteTween():void{ var _local1:Array; var _local2:int; if (_remove){ _local1 = _target.filters; if (!(_local1[_index] is _type)){ _local2 = _local1.length; while (_local2--) { if ((_local1[_local2] is _type)){ _local1.splice(_local2, 1); break; }; }; } else { _local1.splice(_index, 1); }; _target.filters = _local1; }; } protected function initFilter(_arg1:Object, _arg2:BitmapFilter, _arg3:Array):void{ var _local5:String; var _local6:int; var _local7:HexColorsPlugin; var _local4:Array = _target.filters; var _local8:Object = ((_arg1 is BitmapFilter)) ? {} : _arg1; _index = -1; if (_local8.index != null){ _index = _local8.index; } else { _local6 = _local4.length; while (_local6--) { if ((_local4[_local6] is _type)){ _index = _local6; break; }; }; }; if ((((((_index == -1)) || ((_local4[_index] == null)))) || ((_local8.addFilter == true)))){ _index = ((_local8.index)!=null) ? _local8.index : _local4.length; _local4[_index] = _arg2; _target.filters = _local4; }; _filter = _local4[_index]; if (_local8.remove == true){ _remove = true; this.onComplete = onCompleteTween; }; _local6 = _arg3.length; while (_local6--) { _local5 = _arg3[_local6]; if ((((_local5 in _arg1)) && (!((_filter[_local5] == _arg1[_local5]))))){ if ((((((_local5 == "color")) || ((_local5 == "highlightColor")))) || ((_local5 == "shadowColor")))){ _local7 = new HexColorsPlugin(); _local7.initColor(_filter, _local5, _filter[_local5], _arg1[_local5]); _tweens[_tweens.length] = new PropTween(_local7, "changeFactor", 0, 1, _local5, false); } else { if ((((((((_local5 == "quality")) || ((_local5 == "inner")))) || ((_local5 == "knockout")))) || ((_local5 == "hideObject")))){ _filter[_local5] = _arg1[_local5]; } else { addTween(_filter, _local5, _filter[_local5], _arg1[_local5], _local5); }; }; }; }; } override public function set changeFactor(_arg1:Number):void{ var _local3:PropTween; var _local2:int = _tweens.length; var _local4:Array = _target.filters; while (_local2--) { _local3 = _tweens[_local2]; _local3.target[_local3.property] = (_local3.start + (_local3.change * _arg1)); }; if (!(_local4[_index] is _type)){ _local2 = (_index = _local4.length); while (_local2--) { if ((_local4[_local2] is _type)){ _index = _local2; break; }; }; }; _local4[_index] = _filter; _target.filters = _local4; } } }//package com.greensock.plugins
Section 15
//FrameLabelPlugin (com.greensock.plugins.FrameLabelPlugin) package com.greensock.plugins { import flash.display.*; import com.greensock.*; public class FrameLabelPlugin extends FramePlugin { public static const API:Number = 1; public function FrameLabelPlugin(){ this.propName = "frameLabel"; } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ if ((!(_arg3.target) is MovieClip)){ return (false); }; _target = (_arg1 as MovieClip); this.frame = _target.currentFrame; var _local4:Array = _target.currentLabels; var _local5:String = _arg2; var _local6:int = _target.currentFrame; var _local7:int = _local4.length; while (_local7--) { if (_local4[_local7].name == _local5){ _local6 = _local4[_local7].frame; break; }; }; if (this.frame != _local6){ addTween(this, "frame", this.frame, _local6, "frame"); }; return (true); } } }//package com.greensock.plugins
Section 16
//FramePlugin (com.greensock.plugins.FramePlugin) package com.greensock.plugins { import flash.display.*; import com.greensock.*; public class FramePlugin extends TweenPlugin { protected var _target:MovieClip; public var frame:int; public static const API:Number = 1; public function FramePlugin(){ this.propName = "frame"; this.overwriteProps = ["frame", "frameLabel"]; this.round = true; } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ if (((!((_arg1 is MovieClip))) || (isNaN(_arg2)))){ return (false); }; _target = (_arg1 as MovieClip); this.frame = _target.currentFrame; addTween(this, "frame", this.frame, _arg2, "frame"); return (true); } override public function set changeFactor(_arg1:Number):void{ updateTweens(_arg1); _target.gotoAndStop(this.frame); } } }//package com.greensock.plugins
Section 17
//GlowFilterPlugin (com.greensock.plugins.GlowFilterPlugin) package com.greensock.plugins { import flash.display.*; import com.greensock.*; import flash.filters.*; public class GlowFilterPlugin extends FilterPlugin { public static const API:Number = 1; private static var _propNames:Array = ["color", "alpha", "blurX", "blurY", "strength", "quality", "inner", "knockout"]; public function GlowFilterPlugin(){ this.propName = "glowFilter"; this.overwriteProps = ["glowFilter"]; } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ _target = _arg1; _type = GlowFilter; initFilter(_arg2, new GlowFilter(0xFFFFFF, 0, 0, 0, ((_arg2.strength) || (1)), ((_arg2.quality) || (2)), _arg2.inner, _arg2.knockout), _propNames); return (true); } } }//package com.greensock.plugins
Section 18
//HexColorsPlugin (com.greensock.plugins.HexColorsPlugin) package com.greensock.plugins { import flash.display.*; import com.greensock.*; public class HexColorsPlugin extends TweenPlugin { protected var _colors:Array; public static const API:Number = 1; public function HexColorsPlugin(){ this.propName = "hexColors"; this.overwriteProps = []; _colors = []; } override public function killProps(_arg1:Object):void{ var _local2:int = (_colors.length - 1); while (_local2 > -1) { if (_arg1[_colors[_local2][1]] != undefined){ _colors.splice(_local2, 1); }; _local2--; }; super.killProps(_arg1); } public function initColor(_arg1:Object, _arg2:String, _arg3:uint, _arg4:uint):void{ var _local5:Number; var _local6:Number; var _local7:Number; if (_arg3 != _arg4){ _local5 = (_arg3 >> 16); _local6 = ((_arg3 >> 8) & 0xFF); _local7 = (_arg3 & 0xFF); _colors[_colors.length] = [_arg1, _arg2, _local5, ((_arg4 >> 16) - _local5), _local6, (((_arg4 >> 8) & 0xFF) - _local6), _local7, ((_arg4 & 0xFF) - _local7)]; this.overwriteProps[this.overwriteProps.length] = _arg2; }; } override public function set changeFactor(_arg1:Number):void{ var _local2:int; var _local3:Array; _local2 = (_colors.length - 1); while (_local2 > -1) { _local3 = _colors[_local2]; _local3[0][_local3[1]] = ((((_local3[2] + (_arg1 * _local3[3])) << 16) | ((_local3[4] + (_arg1 * _local3[5])) << 8)) | (_local3[6] + (_arg1 * _local3[7]))); _local2--; }; } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ var _local4:String; for (_local4 in _arg2) { initColor(_arg1, _local4, uint(_arg1[_local4]), uint(_arg2[_local4])); }; return (true); } } }//package com.greensock.plugins
Section 19
//RemoveTintPlugin (com.greensock.plugins.RemoveTintPlugin) package com.greensock.plugins { public class RemoveTintPlugin extends TintPlugin { public static const API:Number = 1; public function RemoveTintPlugin(){ this.propName = "removeTint"; } } }//package com.greensock.plugins
Section 20
//RoundPropsPlugin (com.greensock.plugins.RoundPropsPlugin) package com.greensock.plugins { import flash.display.*; import com.greensock.*; public class RoundPropsPlugin extends TweenPlugin { public static const API:Number = 1; public function RoundPropsPlugin(){ this.propName = "roundProps"; this.overwriteProps = []; this.round = true; } public function add(_arg1:Object, _arg2:String, _arg3:Number, _arg4:Number):void{ addTween(_arg1, _arg2, _arg3, (_arg3 + _arg4), _arg2); this.overwriteProps[this.overwriteProps.length] = _arg2; } } }//package com.greensock.plugins
Section 21
//SetSizePlugin (com.greensock.plugins.SetSizePlugin) package com.greensock.plugins { import flash.display.*; import com.greensock.*; public class SetSizePlugin extends TweenPlugin { protected var _setWidth:Boolean; public var width:Number; public var height:Number; protected var _hasSetSize:Boolean; protected var _setHeight:Boolean; protected var _target:Object; public static const API:Number = 1; public function SetSizePlugin(){ this.propName = "setSize"; this.overwriteProps = ["setSize", "setActualSize", "width", "height", "scaleX", "scaleY"]; this.round = true; } override public function killProps(_arg1:Object):void{ super.killProps(_arg1); if ((((_tweens.length == 0)) || (("setSize" in _arg1)))){ this.overwriteProps = []; }; } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ _target = _arg1; _hasSetSize = Boolean(("setSize" in _target)); if (((("width" in _arg2)) && (!((_target.width == _arg2.width))))){ addTween((_hasSetSize) ? this : _target, "width", _target.width, _arg2.width, "width"); _setWidth = _hasSetSize; }; if (((("height" in _arg2)) && (!((_target.height == _arg2.height))))){ addTween((_hasSetSize) ? this : _target, "height", _target.height, _arg2.height, "height"); _setHeight = _hasSetSize; }; if (_tweens.length == 0){ _hasSetSize = false; }; return (true); } override public function set changeFactor(_arg1:Number):void{ updateTweens(_arg1); if (_hasSetSize){ _target.setSize((_setWidth) ? this.width : _target.width, (_setHeight) ? this.height : _target.height); }; } } }//package com.greensock.plugins
Section 22
//ShortRotationPlugin (com.greensock.plugins.ShortRotationPlugin) package com.greensock.plugins { import flash.display.*; import com.greensock.*; public class ShortRotationPlugin extends TweenPlugin { public static const API:Number = 1; public function ShortRotationPlugin(){ this.propName = "shortRotation"; this.overwriteProps = []; } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ var _local4:String; if (typeof(_arg2) == "number"){ return (false); }; for (_local4 in _arg2) { initRotation(_arg1, _local4, _arg1[_local4], ((typeof(_arg2[_local4]))=="number") ? Number(_arg2[_local4]) : (_arg1[_local4] + Number(_arg2[_local4]))); }; return (true); } public function initRotation(_arg1:Object, _arg2:String, _arg3:Number, _arg4:Number):void{ var _local5:Number = ((_arg4 - _arg3) % 360); if (((_arg4 - _arg3) % 360) != (_local5 % 180)){ _local5 = ((_local5)<0) ? (_local5 + 360) : (_local5 - 360); }; addTween(_arg1, _arg2, _arg3, (_arg3 + _local5), _arg2); this.overwriteProps[this.overwriteProps.length] = _arg2; } } }//package com.greensock.plugins
Section 23
//TintPlugin (com.greensock.plugins.TintPlugin) package com.greensock.plugins { import flash.display.*; import com.greensock.*; import flash.geom.*; import com.greensock.core.*; public class TintPlugin extends TweenPlugin { protected var _ct:ColorTransform; protected var _transform:Transform; protected var _ignoreAlpha:Boolean; public static const API:Number = 1; protected static var _props:Array = ["redMultiplier", "greenMultiplier", "blueMultiplier", "alphaMultiplier", "redOffset", "greenOffset", "blueOffset", "alphaOffset"]; public function TintPlugin(){ this.propName = "tint"; this.overwriteProps = ["tint"]; } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ if (!(_arg1 is DisplayObject)){ return (false); }; var _local4:ColorTransform = new ColorTransform(); if (((!((_arg2 == null))) && (!((_arg3.vars.removeTint == true))))){ _local4.color = uint(_arg2); }; _ignoreAlpha = true; init((_arg1 as DisplayObject), _local4); return (true); } override public function set changeFactor(_arg1:Number):void{ var _local2:ColorTransform; updateTweens(_arg1); if (_ignoreAlpha){ _local2 = _transform.colorTransform; _ct.alphaMultiplier = _local2.alphaMultiplier; _ct.alphaOffset = _local2.alphaOffset; }; _transform.colorTransform = _ct; } public function init(_arg1:DisplayObject, _arg2:ColorTransform):void{ var _local4:String; _transform = _arg1.transform; _ct = _transform.colorTransform; var _local3:int = _props.length; while (_local3--) { _local4 = _props[_local3]; if (_ct[_local4] != _arg2[_local4]){ _tweens[_tweens.length] = new PropTween(_ct, _local4, _ct[_local4], (_arg2[_local4] - _ct[_local4]), "tint", false); }; }; } } }//package com.greensock.plugins
Section 24
//TransformMatrixPlugin (com.greensock.plugins.TransformMatrixPlugin) package com.greensock.plugins { import flash.display.*; import com.greensock.*; import flash.geom.*; public class TransformMatrixPlugin extends TweenPlugin { protected var _dChange:Number; protected var _txStart:Number; protected var _cStart:Number; protected var _matrix:Matrix; protected var _tyStart:Number; protected var _aStart:Number; protected var _angleChange:Number;// = 0 protected var _transform:Transform; protected var _aChange:Number; protected var _bChange:Number; protected var _tyChange:Number; protected var _txChange:Number; protected var _cChange:Number; protected var _dStart:Number; protected var _bStart:Number; public static const API:Number = 1; private static const _DEG2RAD:Number = 0.0174532925199433; private static const _RAD2DEG:Number = 57.2957795130823; public function TransformMatrixPlugin(){ this.propName = "transformMatrix"; this.overwriteProps = ["x", "y", "scaleX", "scaleY", "rotation", "transformMatrix", "transformAroundPoint", "transformAroundCenter"]; } override public function set changeFactor(_arg1:Number):void{ _matrix.a = (_aStart + (_arg1 * _aChange)); _matrix.b = (_bStart + (_arg1 * _bChange)); _matrix.c = (_cStart + (_arg1 * _cChange)); _matrix.d = (_dStart + (_arg1 * _dChange)); if (_angleChange){ _matrix.rotate((_angleChange * _arg1)); }; _matrix.tx = (_txStart + (_arg1 * _txChange)); _matrix.ty = (_tyStart + (_arg1 * _tyChange)); _transform.matrix = _matrix; } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ 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; _transform = (_arg1.transform as Transform); _matrix = _transform.matrix; var _local4:Matrix = _matrix.clone(); _txStart = _local4.tx; _tyStart = _local4.ty; _aStart = _local4.a; _bStart = _local4.b; _cStart = _local4.c; _dStart = _local4.d; if (("x" in _arg2)){ _txChange = ((typeof(_arg2.x))=="number") ? (_arg2.x - _txStart) : Number(_arg2.x); } else { if (("tx" in _arg2)){ _txChange = (_arg2.tx - _txStart); } else { _txChange = 0; }; }; if (("y" in _arg2)){ _tyChange = ((typeof(_arg2.y))=="number") ? (_arg2.y - _tyStart) : Number(_arg2.y); } else { if (("ty" in _arg2)){ _tyChange = (_arg2.ty - _tyStart); } else { _tyChange = 0; }; }; _aChange = (("a" in _arg2)) ? (_arg2.a - _aStart) : 0; _bChange = (("b" in _arg2)) ? (_arg2.b - _bStart) : 0; _cChange = (("c" in _arg2)) ? (_arg2.c - _cStart) : 0; _dChange = (("d" in _arg2)) ? (_arg2.d - _dStart) : 0; if (((((((((((((((("rotation" in _arg2)) || (("scale" in _arg2)))) || (("scaleX" in _arg2)))) || (("scaleY" in _arg2)))) || (("skewX" in _arg2)))) || (("skewY" in _arg2)))) || (("skewX2" in _arg2)))) || (("skewY2" in _arg2)))){ _local7 = Math.sqrt(((_local4.a * _local4.a) + (_local4.b * _local4.b))); if ((((_local4.a < 0)) && ((_local4.d > 0)))){ _local7 = -(_local7); }; _local8 = Math.sqrt(((_local4.c * _local4.c) + (_local4.d * _local4.d))); if ((((_local4.d < 0)) && ((_local4.a > 0)))){ _local8 = -(_local8); }; _local9 = Math.atan2(_local4.b, _local4.a); if ((((_local4.a < 0)) && ((_local4.d >= 0)))){ _local9 = (_local9 + ((_local9)<=0) ? Math.PI : -(Math.PI)); }; _local10 = (Math.atan2(-(_matrix.c), _matrix.d) - _local9); _local11 = (("rotation" in _arg2)) ? ((typeof(_arg2.rotation))=="number") ? (_arg2.rotation * _DEG2RAD) : ((Number(_arg2.rotation) * _DEG2RAD) + _local9) : _local9; _local12 = (("skewX" in _arg2)) ? ((typeof(_arg2.skewX))=="number") ? (Number(_arg2.skewX) * _DEG2RAD) : ((Number(_arg2.skewX) * _DEG2RAD) + _local10) : 0; if (("skewY" in _arg2)){ _local13 = ((typeof(_arg2.skewY))=="number") ? (_arg2.skewY * _DEG2RAD) : ((Number(_arg2.skewY) * _DEG2RAD) - _local10); _local11 = (_local11 + (_local13 + _local10)); _local12 = (_local12 - _local13); }; if (_local11 != _local9){ if (("rotation" in _arg2)){ _angleChange = (_local11 - _local9); _local11 = _local9; } else { _local4.rotate((_local11 - _local9)); }; }; if (("scale" in _arg2)){ _local5 = (Number(_arg2.scale) / _local7); _local6 = (Number(_arg2.scale) / _local8); if (typeof(_arg2.scale) != "number"){ _local5 = (_local5 + 1); _local6 = (_local6 + 1); }; } else { if (("scaleX" in _arg2)){ _local5 = (Number(_arg2.scaleX) / _local7); if (typeof(_arg2.scaleX) != "number"){ _local5 = (_local5 + 1); }; }; if (("scaleY" in _arg2)){ _local6 = (Number(_arg2.scaleY) / _local8); if (typeof(_arg2.scaleY) != "number"){ _local6 = (_local6 + 1); }; }; }; if (_local12 != _local10){ _local4.c = (-(_local8) * Math.sin((_local12 + _local11))); _local4.d = (_local8 * Math.cos((_local12 + _local11))); }; if (("skewX2" in _arg2)){ if (typeof(_arg2.skewX2) == "number"){ _local4.c = Math.tan((0 - (_arg2.skewX2 * _DEG2RAD))); } else { _local4.c = (_local4.c + Math.tan((0 - (Number(_arg2.skewX2) * _DEG2RAD)))); }; }; if (("skewY2" in _arg2)){ if (typeof(_arg2.skewY2) == "number"){ _local4.b = Math.tan((_arg2.skewY2 * _DEG2RAD)); } else { _local4.b = (_local4.b + Math.tan((Number(_arg2.skewY2) * _DEG2RAD))); }; }; if (_local5){ _local4.a = (_local4.a * _local5); _local4.b = (_local4.b * _local5); }; if (_local6){ _local4.c = (_local4.c * _local6); _local4.d = (_local4.d * _local6); }; _aChange = (_local4.a - _aStart); _bChange = (_local4.b - _bStart); _cChange = (_local4.c - _cStart); _dChange = (_local4.d - _dStart); }; return (true); } } }//package com.greensock.plugins
Section 25
//TweenPlugin (com.greensock.plugins.TweenPlugin) package com.greensock.plugins { import com.greensock.*; import com.greensock.core.*; public class TweenPlugin { public var activeDisable:Boolean; protected var _changeFactor:Number;// = 0 protected var _tweens:Array; public var onDisable:Function; public var propName:String; public var round:Boolean; public var onEnable:Function; public var priority:int;// = 0 public var overwriteProps:Array; public var onComplete:Function; public static const VERSION:Number = 1.31; public static const API:Number = 1; public function TweenPlugin(){ _tweens = []; super(); } protected function updateTweens(_arg1:Number):void{ var _local3:PropTween; var _local4:Number; var _local2:int = _tweens.length; if (this.round){ while (_local2--) { _local3 = _tweens[_local2]; _local4 = (_local3.start + (_local3.change * _arg1)); _local3.target[_local3.property] = ((_local4)>0) ? int((_local4 + 0.5)) : int((_local4 - 0.5)); }; } else { while (_local2--) { _local3 = _tweens[_local2]; _local3.target[_local3.property] = (_local3.start + (_local3.change * _arg1)); }; }; } protected function addTween(_arg1:Object, _arg2:String, _arg3:Number, _arg4, _arg5:String=null):void{ var _local6:Number; if (_arg4 != null){ _local6 = ((typeof(_arg4))=="number") ? (Number(_arg4) - _arg3) : Number(_arg4); if (_local6 != 0){ _tweens[_tweens.length] = new PropTween(_arg1, _arg2, _arg3, _local6, ((_arg5) || (_arg2)), false); }; }; } public function get changeFactor():Number{ return (_changeFactor); } public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ addTween(_arg1, this.propName, _arg1[this.propName], _arg2, this.propName); return (true); } public function killProps(_arg1:Object):void{ var _local2:int = this.overwriteProps.length; while (_local2--) { if ((this.overwriteProps[_local2] in _arg1)){ this.overwriteProps.splice(_local2, 1); }; }; _local2 = _tweens.length; while (_local2--) { if ((PropTween(_tweens[_local2]).name in _arg1)){ _tweens.splice(_local2, 1); }; }; } public function set changeFactor(_arg1:Number):void{ updateTweens(_arg1); _changeFactor = _arg1; } public static function activate(_arg1:Array):Boolean{ var _local3:Object; TweenLite.onPluginEvent = TweenPlugin.onTweenEvent; var _local2:int = _arg1.length; while (_local2--) { if (_arg1[_local2].hasOwnProperty("API")){ _local3 = new ((_arg1[_local2] as Class)); TweenLite.plugins[_local3.propName] = _arg1[_local2]; }; }; return (true); } private static function onTweenEvent(_arg1:String, _arg2:TweenLite):Boolean{ var _local4:Boolean; var _local5:Array; var _local6:int; var _local3:PropTween = _arg2.cachedPT1; if (_arg1 == "onInit"){ _local5 = []; while (_local3) { _local5[_local5.length] = _local3; _local3 = _local3.nextNode; }; _local5.sortOn("priority", (Array.NUMERIC | Array.DESCENDING)); _local6 = _local5.length; while (_local6--) { PropTween(_local5[_local6]).nextNode = _local5[(_local6 + 1)]; PropTween(_local5[_local6]).prevNode = _local5[(_local6 - 1)]; }; _arg2.cachedPT1 = _local5[0]; } else { while (_local3) { if (((_local3.isPlugin) && (_local3.target[_arg1]))){ if (_local3.target.activeDisable){ _local4 = true; }; var _local7 = _local3.target; _local7[_arg1](); }; _local3 = _local3.nextNode; }; }; return (_local4); } } }//package com.greensock.plugins
Section 26
//VisiblePlugin (com.greensock.plugins.VisiblePlugin) package com.greensock.plugins { import flash.display.*; import com.greensock.*; public class VisiblePlugin extends TweenPlugin { protected var _target:Object; protected var _initVal:Boolean; protected var _visible:Boolean; protected var _tween:TweenLite; public static const API:Number = 1; public function VisiblePlugin(){ this.propName = "visible"; this.overwriteProps = ["visible"]; } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ _target = _arg1; _tween = _arg3; _initVal = _target.visible; _visible = Boolean(_arg2); return (true); } override public function set changeFactor(_arg1:Number):void{ if ((((_arg1 == 1)) && ((((_tween.cachedDuration == _tween.cachedTime)) || ((_tween.cachedTime == 0)))))){ _target.visible = _visible; } else { _target.visible = _initVal; }; } } }//package com.greensock.plugins
Section 27
//VolumePlugin (com.greensock.plugins.VolumePlugin) package com.greensock.plugins { import flash.display.*; import com.greensock.*; import flash.media.*; public class VolumePlugin extends TweenPlugin { protected var _target:Object; protected var _st:SoundTransform; public static const API:Number = 1; public function VolumePlugin(){ this.propName = "volume"; this.overwriteProps = ["volume"]; } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ if (((isNaN(_arg2)) || (!(_arg1.hasOwnProperty("soundTransform"))))){ return (false); }; _target = _arg1; _st = _target.soundTransform; addTween(_st, "volume", _st.volume, _arg2, "volume"); return (true); } override public function set changeFactor(_arg1:Number):void{ updateTweens(_arg1); _target.soundTransform = _st; } } }//package com.greensock.plugins
Section 28
//OverwriteManager (com.greensock.OverwriteManager) package com.greensock { import com.greensock.core.*; public class OverwriteManager { public static const ALL_ONSTART:int = 4; public static const CONCURRENT:int = 3; public static const ALL_IMMEDIATE:int = 1; public static const PREEXISTING:int = 5; public static const AUTO:int = 2; public static const version:Number = 6; public static const NONE:int = 0; public static var enabled:Boolean; public static var mode:int; public static function getGlobalPaused(_arg1:TweenCore):Boolean{ while (_arg1) { if (_arg1.cachedPaused){ return (true); }; _arg1 = _arg1.timeline; }; return (false); } public static function init(_arg1:int=2):int{ if (TweenLite.version < 11.099994){ throw (new Error("Warning: Your TweenLite class needs to be updated to work with OverwriteManager (or you may need to clear your ASO files). Please download and install the latest version from http://www.tweenlite.com.")); }; TweenLite.overwriteManager = _slot1; mode = _arg1; enabled = true; return (mode); } public static function manageOverwrites(_arg1:TweenLite, _arg2:Object, _arg3:Array, _arg4:uint):Boolean{ var _local5:int; var _local6:Boolean; var _local7:TweenLite; var _local13:uint; var _local14:Number; var _local15:Number; var _local16:TweenCore; var _local17:Number; var _local18:SimpleTimeline; if (_arg4 >= 4){ _local13 = _arg3.length; _local5 = 0; while (_local5 < _local13) { _local7 = _arg3[_local5]; if (_local7 != _arg1){ if (_local7.setEnabled(false, false)){ _local6 = true; }; } else { if (_arg4 == 5){ break; }; }; _local5++; }; return (_local6); }; var _local8:Number = _arg1.startTime; var _local9:Array = []; var _local10:Array = []; var _local11:uint; var _local12:uint; _local5 = _arg3.length; while (_local5--) { _local7 = _arg3[_local5]; if ((((_local7 == _arg1)) || (_local7.gc))){ } else { if (_local7.timeline != _arg1.timeline){ if (!getGlobalPaused(_local7)){ var _temp1 = _local11; _local11 = (_local11 + 1); var _local19 = _temp1; _local10[_local19] = _local7; }; } else { if ((((((_local7.startTime <= _local8)) && (((_local7.startTime + _local7.totalDuration) > _local8)))) && (!(getGlobalPaused(_local7))))){ var _temp2 = _local12; _local12 = (_local12 + 1); _local19 = _temp2; _local9[_local19] = _local7; }; }; }; }; if (_local11 != 0){ _local14 = _arg1.cachedTimeScale; _local15 = _local8; _local18 = _arg1.timeline; while (_local18) { _local14 = (_local14 * _local18.cachedTimeScale); _local15 = (_local15 + _local18.startTime); _local18 = _local18.timeline; }; _local8 = (_local14 * _local15); _local5 = _local11; while (_local5--) { _local16 = _local10[_local5]; _local14 = _local16.cachedTimeScale; _local15 = _local16.startTime; _local18 = _local16.timeline; while (_local18) { _local14 = (_local14 * _local18.cachedTimeScale); _local15 = (_local15 + _local18.startTime); _local18 = _local18.timeline; }; _local17 = (_local14 * _local15); if ((((_local17 <= _local8)) && (((((_local17 + (_local16.totalDuration * _local14)) > _local8)) || ((_local16.cachedDuration == 0)))))){ var _temp3 = _local12; _local12 = (_local12 + 1); _local19 = _temp3; _local9[_local19] = _local16; }; }; }; if (_local12 == 0){ return (_local6); }; _local5 = _local12; if (_arg4 == 2){ while (_local5--) { _local7 = _local9[_local5]; if (_local7.killVars(_arg2)){ _local6 = true; }; if ((((_local7.cachedPT1 == null)) && (_local7.initted))){ _local7.setEnabled(false, false); }; }; } else { while (_local5--) { if (TweenLite(_local9[_local5]).setEnabled(false, false)){ _local6 = true; }; }; }; return (_local6); } } }//package com.greensock
Section 29
//TweenLite (com.greensock.TweenLite) package com.greensock { import flash.events.*; import flash.display.*; import com.greensock.core.*; import flash.utils.*; import com.greensock.plugins.*; public class TweenLite extends TweenCore { protected var _hasPlugins:Boolean; public var propTweenLookup:Object; public var cachedPT1:PropTween; protected var _overwrite:uint; protected var _ease:Function; public var target:Object; public var ratio:Number;// = 0 protected var _overwrittenProps:Object; protected var _notifyPluginsOfEnabled:Boolean; public static const version:Number = 11.3; public static var rootTimeline:SimpleTimeline; public static var fastEaseLookup:Dictionary = new Dictionary(false); public static var onPluginEvent:Function; public static var rootFramesTimeline:SimpleTimeline; public static var defaultEase:Function = TweenLite.easeOut; public static var plugins:Object = {}; public static var masterList:Dictionary = new Dictionary(false); public static var overwriteManager:Object; public static var rootFrame:Number; public static var killDelayedCallsTo:Function = TweenLite.killTweensOf; private static var _shape:Shape = new Shape(); protected static var _reservedProps:Object = {ease:1, delay:1, overwrite:1, onComplete:1, onCompleteParams:1, useFrames:1, runBackwards:1, startAt:1, onUpdate:1, onUpdateParams:1, roundProps:1, onStart:1, onStartParams:1, onInit:1, onInitParams:1, onReverseComplete:1, onReverseCompleteParams:1, onRepeat:1, onRepeatParams:1, proxiedEase:1, easeParams:1, yoyo:1, onCompleteListener:1, onUpdateListener:1, onStartListener:1, onReverseCompleteListener:1, onRepeatListener:1, orientToBezier:1, timeScale:1, immediateRender:1, repeat:1, repeatDelay:1, timeline:1, data:1, paused:1}; public function TweenLite(_arg1:Object, _arg2:Number, _arg3:Object){ var _local5:TweenLite; super(_arg2, _arg3); this.target = _arg1; if ((((this.target is TweenCore)) && (("timeScale" in this.vars)))){ this.cachedTimeScale = 1; }; propTweenLookup = {}; _ease = defaultEase; _overwrite = (((!((Number(_arg3.overwrite) > -1))) || (((!(overwriteManager.enabled)) && ((_arg3.overwrite > 1)))))) ? overwriteManager.mode : int(_arg3.overwrite); var _local4:Array = masterList[_arg1]; if (!_local4){ masterList[_arg1] = [this]; } else { if (_overwrite == 1){ for each (_local5 in _local4) { if (!_local5.gc){ _local5.setEnabled(false, false); }; }; masterList[_arg1] = [this]; } else { _local4[_local4.length] = this; }; }; if (((this.active) || (this.vars.immediateRender))){ renderTime(0, false, true); }; } protected function easeProxy(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (this.vars.proxiedEase.apply(null, arguments.concat(this.vars.easeParams))); } override public function renderTime(_arg1:Number, _arg2:Boolean=false, _arg3:Boolean=false):void{ var _local4:Boolean; var _local5:Number = this.cachedTime; if (_arg1 >= this.cachedDuration){ this.cachedTotalTime = (this.cachedTime = this.cachedDuration); this.ratio = 1; _local4 = true; if (this.cachedDuration == 0){ if ((((((_arg1 == 0)) || ((_rawPrevTime < 0)))) && (!((_rawPrevTime == _arg1))))){ _arg3 = true; }; _rawPrevTime = _arg1; }; } else { if (_arg1 <= 0){ this.cachedTotalTime = (this.cachedTime = (this.ratio = 0)); if (_arg1 < 0){ this.active = false; if (this.cachedDuration == 0){ if (_rawPrevTime > 0){ _arg3 = true; _local4 = true; }; _rawPrevTime = _arg1; }; }; if (((this.cachedReversed) && (!((_local5 == 0))))){ _local4 = true; }; } else { this.cachedTotalTime = (this.cachedTime = _arg1); this.ratio = _ease(_arg1, 0, 1, this.cachedDuration); }; }; if ((((this.cachedTime == _local5)) && (!(_arg3)))){ return; }; if (!this.initted){ init(); if (((!(_local4)) && (this.cachedTime))){ this.ratio = _ease(this.cachedTime, 0, 1, this.cachedDuration); }; }; if (((!(this.active)) && (!(this.cachedPaused)))){ this.active = true; }; if ((((((((_local5 == 0)) && (this.vars.onStart))) && (!((this.cachedTime == 0))))) && (!(_arg2)))){ this.vars.onStart.apply(null, this.vars.onStartParams); }; var _local6:PropTween = this.cachedPT1; while (_local6) { _local6.target[_local6.property] = (_local6.start + (this.ratio * _local6.change)); _local6 = _local6.nextNode; }; if (((_hasUpdate) && (!(_arg2)))){ this.vars.onUpdate.apply(null, this.vars.onUpdateParams); }; if (_local4){ if (((_hasPlugins) && (this.cachedPT1))){ onPluginEvent("onComplete", this); }; complete(true, _arg2); }; } override public function setEnabled(_arg1:Boolean, _arg2:Boolean=false):Boolean{ var _local3:Array; if (_arg1){ _local3 = TweenLite.masterList[this.target]; if (!_local3){ TweenLite.masterList[this.target] = [this]; } else { _local3[_local3.length] = this; }; }; super.setEnabled(_arg1, _arg2); if (((_notifyPluginsOfEnabled) && (this.cachedPT1))){ return (onPluginEvent((_arg1) ? "onEnable" : "onDisable", this)); }; return (false); } protected function init():void{ var _local1:String; var _local2:int; var _local3:*; var _local4:Boolean; var _local5:Array; var _local6:PropTween; if (this.vars.onInit){ this.vars.onInit.apply(null, this.vars.onInitParams); }; if (typeof(this.vars.ease) == "function"){ _ease = this.vars.ease; }; if (this.vars.easeParams){ this.vars.proxiedEase = _ease; _ease = easeProxy; }; this.cachedPT1 = null; this.propTweenLookup = {}; for (_local1 in this.vars) { if ((((_local1 in _reservedProps)) && (!((((_local1 == "timeScale")) && ((this.target is TweenCore))))))){ } else { if ((((_local1 in plugins)) && (new ((plugins[_local1] as Class)).onInitTween(this.target, this.vars[_local1], this)))){ this.cachedPT1 = new PropTween(_local3, "changeFactor", 0, 1, ((_local3.overwriteProps.length)==1) ? _local3.overwriteProps[0] : "_MULTIPLE_", true, this.cachedPT1); if (this.cachedPT1.name == "_MULTIPLE_"){ _local2 = _local3.overwriteProps.length; while (_local2--) { this.propTweenLookup[_local3.overwriteProps[_local2]] = this.cachedPT1; }; } else { this.propTweenLookup[this.cachedPT1.name] = this.cachedPT1; }; if (_local3.priority){ this.cachedPT1.priority = _local3.priority; _local4 = true; }; if (((_local3.onDisable) || (_local3.onEnable))){ _notifyPluginsOfEnabled = true; }; _hasPlugins = true; } else { this.cachedPT1 = new PropTween(this.target, _local1, Number(this.target[_local1]), ((typeof(this.vars[_local1]))=="number") ? (Number(this.vars[_local1]) - this.target[_local1]) : Number(this.vars[_local1]), _local1, false, this.cachedPT1); this.propTweenLookup[_local1] = this.cachedPT1; }; }; }; if (_local4){ onPluginEvent("onInit", this); }; if (this.vars.runBackwards){ _local6 = this.cachedPT1; while (_local6) { _local6.start = (_local6.start + _local6.change); _local6.change = -(_local6.change); _local6 = _local6.nextNode; }; }; _hasUpdate = Boolean(!((this.vars.onUpdate == null))); if (_overwrittenProps){ killVars(_overwrittenProps); if (this.cachedPT1 == null){ this.setEnabled(false, false); }; }; if ((((((((_overwrite > 1)) && (this.cachedPT1))) && (masterList[this.target]))) && ((_local5.length > 1)))){ if (overwriteManager.manageOverwrites(this, this.propTweenLookup, _local5, _overwrite)){ init(); }; }; this.initted = true; } public function killVars(_arg1:Object, _arg2:Boolean=true):Boolean{ var _local3:String; var _local4:PropTween; var _local5:Boolean; if (_overwrittenProps == null){ _overwrittenProps = {}; }; for (_local3 in _arg1) { if ((_local3 in propTweenLookup)){ _local4 = propTweenLookup[_local3]; if (((_local4.isPlugin) && ((_local4.name == "_MULTIPLE_")))){ _local4.target.killProps(_arg1); if (_local4.target.overwriteProps.length == 0){ _local4.name = ""; }; }; if (_local4.name != "_MULTIPLE_"){ if (_local4.nextNode){ _local4.nextNode.prevNode = _local4.prevNode; }; if (_local4.prevNode){ _local4.prevNode.nextNode = _local4.nextNode; } else { if (this.cachedPT1 == _local4){ this.cachedPT1 = _local4.nextNode; }; }; if (((_local4.isPlugin) && (_local4.target.onDisable))){ _local4.target.onDisable(); if (_local4.target.activeDisable){ _local5 = true; }; }; delete propTweenLookup[_local3]; }; }; if (_arg2){ _overwrittenProps[_local3] = 1; }; }; return (_local5); } override public function invalidate():void{ if (((_notifyPluginsOfEnabled) && (this.cachedPT1))){ onPluginEvent("onDisable", this); }; this.cachedPT1 = null; _overwrittenProps = null; _hasUpdate = (this.initted = (this.active = (_notifyPluginsOfEnabled = false))); this.propTweenLookup = {}; } public static function initClass():void{ rootFrame = 0; rootTimeline = new SimpleTimeline(null); rootFramesTimeline = new SimpleTimeline(null); rootTimeline.cachedStartTime = (getTimer() * 0.001); rootFramesTimeline.cachedStartTime = rootFrame; rootTimeline.autoRemoveChildren = true; rootFramesTimeline.autoRemoveChildren = true; _shape.addEventListener(Event.ENTER_FRAME, updateAll, false, 0, true); if (overwriteManager == null){ overwriteManager = {mode:1, enabled:false}; }; } public static function killTweensOf(_arg1:Object, _arg2:Boolean=false, _arg3:Object=null):void{ var _local4:Array; var _local5:int; var _local6:TweenLite; if ((_arg1 in masterList)){ _local4 = masterList[_arg1]; _local5 = _local4.length; while (_local5--) { _local6 = _local4[_local5]; if (!_local6.gc){ if (_arg2){ _local6.complete(false, false); }; if (_arg3 != null){ _local6.killVars(_arg3); }; if ((((_arg3 == null)) || ((((_local6.cachedPT1 == null)) && (_local6.initted))))){ _local6.setEnabled(false, false); }; }; }; if (_arg3 == null){ delete masterList[_arg1]; }; }; } public static function from(_arg1:Object, _arg2:Number, _arg3:Object):TweenLite{ _arg3.runBackwards = true; if (!("immediateRender" in _arg3)){ _arg3.immediateRender = true; }; return (new TweenLite(_arg1, _arg2, _arg3)); } protected static function easeOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = (1 - (_arg1 / _arg4)); return ((1 - (_arg1 * _arg1))); } public static function delayedCall(_arg1:Number, _arg2:Function, _arg3:Array=null, _arg4:Boolean=false):TweenLite{ return (new TweenLite(_arg2, 0, {delay:_arg1, onComplete:_arg2, onCompleteParams:_arg3, immediateRender:false, useFrames:_arg4, overwrite:0})); } protected static function updateAll(_arg1:Event=null):void{ var _local2:Dictionary; var _local3:Object; var _local4:Array; var _local5:int; rootTimeline.renderTime((((getTimer() * 0.001) - rootTimeline.cachedStartTime) * rootTimeline.cachedTimeScale), false, false); rootFrame++; rootFramesTimeline.renderTime(((rootFrame - rootFramesTimeline.cachedStartTime) * rootFramesTimeline.cachedTimeScale), false, false); if (!(rootFrame % 60)){ _local2 = masterList; for (_local3 in _local2) { _local4 = _local2[_local3]; _local5 = _local4.length; while (_local5--) { if (TweenLite(_local4[_local5]).gc){ _local4.splice(_local5, 1); }; }; if (_local4.length == 0){ delete _local2[_local3]; }; }; }; } public static function to(_arg1:Object, _arg2:Number, _arg3:Object):TweenLite{ return (new TweenLite(_arg1, _arg2, _arg3)); } } }//package com.greensock
Section 30
//TweenMax (com.greensock.TweenMax) package com.greensock { import flash.events.*; import flash.display.*; import com.greensock.core.*; import flash.utils.*; import com.greensock.plugins.*; import com.greensock.events.*; public class TweenMax extends TweenLite implements IEventDispatcher { protected var _cyclesComplete:uint;// = 0 protected var _dispatcher:EventDispatcher; protected var _hasUpdateListener:Boolean; protected var _easeType:uint; protected var _repeatDelay:Number;// = 0 public var yoyo:Boolean; protected var _easePower:uint; protected var _repeat:int;// = 0 public static const version:Number = 11.2; private static var _overwriteMode:int = (OverwriteManager.enabled) ? OverwriteManager.mode : OverwriteManager.init(2); ; public static var killTweensOf:Function = TweenLite.killTweensOf; public static var killDelayedCallsTo:Function = TweenLite.killTweensOf; public function TweenMax(_arg1:Object, _arg2:Number, _arg3:Object){ super(_arg1, _arg2, _arg3); if (TweenLite.version < 11.2){ throw (new Error("TweenMax error! Please update your TweenLite class or try deleting your ASO files. TweenMax requires a more recent version. Download updates at http://www.TweenMax.com.")); }; this.yoyo = Boolean(this.vars.yoyo); _repeat = ((this.vars.repeat) || (0)); _repeatDelay = ((this.vars.repeatDelay) || (0)); this.cacheIsDirty = true; if (((((((((((this.vars.onCompleteListener) || (this.vars.onInitListener))) || (this.vars.onUpdateListener))) || (this.vars.onStartListener))) || (this.vars.onRepeatListener))) || (this.vars.onReverseCompleteListener))){ initDispatcher(); if ((((_arg2 == 0)) && ((_delay == 0)))){ _dispatcher.dispatchEvent(new TweenEvent(TweenEvent.UPDATE)); _dispatcher.dispatchEvent(new TweenEvent(TweenEvent.COMPLETE)); }; }; if (((("timeScale" in this.vars)) && (!((this.target is TweenCore))))){ this.cachedTimeScale = this.vars.timeScale; }; } public function dispatchEvent(_arg1:Event):Boolean{ return (((_dispatcher)==null) ? false : _dispatcher.dispatchEvent(_arg1)); } public function set timeScale(_arg1:Number):void{ if (_arg1 == 0){ _arg1 = 0.0001; }; var _local2:Number = (((_pauseTime) || ((_pauseTime == 0)))) ? _pauseTime : this.timeline.cachedTotalTime; this.cachedStartTime = (_local2 - (((_local2 - this.cachedStartTime) * this.cachedTimeScale) / _arg1)); this.cachedTimeScale = _arg1; setDirtyCache(false); } override public function renderTime(_arg1:Number, _arg2:Boolean=false, _arg3:Boolean=false):void{ var _local6:Boolean; var _local7:Boolean; var _local8:Boolean; var _local10:Number; var _local11:uint; var _local12:Number; var _local4:Number = (this.cacheIsDirty) ? this.totalDuration : this.cachedTotalDuration; var _local5:Number = this.cachedTime; if (_arg1 >= _local4){ this.cachedTotalTime = _local4; this.cachedTime = this.cachedDuration; this.ratio = 1; _local6 = true; if (this.cachedDuration == 0){ if ((((((_arg1 == 0)) || ((_rawPrevTime < 0)))) && (!((_rawPrevTime == _arg1))))){ _arg3 = true; }; _rawPrevTime = _arg1; }; } else { if (_arg1 <= 0){ if (_arg1 < 0){ this.active = false; if (this.cachedDuration == 0){ if (_rawPrevTime > 0){ _arg3 = true; _local6 = true; }; _rawPrevTime = _arg1; }; }; this.cachedTotalTime = (this.cachedTime = (this.ratio = 0)); if (((this.cachedReversed) && (!((_local5 == 0))))){ _local6 = true; }; } else { this.cachedTotalTime = (this.cachedTime = _arg1); _local8 = true; }; }; if (_repeat != 0){ _local10 = (this.cachedDuration + _repeatDelay); if (_local6){ if (((this.yoyo) && ((_repeat % 2)))){ this.cachedTime = (this.ratio = 0); }; } else { if (_arg1 > 0){ if (_cyclesComplete != (_cyclesComplete = int((this.cachedTotalTime / _local10)))){ _local7 = true; }; this.cachedTime = (((this.cachedTotalTime / _local10) - _cyclesComplete) * _local10); if (((this.yoyo) && ((_cyclesComplete % 2)))){ this.cachedTime = (this.cachedDuration - this.cachedTime); } else { if (this.cachedTime >= this.cachedDuration){ this.cachedTime = this.cachedDuration; this.ratio = 1; _local8 = false; }; }; if (this.cachedTime <= 0){ this.cachedTime = (this.ratio = 0); _local8 = false; }; }; }; }; if ((((_local5 == this.cachedTime)) && (!(_arg3)))){ return; }; if (!this.initted){ init(); }; if (((!(this.active)) && (!(this.cachedPaused)))){ this.active = true; }; if (_local8){ if (_easeType){ _local11 = _easePower; _local12 = (this.cachedTime / this.cachedDuration); if (_easeType == 2){ _local12 = (1 - _local12); this.ratio = _local12; while (_local11--) { this.ratio = (_local12 * this.ratio); }; this.ratio = (1 - this.ratio); } else { if (_easeType == 1){ this.ratio = _local12; while (_local11--) { this.ratio = (_local12 * this.ratio); }; } else { if (_local12 < 0.5){ _local12 = (_local12 * 2); this.ratio = _local12; while (_local11--) { this.ratio = (_local12 * this.ratio); }; this.ratio = (this.ratio * 0.5); } else { _local12 = ((1 - _local12) * 2); this.ratio = _local12; while (_local11--) { this.ratio = (_local12 * this.ratio); }; this.ratio = (1 - (0.5 * this.ratio)); }; }; }; } else { this.ratio = _ease(this.cachedTime, 0, 1, this.cachedDuration); }; }; if ((((((_local5 == 0)) && (!((this.cachedTotalTime == 0))))) && (!(_arg2)))){ if (this.vars.onStart){ this.vars.onStart.apply(null, this.vars.onStartParams); }; if (_dispatcher){ _dispatcher.dispatchEvent(new TweenEvent(TweenEvent.START)); }; }; var _local9:PropTween = this.cachedPT1; while (_local9) { _local9.target[_local9.property] = (_local9.start + (this.ratio * _local9.change)); _local9 = _local9.nextNode; }; if (((_hasUpdate) && (!(_arg2)))){ this.vars.onUpdate.apply(null, this.vars.onUpdateParams); }; if (((_hasUpdateListener) && (!(_arg2)))){ _dispatcher.dispatchEvent(new TweenEvent(TweenEvent.UPDATE)); }; if (_local6){ if (((_hasPlugins) && (this.cachedPT1))){ onPluginEvent("onComplete", this); }; complete(true, _arg2); } else { if (((_local7) && (!(_arg2)))){ if (this.vars.onRepeat){ this.vars.onRepeat.apply(null, this.vars.onRepeatParams); }; if (_dispatcher){ _dispatcher.dispatchEvent(new TweenEvent(TweenEvent.REPEAT)); }; }; }; } override public function set totalDuration(_arg1:Number):void{ if (_repeat == -1){ return; }; this.duration = ((_arg1 - (_repeat * _repeatDelay)) / (_repeat + 1)); } public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{ if (_dispatcher == null){ initDispatcher(); }; if (_arg1 == TweenEvent.UPDATE){ _hasUpdateListener = true; }; _dispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5); } protected function insertPropTween(_arg1:Object, _arg2:String, _arg3:Number, _arg4, _arg5:String, _arg6:Boolean, _arg7:PropTween):PropTween{ var _local9:Array; var _local10:int; var _local8:PropTween = new PropTween(_arg1, _arg2, _arg3, ((typeof(_arg4))=="number") ? (_arg4 - _arg3) : Number(_arg4), _arg5, _arg6, _arg7); if (((_arg6) && ((_arg5 == "_MULTIPLE_")))){ _local9 = _arg1.overwriteProps; _local10 = _local9.length; while (_local10--) { this.propTweenLookup[_local9[_local10]] = _local8; }; } else { this.propTweenLookup[_arg5] = _local8; }; return (_local8); } override protected function init():void{ var _local1:TweenMax; var _local2:int; var _local3:String; var _local4:String; var _local5:Array; var _local6:Object; var _local7:PropTween; var _local8:PropTween; var _local9:int; if (this.vars.startAt){ this.vars.startAt.overwrite = 0; this.vars.startAt.immediateRender = true; _local1 = new TweenMax(this.target, 0, this.vars.startAt); }; if (_dispatcher){ _dispatcher.dispatchEvent(new TweenEvent(TweenEvent.INIT)); }; super.init(); if ((_ease in fastEaseLookup)){ _easeType = fastEaseLookup[_ease][0]; _easePower = fastEaseLookup[_ease][1]; }; if (((!((this.vars.roundProps == null))) && (("roundProps" in TweenLite.plugins)))){ _local5 = this.vars.roundProps; _local9 = _local5.length; while (_local9--) { _local3 = _local5[_local9]; _local8 = this.cachedPT1; while (_local8) { if (_local8.name == _local3){ if (_local8.isPlugin){ _local8.target.round = true; } else { if (_local6 == null){ _local6 = new TweenLite.plugins.roundProps(); _local6.add(_local8.target, _local3, _local8.start, _local8.change); _hasPlugins = true; _local7 = insertPropTween(_local6, "changeFactor", 0, 1, "_MULTIPLE_", true, this.cachedPT1); this.cachedPT1 = _local7; } else { _local6.add(_local8.target, _local3, _local8.start, _local8.change); }; this.removePropTween(_local8); this.propTweenLookup[_local3] = _local7; }; } else { if (((((_local8.isPlugin) && ((_local8.name == "_MULTIPLE_")))) && (!(_local8.target.round)))){ _local4 = ((" " + _local8.target.overwriteProps.join(" ")) + " "); if (_local4.indexOf(((" " + _local3) + " ")) != -1){ _local8.target.round = true; }; }; }; _local8 = _local8.nextNode; }; }; }; } public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{ if (_dispatcher){ _dispatcher.removeEventListener(_arg1, _arg2, _arg3); }; } public function setDestination(_arg1:String, _arg2, _arg3:Boolean=true):void{ var _local4:Object = {}; _local4[_arg1] = _arg2; updateTo(_local4, !(_arg3)); } public function willTrigger(_arg1:String):Boolean{ return (((_dispatcher)==null) ? false : _dispatcher.willTrigger(_arg1)); } public function hasEventListener(_arg1:String):Boolean{ return (((_dispatcher)==null) ? false : _dispatcher.hasEventListener(_arg1)); } protected function initDispatcher():void{ if (_dispatcher == null){ _dispatcher = new EventDispatcher(this); }; if ((this.vars.onInitListener is Function)){ _dispatcher.addEventListener(TweenEvent.INIT, this.vars.onInitListener, false, 0, true); }; if ((this.vars.onStartListener is Function)){ _dispatcher.addEventListener(TweenEvent.START, this.vars.onStartListener, false, 0, true); }; if ((this.vars.onUpdateListener is Function)){ _dispatcher.addEventListener(TweenEvent.UPDATE, this.vars.onUpdateListener, false, 0, true); _hasUpdateListener = true; }; if ((this.vars.onCompleteListener is Function)){ _dispatcher.addEventListener(TweenEvent.COMPLETE, this.vars.onCompleteListener, false, 0, true); }; if ((this.vars.onRepeatListener is Function)){ _dispatcher.addEventListener(TweenEvent.REPEAT, this.vars.onRepeatListener, false, 0, true); }; if ((this.vars.onReverseCompleteListener is Function)){ _dispatcher.addEventListener(TweenEvent.REVERSE_COMPLETE, this.vars.onReverseCompleteListener, false, 0, true); }; } public function set currentProgress(_arg1:Number):void{ if (_cyclesComplete == 0){ setTotalTime((this.duration * _arg1), false); } else { setTotalTime(((this.duration * _arg1) + (_cyclesComplete * this.cachedDuration)), false); }; } public function get totalProgress():Number{ return ((this.cachedTotalTime / this.totalDuration)); } public function set totalProgress(_arg1:Number):void{ setTotalTime((this.totalDuration * _arg1), false); } protected function removePropTween(_arg1:PropTween):Boolean{ if (_arg1.nextNode){ _arg1.nextNode.prevNode = _arg1.prevNode; }; if (_arg1.prevNode){ _arg1.prevNode.nextNode = _arg1.nextNode; } else { if (this.cachedPT1 == _arg1){ this.cachedPT1 = _arg1.nextNode; }; }; if (((_arg1.isPlugin) && (_arg1.target.onDisable))){ _arg1.target.onDisable(); if (_arg1.target.activeDisable){ return (true); }; }; return (false); } public function get currentProgress():Number{ return ((this.cachedTime / this.duration)); } public function get repeat():int{ return (_repeat); } public function updateTo(_arg1:Object, _arg2:Boolean=false):void{ var _local4:String; var _local5:Number; var _local6:PropTween; var _local7:Number; var _local3:Number = this.ratio; if (((((_arg2) && (!((this.timeline == null))))) && ((this.cachedStartTime < this.timeline.cachedTime)))){ this.cachedStartTime = this.timeline.cachedTime; this.setDirtyCache(false); if (this.gc){ this.setEnabled(true, false); } else { this.timeline.addChild(this); }; }; for (_local4 in _arg1) { this.vars[_local4] = _arg1[_local4]; }; if (this.initted){ this.initted = false; if (!_arg2){ init(); if (((((!(_arg2)) && ((this.cachedTime > 0)))) && ((this.cachedTime < this.cachedDuration)))){ _local5 = (1 / (1 - _local3)); _local6 = this.cachedPT1; while (_local6) { _local7 = (_local6.start + _local6.change); _local6.change = (_local6.change * _local5); _local6.start = (_local7 - _local6.change); _local6 = _local6.nextNode; }; }; }; }; } override public function set currentTime(_arg1:Number):void{ if (_cyclesComplete == 0){ } else { if (((this.yoyo) && (((_cyclesComplete % 2) == 1)))){ _arg1 = ((this.duration - _arg1) + (_cyclesComplete * (this.cachedDuration + _repeatDelay))); } else { _arg1 = (_arg1 + (_cyclesComplete * (this.duration + _repeatDelay))); }; }; setTotalTime(_arg1, false); } public function get repeatDelay():Number{ return (_repeatDelay); } public function killProperties(_arg1:Array):void{ var _local2:Object = {}; var _local3:int = _arg1.length; while (_local3--) { _local2[_arg1[_local3]] = true; }; killVars(_local2); } public function set repeatDelay(_arg1:Number):void{ _repeatDelay = _arg1; setDirtyCache(true); } public function set repeat(_arg1:int):void{ _repeat = _arg1; setDirtyCache(true); } override public function complete(_arg1:Boolean=false, _arg2:Boolean=false):void{ super.complete(_arg1, _arg2); if (((!(_arg2)) && (_dispatcher))){ if ((((this.cachedTotalTime == this.cachedTotalDuration)) && (!(this.cachedReversed)))){ _dispatcher.dispatchEvent(new TweenEvent(TweenEvent.COMPLETE)); } else { if (((this.cachedReversed) && ((this.cachedTotalTime == 0)))){ _dispatcher.dispatchEvent(new TweenEvent(TweenEvent.REVERSE_COMPLETE)); }; }; }; } override public function invalidate():void{ this.yoyo = Boolean((this.vars.yoyo == true)); _repeat = ((this.vars.repeat) || (0)); _repeatDelay = ((this.vars.repeatDelay) || (0)); _hasUpdateListener = false; if (((((!((this.vars.onCompleteListener == null))) || (!((this.vars.onUpdateListener == null))))) || (!((this.vars.onStartListener == null))))){ initDispatcher(); }; setDirtyCache(true); super.invalidate(); } public function get timeScale():Number{ return (this.cachedTimeScale); } override public function get totalDuration():Number{ if (this.cacheIsDirty){ this.cachedTotalDuration = ((_repeat)==-1) ? 999999999999 : ((this.cachedDuration * (_repeat + 1)) + (_repeatDelay * _repeat)); this.cacheIsDirty = false; }; return (this.cachedTotalDuration); } public static function set globalTimeScale(_arg1:Number):void{ if (_arg1 == 0){ _arg1 = 0.0001; }; if (TweenLite.rootTimeline == null){ TweenLite.to({}, 0, {}); }; var _local2:SimpleTimeline = TweenLite.rootTimeline; var _local3:Number = (getTimer() * 0.001); _local2.cachedStartTime = (_local3 - (((_local3 - _local2.cachedStartTime) * _local2.cachedTimeScale) / _arg1)); _local2 = TweenLite.rootFramesTimeline; _local3 = TweenLite.rootFrame; _local2.cachedStartTime = (_local3 - (((_local3 - _local2.cachedStartTime) * _local2.cachedTimeScale) / _arg1)); TweenLite.rootFramesTimeline.cachedTimeScale = (TweenLite.rootTimeline.cachedTimeScale = _arg1); } public static function fromTo(_arg1:Object, _arg2:Number, _arg3:Object, _arg4:Object):TweenMax{ _arg4.startAt = _arg3; if (_arg3.immediateRender){ _arg4.immediateRender = true; }; return (new TweenMax(_arg1, _arg2, _arg4)); } public static function allFromTo(_arg1:Array, _arg2:Number, _arg3:Object, _arg4:Object, _arg5:Number=0, _arg6:Function=null, _arg7:Array=null):Array{ _arg4.startAt = _arg3; if (_arg3.immediateRender){ _arg4.immediateRender = true; }; return (allTo(_arg1, _arg2, _arg4, _arg5, _arg6, _arg7)); } public static function pauseAll(_arg1:Boolean=true, _arg2:Boolean=true):void{ changePause(true, _arg1, _arg2); } public static function getTweensOf(_arg1:Object):Array{ var _local4:int; var _local5:uint; var _local2:Array = masterList[_arg1]; var _local3:Array = []; if (_local2){ _local4 = _local2.length; _local5 = 0; while (_local4--) { if (!_local2[_local4].gc){ var _temp1 = _local5; _local5 = (_local5 + 1); var _local6 = _temp1; _local3[_local6] = _local2[_local4]; }; }; }; return (_local3); } public static function get globalTimeScale():Number{ return (((TweenLite.rootTimeline)==null) ? 1 : TweenLite.rootTimeline.cachedTimeScale); } public static function killChildTweensOf(_arg1:DisplayObjectContainer, _arg2:Boolean=false):void{ var _local4:Object; var _local5:DisplayObjectContainer; var _local3:Array = getAllTweens(); var _local6:int = _local3.length; while (_local6--) { _local4 = _local3[_local6].target; if ((_local4 is DisplayObject)){ _local5 = _local4.parent; while (_local5) { if (_local5 == _arg1){ if (_arg2){ _local3[_local6].complete(false); } else { _local3[_local6].setEnabled(false, false); }; }; _local5 = _local5.parent; }; }; }; } public static function delayedCall(_arg1:Number, _arg2:Function, _arg3:Array=null, _arg4:Boolean=false):TweenMax{ return (new TweenMax(_arg2, 0, {delay:_arg1, onComplete:_arg2, onCompleteParams:_arg3, immediateRender:false, useFrames:_arg4, overwrite:0})); } public static function isTweening(_arg1:Object):Boolean{ var _local4:TweenLite; var _local2:Array = getTweensOf(_arg1); var _local3:int = _local2.length; while (_local3--) { _local4 = _local2[_local3]; if (((_local4.active) || ((((_local4.cachedStartTime == _local4.timeline.cachedTime)) && (_local4.timeline.active))))){ return (true); }; }; return (false); } public static function killAll(_arg1:Boolean=false, _arg2:Boolean=true, _arg3:Boolean=true):void{ var _local5:Boolean; var _local4:Array = getAllTweens(); var _local6:int = _local4.length; while (_local6--) { _local5 = (_local4[_local6].target == _local4[_local6].vars.onComplete); if ((((_local5 == _arg3)) || (!((_local5 == _arg2))))){ if (_arg1){ _local4[_local6].complete(false); } else { _local4[_local6].setEnabled(false, false); }; }; }; } private static function changePause(_arg1:Boolean, _arg2:Boolean=true, _arg3:Boolean=false):void{ var _local5:Boolean; var _local4:Array = getAllTweens(); var _local6:int = _local4.length; while (_local6--) { _local5 = (TweenLite(_local4[_local6]).target == TweenLite(_local4[_local6]).vars.onComplete); if ((((_local5 == _arg3)) || (!((_local5 == _arg2))))){ TweenCore(_local4[_local6]).paused = _arg1; }; }; } public static function from(_arg1:Object, _arg2:Number, _arg3:Object):TweenMax{ _arg3.runBackwards = true; if (!("immediateRender" in _arg3)){ _arg3.immediateRender = true; }; return (new TweenMax(_arg1, _arg2, _arg3)); } public static function allFrom(_arg1:Array, _arg2:Number, _arg3:Object, _arg4:Number=0, _arg5:Function=null, _arg6:Array=null):Array{ _arg3.runBackwards = true; if (!("immediateRender" in _arg3)){ _arg3.immediateRender = true; }; return (allTo(_arg1, _arg2, _arg3, _arg4, _arg5, _arg6)); } public static function getAllTweens():Array{ var _local4:Array; var _local5:int; var _local1:Dictionary = masterList; var _local2:uint; var _local3:Array = []; for each (_local4 in _local1) { _local5 = _local4.length; while (_local5--) { if (!TweenLite(_local4[_local5]).gc){ var _temp1 = _local2; _local2 = (_local2 + 1); var _local8 = _temp1; _local3[_local8] = _local4[_local5]; }; }; }; return (_local3); } public static function resumeAll(_arg1:Boolean=true, _arg2:Boolean=true):void{ changePause(false, _arg1, _arg2); } public static function to(_arg1:Object, _arg2:Number, _arg3:Object):TweenMax{ return (new TweenMax(_arg1, _arg2, _arg3)); } public static function allTo(_arg1:Array, _arg2:Number, _arg3:Object, _arg4:Number=0, _arg5:Function=null, _arg6:Array=null):Array{ var i:int; var varsDup:Object; var p:String; var onCompleteProxy:Function; var onCompleteParamsProxy:Array; var targets = _arg1; var duration = _arg2; var vars = _arg3; var stagger = _arg4; var onCompleteAll = _arg5; var onCompleteAllParams = _arg6; var l:uint = targets.length; var a:Array = []; var curDelay:Number = ((vars.delay) || (0)); onCompleteProxy = vars.onComplete; onCompleteParamsProxy = vars.onCompleteParams; var lastIndex:int = ((stagger)<=0) ? 0 : (l - 1); i = 0; while (i < l) { varsDup = {}; for (p in vars) { varsDup[p] = vars[p]; }; varsDup.delay = curDelay; if ((((i == lastIndex)) && (!((onCompleteAll == null))))){ varsDup.onComplete = function ():void{ if (onCompleteProxy != null){ onCompleteProxy.apply(null, onCompleteParamsProxy); }; onCompleteAll.apply(null, onCompleteAllParams); }; }; a[a.length] = new TweenMax(targets[i], duration, varsDup); curDelay = (curDelay + stagger); i = (i + 1); }; return (a); } TweenPlugin.activate([AutoAlphaPlugin, EndArrayPlugin, FramePlugin, RemoveTintPlugin, TintPlugin, VisiblePlugin, VolumePlugin, BevelFilterPlugin, BezierPlugin, BezierThroughPlugin, BlurFilterPlugin, ColorMatrixFilterPlugin, ColorTransformPlugin, DropShadowFilterPlugin, FrameLabelPlugin, GlowFilterPlugin, HexColorsPlugin, RoundPropsPlugin, ShortRotationPlugin, {}]); } }//package com.greensock
Section 31
//HitTest (com.HitTest) package com { import flash.display.*; import flash.geom.*; public class HitTest { protected static function getDrawMatrix(_arg1:DisplayObject, _arg2:Rectangle, _arg3:Number):Matrix{ var _local4:Point; var _local5:Matrix; var _local6:Matrix = _arg1.root.transform.concatenatedMatrix; _local4 = _arg1.localToGlobal(new Point()); _local5 = _arg1.transform.concatenatedMatrix; _local5.tx = (_local4.x - _arg2.x); _local5.ty = (_local4.y - _arg2.y); _local5.a = (_local5.a / _local6.a); _local5.d = (_local5.d / _local6.d); if (_arg3 != 1){ _local5.scale(_arg3, _arg3); }; return (_local5); } public static function complexHitTestObject(_arg1:DisplayObject, _arg2:DisplayObject, _arg3:Number=1):Boolean{ return (!((complexIntersectionRectangle(_arg1, _arg2, _arg3).width == 0))); } public static function complexIntersectionRectangle(_arg1:DisplayObject, _arg2:DisplayObject, _arg3:Number=1):Rectangle{ if (_arg3 <= 0){ throw (new Error("ArgumentError: Error #5001: Invalid value for accurracy", 5001)); }; if (!_arg1.hitTestObject(_arg2)){ return (new Rectangle()); }; var _local4:Rectangle = intersectionRectangle(_arg1, _arg2); if (((((_local4.width * _arg3) < 1)) || (((_local4.height * _arg3) < 1)))){ return (new Rectangle()); }; var _local5:BitmapData = new BitmapData((_local4.width * _arg3), (_local4.height * _arg3), false, 0); _local5.draw(_arg1, HitTest.getDrawMatrix(_arg1, _local4, _arg3), new ColorTransform(1, 1, 1, 1, 0xFF, -255, -255, 0xFF)); _local5.draw(_arg2, HitTest.getDrawMatrix(_arg2, _local4, _arg3), new ColorTransform(1, 1, 1, 1, 0xFF, 0xFF, 0xFF, 0xFF), BlendMode.DIFFERENCE); var _local6:Rectangle = _local5.getColorBoundsRect(4294967295, 4278255615); _local5.dispose(); if (_arg3 != 1){ _local6.x = (_local6.x / _arg3); _local6.y = (_local6.y / _arg3); _local6.width = (_local6.width / _arg3); _local6.height = (_local6.height / _arg3); }; _local6.x = (_local6.x + _local4.x); _local6.y = (_local6.y + _local4.y); return (_local6); } public static function intersectionRectangle(_arg1:DisplayObject, _arg2:DisplayObject):Rectangle{ if (((((!(_arg1.root)) || (!(_arg2.root)))) || (!(_arg1.hitTestObject(_arg2))))){ return (new Rectangle()); }; var _local3:Rectangle = _arg1.getBounds(_arg1.root); var _local4:Rectangle = _arg2.getBounds(_arg2.root); var _local5:Rectangle = new Rectangle(); _local5.x = Math.max(_local3.x, _local4.x); _local5.y = Math.max(_local3.y, _local4.y); _local5.width = Math.min(((_local3.x + _local3.width) - _local5.x), ((_local4.x + _local4.width) - _local5.x)); _local5.height = Math.min(((_local3.y + _local3.height) - _local5.y), ((_local4.y + _local4.height) - _local5.y)); return (_local5); } } }//package com
Section 32
//KeyCodes (com.KeyCodes) package com { public class KeyCodes { public static const NumpadMinus:int = 109; public static const RightBrace:int = 221; public static const Question:int = 191; public static const NumpadSlash:int = 111; public static const Equal:int = 187; public static const keyNames:Array = new Array(); public static const Left:int = 37; public static const Control:int = 17; public static const A:int = 65; public static const B:int = 66; public static const C:int = 67; public static const D:int = 68; public static const E:int = 69; public static const F:int = 70; public static const G:int = 71; public static const H:int = 72; public static const I:int = 73; public static const J:int = 74; public static const K:int = 75; public static const L:int = 76; public static const M:int = 77; public static const N:int = 78; public static const O:int = 79; public static const P:int = 80; public static const Q:int = 81; public static const S:int = 83; public static const T:int = 84; public static const U:int = 85; public static const V:int = 86; public static const W:int = 87; public static const X:int = 88; public static const R:int = 82; public static const Z:int = 90; public static const NumpadStar:int = 106; public static const Y:int = 89; public static const Numpad0:int = 96; public static const Numpad1:int = 97; public static const Numpad2:int = 98; public static const Numpad3:int = 99; public static const Numpad4:int = 100; public static const Numpad5:int = 101; public static const Numpad6:int = 102; public static const Numpad7:int = 103; public static const Numpad8:int = 104; public static const Numpad9:int = 105; public static const Shift:int = 16; public static const ScrLck:int = 145; public static const Spacebar:int = 32; public static const Tab:int = 9; public static const Backspace:int = 8; public static const SemiColon:int = 186; public static const LeftBrace:int = 219; public static const Minus:int = 189; public static const Keyb0:int = 48; public static const Keyb2:int = 50; public static const Keyb4:int = 52; public static const Keyb6:int = 54; public static const Keyb1:int = 49; public static const Keyb3:int = 51; public static const Keyb5:int = 53; public static const Keyb7:int = 55; public static const Keyb9:int = 57; public static const NumpadPlus:int = 107; public static const Esc:int = 27; public static const F1:int = 112; public static const Keyb8:int = 56; public static const F5:int = 116; public static const F7:int = 118; public static const F2:int = 113; public static const F4:int = 115; public static const F6:int = 117; public static const Enter:int = 13; public static const F8:int = 119; public static const F9:int = 120; public static const NumpadPeriod:int = 110; public static const F3:int = 114; public static const NumLck:int = 144; public static const PauseBreak:int = 19; public static const Delete:int = 46; public static const Comma:int = 188; public static const Down:int = 40; public static const End:int = 35; public static const Insert:int = 45; public static const Period:int = 190; public static const PageUp:int = 33; public static const CapsLock:int = 20; public static const F11:int = 122; public static const F12:int = 123; public static const F13:int = 124; public static const F14:int = 125; public static const F15:int = 126; public static const BackQuote:int = 192; public static const Pipe:int = 220; public static const Up:int = 38; public static const PageDown:int = 34; public static const SingleQuote:int = 222; public static const Right:int = 39; public static const Home:int = 36; keyNames[A] = "A"; keyNames[B] = "B"; keyNames[C] = "C"; keyNames[D] = "D"; keyNames[E] = "E"; keyNames[F] = "F"; keyNames[G] = "G"; keyNames[H] = "H"; keyNames[I] = "I"; keyNames[J] = "J"; keyNames[K] = "K"; keyNames[L] = "L"; keyNames[M] = "M"; keyNames[N] = "N"; keyNames[O] = "O"; keyNames[P] = "P"; keyNames[Q] = "Q"; keyNames[R] = "R"; keyNames[S] = "S"; keyNames[T] = "T"; keyNames[U] = "U"; keyNames[V] = "V"; keyNames[W] = "W"; keyNames[X] = "X"; keyNames[Y] = "Y"; keyNames[Z] = "Z"; keyNames[Keyb0] = "0"; keyNames[Keyb1] = "1"; keyNames[Keyb2] = "2"; keyNames[Keyb3] = "3"; keyNames[Keyb4] = "4"; keyNames[Keyb5] = "5"; keyNames[Keyb6] = "6"; keyNames[Keyb7] = "7"; keyNames[Keyb8] = "8"; keyNames[Keyb9] = "9"; keyNames[Numpad0] = "Numpad 0"; keyNames[Numpad1] = "Numpad 1"; keyNames[Numpad2] = "Numpad 2"; keyNames[Numpad3] = "Numpad 3"; keyNames[Numpad4] = "Numpad 4"; keyNames[Numpad5] = "Numpad 5"; keyNames[Numpad6] = "Numpad 6"; keyNames[Numpad7] = "Numpad 7"; keyNames[Numpad8] = "Numpad 8"; keyNames[Numpad9] = "Numpad 9"; keyNames[NumpadStar] = "Numpad *"; keyNames[NumpadPlus] = "Numpad +"; keyNames[NumpadMinus] = "Numpad -"; keyNames[NumpadPeriod] = "Numpad ."; keyNames[NumpadSlash] = "Numpad /"; keyNames[F1] = "F1"; keyNames[F2] = "F2"; keyNames[F3] = "F3"; keyNames[F4] = "F4"; keyNames[F5] = "F5"; keyNames[F6] = "F6"; keyNames[F7] = "F7"; keyNames[F8] = "F8"; keyNames[F9] = "F9"; keyNames[F11] = "F11"; keyNames[F12] = "F12"; keyNames[F13] = "F13"; keyNames[F14] = "F14"; keyNames[F15] = "F15"; keyNames[Backspace] = "Backspace"; keyNames[Tab] = "Tab"; keyNames[Enter] = "Enter"; keyNames[Shift] = "Shift"; keyNames[Control] = "Control"; keyNames[PauseBreak] = "Pause/Break"; keyNames[CapsLock] = "Caps Lock"; keyNames[Esc] = "Esc"; keyNames[Spacebar] = "Spacebar"; keyNames[PageUp] = "Page Up"; keyNames[PageDown] = "Page Down"; keyNames[End] = "End"; keyNames[Home] = "Home"; keyNames[Left] = "Left Arrow"; keyNames[Up] = "Up Arrow"; keyNames[Right] = "Right Arrow"; keyNames[Down] = "Down Arrow"; keyNames[Insert] = "Insert"; keyNames[Delete] = "Delete"; keyNames[NumLck] = "NumLck"; keyNames[ScrLck] = "ScrLck"; keyNames[SemiColon] = ";"; keyNames[Equal] = "="; keyNames[Comma] = ","; keyNames[Minus] = "-"; keyNames[Period] = "."; keyNames[Question] = "?"; keyNames[BackQuote] = "`"; keyNames[LeftBrace] = "["; keyNames[Pipe] = "|"; keyNames[RightBrace] = "]"; keyNames[SingleQuote] = "'"; } }//package com
Section 33
//AdLoader (CPMStar.AdLoader) package CPMStar { import flash.events.*; import flash.display.*; import flash.net.*; import flash.system.*; public class AdLoader extends Sprite { private var cpmstarLoader:Loader; private var contentspotid:String; public function AdLoader(_arg1:String){ this.contentspotid = _arg1; addEventListener(Event.ADDED, addedHandler); } private function dispatchHandler(_arg1:Event):void{ dispatchEvent(_arg1); } private function addedHandler(_arg1:Event):void{ removeEventListener(Event.ADDED, addedHandler); Security.allowDomain("server.cpmstar.com"); var _local2 = "http://server.cpmstar.com/adviewas3.swf"; var _local3:DisplayObjectContainer = parent; cpmstarLoader = new Loader(); cpmstarLoader.contentLoaderInfo.addEventListener(Event.INIT, dispatchHandler); cpmstarLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, dispatchHandler); cpmstarLoader.load(new URLRequest(((_local2 + "?contentspotid=") + contentspotid))); addChild(cpmstarLoader); } } }//package CPMStar
Section 34
//DoubleJumpIcon_18 (JBGraphics_fla.DoubleJumpIcon_18) package JBGraphics_fla { import flash.display.*; public dynamic class DoubleJumpIcon_18 extends MovieClip { public var bar:MovieClip; public function DoubleJumpIcon_18(){ addFrameScript(0, this.frame1); } function frame1(){ stop(); } } }//package JBGraphics_fla
Section 35
//Main3_48 (JBGraphics_fla.Main3_48) package JBGraphics_fla { import flash.display.*; public dynamic class Main3_48 extends MovieClip { public function Main3_48(){ addFrameScript(134, this.frame135); } function frame135(){ stop(); } } }//package JBGraphics_fla
Section 36
//Credits (Menus.Credits) package Menus { import flash.events.*; import flash.display.*; import com.greensock.*; import com.greensock.plugins.*; public class Credits extends Sprite { private var base:CreditsScrenBase; public function Credits(){ TweenPlugin.activate([TintPlugin, RemoveTintPlugin, AutoAlphaPlugin]); base = new CreditsScrenBase(); addChild(base); base.selector.alpha = 0; base.back.addEventListener(MouseEvent.ROLL_OVER, setSelectorOver, false, 0, true); base.back.addEventListener(MouseEvent.ROLL_OUT, removeSelector, false, 0, true); base.back.addEventListener(MouseEvent.CLICK, gotoMainMenu, false, 0, true); addEventListener(Event.ADDED_TO_STAGE, onAddToStage, false, 0, true); } private function onAddToStage(_arg1:Event):void{ base.logoDev.addEventListener(MouseEvent.CLICK, Main(parent).visitDeveloper, false, 0, true); base.sponsor.addEventListener(MouseEvent.CLICK, Main(parent).visitSponsor, false, 0, true); } private function setSelectorOver(_arg1:MouseEvent):void{ base.selector.x = _arg1.target.x; base.selector.y = _arg1.target.y; TweenLite.to(base.selector, 0.12, {autoAlpha:1}); TweenLite.to(_arg1.target, 0.15, {tint:0xFF}); } private function removeSelector(_arg1:MouseEvent):void{ TweenLite.to(_arg1.target, 0.8, {removeTint:true}); TweenLite.to(base.selector, 0.65, {autoAlpha:0}); } private function gotoMainMenu(_arg1:MouseEvent):void{ Main(parent).gotoNewScreen("mainMenu"); } } }//package Menus
Section 37
//GameOver (Menus.GameOver) package Menus { import flash.events.*; import flash.display.*; import mochi.as3.*; import com.greensock.*; import com.greensock.plugins.*; public class GameOver extends Sprite { private var base:GameOverBase; public function GameOver(){ TweenPlugin.activate([TintPlugin, RemoveTintPlugin, AutoAlphaPlugin]); base = new GameOverBase(); addChild(base); base.selector.alpha = 0; base.replay.addEventListener(MouseEvent.ROLL_OVER, setSelectorOver, false, 0, true); base.replay.addEventListener(MouseEvent.ROLL_OUT, removeSelector, false, 0, true); base.replay.addEventListener(MouseEvent.CLICK, gotoMainMenu, false, 0, true); base.submitScore.addEventListener(MouseEvent.ROLL_OVER, setSelectorOver, false, 0, true); base.submitScore.addEventListener(MouseEvent.ROLL_OUT, removeSelector, false, 0, true); base.submitScore.addEventListener(MouseEvent.CLICK, submitScore, false, 0, true); addEventListener(Event.ADDED_TO_STAGE, onAddToStage, false, 0, true); } private function onAddToStage(_arg1:Event):void{ base.score.text = Main(parent).lastScore.toString(); base.time.text = Main(parent).lastTimePlaying.toString(); base.multiplier.text = Main(parent).lastMultiplierLevel.toString(); base.bestScore.text = Main(parent).personalBestScore.toString(); base.sponsor.addEventListener(MouseEvent.CLICK, Main(parent).visitSponsor, false, 0, true); } private function setSelectorOver(_arg1:MouseEvent):void{ base.selector.x = _arg1.target.x; base.selector.y = _arg1.target.y; TweenLite.to(base.selector, 0.12, {autoAlpha:1}); TweenLite.to(_arg1.target, 0.15, {tint:0xFF9900}); } private function submitScore(_arg1:MouseEvent):void{ var mouseEvent = _arg1; var o:Object = {n:[4, 7, 5, 0, 2, 15, 6, 8, 0, 12, 2, 8, 9, 11, 11, 9], f:function (_arg1:Number, _arg2:String):String{ if (_arg2.length == 16){ return (_arg2); }; return (this.f((_arg1 + 1), (_arg2 + this.n[_arg1].toString(16)))); }}; var boardID:String = o.f(0, ""); MochiScores.showLeaderboard({boardID:boardID, score:Main(parent).lastScore}); } private function removeSelector(_arg1:MouseEvent):void{ TweenLite.to(_arg1.target, 0.8, {removeTint:true}); TweenLite.to(base.selector, 0.65, {autoAlpha:0}); } private function gotoMainMenu(_arg1:MouseEvent):void{ Main(parent).uploadInfo("Retried"); Main(parent).gotoNewScreen("mainMenu"); } } }//package Menus
Section 38
//Instructions (Menus.Instructions) package Menus { import flash.events.*; import flash.display.*; import com.greensock.*; import com.greensock.plugins.*; public class Instructions extends Sprite { private var base:InstructionsScreenBase; public function Instructions(){ TweenPlugin.activate([TintPlugin, RemoveTintPlugin, AutoAlphaPlugin]); base = new InstructionsScreenBase(); addChild(base); base.selector.alpha = 0; base.start.addEventListener(MouseEvent.ROLL_OVER, setSelectorOver, false, 0, true); base.start.addEventListener(MouseEvent.ROLL_OUT, removeSelector, false, 0, true); base.start.addEventListener(MouseEvent.CLICK, gotoInstructions, false, 0, true); } private function removeSelector(_arg1:MouseEvent):void{ TweenLite.to(_arg1.target, 0.8, {removeTint:true}); TweenLite.to(base.selector, 0.65, {autoAlpha:0}); } private function setSelectorOver(_arg1:MouseEvent):void{ base.selector.x = _arg1.target.x; base.selector.y = _arg1.target.y; TweenLite.to(base.selector, 0.12, {autoAlpha:1}); TweenLite.to(_arg1.target, 0.15, {tint:0xFF}); } private function gotoInstructions(_arg1:MouseEvent):void{ Main(parent).gotoNewScreen("game"); } } }//package Menus
Section 39
//MainMenu (Menus.MainMenu) package Menus { import flash.events.*; import flash.display.*; import com.greensock.*; import com.greensock.plugins.*; public class MainMenu extends Sprite { private var base:MainMenuScreen; public function MainMenu(){ TweenPlugin.activate([TintPlugin, RemoveTintPlugin, AutoAlphaPlugin]); base = new MainMenuScreen(); addChild(base); base.selector.alpha = 0; base.playButton.addEventListener(MouseEvent.ROLL_OVER, setSelectorOver, false, 0, true); base.playButton.addEventListener(MouseEvent.ROLL_OUT, removeSelector, false, 0, true); base.playButton.addEventListener(MouseEvent.CLICK, gotoInstructions, false, 0, true); base.creditsButton.addEventListener(MouseEvent.ROLL_OVER, setSelectorOver, false, 0, true); base.creditsButton.addEventListener(MouseEvent.ROLL_OUT, removeSelector, false, 0, true); base.creditsButton.addEventListener(MouseEvent.CLICK, gotoCredits, false, 0, true); addEventListener(Event.ADDED_TO_STAGE, onAddToStage, false, 0, true); } private function onAddToStage(_arg1:Event):void{ base.sponsorButton.addEventListener(MouseEvent.CLICK, Main(parent).visitSponsor, false, 0, true); base.logoDev.addEventListener(MouseEvent.CLICK, Main(parent).visitDeveloper, false, 0, true); } private function setSelectorOver(_arg1:MouseEvent):void{ base.selector.x = _arg1.target.x; base.selector.y = _arg1.target.y; TweenLite.to(base.selector, 0.12, {autoAlpha:1}); TweenLite.to(_arg1.target, 0.15, {tint:0xFF}); } private function gotoCredits(_arg1:MouseEvent):void{ Main(parent).gotoNewScreen("credits"); } private function removeSelector(_arg1:MouseEvent):void{ TweenLite.to(_arg1.target, 0.8, {removeTint:true}); TweenLite.to(base.selector, 0.65, {autoAlpha:0}); } private function gotoInstructions(_arg1:MouseEvent):void{ Main(parent).gotoNewScreen("instructions"); } } }//package Menus
Section 40
//Splash (Menus.Splash) package Menus { import flash.events.*; import flash.display.*; public class Splash extends Sprite { private var base:SponsorSplash; public function Splash(){ base = new SponsorSplash(); addChild(base); base.x = 0; base.y = 0; addEventListener(Event.ENTER_FRAME, onTick, false, 0, true); addEventListener(Event.ADDED_TO_STAGE, onAddToStage, false, 0, true); } private function onAddToStage(_arg1:Event):void{ base.addEventListener(MouseEvent.CLICK, Main(parent).visitDeveloper, false, 0, true); } private function onTick(_arg1:Event):void{ if (base.it.currentFrame == 135){ Main(parent).gotoNewScreen("mainMenu"); base.it.stop(); removeChild(base); base = null; removeEventListener(Event.ENTER_FRAME, onTick); }; } } }//package Menus
Section 41
//MochiCoins (mochi.as3.MochiCoins) package mochi.as3 { public class MochiCoins { public static const STORE_HIDE:String = "StoreHide"; public static const NO_USER:String = "NoUser"; public static const IO_ERROR:String = "IOError"; public static const ITEM_NEW:String = "ItemNew"; public static const ITEM_OWNED:String = "ItemOwned"; public static const STORE_ITEMS:String = "StoreItems"; public static const ERROR:String = "Error"; public static const STORE_SHOW:String = "StoreShow"; private static var _dispatcher:MochiEventDispatcher = new MochiEventDispatcher(); public static var _inventory:MochiInventory; public static function triggerEvent(_arg1:String, _arg2:Object):void{ _dispatcher.triggerEvent(_arg1, _arg2); } public static function removeEventListener(_arg1:String, _arg2:Function):void{ _dispatcher.removeEventListener(_arg1, _arg2); } public static function addEventListener(_arg1:String, _arg2:Function):void{ _dispatcher.addEventListener(_arg1, _arg2); } public static function getStoreItems():void{ MochiServices.send("coins_getStoreItems"); } public static function get inventory():MochiInventory{ return (_inventory); } public static function showStore(_arg1:Object=null):void{ MochiServices.setContainer(); MochiServices.bringToTop(); MochiServices.send("coins_showStore", {options:_arg1}, null, null); } public static function requestFunding(_arg1:Object=null):void{ MochiServices.setContainer(); MochiServices.bringToTop(); MochiServices.send("social_requestFunding", _arg1); } public static function showItem(_arg1:Object=null):void{ if (((!(_arg1)) || (!((typeof(_arg1.item) == "string"))))){ trace("ERROR: showItem call must pass an Object with an item key"); return; }; MochiServices.setContainer(); MochiServices.bringToTop(); MochiServices.send("coins_showItem", {options:_arg1}, null, null); } public static function getVersion():String{ return (MochiServices.getVersion()); } public static function showVideo(_arg1:Object=null):void{ if (((!(_arg1)) || (!((typeof(_arg1.item) == "string"))))){ trace("ERROR: showVideo call must pass an Object with an item key"); return; }; MochiServices.setContainer(); MochiServices.bringToTop(); MochiServices.send("coins_showVideo", {options:_arg1}, null, null); } addEventListener(MochiSocial.LOGGED_IN, function (_arg1:Object):void{ _inventory = new MochiInventory(); }); addEventListener(MochiSocial.LOGGED_OUT, function (_arg1:Object):void{ _inventory = null; }); } }//package mochi.as3
Section 42
//MochiDigits (mochi.as3.MochiDigits) package mochi.as3 { public final class MochiDigits { private var Sibling:MochiDigits; private var Fragment:Number; private var Encoder:Number; public function MochiDigits(_arg1:Number=0, _arg2:uint=0):void{ Encoder = 0; setValue(_arg1, _arg2); } public function reencode():void{ var _local1:uint = int((2147483647 * Math.random())); Fragment = (Fragment ^ (_local1 ^ Encoder)); Encoder = _local1; } public function set value(_arg1:Number):void{ setValue(_arg1); } public function toString():String{ var _local1:String = String.fromCharCode((Fragment ^ Encoder)); if (Sibling != null){ _local1 = (_local1 + Sibling.toString()); }; return (_local1); } public function setValue(_arg1:Number=0, _arg2:uint=0):void{ var _local3:String = _arg1.toString(); var _temp1 = _arg2; _arg2 = (_arg2 + 1); Fragment = (_local3.charCodeAt(_temp1) ^ Encoder); if (_arg2 < _local3.length){ Sibling = new MochiDigits(_arg1, _arg2); } else { Sibling = null; }; reencode(); } public function get value():Number{ return (Number(this.toString())); } public function addValue(_arg1:Number):void{ value = (value + _arg1); } } }//package mochi.as3
Section 43
//MochiEventDispatcher (mochi.as3.MochiEventDispatcher) package mochi.as3 { public class MochiEventDispatcher { private var eventTable:Object; public function MochiEventDispatcher():void{ eventTable = {}; } public function triggerEvent(_arg1:String, _arg2:Object):void{ var _local3:Object; if (eventTable[_arg1] == undefined){ return; }; for (_local3 in eventTable[_arg1]) { var _local6 = eventTable[_arg1]; _local6[_local3](_arg2); }; } public function removeEventListener(_arg1:String, _arg2:Function):void{ var _local3:Object; if (eventTable[_arg1] == undefined){ eventTable[_arg1] = []; return; }; for (_local3 in eventTable[_arg1]) { if (eventTable[_arg1][_local3] != _arg2){ } else { eventTable[_arg1].splice(Number(_local3), 1); }; }; } public function addEventListener(_arg1:String, _arg2:Function):void{ removeEventListener(_arg1, _arg2); eventTable[_arg1].push(_arg2); } } }//package mochi.as3
Section 44
//MochiEvents (mochi.as3.MochiEvents) package mochi.as3 { import flash.display.*; public class MochiEvents { public static const ALIGN_BOTTOM_LEFT:String = "ALIGN_BL"; public static const FORMAT_LONG:String = "LongForm"; public static const ALIGN_BOTTOM:String = "ALIGN_B"; public static const ACHIEVEMENT_RECEIVED:String = "AchievementReceived"; public static const FORMAT_SHORT:String = "ShortForm"; public static const ALIGN_TOP_RIGHT:String = "ALIGN_TR"; public static const ALIGN_BOTTOM_RIGHT:String = "ALIGN_BR"; public static const ALIGN_TOP:String = "ALIGN_T"; public static const ALIGN_LEFT:String = "ALIGN_L"; public static const ALIGN_RIGHT:String = "ALIGN_R"; public static const ALIGN_TOP_LEFT:String = "ALIGN_TL"; public static const ALIGN_CENTER:String = "ALIGN_C"; private static var _dispatcher:MochiEventDispatcher = new MochiEventDispatcher(); private static var gameStart:Number; private static var levelStart:Number; public static function endPlay():void{ MochiServices.send("events_clearRoundID", null, null, null); } public static function addEventListener(_arg1:String, _arg2:Function):void{ _dispatcher.addEventListener(_arg1, _arg2); } public static function trackEvent(_arg1:String, _arg2=null):void{ MochiServices.send("events_trackEvent", {tag:_arg1, value:_arg2}, null, null); } public static function removeEventListener(_arg1:String, _arg2:Function):void{ _dispatcher.removeEventListener(_arg1, _arg2); } public static function startSession(_arg1:String):void{ MochiServices.send("events_beginSession", {achievementID:_arg1}, null, null); } public static function triggerEvent(_arg1:String, _arg2:Object):void{ _dispatcher.triggerEvent(_arg1, _arg2); } public static function setNotifications(_arg1:MovieClip, _arg2:Object):void{ var _local4:Object; var _local3:Object = {}; for (_local4 in _arg2) { _local3[_local4] = _arg2[_local4]; }; _local3.clip = _arg1; MochiServices.send("events_setNotifications", _local3, null, null); } public static function getVersion():String{ return (MochiServices.getVersion()); } public static function startPlay(_arg1:String="gameplay"):void{ MochiServices.send("events_setRoundID", {tag:String(_arg1)}, null, null); } } }//package mochi.as3
Section 45
//MochiInventory (mochi.as3.MochiInventory) package mochi.as3 { import flash.events.*; import flash.utils.*; public dynamic class MochiInventory extends Proxy { private var _timer:Timer; private var _names:Array; private var _syncID:Number; private var _consumableProperties:Object; private var _storeSync:Object; private var _outstandingID:Number; private var _syncPending:Boolean; public static const READY:String = "InvReady"; public static const ERROR:String = "Error"; public static const IO_ERROR:String = "IoError"; private static const KEY_SALT:String = " syncMaint"; public static const WRITTEN:String = "InvWritten"; public static const NOT_READY:String = "InvNotReady"; public static const VALUE_ERROR:String = "InvValueError"; private static const CONSUMER_KEY:String = "MochiConsumables"; private static var _dispatcher:MochiEventDispatcher = new MochiEventDispatcher(); public function MochiInventory():void{ MochiCoins.addEventListener(MochiCoins.ITEM_OWNED, itemOwned); MochiCoins.addEventListener(MochiCoins.ITEM_NEW, newItems); MochiSocial.addEventListener(MochiSocial.LOGGED_IN, loggedIn); MochiSocial.addEventListener(MochiSocial.LOGGED_OUT, loggedOut); _storeSync = new Object(); _syncPending = false; _outstandingID = 0; _syncID = 0; _timer = new Timer(1000); _timer.addEventListener(TimerEvent.TIMER, sync); _timer.start(); if (MochiSocial.loggedIn){ loggedIn(); } else { loggedOut(); }; } private function newItems(_arg1:Object):void{ if (!this[(_arg1.id + KEY_SALT)]){ this[(_arg1.id + KEY_SALT)] = 0; }; if (!this[_arg1.id]){ this[_arg1.id] = 0; }; this[(_arg1.id + KEY_SALT)] = (this[(_arg1.id + KEY_SALT)] + _arg1.count); this[_arg1.id] = (this[_arg1.id] + _arg1.count); if (((_arg1.privateProperties) && (_arg1.privateProperties.consumable))){ if (!this[_arg1.privateProperties.tag]){ this[_arg1.privateProperties.tag] = 0; }; this[_arg1.privateProperties.tag] = (this[_arg1.privateProperties.tag] + (_arg1.privateProperties.inc * _arg1.count)); }; } public function release():void{ MochiCoins.removeEventListener(MochiCoins.ITEM_NEW, newItems); MochiSocial.removeEventListener(MochiSocial.LOGGED_IN, loggedIn); MochiSocial.removeEventListener(MochiSocial.LOGGED_OUT, loggedOut); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function getProperty(_arg1){ if (_consumableProperties == null){ triggerEvent(ERROR, {type:NOT_READY}); return (-1); }; if (_consumableProperties[_arg1]){ return (MochiDigits(_consumableProperties[_arg1]).value); }; return (undefined); } private function loggedIn(_arg1:Object=null):void{ MochiUserData.get(CONSUMER_KEY, getConsumableBag); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function hasProperty(_arg1):Boolean{ if (_consumableProperties == null){ triggerEvent(ERROR, {type:NOT_READY}); return (false); }; if (_consumableProperties[_arg1] == undefined){ return (false); }; return (true); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function nextNameIndex(_arg1:int):int{ return (((_arg1)>=_names.length) ? 0 : (_arg1 + 1)); } private function putConsumableBag(_arg1:MochiUserData):void{ _syncPending = false; if (_arg1.error){ triggerEvent(ERROR, {type:IO_ERROR, error:_arg1.error}); _outstandingID = -1; }; triggerEvent(WRITTEN, {}); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function setProperty(_arg1, _arg2):void{ var _local3:MochiDigits; if (_consumableProperties == null){ triggerEvent(ERROR, {type:NOT_READY}); return; }; if (!(_arg2 is Number)){ triggerEvent(ERROR, {type:VALUE_ERROR, error:"Invalid type", arg:_arg2}); return; }; if (_consumableProperties[_arg1]){ _local3 = MochiDigits(_consumableProperties[_arg1]); if (_local3.value == _arg2){ return; }; _local3.value = _arg2; } else { _names.push(_arg1); _consumableProperties[_arg1] = new MochiDigits(_arg2); }; _syncID++; } private function itemOwned(_arg1:Object):void{ _storeSync[_arg1.id] = {properties:_arg1.properties, count:_arg1.count}; } private function sync(_arg1:Event=null):void{ var _local3:String; if (((_syncPending) || ((_syncID == _outstandingID)))){ return; }; _outstandingID = _syncID; var _local2:Object = {}; for (_local3 in _consumableProperties) { _local2[_local3] = MochiDigits(_consumableProperties[_local3]).value; }; MochiUserData.put(CONSUMER_KEY, _local2, putConsumableBag); _syncPending = true; } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function nextName(_arg1:int):String{ return (_names[(_arg1 - 1)]); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function deleteProperty(_arg1):Boolean{ if (!_consumableProperties[_arg1]){ return (false); }; _names.splice(_names.indexOf(_arg1), 1); delete _consumableProperties[_arg1]; return (true); } private function getConsumableBag(_arg1:MochiUserData):void{ var _local2:String; var _local3:Number; if (_arg1.error){ triggerEvent(ERROR, {type:IO_ERROR, error:_arg1.error}); return; }; _consumableProperties = {}; _names = new Array(); if (_arg1.data){ for (_local2 in _arg1.data) { _names.push(_local2); _consumableProperties[_local2] = new MochiDigits(_arg1.data[_local2]); }; }; for (_local2 in _storeSync) { _local3 = _storeSync[_local2].count; if (_consumableProperties[(_local2 + KEY_SALT)]){ _local3 = (_local3 - _consumableProperties[(_local2 + KEY_SALT)].value); }; if (_local3 == 0){ } else { newItems({id:_local2, count:_local3, properties:_storeSync[_local2].properties}); }; }; triggerEvent(READY, {}); } private function loggedOut(_arg1:Object=null):void{ _consumableProperties = null; } public static function triggerEvent(_arg1:String, _arg2:Object):void{ _dispatcher.triggerEvent(_arg1, _arg2); } public static function removeEventListener(_arg1:String, _arg2:Function):void{ _dispatcher.removeEventListener(_arg1, _arg2); } public static function addEventListener(_arg1:String, _arg2:Function):void{ _dispatcher.addEventListener(_arg1, _arg2); } } }//package mochi.as3
Section 46
//MochiScores (mochi.as3.MochiScores) package mochi.as3 { import flash.display.*; import flash.text.*; public class MochiScores { private static var boardID:String; public static var onErrorHandler:Object; public static var onCloseHandler:Object; public static function showLeaderboard(_arg1:Object=null):void{ var n:Number; var options = _arg1; if (options != null){ delete options.clip; MochiServices.setContainer(); MochiServices.bringToTop(); if (options.name != null){ if ((options.name is TextField)){ if (options.name.text.length > 0){ options.name = options.name.text; }; }; }; if (options.score != null){ if ((options.score is TextField)){ if (options.score.text.length > 0){ options.score = options.score.text; }; } else { if ((options.score is MochiDigits)){ options.score = options.score.value; }; }; n = Number(options.score); if (isNaN(n)){ trace((("ERROR: Submitted score '" + options.score) + "' will be rejected, score is 'Not a Number'")); } else { if ((((n == Number.NEGATIVE_INFINITY)) || ((n == Number.POSITIVE_INFINITY)))){ trace((("ERROR: Submitted score '" + options.score) + "' will be rejected, score is an infinite")); } else { if (Math.floor(n) != n){ trace((("WARNING: Submitted score '" + options.score) + "' will be truncated")); }; options.score = n; }; }; }; if (options.onDisplay != null){ options.onDisplay(); } else { if (MochiServices.clip != null){ if ((MochiServices.clip is MovieClip)){ MochiServices.clip.stop(); } else { trace("Warning: Container is not a MovieClip, cannot call default onDisplay."); }; }; }; } else { options = {}; if ((MochiServices.clip is MovieClip)){ MochiServices.clip.stop(); } else { trace("Warning: Container is not a MovieClip, cannot call default onDisplay."); }; }; if (options.onClose != null){ onCloseHandler = options.onClose; } else { onCloseHandler = function ():void{ if ((MochiServices.clip is MovieClip)){ MochiServices.clip.play(); } else { trace("Warning: Container is not a MovieClip, cannot call default onClose."); }; }; }; if (options.onError != null){ onErrorHandler = options.onError; } else { onErrorHandler = null; }; if (options.boardID == null){ if (MochiScores.boardID != null){ options.boardID = MochiScores.boardID; }; }; MochiServices.warnID(options.boardID, true); trace("[MochiScores] NOTE: Security Sandbox Violation errors below are normal"); MochiServices.send("scores_showLeaderboard", {options:options}, null, onClose); } public static function closeLeaderboard():void{ MochiServices.send("scores_closeLeaderboard"); } public static function getPlayerInfo(_arg1:Object, _arg2:Object=null):void{ MochiServices.send("scores_getPlayerInfo", null, _arg1, _arg2); } public static function requestList(_arg1:Object, _arg2:Object=null):void{ MochiServices.send("scores_requestList", null, _arg1, _arg2); } public static function scoresArrayToObjects(_arg1:Object):Object{ var _local3:Number; var _local4:Number; var _local5:Object; var _local6:Object; var _local7:String; var _local8:String; var _local2:Object = {}; for (_local7 in _arg1) { if (typeof(_arg1[_local7]) == "object"){ if (((!((_arg1[_local7].cols == null))) && (!((_arg1[_local7].rows == null))))){ _local2[_local7] = []; _local5 = _arg1[_local7]; _local4 = 0; while (_local4 < _local5.rows.length) { _local6 = {}; _local3 = 0; while (_local3 < _local5.cols.length) { _local6[_local5.cols[_local3]] = _local5.rows[_local4][_local3]; _local3++; }; _local2[_local7].push(_local6); _local4++; }; } else { _local2[_local7] = {}; for (_local8 in _arg1[_local7]) { _local2[_local7][_local8] = _arg1[_local7][_local8]; }; }; } else { _local2[_local7] = _arg1[_local7]; }; }; return (_local2); } public static function submit(_arg1:Number, _arg2:String, _arg3:Object=null, _arg4:Object=null):void{ _arg1 = Number(_arg1); if (isNaN(_arg1)){ trace((("ERROR: Submitted score '" + String(_arg1)) + "' will be rejected, score is 'Not a Number'")); } else { if ((((_arg1 == Number.NEGATIVE_INFINITY)) || ((_arg1 == Number.POSITIVE_INFINITY)))){ trace((("ERROR: Submitted score '" + String(_arg1)) + "' will be rejected, score is an infinite")); } else { if (Math.floor(_arg1) != _arg1){ trace((("WARNING: Submitted score '" + String(_arg1)) + "' will be truncated")); }; _arg1 = Number(_arg1); }; }; MochiServices.send("scores_submit", {score:_arg1, name:_arg2}, _arg3, _arg4); } public static function onClose(_arg1:Object=null):void{ if (((((_arg1) && ((_arg1.error == true)))) && (onErrorHandler))){ if (_arg1.errorCode == null){ _arg1.errorCode = "IOError"; }; onErrorHandler(_arg1.errorCode); MochiServices.doClose(); return; }; onCloseHandler(); MochiServices.doClose(); } public static function setBoardID(_arg1:String):void{ MochiServices.warnID(_arg1, true); MochiScores.boardID = _arg1; MochiServices.send("scores_setBoardID", {boardID:_arg1}); } } }//package mochi.as3
Section 47
//MochiServices (mochi.as3.MochiServices) package mochi.as3 { import flash.events.*; import flash.display.*; import flash.geom.*; import flash.utils.*; import flash.net.*; import flash.system.*; public class MochiServices { public static const CONNECTED:String = "onConnected"; private static var _container:Object; private static var _connected:Boolean = false; private static var _queue:Array; private static var _swfVersion:String; private static var _preserved:Object; public static var netupAttempted:Boolean = false; private static var _sendChannel:LocalConnection; private static var _nextCallbackID:Number; private static var _clip:MovieClip; private static var _loader:Loader; private static var _id:String; private static var _services:String = "services.swf"; private static var _servURL:String = "http://www.mochiads.com/static/lib/services/"; public static var widget:Boolean = false; private static var _timer:Timer; private static var _sendChannelName:String; private static var _dispatcher:MochiEventDispatcher = new MochiEventDispatcher(); private static var _callbacks:Object; private static var _connecting:Boolean = false; private static var _mochiLocalConnection:MovieClip; private static var _listenChannelName:String = "__ms_"; public static var onError:Object; public static var netup:Boolean = true; private static var _mochiLC:String = "MochiLC.swf"; public static function isNetworkAvailable():Boolean{ return (!((Security.sandboxType == "localWithFile"))); } public static function get connected():Boolean{ return (_connected); } private static function onReceive(_arg1:Object):void{ var methodName:String; var pkg = _arg1; var cb:String = pkg.callbackID; var cblst:Object = _callbacks[cb]; if (!cblst){ return; }; var method:* = cblst.callbackMethod; methodName = ""; var obj:Object = cblst.callbackObject; if (((obj) && ((typeof(method) == "string")))){ methodName = method; if (obj[method] != null){ method = obj[method]; } else { trace((("Error: Method " + method) + " does not exist.")); }; }; if (method != undefined){ try { method.apply(obj, pkg.args); } catch(error:Error) { trace(((("Error invoking callback method '" + methodName) + "': ") + error.toString())); }; } else { if (obj != null){ try { obj(pkg.args); } catch(error:Error) { trace(("Error invoking method on object: " + error.toString())); }; }; }; delete _callbacks[cb]; } public static function send(_arg1:String, _arg2:Object=null, _arg3:Object=null, _arg4:Object=null):void{ if (_connected){ _mochiLocalConnection.send(_sendChannelName, "onReceive", {methodName:_arg1, args:_arg2, callbackID:_nextCallbackID}); } else { if ((((_clip == null)) || (!(_connecting)))){ trace(("Error: MochiServices not connected. Please call MochiServices.connect(). Function: " + _arg1)); handleError(_arg2, _arg3, _arg4); flush(true); return; }; _queue.push({methodName:_arg1, args:_arg2, callbackID:_nextCallbackID}); }; if (_clip != null){ if (_callbacks != null){ _callbacks[_nextCallbackID] = {callbackObject:_arg3, callbackMethod:_arg4}; _nextCallbackID++; }; }; } private static function init(_arg1:String, _arg2:Object):void{ _id = _arg1; if (_arg2 != null){ _container = _arg2; loadCommunicator(_arg1, _container); }; } private static function clickMovie(_arg1:String, _arg2:Function):MovieClip{ var _local4:int; var _local14:Loader; var _local3:Array = [150, 21, 0, 7, 1, 0, 0, 0, 0, 98, 116, 110, 0, 7, 2, 0, 0, 0, 0, 116, 104, 105, 115, 0, 28, 150, 22, 0, 0, 99, 114, 101, 97, 116, 101, 69, 109, 112, 116, 121, 77, 111, 118, 105, 101, 67, 108, 105, 112, 0, 82, 135, 1, 0, 0, 23, 150, 13, 0, 4, 0, 0, 111, 110, 82, 101, 108, 101, 97, 115, 101, 0, 142, 8, 0, 0, 0, 0, 2, 42, 0, 114, 0, 150, 17, 0, 0, 32, 0, 7, 1, 0, 0, 0, 8, 0, 0, 115, 112, 108, 105, 116, 0, 82, 135, 1, 0, 1, 23, 150, 7, 0, 4, 1, 7, 0, 0, 0, 0, 78, 150, 8, 0, 0, 95, 98, 108, 97, 110, 107, 0, 154, 1, 0, 0, 150, 7, 0, 0, 99, 108, 105, 99, 107, 0, 150, 7, 0, 4, 1, 7, 1, 0, 0, 0, 78, 150, 27, 0, 7, 2, 0, 0, 0, 7, 0, 0, 0, 0, 0, 76, 111, 99, 97, 108, 67, 111, 110, 110, 101, 99, 116, 105, 111, 110, 0, 64, 150, 6, 0, 0, 115, 101, 110, 100, 0, 82, 79, 150, 15, 0, 4, 0, 0, 95, 97, 108, 112, 104, 97, 0, 7, 0, 0, 0, 0, 79, 150, 23, 0, 7, 0xFF, 0, 0xFF, 0, 7, 1, 0, 0, 0, 4, 0, 0, 98, 101, 103, 105, 110, 70, 105, 108, 108, 0, 82, 23, 150, 25, 0, 7, 0, 0, 0, 0, 7, 0, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 109, 111, 118, 101, 84, 111, 0, 82, 23, 150, 25, 0, 7, 100, 0, 0, 0, 7, 0, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 108, 105, 110, 101, 84, 111, 0, 82, 23, 150, 25, 0, 7, 100, 0, 0, 0, 7, 100, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 108, 105, 110, 101, 84, 111, 0, 82, 23, 150, 25, 0, 7, 0, 0, 0, 0, 7, 100, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 108, 105, 110, 101, 84, 111, 0, 82, 23, 150, 25, 0, 7, 0, 0, 0, 0, 7, 0, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 108, 105, 110, 101, 84, 111, 0, 82, 23, 150, 16, 0, 7, 0, 0, 0, 0, 4, 0, 0, 101, 110, 100, 70, 105, 108, 108, 0, 82, 23]; var _local5:Array = [104, 0, 31, 64, 0, 7, 208, 0, 0, 12, 1, 0, 67, 2, 0xFF, 0xFF, 0xFF, 63, 3]; var _local6:Array = [0, 64, 0, 0, 0]; var _local7:MovieClip = new MovieClip(); var _local8:LocalConnection = new LocalConnection(); var _local9:String = ((("_click_" + Math.floor((Math.random() * 999999))) + "_") + Math.floor(new Date().time)); _local8 = new LocalConnection(); _local7.lc = _local8; _local7.click = _arg2; _local8.client = _local7; _local8.connect(_local9); var _local10:ByteArray = new ByteArray(); var _local11:ByteArray = new ByteArray(); _local11.endian = Endian.LITTLE_ENDIAN; _local11.writeShort(1); _local11.writeUTFBytes(((_arg1 + " ") + _local9)); _local11.writeByte(0); var _local12:uint = ((_local3.length + _local11.length) + 4); var _local13:uint = (_local12 + 35); _local10.endian = Endian.LITTLE_ENDIAN; _local10.writeUTFBytes("FWS"); _local10.writeByte(8); _local10.writeUnsignedInt(_local13); for each (_local4 in _local5) { _local10.writeByte(_local4); }; _local10.writeUnsignedInt(_local12); _local10.writeByte(136); _local10.writeShort(_local11.length); _local10.writeBytes(_local11); for each (_local4 in _local3) { _local10.writeByte(_local4); }; for each (_local4 in _local6) { _local10.writeByte(_local4); }; _local14 = new Loader(); _local14.loadBytes(_local10); _local7.addChild(_local14); return (_local7); } private static function detach(_arg1:Event):void{ var _local2:LoaderInfo = LoaderInfo(_arg1.target); _local2.removeEventListener(Event.COMPLETE, detach); _local2.removeEventListener(IOErrorEvent.IO_ERROR, detach); _local2.removeEventListener(Event.COMPLETE, loadLCBridgeComplete); _local2.removeEventListener(IOErrorEvent.IO_ERROR, loadError); } public static function stayOnTop():void{ _container.addEventListener(Event.ENTER_FRAME, MochiServices.bringToTop, false, 0, true); if (_clip != null){ _clip.visible = true; }; } private static function loadLCBridgeComplete(_arg1:Event):void{ var _local2:Loader = LoaderInfo(_arg1.target).loader; _mochiLocalConnection = MovieClip(_local2.content); listen(); } public static function disconnect():void{ if (((_connected) || (_connecting))){ if (_clip != null){ if (_clip.parent != null){ if ((_clip.parent is Sprite)){ Sprite(_clip.parent).removeChild(_clip); _clip = null; }; }; }; _connecting = (_connected = false); flush(true); try { _mochiLocalConnection.close(); } catch(error:Error) { }; }; if (_timer != null){ try { _timer.stop(); _timer.removeEventListener(TimerEvent.TIMER, connectWait); _timer = null; } catch(error:Error) { }; }; } public static function allowDomains(_arg1:String):String{ var _local2:String; if (Security.sandboxType != "application"){ Security.allowDomain("*"); Security.allowInsecureDomain("*"); }; if (_arg1.indexOf("http://") != -1){ _local2 = _arg1.split("/")[2].split(":")[0]; if (Security.sandboxType != "application"){ Security.allowDomain(_local2); Security.allowInsecureDomain(_local2); }; }; return (_local2); } public static function getVersion():String{ return ("3.9.1 as3"); } public static function doClose():void{ _container.removeEventListener(Event.ENTER_FRAME, MochiServices.bringToTop); } public static function warnID(_arg1:String, _arg2:Boolean):void{ _arg1 = _arg1.toLowerCase(); if (_arg1.length != 16){ trace((("WARNING: " + (_arg2) ? "board" : "game") + " ID is not the appropriate length")); return; } else { if (_arg1 == "1e113c7239048b3f"){ if (_arg2){ trace("WARNING: Using testing board ID"); } else { trace("WARNING: Using testing board ID as game ID"); }; return; } else { if (_arg1 == "84993a1de4031cd8"){ if (_arg2){ trace("WARNING: Using testing game ID as board ID"); } else { trace("WARNING: Using testing game ID"); }; return; }; }; }; var _local3:Number = 0; while (_local3 < _arg1.length) { switch (_arg1.charAt(_local3)){ case "0": case "1": case "2": case "3": case "4": case "5": case "6": case "7": case "8": case "9": case "a": case "b": case "c": case "d": case "e": case "f": break; default: trace(("WARNING: Board ID contains illegal characters: " + _arg1)); return; }; _local3++; }; } private static function flush(_arg1:Boolean):void{ var _local2:Object; var _local3:Object; if (((_clip) && (_queue))){ while (_queue.length > 0) { _local2 = _queue.shift(); _local3 = null; if (_local2 != null){ if (_local2.callbackID != null){ _local3 = _callbacks[_local2.callbackID]; }; delete _callbacks[_local2.callbackID]; if (((_arg1) && (!((_local3 == null))))){ handleError(_local2.args, _local3.callbackObject, _local3.callbackMethod); }; }; }; }; } public static function get id():String{ return (_id); } private static function onEvent(_arg1:Object):void{ var _local2:String = _arg1.target; var _local3:String = _arg1.event; switch (_local2){ case "services": MochiServices.triggerEvent(_arg1.event, _arg1.args); break; case "events": MochiEvents.triggerEvent(_arg1.event, _arg1.args); break; case "coins": MochiCoins.triggerEvent(_arg1.event, _arg1.args); break; case "social": MochiSocial.triggerEvent(_arg1.event, _arg1.args); break; }; } private static function urlOptions(_arg1:Object):Object{ var _local3:String; var _local4:Array; var _local5:Number; var _local6:Array; var _local2:Object = {}; if (_arg1.stage){ _local3 = _arg1.stage.loaderInfo.parameters.mochiad_options; } else { _local3 = _arg1.loaderInfo.parameters.mochiad_options; }; if (_local3){ _local4 = _local3.split("&"); _local5 = 0; while (_local5 < _local4.length) { _local6 = _local4[_local5].split("="); _local2[unescape(_local6[0])] = unescape(_local6[1]); _local5++; }; }; return (_local2); } public static function addLinkEvent(_arg1:String, _arg2:String, _arg3:DisplayObjectContainer, _arg4:Function=null):void{ var avm1Click:DisplayObject; var x:String; var req:URLRequest; var loader:Loader; var setURL:Function; var err:Function; var complete:Function; var url = _arg1; var burl = _arg2; var btn = _arg3; var onClick = _arg4; var vars:Object = new Object(); vars["mav"] = getVersion(); vars["swfv"] = "9"; vars["swfurl"] = btn.loaderInfo.loaderURL; vars["fv"] = Capabilities.version; vars["os"] = Capabilities.os; vars["lang"] = Capabilities.language; vars["scres"] = ((Capabilities.screenResolutionX + "x") + Capabilities.screenResolutionY); var s = "?"; var i:Number = 0; for (x in vars) { if (i != 0){ s = (s + "&"); }; i = (i + 1); s = (((s + x) + "=") + escape(vars[x])); }; req = new URLRequest("http://link.mochiads.com/linkping.swf"); loader = new Loader(); setURL = function (_arg1:String):void{ if (avm1Click){ btn.removeChild(avm1Click); }; avm1Click = clickMovie(_arg1, onClick); var _local2:Rectangle = btn.getBounds(btn); btn.addChild(avm1Click); avm1Click.x = _local2.x; avm1Click.y = _local2.y; avm1Click.scaleX = (0.01 * _local2.width); avm1Click.scaleY = (0.01 * _local2.height); }; err = function (_arg1:Object):void{ netup = false; _arg1.target.removeEventListener(_arg1.type, arguments.callee); setURL(burl); }; complete = function (_arg1:Object):void{ _arg1.target.removeEventListener(_arg1.type, arguments.callee); }; if (netup){ setURL((url + s)); } else { setURL(burl); }; if (!((netupAttempted) || (_connected))){ netupAttempted = true; loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, err); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, complete); loader.load(req); }; } public static function setContainer(_arg1:Object=null, _arg2:Boolean=true):void{ if (_clip.parent){ _clip.parent.removeChild(_clip); }; if (_arg1 != null){ if ((_arg1 is DisplayObjectContainer)){ _container = _arg1; }; }; if (_arg2){ if ((_container is DisplayObjectContainer)){ DisplayObjectContainer(_container).addChild(_clip); }; }; } private static function handleError(_arg1:Object, _arg2:Object, _arg3:Object):void{ var args = _arg1; var callbackObject = _arg2; var callbackMethod = _arg3; if (args != null){ if (args.onError != null){ args.onError.apply(null, ["NotConnected"]); }; if (((!((args.options == null))) && (!((args.options.onError == null))))){ args.options.onError.apply(null, ["NotConnected"]); }; }; if (callbackMethod != null){ args = {}; args.error = true; args.errorCode = "NotConnected"; if (((!((callbackObject == null))) && ((callbackMethod is String)))){ try { var _local5 = callbackObject; _local5[callbackMethod](args); } catch(error:Error) { }; } else { if (callbackMethod != null){ try { callbackMethod.apply(args); } catch(error:Error) { }; }; }; }; } private static function loadError(_arg1:Object):void{ _clip._mochiad_ctr_failed = true; trace("MochiServices could not load."); MochiServices.disconnect(); MochiServices.onError("IOError"); } public static function get childClip():Object{ return (_clip); } private static function initComChannels():void{ if (!_connected){ trace("[SERVICES_API] connected!"); _connecting = false; _connected = true; _mochiLocalConnection.send(_sendChannelName, "onReceive", {methodName:"handshakeDone"}); _mochiLocalConnection.send(_sendChannelName, "onReceive", {methodName:"registerGame", preserved:_preserved, id:_id, version:getVersion(), parentURL:_container.loaderInfo.loaderURL}); _clip.onReceive = onReceive; _clip.onEvent = onEvent; _clip.onError = function ():void{ MochiServices.onError("IOError"); }; while (_queue.length > 0) { _mochiLocalConnection.send(_sendChannelName, "onReceive", _queue.shift()); }; }; } public static function triggerEvent(_arg1:String, _arg2:Object):void{ _dispatcher.triggerEvent(_arg1, _arg2); } public static function removeEventListener(_arg1:String, _arg2:Function):void{ _dispatcher.removeEventListener(_arg1, _arg2); } private static function listen():void{ _mochiLocalConnection.connect(_listenChannelName); _clip.handshake = function (_arg1:Object):void{ MochiServices.comChannelName = _arg1.newChannel; }; trace("Waiting for MochiAds services to connect..."); } public static function addEventListener(_arg1:String, _arg2:Function):void{ _dispatcher.addEventListener(_arg1, _arg2); } private static function loadLCBridge(_arg1:Object):void{ var _local2:Loader = new Loader(); var _local3:String = (_servURL + _mochiLC); var _local4:URLRequest = new URLRequest(_local3); _local2.contentLoaderInfo.addEventListener(Event.COMPLETE, detach); _local2.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, detach); _local2.contentLoaderInfo.addEventListener(Event.COMPLETE, loadLCBridgeComplete); _local2.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, loadError); _local2.load(_local4); _arg1.addChild(_local2); } public static function set comChannelName(_arg1:String):void{ if (_arg1 != null){ if (_arg1.length > 3){ _sendChannelName = (_arg1 + "_fromgame"); initComChannels(); }; }; } private static function loadCommunicator(_arg1:String, _arg2:Object):MovieClip{ if (_clip != null){ return (_clip); }; if (!MochiServices.isNetworkAvailable()){ return (null); }; if (urlOptions(_arg2).servURL){ _servURL = urlOptions(_arg2).servURL; }; var _local3:String = (_servURL + _services); if (urlOptions(_arg2).servicesURL){ _local3 = urlOptions(_arg2).servicesURL; }; _listenChannelName = (_listenChannelName + ((Math.floor(new Date().time) + "_") + Math.floor((Math.random() * 99999)))); MochiServices.allowDomains(_local3); _clip = new MovieClip(); loadLCBridge(_clip); _loader = new Loader(); _loader.contentLoaderInfo.addEventListener(Event.COMPLETE, detach); _loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, detach); _loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, loadError); var _local4:URLRequest = new URLRequest(_local3); var _local5:URLVariables = new URLVariables(); _local5.listenLC = _listenChannelName; _local5.mochiad_options = _arg2.loaderInfo.parameters.mochiad_options; _local5.api_version = getVersion(); if (widget){ _local5.widget = true; }; _local4.data = _local5; _loader.load(_local4); _clip.addChild(_loader); _sendChannel = new LocalConnection(); _queue = []; _nextCallbackID = 0; _callbacks = {}; _timer = new Timer(10000, 1); _timer.addEventListener(TimerEvent.TIMER, connectWait); _timer.start(); return (_clip); } public static function get clip():Object{ return (_container); } public static function connect(_arg1:String, _arg2:Object, _arg3:Object=null):void{ var id = _arg1; var clip = _arg2; var onError = _arg3; warnID(id, false); if ((clip is DisplayObject)){ if (clip.stage == null){ trace("MochiServices connect requires the containing clip be attached to the stage"); }; if (((!(_connected)) && ((_clip == null)))){ trace("MochiServices Connecting..."); _connecting = true; init(id, clip); }; } else { trace("Error, MochiServices requires a Sprite, Movieclip or instance of the stage."); }; if (onError != null){ MochiServices.onError = onError; } else { if (MochiServices.onError == null){ MochiServices.onError = function (_arg1:String):void{ trace(_arg1); }; }; }; } public static function bringToTop(_arg1:Event=null):void{ var e = _arg1; if (((!((MochiServices.clip == null))) && (!((MochiServices.childClip == null))))){ try { if (MochiServices.clip.numChildren > 1){ MochiServices.clip.setChildIndex(MochiServices.childClip, (MochiServices.clip.numChildren - 1)); }; } catch(errorObject:Error) { trace("Warning: Depth sort error."); _container.removeEventListener(Event.ENTER_FRAME, MochiServices.bringToTop); }; }; } public static function connectWait(_arg1:TimerEvent):void{ if (!_connected){ _clip._mochiad_ctr_failed = true; trace("MochiServices could not load. (timeout)"); MochiServices.disconnect(); MochiServices.onError("IOError"); } else { _timer.stop(); _timer.removeEventListener(TimerEvent.TIMER, connectWait); _timer = null; }; } } }//package mochi.as3
Section 48
//MochiSocial (mochi.as3.MochiSocial) package mochi.as3 { public class MochiSocial { public static const LOGGED_IN:String = "LoggedIn"; public static const ACTION_CANCELED:String = "onCancel"; public static const PROPERTIES_SIZE:String = "PropertiesSize"; public static const IO_ERROR:String = "IOError"; public static const NO_USER:String = "NoUser"; public static const FRIEND_LIST:String = "FriendsList"; public static const PROFILE_DATA:String = "ProfileData"; public static const GAMEPLAY_DATA:String = "GameplayData"; public static const ACTION_COMPLETE:String = "onComplete"; public static const LOGIN_SHOW:String = "LoginShow"; public static const PROFILE_HIDE:String = "ProfileHide"; public static const USER_INFO:String = "UserInfo"; public static const PROPERTIES_SAVED:String = "PropertySaved"; public static const WIDGET_LOADED:String = "WidgetLoaded"; public static const ERROR:String = "Error"; public static const LOGGED_OUT:String = "LoggedOut"; public static const PROFILE_SHOW:String = "ProfileShow"; public static const LOGIN_HIDE:String = "LoginHide"; public static const LOGIN_SHOWN:String = "LoginShown"; public static var _user_info:Object = null; private static var _dispatcher:MochiEventDispatcher = new MochiEventDispatcher(); public static function requestFan(_arg1:Object=null):void{ MochiServices.setContainer(); MochiServices.bringToTop(); MochiServices.send("social_requestFan", _arg1); } public static function postToStream(_arg1:Object=null):void{ MochiServices.setContainer(); MochiServices.bringToTop(); MochiServices.send("social_postToStream", _arg1); } public static function getFriendsList(_arg1:Object=null):void{ MochiServices.send("social_getFriendsList", _arg1); } public static function requestLogin(_arg1:Object=null):void{ MochiServices.setContainer(); MochiServices.bringToTop(); MochiServices.send("social_requestLogin", _arg1); } public static function getVersion():String{ return (MochiServices.getVersion()); } public static function saveUserProperties(_arg1:Object):void{ MochiServices.send("social_saveUserProperties", _arg1); } public static function triggerEvent(_arg1:String, _arg2:Object):void{ _dispatcher.triggerEvent(_arg1, _arg2); } public static function removeEventListener(_arg1:String, _arg2:Function):void{ _dispatcher.removeEventListener(_arg1, _arg2); } public static function inviteFriends(_arg1:Object=null):void{ MochiServices.setContainer(); MochiServices.bringToTop(); MochiServices.send("social_inviteFriends", _arg1); } public static function get loggedIn():Boolean{ return (!((_user_info == null))); } public static function addEventListener(_arg1:String, _arg2:Function):void{ _dispatcher.addEventListener(_arg1, _arg2); } public static function showLoginWidget(_arg1:Object=null):void{ MochiServices.setContainer(); MochiServices.bringToTop(); MochiServices.send("social_showLoginWidget", {options:_arg1}); } public static function getAPIURL():String{ if (!_user_info){ return (null); }; return (_user_info.api_url); } public static function hideLoginWidget():void{ MochiServices.send("social_hideLoginWidget"); } public static function getAPIToken():String{ if (!_user_info){ return (null); }; return (_user_info.api_token); } MochiSocial.addEventListener(MochiSocial.LOGGED_IN, function (_arg1:Object):void{ _user_info = _arg1; }); MochiSocial.addEventListener(MochiSocial.LOGGED_OUT, function (_arg1:Object):void{ _user_info = null; }); } }//package mochi.as3
Section 49
//MochiUserData (mochi.as3.MochiUserData) package mochi.as3 { import flash.events.*; import flash.utils.*; import flash.net.*; public class MochiUserData extends EventDispatcher { public var callback:Function;// = null public var operation:String;// = null public var error:Event;// = null public var data;// = null public var _loader:URLLoader; public var key:String;// = null public function MochiUserData(_arg1:String="", _arg2:Function=null){ this.key = _arg1; this.callback = _arg2; } public function serialize(_arg1):ByteArray{ var _local2:ByteArray = new ByteArray(); _local2.objectEncoding = ObjectEncoding.AMF3; _local2.writeObject(_arg1); _local2.compress(); return (_local2); } public function errorHandler(_arg1:IOErrorEvent):void{ data = null; error = _arg1; if (callback != null){ performCallback(); } else { dispatchEvent(_arg1); }; close(); } public function putEvent(_arg1):void{ request("put", serialize(_arg1)); } public function deserialize(_arg1:ByteArray){ _arg1.objectEncoding = ObjectEncoding.AMF3; _arg1.uncompress(); return (_arg1.readObject()); } public function securityErrorHandler(_arg1:SecurityErrorEvent):void{ errorHandler(new IOErrorEvent(IOErrorEvent.IO_ERROR, false, false, ("security error: " + _arg1.toString()))); } public function getEvent():void{ request("get", serialize(null)); } override public function toString():String{ return ((((((((("[MochiUserData operation=" + operation) + " key=\"") + key) + "\" data=") + data) + " error=\"") + error) + "\"]")); } public function performCallback():void{ try { callback(this); } catch(e:Error) { trace(("[MochiUserData] exception during callback: " + e)); }; } public function request(_arg1:String, _arg2:ByteArray):void{ var _operation = _arg1; var _data = _arg2; operation = _operation; var api_url:String = MochiSocial.getAPIURL(); var api_token:String = MochiSocial.getAPIToken(); if ((((api_url == null)) || ((api_token == null)))){ errorHandler(new IOErrorEvent(IOErrorEvent.IO_ERROR, false, false, "not logged in")); return; }; _loader = new URLLoader(); var args:URLVariables = new URLVariables(); args.op = _operation; args.key = key; var req:URLRequest = new URLRequest((((MochiSocial.getAPIURL() + "/") + "MochiUserData?") + args.toString())); req.method = URLRequestMethod.POST; req.contentType = "application/x-mochi-userdata"; req.requestHeaders = [new URLRequestHeader("x-mochi-services-version", MochiServices.getVersion()), new URLRequestHeader("x-mochi-api-token", api_token)]; req.data = _data; _loader.dataFormat = URLLoaderDataFormat.BINARY; _loader.addEventListener(Event.COMPLETE, completeHandler); _loader.addEventListener(IOErrorEvent.IO_ERROR, errorHandler); _loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler); try { _loader.load(req); } catch(e:SecurityError) { errorHandler(new IOErrorEvent(IOErrorEvent.IO_ERROR, false, false, ("security error: " + e.toString()))); }; } public function completeHandler(_arg1:Event):void{ var event = _arg1; try { if (_loader.data.length){ data = deserialize(_loader.data); } else { data = null; }; } catch(e:Error) { errorHandler(new IOErrorEvent(IOErrorEvent.IO_ERROR, false, false, ("deserialize error: " + e.toString()))); return; }; if (callback != null){ performCallback(); } else { dispatchEvent(event); }; close(); } public function close():void{ if (_loader){ _loader.removeEventListener(Event.COMPLETE, completeHandler); _loader.removeEventListener(IOErrorEvent.IO_ERROR, errorHandler); _loader.removeEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler); _loader.close(); _loader = null; }; error = null; callback = null; } public static function get(_arg1:String, _arg2:Function):void{ var _local3:MochiUserData = new MochiUserData(_arg1, _arg2); _local3.getEvent(); } public static function put(_arg1:String, _arg2, _arg3:Function):void{ var _local4:MochiUserData = new MochiUserData(_arg1, _arg3); _local4.putEvent(_arg2); } } }//package mochi.as3
Section 50
//Log (SWFStats.Log) package SWFStats { import flash.events.*; import flash.utils.*; import flash.net.*; import flash.system.*; import flash.external.*; public final class Log { private static const PingR:Timer = new Timer(30000); private static const PingF:Timer = new Timer(60000); public static var GUID:String = ""; private static var Plays:int = 0; public static var Enabled:Boolean = false; private static var Request:LogRequest = new LogRequest(); private static var Pings:int = 0; public static var Queue:Boolean = true; public static var SourceUrl:String; private static var HighestGoal:int = 0; private static var FirstPing:Boolean = true; public static var SWFID:int = 0; private static function SaveCookie(_arg1:String, _arg2:int):void{ var _local3:SharedObject = SharedObject.getLocal("swfstats"); _local3.data[_arg1] = _arg2.toString(); _local3.flush(); } public static function View(_arg1:int=0, _arg2:String="", _arg3:String=""):void{ if (SWFID > 0){ return; }; SWFID = _arg1; GUID = _arg2; Enabled = true; if ((((SWFID == 0)) || ((GUID == "")))){ Enabled = false; return; }; if (((((!((_arg3.indexOf("http://") == 0))) && (!((Security.sandboxType == "localWithNetwork"))))) && (!((Security.sandboxType == "localTrusted"))))){ Enabled = false; return; }; SourceUrl = GetUrl(_arg3); if ((((SourceUrl == null)) || ((SourceUrl == "")))){ Enabled = false; return; }; Security.allowDomain("http://tracker.swfstats.com/"); Security.allowInsecureDomain("http://tracker.swfstats.com/"); Security.loadPolicyFile("http://tracker.swfstats.com/crossdomain.xml"); Security.allowDomain("http://utils.swfstats.com/"); Security.allowInsecureDomain("http://utils.swfstats.com/"); Security.loadPolicyFile("http://utils.swfstats.com/crossdomain.xml"); var _local4:int = GetCookie("views"); _local4++; SaveCookie("views", _local4); Send(("v/" + _local4), true); PingF.addEventListener(TimerEvent.TIMER, PingServer); PingF.start(); } public static function LevelCounterMetric(_arg1:String, _arg2):void{ if (!Enabled){ return; }; Send(((("lc/" + Clean(_arg1)) + "/") + Clean(_arg2))); } private static function Clean(_arg1:String):String{ return (escape(_arg1.replace("/", "\\").replace("~", "-"))); } public static function Play():void{ if (!Enabled){ return; }; Plays++; Send(("p/" + Plays)); } private static function Send(_arg1:String, _arg2:Boolean=false):void{ Request.Queue(_arg1); if (((((Request.Ready) || (_arg2))) || (!(Queue)))){ Request.Send(); Request = new LogRequest(); }; } private static function GetUrl(_arg1:String):String{ var url:String; var defaulturl = _arg1; if (ExternalInterface.available){ try { url = String(ExternalInterface.call("window.location.href.toString")); } catch(s:Error) { url = defaulturl; }; } else { if (defaulturl.indexOf("http://") == 0){ url = defaulturl; }; }; if ((((((url == null)) || ((url == "")))) || ((url == "null")))){ if ((((Security.sandboxType == "localWithNetwork")) || ((Security.sandboxType == "localTrusted")))){ url = "http://local-testing/"; } else { url = null; }; }; return (url); } public static function LevelRangedMetric(_arg1:String, _arg2, _arg3:int):void{ if (!Enabled){ return; }; Send(((((("lr/" + Clean(_arg1)) + "/") + Clean(_arg2)) + "/") + _arg3)); } private static function GetCookie(_arg1:String):int{ var _local2:SharedObject = SharedObject.getLocal("swfstats"); if (_local2.data[_arg1] == undefined){ return (0); }; return (int(_local2.data[_arg1])); } public static function Goal(_arg1:int, _arg2:String):void{ } private static function PingServer(... _args):void{ if (!Enabled){ return; }; Pings++; Send(((("t/" + (FirstPing) ? "y" : "n") + "/") + Pings), true); if (FirstPing){ PingF.stop(); PingR.addEventListener(TimerEvent.TIMER, PingServer); PingR.start(); FirstPing = false; }; } public static function LevelAverageMetric(_arg1:String, _arg2, _arg3:int):void{ if (!Enabled){ return; }; Send(((((("la/" + Clean(_arg1)) + "/") + Clean(_arg2)) + "/") + _arg3)); } public static function CustomMetric(_arg1:String, _arg2:String=null):void{ if (!Enabled){ return; }; if (_arg2 == null){ _arg2 = ""; }; Send(((("c/" + Clean(_arg1)) + "/") + Clean(_arg2))); } } }//package SWFStats
Section 51
//LogRequest (SWFStats.LogRequest) package SWFStats { import flash.events.*; import flash.net.*; public final class LogRequest { private var Data:String;// = "" public var Ready:Boolean;// = false private var Pieces:int; private static var Failed:int = 0; private function IOErrorHandler(_arg1:IOErrorEvent):void{ Failed++; } public function Queue(_arg1:String):void{ if (Failed > 3){ return; }; this.Pieces++; this.Data = (this.Data + (((this.Data == "")) ? "" : "~" + _arg1)); if ((((this.Pieces == 8)) || ((this.Data.length > 300)))){ this.Ready = true; }; } private function SecurityErrorHandler(_arg1:SecurityErrorEvent):void{ } private function StatusChange(_arg1:HTTPStatusEvent):void{ } public function Send():void{ var _local1:URLLoader = new URLLoader(); _local1.addEventListener(IOErrorEvent.IO_ERROR, this.IOErrorHandler); _local1.addEventListener(HTTPStatusEvent.HTTP_STATUS, this.StatusChange); _local1.addEventListener(SecurityErrorEvent.SECURITY_ERROR, this.SecurityErrorHandler); _local1.load(new URLRequest((((((((((("http://tracker.swfstats.com/Games/q.aspx?guid=" + Log.GUID) + "&swfid=") + Log.SWFID) + "&q=") + this.Data) + "&url=") + Log.SourceUrl) + "&") + Math.random()) + "z"))); trace((((((((((("http://tracker.swfstats.com/Games/q.aspx?guid=" + Log.GUID) + "&swfid=") + Log.SWFID) + "&q=") + this.Data) + "&url=") + Log.SourceUrl) + "&") + Math.random()) + "z")); } } }//package SWFStats
Section 52
//ActivatedJumpPowerSound (ActivatedJumpPowerSound) package { import flash.media.*; public dynamic class ActivatedJumpPowerSound extends Sound { } }//package
Section 53
//Bar (Bar) package { import flash.display.*; public class Bar extends Sprite { public var halfHeight:Number; public var colored:Boolean;// = false public var myType:int; private var additionalMovementX:Number;// = 0 private var myY:Number; public var shakingTime:int;// = 0 public var shakeY:Number;// = 0 public var halfWidth:Number; private var imageKit:BarKit; public var valid:Boolean;// = true public function Bar(_arg1:int, _arg2:Number){ imageKit = new BarKit(); addChild(imageKit); myType = _arg1; imageKit.gotoAndStop(((_arg1 * 2) - 1)); myY = _arg2; halfHeight = (height * 0.5); halfWidth = (width * 0.5); } public function setColor():void{ colored = true; imageKit.nextFrame(); } public function update():void{ x = (x - Level(parent).screenSpeed); if (shakingTime > 0){ shakingTime--; switch (shakingTime){ case 5: shakeY = 2; break; case 4: shakeY = 4; break; case 3: shakeY = 3; break; case 2: shakeY = 2; break; case 1: shakeY = 1; break; case 0: shakeY = 0; break; }; y = (myY + shakeY); }; } } }//package
Section 54
//BarKit (BarKit) package { import flash.display.*; public dynamic class BarKit extends MovieClip { } }//package
Section 55
//BounceSound1 (BounceSound1) package { import flash.media.*; public dynamic class BounceSound1 extends Sound { } }//package
Section 56
//BounceSound2 (BounceSound2) package { import flash.media.*; public dynamic class BounceSound2 extends Sound { } }//package
Section 57
//Ceil (Ceil) package { import flash.display.*; public dynamic class Ceil extends MovieClip { } }//package
Section 58
//ChangeTime (ChangeTime) package { import flash.display.*; public class ChangeTime extends Sprite { private var base:ChangeTimeBox; public var lifeTime:int;// = 90 public var yPosTarget:Number; public function ChangeTime(_arg1:int){ base = new ChangeTimeBox(); addChild(base); if (_arg1 > 0){ base.field.text = (("+" + _arg1) + " SECS"); } else { base.field.textColor = 0xFF0000; base.field.text = (_arg1 + " SECS"); }; } public function update():void{ var _local1:Number; if (y != yPosTarget){ _local1 = (yPosTarget - y); y = (y + (_local1 / 10)); if (int(y) == int(yPosTarget)){ y = yPosTarget; }; }; lifeTime--; if (lifeTime < 30){ alpha = (alpha - 0.033); }; } } }//package
Section 59
//ChangeTimeBox (ChangeTimeBox) package { import flash.display.*; import flash.text.*; public dynamic class ChangeTimeBox extends MovieClip { public var field:TextField; } }//package
Section 60
//CircleEffect (CircleEffect) package { import flash.display.*; public dynamic class CircleEffect extends MovieClip { } }//package
Section 61
//ClockPowerUp (ClockPowerUp) package { import flash.display.*; public dynamic class ClockPowerUp extends MovieClip { } }//package
Section 62
//ClockUpSound (ClockUpSound) package { import flash.media.*; public dynamic class ClockUpSound extends Sound { } }//package
Section 63
//CreditsScrenBase (CreditsScrenBase) package { import flash.display.*; public dynamic class CreditsScrenBase extends MovieClip { public var selector:MovieClip; public var sponsor:SimpleButton; public var logoDev:SimpleButton; public var back:SimpleButton; } }//package
Section 64
//CrossGateSound (CrossGateSound) package { import flash.media.*; public dynamic class CrossGateSound extends Sound { } }//package
Section 65
//ExtraTimeSound (ExtraTimeSound) package { import flash.media.*; public dynamic class ExtraTimeSound extends Sound { } }//package
Section 66
//GameOverBase (GameOverBase) package { import flash.display.*; import flash.text.*; public dynamic class GameOverBase extends MovieClip { public var score:TextField; public var selector:MovieClip; public var multiplier:TextField; public var sponsor:SimpleButton; public var bestScore:TextField; public var submitScore:SimpleButton; public var replay:SimpleButton; public var time:TextField; } }//package
Section 67
//Hero (Hero) package { import flash.display.*; public class Hero extends Sprite { private var borning:Boolean;// = true public var radius:Number; public var powerLoaded:Boolean;// = false public var speedX:Number;// = 0 public var movePower:Number;// = 2.5 public var speedY:Number;// = 0 public var friction:Number;// = 0.8 public var image:HeroImage; public var loadingPowerTime:int;// = 150 public function Hero(){ image = new HeroImage(); addChild(image); radius = (height * 0.5); alpha = 0; } public function update():void{ if (borning){ if (Level(parent).gameTimeFrames < 110){ alpha = (alpha + 0.02); image.rotation = (image.rotation + Level(parent).screenSpeed); } else { alpha = 1; borning = false; speedX = 0; speedY = -6; }; } else { if (powerLoaded == false){ if (loadingPowerTime > 0){ loadingPowerTime--; } else { powerIsLoaded(); }; }; speedX = (speedX * friction); speedY = (speedY + Level(parent).gravityAcceleration); x = (x + speedX); y = (y + speedY); image.rotation = (image.rotation + (Level(parent).screenSpeed + speedX)); }; } public function powerIsLoaded():void{ powerLoaded = true; } public function movement(_arg1:String):void{ switch (_arg1){ case "left": speedX = (speedX - movePower); break; case "right": speedX = (speedX + movePower); break; case "down": speedY = (speedY + 0.2); break; }; } public function usePower():void{ Level(parent).IKnowYouHavePower = false; loadingPowerTime = 150; speedY = -12; powerLoaded = false; } } }//package
Section 68
//HeroImage (HeroImage) package { import flash.display.*; public dynamic class HeroImage extends MovieClip { public function HeroImage(){ addFrameScript(0, this.frame1); } function frame1(){ stop(); } } }//package
Section 69
//HeroTrail (HeroTrail) package { import flash.display.*; public dynamic class HeroTrail extends MovieClip { public function HeroTrail(){ addFrameScript(0, this.frame1); } function frame1(){ stop(); } } }//package
Section 70
//HUD (HUD) package { import flash.display.*; import flash.text.*; public dynamic class HUD extends MovieClip { public var mute:SimpleButton; public var points:TextField; public var danger:MovieClip; public var multiplier:TextField; public var doubleJumpIcon:MovieClip; public var extraTime:TextField; public var timeLeft:TextField; } }//package
Section 71
//InstructionsScreenBase (InstructionsScreenBase) package { import flash.display.*; public dynamic class InstructionsScreenBase extends MovieClip { public var start:SimpleButton; public var selector:MovieClip; } }//package
Section 72
//JumpingBall (JumpingBall) package { import flash.events.*; import flash.display.*; import CPMStar.*; import SWFStats.*; import flash.net.*; public class JumpingBall extends Preloader { public var ad:DisplayObject; public var fakeloading:Number; public var adTime:int;// = 300 private var base:PreloaderBase; public var sitelockAds:Boolean;// = false override protected function endLoading():void{ } override protected function updateLoading(_arg1:Number):void{ if (base != null){ if (adTime > 0){ adTime--; }; fakeloading = ((_arg1 * (300 - adTime)) / 300); if (fakeloading < 0.99){ base.loadBar.scaleX = fakeloading; base.loadedText.text = (int((fakeloading * 100)) + "%"); } else { if (base.playButton.alpha == 0){ stage.focus = stage; base.playButton.alpha = 1; base.playButton.addEventListener(MouseEvent.CLICK, startGame, false, 0, true); base.loadBar.scaleX = 1; }; }; }; } private function visitSponsor(_arg1:MouseEvent):void{ var mouseEvent = _arg1; var url = "http://www.playedonline.com/?t=1&a=smiley&utm_campaign=smiley&utm_source=smiley&utm_medium=smiley"; var request:URLRequest = new URLRequest(url); try { navigateToURL(request, "_blank"); } catch(e:Error) { trace("Error occurred!"); }; } private function startGame(_arg1:MouseEvent):void{ trace("YEAH"); base.playButton.removeEventListener(MouseEvent.CLICK, startGame); base.logoSpo.removeEventListener(MouseEvent.CLICK, visitSponsor); Log.View(1240, "0e52a346c100", root.loaderInfo.loaderURL); removeChild(base); base = null; _adFinished = true; } public function checkUrl(_arg1:Array):Boolean{ var _local2:String = stage.loaderInfo.url; var _local3:int = (_arg1.length - 1); while (_local3 >= 0) { if (_local2.indexOf(_arg1[_local3]) != -1){ return (true); }; _local3--; }; return (false); } override protected function beginLoading():void{ var _local4:String; var _local7:String; base = new PreloaderBase(); addChild(base); var _local1:String = stage.loaderInfo.url; var _local2:Number = (_local1.indexOf("://") + 3); var _local3:Number = _local1.indexOf("/", _local2); _local4 = _local1.substring(_local2, _local3); var _local5:Number = (_local4.lastIndexOf(".") - 1); var _local6:Number = (_local4.lastIndexOf(".", _local5) + 1); _local4 = _local4.substring(_local6, _local4.length); if (base.logoSpo == null){ base.visible = false; }; base.playButton.alpha = 0; if ((((((_local4 == "flashgamelicense.com")) || ((_local4 == "chat.kongregate.com")))) || ((_local4 == "kongregate.com")))){ sitelockAds = true; adTime = 0; }; if (sitelockAds == false){ _local7 = "3390QEAC80E3B"; ad = new AdLoader(_local7); base.adBox.addChild(ad); }; base.logoSpo.addEventListener(MouseEvent.CLICK, visitSponsor, false, 0, true); } } }//package
Section 73
//Level (Level) package { import flash.events.*; import flash.display.*; import com.greensock.*; import com.*; import com.greensock.plugins.*; import flash.ui.*; public class Level extends Sprite { public var reverseYMode:Boolean;// = false private var pauseScreen:PauseScreen; private var arrayOfChangeTimeNotes:Array; private var downKeyPressed:Boolean;// = false private var arrayOfTrailEffect:Array; private var currentChangeTimeNote:ChangeTime; private var currentTrail:HeroTrail; public var morePlatformsUpgrade:Boolean;// = false private var arrayOfRings:Array; public var secondPlatformUpgrade:Boolean;// = false private var veryHappyDuration:int; private var isTimeToCreateTrail:Boolean; private var hud:HUD; private var textEffect:MyTextEffect; private var currentParticle:Particle; private var newSmokeEffect:SmokeEffect; private var spikeBall:SpikeBall; private var leftKeyPressed:Boolean;// = false private var background:LevelBack; public var multiplierValue:int;// = 1 public var smallGateMode:Boolean;// = false public var screenSpeed:Number;// = 4.8 private var newCircleEffect:CircleEffect; private var newTrail:HeroTrail; private var currentRing:Ring; private var spikeFloor1:SpikeFloor; private var spikeFloor2:SpikeFloor; private var newParticle:Particle; private var timeUntilNextBar:int;// = 0 private var newBar:Bar; public var smallPlatformsMode:Boolean;// = false public var fatMode:Boolean;// = false public var gameTimeFrames:int; public var spikeBallMode:Boolean;// = false private var i:int; private var timeLeft:int;// = 40 public var gameSpeed:Number;// = 1 public var reverseXMode:Boolean;// = false private var arrayOfParticles:Array; private var frames30:int; public var level:int;// = 1 private var isGamePaused:Boolean;// = false private var clockPowerUp:ClockPowerUp; private var currentCircleEffect:CircleEffect; private var currentSmokeEffect:SmokeEffect; public var IKnowYouHavePower:Boolean;// = false private var isClockPowerUpInGame:Boolean;// = false public var smokeMode:Boolean;// = false private var arrayOfHeroLastXPos:Array; private var upKeyPressed:Boolean;// = false private var arrayOfSmokeEffects:Array; private var ceil1:Ceil; private var ceil2:Ceil; private var isTextEffectInGame:Boolean;// = false private var isSpikeBallInGame:Boolean;// = false public var extraTimePowerUpUpgrade:Boolean;// = false private var currentBar:Bar; public var spikePlatformMode:Boolean;// = false private var levelUpAt:int;// = 3 private var arrayOfCircleEffects:Array; private var points:int;// = 0 public var gravityAcceleration:Number;// = 0.44 private var arrayOfBars:Array; private var newChangeTimeNote:ChangeTime; private var newRing:Ring; private var hero:Hero; private var reborn:Boolean;// = false private var rightKeyPressed:Boolean;// = false public function Level(){ arrayOfBars = new Array(); arrayOfTrailEffect = new Array(); arrayOfRings = new Array(); arrayOfParticles = new Array(); arrayOfCircleEffects = new Array(); arrayOfChangeTimeNotes = new Array(); arrayOfSmokeEffects = new Array(); arrayOfHeroLastXPos = new Array(); super(); TweenPlugin.activate([TransformMatrixPlugin, SetSizePlugin, AutoAlphaPlugin, TintPlugin, ColorTransformPlugin]); Mouse.hide(); background = new LevelBack(); addChild(background); hero = new Hero(); hero.x = 300; hero.y = 100; addChild(hero); hud = new HUD(); hud.x = 300; hud.y = 200; addChild(hud); hud.mute.addEventListener(MouseEvent.CLICK, muteGame, false, 0, true); updateHUD("multiplier"); updateHUD("timeLeft"); hud.doubleJumpIcon.gotoAndStop(2); hud.doubleJumpIcon.visible = false; hud.extraTime.text = ("EXTRA TIME AT " + levelUpAt); pauseScreen = new PauseScreen(); hud.addChild(pauseScreen); pauseScreen.visible = false; spikeFloor1 = new SpikeFloor(); background.addChild(spikeFloor1); spikeFloor2 = new SpikeFloor(); background.addChild(spikeFloor2); spikeFloor2.x = 628; spikeFloor1.y = (spikeFloor2.y = 400); ceil1 = new Ceil(); background.addChild(ceil1); ceil2 = new Ceil(); background.addChild(ceil2); ceil2.x = 600; addEventListener(Event.ADDED_TO_STAGE, onAddToStage, false, 0, true); addEventListener(Event.ENTER_FRAME, onTick, false, 0, true); } private function checkLevelUp():void{ switch (level){ case 1: if (multiplierValue == levelUpAt){ levelUp(5, 5, 1.02, 1.02); }; break; case 2: if (multiplierValue == levelUpAt){ levelUp(20, 10, 1.04, 1.04); }; break; case 3: if ((((smokeMode == false)) && ((multiplierValue == 10)))){ modeChange("smoke", true); }; if ((((secondPlatformUpgrade == false)) && ((multiplierValue == 18)))){ addUpgrade("secondPlatform"); }; if (multiplierValue == levelUpAt){ levelUp(30, 15, 1.05, 1.05); }; break; case 4: if ((((smallPlatformsMode == false)) && ((multiplierValue == 25)))){ modeChange("smallPlatforms", true); modeChange("smoke", false); }; if (multiplierValue == levelUpAt){ levelUp(42, 15, 1.05, 1.05); }; break; case 5: if ((((spikePlatformMode == false)) && ((multiplierValue == 36)))){ modeChange("spikePlatform", true); modeChange("smallPlatforms", false); }; if (multiplierValue == levelUpAt){ levelUp(58, 20, 1.05, 1.05); }; break; case 6: if ((((fatMode == false)) && ((multiplierValue == 50)))){ modeChange("fat", true); }; if ((((extraTimePowerUpUpgrade == false)) && ((multiplierValue == 55)))){ addUpgrade("extraTimePowerUp"); }; if (multiplierValue == levelUpAt){ levelUp(75, 25, 1.05, 1.05); }; break; case 7: if ((((smokeMode == false)) && ((multiplierValue == 65)))){ modeChange("fat", false); modeChange("smoke", true); }; if (multiplierValue == levelUpAt){ levelUp(90, 30, 1.05, 1.07); }; break; case 8: if ((((spikeBallMode == false)) && ((multiplierValue == 82)))){ modeChange("spikeBall", true); modeChange("smoke", false); }; if (multiplierValue == levelUpAt){ levelUp(110, 30, 1.05, 1.07); }; break; case 9: if ((((reverseYMode == false)) && ((multiplierValue == 100)))){ modeChange("reverseY", true); modeChange("spikeBall", false); }; if (multiplierValue == levelUpAt){ levelUp(130, 30, 1.06, 1.08); }; break; case 10: if ((((smallGateMode == false)) && ((multiplierValue == 115)))){ modeChange("smallGates", true); }; if (multiplierValue == levelUpAt){ levelUp(150, 35, 1.05, 1.07); }; break; case 11: if ((((reverseYMode == true)) && ((multiplierValue == 135)))){ modeChange("reverseY", false); }; if ((((smokeMode == false)) && ((multiplierValue == 140)))){ modeChange("smoke", true); }; if ((((reverseXMode == false)) && ((multiplierValue == 145)))){ modeChange("smallPlatforms", true); }; if (multiplierValue == levelUpAt){ levelUp(180, 35, 1.04, 1.08); }; break; case 12: if ((((reverseXMode == false)) && ((multiplierValue == 155)))){ modeChange("reverseX", true); modeChange("smoke", false); }; if ((((fatMode == false)) && ((multiplierValue == 165)))){ modeChange("fat", true); }; if ((((smokeMode == false)) && ((multiplierValue == 175)))){ modeChange("smoke", true); }; if (multiplierValue == levelUpAt){ levelUp(220, 35, 1.04, 1.07); }; break; case 13: if ((((morePlatformsUpgrade == false)) && ((multiplierValue == 195)))){ addUpgrade("morePlatforms"); }; if ((((reverseYMode == false)) && ((multiplierValue == 210)))){ modeChange("reverseY", true); }; if (multiplierValue == levelUpAt){ levelUp(260, 10, 1.15, 1.1); }; break; case 14: if (multiplierValue == levelUpAt){ levelUp(350, 10, 1.2, 1.1); }; break; }; } private function onTick(_arg1:Event):void{ if (mouseY > 350){ Mouse.show(); } else { Mouse.hide(); }; if (isGamePaused == false){ gameTimeFrames++; hero.update(); spikeFloor1.x = (spikeFloor1.x - screenSpeed); if (spikeFloor1.x < -631){ spikeFloor1.x = (spikeFloor1.x + 1262); }; spikeFloor2.x = (spikeFloor2.x - screenSpeed); if (spikeFloor2.x < -631){ spikeFloor2.x = (spikeFloor2.x + 1262); }; ceil1.x = (ceil1.x - screenSpeed); if (ceil1.x < -600){ ceil1.x = (ceil1.x + 1200); }; ceil2.x = (ceil2.x - screenSpeed); if (ceil2.x < -600){ ceil2.x = (ceil2.x + 1200); }; if (gameTimeFrames == 5){ showTextEffect(4); }; if (gameTimeFrames == 35){ showTextEffect(5); }; if (gameTimeFrames == 65){ showTextEffect(6); }; if (gameTimeFrames == 110){ showTextEffect(7); hud.doubleJumpIcon.visible = true; }; if ((((gameTimeFrames > 110)) && ((reborn == false)))){ if (frames30 < 30){ frames30++; } else { frames30 = 0; timeLeft--; updateHUD("timeLeft"); }; }; if (reborn == false){ if (hero.y < 330){ if (veryHappyDuration > 0){ hero.image.gotoAndStop(2); veryHappyDuration--; } else { hero.image.gotoAndStop(1); }; } else { hero.image.gotoAndStop(3); }; } else { hero.image.gotoAndStop(4); }; if (hero.x < hero.radius){ hero.x = hero.radius; }; if (hero.x > (600 - hero.radius)){ hero.x = (600 - hero.radius); }; if (hero.y < (hero.radius + 14)){ hero.speedY = (hero.speedY * 0.4); hero.y = (hero.radius + 14); }; if (hero.y > 380){ createNewChangeTimeNote(-(int((timeLeft / 5)))); deathTohero(); }; if (leftKeyPressed){ hero.movement("left"); }; if (rightKeyPressed){ hero.movement("right"); }; if (downKeyPressed){ hero.movement("down"); }; if (((upKeyPressed) && (hero.powerLoaded))){ veryHappyDuration = 30; hero.usePower(); Main(parent).playSoundEffect("activatedJumpPower"); TweenLite.to(hero, 0, {tint:0xFFFFFF}); TweenLite.to(hero, 0.3, {removeTint:true}); hud.doubleJumpIcon.gotoAndStop(2); createParticleExplosion(hero, 15, 2); createCircleEffect(); }; if (timeUntilNextBar > 0){ timeUntilNextBar--; } else { timeUntilNextBar = int(((32 * (0.8 + (Math.random() * 0.4))) / gameSpeed)); createNewBar(); }; i = (arrayOfParticles.length - 1); while (i > -1) { if (arrayOfParticles[i].alpha <= 0){ removeChild(arrayOfParticles[i]); arrayOfParticles[i] = null; arrayOfParticles.splice(i, 1); }; i--; }; if (smokeMode){ if (Math.random() < 0.05){ createSmoke(); }; }; i = (arrayOfSmokeEffects.length - 1); while (i > -1) { currentSmokeEffect = arrayOfSmokeEffects[i]; if (reverseXMode == false){ currentSmokeEffect.x = (currentSmokeEffect.x - (screenSpeed * 1.5)); } else { currentSmokeEffect.x = (currentSmokeEffect.x + (screenSpeed * 1.5)); }; currentSmokeEffect.scaleX = (currentSmokeEffect.scaleX + 0.01); currentSmokeEffect.scaleY = (currentSmokeEffect.scaleY + 0.01); currentSmokeEffect.alpha = (currentSmokeEffect.alpha - 0.0025); currentSmokeEffect.rotation = (currentSmokeEffect.rotation + 5); currentSmokeEffect.y = (currentSmokeEffect.y - 0.5); if (currentSmokeEffect.x < -450){ hud.removeChild(currentSmokeEffect); arrayOfSmokeEffects[i] = null; arrayOfSmokeEffects.splice(i, 1); }; i--; }; if (isTextEffectInGame){ if (reverseXMode == false){ if ((((textEffect.currentFrame >= 4)) && ((textEffect.currentFrame <= 7)))){ textEffect.x = (textEffect.x - (screenSpeed * 2.8)); } else { textEffect.x = (textEffect.x - screenSpeed); }; } else { textEffect.x = (textEffect.x + screenSpeed); }; if (textEffect.alpha <= 0.01){ hud.removeChild(textEffect); textEffect = null; isTextEffectInGame = false; }; }; i = (arrayOfChangeTimeNotes.length - 1); while (i > -1) { currentChangeTimeNote = arrayOfChangeTimeNotes[i]; currentChangeTimeNote.x = hero.x; currentChangeTimeNote.yPosTarget = ((hero.y - hero.radius) - (12 * (i + 1))); currentChangeTimeNote.update(); if (currentChangeTimeNote.alpha <= 0.1){ removeChild(arrayOfChangeTimeNotes[i]); arrayOfChangeTimeNotes[i] = null; arrayOfChangeTimeNotes.splice(i, 1); }; i--; }; i = (arrayOfCircleEffects.length - 1); while (i > -1) { currentCircleEffect = arrayOfCircleEffects[i]; currentCircleEffect.x = (currentCircleEffect.x - screenSpeed); if (currentCircleEffect.alpha <= 0.1){ removeChild(arrayOfCircleEffects[i]); arrayOfCircleEffects[i] = null; arrayOfCircleEffects.splice(i, 1); }; i--; }; arrayOfHeroLastXPos.push(int(hero.x)); if (arrayOfHeroLastXPos.length > 2){ arrayOfHeroLastXPos.splice(0, 1); }; if ((((IKnowYouHavePower == false)) && (hero.powerLoaded))){ createParticleExplosion(hero, 20, 2, 0xFF9900); Main(parent).playSoundEffect("loadedJumpPower"); IKnowYouHavePower = true; hud.doubleJumpIcon.gotoAndStop(1); } else { if ((((hud.doubleJumpIcon.currentFrame == 2)) && ((gameTimeFrames >= 110)))){ updateHUD("doubleJumpStatus"); }; }; if (isClockPowerUpInGame){ clockPowerUp.x = (clockPowerUp.x - (screenSpeed * 0.5)); if (HitTest.complexHitTestObject(hero, clockPowerUp, 1)){ createParticleExplosion(hero, 15, 2, 0x66CC00); Main(parent).playSoundEffect("clockUp"); createNewChangeTimeNote(5); isClockPowerUpInGame = false; veryHappyDuration = 45; }; if (clockPowerUp.x < -50){ isClockPowerUpInGame = false; }; if (isClockPowerUpInGame == false){ removeChild(clockPowerUp); clockPowerUp = null; }; }; if (spikeBallMode){ if (isSpikeBallInGame){ spikeBall.x = (spikeBall.x - screenSpeed); if (HitTest.complexHitTestObject(hero, spikeBall, 1)){ deathTohero(); createNewChangeTimeNote(-(int((timeLeft / 15)))); }; if (((((spikeBall.x + (spikeBall.width * 0.5)) < 0)) || ((isSpikeBallInGame == false)))){ removeChild(spikeBall); spikeBall = null; isSpikeBallInGame = false; }; } else { if (Math.random() > 0.9){ spikeBall = new SpikeBall(); spikeBall.x = (600 + (spikeBall.width * 0.5)); spikeBall.y = (60 + (Math.random() * 120)); addChild(spikeBall); isSpikeBallInGame = true; }; }; }; i = (arrayOfRings.length - 1); while (i > -1) { currentRing = arrayOfRings[i]; currentRing.update(); if (currentRing.valid){ if ((((hero.y > (currentRing.y - currentRing.halfHeight))) && ((hero.y < (currentRing.y + currentRing.halfHeight))))){ if ((((hero.x > (currentRing.x + currentRing.imageKit.bar.x))) && ((arrayOfHeroLastXPos[0] <= ((currentRing.x + currentRing.imageKit.bar.x) + screenSpeed))))){ currentRing.valid = false; currentRing.setColor(); if (currentRing.myType == 1){ createParticleExplosion(currentRing, 10, 3); points = (points + (250 * multiplierValue)); screenSpeed = (screenSpeed * 1.001); gameSpeed = (gameSpeed * 1.001); } else { screenSpeed = (screenSpeed * 1.002); gameSpeed = (gameSpeed * 1.002); createNewChangeTimeNote(1); createParticleExplosion(currentRing, 15, 3, 0xFF6600); points = (points + (1000 * multiplierValue)); multiplierValue++; checkLevelUp(); }; multiplierValue++; updateHUD("points"); updateHUD("multiplier"); checkLevelUp(); Main(parent).playSoundEffect("crossGate"); veryHappyDuration = 15; if ((((Math.random() <= 0.05)) && (extraTimePowerUpUpgrade))){ createClockPowerUp(); }; }; }; }; if (currentRing.x < -20){ removeChild(arrayOfRings[i]); arrayOfRings[i] = null; arrayOfRings.splice(i, 1); }; i--; }; i = (arrayOfTrailEffect.length - 1); while (i > -1) { currentTrail = arrayOfTrailEffect[i]; currentTrail.alpha = (currentTrail.alpha - 0.03); currentTrail.scaleX = (currentTrail.scaleX + 0.07); currentTrail.scaleY = (currentTrail.scaleY + 0.07); currentTrail.x = (currentTrail.x - screenSpeed); if ((((currentTrail.x < -100)) || ((currentTrail.alpha <= 0)))){ removeChild(arrayOfTrailEffect[i]); arrayOfTrailEffect[i] = null; arrayOfTrailEffect.splice(i, 1); }; i--; }; if (hero.alpha > 0.9){ if (isTimeToCreateTrail == true){ createTrail(); isTimeToCreateTrail = false; } else { isTimeToCreateTrail = true; }; }; i = (arrayOfBars.length - 1); while (i > -1) { currentBar = arrayOfBars[i]; currentBar.update(); if ((currentBar.x + currentBar.halfWidth) < 0){ currentBar.valid = false; }; if ((((hero.speedY > 0)) && ((hero.y < ((currentBar.y + currentBar.halfHeight) + hero.speedY))))){ if ((((hero.x > (currentBar.x - currentBar.halfWidth))) && ((hero.x < (currentBar.x + currentBar.halfWidth))))){ if (HitTest.complexHitTestObject(hero, currentBar, 1)){ if (currentBar.myType != 3){ currentBar.shakingTime = 6; if (fatMode == false){ hero.speedY = -9; } else { hero.speedY = -8; }; if (currentBar.myType == 2){ hero.speedY = (hero.speedY * 1.42); Main(parent).playSoundEffect("bounce2"); } else { Main(parent).playSoundEffect("bounce1"); }; if (reborn == true){ gameSpeed = (gameSpeed * 2); screenSpeed = (screenSpeed * 2); hero.alpha = 1; reborn = false; gravityAcceleration = (gravityAcceleration * 3); TweenMax.to(hero, 0.5, {colorTransform:{tint:0xFF0000, tintAmount:0}}); }; hero.y = ((currentBar.y - currentBar.halfHeight) - hero.radius); if (currentBar.colored == false){ if (currentBar.myType == 1){ createParticleExplosion(currentBar, 10, 1); } else { if (currentBar.myType == 2){ createParticleExplosion(currentBar, 10, 1, 0xFF9900); }; }; createNewRing(currentBar.myType); currentBar.setColor(); createCircleEffect(); points = (points + ((100 * multiplierValue) * currentBar.myType)); updateHUD("points"); }; } else { createNewChangeTimeNote(int((-(timeLeft) / 6))); deathTohero(); }; }; }; }; if (currentBar.valid == false){ removeChild(arrayOfBars[i]); arrayOfBars[i] = null; arrayOfBars.splice(i, 1); }; i--; }; }; } private function showTextEffect(_arg1:int):void{ var _local4:int; textEffect = new MyTextEffect(); textEffect.gotoAndStop(_arg1); if (reverseXMode == false){ textEffect.x = 150; } else { textEffect.x = -150; }; if (_arg1 == 1){ Main(parent).playSoundEffect("extraTime"); }; hud.addChild(textEffect); var _local2:int = int((textEffect.width * 1.5)); var _local3:int = int((textEffect.height * 1.5)); if ((((_arg1 >= 4)) && ((_arg1 <= 7)))){ _local4 = 1.5; } else { _local4 = 6; }; TweenLite.to(textEffect, _local4, {setSize:{width:_local2, height:_local3}}); TweenLite.to(textEffect, _local4, {autoAlpha:0}); hud.setChildIndex(textEffect, (hud.numChildren - 1)); isTextEffectInGame = true; } public function onKeyPress(_arg1:KeyboardEvent):void{ switch (_arg1.keyCode){ case Keyboard.UP: case KeyCodes.W: upKeyPressed = true; break; case Keyboard.DOWN: case KeyCodes.S: downKeyPressed = true; break; case Keyboard.LEFT: case KeyCodes.A: leftKeyPressed = true; break; case Keyboard.RIGHT: case KeyCodes.D: rightKeyPressed = true; break; }; } public function positiveOrNegative():int{ var _local1:int = int((Math.random() * 2)); if (_local1 == 0){ _local1 = -1; }; return (_local1); } public function onKeyRelease(_arg1:KeyboardEvent):void{ switch (_arg1.keyCode){ case Keyboard.UP: case KeyCodes.W: upKeyPressed = false; break; case Keyboard.DOWN: case KeyCodes.S: downKeyPressed = false; break; case Keyboard.LEFT: case KeyCodes.A: leftKeyPressed = false; break; case Keyboard.RIGHT: case KeyCodes.D: rightKeyPressed = false; break; case KeyCodes.P: case Keyboard.SPACE: if (isGamePaused == true){ isGamePaused = false; pauseScreen.visible = false; Main(parent).returnGameLoop(); } else { hud.setChildIndex(pauseScreen, (hud.numChildren - 1)); Main(parent).stopMainLoop(); pauseScreen.visible = true; isGamePaused = true; }; break; case KeyCodes.R: if (isGamePaused == true){ stage.removeEventListener(KeyboardEvent.KEY_DOWN, onKeyPress); stage.removeEventListener(KeyboardEvent.KEY_UP, onKeyRelease); stage.removeEventListener(Event.DEACTIVATE, flashDeactive); stage.removeEventListener(Event.ACTIVATE, flashActive); removeEventListener(Event.ADDED_TO_STAGE, onAddToStage); removeEventListener(Event.ENTER_FRAME, onTick, false); Main(parent).uploadInfo("Retried"); Main(parent).gotoNewScreen("mainMenu"); }; break; }; } private function pushHUDToFront():void{ setChildIndex(hud, (numChildren - 1)); } public function modeChange(_arg1:String, _arg2:Boolean):void{ if (_arg2 == true){ Main(parent).playSoundEffect("newObstacle"); }; switch (_arg1){ case "reverseX": reverseXMode = _arg2; if (_arg2){ scaleX = -1; x = 600; hero.movePower = -(Math.abs(hero.movePower)); hud.scaleX = -1; } else { scaleX = 1; x = 0; hud.scaleX = 1; hero.movePower = Math.abs(hero.movePower); }; i = (arrayOfSmokeEffects.length - 1); while (i > -1) { arrayOfSmokeEffects[i].x = (arrayOfSmokeEffects[i].x * -1); i--; }; i = (arrayOfChangeTimeNotes.length - 1); while (i > -1) { arrayOfChangeTimeNotes[i].scaleX = 1; i--; }; newChangeTimeNote.scaleX = -1; hero.usePower(); hud.doubleJumpIcon.gotoAndStop(2); showTextEffect(2); break; case "reverseY": reverseYMode = _arg2; if (_arg2){ scaleY = -1; y = 400; hud.scaleY = -1; } else { scaleY = 1; y = 0; hud.scaleY = 1; }; i = (arrayOfSmokeEffects.length - 1); while (i > -1) { arrayOfSmokeEffects[i].y = (arrayOfSmokeEffects[i].y * -1); i--; }; i = (arrayOfChangeTimeNotes.length - 1); while (i > -1) { arrayOfChangeTimeNotes[i].scaleY = 1; i--; }; hero.usePower(); hud.doubleJumpIcon.gotoAndStop(2); showTextEffect(8); break; case "smoke": smokeMode = _arg2; if (_arg2){ showTextEffect(3); }; break; case "smallPlatforms": smallPlatformsMode = _arg2; if (_arg2){ showTextEffect(9); }; break; case "fat": fatMode = _arg2; if (_arg2){ showTextEffect(10); hero.scaleX = (hero.scaleY = 1.6); } else { hero.scaleX = (hero.scaleY = 1); }; hero.radius = (hero.width * 0.5); break; case "spikeBall": spikeBallMode = _arg2; if (_arg2){ showTextEffect(11); } else { if (isSpikeBallInGame){ removeChild(spikeBall); spikeBall = null; isSpikeBallInGame = false; }; }; break; case "spikePlatform": spikePlatformMode = _arg2; if (_arg2){ showTextEffect(12); }; break; case "smallGates": smallGateMode = _arg2; if (_arg2){ showTextEffect(13); }; break; }; } private function levelUp(_arg1:int, _arg2:int, _arg3:Number, _arg4:Number):void{ level++; Main(parent).uploadInfo("Level Reached", level); levelUpAt = _arg1; hud.extraTime.text = ("EXTRA TIME AT " + levelUpAt.toString()); showTextEffect(1); createNewChangeTimeNote(_arg2); gameSpeed = (gameSpeed * _arg4); screenSpeed = (screenSpeed * _arg3); veryHappyDuration = 45; } public function addUpgrade(_arg1:String):void{ Main(parent).playSoundEffect("newUpgrade"); switch (_arg1){ case "secondPlatform": secondPlatformUpgrade = true; showTextEffect(14); createNewBar(2); break; case "extraTimePowerUp": extraTimePowerUpUpgrade = true; showTextEffect(15); createClockPowerUp(); break; case "morePlatforms": morePlatformsUpgrade = true; showTextEffect(16); gameSpeed = (gameSpeed * 1.2); break; }; } private function flashActive(_arg1:Event):void{ Mouse.hide(); } private function createNewChangeTimeNote(_arg1:int):void{ if (_arg1 != 0){ newChangeTimeNote = new ChangeTime(_arg1); newChangeTimeNote.x = hero.x; newChangeTimeNote.y = hero.y; if (reverseXMode){ newChangeTimeNote.scaleX = -1; }; if (reverseYMode){ newChangeTimeNote.scaleY = -1; }; addChild(newChangeTimeNote); arrayOfChangeTimeNotes.push(newChangeTimeNote); timeLeft = (timeLeft + _arg1); updateHUD("timeLeft"); }; } private function createNewRing(_arg1:int):void{ newRing = new Ring(_arg1); var _local2:Number = (95 + (Math.random() * 100)); newRing.x = (610 + (newRing.width * 0.5)); newRing.y = _local2; if (smallGateMode){ newRing.imageKit.scaleY = (newRing.imageKit.scaleY * 0.6); newRing.halfHeight = (newRing.imageKit.height * 0.5); }; addChild(newRing); arrayOfRings.push(newRing); pushHUDToFront(); } public function updateHUD(_arg1:String):void{ switch (_arg1){ case "multiplier": if (multiplierValue >= 100){ hud.multiplier.text = (multiplierValue + " x"); } else { if (multiplierValue >= 10){ hud.multiplier.text = (("0" + multiplierValue) + " x"); } else { hud.multiplier.text = (("00" + multiplierValue) + " x"); }; }; break; case "points": hud.points.text = points.toString(); break; case "timeLeft": if (timeLeft >= 100){ hud.timeLeft.text = timeLeft.toString(); } else { if (timeLeft >= 10){ hud.timeLeft.text = ("0" + timeLeft); } else { hud.timeLeft.text = ("00" + timeLeft); }; }; if (timeLeft <= 6){ hud.danger.alpha = ((6 - timeLeft) / 6); if (timeLeft == 0){ Main(parent).lastScore = points; if (points > Main(parent).personalBestScore){ Main(parent).personalBestScore = points; }; Main(parent).lastMultiplierLevel = multiplierValue; Main(parent).lastTimePlaying = int((gameTimeFrames / 30)); Main(parent).stopMainLoop(); stage.removeEventListener(KeyboardEvent.KEY_DOWN, onKeyPress); stage.removeEventListener(KeyboardEvent.KEY_UP, onKeyRelease); stage.removeEventListener(Event.DEACTIVATE, flashDeactive); stage.removeEventListener(Event.ACTIVATE, flashActive); removeEventListener(Event.ADDED_TO_STAGE, onAddToStage); removeEventListener(Event.ENTER_FRAME, onTick, false); Main(parent).gotoNewScreen("gameOver"); }; } else { hud.danger.alpha = 0; }; break; case "doubleJumpStatus": hud.doubleJumpIcon.bar.scaleX = ((150 - hero.loadingPowerTime) / 150); break; }; } private function createNewBar(_arg1:int=0):void{ var _local2:Number; var _local3:int; if (_arg1 == 0){ if (((secondPlatformUpgrade) && ((Math.random() > 0.92)))){ _local3 = 2; } else { if (((spikePlatformMode) && ((Math.random() > 0.88)))){ _local3 = 3; } else { _local3 = 1; }; }; } else { _local3 = _arg1; }; if ((((_local3 == 1)) || ((_local3 == 3)))){ _local2 = (140 + (Math.random() * 130)); } else { _local2 = (280 + (Math.random() * 50)); }; newBar = new Bar(_local3, _local2); if (_local3 == 2){ newBar.width = (newBar.width * 1.3); newBar.halfWidth = (newBar.width * 0.5); }; if (smallPlatformsMode){ newBar.scaleX = (newBar.scaleX * 0.65); newBar.halfWidth = (newBar.width * 0.5); }; newBar.x = (600 + newBar.halfWidth); newBar.y = _local2; addChild(newBar); arrayOfBars.push(newBar); pushHeroToFront(); } public function createTrail():void{ newTrail = new HeroTrail(); if (fatMode == false){ newTrail.scaleX = (newTrail.scaleY = 0.8); } else { newTrail.scaleX = (newTrail.scaleY = 1.28); }; newTrail.x = hero.x; newTrail.y = hero.y; arrayOfTrailEffect.push(newTrail); addChild(newTrail); setChildIndex(newTrail, 2); } private function deathTohero():void{ createParticleExplosion(hero, 35, 1, 0xFF0000); hero.y = (14 + hero.radius); createParticleExplosion(hero, 15, 2, 0xFFFF00); hero.usePower(); createCircleEffect(); hud.doubleJumpIcon.gotoAndStop(2); Main(parent).playSoundEffect("pop"); hero.speedX = (hero.speedY = 0); if (reborn == false){ gameSpeed = (gameSpeed / 2); screenSpeed = (screenSpeed / 2); TweenMax.to(hero, 0, {colorTransform:{tint:0xFF0000, tintAmount:0.5}}); hero.alpha = 0.5; reborn = true; gravityAcceleration = (gravityAcceleration / 3); }; } private function createCircleEffect():void{ newCircleEffect = new CircleEffect(); newCircleEffect.x = hero.x; newCircleEffect.y = hero.y; addChild(newCircleEffect); pushHeroToFront(); TweenLite.to(newCircleEffect, 0.4, {setSize:{width:80, height:80}}); TweenLite.to(newCircleEffect, 1, {autoAlpha:0}); arrayOfCircleEffects.push(newCircleEffect); } private function createParticleExplosion(_arg1, _arg2:int, _arg3:int, _arg4:uint=0):void{ var _local7:int; var _local8:int; var _local9:int; var _local10:Number; var _local11:int; var _local12:int; var _local5:int = _arg2; var _local6:int; switch (_arg3){ case 1: _local7 = 5; break; case 2: _local7 = 8; break; case 3: _local7 = 5; break; }; while (_local6 < _local5) { newParticle = new Particle(_arg3); _local8 = positiveOrNegative(); _local9 = positiveOrNegative(); newParticle.x = (_arg1.x + (((_arg1.width * Math.random()) * 0.5) * _local8)); newParticle.y = (_arg1.y + (((_arg1.height * Math.random()) * 0.5) * _local9)); newParticle.height = (newParticle.width = ((_local7 * ((Math.random() * 0.8) + 1)) + (_local5 * 0.05))); _local10 = ((Math.random() * 0.3) + 0.8); _local11 = ((newParticle.x + (((Math.random() * _local5) * 7) * _local8)) - ((screenSpeed * _local10) * 20)); _local12 = (newParticle.y + (((Math.random() * _local5) * 7) * _local9)); newParticle.rotation = (Math.random() * 360); TweenMax.to(newParticle, _local10, {transformMatrix:{x:_local11, y:_local12}}); TweenLite.to(newParticle, (_local10 - 0.1), {autoAlpha:0}); if (_arg4 != 0){ TweenMax.to(newParticle, 0, {colorTransform:{tint:_arg4, tintAmount:1}}); }; addChild(newParticle); arrayOfParticles.push(newParticle); _local6++; }; pushHUDToFront(); } public function onAddToStage(_arg1:Event):void{ Main(parent).startMainLoop(); stage.focus = stage; stage.addEventListener(KeyboardEvent.KEY_DOWN, onKeyPress, false, 0, true); stage.addEventListener(KeyboardEvent.KEY_UP, onKeyRelease, false, 0, true); stage.addEventListener(Event.DEACTIVATE, flashDeactive, false, 0, true); stage.addEventListener(Event.ACTIVATE, flashActive, false, 0, true); pauseScreen.sponsor.addEventListener(MouseEvent.CLICK, Main(parent).visitSponsor, false, 0, true); } private function pushHeroToFront():void{ setChildIndex(hero, (numChildren - 1)); pushHUDToFront(); } private function muteGame(_arg1:MouseEvent):void{ if (Main(parent).mainLoopSoundTransform.volume == 0.3){ Main(parent).mainLoopSoundTransform.volume = 0; Main(parent).soundEffectTransform.volume = 0; } else { Main(parent).mainLoopSoundTransform.volume = 0.3; Main(parent).soundEffectTransform.volume = 1; }; Main(parent).mainLoopChannel.soundTransform = Main(parent).mainLoopSoundTransform; Main(parent).soundEffectChannelNormal.soundTransform = Main(parent).soundEffectTransform; } private function createClockPowerUp():void{ if (isClockPowerUpInGame == false){ clockPowerUp = new ClockPowerUp(); addChild(clockPowerUp); clockPowerUp.x = 650; clockPowerUp.y = 60; isClockPowerUpInGame = true; }; } private function createSmoke():void{ newSmokeEffect = new SmokeEffect(); newSmokeEffect.scaleX = (newSmokeEffect.scaleY = (1 + Math.random())); newSmokeEffect.alpha = (0.9 + (Math.random() * 0.2)); newSmokeEffect.rotation = (360 * Math.random()); newSmokeEffect.x = (300 + (newSmokeEffect.width * 0.5)); if (reverseXMode){ newSmokeEffect.x = (newSmokeEffect.x * -1); }; newSmokeEffect.y = (-120 + (Math.random() * 300)); hud.addChild(newSmokeEffect); arrayOfSmokeEffects.push(newSmokeEffect); } private function flashDeactive(_arg1:Event):void{ upKeyPressed = (downKeyPressed = (leftKeyPressed = (rightKeyPressed = false))); if (isGamePaused == false){ hud.setChildIndex(pauseScreen, (hud.numChildren - 1)); Main(parent).stopMainLoop(); pauseScreen.visible = true; isGamePaused = true; }; Mouse.show(); } } }//package
Section 74
//LevelBack (LevelBack) package { import flash.display.*; public dynamic class LevelBack extends MovieClip { } }//package
Section 75
//LoadedJumpPowerSound (LoadedJumpPowerSound) package { import flash.media.*; public dynamic class LoadedJumpPowerSound extends Sound { } }//package
Section 76
//Main (Main) package { import flash.events.*; import flash.display.*; import mochi.as3.*; import flash.utils.*; import flash.media.*; import com.*; import Menus.*; import flash.net.*; import SWFStats.*; import flash.ui.*; public class Main extends Sprite { private var newObstacleSound:NewObstacleSound; private var level:Level; private var activatedJumpPowerSound:ActivatedJumpPowerSound; private var isGameMuted:Boolean;// = false private var extraTimeSound:ExtraTimeSound; private var newUpgradeSound:NewUpgradeSound; private var silenceChannel:SoundChannel; public var lastScore:int; public var mainLoopSoundTransform:SoundTransform; public var personalBestScore:int; public var soundEffectChannelNormal:SoundChannel; private var bounceSound2:BounceSound2; private var crossGateSound:CrossGateSound; private var bounceSound1:BounceSound1; public var lastTimePlaying:int; private var _timePassed:int; private var loadedJumpPowerSound:LoadedJumpPowerSound; private var popSound:PopSound; private var currentScreen; public var mainLoopChannel:SoundChannel; public var soundEffectTransform:SoundTransform; private var clockUpSound:ClockUpSound; private var _newTime:int; private var silentSoundTransform:SoundTransform; private var _oldTime:int; private var timePlayingMainLoop:Number; public var lastMultiplierLevel:int; private var loopsArePlaying:Boolean;// = false private var silenceSound:Silence; private var mainLoop:MainLoop; public function Main(){ silenceChannel = new SoundChannel(); silenceSound = new Silence(); silentSoundTransform = new SoundTransform(); soundEffectChannelNormal = new SoundChannel(); soundEffectTransform = new SoundTransform(); mainLoopChannel = new SoundChannel(); mainLoopSoundTransform = new SoundTransform(); bounceSound1 = new BounceSound1(); bounceSound2 = new BounceSound2(); crossGateSound = new CrossGateSound(); extraTimeSound = new ExtraTimeSound(); popSound = new PopSound(); loadedJumpPowerSound = new LoadedJumpPowerSound(); activatedJumpPowerSound = new ActivatedJumpPowerSound(); clockUpSound = new ClockUpSound(); newObstacleSound = new NewObstacleSound(); newUpgradeSound = new NewUpgradeSound(); mainLoop = new MainLoop(); super(); soundEffectTransform.volume = 1; silentSoundTransform.volume = 0; silenceChannel = silenceSound.play(0, 999999, silentSoundTransform); mainLoopSoundTransform.volume = 0.3; gotoNewScreen("splash"); addEventListener(Event.ADDED_TO_STAGE, onAddToStage, false, 0, true); addEventListener(Event.ENTER_FRAME, update, false, 0, true); } public function returnGameLoop():void{ mainLoopChannel = mainLoop.play(timePlayingMainLoop, 1, mainLoopSoundTransform); loopsArePlaying = true; } public function gotoNewScreen(_arg1:String):void{ var _local2:*; Mouse.show(); switch (_arg1){ case "mainMenu": _local2 = new MainMenu(); break; case "game": Log.Play(); _local2 = new Level(); break; case "instructions": _local2 = new Instructions(); break; case "gameOver": _local2 = new GameOver(); break; case "credits": _local2 = new Credits(); break; case "splash": _local2 = new Splash(); break; }; addChild(_local2); removeLastScreen(_local2); } public function stopMainLoop():void{ loopsArePlaying = false; mainLoopChannel.soundTransform = silentSoundTransform; mainLoopChannel.stop(); } private function onAddToStage(_arg1:Event):void{ MochiServices.connect("c2bb76ed9492aa36", root); stage.addEventListener(KeyboardEvent.KEY_UP, onKeyRelease, false, 0, true); } public function playSoundEffect(_arg1:String):void{ switch (_arg1){ case "bounce1": soundEffectChannelNormal = bounceSound1.play(); break; case "bounce2": soundEffectChannelNormal = bounceSound2.play(); break; case "crossGate": soundEffectChannelNormal = crossGateSound.play(); break; case "extraTime": soundEffectChannelNormal = extraTimeSound.play(); break; case "pop": soundEffectChannelNormal = popSound.play(); break; case "loadedJumpPower": soundEffectChannelNormal = loadedJumpPowerSound.play(); break; case "activatedJumpPower": soundEffectChannelNormal = activatedJumpPowerSound.play(); break; case "clockUp": soundEffectChannelNormal = clockUpSound.play(); break; case "newObstacle": soundEffectChannelNormal = newObstacleSound.play(); break; case "newUpgrade": soundEffectChannelNormal = newUpgradeSound.play(0); break; }; soundEffectChannelNormal.soundTransform = soundEffectTransform; } public function visitDeveloper(_arg1:MouseEvent):void{ var mouseEvent = _arg1; var url = "http://www.awokergames.com/"; var request:URLRequest = new URLRequest(url); try { navigateToURL(request, "_blank"); } catch(e:Error) { trace("Error occurred!"); }; uploadInfo("Visited Developer"); } private function update(_arg1:Event):void{ if (_oldTime == 0){ _oldTime = getTimer(); }; _newTime = getTimer(); _timePassed = (_newTime - _oldTime); _oldTime = _newTime; if (loopsArePlaying){ timePlayingMainLoop = (timePlayingMainLoop + _timePassed); if (timePlayingMainLoop >= mainLoop.length){ timePlayingMainLoop = (timePlayingMainLoop - mainLoop.length); mainLoopChannel = mainLoop.play(timePlayingMainLoop, 1, mainLoopSoundTransform); }; }; } public function uploadInfo(_arg1:String, _arg2:int=0):void{ if (_arg2 == 0){ Log.CustomMetric(_arg1); } else { Log.LevelCounterMetric(_arg1, _arg2); }; } public function visitSponsor(_arg1:MouseEvent):void{ var mouseEvent = _arg1; var url = "http://www.playedonline.com/?t=1&a=smiley&utm_campaign=smiley&utm_source=smiley&utm_medium=smiley"; var request:URLRequest = new URLRequest(url); try { navigateToURL(request, "_blank"); } catch(e:Error) { trace("Error occurred!"); }; uploadInfo("Visited Sponsor"); } private function onKeyRelease(_arg1:KeyboardEvent):void{ switch (_arg1.keyCode){ case KeyCodes.M: if (mainLoopSoundTransform.volume == 0.3){ mainLoopSoundTransform.volume = 0; } else { mainLoopSoundTransform.volume = 0.3; }; mainLoopChannel.soundTransform = mainLoopSoundTransform; break; case KeyCodes.N: if (soundEffectTransform.volume == 1){ soundEffectTransform.volume = 0; } else { soundEffectTransform.volume = 1; }; soundEffectChannelNormal.soundTransform = soundEffectTransform; break; }; } public function removeLastScreen(_arg1):void{ if (currentScreen != null){ removeChild(currentScreen); currentScreen = null; }; currentScreen = _arg1; } public function startMainLoop():void{ mainLoopChannel = mainLoop.play(); mainLoopChannel.soundTransform = mainLoopSoundTransform; timePlayingMainLoop = 0; loopsArePlaying = true; } } }//package
Section 77
//MainLoop (MainLoop) package { import flash.media.*; public dynamic class MainLoop extends Sound { } }//package
Section 78
//MainMenuScreen (MainMenuScreen) package { import flash.display.*; public dynamic class MainMenuScreen extends MovieClip { public var selector:MovieClip; public var sponsorButton:SimpleButton; public var logoDev:SimpleButton; public var creditsButton:SimpleButton; public var playButton:SimpleButton; } }//package
Section 79
//MyTextEffect (MyTextEffect) package { import flash.display.*; public dynamic class MyTextEffect extends MovieClip { } }//package
Section 80
//NewObstacleSound (NewObstacleSound) package { import flash.media.*; public dynamic class NewObstacleSound extends Sound { } }//package
Section 81
//NewUpgradeSound (NewUpgradeSound) package { import flash.media.*; public dynamic class NewUpgradeSound extends Sound { } }//package
Section 82
//Particle (Particle) package { import flash.display.*; public class Particle extends Sprite { private var imageTriangle:ParticleTriangle; private var imageBall:ParticleBall; private var imageStar:ParticleStar; public function Particle(_arg1:int){ switch (_arg1){ case 1: imageBall = new ParticleBall(); addChild(imageBall); break; case 2: imageStar = new ParticleStar(); addChild(imageStar); break; case 3: imageTriangle = new ParticleTriangle(); addChild(imageTriangle); break; }; } } }//package
Section 83
//ParticleBall (ParticleBall) package { import flash.display.*; public dynamic class ParticleBall extends MovieClip { } }//package
Section 84
//ParticleStar (ParticleStar) package { import flash.display.*; public dynamic class ParticleStar extends MovieClip { } }//package
Section 85
//ParticleTriangle (ParticleTriangle) package { import flash.display.*; public dynamic class ParticleTriangle extends MovieClip { } }//package
Section 86
//PauseScreen (PauseScreen) package { import flash.display.*; public dynamic class PauseScreen extends MovieClip { public var sponsor:SimpleButton; } }//package
Section 87
//PopSound (PopSound) package { import flash.media.*; public dynamic class PopSound extends Sound { } }//package
Section 88
//Preloader (Preloader) package { import flash.events.*; import flash.display.*; import flash.utils.*; public class Preloader extends MovieClip { protected var _adFinished:Boolean; private var _firstFrame:Boolean; public function Preloader(){ _firstFrame = true; _adFinished = false; addEventListener(Event.ENTER_FRAME, checkFrames); } protected function endLoading():void{ } protected function updateLoading(_arg1:Number):void{ } protected function get mainClassName():String{ return ("Main"); } protected function beginLoading():void{ } private function startup():void{ stop(); if (!_firstFrame){ endLoading(); }; var _local1:Class = (getDefinitionByName(mainClassName) as Class); if (_local1 == null){ throw (new Error((("Preloading error. There was no class matching [" + mainClassName) + "]. You may need to override Preloader::mainClassName"))); }; var _local2:DisplayObject = (new (_local1) as DisplayObject); if (_local2 == null){ throw (new Error((("Error in Preloader::startup. [" + mainClassName) + "] must inherit from Sprite or MovieClip"))); }; addChild(_local2); } private function checkFrames(_arg1:Event):void{ if ((((currentFrame == totalFrames)) && (_adFinished))){ removeEventListener(Event.ENTER_FRAME, checkFrames); startup(); return; }; if (_firstFrame){ beginLoading(); _firstFrame = false; return; }; var _local2:Number = (root.loaderInfo.bytesLoaded / root.loaderInfo.bytesTotal); updateLoading(_local2); } } }//package
Section 89
//PreloaderBase (PreloaderBase) package { import flash.display.*; import flash.text.*; public dynamic class PreloaderBase extends MovieClip { public var loadedText:TextField; public var loadBar:MovieClip; public var adBox:MovieClip; public var playButton:SimpleButton; public var logoSpo:SimpleButton; } }//package
Section 90
//Ring (Ring) package { import flash.display.*; public class Ring extends Sprite { public var colored:Boolean;// = false public var myType:int; private var speedX:Number;// = 0 public var halfWidth:Number; public var halfHeight:Number; public var imageKit:RingKit; public var valid:Boolean;// = true public function Ring(_arg1:int){ imageKit = new RingKit(); addChild(imageKit); imageKit.gotoAndStop(((_arg1 * 2) - 1)); myType = _arg1; halfHeight = (imageKit.height * 0.5); halfWidth = 10; } public function setColor():void{ colored = true; imageKit.nextFrame(); } public function update():void{ x = (x - (Level(parent).screenSpeed + speedX)); } } }//package
Section 91
//RingKit (RingKit) package { import flash.display.*; public dynamic class RingKit extends MovieClip { public var bar:MovieClip; public var arrow:MovieClip; public function RingKit(){ addFrameScript(0, this.frame1); } function frame1(){ stop(); } } }//package
Section 92
//Silence (Silence) package { import flash.media.*; public dynamic class Silence extends Sound { } }//package
Section 93
//SmokeEffect (SmokeEffect) package { import flash.display.*; public dynamic class SmokeEffect extends MovieClip { } }//package
Section 94
//SpikeBall (SpikeBall) package { import flash.display.*; public dynamic class SpikeBall extends MovieClip { } }//package
Section 95
//SpikeFloor (SpikeFloor) package { import flash.display.*; public dynamic class SpikeFloor extends MovieClip { } }//package
Section 96
//SponsorSplash (SponsorSplash) package { import flash.display.*; public dynamic class SponsorSplash extends MovieClip { public var it:MovieClip; } }//package

Library Items

Symbol 1 GraphicUsed by:26
Symbol 2 GraphicUsed by:3
Symbol 3 MovieClipUses:2Used by:26
Symbol 4 FontUsed by:5 18 20 24 25
Symbol 5 EditableTextUses:4Used by:26
Symbol 6 GraphicUsed by:7
Symbol 7 MovieClipUses:6Used by:23 26
Symbol 8 GraphicUsed by:26
Symbol 9 GraphicUsed by:26
Symbol 10 GraphicUsed by:11
Symbol 11 MovieClipUses:10Used by:26
Symbol 12 GraphicUsed by:26
Symbol 13 GraphicUsed by:14
Symbol 14 MovieClipUses:13Used by:26
Symbol 15 GraphicUsed by:16
Symbol 16 ButtonUses:15Used by:26
Symbol 17 GraphicUsed by:21
Symbol 18 TextUses:4Used by:21
Symbol 19 GraphicUsed by:21
Symbol 20 TextUses:4Used by:21
Symbol 21 ButtonUses:17 18 19 20Used by:26
Symbol 22 GraphicUsed by:23
Symbol 23 MovieClipUses:22 7Used by:26
Symbol 24 TextUses:4Used by:26
Symbol 25 TextUses:4Used by:26
Symbol 26 MovieClip {PreloaderBase} [PreloaderBase]Uses:1 3 5 7 8 9 11 12 14 16 21 23 24 25
Symbol 27 GraphicUsed by:28
Symbol 28 MovieClip {ParticleBall} [ParticleBall]Uses:27Used by:65
Symbol 29 GraphicUsed by:30 205
Symbol 30 MovieClip {ParticleStar} [ParticleStar]Uses:29Used by:65
Symbol 31 GraphicUsed by:32
Symbol 32 MovieClip {ParticleTriangle} [ParticleTriangle]Uses:31Used by:65
Symbol 33 Sound {NewObstacleSound} [NewObstacleSound]
Symbol 34 Sound {BounceSound2} [BounceSound2]
Symbol 35 Sound {BounceSound1} [BounceSound1]
Symbol 36 Sound {ActivatedJumpPowerSound} [ActivatedJumpPowerSound]
Symbol 37 Sound {CrossGateSound} [CrossGateSound]
Symbol 38 Sound {LoadedJumpPowerSound} [LoadedJumpPowerSound]
Symbol 39 Sound {Silence} [Silence]
Symbol 40 Sound {PopSound} [PopSound]
Symbol 41 Sound {ClockUpSound} [ClockUpSound]
Symbol 42 Sound {ExtraTimeSound} [ExtraTimeSound]
Symbol 43 Sound {MainLoop} [MainLoop]
Symbol 44 Sound {NewUpgradeSound} [NewUpgradeSound]
Symbol 45 GraphicUsed by:65 88 104
Symbol 46 GraphicUsed by:65
Symbol 47 GraphicUsed by:65
Symbol 48 GraphicUsed by:65
Symbol 49 FontUsed by:50 51 55 57 89 90 91 94 96 97 98 106 107 108 112 113 114 115 116 117 118 120 128 131 132 134 136 137 138 142 143 145 146 147 148 149 150 151 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 186 187 188 193 195 196 197 198 200 203 208
Symbol 50 TextUses:49Used by:65
Symbol 51 TextUses:49Used by:65
Symbol 52 GraphicUsed by:65
Symbol 53 GraphicUsed by:54
Symbol 54 MovieClipUses:53Used by:65 104
Symbol 55 TextUses:49Used by:56
Symbol 56 ButtonUses:55Used by:65
Symbol 57 TextUses:49Used by:58
Symbol 58 ButtonUses:57Used by:65
Symbol 59 GraphicUsed by:60 62
Symbol 60 MovieClipUses:59Used by:61
Symbol 61 MovieClipUses:60Used by:62
Symbol 62 ButtonUses:61 59Used by:65 103
Symbol 63 GraphicUsed by:64
Symbol 64 ButtonUses:63Used by:65 104
Symbol 65 MovieClip {MainMenuScreen} [MainMenuScreen]Uses:45 30 46 47 28 48 32 50 51 52 54 56 58 62 64
Symbol 66 GraphicUsed by:73
Symbol 67 FontUsed by:68
Symbol 68 TextUses:67Used by:73
Symbol 69 GraphicUsed by:73
Symbol 70 GraphicUsed by:71
Symbol 71 MovieClipUses:70Used by:73 86
Symbol 72 GraphicUsed by:73 86
Symbol 73 MovieClipUses:66 68 69 71 72Used by:87
Symbol 74 SoundUsed by:87
Symbol 75 SoundUsed by:87
Symbol 76 SoundUsed by:87
Symbol 77 SoundUsed by:87
Symbol 78 GraphicUsed by:87
Symbol 79 GraphicUsed by:80
Symbol 80 MovieClipUses:79Used by:87
Symbol 81 GraphicUsed by:87
Symbol 82 GraphicUsed by:86
Symbol 83 GraphicUsed by:84
Symbol 84 MovieClipUses:83Used by:86
Symbol 85 GraphicUsed by:86
Symbol 86 MovieClipUses:82 71 72 84 85Used by:87
Symbol 87 MovieClip {JBGraphics_fla.Main3_48} [JBGraphics_fla.Main3_48]Uses:73 74 75 76 77 78 80 81 86Used by:88
Symbol 88 MovieClip {SponsorSplash} [SponsorSplash]Uses:45 87
Symbol 89 TextUses:49Used by:104
Symbol 90 TextUses:49Used by:104
Symbol 91 TextUses:49Used by:104
Symbol 92 FontUsed by:93 99 100 101 102 208
Symbol 93 TextUses:92Used by:104
Symbol 94 TextUses:49Used by:95
Symbol 95 ButtonUses:94Used by:104
Symbol 96 TextUses:49Used by:104
Symbol 97 TextUses:49Used by:104
Symbol 98 TextUses:49Used by:104
Symbol 99 TextUses:92Used by:104
Symbol 100 TextUses:92Used by:104
Symbol 101 TextUses:92Used by:104
Symbol 102 TextUses:92Used by:104
Symbol 103 ButtonUses:62Used by:104 123 189
Symbol 104 MovieClip {CreditsScrenBase} [CreditsScrenBase]Uses:45 89 90 91 93 54 95 96 97 64 98 99 100 101 102 103
Symbol 105 GraphicUsed by:123
Symbol 106 TextUses:49Used by:123
Symbol 107 TextUses:49Used by:123
Symbol 108 EditableTextUses:49Used by:123
Symbol 109 GraphicUsed by:123
Symbol 110 GraphicUsed by:111
Symbol 111 MovieClipUses:110Used by:123
Symbol 112 TextUses:49Used by:123
Symbol 113 EditableTextUses:49Used by:123
Symbol 114 TextUses:49Used by:123
Symbol 115 TextUses:49Used by:123
Symbol 116 TextUses:49Used by:123
Symbol 117 EditableTextUses:49Used by:123
Symbol 118 TextUses:49Used by:119
Symbol 119 ButtonUses:118Used by:123
Symbol 120 TextUses:49Used by:121
Symbol 121 ButtonUses:120Used by:123
Symbol 122 GraphicUsed by:123
Symbol 123 MovieClip {GameOverBase} [GameOverBase]Uses:105 106 107 108 109 111 112 113 114 115 116 117 119 121 103 122
Symbol 124 BitmapUsed by:125
Symbol 125 GraphicUses:124Used by:153
Symbol 126 GraphicUsed by:127
Symbol 127 MovieClipUses:126Used by:153
Symbol 128 TextUses:49Used by:129
Symbol 129 ButtonUses:128Used by:153
Symbol 130 GraphicUsed by:153
Symbol 131 TextUses:49Used by:153
Symbol 132 TextUses:49Used by:153
Symbol 133 GraphicUsed by:153
Symbol 134 TextUses:49Used by:153
Symbol 135 GraphicUsed by:153
Symbol 136 TextUses:49Used by:153
Symbol 137 TextUses:49Used by:153
Symbol 138 TextUses:49Used by:153
Symbol 139 GraphicUsed by:140
Symbol 140 MovieClipUses:139Used by:153
Symbol 141 GraphicUsed by:153
Symbol 142 TextUses:49Used by:153
Symbol 143 TextUses:49Used by:153
Symbol 144 GraphicUsed by:153
Symbol 145 TextUses:49Used by:153
Symbol 146 TextUses:49Used by:153
Symbol 147 TextUses:49Used by:153
Symbol 148 TextUses:49Used by:153
Symbol 149 TextUses:49Used by:153
Symbol 150 TextUses:49Used by:153
Symbol 151 TextUses:49Used by:153
Symbol 152 GraphicUsed by:153
Symbol 153 MovieClip {InstructionsScreenBase} [InstructionsScreenBase]Uses:125 127 129 130 131 132 133 134 135 136 137 138 140 141 142 143 144 145 146 147 148 149 150 151 152
Symbol 154 GraphicUsed by:155
Symbol 155 MovieClip {SmokeEffect} [SmokeEffect]Uses:154
Symbol 156 GraphicUsed by:157
Symbol 157 MovieClip {LevelBack} [LevelBack]Uses:156
Symbol 158 GraphicUsed by:159
Symbol 159 MovieClip {CircleEffect} [CircleEffect]Uses:158
Symbol 160 GraphicUsed by:161
Symbol 161 MovieClip {HeroTrail} [HeroTrail]Uses:160
Symbol 162 TextUses:49Used by:178
Symbol 163 TextUses:49Used by:178
Symbol 164 TextUses:49Used by:178
Symbol 165 TextUses:49Used by:178
Symbol 166 TextUses:49Used by:178
Symbol 167 TextUses:49Used by:178
Symbol 168 TextUses:49Used by:178
Symbol 169 TextUses:49Used by:178
Symbol 170 TextUses:49Used by:178
Symbol 171 TextUses:49Used by:178
Symbol 172 TextUses:49Used by:178
Symbol 173 TextUses:49Used by:178
Symbol 174 TextUses:49Used by:178
Symbol 175 TextUses:49Used by:178
Symbol 176 TextUses:49Used by:178
Symbol 177 TextUses:49Used by:178
Symbol 178 MovieClip {MyTextEffect} [MyTextEffect]Uses:162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177
Symbol 179 GraphicUsed by:180
Symbol 180 MovieClip {ClockPowerUp} [ClockPowerUp]Uses:179
Symbol 181 GraphicUsed by:182
Symbol 182 MovieClip {SpikeFloor} [SpikeFloor]Uses:181
Symbol 183 GraphicUsed by:184
Symbol 184 MovieClip {Ceil} [Ceil]Uses:183
Symbol 185 GraphicUsed by:189
Symbol 186 TextUses:49Used by:189
Symbol 187 TextUses:49Used by:189
Symbol 188 TextUses:49Used by:189
Symbol 189 MovieClip {PauseScreen} [PauseScreen]Uses:185 186 187 188 103
Symbol 190 GraphicUsed by:191
Symbol 191 MovieClip {SpikeBall} [SpikeBall]Uses:190
Symbol 192 GraphicUsed by:194
Symbol 193 TextUses:49Used by:194
Symbol 194 MovieClipUses:192 193Used by:210
Symbol 195 EditableTextUses:49Used by:210
Symbol 196 EditableTextUses:49Used by:210
Symbol 197 EditableTextUses:49Used by:210
Symbol 198 TextUses:49Used by:205
Symbol 199 GraphicUsed by:205
Symbol 200 TextUses:49Used by:205
Symbol 201 GraphicUsed by:202
Symbol 202 MovieClipUses:201Used by:205
Symbol 203 TextUses:49Used by:205
Symbol 204 GraphicUsed by:205
Symbol 205 MovieClip {JBGraphics_fla.DoubleJumpIcon_18} [JBGraphics_fla.DoubleJumpIcon_18]Uses:29 198 199 200 202 203 204Used by:210
Symbol 206 FontUsed by:207 222
Symbol 207 EditableTextUses:206Used by:210
Symbol 208 TextUses:49 92Used by:209
Symbol 209 ButtonUses:208Used by:210
Symbol 210 MovieClip {HUD} [HUD]Uses:194 195 196 197 205 207 209
Symbol 211 GraphicUsed by:212
Symbol 212 MovieClipUses:211Used by:221
Symbol 213 GraphicUsed by:214
Symbol 214 MovieClipUses:213Used by:221
Symbol 215 GraphicUsed by:216
Symbol 216 MovieClipUses:215Used by:221
Symbol 217 GraphicUsed by:218
Symbol 218 MovieClipUses:217Used by:221
Symbol 219 GraphicUsed by:220
Symbol 220 MovieClipUses:219Used by:221
Symbol 221 MovieClip {RingKit} [RingKit]Uses:212 214 216 218 220
Symbol 222 EditableTextUses:206Used by:223
Symbol 223 MovieClip {ChangeTimeBox} [ChangeTimeBox]Uses:222
Symbol 224 GraphicUsed by:228
Symbol 225 GraphicUsed by:228
Symbol 226 GraphicUsed by:228
Symbol 227 GraphicUsed by:228
Symbol 228 MovieClip {HeroImage} [HeroImage]Uses:224 225 226 227
Symbol 229 GraphicUsed by:235
Symbol 230 GraphicUsed by:235
Symbol 231 GraphicUsed by:235
Symbol 232 GraphicUsed by:235
Symbol 233 GraphicUsed by:235
Symbol 234 GraphicUsed by:235
Symbol 235 MovieClip {BarKit} [BarKit]Uses:229 230 231 232 233 234

Instance Names

"loadBar"Symbol 26 MovieClip {PreloaderBase} [PreloaderBase] Frame 1Symbol 3 MovieClip
"loadedText"Symbol 26 MovieClip {PreloaderBase} [PreloaderBase] Frame 1Symbol 5 EditableText
"logoSpo"Symbol 26 MovieClip {PreloaderBase} [PreloaderBase] Frame 1Symbol 16 Button
"playButton"Symbol 26 MovieClip {PreloaderBase} [PreloaderBase] Frame 1Symbol 21 Button
"adBox"Symbol 26 MovieClip {PreloaderBase} [PreloaderBase] Frame 1Symbol 23 MovieClip
"selector"Symbol 65 MovieClip {MainMenuScreen} [MainMenuScreen] Frame 1Symbol 54 MovieClip
"playButton"Symbol 65 MovieClip {MainMenuScreen} [MainMenuScreen] Frame 1Symbol 56 Button
"creditsButton"Symbol 65 MovieClip {MainMenuScreen} [MainMenuScreen] Frame 1Symbol 58 Button
"sponsorButton"Symbol 65 MovieClip {MainMenuScreen} [MainMenuScreen] Frame 1Symbol 62 Button
"logoDev"Symbol 65 MovieClip {MainMenuScreen} [MainMenuScreen] Frame 1Symbol 64 Button
"it"Symbol 88 MovieClip {SponsorSplash} [SponsorSplash] Frame 1Symbol 87 MovieClip {JBGraphics_fla.Main3_48} [JBGraphics_fla.Main3_48]
"selector"Symbol 104 MovieClip {CreditsScrenBase} [CreditsScrenBase] Frame 1Symbol 54 MovieClip
"back"Symbol 104 MovieClip {CreditsScrenBase} [CreditsScrenBase] Frame 1Symbol 95 Button
"logoDev"Symbol 104 MovieClip {CreditsScrenBase} [CreditsScrenBase] Frame 1Symbol 64 Button
"sponsor"Symbol 104 MovieClip {CreditsScrenBase} [CreditsScrenBase] Frame 1Symbol 103 Button
"score"Symbol 123 MovieClip {GameOverBase} [GameOverBase] Frame 1Symbol 108 EditableText
"selector"Symbol 123 MovieClip {GameOverBase} [GameOverBase] Frame 1Symbol 111 MovieClip
"time"Symbol 123 MovieClip {GameOverBase} [GameOverBase] Frame 1Symbol 113 EditableText
"multiplier"Symbol 123 MovieClip {GameOverBase} [GameOverBase] Frame 1Symbol 113 EditableText
"bestScore"Symbol 123 MovieClip {GameOverBase} [GameOverBase] Frame 1Symbol 117 EditableText
"replay"Symbol 123 MovieClip {GameOverBase} [GameOverBase] Frame 1Symbol 119 Button
"submitScore"Symbol 123 MovieClip {GameOverBase} [GameOverBase] Frame 1Symbol 121 Button
"sponsor"Symbol 123 MovieClip {GameOverBase} [GameOverBase] Frame 1Symbol 103 Button
"selector"Symbol 153 MovieClip {InstructionsScreenBase} [InstructionsScreenBase] Frame 1Symbol 127 MovieClip
"start"Symbol 153 MovieClip {InstructionsScreenBase} [InstructionsScreenBase] Frame 1Symbol 129 Button
"sponsor"Symbol 189 MovieClip {PauseScreen} [PauseScreen] Frame 1Symbol 103 Button
"bar"Symbol 205 MovieClip {JBGraphics_fla.DoubleJumpIcon_18} [JBGraphics_fla.DoubleJumpIcon_18] Frame 2Symbol 202 MovieClip
"danger"Symbol 210 MovieClip {HUD} [HUD] Frame 1Symbol 194 MovieClip
"multiplier"Symbol 210 MovieClip {HUD} [HUD] Frame 1Symbol 195 EditableText
"points"Symbol 210 MovieClip {HUD} [HUD] Frame 1Symbol 196 EditableText
"timeLeft"Symbol 210 MovieClip {HUD} [HUD] Frame 1Symbol 197 EditableText
"doubleJumpIcon"Symbol 210 MovieClip {HUD} [HUD] Frame 1Symbol 205 MovieClip {JBGraphics_fla.DoubleJumpIcon_18} [JBGraphics_fla.DoubleJumpIcon_18]
"extraTime"Symbol 210 MovieClip {HUD} [HUD] Frame 1Symbol 207 EditableText
"mute"Symbol 210 MovieClip {HUD} [HUD] Frame 1Symbol 209 Button
"bar"Symbol 221 MovieClip {RingKit} [RingKit] Frame 1Symbol 214 MovieClip
"bar"Symbol 221 MovieClip {RingKit} [RingKit] Frame 2Symbol 216 MovieClip
"bar"Symbol 221 MovieClip {RingKit} [RingKit] Frame 3Symbol 218 MovieClip
"arrow"Symbol 221 MovieClip {RingKit} [RingKit] Frame 3Symbol 212 MovieClip
"bar"Symbol 221 MovieClip {RingKit} [RingKit] Frame 4Symbol 220 MovieClip
"field"Symbol 223 MovieClip {ChangeTimeBox} [ChangeTimeBox] Frame 1Symbol 222 EditableText

Special Tags

FileAttributes (69)Timeline Frame 1Access network only, Metadata present, AS3.
SWFMetaData (77)Timeline Frame 1457 bytes "<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#'><rdf:Description rdf:about='' xmlns ..."
ScriptLimits (65)Timeline Frame 1MaxRecursionDepth: 1000, ScriptTimeout: 60 seconds
ExportAssets (56)Timeline Frame 1Symbol 26 as "PreloaderBase"
ExportAssets (56)Timeline Frame 1Symbol 28 as "ParticleBall"
ExportAssets (56)Timeline Frame 1Symbol 30 as "ParticleStar"
ExportAssets (56)Timeline Frame 1Symbol 32 as "ParticleTriangle"
ExportAssets (56)Timeline Frame 2Symbol 33 as "NewObstacleSound"
ExportAssets (56)Timeline Frame 2Symbol 34 as "BounceSound2"
ExportAssets (56)Timeline Frame 2Symbol 35 as "BounceSound1"
ExportAssets (56)Timeline Frame 2Symbol 36 as "ActivatedJumpPowerSound"
ExportAssets (56)Timeline Frame 2Symbol 37 as "CrossGateSound"
ExportAssets (56)Timeline Frame 2Symbol 38 as "LoadedJumpPowerSound"
ExportAssets (56)Timeline Frame 2Symbol 39 as "Silence"
ExportAssets (56)Timeline Frame 2Symbol 40 as "PopSound"
ExportAssets (56)Timeline Frame 2Symbol 41 as "ClockUpSound"
ExportAssets (56)Timeline Frame 2Symbol 42 as "ExtraTimeSound"
ExportAssets (56)Timeline Frame 2Symbol 43 as "MainLoop"
ExportAssets (56)Timeline Frame 2Symbol 44 as "NewUpgradeSound"
ExportAssets (56)Timeline Frame 2Symbol 65 as "MainMenuScreen"
ExportAssets (56)Timeline Frame 2Symbol 88 as "SponsorSplash"
ExportAssets (56)Timeline Frame 2Symbol 104 as "CreditsScrenBase"
ExportAssets (56)Timeline Frame 2Symbol 123 as "GameOverBase"
ExportAssets (56)Timeline Frame 2Symbol 153 as "InstructionsScreenBase"
ExportAssets (56)Timeline Frame 2Symbol 155 as "SmokeEffect"
ExportAssets (56)Timeline Frame 2Symbol 157 as "LevelBack"
ExportAssets (56)Timeline Frame 2Symbol 159 as "CircleEffect"
ExportAssets (56)Timeline Frame 2Symbol 161 as "HeroTrail"
ExportAssets (56)Timeline Frame 2Symbol 178 as "MyTextEffect"
ExportAssets (56)Timeline Frame 2Symbol 180 as "ClockPowerUp"
ExportAssets (56)Timeline Frame 2Symbol 182 as "SpikeFloor"
ExportAssets (56)Timeline Frame 2Symbol 184 as "Ceil"
ExportAssets (56)Timeline Frame 2Symbol 189 as "PauseScreen"
ExportAssets (56)Timeline Frame 2Symbol 191 as "SpikeBall"
ExportAssets (56)Timeline Frame 2Symbol 210 as "HUD"
ExportAssets (56)Timeline Frame 2Symbol 87 as "JBGraphics_fla.Main3_48"
ExportAssets (56)Timeline Frame 2Symbol 221 as "RingKit"
ExportAssets (56)Timeline Frame 2Symbol 223 as "ChangeTimeBox"
ExportAssets (56)Timeline Frame 2Symbol 228 as "HeroImage"
ExportAssets (56)Timeline Frame 2Symbol 235 as "BarKit"
ExportAssets (56)Timeline Frame 2Symbol 205 as "JBGraphics_fla.DoubleJumpIcon_18"
SerialNumber (41)Timeline Frame 1

Labels

"JumpingBall"Frame 1
"start"Frame 2




http://swfchan.com/27/130287/info.shtml
Created: 22/2 -2019 09:32:24 Last modified: 22/2 -2019 09:32:24 Server time: 28/04 -2024 22:27:59