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

swfchan turned sixteen years old yesterday! (5may2024)

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

brain_shift.swf

This is the info page for
Flash #134532

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


Text
-200

+200

Play

How to Play

If you've reached top speed in Brain Shift, try changing gears to
Brain Shift Overdrive!

Brain   Shift Overdrive

Brain Shift

Get Ready!

3

Trial:

88/88

Continue

Game Over!

Score:

Accuracy:

<p align="left"><font face="Trebuchet MS" size="24" color="#993300" letterSpacing="0.000000" kerning="1"><b>8888 &nbsp;</b></font></p>

<p align="left"><font face="Trebuchet MS" size="16" color="#0099ff" letterSpacing="0.000000" kerning="1"><b>100%</b></font></p>

<p align="left"></p>

Click here to take a 1 minute survey and help us improve your Lumosity experience!

How To Play

The left and right arrows are
keyboard shortcuts.

Top Left
Is the number
even?

Bottom Right
Is the letter a
consonant?

Top Right
Is the letter a
vowel?

Bottom Left
Is the number
odd?

No

Yes

At the start of the game, a
letter and a number will
appear on one of the four
cards.

U4

Next

Back

If they appear on the top
left card, then answer the
question:

Is the number even?

8G

If they appear on the
bottom left card, then
answer the question:

Is the number odd?

If they appear on the top
right card, then answer the
question:

Is the letter a vowel?

If they appear on the
bottom right card, then
answer the question:

Is the letter a consonant?

The questions will
disappear, so you'll need to
remember the question for
each card.

Score:

2000

0:00

Time:

Remember

Top Left
Is the number
even?

Bottom Right
Is the letter a
consonant?

Top Right
Is the letter a
vowel?

Bottom Left
Is the number
odd?

Next

<p align="center"><font face="Consolas" size="72" color="#0099ff" letterSpacing="0.000000" kerning="1"><b>8G &nbsp;&nbsp;</b></font></p>

<p align="center"><font face="Consolas" size="72" color="#0099ff" letterSpacing="0.000000" kerning="1"><b>8G &nbsp;&nbsp;</b></font></p>

<p align="center"><font face="Consolas" size="72" color="#0099ff" letterSpacing="0.000000" kerning="1"><b>8G &nbsp;&nbsp;</b></font></p>

<p align="center"><font face="Consolas" size="72" color="#0099ff" letterSpacing="0.000000" kerning="1"><b>8G &nbsp;&nbsp;</b></font></p>

Is the letter a vowel?

Is the number even?

ActionScript [AS3]

Section 1
//MainTimeline (brain_shift_overdrive_game_fla.MainTimeline) package brain_shift_overdrive_game_fla { import flash.display.*; import com.lumoslabs.games.brainShift.*; public dynamic class MainTimeline extends MovieClip { public function MainTimeline(){ addFrameScript(0, frame1); } function frame1(){ BrainShiftOverdriveGame.main(this); } } }//package brain_shift_overdrive_game_fla
Section 2
//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 3
//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.cachedOrphan)) && (_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; _arg1.cachedOrphan = false; } public function remove(_arg1:TweenCore, _arg2:Boolean=false):void{ if (_arg1.cachedOrphan){ 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; }; }; _arg1.cachedOrphan = true; } public function get rawTime():Number{ return (this.cachedTotalTime); } } }//package com.greensock.core
Section 4
//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 data; public var timeline:SimpleTimeline; public var cachedOrphan:Boolean; 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.382; protected static var _classInitted:Boolean; public function TweenCore(_arg1:Number=0, _arg2:Object=null){ this.vars = ((_arg2)!=null) ? _arg2 : {}; this.cachedDuration = (this.cachedTotalDuration = _arg1); _delay = (this.vars.delay) ? Number(this.vars.delay) : 0; this.cachedTimeScale = (this.vars.timeScale) ? Number(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 restart(_arg1:Boolean=false, _arg2:Boolean=true):void{ this.reversed = false; this.paused = false; this.setTotalTime((_arg1) ? -(_delay) : 0, _arg2); } public function get duration():Number{ return (this.cachedDuration); } 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 invalidate():void{ } public function complete(_arg1:Boolean=false, _arg2:Boolean=false):void{ if (!_arg1){ renderTime(this.totalDuration, _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 get reversed():Boolean{ return (this.cachedReversed); } public function get totalTime():Number{ return (this.cachedTotalTime); } 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{ this.gc = !(_arg1); if (_arg1){ this.active = Boolean(((((!(this.cachedPaused)) && ((this.cachedTotalTime > 0)))) && ((this.cachedTotalTime < this.cachedTotalDuration)))); if (((!(_arg2)) && (this.cachedOrphan))){ this.timeline.addChild(this); }; } else { this.active = false; if (((!(_arg2)) && (!(this.cachedOrphan)))){ this.timeline.remove(this, true); }; }; return (false); } } }//package com.greensock.core
Section 5
//Linear (com.greensock.easing.Linear) package com.greensock.easing { public class Linear { public static const power:uint = 0; public static function easeOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return ((((_arg3 * _arg1) / _arg4) + _arg2)); } public static function easeIn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return ((((_arg3 * _arg1) / _arg4) + _arg2)); } public static function easeNone(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return ((((_arg3 * _arg1) / _arg4) + _arg2)); } public static function easeInOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return ((((_arg3 * _arg1) / _arg4) + _arg2)); } } }//package com.greensock.easing
Section 6
//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 7
//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 8
//TweenPlugin (com.greensock.plugins.TweenPlugin) package com.greensock.plugins { import com.greensock.core.*; import com.greensock.*; 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 9
//OverwriteManager (com.greensock.OverwriteManager) package com.greensock { import com.greensock.core.*; import flash.utils.*; import flash.errors.*; 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.02; 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.1){ 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 = OverwriteManager; 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.cachedStartTime + 1E-10); var _local9:Array = []; var _local10:Array = []; var _local11:uint; var _local12:uint; _local5 = _arg3.length; while (--_local5 > -1) { _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.cachedStartTime <= _local8)) && ((((_local7.cachedStartTime + _local7.totalDuration) + 1E-10) > _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.cachedStartTime); _local18 = _local18.timeline; }; _local8 = (_local14 * _local15); _local5 = _local11; while (--_local5 > -1) { _local16 = _local10[_local5]; _local14 = _local16.cachedTimeScale; _local15 = _local16.cachedStartTime; _local18 = _local16.timeline; while (_local18) { _local14 = (_local14 * _local18.cachedTimeScale); _local15 = (_local15 + _local18.cachedStartTime); _local18 = _local18.timeline; }; _local17 = (_local14 * _local15); if ((((_local17 <= _local8)) && ((((((_local17 + (_local16.totalDuration * _local14)) + 1E-10) > _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 > -1) { _local7 = _local9[_local5]; if (_local7.killVars(_arg2)){ _local6 = true; }; if ((((_local7.cachedPT1 == null)) && (_local7.initted))){ _local7.setEnabled(false, false); }; }; } else { while (--_local5 > -1) { if (TweenLite(_local9[_local5]).setEnabled(false, false)){ _local6 = true; }; }; }; return (_local6); } } }//package com.greensock
Section 10
//TweenLite (com.greensock.TweenLite) package com.greensock { import flash.display.*; import com.greensock.core.*; import flash.events.*; 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.36; 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)) && (this.vars.timeScale))){ 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 > -1) { 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) && (!((_arg1 == _overwrittenProps))))){ _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 > -1) { _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 > -1) { 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 11
//TweenMax (com.greensock.TweenMax) package com.greensock { import flash.display.*; import com.greensock.core.*; import flash.events.*; 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.37; 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) ? int(this.vars.repeat) : 0; _repeatDelay = (this.vars.repeatDelay) ? Number(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 (((this.vars.timeScale) && (!((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:int; var _local12:int; var _local13: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){ _local11 = _cyclesComplete; _cyclesComplete = int((this.cachedTotalTime / _local10)); if (_cyclesComplete == (this.cachedTotalTime / _local10)){ _cyclesComplete--; }; if (_local11 != _cyclesComplete){ _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){ _local12 = _easePower; _local13 = (this.cachedTime / this.cachedDuration); if (_easeType == 2){ _local13 = (1 - _local13); this.ratio = _local13; while (--_local12 > -1) { this.ratio = (_local13 * this.ratio); }; this.ratio = (1 - this.ratio); } else { if (_easeType == 1){ this.ratio = _local13; while (--_local12 > -1) { this.ratio = (_local13 * this.ratio); }; } else { if (_local13 < 0.5){ _local13 = (_local13 * 2); this.ratio = _local13; while (--_local12 > -1) { this.ratio = (_local13 * this.ratio); }; this.ratio = (this.ratio * 0.5); } else { _local13 = ((1 - _local13) * 2); this.ratio = _local13; while (--_local12 > -1) { this.ratio = (_local13 * 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 > -1) { 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 > -1) { _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 > -1) { _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) ? Number(this.vars.repeat) : 0; _repeatDelay = (this.vars.repeatDelay) ? Number(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 > -1) { 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 > -1) { _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 > -1) { _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 > -1) { _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 > -1) { _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 > -1) { 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 = (("delay" in vars)) ? 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); } } }//package com.greensock
Section 12
//AbstractGameEvent (com.lumoslabs.framework.events.AbstractGameEvent) package com.lumoslabs.framework.events { import flash.events.*; import com.lumoslabs.framework.*; public class AbstractGameEvent extends Event { protected var aManagedGame:ManagedGame; public function AbstractGameEvent(_arg1:ManagedGame, _arg2:String){ super(_arg2); aManagedGame = _arg1; } public function get managedGame():ManagedGame{ return (aManagedGame); } } }//package com.lumoslabs.framework.events
Section 13
//GameControlEvent (com.lumoslabs.framework.events.GameControlEvent) package com.lumoslabs.framework.events { import com.lumoslabs.framework.*; public class GameControlEvent extends AbstractGameEvent { protected var helpActive:Boolean; protected var pauseEnabled:Boolean; protected var pauseActive:Boolean; protected var muteActive:Boolean; public static const GAME_CONTROL:String = "gameControl"; public function GameControlEvent(_arg1:ManagedGame, _arg2:Boolean, _arg3:Boolean, _arg4:Boolean, _arg5:Boolean){ super(_arg1, GAME_CONTROL); this.helpActive = _arg2; this.pauseActive = _arg3; this.muteActive = _arg4; this.pauseEnabled = _arg5; } public function get pauseEnable():Boolean{ return (pauseEnabled); } public function get help():Boolean{ return (helpActive); } public function get mute():Boolean{ return (muteActive); } public function get pause():Boolean{ return (pauseActive); } } }//package com.lumoslabs.framework.events
Section 14
//GameDataEvent (com.lumoslabs.framework.events.GameDataEvent) package com.lumoslabs.framework.events { import com.lumoslabs.framework.*; public class GameDataEvent extends AbstractGameEvent { protected var gameDataHash:Object; public static const GAME_DATA:String = "gameData"; public function GameDataEvent(_arg1:ManagedGame, _arg2:Object){ super(_arg1, GAME_DATA); this.gameDataHash = _arg2; } public function get dataHash():Object{ return (gameDataHash); } } }//package com.lumoslabs.framework.events
Section 15
//GamePauseEnabledEvent (com.lumoslabs.framework.events.GamePauseEnabledEvent) package com.lumoslabs.framework.events { import flash.events.*; public class GamePauseEnabledEvent extends Event { private var _pauseEnabled:Boolean; public static const PAUSE_ENABLED:String = "gamePauseEnabled"; public function GamePauseEnabledEvent(_arg1:String, _arg2:Boolean){ super(_arg1); this._pauseEnabled = _arg2; } public function get pauseEnabled():Boolean{ return (this._pauseEnabled); } } }//package com.lumoslabs.framework.events
Section 16
//GamePlayEvent (com.lumoslabs.framework.events.GamePlayEvent) package com.lumoslabs.framework.events { import com.lumoslabs.framework.*; public class GamePlayEvent extends AbstractGameEvent { public static const GAME_PLAY:String = "gamePlay"; public function GamePlayEvent(_arg1:ManagedGame){ super(_arg1, GAME_PLAY); } } }//package com.lumoslabs.framework.events
Section 17
//GamePromoEvent (com.lumoslabs.framework.events.GamePromoEvent) package com.lumoslabs.framework.events { import com.lumoslabs.framework.*; public class GamePromoEvent extends AbstractGameEvent { public static const GAME_PROMO:String = "gamePromo"; public function GamePromoEvent(_arg1:ManagedGame){ super(_arg1, GAME_PROMO); } } }//package com.lumoslabs.framework.events
Section 18
//GameQuitEvent (com.lumoslabs.framework.events.GameQuitEvent) package com.lumoslabs.framework.events { import com.lumoslabs.framework.*; public class GameQuitEvent extends AbstractGameEvent { public static const GAME_QUIT:String = "gameQuit"; public function GameQuitEvent(_arg1:ManagedGame){ super(_arg1, GAME_QUIT); } } }//package com.lumoslabs.framework.events
Section 19
//AbstractGame (com.lumoslabs.framework.AbstractGame) package com.lumoslabs.framework { import flash.display.*; import flash.events.*; import com.lumoslabs.framework.events.*; public class AbstractGame extends EventDispatcher implements ManagedGame { protected var fullScreen:Boolean; protected var pauseActive:Boolean; protected var controlPanel:Boolean; protected var pauseEnabled:Boolean; protected var parentDisObjCon:DisplayObjectContainer; protected var soundEffects:AbstractSoundEffects; protected var muteActive:Boolean; public function AbstractGame(_arg1:DisplayObjectContainer=null, _arg2:Boolean=true){ if (_arg1){ this.parentDisObjCon = _arg1; if (_arg1.stage){ _arg1.stage.tabChildren = false; _arg1.stage.align = StageAlign.TOP_LEFT; _arg1.stage.scaleMode = StageScaleMode.NO_SCALE; }; }; fullScreen = false; controlPanel = true; pauseActive = false; muteActive = false; pauseEnabled = false; setDefaultSettings(); initGame(); if (_arg2){ GameRegistrar.registerManagedGame(this); }; } public function help():void{ pauseActive = false; pauseEnabled = false; dispatchEvent(new GameControlEvent(this, true, pauseActive, muteActive, pauseEnabled)); } protected function setDefaultSettings():void{ } public function destroy():void{ soundEffects.stopAll(); } protected function reportPlay():void{ dispatchEvent(new GamePlayEvent(this)); } protected function enablePause(_arg1:Boolean):void{ this.pauseEnabled = _arg1; dispatchEvent(new GamePauseEnabledEvent(GamePauseEnabledEvent.PAUSE_ENABLED, _arg1)); } public function mute():void{ trace("AbstractGame: MUTE IS DEPRECATED!"); } public function hasControlPanel():Boolean{ return (controlPanel); } protected function reportQuit():void{ dispatchEvent(new GameQuitEvent(this)); } public function addSettings(_arg1:Object):void{ } public function isFullScreen():Boolean{ return (fullScreen); } public function start():void{ } protected function initGame():void{ } public function pause():void{ pauseActive = !(pauseActive); if (pauseActive){ soundEffects.pause(); } else { soundEffects.unpause(); }; dispatchEvent(new GameControlEvent(this, false, pauseActive, muteActive, pauseEnabled)); } protected function reportData(_arg1:Object):void{ dispatchEvent(new GameDataEvent(this, _arg1)); } protected function reportPromo():void{ dispatchEvent(new GamePromoEvent(this)); } protected function initPlay():void{ } } }//package com.lumoslabs.framework
Section 20
//AbstractSoundEffects (com.lumoslabs.framework.AbstractSoundEffects) package com.lumoslabs.framework { import flash.media.*; import flash.events.*; import flash.utils.*; public class AbstractSoundEffects { protected var pauseChannelDict:Dictionary; protected var loopChannelDict:Dictionary; protected var soundDict:Dictionary; protected var transform:SoundTransform; protected var volumeDict:Dictionary; protected var loopDict:Dictionary; public function AbstractSoundEffects(){ transform = new SoundTransform(); volumeDict = new Dictionary(); loopDict = new Dictionary(); loopChannelDict = new Dictionary(); pauseChannelDict = new Dictionary(); soundDict = new Dictionary(); } public function unpause():void{ var _local1:Sound; var _local2:SoundChannel; for each (_local2 in pauseChannelDict) { _local1 = soundDict[_local2]; delete loopChannelDict[_local1]; delete soundDict[_local2]; playSound(_local1, _local2.position); }; pauseChannelDict = new Dictionary(); } public function mute():void{ transform.volume = 0; SoundMixer.soundTransform = transform; } protected function getDeleteChannelFunction(_arg1:SoundChannel):Function{ var channel = _arg1; return (function (_arg1:Event):void{ delete soundDict[channel]; }); } protected function getReplayFunction(_arg1:Sound, _arg2:SoundChannel):Function{ var sound = _arg1; var channel = _arg2; return (function (_arg1:Event):void{ delete loopChannelDict[sound]; delete soundDict[channel]; playLoopSound(sound); }); } public function playSoundByName(_arg1:String, _arg2:Number=0, _arg3:Number=1):void{ var _local4:Sound = new ((getDefinitionByName(_arg1) as Class)); playSound(_local4, _arg2, _arg3); } protected function stopNoLoopSound(_arg1:Sound):void{ var _local2:*; for (_local2 in soundDict) { if (soundDict[_local2] == _arg1){ _local2.stop(); delete soundDict[_local2]; }; }; } protected function stopLoopSound(_arg1:Sound):void{ var _local2:SoundChannel; if ((loopChannelDict[_arg1] is SoundChannel)){ _local2 = loopChannelDict[_arg1]; _local2.stop(); delete loopChannelDict[_arg1]; delete soundDict[_local2]; }; } protected function addEnumerableSounds(_arg1:Object, _arg2:Number=1, _arg3:Boolean=false):void{ var _local4:Sound; for each (_local4 in _arg1) { addSound(_local4, _arg2, _arg3); }; } protected function addSound(_arg1:Sound, _arg2:Number=1, _arg3:Boolean=false):void{ volumeDict[_arg1] = _arg2; loopDict[_arg1] = _arg3; } public function unmute():void{ transform.volume = 1; SoundMixer.soundTransform = transform; } protected function playNoLoopSound(_arg1:Sound, _arg2:Number=0, _arg3:Number=1):void{ if (volumeDict[_arg1] == undefined){ transform.volume = _arg3; } else { transform.volume = volumeDict[_arg1]; }; var _local4:SoundChannel = _arg1.play(_arg2, 0, transform); if (_local4 != null){ soundDict[_local4] = _arg1; _local4.addEventListener(Event.SOUND_COMPLETE, getDeleteChannelFunction(_local4)); }; } protected function playLoopSound(_arg1:Sound, _arg2:Number=0, _arg3:Number=1):void{ var _local4:SoundChannel; if (loopChannelDict[_arg1] == undefined){ if (volumeDict[_arg1] == undefined){ transform.volume = _arg3; } else { transform.volume = volumeDict[_arg1]; }; _local4 = _arg1.play(_arg2, 0, transform); if (_local4 != null){ loopChannelDict[_arg1] = _local4; soundDict[_local4] = _arg1; _local4.addEventListener(Event.SOUND_COMPLETE, getReplayFunction(_arg1, _local4)); }; }; } protected function playSound(_arg1:Sound, _arg2:Number=0, _arg3:Number=1):void{ if (loopDict[_arg1]){ playLoopSound(_arg1, _arg2, _arg3); } else { playNoLoopSound(_arg1, _arg2, _arg3); }; } protected function stopSound(_arg1:Sound):void{ if (loopDict[_arg1]){ stopLoopSound(_arg1); } else { stopNoLoopSound(_arg1); }; } public function pause():void{ var _local1:*; SoundMixer.stopAll(); for (_local1 in soundDict) { pauseChannelDict[_local1] = _local1; }; } public function stopAll():void{ SoundMixer.stopAll(); loopChannelDict = new Dictionary(); pauseChannelDict = new Dictionary(); soundDict = new Dictionary(); } } }//package com.lumoslabs.framework
Section 21
//GameManager (com.lumoslabs.framework.GameManager) package com.lumoslabs.framework { public interface GameManager { function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void; function setupGame(_arg1:ManagedGame):void; } }//package com.lumoslabs.framework
Section 22
//GameRegistrar (com.lumoslabs.framework.GameRegistrar) package com.lumoslabs.framework { public class GameRegistrar { private static var _gameManager:GameManager; public static function getGameManager():GameManager{ return (_gameManager); } public static function registerManagedGame(_arg1:ManagedGame):void{ trace(("GameRegistrar: registerManagedGame: " + _arg1)); if (_gameManager != null){ _gameManager.setupGame(_arg1); } else { _arg1.start(); }; } public static function registerGameManager(_arg1:GameManager):void{ trace(("GameRegistrar: registerGameManager: " + _arg1)); if (_gameManager != null){ trace(("GameRegistrar: registering a new GameManager, although already had: " + _gameManager)); }; _gameManager = _arg1; } } }//package com.lumoslabs.framework
Section 23
//ManagedGame (com.lumoslabs.framework.ManagedGame) package com.lumoslabs.framework { public interface ManagedGame { function help():void; function start():void; function addSettings(_arg1:Object):void; function isFullScreen():Boolean; function pause():void; function hasControlPanel():Boolean; function mute():void; function destroy():void; function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void; } }//package com.lumoslabs.framework
Section 24
//EndScreen (com.lumoslabs.games.brainShift.screens.EndScreen) package com.lumoslabs.games.brainShift.screens { import flash.display.*; import flash.events.*; import flash.text.*; public class EndScreen extends Sprite { public var correctField:TextField; public var continueButton:SimpleButton; public var surveyButton:SimpleButton; public var scoreField:TextField; public function EndScreen(_arg1:Function, _arg2:Function){ var continueClick = _arg1; var surveyClick = _arg2; super(); continueButton.addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent):void{ continueClick(); }); surveyButton.addEventListener(MouseEvent.CLICK, surveyClick, false, 0, true); surveyButton.visible = false; } public function showSurveyButton(_arg1:Boolean=true):void{ surveyButton.visible = _arg1; } public function setScoreText(_arg1:Object):void{ scoreField.text = String(_arg1); } public function setCorrectText(_arg1:Object):void{ correctField.text = String(_arg1); } } }//package com.lumoslabs.games.brainShift.screens
Section 25
//HelpScreen (com.lumoslabs.games.brainShift.screens.HelpScreen) package com.lumoslabs.games.brainShift.screens { import flash.display.*; import flash.events.*; public class HelpScreen extends MovieClip { public var animation:MovieClip; public var playButton:SimpleButton; public function HelpScreen(_arg1:Function):void{ var playGame = _arg1; super(); reset(); playButton.addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent):void{ playGame(); }); } public function start():void{ animation.gotoAndPlay(1); } public function reset():void{ animation.gotoAndStop(1); } } }//package com.lumoslabs.games.brainShift.screens
Section 26
//OverdriveHelpScreen (com.lumoslabs.games.brainShift.screens.OverdriveHelpScreen) package com.lumoslabs.games.brainShift.screens { import flash.display.*; import flash.events.*; public class OverdriveHelpScreen extends HelpScreen { public var nextButton:SimpleButton; public var backButton:SimpleButton; protected var helpFrame:int; public function OverdriveHelpScreen(_arg1:Function):void{ super(_arg1); nextButton.addEventListener(MouseEvent.CLICK, nextClick); backButton.addEventListener(MouseEvent.CLICK, backClick); } protected function backClick(_arg1:MouseEvent):void{ helpFrame = Math.max((helpFrame - 1), 1); showFrame(helpFrame); } override public function start():void{ reset(); } protected function nextClick(_arg1:MouseEvent):void{ helpFrame = Math.min((helpFrame + 1), totalFrames); showFrame(helpFrame); } protected function showFrame(_arg1:int):void{ gotoAndStop(_arg1); switch (_arg1){ case 1: nextButton.visible = true; backButton.visible = false; break; case 6: nextButton.visible = false; backButton.visible = true; break; default: nextButton.visible = true; backButton.visible = true; break; }; } override public function reset():void{ helpFrame = 1; showFrame(helpFrame); } } }//package com.lumoslabs.games.brainShift.screens
Section 27
//OverdriveStartScreen (com.lumoslabs.games.brainShift.screens.OverdriveStartScreen) package com.lumoslabs.games.brainShift.screens { import flash.display.*; import flash.events.*; import flash.net.*; public class OverdriveStartScreen extends StartScreen { public var hyperlinkButton:SimpleButton; public function OverdriveStartScreen(_arg1:Function, _arg2:Function, _arg3:URLRequest){ var help = _arg1; var playGame = _arg2; var hyperlinkURLRequest = _arg3; super(help, playGame); hyperlinkButton.addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent):void{ navigateToURL(hyperlinkURLRequest); }); } } }//package com.lumoslabs.games.brainShift.screens
Section 28
//PlayScreen (com.lumoslabs.games.brainShift.screens.PlayScreen) package com.lumoslabs.games.brainShift.screens { import flash.display.*; import flash.events.*; import com.greensock.*; import com.lumoslabs.games.brainShift.*; import com.lumoslabs.util.*; import com.lumoslabs.ui.*; public class PlayScreen extends Sprite { public var scoreDisplay:ScoreDisplay; public var noButton:SimpleButton; protected var bonusFilterArray:Array; public var secondCountdown:SecondCountdown; public var instructions:Instructions; protected var screenInstructionsShown:Boolean; public var background:Sprite; public var yesButton:SimpleButton; protected static const INSTRUCT_INTRO_TEXT:String = "Remember"; protected static const INSTRUCT_TEXT:String = "Reminder"; protected static const INSTRUCT_FADE_TIME:Number = 0.5; public function PlayScreen(_arg1:Function):void{ var inputResponse = _arg1; super(); yesButton.addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent):void{ inputResponse(true); }); noButton.addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent):void{ inputResponse(false); }); bonusFilterArray = background.filters; showBonus(false); showInstructions(false); } public function showInstructions(_arg1:Boolean):void{ TweenMax.killTweensOf(instructions); screenInstructionsShown = _arg1; instructions.visible = _arg1; instructions.alpha = 1; } public function fadeInInstructions(_arg1:Boolean):void{ if (!screenInstructionsShown){ TweenMax.killTweensOf(instructions); if (_arg1){ instructions.textField.text = INSTRUCT_INTRO_TEXT; } else { instructions.textField.text = INSTRUCT_TEXT; }; screenInstructionsShown = true; instructions.visible = true; instructions.alpha = 0; TweenMax.to(instructions, INSTRUCT_FADE_TIME, {autoAlpha:1}); }; } public function disableButtons():void{ yesButton.mouseEnabled = false; noButton.mouseEnabled = false; } public function setTime(_arg1:Number, _arg2:Function=null):void{ secondCountdown.setTime(_arg1, _arg2); } public function addCard(_arg1:TrialCard):void{ background.addChild(_arg1); } public function pauseCountdown():void{ secondCountdown.pause(); } public function setScoreText(_arg1:Object):void{ scoreDisplay.textField.text = String(_arg1); } public function showBonus(_arg1:Boolean):void{ if (_arg1){ background.filters = bonusFilterArray; } else { background.filters = null; }; } public function get instructionsShown():Boolean{ return (screenInstructionsShown); } public function startCountdown():void{ secondCountdown.start(); } public function resetCountdown():void{ secondCountdown.reset(); } public function removeCard(_arg1:TrialCard):void{ Display.removeIfChild(background, _arg1); } public function fadeOutInstructions():void{ if (screenInstructionsShown){ TweenMax.killTweensOf(instructions); screenInstructionsShown = false; instructions.visible = true; instructions.alpha = 1; TweenMax.to(instructions, INSTRUCT_FADE_TIME, {autoAlpha:0}); }; } public function unpauseCountdown():void{ secondCountdown.unpause(); } public function enableButtons():void{ yesButton.mouseEnabled = true; noButton.mouseEnabled = true; } } }//package com.lumoslabs.games.brainShift.screens
Section 29
//StartScreen (com.lumoslabs.games.brainShift.screens.StartScreen) package com.lumoslabs.games.brainShift.screens { import flash.display.*; import flash.events.*; public class StartScreen extends Sprite { public var helpButton:SimpleButton; public var playButton:SimpleButton; public function StartScreen(_arg1:Function, _arg2:Function){ var help = _arg1; var playGame = _arg2; super(); helpButton.addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent):void{ help(); }); playButton.addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent):void{ playGame(); }); } } }//package com.lumoslabs.games.brainShift.screens
Section 30
//BrainShiftGame (com.lumoslabs.games.brainShift.BrainShiftGame) package com.lumoslabs.games.brainShift { import flash.display.*; import flash.events.*; import com.lumoslabs.framework.*; import com.greensock.*; import flash.net.*; import com.lumoslabs.util.*; import flash.utils.*; import com.greensock.easing.*; import com.greensock.plugins.*; import com.lumoslabs.games.brainShift.screens.*; import com.lumoslabs.ui.*; import flash.ui.*; public class BrainShiftGame extends AbstractGame { protected var trialTime:int; protected var aidedCorrectTrials:int; protected var helpScreen:HelpScreen; protected var score:int; protected var keyInputEnabled:Boolean; protected var correctTrials:int; protected var feedbackSprite:Sprite; protected var endScreen:EndScreen; protected var aidedResponseTimeArray:Array; protected var surveyURL:String; protected var aidedResponses:int; protected var correctLetter:int; protected var playScreen:PlayScreen; protected var showInstructions:Boolean; protected var trialCard:TrialCard; protected var responseTimeArray:Array; protected var time:Number; protected var responses:int; protected var correctNumber:int; protected var readyCountdown:ReadyCountdown; protected var pointsFeedbackSprite; protected var bonusIndex:int; protected var startScreen:StartScreen; protected var consCorrect:int; protected static const READY_TIME:Number = 3; protected static const INSTRUCT_START_TIME:Number = 0.5; protected static const POINTS_DELTA_Y:Number = -30; protected static const GREEN_CHECK_SPRITE:Sprite = new GreenCheck(); protected static const TRIAL_DELAY:Number = 0.3; protected static const POINTS_TWEEN_TIME:Number = 1; protected static const INSTRUCT_CONS_CORRECT:int = 3; protected static const WIDTH:Number = 640; protected static const HEIGHT:Number = 480; protected static const RED_X_SPRITE:Sprite = new RedX(); protected static const INSTRUCT_TYPE_CORRECT:int = 2; protected static const READY_COUNTDOWN_X:int = 320; protected static const READY_COUNTDOWN_Y:int = 200; protected static const CORRECT_POINTS_ARRAY:Array = [25, 50, 100]; protected static const INCORRECT_POINTS:int = -25; protected static const POINTS_FEEDBACK_X:int = 320; protected static const POINTS_FEEDBACK_Y:int = 175; protected static const BONUS_CONS_CORRECT:int = 5; protected static const CONS_CORRECT_ARRAY:Array = [2, 3]; public function BrainShiftGame(_arg1:DisplayObjectContainer):void{ super(_arg1); } protected function enableInput():void{ parentDisObjCon.stage.addEventListener(KeyboardEvent.KEY_DOWN, keyDownListener, false, 0, true); parentDisObjCon.stage.focus = parentDisObjCon.stage; playScreen.enableButtons(); } protected function endReady():void{ playScreen.removeChild(readyCountdown); TweenMax.delayedCall(INSTRUCT_START_TIME, startTrials); } protected function addPoints(_arg1:int):void{ score = Math.max((score + _arg1), 0); playScreen.setScoreText(score); TweenMax.killTweensOf(pointsFeedbackSprite); Display.removeIfChild(playScreen, pointsFeedbackSprite); if (_arg1 > 0){ pointsFeedbackSprite = new CorrectPointsFeedback(); pointsFeedbackSprite.textField.text = ("+" + _arg1); } else { pointsFeedbackSprite = new IncorrectPointsFeedback(); pointsFeedbackSprite.textField.text = _arg1; }; pointsFeedbackSprite.x = POINTS_FEEDBACK_X; pointsFeedbackSprite.y = POINTS_FEEDBACK_Y; playScreen.addChild(pointsFeedbackSprite); TweenMax.to(pointsFeedbackSprite, POINTS_TWEEN_TIME, {y:POINTS_DELTA_Y.toString(), alpha:0, ease:Linear.easeNone, onComplete:Display.removeIfChild, onCompleteParams:[playScreen, pointsFeedbackSprite]}); } protected function keyDownListener(_arg1:KeyboardEvent):void{ if (keyInputEnabled){ keyInputEnabled = false; if (_arg1.keyCode == Keyboard.RIGHT){ inputResponse(true); } else { if (_arg1.keyCode == Keyboard.LEFT){ inputResponse(false); }; }; }; } protected function enableKeyUp():void{ parentDisObjCon.stage.addEventListener(KeyboardEvent.KEY_UP, keyUpListener, false, 0, true); } protected function startTrials():void{ playScreen.startCountdown(); enablePause(true); enableKeyUp(); nextTrial(); } override protected function initGame():void{ TweenPlugin.activate([AutoAlphaPlugin]); startScreen = new StartScreen(help, playGame); playScreen = new PlayScreen(inputResponse); helpScreen = new HelpScreen(playGame); endScreen = new EndScreen(reportQuit, surveyClick); readyCountdown = new ReadyCountdown(); readyCountdown.x = READY_COUNTDOWN_X; readyCountdown.y = READY_COUNTDOWN_Y; readyCountdown.setTime(READY_TIME, endReady); soundEffects = new BrainShiftSoundEffects(); } protected function showFeedback(_arg1:Sprite):void{ this.feedbackSprite = _arg1; trialCard.addChild(_arg1); } protected function inputResponse(_arg1:Boolean):void{ disableInput(); var _local2:int = (getTimer() - trialTime); responses++; responseTimeArray.push(_local2); if (playScreen.instructionsShown){ aidedResponses++; aidedResponseTimeArray.push(_local2); }; if (trialCard.correctResponse == _arg1){ correctTrials++; consCorrect++; if (playScreen.instructionsShown){ aidedCorrectTrials++; }; if ((((bonusIndex < CONS_CORRECT_ARRAY.length)) && ((consCorrect == CONS_CORRECT_ARRAY[bonusIndex])))){ bonusIndex++; sounds.stopBonusSound(); sounds.playBonusSound(); } else { sounds.playCorrectSound(); }; if (trialCard.responseType == TrialCard.NUMBER_RESPONSE){ correctNumber++; } else { correctLetter++; }; addPoints(CORRECT_POINTS_ARRAY[bonusIndex]); showFeedback(GREEN_CHECK_SPRITE); } else { playScreen.showBonus(false); consCorrect = 0; bonusIndex = 0; sounds.playIncorrectSound(); addPoints(INCORRECT_POINTS); showFeedback(RED_X_SPRITE); }; TweenMax.delayedCall(TRIAL_DELAY, nextTrial); } protected function keyUpListener(_arg1:KeyboardEvent):void{ keyInputEnabled = true; } override public function help():void{ super.help(); sounds.stopAll(); disableInput(); disableKeyUp(); readyCountdown.reset(); playScreen.resetCountdown(); TweenMax.killAll(); Display.removeIfChildren(parentDisObjCon, startScreen, helpScreen, playScreen, endScreen); Display.removeIfChild(playScreen, pointsFeedbackSprite); playScreen.removeCard(trialCard); parentDisObjCon.addChild(helpScreen); helpScreen.start(); } protected function get sounds():BrainShiftSoundEffects{ return (BrainShiftSoundEffects(soundEffects)); } override protected function setDefaultSettings():void{ time = 60; surveyURL = null; } protected function disableInput():void{ parentDisObjCon.stage.removeEventListener(KeyboardEvent.KEY_DOWN, keyDownListener); playScreen.disableButtons(); } protected function disableKeyUp():void{ parentDisObjCon.stage.removeEventListener(KeyboardEvent.KEY_UP, keyUpListener); } protected function playGame():void{ reportPlay(); initPlay(); parentDisObjCon.addChild(playScreen); playScreen.fadeInInstructions(true); readyCountdown.start(); } override public function start():void{ initPlay(); parentDisObjCon.addChild(startScreen); } protected function nextTrial():void{ playScreen.removeCard(trialCard); Display.removeIfChild(trialCard, feedbackSprite); trialCard = new TrialCard(trialCard, (consCorrect == 0)); playScreen.addCard(trialCard); playScreen.showBonus((bonusIndex > 0)); if (((((((showInstructions) && ((correctNumber >= INSTRUCT_TYPE_CORRECT)))) && ((correctLetter >= INSTRUCT_TYPE_CORRECT)))) && ((consCorrect >= INSTRUCT_CONS_CORRECT)))){ showInstructions = false; }; if (((showInstructions) || ((consCorrect < INSTRUCT_CONS_CORRECT)))){ playScreen.fadeInInstructions(false); } else { playScreen.fadeOutInstructions(); }; trialTime = getTimer(); enableInput(); } override public function addSettings(_arg1:Object):void{ if (_arg1 == null){ trace("BrainShiftGame, null settingsHash passed, defaults used"); } else { if (_arg1.time == undefined){ trace(("BrainShiftGame, no time passed, default used: " + time)); } else { time = Number(_arg1.time); }; if ((((_arg1.survey_url == undefined)) || ((_arg1.survey_url == "")))){ trace(("BrainShiftGame, no survey_url passed, default used: " + surveyURL)); } else { surveyURL = String(_arg1.survey_url); }; }; } protected function surveyClick(_arg1:Event=undefined):void{ if (surveyURL != null){ navigateToURL(new URLRequest(surveyURL)); }; } protected function endGame():void{ enablePause(false); disableInput(); disableKeyUp(); TweenMax.killAll(); endScreen.setScoreText(score); if (responses == 0){ endScreen.setCorrectText("0%"); } else { endScreen.setCorrectText((Math.round(((100 * correctTrials) / responses)) + "%")); }; parentDisObjCon.removeChild(playScreen); parentDisObjCon.addChild(endScreen); var _local1:int = ArrayHelper.averageInt(responseTimeArray); var _local2:int = ArrayHelper.averageInt(aidedResponseTimeArray); reportData({score:score, num_correct:correctTrials, num_tries:responses, response_time:_local1, aided_num_correct:aidedCorrectTrials, aided_num_tries:aidedResponses, aided_response_time:_local2}); } override public function pause():void{ super.pause(); if (pauseActive){ disableInput(); playScreen.pauseCountdown(); TweenMax.pauseAll(true, true); playScreen.removeCard(trialCard); } else { enableInput(); playScreen.unpauseCountdown(); TweenMax.resumeAll(true, true); playScreen.addCard(trialCard); }; } override public function destroy():void{ super.destroy(); TweenMax.killAll(); enablePause(false); disableInput(); disableKeyUp(); helpScreen.reset(); readyCountdown.reset(); playScreen.resetCountdown(); Display.removeIfChildren(parentDisObjCon, startScreen, helpScreen, playScreen, endScreen); parentDisObjCon = null; readyCountdown = null; soundEffects = null; startScreen = null; helpScreen = null; playScreen = null; endScreen = null; } override protected function initPlay():void{ Display.removeIfChildren(parentDisObjCon, startScreen, playScreen, helpScreen, endScreen); Display.removeIfChild(playScreen, pointsFeedbackSprite); playScreen.setTime(time, endGame); playScreen.removeCard(trialCard); helpScreen.reset(); disableInput(); disableKeyUp(); responses = 0; aidedResponses = 0; correctTrials = 0; aidedCorrectTrials = 0; consCorrect = 0; bonusIndex = 0; score = 0; responseTimeArray = new Array(); aidedResponseTimeArray = new Array(); correctNumber = 0; correctLetter = 0; showInstructions = true; keyInputEnabled = true; playScreen.setScoreText(score); playScreen.resetCountdown(); playScreen.showInstructions(false); playScreen.showBonus(false); playScreen.addChild(readyCountdown); endScreen.showSurveyButton(!((surveyURL == null))); } public static function main(_arg1:DisplayObjectContainer):void{ var _local2:ManagedGame = new BrainShiftGame(_arg1); } } }//package com.lumoslabs.games.brainShift
Section 31
//BrainShiftOverdriveGame (com.lumoslabs.games.brainShift.BrainShiftOverdriveGame) package com.lumoslabs.games.brainShift { import flash.display.*; import com.lumoslabs.framework.*; import com.greensock.*; import flash.net.*; import com.lumoslabs.util.*; import flash.utils.*; import com.greensock.plugins.*; import com.lumoslabs.games.brainShift.screens.*; import com.lumoslabs.ui.*; public class BrainShiftOverdriveGame extends BrainShiftGame { protected var correctEven:int; protected var correctOdd:int; protected var hyperlinkURLRequest:URLRequest; protected var correctConsonant:int; protected var correctVowel:int; public function BrainShiftOverdriveGame(_arg1:DisplayObjectContainer):void{ super(_arg1); } override protected function setDefaultSettings():void{ time = 60; hyperlinkURLRequest = new URLRequest("/games/brain-shift"); surveyURL = null; } override protected function nextTrial():void{ playScreen.removeCard(trialCard); Display.removeIfChild(trialCard, feedbackSprite); trialCard = new OverdriveTrialCard(trialCard, (consCorrect == 0)); playScreen.addCard(trialCard); playScreen.showBonus((bonusIndex > 0)); if (((((((((((showInstructions) && ((correctEven >= INSTRUCT_TYPE_CORRECT)))) && ((correctOdd >= INSTRUCT_TYPE_CORRECT)))) && ((correctVowel >= INSTRUCT_TYPE_CORRECT)))) && ((correctConsonant >= INSTRUCT_TYPE_CORRECT)))) && ((consCorrect >= INSTRUCT_CONS_CORRECT)))){ showInstructions = false; }; if (((showInstructions) || ((consCorrect < INSTRUCT_CONS_CORRECT)))){ playScreen.fadeInInstructions(false); } else { playScreen.fadeOutInstructions(); }; trialTime = getTimer(); enableInput(); } override protected function initGame():void{ TweenPlugin.activate([AutoAlphaPlugin]); startScreen = new OverdriveStartScreen(help, playGame, hyperlinkURLRequest); playScreen = new PlayScreen(inputResponse); helpScreen = new OverdriveHelpScreen(playGame); endScreen = new EndScreen(reportQuit, surveyClick); readyCountdown = new ReadyCountdown(); readyCountdown.x = READY_COUNTDOWN_X; readyCountdown.y = READY_COUNTDOWN_Y; readyCountdown.setTime(READY_TIME, endReady); soundEffects = new BrainShiftSoundEffects(); } override public function addSettings(_arg1:Object):void{ if (_arg1 == null){ trace("BrainShiftOverdriveGame, null settingsHash passed, defaults used"); } else { if (_arg1.time == undefined){ trace(("BrainShiftOverdriveGame, no time passed, default used: " + time)); } else { time = Number(_arg1.time); }; if (_arg1.hyperlink_url == undefined){ trace(("BrainShiftOverdriveGame, no hyperlink_url passed, default used: " + hyperlinkURLRequest.url)); } else { hyperlinkURLRequest.url = _arg1.hyperlink_url; }; if ((((_arg1.survey_url == undefined)) || ((_arg1.survey_url == "")))){ trace(("BrainShiftOverdriveGame, no survey_url passed, default used: " + surveyURL)); } else { surveyURL = String(_arg1.survey_url); }; }; } override protected function initPlay():void{ super.initPlay(); correctEven = 0; correctOdd = 0; correctVowel = 0; correctConsonant = 0; } override protected function inputResponse(_arg1:Boolean):void{ disableInput(); var _local2:int = (getTimer() - trialTime); responses++; responseTimeArray.push(_local2); if (playScreen.instructionsShown){ aidedResponses++; aidedResponseTimeArray.push(_local2); }; if (trialCard.correctResponse == _arg1){ correctTrials++; consCorrect++; if (playScreen.instructionsShown){ aidedCorrectTrials++; }; if ((((bonusIndex < CONS_CORRECT_ARRAY.length)) && ((consCorrect == CONS_CORRECT_ARRAY[bonusIndex])))){ bonusIndex++; sounds.stopBonusSound(); sounds.playBonusSound(); } else { sounds.playCorrectSound(); }; switch (trialCard.responseType){ case OverdriveTrialCard.EVEN_RESPONSE: correctNumber++; correctEven++; break; case OverdriveTrialCard.ODD_RESPONSE: correctNumber++; correctOdd++; break; case OverdriveTrialCard.VOWEL_RESPONSE: correctLetter++; correctVowel++; break; case OverdriveTrialCard.CONSONANT_RESPONSE: correctLetter++; correctConsonant++; break; default: break; }; addPoints(CORRECT_POINTS_ARRAY[bonusIndex]); showFeedback(GREEN_CHECK_SPRITE); } else { playScreen.showBonus(false); consCorrect = 0; bonusIndex = 0; sounds.playIncorrectSound(); addPoints(INCORRECT_POINTS); showFeedback(RED_X_SPRITE); }; TweenMax.delayedCall(TRIAL_DELAY, nextTrial); } public static function main(_arg1:DisplayObjectContainer):void{ var _local2:ManagedGame = new BrainShiftOverdriveGame(_arg1); } } }//package com.lumoslabs.games.brainShift
Section 32
//BrainShiftSoundEffects (com.lumoslabs.games.brainShift.BrainShiftSoundEffects) package com.lumoslabs.games.brainShift { import flash.media.*; import com.lumoslabs.framework.*; public class BrainShiftSoundEffects extends AbstractSoundEffects { protected var bonusSound:Sound; protected var correctSound:Sound; protected var incorrectSound:Sound; public function BrainShiftSoundEffects(){ bonusSound = new Bonus(); correctSound = new Correct(); incorrectSound = new Incorrect(); super(); addSound(bonusSound, 0.5); addSound(correctSound, 0.5); addSound(incorrectSound, 0.5); } public function stopBonusSound():void{ stopNoLoopSound(bonusSound); } public function playCorrectSound():void{ playNoLoopSound(correctSound); } public function playBonusSound():void{ playNoLoopSound(bonusSound); } public function playIncorrectSound():void{ playNoLoopSound(incorrectSound); } } }//package com.lumoslabs.games.brainShift
Section 33
//OverdriveTrialCard (com.lumoslabs.games.brainShift.OverdriveTrialCard) package com.lumoslabs.games.brainShift { import com.lumoslabs.util.*; import flash.text.*; public class OverdriveTrialCard extends TrialCard { public var bottomLeftField:TextField; public var bottomRightField:TextField; public var topRightField:TextField; protected var textFieldHash:Object; public var topLeftField:TextField; public static const CONSONANT_RESPONSE:String = "consonantResponse"; public static const ODD_RESPONSE:String = "oddResponse"; public static const EVEN_RESPONSE:String = "evenResponse"; public static const VOWEL_RESPONSE:String = "vowelResponse"; public function OverdriveTrialCard(_arg1:TrialCard, _arg2:Boolean){ super(_arg1, _arg2); } override protected function setupStimulus():void{ trialStimulus = new String(); switch (trialResponseType){ case EVEN_RESPONSE: addRandomStimulus(correctResponse, Random.bool()); break; case ODD_RESPONSE: addRandomStimulus(!(correctResponse), Random.bool()); break; case VOWEL_RESPONSE: addRandomStimulus(Random.bool(), correctResponse); break; case CONSONANT_RESPONSE: addRandomStimulus(Random.bool(), !(correctResponse)); break; default: break; }; } override protected function init(_arg1:TrialCard, _arg2:Boolean):void{ textFieldHash = {evenResponse:topLeftField, oddResponse:bottomLeftField, vowelResponse:topRightField, consonantResponse:bottomRightField}; if (_arg1 == null){ trialResponseType = Random.element([EVEN_RESPONSE, ODD_RESPONSE, VOWEL_RESPONSE, CONSONANT_RESPONSE]); trialCorrectResponse = Random.bool(); setupStimulus(); showField(); } else { if (_arg2){ trialResponseType = _arg1.responseType; } else { trialResponseType = Random.element([EVEN_RESPONSE, ODD_RESPONSE, VOWEL_RESPONSE, CONSONANT_RESPONSE]); }; trialCorrectResponse = Random.bool(); do { setupStimulus(); } while (trialStimulus == _arg1.stimulus); showField(); }; } protected function showField():void{ var _local1:TextField; for each (_local1 in textFieldHash) { _local1.visible = false; }; _local1 = textFieldHash[trialResponseType]; _local1.text = trialStimulus; _local1.visible = true; } } }//package com.lumoslabs.games.brainShift
Section 34
//TrialCard (com.lumoslabs.games.brainShift.TrialCard) package com.lumoslabs.games.brainShift { import flash.display.*; import com.lumoslabs.util.*; import flash.text.*; public class TrialCard extends Sprite { public var topField:TextField; public var bottomField:TextField; protected var trialStimulus:String; protected var trialResponseType:String; protected var trialCorrectResponse:Boolean; public static const NUMBER_RESPONSE:String = "numberResponse"; public static const LETTER_RESPONSE:String = "letterResponse"; protected static var ODD_ARRAY:Array = [3, 5, 7, 9]; protected static var CONSONANT_ARRAY:Array = ["G", "K", "M", "R"]; protected static var EVEN_ARRAY:Array = [2, 4, 6, 8]; protected static var VOWEL_ARRAY:Array = ["A", "E", "I", "U"]; public function TrialCard(_arg1:TrialCard, _arg2:Boolean){ init(_arg1, _arg2); } protected function setupStimulus():void{ trialStimulus = new String(); if (trialResponseType == NUMBER_RESPONSE){ addRandomStimulus(trialCorrectResponse, Random.bool()); topField.text = trialStimulus; bottomField.visible = false; } else { addRandomStimulus(Random.bool(), trialCorrectResponse); bottomField.text = trialStimulus; topField.visible = false; }; } public function get correctResponse():Boolean{ return (trialCorrectResponse); } protected function addRandomLetter(_arg1:Boolean):void{ if (_arg1){ trialStimulus = (trialStimulus + Random.element(VOWEL_ARRAY)); } else { trialStimulus = (trialStimulus + Random.element(CONSONANT_ARRAY)); }; } protected function addRandomStimulus(_arg1:Boolean, _arg2:Boolean):void{ if (Random.bool()){ addRandomNumber(_arg1); addRandomLetter(_arg2); } else { addRandomLetter(_arg2); addRandomNumber(_arg1); }; } protected function addRandomNumber(_arg1:Boolean):void{ if (_arg1){ trialStimulus = (trialStimulus + Random.element(EVEN_ARRAY)); } else { trialStimulus = (trialStimulus + Random.element(ODD_ARRAY)); }; } protected function init(_arg1:TrialCard, _arg2:Boolean):void{ if (_arg1 == null){ trialResponseType = Random.element([NUMBER_RESPONSE, LETTER_RESPONSE]); trialCorrectResponse = Random.bool(); setupStimulus(); } else { if (_arg2){ trialResponseType = _arg1.trialResponseType; } else { trialResponseType = Random.element([NUMBER_RESPONSE, LETTER_RESPONSE]); }; trialCorrectResponse = Random.bool(); do { setupStimulus(); } while (trialStimulus == _arg1.trialStimulus); }; } public function get stimulus():String{ return (trialStimulus); } public function get responseType():String{ return (trialResponseType); } } }//package com.lumoslabs.games.brainShift
Section 35
//MinSecCountdown (com.lumoslabs.ui.MinSecCountdown) package com.lumoslabs.ui { import flash.display.*; public class MinSecCountdown extends SecondCountdown { protected var order:int; public function MinSecCountdown(_arg1:int=0, _arg2:String="", _arg3:DisplayObject=null){ super(_arg1, _arg2, _arg3); } override public function init(_arg1:int=0, _arg2:String="", _arg3:DisplayObject=null):void{ order = Math.pow(10, getDisplayPlaces(_arg1)); super.init(_arg1, _arg2, _arg3); } override protected function updateDisplay():void{ var _local1:Number = Math.floor((timeLeft / 60000)); var _local2:Number = ((timeLeft - (_local1 * 60000)) / 1000); if (_local2 < 10){ timeField.text = (_local1 + ":0"); } else { timeField.text = (_local1 + ":"); }; if (displayPlaces == 0){ timeField.appendText(((Math.floor(_local2) + " ") + unitText)); } else { timeField.appendText((((Math.floor((_local2 * order)) / order).toFixed(displayPlaces) + " ") + unitText)); }; } } }//package com.lumoslabs.ui
Section 36
//ReadyCountdown (com.lumoslabs.ui.ReadyCountdown) package com.lumoslabs.ui { import flash.display.*; import com.greensock.*; import fl.motion.easing.*; import flash.text.*; public class ReadyCountdown extends SecondCountdown { protected var timePrevDisplay:int; public var timeBox; protected static const TWEEN_TIME:Number = 1; public function ReadyCountdown(_arg1:DisplayObject=null){ super(0, new String(), _arg1); } override protected function setupTimeField():void{ timeField = TextField(timeBox.timeField); } override protected function updateDisplay():void{ var _local1:int = Math.ceil((timeLeft / 1000)); timeField.text = String(_local1); if (((displayRunning) && (!((_local1 == timePrevDisplay))))){ timePrevDisplay = _local1; timeBox.scaleX = 1; timeBox.scaleY = 1; timeBox.alpha = 1; TweenMax.to(timeBox, TWEEN_TIME, {scaleX:0.1, scaleY:0.1, alpha:0, ease:Back.easeIn, easeParams:[3]}); }; } override public function reset():void{ timePrevDisplay = 0; super.reset(); } } }//package com.lumoslabs.ui
Section 37
//SecondCountdown (com.lumoslabs.ui.SecondCountdown) package com.lumoslabs.ui { import flash.display.*; import flash.events.*; import flash.utils.*; public class SecondCountdown extends SecondDisplay { protected var onCompleteParams:Array; protected var timeLeft:int; protected var onComplete:Function; public function SecondCountdown(_arg1:int=0, _arg2:String="", _arg3:DisplayObject=null){ super(_arg1, _arg2, _arg3); } override public function get time():Number{ return ((timeLeft / 1000)); } override public function reset():void{ timeLeft = timeTotal; timePaused = 0; timeAdded = 0; stop(); } override protected function updateTime(_arg1:Event):void{ var _local2:int = ((((timeTotal + timePaused) + timeAdded) - getTimer()) + startTime); timeDelta = (_local2 - timeLeft); timeLeft = _local2; if (timeLeft <= 0){ endCountdown(); } else { updateDisplay(); }; if (onUpdate != null){ onUpdate.apply(null, onUpdateParams); }; } override protected function updateDisplay():void{ if (displayPlaces == 0){ timeField.text = ((Math.ceil((timeLeft / 1000)) + " ") + unitText); } else { timeField.text = (((timeLeft / 1000).toFixed(displayPlaces) + " ") + unitText); }; } protected function endCountdown():void{ timeLeft = 0; stop(); if (onComplete != null){ onComplete.apply(null, onCompleteParams); }; } public function setTime(_arg1:Number, _arg2:Function=null, ... _args):void{ timeTotal = Math.round((_arg1 * 1000)); this.onComplete = _arg2; this.onCompleteParams = _args; reset(); } } }//package com.lumoslabs.ui
Section 38
//SecondDisplay (com.lumoslabs.ui.SecondDisplay) package com.lumoslabs.ui { import flash.display.*; import flash.events.*; import flash.utils.*; import flash.text.*; public class SecondDisplay extends Sprite { protected var onUpdate:Function; protected var startTime:int; protected var unitText:String; protected var timePaused:int; protected var displayRunning:Boolean; protected var enterFrameDisObj:DisplayObject; protected var timeDelta:int; public var timeField:TextField; protected var onUpdateParams:Array; protected var timeAdded:int; protected var lastPauseTime:int; protected var timeTotal:int; protected var displayPlaces:int; protected static const MAX_DISPLAY_PLACES:int = 20; protected static const MIN_DISPLAY_PLACES:int = 0; public function SecondDisplay(_arg1:int=0, _arg2:String="", _arg3:DisplayObject=null){ setupTimeField(); if (_arg3 == null){ init(_arg1, _arg2, this); } else { init(_arg1, _arg2, _arg3); }; } public function unpause():void{ if (displayRunning){ timePaused = (timePaused + (getTimer() - lastPauseTime)); enterFrameDisObj.addEventListener(Event.ENTER_FRAME, updateTime); }; } public function pause():void{ if (displayRunning){ lastPauseTime = getTimer(); enterFrameDisObj.removeEventListener(Event.ENTER_FRAME, updateTime); updateDisplay(); }; } public function stop():void{ displayRunning = false; enterFrameDisObj.removeEventListener(Event.ENTER_FRAME, updateTime); updateDisplay(); } public function get time():Number{ return ((timeTotal / 1000)); } public function addTime(_arg1:Number):void{ timeAdded = (timeAdded + Math.round((_arg1 * 1000))); } protected function setupTimeField():void{ } public function init(_arg1:int=0, _arg2:String="", _arg3:DisplayObject=null):void{ this.displayPlaces = getDisplayPlaces(_arg1); this.unitText = _arg2; if (_arg3 != null){ this.enterFrameDisObj = _arg3; }; reset(); } protected function updateTime(_arg1:Event):void{ var _local2:int = (((getTimer() - startTime) + timeAdded) - timePaused); timeDelta = (_local2 - timeTotal); timeTotal = _local2; updateDisplay(); if (onUpdate != null){ onUpdate.apply(null, onUpdateParams); }; } public function reset():void{ timeTotal = 0; timePaused = 0; timeAdded = 0; timeDelta = 0; stop(); } public function start():void{ reset(); displayRunning = true; startTime = getTimer(); enterFrameDisObj.addEventListener(Event.ENTER_FRAME, updateTime); } public function get deltaTime():Number{ return ((timeDelta / 1000)); } public function setUpdateCallback(_arg1:Function=null, _arg2:Array=null):void{ this.onUpdate = _arg1; this.onUpdateParams = _arg2; } protected function updateDisplay():void{ if (displayPlaces == 0){ timeField.text = ((Math.round((timeTotal / 1000)) + " ") + unitText); } else { timeField.text = (((timeTotal / 1000).toFixed(displayPlaces) + " ") + unitText); }; } public function get running():Boolean{ return (displayRunning); } protected static function getDisplayPlaces(_arg1:int):int{ return (Math.max(Math.min(_arg1, MAX_DISPLAY_PLACES), MIN_DISPLAY_PLACES)); } } }//package com.lumoslabs.ui
Section 39
//ArrayHelper (com.lumoslabs.util.ArrayHelper) package com.lumoslabs.util { public class ArrayHelper { private static var element; private static var equals:Function; public static function popIndex(_arg1:Array, _arg2:int){ return (_arg1.splice(_arg2, 1)[0]); } public static function remove(_arg1:Array, _arg2):void{ var _local3:int = _arg1.length; while (_local3--) { if (_arg1[_local3] == _arg2){ _arg1.splice(_local3, 1); }; }; } public static function averageNumber(_arg1:Array):Number{ var _local3:Number; var _local2:Number = 0; for each (_local3 in _arg1) { _local2 = (_local2 + _local3); }; _local2 = (_local2 / _arg1.length); return (_local2); } public static function setForEach(_arg1:Array, _arg2:Object):void{ var _local3:Object; var _local4:String; for each (_local3 in _arg1) { for (_local4 in _arg2) { _local3[_local4] = _arg2[_local4]; }; }; } public static function forEach(_arg1:Array, _arg2:Object, _arg3:Object):void{ var _local4:String; var _local5:Object; for each (_local5 in _arg1) { for (_local4 in _arg2) { _local5[_local4] = _arg2[_local4]; }; for (_local4 in _arg3) { _local5[_local4].apply(null, _arg3[_local4]); }; }; } private static function simpleCompare(_arg1, _arg2):int{ if (_arg1 < _arg2){ return (-1); }; if (_arg1 > _arg2){ return (1); }; return (0); } public static function callForEach(_arg1:Array, _arg2:Object):void{ var _local3:Object; var _local4:String; for each (_local3 in _arg1) { for (_local4 in _arg2) { _local3[_local4].apply(null, _arg2[_local4]); }; }; } public static function uniqueSortOn(_arg1:Array, _arg2:Object, _arg3:Object=null):Array{ removeDuplicates(_arg1); return (_arg1.sortOn(_arg2, _arg3)); } public static function uniqueSort(_arg1:Array, ... _args):Array{ removeDuplicates(_arg1); return (_arg1.sort.apply(null, _args)); } public static function uniqueSortFun(_arg1:Array, _arg2:Function, ... _args):Array{ removeDuplicatesFun(_arg1, _arg2); return (_arg1.sort.apply(null, _args)); } public static function uniqueSortOnFun(_arg1:Array, _arg2:Function, _arg3:Object, _arg4:Object=null):Array{ removeDuplicatesFun(_arg1, _arg2); return (_arg1.sortOn(_arg3, _arg4)); } public static function averageInt(_arg1:Array):int{ return (Math.round(averageNumber(_arg1))); } public static function removeDuplicatesFun(_arg1:Array, _arg2:Function):void{ equals = _arg2; var _local3:Array = _arg1.splice(0); var _local4:int = _local3.length; var _local5:int; while (_local5 < _local4) { element = _local3[_local5]; if (!_arg1.some(equalsElement)){ _arg1.push(element); }; _local5++; }; } private static function equalsElement(_arg1, _arg2:int, _arg3:Array):Boolean{ return (equals(element, _arg1)); } public static function containsBSFun(_arg1:Array, _arg2, _arg3:Function):Boolean{ var _local5:int; var _local7:Boolean; var _local4:int; var _local6:int = (_arg1.length - 1); var _local8:Boolean; while (_local8) { if ((_local4 + 1) == _local6){ _local7 = (((_arg3(_arg2, _arg1[_local4]) == 0)) || ((_arg3(_arg2, _arg1[_local6]) == 0))); _local8 = false; } else { _local5 = Math.round(((_local4 + _local6) / 2)); if (_arg3(_arg2, _arg1[_local5]) > 0){ _local4 = _local5; } else { _local6 = _local5; }; }; }; return (_local7); } public static function containsBS(_arg1:Array, _arg2):Boolean{ return (containsBSFun(_arg1, _arg2, simpleCompare)); } public static function findFirst(_arg1:Array, _arg2:Function){ var _local3:* = null; var _local4:int; while (_local4 < _arg1.length) { if (_arg2(_arg1[_local4])){ _local3 = _arg1[_local4]; break; }; _local4++; }; return (_local3); } public static function transposeMatrix(_arg1:Array):Array{ var _local3:Array; var _local4:int; var _local5:int; var _local2:Array = new Array(); if (_arg1.length > 0){ _local3 = _arg1[0]; _local4 = 0; while (_local4 < _local3.length) { _local2[_local4] = new Array(); _local4++; }; _local5 = 0; while (_local5 < _arg1.length) { _local3 = _arg1[_local5]; _local4 = 0; while (_local4 < _local3.length) { _local2[_local4][_local5] = _local3[_local4]; _local4++; }; _local5++; }; }; return (_local2); } public static function removeDuplicates(_arg1:Array):void{ var _local2:Array = _arg1.splice(0); var _local3:int = _local2.length; var _local4:int; while (_local4 < _local3) { element = _local2[_local4]; if (_arg1.indexOf(element) < 0){ _arg1.push(element); }; _local4++; }; } public static function removeFun(_arg1:Array, _arg2, _arg3:Function):void{ var _local4:int = _arg1.length; while (_local4--) { if (_arg3(_arg1[_local4], _arg2)){ _arg1.splice(_local4, 1); }; }; } } }//package com.lumoslabs.util
Section 40
//Display (com.lumoslabs.util.Display) package com.lumoslabs.util { import flash.display.*; import flash.geom.*; public class Display { public static const VIOLET:Number = 15631086; public static const WHITE:Number = 0xFFFFFF; public static const BROWN:Number = 0x964B00; public static const ORANGE:Number = 0xFF7F00; public static const PURPLE:Number = 0x800080; public static const BLUE:Number = 0xFF; public static const GREY:Number = 0x808080; public static const GREEN:Number = 0xFF00; public static const BLACK:Number = 0; public static const YELLOW:Number = 0xFFFF00; public static const RED:Number = 0xFF0000; public static function remove(_arg1:DisplayObject):void{ if (((!((_arg1 == null))) && (!((_arg1.parent == null))))){ _arg1.parent.removeChild(_arg1); }; } public static function alignBottomToY(_arg1:DisplayObject, _arg2:DisplayObject, _arg3:Number=0):void{ var _local4:Point = new Point(0, _arg3); alignBoundsTo(_arg1, _arg2, _local4, false, true, 0, 1); } public static function alignTop(_arg1:DisplayObject, _arg2:DisplayObject):void{ var _local3:Rectangle = getBoundsExclude(_arg2, _arg2, _arg1); var _local4:Point = new Point(0, _local3.y); alignBoundsTo(_arg1, _arg2, _local4, false, true, 0, 0); } public static function alignTopToY(_arg1:DisplayObject, _arg2:DisplayObject, _arg3:Number=0):void{ var _local4:Point = new Point(0, _arg3); alignBoundsTo(_arg1, _arg2, _local4, false, true, 0, 0); } public static function alignRight(_arg1:DisplayObject, _arg2:DisplayObject):void{ var _local3:Rectangle = getBoundsExclude(_arg2, _arg2, _arg1); var _local4:Point = new Point(_local3.right, 0); alignBoundsTo(_arg1, _arg2, _local4, true, false, 1); } public static function removeAllChildren(_arg1:DisplayObjectContainer):void{ if (_arg1 != null){ while (_arg1.numChildren > 0) { _arg1.removeChildAt(0); }; }; } public static function alignBottom(_arg1:DisplayObject, _arg2:DisplayObject):void{ var _local3:Rectangle = getBoundsExclude(_arg2, _arg2, _arg1); var _local4:Point = new Point(0, _local3.bottom); alignBoundsTo(_arg1, _arg2, _local4, false, true, 0, 1); } public static function centerX(_arg1:DisplayObject, _arg2:DisplayObject):void{ var _local3:Rectangle = getBoundsExclude(_arg2, _arg2, _arg1); var _local4:Point = new Point((_local3.x + (0.5 * _local3.width)), 0); alignBoundsTo(_arg1, _arg2, _local4, true, false); } public static function stopAllClips(_arg1:DisplayObjectContainer):void{ var _local3:DisplayObjectContainer; var _local4:MovieClip; var _local5:DisplayObjectContainer; var _local6:int; var _local2:Array = [_arg1]; while (_local2.length > 0) { _local3 = _local2.shift(); _local4 = (_local3 as MovieClip); if (_local4 != null){ _local4.stop(); }; _local6 = 0; while (_local6 < _local3.numChildren) { _local5 = (_local3.getChildAt(_local6) as DisplayObjectContainer); if (_local5 != null){ _local2.push(_local5); }; _local6++; }; }; } public static function alignRightToX(_arg1:DisplayObject, _arg2:DisplayObject, _arg3:Number=0):void{ var _local4:Point = new Point(_arg3, 0); alignBoundsTo(_arg1, _arg2, _local4, true, false, 1); } public static function centerToX(_arg1:DisplayObject, _arg2:DisplayObject, _arg3:Number=0):void{ var _local4:Point = new Point(_arg3, 0); alignBoundsTo(_arg1, _arg2, _local4, true, false); } public static function centerToY(_arg1:DisplayObject, _arg2:DisplayObject, _arg3:Number=0):void{ var _local4:Point = new Point(0, _arg3); alignBoundsTo(_arg1, _arg2, _local4, false, true); } public static function centerY(_arg1:DisplayObject, _arg2:DisplayObject):void{ var _local3:Rectangle = getBoundsExclude(_arg2, _arg2, _arg1); var _local4:Point = new Point(0, (_local3.y + (0.5 * _local3.height))); alignBoundsTo(_arg1, _arg2, _local4, false, true); } public static function alignLeft(_arg1:DisplayObject, _arg2:DisplayObject):void{ var _local3:Rectangle = getBoundsExclude(_arg2, _arg2, _arg1); var _local4:Point = new Point(_local3.x, 0); alignBoundsTo(_arg1, _arg2, _local4, true, false, 0); } public static function moveToY(_arg1:DisplayObject, _arg2:DisplayObject, _arg3:Number=0, _arg4:Number=0):void{ var _local5:Point = new Point(0, _arg3); var _local6:Point = new Point(0, _arg4); moveTo(_arg1, _arg2, _local5, _local6, false, true); } protected static function getBoundsExclude(_arg1:DisplayObject, _arg2:DisplayObject, _arg3:DisplayObject):Rectangle{ var _local5:DisplayObjectContainer; var _local6:int; var _local7:Rectangle; var _local4:DisplayObjectContainer = (_arg1 as DisplayObjectContainer); if (((_local4) && (_local4.contains(_arg3)))){ _local5 = _arg3.parent; _local6 = _local5.getChildIndex(_arg3); _local5.removeChild(_arg3); _local7 = _arg1.getBounds(_arg2); _local5.addChildAt(_arg3, _local6); return (_local7); }; return (_arg1.getBounds(_arg2)); } public static function centerTo(_arg1:DisplayObject, _arg2:DisplayObject, _arg3:Point=null):void{ alignBoundsTo(_arg1, _arg2, _arg3); } public static function moveTo(_arg1:DisplayObject, _arg2:DisplayObject, _arg3:Point=null, _arg4:Point=null, _arg5:Boolean=true, _arg6:Boolean=true):void{ if (_arg3 == null){ _arg3 = new Point(); }; if (_arg4 == null){ _arg4 = new Point(); }; var _local7:Point = new Point(); _local7 = _arg1.localToGlobal(_local7); _arg3 = _arg1.localToGlobal(_arg3); _arg4 = _arg2.localToGlobal(_arg4); if (_arg1.parent){ _local7 = _arg1.parent.globalToLocal(_local7); _arg3 = _arg1.parent.globalToLocal(_arg3); _arg4 = _arg1.parent.globalToLocal(_arg4); }; if (_arg5){ _arg1.x = (_arg4.x + (_local7.x - _arg3.x)); }; if (_arg6){ _arg1.y = (_arg4.y + (_local7.y - _arg3.y)); }; } public static function replace(_arg1:DisplayObject, _arg2:DisplayObject):void{ if (_arg1.parent != null){ if (_arg1 != _arg2){ _arg2.x = _arg1.x; _arg2.y = _arg1.y; _arg2.rotation = _arg1.rotation; _arg1.parent.addChild(_arg2); _arg1.parent.swapChildren(_arg1, _arg2); _arg1.parent.removeChild(_arg1); } else { trace("Display, replace, argument DisplayObjects are equal"); }; } else { trace("Display, replace, first argument DisplayObject has no parent"); }; } public static function alignBoundsTo(_arg1:DisplayObject, _arg2:DisplayObject, _arg3:Point=null, _arg4:Boolean=true, _arg5:Boolean=true, _arg6:Number=0.5, _arg7:Number=0.5):void{ var _local9:Rectangle; var _local10:Point; var _local11:Point; if (_arg3 == null){ _arg3 = new Point(); }; var _local8:Point = new Point(); _local8 = _arg1.localToGlobal(_local8); _arg3 = _arg2.localToGlobal(_arg3); if (_arg1.parent){ _local8 = _arg1.parent.globalToLocal(_local8); _arg3 = _arg1.parent.globalToLocal(_arg3); _local9 = getBoundsExclude(_arg1, _arg1.parent, _arg2); _local10 = _local9.topLeft; _local11 = _local9.bottomRight; } else { _local9 = getBoundsExclude(_arg1, _arg1, _arg2); _local10 = _arg1.localToGlobal(_local9.topLeft); _local11 = _arg1.localToGlobal(_local9.bottomRight); }; if (_arg4){ _arg6 = ((_arg6 < 0)) ? 0 : ((_arg6 > 1)) ? 1 : _arg6; _arg1.x = ((_arg3.x + (_local8.x - _local10.x)) - (_arg6 * (_local11.x - _local10.x))); }; if (_arg5){ _arg7 = ((_arg7 < 0)) ? 0 : ((_arg7 > 1)) ? 1 : _arg7; _arg1.y = ((_arg3.y + (_local8.y - _local10.y)) - (_arg7 * (_local11.y - _local10.y))); }; } public static function moveToX(_arg1:DisplayObject, _arg2:DisplayObject, _arg3:Number=0, _arg4:Number=0):void{ var _local5:Point = new Point(_arg3, 0); var _local6:Point = new Point(_arg4, 0); moveTo(_arg1, _arg2, _local5, _local6, true, false); } public static function localToLocal(_arg1:DisplayObject, _arg2:DisplayObject, _arg3:Point=null):Point{ if (_arg3 == null){ _arg3 = new Point(); }; _arg3 = _arg1.localToGlobal(_arg3); _arg3 = _arg2.globalToLocal(_arg3); return (_arg3); } public static function center(_arg1:DisplayObject, _arg2:DisplayObject):void{ var _local3:Rectangle = getBoundsExclude(_arg2, _arg2, _arg1); var _local4:Point = new Point((_local3.x + (0.5 * _local3.width)), (_local3.y + (0.5 * _local3.height))); alignBoundsTo(_arg1, _arg2, _local4); } public static function removeIfChild(_arg1:DisplayObjectContainer, _arg2:DisplayObject):void{ if (((((!((_arg1 == null))) && (!((_arg2 == null))))) && ((_arg2.parent == _arg1)))){ _arg1.removeChild(_arg2); }; } public static function removeIfChildren(_arg1:DisplayObjectContainer, ... _args):void{ var _local3:DisplayObject; if (_arg1 != null){ for each (_local3 in _args) { if (((!((_local3 == null))) && ((_local3.parent == _arg1)))){ _arg1.removeChild(_local3); }; }; }; } public static function removeEnumerable(_arg1:Object):void{ var _local2:DisplayObject; for each (_local2 in _arg1) { remove(_local2); }; } public static function alignLeftToX(_arg1:DisplayObject, _arg2:DisplayObject, _arg3:Number=0):void{ var _local4:Point = new Point(_arg3, 0); alignBoundsTo(_arg1, _arg2, _local4, true, false, 0); } public static function bringToFront(_arg1:DisplayObject):void{ if (_arg1.parent != null){ _arg1.parent.addChild(_arg1); }; } public static function removeAll(... _args):void{ var _local2:DisplayObject; for each (_local2 in _args) { remove(_local2); }; } } }//package com.lumoslabs.util
Section 41
//Random (com.lumoslabs.util.Random) package com.lumoslabs.util { public class Random { private static var equals:Function; private static var anElement; public static function array(_arg1:Array, _arg2:int=-1):Array{ var _local3:Array = _arg1.slice(); shuffle(_local3); if (_arg2 >= 0){ _local3.splice(_arg2); }; return (_local3); } public static function popOtherElementFun(_arg1:Array, _arg2:Array, _arg3:Function){ var _local4:int; equals = _arg3; var _local5:Array = _arg1.slice(); do { _local4 = Math.floor((Math.random() * _local5.length)); anElement = _local5.splice(_local4, 1)[0]; } while (_arg2.some(equalsAnElement)); if (anElement == undefined){ return (undefined); }; return (_arg1.splice(_local4, 1)[0]); } public static function shuffle(_arg1:Array):void{ var _local3:uint; var _local4:*; var _local2:uint = _arg1.length; while (_local2 > 1) { _local3 = Math.floor((_local2 * Math.random())); _local2--; _local4 = _arg1[_local2]; _arg1[_local2] = _arg1[_local3]; _arg1[_local3] = _local4; }; } public static function otherIntBetween(_arg1:int, _arg2:int, _arg3:Array){ equals = simpleEquals; var _local4:Array = new Array(); var _local5:int = ((_arg2 - _arg1) + 1); for each (anElement in _arg3) { if ((((((((anElement is int)) && ((_arg1 <= anElement)))) && ((anElement <= _arg2)))) && (!(_local4.some(equalsAnElement))))){ _local4.push(anElement); }; }; if (_local4.length < _local5){ do { anElement = Math.floor((_arg1 + (((_arg2 - _arg1) + 1) * Math.random()))); } while (_local4.some(equalsAnElement)); return (anElement); //unresolved jump }; return (undefined); } public static function bool():Boolean{ return ((Math.random() < 0.5)); } public static function indexLessThan(_arg1:uint):int{ return (Math.floor((Math.random() * _arg1))); } public static function letter(_arg1:Boolean=true):String{ var _local2 = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; return (_local2.charAt((Math.random() * _local2.length))); } private static function equalsAnElement(_arg1, _arg2:int, _arg3:Array):Boolean{ return (equals(anElement, _arg1)); } public static function pop(_arg1:Array){ return (_arg1.splice(Math.floor((Math.random() * _arg1.length)), 1)[0]); } public static function index(_arg1:Array):int{ return (Math.floor((Math.random() * _arg1.length))); } public static function otherElementFun(_arg1:Array, _arg2:Array, _arg3:Function){ equals = _arg3; var _local4:Array = _arg1.slice(); do { anElement = _local4.splice(Math.floor((Math.random() * _local4.length)), 1)[0]; } while (_arg2.some(equalsAnElement)); return (anElement); } private static function simpleEquals(_arg1, _arg2):Boolean{ return ((_arg1 == _arg2)); } public static function intBetween(_arg1:int, _arg2:int):int{ return (Math.floor((_arg1 + (((_arg2 - _arg1) + 1) * Math.random())))); } public static function push(_arg1:Array, ... _args):uint{ var _local3:*; for each (_local3 in _args) { _arg1.splice(Math.floor((Math.random() * _arg1.length)), 0, _local3); }; return (_arg1.length); } public static function otherElement(_arg1:Array, _arg2:Array){ var _local4:int; var _local3:Array = _arg1.slice(); for each (anElement in _arg2) { _local4 = _local3.indexOf(anElement); while (_local4 >= 0) { _local3.splice(_local4, 1); _local4 = _local3.indexOf(anElement); }; }; return (_local3[Math.floor((Math.random() * _local3.length))]); } public static function element(_arg1:Array){ return (_arg1[Math.floor((Math.random() * _arg1.length))]); } public static function popOtherElement(_arg1:Array, _arg2:Array){ popOtherElementFun(_arg1, _arg2, simpleEquals); } public static function numberBetween(_arg1:Number, _arg2:Number):Number{ return ((_arg1 + ((_arg2 - _arg1) * Math.random()))); } } }//package com.lumoslabs.util
Section 42
//Back (fl.motion.easing.Back) package fl.motion.easing { public class Back { public static function easeOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number=0):Number{ if (!_arg5){ _arg5 = 1.70158; }; _arg1 = ((_arg1 / _arg4) - 1); return (((_arg3 * (((_arg1 * _arg1) * (((_arg5 + 1) * _arg1) + _arg5)) + 1)) + _arg2)); } public static function easeIn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number=0):Number{ if (!_arg5){ _arg5 = 1.70158; }; _arg1 = (_arg1 / _arg4); return (((((_arg3 * _arg1) * _arg1) * (((_arg5 + 1) * _arg1) - _arg5)) + _arg2)); } public static function easeInOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number=0):Number{ if (!_arg5){ _arg5 = 1.70158; }; _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ _arg5 = (_arg5 * 1.525); return ((((_arg3 / 2) * ((_arg1 * _arg1) * (((_arg5 + 1) * _arg1) - _arg5))) + _arg2)); }; _arg1 = (_arg1 - 2); _arg5 = (_arg5 * 1.525); return ((((_arg3 / 2) * (((_arg1 * _arg1) * (((_arg5 + 1) * _arg1) + _arg5)) + 2)) + _arg2)); } } }//package fl.motion.easing
Section 43
//Background (Background) package { import flash.display.*; public dynamic class Background extends Sprite { } }//package
Section 44
//Bonus (Bonus) package { import flash.media.*; public dynamic class Bonus extends Sound { } }//package
Section 45
//BottomInstruct (BottomInstruct) package { import flash.display.*; import flash.text.*; public dynamic class BottomInstruct extends Sprite { public var bottomInstructField:TextField; } }//package
Section 46
//ContinueButton (ContinueButton) package { import flash.display.*; public dynamic class ContinueButton extends SimpleButton { } }//package
Section 47
//Correct (Correct) package { import flash.media.*; public dynamic class Correct extends Sound { } }//package
Section 48
//CorrectPointsFeedback (CorrectPointsFeedback) package { import flash.display.*; import flash.text.*; public dynamic class CorrectPointsFeedback extends Sprite { public var textField:TextField; } }//package
Section 49
//GreenCheck (GreenCheck) package { import flash.display.*; public dynamic class GreenCheck extends Sprite { } }//package
Section 50
//HyperlinkButton (HyperlinkButton) package { import flash.display.*; import flash.text.*; public dynamic class HyperlinkButton extends SimpleButton { public var hyperlinkField:TextField; } }//package
Section 51
//Incorrect (Incorrect) package { import flash.media.*; public dynamic class Incorrect extends Sound { } }//package
Section 52
//IncorrectPointsFeedback (IncorrectPointsFeedback) package { import flash.display.*; import flash.text.*; public dynamic class IncorrectPointsFeedback extends Sprite { public var textField:TextField; } }//package
Section 53
//Instructions (Instructions) package { import flash.display.*; import flash.text.*; public dynamic class Instructions extends Sprite { public var textField:TextField; } }//package
Section 54
//NextButtonShape (NextButtonShape) package { import flash.display.*; public dynamic class NextButtonShape extends Sprite { } }//package
Section 55
//NoButton (NoButton) package { import flash.display.*; public dynamic class NoButton extends SimpleButton { } }//package
Section 56
//RedX (RedX) package { import flash.display.*; public dynamic class RedX extends Sprite { } }//package
Section 57
//ScoreDisplay (ScoreDisplay) package { import flash.display.*; import flash.text.*; public dynamic class ScoreDisplay extends Sprite { public var textField:TextField; } }//package
Section 58
//StartButton (StartButton) package { import flash.display.*; public dynamic class StartButton extends SimpleButton { } }//package
Section 59
//TimeBox (TimeBox) package { import flash.display.*; import flash.text.*; public dynamic class TimeBox extends Sprite { public var timeField:TextField; } }//package
Section 60
//TopInstruct (TopInstruct) package { import flash.display.*; import flash.text.*; public dynamic class TopInstruct extends Sprite { public var topInstructField:TextField; } }//package
Section 61
//TrialCardBackground (TrialCardBackground) package { import flash.display.*; public dynamic class TrialCardBackground extends Sprite { } }//package
Section 62
//TrialDisplay (TrialDisplay) package { import flash.display.*; import flash.text.*; public dynamic class TrialDisplay extends Sprite { public var textField:TextField; } }//package
Section 63
//YesButton (YesButton) package { import flash.display.*; public dynamic class YesButton extends SimpleButton { } }//package

Library Items

Symbol 1 Sound {Incorrect}
Symbol 2 Sound {Correct}
Symbol 3 Sound {Bonus}
Symbol 4 FontUsed by:5 7 38 44 75 86 87 98 111 114 119 122 136 139 141 143 148 149 152 153 175
Symbol 5 EditableTextUses:4Used by:6
Symbol 6 MovieClip {IncorrectPointsFeedback}Uses:5
Symbol 7 EditableTextUses:4Used by:8
Symbol 8 MovieClip {CorrectPointsFeedback}Uses:7
Symbol 9 GraphicUsed by:36
Symbol 10 GraphicUsed by:16
Symbol 11 GraphicUsed by:12
Symbol 12 MovieClipUses:11Used by:16 96
Symbol 13 GraphicUsed by:14
Symbol 14 MovieClipUses:13Used by:16 96
Symbol 15 GraphicUsed by:16
Symbol 16 MovieClipUses:10 12 14 15Used by:36
Symbol 17 GraphicUsed by:36
Symbol 18 GraphicUsed by:24
Symbol 19 GraphicUsed by:20
Symbol 20 MovieClipUses:19Used by:24 96
Symbol 21 GraphicUsed by:22
Symbol 22 MovieClipUses:21Used by:24 96
Symbol 23 GraphicUsed by:24
Symbol 24 MovieClipUses:18 20 22 23Used by:36
Symbol 25 GraphicUsed by:36
Symbol 26 GraphicUsed by:27
Symbol 27 MovieClipUses:26Used by:36
Symbol 28 GraphicUsed by:29
Symbol 29 MovieClipUses:28Used by:36
Symbol 30 GraphicUsed by:31
Symbol 31 MovieClipUses:30Used by:36
Symbol 32 GraphicUsed by:33
Symbol 33 MovieClipUses:32Used by:36 96
Symbol 34 GraphicUsed by:35
Symbol 35 MovieClipUses:34Used by:36 96
Symbol 36 MovieClipUses:9 16 17 24 25 27 29 31 33 35Used by:59
Symbol 37 GraphicUsed by:42
Symbol 38 TextUses:4Used by:42
Symbol 39 GraphicUsed by:42
Symbol 40 GraphicUsed by:42
Symbol 41 GraphicUsed by:42
Symbol 42 Button {StartButton}Uses:37 38 39 40 41Used by:59 147
Symbol 43 GraphicUsed by:48
Symbol 44 TextUses:4Used by:48
Symbol 45 GraphicUsed by:48
Symbol 46 GraphicUsed by:48
Symbol 47 GraphicUsed by:48
Symbol 48 ButtonUses:43 44 45 46 47Used by:59
Symbol 49 FontUsed by:51 65 83 86 87 167 168 169 170
Symbol 50 FontUsed by:51 57 86 87
Symbol 51 TextUses:49 50Used by:59
Symbol 52 GraphicUsed by:56
Symbol 53 FontUsed by:55
Symbol 54 FontUsed by:55
Symbol 55 TextUses:53 54Used by:56
Symbol 56 MovieClipUses:52 55Used by:59 96
Symbol 57 EditableTextUses:50Used by:58
Symbol 58 Button {HyperlinkButton}Uses:57Used by:59
Symbol 59 MovieClip {com.lumoslabs.games.brainShift.screens.OverdriveStartScreen}Uses:36 42 48 51 56 58
Symbol 60 GraphicUsed by:61
Symbol 61 MovieClip {GreenCheck}Uses:60
Symbol 62 GraphicUsed by:63
Symbol 63 MovieClip {RedX}Uses:62
Symbol 64 GraphicUsed by:69
Symbol 65 TextUses:49Used by:69
Symbol 66 FontUsed by:67 71 72 84 85 86 87 91 99 104 105 106 107 115 134 138 140 142 146 166 167 168 169 170 183 185
Symbol 67 EditableTextUses:66Used by:68
Symbol 68 MovieClip {TimeBox}Uses:67Used by:69
Symbol 69 MovieClip {com.lumoslabs.ui.ReadyCountdown}Uses:64 65 68
Symbol 70 GraphicUsed by:73
Symbol 71 TextUses:66Used by:73
Symbol 72 EditableTextUses:66Used by:73
Symbol 73 MovieClip {TrialDisplay}Uses:70 71 72
Symbol 74 GraphicUsed by:77
Symbol 75 TextUses:4Used by:77
Symbol 76 GraphicUsed by:77
Symbol 77 Button {ContinueButton}Uses:74 75 76Used by:96
Symbol 78 GraphicUsed by:79
Symbol 79 MovieClipUses:78Used by:96
Symbol 80 GraphicUsed by:96
Symbol 81 GraphicUsed by:82
Symbol 82 MovieClipUses:81Used by:96
Symbol 83 TextUses:49Used by:96
Symbol 84 TextUses:66Used by:96
Symbol 85 TextUses:66Used by:96
Symbol 86 EditableTextUses:4 49 50 66Used by:96
Symbol 87 EditableTextUses:4 49 50 66Used by:96
Symbol 88 GraphicUsed by:96
Symbol 89 GraphicUsed by:96
Symbol 90 GraphicUsed by:96
Symbol 91 EditableTextUses:66Used by:96
Symbol 92 GraphicUsed by:95
Symbol 93 FontUsed by:94
Symbol 94 TextUses:93Used by:95
Symbol 95 ButtonUses:92 94Used by:96
Symbol 96 MovieClip {com.lumoslabs.games.brainShift.screens.EndScreen}Uses:79 56 80 82 83 84 85 86 87 88 77 89 12 14 90 20 22 33 35 91 95
Symbol 97 GraphicUsed by:147
Symbol 98 TextUses:4Used by:147
Symbol 99 TextUses:66Used by:147
Symbol 100 GraphicUsed by:147
Symbol 101 GraphicUsed by:102
Symbol 102 MovieClipUses:101Used by:103
Symbol 103 MovieClip {TrialCardBackground}Uses:102Used by:147 173
Symbol 104 TextUses:66Used by:147
Symbol 105 TextUses:66Used by:147
Symbol 106 TextUses:66Used by:147
Symbol 107 TextUses:66Used by:147
Symbol 108 GraphicUsed by:147
Symbol 109 GraphicUsed by:147 158 162
Symbol 110 GraphicUsed by:147
Symbol 111 TextUses:4Used by:147 162
Symbol 112 GraphicUsed by:147
Symbol 113 GraphicUsed by:147
Symbol 114 TextUses:4Used by:147 158
Symbol 115 TextUses:66Used by:147
Symbol 116 FontUsed by:117 137
Symbol 117 TextUses:116Used by:147
Symbol 118 GraphicUsed by:120
Symbol 119 TextUses:4Used by:120 127
Symbol 120 MovieClipUses:118 119Used by:147
Symbol 121 GraphicUsed by:123
Symbol 122 TextUses:4Used by:123 131
Symbol 123 MovieClipUses:121 122Used by:147
Symbol 124 GraphicUsed by:127
Symbol 125 GraphicUsed by:127
Symbol 126 GraphicUsed by:127
Symbol 127 ButtonUses:124 119 125 126Used by:147
Symbol 128 GraphicUsed by:131
Symbol 129 GraphicUsed by:131
Symbol 130 GraphicUsed by:131
Symbol 131 ButtonUses:128 122 129 130Used by:147
Symbol 132 GraphicUsed by:147
Symbol 133 GraphicUsed by:147
Symbol 134 TextUses:66Used by:147
Symbol 135 GraphicUsed by:147
Symbol 136 TextUses:4Used by:147
Symbol 137 TextUses:116Used by:147
Symbol 138 TextUses:66Used by:147
Symbol 139 TextUses:4Used by:147
Symbol 140 TextUses:66Used by:147
Symbol 141 TextUses:4Used by:147
Symbol 142 TextUses:66Used by:147
Symbol 143 TextUses:4Used by:147
Symbol 144 GraphicUsed by:147
Symbol 145 GraphicUsed by:147
Symbol 146 TextUses:66Used by:147
Symbol 147 MovieClip {com.lumoslabs.games.brainShift.screens.OverdriveHelpScreen}Uses:97 98 99 100 103 104 105 106 107 108 109 110 111 112 113 114 115 117 120 123 127 131 42 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146
Symbol 148 TextUses:4Used by:151
Symbol 149 EditableTextUses:4Used by:151
Symbol 150 GraphicUsed by:151
Symbol 151 MovieClip {ScoreDisplay}Uses:148 149 150Used by:173
Symbol 152 EditableTextUses:4Used by:154
Symbol 153 TextUses:4Used by:154
Symbol 154 MovieClip {com.lumoslabs.ui.MinSecCountdown}Uses:152 153Used by:173
Symbol 155 GraphicUsed by:158
Symbol 156 GraphicUsed by:158
Symbol 157 GraphicUsed by:158
Symbol 158 Button {YesButton}Uses:155 109 156 114 157Used by:173
Symbol 159 GraphicUsed by:162
Symbol 160 GraphicUsed by:162
Symbol 161 GraphicUsed by:162
Symbol 162 Button {NoButton}Uses:159 109 160 111 161Used by:173
Symbol 163 GraphicUsed by:173
Symbol 164 GraphicUsed by:165
Symbol 165 MovieClip {Background}Uses:164Used by:173
Symbol 166 EditableTextUses:66Used by:171
Symbol 167 TextUses:49 66Used by:171
Symbol 168 TextUses:49 66Used by:171
Symbol 169 TextUses:49 66Used by:171
Symbol 170 TextUses:49 66Used by:171
Symbol 171 MovieClip {Instructions}Uses:166 167 168 169 170Used by:173
Symbol 172 GraphicUsed by:173
Symbol 173 MovieClip {com.lumoslabs.games.brainShift.screens.PlayScreen}Uses:163 165 162 158 103 171 172 154 151
Symbol 174 GraphicUsed by:176
Symbol 175 TextUses:4Used by:176
Symbol 176 MovieClip {NextButtonShape}Uses:174 175
Symbol 177 FontUsed by:178 179 180 181
Symbol 178 EditableTextUses:177Used by:182
Symbol 179 EditableTextUses:177Used by:182
Symbol 180 EditableTextUses:177Used by:182
Symbol 181 EditableTextUses:177Used by:182
Symbol 182 MovieClip {com.lumoslabs.games.brainShift.OverdriveTrialCard}Uses:178 179 180 181
Symbol 183 TextUses:66Used by:184
Symbol 184 MovieClip {BottomInstruct}Uses:183
Symbol 185 TextUses:66Used by:186
Symbol 186 MovieClip {TopInstruct}Uses:185

Instance Names

"textField"Symbol 6 MovieClip {IncorrectPointsFeedback} Frame 1Symbol 5 EditableText
"textField"Symbol 8 MovieClip {CorrectPointsFeedback} Frame 1Symbol 7 EditableText
"playButton"Symbol 59 MovieClip {com.lumoslabs.games.brainShift.screens.OverdriveStartScreen} Frame 1Symbol 42 Button {StartButton}
"helpButton"Symbol 59 MovieClip {com.lumoslabs.games.brainShift.screens.OverdriveStartScreen} Frame 1Symbol 48 Button
"hyperlinkButton"Symbol 59 MovieClip {com.lumoslabs.games.brainShift.screens.OverdriveStartScreen} Frame 1Symbol 58 Button {HyperlinkButton}
"timeField"Symbol 68 MovieClip {TimeBox} Frame 1Symbol 67 EditableText
"timeBox"Symbol 69 MovieClip {com.lumoslabs.ui.ReadyCountdown} Frame 1Symbol 68 MovieClip {TimeBox}
"textField"Symbol 73 MovieClip {TrialDisplay} Frame 1Symbol 72 EditableText
"scoreField"Symbol 96 MovieClip {com.lumoslabs.games.brainShift.screens.EndScreen} Frame 1Symbol 86 EditableText
"correctField"Symbol 96 MovieClip {com.lumoslabs.games.brainShift.screens.EndScreen} Frame 1Symbol 87 EditableText
"continueButton"Symbol 96 MovieClip {com.lumoslabs.games.brainShift.screens.EndScreen} Frame 1Symbol 77 Button {ContinueButton}
"surveyButton"Symbol 96 MovieClip {com.lumoslabs.games.brainShift.screens.EndScreen} Frame 1Symbol 95 Button
"nextButton"Symbol 147 MovieClip {com.lumoslabs.games.brainShift.screens.OverdriveHelpScreen} Frame 1Symbol 127 Button
"backButton"Symbol 147 MovieClip {com.lumoslabs.games.brainShift.screens.OverdriveHelpScreen} Frame 1Symbol 131 Button
"playButton"Symbol 147 MovieClip {com.lumoslabs.games.brainShift.screens.OverdriveHelpScreen} Frame 1Symbol 42 Button {StartButton}
"textField"Symbol 151 MovieClip {ScoreDisplay} Frame 1Symbol 149 EditableText
"timeField"Symbol 154 MovieClip {com.lumoslabs.ui.MinSecCountdown} Frame 1Symbol 152 EditableText
"textField"Symbol 171 MovieClip {Instructions} Frame 1Symbol 166 EditableText
"noButton"Symbol 173 MovieClip {com.lumoslabs.games.brainShift.screens.PlayScreen} Frame 1Symbol 162 Button {NoButton}
"yesButton"Symbol 173 MovieClip {com.lumoslabs.games.brainShift.screens.PlayScreen} Frame 1Symbol 158 Button {YesButton}
"background"Symbol 173 MovieClip {com.lumoslabs.games.brainShift.screens.PlayScreen} Frame 1Symbol 103 MovieClip {TrialCardBackground}
"instructions"Symbol 173 MovieClip {com.lumoslabs.games.brainShift.screens.PlayScreen} Frame 1Symbol 171 MovieClip {Instructions}
"secondCountdown"Symbol 173 MovieClip {com.lumoslabs.games.brainShift.screens.PlayScreen} Frame 1Symbol 154 MovieClip {com.lumoslabs.ui.MinSecCountdown}
"scoreDisplay"Symbol 173 MovieClip {com.lumoslabs.games.brainShift.screens.PlayScreen} Frame 1Symbol 151 MovieClip {ScoreDisplay}
"topLeftField"Symbol 182 MovieClip {com.lumoslabs.games.brainShift.OverdriveTrialCard} Frame 1Symbol 178 EditableText
"bottomLeftField"Symbol 182 MovieClip {com.lumoslabs.games.brainShift.OverdriveTrialCard} Frame 1Symbol 179 EditableText
"topRightField"Symbol 182 MovieClip {com.lumoslabs.games.brainShift.OverdriveTrialCard} Frame 1Symbol 180 EditableText
"bottomRightField"Symbol 182 MovieClip {com.lumoslabs.games.brainShift.OverdriveTrialCard} Frame 1Symbol 181 EditableText

Special Tags

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




http://swfchan.com/27/134532/info.shtml
Created: 9/2 -2019 21:44:31 Last modified: 9/2 -2019 21:44:31 Server time: 06/05 -2024 19:42:59