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

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

flipside.swf

This is the info page for
Flash #182199

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


Text
>>

<<

<p align="center"><font face="FFF Nadador Bold_8pt_st" size="8" color="#ffffff" letterSpacing="0.000000" kerning="1">0%</font></p>

Loading...

PRESS SPACE TO CONTINUE

LEVEL SCORE

<p align="right"><font face="FFF Nadador Bold_8pt_st" size="8" color="#ffffff" letterSpacing="0.000000" kerning="1">0</font></p>

TOTAL SCORE

<p align="right"><font face="FFF Nadador Bold_8pt_st" size="8" color="#ffffff" letterSpacing="0.000000" kerning="1">0</font></p>

PRESS SPACE TO RETRY

TOTAL SCORE

<p align="right"><font face="FFF Nadador Bold" size="8" color="#ffffff" letterSpacing="0.000000" kerning="1">0</font></p>

player 1

player 2

loading...

<p align="left"><font face="FFF Nadador Bold_8pt_st" size="8" color="#ffffff" letterSpacing="0.000000" kerning="1">1.</font></p>

<p align="left"><font face="FFF Nadador Bold_8pt_st" size="8" color="#ffffff" letterSpacing="0.000000" kerning="1">NAME</font></p>

<p align="left"><font face="FFF Nadador Bold_8pt_st" size="8" color="#ffffff" letterSpacing="0.000000" kerning="1">59860</font></p>

This game has been URL-Locked!
If you are reading this message then this
version of the game has been stolen and
hosted on a site without the prior permission
of Nitrome!
For licencing information please contact: enquiries@nitrome.com

CLICK ON ONE OF THE BUTTONS BELOW.
PLAY AGAINST THE COMPUTER OR
AGAINST A FRIEND!

Press LEFT and RIGHT
to drive

Press A and D
to drive

Press UP
to jump

Press W
to jump

Press LEFT and RIGHT
in the air to spin

Press A and D
in the air to spin

>>

<<

>>

ARTWORK

PROGRAMMING

MUSIC

game by nitrome

www.nitrome.com

YOUR FINAL SCORE IS

<p align="right"><font face="FFF Nadador Bold_8pt_st" size="8" color="#ffffff" letterSpacing="0.000000" kerning="1">0</font></p>

BY WINNING THE TOURNAMENT YOU HAVE WON YOUR
FREEDOM, AND YOU ARE SET FREE FROM THE PRISON!

ActionScript [AS3]

Section 1
//b2CircleDef (Box2D.Collision.Shapes.b2CircleDef) package Box2D.Collision.Shapes { import Box2D.Common.Math.*; public class b2CircleDef extends b2ShapeDef { public var :b2Vec2; public var radius:Number; public function b2CircleDef(){  = new b2Vec2(0, 0); super(); type = b2Shape.e_circleShape; radius = 1; } } }//package Box2D.Collision.Shapes
Section 2
//b2CircleShape (Box2D.Collision.Shapes.b2CircleShape) package Box2D.Collision.Shapes { import Box2D.Common.Math.*; import Box2D.Collision.*; import Box2D.Common.*; public class b2CircleShape extends b2Shape { public var m_radius:Number; public var m_localPosition:b2Vec2; public function b2CircleShape(_arg1:b2ShapeDef){ var _local2:b2CircleDef; m_localPosition = new b2Vec2(); super(_arg1); _local2 = (_arg1 as b2CircleDef); m_type = e_circleShape; m_localPosition.SetV(_local2.); m_radius = _local2.radius; } override public function TestPoint(_arg1:b2XForm, _arg2:b2Vec2):Boolean{ var _local3:b2Mat22; var _local4:Number; var _local5:Number; _local3 = _arg1.R; _local4 = (_arg1.position.x + ((_local3.col1.x * m_localPosition.x) + (_local3.col2.x * m_localPosition.y))); _local5 = (_arg1.position.y + ((_local3.col1.y * m_localPosition.x) + (_local3.col2.y * m_localPosition.y))); _local4 = (_arg2.x - _local4); _local5 = (_arg2.y - _local5); return ((((_local4 * _local4) + (_local5 * _local5)) <= (m_radius * m_radius))); } public function ():b2Vec2{ return (m_localPosition); } override public function TestSegment(_arg1:b2XForm, _arg2:Array, _arg3:b2Vec2, _arg4:b2Segment, _arg5:Number):Boolean{ var _local6:b2Mat22; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; _local6 = _arg1.R; _local7 = (_arg1.position.x + ((_local6.col1.x * m_localPosition.x) + (_local6.col2.x * m_localPosition.y))); _local8 = (_arg1.position.x + ((_local6.col1.y * m_localPosition.x) + (_local6.col2.y * m_localPosition.y))); _local9 = (_arg4.p1.x - _local7); _local10 = (_arg4.p1.y - _local8); _local11 = (((_local9 * _local9) + (_local10 * _local10)) - (m_radius * m_radius)); if (_local11 < 0){ return (false); }; _local12 = (_arg4.p2.x - _arg4.p1.x); _local13 = (_arg4.p2.y - _arg4.p1.y); _local14 = ((_local9 * _local12) + (_local10 * _local13)); _local15 = ((_local12 * _local12) + (_local13 * _local13)); _local16 = ((_local14 * _local14) - (_local15 * _local11)); if ((((_local16 < 0)) || ((_local15 < Number.MIN_VALUE)))){ return (false); }; _local17 = -((_local14 + Math.sqrt(_local16))); if ((((0 <= _local17)) && ((_local17 <= (_arg5 * _local15))))){ _local17 = (_local17 / _local15); _arg2[0] = _local17; _arg3.x = (_local9 + (_local17 * _local12)); _arg3.y = (_local10 + (_local17 * _local13)); _arg3.Normalize(); return (true); }; return (false); } override public function ComputeMass(_arg1:b2MassData):void{ _arg1.mass = (((m_density * b2Settings.b2_pi) * m_radius) * m_radius); _arg1.center.SetV(m_localPosition); _arg1.I = (_arg1.mass * (((0.5 * m_radius) * m_radius) + ((m_localPosition.x * m_localPosition.x) + (m_localPosition.y * m_localPosition.y)))); } override public function ComputeSweptAABB(_arg1:b2AABB, _arg2:b2XForm, _arg3:b2XForm):void{ var _local4:b2Mat22; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; _local4 = _arg2.R; _local5 = (_arg2.position.x + ((_local4.col1.x * m_localPosition.x) + (_local4.col2.x * m_localPosition.y))); _local6 = (_arg2.position.y + ((_local4.col1.y * m_localPosition.x) + (_local4.col2.y * m_localPosition.y))); _local4 = _arg3.R; _local7 = (_arg3.position.x + ((_local4.col1.x * m_localPosition.x) + (_local4.col2.x * m_localPosition.y))); _local8 = (_arg3.position.y + ((_local4.col1.y * m_localPosition.x) + (_local4.col2.y * m_localPosition.y))); _arg1.lowerBound.Set((((_local5 < _local7)) ? _local5 : _local7 - m_radius), (((_local6 < _local8)) ? _local6 : _local8 - m_radius)); _arg1.upperBound.Set((((_local5 > _local7)) ? _local5 : _local7 + m_radius), (((_local6 > _local8)) ? _local6 : _local8 + m_radius)); } public function ():Number{ return (m_radius); } override public function UpdateSweepRadius(_arg1:b2Vec2):void{ var _local2:Number; var _local3:Number; _local2 = (m_localPosition.x - _arg1.x); _local3 = (m_localPosition.y - _arg1.y); _local2 = Math.sqrt(((_local2 * _local2) + (_local3 * _local3))); m_sweepRadius = ((_local2 + m_radius) - b2Settings.b2_toiSlop); } override public function ComputeAABB(_arg1:b2AABB, _arg2:b2XForm):void{ var _local3:b2Mat22; var _local4:Number; var _local5:Number; _local3 = _arg2.R; _local4 = (_arg2.position.x + ((_local3.col1.x * m_localPosition.x) + (_local3.col2.x * m_localPosition.y))); _local5 = (_arg2.position.y + ((_local3.col1.y * m_localPosition.x) + (_local3.col2.y * m_localPosition.y))); _arg1.lowerBound.Set((_local4 - m_radius), (_local5 - m_radius)); _arg1.upperBound.Set((_local4 + m_radius), (_local5 + m_radius)); } } }//package Box2D.Collision.Shapes
Section 3
//b2FilterData (Box2D.Collision.Shapes.b2FilterData) package Box2D.Collision.Shapes { public class b2FilterData { public var maskBits:uint;// = 0xFFFF public var groupIndex:int;// = 0 public var categoryBits:uint;// = 1 public function b2FilterData(){ categoryBits = 1; maskBits = 0xFFFF; groupIndex = 0; super(); } public function Copy():b2FilterData{ var _local1:b2FilterData; _local1 = new b2FilterData(); _local1.categoryBits = categoryBits; _local1.maskBits = maskBits; _local1.groupIndex = groupIndex; return (_local1); } } }//package Box2D.Collision.Shapes
Section 4
//b2MassData (Box2D.Collision.Shapes.b2MassData) package Box2D.Collision.Shapes { import Box2D.Common.Math.*; public class b2MassData { public var mass:Number;// = 0 public var center:b2Vec2; public var I:Number;// = 0 public function b2MassData(){ mass = 0; center = new b2Vec2(0, 0); I = 0; super(); } } }//package Box2D.Collision.Shapes
Section 5
//b2PolygonDef (Box2D.Collision.Shapes.b2PolygonDef) package Box2D.Collision.Shapes { import Box2D.Common.Math.*; import Box2D.Common.*; public class b2PolygonDef extends b2ShapeDef { public var vertexCount:int; public var vertices:Array; private static var s_mat:b2Mat22 = new b2Mat22(); public function b2PolygonDef(){ var _local1:int; vertices = new Array(b2Settings.b2_maxPolygonVertices); super(); type = b2Shape.e_polygonShape; vertexCount = 0; _local1 = 0; while (_local1 < b2Settings.b2_maxPolygonVertices) { vertices[_local1] = new b2Vec2(); _local1++; }; } public function SetAsOrientedBox(_arg1:Number, _arg2:Number, _arg3:b2Vec2=null, _arg4:Number=0):void{ var _local5:b2Vec2; var _local6:b2Mat22; var _local7:int; vertexCount = 4; vertices[0].Set(-(_arg1), -(_arg2)); vertices[1].Set(_arg1, -(_arg2)); vertices[2].Set(_arg1, _arg2); vertices[3].Set(-(_arg1), _arg2); if (_arg3){ _local5 = _arg3; _local6 = s_mat; _local6.Set(_arg4); _local7 = 0; while (_local7 < vertexCount) { _arg3 = vertices[_local7]; _arg1 = (_local5.x + ((_local6.col1.x * _arg3.x) + (_local6.col2.x * _arg3.y))); _arg3.y = (_local5.y + ((_local6.col1.y * _arg3.x) + (_local6.col2.y * _arg3.y))); _arg3.x = _arg1; _local7++; }; }; } public function SetAsBox(_arg1:Number, _arg2:Number):void{ vertexCount = 4; vertices[0].Set(-(_arg1), -(_arg2)); vertices[1].Set(_arg1, -(_arg2)); vertices[2].Set(_arg1, _arg2); vertices[3].Set(-(_arg1), _arg2); } } }//package Box2D.Collision.Shapes
Section 6
//b2PolygonShape (Box2D.Collision.Shapes.b2PolygonShape) package Box2D.Collision.Shapes { import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Collision.*; import Box2D.Common.*; public class b2PolygonShape extends b2Shape { public var :Array; public var :Array; private var :b2Vec2; public var :b2OBB; public var  :Array; public var  :b2Vec2; public var :int; private static var s_computeMat:b2Mat22 = new b2Mat22(); private static var s_sweptAABB1:b2AABB = new b2AABB(); private static var s_sweptAABB2:b2AABB = new b2AABB(); public function b2PolygonShape(_arg1:b2ShapeDef){ var _local2:b2PolygonDef; var _local3:int; var _local4:int; var _local5:int; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number;  = new b2Vec2();  = new b2OBB();  = new Array(b2Settings.b2_maxPolygonVertices);  = new Array(b2Settings.b2_maxPolygonVertices);  = new Array(b2Settings.b2_maxPolygonVertices); super(_arg1); m_type = e_polygonShape; _local2 = (_arg1 as b2PolygonDef);  = _local2.vertexCount; _local4 = _local3; _local5 = _local3; _local3 = 0; while (_local3 < ) { [_local3] = _local2.vertices[_local3].Copy(); _local3++; }; _local3 = 0; while (_local3 < ) { _local4 = _local3; _local5 = (((_local3 + 1) < )) ? (_local3 + 1) : 0; _local6 = ([_local5].x - [_local4].x); _local7 = ([_local5].y - [_local4].y); _local8 = Math.sqrt(((_local6 * _local6) + (_local7 * _local7))); [_local3] = new b2Vec2((_local7 / _local8), (-(_local6) / _local8)); _local3++; };  = ComputeCentroid(_local2.vertices, _local2.vertexCount); ComputeOBB(, , ); _local3 = 0; while (_local3 < ) { _local4 = (((_local3 - 1) >= 0)) ? (_local3 - 1) : ( - 1); _local5 = _local3; _local9 = [_local4].x; _local10 = [_local4].y; _local11 = [_local5].x; _local12 = [_local5].y; _local13 = ([_local3].x -  .x); _local14 = ([_local3].y -  .y); _local15 = (((_local9 * _local13) + (_local10 * _local14)) - b2Settings.b2_toiSlop); _local16 = (((_local11 * _local13) + (_local12 * _local14)) - b2Settings.b2_toiSlop); _local17 = (1 / ((_local9 * _local12) - (_local10 * _local11)));  [_local3] = new b2Vec2(((_local17 * ((_local12 * _local15) - (_local10 * _local16))) +  .x), ((_local17 * ((_local9 * _local16) - (_local11 * _local15))) +  .y)); _local3++; }; } override public function TestPoint(_arg1:b2XForm, _arg2:b2Vec2):Boolean{ var _local3:b2Vec2; var _local4:b2Mat22; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:int; var _local10:Number; _local4 = _arg1.R; _local5 = (_arg2.x - _arg1.position.x); _local6 = (_arg2.y - _arg1.position.y); _local7 = ((_local5 * _local4.col1.x) + (_local6 * _local4.col1.y)); _local8 = ((_local5 * _local4.col2.x) + (_local6 * _local4.col2.y)); _local9 = 0; while (_local9 < ) { _local3 = [_local9]; _local5 = (_local7 - _local3.x); _local6 = (_local8 - _local3.y); _local3 = [_local9]; _local10 = ((_local3.x * _local5) + (_local3.y * _local6)); if (_local10 > 0){ return (false); }; _local9++; }; return (true); } public function GetCoreVertices():Array{ return ( ); } override public function TestSegment(_arg1:b2XForm, _arg2:Array, _arg3:b2Vec2, _arg4:b2Segment, _arg5:Number):Boolean{ var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:b2Mat22; var _local11:b2Vec2; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:int; var _local19:int; var _local20:Number; var _local21:Number; _local6 = 0; _local7 = _arg5; _local8 = (_arg4.p1.x - _arg1.position.x); _local9 = (_arg4.p1.y - _arg1.position.y); _local10 = _arg1.R; _local12 = ((_local8 * _local10.col1.x) + (_local9 * _local10.col1.y)); _local13 = ((_local8 * _local10.col2.x) + (_local9 * _local10.col2.y)); _local8 = (_arg4.p2.x - _arg1.position.x); _local9 = (_arg4.p2.y - _arg1.position.y); _local10 = _arg1.R; _local14 = ((_local8 * _local10.col1.x) + (_local9 * _local10.col1.y)); _local15 = ((_local8 * _local10.col2.x) + (_local9 * _local10.col2.y)); _local16 = (_local14 - _local12); _local17 = (_local15 - _local13); _local18 = -1; _local19 = 0; while (_local19 < ) { _local11 = [_local19]; _local8 = (_local11.x - _local12); _local9 = (_local11.y - _local13); _local11 = [_local19]; _local20 = ((_local11.x * _local8) + (_local11.y * _local9)); _local21 = ((_local11.x * _local16) + (_local11.y * _local17)); if ((((_local21 < 0)) && ((_local20 < (_local6 * _local21))))){ _local6 = (_local20 / _local21); _local18 = _local19; } else { if ((((_local21 > 0)) && ((_local20 < (_local7 * _local21))))){ _local7 = (_local20 / _local21); }; }; if (_local7 < _local6){ return (false); }; _local19++; }; if (_local18 >= 0){ _arg2[0] = _local6; _local10 = _arg1.R; _local11 = [_local18]; _arg3.x = ((_local10.col1.x * _local11.x) + (_local10.col2.x * _local11.y)); _arg3.y = ((_local10.col1.y * _local11.x) + (_local10.col2.y * _local11.y)); return (true); }; return (false); } public function ():b2Vec2{ return ( ); } override public function ComputeMass(_arg1:b2MassData):void{ var _local2:Number; var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:int; var _local10:b2Vec2; var _local11:b2Vec2; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; var _local20:Number; var _local21:Number; var _local22:Number; var _local23:Number; var _local24:Number; var _local25:Number; _local2 = 0; _local3 = 0; _local4 = 0; _local5 = 0; _local6 = 0; _local7 = 0; _local8 = (1 / 3); _local9 = 0; while (_local9 < ) { _local10 = [_local9]; _local11 = (((_local9 + 1) < )) ? [int((_local9 + 1))] : [0]; _local12 = (_local10.x - _local6); _local13 = (_local10.y - _local7); _local14 = (_local11.x - _local6); _local15 = (_local11.y - _local7); _local16 = ((_local12 * _local15) - (_local13 * _local14)); _local17 = (0.5 * _local16); _local4 = (_local4 + _local17); _local2 = (_local2 + ((_local17 * _local8) * ((_local6 + _local10.x) + _local11.x))); _local3 = (_local3 + ((_local17 * _local8) * ((_local7 + _local10.y) + _local11.y))); _local18 = _local6; _local19 = _local7; _local20 = _local12; _local21 = _local13; _local22 = _local14; _local23 = _local15; _local24 = ((_local8 * ((0.25 * (((_local20 * _local20) + (_local22 * _local20)) + (_local22 * _local22))) + ((_local18 * _local20) + (_local18 * _local22)))) + ((0.5 * _local18) * _local18)); _local25 = ((_local8 * ((0.25 * (((_local21 * _local21) + (_local23 * _local21)) + (_local23 * _local23))) + ((_local19 * _local21) + (_local19 * _local23)))) + ((0.5 * _local19) * _local19)); _local5 = (_local5 + (_local16 * (_local24 + _local25))); _local9++; }; _arg1.mass = (m_density * _local4); _local2 = (_local2 * (1 / _local4)); _local3 = (_local3 * (1 / _local4)); _arg1.center.Set(_local2, _local3); _arg1.I = (m_density * _local5); } public function Support(_arg1:b2XForm, _arg2:Number, _arg3:Number):b2Vec2{ var _local4:b2Vec2; var _local5:b2Mat22; var _local6:Number; var _local7:Number; var _local8:int; var _local9:Number; var _local10:int; var _local11:Number; _local5 = _arg1.R; _local6 = ((_arg2 * _local5.col1.x) + (_arg3 * _local5.col1.y)); _local7 = ((_arg2 * _local5.col2.x) + (_arg3 * _local5.col2.y)); _local8 = 0; _local4 =  [0]; _local9 = ((_local4.x * _local6) + (_local4.y * _local7)); _local10 = 1; while (_local10 < ) { _local4 =  [_local10]; _local11 = ((_local4.x * _local6) + (_local4.y * _local7)); if (_local11 > _local9){ _local8 = _local10; _local9 = _local11; }; _local10++; }; _local5 = _arg1.R; _local4 =  [_local8]; .x = (_arg1.position.x + ((_local5.col1.x * _local4.x) + (_local5.col2.x * _local4.y))); .y = (_arg1.position.y + ((_local5.col1.y * _local4.x) + (_local5.col2.y * _local4.y))); return (); } public function GetVertexCount():int{ return (); } override public function ComputeSweptAABB(_arg1:b2AABB, _arg2:b2XForm, _arg3:b2XForm):void{ var _local4:b2AABB; var _local5:b2AABB; _local4 = s_sweptAABB1; _local5 = s_sweptAABB2; ComputeAABB(_local4, _arg2); ComputeAABB(_local5, _arg3); _arg1.lowerBound.Set(((_local4.lowerBound.x < _local5.lowerBound.x)) ? _local4.lowerBound.x : _local5.lowerBound.x, ((_local4.lowerBound.y < _local5.lowerBound.y)) ? _local4.lowerBound.y : _local5.lowerBound.y); _arg1.upperBound.Set(((_local4.upperBound.x > _local5.upperBound.x)) ? _local4.upperBound.x : _local5.upperBound.x, ((_local4.upperBound.y > _local5.upperBound.y)) ? _local4.upperBound.y : _local5.upperBound.y); } public function GetVertices():Array{ return (); } public function  ():Array{ return (); } public function GetOBB():b2OBB{ return (); } public function GetFirstVertex(_arg1:b2XForm):b2Vec2{ return (b2Math.b2MulX(_arg1,  [0])); } public function (_arg1:b2XForm):b2Vec2{ return (b2Math.b2MulX(_arg1,  )); } override public function UpdateSweepRadius(_arg1:b2Vec2):void{ var _local2:b2Vec2; var _local3:int; var _local4:Number; var _local5:Number; m_sweepRadius = 0; _local3 = 0; while (_local3 < ) { _local2 =  [_local3]; _local4 = (_local2.x - _arg1.x); _local5 = (_local2.y - _arg1.y); _local4 = Math.sqrt(((_local4 * _local4) + (_local5 * _local5))); if (_local4 > m_sweepRadius){ m_sweepRadius = _local4; }; _local3++; }; } override public function ComputeAABB(_arg1:b2AABB, _arg2:b2XForm):void{ var _local3:b2Mat22; var _local4:b2Vec2; var _local5:b2Mat22; var _local6:b2Mat22; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; _local5 = s_computeMat; _local3 = _arg2.R; _local4 = .R.col1; _local5.col1.x = ((_local3.col1.x * _local4.x) + (_local3.col2.x * _local4.y)); _local5.col1.y = ((_local3.col1.y * _local4.x) + (_local3.col2.y * _local4.y)); _local4 = .R.col2; _local5.col2.x = ((_local3.col1.x * _local4.x) + (_local3.col2.x * _local4.y)); _local5.col2.y = ((_local3.col1.y * _local4.x) + (_local3.col2.y * _local4.y)); _local5.Abs(); _local6 = _local5; _local4 = .extents; _local7 = ((_local6.col1.x * _local4.x) + (_local6.col2.x * _local4.y)); _local8 = ((_local6.col1.y * _local4.x) + (_local6.col2.y * _local4.y)); _local3 = _arg2.R; _local4 = .center; _local9 = (_arg2.position.x + ((_local3.col1.x * _local4.x) + (_local3.col2.x * _local4.y))); _local10 = (_arg2.position.y + ((_local3.col1.y * _local4.x) + (_local3.col2.y * _local4.y))); _arg1.lowerBound.Set((_local9 - _local7), (_local10 - _local8)); _arg1.upperBound.Set((_local9 + _local7), (_local10 + _local8)); } public static function ComputeCentroid(_arg1:Array, _arg2:int):b2Vec2{ var _local3:b2Vec2; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:int; var _local9:b2Vec2; var _local10:b2Vec2; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; _local3 = new b2Vec2(); _local4 = 0; _local5 = 0; _local6 = 0; _local7 = (1 / 3); _local8 = 0; while (_local8 < _arg2) { _local9 = _arg1[_local8]; _local10 = (((_local8 + 1) < _arg2)) ? _arg1[int((_local8 + 1))] : _arg1[0]; _local11 = (_local9.x - _local5); _local12 = (_local9.y - _local6); _local13 = (_local10.x - _local5); _local14 = (_local10.y - _local6); _local15 = ((_local11 * _local14) - (_local12 * _local13)); _local16 = (0.5 * _local15); _local4 = (_local4 + _local16); _local3.x = (_local3.x + ((_local16 * _local7) * ((_local5 + _local9.x) + _local10.x))); _local3.y = (_local3.y + ((_local16 * _local7) * ((_local6 + _local9.y) + _local10.y))); _local8++; }; _local3.x = (_local3.x * (1 / _local4)); _local3.y = (_local3.y * (1 / _local4)); return (_local3); } public static function ComputeOBB(_arg1:b2OBB, _arg2:Array, _arg3:int):void{ var _local4:int; var _local5:Array; var _local6:Number; var _local7:b2Vec2; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:int; var _local18:Number; var _local19:Number; var _local20:Number; var _local21:Number; var _local22:Number; var _local23:Number; var _local24:Number; var _local25:b2Mat22; _local5 = new Array((b2Settings.b2_maxPolygonVertices + 1)); _local4 = 0; while (_local4 < _arg3) { _local5[_local4] = _arg2[_local4]; _local4++; }; _local5[_arg3] = _local5[0]; _local6 = Number.MAX_VALUE; _local4 = 1; while (_local4 <= _arg3) { _local7 = _local5[int((_local4 - 1))]; _local8 = (_local5[_local4].x - _local7.x); _local9 = (_local5[_local4].y - _local7.y); _local10 = Math.sqrt(((_local8 * _local8) + (_local9 * _local9))); _local8 = (_local8 / _local10); _local9 = (_local9 / _local10); _local11 = -(_local9); _local12 = _local8; _local13 = Number.MAX_VALUE; _local14 = Number.MAX_VALUE; _local15 = -(Number.MAX_VALUE); _local16 = -(Number.MAX_VALUE); _local17 = 0; while (_local17 < _arg3) { _local19 = (_local5[_local17].x - _local7.x); _local20 = (_local5[_local17].y - _local7.y); _local21 = ((_local8 * _local19) + (_local9 * _local20)); _local22 = ((_local11 * _local19) + (_local12 * _local20)); if (_local21 < _local13){ _local13 = _local21; }; if (_local22 < _local14){ _local14 = _local22; }; if (_local21 > _local15){ _local15 = _local21; }; if (_local22 > _local16){ _local16 = _local22; }; _local17++; }; _local18 = ((_local15 - _local13) * (_local16 - _local14)); if (_local18 < (0.95 * _local6)){ _local6 = _local18; _arg1.R.col1.x = _local8; _arg1.R.col1.y = _local9; _arg1.R.col2.x = _local11; _arg1.R.col2.y = _local12; _local23 = (0.5 * (_local13 + _local15)); _local24 = (0.5 * (_local14 + _local16)); _local25 = _arg1.R; _arg1.center.x = (_local7.x + ((_local25.col1.x * _local23) + (_local25.col2.x * _local24))); _arg1.center.y = (_local7.y + ((_local25.col1.y * _local23) + (_local25.col2.y * _local24))); _arg1.extents.x = (0.5 * (_local15 - _local13)); _arg1.extents.y = (0.5 * (_local16 - _local14)); }; _local4++; }; } } }//package Box2D.Collision.Shapes
Section 7
//b2Shape (Box2D.Collision.Shapes.b2Shape) package Box2D.Collision.Shapes { import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Collision.*; public class b2Shape { public var m_type:int; public var m_sweepRadius:Number; public var m_density:Number; public var :b2FilterData; public var m_friction:Number; public var m_next:b2Shape; public var m_restitution:Number; public var m_userData; public var :Boolean; public var :uint; public var m_body:b2Body; public static const e_polygonShape:int = 1; public static const e_unknownShape:int = -1; public static const e_circleShape:int = 0; public static const e_shapeTypeCount:int = 2; private static var s_resetAABB:b2AABB = new b2AABB(); private static var s_syncAABB:b2AABB = new b2AABB(); private static var s_proxyAABB:b2AABB = new b2AABB(); public function b2Shape(_arg1:b2ShapeDef){ m_userData = _arg1.userData; m_friction = _arg1.friction; m_restitution = _arg1.restitution; m_density = _arg1.density; m_body = null; m_sweepRadius = 0; m_next = null;  = b2Pair.b2_nullProxy;  = _arg1.filter.Copy();  = _arg1. ; } public function TestPoint(_arg1:b2XForm, _arg2:b2Vec2):Boolean{ return (false); } public function ():Number{ return (m_sweepRadius); } public function GetNext():b2Shape{ return (m_next); } public function ComputeSweptAABB(_arg1:b2AABB, _arg2:b2XForm, _arg3:b2XForm):void{ } public function GetType():int{ return (m_type); } public function ():Number{ return (m_restitution); } public function ():Number{ return (m_friction); } public function GetFilterData():b2FilterData{ return (.Copy()); } public function TestSegment(_arg1:b2XForm, _arg2:Array, _arg3:b2Vec2, _arg4:b2Segment, _arg5:Number):Boolean{ return (false); } public function RefilterProxy(_arg1:b2BroadPhase, _arg2:b2XForm):void{ var _local3:b2AABB; var _local4:Boolean; if ( == b2Pair.b2_nullProxy){ return; }; _arg1.DestroyProxy(); _local3 = s_resetAABB; ComputeAABB(_local3, _arg2); _local4 = _arg1.InRange(_local3); if (_local4){  = _arg1.CreateProxy(_local3, this); } else {  = b2Pair.b2_nullProxy; }; } public function  (_arg1:b2FilterData):void{  = _arg1.Copy(); } public function GetUserData(){ return (m_userData); } public function Synchronize(_arg1:b2BroadPhase, _arg2:b2XForm, _arg3:b2XForm):Boolean{ var _local4:b2AABB; if ( == b2Pair.b2_nullProxy){ return (false); }; _local4 = s_syncAABB; ComputeSweptAABB(_local4, _arg2, _arg3); if (_arg1.InRange(_local4)){ _arg1.MoveProxy(, _local4); return (true); }; return (false); } public function ComputeMass(_arg1:b2MassData):void{ } public function  ():Boolean{ return (); } public function DestroyProxy(_arg1:b2BroadPhase):void{ if ( != b2Pair.b2_nullProxy){ _arg1.DestroyProxy();  = b2Pair.b2_nullProxy; }; } public function UpdateSweepRadius(_arg1:b2Vec2):void{ } public function ComputeAABB(_arg1:b2AABB, _arg2:b2XForm):void{ } public function  ():b2Body{ return (m_body); } public function CreateProxy(_arg1:b2BroadPhase, _arg2:b2XForm):void{ var _local3:b2AABB; var _local4:Boolean; _local3 = s_proxyAABB; ComputeAABB(_local3, _arg2); _local4 = _arg1.InRange(_local3); if (_local4){  = _arg1.CreateProxy(_local3, this); } else {  = b2Pair.b2_nullProxy; }; } public function SetUserData(_arg1):void{ m_userData = _arg1; } public static function Destroy(_arg1:b2Shape, _arg2):void{ } public static function Create(_arg1:b2ShapeDef, _arg2):b2Shape{ switch (_arg1.type){ case e_circleShape: return (new b2CircleShape(_arg1)); case e_polygonShape: return (new b2PolygonShape(_arg1)); default: return (null); }; } } }//package Box2D.Collision.Shapes
Section 8
//b2ShapeDef (Box2D.Collision.Shapes.b2ShapeDef) package Box2D.Collision.Shapes { public class b2ShapeDef { public var  :Boolean;// = false public var density:Number;// = 0 public var type:int;// = -1 public var restitution:Number;// = 0 public var userData;// = null public var filter:b2FilterData; public var friction:Number;// = 0.2 public function b2ShapeDef(){ type = b2Shape.e_unknownShape; userData = null; friction = 0.2; restitution = 0; density = 0;   = false; filter = new b2FilterData(); super(); } } }//package Box2D.Collision.Shapes
Section 9
//b2AABB (Box2D.Collision.b2AABB) package Box2D.Collision { import Box2D.Common.Math.*; public class b2AABB { public var upperBound:b2Vec2; public var lowerBound:b2Vec2; public function b2AABB(){ lowerBound = new b2Vec2(); upperBound = new b2Vec2(); super(); } public function IsValid():Boolean{ var _local1:Number; var _local2:Number; var _local3:Boolean; _local1 = (upperBound.x - lowerBound.x); _local2 = (upperBound.y - lowerBound.y); _local3 = (((_local1 >= 0)) && ((_local2 >= 0))); _local3 = ((((_local3) && (lowerBound.IsValid()))) && (upperBound.IsValid())); return (_local3); } } }//package Box2D.Collision
Section 10
//b2Bound (Box2D.Collision.b2Bound) package Box2D.Collision { public class b2Bound { public var proxyId:uint; public var stabbingCount:uint; public var value:uint; public function Swap(_arg1:b2Bound):void{ var _local2:uint; var _local3:uint; var _local4:uint; _local2 = value; _local3 = proxyId; _local4 = stabbingCount; value = _arg1.value; proxyId = _arg1.proxyId; stabbingCount = _arg1.stabbingCount; _arg1.value = _local2; _arg1.proxyId = _local3; _arg1.stabbingCount = _local4; } public function IsLower():Boolean{ return (((value & 1) == 0)); } public function IsUpper():Boolean{ return (((value & 1) == 1)); } } }//package Box2D.Collision
Section 11
//b2BoundValues (Box2D.Collision.b2BoundValues) package Box2D.Collision { public class b2BoundValues { public var lowerValues:Array; public var upperValues:Array; public function b2BoundValues(){ lowerValues = [0, 0]; upperValues = [0, 0]; super(); } } }//package Box2D.Collision
Section 12
//b2BroadPhase (Box2D.Collision.b2BroadPhase) package Box2D.Collision { import Box2D.Common.Math.*; import Box2D.Common.*; public class b2BroadPhase { public var m_quantizationFactor:b2Vec2; public var m_worldAABB:b2AABB; public var m_bounds:Array; public var :uint; public var m_proxyCount:int; public var m_proxyPool:Array; public var  :int; public var m_pairManager:b2PairManager; public var :uint; public var :Array; public static const b2_nullEdge:uint = b2Settings.USHRT_MAX; public static const b2_invalid:uint = b2Settings.USHRT_MAX; public static var s_validate:Boolean = false; public function b2BroadPhase(_arg1:b2AABB, _arg2:b2PairCallback){ var _local3:int; var _local4:Number; var _local5:Number; var _local6:b2Proxy; var _local7:int; m_pairManager = new b2PairManager(); m_proxyPool = new Array(b2Settings.b2_maxPairs); m_bounds = new Array((2 * b2Settings.b2_maxProxies));  = new Array(b2Settings.b2_maxProxies); m_quantizationFactor = new b2Vec2(); super(); m_pairManager.Initialize(this, _arg2); m_worldAABB = _arg1; m_proxyCount = 0; _local3 = 0; while (_local3 < b2Settings.b2_maxProxies) { [_local3] = 0; _local3++; }; m_bounds = new Array(2); _local3 = 0; while (_local3 < 2) { m_bounds[_local3] = new Array((2 * b2Settings.b2_maxProxies)); _local7 = 0; while (_local7 < (2 * b2Settings.b2_maxProxies)) { m_bounds[_local3][_local7] = new b2Bound(); _local7++; }; _local3++; }; _local4 = (_arg1.upperBound.x - _arg1.lowerBound.x); _local5 = (_arg1.upperBound.y - _arg1.lowerBound.y); m_quantizationFactor.x = (b2Settings.USHRT_MAX / _local4); m_quantizationFactor.y = (b2Settings.USHRT_MAX / _local5); _local3 = 0; while (_local3 < (b2Settings.b2_maxProxies - 1)) { _local6 = new b2Proxy(); m_proxyPool[_local3] = _local6; _local6.SetNext((_local3 + 1)); _local6.timeStamp = 0; _local6.overlapCount = b2_invalid; _local6.userData = null; _local3++; }; _local6 = new b2Proxy(); m_proxyPool[int((b2Settings.b2_maxProxies - 1))] = _local6; _local6.SetNext(b2Pair.b2_nullProxy); _local6.timeStamp = 0; _local6.overlapCount = b2_invalid; _local6.userData = null;  = 0;  = 1;  = 0; } public function QueryAABB(_arg1:b2AABB, _arg2, _arg3:int):int{ var _local4:Array; var _local5:Array; var _local6:uint; var _local7:uint; var _local8:Array; var _local9:Array; var _local10:int; var _local11:int; var _local12:b2Proxy; _local4 = new Array(); _local5 = new Array(); (_local4, _local5, _arg1); _local8 = [_local6]; _local9 = [_local7]; Query(_local8, _local9, _local4[0], _local5[0], m_bounds[0], (2 * m_proxyCount), 0); Query(_local8, _local9, _local4[1], _local5[1], m_bounds[1], (2 * m_proxyCount), 1); _local10 = 0; _local11 = 0; while ((((_local11 <  )) && ((_local10 < _arg3)))) { _local12 = m_proxyPool[[_local11]]; _arg2[_local11] = _local12.userData; _local11++; _local10++; };  = 0; (); return (_local10); } public function Commit():void{ m_pairManager.Commit(); } public function  (_arg1:int):b2Proxy{ var _local2:b2Proxy; _local2 = m_proxyPool[_arg1]; if ((((_arg1 == b2Pair.b2_nullProxy)) || ((_local2.IsValid() == false)))){ return (null); }; return (_local2); } private function ():void{ var _local1:uint; if ( == b2Settings.USHRT_MAX){ _local1 = 0; while (_local1 < b2Settings.b2_maxProxies) { (m_proxyPool[_local1] as b2Proxy).timeStamp = 0; _local1++; };  = 1; } else { ++; }; } private function Query(_arg1:Array, _arg2:Array, _arg3:uint, _arg4:uint, _arg5:Array, _arg6:uint, _arg7:int):void{ var _local8:uint; var _local9:uint; var _local10:b2Bound; var _local11:uint; var _local12:int; var _local13:int; var _local14:b2Proxy; _local8 = BinarySearch(_arg5, _arg6, _arg3); _local9 = BinarySearch(_arg5, _arg6, _arg4); _local11 = _local8; while (_local11 < _local9) { _local10 = _arg5[_local11]; if (_local10.IsLower()){ (_local10.proxyId); }; _local11++; }; if (_local8 > 0){ _local12 = (_local8 - 1); _local10 = _arg5[_local12]; _local13 = _local10.stabbingCount; while (_local13) { _local10 = _arg5[_local12]; if (_local10.IsLower()){ _local14 = m_proxyPool[_local10.proxyId]; if (_local8 <= _local14.upperBounds[_arg7]){ (_local10.proxyId); _local13--; }; }; _local12--; }; }; _arg1[0] = _local8; _arg2[0] = _local9; } private function (_arg1:b2Proxy, _arg2:b2Proxy):Boolean{ var _local3:int; var _local4:Array; var _local5:b2Bound; var _local6:b2Bound; _local3 = 0; while (_local3 < 2) { _local4 = m_bounds[_local3]; _local5 = _local4[_arg1.lowerBounds[_local3]]; _local6 = _local4[_arg2.upperBounds[_local3]]; if (_local5.value > _local6.value){ return (false); }; _local5 = _local4[_arg1.upperBounds[_local3]]; _local6 = _local4[_arg2.lowerBounds[_local3]]; if (_local5.value < _local6.value){ return (false); }; _local3++; }; return (true); } private function (_arg1:Array, _arg2:Array, _arg3:b2AABB):void{ var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; _local4 = _arg3.lowerBound.x; _local5 = _arg3.lowerBound.y; _local4 = b2Math.b2Min(_local4, m_worldAABB.upperBound.x); _local5 = b2Math.b2Min(_local5, m_worldAABB.upperBound.y); _local4 = b2Math.b2Max(_local4, m_worldAABB.lowerBound.x); _local5 = b2Math.b2Max(_local5, m_worldAABB.lowerBound.y); _local6 = _arg3.upperBound.x; _local7 = _arg3.upperBound.y; _local6 = b2Math.b2Min(_local6, m_worldAABB.upperBound.x); _local7 = b2Math.b2Min(_local7, m_worldAABB.upperBound.y); _local6 = b2Math.b2Max(_local6, m_worldAABB.lowerBound.x); _local7 = b2Math.b2Max(_local7, m_worldAABB.lowerBound.y); _arg1[0] = (uint((m_quantizationFactor.x * (_local4 - m_worldAABB.lowerBound.x))) & (b2Settings.USHRT_MAX - 1)); _arg2[0] = ((uint((m_quantizationFactor.x * (_local6 - m_worldAABB.lowerBound.x))) & 0xFFFF) | 1); _arg1[1] = (uint((m_quantizationFactor.y * (_local5 - m_worldAABB.lowerBound.y))) & (b2Settings.USHRT_MAX - 1)); _arg2[1] = ((uint((m_quantizationFactor.y * (_local7 - m_worldAABB.lowerBound.y))) & 0xFFFF) | 1); } public function CreateProxy(_arg1:b2AABB, _arg2):uint{ var _local3:uint; var _local4:b2Proxy; var _local5:uint; var _local6:uint; var _local7:Array; var _local8:Array; var _local9:int; var _local10:int; var _local11:Array; var _local12:uint; var _local13:uint; var _local14:Array; var _local15:Array; var _local16:Array; var _local17:int; var _local18:int; var _local19:b2Bound; var _local20:b2Bound; var _local21:b2Bound; var _local22:int; var _local23:b2Proxy; _local5 = ; _local4 = m_proxyPool[_local5];  = _local4.GetNext(); _local4.overlapCount = 0; _local4.userData = _arg2; _local6 = (2 * m_proxyCount); _local7 = new Array(); _local8 = new Array(); (_local7, _local8, _arg1); _local9 = 0; while (_local9 < 2) { _local11 = m_bounds[_local9]; _local14 = [_local12]; _local15 = [_local13]; Query(_local14, _local15, _local7[_local9], _local8[_local9], _local11, _local6, _local9); _local12 = _local14[0]; _local13 = _local15[0]; _local16 = new Array(); _local18 = (_local6 - _local13); _local17 = 0; while (_local17 < _local18) { _local16[_local17] = new b2Bound(); _local19 = _local16[_local17]; _local20 = _local11[int((_local13 + _local17))]; _local19.value = _local20.value; _local19.proxyId = _local20.proxyId; _local19.stabbingCount = _local20.stabbingCount; _local17++; }; _local18 = _local16.length; _local22 = (_local13 + 2); _local17 = 0; while (_local17 < _local18) { _local20 = _local16[_local17]; _local19 = _local11[int((_local22 + _local17))]; _local19.value = _local20.value; _local19.proxyId = _local20.proxyId; _local19.stabbingCount = _local20.stabbingCount; _local17++; }; _local16 = new Array(); _local18 = (_local13 - _local12); _local17 = 0; while (_local17 < _local18) { _local16[_local17] = new b2Bound(); _local19 = _local16[_local17]; _local20 = _local11[int((_local12 + _local17))]; _local19.value = _local20.value; _local19.proxyId = _local20.proxyId; _local19.stabbingCount = _local20.stabbingCount; _local17++; }; _local18 = _local16.length; _local22 = (_local12 + 1); _local17 = 0; while (_local17 < _local18) { _local20 = _local16[_local17]; _local19 = _local11[int((_local22 + _local17))]; _local19.value = _local20.value; _local19.proxyId = _local20.proxyId; _local19.stabbingCount = _local20.stabbingCount; _local17++; }; _local13++; _local19 = _local11[_local12]; _local20 = _local11[_local13]; _local19.value = _local7[_local9]; _local19.proxyId = _local5; _local20.value = _local8[_local9]; _local20.proxyId = _local5; _local21 = _local11[int((_local12 - 1))]; _local19.stabbingCount = ((_local12 == 0)) ? 0 : _local21.stabbingCount; _local21 = _local11[int((_local13 - 1))]; _local20.stabbingCount = _local21.stabbingCount; _local3 = _local12; while (_local3 < _local13) { _local21 = _local11[_local3]; _local21.stabbingCount++; _local3++; }; _local3 = _local12; while (_local3 < (_local6 + 2)) { _local19 = _local11[_local3]; _local23 = m_proxyPool[_local19.proxyId]; if (_local19.IsLower()){ _local23.lowerBounds[_local9] = _local3; } else { _local23.upperBounds[_local9] = _local3; }; _local3++; }; _local9++; }; m_proxyCount++; _local10 = 0; while (_local10 <  ) { m_pairManager.AddBufferedPair(_local5, [_local10]); _local10++; }; m_pairManager.Commit();  = 0; (); return (_local5); } public function DestroyProxy(_arg1:uint):void{ var _local2:b2Bound; var _local3:b2Bound; var _local4:b2Proxy; var _local5:int; var _local6:int; var _local7:int; var _local8:Array; var _local9:uint; var _local10:uint; var _local11:uint; var _local12:uint; var _local13:Array; var _local14:int; var _local15:int; var _local16:int; var _local17:uint; var _local18:int; var _local19:b2Proxy; _local4 = m_proxyPool[_arg1]; _local5 = (2 * m_proxyCount); _local6 = 0; while (_local6 < 2) { _local8 = m_bounds[_local6]; _local9 = _local4.lowerBounds[_local6]; _local10 = _local4.upperBounds[_local6]; _local2 = _local8[_local9]; _local11 = _local2.value; _local3 = _local8[_local10]; _local12 = _local3.value; _local13 = new Array(); _local15 = ((_local10 - _local9) - 1); _local14 = 0; while (_local14 < _local15) { _local13[_local14] = new b2Bound(); _local2 = _local13[_local14]; _local3 = _local8[int(((_local9 + 1) + _local14))]; _local2.value = _local3.value; _local2.proxyId = _local3.proxyId; _local2.stabbingCount = _local3.stabbingCount; _local14++; }; _local15 = _local13.length; _local16 = _local9; _local14 = 0; while (_local14 < _local15) { _local3 = _local13[_local14]; _local2 = _local8[int((_local16 + _local14))]; _local2.value = _local3.value; _local2.proxyId = _local3.proxyId; _local2.stabbingCount = _local3.stabbingCount; _local14++; }; _local13 = new Array(); _local15 = ((_local5 - _local10) - 1); _local14 = 0; while (_local14 < _local15) { _local13[_local14] = new b2Bound(); _local2 = _local13[_local14]; _local3 = _local8[int(((_local10 + 1) + _local14))]; _local2.value = _local3.value; _local2.proxyId = _local3.proxyId; _local2.stabbingCount = _local3.stabbingCount; _local14++; }; _local15 = _local13.length; _local16 = (_local10 - 1); _local14 = 0; while (_local14 < _local15) { _local3 = _local13[_local14]; _local2 = _local8[int((_local16 + _local14))]; _local2.value = _local3.value; _local2.proxyId = _local3.proxyId; _local2.stabbingCount = _local3.stabbingCount; _local14++; }; _local15 = (_local5 - 2); _local17 = _local9; while (_local17 < _local15) { _local2 = _local8[_local17]; _local19 = m_proxyPool[_local2.proxyId]; if (_local2.IsLower()){ _local19.lowerBounds[_local6] = _local17; } else { _local19.upperBounds[_local6] = _local17; }; _local17++; }; _local15 = (_local10 - 1); _local18 = _local9; while (_local18 < _local15) { _local2 = _local8[_local18]; _local2.stabbingCount--; _local18++; }; Query([0], [0], _local11, _local12, _local8, (_local5 - 2), _local6); _local6++; }; _local7 = 0; while (_local7 <  ) { m_pairManager.RemoveBufferedPair(_arg1, [_local7]); _local7++; }; m_pairManager.Commit();  = 0; (); _local4.userData = null; _local4.overlapCount = b2_invalid; _local4.lowerBounds[0] = b2_invalid; _local4.lowerBounds[1] = b2_invalid; _local4.upperBounds[0] = b2_invalid; _local4.upperBounds[1] = b2_invalid; _local4.SetNext();  = _arg1; m_proxyCount--; } public function (_arg1:b2BoundValues, _arg2:b2Proxy):Boolean{ var _local3:int; var _local4:Array; var _local5:b2Bound; _local3 = 0; while (_local3 < 2) { _local4 = m_bounds[_local3]; _local5 = _local4[_arg2.upperBounds[_local3]]; if (_arg1.lowerValues[_local3] > _local5.value){ return (false); }; _local5 = _local4[_arg2.lowerBounds[_local3]]; if (_arg1.upperValues[_local3] < _local5.value){ return (false); }; _local3++; }; return (true); } public function Validate():void{ var _local1:b2Pair; var _local2:b2Proxy; var _local3:b2Proxy; var _local4:Boolean; var _local5:int; var _local6:b2Bound; var _local7:uint; var _local8:uint; var _local9:uint; var _local10:b2Bound; _local5 = 0; while (_local5 < 2) { _local6 = m_bounds[_local5]; _local7 = (2 * m_proxyCount); _local8 = 0; _local9 = 0; while (_local9 < _local7) { _local10 = _local6[_local9]; if (_local10.IsLower() == true){ _local8++; } else { _local8--; }; _local9++; }; _local5++; }; } private function (_arg1:uint):void{ var _local2:b2Proxy; _local2 = m_proxyPool[_arg1]; if (_local2.timeStamp < ){ _local2.timeStamp = ; _local2.overlapCount = 1; } else { _local2.overlapCount = 2; [ ] = _arg1;  ++; }; } public function InRange(_arg1:b2AABB):Boolean{ var _local2:Number; var _local3:Number; var _local4:Number; var _local5:Number; _local2 = _arg1.lowerBound.x; _local3 = _arg1.lowerBound.y; _local2 = (_local2 - m_worldAABB.upperBound.x); _local3 = (_local3 - m_worldAABB.upperBound.y); _local4 = m_worldAABB.lowerBound.x; _local5 = m_worldAABB.lowerBound.y; _local4 = (_local4 - _arg1.upperBound.x); _local5 = (_local5 - _arg1.upperBound.y); _local2 = b2Math.b2Max(_local2, _local4); _local3 = b2Math.b2Max(_local3, _local5); return ((b2Math.b2Max(_local2, _local3) < 0)); } public function MoveProxy(_arg1:uint, _arg2:b2AABB):void{ var _local3:Array; var _local4:int; var _local5:uint; var _local6:uint; var _local7:b2Bound; var _local8:b2Bound; var _local9:b2Bound; var _local10:uint; var _local11:b2Proxy; var _local12:uint; var _local13:b2Proxy; var _local14:b2BoundValues; var _local15:b2BoundValues; var _local16:Array; var _local17:uint; var _local18:uint; var _local19:uint; var _local20:uint; var _local21:int; var _local22:int; var _local23:uint; var _local24:b2Proxy; if ((((_arg1 == b2Pair.b2_nullProxy)) || ((b2Settings.b2_maxProxies <= _arg1)))){ return; }; if (_arg2.IsValid() == false){ return; }; _local12 = (2 * m_proxyCount); _local13 = m_proxyPool[_arg1]; _local14 = new b2BoundValues(); (_local14.lowerValues, _local14.upperValues, _arg2); _local15 = new b2BoundValues(); _local5 = 0; while (_local5 < 2) { _local7 = m_bounds[_local5][_local13.lowerBounds[_local5]]; _local15.lowerValues[_local5] = _local7.value; _local7 = m_bounds[_local5][_local13.upperBounds[_local5]]; _local15.upperValues[_local5] = _local7.value; _local5++; }; _local5 = 0; while (_local5 < 2) { _local16 = m_bounds[_local5]; _local17 = _local13.lowerBounds[_local5]; _local18 = _local13.upperBounds[_local5]; _local19 = _local14.lowerValues[_local5]; _local20 = _local14.upperValues[_local5]; _local7 = _local16[_local17]; _local21 = (_local19 - _local7.value); _local7.value = _local19; _local7 = _local16[_local18]; _local22 = (_local20 - _local7.value); _local7.value = _local20; if (_local21 < 0){ _local6 = _local17; while ((((_local6 > 0)) && ((_local19 < (_local16[int((_local6 - 1))] as b2Bound).value)))) { _local7 = _local16[_local6]; _local8 = _local16[int((_local6 - 1))]; _local23 = _local8.proxyId; _local24 = m_proxyPool[_local8.proxyId]; _local8.stabbingCount++; if (_local8.IsUpper() == true){ if ((_local14, _local24)){ m_pairManager.AddBufferedPair(_arg1, _local23); }; _local3 = _local24.upperBounds; _local4 = _local3[_local5]; _local4++; _local3[_local5] = _local4; _local7.stabbingCount++; } else { _local3 = _local24.lowerBounds; _local4 = _local3[_local5]; _local4++; _local3[_local5] = _local4; _local7.stabbingCount--; }; _local3 = _local13.lowerBounds; _local4 = _local3[_local5]; _local4--; _local3[_local5] = _local4; _local7.Swap(_local8); _local6--; }; }; if (_local22 > 0){ _local6 = _local18; while ((((_local6 < (_local12 - 1))) && (((_local16[int((_local6 + 1))] as b2Bound).value <= _local20)))) { _local7 = _local16[_local6]; _local9 = _local16[int((_local6 + 1))]; _local10 = _local9.proxyId; _local11 = m_proxyPool[_local10]; _local9.stabbingCount++; if (_local9.IsLower() == true){ if ((_local14, _local11)){ m_pairManager.AddBufferedPair(_arg1, _local10); }; _local3 = _local11.lowerBounds; _local4 = _local3[_local5]; _local4--; _local3[_local5] = _local4; _local7.stabbingCount++; } else { _local3 = _local11.upperBounds; _local4 = _local3[_local5]; _local4--; _local3[_local5] = _local4; _local7.stabbingCount--; }; _local3 = _local13.upperBounds; _local4 = _local3[_local5]; _local4++; _local3[_local5] = _local4; _local7.Swap(_local9); _local6++; }; }; if (_local21 > 0){ _local6 = _local17; while ((((_local6 < (_local12 - 1))) && (((_local16[int((_local6 + 1))] as b2Bound).value <= _local19)))) { _local7 = _local16[_local6]; _local9 = _local16[int((_local6 + 1))]; _local10 = _local9.proxyId; _local11 = m_proxyPool[_local10]; _local9.stabbingCount--; if (_local9.IsUpper()){ if ((_local15, _local11)){ m_pairManager.RemoveBufferedPair(_arg1, _local10); }; _local3 = _local11.upperBounds; _local4 = _local3[_local5]; _local4--; _local3[_local5] = _local4; _local7.stabbingCount--; } else { _local3 = _local11.lowerBounds; _local4 = _local3[_local5]; _local4--; _local3[_local5] = _local4; _local7.stabbingCount++; }; _local3 = _local13.lowerBounds; _local4 = _local3[_local5]; _local4++; _local3[_local5] = _local4; _local7.Swap(_local9); _local6++; }; }; if (_local22 < 0){ _local6 = _local18; while ((((_local6 > 0)) && ((_local20 < (_local16[int((_local6 - 1))] as b2Bound).value)))) { _local7 = _local16[_local6]; _local8 = _local16[int((_local6 - 1))]; _local23 = _local8.proxyId; _local24 = m_proxyPool[_local23]; _local8.stabbingCount--; if (_local8.IsLower() == true){ if ((_local15, _local24)){ m_pairManager.RemoveBufferedPair(_arg1, _local23); }; _local3 = _local24.lowerBounds; _local4 = _local3[_local5]; _local4++; _local3[_local5] = _local4; _local7.stabbingCount--; } else { _local3 = _local24.upperBounds; _local4 = _local3[_local5]; _local4++; _local3[_local5] = _local4; _local7.stabbingCount++; }; _local3 = _local13.upperBounds; _local4 = _local3[_local5]; _local4--; _local3[_local5] = _local4; _local7.Swap(_local8); _local6--; }; }; _local5++; }; } public static function BinarySearch(_arg1:Array, _arg2:int, _arg3:uint):uint{ var _local4:int; var _local5:int; var _local6:int; var _local7:b2Bound; _local4 = 0; _local5 = (_arg2 - 1); while (_local4 <= _local5) { _local6 = ((_local4 + _local5) / 2); _local7 = _arg1[_local6]; if (_local7.value > _arg3){ _local5 = (_local6 - 1); } else { if (_local7.value < _arg3){ _local4 = (_local6 + 1); } else { return (uint(_local6)); }; }; }; return (uint(_local4)); } } }//package Box2D.Collision
Section 13
//b2BufferedPair (Box2D.Collision.b2BufferedPair) package Box2D.Collision { public class b2BufferedPair { public var proxyId1:uint; public var proxyId2:uint; } }//package Box2D.Collision
Section 14
//b2Collision (Box2D.Collision.b2Collision) package Box2D.Collision { import Box2D.Common.Math.*; import Box2D.Collision.Shapes.*; import Box2D.Common.*; public class b2Collision { public static const b2_nullFeature:uint = 0xFF; private static var b2CollidePolyTempVec:b2Vec2 = new b2Vec2(); public static function EdgeSeparation(_arg1:b2PolygonShape, _arg2:b2XForm, _arg3:int, _arg4:b2PolygonShape, _arg5:b2XForm):Number{ var _local6:int; var _local7:Array; var _local8:Array; var _local9:int; var _local10:Array; var _local11:b2Mat22; var _local12:b2Vec2; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:int; var _local18:Number; var _local19:int; var _local20:Number; var _local21:Number; var _local22:Number; var _local23:Number; var _local24:Number; var _local25:Number; _local6 = _arg1.; _local7 = _arg1.; _local8 = _arg1.; _local9 = _arg4.; _local10 = _arg4.; _local11 = _arg2.R; _local12 = _local8[_arg3]; _local13 = ((_local11.col1.x * _local12.x) + (_local11.col2.x * _local12.y)); _local14 = ((_local11.col1.y * _local12.x) + (_local11.col2.y * _local12.y)); _local11 = _arg5.R; _local15 = ((_local11.col1.x * _local13) + (_local11.col1.y * _local14)); _local16 = ((_local11.col2.x * _local13) + (_local11.col2.y * _local14)); _local17 = 0; _local18 = Number.MAX_VALUE; _local19 = 0; while (_local19 < _local9) { _local12 = _local10[_local19]; _local25 = ((_local12.x * _local15) + (_local12.y * _local16)); if (_local25 < _local18){ _local18 = _local25; _local17 = _local19; }; _local19++; }; _local12 = _local7[_arg3]; _local11 = _arg2.R; _local20 = (_arg2.position.x + ((_local11.col1.x * _local12.x) + (_local11.col2.x * _local12.y))); _local21 = (_arg2.position.y + ((_local11.col1.y * _local12.x) + (_local11.col2.y * _local12.y))); _local12 = _local10[_local17]; _local11 = _arg5.R; _local22 = (_arg5.position.x + ((_local11.col1.x * _local12.x) + (_local11.col2.x * _local12.y))); _local23 = (_arg5.position.y + ((_local11.col1.y * _local12.x) + (_local11.col2.y * _local12.y))); _local22 = (_local22 - _local20); _local23 = (_local23 - _local21); _local24 = ((_local22 * _local13) + (_local23 * _local14)); return (_local24); } public static function b2TestOverlap(_arg1:b2AABB, _arg2:b2AABB):Boolean{ var _local3:b2Vec2; var _local4:b2Vec2; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; _local3 = _arg2.lowerBound; _local4 = _arg1.upperBound; _local5 = (_local3.x - _local4.x); _local6 = (_local3.y - _local4.y); _local3 = _arg1.lowerBound; _local4 = _arg2.upperBound; _local7 = (_local3.x - _local4.x); _local8 = (_local3.y - _local4.y); if ((((_local5 > 0)) || ((_local6 > 0)))){ return (false); }; if ((((_local7 > 0)) || ((_local8 > 0)))){ return (false); }; return (true); } public static function FindIncidentEdge(_arg1:Array, _arg2:b2PolygonShape, _arg3:b2XForm, _arg4:int, _arg5:b2PolygonShape, _arg6:b2XForm):void{ var _local7:int; var _local8:Array; var _local9:int; var _local10:Array; var _local11:Array; var _local12:b2Mat22; var _local13:b2Vec2; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:int; var _local18:Number; var _local19:int; var _local20:ClipVertex; var _local21:int; var _local22:int; var _local23:Number; _local7 = _arg2.; _local8 = _arg2.; _local9 = _arg5.; _local10 = _arg5.; _local11 = _arg5.; _local12 = _arg3.R; _local13 = _local8[_arg4]; _local14 = ((_local12.col1.x * _local13.x) + (_local12.col2.x * _local13.y)); _local15 = ((_local12.col1.y * _local13.x) + (_local12.col2.y * _local13.y)); _local12 = _arg6.R; _local16 = ((_local12.col1.x * _local14) + (_local12.col1.y * _local15)); _local15 = ((_local12.col2.x * _local14) + (_local12.col2.y * _local15)); _local14 = _local16; _local17 = 0; _local18 = Number.MAX_VALUE; _local19 = 0; while (_local19 < _local9) { _local13 = _local11[_local19]; _local23 = ((_local14 * _local13.x) + (_local15 * _local13.y)); if (_local23 < _local18){ _local18 = _local23; _local17 = _local19; }; _local19++; }; _local21 = _local17; _local22 = (((_local21 + 1) < _local9)) ? (_local21 + 1) : 0; _local20 = _arg1[0]; _local13 = _local10[_local21]; _local12 = _arg6.R; _local20.v.x = (_arg6.position.x + ((_local12.col1.x * _local13.x) + (_local12.col2.x * _local13.y))); _local20.v.y = (_arg6.position.y + ((_local12.col1.y * _local13.x) + (_local12.col2.y * _local13.y))); _local20.id. .referenceEdge = _arg4; _local20.id. .incidentEdge = _local21; _local20.id. .incidentVertex = 0; _local20 = _arg1[1]; _local13 = _local10[_local22]; _local12 = _arg6.R; _local20.v.x = (_arg6.position.x + ((_local12.col1.x * _local13.x) + (_local12.col2.x * _local13.y))); _local20.v.y = (_arg6.position.y + ((_local12.col1.y * _local13.x) + (_local12.col2.y * _local13.y))); _local20.id. .referenceEdge = _arg4; _local20.id. .incidentEdge = _local22; _local20.id. .incidentVertex = 1; } public static function b2CollidePolygons(_arg1:b2Manifold, _arg2:b2PolygonShape, _arg3:b2XForm, _arg4:b2PolygonShape, _arg5:b2XForm):void{ var _local6:ClipVertex; var _local7:int; var _local8:Array; var _local9:Number; var _local10:int; var _local11:Array; var _local12:Number; var _local13:b2PolygonShape; var _local14:b2PolygonShape; var _local15:b2XForm; var _local16:b2XForm; var _local17:int; var _local18:uint; var _local19:Number; var _local20:Number; var _local21:Array; var _local22:int; var _local23:Array; var _local24:b2Vec2; var _local25:b2Vec2; var _local26:b2Vec2; var _local27:b2Vec2; var _local28:b2Vec2; var _local29:Number; var _local30:Number; var _local31:Number; var _local32:Array; var _local33:Array; var _local34:int; var _local35:int; var _local36:int; var _local37:b2Vec2; var _local38:Number; var _local39:b2ManifoldPoint; _arg1.pointCount = 0; _local7 = 0; _local8 = [_local7]; _local9 = FindMaxSeparation(_local8, _arg2, _arg3, _arg4, _arg5); _local7 = _local8[0]; if (_local9 > 0){ return; }; _local10 = 0; _local11 = [_local10]; _local12 = FindMaxSeparation(_local11, _arg4, _arg5, _arg2, _arg3); _local10 = _local11[0]; if (_local12 > 0){ return; }; _local15 = new b2XForm(); _local16 = new b2XForm(); _local19 = 0.98; _local20 = 0.001; if (_local12 > ((_local19 * _local9) + _local20)){ _local13 = _arg4; _local14 = _arg2; _local15.Set(_arg5); _local16.Set(_arg3); _local17 = _local10; _local18 = 1; } else { _local13 = _arg2; _local14 = _arg4; _local15.Set(_arg3); _local16.Set(_arg5); _local17 = _local7; _local18 = 0; }; _local21 = [new ClipVertex(), new ClipVertex()]; FindIncidentEdge(_local21, _local13, _local15, _local17, _local14, _local16); _local22 = _local13.; _local23 = _local13.; _local24 = _local23[_local17]; _local25 = _local24.Copy(); if ((_local17 + 1) < _local22){ _local24 = _local23[int((_local17 + 1))]; _local37 = _local24.Copy(); } else { _local24 = _local23[0]; _local37 = _local24.Copy(); }; _local26 = b2Math.SubtractVV(_local37, _local25); _local27 = b2Math.b2MulMV(_local15.R, b2Math.SubtractVV(_local37, _local25)); _local27.Normalize(); _local28 = b2Math.b2CrossVF(_local27, 1); _local25 = b2Math.b2MulX(_local15, _local25); _local37 = b2Math.b2MulX(_local15, _local37); _local29 = b2Math.b2Dot(_local28, _local25); _local30 = -(b2Math.b2Dot(_local27, _local25)); _local31 = b2Math.b2Dot(_local27, _local37); _local32 = [new ClipVertex(), new ClipVertex()]; _local33 = [new ClipVertex(), new ClipVertex()]; _local34 = ClipSegmentToLine(_local32, _local21, _local27. (), _local30); if (_local34 < 2){ return; }; _local34 = ClipSegmentToLine(_local33, _local32, _local27, _local31); if (_local34 < 2){ return; }; _arg1.normal = (_local18) ? _local28. () : _local28.Copy(); _local35 = 0; _local36 = 0; while (_local36 < b2Settings.b2_maxManifoldPoints) { _local6 = _local33[_local36]; _local38 = (b2Math.b2Dot(_local28, _local6.v) - _local29); if (_local38 <= 0){ _local39 = _arg1.points[_local35]; _local39.separation = _local38; _local39.localPoint1 = b2Math.b2MulXT(_arg3, _local6.v); _local39.localPoint2 = b2Math.b2MulXT(_arg5, _local6.v); _local39.id.key = _local6.id._key; _local39.id. .flip = _local18; _local35++; }; _local36++; }; _arg1.pointCount = _local35; } public static function FindMaxSeparation(_arg1:Array, _arg2:b2PolygonShape, _arg3:b2XForm, _arg4:b2PolygonShape, _arg5:b2XForm):Number{ var _local6:int; var _local7:Array; var _local8:b2Vec2; var _local9:b2Mat22; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:int; var _local15:Number; var _local16:int; var _local17:Number; var _local18:int; var _local19:Number; var _local20:int; var _local21:Number; var _local22:int; var _local23:Number; var _local24:int; var _local25:Number; _local6 = _arg2.; _local7 = _arg2.; _local9 = _arg5.R; _local8 = _arg4. ; _local10 = (_arg5.position.x + ((_local9.col1.x * _local8.x) + (_local9.col2.x * _local8.y))); _local11 = (_arg5.position.y + ((_local9.col1.y * _local8.x) + (_local9.col2.y * _local8.y))); _local9 = _arg3.R; _local8 = _arg2. ; _local10 = (_local10 - (_arg3.position.x + ((_local9.col1.x * _local8.x) + (_local9.col2.x * _local8.y)))); _local11 = (_local11 - (_arg3.position.y + ((_local9.col1.y * _local8.x) + (_local9.col2.y * _local8.y)))); _local12 = ((_local10 * _arg3.R.col1.x) + (_local11 * _arg3.R.col1.y)); _local13 = ((_local10 * _arg3.R.col2.x) + (_local11 * _arg3.R.col2.y)); _local14 = 0; _local15 = -(Number.MAX_VALUE); _local16 = 0; while (_local16 < _local6) { _local8 = _local7[_local16]; _local25 = ((_local8.x * _local12) + (_local8.y * _local13)); if (_local25 > _local15){ _local15 = _local25; _local14 = _local16; }; _local16++; }; _local17 = EdgeSeparation(_arg2, _arg3, _local14, _arg4, _arg5); if (_local17 > 0){ return (_local17); }; _local18 = (((_local14 - 1) >= 0)) ? (_local14 - 1) : (_local6 - 1); _local19 = EdgeSeparation(_arg2, _arg3, _local18, _arg4, _arg5); if (_local19 > 0){ return (_local19); }; _local20 = (((_local14 + 1) < _local6)) ? (_local14 + 1) : 0; _local21 = EdgeSeparation(_arg2, _arg3, _local20, _arg4, _arg5); if (_local21 > 0){ return (_local21); }; if ((((_local19 > _local17)) && ((_local19 > _local21)))){ _local24 = -1; _local22 = _local18; _local23 = _local19; } else { if (_local21 > _local17){ _local24 = 1; _local22 = _local20; _local23 = _local21; } else { _arg1[0] = _local14; return (_local17); }; }; while (true) { if (_local24 == -1){ _local14 = (((_local22 - 1) >= 0)) ? (_local22 - 1) : (_local6 - 1); } else { _local14 = (((_local22 + 1) < _local6)) ? (_local22 + 1) : 0; }; _local17 = EdgeSeparation(_arg2, _arg3, _local14, _arg4, _arg5); if (_local17 > 0){ return (_local17); }; if (_local17 > _local23){ _local22 = _local14; _local23 = _local17; } else { break; }; }; _arg1[0] = _local22; return (_local23); } public static function ClipSegmentToLine(_arg1:Array, _arg2:Array, _arg3:b2Vec2, _arg4:Number):int{ var _local5:ClipVertex; var _local6:int; var _local7:b2Vec2; var _local8:b2Vec2; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:b2Vec2; var _local13:ClipVertex; _local6 = 0; _local5 = _arg2[0]; _local7 = _local5.v; _local5 = _arg2[1]; _local8 = _local5.v; _local9 = (b2Math.b2Dot(_arg3, _local7) - _arg4); _local10 = (b2Math.b2Dot(_arg3, _local8) - _arg4); if (_local9 <= 0){ var _temp1 = _local6; _local6 = (_local6 + 1); var _local14 = _temp1; _arg1[_local14] = _arg2[0]; }; if (_local10 <= 0){ var _temp2 = _local6; _local6 = (_local6 + 1); _local14 = _temp2; _arg1[_local14] = _arg2[1]; }; if ((_local9 * _local10) < 0){ _local11 = (_local9 / (_local9 - _local10)); _local5 = _arg1[_local6]; _local12 = _local5.v; _local12.x = (_local7.x + (_local11 * (_local8.x - _local7.x))); _local12.y = (_local7.y + (_local11 * (_local8.y - _local7.y))); _local5 = _arg1[_local6]; if (_local9 > 0){ _local13 = _arg2[0]; _local5.id = _local13.id; } else { _local13 = _arg2[1]; _local5.id = _local13.id; }; _local6++; }; return (_local6); } public static function b2CollideCircles(_arg1:b2Manifold, _arg2:b2CircleShape, _arg3:b2XForm, _arg4:b2CircleShape, _arg5:b2XForm):void{ var _local6:b2Mat22; var _local7:b2Vec2; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:b2ManifoldPoint; var _local20:Number; var _local21:Number; var _local22:Number; var _local23:Number; var _local24:Number; var _local25:Number; _arg1.pointCount = 0; _local6 = _arg3.R; _local7 = _arg2.m_localPosition; _local8 = (_arg3.position.x + ((_local6.col1.x * _local7.x) + (_local6.col2.x * _local7.y))); _local9 = (_arg3.position.y + ((_local6.col1.y * _local7.x) + (_local6.col2.y * _local7.y))); _local6 = _arg5.R; _local7 = _arg4.m_localPosition; _local10 = (_arg5.position.x + ((_local6.col1.x * _local7.x) + (_local6.col2.x * _local7.y))); _local11 = (_arg5.position.y + ((_local6.col1.y * _local7.x) + (_local6.col2.y * _local7.y))); _local12 = (_local10 - _local8); _local13 = (_local11 - _local9); _local14 = ((_local12 * _local12) + (_local13 * _local13)); _local15 = _arg2.m_radius; _local16 = _arg4.m_radius; _local17 = (_local15 + _local16); if (_local14 > (_local17 * _local17)){ return; }; if (_local14 < Number.MIN_VALUE){ _local18 = -(_local17); _arg1.normal.Set(0, 1); } else { _local24 = Math.sqrt(_local14); _local18 = (_local24 - _local17); _local25 = (1 / _local24); _arg1.normal.x = (_local25 * _local12); _arg1.normal.y = (_local25 * _local13); }; _arg1.pointCount = 1; _local19 = _arg1.points[0]; _local19.id.key = 0; _local19.separation = _local18; _local8 = (_local8 + (_local15 * _arg1.normal.x)); _local9 = (_local9 + (_local15 * _arg1.normal.y)); _local10 = (_local10 - (_local16 * _arg1.normal.x)); _local11 = (_local11 - (_local16 * _arg1.normal.y)); _local20 = (0.5 * (_local8 + _local10)); _local21 = (0.5 * (_local9 + _local11)); _local22 = (_local20 - _arg3.position.x); _local23 = (_local21 - _arg3.position.y); _local19.localPoint1.x = ((_local22 * _arg3.R.col1.x) + (_local23 * _arg3.R.col1.y)); _local19.localPoint1.y = ((_local22 * _arg3.R.col2.x) + (_local23 * _arg3.R.col2.y)); _local22 = (_local20 - _arg5.position.x); _local23 = (_local21 - _arg5.position.y); _local19.localPoint2.x = ((_local22 * _arg5.R.col1.x) + (_local23 * _arg5.R.col1.y)); _local19.localPoint2.y = ((_local22 * _arg5.R.col2.x) + (_local23 * _arg5.R.col2.y)); } public static function b2CollidePolygonAndCircle(_arg1:b2Manifold, _arg2:b2PolygonShape, _arg3:b2XForm, _arg4:b2CircleShape, _arg5:b2XForm):void{ var _local6:b2ManifoldPoint; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:b2Vec2; var _local12:b2Mat22; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:int; var _local19:Number; var _local20:Number; var _local21:int; var _local22:Array; var _local23:Array; var _local24:int; var _local25:int; var _local26:int; var _local27:b2Vec2; var _local28:Number; var _local29:Number; var _local30:Number; var _local31:Number; var _local32:Number; var _local33:Number; var _local34:Number; _arg1.pointCount = 0; _local12 = _arg5.R; _local11 = _arg4.m_localPosition; _local13 = (_arg5.position.x + ((_local12.col1.x * _local11.x) + (_local12.col2.x * _local11.y))); _local14 = (_arg5.position.y + ((_local12.col1.y * _local11.x) + (_local12.col2.y * _local11.y))); _local7 = (_local13 - _arg3.position.x); _local8 = (_local14 - _arg3.position.y); _local12 = _arg3.R; _local15 = ((_local7 * _local12.col1.x) + (_local8 * _local12.col1.y)); _local16 = ((_local7 * _local12.col2.x) + (_local8 * _local12.col2.y)); _local18 = 0; _local19 = -(Number.MAX_VALUE); _local20 = _arg4.m_radius; _local21 = _arg2.; _local22 = _arg2.; _local23 = _arg2.; _local24 = 0; while (_local24 < _local21) { _local11 = _local22[_local24]; _local7 = (_local15 - _local11.x); _local8 = (_local16 - _local11.y); _local11 = _local23[_local24]; _local34 = ((_local11.x * _local7) + (_local11.y * _local8)); if (_local34 > _local20){ return; }; if (_local34 > _local19){ _local19 = _local34; _local18 = _local24; }; _local24++; }; if (_local19 < Number.MIN_VALUE){ _arg1.pointCount = 1; _local11 = _local23[_local18]; _local12 = _arg3.R; _arg1.normal.x = ((_local12.col1.x * _local11.x) + (_local12.col2.x * _local11.y)); _arg1.normal.y = ((_local12.col1.y * _local11.x) + (_local12.col2.y * _local11.y)); _local6 = _arg1.points[0]; _local6.id. .incidentEdge = _local18; _local6.id. .incidentVertex = b2_nullFeature; _local6.id. .referenceEdge = 0; _local6.id. .flip = 0; _local9 = (_local13 - (_local20 * _arg1.normal.x)); _local10 = (_local14 - (_local20 * _arg1.normal.y)); _local7 = (_local9 - _arg3.position.x); _local8 = (_local10 - _arg3.position.y); _local12 = _arg3.R; _local6.localPoint1.x = ((_local7 * _local12.col1.x) + (_local8 * _local12.col1.y)); _local6.localPoint1.y = ((_local7 * _local12.col2.x) + (_local8 * _local12.col2.y)); _local7 = (_local9 - _arg5.position.x); _local8 = (_local10 - _arg5.position.y); _local12 = _arg5.R; _local6.localPoint2.x = ((_local7 * _local12.col1.x) + (_local8 * _local12.col1.y)); _local6.localPoint2.y = ((_local7 * _local12.col2.x) + (_local8 * _local12.col2.y)); _local6.separation = (_local19 - _local20); return; }; _local25 = _local18; _local26 = (((_local25 + 1) < _local21)) ? (_local25 + 1) : 0; _local11 = _local22[_local25]; _local27 = _local22[_local26]; _local28 = (_local27.x - _local11.x); _local29 = (_local27.y - _local11.y); _local30 = Math.sqrt(((_local28 * _local28) + (_local29 * _local29))); _local28 = (_local28 / _local30); _local29 = (_local29 / _local30); _local7 = (_local15 - _local11.x); _local8 = (_local16 - _local11.y); _local31 = ((_local7 * _local28) + (_local8 * _local29)); _local6 = _arg1.points[0]; if (_local31 <= 0){ _local32 = _local11.x; _local33 = _local11.y; _local6.id. .incidentEdge = b2_nullFeature; _local6.id. .incidentVertex = _local25; } else { if (_local31 >= _local30){ _local32 = _local27.x; _local33 = _local27.y; _local6.id. .incidentEdge = b2_nullFeature; _local6.id. .incidentVertex = _local26; } else { _local32 = ((_local28 * _local31) + _local11.x); _local33 = ((_local29 * _local31) + _local11.y); _local6.id. .incidentEdge = _local18; _local6.id. .incidentVertex = 0; }; }; _local7 = (_local15 - _local32); _local8 = (_local16 - _local33); _local17 = Math.sqrt(((_local7 * _local7) + (_local8 * _local8))); _local7 = (_local7 / _local17); _local8 = (_local8 / _local17); if (_local17 > _local20){ return; }; _arg1.pointCount = 1; _local12 = _arg3.R; _arg1.normal.x = ((_local12.col1.x * _local7) + (_local12.col2.x * _local8)); _arg1.normal.y = ((_local12.col1.y * _local7) + (_local12.col2.y * _local8)); _local9 = (_local13 - (_local20 * _arg1.normal.x)); _local10 = (_local14 - (_local20 * _arg1.normal.y)); _local7 = (_local9 - _arg3.position.x); _local8 = (_local10 - _arg3.position.y); _local12 = _arg3.R; _local6.localPoint1.x = ((_local7 * _local12.col1.x) + (_local8 * _local12.col1.y)); _local6.localPoint1.y = ((_local7 * _local12.col2.x) + (_local8 * _local12.col2.y)); _local7 = (_local9 - _arg5.position.x); _local8 = (_local10 - _arg5.position.y); _local12 = _arg5.R; _local6.localPoint2.x = ((_local7 * _local12.col1.x) + (_local8 * _local12.col1.y)); _local6.localPoint2.y = ((_local7 * _local12.col2.x) + (_local8 * _local12.col2.y)); _local6.separation = (_local17 - _local20); _local6.id. .referenceEdge = 0; _local6.id. .flip = 0; } } }//package Box2D.Collision
Section 15
//b2ContactID (Box2D.Collision.b2ContactID) package Box2D.Collision { public class b2ContactID { public var _key:uint; public var  :Features; public function b2ContactID(){  = new Features(); super();  . = this; } public function Set(_arg1:b2ContactID):void{ key = _arg1._key; } public function Copy():b2ContactID{ var _local1:b2ContactID; _local1 = new b2ContactID(); _local1.key = key; return (_local1); } public function get key():uint{ return (_key); } public function set key(_arg1:uint):void{ _key = _arg1;  . = (_key & 0xFF);  . = (((_key & 0xFF00) >> 8) & 0xFF);  . = (((_key & 0xFF0000) >> 16) & 0xFF);  . = (((_key & 4278190080) >> 24) & 0xFF); } } }//package Box2D.Collision
Section 16
//b2ContactPoint (Box2D.Collision.b2ContactPoint) package Box2D.Collision { import Box2D.Common.Math.*; import Box2D.Collision.Shapes.*; public class b2ContactPoint { public var separation:Number; public var normal:b2Vec2; public var position:b2Vec2; public var restitution:Number; public var shape1:b2Shape; public var shape2:b2Shape; public var id:b2ContactID; public var friction:Number; public var velocity:b2Vec2; public function b2ContactPoint(){ position = new b2Vec2(); velocity = new b2Vec2(); normal = new b2Vec2(); id = new b2ContactID(); super(); } } }//package Box2D.Collision
Section 17
//b2Distance (Box2D.Collision.b2Distance) package Box2D.Collision { import Box2D.Common.Math.*; import Box2D.Collision.Shapes.*; import Box2D.Common.*; public class b2Distance { private static var s_p2s:Array = [new b2Vec2(), new b2Vec2(), new b2Vec2()]; private static var s_p1s:Array = [new b2Vec2(), new b2Vec2(), new b2Vec2()]; private static var s_points:Array = [new b2Vec2(), new b2Vec2(), new b2Vec2()]; private static var gPoint:b2Point = new b2Point(); public static var g_GJK_Iterations:int = 0; public static function InPoints(_arg1:b2Vec2, _arg2:Array, _arg3:int):Boolean{ var _local4:Number; var _local5:int; var _local6:b2Vec2; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; _local4 = (100 * Number.MIN_VALUE); _local5 = 0; while (_local5 < _arg3) { _local6 = _arg2[_local5]; _local7 = Math.abs((_arg1.x - _local6.x)); _local8 = Math.abs((_arg1.y - _local6.y)); _local9 = Math.max(Math.abs(_arg1.x), Math.abs(_local6.x)); _local10 = Math.max(Math.abs(_arg1.y), Math.abs(_local6.y)); if ((((_local7 < (_local4 * (_local9 + 1)))) && ((_local8 < (_local4 * (_local10 + 1)))))){ return (true); }; _local5++; }; return (false); } public static function DistanceGeneric(_arg1:b2Vec2, _arg2:b2Vec2, _arg3, _arg4:b2XForm, _arg5, _arg6:b2XForm):Number{ var _local7:b2Vec2; var _local8:Array; var _local9:Array; var _local10:Array; var _local11:int; var _local12:Number; var _local13:int; var _local14:int; var _local15:Number; var _local16:Number; var _local17:b2Vec2; var _local18:b2Vec2; var _local19:Number; var _local20:Number; var _local21:Number; var _local22:Number; var _local23:int; _local8 = s_p1s; _local9 = s_p2s; _local10 = s_points; _local11 = 0; _arg1.SetV(_arg3.GetFirstVertex(_arg4)); _arg2.SetV(_arg5.GetFirstVertex(_arg6)); _local12 = 0; _local13 = 20; _local14 = 0; while (_local14 < _local13) { _local15 = (_arg2.x - _arg1.x); _local16 = (_arg2.y - _arg1.y); _local17 = _arg3.Support(_arg4, _local15, _local16); _local18 = _arg5.Support(_arg6, -(_local15), -(_local16)); _local12 = ((_local15 * _local15) + (_local16 * _local16)); _local19 = (_local18.x - _local17.x); _local20 = (_local18.y - _local17.y); _local21 = ((_local15 * _local19) + (_local16 * _local20)); if ((_local12 - ((_local15 * _local19) + (_local16 * _local20))) <= (0.01 * _local12)){ if (_local11 == 0){ _arg1.SetV(_local17); _arg2.SetV(_local18); }; g_GJK_Iterations = _local14; return (Math.sqrt(_local12)); }; switch (_local11){ case 0: _local7 = _local8[0]; _local7.SetV(_local17); _local7 = _local9[0]; _local7.SetV(_local18); _local7 = _local10[0]; _local7.x = _local19; _local7.y = _local20; _arg1.SetV(_local8[0]); _arg2.SetV(_local9[0]); _local11++; break; case 1: _local7 = _local8[1]; _local7.SetV(_local17); _local7 = _local9[1]; _local7.SetV(_local18); _local7 = _local10[1]; _local7.x = _local19; _local7.y = _local20; _local11 = ProcessTwo(_arg1, _arg2, _local8, _local9, _local10); break; case 2: _local7 = _local8[2]; _local7.SetV(_local17); _local7 = _local9[2]; _local7.SetV(_local18); _local7 = _local10[2]; _local7.x = _local19; _local7.y = _local20; _local11 = ProcessThree(_arg1, _arg2, _local8, _local9, _local10); break; }; if (_local11 == 3){ g_GJK_Iterations = _local14; return (0); }; _local22 = -(Number.MAX_VALUE); _local23 = 0; while (_local23 < _local11) { _local7 = _local10[_local23]; _local22 = b2Math.b2Max(_local22, ((_local7.x * _local7.x) + (_local7.y * _local7.y))); _local23++; }; if ((((_local11 == 3)) || ((_local12 <= ((100 * Number.MIN_VALUE) * _local22))))){ g_GJK_Iterations = _local14; _local15 = (_arg2.x - _arg1.x); _local16 = (_arg2.y - _arg1.y); _local12 = ((_local15 * _local15) + (_local16 * _local16)); return (Math.sqrt(_local12)); }; _local14++; }; g_GJK_Iterations = _local13; return (Math.sqrt(_local12)); } public static function DistanceCC(_arg1:b2Vec2, _arg2:b2Vec2, _arg3:b2CircleShape, _arg4:b2XForm, _arg5:b2CircleShape, _arg6:b2XForm):Number{ var _local7:b2Mat22; var _local8:b2Vec2; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; var _local20:Number; _local7 = _arg4.R; _local8 = _arg3.m_localPosition; _local9 = (_arg4.position.x + ((_local7.col1.x * _local8.x) + (_local7.col2.x * _local8.y))); _local10 = (_arg4.position.y + ((_local7.col1.y * _local8.x) + (_local7.col2.y * _local8.y))); _local7 = _arg6.R; _local8 = _arg5.m_localPosition; _local11 = (_arg6.position.x + ((_local7.col1.x * _local8.x) + (_local7.col2.x * _local8.y))); _local12 = (_arg6.position.y + ((_local7.col1.y * _local8.x) + (_local7.col2.y * _local8.y))); _local13 = (_local11 - _local9); _local14 = (_local12 - _local10); _local15 = ((_local13 * _local13) + (_local14 * _local14)); _local16 = (_arg3.m_radius - b2Settings.b2_toiSlop); _local17 = (_arg5.m_radius - b2Settings.b2_toiSlop); _local18 = (_local16 + _local17); if (_local15 > (_local18 * _local18)){ _local19 = Math.sqrt(((_local13 * _local13) + (_local14 * _local14))); _local13 = (_local13 / _local19); _local14 = (_local14 / _local19); _local20 = (_local19 - _local18); _arg1.x = (_local9 + (_local16 * _local13)); _arg1.y = (_local10 + (_local16 * _local14)); _arg2.x = (_local11 - (_local17 * _local13)); _arg2.y = (_local12 - (_local17 * _local14)); return (_local20); }; if (_local15 > (Number.MIN_VALUE * Number.MIN_VALUE)){ _local19 = Math.sqrt(((_local13 * _local13) + (_local14 * _local14))); _local13 = (_local13 / _local19); _local14 = (_local14 / _local19); _arg1.x = (_local9 + (_local16 * _local13)); _arg1.y = (_local10 + (_local16 * _local14)); _arg2.x = _arg1.x; _arg2.y = _arg1.y; return (0); }; _arg1.x = _local9; _arg1.y = _local10; _arg2.x = _arg1.x; _arg2.y = _arg1.y; return (0); } public static function ProcessThree(_arg1:b2Vec2, _arg2:b2Vec2, _arg3:Array, _arg4:Array, _arg5:Array):int{ var _local6:b2Vec2; var _local7:b2Vec2; var _local8:b2Vec2; var _local9:b2Vec2; var _local10:b2Vec2; var _local11:b2Vec2; var _local12:b2Vec2; var _local13:b2Vec2; var _local14:b2Vec2; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; var _local20:Number; var _local21:Number; var _local22:Number; var _local23:Number; var _local24:Number; var _local25:Number; var _local26:Number; var _local27:Number; var _local28:Number; var _local29:Number; var _local30:Number; var _local31:Number; var _local32:Number; var _local33:Number; var _local34:Number; var _local35:Number; var _local36:Number; var _local37:Number; var _local38:Number; var _local39:Number; var _local40:Number; var _local41:Number; _local6 = _arg5[0]; _local7 = _arg5[1]; _local8 = _arg5[2]; _local9 = _arg3[0]; _local10 = _arg3[1]; _local11 = _arg3[2]; _local12 = _arg4[0]; _local13 = _arg4[1]; _local14 = _arg4[2]; _local15 = _local6.x; _local16 = _local6.y; _local17 = _local7.x; _local18 = _local7.y; _local19 = _local8.x; _local20 = _local8.y; _local21 = (_local17 - _local15); _local22 = (_local18 - _local16); _local23 = (_local19 - _local15); _local24 = (_local20 - _local16); _local25 = (_local19 - _local17); _local26 = (_local20 - _local18); _local27 = -(((_local15 * _local21) + (_local16 * _local22))); _local28 = ((_local17 * _local21) + (_local18 * _local22)); _local29 = -(((_local15 * _local23) + (_local16 * _local24))); _local30 = ((_local19 * _local23) + (_local20 * _local24)); _local31 = -(((_local17 * _local25) + (_local18 * _local26))); _local32 = ((_local19 * _local25) + (_local20 * _local26)); if ((((_local30 <= 0)) && ((_local32 <= 0)))){ _arg1.SetV(_local11); _arg2.SetV(_local14); _local9.SetV(_local11); _local12.SetV(_local14); _local6.SetV(_local8); return (1); }; _local33 = ((_local21 * _local24) - (_local22 * _local23)); _local34 = (_local33 * ((_local15 * _local18) - (_local16 * _local17))); _local36 = (_local33 * ((_local17 * _local20) - (_local18 * _local19))); if ((((((((_local36 <= 0)) && ((_local31 >= 0)))) && ((_local32 >= 0)))) && (((_local31 + _local32) > 0)))){ _local35 = (_local31 / (_local31 + _local32)); _arg1.x = (_local10.x + (_local35 * (_local11.x - _local10.x))); _arg1.y = (_local10.y + (_local35 * (_local11.y - _local10.y))); _arg2.x = (_local13.x + (_local35 * (_local14.x - _local13.x))); _arg2.y = (_local13.y + (_local35 * (_local14.y - _local13.y))); _local9.SetV(_local11); _local12.SetV(_local14); _local6.SetV(_local8); return (2); }; _local37 = (_local33 * ((_local19 * _local16) - (_local20 * _local15))); if ((((((((_local37 <= 0)) && ((_local29 >= 0)))) && ((_local30 >= 0)))) && (((_local29 + _local30) > 0)))){ _local35 = (_local29 / (_local29 + _local30)); _arg1.x = (_local9.x + (_local35 * (_local11.x - _local9.x))); _arg1.y = (_local9.y + (_local35 * (_local11.y - _local9.y))); _arg2.x = (_local12.x + (_local35 * (_local14.x - _local12.x))); _arg2.y = (_local12.y + (_local35 * (_local14.y - _local12.y))); _local10.SetV(_local11); _local13.SetV(_local14); _local7.SetV(_local8); return (2); }; _local38 = ((_local36 + _local37) + _local34); _local38 = (1 / _local38); _local39 = (_local36 * _local38); _local40 = (_local37 * _local38); _local41 = ((1 - _local39) - _local40); _arg1.x = (((_local39 * _local9.x) + (_local40 * _local10.x)) + (_local41 * _local11.x)); _arg1.y = (((_local39 * _local9.y) + (_local40 * _local10.y)) + (_local41 * _local11.y)); _arg2.x = (((_local39 * _local12.x) + (_local40 * _local13.x)) + (_local41 * _local14.x)); _arg2.y = (((_local39 * _local12.y) + (_local40 * _local13.y)) + (_local41 * _local14.y)); return (3); } public static function DistancePC(_arg1:b2Vec2, _arg2:b2Vec2, _arg3:b2PolygonShape, _arg4:b2XForm, _arg5:b2CircleShape, _arg6:b2XForm):Number{ var _local7:b2Mat22; var _local8:b2Vec2; var _local9:b2Point; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; _local9 = gPoint; _local8 = _arg5.m_localPosition; _local7 = _arg6.R; _local9.p.x = (_arg6.position.x + ((_local7.col1.x * _local8.x) + (_local7.col2.x * _local8.y))); _local9.p.y = (_arg6.position.y + ((_local7.col1.y * _local8.x) + (_local7.col2.y * _local8.y))); _local10 = DistanceGeneric(_arg1, _arg2, _arg3, _arg4, _local9, b2Math.b2XForm_identity); _local11 = (_arg5.m_radius - b2Settings.b2_toiSlop); if (_local10 > _local11){ _local10 = (_local10 - _local11); _local12 = (_arg2.x - _arg1.x); _local13 = (_arg2.y - _arg1.y); _local14 = Math.sqrt(((_local12 * _local12) + (_local13 * _local13))); _local12 = (_local12 / _local14); _local13 = (_local13 / _local14); _arg2.x = (_arg2.x - (_local11 * _local12)); _arg2.y = (_arg2.y - (_local11 * _local13)); } else { _local10 = 0; _arg2.x = _arg1.x; _arg2.y = _arg1.y; }; return (_local10); } public static function Distance(_arg1:b2Vec2, _arg2:b2Vec2, _arg3:b2Shape, _arg4:b2XForm, _arg5:b2Shape, _arg6:b2XForm):Number{ var _local7:int; var _local8:int; _local7 = _arg3.m_type; _local8 = _arg5.m_type; if ((((_local7 == b2Shape.e_circleShape)) && ((_local8 == b2Shape.e_circleShape)))){ return (DistanceCC(_arg1, _arg2, (_arg3 as b2CircleShape), _arg4, (_arg5 as b2CircleShape), _arg6)); }; if ((((_local7 == b2Shape.e_polygonShape)) && ((_local8 == b2Shape.e_circleShape)))){ return (DistancePC(_arg1, _arg2, (_arg3 as b2PolygonShape), _arg4, (_arg5 as b2CircleShape), _arg6)); }; if ((((_local7 == b2Shape.e_circleShape)) && ((_local8 == b2Shape.e_polygonShape)))){ return (DistancePC(_arg2, _arg1, (_arg5 as b2PolygonShape), _arg6, (_arg3 as b2CircleShape), _arg4)); }; if ((((_local7 == b2Shape.e_polygonShape)) && ((_local8 == b2Shape.e_polygonShape)))){ return (DistanceGeneric(_arg1, _arg2, (_arg3 as b2PolygonShape), _arg4, (_arg5 as b2PolygonShape), _arg6)); }; return (0); } public static function ProcessTwo(_arg1:b2Vec2, _arg2:b2Vec2, _arg3:Array, _arg4:Array, _arg5:Array):int{ var _local6:b2Vec2; var _local7:b2Vec2; var _local8:b2Vec2; var _local9:b2Vec2; var _local10:b2Vec2; var _local11:b2Vec2; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; _local6 = _arg5[0]; _local7 = _arg5[1]; _local8 = _arg3[0]; _local9 = _arg3[1]; _local10 = _arg4[0]; _local11 = _arg4[1]; _local12 = -(_local7.x); _local13 = -(_local7.y); _local14 = (_local6.x - _local7.x); _local15 = (_local6.y - _local7.y); _local16 = Math.sqrt(((_local14 * _local14) + (_local15 * _local15))); _local14 = (_local14 / _local16); _local15 = (_local15 / _local16); _local17 = ((_local12 * _local14) + (_local13 * _local15)); if ((((_local17 <= 0)) || ((_local16 < Number.MIN_VALUE)))){ _arg1.SetV(_local9); _arg2.SetV(_local11); _local8.SetV(_local9); _local10.SetV(_local11); _local6.SetV(_local7); return (1); }; _local17 = (_local17 / _local16); _arg1.x = (_local9.x + (_local17 * (_local8.x - _local9.x))); _arg1.y = (_local9.y + (_local17 * (_local8.y - _local9.y))); _arg2.x = (_local11.x + (_local17 * (_local10.x - _local11.x))); _arg2.y = (_local11.y + (_local17 * (_local10.y - _local11.y))); return (2); } } }//package Box2D.Collision
Section 18
//b2Manifold (Box2D.Collision.b2Manifold) package Box2D.Collision { import Box2D.Common.Math.*; import Box2D.Common.*; public class b2Manifold { public var points:Array; public var pointCount:int;// = 0 public var normal:b2Vec2; public function b2Manifold(){ var _local1:int; pointCount = 0; super(); points = new Array(b2Settings.b2_maxManifoldPoints); _local1 = 0; while (_local1 < b2Settings.b2_maxManifoldPoints) { points[_local1] = new b2ManifoldPoint(); _local1++; }; normal = new b2Vec2(); } public function Set(_arg1:b2Manifold):void{ var _local2:int; pointCount = _arg1.pointCount; _local2 = 0; while (_local2 < b2Settings.b2_maxManifoldPoints) { (points[_local2] as b2ManifoldPoint).Set(_arg1.points[_local2]); _local2++; }; normal.SetV(_arg1.normal); } public function Reset():void{ var _local1:int; _local1 = 0; while (_local1 < b2Settings.b2_maxManifoldPoints) { (points[_local1] as b2ManifoldPoint).Reset(); _local1++; }; normal.SetZero(); pointCount = 0; } } }//package Box2D.Collision
Section 19
//b2ManifoldPoint (Box2D.Collision.b2ManifoldPoint) package Box2D.Collision { import Box2D.Common.Math.*; public class b2ManifoldPoint { public var separation:Number; public var localPoint2:b2Vec2; public var normalImpulse:Number; public var tangentImpulse:Number; public var localPoint1:b2Vec2; public var id:b2ContactID; public function b2ManifoldPoint(){ localPoint1 = new b2Vec2(); localPoint2 = new b2Vec2(); id = new b2ContactID(); super(); } public function Set(_arg1:b2ManifoldPoint):void{ localPoint1.SetV(_arg1.localPoint1); localPoint2.SetV(_arg1.localPoint2); separation = _arg1.separation; normalImpulse = _arg1.normalImpulse; tangentImpulse = _arg1.tangentImpulse; id.key = _arg1.id.key; } public function Reset():void{ localPoint1.SetZero(); localPoint2.SetZero(); separation = 0; normalImpulse = 0; tangentImpulse = 0; id.key = 0; } } }//package Box2D.Collision
Section 20
//b2OBB (Box2D.Collision.b2OBB) package Box2D.Collision { import Box2D.Common.Math.*; public class b2OBB { public var R:b2Mat22; public var center:b2Vec2; public var extents:b2Vec2; public function b2OBB(){ R = new b2Mat22(); center = new b2Vec2(); extents = new b2Vec2(); super(); } } }//package Box2D.Collision
Section 21
//b2Pair (Box2D.Collision.b2Pair) package Box2D.Collision { import Box2D.Common.*; public class b2Pair { public var userData;// = null public var proxyId1:uint; public var proxyId2:uint; public var status:uint; public var next:uint; public static var e_pairFinal:uint = 4; public static var b2_tableMask:int = (b2_tableCapacity - 1); public static var e_pairRemoved:uint = 2; public static var b2_nullPair:uint = b2Settings.USHRT_MAX; public static var e_pairBuffered:uint = 1; public static var b2_nullProxy:uint = b2Settings.USHRT_MAX; public static var b2_tableCapacity:int = b2Settings.b2_maxPairs; public function b2Pair(){ userData = null; super(); } public function SetBuffered():void{ status = (status | e_pairBuffered); } public function IsBuffered():Boolean{ return (((status & e_pairBuffered) == e_pairBuffered)); } public function IsFinal():Boolean{ return (((status & e_pairFinal) == e_pairFinal)); } public function ClearRemoved():void{ status = (status & ~(e_pairRemoved)); } public function SetFinal():void{ status = (status | e_pairFinal); } public function IsRemoved():Boolean{ return (((status & e_pairRemoved) == e_pairRemoved)); } public function ClearBuffered():void{ status = (status & ~(e_pairBuffered)); } public function SetRemoved():void{ status = (status | e_pairRemoved); } } }//package Box2D.Collision
Section 22
//b2PairCallback (Box2D.Collision.b2PairCallback) package Box2D.Collision { public class b2PairCallback { public function PairRemoved(_arg1, _arg2, _arg3):void{ } public function PairAdded(_arg1, _arg2){ return (null); } } }//package Box2D.Collision
Section 23
//b2PairManager (Box2D.Collision.b2PairManager) package Box2D.Collision { import Box2D.Common.Math.*; import Box2D.Common.*; public class b2PairManager { public var m_pairCount:int; public var :Array; public var :b2PairCallback; public var m_pairs:Array; public var :int; public var m_hashTable:Array; public var m_broadPhase:b2BroadPhase; public var  :uint; public function b2PairManager(){ var _local1:uint; super(); m_hashTable = new Array(b2Pair.b2_tableCapacity); _local1 = 0; while (_local1 < b2Pair.b2_tableCapacity) { m_hashTable[_local1] = b2Pair.b2_nullPair; _local1++; }; m_pairs = new Array(b2Settings.b2_maxPairs); _local1 = 0; while (_local1 < b2Settings.b2_maxPairs) { m_pairs[_local1] = new b2Pair(); _local1++; };  = new Array(b2Settings.b2_maxPairs); _local1 = 0; while (_local1 < b2Settings.b2_maxPairs) { [_local1] = new b2BufferedPair(); _local1++; }; _local1 = 0; while (_local1 < b2Settings.b2_maxPairs) { m_pairs[_local1].proxyId1 = b2Pair.b2_nullProxy; m_pairs[_local1].proxyId2 = b2Pair.b2_nullProxy; m_pairs[_local1].userData = null; m_pairs[_local1].status = 0; m_pairs[_local1].next = (_local1 + 1); _local1++; }; m_pairs[int((b2Settings.b2_maxPairs - 1))].next = b2Pair.b2_nullPair; m_pairCount = 0;  = 0; } private function (_arg1:uint, _arg2:uint, _arg3:uint):b2Pair{ var _local4:b2Pair; var _local5:uint; _local5 = m_hashTable[_arg3]; _local4 = m_pairs[_local5]; while (((!((_local5 == b2Pair.b2_nullPair))) && ((Equals(_local4, _arg1, _arg2) == false)))) { _local5 = _local4.next; _local4 = m_pairs[_local5]; }; if (_local5 == b2Pair.b2_nullPair){ return (null); }; return (_local4); } private function (_arg1:uint, _arg2:uint):b2Pair{ var _local3:uint; var _local4:uint; if (_arg1 > _arg2){ _local4 = _arg1; _arg1 = _arg2; _arg2 = _local4; }; _local3 = (Hash(_arg1, _arg2) & b2Pair.b2_tableMask); return ((_arg1, _arg2, _local3)); } private function ():void{ } public function Commit():void{ var _local1:b2BufferedPair; var _local2:int; var _local3:int; var _local4:Array; var _local5:b2Pair; var _local6:b2Proxy; var _local7:b2Proxy; _local3 = 0; _local4 = m_broadPhase.m_proxyPool; _local2 = 0; while (_local2 < ) { _local1 = [_local2]; _local5 = (_local1.proxyId1, _local1.proxyId2); _local5.ClearBuffered(); _local6 = _local4[_local5.proxyId1]; _local7 = _local4[_local5.proxyId2]; if (_local5.IsRemoved()){ if (_local5.IsFinal() == true){ .PairRemoved(_local6.userData, _local7.userData, _local5.userData); }; _local1 = [_local3]; _local1.proxyId1 = _local5.proxyId1; _local1.proxyId2 = _local5.proxyId2; _local3++; } else { if (_local5.IsFinal() == false){ _local5.userData = .PairAdded(_local6.userData, _local7.userData); _local5.SetFinal(); }; }; _local2++; }; _local2 = 0; while (_local2 < _local3) { _local1 = [_local2]; (_local1.proxyId1, _local1.proxyId2); _local2++; };  = 0; if (b2BroadPhase.s_validate){  (); }; } public function RemoveBufferedPair(_arg1:int, _arg2:int):void{ var _local3:b2BufferedPair; var _local4:b2Pair; _local4 = (_arg1, _arg2); if (_local4 == null){ return; }; if (_local4.IsBuffered() == false){ _local4.SetBuffered(); _local3 = []; _local3.proxyId1 = _local4.proxyId1; _local3.proxyId2 = _local4.proxyId2; ++; }; _local4.SetRemoved(); if (b2BroadPhase.s_validate){ (); }; } private function (_arg1:uint, _arg2:uint){ var _local3:b2Pair; var _local4:uint; var _local5:uint; var _local6:b2Pair; var _local7:uint; var _local8:uint; var _local9:*; if (_arg1 > _arg2){ _local7 = _arg1; _arg1 = _arg2; _arg2 = _local7; }; _local4 = (Hash(_arg1, _arg2) & b2Pair.b2_tableMask); _local5 = m_hashTable[_local4]; _local6 = null; while (_local5 != b2Pair.b2_nullPair) { if (Equals(m_pairs[_local5], _arg1, _arg2)){ _local8 = _local5; _local3 = m_pairs[_local5]; if (_local6){ _local6.next = _local3.next; } else { m_hashTable[_local4] = _local3.next; }; _local3 = m_pairs[_local8]; _local9 = _local3.userData; _local3.next =  ; _local3.proxyId1 = b2Pair.b2_nullProxy; _local3.proxyId2 = b2Pair.b2_nullProxy; _local3.userData = null; _local3.status = 0;  = _local8; m_pairCount--; return (_local9); } else { _local6 = m_pairs[_local5]; _local5 = _local6.next; }; }; return (null); } public function Initialize(_arg1:b2BroadPhase, _arg2:b2PairCallback):void{ m_broadPhase = _arg1;  = _arg2; } public function AddBufferedPair(_arg1:int, _arg2:int):void{ var _local3:b2BufferedPair; var _local4:b2Pair; _local4 =  (_arg1, _arg2); if (_local4.IsBuffered() == false){ _local4.SetBuffered(); _local3 = []; _local3.proxyId1 = _local4.proxyId1; _local3.proxyId2 = _local4.proxyId2; ++; }; _local4.ClearRemoved(); if (b2BroadPhase.s_validate){ (); }; } private function  (_arg1:uint, _arg2:uint):b2Pair{ var _local3:uint; var _local4:b2Pair; var _local5:uint; var _local6:uint; if (_arg1 > _arg2){ _local6 = _arg1; _arg1 = _arg2; _arg2 = _local6; }; _local3 = (Hash(_arg1, _arg2) & b2Pair.b2_tableMask); _local4 = (_arg1, _arg2, _local3); if (_local4 != null){ return (_local4); }; _local5 =  ; _local4 = m_pairs[_local5];  = _local4.next; _local4.proxyId1 = _arg1; _local4.proxyId2 = _arg2; _local4.status = 0; _local4.userData = null; _local4.next = m_hashTable[_local3]; m_hashTable[_local3] = _local5; m_pairCount++; return (_local4); } private function  ():void{ } public static function EqualsPair(_arg1:b2BufferedPair, _arg2:b2BufferedPair):Boolean{ return ((((_arg1.proxyId1 == _arg2.proxyId1)) && ((_arg1.proxyId2 == _arg2.proxyId2)))); } public static function Hash(_arg1:uint, _arg2:uint):uint{ var _local3:uint; _local3 = (((_arg2 << 16) & 4294901760) | _arg1); _local3 = (~(_local3) + ((_local3 << 15) & 4294934528)); _local3 = (_local3 ^ ((_local3 >> 12) & 1048575)); _local3 = (_local3 + ((_local3 << 2) & 4294967292)); _local3 = (_local3 ^ ((_local3 >> 4) & 268435455)); _local3 = (_local3 * 2057); _local3 = (_local3 ^ ((_local3 >> 16) & 0xFFFF)); return (_local3); } public static function Equals(_arg1:b2Pair, _arg2:uint, _arg3:uint):Boolean{ return ((((_arg1.proxyId1 == _arg2)) && ((_arg1.proxyId2 == _arg3)))); } } }//package Box2D.Collision
Section 24
//b2Point (Box2D.Collision.b2Point) package Box2D.Collision { import Box2D.Common.Math.*; public class b2Point { public var p:b2Vec2; public function b2Point(){ p = new b2Vec2(); super(); } public function GetFirstVertex(_arg1:b2XForm):b2Vec2{ return (p); } public function Support(_arg1:b2XForm, _arg2:Number, _arg3:Number):b2Vec2{ return (p); } } }//package Box2D.Collision
Section 25
//b2Proxy (Box2D.Collision.b2Proxy) package Box2D.Collision { public class b2Proxy { public var overlapCount:uint; public var lowerBounds:Array; public var upperBounds:Array; public var userData;// = null public var timeStamp:uint; public function b2Proxy(){ lowerBounds = [uint(0), uint(0)]; upperBounds = [uint(0), uint(0)]; userData = null; super(); } public function GetNext():uint{ return (lowerBounds[0]); } public function IsValid():Boolean{ return (!((overlapCount == b2BroadPhase.b2_invalid))); } public function SetNext(_arg1:uint):void{ lowerBounds[0] = (_arg1 & 0xFFFF); } } }//package Box2D.Collision
Section 26
//b2Segment (Box2D.Collision.b2Segment) package Box2D.Collision { import Box2D.Common.Math.*; public class b2Segment { public var p1:b2Vec2; public var p2:b2Vec2; public function b2Segment(){ p1 = new b2Vec2(); p2 = new b2Vec2(); super(); } public function TestSegment(_arg1:Array, _arg2:b2Vec2, _arg3:b2Segment, _arg4:Number):Boolean{ var _local5:b2Vec2; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; _local5 = _arg3.p1; _local6 = (_arg3.p2.x - _local5.x); _local7 = (_arg3.p2.y - _local5.y); _local8 = (p2.x - p1.x); _local9 = (p2.y - p1.y); _local10 = _local9; _local11 = -(_local8); _local12 = (100 * Number.MIN_VALUE); _local13 = -(((_local6 * _local10) + (_local7 * _local11))); if (_local13 > _local12){ _local14 = (_local5.x - p1.x); _local15 = (_local5.y - p1.y); _local16 = ((_local14 * _local10) + (_local15 * _local11)); if ((((0 <= _local16)) && ((_local16 <= (_arg4 * _local13))))){ _local17 = ((-(_local7) * _local15) + (_local7 * _local14)); if (((((-(_local12) * _local13) <= _local17)) && ((_local17 <= (_local13 * (1 + _local12)))))){ _local16 = (_local16 / _local13); _local18 = Math.sqrt(((_local10 * _local10) + (_local11 * _local11))); _local10 = (_local10 / _local18); _local11 = (_local11 / _local18); _arg1[0] = _local16; _arg2.Set(_local10, _local11); return (true); }; }; }; return (false); } } }//package Box2D.Collision
Section 27
//b2TimeOfImpact (Box2D.Collision.b2TimeOfImpact) package Box2D.Collision { import Box2D.Common.Math.*; import Box2D.Collision.Shapes.*; import Box2D.Common.*; public class b2TimeOfImpact { public static var s_xf1:b2XForm = new b2XForm(); public static var s_xf2:b2XForm = new b2XForm(); public static var s_p1:b2Vec2 = new b2Vec2(); public static var s_p2:b2Vec2 = new b2Vec2(); public static function TimeOfImpact(_arg1:b2Shape, _arg2:b2Sweep, _arg3:b2Shape, _arg4:b2Sweep):Number{ var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:b2Vec2; var _local18:b2Vec2; var _local19:int; var _local20:int; var _local21:Number; var _local22:Number; var _local23:Number; var _local24:Number; var _local25:Number; var _local26:b2XForm; var _local27:b2XForm; var _local28:Number; var _local29:Number; var _local30:Number; var _local31:Number; _local7 = _arg1.m_sweepRadius; _local8 = _arg3.m_sweepRadius; _local9 = _arg2.t0; _local10 = (_arg2.c.x - _arg2.c0.x); _local11 = (_arg2.c.y - _arg2.c0.y); _local12 = (_arg4.c.x - _arg4.c0.x); _local13 = (_arg4.c.y - _arg4.c0.y); _local14 = (_arg2.a - _arg2.a0); _local15 = (_arg4.a - _arg4.a0); _local16 = 0; _local17 = s_p1; _local18 = s_p2; _local19 = 20; _local20 = 0; _local21 = 0; _local22 = 0; _local23 = 0; _local24 = 0; while (true) { _local25 = (((1 - _local16) * _local9) + _local16); _local26 = s_xf1; _local27 = s_xf2; _arg2.GetXForm(_local26, _local25); _arg4.GetXForm(_local27, _local25); _local23 = b2Distance.Distance(_local17, _local18, _arg1, _local26, _arg3, _local27); if (_local20 == 0){ if (_local23 > (2 * b2Settings.b2_toiSlop)){ _local24 = (1.5 * b2Settings.b2_toiSlop); } else { _local5 = (0.05 * b2Settings.b2_toiSlop); _local6 = (_local23 - (0.5 * b2Settings.b2_toiSlop)); _local24 = ((_local5 > _local6)) ? _local5 : _local6; }; }; //unresolved if _local21 = (_local18.x - _local17.x); _local22 = (_local18.y - _local17.y); _local28 = Math.sqrt(((_local21 * _local21) + (_local22 * _local22))); _local21 = (_local21 / _local28); _local22 = (_local22 / _local28); _local29 = ((((_local21 * (_local10 - _local12)) + (_local22 * (_local11 - _local13))) + (((_local14 < 0)) ? -(_local14) : _local14 * _local7)) + (((_local15 < 0)) ? -(_local15) : _local15 * _local8)); if (_local29 == 0){ _local16 = 1; break; }; _local30 = ((_local23 - _local24) / _local29); _local31 = (_local16 + _local30); if ((((_local31 < 0)) || ((1 < _local31)))){ _local16 = 1; break; }; //unresolved if _local16 = _local31; _local20++; }; return (_local16); } } }//package Box2D.Collision
Section 28
//ClipVertex (Box2D.Collision.ClipVertex) package Box2D.Collision { import Box2D.Common.Math.*; public class ClipVertex { public var v:b2Vec2; public var id:b2ContactID; public function ClipVertex(){ v = new b2Vec2(); id = new b2ContactID(); super(); } } }//package Box2D.Collision
Section 29
//Features (Box2D.Collision.Features) package Box2D.Collision { public class Features { public var :int; public var :int; public var :int; public var :int; public var :b2ContactID; public function get referenceEdge():int{ return (); } public function set incidentVertex(_arg1:int):void{  = _arg1; ._key = ((._key & 4278255615) | (( << 16) & 0xFF0000)); } public function get flip():int{ return (); } public function get incidentEdge():int{ return (); } public function set referenceEdge(_arg1:int):void{  = _arg1; ._key = ((._key & 4294967040) | ( & 0xFF)); } public function set flip(_arg1:int):void{  = _arg1; ._key = ((._key & 0xFFFFFF) | (( << 24) & 4278190080)); } public function get incidentVertex():int{ return (); } public function set incidentEdge(_arg1:int):void{  = _arg1; ._key = ((._key & 4294902015) | (( << 8) & 0xFF00)); } } }//package Box2D.Collision
Section 30
//b2Mat22 (Box2D.Common.Math.b2Mat22) package Box2D.Common.Math { public class b2Mat22 { public var col1:b2Vec2; public var col2:b2Vec2; public function b2Mat22(_arg1:Number=0, _arg2:b2Vec2=null, _arg3:b2Vec2=null){ var _local4:Number; var _local5:Number; col1 = new b2Vec2(); col2 = new b2Vec2(); super(); if (((!((_arg2 == null))) && (!((_arg3 == null))))){ col1.SetV(_arg2); col2.SetV(_arg3); } else { _local4 = Math.cos(_arg1); _local5 = Math.sin(_arg1); col1.x = _local4; col2.x = -(_local5); col1.y = _local5; col2.y = _local4; }; } public function SetIdentity():void{ col1.x = 1; col2.x = 0; col1.y = 0; col2.y = 1; } public function Set(_arg1:Number):void{ var _local2:Number; var _local3:Number; _local2 = Math.cos(_arg1); _local3 = Math.sin(_arg1); col1.x = _local2; col2.x = -(_local3); col1.y = _local3; col2.y = _local2; } public function  (_arg1:b2Vec2, _arg2:b2Vec2):void{ col1.SetV(_arg1); col2.SetV(_arg2); } public function SetZero():void{ col1.x = 0; col2.x = 0; col1.y = 0; col2.y = 0; } public function SetM(_arg1:b2Mat22):void{ col1.SetV(_arg1.col1); col2.SetV(_arg1.col2); } public function AddM(_arg1:b2Mat22):void{ col1.x = (col1.x + _arg1.col1.x); col1.y = (col1.y + _arg1.col1.y); col2.x = (col2.x + _arg1.col2.x); col2.y = (col2.y + _arg1.col2.y); } public function Abs():void{ col1.Abs(); col2.Abs(); } public function Copy():b2Mat22{ return (new b2Mat22(0, col1, col2)); } public function Invert(_arg1:b2Mat22):b2Mat22{ var _local2:Number; var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Number; _local2 = col1.x; _local3 = col2.x; _local4 = col1.y; _local5 = col2.y; _local6 = ((_local2 * _local5) - (_local3 * _local4)); _local6 = (1 / _local6); _arg1.col1.x = (_local6 * _local5); _arg1.col2.x = (-(_local6) * _local3); _arg1.col1.y = (-(_local6) * _local4); _arg1.col2.y = (_local6 * _local2); return (_arg1); } public function GetAngle():Number{ return (Math.atan2(col1.y, col1.x)); } public function Solve(_arg1:b2Vec2, _arg2:Number, _arg3:Number):b2Vec2{ var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; _local4 = col1.x; _local5 = col2.x; _local6 = col1.y; _local7 = col2.y; _local8 = ((_local4 * _local7) - (_local5 * _local6)); _local8 = (1 / _local8); _arg1.x = (_local8 * ((_local7 * _arg2) - (_local5 * _arg3))); _arg1.y = (_local8 * ((_local4 * _arg3) - (_local6 * _arg2))); return (_arg1); } } }//package Box2D.Common.Math
Section 31
//b2Math (Box2D.Common.Math.b2Math) package Box2D.Common.Math { public class b2Math { public static const b2Mat22_identity:b2Mat22 = new b2Mat22(0, new b2Vec2(1, 0), new b2Vec2(0, 1)); public static const b2XForm_identity:b2XForm = new b2XForm(b2Vec2_zero, b2Mat22_identity); public static const b2Vec2_zero:b2Vec2 = new b2Vec2(0, 0); public static function b2CrossVF(_arg1:b2Vec2, _arg2:Number):b2Vec2{ var _local3:b2Vec2; _local3 = new b2Vec2((_arg2 * _arg1.y), (-(_arg2) * _arg1.x)); return (_local3); } public static function AddVV(_arg1:b2Vec2, _arg2:b2Vec2):b2Vec2{ var _local3:b2Vec2; _local3 = new b2Vec2((_arg1.x + _arg2.x), (_arg1.y + _arg2.y)); return (_local3); } public static function b2IsValid(_arg1:Number):Boolean{ return (isFinite(_arg1)); } public static function b2MinV(_arg1:b2Vec2, _arg2:b2Vec2):b2Vec2{ var _local3:b2Vec2; _local3 = new b2Vec2(b2Min(_arg1.x, _arg2.x), b2Min(_arg1.y, _arg2.y)); return (_local3); } public static function b2MulX(_arg1:b2XForm, _arg2:b2Vec2):b2Vec2{ var _local3:b2Vec2; _local3 = b2MulMV(_arg1.R, _arg2); _local3.x = (_local3.x + _arg1.position.x); _local3.y = (_local3.y + _arg1.position.y); return (_local3); } public static function b2DistanceSquared(_arg1:b2Vec2, _arg2:b2Vec2):Number{ var _local3:Number; var _local4:Number; _local3 = (_arg1.x - _arg2.x); _local4 = (_arg1.y - _arg2.y); return (((_local3 * _local3) + (_local4 * _local4))); } public static function b2Swap(_arg1:Array, _arg2:Array):void{ var _local3:*; _local3 = _arg1[0]; _arg1[0] = _arg2[0]; _arg2[0] = _local3; } public static function b2AbsM(_arg1:b2Mat22):b2Mat22{ var _local2:b2Mat22; _local2 = new b2Mat22(0, b2AbsV(_arg1.col1), b2AbsV(_arg1.col2)); return (_local2); } public static function SubtractVV(_arg1:b2Vec2, _arg2:b2Vec2):b2Vec2{ var _local3:b2Vec2; _local3 = new b2Vec2((_arg1.x - _arg2.x), (_arg1.y - _arg2.y)); return (_local3); } public static function b2MulXT(_arg1:b2XForm, _arg2:b2Vec2):b2Vec2{ var _local3:b2Vec2; var _local4:Number; _local3 = SubtractVV(_arg2, _arg1.position); _local4 = ((_local3.x * _arg1.R.col1.x) + (_local3.y * _arg1.R.col1.y)); _local3.y = ((_local3.x * _arg1.R.col2.x) + (_local3.y * _arg1.R.col2.y)); _local3.x = _local4; return (_local3); } public static function b2Abs(_arg1:Number):Number{ return (((_arg1 > 0)) ? _arg1 : -(_arg1)); } public static function b2Clamp(_arg1:Number, _arg2:Number, _arg3:Number):Number{ return (b2Max(_arg2, b2Min(_arg1, _arg3))); } public static function b2AbsV(_arg1:b2Vec2):b2Vec2{ var _local2:b2Vec2; _local2 = new b2Vec2(b2Abs(_arg1.x), b2Abs(_arg1.y)); return (_local2); } public static function MulFV(_arg1:Number, _arg2:b2Vec2):b2Vec2{ var _local3:b2Vec2; _local3 = new b2Vec2((_arg1 * _arg2.x), (_arg1 * _arg2.y)); return (_local3); } public static function b2CrossVV(_arg1:b2Vec2, _arg2:b2Vec2):Number{ return (((_arg1.x * _arg2.y) - (_arg1.y * _arg2.x))); } public static function b2Dot(_arg1:b2Vec2, _arg2:b2Vec2):Number{ return (((_arg1.x * _arg2.x) + (_arg1.y * _arg2.y))); } public static function b2CrossFV(_arg1:Number, _arg2:b2Vec2):b2Vec2{ var _local3:b2Vec2; _local3 = new b2Vec2((-(_arg1) * _arg2.y), (_arg1 * _arg2.x)); return (_local3); } public static function AddMM(_arg1:b2Mat22, _arg2:b2Mat22):b2Mat22{ var _local3:b2Mat22; _local3 = new b2Mat22(0, AddVV(_arg1.col1, _arg2.col1), AddVV(_arg1.col2, _arg2.col2)); return (_local3); } public static function b2Distance(_arg1:b2Vec2, _arg2:b2Vec2):Number{ var _local3:Number; var _local4:Number; _local3 = (_arg1.x - _arg2.x); _local4 = (_arg1.y - _arg2.y); return (Math.sqrt(((_local3 * _local3) + (_local4 * _local4)))); } public static function b2MulTMM(_arg1:b2Mat22, _arg2:b2Mat22):b2Mat22{ var _local3:b2Vec2; var _local4:b2Vec2; var _local5:b2Mat22; _local3 = new b2Vec2(b2Dot(_arg1.col1, _arg2.col1), b2Dot(_arg1.col2, _arg2.col1)); _local4 = new b2Vec2(b2Dot(_arg1.col1, _arg2.col2), b2Dot(_arg1.col2, _arg2.col2)); _local5 = new b2Mat22(0, _local3, _local4); return (_local5); } public static function b2MaxV(_arg1:b2Vec2, _arg2:b2Vec2):b2Vec2{ var _local3:b2Vec2; _local3 = new b2Vec2(b2Max(_arg1.x, _arg2.x), b2Max(_arg1.y, _arg2.y)); return (_local3); } public static function b2IsPowerOfTwo(_arg1:uint):Boolean{ var _local2:Boolean; _local2 = (((_arg1 > 0)) && (((_arg1 & (_arg1 - 1)) == 0))); return (_local2); } public static function b2ClampV(_arg1:b2Vec2, _arg2:b2Vec2, _arg3:b2Vec2):b2Vec2{ return (b2MaxV(_arg2, b2MinV(_arg1, _arg3))); } public static function b2RandomRange(_arg1:Number, _arg2:Number):Number{ var _local3:Number; _local3 = Math.random(); _local3 = (((_arg2 - _arg1) * _local3) + _arg1); return (_local3); } public static function b2MulTMV(_arg1:b2Mat22, _arg2:b2Vec2):b2Vec2{ var _local3:b2Vec2; _local3 = new b2Vec2(b2Dot(_arg2, _arg1.col1), b2Dot(_arg2, _arg1.col2)); return (_local3); } public static function b2Min(_arg1:Number, _arg2:Number):Number{ return (((_arg1 < _arg2)) ? _arg1 : _arg2); } public static function b2Random():Number{ return (((Math.random() * 2) - 1)); } public static function b2MulMM(_arg1:b2Mat22, _arg2:b2Mat22):b2Mat22{ var _local3:b2Mat22; _local3 = new b2Mat22(0, b2MulMV(_arg1, _arg2.col1), b2MulMV(_arg1, _arg2.col2)); return (_local3); } public static function b2NextPowerOfTwo(_arg1:uint):uint{ _arg1 = (_arg1 | ((_arg1 >> 1) & 2147483647)); _arg1 = (_arg1 | ((_arg1 >> 2) & 1073741823)); _arg1 = (_arg1 | ((_arg1 >> 4) & 268435455)); _arg1 = (_arg1 | ((_arg1 >> 8) & 0xFFFFFF)); _arg1 = (_arg1 | ((_arg1 >> 16) & 0xFFFF)); return ((_arg1 + 1)); } public static function b2Max(_arg1:Number, _arg2:Number):Number{ return (((_arg1 > _arg2)) ? _arg1 : _arg2); } public static function b2MulMV(_arg1:b2Mat22, _arg2:b2Vec2):b2Vec2{ var _local3:b2Vec2; _local3 = new b2Vec2(((_arg1.col1.x * _arg2.x) + (_arg1.col2.x * _arg2.y)), ((_arg1.col1.y * _arg2.x) + (_arg1.col2.y * _arg2.y))); return (_local3); } } }//package Box2D.Common.Math
Section 32
//b2Sweep (Box2D.Common.Math.b2Sweep) package Box2D.Common.Math { public class b2Sweep { public var localCenter:b2Vec2; public var c:b2Vec2; public var a:Number; public var c0:b2Vec2; public var a0:Number; public var t0:Number; public function b2Sweep(){ localCenter = new b2Vec2(); c0 = new b2Vec2(); c = new b2Vec2(); super(); } public function Advance(_arg1:Number):void{ var _local2:Number; if ((((t0 < _arg1)) && (((1 - t0) > Number.MIN_VALUE)))){ _local2 = ((_arg1 - t0) / (1 - t0)); c0.x = (((1 - _local2) * c0.x) + (_local2 * c.x)); c0.y = (((1 - _local2) * c0.y) + (_local2 * c.y)); a0 = (((1 - _local2) * a0) + (_local2 * a)); t0 = _arg1; }; } public function GetXForm(_arg1:b2XForm, _arg2:Number):void{ var _local3:b2Mat22; var _local4:Number; var _local5:Number; if ((1 - t0) > Number.MIN_VALUE){ _local4 = ((_arg2 - t0) / (1 - t0)); _arg1.position.x = (((1 - _local4) * c0.x) + (_local4 * c.x)); _arg1.position.y = (((1 - _local4) * c0.y) + (_local4 * c.y)); _local5 = (((1 - _local4) * a0) + (_local4 * a)); _arg1.R.Set(_local5); } else { _arg1.position.SetV(c); _arg1.R.Set(a); }; _local3 = _arg1.R; _arg1.position.x = (_arg1.position.x - ((_local3.col1.x * localCenter.x) + (_local3.col2.x * localCenter.y))); _arg1.position.y = (_arg1.position.y - ((_local3.col1.y * localCenter.x) + (_local3.col2.y * localCenter.y))); } } }//package Box2D.Common.Math
Section 33
//b2Vec2 (Box2D.Common.Math.b2Vec2) package Box2D.Common.Math { public class b2Vec2 { public var x:Number; public var y:Number; public function b2Vec2(_arg1:Number=0, _arg2:Number=0):void{ x = _arg1; y = _arg2; } public function Set(_arg1:Number=0, _arg2:Number=0):void{ x = _arg1; y = _arg2; } public function Multiply(_arg1:Number):void{ x = (x * _arg1); y = (y * _arg1); } public function Length():Number{ return (Math.sqrt(((x * x) + (y * y)))); } public function LengthSquared():Number{ return (((x * x) + (y * y))); } public function SetZero():void{ x = 0; y = 0; } public function Add(_arg1:b2Vec2):void{ x = (x + _arg1.x); y = (y + _arg1.y); } public function  (_arg1:b2Vec2):void{ x = ((x > _arg1.x)) ? x : _arg1.x; y = ((y > _arg1.y)) ? y : _arg1.y; } public function SetV(_arg1:b2Vec2):void{ x = _arg1.x; y = _arg1.y; } public function  ():b2Vec2{ return (new b2Vec2(-(x), -(y))); } public function  (_arg1:Number):void{ var _local2:Number; _local2 = x; x = (_arg1 * y); y = (-(_arg1) * _local2); } public function Abs():void{ if (x < 0){ x = -(x); }; if (y < 0){ y = -(y); }; } public function Copy():b2Vec2{ return (new b2Vec2(x, y)); } public function  (_arg1:b2Mat22):void{ var _local2:Number; _local2 = b2Math.b2Dot(this, _arg1.col1); y = b2Math.b2Dot(this, _arg1.col2); x = _local2; } public function IsValid():Boolean{ return (((b2Math.b2IsValid(x)) && (b2Math.b2IsValid(y)))); } public function  (_arg1:b2Vec2):void{ x = ((x < _arg1.x)) ? x : _arg1.x; y = ((y < _arg1.y)) ? y : _arg1.y; } public function  (_arg1:b2Mat22):void{ var _local2:Number; _local2 = x; x = ((_arg1.col1.x * _local2) + (_arg1.col2.x * y)); y = ((_arg1.col1.y * _local2) + (_arg1.col2.y * y)); } public function Normalize():Number{ var _local1:Number; var _local2:Number; _local1 = Math.sqrt(((x * x) + (y * y))); if (_local1 < Number.MIN_VALUE){ return (0); }; _local2 = (1 / _local1); x = (x * _local2); y = (y * _local2); return (_local1); } public function Subtract(_arg1:b2Vec2):void{ x = (x - _arg1.x); y = (y - _arg1.y); } public function  (_arg1:Number):void{ var _local2:Number; _local2 = x; x = (-(_arg1) * y); y = (_arg1 * _local2); } public static function Make(_arg1:Number, _arg2:Number):b2Vec2{ return (new b2Vec2(_arg1, _arg2)); } } }//package Box2D.Common.Math
Section 34
//b2XForm (Box2D.Common.Math.b2XForm) package Box2D.Common.Math { public class b2XForm { public var R:b2Mat22; public var position:b2Vec2; public function b2XForm(_arg1:b2Vec2=null, _arg2:b2Mat22=null):void{ position = new b2Vec2(); R = new b2Mat22(); super(); if (_arg1){ position.SetV(_arg1); R.SetM(_arg2); }; } public function Initialize(_arg1:b2Vec2, _arg2:b2Mat22):void{ position.SetV(_arg1); R.SetM(_arg2); } public function Set(_arg1:b2XForm):void{ position.SetV(_arg1.position); R.SetM(_arg1.R); } public function SetIdentity():void{ position.SetZero(); R.SetIdentity(); } } }//package Box2D.Common.Math
Section 35
//b2Color (Box2D.Common.b2Color) package Box2D.Common { import Box2D.Common.Math.*; public class b2Color { private var  :uint;// = 0 private var  :uint;// = 0 private var  :uint;// = 0 public function b2Color(_arg1:Number, _arg2:Number, _arg3:Number){   = 0;   = 0;   = 0; super();   = uint((0xFF * b2Math.b2Clamp(_arg1, 0, 1)));   = uint((0xFF * b2Math.b2Clamp(_arg2, 0, 1)));   = uint((0xFF * b2Math.b2Clamp(_arg3, 0, 1))); } public function Set(_arg1:Number, _arg2:Number, _arg3:Number):void{   = uint((0xFF * b2Math.b2Clamp(_arg1, 0, 1)));   = uint((0xFF * b2Math.b2Clamp(_arg2, 0, 1)));   = uint((0xFF * b2Math.b2Clamp(_arg3, 0, 1))); } public function get color():uint{ return (((  | (  << 8)) | (  << 16))); } public function set r(_arg1:Number):void{   = uint((0xFF * b2Math.b2Clamp(_arg1, 0, 1))); } public function set b(_arg1:Number):void{   = uint((0xFF * b2Math.b2Clamp(_arg1, 0, 1))); } public function set g(_arg1:Number):void{   = uint((0xFF * b2Math.b2Clamp(_arg1, 0, 1))); } } }//package Box2D.Common
Section 36
//b2Settings (Box2D.Common.b2Settings) package Box2D.Common { import Box2D.Common.Math.*; public class b2Settings { public static const b2_angularSleepTolerance:Number = 0.0111111111111111; public static const b2_linearSleepTolerance:Number = 0.01; public static const b2_angularSlop:Number = 0.0349065850398866; public static const b2_linearSlop:Number = 0.005; public static const b2_pi:Number = 3.14159265358979; public static const b2_maxProxies:int = 0x0400; public static const b2_maxAngularVelocitySquared:Number = 62500; public static const b2_maxPolygonVertices:int = 8; public static const b2_velocityThreshold:Number = 1; public static const b2_contactBaumgarte:Number = 0.2; public static const b2_maxPairs:int = 8192; public static const b2_maxTOIContactsPerIsland:int = 32; public static const b2_timeToSleep:Number = 0.5; public static const b2_maxManifoldPoints:int = 2; public static const b2_maxAngularVelocity:Number = 250; public static const b2_maxAngularCorrection:Number = 0.139626340159546; public static const USHRT_MAX:int = 0xFFFF; public static const b2_maxLinearVelocity:Number = 200; public static const b2_maxLinearCorrection:Number = 0.2; public static const b2_toiSlop:Number = 0.04; public static const b2_maxLinearVelocitySquared:Number = 40000; public static function b2Assert(_arg1:Boolean):void{ var _local2:b2Vec2; if (!_arg1){ _local2.x++; }; } } }//package Box2D.Common
Section 37
//b2CircleContact (Box2D.Dynamics.Contacts.b2CircleContact) package Box2D.Dynamics.Contacts { import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Collision.*; import Box2D.Collision.Shapes.*; public class b2CircleContact extends b2Contact { private var :Array; private var :b2Manifold; public var m_manifold:b2Manifold; private static const s_evalCP:b2ContactPoint = new b2ContactPoint(); public function b2CircleContact(_arg1:b2Shape, _arg2:b2Shape){ var _local3:b2ManifoldPoint;  = [new b2Manifold()];  = new b2Manifold(); super(_arg1, _arg2); m_manifold = [0]; m_manifold.pointCount = 0; _local3 = m_manifold.points[0]; _local3.normalImpulse = 0; _local3.tangentImpulse = 0; } override public function GetManifolds():Array{ return (); } override public function Evaluate(_arg1:b2ContactListener):void{ var _local2:b2Vec2; var _local3:b2Vec2; var _local4:b2ManifoldPoint; var _local5:b2Body; var _local6:b2Body; var _local7:b2ContactPoint; var _local8:b2ManifoldPoint; _local5 = m_shape1.m_body; _local6 = m_shape2.m_body; .Set(m_manifold); b2Collision.b2CollideCircles(m_manifold, (m_shape1 as b2CircleShape), _local5.m_xf, (m_shape2 as b2CircleShape), _local6.m_xf); _local7 = s_evalCP; _local7.shape1 = m_shape1; _local7.shape2 = m_shape2; _local7.friction = m_friction; _local7.restitution = m_restitution; if (m_manifold.pointCount > 0){ m_manifoldCount = 1; _local8 = m_manifold.points[0]; if (.pointCount == 0){ _local8.normalImpulse = 0; _local8.tangentImpulse = 0; if (_arg1){ _local7.position = _local5.GetWorldPoint(_local8.localPoint1); _local2 = _local5.GetLinearVelocityFromLocalPoint(_local8.localPoint1); _local3 = _local6.GetLinearVelocityFromLocalPoint(_local8.localPoint2); _local7.velocity.Set((_local3.x - _local2.x), (_local3.y - _local2.y)); _local7.normal.SetV(m_manifold.normal); _local7.separation = _local8.separation; _local7.id.key = _local8.id._key; _arg1.Add(_local7); }; } else { _local4 = .points[0]; _local8.normalImpulse = _local4.normalImpulse; _local8.tangentImpulse = _local4.tangentImpulse; if (_arg1){ _local7.position = _local5.GetWorldPoint(_local8.localPoint1); _local2 = _local5.GetLinearVelocityFromLocalPoint(_local8.localPoint1); _local3 = _local6.GetLinearVelocityFromLocalPoint(_local8.localPoint2); _local7.velocity.Set((_local3.x - _local2.x), (_local3.y - _local2.y)); _local7.normal.SetV(m_manifold.normal); _local7.separation = _local8.separation; _local7.id.key = _local8.id._key; _arg1.Persist(_local7); }; }; } else { m_manifoldCount = 0; if ((((.pointCount > 0)) && (_arg1))){ _local4 = .points[0]; _local7.position = _local5.GetWorldPoint(_local4.localPoint1); _local2 = _local5.GetLinearVelocityFromLocalPoint(_local4.localPoint1); _local3 = _local6.GetLinearVelocityFromLocalPoint(_local4.localPoint2); _local7.velocity.Set((_local3.x - _local2.x), (_local3.y - _local2.y)); _local7.normal.SetV(.normal); _local7.separation = _local4.separation; _local7.id.key = _local4.id._key; _arg1.Remove(_local7); }; }; } public static function Destroy(_arg1:b2Contact, _arg2):void{ } public static function Create(_arg1:b2Shape, _arg2:b2Shape, _arg3):b2Contact{ return (new b2CircleContact(_arg1, _arg2)); } } }//package Box2D.Dynamics.Contacts
Section 38
//b2Contact (Box2D.Dynamics.Contacts.b2Contact) package Box2D.Dynamics.Contacts { import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Collision.*; import Box2D.Collision.Shapes.*; import Box2D.Common.*; public class b2Contact { public var m_shape1:b2Shape; public var m_shape2:b2Shape; public var m_prev:b2Contact; public var m_toi:Number; public var m_next:b2Contact; public var m_friction:Number; public var m_manifoldCount:int; public var m_node1:b2ContactEdge; public var m_node2:b2ContactEdge; public var m_restitution:Number; public var m_flags:uint; public static var e_toiFlag:uint = 8; public static var e_nonSolidFlag:uint = 1; public static var e_slowFlag:uint = 2; public static var e_islandFlag:uint = 4; public static var s_registers:Array; public static var s_initialized:Boolean = false; public function b2Contact(_arg1:b2Shape=null, _arg2:b2Shape=null){ m_node1 = new b2ContactEdge(); m_node2 = new b2ContactEdge(); super(); m_flags = 0; if (((!(_arg1)) || (!(_arg2)))){ m_shape1 = null; m_shape2 = null; return; }; if (((_arg1. ()) || (_arg2. ()))){ m_flags = (m_flags | e_nonSolidFlag); }; m_shape1 = _arg1; m_shape2 = _arg2; m_manifoldCount = 0; m_friction = Math.sqrt((m_shape1.m_friction * m_shape2.m_friction)); m_restitution = b2Math.b2Max(m_shape1.m_restitution, m_shape2.m_restitution); m_prev = null; m_next = null; m_node1.contact = null; m_node1.prev = null; m_node1.next = null; m_node1.other = null; m_node2.contact = null; m_node2.prev = null; m_node2.next = null; m_node2.other = null; } public function ():b2Shape{ return (m_shape1); } public function  ():Boolean{ return (((m_flags & e_nonSolidFlag) == 0)); } public function GetNext():b2Contact{ return (m_next); } public function GetManifolds():Array{ return (null); } public function  ():b2Shape{ return (m_shape2); } public function  ():int{ return (m_manifoldCount); } public function Update(_arg1:b2ContactListener):void{ var _local2:int; var _local3:int; var _local4:b2Body; var _local5:b2Body; _local2 = m_manifoldCount; Evaluate(_arg1); _local3 = m_manifoldCount; _local4 = m_shape1.m_body; _local5 = m_shape2.m_body; if ((((_local3 == 0)) && ((_local2 > 0)))){ _local4.WakeUp(); _local5.WakeUp(); }; if (((((((_local4.IsStatic()) || (_local4.IsBullet()))) || (_local5.IsStatic()))) || (_local5.IsBullet()))){ m_flags = (m_flags & ~(e_slowFlag)); } else { m_flags = (m_flags | e_slowFlag); }; } public function Evaluate(_arg1:b2ContactListener):void{ } public static function InitializeRegisters():void{ var _local1:int; var _local2:int; s_registers = new Array(b2Shape.e_shapeTypeCount); _local1 = 0; while (_local1 < b2Shape.e_shapeTypeCount) { s_registers[_local1] = new Array(b2Shape.e_shapeTypeCount); _local2 = 0; while (_local2 < b2Shape.e_shapeTypeCount) { s_registers[_local1][_local2] = new b2ContactRegister(); _local2++; }; _local1++; }; AddType(b2CircleContact.Create, b2CircleContact.Destroy, b2Shape.e_circleShape, b2Shape.e_circleShape); AddType(b2PolyAndCircleContact.Create, b2PolyAndCircleContact.Destroy, b2Shape.e_polygonShape, b2Shape.e_circleShape); AddType(b2PolygonContact.Create, b2PolygonContact.Destroy, b2Shape.e_polygonShape, b2Shape.e_polygonShape); } public static function Destroy(_arg1:b2Contact, _arg2):void{ var _local3:int; var _local4:int; var _local5:b2ContactRegister; var _local6:Function; if (_arg1.m_manifoldCount > 0){ _arg1.m_shape1.m_body.WakeUp(); _arg1.m_shape2.m_body.WakeUp(); }; _local3 = _arg1.m_shape1.m_type; _local4 = _arg1.m_shape2.m_type; _local5 = s_registers[_local3][_local4]; _local6 = _local5.destroyFcn; _local6(_arg1, _arg2); } public static function AddType(_arg1:Function, _arg2:Function, _arg3:int, _arg4:int):void{ s_registers[_arg3][_arg4].createFcn = _arg1; s_registers[_arg3][_arg4].destroyFcn = _arg2; s_registers[_arg3][_arg4].primary = true; if (_arg3 != _arg4){ s_registers[_arg4][_arg3].createFcn = _arg1; s_registers[_arg4][_arg3].destroyFcn = _arg2; s_registers[_arg4][_arg3].primary = false; }; } public static function Create(_arg1:b2Shape, _arg2:b2Shape, _arg3):b2Contact{ var _local4:int; var _local5:int; var _local6:b2ContactRegister; var _local7:Function; var _local8:b2Contact; var _local9:int; var _local10:b2Manifold; if (s_initialized == false){ InitializeRegisters(); s_initialized = true; }; _local4 = _arg1.m_type; _local5 = _arg2.m_type; _local6 = s_registers[_local4][_local5]; _local7 = _local6.createFcn; if (_local7 != null){ if (_local6.primary){ return (_local7(_arg1, _arg2, _arg3)); }; _local8 = _local7(_arg2, _arg1, _arg3); _local9 = 0; while (_local9 < _local8.m_manifoldCount) { _local10 = _local8.GetManifolds()[_local9]; _local8.GetManifolds()[_local9].normal = _local10.normal. (); _local9++; }; return (_local8); //unresolved jump }; return (null); } } }//package Box2D.Dynamics.Contacts
Section 39
//b2ContactConstraint (Box2D.Dynamics.Contacts.b2ContactConstraint) package Box2D.Dynamics.Contacts { import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Collision.*; import Box2D.Common.*; public class b2ContactConstraint { public var points:Array; public var restitution:Number; public var body1:b2Body; public var manifold:b2Manifold; public var normal:b2Vec2; public var body2:b2Body; public var friction:Number; public var pointCount:int; public function b2ContactConstraint(){ var _local1:int; normal = new b2Vec2(); super(); points = new Array(b2Settings.b2_maxManifoldPoints); _local1 = 0; while (_local1 < b2Settings.b2_maxManifoldPoints) { points[_local1] = new b2ContactConstraintPoint(); _local1++; }; } } }//package Box2D.Dynamics.Contacts
Section 40
//b2ContactConstraintPoint (Box2D.Dynamics.Contacts.b2ContactConstraintPoint) package Box2D.Dynamics.Contacts { import Box2D.Common.Math.*; public class b2ContactConstraintPoint { public var r2:b2Vec2; public var separation:Number; public var positionImpulse:Number; public var normalImpulse:Number; public var equalizedMass:Number; public var tangentMass:Number; public var tangentImpulse:Number; public var localAnchor1:b2Vec2; public var localAnchor2:b2Vec2; public var normalMass:Number; public var velocityBias:Number; public var r1:b2Vec2; public function b2ContactConstraintPoint(){ localAnchor1 = new b2Vec2(); localAnchor2 = new b2Vec2(); r1 = new b2Vec2(); r2 = new b2Vec2(); super(); } } }//package Box2D.Dynamics.Contacts
Section 41
//b2ContactEdge (Box2D.Dynamics.Contacts.b2ContactEdge) package Box2D.Dynamics.Contacts { import Box2D.Dynamics.*; public class b2ContactEdge { public var next:b2ContactEdge; public var other:b2Body; public var contact:b2Contact; public var prev:b2ContactEdge; } }//package Box2D.Dynamics.Contacts
Section 42
//b2ContactRegister (Box2D.Dynamics.Contacts.b2ContactRegister) package Box2D.Dynamics.Contacts { public class b2ContactRegister { public var primary:Boolean; public var createFcn:Function; public var destroyFcn:Function; } }//package Box2D.Dynamics.Contacts
Section 43
//b2ContactResult (Box2D.Dynamics.Contacts.b2ContactResult) package Box2D.Dynamics.Contacts { import Box2D.Common.Math.*; import Box2D.Collision.*; import Box2D.Collision.Shapes.*; public class b2ContactResult { public var normal:b2Vec2; public var position:b2Vec2; public var shape1:b2Shape; public var shape2:b2Shape; public var normalImpulse:Number; public var tangentImpulse:Number; public var id:b2ContactID; public function b2ContactResult(){ position = new b2Vec2(); normal = new b2Vec2(); id = new b2ContactID(); super(); } } }//package Box2D.Dynamics.Contacts
Section 44
//b2ContactSolver (Box2D.Dynamics.Contacts.b2ContactSolver) package Box2D.Dynamics.Contacts { import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Collision.*; import Box2D.Common.*; public class b2ContactSolver { public var  :int; public var m_constraints:Array; public var m_allocator; public var  :b2TimeStep; public function b2ContactSolver(_arg1:b2TimeStep, _arg2:Array, _arg3:int, _arg4){ var _local5:b2Contact; var _local6:int; var _local7:b2Vec2; var _local8:b2Mat22; var _local9:int; var _local10:b2Body; var _local11:b2Body; var _local12:int; var _local13:Array; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; var _local20:Number; var _local21:Number; var _local22:int; var _local23:b2Manifold; var _local24:Number; var _local25:Number; var _local26:b2ContactConstraint; var _local27:uint; var _local28:b2ManifoldPoint; var _local29:b2ContactConstraintPoint; var _local30:Number; var _local31:Number; var _local32:Number; var _local33:Number; var _local34:Number; var _local35:Number; var _local36:Number; var _local37:Number; var _local38:Number; var _local39:Number; var _local40:Number; var _local41:Number; var _local42:Number; var _local43:Number; var _local44:Number; var _local45:Number; var _local46:Number; var _local47:Number;   = new b2TimeStep(); m_constraints = new Array(); super();  .dt = _arg1.dt;  .inv_dt = _arg1.inv_dt;  .maxIterations = _arg1.maxIterations; m_allocator = _arg4;  = 0; _local6 = 0; while (_local6 < _arg3) { _local5 = _arg2[_local6];  = ( + _local5.m_manifoldCount); _local6++; }; _local6 = 0; while (_local6 <  ) { m_constraints[_local6] = new b2ContactConstraint(); _local6++; }; _local9 = 0; _local6 = 0; while (_local6 < _arg3) { _local5 = _arg2[_local6]; _local10 = _local5.m_shape1.m_body; _local11 = _local5.m_shape2.m_body; _local12 = _local5.m_manifoldCount; _local13 = _local5.GetManifolds(); _local14 = _local5.m_friction; _local15 = _local5.m_restitution; _local16 = _local10.m_linearVelocity.x; _local17 = _local10.m_linearVelocity.y; _local18 = _local11.m_linearVelocity.x; _local19 = _local11.m_linearVelocity.y; _local20 = _local10.m_angularVelocity; _local21 = _local11.m_angularVelocity; _local22 = 0; while (_local22 < _local12) { _local23 = _local13[_local22]; _local24 = _local23.normal.x; _local25 = _local23.normal.y; _local26 = m_constraints[_local9]; _local26.body1 = _local10; _local26.body2 = _local11; _local26.manifold = _local23; _local26.normal.x = _local24; _local26.normal.y = _local25; _local26.pointCount = _local23.pointCount; _local26.friction = _local14; _local26.restitution = _local15; _local27 = 0; while (_local27 < _local26.pointCount) { _local28 = _local23.points[_local27]; _local29 = _local26.points[_local27]; _local29.normalImpulse = _local28.normalImpulse; _local29.tangentImpulse = _local28.tangentImpulse; _local29.separation = _local28.separation; _local29.positionImpulse = 0; _local29.localAnchor1.SetV(_local28.localPoint1); _local29.localAnchor2.SetV(_local28.localPoint2); _local8 = _local10.m_xf.R; _local32 = (_local28.localPoint1.x - _local10.m_sweep.localCenter.x); _local33 = (_local28.localPoint1.y - _local10.m_sweep.localCenter.y); _local30 = ((_local8.col1.x * _local32) + (_local8.col2.x * _local33)); _local33 = ((_local8.col1.y * _local32) + (_local8.col2.y * _local33)); _local32 = _local30; _local29.r1.Set(_local32, _local33); _local8 = _local11.m_xf.R; _local34 = (_local28.localPoint2.x - _local11.m_sweep.localCenter.x); _local35 = (_local28.localPoint2.y - _local11.m_sweep.localCenter.y); _local30 = ((_local8.col1.x * _local34) + (_local8.col2.x * _local35)); _local35 = ((_local8.col1.y * _local34) + (_local8.col2.y * _local35)); _local34 = _local30; _local29.r2.Set(_local34, _local35); _local36 = ((_local32 * _local32) + (_local33 * _local33)); _local37 = ((_local34 * _local34) + (_local35 * _local35)); _local38 = ((_local32 * _local24) + (_local33 * _local25)); _local39 = ((_local34 * _local24) + (_local35 * _local25)); _local40 = (_local10.m_invMass + _local11.m_invMass); _local40 = (_local40 + ((_local10.m_invI * (_local36 - (_local38 * _local38))) + (_local11.m_invI * (_local37 - (_local39 * _local39))))); _local29.normalMass = (1 / _local40); _local41 = ((_local10.m_mass * _local10.m_invMass) + (_local11.m_mass * _local11.m_invMass)); _local41 = (_local41 + (((_local10.m_mass * _local10.m_invI) * (_local36 - (_local38 * _local38))) + ((_local11.m_mass * _local11.m_invI) * (_local37 - (_local39 * _local39))))); _local29.equalizedMass = (1 / _local41); _local42 = _local25; _local43 = -(_local24); _local44 = ((_local32 * _local42) + (_local33 * _local43)); _local45 = ((_local34 * _local42) + (_local35 * _local43)); _local46 = (_local10.m_invMass + _local11.m_invMass); _local46 = (_local46 + ((_local10.m_invI * (_local36 - (_local44 * _local44))) + (_local11.m_invI * (_local37 - (_local45 * _local45))))); _local29.tangentMass = (1 / _local46); _local29.velocityBias = 0; if (_local29.separation > 0){ _local29.velocityBias = (-60 * _local29.separation); }; _local30 = (((_local18 + (-(_local21) * _local35)) - _local16) - (-(_local20) * _local33)); _local31 = (((_local19 + (_local21 * _local34)) - _local17) - (_local20 * _local32)); _local47 = ((_local26.normal.x * _local30) + (_local26.normal.y * _local31)); if (_local47 < -(b2Settings.b2_velocityThreshold)){ _local29.velocityBias = (_local29.velocityBias + (-(_local26.restitution) * _local47)); }; _local27++; }; _local9++; _local22++; }; _local6++; }; } public function InitVelocityConstraints(_arg1:b2TimeStep):void{ var _local2:b2Vec2; var _local3:b2Vec2; var _local4:b2Mat22; var _local5:int; var _local6:b2ContactConstraint; var _local7:b2Body; var _local8:b2Body; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:int; var _local19:int; var _local20:b2ContactConstraintPoint; var _local21:Number; var _local22:Number; var _local23:b2ContactConstraintPoint; _local5 = 0; while (_local5 <  ) { _local6 = m_constraints[_local5]; _local7 = _local6.body1; _local8 = _local6.body2; _local9 = _local7.m_invMass; _local10 = _local7.m_invI; _local11 = _local8.m_invMass; _local12 = _local8.m_invI; _local13 = _local6.normal.x; _local14 = _local6.normal.y; _local15 = _local14; _local16 = -(_local13); if (_arg1.warmStarting){ _local19 = _local6.pointCount; _local18 = 0; while (_local18 < _local19) { _local20 = _local6.points[_local18]; _local6.points[_local18].normalImpulse = (_local20.normalImpulse * _arg1.dtRatio); _local20.tangentImpulse = (_local20.tangentImpulse * _arg1.dtRatio); _local21 = ((_local20.normalImpulse * _local13) + (_local20.tangentImpulse * _local15)); _local22 = ((_local20.normalImpulse * _local14) + (_local20.tangentImpulse * _local16)); _local7.m_angularVelocity = (_local7.m_angularVelocity - (_local10 * ((_local20.r1.x * _local22) - (_local20.r1.y * _local21)))); _local7.m_linearVelocity.x = (_local7.m_linearVelocity.x - (_local9 * _local21)); _local7.m_linearVelocity.y = (_local7.m_linearVelocity.y - (_local9 * _local22)); _local8.m_angularVelocity = (_local8.m_angularVelocity + (_local12 * ((_local20.r2.x * _local22) - (_local20.r2.y * _local21)))); _local8.m_linearVelocity.x = (_local8.m_linearVelocity.x + (_local11 * _local21)); _local8.m_linearVelocity.y = (_local8.m_linearVelocity.y + (_local11 * _local22)); _local18++; }; } else { _local19 = _local6.pointCount; _local18 = 0; while (_local18 < _local19) { _local23 = _local6.points[_local18]; _local23.normalImpulse = 0; _local23.tangentImpulse = 0; _local18++; }; }; _local5++; }; } public function SolvePositionConstraints(_arg1:Number):Boolean{ var _local2:Number; var _local3:b2Mat22; var _local4:b2Vec2; var _local5:int; var _local6:b2ContactConstraint; var _local7:b2Body; var _local8:b2Body; var _local9:b2Vec2; var _local10:Number; var _local11:b2Vec2; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:int; var _local20:int; var _local21:b2ContactConstraintPoint; var _local22:Number; var _local23:Number; var _local24:Number; var _local25:Number; var _local26:Number; var _local27:Number; var _local28:Number; var _local29:Number; var _local30:Number; var _local31:Number; var _local32:Number; var _local33:Number; var _local34:Number; var _local35:Number; var _local36:Number; var _local37:Number; var _local38:Number; _local2 = 0; _local5 = 0; while (_local5 <  ) { _local6 = m_constraints[_local5]; _local7 = _local6.body1; _local8 = _local6.body2; _local9 = _local7.m_sweep.c; _local10 = _local7.m_sweep.a; _local11 = _local8.m_sweep.c; _local12 = _local8.m_sweep.a; _local13 = (_local7.m_mass * _local7.m_invMass); _local14 = (_local7.m_mass * _local7.m_invI); _local15 = (_local8.m_mass * _local8.m_invMass); _local16 = (_local8.m_mass * _local8.m_invI); _local17 = _local6.normal.x; _local18 = _local6.normal.y; _local19 = _local6.pointCount; _local20 = 0; while (_local20 < _local19) { _local21 = _local6.points[_local20]; _local3 = _local7.m_xf.R; _local4 = _local7.m_sweep.localCenter; _local22 = (_local21.localAnchor1.x - _local4.x); _local23 = (_local21.localAnchor1.y - _local4.y); _local26 = ((_local3.col1.x * _local22) + (_local3.col2.x * _local23)); _local23 = ((_local3.col1.y * _local22) + (_local3.col2.y * _local23)); _local22 = _local26; _local3 = _local8.m_xf.R; _local4 = _local8.m_sweep.localCenter; _local24 = (_local21.localAnchor2.x - _local4.x); _local25 = (_local21.localAnchor2.y - _local4.y); _local26 = ((_local3.col1.x * _local24) + (_local3.col2.x * _local25)); _local25 = ((_local3.col1.y * _local24) + (_local3.col2.y * _local25)); _local24 = _local26; _local27 = (_local9.x + _local22); _local28 = (_local9.y + _local23); _local29 = (_local11.x + _local24); _local30 = (_local11.y + _local25); _local31 = (_local29 - _local27); _local32 = (_local30 - _local28); _local33 = (((_local31 * _local17) + (_local32 * _local18)) + _local21.separation); _local2 = b2Math.b2Min(_local2, _local33); _local34 = (_arg1 * b2Math.b2Clamp((_local33 + b2Settings.b2_linearSlop), -(b2Settings.b2_maxLinearCorrection), 0)); _local35 = (-(_local21.equalizedMass) * _local34); _local36 = _local21.positionImpulse; _local21.positionImpulse = b2Math.b2Max((_local36 + _local35), 0); _local35 = (_local21.positionImpulse - _local36); _local37 = (_local35 * _local17); _local38 = (_local35 * _local18); _local9.x = (_local9.x - (_local13 * _local37)); _local9.y = (_local9.y - (_local13 * _local38)); _local10 = (_local10 - (_local14 * ((_local22 * _local38) - (_local23 * _local37)))); _local7.m_sweep.a = _local10; _local7.SynchronizeTransform(); _local11.x = (_local11.x + (_local15 * _local37)); _local11.y = (_local11.y + (_local15 * _local38)); _local12 = (_local12 + (_local16 * ((_local24 * _local38) - (_local25 * _local37)))); _local8.m_sweep.a = _local12; _local8.SynchronizeTransform(); _local20++; }; _local5++; }; return ((_local2 >= (-1.5 * b2Settings.b2_linearSlop))); } public function SolveVelocityConstraints():void{ var _local1:int; var _local2:b2ContactConstraintPoint; var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:b2Mat22; var _local18:b2Vec2; var _local19:int; var _local20:b2ContactConstraint; var _local21:b2Body; var _local22:b2Body; var _local23:Number; var _local24:Number; var _local25:b2Vec2; var _local26:b2Vec2; var _local27:Number; var _local28:Number; var _local29:Number; var _local30:Number; var _local31:Number; var _local32:Number; var _local33:Number; var _local34:Number; var _local35:Number; var _local36:Number; var _local37:int; var _local38:Number; _local19 = 0; while (_local19 <  ) { _local20 = m_constraints[_local19]; _local21 = _local20.body1; _local22 = _local20.body2; _local23 = _local21.m_angularVelocity; _local24 = _local22.m_angularVelocity; _local25 = _local21.m_linearVelocity; _local26 = _local22.m_linearVelocity; _local27 = _local21.m_invMass; _local28 = _local21.m_invI; _local29 = _local22.m_invMass; _local30 = _local22.m_invI; _local31 = _local20.normal.x; _local32 = _local20.normal.y; _local33 = _local32; _local34 = -(_local31); _local35 = _local20.friction; _local37 = _local20.pointCount; _local1 = 0; while (_local1 < _local37) { _local2 = _local20.points[_local1]; _local7 = (((_local26.x + (-(_local24) * _local2.r2.y)) - _local25.x) - (-(_local23) * _local2.r1.y)); _local8 = (((_local26.y + (_local24 * _local2.r2.x)) - _local25.y) - (_local23 * _local2.r1.x)); _local9 = ((_local7 * _local31) + (_local8 * _local32)); _local11 = (-(_local2.normalMass) * (_local9 - _local2.velocityBias)); _local10 = ((_local7 * _local33) + (_local8 * _local34)); _local12 = (_local2.tangentMass * -(_local10)); _local13 = b2Math.b2Max((_local2.normalImpulse + _local11), 0); _local11 = (_local13 - _local2.normalImpulse); _local38 = (_local35 * _local2.normalImpulse); _local14 = b2Math.b2Clamp((_local2.tangentImpulse + _local12), -(_local38), _local38); _local12 = (_local14 - _local2.tangentImpulse); _local15 = ((_local11 * _local31) + (_local12 * _local33)); _local16 = ((_local11 * _local32) + (_local12 * _local34)); _local25.x = (_local25.x - (_local27 * _local15)); _local25.y = (_local25.y - (_local27 * _local16)); _local23 = (_local23 - (_local28 * ((_local2.r1.x * _local16) - (_local2.r1.y * _local15)))); _local26.x = (_local26.x + (_local29 * _local15)); _local26.y = (_local26.y + (_local29 * _local16)); _local24 = (_local24 + (_local30 * ((_local2.r2.x * _local16) - (_local2.r2.y * _local15)))); _local2.normalImpulse = _local13; _local2.tangentImpulse = _local14; _local1++; }; _local21.m_angularVelocity = _local23; _local22.m_angularVelocity = _local24; _local19++; }; } public function FinalizeVelocityConstraints():void{ var _local1:int; var _local2:b2ContactConstraint; var _local3:b2Manifold; var _local4:int; var _local5:b2ManifoldPoint; var _local6:b2ContactConstraintPoint; _local1 = 0; while (_local1 <  ) { _local2 = m_constraints[_local1]; _local3 = _local2.manifold; _local4 = 0; while (_local4 < _local2.pointCount) { _local5 = _local3.points[_local4]; _local6 = _local2.points[_local4]; _local5.normalImpulse = _local6.normalImpulse; _local5.tangentImpulse = _local6.tangentImpulse; _local4++; }; _local1++; }; } } }//package Box2D.Dynamics.Contacts
Section 45
//b2NullContact (Box2D.Dynamics.Contacts.b2NullContact) package Box2D.Dynamics.Contacts { import Box2D.Dynamics.*; public class b2NullContact extends b2Contact { override public function GetManifolds():Array{ return (null); } override public function Evaluate(_arg1:b2ContactListener):void{ } } }//package Box2D.Dynamics.Contacts
Section 46
//b2PolyAndCircleContact (Box2D.Dynamics.Contacts.b2PolyAndCircleContact) package Box2D.Dynamics.Contacts { import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Collision.*; import Box2D.Collision.Shapes.*; import Box2D.Common.*; public class b2PolyAndCircleContact extends b2Contact { private var :Array; private var :b2Manifold; public var m_manifold:b2Manifold; private static const s_evalCP:b2ContactPoint = new b2ContactPoint(); public function b2PolyAndCircleContact(_arg1:b2Shape, _arg2:b2Shape){ var _local3:b2ManifoldPoint;  = [new b2Manifold()];  = new b2Manifold(); super(_arg1, _arg2); m_manifold = [0]; b2Settings.b2Assert((m_shape1.m_type == b2Shape.e_polygonShape)); b2Settings.b2Assert((m_shape2.m_type == b2Shape.e_circleShape)); m_manifold.pointCount = 0; _local3 = m_manifold.points[0]; _local3.normalImpulse = 0; _local3.tangentImpulse = 0; } override public function GetManifolds():Array{ return (); } override public function Evaluate(_arg1:b2ContactListener):void{ var _local2:int; var _local3:b2Vec2; var _local4:b2Vec2; var _local5:b2ManifoldPoint; var _local6:b2Body; var _local7:b2Body; var _local8:Array; var _local9:b2ContactPoint; var _local10:b2ManifoldPoint; var _local11:Boolean; var _local12:uint; var _local13:int; _local6 = m_shape1.m_body; _local7 = m_shape2.m_body; .Set(m_manifold); b2Collision.b2CollidePolygonAndCircle(m_manifold, (m_shape1 as b2PolygonShape), _local6.m_xf, (m_shape2 as b2CircleShape), _local7.m_xf); _local8 = [false, false]; _local9 = s_evalCP; _local9.shape1 = m_shape1; _local9.shape2 = m_shape2; _local9.friction = m_friction; _local9.restitution = m_restitution; if (m_manifold.pointCount > 0){ _local2 = 0; while (_local2 < m_manifold.pointCount) { _local10 = m_manifold.points[_local2]; _local10.normalImpulse = 0; _local10.tangentImpulse = 0; _local11 = false; _local12 = _local10.id._key; _local13 = 0; while (_local13 < .pointCount) { if (_local8[_local13] != true){ _local5 = .points[_local13]; if (_local5.id._key == _local12){ _local8[_local13] = true; _local10.normalImpulse = _local5.normalImpulse; _local10.tangentImpulse = _local5.tangentImpulse; _local11 = true; if (_arg1 != null){ _local9.position = _local6.GetWorldPoint(_local10.localPoint1); _local3 = _local6.GetLinearVelocityFromLocalPoint(_local10.localPoint1); _local4 = _local7.GetLinearVelocityFromLocalPoint(_local10.localPoint2); _local9.velocity.Set((_local4.x - _local3.x), (_local4.y - _local3.y)); _local9.normal.SetV(m_manifold.normal); _local9.separation = _local10.separation; _local9.id.key = _local12; _arg1.Persist(_local9); }; break; }; }; _local13++; }; if ((((_local11 == false)) && (!((_arg1 == null))))){ _local9.position = _local6.GetWorldPoint(_local10.localPoint1); _local3 = _local6.GetLinearVelocityFromLocalPoint(_local10.localPoint1); _local4 = _local7.GetLinearVelocityFromLocalPoint(_local10.localPoint2); _local9.velocity.Set((_local4.x - _local3.x), (_local4.y - _local3.y)); _local9.normal.SetV(m_manifold.normal); _local9.separation = _local10.separation; _local9.id.key = _local12; _arg1.Add(_local9); }; _local2++; }; m_manifoldCount = 1; } else { m_manifoldCount = 0; }; if (_arg1 == null){ return; }; _local2 = 0; while (_local2 < .pointCount) { if (!_local8[_local2]){ _local5 = .points[_local2]; _local9.position = _local6.GetWorldPoint(_local5.localPoint1); _local3 = _local6.GetLinearVelocityFromLocalPoint(_local5.localPoint1); _local4 = _local7.GetLinearVelocityFromLocalPoint(_local5.localPoint2); _local9.velocity.Set((_local4.x - _local3.x), (_local4.y - _local3.y)); _local9.normal.SetV(.normal); _local9.separation = _local5.separation; _local9.id.key = _local5.id._key; _arg1.Remove(_local9); }; _local2++; }; } public static function Destroy(_arg1:b2Contact, _arg2):void{ } public static function Create(_arg1:b2Shape, _arg2:b2Shape, _arg3):b2Contact{ return (new b2PolyAndCircleContact(_arg1, _arg2)); } } }//package Box2D.Dynamics.Contacts
Section 47
//b2PolygonContact (Box2D.Dynamics.Contacts.b2PolygonContact) package Box2D.Dynamics.Contacts { import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Collision.*; import Box2D.Collision.Shapes.*; public class b2PolygonContact extends b2Contact { private var :Array; private var :b2Manifold; public var m_manifold:b2Manifold; private static const s_evalCP:b2ContactPoint = new b2ContactPoint(); public function b2PolygonContact(_arg1:b2Shape, _arg2:b2Shape):void{  = new b2Manifold();  = [new b2Manifold()]; super(_arg1, _arg2); m_manifold = [0]; m_manifold.pointCount = 0; } override public function GetManifolds():Array{ return (); } override public function Evaluate(_arg1:b2ContactListener):void{ var _local2:b2Vec2; var _local3:b2Vec2; var _local4:b2ManifoldPoint; var _local5:b2Body; var _local6:b2Body; var _local7:b2ContactPoint; var _local8:int; var _local9:Array; var _local10:b2ManifoldPoint; var _local11:Boolean; var _local12:uint; var _local13:int; _local5 = m_shape1.m_body; _local6 = m_shape2.m_body; .Set(m_manifold); b2Collision.b2CollidePolygons(m_manifold, (m_shape1 as b2PolygonShape), _local5.m_xf, (m_shape2 as b2PolygonShape), _local6.m_xf); _local9 = [false, false]; _local7 = s_evalCP; _local7.shape1 = m_shape1; _local7.shape2 = m_shape2; _local7.friction = m_friction; _local7.restitution = m_restitution; if (m_manifold.pointCount > 0){ _local8 = 0; while (_local8 < m_manifold.pointCount) { _local10 = m_manifold.points[_local8]; _local10.normalImpulse = 0; _local10.tangentImpulse = 0; _local11 = false; _local12 = _local10.id._key; _local13 = 0; while (_local13 < .pointCount) { if (_local9[_local13] != true){ _local4 = .points[_local13]; if (_local4.id._key == _local12){ _local9[_local13] = true; _local10.normalImpulse = _local4.normalImpulse; _local10.tangentImpulse = _local4.tangentImpulse; _local11 = true; if (_arg1 != null){ _local7.position = _local5.GetWorldPoint(_local10.localPoint1); _local2 = _local5.GetLinearVelocityFromLocalPoint(_local10.localPoint1); _local3 = _local6.GetLinearVelocityFromLocalPoint(_local10.localPoint2); _local7.velocity.Set((_local3.x - _local2.x), (_local3.y - _local2.y)); _local7.normal.SetV(m_manifold.normal); _local7.separation = _local10.separation; _local7.id.key = _local12; _arg1.Persist(_local7); }; break; }; }; _local13++; }; if ((((_local11 == false)) && (!((_arg1 == null))))){ _local7.position = _local5.GetWorldPoint(_local10.localPoint1); _local2 = _local5.GetLinearVelocityFromLocalPoint(_local10.localPoint1); _local3 = _local6.GetLinearVelocityFromLocalPoint(_local10.localPoint2); _local7.velocity.Set((_local3.x - _local2.x), (_local3.y - _local2.y)); _local7.normal.SetV(m_manifold.normal); _local7.separation = _local10.separation; _local7.id.key = _local12; _arg1.Add(_local7); }; _local8++; }; m_manifoldCount = 1; } else { m_manifoldCount = 0; }; if (_arg1 == null){ return; }; _local8 = 0; while (_local8 < .pointCount) { if (!_local9[_local8]){ _local4 = .points[_local8]; _local7.position = _local5.GetWorldPoint(_local4.localPoint1); _local2 = _local5.GetLinearVelocityFromLocalPoint(_local4.localPoint1); _local3 = _local6.GetLinearVelocityFromLocalPoint(_local4.localPoint2); _local7.velocity.Set((_local3.x - _local2.x), (_local3.y - _local2.y)); _local7.normal.SetV(.normal); _local7.separation = _local4.separation; _local7.id.key = _local4.id._key; _arg1.Remove(_local7); }; _local8++; }; } public static function Destroy(_arg1:b2Contact, _arg2):void{ } public static function Create(_arg1:b2Shape, _arg2:b2Shape, _arg3):b2Contact{ return (new b2PolygonContact(_arg1, _arg2)); } } }//package Box2D.Dynamics.Contacts
Section 48
//b2DistanceJoint (Box2D.Dynamics.Joints.b2DistanceJoint) package Box2D.Dynamics.Joints { import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Common.*; public class b2DistanceJoint extends b2Joint { public var m_mass:Number; public var  :b2Vec2; public var m_impulse:Number; public var  :Number; public var  :Number; public var m_localAnchor2:b2Vec2; public var m_localAnchor1:b2Vec2; public var  :Number; public var m_gamma:Number; public var  :Number; public function b2DistanceJoint(_arg1:b2DistanceJointDef){ var _local2:b2Mat22; var _local3:Number; var _local4:Number; m_localAnchor1 = new b2Vec2(); m_localAnchor2 = new b2Vec2();   = new b2Vec2(); super(_arg1); m_localAnchor1.SetV(_arg1.localAnchor1); m_localAnchor2.SetV(_arg1.localAnchor2);  = _arg1.length;   = _arg1.frequencyHz;   = _arg1.dampingRatio; m_impulse = 0; m_gamma = 0;  = 0; m_inv_dt = 0; } override public function GetAnchor1():b2Vec2{ return (m_body1.GetWorldPoint(m_localAnchor1)); } override public function GetAnchor2():b2Vec2{ return (m_body2.GetWorldPoint(m_localAnchor2)); } override public function GetReactionForce():b2Vec2{ var _local1:b2Vec2; _local1 = new b2Vec2(); _local1.SetV( ); _local1.Multiply((m_inv_dt * m_impulse)); return (_local1); } override public function SolvePositionConstraints():Boolean{ var _local1:b2Mat22; var _local2:b2Body; var _local3:b2Body; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; if (  > 0){ return (true); }; _local2 = m_body1; _local3 = m_body2; _local1 = _local2.m_xf.R; _local4 = (m_localAnchor1.x - _local2.m_sweep.localCenter.x); _local5 = (m_localAnchor1.y - _local2.m_sweep.localCenter.y); _local6 = ((_local1.col1.x * _local4) + (_local1.col2.x * _local5)); _local5 = ((_local1.col1.y * _local4) + (_local1.col2.y * _local5)); _local4 = _local6; _local1 = _local3.m_xf.R; _local7 = (m_localAnchor2.x - _local3.m_sweep.localCenter.x); _local8 = (m_localAnchor2.y - _local3.m_sweep.localCenter.y); _local6 = ((_local1.col1.x * _local7) + (_local1.col2.x * _local8)); _local8 = ((_local1.col1.y * _local7) + (_local1.col2.y * _local8)); _local7 = _local6; _local9 = (((_local3.m_sweep.c.x + _local7) - _local2.m_sweep.c.x) - _local4); _local10 = (((_local3.m_sweep.c.y + _local8) - _local2.m_sweep.c.y) - _local5); _local11 = Math.sqrt(((_local9 * _local9) + (_local10 * _local10))); _local9 = (_local9 / _local11); _local10 = (_local10 / _local11); _local12 = (_local11 -  ); _local12 = b2Math.b2Clamp(_local12, -(b2Settings.b2_maxLinearCorrection), b2Settings.b2_maxLinearCorrection); _local13 = (-(m_mass) * _local12);  .Set(_local9, _local10); _local14 = (_local13 *  .x); _local15 = (_local13 *  .y); _local2.m_sweep.c.x = (_local2.m_sweep.c.x - (_local2.m_invMass * _local14)); _local2.m_sweep.c.y = (_local2.m_sweep.c.y - (_local2.m_invMass * _local15)); _local2.m_sweep.a = (_local2.m_sweep.a - (_local2.m_invI * ((_local4 * _local15) - (_local5 * _local14)))); _local3.m_sweep.c.x = (_local3.m_sweep.c.x + (_local3.m_invMass * _local14)); _local3.m_sweep.c.y = (_local3.m_sweep.c.y + (_local3.m_invMass * _local15)); _local3.m_sweep.a = (_local3.m_sweep.a + (_local3.m_invI * ((_local7 * _local15) - (_local8 * _local14)))); _local2.SynchronizeTransform(); _local3.SynchronizeTransform(); return ((b2Math.b2Abs(_local12) < b2Settings.b2_linearSlop)); } override public function InitVelocityConstraints(_arg1:b2TimeStep):void{ var _local2:b2Mat22; var _local3:Number; var _local4:b2Body; var _local5:b2Body; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; m_inv_dt = _arg1.inv_dt; _local4 = m_body1; _local5 = m_body2; _local2 = _local4.m_xf.R; _local6 = (m_localAnchor1.x - _local4.m_sweep.localCenter.x); _local7 = (m_localAnchor1.y - _local4.m_sweep.localCenter.y); _local3 = ((_local2.col1.x * _local6) + (_local2.col2.x * _local7)); _local7 = ((_local2.col1.y * _local6) + (_local2.col2.y * _local7)); _local6 = _local3; _local2 = _local5.m_xf.R; _local8 = (m_localAnchor2.x - _local5.m_sweep.localCenter.x); _local9 = (m_localAnchor2.y - _local5.m_sweep.localCenter.y); _local3 = ((_local2.col1.x * _local8) + (_local2.col2.x * _local9)); _local9 = ((_local2.col1.y * _local8) + (_local2.col2.y * _local9)); _local8 = _local3;  .x = (((_local5.m_sweep.c.x + _local8) - _local4.m_sweep.c.x) - _local6);  .y = (((_local5.m_sweep.c.y + _local9) - _local4.m_sweep.c.y) - _local7); _local10 = Math.sqrt((( .x *  .x) + ( .y *  .y))); if (_local10 > b2Settings.b2_linearSlop){  .Multiply((1 / _local10)); } else {  .SetZero(); }; _local11 = ((_local6 *  .y) - (_local7 *  .x)); _local12 = ((_local8 *  .y) - (_local9 *  .x)); _local13 = (((_local4.m_invMass + ((_local4.m_invI * _local11) * _local11)) + _local5.m_invMass) + ((_local5.m_invI * _local12) * _local12)); m_mass = (1 / _local13); if (  > 0){ _local14 = (_local10 -  ); _local15 = ((2 * Math.PI) *  ); _local16 = (((2 * m_mass) *  ) * _local15); _local17 = ((m_mass * _local15) * _local15); m_gamma = (1 / (_arg1.dt * (_local16 + (_arg1.dt * _local17))));  = (((_local14 * _arg1.dt) * _local17) * m_gamma); m_mass = (1 / (_local13 + m_gamma)); }; if (_arg1.warmStarting){ m_impulse = (m_impulse * _arg1.dtRatio); _local18 = (m_impulse *  .x); _local19 = (m_impulse *  .y); _local4.m_linearVelocity.x = (_local4.m_linearVelocity.x - (_local4.m_invMass * _local18)); _local4.m_linearVelocity.y = (_local4.m_linearVelocity.y - (_local4.m_invMass * _local19)); _local4.m_angularVelocity = (_local4.m_angularVelocity - (_local4.m_invI * ((_local6 * _local19) - (_local7 * _local18)))); _local5.m_linearVelocity.x = (_local5.m_linearVelocity.x + (_local5.m_invMass * _local18)); _local5.m_linearVelocity.y = (_local5.m_linearVelocity.y + (_local5.m_invMass * _local19)); _local5.m_angularVelocity = (_local5.m_angularVelocity + (_local5.m_invI * ((_local8 * _local19) - (_local9 * _local18)))); } else { m_impulse = 0; }; } override public function GetReactionTorque():Number{ return (0); } override public function SolveVelocityConstraints(_arg1:b2TimeStep):void{ var _local2:b2Mat22; var _local3:b2Body; var _local4:b2Body; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; _local3 = m_body1; _local4 = m_body2; _local2 = _local3.m_xf.R; _local5 = (m_localAnchor1.x - _local3.m_sweep.localCenter.x); _local6 = (m_localAnchor1.y - _local3.m_sweep.localCenter.y); _local7 = ((_local2.col1.x * _local5) + (_local2.col2.x * _local6)); _local6 = ((_local2.col1.y * _local5) + (_local2.col2.y * _local6)); _local5 = _local7; _local2 = _local4.m_xf.R; _local8 = (m_localAnchor2.x - _local4.m_sweep.localCenter.x); _local9 = (m_localAnchor2.y - _local4.m_sweep.localCenter.y); _local7 = ((_local2.col1.x * _local8) + (_local2.col2.x * _local9)); _local9 = ((_local2.col1.y * _local8) + (_local2.col2.y * _local9)); _local8 = _local7; _local10 = (_local3.m_linearVelocity.x + (-(_local3.m_angularVelocity) * _local6)); _local11 = (_local3.m_linearVelocity.y + (_local3.m_angularVelocity * _local5)); _local12 = (_local4.m_linearVelocity.x + (-(_local4.m_angularVelocity) * _local9)); _local13 = (_local4.m_linearVelocity.y + (_local4.m_angularVelocity * _local8)); _local14 = (( .x * (_local12 - _local10)) + ( .y * (_local13 - _local11))); _local15 = (-(m_mass) * ((_local14 +  ) + (m_gamma * m_impulse))); m_impulse = (m_impulse + _local15); _local16 = (_local15 *  .x); _local17 = (_local15 *  .y); _local3.m_linearVelocity.x = (_local3.m_linearVelocity.x - (_local3.m_invMass * _local16)); _local3.m_linearVelocity.y = (_local3.m_linearVelocity.y - (_local3.m_invMass * _local17)); _local3.m_angularVelocity = (_local3.m_angularVelocity - (_local3.m_invI * ((_local5 * _local17) - (_local6 * _local16)))); _local4.m_linearVelocity.x = (_local4.m_linearVelocity.x + (_local4.m_invMass * _local16)); _local4.m_linearVelocity.y = (_local4.m_linearVelocity.y + (_local4.m_invMass * _local17)); _local4.m_angularVelocity = (_local4.m_angularVelocity + (_local4.m_invI * ((_local8 * _local17) - (_local9 * _local16)))); } } }//package Box2D.Dynamics.Joints
Section 49
//b2DistanceJointDef (Box2D.Dynamics.Joints.b2DistanceJointDef) package Box2D.Dynamics.Joints { import Box2D.Common.Math.*; import Box2D.Dynamics.*; public class b2DistanceJointDef extends b2JointDef { public var length:Number; public var dampingRatio:Number; public var frequencyHz:Number; public var localAnchor2:b2Vec2; public var localAnchor1:b2Vec2; public function b2DistanceJointDef(){ localAnchor1 = new b2Vec2(); localAnchor2 = new b2Vec2(); super(); type = b2Joint.e_distanceJoint; length = 1; frequencyHz = 0; dampingRatio = 0; } public function Initialize(_arg1:b2Body, _arg2:b2Body, _arg3:b2Vec2, _arg4:b2Vec2):void{ var _local5:Number; var _local6:Number; body1 = _arg1; body2 = _arg2; localAnchor1.SetV(body1.GetLocalPoint(_arg3)); localAnchor2.SetV(body2.GetLocalPoint(_arg4)); _local5 = (_arg4.x - _arg3.x); _local6 = (_arg4.y - _arg3.y); length = Math.sqrt(((_local5 * _local5) + (_local6 * _local6))); frequencyHz = 0; dampingRatio = 0; } } }//package Box2D.Dynamics.Joints
Section 50
//b2GearJoint (Box2D.Dynamics.Joints.b2GearJoint) package Box2D.Dynamics.Joints { import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Common.*; public class b2GearJoint extends b2Joint { public var m_force:Number; public var m_mass:Number; public var  :b2PrismaticJoint; public var  :b2PrismaticJoint; public var  :b2Body; public var  :b2Body; public var m_constant:Number; public var  :b2RevoluteJoint; public var  :b2RevoluteJoint; public var m_groundAnchor1:b2Vec2; public var m_groundAnchor2:b2Vec2; public var m_localAnchor1:b2Vec2; public var m_localAnchor2:b2Vec2; public var m_ratio:Number; public var  :b2Jacobian; public function b2GearJoint(_arg1:b2GearJointDef){ var _local2:int; var _local3:int; var _local4:Number; var _local5:Number; m_groundAnchor1 = new b2Vec2(); m_groundAnchor2 = new b2Vec2(); m_localAnchor1 = new b2Vec2(); m_localAnchor2 = new b2Vec2();   = new b2Jacobian(); super(_arg1); _local2 = _arg1..m_type; _local3 = _arg1. .m_type;   = null;  = null;   = null;  = null;   = _arg1..m_body1; m_body1 = _arg1..m_body2; if (_local2 == b2Joint.e_revoluteJoint){   = (_arg1. as b2RevoluteJoint); m_groundAnchor1.SetV( .m_localAnchor1); m_localAnchor1.SetV( .m_localAnchor2); _local4 =  .GetJointAngle(); } else {  = (_arg1. as b2PrismaticJoint); m_groundAnchor1.SetV( .m_localAnchor1); m_localAnchor1.SetV( .m_localAnchor2); _local4 =  .GetJointTranslation(); };   = _arg1. .m_body1; m_body2 = _arg1. .m_body2; if (_local3 == b2Joint.e_revoluteJoint){   = (_arg1.  as b2RevoluteJoint); m_groundAnchor2.SetV( .m_localAnchor1); m_localAnchor2.SetV( .m_localAnchor2); _local5 =  .GetJointAngle(); } else {  = (_arg1.  as b2PrismaticJoint); m_groundAnchor2.SetV( .m_localAnchor1); m_localAnchor2.SetV( .m_localAnchor2); _local5 =  .GetJointTranslation(); }; m_ratio = _arg1.ratio; m_constant = (_local4 + (m_ratio * _local5)); m_force = 0; } override public function GetAnchor1():b2Vec2{ return (m_body1.GetWorldPoint(m_localAnchor1)); } override public function GetAnchor2():b2Vec2{ return (m_body2.GetWorldPoint(m_localAnchor2)); } override public function GetReactionForce():b2Vec2{ var _local1:b2Vec2; _local1 = new b2Vec2((m_force *  .linear2.x), (m_force *  .linear2.y)); return (_local1); } override public function SolvePositionConstraints():Boolean{ var _local1:Number; var _local2:b2Body; var _local3:b2Body; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; _local1 = 0; _local2 = m_body1; _local3 = m_body2; if ( ){ _local4 =  .GetJointAngle(); } else { _local4 =  .GetJointTranslation(); }; if ( ){ _local5 =  .GetJointAngle(); } else { _local5 =  .GetJointTranslation(); }; _local6 = (m_constant - (_local4 + (m_ratio * _local5))); _local7 = (-(m_mass) * _local6); _local2.m_sweep.c.x = (_local2.m_sweep.c.x + ((_local2.m_invMass * _local7) *  .linear1.x)); _local2.m_sweep.c.y = (_local2.m_sweep.c.y + ((_local2.m_invMass * _local7) *  .linear1.y)); _local2.m_sweep.a = (_local2.m_sweep.a + ((_local2.m_invI * _local7) *  .angular1)); _local3.m_sweep.c.x = (_local3.m_sweep.c.x + ((_local3.m_invMass * _local7) *  .linear2.x)); _local3.m_sweep.c.y = (_local3.m_sweep.c.y + ((_local3.m_invMass * _local7) *  .linear2.y)); _local3.m_sweep.a = (_local3.m_sweep.a + ((_local3.m_invI * _local7) *  .angular2)); _local2.SynchronizeTransform(); _local3.SynchronizeTransform(); return ((_local1 < b2Settings.b2_linearSlop)); } override public function InitVelocityConstraints(_arg1:b2TimeStep):void{ var _local2:b2Body; var _local3:b2Body; var _local4:b2Body; var _local5:b2Body; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:b2Mat22; var _local11:b2Vec2; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; _local2 =  ; _local3 =  ; _local4 = m_body1; _local5 = m_body2; _local14 = 0;  .SetZero(); if ( ){  .angular1 = -1; _local14 = (_local14 + _local4.m_invI); } else { _local10 = _local2.m_xf.R; _local11 =  .m_localXAxis1; _local6 = ((_local10.col1.x * _local11.x) + (_local10.col2.x * _local11.y)); _local7 = ((_local10.col1.y * _local11.x) + (_local10.col2.y * _local11.y)); _local10 = _local4.m_xf.R; _local8 = (m_localAnchor1.x - _local4.m_sweep.localCenter.x); _local9 = (m_localAnchor1.y - _local4.m_sweep.localCenter.y); _local13 = ((_local10.col1.x * _local8) + (_local10.col2.x * _local9)); _local9 = ((_local10.col1.y * _local8) + (_local10.col2.y * _local9)); _local8 = _local13; _local12 = ((_local8 * _local7) - (_local9 * _local6));  .linear1.Set(-(_local6), -(_local7));  .angular1 = -(_local12); _local14 = (_local14 + (_local4.m_invMass + ((_local4.m_invI * _local12) * _local12))); }; if ( ){  .angular2 = -(m_ratio); _local14 = (_local14 + ((m_ratio * m_ratio) * _local5.m_invI)); } else { _local10 = _local3.m_xf.R; _local11 =  .m_localXAxis1; _local6 = ((_local10.col1.x * _local11.x) + (_local10.col2.x * _local11.y)); _local7 = ((_local10.col1.y * _local11.x) + (_local10.col2.y * _local11.y)); _local10 = _local5.m_xf.R; _local8 = (m_localAnchor2.x - _local5.m_sweep.localCenter.x); _local9 = (m_localAnchor2.y - _local5.m_sweep.localCenter.y); _local13 = ((_local10.col1.x * _local8) + (_local10.col2.x * _local9)); _local9 = ((_local10.col1.y * _local8) + (_local10.col2.y * _local9)); _local8 = _local13; _local12 = ((_local8 * _local7) - (_local9 * _local6));  .linear2.Set((-(m_ratio) * _local6), (-(m_ratio) * _local7));  .angular2 = (-(m_ratio) * _local12); _local14 = (_local14 + ((m_ratio * m_ratio) * (_local5.m_invMass + ((_local5.m_invI * _local12) * _local12)))); }; m_mass = (1 / _local14); if (_arg1.warmStarting){ _local15 = (_arg1.dt * m_force); _local4.m_linearVelocity.x = (_local4.m_linearVelocity.x + ((_local4.m_invMass * _local15) *  .linear1.x)); _local4.m_linearVelocity.y = (_local4.m_linearVelocity.y + ((_local4.m_invMass * _local15) *  .linear1.y)); _local4.m_angularVelocity = (_local4.m_angularVelocity + ((_local4.m_invI * _local15) *  .angular1)); _local5.m_linearVelocity.x = (_local5.m_linearVelocity.x + ((_local5.m_invMass * _local15) *  .linear2.x)); _local5.m_linearVelocity.y = (_local5.m_linearVelocity.y + ((_local5.m_invMass * _local15) *  .linear2.y)); _local5.m_angularVelocity = (_local5.m_angularVelocity + ((_local5.m_invI * _local15) *  .angular2)); } else { m_force = 0; }; } override public function GetReactionTorque():Number{ var _local1:b2Mat22; var _local2:Number; var _local3:Number; var _local4:Number; _local1 = m_body2.m_xf.R; _local2 = (m_localAnchor1.x - m_body2.m_sweep.localCenter.x); _local3 = (m_localAnchor1.y - m_body2.m_sweep.localCenter.y); _local4 = ((_local1.col1.x * _local2) + (_local1.col2.x * _local3)); _local3 = ((_local1.col1.y * _local2) + (_local1.col2.y * _local3)); _local2 = _local4; _local4 = ((m_force *  .angular2) - ((_local2 * (m_force *  .linear2.y)) - (_local3 * (m_force *  .linear2.x)))); return (_local4); } public function GetRatio():Number{ return (m_ratio); } override public function SolveVelocityConstraints(_arg1:b2TimeStep):void{ var _local2:b2Body; var _local3:b2Body; var _local4:Number; var _local5:Number; var _local6:Number; _local2 = m_body1; _local3 = m_body2; _local4 =  .Compute(_local2.m_linearVelocity, _local2.m_angularVelocity, _local3.m_linearVelocity, _local3.m_angularVelocity); _local5 = ((-(_arg1.inv_dt) * m_mass) * _local4); m_force = (m_force + _local5); _local6 = (_arg1.dt * _local5); _local2.m_linearVelocity.x = (_local2.m_linearVelocity.x + ((_local2.m_invMass * _local6) *  .linear1.x)); _local2.m_linearVelocity.y = (_local2.m_linearVelocity.y + ((_local2.m_invMass * _local6) *  .linear1.y)); _local2.m_angularVelocity = (_local2.m_angularVelocity + ((_local2.m_invI * _local6) *  .angular1)); _local3.m_linearVelocity.x = (_local3.m_linearVelocity.x + ((_local3.m_invMass * _local6) *  .linear2.x)); _local3.m_linearVelocity.y = (_local3.m_linearVelocity.y + ((_local3.m_invMass * _local6) *  .linear2.y)); _local3.m_angularVelocity = (_local3.m_angularVelocity + ((_local3.m_invI * _local6) *  .angular2)); } } }//package Box2D.Dynamics.Joints
Section 51
//b2GearJointDef (Box2D.Dynamics.Joints.b2GearJointDef) package Box2D.Dynamics.Joints { public class b2GearJointDef extends b2JointDef { public var  :b2Joint; public var :b2Joint; public var ratio:Number; public function b2GearJointDef(){ type = b2Joint.e_gearJoint;  = null;   = null; ratio = 1; } } }//package Box2D.Dynamics.Joints
Section 52
//b2Jacobian (Box2D.Dynamics.Joints.b2Jacobian) package Box2D.Dynamics.Joints { import Box2D.Common.Math.*; public class b2Jacobian { public var linear1:b2Vec2; public var linear2:b2Vec2; public var angular2:Number; public var angular1:Number; public function b2Jacobian(){ linear1 = new b2Vec2(); linear2 = new b2Vec2(); super(); } public function Set(_arg1:b2Vec2, _arg2:Number, _arg3:b2Vec2, _arg4:Number):void{ linear1.SetV(_arg1); angular1 = _arg2; linear2.SetV(_arg3); angular2 = _arg4; } public function SetZero():void{ linear1.SetZero(); angular1 = 0; linear2.SetZero(); angular2 = 0; } public function Compute(_arg1:b2Vec2, _arg2:Number, _arg3:b2Vec2, _arg4:Number):Number{ return ((((((linear1.x * _arg1.x) + (linear1.y * _arg1.y)) + (angular1 * _arg2)) + ((linear2.x * _arg3.x) + (linear2.y * _arg3.y))) + (angular2 * _arg4))); } } }//package Box2D.Dynamics.Joints
Section 53
//b2Joint (Box2D.Dynamics.Joints.b2Joint) package Box2D.Dynamics.Joints { import Box2D.Common.Math.*; import Box2D.Dynamics.*; public class b2Joint { public var m_islandFlag:Boolean; public var m_body1:b2Body; public var m_prev:b2Joint; public var m_next:b2Joint; public var m_type:int; public var m_collideConnected:Boolean; public var m_node1:b2JointEdge; public var m_node2:b2JointEdge; public var m_inv_dt:Number; public var m_userData; public var m_body2:b2Body; public static const e_unknownJoint:int = 0; public static const e_inactiveLimit:int = 0; public static const e_atUpperLimit:int = 2; public static const e_atLowerLimit:int = 1; public static const e_gearJoint:int = 6; public static const e_revoluteJoint:int = 1; public static const e_equalLimits:int = 3; public static const e_distanceJoint:int = 3; public static const e_pulleyJoint:int = 4; public static const e_prismaticJoint:int = 2; public static const e_mouseJoint:int = 5; public function b2Joint(_arg1:b2JointDef){ m_node1 = new b2JointEdge(); m_node2 = new b2JointEdge(); super(); m_type = _arg1.type; m_prev = null; m_next = null; m_body1 = _arg1.body1; m_body2 = _arg1.body2; m_collideConnected = _arg1.collideConnected; m_islandFlag = false; m_userData = _arg1.userData; } public function GetAnchor1():b2Vec2{ return (null); } public function GetAnchor2():b2Vec2{ return (null); } public function InitVelocityConstraints(_arg1:b2TimeStep):void{ } public function GetType():int{ return (m_type); } public function ():b2Body{ return (m_body2); } public function GetNext():b2Joint{ return (m_next); } public function GetReactionTorque():Number{ return (0); } public function GetUserData(){ return (m_userData); } public function GetReactionForce():b2Vec2{ return (null); } public function SolvePositionConstraints():Boolean{ return (false); } public function SetUserData(_arg1):void{ m_userData = _arg1; } public function ():b2Body{ return (m_body1); } public function SolveVelocityConstraints(_arg1:b2TimeStep):void{ } public function InitPositionConstraints():void{ } public static function Destroy(_arg1:b2Joint, _arg2):void{ } public static function Create(_arg1:b2JointDef, _arg2):b2Joint{ var _local3:b2Joint; _local3 = null; switch (_arg1.type){ case e_distanceJoint: _local3 = new b2DistanceJoint((_arg1 as b2DistanceJointDef)); break; case e_mouseJoint: _local3 = new b2MouseJoint((_arg1 as b2MouseJointDef)); break; case e_prismaticJoint: _local3 = new b2PrismaticJoint((_arg1 as b2PrismaticJointDef)); break; case e_revoluteJoint: _local3 = new b2RevoluteJoint((_arg1 as b2RevoluteJointDef)); break; case e_pulleyJoint: _local3 = new b2PulleyJoint((_arg1 as b2PulleyJointDef)); break; case e_gearJoint: _local3 = new b2GearJoint((_arg1 as b2GearJointDef)); break; default: break; }; return (_local3); } } }//package Box2D.Dynamics.Joints
Section 54
//b2JointDef (Box2D.Dynamics.Joints.b2JointDef) package Box2D.Dynamics.Joints { import Box2D.Dynamics.*; public class b2JointDef { public var collideConnected:Boolean; public var body1:b2Body; public var body2:b2Body; public var userData; public var type:int; public function b2JointDef(){ type = b2Joint.e_unknownJoint; userData = null; body1 = null; body2 = null; collideConnected = false; } } }//package Box2D.Dynamics.Joints
Section 55
//b2JointEdge (Box2D.Dynamics.Joints.b2JointEdge) package Box2D.Dynamics.Joints { import Box2D.Dynamics.*; public class b2JointEdge { public var joint:b2Joint; public var other:b2Body; public var next:b2JointEdge; public var prev:b2JointEdge; } }//package Box2D.Dynamics.Joints
Section 56
//b2MouseJoint (Box2D.Dynamics.Joints.b2MouseJoint) package Box2D.Dynamics.Joints { import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Common.*; public class b2MouseJoint extends b2Joint { public var  :Number; public var m_mass:b2Mat22; public var  :b2Vec2; public var m_impulse:b2Vec2; public var  :b2Vec2; private var :b2Mat22; private var :b2Mat22; private var K:b2Mat22; public var m_gamma:Number; public var  :b2Vec2; public var  :Number; public function b2MouseJoint(_arg1:b2MouseJointDef){ var _local2:Number; var _local3:Number; var _local4:b2Mat22; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; K = new b2Mat22();  = new b2Mat22();  = new b2Mat22();   = new b2Vec2();  = new b2Vec2(); m_impulse = new b2Vec2(); m_mass = new b2Mat22();   = new b2Vec2(); super(_arg1);  .SetV(_arg1.target); _local2 = ( .x - m_body2.m_xf.position.x); _local3 = ( .y - m_body2.m_xf.position.y); _local4 = m_body2.m_xf.R;  .x = ((_local2 * _local4.col1.x) + (_local3 * _local4.col1.y));  .y = ((_local2 * _local4.col2.x) + (_local3 * _local4.col2.y));   = _arg1. ; m_impulse.SetZero(); _local5 = m_body2.m_mass; _local6 = ((2 * b2Settings.b2_pi) * _arg1.frequencyHz); _local7 = (((2 * _local5) * _arg1.dampingRatio) * _local6); _local8 = ((_arg1. * _local5) * (_local6 * _local6)); m_gamma = (1 / (_local7 + _local8));  = (_local8 / (_local7 + _local8)); } override public function GetAnchor1():b2Vec2{ return ( ); } override public function GetAnchor2():b2Vec2{ return (m_body2.GetWorldPoint( )); } override public function GetReactionForce():b2Vec2{ return (m_impulse); } override public function SolvePositionConstraints():Boolean{ return (true); } override public function InitVelocityConstraints(_arg1:b2TimeStep):void{ var _local2:b2Body; var _local3:b2Mat22; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; _local2 = m_body2; _local3 = _local2.m_xf.R; _local4 = ( .x - _local2.m_sweep.localCenter.x); _local5 = ( .y - _local2.m_sweep.localCenter.y); _local6 = ((_local3.col1.x * _local4) + (_local3.col2.x * _local5)); _local5 = ((_local3.col1.y * _local4) + (_local3.col2.y * _local5)); _local4 = _local6; _local7 = _local2.m_invMass; _local8 = _local2.m_invI; .col1.x = _local7; .col2.x = 0; .col1.y = 0; .col2.y = _local7; .col1.x = ((_local8 * _local5) * _local5); .col2.x = ((-(_local8) * _local4) * _local5); .col1.y = ((-(_local8) * _local4) * _local5); .col2.y = ((_local8 * _local4) * _local4); K.SetM(); K.AddM(); K.col1.x = (K.col1.x + m_gamma); K.col2.y = (K.col2.y + m_gamma); K.Invert(m_mass);  .x = ((_local2.m_sweep.c.x + _local4) -  .x);  .y = ((_local2.m_sweep.c.y + _local5) -  .y); _local2.m_angularVelocity = (_local2.m_angularVelocity * 0.98); _local9 = (_arg1.dt * m_impulse.x); _local10 = (_arg1.dt * m_impulse.y); _local2.m_linearVelocity.x = (_local2.m_linearVelocity.x + (_local7 * _local9)); _local2.m_linearVelocity.y = (_local2.m_linearVelocity.y + (_local7 * _local10)); _local2.m_angularVelocity = (_local2.m_angularVelocity + (_local8 * ((_local4 * _local10) - (_local5 * _local9)))); } override public function GetReactionTorque():Number{ return (0); } public function  (_arg1:b2Vec2):void{ if (m_body2.IsSleeping()){ m_body2.WakeUp(); };  = _arg1; } override public function SolveVelocityConstraints(_arg1:b2TimeStep):void{ var _local2:b2Body; var _local3:b2Mat22; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; _local2 = m_body2; _local3 = _local2.m_xf.R; _local6 = ( .x - _local2.m_sweep.localCenter.x); _local7 = ( .y - _local2.m_sweep.localCenter.y); _local4 = ((_local3.col1.x * _local6) + (_local3.col2.x * _local7)); _local7 = ((_local3.col1.y * _local6) + (_local3.col2.y * _local7)); _local6 = _local4; _local8 = (_local2.m_linearVelocity.x + (-(_local2.m_angularVelocity) * _local7)); _local9 = (_local2.m_linearVelocity.y + (_local2.m_angularVelocity * _local6)); _local3 = m_mass; _local4 = ((_local8 + (( * _arg1.inv_dt) *  .x)) + ((m_gamma * _arg1.dt) * m_impulse.x)); _local5 = ((_local9 + (( * _arg1.inv_dt) *  .y)) + ((m_gamma * _arg1.dt) * m_impulse.y)); _local10 = (-(_arg1.inv_dt) * ((_local3.col1.x * _local4) + (_local3.col2.x * _local5))); _local11 = (-(_arg1.inv_dt) * ((_local3.col1.y * _local4) + (_local3.col2.y * _local5))); _local12 = m_impulse.x; _local13 = m_impulse.y; m_impulse.x = (m_impulse.x + _local10); m_impulse.y = (m_impulse.y + _local11); _local14 = m_impulse.Length(); if (_local14 >  ){ m_impulse.Multiply((  / _local14)); }; _local10 = (m_impulse.x - _local12); _local11 = (m_impulse.y - _local13); _local15 = (_arg1.dt * _local10); _local16 = (_arg1.dt * _local11); _local2.m_linearVelocity.x = (_local2.m_linearVelocity.x + (_local2.m_invMass * _local15)); _local2.m_linearVelocity.y = (_local2.m_linearVelocity.y + (_local2.m_invMass * _local16)); _local2.m_angularVelocity = (_local2.m_angularVelocity + (_local2.m_invI * ((_local6 * _local16) - (_local7 * _local15)))); } } }//package Box2D.Dynamics.Joints
Section 57
//b2MouseJointDef (Box2D.Dynamics.Joints.b2MouseJointDef) package Box2D.Dynamics.Joints { import Box2D.Common.Math.*; public class b2MouseJointDef extends b2JointDef { public var frequencyHz:Number; public var dampingRatio:Number; public var  :Number; public var target:b2Vec2; public var :Number; public function b2MouseJointDef(){ target = new b2Vec2(); super(); type = b2Joint.e_mouseJoint;  = 0; frequencyHz = 5; dampingRatio = 0.7;  = (1 / 60); } } }//package Box2D.Dynamics.Joints
Section 58
//b2PrismaticJoint (Box2D.Dynamics.Joints.b2PrismaticJoint) package Box2D.Dynamics.Joints { import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Common.*; public class b2PrismaticJoint extends b2Joint { public var m_limitForce:Number; public var  :Number; public var  :Number; public var m_localXAxis1:b2Vec2; public var m_torque:Number; public var m_enableLimit:Boolean; public var m_motorForce:Number; public var m_force:Number; public var  :b2Vec2; public var m_motorMass:Number; public var  :Number; public var m_localAnchor1:b2Vec2; public var m_localAnchor2:b2Vec2; public var  :Number; public var m_limitState:int; public var  :Number; public var  :Number; public var  :b2Jacobian; public var m_limitPositionImpulse:Number; public var m_motorSpeed:Number; public var  :b2Jacobian; public var m_enableMotor:Boolean; public function b2PrismaticJoint(_arg1:b2PrismaticJointDef){ var _local2:b2Mat22; var _local3:Number; var _local4:Number; m_localAnchor1 = new b2Vec2(); m_localAnchor2 = new b2Vec2(); m_localXAxis1 = new b2Vec2();   = new b2Vec2();  = new b2Jacobian();   = new b2Jacobian(); super(_arg1); m_localAnchor1.SetV(_arg1.localAnchor1); m_localAnchor2.SetV(_arg1.localAnchor2); m_localXAxis1.SetV(_arg1.localAxis1);  .x = -(m_localXAxis1.y);  .y = m_localXAxis1.x;  = _arg1.referenceAngle;  .SetZero();   = 0; m_force = 0;   = 0; m_torque = 0;  .SetZero(); m_motorMass = 0; m_motorForce = 0; m_limitForce = 0; m_limitPositionImpulse = 0;   = _arg1.lowerTranslation;   = _arg1.upperTranslation;   = _arg1. ; m_motorSpeed = _arg1.motorSpeed; m_enableLimit = _arg1.enableLimit; m_enableMotor = _arg1.enableMotor; } override public function GetAnchor1():b2Vec2{ return (m_body1.GetWorldPoint(m_localAnchor1)); } override public function GetAnchor2():b2Vec2{ return (m_body2.GetWorldPoint(m_localAnchor2)); } public function EnableMotor(_arg1:Boolean):void{ m_enableMotor = _arg1; } public function GetUpperLimit():Number{ return ( ); } public function GetLowerLimit():Number{ return ( ); } public function GetJointTranslation():Number{ var _local1:b2Body; var _local2:b2Body; var _local3:b2Mat22; var _local4:b2Vec2; var _local5:b2Vec2; var _local6:Number; var _local7:Number; var _local8:b2Vec2; var _local9:Number; _local1 = m_body1; _local2 = m_body2; _local4 = _local1.GetWorldPoint(m_localAnchor1); _local5 = _local2.GetWorldPoint(m_localAnchor2); _local6 = (_local5.x - _local4.x); _local7 = (_local5.y - _local4.y); _local8 = _local1.GetWorldVector(m_localXAxis1); _local9 = ((_local8.x * _local6) + (_local8.y * _local7)); return (_local9); } public function SetLimits(_arg1:Number, _arg2:Number):void{   = _arg1;   = _arg2; } public function GetMotorSpeed():Number{ return (m_motorSpeed); } override public function GetReactionForce():b2Vec2{ var _local1:b2Mat22; var _local2:Number; var _local3:Number; var _local4:Number; var _local5:Number; _local1 = m_body1.m_xf.R; _local2 = (m_limitForce * ((_local1.col1.x * m_localXAxis1.x) + (_local1.col2.x * m_localXAxis1.y))); _local3 = (m_limitForce * ((_local1.col1.y * m_localXAxis1.x) + (_local1.col2.y * m_localXAxis1.y))); _local4 = (m_force * ((_local1.col1.x *  .x) + (_local1.col2.x *  .y))); _local5 = (m_force * ((_local1.col1.y *  .x) + (_local1.col2.y *  .y))); return (new b2Vec2(((m_limitForce * _local2) + (m_force * _local4)), ((m_limitForce * _local3) + (m_force * _local5)))); } override public function SolvePositionConstraints():Boolean{ var _local1:Number; var _local2:Number; var _local3:b2Body; var _local4:b2Body; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:b2Mat22; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; var _local20:Number; var _local21:Number; var _local22:Number; var _local23:Number; var _local24:Number; var _local25:Number; var _local26:Number; var _local27:Number; var _local28:Number; var _local29:Number; var _local30:Number; var _local31:Number; var _local32:Number; _local3 = m_body1; _local4 = m_body2; _local5 = _local3.m_invMass; _local6 = _local4.m_invMass; _local7 = _local3.m_invI; _local8 = _local4.m_invI; _local9 = _local3.m_xf.R; _local11 = (m_localAnchor1.x - _local3.m_sweep.localCenter.x); _local12 = (m_localAnchor1.y - _local3.m_sweep.localCenter.y); _local10 = ((_local9.col1.x * _local11) + (_local9.col2.x * _local12)); _local12 = ((_local9.col1.y * _local11) + (_local9.col2.y * _local12)); _local11 = _local10; _local9 = _local4.m_xf.R; _local13 = (m_localAnchor2.x - _local4.m_sweep.localCenter.x); _local14 = (m_localAnchor2.y - _local4.m_sweep.localCenter.y); _local10 = ((_local9.col1.x * _local13) + (_local9.col2.x * _local14)); _local14 = ((_local9.col1.y * _local13) + (_local9.col2.y * _local14)); _local13 = _local10; _local15 = (_local3.m_sweep.c.x + _local11); _local16 = (_local3.m_sweep.c.y + _local12); _local17 = (_local4.m_sweep.c.x + _local13); _local18 = (_local4.m_sweep.c.y + _local14); _local19 = (_local17 - _local15); _local20 = (_local18 - _local16); _local9 = _local3.m_xf.R; _local21 = ((_local9.col1.x *  .x) + (_local9.col2.x *  .y)); _local22 = ((_local9.col1.y *  .x) + (_local9.col2.y *  .y)); _local23 = ((_local21 * _local19) + (_local22 * _local20)); _local23 = b2Math.b2Clamp(_local23, -(b2Settings.b2_maxLinearCorrection), b2Settings.b2_maxLinearCorrection); _local24 = (-( ) * _local23); _local3.m_sweep.c.x = (_local3.m_sweep.c.x + ((_local5 * _local24) *  .linear1.x)); _local3.m_sweep.c.y = (_local3.m_sweep.c.y + ((_local5 * _local24) *  .linear1.y)); _local3.m_sweep.a = (_local3.m_sweep.a + ((_local7 * _local24) *  .angular1)); _local4.m_sweep.c.x = (_local4.m_sweep.c.x + ((_local6 * _local24) *  .linear2.x)); _local4.m_sweep.c.y = (_local4.m_sweep.c.y + ((_local6 * _local24) *  .linear2.y)); _local4.m_sweep.a = (_local4.m_sweep.a + ((_local8 * _local24) *  .angular2)); _local25 = b2Math.b2Abs(_local23); _local26 = ((_local4.m_sweep.a - _local3.m_sweep.a) -  ); _local26 = b2Math.b2Clamp(_local26, -(b2Settings.b2_maxAngularCorrection), b2Settings.b2_maxAngularCorrection); _local27 = (-( ) * _local26); _local3.m_sweep.a = (_local3.m_sweep.a - (_local3.m_invI * _local27)); _local4.m_sweep.a = (_local4.m_sweep.a + (_local4.m_invI * _local27)); _local3.SynchronizeTransform(); _local4.SynchronizeTransform(); _local28 = b2Math.b2Abs(_local26); if (((m_enableLimit) && (!((m_limitState == e_inactiveLimit))))){ _local9 = _local3.m_xf.R; _local11 = (m_localAnchor1.x - _local3.m_sweep.localCenter.x); _local12 = (m_localAnchor1.y - _local3.m_sweep.localCenter.y); _local10 = ((_local9.col1.x * _local11) + (_local9.col2.x * _local12)); _local12 = ((_local9.col1.y * _local11) + (_local9.col2.y * _local12)); _local11 = _local10; _local9 = _local4.m_xf.R; _local13 = (m_localAnchor2.x - _local4.m_sweep.localCenter.x); _local14 = (m_localAnchor2.y - _local4.m_sweep.localCenter.y); _local10 = ((_local9.col1.x * _local13) + (_local9.col2.x * _local14)); _local14 = ((_local9.col1.y * _local13) + (_local9.col2.y * _local14)); _local13 = _local10; _local15 = (_local3.m_sweep.c.x + _local11); _local16 = (_local3.m_sweep.c.y + _local12); _local17 = (_local4.m_sweep.c.x + _local13); _local18 = (_local4.m_sweep.c.y + _local14); _local19 = (_local17 - _local15); _local20 = (_local18 - _local16); _local9 = _local3.m_xf.R; _local29 = ((_local9.col1.x * m_localXAxis1.x) + (_local9.col2.x * m_localXAxis1.y)); _local30 = ((_local9.col1.y * m_localXAxis1.x) + (_local9.col2.y * m_localXAxis1.y)); _local31 = ((_local29 * _local19) + (_local30 * _local20)); _local32 = 0; if (m_limitState == e_equalLimits){ _local1 = b2Math.b2Clamp(_local31, -(b2Settings.b2_maxLinearCorrection), b2Settings.b2_maxLinearCorrection); _local32 = (-(m_motorMass) * _local1); _local25 = b2Math.b2Max(_local25, b2Math.b2Abs(_local26)); } else { if (m_limitState == e_atLowerLimit){ _local1 = (_local31 -  ); _local25 = b2Math.b2Max(_local25, -(_local1)); _local1 = b2Math.b2Clamp((_local1 + b2Settings.b2_linearSlop), -(b2Settings.b2_maxLinearCorrection), 0); _local32 = (-(m_motorMass) * _local1); _local2 = m_limitPositionImpulse; m_limitPositionImpulse = b2Math.b2Max((m_limitPositionImpulse + _local32), 0); _local32 = (m_limitPositionImpulse - _local2); } else { if (m_limitState == e_atUpperLimit){ _local1 = (_local31 -  ); _local25 = b2Math.b2Max(_local25, _local1); _local1 = b2Math.b2Clamp((_local1 - b2Settings.b2_linearSlop), 0, b2Settings.b2_maxLinearCorrection); _local32 = (-(m_motorMass) * _local1); _local2 = m_limitPositionImpulse; m_limitPositionImpulse = b2Math.b2Min((m_limitPositionImpulse + _local32), 0); _local32 = (m_limitPositionImpulse - _local2); }; }; }; _local3.m_sweep.c.x = (_local3.m_sweep.c.x + ((_local5 * _local32) *  .linear1.x)); _local3.m_sweep.c.y = (_local3.m_sweep.c.y + ((_local5 * _local32) *  .linear1.y)); _local3.m_sweep.a = (_local3.m_sweep.a + ((_local7 * _local32) *  .angular1)); _local4.m_sweep.c.x = (_local4.m_sweep.c.x + ((_local6 * _local32) *  .linear2.x)); _local4.m_sweep.c.y = (_local4.m_sweep.c.y + ((_local6 * _local32) *  .linear2.y)); _local4.m_sweep.a = (_local4.m_sweep.a + ((_local8 * _local32) *  .angular2)); _local3.SynchronizeTransform(); _local4.SynchronizeTransform(); }; return ((((_local25 <= b2Settings.b2_linearSlop)) && ((_local28 <= b2Settings.b2_angularSlop)))); } public function GetJointSpeed():Number{ var _local1:b2Body; var _local2:b2Body; var _local3:b2Mat22; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:b2Vec2; var _local16:b2Vec2; var _local17:b2Vec2; var _local18:Number; var _local19:Number; var _local20:Number; _local1 = m_body1; _local2 = m_body2; _local3 = _local1.m_xf.R; _local4 = (m_localAnchor1.x - _local1.m_sweep.localCenter.x); _local5 = (m_localAnchor1.y - _local1.m_sweep.localCenter.y); _local6 = ((_local3.col1.x * _local4) + (_local3.col2.x * _local5)); _local5 = ((_local3.col1.y * _local4) + (_local3.col2.y * _local5)); _local4 = _local6; _local3 = _local2.m_xf.R; _local7 = (m_localAnchor2.x - _local2.m_sweep.localCenter.x); _local8 = (m_localAnchor2.y - _local2.m_sweep.localCenter.y); _local6 = ((_local3.col1.x * _local7) + (_local3.col2.x * _local8)); _local8 = ((_local3.col1.y * _local7) + (_local3.col2.y * _local8)); _local7 = _local6; _local9 = (_local1.m_sweep.c.x + _local4); _local10 = (_local1.m_sweep.c.y + _local5); _local11 = (_local2.m_sweep.c.x + _local7); _local12 = (_local2.m_sweep.c.y + _local8); _local13 = (_local11 - _local9); _local14 = (_local12 - _local10); _local15 = _local1.GetWorldVector(m_localXAxis1); _local16 = _local1.m_linearVelocity; _local17 = _local2.m_linearVelocity; _local18 = _local1.m_angularVelocity; _local19 = _local2.m_angularVelocity; _local20 = (((_local13 * (-(_local18) * _local15.y)) + (_local14 * (_local18 * _local15.x))) + ((_local15.x * (((_local17.x + (-(_local19) * _local8)) - _local16.x) - (-(_local18) * _local5))) + (_local15.y * (((_local17.y + (_local19 * _local7)) - _local16.y) - (_local18 * _local4))))); return (_local20); } public function SetMotorSpeed(_arg1:Number):void{ m_motorSpeed = _arg1; } override public function InitVelocityConstraints(_arg1:b2TimeStep):void{ var _local2:b2Body; var _local3:b2Body; var _local4:b2Mat22; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; var _local20:Number; var _local21:Number; var _local22:Number; var _local23:Number; var _local24:Number; var _local25:Number; var _local26:Number; var _local27:Number; var _local28:Number; _local2 = m_body1; _local3 = m_body2; _local4 = _local2.m_xf.R; _local6 = (m_localAnchor1.x - _local2.m_sweep.localCenter.x); _local7 = (m_localAnchor1.y - _local2.m_sweep.localCenter.y); _local5 = ((_local4.col1.x * _local6) + (_local4.col2.x * _local7)); _local7 = ((_local4.col1.y * _local6) + (_local4.col2.y * _local7)); _local6 = _local5; _local4 = _local3.m_xf.R; _local8 = (m_localAnchor2.x - _local3.m_sweep.localCenter.x); _local9 = (m_localAnchor2.y - _local3.m_sweep.localCenter.y); _local5 = ((_local4.col1.x * _local8) + (_local4.col2.x * _local9)); _local9 = ((_local4.col1.y * _local8) + (_local4.col2.y * _local9)); _local8 = _local5; _local10 = _local2.m_invMass; _local11 = _local3.m_invMass; _local12 = _local2.m_invI; _local13 = _local3.m_invI; _local4 = _local2.m_xf.R; _local14 = ((_local4.col1.x *  .x) + (_local4.col2.x *  .y)); _local15 = ((_local4.col1.y *  .x) + (_local4.col2.y *  .y)); _local16 = ((_local3.m_sweep.c.x + _local8) - _local2.m_sweep.c.x); _local17 = ((_local3.m_sweep.c.y + _local9) - _local2.m_sweep.c.y);  .linear1.x = -(_local14);  .linear1.y = -(_local15);  .linear2.x = _local14;  .linear2.y = _local15;  .angular1 = -(((_local16 * _local15) - (_local17 * _local14)));  .angular2 = ((_local8 * _local15) - (_local9 * _local14));   = (((_local10 + ((_local12 *  .angular1) *  .angular1)) + _local11) + ((_local13 *  .angular2) *  .angular2));   = (1 /  );   = (_local12 + _local13); if (  > Number.MIN_VALUE){   = (1 /  ); }; if (((m_enableLimit) || (m_enableMotor))){ _local4 = _local2.m_xf.R; _local18 = ((_local4.col1.x * m_localXAxis1.x) + (_local4.col2.x * m_localXAxis1.y)); _local19 = ((_local4.col1.y * m_localXAxis1.x) + (_local4.col2.y * m_localXAxis1.y));  .linear1.x = -(_local18);  .linear1.y = -(_local19);  .linear2.x = _local18;  .linear2.y = _local19;  .angular1 = -(((_local16 * _local19) - (_local17 * _local18)));  .angular2 = ((_local8 * _local19) - (_local9 * _local18)); m_motorMass = (((_local10 + ((_local12 *  .angular1) *  .angular1)) + _local11) + ((_local13 *  .angular2) *  .angular2)); m_motorMass = (1 / m_motorMass); if (m_enableLimit){ _local20 = (_local16 - _local6); _local21 = (_local17 - _local7); _local22 = ((_local18 * _local20) + (_local19 * _local21)); if (b2Math.b2Abs((  -  )) < (2 * b2Settings.b2_linearSlop)){ m_limitState = e_equalLimits; } else { if (_local22 <=  ){ if (m_limitState != e_atLowerLimit){ m_limitForce = 0; }; m_limitState = e_atLowerLimit; } else { if (_local22 >=  ){ if (m_limitState != e_atUpperLimit){ m_limitForce = 0; }; m_limitState = e_atUpperLimit; } else { m_limitState = e_inactiveLimit; m_limitForce = 0; }; }; }; }; }; if (m_enableMotor == false){ m_motorForce = 0; }; if (m_enableLimit == false){ m_limitForce = 0; }; if (_arg1.warmStarting){ _local23 = (_arg1.dt * ((m_force *  .linear1.x) + ((m_motorForce + m_limitForce) *  .linear1.x))); _local24 = (_arg1.dt * ((m_force *  .linear1.y) + ((m_motorForce + m_limitForce) *  .linear1.y))); _local25 = (_arg1.dt * ((m_force *  .linear2.x) + ((m_motorForce + m_limitForce) *  .linear2.x))); _local26 = (_arg1.dt * ((m_force *  .linear2.y) + ((m_motorForce + m_limitForce) *  .linear2.y))); _local27 = (_arg1.dt * (((m_force *  .angular1) - m_torque) + ((m_motorForce + m_limitForce) *  .angular1))); _local28 = (_arg1.dt * (((m_force *  .angular2) + m_torque) + ((m_motorForce + m_limitForce) *  .angular2))); _local2.m_linearVelocity.x = (_local2.m_linearVelocity.x + (_local10 * _local23)); _local2.m_linearVelocity.y = (_local2.m_linearVelocity.y + (_local10 * _local24)); _local2.m_angularVelocity = (_local2.m_angularVelocity + (_local12 * _local27)); _local3.m_linearVelocity.x = (_local3.m_linearVelocity.x + (_local11 * _local25)); _local3.m_linearVelocity.y = (_local3.m_linearVelocity.y + (_local11 * _local26)); _local3.m_angularVelocity = (_local3.m_angularVelocity + (_local13 * _local28)); } else { m_force = 0; m_torque = 0; m_limitForce = 0; m_motorForce = 0; }; m_limitPositionImpulse = 0; } public function  ():Number{ return (m_motorForce); } public function  (_arg1:Number):void{   = _arg1; } public function EnableLimit(_arg1:Boolean):void{ m_enableLimit = _arg1; } override public function GetReactionTorque():Number{ return (m_torque); } public function IsLimitEnabled():Boolean{ return (m_enableLimit); } public function IsMotorEnabled():Boolean{ return (m_enableMotor); } override public function SolveVelocityConstraints(_arg1:b2TimeStep):void{ var _local2:b2Body; var _local3:b2Body; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; _local2 = m_body1; _local3 = m_body2; _local4 = _local2.m_invMass; _local5 = _local3.m_invMass; _local6 = _local2.m_invI; _local7 = _local3.m_invI; _local9 =  .Compute(_local2.m_linearVelocity, _local2.m_angularVelocity, _local3.m_linearVelocity, _local3.m_angularVelocity); _local10 = ((-(_arg1.inv_dt) *  ) * _local9); m_force = (m_force + _local10); _local11 = (_arg1.dt * _local10); _local2.m_linearVelocity.x = (_local2.m_linearVelocity.x + ((_local4 * _local11) *  .linear1.x)); _local2.m_linearVelocity.y = (_local2.m_linearVelocity.y + ((_local4 * _local11) *  .linear1.y)); _local2.m_angularVelocity = (_local2.m_angularVelocity + ((_local6 * _local11) *  .angular1)); _local3.m_linearVelocity.x = (_local3.m_linearVelocity.x + ((_local5 * _local11) *  .linear2.x)); _local3.m_linearVelocity.y = (_local3.m_linearVelocity.y + ((_local5 * _local11) *  .linear2.y)); _local3.m_angularVelocity = (_local3.m_angularVelocity + ((_local7 * _local11) *  .angular2)); _local12 = (_local3.m_angularVelocity - _local2.m_angularVelocity); _local13 = ((-(_arg1.inv_dt) *  ) * _local12); m_torque = (m_torque + _local13); _local14 = (_arg1.dt * _local13); _local2.m_angularVelocity = (_local2.m_angularVelocity - (_local6 * _local14)); _local3.m_angularVelocity = (_local3.m_angularVelocity + (_local7 * _local14)); if (((m_enableMotor) && (!((m_limitState == e_equalLimits))))){ _local15 = ( .Compute(_local2.m_linearVelocity, _local2.m_angularVelocity, _local3.m_linearVelocity, _local3.m_angularVelocity) - m_motorSpeed); _local16 = ((-(_arg1.inv_dt) * m_motorMass) * _local15); _local17 = m_motorForce; m_motorForce = b2Math.b2Clamp((m_motorForce + _local16), -( ),  ); _local16 = (m_motorForce - _local17); _local11 = (_arg1.dt * _local16); _local2.m_linearVelocity.x = (_local2.m_linearVelocity.x + ((_local4 * _local11) *  .linear1.x)); _local2.m_linearVelocity.y = (_local2.m_linearVelocity.y + ((_local4 * _local11) *  .linear1.y)); _local2.m_angularVelocity = (_local2.m_angularVelocity + ((_local6 * _local11) *  .angular1)); _local3.m_linearVelocity.x = (_local3.m_linearVelocity.x + ((_local5 * _local11) *  .linear2.x)); _local3.m_linearVelocity.y = (_local3.m_linearVelocity.y + ((_local5 * _local11) *  .linear2.y)); _local3.m_angularVelocity = (_local3.m_angularVelocity + ((_local7 * _local11) *  .angular2)); }; if (((m_enableLimit) && (!((m_limitState == e_inactiveLimit))))){ _local18 =  .Compute(_local2.m_linearVelocity, _local2.m_angularVelocity, _local3.m_linearVelocity, _local3.m_angularVelocity); _local19 = ((-(_arg1.inv_dt) * m_motorMass) * _local18); if (m_limitState == e_equalLimits){ m_limitForce = (m_limitForce + _local19); } else { if (m_limitState == e_atLowerLimit){ _local8 = m_limitForce; m_limitForce = b2Math.b2Max((m_limitForce + _local19), 0); _local19 = (m_limitForce - _local8); } else { if (m_limitState == e_atUpperLimit){ _local8 = m_limitForce; m_limitForce = b2Math.b2Min((m_limitForce + _local19), 0); _local19 = (m_limitForce - _local8); }; }; }; _local11 = (_arg1.dt * _local19); _local2.m_linearVelocity.x = (_local2.m_linearVelocity.x + ((_local4 * _local11) *  .linear1.x)); _local2.m_linearVelocity.y = (_local2.m_linearVelocity.y + ((_local4 * _local11) *  .linear1.y)); _local2.m_angularVelocity = (_local2.m_angularVelocity + ((_local6 * _local11) *  .angular1)); _local3.m_linearVelocity.x = (_local3.m_linearVelocity.x + ((_local5 * _local11) *  .linear2.x)); _local3.m_linearVelocity.y = (_local3.m_linearVelocity.y + ((_local5 * _local11) *  .linear2.y)); _local3.m_angularVelocity = (_local3.m_angularVelocity + ((_local7 * _local11) *  .angular2)); }; } } }//package Box2D.Dynamics.Joints
Section 59
//b2PrismaticJointDef (Box2D.Dynamics.Joints.b2PrismaticJointDef) package Box2D.Dynamics.Joints { import Box2D.Common.Math.*; import Box2D.Dynamics.*; public class b2PrismaticJointDef extends b2JointDef { public var localAxis1:b2Vec2; public var referenceAngle:Number; public var  :Number; public var motorSpeed:Number; public var upperTranslation:Number; public var localAnchor1:b2Vec2; public var localAnchor2:b2Vec2; public var enableLimit:Boolean; public var enableMotor:Boolean; public var lowerTranslation:Number; public function b2PrismaticJointDef(){ localAnchor1 = new b2Vec2(); localAnchor2 = new b2Vec2(); localAxis1 = new b2Vec2(); super(); type = b2Joint.e_prismaticJoint; localAxis1.Set(1, 0); referenceAngle = 0; enableLimit = false; lowerTranslation = 0; upperTranslation = 0; enableMotor = false;  = 0; motorSpeed = 0; } public function Initialize(_arg1:b2Body, _arg2:b2Body, _arg3:b2Vec2, _arg4:b2Vec2):void{ body1 = _arg1; body2 = _arg2; localAnchor1 = body1.GetLocalPoint(_arg3); localAnchor2 = body2.GetLocalPoint(_arg3); localAxis1 = body1.GetLocalVector(_arg4); referenceAngle = (body2.GetAngle() - body1.GetAngle()); } } }//package Box2D.Dynamics.Joints
Section 60
//b2PulleyJoint (Box2D.Dynamics.Joints.b2PulleyJoint) package Box2D.Dynamics.Joints { import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Common.*; public class b2PulleyJoint extends b2Joint { public var  :b2Body; public var  :Number; public var  :Number; public var  :Number; public var  :int; public var  :int; public var  :Number; public var m_force:Number; public var  :Number; public var m_constant:Number; public var  :int; public var m_ratio:Number; public var m_groundAnchor1:b2Vec2; public var m_groundAnchor2:b2Vec2; public var m_localAnchor1:b2Vec2; public var m_localAnchor2:b2Vec2; public var  :Number; public var  :Number; public var  :Number; public var  :Number; public var  :b2Vec2; public var  :b2Vec2; public var  :Number; public static const b2_minPulleyLength:Number = 2; public function b2PulleyJoint(_arg1:b2PulleyJointDef){ var _local2:b2Mat22; var _local3:Number; var _local4:Number; m_groundAnchor1 = new b2Vec2(); m_groundAnchor2 = new b2Vec2(); m_localAnchor1 = new b2Vec2(); m_localAnchor2 = new b2Vec2();   = new b2Vec2();   = new b2Vec2(); super(_arg1);   = m_body1.m_world.; m_groundAnchor1.x = (_arg1..x -  .m_xf.position.x); m_groundAnchor1.y = (_arg1..y -  .m_xf.position.y); m_groundAnchor2.x = (_arg1. .x -  .m_xf.position.x); m_groundAnchor2.y = (_arg1. .y -  .m_xf.position.y); m_localAnchor1.SetV(_arg1.localAnchor1); m_localAnchor2.SetV(_arg1.localAnchor2); m_ratio = _arg1.ratio; m_constant = (_arg1. + (m_ratio * _arg1.));   = b2Math.b2Min(_arg1., (m_constant - (m_ratio * b2_minPulleyLength)));   = b2Math.b2Min(_arg1., ((m_constant - b2_minPulleyLength) / m_ratio)); m_force = 0;   = 0;   = 0; } public function GetGroundAnchor2():b2Vec2{ var _local1:b2Vec2; _local1 =  .m_xf.position.Copy(); _local1.Add(m_groundAnchor2); return (_local1); } override public function GetAnchor1():b2Vec2{ return (m_body1.GetWorldPoint(m_localAnchor1)); } override public function GetAnchor2():b2Vec2{ return (m_body2.GetWorldPoint(m_localAnchor2)); } override public function GetReactionForce():b2Vec2{ var _local1:b2Vec2; _local1 =  .Copy(); _local1.Multiply(m_force); return (_local1); } override public function SolvePositionConstraints():Boolean{ var _local1:b2Body; var _local2:b2Body; var _local3:b2Mat22; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; var _local20:Number; var _local21:Number; var _local22:Number; var _local23:Number; _local1 = m_body1; _local2 = m_body2; _local4 = ( .m_xf.position.x + m_groundAnchor1.x); _local5 = ( .m_xf.position.y + m_groundAnchor1.y); _local6 = ( .m_xf.position.x + m_groundAnchor2.x); _local7 = ( .m_xf.position.y + m_groundAnchor2.y); _local23 = 0; if ( == e_atUpperLimit){ _local3 = _local1.m_xf.R; _local8 = (m_localAnchor1.x - _local1.m_sweep.localCenter.x); _local9 = (m_localAnchor1.y - _local1.m_sweep.localCenter.y); _local22 = ((_local3.col1.x * _local8) + (_local3.col2.x * _local9)); _local9 = ((_local3.col1.y * _local8) + (_local3.col2.y * _local9)); _local8 = _local22; _local3 = _local2.m_xf.R; _local10 = (m_localAnchor2.x - _local2.m_sweep.localCenter.x); _local11 = (m_localAnchor2.y - _local2.m_sweep.localCenter.y); _local22 = ((_local3.col1.x * _local10) + (_local3.col2.x * _local11)); _local11 = ((_local3.col1.y * _local10) + (_local3.col2.y * _local11)); _local10 = _local22; _local12 = (_local1.m_sweep.c.x + _local8); _local13 = (_local1.m_sweep.c.y + _local9); _local14 = (_local2.m_sweep.c.x + _local10); _local15 = (_local2.m_sweep.c.y + _local11);  .Set((_local12 - _local4), (_local13 - _local5));  .Set((_local14 - _local6), (_local15 - _local7)); _local16 =  .Length(); _local17 =  .Length(); if (_local16 > b2Settings.b2_linearSlop){  .Multiply((1 / _local16)); } else {  .SetZero(); }; if (_local17 > b2Settings.b2_linearSlop){  .Multiply((1 / _local17)); } else {  .SetZero(); }; _local18 = ((m_constant - _local16) - (m_ratio * _local17)); _local23 = b2Math.b2Max(_local23, -(_local18)); _local18 = b2Math.b2Clamp((_local18 + b2Settings.b2_linearSlop), -(b2Settings.b2_maxLinearCorrection), 0); _local19 = (-( ) * _local18); _local20 =  ;   = b2Math.b2Max(0, (  + _local19)); _local19 = (  - _local20); _local12 = (-(_local19) *  .x); _local13 = (-(_local19) *  .y); _local14 = ((-(m_ratio) * _local19) *  .x); _local15 = ((-(m_ratio) * _local19) *  .y); _local1.m_sweep.c.x = (_local1.m_sweep.c.x + (_local1.m_invMass * _local12)); _local1.m_sweep.c.y = (_local1.m_sweep.c.y + (_local1.m_invMass * _local13)); _local1.m_sweep.a = (_local1.m_sweep.a + (_local1.m_invI * ((_local8 * _local13) - (_local9 * _local12)))); _local2.m_sweep.c.x = (_local2.m_sweep.c.x + (_local2.m_invMass * _local14)); _local2.m_sweep.c.y = (_local2.m_sweep.c.y + (_local2.m_invMass * _local15)); _local2.m_sweep.a = (_local2.m_sweep.a + (_local2.m_invI * ((_local10 * _local15) - (_local11 * _local14)))); _local1.SynchronizeTransform(); _local2.SynchronizeTransform(); }; if (  == e_atUpperLimit){ _local3 = _local1.m_xf.R; _local8 = (m_localAnchor1.x - _local1.m_sweep.localCenter.x); _local9 = (m_localAnchor1.y - _local1.m_sweep.localCenter.y); _local22 = ((_local3.col1.x * _local8) + (_local3.col2.x * _local9)); _local9 = ((_local3.col1.y * _local8) + (_local3.col2.y * _local9)); _local8 = _local22; _local12 = (_local1.m_sweep.c.x + _local8); _local13 = (_local1.m_sweep.c.y + _local9);  .Set((_local12 - _local4), (_local13 - _local5)); _local16 =  .Length(); if (_local16 > b2Settings.b2_linearSlop){  .x = ( .x * (1 / _local16));  .y = ( .y * (1 / _local16)); } else {  .SetZero(); }; _local18 = (  - _local16); _local23 = b2Math.b2Max(_local23, -(_local18)); _local18 = b2Math.b2Clamp((_local18 + b2Settings.b2_linearSlop), -(b2Settings.b2_maxLinearCorrection), 0); _local19 = (-( ) * _local18); _local21 =  ;   = b2Math.b2Max(0, (  + _local19)); _local19 = (  - _local21); _local12 = (-(_local19) *  .x); _local13 = (-(_local19) *  .y); _local1.m_sweep.c.x = (_local1.m_sweep.c.x + (_local1.m_invMass * _local12)); _local1.m_sweep.c.y = (_local1.m_sweep.c.y + (_local1.m_invMass * _local13)); _local1.m_sweep.a = (_local1.m_sweep.a + (_local1.m_invI * ((_local8 * _local13) - (_local9 * _local12)))); _local1.SynchronizeTransform(); }; if (  == e_atUpperLimit){ _local3 = _local2.m_xf.R; _local10 = (m_localAnchor2.x - _local2.m_sweep.localCenter.x); _local11 = (m_localAnchor2.y - _local2.m_sweep.localCenter.y); _local22 = ((_local3.col1.x * _local10) + (_local3.col2.x * _local11)); _local11 = ((_local3.col1.y * _local10) + (_local3.col2.y * _local11)); _local10 = _local22; _local14 = (_local2.m_sweep.c.x + _local10); _local15 = (_local2.m_sweep.c.y + _local11);  .Set((_local14 - _local6), (_local15 - _local7)); _local17 =  .Length(); if (_local17 > b2Settings.b2_linearSlop){  .x = ( .x * (1 / _local17));  .y = ( .y * (1 / _local17)); } else {  .SetZero(); }; _local18 = (  - _local17); _local23 = b2Math.b2Max(_local23, -(_local18)); _local18 = b2Math.b2Clamp((_local18 + b2Settings.b2_linearSlop), -(b2Settings.b2_maxLinearCorrection), 0); _local19 = (-( ) * _local18); _local21 =  ;   = b2Math.b2Max(0, (  + _local19)); _local19 = (  - _local21); _local14 = (-(_local19) *  .x); _local15 = (-(_local19) *  .y); _local2.m_sweep.c.x = (_local2.m_sweep.c.x + (_local2.m_invMass * _local14)); _local2.m_sweep.c.y = (_local2.m_sweep.c.y + (_local2.m_invMass * _local15)); _local2.m_sweep.a = (_local2.m_sweep.a + (_local2.m_invI * ((_local10 * _local15) - (_local11 * _local14)))); _local2.SynchronizeTransform(); }; return ((_local23 < b2Settings.b2_linearSlop)); } override public function InitVelocityConstraints(_arg1:b2TimeStep):void{ var _local2:b2Body; var _local3:b2Body; var _local4:b2Mat22; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; var _local20:Number; var _local21:Number; var _local22:Number; var _local23:Number; var _local24:Number; var _local25:Number; var _local26:Number; _local2 = m_body1; _local3 = m_body2; _local4 = _local2.m_xf.R; _local5 = (m_localAnchor1.x - _local2.m_sweep.localCenter.x); _local6 = (m_localAnchor1.y - _local2.m_sweep.localCenter.y); _local7 = ((_local4.col1.x * _local5) + (_local4.col2.x * _local6)); _local6 = ((_local4.col1.y * _local5) + (_local4.col2.y * _local6)); _local5 = _local7; _local4 = _local3.m_xf.R; _local8 = (m_localAnchor2.x - _local3.m_sweep.localCenter.x); _local9 = (m_localAnchor2.y - _local3.m_sweep.localCenter.y); _local7 = ((_local4.col1.x * _local8) + (_local4.col2.x * _local9)); _local9 = ((_local4.col1.y * _local8) + (_local4.col2.y * _local9)); _local8 = _local7; _local10 = (_local2.m_sweep.c.x + _local5); _local11 = (_local2.m_sweep.c.y + _local6); _local12 = (_local3.m_sweep.c.x + _local8); _local13 = (_local3.m_sweep.c.y + _local9); _local14 = ( .m_xf.position.x + m_groundAnchor1.x); _local15 = ( .m_xf.position.y + m_groundAnchor1.y); _local16 = ( .m_xf.position.x + m_groundAnchor2.x); _local17 = ( .m_xf.position.y + m_groundAnchor2.y);  .Set((_local10 - _local14), (_local11 - _local15));  .Set((_local12 - _local16), (_local13 - _local17)); _local18 =  .Length(); _local19 =  .Length(); if (_local18 > b2Settings.b2_linearSlop){  .Multiply((1 / _local18)); } else {  .SetZero(); }; if (_local19 > b2Settings.b2_linearSlop){  .Multiply((1 / _local19)); } else {  .SetZero(); }; _local20 = ((m_constant - _local18) - (m_ratio * _local19)); if (_local20 > 0){  = e_inactiveLimit; m_force = 0; } else {  = e_atUpperLimit;   = 0; }; if (_local18 <  ){   = e_inactiveLimit;   = 0; } else {   = e_atUpperLimit;   = 0; }; if (_local19 <  ){   = e_inactiveLimit;   = 0; } else {   = e_atUpperLimit;   = 0; }; _local21 = ((_local5 *  .y) - (_local6 *  .x)); _local22 = ((_local8 *  .y) - (_local9 *  .x));   = (_local2.m_invMass + ((_local2.m_invI * _local21) * _local21));   = (_local3.m_invMass + ((_local3.m_invI * _local22) * _local22));   = (  + ((m_ratio * m_ratio) *  ));   = (1 /  );   = (1 /  );   = (1 /  ); if (_arg1.warmStarting){ _local23 = ((_arg1.dt * (-(m_force) -  )) *  .x); _local24 = ((_arg1.dt * (-(m_force) -  )) *  .y); _local25 = ((_arg1.dt * ((-(m_ratio) * m_force) -  )) *  .x); _local26 = ((_arg1.dt * ((-(m_ratio) * m_force) -  )) *  .y); _local2.m_linearVelocity.x = (_local2.m_linearVelocity.x + (_local2.m_invMass * _local23)); _local2.m_linearVelocity.y = (_local2.m_linearVelocity.y + (_local2.m_invMass * _local24)); _local2.m_angularVelocity = (_local2.m_angularVelocity + (_local2.m_invI * ((_local5 * _local24) - (_local6 * _local23)))); _local3.m_linearVelocity.x = (_local3.m_linearVelocity.x + (_local3.m_invMass * _local25)); _local3.m_linearVelocity.y = (_local3.m_linearVelocity.y + (_local3.m_invMass * _local26)); _local3.m_angularVelocity = (_local3.m_angularVelocity + (_local3.m_invI * ((_local8 * _local26) - (_local9 * _local25)))); } else { m_force = 0;   = 0;   = 0; }; } override public function GetReactionTorque():Number{ return (0); } public function GetRatio():Number{ return (m_ratio); } public function  ():Number{ var _local1:b2Vec2; var _local2:Number; var _local3:Number; var _local4:Number; var _local5:Number; _local1 = m_body2.GetWorldPoint(m_localAnchor2); _local2 = ( .m_xf.position.x + m_groundAnchor2.x); _local3 = ( .m_xf.position.y + m_groundAnchor2.y); _local4 = (_local1.x - _local2); _local5 = (_local1.y - _local3); return (Math.sqrt(((_local4 * _local4) + (_local5 * _local5)))); } override public function SolveVelocityConstraints(_arg1:b2TimeStep):void{ var _local2:b2Body; var _local3:b2Body; var _local4:b2Mat22; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; var _local20:Number; _local2 = m_body1; _local3 = m_body2; _local4 = _local2.m_xf.R; _local5 = (m_localAnchor1.x - _local2.m_sweep.localCenter.x); _local6 = (m_localAnchor1.y - _local2.m_sweep.localCenter.y); _local7 = ((_local4.col1.x * _local5) + (_local4.col2.x * _local6)); _local6 = ((_local4.col1.y * _local5) + (_local4.col2.y * _local6)); _local5 = _local7; _local4 = _local3.m_xf.R; _local8 = (m_localAnchor2.x - _local3.m_sweep.localCenter.x); _local9 = (m_localAnchor2.y - _local3.m_sweep.localCenter.y); _local7 = ((_local4.col1.x * _local8) + (_local4.col2.x * _local9)); _local9 = ((_local4.col1.y * _local8) + (_local4.col2.y * _local9)); _local8 = _local7; if ( == e_atUpperLimit){ _local10 = (_local2.m_linearVelocity.x + (-(_local2.m_angularVelocity) * _local6)); _local11 = (_local2.m_linearVelocity.y + (_local2.m_angularVelocity * _local5)); _local12 = (_local3.m_linearVelocity.x + (-(_local3.m_angularVelocity) * _local9)); _local13 = (_local3.m_linearVelocity.y + (_local3.m_angularVelocity * _local8)); _local18 = (-((( .x * _local10) + ( .y * _local11))) - (m_ratio * (( .x * _local12) + ( .y * _local13)))); _local19 = ((-(_arg1.inv_dt) *  ) * _local18); _local20 = m_force; m_force = b2Math.b2Max(0, (m_force + _local19)); _local19 = (m_force - _local20); _local14 = ((-(_arg1.dt) * _local19) *  .x); _local15 = ((-(_arg1.dt) * _local19) *  .y); _local16 = (((-(_arg1.dt) * m_ratio) * _local19) *  .x); _local17 = (((-(_arg1.dt) * m_ratio) * _local19) *  .y); _local2.m_linearVelocity.x = (_local2.m_linearVelocity.x + (_local2.m_invMass * _local14)); _local2.m_linearVelocity.y = (_local2.m_linearVelocity.y + (_local2.m_invMass * _local15)); _local2.m_angularVelocity = (_local2.m_angularVelocity + (_local2.m_invI * ((_local5 * _local15) - (_local6 * _local14)))); _local3.m_linearVelocity.x = (_local3.m_linearVelocity.x + (_local3.m_invMass * _local16)); _local3.m_linearVelocity.y = (_local3.m_linearVelocity.y + (_local3.m_invMass * _local17)); _local3.m_angularVelocity = (_local3.m_angularVelocity + (_local3.m_invI * ((_local8 * _local17) - (_local9 * _local16)))); }; if (  == e_atUpperLimit){ _local10 = (_local2.m_linearVelocity.x + (-(_local2.m_angularVelocity) * _local6)); _local11 = (_local2.m_linearVelocity.y + (_local2.m_angularVelocity * _local5)); _local18 = -((( .x * _local10) + ( .y * _local11))); _local19 = ((-(_arg1.inv_dt) *  ) * _local18); _local20 =  ;   = b2Math.b2Max(0, (  + _local19)); _local19 = (  - _local20); _local14 = ((-(_arg1.dt) * _local19) *  .x); _local15 = ((-(_arg1.dt) * _local19) *  .y); _local2.m_linearVelocity.x = (_local2.m_linearVelocity.x + (_local2.m_invMass * _local14)); _local2.m_linearVelocity.y = (_local2.m_linearVelocity.y + (_local2.m_invMass * _local15)); _local2.m_angularVelocity = (_local2.m_angularVelocity + (_local2.m_invI * ((_local5 * _local15) - (_local6 * _local14)))); }; if (  == e_atUpperLimit){ _local12 = (_local3.m_linearVelocity.x + (-(_local3.m_angularVelocity) * _local9)); _local13 = (_local3.m_linearVelocity.y + (_local3.m_angularVelocity * _local8)); _local18 = -((( .x * _local12) + ( .y * _local13))); _local19 = ((-(_arg1.inv_dt) *  ) * _local18); _local20 =  ;   = b2Math.b2Max(0, (  + _local19)); _local19 = (  - _local20); _local16 = ((-(_arg1.dt) * _local19) *  .x); _local17 = ((-(_arg1.dt) * _local19) *  .y); _local3.m_linearVelocity.x = (_local3.m_linearVelocity.x + (_local3.m_invMass * _local16)); _local3.m_linearVelocity.y = (_local3.m_linearVelocity.y + (_local3.m_invMass * _local17)); _local3.m_angularVelocity = (_local3.m_angularVelocity + (_local3.m_invI * ((_local8 * _local17) - (_local9 * _local16)))); }; } public function  ():Number{ var _local1:b2Vec2; var _local2:Number; var _local3:Number; var _local4:Number; var _local5:Number; _local1 = m_body1.GetWorldPoint(m_localAnchor1); _local2 = ( .m_xf.position.x + m_groundAnchor1.x); _local3 = ( .m_xf.position.y + m_groundAnchor1.y); _local4 = (_local1.x - _local2); _local5 = (_local1.y - _local3); return (Math.sqrt(((_local4 * _local4) + (_local5 * _local5)))); } public function GetGroundAnchor1():b2Vec2{ var _local1:b2Vec2; _local1 =  .m_xf.position.Copy(); _local1.Add(m_groundAnchor1); return (_local1); } } }//package Box2D.Dynamics.Joints
Section 61
//b2PulleyJointDef (Box2D.Dynamics.Joints.b2PulleyJointDef) package Box2D.Dynamics.Joints { import Box2D.Common.Math.*; import Box2D.Dynamics.*; public class b2PulleyJointDef extends b2JointDef { public var :Number; public var :Number; public var :Number; public var :Number; public var ratio:Number; public var :b2Vec2; public var  :b2Vec2; public var localAnchor1:b2Vec2; public var localAnchor2:b2Vec2; public function b2PulleyJointDef(){  = new b2Vec2();  = new b2Vec2(); localAnchor1 = new b2Vec2(); localAnchor2 = new b2Vec2(); super(); type = b2Joint.e_pulleyJoint; .Set(-1, 1);  .Set(1, 1); localAnchor1.Set(-1, 0); localAnchor2.Set(1, 0);  = 0;  = 0;  = 0;  = 0; ratio = 1; collideConnected = true; } public function Initialize(_arg1:b2Body, _arg2:b2Body, _arg3:b2Vec2, _arg4:b2Vec2, _arg5:b2Vec2, _arg6:b2Vec2, _arg7:Number):void{ var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; body1 = _arg1; body2 = _arg2; .SetV(_arg3);  .SetV(_arg4); localAnchor1 = body1.GetLocalPoint(_arg5); localAnchor2 = body2.GetLocalPoint(_arg6); _local8 = (_arg5.x - _arg3.x); _local9 = (_arg5.y - _arg3.y);  = Math.sqrt(((_local8 * _local8) + (_local9 * _local9))); _local10 = (_arg6.x - _arg4.x); _local11 = (_arg6.y - _arg4.y);  = Math.sqrt(((_local10 * _local10) + (_local11 * _local11))); ratio = _arg7; _local12 = ( + (ratio * ));  = (_local12 - (ratio * b2PulleyJoint.b2_minPulleyLength));  = ((_local12 - b2PulleyJoint.b2_minPulleyLength) / ratio); } } }//package Box2D.Dynamics.Joints
Section 62
//b2RevoluteJoint (Box2D.Dynamics.Joints.b2RevoluteJoint) package Box2D.Dynamics.Joints { import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Common.*; public class b2RevoluteJoint extends b2Joint { public var m_limitForce:Number; public var m_motorForce:Number; public var :b2Mat22; public var m_enableLimit:Boolean; public var m_limitState:int; public var m_motorMass:Number; public var m_localAnchor1:b2Vec2; public var m_localAnchor2:b2Vec2; private var :b2Mat22; private var :b2Mat22; private var :b2Mat22; private var K:b2Mat22; public var :b2Vec2; public var m_motorSpeed:Number; public var m_enableMotor:Boolean; public var m_limitPositionImpulse:Number; public var :Number; public var  :Number; public var  :Number; public var  :Number; public static var tImpulse:b2Vec2 = new b2Vec2(); public function b2RevoluteJoint(_arg1:b2RevoluteJointDef){ K = new b2Mat22();  = new b2Mat22();  = new b2Mat22();  = new b2Mat22(); m_localAnchor1 = new b2Vec2(); m_localAnchor2 = new b2Vec2();  = new b2Vec2();  = new b2Mat22(); super(_arg1); m_localAnchor1.SetV(_arg1.localAnchor1); m_localAnchor2.SetV(_arg1.localAnchor2);  = _arg1.referenceAngle; .Set(0, 0); m_motorForce = 0; m_limitForce = 0; m_limitPositionImpulse = 0;  = _arg1. ;  = _arg1. ;  = _arg1. ; m_motorSpeed = _arg1.motorSpeed; m_enableLimit = _arg1.enableLimit; m_enableMotor = _arg1.enableMotor; } override public function GetAnchor1():b2Vec2{ return (m_body1.GetWorldPoint(m_localAnchor1)); } override public function GetAnchor2():b2Vec2{ return (m_body2.GetWorldPoint(m_localAnchor2)); } public function EnableMotor(_arg1:Boolean):void{ m_enableMotor = _arg1; } public function GetUpperLimit():Number{ return ( ); } public function GetLowerLimit():Number{ return ( ); } public function SetLimits(_arg1:Number, _arg2:Number):void{  = _arg1;  = _arg2; } public function GetMotorSpeed():Number{ return (m_motorSpeed); } override public function GetReactionForce():b2Vec2{ return (); } override public function SolvePositionConstraints():Boolean{ var _local1:Number; var _local2:Number; var _local3:b2Body; var _local4:b2Body; var _local5:Number; var _local6:b2Mat22; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; var _local20:Number; var _local21:Number; var _local22:Number; var _local23:Number; var _local24:Number; var _local25:Number; var _local26:Number; _local3 = m_body1; _local4 = m_body2; _local5 = 0; _local6 = _local3.m_xf.R; _local7 = (m_localAnchor1.x - _local3.m_sweep.localCenter.x); _local8 = (m_localAnchor1.y - _local3.m_sweep.localCenter.y); _local9 = ((_local6.col1.x * _local7) + (_local6.col2.x * _local8)); _local8 = ((_local6.col1.y * _local7) + (_local6.col2.y * _local8)); _local7 = _local9; _local6 = _local4.m_xf.R; _local10 = (m_localAnchor2.x - _local4.m_sweep.localCenter.x); _local11 = (m_localAnchor2.y - _local4.m_sweep.localCenter.y); _local9 = ((_local6.col1.x * _local10) + (_local6.col2.x * _local11)); _local11 = ((_local6.col1.y * _local10) + (_local6.col2.y * _local11)); _local10 = _local9; _local12 = (_local3.m_sweep.c.x + _local7); _local13 = (_local3.m_sweep.c.y + _local8); _local14 = (_local4.m_sweep.c.x + _local10); _local15 = (_local4.m_sweep.c.y + _local11); _local16 = (_local14 - _local12); _local17 = (_local15 - _local13); _local5 = Math.sqrt(((_local16 * _local16) + (_local17 * _local17))); _local18 = _local3.m_invMass; _local19 = _local4.m_invMass; _local20 = _local3.m_invI; _local21 = _local4.m_invI; .col1.x = (_local18 + _local19); .col2.x = 0; .col1.y = 0; .col2.y = (_local18 + _local19); .col1.x = ((_local20 * _local8) * _local8); .col2.x = ((-(_local20) * _local7) * _local8); .col1.y = ((-(_local20) * _local7) * _local8); .col2.y = ((_local20 * _local7) * _local7); .col1.x = ((_local21 * _local11) * _local11); .col2.x = ((-(_local21) * _local10) * _local11); .col1.y = ((-(_local21) * _local10) * _local11); .col2.y = ((_local21 * _local10) * _local10); K.SetM(); K.AddM(); K.AddM(); K.Solve(tImpulse, -(_local16), -(_local17)); _local22 = tImpulse.x; _local23 = tImpulse.y; _local3.m_sweep.c.x = (_local3.m_sweep.c.x - (_local3.m_invMass * _local22)); _local3.m_sweep.c.y = (_local3.m_sweep.c.y - (_local3.m_invMass * _local23)); _local3.m_sweep.a = (_local3.m_sweep.a - (_local3.m_invI * ((_local7 * _local23) - (_local8 * _local22)))); _local4.m_sweep.c.x = (_local4.m_sweep.c.x + (_local4.m_invMass * _local22)); _local4.m_sweep.c.y = (_local4.m_sweep.c.y + (_local4.m_invMass * _local23)); _local4.m_sweep.a = (_local4.m_sweep.a + (_local4.m_invI * ((_local10 * _local23) - (_local11 * _local22)))); _local3.SynchronizeTransform(); _local4.SynchronizeTransform(); _local24 = 0; if (((m_enableLimit) && (!((m_limitState == e_inactiveLimit))))){ _local25 = ((_local4.m_sweep.a - _local3.m_sweep.a) -  ); _local26 = 0; if (m_limitState == e_equalLimits){ _local2 = b2Math.b2Clamp(_local25, -(b2Settings.b2_maxAngularCorrection), b2Settings.b2_maxAngularCorrection); _local26 = (-(m_motorMass) * _local2); _local24 = b2Math.b2Abs(_local2); } else { if (m_limitState == e_atLowerLimit){ _local2 = (_local25 -  ); _local24 = b2Math.b2Max(0, -(_local2)); _local2 = b2Math.b2Clamp((_local2 + b2Settings.b2_angularSlop), -(b2Settings.b2_maxAngularCorrection), 0); _local26 = (-(m_motorMass) * _local2); _local1 = m_limitPositionImpulse; m_limitPositionImpulse = b2Math.b2Max((m_limitPositionImpulse + _local26), 0); _local26 = (m_limitPositionImpulse - _local1); } else { if (m_limitState == e_atUpperLimit){ _local2 = (_local25 -  ); _local24 = b2Math.b2Max(0, _local2); _local2 = b2Math.b2Clamp((_local2 - b2Settings.b2_angularSlop), 0, b2Settings.b2_maxAngularCorrection); _local26 = (-(m_motorMass) * _local2); _local1 = m_limitPositionImpulse; m_limitPositionImpulse = b2Math.b2Min((m_limitPositionImpulse + _local26), 0); _local26 = (m_limitPositionImpulse - _local1); }; }; }; _local3.m_sweep.a = (_local3.m_sweep.a - (_local3.m_invI * _local26)); _local4.m_sweep.a = (_local4.m_sweep.a + (_local4.m_invI * _local26)); _local3.SynchronizeTransform(); _local4.SynchronizeTransform(); }; return ((((_local5 <= b2Settings.b2_linearSlop)) && ((_local24 <= b2Settings.b2_angularSlop)))); } public function GetJointSpeed():Number{ return ((m_body2.m_angularVelocity - m_body1.m_angularVelocity)); } public function SetMotorSpeed(_arg1:Number):void{ m_motorSpeed = _arg1; } public function  (_arg1:Number):void{  = _arg1; } public function GetJointAngle():Number{ return (((m_body2.m_sweep.a - m_body1.m_sweep.a) -  )); } override public function InitVelocityConstraints(_arg1:b2TimeStep):void{ var _local2:b2Body; var _local3:b2Body; var _local4:b2Mat22; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; _local2 = m_body1; _local3 = m_body2; _local4 = _local2.m_xf.R; _local6 = (m_localAnchor1.x - _local2.m_sweep.localCenter.x); _local7 = (m_localAnchor1.y - _local2.m_sweep.localCenter.y); _local5 = ((_local4.col1.x * _local6) + (_local4.col2.x * _local7)); _local7 = ((_local4.col1.y * _local6) + (_local4.col2.y * _local7)); _local6 = _local5; _local4 = _local3.m_xf.R; _local8 = (m_localAnchor2.x - _local3.m_sweep.localCenter.x); _local9 = (m_localAnchor2.y - _local3.m_sweep.localCenter.y); _local5 = ((_local4.col1.x * _local8) + (_local4.col2.x * _local9)); _local9 = ((_local4.col1.y * _local8) + (_local4.col2.y * _local9)); _local8 = _local5; _local10 = _local2.m_invMass; _local11 = _local3.m_invMass; _local12 = _local2.m_invI; _local13 = _local3.m_invI; .col1.x = (_local10 + _local11); .col2.x = 0; .col1.y = 0; .col2.y = (_local10 + _local11); .col1.x = ((_local12 * _local7) * _local7); .col2.x = ((-(_local12) * _local6) * _local7); .col1.y = ((-(_local12) * _local6) * _local7); .col2.y = ((_local12 * _local6) * _local6); .col1.x = ((_local13 * _local9) * _local9); .col2.x = ((-(_local13) * _local8) * _local9); .col1.y = ((-(_local13) * _local8) * _local9); .col2.y = ((_local13 * _local8) * _local8); K.SetM(); K.AddM(); K.AddM(); K.Invert(); m_motorMass = (1 / (_local12 + _local13)); if (m_enableMotor == false){ m_motorForce = 0; }; if (m_enableLimit){ _local14 = ((_local3.m_sweep.a - _local2.m_sweep.a) -  ); if (b2Math.b2Abs(( -  )) < (2 * b2Settings.b2_angularSlop)){ m_limitState = e_equalLimits; } else { if (_local14 <=  ){ if (m_limitState != e_atLowerLimit){ m_limitForce = 0; }; m_limitState = e_atLowerLimit; } else { if (_local14 >=  ){ if (m_limitState != e_atUpperLimit){ m_limitForce = 0; }; m_limitState = e_atUpperLimit; } else { m_limitState = e_inactiveLimit; m_limitForce = 0; }; }; }; } else { m_limitForce = 0; }; if (_arg1.warmStarting){ _local2.m_linearVelocity.x = (_local2.m_linearVelocity.x - ((_arg1.dt * _local10) * .x)); _local2.m_linearVelocity.y = (_local2.m_linearVelocity.y - ((_arg1.dt * _local10) * .y)); _local2.m_angularVelocity = (_local2.m_angularVelocity - ((_arg1.dt * _local12) * ((((_local6 * .y) - (_local7 * .x)) + m_motorForce) + m_limitForce))); _local3.m_linearVelocity.x = (_local3.m_linearVelocity.x + ((_arg1.dt * _local11) * .x)); _local3.m_linearVelocity.y = (_local3.m_linearVelocity.y + ((_arg1.dt * _local11) * .y)); _local3.m_angularVelocity = (_local3.m_angularVelocity + ((_arg1.dt * _local13) * ((((_local8 * .y) - (_local9 * .x)) + m_motorForce) + m_limitForce))); } else { .SetZero(); m_motorForce = 0; m_limitForce = 0; }; m_limitPositionImpulse = 0; } public function EnableLimit(_arg1:Boolean):void{ m_enableLimit = _arg1; } public function ():Number{ return (m_motorForce); } override public function GetReactionTorque():Number{ return (m_limitForce); } public function IsLimitEnabled():Boolean{ return (m_enableLimit); } public function IsMotorEnabled():Boolean{ return (m_enableMotor); } override public function SolveVelocityConstraints(_arg1:b2TimeStep):void{ var _local2:b2Body; var _local3:b2Body; var _local4:b2Mat22; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; var _local20:Number; var _local21:Number; _local2 = m_body1; _local3 = m_body2; _local4 = _local2.m_xf.R; _local6 = (m_localAnchor1.x - _local2.m_sweep.localCenter.x); _local7 = (m_localAnchor1.y - _local2.m_sweep.localCenter.y); _local5 = ((_local4.col1.x * _local6) + (_local4.col2.x * _local7)); _local7 = ((_local4.col1.y * _local6) + (_local4.col2.y * _local7)); _local6 = _local5; _local4 = _local3.m_xf.R; _local8 = (m_localAnchor2.x - _local3.m_sweep.localCenter.x); _local9 = (m_localAnchor2.y - _local3.m_sweep.localCenter.y); _local5 = ((_local4.col1.x * _local8) + (_local4.col2.x * _local9)); _local9 = ((_local4.col1.y * _local8) + (_local4.col2.y * _local9)); _local8 = _local5; _local11 = (((_local3.m_linearVelocity.x + (-(_local3.m_angularVelocity) * _local9)) - _local2.m_linearVelocity.x) - (-(_local2.m_angularVelocity) * _local7)); _local12 = (((_local3.m_linearVelocity.y + (_local3.m_angularVelocity * _local8)) - _local2.m_linearVelocity.y) - (_local2.m_angularVelocity * _local6)); _local13 = (-(_arg1.inv_dt) * ((.col1.x * _local11) + (.col2.x * _local12))); _local14 = (-(_arg1.inv_dt) * ((.col1.y * _local11) + (.col2.y * _local12))); .x = (.x + _local13); .y = (.y + _local14); _local15 = (_arg1.dt * _local13); _local16 = (_arg1.dt * _local14); _local2.m_linearVelocity.x = (_local2.m_linearVelocity.x - (_local2.m_invMass * _local15)); _local2.m_linearVelocity.y = (_local2.m_linearVelocity.y - (_local2.m_invMass * _local16)); _local2.m_angularVelocity = (_local2.m_angularVelocity - (_local2.m_invI * ((_local6 * _local16) - (_local7 * _local15)))); _local3.m_linearVelocity.x = (_local3.m_linearVelocity.x + (_local3.m_invMass * _local15)); _local3.m_linearVelocity.y = (_local3.m_linearVelocity.y + (_local3.m_invMass * _local16)); _local3.m_angularVelocity = (_local3.m_angularVelocity + (_local3.m_invI * ((_local8 * _local16) - (_local9 * _local15)))); if (((m_enableMotor) && (!((m_limitState == e_equalLimits))))){ _local17 = ((_local3.m_angularVelocity - _local2.m_angularVelocity) - m_motorSpeed); _local18 = ((-(_arg1.inv_dt) * m_motorMass) * _local17); _local19 = m_motorForce; m_motorForce = b2Math.b2Clamp((m_motorForce + _local18), -(), ); _local18 = (m_motorForce - _local19); _local2.m_angularVelocity = (_local2.m_angularVelocity - ((_local2.m_invI * _arg1.dt) * _local18)); _local3.m_angularVelocity = (_local3.m_angularVelocity + ((_local3.m_invI * _arg1.dt) * _local18)); }; if (((m_enableLimit) && (!((m_limitState == e_inactiveLimit))))){ _local20 = (_local3.m_angularVelocity - _local2.m_angularVelocity); _local21 = ((-(_arg1.inv_dt) * m_motorMass) * _local20); if (m_limitState == e_equalLimits){ m_limitForce = (m_limitForce + _local21); } else { if (m_limitState == e_atLowerLimit){ _local10 = m_limitForce; m_limitForce = b2Math.b2Max((m_limitForce + _local21), 0); _local21 = (m_limitForce - _local10); } else { if (m_limitState == e_atUpperLimit){ _local10 = m_limitForce; m_limitForce = b2Math.b2Min((m_limitForce + _local21), 0); _local21 = (m_limitForce - _local10); }; }; }; _local2.m_angularVelocity = (_local2.m_angularVelocity - ((_local2.m_invI * _arg1.dt) * _local21)); _local3.m_angularVelocity = (_local3.m_angularVelocity + ((_local3.m_invI * _arg1.dt) * _local21)); }; } } }//package Box2D.Dynamics.Joints
Section 63
//b2RevoluteJointDef (Box2D.Dynamics.Joints.b2RevoluteJointDef) package Box2D.Dynamics.Joints { import Box2D.Common.Math.*; import Box2D.Dynamics.*; public class b2RevoluteJointDef extends b2JointDef { public var referenceAngle:Number; public var  :Number; public var  :Number; public var motorSpeed:Number; public var  :Number; public var localAnchor1:b2Vec2; public var localAnchor2:b2Vec2; public var enableLimit:Boolean; public var enableMotor:Boolean; public function b2RevoluteJointDef(){ localAnchor1 = new b2Vec2(); localAnchor2 = new b2Vec2(); super(); type = b2Joint.e_revoluteJoint; localAnchor1.Set(0, 0); localAnchor2.Set(0, 0); referenceAngle = 0;   = 0;   = 0;   = 0; motorSpeed = 0; enableLimit = false; enableMotor = false; } public function Initialize(_arg1:b2Body, _arg2:b2Body, _arg3:b2Vec2):void{ body1 = _arg1; body2 = _arg2; localAnchor1 = body1.GetLocalPoint(_arg3); localAnchor2 = body2.GetLocalPoint(_arg3); referenceAngle = (body2.GetAngle() - body1.GetAngle()); } } }//package Box2D.Dynamics.Joints
Section 64
//b2Body (Box2D.Dynamics.b2Body) package Box2D.Dynamics { import Box2D.Common.Math.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; import Box2D.Dynamics.Contacts.*; public class b2Body { public var m_next:b2Body; public var m_contactList:b2ContactEdge; public var m_angularVelocity:Number; public var m_shapeList:b2Shape; public var m_force:b2Vec2; public var m_mass:Number; public var m_sweep:b2Sweep; public var m_xf:b2XForm; public var m_torque:Number; public var m_userData; public var m_flags:uint; public var m_world:b2World; public var m_prev:b2Body; public var m_invMass:Number; public var m_type:int; public var m_linearDamping:Number; public var m_angularDamping:Number; public var m_invI:Number; public var m_linearVelocity:b2Vec2; public var m_sleepTime:Number; public var m_shapeCount:int; public var m_jointList:b2JointEdge; public var  :Number; public static var e_fixedRotationFlag:uint = 64; public static var e_frozenFlag:uint = 2; public static var e_maxTypes:uint = 3; public static var e_sleepFlag:uint = 8; private static var s_massData:b2MassData = new b2MassData(); public static var e_bulletFlag:uint = 32; public static var e_staticType:uint = 1; public static var e_islandFlag:uint = 4; public static var e_allowSleepFlag:uint = 16; private static var s_xf1:b2XForm = new b2XForm(); public static var e_dynamicType:uint = 2; public function b2Body(_arg1:b2BodyDef, _arg2:b2World){ var _local3:b2Mat22; var _local4:b2Vec2; m_xf = new b2XForm(); m_sweep = new b2Sweep(); m_linearVelocity = new b2Vec2(); m_force = new b2Vec2(); super(); m_flags = 0; if (_arg1.){ m_flags = (m_flags | e_bulletFlag); }; if (_arg1. ){ m_flags = (m_flags | e_fixedRotationFlag); }; if (_arg1.){ m_flags = (m_flags | e_allowSleepFlag); }; if (_arg1.){ m_flags = (m_flags | e_sleepFlag); }; m_world = _arg2; m_xf.position.SetV(_arg1.position); m_xf.R.Set(_arg1. ); m_sweep.localCenter.SetV(_arg1. .center); m_sweep.t0 = 1; m_sweep.a0 = (m_sweep.a = _arg1. ); _local3 = m_xf.R; _local4 = m_sweep.localCenter; m_sweep.c.x = ((_local3.col1.x * _local4.x) + (_local3.col2.x * _local4.y)); m_sweep.c.y = ((_local3.col1.y * _local4.x) + (_local3.col2.y * _local4.y)); m_sweep.c.x = (m_sweep.c.x + m_xf.position.x); m_sweep.c.y = (m_sweep.c.y + m_xf.position.y); m_sweep.c0.SetV(m_sweep.c); m_jointList = null; m_contactList = null; m_prev = null; m_next = null; m_linearDamping = _arg1. ; m_angularDamping = _arg1.; m_force.Set(0, 0); m_torque = 0; m_linearVelocity.SetZero(); m_angularVelocity = 0; m_sleepTime = 0; m_invMass = 0;  = 0; m_invI = 0; m_mass = _arg1. .mass; if (m_mass > 0){ m_invMass = (1 / m_mass); }; if ((m_flags & b2Body.e_fixedRotationFlag) == 0){  = _arg1. .I; }; if ( > 0){ m_invI = (1 /  ); }; if ((((m_invMass == 0)) && ((m_invI == 0)))){ m_type = e_staticType; } else { m_type = e_dynamicType; }; m_userData = _arg1.userData; m_shapeList = null; m_shapeCount = 0; } public function (_arg1:b2Vec2):b2Vec2{ return (new b2Vec2((m_linearVelocity.x + (m_angularVelocity * (_arg1.y - m_sweep.c.y))), (m_linearVelocity.x - (m_angularVelocity * (_arg1.x - m_sweep.c.x))))); } public function SetLinearVelocity(_arg1:b2Vec2):void{ m_linearVelocity.SetV(_arg1); } public function WakeUp():void{ m_flags = (m_flags & ~(e_sleepFlag)); m_sleepTime = 0; } public function ():b2Vec2{ return (m_sweep.localCenter); } public function ApplyTorque(_arg1:Number):void{ if (IsSleeping()){ WakeUp(); }; m_torque = (m_torque + _arg1); } public function ():Boolean{ return (((m_flags & e_frozenFlag) == e_frozenFlag)); } public function ():Boolean{ return ((m_type == e_dynamicType)); } public function GetLinearVelocity():b2Vec2{ return (m_linearVelocity); } public function SynchronizeTransform():void{ var _local1:b2Mat22; var _local2:b2Vec2; m_xf.R.Set(m_sweep.a); _local1 = m_xf.R; _local2 = m_sweep.localCenter; m_xf.position.x = (m_sweep.c.x - ((_local1.col1.x * _local2.x) + (_local1.col2.x * _local2.y))); m_xf.position.y = (m_sweep.c.y - ((_local1.col1.y * _local2.x) + (_local1.col2.y * _local2.y))); } public function ():Number{ return ( ); } public function IsSleeping():Boolean{ return (((m_flags & e_sleepFlag) == e_sleepFlag)); } public function SetMassFromShapes():void{ var _local1:b2Shape; var _local2:Number; var _local3:Number; var _local4:b2MassData; var _local5:b2Mat22; var _local6:b2Vec2; var _local7:int; if (m_world.m_lock == true){ return; }; m_mass = 0; m_invMass = 0;  = 0; m_invI = 0; _local2 = 0; _local3 = 0; _local4 = s_massData; _local1 = m_shapeList; while (_local1) { _local1.ComputeMass(_local4); m_mass = (m_mass + _local4.mass); _local2 = (_local2 + (_local4.mass * _local4.center.x)); _local3 = (_local3 + (_local4.mass * _local4.center.y));  = ( + _local4.I); _local1 = _local1.m_next; }; if (m_mass > 0){ m_invMass = (1 / m_mass); _local2 = (_local2 * m_invMass); _local3 = (_local3 * m_invMass); }; if (((( > 0)) && (((m_flags & e_fixedRotationFlag) == 0)))){  = ( - (m_mass * ((_local2 * _local2) + (_local3 * _local3)))); m_invI = (1 /  ); } else {  = 0; m_invI = 0; }; m_sweep.localCenter.Set(_local2, _local3); _local5 = m_xf.R; _local6 = m_sweep.localCenter; m_sweep.c.x = ((_local5.col1.x * _local6.x) + (_local5.col2.x * _local6.y)); m_sweep.c.y = ((_local5.col1.y * _local6.x) + (_local5.col2.y * _local6.y)); m_sweep.c.x = (m_sweep.c.x + m_xf.position.x); m_sweep.c.y = (m_sweep.c.y + m_xf.position.y); m_sweep.c0.SetV(m_sweep.c); _local1 = m_shapeList; while (_local1) { _local1.UpdateSweepRadius(m_sweep.localCenter); _local1 = _local1.m_next; }; _local7 = m_type; if ((((m_invMass == 0)) && ((m_invI == 0)))){ m_type = e_staticType; } else { m_type = e_dynamicType; }; if (_local7 != m_type){ _local1 = m_shapeList; while (_local1) { _local1.RefilterProxy(m_world.m_broadPhase, m_xf); _local1 = _local1.m_next; }; }; } public function PutToSleep():void{ m_flags = (m_flags | e_sleepFlag); m_sleepTime = 0; m_linearVelocity.SetZero(); m_angularVelocity = 0; m_force.SetZero(); m_torque = 0; } public function GetJointList():b2JointEdge{ return (m_jointList); } public function SetXForm(_arg1:b2Vec2, _arg2:Number):Boolean{ var _local3:b2Shape; var _local4:b2Mat22; var _local5:b2Vec2; var _local6:Boolean; var _local7:Boolean; if (m_world.m_lock == true){ return (true); }; if (()){ return (false); }; m_xf.R.Set(_arg2); m_xf.position.SetV(_arg1); _local4 = m_xf.R; _local5 = m_sweep.localCenter; m_sweep.c.x = ((_local4.col1.x * _local5.x) + (_local4.col2.x * _local5.y)); m_sweep.c.y = ((_local4.col1.y * _local5.x) + (_local4.col2.y * _local5.y)); m_sweep.c.x = (m_sweep.c.x + m_xf.position.x); m_sweep.c.y = (m_sweep.c.y + m_xf.position.y); m_sweep.c0.SetV(m_sweep.c); m_sweep.a0 = (m_sweep.a = _arg2); _local6 = false; _local3 = m_shapeList; while (_local3) { _local7 = _local3.Synchronize(m_world.m_broadPhase, m_xf, m_xf); if (_local7 == false){ _local6 = true; break; }; _local3 = _local3.m_next; }; if (_local6 == true){ m_flags = (m_flags | e_frozenFlag); m_linearVelocity.SetZero(); m_angularVelocity = 0; _local3 = m_shapeList; while (_local3) { _local3.DestroyProxy(m_world.m_broadPhase); _local3 = _local3.m_next; }; return (false); }; m_world.m_broadPhase.Commit(); return (true); } public function GetLocalPoint(_arg1:b2Vec2):b2Vec2{ return (b2Math.b2MulXT(m_xf, _arg1)); } public function ApplyForce(_arg1:b2Vec2, _arg2:b2Vec2):void{ if (IsSleeping()){ WakeUp(); }; m_force.x = (m_force.x + _arg1.x); m_force.y = (m_force.y + _arg1.y); m_torque = (m_torque + (((_arg2.x - m_sweep.c.x) * _arg1.y) - ((_arg2.y - m_sweep.c.y) * _arg1.x))); } public function SynchronizeShapes():Boolean{ var _local1:b2XForm; var _local2:b2Mat22; var _local3:b2Vec2; var _local4:b2Shape; var _local5:Boolean; _local1 = s_xf1; _local1.R.Set(m_sweep.a0); _local2 = _local1.R; _local3 = m_sweep.localCenter; _local1.position.x = (m_sweep.c0.x - ((_local2.col1.x * _local3.x) + (_local2.col2.x * _local3.y))); _local1.position.y = (m_sweep.c0.y - ((_local2.col1.y * _local3.x) + (_local2.col2.y * _local3.y))); _local5 = true; _local4 = m_shapeList; while (_local4) { _local5 = _local4.Synchronize(m_world.m_broadPhase, _local1, m_xf); //unresolved if _local4 = _local4.m_next; }; if (_local5 == false){ m_flags = (m_flags | e_frozenFlag); m_linearVelocity.SetZero(); m_angularVelocity = 0; _local4 = m_shapeList; while (_local4) { _local4.DestroyProxy(m_world.m_broadPhase); _local4 = _local4.m_next; }; return (false); }; return (true); } public function GetAngle():Number{ return (m_sweep.a); } public function GetXForm():b2XForm{ return (m_xf); } public function (_arg1:b2Vec2, _arg2:b2Vec2):void{ if (IsSleeping()){ WakeUp(); }; m_linearVelocity.x = (m_linearVelocity.x + (m_invMass * _arg1.x)); m_linearVelocity.y = (m_linearVelocity.y + (m_invMass * _arg1.y)); m_angularVelocity = (m_angularVelocity + (m_invI * (((_arg2.x - m_sweep.c.x) * _arg1.y) - ((_arg2.y - m_sweep.c.y) * _arg1.x)))); } public function GetNext():b2Body{ return (m_next); } public function ():Number{ return (m_mass); } public function GetLinearVelocityFromLocalPoint(_arg1:b2Vec2):b2Vec2{ var _local2:b2Mat22; var _local3:b2Vec2; _local2 = m_xf.R; _local3 = new b2Vec2(((_local2.col1.x * _arg1.x) + (_local2.col2.x * _arg1.y)), ((_local2.col1.y * _arg1.x) + (_local2.col2.y * _arg1.y))); _local3.x = (_local3.x + m_xf.position.x); _local3.y = (_local3.y + m_xf.position.y); return (new b2Vec2((m_linearVelocity.x + (m_angularVelocity * (_local3.y - m_sweep.c.y))), (m_linearVelocity.x - (m_angularVelocity * (_local3.x - m_sweep.c.x))))); } public function GetAngularVelocity():Number{ return (m_angularVelocity); } public function SetAngularVelocity(_arg1:Number):void{ m_angularVelocity = _arg1; } public function (_arg1:b2MassData):void{ var _local2:b2Shape; var _local3:b2Mat22; var _local4:b2Vec2; var _local5:int; if (m_world.m_lock == true){ return; }; m_invMass = 0;  = 0; m_invI = 0; m_mass = _arg1.mass; if (m_mass > 0){ m_invMass = (1 / m_mass); }; if ((m_flags & b2Body.e_fixedRotationFlag) == 0){  = _arg1.I; }; if ( > 0){ m_invI = (1 /  ); }; m_sweep.localCenter.SetV(_arg1.center); _local3 = m_xf.R; _local4 = m_sweep.localCenter; m_sweep.c.x = ((_local3.col1.x * _local4.x) + (_local3.col2.x * _local4.y)); m_sweep.c.y = ((_local3.col1.y * _local4.x) + (_local3.col2.y * _local4.y)); m_sweep.c.x = (m_sweep.c.x + m_xf.position.x); m_sweep.c.y = (m_sweep.c.y + m_xf.position.y); m_sweep.c0.SetV(m_sweep.c); _local2 = m_shapeList; while (_local2) { _local2.UpdateSweepRadius(m_sweep.localCenter); _local2 = _local2.m_next; }; _local5 = m_type; if ((((m_invMass == 0)) && ((m_invI == 0)))){ m_type = e_staticType; } else { m_type = e_dynamicType; }; if (_local5 != m_type){ _local2 = m_shapeList; while (_local2) { _local2.RefilterProxy(m_world.m_broadPhase, m_xf); _local2 = _local2.m_next; }; }; } public function IsStatic():Boolean{ return ((m_type == e_staticType)); } public function GetWorldVector(_arg1:b2Vec2):b2Vec2{ return (b2Math.b2MulMV(m_xf.R, _arg1)); } public function GetShapeList():b2Shape{ return (m_shapeList); } public function Advance(_arg1:Number):void{ m_sweep.Advance(_arg1); m_sweep.c.SetV(m_sweep.c0); m_sweep.a = m_sweep.a0; SynchronizeTransform(); } public function (_arg1:Boolean):void{ if (_arg1){ m_flags = (m_flags | e_bulletFlag); } else { m_flags = (m_flags & ~(e_bulletFlag)); }; } public function CreateShape(_arg1:b2ShapeDef):b2Shape{ var _local2:b2Shape; if (m_world.m_lock == true){ return (null); }; _local2 = b2Shape.Create(_arg1, m_world.m_blockAllocator); _local2.m_next = m_shapeList; m_shapeList = _local2; m_shapeCount++; _local2.m_body = this; _local2.CreateProxy(m_world.m_broadPhase, m_xf); _local2.UpdateSweepRadius(m_sweep.localCenter); return (_local2); } public function IsConnected(_arg1:b2Body):Boolean{ var _local2:b2JointEdge; _local2 = m_jointList; while (_local2) { if (_local2.other == _arg1){ return ((_local2.joint.m_collideConnected == false)); }; _local2 = _local2.next; }; return (false); } public function (_arg1:b2Shape):void{ var _local2:b2Shape; var _local3:b2Shape; var _local4:Boolean; if (m_world.m_lock == true){ return; }; _arg1.DestroyProxy(m_world.m_broadPhase); _local2 = m_shapeList; _local3 = null; _local4 = false; while (_local2 != null) { if (_local2 == _arg1){ if (_local3){ _local3.m_next = _arg1.m_next; } else { m_shapeList = _arg1.m_next; }; _local4 = true; break; }; _local3 = _local2; _local2 = _local2.m_next; }; _arg1.m_body = null; _arg1.m_next = null; m_shapeCount--; b2Shape.Destroy(_arg1, m_world.m_blockAllocator); } public function GetUserData(){ return (m_userData); } public function IsBullet():Boolean{ return (((m_flags & e_bulletFlag) == e_bulletFlag)); } public function GetWorldCenter():b2Vec2{ return (m_sweep.c); } public function (_arg1:Boolean):void{ if (_arg1){ m_flags = (m_flags | e_allowSleepFlag); } else { m_flags = (m_flags & ~(e_allowSleepFlag)); WakeUp(); }; } public function SetUserData(_arg1):void{ m_userData = _arg1; } public function GetLocalVector(_arg1:b2Vec2):b2Vec2{ return (b2Math.b2MulTMV(m_xf.R, _arg1)); } public function GetWorldPoint(_arg1:b2Vec2):b2Vec2{ var _local2:b2Mat22; var _local3:b2Vec2; _local2 = m_xf.R; _local3 = new b2Vec2(((_local2.col1.x * _arg1.x) + (_local2.col2.x * _arg1.y)), ((_local2.col1.y * _arg1.x) + (_local2.col2.y * _arg1.y))); _local3.x = (_local3.x + m_xf.position.x); _local3.y = (_local3.y + m_xf.position.y); return (_local3); } public function  ():b2World{ return (m_world); } public function GetPosition():b2Vec2{ return (m_xf.position); } } }//package Box2D.Dynamics
Section 65
//b2BodyDef (Box2D.Dynamics.b2BodyDef) package Box2D.Dynamics { import Box2D.Common.Math.*; import Box2D.Collision.Shapes.*; public class b2BodyDef { public var :Boolean; public var position:b2Vec2; public var :Boolean; public var :Boolean; public var userData; public var :Number; public var  :Boolean; public var  :Number; public var  :Number; public var  :b2MassData; public function b2BodyDef(){  = new b2MassData(); position = new b2Vec2(); super();  .center.SetZero();  .mass = 0;  .I = 0; userData = null; position.Set(0, 0);  = 0;  = 0;  = 0;  = true;  = false;  = false;  = false; } } }//package Box2D.Dynamics
Section 66
//b2BoundaryListener (Box2D.Dynamics.b2BoundaryListener) package Box2D.Dynamics { public class b2BoundaryListener { public function Violation(_arg1:b2Body):void{ } } }//package Box2D.Dynamics
Section 67
//b2ContactFilter (Box2D.Dynamics.b2ContactFilter) package Box2D.Dynamics { import Box2D.Collision.Shapes.*; public class b2ContactFilter { public static var b2_defaultFilter:b2ContactFilter = new (b2ContactFilter); ; public function ShouldCollide(_arg1:b2Shape, _arg2:b2Shape):Boolean{ var _local3:b2FilterData; var _local4:b2FilterData; var _local5:Boolean; _local3 = _arg1.GetFilterData(); _local4 = _arg2.GetFilterData(); if ((((_local3.groupIndex == _local4.groupIndex)) && (!((_local3.groupIndex == 0))))){ return ((_local3.groupIndex > 0)); }; _local5 = ((!(((_local3.maskBits & _local4.categoryBits) == 0))) && (!(((_local3.categoryBits & _local4.maskBits) == 0)))); return (_local5); } } }//package Box2D.Dynamics
Section 68
//b2ContactListener (Box2D.Dynamics.b2ContactListener) package Box2D.Dynamics { import Box2D.Collision.*; import Box2D.Dynamics.Contacts.*; public class b2ContactListener { public function Add(_arg1:b2ContactPoint):void{ } public function Remove(_arg1:b2ContactPoint):void{ } public function Persist(_arg1:b2ContactPoint):void{ } public function Result(_arg1:b2ContactResult):void{ } } }//package Box2D.Dynamics
Section 69
//b2ContactManager (Box2D.Dynamics.b2ContactManager) package Box2D.Dynamics { import Box2D.Common.Math.*; import Box2D.Collision.*; import Box2D.Collision.Shapes.*; import Box2D.Dynamics.Contacts.*; public class b2ContactManager extends b2PairCallback { public var m_world:b2World; public var  :Boolean; public var :b2NullContact; private static const s_evalCP:b2ContactPoint = new b2ContactPoint(); public function b2ContactManager(){  = new b2NullContact(); super(); m_world = null;  = false; } override public function PairAdded(_arg1, _arg2){ var _local3:b2Shape; var _local4:b2Shape; var _local5:b2Body; var _local6:b2Body; var _local7:b2Contact; _local3 = (_arg1 as b2Shape); _local4 = (_arg2 as b2Shape); _local5 = _local3.m_body; _local6 = _local4.m_body; if (((_local5.IsStatic()) && (_local6.IsStatic()))){ return (); }; if (_local3.m_body == _local4.m_body){ return (); }; if (_local6.IsConnected(_local5)){ return (); }; if (((!((m_world.m_contactFilter == null))) && ((m_world.m_contactFilter.ShouldCollide(_local3, _local4) == false)))){ return (); }; _local7 = b2Contact.Create(_local3, _local4, m_world.m_blockAllocator); if (_local7 == null){ return (); }; _local3 = _local7.m_shape1; _local4 = _local7.m_shape2; _local5 = _local3.m_body; _local6 = _local4.m_body; _local7.m_prev = null; _local7.m_next = m_world.m_contactList; if (m_world.m_contactList != null){ m_world.m_contactList.m_prev = _local7; }; m_world.m_contactList = _local7; _local7.m_node1.contact = _local7; _local7.m_node1.other = _local6; _local7.m_node1.prev = null; _local7.m_node1.next = _local5.m_contactList; if (_local5.m_contactList != null){ _local5.m_contactList.prev = _local7.m_node1; }; _local5.m_contactList = _local7.m_node1; _local7.m_node2.contact = _local7; _local7.m_node2.other = _local5; _local7.m_node2.prev = null; _local7.m_node2.next = _local6.m_contactList; if (_local6.m_contactList != null){ _local6.m_contactList.prev = _local7.m_node2; }; _local6.m_contactList = _local7.m_node2; m_world.m_contactCount++; return (_local7); } override public function PairRemoved(_arg1, _arg2, _arg3):void{ var _local4:b2Contact; if (_arg3 == null){ return; }; _local4 = (_arg3 as b2Contact); if (_local4 == ){ return; }; Destroy(_local4); } public function Destroy(_arg1:b2Contact):void{ var _local2:b2Shape; var _local3:b2Shape; var _local4:int; var _local5:b2Body; var _local6:b2Body; var _local7:b2Body; var _local8:b2Body; var _local9:Array; var _local10:b2ContactPoint; var _local11:int; var _local12:b2Manifold; var _local13:int; var _local14:b2ManifoldPoint; var _local15:b2Vec2; var _local16:b2Vec2; _local2 = _arg1.m_shape1; _local3 = _arg1.m_shape2; _local4 = _arg1.m_manifoldCount; if ((((_local4 > 0)) && (m_world.m_contactListener))){ _local7 = _local2.m_body; _local8 = _local3.m_body; _local9 = _arg1.GetManifolds(); _local10 = s_evalCP; _local10.shape1 = _arg1.m_shape1; _local10.shape2 = _arg1.m_shape1; _local10.friction = _arg1.m_friction; _local10.restitution = _arg1.m_restitution; _local11 = 0; while (_local11 < _local4) { _local12 = _local9[_local11]; _local10.normal.SetV(_local12.normal); _local13 = 0; while (_local13 < _local12.pointCount) { _local14 = _local12.points[_local13]; _local10.position = _local7.GetWorldPoint(_local14.localPoint1); _local15 = _local7.GetLinearVelocityFromLocalPoint(_local14.localPoint1); _local16 = _local8.GetLinearVelocityFromLocalPoint(_local14.localPoint2); _local10.velocity.Set((_local16.x - _local15.x), (_local16.y - _local15.y)); _local10.separation = _local14.separation; _local10.id.key = _local14.id._key; m_world.m_contactListener.Remove(_local10); _local13++; }; _local11++; }; }; if (_arg1.m_prev){ _arg1.m_prev.m_next = _arg1.m_next; }; if (_arg1.m_next){ _arg1.m_next.m_prev = _arg1.m_prev; }; if (_arg1 == m_world.m_contactList){ m_world.m_contactList = _arg1.m_next; }; _local5 = _local2.m_body; _local6 = _local3.m_body; if (_arg1.m_node1.prev){ _arg1.m_node1.prev.next = _arg1.m_node1.next; }; if (_arg1.m_node1.next){ _arg1.m_node1.next.prev = _arg1.m_node1.prev; }; if (_arg1.m_node1 == _local5.m_contactList){ _local5.m_contactList = _arg1.m_node1.next; }; if (_arg1.m_node2.prev){ _arg1.m_node2.prev.next = _arg1.m_node2.next; }; if (_arg1.m_node2.next){ _arg1.m_node2.next.prev = _arg1.m_node2.prev; }; if (_arg1.m_node2 == _local6.m_contactList){ _local6.m_contactList = _arg1.m_node2.next; }; b2Contact.Destroy(_arg1, m_world.m_blockAllocator); m_world.m_contactCount--; } public function Collide():void{ var _local1:b2Contact; var _local2:b2Body; var _local3:b2Body; _local1 = m_world.m_contactList; while (_local1) { _local2 = _local1.m_shape1.m_body; _local3 = _local1.m_shape2.m_body; if (!((_local2.IsSleeping()) && (_local3.IsSleeping()))){ _local1.Update(m_world.m_contactListener); }; _local1 = _local1.m_next; }; } } }//package Box2D.Dynamics
Section 70
//b2DebugDraw (Box2D.Dynamics.b2DebugDraw) package Box2D.Dynamics { import Box2D.Common.Math.*; import flash.display.*; import Box2D.Collision.*; import Box2D.Collision.Shapes.*; import Box2D.Common.*; import Box2D.Dynamics.Contacts.*; public class b2DebugDraw { public var :Number;// = 1 public var :Number;// = 1 public var :Number;// = 1 public var :Number;// = 1 public var :uint; public var m_sprite:Sprite; public var :Number;// = 1 public static var e_coreShapeBit:uint = 4; public static var e_shapeBit:uint = 1; public static var e_centerOfMassBit:uint = 64; public static var e_aabbBit:uint = 8; public static var e_obbBit:uint = 16; public static var e_pairBit:uint = 32; public static var e_jointBit:uint = 2; public function b2DebugDraw(){  = 1;  = 1;  = 1;  = 1;  = 1; super();  = 0; } public function DrawSolidPolygon(_arg1:Array, _arg2:int, _arg3:b2Color):void{ var _local4:int; m_sprite.graphics.lineStyle(, _arg3.color, ); m_sprite.graphics.moveTo((_arg1[0].x * ), (_arg1[0].y * )); m_sprite.graphics.beginFill(_arg3.color, ); _local4 = 1; while (_local4 < _arg2) { m_sprite.graphics.lineTo((_arg1[_local4].x * ), (_arg1[_local4].y * )); _local4++; }; m_sprite.graphics.lineTo((_arg1[0].x * ), (_arg1[0].y * )); m_sprite.graphics.endFill(); } public function DrawCircle(_arg1:b2Vec2, _arg2:Number, _arg3:b2Color):void{ m_sprite.graphics.lineStyle(, _arg3.color, ); m_sprite.graphics.drawCircle((_arg1.x * ), (_arg1.y * ), (_arg2 * )); } public function DrawXForm(_arg1:b2XForm):void{ m_sprite.graphics.lineStyle(, 0xFF0000, ); m_sprite.graphics.moveTo((_arg1.position.x * ), (_arg1.position.y * )); m_sprite.graphics.lineTo(((_arg1.position.x + ( * _arg1.R.col1.x)) * ), ((_arg1.position.y + ( * _arg1.R.col1.y)) * )); m_sprite.graphics.lineStyle(, 0xFF00, ); m_sprite.graphics.moveTo((_arg1.position.x * ), (_arg1.position.y * )); m_sprite.graphics.lineTo(((_arg1.position.x + ( * _arg1.R.col2.x)) * ), ((_arg1.position.y + ( * _arg1.R.col2.y)) * )); } public function  (_arg1:uint):void{  = ( & ~(_arg1)); } public function DrawSolidCircle(_arg1:b2Vec2, _arg2:Number, _arg3:b2Vec2, _arg4:b2Color):void{ m_sprite.graphics.lineStyle(, _arg4.color, ); m_sprite.graphics.moveTo(0, 0); m_sprite.graphics.beginFill(_arg4.color, ); m_sprite.graphics.drawCircle((_arg1.x * ), (_arg1.y * ), (_arg2 * )); m_sprite.graphics.endFill(); m_sprite.graphics.moveTo((_arg1.x * ), (_arg1.y * )); m_sprite.graphics.lineTo(((_arg1.x + (_arg3.x * _arg2)) * ), ((_arg1.y + (_arg3.y * _arg2)) * )); } public function (_arg1:uint):void{  = _arg1; } public function (_arg1:uint):void{  = ( | _arg1); } public function DrawSegment(_arg1:b2Vec2, _arg2:b2Vec2, _arg3:b2Color):void{ m_sprite.graphics.lineStyle(, _arg3.color, ); m_sprite.graphics.moveTo((_arg1.x * ), (_arg1.y * )); m_sprite.graphics.lineTo((_arg2.x * ), (_arg2.y * )); } public function GetFlags():uint{ return (); } public function DrawPolygon(_arg1:Array, _arg2:int, _arg3:b2Color):void{ var _local4:int; m_sprite.graphics.lineStyle(, _arg3.color, ); m_sprite.graphics.moveTo((_arg1[0].x * ), (_arg1[0].y * )); _local4 = 1; while (_local4 < _arg2) { m_sprite.graphics.lineTo((_arg1[_local4].x * ), (_arg1[_local4].y * )); _local4++; }; m_sprite.graphics.lineTo((_arg1[0].x * ), (_arg1[0].y * )); } } }//package Box2D.Dynamics
Section 71
//b2DestructionListener (Box2D.Dynamics.b2DestructionListener) package Box2D.Dynamics { import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; public class b2DestructionListener { public function SayGoodbyeJoint(_arg1:b2Joint):void{ } public function SayGoodbyeShape(_arg1:b2Shape):void{ } } }//package Box2D.Dynamics
Section 72
//b2Island (Box2D.Dynamics.b2Island) package Box2D.Dynamics { import Box2D.Common.Math.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.*; import Box2D.Common.*; import Box2D.Dynamics.Contacts.*; public class b2Island { public var :Array; public var :b2ContactListener; public var m_positionIterationCount:int; public var :int; public var m_bodies:Array; public var :int; public var m_contactCount:int; public var m_contacts:Array; public var m_contactCapacity:int; public var m_jointCount:int; public var m_allocator; public var m_bodyCount:int; private static var s_reportCR:b2ContactResult = new b2ContactResult(); public function b2Island(_arg1:int, _arg2:int, _arg3:int, _arg4, _arg5:b2ContactListener){ var _local6:int; super();  = _arg1; m_contactCapacity = _arg2;  = _arg3; m_bodyCount = 0; m_contactCount = 0; m_jointCount = 0; m_allocator = _arg4;  = _arg5; m_bodies = new Array(_arg1); _local6 = 0; while (_local6 < _arg1) { m_bodies[_local6] = null; _local6++; }; m_contacts = new Array(_arg2); _local6 = 0; while (_local6 < _arg2) { m_contacts[_local6] = null; _local6++; };  = new Array(_arg3); _local6 = 0; while (_local6 < _arg3) { [_local6] = null; _local6++; }; m_positionIterationCount = 0; } public function AddBody(_arg1:b2Body):void{ var _local2 = m_bodyCount++; m_bodies[_local2] = _arg1; } public function AddJoint(_arg1:b2Joint):void{ var _local2 = m_jointCount++; [_local2] = _arg1; } public function (_arg1:Array):void{ var _local2:b2Mat22; var _local3:b2Vec2; var _local4:int; var _local5:b2Contact; var _local6:b2ContactConstraint; var _local7:b2ContactResult; var _local8:b2Body; var _local9:int; var _local10:Array; var _local11:int; var _local12:b2Manifold; var _local13:int; var _local14:b2ManifoldPoint; var _local15:b2ContactConstraintPoint; if ( == null){ return; }; _local4 = 0; while (_local4 < m_contactCount) { _local5 = m_contacts[_local4]; _local6 = _arg1[_local4]; _local7 = s_reportCR; _local7.shape1 = _local5.m_shape1; _local7.shape2 = _local5.m_shape2; _local8 = _local7.shape1.m_body; _local9 = _local5.m_manifoldCount; _local10 = _local5.GetManifolds(); _local11 = 0; while (_local11 < _local9) { _local12 = _local10[_local11]; _local7.normal.SetV(_local12.normal); _local13 = 0; while (_local13 < _local12.pointCount) { _local14 = _local12.points[_local13]; _local15 = _local6.points[_local13]; _local7.position = _local8.GetWorldPoint(_local14.localPoint1); _local7.normalImpulse = _local15.normalImpulse; _local7.tangentImpulse = _local15.tangentImpulse; _local7.id.key = _local14.id.key; .Result(_local7); _local13++; }; _local11++; }; _local4++; }; } public function Solve(_arg1:b2TimeStep, _arg2:b2Vec2, _arg3:Boolean, _arg4:Boolean):void{ var _local5:int; var _local6:b2Body; var _local7:b2Joint; var _local8:b2ContactSolver; var _local9:int; var _local10:Boolean; var _local11:Boolean; var _local12:Boolean; var _local13:Number; var _local14:Number; var _local15:Number; _local5 = 0; while (_local5 < m_bodyCount) { _local6 = m_bodies[_local5]; if (!_local6.IsStatic()){ _local6.m_linearVelocity.x = (_local6.m_linearVelocity.x + (_arg1.dt * (_arg2.x + (_local6.m_invMass * _local6.m_force.x)))); _local6.m_linearVelocity.y = (_local6.m_linearVelocity.y + (_arg1.dt * (_arg2.y + (_local6.m_invMass * _local6.m_force.y)))); _local6.m_angularVelocity = (_local6.m_angularVelocity + ((_arg1.dt * _local6.m_invI) * _local6.m_torque)); _local6.m_force.SetZero(); _local6.m_torque = 0; _local6.m_linearVelocity.Multiply(b2Math.b2Clamp((1 - (_arg1.dt * _local6.m_linearDamping)), 0, 1)); _local6.m_angularVelocity = (_local6.m_angularVelocity * b2Math.b2Clamp((1 - (_arg1.dt * _local6.m_angularDamping)), 0, 1)); if (_local6.m_linearVelocity.LengthSquared() > b2Settings.b2_maxLinearVelocitySquared){ _local6.m_linearVelocity.Normalize(); _local6.m_linearVelocity.x = (_local6.m_linearVelocity.x * b2Settings.b2_maxLinearVelocity); _local6.m_linearVelocity.y = (_local6.m_linearVelocity.y * b2Settings.b2_maxLinearVelocity); }; if ((_local6.m_angularVelocity * _local6.m_angularVelocity) > b2Settings.b2_maxAngularVelocitySquared){ if (_local6.m_angularVelocity < 0){ _local6.m_angularVelocity = -(b2Settings.b2_maxAngularVelocity); } else { _local6.m_angularVelocity = b2Settings.b2_maxAngularVelocity; }; }; }; _local5++; }; _local8 = new b2ContactSolver(_arg1, m_contacts, m_contactCount, m_allocator); _local8.InitVelocityConstraints(_arg1); _local5 = 0; while (_local5 < m_jointCount) { _local7 = [_local5]; _local7.InitVelocityConstraints(_arg1); _local5++; }; _local5 = 0; while (_local5 < _arg1.maxIterations) { _local8.SolveVelocityConstraints(); _local9 = 0; while (_local9 < m_jointCount) { _local7 = [_local9]; _local7.SolveVelocityConstraints(_arg1); _local9++; }; _local5++; }; _local8.FinalizeVelocityConstraints(); _local5 = 0; while (_local5 < m_bodyCount) { _local6 = m_bodies[_local5]; if (!_local6.IsStatic()){ _local6.m_sweep.c0.SetV(_local6.m_sweep.c); _local6.m_sweep.a0 = _local6.m_sweep.a; _local6.m_sweep.c.x = (_local6.m_sweep.c.x + (_arg1.dt * _local6.m_linearVelocity.x)); _local6.m_sweep.c.y = (_local6.m_sweep.c.y + (_arg1.dt * _local6.m_linearVelocity.y)); _local6.m_sweep.a = (_local6.m_sweep.a + (_arg1.dt * _local6.m_angularVelocity)); _local6.SynchronizeTransform(); }; _local5++; }; if (_arg3){ _local5 = 0; while (_local5 < m_jointCount) { _local7 = [_local5]; _local7.InitPositionConstraints(); _local5++; }; m_positionIterationCount = 0; while (m_positionIterationCount < _arg1.maxIterations) { _local10 = _local8.SolvePositionConstraints(b2Settings.b2_contactBaumgarte); _local11 = true; _local5 = 0; while (_local5 < m_jointCount) { _local7 = [_local5]; _local12 = _local7.SolvePositionConstraints(); _local11 = ((_local11) && (_local12)); _local5++; }; //unresolved if m_positionIterationCount++; }; }; (_local8.m_constraints); if (_arg4){ _local13 = Number.MAX_VALUE; _local14 = (b2Settings.b2_linearSleepTolerance * b2Settings.b2_linearSleepTolerance); _local15 = (b2Settings.b2_angularSleepTolerance * b2Settings.b2_angularSleepTolerance); _local5 = 0; while (_local5 < m_bodyCount) { _local6 = m_bodies[_local5]; if (_local6.m_invMass != 0){ if ((_local6.m_flags & b2Body.e_allowSleepFlag) == 0){ _local6.m_sleepTime = 0; _local13 = 0; }; if (((((((_local6.m_flags & b2Body.e_allowSleepFlag) == 0)) || (((_local6.m_angularVelocity * _local6.m_angularVelocity) > _local15)))) || ((b2Math.b2Dot(_local6.m_linearVelocity, _local6.m_linearVelocity) > _local14)))){ _local6.m_sleepTime = 0; _local13 = 0; } else { _local6.m_sleepTime = (_local6.m_sleepTime + _arg1.dt); _local13 = b2Math.b2Min(_local13, _local6.m_sleepTime); }; }; _local5++; }; if (_local13 >= b2Settings.b2_timeToSleep){ _local5 = 0; while (_local5 < m_bodyCount) { _local6 = m_bodies[_local5]; m_bodies[_local5].m_flags = (_local6.m_flags | b2Body.e_sleepFlag); _local6.m_linearVelocity.SetZero(); _local6.m_angularVelocity = 0; _local5++; }; }; }; } public function AddContact(_arg1:b2Contact):void{ var _local2 = m_contactCount++; m_contacts[_local2] = _arg1; } public function Clear():void{ m_bodyCount = 0; m_contactCount = 0; m_jointCount = 0; } public function SolveTOI(_arg1:b2TimeStep):void{ var _local2:int; var _local3:b2ContactSolver; var _local4:Number; var _local5:b2Body; var _local6:Boolean; _local3 = new b2ContactSolver(_arg1, m_contacts, m_contactCount, m_allocator); _local2 = 0; while (_local2 < _arg1.maxIterations) { _local3.SolveVelocityConstraints(); _local2++; }; _local2 = 0; while (_local2 < m_bodyCount) { _local5 = m_bodies[_local2]; if (!_local5.IsStatic()){ _local5.m_sweep.c0.SetV(_local5.m_sweep.c); _local5.m_sweep.a0 = _local5.m_sweep.a; _local5.m_sweep.c.x = (_local5.m_sweep.c.x + (_arg1.dt * _local5.m_linearVelocity.x)); _local5.m_sweep.c.y = (_local5.m_sweep.c.y + (_arg1.dt * _local5.m_linearVelocity.y)); _local5.m_sweep.a = (_local5.m_sweep.a + (_arg1.dt * _local5.m_angularVelocity)); _local5.SynchronizeTransform(); }; _local2++; }; _local4 = 0.75; _local2 = 0; while (_local2 < _arg1.maxIterations) { _local6 = _local3.SolvePositionConstraints(_local4); //unresolved if _local2++; }; (_local3.m_constraints); } } }//package Box2D.Dynamics
Section 73
//b2TimeStep (Box2D.Dynamics.b2TimeStep) package Box2D.Dynamics { public class b2TimeStep { public var warmStarting:Boolean; public var positionCorrection:Boolean; public var dt:Number; public var maxIterations:int; public var dtRatio:Number; public var inv_dt:Number; } }//package Box2D.Dynamics
Section 74
//b2World (Box2D.Dynamics.b2World) package Box2D.Dynamics { import Box2D.Common.Math.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.*; import Box2D.Collision.Shapes.*; import Box2D.Common.*; import Box2D.Dynamics.Contacts.*; public class b2World { public var  :Number; public var  :b2BoundaryListener; public var m_contactList:b2Contact; public var m_blockAllocator; public var m_contactListener:b2ContactListener; public var  :Boolean; public var m_broadPhase:b2BroadPhase; public var  :b2DestructionListener; public var m_jointCount:int; public var m_bodyCount:int; public var m_lock:Boolean; public var m_positionIterationCount:int; public var :b2Body; public var m_contactCount:int; public var  :b2DebugDraw; public var m_contactFilter:b2ContactFilter; public var  :b2Body; public var ; public var m_jointList:b2Joint; public var :b2Vec2; public var :b2ContactManager; private static var s_jointColor:b2Color = new b2Color(0.5, 0.8, 0.8); public static var m_continuousPhysics:Boolean; public static var m_warmStarting:Boolean; private static var s_coreColor:b2Color = new b2Color(0.9, 0.6, 0.6); public static var m_positionCorrection:Boolean; private static var s_xf:b2XForm = new b2XForm(); public function b2World(_arg1:b2AABB, _arg2:b2Vec2, _arg3:Boolean){ var _local4:b2BodyDef;  = new b2ContactManager(); super();   = null;   = null; m_contactFilter = b2ContactFilter.b2_defaultFilter; m_contactListener = null;  = null;  = null; m_contactList = null; m_jointList = null; m_bodyCount = 0; m_contactCount = 0; m_jointCount = 0; m_positionCorrection = true; m_warmStarting = true; m_continuousPhysics = true;   = _arg3;  = _arg2; m_lock = false;   = 0; .m_world = this; m_broadPhase = new b2BroadPhase(_arg1, ); _local4 = new b2BodyDef();  = CreateBody(_local4); } public function  (_arg1:b2Joint):void{ var _local2:b2Body; var _local3:b2Body; var _local4:b2XForm; var _local5:b2XForm; var _local6:b2Vec2; var _local7:b2Vec2; var _local8:b2Vec2; var _local9:b2Vec2; var _local10:b2Color; var _local11:b2PulleyJoint; var _local12:b2Vec2; var _local13:b2Vec2; _local2 = _arg1.m_body1; _local3 = _arg1.m_body2; _local4 = _local2.m_xf; _local5 = _local3.m_xf; _local6 = _local4.position; _local7 = _local5.position; _local8 = _arg1.GetAnchor1(); _local9 = _arg1.GetAnchor2(); _local10 = s_jointColor; switch (_arg1.m_type){ case b2Joint.e_distanceJoint:  .DrawSegment(_local8, _local9, _local10); break; case b2Joint.e_pulleyJoint: _local11 = (_arg1 as b2PulleyJoint); _local12 = _local11.GetGroundAnchor1(); _local13 = _local11.GetGroundAnchor2();  .DrawSegment(_local12, _local8, _local10);  .DrawSegment(_local13, _local9, _local10);  .DrawSegment(_local12, _local13, _local10); break; case b2Joint.e_mouseJoint:  .DrawSegment(_local8, _local9, _local10); break; default: if (_local2 != ){  .DrawSegment(_local6, _local8, _local10); };  .DrawSegment(_local8, _local9, _local10); if (_local3 != ){  .DrawSegment(_local7, _local9, _local10); }; }; } public function  (_arg1:b2Shape):void{ _arg1.RefilterProxy(m_broadPhase, _arg1.m_body.m_xf); } public function  (_arg1:b2DebugDraw):void{  = _arg1; } public function  (_arg1:Boolean):void{ m_continuousPhysics = _arg1; } public function  ():int{ return (m_broadPhase.m_proxyCount); } public function  ():void{ var _local1:uint; var _local2:int; var _local3:b2Body; var _local4:b2Shape; var _local5:b2Joint; var _local6:b2BroadPhase; var _local7:b2Vec2; var _local8:b2Vec2; var _local9:b2Vec2; var _local10:b2Color; var _local11:b2XForm; var _local12:b2AABB; var _local13:b2AABB; var _local14:Array; var _local15:Boolean; var _local16:uint; var _local17:b2Pair; var _local18:b2Proxy; var _local19:b2Proxy; var _local20:b2Vec2; var _local21:b2Vec2; var _local22:b2Proxy; var _local23:b2PolygonShape; var _local24:b2OBB; var _local25:b2Vec2; var _local26:b2Mat22; var _local27:b2Vec2; var _local28:Number; if ( == null){ return; };  .m_sprite.graphics.clear(); _local1 =  .GetFlags(); _local7 = new b2Vec2(); _local8 = new b2Vec2(); _local9 = new b2Vec2(); _local10 = new b2Color(0, 0, 0); _local12 = new b2AABB(); _local13 = new b2AABB(); _local14 = [new b2Vec2(), new b2Vec2(), new b2Vec2(), new b2Vec2()]; if ((_local1 & b2DebugDraw.e_shapeBit)){ _local15 = ((_local1 & b2DebugDraw.e_coreShapeBit) == b2DebugDraw.e_coreShapeBit); _local3 =  ; while (_local3) { _local11 = _local3.m_xf; _local4 = _local3.GetShapeList(); while (_local4) { if (_local3.IsStatic()){  (_local4, _local11, new b2Color(0.5, 0.9, 0.5), _local15); } else { if (_local3.IsSleeping()){  (_local4, _local11, new b2Color(0.5, 0.5, 0.9), _local15); } else {  (_local4, _local11, new b2Color(0.9, 0.9, 0.9), _local15); }; }; _local4 = _local4.m_next; }; _local3 = _local3.m_next; }; }; if ((_local1 & b2DebugDraw.e_jointBit)){ _local5 = m_jointList; while (_local5) {  (_local5); _local5 = _local5.m_next; }; }; if ((_local1 & b2DebugDraw.e_pairBit)){ _local6 = m_broadPhase; _local7.Set((1 / _local6.m_quantizationFactor.x), (1 / _local6.m_quantizationFactor.y)); _local10.Set(0.9, 0.9, 0.3); _local2 = 0; while (_local2 < b2Pair.b2_tableCapacity) { _local16 = _local6.m_pairManager.m_hashTable[_local2]; while (_local16 != b2Pair.b2_nullPair) { _local17 = _local6.m_pairManager.m_pairs[_local16]; _local18 = _local6.m_proxyPool[_local17.proxyId1]; _local19 = _local6.m_proxyPool[_local17.proxyId2]; _local12.lowerBound.x = (_local6.m_worldAABB.lowerBound.x + (_local7.x * _local6.m_bounds[0][_local18.lowerBounds[0]].value)); _local12.lowerBound.y = (_local6.m_worldAABB.lowerBound.y + (_local7.y * _local6.m_bounds[1][_local18.lowerBounds[1]].value)); _local12.upperBound.x = (_local6.m_worldAABB.lowerBound.x + (_local7.x * _local6.m_bounds[0][_local18.upperBounds[0]].value)); _local12.upperBound.y = (_local6.m_worldAABB.lowerBound.y + (_local7.y * _local6.m_bounds[1][_local18.upperBounds[1]].value)); _local13.lowerBound.x = (_local6.m_worldAABB.lowerBound.x + (_local7.x * _local6.m_bounds[0][_local19.lowerBounds[0]].value)); _local13.lowerBound.y = (_local6.m_worldAABB.lowerBound.y + (_local7.y * _local6.m_bounds[1][_local19.lowerBounds[1]].value)); _local13.upperBound.x = (_local6.m_worldAABB.lowerBound.x + (_local7.x * _local6.m_bounds[0][_local19.upperBounds[0]].value)); _local13.upperBound.y = (_local6.m_worldAABB.lowerBound.y + (_local7.y * _local6.m_bounds[1][_local19.upperBounds[1]].value)); _local8.x = (0.5 * (_local12.lowerBound.x + _local12.upperBound.x)); _local8.y = (0.5 * (_local12.lowerBound.y + _local12.upperBound.y)); _local9.x = (0.5 * (_local13.lowerBound.x + _local13.upperBound.x)); _local9.y = (0.5 * (_local13.lowerBound.y + _local13.upperBound.y));  .DrawSegment(_local8, _local9, _local10); _local16 = _local17.next; }; _local2++; }; }; if ((_local1 & b2DebugDraw.e_aabbBit)){ _local6 = m_broadPhase; _local20 = _local6.m_worldAABB.lowerBound; _local21 = _local6.m_worldAABB.upperBound; _local7.Set((1 / _local6.m_quantizationFactor.x), (1 / _local6.m_quantizationFactor.y)); _local10.Set(0.9, 0.3, 0.9); _local2 = 0; while (_local2 < b2Settings.b2_maxProxies) { _local22 = _local6.m_proxyPool[_local2]; if (_local22.IsValid() != false){ _local12.lowerBound.x = (_local20.x + (_local7.x * _local6.m_bounds[0][_local22.lowerBounds[0]].value)); _local12.lowerBound.y = (_local20.y + (_local7.y * _local6.m_bounds[1][_local22.lowerBounds[1]].value)); _local12.upperBound.x = (_local20.x + (_local7.x * _local6.m_bounds[0][_local22.upperBounds[0]].value)); _local12.upperBound.y = (_local20.y + (_local7.y * _local6.m_bounds[1][_local22.upperBounds[1]].value)); _local14[0].Set(_local12.lowerBound.x, _local12.lowerBound.y); _local14[1].Set(_local12.upperBound.x, _local12.lowerBound.y); _local14[2].Set(_local12.upperBound.x, _local12.upperBound.y); _local14[3].Set(_local12.lowerBound.x, _local12.upperBound.y);  .DrawPolygon(_local14, 4, _local10); }; _local2++; }; _local14[0].Set(_local20.x, _local20.y); _local14[1].Set(_local21.x, _local20.y); _local14[2].Set(_local21.x, _local21.y); _local14[3].Set(_local20.x, _local21.y);  .DrawPolygon(_local14, 4, new b2Color(0.3, 0.9, 0.9)); }; if ((_local1 & b2DebugDraw.e_obbBit)){ _local10.Set(0.5, 0.3, 0.5); _local3 =  ; while (_local3) { _local11 = _local3.m_xf; _local4 = _local3.GetShapeList(); while (_local4) { if (_local4.m_type == b2Shape.e_polygonShape){ _local23 = (_local4 as b2PolygonShape); _local24 = _local23.GetOBB(); _local25 = _local24.extents; _local14[0].Set(-(_local25.x), -(_local25.y)); _local14[1].Set(_local25.x, -(_local25.y)); _local14[2].Set(_local25.x, _local25.y); _local14[3].Set(-(_local25.x), _local25.y); _local2 = 0; while (_local2 < 4) { _local26 = _local24.R; _local27 = _local14[_local2]; _local28 = (_local24.center.x + ((_local26.col1.x * _local27.x) + (_local26.col2.x * _local27.y))); _local14[_local2].y = (_local24.center.y + ((_local26.col1.y * _local27.x) + (_local26.col2.y * _local27.y))); _local14[_local2].x = _local28; _local26 = _local11.R; _local28 = (_local11.position.x + ((_local26.col1.x * _local27.x) + (_local26.col2.x * _local27.y))); _local14[_local2].y = (_local11.position.y + ((_local26.col1.y * _local27.x) + (_local26.col2.y * _local27.y))); _local14[_local2].x = _local28; _local2++; };  .DrawPolygon(_local14, 4, _local10); }; _local4 = _local4.m_next; }; _local3 = _local3.m_next; }; }; if ((_local1 & b2DebugDraw.e_centerOfMassBit)){ _local3 =  ; while (_local3) { _local11 = s_xf; _local11.R = _local3.m_xf.R; _local11.position = _local3.GetWorldCenter();  .DrawXForm(_local11); _local3 = _local3.m_next; }; }; } public function DestroyBody(_arg1:b2Body):void{ var _local2:b2JointEdge; var _local3:b2Shape; var _local4:b2JointEdge; var _local5:b2Shape; if (m_lock == true){ return; }; _local2 = _arg1.m_jointList; while (_local2) { _local4 = _local2; _local2 = _local2.next; if ( ){  .SayGoodbyeJoint(_local4.joint); }; DestroyJoint(_local4.joint); }; _local3 = _arg1.m_shapeList; while (_local3) { _local5 = _local3; _local3 = _local3.m_next; if ( ){  .SayGoodbyeShape(_local5); }; _local5.DestroyProxy(m_broadPhase); b2Shape.Destroy(_local5, m_blockAllocator); }; if (_arg1.m_prev){ _arg1.m_prev.m_next = _arg1.m_next; }; if (_arg1.m_next){ _arg1.m_next.m_prev = _arg1.m_prev; }; if (_arg1 ==  ){  = _arg1.m_next; }; m_bodyCount--; } public function  (_arg1:b2ContactFilter):void{ m_contactFilter = _arg1; } public function  ():b2Body{ return (); } public function  (_arg1:b2Shape, _arg2:b2XForm, _arg3:b2Color, _arg4:Boolean):void{ var _local5:b2Color; var _local6:b2CircleShape; var _local7:b2Vec2; var _local8:Number; var _local9:b2Vec2; var _local10:int; var _local11:b2PolygonShape; var _local12:int; var _local13:Array; var _local14:Array; var _local15:Array; _local5 = s_coreColor; switch (_arg1.m_type){ case b2Shape.e_circleShape: _local6 = (_arg1 as b2CircleShape); _local7 = b2Math.b2MulX(_arg2, _local6.m_localPosition); _local8 = _local6.m_radius; _local9 = _arg2.R.col1;  .DrawSolidCircle(_local7, _local8, _local9, _arg3); if (_arg4){  .DrawCircle(_local7, (_local8 - b2Settings.b2_toiSlop), _local5); }; break; case b2Shape.e_polygonShape: _local11 = (_arg1 as b2PolygonShape); _local12 = _local11.GetVertexCount(); _local13 = _local11.GetVertices(); _local14 = new Array(b2Settings.b2_maxPolygonVertices); _local10 = 0; while (_local10 < _local12) { _local14[_local10] = b2Math.b2MulX(_arg2, _local13[_local10]); _local10++; };  .DrawSolidPolygon(_local14, _local12, _arg3); if (_arg4){ _local15 = _local11.GetCoreVertices(); _local10 = 0; while (_local10 < _local12) { _local14[_local10] = b2Math.b2MulX(_arg2, _local15[_local10]); _local10++; };  .DrawPolygon(_local14, _local12, _local5); }; break; }; } public function  ():int{ return (m_contactCount); } public function Solve(_arg1:b2TimeStep):void{ var _local2:b2Body; var _local3:b2Island; var _local4:b2Contact; var _local5:b2Joint; var _local6:int; var _local7:Array; var _local8:b2Body; var _local9:int; var _local10:int; var _local11:b2Body; var _local12:b2ContactEdge; var _local13:b2JointEdge; var _local14:Boolean; m_positionIterationCount = 0; _local3 = new b2Island(m_bodyCount, m_contactCount, m_jointCount, , m_contactListener); _local2 =  ; while (_local2) { _local2.m_flags = (_local2.m_flags & ~(b2Body.e_islandFlag)); _local2 = _local2.m_next; }; _local4 = m_contactList; while (_local4) { _local4.m_flags = (_local4.m_flags & ~(b2Contact.e_islandFlag)); _local4 = _local4.m_next; }; _local5 = m_jointList; while (_local5) { _local5.m_islandFlag = false; _local5 = _local5.m_next; }; _local6 = m_bodyCount; _local7 = new Array(_local6); _local8 =  ; while (_local8) { if (!(_local8.m_flags & ((b2Body.e_islandFlag | b2Body.e_sleepFlag) | b2Body.e_frozenFlag))){ if (!_local8.IsStatic()){ _local3.Clear(); _local9 = 0; var _temp1 = _local9; _local9 = (_local9 + 1); var _local15 = _temp1; _local7[_local15] = _local8; _local8.m_flags = (_local8.m_flags | b2Body.e_islandFlag); while (_local9 > 0) { --_local9; _local2 = _local7[_local9]; _local3.AddBody(_local2); _local2.m_flags = (_local2.m_flags & ~(b2Body.e_sleepFlag)); if (!_local2.IsStatic()){ _local12 = _local2.m_contactList; while (_local12) { if (!(_local12.contact.m_flags & (b2Contact.e_islandFlag | b2Contact.e_nonSolidFlag))){ if (_local12.contact.m_manifoldCount != 0){ _local3.AddContact(_local12.contact); _local12.contact.m_flags = (_local12.contact.m_flags | b2Contact.e_islandFlag); _local11 = _local12.other; if (!(_local11.m_flags & b2Body.e_islandFlag)){ var _temp2 = _local9; _local9 = (_local9 + 1); var _local16 = _temp2; _local7[_local16] = _local11; _local11.m_flags = (_local11.m_flags | b2Body.e_islandFlag); }; }; }; _local12 = _local12.next; }; _local13 = _local2.m_jointList; while (_local13) { if (_local13.joint.m_islandFlag != true){ _local3.AddJoint(_local13.joint); _local13.joint.m_islandFlag = true; _local11 = _local13.other; if (!(_local11.m_flags & b2Body.e_islandFlag)){ var _temp3 = _local9; _local9 = (_local9 + 1); _local16 = _temp3; _local7[_local16] = _local11; _local11.m_flags = (_local11.m_flags | b2Body.e_islandFlag); }; }; _local13 = _local13.next; }; }; }; _local3.Solve(_arg1, , m_positionCorrection,  ); if (_local3.m_positionIterationCount > m_positionIterationCount){ m_positionIterationCount = _local3.m_positionIterationCount; }; _local10 = 0; while (_local10 < _local3.m_bodyCount) { _local2 = _local3.m_bodies[_local10]; if (_local2.IsStatic()){ _local2.m_flags = (_local2.m_flags & ~(b2Body.e_islandFlag)); }; _local10++; }; }; }; _local8 = _local8.m_next; }; _local2 =  ; while (_local2) { if (!(_local2.m_flags & (b2Body.e_sleepFlag | b2Body.e_frozenFlag))){ if (!_local2.IsStatic()){ _local14 = _local2.SynchronizeShapes(); if ((((_local14 == false)) && (!((  == null))))){  .Violation(_local2); }; }; }; _local2 = _local2.m_next; }; m_broadPhase.Commit(); } public function Query(_arg1:b2AABB, _arg2:Array, _arg3:int):int{ var _local4:Array; var _local5:int; var _local6:int; _local4 = new Array(_arg3); _local5 = m_broadPhase.QueryAABB(_arg1, _local4, _arg3); _local6 = 0; while (_local6 < _local5) { _arg2[_local6] = _local4[_local6]; _local6++; }; return (_local5); } public function  (_arg1:b2Vec2):void{  = _arg1; } public function SolveTOI(_arg1:b2TimeStep):void{ var _local2:b2Body; var _local3:b2Shape; var _local4:b2Shape; var _local5:b2Body; var _local6:b2Body; var _local7:b2ContactEdge; var _local8:b2Island; var _local9:int; var _local10:Array; var _local11:b2Contact; var _local12:b2Contact; var _local13:Number; var _local14:b2Body; var _local15:int; var _local16:b2TimeStep; var _local17:int; var _local18:Number; var _local19:Number; var _local20:b2Body; var _local21:Boolean; _local8 = new b2Island(m_bodyCount, b2Settings.b2_maxTOIContactsPerIsland, 0, , m_contactListener); _local9 = m_bodyCount; _local10 = new Array(_local9); _local2 =  ; while (_local2) { _local2.m_flags = (_local2.m_flags & ~(b2Body.e_islandFlag)); _local2.m_sweep.t0 = 0; _local2 = _local2.m_next; }; _local11 = m_contactList; while (_local11) { _local11.m_flags = (_local11.m_flags & ~((b2Contact.e_toiFlag | b2Contact.e_islandFlag))); _local11 = _local11.m_next; }; while (true) { _local12 = null; _local13 = 1; _local11 = m_contactList; while (_local11) { if (!(_local11.m_flags & (b2Contact.e_slowFlag | b2Contact.e_nonSolidFlag))){ _local18 = 1; if ((_local11.m_flags & b2Contact.e_toiFlag)){ _local18 = _local11.m_toi; } else { _local3 = _local11.m_shape1; _local4 = _local11.m_shape2; _local5 = _local3.m_body; _local6 = _local4.m_body; //unresolved if _local19 = _local5.m_sweep.t0; if (_local5.m_sweep.t0 < _local6.m_sweep.t0){ _local19 = _local6.m_sweep.t0; _local5.m_sweep.Advance(_local19); } else { if (_local6.m_sweep.t0 < _local5.m_sweep.t0){ _local19 = _local5.m_sweep.t0; _local6.m_sweep.Advance(_local19); }; }; _local18 = b2TimeOfImpact.TimeOfImpact(_local11.m_shape1, _local5.m_sweep, _local11.m_shape2, _local6.m_sweep); if ((((_local18 > 0)) && ((_local18 < 1)))){ _local18 = (((1 - _local18) * _local19) + _local18); if (_local18 > 1){ _local18 = 1; }; }; _local11.m_toi = _local18; _local11.m_flags = (_local11.m_flags | b2Contact.e_toiFlag); }; if ((((Number.MIN_VALUE < _local18)) && ((_local18 < _local13)))){ _local12 = _local11; _local13 = _local18; }; }; _local11 = _local11.m_next; }; //unresolved if _local3 = _local12.m_shape1; _local4 = _local12.m_shape2; _local5 = _local3.m_body; _local6 = _local4.m_body; _local5.Advance(_local13); _local6.Advance(_local13); _local12.Update(m_contactListener); _local12.m_flags = (_local12.m_flags & ~(b2Contact.e_toiFlag)); if (_local12.m_manifoldCount != 0){ _local14 = _local5; if (_local14.IsStatic()){ _local14 = _local6; }; _local8.Clear(); _local15 = 0; var _temp1 = _local15; _local15 = (_local15 + 1); var _local22 = _temp1; _local10[_local22] = _local14; _local14.m_flags = (_local14.m_flags | b2Body.e_islandFlag); while (_local15 > 0) { --_local15; _local2 = _local10[_local15]; _local8.AddBody(_local2); _local2.m_flags = (_local2.m_flags & ~(b2Body.e_sleepFlag)); if (!_local2.IsStatic()){ _local7 = _local2.m_contactList; while (_local7) { if (_local8.m_contactCount != _local8.m_contactCapacity){ if (!(_local7.contact.m_flags & ((b2Contact.e_islandFlag | b2Contact.e_slowFlag) | b2Contact.e_nonSolidFlag))){ if (_local7.contact.m_manifoldCount != 0){ _local8.AddContact(_local7.contact); _local7.contact.m_flags = (_local7.contact.m_flags | b2Contact.e_islandFlag); _local20 = _local7.other; if (!(_local20.m_flags & b2Body.e_islandFlag)){ if (_local20.IsStatic() == false){ _local20.Advance(_local13); _local20.WakeUp(); }; var _temp2 = _local15; _local15 = (_local15 + 1); var _local23 = _temp2; _local10[_local23] = _local20; _local20.m_flags = (_local20.m_flags | b2Body.e_islandFlag); }; }; }; }; _local7 = _local7.next; }; }; }; _local16 = new b2TimeStep(); _local16.dt = ((1 - _local13) * _arg1.dt); _local16.inv_dt = (1 / _local16.dt); _local16.maxIterations = _arg1.maxIterations; _local8.SolveTOI(_local16); _local17 = 0; while (_local17 < _local8.m_bodyCount) { _local2 = _local8.m_bodies[_local17]; _local2.m_flags = (_local2.m_flags & ~(b2Body.e_islandFlag)); if (!(_local2.m_flags & (b2Body.e_sleepFlag | b2Body.e_frozenFlag))){ if (!_local2.IsStatic()){ _local21 = _local2.SynchronizeShapes(); if ((((_local21 == false)) && (!((  == null))))){  .Violation(_local2); }; _local7 = _local2.m_contactList; while (_local7) { _local7.contact.m_flags = (_local7.contact.m_flags & ~(b2Contact.e_toiFlag)); _local7 = _local7.next; }; }; }; _local17++; }; _local17 = 0; while (_local17 < _local8.m_contactCount) { _local11 = _local8.m_contacts[_local17]; _local8.m_contacts[_local17].m_flags = (_local11.m_flags & ~((b2Contact.e_toiFlag | b2Contact.e_islandFlag))); _local17++; }; m_broadPhase.Commit(); }; }; } public function GetJointList():b2Joint{ return (m_jointList); } public function Validate():void{ m_broadPhase.Validate(); } public function  ():int{ return (m_broadPhase.m_pairManager.m_pairCount); } public function  ():b2Body{ return ( ); } public function  (_arg1:Boolean):void{ m_warmStarting = _arg1; } public function  (_arg1:Boolean):void{ m_positionCorrection = _arg1; } public function CreateJoint(_arg1:b2JointDef):b2Joint{ var _local2:b2Joint; var _local3:b2Body; var _local4:b2Shape; _local2 = b2Joint.Create(_arg1, m_blockAllocator); _local2.m_prev = null; _local2.m_next = m_jointList; if (m_jointList){ m_jointList.m_prev = _local2; }; m_jointList = _local2; m_jointCount++; _local2.m_node1.joint = _local2; _local2.m_node1.other = _local2.m_body2; _local2.m_node1.prev = null; _local2.m_node1.next = _local2.m_body1.m_jointList; if (_local2.m_body1.m_jointList){ _local2.m_body1.m_jointList.prev = _local2.m_node1; }; _local2.m_body1.m_jointList = _local2.m_node1; _local2.m_node2.joint = _local2; _local2.m_node2.other = _local2.m_body1; _local2.m_node2.prev = null; _local2.m_node2.next = _local2.m_body2.m_jointList; if (_local2.m_body2.m_jointList){ _local2.m_body2.m_jointList.prev = _local2.m_node2; }; _local2.m_body2.m_jointList = _local2.m_node2; if (_arg1.collideConnected == false){ _local3 = ((_arg1.body1.m_shapeCount < _arg1.body2.m_shapeCount)) ? _arg1.body1 : _arg1.body2; _local4 = _local3.m_shapeList; while (_local4) { _local4.RefilterProxy(m_broadPhase, _local3.m_xf); _local4 = _local4.m_next; }; }; return (_local2); } public function DestroyJoint(_arg1:b2Joint):void{ var _local2:Boolean; var _local3:b2Body; var _local4:b2Body; var _local5:b2Body; var _local6:b2Shape; _local2 = _arg1.m_collideConnected; if (_arg1.m_prev){ _arg1.m_prev.m_next = _arg1.m_next; }; if (_arg1.m_next){ _arg1.m_next.m_prev = _arg1.m_prev; }; if (_arg1 == m_jointList){ m_jointList = _arg1.m_next; }; _local3 = _arg1.m_body1; _local4 = _arg1.m_body2; _local3.WakeUp(); _local4.WakeUp(); if (_arg1.m_node1.prev){ _arg1.m_node1.prev.next = _arg1.m_node1.next; }; if (_arg1.m_node1.next){ _arg1.m_node1.next.prev = _arg1.m_node1.prev; }; if (_arg1.m_node1 == _local3.m_jointList){ _local3.m_jointList = _arg1.m_node1.next; }; _arg1.m_node1.prev = null; _arg1.m_node1.next = null; if (_arg1.m_node2.prev){ _arg1.m_node2.prev.next = _arg1.m_node2.next; }; if (_arg1.m_node2.next){ _arg1.m_node2.next.prev = _arg1.m_node2.prev; }; if (_arg1.m_node2 == _local4.m_jointList){ _local4.m_jointList = _arg1.m_node2.next; }; _arg1.m_node2.prev = null; _arg1.m_node2.next = null; b2Joint.Destroy(_arg1, m_blockAllocator); m_jointCount--; if (_local2 == false){ _local5 = ((_local3.m_shapeCount < _local4.m_shapeCount)) ? _local3 : _local4; _local6 = _local5.m_shapeList; while (_local6) { _local6.RefilterProxy(m_broadPhase, _local5.m_xf); _local6 = _local6.m_next; }; }; } public function (_arg1:b2ContactListener):void{ m_contactListener = _arg1; } public function CreateBody(_arg1:b2BodyDef):b2Body{ var _local2:b2Body; if (m_lock == true){ return (null); }; _local2 = new b2Body(_arg1, this); _local2.m_prev = null; _local2.m_next =  ; if ( ){  .m_prev = _local2; };  = _local2; m_bodyCount++; return (_local2); } public function (_arg1:b2BoundaryListener):void{   = _arg1; } public function  (_arg1:b2DestructionListener):void{   = _arg1; } public function Step(_arg1:Number, _arg2:int):void{ var _local3:b2TimeStep; m_lock = true; _local3 = new b2TimeStep(); _local3.dt = _arg1; _local3.maxIterations = _arg2; if (_arg1 > 0){ _local3.inv_dt = (1 / _arg1); } else { _local3.inv_dt = 0; }; _local3.dtRatio = (  * _arg1); _local3.positionCorrection = m_positionCorrection; _local3.warmStarting = m_warmStarting; .Collide(); if (_local3.dt > 0){ Solve(_local3); }; if (((m_continuousPhysics) && ((_local3.dt > 0)))){ SolveTOI(_local3); };  ();   = _local3.inv_dt; m_lock = false; } public function ():int{ return (m_bodyCount); } public function ():int{ return (m_jointCount); } } }//package Box2D.Dynamics
Section 75
//AcceleratorBlock (com.nitrome.flipside.objects.AcceleratorBlock) package com.nitrome.flipside.objects { import Box2D.Common.Math.*; import com.nitrome.flipside.*; import Box2D.Dynamics.*; import Box2D.Collision.*; import Box2D.Collision.Shapes.*; public class AcceleratorBlock extends ActiveObject { public var glow:Number;// = 0 public var :b2Vec2; public var :Number; private var :b2Body; public var tileX:Number; public var tileY:Number; public var :Boolean; public var lastFrame:Number;// = 0 public var :String; public static var lastSoundFrame:Number = 0; public function AcceleratorBlock(_arg1:Number, _arg2:Number){ var _local3:b2PolygonDef; lastFrame = 0; glow = 0; super(); tileX = _arg1; tileY = _arg2;  = newBody(((_arg1 * 2) + 1), ((_arg2 * 2) + 1)); .SetUserData({acceleratorBlock:this, activeObject:this, contactMade:true, contactHeld:true}); _local3 = new b2PolygonDef(); _local3.SetAsBox(1, 1); _local3.friction = 1; .CreateShape(_local3); lastSoundFrame = -100; } override public function advance():void{ super.advance(); if (Controller.frameNumber != lastFrame){ lastFrame = Controller.frameNumber; glow--; }; } public function  (_arg1:b2ContactPoint, _arg2:b2Body):void{ var _local3:b2Vec2; if (!){ return; }; _local3 = .Copy(); if (((_arg2.m_userData) && (_arg2.m_userData.chunk))){ _local3.Multiply(0.05); }; if (((_arg2.m_userData) && (_arg2.m_userData.car))){ _arg2 = Car(_arg2.m_userData.car).axle; }; _arg2.ApplyForce(_local3, _arg2.GetWorldCenter()); if (((_arg2.m_userData) && (_arg2.m_userData.car))){ (_arg2.m_userData.car as Car).boostTime = 600; }; glow = 6; if ((((lastSoundFrame < (Controller.frameNumber - 10))) && (Controller.onScreen((_arg2.GetPosition().x * 32), (_arg2.GetPosition().y * 32))))){ lastSoundFrame = Controller.frameNumber; NitromeGame.sound_manager.playSound("accelerator"); }; } public function setup(_arg1:Number, _arg2:Boolean):void{ var _local3:Number; this. = _arg1; this. = _arg2;  = (("accelerator" + ["Floor", "RHWall", "Ceiling", "LHWall"][_arg1]) + (_arg2) ? "2" : "1"); Viewport.prerender(); _local3 = 200;  = new b2Vec2([_local3, 0, -(_local3), 0][_arg1], [0, -(_local3), 0, _local3][_arg1]); if (_arg2){ .Multiply(-1); }; } override public function contactMade(_arg1:b2ContactPoint):void{  (_arg1, ((_arg1.shape1.m_body == )) ? _arg1.shape2.m_body : _arg1.shape1.m_body); } override public function render(_arg1:Viewport):void{ var _local2:Number; var _local3:Number; var _local4:Number; _local2 = ((tileX * 64) - _arg1.scrollX); _local3 = ((tileY * 64) - _arg1.scrollY); _local4 = ((glow)>0) ? (9 - glow) : ((Controller.frameNumber % 2) + 1); _arg1.blit((( + "-") + _local4.toString()), _local2, _local3); } override public function contactHeld(_arg1:b2ContactPoint):void{  (_arg1, ((_arg1.shape1.m_body == )) ? _arg1.shape2.m_body : _arg1.shape1.m_body); } } }//package com.nitrome.flipside.objects
Section 76
//BigCircle (com.nitrome.flipside.objects.BigCircle) package com.nitrome.flipside.objects { import com.nitrome.flipside.*; import Box2D.Dynamics.*; import Box2D.Collision.Shapes.*; public class BigCircle extends ActiveObject { private var :b2Body; public function BigCircle(_arg1:Number, _arg2:Number){ var _local3:b2CircleDef; super();  = newBody((_arg1 * 2), (_arg2 * 2)); _local3 = new b2CircleDef(); _local3.radius = 2; _local3.friction = 1; _local3.density = 0.05; .CreateShape(_local3); .SetMassFromShapes(); Viewport.prerender("bigCircle1"); Viewport.prerender("bigCircle2"); Viewport.prerender("bigCircle3"); Viewport.prerender("bigCircle4"); } override public function advance():void{ applyGravity(); } override public function render(_arg1:Viewport):void{ var _local2:Number; var _local3:Number; _local2 = ((.GetPosition().x * 32) - _arg1.scrollX); _local3 = ((.GetPosition().y * 32) - _arg1.scrollY); _arg1.blit("bigCircle4", _local2, _local3); _arg1.drawRotated("bigCircle3", _local2, _local3, .GetAngle()); _arg1.drawRotated("bigCircle2", _local2, _local3, .GetAngle()); _arg1.blit("bigCircle1", _local2, _local3); } } }//package com.nitrome.flipside.objects
Section 77
//Box (com.nitrome.flipside.objects.Box) package com.nitrome.flipside.objects { import com.nitrome.flipside.*; import Box2D.Dynamics.*; import Box2D.Collision.Shapes.*; public class Box extends ActiveObject { private var :b2Body; public function Box(_arg1:Number, _arg2:Number){ var _local3:b2PolygonDef; super();  = newBody(((_arg1 * 2) + 1), ((_arg2 * 2) + 1)); _local3 = new b2PolygonDef(); _local3.SetAsBox(1, 1); _local3.density = 0.1; _local3.friction = 1; .CreateShape(_local3); .SetMassFromShapes(); Viewport.prerender("box"); } override public function advance():void{ applyGravity(); } override public function render(_arg1:Viewport):void{ var _local2:Number; var _local3:Number; _local2 = ((.GetPosition().x * 32) - _arg1.scrollX); _local3 = ((.GetPosition().y * 32) - _arg1.scrollY); _arg1.drawRotated("box", _local2, _local3, .GetAngle()); } } }//package com.nitrome.flipside.objects
Section 78
//Button (com.nitrome.flipside.objects.Button) package com.nitrome.flipside.objects { import Box2D.Common.Math.*; import com.nitrome.flipside.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; public class Button extends ActiveObject { private var  :Spring; private var number:Number;// = 0 private var  :Number;// = 0 private var :b2Body; private var  :Number; private var lastFrame:Number;// = 0 public static var buttonDown:Array = [false, false, false, false]; public function Button(_arg1:Number, _arg2:Number){ var _local3:b2Body; var _local4:b2PolygonDef; var _local5:b2PrismaticJointDef; number = 0;  = 0; lastFrame = 0; super();  = newBody(((_arg1 + 0.5) * 2), (((_arg2 + 1) * 2) - 0.2)); _local3 = newBody(((_arg1 + 0.5) * 2), (((_arg2 + 1) * 2) - 0.2)); _local4 = new b2PolygonDef(); _local4.SetAsBox(1, 0.2); _local4.vertices[0].x = (_local4.vertices[0].x + 0.2); _local4.vertices[1].x = (_local4.vertices[1].x - 0.2); _local4.density = 0.5; _local4.friction = 0.5; _local4.filter.maskBits = ~(0x8000); .CreateShape(_local4); .SetMassFromShapes(); _local5 = new b2PrismaticJointDef(); _local5.body1 = _local3; _local5.body2 = ; _local5.localAnchor1 = new b2Vec2(); _local5.localAnchor2 = new b2Vec2(); _local5.localAxis1 = new b2Vec2(0, 1); _local5.enableLimit = true; _local5.upperTranslation = 0.4; _local5.lowerTranslation = 0; makeJoint(_local5);  = new Spring(, _local3, new b2Vec2(), new b2Vec2(0, -1), 0.8, 10);  = ((_arg2 + 1) * 2); Viewport.prerender("switch"); } override public function advance():void{ var _local1:Boolean;  .advance(); if (Controller.frameNumber != lastFrame){ lastFrame = Controller.frameNumber; _local1 = (.GetPosition().y >  ); if (_local1){  = 10; } else { if ( > 0){  --; }; }; }; if (( > 0) != buttonDown[number]){ buttonDown[number] = ( > 0); if (buttonDown[number]){ NitromeGame.sound_manager.playSound("beep1"); } else { NitromeGame.sound_manager.playSound("beep2"); }; }; } public function setup(_arg1:Number):void{ this.number = _arg1; } override public function renderBack(_arg1:Viewport):void{ var _local2:Number; var _local3:Number; _local2 = ((.GetPosition().x * 32) - _arg1.scrollX); _local3 = ((.GetPosition().y * 32) - _arg1.scrollY); _arg1.blit("switch", _local2, _local3); } } }//package com.nitrome.flipside.objects
Section 79
//Catcher (com.nitrome.flipside.objects.Catcher) package com.nitrome.flipside.objects { import Box2D.Common.Math.*; import com.nitrome.flipside.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; public class Catcher extends ActiveObject { private var :Boolean;// = false private var :b2Body; private var cars:Array; private var :Array; public function Catcher(_arg1:Number, _arg2:Number){ var _local3:b2Body; var _local4:Number; var _local5:b2PolygonDef; var _local6:b2RevoluteJointDef; var _local7:Number; var _local8:b2Body; var _local9:b2PolygonDef; var _local10:b2RevoluteJointDef;  = []; cars = [];  = false; super();  = newBody(((_arg1 + 0.5) * 2), ((_arg2 + 0.55) * 2)); _local3 = newBody(((_arg1 + 0.5) * 2), ((_arg2 + 0.55) * 2)); _local4 = 0.4; _local5 = new b2PolygonDef(); _local5.SetAsBox(0.5, 4); _local5.density = _local4; _local5.friction = 1; _local5.filter.maskBits = 0; .CreateShape(_local5); .SetMassFromShapes(); _local6 = new b2RevoluteJointDef(); _local6.body1 = _local3; _local6.body2 = ; makeJoint(_local6); for each (_local7 in [1, -1]) { _local8 = newBody(((_arg1 + 0.5) * 2), (((_arg2 + 0.5) * 2) + (_local7 * 4))); _local9 = new b2PolygonDef(); _local9.density = _local4; _local9.friction = 1; _local9.filter.maskBits = ~(0x8000); _local9.SetAsOrientedBox(2, 0.2, new b2Vec2(0, -1.1)); _local8.CreateShape(_local9); _local9.SetAsOrientedBox(2, 0.2, new b2Vec2(0, 1.1)); _local8.CreateShape(_local9); _local9.restitution = 0.5; _local9.SetAsOrientedBox(0.2, 0.9, new b2Vec2((_local7 * -1.8), 0)); _local8.CreateShape(_local9); _local8.SetMassFromShapes(); cars.push(_local8); _local10 = new b2RevoluteJointDef(); _local10.body1 = ; _local10.body2 = _local8; _local10.localAnchor1 = new b2Vec2(0, (_local7 * 6)); .push(makeJoint(_local10)); }; Viewport.prerender("catcherArm1"); Viewport.prerender("catcherArm2"); Viewport.prerender("catcherCar1"); Viewport.prerender("catcherCar2"); transmitsAI = true; } override public function advance():void{ var _local1:Number; var _local2:Number; var _local3:Number; var _local4:b2Body; var _local5:Number; _local1 = (Math.PI * 2); if (!){ for each (_local4 in cars) { if (!_local4.IsSleeping()){ _local5 = ((_local4)==cars[0]) ? Math.PI : 0; _local2 = ((Math.round(((_local4.GetAngle() - _local5) / _local1)) * _local1) + _local5); _local3 = (_local2 - _local4.GetAngle()); _local4.ApplyTorque((_local3 * 100)); _local4.SetAngularVelocity((_local4.GetAngularVelocity() * 0.95)); }; }; }; if (!.IsSleeping()){ _local2 = (Math.round((.GetAngle() / Math.PI)) * Math.PI); _local3 = (_local2 - .GetAngle()); .ApplyTorque((_local3 * 100)); .SetAngularVelocity((.GetAngularVelocity() * 0.998)); }; } override public function inheritedAI(_arg1:Car):Boolean{ var _local2:Number; var _local3:Number; var _local4:Number; if (Math.abs((.GetPosition().x - _arg1.getCenterX())) > 10){ return (false); }; if (Math.abs((.GetPosition().y - _arg1.getCenterY())) > 10){ return (false); }; _arg1.aiInstruction = "i n"; _local2 = 0; while (_local2 < 2) { _local3 = (cars[_local2].GetPosition().x - _arg1.getCenterX()); _local4 = (cars[_local2].GetPosition().y - _arg1.getCenterY()); if ((((Math.abs(_local4) < 1)) && ((_local3 > 0)))){ _arg1.aiInstruction = "i r"; }; _local2++; }; return (true); } override public function renderBack(_arg1:Viewport):void{ var _local2:Number; var _local3:Number; var _local4:b2Body; for each (_local4 in cars) { _local2 = ((_local4.GetPosition().x * 32) - _arg1.scrollX); _local3 = ((_local4.GetPosition().y * 32) - _arg1.scrollY); _arg1.drawRotated("catcherCar1", _local2, _local3, (_local4.GetAngle() + ((_local4 == cars[0])) ? Math.PI : 0)); }; _local2 = ((.GetPosition().x * 32) - _arg1.scrollX); _local3 = ((.GetPosition().y * 32) - _arg1.scrollY); _arg1.drawRotated("catcherArm1", _local2, _local3, .GetAngle()); _arg1.blit("catcherArm2", _local2, _local3); } override public function render(_arg1:Viewport):void{ var _local2:b2Body; var _local3:Number; var _local4:Number; for each (_local2 in cars) { _local3 = ((_local2.GetPosition().x * 32) - _arg1.scrollX); _local4 = ((_local2.GetPosition().y * 32) - _arg1.scrollY); _arg1.drawRotated("catcherCar2", _local3, _local4, (_local2.GetAngle() + ((_local2 == cars[0])) ? Math.PI : 0)); }; } public function setup(_arg1:Boolean):void{ var _local2:b2RevoluteJoint; if (_arg1){ for each (_local2 in ) { _local2.EnableLimit(true); }; };  = true; } } }//package com.nitrome.flipside.objects
Section 80
//Catflap (com.nitrome.flipside.objects.Catflap) package com.nitrome.flipside.objects { import Box2D.Common.Math.*; import com.nitrome.flipside.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; import com.nitrome.util.*; public class Catflap extends ActiveObject { private var :b2Body; private var :b2Body; private var :b2Body; private var :Spring; public function Catflap(_arg1:Number, _arg2:Number){ var _local3:Number; var _local4:Number; var _local5:Number; var _local6:b2BodyDef; var _local7:b2PolygonDef; var _local8:b2RevoluteJointDef; super(); _local3 = (((_arg1 + 0.5) * 64) / 32); _local4 = (((_arg2 + 1) * 64) / 32); _local5 = (64 / 32); _local6 = new b2BodyDef(); _local6.position.Set(_local3, (_local4 - (_local5 * 1.5)));  =  (_local6); _local6.position.Set(_local3, (_local4 - (_local5 * 3)));  =  (_local6); _local6.position.Set(_local3, _local4);  =  (_local6); _local7 = new b2PolygonDef(); _local7.SetAsBox((8 / 32), (_local5 * 1.5)); _local7.density = 0.1; _local7.friction = 0.8; _local7.filter.maskBits = ~(0x8000); .CreateShape(_local7); .SetMassFromShapes(); _local8 = new b2RevoluteJointDef(); _local8.body1 = ; _local8.body2 = ; _local8.localAnchor1 = new b2Vec2(0, (_local5 * 1.5)); _local8.localAnchor2 = new b2Vec2(); _local8.  = (-(Math.PI) / 2); _local8.  = (Math.PI / 2); _local8.enableLimit = true; makeJoint(_local8);  = new Spring(, , new b2Vec2(0, (-(_local5) * 1.5)), new b2Vec2(), 0, 1); Viewport.prerender("catflapBody"); Viewport.prerender("catflapHinge"); } override public function advance():void{ applyGravity(); .advance(); if (!.IsSleeping()){ .SetXForm(.GetPosition(), Global.slide(.GetAngle(), 0, 0.001)); }; } override public function render(_arg1:Viewport):void{ var _local2:Number; var _local3:Number; _local2 = ((.GetPosition().x * 32) - _arg1.scrollX); _local3 = ((.GetPosition().y * 32) - _arg1.scrollY); _arg1.drawRotated("catflapBody", _local2, _local3, .GetAngle()); _arg1.blit("catflapHinge", _local2, _local3); } } }//package com.nitrome.flipside.objects
Section 81
//Chunks (com.nitrome.flipside.objects.Chunks) package com.nitrome.flipside.objects { import Box2D.Common.Math.*; import com.nitrome.flipside.*; import Box2D.Dynamics.*; import Box2D.Collision.Shapes.*; import com.nitrome.util.*; public class Chunks extends ActiveObject { public var :Array; public var :Array; public function Chunks(_arg1:Number, _arg2:Number){ var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:b2BodyDef; var _local9:b2Body; var _local10:b2PolygonDef; var _local11:String; var _local12:Number; var _local13:b2Shape;  = [];  = []; super(); _local4 = 0; while (_local4 <= 1) { _local5 = 0; while (_local5 <= 1) { _local6 = ((((_arg1 + 0.25) + (0.5 * _local4)) * 64) / 32); _local7 = ((((_arg2 + 0.25) + (0.5 * _local5)) * 64) / 32); _local8 = new b2BodyDef(); _local8.position.Set(_local6, _local7); _local9 =  (_local8); _local9.SetUserData({activeObject:this, chunk:this}); _local10 = new b2PolygonDef(); _local12 = Math.floor((Math.random() * 4)); switch (_local12){ case 0: _local10.SetAsBox(0.35, 0.35); _local11 = "chunkSmallBox"; break; case 1: _local10.vertexCount = 4; _local10.vertices[0] = new b2Vec2(-0.35, -0.35); _local10.vertices[1] = new b2Vec2(0.35, -0.35); _local10.vertices[2] = new b2Vec2(0.35, 0.1); _local10.vertices[3] = new b2Vec2(-0.35, 0.35); _local11 = "chunkCutBox"; break; case 2: _local10.vertexCount = 5; _local3 = 0; while (_local3 < 5) { _local10.vertices[_local3] = new b2Vec2((Trig.getCos(((360 * _local3) / 5)) * 0.5), (Trig.getSin(((360 * _local3) / 5)) * 0.5)); _local3++; }; _local11 = "chunkPentagon"; break; default: _local10.vertexCount = 3; _local3 = 0; while (_local3 < 3) { _local10.vertices[_local3] = new b2Vec2((Trig.getCos(((360 * _local3) / 3)) * 0.3), (Trig.getSin(((360 * _local3) / 3)) * 0.3)); _local3++; }; _local11 = "chunkTriangle"; }; Viewport.prerender(_local11); .push(_local11); _local10.density = 0.05; _local13 = _local9.CreateShape(_local10); _local9.SetMassFromShapes(); .push(_local9); _local5++; }; _local4++; }; } override public function advance():void{ var _local1:b2Body; for each (_local1 in ) { applyGravity(_local1); }; } override public function render(_arg1:Viewport):void{ var _local2:Number; var _local3:Number; var _local4:Number; _local2 = 0; while (_local2 < .length) { _local3 = (([_local2].GetPosition().x * 32) - _arg1.scrollX); _local4 = (([_local2].GetPosition().y * 32) - _arg1.scrollY); _arg1.drawRotated([_local2], _local3, _local4, [_local2].GetAngle()); _local2++; }; } } }//package com.nitrome.flipside.objects
Section 82
//ForceBlock (com.nitrome.flipside.objects.ForceBlock) package com.nitrome.flipside.objects { import Box2D.Common.Math.*; import com.nitrome.flipside.*; import Box2D.Dynamics.*; import Box2D.Collision.*; import Box2D.Collision.Shapes.*; public class ForceBlock extends ActiveObject { public var glow:Number;// = 0 public var blockImage:String; private var :b2Body; private var tileX:Number; private var tileY:Number; public var lastFrame:Number;// = 0 public static var lastSoundFrame:Number = 0; public static var lastFrameStatic:Number = 0; public static var disabledTime:Number = 0; public function ForceBlock(_arg1:Number, _arg2:Number){ lastFrame = 0; glow = 0; super(); tileX = _arg1; tileY = _arg2;  = newBody(((_arg1 + 0.5) * 2), ((_arg2 + 0.5) * 2)); .SetUserData({forceBlock:this, activeObject:this, contactMade:true}); lastSoundFrame = 0; } override public function advance():void{ super.advance(); if (Controller.frameNumber != lastFrame){ lastFrame = Controller.frameNumber; if (glow > 0){ glow--; }; }; if (Controller.frameNumber != lastFrameStatic){ lastFrameStatic = Controller.frameNumber; if (disabledTime > 0){ disabledTime--; }; }; } public function setup(_arg1:Number):void{ var _local2:b2PolygonDef; _local2 = new b2PolygonDef(); if (_arg1 == 0){ _local2.SetAsBox(1, 1); } else { _local2.vertexCount = 3; _local2.vertices = []; if (_arg1 != 1){ _local2.vertices.push(new b2Vec2(-1, -1)); }; if (_arg1 != 2){ _local2.vertices.push(new b2Vec2(1, -1)); }; if (_arg1 != 3){ _local2.vertices.push(new b2Vec2(1, 1)); }; if (_arg1 != 4){ _local2.vertices.push(new b2Vec2(-1, 1)); }; }; _local2.restitution = 0; .CreateShape(_local2); blockImage = ("forceBlock" + (_arg1 + 1)); Viewport.prerender(blockImage); } override public function contactMade(_arg1:b2ContactPoint):void{ var _local2:b2Body; var _local3:b2Vec2; if (disabledTime > 0){ return; }; _local2 = ((_arg1.shape1.m_body)==) ? _arg1.shape2.m_body : _arg1.shape1.m_body; _local3 = _arg1.normal.Copy(); _local3.Multiply(3000); if (((_local2.m_userData) && (_local2.m_userData.car))){ _local2 = (_local2.m_userData.car as Car).axle; (_local2.m_userData.car as Car).downforceDisabled = 20; }; _local2.ApplyForce(_local3, _local2.GetWorldCenter()); disabledTime = 2; glow = 6; if ((((lastSoundFrame < (Controller.frameNumber - 10))) && (Controller.onScreen((.GetPosition().x * 32), (.GetPosition().y * 32))))){ lastSoundFrame = Controller.frameNumber; NitromeGame.sound_manager.playSound("forceBlock"); }; } override public function render(_arg1:Viewport):void{ var _local2:Number; var _local3:Number; var _local4:Number; _local2 = ((tileX * 64) - _arg1.scrollX); _local3 = ((tileY * 64) - _arg1.scrollY); _local4 = ((glow)>0) ? (9 - glow) : ((Controller.frameNumber % 2) + 1); _arg1.blit(((blockImage + "-") + _local4), _local2, _local3); } } }//package com.nitrome.flipside.objects
Section 83
//HangingPlatform (com.nitrome.flipside.objects.HangingPlatform) package com.nitrome.flipside.objects { import Box2D.Common.Math.*; import com.nitrome.flipside.*; import Box2D.Dynamics.*; import Box2D.Collision.Shapes.*; import flash.geom.*; public class HangingPlatform extends ActiveObject { public var :Spring; public var  :Spring; public var  :b2Body; public var  :b2Body; public var  :b2Body; public function HangingPlatform(_arg1:Number, _arg2:Number){ var _local3:Number; var _local4:Number; var _local5:b2BodyDef; var _local6:b2PolygonDef; var _local7:b2BodyDef; super(); _local3 = ((_arg1 * 64) / 32); _local4 = (((_arg2 + 0.25) * 64) / 32); _local5 = new b2BodyDef(); _local5.position.Set(_local3, _local4);  =  (_local5); _local6 = new b2PolygonDef(); _local6.SetAsBox(2, 0.5); _local6.density = 1; _local6.friction = 0.8; _local6.restitution = 0.5;  .CreateShape(_local6);  .SetMassFromShapes(); _local7 = new b2BodyDef(); _local7.position.Set((_local3 - 2), (_local4 - 6));  =  (_local7); _local7.position.Set((_local3 + 2), (_local4 - 6));  =  (_local7);  = new Spring( ,  , new b2Vec2(0, 0), new b2Vec2(-2, 0), 5, 20); . = 1;  = new Spring( ,  , new b2Vec2(0, 0), new b2Vec2(2, 0), 5, 20);  . = 1; Viewport.prerender("hangingPlatformBase"); Viewport.prerender("hangingPlatformAnchor"); Viewport.prerender("hangingPlatformCable"); } override public function advance():void{ applyGravity( ); .advance();  .advance(); } public function setup(_arg1:Boolean):void{ if (_arg1){  .SetXForm(new b2Vec2(( .GetPosition().x + 1),  .GetPosition().y), 0);  .SetXForm(new b2Vec2(( .GetPosition().x + 1),  .GetPosition().y), 0); }; } override public function render(_arg1:Viewport):void{ var _local2:Number; var _local3:Number; var _local4:Number; var _local5:b2Body; var _local6:b2Vec2; var _local7:b2Vec2; var _local8:b2Vec2; var _local9:b2Vec2; var _local10:Number; var _local11:Matrix; _local4 = 0; while (_local4 < 2) { _local5 = [ ,  ][_local4]; _local6 = new b2Vec2([-2, 2][_local4], -0.5); _local7 =  .GetWorldPoint(_local6); _local8 = _local5.GetPosition(); _local9 = _local7.Copy(); _local9.Subtract(_local8); _local2 = ((_local8.x * 32) - _arg1.scrollX); _local3 = ((_local8.y * 32) - _arg1.scrollY); _local10 = (_local9.Length() / 5.5); _local11 = new Matrix(); _local11.scale(1, _local10); _local11.rotate((-((Math.PI / 2)) + Math.atan2(_local9.y, _local9.x))); _local11.translate(_local2, _local3); _arg1.drawMatrix("hangingPlatformCable", _local11); _arg1.blit("hangingPlatformAnchor", _local2, _local3); _local4++; }; _local2 = (( .GetPosition().x * 32) - _arg1.scrollX); _local3 = (( .GetPosition().y * 32) - _arg1.scrollY); _arg1.drawRotated("hangingPlatformBase", _local2, _local3,  .GetAngle()); } } }//package com.nitrome.flipside.objects
Section 84
//LaserEmitterBlock (com.nitrome.flipside.objects.LaserEmitterBlock) package com.nitrome.flipside.objects { import com.nitrome.flipside.*; import Box2D.Dynamics.*; import Box2D.Collision.*; import Box2D.Collision.Shapes.*; public class LaserEmitterBlock extends ActiveObject { public var :Number;// = 0 public var :b2Body; public var :Boolean;// = false public var :b2Body; public var blockImage:String; public var :Boolean;// = false private var :b2Body; private var tileX:Number; public var :Boolean;// = false public var :Boolean;// = false private var tileY:Number; public var :Boolean;// = false public var :Boolean;// = false public var  :Number;// = 0 public function LaserEmitterBlock(_arg1:Number, _arg2:Number){ var _local3:b2PolygonDef;  = false;  = false;  = false;  = false;  = false;  = 0;  = false;  = 0; super(); tileX = _arg1; tileY = _arg2;  = newBody(((_arg1 * 2) + 1), ((_arg2 * 2) + 1)); _local3 = new b2PolygonDef(); _local3.SetAsBox(1, 1); _local3.friction = 1; .CreateShape(_local3); setup(true, true, true, true); Viewport.prerender("laserBeamMiddle"); Viewport.prerender("laserBeamEnd"); Viewport.prerender("laserBeam2Middle"); Viewport.prerender("laserBeam2End"); } public function setup(_arg1:Boolean, _arg2:Boolean, _arg3:Boolean, _arg4:Boolean):void{ var _local5:Number; var _local6:Number; var _local7:ActiveObject; var _local8:b2PolygonDef;  = _arg1;  = _arg2;  = _arg3;  = _arg4; blockImage = (((("laserEmitter" + () ? "T" : "F") + () ? "T" : "F") + () ? "T" : "F") + () ? "T" : "F"); Viewport.prerender(blockImage); if (_arg1){ _local6 = (tileY - 1); while (_local6 >= 0) { _local7 = Controller.level.activeGrid[tileX][_local6]; if ((_local7 is LaserEmitterBlock)){ //unresolved if  = true;  = ((tileY - _local6) - 1);  = newBody(((tileX * 2) + 1), ((tileY * 2) -  )); .SetUserData({activeObject:this, contactMade:true}); _local8 = new b2PolygonDef(); _local8.SetAsBox(0.4,  ); _local8.friction = 1; _local8.filter.maskBits = 2; .CreateShape(_local8); break; }; _local6--; }; }; if (_arg4){ _local5 = (tileX - 1); while (_local5 >= 0) { _local7 = Controller.level.activeGrid[_local5][tileY]; if ((_local7 is LaserEmitterBlock)){ //unresolved if  = true;  = ((tileX - _local5) - 1);  = newBody(((tileX * 2) - ), ((tileY * 2) + 1)); .SetUserData({activeObject:this, contactMade:true}); _local8 = new b2PolygonDef(); _local8.SetAsBox(, 0.4); _local8.friction = 1; _local8.filter.maskBits = 2; .CreateShape(_local8); break; }; _local5--; }; }; } override public function contactMade(_arg1:b2ContactPoint):void{ var _local2:b2Body; if ((() && ((_arg1.shape1.m_body == )))){ _local2 = _arg1.shape2.m_body; } else { if ((() && ((_arg1.shape1.m_body == )))){ _local2 = _arg1.shape2.m_body; } else { _local2 = _arg1.shape1.m_body; }; }; if (((_local2.m_userData) && (_local2.m_userData.car))){ (_local2.m_userData.car as Car).hitLaser(); }; } override public function render(_arg1:Viewport):void{ var _local2:Number; var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Number; _local2 = (1 + (Controller.frameNumber % 2)); _local3 = ((tileX * 64) - _arg1.scrollX); _local4 = ((tileY * 64) - _arg1.scrollY); _arg1.blit(blockImage, _local3, _local4); if (){ _local5 = (tileX - ); while (_local5 < tileX) { _local3 = ((_local5 * 64) - _arg1.scrollX); _local4 = (((tileY * 64) + 32) - _arg1.scrollY); if (_local5 == (tileX - )){ _arg1.blit(("laserBeamEnd-" + _local2), _local3, _local4); } else { if (_local5 == (tileX - 1)){ _arg1.drawRotated(("laserBeamEnd-" + _local2), (_local3 + 64), (_local4 + 1), Math.PI); } else { _arg1.blit(("laserBeamMiddle-" + _local2), _local3, _local4); }; }; _local5++; }; }; if (){ _local6 = (tileY -  ); while (_local6 < tileY) { _local3 = (((tileX * 64) + 32) - _arg1.scrollX); _local4 = ((_local6 * 64) - _arg1.scrollY); if (_local6 == (tileY -  )){ _arg1.blit(("laserBeam2End-" + _local2), _local3, _local4); } else { if (_local6 == (tileY - 1)){ _arg1.drawRotated(("laserBeam2End-" + _local2), (_local3 - 1), (_local4 + 64), Math.PI); } else { _arg1.blit(("laserBeam2Middle-" + _local2), _local3, _local4); }; }; _local6++; }; }; } } }//package com.nitrome.flipside.objects
Section 85
//LiftBridge (com.nitrome.flipside.objects.LiftBridge) package com.nitrome.flipside.objects { import Box2D.Common.Math.*; import com.nitrome.flipside.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; import flash.geom.*; public class LiftBridge extends ActiveObject { private var :b2Body; private var :b2Body; public function LiftBridge(_arg1:Number, _arg2:Number){ var _local3:b2Body; var _local4:b2Body; var _local5:b2PolygonDef; var _local6:b2RevoluteJointDef; super(); _local3 = newBody(((_arg1 - 3) * 2), ((_arg2 * 2) + 0.2)); _local4 = newBody(((_arg1 + 3) * 2), ((_arg2 * 2) + 0.2)); _local5 = new b2PolygonDef(); _local5.density = 1; _local5.friction = 1; _local5.filter.maskBits = ~(0x8000); _local5.SetAsBox(3, 0.2); _local5.vertices[2].x = (_local5.vertices[2].x - 0.1);  = newBody(((_arg1 - 1) * 2), (_arg2 * 2)); .CreateShape(_local5); .SetMassFromShapes(); _local5.SetAsBox(3, 0.2); _local5.vertices[3].x = (_local5.vertices[3].x + 0.1);  = newBody(((_arg1 + 1) * 2), (_arg2 * 2)); .CreateShape(_local5); .SetMassFromShapes(); _local6 = new b2RevoluteJointDef(); _local6.body1 = _local3; _local6.body2 = ; _local6.localAnchor1 = new b2Vec2(); _local6.localAnchor2 = new b2Vec2(-3, 0); _local6.enableLimit = true; _local6.  = ((-(Math.PI) * 2) / 6); _local6.  = 0; makeJoint(_local6); _local6.body1 = ; _local6.body2 = _local4; _local6.localAnchor1 = new b2Vec2(3, 0); _local6.localAnchor2 = new b2Vec2(); makeJoint(_local6); Viewport.prerender("drawbridge1"); Viewport.prerender("drawbridge2"); } override public function advance():void{ if ((Controller.frameNumber % 160) < 80){ .SetAngularVelocity(((.GetAngle())<0) ? 1 : 0); .SetAngularVelocity(((.GetAngle())>0) ? -1 : 0); } else { .SetAngularVelocity(-1); .SetAngularVelocity(1); }; .WakeUp(); .WakeUp(); } override public function render(_arg1:Viewport):void{ var _local2:Number; var _local3:b2Body; var _local4:b2Vec2; var _local5:Number; var _local6:Number; var _local7:Matrix; _local2 = 0; while (_local2 < 2) { _local3 = [, ][_local2]; _local4 = _local3.GetWorldPoint(new b2Vec2([-3, 3][_local2], 0)); _local5 = ((_local4.x * 32) - _arg1.scrollX); _local6 = ((_local4.y * 32) - _arg1.scrollY); _local7 = new Matrix(); if (_local2 == 1){ _local7.scale(-1, 1); }; _local7.rotate(_local3.GetAngle()); _local7.translate(_local5, _local6); _arg1.drawMatrix("drawbridge1", _local7); _arg1.blit("drawbridge2", _local5, _local6); _local2++; }; } } }//package com.nitrome.flipside.objects
Section 86
//Peg (com.nitrome.flipside.objects.Peg) package com.nitrome.flipside.objects { import com.nitrome.flipside.*; import Box2D.Dynamics.*; import Box2D.Collision.Shapes.*; public class Peg extends ActiveObject { private var :b2Body; public function Peg(_arg1:Number, _arg2:Number){ var _local3:b2CircleDef; super();  = newBody((_arg1 * 2), (_arg2 * 2)); _local3 = new b2CircleDef(); _local3.radius = 0.8; _local3.friction = 1; .CreateShape(_local3); Viewport.prerender("peg"); } override public function render(_arg1:Viewport):void{ var _local2:Number; var _local3:Number; _local2 = ((.GetPosition().x * 32) - _arg1.scrollX); _local3 = ((.GetPosition().y * 32) - _arg1.scrollY); _arg1.blit("peg", _local2, _local3); } } }//package com.nitrome.flipside.objects
Section 87
//RopeBridge (com.nitrome.flipside.objects.RopeBridge) package com.nitrome.flipside.objects { import Box2D.Common.Math.*; import com.nitrome.flipside.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; public class RopeBridge extends ActiveObject { private var  :Array; public function RopeBridge(_arg1:Number, _arg2:Number){ var _local3:Number; var _local4:b2Body; var _local5:b2Body; var _local6:Number; var _local7:b2RevoluteJointDef; var _local8:b2Body; var _local9:b2PolygonDef; var _local10:b2RevoluteJointDef; super();  = []; _local3 = 5; _local4 = newBody(((_arg1 - _local3) * 2), ((_arg2 * 2) + 0.2)); _local5 = newBody(((_arg1 + _local3) * 2), ((_arg2 * 2) + 0.2)); _local6 = -(_local3); while (_local6 < _local3) { _local8 = newBody((((_arg1 - _local6) + 0.5) * 2), ((_arg2 * 2) + 0.2));  .push(_local8); _local9 = new b2PolygonDef(); _local9.SetAsBox(1, 0.2); _local9.density = 1; _local9.friction = 0.8; _local9.restitution = 1; _local9.filter.maskBits = ~(0x8000); _local8.CreateShape(_local9); _local8.SetMassFromShapes(); _local10 = new b2RevoluteJointDef(); _local10.body1 = ((_local6)==-(_local3)) ? _local4 :  [((_local6 + _local3) - 1)]; _local10.body2 = _local8; _local10.localAnchor1 = ((_local6)==-(_local3)) ? new b2Vec2() : new b2Vec2(1, 0); _local10.localAnchor2 = new b2Vec2(-1, 0); makeJoint(_local10); _local6++; }; _local7 = new b2RevoluteJointDef(); _local7.body1 =  [( .length - 1)]; _local7.body2 = _local5; _local7.localAnchor1 = new b2Vec2(1, 0); _local7.localAnchor2 = new b2Vec2(); makeJoint(_local7); Viewport.prerender("ropeBridgeRung"); } override public function advance():void{ var _local1:b2Body; for each (_local1 in  ) { applyGravity(_local1); }; } override public function render(_arg1:Viewport):void{ var _local2:b2Body; var _local3:Number; var _local4:Number; for each (_local2 in  ) { _local3 = ((_local2.GetPosition().x * 32) - _arg1.scrollX); _local4 = ((_local2.GetPosition().y * 32) - _arg1.scrollY); _arg1.drawRotated("ropeBridgeRung", _local3, _local4, _local2.GetAngle()); }; } } }//package com.nitrome.flipside.objects
Section 88
//Seesaw (com.nitrome.flipside.objects.Seesaw) package com.nitrome.flipside.objects { import Box2D.Common.Math.*; import com.nitrome.flipside.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; public class Seesaw extends ActiveObject { public var :Boolean;// = true public var pivot:b2Body; public var :b2Body; public var tileX:Number; public var tileY:Number; public function Seesaw(_arg1:Number, _arg2:Number){ var _local3:b2BodyDef; var _local4:b2BodyDef; var _local5:b2RevoluteJointDef;  = true; super(); tileX = _arg1; tileY = _arg2; _local3 = new b2BodyDef(); _local3.position.Set((((_arg1 + 0.5) * 64) / 32), (((_arg2 - 0.5) * 64) / 32));  =  (_local3); _local4 = new b2BodyDef(); _local4.position.Set((((_arg1 + 0.5) * 64) / 32), ((_arg2 * 2) + 0.8)); pivot =  (_local4); _local5 = new b2RevoluteJointDef(); _local5.body1 = ; _local5.body2 = pivot; _local5.localAnchor2 = new b2Vec2(0, 0); _local5.collideConnected = false; makeJoint(_local5); setup(false); } override public function advance():void{ var _local1:Number; var _local2:Number; if (!.IsSleeping()){ if (){ _local1 = (Math.round((.GetAngle() / Math.PI)) * Math.PI); _local2 = (_local1 - .GetAngle()); .ApplyTorque((_local2 * 50)); .SetAngularVelocity((.GetAngularVelocity() * 0.95)); } else { .m_angularVelocity = (.m_angularVelocity - 0.005); }; }; } override public function renderBack(_arg1:Viewport):void{ var _local2:Number; var _local3:Number; if (){ return; }; _local2 = ((pivot.GetPosition().x * 32) - _arg1.scrollX); _local3 = ((pivot.GetPosition().y * 32) - _arg1.scrollY); _arg1.blit("seesaw1fulcrum", _local2, _local3); } override public function render(_arg1:Viewport):void{ var _local2:Number; var _local3:Number; _local2 = ((pivot.GetPosition().x * 32) - _arg1.scrollX); _local3 = ((pivot.GetPosition().y * 32) - _arg1.scrollY); if (){ _arg1.drawRotated("seesaw2base", _local2, _local3, .GetAngle()); } else { _arg1.drawRotated("seesaw1base", _local2, _local3, .GetAngle()); }; _arg1.blit("seesawPivot", _local2, _local3); } public function setup(_arg1:Boolean):void{ var _local2:b2PolygonDef; this. = _arg1; _local2 = new b2PolygonDef(); _local2.SetAsBox(2.98, 0.2); if (!_arg1){ _local2.vertices[2].y = (_local2.vertices[2].y + 0.1); _local2.vertices[3].y = (_local2.vertices[3].y + 0.1); _local2.vertices[2].x = (_local2.vertices[2].x - 1); _local2.vertices[3].x = (_local2.vertices[3].x + 1); }; _local2.density = 0.2; _local2.friction = 0.8; _local2.restitution = 0.3; .CreateShape(_local2); .SetMassFromShapes(); if (_arg1){ pivot.SetXForm(new b2Vec2(((tileX + 0.5) * 2), ((tileY * 2) + 0.2)), 0); }; Viewport.prerender("seesawPivot"); if (!_arg1){ Viewport.prerender("seesaw1base"); Viewport.prerender("seesaw1fulcrum"); } else { Viewport.prerender("seesaw2base"); }; } } }//package com.nitrome.flipside.objects
Section 89
//SlidingPlatform (com.nitrome.flipside.objects.SlidingPlatform) package com.nitrome.flipside.objects { import Box2D.Common.Math.*; import com.nitrome.flipside.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; public class SlidingPlatform extends ActiveObject { private var :Number;// = 50 private var :Number; private var :Number; private var  :Number; private var  :Number; private var  :b2Body; private var :b2Body; private var tileX:Number; private var  :Number; private var :Number; private var tileY:Number; private var :Number; private var :Number; public function SlidingPlatform(_arg1:Number, _arg2:Number){ var _local3:b2PolygonDef;  = 50; super();  = newBody(((_arg1 + 0.5) * 2), ((_arg2 + 0.5) * 2));  = newBody(((_arg1 + 0.5) * 2), ((_arg2 + 0.5) * 2)); tileX = _arg1; tileY = _arg2; _local3 = new b2PolygonDef(); _local3.SetAsBox(3, 1); _local3.density = 1; _local3.friction = 1; _local3.filter.maskBits = ~(0x8200); _local3.filter.categoryBits = 0x0200; .CreateShape(_local3); .SetMassFromShapes(); Viewport.prerender("slidingPlatform"); transmitsAI = true; } override public function advance():void{ if ((Controller.frameNumber % ( * 2)) < ){ .SetLinearVelocity(new b2Vec2(( * 2), ( * 2))); } else { .SetLinearVelocity(new b2Vec2((-() * 2), (-() * 2))); }; .WakeUp(); } override public function inheritedAI(_arg1:Car):Boolean{ var _local2:Number; var _local3:Number; var _local4:Number; if (_arg1.getCenterX() < (( * 2) - 10)){ return (false); }; if (_arg1.getCenterX() > (( * 2) + 10)){ return (false); }; if (_arg1.getCenterY() < (( * 2) - 4)){ return (false); }; if (_arg1.getCenterY() > (( * 2) + 4)){ return (false); }; _local2 = (_arg1.getCenterX() - .GetPosition().x); _local3 = (_arg1.getCenterY() - (.GetPosition().y - 1.5)); _local4 = (_arg1.forwardSpeed() - .GetLinearVelocity().x); if ((((Math.abs(_local2) < 6)) && (((( == 0)) || ((Math.abs(_local3) < 2)))))){ if (_local2 > 0){ _arg1.aiInstruction = "i l"; if (_local4 < -4){ _arg1.aiInstruction = "i n"; }; } else { _arg1.aiInstruction = "i r"; if (_local4 > 4){ _arg1.aiInstruction = "i n"; }; }; if ((((Math.abs(_local2) < 2)) && ((Math.abs(_local4) < 3)))){ _arg1.aiInstruction = "i n"; }; } else { if (Math.abs(_local4) > 8){ if (_local4 > 0){ _arg1.aiInstruction = "i l"; } else { _arg1.aiInstruction = "i r"; }; } else { if (Math.abs(_arg1.wheelSpin) > 4){ if (_arg1.wheelSpin > 0){ _arg1.aiInstruction = "i l"; } else { _arg1.aiInstruction = "i r"; }; } else { _arg1.aiInstruction = "i n"; }; }; if (Math.abs(_local3) < 2){ if (.GetPosition().x < (( * 2) + 2)){ _arg1.aiInstruction = "i r"; }; if (.GetPosition().x > (( * 2) - 2)){ _arg1.aiInstruction = "i l"; }; }; }; return (true); } override public function render(_arg1:Viewport):void{ var _local2:Number; var _local3:Number; _local2 = (Math.round((.GetPosition().x * 32)) - _arg1.scrollX); _local3 = (Math.round((.GetPosition().y * 32)) - _arg1.scrollY); _arg1.blit("slidingPlatform", _local2, _local3); } public function setup(_arg1:Number, _arg2:Number):void{ var _local3:b2PrismaticJointDef; _local3 = new b2PrismaticJointDef(); _local3.body1 =  ; _local3.body2 = ; _local3.localAnchor1 = new b2Vec2(); _local3.localAnchor2 = new b2Vec2(); _local3.enableLimit = true; if (_arg1 != 0){ _local3.localAxis1 = new b2Vec2(1, 0); _local3.lowerTranslation = Math.min((_arg1 * 2), 0); _local3.upperTranslation = Math.max((_arg1 * 2), 0); } else { _local3.localAxis1 = new b2Vec2(0, 1); _local3.lowerTranslation = Math.min((_arg2 * 2), 0); _local3.upperTranslation = Math.max((_arg2 * 2), 0); }; makeJoint(_local3);  = ( = _arg1);  = ( = _arg2); if ((Math.abs(_arg1) + Math.abs(_arg2)) > 8){  = ( * 3);  = ( / 3);  = ( / 3); } else { if ((Math.abs(_arg1) + Math.abs(_arg2)) > 4){  = ( * 2);  = ( / 2);  = ( / 2); }; };  = Math.min(tileX, (tileX +  ));  = Math.max(tileX, (tileX +  ));  = Math.min(tileY, (tileY +  ));  = Math.max(tileY, (tileY +  )); } } }//package com.nitrome.flipside.objects
Section 90
//SpinningShape (com.nitrome.flipside.objects.SpinningShape) package com.nitrome.flipside.objects { import Box2D.Common.Math.*; import com.nitrome.flipside.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.*; import Box2D.Collision.Shapes.*; public class SpinningShape extends ActiveObject { public var :b2Body; public var  :Number;// = 0 public var  :Array; public var pivot:b2Body; public var  :Number; public var  :Boolean;// = false public var :Number;// = 0 public var :Number;// = 0 public var :Number;// = 1 public function SpinningShape(_arg1:Number, _arg2:Number){ var _local3:Number; var _local4:Number; var _local5:b2BodyDef; var _local6:b2RevoluteJointDef;  = 1;  = false;  = 0;  = 0;  = 0;  = []; super(); _local3 = (((_arg1 + 0.5) * 64) / 32); _local4 = (((_arg2 + 0.5) * 64) / 32); _local5 = new b2BodyDef(); _local5.position.Set(_local3, _local4); pivot =  (_local5);  =  (_local5); .SetUserData({spinningShape:this, activeObject:this, contactHeld:true}); _local6 = new b2RevoluteJointDef(); _local6.body1 = pivot; _local6.body2 = ; makeJoint(_local6); } override public function advance():void{ if ( > 0){ --; .SetAngularVelocity((-() * 4)); } else { .SetAngularVelocity(); }; if ( ){  ++;  = 0; if ( > 100){  = 50; };  = false; } else { ++; if ( > 5){  = 0; }; };  .push(.GetAngle()); if ( .length > 400){  .splice(0, ( .length - 400)); }; if ((((((((Math.abs(( [0] -  [99])) < ((20 * Math.PI) / 180))) && ((Math.abs(( [0] -  [199])) < ((20 * Math.PI) / 180))))) && ((Math.abs(( [0] -  [299])) < ((20 * Math.PI) / 180))))) && ((Math.abs(( [0] -  [399])) < ((20 * Math.PI) / 180))))){  = true; }; } override public function renderBack(_arg1:Viewport):void{ var _local2:Number; var _local3:Number; _local2 = ((pivot.GetPosition().x * 32) - _arg1.scrollX); _local3 = ((pivot.GetPosition().y * 32) - _arg1.scrollY); if ( == 3){ _arg1.blit("sliceShape1", _local2, _local3); _arg1.drawRotated("sliceShape2", _local2, _local3, .GetAngle()); }; } override public function render(_arg1:Viewport):void{ var _local2:Number; var _local3:Number; _local2 = ((pivot.GetPosition().x * 32) - _arg1.scrollX); _local3 = ((pivot.GetPosition().y * 32) - _arg1.scrollY); if ( == 0){ _arg1.drawRotated("cogShape1", _local2, _local3, .GetAngle()); _arg1.blit("cogShape2", _local2, _local3); } else { if ( == 1){ _arg1.drawRotated("flatShape1", _local2, _local3, .GetAngle()); _arg1.blit("flatShape2", _local2, _local3); } else { if ( == 2){ _arg1.blit("pegShape1", _local2, _local3); _arg1.drawRotated("pegShape2", _local2, _local3, .GetAngle()); } else { if ( == 3){ _arg1.drawRotated("sliceShape3", _local2, _local3, .GetAngle()); }; }; }; }; } override public function contactHeld(_arg1:b2ContactPoint):void{ var _local2:b2Body; var _local3:Car; _local2 = ((_arg1.shape1.m_body == )) ? _arg1.shape2.m_body : _arg1.shape1.m_body; if (((_local2.m_userData) && (_local2.m_userData.car))){ _local3 = (_local2.m_userData.car as Car); if (_local3.tileTouchLastFrame >= (Controller.frameNumber - 2)){  = true; }; }; } public function setup(_arg1:Number, _arg2:Boolean=true):void{ var _local3:b2CircleDef; var _local4:b2PolygonDef; var _local5:b2PolygonDef; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number;  = (_arg2) ? 1 : -1;  = _arg1; if (_arg1 == 0){ _local3 = new b2CircleDef(); _local3.radius = 2; _local3.density = 1; _local3.friction = 0.8; _local3.filter.maskBits = ~(0x8100); _local3.filter.categoryBits = 0x0100; .CreateShape(_local3); .SetMassFromShapes(); _local6 = 0; while (_local6 < 8) { _local7 = (45 * _local6); _local8 = ((_local7 * Math.PI) / 180); _local5 = new b2PolygonDef(); _local5.vertexCount = 4; _local5.vertices[0] = new b2Vec2((Math.cos((_local8 - 0.1)) * 2.5), (Math.sin((_local8 - 0.1)) * 2.5)); _local5.vertices[1] = new b2Vec2((Math.cos((_local8 + 0.1)) * 2.5), (Math.sin((_local8 + 0.1)) * 2.5)); _local5.vertices[2] = new b2Vec2((Math.cos((_local8 + 0.25)) * 2), (Math.sin((_local8 + 0.25)) * 2)); _local5.vertices[3] = new b2Vec2((Math.cos((_local8 - 0.25)) * 2), (Math.sin((_local8 - 0.25)) * 2)); _local5.filter.maskBits = ~(0x8100); _local5.filter.categoryBits = 0x0100; .CreateShape(_local5); _local6++; }; Viewport.prerender("cogShape1"); Viewport.prerender("cogShape2"); } else { if (_arg1 == 1){ _local4 = new b2PolygonDef(); _local4.SetAsBox(2.5, 0.5); _local4.density = 1; _local4.friction = 0.8; _local4.filter.maskBits = ~(0x8100); _local4.filter.categoryBits = 0x0100; .CreateShape(_local4); .SetMassFromShapes(); Viewport.prerender("flatShape1"); Viewport.prerender("flatShape2"); } else { if (_arg1 == 2){ _local3 = new b2CircleDef(); _local3.radius = 2; _local3.density = 1; _local3.friction = 0.8; _local3.filter.maskBits = ~(0x8100); _local3.filter.categoryBits = 0x0100; .CreateShape(_local3); .SetMassFromShapes(); _local4 = new b2PolygonDef(); _local4.SetAsOrientedBox(1.5, 0.5, new b2Vec2(3, 0)); _local4.density = 1; _local4.friction = 0.8; _local4.filter.maskBits = ~(0x8100); _local4.filter.categoryBits = 0x0100; .CreateShape(_local4); .SetMassFromShapes(); Viewport.prerender("pegShape1"); Viewport.prerender("pegShape2"); } else { if (_arg1 == 3){ _local9 = 0; while (_local9 < 360) { _local5 = new b2PolygonDef(); _local10 = (((30 + _local9) * Math.PI) / 180); _local11 = (((150 + _local9) * Math.PI) / 180); _local5.vertexCount = 8; _local6 = 0; while (_local6 < 8) { _local7 = (_local10 + ((_local11 - _local10) * (_local6 / 7))); _local5.vertices[_local6] = new b2Vec2((2.8 * Math.cos(_local7)), (2.8 * Math.sin(_local7))); _local6++; }; _local5.density = 1; _local5.friction = 0.8; _local5.filter.maskBits = ~(0x8100); _local5.filter.categoryBits = 0x0100; .CreateShape(_local5); _local9 = (_local9 + 180); }; .SetMassFromShapes(); Viewport.prerender("sliceShape1"); Viewport.prerender("sliceShape2"); Viewport.prerender("sliceShape3"); }; }; }; }; } } }//package com.nitrome.flipside.objects
Section 91
//Trapdoor (com.nitrome.flipside.objects.Trapdoor) package com.nitrome.flipside.objects { import Box2D.Common.Math.*; import com.nitrome.flipside.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; public class Trapdoor extends ActiveObject { private var number:Number;// = 0 private var  :b2Body; private var :b2Body; private var :Boolean;// = false public function Trapdoor(_arg1:Number, _arg2:Number){ var _local3:b2PolygonDef; var _local4:b2RevoluteJointDef; number = 0;  = false; super();  = newBody(((_arg1 + 1) * 2), ((_arg2 * 2) + 0.2));  = newBody(((_arg1 + 1) * 2), ((_arg2 * 2) + 0.2)); _local3 = new b2PolygonDef(); _local3.SetAsOrientedBox(3, 0.2, new b2Vec2(-3, 0)); _local3.vertices[3].x = (_local3.vertices[3].x + 0.1); _local3.density = 0.05; _local3.friction = 1; _local3.restitution = 0; _local3.filter.maskBits = ~(0x8000); .CreateShape(_local3); .SetMassFromShapes(); _local4 = new b2RevoluteJointDef(); _local4.body1 = ; _local4.body2 =  ; _local4.localAnchor1 = new b2Vec2(); _local4.localAnchor2 = new b2Vec2(); _local4.enableLimit = true; _local4.  = 0; _local4.  = (Math.PI / 2); makeJoint(_local4); Viewport.prerender("trapdoor"); Viewport.prerender("drawbridge2"); Viewport.prerender("smallGreenLight"); Viewport.prerender("smallPurpleLight"); } override public function advance():void{ if (Button.buttonDown[number] != ){ if (.GetAngle() > (-(Math.PI) / 2)){ .SetAngularVelocity(-10); .WakeUp(); } else { .SetAngularVelocity(0); }; } else { if (.GetAngle() < 0){ .SetAngularVelocity(10); .WakeUp(); } else { .SetAngularVelocity(0); .SetXForm( .GetPosition(), 0); .PutToSleep(); }; }; } override public function render(_arg1:Viewport):void{ var _local2:Number; var _local3:Number; var _local4:b2Vec2; _local2 = ((.GetPosition().x * 32) - _arg1.scrollX); _local3 = ((.GetPosition().y * 32) - _arg1.scrollY); _arg1.drawRotated("trapdoor", _local2, _local3, .GetAngle()); _local2 = (( .GetPosition().x * 32) - _arg1.scrollX); _local3 = (( .GetPosition().y * 32) - _arg1.scrollY); _arg1.drawRotated("drawbridge2", _local2, _local3, .GetAngle()); _local4 = .GetWorldPoint(new b2Vec2(-4.87, -0.12)); _local2 = ((_local4.x * 32) - _arg1.scrollX); _local3 = ((_local4.y * 32) - _arg1.scrollY); _arg1.blit((Button.buttonDown[number]) ? "smallGreenLight" : "smallPurpleLight", _local2, _local3); } public function setup(_arg1:Number, _arg2:Boolean):void{ this.number = _arg1; this. = _arg2; } } }//package com.nitrome.flipside.objects
Section 92
//Turnstile (com.nitrome.flipside.objects.Turnstile) package com.nitrome.flipside.objects { import Box2D.Common.Math.*; import com.nitrome.flipside.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; import com.nitrome.util.*; public class Turnstile extends ActiveObject { private var :b2Body; public function Turnstile(_arg1:Number, _arg2:Number){ var _local3:Number; var _local4:Number; var _local5:b2BodyDef; var _local6:b2PolygonDef; var _local7:Number; var _local8:b2Body; var _local9:b2RevoluteJointDef; var _local10:Number; super(); _local3 = ((_arg1 * 64) / 32); _local4 = ((_arg2 * 64) / 32); _local5 = new b2BodyDef(); _local5.position.Set(_local3, _local4);  =  (_local5); _local6 = new b2PolygonDef(); _local7 = 0; while (_local7 < 3) { _local10 = (((Math.PI * 2) * _local7) / 3); _local6.SetAsOrientedBox((70 / 32), (8 / 32), new b2Vec2(((Math.cos(_local10) * 70) / 32), ((Math.sin(_local10) * 70) / 32)), _local10); _local6.density = 4; _local6.restitution = 0.8; _local6.filter.maskBits = ~(0x8000); .CreateShape(_local6); _local7++; }; .SetMassFromShapes(); _local8 =  (_local5); _local9 = new b2RevoluteJointDef(); _local9.body1 = ; _local9.body2 = _local8; _local9.localAnchor1 = new b2Vec2(); _local9.localAnchor2 = new b2Vec2(); makeJoint(_local9); Viewport.prerender("turnstileBlade"); Viewport.prerender("turnstileCenter1"); Viewport.prerender("turnstileCenter2"); } override public function advance():void{ applyGravity(); if (!.IsSleeping()){ .SetAngularVelocity(Global.slide(.GetAngularVelocity(), 0, 0.0005)); }; } override public function render(_arg1:Viewport):void{ var _local2:Number; var _local3:Number; _local2 = ((.GetPosition().x * 32) - _arg1.scrollX); _local3 = ((.GetPosition().y * 32) - _arg1.scrollY); _arg1.drawRotated("turnstileBlade", _local2, _local3, .GetAngle()); _arg1.drawRotated("turnstileBlade", _local2, _local3, (.GetAngle() + ((Math.PI * 2) / 3))); _arg1.drawRotated("turnstileBlade", _local2, _local3, (.GetAngle() + ((Math.PI * 4) / 3))); _arg1.drawRotated("turnstileCenter1", _local2, _local3, .GetAngle()); _arg1.drawRotated("turnstileCenter2", _local2, _local3, .GetAngle()); } } }//package com.nitrome.flipside.objects
Section 93
//WreckingBall (com.nitrome.flipside.objects.WreckingBall) package com.nitrome.flipside.objects { import Box2D.Common.Math.*; import com.nitrome.flipside.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; import com.nitrome.util.*; public class WreckingBall extends ActiveObject { private var  :Array; private var  :b2RevoluteJoint; private var  :b2Body; private var :b2Body; private var  :Number;// = 0 public function WreckingBall(_arg1:Number, _arg2:Number){ var _local3:b2CircleDef; var _local4:b2RevoluteJointDef;  = [];  = 0; super();  = newBody(((_arg1 + 0.5) * 2), ((_arg2 + 3.5) * 2));  = newBody(((_arg1 + 0.5) * 2), ((_arg2 + 0.5) * 2)); _local3 = new b2CircleDef(); _local3.radius = 1; _local3.density = 3; _local3.friction = 1; _local3.restitution = 1.5; .CreateShape(_local3); .SetMassFromShapes(); .SetAngularVelocity(0.01); _local4 = new b2RevoluteJointDef(); _local4.body1 = ; _local4.body2 =  ; _local4.localAnchor1 = new b2Vec2(0, (-6 + (4 / 32)));  = (makeJoint(_local4) as b2RevoluteJoint); Viewport.prerender("wreckingBall"); Viewport.prerender("hangingPlatformAnchor"); } override public function advance():void{ var _local1:Number; if (Math.abs(.GetAngle()) < (Math.PI / 4)){ _local1 = (Global.sign(.GetAngularVelocity()) * 1.2); .SetAngularVelocity(Global.slide(.GetAngularVelocity(), _local1, 0.1)); }; applyGravity(); .WakeUp(); if ( > 0){  --; }; if ((Controller.frameNumber % 10) == 0){  .push(.GetAngle()); if ( .length > 100){  .splice(0, ( .length - 100)); }; if ((((((((Math.abs(( [0] -  [24])) < ((5 * Math.PI) / 180))) && ((Math.abs(( [0] -  [49])) < ((5 * Math.PI) / 180))))) && ((Math.abs(( [0] -  [74])) < ((5 * Math.PI) / 180))))) && ((Math.abs(( [0] -  [99])) < ((5 * Math.PI) / 180))))){ if ( < 1){ .SetAngularVelocity((50 * Global.sign(.GetAngle())));  = 200; }; }; }; } override public function render(_arg1:Viewport):void{ var _local2:Number; var _local3:Number; _local2 = (( .GetPosition().x * 32) - _arg1.scrollX); _local3 = (( .GetPosition().y * 32) - _arg1.scrollY); _arg1.drawRotated("wreckingBall", _local2, _local3, .GetAngle()); _arg1.blit("hangingPlatformAnchor", _local2, _local3); } } }//package com.nitrome.flipside.objects
Section 94
//ActiveObject (com.nitrome.flipside.ActiveObject) package com.nitrome.flipside { import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.*; public class ActiveObject { private var  :Array; public var transmitsAI:Boolean;// = false private var  :Array; private static var tempVector:b2Vec2 = new b2Vec2(); public function ActiveObject(){  = [];   = []; transmitsAI = false; super(); } public function destroy():void{ var _local1:Number; _local1 = 0; while (_local1 <  .length) { Controller.world.DestroyJoint( [_local1]); _local1++; };   = []; _local1 = 0; while (_local1 <  .length) { Controller.world.DestroyBody( [_local1]); _local1++; };  = []; } public function advance():void{ } public function contactHeld(_arg1:b2ContactPoint):void{ } public function  (_arg1:b2BodyDef):b2Body{ var _local2:b2Body; _local2 = Controller.world.CreateBody(_arg1);  .push(_local2); return (_local2); } public function newBody(_arg1:Number, _arg2:Number):b2Body{ var _local3:b2BodyDef; _local3 = new b2BodyDef(); _local3.position.Set(_arg1, _arg2); return ( (_local3)); } public function contactLost(_arg1:b2ContactPoint):void{ } public function contactMade(_arg1:b2ContactPoint):void{ } public function render(_arg1:Viewport):void{ } public function inheritedAI(_arg1:Car):Boolean{ return (false); } public function makeJoint(_arg1:b2JointDef):b2Joint{ var _local2:b2Joint; _local2 = Controller.world.CreateJoint(_arg1);  .push(_local2); return (_local2); } public function renderBack(_arg1:Viewport):void{ } public static function applyGravity(_arg1:b2Body, _arg2:b2Vec2=null):void{ if (((!(_arg1.IsSleeping())) && (!(_arg1.IsStatic())))){ if (!_arg2){ tempVector.x = 0; tempVector.y = (10 * _arg1.()); } else { tempVector.x = ((_arg2.x * 10) * _arg1.m_mass); tempVector.y = ((_arg2.y * 10) * _arg1.m_mass); }; _arg1.ApplyForce(tempVector, _arg1.GetWorldCenter()); }; } } }//package com.nitrome.flipside
Section 95
//Car (com.nitrome.flipside.Car) package com.nitrome.flipside { import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.*; import Box2D.Collision.Shapes.*; import flash.geom.*; import Box2D.Dynamics.Contacts.*; import com.nitrome.game.*; import com.nitrome.util.*; import flash.ui.*; public class Car extends ActiveObject { private const axleThickness:Number = 0.2; private const wheelRadius:Number = 0.515625; private const axleLength:Number = 1.90625; public var  :Number;// = 0 public var  :Number;// = 0 public var  :Boolean;// = false public var boostTime:Number;// = 0 public var  :Boolean;// = false public var  :Number;// = 1 public var downforceDisabled:Number;// = 0 public var rank:Number; public var  :Number;// = -1 public var  :b2Body; public var  :b2Body; public var  :b2RevoluteJoint; public var wheelSpin:Number;// = 0 public var tileTouchLastFrame:Number;// = 0 public var  :Number;// = 0.15 public var  :b2RevoluteJoint; public var aiInstruction:String;// = "r" public var  :Boolean;// = false public var  :Boolean;// = false public var  :Boolean;// = true public var nextGate:Gate;// = null public var linearPosition:Number;// = 0 public var  :Number;// = 0 public var finished:Boolean;// = false public var :Number;// = 0 public var :Number;// = 0 public var finishFrameNumber:Number;// = 0 public var :Number;// = 0 public var lightTrail:LightTrail; public var  :Number;// = 0 public var lap:Number;// = 0 public var lightTrail2:LightTrail; public var :Number;// = 0 public var :Number;// = 0 public var :Number;// = 32 public var :Number;// = 12 public var :b2Vec2;// = null public var :b2Vec2;// = null public var  :b2Body;// = null public var  :b2Body;// = null public var index:Number; public var :Number;// = -1 public var :Number;// = -1 public var axle:b2Body; public static const MAG_TIME:Number = 32; public static const RESTORED_ANIM_DURATION:Number = 40; public static const DESTROYED_ANIM_DURATION:Number = 40; public function Car(_arg1:Number, _arg2:Number){ var _local3:b2BodyDef; var _local4:Number; var _local5:Number; var _local6:b2CircleDef; var _local7:b2PolygonDef; var _local8:b2RevoluteJointDef; var _local9:b2RevoluteJointDef; var _local10:Number; wheelSpin = 0;   = 0.15;  = 32;  = 12; boostTime = 0;  = 0;  = 0;  = null;  = null;  = null;  = null;   = false;  = false;   = 0;   = 0; tileTouchLastFrame = 0; aiInstruction = "r";  = -1;  = true;  = -1;  = -1;   = false;   = 1;  = 0;   = 0; downforceDisabled = 0; linearPosition = 0; nextGate = null; lap = 0;  = 0; finished = false; finishFrameNumber = 0;  = 0;   = false;  = 0; super(); Controller.cars.push(this); index = (Controller.cars.length - 1); _local3 = new b2BodyDef(); _local3.userData = {car:this, activeObject:this, contactMade:true, contactHeld:true, contactLost:true}; _local4 = (((_arg1 + 0.5) * 64) / 32); _local5 = ((_arg2 * 64) / 32); _local5 = (_local5 + (2 - wheelRadius)); _local3.position.Set((_local4 - 0.75), _local5);   =  (_local3); _local3.position.Set((_local4 + 0.75), _local5);   =  (_local3); _local3.position.Set(_local4, _local5); axle =  (_local3); _local6 = new b2CircleDef(); _local6.radius = wheelRadius; _local6.density = 1; _local6.friction = 1; _local6.restitution = 0.3; _local6.filter.categoryBits = 2;  .CreateShape(_local6);  .CreateShape(_local6);  .SetMassFromShapes();  .SetMassFromShapes(); _local7 = new b2PolygonDef(); _local7.SetAsBox((axleLength / 2), (axleThickness / 2)); _local7.density = 1; _local7.friction = 0.8; _local7.restitution = 0.3; _local7.filter.categoryBits = 2; axle.CreateShape(_local7); axle.SetMassFromShapes(); _local8 = new b2RevoluteJointDef(); _local8.body1 =  ; _local8.body2 = axle; _local8.localAnchor1 = new b2Vec2(0, 0); _local8.localAnchor2 = new b2Vec2((-(axleLength) / 2), 0); _local8.collideConnected = false;   = (makeJoint(_local8) as b2RevoluteJoint); _local9 = new b2RevoluteJointDef(); _local9.body1 =  ; _local9.body2 = axle; _local9.localAnchor1 = new b2Vec2(0, 0); _local9.localAnchor2 = new b2Vec2((axleLength / 2), 0); _local9.collideConnected = false;   = (makeJoint(_local9) as b2RevoluteJoint); Viewport.prerender((("bike" + index) + "Wheel")); Viewport.prerender((("bike" + index) + "WheelLines")); Viewport.prerender((("bike" + index) + "Rider")); Viewport.prerender((("bike" + index) + "Chassis")); Viewport.prerender((("bike" + index) + "ChassisNumbers")); Viewport.prerender((("bike" + index) + "ChassisShine")); Viewport.prerender("bikeArrows"); nextGate = Controller.level. ; lightTrail = new LightTrail(); lightTrail2 = new LightTrail(); switch (index){ case 0: _local10 = 0xFFFF; break; case 1: _local10 = 0xE2E2E2; break; case 2: _local10 = 3407743; break; case 3: _local10 = 13526514; break; }; lightTrail.(_local10); lightTrail2.(_local10); } public function  ():void{ var _local1:b2Vec2; var _local2:Number; var _local3:Number; var _local4:Car; var _local5:Number; var _local6:Number; var _local7:Number; axle.SetLinearVelocity(new b2Vec2(0, 0));  .SetLinearVelocity(new b2Vec2(0, 0));  .SetLinearVelocity(new b2Vec2(0, 0)); axle.SetAngularVelocity(((Math.random() - 0.5) * 100));  .SetAngularVelocity(0);  .SetAngularVelocity(0); if ( < 2){ _local1 = nextGate.lastGate.centerPoint; _local2 = ((axleLength + wheelRadius) * 0.7); _local3 = 0; while (_local3 < Controller.cars.length) { _local4 = Controller.cars[_local3]; if (_local4 != this){ _local5 = (_local4.getCenterX() - _local1.x); _local6 = (_local4.getCenterY() - _local1.y); _local7 = ((_local5 * _local5) + (_local6 * _local6)); if (_local7 < (_local2 * _local2)){ return; }; }; _local3++; };  = 0; axle.SetXForm(_local1.Copy(), 0);  .SetXForm(new b2Vec2((_local1.x - (axleLength / 2)), _local1.y), 0);  .SetXForm(new b2Vec2((_local1.x + (axleLength / 2)), _local1.y), 0); axle.SetAngularVelocity(0); } else { --; }; } public function  (_arg1:Number):Array{ var _local2:Array; var _local3:Car; var _local4:b2Vec2; _local2 = []; for each (_local3 in Controller.cars) { if (_local3 != this){ _local4 = axle.GetPosition().Copy(); _local4.Subtract(_local3.axle.GetPosition()); if (_local4.LengthSquared() < (_arg1 * _arg1)){ _local2.push(_local3); }; }; }; return (_local2); } public function  ():Boolean{ var _local1:b2Vec2; var _local2:b2Vec2; var _local3:b2Vec2; if (((!()) || (!()))){ return (false); }; _local1 =  .GetPosition().Copy(); _local1.Subtract( .GetPosition()); _local1.Normalize(); _local2 = .Copy(); _local2.Add(); _local2.Multiply(0.5); _local3 = new b2Vec2(-(_local1.y), _local1.x); return ((b2Math.b2Dot(_local3,  .GetPosition()) > b2Math.b2Dot(_local3, _local2))); } public function  ():b2Vec2{ return (axle.GetLinearVelocity()); } override public function contactMade(_arg1:b2ContactPoint):void{ var _local2:b2Shape; var _local3:b2Shape; var _local4:Car; if ((((_arg1.shape1.m_body ==  )) || ((_arg1.shape1.m_body ==  )))){ _local2 = _arg1.shape1; _local3 = _arg1.shape2; } else { if ((((_arg1.shape2.m_body ==  )) || ((_arg1.shape2.m_body ==  )))){ _local2 = _arg1.shape2; _local3 = _arg1.shape1; } else { return; }; }; if (_local2.m_body ==  ){  = _arg1.position;  = _local3.m_body;   = true; } else {  = _arg1.position;  = _local3.m_body;  = true; }; if (((_local3.m_body.m_userData) && (_local3.m_body.m_userData.tile))){ tileTouchLastFrame = Controller.frameNumber; }; if (((_local3.m_body.m_userData) && (_local3.m_body.m_userData.car))){ _local4 = (_local3.m_body.m_userData.car as Car); if ( < _local4. ){ aiInstruction = _local4.aiInstruction;  = _local4. ; } else { _local4.aiInstruction = aiInstruction; _local4. =  ; }; }; } override public function contactLost(_arg1:b2ContactPoint):void{ var _local2:b2Shape; var _local3:b2Shape; if ((((_arg1.shape1.m_body ==  )) || ((_arg1.shape1.m_body ==  )))){ _local2 = _arg1.shape1; _local3 = _arg1.shape2; } else { if ((((_arg1.shape2.m_body ==  )) || ((_arg1.shape2.m_body ==  )))){ _local2 = _arg1.shape2; _local3 = _arg1.shape1; } else { return; }; }; if (_local2.m_body ==  ){ if (_local3.m_body ==  ){   = false; }; } else { if (_local3.m_body ==  ){  = false; }; }; } public function getCenterX():Number{ return (axle.GetWorldCenter().x); } override public function contactHeld(_arg1:b2ContactPoint):void{ var _local2:b2Shape; var _local3:b2Shape; if ((((_arg1.shape1.m_body ==  )) || ((_arg1.shape1.m_body ==  )))){ _local2 = _arg1.shape1; _local3 = _arg1.shape2; } else { if ((((_arg1.shape2.m_body ==  )) || ((_arg1.shape2.m_body ==  )))){ _local2 = _arg1.shape2; _local3 = _arg1.shape1; } else { return; }; }; if (_local2.m_body ==  ){  = _arg1.position;  = _local3.m_body;   = true; } else {  = _arg1.position;  = _local3.m_body;  = true; }; if (((_local3.m_body.m_userData) && (_local3.m_body.m_userData.tile))){ tileTouchLastFrame = Controller.frameNumber; }; } public function getCenterY():Number{ return (axle.GetWorldCenter().y); } public function ():void{ if (finished){ return; }; finished = true; finishFrameNumber = Controller.frameNumber; if (Controller.multiplayerGame){ if (rank == 2){ if (index == 1){ Controller.player1Score++; } else { Controller.player2Score++; }; }; } else { if (index == 0){ if (rank == 1){ Score.value = (Score.value + Controller.levelScore()); NitromeGame.setLevelUnlocked((Controller.level.number + 1)); }; }; }; } override public function advance():void{ if ( > 0){  (); } else { if ( > 0){ (); }; };  ();  (); (); (); ();  = Controller.frameNumber; } public function ():void{ --; } public function ():void{ var _local1:Number; var _local2:Boolean; var _local3:b2Vec2; _local1 = forwardSpeed(); if ((((((_local1 < )) || ((  > MAG_TIME)))) || ((  > MAG_TIME)))){ if ((((Math.abs(axle.GetLinearVelocity().x) > 2)) && ((Math.abs(_local1) > 2)))){   = (forwardSpeed() < 0); }; if ( ()){   = 180; } else {   = 0; }; };  = ((( -  ) * 0.95) +  ); if (Controller.frameNumber != ){   = Global.slide( , ( ) ? 5 : 1, 1); }; _local2 =  (); _local3 = (((_local1 > 0))!=_local2) ?   :  .GetPosition().Copy(); _local3.Add(axle.GetWorldVector(new b2Vec2(0, (_local2) ? 0.2 : -0.2))); lightTrail.pushPosition(_local3, Math.abs((_local1 / 16))); lightTrail.length = Global.slide(lightTrail.length, Math.abs(((60 * _local1) / 16)), 2); _local3 = (((_local1 > 0))!=_local2) ?   :  .GetPosition().Copy(); _local3.Add(axle.GetWorldVector(new b2Vec2(0, (_local2) ? -0.2 : 0.2))); lightTrail2.pushPosition(_local3, Math.abs((_local1 / 16))); lightTrail2.length = Global.slide(lightTrail2.length, Math.abs(((32 * _local1) / 16)), 2); if ((((((((((Controller.introTime > 50)) && ((Controller.introTime < 110)))) && ((index == 0)))) && (!(Controller.demoGame)))) && (!(Controller.multiplayerGame)))){  = 2; } else { if ( > 0){  = ( - 0.02); }; }; } public function  (_arg1:Number):b2Vec2{ var _local2:b2Vec2; var _local3:b2Vec2; _local2 = axle.GetPosition().Copy(); _local3 = axle.GetLinearVelocity().Copy(); _local3.Multiply(_arg1); _local2.Add(_local3); return (_local2); } override public function render(_arg1:Viewport):void{ var _local2:Number; var _local3:Number; var _local4:Number; var _local5:ColorTransform; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:ColorTransform; var _local10:Number; var _local11:b2Body; var _local12:b2Vec2; var _local13:Number; var _local14:Number; _local2 = (Math.floor((axle.GetPosition().x * 32)) - _arg1.scrollX); _local3 = (Math.floor((axle.GetPosition().y * 32)) - _arg1.scrollY); if (_local2 < -100){ return; }; if (_local2 > 650){ return; }; if (_local3 < -100){ return; }; if (_local3 > 500){ return; }; _local4 = axle.GetAngle(); _local5 = null; if ( > 0){ if ( == 1){ _local5 = Global.whiteOut(0); } else { _local5 = Global.whiteOut(( / DESTROYED_ANIM_DURATION)); }; } else { if ( > 0){ _local5 = Global.whiteOut((1 - ( / RESTORED_ANIM_DURATION))); }; }; _local6 = 0; while (_local6 < 2) { _local11 = ((_local6 == 0)) ?   :  ; _local12 = axle.GetWorldPoint(new b2Vec2((((_local6 == 0)) ? 31 : -32 / 32), 0)); _local13 = (Math.floor((_local12.x * 32)) - _arg1.scrollX); _local14 = (Math.floor((_local12.y * 32)) - _arg1.scrollY); _arg1.drawRotated((("bike" + index) + "Wheel"), _local13, _local14, 0, _local5); _arg1.drawRotated((("bike" + index) + "WheelLines"), _local13, _local14, _local11.GetAngle(), _local5); _local6++; }; _local7 = (axle.GetAngle() % (Math.PI * 2)); if (_local7 < -(Math.PI)){ _local7 = (_local7 + (Math.PI * 2)); }; if (_local7 > Math.PI){ _local7 = (_local7 - (Math.PI * 2)); }; _local8 = (1 - Math.abs((_local7 / Math.PI))); _local9 = new ColorTransform(1, 1, 1, _local8); if (_local5){ _local9.concat(_local5); }; _arg1.drawRotated((("bike" + index) + "Chassis"), _local2, _local3, (_local4 + Math.PI), _local5); _arg1.drawRotated((("bike" + index) + "Chassis"), _local2, _local3, _local4, _local9); _arg1.drawRotated((("bike" + index) + "ChassisNumbers"), _local2, _local3, _local4, _local5); _arg1.drawRotated(((("bike" + index) + "Rider-") +  .toString()), _local2, _local3, (_local4 + (( * Math.PI) / 180)), _local5); _arg1.drawRotated((("bike" + index) + "ChassisShine"), _local2, _local3, 0, _local5, "lighten"); _local10 = ; if (_local10 > 1){ _local10 = 1; }; if (_local10 > 0){ _arg1.drawRotated("bikeArrows", _local2, _local3, 0, new ColorTransform(1, 1, 1, )); }; } public function  ():b2Vec2{ return (axle.GetPosition()); } public function ():void{ var _local1:b2Vec2; var _local2:String; if (nextGate){ _local1 = axle.GetPosition(); if (((nextGate.after(_local1)) && (nextGate.aligned(_local1)))){ if (((((nextGate.isFirst) && (!(finished)))) && (!(Controller.demoGame)))){ lap++; if (lap == (Controller.level.totalLaps + 1)){ if (index == 0){ Controller.overlay.doOverlay("finish"); } else { if ((((index == 1)) && (Controller.multiplayerGame))){ Controller.overlay2.doOverlay("finish"); }; }; (); } else { if ((((lap == ( + 1))) && ((lap > 1)))){ _local2 = ("lap" + lap.toString()); if (lap == Controller.level.totalLaps){ _local2 = "finallap"; }; if (index == 0){ Controller.overlay.doOverlay(_local2); } else { if ((((index == 1)) && (Controller.multiplayerGame))){ Controller.overlay2.doOverlay(_local2); }; }; }; }; if (lap >  ){  = lap; }; }; nextGate = nextGate.nextGate; }; if (((!(nextGate.lastGate.after(_local1))) && (nextGate.lastGate.aligned(_local1)))){ if (((nextGate.lastGate.isFirst) && (!(finished)))){ lap--; }; nextGate = nextGate.lastGate; }; }; } public function ():void{ var _local1:b2Vec2; var _local2:b2Vec2; var _local3:Number; var _local4:b2Vec2; var _local5:Array; var _local6:Number; var _local7:b2Body; var _local8:b2Vec2; var _local9:b2Vec2; if ( ){   = 0; } else {  ++; }; if ( ){   = 0; } else {  ++; }; if ((((( .IsSleeping()) && ( .IsSleeping()))) && (axle.IsSleeping()))){ return; }; _local1 =  .GetWorldCenter().Copy(); _local1.Subtract( .GetWorldCenter()); _local1.Normalize(); _local2 = axle.GetLinearVelocity(); _local3 = b2Math.b2Dot(_local1, _local2); downforceDisabled--; if ((((((((Math.abs(_local3) > )) && ((downforceDisabled < 0)))) && ())) && ())){ _local4 = new b2Vec2(-(_local1.y), _local1.x); if (b2Math.b2Dot(_local4, ) < b2Math.b2Dot(_local4,  .GetPosition())){ _local4.Multiply(-1); }; _local5 = [ ,  ]; _local6 = ((33 * 0.5) / 32); for each (_local7 in _local5) { _local8 = _local4.Copy(); _local8.Multiply((_local6 + 0.5)); _local8.Add(_local7.GetPosition()); if ((_local8)){ _local9 = _local4.Copy(); _local9.Multiply(20); applyGravity(_local7, _local9); }; }; }; applyGravity( ); applyGravity( ); applyGravity(axle); } public function (_arg1:b2Vec2):b2Shape{ var _local2:b2AABB; var _local3:Array; var _local4:b2Shape; _local2 = new b2AABB(); _local2.lowerBound.Set((_arg1.x - 0.01), (_arg1.y - 0.01)); _local2.upperBound.Set((_arg1.x + 0.01), (_arg1.y + 0.01)); _local3 = new Array(); if (Controller.world.Query(_local2, _local3, 1000) == 0){ return (null); }; for each (_local4 in _local3) { if (_local4.TestPoint(_local4.m_body.GetXForm(), _arg1)){ return (_local4); }; }; return (null); } public function forwardSpeed():Number{ var _local1:b2Vec2; var _local2:b2Vec2; var _local3:Boolean; var _local4:Number; _local1 =  .GetPosition().Copy(); _local1.Subtract( .GetPosition()); _local1.Normalize(); _local2 = new b2Vec2(-(_local1.y), _local1.x); _local3 = () ? (b2Math.b2Dot(_local2,  .GetPosition()) > b2Math.b2Dot(_local2, )) : false; _local4 = b2Math.b2Dot(axle.GetLinearVelocity(), _local1); return (( ()) ? -(_local4) : _local4); } public function  ():void{ var _local1:Boolean; var _local2:Boolean; var _local3:Boolean; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:String; var _local8:String; var _local9:Number; var _local10:ActiveObject; var _local11:b2Vec2; _local1 = false; _local2 = false; _local3 = false; if ((((((index == 0)) && (!(finished)))) && (!(Controller.demoGame)))){ _local1 = Key.isDown(Keyboard.LEFT); _local2 = Key.isDown(Keyboard.RIGHT); _local3 = Key.isDown(Keyboard.UP); if (!Controller.multiplayerGame){ _local1 = ((_local1) || (Key.isDown("A".charCodeAt(0)))); _local2 = ((_local2) || (Key.isDown("D".charCodeAt(0)))); _local3 = ((_local3) || (Key.isDown("W".charCodeAt(0)))); }; } else { if ((((((((index == 1)) && (Controller.multiplayerGame))) && (!(finished)))) && (!(Controller.demoGame)))){ _local1 = Key.isDown("A".charCodeAt(0)); _local2 = Key.isDown("D".charCodeAt(0)); _local3 = Key.isDown("W".charCodeAt(0)); } else { _local5 = Math.floor(((axle.GetPosition().x * 32) / 64)); _local6 = Math.floor(((axle.GetPosition().y * 32) / 64)); if (((!((_local5 == ))) || (!((_local6 == ))))){ if (Controller.level.instructionGrid[_local5][_local6]){ _local8 = Controller.level.instructionGrid[_local5][_local6]; if ((((_local8 == "be")) || ((_local8 == "bd")))){  = (_local8 == "be"); } else { if (_local8 != aiInstruction){ aiInstruction = _local8;  = Controller.frameNumber; }; }; }; }; _local7 = aiInstruction; if (_local7.substr(0, 1) == "i"){ aiInstruction = "i r"; _local9 = 0; while (_local9 < Controller.level.activeList.length) { _local10 = Controller.level.activeList[_local9]; if (_local10.transmitsAI){ //unresolved if }; _local9++; }; _local7 = aiInstruction.substr(2); }; if (_local7 == "r"){ _local1 = false; _local2 = true; _local3 = false; } else { if (_local7 == "l"){ _local1 = true; _local2 = false; _local3 = false; } else { if (_local7 == "rf"){ _local2 = (forwardSpeed() > ( / 2)); _local1 = !(_local2); _local3 = false; } else { if (_local7 == "lf"){ _local1 = (forwardSpeed() < (-() / 2)); _local2 = !(_local1); _local3 = false; } else { if (_local7 == "ls"){ _local1 = (wheelSpin > -8); _local2 = !(_local1); _local3 = false; } else { if (_local7 == "rs"){ _local2 = (wheelSpin < 8); _local1 = !(_local2); _local3 = false; } else { if (_local7 == "n"){ _local3 = false; _local2 = _local3; _local1 = _local2; } else { if (_local7 == "j"){ _local2 = false; _local1 = _local2; _local3 = true; } else { if (_local7 == "jl"){ if (forwardSpeed() < 0){ _local3 = true; } else { _local2 = true; }; } else { if (_local7 == "jr"){ if (forwardSpeed() > 0){ _local3 = true; } else { _local1 = true; }; } else { trace((("UNRECOGNISED INSTRUCTION: [" + aiInstruction) + "]")); }; }; }; }; }; }; }; }; }; }; }; }; if (Controller.introTime < Controller.INTRO_DURATION){ _local3 = false; _local2 = _local3; _local1 = _local2; }; if (((_local3) && (!( )))){ if ((((  <= 2)) && ((  <= 2)))){ _local11 = axle.GetWorldVector(new b2Vec2(0, ( ()) ? (350 * 3) : (-350 * 3)));  .ApplyForce(_local11,  .GetWorldCenter());  .ApplyForce(_local11,  .GetWorldCenter());   = (MAG_TIME + 2);   = (MAG_TIME + 2); downforceDisabled = 20;   = true; }; } else { if (!_local3){   = false; }; }; if (boostTime > 0){ boostTime--; }; _local4 = 0; if (_local2){ _local4 = ; wheelSpin = Math.max(wheelSpin,  .m_angularVelocity); } else { if (_local1){ _local4 = -(); wheelSpin = Math.min(wheelSpin,  .m_angularVelocity); }; }; wheelSpin = Global.slide(wheelSpin, _local4,  ); if (_local4 != 0){  .SetAngularVelocity(wheelSpin);  .SetAngularVelocity(wheelSpin); } else { if ((((( .IsSleeping()) && ( .IsSleeping()))) && (axle.IsSleeping()))){ return; };  .m_angularVelocity = ( .m_angularVelocity = Global.slide( .m_angularVelocity, 0, 0.1)); };  .SetXForm( .GetPosition(),  .GetAngle()); axle.ApplyTorque((_local4 / 5)); } public function  ():void{ var _local1:Number; linearPosition = nextGate.fromLast(axle.GetPosition()); linearPosition = ((linearPosition + nextGate.lastGate.index) / Controller.level.gates.length); linearPosition = (linearPosition + (lap - 1));   = 0.15;  = 32;  = 12; if (((((((!((index == 0))) && (Controller.cars[0].rank))) && (!(Controller.multiplayerGame)))) && ( ))){ _local1 = (linearPosition - Controller.cars[0].linearPosition); if (_local1 > 0.2){ if (_local1 > 1){ _local1 = 1; };   = (0.15 - (_local1 * 0.1));  = (32 - (_local1 * 10));  = (12 + (_local1 * 2)); } else { if (_local1 < -0.2){ if (_local1 < -1){ _local1 = -1; };   = (0.15 + (-(_local1) * 0.15));  = (32 + (-(_local1) * 10));  = (12 - (-(_local1) * 4)); }; }; }; if (boostTime > 0){  = ( + 4);   = (  + 0.05); }; } public function hitLaser():void{ if ( == 0){  = DESTROYED_ANIM_DURATION;  = RESTORED_ANIM_DURATION; if (Controller.onScreen((axle.GetPosition().x * 32), (axle.GetPosition().y * 32))){ NitromeGame.sound_manager.playSound("laser"); }; }; } } }//package com.nitrome.flipside
Section 96
//ContactListener (com.nitrome.flipside.ContactListener) package com.nitrome.flipside { import Box2D.Dynamics.*; import Box2D.Collision.*; public class ContactListener extends b2ContactListener { override public function Persist(_arg1:b2ContactPoint):void{ var _local2:b2Body; var _local3:b2Body; _local2 = _arg1.shape1.m_body; _local3 = _arg1.shape2.m_body; if (((_local2.m_userData) && (_local2.m_userData.contactHeld))){ (_local2.m_userData.activeObject as ActiveObject).contactHeld(_arg1); }; if (((_local3.m_userData) && (_local3.m_userData.contactHeld))){ (_local3.m_userData.activeObject as ActiveObject).contactHeld(_arg1); }; } override public function Add(_arg1:b2ContactPoint):void{ var _local2:b2Body; var _local3:b2Body; _local2 = _arg1.shape1.m_body; _local3 = _arg1.shape2.m_body; if (((_local2.m_userData) && (_local2.m_userData.contactMade))){ (_local2.m_userData.activeObject as ActiveObject).contactMade(_arg1); }; if (((_local3.m_userData) && (_local3.m_userData.contactMade))){ (_local3.m_userData.activeObject as ActiveObject).contactMade(_arg1); }; } override public function Remove(_arg1:b2ContactPoint):void{ var _local2:b2Body; var _local3:b2Body; _local2 = _arg1.shape1.m_body; _local3 = _arg1.shape2.m_body; if (((_local2.m_userData) && (_local2.m_userData.contactLost))){ (_local2.m_userData.activeObject as ActiveObject).contactLost(_arg1); }; if (((_local3.m_userData) && (_local3.m_userData.contactLost))){ (_local3.m_userData.activeObject as ActiveObject).contactLost(_arg1); }; } } }//package com.nitrome.flipside
Section 97
//Controller (com.nitrome.flipside.Controller) package com.nitrome.flipside { import Box2D.Common.Math.*; import flash.display.*; import flash.events.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.*; import Box2D.Collision.Shapes.*; import Box2D.Common.*; import com.nitrome.game.*; import com.nitrome.util.*; public class Controller { public static const INTRO_DURATION:Number = 120; public static var content:Sprite; public static var player1Score:Number = 0; public static var level:Level; public static var world:b2World; public static var frameNumber:Number = 0; public static var stats:PlayerStats; public static var player2Score:Number = 0; public static var viewport:Viewport; public static var startingLevel:Number = 1; public static var popup:IngamePopup; public static var cars:Array; public static var startingRawXML:XML = null; public static var gameplayRunning:Boolean = true; public static var viewport2:Viewport; public static var overlay:Overlay; public static var introTime:Number = 0; public static var root:MovieClip; public static var overlay2:Overlay; public static var multiplayerGame:Boolean = false; public static var stats2:PlayerStats; public static var demoGame:Boolean; public static var contactListener:ContactListener; public static var stage:Stage; public static function setupPhysics(_arg1:Number, _arg2:Number):void{ var _local3:b2AABB; _local3 = new b2AABB(); _local3.upperBound.Set(((_arg1 * 64) / 32), ((_arg2 * 64) / 32)); _local3.lowerBound.Set(0, 0); world = new b2World(_local3, new b2Vec2(), true); contactListener = new ContactListener(); world.(contactListener); } public static function  (_arg1:Event):void{ var _local2:Number; var _local3:Number; var _local4:String; if (((popup) && (popup.isOpen))){ popup.advance(); }; if (((!(level. )) && (gameplayRunning))){ if (introTime < INTRO_DURATION){ _local4 = null; introTime++; if (introTime == 20){ _local4 = "three"; }; if (introTime == 50){ _local4 = "two"; }; if (introTime == 80){ _local4 = "one"; }; if (introTime == 110){ _local4 = "start"; }; if (_local4){ overlay.doOverlay(_local4); if (overlay2){ overlay2.doOverlay(_local4); }; if (_local4 == "start"){ NitromeGame.sound_manager.playSound("go"); } else { NitromeGame.sound_manager.playSound("threetwoone"); }; }; }; frameNumber++; _local2 = 5; _local3 = 0; while (_local3 < _local2) { world.Step(((1 / 25) / _local2), (10 / _local2)); level.advance(); _local3++; }; updateCarRankings(); viewport. (); if (viewport2){ viewport2. (); }; if (stats){ stats.(cars[0]); }; if (stats2){ stats2.(cars[1]); }; }; } public static function changeLevel(_arg1:Number):void{ level.destroy(); gameplayRunning = true; frameNumber = 0; introTime = 0; if (((isNaN(_arg1)) || ((_arg1 < 1)))){ _arg1 = 1; }; level = new Level(); level.(_arg1); } public static function onScreen(_arg1:Number, _arg2:Number):Boolean{ var _local3:Number; _local3 = (((multiplayerGame) && (!(demoGame)))) ? 200 : 400; if (viewport){ if ((((((((_arg1 > (viewport.scrollX - 50))) && ((_arg1 < (viewport.scrollX + 600))))) && ((_arg2 > (viewport.scrollY - 50))))) && ((_arg2 < ((viewport.scrollY + _local3) + 50))))){ return (true); }; }; if (viewport2){ if ((((((((_arg1 > (viewport2.scrollX - 50))) && ((_arg1 < (viewport2.scrollX + 600))))) && ((_arg2 > (viewport2.scrollY - 50))))) && ((_arg2 < ((viewport2.scrollY + _local3) + 50))))){ return (true); }; }; return (false); } public static function startDemo(_arg1:Sprite):void{ startGame(_arg1, true); } public static function endGame():void{ if (!content){ return; }; stage.removeEventListener(Event.ENTER_FRAME,  ); world.(null); level.destroy(); Viewport.destroyPrerendered(); Key.terminate(stage); if (viewport){ content.removeChild(viewport); viewport.destroy(); }; if (viewport2){ content.removeChild(viewport2); viewport2.destroy(); }; if (stats){ content.removeChild(stats); }; if (stats2){ content.removeChild(stats2); }; if (overlay2){ overlay2.destroy(); overlay2 = null; }; overlay.destroy(); overlay = null; popup.destroy(); popup = null; root = null; stage = null; content = null; level = null; world = null; contactListener = null; cars = []; viewport = null; viewport2 = null; stats = null; stats2 = null; } public static function levelScore():Number{ var _local1:Number; if (Controller.cars[0].rank != 1){ return (0); }; if (!Controller.cars[0].finished){ return (0); }; _local1 = Math.round((2000 * (1 - (Controller.cars[0].finishFrameNumber / (25 * 240))))); if (_local1 < 0){ _local1 = 0; }; return (_local1); } public static function updateCarRankings():void{ var carList:Array; var n:Number; carList = cars.slice(); carList = carList.sort(function (_arg1:Car, _arg2:Car):Number{ if (((_arg1.finished) && (_arg2.finished))){ return (((_arg1.rank)<_arg2.rank) ? -1 : 1); } else { if (_arg1.finished){ return (-1); }; if (_arg2.finished){ return (1); }; if (_arg1.lap != _arg2.lap){ return (((_arg1.lap)<_arg2.lap) ? 1 : -1); //unresolved jump }; if (_arg1.nextGate.index != _arg2.nextGate.index){ if (_arg1.nextGate.isFirst){ return (-1); }; if (_arg2.nextGate.isFirst){ return (1); }; return (((_arg1.nextGate.index)<_arg2.nextGate.index) ? 1 : -1); //unresolved jump }; }; return (((_arg2. ().fromLast(!NULL!))<!NULL!) ? 1 : -1); }); n = 0; while (n < carList.length) { carList[n].rank = (n + 1); n = (n + 1); }; } public static function startGame(_arg1:Sprite, _arg2:Boolean=false):void{ if (content){ if (demoGame == _arg2){ return; }; endGame(); }; demoGame = _arg2; root = MovieClip(_arg1.root); root.stop(); stage = _arg1.stage; content = _arg1; Key.initialize(stage); Trig.setup(); popup = new IngamePopup(); overlay = new Overlay(); if (((multiplayerGame) && (!(_arg2)))){ overlay.y = 100; overlay2 = new Overlay(); overlay2.y = 300; }; content.addChild((viewport = new Viewport())); if (((multiplayerGame) && (!(_arg2)))){ content.addChild((viewport2 = new Viewport())); viewport2.y = 201; }; if (!_arg2){ content.addChild((stats = new PlayerStats())); if (multiplayerGame){ content.addChild((stats2 = new PlayerStats())); stats2.y = 201; }; }; level = new Level(); if (_arg2){ level. (); } else { if (startingRawXML){ level.(startingRawXML); } else { level.(startingLevel); }; }; gameplayRunning = true; frameNumber = 0; introTime = (_arg2) ? INTRO_DURATION : 0; if (!_arg2){ Score.value = 0; }; stage.addEventListener(Event.ENTER_FRAME,  ); } } }//package com.nitrome.flipside
Section 98
//Gate (com.nitrome.flipside.Gate) package com.nitrome.flipside { import Box2D.Common.Math.*; public class Gate { public var :Number; public var :b2Vec2; public var lastGate:Gate; public var index:Number; public var nextGate:Gate; public var isLast:Boolean;// = false public var  :b2Vec2; public var  :b2Vec2; public var isFirst:Boolean;// = false public var normal:b2Vec2; public var  :Number; public var :Number; public var centerPoint:b2Vec2; public function Gate(_arg1:Number){ isFirst = false; isLast = false; super(); this.index = _arg1; } public function aligned(_arg1:b2Vec2):Boolean{ var _local2:Number; _local2 = b2Math.b2Dot(_arg1, ); return (((( <= _local2)) && (( >= _local2)))); } public function (_arg1:b2Vec2):b2Vec2{ var _local2:Number; _local2 = b2Math.b2Dot(_arg1, ); if (_local2 < ){ _local2 = ; }; if (_local2 >  ){ _local2 =  ; }; return (new b2Vec2(((.x * _local2) + (normal.x * )), ((.y * _local2) + (normal.y * )))); } public function after(_arg1:b2Vec2):Boolean{ return ((b2Math.b2Dot(normal, _arg1) > )); } public function fromLast(_arg1:b2Vec2):Number{ var _local2:b2Vec2; var _local3:b2Vec2; var _local4:b2Vec2; var _local5:b2Vec2; _local2 = lastGate.(_arg1); _local3 = (_arg1); _local4 = _local3.Copy(); _local4.Subtract(_local2); _local5 = _arg1.Copy(); _local5.Subtract(_local2); return ((_local5.Length() / _local4.Length())); } public function setPosition(_arg1:Number, _arg2:Number, _arg3:Boolean):void{ if (_arg3){  = new b2Vec2(((_arg1 * 64) / 32), ((_arg2 * 64) / 32)); } else {  = new b2Vec2(((_arg1 * 64) / 32), ((_arg2 * 64) / 32)); }; if ((( ) && ( ))){  = new b2Vec2(( .x -  .x), ( .y -  .y)); .Normalize();  = b2Math.b2Dot(,  );  = b2Math.b2Dot(,  ); normal = new b2Vec2(-(.y), .x);  = b2Math.b2Dot(normal,  ); centerPoint = new b2Vec2((( .x +  .x) / 2), (( .y +  .y) / 2)); }; } } }//package com.nitrome.flipside
Section 99
//Level (com.nitrome.flipside.Level) package com.nitrome.flipside { import flash.events.*; import com.nitrome.game.*; import com.nitrome.util.*; import com.nitrome.flipside.objects.*; import flash.net.*; public class Level { public var activeList:Array; public var number:Number; public var :Array; public var :Array; public var gridHeight:Number; public var gates:Array; public var tileGrid:Array; public var totalLaps:Number;// = 3 public var gridWidth:Number; public var :LoadingText; public var  :Array; public var activeGrid:Array; public var instructionGrid:Array; public var fgTileGrid:Array; public var bgTileGrid:Array; public var  :Boolean;// = true public var  :Gate; public var  :Number;// = 0 public static const FINAL_LEVEL_NUMBER:Number = 15; public static var lastLoadedNumber:Number = -1; public static var lastLoadedXML:XML = null; public function Level(){   = true;  = 0; totalLaps = 3; super(); } public function advance():void{ var _local1:Number; var _local2:Boolean; _local1 = 0; while (_local1 < activeList.length) { activeList[_local1].advance(); _local1++; }; if (((Controller.multiplayerGame) && (!(Controller.demoGame)))){ if (!Controller.cars[0].finished){ Controller.viewport.scrollTo((Math.floor((Controller.cars[0].getCenterX() * 32)) - 275), (Math.floor((Controller.cars[0].getCenterY() * 32)) - 100)); }; if (!Controller.cars[1].finished){ Controller.viewport2.scrollTo((Math.floor((Controller.cars[1].getCenterX() * 32)) - 275), (Math.floor((Controller.cars[1].getCenterY() * 32)) - 100)); }; } else { if (!Controller.cars[0].finished){ Controller.viewport.scrollTo((Math.floor((Controller.cars[0].getCenterX() * 32)) - 275), (Math.floor((Controller.cars[0].getCenterY() * 32)) - 200)); }; }; _local2 = Controller.cars[0].finished; if (Controller.multiplayerGame){ _local2 = ((_local2) && (Controller.cars[1].finished)); }; if (((_local2) && (!(Controller.popup.isOpen)))){  ++; if ( > 200){ if (Controller.multiplayerGame){ Controller.popup.doPopup(((Controller.cars[0].rank == 1)) ? "1p_win" : "2p_win"); } else { Controller.popup.doPopup(((Controller.cars[0].rank == 1)) ? "complete" : "failed"); }; }; }; } public function destroy():void{ var _local1:Number; if ( ){ _local1 = 0; while (_local1 <  .length) {  [_local1].destroy(); _local1++; }; }; if (activeList){ _local1 = 0; while (_local1 < activeList.length) { activeList[_local1].destroy(); _local1++; }; };   = null; tileGrid = null; activeList = null; activeGrid = null; fgTileGrid = null;  = null; bgTileGrid = null;  = null; instructionGrid = null; gates = null;   = null; } public function (_arg1:Number):void{ var loader:URLLoader; var filename:String; var callback:Function; var number = _arg1; this.number = number; if (lastLoadedNumber == number){   = true; (lastLoadedXML); return; };  = new LoadingText(); .x = 275; .y = 200; Controller.root.addChild(); NitromeGame.transition.stop(); loader = new URLLoader(); filename = ((NitromeGame.getSwfPath() + "levels/") + NitromeGame.getLevelName(number)); callback = function (_arg1:Event){ var _local2:XML; _local2 = new XML(_arg1.target.data); lastLoadedNumber = number; lastLoadedXML = _local2; Controller.level.(_local2); loader.removeEventListener(Event.COMPLETE, callback); }; loader.addEventListener(Event.COMPLETE, callback); loader.load(new URLRequest(filename));   = true; } public function getTile(_arg1:Number, _arg2:Number):Tile{ if (!tileGrid[_arg1]){ return (null); }; return (tileGrid[_arg1][_arg2]); } public function  (_arg1:String):Array{ var _local2:Array; var _local3:Array; var _local4:Number; var _local5:String; var _local6:Array; var _local7:String; var _local8:Number; var _local9:Number; _local2 = _arg1.split(","); _local3 = []; _local4 = 0; while (_local4 < _local2.length) { _local5 = _local2[_local4]; if (_local5.indexOf(":") == -1){ _local3.push(Global.trim(_local5)); } else { _local6 = _local5.split(":"); _local7 = Global.trim(_local6[0]); _local8 = Number(_local6[1]); _local9 = 0; while (_local9 < _local8) { _local3.push(_local7); _local9++; }; }; _local4++; }; return (_local3); } public function (_arg1:XML):void{ var _local2:Number; var _local3:Number; var _local4:Number; var _local5:Tile; var _local6:Array; var _local7:Boolean; var _local8:Array; var _local9:Number; var _local10:Boolean; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Gate; var _local15:Gate; var _local16:Number; var _local17:ActiveObject; gridWidth = Number(_arg1.@w); gridHeight = Number(_arg1.@h); Controller.setupPhysics(gridWidth, gridHeight);   = []; tileGrid = [];  = []; bgTileGrid = [];  = []; fgTileGrid = []; activeList = []; activeGrid = []; instructionGrid = []; _local2 = 0; while (_local2 < gridWidth) { tileGrid[_local2] = []; bgTileGrid[_local2] = []; fgTileGrid[_local2] = []; activeGrid[_local2] = []; instructionGrid[_local2] = []; _local2++; }; gates = []; Controller.cars = []; _local6 =  (_arg1.bt); _local3 = 0; while (_local3 < gridHeight) { _local2 = 0; while (_local2 < gridWidth) { _local4 = (_local2 + (_local3 * gridWidth)); if (!((!(_local6[_local4])) || ((_local6[_local4] == "-")))){ _local5 = new Tile(_local2, _local3); _local5.makeSprite(_local6[_local4], "btile_"); .push(_local5); bgTileGrid[_local2][_local3] = _local5; }; _local2++; }; _local3++; }; _local6 =  (_arg1.ft); _local3 = 0; while (_local3 < gridHeight) { _local2 = 0; while (_local2 < gridWidth) { _local4 = (_local2 + (_local3 * gridWidth)); if (!((!(_local6[_local4])) || ((_local6[_local4] == "-")))){ _local5 = new Tile(_local2, _local3); _local5.makeSprite(_local6[_local4], "ftile_"); .push(_local5); fgTileGrid[_local2][_local3] = _local5; }; _local2++; }; _local3++; }; _local6 =  (_arg1.t); _local3 = 0; while (_local3 < gridHeight) { _local2 = 0; while (_local2 < gridWidth) { _local4 = (_local2 + (_local3 * gridWidth)); if (_local6[_local4] != "-"){ _local5 = new Tile(_local2, _local3); _local5.makeSprite(_local6[_local4]);  .push(_local5); tileGrid[_local2][_local3] = _local5; }; _local2++; }; _local3++; }; _local3 = 0; while (_local3 < gridHeight) { _local2 = 0; while (_local2 < gridWidth) { if (getTile(_local2, _local3)){ _local10 = false; _local11 = -1; while (_local11 <= 1) { _local12 = -1; while (_local12 <= 1) { if (!(((_local11 == 0)) && ((_local12 == 0)))){ if ( ((_local2 + _local11), (_local3 + _local12))){ if (!getTile((_local2 + _local11), (_local3 + _local12))){ _local10 = true; }; }; }; _local12++; }; _local11++; }; _local4 = (_local2 + (_local3 * gridWidth)); if (_local10){ tileGrid[_local2][_local3].makeSolid(_local6[_local4]); }; }; _local2++; }; _local3++; }; _local6 =  (_arg1.g); _local7 = false; _local4 = 0; while (_local4 < _local6.length) { if (_local6[_local4] != "-"){ _local2 = (_local4 % gridWidth); _local3 = Math.floor((_local4 / gridWidth)); if (_local6[_local4] == "o"){ _local7 = true; } else { _local13 = Number(_local6[_local4]); if (!isNaN(_local13)){ if (!gates[_local13]){ gates[_local13] = new Gate(_local13); }; gates[_local13].setPosition(_local2, _local3, _local7); _local7 = false; }; }; }; _local4++; }; if (gates.length > 0){   = null; for each (_local15 in gates) {   = _local15; break; }; for each (_local15 in gates) { _local14 = _local15; }; for each (_local15 in gates) { _local15.lastGate = _local14; _local14.nextGate = _local15; _local14 = _local15; };  .isFirst = true; _local14.isLast = true; }; _local8 = [Car, Box, BigCircle, Peg, Chunks, Catflap, LiftBridge, RopeBridge, Turnstile, WreckingBall, [Catcher, false], [Catcher, true], [HangingPlatform, false], [HangingPlatform, true], [Seesaw, false], [Seesaw, true], [SpinningShape, 0, true], [SpinningShape, 0, false], [SpinningShape, 1, true], [SpinningShape, 1, false], [SpinningShape, 2, true], [SpinningShape, 2, false], [SpinningShape, 3, true], [SpinningShape, 3, false], [AcceleratorBlock, 0, false], [AcceleratorBlock, 0, true], [AcceleratorBlock, 1, false], [AcceleratorBlock, 1, true], [AcceleratorBlock, 2, false], [AcceleratorBlock, 2, true], [AcceleratorBlock, 3, false], [AcceleratorBlock, 3, true], [ForceBlock, 0], [ForceBlock, 1], [ForceBlock, 2], [ForceBlock, 3], [ForceBlock, 4], [LaserEmitterBlock, true, false, false, false], [LaserEmitterBlock, false, true, false, false], [LaserEmitterBlock, true, true, false, false], [LaserEmitterBlock, false, false, true, false], [LaserEmitterBlock, true, false, true, false], [LaserEmitterBlock, false, true, true, false], [LaserEmitterBlock, true, true, true, false], [LaserEmitterBlock, false, false, false, true], [LaserEmitterBlock, true, false, false, true], [LaserEmitterBlock, false, true, false, true], [LaserEmitterBlock, true, true, false, true], [LaserEmitterBlock, false, false, true, true], [LaserEmitterBlock, true, false, true, true], [LaserEmitterBlock, false, true, true, true], [LaserEmitterBlock, true, true, true, true], [Button, 1], [Button, 2], [Button, 3], [Trapdoor, 1, false], [Trapdoor, 2, false], [Trapdoor, 3, false], [Trapdoor, 1, true], [Trapdoor, 2, true], [Trapdoor, 3, true], [SlidingPlatform, 1, 0], [SlidingPlatform, -1, 0], [SlidingPlatform, 2, 0], [SlidingPlatform, -2, 0], [SlidingPlatform, 3, 0], [SlidingPlatform, -3, 0], [SlidingPlatform, 5, 0], [SlidingPlatform, -5, 0], [SlidingPlatform, 10, 0], [SlidingPlatform, -10, 0], [SlidingPlatform, 0, 1], [SlidingPlatform, 0, -1], [SlidingPlatform, 0, 2], [SlidingPlatform, 0, -2], [SlidingPlatform, 0, 3], [SlidingPlatform, 0, -3], [SlidingPlatform, 0, 5], [SlidingPlatform, 0, -5], [SlidingPlatform, 0, 10], [SlidingPlatform, 0, -10]]; _local9 = 0; _local6 =  (_arg1.a); _local4 = 0; while (_local4 < _local6.length) { if (_local6[_local4] != "-"){ _local2 = (_local4 % gridWidth); _local3 = Math.floor((_local4 / gridWidth)); _local16 = Number(_local6[_local4]); if (_local8[_local16] == Car){ ++_local9; //unresolved if }; if ((_local8[_local16] is Array)){ _local17 = new _local8[_local16][0](_local2, _local3); _local17["setup"].apply(_local17, _local8[_local16].slice(1)); } else { _local17 = new _local8[_local16](_local2, _local3); }; activeList.push(_local17); activeGrid[_local2][_local3] = _local17; }; _local4++; }; _local6 =  (_arg1.i); _local4 = 0; while (_local4 < _local6.length) { if (!((!(_local6[_local4])) || ((_local6[_local4] == "-")))){ _local2 = (_local4 % gridWidth); _local3 = Math.floor((_local4 / gridWidth)); instructionGrid[_local2][_local3] = _local6[_local4]; }; _local4++; };   = false; if (){ .gotoAndPlay("fadeout");  = null; }; if (Controller.popup){ Controller.popup.close(); }; NitromeGame.transition.play(); } public function  (_arg1:Number, _arg2:Number):Boolean{ if (_arg1 < 0){ return (false); }; if (_arg1 >= gridWidth){ return (false); }; if (_arg2 < 0){ return (false); }; if (_arg2 >= gridHeight){ return (false); }; return (true); } public function  ():void{ this.number = 0; (<level w="30" h="18"> <bt>30:3,-:20,33,35,-:5,35,-:22,30:2,-:28,33,35:3,-:26,30:4,-:3,30,-:22,33,35:4,-:2,35:3,-:21,30:3, 35,30:6,-:20,30,35:5,-:24,30:3,-,30:2,-,35:2,37,-:19,33,35:6,-,30:3,-:19,30:4,-:2,30,-,35:2,37, -:19,33,35:3,-:4,30:3,-:19,30:2,-:5,30,35:2,30,-:19,30:3,-:4,30:4,-:19,33,35:6,-,35:2,37,-:25,30, -,30:3,-:3,33,31,37,-:13,33,-:5,35,-,35:2,37,-:3,33,31,37,-:43,33,-:6</bt> <a>-:453,0,-,0,-,0,-,0,-:80</a> <g>-:78,o,6,-:48,o,7,-:9,6,-:17,o,8,-:65,7,-:10,5,o,5,-:5,o,9,-:43,4,-:16,9,-:3,8,-:37,o,4,-:11,o, 10,-,10,-:40,3,o,3,-:48,11,-:2,1,-:3,2,-:50,o,11,-:2,o,1,-:3,o,2,-:16</g> <i>-:82,j,r:4,-:12,n:4,l:12,-,r,-:12,n:4,l,-:9,l:2,-,r,-:12,n:4,l,-:25,n:2,l:3,-:25,n:2,l,-:20,r:6, -,n:2,l,-:14,rf,-:4,r,-:3,l:7,-:14,rf,-:4,r,-,l:2,-:12,r:6,-:2,rf,-:5,r,-:14,r,-:14,r,-:29,r,-:29, r,-:13,rf,-:15,r,-:13,rf,-:16,r:10,-:2,rf,-:45</i> <ft>-:68,spr,-:29,spr,-:18,spl,-:17,lw,-,lp,-,lw,-,lp,-:12,spd:3,-:20,spl,-:44,lp,-:14,spl,-:32,spr, -:26,spl,-:7,lw,-,lp,-,lw,-:20,spr,-:17,lp,-,lw,-,lp,-,lw,-:35,spr,-:59,spr,-:63,lp,-,sgu,lg:3,sgu, -,lw,-:17</ft> <t>65,216,223,64:4,210,64:2,214,208,207,208,207,214,64,225,65:4,222,224,201,212:2,208,207,208,216, 64:3,214,64,216,65,201,147,102:15,60,61,62,208,207,208,64:2,208:2,64,201,65,223,-:17,rf,69,208:2, 215,213,208,207:2,208,216,65,226,-:18,74,218,213,226,64,208:5,ch,-:6,va,8,45:3,46:3,8,-:4,29,64:2, 65,210,226,208,147,102:2,-:7,40,207,208:2,212,200,55:2,226,cf,-:3,29,64,210,65:3,211,-:9,rd,33, 208:2,218,224,65:3,214,208,23,-:2,29,225,65,106,107,108,148,-:8,va,43,44,207:2,205,64,223,64,223, 208,ch,-:3,29,65:2,117,re,-:10,29,106,107,108,208,222,210,64,207,214,208,-:4,29,202,65,127,-:10, rd,33,117,re,-:12,81,64,216,10,-:2,va,45,46:2,45:2,46,45,43,44,127,-:12,rh,88,205,64,10,-:2,12, 207,212,64,224,55:2,226,64,225,23,-:4,45,46:2,45:3,46,94,95,96,208,64,10,-:2,29,208,224,210,65:3, 64:2,65,23,-:3,ce,207,208:3,216,55:2,226,212,208,207,64,23,-:3,cg,64,223,221,224,223,64,229,ch, -:3,12,207:2,208,218,64:2,216,226,64:4,210,10,-:4,102:7,-:4,12,208,207,208,64:9,65,58,-:15,81,208, 64:3,225,64:2,208:2,218,64:2,216,67,rg,-:13,rh,88,205,64,225,210,65,225,208,207,208:2,207,214,64, 71,72,73,8,45:2,46,45:3,46:2,45,8,94,95,96,210,211,65,207,216,65,201,212,207:2,208,205,64</t> </level> ); } } }//package com.nitrome.flipside
Section 100
//LightTrail (com.nitrome.flipside.LightTrail) package com.nitrome.flipside { import Box2D.Common.Math.*; import flash.display.*; public class LightTrail { public var length:Number;// = 50 private var  :Array; private var greenMultiplier:Number;// = 1 private var redMultiplier:Number;// = 1 private var blueMultiplier:Number;// = 1 private static var tempSprite:Sprite = new Sprite(); public function LightTrail(){  = []; length = 50; redMultiplier = 1; greenMultiplier = 1; blueMultiplier = 1; super(); } public function pushXY(_arg1:Number, _arg2:Number, _arg3:Number=1):void{ pushPosition(new b2Vec2(_arg1, _arg2), _arg3); } public function pushPosition(_arg1:b2Vec2, _arg2:Number=1):void{ if (_arg2 > 1){ _arg2 = 1; }; if (_arg2 < 0){ _arg2 = 0; };  .push([_arg1, _arg2]); if ( .length > length){  .splice(0, ( .length - length)); }; } public function (_arg1:Number):void{ redMultiplier = ((_arg1 >> 16) % 0x0100); greenMultiplier = ((_arg1 >> 8) % 0x0100); blueMultiplier = (_arg1 % 0x0100); } public function draw(_arg1:Viewport):void{ tempSprite.graphics.clear(); drawToSprite(tempSprite, 32, _arg1.scrollX, _arg1.scrollY); _arg1.target.draw(tempSprite, null, null, "screen"); } public function drawToSprite(_arg1:Sprite, _arg2:Number=1, _arg3:Number=0, _arg4:Number=0):void{ var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:b2Vec2; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; _local5 = 3; _local6 = 0; while (_local6 <  .length) { _local7 =  [_local6][1]; _local8 = ((_local6 * _local7) / length); _local9 =  [_local6][0]; _local10 = int((redMultiplier * _local8)); _local11 = int((greenMultiplier * _local8)); _local12 = int((blueMultiplier * _local8)); _arg1.graphics.lineStyle(_local5, (((_local10 << 16) | (_local11 << 8)) | _local12), 1); _local13 = ((_local9.x * _arg2) - _arg3); _local14 = ((_local9.y * _arg2) - _arg4); if (_local6 == 0){ _arg1.graphics.moveTo(_local13, _local14); } else { _arg1.graphics.lineTo(_local13, _local14); }; _local6++; }; } } }//package com.nitrome.flipside
Section 101
//PlayerStats (com.nitrome.flipside.PlayerStats) package com.nitrome.flipside { import flash.display.*; public class PlayerStats extends Sprite { public var rank:FlipsideFont; public var lapCount:FlipsideFont; public var lap:FlipsideFont; public var time:FlipsideFont; public function PlayerStats(){  ();  (); ();  (); } function  (){ try { lapCount["componentInspectorSetting"] = true; } catch(e:Error) { }; lapCount.align = "left"; lapCount.align_vert = "center"; lapCount.color = 0xFFFFFF; lapCount.id = "None"; lapCount.line_spacing = 18; lapCount.text = "3"; lapCount.tracking = 0; try { lapCount["componentInspectorSetting"] = false; } catch(e:Error) { }; } function  (){ try { time["componentInspectorSetting"] = true; } catch(e:Error) { }; time.align = "center"; time.align_vert = "center"; time.color = 0xFFFFFF; time.id = "None"; time.line_spacing = 18; time.text = "0:00"; time.tracking = 0; try { time["componentInspectorSetting"] = false; } catch(e:Error) { }; } function  (){ try { rank["componentInspectorSetting"] = true; } catch(e:Error) { }; rank.align = "left"; rank.align_vert = "center"; rank.color = 0xFFFFFF; rank.id = "None"; rank.line_spacing = 18; rank.text = "1st"; rank.tracking = 0; try { rank["componentInspectorSetting"] = false; } catch(e:Error) { }; } function (){ try { lap["componentInspectorSetting"] = true; } catch(e:Error) { }; lap.align = "left"; lap.align_vert = "center"; lap.color = 0xFFFFFF; lap.id = "None"; lap.line_spacing = 18; lap.text = "1"; lap.tracking = 0; try { lap["componentInspectorSetting"] = false; } catch(e:Error) { }; } public function (_arg1:Car):void{ var _local2:Number; var _local3:Number; var _local4:Number; var _local5:*; _local2 = Controller.frameNumber; if (_arg1.finished){ _local2 = _arg1.finishFrameNumber; }; _local2 = (_local2 - Controller.introTime); _local3 = Math.floor((_local2 / 25)); _local4 = Math.floor((_local3 / 60)); _local3 = (_local3 - (_local4 * 60)); time.text = ((_local4 + ":") + ((_local3 >= 10)) ? _local3 : ("0" + _local3)); _local5 = _arg1.lap; if (_local5 < 1){ _local5 = 1; }; if (_local5 > 3){ _local5 = 3; }; lap.text = _local5; switch (_arg1.rank){ case 1: rank.text = "1st"; break; case 2: rank.text = "2nd"; break; case 3: rank.text = "3rd"; break; case 4: rank.text = "4th"; break; }; } } }//package com.nitrome.flipside
Section 102
//Spring (com.nitrome.flipside.Spring) package com.nitrome.flipside { import Box2D.Common.Math.*; import flash.display.*; import Box2D.Dynamics.*; public class Spring { public var  :Number;// = 0.01 public var  :Number;// = 0.5 public var body2:b2Body;// = null public var  :Number;// = 1 public var  :b2Vec2;// = null public var :b2Vec2;// = null public var body1:b2Body;// = null public var :Number;// = 1 public function Spring(_arg1:b2Body=null, _arg2:b2Body=null, _arg3:b2Vec2=null, _arg4:b2Vec2=null, _arg5:Number=1, _arg6:Number=1){ body1 = null; body2 = null;  = null;  = null;  = 1;  = 1;  = 0.5;  = 0.01; super(); body1 = _arg1; body2 = _arg2;  = _arg3;  = _arg4;  = _arg5;  = _arg6; } public function advance():void{ var _local1:b2Vec2; var _local2:Number; var _local3:Number; var _local4:b2Vec2; var _local5:b2Vec2; var _local6:b2Vec2; if (((!(body1)) || (!( )))){ return; }; if (((!(body2)) || (!()))){ return; }; if (((((body1.IsSleeping()) || (body1.IsStatic()))) && (((body2.IsSleeping()) || (body2.IsStatic()))))){ return; }; _local1 = body2.GetWorldPoint(); _local1.Subtract(body1.GetWorldPoint( )); if (_local1.LengthSquared() == 0){ return; }; _local2 = _local1.Length(); _local3 = (_local2 - ); _local4 = _local1.Copy(); _local4.Multiply((( * _local3) / _local2)); if ( < 1){ _local5 = _local4.Copy(); _local5.Multiply((1 -  )); body1.ApplyForce(_local5, body1.GetWorldPoint( )); }; if ( > 0){ _local6 = _local4.Copy(); _local6.Multiply(-( )); body2.ApplyForce(_local6, body2.GetWorldPoint()); }; if ( < 1){ body1.m_linearVelocity.Multiply((1 -  )); body1.m_angularVelocity = (body1.m_angularVelocity * (1 -  )); }; if ( > 0){ body2.m_linearVelocity.Multiply((1 -  )); body2.m_angularVelocity = (body2.m_angularVelocity * (1 -  )); }; } public function draw(_arg1:Graphics):void{ var _local2:b2Vec2; var _local3:b2Vec2; if (((!(body1)) || (!( )))){ return; }; if (((!(body2)) || (!()))){ return; }; _arg1.lineStyle(1, 0xFFFF); _local2 = body1.GetWorldPoint( ); _local3 = body2.GetWorldPoint(); _arg1.moveTo((_local2.x * 32), (_local2.y * 32)); _arg1.lineTo((_local3.x * 32), (_local3.y * 32)); } } }//package com.nitrome.flipside
Section 103
//Tile (com.nitrome.flipside.Tile) package com.nitrome.flipside { import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Collision.Shapes.*; import com.nitrome.util.*; public class Tile { public var :b2Body;// = null public var :Boolean;// = false public var  :Number; public var  :Number; public var tileName:String;// = null public var large:Boolean;// = false public function Tile(_arg1:Number, _arg2:Number){  = null; tileName = null;  = false; large = false; super();  = _arg1;  = _arg2; } function (_arg1:Number):Array{ var _local2:Array; var _local3:Number; _local2 = []; _local3 = 0; while (_local3 <= _arg1) { _local2.push(Math.sin(((_local3 / _arg1) * (Math.PI / 2)))); _local3++; }; return (_local2); } public function makeSprite(_arg1:String, _arg2:String="tile_"):void{ tileName = (_arg2 + _arg1); Viewport.prerender(tileName); } public function destroy():void{ if (){ Controller.world.DestroyBody();  = null; }; } public function makeSolid(_arg1:String):void{ var _local2:b2BodyDef; var _local3:Array; var _local4:Array; var _local5:Boolean; var _local6:Boolean; var _local7:Boolean; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:b2PolygonDef; var _local12:b2PolygonDef; var _local13:Number; var _local14:Number; var _local15:Boolean; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; var _local20:Tile; var _local21:Tile; var _local22:Tile; if (){ return; }; _local2 = new b2BodyDef(); _local2.position.Set(((( + 0.5) * 64) / 32), ((( + 0.5) * 64) / 32));  = Controller.world.CreateBody(_local2); .SetUserData({tile:this}); if ((((_arg1.substr(0, 1) == "r")) || ((_arg1.substr(0, 1) == "c")))){ _local13 = (_arg1.toLowerCase().charCodeAt(1) - "a".charCodeAt(0)); _local14 = (1 + int((_local13 / 4))); _local13 = (_local13 % 4); _local15 = (_arg1.substr(0, 1) == "c"); _local3 = (((_local14 > 1)) ? 12 : 6); _local4 = _local3.slice(); _local4.reverse(); if (_local13 == 0){ _local5 = true; _local6 = true; _local7 = true; }; if (_local13 == 1){ _local5 = false; _local6 = true; _local7 = false; }; if (_local13 == 2){ _local5 = true; _local6 = false; _local7 = false; }; if (_local13 == 3){ _local5 = false; _local6 = false; _local7 = true; }; if (_local15){ _local7 = !(_local7); }; _local8 = 0; while (_local8 < (_local3.length - 1)) { _local9 = (_local7) ? (_local8 + 1) : _local8; _local10 = (_local7) ? _local8 : (_local8 + 1); _local11 = new b2PolygonDef(); _local11.vertexCount = 3; _local11.vertices[0].x = ((_local5)!=_local15) ? (-32 / 32) : (32 / 32); _local11.vertices[0].y = ((_local6)!=_local15) ? (-32 / 32) : (32 / 32); _local11.vertices[1].x = (((((_local5) ? -1 : 1 * 64) * _local14) * (_local4[_local9] - 0.5)) / 32); _local11.vertices[1].y = (((((_local6) ? -1 : 1 * 64) * _local14) * (_local3[_local9] - 0.5)) / 32); _local11.vertices[2].x = (((((_local5) ? -1 : 1 * 64) * _local14) * (_local4[_local10] - 0.5)) / 32); _local11.vertices[2].y = (((((_local6) ? -1 : 1 * 64) * _local14) * (_local3[_local10] - 0.5)) / 32); _local11.vertices[1].x = (_local11.vertices[1].x + (((((_local5)==_local15) ? -1 : 1 * 32) * (_local14 - 1)) / 32)); _local11.vertices[1].y = (_local11.vertices[1].y + (((((_local6)==_local15) ? -1 : 1 * 32) * (_local14 - 1)) / 32)); _local11.vertices[2].x = (_local11.vertices[2].x + (((((_local5)==_local15) ? -1 : 1 * 32) * (_local14 - 1)) / 32)); _local11.vertices[2].y = (_local11.vertices[2].y + (((((_local6)==_local15) ? -1 : 1 * 32) * (_local14 - 1)) / 32)); _local11.friction = 0.8; _local11.restitution = 0; _local11.filter.categoryBits = 0x8000; .CreateShape(_local11); _local8++; }; if (_local14 > 1){ large = true; }; return; }; if (_arg1.substr(0, 1) == "v"){ _local13 = (_arg1.toLowerCase().charCodeAt(1) - "a".charCodeAt(0)); _local16 = _local13; if (_local13 == 2){ _local16 = 3; }; if (_local13 == 3){ _local16 = 2; }; _local3 = (((_local14 > 1)) ? 12 : 6); _local4 = _local3.slice(); _local4.reverse(); _local11 = new b2PolygonDef(); _local11.vertices = new Array(); _local17 = 0; while (_local17 < 4) { _local18 = ((((_local17 == 1)) || ((_local17 == 2)))) ? 1 : -1; _local19 = ((((_local17 == 2)) || ((_local17 == 3)))) ? 1 : -1; _local7 = (((_local17 == 1)) || ((_local17 == 3))); if (_local17 == _local16){ if (_local7){ _local8 = (_local3.length - 1); while (_local8 >= 0) { _local11.vertices.push(new b2Vec2((_local18 * _local4[_local8]), (_local19 * _local3[_local8]))); _local8--; }; } else { _local8 = 0; while (_local8 < _local3.length) { _local11.vertices.push(new b2Vec2((_local18 * _local4[_local8]), (_local19 * _local3[_local8]))); _local8++; }; }; } else { _local11.vertices.push(new b2Vec2(_local18, _local19)); }; _local17++; }; _local11.vertexCount = _local11.vertices.length; _local11.friction = 0.8; _local11.restitution = 0; _local11.filter.categoryBits = 0x8000; .CreateShape(_local11); return; }; _local12 = new b2PolygonDef(); if (_arg1.substr(0, 1) == "d"){ _local12.vertexCount = 3; _local12.vertices[0] = new b2Vec2((-32 / 32), (-32 / 32)); _local12.vertices[1] = new b2Vec2((32 / 32), (32 / 32)); _local12.vertices[2] = new b2Vec2((-32 / 32), (32 / 32)); } else { if (_arg1.substr(0, 1) == "u"){ _local12.vertexCount = 3; _local12.vertices[0] = new b2Vec2((32 / 32), (-32 / 32)); _local12.vertices[1] = new b2Vec2((32 / 32), (32 / 32)); _local12.vertices[2] = new b2Vec2((-32 / 32), (32 / 32)); } else { if (_arg1.substr(0, 2) == "td"){ _local12.vertexCount = 3; _local12.vertices[0] = new b2Vec2((32 / 32), (32 / 32)); _local12.vertices[1] = new b2Vec2((-32 / 32), (-32 / 32)); _local12.vertices[2] = new b2Vec2((32 / 32), (-32 / 32)); } else { if (_arg1.substr(0, 2) == "tu"){ _local12.vertexCount = 3; _local12.vertices[0] = new b2Vec2((-32 / 32), (32 / 32)); _local12.vertices[1] = new b2Vec2((-32 / 32), (-32 / 32)); _local12.vertices[2] = new b2Vec2((32 / 32), (-32 / 32)); } else { _local12.SetAsBox((32 / 32), (32 / 32)); _local20 = Controller.level.getTile(( + 1),  ); if (((((_local20) && (!(_local20.)))) && (Global.isNumeric(_local20.tileName.substr(5))))){ _local12.vertices[1].x = (_local12.vertices[1].x + (64 / 32)); _local12.vertices[2].x = (_local12.vertices[2].x + (64 / 32)); _local20. = true; _local21 = Controller.level.getTile(( + 2),  ); if (((((_local21) && (!(_local21.)))) && (Global.isNumeric(_local21.tileName.substr(5))))){ _local12.vertices[1].x = (_local12.vertices[1].x + (64 / 32)); _local12.vertices[2].x = (_local12.vertices[2].x + (64 / 32)); _local21. = true; }; } else { _local22 = Controller.level.getTile( , ( + 1)); if (((((_local22) && (!(_local22.)))) && (Global.isNumeric(_local22.tileName.substr(5))))){ _local12.vertices[2].y = (_local12.vertices[2].y + (64 / 32)); _local12.vertices[3].y = (_local12.vertices[3].y + (64 / 32)); _local22. = true; }; }; }; }; }; }; _local12.friction = 0.8; _local12.restitution = 0; _local12.filter.categoryBits = 0x8000; .CreateShape(_local12); } } }//package com.nitrome.flipside
Section 104
//Viewport (com.nitrome.flipside.Viewport) package com.nitrome.flipside { import flash.display.*; import flash.geom.*; import flash.utils.*; public class Viewport extends Sprite { public var :Bitmap; public var scrollX:Number;// = 0 public var scrollY:Number;// = 0 public var target:BitmapData; private var  :Matrix; public static var lightPositions:Array = null; public static var bitmapTable:Object = {}; public function Viewport(){ var _local1:Number; scrollX = 0; scrollY = 0;  = new Matrix(); super(); _local1 = (((Controller.multiplayerGame) && (!(Controller.demoGame)))) ? 199 : 400; target = new BitmapData(550, _local1, false, 0); addChild(( = new Bitmap(target))); prerender("backlayer"); prerender("midlayer"); prerender("smallLight"); prerender("largeLight"); } public function blit(_arg1:String, _arg2:Number, _arg3:Number):void{ var _local4:PrerenderedBitmap; _local4 = bitmapTable[_arg1]; if (!_local4){ return; }; target.copyPixels(_local4.bitmapData, _local4.bitmapRect, new Point((_arg2 + _local4.dx), (_arg3 + _local4.dy))); } public function drawMatrix(_arg1:String, _arg2:Matrix, _arg3:ColorTransform=null, _arg4:String=null, _arg5:Rectangle=null, _arg6:Boolean=false):void{ var _local7:PrerenderedBitmap; _local7 = bitmapTable[_arg1]; if (!_local7){ return; };  .identity();  .tx = _local7.dx;  .ty = _local7.dy;  .concat(_arg2); target.draw(_local7.bitmapData,  , _arg3, _arg4, _arg5, _arg6); } public function scrollTo(_arg1:Number, _arg2:Number):void{ var _local3:Number; _local3 = (((Controller.multiplayerGame) && (!(Controller.demoGame)))) ? 200 : 400; scrollX = _arg1; scrollY = _arg2; if ((Controller.level.gridWidth * 64) >= 550){ if (scrollX < 0){ scrollX = 0; }; if (scrollX > ((Controller.level.gridWidth * 64) - 550)){ scrollX = ((Controller.level.gridWidth * 64) - 550); }; }; if ((Controller.level.gridHeight * 64) >= _local3){ if (scrollY < 0){ scrollY = 0; }; if (scrollY > ((Controller.level.gridHeight * 64) - _local3)){ scrollY = ((Controller.level.gridHeight * 64) - _local3); }; }; } public function  ():void{ var _local1:Point; var _local2:Object; var _local3:Number; var _local4:Number; var _local5:Tile; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:ActiveObject; var _local14:Car; var _local15:Object; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; var _local20:Number; var _local21:Boolean; var _local22:Number; var _local23:Number; var _local24:Number; var _local25:Number; var _local26:Number; var _local27:Number; var _local28:Number; var _local29:PrerenderedBitmap; var _local30:Matrix; _local1 = new Point(); if (((Controller.multiplayerGame) && (!(Controller.demoGame)))){ blit("backlayer", 0, -80); } else { blit("backlayer", 0, 0); }; _local7 = -(Math.floor((scrollX / 4))); if (Controller.level.number){ _local7 = (_local7 + (300 - ((Controller.level.number * 200) % 1600))); } else { _local7 = (_local7 + 100); }; while (_local7 < -1781) { _local7 = (_local7 + 1781); }; while (_local7 > 0) { _local7 = (_local7 - 1781); }; _local8 = Math.floor(((((Controller.level.gridHeight * 64) - 400) - scrollY) / 10)); if (((Controller.multiplayerGame) && (!(Controller.demoGame)))){ _local8 = (_local8 - 100); }; blit("midlayer", _local7, _local8); blit("midlayer", (_local7 + 1781), _local8); _local9 = Math.floor((scrollX / 64)); _local10 = (_local9 + 9); _local11 = Math.floor((scrollY / 64)); _local12 = (_local11 + 7); _local3 = _local9; while (_local3 <= _local10) { if (Controller.level.bgTileGrid[_local3]){ _local4 = _local11; while (_local4 <= _local12) { _local5 = Controller.level.bgTileGrid[_local3][_local4]; if (_local5){ if (_local5.tileName){ blit(_local5.tileName, ((_local3 * 64) - scrollX), ((_local4 * 64) - scrollY)); }; }; _local4++; }; }; _local3++; }; for each (_local13 in Controller.level.activeList) { _local13.renderBack(this); }; _local3 = (_local9 - 2); while (_local3 <= (_local10 + 2)) { if (Controller.level.tileGrid[_local3]){ _local4 = (_local11 - 2); while (_local4 <= (_local12 + 2)) { _local5 = Controller.level.tileGrid[_local3][_local4]; if (_local5){ if (_local5.tileName){ if (!(((((((((_local3 < _local9)) || ((_local3 > _local10)))) || ((_local4 < _local11)))) || ((_local4 > _local12)))) && (!(_local5.large)))){ blit(_local5.tileName, ((_local3 * 64) - scrollX), ((_local4 * 64) - scrollY)); }; }; }; _local4++; }; }; _local3++; }; for each (_local13 in Controller.level.activeList) { _local13.render(this); }; for each (_local14 in Controller.cars) { _local14.lightTrail.draw(this); _local14.lightTrail2.draw(this); }; _local3 = (_local9 - 1); while (_local3 <= (_local10 + 1)) { if (Controller.level.fgTileGrid[_local3]){ _local4 = (_local11 - 1); while (_local4 <= (_local12 + 1)) { _local5 = Controller.level.fgTileGrid[_local3][_local4]; if (_local5){ if (_local5.tileName){ blit(_local5.tileName, ((_local3 * 64) - scrollX), ((_local4 * 64) - scrollY)); }; }; _local4++; }; }; _local3++; }; if (!lightPositions){ setupLightPositions(); }; _local6 = 0; while (_local6 < lightPositions.length) { _local15 = lightPositions[_local6]; _local16 = (_local15.x + _local7); _local17 = (_local15.y + _local8); _local18 = 0; _local19 = _local15.s; _local20 = (((_local15.s + _local19) + 1) * ((_local19 + _local19) + 1)); _local21 = true; if (_local16 >= -10){ if (_local16 <= 560){ if (_local17 <= 410){ _local23 = (_local16 - _local19); while (_local23 <= (_local16 + _local19)) { _local24 = (_local17 - _local19); while (_local24 <= (_local17 + _local19)) { _local25 = target.getPixel(_local23, _local24); _local26 = (_local25 % 0x0100); _local27 = ((_local25 >> 8) % 0x0100); _local28 = (_local25 >> 16); if ((((((_local26 > 210)) && ((_local27 > 110)))) && ((_local28 > 150)))){ _local18++; } else { if ((((_local23 == _local16)) && ((_local24 == _local17)))){ _local21 = false; //unresolved jump }; }; _local24++; }; _local23++; }; if (_local21){ _local22 = (_local18 / _local20); if (_local18 > 0){ _local29 = bitmapTable[_local15.i]; _local1.x = ((_local15.x + _local29.dx) + _local7); _local1.y = ((_local15.y + _local29.dy) + _local8); _local30 = new Matrix(); _local30.translate(_local29.dx, _local29.dy); _local30.scale(_local22, _local22); _local30.translate((_local1.x - _local29.dx), (_local1.y - _local29.dy)); target.draw(_local29.bitmapData, _local30, null, "screen"); }; }; }; }; }; _local6++; }; } public function drawRotated(_arg1:String, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:ColorTransform=null, _arg6:String=null, _arg7:Rectangle=null, _arg8:Boolean=false):void{ var _local9:PrerenderedBitmap; _local9 = bitmapTable[_arg1]; if (!_local9){ return; };  .identity();  .tx = _local9.dx;  .ty = _local9.dy;  .rotate(_arg4);  .tx = ( .tx + _arg2);  .ty = ( .ty + _arg3); target.draw(_local9.bitmapData,  , _arg5, _arg6, _arg7, _arg8); } public function destroy():void{ removeChild();  = null; target.dispose(); target = null; } public static function setupLightPositions():void{ var _local1:Number; var _local2:Number; var _local3:Number; var _local4:Number; lightPositions = [{x:128, y:208, i:"smallLight", s:1}, {x:342, y:208, i:"smallLight", s:1}, {x:553, y:208, i:"smallLight", s:1}, {x:767, y:208, i:"smallLight", s:1}, {x:235, y:307, i:"smallLight", s:1}, {x:449, y:307, i:"smallLight", s:1}, {x:659, y:307, i:"smallLight", s:1}, {x:0x0400, y:307, i:"smallLight", s:1}, {x:1233, y:307, i:"smallLight", s:1}, {x:1442, y:307, i:"smallLight", s:1}, {x:1651, y:307, i:"smallLight", s:1}]; for each (_local1 in [1075, 1096, 1117, 1143, 1163, 1183, 1492, 1513, 1534, 1560, 1580, 1600]) { for each (_local4 in [122, 139, 156]) { lightPositions.push({x:_local1, y:_local4, i:"largeLight", s:3}); }; }; _local2 = lightPositions.length; _local3 = 0; while (_local3 < _local2) { lightPositions.push({x:(lightPositions[_local3].x + 1781), y:lightPositions[_local3].y, i:lightPositions[_local3].i, s:lightPositions[_local3].s}); _local3++; }; } public static function prerender(_arg1:String):void{ var classRef:Class; var tempSprite:Sprite; var newEntry:PrerenderedBitmap; var bounds:Rectangle; var bd:BitmapData; var tempMC:MovieClip; var n:Number; var linkageName = _arg1; if (bitmapTable[linkageName]){ return; }; try { classRef = (getDefinitionByName(linkageName) as Class); } catch(e:Error) { return; }; if (!classRef){ return; }; tempSprite = new (classRef); if ((((tempSprite is MovieClip)) && (((tempSprite as MovieClip).totalFrames > 1)))){ tempMC = (tempSprite as MovieClip); n = 1; while (n <= tempMC.totalFrames) { tempMC.gotoAndStop(n); newEntry = new PrerenderedBitmap(); bounds = tempMC.getBounds(tempMC); newEntry.dx = bounds.left; newEntry.dy = bounds.top; bd = new BitmapData(Math.ceil(bounds.width), Math.ceil(bounds.height), true, 0); bd.draw(tempMC, new Matrix(1, 0, 0, 1, -(bounds.left), -(bounds.top))); newEntry.bitmapData = bd; newEntry.bitmapRect = new Rectangle(0, 0, Math.ceil(bounds.width), Math.ceil(bounds.height)); bitmapTable[((linkageName + "-") + n)] = newEntry; n = (n + 1); }; bitmapTable[linkageName] = bitmapTable[(linkageName + "-1")]; } else { newEntry = new PrerenderedBitmap(); bounds = tempSprite.getBounds(tempSprite); newEntry.dx = bounds.left; newEntry.dy = bounds.top; bd = new BitmapData(Math.ceil(bounds.width), Math.ceil(bounds.height), true, 0); bd.draw(tempSprite, new Matrix(1, 0, 0, 1, -(bounds.left), -(bounds.top))); newEntry.bitmapData = bd; newEntry.bitmapRect = new Rectangle(0, 0, Math.ceil(bounds.width), Math.ceil(bounds.height)); bitmapTable[linkageName] = newEntry; }; } public static function destroyPrerendered():void{ var _local1:PrerenderedBitmap; for each (_local1 in bitmapTable) { _local1.bitmapData.dispose(); }; bitmapTable = {}; } } }//package com.nitrome.flipside import flash.display.*; import flash.geom.*; class PrerenderedBitmap { public var bitmapRect:Rectangle; public var dx:Number; public var dy:Number; public var bitmapData:BitmapData; private function PrerenderedBitmap(){ } }
Section 105
//BackToGameSelectButton (com.nitrome.game.BackToGameSelectButton) package com.nitrome.game { import flash.events.*; public class BackToGameSelectButton extends SimpleButton { public var __id14_:FlipsideFont; public function BackToGameSelectButton(){  (); } function  (){ try { __id14_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id14_.align = "center"; __id14_.align_vert = "center"; __id14_.color = 0xFFFFFF; __id14_.id = "None"; __id14_.line_spacing = 18; __id14_.text = "back"; __id14_.tracking = 0; try { __id14_["componentInspectorSetting"] = false; } catch(e:Error) { }; } override public function onClick(_arg1:MouseEvent):void{ NitromeGame.transition.doTween("game_select"); } } }//package com.nitrome.game
Section 106
//BackToTitleButton (com.nitrome.game.BackToTitleButton) package com.nitrome.game { import flash.events.*; public class BackToTitleButton extends SimpleButton { override public function onClick(_arg1:MouseEvent):void{ NitromeGame.transition.doTween("title_screen"); } } }//package com.nitrome.game
Section 107
//ContinueGameButton (com.nitrome.game.ContinueGameButton) package com.nitrome.game { import com.nitrome.flipside.*; import flash.events.*; public class ContinueGameButton extends SimpleButton { public var __id1_:FlipsideFont; public function ContinueGameButton(){ (); } function (){ try { __id1_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id1_.align = "center"; __id1_.align_vert = "center"; __id1_.color = 0xFFFFFF; __id1_.id = "None"; __id1_.line_spacing = 18; __id1_.text = "continue"; __id1_.tracking = 0; try { __id1_["componentInspectorSetting"] = false; } catch(e:Error) { }; } override public function onClick(_arg1:MouseEvent):void{ if (Controller.popup){ Controller.popup.close(); }; } } }//package com.nitrome.game
Section 108
//CreditsButton (com.nitrome.game.CreditsButton) package com.nitrome.game { import flash.events.*; public class CreditsButton extends SimpleButton { public var __id11_:FlipsideFont; public function CreditsButton(){ (); } function (){ try { __id11_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id11_.align = "center"; __id11_.align_vert = "center"; __id11_.color = 0xFFFFFF; __id11_.id = "None"; __id11_.line_spacing = 18; __id11_.text = "Credits"; __id11_.tracking = 0; try { __id11_["componentInspectorSetting"] = false; } catch(e:Error) { }; } override public function onClick(_arg1:MouseEvent):void{ NitromeGame.transition.doTween("credits"); } } }//package com.nitrome.game
Section 109
//EndGameButton (com.nitrome.game.EndGameButton) package com.nitrome.game { import com.nitrome.flipside.*; import flash.events.*; public class EndGameButton extends SimpleButton { public var __id2_:FlipsideFont; public function EndGameButton(){ (); } function (){ try { __id2_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id2_.align = "center"; __id2_.align_vert = "center"; __id2_.color = 0xFFFFFF; __id2_.id = "None"; __id2_.line_spacing = 18; __id2_.text = "end game"; __id2_.tracking = 0; try { __id2_["componentInspectorSetting"] = false; } catch(e:Error) { }; } override public function onClick(_arg1:MouseEvent):void{ var e = _arg1; if (Controller.popup){ Controller.popup.close(); }; Controller.gameplayRunning = false; NitromeGame.transition.doTween(function (){ Controller.endGame(); NitromeGame.timeline.gotoAndStop("title_screen"); }); } } }//package com.nitrome.game
Section 110
//ExitToLevelSelectButton (com.nitrome.game.ExitToLevelSelectButton) package com.nitrome.game { import com.nitrome.flipside.*; import flash.events.*; public class ExitToLevelSelectButton extends SimpleButton { public var __id7_:FlipsideFont; public function ExitToLevelSelectButton(){  (); } function  (){ try { __id7_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id7_.align = "center"; __id7_.align_vert = "center"; __id7_.color = 0xFFFFFF; __id7_.id = "None"; __id7_.line_spacing = 18; __id7_.text = "back"; __id7_.tracking = 0; try { __id7_["componentInspectorSetting"] = false; } catch(e:Error) { }; } override public function onClick(_arg1:MouseEvent):void{ var e = _arg1; if (Controller.popup){ Controller.popup.close(); }; Controller.gameplayRunning = false; NitromeGame.transition.doTween(function (){ Controller.endGame(); NitromeGame.timeline.gotoAndStop("level_select_2p"); }); } } }//package com.nitrome.game
Section 111
//FinalBackToTitleButton (com.nitrome.game.FinalBackToTitleButton) package com.nitrome.game { public dynamic class FinalBackToTitleButton extends BackToTitleButton { public var __id13_:FlipsideFont; public function FinalBackToTitleButton(){  (); } function  (){ try { __id13_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id13_.align = "center"; __id13_.align_vert = "center"; __id13_.color = 0xFFFFFF; __id13_.id = "None"; __id13_.line_spacing = 18; __id13_.text = "back"; __id13_.tracking = 0; try { __id13_["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package com.nitrome.game
Section 112
//FinalSubmitScoreButton (com.nitrome.game.FinalSubmitScoreButton) package com.nitrome.game { public dynamic class FinalSubmitScoreButton extends SubmitScoreButton { public var __id15_:FlipsideFont; public function FinalSubmitScoreButton(){  (); } function  (){ try { __id15_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id15_.align = "center"; __id15_.align_vert = "center"; __id15_.color = 0xFFFFFF; __id15_.id = "None"; __id15_.line_spacing = 18; __id15_.text = "submit score"; __id15_.tracking = 0; try { __id15_["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package com.nitrome.game
Section 113
//FxToggle (com.nitrome.game.FxToggle) package com.nitrome.game { import flash.events.*; public class FxToggle extends SimpleButton { public function FxToggle(){ if (!NitromeGame.sfx){ gotoAndStop("_off_up"); } else { gotoAndStop("_on_up"); }; } override protected function updateGraphic():void{ if (over){ if (NitromeGame.sound_manager.sfx){ gotoAndStop("_on_over"); } else { if (!NitromeGame.sound_manager.sfx){ gotoAndStop("_off_over"); }; }; } else { if (NitromeGame.sound_manager.sfx){ gotoAndStop("_on_up"); } else { if (!NitromeGame.sound_manager.sfx){ gotoAndStop("_off_up"); }; }; }; } override public function onClick(_arg1:MouseEvent):void{ NitromeGame.sound_manager.toggleSfx(); updateGraphic(); } } }//package com.nitrome.game
Section 114
//HelpButton (com.nitrome.game.HelpButton) package com.nitrome.game { import flash.events.*; public class HelpButton extends SimpleButton { public var __id10_:FlipsideFont; public function HelpButton(){ (); } function (){ try { __id10_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id10_.align = "center"; __id10_.align_vert = "center"; __id10_.color = 0xFFFFFF; __id10_.id = "None"; __id10_.line_spacing = 18; __id10_.text = "Help"; __id10_.tracking = 0; try { __id10_["componentInspectorSetting"] = false; } catch(e:Error) { }; } override public function onClick(_arg1:MouseEvent):void{ NitromeGame.transition.doTween("help"); } } }//package com.nitrome.game
Section 115
//IngameBackToTitleButton (com.nitrome.game.IngameBackToTitleButton) package com.nitrome.game { public dynamic class IngameBackToTitleButton extends BackToTitleButton { public var __id12_:FlipsideFont; public function IngameBackToTitleButton(){  (); } function  (){ try { __id12_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id12_.align = "center"; __id12_.align_vert = "center"; __id12_.color = 0xFFFFFF; __id12_.id = "None"; __id12_.line_spacing = 18; __id12_.text = "back"; __id12_.tracking = 0; try { __id12_["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package com.nitrome.game
Section 116
//IngamePopup (com.nitrome.game.IngamePopup) package com.nitrome.game { import com.nitrome.flipside.*; import flash.display.*; import flash.events.*; import com.nitrome.util.*; public class IngamePopup extends MovieClip { public var  :String; public var  :Number;// = 0 public var  :Boolean; public var  :Number;// = 0 public var inner:MovieClip; public var  :Number;// = 0 public var  :Boolean;// = true public var  :Number;// = 10 public var  :Number;// = 0 public function IngamePopup(){   = true;  = 0;  = 0;   = 0;   = 0;   = 10; super(); addFrameScript(0, frame1, 8, frame9, 14, frame15); addEventListener(Event.ADDED, onAdded); x = 275; y = 200; } public function destroy():void{  (); removeEventListener(Event.ADDED, onAdded); } function frame1(){ stop(); } public function onAdded(_arg1:Event):void{ if ((((_arg1.target.parent == this)) && ((_arg1.target is MovieClip)))){ (_arg1.target as MovieClip).gotoAndStop( ); } else { if ((_arg1.target is FlipsideFont)){ }; }; } private function  ():void{ if (parent){ parent.removeChild(this); }; gotoAndStop(1); if ( ){ Controller.gameplayRunning = true; }; } function frame9(){   = false; stop(); } function frame15(){  (); } public function advance():void{ var _local1:String; if (!inner){ return; }; if (Key.isDown(32)){  (); }; if (! ){ if (((inner.levelScore) && (( <  )))){  = ( + 153); if ( >  ){  =  ; }; inner.levelScore.text =  .toString(); } else { if (  > 0){  --; } else { if (((inner.totalScore) && (( <  )))){  = ( + 357); if ( >  ){  =  ; }; inner.totalScore.text =  .toString(); }; }; }; _local1 = Controller.player1Score.toString(); if (((inner.player1Score) && (!((inner.player1Score.text == _local1))))){ inner.player1Score.text = _local1; }; _local1 = Controller.player2Score.toString(); if (((inner.player2Score) && (!((inner.player2Score.text == _local1))))){ inner.player2Score.text = _local1; }; }; } public function get isOpen():Boolean{ return (!((currentFrame == 1))); } public function  ():void{ var _local1:Number; var _local2:DisplayObject; _local1 = 0; while (_local1 < MovieClip(inner).numChildren) { _local2 = inner.getChildAt(_local1); if ((((_local2 is SimpleButton)) && ((_local2.name.substr(0, 7) == "default")))){ (_local2 as SimpleButton).onClick(null); return; }; _local1++; }; } public function doPopup(_arg1:String, _arg2:Boolean=false):void{   = _arg1; gotoAndPlay(2); if (!parent){ Controller.root.content.addChild(this); };   = Controller.levelScore();   = Score.value;  = ( = 0);   = true;   = 10; this.  = _arg2; } public function close():void{ if (((parent) || (!((currentFrame == 1))))){ play(); stage.focus = null; }; } } }//package com.nitrome.game
Section 117
//IngameSubmitScoreButton (com.nitrome.game.IngameSubmitScoreButton) package com.nitrome.game { public dynamic class IngameSubmitScoreButton extends SubmitScoreButton { public var __id6_:FlipsideFont; public function IngameSubmitScoreButton(){  (); } function  (){ try { __id6_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id6_.align = "center"; __id6_.align_vert = "center"; __id6_.color = 0xFFFFFF; __id6_.id = "None"; __id6_.line_spacing = 18; __id6_.text = "submit score"; __id6_.tracking = 0; try { __id6_["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package com.nitrome.game
Section 118
//LevelStartButton (com.nitrome.game.LevelStartButton) package com.nitrome.game { import com.nitrome.flipside.*; import flash.events.*; public class LevelStartButton extends SimpleButton { private var :Boolean; public var numberField:FlipsideFont; private var number:Number; public function LevelStartButton(){ number = Number(name.substr(6));  = NitromeGame.getLevelUnlocked(number); useHandCursor = (buttonMode = ); this.addEventListener(Event.ADDED_TO_STAGE, ); (); } function (){ try { numberField["componentInspectorSetting"] = true; } catch(e:Error) { }; numberField.align = "center"; numberField.align_vert = "center"; numberField.color = 0xFFFFFF; numberField.id = "None"; numberField.line_spacing = 18; numberField.text = "15"; numberField.tracking = 0; try { numberField["componentInspectorSetting"] = false; } catch(e:Error) { }; } public function (_arg1:Event):void{ updateGraphic(); } override protected function updateGraphic():void{ if (){ if (over){ gotoAndStop("over"); } else { gotoAndStop("up"); }; } else { gotoAndStop("locked"); }; if (numberField){ numberField.text = String(number); numberField.visible = ; }; } override public function onClick(_arg1:MouseEvent):void{ var e = _arg1; if (){ NitromeGame.transition.doTween(function (){ NitromeGame.timeline.gotoAndStop("game"); Controller.startingLevel = number; Score.value = 0; }); }; } } }//package com.nitrome.game
Section 119
//LoadingText (com.nitrome.game.LoadingText) package com.nitrome.game { import flash.display.*; public dynamic class LoadingText extends MovieClip { public function LoadingText(){ addFrameScript(4, frame5, 10, frame11); } function frame5(){ stop(); } function frame11(){ stop(); if (parent){ parent.removeChild(this); }; } } }//package com.nitrome.game
Section 120
//MtvLink (com.nitrome.game.MtvLink) package com.nitrome.game { import flash.display.*; import flash.events.*; import flash.net.*; public class MtvLink extends SimpleButton { public function MtvLink(){ this.addEventListener(MouseEvent.CLICK, click); } public function click(_arg1:MouseEvent):void{ navigateToURL(new URLRequest(""), "_blank"); } } }//package com.nitrome.game
Section 121
//MusicToggle (com.nitrome.game.MusicToggle) package com.nitrome.game { import flash.events.*; public class MusicToggle extends SimpleButton { public function MusicToggle(){ if (!NitromeGame.music){ gotoAndStop("_off_up"); } else { gotoAndStop("_on_up"); }; } override protected function updateGraphic():void{ if (over){ if (NitromeGame.sound_manager.music){ gotoAndStop("_on_over"); } else { if (!NitromeGame.sound_manager.music){ gotoAndStop("_off_over"); }; }; } else { if (NitromeGame.sound_manager.music){ gotoAndStop("_on_up"); } else { if (!NitromeGame.sound_manager.music){ gotoAndStop("_off_up"); }; }; }; } override public function onClick(_arg1:MouseEvent):void{ NitromeGame.sound_manager.toggleMusic(); updateGraphic(); } } }//package com.nitrome.game
Section 122
//NextLevelButton (com.nitrome.game.NextLevelButton) package com.nitrome.game { import com.nitrome.flipside.*; import flash.events.*; public class NextLevelButton extends SimpleButton { public var __id4_:FlipsideFont; public function NextLevelButton(){  (); } function  (){ try { __id4_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id4_.align = "center"; __id4_.align_vert = "center"; __id4_.color = 0xFFFFFF; __id4_.id = "None"; __id4_.line_spacing = 18; __id4_.text = "continue"; __id4_.tracking = 0; try { __id4_["componentInspectorSetting"] = false; } catch(e:Error) { }; } override public function onClick(_arg1:MouseEvent):void{ var e = _arg1; if (Controller.popup){ Controller.popup.close(); }; Controller.gameplayRunning = false; NitromeGame.transition.doTween(function (){ if (Controller.level.number == Level.FINAL_LEVEL_NUMBER){ Controller.endGame(); NitromeGame.timeline.gotoAndStop("congrats"); } else { Controller.changeLevel((Controller.level.number + 1)); }; }); } } }//package com.nitrome.game
Section 123
//NitromeIntro (com.nitrome.game.NitromeIntro) package com.nitrome.game { import flash.display.*; import flash.events.*; public class NitromeIntro extends MovieClip { public var trailLayer:MovieClip; public var E:NitromeIntroLetterE; public var I:NitromeIntroLetterI; public var T:NitromeIntroLetterT; public var N:NitromeIntroLetterN; public var R:NitromeIntroLetterR; public var O:NitromeIntroLetterO; public var M:NitromeIntroLetterM; public function NitromeIntro(){ addFrameScript(105,  ); addEventListener(Event.ENTER_FRAME,  ); } public function  (_arg1:Event):void{ var _local2:NitromeIntroLetter; trailLayer.graphics.clear(); if (N){ N.lightTrail1.pushXY((N.x + 4), (N.y + 14), 1); N.lightTrail2.pushXY((N.x + 10), (N.y + 60), 1); }; if (I){ I.lightTrail1.pushXY((I.x + 16), (I.y + 5), 1); I.lightTrail2.pushXY((I.x + 2), (I.y + 49), 1); }; if (T){ T.lightTrail1.pushXY((T.x + 2), (T.y + 8), 1); T.lightTrail2.pushXY((T.x + 32), (T.y + 10), 1); }; if (R){ R.lightTrail1.pushXY((R.x + 25), (R.y + 2), 1); R.lightTrail2.pushXY((R.x + 10), (R.y + 58), 1); }; if (O){ O.lightTrail1.pushXY((O.x + 25), (O.y + 2), 1); O.lightTrail2.pushXY((O.x + 10), (O.y + 60), 1); }; if (M){ M.lightTrail1.pushXY((M.x + 4), (M.y + 65), 1); M.lightTrail2.pushXY((M.x + 47), (M.y + 48), 1); }; if (E){ E.lightTrail1.pushXY((E.x + 4), (E.y + 14), 1); E.lightTrail2.pushXY((E.x + 10), (E.y + 60), 1); }; for each (_local2 in [N, I, T, R, O, M, E]) { if (_local2){ _local2.lightTrail1.length = (60 - currentFrame); _local2.lightTrail2.length = (60 - currentFrame); _local2.lightTrail1.drawToSprite(trailLayer); _local2.lightTrail2.drawToSprite(trailLayer); }; }; } function  (){ stop(); NitromeGame.transition.doTween("title_screen"); } } }//package com.nitrome.game
Section 124
//NitromeIntroLetter (com.nitrome.game.NitromeIntroLetter) package com.nitrome.game { import com.nitrome.flipside.*; import flash.display.*; public class NitromeIntroLetter extends Sprite { public var lightTrail1:LightTrail; public var lightTrail2:LightTrail; public function NitromeIntroLetter(){ lightTrail1 = new LightTrail(); lightTrail1.(0xFFFF); lightTrail2 = new LightTrail(); lightTrail2.(0xFFFF); } } }//package com.nitrome.game
Section 125
//NitromeIntroLetterE (com.nitrome.game.NitromeIntroLetterE) package com.nitrome.game { public dynamic class NitromeIntroLetterE extends NitromeIntroLetter { } }//package com.nitrome.game
Section 126
//NitromeIntroLetterI (com.nitrome.game.NitromeIntroLetterI) package com.nitrome.game { public dynamic class NitromeIntroLetterI extends NitromeIntroLetter { } }//package com.nitrome.game
Section 127
//NitromeIntroLetterM (com.nitrome.game.NitromeIntroLetterM) package com.nitrome.game { public dynamic class NitromeIntroLetterM extends NitromeIntroLetter { } }//package com.nitrome.game
Section 128
//NitromeIntroLetterN (com.nitrome.game.NitromeIntroLetterN) package com.nitrome.game { public dynamic class NitromeIntroLetterN extends NitromeIntroLetter { } }//package com.nitrome.game
Section 129
//NitromeIntroLetterO (com.nitrome.game.NitromeIntroLetterO) package com.nitrome.game { public dynamic class NitromeIntroLetterO extends NitromeIntroLetter { } }//package com.nitrome.game
Section 130
//NitromeIntroLetterR (com.nitrome.game.NitromeIntroLetterR) package com.nitrome.game { public dynamic class NitromeIntroLetterR extends NitromeIntroLetter { } }//package com.nitrome.game
Section 131
//NitromeIntroLetterT (com.nitrome.game.NitromeIntroLetterT) package com.nitrome.game { public dynamic class NitromeIntroLetterT extends NitromeIntroLetter { } }//package com.nitrome.game
Section 132
//NitromeLink (com.nitrome.game.NitromeLink) package com.nitrome.game { import flash.display.*; import flash.events.*; import flash.net.*; public class NitromeLink extends SimpleButton { public function NitromeLink(){ this.addEventListener(MouseEvent.CLICK, click); } public function click(_arg1:MouseEvent):void{ navigateToURL(new URLRequest(""), "_blank"); } } }//package com.nitrome.game
Section 133
//OnePlayerButton (com.nitrome.game.OnePlayerButton) package com.nitrome.game { import com.nitrome.flipside.*; import flash.events.*; public class OnePlayerButton extends SimpleButton { override public function onClick(_arg1:MouseEvent):void{ Controller.multiplayerGame = false; NitromeGame.transition.doTween("level_select_1p"); } } }//package com.nitrome.game
Section 134
//Overlay (com.nitrome.game.Overlay) package com.nitrome.game { import com.nitrome.flipside.*; import flash.display.*; import flash.events.*; public class Overlay extends MovieClip { public var  :String; public function Overlay(){ addFrameScript(0, frame1, 30, frame31); addEventListener(Event.ADDED, onAdded); x = 275; y = 200; } public function destroy():void{  (); removeEventListener(Event.ADDED, onAdded); } public function doOverlay(_arg1:String):void{  = _arg1; gotoAndPlay(2); if (!parent){ Controller.content.addChild(this); }; } function frame1(){ stop(); } public function onAdded(_arg1:Event):void{ if ((((_arg1.target.parent == this)) && ((_arg1.target is MovieClip)))){ (_arg1.target as MovieClip).gotoAndStop( ); }; } public function  ():void{ if (parent){ parent.removeChild(this); }; gotoAndStop(1); } function frame31(){  (); } public function get isOpen():Boolean{ return (!((currentFrame == 1))); } } }//package com.nitrome.game
Section 135
//PauseButton (com.nitrome.game.PauseButton) package com.nitrome.game { import com.nitrome.flipside.*; import flash.events.*; public class PauseButton extends SimpleButton { override public function onClick(_arg1:MouseEvent):void{ if (Controller.popup.isOpen){ return; }; if (Controller.overlay.isOpen){ return; }; if (((Controller.overlay2) && (Controller.overlay2.isOpen))){ return; }; if (!Controller.gameplayRunning){ return; }; Controller.gameplayRunning = false; Controller.popup.doPopup("paused", true); } } }//package com.nitrome.game
Section 136
//PlayButton (com.nitrome.game.PlayButton) package com.nitrome.game { import flash.events.*; public class PlayButton extends SimpleButton { public var __id8_:FlipsideFont; public function PlayButton(){  (); } function  (){ try { __id8_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id8_.align = "center"; __id8_.align_vert = "center"; __id8_.color = 0xFFFFFF; __id8_.id = "None"; __id8_.line_spacing = 18; __id8_.text = "Play"; __id8_.tracking = 0; try { __id8_["componentInspectorSetting"] = false; } catch(e:Error) { }; } override public function onClick(_arg1:MouseEvent):void{ NitromeGame.transition.doTween("game_select"); } } }//package com.nitrome.game
Section 137
//RestartLevelButton (com.nitrome.game.RestartLevelButton) package com.nitrome.game { import com.nitrome.flipside.*; import flash.events.*; public class RestartLevelButton extends SimpleButton { public var __id5_:FlipsideFont; public function RestartLevelButton(){  (); } function  (){ try { __id5_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id5_.align = "center"; __id5_.align_vert = "center"; __id5_.color = 0xFFFFFF; __id5_.id = "None"; __id5_.line_spacing = 18; __id5_.text = "retry level"; __id5_.tracking = 0; try { __id5_["componentInspectorSetting"] = false; } catch(e:Error) { }; } override public function onClick(_arg1:MouseEvent):void{ var e = _arg1; if (Controller.popup){ Controller.popup.close(); }; Controller.gameplayRunning = false; NitromeGame.transition.doTween(function (){ Controller.changeLevel(Controller.level.number); Score.value = 0; }); } } }//package com.nitrome.game
Section 138
//Score (com.nitrome.game.Score) package com.nitrome.game { public class Score { private static var r:int; private static var _value:int; private static var hash:String; public static function init():void{ r = (int((Math.random() * 2000000)) - 1000000); _value = r; hash = _value.toString(16); } public static function verify():Boolean{ return ((_value.toString(16) == hash)); } public static function get value():int{ return ((_value - r)); } public static function set value(_arg1:int):void{ var _local2:Boolean; _local2 = verify(); r = (int((Math.random() * 2000000)) - 1000000); _value = (r + _arg1); if (_local2){ hash = _value.toString(16); }; } } }//package com.nitrome.game
Section 139
//ScoresButton (com.nitrome.game.ScoresButton) package com.nitrome.game { import flash.events.*; public class ScoresButton extends SimpleButton { public var __id9_:FlipsideFont; public function ScoresButton(){  (); } function  (){ try { __id9_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id9_.align = "center"; __id9_.align_vert = "center"; __id9_.color = 0xFFFFFF; __id9_.id = "None"; __id9_.line_spacing = 18; __id9_.text = "Scores"; __id9_.tracking = 0; try { __id9_["componentInspectorSetting"] = false; } catch(e:Error) { }; } override public function onClick(_arg1:MouseEvent):void{ NitromeGame.transition.doTween("view_scores"); } } }//package com.nitrome.game
Section 140
//SimpleButton (com.nitrome.game.SimpleButton) package com.nitrome.game { import flash.display.*; import flash.events.*; public class SimpleButton extends MovieClip { protected var over:Boolean;// = false public function SimpleButton(){ over = false; super(); mouseChildren = false; buttonMode = true; this.addEventListener(MouseEvent.MOUSE_OVER, ); this.addEventListener(MouseEvent.MOUSE_OUT, ); this.addEventListener(MouseEvent.MOUSE_DOWN, onClick); stop(); } protected function (_arg1:MouseEvent):void{ over = true; updateGraphic(); } protected function (_arg1:MouseEvent):void{ over = false; updateGraphic(); } protected function updateGraphic():void{ if (over){ gotoAndStop("_over"); } else { gotoAndStop("_up"); }; } public function onClick(_arg1:MouseEvent):void{ } } }//package com.nitrome.game
Section 141
//SoundManager (com.nitrome.game.SoundManager) package com.nitrome.game { import flash.display.*; import flash.media.*; public class SoundManager extends SoundManagerSuper { protected const MENU_VOLUME:Number = 1; protected const GAME_VOLUME:Number = 0.7; public var accelerator:MovieClip; public var forceBlock:MovieClip; public var beep1:MovieClip; public var threetwoone:MovieClip; public var laser:MovieClip; public var go:MovieClip; public var beep2:MovieClip; public static const GAME:uint = 1; public static const MENU:uint = 0; public function SoundManager(){ NitromeGame.sound_manager = this; music_sounds.push(new MenuMusic()); music_sounds.push(new GameMusic()); transforms.push(new SoundTransform(MENU_VOLUME, 0)); transforms.push(new SoundTransform(GAME_VOLUME, 0)); channels.push(new SoundChannel()); channels.push(new SoundChannel()); volumes.push(MENU_VOLUME); volumes.push(GAME_VOLUME);  = uint.MAX_VALUE; } } }//package com.nitrome.game
Section 142
//SoundManagerSuper (com.nitrome.game.SoundManagerSuper) package com.nitrome.game { import flash.display.*; import flash.events.*; public class SoundManagerSuper extends Sprite { protected const CROSS_FADE_SPEED:Number = 0.05; public var :int; protected var :Boolean;// = true public var :Boolean;// = false protected var transforms:Array; protected var volumes:Array; protected var music_sounds:Array; protected var :int; protected var :Boolean;// = true protected var channels:Array; protected var :Array; public function SoundManagerSuper(){ var _local1:int; var _local2:MovieClip;  = new Array(); music_sounds = new Array(); channels = new Array(); transforms = new Array(); volumes = new Array();  = true;  = true;  = false; super();  = NitromeGame.music;  = NitromeGame.sfx; _local1 = 0; while (_local1 < numChildren) { _local2 = (getChildAt(_local1) as MovieClip); if (_local2 != null){ [_local2.name] = _local2; }; _local1++; }; } public function set sfx(_arg1:Boolean):void{  = _arg1; } public function get music():Boolean{ return (); } public function toggleMusic():void{ if (){ (); } else {  (); }; } public function playSound(_arg1:String):void{ if (){ if ([_arg1] != null){ [_arg1].gotoAndPlay(2); }; }; } private function (_arg1:Event):void{ if (transforms[].volume > 0){ transforms[].volume = (transforms[].volume - CROSS_FADE_SPEED); channels[].soundTransform = transforms[]; }; if (transforms[].volume < 1){ transforms[].volume = (transforms[].volume + CROSS_FADE_SPEED); channels[].soundTransform = transforms[]; }; if ((((transforms[].volume >= volumes[])) && ((transforms[].volume <= 0)))){ channels[].stop();  = false; _arg1.target.removeEventListener(Event.ENTER_FRAME, ); }; } public function  ():void{ NitromeGame.music = ( = true); playMusic(, true); } public function set music(_arg1:Boolean):void{  = _arg1; } public function playMusic(_arg1:uint, _arg2:Boolean=false):void{ var _local3:uint; if (((!(( == _arg1))) || (_arg2))){ if (_arg1 < music_sounds.length){ if (){ _local3 = 0; while (_local3 < music_sounds.length) { if (_local3 != _arg1){ if (channels[_local3] != null){ channels[_local3].stop(); }; }; _local3++; }; transforms[_arg1].volume = volumes[_arg1]; channels[_arg1] = music_sounds[_arg1].play(0, int.MAX_VALUE, transforms[_arg1]); };  = _arg1; }; }; } public function  ():void{ NitromeGame.sfx = ( = false); } public function toggleSfx():void{  = !(); NitromeGame.sfx = !(NitromeGame.sfx); } public function ():void{ var _local1:uint; _local1 = 0; while (_local1 < channels.length) { if (channels[_local1] != null){ channels[_local1].stop(); }; _local1++; }; NitromeGame.music = ( = false); } public function get sfx():Boolean{ return (); } public function ():void{ NitromeGame.sfx = ( = true); } public function (_arg1:int):void{ if (((((!()) || (( == _arg1)))) || ())){ return; }; transforms[_arg1].volume = 0; channels[_arg1] = music_sounds[_arg1].play(0, int.MAX_VALUE, transforms[_arg1]);  = ;  = _arg1;  = true; addEventListener(Event.ENTER_FRAME, ); } } }//package com.nitrome.game
Section 143
//SubmitScoreButton (com.nitrome.game.SubmitScoreButton) package com.nitrome.game { import com.nitrome.flipside.*; import flash.events.*; public class SubmitScoreButton extends SimpleButton { public function SubmitScoreButton(){ if (Score.value == 0){ visible = false; }; } override public function onClick(_arg1:MouseEvent):void{ var e = _arg1; NitromeGame.transition.doTween(function (){ if (Controller.content){ Controller.endGame(); }; NitromeGame.timeline.gotoAndStop("submit_score"); }); } } }//package com.nitrome.game
Section 144
//TemplateFont (com.nitrome.game.TemplateFont) package com.nitrome.game { public class TemplateFont extends TextComponent { public function TemplateFont(){ _tracking = 0; _line_spacing = 18; _id = "None"; } override public function get id():String{ return (_id); } override public function set id(_arg1:String){ _id = _arg1; } override public function set tracking(_arg1:int){ _tracking = _arg1; } override protected function getClassNameFromChar(_arg1:String):String{ if (_arg1 == "Space"){ return ("SPACE"); }; if (_arg1 == "."){ return ("STOP"); }; if (_arg1 == "?"){ return ("QUESTION"); }; if (_arg1 == ","){ return ("COMMA"); }; if (_arg1 == "!"){ return ("EXCLAMATION"); }; if (_arg1 == "\\"){ return ("BACKSLASH"); }; if (_arg1 == "/"){ return ("FORWARDSLASH"); }; if (_arg1 == "="){ return ("EQUALS"); }; if (_arg1 == "+"){ return ("PLUS"); }; if (_arg1 == "("){ return ("LEFTBRACKET"); }; if (_arg1 == ")"){ return ("RIGHTBRACKET"); }; if (_arg1 == "-"){ return ("HYPHEN"); }; if (_arg1 == "\""){ return ("QUOTES"); }; if (_arg1 == ":"){ return ("COLON"); }; if (_arg1 == "�"){ return ("POUND"); }; if (_arg1 == "_"){ return ("UNDERSCORE"); }; if (_arg1 == "@"){ return ("AT"); }; if (_arg1 == "'"){ return ("APOSTROPHE"); }; if ((((((_arg1 == "\n")) || ((_arg1 == "\r")))) || ((_arg1 == "|")))){ return ("NEWLINE"); }; return (_arg1); } override public function get tracking():int{ return (_tracking); } override public function set line_spacing(_arg1:int){ _line_spacing = _arg1; } override public function get line_spacing():int{ return (_line_spacing); } } }//package com.nitrome.game
Section 145
//TextComponent (com.nitrome.game.TextComponent) package com.nitrome.game { import flash.display.*; import flash.geom.*; import flash.utils.*; public class TextComponent extends Sprite { protected var  :String;// = "center" protected var  :Array; protected var  :String;// = "enter text" protected var _tracking:int;// = 0 protected var :ColorTransform;// = null private var :Number;// = 0 protected var :Array; protected var _id:String;// = "None" private var  :Number;// = 0 protected var  :String;// = "center" private var  :Sprite; protected var :Sprite; protected var _line_spacing:int;// = 18 protected var :uint;// = 0xFFFFFF public function TextComponent(){  = "enter text"; _tracking = 0;  = "center";  = "center"; _line_spacing = 18; _id = "None";  = 0xFFFFFF;  = null;  = 0;  = 0; super(); init(); (); draw(); } public function get align():String{ return ( ); } private function init():void{  = new Array();  = new Array();  = width;  = height; scaleX = 1; scaleY = 1; removeChildAt(0); } public function set align(_arg1:String){  = _arg1; draw(); } private function ():void{  = new Sprite(); addChild( ); } public function get align_vert():String{ return ( ); } public function get text():String{ return ( ); } public function set id(_arg1:String){ _id = _arg1; draw(); } protected function draw():void{ var line:*; var i:int; var isLivePreview:Boolean; var c:*; var class_name:String; var class_id:Class; var temp:Sprite; var j:int; var x_tracking:*;  .graphics.clear(); if ( != null){ this.removeChild(); };  = new Sprite();  = new Array(); line = 0; .push(.addChild(new Sprite()));  = new Array();  .push(new Array()); i = 0; while (i <  .length) {  =  .toUpperCase(); c =  .charAt(i); class_name = getClassNameFromChar(c); if (class_name == "NEWLINE"){ line = (line + 1);  .push(new Array()); .push(.addChild(new Sprite())); [line].y = (line_spacing * line); } else { if (class_name != ""){ try { class_id = (getDefinitionByName(((("Text_" + _id) + "_") + class_name)) as Class); } catch(e:ReferenceError) { try { class_id = (getDefinitionByName((("Text_" + _id) + "_SPACE")) as Class); } catch(e:ReferenceError) { trace(("TextComponent error: could not find font " + _id)); break; }; }; if (Class != null){ temp = (new (class_id) as Sprite);  [line].push([line].addChild(temp)); }; }; }; i = (i + 1); }; i = 0; while (i <  .length) { j = 1; while (j <  [i].length) { x_tracking = _tracking; if ( [i][(j - 1)].kerning != null){ x_tracking = (x_tracking +  [i][(j - 1)].kerning._x); } else { x_tracking = (x_tracking +  [i][(j - 1)].width); };  [i][j].x = ( [i][(j - 1)].x + x_tracking); j = (j + 1); }; if ( == "center"){ [i].x = ([i].x + int((( * 0.5) - ([i].width * 0.5)))); } else { if ( == "right"){ [i].x = ([i].x + int(( - [i].width))); }; }; i = (i + 1); }; if ( == "bottom"){ .y = (.y + int(( - .height))); } else { if ( == "center"){ .y = (.y + int((( * 0.5) - (.height * 0.5)))); }; }; if ( != null){ .transform.colorTransform = ; }; .cacheAsBitmap = true; this.addChild(); this.cacheAsBitmap = true; isLivePreview = ((!((parent == null))) && ((getQualifiedClassName(parent) == "fl.livepreview::LivePreviewParent"))); if (((isLivePreview) && (( == "")))){  .graphics.clear();  .graphics.lineStyle(1, 0);  .graphics.beginFill(0xFFFFFF, 0.5);  .graphics.drawRoundRect(0, 0,  , , 10, 10);  .graphics.endFill(); }; } public function get id():String{ return (_id); } public function set align_vert(_arg1:String){  = _arg1; draw(); } public function get color():uint{ return (); } public function set text(_arg1:String){  = _arg1; draw(); } public function set tracking(_arg1:int){ _tracking = _arg1; draw(); } public function (_arg1:Number, _arg2:Number):void{  = _arg1;  = _arg2; draw(); } protected function getClassNameFromChar(_arg1:String):String{ if (_arg1 == "Space"){ return ("SPACE"); }; if (_arg1 == "."){ return ("STOP"); }; if (_arg1 == "?"){ return ("QUESTION"); }; if (_arg1 == ","){ return ("COMMA"); }; if (_arg1 == "!"){ return ("EXCLAMATION"); }; if (_arg1 == "\\"){ return ("BACKSLASH"); }; if (_arg1 == "/"){ return ("FORWARDSLASH"); }; if (_arg1 == "="){ return ("EQUALS"); }; if (_arg1 == "+"){ return ("PLUS"); }; if (_arg1 == "("){ return ("LEFTBRACKET"); }; if (_arg1 == ")"){ return ("RIGHTBRACKET"); }; if (_arg1 == "-"){ return ("HYPHEN"); }; if (_arg1 == "\""){ return ("QUOTES"); }; if (_arg1 == ":"){ return ("COLON"); }; if (_arg1 == "�"){ return ("POUND"); }; if (_arg1 == "_"){ return ("UNDERSCORE"); }; if (_arg1 == "@"){ return ("AT"); }; if (_arg1 == "'"){ return ("APOSTROPHE"); }; if ((((((_arg1 == "\n")) || ((_arg1 == "\r")))) || ((_arg1 == "|")))){ return ("NEWLINE"); }; return (_arg1); } public function get tracking():int{ return (_tracking); } public function set color(_arg1:uint):void{  = _arg1; if (_arg1 == 0xFFFFFF){  = null; } else {  = new ColorTransform((((_arg1 >> 16) % 0x0100) / 0xFF), (((_arg1 >> 8) % 0x0100) / 0xFF), ((_arg1 % 0x0100) / 0xFF)); }; draw(); } public function set line_spacing(_arg1:int){ _line_spacing = _arg1; draw(); } public function get line_spacing():int{ return (_line_spacing); } } }//package com.nitrome.game
Section 146
//Transition (com.nitrome.game.Transition) package com.nitrome.game { import flash.display.*; public class Transition extends MovieClip { private var  :Function;// = null public function Transition(){  = null; super(); addFrameScript(0, frame1, 12, frame13); NitromeGame.transition = this; stop(); mouseEnabled = false; mouseChildren = false; } function frame1(){  (); } function frame13(){  (); } protected function  ():void{ if ( != null){ gotoAndPlay(1); } else { stop(); this.visible = false; }; } public function doTween(_arg1:Object):void{ var target = _arg1; play(); if ((target is Function)){  = (target as Function); } else {  = function (){ NitromeGame.timeline.gotoAndStop(target); }; }; this.visible = true; } protected function  ():void{ if ( != null){  ();  = null; }; } } }//package com.nitrome.game
Section 147
//TwoPlayerButton (com.nitrome.game.TwoPlayerButton) package com.nitrome.game { import com.nitrome.flipside.*; import flash.events.*; public class TwoPlayerButton extends SimpleButton { override public function onClick(_arg1:MouseEvent):void{ Controller.multiplayerGame = true; NitromeGame.transition.doTween("level_select_2p"); } } }//package com.nitrome.game
Section 148
//ArrowButton (com.nitrome.highscore.ArrowButton) package com.nitrome.highscore { import flash.events.*; import com.nitrome.game.*; public class ArrowButton extends SimpleButton { var  :HighScoreBoard; public function ArrowButton(){  = (parent as HighScoreBoard); } public function hide():void{ visible = false; } override public function onClick(_arg1:MouseEvent):void{ if (name == "_prev_arrow"){  .shiftScoresPrev(); } else { if (name == "_next_arrow"){  .shiftScoresNext(); }; }; } public function show():void{ visible = true; } } }//package com.nitrome.highscore
Section 149
//ClearButton (com.nitrome.highscore.ClearButton) package com.nitrome.highscore { import flash.events.*; import com.nitrome.game.*; public class ClearButton extends SimpleButton { private var  :ScoreSubmitPanel; public function ClearButton(){  = (parent as ScoreSubmitPanel); } override public function onClick(_arg1:MouseEvent):void{  .clearName(); } } }//package com.nitrome.highscore
Section 150
//HighScoreBoard (com.nitrome.highscore.HighScoreBoard) package com.nitrome.highscore { import flash.display.*; import flash.events.*; import flash.net.*; public class HighScoreBoard extends MovieClip { public const MAX_DIGITS:int = 8; private const MAX_RANK:int = 100; public const NUM_LINES:int = 10; public var _score_line_7:ScoreLine; private var :Array; private var  :Boolean;// = false public var _next_arrow:NextArrow; private var :URLRequest; private var :URLVariables; public var _score_line_10:ScoreLine; private var :ArrowButton; public var _prev_arrow:PrevArrow; private var  :int; public var _score_line_1:ScoreLine; public var _score_line_2:ScoreLine; public var _score_line_3:ScoreLine; public var _score_line_4:ScoreLine; public var _score_line_5:ScoreLine; public var _score_line_6:ScoreLine; public var _score_line_8:ScoreLine; public var _score_line_9:ScoreLine; private var :URLLoader; private var  :ArrowButton; public function HighScoreBoard(){ var _local1:int;  = false; super();  = new Array(NUM_LINES); if (NitromeGame.isAtURL(NitromeGame.NITROME)){ }; _local1 = 0; while (_local1 < .length) { [_local1] = (getChildByName(("_score_line_" + (_local1 + 1))) as HighScoreLine); _local1++; };  = (getChildByName("_prev_arrow") as ArrowButton);  .hide();  = (getChildByName("_next_arrow") as ArrowButton); .hide(); addEventListener(Event.ADDED_TO_STAGE, init); } public function (_arg1:int):void{  = _arg1;  = new URLLoader();  = new URLVariables();  = new URLRequest(NitromeGame.RETRIEVE_URL); .method = URLRequestMethod.POST; .data = ; .dataFormat = URLLoaderDataFormat.VARIABLES; .addEventListener(Event.COMPLETE, ); .addEventListener(IOErrorEvent.IO_ERROR, ); .min_rank = String(_arg1); .game_name = NitromeGame.game_id; .time_based = (NitromeGame.time_based) ? "1" : "0"; .load(); } private function (_arg1:Event):void{ var _local2:String; _local2 = _arg1.target.data.result;  (_local2); } private function init(_arg1:Event):void{ (1); _arg1.target.removeEventListener(Event.ADDED_TO_STAGE, init); } public function shiftScoresPrev():void{ var _local1:int; _local1 = ( - 10); if (_local1 < 1){ _local1 = 1; }; (_local1); } public function set zero_fill(_arg1:Boolean):void{  = _arg1; } private function (_arg1:IOErrorEvent):void{ trace(("Retrieve scores failed: " + _arg1.text)); } public function get zero_fill():Boolean{ return ( ); } public function  (_arg1:Array):void{ var _local2:int; var _local3:String; var _local4:String; if (_arg1.length > 0){ _local2 = 0; while (_local2 <= 9) { _local3 = String(_arg1[_local2].user_name); _local4 = String(_arg1[_local2].score); if ((((_local3 == "")) || ((_local3 == null)))){ [_local2].hide(); .hide(); } else { [_local2].displayData(( + _local2), _local3, _local4); }; _local2++; }; } else { trace("no leaderboard data"); }; } public function  (_arg1:String):void{ var _local2:int; var _local3:Object; if (_arg1 != "0"){ _local2 = 0; while (_local2 < .length) { _local3 = NitromeGame.getHighScoreLine(_arg1, (_local2 + 1)); if (_local3 == null){ [_local2].hide(); } else { [_local2].displayData(( + _local2), _local3.username, _local3.score); }; _local2++; }; if (NitromeGame.displayNextButton(_arg1)){ .show(); } else { .hide(); }; if (NitromeGame.displayPreviousButton(_arg1)){  .show(); } else {  .hide(); }; }; } public function shiftScoresNext():void{ var _local1:int; _local1 = ( + 10); (_local1); } } }//package com.nitrome.highscore
Section 151
//HighScoreLine (com.nitrome.highscore.HighScoreLine) package com.nitrome.highscore { import flash.display.*; import flash.events.*; import flash.text.*; public class HighScoreLine extends Sprite { private const FADE_SPEED:Number = 0.3; private var  :int; private var  :TextField; private var :TextField; public var _score_text:TextField; private var :Boolean; private var :TextField; private var :int; public var _rank_text:TextField; public var _name_text:TextField; private var  :HighScoreBoard; public function HighScoreLine(){ visible = false;  = false;  = (getChildByName("_score_text") as TextField);  = (getChildByName("_name_text") as TextField);  = (getChildByName("_rank_text") as TextField);  = (parent as HighScoreBoard); } public function hide():void{ trace((name + " hide")); visible = false;  = true; } private function (_arg1:Event):void{ if ( >=  ){ alpha = (alpha + FADE_SPEED); if (alpha >= 1){ _arg1.target.removeEventListener(Event.ENTER_FRAME, ); }; }; ++; } public function displayData(_arg1:int, _arg2:String, _arg3:String):void{ var _local4:int; var _local5:int; var _local6:int; var _local7:int; trace((name + " displayData:"));  .text = String((_arg1 + ".")); .text = _arg2.toUpperCase(); trace(((((_arg1 + ",") + _arg2) + ",") + _arg3)); if ( .zero_fill){ _local4 =  .MAX_DIGITS; _local5 = _arg3.length; _local6 = (_local4 - _local5); _local7 = 1; while (_local7 <= _local6) { _arg3 = ("0" + _arg3); _local7++; }; .text = _arg3; } else { .text = _arg3; }; alpha = 0; visible = true;  = (((_arg1 - 1) %  .NUM_LINES) * int((1 / FADE_SPEED)));  = 0; addEventListener(Event.ENTER_FRAME, ); } } }//package com.nitrome.highscore
Section 152
//LetterButton (com.nitrome.highscore.LetterButton) package com.nitrome.highscore { import flash.events.*; import com.nitrome.game.*; public class LetterButton extends SimpleButton { private var  :TextComponent; public var _letter:FlipsideFont; private var  :String; private var  :ScoreSubmitPanel; public function LetterButton(){  = (parent as ScoreSubmitPanel);   = name;   = (getChildByName("_letter") as TextComponent); addEventListener(Event.ADDED_TO_STAGE, init); } private function init(_arg1:Event):void{  .text =  ; _arg1.target.removeEventListener(Event.ADDED_TO_STAGE, init); } override public function onClick(_arg1:MouseEvent):void{  .addLetter( ); } } }//package com.nitrome.highscore
Section 153
//ScoreSubmitPanel (com.nitrome.highscore.ScoreSubmitPanel) package com.nitrome.highscore { import flash.display.*; import flash.events.*; import com.nitrome.game.*; import flash.net.*; import flash.ui.*; public class ScoreSubmitPanel extends MovieClip { private const MAX_LENGTH:Number = 10; private var  :URLLoader; public var C:LetterButton; public var D:LetterButton; public var E:LetterButton; public var F:LetterButton; public var H:LetterButton; public var I:LetterButton; public var J:LetterButton; public var L:LetterButton; public var A:LetterButton; public var K:LetterButton; public var W:LetterButton; public var X:LetterButton; public var R:LetterButton; public var T:LetterButton; public var U:LetterButton; public var V:LetterButton; public var G:LetterButton; public var Y:LetterButton; public var Z:LetterButton; public var S:LetterButton; public var N:LetterButton; public var O:LetterButton; private var :TextComponent; public var Q:LetterButton; public var M:LetterButton; public var _score_text:FlipsideFont; private var :MovieClip; public var B:LetterButton; public var P:LetterButton; private var :TextComponent; public var _name_text:FlipsideFont; private var :SubmitButton; public var _submit_button:SubmitButton; public var _clear_button:ClearButton; private var  :URLRequest; private var  :URLVariables; public function ScoreSubmitPanel(){  = (getChildByName("_submit_button") as SubmitButton);  = (getChildByName("_name_text") as TextComponent);  = (getChildByName("_score_text") as TextComponent); addEventListener(Event.ADDED_TO_STAGE, init); } public function addLetter(_arg1:String):void{ var _local2:String; var _local3:String; _local2 = .text; if (_local2.length < MAX_LENGTH){ _arg1 = _arg1.toUpperCase(); _local3 = (_local2 + _arg1); .text = _local3; .enable(); }; } private function (_arg1:IOErrorEvent):void{ trace(("Submit score failed: " + _arg1.text)); trace(); NitromeGame.timeline.gotoAndStop("view_scores"); } public function clearName():void{ .disable(); .text = ""; } private function  (_arg1:KeyboardEvent):void{ var _local2:int; _local2 = _arg1.charCode; if ((((((_local2 >= 65)) && ((_local2 <= 90)))) || ((((_local2 >= 97)) && ((_local2 <= 122)))))){ addLetter(String.fromCharCode(_local2)); }; if ((((_arg1.keyCode == Keyboard.BACKSPACE)) || ((_arg1.keyCode == Keyboard.DELETE)))){ clearName(); }; } private function (_arg1:Event):void{ trace("Score submitted"); NitromeGame.timeline.gotoAndStop("view_scores"); } private function init(_arg1:Event):void{ .text = ("YOUR SCORE IS " + Score.value); stage.addEventListener(KeyboardEvent.KEY_DOWN,  ); _arg1.target.removeEventListener(Event.ADDED_TO_STAGE, init); } public function submitScore():void{ var _local1:String; stage.removeEventListener(KeyboardEvent.KEY_DOWN,  ); _local1 = .text; if (_local1 != ""){  = new URLLoader();  = new URLVariables();  = new URLRequest(NitromeGame.SUBMIT_URL);  .method = URLRequestMethod.POST;  .data =  ;  .addEventListener(Event.COMPLETE, );  .addEventListener(IOErrorEvent.IO_ERROR, );  .data_string = NitromeGame.getScoreData(Score.value, _local1);  .time_based = "0";  .data =  ;  .load( ); } else { NitromeGame.timeline.gotoAndStop("view_scores"); }; } } }//package com.nitrome.highscore
Section 154
//SubmitButton (com.nitrome.highscore.SubmitButton) package com.nitrome.highscore { import flash.events.*; import com.nitrome.game.*; public class SubmitButton extends SimpleButton { private var  :Boolean;// = false private var disabled:Boolean;// = true private var  :ScoreSubmitPanel; public function SubmitButton(){   = false; disabled = true; super(); gotoAndStop("up");  = (parent as ScoreSubmitPanel); } public function enable():void{ disabled = false; useHandCursor = true; buttonMode = true; updateGraphic(); } override protected function updateGraphic():void{ if (disabled){ gotoAndStop("disabled"); } else { if (((!(over)) || (disabled))){ gotoAndStop("up"); } else { gotoAndStop("over"); }; }; } public function disable():void{ disabled = true; useHandCursor = false; buttonMode = false; updateGraphic(); } override public function onClick(_arg1:MouseEvent):void{ if (disabled){ gotoAndStop("disabled"); } else { if (! ){  .submitScore();   = true; }; }; } } }//package com.nitrome.highscore
Section 155
//Global (com.nitrome.util.Global) package com.nitrome.util { import flash.display.*; import flash.geom.*; import flash.text.*; public class Global { public static function safeMinimum(_arg1:Array):Number{ var _local2:Number; var _local3:*; _local2 = NaN; for (_local3 in _arg1) { if (((isNaN(_local2)) || ((_arg1[_local3] < _local2)))){ _local2 = _arg1[_local3]; }; }; return (_local2); } public static function isNumeric(_arg1:String):Boolean{ return ((_arg1 == String(Number(_arg1)))); } public static function childrenList(_arg1, _arg2:String):Array{ var _local3:Array; var _local4:*; _local3 = []; for (_local4 in _arg1) { _local3.push(_arg1[_local4][_arg2]); }; return (_local3); } public static function whiteOut(_arg1:Number):ColorTransform{ var _local2:Number; var _local3:Number; if (_arg1 > 0.5){ _local2 = ((_arg1 - 0.5) * 2); _local3 = (0xFF - (_local2 * 0xFF)); return (new ColorTransform(_local2, _local2, _local2, 1, _local3, _local3, _local3, 0)); }; return (new ColorTransform(0, 0, 0, (_arg1 * 2), 0xFF, 0xFF, 0xFF, 0)); } public static function trim(_arg1:String):String{ var _local2:Number; var _local3:Number; _local2 = 0; _local3 = (_arg1.length - 1); while ((((((((_arg1.charAt(_local2) == " ")) || ((_arg1.charAt(_local2) == "\t")))) || ((_arg1.charAt(_local2) == "\n")))) || ((_arg1.charAt(_local2) == "\r")))) { _local2++; }; while ((((((((_arg1.charAt(_local3) == " ")) || ((_arg1.charAt(_local3) == "\t")))) || ((_arg1.charAt(_local3) == "\n")))) || ((_arg1.charAt(_local3) == "\r")))) { _local3--; }; return (_arg1.substring(_local2, (_local3 + 1))); } public static function negativeModulo(_arg1:Number, _arg2:Number):Number{ if (_arg1 >= 0){ return (((_arg1 % _arg2) - _arg2)); }; return ((_arg1 % _arg2)); } public static function removeFromList(_arg1, _arg2:Array):void{ var _local3:Number; _local3 = (_arg2.length - 1); while (_local3 >= 0) { if (_arg2[_local3] == _arg1){ _arg2.splice(_local3, 1); }; _local3--; }; } public static function removeOnceFromList(_arg1, _arg2:Array):void{ var _local3:Number; _local3 = (_arg2.length - 1); while (_local3 >= 0) { if (_arg2[_local3] == _arg1){ _arg2.splice(_local3, 1); return; }; _local3--; }; } public static function enforcePlaces(_arg1:Number, _arg2:Number):String{ var _local3:String; var _local4:String; if (_arg1 < 0){ return (("-" + enforcePlaces(-(_arg1), _arg2))); }; _local3 = String(Math.floor(_arg1)); _local4 = String(Math.floor(((_arg1 % 1) * Math.pow(10, _arg2)))); while (_local4.length < _arg2) { _local4 = ("0" + _local4); }; return (((_local3 + ".") + _local4)); } public static function blackOut(_arg1:Number):ColorTransform{ var _local2:Number; if (_arg1 > 0.5){ _local2 = ((_arg1 - 0.5) * 2); return (new ColorTransform(_local2, _local2, _local2, 1, 0, 0, 0, 0)); }; return (new ColorTransform(0, 0, 0, (_arg1 * 2), 0, 0, 0, 0)); } public static function slide(_arg1:Number, _arg2:Number, _arg3:Number):Number{ if (_arg1 < _arg2){ _arg1 = (_arg1 + _arg3); if (_arg1 > _arg2){ _arg1 = _arg2; }; return (_arg1); //unresolved jump }; _arg1 = (_arg1 - _arg3); if (_arg1 < _arg2){ _arg1 = _arg2; }; return (_arg1); } public static function deceleratingSweep(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number):Number{ var _local6:Number; _local6 = ((_arg3 * _arg3) / (2 * _arg5)); if (_arg1 < _arg2){ if (_local6 > _arg2){ return (-(_arg5)); }; return (_arg4); //unresolved jump }; if (_local6 < _arg2){ return (_arg5); }; return (-(_arg4)); } public static function textToBitmap(_arg1:BitmapData, _arg2:String, _arg3:Number=0, _arg4:Number=0, _arg5:Number=0xFFFFFF, _arg6:Boolean=false, _arg7:TextFormat=null):void{ var _local8:TextField; _local8 = new TextField(); _local8.autoSize = TextFieldAutoSize.LEFT; if (_arg7){ _local8.defaultTextFormat = _arg7; } else { _local8.defaultTextFormat = new TextFormat("_sans", 10); }; _local8.textColor = _arg5; _local8.text = _arg2; if (_arg6){ _arg1.draw(_local8, new Matrix(1, 0, 0, 1, (_arg3 - int((_local8.width / 2))), (_arg4 - int((_local8.height / 2))))); } else { _arg1.draw(_local8, new Matrix(1, 0, 0, 1, _arg3, _arg4)); }; } public static function ordinal(_arg1:Number):String{ if (((((_arg1 % 100) > 10)) && (((_arg1 % 100) < 15)))){ return ((_arg1.toString() + "th")); }; if ((_arg1 % 10) == 1){ return ((_arg1.toString() + "st")); }; if ((_arg1 % 10) == 2){ return ((_arg1.toString() + "nd")); }; if ((_arg1 % 10) == 3){ return ((_arg1.toString() + "rd")); }; return ((_arg1.toString() + "th")); } public static function safeMaximum(_arg1:Array):Number{ var _local2:Number; var _local3:*; _local2 = NaN; for (_local3 in _arg1) { if (((isNaN(_local2)) || ((_arg1[_local3] > _local2)))){ _local2 = _arg1[_local3]; }; }; return (_local2); } public static function repeatString(_arg1:String, _arg2:Number):String{ var _local3:String; var _local4:Number; if (_arg2 < 1){ return (""); }; _local3 = _arg1; _local4 = 1; while (_local4 < _arg2) { _local3 = (_local3 + _arg1); _local4++; }; return (_local3); } public static function findInList(_arg1, _arg2:Array):Number{ var _local3:Number; _local3 = 0; while (_local3 < _arg2.length) { if (_arg2[_local3] == _arg1){ return (_local3); }; _local3++; }; return (-1); } public static function sign(_arg1:Number):Number{ if (_arg1 > 0){ return (1); }; if (_arg1 < 0){ return (-1); }; return (0); } public static function copyColorTransform(_arg1:ColorTransform):ColorTransform{ return (new ColorTransform(_arg1.redMultiplier, _arg1.greenMultiplier, _arg1.blueMultiplier, _arg1.alphaMultiplier, _arg1.redOffset, _arg1.greenOffset, _arg1.blueOffset, _arg1.alphaOffset)); } } }//package com.nitrome.util
Section 156
//Key (com.nitrome.util.Key) package com.nitrome.util { import flash.display.*; import flash.events.*; public class Key { protected static var initialized:Boolean = false; protected static var keysDown:Object = new Object(); public static function initialize(_arg1:Stage):void{ if (!initialized){ _arg1.addEventListener(KeyboardEvent.KEY_DOWN,  ); _arg1.addEventListener(KeyboardEvent.KEY_UP, keyReleased); _arg1.addEventListener(Event.DEACTIVATE, clearKeys); initialized = true; }; } public static function terminate(_arg1:Stage):void{ if (initialized){ _arg1.removeEventListener(KeyboardEvent.KEY_DOWN,  ); _arg1.removeEventListener(KeyboardEvent.KEY_UP, keyReleased); _arg1.removeEventListener(Event.DEACTIVATE, clearKeys); initialized = false; }; } public static function isDown(_arg1:uint):Boolean{ if (!initialized){ trace("ERROR: Key class has not been initialized."); }; return (Boolean((_arg1 in keysDown))); } public static function clearKeys(_arg1:Event):void{ keysDown = new Object(); } public static function  (_arg1:KeyboardEvent):void{ keysDown[_arg1.keyCode] = true; } public static function keyReleased(_arg1:KeyboardEvent):void{ if ((_arg1.keyCode in keysDown)){ delete keysDown[_arg1.keyCode]; }; } } }//package com.nitrome.util
Section 157
//Lock (com.nitrome.util.Lock) package com.nitrome.util { import flash.display.*; import flash.net.*; public class Lock extends MovieClip { public function Lock(){ addFrameScript(1, frame2); } function frame2(){ stop(); } public static function urlLock(_arg1:Stage):void{ var _local2:String; if (NitromeGame.isAtURL(NitromeGame.NITROME, NitromeGame.MINICLIP) != true){ _arg1.addChild(new (Lock)); _local2 = ("" + NitromeGame.game_id); navigateToURL(new URLRequest(_local2), "_blank"); }; } } }//package com.nitrome.util
Section 158
//MD5 (com.nitrome.util.MD5) package com.nitrome.util { public class MD5 { private var  :int;// = 8 private var  :String;// = "" public function MD5(_arg1:String=null, _arg2:int=0){   = "";   = 8; super(); if (_arg1 != null){ this.  = _arg1; }; if (((((!((_arg2 == 0))) && ((_arg2 == 8)))) || ((_arg2 == 16)))){ this.  = _arg2; }; } private function  (_arg1:Array):String{ var _local2:String; var _local3:String; var _local4:int; var _local5:int; var _local6:int; _local2 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; _local3 = new String(""); _local4 = 0; while (_local4 < (_arg1.length * 4)) { _local5 = (((((_arg1[(_local4 >> 2)] >> (8 * (_local4 % 4))) & 0xFF) << 16) | (((_arg1[((_local4 + 1) >> 2)] >> (8 * ((_local4 + 1) % 4))) & 0xFF) << 8)) | ((_arg1[((_local4 + 2) >> 2)] >> (8 * ((_local4 + 2) % 4))) & 0xFF)); _local6 = 0; while (_local6 < 4) { if (((_local4 * 8) + (_local6 * 6)) > (_arg1.length * 32)){ _local3 = (_local3 +  ); } else { _local3 = (_local3 + _local2.charAt(((_local5 >> (6 * (3 - _local6))) & 63))); }; _local6++; }; _local4 = (_local4 + 3); }; return (_local3); } private function  (_arg1:int, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int):int{ return ( ( ( ( (_arg2, _arg1),  (_arg4, _arg6)), _arg5), _arg3)); } private function  (_arg1:Array):String{ var _local2:String; var _local3:int; var _local4:int; _local2 = new String(""); _local3 = ((1 <<  ) - 1); _local4 = 0; while (_local4 < (_arg1.length * 32)) { _local2 = (_local2 + String.fromCharCode(((_arg1[(_local4 >> 5)] >>> (_local4 % 32)) & _local3))); _local4 = (_local4 +  ); }; return (_local2); } private function  (_arg1:String, _arg2:String):Array{ var _local3:Array; var _local4:Array; var _local5:Array; var _local6:int; var _local7:Array; _local3 = new Array( (_arg1)); if (_local3.length > 16){ _local3 =  (_local3, (_arg1.length *  )); }; _local4 = new Array(16); _local5 = new Array(16); _local6 = 0; while (_local6 < 16) { _local4[_local6] = (_local3[_local6] ^ 909522486); _local5[_local6] = (_local3[_local6] ^ 1549556828); _local6++; }; _local7 = new Array( (_local4.concat( (_arg2)), (0x0200 + (_arg2.length *  )))); return ( (_local5.concat(_local7), (0x0200 + 128))); } private function  (_arg1:int, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int):int{ return ( (((_arg2 & _arg4) | (_arg3 & ~(_arg4))), _arg1, _arg2, _arg5, _arg6, _arg7)); } private function  (_arg1:String, _arg2:String):String{ return ( ( (_arg1, _arg2))); } public function hash(_arg1:String):String{ return ( (_arg1)); } private function  (_arg1:int, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int):int{ return ( ((_arg3 ^ (_arg2 | ~(_arg4))), _arg1, _arg2, _arg5, _arg6, _arg7)); } private function  (_arg1:String):String{ return ( ( ( (_arg1), (_arg1.length *  )))); } private function  (_arg1:int, _arg2:int):int{ return (((_arg1 << _arg2) | (_arg1 >>> (32 - _arg2)))); } private function  (_arg1:Array, _arg2:int):Array{ var _local3:int; var _local4:int; var _local5:int; var _local6:int; var _local7:int; var _local8:int; var _local9:int; var _local10:int; var _local11:int; _arg1[(_arg2 >> 5)] = (_arg1[(_arg2 >> 5)] | (128 << (_arg2 % 32))); _arg1[((((_arg2 + 64) >>> 9) << 4) + 14)] = _arg2; _local3 = 1732584193; _local4 = -271733879; _local5 = -1732584194; _local6 = 271733878; _local7 = 0; while (_local7 < _arg1.length) { _local8 = _local3; _local9 = _local4; _local10 = _local5; _local11 = _local6; _local3 =  (_local3, _local4, _local5, _local6, _arg1[(_local7 + 0)], 7, -680876936); _local6 =  (_local6, _local3, _local4, _local5, _arg1[(_local7 + 1)], 12, -389564586); _local5 =  (_local5, _local6, _local3, _local4, _arg1[(_local7 + 2)], 17, 606105819); _local4 =  (_local4, _local5, _local6, _local3, _arg1[(_local7 + 3)], 22, -1044525330); _local3 =  (_local3, _local4, _local5, _local6, _arg1[(_local7 + 4)], 7, -176418897); _local6 =  (_local6, _local3, _local4, _local5, _arg1[(_local7 + 5)], 12, 1200080426); _local5 =  (_local5, _local6, _local3, _local4, _arg1[(_local7 + 6)], 17, -1473231341); _local4 =  (_local4, _local5, _local6, _local3, _arg1[(_local7 + 7)], 22, -45705983); _local3 =  (_local3, _local4, _local5, _local6, _arg1[(_local7 + 8)], 7, 1770035416); _local6 =  (_local6, _local3, _local4, _local5, _arg1[(_local7 + 9)], 12, -1958414417); _local5 =  (_local5, _local6, _local3, _local4, _arg1[(_local7 + 10)], 17, -42063); _local4 =  (_local4, _local5, _local6, _local3, _arg1[(_local7 + 11)], 22, -1990404162); _local3 =  (_local3, _local4, _local5, _local6, _arg1[(_local7 + 12)], 7, 1804603682); _local6 =  (_local6, _local3, _local4, _local5, _arg1[(_local7 + 13)], 12, -40341101); _local5 =  (_local5, _local6, _local3, _local4, _arg1[(_local7 + 14)], 17, -1502002290); _local4 =  (_local4, _local5, _local6, _local3, _arg1[(_local7 + 15)], 22, 1236535329); _local3 =  (_local3, _local4, _local5, _local6, _arg1[(_local7 + 1)], 5, -165796510); _local6 =  (_local6, _local3, _local4, _local5, _arg1[(_local7 + 6)], 9, -1069501632); _local5 =  (_local5, _local6, _local3, _local4, _arg1[(_local7 + 11)], 14, 643717713); _local4 =  (_local4, _local5, _local6, _local3, _arg1[(_local7 + 0)], 20, -373897302); _local3 =  (_local3, _local4, _local5, _local6, _arg1[(_local7 + 5)], 5, -701558691); _local6 =  (_local6, _local3, _local4, _local5, _arg1[(_local7 + 10)], 9, 38016083); _local5 =  (_local5, _local6, _local3, _local4, _arg1[(_local7 + 15)], 14, -660478335); _local4 =  (_local4, _local5, _local6, _local3, _arg1[(_local7 + 4)], 20, -405537848); _local3 =  (_local3, _local4, _local5, _local6, _arg1[(_local7 + 9)], 5, 568446438); _local6 =  (_local6, _local3, _local4, _local5, _arg1[(_local7 + 14)], 9, -1019803690); _local5 =  (_local5, _local6, _local3, _local4, _arg1[(_local7 + 3)], 14, -187363961); _local4 =  (_local4, _local5, _local6, _local3, _arg1[(_local7 + 8)], 20, 1163531501); _local3 =  (_local3, _local4, _local5, _local6, _arg1[(_local7 + 13)], 5, -1444681467); _local6 =  (_local6, _local3, _local4, _local5, _arg1[(_local7 + 2)], 9, -51403784); _local5 =  (_local5, _local6, _local3, _local4, _arg1[(_local7 + 7)], 14, 1735328473); _local4 =  (_local4, _local5, _local6, _local3, _arg1[(_local7 + 12)], 20, -1926607734); _local3 =  (_local3, _local4, _local5, _local6, _arg1[(_local7 + 5)], 4, -378558); _local6 =  (_local6, _local3, _local4, _local5, _arg1[(_local7 + 8)], 11, -2022574463); _local5 =  (_local5, _local6, _local3, _local4, _arg1[(_local7 + 11)], 16, 1839030562); _local4 =  (_local4, _local5, _local6, _local3, _arg1[(_local7 + 14)], 23, -35309556); _local3 =  (_local3, _local4, _local5, _local6, _arg1[(_local7 + 1)], 4, -1530992060); _local6 =  (_local6, _local3, _local4, _local5, _arg1[(_local7 + 4)], 11, 1272893353); _local5 =  (_local5, _local6, _local3, _local4, _arg1[(_local7 + 7)], 16, -155497632); _local4 =  (_local4, _local5, _local6, _local3, _arg1[(_local7 + 10)], 23, -1094730640); _local3 =  (_local3, _local4, _local5, _local6, _arg1[(_local7 + 13)], 4, 681279174); _local6 =  (_local6, _local3, _local4, _local5, _arg1[(_local7 + 0)], 11, -358537222); _local5 =  (_local5, _local6, _local3, _local4, _arg1[(_local7 + 3)], 16, -722521979); _local4 =  (_local4, _local5, _local6, _local3, _arg1[(_local7 + 6)], 23, 76029189); _local3 =  (_local3, _local4, _local5, _local6, _arg1[(_local7 + 9)], 4, -640364487); _local6 =  (_local6, _local3, _local4, _local5, _arg1[(_local7 + 12)], 11, -421815835); _local5 =  (_local5, _local6, _local3, _local4, _arg1[(_local7 + 15)], 16, 530742520); _local4 =  (_local4, _local5, _local6, _local3, _arg1[(_local7 + 2)], 23, -995338651); _local3 =  (_local3, _local4, _local5, _local6, _arg1[(_local7 + 0)], 6, -198630844); _local6 =  (_local6, _local3, _local4, _local5, _arg1[(_local7 + 7)], 10, 1126891415); _local5 =  (_local5, _local6, _local3, _local4, _arg1[(_local7 + 14)], 15, -1416354905); _local4 =  (_local4, _local5, _local6, _local3, _arg1[(_local7 + 5)], 21, -57434055); _local3 =  (_local3, _local4, _local5, _local6, _arg1[(_local7 + 12)], 6, 1700485571); _local6 =  (_local6, _local3, _local4, _local5, _arg1[(_local7 + 3)], 10, -1894986606); _local5 =  (_local5, _local6, _local3, _local4, _arg1[(_local7 + 10)], 15, -1051523); _local4 =  (_local4, _local5, _local6, _local3, _arg1[(_local7 + 1)], 21, -2054922799); _local3 =  (_local3, _local4, _local5, _local6, _arg1[(_local7 + 8)], 6, 1873313359); _local6 =  (_local6, _local3, _local4, _local5, _arg1[(_local7 + 15)], 10, -30611744); _local5 =  (_local5, _local6, _local3, _local4, _arg1[(_local7 + 6)], 15, -1560198380); _local4 =  (_local4, _local5, _local6, _local3, _arg1[(_local7 + 13)], 21, 1309151649); _local3 =  (_local3, _local4, _local5, _local6, _arg1[(_local7 + 4)], 6, -145523070); _local6 =  (_local6, _local3, _local4, _local5, _arg1[(_local7 + 11)], 10, -1120210379); _local5 =  (_local5, _local6, _local3, _local4, _arg1[(_local7 + 2)], 15, 718787259); _local4 =  (_local4, _local5, _local6, _local3, _arg1[(_local7 + 9)], 21, -343485551); _local3 =  (_local3, _local8); _local4 =  (_local4, _local9); _local5 =  (_local5, _local10); _local6 =  (_local6, _local11); _local7 = (_local7 + 16); }; return (new Array(_local3, _local4, _local5, _local6)); } private function  (_arg1:String):String{ return ( ( ( (_arg1), (_arg1.length *  )))); } private function  (_arg1:int, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int):int{ return ( (((_arg2 ^ _arg3) ^ _arg4), _arg1, _arg2, _arg5, _arg6, _arg7)); } private function  (_arg1:String, _arg2:String):String{ return ( ( (_arg1, _arg2))); } private function  (_arg1:String):Array{ var _local2:Array; var _local3:int; var _local4:int; _local2 = new Array(); _local3 = ((1 <<  ) - 1); _local4 = 0; while (_local4 < (_arg1.length *  )) { _local2[(_local4 >> 5)] = (_local2[(_local4 >> 5)] | ((_arg1.charCodeAt((_local4 /  )) & _local3) << (_local4 % 32))); _local4 = (_local4 +  ); }; return (_local2); } private function  (_arg1:Array):String{ var _local2:String; var _local3:String; var _local4:int; _local2 = "0123456789abcdef"; _local3 = new String(""); _local4 = 0; while (_local4 < (_arg1.length * 4)) { _local3 = (_local3 + (_local2.charAt(((_arg1[(_local4 >> 2)] >> (((_local4 % 4) * 8) + 4)) & 15)) + _local2.charAt(((_arg1[(_local4 >> 2)] >> ((_local4 % 4) * 8)) & 15)))); _local4++; }; return (_local3); } private function  (_arg1:Number, _arg2:Number):Number{ var _local3:int; var _local4:int; _local3 = ((_arg1 & 0xFFFF) + (_arg2 & 0xFFFF)); _local4 = (((_arg1 >> 16) + (_arg2 >> 16)) + (_local3 >> 16)); return (((_local4 << 16) | (_local3 & 0xFFFF))); } private function  (_arg1:String):String{ return ( ( ( (_arg1), (_arg1.length *  )))); } private function  (_arg1:String, _arg2:String):String{ return ( ( (_arg1, _arg2))); } private function  (_arg1:int, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int):int{ return ( (((_arg2 & _arg3) | (~(_arg2) & _arg4)), _arg1, _arg2, _arg5, _arg6, _arg7)); } } }//package com.nitrome.util
Section 159
//Trig (com.nitrome.util.Trig) package com.nitrome.util { public class Trig { protected static var hasSetup:Boolean = false; public static var cos:Array; public static var sin:Array; public static function getCos(_arg1:Number):Number{ _arg1 = (_arg1 % 360); if (_arg1 < 0){ _arg1 = (_arg1 + 360); }; return (cos[(_arg1 << 0)]); } public static function getSin(_arg1:Number):Number{ _arg1 = (_arg1 % 360); if (_arg1 < 0){ _arg1 = (_arg1 + 360); }; return (sin[(_arg1 << 0)]); } public static function setup():void{ var _local1:int; if (hasSetup){ return; }; sin = []; cos = []; _local1 = 0; while (_local1 <= 360) { sin[_local1] = Math.sin(((_local1 * Math.PI) / 180)); cos[_local1] = Math.cos(((_local1 * Math.PI) / 180)); _local1++; }; } } }//package com.nitrome.util
Section 160
//accelerator_28 (Flipside_fla.accelerator_28) package Flipside_fla { import flash.display.*; public dynamic class accelerator_28 extends MovieClip { public function accelerator_28(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Flipside_fla
Section 161
//beep1_31 (Flipside_fla.beep1_31) package Flipside_fla { import flash.display.*; public dynamic class beep1_31 extends MovieClip { public function beep1_31(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Flipside_fla
Section 162
//beep2_32 (Flipside_fla.beep2_32) package Flipside_fla { import flash.display.*; public dynamic class beep2_32 extends MovieClip { public function beep2_32(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Flipside_fla
Section 163
//forceBlock_29 (Flipside_fla.forceBlock_29) package Flipside_fla { import flash.display.*; public dynamic class forceBlock_29 extends MovieClip { public function forceBlock_29(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Flipside_fla
Section 164
//go_26 (Flipside_fla.go_26) package Flipside_fla { import flash.display.*; public dynamic class go_26 extends MovieClip { public function go_26(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Flipside_fla
Section 165
//helpcontent_383 (Flipside_fla.helpcontent_383) package Flipside_fla { import flash.display.*; public dynamic class helpcontent_383 extends MovieClip { public var __id23_:FlipsideFont; public var __id24_:FlipsideFont; public function helpcontent_383(){  ();  (); } function  (){ try { __id23_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id23_.align = "left"; __id23_.align_vert = "center"; __id23_.color = 0xFFFFFF; __id23_.id = "None"; __id23_.line_spacing = 18; __id23_.text = "player 1"; __id23_.tracking = 0; try { __id23_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function  (){ try { __id24_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id24_.align = "left"; __id24_.align_vert = "center"; __id24_.color = 0xFFFFFF; __id24_.id = "None"; __id24_.line_spacing = 18; __id24_.text = "player 2"; __id24_.tracking = 0; try { __id24_["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package Flipside_fla
Section 166
//instances_2 (Flipside_fla.instances_2) package Flipside_fla { import flash.display.*; public dynamic class instances_2 extends MovieClip { public function instances_2(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Flipside_fla
Section 167
//laser_30 (Flipside_fla.laser_30) package Flipside_fla { import flash.display.*; public dynamic class laser_30 extends MovieClip { public function laser_30(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Flipside_fla
Section 168
//MainTimeline (Flipside_fla.MainTimeline) package Flipside_fla { import com.nitrome.flipside.*; import flash.display.*; import flash.text.*; import com.nitrome.game.*; import com.nitrome.util.*; import flash.utils.*; public dynamic class MainTimeline extends MovieClip { public var loaded:TextField; public var __id29_:FlipsideFont; public var __setPropDict:Dictionary; public var content:MovieClip; public var finalScore:TextField; public var button10:LevelStartButton; public var button11:LevelStartButton; public var button12:LevelStartButton; public var button13:LevelStartButton; public var button14:LevelStartButton; public var button15:LevelStartButton; public var __id20_:FlipsideFont; public var __id21_:FlipsideFont; public var button1:LevelStartButton; public var button4:LevelStartButton; public var button5:LevelStartButton; public var button6:LevelStartButton; public var button7:LevelStartButton; public var button9:LevelStartButton; public var button3:LevelStartButton; public var button8:LevelStartButton; public var button2:LevelStartButton; public var curves_clip:MovieClip; public var __id22_:FlipsideFont; public var soundManager:SoundManager; public var __id25_:FlipsideFont; public var __id26_:FlipsideFont; public var __id27_:FlipsideFont; public var __id28_:FlipsideFont; public function MainTimeline(){ __setPropDict = new Dictionary(true); super(); addFrameScript(0, frame1, 1, frame2, 9, frame10, 19, frame20, 29, frame30, 39, frame40, 49, frame50, 59, frame60, 69, frame70, 79,  , 109,  , 119,  , 120, , 121, , 122, , 123,  , 124,  , 125, , 126, , 127, , 128, , 99,  , 100,  , 101,  , 102,  , 103,  , 104,  , 105,  , 106,  , 107,  , 108,  , 40, frame41, 41, frame42, 42, frame43, 43, frame44, 44, frame45, 45, frame46, 46, frame47, 47, frame48, 48, frame49, 50, frame51, 51, frame52, 52, frame53, 53, frame54, 54, frame55, 55, frame56, 56, frame57, 57, frame58, 58, frame59, 60, frame61, 61, frame62, 62, frame63, 63, frame64, 64, frame65, 65, frame66, 66, frame67, 67, frame68, 68, frame69, 70,  , 71,  , 72,  , 73,  , 74,  , 75,  , 76,  , 77,  , 78,  , 89,  , 90,  , 91,  , 92,  , 93,  , 94,  , 95,  , 96,  , 97,  , 98,  ); } function (){ try { __id28_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id28_.align = "center"; __id28_.align_vert = "center"; __id28_.color = 0xFFFFFF; __id28_.id = "None"; __id28_.line_spacing = 18; __id28_.text = "credits"; __id28_.tracking = 0; try { __id28_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame10(){ stop(); } function  (){ try { __id25_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id25_.align = "center"; __id25_.align_vert = "center"; __id25_.color = 0xFFFFFF; __id25_.id = "None"; __id25_.line_spacing = 18; __id25_.text = "help"; __id25_.tracking = 0; try { __id25_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame1(){ MochiAd.showPreGameAd({clip:root, id:"e1ef1ab66f51947f", res:"550x400", background:0, color:65023, outline:0xFFFFFF, no_bg:true}); } function frame2(){ if (stage.loaderInfo.bytesLoaded < stage.loaderInfo.bytesTotal){ loaded.text = (Math.round(((100 * stage.loaderInfo.bytesLoaded) / stage.loaderInfo.bytesTotal)) + "%"); gotoAndPlay(1); } else { NitromeGame.init((root as MovieClip), "flipside", "trailblazing", 15); gotoAndStop("mtv"); }; } function frame20(){ stop(); } function frame30(){ if (NitromeGame.sound_manager){ NitromeGame.sound_manager.playMusic(SoundManager.MENU); }; stage.showDefaultContextMenu = false; Controller.startDemo(content); Lock.urlLock(stage); stop(); } function frame40(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 40)) && ((int(__setPropDict[__id20_]) <= 49))))))){ __setPropDict[__id20_] = currentFrame;  (); }; if ((((__setPropDict[__id21_] == undefined)) || (!((((int(__setPropDict[__id21_]) >= 40)) && ((int(__setPropDict[__id21_]) <= 49))))))){ __setPropDict[__id21_] = currentFrame;  (); }; if ((((__setPropDict[__id22_] == undefined)) || (!((((int(__setPropDict[__id22_]) >= 40)) && ((int(__setPropDict[__id22_]) <= 49))))))){ __setPropDict[__id22_] = currentFrame;  (); }; stop(); } function frame42(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 40)) && ((int(__setPropDict[__id20_]) <= 49))))))){ __setPropDict[__id20_] = currentFrame;  (); }; if ((((__setPropDict[__id21_] == undefined)) || (!((((int(__setPropDict[__id21_]) >= 40)) && ((int(__setPropDict[__id21_]) <= 49))))))){ __setPropDict[__id21_] = currentFrame;  (); }; if ((((__setPropDict[__id22_] == undefined)) || (!((((int(__setPropDict[__id22_]) >= 40)) && ((int(__setPropDict[__id22_]) <= 49))))))){ __setPropDict[__id22_] = currentFrame;  (); }; } function frame43(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 40)) && ((int(__setPropDict[__id20_]) <= 49))))))){ __setPropDict[__id20_] = currentFrame;  (); }; if ((((__setPropDict[__id21_] == undefined)) || (!((((int(__setPropDict[__id21_]) >= 40)) && ((int(__setPropDict[__id21_]) <= 49))))))){ __setPropDict[__id21_] = currentFrame;  (); }; if ((((__setPropDict[__id22_] == undefined)) || (!((((int(__setPropDict[__id22_]) >= 40)) && ((int(__setPropDict[__id22_]) <= 49))))))){ __setPropDict[__id22_] = currentFrame;  (); }; } function frame44(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 40)) && ((int(__setPropDict[__id20_]) <= 49))))))){ __setPropDict[__id20_] = currentFrame;  (); }; if ((((__setPropDict[__id21_] == undefined)) || (!((((int(__setPropDict[__id21_]) >= 40)) && ((int(__setPropDict[__id21_]) <= 49))))))){ __setPropDict[__id21_] = currentFrame;  (); }; if ((((__setPropDict[__id22_] == undefined)) || (!((((int(__setPropDict[__id22_]) >= 40)) && ((int(__setPropDict[__id22_]) <= 49))))))){ __setPropDict[__id22_] = currentFrame;  (); }; } function frame45(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 40)) && ((int(__setPropDict[__id20_]) <= 49))))))){ __setPropDict[__id20_] = currentFrame;  (); }; if ((((__setPropDict[__id21_] == undefined)) || (!((((int(__setPropDict[__id21_]) >= 40)) && ((int(__setPropDict[__id21_]) <= 49))))))){ __setPropDict[__id21_] = currentFrame;  (); }; if ((((__setPropDict[__id22_] == undefined)) || (!((((int(__setPropDict[__id22_]) >= 40)) && ((int(__setPropDict[__id22_]) <= 49))))))){ __setPropDict[__id22_] = currentFrame;  (); }; } function frame46(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 40)) && ((int(__setPropDict[__id20_]) <= 49))))))){ __setPropDict[__id20_] = currentFrame;  (); }; if ((((__setPropDict[__id21_] == undefined)) || (!((((int(__setPropDict[__id21_]) >= 40)) && ((int(__setPropDict[__id21_]) <= 49))))))){ __setPropDict[__id21_] = currentFrame;  (); }; if ((((__setPropDict[__id22_] == undefined)) || (!((((int(__setPropDict[__id22_]) >= 40)) && ((int(__setPropDict[__id22_]) <= 49))))))){ __setPropDict[__id22_] = currentFrame;  (); }; } function frame47(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 40)) && ((int(__setPropDict[__id20_]) <= 49))))))){ __setPropDict[__id20_] = currentFrame;  (); }; if ((((__setPropDict[__id21_] == undefined)) || (!((((int(__setPropDict[__id21_]) >= 40)) && ((int(__setPropDict[__id21_]) <= 49))))))){ __setPropDict[__id21_] = currentFrame;  (); }; if ((((__setPropDict[__id22_] == undefined)) || (!((((int(__setPropDict[__id22_]) >= 40)) && ((int(__setPropDict[__id22_]) <= 49))))))){ __setPropDict[__id22_] = currentFrame;  (); }; } function frame41(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 40)) && ((int(__setPropDict[__id20_]) <= 49))))))){ __setPropDict[__id20_] = currentFrame;  (); }; if ((((__setPropDict[__id21_] == undefined)) || (!((((int(__setPropDict[__id21_]) >= 40)) && ((int(__setPropDict[__id21_]) <= 49))))))){ __setPropDict[__id21_] = currentFrame;  (); }; if ((((__setPropDict[__id22_] == undefined)) || (!((((int(__setPropDict[__id22_]) >= 40)) && ((int(__setPropDict[__id22_]) <= 49))))))){ __setPropDict[__id22_] = currentFrame;  (); }; } function frame48(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 40)) && ((int(__setPropDict[__id20_]) <= 49))))))){ __setPropDict[__id20_] = currentFrame;  (); }; if ((((__setPropDict[__id21_] == undefined)) || (!((((int(__setPropDict[__id21_]) >= 40)) && ((int(__setPropDict[__id21_]) <= 49))))))){ __setPropDict[__id21_] = currentFrame;  (); }; if ((((__setPropDict[__id22_] == undefined)) || (!((((int(__setPropDict[__id22_]) >= 40)) && ((int(__setPropDict[__id22_]) <= 49))))))){ __setPropDict[__id22_] = currentFrame;  (); }; } function frame49(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 40)) && ((int(__setPropDict[__id20_]) <= 49))))))){ __setPropDict[__id20_] = currentFrame;  (); }; if ((((__setPropDict[__id21_] == undefined)) || (!((((int(__setPropDict[__id21_]) >= 40)) && ((int(__setPropDict[__id21_]) <= 49))))))){ __setPropDict[__id21_] = currentFrame;  (); }; if ((((__setPropDict[__id22_] == undefined)) || (!((((int(__setPropDict[__id22_]) >= 40)) && ((int(__setPropDict[__id22_]) <= 49))))))){ __setPropDict[__id22_] = currentFrame;  (); }; } function  (){ try { __id29_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id29_.align = "center"; __id29_.align_vert = "center"; __id29_.color = 0xFFFFFF; __id29_.id = "None"; __id29_.line_spacing = 18; __id29_.text = "congratulations!"; __id29_.tracking = 0; try { __id29_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame51(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 50)) && ((int(__setPropDict[__id20_]) <= 69))))))){ __setPropDict[__id20_] = currentFrame; (); }; } function frame52(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 50)) && ((int(__setPropDict[__id20_]) <= 69))))))){ __setPropDict[__id20_] = currentFrame; (); }; } function frame53(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 50)) && ((int(__setPropDict[__id20_]) <= 69))))))){ __setPropDict[__id20_] = currentFrame; (); }; } function frame54(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 50)) && ((int(__setPropDict[__id20_]) <= 69))))))){ __setPropDict[__id20_] = currentFrame; (); }; } function frame55(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 50)) && ((int(__setPropDict[__id20_]) <= 69))))))){ __setPropDict[__id20_] = currentFrame; (); }; } function frame56(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 50)) && ((int(__setPropDict[__id20_]) <= 69))))))){ __setPropDict[__id20_] = currentFrame; (); }; } function frame50(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 50)) && ((int(__setPropDict[__id20_]) <= 69))))))){ __setPropDict[__id20_] = currentFrame; (); }; stop(); } function frame58(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 50)) && ((int(__setPropDict[__id20_]) <= 69))))))){ __setPropDict[__id20_] = currentFrame; (); }; } function frame57(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 50)) && ((int(__setPropDict[__id20_]) <= 69))))))){ __setPropDict[__id20_] = currentFrame; (); }; } function frame59(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 50)) && ((int(__setPropDict[__id20_]) <= 69))))))){ __setPropDict[__id20_] = currentFrame; (); }; } function frame60(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 50)) && ((int(__setPropDict[__id20_]) <= 69))))))){ __setPropDict[__id20_] = currentFrame; (); }; stop(); if (NitromeGame.sound_manager){ NitromeGame.sound_manager.playMusic(SoundManager.MENU); }; Controller.startDemo(content); } function frame61(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 50)) && ((int(__setPropDict[__id20_]) <= 69))))))){ __setPropDict[__id20_] = currentFrame; (); }; } function frame62(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 50)) && ((int(__setPropDict[__id20_]) <= 69))))))){ __setPropDict[__id20_] = currentFrame; (); }; } function frame63(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 50)) && ((int(__setPropDict[__id20_]) <= 69))))))){ __setPropDict[__id20_] = currentFrame; (); }; } function frame64(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 50)) && ((int(__setPropDict[__id20_]) <= 69))))))){ __setPropDict[__id20_] = currentFrame; (); }; } function  (){ try { __id22_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id22_.align = "center"; __id22_.align_vert = "center"; __id22_.color = 0xFFFFFF; __id22_.id = "None"; __id22_.line_spacing = 18; __id22_.text = "2 Player"; __id22_.tracking = 0; try { __id22_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame67(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 50)) && ((int(__setPropDict[__id20_]) <= 69))))))){ __setPropDict[__id20_] = currentFrame; (); }; } function frame68(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 50)) && ((int(__setPropDict[__id20_]) <= 69))))))){ __setPropDict[__id20_] = currentFrame; (); }; } function frame65(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 50)) && ((int(__setPropDict[__id20_]) <= 69))))))){ __setPropDict[__id20_] = currentFrame; (); }; } function frame69(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 50)) && ((int(__setPropDict[__id20_]) <= 69))))))){ __setPropDict[__id20_] = currentFrame; (); }; } function frame66(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 50)) && ((int(__setPropDict[__id20_]) <= 69))))))){ __setPropDict[__id20_] = currentFrame; (); }; } function  (){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 70)) && ((int(__setPropDict[__id20_]) <= 79))))))){ __setPropDict[__id20_] = currentFrame;  (); }; } function  (){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 70)) && ((int(__setPropDict[__id20_]) <= 79))))))){ __setPropDict[__id20_] = currentFrame;  (); }; } function  (){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 70)) && ((int(__setPropDict[__id20_]) <= 79))))))){ __setPropDict[__id20_] = currentFrame;  (); }; } function frame70(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 70)) && ((int(__setPropDict[__id20_]) <= 79))))))){ __setPropDict[__id20_] = currentFrame;  (); }; if (NitromeGame.sound_manager){ NitromeGame.sound_manager.playMusic(SoundManager.MENU); }; } function  (){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 70)) && ((int(__setPropDict[__id20_]) <= 79))))))){ __setPropDict[__id20_] = currentFrame;  (); }; } function  (){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 70)) && ((int(__setPropDict[__id20_]) <= 79))))))){ __setPropDict[__id20_] = currentFrame;  (); }; } function  (){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 70)) && ((int(__setPropDict[__id20_]) <= 79))))))){ __setPropDict[__id20_] = currentFrame;  (); }; } function  (){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 70)) && ((int(__setPropDict[__id20_]) <= 79))))))){ __setPropDict[__id20_] = currentFrame;  (); }; } function  (){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 70)) && ((int(__setPropDict[__id20_]) <= 79))))))){ __setPropDict[__id20_] = currentFrame;  (); }; } function  (){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 70)) && ((int(__setPropDict[__id20_]) <= 79))))))){ __setPropDict[__id20_] = currentFrame;  (); }; } function  (){ if (NitromeGame.sound_manager){ NitromeGame.sound_manager.playMusic(SoundManager.MENU); }; Controller.startDemo(content); } function  (){ try { __id21_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id21_.align = "center"; __id21_.align_vert = "center"; __id21_.color = 0xFFFFFF; __id21_.id = "None"; __id21_.line_spacing = 18; __id21_.text = "1 Player"; __id21_.tracking = 0; try { __id21_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function  (){ if ((((__setPropDict[__id25_] == undefined)) || (!((((int(__setPropDict[__id25_]) >= 90)) && ((int(__setPropDict[__id25_]) <= 99))))))){ __setPropDict[__id25_] = currentFrame;  (); }; } function  (){ if ((((__setPropDict[__id25_] == undefined)) || (!((((int(__setPropDict[__id25_]) >= 90)) && ((int(__setPropDict[__id25_]) <= 99))))))){ __setPropDict[__id25_] = currentFrame;  (); }; } function  (){ if ((((__setPropDict[__id25_] == undefined)) || (!((((int(__setPropDict[__id25_]) >= 90)) && ((int(__setPropDict[__id25_]) <= 99))))))){ __setPropDict[__id25_] = currentFrame;  (); }; } function  (){ if ((((__setPropDict[__id25_] == undefined)) || (!((((int(__setPropDict[__id25_]) >= 90)) && ((int(__setPropDict[__id25_]) <= 99))))))){ __setPropDict[__id25_] = currentFrame;  (); }; } function  (){ if ((((__setPropDict[__id25_] == undefined)) || (!((((int(__setPropDict[__id25_]) >= 90)) && ((int(__setPropDict[__id25_]) <= 99))))))){ __setPropDict[__id25_] = currentFrame;  (); }; } function  (){ if ((((__setPropDict[__id25_] == undefined)) || (!((((int(__setPropDict[__id25_]) >= 90)) && ((int(__setPropDict[__id25_]) <= 99))))))){ __setPropDict[__id25_] = currentFrame;  (); }; } function  (){ if ((((__setPropDict[__id25_] == undefined)) || (!((((int(__setPropDict[__id25_]) >= 90)) && ((int(__setPropDict[__id25_]) <= 99))))))){ __setPropDict[__id25_] = currentFrame;  (); }; } function  (){ if ((((__setPropDict[__id25_] == undefined)) || (!((((int(__setPropDict[__id25_]) >= 90)) && ((int(__setPropDict[__id25_]) <= 99))))))){ __setPropDict[__id25_] = currentFrame;  (); }; } function  (){ if ((((__setPropDict[__id25_] == undefined)) || (!((((int(__setPropDict[__id25_]) >= 90)) && ((int(__setPropDict[__id25_]) <= 99))))))){ __setPropDict[__id25_] = currentFrame;  (); }; } function  (){ if ((((__setPropDict[__id28_] == undefined)) || (!((((int(__setPropDict[__id28_]) >= 100)) && ((int(__setPropDict[__id28_]) <= 109))))))){ __setPropDict[__id28_] = currentFrame; (); }; if ((((__setPropDict[__id25_] == undefined)) || (!((((int(__setPropDict[__id25_]) >= 100)) && ((int(__setPropDict[__id25_]) <= 109))))))){ __setPropDict[__id25_] = currentFrame;  (); }; if ((((__setPropDict[__id27_] == undefined)) || (!((((int(__setPropDict[__id27_]) >= 100)) && ((int(__setPropDict[__id27_]) <= 109))))))){ __setPropDict[__id27_] = currentFrame;  (); }; if ((((__setPropDict[__id26_] == undefined)) || (!((((int(__setPropDict[__id26_]) >= 100)) && ((int(__setPropDict[__id26_]) <= 109))))))){ __setPropDict[__id26_] = currentFrame;  (); }; } function  (){ if ((((__setPropDict[__id28_] == undefined)) || (!((((int(__setPropDict[__id28_]) >= 100)) && ((int(__setPropDict[__id28_]) <= 109))))))){ __setPropDict[__id28_] = currentFrame; (); }; if ((((__setPropDict[__id25_] == undefined)) || (!((((int(__setPropDict[__id25_]) >= 100)) && ((int(__setPropDict[__id25_]) <= 109))))))){ __setPropDict[__id25_] = currentFrame;  (); }; if ((((__setPropDict[__id27_] == undefined)) || (!((((int(__setPropDict[__id27_]) >= 100)) && ((int(__setPropDict[__id27_]) <= 109))))))){ __setPropDict[__id27_] = currentFrame;  (); }; if ((((__setPropDict[__id26_] == undefined)) || (!((((int(__setPropDict[__id26_]) >= 100)) && ((int(__setPropDict[__id26_]) <= 109))))))){ __setPropDict[__id26_] = currentFrame;  (); }; } function  (){ if ((((__setPropDict[__id28_] == undefined)) || (!((((int(__setPropDict[__id28_]) >= 100)) && ((int(__setPropDict[__id28_]) <= 109))))))){ __setPropDict[__id28_] = currentFrame; (); }; if ((((__setPropDict[__id25_] == undefined)) || (!((((int(__setPropDict[__id25_]) >= 100)) && ((int(__setPropDict[__id25_]) <= 109))))))){ __setPropDict[__id25_] = currentFrame;  (); }; if ((((__setPropDict[__id27_] == undefined)) || (!((((int(__setPropDict[__id27_]) >= 100)) && ((int(__setPropDict[__id27_]) <= 109))))))){ __setPropDict[__id27_] = currentFrame;  (); }; if ((((__setPropDict[__id26_] == undefined)) || (!((((int(__setPropDict[__id26_]) >= 100)) && ((int(__setPropDict[__id26_]) <= 109))))))){ __setPropDict[__id26_] = currentFrame;  (); }; } function  (){ if ((((__setPropDict[__id28_] == undefined)) || (!((((int(__setPropDict[__id28_]) >= 100)) && ((int(__setPropDict[__id28_]) <= 109))))))){ __setPropDict[__id28_] = currentFrame; (); }; if ((((__setPropDict[__id25_] == undefined)) || (!((((int(__setPropDict[__id25_]) >= 100)) && ((int(__setPropDict[__id25_]) <= 109))))))){ __setPropDict[__id25_] = currentFrame;  (); }; if ((((__setPropDict[__id27_] == undefined)) || (!((((int(__setPropDict[__id27_]) >= 100)) && ((int(__setPropDict[__id27_]) <= 109))))))){ __setPropDict[__id27_] = currentFrame;  (); }; if ((((__setPropDict[__id26_] == undefined)) || (!((((int(__setPropDict[__id26_]) >= 100)) && ((int(__setPropDict[__id26_]) <= 109))))))){ __setPropDict[__id26_] = currentFrame;  (); }; } function  (){ if ((((__setPropDict[__id28_] == undefined)) || (!((((int(__setPropDict[__id28_]) >= 100)) && ((int(__setPropDict[__id28_]) <= 109))))))){ __setPropDict[__id28_] = currentFrame; (); }; if ((((__setPropDict[__id25_] == undefined)) || (!((((int(__setPropDict[__id25_]) >= 100)) && ((int(__setPropDict[__id25_]) <= 109))))))){ __setPropDict[__id25_] = currentFrame;  (); }; if ((((__setPropDict[__id27_] == undefined)) || (!((((int(__setPropDict[__id27_]) >= 100)) && ((int(__setPropDict[__id27_]) <= 109))))))){ __setPropDict[__id27_] = currentFrame;  (); }; if ((((__setPropDict[__id26_] == undefined)) || (!((((int(__setPropDict[__id26_]) >= 100)) && ((int(__setPropDict[__id26_]) <= 109))))))){ __setPropDict[__id26_] = currentFrame;  (); }; } function  (){ if ((((__setPropDict[__id28_] == undefined)) || (!((((int(__setPropDict[__id28_]) >= 100)) && ((int(__setPropDict[__id28_]) <= 109))))))){ __setPropDict[__id28_] = currentFrame; (); }; if ((((__setPropDict[__id25_] == undefined)) || (!((((int(__setPropDict[__id25_]) >= 100)) && ((int(__setPropDict[__id25_]) <= 109))))))){ __setPropDict[__id25_] = currentFrame;  (); }; if ((((__setPropDict[__id27_] == undefined)) || (!((((int(__setPropDict[__id27_]) >= 100)) && ((int(__setPropDict[__id27_]) <= 109))))))){ __setPropDict[__id27_] = currentFrame;  (); }; if ((((__setPropDict[__id26_] == undefined)) || (!((((int(__setPropDict[__id26_]) >= 100)) && ((int(__setPropDict[__id26_]) <= 109))))))){ __setPropDict[__id26_] = currentFrame;  (); }; } function  (){ if ((((__setPropDict[__id28_] == undefined)) || (!((((int(__setPropDict[__id28_]) >= 100)) && ((int(__setPropDict[__id28_]) <= 109))))))){ __setPropDict[__id28_] = currentFrame; (); }; if ((((__setPropDict[__id25_] == undefined)) || (!((((int(__setPropDict[__id25_]) >= 100)) && ((int(__setPropDict[__id25_]) <= 109))))))){ __setPropDict[__id25_] = currentFrame;  (); }; if ((((__setPropDict[__id27_] == undefined)) || (!((((int(__setPropDict[__id27_]) >= 100)) && ((int(__setPropDict[__id27_]) <= 109))))))){ __setPropDict[__id27_] = currentFrame;  (); }; if ((((__setPropDict[__id26_] == undefined)) || (!((((int(__setPropDict[__id26_]) >= 100)) && ((int(__setPropDict[__id26_]) <= 109))))))){ __setPropDict[__id26_] = currentFrame;  (); }; } function  (){ if ((((__setPropDict[__id28_] == undefined)) || (!((((int(__setPropDict[__id28_]) >= 100)) && ((int(__setPropDict[__id28_]) <= 109))))))){ __setPropDict[__id28_] = currentFrame; (); }; if ((((__setPropDict[__id25_] == undefined)) || (!((((int(__setPropDict[__id25_]) >= 100)) && ((int(__setPropDict[__id25_]) <= 109))))))){ __setPropDict[__id25_] = currentFrame;  (); }; if ((((__setPropDict[__id27_] == undefined)) || (!((((int(__setPropDict[__id27_]) >= 100)) && ((int(__setPropDict[__id27_]) <= 109))))))){ __setPropDict[__id27_] = currentFrame;  (); }; if ((((__setPropDict[__id26_] == undefined)) || (!((((int(__setPropDict[__id26_]) >= 100)) && ((int(__setPropDict[__id26_]) <= 109))))))){ __setPropDict[__id26_] = currentFrame;  (); }; } function  (){ if ((((__setPropDict[__id28_] == undefined)) || (!((((int(__setPropDict[__id28_]) >= 100)) && ((int(__setPropDict[__id28_]) <= 109))))))){ __setPropDict[__id28_] = currentFrame; (); }; if ((((__setPropDict[__id25_] == undefined)) || (!((((int(__setPropDict[__id25_]) >= 100)) && ((int(__setPropDict[__id25_]) <= 109))))))){ __setPropDict[__id25_] = currentFrame;  (); }; if ((((__setPropDict[__id27_] == undefined)) || (!((((int(__setPropDict[__id27_]) >= 100)) && ((int(__setPropDict[__id27_]) <= 109))))))){ __setPropDict[__id27_] = currentFrame;  (); }; if ((((__setPropDict[__id26_] == undefined)) || (!((((int(__setPropDict[__id26_]) >= 100)) && ((int(__setPropDict[__id26_]) <= 109))))))){ __setPropDict[__id26_] = currentFrame;  (); }; } function  (){ if ((((__setPropDict[__id25_] == undefined)) || (!((((int(__setPropDict[__id25_]) >= 90)) && ((int(__setPropDict[__id25_]) <= 99))))))){ __setPropDict[__id25_] = currentFrame;  (); }; } function  (){ if ((((__setPropDict[__id28_] == undefined)) || (!((((int(__setPropDict[__id28_]) >= 100)) && ((int(__setPropDict[__id28_]) <= 109))))))){ __setPropDict[__id28_] = currentFrame; (); }; if ((((__setPropDict[__id25_] == undefined)) || (!((((int(__setPropDict[__id25_]) >= 100)) && ((int(__setPropDict[__id25_]) <= 109))))))){ __setPropDict[__id25_] = currentFrame;  (); }; if ((((__setPropDict[__id27_] == undefined)) || (!((((int(__setPropDict[__id27_]) >= 100)) && ((int(__setPropDict[__id27_]) <= 109))))))){ __setPropDict[__id27_] = currentFrame;  (); }; if ((((__setPropDict[__id26_] == undefined)) || (!((((int(__setPropDict[__id26_]) >= 100)) && ((int(__setPropDict[__id26_]) <= 109))))))){ __setPropDict[__id26_] = currentFrame;  (); }; } function  (){ try { __id25_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id25_.align = "center"; __id25_.align_vert = "center"; __id25_.color = 0xFFFFFF; __id25_.id = "None"; __id25_.line_spacing = 18; __id25_.text = "chris burt-brown"; __id25_.tracking = 0; try { __id25_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function  (){ Controller.startGame(content); if (NitromeGame.sound_manager){ NitromeGame.sound_manager.playMusic(SoundManager.GAME); }; } function  (){ try { __id20_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id20_.align = "center"; __id20_.align_vert = "center"; __id20_.color = 0xFFFFFF; __id20_.id = "None"; __id20_.line_spacing = 18; __id20_.text = "select game"; __id20_.tracking = 0; try { __id20_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function  (){ if ((((__setPropDict[__id29_] == undefined)) || (!((((int(__setPropDict[__id29_]) >= 120)) && ((int(__setPropDict[__id29_]) <= 129))))))){ __setPropDict[__id29_] = currentFrame;  (); }; } function  (){ if ((((__setPropDict[__id29_] == undefined)) || (!((((int(__setPropDict[__id29_]) >= 120)) && ((int(__setPropDict[__id29_]) <= 129))))))){ __setPropDict[__id29_] = currentFrame;  (); }; if (NitromeGame.sound_manager){ NitromeGame.sound_manager.playMusic(SoundManager.MENU); }; Controller.startDemo(content); finalScore.text = Score.value.toString(); } function  (){ if ((((__setPropDict[__id29_] == undefined)) || (!((((int(__setPropDict[__id29_]) >= 120)) && ((int(__setPropDict[__id29_]) <= 129))))))){ __setPropDict[__id29_] = currentFrame;  (); }; } function (){ if ((((__setPropDict[__id29_] == undefined)) || (!((((int(__setPropDict[__id29_]) >= 120)) && ((int(__setPropDict[__id29_]) <= 129))))))){ __setPropDict[__id29_] = currentFrame;  (); }; } function (){ if ((((__setPropDict[__id29_] == undefined)) || (!((((int(__setPropDict[__id29_]) >= 120)) && ((int(__setPropDict[__id29_]) <= 129))))))){ __setPropDict[__id29_] = currentFrame;  (); }; } function (){ if ((((__setPropDict[__id29_] == undefined)) || (!((((int(__setPropDict[__id29_]) >= 120)) && ((int(__setPropDict[__id29_]) <= 129))))))){ __setPropDict[__id29_] = currentFrame;  (); }; } function (){ if ((((__setPropDict[__id29_] == undefined)) || (!((((int(__setPropDict[__id29_]) >= 120)) && ((int(__setPropDict[__id29_]) <= 129))))))){ __setPropDict[__id29_] = currentFrame;  (); }; } function (){ if ((((__setPropDict[__id29_] == undefined)) || (!((((int(__setPropDict[__id29_]) >= 120)) && ((int(__setPropDict[__id29_]) <= 129))))))){ __setPropDict[__id29_] = currentFrame;  (); }; } function (){ if ((((__setPropDict[__id29_] == undefined)) || (!((((int(__setPropDict[__id29_]) >= 120)) && ((int(__setPropDict[__id29_]) <= 129))))))){ __setPropDict[__id29_] = currentFrame;  (); }; } function (){ try { __id20_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id20_.align = "center"; __id20_.align_vert = "center"; __id20_.color = 0xFFFFFF; __id20_.id = "None"; __id20_.line_spacing = 18; __id20_.text = "select level"; __id20_.tracking = 0; try { __id20_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function (){ if ((((__setPropDict[__id29_] == undefined)) || (!((((int(__setPropDict[__id29_]) >= 120)) && ((int(__setPropDict[__id29_]) <= 129))))))){ __setPropDict[__id29_] = currentFrame;  (); }; } function  (){ try { __id26_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id26_.align = "center"; __id26_.align_vert = "center"; __id26_.color = 0xFFFFFF; __id26_.id = "None"; __id26_.line_spacing = 18; __id26_.text = "jon annal"; __id26_.tracking = 0; try { __id26_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function  (){ try { __id20_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id20_.align = "center"; __id20_.align_vert = "center"; __id20_.color = 0xFFFFFF; __id20_.id = "None"; __id20_.line_spacing = 18; __id20_.text = "scores"; __id20_.tracking = 0; try { __id20_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function  (){ try { __id27_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id27_.align = "center"; __id27_.align_vert = "center"; __id27_.color = 0xFFFFFF; __id27_.id = "None"; __id27_.line_spacing = 18; __id27_.text = "dave cowen"; __id27_.tracking = 0; try { __id27_["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package Flipside_fla
Section 169
//mtv_380 (Flipside_fla.mtv_380) package Flipside_fla { import flash.display.*; public dynamic class mtv_380 extends MovieClip { public function mtv_380(){ addFrameScript(0, frame1, 88, ); } function (){ stop(); NitromeGame.transition.doTween("nitrome"); } function frame1(){ play(); } } }//package Flipside_fla
Section 170
//overlaycontent_14 (Flipside_fla.overlaycontent_14) package Flipside_fla { import flash.display.*; import flash.utils.*; public dynamic class overlaycontent_14 extends MovieClip { public var __setPropDict:Dictionary; public var __id0_:FlipsideFont; public function overlaycontent_14(){ __setPropDict = new Dictionary(true); super(); addFrameScript(60, frame61, 61, frame62, 62, frame63, 63, frame64, 64, frame65, 65, frame66, 66, frame67, 67, frame68, 68, frame69, 69, frame70, 0, frame1, 1, frame2, 2, frame3, 3, frame4, 4, frame5, 5, frame6, 6, frame7, 7, frame8, 8, frame9, 9, frame10, 10, frame11, 11, frame12, 12, frame13, 13, frame14, 14, frame15, 15, frame16, 16, frame17, 17, frame18, 18, frame19, 19, frame20, 20, frame21, 21, frame22, 22, frame23, 23, frame24, 24, frame25, 25, frame26, 26, frame27, 27, frame28, 28, frame29, 29, frame30, 30, frame31, 31, frame32, 32, frame33, 33, frame34, 34, frame35, 35, frame36, 36, frame37, 37, frame38, 38, frame39, 39, frame40, 50, frame51, 51, frame52, 52, frame53, 53, frame54, 54, frame55, 55, frame56, 56, frame57, 57, frame58, 58, frame59, 59, frame60, 40, frame41, 41, frame42, 42, frame43, 43, frame44, 44, frame45, 45, frame46, 46, frame47, 47, frame48, 48, frame49, 49, frame50); } function frame10(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 1)) && ((int(__setPropDict[__id0_]) <= 10))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function frame14(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 11)) && ((int(__setPropDict[__id0_]) <= 20))))))){ __setPropDict[__id0_] = currentFrame;  (); }; } function frame16(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 11)) && ((int(__setPropDict[__id0_]) <= 20))))))){ __setPropDict[__id0_] = currentFrame;  (); }; } function frame15(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 11)) && ((int(__setPropDict[__id0_]) <= 20))))))){ __setPropDict[__id0_] = currentFrame;  (); }; } function frame19(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 11)) && ((int(__setPropDict[__id0_]) <= 20))))))){ __setPropDict[__id0_] = currentFrame;  (); }; } function frame12(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 11)) && ((int(__setPropDict[__id0_]) <= 20))))))){ __setPropDict[__id0_] = currentFrame;  (); }; } function frame17(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 11)) && ((int(__setPropDict[__id0_]) <= 20))))))){ __setPropDict[__id0_] = currentFrame;  (); }; } function frame18(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 11)) && ((int(__setPropDict[__id0_]) <= 20))))))){ __setPropDict[__id0_] = currentFrame;  (); }; } function frame3(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 1)) && ((int(__setPropDict[__id0_]) <= 10))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function frame4(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 1)) && ((int(__setPropDict[__id0_]) <= 10))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function frame5(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 1)) && ((int(__setPropDict[__id0_]) <= 10))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function frame6(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 1)) && ((int(__setPropDict[__id0_]) <= 10))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function frame1(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 1)) && ((int(__setPropDict[__id0_]) <= 10))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function frame22(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 21)) && ((int(__setPropDict[__id0_]) <= 30))))))){ __setPropDict[__id0_] = currentFrame;  (); }; } function frame23(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 21)) && ((int(__setPropDict[__id0_]) <= 30))))))){ __setPropDict[__id0_] = currentFrame;  (); }; } function frame24(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 21)) && ((int(__setPropDict[__id0_]) <= 30))))))){ __setPropDict[__id0_] = currentFrame;  (); }; } function frame25(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 21)) && ((int(__setPropDict[__id0_]) <= 30))))))){ __setPropDict[__id0_] = currentFrame;  (); }; } function frame13(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 11)) && ((int(__setPropDict[__id0_]) <= 20))))))){ __setPropDict[__id0_] = currentFrame;  (); }; } function frame9(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 1)) && ((int(__setPropDict[__id0_]) <= 10))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function frame2(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 1)) && ((int(__setPropDict[__id0_]) <= 10))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function frame21(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 21)) && ((int(__setPropDict[__id0_]) <= 30))))))){ __setPropDict[__id0_] = currentFrame;  (); }; } function frame26(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 21)) && ((int(__setPropDict[__id0_]) <= 30))))))){ __setPropDict[__id0_] = currentFrame;  (); }; } function frame8(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 1)) && ((int(__setPropDict[__id0_]) <= 10))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function frame11(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 11)) && ((int(__setPropDict[__id0_]) <= 20))))))){ __setPropDict[__id0_] = currentFrame;  (); }; } function frame30(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 21)) && ((int(__setPropDict[__id0_]) <= 30))))))){ __setPropDict[__id0_] = currentFrame;  (); }; } function frame7(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 1)) && ((int(__setPropDict[__id0_]) <= 10))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function frame35(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 31)) && ((int(__setPropDict[__id0_]) <= 40))))))){ __setPropDict[__id0_] = currentFrame;  (); }; } function frame36(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 31)) && ((int(__setPropDict[__id0_]) <= 40))))))){ __setPropDict[__id0_] = currentFrame;  (); }; } function frame37(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 31)) && ((int(__setPropDict[__id0_]) <= 40))))))){ __setPropDict[__id0_] = currentFrame;  (); }; } function frame27(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 21)) && ((int(__setPropDict[__id0_]) <= 30))))))){ __setPropDict[__id0_] = currentFrame;  (); }; } function frame28(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 21)) && ((int(__setPropDict[__id0_]) <= 30))))))){ __setPropDict[__id0_] = currentFrame;  (); }; } function frame29(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 21)) && ((int(__setPropDict[__id0_]) <= 30))))))){ __setPropDict[__id0_] = currentFrame;  (); }; } function frame20(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 11)) && ((int(__setPropDict[__id0_]) <= 20))))))){ __setPropDict[__id0_] = currentFrame;  (); }; } function frame38(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 31)) && ((int(__setPropDict[__id0_]) <= 40))))))){ __setPropDict[__id0_] = currentFrame;  (); }; } function frame39(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 31)) && ((int(__setPropDict[__id0_]) <= 40))))))){ __setPropDict[__id0_] = currentFrame;  (); }; } function frame32(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 31)) && ((int(__setPropDict[__id0_]) <= 40))))))){ __setPropDict[__id0_] = currentFrame;  (); }; } function frame34(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 31)) && ((int(__setPropDict[__id0_]) <= 40))))))){ __setPropDict[__id0_] = currentFrame;  (); }; } function frame31(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 31)) && ((int(__setPropDict[__id0_]) <= 40))))))){ __setPropDict[__id0_] = currentFrame;  (); }; } function frame33(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 31)) && ((int(__setPropDict[__id0_]) <= 40))))))){ __setPropDict[__id0_] = currentFrame;  (); }; } function frame40(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 31)) && ((int(__setPropDict[__id0_]) <= 40))))))){ __setPropDict[__id0_] = currentFrame;  (); }; } function frame42(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 41)) && ((int(__setPropDict[__id0_]) <= 50))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function frame43(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 41)) && ((int(__setPropDict[__id0_]) <= 50))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function frame44(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 41)) && ((int(__setPropDict[__id0_]) <= 50))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function frame45(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 41)) && ((int(__setPropDict[__id0_]) <= 50))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function frame46(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 41)) && ((int(__setPropDict[__id0_]) <= 50))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function frame47(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 41)) && ((int(__setPropDict[__id0_]) <= 50))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function frame41(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 41)) && ((int(__setPropDict[__id0_]) <= 50))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function frame48(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 41)) && ((int(__setPropDict[__id0_]) <= 50))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function frame49(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 41)) && ((int(__setPropDict[__id0_]) <= 50))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function  (){ try { __id0_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id0_.align = "center"; __id0_.align_vert = "center"; __id0_.color = 0xFFFFFF; __id0_.id = "None"; __id0_.line_spacing = 18; __id0_.text = "2"; __id0_.tracking = 0; try { __id0_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame51(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 51)) && ((int(__setPropDict[__id0_]) <= 60))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function frame52(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 51)) && ((int(__setPropDict[__id0_]) <= 60))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function frame53(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 51)) && ((int(__setPropDict[__id0_]) <= 60))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function frame54(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 51)) && ((int(__setPropDict[__id0_]) <= 60))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function frame55(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 51)) && ((int(__setPropDict[__id0_]) <= 60))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function frame56(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 51)) && ((int(__setPropDict[__id0_]) <= 60))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function frame57(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 51)) && ((int(__setPropDict[__id0_]) <= 60))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function frame58(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 51)) && ((int(__setPropDict[__id0_]) <= 60))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function frame59(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 51)) && ((int(__setPropDict[__id0_]) <= 60))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function frame50(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 41)) && ((int(__setPropDict[__id0_]) <= 50))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function  (){ try { __id0_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id0_.align = "center"; __id0_.align_vert = "center"; __id0_.color = 0xFFFFFF; __id0_.id = "None"; __id0_.line_spacing = 18; __id0_.text = "1"; __id0_.tracking = 0; try { __id0_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame60(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 51)) && ((int(__setPropDict[__id0_]) <= 60))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function frame61(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 61)) && ((int(__setPropDict[__id0_]) <= 70))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function frame62(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 61)) && ((int(__setPropDict[__id0_]) <= 70))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function frame63(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 61)) && ((int(__setPropDict[__id0_]) <= 70))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function frame64(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 61)) && ((int(__setPropDict[__id0_]) <= 70))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function frame65(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 61)) && ((int(__setPropDict[__id0_]) <= 70))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function frame66(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 61)) && ((int(__setPropDict[__id0_]) <= 70))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function frame67(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 61)) && ((int(__setPropDict[__id0_]) <= 70))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function frame68(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 61)) && ((int(__setPropDict[__id0_]) <= 70))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function frame69(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 61)) && ((int(__setPropDict[__id0_]) <= 70))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function  (){ try { __id0_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id0_.align = "center"; __id0_.align_vert = "center"; __id0_.color = 0xFFFFFF; __id0_.id = "None"; __id0_.line_spacing = 18; __id0_.text = "Go!"; __id0_.tracking = 0; try { __id0_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame70(){ if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 61)) && ((int(__setPropDict[__id0_]) <= 70))))))){ __setPropDict[__id0_] = currentFrame; (); }; } function (){ try { __id0_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id0_.align = "center"; __id0_.align_vert = "center"; __id0_.color = 0xFFFFFF; __id0_.id = "None"; __id0_.line_spacing = 18; __id0_.text = "Lap 2"; __id0_.tracking = 0; try { __id0_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function (){ try { __id0_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id0_.align = "center"; __id0_.align_vert = "center"; __id0_.color = 0xFFFFFF; __id0_.id = "None"; __id0_.line_spacing = 18; __id0_.text = "Final Lap"; __id0_.tracking = 0; try { __id0_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function (){ try { __id0_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id0_.align = "center"; __id0_.align_vert = "center"; __id0_.color = 0xFFFFFF; __id0_.id = "None"; __id0_.line_spacing = 18; __id0_.text = "3"; __id0_.tracking = 0; try { __id0_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function (){ try { __id0_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id0_.align = "center"; __id0_.align_vert = "center"; __id0_.color = 0xFFFFFF; __id0_.id = "None"; __id0_.line_spacing = 18; __id0_.text = "Finish"; __id0_.tracking = 0; try { __id0_["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package Flipside_fla
Section 171
//popupcontent_16 (Flipside_fla.popupcontent_16) package Flipside_fla { import flash.display.*; import flash.text.*; import com.nitrome.game.*; import flash.utils.*; public dynamic class popupcontent_16 extends MovieClip { public var default_restart:RestartLevelButton; public var default_next:NextLevelButton; public var __setPropDict:Dictionary; public var __id3_:FlipsideFont; public var player1Score:FlipsideFont; public var levelScore:TextField; public var player2Score:FlipsideFont; public var totalScore:TextField; public var default_backto2pls:ExitToLevelSelectButton; public var default_resume:ContinueGameButton; public function popupcontent_16(){ __setPropDict = new Dictionary(true); super(); addFrameScript(30, frame31, 31, frame32, 32, frame33, 33, frame34, 34, frame35, 35, frame36, 36, frame37, 37, frame38, 38, frame39, 39, frame40, 40, frame41, 41, frame42, 42, frame43, 43, frame44, 44, frame45, 45, frame46, 46, frame47, 47, frame48, 48, frame49, 49, frame50, 20, frame21, 21, frame22, 22, frame23, 23, frame24, 24, frame25, 25, frame26, 26, frame27, 27, frame28, 28, frame29, 29, frame30, 10, frame11, 11, frame12, 12, frame13, 13, frame14, 14, frame15, 15, frame16, 16, frame17, 17, frame18, 18, frame19, 19, frame20, 0, frame1, 1, frame2, 2, frame3, 3, frame4, 4, frame5, 5, frame6, 6, frame7, 7, frame8, 8, frame9, 9, frame10); } function (){ try { player1Score["componentInspectorSetting"] = true; } catch(e:Error) { }; player1Score.align = "center"; player1Score.align_vert = "center"; player1Score.color = 0xFFFFFF; player1Score.id = "None"; player1Score.line_spacing = 18; player1Score.text = ""; player1Score.tracking = 0; try { player1Score["componentInspectorSetting"] = false; } catch(e:Error) { }; } function  (){ try { __id3_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id3_.align = "center"; __id3_.align_vert = "center"; __id3_.color = 0xFFFFFF; __id3_.id = "None"; __id3_.line_spacing = 18; __id3_.text = "paused"; __id3_.tracking = 0; try { __id3_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame10(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 1)) && ((int(__setPropDict[__id3_]) <= 10))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame14(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 11)) && ((int(__setPropDict[__id3_]) <= 20))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame16(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 11)) && ((int(__setPropDict[__id3_]) <= 20))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame15(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 11)) && ((int(__setPropDict[__id3_]) <= 20))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function  (){ try { __id3_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id3_.align = "center"; __id3_.align_vert = "center"; __id3_.color = 0xFFFFFF; __id3_.id = "None"; __id3_.line_spacing = 18; __id3_.text = "level complete"; __id3_.tracking = 0; try { __id3_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame18(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 11)) && ((int(__setPropDict[__id3_]) <= 20))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame2(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 1)) && ((int(__setPropDict[__id3_]) <= 10))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame12(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 11)) && ((int(__setPropDict[__id3_]) <= 20))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame4(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 1)) && ((int(__setPropDict[__id3_]) <= 10))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame5(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 1)) && ((int(__setPropDict[__id3_]) <= 10))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame6(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 1)) && ((int(__setPropDict[__id3_]) <= 10))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame7(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 1)) && ((int(__setPropDict[__id3_]) <= 10))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame17(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 11)) && ((int(__setPropDict[__id3_]) <= 20))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function  (){ try { __id3_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id3_.align = "center"; __id3_.align_vert = "center"; __id3_.color = 0xFFFFFF; __id3_.id = "None"; __id3_.line_spacing = 18; __id3_.text = "level failed"; __id3_.tracking = 0; try { __id3_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame23(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 21)) && ((int(__setPropDict[__id3_]) <= 30))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame24(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 21)) && ((int(__setPropDict[__id3_]) <= 30))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame25(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 21)) && ((int(__setPropDict[__id3_]) <= 30))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame26(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 21)) && ((int(__setPropDict[__id3_]) <= 30))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame21(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 21)) && ((int(__setPropDict[__id3_]) <= 30))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame22(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 21)) && ((int(__setPropDict[__id3_]) <= 30))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame3(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 1)) && ((int(__setPropDict[__id3_]) <= 10))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame19(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 11)) && ((int(__setPropDict[__id3_]) <= 20))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame29(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 21)) && ((int(__setPropDict[__id3_]) <= 30))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame13(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 11)) && ((int(__setPropDict[__id3_]) <= 20))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame20(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 11)) && ((int(__setPropDict[__id3_]) <= 20))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame9(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 1)) && ((int(__setPropDict[__id3_]) <= 10))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame11(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 11)) && ((int(__setPropDict[__id3_]) <= 20))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame27(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 21)) && ((int(__setPropDict[__id3_]) <= 30))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function  (){ try { __id3_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id3_.align = "center"; __id3_.align_vert = "center"; __id3_.color = 0xFFFFFF; __id3_.id = "None"; __id3_.line_spacing = 18; __id3_.text = "player 1 wins!"; __id3_.tracking = 0; try { __id3_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame35(){ if ((((__setPropDict[player2Score] == undefined)) || (!((((int(__setPropDict[player2Score]) >= 31)) && ((int(__setPropDict[player2Score]) <= 50))))))){ __setPropDict[player2Score] = currentFrame; (); }; if ((((__setPropDict[player1Score] == undefined)) || (!((((int(__setPropDict[player1Score]) >= 31)) && ((int(__setPropDict[player1Score]) <= 50))))))){ __setPropDict[player1Score] = currentFrame; (); }; if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 31)) && ((int(__setPropDict[__id3_]) <= 40))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame36(){ if ((((__setPropDict[player2Score] == undefined)) || (!((((int(__setPropDict[player2Score]) >= 31)) && ((int(__setPropDict[player2Score]) <= 50))))))){ __setPropDict[player2Score] = currentFrame; (); }; if ((((__setPropDict[player1Score] == undefined)) || (!((((int(__setPropDict[player1Score]) >= 31)) && ((int(__setPropDict[player1Score]) <= 50))))))){ __setPropDict[player1Score] = currentFrame; (); }; if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 31)) && ((int(__setPropDict[__id3_]) <= 40))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame37(){ if ((((__setPropDict[player2Score] == undefined)) || (!((((int(__setPropDict[player2Score]) >= 31)) && ((int(__setPropDict[player2Score]) <= 50))))))){ __setPropDict[player2Score] = currentFrame; (); }; if ((((__setPropDict[player1Score] == undefined)) || (!((((int(__setPropDict[player1Score]) >= 31)) && ((int(__setPropDict[player1Score]) <= 50))))))){ __setPropDict[player1Score] = currentFrame; (); }; if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 31)) && ((int(__setPropDict[__id3_]) <= 40))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame33(){ if ((((__setPropDict[player2Score] == undefined)) || (!((((int(__setPropDict[player2Score]) >= 31)) && ((int(__setPropDict[player2Score]) <= 50))))))){ __setPropDict[player2Score] = currentFrame; (); }; if ((((__setPropDict[player1Score] == undefined)) || (!((((int(__setPropDict[player1Score]) >= 31)) && ((int(__setPropDict[player1Score]) <= 50))))))){ __setPropDict[player1Score] = currentFrame; (); }; if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 31)) && ((int(__setPropDict[__id3_]) <= 40))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame34(){ if ((((__setPropDict[player2Score] == undefined)) || (!((((int(__setPropDict[player2Score]) >= 31)) && ((int(__setPropDict[player2Score]) <= 50))))))){ __setPropDict[player2Score] = currentFrame; (); }; if ((((__setPropDict[player1Score] == undefined)) || (!((((int(__setPropDict[player1Score]) >= 31)) && ((int(__setPropDict[player1Score]) <= 50))))))){ __setPropDict[player1Score] = currentFrame; (); }; if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 31)) && ((int(__setPropDict[__id3_]) <= 40))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame8(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 1)) && ((int(__setPropDict[__id3_]) <= 10))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame38(){ if ((((__setPropDict[player2Score] == undefined)) || (!((((int(__setPropDict[player2Score]) >= 31)) && ((int(__setPropDict[player2Score]) <= 50))))))){ __setPropDict[player2Score] = currentFrame; (); }; if ((((__setPropDict[player1Score] == undefined)) || (!((((int(__setPropDict[player1Score]) >= 31)) && ((int(__setPropDict[player1Score]) <= 50))))))){ __setPropDict[player1Score] = currentFrame; (); }; if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 31)) && ((int(__setPropDict[__id3_]) <= 40))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame31(){ if ((((__setPropDict[player2Score] == undefined)) || (!((((int(__setPropDict[player2Score]) >= 31)) && ((int(__setPropDict[player2Score]) <= 50))))))){ __setPropDict[player2Score] = currentFrame; (); }; if ((((__setPropDict[player1Score] == undefined)) || (!((((int(__setPropDict[player1Score]) >= 31)) && ((int(__setPropDict[player1Score]) <= 50))))))){ __setPropDict[player1Score] = currentFrame; (); }; if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 31)) && ((int(__setPropDict[__id3_]) <= 40))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame32(){ if ((((__setPropDict[player2Score] == undefined)) || (!((((int(__setPropDict[player2Score]) >= 31)) && ((int(__setPropDict[player2Score]) <= 50))))))){ __setPropDict[player2Score] = currentFrame; (); }; if ((((__setPropDict[player1Score] == undefined)) || (!((((int(__setPropDict[player1Score]) >= 31)) && ((int(__setPropDict[player1Score]) <= 50))))))){ __setPropDict[player1Score] = currentFrame; (); }; if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 31)) && ((int(__setPropDict[__id3_]) <= 40))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame1(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 1)) && ((int(__setPropDict[__id3_]) <= 10))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame40(){ if ((((__setPropDict[player2Score] == undefined)) || (!((((int(__setPropDict[player2Score]) >= 31)) && ((int(__setPropDict[player2Score]) <= 50))))))){ __setPropDict[player2Score] = currentFrame; (); }; if ((((__setPropDict[player1Score] == undefined)) || (!((((int(__setPropDict[player1Score]) >= 31)) && ((int(__setPropDict[player1Score]) <= 50))))))){ __setPropDict[player1Score] = currentFrame; (); }; if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 31)) && ((int(__setPropDict[__id3_]) <= 40))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function  (){ try { __id3_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id3_.align = "center"; __id3_.align_vert = "center"; __id3_.color = 0xFFFFFF; __id3_.id = "None"; __id3_.line_spacing = 18; __id3_.text = "player 2 wins!"; __id3_.tracking = 0; try { __id3_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame43(){ if ((((__setPropDict[player2Score] == undefined)) || (!((((int(__setPropDict[player2Score]) >= 31)) && ((int(__setPropDict[player2Score]) <= 50))))))){ __setPropDict[player2Score] = currentFrame; (); }; if ((((__setPropDict[player1Score] == undefined)) || (!((((int(__setPropDict[player1Score]) >= 31)) && ((int(__setPropDict[player1Score]) <= 50))))))){ __setPropDict[player1Score] = currentFrame; (); }; if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 41)) && ((int(__setPropDict[__id3_]) <= 50))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame44(){ if ((((__setPropDict[player2Score] == undefined)) || (!((((int(__setPropDict[player2Score]) >= 31)) && ((int(__setPropDict[player2Score]) <= 50))))))){ __setPropDict[player2Score] = currentFrame; (); }; if ((((__setPropDict[player1Score] == undefined)) || (!((((int(__setPropDict[player1Score]) >= 31)) && ((int(__setPropDict[player1Score]) <= 50))))))){ __setPropDict[player1Score] = currentFrame; (); }; if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 41)) && ((int(__setPropDict[__id3_]) <= 50))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame45(){ if ((((__setPropDict[player2Score] == undefined)) || (!((((int(__setPropDict[player2Score]) >= 31)) && ((int(__setPropDict[player2Score]) <= 50))))))){ __setPropDict[player2Score] = currentFrame; (); }; if ((((__setPropDict[player1Score] == undefined)) || (!((((int(__setPropDict[player1Score]) >= 31)) && ((int(__setPropDict[player1Score]) <= 50))))))){ __setPropDict[player1Score] = currentFrame; (); }; if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 41)) && ((int(__setPropDict[__id3_]) <= 50))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame46(){ if ((((__setPropDict[player2Score] == undefined)) || (!((((int(__setPropDict[player2Score]) >= 31)) && ((int(__setPropDict[player2Score]) <= 50))))))){ __setPropDict[player2Score] = currentFrame; (); }; if ((((__setPropDict[player1Score] == undefined)) || (!((((int(__setPropDict[player1Score]) >= 31)) && ((int(__setPropDict[player1Score]) <= 50))))))){ __setPropDict[player1Score] = currentFrame; (); }; if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 41)) && ((int(__setPropDict[__id3_]) <= 50))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame47(){ if ((((__setPropDict[player2Score] == undefined)) || (!((((int(__setPropDict[player2Score]) >= 31)) && ((int(__setPropDict[player2Score]) <= 50))))))){ __setPropDict[player2Score] = currentFrame; (); }; if ((((__setPropDict[player1Score] == undefined)) || (!((((int(__setPropDict[player1Score]) >= 31)) && ((int(__setPropDict[player1Score]) <= 50))))))){ __setPropDict[player1Score] = currentFrame; (); }; if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 41)) && ((int(__setPropDict[__id3_]) <= 50))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame41(){ if ((((__setPropDict[player2Score] == undefined)) || (!((((int(__setPropDict[player2Score]) >= 31)) && ((int(__setPropDict[player2Score]) <= 50))))))){ __setPropDict[player2Score] = currentFrame; (); }; if ((((__setPropDict[player1Score] == undefined)) || (!((((int(__setPropDict[player1Score]) >= 31)) && ((int(__setPropDict[player1Score]) <= 50))))))){ __setPropDict[player1Score] = currentFrame; (); }; if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 41)) && ((int(__setPropDict[__id3_]) <= 50))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame39(){ if ((((__setPropDict[player2Score] == undefined)) || (!((((int(__setPropDict[player2Score]) >= 31)) && ((int(__setPropDict[player2Score]) <= 50))))))){ __setPropDict[player2Score] = currentFrame; (); }; if ((((__setPropDict[player1Score] == undefined)) || (!((((int(__setPropDict[player1Score]) >= 31)) && ((int(__setPropDict[player1Score]) <= 50))))))){ __setPropDict[player1Score] = currentFrame; (); }; if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 31)) && ((int(__setPropDict[__id3_]) <= 40))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame30(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 21)) && ((int(__setPropDict[__id3_]) <= 30))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame48(){ if ((((__setPropDict[player2Score] == undefined)) || (!((((int(__setPropDict[player2Score]) >= 31)) && ((int(__setPropDict[player2Score]) <= 50))))))){ __setPropDict[player2Score] = currentFrame; (); }; if ((((__setPropDict[player1Score] == undefined)) || (!((((int(__setPropDict[player1Score]) >= 31)) && ((int(__setPropDict[player1Score]) <= 50))))))){ __setPropDict[player1Score] = currentFrame; (); }; if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 41)) && ((int(__setPropDict[__id3_]) <= 50))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame49(){ if ((((__setPropDict[player2Score] == undefined)) || (!((((int(__setPropDict[player2Score]) >= 31)) && ((int(__setPropDict[player2Score]) <= 50))))))){ __setPropDict[player2Score] = currentFrame; (); }; if ((((__setPropDict[player1Score] == undefined)) || (!((((int(__setPropDict[player1Score]) >= 31)) && ((int(__setPropDict[player1Score]) <= 50))))))){ __setPropDict[player1Score] = currentFrame; (); }; if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 41)) && ((int(__setPropDict[__id3_]) <= 50))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame42(){ if ((((__setPropDict[player2Score] == undefined)) || (!((((int(__setPropDict[player2Score]) >= 31)) && ((int(__setPropDict[player2Score]) <= 50))))))){ __setPropDict[player2Score] = currentFrame; (); }; if ((((__setPropDict[player1Score] == undefined)) || (!((((int(__setPropDict[player1Score]) >= 31)) && ((int(__setPropDict[player1Score]) <= 50))))))){ __setPropDict[player1Score] = currentFrame; (); }; if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 41)) && ((int(__setPropDict[__id3_]) <= 50))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame50(){ if ((((__setPropDict[player2Score] == undefined)) || (!((((int(__setPropDict[player2Score]) >= 31)) && ((int(__setPropDict[player2Score]) <= 50))))))){ __setPropDict[player2Score] = currentFrame; (); }; if ((((__setPropDict[player1Score] == undefined)) || (!((((int(__setPropDict[player1Score]) >= 31)) && ((int(__setPropDict[player1Score]) <= 50))))))){ __setPropDict[player1Score] = currentFrame; (); }; if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 41)) && ((int(__setPropDict[__id3_]) <= 50))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function frame28(){ if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 21)) && ((int(__setPropDict[__id3_]) <= 30))))))){ __setPropDict[__id3_] = currentFrame;  (); }; } function (){ try { player2Score["componentInspectorSetting"] = true; } catch(e:Error) { }; player2Score.align = "center"; player2Score.align_vert = "center"; player2Score.color = 0xFFFFFF; player2Score.id = "None"; player2Score.line_spacing = 18; player2Score.text = ""; player2Score.tracking = 0; try { player2Score["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package Flipside_fla
Section 172
//threetwoone_27 (Flipside_fla.threetwoone_27) package Flipside_fla { import flash.display.*; public dynamic class threetwoone_27 extends MovieClip { public function threetwoone_27(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Flipside_fla
Section 173
//acceleratorCeiling1 (acceleratorCeiling1) package { import flash.display.*; public dynamic class acceleratorCeiling1 extends MovieClip { } }//package
Section 174
//acceleratorCeiling2 (acceleratorCeiling2) package { import flash.display.*; public dynamic class acceleratorCeiling2 extends MovieClip { } }//package
Section 175
//acceleratorFloor1 (acceleratorFloor1) package { import flash.display.*; public dynamic class acceleratorFloor1 extends MovieClip { } }//package
Section 176
//acceleratorFloor2 (acceleratorFloor2) package { import flash.display.*; public dynamic class acceleratorFloor2 extends MovieClip { } }//package
Section 177
//acceleratorLHWall1 (acceleratorLHWall1) package { import flash.display.*; public dynamic class acceleratorLHWall1 extends MovieClip { } }//package
Section 178
//acceleratorLHWall2 (acceleratorLHWall2) package { import flash.display.*; public dynamic class acceleratorLHWall2 extends MovieClip { } }//package
Section 179
//acceleratorRHWall1 (acceleratorRHWall1) package { import flash.display.*; public dynamic class acceleratorRHWall1 extends MovieClip { } }//package
Section 180
//acceleratorRHWall2 (acceleratorRHWall2) package { import flash.display.*; public dynamic class acceleratorRHWall2 extends MovieClip { } }//package
Section 181
//backlayer (backlayer) package { import flash.display.*; public dynamic class backlayer extends MovieClip { } }//package
Section 182
//bigCircle1 (bigCircle1) package { import flash.display.*; public dynamic class bigCircle1 extends Sprite { } }//package
Section 183
//bigCircle2 (bigCircle2) package { import flash.display.*; public dynamic class bigCircle2 extends Sprite { } }//package
Section 184
//bigCircle3 (bigCircle3) package { import flash.display.*; public dynamic class bigCircle3 extends Sprite { } }//package
Section 185
//bigCircle4 (bigCircle4) package { import flash.display.*; public dynamic class bigCircle4 extends Sprite { } }//package
Section 186
//bike0Chassis (bike0Chassis) package { import flash.display.*; public dynamic class bike0Chassis extends MovieClip { } }//package
Section 187
//bike0ChassisNumbers (bike0ChassisNumbers) package { import flash.display.*; public dynamic class bike0ChassisNumbers extends MovieClip { } }//package
Section 188
//bike0ChassisShine (bike0ChassisShine) package { import flash.display.*; public dynamic class bike0ChassisShine extends MovieClip { } }//package
Section 189
//bike0Rider (bike0Rider) package { import flash.display.*; public dynamic class bike0Rider extends MovieClip { } }//package
Section 190
//bike0Wheel (bike0Wheel) package { import flash.display.*; public dynamic class bike0Wheel extends MovieClip { } }//package
Section 191
//bike0WheelLines (bike0WheelLines) package { import flash.display.*; public dynamic class bike0WheelLines extends MovieClip { } }//package
Section 192
//bike1Chassis (bike1Chassis) package { import flash.display.*; public dynamic class bike1Chassis extends MovieClip { } }//package
Section 193
//bike1ChassisNumbers (bike1ChassisNumbers) package { import flash.display.*; public dynamic class bike1ChassisNumbers extends MovieClip { } }//package
Section 194
//bike1ChassisShine (bike1ChassisShine) package { import flash.display.*; public dynamic class bike1ChassisShine extends MovieClip { } }//package
Section 195
//bike1Rider (bike1Rider) package { import flash.display.*; public dynamic class bike1Rider extends MovieClip { } }//package
Section 196
//bike1Wheel (bike1Wheel) package { import flash.display.*; public dynamic class bike1Wheel extends MovieClip { } }//package
Section 197
//bike1WheelLines (bike1WheelLines) package { import flash.display.*; public dynamic class bike1WheelLines extends MovieClip { } }//package
Section 198
//bike2Chassis (bike2Chassis) package { import flash.display.*; public dynamic class bike2Chassis extends MovieClip { } }//package
Section 199
//bike2ChassisNumbers (bike2ChassisNumbers) package { import flash.display.*; public dynamic class bike2ChassisNumbers extends MovieClip { } }//package
Section 200
//bike2ChassisShine (bike2ChassisShine) package { import flash.display.*; public dynamic class bike2ChassisShine extends MovieClip { } }//package
Section 201
//bike2Rider (bike2Rider) package { import flash.display.*; public dynamic class bike2Rider extends MovieClip { } }//package
Section 202
//bike2Wheel (bike2Wheel) package { import flash.display.*; public dynamic class bike2Wheel extends MovieClip { } }//package
Section 203
//bike2WheelLines (bike2WheelLines) package { import flash.display.*; public dynamic class bike2WheelLines extends MovieClip { } }//package
Section 204
//bike3Chassis (bike3Chassis) package { import flash.display.*; public dynamic class bike3Chassis extends MovieClip { } }//package
Section 205
//bike3ChassisNumbers (bike3ChassisNumbers) package { import flash.display.*; public dynamic class bike3ChassisNumbers extends MovieClip { } }//package
Section 206
//bike3ChassisShine (bike3ChassisShine) package { import flash.display.*; public dynamic class bike3ChassisShine extends MovieClip { } }//package
Section 207
//bike3Rider (bike3Rider) package { import flash.display.*; public dynamic class bike3Rider extends MovieClip { } }//package
Section 208
//bike3Wheel (bike3Wheel) package { import flash.display.*; public dynamic class bike3Wheel extends MovieClip { } }//package
Section 209
//bike3WheelLines (bike3WheelLines) package { import flash.display.*; public dynamic class bike3WheelLines extends MovieClip { } }//package
Section 210
//bikeArrows (bikeArrows) package { import flash.display.*; public dynamic class bikeArrows extends MovieClip { } }//package
Section 211
//box (box) package { import flash.display.*; public dynamic class box extends Sprite { } }//package
Section 212
//btile_1 (btile_1) package { import flash.display.*; public dynamic class btile_1 extends MovieClip { } }//package
Section 213
//btile_10 (btile_10) package { import flash.display.*; public dynamic class btile_10 extends MovieClip { } }//package
Section 214
//btile_11 (btile_11) package { import flash.display.*; public dynamic class btile_11 extends MovieClip { } }//package
Section 215
//btile_12 (btile_12) package { import flash.display.*; public dynamic class btile_12 extends MovieClip { } }//package
Section 216
//btile_13 (btile_13) package { import flash.display.*; public dynamic class btile_13 extends MovieClip { } }//package
Section 217
//btile_14 (btile_14) package { import flash.display.*; public dynamic class btile_14 extends MovieClip { } }//package
Section 218
//btile_15 (btile_15) package { import flash.display.*; public dynamic class btile_15 extends MovieClip { } }//package
Section 219
//btile_16 (btile_16) package { import flash.display.*; public dynamic class btile_16 extends MovieClip { } }//package
Section 220
//btile_17 (btile_17) package { import flash.display.*; public dynamic class btile_17 extends MovieClip { } }//package
Section 221
//btile_18 (btile_18) package { import flash.display.*; public dynamic class btile_18 extends MovieClip { } }//package
Section 222
//btile_19 (btile_19) package { import flash.display.*; public dynamic class btile_19 extends MovieClip { } }//package
Section 223
//btile_2 (btile_2) package { import flash.display.*; public dynamic class btile_2 extends MovieClip { } }//package
Section 224
//btile_20 (btile_20) package { import flash.display.*; public dynamic class btile_20 extends MovieClip { } }//package
Section 225
//btile_21 (btile_21) package { import flash.display.*; public dynamic class btile_21 extends MovieClip { } }//package
Section 226
//btile_22 (btile_22) package { import flash.display.*; public dynamic class btile_22 extends MovieClip { } }//package
Section 227
//btile_23 (btile_23) package { import flash.display.*; public dynamic class btile_23 extends MovieClip { } }//package
Section 228
//btile_24 (btile_24) package { import flash.display.*; public dynamic class btile_24 extends MovieClip { } }//package
Section 229
//btile_25 (btile_25) package { import flash.display.*; public dynamic class btile_25 extends MovieClip { } }//package
Section 230
//btile_26 (btile_26) package { import flash.display.*; public dynamic class btile_26 extends MovieClip { } }//package
Section 231
//btile_27 (btile_27) package { import flash.display.*; public dynamic class btile_27 extends MovieClip { } }//package
Section 232
//btile_28 (btile_28) package { import flash.display.*; public dynamic class btile_28 extends MovieClip { } }//package
Section 233
//btile_29 (btile_29) package { import flash.display.*; public dynamic class btile_29 extends MovieClip { } }//package
Section 234
//btile_3 (btile_3) package { import flash.display.*; public dynamic class btile_3 extends MovieClip { } }//package
Section 235
//btile_30 (btile_30) package { import flash.display.*; public dynamic class btile_30 extends MovieClip { } }//package
Section 236
//btile_31 (btile_31) package { import flash.display.*; public dynamic class btile_31 extends MovieClip { } }//package
Section 237
//btile_32 (btile_32) package { import flash.display.*; public dynamic class btile_32 extends MovieClip { } }//package
Section 238
//btile_33 (btile_33) package { import flash.display.*; public dynamic class btile_33 extends MovieClip { } }//package
Section 239
//btile_34 (btile_34) package { import flash.display.*; public dynamic class btile_34 extends MovieClip { } }//package
Section 240
//btile_35 (btile_35) package { import flash.display.*; public dynamic class btile_35 extends MovieClip { } }//package
Section 241
//btile_36 (btile_36) package { import flash.display.*; public dynamic class btile_36 extends MovieClip { } }//package
Section 242
//btile_37 (btile_37) package { import flash.display.*; public dynamic class btile_37 extends MovieClip { } }//package
Section 243
//btile_4 (btile_4) package { import flash.display.*; public dynamic class btile_4 extends MovieClip { } }//package
Section 244
//btile_5 (btile_5) package { import flash.display.*; public dynamic class btile_5 extends MovieClip { } }//package
Section 245
//btile_6 (btile_6) package { import flash.display.*; public dynamic class btile_6 extends MovieClip { } }//package
Section 246
//btile_7 (btile_7) package { import flash.display.*; public dynamic class btile_7 extends MovieClip { } }//package
Section 247
//btile_8 (btile_8) package { import flash.display.*; public dynamic class btile_8 extends MovieClip { } }//package
Section 248
//btile_9 (btile_9) package { import flash.display.*; public dynamic class btile_9 extends MovieClip { } }//package
Section 249
//catcherArm1 (catcherArm1) package { import flash.display.*; public dynamic class catcherArm1 extends Sprite { } }//package
Section 250
//catcherArm2 (catcherArm2) package { import flash.display.*; public dynamic class catcherArm2 extends Sprite { } }//package
Section 251
//catcherCar1 (catcherCar1) package { import flash.display.*; public dynamic class catcherCar1 extends Sprite { } }//package
Section 252
//catcherCar2 (catcherCar2) package { import flash.display.*; public dynamic class catcherCar2 extends Sprite { } }//package
Section 253
//catflapBody (catflapBody) package { import flash.display.*; public dynamic class catflapBody extends Sprite { } }//package
Section 254
//catflapHinge (catflapHinge) package { import flash.display.*; public dynamic class catflapHinge extends Sprite { } }//package
Section 255
//chunkCutBox (chunkCutBox) package { import flash.display.*; public dynamic class chunkCutBox extends Sprite { } }//package
Section 256
//chunkPentagon (chunkPentagon) package { import flash.display.*; public dynamic class chunkPentagon extends Sprite { } }//package
Section 257
//chunkSmallBox (chunkSmallBox) package { import flash.display.*; public dynamic class chunkSmallBox extends Sprite { } }//package
Section 258
//chunkTriangle (chunkTriangle) package { import flash.display.*; public dynamic class chunkTriangle extends Sprite { } }//package
Section 259
//ClearButton (ClearButton) package { import com.nitrome.highscore.*; public dynamic class ClearButton extends ClearButton { public var __id17_:FlipsideFont; public function ClearButton(){ addFrameScript(0, frame1);  (); } function  (){ try { __id17_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id17_.align = "center"; __id17_.align_vert = "center"; __id17_.color = 0xFFFFFF; __id17_.id = "None"; __id17_.line_spacing = 18; __id17_.text = "clear"; __id17_.tracking = 0; try { __id17_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame1(){ stop(); } } }//package
Section 260
//cogShape1 (cogShape1) package { import flash.display.*; public dynamic class cogShape1 extends MovieClip { } }//package
Section 261
//cogShape2 (cogShape2) package { import flash.display.*; public dynamic class cogShape2 extends MovieClip { } }//package
Section 262
//drawbridge1 (drawbridge1) package { import flash.display.*; public dynamic class drawbridge1 extends Sprite { } }//package
Section 263
//drawbridge2 (drawbridge2) package { import flash.display.*; public dynamic class drawbridge2 extends Sprite { } }//package
Section 264
//flatShape1 (flatShape1) package { import flash.display.*; public dynamic class flatShape1 extends Sprite { } }//package
Section 265
//flatShape2 (flatShape2) package { import flash.display.*; public dynamic class flatShape2 extends Sprite { } }//package
Section 266
//FlipsideFont (FlipsideFont) package { import com.nitrome.game.*; public dynamic class FlipsideFont extends TemplateFont { } }//package
Section 267
//forceBlock1 (forceBlock1) package { import flash.display.*; public dynamic class forceBlock1 extends MovieClip { } }//package
Section 268
//forceBlock2 (forceBlock2) package { import flash.display.*; public dynamic class forceBlock2 extends MovieClip { } }//package
Section 269
//forceBlock3 (forceBlock3) package { import flash.display.*; public dynamic class forceBlock3 extends MovieClip { } }//package
Section 270
//forceBlock4 (forceBlock4) package { import flash.display.*; public dynamic class forceBlock4 extends MovieClip { } }//package
Section 271
//forceBlock5 (forceBlock5) package { import flash.display.*; public dynamic class forceBlock5 extends MovieClip { } }//package
Section 272
//ftile_lb (ftile_lb) package { import flash.display.*; public dynamic class ftile_lb extends Sprite { } }//package
Section 273
//ftile_lb2 (ftile_lb2) package { import flash.display.*; public dynamic class ftile_lb2 extends MovieClip { } }//package
Section 274
//ftile_lg (ftile_lg) package { import flash.display.*; public dynamic class ftile_lg extends Sprite { } }//package
Section 275
//ftile_lg2 (ftile_lg2) package { import flash.display.*; public dynamic class ftile_lg2 extends MovieClip { } }//package
Section 276
//ftile_lp (ftile_lp) package { import flash.display.*; public dynamic class ftile_lp extends Sprite { } }//package
Section 277
//ftile_lp2 (ftile_lp2) package { import flash.display.*; public dynamic class ftile_lp2 extends MovieClip { } }//package
Section 278
//ftile_lw (ftile_lw) package { import flash.display.*; public dynamic class ftile_lw extends Sprite { } }//package
Section 279
//ftile_lw2 (ftile_lw2) package { import flash.display.*; public dynamic class ftile_lw2 extends MovieClip { } }//package
Section 280
//ftile_sbd (ftile_sbd) package { import flash.display.*; public dynamic class ftile_sbd extends MovieClip { } }//package
Section 281
//ftile_sbl (ftile_sbl) package { import flash.display.*; public dynamic class ftile_sbl extends MovieClip { } }//package
Section 282
//ftile_sbr (ftile_sbr) package { import flash.display.*; public dynamic class ftile_sbr extends MovieClip { } }//package
Section 283
//ftile_sbu (ftile_sbu) package { import flash.display.*; public dynamic class ftile_sbu extends MovieClip { } }//package
Section 284
//ftile_sgd (ftile_sgd) package { import flash.display.*; public dynamic class ftile_sgd extends MovieClip { } }//package
Section 285
//ftile_sgl (ftile_sgl) package { import flash.display.*; public dynamic class ftile_sgl extends MovieClip { } }//package
Section 286
//ftile_sgr (ftile_sgr) package { import flash.display.*; public dynamic class ftile_sgr extends MovieClip { } }//package
Section 287
//ftile_sgu (ftile_sgu) package { import flash.display.*; public dynamic class ftile_sgu extends MovieClip { } }//package
Section 288
//ftile_spd (ftile_spd) package { import flash.display.*; public dynamic class ftile_spd extends MovieClip { } }//package
Section 289
//ftile_spl (ftile_spl) package { import flash.display.*; public dynamic class ftile_spl extends MovieClip { } }//package
Section 290
//ftile_spr (ftile_spr) package { import flash.display.*; public dynamic class ftile_spr extends MovieClip { } }//package
Section 291
//ftile_spu (ftile_spu) package { import flash.display.*; public dynamic class ftile_spu extends MovieClip { } }//package
Section 292
//ftile_swd (ftile_swd) package { import flash.display.*; public dynamic class ftile_swd extends MovieClip { } }//package
Section 293
//ftile_swl (ftile_swl) package { import flash.display.*; public dynamic class ftile_swl extends MovieClip { } }//package
Section 294
//ftile_swr (ftile_swr) package { import flash.display.*; public dynamic class ftile_swr extends MovieClip { } }//package
Section 295
//ftile_swu (ftile_swu) package { import flash.display.*; public dynamic class ftile_swu extends MovieClip { } }//package
Section 296
//GameMusic (GameMusic) package { import flash.media.*; public dynamic class GameMusic extends Sound { } }//package
Section 297
//hangingPlatformAnchor (hangingPlatformAnchor) package { import flash.display.*; public dynamic class hangingPlatformAnchor extends Sprite { } }//package
Section 298
//hangingPlatformBase (hangingPlatformBase) package { import flash.display.*; public dynamic class hangingPlatformBase extends Sprite { } }//package
Section 299
//hangingPlatformCable (hangingPlatformCable) package { import flash.display.*; public dynamic class hangingPlatformCable extends Sprite { } }//package
Section 300
//HighScoreBoard (HighScoreBoard) package { import com.nitrome.highscore.*; public dynamic class HighScoreBoard extends HighScoreBoard { } }//package
Section 301
//largeLight (largeLight) package { import flash.display.*; public dynamic class largeLight extends MovieClip { } }//package
Section 302
//png (largeLight.png) package largeLight { import flash.display.*; public dynamic class png extends BitmapData { public function png(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package largeLight
Section 303
//laserBeam2End (laserBeam2End) package { import flash.display.*; public dynamic class laserBeam2End extends MovieClip { } }//package
Section 304
//laserBeam2Middle (laserBeam2Middle) package { import flash.display.*; public dynamic class laserBeam2Middle extends MovieClip { } }//package
Section 305
//laserBeamEnd (laserBeamEnd) package { import flash.display.*; public dynamic class laserBeamEnd extends MovieClip { } }//package
Section 306
//laserBeamMiddle (laserBeamMiddle) package { import flash.display.*; public dynamic class laserBeamMiddle extends MovieClip { } }//package
Section 307
//laserEmitterFFFT (laserEmitterFFFT) package { import flash.display.*; public dynamic class laserEmitterFFFT extends Sprite { } }//package
Section 308
//laserEmitterFFTF (laserEmitterFFTF) package { import flash.display.*; public dynamic class laserEmitterFFTF extends Sprite { } }//package
Section 309
//laserEmitterFFTT (laserEmitterFFTT) package { import flash.display.*; public dynamic class laserEmitterFFTT extends Sprite { } }//package
Section 310
//laserEmitterFTFF (laserEmitterFTFF) package { import flash.display.*; public dynamic class laserEmitterFTFF extends Sprite { } }//package
Section 311
//laserEmitterFTFT (laserEmitterFTFT) package { import flash.display.*; public dynamic class laserEmitterFTFT extends Sprite { } }//package
Section 312
//laserEmitterFTTF (laserEmitterFTTF) package { import flash.display.*; public dynamic class laserEmitterFTTF extends Sprite { } }//package
Section 313
//laserEmitterFTTT (laserEmitterFTTT) package { import flash.display.*; public dynamic class laserEmitterFTTT extends Sprite { } }//package
Section 314
//laserEmitterTFFF (laserEmitterTFFF) package { import flash.display.*; public dynamic class laserEmitterTFFF extends Sprite { } }//package
Section 315
//laserEmitterTFFT (laserEmitterTFFT) package { import flash.display.*; public dynamic class laserEmitterTFFT extends Sprite { } }//package
Section 316
//laserEmitterTFTF (laserEmitterTFTF) package { import flash.display.*; public dynamic class laserEmitterTFTF extends Sprite { } }//package
Section 317
//laserEmitterTFTT (laserEmitterTFTT) package { import flash.display.*; public dynamic class laserEmitterTFTT extends Sprite { } }//package
Section 318
//laserEmitterTTFF (laserEmitterTTFF) package { import flash.display.*; public dynamic class laserEmitterTTFF extends Sprite { } }//package
Section 319
//laserEmitterTTFT (laserEmitterTTFT) package { import flash.display.*; public dynamic class laserEmitterTTFT extends Sprite { } }//package
Section 320
//laserEmitterTTTF (laserEmitterTTTF) package { import flash.display.*; public dynamic class laserEmitterTTTF extends Sprite { } }//package
Section 321
//laserEmitterTTTT (laserEmitterTTTT) package { import flash.display.*; public dynamic class laserEmitterTTTT extends Sprite { } }//package
Section 322
//LetterButton (LetterButton) package { import com.nitrome.highscore.*; public dynamic class LetterButton extends LetterButton { public function LetterButton(){ addFrameScript(0, frame1);  (); } function frame1(){ stop(); } function  (){ try { _letter["componentInspectorSetting"] = true; } catch(e:Error) { }; _letter.align = "center"; _letter.align_vert = "center"; _letter.color = 0xFFFFFF; _letter.id = "None"; _letter.line_spacing = 18; _letter.text = "a"; _letter.tracking = 0; try { _letter["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package
Section 323
//MenuMusic (MenuMusic) package { import flash.media.*; public dynamic class MenuMusic extends Sound { } }//package
Section 324
//midlayer (midlayer) package { import flash.display.*; public dynamic class midlayer extends MovieClip { } }//package
Section 325
//MochiAd (MochiAd) package { import flash.display.*; import flash.events.*; import flash.utils.*; import flash.net.*; import flash.system.*; public class MochiAd { public static function getVersion():String{ return ("2.7"); } public static function showClickAwayAd(_arg1:Object):void{ var DEFAULTS:Object; var clip:Object; var ad_timeout:Number; var mc:MovieClip; var wh:Array; var w:Number; var h:Number; var chk:MovieClip; var sendHostProgress:Boolean; var options = _arg1; DEFAULTS = {ad_timeout:2000, regpt:"o", method:"showClickAwayAd", res:"300x250", no_bg:true, ad_started:function ():void{ }, ad_finished:function ():void{ }, ad_loaded:function (_arg1:Number, _arg2:Number):void{ }, ad_failed:function ():void{ trace("[MochiAd] Couldn't load an ad, make sure your game's local security sandbox is configured for Access Network Only and that you are not using ad blocking software"); }, ad_skipped:function ():void{ }}; options = MochiAd._parseOptions(options, DEFAULTS); clip = options.clip; ad_timeout = options.ad_timeout; delete options.ad_timeout; if (!MochiAd.load(options)){ options.ad_failed(); options.ad_finished(); return; }; options.ad_started(); mc = clip._mochiad; mc["onUnload"] = function ():void{ MochiAd._cleanup(mc); options.ad_finished(); }; wh = MochiAd._getRes(options, clip); w = wh[0]; h = wh[1]; mc.x = (w * 0.5); mc.y = (h * 0.5); chk = createEmptyMovieClip(mc, "_mochiad_wait", 3); chk.ad_timeout = ad_timeout; chk.started = getTimer(); chk.showing = false; mc.unloadAd = function ():void{ MochiAd.unload(clip); }; mc.adLoaded = options.ad_loaded; mc.adSkipped = options.ad_skipped; mc.rpc = function (_arg1:Number, _arg2:Object):void{ MochiAd.rpc(clip, _arg1, _arg2); }; sendHostProgress = false; mc.regContLC = function (_arg1:String):void{ mc._containerLCName = _arg1; }; chk["onEnterFrame"] = function ():void{ var _local1:Object; var _local2:Number; var _local3:Boolean; var _local4:Number; if (!this.parent){ delete this.onEnterFrame; return; }; _local1 = this.parent._mochiad_ctr; _local2 = (getTimer() - this.started); _local3 = false; if (!chk.showing){ _local4 = this.parent._mochiad_ctr.contentLoaderInfo.bytesTotal; if (_local4 > 0){ chk.showing = true; _local3 = true; chk.started = getTimer(); } else { if (_local2 > chk.ad_timeout){ options.ad_failed(); _local3 = true; }; }; }; if (this.root == null){ _local3 = true; }; if (_local3){ delete this.onEnterFrame; }; }; doOnEnterFrame(chk); } public static function _isNetworkAvailable():Boolean{ return (!((Security.sandboxType == "localWithFile"))); } public static function _allowDomains(_arg1:String):String{ var _local2:String; _local2 = _arg1.split("/")[2].split(":")[0]; Security.allowDomain("*"); Security.allowDomain(_local2); Security.allowInsecureDomain("*"); Security.allowInsecureDomain(_local2); return (_local2); } public static function unload(_arg1:Object):Boolean{ if (((_arg1.clip) && (_arg1.clip._mochiad))){ _arg1 = _arg1.clip; }; if (_arg1.origFrameRate != undefined){ _arg1.stage.frameRate = _arg1.origFrameRate; }; if (!_arg1._mochiad){ return (false); }; if (_arg1._mochiad._containerLCName != undefined){ _arg1._mochiad.lc.send(_arg1._mochiad._containerLCName, "notify", {id:"unload"}); }; if (_arg1._mochiad.onUnload){ _arg1._mochiad.onUnload(); }; delete _arg1._mochiad_loaded; delete _arg1._mochiad; return (true); } public static function showInterLevelAd(_arg1:Object):void{ var DEFAULTS:Object; var clip:Object; var ad_msec:Number; var ad_timeout:Number; var fadeout_time:Number; var mc:MovieClip; var wh:Array; var w:Number; var h:Number; var chk:MovieClip; var options = _arg1; DEFAULTS = {ad_timeout:2000, fadeout_time:250, regpt:"o", method:"showTimedAd", ad_started:function ():void{ if ((this.clip is MovieClip)){ this.clip.stop(); } else { throw (new Error("MochiAd.showInterLevelAd requires a clip that is a MovieClip or is an instance of a class that extends MovieClip. If your clip is a Sprite, then you must provide custom ad_started and ad_finished handlers.")); }; }, ad_finished:function ():void{ if ((this.clip is MovieClip)){ this.clip.play(); } else { throw (new Error("MochiAd.showInterLevelAd requires a clip that is a MovieClip or is an instance of a class that extends MovieClip. If your clip is a Sprite, then you must provide custom ad_started and ad_finished handlers.")); }; }, ad_loaded:function (_arg1:Number, _arg2:Number):void{ }, ad_failed:function ():void{ trace("[MochiAd] Couldn't load an ad, make sure your game's local security sandbox is configured for Access Network Only and that you are not using ad blocking software"); }, ad_skipped:function ():void{ }}; options = MochiAd._parseOptions(options, DEFAULTS); clip = options.clip; ad_msec = 11000; ad_timeout = options.ad_timeout; delete options.ad_timeout; fadeout_time = options.fadeout_time; delete options.fadeout_time; if (!MochiAd.load(options)){ options.ad_failed(); options.ad_finished(); return; }; options.ad_started(); mc = clip._mochiad; mc["onUnload"] = function ():void{ MochiAd._cleanup(mc); options.ad_finished(); }; wh = MochiAd._getRes(options, clip); w = wh[0]; h = wh[1]; mc.x = (w * 0.5); mc.y = (h * 0.5); chk = createEmptyMovieClip(mc, "_mochiad_wait", 3); chk.ad_msec = ad_msec; chk.ad_timeout = ad_timeout; chk.started = getTimer(); chk.showing = false; chk.fadeout_time = fadeout_time; chk.fadeFunction = function ():void{ var _local1:Number; if (!this.parent){ delete this.onEnterFrame; delete this.fadeFunction; return; }; _local1 = (100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time))); if (_local1 > 0){ this.parent.alpha = (_local1 * 0.01); } else { MochiAd.unload(clip); delete this["onEnterFrame"]; }; }; mc.unloadAd = function ():void{ MochiAd.unload(clip); }; mc.adLoaded = options.ad_loaded; mc.adSkipped = options.ad_skipped; mc.adjustProgress = function (_arg1:Number):void{ var _local2:Object; _local2 = mc._mochiad_wait; _local2.server_control = true; _local2.showing = true; _local2.started = getTimer(); _local2.ad_msec = (_arg1 - 250); }; mc.rpc = function (_arg1:Number, _arg2:Object):void{ MochiAd.rpc(clip, _arg1, _arg2); }; chk["onEnterFrame"] = function ():void{ var _local1:Object; var _local2:Number; var _local3:Boolean; var _local4:Number; if (!this.parent){ delete this.onEnterFrame; delete this.fadeFunction; return; }; _local1 = this.parent._mochiad_ctr; _local2 = (getTimer() - this.started); _local3 = false; if (!chk.showing){ _local4 = this.parent._mochiad_ctr.contentLoaderInfo.bytesTotal; if (_local4 > 0){ chk.showing = true; chk.started = getTimer(); MochiAd.adShowing(clip); } else { if (_local2 > chk.ad_timeout){ options.ad_failed(); _local3 = true; }; }; }; if (_local2 > chk.ad_msec){ _local3 = true; }; if (_local3){ if (this.server_control){ delete this.onEnterFrame; } else { this.fadeout_start = getTimer(); this.onEnterFrame = this.fadeFunction; }; }; }; doOnEnterFrame(chk); } public static function _parseOptions(_arg1:Object, _arg2:Object):Object{ var _local3:Object; var _local4:String; var _local5:Array; var _local6:Number; var _local7:Array; _local3 = {}; for (_local4 in _arg2) { _local3[_local4] = _arg2[_local4]; }; if (_arg1){ for (_local4 in _arg1) { _local3[_local4] = _arg1[_local4]; }; }; if (_local3.clip == undefined){ throw (new Error("MochiAd is missing the 'clip' parameter. This should be a MovieClip, Sprite or an instance of a class that extends MovieClip or Sprite.")); }; _arg1 = _local3.clip.loaderInfo.parameters.mochiad_options; if (_arg1){ _local5 = _arg1.split("&"); _local6 = 0; while (_local6 < _local5.length) { _local7 = _local5[_local6].split("="); _local3[unescape(_local7[0])] = unescape(_local7[1]); _local6++; }; }; if (_local3.id == "test"){ trace("[MochiAd] WARNING: Using the MochiAds test identifier, make sure to use the code from your dashboard, not this example!"); }; return (_local3); } public static function _cleanup(_arg1:Object):void{ var idx:Number; var k:String; var lc:LocalConnection; var f:Function; var mc = _arg1; if (("lc" in mc)){ lc = mc.lc; f = function ():void{ try { lc.client = null; lc.close(); } catch(e:Error) { }; }; setTimeout(f, 0); }; idx = DisplayObjectContainer(mc).numChildren; while (idx > 0) { idx = (idx - 1); DisplayObjectContainer(mc).removeChildAt(idx); }; for (k in mc) { delete mc[k]; }; } public static function load(_arg1:Object):MovieClip{ var DEFAULTS:Object; var clip:Object; var depth:Number; var mc:MovieClip; var wh:Array; var lv:URLVariables; var k:String; var server:String; var hostname:String; var lc:LocalConnection; var name:String; var loader:Loader; var g:Function; var req:URLRequest; var v:Object; var options = _arg1; DEFAULTS = {server:"http://x.mochiads.com/srv/1/", method:"load", depth:10333, id:"_UNKNOWN_"}; options = MochiAd._parseOptions(options, DEFAULTS); options.swfv = 9; options.mav = MochiAd.getVersion(); clip = options.clip; if (!MochiAd._isNetworkAvailable()){ return (null); }; try { if (clip._mochiad_loaded){ return (null); }; } catch(e:Error) { throw (new Error("MochiAd requires a clip that is an instance of a dynamic class. If your class extends Sprite or MovieClip, you must make it dynamic.")); }; depth = options.depth; delete options.depth; mc = createEmptyMovieClip(clip, "_mochiad", depth); wh = MochiAd._getRes(options, clip); options.res = ((wh[0] + "x") + wh[1]); options.server = (options.server + options.id); delete options.id; clip._mochiad_loaded = true; if (clip.loaderInfo.loaderURL.indexOf("http") == 0){ options.as3_swf = clip.loaderInfo.loaderURL; }; lv = new URLVariables(); for (k in options) { v = options[k]; if (!(v is Function)){ lv[k] = v; }; }; server = lv.server; delete lv.server; hostname = _allowDomains(server); lc = new LocalConnection(); lc.client = mc; name = ["", Math.floor(new Date().getTime()), Math.floor((Math.random() * 999999))].join("_"); lc.allowDomain("*", "localhost"); lc.allowInsecureDomain("*", "localhost"); lc.connect(name); mc.lc = lc; mc.lcName = name; lv.lc = name; lv.st = getTimer(); loader = new Loader(); g = function (_arg1:Object):void{ _arg1.target.removeEventListener(_arg1.type, arguments.callee); MochiAd.unload(clip); }; loader.contentLoaderInfo.addEventListener(Event.UNLOAD, g); req = new URLRequest(((server + ".swf?cacheBust=") + new Date().getTime())); req.contentType = "application/x-www-form-urlencoded"; req.method = URLRequestMethod.POST; req.data = lv; loader.load(req); mc.addChild(loader); mc._mochiad_ctr = loader; return (mc); } public static function runMethod(_arg1:Object, _arg2:String, _arg3:Array):Object{ var _local4:Array; var _local5:Number; _local4 = _arg2.split("."); _local5 = 0; while (_local5 < (_local4.length - 1)) { if ((((_arg1[_local4[_local5]] == undefined)) || ((_arg1[_local4[_local5]] == null)))){ return (undefined); }; _arg1 = _arg1[_local4[_local5]]; _local5++; }; if (typeof(_arg1[_local4[_local5]]) == "function"){ return (_arg1[_local4[_local5]].apply(_arg1, _arg3)); }; return (undefined); } public static function createEmptyMovieClip(_arg1:Object, _arg2:String, _arg3:Number):MovieClip{ var _local4:MovieClip; _local4 = new MovieClip(); if (((false) && (_arg3))){ _arg1.addChildAt(_local4, _arg3); } else { _arg1.addChild(_local4); }; _arg1[_arg2] = _local4; _local4["_name"] = _arg2; return (_local4); } public static function _getRes(_arg1:Object, _arg2:Object):Array{ var _local3:Object; var _local4:Number; var _local5:Number; var _local6:Array; _local3 = _arg2.getBounds(_arg2.root); _local4 = 0; _local5 = 0; if (typeof(_arg1.res) != "undefined"){ _local6 = _arg1.res.split("x"); _local4 = parseFloat(_local6[0]); _local5 = parseFloat(_local6[1]); } else { _local4 = (_local3.xMax - _local3.xMin); _local5 = (_local3.yMax - _local3.yMin); }; if ((((_local4 == 0)) || ((_local5 == 0)))){ _local4 = _arg2.stage.stageWidth; _local5 = _arg2.stage.stageHeight; }; return ([_local4, _local5]); } public static function adShowing(_arg1:Object):void{ _arg1.origFrameRate = _arg1.stage.frameRate; _arg1.stage.frameRate = 30; } public static function getValue(_arg1:Object, _arg2:String):Object{ var _local3:Array; var _local4:Number; _local3 = _arg2.split("."); _local4 = 0; while (_local4 < (_local3.length - 1)) { if ((((_arg1[_local3[_local4]] == undefined)) || ((_arg1[_local3[_local4]] == null)))){ return (undefined); }; _arg1 = _arg1[_local3[_local4]]; _local4++; }; return (_arg1[_local3[_local4]]); } public static function rpc(_arg1:Object, _arg2:Number, _arg3:Object):void{ var _local4:Object; var _local5:Object; switch (_arg3.id){ case "setValue": MochiAd.setValue(_arg1, _arg3.objectName, _arg3.value); break; case "getValue": _local4 = MochiAd.getValue(_arg1, _arg3.objectName); _arg1._mochiad.lc.send(_arg1._mochiad._containerLCName, "rpcResult", _arg2, _local4); break; case "runMethod": _local5 = MochiAd.runMethod(_arg1, _arg3.method, _arg3.args); _arg1._mochiad.lc.send(_arg1._mochiad._containerLCName, "rpcResult", _arg2, _local5); break; default: trace(("[mochiads rpc] unknown rpc id: " + _arg3.id)); }; } public static function setValue(_arg1:Object, _arg2:String, _arg3:Object):void{ var _local4:Array; var _local5:Number; _local4 = _arg2.split("."); _local5 = 0; while (_local5 < (_local4.length - 1)) { if ((((_arg1[_local4[_local5]] == undefined)) || ((_arg1[_local4[_local5]] == null)))){ return; }; _arg1 = _arg1[_local4[_local5]]; _local5++; }; _arg1[_local4[_local5]] = _arg3; } public static function showPreGameAd(_arg1:Object):void{ var DEFAULTS:Object; var clip:Object; var ad_msec:Number; var ad_timeout:Number; var fadeout_time:Number; var mc:MovieClip; var wh:Array; var w:Number; var h:Number; var chk:MovieClip; var bar:MovieClip; var bar_color:Number; var bar_background:Number; var bar_outline:Number; var backing_mc:MovieClip; var backing:Object; var inside_mc:MovieClip; var inside:Object; var outline_mc:MovieClip; var outline:Object; var complete:Boolean; var unloaded:Boolean; var f:Function; var sendHostProgress:Boolean; var fn:Function; var r:MovieClip; var options = _arg1; DEFAULTS = {ad_timeout:3000, fadeout_time:250, regpt:"o", method:"showPreloaderAd", color:0xFF8A00, background:16777161, outline:13994812, no_progress_bar:false, ad_started:function ():void{ if ((this.clip is MovieClip)){ this.clip.stop(); } else { throw (new Error("MochiAd.showPreGameAd requires a clip that is a MovieClip or is an instance of a class that extends MovieClip. If your clip is a Sprite, then you must provide custom ad_started and ad_finished handlers.")); }; }, ad_finished:function ():void{ if ((this.clip is MovieClip)){ this.clip.play(); } else { throw (new Error("MochiAd.showPreGameAd requires a clip that is a MovieClip or is an instance of a class that extends MovieClip. If your clip is a Sprite, then you must provide custom ad_started and ad_finished handlers.")); }; }, ad_loaded:function (_arg1:Number, _arg2:Number):void{ }, ad_failed:function ():void{ trace("[MochiAd] Couldn't load an ad, make sure your game's local security sandbox is configured for Access Network Only and that you are not using ad blocking software"); }, ad_skipped:function ():void{ }, ad_progress:function (_arg1:Number):void{ }}; options = MochiAd._parseOptions(options, DEFAULTS); if ("c862232051e0a94e1c3609b3916ddb17".substr(0) == "dfeada81ac97cde83665f81c12da7def"){ options.ad_started(); fn = function ():void{ options.ad_finished(); }; setTimeout(fn, 100); return; }; clip = options.clip; ad_msec = 11000; ad_timeout = options.ad_timeout; delete options.ad_timeout; fadeout_time = options.fadeout_time; delete options.fadeout_time; if (!MochiAd.load(options)){ options.ad_failed(); options.ad_finished(); return; }; options.ad_started(); mc = clip._mochiad; mc["onUnload"] = function ():void{ var fn:Function; MochiAd._cleanup(mc); fn = function ():void{ options.ad_finished(); }; setTimeout(fn, 100); }; wh = MochiAd._getRes(options, clip); w = wh[0]; h = wh[1]; mc.x = (w * 0.5); mc.y = (h * 0.5); chk = createEmptyMovieClip(mc, "_mochiad_wait", 3); chk.x = (w * -0.5); chk.y = (h * -0.5); bar = createEmptyMovieClip(chk, "_mochiad_bar", 4); if (options.no_progress_bar){ bar.visible = false; delete options.no_progress_bar; } else { bar.x = 10; bar.y = (h - 20); }; bar_color = options.color; delete options.color; bar_background = options.background; delete options.background; bar_outline = options.outline; delete options.outline; backing_mc = createEmptyMovieClip(bar, "_outline", 1); backing = backing_mc.graphics; backing.beginFill(bar_background); backing.moveTo(0, 0); backing.lineTo((w - 20), 0); backing.lineTo((w - 20), 10); backing.lineTo(0, 10); backing.lineTo(0, 0); backing.endFill(); inside_mc = createEmptyMovieClip(bar, "_inside", 2); inside = inside_mc.graphics; inside.beginFill(bar_color); inside.moveTo(0, 0); inside.lineTo((w - 20), 0); inside.lineTo((w - 20), 10); inside.lineTo(0, 10); inside.lineTo(0, 0); inside.endFill(); inside_mc.scaleX = 0; outline_mc = createEmptyMovieClip(bar, "_outline", 3); outline = outline_mc.graphics; outline.lineStyle(0, bar_outline, 100); outline.moveTo(0, 0); outline.lineTo((w - 20), 0); outline.lineTo((w - 20), 10); outline.lineTo(0, 10); outline.lineTo(0, 0); chk.ad_msec = ad_msec; chk.ad_timeout = ad_timeout; chk.started = getTimer(); chk.showing = false; chk.last_pcnt = 0; chk.fadeout_time = fadeout_time; chk.fadeFunction = function ():void{ var _local1:Number; _local1 = (100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time))); if (_local1 > 0){ this.parent.alpha = (_local1 * 0.01); } else { MochiAd.unload(clip); delete this["onEnterFrame"]; }; }; complete = false; unloaded = false; f = function (_arg1:Event):void{ _arg1.target.removeEventListener(_arg1.type, arguments.callee); complete = true; if (unloaded){ MochiAd.unload(clip); }; }; clip.loaderInfo.addEventListener(Event.COMPLETE, f); if ((clip.root is MovieClip)){ r = (clip.root as MovieClip); if (r.framesLoaded >= r.totalFrames){ complete = true; }; }; mc.unloadAd = function ():void{ unloaded = true; if (complete){ MochiAd.unload(clip); }; }; mc.adLoaded = options.ad_loaded; mc.adSkipped = options.ad_skipped; mc.adjustProgress = function (_arg1:Number):void{ var _local2:Object; _local2 = mc._mochiad_wait; _local2.server_control = true; _local2.showing = true; _local2.started = getTimer(); _local2.ad_msec = _arg1; }; mc.rpc = function (_arg1:Number, _arg2:Object):void{ MochiAd.rpc(clip, _arg1, _arg2); }; mc.rpcTestFn = function (_arg1:String):Object{ trace(("[MOCHIAD rpcTestFn] " + _arg1)); return (_arg1); }; mc.regContLC = function (_arg1:String):void{ mc._containerLCName = _arg1; }; sendHostProgress = false; mc.sendHostLoadProgress = function (_arg1:String):void{ sendHostProgress = true; }; chk["onEnterFrame"] = function ():void{ var _local1:Object; var _local2:Object; var _local3:Number; var _local4:Boolean; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Object; var _local10:Number; var _local11:Number; if (((!(this.parent)) || (!(this.parent.parent)))){ delete this["onEnterFrame"]; return; }; _local1 = this.parent.parent.root; _local2 = this.parent._mochiad_ctr; _local3 = (getTimer() - this.started); _local4 = false; _local5 = _local1.loaderInfo.bytesTotal; _local6 = _local1.loaderInfo.bytesLoaded; if (complete){ _local6 = Math.max(1, _local6); _local5 = _local6; }; _local7 = ((100 * _local6) / _local5); _local8 = ((100 * _local3) / chk.ad_msec); _local9 = this._mochiad_bar._inside; _local10 = Math.min(100, Math.min(((_local7) || (0)), _local8)); _local10 = Math.max(this.last_pcnt, _local10); this.last_pcnt = _local10; _local9.scaleX = (_local10 * 0.01); options.ad_progress(_local10); if (sendHostProgress){ clip._mochiad.lc.send(clip._mochiad._containerLCName, "notify", {id:"hostLoadPcnt", pcnt:_local7}); if (_local7 == 100){ sendHostProgress = false; }; }; if (!chk.showing){ _local11 = this.parent._mochiad_ctr.contentLoaderInfo.bytesTotal; if (_local11 > 0){ chk.showing = true; chk.started = getTimer(); MochiAd.adShowing(clip); } else { if ((((_local3 > chk.ad_timeout)) && ((_local7 == 100)))){ options.ad_failed(); _local4 = true; }; }; }; if (_local3 > chk.ad_msec){ _local4 = true; }; if (((complete) && (_local4))){ if (this.server_control){ delete this.onEnterFrame; } else { this.fadeout_start = getTimer(); this.onEnterFrame = chk.fadeFunction; }; }; }; doOnEnterFrame(chk); } public static function showPreloaderAd(_arg1:Object):void{ trace("[MochiAd] DEPRECATED: showPreloaderAd was renamed to showPreGameAd in 2.0"); MochiAd.showPreGameAd(_arg1); } public static function showTimedAd(_arg1:Object):void{ trace("[MochiAd] DEPRECATED: showTimedAd was renamed to showInterLevelAd in 2.0"); MochiAd.showInterLevelAd(_arg1); } public static function doOnEnterFrame(_arg1:MovieClip):void{ var f:Function; var mc = _arg1; f = function (_arg1:Object):void{ if (((("onEnterFrame" in mc)) && (mc.onEnterFrame))){ mc.onEnterFrame(); } else { _arg1.target.removeEventListener(_arg1.type, arguments.callee); }; }; mc.addEventListener(Event.ENTER_FRAME, f); } } }//package
Section 326
//NextArrow (NextArrow) package { import com.nitrome.highscore.*; public dynamic class NextArrow extends ArrowButton { public var __id18_:FlipsideFont; public function NextArrow(){ addFrameScript(0, frame1);  (); } function frame1(){ stop(); } function  (){ try { __id18_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id18_.align = "center"; __id18_.align_vert = "center"; __id18_.color = 0xFFFFFF; __id18_.id = "None"; __id18_.line_spacing = 18; __id18_.text = "next"; __id18_.tracking = 0; try { __id18_["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package
Section 327
//NitromeGame (NitromeGame) package { import flash.display.*; import com.nitrome.game.*; import com.nitrome.util.*; import flash.net.*; public class NitromeGame { public static const NITROME:uint = 0; private static const DOMAINS:Array = new Array("", "", ""); public static const CANDYSTAND:uint = 2; private static const NITROME_URL:Array = new Array("", "", "", "", "", "", "", ""); private static const CANDYSTAND_URL:Array = new Array("", ""); public static const SUBMIT_URL:String = ""; public static const MINICLIP:uint = 1; private static const MINICLIP_URL:Array = new Array("", ""); public static const RETRIEVE_URL:String = ""; private static var _level_id:String; private static var _leading_zero:Boolean = false; private static var ar_1:Array = new Array("a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "/", ":", ".", "_", "1", "2", "3", "4", "5", "6", "7", "8", "9", "0", "-"); private static var ar_2:Array = new Array("_", "7", "c", "2", "l", "r", "a", "h", "i", ".", "g", "m", "v", "1", "b", "q", "3", "z", "w", "o", "u", "t", "s", "0", "d", "f", "8", "n", "5", "k", ":", "j", "p", "/", "4", "6", "e", "9", "y", "x", "-"); private static var adj:Number = 1.75; private static var _total_levels:int; private static var _url:String; public static var global:Object = new Object(); public static var timeline:MovieClip; private static var _game_id:String; private static var ff:Array = new Array(); private static var ar_key:String = "ctdngevfaqki8_lb:psoj90ux127hm/4w5y3rz.6-"; public static var transition:Transition; private static var _time_based:Boolean = false; public static var sound_manager:SoundManager; private static var _selected_level:int = 1; public static function setLastSavedScore(_arg1:int, _arg2:int=1):void{ var _local3:String; var _local4:SharedObject; _local3 = (("so_" + game_id) + String(_arg2)); _local4 = SharedObject.getLocal(_local3); _local4.data.last_saved_score = _arg1; _local4.flush(); _local4.close(); } public static function lockAllLevels(_arg1:int=1):void{ var _local2:String; var _local3:SharedObject; var _local4:Array; var _local5:int; _local2 = (("so_" + game_id) + _arg1); _local3 = SharedObject.getLocal(_local2); _local4 = new Array(total_levels); _local5 = 0; while (_local5 < _local4.length) { _local4[_local5] = 0; _local5++; }; _local4[0] = 1; _local3.data.levels_unlocked = _local4; _local3.flush(); _local3.close(); } public static function get game_id():String{ return (_game_id); } public static function set leading_zero(_arg1:Boolean):void{ _leading_zero = _arg1; } public static function set sfx(_arg1:Boolean):void{ var _local2:String; var _local3:SharedObject; _local2 = ("so_" + game_id); _local3 = SharedObject.getLocal(_local2); _local3.data.sfxon = _arg1; _local3.flush(); _local3.close(); } public static function unlockAllLevels(_arg1:int=1):void{ var _local2:String; var _local3:SharedObject; var _local4:Array; var _local5:int; _local2 = (("so_" + game_id) + _arg1); _local3 = SharedObject.getLocal(_local2); _local4 = new Array(total_levels); _local5 = 0; while (_local5 < _local4.length) { _local4[_local5] = 1; _local5++; }; _local3.data.levels_unlocked = _local4; _local3.flush(); _local3.close(); } private static function decryptString(_arg1:String, _arg2:String):String{ var _local3:String; var _local4:Number; var _local5:int; var _local6:*; var _local7:int; var _local8:int; var _local9:Number; var _local10:int; var _local11:String; adj = 1.75; ff = convertKey(_arg1); _local3 = ""; _local4 = 0; _local5 = 0; while (_local5 < _arg2.length) { _local6 = _arg2.substr(_local5, 1); _local8 = 0; while (_local8 < ar_2.length) { if (ar_2[_local8] == _local6){ _local7 = _local8; break; }; _local8++; }; adj = applyFudgeFactor(); _local9 = (_local4 + adj); _local10 = (_local7 - Math.round(_local9)); _local10 = checkRange(_local10); _local4 = (_local9 + _local7); _local11 = ar_1[_local10]; _local3 = (_local3 + _local11); _local5++; }; return (_local3); } public static function init(_arg1:MovieClip, _arg2:String, _arg3:String, _arg4:Number):void{ timeline = _arg1; _url = _arg1.loaderInfo.url; _level_id = _arg3; _total_levels = _arg4; _game_id = _arg2.toLowerCase(); } public static function displayNextButton(_arg1:String):Boolean{ var _local2:Array; var _local3:String; _local2 = _arg1.split("|"); _local3 = _local2[10]; if (_local3 == "1"){ return (true); }; if (_local3 == "0"){ return (false); }; return (false); } public static function set time_based(_arg1:Boolean):void{ _time_based = _arg1; } public static function get sfx():Boolean{ var _local1:String; var _local2:SharedObject; var _local3:Boolean; var _local4:*; _local1 = ("so_" + game_id); _local2 = SharedObject.getLocal(_local1); _local3 = false; for each (_local4 in _local2.data) { _local3 = true; break; }; if (_local3){ if (_local2.data.sfxon != undefined){ return (_local2.data.sfxon); }; return (true); //unresolved jump }; return (true); } public static function getScoreData(_arg1:int, _arg2:String):String{ var _local3:String; var _local4:String; _local3 = ((((String(_arg1) + "_") + game_id) + "_") + _arg2.toLowerCase()); trace(("encrypting: " + _local3)); _local4 = encryptString(ar_key, _local3); trace(("encrypted: " + _local4)); trace(("decrypted: " + decryptString(ar_key, _local4))); return (_local4); } public static function getTotalScore(_arg1:int=1):int{ var _local2:String; var _local3:SharedObject; var _local4:Boolean; var _local5:*; var _local6:int; var _local7:int; _local2 = (("so_" + game_id) + String(_arg1)); _local3 = SharedObject.getLocal(_local2); _local4 = false; for each (_local5 in _local3.data) { _local4 = true; break; }; if (!_local4){ return (0); }; if (_local3.data.level_scores == undefined){ return (0); }; _local6 = 0; _local7 = 0; while (_local7 < _local3.data.level_scores.length) { if (((!((_local3.data.level_scores[_local7] == undefined))) && (!(isNaN(_local3.data.level_scores[_local7]))))){ _local6 = (_local6 + _local3.data.level_scores[_local7]); }; _local7++; }; return (_local6); } private static function convertKey(_arg1:String):Array{ var _local2:Array; var _local3:int; var _local4:int; var _local5:String; var _local6:int; var _local7:int; _local2 = new Array(); _local2.push(_arg1.length); _local3 = 0; _local4 = 0; while (_local4 < _arg1.length) { _local5 = _arg1.substr(_local4, 1); _local7 = 0; while (_local7 < ar_1.length) { if (ar_1[_local7] == _local5){ _local6 = _local7; break; }; _local7++; }; _local2.push(_local6); _local3 = (_local3 + _local6); _local4++; }; _local2.push(_local3); return (_local2); } private static function checkRange(_arg1:int):int{ var _local2:int; _arg1 = Math.round(_arg1); _local2 = ar_1.length; while (_arg1 >= _local2) { _arg1 = (_arg1 - _local2); }; while (_arg1 < 0) { _arg1 = (_arg1 + _local2); }; return (_arg1); } public static function getSwfPath():String{ var _local1:String; var _local2:int; _local1 = url; _local2 = _local1.length; while (_local2 >= 0) { if (_local1.charAt(_local2) == "/"){ _local1 = _local1.slice(0, (_local2 + 1)); break; }; _local2--; }; return (_local1); } public static function get music():Boolean{ var _local1:String; var _local2:SharedObject; var _local3:Boolean; var _local4:*; _local1 = ("so_" + game_id); _local2 = SharedObject.getLocal(_local1); _local3 = false; for each (_local4 in _local2.data) { _local3 = true; break; }; if (_local3){ if (_local2.data.musicon != undefined){ return (_local2.data.musicon); }; return (true); //unresolved jump }; return (true); } public static function get level_id():String{ return (_level_id); } public static function setLevelUnlocked(_arg1:int, _arg2:int=1):void{ var _local3:String; var _local4:SharedObject; var _local5:Boolean; var _local6:*; var _local7:Array; var _local8:int; _local3 = (("so_" + game_id) + _arg2); _local4 = SharedObject.getLocal(_local3); _local5 = false; for each (_local6 in _local4.data) { _local5 = true; break; }; _local7 = new Array(total_levels); if (!_local5){ _local8 = 0; while (_local8 < _local7.length) { _local7[_local8] = 0; _local8++; }; _local7[0] = 1; } else { if (_local4.data.levels_unlocked == undefined){ _local8 = 0; while (_local8 < _local7.length) { _local7[_local8] = 0; _local8++; }; _local7[0] = 1; } else { _local7 = _local4.data.levels_unlocked; }; }; _local7[(_arg1 - 1)] = 1; _local4.data.levels_unlocked = _local7; _local4.flush(); _local4.close(); } public static function get total_levels():int{ return (_total_levels); } public static function isAtURL(... _args):Boolean{ var _local2:int; var _local3:Array; var _local4:Boolean; var _local5:int; var _local6:String; var _local7:String; if (_args.length == 0){ _args.push(NITROME); }; _local2 = 0; while (_local2 < _args.length) { if (_args[_local2] == NITROME){ _local3 = NITROME_URL; } else { if (_args[_local2] == MINICLIP){ _local3 = MINICLIP_URL; } else { if (_args[_local2] == CANDYSTAND){ _local3 = CANDYSTAND_URL; }; }; }; _local4 = false; _local5 = 0; while (_local5 < _local3.length) { _local6 = _local3[_local5]; trace(("testing: " + _local6)); if (url.substr(0, _local6.length) == _local6){ _local4 = true; break; }; _local5++; }; _local5 = 1; while (_local5 <= 30) { _local7 = DOMAINS[_args[_local2]]; trace(("tesing: " + _local7)); if (url.substr(_local5, _local7.length) == _local7){ _local4 = true; }; _local5++; }; return (_local4); _local2++; }; return (false); } private static function encryptString(_arg1:String, _arg2:String):String{ var _local3:String; var _local4:Number; var _local5:int; var _local6:String; var _local7:int; var _local8:int; var _local9:Number; var _local10:int; var _local11:String; adj = 1.75; ff = convertKey(_arg1); _local3 = ""; _local4 = 0; _local5 = 0; while (_local5 < _arg2.length) { _local6 = _arg2.substr(_local5, 1); _local8 = 0; while (_local8 < ar_1.length) { if (ar_1[_local8] == _local6){ _local7 = _local8; break; }; _local8++; }; adj = applyFudgeFactor(); _local9 = (_local4 + adj); _local10 = (Math.round(_local9) + _local7); _local10 = checkRange(_local10); _local4 = (_local9 + _local10); _local11 = ar_2[_local10]; _local3 = (_local3 + _local11); _local5++; }; return (_local3); } public static function set selected_level(_arg1:int):void{ _selected_level = _arg1; } public static function get leading_zero():Boolean{ return (_leading_zero); } public static function set music(_arg1:Boolean):void{ var _local2:String; var _local3:SharedObject; _local2 = ("so_" + game_id); _local3 = SharedObject.getLocal(_local2); _local3.data.musicon = _arg1; _local3.flush(); _local3.close(); } public static function get time_based():Boolean{ return (_time_based); } public static function getLevelScore(_arg1:int, _arg2:int=1):int{ var _local3:String; var _local4:SharedObject; var _local5:Boolean; var _local6:*; _local3 = (("so_" + game_id) + String(_arg2)); _local4 = SharedObject.getLocal(_local3); _local5 = false; for each (_local6 in _local4.data) { _local5 = true; break; }; if (!_local5){ return (0); }; if (_local4.data.level_scores == undefined){ return (0); }; if (_local4.data.level_scores[_arg1] == undefined){ return (0); }; return (_local4.data.level_scores[_arg1]); } public static function getLevelUnlocked(_arg1:int, _arg2:int=1):Boolean{ var _local3:String; var _local4:SharedObject; var _local5:Boolean; var _local6:*; var _local7:Array; var _local8:int; _local3 = (("so_" + game_id) + _arg2); _local4 = SharedObject.getLocal(_local3); _local5 = false; for each (_local6 in _local4.data) { _local5 = true; break; }; _local7 = new Array(total_levels); if (!_local5){ _local8 = 0; while (_local8 < _local7.length) { _local7[_local8] = 0; _local8++; }; _local7[0] = 1; _local4.data.levels_unlocked = _local7; _local4.flush(); _local4.close(); if (_arg1 == 1){ return (true); }; return (true); }; if (_local4.data.levels_unlocked == undefined){ _local8 = 0; while (_local8 < _local7.length) { _local7[_local8] = 0; _local8++; }; _local7[0] = 1; _local4.data.levels_unlocked = _local7; _local4.flush(); _local4.close(); if (_arg1 == 1){ return (true); }; return (true); }; if (_local4.data.levels_unlocked[(_arg1 - 1)] == 1){ return (true); }; if (_local4.data.levels_unlocked[(_arg1 - 1)] == 0){ return (true); }; return (true); } public static function displayPreviousButton(_arg1:String):Boolean{ var _local2:Array; var _local3:String; _local2 = _arg1.split("|"); _local3 = _local2[11]; if (_local3 == "1"){ return (true); }; if (_local3 == "0"){ return (false); }; return (false); } public static function get selected_level():int{ return (_selected_level); } public static function setLevelScore(_arg1:int, _arg2:int, _arg3:int=1):void{ var _local4:String; var _local5:SharedObject; var _local6:Boolean; var _local7:*; _local4 = (("so_" + game_id) + _arg3); _local5 = SharedObject.getLocal(_local4); _local6 = false; for each (_local7 in _local5.data) { _local6 = true; break; }; if (!_local6){ _local5.data.level_scores = new Array(); _local5.data.level_scores[_arg2] = _arg1; } else { if (_local5.data.level_scores == undefined){ _local5.data.level_scores = new Array(); _local5.data.level_scores[_arg2] = _arg1; } else { _local5.data.level_scores[_arg2] = _arg1; }; }; _local5.flush(); _local5.close(); } private static function applyFudgeFactor():Number{ var _local1:Number; _local1 = Number(ff.shift()); _local1 = (_local1 + adj); ff.push(_local1); return (_local1); } public static function getHighScoreLine(_arg1:String, _arg2:int):Object{ var _local3:Array; var _local4:String; var _local5:Array; var _local6:Object; _local3 = _arg1.split("|"); _local4 = _local3[(_arg2 - 1)]; if ((((((((_local4 == "0")) || ((_local4 == "1")))) || ((_local4 == null)))) || ((_local4 == "")))){ return (null); }; _local5 = _local4.split("_"); if ((((_local5[1] == "n")) || ((_local5[2] == "n")))){ return (null); }; _local6 = new Object(); _local6.username = _local5[2]; _local6.score = _local5[1]; _local6.rank = _local5[0]; return (_local6); } public static function get url():String{ return (_url); } public static function getLastSavedScore(_arg1:int=1):int{ var _local2:String; var _local3:SharedObject; var _local4:Boolean; var _local5:*; _local2 = (("so_" + game_id) + String(_arg1)); _local3 = SharedObject.getLocal(_local2); _local4 = false; for each (_local5 in _local3.data) { _local4 = true; break; }; if (!_local4){ return (0); }; if (_local3.data.last_saved_score == undefined){ return (0); }; return (_local3.data.last_saved_score); } public static function getLevelName(_arg1:Number, _arg2:String=".xml"):String{ var _local3:MD5; var _local4:String; var _local5:String; _local3 = new MD5(); _local4 = ""; if (leading_zero){ if (_arg1 < 10){ _local4 = "0"; }; }; _local5 = _local3.hash(String(((level_id + _local4) + _arg1))); return ((_local5 + _arg2)); } } }//package
Section 328
//peg (peg) package { import flash.display.*; public dynamic class peg extends Sprite { } }//package
Section 329
//pegShape1 (pegShape1) package { import flash.display.*; public dynamic class pegShape1 extends Sprite { } }//package
Section 330
//pegShape2 (pegShape2) package { import flash.display.*; public dynamic class pegShape2 extends Sprite { } }//package
Section 331
//PrevArrow (PrevArrow) package { import com.nitrome.highscore.*; public dynamic class PrevArrow extends ArrowButton { public var __id19_:FlipsideFont; public function PrevArrow(){ addFrameScript(0, frame1);  (); } function frame1(){ stop(); } function  (){ try { __id19_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id19_.align = "center"; __id19_.align_vert = "center"; __id19_.color = 0xFFFFFF; __id19_.id = "None"; __id19_.line_spacing = 18; __id19_.text = "prev"; __id19_.tracking = 0; try { __id19_["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package
Section 332
//ropeBridgeRung (ropeBridgeRung) package { import flash.display.*; public dynamic class ropeBridgeRung extends Sprite { } }//package
Section 333
//ScoreLine (ScoreLine) package { import com.nitrome.highscore.*; public dynamic class ScoreLine extends HighScoreLine { } }//package
Section 334
//ScoreSubmitPanel (ScoreSubmitPanel) package { import com.nitrome.highscore.*; public dynamic class ScoreSubmitPanel extends ScoreSubmitPanel { public function ScoreSubmitPanel(){ addFrameScript(0, frame1); (); (); } function (){ try { _score_text["componentInspectorSetting"] = true; } catch(e:Error) { }; _score_text.align = "center"; _score_text.align_vert = "center"; _score_text.color = 0xFFFFFF; _score_text.id = "None"; _score_text.line_spacing = 18; _score_text.text = "your score is 0"; _score_text.tracking = 0; try { _score_text["componentInspectorSetting"] = false; } catch(e:Error) { }; } function (){ try { _name_text["componentInspectorSetting"] = true; } catch(e:Error) { }; _name_text.align = "center"; _name_text.align_vert = "center"; _name_text.color = 0xFFFFFF; _name_text.id = "None"; _name_text.line_spacing = 18; _name_text.text = ""; _name_text.tracking = 0; try { _name_text["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame1(){ stop(); } } }//package
Section 335
//seesaw1base (seesaw1base) package { import flash.display.*; public dynamic class seesaw1base extends Sprite { } }//package
Section 336
//seesaw1fulcrum (seesaw1fulcrum) package { import flash.display.*; public dynamic class seesaw1fulcrum extends Sprite { } }//package
Section 337
//seesaw2base (seesaw2base) package { import flash.display.*; public dynamic class seesaw2base extends Sprite { } }//package
Section 338
//seesawPivot (seesawPivot) package { import flash.display.*; public dynamic class seesawPivot extends Sprite { } }//package
Section 339
//sliceShape1 (sliceShape1) package { import flash.display.*; public dynamic class sliceShape1 extends Sprite { } }//package
Section 340
//sliceShape2 (sliceShape2) package { import flash.display.*; public dynamic class sliceShape2 extends Sprite { } }//package
Section 341
//sliceShape3 (sliceShape3) package { import flash.display.*; public dynamic class sliceShape3 extends Sprite { } }//package
Section 342
//slidingPlatform (slidingPlatform) package { import flash.display.*; public dynamic class slidingPlatform extends Sprite { } }//package
Section 343
//smallGreenLight (smallGreenLight) package { import flash.display.*; public dynamic class smallGreenLight extends Sprite { } }//package
Section 344
//smallLight (smallLight) package { import flash.display.*; public dynamic class smallLight extends MovieClip { } }//package
Section 345
//smallPurpleLight (smallPurpleLight) package { import flash.display.*; public dynamic class smallPurpleLight extends Sprite { } }//package
Section 346
//SubmitButton (SubmitButton) package { import com.nitrome.highscore.*; import flash.utils.*; public dynamic class SubmitButton extends SubmitButton { public var __setPropDict:Dictionary; public var __id16_:FlipsideFont; public function SubmitButton(){ __setPropDict = new Dictionary(true); super(); addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4, 4, frame5, 5, frame6, 6, frame7, 7, frame8, 8, frame9, 9, frame10, 10, frame11, 11, frame12, 12, frame13, 13, frame14, 14, frame15, 15, frame16, 16, frame17, 17, frame18, 18, frame19, 19, frame20); } function  (){ try { __id16_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id16_.align = "center"; __id16_.align_vert = "center"; __id16_.color = 0xFFFFFF; __id16_.id = "None"; __id16_.line_spacing = 18; __id16_.text = "submit"; __id16_.tracking = 0; try { __id16_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame10(){ if ((((__setPropDict[__id16_] == undefined)) || (!((((int(__setPropDict[__id16_]) >= 1)) && ((int(__setPropDict[__id16_]) <= 20))))))){ __setPropDict[__id16_] = currentFrame;  (); }; } function frame14(){ if ((((__setPropDict[__id16_] == undefined)) || (!((((int(__setPropDict[__id16_]) >= 1)) && ((int(__setPropDict[__id16_]) <= 20))))))){ __setPropDict[__id16_] = currentFrame;  (); }; } function frame12(){ if ((((__setPropDict[__id16_] == undefined)) || (!((((int(__setPropDict[__id16_]) >= 1)) && ((int(__setPropDict[__id16_]) <= 20))))))){ __setPropDict[__id16_] = currentFrame;  (); }; } function frame18(){ if ((((__setPropDict[__id16_] == undefined)) || (!((((int(__setPropDict[__id16_]) >= 1)) && ((int(__setPropDict[__id16_]) <= 20))))))){ __setPropDict[__id16_] = currentFrame;  (); }; } function frame3(){ if ((((__setPropDict[__id16_] == undefined)) || (!((((int(__setPropDict[__id16_]) >= 1)) && ((int(__setPropDict[__id16_]) <= 20))))))){ __setPropDict[__id16_] = currentFrame;  (); }; } function frame6(){ if ((((__setPropDict[__id16_] == undefined)) || (!((((int(__setPropDict[__id16_]) >= 1)) && ((int(__setPropDict[__id16_]) <= 20))))))){ __setPropDict[__id16_] = currentFrame;  (); }; } function frame7(){ if ((((__setPropDict[__id16_] == undefined)) || (!((((int(__setPropDict[__id16_]) >= 1)) && ((int(__setPropDict[__id16_]) <= 20))))))){ __setPropDict[__id16_] = currentFrame;  (); }; } function frame1(){ if ((((__setPropDict[__id16_] == undefined)) || (!((((int(__setPropDict[__id16_]) >= 1)) && ((int(__setPropDict[__id16_]) <= 20))))))){ __setPropDict[__id16_] = currentFrame;  (); }; stop(); } function frame19(){ if ((((__setPropDict[__id16_] == undefined)) || (!((((int(__setPropDict[__id16_]) >= 1)) && ((int(__setPropDict[__id16_]) <= 20))))))){ __setPropDict[__id16_] = currentFrame;  (); }; } function frame13(){ if ((((__setPropDict[__id16_] == undefined)) || (!((((int(__setPropDict[__id16_]) >= 1)) && ((int(__setPropDict[__id16_]) <= 20))))))){ __setPropDict[__id16_] = currentFrame;  (); }; } function frame17(){ if ((((__setPropDict[__id16_] == undefined)) || (!((((int(__setPropDict[__id16_]) >= 1)) && ((int(__setPropDict[__id16_]) <= 20))))))){ __setPropDict[__id16_] = currentFrame;  (); }; } function frame4(){ if ((((__setPropDict[__id16_] == undefined)) || (!((((int(__setPropDict[__id16_]) >= 1)) && ((int(__setPropDict[__id16_]) <= 20))))))){ __setPropDict[__id16_] = currentFrame;  (); }; } function frame9(){ if ((((__setPropDict[__id16_] == undefined)) || (!((((int(__setPropDict[__id16_]) >= 1)) && ((int(__setPropDict[__id16_]) <= 20))))))){ __setPropDict[__id16_] = currentFrame;  (); }; } function frame16(){ if ((((__setPropDict[__id16_] == undefined)) || (!((((int(__setPropDict[__id16_]) >= 1)) && ((int(__setPropDict[__id16_]) <= 20))))))){ __setPropDict[__id16_] = currentFrame;  (); }; } function frame2(){ if ((((__setPropDict[__id16_] == undefined)) || (!((((int(__setPropDict[__id16_]) >= 1)) && ((int(__setPropDict[__id16_]) <= 20))))))){ __setPropDict[__id16_] = currentFrame;  (); }; } function frame5(){ if ((((__setPropDict[__id16_] == undefined)) || (!((((int(__setPropDict[__id16_]) >= 1)) && ((int(__setPropDict[__id16_]) <= 20))))))){ __setPropDict[__id16_] = currentFrame;  (); }; } function frame15(){ if ((((__setPropDict[__id16_] == undefined)) || (!((((int(__setPropDict[__id16_]) >= 1)) && ((int(__setPropDict[__id16_]) <= 20))))))){ __setPropDict[__id16_] = currentFrame;  (); }; } function frame8(){ if ((((__setPropDict[__id16_] == undefined)) || (!((((int(__setPropDict[__id16_]) >= 1)) && ((int(__setPropDict[__id16_]) <= 20))))))){ __setPropDict[__id16_] = currentFrame;  (); }; } function frame11(){ if ((((__setPropDict[__id16_] == undefined)) || (!((((int(__setPropDict[__id16_]) >= 1)) && ((int(__setPropDict[__id16_]) <= 20))))))){ __setPropDict[__id16_] = currentFrame;  (); }; } function frame20(){ if ((((__setPropDict[__id16_] == undefined)) || (!((((int(__setPropDict[__id16_]) >= 1)) && ((int(__setPropDict[__id16_]) <= 20))))))){ __setPropDict[__id16_] = currentFrame;  (); }; } } }//package
Section 347
//switch (switch) package { import flash.display.*; public dynamic class switch extends Sprite { } }//package
Section 348
//Text_None_0 (Text_None_0) package { import flash.display.*; public dynamic class Text_None_0 extends Sprite { } }//package
Section 349
//Text_None_1 (Text_None_1) package { import flash.display.*; public dynamic class Text_None_1 extends Sprite { } }//package
Section 350
//Text_None_2 (Text_None_2) package { import flash.display.*; public dynamic class Text_None_2 extends Sprite { } }//package
Section 351
//Text_None_3 (Text_None_3) package { import flash.display.*; public dynamic class Text_None_3 extends Sprite { } }//package
Section 352
//Text_None_4 (Text_None_4) package { import flash.display.*; public dynamic class Text_None_4 extends Sprite { } }//package
Section 353
//Text_None_5 (Text_None_5) package { import flash.display.*; public dynamic class Text_None_5 extends Sprite { } }//package
Section 354
//Text_None_6 (Text_None_6) package { import flash.display.*; public dynamic class Text_None_6 extends Sprite { } }//package
Section 355
//Text_None_7 (Text_None_7) package { import flash.display.*; public dynamic class Text_None_7 extends Sprite { } }//package
Section 356
//Text_None_8 (Text_None_8) package { import flash.display.*; public dynamic class Text_None_8 extends Sprite { } }//package
Section 357
//Text_None_9 (Text_None_9) package { import flash.display.*; public dynamic class Text_None_9 extends Sprite { } }//package
Section 358
//Text_None_A (Text_None_A) package { import flash.display.*; public dynamic class Text_None_A extends Sprite { } }//package
Section 359
//Text_None_APOSTROPHE (Text_None_APOSTROPHE) package { import flash.display.*; public dynamic class Text_None_APOSTROPHE extends Sprite { } }//package
Section 360
//Text_None_B (Text_None_B) package { import flash.display.*; public dynamic class Text_None_B extends Sprite { } }//package
Section 361
//Text_None_C (Text_None_C) package { import flash.display.*; public dynamic class Text_None_C extends Sprite { } }//package
Section 362
//Text_None_COLON (Text_None_COLON) package { import flash.display.*; public dynamic class Text_None_COLON extends Sprite { } }//package
Section 363
//Text_None_COMMA (Text_None_COMMA) package { import flash.display.*; public dynamic class Text_None_COMMA extends Sprite { } }//package
Section 364
//Text_None_D (Text_None_D) package { import flash.display.*; public dynamic class Text_None_D extends Sprite { } }//package
Section 365
//Text_None_E (Text_None_E) package { import flash.display.*; public dynamic class Text_None_E extends Sprite { } }//package
Section 366
//Text_None_EXCLAMATION (Text_None_EXCLAMATION) package { import flash.display.*; public dynamic class Text_None_EXCLAMATION extends Sprite { } }//package
Section 367
//Text_None_F (Text_None_F) package { import flash.display.*; public dynamic class Text_None_F extends Sprite { } }//package
Section 368
//Text_None_G (Text_None_G) package { import flash.display.*; public dynamic class Text_None_G extends Sprite { } }//package
Section 369
//Text_None_H (Text_None_H) package { import flash.display.*; public dynamic class Text_None_H extends Sprite { } }//package
Section 370
//Text_None_HYPHEN (Text_None_HYPHEN) package { import flash.display.*; public dynamic class Text_None_HYPHEN extends Sprite { } }//package
Section 371
//Text_None_I (Text_None_I) package { import flash.display.*; public dynamic class Text_None_I extends Sprite { } }//package
Section 372
//Text_None_J (Text_None_J) package { import flash.display.*; public dynamic class Text_None_J extends Sprite { } }//package
Section 373
//Text_None_K (Text_None_K) package { import flash.display.*; public dynamic class Text_None_K extends Sprite { } }//package
Section 374
//Text_None_L (Text_None_L) package { import flash.display.*; public dynamic class Text_None_L extends Sprite { } }//package
Section 375
//Text_None_M (Text_None_M) package { import flash.display.*; public dynamic class Text_None_M extends Sprite { } }//package
Section 376
//Text_None_N (Text_None_N) package { import flash.display.*; public dynamic class Text_None_N extends Sprite { } }//package
Section 377
//Text_None_O (Text_None_O) package { import flash.display.*; public dynamic class Text_None_O extends Sprite { } }//package
Section 378
//Text_None_P (Text_None_P) package { import flash.display.*; public dynamic class Text_None_P extends Sprite { } }//package
Section 379
//Text_None_Q (Text_None_Q) package { import flash.display.*; public dynamic class Text_None_Q extends Sprite { } }//package
Section 380
//Text_None_QUESTION (Text_None_QUESTION) package { import flash.display.*; public dynamic class Text_None_QUESTION extends Sprite { } }//package
Section 381
//Text_None_R (Text_None_R) package { import flash.display.*; public dynamic class Text_None_R extends Sprite { } }//package
Section 382
//Text_None_S (Text_None_S) package { import flash.display.*; public dynamic class Text_None_S extends Sprite { } }//package
Section 383
//Text_None_SPACE (Text_None_SPACE) package { import flash.display.*; public dynamic class Text_None_SPACE extends MovieClip { } }//package
Section 384
//Text_None_STOP (Text_None_STOP) package { import flash.display.*; public dynamic class Text_None_STOP extends Sprite { } }//package
Section 385
//Text_None_T (Text_None_T) package { import flash.display.*; public dynamic class Text_None_T extends Sprite { } }//package
Section 386
//Text_None_U (Text_None_U) package { import flash.display.*; public dynamic class Text_None_U extends Sprite { } }//package
Section 387
//Text_None_V (Text_None_V) package { import flash.display.*; public dynamic class Text_None_V extends Sprite { } }//package
Section 388
//Text_None_W (Text_None_W) package { import flash.display.*; public dynamic class Text_None_W extends Sprite { } }//package
Section 389
//Text_None_X (Text_None_X) package { import flash.display.*; public dynamic class Text_None_X extends Sprite { } }//package
Section 390
//Text_None_Y (Text_None_Y) package { import flash.display.*; public dynamic class Text_None_Y extends Sprite { } }//package
Section 391
//Text_None_Z (Text_None_Z) package { import flash.display.*; public dynamic class Text_None_Z extends Sprite { } }//package
Section 392
//tile_10 (tile_10) package { import flash.display.*; public dynamic class tile_10 extends Sprite { } }//package
Section 393
//tile_101 (tile_101) package { import flash.display.*; public dynamic class tile_101 extends Sprite { } }//package
Section 394
//tile_102 (tile_102) package { import flash.display.*; public dynamic class tile_102 extends Sprite { } }//package
Section 395
//tile_103 (tile_103) package { import flash.display.*; public dynamic class tile_103 extends Sprite { } }//package
Section 396
//tile_104 (tile_104) package { import flash.display.*; public dynamic class tile_104 extends Sprite { } }//package
Section 397
//tile_106 (tile_106) package { import flash.display.*; public dynamic class tile_106 extends Sprite { } }//package
Section 398
//tile_107 (tile_107) package { import flash.display.*; public dynamic class tile_107 extends Sprite { } }//package
Section 399
//tile_108 (tile_108) package { import flash.display.*; public dynamic class tile_108 extends Sprite { } }//package
Section 400
//tile_112 (tile_112) package { import flash.display.*; public dynamic class tile_112 extends Sprite { } }//package
Section 401
//tile_114 (tile_114) package { import flash.display.*; public dynamic class tile_114 extends Sprite { } }//package
Section 402
//tile_115 (tile_115) package { import flash.display.*; public dynamic class tile_115 extends Sprite { } }//package
Section 403
//tile_117 (tile_117) package { import flash.display.*; public dynamic class tile_117 extends Sprite { } }//package
Section 404
//tile_119 (tile_119) package { import flash.display.*; public dynamic class tile_119 extends Sprite { } }//package
Section 405
//tile_12 (tile_12) package { import flash.display.*; public dynamic class tile_12 extends Sprite { } }//package
Section 406
//tile_121 (tile_121) package { import flash.display.*; public dynamic class tile_121 extends Sprite { } }//package
Section 407
//tile_122 (tile_122) package { import flash.display.*; public dynamic class tile_122 extends Sprite { } }//package
Section 408
//tile_124 (tile_124) package { import flash.display.*; public dynamic class tile_124 extends Sprite { } }//package
Section 409
//tile_125 (tile_125) package { import flash.display.*; public dynamic class tile_125 extends Sprite { } }//package
Section 410
//tile_127 (tile_127) package { import flash.display.*; public dynamic class tile_127 extends Sprite { } }//package
Section 411
//tile_128 (tile_128) package { import flash.display.*; public dynamic class tile_128 extends Sprite { } }//package
Section 412
//tile_130 (tile_130) package { import flash.display.*; public dynamic class tile_130 extends Sprite { } }//package
Section 413
//tile_131 (tile_131) package { import flash.display.*; public dynamic class tile_131 extends Sprite { } }//package
Section 414
//tile_137 (tile_137) package { import flash.display.*; public dynamic class tile_137 extends Sprite { } }//package
Section 415
//tile_138 (tile_138) package { import flash.display.*; public dynamic class tile_138 extends Sprite { } }//package
Section 416
//tile_14 (tile_14) package { import flash.display.*; public dynamic class tile_14 extends Sprite { } }//package
Section 417
//tile_140 (tile_140) package { import flash.display.*; public dynamic class tile_140 extends Sprite { } }//package
Section 418
//tile_141 (tile_141) package { import flash.display.*; public dynamic class tile_141 extends Sprite { } }//package
Section 419
//tile_142 (tile_142) package { import flash.display.*; public dynamic class tile_142 extends Sprite { } }//package
Section 420
//tile_144 (tile_144) package { import flash.display.*; public dynamic class tile_144 extends Sprite { } }//package
Section 421
//tile_145 (tile_145) package { import flash.display.*; public dynamic class tile_145 extends Sprite { } }//package
Section 422
//tile_146 (tile_146) package { import flash.display.*; public dynamic class tile_146 extends Sprite { } }//package
Section 423
//tile_147 (tile_147) package { import flash.display.*; public dynamic class tile_147 extends Sprite { } }//package
Section 424
//tile_148 (tile_148) package { import flash.display.*; public dynamic class tile_148 extends Sprite { } }//package
Section 425
//tile_150 (tile_150) package { import flash.display.*; public dynamic class tile_150 extends Sprite { } }//package
Section 426
//tile_153 (tile_153) package { import flash.display.*; public dynamic class tile_153 extends Sprite { } }//package
Section 427
//tile_158 (tile_158) package { import flash.display.*; public dynamic class tile_158 extends Sprite { } }//package
Section 428
//tile_161 (tile_161) package { import flash.display.*; public dynamic class tile_161 extends Sprite { } }//package
Section 429
//tile_162 (tile_162) package { import flash.display.*; public dynamic class tile_162 extends Sprite { } }//package
Section 430
//tile_17 (tile_17) package { import flash.display.*; public dynamic class tile_17 extends Sprite { } }//package
Section 431
//tile_19 (tile_19) package { import flash.display.*; public dynamic class tile_19 extends Sprite { } }//package
Section 432
//tile_200 (tile_200) package { import flash.display.*; public dynamic class tile_200 extends MovieClip { } }//package
Section 433
//tile_201 (tile_201) package { import flash.display.*; public dynamic class tile_201 extends MovieClip { } }//package
Section 434
//tile_202 (tile_202) package { import flash.display.*; public dynamic class tile_202 extends MovieClip { } }//package
Section 435
//tile_203 (tile_203) package { import flash.display.*; public dynamic class tile_203 extends MovieClip { } }//package
Section 436
//tile_204 (tile_204) package { import flash.display.*; public dynamic class tile_204 extends MovieClip { } }//package
Section 437
//tile_205 (tile_205) package { import flash.display.*; public dynamic class tile_205 extends MovieClip { } }//package
Section 438
//tile_206 (tile_206) package { import flash.display.*; public dynamic class tile_206 extends MovieClip { } }//package
Section 439
//tile_207 (tile_207) package { import flash.display.*; public dynamic class tile_207 extends MovieClip { } }//package
Section 440
//tile_208 (tile_208) package { import flash.display.*; public dynamic class tile_208 extends MovieClip { } }//package
Section 441
//tile_209 (tile_209) package { import flash.display.*; public dynamic class tile_209 extends MovieClip { } }//package
Section 442
//tile_21 (tile_21) package { import flash.display.*; public dynamic class tile_21 extends Sprite { } }//package
Section 443
//tile_210 (tile_210) package { import flash.display.*; public dynamic class tile_210 extends MovieClip { } }//package
Section 444
//tile_211 (tile_211) package { import flash.display.*; public dynamic class tile_211 extends MovieClip { } }//package
Section 445
//tile_212 (tile_212) package { import flash.display.*; public dynamic class tile_212 extends MovieClip { } }//package
Section 446
//tile_213 (tile_213) package { import flash.display.*; public dynamic class tile_213 extends MovieClip { } }//package
Section 447
//tile_214 (tile_214) package { import flash.display.*; public dynamic class tile_214 extends MovieClip { } }//package
Section 448
//tile_215 (tile_215) package { import flash.display.*; public dynamic class tile_215 extends MovieClip { } }//package
Section 449
//tile_216 (tile_216) package { import flash.display.*; public dynamic class tile_216 extends MovieClip { } }//package
Section 450
//tile_217 (tile_217) package { import flash.display.*; public dynamic class tile_217 extends MovieClip { } }//package
Section 451
//tile_218 (tile_218) package { import flash.display.*; public dynamic class tile_218 extends MovieClip { } }//package
Section 452
//tile_219 (tile_219) package { import flash.display.*; public dynamic class tile_219 extends MovieClip { } }//package
Section 453
//tile_220 (tile_220) package { import flash.display.*; public dynamic class tile_220 extends MovieClip { } }//package
Section 454
//tile_221 (tile_221) package { import flash.display.*; public dynamic class tile_221 extends MovieClip { } }//package
Section 455
//tile_222 (tile_222) package { import flash.display.*; public dynamic class tile_222 extends MovieClip { } }//package
Section 456
//tile_223 (tile_223) package { import flash.display.*; public dynamic class tile_223 extends MovieClip { } }//package
Section 457
//tile_224 (tile_224) package { import flash.display.*; public dynamic class tile_224 extends MovieClip { } }//package
Section 458
//tile_225 (tile_225) package { import flash.display.*; public dynamic class tile_225 extends MovieClip { } }//package
Section 459
//tile_226 (tile_226) package { import flash.display.*; public dynamic class tile_226 extends MovieClip { } }//package
Section 460
//tile_227 (tile_227) package { import flash.display.*; public dynamic class tile_227 extends MovieClip { } }//package
Section 461
//tile_228 (tile_228) package { import flash.display.*; public dynamic class tile_228 extends MovieClip { } }//package
Section 462
//tile_229 (tile_229) package { import flash.display.*; public dynamic class tile_229 extends MovieClip { } }//package
Section 463
//tile_23 (tile_23) package { import flash.display.*; public dynamic class tile_23 extends Sprite { } }//package
Section 464
//tile_29 (tile_29) package { import flash.display.*; public dynamic class tile_29 extends Sprite { } }//package
Section 465
//tile_3 (tile_3) package { import flash.display.*; public dynamic class tile_3 extends Sprite { } }//package
Section 466
//tile_30 (tile_30) package { import flash.display.*; public dynamic class tile_30 extends Sprite { } }//package
Section 467
//tile_33 (tile_33) package { import flash.display.*; public dynamic class tile_33 extends Sprite { } }//package
Section 468
//tile_35 (tile_35) package { import flash.display.*; public dynamic class tile_35 extends Sprite { } }//package
Section 469
//tile_37 (tile_37) package { import flash.display.*; public dynamic class tile_37 extends Sprite { } }//package
Section 470
//tile_4 (tile_4) package { import flash.display.*; public dynamic class tile_4 extends Sprite { } }//package
Section 471
//tile_40 (tile_40) package { import flash.display.*; public dynamic class tile_40 extends Sprite { } }//package
Section 472
//tile_41 (tile_41) package { import flash.display.*; public dynamic class tile_41 extends Sprite { } }//package
Section 473
//tile_42 (tile_42) package { import flash.display.*; public dynamic class tile_42 extends Sprite { } }//package
Section 474
//tile_43 (tile_43) package { import flash.display.*; public dynamic class tile_43 extends Sprite { } }//package
Section 475
//tile_44 (tile_44) package { import flash.display.*; public dynamic class tile_44 extends Sprite { } }//package
Section 476
//tile_45 (tile_45) package { import flash.display.*; public dynamic class tile_45 extends Sprite { } }//package
Section 477
//tile_46 (tile_46) package { import flash.display.*; public dynamic class tile_46 extends Sprite { } }//package
Section 478
//tile_47 (tile_47) package { import flash.display.*; public dynamic class tile_47 extends Sprite { } }//package
Section 479
//tile_5 (tile_5) package { import flash.display.*; public dynamic class tile_5 extends Sprite { } }//package
Section 480
//tile_55 (tile_55) package { import flash.display.*; public dynamic class tile_55 extends Sprite { } }//package
Section 481
//tile_58 (tile_58) package { import flash.display.*; public dynamic class tile_58 extends Sprite { } }//package
Section 482
//tile_6 (tile_6) package { import flash.display.*; public dynamic class tile_6 extends Sprite { } }//package
Section 483
//tile_60 (tile_60) package { import flash.display.*; public dynamic class tile_60 extends Sprite { } }//package
Section 484
//tile_61 (tile_61) package { import flash.display.*; public dynamic class tile_61 extends Sprite { } }//package
Section 485
//tile_62 (tile_62) package { import flash.display.*; public dynamic class tile_62 extends Sprite { } }//package
Section 486
//tile_64 (tile_64) package { import flash.display.*; public dynamic class tile_64 extends Sprite { } }//package
Section 487
//tile_65 (tile_65) package { import flash.display.*; public dynamic class tile_65 extends Sprite { } }//package
Section 488
//tile_67 (tile_67) package { import flash.display.*; public dynamic class tile_67 extends Sprite { } }//package
Section 489
//tile_69 (tile_69) package { import flash.display.*; public dynamic class tile_69 extends Sprite { } }//package
Section 490
//tile_71 (tile_71) package { import flash.display.*; public dynamic class tile_71 extends Sprite { } }//package
Section 491
//tile_72 (tile_72) package { import flash.display.*; public dynamic class tile_72 extends Sprite { } }//package
Section 492
//tile_73 (tile_73) package { import flash.display.*; public dynamic class tile_73 extends Sprite { } }//package
Section 493
//tile_74 (tile_74) package { import flash.display.*; public dynamic class tile_74 extends Sprite { } }//package
Section 494
//tile_77 (tile_77) package { import flash.display.*; public dynamic class tile_77 extends Sprite { } }//package
Section 495
//tile_78 (tile_78) package { import flash.display.*; public dynamic class tile_78 extends Sprite { } }//package
Section 496
//tile_8 (tile_8) package { import flash.display.*; public dynamic class tile_8 extends Sprite { } }//package
Section 497
//tile_81 (tile_81) package { import flash.display.*; public dynamic class tile_81 extends Sprite { } }//package
Section 498
//tile_84 (tile_84) package { import flash.display.*; public dynamic class tile_84 extends Sprite { } }//package
Section 499
//tile_85 (tile_85) package { import flash.display.*; public dynamic class tile_85 extends Sprite { } }//package
Section 500
//tile_86 (tile_86) package { import flash.display.*; public dynamic class tile_86 extends Sprite { } }//package
Section 501
//tile_87 (tile_87) package { import flash.display.*; public dynamic class tile_87 extends Sprite { } }//package
Section 502
//tile_88 (tile_88) package { import flash.display.*; public dynamic class tile_88 extends Sprite { } }//package
Section 503
//tile_89 (tile_89) package { import flash.display.*; public dynamic class tile_89 extends Sprite { } }//package
Section 504
//tile_90 (tile_90) package { import flash.display.*; public dynamic class tile_90 extends Sprite { } }//package
Section 505
//tile_92 (tile_92) package { import flash.display.*; public dynamic class tile_92 extends Sprite { } }//package
Section 506
//tile_93 (tile_93) package { import flash.display.*; public dynamic class tile_93 extends Sprite { } }//package
Section 507
//tile_94 (tile_94) package { import flash.display.*; public dynamic class tile_94 extends Sprite { } }//package
Section 508
//tile_95 (tile_95) package { import flash.display.*; public dynamic class tile_95 extends Sprite { } }//package
Section 509
//tile_96 (tile_96) package { import flash.display.*; public dynamic class tile_96 extends Sprite { } }//package
Section 510
//tile_98 (tile_98) package { import flash.display.*; public dynamic class tile_98 extends Sprite { } }//package
Section 511
//tile_99 (tile_99) package { import flash.display.*; public dynamic class tile_99 extends Sprite { } }//package
Section 512
//tile_ca (tile_ca) package { import flash.display.*; public dynamic class tile_ca extends Sprite { } }//package
Section 513
//tile_cb (tile_cb) package { import flash.display.*; public dynamic class tile_cb extends Sprite { } }//package
Section 514
//tile_cc (tile_cc) package { import flash.display.*; public dynamic class tile_cc extends Sprite { } }//package
Section 515
//tile_cd (tile_cd) package { import flash.display.*; public dynamic class tile_cd extends Sprite { } }//package
Section 516
//tile_ce (tile_ce) package { import flash.display.*; public dynamic class tile_ce extends Sprite { } }//package
Section 517
//tile_cf (tile_cf) package { import flash.display.*; public dynamic class tile_cf extends Sprite { } }//package
Section 518
//tile_cg (tile_cg) package { import flash.display.*; public dynamic class tile_cg extends Sprite { } }//package
Section 519
//tile_ch (tile_ch) package { import flash.display.*; public dynamic class tile_ch extends Sprite { } }//package
Section 520
//tile_d1 (tile_d1) package { import flash.display.*; public dynamic class tile_d1 extends Sprite { } }//package
Section 521
//tile_d2 (tile_d2) package { import flash.display.*; public dynamic class tile_d2 extends Sprite { } }//package
Section 522
//tile_d3 (tile_d3) package { import flash.display.*; public dynamic class tile_d3 extends Sprite { } }//package
Section 523
//tile_ra (tile_ra) package { import flash.display.*; public dynamic class tile_ra extends Sprite { } }//package
Section 524
//tile_rb (tile_rb) package { import flash.display.*; public dynamic class tile_rb extends Sprite { } }//package
Section 525
//tile_rc (tile_rc) package { import flash.display.*; public dynamic class tile_rc extends Sprite { } }//package
Section 526
//tile_rd (tile_rd) package { import flash.display.*; public dynamic class tile_rd extends Sprite { } }//package
Section 527
//tile_re (tile_re) package { import flash.display.*; public dynamic class tile_re extends Sprite { } }//package
Section 528
//tile_rf (tile_rf) package { import flash.display.*; public dynamic class tile_rf extends Sprite { } }//package
Section 529
//tile_rg (tile_rg) package { import flash.display.*; public dynamic class tile_rg extends Sprite { } }//package
Section 530
//tile_rh (tile_rh) package { import flash.display.*; public dynamic class tile_rh extends Sprite { } }//package
Section 531
//tile_td1 (tile_td1) package { import flash.display.*; public dynamic class tile_td1 extends Sprite { } }//package
Section 532
//tile_td2 (tile_td2) package { import flash.display.*; public dynamic class tile_td2 extends Sprite { } }//package
Section 533
//tile_td3 (tile_td3) package { import flash.display.*; public dynamic class tile_td3 extends Sprite { } }//package
Section 534
//tile_tu1 (tile_tu1) package { import flash.display.*; public dynamic class tile_tu1 extends Sprite { } }//package
Section 535
//tile_tu2 (tile_tu2) package { import flash.display.*; public dynamic class tile_tu2 extends Sprite { } }//package
Section 536
//tile_tu3 (tile_tu3) package { import flash.display.*; public dynamic class tile_tu3 extends Sprite { } }//package
Section 537
//tile_u1 (tile_u1) package { import flash.display.*; public dynamic class tile_u1 extends Sprite { } }//package
Section 538
//tile_u2 (tile_u2) package { import flash.display.*; public dynamic class tile_u2 extends Sprite { } }//package
Section 539
//tile_u3 (tile_u3) package { import flash.display.*; public dynamic class tile_u3 extends Sprite { } }//package
Section 540
//tile_u4 (tile_u4) package { import flash.display.*; public dynamic class tile_u4 extends Sprite { } }//package
Section 541
//tile_va (tile_va) package { import flash.display.*; public dynamic class tile_va extends Sprite { } }//package
Section 542
//tile_vb (tile_vb) package { import flash.display.*; public dynamic class tile_vb extends Sprite { } }//package
Section 543
//tile_vc (tile_vc) package { import flash.display.*; public dynamic class tile_vc extends Sprite { } }//package
Section 544
//tile_vd (tile_vd) package { import flash.display.*; public dynamic class tile_vd extends Sprite { } }//package
Section 545
//trapdoor (trapdoor) package { import flash.display.*; public dynamic class trapdoor extends Sprite { } }//package
Section 546
//turnstileBlade (turnstileBlade) package { import flash.display.*; public dynamic class turnstileBlade extends MovieClip { } }//package
Section 547
//turnstileCenter1 (turnstileCenter1) package { import flash.display.*; public dynamic class turnstileCenter1 extends MovieClip { } }//package
Section 548
//turnstileCenter2 (turnstileCenter2) package { import flash.display.*; public dynamic class turnstileCenter2 extends MovieClip { } }//package
Section 549
//wreckingBall (wreckingBall) package { import flash.display.*; public dynamic class wreckingBall extends Sprite { } }//package

Library Items

Symbol 131 GraphicUsed by:1424  Timeline
Symbol 6 GraphicUsed by:130
Symbol 7 BitmapUsed by:8
Symbol 8 GraphicUses:7Used by:9 92
Symbol 9 MovieClip {Text_None_0}Uses:8Used by:130
Symbol 10 BitmapUsed by:11
Symbol 11 GraphicUses:10Used by:12
Symbol 12 MovieClip {Text_None_1}Uses:11Used by:130
Symbol 13 BitmapUsed by:14
Symbol 14 GraphicUses:13Used by:15 127
Symbol 15 MovieClip {Text_None_2}Uses:14Used by:130
Symbol 16 BitmapUsed by:17
Symbol 17 GraphicUses:16Used by:18
Symbol 18 MovieClip {Text_None_3}Uses:17Used by:130
Symbol 19 BitmapUsed by:20
Symbol 20 GraphicUses:19Used by:21
Symbol 21 MovieClip {Text_None_4}Uses:20Used by:130
Symbol 22 BitmapUsed by:23
Symbol 23 GraphicUses:22Used by:24 105
Symbol 24 MovieClip {Text_None_5}Uses:23Used by:130
Symbol 25 BitmapUsed by:26
Symbol 26 GraphicUses:25Used by:27 67
Symbol 27 MovieClip {Text_None_6}Uses:26Used by:130
Symbol 28 BitmapUsed by:29
Symbol 29 GraphicUses:28Used by:30
Symbol 30 MovieClip {Text_None_7}Uses:29Used by:130
Symbol 31 BitmapUsed by:32
Symbol 32 GraphicUses:31Used by:33
Symbol 33 MovieClip {Text_None_8}Uses:32Used by:130
Symbol 34 BitmapUsed by:35
Symbol 35 GraphicUses:34Used by:36
Symbol 36 MovieClip {Text_None_9}Uses:35Used by:130
Symbol 37 BitmapUsed by:38
Symbol 38 GraphicUses:37Used by:39
Symbol 39 MovieClip {Text_None_A}Uses:38Used by:130
Symbol 40 BitmapUsed by:41
Symbol 41 GraphicUses:40Used by:42
Symbol 42 MovieClip {Text_None_APOSTROPHE}Uses:41Used by:130
Symbol 43 BitmapUsed by:44
Symbol 44 GraphicUses:43Used by:45
Symbol 45 MovieClip {Text_None_B}Uses:44Used by:130
Symbol 46 BitmapUsed by:47
Symbol 47 GraphicUses:46Used by:48
Symbol 48 MovieClip {Text_None_C}Uses:47Used by:130
Symbol 49 BitmapUsed by:50
Symbol 50 GraphicUses:49Used by:51
Symbol 51 MovieClip {Text_None_COLON}Uses:50Used by:130
Symbol 52 BitmapUsed by:53
Symbol 53 GraphicUses:52Used by:54
Symbol 54 MovieClip {Text_None_COMMA}Uses:53Used by:130
Symbol 55 BitmapUsed by:56
Symbol 56 GraphicUses:55Used by:57
Symbol 57 MovieClip {Text_None_D}Uses:56Used by:130
Symbol 58 BitmapUsed by:59
Symbol 59 GraphicUses:58Used by:60
Symbol 60 MovieClip {Text_None_E}Uses:59Used by:130
Symbol 61 BitmapUsed by:62
Symbol 62 GraphicUses:61Used by:63
Symbol 63 MovieClip {Text_None_EXCLAMATION}Uses:62Used by:130
Symbol 64 BitmapUsed by:65
Symbol 65 GraphicUses:64Used by:66
Symbol 66 MovieClip {Text_None_F}Uses:65Used by:130
Symbol 67 MovieClip {Text_None_G}Uses:26Used by:130
Symbol 68 BitmapUsed by:69
Symbol 69 GraphicUses:68Used by:70
Symbol 70 MovieClip {Text_None_H}Uses:69Used by:130
Symbol 71 BitmapUsed by:72
Symbol 72 GraphicUses:71Used by:73
Symbol 73 MovieClip {Text_None_HYPHEN}Uses:72Used by:130
Symbol 74 BitmapUsed by:75
Symbol 75 GraphicUses:74Used by:76
Symbol 76 MovieClip {Text_None_I}Uses:75Used by:130
Symbol 77 BitmapUsed by:78
Symbol 78 GraphicUses:77Used by:79
Symbol 79 MovieClip {Text_None_J}Uses:78Used by:130
Symbol 80 BitmapUsed by:81
Symbol 81 GraphicUses:80Used by:82
Symbol 82 MovieClip {Text_None_K}Uses:81Used by:130
Symbol 83 BitmapUsed by:84
Symbol 84 GraphicUses:83Used by:85
Symbol 85 MovieClip {Text_None_L}Uses:84Used by:130
Symbol 86 BitmapUsed by:87
Symbol 87 GraphicUses:86Used by:88
Symbol 88 MovieClip {Text_None_M}Uses:87Used by:130
Symbol 89 BitmapUsed by:90
Symbol 90 GraphicUses:89Used by:91
Symbol 91 MovieClip {Text_None_N}Uses:90Used by:130
Symbol 92 MovieClip {Text_None_O}Uses:8Used by:130
Symbol 93 BitmapUsed by:94
Symbol 94 GraphicUses:93Used by:95
Symbol 95 MovieClip {Text_None_P}Uses:94Used by:130
Symbol 96 BitmapUsed by:97
Symbol 97 GraphicUses:96Used by:98
Symbol 98 MovieClip {Text_None_Q}Uses:97Used by:130
Symbol 99 BitmapUsed by:100
Symbol 100 GraphicUses:99Used by:101
Symbol 101 MovieClip {Text_None_QUESTION}Uses:100Used by:130
Symbol 102 BitmapUsed by:103
Symbol 103 GraphicUses:102Used by:104
Symbol 104 MovieClip {Text_None_R}Uses:103Used by:130
Symbol 105 MovieClip {Text_None_S}Uses:23Used by:130
Symbol 106 BitmapUsed by:107
Symbol 107 GraphicUses:106Used by:108
Symbol 108 MovieClip {Text_None_STOP}Uses:107Used by:130
Symbol 109 BitmapUsed by:110
Symbol 110 GraphicUses:109Used by:111
Symbol 111 MovieClip {Text_None_T}Uses:110Used by:130
Symbol 112 BitmapUsed by:113
Symbol 113 GraphicUses:112Used by:114
Symbol 114 MovieClip {Text_None_U}Uses:113Used by:130
Symbol 115 BitmapUsed by:116
Symbol 116 GraphicUses:115Used by:117
Symbol 117 MovieClip {Text_None_V}Uses:116Used by:130
Symbol 118 BitmapUsed by:119
Symbol 119 GraphicUses:118Used by:120
Symbol 120 MovieClip {Text_None_W}Uses:119Used by:130
Symbol 121 BitmapUsed by:122
Symbol 122 GraphicUses:121Used by:123
Symbol 123 MovieClip {Text_None_X}Uses:122Used by:130
Symbol 124 BitmapUsed by:125
Symbol 125 GraphicUses:124Used by:126
Symbol 126 MovieClip {Text_None_Y}Uses:125Used by:130
Symbol 127 MovieClip {Text_None_Z}Uses:14Used by:130
Symbol 128 GraphicUsed by:129
Symbol 129 MovieClip {Text_None_SPACE}Uses:128Used by:130
Symbol 130 MovieClip {FlipsideFont}Uses:6 9 12 15 18 21 24 27 30 33 36 39 42 45 48 51 54 57 60 63 66 67 70 73 76 79 82 85 88 91 92 95 98 101 104 105 108 111 114 117 120 123 126 127 129Used by:171 180 181 182 188 189 196 201 230 258 259 260 261 262 267 268 273 319 1109 1110 1115 1118 1125 1126 1424  Timeline
Symbol 5 Bitmap {largeLight.png}Used by:593
Symbol 1 FontUsed by:2 3 1418 1419 1421
Symbol 2 TextUses:1Used by:4
Symbol 3 TextUses:1Used by:4
Symbol 4 MovieClip {bikeArrows}Uses:2 3
Symbol 132 BitmapUsed by:133
Symbol 133 GraphicUses:132Used by:134
Symbol 134 MovieClipUses:133Used by:Timeline
Symbol 135 FontUsed by:136 175 183 184 185 186 187 190 1121 1122 1123 1409 1432 1433 1436
Symbol 136 EditableTextUses:135Used by:Timeline
Symbol 137 FontUsed by:138 191 199 200 1410 1411 1412 1413 1414 1415 1425 1426 1427 1430 1431
Symbol 138 TextUses:137Used by:Timeline
Symbol 139 MovieClipUsed by:164  Timeline
Symbol 140 GraphicUsed by:141 222 1387
Symbol 141 Button {com.nitrome.game.NitromeLink}Uses:140Used by:164 1390 1402  Timeline
Symbol 142 BitmapUsed by:143
Symbol 143 GraphicUses:142Used by:144
Symbol 144 MovieClip {com.nitrome.game.NitromeIntroLetterR}Uses:143Used by:164 1390
Symbol 145 BitmapUsed by:146
Symbol 146 GraphicUses:145Used by:147
Symbol 147 MovieClip {com.nitrome.game.NitromeIntroLetterN}Uses:146Used by:164 1390
Symbol 148 BitmapUsed by:149
Symbol 149 GraphicUses:148Used by:150
Symbol 150 MovieClip {com.nitrome.game.NitromeIntroLetterT}Uses:149Used by:164 1390
Symbol 151 BitmapUsed by:152
Symbol 152 GraphicUses:151Used by:153
Symbol 153 MovieClip {com.nitrome.game.NitromeIntroLetterO}Uses:152Used by:164 1390
Symbol 154 BitmapUsed by:155
Symbol 155 GraphicUses:154Used by:156
Symbol 156 MovieClip {com.nitrome.game.NitromeIntroLetterI}Uses:155Used by:164 1390
Symbol 157 BitmapUsed by:158
Symbol 158 GraphicUses:157Used by:159
Symbol 159 MovieClip {com.nitrome.game.NitromeIntroLetterE}Uses:158Used by:164 1390
Symbol 160 BitmapUsed by:161
Symbol 161 GraphicUses:160Used by:162
Symbol 162 MovieClip {com.nitrome.game.NitromeIntroLetterM}Uses:161Used by:164 1390
Symbol 163 SoundUsed by:164
Symbol 164 MovieClip {com.nitrome.game.NitromeIntro}Uses:139 141 144 147 150 153 156 159 162 163Used by:1390  Timeline
Symbol 165 BitmapUsed by:166
Symbol 166 GraphicUses:165Used by:171
Symbol 167 BitmapUsed by:168
Symbol 168 GraphicUses:167Used by:171
Symbol 169 BitmapUsed by:170
Symbol 170 GraphicUses:169Used by:171
Symbol 171 MovieClip {Flipside_fla.overlaycontent_14}Uses:166 130 168 170Used by:172
Symbol 172 MovieClip {com.nitrome.game.Overlay}Uses:171Used by:1390
Symbol 173 BitmapUsed by:174
Symbol 174 GraphicUses:173Used by:201
Symbol 175 TextUses:135Used by:201
Symbol 176 BitmapUsed by:177
Symbol 177 GraphicUses:176Used by:180 181 182 188 189
Symbol 178 BitmapUsed by:179
Symbol 179 GraphicUses:178Used by:180 181 182 188 189
Symbol 180 MovieClip {com.nitrome.game.ContinueGameButton}Uses:177 130 179Used by:201 1390
Symbol 181 MovieClip {com.nitrome.game.EndGameButton}Uses:177 130 179Used by:201 1390
Symbol 182 MovieClip {com.nitrome.game.NextLevelButton}Uses:177 130 179Used by:201 1390
Symbol 183 TextUses:135Used by:201
Symbol 184 EditableTextUses:135Used by:201
Symbol 185 TextUses:135Used by:201
Symbol 186 EditableTextUses:135Used by:201
Symbol 187 TextUses:135Used by:201
Symbol 188 MovieClip {com.nitrome.game.RestartLevelButton}Uses:177 130 179Used by:201 1390
Symbol 189 MovieClip {com.nitrome.game.IngameSubmitScoreButton}Uses:177 130 179Used by:201 1390
Symbol 190 TextUses:135Used by:201
Symbol 191 EditableTextUses:137Used by:201
Symbol 192 BitmapUsed by:193
Symbol 193 GraphicUses:192Used by:196 262 268 1125 1126
Symbol 194 BitmapUsed by:195
Symbol 195 GraphicUses:194Used by:196 262 268 1125 1126
Symbol 196 MovieClip {com.nitrome.game.ExitToLevelSelectButton}Uses:193 130 195Used by:201 1390
Symbol 197 BitmapUsed by:198
Symbol 198 GraphicUses:197Used by:201
Symbol 199 TextUses:137Used by:201
Symbol 200 TextUses:137Used by:201
Symbol 201 MovieClip {Flipside_fla.popupcontent_16}Uses:174 175 180 181 130 182 183 184 185 186 187 188 189 190 191 196 198 199 200Used by:202
Symbol 202 MovieClip {com.nitrome.game.IngamePopup}Uses:201Used by:1390
Symbol 203 FontUsed by:204
Symbol 204 TextUses:203Used by:205
Symbol 205 MovieClipUses:204Used by:206
Symbol 206 MovieClip {com.nitrome.game.LoadingText}Uses:205Used by:1390
Symbol 207 SoundUsed by:208
Symbol 208 MovieClip {Flipside_fla.go_26}Uses:207Used by:221
Symbol 209 SoundUsed by:210
Symbol 210 MovieClip {Flipside_fla.threetwoone_27}Uses:209Used by:221
Symbol 211 SoundUsed by:212
Symbol 212 MovieClip {Flipside_fla.accelerator_28}Uses:211Used by:221
Symbol 213 SoundUsed by:214
Symbol 214 MovieClip {Flipside_fla.forceBlock_29}Uses:213Used by:221
Symbol 215 SoundUsed by:216
Symbol 216 MovieClip {Flipside_fla.laser_30}Uses:215Used by:221
Symbol 217 SoundUsed by:218
Symbol 218 MovieClip {Flipside_fla.beep1_31}Uses:217Used by:221
Symbol 219 SoundUsed by:220
Symbol 220 MovieClip {Flipside_fla.beep2_32}Uses:219Used by:221
Symbol 221 MovieClip {com.nitrome.game.SoundManager}Uses:208 210 212 214 216 218 220Used by:1390  Timeline
Symbol 222 MovieClipUses:140Used by:223
Symbol 223 MovieClip {com.nitrome.game.Transition}Uses:222Used by:1390  Timeline
Symbol 224 BitmapUsed by:225 229
Symbol 225 GraphicUses:224Used by:230
Symbol 226 BitmapUsed by:227
Symbol 227 GraphicUses:226Used by:230
Symbol 228 BitmapUsed by:229
Symbol 229 GraphicUses:228 224Used by:230
Symbol 230 MovieClip {com.nitrome.game.LevelStartButton}Uses:225 130 227 229Used by:1390  Timeline
Symbol 231 BitmapUsed by:232
Symbol 232 GraphicUses:231Used by:253 290
Symbol 233 BitmapUsed by:234
Symbol 234 GraphicUses:233Used by:235
Symbol 235 MovieClip {bike0Wheel}Uses:234Used by:250 1390 1423
Symbol 236 BitmapUsed by:237
Symbol 237 GraphicUses:236Used by:238
Symbol 238 MovieClip {bike0WheelLines}Uses:237Used by:250 1390 1423
Symbol 239 BitmapUsed by:240
Symbol 240 GraphicUses:239Used by:241
Symbol 241 MovieClip {bike0Chassis}Uses:240Used by:250 1390 1423
Symbol 242 BitmapUsed by:243
Symbol 243 GraphicUses:242Used by:244
Symbol 244 MovieClip {bike0ChassisNumbers}Uses:243Used by:250 1390 1423
Symbol 245 BitmapUsed by:246 561
Symbol 246 GraphicUses:245Used by:250 562 1423
Symbol 247 BitmapUsed by:248
Symbol 248 GraphicUses:247Used by:249 288 543 544
Symbol 249 MovieClip {bike0ChassisShine}Uses:248Used by:250 1390 1423
Symbol 250 MovieClipUses:235 238 241 244 246 249Used by:253 290 1420 1422
Symbol 251 BitmapUsed by:252
Symbol 252 GraphicUses:251Used by:253 290
Symbol 253 MovieClip {com.nitrome.game.OnePlayerButton}Uses:232 250 252Used by:1390  Timeline
Symbol 254 BitmapUsed by:255
Symbol 255 GraphicUses:254Used by:258 259 260 261
Symbol 256 BitmapUsed by:257
Symbol 257 GraphicUses:256Used by:258 259 260 261
Symbol 258 MovieClip {com.nitrome.game.PlayButton}Uses:255 130 257Used by:1390  Timeline
Symbol 259 MovieClip {com.nitrome.game.ScoresButton}Uses:255 130 257Used by:1390  Timeline
Symbol 260 MovieClip {com.nitrome.game.HelpButton}Uses:255 130 257Used by:1390  Timeline
Symbol 261 MovieClip {com.nitrome.game.CreditsButton}Uses:255 130 257Used by:1390  Timeline
Symbol 262 MovieClip {com.nitrome.game.IngameBackToTitleButton}Uses:193 130 195Used by:1390  Timeline
Symbol 263 BitmapUsed by:264
Symbol 264 GraphicUses:263Used by:267
Symbol 265 BitmapUsed by:266
Symbol 266 GraphicUses:265Used by:267
Symbol 267 MovieClip {com.nitrome.game.FinalBackToTitleButton}Uses:264 130 266Used by:1390  Timeline
Symbol 268 MovieClip {com.nitrome.game.BackToGameSelectButton}Uses:193 130 195Used by:1390  Timeline
Symbol 269 BitmapUsed by:270
Symbol 270 GraphicUses:269Used by:273
Symbol 271 BitmapUsed by:272
Symbol 272 GraphicUses:271Used by:273
Symbol 273 MovieClip {com.nitrome.game.FinalSubmitScoreButton}Uses:270 130 272Used by:1390  Timeline
Symbol 274 BitmapUsed by:275
Symbol 275 GraphicUses:274Used by:276
Symbol 276 MovieClip {bike1Wheel}Uses:275Used by:289 1390
Symbol 277 BitmapUsed by:278
Symbol 278 GraphicUses:277Used by:279
Symbol 279 MovieClip {bike1WheelLines}Uses:278Used by:289 1390
Symbol 280 BitmapUsed by:281
Symbol 281 GraphicUses:280Used by:282
Symbol 282 MovieClip {bike1Chassis}Uses:281Used by:289 1390
Symbol 283 BitmapUsed by:284
Symbol 284 GraphicUses:283Used by:285
Symbol 285 MovieClip {bike1ChassisNumbers}Uses:284Used by:289 1390
Symbol 286 BitmapUsed by:287 569
Symbol 287 GraphicUses:286Used by:289 570
Symbol 288 MovieClip {bike1ChassisShine}Uses:248Used by:289 1390
Symbol 289 MovieClipUses:276 279 282 285 287 288Used by:290
Symbol 290 MovieClip {com.nitrome.game.TwoPlayerButton}Uses:232 250 289 252Used by:1390  Timeline
Symbol 291 BitmapUsed by:292
Symbol 292 GraphicUses:291Used by:298
Symbol 293 BitmapUsed by:295
Symbol 294 BitmapUsed by:295
Symbol 295 GraphicUses:293 294Used by:298
Symbol 296 BitmapUsed by:297
Symbol 297 GraphicUses:296Used by:298 304
Symbol 298 MovieClip {com.nitrome.game.FxToggle}Uses:292 295 297Used by:1390  Timeline
Symbol 299 BitmapUsed by:300
Symbol 300 GraphicUses:299Used by:304
Symbol 301 BitmapUsed by:303
Symbol 302 BitmapUsed by:303
Symbol 303 GraphicUses:301 302Used by:304
Symbol 304 MovieClip {com.nitrome.game.MusicToggle}Uses:300 303 297Used by:1390  Timeline
Symbol 305 GraphicUsed by:312
Symbol 306 BitmapUsed by:307
Symbol 307 GraphicUses:306Used by:312
Symbol 308 BitmapUsed by:309
Symbol 309 GraphicUses:308Used by:312
Symbol 310 BitmapUsed by:311
Symbol 311 GraphicUses:310Used by:312
Symbol 312 MovieClip {com.nitrome.game.PauseButton}Uses:305 307 309 311Used by:1390  Timeline
Symbol 313 BitmapUsed by:316
Symbol 314 BitmapUsed by:316
Symbol 315 BitmapUsed by:316
Symbol 316 GraphicUses:313 314 315Used by:319
Symbol 317 BitmapUsed by:318
Symbol 318 GraphicUses:317Used by:319
Symbol 319 MovieClip {com.nitrome.flipside.PlayerStats}Uses:130 316 318Used by:1390
Symbol 320 BitmapUsed by:321
Symbol 321 GraphicUses:320Used by:322
Symbol 322 MovieClip {box}Uses:321Used by:1390
Symbol 323 BitmapUsed by:324
Symbol 324 GraphicUses:323Used by:325
Symbol 325 MovieClip {chunkCutBox}Uses:324Used by:1390
Symbol 326 BitmapUsed by:327
Symbol 327 GraphicUses:326Used by:328
Symbol 328 MovieClip {chunkSmallBox}Uses:327Used by:1390
Symbol 329 BitmapUsed by:330
Symbol 330 GraphicUses:329Used by:331
Symbol 331 MovieClip {chunkPentagon}Uses:330Used by:1390
Symbol 332 BitmapUsed by:333
Symbol 333 GraphicUses:332Used by:334
Symbol 334 MovieClip {chunkTriangle}Uses:333Used by:1390
Symbol 335 BitmapUsed by:336
Symbol 336 GraphicUses:335Used by:337
Symbol 337 MovieClip {slidingPlatform}Uses:336Used by:1390
Symbol 338 BitmapUsed by:339
Symbol 339 GraphicUses:338Used by:356 425
Symbol 340 BitmapUsed by:341 359 368 379 388 399 408 417
Symbol 341 GraphicUses:340Used by:356
Symbol 342 BitmapUsed by:343 360 369 380 389 400 409 418
Symbol 343 GraphicUses:342Used by:356
Symbol 344 BitmapUsed by:345 361 370 381 390 401 410 419
Symbol 345 GraphicUses:344Used by:356
Symbol 346 BitmapUsed by:347 362 371 382 391 402 411 420
Symbol 347 GraphicUses:346Used by:356
Symbol 348 BitmapUsed by:349 363 372 383 392 403 412 421
Symbol 349 GraphicUses:348Used by:356
Symbol 350 BitmapUsed by:351 364 373 384 393 404 413 422
Symbol 351 GraphicUses:350Used by:356
Symbol 352 BitmapUsed by:353 365 374 385 394 405 414 423
Symbol 353 GraphicUses:352Used by:356
Symbol 354 BitmapUsed by:355 366 375 386 395 406 415 424
Symbol 355 GraphicUses:354Used by:356
Symbol 356 MovieClip {acceleratorFloor1}Uses:339 341 343 345 347 349 351 353 355Used by:1390
Symbol 357 BitmapUsed by:358
Symbol 358 GraphicUses:357Used by:367 376
Symbol 359 GraphicUses:340Used by:367
Symbol 360 GraphicUses:342Used by:367
Symbol 361 GraphicUses:344Used by:367
Symbol 362 GraphicUses:346Used by:367
Symbol 363 GraphicUses:348Used by:367
Symbol 364 GraphicUses:350Used by:367
Symbol 365 GraphicUses:352Used by:367
Symbol 366 GraphicUses:354Used by:367
Symbol 367 MovieClip {acceleratorLHWall1}Uses:358 359 360 361 362 363 364 365 366Used by:1390
Symbol 368 GraphicUses:340Used by:376
Symbol 369 GraphicUses:342Used by:376
Symbol 370 GraphicUses:344Used by:376
Symbol 371 GraphicUses:346Used by:376
Symbol 372 GraphicUses:348Used by:376
Symbol 373 GraphicUses:350Used by:376
Symbol 374 GraphicUses:352Used by:376
Symbol 375 GraphicUses:354Used by:376
Symbol 376 MovieClip {acceleratorLHWall2}Uses:358 368 369 370 371 372 373 374 375Used by:1390
Symbol 377 BitmapUsed by:378
Symbol 378 GraphicUses:377Used by:387 396
Symbol 379 GraphicUses:340Used by:387
Symbol 380 GraphicUses:342Used by:387
Symbol 381 GraphicUses:344Used by:387
Symbol 382 GraphicUses:346Used by:387
Symbol 383 GraphicUses:348Used by:387
Symbol 384 GraphicUses:350Used by:387
Symbol 385 GraphicUses:352Used by:387
Symbol 386 GraphicUses:354Used by:387
Symbol 387 MovieClip {acceleratorCeiling1}Uses:378 379 380 381 382 383 384 385 386Used by:1390
Symbol 388 GraphicUses:340Used by:396
Symbol 389 GraphicUses:342Used by:396
Symbol 390 GraphicUses:344Used by:396
Symbol 391 GraphicUses:346Used by:396
Symbol 392 GraphicUses:348Used by:396
Symbol 393 GraphicUses:350Used by:396
Symbol 394 GraphicUses:352Used by:396
Symbol 395 GraphicUses:354Used by:396
Symbol 396 MovieClip {acceleratorCeiling2}Uses:378 388 389 390 391 392 393 394 395Used by:1390
Symbol 397 BitmapUsed by:398
Symbol 398 GraphicUses:397Used by:407 416
Symbol 399 GraphicUses:340Used by:407
Symbol 400 GraphicUses:342Used by:407
Symbol 401 GraphicUses:344Used by:407
Symbol 402 GraphicUses:346Used by:407
Symbol 403 GraphicUses:348Used by:407
Symbol 404 GraphicUses:350Used by:407
Symbol 405 GraphicUses:352Used by:407
Symbol 406 GraphicUses:354Used by:407
Symbol 407 MovieClip {acceleratorRHWall1}Uses:398 399 400 401 402 403 404 405 406Used by:1390
Symbol 408 GraphicUses:340Used by:416
Symbol 409 GraphicUses:342Used by:416
Symbol 410 GraphicUses:344Used by:416
Symbol 411 GraphicUses:346Used by:416
Symbol 412 GraphicUses:348Used by:416
Symbol 413 GraphicUses:350Used by:416
Symbol 414 GraphicUses:352Used by:416
Symbol 415 GraphicUses:354Used by:416
Symbol 416 MovieClip {acceleratorRHWall2}Uses:398 408 409 410 411 412 413 414 415Used by:1390
Symbol 417 GraphicUses:340Used by:425
Symbol 418 GraphicUses:342Used by:425
Symbol 419 GraphicUses:344Used by:425
Symbol 420 GraphicUses:346Used by:425
Symbol 421 GraphicUses:348Used by:425
Symbol 422 GraphicUses:350Used by:425
Symbol 423 GraphicUses:352Used by:425
Symbol 424 GraphicUses:354Used by:425
Symbol 425 MovieClip {acceleratorFloor2}Uses:339 417 418 419 420 421 422 423 424Used by:1390
Symbol 426 BitmapUsed by:427
Symbol 427 GraphicUses:426Used by:428
Symbol 428 MovieClip {smallGreenLight}Uses:427Used by:1390
Symbol 429 BitmapUsed by:430
Symbol 430 GraphicUses:429Used by:431
Symbol 431 MovieClip {smallPurpleLight}Uses:430Used by:1390
Symbol 432 BitmapUsed by:433
Symbol 433 GraphicUses:432Used by:434
Symbol 434 MovieClip {bigCircle3}Uses:433Used by:1390
Symbol 435 BitmapUsed by:436
Symbol 436 GraphicUses:435Used by:437
Symbol 437 MovieClip {bigCircle2}Uses:436Used by:1390
Symbol 438 BitmapUsed by:439
Symbol 439 GraphicUses:438Used by:440
Symbol 440 MovieClip {bigCircle1}Uses:439Used by:1390
Symbol 441 BitmapUsed by:442
Symbol 442 GraphicUses:441Used by:443
Symbol 443 MovieClip {bigCircle4}Uses:442Used by:1390
Symbol 444 BitmapUsed by:445
Symbol 445 GraphicUses:444Used by:446
Symbol 446 MovieClip {peg}Uses:445Used by:1390
Symbol 447 BitmapUsed by:448
Symbol 448 GraphicUses:447Used by:449
Symbol 449 MovieClip {catflapBody}Uses:448Used by:1390
Symbol 450 BitmapUsed by:451
Symbol 451 GraphicUses:450Used by:452
Symbol 452 MovieClip {catflapHinge}Uses:451Used by:1390
Symbol 453 BitmapUsed by:454
Symbol 454 GraphicUses:453Used by:455
Symbol 455 MovieClip {wreckingBall}Uses:454Used by:1390
Symbol 456 BitmapUsed by:457
Symbol 457 GraphicUses:456Used by:458
Symbol 458 MovieClip {seesaw2base}Uses:457Used by:1390
Symbol 459 BitmapUsed by:460
Symbol 460 GraphicUses:459Used by:461
Symbol 461 MovieClip {seesaw1fulcrum}Uses:460Used by:1390
Symbol 462 BitmapUsed by:463
Symbol 463 GraphicUses:462Used by:464
Symbol 464 MovieClip {seesawPivot}Uses:463Used by:1390
Symbol 465 BitmapUsed by:466
Symbol 466 GraphicUses:465Used by:467
Symbol 467 MovieClip {seesaw1base}Uses:466Used by:1390
Symbol 468 BitmapUsed by:469
Symbol 469 GraphicUses:468Used by:470
Symbol 470 MovieClip {hangingPlatformCable}Uses:469Used by:1390
Symbol 471 BitmapUsed by:472
Symbol 472 GraphicUses:471Used by:473
Symbol 473 MovieClip {drawbridge2}Uses:472Used by:1390
Symbol 474 BitmapUsed by:475
Symbol 475 GraphicUses:474Used by:476
Symbol 476 MovieClip {drawbridge1}Uses:475Used by:1390
Symbol 477 BitmapUsed by:478
Symbol 478 GraphicUses:477Used by:479
Symbol 479 MovieClip {hangingPlatformAnchor}Uses:478Used by:1390
Symbol 480 BitmapUsed by:481
Symbol 481 GraphicUses:480Used by:482
Symbol 482 MovieClip {hangingPlatformBase}Uses:481Used by:1390
Symbol 483 BitmapUsed by:484
Symbol 484 GraphicUses:483Used by:485
Symbol 485 MovieClip {trapdoor}Uses:484Used by:1390
Symbol 486 BitmapUsed by:487
Symbol 487 GraphicUses:486Used by:488
Symbol 488 MovieClip {switch}Uses:487Used by:1390
Symbol 489 BitmapUsed by:490
Symbol 490 GraphicUses:489Used by:491
Symbol 491 MovieClip {ropeBridgeRung}Uses:490Used by:1390
Symbol 492 BitmapUsed by:493
Symbol 493 GraphicUses:492Used by:494
Symbol 494 MovieClip {catcherCar1}Uses:493Used by:1390
Symbol 495 BitmapUsed by:496
Symbol 496 GraphicUses:495Used by:497
Symbol 497 MovieClip {catcherArm2}Uses:496Used by:1390
Symbol 498 BitmapUsed by:499
Symbol 499 GraphicUses:498Used by:500
Symbol 500 MovieClip {catcherArm1}Uses:499Used by:1390
Symbol 501 BitmapUsed by:502
Symbol 502 GraphicUses:501Used by:503
Symbol 503 MovieClip {catcherCar2}Uses:502Used by:1390
Symbol 504 BitmapUsed by:505
Symbol 505 GraphicUses:504Used by:506
Symbol 506 MovieClip {cogShape1}Uses:505Used by:1390
Symbol 507 BitmapUsed by:508
Symbol 508 GraphicUses:507Used by:509
Symbol 509 MovieClip {cogShape2}Uses:508Used by:1390
Symbol 510 BitmapUsed by:511
Symbol 511 GraphicUses:510Used by:512
Symbol 512 MovieClip {flatShape2}Uses:511Used by:1390
Symbol 513 BitmapUsed by:514
Symbol 514 GraphicUses:513Used by:515
Symbol 515 MovieClip {flatShape1}Uses:514Used by:1390
Symbol 516 BitmapUsed by:517
Symbol 517 GraphicUses:516Used by:518
Symbol 518 MovieClip {sliceShape3}Uses:517Used by:1390
Symbol 519 BitmapUsed by:520
Symbol 520 GraphicUses:519Used by:521
Symbol 521 MovieClip {sliceShape2}Uses:520Used by:1390
Symbol 522 BitmapUsed by:523
Symbol 523 GraphicUses:522Used by:524
Symbol 524 MovieClip {sliceShape1}Uses:523Used by:1390
Symbol 525 BitmapUsed by:526
Symbol 526 GraphicUses:525Used by:527
Symbol 527 MovieClip {pegShape2}Uses:526Used by:1390
Symbol 528 BitmapUsed by:529
Symbol 529 GraphicUses:528Used by:530
Symbol 530 MovieClip {pegShape1}Uses:529Used by:1390
Symbol 531 BitmapUsed by:532
Symbol 532 GraphicUses:531Used by:533
Symbol 533 MovieClip {bike2Chassis}Uses:532Used by:1390
Symbol 534 BitmapUsed by:535
Symbol 535 GraphicUses:534Used by:536
Symbol 536 MovieClip {bike3Chassis}Uses:535Used by:1390
Symbol 537 BitmapUsed by:538
Symbol 538 GraphicUses:537Used by:539
Symbol 539 MovieClip {bike2ChassisNumbers}Uses:538Used by:1390
Symbol 540 BitmapUsed by:541
Symbol 541 GraphicUses:540Used by:542
Symbol 542 MovieClip {bike3ChassisNumbers}Uses:541Used by:1390
Symbol 543 MovieClip {bike2ChassisShine}Uses:248Used by:1390
Symbol 544 MovieClip {bike3ChassisShine}Uses:248Used by:1390
Symbol 545 BitmapUsed by:546 553
Symbol 546 GraphicUses:545Used by:554
Symbol 547 BitmapUsed by:548
Symbol 548 GraphicUses:547Used by:554
Symbol 549 BitmapUsed by:550
Symbol 550 GraphicUses:549Used by:554
Symbol 551 BitmapUsed by:552
Symbol 552 GraphicUses:551Used by:554
Symbol 553 GraphicUses:545Used by:554
Symbol 554 MovieClip {bike2Rider}Uses:546 548 550 552 553Used by:1390
Symbol 555 BitmapUsed by:556
Symbol 556 GraphicUses:555Used by:562 1423
Symbol 557 BitmapUsed by:558
Symbol 558 GraphicUses:557Used by:562 1423
Symbol 559 BitmapUsed by:560
Symbol 560 GraphicUses:559Used by:562 1423
Symbol 561 GraphicUses:245Used by:562 1423
Symbol 562 MovieClip {bike0Rider}Uses:246 556 558 560 561Used by:1390
Symbol 563 BitmapUsed by:564
Symbol 564 GraphicUses:563Used by:570
Symbol 565 BitmapUsed by:566
Symbol 566 GraphicUses:565Used by:570
Symbol 567 BitmapUsed by:568
Symbol 568 GraphicUses:567Used by:570
Symbol 569 GraphicUses:286Used by:570
Symbol 570 MovieClip {bike1Rider}Uses:287 564 566 568 569Used by:1390
Symbol 571 BitmapUsed by:572 579
Symbol 572 GraphicUses:571Used by:580
Symbol 573 BitmapUsed by:574
Symbol 574 GraphicUses:573Used by:580
Symbol 575 BitmapUsed by:576
Symbol 576 GraphicUses:575Used by:580
Symbol 577 BitmapUsed by:578
Symbol 578 GraphicUses:577Used by:580
Symbol 579 GraphicUses:571Used by:580
Symbol 580 MovieClip {bike3Rider}Uses:572 574 576 578 579Used by:1390
Symbol 581 BitmapUsed by:582
Symbol 582 GraphicUses:581Used by:583
Symbol 583 MovieClip {bike2WheelLines}Uses:582Used by:1390
Symbol 584 BitmapUsed by:585
Symbol 585 GraphicUses:584Used by:586
Symbol 586 MovieClip {bike3WheelLines}Uses:585Used by:1390
Symbol 587 BitmapUsed by:588
Symbol 588 GraphicUses:587Used by:589
Symbol 589 MovieClip {bike2Wheel}Uses:588Used by:1390
Symbol 590 BitmapUsed by:591
Symbol 591 GraphicUses:590Used by:592
Symbol 592 MovieClip {bike3Wheel}Uses:591Used by:1390
Symbol 593 MovieClip {largeLight}Uses:5Used by:1390
Symbol 594 BitmapUsed by:595
Symbol 595 GraphicUses:594Used by:596
Symbol 596 MovieClip {smallLight}Uses:595Used by:1390
Symbol 597 BitmapUsed by:598
Symbol 598 GraphicUses:597Used by:599
Symbol 599 MovieClip {backlayer}Uses:598Used by:1390
Symbol 600 BitmapUsed by:601
Symbol 601 GraphicUses:600Used by:602
Symbol 602 MovieClip {midlayer}Uses:601Used by:1390
Symbol 603 BitmapUsed by:604
Symbol 604 GraphicUses:603Used by:605
Symbol 605 MovieClip {turnstileCenter1}Uses:604Used by:1390
Symbol 606 BitmapUsed by:607
Symbol 607 GraphicUses:606Used by:608
Symbol 608 MovieClip {turnstileBlade}Uses:607Used by:1390
Symbol 609 BitmapUsed by:610
Symbol 610 GraphicUses:609Used by:611
Symbol 611 MovieClip {turnstileCenter2}Uses:610Used by:1390
Symbol 612 BitmapUsed by:613 617
Symbol 613 GraphicUses:612Used by:616
Symbol 614 BitmapUsed by:615 618
Symbol 615 GraphicUses:614Used by:616
Symbol 616 MovieClip {laserBeamEnd}Uses:613 615Used by:1390
Symbol 617 GraphicUses:612Used by:619
Symbol 618 GraphicUses:614Used by:619
Symbol 619 MovieClip {laserBeam2End}Uses:617 618Used by:1390
Symbol 620 BitmapUsed by:621 625
Symbol 621 GraphicUses:620Used by:624
Symbol 622 BitmapUsed by:623 626
Symbol 623 GraphicUses:622Used by:624
Symbol 624 MovieClip {laserBeamMiddle}Uses:621 623Used by:1390
Symbol 625 GraphicUses:620Used by:627
Symbol 626 GraphicUses:622Used by:627
Symbol 627 MovieClip {laserBeam2Middle}Uses:625 626Used by:1390
Symbol 628 BitmapUsed by:629
Symbol 629 GraphicUses:628Used by:630
Symbol 630 MovieClip {laserEmitterTTFT}Uses:629Used by:1390
Symbol 631 BitmapUsed by:632
Symbol 632 GraphicUses:631Used by:633
Symbol 633 MovieClip {laserEmitterFFFT}Uses:632Used by:1390
Symbol 634 BitmapUsed by:635
Symbol 635 GraphicUses:634Used by:636
Symbol 636 MovieClip {laserEmitterFTFT}Uses:635Used by:1390
Symbol 637 BitmapUsed by:638
Symbol 638 GraphicUses:637Used by:639
Symbol 639 MovieClip {laserEmitterFFTF}Uses:638Used by:1390
Symbol 640 BitmapUsed by:641
Symbol 641 GraphicUses:640Used by:642
Symbol 642 MovieClip {laserEmitterFTTT}Uses:641Used by:1390
Symbol 643 BitmapUsed by:644
Symbol 644 GraphicUses:643Used by:645
Symbol 645 MovieClip {laserEmitterFTTF}Uses:644Used by:1390
Symbol 646 BitmapUsed by:647
Symbol 647 GraphicUses:646Used by:648
Symbol 648 MovieClip {laserEmitterTTTT}Uses:647Used by:1390
Symbol 649 BitmapUsed by:650
Symbol 650 GraphicUses:649Used by:651
Symbol 651 MovieClip {laserEmitterTFFT}Uses:650Used by:1390
Symbol 652 BitmapUsed by:653
Symbol 653 GraphicUses:652Used by:654
Symbol 654 MovieClip {laserEmitterTTFF}Uses:653Used by:1390
Symbol 655 BitmapUsed by:656
Symbol 656 GraphicUses:655Used by:657
Symbol 657 MovieClip {laserEmitterTFTT}Uses:656Used by:1390
Symbol 658 BitmapUsed by:659
Symbol 659 GraphicUses:658Used by:660
Symbol 660 MovieClip {laserEmitterFFTT}Uses:659Used by:1390
Symbol 661 BitmapUsed by:662
Symbol 662 GraphicUses:661Used by:663
Symbol 663 MovieClip {laserEmitterTFTF}Uses:662Used by:1390
Symbol 664 BitmapUsed by:665
Symbol 665 GraphicUses:664Used by:666
Symbol 666 MovieClip {laserEmitterTTTF}Uses:665Used by:1390
Symbol 667 BitmapUsed by:668
Symbol 668 GraphicUses:667Used by:669
Symbol 669 MovieClip {laserEmitterTFFF}Uses:668Used by:1390
Symbol 670 BitmapUsed by:671
Symbol 671 GraphicUses:670Used by:672
Symbol 672 MovieClip {laserEmitterFTFF}Uses:671Used by:1390
Symbol 673 BitmapUsed by:674
Symbol 674 GraphicUses:673Used by:689
Symbol 675 BitmapUsed by:676
Symbol 676 GraphicUses:675Used by:689
Symbol 677 BitmapUsed by:678
Symbol 678 GraphicUses:677Used by:689
Symbol 679 BitmapUsed by:680
Symbol 680 GraphicUses:679Used by:689
Symbol 681 BitmapUsed by:682
Symbol 682 GraphicUses:681Used by:689
Symbol 683 BitmapUsed by:684
Symbol 684 GraphicUses:683Used by:689
Symbol 685 BitmapUsed by:686
Symbol 686 GraphicUses:685Used by:689
Symbol 687 BitmapUsed by:688
Symbol 688 GraphicUses:687Used by:689
Symbol 689 MovieClip {forceBlock1}Uses:674 676 678 680 682 684 686 688Used by:1390
Symbol 690 BitmapUsed by:691 707 716 725
Symbol 691 GraphicUses:690Used by:706
Symbol 692 BitmapUsed by:693 708 717 726
Symbol 693 GraphicUses:692Used by:706
Symbol 694 BitmapUsed by:695 709 718 727
Symbol 695 GraphicUses:694Used by:706
Symbol 696 BitmapUsed by:697 710 719 728
Symbol 697 GraphicUses:696Used by:706
Symbol 698 BitmapUsed by:699 711 720 729
Symbol 699 GraphicUses:698Used by:706
Symbol 700 BitmapUsed by:701 712 721 730
Symbol 701 GraphicUses:700Used by:706
Symbol 702 BitmapUsed by:703 713 722 731
Symbol 703 GraphicUses:702Used by:706
Symbol 704 BitmapUsed by:705 714 723 732
Symbol 705 GraphicUses:704Used by:706
Symbol 706 MovieClip {forceBlock3}Uses:691 693 695 697 699 701 703 705Used by:1390
Symbol 707 GraphicUses:690Used by:715
Symbol 708 GraphicUses:692Used by:715
Symbol 709 GraphicUses:694Used by:715
Symbol 710 GraphicUses:696Used by:715
Symbol 711 GraphicUses:698Used by:715
Symbol 712 GraphicUses:700Used by:715
Symbol 713 GraphicUses:702Used by:715
Symbol 714 GraphicUses:704Used by:715
Symbol 715 MovieClip {forceBlock4}Uses:707 708 709 710 711 712 713 714Used by:1390
Symbol 716 GraphicUses:690Used by:724
Symbol 717 GraphicUses:692Used by:724
Symbol 718 GraphicUses:694Used by:724
Symbol 719 GraphicUses:696Used by:724
Symbol 720 GraphicUses:698Used by:724
Symbol 721 GraphicUses:700Used by:724
Symbol 722 GraphicUses:702Used by:724
Symbol 723 GraphicUses:704Used by:724
Symbol 724 MovieClip {forceBlock5}Uses:716 717 718 719 720 721 722 723Used by:1390
Symbol 725 GraphicUses:690Used by:733
Symbol 726 GraphicUses:692Used by:733
Symbol 727 GraphicUses:694Used by:733
Symbol 728 GraphicUses:696Used by:733
Symbol 729 GraphicUses:698Used by:733
Symbol 730 GraphicUses:700Used by:733
Symbol 731 GraphicUses:702Used by:733
Symbol 732 GraphicUses:704Used by:733
Symbol 733 MovieClip {forceBlock2}Uses:725 726 727 728 729 730 731 732Used by:1390
Symbol 734 BitmapUsed by:735
Symbol 735 GraphicUses:734Used by:736
Symbol 736 MovieClip {tile_3}Uses:735Used by:1390
Symbol 737 BitmapUsed by:738
Symbol 738 GraphicUses:737Used by:739
Symbol 739 MovieClip {tile_4}Uses:738Used by:1390
Symbol 740 BitmapUsed by:741
Symbol 741 GraphicUses:740Used by:742
Symbol 742 MovieClip {tile_5}Uses:741Used by:1390
Symbol 743 BitmapUsed by:744
Symbol 744 GraphicUses:743Used by:745
Symbol 745 MovieClip {tile_6}Uses:744Used by:1390
Symbol 746 BitmapUsed by:747
Symbol 747 GraphicUses:746Used by:748
Symbol 748 MovieClip {tile_8}Uses:747Used by:1390
Symbol 749 BitmapUsed by:750
Symbol 750 GraphicUses:749Used by:751
Symbol 751 MovieClip {tile_10}Uses:750Used by:1390
Symbol 752 BitmapUsed by:753
Symbol 753 GraphicUses:752Used by:754
Symbol 754 MovieClip {tile_12}Uses:753Used by:1390
Symbol 755 BitmapUsed by:756
Symbol 756 GraphicUses:755Used by:757
Symbol 757 MovieClip {tile_14}Uses:756Used by:1390
Symbol 758 BitmapUsed by:759
Symbol 759 GraphicUses:758Used by:760
Symbol 760 MovieClip {tile_17}Uses:759Used by:1390
Symbol 761 BitmapUsed by:762
Symbol 762 GraphicUses:761Used by:763
Symbol 763 MovieClip {tile_19}Uses:762Used by:1390
Symbol 764 BitmapUsed by:765
Symbol 765 GraphicUses:764Used by:766
Symbol 766 MovieClip {tile_21}Uses:765Used by:1390
Symbol 767 BitmapUsed by:768
Symbol 768 GraphicUses:767Used by:769
Symbol 769 MovieClip {tile_23}Uses:768Used by:1390
Symbol 770 BitmapUsed by:771
Symbol 771 GraphicUses:770Used by:772
Symbol 772 MovieClip {tile_29}Uses:771Used by:1390
Symbol 773 BitmapUsed by:774
Symbol 774 GraphicUses:773Used by:775
Symbol 775 MovieClip {tile_30}Uses:774Used by:1390
Symbol 776 BitmapUsed by:777
Symbol 777 GraphicUses:776Used by:778
Symbol 778 MovieClip {tile_33}Uses:777Used by:1390
Symbol 779 BitmapUsed by:780
Symbol 780 GraphicUses:779Used by:781
Symbol 781 MovieClip {tile_35}Uses:780Used by:1390
Symbol 782 BitmapUsed by:783
Symbol 783 GraphicUses:782Used by:784
Symbol 784 MovieClip {tile_37}Uses:783Used by:1390
Symbol 785 BitmapUsed by:786
Symbol 786 GraphicUses:785Used by:787
Symbol 787 MovieClip {tile_40}Uses:786Used by:1390
Symbol 788 BitmapUsed by:789
Symbol 789 GraphicUses:788Used by:790
Symbol 790 MovieClip {tile_41}Uses:789Used by:1390
Symbol 791 BitmapUsed by:792
Symbol 792 GraphicUses:791Used by:793
Symbol 793 MovieClip {tile_42}Uses:792Used by:1390
Symbol 794 BitmapUsed by:795
Symbol 795 GraphicUses:794Used by:796
Symbol 796 MovieClip {tile_43}Uses:795Used by:1390
Symbol 797 BitmapUsed by:798
Symbol 798 GraphicUses:797Used by:799
Symbol 799 MovieClip {tile_44}Uses:798Used by:1390
Symbol 800 BitmapUsed by:801
Symbol 801 GraphicUses:800Used by:802
Symbol 802 MovieClip {tile_45}Uses:801Used by:1390
Symbol 803 BitmapUsed by:804
Symbol 804 GraphicUses:803Used by:805
Symbol 805 MovieClip {tile_46}Uses:804Used by:1390
Symbol 806 BitmapUsed by:807
Symbol 807 GraphicUses:806Used by:808
Symbol 808 MovieClip {tile_47}Uses:807Used by:1390
Symbol 809 BitmapUsed by:810
Symbol 810 GraphicUses:809Used by:811
Symbol 811 MovieClip {tile_va}Uses:810Used by:1390
Symbol 812 BitmapUsed by:813
Symbol 813 GraphicUses:812Used by:814
Symbol 814 MovieClip {tile_vb}Uses:813Used by:1390
Symbol 815 BitmapUsed by:816
Symbol 816 GraphicUses:815Used by:817
Symbol 817 MovieClip {tile_55}Uses:816Used by:1390
Symbol 818 BitmapUsed by:819
Symbol 819 GraphicUses:818Used by:820
Symbol 820 MovieClip {tile_vc}Uses:819Used by:1390
Symbol 821 BitmapUsed by:822
Symbol 822 GraphicUses:821Used by:823
Symbol 823 MovieClip {tile_vd}Uses:822Used by:1390
Symbol 824 BitmapUsed by:825
Symbol 825 GraphicUses:824Used by:826
Symbol 826 MovieClip {tile_58}Uses:825Used by:1390
Symbol 827 BitmapUsed by:828
Symbol 828 GraphicUses:827Used by:829
Symbol 829 MovieClip {tile_60}Uses:828Used by:1390
Symbol 830 BitmapUsed by:831
Symbol 831 GraphicUses:830Used by:832
Symbol 832 MovieClip {tile_61}Uses:831Used by:1390
Symbol 833 BitmapUsed by:834
Symbol 834 GraphicUses:833Used by:835
Symbol 835 MovieClip {tile_62}Uses:834Used by:1390
Symbol 836 BitmapUsed by:837
Symbol 837 GraphicUses:836Used by:838
Symbol 838 MovieClip {tile_64}Uses:837Used by:1390
Symbol 839 BitmapUsed by:840
Symbol 840 GraphicUses:839Used by:841
Symbol 841 MovieClip {tile_65}Uses:840Used by:1390
Symbol 842 BitmapUsed by:843
Symbol 843 GraphicUses:842Used by:844
Symbol 844 MovieClip {tile_67}Uses:843Used by:1390
Symbol 845 BitmapUsed by:846
Symbol 846 GraphicUses:845Used by:847
Symbol 847 MovieClip {tile_69}Uses:846Used by:1390
Symbol 848 BitmapUsed by:849
Symbol 849 GraphicUses:848Used by:850
Symbol 850 MovieClip {tile_71}Uses:849Used by:1390
Symbol 851 BitmapUsed by:852
Symbol 852 GraphicUses:851Used by:853
Symbol 853 MovieClip {tile_72}Uses:852Used by:1390
Symbol 854 BitmapUsed by:855
Symbol 855 GraphicUses:854Used by:856
Symbol 856 MovieClip {tile_73}Uses:855Used by:1390
Symbol 857 BitmapUsed by:858
Symbol 858 GraphicUses:857Used by:859
Symbol 859 MovieClip {tile_74}Uses:858Used by:1390
Symbol 860 BitmapUsed by:861
Symbol 861 GraphicUses:860Used by:862
Symbol 862 MovieClip {tile_77}Uses:861Used by:1390
Symbol 863 BitmapUsed by:864
Symbol 864 GraphicUses:863Used by:865
Symbol 865 MovieClip {tile_78}Uses:864Used by:1390
Symbol 866 BitmapUsed by:867
Symbol 867 GraphicUses:866Used by:868
Symbol 868 MovieClip {tile_81}Uses:867Used by:1390
Symbol 869 BitmapUsed by:870
Symbol 870 GraphicUses:869Used by:871
Symbol 871 MovieClip {tile_84}Uses:870Used by:1390
Symbol 872 BitmapUsed by:873
Symbol 873 GraphicUses:872Used by:874
Symbol 874 MovieClip {tile_85}Uses:873Used by:1390
Symbol 875 BitmapUsed by:876
Symbol 876 GraphicUses:875Used by:877
Symbol 877 MovieClip {tile_86}Uses:876Used by:1390
Symbol 878 BitmapUsed by:879
Symbol 879 GraphicUses:878Used by:880
Symbol 880 MovieClip {tile_87}Uses:879Used by:1390
Symbol 881 BitmapUsed by:882
Symbol 882 GraphicUses:881Used by:883
Symbol 883 MovieClip {tile_88}Uses:882Used by:1390
Symbol 884 BitmapUsed by:885
Symbol 885 GraphicUses:884Used by:886
Symbol 886 MovieClip {tile_89}Uses:885Used by:1390
Symbol 887 BitmapUsed by:888
Symbol 888 GraphicUses:887Used by:889
Symbol 889 MovieClip {tile_90}Uses:888Used by:1390
Symbol 890 BitmapUsed by:891
Symbol 891 GraphicUses:890Used by:892
Symbol 892 MovieClip {tile_92}Uses:891Used by:1390
Symbol 893 BitmapUsed by:894
Symbol 894 GraphicUses:893Used by:895
Symbol 895 MovieClip {tile_93}Uses:894Used by:1390
Symbol 896 BitmapUsed by:897
Symbol 897 GraphicUses:896Used by:898
Symbol 898 MovieClip {tile_94}Uses:897Used by:1390
Symbol 899 BitmapUsed by:900
Symbol 900 GraphicUses:899Used by:901
Symbol 901 MovieClip {tile_95}Uses:900Used by:1390
Symbol 902 BitmapUsed by:903
Symbol 903 GraphicUses:902Used by:904
Symbol 904 MovieClip {tile_96}Uses:903Used by:1390
Symbol 905 BitmapUsed by:906
Symbol 906 GraphicUses:905Used by:907
Symbol 907 MovieClip {tile_98}Uses:906Used by:1390
Symbol 908 BitmapUsed by:909
Symbol 909 GraphicUses:908Used by:910
Symbol 910 MovieClip {tile_99}Uses:909Used by:1390
Symbol 911 BitmapUsed by:912
Symbol 912 GraphicUses:911Used by:913
Symbol 913 MovieClip {tile_101}Uses:912Used by:1390
Symbol 914 BitmapUsed by:915
Symbol 915 GraphicUses:914Used by:916
Symbol 916 MovieClip {tile_102}Uses:915Used by:1390
Symbol 917 BitmapUsed by:918
Symbol 918 GraphicUses:917Used by:919
Symbol 919 MovieClip {tile_103}Uses:918Used by:1390
Symbol 920 BitmapUsed by:921
Symbol 921 GraphicUses:920Used by:922
Symbol 922 MovieClip {tile_104}Uses:921Used by:1390
Symbol 923 BitmapUsed by:924
Symbol 924 GraphicUses:923Used by:925
Symbol 925 MovieClip {tile_106}Uses:924Used by:1390
Symbol 926 BitmapUsed by:927
Symbol 927 GraphicUses:926Used by:928
Symbol 928 MovieClip {tile_107}Uses:927Used by:1390
Symbol 929 BitmapUsed by:930
Symbol 930 GraphicUses:929Used by:931
Symbol 931 MovieClip {tile_108}Uses:930Used by:1390
Symbol 932 BitmapUsed by:933
Symbol 933 GraphicUses:932Used by:934
Symbol 934 MovieClip {tile_112}Uses:933Used by:1390
Symbol 935 BitmapUsed by:936
Symbol 936 GraphicUses:935Used by:937
Symbol 937 MovieClip {tile_114}Uses:936Used by:1390
Symbol 938 BitmapUsed by:939
Symbol 939 GraphicUses:938Used by:940
Symbol 940 MovieClip {tile_115}Uses:939Used by:1390
Symbol 941 BitmapUsed by:942
Symbol 942 GraphicUses:941Used by:943
Symbol 943 MovieClip {tile_117}Uses:942Used by:1390
Symbol 944 BitmapUsed by:945
Symbol 945 GraphicUses:944Used by:946
Symbol 946 MovieClip {tile_119}Uses:945Used by:1390
Symbol 947 BitmapUsed by:948
Symbol 948 GraphicUses:947Used by:949
Symbol 949 MovieClip {tile_121}Uses:948Used by:1390
Symbol 950 BitmapUsed by:951
Symbol 951 GraphicUses:950Used by:952
Symbol 952 MovieClip {tile_122}Uses:951Used by:1390
Symbol 953 BitmapUsed by:954
Symbol 954 GraphicUses:953Used by:955
Symbol 955 MovieClip {tile_124}Uses:954Used by:1390
Symbol 956 BitmapUsed by:957
Symbol 957 GraphicUses:956Used by:958
Symbol 958 MovieClip {tile_125}Uses:957Used by:1390
Symbol 959 BitmapUsed by:960
Symbol 960 GraphicUses:959Used by:961
Symbol 961 MovieClip {tile_127}Uses:960Used by:1390
Symbol 962 BitmapUsed by:963
Symbol 963 GraphicUses:962Used by:964
Symbol 964 MovieClip {tile_128}Uses:963Used by:1390
Symbol 965 BitmapUsed by:966
Symbol 966 GraphicUses:965Used by:967
Symbol 967 MovieClip {tile_130}Uses:966Used by:1390
Symbol 968 BitmapUsed by:969
Symbol 969 GraphicUses:968Used by:970
Symbol 970 MovieClip {tile_131}Uses:969Used by:1390
Symbol 971 BitmapUsed by:972
Symbol 972 GraphicUses:971Used by:973
Symbol 973 MovieClip {tile_137}Uses:972Used by:1390
Symbol 974 BitmapUsed by:975
Symbol 975 GraphicUses:974Used by:976
Symbol 976 MovieClip {tile_138}Uses:975Used by:1390
Symbol 977 BitmapUsed by:978
Symbol 978 GraphicUses:977Used by:979
Symbol 979 MovieClip {tile_140}Uses:978Used by:1390
Symbol 980 BitmapUsed by:981
Symbol 981 GraphicUses:980Used by:982
Symbol 982 MovieClip {tile_141}Uses:981Used by:1390
Symbol 983 BitmapUsed by:984
Symbol 984 GraphicUses:983Used by:985
Symbol 985 MovieClip {tile_142}Uses:984Used by:1390
Symbol 986 BitmapUsed by:987
Symbol 987 GraphicUses:986Used by:988
Symbol 988 MovieClip {tile_144}Uses:987Used by:1390
Symbol 989 BitmapUsed by:990
Symbol 990 GraphicUses:989Used by:991
Symbol 991 MovieClip {tile_145}Uses:990Used by:1390
Symbol 992 BitmapUsed by:993
Symbol 993 GraphicUses:992Used by:994
Symbol 994 MovieClip {tile_146}Uses:993Used by:1390
Symbol 995 BitmapUsed by:996
Symbol 996 GraphicUses:995Used by:997
Symbol 997 MovieClip {tile_147}Uses:996Used by:1390
Symbol 998 BitmapUsed by:999
Symbol 999 GraphicUses:998Used by:1000
Symbol 1000 MovieClip {tile_148}Uses:999Used by:1390
Symbol 1001 BitmapUsed by:1002
Symbol 1002 GraphicUses:1001Used by:1003
Symbol 1003 MovieClip {tile_150}Uses:1002Used by:1390
Symbol 1004 BitmapUsed by:1005
Symbol 1005 GraphicUses:1004Used by:1006
Symbol 1006 MovieClip {tile_153}Uses:1005Used by:1390
Symbol 1007 BitmapUsed by:1008
Symbol 1008 GraphicUses:1007Used by:1009
Symbol 1009 MovieClip {tile_158}Uses:1008Used by:1390
Symbol 1010 BitmapUsed by:1011
Symbol 1011 GraphicUses:1010Used by:1012
Symbol 1012 MovieClip {tile_161}Uses:1011Used by:1390
Symbol 1013 BitmapUsed by:1014
Symbol 1014 GraphicUses:1013Used by:1015
Symbol 1015 MovieClip {tile_162}Uses:1014Used by:1390
Symbol 1016 BitmapUsed by:1017
Symbol 1017 GraphicUses:1016Used by:1018
Symbol 1018 MovieClip {tile_ca}Uses:1017Used by:1390
Symbol 1019 BitmapUsed by:1020
Symbol 1020 GraphicUses:1019Used by:1021
Symbol 1021 MovieClip {tile_cb}Uses:1020Used by:1390
Symbol 1022 BitmapUsed by:1023
Symbol 1023 GraphicUses:1022Used by:1024
Symbol 1024 MovieClip {tile_cc}Uses:1023Used by:1390
Symbol 1025 BitmapUsed by:1026
Symbol 1026 GraphicUses:1025Used by:1027
Symbol 1027 MovieClip {tile_cd}Uses:1026Used by:1390
Symbol 1028 BitmapUsed by:1029
Symbol 1029 GraphicUses:1028Used by:1030
Symbol 1030 MovieClip {tile_d1}Uses:1029Used by:1390
Symbol 1031 BitmapUsed by:1032
Symbol 1032 GraphicUses:1031Used by:1033
Symbol 1033 MovieClip {tile_d2}Uses:1032Used by:1390
Symbol 1034 BitmapUsed by:1035
Symbol 1035 GraphicUses:1034Used by:1036
Symbol 1036 MovieClip {tile_d3}Uses:1035Used by:1390
Symbol 1037 BitmapUsed by:1038
Symbol 1038 GraphicUses:1037Used by:1039
Symbol 1039 MovieClip {tile_ra}Uses:1038Used by:1390
Symbol 1040 BitmapUsed by:1041
Symbol 1041 GraphicUses:1040Used by:1042
Symbol 1042 MovieClip {tile_rb}Uses:1041Used by:1390
Symbol 1043 BitmapUsed by:1044
Symbol 1044 GraphicUses:1043Used by:1045
Symbol 1045 MovieClip {tile_rc}Uses:1044Used by:1390
Symbol 1046 BitmapUsed by:1047
Symbol 1047 GraphicUses:1046Used by:1048
Symbol 1048 MovieClip {tile_rd}Uses:1047Used by:1390
Symbol 1049 BitmapUsed by:1050
Symbol 1050 GraphicUses:1049Used by:1051
Symbol 1051 MovieClip {tile_td1}Uses:1050Used by:1390
Symbol 1052 BitmapUsed by:1053
Symbol 1053 GraphicUses:1052Used by:1054
Symbol 1054 MovieClip {tile_td2}Uses:1053Used by:1390
Symbol 1055 BitmapUsed by:1056
Symbol 1056 GraphicUses:1055Used by:1057
Symbol 1057 MovieClip {tile_td3}Uses:1056Used by:1390
Symbol 1058 BitmapUsed by:1059
Symbol 1059 GraphicUses:1058Used by:1060
Symbol 1060 MovieClip {tile_tu1}Uses:1059Used by:1390
Symbol 1061 BitmapUsed by:1062
Symbol 1062 GraphicUses:1061Used by:1063
Symbol 1063 MovieClip {tile_tu2}Uses:1062Used by:1390
Symbol 1064 BitmapUsed by:1065
Symbol 1065 GraphicUses:1064Used by:1066
Symbol 1066 MovieClip {tile_tu3}Uses:1065Used by:1390
Symbol 1067 BitmapUsed by:1068
Symbol 1068 GraphicUses:1067Used by:1069
Symbol 1069 MovieClip {tile_u1}Uses:1068Used by:1390
Symbol 1070 BitmapUsed by:1071
Symbol 1071 GraphicUses:1070Used by:1072
Symbol 1072 MovieClip {tile_u2}Uses:1071Used by:1390
Symbol 1073 BitmapUsed by:1074
Symbol 1074 GraphicUses:1073Used by:1075
Symbol 1075 MovieClip {tile_u3}Uses:1074Used by:1390
Symbol 1076 BitmapUsed by:1077
Symbol 1077 GraphicUses:1076Used by:1078
Symbol 1078 MovieClip {tile_u4}Uses:1077Used by:1390
Symbol 1079 BitmapUsed by:1080
Symbol 1080 GraphicUses:1079Used by:1081
Symbol 1081 MovieClip {tile_ce}Uses:1080Used by:1390
Symbol 1082 BitmapUsed by:1083
Symbol 1083 GraphicUses:1082Used by:1084
Symbol 1084 MovieClip {tile_cf}Uses:1083Used by:1390
Symbol 1085 BitmapUsed by:1086
Symbol 1086 GraphicUses:1085Used by:1087
Symbol 1087 MovieClip {tile_cg}Uses:1086Used by:1390
Symbol 1088 BitmapUsed by:1089
Symbol 1089 GraphicUses:1088Used by:1090
Symbol 1090 MovieClip {tile_ch}Uses:1089Used by:1390
Symbol 1091 BitmapUsed by:1092
Symbol 1092 GraphicUses:1091Used by:1093
Symbol 1093 MovieClip {tile_re}Uses:1092Used by:1390
Symbol 1094 BitmapUsed by:1095
Symbol 1095 GraphicUses:1094Used by:1096
Symbol 1096 MovieClip {tile_rf}Uses:1095Used by:1390
Symbol 1097 BitmapUsed by:1098
Symbol 1098 GraphicUses:1097Used by:1099
Symbol 1099 MovieClip {tile_rg}Uses:1098Used by:1390
Symbol 1100 BitmapUsed by:1101
Symbol 1101 GraphicUses:1100Used by:1102
Symbol 1102 MovieClip {tile_rh}Uses:1101Used by:1390
Symbol 1103 BitmapUsed by:1104 1108
Symbol 1104 GraphicUses:1103Used by:1109 1110
Symbol 1105 BitmapUsed by:1106
Symbol 1106 GraphicUses:1105Used by:1109 1110
Symbol 1107 BitmapUsed by:1108
Symbol 1108 GraphicUses:1107 1103Used by:1109
Symbol 1109 MovieClip {SubmitButton}Uses:1104 130 1106 1108Used by:1118 1390
Symbol 1110 MovieClip {ClearButton}Uses:1104 130 1106Used by:1118 1390
Symbol 1111 BitmapUsed by:1112
Symbol 1112 GraphicUses:1111Used by:1115
Symbol 1113 BitmapUsed by:1114
Symbol 1114 GraphicUses:1113Used by:1115
Symbol 1115 MovieClip {LetterButton}Uses:1112 130 1114Used by:1118 1390
Symbol 1116 BitmapUsed by:1117
Symbol 1117 GraphicUses:1116Used by:1118
Symbol 1118 MovieClip {ScoreSubmitPanel}Uses:1117 1109 130 1110 1115Used by:1390  Timeline
Symbol 1119 BitmapUsed by:1120
Symbol 1120 GraphicUses:1119Used by:1124
Symbol 1121 EditableTextUses:135Used by:1124
Symbol 1122 EditableTextUses:135Used by:1124
Symbol 1123 EditableTextUses:135Used by:1124
Symbol 1124 MovieClip {ScoreLine}Uses:1120 1121 1122 1123Used by:1127 1390
Symbol 1125 MovieClip {NextArrow}Uses:193 130 195Used by:1127 1390
Symbol 1126 MovieClip {PrevArrow}Uses:193 130 195Used by:1127 1390
Symbol 1127 MovieClip {HighScoreBoard}Uses:1124 1125 1126Used by:1390  Timeline
Symbol 1128 BitmapUsed by:1129
Symbol 1129 GraphicUses:1128Used by:1130
Symbol 1130 MovieClip {btile_37}Uses:1129Used by:1390
Symbol 1131 BitmapUsed by:1132
Symbol 1132 GraphicUses:1131Used by:1133
Symbol 1133 MovieClip {btile_36}Uses:1132Used by:1390
Symbol 1134 BitmapUsed by:1135
Symbol 1135 GraphicUses:1134Used by:1136
Symbol 1136 MovieClip {btile_35}Uses:1135Used by:1390
Symbol 1137 BitmapUsed by:1138
Symbol 1138 GraphicUses:1137Used by:1139
Symbol 1139 MovieClip {btile_34}Uses:1138Used by:1390
Symbol 1140 BitmapUsed by:1141
Symbol 1141 GraphicUses:1140Used by:1142
Symbol 1142 MovieClip {btile_33}Uses:1141Used by:1390
Symbol 1143 BitmapUsed by:1144
Symbol 1144 GraphicUses:1143Used by:1145
Symbol 1145 MovieClip {btile_32}Uses:1144Used by:1390
Symbol 1146 BitmapUsed by:1147
Symbol 1147 GraphicUses:1146Used by:1148
Symbol 1148 MovieClip {btile_31}Uses:1147Used by:1390
Symbol 1149 BitmapUsed by:1150
Symbol 1150 GraphicUses:1149Used by:1151
Symbol 1151 MovieClip {btile_30}Uses:1150Used by:1390
Symbol 1152 BitmapUsed by:1153
Symbol 1153 GraphicUses:1152Used by:1154
Symbol 1154 MovieClip {btile_29}Uses:1153Used by:1390
Symbol 1155 BitmapUsed by:1156
Symbol 1156 GraphicUses:1155Used by:1157
Symbol 1157 MovieClip {btile_28}Uses:1156Used by:1390
Symbol 1158 BitmapUsed by:1159
Symbol 1159 GraphicUses:1158Used by:1160
Symbol 1160 MovieClip {btile_27}Uses:1159Used by:1390
Symbol 1161 BitmapUsed by:1162
Symbol 1162 GraphicUses:1161Used by:1163
Symbol 1163 MovieClip {btile_26}Uses:1162Used by:1390
Symbol 1164 BitmapUsed by:1165
Symbol 1165 GraphicUses:1164Used by:1166
Symbol 1166 MovieClip {btile_25}Uses:1165Used by:1390
Symbol 1167 BitmapUsed by:1168
Symbol 1168 GraphicUses:1167Used by:1169
Symbol 1169 MovieClip {btile_24}Uses:1168Used by:1390
Symbol 1170 BitmapUsed by:1171
Symbol 1171 GraphicUses:1170Used by:1172
Symbol 1172 MovieClip {btile_23}Uses:1171Used by:1390
Symbol 1173 BitmapUsed by:1174
Symbol 1174 GraphicUses:1173Used by:1175
Symbol 1175 MovieClip {btile_22}Uses:1174Used by:1390
Symbol 1176 BitmapUsed by:1177
Symbol 1177 GraphicUses:1176Used by:1178
Symbol 1178 MovieClip {btile_21}Uses:1177Used by:1390
Symbol 1179 BitmapUsed by:1180
Symbol 1180 GraphicUses:1179Used by:1181
Symbol 1181 MovieClip {btile_20}Uses:1180Used by:1390
Symbol 1182 BitmapUsed by:1183
Symbol 1183 GraphicUses:1182Used by:1184
Symbol 1184 MovieClip {btile_19}Uses:1183Used by:1390
Symbol 1185 BitmapUsed by:1186
Symbol 1186 GraphicUses:1185Used by:1187
Symbol 1187 MovieClip {btile_18}Uses:1186Used by:1390
Symbol 1188 BitmapUsed by:1189
Symbol 1189 GraphicUses:1188Used by:1190
Symbol 1190 MovieClip {btile_17}Uses:1189Used by:1390
Symbol 1191 BitmapUsed by:1192
Symbol 1192 GraphicUses:1191Used by:1193
Symbol 1193 MovieClip {btile_16}Uses:1192Used by:1390
Symbol 1194 BitmapUsed by:1195
Symbol 1195 GraphicUses:1194Used by:1196
Symbol 1196 MovieClip {btile_15}Uses:1195Used by:1390
Symbol 1197 BitmapUsed by:1198
Symbol 1198 GraphicUses:1197Used by:1199
Symbol 1199 MovieClip {btile_14}Uses:1198Used by:1390
Symbol 1200 BitmapUsed by:1201
Symbol 1201 GraphicUses:1200Used by:1202
Symbol 1202 MovieClip {btile_13}Uses:1201Used by:1390
Symbol 1203 BitmapUsed by:1204
Symbol 1204 GraphicUses:1203Used by:1205
Symbol 1205 MovieClip {btile_12}Uses:1204Used by:1390
Symbol 1206 BitmapUsed by:1207
Symbol 1207 GraphicUses:1206Used by:1208
Symbol 1208 MovieClip {btile_11}Uses:1207Used by:1390
Symbol 1209 BitmapUsed by:1210
Symbol 1210 GraphicUses:1209Used by:1211
Symbol 1211 MovieClip {btile_10}Uses:1210Used by:1390
Symbol 1212 BitmapUsed by:1213
Symbol 1213 GraphicUses:1212Used by:1214
Symbol 1214 MovieClip {btile_9}Uses:1213Used by:1390
Symbol 1215 BitmapUsed by:1216
Symbol 1216 GraphicUses:1215Used by:1217
Symbol 1217 MovieClip {btile_8}Uses:1216Used by:1390
Symbol 1218 BitmapUsed by:1219
Symbol 1219 GraphicUses:1218Used by:1220
Symbol 1220 MovieClip {btile_7}Uses:1219Used by:1390
Symbol 1221 BitmapUsed by:1222
Symbol 1222 GraphicUses:1221Used by:1223
Symbol 1223 MovieClip {btile_6}Uses:1222Used by:1390
Symbol 1224 BitmapUsed by:1225
Symbol 1225 GraphicUses:1224Used by:1226
Symbol 1226 MovieClip {btile_5}Uses:1225Used by:1390
Symbol 1227 BitmapUsed by:1228
Symbol 1228 GraphicUses:1227Used by:1229
Symbol 1229 MovieClip {btile_4}Uses:1228Used by:1390
Symbol 1230 BitmapUsed by:1231
Symbol 1231 GraphicUses:1230Used by:1232
Symbol 1232 MovieClip {btile_3}Uses:1231Used by:1390
Symbol 1233 BitmapUsed by:1234
Symbol 1234 GraphicUses:1233Used by:1235
Symbol 1235 MovieClip {btile_2}Uses:1234Used by:1390
Symbol 1236 BitmapUsed by:1237
Symbol 1237 GraphicUses:1236Used by:1238
Symbol 1238 MovieClip {btile_1}Uses:1237Used by:1390
Symbol 1239 BitmapUsed by:1240
Symbol 1240 GraphicUses:1239Used by:1241
Symbol 1241 MovieClip {tile_229}Uses:1240Used by:1390
Symbol 1242 BitmapUsed by:1243
Symbol 1243 GraphicUses:1242Used by:1244
Symbol 1244 MovieClip {tile_228}Uses:1243Used by:1390
Symbol 1245 BitmapUsed by:1246
Symbol 1246 GraphicUses:1245Used by:1247
Symbol 1247 MovieClip {tile_227}Uses:1246Used by:1390
Symbol 1248 BitmapUsed by:1249
Symbol 1249 GraphicUses:1248Used by:1250
Symbol 1250 MovieClip {tile_226}Uses:1249Used by:1390
Symbol 1251 BitmapUsed by:1252
Symbol 1252 GraphicUses:1251Used by:1253
Symbol 1253 MovieClip {tile_225}Uses:1252Used by:1390
Symbol 1254 BitmapUsed by:1255
Symbol 1255 GraphicUses:1254Used by:1256
Symbol 1256 MovieClip {tile_224}Uses:1255Used by:1390
Symbol 1257 BitmapUsed by:1258
Symbol 1258 GraphicUses:1257Used by:1259
Symbol 1259 MovieClip {tile_223}Uses:1258Used by:1390
Symbol 1260 BitmapUsed by:1261
Symbol 1261 GraphicUses:1260Used by:1262
Symbol 1262 MovieClip {tile_222}Uses:1261Used by:1390
Symbol 1263 BitmapUsed by:1264
Symbol 1264 GraphicUses:1263Used by:1265
Symbol 1265 MovieClip {tile_221}Uses:1264Used by:1390
Symbol 1266 BitmapUsed by:1267
Symbol 1267 GraphicUses:1266Used by:1268
Symbol 1268 MovieClip {tile_220}Uses:1267Used by:1390
Symbol 1269 BitmapUsed by:1270
Symbol 1270 GraphicUses:1269Used by:1271
Symbol 1271 MovieClip {tile_219}Uses:1270Used by:1390
Symbol 1272 BitmapUsed by:1273
Symbol 1273 GraphicUses:1272Used by:1274
Symbol 1274 MovieClip {tile_218}Uses:1273Used by:1390
Symbol 1275 BitmapUsed by:1276
Symbol 1276 GraphicUses:1275Used by:1277
Symbol 1277 MovieClip {tile_217}Uses:1276Used by:1390
Symbol 1278 BitmapUsed by:1279
Symbol 1279 GraphicUses:1278Used by:1280
Symbol 1280 MovieClip {tile_216}Uses:1279Used by:1390
Symbol 1281 BitmapUsed by:1282
Symbol 1282 GraphicUses:1281Used by:1283
Symbol 1283 MovieClip {tile_215}Uses:1282Used by:1390
Symbol 1284 BitmapUsed by:1285
Symbol 1285 GraphicUses:1284Used by:1286
Symbol 1286 MovieClip {tile_214}Uses:1285Used by:1390
Symbol 1287 BitmapUsed by:1288
Symbol 1288 GraphicUses:1287Used by:1289
Symbol 1289 MovieClip {tile_213}Uses:1288Used by:1390
Symbol 1290 BitmapUsed by:1291
Symbol 1291 GraphicUses:1290Used by:1292
Symbol 1292 MovieClip {tile_212}Uses:1291Used by:1390
Symbol 1293 BitmapUsed by:1294
Symbol 1294 GraphicUses:1293Used by:1295
Symbol 1295 MovieClip {tile_211}Uses:1294Used by:1390
Symbol 1296 BitmapUsed by:1297
Symbol 1297 GraphicUses:1296Used by:1298
Symbol 1298 MovieClip {tile_210}Uses:1297Used by:1390
Symbol 1299 BitmapUsed by:1300
Symbol 1300 GraphicUses:1299Used by:1301
Symbol 1301 MovieClip {tile_209}Uses:1300Used by:1390
Symbol 1302 BitmapUsed by:1303
Symbol 1303 GraphicUses:1302Used by:1304
Symbol 1304 MovieClip {tile_208}Uses:1303Used by:1390
Symbol 1305 BitmapUsed by:1306
Symbol 1306 GraphicUses:1305Used by:1307
Symbol 1307 MovieClip {tile_207}Uses:1306Used by:1390
Symbol 1308 BitmapUsed by:1309
Symbol 1309 GraphicUses:1308Used by:1310
Symbol 1310 MovieClip {tile_206}Uses:1309Used by:1390
Symbol 1311 BitmapUsed by:1312
Symbol 1312 GraphicUses:1311Used by:1313
Symbol 1313 MovieClip {tile_205}Uses:1312Used by:1390
Symbol 1314 BitmapUsed by:1315
Symbol 1315 GraphicUses:1314Used by:1316
Symbol 1316 MovieClip {tile_204}Uses:1315Used by:1390
Symbol 1317 BitmapUsed by:1318
Symbol 1318 GraphicUses:1317Used by:1319
Symbol 1319 MovieClip {tile_203}Uses:1318Used by:1390
Symbol 1320 BitmapUsed by:1321
Symbol 1321 GraphicUses:1320Used by:1322
Symbol 1322 MovieClip {tile_202}Uses:1321Used by:1390
Symbol 1323 BitmapUsed by:1324
Symbol 1324 GraphicUses:1323Used by:1325
Symbol 1325 MovieClip {tile_201}Uses:1324Used by:1390
Symbol 1326 BitmapUsed by:1327
Symbol 1327 GraphicUses:1326Used by:1328
Symbol 1328 MovieClip {tile_200}Uses:1327Used by:1390
Symbol 1329 BitmapUsed by:1330
Symbol 1330 GraphicUses:1329Used by:1331 1380
Symbol 1331 MovieClip {ftile_lw}Uses:1330Used by:1390
Symbol 1332 BitmapUsed by:1333
Symbol 1333 GraphicUses:1332Used by:1334 1379
Symbol 1334 MovieClip {ftile_lp}Uses:1333Used by:1390
Symbol 1335 BitmapUsed by:1336
Symbol 1336 GraphicUses:1335Used by:1337 1378
Symbol 1337 MovieClip {ftile_lg}Uses:1336Used by:1390
Symbol 1338 BitmapUsed by:1339
Symbol 1339 GraphicUses:1338Used by:1340 1377
Symbol 1340 MovieClip {ftile_lb}Uses:1339Used by:1390
Symbol 1341 BitmapUsed by:1342 1363 1367 1373
Symbol 1342 GraphicUses:1341Used by:1343
Symbol 1343 MovieClip {ftile_spu}Uses:1342Used by:1390
Symbol 1344 BitmapUsed by:1345 1353 1355 1357
Symbol 1345 GraphicUses:1344Used by:1346
Symbol 1346 MovieClip {ftile_sbu}Uses:1345Used by:1390
Symbol 1347 BitmapUsed by:1348 1359 1369 1371
Symbol 1348 GraphicUses:1347Used by:1349
Symbol 1349 MovieClip {ftile_sgu}Uses:1348Used by:1390
Symbol 1350 BitmapUsed by:1351 1361 1365 1375
Symbol 1351 GraphicUses:1350Used by:1352
Symbol 1352 MovieClip {ftile_swu}Uses:1351Used by:1390
Symbol 1353 GraphicUses:1344Used by:1354
Symbol 1354 MovieClip {ftile_sbr}Uses:1353Used by:1390
Symbol 1355 GraphicUses:1344Used by:1356
Symbol 1356 MovieClip {ftile_sbl}Uses:1355Used by:1390
Symbol 1357 GraphicUses:1344Used by:1358
Symbol 1358 MovieClip {ftile_sbd}Uses:1357Used by:1390
Symbol 1359 GraphicUses:1347Used by:1360
Symbol 1360 MovieClip {ftile_sgr}Uses:1359Used by:1390
Symbol 1361 GraphicUses:1350Used by:1362
Symbol 1362 MovieClip {ftile_swr}Uses:1361Used by:1390
Symbol 1363 GraphicUses:1341Used by:1364
Symbol 1364 MovieClip {ftile_spr}Uses:1363Used by:1390
Symbol 1365 GraphicUses:1350Used by:1366
Symbol 1366 MovieClip {ftile_swd}Uses:1365Used by:1390
Symbol 1367 GraphicUses:1341Used by:1368
Symbol 1368 MovieClip {ftile_spd}Uses:1367Used by:1390
Symbol 1369 GraphicUses:1347Used by:1370
Symbol 1370 MovieClip {ftile_sgd}Uses:1369Used by:1390
Symbol 1371 GraphicUses:1347Used by:1372
Symbol 1372 MovieClip {ftile_sgl}Uses:1371Used by:1390
Symbol 1373 GraphicUses:1341Used by:1374
Symbol 1374 MovieClip {ftile_spl}Uses:1373Used by:1390
Symbol 1375 GraphicUses:1350Used by:1376
Symbol 1376 MovieClip {ftile_swl}Uses:1375Used by:1390
Symbol 1377 MovieClip {ftile_lb2}Uses:1339Used by:1390
Symbol 1378 MovieClip {ftile_lg2}Uses:1336Used by:1390
Symbol 1379 MovieClip {ftile_lp2}Uses:1333Used by:1390
Symbol 1380 MovieClip {ftile_lw2}Uses:1330Used by:1390
Symbol 1381 GraphicUsed by:1382
Symbol 1382 Button {com.nitrome.game.MtvLink}Uses:1381Used by:1390 1398  Timeline
Symbol 1383 FontUsed by:1384
Symbol 1384 TextUses:1383Used by:1387
Symbol 1385 BitmapUsed by:1386
Symbol 1386 GraphicUses:1385Used by:1387
Symbol 1387 MovieClip {com.nitrome.util.Lock}Uses:140 1384 1386Used by:1390
Symbol 1388 Sound {MenuMusic}Used by:1390
Symbol 1389 Sound {GameMusic}Used by:1390
Symbol 1390 MovieClip {Flipside_fla.instances_2}Uses:164 172 202 206 221 223 230 253 258 259 260 261 262 267 268 180 182 188 181 196 189 273 290 298 304 312 319 322 325 328 331 334 337 356 367 376 387 396 407 416 425 428 431 434 437 440 443 446 449 452 455 458 461 464 467 470 473 476 479 482 485 488 491 494 497 500 503 506 509 512 515 518 521 524 527 530 282 241 533 536 285 244 539 542 288 249 543 544 554 562 570 580 279 583 586 238 276 589 592 235 593 596 599 602 605 608 611 616 619 624 627 630 633 636 639 642 645 648 651 654 657 660 663 666 669 672 689 706 715 724 733 736 739 742 745 748 751 754 757 760 763 766 769 772 775 778 781 784 787 790 793 796 799 802 805 808 811 814 817 820 823 826 829 832 835 838 841 844 847 850 853 856 859 862 865 868 871 874 877 880 883 886 889 892 895 898 901 904 907 910 913 916 919 922 925 928 931 934 937 940 943 946 949 952 955 958 961 964 967 970 973 976 979 982 985 988 991 994 997 1000 1003 1006 1009 1012 1015 1018 1021 1024 1027 1030 1033 1036 1039 1042 1045 1048 1051 1054 1057 1060 1063 1066 1069 1072 1075 1078 1081 1084 1087 1090 1093 1096 1099 1102 1109 1110 1115 1118 1124 1125 1126 1127 1130 1133 1136 1139 1142 1145 1148 1151 1154 1157 1160 1163 1166 1169 1172 1175 1178 1181 1184 1187 1190 1193 1196 1199 1202 1205 1208 1211 1214 1217 1220 1223 1226 1229 1232 1235 1238 1241 1244 1247 1250 1253 1256 1259 1262 1265 1268 1271 1274 1277 1280 1283 1286 1289 1292 1295 1298 1301 1304 1307 1310 1313 1316 1319 1322 1325 1328 1331 1334 1337 1340 1343 1346 1349 1352 1354 1356 1358 1360 1362 1364 1366 1368 1370 1372 1374 1376 1377 1378 1379 1380 141 150 156 147 144 153 162 159 1382 1387 1388 1389Used by:Timeline
Symbol 1391 BitmapUsed by:1392
Symbol 1392 GraphicUses:1391Used by:1398
Symbol 1393 GraphicUsed by:1398
Symbol 1394 BitmapUsed by:1395
Symbol 1395 GraphicUses:1394Used by:1396
Symbol 1396 MovieClipUses:1395Used by:1398
Symbol 1397 SoundUsed by:1398
Symbol 1398 MovieClip {Flipside_fla.mtv_380}Uses:1392 1393 1396 1382 1397Used by:Timeline
Symbol 1399 GraphicUsed by:Timeline
Symbol 1400 BitmapUsed by:1401
Symbol 1401 GraphicUses:1400Used by:1402
Symbol 1402 MovieClipUses:1401 141Used by:Timeline
Symbol 1403 GraphicUsed by:Timeline
Symbol 1404 Bitmap
Symbol 1405 Bitmap
Symbol 1406 GraphicUsed by:Timeline
Symbol 1407 BitmapUsed by:1408
Symbol 1408 GraphicUses:1407Used by:Timeline
Symbol 1409 TextUses:135Used by:Timeline
Symbol 1410 TextUses:137Used by:1424
Symbol 1411 TextUses:137Used by:1424
Symbol 1412 TextUses:137Used by:1424
Symbol 1413 TextUses:137Used by:1424
Symbol 1414 TextUses:137Used by:1424
Symbol 1415 TextUses:137Used by:1424
Symbol 1416 BitmapUsed by:1417
Symbol 1417 GraphicUses:1416Used by:1424
Symbol 1418 TextUses:1Used by:1420 1423
Symbol 1419 TextUses:1Used by:1420 1423
Symbol 1420 MovieClipUses:250 1418 1419Used by:1424
Symbol 1421 TextUses:1Used by:1422
Symbol 1422 MovieClipUses:250 1421Used by:1424
Symbol 1423 MovieClipUses:235 238 241 244 246 249 1418 556 1419 558 560 561Used by:1424
Symbol 1424 MovieClip {Flipside_fla.helpcontent_383}Uses:1410 1411 1412 1413 1414 1415 130 1417 131 1420 1422 1423Used by:Timeline
Symbol 1425 TextUses:137Used by:Timeline
Symbol 1426 TextUses:137Used by:Timeline
Symbol 1427 TextUses:137Used by:Timeline
Symbol 1428 BitmapUsed by:1429
Symbol 1429 GraphicUses:1428Used by:Timeline
Symbol 1430 TextUses:137Used by:Timeline
Symbol 1431 TextUses:137Used by:Timeline
Symbol 1432 TextUses:135Used by:Timeline
Symbol 1433 EditableTextUses:135Used by:Timeline
Symbol 1434 BitmapUsed by:1435
Symbol 1435 GraphicUses:1434Used by:Timeline
Symbol 1436 TextUses:135Used by:Timeline

Instance Names

"curves_clip"Frame 1Symbol 134 MovieClip
"loaded"Frame 2Symbol 136 EditableText
"content"Frame 30Symbol 139 MovieClip
"soundManager"Frame 30Symbol 221 MovieClip {com.nitrome.game.SoundManager}
"__id20_"Frame 40Symbol 130 MovieClip {FlipsideFont}
"__id21_"Frame 40Symbol 130 MovieClip {FlipsideFont}
"__id22_"Frame 40Symbol 130 MovieClip {FlipsideFont}
"button1"Frame 50Symbol 230 MovieClip {com.nitrome.game.LevelStartButton}
"button2"Frame 50Symbol 230 MovieClip {com.nitrome.game.LevelStartButton}
"button3"Frame 50Symbol 230 MovieClip {com.nitrome.game.LevelStartButton}
"button4"Frame 50Symbol 230 MovieClip {com.nitrome.game.LevelStartButton}
"button5"Frame 50Symbol 230 MovieClip {com.nitrome.game.LevelStartButton}
"button6"Frame 50Symbol 230 MovieClip {com.nitrome.game.LevelStartButton}
"button7"Frame 50Symbol 230 MovieClip {com.nitrome.game.LevelStartButton}
"button8"Frame 50Symbol 230 MovieClip {com.nitrome.game.LevelStartButton}
"button9"Frame 50Symbol 230 MovieClip {com.nitrome.game.LevelStartButton}
"button10"Frame 50Symbol 230 MovieClip {com.nitrome.game.LevelStartButton}
"button11"Frame 50Symbol 230 MovieClip {com.nitrome.game.LevelStartButton}
"button12"Frame 50Symbol 230 MovieClip {com.nitrome.game.LevelStartButton}
"button13"Frame 50Symbol 230 MovieClip {com.nitrome.game.LevelStartButton}
"button14"Frame 50Symbol 230 MovieClip {com.nitrome.game.LevelStartButton}
"button15"Frame 50Symbol 230 MovieClip {com.nitrome.game.LevelStartButton}
"__id25_"Frame 90Symbol 130 MovieClip {FlipsideFont}
"__id26_"Frame 100Symbol 130 MovieClip {FlipsideFont}
"__id27_"Frame 100Symbol 130 MovieClip {FlipsideFont}
"__id28_"Frame 100Symbol 130 MovieClip {FlipsideFont}
"__id29_"Frame 120Symbol 130 MovieClip {FlipsideFont}
"finalScore"Frame 120Symbol 1433 EditableText
"trailLayer"Symbol 164 MovieClip {com.nitrome.game.NitromeIntro} Frame 1Symbol 139 MovieClip
"R"Symbol 164 MovieClip {com.nitrome.game.NitromeIntro} Frame 2Symbol 144 MovieClip {com.nitrome.game.NitromeIntroLetterR}
"N"Symbol 164 MovieClip {com.nitrome.game.NitromeIntro} Frame 5Symbol 147 MovieClip {com.nitrome.game.NitromeIntroLetterN}
"T"Symbol 164 MovieClip {com.nitrome.game.NitromeIntro} Frame 9Symbol 150 MovieClip {com.nitrome.game.NitromeIntroLetterT}
"O"Symbol 164 MovieClip {com.nitrome.game.NitromeIntro} Frame 10Symbol 153 MovieClip {com.nitrome.game.NitromeIntroLetterO}
"I"Symbol 164 MovieClip {com.nitrome.game.NitromeIntro} Frame 13Symbol 156 MovieClip {com.nitrome.game.NitromeIntroLetterI}
"E"Symbol 164 MovieClip {com.nitrome.game.NitromeIntro} Frame 14Symbol 159 MovieClip {com.nitrome.game.NitromeIntroLetterE}
"M"Symbol 164 MovieClip {com.nitrome.game.NitromeIntro} Frame 18Symbol 162 MovieClip {com.nitrome.game.NitromeIntroLetterM}
"__id0_"Symbol 171 MovieClip {Flipside_fla.overlaycontent_14} Frame 1Symbol 130 MovieClip {FlipsideFont}
"__id1_"Symbol 180 MovieClip {com.nitrome.game.ContinueGameButton} Frame 1Symbol 130 MovieClip {FlipsideFont}
"__id2_"Symbol 181 MovieClip {com.nitrome.game.EndGameButton} Frame 1Symbol 130 MovieClip {FlipsideFont}
"__id4_"Symbol 182 MovieClip {com.nitrome.game.NextLevelButton} Frame 1Symbol 130 MovieClip {FlipsideFont}
"__id5_"Symbol 188 MovieClip {com.nitrome.game.RestartLevelButton} Frame 1Symbol 130 MovieClip {FlipsideFont}
"__id6_"Symbol 189 MovieClip {com.nitrome.game.IngameSubmitScoreButton} Frame 1Symbol 130 MovieClip {FlipsideFont}
"__id7_"Symbol 196 MovieClip {com.nitrome.game.ExitToLevelSelectButton} Frame 1Symbol 130 MovieClip {FlipsideFont}
"default_resume"Symbol 201 MovieClip {Flipside_fla.popupcontent_16} Frame 1Symbol 180 MovieClip {com.nitrome.game.ContinueGameButton}
"__id3_"Symbol 201 MovieClip {Flipside_fla.popupcontent_16} Frame 1Symbol 130 MovieClip {FlipsideFont}
"default_next"Symbol 201 MovieClip {Flipside_fla.popupcontent_16} Frame 11Symbol 182 MovieClip {com.nitrome.game.NextLevelButton}
"levelScore"Symbol 201 MovieClip {Flipside_fla.popupcontent_16} Frame 11Symbol 184 EditableText
"totalScore"Symbol 201 MovieClip {Flipside_fla.popupcontent_16} Frame 11Symbol 186 EditableText
"default_restart"Symbol 201 MovieClip {Flipside_fla.popupcontent_16} Frame 21Symbol 188 MovieClip {com.nitrome.game.RestartLevelButton}
"totalScore"Symbol 201 MovieClip {Flipside_fla.popupcontent_16} Frame 21Symbol 191 EditableText
"default_backto2pls"Symbol 201 MovieClip {Flipside_fla.popupcontent_16} Frame 31Symbol 196 MovieClip {com.nitrome.game.ExitToLevelSelectButton}
"player1Score"Symbol 201 MovieClip {Flipside_fla.popupcontent_16} Frame 31Symbol 130 MovieClip {FlipsideFont}
"player2Score"Symbol 201 MovieClip {Flipside_fla.popupcontent_16} Frame 31Symbol 130 MovieClip {FlipsideFont}
"inner"Symbol 202 MovieClip {com.nitrome.game.IngamePopup} Frame 2Symbol 201 MovieClip {Flipside_fla.popupcontent_16}
"go"Symbol 221 MovieClip {com.nitrome.game.SoundManager} Frame 1Symbol 208 MovieClip {Flipside_fla.go_26}
"threetwoone"Symbol 221 MovieClip {com.nitrome.game.SoundManager} Frame 1Symbol 210 MovieClip {Flipside_fla.threetwoone_27}
"accelerator"Symbol 221 MovieClip {com.nitrome.game.SoundManager} Frame 1Symbol 212 MovieClip {Flipside_fla.accelerator_28}
"forceBlock"Symbol 221 MovieClip {com.nitrome.game.SoundManager} Frame 1Symbol 214 MovieClip {Flipside_fla.forceBlock_29}
"laser"Symbol 221 MovieClip {com.nitrome.game.SoundManager} Frame 1Symbol 216 MovieClip {Flipside_fla.laser_30}
"beep1"Symbol 221 MovieClip {com.nitrome.game.SoundManager} Frame 1Symbol 218 MovieClip {Flipside_fla.beep1_31}
"beep2"Symbol 221 MovieClip {com.nitrome.game.SoundManager} Frame 1Symbol 220 MovieClip {Flipside_fla.beep2_32}
"numberField"Symbol 230 MovieClip {com.nitrome.game.LevelStartButton} Frame 1Symbol 130 MovieClip {FlipsideFont}
"__id8_"Symbol 258 MovieClip {com.nitrome.game.PlayButton} Frame 1Symbol 130 MovieClip {FlipsideFont}
"__id9_"Symbol 259 MovieClip {com.nitrome.game.ScoresButton} Frame 1Symbol 130 MovieClip {FlipsideFont}
"__id10_"Symbol 260 MovieClip {com.nitrome.game.HelpButton} Frame 1Symbol 130 MovieClip {FlipsideFont}
"__id11_"Symbol 261 MovieClip {com.nitrome.game.CreditsButton} Frame 1Symbol 130 MovieClip {FlipsideFont}
"__id12_"Symbol 262 MovieClip {com.nitrome.game.IngameBackToTitleButton} Frame 1Symbol 130 MovieClip {FlipsideFont}
"__id13_"Symbol 267 MovieClip {com.nitrome.game.FinalBackToTitleButton} Frame 1Symbol 130 MovieClip {FlipsideFont}
"__id14_"Symbol 268 MovieClip {com.nitrome.game.BackToGameSelectButton} Frame 1Symbol 130 MovieClip {FlipsideFont}
"__id15_"Symbol 273 MovieClip {com.nitrome.game.FinalSubmitScoreButton} Frame 1Symbol 130 MovieClip {FlipsideFont}
"time"Symbol 319 MovieClip {com.nitrome.flipside.PlayerStats} Frame 1Symbol 130 MovieClip {FlipsideFont}
"lap"Symbol 319 MovieClip {com.nitrome.flipside.PlayerStats} Frame 1Symbol 130 MovieClip {FlipsideFont}
"rank"Symbol 319 MovieClip {com.nitrome.flipside.PlayerStats} Frame 1Symbol 130 MovieClip {FlipsideFont}
"lapCount"Symbol 319 MovieClip {com.nitrome.flipside.PlayerStats} Frame 1Symbol 130 MovieClip {FlipsideFont}
"__id16_"Symbol 1109 MovieClip {SubmitButton} Frame 1Symbol 130 MovieClip {FlipsideFont}
"__id17_"Symbol 1110 MovieClip {ClearButton} Frame 1Symbol 130 MovieClip {FlipsideFont}
"_letter"Symbol 1115 MovieClip {LetterButton} Frame 1Symbol 130 MovieClip {FlipsideFont}
"_submit_button"Symbol 1118 MovieClip {ScoreSubmitPanel} Frame 1Symbol 1109 MovieClip {SubmitButton}
"_name_text"Symbol 1118 MovieClip {ScoreSubmitPanel} Frame 1Symbol 130 MovieClip {FlipsideFont}
"_score_text"Symbol 1118 MovieClip {ScoreSubmitPanel} Frame 1Symbol 130 MovieClip {FlipsideFont}
"_clear_button"Symbol 1118 MovieClip {ScoreSubmitPanel} Frame 1Symbol 1110 MovieClip {ClearButton}
"A"Symbol 1118 MovieClip {ScoreSubmitPanel} Frame 1Symbol 1115 MovieClip {LetterButton}
"B"Symbol 1118 MovieClip {ScoreSubmitPanel} Frame 1Symbol 1115 MovieClip {LetterButton}
"C"Symbol 1118 MovieClip {ScoreSubmitPanel} Frame 1Symbol 1115 MovieClip {LetterButton}
"D"Symbol 1118 MovieClip {ScoreSubmitPanel} Frame 1Symbol 1115 MovieClip {LetterButton}
"E"Symbol 1118 MovieClip {ScoreSubmitPanel} Frame 1Symbol 1115 MovieClip {LetterButton}
"F"Symbol 1118 MovieClip {ScoreSubmitPanel} Frame 1Symbol 1115 MovieClip {LetterButton}
"G"Symbol 1118 MovieClip {ScoreSubmitPanel} Frame 1Symbol 1115 MovieClip {LetterButton}
"H"Symbol 1118 MovieClip {ScoreSubmitPanel} Frame 1Symbol 1115 MovieClip {LetterButton}
"I"Symbol 1118 MovieClip {ScoreSubmitPanel} Frame 1Symbol 1115 MovieClip {LetterButton}
"J"Symbol 1118 MovieClip {ScoreSubmitPanel} Frame 1Symbol 1115 MovieClip {LetterButton}
"K"Symbol 1118 MovieClip {ScoreSubmitPanel} Frame 1Symbol 1115 MovieClip {LetterButton}
"L"Symbol 1118 MovieClip {ScoreSubmitPanel} Frame 1Symbol 1115 MovieClip {LetterButton}
"M"Symbol 1118 MovieClip {ScoreSubmitPanel} Frame 1Symbol 1115 MovieClip {LetterButton}
"N"Symbol 1118 MovieClip {ScoreSubmitPanel} Frame 1Symbol 1115 MovieClip {LetterButton}
"O"Symbol 1118 MovieClip {ScoreSubmitPanel} Frame 1Symbol 1115 MovieClip {LetterButton}
"P"Symbol 1118 MovieClip {ScoreSubmitPanel} Frame 1Symbol 1115 MovieClip {LetterButton}
"Q"Symbol 1118 MovieClip {ScoreSubmitPanel} Frame 1Symbol 1115 MovieClip {LetterButton}
"R"Symbol 1118 MovieClip {ScoreSubmitPanel} Frame 1Symbol 1115 MovieClip {LetterButton}
"S"Symbol 1118 MovieClip {ScoreSubmitPanel} Frame 1Symbol 1115 MovieClip {LetterButton}
"T"Symbol 1118 MovieClip {ScoreSubmitPanel} Frame 1Symbol 1115 MovieClip {LetterButton}
"U"Symbol 1118 MovieClip {ScoreSubmitPanel} Frame 1Symbol 1115 MovieClip {LetterButton}
"V"Symbol 1118 MovieClip {ScoreSubmitPanel} Frame 1Symbol 1115 MovieClip {LetterButton}
"W"Symbol 1118 MovieClip {ScoreSubmitPanel} Frame 1Symbol 1115 MovieClip {LetterButton}
"X"Symbol 1118 MovieClip {ScoreSubmitPanel} Frame 1Symbol 1115 MovieClip {LetterButton}
"Y"Symbol 1118 MovieClip {ScoreSubmitPanel} Frame 1Symbol 1115 MovieClip {LetterButton}
"Z"Symbol 1118 MovieClip {ScoreSubmitPanel} Frame 1Symbol 1115 MovieClip {LetterButton}
"_rank_text"Symbol 1124 MovieClip {ScoreLine} Frame 1Symbol 1121 EditableText
"_name_text"Symbol 1124 MovieClip {ScoreLine} Frame 1Symbol 1122 EditableText
"_score_text"Symbol 1124 MovieClip {ScoreLine} Frame 1Symbol 1123 EditableText
"__id18_"Symbol 1125 MovieClip {NextArrow} Frame 1Symbol 130 MovieClip {FlipsideFont}
"__id19_"Symbol 1126 MovieClip {PrevArrow} Frame 1Symbol 130 MovieClip {FlipsideFont}
"_score_line_1"Symbol 1127 MovieClip {HighScoreBoard} Frame 1Symbol 1124 MovieClip {ScoreLine}
"_score_line_2"Symbol 1127 MovieClip {HighScoreBoard} Frame 1Symbol 1124 MovieClip {ScoreLine}
"_score_line_3"Symbol 1127 MovieClip {HighScoreBoard} Frame 1Symbol 1124 MovieClip {ScoreLine}
"_score_line_4"Symbol 1127 MovieClip {HighScoreBoard} Frame 1Symbol 1124 MovieClip {ScoreLine}
"_score_line_5"Symbol 1127 MovieClip {HighScoreBoard} Frame 1Symbol 1124 MovieClip {ScoreLine}
"_score_line_6"Symbol 1127 MovieClip {HighScoreBoard} Frame 1Symbol 1124 MovieClip {ScoreLine}
"_score_line_7"Symbol 1127 MovieClip {HighScoreBoard} Frame 1Symbol 1124 MovieClip {ScoreLine}
"_score_line_8"Symbol 1127 MovieClip {HighScoreBoard} Frame 1Symbol 1124 MovieClip {ScoreLine}
"_score_line_9"Symbol 1127 MovieClip {HighScoreBoard} Frame 1Symbol 1124 MovieClip {ScoreLine}
"_score_line_10"Symbol 1127 MovieClip {HighScoreBoard} Frame 1Symbol 1124 MovieClip {ScoreLine}
"_next_arrow"Symbol 1127 MovieClip {HighScoreBoard} Frame 1Symbol 1125 MovieClip {NextArrow}
"_prev_arrow"Symbol 1127 MovieClip {HighScoreBoard} Frame 1Symbol 1126 MovieClip {PrevArrow}
"__id23_"Symbol 1424 MovieClip {Flipside_fla.helpcontent_383} Frame 1Symbol 130 MovieClip {FlipsideFont}
"__id24_"Symbol 1424 MovieClip {Flipside_fla.helpcontent_383} Frame 1Symbol 130 MovieClip {FlipsideFont}

Special Tags

FileAttributes (69)Timeline Frame 1Access local files only, Metadata not present, AS3.
Tag 0x0FF (255)Timeline Frame 11 bytes " "

Labels

"preloader"Frame 1
"instances"Frame 3
"mtv"Frame 10
"nitrome"Frame 20
"title_screen"Frame 30
"game_select"Frame 40
"level_select_1p"Frame 50
"level_select_2p"Frame 60
"view_scores"Frame 70
"submit_score"Frame 80
"help"Frame 90
"credits"Frame 100
"game"Frame 110
"congrats"Frame 120
"three"Symbol 171 MovieClip {Flipside_fla.overlaycontent_14} Frame 1
"two"Symbol 171 MovieClip {Flipside_fla.overlaycontent_14} Frame 11
"one"Symbol 171 MovieClip {Flipside_fla.overlaycontent_14} Frame 21
"start"Symbol 171 MovieClip {Flipside_fla.overlaycontent_14} Frame 31
"lap2"Symbol 171 MovieClip {Flipside_fla.overlaycontent_14} Frame 41
"finallap"Symbol 171 MovieClip {Flipside_fla.overlaycontent_14} Frame 51
"finish"Symbol 171 MovieClip {Flipside_fla.overlaycontent_14} Frame 61
"_up"Symbol 180 MovieClip {com.nitrome.game.ContinueGameButton} Frame 1
"_over"Symbol 180 MovieClip {com.nitrome.game.ContinueGameButton} Frame 11
"_up"Symbol 181 MovieClip {com.nitrome.game.EndGameButton} Frame 1
"_over"Symbol 181 MovieClip {com.nitrome.game.EndGameButton} Frame 11
"_up"Symbol 182 MovieClip {com.nitrome.game.NextLevelButton} Frame 1
"_over"Symbol 182 MovieClip {com.nitrome.game.NextLevelButton} Frame 11
"_up"Symbol 188 MovieClip {com.nitrome.game.RestartLevelButton} Frame 1
"_over"Symbol 188 MovieClip {com.nitrome.game.RestartLevelButton} Frame 11
"_up"Symbol 189 MovieClip {com.nitrome.game.IngameSubmitScoreButton} Frame 1
"_over"Symbol 189 MovieClip {com.nitrome.game.IngameSubmitScoreButton} Frame 11
"_up"Symbol 196 MovieClip {com.nitrome.game.ExitToLevelSelectButton} Frame 1
"_over"Symbol 196 MovieClip {com.nitrome.game.ExitToLevelSelectButton} Frame 11
"paused"Symbol 201 MovieClip {Flipside_fla.popupcontent_16} Frame 1
"complete"Symbol 201 MovieClip {Flipside_fla.popupcontent_16} Frame 11
"failed"Symbol 201 MovieClip {Flipside_fla.popupcontent_16} Frame 21
"1p_win"Symbol 201 MovieClip {Flipside_fla.popupcontent_16} Frame 31
"2p_win"Symbol 201 MovieClip {Flipside_fla.popupcontent_16} Frame 41
"fadein"Symbol 206 MovieClip {com.nitrome.game.LoadingText} Frame 1
"fadeout"Symbol 206 MovieClip {com.nitrome.game.LoadingText} Frame 6
"up"Symbol 230 MovieClip {com.nitrome.game.LevelStartButton} Frame 1
"over"Symbol 230 MovieClip {com.nitrome.game.LevelStartButton} Frame 11
"locked"Symbol 230 MovieClip {com.nitrome.game.LevelStartButton} Frame 21
"_up"Symbol 253 MovieClip {com.nitrome.game.OnePlayerButton} Frame 1
"_over"Symbol 253 MovieClip {com.nitrome.game.OnePlayerButton} Frame 11
"_up"Symbol 258 MovieClip {com.nitrome.game.PlayButton} Frame 1
"_over"Symbol 258 MovieClip {com.nitrome.game.PlayButton} Frame 11
"_up"Symbol 259 MovieClip {com.nitrome.game.ScoresButton} Frame 1
"_over"Symbol 259 MovieClip {com.nitrome.game.ScoresButton} Frame 11
"_up"Symbol 260 MovieClip {com.nitrome.game.HelpButton} Frame 1
"_over"Symbol 260 MovieClip {com.nitrome.game.HelpButton} Frame 11
"_up"Symbol 261 MovieClip {com.nitrome.game.CreditsButton} Frame 1
"_over"Symbol 261 MovieClip {com.nitrome.game.CreditsButton} Frame 11
"_up"Symbol 262 MovieClip {com.nitrome.game.IngameBackToTitleButton} Frame 1
"_over"Symbol 262 MovieClip {com.nitrome.game.IngameBackToTitleButton} Frame 11
"_up"Symbol 267 MovieClip {com.nitrome.game.FinalBackToTitleButton} Frame 1
"_over"Symbol 267 MovieClip {com.nitrome.game.FinalBackToTitleButton} Frame 11
"_up"Symbol 268 MovieClip {com.nitrome.game.BackToGameSelectButton} Frame 1
"_over"Symbol 268 MovieClip {com.nitrome.game.BackToGameSelectButton} Frame 11
"_up"Symbol 273 MovieClip {com.nitrome.game.FinalSubmitScoreButton} Frame 1
"_over"Symbol 273 MovieClip {com.nitrome.game.FinalSubmitScoreButton} Frame 11
"_up"Symbol 290 MovieClip {com.nitrome.game.TwoPlayerButton} Frame 1
"_over"Symbol 290 MovieClip {com.nitrome.game.TwoPlayerButton} Frame 11
"_on_up"Symbol 298 MovieClip {com.nitrome.game.FxToggle} Frame 1
"_on_over"Symbol 298 MovieClip {com.nitrome.game.FxToggle} Frame 6
"_off_up"Symbol 298 MovieClip {com.nitrome.game.FxToggle} Frame 11
"_off_over"Symbol 298 MovieClip {com.nitrome.game.FxToggle} Frame 16
"_on_up"Symbol 304 MovieClip {com.nitrome.game.MusicToggle} Frame 1
"_on_over"Symbol 304 MovieClip {com.nitrome.game.MusicToggle} Frame 6
"_off_up"Symbol 304 MovieClip {com.nitrome.game.MusicToggle} Frame 11
"_off_over"Symbol 304 MovieClip {com.nitrome.game.MusicToggle} Frame 16
"_up"Symbol 312 MovieClip {com.nitrome.game.PauseButton} Frame 1
"_over"Symbol 312 MovieClip {com.nitrome.game.PauseButton} Frame 10
"up"Symbol 1109 MovieClip {SubmitButton} Frame 1
"over"Symbol 1109 MovieClip {SubmitButton} Frame 10
"disabled"Symbol 1109 MovieClip {SubmitButton} Frame 21
"_up"Symbol 1110 MovieClip {ClearButton} Frame 1
"_over"Symbol 1110 MovieClip {ClearButton} Frame 10
"_up"Symbol 1115 MovieClip {LetterButton} Frame 1
"_over"Symbol 1115 MovieClip {LetterButton} Frame 10
"_up"Symbol 1125 MovieClip {NextArrow} Frame 1
"_over"Symbol 1125 MovieClip {NextArrow} Frame 10
"_up"Symbol 1126 MovieClip {PrevArrow} Frame 1
"_over"Symbol 1126 MovieClip {PrevArrow} Frame 10




http://swfchan.com/37/182199/info.shtml
Created: 7/8 -2019 15:43:47 Last modified: 7/8 -2019 15:43:47 Server time: 29/04 -2024 07:52:14