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

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

Scamper Ghost - no levels, just classic arcade action game.swf

This is the info page for
Flash #92449

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


ActionScript [AS3]
Section 1
//b2CircleDef (Box2D.Collision.Shapes.b2CircleDef) package Box2D.Collision.Shapes { import Box2D.Common.Math.*; public class b2CircleDef extends b2ShapeDef { public var radius:Number; public var localPosition:b2Vec2; public function b2CircleDef(){ localPosition = 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.Collision.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Common.*; public class b2CircleShape extends b2Shape { public var m_localPosition:b2Vec2; public var m_radius:Number; public function b2CircleShape(_arg1:b2ShapeDef){ m_localPosition = new b2Vec2(); super(_arg1); var _local2:b2CircleDef = (_arg1 as b2CircleDef); m_type = e_circleShape; m_localPosition.SetV(_local2.localPosition); m_radius = _local2.radius; } override public function TestSegment(_arg1:b2XForm, _arg2:Array, _arg3:b2Vec2, _arg4:b2Segment, _arg5:Number):int{ var _local10:Number; var _local6:b2Mat22 = _arg1.R; var _local7:Number = (_arg1.position.x + ((_local6.col1.x * m_localPosition.x) + (_local6.col2.x * m_localPosition.y))); var _local8:Number = (_arg1.position.y + ((_local6.col1.y * m_localPosition.x) + (_local6.col2.y * m_localPosition.y))); var _local9:Number = (_arg4.p1.x - _local7); _local10 = (_arg4.p1.y - _local8); var _local11:Number = (((_local9 * _local9) + (_local10 * _local10)) - (m_radius * m_radius)); if (_local11 < 0){ _arg2[0] = 0; return (e_startsInsideCollide); }; var _local12:Number = (_arg4.p2.x - _arg4.p1.x); var _local13:Number = (_arg4.p2.y - _arg4.p1.y); var _local14:Number = ((_local9 * _local12) + (_local10 * _local13)); var _local15:Number = ((_local12 * _local12) + (_local13 * _local13)); var _local16:Number = ((_local14 * _local14) - (_local15 * _local11)); if ((((_local16 < 0)) || ((_local15 < Number.MIN_VALUE)))){ return (e_missCollide); }; var _local17:Number = -((_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 (e_hitCollide); }; return (e_missCollide); } public function GetLocalPosition():b2Vec2{ return (m_localPosition); } public function GetRadius():Number{ return (m_radius); } override public function ComputeSweptAABB(_arg1:b2AABB, _arg2:b2XForm, _arg3:b2XForm):void{ var _local4:b2Mat22; _local4 = _arg2.R; var _local5:Number = (_arg2.position.x + ((_local4.col1.x * m_localPosition.x) + (_local4.col2.x * m_localPosition.y))); var _local6:Number = (_arg2.position.y + ((_local4.col1.y * m_localPosition.x) + (_local4.col2.y * m_localPosition.y))); _local4 = _arg3.R; var _local7:Number = (_arg3.position.x + ((_local4.col1.x * m_localPosition.x) + (_local4.col2.x * m_localPosition.y))); var _local8:Number = (_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)); } 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 UpdateSweepRadius(_arg1:b2Vec2):void{ var _local2:Number = (m_localPosition.x - _arg1.x); var _local3:Number = (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 = _arg2.R; var _local4:Number = (_arg2.position.x + ((_local3.col1.x * m_localPosition.x) + (_local3.col2.x * m_localPosition.y))); var _local5:Number = (_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)); } override public function TestPoint(_arg1:b2XForm, _arg2:b2Vec2):Boolean{ var _local3:b2Mat22 = _arg1.R; var _local4:Number = (_arg1.position.x + ((_local3.col1.x * m_localPosition.x) + (_local3.col2.x * m_localPosition.y))); var _local5:Number = (_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))); } } }//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 Copy():b2FilterData{ var _local1:b2FilterData = 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(){ center = new b2Vec2(0, 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 vertices:Array; public var vertexCount:int; private static var s_mat:b2Mat22 = new b2Mat22(); public function b2PolygonDef(){ vertices = new Array(b2Settings.b2_maxPolygonVertices); super(); type = b2Shape.e_polygonShape; vertexCount = 0; var _local1:int; 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.Collision.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Common.*; public class b2PolygonShape extends b2Shape { public var m_coreVertices:Array; public var m_vertices:Array; private var s_supportVec:b2Vec2; public var m_centroid:b2Vec2; public var m_normals:Array; public var m_obb:b2OBB; public var m_vertexCount: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 _local3: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; s_supportVec = new b2Vec2(); m_obb = new b2OBB(); m_vertices = new Array(b2Settings.b2_maxPolygonVertices); m_normals = new Array(b2Settings.b2_maxPolygonVertices); m_coreVertices = new Array(b2Settings.b2_maxPolygonVertices); super(_arg1); m_type = e_polygonShape; var _local2:b2PolygonDef = (_arg1 as b2PolygonDef); m_vertexCount = _local2.vertexCount; var _local4:int = _local3; var _local5:int = _local3; _local3 = 0; while (_local3 < m_vertexCount) { m_vertices[_local3] = _local2.vertices[_local3].Copy(); _local3++; }; _local3 = 0; while (_local3 < m_vertexCount) { _local4 = _local3; _local5 = (((_local3 + 1) < m_vertexCount)) ? (_local3 + 1) : 0; _local6 = (m_vertices[_local5].x - m_vertices[_local4].x); _local7 = (m_vertices[_local5].y - m_vertices[_local4].y); _local8 = Math.sqrt(((_local6 * _local6) + (_local7 * _local7))); m_normals[_local3] = new b2Vec2((_local7 / _local8), (-(_local6) / _local8)); _local3++; }; m_centroid = ComputeCentroid(_local2.vertices, _local2.vertexCount); ComputeOBB(m_obb, m_vertices, m_vertexCount); _local3 = 0; while (_local3 < m_vertexCount) { _local4 = (((_local3 - 1) >= 0)) ? (_local3 - 1) : (m_vertexCount - 1); _local5 = _local3; _local9 = m_normals[_local4].x; _local10 = m_normals[_local4].y; _local11 = m_normals[_local5].x; _local12 = m_normals[_local5].y; _local13 = (m_vertices[_local3].x - m_centroid.x); _local14 = (m_vertices[_local3].y - m_centroid.y); _local15 = (((_local9 * _local13) + (_local10 * _local14)) - b2Settings.b2_toiSlop); _local16 = (((_local11 * _local13) + (_local12 * _local14)) - b2Settings.b2_toiSlop); _local17 = (1 / ((_local9 * _local12) - (_local10 * _local11))); m_coreVertices[_local3] = new b2Vec2(((_local17 * ((_local12 * _local15) - (_local10 * _local16))) + m_centroid.x), ((_local17 * ((_local9 * _local16) - (_local11 * _local15))) + m_centroid.y)); _local3++; }; } override public function ComputeSweptAABB(_arg1:b2AABB, _arg2:b2XForm, _arg3:b2XForm):void{ var _local4:b2AABB = s_sweptAABB1; var _local5:b2AABB = 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 (m_vertices); } public function GetCoreVertices():Array{ return (m_coreVertices); } public function GetCentroid():b2Vec2{ return (m_centroid); } public function GetOBB():b2OBB{ return (m_obb); } public function GetFirstVertex(_arg1:b2XForm):b2Vec2{ return (b2Math.b2MulX(_arg1, m_coreVertices[0])); } public function Centroid(_arg1:b2XForm):b2Vec2{ return (b2Math.b2MulX(_arg1, m_centroid)); } override public function TestSegment(_arg1:b2XForm, _arg2:Array, _arg3:b2Vec2, _arg4:b2Segment, _arg5:Number):int{ var _local8:Number; var _local9:Number; var _local10:b2Mat22; var _local11:b2Vec2; var _local20:Number; var _local21:Number; var _local6:Number = 0; var _local7:Number = _arg5; _local8 = (_arg4.p1.x - _arg1.position.x); _local9 = (_arg4.p1.y - _arg1.position.y); _local10 = _arg1.R; var _local12:Number = ((_local8 * _local10.col1.x) + (_local9 * _local10.col1.y)); var _local13:Number = ((_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; var _local14:Number = ((_local8 * _local10.col1.x) + (_local9 * _local10.col1.y)); var _local15:Number = ((_local8 * _local10.col2.x) + (_local9 * _local10.col2.y)); var _local16:Number = (_local14 - _local12); var _local17:Number = (_local15 - _local13); var _local18 = -1; var _local19:int; while (_local19 < m_vertexCount) { _local11 = m_vertices[_local19]; _local8 = (_local11.x - _local12); _local9 = (_local11.y - _local13); _local11 = m_normals[_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 (e_missCollide); }; _local19++; }; if (_local18 >= 0){ _arg2[0] = _local6; _local10 = _arg1.R; _local11 = m_normals[_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 (e_hitCollide); }; _arg2[0] = 0; return (e_startsInsideCollide); } override public function ComputeMass(_arg1:b2MassData):void{ 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; var _local2:Number = 0; var _local3:Number = 0; var _local4:Number = 0; var _local5:Number = 0; var _local6:Number = 0; var _local7:Number = 0; var _local8:Number = (1 / 3); var _local9:int; while (_local9 < m_vertexCount) { _local10 = m_vertices[_local9]; _local11 = (((_local9 + 1) < m_vertexCount)) ? m_vertices[int((_local9 + 1))] : m_vertices[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 GetNormals():Array{ return (m_normals); } public function Support(_arg1:b2XForm, _arg2:Number, _arg3:Number):b2Vec2{ var _local4:b2Vec2; var _local5:b2Mat22; var _local11:Number; _local5 = _arg1.R; var _local6:Number = ((_arg2 * _local5.col1.x) + (_arg3 * _local5.col1.y)); var _local7:Number = ((_arg2 * _local5.col2.x) + (_arg3 * _local5.col2.y)); var _local8:int; _local4 = m_coreVertices[0]; var _local9:Number = ((_local4.x * _local6) + (_local4.y * _local7)); var _local10 = 1; while (_local10 < m_vertexCount) { _local4 = m_coreVertices[_local10]; _local11 = ((_local4.x * _local6) + (_local4.y * _local7)); if (_local11 > _local9){ _local8 = _local10; _local9 = _local11; }; _local10++; }; _local5 = _arg1.R; _local4 = m_coreVertices[_local8]; s_supportVec.x = (_arg1.position.x + ((_local5.col1.x * _local4.x) + (_local5.col2.x * _local4.y))); s_supportVec.y = (_arg1.position.y + ((_local5.col1.y * _local4.x) + (_local5.col2.y * _local4.y))); return (s_supportVec); } public function GetVertexCount():int{ return (m_vertexCount); } override public function ComputeAABB(_arg1:b2AABB, _arg2:b2XForm):void{ var _local3:b2Mat22; var _local4:b2Vec2; var _local5:b2Mat22 = s_computeMat; _local3 = _arg2.R; _local4 = m_obb.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 = m_obb.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(); var _local6:b2Mat22 = _local5; _local4 = m_obb.extents; var _local7:Number = ((_local6.col1.x * _local4.x) + (_local6.col2.x * _local4.y)); var _local8:Number = ((_local6.col1.y * _local4.x) + (_local6.col2.y * _local4.y)); _local3 = _arg2.R; _local4 = m_obb.center; var _local9:Number = (_arg2.position.x + ((_local3.col1.x * _local4.x) + (_local3.col2.x * _local4.y))); var _local10:Number = (_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)); } override public function UpdateSweepRadius(_arg1:b2Vec2):void{ var _local2:b2Vec2; var _local4:Number; var _local5:Number; m_sweepRadius = 0; var _local3:int; while (_local3 < m_vertexCount) { _local2 = m_coreVertices[_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 TestPoint(_arg1:b2XForm, _arg2:b2Vec2):Boolean{ var _local3:b2Vec2; var _local10:Number; var _local4:b2Mat22 = _arg1.R; var _local5:Number = (_arg2.x - _arg1.position.x); var _local6:Number = (_arg2.y - _arg1.position.y); var _local7:Number = ((_local5 * _local4.col1.x) + (_local6 * _local4.col1.y)); var _local8:Number = ((_local5 * _local4.col2.x) + (_local6 * _local4.col2.y)); var _local9:int; while (_local9 < m_vertexCount) { _local3 = m_vertices[_local9]; _local5 = (_local7 - _local3.x); _local6 = (_local8 - _local3.y); _local3 = m_normals[_local9]; _local10 = ((_local3.x * _local5) + (_local3.y * _local6)); if (_local10 > 0){ return (false); }; _local9++; }; return (true); } public static function ComputeCentroid(_arg1:Array, _arg2:int):b2Vec2{ var _local3:b2Vec2; var _local7:Number; 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(); var _local4:Number = 0; var _local5:Number = 0; var _local6:Number = 0; _local7 = (1 / 3); var _local8:int; 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 _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; var _local5:Array = new Array((b2Settings.b2_maxPolygonVertices + 1)); _local4 = 0; while (_local4 < _arg3) { _local5[_local4] = _arg2[_local4]; _local4++; }; _local5[_arg3] = _local5[0]; var _local6:Number = 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.Collision.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; public class b2Shape { public var m_next:b2Shape; public var m_type:int; public var m_sweepRadius:Number; public var m_density:Number; public var m_filter:b2FilterData; public var m_friction:Number; public var m_isSensor:Boolean; public var m_restitution:Number; public var m_userData; public var m_proxyId:uint; public var m_body:b2Body; public static const e_polygonShape:int = 1; public static const e_hitCollide:int = 1; public static const e_missCollide:int = 0; public static const e_unknownShape:int = -1; public static const e_circleShape:int = 0; public static const e_shapeTypeCount:int = 2; public static const e_startsInsideCollide:int = -1; 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; m_proxyId = b2Pair.b2_nullProxy; m_filter = _arg1.filter.Copy(); m_isSensor = _arg1.isSensor; } public function SetUserData(_arg1):void{ m_userData = _arg1; } public function GetSweepRadius():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 GetRestitution():Number{ return (m_restitution); } public function GetFriction():Number{ return (m_friction); } public function GetFilterData():b2FilterData{ return (m_filter.Copy()); } public function TestSegment(_arg1:b2XForm, _arg2:Array, _arg3:b2Vec2, _arg4:b2Segment, _arg5:Number):int{ return (e_missCollide); } public function RefilterProxy(_arg1:b2BroadPhase, _arg2:b2XForm):void{ if (m_proxyId == b2Pair.b2_nullProxy){ return; }; _arg1.DestroyProxy(m_proxyId); var _local3:b2AABB = s_resetAABB; ComputeAABB(_local3, _arg2); var _local4:Boolean = _arg1.InRange(_local3); if (_local4){ m_proxyId = _arg1.CreateProxy(_local3, this); } else { m_proxyId = b2Pair.b2_nullProxy; }; } public function SetFilterData(_arg1:b2FilterData):void{ m_filter = _arg1.Copy(); } public function GetUserData(){ return (m_userData); } public function Synchronize(_arg1:b2BroadPhase, _arg2:b2XForm, _arg3:b2XForm):Boolean{ if (m_proxyId == b2Pair.b2_nullProxy){ return (false); }; var _local4:b2AABB = s_syncAABB; ComputeSweptAABB(_local4, _arg2, _arg3); if (_arg1.InRange(_local4)){ _arg1.MoveProxy(m_proxyId, _local4); return (true); }; return (false); } public function ComputeMass(_arg1:b2MassData):void{ } public function IsSensor():Boolean{ return (m_isSensor); } public function DestroyProxy(_arg1:b2BroadPhase):void{ if (m_proxyId != b2Pair.b2_nullProxy){ _arg1.DestroyProxy(m_proxyId); m_proxyId = b2Pair.b2_nullProxy; }; } public function UpdateSweepRadius(_arg1:b2Vec2):void{ } public function ComputeAABB(_arg1:b2AABB, _arg2:b2XForm):void{ } public function GetBody():b2Body{ return (m_body); } public function CreateProxy(_arg1:b2BroadPhase, _arg2:b2XForm):void{ var _local3:b2AABB = s_proxyAABB; ComputeAABB(_local3, _arg2); var _local4:Boolean = _arg1.InRange(_local3); if (_local4){ m_proxyId = _arg1.CreateProxy(_local3, this); } else { m_proxyId = b2Pair.b2_nullProxy; }; } public function TestPoint(_arg1:b2XForm, _arg2:b2Vec2):Boolean{ return (false); } 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 friction:Number;// = 0.2 public var isSensor:Boolean;// = false public var density:Number;// = 0 public var restitution:Number;// = 0 public var userData;// = null public var filter:b2FilterData; public var type:int; public function b2ShapeDef(){ type = b2Shape.e_unknownShape; 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 = (upperBound.x - lowerBound.x); var _local2:Number = (upperBound.y - lowerBound.y); var _local3:Boolean = (((_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 value:uint; public var proxyId:uint; public var stabbingCount:uint; public function Swap(_arg1:b2Bound):void{ var _local2:uint = value; var _local3:uint = proxyId; var _local4:uint = 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_bounds:Array; public var m_worldAABB:b2AABB; public var m_querySortKeys:Array; public var m_freeProxy:uint; public var m_quantizationFactor:b2Vec2; public var m_proxyCount:int; public var m_proxyPool:Array; public var m_queryResultCount:int; public var m_pairManager:b2PairManager; public var m_timeStamp:uint; public var m_queryResults:Array; public static const b2_nullEdge:uint = 0xFFFF; public static const b2_invalid:uint = 0xFFFF; public static var s_validate:Boolean = false; public function b2BroadPhase(_arg1:b2AABB, _arg2:b2PairCallback){ var _local3:int; 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)); m_querySortKeys = new Array(b2Settings.b2_maxProxies); m_queryResults = 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) { m_queryResults[_local3] = 0; m_querySortKeys[_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++; }; var _local4:Number = (_arg1.upperBound.x - _arg1.lowerBound.x); var _local5:Number = (_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; m_freeProxy = 0; m_timeStamp = 1; m_queryResultCount = 0; } public function QueryAABB(_arg1:b2AABB, _arg2, _arg3:int):int{ var _local6:uint; var _local7:uint; var _local12:b2Proxy; var _local4:Array = new Array(); var _local5:Array = new Array(); ComputeBounds(_local4, _local5, _arg1); var _local8:Array = [_local6]; var _local9:Array = [_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); var _local10:int; var _local11:int; while ((((_local11 < m_queryResultCount)) && ((_local10 < _arg3)))) { _local12 = m_proxyPool[m_queryResults[_local11]]; _arg2[_local11] = _local12.userData; _local11++; _local10++; }; m_queryResultCount = 0; IncrementTimeStamp(); return (_local10); } public function Commit():void{ m_pairManager.Commit(); } public function GetProxy(_arg1:int):b2Proxy{ var _local2:b2Proxy = m_proxyPool[_arg1]; if ((((_arg1 == b2Pair.b2_nullProxy)) || ((_local2.IsValid() == false)))){ return (null); }; return (_local2); } private function IncrementTimeStamp():void{ var _local1:uint; if (m_timeStamp == b2Settings.USHRT_MAX){ _local1 = 0; while (_local1 < b2Settings.b2_maxProxies) { (m_proxyPool[_local1] as b2Proxy).timeStamp = 0; _local1++; }; m_timeStamp = 1; } else { m_timeStamp++; }; } private function Query(_arg1:Array, _arg2:Array, _arg3:uint, _arg4:uint, _arg5:Array, _arg6:uint, _arg7:int):void{ var _local10:b2Bound; var _local12:int; var _local13:int; var _local14:b2Proxy; var _local8:uint = BinarySearch(_arg5, _arg6, _arg3); var _local9:uint = BinarySearch(_arg5, _arg6, _arg4); var _local11:uint = _local8; while (_local11 < _local9) { _local10 = _arg5[_local11]; if (_local10.IsLower()){ IncrementOverlapCount(_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]){ IncrementOverlapCount(_local10.proxyId); _local13--; }; }; _local12--; }; }; _arg1[0] = _local8; _arg2[0] = _local9; } private function AddProxyResult(_arg1:uint, _arg2:b2Proxy, _arg3:Number, _arg4:Function):void{ var _local9:Number; var _local10:uint; var _local5:Number = _arg4(_arg2.userData); if (_local5 < 0){ return; }; var _local6:Number = 0; while ((((_local6 < m_queryResultCount)) && ((m_querySortKeys[_local6] < _local5)))) { _local6++; }; var _local7:Number = _local5; var _local8:uint = _arg1; m_queryResultCount = (m_queryResultCount + 1); if (m_queryResultCount > _arg3){ m_queryResultCount = _arg3; }; while (_local6 < m_queryResultCount) { _local9 = m_querySortKeys[_local6]; _local10 = m_queryResults[_local6]; m_querySortKeys[_local6] = _local7; m_queryResults[_local6] = _local8; _local7 = _local9; _local8 = _local10; _local6++; }; } private function TestOverlapValidate(_arg1:b2Proxy, _arg2:b2Proxy):Boolean{ var _local4:Array; var _local5:b2Bound; var _local6:b2Bound; var _local3:int; 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 ComputeBounds(_arg1:Array, _arg2:Array, _arg3:b2AABB):void{ var _local4:Number = _arg3.lowerBound.x; var _local5:Number = _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); var _local6:Number = _arg3.upperBound.x; var _local7:Number = _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 _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; var _local5:uint = m_freeProxy; _local4 = m_proxyPool[_local5]; m_freeProxy = _local4.GetNext(); _local4.overlapCount = 0; _local4.userData = _arg2; var _local6:uint = (2 * m_proxyCount); var _local7:Array = new Array(); var _local8:Array = new Array(); ComputeBounds(_local7, _local8, _arg1); var _local9:int; 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++; var _local10:int; while (_local10 < m_queryResultCount) { m_pairManager.AddBufferedPair(_local5, m_queryResults[_local10]); _local10++; }; m_pairManager.Commit(); m_queryResultCount = 0; IncrementTimeStamp(); return (_local5); } public function DestroyProxy(_arg1:uint):void{ var _local2:b2Bound; var _local3:b2Bound; 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; var _local4:b2Proxy = m_proxyPool[_arg1]; var _local5:int = (2 * m_proxyCount); var _local6:int; 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++; }; var _local7:int; while (_local7 < m_queryResultCount) { m_pairManager.RemoveBufferedPair(_arg1, m_queryResults[_local7]); _local7++; }; m_pairManager.Commit(); m_queryResultCount = 0; IncrementTimeStamp(); _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(m_freeProxy); m_freeProxy = _arg1; m_proxyCount--; } public function TestOverlap(_arg1:b2BoundValues, _arg2:b2Proxy):Boolean{ var _local4:Array; var _local5:b2Bound; var _local3:int; 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 _local6:b2Bound; var _local7:uint; var _local8:uint; var _local9:uint; var _local10:b2Bound; var _local5:int; 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 IncrementOverlapCount(_arg1:uint):void{ var _local2:b2Proxy = m_proxyPool[_arg1]; if (_local2.timeStamp < m_timeStamp){ _local2.timeStamp = m_timeStamp; _local2.overlapCount = 1; } else { _local2.overlapCount = 2; m_queryResults[m_queryResultCount] = _arg1; m_queryResultCount++; }; } 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 QuerySegment(_arg1:b2Segment, _arg2, _arg3:int, _arg4:Function):int{ var _local15:int; var _local16:int; var _local17:uint; var _local18:b2Proxy; var _local19:uint; var _local20:uint; var _local24:Number; var _local25:Number; var _local27:int; var _local28:Number; var _local29:Number; var _local30:uint; var _local5:Number = 1; var _local6:Number = ((_arg1.p2.x - _arg1.p1.x) * m_quantizationFactor.x); var _local7:Number = ((_arg1.p2.y - _arg1.p1.y) * m_quantizationFactor.y); var _local8:int = ((_local6 < -(Number.MIN_VALUE))) ? -1 : ((_local6 > Number.MIN_VALUE)) ? 1 : 0; var _local9:int = ((_local7 < -(Number.MIN_VALUE))) ? -1 : ((_local7 > Number.MIN_VALUE)) ? 1 : 0; var _local10:Number = (m_quantizationFactor.x * (_arg1.p1.x - m_worldAABB.lowerBound.x)); var _local11:Number = (m_quantizationFactor.y * (_arg1.p1.y - m_worldAABB.lowerBound.y)); var _local12:Array = new Array(); var _local13:Array = new Array(); _local12[0] = (uint(_local10) & (b2Settings.USHRT_MAX - 1)); _local12[1] = (uint(_local11) & (b2Settings.USHRT_MAX - 1)); _local13[0] = (_local12[0] + 1); _local13[1] = (_local12[1] + 1); var _local14:Array = new Array(); var _local21:Array = [_local19]; var _local22:Array = [_local20]; Query(_local21, _local22, _local12[0], _local13[0], m_bounds[0], (2 * m_proxyCount), 0); if (_local8 >= 0){ _local15 = (_local22[0] - 1); } else { _local15 = _local21[0]; }; Query(_local21, _local22, _local12[1], _local13[1], m_bounds[1], (2 * m_proxyCount), 1); if (_local9 >= 0){ _local16 = (_local22[0] - 1); } else { _local16 = _local21[0]; }; if (_arg4 != null){ _local27 = 0; while (_local27 < m_queryResultCount) { m_querySortKeys[_local27] = _arg4(m_proxyPool[m_queryResults[_local27]].userData); _local27++; }; _local27 = 0; while (_local27 < (m_queryResultCount - 1)) { _local28 = m_querySortKeys[_local27]; _local29 = m_querySortKeys[(_local27 + 1)]; if (((_local28)<0) ? (_local29 >= 0) : (((_local28 > _local29)) && ((_local29 >= 0)))){ m_querySortKeys[(_local27 + 1)] = _local28; m_querySortKeys[_local27] = _local29; _local30 = m_queryResults[(_local27 + 1)]; m_queryResults[(_local27 + 1)] = m_queryResults[_local27]; m_queryResults[_local27] = _local30; --_local27; if (_local27 == -1){ _local27 = 0; }; } else { _local27++; }; }; while ((((m_queryResultCount > 0)) && ((m_querySortKeys[(m_queryResultCount - 1)] < 0)))) { m_queryResultCount--; }; }; var _local23:Boolean; if ((((_local15 < 0)) || ((_local15 >= (m_proxyCount * 2))))){ _local23 = false; }; if ((((_local16 < 0)) || ((_local16 >= (m_proxyCount * 2))))){ _local23 = false; }; if (_local23){ if (_local8 != 0){ if (_local8 > 0){ _local15++; if (_local15 == (m_proxyCount * 2)){ _local23 = false; }; } else { --_local15; if (_local15 < 0){ _local23 = false; }; }; _local24 = ((m_bounds[0][_local15].value - _local10) / _local6); }; if (_local9 != 0){ if (_local9 > 0){ _local16++; if (_local16 == (m_proxyCount * 2)){ _local23 = false; }; } else { --_local16; if (_local16 < 0){ _local23 = false; }; }; _local25 = ((m_bounds[1][_local16].value - _local11) / _local7); }; }; while (_local23) { if ((((_local9 == 0)) || (((!((_local8 == 0))) && ((_local24 < _local25)))))){ if (_local24 > _local5){ break; }; if (((_local8 > 0)) ? m_bounds[0][_local15].IsLower() : m_bounds[0][_local15].IsUpper()){ _local17 = m_bounds[0][_local15].proxyId; _local18 = m_proxyPool[_local17]; if (_local9 >= 0){ if ((((_local18.lowerBounds[1] <= (_local16 - 1))) && ((_local18.upperBounds[1] >= _local16)))){ if (_arg4 != null){ AddProxyResult(_local17, _local18, _arg3, _arg4); } else { m_queryResults[m_queryResultCount] = _local17; m_queryResultCount++; }; }; } else { if ((((_local18.lowerBounds[1] <= _local16)) && ((_local18.upperBounds[1] >= (_local16 + 1))))){ if (_arg4 != null){ AddProxyResult(_local17, _local18, _arg3, _arg4); } else { m_queryResults[m_queryResultCount] = _local17; m_queryResultCount++; }; }; }; }; if (((((((!((_arg4 == null))) && ((m_queryResultCount == _arg3)))) && ((m_queryResultCount > 0)))) && ((_local24 > m_querySortKeys[(m_queryResultCount - 1)])))){ break; }; if (_local8 > 0){ _local15++; if (_local15 == (m_proxyCount * 2)){ break; }; } else { --_local15; if (_local15 < 0){ break; }; }; _local24 = ((m_bounds[0][_local15].value - _local10) / _local6); } else { if (_local25 > _local5){ break; }; if (((_local9 > 0)) ? m_bounds[1][_local16].IsLower() : m_bounds[1][_local16].IsUpper()){ _local17 = m_bounds[1][_local16].proxyId; _local18 = m_proxyPool[_local17]; if (_local8 >= 0){ if ((((_local18.lowerBounds[0] <= (_local15 - 1))) && ((_local18.upperBounds[0] >= _local15)))){ if (_arg4 != null){ AddProxyResult(_local17, _local18, _arg3, _arg4); } else { m_queryResults[m_queryResultCount] = _local17; m_queryResultCount++; }; }; } else { if ((((_local18.lowerBounds[0] <= _local15)) && ((_local18.upperBounds[0] >= (_local15 + 1))))){ if (_arg4 != null){ AddProxyResult(_local17, _local18, _arg3, _arg4); } else { m_queryResults[m_queryResultCount] = _local17; m_queryResultCount++; }; }; }; }; if (((((((!((_arg4 == null))) && ((m_queryResultCount == _arg3)))) && ((m_queryResultCount > 0)))) && ((_local25 > m_querySortKeys[(m_queryResultCount - 1)])))){ break; }; if (_local9 > 0){ _local16++; if (_local16 == (m_proxyCount * 2)){ break; }; } else { --_local16; if (_local16 < 0){ break; }; }; _local25 = ((m_bounds[1][_local16].value - _local11) / _local7); }; }; var _local26:int; _local27 = 0; while ((((_local27 < m_queryResultCount)) && ((_local26 < _arg3)))) { _local18 = m_proxyPool[m_queryResults[_local27]]; _arg2[_local27] = _local18.userData; _local27++; _local26++; }; m_queryResultCount = 0; IncrementTimeStamp(); return (_local26); } 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 _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; }; var _local12:uint = (2 * m_proxyCount); var _local13:b2Proxy = m_proxyPool[_arg1]; var _local14:b2BoundValues = new b2BoundValues(); ComputeBounds(_local14.lowerValues, _local14.upperValues, _arg2); var _local15:b2BoundValues = 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 (TestOverlap(_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 (TestOverlap(_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 (TestOverlap(_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 (TestOverlap(_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 _local6:int; var _local7:b2Bound; var _local4:int; var _local5:int = (_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.Collision.Shapes.*; import Box2D.Common.Math.*; 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 _local11:b2Mat22; var _local12:b2Vec2; var _local25:Number; var _local6:int = _arg1.m_vertexCount; var _local7:Array = _arg1.m_vertices; var _local8:Array = _arg1.m_normals; var _local9:int = _arg4.m_vertexCount; var _local10:Array = _arg4.m_vertices; _local11 = _arg2.R; _local12 = _local8[_arg3]; var _local13:Number = ((_local11.col1.x * _local12.x) + (_local11.col2.x * _local12.y)); var _local14:Number = ((_local11.col1.y * _local12.x) + (_local11.col2.y * _local12.y)); _local11 = _arg5.R; var _local15:Number = ((_local11.col1.x * _local13) + (_local11.col1.y * _local14)); var _local16:Number = ((_local11.col2.x * _local13) + (_local11.col2.y * _local14)); var _local17:int; var _local18:Number = Number.MAX_VALUE; var _local19:int; 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; var _local20:Number = (_arg2.position.x + ((_local11.col1.x * _local12.x) + (_local11.col2.x * _local12.y))); var _local21:Number = (_arg2.position.y + ((_local11.col1.y * _local12.x) + (_local11.col2.y * _local12.y))); _local12 = _local10[_local17]; _local11 = _arg5.R; var _local22:Number = (_arg5.position.x + ((_local11.col1.x * _local12.x) + (_local11.col2.x * _local12.y))); var _local23:Number = (_arg5.position.y + ((_local11.col1.y * _local12.x) + (_local11.col2.y * _local12.y))); _local22 = (_local22 - _local20); _local23 = (_local23 - _local21); var _local24:Number = ((_local22 * _local13) + (_local23 * _local14)); return (_local24); } public static function b2TestOverlap(_arg1:b2AABB, _arg2:b2AABB):Boolean{ var _local3:b2Vec2 = _arg2.lowerBound; var _local4:b2Vec2 = _arg1.upperBound; var _local5:Number = (_local3.x - _local4.x); var _local6:Number = (_local3.y - _local4.y); _local3 = _arg1.lowerBound; _local4 = _arg2.upperBound; var _local7:Number = (_local3.x - _local4.x); var _local8:Number = (_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 _local12:b2Mat22; var _local13:b2Vec2; var _local20:ClipVertex; var _local23:Number; var _local7:int = _arg2.m_vertexCount; var _local8:Array = _arg2.m_normals; var _local9:int = _arg5.m_vertexCount; var _local10:Array = _arg5.m_vertices; var _local11:Array = _arg5.m_normals; _local12 = _arg3.R; _local13 = _local8[_arg4]; var _local14:Number = ((_local12.col1.x * _local13.x) + (_local12.col2.x * _local13.y)); var _local15:Number = ((_local12.col1.y * _local13.x) + (_local12.col2.y * _local13.y)); _local12 = _arg6.R; var _local16:Number = ((_local12.col1.x * _local14) + (_local12.col1.y * _local15)); _local15 = ((_local12.col2.x * _local14) + (_local12.col2.y * _local15)); _local14 = _local16; var _local17:int; var _local18:Number = Number.MAX_VALUE; var _local19:int; while (_local19 < _local9) { _local13 = _local11[_local19]; _local23 = ((_local14 * _local13.x) + (_local15 * _local13.y)); if (_local23 < _local18){ _local18 = _local23; _local17 = _local19; }; _local19++; }; var _local21:int = _local17; var _local22:int = (((_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.features.referenceEdge = _arg4; _local20.id.features.incidentEdge = _local21; _local20.id.features.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.features.referenceEdge = _arg4; _local20.id.features.incidentEdge = _local22; _local20.id.features.incidentVertex = 1; } public static function b2CollidePolygons(_arg1:b2Manifold, _arg2:b2PolygonShape, _arg3:b2XForm, _arg4:b2PolygonShape, _arg5:b2XForm):void{ var _local6:ClipVertex; var _local13:b2PolygonShape; var _local14:b2PolygonShape; var _local17:int; var _local18:uint; var _local34:int; var _local37:b2Vec2; var _local38:Number; var _local39:b2ManifoldPoint; _arg1.pointCount = 0; var _local7:int; var _local8:Array = [_local7]; var _local9:Number = FindMaxSeparation(_local8, _arg2, _arg3, _arg4, _arg5); _local7 = _local8[0]; if (_local9 > 0){ return; }; var _local10:int; var _local11:Array = [_local10]; var _local12:Number = FindMaxSeparation(_local11, _arg4, _arg5, _arg2, _arg3); _local10 = _local11[0]; if (_local12 > 0){ return; }; var _local15:b2XForm = new b2XForm(); var _local16:b2XForm = new b2XForm(); var _local19:Number = 0.98; var _local20:Number = 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; }; var _local21:Array = [new ClipVertex(), new ClipVertex()]; FindIncidentEdge(_local21, _local13, _local15, _local17, _local14, _local16); var _local22:int = _local13.m_vertexCount; var _local23:Array = _local13.m_vertices; var _local24:b2Vec2 = _local23[_local17]; var _local25:b2Vec2 = _local24.Copy(); if ((_local17 + 1) < _local22){ _local24 = _local23[int((_local17 + 1))]; _local37 = _local24.Copy(); } else { _local24 = _local23[0]; _local37 = _local24.Copy(); }; var _local26:b2Vec2 = b2Math.SubtractVV(_local37, _local25); var _local27:b2Vec2 = b2Math.b2MulMV(_local15.R, b2Math.SubtractVV(_local37, _local25)); _local27.Normalize(); var _local28:b2Vec2 = b2Math.b2CrossVF(_local27, 1); _local25 = b2Math.b2MulX(_local15, _local25); _local37 = b2Math.b2MulX(_local15, _local37); var _local29:Number = b2Math.b2Dot(_local28, _local25); var _local30:Number = -(b2Math.b2Dot(_local27, _local25)); var _local31:Number = b2Math.b2Dot(_local27, _local37); var _local32:Array = [new ClipVertex(), new ClipVertex()]; var _local33:Array = [new ClipVertex(), new ClipVertex()]; _local34 = ClipSegmentToLine(_local32, _local21, _local27.Negative(), _local30); if (_local34 < 2){ return; }; _local34 = ClipSegmentToLine(_local33, _local32, _local27, _local31); if (_local34 < 2){ return; }; _arg1.normal = (_local18) ? _local28.Negative() : _local28.Copy(); var _local35:int; var _local36:int; 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.features.flip = _local18; _local35++; }; _local36++; }; _arg1.pointCount = _local35; } public static function FindMaxSeparation(_arg1:Array, _arg2:b2PolygonShape, _arg3:b2XForm, _arg4:b2PolygonShape, _arg5:b2XForm):Number{ var _local8:b2Vec2; var _local9:b2Mat22; var _local22:int; var _local23:Number; var _local24:int; var _local25:Number; var _local6:int = _arg2.m_vertexCount; var _local7:Array = _arg2.m_normals; _local9 = _arg5.R; _local8 = _arg4.m_centroid; var _local10:Number = (_arg5.position.x + ((_local9.col1.x * _local8.x) + (_local9.col2.x * _local8.y))); var _local11:Number = (_arg5.position.y + ((_local9.col1.y * _local8.x) + (_local9.col2.y * _local8.y))); _local9 = _arg3.R; _local8 = _arg2.m_centroid; _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)))); var _local12:Number = ((_local10 * _arg3.R.col1.x) + (_local11 * _arg3.R.col1.y)); var _local13:Number = ((_local10 * _arg3.R.col2.x) + (_local11 * _arg3.R.col2.y)); var _local14:int; var _local15:Number = -(Number.MAX_VALUE); var _local16:int; while (_local16 < _local6) { _local8 = _local7[_local16]; _local25 = ((_local8.x * _local12) + (_local8.y * _local13)); if (_local25 > _local15){ _local15 = _local25; _local14 = _local16; }; _local16++; }; var _local17:Number = EdgeSeparation(_arg2, _arg3, _local14, _arg4, _arg5); if (_local17 > 0){ return (_local17); }; var _local18:int = (((_local14 - 1) >= 0)) ? (_local14 - 1) : (_local6 - 1); var _local19:Number = EdgeSeparation(_arg2, _arg3, _local18, _arg4, _arg5); if (_local19 > 0){ return (_local19); }; var _local20:int = (((_local14 + 1) < _local6)) ? (_local14 + 1) : 0; var _local21:Number = 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 _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); var _local10:Number = (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 _local18:Number; var _local24:Number; var _local25:Number; _arg1.pointCount = 0; _local6 = _arg3.R; _local7 = _arg2.m_localPosition; var _local8:Number = (_arg3.position.x + ((_local6.col1.x * _local7.x) + (_local6.col2.x * _local7.y))); var _local9:Number = (_arg3.position.y + ((_local6.col1.y * _local7.x) + (_local6.col2.y * _local7.y))); _local6 = _arg5.R; _local7 = _arg4.m_localPosition; var _local10:Number = (_arg5.position.x + ((_local6.col1.x * _local7.x) + (_local6.col2.x * _local7.y))); var _local11:Number = (_arg5.position.y + ((_local6.col1.y * _local7.x) + (_local6.col2.y * _local7.y))); var _local12:Number = (_local10 - _local8); var _local13:Number = (_local11 - _local9); var _local14:Number = ((_local12 * _local12) + (_local13 * _local13)); var _local15:Number = _arg2.m_radius; var _local16:Number = _arg4.m_radius; var _local17:Number = (_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; var _local19:b2ManifoldPoint = _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)); var _local20:Number = (0.5 * (_local8 + _local10)); var _local21:Number = (0.5 * (_local9 + _local11)); var _local22:Number = (_local20 - _arg3.position.x); var _local23:Number = (_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 _local17:Number; var _local32:Number; var _local33:Number; var _local34:Number; _arg1.pointCount = 0; _local12 = _arg5.R; _local11 = _arg4.m_localPosition; var _local13:Number = (_arg5.position.x + ((_local12.col1.x * _local11.x) + (_local12.col2.x * _local11.y))); var _local14:Number = (_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; var _local15:Number = ((_local7 * _local12.col1.x) + (_local8 * _local12.col1.y)); var _local16:Number = ((_local7 * _local12.col2.x) + (_local8 * _local12.col2.y)); var _local18:int; var _local19:Number = -(Number.MAX_VALUE); var _local20:Number = _arg4.m_radius; var _local21:int = _arg2.m_vertexCount; var _local22:Array = _arg2.m_vertices; var _local23:Array = _arg2.m_normals; var _local24:int; 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.features.incidentEdge = _local18; _local6.id.features.incidentVertex = b2_nullFeature; _local6.id.features.referenceEdge = 0; _local6.id.features.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; }; var _local25:int = _local18; var _local26:int = (((_local25 + 1) < _local21)) ? (_local25 + 1) : 0; _local11 = _local22[_local25]; var _local27:b2Vec2 = _local22[_local26]; var _local28:Number = (_local27.x - _local11.x); var _local29:Number = (_local27.y - _local11.y); var _local30:Number = Math.sqrt(((_local28 * _local28) + (_local29 * _local29))); _local28 = (_local28 / _local30); _local29 = (_local29 / _local30); _local7 = (_local15 - _local11.x); _local8 = (_local16 - _local11.y); var _local31:Number = ((_local7 * _local28) + (_local8 * _local29)); _local6 = _arg1.points[0]; if (_local31 <= 0){ _local32 = _local11.x; _local33 = _local11.y; _local6.id.features.incidentEdge = b2_nullFeature; _local6.id.features.incidentVertex = _local25; } else { if (_local31 >= _local30){ _local32 = _local27.x; _local33 = _local27.y; _local6.id.features.incidentEdge = b2_nullFeature; _local6.id.features.incidentVertex = _local26; } else { _local32 = ((_local28 * _local31) + _local11.x); _local33 = ((_local29 * _local31) + _local11.y); _local6.id.features.incidentEdge = _local18; _local6.id.features.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.features.referenceEdge = 0; _local6.id.features.flip = 0; } } }//package Box2D.Collision
Section 15
//b2ContactID (Box2D.Collision.b2ContactID) package Box2D.Collision { public class b2ContactID { public var _key:uint; public var features:Features; public function b2ContactID(){ features = new Features(); super(); features._m_id = this; } public function Set(_arg1:b2ContactID):void{ key = _arg1._key; } public function Copy():b2ContactID{ var _local1:b2ContactID = new b2ContactID(); _local1.key = key; return (_local1); } public function set key(_arg1:uint):void{ _key = _arg1; features._referenceEdge = (_key & 0xFF); features._incidentEdge = (((_key & 0xFF00) >> 8) & 0xFF); features._incidentVertex = (((_key & 0xFF0000) >> 16) & 0xFF); features._flip = (((_key & 4278190080) >> 24) & 0xFF); } public function get key():uint{ return (_key); } } }//package Box2D.Collision
Section 16
//b2ContactPoint (Box2D.Collision.b2ContactPoint) package Box2D.Collision { import Box2D.Collision.Shapes.*; import Box2D.Common.Math.*; public class b2ContactPoint { public var friction:Number; 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 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.Collision.Shapes.*; import Box2D.Common.Math.*; 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 _local6:b2Vec2; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local4:Number = (100 * Number.MIN_VALUE); var _local5:int; 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 _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; var _local8:Array = s_p1s; var _local9:Array = s_p2s; var _local10:Array = s_points; var _local11:int; _arg1.SetV(_arg3.GetFirstVertex(_arg4)); _arg2.SetV(_arg5.GetFirstVertex(_arg6)); var _local12:Number = 0; var _local13 = 20; var _local14:int; 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 _local19:Number; var _local20:Number; _local7 = _arg4.R; _local8 = _arg3.m_localPosition; var _local9:Number = (_arg4.position.x + ((_local7.col1.x * _local8.x) + (_local7.col2.x * _local8.y))); var _local10:Number = (_arg4.position.y + ((_local7.col1.y * _local8.x) + (_local7.col2.y * _local8.y))); _local7 = _arg6.R; _local8 = _arg5.m_localPosition; var _local11:Number = (_arg6.position.x + ((_local7.col1.x * _local8.x) + (_local7.col2.x * _local8.y))); var _local12:Number = (_arg6.position.y + ((_local7.col1.y * _local8.x) + (_local7.col2.y * _local8.y))); var _local13:Number = (_local11 - _local9); var _local14:Number = (_local12 - _local10); var _local15:Number = ((_local13 * _local13) + (_local14 * _local14)); var _local16:Number = (_arg3.m_radius - b2Settings.b2_toiSlop); var _local17:Number = (_arg5.m_radius - b2Settings.b2_toiSlop); var _local18:Number = (_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 _local35: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]; var _local14:b2Vec2 = _arg4[2]; var _local15:Number = _local6.x; var _local16:Number = _local6.y; var _local17:Number = _local7.x; var _local18:Number = _local7.y; var _local19:Number = _local8.x; var _local20:Number = _local8.y; var _local21:Number = (_local17 - _local15); var _local22:Number = (_local18 - _local16); var _local23:Number = (_local19 - _local15); var _local24:Number = (_local20 - _local16); var _local25:Number = (_local19 - _local17); var _local26:Number = (_local20 - _local18); var _local27:Number = -(((_local15 * _local21) + (_local16 * _local22))); var _local28:Number = ((_local17 * _local21) + (_local18 * _local22)); var _local29:Number = -(((_local15 * _local23) + (_local16 * _local24))); var _local30:Number = ((_local19 * _local23) + (_local20 * _local24)); var _local31:Number = -(((_local17 * _local25) + (_local18 * _local26))); var _local32:Number = ((_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); }; var _local33:Number = ((_local21 * _local24) - (_local22 * _local23)); var _local34:Number = (_local33 * ((_local15 * _local18) - (_local16 * _local17))); var _local36:Number = (_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); }; var _local37:Number = (_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); }; var _local38:Number = ((_local36 + _local37) + _local34); _local38 = (1 / _local38); var _local39:Number = (_local36 * _local38); var _local40:Number = (_local37 * _local38); var _local41:Number = ((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 _local12:Number; var _local13:Number; var _local14:Number; var _local9:b2Point = 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))); var _local10:Number = DistanceGeneric(_arg1, _arg2, _arg3, _arg4, _local9, b2Math.b2XForm_identity); var _local11:Number = (_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 = _arg3.m_type; var _local8:int = _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 _local9:b2Vec2; var _local10:b2Vec2; var _local11:b2Vec2; var _local17:Number; var _local6:b2Vec2 = _arg5[0]; var _local7:b2Vec2 = _arg5[1]; var _local8:b2Vec2 = _arg3[0]; _local9 = _arg3[1]; _local10 = _arg4[0]; _local11 = _arg4[1]; var _local12:Number = -(_local7.x); var _local13:Number = -(_local7.y); var _local14:Number = (_local6.x - _local7.x); var _local15:Number = (_local6.y - _local7.y); var _local16:Number = 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 pointCount:int;// = 0 public var normal:b2Vec2; public var points:Array; public function b2Manifold(){ points = new Array(b2Settings.b2_maxManifoldPoints); var _local1:int; while (_local1 < b2Settings.b2_maxManifoldPoints) { points[_local1] = new b2ManifoldPoint(); _local1++; }; normal = new b2Vec2(); } public function Set(_arg1:b2Manifold):void{ pointCount = _arg1.pointCount; var _local2:int; 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; 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 proxyId1:uint; public var userData;// = null 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 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 m_pairBuffer:Array; public var m_hashTable:Array; public var m_callback:b2PairCallback; public var m_pairs:Array; public var m_pairBufferCount:int; public var m_broadPhase:b2BroadPhase; public var m_freePair: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++; }; m_pairBuffer = new Array(b2Settings.b2_maxPairs); _local1 = 0; while (_local1 < b2Settings.b2_maxPairs) { m_pairBuffer[_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; m_pairBufferCount = 0; } private function FindHash(_arg1:uint, _arg2:uint, _arg3:uint):b2Pair{ var _local4:b2Pair; var _local5:uint = 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 Find(_arg1:uint, _arg2:uint):b2Pair{ var _local4:uint; if (_arg1 > _arg2){ _local4 = _arg1; _arg1 = _arg2; _arg2 = _local4; }; var _local3:uint = (Hash(_arg1, _arg2) & b2Pair.b2_tableMask); return (FindHash(_arg1, _arg2, _local3)); } private function ValidateBuffer():void{ } public function Commit():void{ var _local1:b2BufferedPair; var _local2:int; var _local5:b2Pair; var _local6:b2Proxy; var _local7:b2Proxy; var _local3:int; var _local4:Array = m_broadPhase.m_proxyPool; _local2 = 0; while (_local2 < m_pairBufferCount) { _local1 = m_pairBuffer[_local2]; _local5 = Find(_local1.proxyId1, _local1.proxyId2); _local5.ClearBuffered(); _local6 = _local4[_local5.proxyId1]; _local7 = _local4[_local5.proxyId2]; if (_local5.IsRemoved()){ if (_local5.IsFinal() == true){ m_callback.PairRemoved(_local6.userData, _local7.userData, _local5.userData); }; _local1 = m_pairBuffer[_local3]; _local1.proxyId1 = _local5.proxyId1; _local1.proxyId2 = _local5.proxyId2; _local3++; } else { if (_local5.IsFinal() == false){ _local5.userData = m_callback.PairAdded(_local6.userData, _local7.userData); _local5.SetFinal(); }; }; _local2++; }; _local2 = 0; while (_local2 < _local3) { _local1 = m_pairBuffer[_local2]; RemovePair(_local1.proxyId1, _local1.proxyId2); _local2++; }; m_pairBufferCount = 0; if (b2BroadPhase.s_validate){ ValidateTable(); }; } public function RemoveBufferedPair(_arg1:int, _arg2:int):void{ var _local3:b2BufferedPair; var _local4:b2Pair = Find(_arg1, _arg2); if (_local4 == null){ return; }; if (_local4.IsBuffered() == false){ _local4.SetBuffered(); _local3 = m_pairBuffer[m_pairBufferCount]; _local3.proxyId1 = _local4.proxyId1; _local3.proxyId2 = _local4.proxyId2; m_pairBufferCount++; }; _local4.SetRemoved(); if (b2BroadPhase.s_validate){ ValidateBuffer(); }; } private function RemovePair(_arg1:uint, _arg2:uint){ var _local3:b2Pair; var _local7:uint; var _local8:uint; var _local9:*; if (_arg1 > _arg2){ _local7 = _arg1; _arg1 = _arg2; _arg2 = _local7; }; var _local4:uint = (Hash(_arg1, _arg2) & b2Pair.b2_tableMask); var _local5:uint = m_hashTable[_local4]; var _local6:b2Pair; 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 = m_freePair; _local3.proxyId1 = b2Pair.b2_nullProxy; _local3.proxyId2 = b2Pair.b2_nullProxy; _local3.userData = null; _local3.status = 0; m_freePair = _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; m_callback = _arg2; } public function AddBufferedPair(_arg1:int, _arg2:int):void{ var _local3:b2BufferedPair; var _local4:b2Pair = AddPair(_arg1, _arg2); if (_local4.IsBuffered() == false){ _local4.SetBuffered(); _local3 = m_pairBuffer[m_pairBufferCount]; _local3.proxyId1 = _local4.proxyId1; _local3.proxyId2 = _local4.proxyId2; m_pairBufferCount++; }; _local4.ClearRemoved(); if (b2BroadPhase.s_validate){ ValidateBuffer(); }; } private function AddPair(_arg1:uint, _arg2:uint):b2Pair{ var _local6:uint; if (_arg1 > _arg2){ _local6 = _arg1; _arg1 = _arg2; _arg2 = _local6; }; var _local3:uint = (Hash(_arg1, _arg2) & b2Pair.b2_tableMask); var _local4 = FindHash(_arg1, _arg2, _local3); if (_local4 != null){ return (_local4); }; var _local5:uint = m_freePair; _local4 = m_pairs[_local5]; m_freePair = _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 ValidateTable():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 = (((_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 userData;// = null public var lowerBounds:Array; public var upperBounds:Array; public var timeStamp:uint; public function b2Proxy(){ lowerBounds = [uint(0), uint(0)]; upperBounds = [uint(0), uint(0)]; 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.*; import Box2D.Common.*; 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 _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local5:b2Vec2 = _arg3.p1; var _local6:Number = (_arg3.p2.x - _local5.x); var _local7:Number = (_arg3.p2.y - _local5.y); var _local8:Number = (p2.x - p1.x); var _local9:Number = (p2.y - p1.y); var _local10:Number = _local9; var _local11:Number = -(_local8); var _local12:Number = (100 * Number.MIN_VALUE); var _local13:Number = -(((_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); } public function Extend(_arg1:b2AABB):void{ ExtendForward(_arg1); ExtendBackward(_arg1); } public function ExtendForward(_arg1:b2AABB):void{ var _local4:Number; var _local2:Number = (p2.x - p1.x); var _local3:Number = (p2.y - p1.y); _local4 = Math.min(((_local2 > 0)) ? ((_arg1.upperBound.x - p1.x) / _local2) : ((_local2 < 0)) ? ((_arg1.lowerBound.x - p1.x) / _local2) : Number.POSITIVE_INFINITY, ((_local3 > 0)) ? ((_arg1.upperBound.y - p1.y) / _local3) : ((_local3 < 0)) ? ((_arg1.lowerBound.y - p1.y) / _local3) : Number.POSITIVE_INFINITY); p2.x = (p1.x + (_local2 * _local4)); p2.y = (p1.y + (_local3 * _local4)); } public function ExtendBackward(_arg1:b2AABB):void{ var _local4:Number; var _local2:Number = (-(p2.x) + p1.x); var _local3:Number = (-(p2.y) + p1.y); _local4 = Math.min(((_local2 > 0)) ? ((_arg1.upperBound.x - p2.x) / _local2) : ((_local2 < 0)) ? ((_arg1.lowerBound.x - p2.x) / _local2) : Number.POSITIVE_INFINITY, ((_local3 > 0)) ? ((_arg1.upperBound.y - p2.y) / _local3) : ((_local3 < 0)) ? ((_arg1.lowerBound.y - p2.y) / _local3) : Number.POSITIVE_INFINITY); p1.x = (p2.x + (_local2 * _local4)); p1.y = (p2.y + (_local3 * _local4)); } } }//package Box2D.Collision
Section 27
//b2TimeOfImpact (Box2D.Collision.b2TimeOfImpact) package Box2D.Collision { import Box2D.Collision.Shapes.*; import Box2D.Common.Math.*; 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 _local25:Number; var _local26:b2XForm; var _local27:b2XForm; var _local28:Number; var _local29:Number; var _local30:Number; var _local31:Number; var _local7:Number = _arg1.m_sweepRadius; var _local8:Number = _arg3.m_sweepRadius; var _local9:Number = _arg2.t0; var _local10:Number = (_arg2.c.x - _arg2.c0.x); var _local11:Number = (_arg2.c.y - _arg2.c0.y); var _local12:Number = (_arg4.c.x - _arg4.c0.x); var _local13:Number = (_arg4.c.y - _arg4.c0.y); var _local14:Number = (_arg2.a - _arg2.a0); var _local15:Number = (_arg4.a - _arg4.a0); var _local16:Number = 0; var _local17:b2Vec2 = s_p1; var _local18:b2Vec2 = s_p2; var _local19 = 20; var _local20:int; var _local21:Number = 0; var _local22:Number = 0; var _local23:Number = 0; var _local24:Number = 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; }; }; if (((((_local23 - _local24) < (0.05 * b2Settings.b2_toiSlop))) || ((_local20 == _local19)))){ break; }; _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; }; if (_local31 < ((1 + (100 * Number.MIN_VALUE)) * _local16)){ break; }; _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 id:b2ContactID; public var v:b2Vec2; 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 _referenceEdge:int; public var _incidentEdge:int; public var _flip:int; public var _incidentVertex:int; public var _m_id:b2ContactID; public function get referenceEdge():int{ return (_referenceEdge); } public function set incidentVertex(_arg1:int):void{ _incidentVertex = _arg1; _m_id._key = ((_m_id._key & 4278255615) | ((_incidentVertex << 16) & 0xFF0000)); } public function get flip():int{ return (_flip); } public function get incidentEdge():int{ return (_incidentEdge); } public function set referenceEdge(_arg1:int):void{ _referenceEdge = _arg1; _m_id._key = ((_m_id._key & 4294967040) | (_referenceEdge & 0xFF)); } public function get incidentVertex():int{ return (_incidentVertex); } public function set flip(_arg1:int):void{ _flip = _arg1; _m_id._key = ((_m_id._key & 0xFFFFFF) | ((_flip << 24) & 4278190080)); } public function set incidentEdge(_arg1:int):void{ _incidentEdge = _arg1; _m_id._key = ((_m_id._key & 4294902015) | ((_incidentEdge << 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 SetVV(_arg1:b2Vec2, _arg2:b2Vec2):void{ col1.SetV(_arg1); col2.SetV(_arg2); } public function Set(_arg1:Number):void{ var _local2:Number; _local2 = Math.cos(_arg1); var _local3:Number = Math.sin(_arg1); col1.x = _local2; col2.x = -(_local3); col1.y = _local3; col2.y = _local2; } 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 _local4:Number; var _local6:Number; _local2 = col1.x; var _local3:Number = col2.x; _local4 = col1.y; var _local5:Number = 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 = col1.x; var _local5:Number = col2.x; var _local6:Number = col1.y; var _local7:Number = col2.y; var _local8:Number = ((_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 = new b2Vec2((_arg2 * _arg1.y), (-(_arg2) * _arg1.x)); return (_local3); } public static function AddVV(_arg1:b2Vec2, _arg2:b2Vec2):b2Vec2{ var _local3:b2Vec2 = 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 = 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 = (_arg1.x - _arg2.x); var _local4:Number = (_arg1.y - _arg2.y); return (((_local3 * _local3) + (_local4 * _local4))); } public static function b2Swap(_arg1:Array, _arg2:Array):void{ var _local3:* = _arg1[0]; _arg1[0] = _arg2[0]; _arg2[0] = _local3; } public static function b2AbsM(_arg1:b2Mat22):b2Mat22{ var _local2:b2Mat22 = new b2Mat22(0, b2AbsV(_arg1.col1), b2AbsV(_arg1.col2)); return (_local2); } public static function SubtractVV(_arg1:b2Vec2, _arg2:b2Vec2):b2Vec2{ var _local3:b2Vec2 = 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 = new b2Vec2(b2Abs(_arg1.x), b2Abs(_arg1.y)); return (_local2); } public static function MulFV(_arg1:Number, _arg2:b2Vec2):b2Vec2{ var _local3:b2Vec2 = 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 = new b2Vec2((-(_arg1) * _arg2.y), (_arg1 * _arg2.x)); return (_local3); } public static function AddMM(_arg1:b2Mat22, _arg2:b2Mat22):b2Mat22{ var _local3:b2Mat22 = 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 = (_arg1.x - _arg2.x); var _local4:Number = (_arg1.y - _arg2.y); return (Math.sqrt(((_local3 * _local3) + (_local4 * _local4)))); } public static function b2MulTMM(_arg1:b2Mat22, _arg2:b2Mat22):b2Mat22{ var _local3:b2Vec2 = new b2Vec2(b2Dot(_arg1.col1, _arg2.col1), b2Dot(_arg1.col2, _arg2.col1)); var _local4:b2Vec2 = new b2Vec2(b2Dot(_arg1.col1, _arg2.col2), b2Dot(_arg1.col2, _arg2.col2)); var _local5:b2Mat22 = new b2Mat22(0, _local3, _local4); return (_local5); } public static function b2MaxV(_arg1:b2Vec2, _arg2:b2Vec2):b2Vec2{ var _local3:b2Vec2 = new b2Vec2(b2Max(_arg1.x, _arg2.x), b2Max(_arg1.y, _arg2.y)); return (_local3); } public static function b2IsPowerOfTwo(_arg1:uint):Boolean{ var _local2:Boolean = (((_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 = Math.random(); _local3 = (((_arg2 - _arg1) * _local3) + _arg1); return (_local3); } public static function b2MulTMV(_arg1:b2Mat22, _arg2:b2Vec2):b2Vec2{ var _local3:b2Vec2 = 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 = 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 = 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 a:Number; public var c:b2Vec2; public var a0:Number; public var c0:b2Vec2; 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 _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); }; var _local3:b2Mat22 = _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 y:Number; public var x:Number; public function b2Vec2(_arg1:Number=0, _arg2:Number=0):void{ x = _arg1; y = _arg2; } public function Add(_arg1:b2Vec2):void{ x = (x + _arg1.x); y = (y + _arg1.y); } 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 MulM(_arg1:b2Mat22):void{ var _local2:Number = x; x = ((_arg1.col1.x * _local2) + (_arg1.col2.x * y)); y = ((_arg1.col1.y * _local2) + (_arg1.col2.y * y)); } public function SetZero():void{ x = 0; y = 0; } public function MinV(_arg1:b2Vec2):void{ x = ((x < _arg1.x)) ? x : _arg1.x; y = ((y < _arg1.y)) ? y : _arg1.y; } public function Normalize():Number{ var _local1:Number = Math.sqrt(((x * x) + (y * y))); if (_local1 < Number.MIN_VALUE){ return (0); }; var _local2:Number = (1 / _local1); x = (x * _local2); y = (y * _local2); return (_local1); } public function CrossVF(_arg1:Number):void{ var _local2:Number = x; x = (_arg1 * y); y = (-(_arg1) * _local2); } public function MaxV(_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 Negative():b2Vec2{ return (new b2Vec2(-(x), -(y))); } public function CrossFV(_arg1:Number):void{ var _local2:Number = x; x = (-(_arg1) * y); y = (_arg1 * _local2); } public function Abs():void{ if (x < 0){ x = -(x); }; if (y < 0){ y = -(y); }; } public function Subtract(_arg1:b2Vec2):void{ x = (x - _arg1.x); y = (y - _arg1.y); } public function Copy():b2Vec2{ return (new b2Vec2(x, y)); } public function MulTM(_arg1:b2Mat22):void{ var _local2:Number = 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 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 position:b2Vec2; public var R:b2Mat22; 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 _r:uint;// = 0 private var _g:uint;// = 0 private var _b:uint;// = 0 public function b2Color(_arg1:Number, _arg2:Number, _arg3:Number){ _r = uint((0xFF * b2Math.b2Clamp(_arg1, 0, 1))); _g = uint((0xFF * b2Math.b2Clamp(_arg2, 0, 1))); _b = uint((0xFF * b2Math.b2Clamp(_arg3, 0, 1))); } public function Set(_arg1:Number, _arg2:Number, _arg3:Number):void{ _r = uint((0xFF * b2Math.b2Clamp(_arg1, 0, 1))); _g = uint((0xFF * b2Math.b2Clamp(_arg2, 0, 1))); _b = uint((0xFF * b2Math.b2Clamp(_arg3, 0, 1))); } public function set b(_arg1:Number):void{ _b = uint((0xFF * b2Math.b2Clamp(_arg1, 0, 1))); } public function get color():uint{ return (((_r | (_g << 8)) | (_b << 16))); } public function set r(_arg1:Number):void{ _r = uint((0xFF * b2Math.b2Clamp(_arg1, 0, 1))); } public function set g(_arg1:Number):void{ _g = 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 = 0x0200; 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 = 4096; 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.Collision.Shapes.*; import Box2D.Collision.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Common.*; public class b2CircleContact extends b2Contact { private var m_manifolds:Array; public var m_manifold:b2Manifold; private var m0:b2Manifold; private static const s_evalCP:b2ContactPoint = new b2ContactPoint(); public function b2CircleContact(_arg1:b2Shape, _arg2:b2Shape){ m_manifolds = [new b2Manifold()]; m0 = new b2Manifold(); super(_arg1, _arg2); m_manifold = m_manifolds[0]; m_manifold.pointCount = 0; var _local3:b2ManifoldPoint = m_manifold.points[0]; _local3.normalImpulse = 0; _local3.tangentImpulse = 0; } override public function Evaluate(_arg1:b2ContactListener):void{ var _local2:b2Vec2; var _local3:b2Vec2; var _local4:b2ManifoldPoint; var _local8:b2ManifoldPoint; var _local5:b2Body = m_shape1.m_body; var _local6:b2Body = m_shape2.m_body; m0.Set(m_manifold); b2Collision.b2CollideCircles(m_manifold, (m_shape1 as b2CircleShape), _local5.m_xf, (m_shape2 as b2CircleShape), _local6.m_xf); var _local7:b2ContactPoint = 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 (m0.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 = m0.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 ((((m0.pointCount > 0)) && (_arg1))){ _local4 = m0.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(m0.normal); _local7.separation = _local4.separation; _local7.id.key = _local4.id._key; _arg1.Remove(_local7); }; }; } override public function GetManifolds():Array{ return (m_manifolds); } 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.Collision.Shapes.*; import Box2D.Collision.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; 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.IsSensor()) || (_arg2.IsSensor()))){ 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 IsSolid():Boolean{ return (((m_flags & e_nonSolidFlag) == 0)); } public function GetShape1():b2Shape{ return (m_shape1); } public function GetShape2():b2Shape{ return (m_shape2); } public function GetNext():b2Contact{ return (m_next); } public function GetManifoldCount():int{ return (m_manifoldCount); } public function GetManifolds():Array{ return (null); } public function Update(_arg1:b2ContactListener):void{ var _local2:int = m_manifoldCount; Evaluate(_arg1); var _local3:int = m_manifoldCount; var _local4:b2Body = m_shape1.m_body; var _local5:b2Body = 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 _local2:int; s_registers = new Array(b2Shape.e_shapeTypeCount); var _local1:int; 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{ if (_arg1.m_manifoldCount > 0){ _arg1.m_shape1.m_body.WakeUp(); _arg1.m_shape2.m_body.WakeUp(); }; var _local3:int = _arg1.m_shape1.m_type; var _local4:int = _arg1.m_shape2.m_type; var _local5:b2ContactRegister = s_registers[_local3][_local4]; var _local6:Function = _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 _local8:b2Contact; var _local9:int; var _local10:b2Manifold; if (s_initialized == false){ InitializeRegisters(); s_initialized = true; }; var _local4:int = _arg1.m_type; var _local5:int = _arg2.m_type; var _local6:b2ContactRegister = s_registers[_local4][_local5]; var _local7:Function = _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.Negative(); _local9++; }; return (_local8); //unresolved jump }; return (null); } } }//package Box2D.Dynamics.Contacts
Section 39
//b2ContactConstraint (Box2D.Dynamics.Contacts.b2ContactConstraint) package Box2D.Dynamics.Contacts { import Box2D.Collision.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Common.*; public class b2ContactConstraint { public var points:Array; public var normal:b2Vec2; public var restitution:Number; public var body1:b2Body; public var manifold:b2Manifold; public var body2:b2Body; public var friction:Number; public var pointCount:int; public function b2ContactConstraint(){ normal = new b2Vec2(); super(); points = new Array(b2Settings.b2_maxManifoldPoints); var _local1:int; 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 tangentMass:Number; public var equalizedMass: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 other:b2Body; public var prev:b2ContactEdge; public var contact:b2Contact; public var next: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.Collision.Shapes.*; import Box2D.Collision.*; import Box2D.Common.Math.*; public class b2ContactResult { public var position:b2Vec2; public var shape1:b2Shape; public var shape2:b2Shape; public var normalImpulse:Number; public var normal:b2Vec2; 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.Collision.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Common.*; public class b2ContactSolver { public var m_constraintCount:int; public var m_constraints:Array; public var m_allocator; public var m_step:b2TimeStep; public function b2ContactSolver(_arg1:b2TimeStep, _arg2:Array, _arg3:int, _arg4){ var _local5:b2Contact; var _local6:int; var _local7:b2Vec2; var _local8:b2Mat22; 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; m_step = new b2TimeStep(); m_constraints = new Array(); super(); m_step.dt = _arg1.dt; m_step.inv_dt = _arg1.inv_dt; m_step.maxIterations = _arg1.maxIterations; m_allocator = _arg4; m_constraintCount = 0; _local6 = 0; while (_local6 < _arg3) { _local5 = _arg2[_local6]; m_constraintCount = (m_constraintCount + _local5.m_manifoldCount); _local6++; }; _local6 = 0; while (_local6 < m_constraintCount) { m_constraints[_local6] = new b2ContactConstraint(); _local6++; }; var _local9:int; _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 _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; var _local5:int; while (_local5 < m_constraintCount) { _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 _local3:b2Mat22; var _local4:b2Vec2; 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; var _local2:Number = 0; var _local5:int; while (_local5 < m_constraintCount) { _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 _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; var _local19:int; while (_local19 < m_constraintCount) { _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 _local2:b2ContactConstraint; var _local3:b2Manifold; var _local4:int; var _local5:b2ManifoldPoint; var _local6:b2ContactConstraintPoint; var _local1:int; while (_local1 < m_constraintCount) { _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 Evaluate(_arg1:b2ContactListener):void{ } override public function GetManifolds():Array{ return (null); } } }//package Box2D.Dynamics.Contacts
Section 46
//b2PolyAndCircleContact (Box2D.Dynamics.Contacts.b2PolyAndCircleContact) package Box2D.Dynamics.Contacts { import Box2D.Collision.Shapes.*; import Box2D.Collision.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Common.*; public class b2PolyAndCircleContact extends b2Contact { private var m_manifolds:Array; public var m_manifold:b2Manifold; private var m0:b2Manifold; private static const s_evalCP:b2ContactPoint = new b2ContactPoint(); public function b2PolyAndCircleContact(_arg1:b2Shape, _arg2:b2Shape){ m_manifolds = [new b2Manifold()]; m0 = new b2Manifold(); super(_arg1, _arg2); m_manifold = m_manifolds[0]; b2Settings.b2Assert((m_shape1.m_type == b2Shape.e_polygonShape)); b2Settings.b2Assert((m_shape2.m_type == b2Shape.e_circleShape)); m_manifold.pointCount = 0; var _local3:b2ManifoldPoint = m_manifold.points[0]; _local3.normalImpulse = 0; _local3.tangentImpulse = 0; } override public function Evaluate(_arg1:b2ContactListener):void{ var _local2:int; var _local3:b2Vec2; var _local4:b2Vec2; var _local5:b2ManifoldPoint; var _local10:b2ManifoldPoint; var _local11:Boolean; var _local12:uint; var _local13:int; var _local6:b2Body = m_shape1.m_body; var _local7:b2Body = m_shape2.m_body; m0.Set(m_manifold); b2Collision.b2CollidePolygonAndCircle(m_manifold, (m_shape1 as b2PolygonShape), _local6.m_xf, (m_shape2 as b2CircleShape), _local7.m_xf); var _local8:Array = [false, false]; var _local9:b2ContactPoint = 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 < m0.pointCount) { if (_local8[_local13] == true){ } else { _local5 = m0.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 < m0.pointCount) { if (_local8[_local2]){ } else { _local5 = m0.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(m0.normal); _local9.separation = _local5.separation; _local9.id.key = _local5.id._key; _arg1.Remove(_local9); }; _local2++; }; } override public function GetManifolds():Array{ return (m_manifolds); } 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.Collision.Shapes.*; import Box2D.Collision.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Common.*; public class b2PolygonContact extends b2Contact { private var m_manifolds:Array; private var m0:b2Manifold; public var m_manifold:b2Manifold; private static const s_evalCP:b2ContactPoint = new b2ContactPoint(); public function b2PolygonContact(_arg1:b2Shape, _arg2:b2Shape):void{ m0 = new b2Manifold(); m_manifolds = [new b2Manifold()]; super(_arg1, _arg2); m_manifold = m_manifolds[0]; m_manifold.pointCount = 0; } override public function Evaluate(_arg1:b2ContactListener):void{ var _local2:b2Vec2; var _local3:b2Vec2; var _local4:b2ManifoldPoint; var _local7:b2ContactPoint; var _local8:int; var _local10:b2ManifoldPoint; var _local11:Boolean; var _local12:uint; var _local13:int; var _local5:b2Body = m_shape1.m_body; var _local6:b2Body = m_shape2.m_body; m0.Set(m_manifold); b2Collision.b2CollidePolygons(m_manifold, (m_shape1 as b2PolygonShape), _local5.m_xf, (m_shape2 as b2PolygonShape), _local6.m_xf); var _local9:Array = [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 < m0.pointCount) { if (_local9[_local13] == true){ } else { _local4 = m0.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 < m0.pointCount) { if (_local9[_local8]){ } else { _local4 = m0.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(m0.normal); _local7.separation = _local4.separation; _local7.id.key = _local4.id._key; _arg1.Remove(_local7); }; _local8++; }; } override public function GetManifolds():Array{ return (m_manifolds); } 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_localAnchor1:b2Vec2; public var m_localAnchor2:b2Vec2; public var m_bias:Number; public var m_gamma:Number; public var m_u:b2Vec2; public var m_mass:Number; public var m_impulse:Number; public var m_dampingRatio:Number; public var m_frequencyHz:Number; public var m_length:Number; public function b2DistanceJoint(_arg1:b2DistanceJointDef){ var _local2:b2Mat22; var _local3:Number; var _local4:Number; m_localAnchor1 = new b2Vec2(); m_localAnchor2 = new b2Vec2(); m_u = new b2Vec2(); super(_arg1); m_localAnchor1.SetV(_arg1.localAnchor1); m_localAnchor2.SetV(_arg1.localAnchor2); m_length = _arg1.length; m_frequencyHz = _arg1.frequencyHz; m_dampingRatio = _arg1.dampingRatio; m_impulse = 0; m_gamma = 0; m_bias = 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 InitVelocityConstraints(_arg1:b2TimeStep):void{ var _local2:b2Mat22; var _local3:Number; var _local4:b2Body; var _local5:b2Body; var _local6:Number; var _local8: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); var _local7:Number = (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); var _local9:Number = (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; m_u.x = (((_local5.m_sweep.c.x + _local8) - _local4.m_sweep.c.x) - _local6); m_u.y = (((_local5.m_sweep.c.y + _local9) - _local4.m_sweep.c.y) - _local7); var _local10:Number = Math.sqrt(((m_u.x * m_u.x) + (m_u.y * m_u.y))); if (_local10 > b2Settings.b2_linearSlop){ m_u.Multiply((1 / _local10)); } else { m_u.SetZero(); }; var _local11:Number = ((_local6 * m_u.y) - (_local7 * m_u.x)); var _local12:Number = ((_local8 * m_u.y) - (_local9 * m_u.x)); var _local13:Number = (((_local4.m_invMass + ((_local4.m_invI * _local11) * _local11)) + _local5.m_invMass) + ((_local5.m_invI * _local12) * _local12)); m_mass = (1 / _local13); if (m_frequencyHz > 0){ _local14 = (_local10 - m_length); _local15 = ((2 * Math.PI) * m_frequencyHz); _local16 = (((2 * m_mass) * m_dampingRatio) * _local15); _local17 = ((m_mass * _local15) * _local15); m_gamma = (1 / (_arg1.dt * (_local16 + (_arg1.dt * _local17)))); m_bias = (((_local14 * _arg1.dt) * _local17) * m_gamma); m_mass = (1 / (_local13 + m_gamma)); }; if (_arg1.warmStarting){ m_impulse = (m_impulse * _arg1.dtRatio); _local18 = (m_impulse * m_u.x); _local19 = (m_impulse * m_u.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 GetReactionForce():b2Vec2{ var _local1:b2Vec2 = new b2Vec2(); _local1.SetV(m_u); _local1.Multiply((m_inv_dt * m_impulse)); return (_local1); } override public function SolvePositionConstraints():Boolean{ var _local1:b2Mat22; if (m_frequencyHz > 0){ return (true); }; var _local2:b2Body = m_body1; var _local3:b2Body = m_body2; _local1 = _local2.m_xf.R; var _local4:Number = (m_localAnchor1.x - _local2.m_sweep.localCenter.x); var _local5:Number = (m_localAnchor1.y - _local2.m_sweep.localCenter.y); var _local6:Number = ((_local1.col1.x * _local4) + (_local1.col2.x * _local5)); _local5 = ((_local1.col1.y * _local4) + (_local1.col2.y * _local5)); _local4 = _local6; _local1 = _local3.m_xf.R; var _local7:Number = (m_localAnchor2.x - _local3.m_sweep.localCenter.x); var _local8:Number = (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; var _local9:Number = (((_local3.m_sweep.c.x + _local7) - _local2.m_sweep.c.x) - _local4); var _local10:Number = (((_local3.m_sweep.c.y + _local8) - _local2.m_sweep.c.y) - _local5); var _local11:Number = Math.sqrt(((_local9 * _local9) + (_local10 * _local10))); _local9 = (_local9 / _local11); _local10 = (_local10 / _local11); var _local12:Number = (_local11 - m_length); _local12 = b2Math.b2Clamp(_local12, -(b2Settings.b2_maxLinearCorrection), b2Settings.b2_maxLinearCorrection); var _local13:Number = (-(m_mass) * _local12); m_u.Set(_local9, _local10); var _local14:Number = (_local13 * m_u.x); var _local15:Number = (_local13 * m_u.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 SolveVelocityConstraints(_arg1:b2TimeStep):void{ var _local2:b2Mat22; var _local3:b2Body = m_body1; var _local4:b2Body = m_body2; _local2 = _local3.m_xf.R; var _local5:Number = (m_localAnchor1.x - _local3.m_sweep.localCenter.x); var _local6:Number = (m_localAnchor1.y - _local3.m_sweep.localCenter.y); var _local7:Number = ((_local2.col1.x * _local5) + (_local2.col2.x * _local6)); _local6 = ((_local2.col1.y * _local5) + (_local2.col2.y * _local6)); _local5 = _local7; _local2 = _local4.m_xf.R; var _local8:Number = (m_localAnchor2.x - _local4.m_sweep.localCenter.x); var _local9:Number = (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; var _local10:Number = (_local3.m_linearVelocity.x + (-(_local3.m_angularVelocity) * _local6)); var _local11:Number = (_local3.m_linearVelocity.y + (_local3.m_angularVelocity * _local5)); var _local12:Number = (_local4.m_linearVelocity.x + (-(_local4.m_angularVelocity) * _local9)); var _local13:Number = (_local4.m_linearVelocity.y + (_local4.m_angularVelocity * _local8)); var _local14:Number = ((m_u.x * (_local12 - _local10)) + (m_u.y * (_local13 - _local11))); var _local15:Number = (-(m_mass) * ((_local14 + m_bias) + (m_gamma * m_impulse))); m_impulse = (m_impulse + _local15); var _local16:Number = (_local15 * m_u.x); var _local17:Number = (_local15 * m_u.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 localAnchor1:b2Vec2; public var length:Number; public var dampingRatio:Number; public var localAnchor2:b2Vec2; public var frequencyHz:Number; 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{ body1 = _arg1; body2 = _arg2; localAnchor1.SetV(body1.GetLocalPoint(_arg3)); localAnchor2.SetV(body2.GetLocalPoint(_arg4)); var _local5:Number = (_arg4.x - _arg3.x); var _local6:Number = (_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_ground2:b2Body; 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 m_revolute2:b2RevoluteJoint; public var m_force:Number; public var m_mass:Number; public var m_prismatic2:b2PrismaticJoint; public var m_ground1:b2Body; public var m_revolute1:b2RevoluteJoint; public var m_prismatic1:b2PrismaticJoint; public var m_constant:Number; public var m_J:b2Jacobian; public function b2GearJoint(_arg1:b2GearJointDef){ var _local4:Number; var _local5:Number; m_groundAnchor1 = new b2Vec2(); m_groundAnchor2 = new b2Vec2(); m_localAnchor1 = new b2Vec2(); m_localAnchor2 = new b2Vec2(); m_J = new b2Jacobian(); super(_arg1); var _local2:int = _arg1.joint1.m_type; var _local3:int = _arg1.joint2.m_type; m_revolute1 = null; m_prismatic1 = null; m_revolute2 = null; m_prismatic2 = null; m_ground1 = _arg1.joint1.m_body1; m_body1 = _arg1.joint1.m_body2; if (_local2 == b2Joint.e_revoluteJoint){ m_revolute1 = (_arg1.joint1 as b2RevoluteJoint); m_groundAnchor1.SetV(m_revolute1.m_localAnchor1); m_localAnchor1.SetV(m_revolute1.m_localAnchor2); _local4 = m_revolute1.GetJointAngle(); } else { m_prismatic1 = (_arg1.joint1 as b2PrismaticJoint); m_groundAnchor1.SetV(m_prismatic1.m_localAnchor1); m_localAnchor1.SetV(m_prismatic1.m_localAnchor2); _local4 = m_prismatic1.GetJointTranslation(); }; m_ground2 = _arg1.joint2.m_body1; m_body2 = _arg1.joint2.m_body2; if (_local3 == b2Joint.e_revoluteJoint){ m_revolute2 = (_arg1.joint2 as b2RevoluteJoint); m_groundAnchor2.SetV(m_revolute2.m_localAnchor1); m_localAnchor2.SetV(m_revolute2.m_localAnchor2); _local5 = m_revolute2.GetJointAngle(); } else { m_prismatic2 = (_arg1.joint2 as b2PrismaticJoint); m_groundAnchor2.SetV(m_prismatic2.m_localAnchor1); m_localAnchor2.SetV(m_prismatic2.m_localAnchor2); _local5 = m_prismatic2.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 InitVelocityConstraints(_arg1:b2TimeStep):void{ 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 _local15:Number; var _local2:b2Body = m_ground1; var _local3:b2Body = m_ground2; var _local4:b2Body = m_body1; var _local5:b2Body = m_body2; var _local14:Number = 0; m_J.SetZero(); if (m_revolute1){ m_J.angular1 = -1; _local14 = (_local14 + _local4.m_invI); } else { _local10 = _local2.m_xf.R; _local11 = m_prismatic1.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)); m_J.linear1.Set(-(_local6), -(_local7)); m_J.angular1 = -(_local12); _local14 = (_local14 + (_local4.m_invMass + ((_local4.m_invI * _local12) * _local12))); }; if (m_revolute2){ m_J.angular2 = -(m_ratio); _local14 = (_local14 + ((m_ratio * m_ratio) * _local5.m_invI)); } else { _local10 = _local3.m_xf.R; _local11 = m_prismatic2.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)); m_J.linear2.Set((-(m_ratio) * _local6), (-(m_ratio) * _local7)); m_J.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) * m_J.linear1.x)); _local4.m_linearVelocity.y = (_local4.m_linearVelocity.y + ((_local4.m_invMass * _local15) * m_J.linear1.y)); _local4.m_angularVelocity = (_local4.m_angularVelocity + ((_local4.m_invI * _local15) * m_J.angular1)); _local5.m_linearVelocity.x = (_local5.m_linearVelocity.x + ((_local5.m_invMass * _local15) * m_J.linear2.x)); _local5.m_linearVelocity.y = (_local5.m_linearVelocity.y + ((_local5.m_invMass * _local15) * m_J.linear2.y)); _local5.m_angularVelocity = (_local5.m_angularVelocity + ((_local5.m_invI * _local15) * m_J.angular2)); } else { m_force = 0; }; } override public function GetReactionTorque():Number{ var _local1:b2Mat22 = m_body2.m_xf.R; var _local2:Number = (m_localAnchor1.x - m_body2.m_sweep.localCenter.x); var _local3:Number = (m_localAnchor1.y - m_body2.m_sweep.localCenter.y); var _local4:Number = ((_local1.col1.x * _local2) + (_local1.col2.x * _local3)); _local3 = ((_local1.col1.y * _local2) + (_local1.col2.y * _local3)); _local2 = _local4; _local4 = ((m_force * m_J.angular2) - ((_local2 * (m_force * m_J.linear2.y)) - (_local3 * (m_force * m_J.linear2.x)))); return (_local4); } override public function GetReactionForce():b2Vec2{ var _local1:b2Vec2 = new b2Vec2((m_force * m_J.linear2.x), (m_force * m_J.linear2.y)); return (_local1); } override public function SolvePositionConstraints():Boolean{ var _local4:Number; var _local5:Number; var _local1:Number = 0; var _local2:b2Body = m_body1; var _local3:b2Body = m_body2; if (m_revolute1){ _local4 = m_revolute1.GetJointAngle(); } else { _local4 = m_prismatic1.GetJointTranslation(); }; if (m_revolute2){ _local5 = m_revolute2.GetJointAngle(); } else { _local5 = m_prismatic2.GetJointTranslation(); }; var _local6:Number = (m_constant - (_local4 + (m_ratio * _local5))); var _local7:Number = (-(m_mass) * _local6); _local2.m_sweep.c.x = (_local2.m_sweep.c.x + ((_local2.m_invMass * _local7) * m_J.linear1.x)); _local2.m_sweep.c.y = (_local2.m_sweep.c.y + ((_local2.m_invMass * _local7) * m_J.linear1.y)); _local2.m_sweep.a = (_local2.m_sweep.a + ((_local2.m_invI * _local7) * m_J.angular1)); _local3.m_sweep.c.x = (_local3.m_sweep.c.x + ((_local3.m_invMass * _local7) * m_J.linear2.x)); _local3.m_sweep.c.y = (_local3.m_sweep.c.y + ((_local3.m_invMass * _local7) * m_J.linear2.y)); _local3.m_sweep.a = (_local3.m_sweep.a + ((_local3.m_invI * _local7) * m_J.angular2)); _local2.SynchronizeTransform(); _local3.SynchronizeTransform(); return ((_local1 < b2Settings.b2_linearSlop)); } public function GetRatio():Number{ return (m_ratio); } override public function SolveVelocityConstraints(_arg1:b2TimeStep):void{ var _local2:b2Body = m_body1; var _local3:b2Body = m_body2; var _local4:Number = m_J.Compute(_local2.m_linearVelocity, _local2.m_angularVelocity, _local3.m_linearVelocity, _local3.m_angularVelocity); var _local5:Number = ((-(_arg1.inv_dt) * m_mass) * _local4); m_force = (m_force + _local5); var _local6:Number = (_arg1.dt * _local5); _local2.m_linearVelocity.x = (_local2.m_linearVelocity.x + ((_local2.m_invMass * _local6) * m_J.linear1.x)); _local2.m_linearVelocity.y = (_local2.m_linearVelocity.y + ((_local2.m_invMass * _local6) * m_J.linear1.y)); _local2.m_angularVelocity = (_local2.m_angularVelocity + ((_local2.m_invI * _local6) * m_J.angular1)); _local3.m_linearVelocity.x = (_local3.m_linearVelocity.x + ((_local3.m_invMass * _local6) * m_J.linear2.x)); _local3.m_linearVelocity.y = (_local3.m_linearVelocity.y + ((_local3.m_invMass * _local6) * m_J.linear2.y)); _local3.m_angularVelocity = (_local3.m_angularVelocity + ((_local3.m_invI * _local6) * m_J.angular2)); } } }//package Box2D.Dynamics.Joints
Section 51
//b2GearJointDef (Box2D.Dynamics.Joints.b2GearJointDef) package Box2D.Dynamics.Joints { public class b2GearJointDef extends b2JointDef { public var joint1:b2Joint; public var joint2:b2Joint; public var ratio:Number; public function b2GearJointDef(){ type = b2Joint.e_gearJoint; joint1 = null; joint2 = 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 angular1:Number; public var angular2: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 GetBody2():b2Body{ return (m_body2); } public function GetAnchor1():b2Vec2{ return (null); } public function GetAnchor2():b2Vec2{ return (null); } public function GetNext():b2Joint{ return (m_next); } public function GetType():int{ return (m_type); } public function InitVelocityConstraints(_arg1:b2TimeStep):void{ } 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 GetBody1():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; 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 body2:b2Body; public var type:int; public var userData; public var collideConnected:Boolean; public var body1:b2Body; 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 other:b2Body; public var next:b2JointEdge; public var prev:b2JointEdge; public var joint:b2Joint; } }//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 { private var K1:b2Mat22; private var K:b2Mat22; public var m_beta:Number; public var m_mass:b2Mat22; private var K2:b2Mat22; public var m_target:b2Vec2; public var m_gamma:Number; public var m_impulse:b2Vec2; public var m_C:b2Vec2; public var m_localAnchor:b2Vec2; public var m_maxForce:Number; public function b2MouseJoint(_arg1:b2MouseJointDef){ var _local3:Number; K = new b2Mat22(); K1 = new b2Mat22(); K2 = new b2Mat22(); m_localAnchor = new b2Vec2(); m_target = new b2Vec2(); m_impulse = new b2Vec2(); m_mass = new b2Mat22(); m_C = new b2Vec2(); super(_arg1); m_target.SetV(_arg1.target); var _local2:Number = (m_target.x - m_body2.m_xf.position.x); _local3 = (m_target.y - m_body2.m_xf.position.y); var _local4:b2Mat22 = m_body2.m_xf.R; m_localAnchor.x = ((_local2 * _local4.col1.x) + (_local3 * _local4.col1.y)); m_localAnchor.y = ((_local2 * _local4.col2.x) + (_local3 * _local4.col2.y)); m_maxForce = _arg1.maxForce; m_impulse.SetZero(); var _local5:Number = m_body2.m_mass; var _local6:Number = ((2 * b2Settings.b2_pi) * _arg1.frequencyHz); var _local7:Number = (((2 * _local5) * _arg1.dampingRatio) * _local6); var _local8:Number = ((_arg1.timeStep * _local5) * (_local6 * _local6)); m_gamma = (1 / (_local7 + _local8)); m_beta = (_local8 / (_local7 + _local8)); } public function SetTarget(_arg1:b2Vec2):void{ if (m_body2.IsSleeping()){ m_body2.WakeUp(); }; m_target = _arg1; } override public function GetAnchor2():b2Vec2{ return (m_body2.GetWorldPoint(m_localAnchor)); } override public function InitVelocityConstraints(_arg1:b2TimeStep):void{ var _local2:b2Body; var _local3:b2Mat22; var _local4:Number; var _local5:Number; var _local7:Number; var _local8:Number; _local2 = m_body2; _local3 = _local2.m_xf.R; _local4 = (m_localAnchor.x - _local2.m_sweep.localCenter.x); _local5 = (m_localAnchor.y - _local2.m_sweep.localCenter.y); var _local6:Number = ((_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; K1.col1.x = _local7; K1.col2.x = 0; K1.col1.y = 0; K1.col2.y = _local7; K2.col1.x = ((_local8 * _local5) * _local5); K2.col2.x = ((-(_local8) * _local4) * _local5); K2.col1.y = ((-(_local8) * _local4) * _local5); K2.col2.y = ((_local8 * _local4) * _local4); K.SetM(K1); K.AddM(K2); K.col1.x = (K.col1.x + m_gamma); K.col2.y = (K.col2.y + m_gamma); K.Invert(m_mass); m_C.x = ((_local2.m_sweep.c.x + _local4) - m_target.x); m_C.y = ((_local2.m_sweep.c.y + _local5) - m_target.y); _local2.m_angularVelocity = (_local2.m_angularVelocity * 0.98); var _local9:Number = (_arg1.dt * m_impulse.x); var _local10:Number = (_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 GetAnchor1():b2Vec2{ return (m_target); } override public function GetReactionTorque():Number{ return (0); } override public function GetReactionForce():b2Vec2{ return (m_impulse); } override public function SolvePositionConstraints():Boolean{ return (true); } override public function SolveVelocityConstraints(_arg1:b2TimeStep):void{ var _local3:b2Mat22; var _local4:Number; var _local5:Number; var _local2:b2Body = m_body2; _local3 = _local2.m_xf.R; var _local6:Number = (m_localAnchor.x - _local2.m_sweep.localCenter.x); var _local7:Number = (m_localAnchor.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; var _local8:Number = (_local2.m_linearVelocity.x + (-(_local2.m_angularVelocity) * _local7)); var _local9:Number = (_local2.m_linearVelocity.y + (_local2.m_angularVelocity * _local6)); _local3 = m_mass; _local4 = ((_local8 + ((m_beta * _arg1.inv_dt) * m_C.x)) + ((m_gamma * _arg1.dt) * m_impulse.x)); _local5 = ((_local9 + ((m_beta * _arg1.inv_dt) * m_C.y)) + ((m_gamma * _arg1.dt) * m_impulse.y)); var _local10:Number = (-(_arg1.inv_dt) * ((_local3.col1.x * _local4) + (_local3.col2.x * _local5))); var _local11:Number = (-(_arg1.inv_dt) * ((_local3.col1.y * _local4) + (_local3.col2.y * _local5))); var _local12:Number = m_impulse.x; var _local13:Number = m_impulse.y; m_impulse.x = (m_impulse.x + _local10); m_impulse.y = (m_impulse.y + _local11); var _local14:Number = m_impulse.Length(); if (_local14 > m_maxForce){ m_impulse.Multiply((m_maxForce / _local14)); }; _local10 = (m_impulse.x - _local12); _local11 = (m_impulse.y - _local13); var _local15:Number = (_arg1.dt * _local10); var _local16:Number = (_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 timeStep:Number; public var target:b2Vec2; public var maxForce:Number; public var dampingRatio:Number; public var frequencyHz:Number; public function b2MouseJointDef(){ target = new b2Vec2(); super(); type = b2Joint.e_mouseJoint; maxForce = 0; frequencyHz = 5; dampingRatio = 0.7; timeStep = (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 m_lowerTranslation:Number; public var m_localXAxis1:b2Vec2; public var m_refAngle:Number; public var m_torque:Number; public var m_motorForce:Number; public var m_enableLimit:Boolean; public var m_angularMass:Number; public var m_maxMotorForce:Number; public var m_localYAxis1:b2Vec2; public var m_force:Number; public var m_motorMass:Number; public var m_upperTranslation:Number; public var m_localAnchor1:b2Vec2; public var m_localAnchor2:b2Vec2; public var m_limitState:int; public var m_linearMass:Number; public var m_motorJacobian:b2Jacobian; public var m_limitPositionImpulse:Number; public var m_motorSpeed:Number; public var m_enableMotor:Boolean; public var m_linearJacobian:b2Jacobian; 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(); m_localYAxis1 = new b2Vec2(); m_linearJacobian = new b2Jacobian(); m_motorJacobian = new b2Jacobian(); super(_arg1); m_localAnchor1.SetV(_arg1.localAnchor1); m_localAnchor2.SetV(_arg1.localAnchor2); m_localXAxis1.SetV(_arg1.localAxis1); m_localYAxis1.x = -(m_localXAxis1.y); m_localYAxis1.y = m_localXAxis1.x; m_refAngle = _arg1.referenceAngle; m_linearJacobian.SetZero(); m_linearMass = 0; m_force = 0; m_angularMass = 0; m_torque = 0; m_motorJacobian.SetZero(); m_motorMass = 0; m_motorForce = 0; m_limitForce = 0; m_limitPositionImpulse = 0; m_lowerTranslation = _arg1.lowerTranslation; m_upperTranslation = _arg1.upperTranslation; m_maxMotorForce = _arg1.maxMotorForce; m_motorSpeed = _arg1.motorSpeed; m_enableLimit = _arg1.enableLimit; m_enableMotor = _arg1.enableMotor; } override public function SolveVelocityConstraints(_arg1:b2TimeStep):void{ var _local8:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; var _local2:b2Body = m_body1; var _local3:b2Body = m_body2; var _local4:Number = _local2.m_invMass; var _local5:Number = _local3.m_invMass; var _local6:Number = _local2.m_invI; var _local7:Number = _local3.m_invI; var _local9:Number = m_linearJacobian.Compute(_local2.m_linearVelocity, _local2.m_angularVelocity, _local3.m_linearVelocity, _local3.m_angularVelocity); var _local10:Number = ((-(_arg1.inv_dt) * m_linearMass) * _local9); m_force = (m_force + _local10); var _local11:Number = (_arg1.dt * _local10); _local2.m_linearVelocity.x = (_local2.m_linearVelocity.x + ((_local4 * _local11) * m_linearJacobian.linear1.x)); _local2.m_linearVelocity.y = (_local2.m_linearVelocity.y + ((_local4 * _local11) * m_linearJacobian.linear1.y)); _local2.m_angularVelocity = (_local2.m_angularVelocity + ((_local6 * _local11) * m_linearJacobian.angular1)); _local3.m_linearVelocity.x = (_local3.m_linearVelocity.x + ((_local5 * _local11) * m_linearJacobian.linear2.x)); _local3.m_linearVelocity.y = (_local3.m_linearVelocity.y + ((_local5 * _local11) * m_linearJacobian.linear2.y)); _local3.m_angularVelocity = (_local3.m_angularVelocity + ((_local7 * _local11) * m_linearJacobian.angular2)); var _local12:Number = (_local3.m_angularVelocity - _local2.m_angularVelocity); var _local13:Number = ((-(_arg1.inv_dt) * m_angularMass) * _local12); m_torque = (m_torque + _local13); var _local14:Number = (_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 = (m_motorJacobian.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), -(m_maxMotorForce), m_maxMotorForce); _local16 = (m_motorForce - _local17); _local11 = (_arg1.dt * _local16); _local2.m_linearVelocity.x = (_local2.m_linearVelocity.x + ((_local4 * _local11) * m_motorJacobian.linear1.x)); _local2.m_linearVelocity.y = (_local2.m_linearVelocity.y + ((_local4 * _local11) * m_motorJacobian.linear1.y)); _local2.m_angularVelocity = (_local2.m_angularVelocity + ((_local6 * _local11) * m_motorJacobian.angular1)); _local3.m_linearVelocity.x = (_local3.m_linearVelocity.x + ((_local5 * _local11) * m_motorJacobian.linear2.x)); _local3.m_linearVelocity.y = (_local3.m_linearVelocity.y + ((_local5 * _local11) * m_motorJacobian.linear2.y)); _local3.m_angularVelocity = (_local3.m_angularVelocity + ((_local7 * _local11) * m_motorJacobian.angular2)); }; if (((m_enableLimit) && (!((m_limitState == e_inactiveLimit))))){ _local18 = m_motorJacobian.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) * m_motorJacobian.linear1.x)); _local2.m_linearVelocity.y = (_local2.m_linearVelocity.y + ((_local4 * _local11) * m_motorJacobian.linear1.y)); _local2.m_angularVelocity = (_local2.m_angularVelocity + ((_local6 * _local11) * m_motorJacobian.angular1)); _local3.m_linearVelocity.x = (_local3.m_linearVelocity.x + ((_local5 * _local11) * m_motorJacobian.linear2.x)); _local3.m_linearVelocity.y = (_local3.m_linearVelocity.y + ((_local5 * _local11) * m_motorJacobian.linear2.y)); _local3.m_angularVelocity = (_local3.m_angularVelocity + ((_local7 * _local11) * m_motorJacobian.angular2)); }; } override public function GetAnchor1():b2Vec2{ return (m_body1.GetWorldPoint(m_localAnchor1)); } override public function GetAnchor2():b2Vec2{ return (m_body2.GetWorldPoint(m_localAnchor2)); } public function GetUpperLimit():Number{ return (m_upperTranslation); } public function GetLowerLimit():Number{ return (m_lowerTranslation); } public function EnableMotor(_arg1:Boolean):void{ m_enableMotor = _arg1; } public function GetJointTranslation():Number{ var _local3:b2Mat22; var _local1:b2Body = m_body1; var _local2:b2Body = m_body2; var _local4:b2Vec2 = _local1.GetWorldPoint(m_localAnchor1); var _local5:b2Vec2 = _local2.GetWorldPoint(m_localAnchor2); var _local6:Number = (_local5.x - _local4.x); var _local7:Number = (_local5.y - _local4.y); var _local8:b2Vec2 = _local1.GetWorldVector(m_localXAxis1); var _local9:Number = ((_local8.x * _local6) + (_local8.y * _local7)); return (_local9); } public function GetMotorSpeed():Number{ return (m_motorSpeed); } override public function GetReactionForce():b2Vec2{ var _local1:b2Mat22 = m_body1.m_xf.R; var _local2:Number = (m_limitForce * ((_local1.col1.x * m_localXAxis1.x) + (_local1.col2.x * m_localXAxis1.y))); var _local3:Number = (m_limitForce * ((_local1.col1.y * m_localXAxis1.x) + (_local1.col2.y * m_localXAxis1.y))); var _local4:Number = (m_force * ((_local1.col1.x * m_localYAxis1.x) + (_local1.col2.x * m_localYAxis1.y))); var _local5:Number = (m_force * ((_local1.col1.y * m_localYAxis1.x) + (_local1.col2.y * m_localYAxis1.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 _local9:b2Mat22; var _local10:Number; var _local29:Number; var _local30:Number; var _local31:Number; var _local32:Number; var _local3:b2Body = m_body1; var _local4:b2Body = m_body2; var _local5:Number = _local3.m_invMass; var _local6:Number = _local4.m_invMass; var _local7:Number = _local3.m_invI; var _local8:Number = _local4.m_invI; _local9 = _local3.m_xf.R; var _local11:Number = (m_localAnchor1.x - _local3.m_sweep.localCenter.x); var _local12:Number = (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; var _local13:Number = (m_localAnchor2.x - _local4.m_sweep.localCenter.x); var _local14:Number = (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; var _local15:Number = (_local3.m_sweep.c.x + _local11); var _local16:Number = (_local3.m_sweep.c.y + _local12); var _local17:Number = (_local4.m_sweep.c.x + _local13); var _local18:Number = (_local4.m_sweep.c.y + _local14); var _local19:Number = (_local17 - _local15); var _local20:Number = (_local18 - _local16); _local9 = _local3.m_xf.R; var _local21:Number = ((_local9.col1.x * m_localYAxis1.x) + (_local9.col2.x * m_localYAxis1.y)); var _local22:Number = ((_local9.col1.y * m_localYAxis1.x) + (_local9.col2.y * m_localYAxis1.y)); var _local23:Number = ((_local21 * _local19) + (_local22 * _local20)); _local23 = b2Math.b2Clamp(_local23, -(b2Settings.b2_maxLinearCorrection), b2Settings.b2_maxLinearCorrection); var _local24:Number = (-(m_linearMass) * _local23); _local3.m_sweep.c.x = (_local3.m_sweep.c.x + ((_local5 * _local24) * m_linearJacobian.linear1.x)); _local3.m_sweep.c.y = (_local3.m_sweep.c.y + ((_local5 * _local24) * m_linearJacobian.linear1.y)); _local3.m_sweep.a = (_local3.m_sweep.a + ((_local7 * _local24) * m_linearJacobian.angular1)); _local4.m_sweep.c.x = (_local4.m_sweep.c.x + ((_local6 * _local24) * m_linearJacobian.linear2.x)); _local4.m_sweep.c.y = (_local4.m_sweep.c.y + ((_local6 * _local24) * m_linearJacobian.linear2.y)); _local4.m_sweep.a = (_local4.m_sweep.a + ((_local8 * _local24) * m_linearJacobian.angular2)); var _local25:Number = b2Math.b2Abs(_local23); var _local26:Number = ((_local4.m_sweep.a - _local3.m_sweep.a) - m_refAngle); _local26 = b2Math.b2Clamp(_local26, -(b2Settings.b2_maxAngularCorrection), b2Settings.b2_maxAngularCorrection); var _local27:Number = (-(m_angularMass) * _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(); var _local28:Number = 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 - m_lowerTranslation); _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 - m_upperTranslation); _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) * m_motorJacobian.linear1.x)); _local3.m_sweep.c.y = (_local3.m_sweep.c.y + ((_local5 * _local32) * m_motorJacobian.linear1.y)); _local3.m_sweep.a = (_local3.m_sweep.a + ((_local7 * _local32) * m_motorJacobian.angular1)); _local4.m_sweep.c.x = (_local4.m_sweep.c.x + ((_local6 * _local32) * m_motorJacobian.linear2.x)); _local4.m_sweep.c.y = (_local4.m_sweep.c.y + ((_local6 * _local32) * m_motorJacobian.linear2.y)); _local4.m_sweep.a = (_local4.m_sweep.a + ((_local8 * _local32) * m_motorJacobian.angular2)); _local3.SynchronizeTransform(); _local4.SynchronizeTransform(); }; return ((((_local25 <= b2Settings.b2_linearSlop)) && ((_local28 <= b2Settings.b2_angularSlop)))); } public function SetMotorSpeed(_arg1:Number):void{ m_motorSpeed = _arg1; } public function GetJointSpeed():Number{ var _local3:b2Mat22; var _local1:b2Body = m_body1; var _local2:b2Body = m_body2; _local3 = _local1.m_xf.R; var _local4:Number = (m_localAnchor1.x - _local1.m_sweep.localCenter.x); var _local5:Number = (m_localAnchor1.y - _local1.m_sweep.localCenter.y); var _local6:Number = ((_local3.col1.x * _local4) + (_local3.col2.x * _local5)); _local5 = ((_local3.col1.y * _local4) + (_local3.col2.y * _local5)); _local4 = _local6; _local3 = _local2.m_xf.R; var _local7:Number = (m_localAnchor2.x - _local2.m_sweep.localCenter.x); var _local8:Number = (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; var _local9:Number = (_local1.m_sweep.c.x + _local4); var _local10:Number = (_local1.m_sweep.c.y + _local5); var _local11:Number = (_local2.m_sweep.c.x + _local7); var _local12:Number = (_local2.m_sweep.c.y + _local8); var _local13:Number = (_local11 - _local9); var _local14:Number = (_local12 - _local10); var _local15:b2Vec2 = _local1.GetWorldVector(m_localXAxis1); var _local16:b2Vec2 = _local1.m_linearVelocity; var _local17:b2Vec2 = _local2.m_linearVelocity; var _local18:Number = _local1.m_angularVelocity; var _local19:Number = _local2.m_angularVelocity; var _local20:Number = (((_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); } override public function InitVelocityConstraints(_arg1:b2TimeStep):void{ var _local4:b2Mat22; var _local5: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 _local2:b2Body = m_body1; var _local3:b2Body = m_body2; _local4 = _local2.m_xf.R; var _local6:Number = (m_localAnchor1.x - _local2.m_sweep.localCenter.x); var _local7:Number = (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; var _local8:Number = (m_localAnchor2.x - _local3.m_sweep.localCenter.x); var _local9:Number = (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; var _local10:Number = _local2.m_invMass; var _local11:Number = _local3.m_invMass; var _local12:Number = _local2.m_invI; var _local13:Number = _local3.m_invI; _local4 = _local2.m_xf.R; var _local14:Number = ((_local4.col1.x * m_localYAxis1.x) + (_local4.col2.x * m_localYAxis1.y)); var _local15:Number = ((_local4.col1.y * m_localYAxis1.x) + (_local4.col2.y * m_localYAxis1.y)); var _local16:Number = ((_local3.m_sweep.c.x + _local8) - _local2.m_sweep.c.x); var _local17:Number = ((_local3.m_sweep.c.y + _local9) - _local2.m_sweep.c.y); m_linearJacobian.linear1.x = -(_local14); m_linearJacobian.linear1.y = -(_local15); m_linearJacobian.linear2.x = _local14; m_linearJacobian.linear2.y = _local15; m_linearJacobian.angular1 = -(((_local16 * _local15) - (_local17 * _local14))); m_linearJacobian.angular2 = ((_local8 * _local15) - (_local9 * _local14)); m_linearMass = (((_local10 + ((_local12 * m_linearJacobian.angular1) * m_linearJacobian.angular1)) + _local11) + ((_local13 * m_linearJacobian.angular2) * m_linearJacobian.angular2)); m_linearMass = (1 / m_linearMass); m_angularMass = (_local12 + _local13); if (m_angularMass > Number.MIN_VALUE){ m_angularMass = (1 / m_angularMass); }; 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)); m_motorJacobian.linear1.x = -(_local18); m_motorJacobian.linear1.y = -(_local19); m_motorJacobian.linear2.x = _local18; m_motorJacobian.linear2.y = _local19; m_motorJacobian.angular1 = -(((_local16 * _local19) - (_local17 * _local18))); m_motorJacobian.angular2 = ((_local8 * _local19) - (_local9 * _local18)); m_motorMass = (((_local10 + ((_local12 * m_motorJacobian.angular1) * m_motorJacobian.angular1)) + _local11) + ((_local13 * m_motorJacobian.angular2) * m_motorJacobian.angular2)); m_motorMass = (1 / m_motorMass); if (m_enableLimit){ _local20 = (_local16 - _local6); _local21 = (_local17 - _local7); _local22 = ((_local18 * _local20) + (_local19 * _local21)); if (b2Math.b2Abs((m_upperTranslation - m_lowerTranslation)) < (2 * b2Settings.b2_linearSlop)){ m_limitState = e_equalLimits; } else { if (_local22 <= m_lowerTranslation){ if (m_limitState != e_atLowerLimit){ m_limitForce = 0; }; m_limitState = e_atLowerLimit; } else { if (_local22 >= m_upperTranslation){ 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 * m_linearJacobian.linear1.x) + ((m_motorForce + m_limitForce) * m_motorJacobian.linear1.x))); _local24 = (_arg1.dt * ((m_force * m_linearJacobian.linear1.y) + ((m_motorForce + m_limitForce) * m_motorJacobian.linear1.y))); _local25 = (_arg1.dt * ((m_force * m_linearJacobian.linear2.x) + ((m_motorForce + m_limitForce) * m_motorJacobian.linear2.x))); _local26 = (_arg1.dt * ((m_force * m_linearJacobian.linear2.y) + ((m_motorForce + m_limitForce) * m_motorJacobian.linear2.y))); _local27 = (_arg1.dt * (((m_force * m_linearJacobian.angular1) - m_torque) + ((m_motorForce + m_limitForce) * m_motorJacobian.angular1))); _local28 = (_arg1.dt * (((m_force * m_linearJacobian.angular2) + m_torque) + ((m_motorForce + m_limitForce) * m_motorJacobian.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 GetMotorForce():Number{ return (m_motorForce); } public function EnableLimit(_arg1:Boolean):void{ m_enableLimit = _arg1; } public function SetMaxMotorForce(_arg1:Number):void{ m_maxMotorForce = _arg1; } override public function GetReactionTorque():Number{ return (m_torque); } public function IsLimitEnabled():Boolean{ return (m_enableLimit); } public function IsMotorEnabled():Boolean{ return (m_enableMotor); } public function SetLimits(_arg1:Number, _arg2:Number):void{ m_lowerTranslation = _arg1; m_upperTranslation = _arg2; } } }//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 motorSpeed:Number; public var localAxis1:b2Vec2; public var referenceAngle:Number; public var upperTranslation:Number; public var localAnchor1:b2Vec2; public var localAnchor2:b2Vec2; public var enableLimit:Boolean; public var enableMotor:Boolean; public var maxMotorForce:Number; 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; maxMotorForce = 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 m_limitState1:int; public var m_limitState2:int; public var m_ground:b2Body; public var m_maxLength2:Number; public var m_maxLength1:Number; public var m_limitPositionImpulse1:Number; public var m_limitPositionImpulse2:Number; public var m_force:Number; public var m_constant:Number; public var m_positionImpulse:Number; public var m_state: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 m_limitMass1:Number; public var m_limitMass2:Number; public var m_pulleyMass:Number; public var m_u1:b2Vec2; public var m_limitForce1:Number; public var m_limitForce2:Number; public var m_u2:b2Vec2; 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(); m_u1 = new b2Vec2(); m_u2 = new b2Vec2(); super(_arg1); m_ground = m_body1.m_world.m_groundBody; m_groundAnchor1.x = (_arg1.groundAnchor1.x - m_ground.m_xf.position.x); m_groundAnchor1.y = (_arg1.groundAnchor1.y - m_ground.m_xf.position.y); m_groundAnchor2.x = (_arg1.groundAnchor2.x - m_ground.m_xf.position.x); m_groundAnchor2.y = (_arg1.groundAnchor2.y - m_ground.m_xf.position.y); m_localAnchor1.SetV(_arg1.localAnchor1); m_localAnchor2.SetV(_arg1.localAnchor2); m_ratio = _arg1.ratio; m_constant = (_arg1.length1 + (m_ratio * _arg1.length2)); m_maxLength1 = b2Math.b2Min(_arg1.maxLength1, (m_constant - (m_ratio * b2_minPulleyLength))); m_maxLength2 = b2Math.b2Min(_arg1.maxLength2, ((m_constant - b2_minPulleyLength) / m_ratio)); m_force = 0; m_limitForce1 = 0; m_limitForce2 = 0; } public function GetGroundAnchor2():b2Vec2{ var _local1:b2Vec2 = m_ground.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 = m_u2.Copy(); _local1.Multiply(m_force); return (_local1); } override public function SolvePositionConstraints():Boolean{ var _local3:b2Mat22; 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 _local1:b2Body = m_body1; var _local2:b2Body = m_body2; var _local4:Number = (m_ground.m_xf.position.x + m_groundAnchor1.x); var _local5:Number = (m_ground.m_xf.position.y + m_groundAnchor1.y); var _local6:Number = (m_ground.m_xf.position.x + m_groundAnchor2.x); var _local7:Number = (m_ground.m_xf.position.y + m_groundAnchor2.y); var _local23:Number = 0; if (m_state == 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); m_u1.Set((_local12 - _local4), (_local13 - _local5)); m_u2.Set((_local14 - _local6), (_local15 - _local7)); _local16 = m_u1.Length(); _local17 = m_u2.Length(); if (_local16 > b2Settings.b2_linearSlop){ m_u1.Multiply((1 / _local16)); } else { m_u1.SetZero(); }; if (_local17 > b2Settings.b2_linearSlop){ m_u2.Multiply((1 / _local17)); } else { m_u2.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 = (-(m_pulleyMass) * _local18); _local20 = m_positionImpulse; m_positionImpulse = b2Math.b2Max(0, (m_positionImpulse + _local19)); _local19 = (m_positionImpulse - _local20); _local12 = (-(_local19) * m_u1.x); _local13 = (-(_local19) * m_u1.y); _local14 = ((-(m_ratio) * _local19) * m_u2.x); _local15 = ((-(m_ratio) * _local19) * m_u2.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 (m_limitState1 == 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); m_u1.Set((_local12 - _local4), (_local13 - _local5)); _local16 = m_u1.Length(); if (_local16 > b2Settings.b2_linearSlop){ m_u1.x = (m_u1.x * (1 / _local16)); m_u1.y = (m_u1.y * (1 / _local16)); } else { m_u1.SetZero(); }; _local18 = (m_maxLength1 - _local16); _local23 = b2Math.b2Max(_local23, -(_local18)); _local18 = b2Math.b2Clamp((_local18 + b2Settings.b2_linearSlop), -(b2Settings.b2_maxLinearCorrection), 0); _local19 = (-(m_limitMass1) * _local18); _local21 = m_limitPositionImpulse1; m_limitPositionImpulse1 = b2Math.b2Max(0, (m_limitPositionImpulse1 + _local19)); _local19 = (m_limitPositionImpulse1 - _local21); _local12 = (-(_local19) * m_u1.x); _local13 = (-(_local19) * m_u1.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 (m_limitState2 == 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); m_u2.Set((_local14 - _local6), (_local15 - _local7)); _local17 = m_u2.Length(); if (_local17 > b2Settings.b2_linearSlop){ m_u2.x = (m_u2.x * (1 / _local17)); m_u2.y = (m_u2.y * (1 / _local17)); } else { m_u2.SetZero(); }; _local18 = (m_maxLength2 - _local17); _local23 = b2Math.b2Max(_local23, -(_local18)); _local18 = b2Math.b2Clamp((_local18 + b2Settings.b2_linearSlop), -(b2Settings.b2_maxLinearCorrection), 0); _local19 = (-(m_limitMass2) * _local18); _local21 = m_limitPositionImpulse2; m_limitPositionImpulse2 = b2Math.b2Max(0, (m_limitPositionImpulse2 + _local19)); _local19 = (m_limitPositionImpulse2 - _local21); _local14 = (-(_local19) * m_u2.x); _local15 = (-(_local19) * m_u2.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 _local4:b2Mat22; var _local23:Number; var _local24:Number; var _local25:Number; var _local26:Number; var _local2:b2Body = m_body1; var _local3:b2Body = m_body2; _local4 = _local2.m_xf.R; var _local5:Number = (m_localAnchor1.x - _local2.m_sweep.localCenter.x); var _local6:Number = (m_localAnchor1.y - _local2.m_sweep.localCenter.y); var _local7:Number = ((_local4.col1.x * _local5) + (_local4.col2.x * _local6)); _local6 = ((_local4.col1.y * _local5) + (_local4.col2.y * _local6)); _local5 = _local7; _local4 = _local3.m_xf.R; var _local8:Number = (m_localAnchor2.x - _local3.m_sweep.localCenter.x); var _local9:Number = (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; var _local10:Number = (_local2.m_sweep.c.x + _local5); var _local11:Number = (_local2.m_sweep.c.y + _local6); var _local12:Number = (_local3.m_sweep.c.x + _local8); var _local13:Number = (_local3.m_sweep.c.y + _local9); var _local14:Number = (m_ground.m_xf.position.x + m_groundAnchor1.x); var _local15:Number = (m_ground.m_xf.position.y + m_groundAnchor1.y); var _local16:Number = (m_ground.m_xf.position.x + m_groundAnchor2.x); var _local17:Number = (m_ground.m_xf.position.y + m_groundAnchor2.y); m_u1.Set((_local10 - _local14), (_local11 - _local15)); m_u2.Set((_local12 - _local16), (_local13 - _local17)); var _local18:Number = m_u1.Length(); var _local19:Number = m_u2.Length(); if (_local18 > b2Settings.b2_linearSlop){ m_u1.Multiply((1 / _local18)); } else { m_u1.SetZero(); }; if (_local19 > b2Settings.b2_linearSlop){ m_u2.Multiply((1 / _local19)); } else { m_u2.SetZero(); }; var _local20:Number = ((m_constant - _local18) - (m_ratio * _local19)); if (_local20 > 0){ m_state = e_inactiveLimit; m_force = 0; } else { m_state = e_atUpperLimit; m_positionImpulse = 0; }; if (_local18 < m_maxLength1){ m_limitState1 = e_inactiveLimit; m_limitForce1 = 0; } else { m_limitState1 = e_atUpperLimit; m_limitPositionImpulse1 = 0; }; if (_local19 < m_maxLength2){ m_limitState2 = e_inactiveLimit; m_limitForce2 = 0; } else { m_limitState2 = e_atUpperLimit; m_limitPositionImpulse2 = 0; }; var _local21:Number = ((_local5 * m_u1.y) - (_local6 * m_u1.x)); var _local22:Number = ((_local8 * m_u2.y) - (_local9 * m_u2.x)); m_limitMass1 = (_local2.m_invMass + ((_local2.m_invI * _local21) * _local21)); m_limitMass2 = (_local3.m_invMass + ((_local3.m_invI * _local22) * _local22)); m_pulleyMass = (m_limitMass1 + ((m_ratio * m_ratio) * m_limitMass2)); m_limitMass1 = (1 / m_limitMass1); m_limitMass2 = (1 / m_limitMass2); m_pulleyMass = (1 / m_pulleyMass); if (_arg1.warmStarting){ _local23 = ((_arg1.dt * (-(m_force) - m_limitForce1)) * m_u1.x); _local24 = ((_arg1.dt * (-(m_force) - m_limitForce1)) * m_u1.y); _local25 = ((_arg1.dt * ((-(m_ratio) * m_force) - m_limitForce2)) * m_u2.x); _local26 = ((_arg1.dt * ((-(m_ratio) * m_force) - m_limitForce2)) * m_u2.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; m_limitForce1 = 0; m_limitForce2 = 0; }; } override public function GetReactionTorque():Number{ return (0); } public function GetRatio():Number{ return (m_ratio); } override public function SolveVelocityConstraints(_arg1:b2TimeStep):void{ var _local4: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 _local2:b2Body = m_body1; var _local3:b2Body = m_body2; _local4 = _local2.m_xf.R; var _local5:Number = (m_localAnchor1.x - _local2.m_sweep.localCenter.x); var _local6:Number = (m_localAnchor1.y - _local2.m_sweep.localCenter.y); var _local7:Number = ((_local4.col1.x * _local5) + (_local4.col2.x * _local6)); _local6 = ((_local4.col1.y * _local5) + (_local4.col2.y * _local6)); _local5 = _local7; _local4 = _local3.m_xf.R; var _local8:Number = (m_localAnchor2.x - _local3.m_sweep.localCenter.x); var _local9:Number = (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 (m_state == 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 = (-(((m_u1.x * _local10) + (m_u1.y * _local11))) - (m_ratio * ((m_u2.x * _local12) + (m_u2.y * _local13)))); _local19 = ((-(_arg1.inv_dt) * m_pulleyMass) * _local18); _local20 = m_force; m_force = b2Math.b2Max(0, (m_force + _local19)); _local19 = (m_force - _local20); _local14 = ((-(_arg1.dt) * _local19) * m_u1.x); _local15 = ((-(_arg1.dt) * _local19) * m_u1.y); _local16 = (((-(_arg1.dt) * m_ratio) * _local19) * m_u2.x); _local17 = (((-(_arg1.dt) * m_ratio) * _local19) * m_u2.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 (m_limitState1 == e_atUpperLimit){ _local10 = (_local2.m_linearVelocity.x + (-(_local2.m_angularVelocity) * _local6)); _local11 = (_local2.m_linearVelocity.y + (_local2.m_angularVelocity * _local5)); _local18 = -(((m_u1.x * _local10) + (m_u1.y * _local11))); _local19 = ((-(_arg1.inv_dt) * m_limitMass1) * _local18); _local20 = m_limitForce1; m_limitForce1 = b2Math.b2Max(0, (m_limitForce1 + _local19)); _local19 = (m_limitForce1 - _local20); _local14 = ((-(_arg1.dt) * _local19) * m_u1.x); _local15 = ((-(_arg1.dt) * _local19) * m_u1.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 (m_limitState2 == e_atUpperLimit){ _local12 = (_local3.m_linearVelocity.x + (-(_local3.m_angularVelocity) * _local9)); _local13 = (_local3.m_linearVelocity.y + (_local3.m_angularVelocity * _local8)); _local18 = -(((m_u2.x * _local12) + (m_u2.y * _local13))); _local19 = ((-(_arg1.inv_dt) * m_limitMass2) * _local18); _local20 = m_limitForce2; m_limitForce2 = b2Math.b2Max(0, (m_limitForce2 + _local19)); _local19 = (m_limitForce2 - _local20); _local16 = ((-(_arg1.dt) * _local19) * m_u2.x); _local17 = ((-(_arg1.dt) * _local19) * m_u2.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 GetLength1():Number{ var _local1:b2Vec2 = m_body1.GetWorldPoint(m_localAnchor1); var _local2:Number = (m_ground.m_xf.position.x + m_groundAnchor1.x); var _local3:Number = (m_ground.m_xf.position.y + m_groundAnchor1.y); var _local4:Number = (_local1.x - _local2); var _local5:Number = (_local1.y - _local3); return (Math.sqrt(((_local4 * _local4) + (_local5 * _local5)))); } public function GetLength2():Number{ var _local1:b2Vec2 = m_body2.GetWorldPoint(m_localAnchor2); var _local2:Number = (m_ground.m_xf.position.x + m_groundAnchor2.x); var _local3:Number = (m_ground.m_xf.position.y + m_groundAnchor2.y); var _local4:Number = (_local1.x - _local2); var _local5:Number = (_local1.y - _local3); return (Math.sqrt(((_local4 * _local4) + (_local5 * _local5)))); } public function GetGroundAnchor1():b2Vec2{ var _local1:b2Vec2 = m_ground.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 maxLength1:Number; public var maxLength2:Number; public var length1:Number; public var localAnchor1:b2Vec2; public var localAnchor2:b2Vec2; public var groundAnchor1:b2Vec2; public var groundAnchor2:b2Vec2; public var ratio:Number; public var length2:Number; public function b2PulleyJointDef(){ groundAnchor1 = new b2Vec2(); groundAnchor2 = new b2Vec2(); localAnchor1 = new b2Vec2(); localAnchor2 = new b2Vec2(); super(); type = b2Joint.e_pulleyJoint; groundAnchor1.Set(-1, 1); groundAnchor2.Set(1, 1); localAnchor1.Set(-1, 0); localAnchor2.Set(1, 0); length1 = 0; maxLength1 = 0; length2 = 0; maxLength2 = 0; ratio = 1; collideConnected = true; } public function Initialize(_arg1:b2Body, _arg2:b2Body, _arg3:b2Vec2, _arg4:b2Vec2, _arg5:b2Vec2, _arg6:b2Vec2, _arg7:Number):void{ body1 = _arg1; body2 = _arg2; groundAnchor1.SetV(_arg3); groundAnchor2.SetV(_arg4); localAnchor1 = body1.GetLocalPoint(_arg5); localAnchor2 = body2.GetLocalPoint(_arg6); var _local8:Number = (_arg5.x - _arg3.x); var _local9:Number = (_arg5.y - _arg3.y); length1 = Math.sqrt(((_local8 * _local8) + (_local9 * _local9))); var _local10:Number = (_arg6.x - _arg4.x); var _local11:Number = (_arg6.y - _arg4.y); length2 = Math.sqrt(((_local10 * _local10) + (_local11 * _local11))); ratio = _arg7; var _local12:Number = (length1 + (ratio * length2)); maxLength1 = (_local12 - (ratio * b2PulleyJoint.b2_minPulleyLength)); maxLength2 = ((_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_pivotMass:b2Mat22; public var m_motorForce:Number; 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 K1:b2Mat22; private var K2:b2Mat22; private var K3:b2Mat22; private var K:b2Mat22; public var m_pivotForce:b2Vec2; public var m_enableMotor:Boolean; public var m_referenceAngle:Number; public var m_limitPositionImpulse:Number; public var m_motorSpeed:Number; public var m_upperAngle:Number; public var m_lowerAngle:Number; public var m_maxMotorTorque:Number; public static var tImpulse:b2Vec2 = new b2Vec2(); public function b2RevoluteJoint(_arg1:b2RevoluteJointDef){ K = new b2Mat22(); K1 = new b2Mat22(); K2 = new b2Mat22(); K3 = new b2Mat22(); m_localAnchor1 = new b2Vec2(); m_localAnchor2 = new b2Vec2(); m_pivotForce = new b2Vec2(); m_pivotMass = new b2Mat22(); super(_arg1); m_localAnchor1.SetV(_arg1.localAnchor1); m_localAnchor2.SetV(_arg1.localAnchor2); m_referenceAngle = _arg1.referenceAngle; m_pivotForce.Set(0, 0); m_motorForce = 0; m_limitForce = 0; m_limitPositionImpulse = 0; m_lowerAngle = _arg1.lowerAngle; m_upperAngle = _arg1.upperAngle; m_maxMotorTorque = _arg1.maxMotorTorque; m_motorSpeed = _arg1.motorSpeed; m_enableLimit = _arg1.enableLimit; m_enableMotor = _arg1.enableMotor; } override public function SolveVelocityConstraints(_arg1:b2TimeStep):void{ var _local4:b2Mat22; var _local5:Number; var _local10:Number; var _local15:Number; var _local17:Number; var _local18:Number; var _local19:Number; var _local20:Number; var _local21:Number; var _local2:b2Body = m_body1; var _local3:b2Body = m_body2; _local4 = _local2.m_xf.R; var _local6:Number = (m_localAnchor1.x - _local2.m_sweep.localCenter.x); var _local7:Number = (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; var _local8:Number = (m_localAnchor2.x - _local3.m_sweep.localCenter.x); var _local9:Number = (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; var _local11:Number = (((_local3.m_linearVelocity.x + (-(_local3.m_angularVelocity) * _local9)) - _local2.m_linearVelocity.x) - (-(_local2.m_angularVelocity) * _local7)); var _local12:Number = (((_local3.m_linearVelocity.y + (_local3.m_angularVelocity * _local8)) - _local2.m_linearVelocity.y) - (_local2.m_angularVelocity * _local6)); var _local13:Number = (-(_arg1.inv_dt) * ((m_pivotMass.col1.x * _local11) + (m_pivotMass.col2.x * _local12))); var _local14:Number = (-(_arg1.inv_dt) * ((m_pivotMass.col1.y * _local11) + (m_pivotMass.col2.y * _local12))); m_pivotForce.x = (m_pivotForce.x + _local13); m_pivotForce.y = (m_pivotForce.y + _local14); _local15 = (_arg1.dt * _local13); var _local16:Number = (_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), -(m_maxMotorTorque), m_maxMotorTorque); _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)); }; } override public function GetAnchor1():b2Vec2{ return (m_body1.GetWorldPoint(m_localAnchor1)); } override public function GetAnchor2():b2Vec2{ return (m_body2.GetWorldPoint(m_localAnchor2)); } public function GetUpperLimit():Number{ return (m_upperAngle); } public function GetLowerLimit():Number{ return (m_lowerAngle); } public function EnableMotor(_arg1:Boolean):void{ m_enableMotor = _arg1; } public function GetMotorSpeed():Number{ return (m_motorSpeed); } override public function GetReactionForce():b2Vec2{ return (m_pivotForce); } override public function SolvePositionConstraints():Boolean{ var _local1:Number; var _local2:Number; var _local6:b2Mat22; var _local25:Number; var _local26:Number; var _local3:b2Body = m_body1; var _local4:b2Body = m_body2; var _local5:Number = 0; _local6 = _local3.m_xf.R; var _local7:Number = (m_localAnchor1.x - _local3.m_sweep.localCenter.x); var _local8:Number = (m_localAnchor1.y - _local3.m_sweep.localCenter.y); var _local9:Number = ((_local6.col1.x * _local7) + (_local6.col2.x * _local8)); _local8 = ((_local6.col1.y * _local7) + (_local6.col2.y * _local8)); _local7 = _local9; _local6 = _local4.m_xf.R; var _local10:Number = (m_localAnchor2.x - _local4.m_sweep.localCenter.x); var _local11:Number = (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; var _local12:Number = (_local3.m_sweep.c.x + _local7); var _local13:Number = (_local3.m_sweep.c.y + _local8); var _local14:Number = (_local4.m_sweep.c.x + _local10); var _local15:Number = (_local4.m_sweep.c.y + _local11); var _local16:Number = (_local14 - _local12); var _local17:Number = (_local15 - _local13); _local5 = Math.sqrt(((_local16 * _local16) + (_local17 * _local17))); var _local18:Number = _local3.m_invMass; var _local19:Number = _local4.m_invMass; var _local20:Number = _local3.m_invI; var _local21:Number = _local4.m_invI; K1.col1.x = (_local18 + _local19); K1.col2.x = 0; K1.col1.y = 0; K1.col2.y = (_local18 + _local19); K2.col1.x = ((_local20 * _local8) * _local8); K2.col2.x = ((-(_local20) * _local7) * _local8); K2.col1.y = ((-(_local20) * _local7) * _local8); K2.col2.y = ((_local20 * _local7) * _local7); K3.col1.x = ((_local21 * _local11) * _local11); K3.col2.x = ((-(_local21) * _local10) * _local11); K3.col1.y = ((-(_local21) * _local10) * _local11); K3.col2.y = ((_local21 * _local10) * _local10); K.SetM(K1); K.AddM(K2); K.AddM(K3); K.Solve(tImpulse, -(_local16), -(_local17)); var _local22:Number = tImpulse.x; var _local23:Number = 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(); var _local24:Number = 0; if (((m_enableLimit) && (!((m_limitState == e_inactiveLimit))))){ _local25 = ((_local4.m_sweep.a - _local3.m_sweep.a) - m_referenceAngle); _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 - m_lowerAngle); _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 - m_upperAngle); _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 SetMotorSpeed(_arg1:Number):void{ m_motorSpeed = _arg1; } public function GetJointSpeed():Number{ return ((m_body2.m_angularVelocity - m_body1.m_angularVelocity)); } public function SetMaxMotorTorque(_arg1:Number):void{ m_maxMotorTorque = _arg1; } public function GetJointAngle():Number{ return (((m_body2.m_sweep.a - m_body1.m_sweep.a) - m_referenceAngle)); } public function GetMotorTorque():Number{ return (m_motorForce); } override public function InitVelocityConstraints(_arg1:b2TimeStep):void{ var _local2:b2Body; var _local3:b2Body; var _local4:b2Mat22; var _local5:Number; var _local7:Number; var _local14:Number; _local2 = m_body1; _local3 = m_body2; _local4 = _local2.m_xf.R; var _local6:Number = (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; var _local8:Number = (m_localAnchor2.x - _local3.m_sweep.localCenter.x); var _local9:Number = (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; var _local10:Number = _local2.m_invMass; var _local11:Number = _local3.m_invMass; var _local12:Number = _local2.m_invI; var _local13:Number = _local3.m_invI; K1.col1.x = (_local10 + _local11); K1.col2.x = 0; K1.col1.y = 0; K1.col2.y = (_local10 + _local11); K2.col1.x = ((_local12 * _local7) * _local7); K2.col2.x = ((-(_local12) * _local6) * _local7); K2.col1.y = ((-(_local12) * _local6) * _local7); K2.col2.y = ((_local12 * _local6) * _local6); K3.col1.x = ((_local13 * _local9) * _local9); K3.col2.x = ((-(_local13) * _local8) * _local9); K3.col1.y = ((-(_local13) * _local8) * _local9); K3.col2.y = ((_local13 * _local8) * _local8); K.SetM(K1); K.AddM(K2); K.AddM(K3); K.Invert(m_pivotMass); m_motorMass = (1 / (_local12 + _local13)); if (m_enableMotor == false){ m_motorForce = 0; }; if (m_enableLimit){ _local14 = ((_local3.m_sweep.a - _local2.m_sweep.a) - m_referenceAngle); if (b2Math.b2Abs((m_upperAngle - m_lowerAngle)) < (2 * b2Settings.b2_angularSlop)){ m_limitState = e_equalLimits; } else { if (_local14 <= m_lowerAngle){ if (m_limitState != e_atLowerLimit){ m_limitForce = 0; }; m_limitState = e_atLowerLimit; } else { if (_local14 >= m_upperAngle){ 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) * m_pivotForce.x)); _local2.m_linearVelocity.y = (_local2.m_linearVelocity.y - ((_arg1.dt * _local10) * m_pivotForce.y)); _local2.m_angularVelocity = (_local2.m_angularVelocity - ((_arg1.dt * _local12) * ((((_local6 * m_pivotForce.y) - (_local7 * m_pivotForce.x)) + m_motorForce) + m_limitForce))); _local3.m_linearVelocity.x = (_local3.m_linearVelocity.x + ((_arg1.dt * _local11) * m_pivotForce.x)); _local3.m_linearVelocity.y = (_local3.m_linearVelocity.y + ((_arg1.dt * _local11) * m_pivotForce.y)); _local3.m_angularVelocity = (_local3.m_angularVelocity + ((_arg1.dt * _local13) * ((((_local8 * m_pivotForce.y) - (_local9 * m_pivotForce.x)) + m_motorForce) + m_limitForce))); } else { m_pivotForce.SetZero(); m_motorForce = 0; m_limitForce = 0; }; m_limitPositionImpulse = 0; } public function EnableLimit(_arg1:Boolean):void{ m_enableLimit = _arg1; } override public function GetReactionTorque():Number{ return (m_limitForce); } public function IsLimitEnabled():Boolean{ return (m_enableLimit); } public function IsMotorEnabled():Boolean{ return (m_enableMotor); } public function SetLimits(_arg1:Number, _arg2:Number):void{ m_lowerAngle = _arg1; m_upperAngle = _arg2; } } }//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 upperAngle:Number; public var enableMotor:Boolean; public var referenceAngle:Number; public var motorSpeed:Number; public var localAnchor1:b2Vec2; public var localAnchor2:b2Vec2; public var enableLimit:Boolean; public var lowerAngle:Number; public var maxMotorTorque:Number; public function b2RevoluteJointDef(){ localAnchor1 = new b2Vec2(); localAnchor2 = new b2Vec2(); super(); type = b2Joint.e_revoluteJoint; localAnchor1.Set(0, 0); localAnchor2.Set(0, 0); referenceAngle = 0; lowerAngle = 0; upperAngle = 0; maxMotorTorque = 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.Collision.Shapes.*; import Box2D.Common.Math.*; import Box2D.Dynamics.Joints.*; import Box2D.Dynamics.Contacts.*; public class b2Body { public var m_next:b2Body; public var m_xf:b2XForm; 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_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_shapeCount:int; public var m_angularDamping:Number; public var m_invI:Number; public var m_linearVelocity:b2Vec2; public var m_sleepTime:Number; public var m_jointList:b2JointEdge; public var m_I: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){ m_xf = new b2XForm(); m_sweep = new b2Sweep(); m_linearVelocity = new b2Vec2(); m_force = new b2Vec2(); super(); m_flags = 0; if (_arg1.isBullet){ m_flags = (m_flags | e_bulletFlag); }; if (_arg1.fixedRotation){ m_flags = (m_flags | e_fixedRotationFlag); }; if (_arg1.allowSleep){ m_flags = (m_flags | e_allowSleepFlag); }; if (_arg1.isSleeping){ m_flags = (m_flags | e_sleepFlag); }; m_world = _arg2; m_xf.position.SetV(_arg1.position); m_xf.R.Set(_arg1.angle); m_sweep.localCenter.SetV(_arg1.massData.center); m_sweep.t0 = 1; m_sweep.a0 = (m_sweep.a = _arg1.angle); var _local3:b2Mat22 = m_xf.R; var _local4:b2Vec2 = 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.linearDamping; m_angularDamping = _arg1.angularDamping; m_force.Set(0, 0); m_torque = 0; m_linearVelocity.SetZero(); m_angularVelocity = 0; m_sleepTime = 0; m_invMass = 0; m_I = 0; m_invI = 0; m_mass = _arg1.massData.mass; if (m_mass > 0){ m_invMass = (1 / m_mass); }; if ((m_flags & b2Body.e_fixedRotationFlag) == 0){ m_I = _arg1.massData.I; }; if (m_I > 0){ m_invI = (1 / m_I); }; 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 GetLinearVelocityFromWorldPoint(_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 GetLocalCenter():b2Vec2{ return (m_sweep.localCenter); } public function ApplyTorque(_arg1:Number):void{ if (IsSleeping()){ WakeUp(); }; m_torque = (m_torque + _arg1); } public function IsFrozen():Boolean{ return (((m_flags & e_frozenFlag) == e_frozenFlag)); } public function IsDynamic():Boolean{ return ((m_type == e_dynamicType)); } public function GetLinearVelocity():b2Vec2{ return (m_linearVelocity); } public function SynchronizeTransform():void{ m_xf.R.Set(m_sweep.a); var _local1:b2Mat22 = m_xf.R; var _local2:b2Vec2 = 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 AddShape(_arg1:b2Shape):b2Shape{ if (m_world.m_lock == true){ return (null); }; _arg1.m_next = m_shapeList; m_shapeList = _arg1; m_shapeCount++; _arg1.m_body = this; _arg1.CreateProxy(m_world.m_broadPhase, m_xf); _arg1.UpdateSweepRadius(m_sweep.localCenter); return (_arg1); } public function GetInertia():Number{ return (m_I); } public function IsSleeping():Boolean{ return (((m_flags & e_sleepFlag) == e_sleepFlag)); } public function SetMassFromShapes():void{ var _local1:b2Shape; if (m_world.m_lock == true){ return; }; m_mass = 0; m_invMass = 0; m_I = 0; m_invI = 0; var _local2:Number = 0; var _local3:Number = 0; var _local4:b2MassData = 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)); m_I = (m_I + _local4.I); _local1 = _local1.m_next; }; if (m_mass > 0){ m_invMass = (1 / m_mass); _local2 = (_local2 * m_invMass); _local3 = (_local3 * m_invMass); }; if ((((m_I > 0)) && (((m_flags & e_fixedRotationFlag) == 0)))){ m_I = (m_I - (m_mass * ((_local2 * _local2) + (_local3 * _local3)))); m_invI = (1 / m_I); } else { m_I = 0; m_invI = 0; }; m_sweep.localCenter.Set(_local2, _local3); var _local5:b2Mat22 = m_xf.R; var _local6:b2Vec2 = 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; }; var _local7:int = 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 _local7:Boolean; if (m_world.m_lock == true){ return (true); }; if (IsFrozen()){ return (false); }; m_xf.R.Set(_arg2); m_xf.position.SetV(_arg1); var _local4:b2Mat22 = m_xf.R; var _local5:b2Vec2 = 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); var _local6:Boolean; _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 _local4:b2Shape; var _local1:b2XForm = s_xf1; _local1.R.Set(m_sweep.a0); var _local2:b2Mat22 = _local1.R; var _local3:b2Vec2 = 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))); var _local5:Boolean; _local4 = m_shapeList; while (_local4) { _local5 = _local4.Synchronize(m_world.m_broadPhase, _local1, m_xf); if (_local5 == false){ break; }; _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 ApplyImpulse(_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 GetAngularVelocity():Number{ return (m_angularVelocity); } public function GetMass():Number{ return (m_mass); } public function GetLinearVelocityFromLocalPoint(_arg1:b2Vec2):b2Vec2{ var _local2:b2Mat22 = m_xf.R; var _local3:b2Vec2 = 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 GetShapeList():b2Shape{ return (m_shapeList); } public function SetAngularVelocity(_arg1:Number):void{ m_angularVelocity = _arg1; } public function SetMass(_arg1:b2MassData):void{ var _local2:b2Shape; if (m_world.m_lock == true){ return; }; m_invMass = 0; m_I = 0; m_invI = 0; m_mass = _arg1.mass; if (m_mass > 0){ m_invMass = (1 / m_mass); }; if ((m_flags & b2Body.e_fixedRotationFlag) == 0){ m_I = _arg1.I; }; if (m_I > 0){ m_invI = (1 / m_I); }; m_sweep.localCenter.SetV(_arg1.center); var _local3:b2Mat22 = m_xf.R; var _local4:b2Vec2 = 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; }; var _local5:int = 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 GetNext():b2Body{ return (m_next); } 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 SetBullet(_arg1:Boolean):void{ if (_arg1){ m_flags = (m_flags | e_bulletFlag); } else { m_flags = (m_flags & ~(e_bulletFlag)); }; } public function CreateShape(_arg1:b2ShapeDef):b2Shape{ if (m_world.m_lock == true){ return (null); }; var _local2:b2Shape = b2Shape.Create(_arg1, m_world.m_blockAllocator); return (AddShape(_local2)); } public function IsConnected(_arg1:b2Body):Boolean{ var _local2:b2JointEdge = m_jointList; while (_local2) { if (_local2.other == _arg1){ return ((_local2.joint.m_collideConnected == false)); }; _local2 = _local2.next; }; return (false); } public function DestroyShape(_arg1:b2Shape):void{ var _local3:b2Shape; if (m_world.m_lock == true){ return; }; _arg1.DestroyProxy(m_world.m_broadPhase); var _local2:Boolean; if (m_shapeList == _arg1){ m_shapeList = m_shapeList.m_next; _local2 = true; } else { _local3 = m_shapeList; while (_local3 != null) { if (_local3.m_next == _arg1){ _local3.m_next = _arg1.m_next; _local2 = true; break; }; _local3 = _local3.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 AllowSleeping(_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 = m_xf.R; var _local3:b2Vec2 = 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 GetWorld():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.Collision.Shapes.*; import Box2D.Common.Math.*; public class b2BodyDef { public var angularDamping:Number; public var angle:Number; public var isSleeping:Boolean; public var position:b2Vec2; public var isBullet:Boolean; public var allowSleep:Boolean; public var userData; public var fixedRotation:Boolean; public var linearDamping:Number; public var massData:b2MassData; public function b2BodyDef(){ massData = new b2MassData(); position = new b2Vec2(); super(); massData.center.SetZero(); massData.mass = 0; massData.I = 0; userData = null; position.Set(0, 0); angle = 0; linearDamping = 0; angularDamping = 0; allowSleep = true; isSleeping = false; fixedRotation = false; isBullet = 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 = _arg1.GetFilterData(); var _local4:b2FilterData = _arg2.GetFilterData(); if ((((_local3.groupIndex == _local4.groupIndex)) && (!((_local3.groupIndex == 0))))){ return ((_local3.groupIndex > 0)); }; var _local5:Boolean = ((!(((_local3.maskBits & _local4.categoryBits) == 0))) && (!(((_local3.categoryBits & _local4.maskBits) == 0)))); return (_local5); } public function RayCollide(_arg1, _arg2:b2Shape):Boolean{ if (!_arg1){ return (true); }; return (ShouldCollide((_arg1 as b2Shape), _arg2)); } } }//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.Collision.Shapes.*; import Box2D.Collision.*; import Box2D.Common.Math.*; import Box2D.Common.*; import Box2D.Dynamics.Contacts.*; public class b2ContactManager extends b2PairCallback { public var m_world:b2World; public var m_destroyImmediate:Boolean; public var m_nullContact:b2NullContact; private static const s_evalCP:b2ContactPoint = new b2ContactPoint(); public function b2ContactManager(){ m_nullContact = new b2NullContact(); super(); m_world = null; m_destroyImmediate = false; } override public function PairRemoved(_arg1, _arg2, _arg3):void{ if (_arg3 == null){ return; }; var _local4:b2Contact = (_arg3 as b2Contact); if (_local4 == m_nullContact){ return; }; Destroy(_local4); } public function Destroy(_arg1:b2Contact):void{ 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; var _local2:b2Shape = _arg1.m_shape1; var _local3:b2Shape = _arg1.m_shape2; var _local4:int = _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; }; var _local5:b2Body = _local2.m_body; var _local6:b2Body = _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--; } override public function PairAdded(_arg1, _arg2){ var _local5:b2Body; var _local3:b2Shape = (_arg1 as b2Shape); var _local4:b2Shape = (_arg2 as b2Shape); _local5 = _local3.m_body; var _local6:b2Body = _local4.m_body; if (((_local5.IsStatic()) && (_local6.IsStatic()))){ return (m_nullContact); }; if (_local3.m_body == _local4.m_body){ return (m_nullContact); }; if (_local6.IsConnected(_local5)){ return (m_nullContact); }; if (((!((m_world.m_contactFilter == null))) && ((m_world.m_contactFilter.ShouldCollide(_local3, _local4) == false)))){ return (m_nullContact); }; var _local7:b2Contact = b2Contact.Create(_local3, _local4, m_world.m_blockAllocator); if (_local7 == null){ return (m_nullContact); }; _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); } public function Collide():void{ var _local2:b2Body; var _local3:b2Body; var _local1:b2Contact = m_world.m_contactList; while (_local1) { _local2 = _local1.m_shape1.m_body; _local3 = _local1.m_shape2.m_body; if (((_local2.IsSleeping()) && (_local3.IsSleeping()))){ } else { _local1.Update(m_world.m_contactListener); }; _local1 = _local1.m_next; }; } } }//package Box2D.Dynamics
Section 70
//b2DebugDraw (Box2D.Dynamics.b2DebugDraw) package Box2D.Dynamics { import Box2D.Collision.Shapes.*; import Box2D.Collision.*; import Box2D.Common.Math.*; import flash.display.*; import Box2D.Common.*; import Box2D.Dynamics.Contacts.*; public class b2DebugDraw { public var m_xformScale:Number;// = 1 public var m_fillAlpha:Number;// = 1 public var m_alpha:Number;// = 1 public var m_drawFlags:uint; public var m_lineThickness:Number;// = 1 public var m_drawScale:Number;// = 1 public var m_sprite:Sprite; 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(){ m_drawFlags = 0; } public function ClearFlags(_arg1:uint):void{ m_drawFlags = (m_drawFlags & ~(_arg1)); } public function SetFlags(_arg1:uint):void{ m_drawFlags = _arg1; } public function AppendFlags(_arg1:uint):void{ m_drawFlags = (m_drawFlags | _arg1); } public function DrawSegment(_arg1:b2Vec2, _arg2:b2Vec2, _arg3:b2Color):void{ m_sprite.graphics.lineStyle(m_lineThickness, _arg3.color, m_alpha); m_sprite.graphics.moveTo((_arg1.x * m_drawScale), (_arg1.y * m_drawScale)); m_sprite.graphics.lineTo((_arg2.x * m_drawScale), (_arg2.y * m_drawScale)); } public function DrawSolidPolygon(_arg1:Array, _arg2:int, _arg3:b2Color):void{ m_sprite.graphics.lineStyle(m_lineThickness, _arg3.color, m_alpha); m_sprite.graphics.moveTo((_arg1[0].x * m_drawScale), (_arg1[0].y * m_drawScale)); m_sprite.graphics.beginFill(_arg3.color, m_fillAlpha); var _local4 = 1; while (_local4 < _arg2) { m_sprite.graphics.lineTo((_arg1[_local4].x * m_drawScale), (_arg1[_local4].y * m_drawScale)); _local4++; }; m_sprite.graphics.lineTo((_arg1[0].x * m_drawScale), (_arg1[0].y * m_drawScale)); m_sprite.graphics.endFill(); } public function DrawCircle(_arg1:b2Vec2, _arg2:Number, _arg3:b2Color):void{ m_sprite.graphics.lineStyle(m_lineThickness, _arg3.color, m_alpha); m_sprite.graphics.drawCircle((_arg1.x * m_drawScale), (_arg1.y * m_drawScale), (_arg2 * m_drawScale)); } public function DrawPolygon(_arg1:Array, _arg2:int, _arg3:b2Color):void{ m_sprite.graphics.lineStyle(m_lineThickness, _arg3.color, m_alpha); m_sprite.graphics.moveTo((_arg1[0].x * m_drawScale), (_arg1[0].y * m_drawScale)); var _local4 = 1; while (_local4 < _arg2) { m_sprite.graphics.lineTo((_arg1[_local4].x * m_drawScale), (_arg1[_local4].y * m_drawScale)); _local4++; }; m_sprite.graphics.lineTo((_arg1[0].x * m_drawScale), (_arg1[0].y * m_drawScale)); } public function DrawSolidCircle(_arg1:b2Vec2, _arg2:Number, _arg3:b2Vec2, _arg4:b2Color):void{ m_sprite.graphics.lineStyle(m_lineThickness, _arg4.color, m_alpha); m_sprite.graphics.moveTo(0, 0); m_sprite.graphics.beginFill(_arg4.color, m_fillAlpha); m_sprite.graphics.drawCircle((_arg1.x * m_drawScale), (_arg1.y * m_drawScale), (_arg2 * m_drawScale)); m_sprite.graphics.endFill(); m_sprite.graphics.moveTo((_arg1.x * m_drawScale), (_arg1.y * m_drawScale)); m_sprite.graphics.lineTo(((_arg1.x + (_arg3.x * _arg2)) * m_drawScale), ((_arg1.y + (_arg3.y * _arg2)) * m_drawScale)); } public function GetFlags():uint{ return (m_drawFlags); } public function DrawXForm(_arg1:b2XForm):void{ m_sprite.graphics.lineStyle(m_lineThickness, 0xFF0000, m_alpha); m_sprite.graphics.moveTo((_arg1.position.x * m_drawScale), (_arg1.position.y * m_drawScale)); m_sprite.graphics.lineTo(((_arg1.position.x + (m_xformScale * _arg1.R.col1.x)) * m_drawScale), ((_arg1.position.y + (m_xformScale * _arg1.R.col1.y)) * m_drawScale)); m_sprite.graphics.lineStyle(m_lineThickness, 0xFF00, m_alpha); m_sprite.graphics.moveTo((_arg1.position.x * m_drawScale), (_arg1.position.y * m_drawScale)); m_sprite.graphics.lineTo(((_arg1.position.x + (m_xformScale * _arg1.R.col2.x)) * m_drawScale), ((_arg1.position.y + (m_xformScale * _arg1.R.col2.y)) * m_drawScale)); } } }//package Box2D.Dynamics
Section 71
//b2DestructionListener (Box2D.Dynamics.b2DestructionListener) package Box2D.Dynamics { import Box2D.Collision.Shapes.*; import Box2D.Dynamics.Joints.*; public class b2DestructionListener { public function SayGoodbyeShape(_arg1:b2Shape):void{ } public function SayGoodbyeJoint(_arg1:b2Joint):void{ } } }//package Box2D.Dynamics
Section 72
//b2Island (Box2D.Dynamics.b2Island) package Box2D.Dynamics { import Box2D.Collision.*; import Box2D.Common.Math.*; import Box2D.Dynamics.Joints.*; import Box2D.Common.*; import Box2D.Dynamics.Contacts.*; public class b2Island { public var m_listener:b2ContactListener; public var m_positionIterationCount:int; public var m_bodyCapacity:int; public var m_bodies:Array; public var m_joints:Array; public var m_jointCapacity: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(); m_bodyCapacity = _arg1; m_contactCapacity = _arg2; m_jointCapacity = _arg3; m_bodyCount = 0; m_contactCount = 0; m_jointCount = 0; m_allocator = _arg4; m_listener = _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++; }; m_joints = new Array(_arg3); _local6 = 0; while (_local6 < _arg3) { m_joints[_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++; m_joints[_local2] = _arg1; } public function Report(_arg1:Array):void{ var _local2:b2Mat22; var _local3:b2Vec2; 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 (m_listener == null){ return; }; var _local4:int; 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; m_listener.Result(_local7); _local13++; }; _local11++; }; _local4++; }; } public function AddContact(_arg1:b2Contact):void{ var _local2 = m_contactCount++; m_contacts[_local2] = _arg1; } public function Solve(_arg1:b2TimeStep, _arg2:b2Vec2, _arg3:Boolean, _arg4:Boolean):void{ var _local5:int; var _local6:b2Body; var _local7:b2Joint; 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()){ } else { _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++; }; var _local8:b2ContactSolver = new b2ContactSolver(_arg1, m_contacts, m_contactCount, m_allocator); _local8.InitVelocityConstraints(_arg1); _local5 = 0; while (_local5 < m_jointCount) { _local7 = m_joints[_local5]; _local7.InitVelocityConstraints(_arg1); _local5++; }; _local5 = 0; while (_local5 < _arg1.maxIterations) { _local8.SolveVelocityConstraints(); _local9 = 0; while (_local9 < m_jointCount) { _local7 = m_joints[_local9]; _local7.SolveVelocityConstraints(_arg1); _local9++; }; _local5++; }; _local8.FinalizeVelocityConstraints(); _local5 = 0; while (_local5 < m_bodyCount) { _local6 = m_bodies[_local5]; if (_local6.IsStatic()){ } else { _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 = m_joints[_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 = m_joints[_local5]; _local12 = _local7.SolvePositionConstraints(); _local11 = ((_local11) && (_local12)); _local5++; }; if (((_local10) && (_local11))){ break; }; m_positionIterationCount++; }; }; Report(_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){ } else { 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 Clear():void{ m_bodyCount = 0; m_contactCount = 0; m_jointCount = 0; } public function SolveTOI(_arg1:b2TimeStep):void{ var _local2:int; var _local5:b2Body; var _local6:Boolean; var _local3:b2ContactSolver = 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()){ } else { _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++; }; var _local4:Number = 0.75; _local2 = 0; while (_local2 < _arg1.maxIterations) { _local6 = _local3.SolvePositionConstraints(_local4); if (_local6){ break; }; _local2++; }; Report(_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.Collision.Shapes.*; import Box2D.Collision.*; import Box2D.Common.Math.*; import Box2D.Dynamics.Joints.*; import Box2D.Common.*; import Box2D.Dynamics.Contacts.*; public class b2World { public var m_inv_dt0:Number; public var m_boundaryListener:b2BoundaryListener; public var m_contactList:b2Contact; public var m_blockAllocator; public var m_contactListener:b2ContactListener; public var m_raycastSegment:b2Segment; public var m_broadPhase:b2BroadPhase; public var m_destructionListener:b2DestructionListener; public var m_jointCount:int; public var m_lock:Boolean; public var m_bodyCount:int; public var m_raycastUserData; public var m_allowSleep:Boolean; public var m_positionIterationCount:int; public var m_groundBody:b2Body; public var m_contactCount:int; public var m_raycastNormal:b2Vec2; public var m_contactFilter:b2ContactFilter; public var m_bodyList:b2Body; public var m_debugDraw:b2DebugDraw; public var m_stackAllocator; public var m_jointList:b2Joint; public var m_gravity:b2Vec2; public var m_contactManager: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){ m_raycastNormal = new b2Vec2(); m_contactManager = new b2ContactManager(); super(); m_destructionListener = null; m_boundaryListener = null; m_contactFilter = b2ContactFilter.b2_defaultFilter; m_contactListener = null; m_debugDraw = null; m_bodyList = 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; m_allowSleep = _arg3; m_gravity = _arg2; m_lock = false; m_inv_dt0 = 0; m_contactManager.m_world = this; m_broadPhase = new b2BroadPhase(_arg1, m_contactManager); var _local4:b2BodyDef = new b2BodyDef(); m_groundBody = CreateBody(_local4); } public function DrawJoint(_arg1:b2Joint):void{ var _local11:b2PulleyJoint; var _local12:b2Vec2; var _local13:b2Vec2; var _local2:b2Body = _arg1.m_body1; var _local3:b2Body = _arg1.m_body2; var _local4:b2XForm = _local2.m_xf; var _local5:b2XForm = _local3.m_xf; var _local6:b2Vec2 = _local4.position; var _local7:b2Vec2 = _local5.position; var _local8:b2Vec2 = _arg1.GetAnchor1(); var _local9:b2Vec2 = _arg1.GetAnchor2(); var _local10:b2Color = s_jointColor; switch (_arg1.m_type){ case b2Joint.e_distanceJoint: m_debugDraw.DrawSegment(_local8, _local9, _local10); break; case b2Joint.e_pulleyJoint: _local11 = (_arg1 as b2PulleyJoint); _local12 = _local11.GetGroundAnchor1(); _local13 = _local11.GetGroundAnchor2(); m_debugDraw.DrawSegment(_local12, _local8, _local10); m_debugDraw.DrawSegment(_local13, _local9, _local10); m_debugDraw.DrawSegment(_local12, _local13, _local10); break; case b2Joint.e_mouseJoint: m_debugDraw.DrawSegment(_local8, _local9, _local10); break; default: if (_local2 != m_groundBody){ m_debugDraw.DrawSegment(_local6, _local8, _local10); }; m_debugDraw.DrawSegment(_local8, _local9, _local10); if (_local3 != m_groundBody){ m_debugDraw.DrawSegment(_local7, _local9, _local10); }; }; } public function Refilter(_arg1:b2Shape):void{ _arg1.RefilterProxy(m_broadPhase, _arg1.m_body.m_xf); } public function SetDebugDraw(_arg1:b2DebugDraw):void{ m_debugDraw = _arg1; } public function SetContinuousPhysics(_arg1:Boolean):void{ m_continuousPhysics = _arg1; } public function GetProxyCount():int{ return (m_broadPhase.m_proxyCount); } public function DrawDebugData():void{ var _local2:int; var _local3:b2Body; var _local4:b2Shape; var _local5:b2Joint; var _local6:b2BroadPhase; var _local11:b2XForm; 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 (m_debugDraw == null){ return; }; m_debugDraw.m_sprite.graphics.clear(); var _local1:uint = m_debugDraw.GetFlags(); var _local7:b2Vec2 = new b2Vec2(); var _local8:b2Vec2 = new b2Vec2(); var _local9:b2Vec2 = new b2Vec2(); var _local10:b2Color = new b2Color(0, 0, 0); var _local12:b2AABB = new b2AABB(); var _local13:b2AABB = new b2AABB(); var _local14:Array = [new b2Vec2(), new b2Vec2(), new b2Vec2(), new b2Vec2()]; if ((_local1 & b2DebugDraw.e_shapeBit)){ _local15 = ((_local1 & b2DebugDraw.e_coreShapeBit) == b2DebugDraw.e_coreShapeBit); _local3 = m_bodyList; while (_local3) { _local11 = _local3.m_xf; _local4 = _local3.GetShapeList(); while (_local4) { if (_local3.IsStatic()){ DrawShape(_local4, _local11, new b2Color(0.5, 0.9, 0.5), _local15); } else { if (_local3.IsSleeping()){ DrawShape(_local4, _local11, new b2Color(0.5, 0.5, 0.9), _local15); } else { DrawShape(_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) { DrawJoint(_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)); m_debugDraw.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){ } else { _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); m_debugDraw.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); m_debugDraw.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 = m_bodyList; while (_local3) { _local11 = _local3.m_xf; _local4 = _local3.GetShapeList(); while (_local4) { if (_local4.m_type != b2Shape.e_polygonShape){ } else { _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++; }; m_debugDraw.DrawPolygon(_local14, 4, _local10); }; _local4 = _local4.m_next; }; _local3 = _local3.m_next; }; }; if ((_local1 & b2DebugDraw.e_centerOfMassBit)){ _local3 = m_bodyList; while (_local3) { _local11 = s_xf; _local11.R = _local3.m_xf.R; _local11.position = _local3.GetWorldCenter(); m_debugDraw.DrawXForm(_local11); _local3 = _local3.m_next; }; }; } public function DestroyBody(_arg1:b2Body):void{ var _local4:b2JointEdge; var _local5:b2Shape; if (m_lock == true){ return; }; var _local2:b2JointEdge = _arg1.m_jointList; while (_local2) { _local4 = _local2; _local2 = _local2.next; if (m_destructionListener){ m_destructionListener.SayGoodbyeJoint(_local4.joint); }; DestroyJoint(_local4.joint); }; var _local3:b2Shape = _arg1.m_shapeList; while (_local3) { _local5 = _local3; _local3 = _local3.m_next; if (m_destructionListener){ m_destructionListener.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 == m_bodyList){ m_bodyList = _arg1.m_next; }; m_bodyCount--; } public function DrawShape(_arg1:b2Shape, _arg2:b2XForm, _arg3:b2Color, _arg4:Boolean):void{ 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; var _local5:b2Color = 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; m_debugDraw.DrawSolidCircle(_local7, _local8, _local9, _arg3); if (_arg4){ m_debugDraw.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++; }; m_debugDraw.DrawSolidPolygon(_local14, _local12, _arg3); if (_arg4){ _local15 = _local11.GetCoreVertices(); _local10 = 0; while (_local10 < _local12) { _local14[_local10] = b2Math.b2MulX(_arg2, _local15[_local10]); _local10++; }; m_debugDraw.DrawPolygon(_local14, _local12, _local5); }; break; }; } public function GetGroundBody():b2Body{ return (m_groundBody); } public function SetContactFilter(_arg1:b2ContactFilter):void{ m_contactFilter = _arg1; } public function Solve(_arg1:b2TimeStep):void{ var _local2:b2Body; var _local9:int; var _local10:int; var _local11:b2Body; var _local12:b2ContactEdge; var _local13:b2JointEdge; var _local14:Boolean; m_positionIterationCount = 0; var _local3:b2Island = new b2Island(m_bodyCount, m_contactCount, m_jointCount, m_stackAllocator, m_contactListener); _local2 = m_bodyList; while (_local2) { _local2.m_flags = (_local2.m_flags & ~(b2Body.e_islandFlag)); _local2 = _local2.m_next; }; var _local4:b2Contact = m_contactList; while (_local4) { _local4.m_flags = (_local4.m_flags & ~(b2Contact.e_islandFlag)); _local4 = _local4.m_next; }; var _local5:b2Joint = m_jointList; while (_local5) { _local5.m_islandFlag = false; _local5 = _local5.m_next; }; var _local6:int = m_bodyCount; var _local7:Array = new Array(_local6); var _local8:b2Body = m_bodyList; while (_local8) { if ((_local8.m_flags & ((b2Body.e_islandFlag | b2Body.e_sleepFlag) | b2Body.e_frozenFlag))){ } else { if (_local8.IsStatic()){ } else { _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()){ } else { _local12 = _local2.m_contactList; while (_local12) { if ((_local12.contact.m_flags & (b2Contact.e_islandFlag | b2Contact.e_nonSolidFlag))){ } else { if (_local12.contact.m_manifoldCount == 0){ } else { _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)){ } else { 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){ } else { _local3.AddJoint(_local13.joint); _local13.joint.m_islandFlag = true; _local11 = _local13.other; if ((_local11.m_flags & b2Body.e_islandFlag)){ } else { 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_gravity, m_positionCorrection, m_allowSleep); 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 = m_bodyList; while (_local2) { if ((_local2.m_flags & (b2Body.e_sleepFlag | b2Body.e_frozenFlag))){ } else { if (_local2.IsStatic()){ } else { _local14 = _local2.SynchronizeShapes(); if ((((_local14 == false)) && (!((m_boundaryListener == null))))){ m_boundaryListener.Violation(_local2); }; }; }; _local2 = _local2.m_next; }; m_broadPhase.Commit(); } public function Query(_arg1:b2AABB, _arg2:Array, _arg3:int):int{ var _local4:Array = new Array(_arg3); var _local5:int = m_broadPhase.QueryAABB(_arg1, _local4, _arg3); var _local6:int; while (_local6 < _local5) { _arg2[_local6] = _local4[_local6]; _local6++; }; return (_local5); } public function GetContactCount():int{ return (m_contactCount); } 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 _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; var _local8:b2Island = new b2Island(m_bodyCount, b2Settings.b2_maxTOIContactsPerIsland, 0, m_stackAllocator, m_contactListener); var _local9:int = m_bodyCount; var _local10:Array = new Array(_local9); _local2 = m_bodyList; 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; for (;_local11;(_local11 = _local11.m_next)) { if ((_local11.m_flags & (b2Contact.e_slowFlag | b2Contact.e_nonSolidFlag))){ } else { _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; if (((((_local5.IsStatic()) || (_local5.IsSleeping()))) && (((_local6.IsStatic()) || (_local6.IsSleeping()))))){ continue; }; _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; }; }; }; if ((((_local12 == null)) || (((1 - (100 * Number.MIN_VALUE)) < _local13)))){ break; }; _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){ } else { _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()){ } else { _local7 = _local2.m_contactList; while (_local7) { if (_local8.m_contactCount == _local8.m_contactCapacity){ } else { if ((_local7.contact.m_flags & ((b2Contact.e_islandFlag | b2Contact.e_slowFlag) | b2Contact.e_nonSolidFlag))){ } else { if (_local7.contact.m_manifoldCount == 0){ } else { _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)){ } else { 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))){ } else { if (_local2.IsStatic()){ } else { _local21 = _local2.SynchronizeShapes(); if ((((_local21 == false)) && (!((m_boundaryListener == null))))){ m_boundaryListener.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 SetGravity(_arg1:b2Vec2):void{ m_gravity = _arg1; } public function GetPairCount():int{ return (m_broadPhase.m_pairManager.m_pairCount); } public function GetBodyList():b2Body{ return (m_bodyList); } public function SetWarmStarting(_arg1:Boolean):void{ m_warmStarting = _arg1; } public function SetPositionCorrection(_arg1:Boolean):void{ m_positionCorrection = _arg1; } public function CreateJoint(_arg1:b2JointDef):b2Joint{ var _local3:b2Body; var _local4:b2Shape; var _local2:b2Joint = 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 _local5:b2Body; var _local6:b2Shape; var _local2:Boolean = _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; }; var _local3:b2Body = _arg1.m_body1; var _local4:b2Body = _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 SetContactListener(_arg1:b2ContactListener):void{ m_contactListener = _arg1; } public function Raycast(_arg1:b2Segment, _arg2:Array, _arg3:int, _arg4:Boolean, _arg5):int{ var _local7:int; var _local6:Array = new Array(_arg3); m_raycastSegment = _arg1; m_raycastUserData = _arg5; if (_arg4){ _local7 = m_broadPhase.QuerySegment(_arg1, _local6, _arg3, RaycastSortKey); } else { _local7 = m_broadPhase.QuerySegment(_arg1, _local6, _arg3, RaycastSortKey2); }; var _local8:int; while (_local8 < _local7) { _arg2[_local8] = _local6[_local8]; _local8++; }; return (_local7); } public function RaycastSortKey2(_arg1:b2Shape):int{ if (((m_contactFilter) && (!(m_contactFilter.RayCollide(m_raycastUserData, _arg1))))){ return (-1); }; var _local2:b2Body = _arg1.GetBody(); var _local3:b2XForm = _local2.GetXForm(); var _local4:Array = [0]; if (_arg1.TestSegment(_local3, _local4, m_raycastNormal, m_raycastSegment, 1) != b2Shape.e_hitCollide){ return (-1); }; return (_local4[0]); } public function RaycastOne(_arg1:b2Segment, _arg2:Array, _arg3:b2Vec2, _arg4:Boolean, _arg5):b2Shape{ var _local6:Array = new Array(1); var _local7:Number = Raycast(_arg1, _local6, 1, _arg4, _arg5); if (_local7 == 0){ return (null); }; if (_local7 > 1){ trace(_local7); }; var _local8:b2Shape = _local6[0]; var _local9:b2XForm = _local8.GetBody().GetXForm(); _local8.TestSegment(_local9, _arg2, _arg3, _arg1, 1); return (_local8); } public function CreateBody(_arg1:b2BodyDef):b2Body{ if (m_lock == true){ return (null); }; var _local2:b2Body = new b2Body(_arg1, this); _local2.m_prev = null; _local2.m_next = m_bodyList; if (m_bodyList){ m_bodyList.m_prev = _local2; }; m_bodyList = _local2; m_bodyCount++; return (_local2); } public function RaycastSortKey(_arg1:b2Shape):int{ if (((m_contactFilter) && (!(m_contactFilter.RayCollide(m_raycastUserData, _arg1))))){ return (-1); }; var _local2:b2Body = _arg1.GetBody(); var _local3:b2XForm = _local2.GetXForm(); var _local4:Array = [0]; if (_arg1.TestSegment(_local3, _local4, m_raycastNormal, m_raycastSegment, 1) == b2Shape.e_missCollide){ return (-1); }; return (_local4[0]); } public function SetBoundaryListener(_arg1:b2BoundaryListener):void{ m_boundaryListener = _arg1; } public function SetDestructionListener(_arg1:b2DestructionListener):void{ m_destructionListener = _arg1; } public function Step(_arg1:Number, _arg2:int):void{ m_lock = true; var _local3:b2TimeStep = new b2TimeStep(); _local3.dt = _arg1; _local3.maxIterations = _arg2; if (_arg1 > 0){ _local3.inv_dt = (1 / _arg1); } else { _local3.inv_dt = 0; }; _local3.dtRatio = (m_inv_dt0 * _arg1); _local3.positionCorrection = m_positionCorrection; _local3.warmStarting = m_warmStarting; m_contactManager.Collide(); if (_local3.dt > 0){ Solve(_local3); }; if (((m_continuousPhysics) && ((_local3.dt > 0)))){ SolveTOI(_local3); }; DrawDebugData(); m_inv_dt0 = _local3.inv_dt; m_lock = false; } public function GetBodyCount():int{ return (m_bodyCount); } public function GetJointCount():int{ return (m_jointCount); } } }//package Box2D.Dynamics
Section 75
//ResourceEmbedding (generated.ResourceEmbedding) package generated { import genius.resource.*; import genius.util.*; public class ResourceEmbedding { private static const resource0400:Class = ResourceEmbedding_resource0400; private static const resource0401:Class = ResourceEmbedding_resource0401; private static const resource0402:Class = ResourceEmbedding_resource0402; private static const resource0403:Class = ResourceEmbedding_resource0403; private static const resource0404:Class = ResourceEmbedding_resource0404; private static const resource0405:Class = ResourceEmbedding_resource0405; private static const resource0406:Class = ResourceEmbedding_resource0406; private static const resource0407:Class = ResourceEmbedding_resource0407; private static const resource0408:Class = ResourceEmbedding_resource0408; private static const resource0409:Class = ResourceEmbedding_resource0409; private static const resource0410:Class = ResourceEmbedding_resource0410; private static const resource0412:Class = ResourceEmbedding_resource0412; private static const resource0414:Class = ResourceEmbedding_resource0414; private static const resource0416:Class = ResourceEmbedding_resource0416; private static const resource0417:Class = ResourceEmbedding_resource0417; private static const resource0411:Class = ResourceEmbedding_resource0411; private static const resource0419:Class = ResourceEmbedding_resource0419; private static const resource0413:Class = ResourceEmbedding_resource0413; private static const resource0415:Class = ResourceEmbedding_resource0415; private static const resource0418:Class = ResourceEmbedding_resource0418; private static const resource0420:Class = ResourceEmbedding_resource0420; private static const resource0421:Class = ResourceEmbedding_resource0421; private static const resource0422:Class = ResourceEmbedding_resource0422; private static const resource0423:Class = ResourceEmbedding_resource0423; private static const resource0424:Class = ResourceEmbedding_resource0424; private static const resource0425:Class = ResourceEmbedding_resource0425; private static const resource0426:Class = ResourceEmbedding_resource0426; private static const resource0427:Class = ResourceEmbedding_resource0427; private static const resource0428:Class = ResourceEmbedding_resource0428; private static const resource0429:Class = ResourceEmbedding_resource0429; private static const resource0430:Class = ResourceEmbedding_resource0430; private static const resource0432:Class = ResourceEmbedding_resource0432; private static const resource0434:Class = ResourceEmbedding_resource0434; private static const resource0436:Class = ResourceEmbedding_resource0436; private static const resource0437:Class = ResourceEmbedding_resource0437; private static const resource0431:Class = ResourceEmbedding_resource0431; private static const resource0439:Class = ResourceEmbedding_resource0439; private static const resource0433:Class = ResourceEmbedding_resource0433; private static const resource0435:Class = ResourceEmbedding_resource0435; private static const resource0438:Class = ResourceEmbedding_resource0438; private static const resource0440:Class = ResourceEmbedding_resource0440; private static const resource0441:Class = ResourceEmbedding_resource0441; private static const resource0200:Class = ResourceEmbedding_resource0200; private static const resource0201:Class = ResourceEmbedding_resource0201; private static const resource0202:Class = ResourceEmbedding_resource0202; private static const resource0203:Class = ResourceEmbedding_resource0203; private static const resource0204:Class = ResourceEmbedding_resource0204; private static const resource0205:Class = ResourceEmbedding_resource0205; private static const resource0206:Class = ResourceEmbedding_resource0206; private static const resource0207:Class = ResourceEmbedding_resource0207; private static const resource0208:Class = ResourceEmbedding_resource0208; private static const resource0209:Class = ResourceEmbedding_resource0209; private static const resource0445:Class = ResourceEmbedding_resource0445; private static const resource0446:Class = ResourceEmbedding_resource0446; private static const resource0447:Class = ResourceEmbedding_resource0447; private static const resource0448:Class = ResourceEmbedding_resource0448; private static const resource0449:Class = ResourceEmbedding_resource0449; private static const resource0442:Class = ResourceEmbedding_resource0442; private static const resource0444:Class = ResourceEmbedding_resource0444; private static const resource0210:Class = ResourceEmbedding_resource0210; private static const resource0211:Class = ResourceEmbedding_resource0211; private static const resource0212:Class = ResourceEmbedding_resource0212; private static const resource0213:Class = ResourceEmbedding_resource0213; private static const resource0214:Class = ResourceEmbedding_resource0214; private static const resource0215:Class = ResourceEmbedding_resource0215; private static const resource0216:Class = ResourceEmbedding_resource0216; private static const resource0217:Class = ResourceEmbedding_resource0217; private static const resource0218:Class = ResourceEmbedding_resource0218; private static const resource0219:Class = ResourceEmbedding_resource0219; private static const resource0456:Class = ResourceEmbedding_resource0456; private static const resource0450:Class = ResourceEmbedding_resource0450; private static const resource0443:Class = ResourceEmbedding_resource0443; private static const resource0457:Class = ResourceEmbedding_resource0457; private static const resource0459:Class = ResourceEmbedding_resource0459; private static const resource0451:Class = ResourceEmbedding_resource0451; private static const resource0452:Class = ResourceEmbedding_resource0452; private static const resource0454:Class = ResourceEmbedding_resource0454; private static const resource0455:Class = ResourceEmbedding_resource0455; private static const resource0460:Class = ResourceEmbedding_resource0460; private static const resource0458:Class = ResourceEmbedding_resource0458; private static const resource0220:Class = ResourceEmbedding_resource0220; private static const resource0221:Class = ResourceEmbedding_resource0221; private static const resource0222:Class = ResourceEmbedding_resource0222; private static const resource0223:Class = ResourceEmbedding_resource0223; private static const resource0224:Class = ResourceEmbedding_resource0224; private static const resource0225:Class = ResourceEmbedding_resource0225; private static const resource0226:Class = ResourceEmbedding_resource0226; private static const resource0227:Class = ResourceEmbedding_resource0227; private static const resource0228:Class = ResourceEmbedding_resource0228; private static const resource0229:Class = ResourceEmbedding_resource0229; private static const resource0465:Class = ResourceEmbedding_resource0465; private static const resource0466:Class = ResourceEmbedding_resource0466; private static const resource0467:Class = ResourceEmbedding_resource0467; private static const resource0468:Class = ResourceEmbedding_resource0468; private static const resource0461:Class = ResourceEmbedding_resource0461; private static const resource0453:Class = ResourceEmbedding_resource0453; private static const resource0464:Class = ResourceEmbedding_resource0464; private static const resource0230:Class = ResourceEmbedding_resource0230; private static const resource0231:Class = ResourceEmbedding_resource0231; private static const resource0232:Class = ResourceEmbedding_resource0232; private static const resource0233:Class = ResourceEmbedding_resource0233; private static const resource0234:Class = ResourceEmbedding_resource0234; private static const resource0235:Class = ResourceEmbedding_resource0235; private static const resource0236:Class = ResourceEmbedding_resource0236; private static const resource0237:Class = ResourceEmbedding_resource0237; private static const resource0238:Class = ResourceEmbedding_resource0238; private static const resource0239:Class = ResourceEmbedding_resource0239; private static const resource0476:Class = ResourceEmbedding_resource0476; private static const resource0470:Class = ResourceEmbedding_resource0470; private static const resource0463:Class = ResourceEmbedding_resource0463; private static const resource0477:Class = ResourceEmbedding_resource0477; private static const resource0479:Class = ResourceEmbedding_resource0479; private static const resource0471:Class = ResourceEmbedding_resource0471; private static const resource0472:Class = ResourceEmbedding_resource0472; private static const resource0462:Class = ResourceEmbedding_resource0462; private static const resource0475:Class = ResourceEmbedding_resource0475; private static const resource0480:Class = ResourceEmbedding_resource0480; private static const resource0478:Class = ResourceEmbedding_resource0478; private static const resource0240:Class = ResourceEmbedding_resource0240; private static const resource0241:Class = ResourceEmbedding_resource0241; private static const resource0000:Class = ResourceEmbedding_resource0000; private static const resource0001:Class = ResourceEmbedding_resource0001; private static const resource0002:Class = ResourceEmbedding_resource0002; private static const resource0003:Class = ResourceEmbedding_resource0003; private static const resource0004:Class = ResourceEmbedding_resource0004; private static const resource0005:Class = ResourceEmbedding_resource0005; private static const resource0006:Class = ResourceEmbedding_resource0006; private static const resource0007:Class = ResourceEmbedding_resource0007; private static const resource0008:Class = ResourceEmbedding_resource0008; private static const resource0009:Class = ResourceEmbedding_resource0009; private static const resource0245:Class = ResourceEmbedding_resource0245; private static const resource0246:Class = ResourceEmbedding_resource0246; private static const resource0247:Class = ResourceEmbedding_resource0247; private static const resource0248:Class = ResourceEmbedding_resource0248; private static const resource0249:Class = ResourceEmbedding_resource0249; private static const resource0242:Class = ResourceEmbedding_resource0242; private static const resource0243:Class = ResourceEmbedding_resource0243; private static const resource0244:Class = ResourceEmbedding_resource0244; private static const resource0488:Class = ResourceEmbedding_resource0488; private static const resource0250:Class = ResourceEmbedding_resource0250; private static const resource0010:Class = ResourceEmbedding_resource0010; private static const resource0011:Class = ResourceEmbedding_resource0011; private static const resource0012:Class = ResourceEmbedding_resource0012; private static const resource0013:Class = ResourceEmbedding_resource0013; private static const resource0014:Class = ResourceEmbedding_resource0014; private static const resource0015:Class = ResourceEmbedding_resource0015; private static const resource0016:Class = ResourceEmbedding_resource0016; private static const resource0017:Class = ResourceEmbedding_resource0017; private static const resource0018:Class = ResourceEmbedding_resource0018; private static const resource0019:Class = ResourceEmbedding_resource0019; private static const resource0256:Class = ResourceEmbedding_resource0256; private static const resource0258:Class = ResourceEmbedding_resource0258; private static const resource0259:Class = ResourceEmbedding_resource0259; private static const resource0252:Class = ResourceEmbedding_resource0252; private static const resource0254:Class = ResourceEmbedding_resource0254; private static const resource0255:Class = ResourceEmbedding_resource0255; private static const resource0257:Class = ResourceEmbedding_resource0257; private static const resource0474:Class = ResourceEmbedding_resource0474; private static const resource0251:Class = ResourceEmbedding_resource0251; private static const resource0482:Class = ResourceEmbedding_resource0482; private static const resource0253:Class = ResourceEmbedding_resource0253; private static const resource0484:Class = ResourceEmbedding_resource0484; private static const resource0486:Class = ResourceEmbedding_resource0486; private static const resource0260:Class = ResourceEmbedding_resource0260; private static const resource0261:Class = ResourceEmbedding_resource0261; private static const resource0020:Class = ResourceEmbedding_resource0020; private static const resource0021:Class = ResourceEmbedding_resource0021; private static const resource0022:Class = ResourceEmbedding_resource0022; private static const resource0023:Class = ResourceEmbedding_resource0023; private static const resource0024:Class = ResourceEmbedding_resource0024; private static const resource0025:Class = ResourceEmbedding_resource0025; private static const resource0026:Class = ResourceEmbedding_resource0026; private static const resource0027:Class = ResourceEmbedding_resource0027; private static const resource0028:Class = ResourceEmbedding_resource0028; private static const resource0029:Class = ResourceEmbedding_resource0029; private static const resource0265:Class = ResourceEmbedding_resource0265; private static const resource0266:Class = ResourceEmbedding_resource0266; private static const resource0267:Class = ResourceEmbedding_resource0267; private static const resource0268:Class = ResourceEmbedding_resource0268; private static const resource0269:Class = ResourceEmbedding_resource0269; private static const resource0262:Class = ResourceEmbedding_resource0262; private static const resource0263:Class = ResourceEmbedding_resource0263; private static const resource0264:Class = ResourceEmbedding_resource0264; private static const resource0270:Class = ResourceEmbedding_resource0270; private static const resource0030:Class = ResourceEmbedding_resource0030; private static const resource0031:Class = ResourceEmbedding_resource0031; private static const resource0032:Class = ResourceEmbedding_resource0032; private static const resource0033:Class = ResourceEmbedding_resource0033; private static const resource0034:Class = ResourceEmbedding_resource0034; private static const resource0035:Class = ResourceEmbedding_resource0035; private static const resource0036:Class = ResourceEmbedding_resource0036; private static const resource0037:Class = ResourceEmbedding_resource0037; private static const resource0038:Class = ResourceEmbedding_resource0038; private static const resource0039:Class = ResourceEmbedding_resource0039; private static const resource0276:Class = ResourceEmbedding_resource0276; private static const resource0278:Class = ResourceEmbedding_resource0278; private static const resource0279:Class = ResourceEmbedding_resource0279; private static const resource0272:Class = ResourceEmbedding_resource0272; private static const resource0274:Class = ResourceEmbedding_resource0274; private static const resource0275:Class = ResourceEmbedding_resource0275; private static const resource0277:Class = ResourceEmbedding_resource0277; private static const resource0271:Class = ResourceEmbedding_resource0271; private static const resource0273:Class = ResourceEmbedding_resource0273; private static const resource0280:Class = ResourceEmbedding_resource0280; private static const resource0281:Class = ResourceEmbedding_resource0281; private static const resource0040:Class = ResourceEmbedding_resource0040; private static const resource0041:Class = ResourceEmbedding_resource0041; private static const resource0042:Class = ResourceEmbedding_resource0042; private static const resource0043:Class = ResourceEmbedding_resource0043; private static const resource0044:Class = ResourceEmbedding_resource0044; private static const resource0045:Class = ResourceEmbedding_resource0045; private static const resource0046:Class = ResourceEmbedding_resource0046; private static const resource0047:Class = ResourceEmbedding_resource0047; private static const resource0048:Class = ResourceEmbedding_resource0048; private static const resource0049:Class = ResourceEmbedding_resource0049; private static const resource0285:Class = ResourceEmbedding_resource0285; private static const resource0286:Class = ResourceEmbedding_resource0286; private static const resource0287:Class = ResourceEmbedding_resource0287; private static const resource0288:Class = ResourceEmbedding_resource0288; private static const resource0289:Class = ResourceEmbedding_resource0289; private static const resource0282:Class = ResourceEmbedding_resource0282; private static const resource0283:Class = ResourceEmbedding_resource0283; private static const resource0050:Class = ResourceEmbedding_resource0050; private static const resource0051:Class = ResourceEmbedding_resource0051; private static const resource0052:Class = ResourceEmbedding_resource0052; private static const resource0053:Class = ResourceEmbedding_resource0053; private static const resource0054:Class = ResourceEmbedding_resource0054; private static const resource0055:Class = ResourceEmbedding_resource0055; private static const resource0056:Class = ResourceEmbedding_resource0056; private static const resource0057:Class = ResourceEmbedding_resource0057; private static const resource0058:Class = ResourceEmbedding_resource0058; private static const resource0059:Class = ResourceEmbedding_resource0059; private static const resource0290:Class = ResourceEmbedding_resource0290; private static const resource0292:Class = ResourceEmbedding_resource0292; private static const resource0299:Class = ResourceEmbedding_resource0299; private static const resource0294:Class = ResourceEmbedding_resource0294; private static const resource0295:Class = ResourceEmbedding_resource0295; private static const resource0296:Class = ResourceEmbedding_resource0296; private static const resource0297:Class = ResourceEmbedding_resource0297; private static const resource0298:Class = ResourceEmbedding_resource0298; private static const resource0060:Class = ResourceEmbedding_resource0060; private static const resource0061:Class = ResourceEmbedding_resource0061; private static const resource0062:Class = ResourceEmbedding_resource0062; private static const resource0063:Class = ResourceEmbedding_resource0063; private static const resource0064:Class = ResourceEmbedding_resource0064; private static const resource0065:Class = ResourceEmbedding_resource0065; private static const resource0066:Class = ResourceEmbedding_resource0066; private static const resource0067:Class = ResourceEmbedding_resource0067; private static const resource0068:Class = ResourceEmbedding_resource0068; private static const resource0069:Class = ResourceEmbedding_resource0069; private static const resource0284:Class = ResourceEmbedding_resource0284; private static const resource0469:Class = ResourceEmbedding_resource0469; private static const resource0291:Class = ResourceEmbedding_resource0291; private static const resource0293:Class = ResourceEmbedding_resource0293; private static const resource0070:Class = ResourceEmbedding_resource0070; private static const resource0071:Class = ResourceEmbedding_resource0071; private static const resource0072:Class = ResourceEmbedding_resource0072; private static const resource0073:Class = ResourceEmbedding_resource0073; private static const resource0074:Class = ResourceEmbedding_resource0074; private static const resource0075:Class = ResourceEmbedding_resource0075; private static const resource0076:Class = ResourceEmbedding_resource0076; private static const resource0077:Class = ResourceEmbedding_resource0077; private static const resource0078:Class = ResourceEmbedding_resource0078; private static const resource0079:Class = ResourceEmbedding_resource0079; private static const resource0080:Class = ResourceEmbedding_resource0080; private static const resource0081:Class = ResourceEmbedding_resource0081; private static const resource0082:Class = ResourceEmbedding_resource0082; private static const resource0083:Class = ResourceEmbedding_resource0083; private static const resource0084:Class = ResourceEmbedding_resource0084; private static const resource0085:Class = ResourceEmbedding_resource0085; private static const resource0086:Class = ResourceEmbedding_resource0086; private static const resource0087:Class = ResourceEmbedding_resource0087; private static const resource0088:Class = ResourceEmbedding_resource0088; private static const resource0089:Class = ResourceEmbedding_resource0089; private static const resource0487:Class = ResourceEmbedding_resource0487; private static const resource0489:Class = ResourceEmbedding_resource0489; private static const resource0090:Class = ResourceEmbedding_resource0090; private static const resource0092:Class = ResourceEmbedding_resource0092; private static const resource0094:Class = ResourceEmbedding_resource0094; private static const resource0096:Class = ResourceEmbedding_resource0096; private static const resource0098:Class = ResourceEmbedding_resource0098; private static const resource0093:Class = ResourceEmbedding_resource0093; private static const resource0095:Class = ResourceEmbedding_resource0095; private static const resource0097:Class = ResourceEmbedding_resource0097; private static const resource0099:Class = ResourceEmbedding_resource0099; private static const resource0091:Class = ResourceEmbedding_resource0091; private static const resource0485:Class = ResourceEmbedding_resource0485; private static const resource0473:Class = ResourceEmbedding_resource0473; private static const resource0491:Class = ResourceEmbedding_resource0491; private static const resource0483:Class = ResourceEmbedding_resource0483; private static const resource0493:Class = ResourceEmbedding_resource0493; private static const resource0494:Class = ResourceEmbedding_resource0494; private static const resource0495:Class = ResourceEmbedding_resource0495; private static const resource0496:Class = ResourceEmbedding_resource0496; private static const resource0497:Class = ResourceEmbedding_resource0497; private static const resource0481:Class = ResourceEmbedding_resource0481; private static const resource0498:Class = ResourceEmbedding_resource0498; private static const resource0499:Class = ResourceEmbedding_resource0499; public static const WAIT:String = "WAIT"; private static const resource0490:Class = ResourceEmbedding_resource0490; private static const resource0492:Class = ResourceEmbedding_resource0492; public static const enabled:Boolean = true; public static const DONE:String = "DONE"; private static const resource0500:Class = ResourceEmbedding_resource0500; private static const resource0508:Class = ResourceEmbedding_resource0508; private static const resource0502:Class = ResourceEmbedding_resource0502; private static const resource0504:Class = ResourceEmbedding_resource0504; private static const resource0505:Class = ResourceEmbedding_resource0505; private static const resource0506:Class = ResourceEmbedding_resource0506; private static const resource0507:Class = ResourceEmbedding_resource0507; private static const resource0509:Class = ResourceEmbedding_resource0509; private static const resource0501:Class = ResourceEmbedding_resource0501; private static const resource0503:Class = ResourceEmbedding_resource0503; private static const resource0510:Class = ResourceEmbedding_resource0510; private static const resource0511:Class = ResourceEmbedding_resource0511; private static const resource0512:Class = ResourceEmbedding_resource0512; private static const resource0513:Class = ResourceEmbedding_resource0513; private static const resource0514:Class = ResourceEmbedding_resource0514; private static const resource0515:Class = ResourceEmbedding_resource0515; private static const resource0516:Class = ResourceEmbedding_resource0516; private static const resource0517:Class = ResourceEmbedding_resource0517; private static const resource0518:Class = ResourceEmbedding_resource0518; private static const resource0519:Class = ResourceEmbedding_resource0519; private static const resource0520:Class = ResourceEmbedding_resource0520; private static const resource0522:Class = ResourceEmbedding_resource0522; private static const resource0524:Class = ResourceEmbedding_resource0524; private static const resource0526:Class = ResourceEmbedding_resource0526; private static const resource0521:Class = ResourceEmbedding_resource0521; private static const resource0523:Class = ResourceEmbedding_resource0523; private static const resource0525:Class = ResourceEmbedding_resource0525; private static const resource0527:Class = ResourceEmbedding_resource0527; private static const resource0528:Class = ResourceEmbedding_resource0528; private static const resource0529:Class = ResourceEmbedding_resource0529; private static const resource0530:Class = ResourceEmbedding_resource0530; private static const resource0531:Class = ResourceEmbedding_resource0531; private static const resource0532:Class = ResourceEmbedding_resource0532; private static const resource0533:Class = ResourceEmbedding_resource0533; private static const resource0534:Class = ResourceEmbedding_resource0534; private static const resource0535:Class = ResourceEmbedding_resource0535; private static const resource0536:Class = ResourceEmbedding_resource0536; private static const resource0537:Class = ResourceEmbedding_resource0537; private static const resource0538:Class = ResourceEmbedding_resource0538; private static const resource0539:Class = ResourceEmbedding_resource0539; private static const resource0540:Class = ResourceEmbedding_resource0540; private static const resource0300:Class = ResourceEmbedding_resource0300; private static const resource0302:Class = ResourceEmbedding_resource0302; private static const resource0304:Class = ResourceEmbedding_resource0304; private static const resource0306:Class = ResourceEmbedding_resource0306; private static const resource0301:Class = ResourceEmbedding_resource0301; private static const resource0303:Class = ResourceEmbedding_resource0303; private static const resource0305:Class = ResourceEmbedding_resource0305; private static const resource0548:Class = ResourceEmbedding_resource0548; private static const resource0307:Class = ResourceEmbedding_resource0307; private static const resource0308:Class = ResourceEmbedding_resource0308; private static const resource0309:Class = ResourceEmbedding_resource0309; private static const resource0544:Class = ResourceEmbedding_resource0544; private static const resource0545:Class = ResourceEmbedding_resource0545; private static const resource0546:Class = ResourceEmbedding_resource0546; private static const resource0547:Class = ResourceEmbedding_resource0547; private static const resource0549:Class = ResourceEmbedding_resource0549; private static const resource0541:Class = ResourceEmbedding_resource0541; private static const resource0542:Class = ResourceEmbedding_resource0542; private static const resource0543:Class = ResourceEmbedding_resource0543; private static const resource0550:Class = ResourceEmbedding_resource0550; private static const resource0551:Class = ResourceEmbedding_resource0551; private static const resource0310:Class = ResourceEmbedding_resource0310; private static const resource0311:Class = ResourceEmbedding_resource0311; private static const resource0312:Class = ResourceEmbedding_resource0312; private static const resource0313:Class = ResourceEmbedding_resource0313; private static const resource0314:Class = ResourceEmbedding_resource0314; private static const resource0315:Class = ResourceEmbedding_resource0315; private static const resource0316:Class = ResourceEmbedding_resource0316; private static const resource0317:Class = ResourceEmbedding_resource0317; private static const resource0318:Class = ResourceEmbedding_resource0318; private static const resource0319:Class = ResourceEmbedding_resource0319; private static const resource0555:Class = ResourceEmbedding_resource0555; private static const resource0556:Class = ResourceEmbedding_resource0556; private static const resource0557:Class = ResourceEmbedding_resource0557; private static const resource0558:Class = ResourceEmbedding_resource0558; private static const resource0559:Class = ResourceEmbedding_resource0559; private static const resource0552:Class = ResourceEmbedding_resource0552; private static const resource0553:Class = ResourceEmbedding_resource0553; private static const resource0554:Class = ResourceEmbedding_resource0554; private static const resource0560:Class = ResourceEmbedding_resource0560; private static const resource0561:Class = ResourceEmbedding_resource0561; private static const resource0320:Class = ResourceEmbedding_resource0320; private static const resource0321:Class = ResourceEmbedding_resource0321; private static const resource0322:Class = ResourceEmbedding_resource0322; private static const resource0323:Class = ResourceEmbedding_resource0323; private static const resource0324:Class = ResourceEmbedding_resource0324; private static const resource0325:Class = ResourceEmbedding_resource0325; private static const resource0326:Class = ResourceEmbedding_resource0326; private static const resource0327:Class = ResourceEmbedding_resource0327; private static const resource0328:Class = ResourceEmbedding_resource0328; private static const resource0329:Class = ResourceEmbedding_resource0329; private static const resource0565:Class = ResourceEmbedding_resource0565; private static const resource0566:Class = ResourceEmbedding_resource0566; private static const resource0567:Class = ResourceEmbedding_resource0567; private static const resource0568:Class = ResourceEmbedding_resource0568; private static const resource0569:Class = ResourceEmbedding_resource0569; private static const resource0562:Class = ResourceEmbedding_resource0562; private static const resource0563:Class = ResourceEmbedding_resource0563; private static const resource0564:Class = ResourceEmbedding_resource0564; private static const resource0570:Class = ResourceEmbedding_resource0570; private static const resource0571:Class = ResourceEmbedding_resource0571; private static const resource0330:Class = ResourceEmbedding_resource0330; private static const resource0331:Class = ResourceEmbedding_resource0331; private static const resource0332:Class = ResourceEmbedding_resource0332; private static const resource0333:Class = ResourceEmbedding_resource0333; private static const resource0334:Class = ResourceEmbedding_resource0334; private static const resource0335:Class = ResourceEmbedding_resource0335; private static const resource0336:Class = ResourceEmbedding_resource0336; private static const resource0337:Class = ResourceEmbedding_resource0337; private static const resource0338:Class = ResourceEmbedding_resource0338; private static const resource0339:Class = ResourceEmbedding_resource0339; private static const resource0575:Class = ResourceEmbedding_resource0575; private static const resource0576:Class = ResourceEmbedding_resource0576; private static const resource0577:Class = ResourceEmbedding_resource0577; private static const resource0578:Class = ResourceEmbedding_resource0578; private static const resource0579:Class = ResourceEmbedding_resource0579; private static const resource0572:Class = ResourceEmbedding_resource0572; private static const resource0573:Class = ResourceEmbedding_resource0573; private static const resource0574:Class = ResourceEmbedding_resource0574; private static const resource0580:Class = ResourceEmbedding_resource0580; private static const resource0340:Class = ResourceEmbedding_resource0340; private static const resource0341:Class = ResourceEmbedding_resource0341; private static const resource0100:Class = ResourceEmbedding_resource0100; private static const resource0101:Class = ResourceEmbedding_resource0101; private static const resource0102:Class = ResourceEmbedding_resource0102; private static const resource0103:Class = ResourceEmbedding_resource0103; private static const resource0104:Class = ResourceEmbedding_resource0104; private static const resource0105:Class = ResourceEmbedding_resource0105; private static const resource0106:Class = ResourceEmbedding_resource0106; private static const resource0107:Class = ResourceEmbedding_resource0107; private static const resource0108:Class = ResourceEmbedding_resource0108; private static const resource0109:Class = ResourceEmbedding_resource0109; private static const resource0345:Class = ResourceEmbedding_resource0345; private static const resource0346:Class = ResourceEmbedding_resource0346; private static const resource0347:Class = ResourceEmbedding_resource0347; private static const resource0348:Class = ResourceEmbedding_resource0348; private static const resource0349:Class = ResourceEmbedding_resource0349; private static const resource0342:Class = ResourceEmbedding_resource0342; private static const resource0343:Class = ResourceEmbedding_resource0343; private static const resource0344:Class = ResourceEmbedding_resource0344; private static const resource0350:Class = ResourceEmbedding_resource0350; private static const resource0351:Class = ResourceEmbedding_resource0351; private static const resource0110:Class = ResourceEmbedding_resource0110; private static const resource0111:Class = ResourceEmbedding_resource0111; private static const resource0112:Class = ResourceEmbedding_resource0112; private static const resource0113:Class = ResourceEmbedding_resource0113; private static const resource0114:Class = ResourceEmbedding_resource0114; private static const resource0115:Class = ResourceEmbedding_resource0115; private static const resource0116:Class = ResourceEmbedding_resource0116; private static const resource0117:Class = ResourceEmbedding_resource0117; private static const resource0118:Class = ResourceEmbedding_resource0118; private static const resource0119:Class = ResourceEmbedding_resource0119; private static const resource0355:Class = ResourceEmbedding_resource0355; private static const resource0356:Class = ResourceEmbedding_resource0356; private static const resource0357:Class = ResourceEmbedding_resource0357; private static const resource0358:Class = ResourceEmbedding_resource0358; private static const resource0359:Class = ResourceEmbedding_resource0359; private static const resource0352:Class = ResourceEmbedding_resource0352; private static const resource0353:Class = ResourceEmbedding_resource0353; private static const resource0354:Class = ResourceEmbedding_resource0354; private static const resource0360:Class = ResourceEmbedding_resource0360; private static const resource0361:Class = ResourceEmbedding_resource0361; private static const resource0120:Class = ResourceEmbedding_resource0120; private static const resource0121:Class = ResourceEmbedding_resource0121; private static const resource0122:Class = ResourceEmbedding_resource0122; private static const resource0123:Class = ResourceEmbedding_resource0123; private static const resource0124:Class = ResourceEmbedding_resource0124; private static const resource0125:Class = ResourceEmbedding_resource0125; private static const resource0126:Class = ResourceEmbedding_resource0126; private static const resource0127:Class = ResourceEmbedding_resource0127; private static const resource0128:Class = ResourceEmbedding_resource0128; private static const resource0129:Class = ResourceEmbedding_resource0129; private static const resource0365:Class = ResourceEmbedding_resource0365; private static const resource0366:Class = ResourceEmbedding_resource0366; private static const resource0367:Class = ResourceEmbedding_resource0367; private static const resource0368:Class = ResourceEmbedding_resource0368; private static const resource0369:Class = ResourceEmbedding_resource0369; private static const resource0362:Class = ResourceEmbedding_resource0362; private static const resource0363:Class = ResourceEmbedding_resource0363; private static const resource0364:Class = ResourceEmbedding_resource0364; private static const resource0370:Class = ResourceEmbedding_resource0370; private static const resource0371:Class = ResourceEmbedding_resource0371; private static const resource0130:Class = ResourceEmbedding_resource0130; private static const resource0131:Class = ResourceEmbedding_resource0131; private static const resource0132:Class = ResourceEmbedding_resource0132; private static const resource0133:Class = ResourceEmbedding_resource0133; private static const resource0134:Class = ResourceEmbedding_resource0134; private static const resource0135:Class = ResourceEmbedding_resource0135; private static const resource0136:Class = ResourceEmbedding_resource0136; private static const resource0137:Class = ResourceEmbedding_resource0137; private static const resource0138:Class = ResourceEmbedding_resource0138; private static const resource0139:Class = ResourceEmbedding_resource0139; private static const resource0375:Class = ResourceEmbedding_resource0375; private static const resource0376:Class = ResourceEmbedding_resource0376; private static const resource0377:Class = ResourceEmbedding_resource0377; private static const resource0378:Class = ResourceEmbedding_resource0378; private static const resource0379:Class = ResourceEmbedding_resource0379; private static const resource0372:Class = ResourceEmbedding_resource0372; private static const resource0373:Class = ResourceEmbedding_resource0373; private static const resource0374:Class = ResourceEmbedding_resource0374; private static const resource0380:Class = ResourceEmbedding_resource0380; private static const resource0381:Class = ResourceEmbedding_resource0381; private static const resource0140:Class = ResourceEmbedding_resource0140; private static const resource0141:Class = ResourceEmbedding_resource0141; private static const resource0142:Class = ResourceEmbedding_resource0142; private static const resource0143:Class = ResourceEmbedding_resource0143; private static const resource0144:Class = ResourceEmbedding_resource0144; private static const resource0145:Class = ResourceEmbedding_resource0145; private static const resource0146:Class = ResourceEmbedding_resource0146; private static const resource0147:Class = ResourceEmbedding_resource0147; private static const resource0148:Class = ResourceEmbedding_resource0148; private static const resource0149:Class = ResourceEmbedding_resource0149; private static const resource0385:Class = ResourceEmbedding_resource0385; private static const resource0386:Class = ResourceEmbedding_resource0386; private static const resource0387:Class = ResourceEmbedding_resource0387; private static const resource0388:Class = ResourceEmbedding_resource0388; private static const resource0389:Class = ResourceEmbedding_resource0389; private static const resource0382:Class = ResourceEmbedding_resource0382; private static const resource0383:Class = ResourceEmbedding_resource0383; private static const resource0384:Class = ResourceEmbedding_resource0384; private static const resource0390:Class = ResourceEmbedding_resource0390; private static const resource0391:Class = ResourceEmbedding_resource0391; private static const resource0150:Class = ResourceEmbedding_resource0150; private static const resource0151:Class = ResourceEmbedding_resource0151; private static const resource0152:Class = ResourceEmbedding_resource0152; private static const resource0153:Class = ResourceEmbedding_resource0153; private static const resource0154:Class = ResourceEmbedding_resource0154; private static const resource0155:Class = ResourceEmbedding_resource0155; private static const resource0156:Class = ResourceEmbedding_resource0156; private static const resource0157:Class = ResourceEmbedding_resource0157; private static const resource0158:Class = ResourceEmbedding_resource0158; private static const resource0159:Class = ResourceEmbedding_resource0159; private static const resource0395:Class = ResourceEmbedding_resource0395; private static const resource0396:Class = ResourceEmbedding_resource0396; private static const resource0397:Class = ResourceEmbedding_resource0397; private static const resource0398:Class = ResourceEmbedding_resource0398; private static const resource0399:Class = ResourceEmbedding_resource0399; private static const resource0392:Class = ResourceEmbedding_resource0392; private static const resource0393:Class = ResourceEmbedding_resource0393; private static const resource0394:Class = ResourceEmbedding_resource0394; private static const resource0160:Class = ResourceEmbedding_resource0160; private static const resource0161:Class = ResourceEmbedding_resource0161; private static const resource0162:Class = ResourceEmbedding_resource0162; private static const resource0163:Class = ResourceEmbedding_resource0163; private static const resource0164:Class = ResourceEmbedding_resource0164; private static const resource0165:Class = ResourceEmbedding_resource0165; private static const resource0166:Class = ResourceEmbedding_resource0166; private static const resource0167:Class = ResourceEmbedding_resource0167; private static const resource0168:Class = ResourceEmbedding_resource0168; private static const resource0169:Class = ResourceEmbedding_resource0169; private static const resource0170:Class = ResourceEmbedding_resource0170; private static const resource0171:Class = ResourceEmbedding_resource0171; private static const resource0172:Class = ResourceEmbedding_resource0172; private static const resource0173:Class = ResourceEmbedding_resource0173; private static const resource0174:Class = ResourceEmbedding_resource0174; private static const resource0175:Class = ResourceEmbedding_resource0175; private static const resource0176:Class = ResourceEmbedding_resource0176; private static const resource0177:Class = ResourceEmbedding_resource0177; private static const resource0178:Class = ResourceEmbedding_resource0178; private static const resource0179:Class = ResourceEmbedding_resource0179; private static const resource0180:Class = ResourceEmbedding_resource0180; private static const resource0181:Class = ResourceEmbedding_resource0181; private static const resource0182:Class = ResourceEmbedding_resource0182; private static const resource0183:Class = ResourceEmbedding_resource0183; private static const resource0184:Class = ResourceEmbedding_resource0184; private static const resource0185:Class = ResourceEmbedding_resource0185; private static const resource0186:Class = ResourceEmbedding_resource0186; private static const resource0187:Class = ResourceEmbedding_resource0187; private static const resource0188:Class = ResourceEmbedding_resource0188; private static const resource0189:Class = ResourceEmbedding_resource0189; private static const resource0190:Class = ResourceEmbedding_resource0190; private static const resource0191:Class = ResourceEmbedding_resource0191; private static const resource0192:Class = ResourceEmbedding_resource0192; private static const resource0193:Class = ResourceEmbedding_resource0193; private static const resource0194:Class = ResourceEmbedding_resource0194; private static const resource0195:Class = ResourceEmbedding_resource0195; private static const resource0196:Class = ResourceEmbedding_resource0196; private static const resource0197:Class = ResourceEmbedding_resource0197; private static const resource0198:Class = ResourceEmbedding_resource0198; private static const resource0199:Class = ResourceEmbedding_resource0199; public static const FAIL:String = "FAIL"; private static var resources:Object = {yZî0 õ?O‡ ùßV:resource0000, yZî0 F(Õ&—#P%ÓùfýçºqÚqÕY;˜+{ %ßBjaÀÚb]ùcf{n÷´°Ï:resource0001, yZî0 F(Õ&—#P%ÓùfýçºqÚqÕY;˜+{ %ßBjaÀÚb]ùcf{‰÷´°Ï:resource0002, yZî0 F(Õ&—#P%ÓùfýçºqÚqÕY;˜+{ %ßBjaÀÚb]ùcf{­÷´°Ï:resource0003, yZî0 F(Õ&—#P%ÓùfýçºqÚqÕY;˜+{ %ßBjaÀÚb]ùcf{ã÷´°Ï:resource0004, yZî0 F(Õ&—#P%ÓùfýçºqÚqÕY;˜+{ %ßBjaÀÚb]ùcf{F÷´°Ï:resource0005, yZî0 F(Õ&—#P%ÓùfýçºqÚqÕY;˜+{ %ßBjaÀÚb]ùcf{Ù÷´°Ï:resource0006, yZî0 F(Õ&—#P%ÓùfýçºqÚqÕY;˜+{ %ßBjaÀÚb]ùcf{Y÷´°Ï:resource0007, yZî0 F(Õ&—#P%ÓùfýçºqÚqÕY;˜+{ %ßBjaÀÚb]ùcf{"÷´°Ï:resource0008, yZî0 F(Õ&—#P%ÓùfýçºqÚqÕY;˜+{ %ßBjaÀÚb]ùcf{Ú÷´°Ï:resource0009, yZî0 F(Õ&—#P%ÓùfýçºqÚqÕY;˜+{ %ßBjaÀÚb]ùcf{b÷´°Ï:resource0010, yZî0 F(Õ&—#P%ÓùfýçºqÚqÕY;¾++Á%ßBjaóØbbcf{n÷´°Ï:resource0011, yZî0 F(Õ&—#P%ÓùfýçºqÚqÕY;¾++Á%ßBjaóØbbcf{‰÷´°Ï:resource0012, yZî0 F(Õ&—#P%ÓùfýçºqÚqÕY;¾++Á%ßBjaóØbbcf{­÷´°Ï:resource0013, yZî0 F(Õ&—#P%ÓùfýçºqÚqÕY;¾++Á%ßBjaóØbbcf{ã÷´°Ï:resource0014, yZî0 F(Õ&—#P%ÓùfýçºqÚqÕY;¾++Á%ßBjaóØbbcf{F÷´°Ï:resource0015, yZî0 F(Õ&—#P%ÓùfýçºqÚqÕY;¾++Á%ßBjaóØbbcf{Ù÷´°Ï:resource0016, yZî0 F(Õ&—#P%ÓùfýçºqÚqÕY;¾++Á%ßBjaóØbbcf{Y÷´°Ï:resource0017, yZî0 F(Õ&—#P%ÓùfýçºqÚqÕY;¾++Á%ßBjaóØbbcf{"÷´°Ï:resource0018, yZî0 F(Õ&—#P%ÓùfýçºqÚqÕY;¾++Á%ßBjaóØbbcf{Ú÷´°Ï:resource0019, yZî0 F(Õ&—#P%ÓùfýçºqÚqÕY;¾++Á%ßBjaóØbbcf{b÷´°Ï:resource0020, yZî0 F(Õ&—#P%ÓùfýçºqÚqÕY;¾++Á%ßBjaóØbbcfgn÷´°Ï:resource0021, yZî0 F(Õ&—#P%ÓùfýçºqÚqÕY;¾++Á%ßBjaóØbbcfg‰÷´°Ï:resource0022, yZî0 F(Õ&—#P%ÓùfýçºqÚqÕY;¾++Á%ßBjaóØbbcfg­÷´°Ï:resource0023, yZî0 F(Õ&—#P%ÓùfýçºqÚqÕY;¾++Á%ßBjaóØbbcfgã÷´°Ï:resource0024, yZî0 F(Õ&—#P%ÓùfýçºqÚqÕY;¾È®A£  ÒuÊcf)Rh:resource0025, yZî0 F(Õ&—#P%ÓùfýçºqÚqÕY;¾È®A£  ÒuÊc†)Rh:resource0026, yZî0 F(Õ&—#P%ÓùfýçºqÚqÕY;¾È®A£  ÒuÊcm)Rh:resource0027, yZî0 F(Õ&—#P%ÓùfýçºqÚqÕY;¾È®A£  ÒuÊc—)Rh:resource0028, yZî0 F(Õ&—#P%ÓùfýçºqÚqÕY;¾È®A£  ÒuÊc)Rh:resource0029, yZî0 F(Õ&—#P%ÓùfýçºqÚqÕY;¾È®A£  ÒuÊcx)Rh:resource0030, yZî0 F(Õ&—#P%ÓùfýçºqÚqÕY;¾È®A£  ÒuÊc()Rh:resource0031, yZî0 F(Õ&—#P%ÓùfýçºqÚqÕY;¾È®A£  ÒuÊcL)Rh:resource0032, yZî0 F(Õ&—#P%ÓùfýçºqÚqÕY;¾È®A£  ÒuÊcî)Rh:resource0033, yZî0 F(Õ&—#P%ÓùfýçºqÚqÕY;¾È®A£  ÒuÊco)Rh:resource0034, yZî0 F(Õ&—#P%ÓùfýçºqÚqÕY;¾È®A£  ÒuÊÐf)Rh:resource0035, yZî0 F(Õ&—#P%ÓùfýçºqÚqÕY;¾È®A£  ÒuÊІ)Rh:resource0036, yZî0 F(Õ&—#P%ÓùfýÀº09ÚÕ4›á‰#„ò%oBÿVh ìscf)Rh:resource0037, yZî0 F(Õ&—#P%ÓùfýÀº09ÚÕ4›á‰#„ò%oBÿVh ìsc†)Rh:resource0038, yZî0 F(Õ&—#P%ÓùfýÀº09ÚÕ4›á‰#„ò%oBÿVh ìscm)Rh:resource0039, yZî0 F(Õ&—#P%ÓùfýÀº09ÚÕ4›á‰#„ò%oBÿVh ìsc—)Rh:resource0040, yZî0 F(Õ&—#P%ÓùfýÀº09ÚÕ4›á‰#„ò%oBÿVh ìsc)Rh:resource0041, yZî0 F(Õ&—#P%ÓùfýÀº09ÚÕ4›á‰#„ò%oBÿVh ìscx)Rh:resource0042, yZî0 F(Õ&—#P%ÓùfýÀº09ÚÕ4›á‰#„ò%oBÿVh ìsc()Rh:resource0043, yZî0 F(Õ&—#P%ÓùfýÀº09ÚÕ4›á‰#„ò%oBÿVh ìscL)Rh:resource0044, yZî0 F(Õ&—#P%ÓùfýÀº09ÚÕ4›á‰#„ò%oBÿVh ìscî)Rh:resource0045, yZî0 F(Õ&—#P%ÓùfýÀº09ÚÕ4›5ÃÈ®7AB_ÒÚuÊàá.Ÿ:resource0046, yZî0 F(Õ&—#P%ÓùfýÀº09ÚÕ4›5ÃÈ®7AB_ÒÚuXàá.Ÿ:resource0047, yZî0 F(Õ&—#P%ÓùfýÀº09ÚÕ4›5ÃÈ®7AB_ÒÚu1àá.Ÿ:resource0048, yZî0 F(Õ&—#P%ÓùfýÀº09ÚÕ4›5ÃÈ®7AB_ÒÚuàá.Ÿ:resource0049, yZî0 F(Õ&—#P%ÓùfýÀº09ÚÕ4›5ÃÈ®7AB_ÒÚu]àá.Ÿ:resource0050, yZî0 F(Õ&—#P%ÓùfýÀº09ÚÕ4›5ÃÈ®7AB_ÒÚuÜàá.Ÿ:resource0051, yZî0 F(Õ&—#P%ÓùfýÀº09ÚÕ4›5ÃÈ®7AB_ÒÚuÎàá.Ÿ:resource0052, yZî0 F(Õ&—#P%ÓùfýÀº09ÚÕ4›5ÃÈ®7AB_ÒÚuàá.Ÿ:resource0053, yZî0 F(Õ&—#P%ÓùfýÀº09ÚÕ4›5ÃÈ®7AB_ÒÚu¬àá.Ÿ:resource0054, yZî0 F(Õ&—#P%ÓùfýÀº09ÚÕ4›5ÃÈ®7AB_ÒÚu¨àá.Ÿ:resource0055, yZî0 F(Õ&—#P%ÓùfýÀº09ÚÕ4›5ÃÈ®7AB_ÒÚèÊàá.Ÿ:resource0056, yZî0 F(Õ&—#P%ÓùfýÀº09ÚÕ4›5ÃÈ®7AB_ÒÚèXàá.Ÿ:resource0057, yZî0 F(Õ&—#P%ÓùfýÀº09ÚÕ4›5ÃÈ®7AB_ÒÚè1àá.Ÿ:resource0058, yZî0 F(Õ&—#P%ÓùfýÀº09ÚÕ4›5ÃÈ®7AB_ÒÚèàá.Ÿ:resource0059, yZî0 F(Õ&—#P%ÓùfýÀº09ÚÕ4›5ÃÈ®7AB_ÒÚè]àá.Ÿ:resource0060, yZî0 F(Õ&—#P%ÓùfýÀº09ÚÕ4›5ÃÈ®7AB_ÒÚèÜàá.Ÿ:resource0061, yZî0 F(Õ&—#P%ÓùfýÀº09ÚÕ4›5ÃÈ®7AB_ÒÚèÎàá.Ÿ:resource0062, yZî0 F(Õ&—#P%ÓùfýÀº09ÚÕ4›5ÃÈ®7AB_ÒÚèàá.Ÿ:resource0063, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøRaáÄé‹´Rƒ’­×‡ÜQÒN]õ„ØÓ‡:resource0064, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøRaáÄé‹´Rƒ’­×‡ÜQÒN]õäØÓ‡:resource0065, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøRaáÄé‹´Rƒ’­×‡ÜQÒN]õ8ØÓ‡:resource0066, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøRaáÄé‹´Rƒ’­×‡ÜQÒN]õØÓ‡:resource0067, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøRaáÄé‹´Rƒ’­×‡ÜQÒN]õËØÓ‡:resource0068, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøRaáÄé‹´Rƒ’­×‡ÜQÒN]õVØÓ‡:resource0069, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøRaáÄé‹´Rƒ’­×‡ÜQÒN]õHØÓ‡:resource0070, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøRaáÄé‹´Rƒ’­×‡ÜQÒN]õÉØÓ‡:resource0071, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøRaáÄé‹´Rƒ’­×‡ÜQÒN]õ^ØÓ‡:resource0072, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøRaáÄé‹´Rƒ’­×‡ÜQÒN]õtØÓ‡:resource0073, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøª`àÚ`]<6ƒu9T݁kšÓb"5—"*ê ü`”zìäÕï•:resource0074, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøª`àÚ`]<6ƒu9T݁kšÓb"5—"*ê ü`”zSäÕï•:resource0075, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøª`àÚ`]<6ƒu9T݁kšÓb"5—"*ê ü`”zäÕï•:resource0076, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøª`àÚ`]<6ƒu9T݁kšÓb"5—"*ê ü`”z¶äÕï•:resource0077, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøª`àÚ`]<6ƒu9T݁kšÓb"5—"*ê ü`”zäÕï•:resource0078, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøª`àÚ`]<6ƒu9T݁kšÓb"5—"*ê ü`”zèäÕï•:resource0079, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøª`àÚ`]<6ƒu9T݁kšÓb"5—"*ê ü`”z­äÕï•:resource0080, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøª`àÚ`]<6ƒu9T݁kšÓb"5—"*ê ü`”z–äÕï•:resource0081, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøª`àÚ`]<6ƒu9T݁kšÓb"5—"*ê ü`”zˆäÕï•:resource0082, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøª`àÚ`]<6ƒu9T݁kšÓb"5—"*ê ü`”zðäÕï•:resource0083, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøª`àÚ`]<6ƒu9T݁kšÓb"5—"*ê ü`”QìäÕï•:resource0084, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøª`àÚ`]<6ƒu9T݁kšÓb"5—"*ê ü`”QSäÕï•:resource0085, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøª`àÚ`]<6ƒu9T݁kšÓb"5—"*ê ü`”QäÕï•:resource0086, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøª`àÚ`]<6ƒu9T݁kšÓb"5—"*ê ü`”Q¶äÕï•:resource0087, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøª`àÚ`]<6ƒu9T݁kšÓb"5—"*ê ü`”QäÕï•:resource0088, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøª`àÚ`]<6ƒu9T݁kšÓb"5—"*ê ü`”QèäÕï•:resource0089, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøª`àÚ`]<6ƒu9T݁kšÓb"5—"*ê ü`”Q­äÕï•:resource0090, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøª`àÚ`]<6ƒ1¦Ðw}»S 7ôË–Ž0þi´ciYµÄr·l%SeÝ(©Yv½Ò::resource0091, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøª`àÚ`]<6ƒ1¦Ðw}»S 7ôË–Ž0þi´ciYµÄr·l%SeÝ(©4v½Ò::resource0092, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøª`àÚ`]<6ƒ1¦Ðw}»S 7ôË–Ž0þi´ciYµÄr·l%SeÝ(©Þv½Ò::resource0093, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøª`àÚ`]<6ƒ1¦Ðw}»S 7ôË–Ž0þi´ciYµÄr·l%SeÝ(©Mv½Ò::resource0094, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøª`àÚ`]<6ƒ1¦Ðw}»S 7ôË–Ž0þi´ciYµÄr·l%SeÝ(©v½Ò::resource0095, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøª`àÚ`]<6ƒ1¦Ðw}»S 7ôË–Ž0þi´ciYµÄr·l%SeÝ(©áv½Ò::resource0096, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøª`àÚ`]<6ƒ1¦Ðw}»S 7ôË–Ž0þi´ciYµÄr·l%SeÝ(©8v½Ò::resource0097, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøª`àÚ`]<6ƒ1¦Ðw}»S 7ôË–Ž0þi´ciYµÄr·l%SeÝ(©v½Ò::resource0098, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøª`àÚ`]<6ƒ1¦Ðw}»S 7ôË–Ž0þi´ciYµÄr·l%SeÝ(©ûv½Ò::resource0099, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøª`àÚ`]<6ƒ1¦Ðw}»S 7ôË–Ž0þi´ciYµÄr·l%SeÝ(©wv½Ò::resource0100, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøª`àÚ`]<6ƒ1¦Ðw}»S 7ôË–Ž0þi´ciYµÄr·l%SeÝ(ÕYv½Ò::resource0101, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøª`àÚ`]<6ƒ1¦Ðw}»S 7ôË–Ž0þi´ciYµÄr·l%SeÝ(Õ4v½Ò::resource0102, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøª`àÚ`]<6ƒ1¦Ðw}»S 7ôË–Ž0þi´ciYµÄr·l%SeÝ(ÕÞv½Ò::resource0103, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøª`àÚ`]<6ƒ1¦Ðw}»S 7ôË–Ž0þi´ciYµÄr·l%SeÝ(ÕMv½Ò::resource0104, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøª`àÚ`]<6ƒ1¦Ðw}»S 7ôË–Ž0þi´ciYµÄr·l%SeÝ(Õv½Ò::resource0105, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøª`àÚ`]<6ƒ1¦Ðw}»S 7ôË–Ž0þi´ciYµÄr·l%SeÝ(Õáv½Ò::resource0106, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøª`àÚ`]<6ƒ1¦Ðw}»S 7ôË–Ž0þi´ciYµÄr·l%SeÝ(Õ8v½Ò::resource0107, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøú7ûÚ‹´Rƒ’­×”¼!]õ„ØÓ‡:resource0108, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøú7ûÚ‹´Rƒ’­×”¼!]õäØÓ‡:resource0109, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøú7ûÚ‹´Rƒ’­×”¼!]õ8ØÓ‡:resource0110, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøú7ûÚ‹´Rƒ’­×”¼!]õØÓ‡:resource0111, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøú7ûÚ‹´Rƒ’­×”¼!]õËØÓ‡:resource0112, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøú7ûÚ‹´Rƒ’­×”¼!]õVØÓ‡:resource0113, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøú7ûÚ‹´Rƒ’­×”¼!]õHØÓ‡:resource0114, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøú7ûÚ‹´Rƒ’­×”¼!]õÉØÓ‡:resource0115, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøú7ûÚ‹´Rƒ’­×”¼!]õ^ØÓ‡:resource0116, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøú7ûÚ‹´Rƒ’­×”¼!]õtØÓ‡:resource0117, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøú7ûÚ‹´Rƒ’­×”¼!]õ´„ØÓ‡:resource0118, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøú7ûÚ‹´Rƒ’­×”¼!]õ´äØÓ‡:resource0119, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøú7ûÚ‹´Rƒ’­×”¼!]õ´8ØÓ‡:resource0120, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøú7ûÚ‹´Rƒ’­×”¼!]õ´ØÓ‡:resource0121, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøú7ûÚ‹´Rƒ’­×”¼!]õ´ËØÓ‡:resource0122, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøú7ûÚ‹´Rƒ’­×”¼!]õ´VØÓ‡:resource0123, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøú7ûÚ‹´Rƒ’­×”¼!]õ´HØÓ‡:resource0124, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøú7ûÚ‹´Rƒ’­×”¼!]õ´ÉØÓ‡:resource0125, yZî0 F(Õ&—#P%Óùfýk0 —1©èñЂ#„nšÖøú7ûÚ‹´Rƒ’­×”¼!]õ´^ØÓ‡:resource0126, yZî0 F(Õ&—#P%Óùfýk0 —íX4]WgÍ3’¹j-ójbïs=þŒäÂ:resource0127, yZî0 F(Õ&—#P%Óùfýk0 —íX4]WgÍ3’¹“áîðØï~… ¡]Â,µè!v:resource0128, yZî0 F(Õ&—#P%Óùfýk0 —íX4]WgÍ3’¹“L7) =H“Œ ~¥×+¦9S:resource0129, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´åxG>¾Êhx,(”îLC纗™y tP”z´Å3:resource0130, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´åxG>¾Êhx,(”îLC纗™y tP”Q´Å3:resource0131, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´åxG>¾Êhx,(”îLC纗™y tP”l´Å3:resource0132, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´åxG>¾Êhx,(”îLC纗™y tP”’´Å3:resource0133, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´åxG>¾Êhx,(”îLC纗™y tP”Y´Å3:resource0134, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´åxG>¾Êhx,(”îLC纗™y tP”/´Å3:resource0135, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´åxG>¾Êhx,(”îLC纗™y tP”Š´Å3:resource0136, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´åxG>¾Êhx,(”îLC纗™y tP”ë´Å3:resource0137, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´åxG>¾Êhx,(”îLC纗™y tP”ã´Å3:resource0138, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´åxG>¾Êhx,(”îLC纗™y tP”î´Å3:resource0139, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´å:rWr¶­T(»S 7ôËsŽ*qÕÊ~¸n¸ô÷m*qÎÝQA†¿:resource0140, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´å:rWr¶­T(»S 7ôËsŽ*qÕÊ~¸n¸ô÷m*qÎQA†¿:resource0141, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´å:rWr¶­T(»S 7ôËsŽ*qÕÊ~¸n¸ô÷m*qÎÈQA†¿:resource0142, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´å:rWr¶­T(»S 7ôËsŽ*qÕÊ~¸n¸ô÷m*qÎçQA†¿:resource0143, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´å:rWr¶­T(»S 7ôËsŽ*qÕÊ~¸n¸ô÷m*qÎjQA†¿:resource0144, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´å:rWr¶­T(»S 7ôËsŽ*qÕÊ~¸n¸ô÷m*qÎøQA†¿:resource0145, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´å:rWr¶­T(»S 7ôËsŽ*qÕÊ~¸n¸ô÷m*qγQA†¿:resource0146, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´å:rWr¶­T(»S 7ôËsŽ*qÕÊ~¸n¸ô÷m*qÎDQA†¿:resource0147, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´å:rWr¶­T(»S 7ôËsŽ*qÕÊ~¸n¸ô÷m*qÎ QA†¿:resource0148, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´å:rWr¶­T(»S 7ôËsŽ*qÕÊ~¸n¸ô÷m*qÎ?QA†¿:resource0149, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´å:rWr¶­T(»S 7ôËsŽ*qÕÊ~¸n¸ô÷m*qyÝQA†¿:resource0150, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´å:rWr¶­T(»S 7ôËsŽ*qÕÊ~¸n¸ô÷m*qyQA†¿:resource0151, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´å:rWr¶­T(»S 7ôËsŽ*qÕÊ~¸n¸ô÷m*qyÈQA†¿:resource0152, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´å:rWr¶­T(»S 7ôËsŽ*qÕÊ~¸n¸ô÷m*qyçQA†¿:resource0153, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´å:rWr¶­T(»S 7ôËsŽ*qÕÊ~¸n¸ô÷m*qyjQA†¿:resource0154, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´å:rWr¶­T(»S 7ôËsŽ*qÕÊ~¸n¸ô÷m*qyøQA†¿:resource0155, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´å:rWr¶­T(»S 7ôËsŽ*qÕÊ~¸n¸ô÷m*qy³QA†¿:resource0156, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´å:rWr¶­T(¬@ÃÌ¯N£Ý®¸Y˜¹}±Âû±£ú¬XÊ–—Of²Ö£Õ ¨:resource0157, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´å:rWr¶­T(¬@ÃÌ¯N£Ý®¸Y˜¹}±Âû±£ú¬XÊ–—Of²ÖBÕ ¨:resource0158, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´å:rWr¶­T(¬@ÃÌ¯N£Ý®¸Y˜¹}±Âû±£ú¬XÊ–—Of²ÖGÕ ¨:resource0159, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´å:rWr¶­T(¬@ÃÌ¯N£Ý®¸Y˜¹}±Âû±£ú¬XÊ–—Of²ÖÑÕ ¨:resource0160, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´å:rWr¶­T(¬@ÃÌ¯N£Ý®¸Y˜¹}±Âû±£ú¬XÊ–—Of²Ö­Õ ¨:resource0161, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´å:rWr¶­T(¬@ÃÌ¯N£Ý®¸Y˜¹}±Âû±£ú¬XÊ–—Of²ÖÕ ¨:resource0162, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´å:rWr¶­T(¬@ÃÌ¯N£Ý®¸Y˜¹}±Âû±£ú¬XÊ–—Of²ÖlÕ ¨:resource0163, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´å:rWr¶­T(¬@ÃÌ¯N£Ý®¸Y˜¹}±Âû±£ú¬XÊ–—Of²ÖÜÕ ¨:resource0164, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´å:rWr¶­T(¬@ÃÌ¯N£Ý®¸Y˜¹}±Âû±£ú¬XÊ–—Of²Ö¶Õ ¨:resource0165, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´å:rWr¶­T(¬@ÃÌ¯N£Ý®¸Y˜¹}±Âû±£ú¬XÊ–—Of²֏Õ ¨:resource0166, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´å:rWr¶­T(¬@ÃÌ¯N£Ý®¸Y˜¹}±Âû±£ú¬XÊ–—Of²A£Õ ¨:resource0167, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´å:rWr¶­T(¬@ÃÌ¯N£Ý®¸Y˜¹}±Âû±£ú¬XÊ–—Of²ABÕ ¨:resource0168, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´å:rWr¶­T(¬@ÃÌ¯N£Ý®¸Y˜¹}±Âû±£ú¬XÊ–—Of²AGÕ ¨:resource0169, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´å:rWr¶­T(¬@ÃÌ¯N£Ý®¸Y˜¹}±Âû±£ú¬XÊ–—Of²AÑÕ ¨:resource0170, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´å:rWr¶­T(¬@ÃÌ¯N£Ý®¸Y˜¹}±Âû±£ú¬XÊ–—Of²A­Õ ¨:resource0171, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´å:rWr¶­T(¬@ÃÌ¯N£Ý®¸Y˜¹}±Âû±£ú¬XÊ–—Of²AÕ ¨:resource0172, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´å:rWr¶­T(¬@ÃÌ¯N£Ý®¸Y˜¹}±Âû±£ú¬XÊ–—Of²AlÕ ¨:resource0173, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´åÞN„WùÊhx,(”îLC纗܍quüP”Q´Å3:resource0174, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´åÞN„WùÊhx,(”îLC纗܍quüP”l´Å3:resource0175, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´åÞN„WùÊhx,(”îLC纗܍quüP”’´Å3:resource0176, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´åÞN„WùÊhx,(”îLC纗܍quüP”Y´Å3:resource0177, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´åÞN„WùÊhx,(”îLC纗܍quüP”/´Å3:resource0178, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´åÞN„WùÊhx,(”îLC纗܍quüP”Š´Å3:resource0179, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´åÞN„WùÊhx,(”îLC纗܍quüP”ë´Å3:resource0180, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´åÞN„WùÊhx,(”îLC纗܍quüP”ã´Å3:resource0181, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´åÞN„WùÊhx,(”îLC纗܍quüP”î´Å3:resource0182, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´åÞN„WùÊhx,(”îLC纗܍quüPÂz´Å3:resource0183, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´åÞN„WùÊhx,(”îLC纗܍quüPÂQ´Å3:resource0184, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´åÞN„WùÊhx,(”îLC纗܍quüPÂl´Å3:resource0185, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´åÞN„WùÊhx,(”îLC纗܍quüPÂ’´Å3:resource0186, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´åÞN„WùÊhx,(”îLC纗܍quüPÂY´Å3:resource0187, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´åÞN„WùÊhx,(”îLC纗܍quüPÂ/´Å3:resource0188, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´åÞN„WùÊhx,(”îLC纗܍quüPÂŠ´Å3:resource0189, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´åÞN„WùÊhx,(”îLC纗܍quüPÂë´Å3:resource0190, yZî0 F(Õ&—#P%Óùfýk0 —,©ˆug¡‰ •¶ `û¥´åÞN„WùÊhx,(”îLC纗܍quüPÂã´Å3:resource0191, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒÙ.Ÿè7fÏÙ$YìðZ‹—Sã)ŒüÕ>}zìC碌B:resource0192, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒÙ.Ÿè7fÏÙ$YìðZ‹—Sã)ŒüÕ>}zìCv¢ŒB:resource0193, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒÙ.Ÿè7fÏÙ$YìðZ‹—Sã)ŒüÕ>}zìCk¢ŒB:resource0194, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒÙ.Ÿè7fÏÙ$YìðZ‹—Sã)ŒüÕ>}zìCO¢ŒB:resource0195, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒÙ.Ÿè7fÏÙ$YìðZ‹—Sã)ŒüÕ>}zìCô¢ŒB:resource0196, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒÙ.Ÿè7fÏÙ$YìðZ‹—Sã)ŒüÕ>}zìCТŒB:resource0197, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒÙ.Ÿè7fÏÙ$YìðZ‹—Sã)ŒüÕ>}zìC@¢ŒB:resource0198, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒÙ.Ÿè7fÏÙ$YìðZ‹—Sã)ŒüÕ>}zìCÁ¢ŒB:resource0199, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒÙ.Ÿè7fÏÙ$YìðZ‹—Sã)ŒüÕ>}zìCÊ¢ŒB:resource0200, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒÙ.Ÿè7fÏÙ$YìðZ‹—Sã)ŒüÕ>}zìC¢ŒB:resource0201, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒé[/?[O@9Y v™‘ßMñÅuÊZftÉh ɲKòÇÝ(©Yv½Ò::resource0202, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒé[/?[O@9Y v™‘ßMñÅuÊZftÉh ɲKòÇÝ(©4v½Ò::resource0203, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒé[/?[O@9Y v™‘ßMñÅuÊZftÉh ɲKòÇÝ(©Þv½Ò::resource0204, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒé[/?[O@9Y v™‘ßMñÅuÊZftÉh ɲKòÇÝ(©Mv½Ò::resource0205, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒé[/?[O@9Y v™‘ßMñÅuÊZftÉh ɲKòÇÝ(©v½Ò::resource0206, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒé[/?[O@9Y v™‘ßMñÅuÊZftÉh ɲKòÇÝ(©áv½Ò::resource0207, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒé[/?[O@9Y v™‘ßMñÅuÊZftÉh ɲKòÇÝ(©8v½Ò::resource0208, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒé[/?[O@9Y v™‘ßMñÅuÊZftÉh ɲKòÇÝ(©v½Ò::resource0209, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒé[/?[O@9Y v™‘ßMñÅuÊZftÉh ɲKòÇÝ(©ûv½Ò::resource0210, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒé[/?[O@9Y v™‘ßMñÅuÊZftÉh ɲKòÇÝ(©wv½Ò::resource0211, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒé[/?[O@9Y v™‘ßMñÅuÊZftÉh ɲKòÇÝ(ÕYv½Ò::resource0212, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒé[/?[O@9Y v™‘ßMñÅuÊZftÉh ɲKòÇÝ(Õ4v½Ò::resource0213, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒé[/?[O@9Y v™‘ßMñÅuÊZftÉh ɲKòÇÝ(ÕÞv½Ò::resource0214, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒé[/?[O@9Y v™‘ßMñÅuÊZftÉh ɲKòÇÝ(ÕMv½Ò::resource0215, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒé[/?[O@9Y v™‘ßMñÅuÊZftÉh ɲKòÇÝ(Õv½Ò::resource0216, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒé[/?[O@9Y v™‘ßMñÅuÊZftÉh ɲKòÇÝ(Õáv½Ò::resource0217, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒé[/?[O@9Y v™‘ßMñÅuÊZftÉh ɲKòÇÝ(Õ8v½Ò::resource0218, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒé[/?[O@9Yîò5—Ú]y_ó`©%#»¹Õ ÂýUÓ]UHÈðg{‚ˆ4”»£j`H§T>‘:resource0219, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒé[/?[O@9Yîò5—Ú]y_ó`©%#»¹Õ ÂýUÓ]UHÈðg{‚ˆ4”»£j`Û§T>‘:resource0220, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒé[/?[O@9Yîò5—Ú]y_ó`©%#»¹Õ ÂýUÓ]UHÈðg{‚ˆ4”»£j`ù§T>‘:resource0221, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒé[/?[O@9Yîò5—Ú]y_ó`©%#»¹Õ ÂýUÓ]UHÈðg{‚ˆ4”»£j`ߧT>‘:resource0222, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒé[/?[O@9Yîò5—Ú]y_ó`©%#»¹Õ ÂýUÓ]UHÈðg{‚ˆ4”»£j`|§T>‘:resource0223, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒé[/?[O@9Yîò5—Ú]y_ó`©%#»¹Õ ÂýUÓ]UHÈðg{‚ˆ4”»£j`ϧT>‘:resource0224, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒé[/?[O@9Yîò5—Ú]y_ó`©%#»¹Õ ÂýUÓ]UHÈðg{‚ˆ4”»£j`k§T>‘:resource0225, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒé[/?[O@9Yîò5—Ú]y_ó`©%#»¹Õ ÂýUÓ]UHÈðg{‚ˆ4”»£j`!§T>‘:resource0226, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒé[/?[O@9Yîò5—Ú]y_ó`©%#»¹Õ ÂýUÓ]UHÈðg{‚ˆ4”»£j`P§T>‘:resource0227, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒé[/?[O@9Yîò5—Ú]y_ó`©%#»¹Õ ÂýUÓ]UHÈðg{‚ˆ4”»£j`u§T>‘:resource0228, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒé[/?[O@9Yîò5—Ú]y_ó`©%#»¹Õ ÂýUÓ]UHÈðg{‚ˆ4”»£j½H§T>‘:resource0229, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒé[/?[O@9Yîò5—Ú]y_ó`©%#»¹Õ ÂýUÓ]UHÈðg{‚ˆ4”»£j½Û§T>‘:resource0230, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒé[/?[O@9Yîò5—Ú]y_ó`©%#»¹Õ ÂýUÓ]UHÈðg{‚ˆ4”»£j½ù§T>‘:resource0231, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒé[/?[O@9Yîò5—Ú]y_ó`©%#»¹Õ ÂýUÓ]UHÈðg{‚ˆ4”»£j½ß§T>‘:resource0232, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒé[/?[O@9Yîò5—Ú]y_ó`©%#»¹Õ ÂýUÓ]UHÈðg{‚ˆ4”»£j½|§T>‘:resource0233, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒé[/?[O@9Yîò5—Ú]y_ó`©%#»¹Õ ÂýUÓ]UHÈðg{‚ˆ4”»£j½Ï§T>‘:resource0234, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒé[/?[O@9Yîò5—Ú]y_ó`©%#»¹Õ ÂýUÓ]UHÈðg{‚ˆ4”»£j½k§T>‘:resource0235, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒ ó’?fÏÙ$YìðZ‹—Sã)!Ú(f_zìC碌B:resource0236, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒ ó’?fÏÙ$YìðZ‹—Sã)!Ú(f_zìCv¢ŒB:resource0237, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒ ó’?fÏÙ$YìðZ‹—Sã)!Ú(f_zìCk¢ŒB:resource0238, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒ ó’?fÏÙ$YìðZ‹—Sã)!Ú(f_zìCO¢ŒB:resource0239, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒ ó’?fÏÙ$YìðZ‹—Sã)!Ú(f_zìCô¢ŒB:resource0240, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒ ó’?fÏÙ$YìðZ‹—Sã)!Ú(f_zìCТŒB:resource0241, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒ ó’?fÏÙ$YìðZ‹—Sã)!Ú(f_zìC@¢ŒB:resource0242, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒ ó’?fÏÙ$YìðZ‹—Sã)!Ú(f_zìCÁ¢ŒB:resource0243, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒ ó’?fÏÙ$YìðZ‹—Sã)!Ú(f_zìCÊ¢ŒB:resource0244, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒ ó’?fÏÙ$YìðZ‹—Sã)!Ú(f_zìC¢ŒB:resource0245, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒ ó’?fÏÙ$YìðZ‹—Sã)!Ú(f_zìÓ碌B:resource0246, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒ ó’?fÏÙ$YìðZ‹—Sã)!Ú(f_zìÓv¢ŒB:resource0247, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒ ó’?fÏÙ$YìðZ‹—Sã)!Ú(f_zìÓk¢ŒB:resource0248, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒ ó’?fÏÙ$YìðZ‹—Sã)!Ú(f_zìÓO¢ŒB:resource0249, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒ ó’?fÏÙ$YìðZ‹—Sã)!Ú(f_zìÓô¢ŒB:resource0250, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒ ó’?fÏÙ$YìðZ‹—Sã)!Ú(f_zìÓТŒB:resource0251, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒ ó’?fÏÙ$YìðZ‹—Sã)!Ú(f_zìÓ@¢ŒB:resource0252, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒ ó’?fÏÙ$YìðZ‹—Sã)!Ú(f_zìÓÁ¢ŒB:resource0253, yZî0 F(Õ&—#P%Óùfýk0 —TXµŒ™?ÒaAp )ÚøsŒ ó’?fÏÙ$YìðZ‹—Sã)!Ú(f_zìÓÊ¢ŒB:resource0254, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇ´•ÖÍë`£Ïýø—-Ÿó¾?Xº,|9ùL§^QF’¶p-Z\¢:resource0255, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇ´•ÖÍë`£Ïýø—-Ÿó¾?Xº,|9ùL§^QF’¶-Z\¢:resource0256, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇ´•ÖÍë`£Ïýø—-Ÿó¾?Xº,|9ùL§^QF’¶æ-Z\¢:resource0257, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇ´•ÖÍë`£Ïýø—-Ÿó¾?Xº,|9ùL§^QF’¶]-Z\¢:resource0258, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇ´•ÖÍë`£Ïýø—-Ÿó¾?Xº,|9ùL§^QF’¶q-Z\¢:resource0259, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB'$ ¼Ò b+sŒéWþ¶9 ûXhÙö:resource0260, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB'$ ¼Ò b+sŒéWþ¶9 -XhÙö:resource0261, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB'$ ¼Ò b+sŒéWþ¶9 LXhÙö:resource0262, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB'$ ¼Ò b+sŒéWþ¶9 {XhÙö:resource0263, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB'$ ¼Ò b+sŒéWþ¶9 XhÙö:resource0264, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB'$ ¼Ò b+sŒéWþ¶9 ‡XhÙö:resource0265, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB'$ ¼Ò b+sŒéWþ¶9 ²XhÙö:resource0266, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB'$ ¼Ò b+sŒéWþ¶9 iXhÙö:resource0267, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB'$ ¼Ò b+sŒéWþ¶9 WXhÙö:resource0268, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB'$ ¼Ò b+sŒéWþ¶9 þXhÙö:resource0269, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB'$ ¼Ò b+sŒéWþ¶9 5ûXhÙö:resource0270, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB'$ ¼Ò b+sŒéWþ¶9 5-XhÙö:resource0271, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB'$ ¼Ò b+sŒéWþ¶9 5LXhÙö:resource0272, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB'$ ¼Ò b+sŒéWþ¶9 5{XhÙö:resource0273, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB'$ ¼Ò b+sŒéWþ¶9 5XhÙö:resource0274, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB'$ ¼Ò b+sŒéWþ¶9 5‡XhÙö:resource0275, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB'$ ¼Ò b+sŒéWþ¶9 5²XhÙö:resource0276, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB'$ ¼Ò b+sŒéWþ¶9 5iXhÙö:resource0277, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB'$ ¼Ò b+sŒéWþ¶9 5WXhÙö:resource0278, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB'$ ¼Ò b+sŒéWþ¶9 5þXhÙö:resource0279, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB¯¬Hªì—-Ÿó¾?X$@gí@ìo›ßF’¶p-Z\¢:resource0280, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB¯¬Hªì—-Ÿó¾?X$@gí@ìo›ßF’¶-Z\¢:resource0281, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB¯¬Hªì—-Ÿó¾?X$@gí@ìo›ßF’¶æ-Z\¢:resource0282, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB¯¬Hªì—-Ÿó¾?X$@gí@ìo›ßF’¶]-Z\¢:resource0283, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB¯¬Hªì—-Ÿó¾?X$@gí@ìo›ßF’¶q-Z\¢:resource0284, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB¯¬Hªì—-Ÿó¾?X$@gí@ìo›ßF’¶ï-Z\¢:resource0285, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB¯¬Hªì—-Ÿó¾?X$@gí@ìo›ßF’¶<-Z\¢:resource0286, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB¯¬Hªì—-Ÿó¾?X$@gí@ìo›ßF’¶k-Z\¢:resource0287, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB¯¬Hªì—-Ÿó¾?X$@gí@ìo›ßF’¶ž-Z\¢:resource0288, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB¯¬Hªì—-Ÿó¾?X$@gí@ìo›ßF’¶ò-Z\¢:resource0289, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB¯¬Hªì—-Ÿó¾?X$@gí@ìo›ßF’Ÿp-Z\¢:resource0290, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB¯¬Hªì—-Ÿó¾?X$@gí@ìo›ßF’Ÿ-Z\¢:resource0291, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB¯¬Hªì—-Ÿó¾?X$@gí@ìo›ßF’Ÿæ-Z\¢:resource0292, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB¯¬Hªì—-Ÿó¾?X$@gí@ìo›ßF’Ÿ]-Z\¢:resource0293, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB¯¬Hªì—-Ÿó¾?X$@gí@ìo›ßF’Ÿq-Z\¢:resource0294, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB¯¬Hªì—-Ÿó¾?X$@gí@ìo›ßF’Ÿï-Z\¢:resource0295, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇB¯¬Hªì—-Ÿó¾?X$@gí@ìo›ßF’Ÿ<-Z\¢:resource0296, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇ»¹^g«oïr„{n»¹>ÜQ:resource0297, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇ»¹^g«oïr„{n»Ø>ÜQ:resource0298, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇ»¹^g«oïr„{n»@>ÜQ:resource0299, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇ»¹^g«oïr„{n»u>ÜQ:resource0300, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇ»¹^g«oïr„{n»¶>ÜQ:resource0301, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇ»¹^g«oïr„{n»›>ÜQ:resource0302, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“žÌä“, Dé=%†^ò¥e]õ‰Q&0:resource0303, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“žÌä“, Dé=%†^ò¥e] ‰Q&0:resource0304, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“žÌä“, Dé=%†^ò¥e]¤‰Q&0:resource0305, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“žÌä“, Dé=%†^ò¥e] ‰Q&0:resource0306, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“žÌä“, Dé=%†^ò¥e]C‰Q&0:resource0307, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“žÌä“, Dé=%†^ò¥e]\‰Q&0:resource0308, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“žÌä“, Dé=%†^ò¥e]j‰Q&0:resource0309, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“žÌä“, Dé=%†^ò¥e]Ô‰Q&0:resource0310, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“žÌä“, Dé=%†^ò¥e]%‰Q&0:resource0311, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“žÌä“, Dé=%†^ò¥e]µ‰Q&0:resource0312, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“žÌä“, Dé=%†^ò¥e)õ‰Q&0:resource0313, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“žÌä“, Dé=%†^ò¥e) ‰Q&0:resource0314, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“žÌä“, Dé=%†^ò¥e)¤‰Q&0:resource0315, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“žÌä“, Dé=%†^ò¥e) ‰Q&0:resource0316, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“žÌä“, Dé=%†^ò¥e)C‰Q&0:resource0317, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“žÌä“, Dé=%†^ò¥e)\‰Q&0:resource0318, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“žÌä“, Dé=%†^ò¥e)j‰Q&0:resource0319, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“Ž… Rƒ’D¦O{ÓNžøbýã)uñ ¸¢*÷r߯%ÖqÎÝ(SBg6:resource0320, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“Ž… Rƒ’D¦O{ÓNžøbýã)uñ ¸¢*÷r߯%ÖqÎÝÅSBg6:resource0321, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“Ž… Rƒ’D¦O{ÓNžøbýã)uñ ¸¢*÷r߯%ÖqÎÝÁSBg6:resource0322, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“Ž… Rƒ’D¦O{ÓNžøbýã)uñ ¸¢*÷r߯%ÖqÎÝËSBg6:resource0323, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“Ž… Rƒ’D¦O{ÓNžøbýã)uñ ¸¢*÷r߯%ÖqÎÝ`SBg6:resource0324, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“×âÍ Fu Ï~‘^‰ù¨Ã5—Ú˜NiüJåYzìC碌B:resource0325, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“×âÍ Fu Ï~‘^‰ù¨Ã5—Ú˜NiüJåYzìCv¢ŒB:resource0326, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“×âÍ Fu Ï~‘^‰ù¨Ã5—Ú˜NiüJåYzìCk¢ŒB:resource0327, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“×âÍ Fu Ï~‘^‰ù¨Ã5—Ú˜NiüJåYzìCO¢ŒB:resource0328, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“×âÍ Fu Ï~‘^‰ù¨Ã5—Ú˜NiüJåYzìCô¢ŒB:resource0329, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“=…]õ ûéqO”¹h€òþ—áxNîÊäf¡^ÉôAYX'Ç`ž…ÑôºÀ5T:resource0330, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“=…]õ ûéqO”¹h€òþ—áxNîÊäf¡^ÉôAYX'Ç`ž…Ñô#ºÀ5T:resource0331, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“=…]õ ûéqO”¹h€òþ—áxNîÊäf¡^ÉôAYX'Ç`ž…Ñô2ºÀ5T:resource0332, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“=…]õ ûéqO”¹h€òþ—áxNîÊäf¡^ÉôAYX'Ç`ž…ÑôݺÀ5T:resource0333, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“=…]õ ûéqO”¹h€òþ—áxNîÊäf¡^ÉôAYX'Ç`ž…ÑôrºÀ5T:resource0334, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“äs-’D¦O{ÓNžøbýã)uñífœn×߯%ÖqÎÝ(SBg6:resource0335, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“äs-’D¦O{ÓNžøbýã)uñífœn×߯%ÖqÎÝÅSBg6:resource0336, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“äs-’D¦O{ÓNžøbýã)uñífœn×߯%ÖqÎÝÁSBg6:resource0337, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“äs-’D¦O{ÓNžøbýã)uñífœn×߯%ÖqÎÝËSBg6:resource0338, yZî0 F(Õ&—#P%Óùfý¯Œªœ=!åï†ÿÇK•¬_î“äs-’D¦O{ÓNžøbýã)uñífœn×߯%ÖqÎÝ`SBg6:resource0339, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 RÐEõ„Wh?´T†ü±>›ƒF’¶p-Z\¢:resource0340, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 RÐEõ„Wh?´T†ü±>›ƒF’¶-Z\¢:resource0341, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 RÐEõ„Wh?´T†ü±>›ƒF’¶æ-Z\¢:resource0342, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 RÐEõ„Wh?´T†ü±>›ƒF’¶]-Z\¢:resource0343, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 RÐEõ„Wh?´T†ü±>›ƒF’¶q-Z\¢:resource0344, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 RÐEõ„Wh?´T†ü±>›ƒF’¶ï-Z\¢:resource0345, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 RÐEõ„Wh?´T†ü±>›ƒF’¶<-Z\¢:resource0346, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 RÐEõ„Wh?´T†ü±>›ƒF’¶k-Z\¢:resource0347, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 RÐEõ„Wh?´T†ü±>›ƒF’¶ž-Z\¢:resource0348, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 RÐEõ„Wh?´T†ü±>›ƒF’¶ò-Z\¢:resource0349, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 RÐEõ„Wh?´T†ü±>›ƒF’Ÿp-Z\¢:resource0350, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 RÐEõ„Wh?´T†ü±>›ƒF’Ÿ-Z\¢:resource0351, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 RÐEõ„Wh?´T†ü±>›ƒF’Ÿæ-Z\¢:resource0352, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 RÐEõ„Wh?´T†ü±>›ƒF’Ÿ]-Z\¢:resource0353, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 RÐEõ„Wh?´T†ü±>›ƒF’Ÿq-Z\¢:resource0354, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 RÐEõ„Wh?´T†ü±>›ƒF’Ÿï-Z\¢:resource0355, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 RÐEõ„Wh?´T†ü±>›ƒF’Ÿ<-Z\¢:resource0356, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 RÐEõ„Wh?´T†ü±>›ƒF’Ÿk-Z\¢:resource0357, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 RÐEõ„Wh?´T†ü±>›ƒF’Ÿž-Z\¢:resource0358, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 RÐEõ„Wh?´T†ü±>›ƒF’Ÿò-Z\¢:resource0359, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 ªîo¥‹õñŸW)éXO¾^tz ]õ„ØÓ‡:resource0360, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 ªîo¥‹õñŸW)éXO¾^tz ]õäØÓ‡:resource0361, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 ªîo¥‹õñŸW)éXO¾^tz ]õ8ØÓ‡:resource0362, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 ªîo¥‹õñŸW)éXO¾^tz ]õØÓ‡:resource0363, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 ªîo¥‹õñŸW)éXO¾^tz ]õËØÓ‡:resource0364, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 ªîo¥‹õñŸW)éXO¾^tz ]õVØÓ‡:resource0365, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 ªîo¥‹õñŸW)éXO¾^tz ]õHØÓ‡:resource0366, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 ªîo¥‹õñŸW)éXO¾^tz ]õÉØÓ‡:resource0367, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 ªîo¥‹õñŸW)éXO¾^tz ]õ^ØÓ‡:resource0368, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 ªîo¥‹õñŸW)éXO¾^tz ]õtØÓ‡:resource0369, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 N‰oo‹õñŸW)éXO'tt!]õ„ØÓ‡:resource0370, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 N‰oo‹õñŸW)éXO'tt!]õäØÓ‡:resource0371, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 N‰oo‹õñŸW)éXO'tt!]õ8ØÓ‡:resource0372, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 N‰oo‹õñŸW)éXO'tt!]õØÓ‡:resource0373, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 N‰oo‹õñŸW)éXO'tt!]õËØÓ‡:resource0374, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 N‰oo‹õñŸW)éXO'tt!]õVØÓ‡:resource0375, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 N‰oo‹õñŸW)éXO'tt!]õHØÓ‡:resource0376, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 N‰oo‹õñŸW)éXO'tt!]õÉØÓ‡:resource0377, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 N‰oo‹õñŸW)éXO'tt!]õ^ØÓ‡:resource0378, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 N‰oo‹õñŸW)éXO'tt!]õtØÓ‡:resource0379, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 N‰oo‹õñŸW)éXO'tt!]õ´„ØÓ‡:resource0380, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 N‰oo‹õñŸW)éXO'tt!]õ´äØÓ‡:resource0381, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 N‰oo‹õñŸW)éXO'tt!]õ´8ØÓ‡:resource0382, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 N‰oo‹õñŸW)éXO'tt!]õ´ØÓ‡:resource0383, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 N‰oo‹õñŸW)éXO'tt!]õ´ËØÓ‡:resource0384, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 N‰oo‹õñŸW)éXO'tt!]õ´VØÓ‡:resource0385, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 N‰oo‹õñŸW)éXO'tt!]õ´HØÓ‡:resource0386, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 N‰oo‹õñŸW)éXO'tt!]õ´ÉØÓ‡:resource0387, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 N‰oo‹õñŸW)éXO'tt!]õ´^ØÓ‡:resource0388, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 N‰oo‹õñŸW)éXO'tt!]õ´tØÓ‡:resource0389, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 N‰oo‹õñŸW)éXO'tt!]õŽ„ØÓ‡:resource0390, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 N‰oo‹õñŸW)éXO'tt!]õŽäØÓ‡:resource0391, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 N‰oo‹õñŸW)éXO'tt!]õŽ8ØÓ‡:resource0392, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 N‰oo‹õñŸW)éXO'tt!]õŽØÓ‡:resource0393, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 N‰oo‹õñŸW)éXO'tt!]õŽËØÓ‡:resource0394, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 N‰oo‹õñŸW)éXO'tt!]õŽVØÓ‡:resource0395, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 N‰oo‹õñŸW)éXO'tt!]õŽHØÓ‡:resource0396, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 N‰oo‹õñŸW)éXO'tt!]õŽÉØÓ‡:resource0397, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 N‰oo‹õñŸW)éXO'tt!]õŽ^ØÓ‡:resource0398, yZî0 F(Õ&—#P%Óùfý· þàÅÙˆñÊÒ}蕯 N‰oo‹õñŸW)éXO'tt!]õŽtØÓ‡:resource0399, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦åV:g‰Ȩß¾ ½àžgd>¨.µŠ[~P‰.k×çþÒS™y:resource0400, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦åV:g‰Ȩß¾ ½àžgd>¨.µŠ[~P‰d®€Z‰Q&0:resource0401, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦åV: WïTIä2¾_-ðȤøõ,¡?>ÜQ:resource0402, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦åV: WïTIä2¾_-ðȤøõ,¡?l†|Q›ì†Ï›Z:resource0403, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦åV: WïTIä2¾_-ðȤøõ,?Wµ÷´°Ï:resource0404, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦åV: WïTIä2¾_-ðȤøõ,?WµXÇÏÙ”XhÙö:resource0405, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦åV: WïTIä2¾_-ð:ýä>àá.Ÿ:resource0406, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦åV: WïTIä2¾_-ð:ýä>Æ[ŸÜp>ÜQ:resource0407, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦åV: WïTI å¬_«o\øä:resource0408, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦åV: WïTIb¹\£G\øä:resource0409, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦åÝó õ#‡®t\O½à¯ÌE´:resource0410, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦åÝó õ#‡®t\O½àŽâ´R„)Rh:resource0411, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦åµ;,‹+Çò%ýÍbfo³ê“…v/és°Ã/ŸxÓ:resource0412, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å–Ђ7Ñ3üýpí«o”e¦6WÔ=[0Ïg$?!¬g º:resource0413, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å–Ђ7Ñ3üýpí«o”e¦6WW¦wº¼Ø†Ï›Z:resource0414, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å–Ђ7Ñ3üýpí«o”e¦6WW*[T†^©XhÙö:resource0415, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦åY;]c™~ô»ÖB P·ìõŒð<’Š+°Ý/ŸxÓ:resource0416, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦åY;]c™~ô»ÖB P·ìõŒð<’Š+°ÝI‰Ò¨Ãg º:resource0417, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦åY;]c™~ô»ÖB P·ìõŒð<’Š+°Ý±t@4vø‘í&øöüÕ:resource0418, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦åY;]c™~ô»ÖB P·ìõŒð<’Š+°Ý±”x¼Ùc—áñ\ ð•Ã{®¹Ö?{ÿÖטèª:resource0419, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦åY;]c™~ô»ÖB P·ìõŒð<’Š+°Ý±”x¼Ùc—áñ\ ð•Ã{2c1}’ev•ÐÀ:resource0420, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦åY;]c™~ô»ÖB P·ìõŒð<’Š+°Ý±”x¼Ùc—áñ\ ð•Ã{h 1[û·×˜èª:resource0421, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦åY;]c™~ô»ÖB P·ìõŒð<’Š+°Ý±”x¼Ùc—áñ\ ð•of?»¡fBh#/Û:resource0422, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦åY;]c™~ô»ÖB P·ìõŒð<’Š+°Ý±”x¼Ùc—áñ\ ð•ofaµÊr ÃF¥ÓÏ3X:resource0423, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦åY;]c™~ô»ÖB P·ìõŒð<’Š+°Ý±”x¼Ùc—áñ\ ð•ofy¹r1¼h#/Û:resource0424, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦åY;]c™~ô»ÖB P·ìõŒð<’Š+°Ý±”x¼Ñç'-Måuœ´Å3:resource0425, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦åY;]c™~ô»ÖB P·ìõŒð<’Š+°Ý±”x¼Ñç'-MÈ ‹`f¦¥»h>4÷A:resource0426, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦åY;]c™~ô»ÖB P·ìõŒð<’Š+°Ý±”x¼Ñç'-Mv Ê`H{?´Å3:resource0427, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦åÐ,º¦ÇŒ'¯pí«ðN˜¬8Ø M»ŒäÂ:resource0428, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦åÐ,º¦ÇŒ'¯pí«ðN˜¬8Ø MÒŒäÂ:resource0429, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦åÐ,º¦ÇŒ'¯pí«ðN˜¬8Ø MÇŒäÂ:resource0430, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦åÐ,º¦ÇŒ'¯pí«ðN˜¬8Ø MˆŒäÂ:resource0431, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦åÐ,º¦ÇŒ'¯pí«ðN˜¬8Ø M’ŒäÂ:resource0432, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦åÐ,º¦ÇŒ'¯pí«ðN˜¬8Ø MJŒäÂ:resource0433, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦åÐ,º¦ÇŒ'¯pí«ðN˜¬8Ø MŒäÂ:resource0434, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦åÐ,º¦ÇŒ'¯pí«ðN˜¬8Ø M³ŒäÂ:resource0435, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦åÐ,º¦ÇŒ'¯pí«ðN˜¬8Ø MŒäÂ:resource0436, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦åÐ,º¦ÇŒ'¯pí«ðN˜¬8Ø MdŒäÂ:resource0437, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aîjåþr„ƒW®zµWÓzÐ×J€:resource0438, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aîjåþr„ƒW¸+ñÝ^$ã·Ìg º:resource0439, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aîjåþr„ƒW X%Ý(í'Ð×J€:resource0440, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aî dþñø=XÝwò¼ƒ}wºƒØÓ‡:resource0441, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aî dþñø=XÝw¾®Ñ‘f«øöüÕ:resource0442, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aî dþñø=XÝwŸÒ·Ñô‹ðØÓ‡:resource0443, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aî³b⁠.¡t%ì¡vì†Ï›Z:resource0444, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aî³b⁠.¡ÔT (í¾ˆžø‰Q&0:resource0445, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aî³b⁠.¡´Ðw(©¼ý†Ï›Z:resource0446, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aî³ýì<…QOP¡t%ì¡vì†Ï›Z:resource0447, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aî³ýì<…QOP¡ÔT (í¾ˆžø‰Q&0:resource0448, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aî³ýì<…QOP¡´Ðw(©¼ý†Ï›Z:resource0449, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aî³ýì<…Q.W®zµWÓzÐ×J€:resource0450, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aî³ýì<…Q.W¸+ñÝ^$ã·Ìg º:resource0451, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aî³ýì<…Q.W X%Ý(í'Ð×J€:resource0452, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aîØ´dT!>ómR?wCt?öCg º:resource0453, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aîØ´dT!>ómR?,W©¼¨u5ÒS™y:resource0454, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aîØ´dT!>ómR?ä†^©Y·¬g º:resource0455, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aîØ´dTµióh×?wCt?öCg º:resource0456, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aîØ´dTµióh×?,W©¼¨u5ÒS™y:resource0457, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aîØ´dTµióh×?ä†^©Y·¬g º:resource0458, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aîØ´dTs¦WP=sÂP/ŸxÓ:resource0459, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aîØ´dTsi:*®T‹^‰XhÙö:resource0460, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aîØ´dTsá¡*q%Ã/ŸxÓ:resource0461, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aîØ´dTꡦw(^'·Mò^0MÌvIÅ:resource0462, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aîØ´dTꡦw(^±¨%ô‹b{ã)5€¯4:resource0463, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aîØ´dTꡦw(^Øžô—ÚÌvIÅ:resource0464, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aî”`À÷ñË µ?”~ S”XhÙö:resource0465, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aî”`À÷ñË æésÎw¼Ø†Ï›Z:resource0466, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aî”`À÷ñË )è®ÎÝ^òXhÙö:resource0467, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ a϶p µ?”~ S”XhÙö:resource0468, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ a϶p æésÎw¼Ø†Ï›Z:resource0469, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ a϶p )è®ÎÝ^òXhÙö:resource0470, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aÏGñ~¡¦ñQè!v:resource0471, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aÏGñÆåq%,—íÒÐ×J€:resource0472, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aÏGñ«/?qÎw}è!v:resource0473, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aî”ÌÀçW®zµWÓzÐ×J€:resource0474, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aî”ÌÀçW¸+ñÝ^$ã·Ìg º:resource0475, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aî”ÌÀçW X%Ý(í'Ð×J€:resource0476, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aî”ý‰8r„tréX%%}íËÃ%ZËÒS™y:resource0477, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aî”ý‰8r„tréX%%l$?žoc—áÌvIÅ:resource0478, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aî”ý‰8r„tréX%%‰¼ÑîÒS™y:resource0479, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aîo‰Cr„WW®zµWÓzÐ×J€:resource0480, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aîo‰Cr„WW¸+ñÝ^$ã·Ìg º:resource0481, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw/ aîo‰Cr„WW X%Ý(í'Ð×J€:resource0482, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw²_î“eìV-:resource0483, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw²_î“eìi 9å0‘‰'î}U“—ݍžÕÝáº_§:resource0484, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw²_î“eìi 9å0‘‰'î}U©b¼ˆ c>)yà#:resource0485, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw²_î“eìi 9å0‘‰'î}U-Öuñáº_§:resource0486, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw²_î“eìi ùŠ[0gt“‘ž*'íy*øöüÕ:resource0487, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw²_î“eìi ùŠ[0gt“Î7w—dnˆ -Z\¢:resource0488, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw²_î“eìi ùŠ[0gt“RÌߏøöüÕ:resource0489, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw²_î“eìi M¶+ÂwÜF¾¨Ñ“—ݍžÕÝáº_§:resource0490, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw²_î“eìi M¶+ÂwÜF¾¨Ñ©b¼ˆ c>)yà#:resource0491, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áw²_î“eìi M¶+ÂwÜF¾¨Ñ-Öuñáº_§:resource0492, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áwš¨`2¶EÆ <€XT ÜòXhÙö:resource0493, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áwš¨`2¶Eµâóæ ®ÐÙ$Yì=š‘ ØÓ‡:resource0494, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å1:Ñëû}Áwš¨`2¶Eµâóæ ®ÐÙ$YìÚo€bØÓ‡:resource0495, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å¥¢þë$N3ØÌ-¼ªýEþ}Ÿ×®®ÉW©š|Å*qÒS™y:resource0496, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å¥¢þë$N3ØÌ-¼ªýEþ}Ÿ×®®ÉW©š|Å*q‹ë“ž£Êþ{Ÿ´Å3:resource0497, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å¥¢þë$N3ØÌ-¼ªýEþ}Ÿ×®®ÉW©š|Å*q‹S«ˆ£jcW)yà#:resource0498, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å¥¢þë$N3ØÌ-¼ªýEþ}Ÿ×®®ÉW©š|ÅJ‰Q&0:resource0499, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å¥¢þë$N3ØÌ-¼ªýEþ}Ÿ×®®ÉW©š|ÅJúd·Öuó f Ę:resource0500, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å¥¢þë$N3ØÌ-¼ªýEþ}Ÿ×®®ÉW©š|ÅJQáãÖ£Ê «0Vœ:resource0501, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å¥¢þë$N3ØÌ-¼ªýEþ}Ÿ×®®ÝCøyƒMg º:resource0502, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å¥¢þë$N3ØÌ-¼ªýEþ}Ÿ×®®ÝCøyƒMž;b¼ˆ c>)yà#:resource0503, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å¥¢þë$N3ØÌ-¼ªýEþ}Ÿ×®®ÝCøyƒMžÂ-Öuñáº_§:resource0504, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å¥¢þë$N3ØÌ-¼ªýEþ}Ÿ×®®ÝCøy!†Ï›Z:resource0505, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å¥¢þë$N3ØÌ-¼ªýEþ}Ÿ×®®ÝCøy!·U‘í²ãN¹Êä«0Vœ:resource0506, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å¥¢þë$N3ØÌ-¼ªýEþ}Ÿ×®®ÝCøy!·Ï5—²ˆs-Z\¢:resource0507, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å¥ucý %¶ ¨ð:×dR1F¡÷´°Ï:resource0508, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å ­é´ÒüA d·'…ê“…v/és°Ã/ŸxÓ:resource0509, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å ­œ™¾òüwj³ÛÄ å÷àá.Ÿ:resource0510, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å ­œ™¾òüwj³ÛÄ å÷sió†¦w(^'·Mò^0MÌvIÅ:resource0511, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å ­œ™¾òüwj³ÛÄ å÷sió†¦w(^±¨%ô‹b{ã)5€¯4:resource0512, yZî0 F(Õ&—+ˆo.4¸¼Nã*¦å ­œ™¾òüwj³ÛÄ å÷sió†¦w(^Øžô—ÚÌvIÅ:resource0513, yZî0 Ý¿žp’µO˜²™bRG`\¬:resource0514, yZî0 Ý¿žp’µO˜²™bRˆNÉ‘fd©Ý9m :resource0515, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[Œw^J@X®:resource0516, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[Œw_J@X®:resource0517, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[Œw²J@X®:resource0518, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[Œw J@X®:resource0519, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[ŒwcJ@X®:resource0520, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[ŒwDJ@X®:resource0521, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[ŒwPJ@X®:resource0522, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[Œw…J@X®:resource0523, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[Œw=J@X®:resource0524, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[Œw¿J@X®:resource0525, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[Œ\^J@X®:resource0526, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[Œ\_J@X®:resource0527, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[Œ\²J@X®:resource0528, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[Œ\ J@X®:resource0529, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[Œ\cJ@X®:resource0530, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[Œ\DJ@X®:resource0531, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[Œ\PJ@X®:resource0532, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[Œ\…J@X®:resource0533, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[Œ\=J@X®:resource0534, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[Œ\¿J@X®:resource0535, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[Œß^J@X®:resource0536, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[Œß_J@X®:resource0537, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[Œß²J@X®:resource0538, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[Œß J@X®:resource0539, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[ŒßcJ@X®:resource0540, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[ŒßDJ@X®:resource0541, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[ŒßPJ@X®:resource0542, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[Œß…J@X®:resource0543, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[Œß=J@X®:resource0544, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[Œß¿J@X®:resource0545, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[Œñ^J@X®:resource0546, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[Œñ_J@X®:resource0547, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[Œñ²J@X®:resource0548, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[Œñ J@X®:resource0549, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[ŒñcJ@X®:resource0550, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[ŒñDJ@X®:resource0551, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[ŒñPJ@X®:resource0552, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[Œñ…J@X®:resource0553, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[Œñ=J@X®:resource0554, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[Œñ¿J@X®:resource0555, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[ŒÊ^J@X®:resource0556, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[ŒÊ_J@X®:resource0557, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[ŒÊ²J@X®:resource0558, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[ŒÊ J@X®:resource0559, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[ŒÊcJ@X®:resource0560, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[ŒÊDJ@X®:resource0561, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[ŒÊPJ@X®:resource0562, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[ŒÊ…J@X®:resource0563, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[ŒÊ=J@X®:resource0564, yZî0 ¼6"˜—OQìÆNBj¯ƒyÝkt[ŒÊ¿J@X®:resource0565, yZî0 ¼6"˜—¯Aÿ°Hù…àð:resource0566, yZî0 ¼6"˜—¯ÛdÔ4òKÎú1÷s:resource0567, yZî0 ¼6"˜—¯ÛdÔ4.Vî:resource0568, yZî0 ¼6"˜—¯Vl€nž¹Ò/¦6J9m :resource0569, yZî0 ¼6"˜—¯‡öBN‘V+Ä66;xŠW:resource0570, yZî0 ¼6"˜—¯•B*lŒ¬Õ6;xŠW:resource0571, yZî0 ¼6"˜—¯•B*lŒ¬“Ü[Œñ:resource0572, yZî0 ¼6"˜—ãí}jö9†ºV/¦ãµ9m :resource0573, yZî0 ¼6"˜—ãí}j¾ÙJ Ü+°rïå:resource0574, yZî0 ¼6"˜—ãí}ËCg…ª…¯ÅÕuxŠW:resource0575, yZî0 ¼6"˜—ãí}ËÄŒó¯àã©Ü[Œñ:resource0576, yZî0 ¼6"˜—ãí}ËÄŒó¯à,ÕÜ[Œñ:resource0577, yZî0 ¼6"˜—ãí}/BüH_:resource0578, yZî0 ¼¡¦§.˜²‘c¿ü÷Û¹U}¦Ù¥§ë²Ã¼n&p¾]:resource0579, yZî0 ¼¡¦‹WÏ\7i_vö{NN¹V/¿û–µHw^\”·žýH—õØz_C“p:resource0580}; public static function getResource(_arg1:DataLoader, _arg2:String):String{ var _local4:*; var _local3:String = Encoder.reverse(_arg2); if ((_local3 in resources)){ if ((((_arg2.length >= 4)) && ((_arg2.slice(-4).toLowerCase() == ".xml")))){ _local4 = new (ResourceEmbedding.resources[_local3]); _local4.uncompress(); _local4 = XML(_local4); _arg1.loadComplete(_local4); return (DONE); }; if ((((_arg2.length >= 4)) && ((_arg2.slice(-4).toLowerCase() == ".swf")))){ _local4 = new (ResourceEmbedding.resources[_local3]); _arg1.loadBytes(_local4); return (WAIT); }; _local4 = new (ResourceEmbedding.resources[_local3]); _arg1.loadComplete(_local4); return (DONE); //unresolved jump }; return (FAIL); } } }//package generated
Section 76
//ResourceEmbedding_resource0000 (generated.ResourceEmbedding_resource0000) package generated { import mx.core.*; public class ResourceEmbedding_resource0000 extends ByteArrayAsset { } }//package generated
Section 77
//ResourceEmbedding_resource0001 (generated.ResourceEmbedding_resource0001) package generated { import mx.core.*; public class ResourceEmbedding_resource0001 extends BitmapAsset { } }//package generated
Section 78
//ResourceEmbedding_resource0002 (generated.ResourceEmbedding_resource0002) package generated { import mx.core.*; public class ResourceEmbedding_resource0002 extends BitmapAsset { } }//package generated
Section 79
//ResourceEmbedding_resource0003 (generated.ResourceEmbedding_resource0003) package generated { import mx.core.*; public class ResourceEmbedding_resource0003 extends BitmapAsset { } }//package generated
Section 80
//ResourceEmbedding_resource0004 (generated.ResourceEmbedding_resource0004) package generated { import mx.core.*; public class ResourceEmbedding_resource0004 extends BitmapAsset { } }//package generated
Section 81
//ResourceEmbedding_resource0005 (generated.ResourceEmbedding_resource0005) package generated { import mx.core.*; public class ResourceEmbedding_resource0005 extends BitmapAsset { } }//package generated
Section 82
//ResourceEmbedding_resource0006 (generated.ResourceEmbedding_resource0006) package generated { import mx.core.*; public class ResourceEmbedding_resource0006 extends BitmapAsset { } }//package generated
Section 83
//ResourceEmbedding_resource0007 (generated.ResourceEmbedding_resource0007) package generated { import mx.core.*; public class ResourceEmbedding_resource0007 extends BitmapAsset { } }//package generated
Section 84
//ResourceEmbedding_resource0008 (generated.ResourceEmbedding_resource0008) package generated { import mx.core.*; public class ResourceEmbedding_resource0008 extends BitmapAsset { } }//package generated
Section 85
//ResourceEmbedding_resource0009 (generated.ResourceEmbedding_resource0009) package generated { import mx.core.*; public class ResourceEmbedding_resource0009 extends BitmapAsset { } }//package generated
Section 86
//ResourceEmbedding_resource0010 (generated.ResourceEmbedding_resource0010) package generated { import mx.core.*; public class ResourceEmbedding_resource0010 extends BitmapAsset { } }//package generated
Section 87
//ResourceEmbedding_resource0011 (generated.ResourceEmbedding_resource0011) package generated { import mx.core.*; public class ResourceEmbedding_resource0011 extends BitmapAsset { } }//package generated
Section 88
//ResourceEmbedding_resource0012 (generated.ResourceEmbedding_resource0012) package generated { import mx.core.*; public class ResourceEmbedding_resource0012 extends BitmapAsset { } }//package generated
Section 89
//ResourceEmbedding_resource0013 (generated.ResourceEmbedding_resource0013) package generated { import mx.core.*; public class ResourceEmbedding_resource0013 extends BitmapAsset { } }//package generated
Section 90
//ResourceEmbedding_resource0014 (generated.ResourceEmbedding_resource0014) package generated { import mx.core.*; public class ResourceEmbedding_resource0014 extends BitmapAsset { } }//package generated
Section 91
//ResourceEmbedding_resource0015 (generated.ResourceEmbedding_resource0015) package generated { import mx.core.*; public class ResourceEmbedding_resource0015 extends BitmapAsset { } }//package generated
Section 92
//ResourceEmbedding_resource0016 (generated.ResourceEmbedding_resource0016) package generated { import mx.core.*; public class ResourceEmbedding_resource0016 extends BitmapAsset { } }//package generated
Section 93
//ResourceEmbedding_resource0017 (generated.ResourceEmbedding_resource0017) package generated { import mx.core.*; public class ResourceEmbedding_resource0017 extends BitmapAsset { } }//package generated
Section 94
//ResourceEmbedding_resource0018 (generated.ResourceEmbedding_resource0018) package generated { import mx.core.*; public class ResourceEmbedding_resource0018 extends BitmapAsset { } }//package generated
Section 95
//ResourceEmbedding_resource0019 (generated.ResourceEmbedding_resource0019) package generated { import mx.core.*; public class ResourceEmbedding_resource0019 extends BitmapAsset { } }//package generated
Section 96
//ResourceEmbedding_resource0020 (generated.ResourceEmbedding_resource0020) package generated { import mx.core.*; public class ResourceEmbedding_resource0020 extends BitmapAsset { } }//package generated
Section 97
//ResourceEmbedding_resource0021 (generated.ResourceEmbedding_resource0021) package generated { import mx.core.*; public class ResourceEmbedding_resource0021 extends BitmapAsset { } }//package generated
Section 98
//ResourceEmbedding_resource0022 (generated.ResourceEmbedding_resource0022) package generated { import mx.core.*; public class ResourceEmbedding_resource0022 extends BitmapAsset { } }//package generated
Section 99
//ResourceEmbedding_resource0023 (generated.ResourceEmbedding_resource0023) package generated { import mx.core.*; public class ResourceEmbedding_resource0023 extends BitmapAsset { } }//package generated
Section 100
//ResourceEmbedding_resource0024 (generated.ResourceEmbedding_resource0024) package generated { import mx.core.*; public class ResourceEmbedding_resource0024 extends BitmapAsset { } }//package generated
Section 101
//ResourceEmbedding_resource0025 (generated.ResourceEmbedding_resource0025) package generated { import mx.core.*; public class ResourceEmbedding_resource0025 extends BitmapAsset { } }//package generated
Section 102
//ResourceEmbedding_resource0026 (generated.ResourceEmbedding_resource0026) package generated { import mx.core.*; public class ResourceEmbedding_resource0026 extends BitmapAsset { } }//package generated
Section 103
//ResourceEmbedding_resource0027 (generated.ResourceEmbedding_resource0027) package generated { import mx.core.*; public class ResourceEmbedding_resource0027 extends BitmapAsset { } }//package generated
Section 104
//ResourceEmbedding_resource0028 (generated.ResourceEmbedding_resource0028) package generated { import mx.core.*; public class ResourceEmbedding_resource0028 extends BitmapAsset { } }//package generated
Section 105
//ResourceEmbedding_resource0029 (generated.ResourceEmbedding_resource0029) package generated { import mx.core.*; public class ResourceEmbedding_resource0029 extends BitmapAsset { } }//package generated
Section 106
//ResourceEmbedding_resource0030 (generated.ResourceEmbedding_resource0030) package generated { import mx.core.*; public class ResourceEmbedding_resource0030 extends BitmapAsset { } }//package generated
Section 107
//ResourceEmbedding_resource0031 (generated.ResourceEmbedding_resource0031) package generated { import mx.core.*; public class ResourceEmbedding_resource0031 extends BitmapAsset { } }//package generated
Section 108
//ResourceEmbedding_resource0032 (generated.ResourceEmbedding_resource0032) package generated { import mx.core.*; public class ResourceEmbedding_resource0032 extends BitmapAsset { } }//package generated
Section 109
//ResourceEmbedding_resource0033 (generated.ResourceEmbedding_resource0033) package generated { import mx.core.*; public class ResourceEmbedding_resource0033 extends BitmapAsset { } }//package generated
Section 110
//ResourceEmbedding_resource0034 (generated.ResourceEmbedding_resource0034) package generated { import mx.core.*; public class ResourceEmbedding_resource0034 extends BitmapAsset { } }//package generated
Section 111
//ResourceEmbedding_resource0035 (generated.ResourceEmbedding_resource0035) package generated { import mx.core.*; public class ResourceEmbedding_resource0035 extends BitmapAsset { } }//package generated
Section 112
//ResourceEmbedding_resource0036 (generated.ResourceEmbedding_resource0036) package generated { import mx.core.*; public class ResourceEmbedding_resource0036 extends BitmapAsset { } }//package generated
Section 113
//ResourceEmbedding_resource0037 (generated.ResourceEmbedding_resource0037) package generated { import mx.core.*; public class ResourceEmbedding_resource0037 extends BitmapAsset { } }//package generated
Section 114
//ResourceEmbedding_resource0038 (generated.ResourceEmbedding_resource0038) package generated { import mx.core.*; public class ResourceEmbedding_resource0038 extends BitmapAsset { } }//package generated
Section 115
//ResourceEmbedding_resource0039 (generated.ResourceEmbedding_resource0039) package generated { import mx.core.*; public class ResourceEmbedding_resource0039 extends BitmapAsset { } }//package generated
Section 116
//ResourceEmbedding_resource0040 (generated.ResourceEmbedding_resource0040) package generated { import mx.core.*; public class ResourceEmbedding_resource0040 extends BitmapAsset { } }//package generated
Section 117
//ResourceEmbedding_resource0041 (generated.ResourceEmbedding_resource0041) package generated { import mx.core.*; public class ResourceEmbedding_resource0041 extends BitmapAsset { } }//package generated
Section 118
//ResourceEmbedding_resource0042 (generated.ResourceEmbedding_resource0042) package generated { import mx.core.*; public class ResourceEmbedding_resource0042 extends BitmapAsset { } }//package generated
Section 119
//ResourceEmbedding_resource0043 (generated.ResourceEmbedding_resource0043) package generated { import mx.core.*; public class ResourceEmbedding_resource0043 extends BitmapAsset { } }//package generated
Section 120
//ResourceEmbedding_resource0044 (generated.ResourceEmbedding_resource0044) package generated { import mx.core.*; public class ResourceEmbedding_resource0044 extends BitmapAsset { } }//package generated
Section 121
//ResourceEmbedding_resource0045 (generated.ResourceEmbedding_resource0045) package generated { import mx.core.*; public class ResourceEmbedding_resource0045 extends BitmapAsset { } }//package generated
Section 122
//ResourceEmbedding_resource0046 (generated.ResourceEmbedding_resource0046) package generated { import mx.core.*; public class ResourceEmbedding_resource0046 extends BitmapAsset { } }//package generated
Section 123
//ResourceEmbedding_resource0047 (generated.ResourceEmbedding_resource0047) package generated { import mx.core.*; public class ResourceEmbedding_resource0047 extends BitmapAsset { } }//package generated
Section 124
//ResourceEmbedding_resource0048 (generated.ResourceEmbedding_resource0048) package generated { import mx.core.*; public class ResourceEmbedding_resource0048 extends BitmapAsset { } }//package generated
Section 125
//ResourceEmbedding_resource0049 (generated.ResourceEmbedding_resource0049) package generated { import mx.core.*; public class ResourceEmbedding_resource0049 extends BitmapAsset { } }//package generated
Section 126
//ResourceEmbedding_resource0050 (generated.ResourceEmbedding_resource0050) package generated { import mx.core.*; public class ResourceEmbedding_resource0050 extends BitmapAsset { } }//package generated
Section 127
//ResourceEmbedding_resource0051 (generated.ResourceEmbedding_resource0051) package generated { import mx.core.*; public class ResourceEmbedding_resource0051 extends BitmapAsset { } }//package generated
Section 128
//ResourceEmbedding_resource0052 (generated.ResourceEmbedding_resource0052) package generated { import mx.core.*; public class ResourceEmbedding_resource0052 extends BitmapAsset { } }//package generated
Section 129
//ResourceEmbedding_resource0053 (generated.ResourceEmbedding_resource0053) package generated { import mx.core.*; public class ResourceEmbedding_resource0053 extends BitmapAsset { } }//package generated
Section 130
//ResourceEmbedding_resource0054 (generated.ResourceEmbedding_resource0054) package generated { import mx.core.*; public class ResourceEmbedding_resource0054 extends BitmapAsset { } }//package generated
Section 131
//ResourceEmbedding_resource0055 (generated.ResourceEmbedding_resource0055) package generated { import mx.core.*; public class ResourceEmbedding_resource0055 extends BitmapAsset { } }//package generated
Section 132
//ResourceEmbedding_resource0056 (generated.ResourceEmbedding_resource0056) package generated { import mx.core.*; public class ResourceEmbedding_resource0056 extends BitmapAsset { } }//package generated
Section 133
//ResourceEmbedding_resource0057 (generated.ResourceEmbedding_resource0057) package generated { import mx.core.*; public class ResourceEmbedding_resource0057 extends BitmapAsset { } }//package generated
Section 134
//ResourceEmbedding_resource0058 (generated.ResourceEmbedding_resource0058) package generated { import mx.core.*; public class ResourceEmbedding_resource0058 extends BitmapAsset { } }//package generated
Section 135
//ResourceEmbedding_resource0059 (generated.ResourceEmbedding_resource0059) package generated { import mx.core.*; public class ResourceEmbedding_resource0059 extends BitmapAsset { } }//package generated
Section 136
//ResourceEmbedding_resource0060 (generated.ResourceEmbedding_resource0060) package generated { import mx.core.*; public class ResourceEmbedding_resource0060 extends BitmapAsset { } }//package generated
Section 137
//ResourceEmbedding_resource0061 (generated.ResourceEmbedding_resource0061) package generated { import mx.core.*; public class ResourceEmbedding_resource0061 extends BitmapAsset { } }//package generated
Section 138
//ResourceEmbedding_resource0062 (generated.ResourceEmbedding_resource0062) package generated { import mx.core.*; public class ResourceEmbedding_resource0062 extends BitmapAsset { } }//package generated
Section 139
//ResourceEmbedding_resource0063 (generated.ResourceEmbedding_resource0063) package generated { import mx.core.*; public class ResourceEmbedding_resource0063 extends BitmapAsset { } }//package generated
Section 140
//ResourceEmbedding_resource0064 (generated.ResourceEmbedding_resource0064) package generated { import mx.core.*; public class ResourceEmbedding_resource0064 extends BitmapAsset { } }//package generated
Section 141
//ResourceEmbedding_resource0065 (generated.ResourceEmbedding_resource0065) package generated { import mx.core.*; public class ResourceEmbedding_resource0065 extends BitmapAsset { } }//package generated
Section 142
//ResourceEmbedding_resource0066 (generated.ResourceEmbedding_resource0066) package generated { import mx.core.*; public class ResourceEmbedding_resource0066 extends BitmapAsset { } }//package generated
Section 143
//ResourceEmbedding_resource0067 (generated.ResourceEmbedding_resource0067) package generated { import mx.core.*; public class ResourceEmbedding_resource0067 extends BitmapAsset { } }//package generated
Section 144
//ResourceEmbedding_resource0068 (generated.ResourceEmbedding_resource0068) package generated { import mx.core.*; public class ResourceEmbedding_resource0068 extends BitmapAsset { } }//package generated
Section 145
//ResourceEmbedding_resource0069 (generated.ResourceEmbedding_resource0069) package generated { import mx.core.*; public class ResourceEmbedding_resource0069 extends BitmapAsset { } }//package generated
Section 146
//ResourceEmbedding_resource0070 (generated.ResourceEmbedding_resource0070) package generated { import mx.core.*; public class ResourceEmbedding_resource0070 extends BitmapAsset { } }//package generated
Section 147
//ResourceEmbedding_resource0071 (generated.ResourceEmbedding_resource0071) package generated { import mx.core.*; public class ResourceEmbedding_resource0071 extends BitmapAsset { } }//package generated
Section 148
//ResourceEmbedding_resource0072 (generated.ResourceEmbedding_resource0072) package generated { import mx.core.*; public class ResourceEmbedding_resource0072 extends BitmapAsset { } }//package generated
Section 149
//ResourceEmbedding_resource0073 (generated.ResourceEmbedding_resource0073) package generated { import mx.core.*; public class ResourceEmbedding_resource0073 extends BitmapAsset { } }//package generated
Section 150
//ResourceEmbedding_resource0074 (generated.ResourceEmbedding_resource0074) package generated { import mx.core.*; public class ResourceEmbedding_resource0074 extends BitmapAsset { } }//package generated
Section 151
//ResourceEmbedding_resource0075 (generated.ResourceEmbedding_resource0075) package generated { import mx.core.*; public class ResourceEmbedding_resource0075 extends BitmapAsset { } }//package generated
Section 152
//ResourceEmbedding_resource0076 (generated.ResourceEmbedding_resource0076) package generated { import mx.core.*; public class ResourceEmbedding_resource0076 extends BitmapAsset { } }//package generated
Section 153
//ResourceEmbedding_resource0077 (generated.ResourceEmbedding_resource0077) package generated { import mx.core.*; public class ResourceEmbedding_resource0077 extends BitmapAsset { } }//package generated
Section 154
//ResourceEmbedding_resource0078 (generated.ResourceEmbedding_resource0078) package generated { import mx.core.*; public class ResourceEmbedding_resource0078 extends BitmapAsset { } }//package generated
Section 155
//ResourceEmbedding_resource0079 (generated.ResourceEmbedding_resource0079) package generated { import mx.core.*; public class ResourceEmbedding_resource0079 extends BitmapAsset { } }//package generated
Section 156
//ResourceEmbedding_resource0080 (generated.ResourceEmbedding_resource0080) package generated { import mx.core.*; public class ResourceEmbedding_resource0080 extends BitmapAsset { } }//package generated
Section 157
//ResourceEmbedding_resource0081 (generated.ResourceEmbedding_resource0081) package generated { import mx.core.*; public class ResourceEmbedding_resource0081 extends BitmapAsset { } }//package generated
Section 158
//ResourceEmbedding_resource0082 (generated.ResourceEmbedding_resource0082) package generated { import mx.core.*; public class ResourceEmbedding_resource0082 extends BitmapAsset { } }//package generated
Section 159
//ResourceEmbedding_resource0083 (generated.ResourceEmbedding_resource0083) package generated { import mx.core.*; public class ResourceEmbedding_resource0083 extends BitmapAsset { } }//package generated
Section 160
//ResourceEmbedding_resource0084 (generated.ResourceEmbedding_resource0084) package generated { import mx.core.*; public class ResourceEmbedding_resource0084 extends BitmapAsset { } }//package generated
Section 161
//ResourceEmbedding_resource0085 (generated.ResourceEmbedding_resource0085) package generated { import mx.core.*; public class ResourceEmbedding_resource0085 extends BitmapAsset { } }//package generated
Section 162
//ResourceEmbedding_resource0086 (generated.ResourceEmbedding_resource0086) package generated { import mx.core.*; public class ResourceEmbedding_resource0086 extends BitmapAsset { } }//package generated
Section 163
//ResourceEmbedding_resource0087 (generated.ResourceEmbedding_resource0087) package generated { import mx.core.*; public class ResourceEmbedding_resource0087 extends BitmapAsset { } }//package generated
Section 164
//ResourceEmbedding_resource0088 (generated.ResourceEmbedding_resource0088) package generated { import mx.core.*; public class ResourceEmbedding_resource0088 extends BitmapAsset { } }//package generated
Section 165
//ResourceEmbedding_resource0089 (generated.ResourceEmbedding_resource0089) package generated { import mx.core.*; public class ResourceEmbedding_resource0089 extends BitmapAsset { } }//package generated
Section 166
//ResourceEmbedding_resource0090 (generated.ResourceEmbedding_resource0090) package generated { import mx.core.*; public class ResourceEmbedding_resource0090 extends BitmapAsset { } }//package generated
Section 167
//ResourceEmbedding_resource0091 (generated.ResourceEmbedding_resource0091) package generated { import mx.core.*; public class ResourceEmbedding_resource0091 extends BitmapAsset { } }//package generated
Section 168
//ResourceEmbedding_resource0092 (generated.ResourceEmbedding_resource0092) package generated { import mx.core.*; public class ResourceEmbedding_resource0092 extends BitmapAsset { } }//package generated
Section 169
//ResourceEmbedding_resource0093 (generated.ResourceEmbedding_resource0093) package generated { import mx.core.*; public class ResourceEmbedding_resource0093 extends BitmapAsset { } }//package generated
Section 170
//ResourceEmbedding_resource0094 (generated.ResourceEmbedding_resource0094) package generated { import mx.core.*; public class ResourceEmbedding_resource0094 extends BitmapAsset { } }//package generated
Section 171
//ResourceEmbedding_resource0095 (generated.ResourceEmbedding_resource0095) package generated { import mx.core.*; public class ResourceEmbedding_resource0095 extends BitmapAsset { } }//package generated
Section 172
//ResourceEmbedding_resource0096 (generated.ResourceEmbedding_resource0096) package generated { import mx.core.*; public class ResourceEmbedding_resource0096 extends BitmapAsset { } }//package generated
Section 173
//ResourceEmbedding_resource0097 (generated.ResourceEmbedding_resource0097) package generated { import mx.core.*; public class ResourceEmbedding_resource0097 extends BitmapAsset { } }//package generated
Section 174
//ResourceEmbedding_resource0098 (generated.ResourceEmbedding_resource0098) package generated { import mx.core.*; public class ResourceEmbedding_resource0098 extends BitmapAsset { } }//package generated
Section 175
//ResourceEmbedding_resource0099 (generated.ResourceEmbedding_resource0099) package generated { import mx.core.*; public class ResourceEmbedding_resource0099 extends BitmapAsset { } }//package generated
Section 176
//ResourceEmbedding_resource0100 (generated.ResourceEmbedding_resource0100) package generated { import mx.core.*; public class ResourceEmbedding_resource0100 extends BitmapAsset { } }//package generated
Section 177
//ResourceEmbedding_resource0101 (generated.ResourceEmbedding_resource0101) package generated { import mx.core.*; public class ResourceEmbedding_resource0101 extends BitmapAsset { } }//package generated
Section 178
//ResourceEmbedding_resource0102 (generated.ResourceEmbedding_resource0102) package generated { import mx.core.*; public class ResourceEmbedding_resource0102 extends BitmapAsset { } }//package generated
Section 179
//ResourceEmbedding_resource0103 (generated.ResourceEmbedding_resource0103) package generated { import mx.core.*; public class ResourceEmbedding_resource0103 extends BitmapAsset { } }//package generated
Section 180
//ResourceEmbedding_resource0104 (generated.ResourceEmbedding_resource0104) package generated { import mx.core.*; public class ResourceEmbedding_resource0104 extends BitmapAsset { } }//package generated
Section 181
//ResourceEmbedding_resource0105 (generated.ResourceEmbedding_resource0105) package generated { import mx.core.*; public class ResourceEmbedding_resource0105 extends BitmapAsset { } }//package generated
Section 182
//ResourceEmbedding_resource0106 (generated.ResourceEmbedding_resource0106) package generated { import mx.core.*; public class ResourceEmbedding_resource0106 extends BitmapAsset { } }//package generated
Section 183
//ResourceEmbedding_resource0107 (generated.ResourceEmbedding_resource0107) package generated { import mx.core.*; public class ResourceEmbedding_resource0107 extends BitmapAsset { } }//package generated
Section 184
//ResourceEmbedding_resource0108 (generated.ResourceEmbedding_resource0108) package generated { import mx.core.*; public class ResourceEmbedding_resource0108 extends BitmapAsset { } }//package generated
Section 185
//ResourceEmbedding_resource0109 (generated.ResourceEmbedding_resource0109) package generated { import mx.core.*; public class ResourceEmbedding_resource0109 extends BitmapAsset { } }//package generated
Section 186
//ResourceEmbedding_resource0110 (generated.ResourceEmbedding_resource0110) package generated { import mx.core.*; public class ResourceEmbedding_resource0110 extends BitmapAsset { } }//package generated
Section 187
//ResourceEmbedding_resource0111 (generated.ResourceEmbedding_resource0111) package generated { import mx.core.*; public class ResourceEmbedding_resource0111 extends BitmapAsset { } }//package generated
Section 188
//ResourceEmbedding_resource0112 (generated.ResourceEmbedding_resource0112) package generated { import mx.core.*; public class ResourceEmbedding_resource0112 extends BitmapAsset { } }//package generated
Section 189
//ResourceEmbedding_resource0113 (generated.ResourceEmbedding_resource0113) package generated { import mx.core.*; public class ResourceEmbedding_resource0113 extends BitmapAsset { } }//package generated
Section 190
//ResourceEmbedding_resource0114 (generated.ResourceEmbedding_resource0114) package generated { import mx.core.*; public class ResourceEmbedding_resource0114 extends BitmapAsset { } }//package generated
Section 191
//ResourceEmbedding_resource0115 (generated.ResourceEmbedding_resource0115) package generated { import mx.core.*; public class ResourceEmbedding_resource0115 extends BitmapAsset { } }//package generated
Section 192
//ResourceEmbedding_resource0116 (generated.ResourceEmbedding_resource0116) package generated { import mx.core.*; public class ResourceEmbedding_resource0116 extends BitmapAsset { } }//package generated
Section 193
//ResourceEmbedding_resource0117 (generated.ResourceEmbedding_resource0117) package generated { import mx.core.*; public class ResourceEmbedding_resource0117 extends BitmapAsset { } }//package generated
Section 194
//ResourceEmbedding_resource0118 (generated.ResourceEmbedding_resource0118) package generated { import mx.core.*; public class ResourceEmbedding_resource0118 extends BitmapAsset { } }//package generated
Section 195
//ResourceEmbedding_resource0119 (generated.ResourceEmbedding_resource0119) package generated { import mx.core.*; public class ResourceEmbedding_resource0119 extends BitmapAsset { } }//package generated
Section 196
//ResourceEmbedding_resource0120 (generated.ResourceEmbedding_resource0120) package generated { import mx.core.*; public class ResourceEmbedding_resource0120 extends BitmapAsset { } }//package generated
Section 197
//ResourceEmbedding_resource0121 (generated.ResourceEmbedding_resource0121) package generated { import mx.core.*; public class ResourceEmbedding_resource0121 extends BitmapAsset { } }//package generated
Section 198
//ResourceEmbedding_resource0122 (generated.ResourceEmbedding_resource0122) package generated { import mx.core.*; public class ResourceEmbedding_resource0122 extends BitmapAsset { } }//package generated
Section 199
//ResourceEmbedding_resource0123 (generated.ResourceEmbedding_resource0123) package generated { import mx.core.*; public class ResourceEmbedding_resource0123 extends BitmapAsset { } }//package generated
Section 200
//ResourceEmbedding_resource0124 (generated.ResourceEmbedding_resource0124) package generated { import mx.core.*; public class ResourceEmbedding_resource0124 extends BitmapAsset { } }//package generated
Section 201
//ResourceEmbedding_resource0125 (generated.ResourceEmbedding_resource0125) package generated { import mx.core.*; public class ResourceEmbedding_resource0125 extends BitmapAsset { } }//package generated
Section 202
//ResourceEmbedding_resource0126 (generated.ResourceEmbedding_resource0126) package generated { import mx.core.*; public class ResourceEmbedding_resource0126 extends BitmapAsset { } }//package generated
Section 203
//ResourceEmbedding_resource0127 (generated.ResourceEmbedding_resource0127) package generated { import mx.core.*; public class ResourceEmbedding_resource0127 extends BitmapAsset { } }//package generated
Section 204
//ResourceEmbedding_resource0128 (generated.ResourceEmbedding_resource0128) package generated { import mx.core.*; public class ResourceEmbedding_resource0128 extends BitmapAsset { } }//package generated
Section 205
//ResourceEmbedding_resource0129 (generated.ResourceEmbedding_resource0129) package generated { import mx.core.*; public class ResourceEmbedding_resource0129 extends BitmapAsset { } }//package generated
Section 206
//ResourceEmbedding_resource0130 (generated.ResourceEmbedding_resource0130) package generated { import mx.core.*; public class ResourceEmbedding_resource0130 extends BitmapAsset { } }//package generated
Section 207
//ResourceEmbedding_resource0131 (generated.ResourceEmbedding_resource0131) package generated { import mx.core.*; public class ResourceEmbedding_resource0131 extends BitmapAsset { } }//package generated
Section 208
//ResourceEmbedding_resource0132 (generated.ResourceEmbedding_resource0132) package generated { import mx.core.*; public class ResourceEmbedding_resource0132 extends BitmapAsset { } }//package generated
Section 209
//ResourceEmbedding_resource0133 (generated.ResourceEmbedding_resource0133) package generated { import mx.core.*; public class ResourceEmbedding_resource0133 extends BitmapAsset { } }//package generated
Section 210
//ResourceEmbedding_resource0134 (generated.ResourceEmbedding_resource0134) package generated { import mx.core.*; public class ResourceEmbedding_resource0134 extends BitmapAsset { } }//package generated
Section 211
//ResourceEmbedding_resource0135 (generated.ResourceEmbedding_resource0135) package generated { import mx.core.*; public class ResourceEmbedding_resource0135 extends BitmapAsset { } }//package generated
Section 212
//ResourceEmbedding_resource0136 (generated.ResourceEmbedding_resource0136) package generated { import mx.core.*; public class ResourceEmbedding_resource0136 extends BitmapAsset { } }//package generated
Section 213
//ResourceEmbedding_resource0137 (generated.ResourceEmbedding_resource0137) package generated { import mx.core.*; public class ResourceEmbedding_resource0137 extends BitmapAsset { } }//package generated
Section 214
//ResourceEmbedding_resource0138 (generated.ResourceEmbedding_resource0138) package generated { import mx.core.*; public class ResourceEmbedding_resource0138 extends BitmapAsset { } }//package generated
Section 215
//ResourceEmbedding_resource0139 (generated.ResourceEmbedding_resource0139) package generated { import mx.core.*; public class ResourceEmbedding_resource0139 extends BitmapAsset { } }//package generated
Section 216
//ResourceEmbedding_resource0140 (generated.ResourceEmbedding_resource0140) package generated { import mx.core.*; public class ResourceEmbedding_resource0140 extends BitmapAsset { } }//package generated
Section 217
//ResourceEmbedding_resource0141 (generated.ResourceEmbedding_resource0141) package generated { import mx.core.*; public class ResourceEmbedding_resource0141 extends BitmapAsset { } }//package generated
Section 218
//ResourceEmbedding_resource0142 (generated.ResourceEmbedding_resource0142) package generated { import mx.core.*; public class ResourceEmbedding_resource0142 extends BitmapAsset { } }//package generated
Section 219
//ResourceEmbedding_resource0143 (generated.ResourceEmbedding_resource0143) package generated { import mx.core.*; public class ResourceEmbedding_resource0143 extends BitmapAsset { } }//package generated
Section 220
//ResourceEmbedding_resource0144 (generated.ResourceEmbedding_resource0144) package generated { import mx.core.*; public class ResourceEmbedding_resource0144 extends BitmapAsset { } }//package generated
Section 221
//ResourceEmbedding_resource0145 (generated.ResourceEmbedding_resource0145) package generated { import mx.core.*; public class ResourceEmbedding_resource0145 extends BitmapAsset { } }//package generated
Section 222
//ResourceEmbedding_resource0146 (generated.ResourceEmbedding_resource0146) package generated { import mx.core.*; public class ResourceEmbedding_resource0146 extends BitmapAsset { } }//package generated
Section 223
//ResourceEmbedding_resource0147 (generated.ResourceEmbedding_resource0147) package generated { import mx.core.*; public class ResourceEmbedding_resource0147 extends BitmapAsset { } }//package generated
Section 224
//ResourceEmbedding_resource0148 (generated.ResourceEmbedding_resource0148) package generated { import mx.core.*; public class ResourceEmbedding_resource0148 extends BitmapAsset { } }//package generated
Section 225
//ResourceEmbedding_resource0149 (generated.ResourceEmbedding_resource0149) package generated { import mx.core.*; public class ResourceEmbedding_resource0149 extends BitmapAsset { } }//package generated
Section 226
//ResourceEmbedding_resource0150 (generated.ResourceEmbedding_resource0150) package generated { import mx.core.*; public class ResourceEmbedding_resource0150 extends BitmapAsset { } }//package generated
Section 227
//ResourceEmbedding_resource0151 (generated.ResourceEmbedding_resource0151) package generated { import mx.core.*; public class ResourceEmbedding_resource0151 extends BitmapAsset { } }//package generated
Section 228
//ResourceEmbedding_resource0152 (generated.ResourceEmbedding_resource0152) package generated { import mx.core.*; public class ResourceEmbedding_resource0152 extends BitmapAsset { } }//package generated
Section 229
//ResourceEmbedding_resource0153 (generated.ResourceEmbedding_resource0153) package generated { import mx.core.*; public class ResourceEmbedding_resource0153 extends BitmapAsset { } }//package generated
Section 230
//ResourceEmbedding_resource0154 (generated.ResourceEmbedding_resource0154) package generated { import mx.core.*; public class ResourceEmbedding_resource0154 extends BitmapAsset { } }//package generated
Section 231
//ResourceEmbedding_resource0155 (generated.ResourceEmbedding_resource0155) package generated { import mx.core.*; public class ResourceEmbedding_resource0155 extends BitmapAsset { } }//package generated
Section 232
//ResourceEmbedding_resource0156 (generated.ResourceEmbedding_resource0156) package generated { import mx.core.*; public class ResourceEmbedding_resource0156 extends BitmapAsset { } }//package generated
Section 233
//ResourceEmbedding_resource0157 (generated.ResourceEmbedding_resource0157) package generated { import mx.core.*; public class ResourceEmbedding_resource0157 extends BitmapAsset { } }//package generated
Section 234
//ResourceEmbedding_resource0158 (generated.ResourceEmbedding_resource0158) package generated { import mx.core.*; public class ResourceEmbedding_resource0158 extends BitmapAsset { } }//package generated
Section 235
//ResourceEmbedding_resource0159 (generated.ResourceEmbedding_resource0159) package generated { import mx.core.*; public class ResourceEmbedding_resource0159 extends BitmapAsset { } }//package generated
Section 236
//ResourceEmbedding_resource0160 (generated.ResourceEmbedding_resource0160) package generated { import mx.core.*; public class ResourceEmbedding_resource0160 extends BitmapAsset { } }//package generated
Section 237
//ResourceEmbedding_resource0161 (generated.ResourceEmbedding_resource0161) package generated { import mx.core.*; public class ResourceEmbedding_resource0161 extends BitmapAsset { } }//package generated
Section 238
//ResourceEmbedding_resource0162 (generated.ResourceEmbedding_resource0162) package generated { import mx.core.*; public class ResourceEmbedding_resource0162 extends BitmapAsset { } }//package generated
Section 239
//ResourceEmbedding_resource0163 (generated.ResourceEmbedding_resource0163) package generated { import mx.core.*; public class ResourceEmbedding_resource0163 extends BitmapAsset { } }//package generated
Section 240
//ResourceEmbedding_resource0164 (generated.ResourceEmbedding_resource0164) package generated { import mx.core.*; public class ResourceEmbedding_resource0164 extends BitmapAsset { } }//package generated
Section 241
//ResourceEmbedding_resource0165 (generated.ResourceEmbedding_resource0165) package generated { import mx.core.*; public class ResourceEmbedding_resource0165 extends BitmapAsset { } }//package generated
Section 242
//ResourceEmbedding_resource0166 (generated.ResourceEmbedding_resource0166) package generated { import mx.core.*; public class ResourceEmbedding_resource0166 extends BitmapAsset { } }//package generated
Section 243
//ResourceEmbedding_resource0167 (generated.ResourceEmbedding_resource0167) package generated { import mx.core.*; public class ResourceEmbedding_resource0167 extends BitmapAsset { } }//package generated
Section 244
//ResourceEmbedding_resource0168 (generated.ResourceEmbedding_resource0168) package generated { import mx.core.*; public class ResourceEmbedding_resource0168 extends BitmapAsset { } }//package generated
Section 245
//ResourceEmbedding_resource0169 (generated.ResourceEmbedding_resource0169) package generated { import mx.core.*; public class ResourceEmbedding_resource0169 extends BitmapAsset { } }//package generated
Section 246
//ResourceEmbedding_resource0170 (generated.ResourceEmbedding_resource0170) package generated { import mx.core.*; public class ResourceEmbedding_resource0170 extends BitmapAsset { } }//package generated
Section 247
//ResourceEmbedding_resource0171 (generated.ResourceEmbedding_resource0171) package generated { import mx.core.*; public class ResourceEmbedding_resource0171 extends BitmapAsset { } }//package generated
Section 248
//ResourceEmbedding_resource0172 (generated.ResourceEmbedding_resource0172) package generated { import mx.core.*; public class ResourceEmbedding_resource0172 extends BitmapAsset { } }//package generated
Section 249
//ResourceEmbedding_resource0173 (generated.ResourceEmbedding_resource0173) package generated { import mx.core.*; public class ResourceEmbedding_resource0173 extends BitmapAsset { } }//package generated
Section 250
//ResourceEmbedding_resource0174 (generated.ResourceEmbedding_resource0174) package generated { import mx.core.*; public class ResourceEmbedding_resource0174 extends BitmapAsset { } }//package generated
Section 251
//ResourceEmbedding_resource0175 (generated.ResourceEmbedding_resource0175) package generated { import mx.core.*; public class ResourceEmbedding_resource0175 extends BitmapAsset { } }//package generated
Section 252
//ResourceEmbedding_resource0176 (generated.ResourceEmbedding_resource0176) package generated { import mx.core.*; public class ResourceEmbedding_resource0176 extends BitmapAsset { } }//package generated
Section 253
//ResourceEmbedding_resource0177 (generated.ResourceEmbedding_resource0177) package generated { import mx.core.*; public class ResourceEmbedding_resource0177 extends BitmapAsset { } }//package generated
Section 254
//ResourceEmbedding_resource0178 (generated.ResourceEmbedding_resource0178) package generated { import mx.core.*; public class ResourceEmbedding_resource0178 extends BitmapAsset { } }//package generated
Section 255
//ResourceEmbedding_resource0179 (generated.ResourceEmbedding_resource0179) package generated { import mx.core.*; public class ResourceEmbedding_resource0179 extends BitmapAsset { } }//package generated
Section 256
//ResourceEmbedding_resource0180 (generated.ResourceEmbedding_resource0180) package generated { import mx.core.*; public class ResourceEmbedding_resource0180 extends BitmapAsset { } }//package generated
Section 257
//ResourceEmbedding_resource0181 (generated.ResourceEmbedding_resource0181) package generated { import mx.core.*; public class ResourceEmbedding_resource0181 extends BitmapAsset { } }//package generated
Section 258
//ResourceEmbedding_resource0182 (generated.ResourceEmbedding_resource0182) package generated { import mx.core.*; public class ResourceEmbedding_resource0182 extends BitmapAsset { } }//package generated
Section 259
//ResourceEmbedding_resource0183 (generated.ResourceEmbedding_resource0183) package generated { import mx.core.*; public class ResourceEmbedding_resource0183 extends BitmapAsset { } }//package generated
Section 260
//ResourceEmbedding_resource0184 (generated.ResourceEmbedding_resource0184) package generated { import mx.core.*; public class ResourceEmbedding_resource0184 extends BitmapAsset { } }//package generated
Section 261
//ResourceEmbedding_resource0185 (generated.ResourceEmbedding_resource0185) package generated { import mx.core.*; public class ResourceEmbedding_resource0185 extends BitmapAsset { } }//package generated
Section 262
//ResourceEmbedding_resource0186 (generated.ResourceEmbedding_resource0186) package generated { import mx.core.*; public class ResourceEmbedding_resource0186 extends BitmapAsset { } }//package generated
Section 263
//ResourceEmbedding_resource0187 (generated.ResourceEmbedding_resource0187) package generated { import mx.core.*; public class ResourceEmbedding_resource0187 extends BitmapAsset { } }//package generated
Section 264
//ResourceEmbedding_resource0188 (generated.ResourceEmbedding_resource0188) package generated { import mx.core.*; public class ResourceEmbedding_resource0188 extends BitmapAsset { } }//package generated
Section 265
//ResourceEmbedding_resource0189 (generated.ResourceEmbedding_resource0189) package generated { import mx.core.*; public class ResourceEmbedding_resource0189 extends BitmapAsset { } }//package generated
Section 266
//ResourceEmbedding_resource0190 (generated.ResourceEmbedding_resource0190) package generated { import mx.core.*; public class ResourceEmbedding_resource0190 extends BitmapAsset { } }//package generated
Section 267
//ResourceEmbedding_resource0191 (generated.ResourceEmbedding_resource0191) package generated { import mx.core.*; public class ResourceEmbedding_resource0191 extends BitmapAsset { } }//package generated
Section 268
//ResourceEmbedding_resource0192 (generated.ResourceEmbedding_resource0192) package generated { import mx.core.*; public class ResourceEmbedding_resource0192 extends BitmapAsset { } }//package generated
Section 269
//ResourceEmbedding_resource0193 (generated.ResourceEmbedding_resource0193) package generated { import mx.core.*; public class ResourceEmbedding_resource0193 extends BitmapAsset { } }//package generated
Section 270
//ResourceEmbedding_resource0194 (generated.ResourceEmbedding_resource0194) package generated { import mx.core.*; public class ResourceEmbedding_resource0194 extends BitmapAsset { } }//package generated
Section 271
//ResourceEmbedding_resource0195 (generated.ResourceEmbedding_resource0195) package generated { import mx.core.*; public class ResourceEmbedding_resource0195 extends BitmapAsset { } }//package generated
Section 272
//ResourceEmbedding_resource0196 (generated.ResourceEmbedding_resource0196) package generated { import mx.core.*; public class ResourceEmbedding_resource0196 extends BitmapAsset { } }//package generated
Section 273
//ResourceEmbedding_resource0197 (generated.ResourceEmbedding_resource0197) package generated { import mx.core.*; public class ResourceEmbedding_resource0197 extends BitmapAsset { } }//package generated
Section 274
//ResourceEmbedding_resource0198 (generated.ResourceEmbedding_resource0198) package generated { import mx.core.*; public class ResourceEmbedding_resource0198 extends BitmapAsset { } }//package generated
Section 275
//ResourceEmbedding_resource0199 (generated.ResourceEmbedding_resource0199) package generated { import mx.core.*; public class ResourceEmbedding_resource0199 extends BitmapAsset { } }//package generated
Section 276
//ResourceEmbedding_resource0200 (generated.ResourceEmbedding_resource0200) package generated { import mx.core.*; public class ResourceEmbedding_resource0200 extends BitmapAsset { } }//package generated
Section 277
//ResourceEmbedding_resource0201 (generated.ResourceEmbedding_resource0201) package generated { import mx.core.*; public class ResourceEmbedding_resource0201 extends BitmapAsset { } }//package generated
Section 278
//ResourceEmbedding_resource0202 (generated.ResourceEmbedding_resource0202) package generated { import mx.core.*; public class ResourceEmbedding_resource0202 extends BitmapAsset { } }//package generated
Section 279
//ResourceEmbedding_resource0203 (generated.ResourceEmbedding_resource0203) package generated { import mx.core.*; public class ResourceEmbedding_resource0203 extends BitmapAsset { } }//package generated
Section 280
//ResourceEmbedding_resource0204 (generated.ResourceEmbedding_resource0204) package generated { import mx.core.*; public class ResourceEmbedding_resource0204 extends BitmapAsset { } }//package generated
Section 281
//ResourceEmbedding_resource0205 (generated.ResourceEmbedding_resource0205) package generated { import mx.core.*; public class ResourceEmbedding_resource0205 extends BitmapAsset { } }//package generated
Section 282
//ResourceEmbedding_resource0206 (generated.ResourceEmbedding_resource0206) package generated { import mx.core.*; public class ResourceEmbedding_resource0206 extends BitmapAsset { } }//package generated
Section 283
//ResourceEmbedding_resource0207 (generated.ResourceEmbedding_resource0207) package generated { import mx.core.*; public class ResourceEmbedding_resource0207 extends BitmapAsset { } }//package generated
Section 284
//ResourceEmbedding_resource0208 (generated.ResourceEmbedding_resource0208) package generated { import mx.core.*; public class ResourceEmbedding_resource0208 extends BitmapAsset { } }//package generated
Section 285
//ResourceEmbedding_resource0209 (generated.ResourceEmbedding_resource0209) package generated { import mx.core.*; public class ResourceEmbedding_resource0209 extends BitmapAsset { } }//package generated
Section 286
//ResourceEmbedding_resource0210 (generated.ResourceEmbedding_resource0210) package generated { import mx.core.*; public class ResourceEmbedding_resource0210 extends BitmapAsset { } }//package generated
Section 287
//ResourceEmbedding_resource0211 (generated.ResourceEmbedding_resource0211) package generated { import mx.core.*; public class ResourceEmbedding_resource0211 extends BitmapAsset { } }//package generated
Section 288
//ResourceEmbedding_resource0212 (generated.ResourceEmbedding_resource0212) package generated { import mx.core.*; public class ResourceEmbedding_resource0212 extends BitmapAsset { } }//package generated
Section 289
//ResourceEmbedding_resource0213 (generated.ResourceEmbedding_resource0213) package generated { import mx.core.*; public class ResourceEmbedding_resource0213 extends BitmapAsset { } }//package generated
Section 290
//ResourceEmbedding_resource0214 (generated.ResourceEmbedding_resource0214) package generated { import mx.core.*; public class ResourceEmbedding_resource0214 extends BitmapAsset { } }//package generated
Section 291
//ResourceEmbedding_resource0215 (generated.ResourceEmbedding_resource0215) package generated { import mx.core.*; public class ResourceEmbedding_resource0215 extends BitmapAsset { } }//package generated
Section 292
//ResourceEmbedding_resource0216 (generated.ResourceEmbedding_resource0216) package generated { import mx.core.*; public class ResourceEmbedding_resource0216 extends BitmapAsset { } }//package generated
Section 293
//ResourceEmbedding_resource0217 (generated.ResourceEmbedding_resource0217) package generated { import mx.core.*; public class ResourceEmbedding_resource0217 extends BitmapAsset { } }//package generated
Section 294
//ResourceEmbedding_resource0218 (generated.ResourceEmbedding_resource0218) package generated { import mx.core.*; public class ResourceEmbedding_resource0218 extends BitmapAsset { } }//package generated
Section 295
//ResourceEmbedding_resource0219 (generated.ResourceEmbedding_resource0219) package generated { import mx.core.*; public class ResourceEmbedding_resource0219 extends BitmapAsset { } }//package generated
Section 296
//ResourceEmbedding_resource0220 (generated.ResourceEmbedding_resource0220) package generated { import mx.core.*; public class ResourceEmbedding_resource0220 extends BitmapAsset { } }//package generated
Section 297
//ResourceEmbedding_resource0221 (generated.ResourceEmbedding_resource0221) package generated { import mx.core.*; public class ResourceEmbedding_resource0221 extends BitmapAsset { } }//package generated
Section 298
//ResourceEmbedding_resource0222 (generated.ResourceEmbedding_resource0222) package generated { import mx.core.*; public class ResourceEmbedding_resource0222 extends BitmapAsset { } }//package generated
Section 299
//ResourceEmbedding_resource0223 (generated.ResourceEmbedding_resource0223) package generated { import mx.core.*; public class ResourceEmbedding_resource0223 extends BitmapAsset { } }//package generated
Section 300
//ResourceEmbedding_resource0224 (generated.ResourceEmbedding_resource0224) package generated { import mx.core.*; public class ResourceEmbedding_resource0224 extends BitmapAsset { } }//package generated
Section 301
//ResourceEmbedding_resource0225 (generated.ResourceEmbedding_resource0225) package generated { import mx.core.*; public class ResourceEmbedding_resource0225 extends BitmapAsset { } }//package generated
Section 302
//ResourceEmbedding_resource0226 (generated.ResourceEmbedding_resource0226) package generated { import mx.core.*; public class ResourceEmbedding_resource0226 extends BitmapAsset { } }//package generated
Section 303
//ResourceEmbedding_resource0227 (generated.ResourceEmbedding_resource0227) package generated { import mx.core.*; public class ResourceEmbedding_resource0227 extends BitmapAsset { } }//package generated
Section 304
//ResourceEmbedding_resource0228 (generated.ResourceEmbedding_resource0228) package generated { import mx.core.*; public class ResourceEmbedding_resource0228 extends BitmapAsset { } }//package generated
Section 305
//ResourceEmbedding_resource0229 (generated.ResourceEmbedding_resource0229) package generated { import mx.core.*; public class ResourceEmbedding_resource0229 extends BitmapAsset { } }//package generated
Section 306
//ResourceEmbedding_resource0230 (generated.ResourceEmbedding_resource0230) package generated { import mx.core.*; public class ResourceEmbedding_resource0230 extends BitmapAsset { } }//package generated
Section 307
//ResourceEmbedding_resource0231 (generated.ResourceEmbedding_resource0231) package generated { import mx.core.*; public class ResourceEmbedding_resource0231 extends BitmapAsset { } }//package generated
Section 308
//ResourceEmbedding_resource0232 (generated.ResourceEmbedding_resource0232) package generated { import mx.core.*; public class ResourceEmbedding_resource0232 extends BitmapAsset { } }//package generated
Section 309
//ResourceEmbedding_resource0233 (generated.ResourceEmbedding_resource0233) package generated { import mx.core.*; public class ResourceEmbedding_resource0233 extends BitmapAsset { } }//package generated
Section 310
//ResourceEmbedding_resource0234 (generated.ResourceEmbedding_resource0234) package generated { import mx.core.*; public class ResourceEmbedding_resource0234 extends BitmapAsset { } }//package generated
Section 311
//ResourceEmbedding_resource0235 (generated.ResourceEmbedding_resource0235) package generated { import mx.core.*; public class ResourceEmbedding_resource0235 extends BitmapAsset { } }//package generated
Section 312
//ResourceEmbedding_resource0236 (generated.ResourceEmbedding_resource0236) package generated { import mx.core.*; public class ResourceEmbedding_resource0236 extends BitmapAsset { } }//package generated
Section 313
//ResourceEmbedding_resource0237 (generated.ResourceEmbedding_resource0237) package generated { import mx.core.*; public class ResourceEmbedding_resource0237 extends BitmapAsset { } }//package generated
Section 314
//ResourceEmbedding_resource0238 (generated.ResourceEmbedding_resource0238) package generated { import mx.core.*; public class ResourceEmbedding_resource0238 extends BitmapAsset { } }//package generated
Section 315
//ResourceEmbedding_resource0239 (generated.ResourceEmbedding_resource0239) package generated { import mx.core.*; public class ResourceEmbedding_resource0239 extends BitmapAsset { } }//package generated
Section 316
//ResourceEmbedding_resource0240 (generated.ResourceEmbedding_resource0240) package generated { import mx.core.*; public class ResourceEmbedding_resource0240 extends BitmapAsset { } }//package generated
Section 317
//ResourceEmbedding_resource0241 (generated.ResourceEmbedding_resource0241) package generated { import mx.core.*; public class ResourceEmbedding_resource0241 extends BitmapAsset { } }//package generated
Section 318
//ResourceEmbedding_resource0242 (generated.ResourceEmbedding_resource0242) package generated { import mx.core.*; public class ResourceEmbedding_resource0242 extends BitmapAsset { } }//package generated
Section 319
//ResourceEmbedding_resource0243 (generated.ResourceEmbedding_resource0243) package generated { import mx.core.*; public class ResourceEmbedding_resource0243 extends BitmapAsset { } }//package generated
Section 320
//ResourceEmbedding_resource0244 (generated.ResourceEmbedding_resource0244) package generated { import mx.core.*; public class ResourceEmbedding_resource0244 extends BitmapAsset { } }//package generated
Section 321
//ResourceEmbedding_resource0245 (generated.ResourceEmbedding_resource0245) package generated { import mx.core.*; public class ResourceEmbedding_resource0245 extends BitmapAsset { } }//package generated
Section 322
//ResourceEmbedding_resource0246 (generated.ResourceEmbedding_resource0246) package generated { import mx.core.*; public class ResourceEmbedding_resource0246 extends BitmapAsset { } }//package generated
Section 323
//ResourceEmbedding_resource0247 (generated.ResourceEmbedding_resource0247) package generated { import mx.core.*; public class ResourceEmbedding_resource0247 extends BitmapAsset { } }//package generated
Section 324
//ResourceEmbedding_resource0248 (generated.ResourceEmbedding_resource0248) package generated { import mx.core.*; public class ResourceEmbedding_resource0248 extends BitmapAsset { } }//package generated
Section 325
//ResourceEmbedding_resource0249 (generated.ResourceEmbedding_resource0249) package generated { import mx.core.*; public class ResourceEmbedding_resource0249 extends BitmapAsset { } }//package generated
Section 326
//ResourceEmbedding_resource0250 (generated.ResourceEmbedding_resource0250) package generated { import mx.core.*; public class ResourceEmbedding_resource0250 extends BitmapAsset { } }//package generated
Section 327
//ResourceEmbedding_resource0251 (generated.ResourceEmbedding_resource0251) package generated { import mx.core.*; public class ResourceEmbedding_resource0251 extends BitmapAsset { } }//package generated
Section 328
//ResourceEmbedding_resource0252 (generated.ResourceEmbedding_resource0252) package generated { import mx.core.*; public class ResourceEmbedding_resource0252 extends BitmapAsset { } }//package generated
Section 329
//ResourceEmbedding_resource0253 (generated.ResourceEmbedding_resource0253) package generated { import mx.core.*; public class ResourceEmbedding_resource0253 extends BitmapAsset { } }//package generated
Section 330
//ResourceEmbedding_resource0254 (generated.ResourceEmbedding_resource0254) package generated { import mx.core.*; public class ResourceEmbedding_resource0254 extends BitmapAsset { } }//package generated
Section 331
//ResourceEmbedding_resource0255 (generated.ResourceEmbedding_resource0255) package generated { import mx.core.*; public class ResourceEmbedding_resource0255 extends BitmapAsset { } }//package generated
Section 332
//ResourceEmbedding_resource0256 (generated.ResourceEmbedding_resource0256) package generated { import mx.core.*; public class ResourceEmbedding_resource0256 extends BitmapAsset { } }//package generated
Section 333
//ResourceEmbedding_resource0257 (generated.ResourceEmbedding_resource0257) package generated { import mx.core.*; public class ResourceEmbedding_resource0257 extends BitmapAsset { } }//package generated
Section 334
//ResourceEmbedding_resource0258 (generated.ResourceEmbedding_resource0258) package generated { import mx.core.*; public class ResourceEmbedding_resource0258 extends BitmapAsset { } }//package generated
Section 335
//ResourceEmbedding_resource0259 (generated.ResourceEmbedding_resource0259) package generated { import mx.core.*; public class ResourceEmbedding_resource0259 extends BitmapAsset { } }//package generated
Section 336
//ResourceEmbedding_resource0260 (generated.ResourceEmbedding_resource0260) package generated { import mx.core.*; public class ResourceEmbedding_resource0260 extends BitmapAsset { } }//package generated
Section 337
//ResourceEmbedding_resource0261 (generated.ResourceEmbedding_resource0261) package generated { import mx.core.*; public class ResourceEmbedding_resource0261 extends BitmapAsset { } }//package generated
Section 338
//ResourceEmbedding_resource0262 (generated.ResourceEmbedding_resource0262) package generated { import mx.core.*; public class ResourceEmbedding_resource0262 extends BitmapAsset { } }//package generated
Section 339
//ResourceEmbedding_resource0263 (generated.ResourceEmbedding_resource0263) package generated { import mx.core.*; public class ResourceEmbedding_resource0263 extends BitmapAsset { } }//package generated
Section 340
//ResourceEmbedding_resource0264 (generated.ResourceEmbedding_resource0264) package generated { import mx.core.*; public class ResourceEmbedding_resource0264 extends BitmapAsset { } }//package generated
Section 341
//ResourceEmbedding_resource0265 (generated.ResourceEmbedding_resource0265) package generated { import mx.core.*; public class ResourceEmbedding_resource0265 extends BitmapAsset { } }//package generated
Section 342
//ResourceEmbedding_resource0266 (generated.ResourceEmbedding_resource0266) package generated { import mx.core.*; public class ResourceEmbedding_resource0266 extends BitmapAsset { } }//package generated
Section 343
//ResourceEmbedding_resource0267 (generated.ResourceEmbedding_resource0267) package generated { import mx.core.*; public class ResourceEmbedding_resource0267 extends BitmapAsset { } }//package generated
Section 344
//ResourceEmbedding_resource0268 (generated.ResourceEmbedding_resource0268) package generated { import mx.core.*; public class ResourceEmbedding_resource0268 extends BitmapAsset { } }//package generated
Section 345
//ResourceEmbedding_resource0269 (generated.ResourceEmbedding_resource0269) package generated { import mx.core.*; public class ResourceEmbedding_resource0269 extends BitmapAsset { } }//package generated
Section 346
//ResourceEmbedding_resource0270 (generated.ResourceEmbedding_resource0270) package generated { import mx.core.*; public class ResourceEmbedding_resource0270 extends BitmapAsset { } }//package generated
Section 347
//ResourceEmbedding_resource0271 (generated.ResourceEmbedding_resource0271) package generated { import mx.core.*; public class ResourceEmbedding_resource0271 extends BitmapAsset { } }//package generated
Section 348
//ResourceEmbedding_resource0272 (generated.ResourceEmbedding_resource0272) package generated { import mx.core.*; public class ResourceEmbedding_resource0272 extends BitmapAsset { } }//package generated
Section 349
//ResourceEmbedding_resource0273 (generated.ResourceEmbedding_resource0273) package generated { import mx.core.*; public class ResourceEmbedding_resource0273 extends BitmapAsset { } }//package generated
Section 350
//ResourceEmbedding_resource0274 (generated.ResourceEmbedding_resource0274) package generated { import mx.core.*; public class ResourceEmbedding_resource0274 extends BitmapAsset { } }//package generated
Section 351
//ResourceEmbedding_resource0275 (generated.ResourceEmbedding_resource0275) package generated { import mx.core.*; public class ResourceEmbedding_resource0275 extends BitmapAsset { } }//package generated
Section 352
//ResourceEmbedding_resource0276 (generated.ResourceEmbedding_resource0276) package generated { import mx.core.*; public class ResourceEmbedding_resource0276 extends BitmapAsset { } }//package generated
Section 353
//ResourceEmbedding_resource0277 (generated.ResourceEmbedding_resource0277) package generated { import mx.core.*; public class ResourceEmbedding_resource0277 extends BitmapAsset { } }//package generated
Section 354
//ResourceEmbedding_resource0278 (generated.ResourceEmbedding_resource0278) package generated { import mx.core.*; public class ResourceEmbedding_resource0278 extends BitmapAsset { } }//package generated
Section 355
//ResourceEmbedding_resource0279 (generated.ResourceEmbedding_resource0279) package generated { import mx.core.*; public class ResourceEmbedding_resource0279 extends BitmapAsset { } }//package generated
Section 356
//ResourceEmbedding_resource0280 (generated.ResourceEmbedding_resource0280) package generated { import mx.core.*; public class ResourceEmbedding_resource0280 extends BitmapAsset { } }//package generated
Section 357
//ResourceEmbedding_resource0281 (generated.ResourceEmbedding_resource0281) package generated { import mx.core.*; public class ResourceEmbedding_resource0281 extends BitmapAsset { } }//package generated
Section 358
//ResourceEmbedding_resource0282 (generated.ResourceEmbedding_resource0282) package generated { import mx.core.*; public class ResourceEmbedding_resource0282 extends BitmapAsset { } }//package generated
Section 359
//ResourceEmbedding_resource0283 (generated.ResourceEmbedding_resource0283) package generated { import mx.core.*; public class ResourceEmbedding_resource0283 extends BitmapAsset { } }//package generated
Section 360
//ResourceEmbedding_resource0284 (generated.ResourceEmbedding_resource0284) package generated { import mx.core.*; public class ResourceEmbedding_resource0284 extends BitmapAsset { } }//package generated
Section 361
//ResourceEmbedding_resource0285 (generated.ResourceEmbedding_resource0285) package generated { import mx.core.*; public class ResourceEmbedding_resource0285 extends BitmapAsset { } }//package generated
Section 362
//ResourceEmbedding_resource0286 (generated.ResourceEmbedding_resource0286) package generated { import mx.core.*; public class ResourceEmbedding_resource0286 extends BitmapAsset { } }//package generated
Section 363
//ResourceEmbedding_resource0287 (generated.ResourceEmbedding_resource0287) package generated { import mx.core.*; public class ResourceEmbedding_resource0287 extends BitmapAsset { } }//package generated
Section 364
//ResourceEmbedding_resource0288 (generated.ResourceEmbedding_resource0288) package generated { import mx.core.*; public class ResourceEmbedding_resource0288 extends BitmapAsset { } }//package generated
Section 365
//ResourceEmbedding_resource0289 (generated.ResourceEmbedding_resource0289) package generated { import mx.core.*; public class ResourceEmbedding_resource0289 extends BitmapAsset { } }//package generated
Section 366
//ResourceEmbedding_resource0290 (generated.ResourceEmbedding_resource0290) package generated { import mx.core.*; public class ResourceEmbedding_resource0290 extends BitmapAsset { } }//package generated
Section 367
//ResourceEmbedding_resource0291 (generated.ResourceEmbedding_resource0291) package generated { import mx.core.*; public class ResourceEmbedding_resource0291 extends BitmapAsset { } }//package generated
Section 368
//ResourceEmbedding_resource0292 (generated.ResourceEmbedding_resource0292) package generated { import mx.core.*; public class ResourceEmbedding_resource0292 extends BitmapAsset { } }//package generated
Section 369
//ResourceEmbedding_resource0293 (generated.ResourceEmbedding_resource0293) package generated { import mx.core.*; public class ResourceEmbedding_resource0293 extends BitmapAsset { } }//package generated
Section 370
//ResourceEmbedding_resource0294 (generated.ResourceEmbedding_resource0294) package generated { import mx.core.*; public class ResourceEmbedding_resource0294 extends BitmapAsset { } }//package generated
Section 371
//ResourceEmbedding_resource0295 (generated.ResourceEmbedding_resource0295) package generated { import mx.core.*; public class ResourceEmbedding_resource0295 extends BitmapAsset { } }//package generated
Section 372
//ResourceEmbedding_resource0296 (generated.ResourceEmbedding_resource0296) package generated { import mx.core.*; public class ResourceEmbedding_resource0296 extends BitmapAsset { } }//package generated
Section 373
//ResourceEmbedding_resource0297 (generated.ResourceEmbedding_resource0297) package generated { import mx.core.*; public class ResourceEmbedding_resource0297 extends BitmapAsset { } }//package generated
Section 374
//ResourceEmbedding_resource0298 (generated.ResourceEmbedding_resource0298) package generated { import mx.core.*; public class ResourceEmbedding_resource0298 extends BitmapAsset { } }//package generated
Section 375
//ResourceEmbedding_resource0299 (generated.ResourceEmbedding_resource0299) package generated { import mx.core.*; public class ResourceEmbedding_resource0299 extends BitmapAsset { } }//package generated
Section 376
//ResourceEmbedding_resource0300 (generated.ResourceEmbedding_resource0300) package generated { import mx.core.*; public class ResourceEmbedding_resource0300 extends BitmapAsset { } }//package generated
Section 377
//ResourceEmbedding_resource0301 (generated.ResourceEmbedding_resource0301) package generated { import mx.core.*; public class ResourceEmbedding_resource0301 extends BitmapAsset { } }//package generated
Section 378
//ResourceEmbedding_resource0302 (generated.ResourceEmbedding_resource0302) package generated { import mx.core.*; public class ResourceEmbedding_resource0302 extends BitmapAsset { } }//package generated
Section 379
//ResourceEmbedding_resource0303 (generated.ResourceEmbedding_resource0303) package generated { import mx.core.*; public class ResourceEmbedding_resource0303 extends BitmapAsset { } }//package generated
Section 380
//ResourceEmbedding_resource0304 (generated.ResourceEmbedding_resource0304) package generated { import mx.core.*; public class ResourceEmbedding_resource0304 extends BitmapAsset { } }//package generated
Section 381
//ResourceEmbedding_resource0305 (generated.ResourceEmbedding_resource0305) package generated { import mx.core.*; public class ResourceEmbedding_resource0305 extends BitmapAsset { } }//package generated
Section 382
//ResourceEmbedding_resource0306 (generated.ResourceEmbedding_resource0306) package generated { import mx.core.*; public class ResourceEmbedding_resource0306 extends BitmapAsset { } }//package generated
Section 383
//ResourceEmbedding_resource0307 (generated.ResourceEmbedding_resource0307) package generated { import mx.core.*; public class ResourceEmbedding_resource0307 extends BitmapAsset { } }//package generated
Section 384
//ResourceEmbedding_resource0308 (generated.ResourceEmbedding_resource0308) package generated { import mx.core.*; public class ResourceEmbedding_resource0308 extends BitmapAsset { } }//package generated
Section 385
//ResourceEmbedding_resource0309 (generated.ResourceEmbedding_resource0309) package generated { import mx.core.*; public class ResourceEmbedding_resource0309 extends BitmapAsset { } }//package generated
Section 386
//ResourceEmbedding_resource0310 (generated.ResourceEmbedding_resource0310) package generated { import mx.core.*; public class ResourceEmbedding_resource0310 extends BitmapAsset { } }//package generated
Section 387
//ResourceEmbedding_resource0311 (generated.ResourceEmbedding_resource0311) package generated { import mx.core.*; public class ResourceEmbedding_resource0311 extends BitmapAsset { } }//package generated
Section 388
//ResourceEmbedding_resource0312 (generated.ResourceEmbedding_resource0312) package generated { import mx.core.*; public class ResourceEmbedding_resource0312 extends BitmapAsset { } }//package generated
Section 389
//ResourceEmbedding_resource0313 (generated.ResourceEmbedding_resource0313) package generated { import mx.core.*; public class ResourceEmbedding_resource0313 extends BitmapAsset { } }//package generated
Section 390
//ResourceEmbedding_resource0314 (generated.ResourceEmbedding_resource0314) package generated { import mx.core.*; public class ResourceEmbedding_resource0314 extends BitmapAsset { } }//package generated
Section 391
//ResourceEmbedding_resource0315 (generated.ResourceEmbedding_resource0315) package generated { import mx.core.*; public class ResourceEmbedding_resource0315 extends BitmapAsset { } }//package generated
Section 392
//ResourceEmbedding_resource0316 (generated.ResourceEmbedding_resource0316) package generated { import mx.core.*; public class ResourceEmbedding_resource0316 extends BitmapAsset { } }//package generated
Section 393
//ResourceEmbedding_resource0317 (generated.ResourceEmbedding_resource0317) package generated { import mx.core.*; public class ResourceEmbedding_resource0317 extends BitmapAsset { } }//package generated
Section 394
//ResourceEmbedding_resource0318 (generated.ResourceEmbedding_resource0318) package generated { import mx.core.*; public class ResourceEmbedding_resource0318 extends BitmapAsset { } }//package generated
Section 395
//ResourceEmbedding_resource0319 (generated.ResourceEmbedding_resource0319) package generated { import mx.core.*; public class ResourceEmbedding_resource0319 extends BitmapAsset { } }//package generated
Section 396
//ResourceEmbedding_resource0320 (generated.ResourceEmbedding_resource0320) package generated { import mx.core.*; public class ResourceEmbedding_resource0320 extends BitmapAsset { } }//package generated
Section 397
//ResourceEmbedding_resource0321 (generated.ResourceEmbedding_resource0321) package generated { import mx.core.*; public class ResourceEmbedding_resource0321 extends BitmapAsset { } }//package generated
Section 398
//ResourceEmbedding_resource0322 (generated.ResourceEmbedding_resource0322) package generated { import mx.core.*; public class ResourceEmbedding_resource0322 extends BitmapAsset { } }//package generated
Section 399
//ResourceEmbedding_resource0323 (generated.ResourceEmbedding_resource0323) package generated { import mx.core.*; public class ResourceEmbedding_resource0323 extends BitmapAsset { } }//package generated
Section 400
//ResourceEmbedding_resource0324 (generated.ResourceEmbedding_resource0324) package generated { import mx.core.*; public class ResourceEmbedding_resource0324 extends BitmapAsset { } }//package generated
Section 401
//ResourceEmbedding_resource0325 (generated.ResourceEmbedding_resource0325) package generated { import mx.core.*; public class ResourceEmbedding_resource0325 extends BitmapAsset { } }//package generated
Section 402
//ResourceEmbedding_resource0326 (generated.ResourceEmbedding_resource0326) package generated { import mx.core.*; public class ResourceEmbedding_resource0326 extends BitmapAsset { } }//package generated
Section 403
//ResourceEmbedding_resource0327 (generated.ResourceEmbedding_resource0327) package generated { import mx.core.*; public class ResourceEmbedding_resource0327 extends BitmapAsset { } }//package generated
Section 404
//ResourceEmbedding_resource0328 (generated.ResourceEmbedding_resource0328) package generated { import mx.core.*; public class ResourceEmbedding_resource0328 extends BitmapAsset { } }//package generated
Section 405
//ResourceEmbedding_resource0329 (generated.ResourceEmbedding_resource0329) package generated { import mx.core.*; public class ResourceEmbedding_resource0329 extends BitmapAsset { } }//package generated
Section 406
//ResourceEmbedding_resource0330 (generated.ResourceEmbedding_resource0330) package generated { import mx.core.*; public class ResourceEmbedding_resource0330 extends BitmapAsset { } }//package generated
Section 407
//ResourceEmbedding_resource0331 (generated.ResourceEmbedding_resource0331) package generated { import mx.core.*; public class ResourceEmbedding_resource0331 extends BitmapAsset { } }//package generated
Section 408
//ResourceEmbedding_resource0332 (generated.ResourceEmbedding_resource0332) package generated { import mx.core.*; public class ResourceEmbedding_resource0332 extends BitmapAsset { } }//package generated
Section 409
//ResourceEmbedding_resource0333 (generated.ResourceEmbedding_resource0333) package generated { import mx.core.*; public class ResourceEmbedding_resource0333 extends BitmapAsset { } }//package generated
Section 410
//ResourceEmbedding_resource0334 (generated.ResourceEmbedding_resource0334) package generated { import mx.core.*; public class ResourceEmbedding_resource0334 extends BitmapAsset { } }//package generated
Section 411
//ResourceEmbedding_resource0335 (generated.ResourceEmbedding_resource0335) package generated { import mx.core.*; public class ResourceEmbedding_resource0335 extends BitmapAsset { } }//package generated
Section 412
//ResourceEmbedding_resource0336 (generated.ResourceEmbedding_resource0336) package generated { import mx.core.*; public class ResourceEmbedding_resource0336 extends BitmapAsset { } }//package generated
Section 413
//ResourceEmbedding_resource0337 (generated.ResourceEmbedding_resource0337) package generated { import mx.core.*; public class ResourceEmbedding_resource0337 extends BitmapAsset { } }//package generated
Section 414
//ResourceEmbedding_resource0338 (generated.ResourceEmbedding_resource0338) package generated { import mx.core.*; public class ResourceEmbedding_resource0338 extends BitmapAsset { } }//package generated
Section 415
//ResourceEmbedding_resource0339 (generated.ResourceEmbedding_resource0339) package generated { import mx.core.*; public class ResourceEmbedding_resource0339 extends BitmapAsset { } }//package generated
Section 416
//ResourceEmbedding_resource0340 (generated.ResourceEmbedding_resource0340) package generated { import mx.core.*; public class ResourceEmbedding_resource0340 extends BitmapAsset { } }//package generated
Section 417
//ResourceEmbedding_resource0341 (generated.ResourceEmbedding_resource0341) package generated { import mx.core.*; public class ResourceEmbedding_resource0341 extends BitmapAsset { } }//package generated
Section 418
//ResourceEmbedding_resource0342 (generated.ResourceEmbedding_resource0342) package generated { import mx.core.*; public class ResourceEmbedding_resource0342 extends BitmapAsset { } }//package generated
Section 419
//ResourceEmbedding_resource0343 (generated.ResourceEmbedding_resource0343) package generated { import mx.core.*; public class ResourceEmbedding_resource0343 extends BitmapAsset { } }//package generated
Section 420
//ResourceEmbedding_resource0344 (generated.ResourceEmbedding_resource0344) package generated { import mx.core.*; public class ResourceEmbedding_resource0344 extends BitmapAsset { } }//package generated
Section 421
//ResourceEmbedding_resource0345 (generated.ResourceEmbedding_resource0345) package generated { import mx.core.*; public class ResourceEmbedding_resource0345 extends BitmapAsset { } }//package generated
Section 422
//ResourceEmbedding_resource0346 (generated.ResourceEmbedding_resource0346) package generated { import mx.core.*; public class ResourceEmbedding_resource0346 extends BitmapAsset { } }//package generated
Section 423
//ResourceEmbedding_resource0347 (generated.ResourceEmbedding_resource0347) package generated { import mx.core.*; public class ResourceEmbedding_resource0347 extends BitmapAsset { } }//package generated
Section 424
//ResourceEmbedding_resource0348 (generated.ResourceEmbedding_resource0348) package generated { import mx.core.*; public class ResourceEmbedding_resource0348 extends BitmapAsset { } }//package generated
Section 425
//ResourceEmbedding_resource0349 (generated.ResourceEmbedding_resource0349) package generated { import mx.core.*; public class ResourceEmbedding_resource0349 extends BitmapAsset { } }//package generated
Section 426
//ResourceEmbedding_resource0350 (generated.ResourceEmbedding_resource0350) package generated { import mx.core.*; public class ResourceEmbedding_resource0350 extends BitmapAsset { } }//package generated
Section 427
//ResourceEmbedding_resource0351 (generated.ResourceEmbedding_resource0351) package generated { import mx.core.*; public class ResourceEmbedding_resource0351 extends BitmapAsset { } }//package generated
Section 428
//ResourceEmbedding_resource0352 (generated.ResourceEmbedding_resource0352) package generated { import mx.core.*; public class ResourceEmbedding_resource0352 extends BitmapAsset { } }//package generated
Section 429
//ResourceEmbedding_resource0353 (generated.ResourceEmbedding_resource0353) package generated { import mx.core.*; public class ResourceEmbedding_resource0353 extends BitmapAsset { } }//package generated
Section 430
//ResourceEmbedding_resource0354 (generated.ResourceEmbedding_resource0354) package generated { import mx.core.*; public class ResourceEmbedding_resource0354 extends BitmapAsset { } }//package generated
Section 431
//ResourceEmbedding_resource0355 (generated.ResourceEmbedding_resource0355) package generated { import mx.core.*; public class ResourceEmbedding_resource0355 extends BitmapAsset { } }//package generated
Section 432
//ResourceEmbedding_resource0356 (generated.ResourceEmbedding_resource0356) package generated { import mx.core.*; public class ResourceEmbedding_resource0356 extends BitmapAsset { } }//package generated
Section 433
//ResourceEmbedding_resource0357 (generated.ResourceEmbedding_resource0357) package generated { import mx.core.*; public class ResourceEmbedding_resource0357 extends BitmapAsset { } }//package generated
Section 434
//ResourceEmbedding_resource0358 (generated.ResourceEmbedding_resource0358) package generated { import mx.core.*; public class ResourceEmbedding_resource0358 extends BitmapAsset { } }//package generated
Section 435
//ResourceEmbedding_resource0359 (generated.ResourceEmbedding_resource0359) package generated { import mx.core.*; public class ResourceEmbedding_resource0359 extends BitmapAsset { } }//package generated
Section 436
//ResourceEmbedding_resource0360 (generated.ResourceEmbedding_resource0360) package generated { import mx.core.*; public class ResourceEmbedding_resource0360 extends BitmapAsset { } }//package generated
Section 437
//ResourceEmbedding_resource0361 (generated.ResourceEmbedding_resource0361) package generated { import mx.core.*; public class ResourceEmbedding_resource0361 extends BitmapAsset { } }//package generated
Section 438
//ResourceEmbedding_resource0362 (generated.ResourceEmbedding_resource0362) package generated { import mx.core.*; public class ResourceEmbedding_resource0362 extends BitmapAsset { } }//package generated
Section 439
//ResourceEmbedding_resource0363 (generated.ResourceEmbedding_resource0363) package generated { import mx.core.*; public class ResourceEmbedding_resource0363 extends BitmapAsset { } }//package generated
Section 440
//ResourceEmbedding_resource0364 (generated.ResourceEmbedding_resource0364) package generated { import mx.core.*; public class ResourceEmbedding_resource0364 extends BitmapAsset { } }//package generated
Section 441
//ResourceEmbedding_resource0365 (generated.ResourceEmbedding_resource0365) package generated { import mx.core.*; public class ResourceEmbedding_resource0365 extends BitmapAsset { } }//package generated
Section 442
//ResourceEmbedding_resource0366 (generated.ResourceEmbedding_resource0366) package generated { import mx.core.*; public class ResourceEmbedding_resource0366 extends BitmapAsset { } }//package generated
Section 443
//ResourceEmbedding_resource0367 (generated.ResourceEmbedding_resource0367) package generated { import mx.core.*; public class ResourceEmbedding_resource0367 extends BitmapAsset { } }//package generated
Section 444
//ResourceEmbedding_resource0368 (generated.ResourceEmbedding_resource0368) package generated { import mx.core.*; public class ResourceEmbedding_resource0368 extends BitmapAsset { } }//package generated
Section 445
//ResourceEmbedding_resource0369 (generated.ResourceEmbedding_resource0369) package generated { import mx.core.*; public class ResourceEmbedding_resource0369 extends BitmapAsset { } }//package generated
Section 446
//ResourceEmbedding_resource0370 (generated.ResourceEmbedding_resource0370) package generated { import mx.core.*; public class ResourceEmbedding_resource0370 extends BitmapAsset { } }//package generated
Section 447
//ResourceEmbedding_resource0371 (generated.ResourceEmbedding_resource0371) package generated { import mx.core.*; public class ResourceEmbedding_resource0371 extends BitmapAsset { } }//package generated
Section 448
//ResourceEmbedding_resource0372 (generated.ResourceEmbedding_resource0372) package generated { import mx.core.*; public class ResourceEmbedding_resource0372 extends BitmapAsset { } }//package generated
Section 449
//ResourceEmbedding_resource0373 (generated.ResourceEmbedding_resource0373) package generated { import mx.core.*; public class ResourceEmbedding_resource0373 extends BitmapAsset { } }//package generated
Section 450
//ResourceEmbedding_resource0374 (generated.ResourceEmbedding_resource0374) package generated { import mx.core.*; public class ResourceEmbedding_resource0374 extends BitmapAsset { } }//package generated
Section 451
//ResourceEmbedding_resource0375 (generated.ResourceEmbedding_resource0375) package generated { import mx.core.*; public class ResourceEmbedding_resource0375 extends BitmapAsset { } }//package generated
Section 452
//ResourceEmbedding_resource0376 (generated.ResourceEmbedding_resource0376) package generated { import mx.core.*; public class ResourceEmbedding_resource0376 extends BitmapAsset { } }//package generated
Section 453
//ResourceEmbedding_resource0377 (generated.ResourceEmbedding_resource0377) package generated { import mx.core.*; public class ResourceEmbedding_resource0377 extends BitmapAsset { } }//package generated
Section 454
//ResourceEmbedding_resource0378 (generated.ResourceEmbedding_resource0378) package generated { import mx.core.*; public class ResourceEmbedding_resource0378 extends BitmapAsset { } }//package generated
Section 455
//ResourceEmbedding_resource0379 (generated.ResourceEmbedding_resource0379) package generated { import mx.core.*; public class ResourceEmbedding_resource0379 extends BitmapAsset { } }//package generated
Section 456
//ResourceEmbedding_resource0380 (generated.ResourceEmbedding_resource0380) package generated { import mx.core.*; public class ResourceEmbedding_resource0380 extends BitmapAsset { } }//package generated
Section 457
//ResourceEmbedding_resource0381 (generated.ResourceEmbedding_resource0381) package generated { import mx.core.*; public class ResourceEmbedding_resource0381 extends BitmapAsset { } }//package generated
Section 458
//ResourceEmbedding_resource0382 (generated.ResourceEmbedding_resource0382) package generated { import mx.core.*; public class ResourceEmbedding_resource0382 extends BitmapAsset { } }//package generated
Section 459
//ResourceEmbedding_resource0383 (generated.ResourceEmbedding_resource0383) package generated { import mx.core.*; public class ResourceEmbedding_resource0383 extends BitmapAsset { } }//package generated
Section 460
//ResourceEmbedding_resource0384 (generated.ResourceEmbedding_resource0384) package generated { import mx.core.*; public class ResourceEmbedding_resource0384 extends BitmapAsset { } }//package generated
Section 461
//ResourceEmbedding_resource0385 (generated.ResourceEmbedding_resource0385) package generated { import mx.core.*; public class ResourceEmbedding_resource0385 extends BitmapAsset { } }//package generated
Section 462
//ResourceEmbedding_resource0386 (generated.ResourceEmbedding_resource0386) package generated { import mx.core.*; public class ResourceEmbedding_resource0386 extends BitmapAsset { } }//package generated
Section 463
//ResourceEmbedding_resource0387 (generated.ResourceEmbedding_resource0387) package generated { import mx.core.*; public class ResourceEmbedding_resource0387 extends BitmapAsset { } }//package generated
Section 464
//ResourceEmbedding_resource0388 (generated.ResourceEmbedding_resource0388) package generated { import mx.core.*; public class ResourceEmbedding_resource0388 extends BitmapAsset { } }//package generated
Section 465
//ResourceEmbedding_resource0389 (generated.ResourceEmbedding_resource0389) package generated { import mx.core.*; public class ResourceEmbedding_resource0389 extends BitmapAsset { } }//package generated
Section 466
//ResourceEmbedding_resource0390 (generated.ResourceEmbedding_resource0390) package generated { import mx.core.*; public class ResourceEmbedding_resource0390 extends BitmapAsset { } }//package generated
Section 467
//ResourceEmbedding_resource0391 (generated.ResourceEmbedding_resource0391) package generated { import mx.core.*; public class ResourceEmbedding_resource0391 extends BitmapAsset { } }//package generated
Section 468
//ResourceEmbedding_resource0392 (generated.ResourceEmbedding_resource0392) package generated { import mx.core.*; public class ResourceEmbedding_resource0392 extends BitmapAsset { } }//package generated
Section 469
//ResourceEmbedding_resource0393 (generated.ResourceEmbedding_resource0393) package generated { import mx.core.*; public class ResourceEmbedding_resource0393 extends BitmapAsset { } }//package generated
Section 470
//ResourceEmbedding_resource0394 (generated.ResourceEmbedding_resource0394) package generated { import mx.core.*; public class ResourceEmbedding_resource0394 extends BitmapAsset { } }//package generated
Section 471
//ResourceEmbedding_resource0395 (generated.ResourceEmbedding_resource0395) package generated { import mx.core.*; public class ResourceEmbedding_resource0395 extends BitmapAsset { } }//package generated
Section 472
//ResourceEmbedding_resource0396 (generated.ResourceEmbedding_resource0396) package generated { import mx.core.*; public class ResourceEmbedding_resource0396 extends BitmapAsset { } }//package generated
Section 473
//ResourceEmbedding_resource0397 (generated.ResourceEmbedding_resource0397) package generated { import mx.core.*; public class ResourceEmbedding_resource0397 extends BitmapAsset { } }//package generated
Section 474
//ResourceEmbedding_resource0398 (generated.ResourceEmbedding_resource0398) package generated { import mx.core.*; public class ResourceEmbedding_resource0398 extends BitmapAsset { } }//package generated
Section 475
//ResourceEmbedding_resource0399 (generated.ResourceEmbedding_resource0399) package generated { import mx.core.*; public class ResourceEmbedding_resource0399 extends BitmapAsset { } }//package generated
Section 476
//ResourceEmbedding_resource0400 (generated.ResourceEmbedding_resource0400) package generated { import mx.core.*; public class ResourceEmbedding_resource0400 extends BitmapAsset { } }//package generated
Section 477
//ResourceEmbedding_resource0401 (generated.ResourceEmbedding_resource0401) package generated { import mx.core.*; public class ResourceEmbedding_resource0401 extends BitmapAsset { } }//package generated
Section 478
//ResourceEmbedding_resource0402 (generated.ResourceEmbedding_resource0402) package generated { import mx.core.*; public class ResourceEmbedding_resource0402 extends BitmapAsset { } }//package generated
Section 479
//ResourceEmbedding_resource0403 (generated.ResourceEmbedding_resource0403) package generated { import mx.core.*; public class ResourceEmbedding_resource0403 extends BitmapAsset { } }//package generated
Section 480
//ResourceEmbedding_resource0404 (generated.ResourceEmbedding_resource0404) package generated { import mx.core.*; public class ResourceEmbedding_resource0404 extends BitmapAsset { } }//package generated
Section 481
//ResourceEmbedding_resource0405 (generated.ResourceEmbedding_resource0405) package generated { import mx.core.*; public class ResourceEmbedding_resource0405 extends BitmapAsset { } }//package generated
Section 482
//ResourceEmbedding_resource0406 (generated.ResourceEmbedding_resource0406) package generated { import mx.core.*; public class ResourceEmbedding_resource0406 extends BitmapAsset { } }//package generated
Section 483
//ResourceEmbedding_resource0407 (generated.ResourceEmbedding_resource0407) package generated { import mx.core.*; public class ResourceEmbedding_resource0407 extends BitmapAsset { } }//package generated
Section 484
//ResourceEmbedding_resource0408 (generated.ResourceEmbedding_resource0408) package generated { import mx.core.*; public class ResourceEmbedding_resource0408 extends BitmapAsset { } }//package generated
Section 485
//ResourceEmbedding_resource0409 (generated.ResourceEmbedding_resource0409) package generated { import mx.core.*; public class ResourceEmbedding_resource0409 extends BitmapAsset { } }//package generated
Section 486
//ResourceEmbedding_resource0410 (generated.ResourceEmbedding_resource0410) package generated { import mx.core.*; public class ResourceEmbedding_resource0410 extends BitmapAsset { } }//package generated
Section 487
//ResourceEmbedding_resource0411 (generated.ResourceEmbedding_resource0411) package generated { import mx.core.*; public class ResourceEmbedding_resource0411 extends BitmapAsset { } }//package generated
Section 488
//ResourceEmbedding_resource0412 (generated.ResourceEmbedding_resource0412) package generated { import mx.core.*; public class ResourceEmbedding_resource0412 extends BitmapAsset { } }//package generated
Section 489
//ResourceEmbedding_resource0413 (generated.ResourceEmbedding_resource0413) package generated { import mx.core.*; public class ResourceEmbedding_resource0413 extends BitmapAsset { } }//package generated
Section 490
//ResourceEmbedding_resource0414 (generated.ResourceEmbedding_resource0414) package generated { import mx.core.*; public class ResourceEmbedding_resource0414 extends BitmapAsset { } }//package generated
Section 491
//ResourceEmbedding_resource0415 (generated.ResourceEmbedding_resource0415) package generated { import mx.core.*; public class ResourceEmbedding_resource0415 extends BitmapAsset { } }//package generated
Section 492
//ResourceEmbedding_resource0416 (generated.ResourceEmbedding_resource0416) package generated { import mx.core.*; public class ResourceEmbedding_resource0416 extends BitmapAsset { } }//package generated
Section 493
//ResourceEmbedding_resource0417 (generated.ResourceEmbedding_resource0417) package generated { import mx.core.*; public class ResourceEmbedding_resource0417 extends BitmapAsset { } }//package generated
Section 494
//ResourceEmbedding_resource0418 (generated.ResourceEmbedding_resource0418) package generated { import mx.core.*; public class ResourceEmbedding_resource0418 extends BitmapAsset { } }//package generated
Section 495
//ResourceEmbedding_resource0419 (generated.ResourceEmbedding_resource0419) package generated { import mx.core.*; public class ResourceEmbedding_resource0419 extends BitmapAsset { } }//package generated
Section 496
//ResourceEmbedding_resource0420 (generated.ResourceEmbedding_resource0420) package generated { import mx.core.*; public class ResourceEmbedding_resource0420 extends BitmapAsset { } }//package generated
Section 497
//ResourceEmbedding_resource0421 (generated.ResourceEmbedding_resource0421) package generated { import mx.core.*; public class ResourceEmbedding_resource0421 extends BitmapAsset { } }//package generated
Section 498
//ResourceEmbedding_resource0422 (generated.ResourceEmbedding_resource0422) package generated { import mx.core.*; public class ResourceEmbedding_resource0422 extends BitmapAsset { } }//package generated
Section 499
//ResourceEmbedding_resource0423 (generated.ResourceEmbedding_resource0423) package generated { import mx.core.*; public class ResourceEmbedding_resource0423 extends BitmapAsset { } }//package generated
Section 500
//ResourceEmbedding_resource0424 (generated.ResourceEmbedding_resource0424) package generated { import mx.core.*; public class ResourceEmbedding_resource0424 extends BitmapAsset { } }//package generated
Section 501
//ResourceEmbedding_resource0425 (generated.ResourceEmbedding_resource0425) package generated { import mx.core.*; public class ResourceEmbedding_resource0425 extends BitmapAsset { } }//package generated
Section 502
//ResourceEmbedding_resource0426 (generated.ResourceEmbedding_resource0426) package generated { import mx.core.*; public class ResourceEmbedding_resource0426 extends BitmapAsset { } }//package generated
Section 503
//ResourceEmbedding_resource0427 (generated.ResourceEmbedding_resource0427) package generated { import mx.core.*; public class ResourceEmbedding_resource0427 extends BitmapAsset { } }//package generated
Section 504
//ResourceEmbedding_resource0428 (generated.ResourceEmbedding_resource0428) package generated { import mx.core.*; public class ResourceEmbedding_resource0428 extends BitmapAsset { } }//package generated
Section 505
//ResourceEmbedding_resource0429 (generated.ResourceEmbedding_resource0429) package generated { import mx.core.*; public class ResourceEmbedding_resource0429 extends BitmapAsset { } }//package generated
Section 506
//ResourceEmbedding_resource0430 (generated.ResourceEmbedding_resource0430) package generated { import mx.core.*; public class ResourceEmbedding_resource0430 extends BitmapAsset { } }//package generated
Section 507
//ResourceEmbedding_resource0431 (generated.ResourceEmbedding_resource0431) package generated { import mx.core.*; public class ResourceEmbedding_resource0431 extends BitmapAsset { } }//package generated
Section 508
//ResourceEmbedding_resource0432 (generated.ResourceEmbedding_resource0432) package generated { import mx.core.*; public class ResourceEmbedding_resource0432 extends BitmapAsset { } }//package generated
Section 509
//ResourceEmbedding_resource0433 (generated.ResourceEmbedding_resource0433) package generated { import mx.core.*; public class ResourceEmbedding_resource0433 extends BitmapAsset { } }//package generated
Section 510
//ResourceEmbedding_resource0434 (generated.ResourceEmbedding_resource0434) package generated { import mx.core.*; public class ResourceEmbedding_resource0434 extends BitmapAsset { } }//package generated
Section 511
//ResourceEmbedding_resource0435 (generated.ResourceEmbedding_resource0435) package generated { import mx.core.*; public class ResourceEmbedding_resource0435 extends BitmapAsset { } }//package generated
Section 512
//ResourceEmbedding_resource0436 (generated.ResourceEmbedding_resource0436) package generated { import mx.core.*; public class ResourceEmbedding_resource0436 extends BitmapAsset { } }//package generated
Section 513
//ResourceEmbedding_resource0437 (generated.ResourceEmbedding_resource0437) package generated { import mx.core.*; public class ResourceEmbedding_resource0437 extends BitmapAsset { } }//package generated
Section 514
//ResourceEmbedding_resource0438 (generated.ResourceEmbedding_resource0438) package generated { import mx.core.*; public class ResourceEmbedding_resource0438 extends BitmapAsset { } }//package generated
Section 515
//ResourceEmbedding_resource0439 (generated.ResourceEmbedding_resource0439) package generated { import mx.core.*; public class ResourceEmbedding_resource0439 extends BitmapAsset { } }//package generated
Section 516
//ResourceEmbedding_resource0440 (generated.ResourceEmbedding_resource0440) package generated { import mx.core.*; public class ResourceEmbedding_resource0440 extends BitmapAsset { } }//package generated
Section 517
//ResourceEmbedding_resource0441 (generated.ResourceEmbedding_resource0441) package generated { import mx.core.*; public class ResourceEmbedding_resource0441 extends BitmapAsset { } }//package generated
Section 518
//ResourceEmbedding_resource0442 (generated.ResourceEmbedding_resource0442) package generated { import mx.core.*; public class ResourceEmbedding_resource0442 extends BitmapAsset { } }//package generated
Section 519
//ResourceEmbedding_resource0443 (generated.ResourceEmbedding_resource0443) package generated { import mx.core.*; public class ResourceEmbedding_resource0443 extends BitmapAsset { } }//package generated
Section 520
//ResourceEmbedding_resource0444 (generated.ResourceEmbedding_resource0444) package generated { import mx.core.*; public class ResourceEmbedding_resource0444 extends BitmapAsset { } }//package generated
Section 521
//ResourceEmbedding_resource0445 (generated.ResourceEmbedding_resource0445) package generated { import mx.core.*; public class ResourceEmbedding_resource0445 extends BitmapAsset { } }//package generated
Section 522
//ResourceEmbedding_resource0446 (generated.ResourceEmbedding_resource0446) package generated { import mx.core.*; public class ResourceEmbedding_resource0446 extends BitmapAsset { } }//package generated
Section 523
//ResourceEmbedding_resource0447 (generated.ResourceEmbedding_resource0447) package generated { import mx.core.*; public class ResourceEmbedding_resource0447 extends BitmapAsset { } }//package generated
Section 524
//ResourceEmbedding_resource0448 (generated.ResourceEmbedding_resource0448) package generated { import mx.core.*; public class ResourceEmbedding_resource0448 extends BitmapAsset { } }//package generated
Section 525
//ResourceEmbedding_resource0449 (generated.ResourceEmbedding_resource0449) package generated { import mx.core.*; public class ResourceEmbedding_resource0449 extends BitmapAsset { } }//package generated
Section 526
//ResourceEmbedding_resource0450 (generated.ResourceEmbedding_resource0450) package generated { import mx.core.*; public class ResourceEmbedding_resource0450 extends BitmapAsset { } }//package generated
Section 527
//ResourceEmbedding_resource0451 (generated.ResourceEmbedding_resource0451) package generated { import mx.core.*; public class ResourceEmbedding_resource0451 extends BitmapAsset { } }//package generated
Section 528
//ResourceEmbedding_resource0452 (generated.ResourceEmbedding_resource0452) package generated { import mx.core.*; public class ResourceEmbedding_resource0452 extends BitmapAsset { } }//package generated
Section 529
//ResourceEmbedding_resource0453 (generated.ResourceEmbedding_resource0453) package generated { import mx.core.*; public class ResourceEmbedding_resource0453 extends BitmapAsset { } }//package generated
Section 530
//ResourceEmbedding_resource0454 (generated.ResourceEmbedding_resource0454) package generated { import mx.core.*; public class ResourceEmbedding_resource0454 extends BitmapAsset { } }//package generated
Section 531
//ResourceEmbedding_resource0455 (generated.ResourceEmbedding_resource0455) package generated { import mx.core.*; public class ResourceEmbedding_resource0455 extends BitmapAsset { } }//package generated
Section 532
//ResourceEmbedding_resource0456 (generated.ResourceEmbedding_resource0456) package generated { import mx.core.*; public class ResourceEmbedding_resource0456 extends BitmapAsset { } }//package generated
Section 533
//ResourceEmbedding_resource0457 (generated.ResourceEmbedding_resource0457) package generated { import mx.core.*; public class ResourceEmbedding_resource0457 extends BitmapAsset { } }//package generated
Section 534
//ResourceEmbedding_resource0458 (generated.ResourceEmbedding_resource0458) package generated { import mx.core.*; public class ResourceEmbedding_resource0458 extends BitmapAsset { } }//package generated
Section 535
//ResourceEmbedding_resource0459 (generated.ResourceEmbedding_resource0459) package generated { import mx.core.*; public class ResourceEmbedding_resource0459 extends BitmapAsset { } }//package generated
Section 536
//ResourceEmbedding_resource0460 (generated.ResourceEmbedding_resource0460) package generated { import mx.core.*; public class ResourceEmbedding_resource0460 extends BitmapAsset { } }//package generated
Section 537
//ResourceEmbedding_resource0461 (generated.ResourceEmbedding_resource0461) package generated { import mx.core.*; public class ResourceEmbedding_resource0461 extends BitmapAsset { } }//package generated
Section 538
//ResourceEmbedding_resource0462 (generated.ResourceEmbedding_resource0462) package generated { import mx.core.*; public class ResourceEmbedding_resource0462 extends BitmapAsset { } }//package generated
Section 539
//ResourceEmbedding_resource0463 (generated.ResourceEmbedding_resource0463) package generated { import mx.core.*; public class ResourceEmbedding_resource0463 extends BitmapAsset { } }//package generated
Section 540
//ResourceEmbedding_resource0464 (generated.ResourceEmbedding_resource0464) package generated { import mx.core.*; public class ResourceEmbedding_resource0464 extends BitmapAsset { } }//package generated
Section 541
//ResourceEmbedding_resource0465 (generated.ResourceEmbedding_resource0465) package generated { import mx.core.*; public class ResourceEmbedding_resource0465 extends BitmapAsset { } }//package generated
Section 542
//ResourceEmbedding_resource0466 (generated.ResourceEmbedding_resource0466) package generated { import mx.core.*; public class ResourceEmbedding_resource0466 extends BitmapAsset { } }//package generated
Section 543
//ResourceEmbedding_resource0467 (generated.ResourceEmbedding_resource0467) package generated { import mx.core.*; public class ResourceEmbedding_resource0467 extends BitmapAsset { } }//package generated
Section 544
//ResourceEmbedding_resource0468 (generated.ResourceEmbedding_resource0468) package generated { import mx.core.*; public class ResourceEmbedding_resource0468 extends BitmapAsset { } }//package generated
Section 545
//ResourceEmbedding_resource0469 (generated.ResourceEmbedding_resource0469) package generated { import mx.core.*; public class ResourceEmbedding_resource0469 extends BitmapAsset { } }//package generated
Section 546
//ResourceEmbedding_resource0470 (generated.ResourceEmbedding_resource0470) package generated { import mx.core.*; public class ResourceEmbedding_resource0470 extends BitmapAsset { } }//package generated
Section 547
//ResourceEmbedding_resource0471 (generated.ResourceEmbedding_resource0471) package generated { import mx.core.*; public class ResourceEmbedding_resource0471 extends BitmapAsset { } }//package generated
Section 548
//ResourceEmbedding_resource0472 (generated.ResourceEmbedding_resource0472) package generated { import mx.core.*; public class ResourceEmbedding_resource0472 extends BitmapAsset { } }//package generated
Section 549
//ResourceEmbedding_resource0473 (generated.ResourceEmbedding_resource0473) package generated { import mx.core.*; public class ResourceEmbedding_resource0473 extends BitmapAsset { } }//package generated
Section 550
//ResourceEmbedding_resource0474 (generated.ResourceEmbedding_resource0474) package generated { import mx.core.*; public class ResourceEmbedding_resource0474 extends BitmapAsset { } }//package generated
Section 551
//ResourceEmbedding_resource0475 (generated.ResourceEmbedding_resource0475) package generated { import mx.core.*; public class ResourceEmbedding_resource0475 extends BitmapAsset { } }//package generated
Section 552
//ResourceEmbedding_resource0476 (generated.ResourceEmbedding_resource0476) package generated { import mx.core.*; public class ResourceEmbedding_resource0476 extends BitmapAsset { } }//package generated
Section 553
//ResourceEmbedding_resource0477 (generated.ResourceEmbedding_resource0477) package generated { import mx.core.*; public class ResourceEmbedding_resource0477 extends BitmapAsset { } }//package generated
Section 554
//ResourceEmbedding_resource0478 (generated.ResourceEmbedding_resource0478) package generated { import mx.core.*; public class ResourceEmbedding_resource0478 extends BitmapAsset { } }//package generated
Section 555
//ResourceEmbedding_resource0479 (generated.ResourceEmbedding_resource0479) package generated { import mx.core.*; public class ResourceEmbedding_resource0479 extends BitmapAsset { } }//package generated
Section 556
//ResourceEmbedding_resource0480 (generated.ResourceEmbedding_resource0480) package generated { import mx.core.*; public class ResourceEmbedding_resource0480 extends BitmapAsset { } }//package generated
Section 557
//ResourceEmbedding_resource0481 (generated.ResourceEmbedding_resource0481) package generated { import mx.core.*; public class ResourceEmbedding_resource0481 extends BitmapAsset { } }//package generated
Section 558
//ResourceEmbedding_resource0482 (generated.ResourceEmbedding_resource0482) package generated { import mx.core.*; public class ResourceEmbedding_resource0482 extends BitmapAsset { } }//package generated
Section 559
//ResourceEmbedding_resource0483 (generated.ResourceEmbedding_resource0483) package generated { import mx.core.*; public class ResourceEmbedding_resource0483 extends BitmapAsset { } }//package generated
Section 560
//ResourceEmbedding_resource0484 (generated.ResourceEmbedding_resource0484) package generated { import mx.core.*; public class ResourceEmbedding_resource0484 extends BitmapAsset { } }//package generated
Section 561
//ResourceEmbedding_resource0485 (generated.ResourceEmbedding_resource0485) package generated { import mx.core.*; public class ResourceEmbedding_resource0485 extends BitmapAsset { } }//package generated
Section 562
//ResourceEmbedding_resource0486 (generated.ResourceEmbedding_resource0486) package generated { import mx.core.*; public class ResourceEmbedding_resource0486 extends BitmapAsset { } }//package generated
Section 563
//ResourceEmbedding_resource0487 (generated.ResourceEmbedding_resource0487) package generated { import mx.core.*; public class ResourceEmbedding_resource0487 extends BitmapAsset { } }//package generated
Section 564
//ResourceEmbedding_resource0488 (generated.ResourceEmbedding_resource0488) package generated { import mx.core.*; public class ResourceEmbedding_resource0488 extends BitmapAsset { } }//package generated
Section 565
//ResourceEmbedding_resource0489 (generated.ResourceEmbedding_resource0489) package generated { import mx.core.*; public class ResourceEmbedding_resource0489 extends BitmapAsset { } }//package generated
Section 566
//ResourceEmbedding_resource0490 (generated.ResourceEmbedding_resource0490) package generated { import mx.core.*; public class ResourceEmbedding_resource0490 extends BitmapAsset { } }//package generated
Section 567
//ResourceEmbedding_resource0491 (generated.ResourceEmbedding_resource0491) package generated { import mx.core.*; public class ResourceEmbedding_resource0491 extends BitmapAsset { } }//package generated
Section 568
//ResourceEmbedding_resource0492 (generated.ResourceEmbedding_resource0492) package generated { import mx.core.*; public class ResourceEmbedding_resource0492 extends BitmapAsset { } }//package generated
Section 569
//ResourceEmbedding_resource0493 (generated.ResourceEmbedding_resource0493) package generated { import mx.core.*; public class ResourceEmbedding_resource0493 extends BitmapAsset { } }//package generated
Section 570
//ResourceEmbedding_resource0494 (generated.ResourceEmbedding_resource0494) package generated { import mx.core.*; public class ResourceEmbedding_resource0494 extends BitmapAsset { } }//package generated
Section 571
//ResourceEmbedding_resource0495 (generated.ResourceEmbedding_resource0495) package generated { import mx.core.*; public class ResourceEmbedding_resource0495 extends BitmapAsset { } }//package generated
Section 572
//ResourceEmbedding_resource0496 (generated.ResourceEmbedding_resource0496) package generated { import mx.core.*; public class ResourceEmbedding_resource0496 extends BitmapAsset { } }//package generated
Section 573
//ResourceEmbedding_resource0497 (generated.ResourceEmbedding_resource0497) package generated { import mx.core.*; public class ResourceEmbedding_resource0497 extends BitmapAsset { } }//package generated
Section 574
//ResourceEmbedding_resource0498 (generated.ResourceEmbedding_resource0498) package generated { import mx.core.*; public class ResourceEmbedding_resource0498 extends BitmapAsset { } }//package generated
Section 575
//ResourceEmbedding_resource0499 (generated.ResourceEmbedding_resource0499) package generated { import mx.core.*; public class ResourceEmbedding_resource0499 extends BitmapAsset { } }//package generated
Section 576
//ResourceEmbedding_resource0500 (generated.ResourceEmbedding_resource0500) package generated { import mx.core.*; public class ResourceEmbedding_resource0500 extends BitmapAsset { } }//package generated
Section 577
//ResourceEmbedding_resource0501 (generated.ResourceEmbedding_resource0501) package generated { import mx.core.*; public class ResourceEmbedding_resource0501 extends BitmapAsset { } }//package generated
Section 578
//ResourceEmbedding_resource0502 (generated.ResourceEmbedding_resource0502) package generated { import mx.core.*; public class ResourceEmbedding_resource0502 extends BitmapAsset { } }//package generated
Section 579
//ResourceEmbedding_resource0503 (generated.ResourceEmbedding_resource0503) package generated { import mx.core.*; public class ResourceEmbedding_resource0503 extends BitmapAsset { } }//package generated
Section 580
//ResourceEmbedding_resource0504 (generated.ResourceEmbedding_resource0504) package generated { import mx.core.*; public class ResourceEmbedding_resource0504 extends BitmapAsset { } }//package generated
Section 581
//ResourceEmbedding_resource0505 (generated.ResourceEmbedding_resource0505) package generated { import mx.core.*; public class ResourceEmbedding_resource0505 extends BitmapAsset { } }//package generated
Section 582
//ResourceEmbedding_resource0506 (generated.ResourceEmbedding_resource0506) package generated { import mx.core.*; public class ResourceEmbedding_resource0506 extends BitmapAsset { } }//package generated
Section 583
//ResourceEmbedding_resource0507 (generated.ResourceEmbedding_resource0507) package generated { import mx.core.*; public class ResourceEmbedding_resource0507 extends BitmapAsset { } }//package generated
Section 584
//ResourceEmbedding_resource0508 (generated.ResourceEmbedding_resource0508) package generated { import mx.core.*; public class ResourceEmbedding_resource0508 extends BitmapAsset { } }//package generated
Section 585
//ResourceEmbedding_resource0509 (generated.ResourceEmbedding_resource0509) package generated { import mx.core.*; public class ResourceEmbedding_resource0509 extends BitmapAsset { } }//package generated
Section 586
//ResourceEmbedding_resource0510 (generated.ResourceEmbedding_resource0510) package generated { import mx.core.*; public class ResourceEmbedding_resource0510 extends BitmapAsset { } }//package generated
Section 587
//ResourceEmbedding_resource0511 (generated.ResourceEmbedding_resource0511) package generated { import mx.core.*; public class ResourceEmbedding_resource0511 extends BitmapAsset { } }//package generated
Section 588
//ResourceEmbedding_resource0512 (generated.ResourceEmbedding_resource0512) package generated { import mx.core.*; public class ResourceEmbedding_resource0512 extends BitmapAsset { } }//package generated
Section 589
//ResourceEmbedding_resource0513 (generated.ResourceEmbedding_resource0513) package generated { import mx.core.*; public class ResourceEmbedding_resource0513 extends BitmapAsset { } }//package generated
Section 590
//ResourceEmbedding_resource0514 (generated.ResourceEmbedding_resource0514) package generated { import mx.core.*; public class ResourceEmbedding_resource0514 extends SoundAsset { } }//package generated
Section 591
//ResourceEmbedding_resource0515 (generated.ResourceEmbedding_resource0515) package generated { import mx.core.*; public class ResourceEmbedding_resource0515 extends SoundAsset { } }//package generated
Section 592
//ResourceEmbedding_resource0516 (generated.ResourceEmbedding_resource0516) package generated { import mx.core.*; public class ResourceEmbedding_resource0516 extends SoundAsset { } }//package generated
Section 593
//ResourceEmbedding_resource0517 (generated.ResourceEmbedding_resource0517) package generated { import mx.core.*; public class ResourceEmbedding_resource0517 extends SoundAsset { } }//package generated
Section 594
//ResourceEmbedding_resource0518 (generated.ResourceEmbedding_resource0518) package generated { import mx.core.*; public class ResourceEmbedding_resource0518 extends SoundAsset { } }//package generated
Section 595
//ResourceEmbedding_resource0519 (generated.ResourceEmbedding_resource0519) package generated { import mx.core.*; public class ResourceEmbedding_resource0519 extends SoundAsset { } }//package generated
Section 596
//ResourceEmbedding_resource0520 (generated.ResourceEmbedding_resource0520) package generated { import mx.core.*; public class ResourceEmbedding_resource0520 extends SoundAsset { } }//package generated
Section 597
//ResourceEmbedding_resource0521 (generated.ResourceEmbedding_resource0521) package generated { import mx.core.*; public class ResourceEmbedding_resource0521 extends SoundAsset { } }//package generated
Section 598
//ResourceEmbedding_resource0522 (generated.ResourceEmbedding_resource0522) package generated { import mx.core.*; public class ResourceEmbedding_resource0522 extends SoundAsset { } }//package generated
Section 599
//ResourceEmbedding_resource0523 (generated.ResourceEmbedding_resource0523) package generated { import mx.core.*; public class ResourceEmbedding_resource0523 extends SoundAsset { } }//package generated
Section 600
//ResourceEmbedding_resource0524 (generated.ResourceEmbedding_resource0524) package generated { import mx.core.*; public class ResourceEmbedding_resource0524 extends SoundAsset { } }//package generated
Section 601
//ResourceEmbedding_resource0525 (generated.ResourceEmbedding_resource0525) package generated { import mx.core.*; public class ResourceEmbedding_resource0525 extends SoundAsset { } }//package generated
Section 602
//ResourceEmbedding_resource0526 (generated.ResourceEmbedding_resource0526) package generated { import mx.core.*; public class ResourceEmbedding_resource0526 extends SoundAsset { } }//package generated
Section 603
//ResourceEmbedding_resource0527 (generated.ResourceEmbedding_resource0527) package generated { import mx.core.*; public class ResourceEmbedding_resource0527 extends SoundAsset { } }//package generated
Section 604
//ResourceEmbedding_resource0528 (generated.ResourceEmbedding_resource0528) package generated { import mx.core.*; public class ResourceEmbedding_resource0528 extends SoundAsset { } }//package generated
Section 605
//ResourceEmbedding_resource0529 (generated.ResourceEmbedding_resource0529) package generated { import mx.core.*; public class ResourceEmbedding_resource0529 extends SoundAsset { } }//package generated
Section 606
//ResourceEmbedding_resource0530 (generated.ResourceEmbedding_resource0530) package generated { import mx.core.*; public class ResourceEmbedding_resource0530 extends SoundAsset { } }//package generated
Section 607
//ResourceEmbedding_resource0531 (generated.ResourceEmbedding_resource0531) package generated { import mx.core.*; public class ResourceEmbedding_resource0531 extends SoundAsset { } }//package generated
Section 608
//ResourceEmbedding_resource0532 (generated.ResourceEmbedding_resource0532) package generated { import mx.core.*; public class ResourceEmbedding_resource0532 extends SoundAsset { } }//package generated
Section 609
//ResourceEmbedding_resource0533 (generated.ResourceEmbedding_resource0533) package generated { import mx.core.*; public class ResourceEmbedding_resource0533 extends SoundAsset { } }//package generated
Section 610
//ResourceEmbedding_resource0534 (generated.ResourceEmbedding_resource0534) package generated { import mx.core.*; public class ResourceEmbedding_resource0534 extends SoundAsset { } }//package generated
Section 611
//ResourceEmbedding_resource0535 (generated.ResourceEmbedding_resource0535) package generated { import mx.core.*; public class ResourceEmbedding_resource0535 extends SoundAsset { } }//package generated
Section 612
//ResourceEmbedding_resource0536 (generated.ResourceEmbedding_resource0536) package generated { import mx.core.*; public class ResourceEmbedding_resource0536 extends SoundAsset { } }//package generated
Section 613
//ResourceEmbedding_resource0537 (generated.ResourceEmbedding_resource0537) package generated { import mx.core.*; public class ResourceEmbedding_resource0537 extends SoundAsset { } }//package generated
Section 614
//ResourceEmbedding_resource0538 (generated.ResourceEmbedding_resource0538) package generated { import mx.core.*; public class ResourceEmbedding_resource0538 extends SoundAsset { } }//package generated
Section 615
//ResourceEmbedding_resource0539 (generated.ResourceEmbedding_resource0539) package generated { import mx.core.*; public class ResourceEmbedding_resource0539 extends SoundAsset { } }//package generated
Section 616
//ResourceEmbedding_resource0540 (generated.ResourceEmbedding_resource0540) package generated { import mx.core.*; public class ResourceEmbedding_resource0540 extends SoundAsset { } }//package generated
Section 617
//ResourceEmbedding_resource0541 (generated.ResourceEmbedding_resource0541) package generated { import mx.core.*; public class ResourceEmbedding_resource0541 extends SoundAsset { } }//package generated
Section 618
//ResourceEmbedding_resource0542 (generated.ResourceEmbedding_resource0542) package generated { import mx.core.*; public class ResourceEmbedding_resource0542 extends SoundAsset { } }//package generated
Section 619
//ResourceEmbedding_resource0543 (generated.ResourceEmbedding_resource0543) package generated { import mx.core.*; public class ResourceEmbedding_resource0543 extends SoundAsset { } }//package generated
Section 620
//ResourceEmbedding_resource0544 (generated.ResourceEmbedding_resource0544) package generated { import mx.core.*; public class ResourceEmbedding_resource0544 extends SoundAsset { } }//package generated
Section 621
//ResourceEmbedding_resource0545 (generated.ResourceEmbedding_resource0545) package generated { import mx.core.*; public class ResourceEmbedding_resource0545 extends SoundAsset { } }//package generated
Section 622
//ResourceEmbedding_resource0546 (generated.ResourceEmbedding_resource0546) package generated { import mx.core.*; public class ResourceEmbedding_resource0546 extends SoundAsset { } }//package generated
Section 623
//ResourceEmbedding_resource0547 (generated.ResourceEmbedding_resource0547) package generated { import mx.core.*; public class ResourceEmbedding_resource0547 extends SoundAsset { } }//package generated
Section 624
//ResourceEmbedding_resource0548 (generated.ResourceEmbedding_resource0548) package generated { import mx.core.*; public class ResourceEmbedding_resource0548 extends SoundAsset { } }//package generated
Section 625
//ResourceEmbedding_resource0549 (generated.ResourceEmbedding_resource0549) package generated { import mx.core.*; public class ResourceEmbedding_resource0549 extends SoundAsset { } }//package generated
Section 626
//ResourceEmbedding_resource0550 (generated.ResourceEmbedding_resource0550) package generated { import mx.core.*; public class ResourceEmbedding_resource0550 extends SoundAsset { } }//package generated
Section 627
//ResourceEmbedding_resource0551 (generated.ResourceEmbedding_resource0551) package generated { import mx.core.*; public class ResourceEmbedding_resource0551 extends SoundAsset { } }//package generated
Section 628
//ResourceEmbedding_resource0552 (generated.ResourceEmbedding_resource0552) package generated { import mx.core.*; public class ResourceEmbedding_resource0552 extends SoundAsset { } }//package generated
Section 629
//ResourceEmbedding_resource0553 (generated.ResourceEmbedding_resource0553) package generated { import mx.core.*; public class ResourceEmbedding_resource0553 extends SoundAsset { } }//package generated
Section 630
//ResourceEmbedding_resource0554 (generated.ResourceEmbedding_resource0554) package generated { import mx.core.*; public class ResourceEmbedding_resource0554 extends SoundAsset { } }//package generated
Section 631
//ResourceEmbedding_resource0555 (generated.ResourceEmbedding_resource0555) package generated { import mx.core.*; public class ResourceEmbedding_resource0555 extends SoundAsset { } }//package generated
Section 632
//ResourceEmbedding_resource0556 (generated.ResourceEmbedding_resource0556) package generated { import mx.core.*; public class ResourceEmbedding_resource0556 extends SoundAsset { } }//package generated
Section 633
//ResourceEmbedding_resource0557 (generated.ResourceEmbedding_resource0557) package generated { import mx.core.*; public class ResourceEmbedding_resource0557 extends SoundAsset { } }//package generated
Section 634
//ResourceEmbedding_resource0558 (generated.ResourceEmbedding_resource0558) package generated { import mx.core.*; public class ResourceEmbedding_resource0558 extends SoundAsset { } }//package generated
Section 635
//ResourceEmbedding_resource0559 (generated.ResourceEmbedding_resource0559) package generated { import mx.core.*; public class ResourceEmbedding_resource0559 extends SoundAsset { } }//package generated
Section 636
//ResourceEmbedding_resource0560 (generated.ResourceEmbedding_resource0560) package generated { import mx.core.*; public class ResourceEmbedding_resource0560 extends SoundAsset { } }//package generated
Section 637
//ResourceEmbedding_resource0561 (generated.ResourceEmbedding_resource0561) package generated { import mx.core.*; public class ResourceEmbedding_resource0561 extends SoundAsset { } }//package generated
Section 638
//ResourceEmbedding_resource0562 (generated.ResourceEmbedding_resource0562) package generated { import mx.core.*; public class ResourceEmbedding_resource0562 extends SoundAsset { } }//package generated
Section 639
//ResourceEmbedding_resource0563 (generated.ResourceEmbedding_resource0563) package generated { import mx.core.*; public class ResourceEmbedding_resource0563 extends SoundAsset { } }//package generated
Section 640
//ResourceEmbedding_resource0564 (generated.ResourceEmbedding_resource0564) package generated { import mx.core.*; public class ResourceEmbedding_resource0564 extends SoundAsset { } }//package generated
Section 641
//ResourceEmbedding_resource0565 (generated.ResourceEmbedding_resource0565) package generated { import mx.core.*; public class ResourceEmbedding_resource0565 extends SoundAsset { } }//package generated
Section 642
//ResourceEmbedding_resource0566 (generated.ResourceEmbedding_resource0566) package generated { import mx.core.*; public class ResourceEmbedding_resource0566 extends SoundAsset { } }//package generated
Section 643
//ResourceEmbedding_resource0567 (generated.ResourceEmbedding_resource0567) package generated { import mx.core.*; public class ResourceEmbedding_resource0567 extends SoundAsset { } }//package generated
Section 644
//ResourceEmbedding_resource0568 (generated.ResourceEmbedding_resource0568) package generated { import mx.core.*; public class ResourceEmbedding_resource0568 extends SoundAsset { } }//package generated
Section 645
//ResourceEmbedding_resource0569 (generated.ResourceEmbedding_resource0569) package generated { import mx.core.*; public class ResourceEmbedding_resource0569 extends SoundAsset { } }//package generated
Section 646
//ResourceEmbedding_resource0570 (generated.ResourceEmbedding_resource0570) package generated { import mx.core.*; public class ResourceEmbedding_resource0570 extends SoundAsset { } }//package generated
Section 647
//ResourceEmbedding_resource0571 (generated.ResourceEmbedding_resource0571) package generated { import mx.core.*; public class ResourceEmbedding_resource0571 extends SoundAsset { } }//package generated
Section 648
//ResourceEmbedding_resource0572 (generated.ResourceEmbedding_resource0572) package generated { import mx.core.*; public class ResourceEmbedding_resource0572 extends SoundAsset { } }//package generated
Section 649
//ResourceEmbedding_resource0573 (generated.ResourceEmbedding_resource0573) package generated { import mx.core.*; public class ResourceEmbedding_resource0573 extends SoundAsset { } }//package generated
Section 650
//ResourceEmbedding_resource0574 (generated.ResourceEmbedding_resource0574) package generated { import mx.core.*; public class ResourceEmbedding_resource0574 extends SoundAsset { } }//package generated
Section 651
//ResourceEmbedding_resource0575 (generated.ResourceEmbedding_resource0575) package generated { import mx.core.*; public class ResourceEmbedding_resource0575 extends SoundAsset { } }//package generated
Section 652
//ResourceEmbedding_resource0576 (generated.ResourceEmbedding_resource0576) package generated { import mx.core.*; public class ResourceEmbedding_resource0576 extends SoundAsset { } }//package generated
Section 653
//ResourceEmbedding_resource0577 (generated.ResourceEmbedding_resource0577) package generated { import mx.core.*; public class ResourceEmbedding_resource0577 extends SoundAsset { } }//package generated
Section 654
//ResourceEmbedding_resource0578 (generated.ResourceEmbedding_resource0578) package generated { import mx.core.*; public class ResourceEmbedding_resource0578 extends SoundAsset { } }//package generated
Section 655
//ResourceEmbedding_resource0579 (generated.ResourceEmbedding_resource0579) package generated { import mx.core.*; public class ResourceEmbedding_resource0579 extends ByteArrayAsset { } }//package generated
Section 656
//ResourceEmbedding_resource0580 (generated.ResourceEmbedding_resource0580) package generated { import mx.core.*; public class ResourceEmbedding_resource0580 extends ByteArrayAsset { } }//package generated
Section 657
//GameObject (genius.actor.GameObject) package genius.actor { import genius.component.*; import genius.resource.config.*; import genius.util.*; import genius.events.*; import genius.physics.*; public class GameObject extends LinkedList { public var config; public var _dead:Boolean; public var locked:Boolean;// = false protected var eventTable:Object; private var component:Object; public function die(_arg1:Engine):void{ if (!_dead){ _dead = true; _arg1.gom.destroyObject(this); }; } public function _dispatchEvent(_arg1:GameEvent):void{ var _local2:Array; var _local3:Function; if (eventTable){ _local2 = eventTable[_arg1.type]; if (_local2){ for each (_local3 in _local2) { _local3(_arg1); }; }; }; } public function getComponent(_arg1:String, _arg2:Class){ if (locked){ throw (new Error("Cannot access components while object is locked.")); }; if ((_arg1 in component)){ return ((component[_arg1] as _arg2)); }; return (null); } public function addEventListener(_arg1:String, _arg2:Function):void{ if (!eventTable){ eventTable = new Object(); }; if ((_arg1 in eventTable)){ eventTable[_arg1].push(_arg2); } else { eventTable[_arg1] = [_arg2]; }; } public function dispatchEvent(_arg1:Class, ... _args):void{ var _local3:Array; var _local4:GameEvent; var _local5:Function; if (eventTable){ _local3 = eventTable[(_arg1 as Object).id()]; if (_local3){ switch (_args.length){ case 0: _local4 = new (_arg1); break; case 1: _local4 = new _arg1(_args[0]); break; case 2: _local4 = new _arg1(_args[0], _args[1]); break; case 3: _local4 = new _arg1(_args[0], _args[1], _args[2]); break; case 4: _local4 = new _arg1(_args[0], _args[1], _args[2], _args[3]); break; case 5: _local4 = new _arg1(_args[0], _args[1], _args[2], _args[3], _args[4]); break; }; for each (_local5 in _local3) { _local5(_local4); }; }; }; } public function removeEventListener(_arg1:String, _arg2:Function):void{ var _local3:Array = eventTable[_arg1]; var _local4:int = _local3.indexOf(_arg2); _local3.splice(_local4, 1); if (_local3.length == 0){ delete eventTable[_arg1]; }; } public function tick(_arg1:Engine, _arg2:Number):void{ } public function get dead():Boolean{ return (_dead); } public function configure(_arg1:Engine, _arg2:EntityConfig):void{ var _local3:String; var _local4:IComponent; var _local5:ComponentConfig; this.config = _arg2; component = new Object(); _dead = false; locked = true; for each (_local5 in _arg2.component) { _local4 = _local5.type.createComponent(_arg1, this, _local5.data); attachComponent(_local4, _local5.name); }; locked = false; for (_local3 in component) { component[_local3].link(_arg1, this); }; postConfigure(_arg1, _arg2); } public function frame(_arg1:Engine, _arg2:Number):void{ } protected function postConfigure(_arg1:Engine, _arg2:EntityConfig):void{ } public function attachComponent(_arg1, _arg2:String):void{ component[_arg2] = _arg1; } public function destroy(_arg1:Engine):void{ var _local2:IComponent; locked = true; _dead = true; for each (_local2 in component) { _local2.destroy(_arg1, this); }; component = null; } public function collide(_arg1:Engine, _arg2:GameObject, _arg3:ContactInfo):void{ } } }//package genius.actor
Section 658
//GameObjectManager (genius.actor.GameObjectManager) package genius.actor { public class GameObjectManager { protected var _root:GameObject; protected var engine:Engine; protected var objectsAdded:Array; protected var lockCount:int; protected var objectsRemoved:Array; public var numObjects:int; protected var deferedClear:Boolean; public function GameObjectManager(_arg1:Engine){ this.engine = _arg1; _root = new GameObject(); _root.makeRoot(); numObjects = 0; lockCount = 0; objectsAdded = new Array(); objectsRemoved = new Array(); deferedClear = false; } public function addObject(_arg1:GameObject):void{ if (lockCount <= 0){ _addObject(_arg1); } else { objectsAdded.push(_arg1); }; } public function clear():void{ if (lockCount <= 0){ _clear(); } else { objectsAdded.length = 0; objectsRemoved.length = 0; deferedClear = true; }; } protected function _clear():void{ assertNoReaders(); while (_root.next != _root) { _destroyObject(_root.next); }; numObjects = 0; } public function query(_arg1:Function):Array{ var obj:GameObject; var filter = _arg1; var result:Array = new Array(); readLock(); try { obj = _root.next; while (obj != _root) { if (((!(obj.dead)) && (filter(obj)))){ result.push(obj); }; obj = obj.next; }; } finally { readUnlock(); }; return (result); } public function _addObject(_arg1:GameObject):void{ _arg1.insertBefore(_root); numObjects = (numObjects + 1); } public function destroyObject(_arg1:GameObject):void{ if (lockCount <= 0){ _destroyObject(_arg1); } else { objectsRemoved.push(_arg1); }; } protected function _destroyObject(_arg1:GameObject):void{ _arg1.unlink(); _arg1.destroy(engine); numObjects = (numObjects - 1); } public function tick(_arg1:Engine, _arg2:Number):void{ var obj:GameObject; var engine = _arg1; var dt = _arg2; readLock(); try { obj = _root.next; while (obj != _root) { if (!obj.dead){ obj.tick(engine, dt); }; obj = obj.next; }; } finally { readUnlock(); }; } protected function readLock():void{ lockCount = (lockCount + 1); } public function get root():GameObject{ return (_root); } protected function assertNoReaders():void{ if (lockCount > 0){ throw (new Error("Cannot modify the object database while it is being read from.")); }; } public function frame(_arg1:Engine, _arg2:Number):void{ var obj:GameObject; var engine = _arg1; var dt = _arg2; readLock(); try { obj = _root.next; while (obj != _root) { if (!obj.dead){ obj.frame(engine, dt); }; obj = obj.next; }; } finally { readUnlock(); }; } protected function syncDefered():void{ var _local1:GameObject; assertNoReaders(); if (deferedClear){ _clear(); objectsRemoved.length = 0; deferedClear = false; }; if (objectsRemoved.length){ for each (_local1 in objectsRemoved) { _destroyObject(_local1); }; objectsRemoved.length = 0; }; if (objectsAdded.length){ for each (_local1 in objectsAdded) { _addObject(_local1); }; objectsAdded.length = 0; }; } protected function readUnlock():void{ lockCount = (lockCount - 1); if (lockCount <= 0){ syncDefered(); }; } } }//package genius.actor
Section 659
//AnimatorState (genius.animation.AnimatorState) package genius.animation { public class AnimatorState { public var callback:Function; public var speed:Number; protected var sampler:BaseSampler; public var value; public var complete:Boolean; protected var phase:Number; public var previousFrame:int; public function AnimatorState(_arg1:BaseSampler, _arg2:Function=null){ this.sampler = _arg1; this.callback = _arg2; phase = 0; speed = 1; complete = false; previousFrame = -1; } public function update(_arg1:Number):void{ var _local2:Number = phase; phase = (phase + (_arg1 * speed)); var _local3:* = value; sampler.update(this, _local2, phase); var _local4:Boolean = (((_local3 == null)) || (sampler.different(_local3, value))); if (((_local4) && (!((callback == null))))){ callback(value); }; } } }//package genius.animation
Section 660
//BaseSampler (genius.animation.BaseSampler) package genius.animation { public class BaseSampler { public var name:String; public var frame:Array; public function different(_arg1, _arg2):Boolean{ return (true); } protected function blend(_arg1, _arg2, _arg3:Number){ } protected function findFrame(_arg1:AnimatorState, _arg2:Number, _arg3:Number):int{ var _local4:int; _local4 = (_arg1.previousFrame + 1); while (_local4 < frame.length) { if (frame[_local4].time >= _arg3){ break; }; _local4++; }; _local4--; _arg1.previousFrame = _local4; return (_local4); } protected function interpolate(_arg1:Number, _arg2:int){ var _local3:SamplerFrame = frame[_arg2]; var _local4:SamplerFrame = frame[(_arg2 + 1)]; var _local5:Number = ((_arg1 - _local3.time) / (_local4.time - _local3.time)); return (blend(_local3.value, _local4.value, _local5)); } public function update(_arg1:AnimatorState, _arg2:Number, _arg3:Number):void{ var _local4:int = findFrame(_arg1, _arg2, _arg3); if (_local4 == -1){ _arg1.complete = false; _arg1.value = frame[0].value; } else { if (_local4 >= (frame.length - 1)){ _arg1.complete = true; _arg1.value = frame[(frame.length - 1)].value; } else { _arg1.complete = false; _arg1.value = interpolate(_arg3, _local4); }; }; } } }//package genius.animation
Section 661
//ColorSampler (genius.animation.ColorSampler) package genius.animation { public class ColorSampler extends BaseSampler { override public function different(_arg1, _arg2):Boolean{ return (!(_arg1.equals(_arg2))); } override protected function blend(_arg1, _arg2, _arg3:Number){ return (_arg1.lerp(_arg2, _arg3)); } } }//package genius.animation
Section 662
//FloatSampler (genius.animation.FloatSampler) package genius.animation { public class FloatSampler extends BaseSampler { override public function different(_arg1, _arg2):Boolean{ return (!(((_arg1 as Number) == (_arg2 as Number)))); } override protected function blend(_arg1, _arg2, _arg3:Number){ return (((_arg1 * (1 - _arg3)) + (_arg2 * _arg3))); } } }//package genius.animation
Section 663
//SamplerFrame (genius.animation.SamplerFrame) package genius.animation { public class SamplerFrame { public var value; public var time:Number; } }//package genius.animation
Section 664
//BaseBuild (genius.build.BaseBuild) package genius.build { public class BaseBuild { public var config; protected var root; public function BaseBuild(_arg1, _arg2){ this.root = _arg1; this.config = _arg2; } public function showAd(_arg1:Function, _arg2:Function, _arg3:Function):void{ _arg3(); } public function get adsEnabled():Boolean{ return (config.adsOK); } public function showLeaderboard(_arg1:int=-1, _arg2:Function=null, _arg3:Function=null, _arg4:Function=null):void{ _arg4(); } public function connect(_arg1:Function):void{ } public function get leaderboardEnabled():Boolean{ return (config.leaderboardOK); } } }//package genius.build
Section 665
//MochiBuild (genius.build.MochiBuild) package genius.build { import mochi.as3.*; public class MochiBuild extends BaseBuild { protected var connected:Boolean;// = true public function MochiBuild(_arg1, _arg2){ super(_arg1, _arg2); } override public function showAd(_arg1:Function, _arg2:Function, _arg3:Function):void{ MochiAd.showPreGameAd({clip:root, id:config.mochiAdID, res:config.mochiRes, ad_started:_arg1, ad_finished:_arg2, ad_failed:_arg3, no_progress_bar:true}); } override public function get leaderboardEnabled():Boolean{ return (((config.leaderboardOK) && (connected))); } override public function showLeaderboard(_arg1:int=-1, _arg2:Function=null, _arg3:Function=null, _arg4:Function=null):void{ var _local5:Object = {boardID:config.mochiBoardName, res:config.mochiRes}; if (_arg2 != null){ _local5.onDisplay = _arg2; }; if (_arg3 != null){ _local5.onClose = _arg3; }; if (_arg4 != null){ _local5.onError = _arg4; }; if (_arg1 > 0){ _local5.score = _arg1; _local5.previewScores = true; }; MochiScores.showLeaderboard(_local5); } override public function connect(_arg1:Function):void{ var failClosure:Function; var failCallback = _arg1; failClosure = function (_arg1:String):void{ connected = false; failCallback(_arg1); }; MochiServices.connect(config.mochiAdID, root, failClosure); } } }//package genius.build
Section 666
//AbstractShape (genius.component.shape.AbstractShape) package genius.component.shape { import genius.component.*; import genius.actor.*; import Box2D.Collision.Shapes.*; import genius.util.*; import genius.events.*; public class AbstractShape extends LinkedList implements IComponent { protected var shape:b2Shape; protected var config; protected var body:Body; public var owner:GameObject; protected function handleResize(_arg1:Resize):void{ rebuild(); } public function attach():void{ shape = createNewShape(); body.attachShape(shape); } public function remove():void{ if (shape){ body.removeShape(shape); shape = null; }; } public function configure(_arg1:Engine, _arg2:GameObject, _arg3):void{ owner = _arg2; this.config = _arg3; postConfigure(_arg1, _arg2, _arg3); _arg2.addEventListener(Resize.RESIZE, handleResize); } public function configureShapeDef(_arg1:b2ShapeDef, _arg2):void{ _arg1.density = _arg2.density; _arg1.friction = _arg2.friction; _arg1.restitution = _arg2.restitution; _arg1.isSensor = _arg2.sensor; _arg2.collisionID.configure(_arg1); } public function link(_arg1:Engine, _arg2:GameObject):void{ if (shape){ remove(); }; body = _arg2.getComponent("body", Body); if (body){ body.addShape(this); attach(); } else { unlink(); }; } protected function rebuild():void{ if (body){ if (shape){ remove(); }; attach(); }; } public function destroy(_arg1:Engine, _arg2:GameObject):void{ _arg2.removeEventListener(Resize.RESIZE, handleResize); } protected function createNewShape():b2Shape{ return (null); } protected function postConfigure(_arg1:Engine, _arg2:GameObject, _arg3):void{ } public function setEnabled(_arg1:Boolean):void{ if (body){ if (((_arg1) && (!(shape)))){ attach(); } else { if (((!(_arg1)) && (shape))){ remove(); }; }; }; } } }//package genius.component.shape
Section 667
//BoxShape (genius.component.shape.BoxShape) package genius.component.shape { import genius.component.*; import flash.geom.*; import Box2D.Collision.Shapes.*; import Box2D.Common.Math.*; public class BoxShape extends AbstractShape { override protected function createNewShape():b2Shape{ var _local2:Point; var _local3:Rectangle; var _local4:b2Shape; var _local1:Placement = owner.getComponent("placement", Placement); if (_local1){ _local2 = _local1.scale; }; _local2 = new Point(1, 1); _local3 = new Rectangle(((-(config.size.x) * _local1.scale.x) * 0.5), ((-(config.size.y) * _local1.scale.y) * 0.5), (config.size.x * _local1.scale.x), (config.size.y * _local1.scale.y)); var _local5:b2PolygonDef = new b2PolygonDef(); _local5.vertexCount = 4; _local5.vertices[0] = new b2Vec2(_local3.x, _local3.y); _local5.vertices[1] = new b2Vec2((_local3.x + _local3.width), _local3.y); _local5.vertices[2] = new b2Vec2((_local3.x + _local3.width), (_local3.y + _local3.height)); _local5.vertices[3] = new b2Vec2(_local3.x, (_local3.y + _local3.height)); configureShapeDef(_local5, config); _local4 = b2Shape.Create(_local5, null); _local4.SetUserData(this); return (_local4); } } }//package genius.component.shape
Section 668
//CircleShape (genius.component.shape.CircleShape) package genius.component.shape { import genius.component.*; import genius.actor.*; import Box2D.Collision.Shapes.*; public class CircleShape extends AbstractShape { protected var radius:Number; public function setRadius(_arg1:Number):void{ radius = _arg1; rebuild(); } override protected function postConfigure(_arg1:Engine, _arg2:GameObject, _arg3):void{ radius = _arg3.radius; } override protected function createNewShape():b2Shape{ var _local2:Number; var _local1:Placement = owner.getComponent("placement", Placement); if (_local1){ _local2 = _local1.scale.length; }; _local2 = 1; var _local3:Number = (radius * _local2); var _local4:b2CircleDef = new b2CircleDef(); _local4.radius = _local3; configureShapeDef(_local4, config); var _local5:b2Shape = b2Shape.Create(_local4, null); _local5.SetUserData(this); return (_local5); } } }//package genius.component.shape
Section 669
//PolygonShape (genius.component.shape.PolygonShape) package genius.component.shape { import genius.component.*; import Box2D.Collision.Shapes.*; import Box2D.Common.Math.*; public class PolygonShape extends AbstractShape { override protected function createNewShape():b2Shape{ var _local4:b2Shape; var _local5:*; var _local1:Placement = owner.getComponent("placement", Placement); var _local2:b2PolygonDef = new b2PolygonDef(); _local2.vertexCount = config.vertex.length; _local2.vertices.length = config.vertex.length; var _local3:int; while (_local3 < config.vertex.length) { _local5 = config.vertex[_local3]; _local2.vertices[_local3] = new b2Vec2((_local5.x * _local1.scale.x), (_local5.y * _local1.scale.y)); _local3++; }; configureShapeDef(_local2, config); _local4 = b2Shape.Create(_local2, null); _local4.SetUserData(this); return (_local4); } } }//package genius.component.shape
Section 670
//Body (genius.component.Body) package genius.component { import flash.geom.*; import genius.actor.*; import Box2D.Collision.Shapes.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import genius.util.*; import genius.events.*; import genius.physics.*; import genius.component.shape.*; public class Body extends LinkedList implements IComponent { protected var config; protected var body:b2Body; public var shapeRoot:AbstractShape; public var affectedByGravity:Boolean; protected var manager:BodyManager; protected var isKinematic:Boolean;// = false protected static var infiniteMass:b2MassData = new b2MassData(); public function addShape(_arg1:AbstractShape):void{ _arg1.insertBefore(shapeRoot); } public function destroy(_arg1:Engine, _arg2:GameObject):void{ _arg2.removeEventListener(SetPosition.SET_POSITION, handleSetPosition); _arg2.removeEventListener(SetVelocity.SET_VELOCITY, handleSetVelocity); body.GetWorld().DestroyBody(body); unlink(); } public function setKinematic(_arg1:Boolean):void{ if (_arg1 != isKinematic){ isKinematic = _arg1; if (isKinematic){ body.SetMass(infiniteMass); } else { body.SetMassFromShapes(); }; }; } public function set angularVelocity(_arg1:Number):void{ return (body.SetAngularVelocity(_arg1)); } public function set linearVelocity(_arg1:Point):void{ return (body.SetLinearVelocity(new b2Vec2(_arg1.x, _arg1.y))); } public function destroyShapes():void{ body.DestroyShape(body.GetShapeList()); if (body.m_shapeList != null){ throw (new Error(String(body.m_shapeList))); }; } public function get linearVelocity():Point{ return (PhysicsUtil.convertPoint(body.GetLinearVelocity())); } public function get angle():Number{ return (body.GetAngle()); } protected function handleSetVelocity(_arg1:SetVelocity):void{ body.SetLinearVelocity(new b2Vec2(_arg1.x, _arg1.y)); body.SetAngularVelocity(_arg1.angle); } public function setFreeze(_arg1:Number):void{ var _local2:Number = (1 - _arg1); body.m_linearDamping = ((config.linearDamping * _local2) + (5 * _arg1)); body.m_angularDamping = ((config.angularDamping * _local2) + (3 * _arg1)); } public function sync():void{ var _local1:GameObject = body.GetUserData(); var _local2:Point = position; var _local3:Placement = _local1.getComponent("placement", Placement); if (_local3){ _local3.position.x = _local2.x; _local3.position.y = _local2.y; _local3.angle = angle; _local3.dirty = true; } else { trace("No placement?", _local1); }; } public function attachShape(_arg1:b2Shape):void{ body.AddShape(_arg1); if (!isKinematic){ body.SetMassFromShapes(); }; } public function applyForce(_arg1:Point, _arg2:Point=null, _arg3:Boolean=false):void{ var _local4:b2Vec2; if (_arg2 == null){ _local4 = body.GetPosition(); } else { _local4 = new b2Vec2(_arg2.x, _arg2.y); }; if (_arg3){ body.ApplyForce(new b2Vec2((_arg1.x * mass), (_arg1.y * mass)), _local4); } else { body.ApplyForce(new b2Vec2(_arg1.x, _arg1.y), _local4); }; } public function get angularVelocity():Number{ return (body.GetAngularVelocity()); } public function predict(_arg1:Number):Point{ var _local2:Point = position; var _local3:Point = linearVelocity; return (new Point((_local2.x + (_local3.x * _arg1)), (_local2.y + (_local3.y * _arg1)))); } public function set position(_arg1:Point):void{ body.SetXForm(new b2Vec2(_arg1.x, _arg1.y), body.GetAngle()); } public function applyImpulse(_arg1:Point, _arg2:Point=null, _arg3:Boolean=false):void{ var _local4:b2Vec2; var _local5:b2Vec2; if (_arg2 == null){ _local4 = body.GetPosition(); } else { _local4 = new b2Vec2(_arg2.x, _arg2.y); }; if (_arg3){ _local5 = new b2Vec2((_arg1.x * mass), (_arg1.y * mass)); } else { _local5 = new b2Vec2(_arg1.x, _arg1.y); }; body.ApplyImpulse(_local5, _local4); } public function get position():Point{ return (PhysicsUtil.convertPoint(body.GetPosition())); } public function get transform():Matrix{ return (PhysicsUtil.convertMatrix(body.m_xf)); } public function setTransform(_arg1:Point, _arg2:Number):void{ body.SetXForm(new b2Vec2(_arg1.x, _arg1.y), _arg2); } protected function handleSetPosition(_arg1:SetPosition):void{ body.SetXForm(new b2Vec2(_arg1.x, _arg1.y), _arg1.angle); } public function get mass():Number{ return (body.m_mass); } public function configure(_arg1:Engine, _arg2:GameObject, _arg3):void{ var _local4:b2BodyDef; manager = _arg1.managers["body"]; insertBefore(manager.root); this.config = _arg3; _local4 = new b2BodyDef(); _local4.position.x = _arg3.position.x; _local4.position.y = _arg3.position.y; _local4.angle = _arg3.angle; _local4.linearDamping = _arg3.linearDamping; _local4.angularDamping = _arg3.angularDamping; _local4.isBullet = _arg3.bullet; body = manager.world.CreateBody(_local4); body.SetLinearVelocity(new b2Vec2(_arg3.velocity.x, _arg3.velocity.y)); body.SetAngularVelocity(_arg3.angularVelocity); body.SetUserData(_arg2); affectedByGravity = _arg3.gravity; setKinematic(_arg3.kinematic); _arg2.addEventListener(SetPosition.SET_POSITION, handleSetPosition); _arg2.addEventListener(SetVelocity.SET_VELOCITY, handleSetVelocity); shapeRoot = new AbstractShape(); shapeRoot.makeRoot(); } public function link(_arg1:Engine, _arg2:GameObject):void{ } public function removeShape(_arg1:b2Shape):void{ body.DestroyShape(_arg1); if (!isKinematic){ body.SetMassFromShapes(); }; } public function set angle(_arg1:Number):void{ body.SetXForm(body.GetPosition(), _arg1); } public function setEnabled(_arg1:Boolean):void{ body.IsFrozen(); } } }//package genius.component
Section 671
//BodyManager (genius.component.BodyManager) package genius.component { import flash.geom.*; import Box2D.Collision.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import genius.physics.*; import Box2D.Dynamics.Contacts.*; public class BodyManager implements ComponentManager { public var root:Body; public var gravity:Point; public var worldAABB:b2AABB; protected var contactListener:ContactListener; public var world:b2World; public function BodyManager(){ root = new Body(); root.makeRoot(); worldAABB = new b2AABB(); worldAABB.lowerBound.Set(-1000, -1000); worldAABB.upperBound.Set(1000, 1000); world = new b2World(worldAABB, new b2Vec2(0, 0), true); contactListener = new ContactListener(); world.SetContactListener(contactListener); } public function updateGravity(_arg1:Number):void{ if (gravity == null){ return; }; var _local2:Body = root.next; while (_local2 != root) { if (_local2.affectedByGravity){ _local2.applyForce(gravity, null, true); }; _local2 = _local2.next; }; } public function update(_arg1:Engine, _arg2:Number):void{ updateGravity(_arg2); world.Step(_arg2, 10); sync(); handleContacts(_arg1); } public function handleContacts(_arg1:Engine):void{ var _local3:ContactInfo; var _local2:b2Contact = world.m_contactList; while (_local2 != null) { if (!_local2.IsSolid()){ _local3 = new ContactInfo(_local2.m_shape1.GetUserData().owner, _local2.m_shape2.GetUserData().owner, new Point(), new Point(), _local2.m_restitution, _local2.m_friction, _local2.IsSolid()); contactListener.collisions.push(_local3); }; _local2 = _local2.m_next; }; contactListener.dispatch(_arg1); } public function componentName():String{ return ("body"); } public function sync():void{ var _local1:Body = root.next; while (_local1 != root) { _local1.sync(); _local1 = _local1.next; }; } } }//package genius.component
Section 672
//Component (genius.component.Component) package genius.component { import genius.actor.*; public class Component implements IComponent { public function link(_arg1:Engine, _arg2:GameObject):void{ } public function destroy(_arg1:Engine, _arg2:GameObject):void{ } public function configure(_arg1:Engine, _arg2:GameObject, _arg3):void{ } } }//package genius.component
Section 673
//ComponentManager (genius.component.ComponentManager) package genius.component { public interface ComponentManager { function componentName():String; } }//package genius.component
Section 674
//IComponent (genius.component.IComponent) package genius.component { import genius.actor.*; public interface IComponent { function destroy(_arg1:Engine, _arg2:GameObject):void; function link(_arg1:Engine, _arg2:GameObject):void; function configure(_arg1:Engine, _arg2:GameObject, _arg3):void; } }//package genius.component
Section 675
//Name (genius.component.Name) package genius.component { import genius.actor.*; public class Name implements IComponent { public var owner:GameObject; public var name:String; public function link(_arg1:Engine, _arg2:GameObject):void{ } public function destroy(_arg1:Engine, _arg2:GameObject):void{ _arg1.managers["name"].unregister(this); } public function configure(_arg1:Engine, _arg2:GameObject, _arg3):void{ owner = _arg2; name = _arg3.name; _arg1.managers["name"].register(this); } } }//package genius.component
Section 676
//NameManager (genius.component.NameManager) package genius.component { import genius.actor.*; public class NameManager implements ComponentManager { protected var lut:Object; public function NameManager(){ lut = new Object(); super(); } public function lookup(_arg1:String):GameObject{ var _local2:Name = lut[_arg1]; if (_local2){ return (_local2.owner); }; return (null); } public function componentName():String{ return ("name"); } public function register(_arg1:Name):void{ lut[_arg1.name] = _arg1; } public function unregister(_arg1:Name):void{ if (lut[_arg1.name] === _arg1){ delete lut[_arg1.name]; }; } } }//package genius.component
Section 677
//Placement (genius.component.Placement) package genius.component { import flash.geom.*; import genius.actor.*; import genius.events.*; public class Placement extends Component { protected var localTransform:Matrix; public var position:Point; public var scale:Point; public var dirty:Boolean;// = false public var angle:Number;// = 0 public function Placement(){ position = new Point(0, 0); scale = new Point(1, 1); localTransform = new Matrix(); super(); } protected function recalculate():void{ if (dirty){ localTransform.identity(); localTransform.scale(scale.x, scale.y); localTransform.rotate(angle); localTransform.translate(position.x, position.y); dirty = false; }; } protected function handleSetPosition(_arg1:SetPosition):void{ position.x = _arg1.x; position.y = _arg1.y; angle = _arg1.angle; dirty = true; } protected function handleResize(_arg1:Resize):void{ scale.x = _arg1.width; scale.y = _arg1.height; dirty = true; } public function get transform():Matrix{ recalculate(); return (localTransform); } override public function configure(_arg1:Engine, _arg2:GameObject, _arg3):void{ position.x = _arg3.position.x; position.y = _arg3.position.y; angle = _arg3.angle; dirty = true; _arg2.addEventListener(SetPosition.SET_POSITION, handleSetPosition); _arg2.addEventListener(Resize.RESIZE, handleResize); } override public function destroy(_arg1:Engine, _arg2:GameObject):void{ _arg2.removeEventListener(SetPosition.SET_POSITION, handleSetPosition); _arg2.removeEventListener(Resize.RESIZE, handleResize); } } }//package genius.component
Section 678
//ButtonEvent (genius.events.ButtonEvent) package genius.events { public class ButtonEvent { public var state:Boolean; public var code:int; public function ButtonEvent(_arg1:int, _arg2:Boolean){ this.code = _arg1; this.state = _arg2; } public function matches(_arg1, _arg2:Boolean):Boolean{ return ((((Input.translateCode(_arg1) == this.code)) && ((_arg2 == this.state)))); } public function get name():String{ return (Input.codeToText[this.code]); } } }//package genius.events
Section 679
//GameEvent (genius.events.GameEvent) package genius.events { public class GameEvent { public var type:String; public function GameEvent(_arg1:String){ this.type = _arg1; } public static function id():String{ return (null); } } }//package genius.events
Section 680
//Input (genius.events.Input) package genius.events { import flash.events.*; import flash.geom.*; import flash.display.*; import flash.ui.*; public class Input { public var bufferEvents:Boolean;// = false public var events:Array; public var mouseOver:Boolean;// = true protected var _mouseVisible:Boolean;// = true public var _mousePosition:Point; public var keyState:Array; public var listener; public static var lShiftCode:int; public static var lCtrlCode:int; public static var init:Boolean = false; public static var rCtrlCode:int; public static var mouseCode:int; public static var textToCode:Object; public static var codeToText:Array; public static var rShiftCode:int; public function Input(_arg1:DisplayObject){ _mousePosition = new Point(); super(); if (!init){ initStatic(); }; keyState = new Array(); var _local2:int; while (_local2 < codeToText.length) { keyState.push(false); _local2++; }; events = new Array(); attach(_arg1); } protected function enqueEvent(_arg1:int, _arg2:Boolean):void{ var _local3:ButtonEvent = new ButtonEvent(_arg1, _arg2); if (bufferEvents){ events.push(_local3); } else { listener.buttonEvent(_local3); }; } public function keyPressed(_arg1:KeyboardEvent):void{ var _local2:int = getKeyID(_arg1); eventPressed(_local2); } public function getKeyID(_arg1:KeyboardEvent):int{ if (_arg1.keyCode == 16){ if (_arg1.keyLocation == KeyLocation.LEFT){ return (lShiftCode); }; return (rShiftCode); } else { if (_arg1.keyCode == 17){ if (_arg1.keyLocation == KeyLocation.LEFT){ return (lCtrlCode); }; return (rCtrlCode); } else { }; }; return (!NULL!); } protected function attach(_arg1:DisplayObject):void{ _arg1.stage.addEventListener(KeyboardEvent.KEY_DOWN, keyPressed, false, 0, true); _arg1.stage.addEventListener(KeyboardEvent.KEY_UP, keyReleased, false, 0, true); _arg1.addEventListener(MouseEvent.MOUSE_DOWN, mousePressed, false, 0, true); _arg1.addEventListener(MouseEvent.MOUSE_UP, mouseReleased, false, 0, true); _arg1.addEventListener(MouseEvent.MOUSE_MOVE, mouseMove, false, 0, true); _arg1.addEventListener(MouseEvent.ROLL_OVER, mouseEnter, false, 0, true); _arg1.addEventListener(MouseEvent.ROLL_OUT, mouseExit, false, 0, true); _arg1.stage.addEventListener(Event.MOUSE_LEAVE, mouseLeave, false, 0, true); _arg1.addEventListener(FocusEvent.FOCUS_IN, focusIn, false, 0, true); _arg1.addEventListener(FocusEvent.FOCUS_OUT, focusOut, false, 0, true); _mousePosition.x = _arg1.stage.mouseX; _mousePosition.y = _arg1.stage.mouseY; } public function mouseReleased(_arg1:MouseEvent):void{ updateMousePosition(_arg1); eventReleased(mouseCode); } protected function eventPressed(_arg1:int):void{ if (!keyState[_arg1]){ enqueEvent(_arg1, true); }; keyState[_arg1] = true; } public function get mouseVisible():Boolean{ return (_mouseVisible); } public function mouseLeave(_arg1):void{ trace("mouse leave"); } public function focusOut(_arg1:FocusEvent):void{ trace("focus out", _arg1.keyCode); } public function set mouseVisible(_arg1:Boolean):void{ _mouseVisible = _arg1; syncMouseState(); } public function focusIn(_arg1:FocusEvent):void{ trace("focus in", _arg1.keyCode); } public function pressed(_arg1):Boolean{ return (keyState[translateCode(_arg1)]); } public function mouseExit(_arg1:MouseEvent):void{ trace("mouse exit"); mouseOver = false; Mouse.show(); } protected function updateMousePosition(_arg1:MouseEvent):void{ _mousePosition.x = _arg1.stageX; _mousePosition.y = _arg1.stageY; } protected function syncMouseState():void{ if (_mouseVisible){ Mouse.show(); } else { Mouse.hide(); }; } public function frame(_arg1:Engine, _arg2:Number):void{ var _local3:ButtonEvent; _mousePosition.x = _arg1.game.stage.mouseX; _mousePosition.y = _arg1.game.stage.mouseY; if (listener){ for each (_local3 in events) { listener.buttonEvent(_local3); }; }; events.length = 0; } public function get mousePosition():Point{ return (_mousePosition); } protected function eventReleased(_arg1:int):void{ if (keyState[_arg1]){ enqueEvent(_arg1, false); }; keyState[_arg1] = false; } public function mouseMove(_arg1:MouseEvent):void{ updateMousePosition(_arg1); } public function mouseEnter(_arg1:MouseEvent):void{ trace("mouse enter"); mouseOver = true; syncMouseState(); } public function keyReleased(_arg1:KeyboardEvent):void{ var _local2:int = getKeyID(_arg1); eventReleased(_local2); } public function mousePressed(_arg1:MouseEvent):void{ updateMousePosition(_arg1); eventPressed(mouseCode); } protected static function addCode(_arg1:String):int{ codeToText.push(_arg1); return ((codeToText.length - 1)); } public static function translateCode(_arg1):int{ if ((_arg1 is String)){ return (textToCode[_arg1.toLowerCase()]); }; return (_arg1); } public static function initStatic():void{ var _local1:int; codeToText = new Array(); _local1 = 0; while (_local1 < 0x0100) { codeToText.push(String.fromCharCode(_local1)); _local1++; }; codeToText[8] = "Backspace"; codeToText[9] = "Tab"; codeToText[13] = "Enter"; codeToText[16] = "Shift"; codeToText[17] = "Ctrl"; codeToText[19] = "Pause"; codeToText[20] = "Caps Lock"; codeToText[27] = "Esc"; codeToText[32] = "Spacebar"; codeToText[33] = "Page Up"; codeToText[34] = "Page Down"; codeToText[35] = "End"; codeToText[36] = "Home"; codeToText[37] = "Left"; codeToText[38] = "Up"; codeToText[39] = "Right"; codeToText[40] = "Down"; codeToText[45] = "Insert"; codeToText[46] = "Delete"; codeToText[96] = "Numpad 0"; codeToText[97] = "Numpad 1"; codeToText[98] = "Numpad 2"; codeToText[99] = "Numpad 3"; codeToText[100] = "Numpad 4"; codeToText[101] = "Numpad 5"; codeToText[102] = "Numpad 6"; codeToText[103] = "Numpad 7"; codeToText[104] = "Numpad 8"; codeToText[105] = "Numpad 9"; codeToText[111] = "Numpad /"; codeToText[106] = "Numpad *"; codeToText[109] = "Numpad -"; codeToText[107] = "Numpad +"; codeToText[110] = "Numpad ."; codeToText[112] = "F1"; codeToText[113] = "F2"; codeToText[114] = "F3"; codeToText[115] = "F4"; codeToText[116] = "F5"; codeToText[117] = "F6"; codeToText[118] = "F7"; codeToText[119] = "F8"; codeToText[120] = "F9"; codeToText[121] = "F10"; codeToText[122] = "F11"; codeToText[123] = "F12"; codeToText[144] = "Num Lock"; codeToText[145] = "Scroll Lock"; codeToText[186] = ";"; codeToText[187] = "+"; codeToText[188] = ","; codeToText[189] = "-"; codeToText[190] = "."; codeToText[191] = "/"; codeToText[192] = "~"; codeToText[219] = "["; codeToText[220] = "\\"; codeToText[221] = "]"; codeToText[222] = "'"; lShiftCode = addCode("Left Shift"); rShiftCode = addCode("Right Shift"); lCtrlCode = addCode("Left Ctrl"); rCtrlCode = addCode("Right Ctrl"); mouseCode = addCode("Mouse Button"); textToCode = new Object(); _local1 = 0; while (_local1 < codeToText.length) { textToCode[codeToText[_local1]] = _local1; textToCode[codeToText[_local1].toLowerCase()] = _local1; _local1++; }; init = true; } } }//package genius.events
Section 681
//Resize (genius.events.Resize) package genius.events { import genius.actor.*; public class Resize extends GameEvent { public var width:Number; public var height:Number; protected static var evt:Resize = new Resize(1, 1); ; public static var RESIZE:String = "bc_resize"; public function Resize(_arg1:Number, _arg2:Number){ super(RESIZE); this.width = _arg1; this.height = _arg2; } public static function dispatch(_arg1:GameObject, _arg2:Number, _arg3:Number):void{ evt.width = _arg2; evt.height = _arg3; _arg1._dispatchEvent(evt); } public static function id():String{ return (RESIZE); } } }//package genius.events
Section 682
//SetPosition (genius.events.SetPosition) package genius.events { import genius.actor.*; public class SetPosition extends GameEvent { public var angle:Number; public var x:Number; public var y:Number; protected static var evt:SetPosition = new SetPosition(0, 0, 0); ; public static var SET_POSITION:String = "bc_set_position"; public function SetPosition(_arg1:Number, _arg2:Number, _arg3:Number){ super(SET_POSITION); this.x = _arg1; this.y = _arg2; this.angle = _arg3; } public static function dispatch(_arg1:GameObject, _arg2:Number, _arg3:Number, _arg4:Number):void{ evt.x = _arg2; evt.y = _arg3; evt.angle = _arg4; _arg1._dispatchEvent(evt); } public static function id():String{ return (SET_POSITION); } } }//package genius.events
Section 683
//SetVelocity (genius.events.SetVelocity) package genius.events { import genius.actor.*; public class SetVelocity extends GameEvent { public var angle:Number; public var x:Number; public var y:Number; protected static var evt:SetVelocity = new SetVelocity(0, 0, 0); ; public static var SET_VELOCITY:String = "bc_set_velocity"; public function SetVelocity(_arg1:Number, _arg2:Number, _arg3:Number){ super(SET_VELOCITY); this.x = _arg1; this.y = _arg2; this.angle = _arg3; } public static function dispatch(_arg1:GameObject, _arg2:Number, _arg3:Number, _arg4:Number):void{ evt.x = _arg2; evt.y = _arg3; evt.angle = _arg4; _arg1._dispatchEvent(evt); } public static function id():String{ return (SET_VELOCITY); } } }//package genius.events
Section 684
//Game (genius.game.Game) package genius.game { import flash.events.*; import flash.display.*; import genius.build.*; public class Game extends Sprite { public var screenWidth:int; public var engine:Engine; protected var doPush:Boolean;// = false protected var doPop:Boolean;// = false protected var gameletStack:Array; public var gamelets:Object; public var rootDirectory:String; public var build:BaseBuild; protected var currentGamelet:Gamelet;// = null public var screenHeight:int; protected var nextGamelet:String;// = null public function Game(){ gamelets = new Object(); gameletStack = new Array(); super(); } public function addGamelet(_arg1:String, _arg2:Gamelet):void{ _arg2.init(this, engine); gamelets[_arg1] = _arg2; } protected function update():void{ if (nextGamelet){ if (doPush){ gameletStack.push(currentGamelet); }; _activateGamelet(gamelets[nextGamelet]); clear(); } else { if (doPop){ _activateGamelet(gameletStack.pop()); clear(); }; }; } protected function run(_arg1:Event):void{ update(); currentGamelet.run(); } public function clear():void{ nextGamelet = null; doPush = false; doPop = false; } public function popGamelet():void{ clear(); doPop = true; } public function everythingLoaded():void{ } public function pushGamelet(_arg1:String):void{ clear(); nextGamelet = _arg1; doPush = true; } protected function _activateGamelet(_arg1:Gamelet):void{ if (currentGamelet != null){ currentGamelet.deactivate(); removeChild(currentGamelet); }; currentGamelet = _arg1; if (currentGamelet != null){ currentGamelet.activate(); addChild(currentGamelet); }; engine.input.listener = currentGamelet; } public function get current():Gamelet{ return (currentGamelet); } public function activateGamelet(_arg1:String):void{ clear(); nextGamelet = _arg1; } } }//package genius.game
Section 685
//Gamelet (genius.game.Gamelet) package genius.game { import flash.display.*; import genius.events.*; import flash.utils.*; public class Gamelet extends Sprite { protected var doRender:Boolean;// = true protected var engine:Engine; protected var buttonDispatch:Dictionary; protected var doAnimate:Boolean;// = true protected var doSimulate:Boolean;// = true protected var game:Game; protected var timeScale:Number;// = 1 public function Gamelet(){ buttonDispatch = new Dictionary(); super(); } protected function runAnimation():void{ var _local1:Number = engine.timer.dt; var _local2:Number = (_local1 * timeScale); engine.monitor.begin("animate"); engine.gameplay.frame(_local2); frame(_local2); engine.gom.frame(engine, _local2); if (engine.managers.gui){ engine.managers.gui.update(engine, _local2); }; engine.monitor.end("animate"); } public function buttonEvent(_arg1):void{ var _local2:Object; trace("Button Event", _arg1.code, _arg1.name, _arg1.state); if ((_arg1.code in buttonDispatch)){ _local2 = buttonDispatch[_arg1.code]; if (((_arg1.state) && (!((_local2.down == null))))){ _local2.down(_arg1); }; if (((!(_arg1.state)) && (!((_local2.up == null))))){ _local2.up(_arg1); }; }; } public function setupButtons(_arg1):void{ var _local2:*; buttonDispatch = new Dictionary(); for each (_local2 in _arg1.bind) { bindButton(_local2.button, _local2.handler, _local2.down, _local2.up); }; } public function bindButton(_arg1:String, _arg2:String, _arg3:Boolean, _arg4:Boolean):void{ var _local5:int = Input.translateCode(_arg1); if (!(_local5 in buttonDispatch)){ buttonDispatch[_local5] = {up:null, down:null}; }; var _local6:Function = this[_arg2]; if (_arg3){ buttonDispatch[_local5].down = _local6; }; if (_arg4){ buttonDispatch[_local5].up = _local6; }; } public function init(_arg1:Game, _arg2:Engine):void{ this.game = _arg1; this.engine = _arg2; } public function run():void{ engine.timer.newFrame(); engine.monitor.beginFrame(); engine.monitor.begin("frame"); runInput(); if (doSimulate){ runSimulation(); }; if (doAnimate){ runAnimation(); }; if (doRender){ runRender(); }; engine.monitor.end("frame"); } public function render():void{ } protected function runRender():void{ engine.monitor.begin("render"); render(); engine.monitor.end("render"); } public function frame(_arg1:Number):void{ } public function activate():void{ } public function deactivate():void{ } public function tick(_arg1:Number):void{ } protected function runSimulation():void{ var _local3:Number; var _local1:Number = engine.timer.tickTime; var _local2:int; while (_local2 < engine.timer.ticks) { _local3 = (_local1 * timeScale); engine.monitor.begin("simulate"); engine.gameplay.tick(_local3); tick(_local3); engine.gom.tick(engine, _local3); engine.monitor.end("simulate"); engine.monitor.begin("physics"); if (engine.managers.thruster){ engine.managers.thruster.update(engine, _local3); }; if (engine.managers.swarm){ engine.monitor.begin("swarm"); engine.managers.swarm.update(engine, _local3); engine.monitor.end("swarm"); }; engine.managers.body.update(engine, _local3); engine.monitor.end("physics"); _local2++; }; } protected function runInput():void{ var _local1:Number = engine.timer.dt; engine.input.frame(engine, _local1); } } }//package genius.game
Section 686
//RGBAColor (genius.graphics.colors.RGBAColor) package genius.graphics.colors { public class RGBAColor { public var b:Number; protected var _color:uint; public var g:Number; public var a:Number; public var r:Number; public function RGBAColor(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number=1){ setColor(_arg1, _arg2, _arg3, _arg4); } public function setColor(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number=1):void{ this.r = _arg1; this.g = _arg2; this.b = _arg3; this.a = _arg4; recomputeColor(); } public function get color():uint{ return (_color); } public function equals(_arg1:RGBAColor):Boolean{ return ((((((((r == _arg1.r)) && ((g == _arg1.g)))) && ((b == _arg1.b)))) && ((a == _arg1.a)))); } public function scale(_arg1:Number):RGBAColor{ return (new RGBAColor((r * _arg1), (g * _arg1), (b * _arg1), a)); } public function toString():String{ return ((((((((("[color " + String(this.r)) + " ") + String(this.g)) + " ") + String(this.b)) + " ") + String(this.a)) + "]")); } public function add(_arg1:RGBAColor):RGBAColor{ return (new RGBAColor((r + _arg1.r), (g + _arg1.g), (b + _arg1.b), (a + _arg1.a))); } protected function conv(_arg1:Number):uint{ return (uint(Math.min(Math.max(0, (_arg1 * 0xFF)), 0xFF))); } public function lerp(_arg1:RGBAColor, _arg2:Number):RGBAColor{ var _local3:Number = (1 - _arg2); return (new RGBAColor(((r * _local3) + (_arg1.r * _arg2)), ((g * _local3) + (_arg1.g * _arg2)), ((b * _local3) + (_arg1.b * _arg2)), ((a * _local3) + (_arg1.a * _arg2)))); } protected function recomputeColor():void{ _color = (((conv(r) << 16) + (conv(g) << 8)) + conv(b)); } } }//package genius.graphics.colors
Section 687
//DisplayRenderable (genius.graphics.renderable.DisplayRenderable) package genius.graphics.renderable { import genius.graphics.*; import flash.display.*; public class DisplayRenderable extends RenderableComponent { protected var drawable:IBitmapDrawable; public function DisplayRenderable(_arg1:IBitmapDrawable){ drawable = _arg1; } override public function draw(_arg1:RenderingEngine):void{ sync(); _arg1.draw(drawable, transform, shader); } } }//package genius.graphics.renderable
Section 688
//RenderableComponent (genius.graphics.renderable.RenderableComponent) package genius.graphics.renderable { import genius.component.*; import flash.geom.*; import genius.actor.*; import genius.graphics.*; public class RenderableComponent implements IComponent, IRenderable2D { public var enabled:Boolean;// = true protected var scene:Scene2D; public var shader:VectorShader; protected var go:GameObject; public var transform:Matrix; public function RenderableComponent(){ transform = new Matrix(); super(); } public function draw(_arg1:RenderingEngine):void{ } public function attach(_arg1:Scene2D):void{ detach(); scene = _arg1; scene.addRenderable(this); } public function destroy(_arg1:Engine, _arg2:GameObject):void{ detach(); _arg2 = null; } public function layer():int{ return (shader.layer); } public function link(_arg1:Engine, _arg2:GameObject):void{ } public function detach():void{ if (scene){ scene.removeRenderable(this); scene = null; }; } public function sync():void{ var _local1:Placement; if (go){ _local1 = go.getComponent("placement", Placement); if (_local1){ transform = _local1.transform; }; }; } public function configure(_arg1:Engine, _arg2:GameObject, _arg3):void{ this.go = _arg2; attach(_arg1.mainScene); } public function isEnabled():Boolean{ return (enabled); } } }//package genius.graphics.renderable
Section 689
//SpriteRenderable (genius.graphics.renderable.SpriteRenderable) package genius.graphics.renderable { import flash.geom.*; import genius.actor.*; import genius.graphics.*; public class SpriteRenderable extends RenderableComponent { public var size:Point; protected var m:Matrix; public var textureTransform:Matrix; public var center:Point; protected var phase:Number; public function SpriteRenderable(){ textureTransform = new Matrix(); super(); } override public function draw(_arg1:RenderingEngine):void{ sync(); m.identity(); if (shader.texture){ m.concat(shader.texture.transform); }; m.concat(textureTransform); var _local2:Matrix = new Matrix(size.x, 0, 0, size.y, ((-0.5 * size.x) - center.x), ((-0.5 * size.y) - center.y)); m.concat(_local2); m.concat(transform); _arg1.drawTexture(shader.texture, m, shader); } override public function configure(_arg1:Engine, _arg2:GameObject, _arg3):void{ super.configure(_arg1, _arg2, _arg3); center = _arg3.center.clone(); size = _arg3.size.clone(); shader = _arg3.shader.clone(); enabled = _arg3.enabled; textureTransform.identity(); if (_arg3.flipX){ textureTransform.concat(new Matrix(-1, 0, 0, 1, 1, 0)); }; if (_arg3.flipY){ textureTransform.concat(new Matrix(1, 0, 0, -1, 0, 1)); }; m = new Matrix(); phase = 0; } } }//package genius.graphics.renderable
Section 690
//TextImpostor (genius.graphics.renderable.TextImpostor) package genius.graphics.renderable { import flash.geom.*; import flash.display.*; import genius.util.*; public class TextImpostor { protected var oldScale:Number;// = 0 public var place:Matrix; public var data:BitmapData; public function build(_arg1:DisplayObject, _arg2:Matrix):void{ var _local5:int; var _local6:int; var _local7:Matrix; var _local3:Number = MathUtil.matrixScale(_arg2); if (_local3 == 0){ return; }; var _local4:Number = ((_local3 - oldScale) / _local3); _local4 = (((_local3 - oldScale) / _local3) * _local4); if (((!(data)) || ((_local4 >= 1E-7)))){ _local5 = Math.ceil((_arg1.width * _local3)); _local6 = Math.ceil((_arg1.height * _local3)); prepareBitmap(_local5, _local6); _local7 = new Matrix(1, 0, 0, 1, -(_arg1.x), -(_arg1.y)); _local7.scale(_local3, _local3); data.draw(_arg1, _local7); _local7.invert(); place = _local7; oldScale = _local3; }; } protected function prepareBitmap(_arg1:int, _arg2:int):void{ if (((((!(data)) || (!((data.width == _arg1))))) || (!((data.height == _arg2))))){ data = new BitmapData(_arg1, _arg2, true, 0); } else { data.fillRect(new Rectangle(0, 0, _arg1, _arg2), 0); }; } } }//package genius.graphics.renderable
Section 691
//TextRenderable (genius.graphics.renderable.TextRenderable) package genius.graphics.renderable { import flash.geom.*; import genius.actor.*; import genius.graphics.*; import flash.display.*; import flash.utils.*; public class TextRenderable extends RenderableComponent { protected var _size:Number; protected var cache:Dictionary; protected var _text:String; protected var _font:String; protected var center:Point; public var embeddedFont:Boolean; public function get size():Number{ return (_size); } override public function configure(_arg1:Engine, _arg2:GameObject, _arg3):void{ super.configure(_arg1, _arg2, _arg3); center = _arg3.center.clone(); _font = _arg3.font; embeddedFont = _arg3.embeddedFont; _size = _arg3.size; _text = _arg3.text; shader = _arg3.shader.clone(); enabled = _arg3.enabled; invalidateCache(); } public function set size(_arg1:Number):void{ if (_arg1 != _size){ _size = _arg1; invalidateCache(); }; } override public function draw(_arg1:RenderingEngine):void{ sync(); var _local2:Matrix = new Matrix(); _local2.translate(-(center.x), -(center.y)); _local2.concat(transform); _arg1.drawText(this, _local2, shader); } public function get text():String{ return (_text); } public function get font():String{ return (_font); } protected function invalidateCache():void{ cache = new Dictionary(true); } public function set text(_arg1:String):void{ if (_arg1 != _text){ _text = _arg1; invalidateCache(); }; } public function getImpostor(_arg1:DisplayObject, _arg2:Matrix, _arg3:Scene2DView):TextImpostor{ if (!(_arg3 in cache)){ cache[_arg3] = new TextImpostor(); }; var _local4:TextImpostor = cache[_arg3]; _local4.build(_arg1, _arg2); return (_local4); } public function set font(_arg1:String):void{ if (_arg1 != _font){ _font = _arg1; invalidateCache(); }; } } }//package genius.graphics.renderable
Section 692
//BitmapRegion (genius.graphics.BitmapRegion) package genius.graphics { import flash.geom.*; import flash.display.*; public class BitmapRegion { protected var _opaqueOffset:Point; protected var _bitmap:BitmapData; protected var _opaqueRegion:Rectangle; protected var _region:Rectangle; public function BitmapRegion(_arg1:BitmapData, _arg2:Rectangle=null){ if (!_arg2){ _arg2 = new Rectangle(0, 0, _arg1.width, _arg1.height); }; _bitmap = _arg1; _region = _arg2; if (isSubimage()){ _opaqueRegion = _region; } else { if (!_arg1.transparent){ _opaqueRegion = _region; } else { _opaqueRegion = _bitmap.getColorBoundsRect(4278190080, 0, false); }; }; _opaqueOffset = new Point((_opaqueRegion.x - _region.x), (_opaqueRegion.y - _region.y)); } public function get opaqueOffset():Point{ return (_opaqueOffset); } public function isSubimage():Boolean{ return (((((((!((_region.x == 0))) || (!((_region.y == 0))))) || (!((_region.width == _bitmap.width))))) || (!((_region.height == region.height))))); } public function opaqueSubset(_arg1:Rectangle):Rectangle{ var _local2:Number = (_arg1.width / _region.width); var _local3:Number = (_arg1.height / _region.height); return (new Rectangle((_arg1.x + ((opaqueRegion.x - _region.x) * _local2)), (_arg1.y + ((opaqueRegion.y - _region.y) * _local2)), (opaqueRegion.width * _local2), (opaqueRegion.height * _local3))); } public function get bitmap():BitmapData{ return (_bitmap); } public function get opaqueRegion():Rectangle{ return (_opaqueRegion); } public function get region():Rectangle{ return (_region); } } }//package genius.graphics
Section 693
//IRenderable2D (genius.graphics.IRenderable2D) package genius.graphics { public interface IRenderable2D { function layer():int; function draw(_arg1:RenderingEngine):void; function isEnabled():Boolean; } }//package genius.graphics
Section 694
//RenderingEngine (genius.graphics.RenderingEngine) package genius.graphics { import flash.geom.*; import Box2D.Collision.Shapes.*; import Box2D.Collision.*; import Box2D.Common.Math.*; import flash.display.*; import Box2D.Dynamics.*; import genius.util.*; import genius.graphics.colors.*; import genius.graphics.renderable.*; import flash.filters.*; import Box2D.Dynamics.Joints.*; import Box2D.Common.*; import Box2D.Dynamics.Contacts.*; import flash.text.*; public class RenderingEngine { protected var buffer:BitmapData; protected var layers:Array; public var engine:Engine; public var useMipMaps:Boolean; public var useFastPath:Boolean;// = true public var sceneView:Scene2DView; public var clearColor:RGBAColor;// = null protected var transform:Matrix; protected var completeTransform:Matrix; protected static var spriteObj:Sprite = new Sprite(); protected static var bitmapObj:Bitmap = new Bitmap(); protected static var textObj:TextField = new TextField(); public function RenderingEngine(_arg1:int, _arg2:int){ transform = new Matrix(); completeTransform = new Matrix(); super(); sceneView = new Scene2DView(); sceneView.viewport(0, 0, _arg1, _arg2); buffer = new BitmapData(_arg1, _arg2, false); layers = new Array(); var _local3:int; while (_local3 < 10) { layers.push(new Array()); _local3++; }; setCamera(-7, -7, 20); useMipMaps = true; bitmapObj.pixelSnapping = PixelSnapping.AUTO; textObj.text = "???????????????????????????"; } public function tint(_arg1:ColorTransform):void{ buffer.colorTransform(sceneView.viewportBounds, _arg1); } public function clear(_arg1:RGBAColor):void{ buffer.fillRect(buffer.rect, _arg1.color); } public function endFrame():void{ buffer.unlock(sceneView.viewportBounds); } public function transferBackBuffer(_arg1:Graphics, _arg2:Number, _arg3:Number):void{ var _local4:Matrix = new Matrix(); _local4.scale((_arg2 / buffer.width), (_arg3 / buffer.height)); _arg1.clear(); _arg1.lineStyle(); _arg1.beginBitmapFill(buffer, _local4, false, true); _arg1.drawRect(0, 0, _arg2, _arg3); _arg1.endFill(); } public function beginFrame():void{ buffer.lock(); if (clearColor){ clear(clearColor); }; } protected function worldToClip(_arg1:Point):Point{ _arg1 = sceneView.sceneToViewport.transformPoint(_arg1); _arg1.x = (_arg1.x / sceneView.viewportBounds.width); _arg1.y = (_arg1.y / sceneView.viewportBounds.height); return (_arg1); } public function drawText(_arg1:TextRenderable, _arg2:Matrix, _arg3:VectorShader):void{ textObj.text = _arg1.text; textObj.setTextFormat(new TextFormat(_arg1.font, Math.ceil(_arg1.size))); textObj.textColor = 0xFFFFFF; textObj.autoSize = TextFieldAutoSize.LEFT; textObj.x = 0; textObj.y = 0; textObj.embedFonts = _arg1.embeddedFont; var _local4:Matrix = new Matrix(1, 0, 0, 1, (-(textObj.width) * 0.5), (-(textObj.height) * 0.5)); _local4.scale((_arg1.size / Math.ceil(_arg1.size)), (_arg1.size / Math.ceil(_arg1.size))); _local4.concat(_arg2); _local4.concat(sceneView.sceneToViewport); var _local5:TextImpostor = _arg1.getImpostor(textObj, _local4, sceneView); var _local6:Matrix = _local5.place.clone(); _local6.concat(_local4); _local4 = _local6; _local4.tx = Math.round(_local4.tx); _local4.ty = Math.round(_local4.ty); buffer.draw(_local5.data, _local4, _arg3.colorTransform, _arg3.blendMode, sceneView.viewportBounds, _arg3.smooth); } public function setCamera(_arg1:Number, _arg2:Number, _arg3:Number):void{ var _local4:Number = (sceneView.viewportBounds.width / sceneView.viewportBounds.height); var _local5:Number = (_local4 * _arg3); sceneView.scene((_arg1 - (_local5 * 0.5)), (_arg2 - (_arg3 * 0.5)), _local5, _arg3); } public function drawScene(_arg1:Scene2D):void{ var _local2:Array; var _local3:IRenderable2D; for each (_local2 in layers) { _local2.length = 0; }; _arg1.attach(this); for each (_local2 in layers) { for each (_local3 in _local2) { if (_local3.isEnabled()){ _local3.draw(this); }; }; }; } public function panning(_arg1:Point):Number{ _arg1 = worldToClip(_arg1); var _local2:Number = ((_arg1.x * 2) - 1); var _local3:Number = 0.9; _local2 = (_local2 * _local3); return (MathUtil.clamp(_local2, -1, 1)); } public function addRenderable(_arg1:IRenderable2D):void{ var _local2:int = MathUtil.clamp(_arg1.layer(), 0, layers.length); layers[_local2].push(_arg1); } public function drawTexture(_arg1:Texture, _arg2:Matrix, _arg3:VectorShader):void{ var _local5:Graphics; var _local6:Rectangle; var _local7:ColorTransform; var _local8:String; var _local11:int; var _local12:BitmapRegion; var _local13:Matrix; var _local14:Point; var _local4:Boolean = ((!((_arg1 == null))) && (_arg1.loaded)); transform.identity(); transform.concat(_arg2); transform.concat(sceneView.sceneToViewport); completeTransform.identity(); if (_local4){ _local11 = _arg3.texture.calculateMipLevel(transform, ((_arg3.mipmap) && (useMipMaps)), _arg3.lodbias); _local12 = _arg3.texture.data[_local11]; completeTransform.concat(_arg3.texture.transforms[_local11]); }; completeTransform.concat(transform); if (_arg3.colorTransformActive()){ _local7 = _arg3.colorTransform; } else { _local7 = null; }; if (_arg3.blendMode == BlendMode.NORMAL){ _local8 = null; } else { _local8 = _arg3.blendMode; }; var _local9:Boolean = ((((((MathUtil.fuzzyEQ(completeTransform.a, 1)) && (MathUtil.fuzzyEQ(completeTransform.b, 0)))) && (MathUtil.fuzzyEQ(completeTransform.c, 0)))) && (MathUtil.fuzzyEQ(completeTransform.d, 1))); var _local10:Boolean = ((((((_local9) && ((_local8 == null)))) && ((_local7 == null)))) && (!(_arg3.texture.repeat))); if (!_local4){ _local5 = spriteObj.graphics; _local5.beginFill(0xFFFFFF); _local6 = new Rectangle(0, 0, 1, 1); _local5.moveTo(_local6.x, _local6.y); _local5.lineTo((_local6.x + _local6.width), _local6.y); _local5.lineTo((_local6.x + _local6.width), (_local6.y + _local6.height)); _local5.lineTo(_local6.x, (_local6.y + _local6.height)); _local5.lineTo(_local6.x, _local6.y); _local5.endFill(); buffer.draw(spriteObj, completeTransform, _local7, _local8, sceneView.viewportBounds, _arg3.smooth); _local5.clear(); } else { if (_arg3.texture.repeat){ _local13 = new Matrix(); _local5 = spriteObj.graphics; _local5.beginBitmapFill(_local12.bitmap, _local13, _arg3.texture.repeat, _arg3.smooth); _local6 = _local12.region; _local5.moveTo(_local6.x, _local6.y); _local5.lineTo((_local6.x + _local6.width), _local6.y); _local5.lineTo((_local6.x + _local6.width), (_local6.y + _local6.height)); _local5.lineTo(_local6.x, (_local6.y + _local6.height)); _local5.lineTo(_local6.x, _local6.y); _local5.endFill(); buffer.draw(spriteObj, completeTransform, _local7, _local8, sceneView.viewportBounds, _arg3.smooth); _local5.clear(); } else { if (((_local10) && (useFastPath))){ _local14 = new Point(((completeTransform.tx + _local12.opaqueOffset.x) + 0.49999), ((completeTransform.ty + _local12.opaqueOffset.y) + 0.49999)); buffer.copyPixels(_local12.bitmap, _local12.opaqueRegion, _local14); } else { bitmapObj.bitmapData = _local12.bitmap; bitmapObj.scrollRect = _local12.region; bitmapObj.smoothing = _arg3.smooth; buffer.draw(bitmapObj, completeTransform, _local7, _local8, sceneView.viewportBounds, _arg3.smooth); bitmapObj.scrollRect = null; bitmapObj.bitmapData = null; }; }; }; } public function filter(_arg1:BitmapFilter):void{ buffer.applyFilter(buffer, sceneView.viewportBounds, new Point(), _arg1); } public function draw(_arg1:IBitmapDrawable, _arg2:Matrix, _arg3:VectorShader):void{ var _local4:Matrix = _arg2.clone(); _local4.concat(sceneView.sceneToViewport); buffer.draw(_arg1, _local4, _arg3.colorTransform, _arg3.blendMode, sceneView.viewportBounds, _arg3.smooth); } } }//package genius.graphics
Section 695
//Scene2D (genius.graphics.Scene2D) package genius.graphics { public class Scene2D { protected var db:Array; public function Scene2D(){ db = new Array(); super(); } public function addRenderable(_arg1:IRenderable2D):void{ db.push(_arg1); } public function removeRenderable(_arg1:IRenderable2D):void{ var _local2:int = db.indexOf(_arg1); db.splice(_local2, 1); } public function attach(_arg1:RenderingEngine):void{ var _local2:IRenderable2D; for each (_local2 in db) { _arg1.addRenderable(_local2); }; } } }//package genius.graphics
Section 696
//Scene2DView (genius.graphics.Scene2DView) package genius.graphics { import flash.geom.*; public class Scene2DView { public var sceneBounds:Rectangle; public var viewportToScene:Matrix; public var viewportBounds:Rectangle; public var sceneToViewport:Matrix; public function Scene2DView(){ sceneToViewport = new Matrix(); viewportToScene = new Matrix(); super(); sceneBounds = new Rectangle(0, 0, 1, 1); viewportBounds = new Rectangle(0, 0, 1, 1); } protected function recalculateTransforms():void{ sceneToViewport.identity(); sceneToViewport.translate(-(sceneBounds.x), -(sceneBounds.y)); sceneToViewport.scale((Math.max(viewportBounds.width, 0.0001) / Math.max(sceneBounds.width, 0.0001)), (Math.max(viewportBounds.height, 0.0001) / Math.max(sceneBounds.height, 0.0001))); sceneToViewport.translate(viewportBounds.x, viewportBounds.y); viewportToScene = sceneToViewport.clone(); viewportToScene.invert(); } public function scene(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):void{ sceneBounds.x = _arg1; sceneBounds.y = _arg2; sceneBounds.width = _arg3; sceneBounds.height = _arg4; recalculateTransforms(); } public function viewport(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):void{ viewportBounds.x = _arg1; viewportBounds.y = _arg2; viewportBounds.width = _arg3; viewportBounds.height = _arg4; recalculateTransforms(); } } }//package genius.graphics
Section 697
//SpriteSheet (genius.graphics.SpriteSheet) package genius.graphics { import flash.geom.*; import flash.display.*; public class SpriteSheet { public var loaded:Boolean;// = false public var horisontalCells:int; public var mipmap:Boolean; public var frame:Array; public var url:String; public var verticalCells:int; public function SpriteSheet(){ frame = new Array(); super(); } protected function imageLoaded(_arg1:Bitmap):void{ setData(_arg1.bitmapData); loaded = true; } protected function setData(_arg1:BitmapData):void{ var _local5:int; var _local6:BitmapData; var _local7:Texture; var _local2:int = (_arg1.width / horisontalCells); var _local3:int = (_arg1.height / verticalCells); frame.length = 0; var _local4:int; while (_local4 < verticalCells) { _local5 = 0; while (_local5 < horisontalCells) { _local6 = new BitmapData(_local2, _local3, _arg1.transparent, 0); _local6.copyPixels(_arg1, new Rectangle((_local5 * _local2), (_local4 * _local3), _local2, _local3), new Point(0, 0)); _local7 = new Texture(); _local7.mipmap = mipmap; _local7.setData(_local6); frame.push(_local7); _local5++; }; _local4++; }; } public function postload(_arg1:Engine):void{ _arg1.dataloader.load(url, imageLoaded); } } }//package genius.graphics
Section 698
//SWF (genius.graphics.SWF) package genius.graphics { import flash.display.*; public class SWF { public var data:MovieClip; public var url:String; public function postload(_arg1:Engine):void{ _arg1.dataloader.load(url, swfLoaded); } protected function swfLoaded(_arg1:MovieClip):void{ trace("SWF LOADED", _arg1); _arg1.stop(); data = _arg1; } } }//package genius.graphics
Section 699
//Texture (genius.graphics.Texture) package genius.graphics { import flash.geom.*; import flash.display.*; import genius.util.*; import flash.filters.*; public class Texture { public var transforms:Array; public var mipmap:Boolean; public var name:String; public var maxLambda:Number;// = NAN public var repeat:Boolean; public var data:Array; public var transform:Matrix; public var url:String; public var minLambda:Number;// = NAN public function Texture(){ data = new Array(); transforms = new Array(); transform = new Matrix(); } public function imageLoaded(_arg1:Bitmap):void{ setData(_arg1.bitmapData); } protected function trackLambda(_arg1:Number):void{ if (isNaN(maxLambda)){ maxLambda = _arg1; minLambda = _arg1; } else { maxLambda = Math.max(maxLambda, _arg1); minLambda = Math.max(minLambda, _arg1); }; } public function get loaded():Boolean{ return ((data.length > 0)); } public function postload(_arg1:Engine):void{ _arg1.dataloader.load(url, imageLoaded); } protected function scale(_arg1:BitmapData, _arg2:Number):BitmapData{ var _local3:uint = Math.ceil((_arg1.width * _arg2)); var _local4:uint = Math.ceil((_arg1.height * _arg2)); var _local5:Matrix = new Matrix(); _local5.scale((Number(_local3) / _arg1.width), (Number(_local4) / _arg1.height)); var _local6:BitmapData = new BitmapData(_local3, _local4, _arg1.transparent, 0); _local6.draw(_arg1, _local5, null, null, null, true); return (_local6); } protected function downsample(_arg1:BitmapData):BitmapData{ _arg1 = prefilter(_arg1); return (scale(_arg1, 0.5)); } public function calculateMipLevel(_arg1:Matrix, _arg2:Boolean, _arg3:Number=0):int{ var _local4:int; var _local5:Number; if (_arg2){ _local5 = (MathUtil.mipLevel(_arg1) + _arg3); trackLambda(_local5); _local4 = Math.floor(MathUtil.clamp(-(_local5), 0, (this.mipLevels - 1))); } else { _local4 = 0; }; return (_local4); } protected function prefilter(_arg1:BitmapData):BitmapData{ var _local2:BlurFilter = new BlurFilter(2, 2, 1); var _local3:BitmapData = new BitmapData(_arg1.width, _arg1.height, _arg1.transparent, 0); _local3.applyFilter(_arg1, new Rectangle(0, 0, _arg1.width, _arg1.height), new Point(), _local2); return (_local3); } public function get mipLevels():int{ return (data.length); } public function setData(_arg1:BitmapData):void{ var _local2:BitmapData; var _local3:Matrix; var _local4:BitmapData; data.length = 0; transforms.length = 0; transform.identity(); transform.scale((1 / _arg1.width), (1 / _arg1.height)); data.push(new BitmapRegion(_arg1)); transforms.push(new Matrix()); if (mipmap){ _local2 = _arg1; _local3 = new Matrix(); while ((((_local2.width > 1)) && ((_local2.height > 1)))) { _local4 = downsample(_local2); data.push(new BitmapRegion(_local4)); _local3.identity(); _local3.scale((Number(_arg1.width) / _local4.width), (Number(_arg1.height) / _local4.height)); transforms.push(_local3.clone()); _local2 = _local4; }; }; } } }//package genius.graphics
Section 700
//VectorShader (genius.graphics.VectorShader) package genius.graphics { import flash.geom.*; import flash.display.*; import genius.util.*; import genius.graphics.colors.*; public class VectorShader { public var lodbias:Number; public var mipmap:Boolean; public var colorTransform:ColorTransform; public var name:String; public var layer:int; public var blendMode:String; public var texture:Texture; protected var identityMultiplier:Boolean; public var repeat:Boolean; public var smooth:Boolean; protected var identityOffset:Boolean; public var textureMapping:Matrix; public function VectorShader(){ colorTransform = new ColorTransform(); identityMultiplier = true; identityOffset = true; blendMode = BlendMode.NORMAL; textureMapping = new Matrix(); textureMapping.translate(-0.5, -0.5); textureMapping.scale(2, 2); smooth = true; repeat = false; mipmap = true; lodbias = 0; layer = 1; } public function set colorModulation(_arg1:RGBAColor):void{ colorTransform.redMultiplier = _arg1.r; colorTransform.greenMultiplier = _arg1.g; colorTransform.blueMultiplier = _arg1.b; colorTransform.alphaMultiplier = _arg1.a; identityMultiplier = ((((((MathUtil.fuzzyEQ(_arg1.r, 1)) && (MathUtil.fuzzyEQ(_arg1.g, 1)))) && (MathUtil.fuzzyEQ(_arg1.b, 1)))) && (MathUtil.fuzzyEQ(_arg1.a, 1))); } public function canCopy():Boolean{ return (((!(colorTransformActive())) && ((blendMode == BlendMode.NORMAL)))); } protected function debugMip(_arg1:Graphics, _arg2:Matrix):void{ var _local5:uint; var _local3:Number = MathUtil.mipLevel(_arg2); var _local4:int = Math.floor(-(_local3)); if (_local4 < 0){ _local5 = 0xFFFFFF; } else { if (_local4 == 0){ _local5 = 0xFF0000; } else { if (_local4 == 1){ _local5 = 0xFFFF00; } else { if (_local4 == 2){ _local5 = 0xFF00; } else { if (_local4 == 3){ _local5 = 0xFF00; } else { if (_local4 == 4){ _local5 = 0xFFFF; } else { _local5 = 0xFF; }; }; }; }; }; }; _arg1.lineStyle(2, _local5, 1); } public function clone():VectorShader{ var _local1:VectorShader = new VectorShader(); _local1.colorTransform = new ColorTransform(colorTransform.redMultiplier, colorTransform.greenMultiplier, colorTransform.blueMultiplier, colorTransform.alphaMultiplier, colorTransform.redOffset, colorTransform.greenOffset, colorTransform.blueOffset, colorTransform.alphaOffset); _local1.identityMultiplier = identityMultiplier; _local1.identityOffset = identityOffset; _local1.blendMode = blendMode; _local1.texture = texture; _local1.textureMapping = textureMapping.clone(); _local1.smooth = smooth; _local1.repeat = repeat; _local1.mipmap = mipmap; _local1.lodbias = lodbias; _local1.layer = layer; return (_local1); } public function get colorOffset():RGBAColor{ return (new RGBAColor((colorTransform.redOffset / 0xFF), (colorTransform.greenOffset / 0xFF), (colorTransform.blueOffset / 0xFF), (colorTransform.alphaOffset / 0xFF))); } public function set colorOffset(_arg1:RGBAColor):void{ colorTransform.redOffset = (_arg1.r * 0xFF); colorTransform.greenOffset = (_arg1.g * 0xFF); colorTransform.blueOffset = (_arg1.b * 0xFF); colorTransform.alphaOffset = (_arg1.a * 0xFF); identityOffset = ((((((MathUtil.fuzzyEQ(_arg1.r, 0)) && (MathUtil.fuzzyEQ(_arg1.g, 0)))) && (MathUtil.fuzzyEQ(_arg1.b, 0)))) && (MathUtil.fuzzyEQ(_arg1.a, 0))); } public function colorTransformActive():Boolean{ return (!(((identityMultiplier) && (identityOffset)))); } public function get colorModulation():RGBAColor{ return (new RGBAColor(colorTransform.redMultiplier, colorTransform.greenMultiplier, colorTransform.blueMultiplier, colorTransform.alphaMultiplier)); } } }//package genius.graphics
Section 701
//Button (genius.gui.Button) package genius.gui { import genius.component.*; import flash.geom.*; import genius.actor.*; import genius.graphics.renderable.*; public class Button extends Wigit { protected var size:Point; protected var spriteName:String; protected var owner:GameObject; protected var stateName:String; protected var stateInfo:Array; override public function cursorPress(_arg1:Engine, _arg2:Point):Boolean{ var _local3:String = currentInfo(_arg1).pressScript; if (_local3){ var _local4 = _arg1.gameplay; _local4[_local3](this); }; return (true); } protected function currentInfo(_arg1:Engine):ButtonState{ return (stateInfo[getState(_arg1)]); } override public function getWigitAtPoint(_arg1:Point):Wigit{ if (contains(_arg1)){ return (this); }; return (null); } override public function configure(_arg1:Engine, _arg2:GameObject, _arg3):void{ super.configure(_arg1, _arg2, _arg3); owner = _arg2; spriteName = _arg3.spriteName; stateName = _arg3.stateName; size = _arg3.size; stateInfo = _arg3.stateInfo; } protected function contains(_arg1:Point):Boolean{ var _local2:Placement = owner.getComponent("placement", Placement); var _local3:Rectangle = new Rectangle((_local2.position.x - (size.x * 0.5)), (_local2.position.y - (size.y * 0.5)), size.x, size.y); return (_local3.contains(_arg1.x, _arg1.y)); } public function setState(_arg1:Engine, _arg2:int):void{ _arg1.gameplay[stateName] = _arg2; } override public function cursorRelease(_arg1:Engine, _arg2:Point):void{ var _local3:String = currentInfo(_arg1).releaseScript; if (_local3){ var _local4 = _arg1.gameplay; _local4[_local3](this); }; } override public function cursorClick(_arg1:Engine, _arg2:Point):void{ var _local3:String = currentInfo(_arg1).clickScript; if (_local3){ var _local4 = _arg1.gameplay; _local4[_local3](this); }; } override public function frame(_arg1:Engine, _arg2:Number):void{ var _local3:SpriteRenderable = owner.getComponent(spriteName, SpriteRenderable); if (_local3){ if (focus){ if (_arg1.managers.gui.pressTarget === this){ _local3.shader.texture = currentInfo(_arg1).pressedTexture; } else { _local3.shader.texture = currentInfo(_arg1).cursorOverTexture; }; } else { _local3.shader.texture = currentInfo(_arg1).defaultTexture; }; }; } override public function updateCursor(_arg1:Engine, _arg2:Point):void{ } public function getState(_arg1:Engine):int{ if (stateName){ return (_arg1.gameplay[stateName]); }; return (0); } } }//package genius.gui
Section 702
//ButtonState (genius.gui.ButtonState) package genius.gui { import genius.graphics.*; public class ButtonState { public var name:String; public var pressScript:String; public var cursorOverTexture:Texture; public var releaseScript:String; public var clickScript:String; public var pressedTexture:Texture; public var defaultTexture:Texture; } }//package genius.gui
Section 703
//Cursor (genius.gui.Cursor) package genius.gui { import genius.component.*; import genius.actor.*; import genius.graphics.*; import genius.graphics.renderable.*; public class Cursor implements IComponent { public var pressed:Boolean; protected var spriteName:String; protected var cursorOverTexture:Texture; public var owner:GameObject; protected var defaultTexture:Texture; public var hover:Boolean; public var show:Boolean; public function frame(_arg1:Engine, _arg2:Number):void{ var _local3:SpriteRenderable = owner.getComponent(spriteName, SpriteRenderable); if (_local3){ if (((_arg1.input.mouseOver) && (show))){ if (hover){ _local3.shader.texture = cursorOverTexture; } else { _local3.shader.texture = defaultTexture; }; _local3.enabled = true; } else { _local3.enabled = false; }; }; } public function configure(_arg1:Engine, _arg2:GameObject, _arg3):void{ owner = _arg2; var _local4:GUIManager = _arg1.managers["gui"]; _local4.cursor = this; pressed = false; hover = false; show = true; spriteName = _arg3.spriteName; defaultTexture = _arg3.defaultTexture; cursorOverTexture = _arg3.cursorOverTexture; } public function destroy(_arg1:Engine, _arg2:GameObject):void{ var _local3:GUIManager = _arg1.managers["gui"]; if (_local3.cursor === this){ _local3.cursor = null; }; } public function link(_arg1:Engine, _arg2:GameObject):void{ } } }//package genius.gui
Section 704
//GUIManager (genius.gui.GUIManager) package genius.gui { import genius.component.*; import flash.geom.*; public class GUIManager implements ComponentManager { public var root:Wigit; public var pressTarget:Wigit; public var cursor:Cursor; public var focus:Wigit; public function GUIManager(){ root = new Wigit(); root.makeRoot(); focus = null; } public function refocus(_arg1:Engine):void{ var _local2:Wigit = findCurrentFocus(_arg1); if (_local2 != focus){ if (focus){ focus.looseFocus(_arg1); }; focus = _local2; if (focus){ focus.gainFocus(_arg1); }; if (cursor){ cursor.hover = !((focus == null)); }; }; } public function componentName():String{ return ("gui"); } public function update(_arg1:Engine, _arg2:Number):void{ refocus(_arg1); var _local3:Wigit = root.next; while (_local3 != root) { _local3.frame(_arg1, _arg2); _local3 = _local3.next; }; if (cursor){ cursor.frame(_arg1, _arg2); }; } public function cursorPress(_arg1:Engine, _arg2:Point):Boolean{ if (!cursor){ return (false); }; cursor.pressed = true; if (focus){ focus.cursorPress(_arg1, _arg2); pressTarget = focus; return (true); }; pressTarget = null; return (false); } public function cursorRelease(_arg1:Engine, _arg2:Point):void{ if (!cursor){ return; }; cursor.pressed = false; if (focus){ if (pressTarget == focus){ focus.cursorClick(_arg1, _arg2); } else { focus.cursorRelease(_arg1, _arg2); }; }; pressTarget = null; } public function focusLost(_arg1:Engine):void{ focus = null; refocus(_arg1); } protected function findCurrentFocus(_arg1:Engine):Wigit{ if (!cursor){ return (null); }; var _local2:Placement = cursor.owner.getComponent("placement", Placement); var _local3:Wigit; var _local4:Wigit = root.next; while (_local4 != root) { _local3 = _local4.getWigitAtPoint(_local2.position); if (_local3){ return (_local3); }; _local4 = _local4.next; }; return (null); } } }//package genius.gui
Section 705
//TextField (genius.gui.TextField) package genius.gui { import genius.actor.*; import genius.graphics.renderable.*; import flash.text.*; public class TextField extends Wigit { protected var renderable:DisplayRenderable; protected var textField:TextField; override public function destroy(_arg1:Engine, _arg2:GameObject):void{ _arg1.game.stage.removeChild(textField); super.destroy(_arg1, _arg2); } override public function configure(_arg1:Engine, _arg2:GameObject, _arg3):void{ super.configure(_arg1, _arg2, _arg3); textField = new TextField(); textField.type = TextFieldType.INPUT; textField.textColor = 0xFF00; textField.text = "FooBar"; textField.backgroundColor = 0xFFFFFF; textField.background = true; textField.borderColor = 0xFF0000; textField.border = true; _arg1.game.stage.addChildAt(textField, _arg1.game.stage.numChildren); } } }//package genius.gui
Section 706
//Wigit (genius.gui.Wigit) package genius.gui { import genius.component.*; import flash.geom.*; import genius.actor.*; import genius.util.*; public class Wigit extends LinkedList implements IComponent { protected var focus:Boolean; public function getWigitAtPoint(_arg1:Point):Wigit{ return (null); } public function cursorPress(_arg1:Engine, _arg2:Point):Boolean{ return (false); } public function destroy(_arg1:Engine, _arg2:GameObject):void{ var _local3:GUIManager; unlink(); if (focus){ _local3 = _arg1.managers["gui"]; _local3.focusLost(_arg1); }; } public function cursorClick(_arg1:Engine, _arg2:Point):void{ } public function configure(_arg1:Engine, _arg2:GameObject, _arg3):void{ var _local4:GUIManager = _arg1.managers["gui"]; insertBefore(_local4.root); } public function cursorRelease(_arg1:Engine, _arg2:Point):void{ } public function link(_arg1:Engine, _arg2:GameObject):void{ } public function frame(_arg1:Engine, _arg2:Number):void{ } public function gainFocus(_arg1:Engine):void{ focus = true; } public function looseFocus(_arg1:Engine):void{ focus = false; } public function updateCursor(_arg1:Engine, _arg2:Point):void{ } } }//package genius.gui
Section 707
//CollisionID (genius.physics.CollisionID) package genius.physics { import Box2D.Collision.Shapes.*; public class CollisionID { public var description:String; public var uid:int; public var mask:int;// = 0 protected static var currentID:int = 1; public function CollisionID(){ uid = newID(); } public function configure(_arg1:b2ShapeDef):void{ _arg1.filter.categoryBits = uid; _arg1.filter.maskBits = mask; } protected static function newID():int{ var _local1:int = currentID; currentID = (currentID << 1); return (_local1); } } }//package genius.physics
Section 708
//CollisionInteraction (genius.physics.CollisionInteraction) package genius.physics { public class CollisionInteraction { public var self:CollisionID; public var other:Array; public function postload(_arg1:Engine):void{ var _local2:CollisionID; for each (_local2 in other) { self.mask = (self.mask | _local2.uid); }; trace(self, self.uid, self.mask); } } }//package genius.physics
Section 709
//ContactInfo (genius.physics.ContactInfo) package genius.physics { import flash.geom.*; import genius.actor.*; import Box2D.Dynamics.Contacts.*; public class ContactInfo { public var normal:Point; public var go1:GameObject; public var go2:GameObject; public var normalImpulse:Number; public var position:Point; public var tangentImpulse:Number; public var physical:Boolean; public function ContactInfo(_arg1:GameObject, _arg2:GameObject, _arg3:Point, _arg4:Point, _arg5:Number, _arg6:Number, _arg7:Boolean){ this.go1 = _arg1; this.go2 = _arg2; this.position = _arg3; this.normal = _arg4; this.normalImpulse = _arg5; this.tangentImpulse = tangentImpulse; this.physical = _arg7; } public function flip():void{ var _local1:GameObject = go1; go1 = go2; go2 = _local1; normal.x = -(normal.x); normal.y = -(normal.y); } public static function fromContactResult(_arg1:GameObject, _arg2:GameObject, _arg3:b2ContactResult, _arg4:Boolean):ContactInfo{ return (new ContactInfo(_arg1, _arg2, PhysicsUtil.convertPoint(_arg3.position), PhysicsUtil.convertPoint(_arg3.normal), _arg3.normalImpulse, _arg3.tangentImpulse, _arg4)); } } }//package genius.physics
Section 710
//ContactListener (genius.physics.ContactListener) package genius.physics { import genius.actor.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Contacts.*; public class ContactListener extends b2ContactListener { public var collisions:Array; public function ContactListener(){ collisions = new Array(); } public function dispatch(_arg1:Engine):void{ var _local2:ContactInfo; for each (_local2 in collisions) { if (!_local2.go1.dead){ _local2.go1.collide(_arg1, _local2.go2, _local2); }; _local2.flip(); if (!_local2.go1.dead){ _local2.go1.collide(_arg1, _local2.go2, _local2); }; }; reset(); } override public function Result(_arg1:b2ContactResult):void{ var _local2:GameObject = _arg1.shape1.GetBody().GetUserData(); var _local3:GameObject = _arg1.shape2.GetBody().GetUserData(); collisions.push(ContactInfo.fromContactResult(_local2, _local3, _arg1, true)); } public function reset():void{ collisions.length = 0; } } }//package genius.physics
Section 711
//PhysicsUtil (genius.physics.PhysicsUtil) package genius.physics { import flash.geom.*; import Box2D.Common.Math.*; public class PhysicsUtil { public static function convertMatrix(_arg1:b2XForm):Matrix{ return (new Matrix(_arg1.R.col1.x, _arg1.R.col1.y, _arg1.R.col2.x, _arg1.R.col2.y, _arg1.position.x, _arg1.position.y)); } public static function convertPoint(_arg1:b2Vec2):Point{ return (new Point(_arg1.x, _arg1.y)); } } }//package genius.physics
Section 712
//MochiPreloader (genius.preloader.MochiPreloader) package genius.preloader { public class MochiPreloader extends PreloaderBase { override protected function init():void{ super.init(); services(); if (adEnabled()){ trace("showing ad"); showAd(); } else { trace("skipping ad"); advertisementDone(); }; } protected function connect_failed(_arg1:String):void{ trace("CONNECT FAILED", _arg1); } protected function adID():String{ return (null); } protected function ad_finished():void{ trace("AD Finished"); advertisementDone(); } protected function showAd():void{ build.showAd(ad_started, ad_finished, ad_failed); } protected function ad_failed():void{ trace("AD Failed"); advertisementDone(); } protected function ad_started():void{ trace("AD Started"); } protected function services():void{ build.connect(connect_failed); } protected function adEnabled():Boolean{ return (true); } } }//package genius.preloader
Section 713
//PreloaderBase (genius.preloader.PreloaderBase) package genius.preloader { import flash.display.*; import flash.events.*; import genius.resource.*; import genius.build.*; import flash.utils.*; import flash.text.*; public class PreloaderBase extends MovieClip implements ILoaderListener { protected var playOK:Boolean; protected var state:int; protected var progress:ProgressBar; protected var build:BaseBuild; protected var game; protected var adDisplayed:Boolean; protected static const LOAD_DATA:int = 1; protected static const LOAD_ABORT:int = 3; protected static const LOAD_SWF:int = 0; protected static const LOAD_DONE:int = 2; public function PreloaderBase(){ addEventListener(Event.ADDED_TO_STAGE, onStage); } protected function domain():String{ var _local2:int; var _local3:int; var _local4:String; var _local5:int; var _local6:int; var _local1:String = stage.loaderInfo.loaderURL; if (_local1.indexOf("http") == 0){ _local2 = (_local1.indexOf("://") + 3); _local3 = _local1.indexOf("/", _local2); _local4 = _local1.substring(_local2, _local3); _local5 = (_local4.lastIndexOf(".") - 1); _local6 = (_local4.lastIndexOf(".", _local5) + 1); _local4 = _local4.substring(_local6, _local4.length); return (_local4); }; return ("the local filesystem"); } protected function cleanup():void{ while (numChildren) { removeChildAt((numChildren - 1)); }; progress = null; } protected function createLogo():DisplayObject{ return (null); } protected function check(_arg1:Array):Boolean{ var _local3:String; var _local2:String = domain(); for each (_local3 in _arg1) { if (_local2 == _local3){ return (true); }; }; return (false); } public function loadingProgress(_arg1:Number):void{ if (progress){ progress.setAmount(_arg1); }; } protected function createProgressBar(_arg1:int, _arg2:int):ProgressBar{ var _local3:Number = 5; var _local4:ProgressBar = new ProgressBar((_arg1 - (_local3 * 2)), 15, 2576731, 16756769, 16756769, 1577251); _local4.x = _local3; _local4.y = (_arg2 - (15 + _local3)); return (_local4); } protected function track(_arg1:String):void{ if (_arg1){ MochiBot.track(this, _arg1); }; } protected function playPressed():void{ playOK = true; checkDone(); } protected function restrictToAllowed(_arg1:Array):void{ if (!check(_arg1)){ abort(); }; } protected function createGame():void{ var _local1:Class = Class(getDefinitionByName(gameName())); game = new (_local1); game.rootDirectory = rootDirectory; game.build = build; game.init(); game.loadData(this); } protected function init():void{ state = LOAD_SWF; playOK = !(build.config.waitForPlayButton); adDisplayed = false; createScene(); var _local1:Array = allowed(); if (_local1){ restrictToAllowed(_local1); }; var _local2:String = trackID(); if (_local2){ track(_local2); }; if (state == LOAD_SWF){ if (alreadyLoaded()){ trace("PRELOADER SWF has already been loaded."); loadingCompleted(); } else { trace("PRELOADER Waiting for load", framesLoaded, totalFrames); loaderInfo.addEventListener(ProgressEvent.PROGRESS, onProgress); loaderInfo.addEventListener(Event.COMPLETE, onComplete); }; }; } protected function attachGame():void{ trace("PRELOADER attaching game"); cleanup(); addChild(game); game.onAttach(); game.resourcesLoaded(); } protected function gameName():String{ return (null); } protected function nextState():void{ switch (state){ case LOAD_SWF: trace("PRELOADER loading data"); nextFrame(); state = LOAD_DATA; startLoadData(); createGame(); break; case LOAD_DATA: trace("PRELOADER loading done"); state = LOAD_DONE; postLoad(); checkDone(); break; }; } protected function onStage(_arg1):void{ removeEventListener(Event.ADDED_TO_STAGE, onStage); init(); } public function loadingStarted():void{ if (progress){ progress.setAmount(0); }; } protected function trackID():String{ return (null); } protected function advertisementDone():void{ adDisplayed = true; checkDone(); } protected function allowed():Array{ return (null); } protected function checkDone():void{ trace("PRELOADER status", state, adDisplayed); if (((((playOK) && (adDisplayed))) && ((state == LOAD_DONE)))){ attachGame(); }; } protected function postLogo():void{ } protected function onProgress(_arg1:ProgressEvent):void{ loadingProgress((Number(_arg1.bytesLoaded) / _arg1.bytesTotal)); } public function loadingCompleted():void{ if (progress){ progress.setAmount(1); }; nextState(); } protected function createScene():void{ var _local2:int; var _local3:int; var _local1:DisplayObject = createLogo(); if (_local1){ _local2 = 700; _local3 = 600; _local1.x = ((_local2 - _local1.width) * 0.5); _local1.y = ((_local3 - _local1.height) * 0.5); addChild(_local1); }; postLogo(); progress = createProgressBar(_local2, _local3); if (progress){ addChild(progress); }; } protected function postLoad():void{ } protected function abort():void{ state = LOAD_ABORT; var _local1:TextField = new TextField(); _local1.textColor = 0xFFFFFF; _local1.autoSize = TextFieldAutoSize.CENTER; _local1.defaultTextFormat = new TextFormat("Arial", 16); _local1.text = (("This game is site locked, and will not run on " + domain()) + ". Please email contact@stolengoose.com"); _local1.x = 0; _local1.y = 0; addChild(_local1); } protected function onComplete(_arg1):void{ trace("PRELOADER swf loaded"); loadingCompleted(); } protected function startLoadData():void{ } public function get rootDirectory():String{ var _local1:String = stage.loaderInfo.loaderURL; return (_local1.substring(0, (_local1.lastIndexOf("/") + 1))); } protected function alreadyLoaded():Boolean{ return ((framesLoaded == totalFrames)); } } }//package genius.preloader
Section 714
//ProgressBar (genius.preloader.ProgressBar) package genius.preloader { import flash.display.*; import flash.geom.*; public class ProgressBar extends Sprite { protected var bgColor:uint; protected var amt:Number; protected var borderColor:uint; protected var fillColor1:uint; protected var barRoundness:Number; protected var barWidth:Number; protected var fillColor0:uint; protected var barHeight:Number; protected var barBorder:Number; public function ProgressBar(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:uint=0, _arg6:uint=0xFF0000, _arg7:uint=0xFF8800, _arg8:uint=0xFFFFFF){ barWidth = _arg1; barHeight = _arg2; barRoundness = _arg3; barBorder = _arg4; this.bgColor = _arg5; this.fillColor0 = _arg6; this.fillColor1 = _arg7; this.borderColor = _arg8; setAmount(0); } public function setAmount(_arg1:Number):void{ this.amt = _arg1; redraw(); } public function redraw():void{ graphics.clear(); var _local1:Number = 4; var _local2:Number = barRoundness; var _local3:Matrix = new Matrix(); _local3.createGradientBox(barWidth, (barHeight - _local1), (Math.PI / 2), 0, (_local1 * 0.5)); graphics.lineStyle(); graphics.beginFill(bgColor); graphics.drawRoundRect(0, 0, barWidth, barHeight, _local2); graphics.endFill(); graphics.lineStyle(); graphics.beginGradientFill(GradientType.LINEAR, [fillColor0, fillColor1], [1, 1], [0, 0xFF], _local3, SpreadMethod.PAD, InterpolationMethod.LINEAR_RGB); graphics.drawRoundRect(0, 0, (barWidth * amt), barHeight, _local2); graphics.endFill(); if (borderColor > 0){ graphics.lineStyle(barBorder, borderColor); graphics.drawRoundRect(0, 0, barWidth, barHeight, _local2); }; } } }//package genius.preloader
Section 715
//BooleanSchema (genius.resource.config.BooleanSchema) package genius.resource.config { import genius.resource.*; public class BooleanSchema extends Schema { public function BooleanSchema(){ name = "boolean"; } override public function fromXML(_arg1:ConfigParser, _arg2:XML, _arg3=null){ var _local4:String = _arg2.text().toLowerCase(); if (_local4 == "true"){ return (true); }; if (_local4 == "false"){ return (false); }; throw (new Error(("Expected a boolean value, got: " + _arg2.text()))); } } }//package genius.resource.config
Section 716
//ColorSchema (genius.resource.config.ColorSchema) package genius.resource.config { import genius.resource.*; import genius.graphics.colors.*; public class ColorSchema extends Schema { public function ColorSchema(){ name = "color"; } override public function fromXML(_arg1:ConfigParser, _arg2:XML, _arg3=null){ var _local4:Array = _arg2.text().split(/\s+/); if ((((_local4.length < 3)) || ((_local4.length > 4)))){ throw (new Error(("Cannot parse color: " + _arg2.text()))); }; var _local5:Number = Number(_local4[0]); var _local6:Number = Number(_local4[1]); var _local7:Number = Number(_local4[2]); var _local8:Number = 1; if (_local4.length == 4){ _local8 = Number(_local4[3]); }; return (new RGBAColor(_local5, _local6, _local7, _local8)); } } }//package genius.resource.config
Section 717
//ComponentConfig (genius.resource.config.ComponentConfig) package genius.resource.config { public class ComponentConfig { public var parent:ComponentConfig;// = null public var data; public var type:Schema; public var name:String;// = null } }//package genius.resource.config
Section 718
//EntityConfig (genius.resource.config.EntityConfig) package genius.resource.config { import genius.actor.*; public class EntityConfig { public var component:Array; public var parent:EntityConfig;// = null protected var lut:Object; public var pkg:Package;// = null public var nativeType:Class; public var name:String;// = null public function EntityConfig(){ nativeType = GameObject; component = new Array(); lut = new Object(); super(); } public function lookup(_arg1:String){ var _local2:*; if ((_arg1 in lut)){ return (lut[_arg1]); }; if (parent){ _local2 = parent.lookup(_arg1); lut[_arg1] = _local2; return (_local2); }; return (null); } public function lookupParent(_arg1:String){ if (parent){ return (parent.lookup(_arg1)); }; return (null); } public function addComponent(_arg1:ComponentConfig):void{ component.push(_arg1); if (_arg1.name){ lut[_arg1.name] = _arg1; }; } public function finalize():void{ var _local1:ComponentConfig; if (parent){ for each (_local1 in parent.component) { if (!(_local1.name in lut)){ addComponent(_local1); }; }; }; } } }//package genius.resource.config
Section 719
//EntitySchema (genius.resource.config.EntitySchema) package genius.resource.config { import genius.resource.*; import flash.utils.*; public class EntitySchema extends Schema { override public function fromXML(_arg1:ConfigParser, _arg2:XML, _arg3=null){ var _local4:EntityConfig; var _local5:String; var _local6:XML; var _local7:String; var _local8:ComponentConfig; var _local9:String; var _local10:*; if ((((_arg2.elements().length() == 0)) && (String(_arg2.text())))){ return (_arg1.resolveDefinedName(_arg2.text())); }; _local4 = new EntityConfig(); _local4.pkg = _arg1.current; _local4.name = _arg1.attributeString(_arg2, "name"); _local5 = _arg1.attributeString(_arg2, "extends"); if (_local5){ _local4.parent = _arg1.resolveDefinedName(_local5); }; if (_arg2.elements("class").length() != 0){ _local7 = _arg2.elements("class")[0].text(); _local4.nativeType = (getDefinitionByName(_local7) as Class); } else { if (_local4.parent){ _local4.nativeType = _local4.parent.nativeType; }; }; for each (_local6 in _arg2.component) { _local8 = new ComponentConfig(); _local8.name = _arg1.attributeString(_local6, "name"); if (_local8.name){ _local8.parent = _local4.lookupParent(_local8.name); }; if (_local8.parent){ _local8.type = _local8.parent.type; }; _local9 = _arg1.attributeString(_local6, "type"); if (_local9){ if (!_local8.type){ _local8.type = _arg1.resolveDefinedName(_local9); } else { if (_local8.type !== _arg1.resolveDefinedName(_local9)){ throw (new Error("Type mismatch for component!")); }; }; }; if (!_local8.type){ throw (new Error(("Cannot determine component type for " + _local6.toXMLString()))); }; _local10 = null; if (_local8.parent){ _local10 = _local8.parent.data; }; _local8.data = _local8.type.fromXML(_arg1, _local6, _local10); _local4.addComponent(_local8); }; _local4.finalize(); return (_local4); } } }//package genius.resource.config
Section 720
//FieldBootstrap (genius.resource.config.FieldBootstrap) package genius.resource.config { import genius.resource.*; public class FieldBootstrap extends Schema { public function FieldBootstrap(){ name = "field"; } override public function fromXML(_arg1:ConfigParser, _arg2:XML, _arg3=null){ var _local4:FieldSchema = new FieldSchema(); _local4.name = _arg2.name[0].text(); if (_arg2.schema.length()){ _local4.schema = _arg1.fromXML("schema", _arg2.schema[0]); if (_arg2.default.length()){ _local4.defaultValue = _local4.schema.fromXML(_arg1, _arg2.default[0]); }; }; if (_arg2.repeated.length()){ _local4.repeated = _arg1.fromXML("boolean", _arg2.repeated[0]); } else { _local4.repeated = false; }; if (_arg2.optional.length()){ _local4.optional = _arg1.fromXML("boolean", _arg2.optional[0]); } else { _local4.optional = false; }; return (_local4); } } }//package genius.resource.config
Section 721
//FieldSchema (genius.resource.config.FieldSchema) package genius.resource.config { import genius.resource.*; public class FieldSchema extends Schema { public var optional:Boolean; public var schema:Schema; public var repeated:Boolean; public var defaultValue; protected function parseNode(_arg1:ConfigParser, _arg2:XML, _arg3=null){ var _local4:Schema = schema; var _local5:String = _arg2.@type; if (_local5){ _local4 = _arg1.resolveDefinedName(_local5); }; return (_local4.fromXML(_arg1, _arg2, _arg3)); } public function handle(_arg1:ConfigParser, _arg2:XML, _arg3, _arg4):void{ var _local7:XML; var _local8:*; var _local5:XMLList = _arg2.elements(name); var _local6:* = null; if (repeated){ _local6 = new Array(); for each (_local7 in _local5) { _local6.push(parseNode(_arg1, _local7)); }; } else { if (_local5.length() == 0){ if ((((_local6 == null)) && (!((_arg4 == null))))){ _local6 = _arg4[name]; }; if ((((_local6 == null)) && (!((defaultValue == null))))){ _local6 = defaultValue; }; if (((!(optional)) && ((_local6 == null)))){ throw (Error(((((("Did not define field: " + String(_arg3.name)) + ".") + name) + "\n") + String(_arg2)))); }; } else { _local8 = null; if (((!((_arg4 == null))) && ((name in _arg4)))){ _local8 = _arg4[name]; }; _local6 = parseNode(_arg1, _local5[0], _local8); }; }; if (_local6 != null){ _arg3[name] = _local6; }; } } }//package genius.resource.config
Section 722
//FloatSchema (genius.resource.config.FloatSchema) package genius.resource.config { import genius.resource.*; public class FloatSchema extends Schema { public function FloatSchema(){ name = "float"; } override public function fromXML(_arg1:ConfigParser, _arg2:XML, _arg3=null){ return (Number(_arg2.text())); } } }//package genius.resource.config
Section 723
//IntegerSchema (genius.resource.config.IntegerSchema) package genius.resource.config { import genius.resource.*; public class IntegerSchema extends Schema { override public function fromXML(_arg1:ConfigParser, _arg2:XML, _arg3=null){ return (int(_arg2.text())); } } }//package genius.resource.config
Section 724
//ListSchema (genius.resource.config.ListSchema) package genius.resource.config { import genius.resource.*; public class ListSchema extends Schema { override public function fromXML(_arg1:ConfigParser, _arg2:XML, _arg3=null){ var _local5:XML; var _local6:*; var _local4:Array = new Array(); for each (_local5 in _arg2.elements()) { _local6 = _arg1.fromXML(_local5.localName(), _local5); _local4.push(_local6); }; return (_local4); } } }//package genius.resource.config
Section 725
//Package (genius.resource.config.Package) package genius.resource.config { public dynamic class Package { } }//package genius.resource.config
Section 726
//PackageSchema (genius.resource.config.PackageSchema) package genius.resource.config { import genius.resource.*; public class PackageSchema extends Schema { override public function fromXML(_arg1:ConfigParser, _arg2:XML, _arg3=null){ var _local6:XML; var _local7:*; var _local8:String; var _local4:Package = new Package(); var _local5:Boolean; if (_arg1.root == null){ _local5 = true; _arg1.root = _local4; _local4.__name__ = "__root__"; } else { _local4.__name__ = _arg2.@name; }; _local4.__parent__ = _arg1.current; _arg1.current = _local4; for each (_local6 in _arg2.elements()) { _local7 = _arg1.fromXML(_local6.localName(), _local6); _local8 = _arg1.attributeString(_local6, "name"); if (_local8){ if (_local8 == ""){ throw (new Error("Attempted to define an empty name.")); }; if (_local4[_local8]){ throw (new Error((("Attempted to redefined name: '" + _local8) + "'"))); }; _local4[_local8] = _local7; }; }; _arg1.current = _local4.__parent__; if (_local5){ _arg1.root = null; }; return (_local4); } } }//package genius.resource.config
Section 727
//PointSchema (genius.resource.config.PointSchema) package genius.resource.config { import genius.resource.*; import flash.geom.*; public class PointSchema extends Schema { public function PointSchema(){ name = "point"; } override public function fromXML(_arg1:ConfigParser, _arg2:XML, _arg3=null){ var _local4:Array = _arg2.text().split(/\s+/); if (_local4.length != 2){ throw (new Error(("Cannot parse point: " + _arg2.text()))); }; var _local5:Number = Number(_local4[0]); var _local6:Number = Number(_local4[1]); return (new Point(_local5, _local6)); } } }//package genius.resource.config
Section 728
//Schema (genius.resource.config.Schema) package genius.resource.config { import genius.resource.*; import genius.actor.*; public class Schema { public var __parent__:Package;// = null public var name:String;// = "?" public function createComponent(_arg1:Engine, _arg2:GameObject, _arg3){ throw (new Error(((("Cannot create component out of " + name) + " - ") + _arg3))); } public function fullName():String{ var _local1 = "?"; if (__parent__){ _local1 = __parent__.fullName(); }; return (((_local1 + ".") + name)); } public function fromXML(_arg1:ConfigParser, _arg2:XML, _arg3=null){ throw (new Error("fromXML is not implemented")); } } }//package genius.resource.config
Section 729
//StringSchema (genius.resource.config.StringSchema) package genius.resource.config { import genius.resource.*; public class StringSchema extends Schema { public function StringSchema(){ name = "string"; } override public function fromXML(_arg1:ConfigParser, _arg2:XML, _arg3=null){ return (_arg2.text().toString().replace(/\r/g, "")); } } }//package genius.resource.config
Section 730
//StructureBootstrap (genius.resource.config.StructureBootstrap) package genius.resource.config { import genius.resource.*; import flash.utils.*; public class StructureBootstrap extends Schema { public function StructureBootstrap(){ name = "schema"; } override public function fromXML(_arg1:ConfigParser, _arg2:XML, _arg3=null){ var _local4:*; var _local5:StructureSchema; var _local6:String; var _local7:XML; if ((((_arg2.elements().length() == 0)) && (String(_arg2.text())))){ _local4 = _arg1.resolveName(_arg2.text()); if (!_local4){ throw (new Error(("Reference to undefined name: " + _arg2.text()))); }; return (_local4); //unresolved jump }; _local5 = new StructureSchema(); _local5.__parent__ = _arg1.current; _local5.name = _arg2.@name; _local6 = _arg1.attributeString(_arg2, "extends"); if (_local6){ _local5.parent = _arg1.resolveName(_local6); }; if (_arg2.native.length()){ _local5.nativeType = getDefinitionByName(_arg2.native[0].text()); }; if (_arg2.componentType.length()){ _local5.componentType = (getDefinitionByName(_arg2.componentType[0].text()) as Class); }; if (!_local5.nativeType){ _local5.nativeType = ResourceGlob; }; if (_arg2.dopostload.length()){ _local5.dopostload = _arg1.fromXML("boolean", _arg2.dopostload[0]); } else { _local5.dopostload = false; }; _local5.fields = new Array(); for each (_local7 in _arg2.field) { _local5.fields.push(_arg1.fromXML("field", _local7)); }; return (_local5); } } }//package genius.resource.config import genius.component.*; import genius.actor.*; dynamic class ResourceGlob implements IComponent { private function ResourceGlob(){ } public function link(_arg1:Engine, _arg2:GameObject):void{ } public function destroy(_arg1:Engine, _arg2:GameObject):void{ } public function configure(_arg1:Engine, _arg2:GameObject, _arg3):void{ } }
Section 731
//StructureSchema (genius.resource.config.StructureSchema) package genius.resource.config { import genius.resource.*; import genius.component.*; import genius.actor.*; public class StructureSchema extends Schema { public var parent:StructureSchema;// = null public var dopostload:Boolean; public var componentType:Class; public var nativeType:Object; public var fields:Array; override public function createComponent(_arg1:Engine, _arg2:GameObject, _arg3){ var _local4:IComponent; if (componentType){ _local4 = new componentType(); _local4.configure(_arg1, _arg2, _arg3); return (_local4); }; return (_arg3); } public function parseFields(_arg1:ConfigParser, _arg2:XML, _arg3, _arg4=null){ var _local5:FieldSchema; if (parent){ parent.parseFields(_arg1, _arg2, _arg3, _arg4); }; for each (_local5 in fields) { _local5.handle(_arg1, _arg2, _arg3, _arg4); }; } override public function fromXML(_arg1:ConfigParser, _arg2:XML, _arg3=null){ var _local4:String; var _local5:*; if ((((_arg2.elements().length() == 0)) && (String(_arg2.text())))){ return (_arg1.resolveDefinedName(_arg2.text())); }; _local4 = _arg1.attributeString(_arg2, "extends"); if (_local4){ _arg3 = _arg1.resolveDefinedName(_local4); }; _local5 = new nativeType(); parseFields(_arg1, _arg2, _local5, _arg3); if (dopostload){ _local5.postload(_arg1.engine); }; return (_local5); } } }//package genius.resource.config
Section 732
//ConfigParser (genius.resource.ConfigParser) package genius.resource { import flash.events.*; import genius.resource.config.*; import flash.net.*; public class ConfigParser { public var root:Package; protected var strict:Boolean;// = false public var builtins:Package; public var engine:Engine; public var current:Package; public function ConfigParser(_arg1:Engine){ this.engine = _arg1; builtins = new Package(); builtins.__name__ = "__builtins__"; builtins["package"] = new PackageSchema(); builtins["list"] = new ListSchema(); builtins["schema"] = new StructureBootstrap(); builtins["field"] = new FieldBootstrap(); builtins["integer"] = new IntegerSchema(); builtins["float"] = new FloatSchema(); builtins["string"] = new StringSchema(); builtins["boolean"] = new BooleanSchema(); builtins["color"] = new ColorSchema(); builtins["point"] = new PointSchema(); builtins["entity"] = new EntitySchema(); current = root; } public function resolveDefinedName(_arg1:String){ var _local2:* = resolveName(_arg1); if (_arg1 == null){ throw (new Error(("Reference to undefined name: " + _arg1))); }; return (_local2); } public function attributeString(_arg1:XML, _arg2:String):String{ var _local3:XMLList = _arg1.attribute(_arg2); if (_local3.length() > 0){ return (_local3.toString()); }; return (null); } public function fromXML(_arg1:String, _arg2:XML){ var _local3:Schema = resolveName(_arg1); if (!_local3){ throw (new Error(("Cannot find schema: " + _arg1))); }; var _local4:* = _local3.fromXML(this, _arg2); return (_local4); } public function resolveName(_arg1:String){ var _local4:Package; var _local6:String; if (!_arg1){ throw (new Error("Cannot resolve empty name.")); }; var _local2:Array = _arg1.split("."); var _local3:String = _local2.pop(); if (_local2.length > 0){ _local4 = root; if (_local4 == null){ return (null); }; for each (_local6 in _local2) { _local4 = _local4[_local6]; if (_local4 == null){ return (null); }; }; } else { _local4 = current; }; var _local5:* = null; if (_local4 != null){ _local5 = _local4[_local3]; }; if ((((((_local5 == null)) && (!((_local4 == root))))) && (!((root == null))))){ _local5 = root[_local3]; }; if (_local5 == null){ _local5 = builtins[_local3]; }; return (_local5); } } }//package genius.resource
Section 733
//DataLoader (genius.resource.DataLoader) package genius.resource { import flash.events.*; import flash.display.*; import flash.media.*; import flash.net.*; import flash.system.*; import generated.*; public class DataLoader { protected const errorsAreFatal:Boolean = false; protected var waterline:int; public var soundLoaderContext:SoundLoaderContext; protected var tasks:Array; protected var queue:Array; public var loaderContext:LoaderContext; protected var rootDirectory:String; protected var info:IEventDispatcher; protected var listener:ILoaderListener; protected var current:DataLoaderItem; public function DataLoader(_arg1:String){ rootDirectory = _arg1; loaderContext = new LoaderContext(); soundLoaderContext = new SoundLoaderContext(); queue = new Array(); tasks = new Array(); var _local2:int; while (_local2 < 2) { tasks.push(new DataLoaderTask(_arg1, this)); _local2++; }; current = null; } protected function loadNext():void{ advanceCurrent(); var _local1:String = ResourceEmbedding.DONE; while (current) { _local1 = ResourceEmbedding.getResource(this, current.url); _local1; if (_local1 != ResourceEmbedding.DONE){ break; }; advanceCurrent(); }; if (current){ if (_local1 == ResourceEmbedding.FAIL){ initiateLoading(); }; } else { (waterline = 0); if (listener){ listener.loadingCompleted(); }; }; } protected function loadError(_arg1:IOErrorEvent):void{ if (current.retries){ (current.retries = (current.retries - 1)); retry(); } else { logError(_arg1.text); cleanupCurrent(); }; } protected function logError(_arg1:String):void{ trace(_arg1); if (errorsAreFatal){ throw (new Error(("Load failed! " + _arg1))); }; } protected function removeListeners():void{ info.removeEventListener(Event.OPEN, loadOpen); info.removeEventListener(ProgressEvent.PROGRESS, loadProgress); info.removeEventListener(Event.COMPLETE, loadCompleteCallback); info.removeEventListener(SecurityErrorEvent.SECURITY_ERROR, securityError); info.removeEventListener(IOErrorEvent.IO_ERROR, loadError); (info = null); } public function update():void{ var _local1:DataLoaderTask; for each (_local1 in tasks) { }; if (listener){ listener.loadingProgress(progress()); }; } protected function loadSound(_arg1:String, _arg2:Function):void{ var _local3:Sound = new Sound(); addListeners(_local3); _local3.load(new URLRequest(_arg1), soundLoaderContext); } protected function loadImage(_arg1:String, _arg2:Function):void{ var _local3:Loader = new Loader(); addListeners(_local3.contentLoaderInfo); _local3.load(new URLRequest(_arg1), loaderContext); } protected function advanceCurrent():void{ if (queue.length){ (current = queue.shift()); } else { (current = null); }; } protected function loadXML(_arg1:String, _arg2:Function):void{ (XML.ignoreWhitespace = true); var _local3:URLLoader = new URLLoader(); addListeners(_local3); _local3.load(new URLRequest(_arg1)); } protected function addListeners(_arg1:IEventDispatcher):void{ (info = _arg1); info.addEventListener(Event.OPEN, loadOpen); info.addEventListener(ProgressEvent.PROGRESS, loadProgress); info.addEventListener(Event.COMPLETE, loadCompleteCallback); info.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityError); info.addEventListener(IOErrorEvent.IO_ERROR, loadError); } protected function loadOpen(_arg1:Event):void{ } protected function loadCompleteCallback(_arg1:Event):void{ var _local2:*; if ((_arg1.target is Sound)){ _local2 = _arg1.target; _local2; } else { if ((_arg1.target is URLLoader)){ _local2 = _arg1.target.data; _local2; if (current.isXML()){ _local2 = XML(_local2); _local2; }; } else { _local2 = _arg1.target.content; _local2; }; }; loadComplete(_local2); cleanupCurrent(); } public function loadBytes(_arg1):void{ var _local2:Loader = new Loader(); addListeners(_local2.contentLoaderInfo); _local2.loadBytes(_arg1, loaderContext); } public function load(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{ queue.push(new DataLoaderItem(_arg1, _arg2, _arg3)); (waterline = (waterline + 1)); } public function begin():void{ if (current == null){ (waterline = queue.length); if (listener){ listener.loadingStarted(); }; loadNext(); }; } protected function initiateLoading():void{ var _local1:String = (rootDirectory + current.url); if (current.isImage()){ loadImage(_local1, current.callback); } else { if (current.isSound()){ loadSound(_local1, current.callback); } else { if (current.isXML()){ loadXML(_local1, current.callback); } else { if (current.isSWF()){ loadSWF(_local1, current.callback); } else { throw (new Error(("Unreconized file type: " + current.url))); }; }; }; }; } public function progress():Number{ if (waterline == 0){ return (1); }; return (((waterline - queue.length) / Number(waterline))); } protected function securityError(_arg1:IOErrorEvent):void{ logError(_arg1.text); cleanupCurrent(); } public function numPending():int{ return (queue.length); } protected function cleanupCurrent():void{ removeListeners(); loadNext(); } protected function retry():void{ removeListeners(); trace("retry", current.url); initiateLoading(); } protected function loadProgress(_arg1:ProgressEvent):void{ if (((current.stream) && (!(_arg1.target.isBuffering)))){ trace("Buffering Complete", (rootDirectory + current.url), _arg1.target.bytesLoaded, _arg1.target.bytesTotal); current.callback(_arg1.target); cleanupCurrent(); }; } protected function loadSWF(_arg1:String, _arg2:Function):void{ var _local3:Loader = new Loader(); addListeners(_local3.contentLoaderInfo); _local3.load(new URLRequest(_arg1), loaderContext); } public function setListener(_arg1:ILoaderListener):void{ (listener = _arg1); if (((listener) && (!((current == null))))){ listener.loadingStarted(); }; } public function loadComplete(_arg1):void{ trace("complete", (rootDirectory + current.url)); current.callback(_arg1); } } }//package genius.resource
Section 734
//DataLoaderItem (genius.resource.DataLoaderItem) package genius.resource { public class DataLoaderItem { public var stream:Boolean; public var retries:int; public var callback:Function; public var url:String; protected static var soundRE:RegExp = /\.(wav|mp3)$/i; protected static var swfRE:RegExp = /\.(swf)$/i; protected static var xmlRE:RegExp = /\.(xml)$/i; protected static var imageRE:RegExp = /\.(png|gif|jpg|jpeg)$/i; public function DataLoaderItem(_arg1:String, _arg2:Function, _arg3:Boolean=false){ this.url = _arg1; this.callback = _arg2; this.stream = _arg3; retries = 3; } public function isSound():Boolean{ return (soundRE.test(url)); } public function isXML():Boolean{ return (xmlRE.test(url)); } public function isImage():Boolean{ return (imageRE.test(url)); } public function isSWF():Boolean{ return (swfRE.test(url)); } } }//package genius.resource
Section 735
//DataLoaderTask (genius.resource.DataLoaderTask) package genius.resource { import flash.events.*; import flash.display.*; import flash.media.*; import flash.net.*; import generated.*; public class DataLoaderTask { protected const errorsAreFatal:Boolean = false; protected var loader:DataLoader; protected var _amountDone:Number; protected var _done:Boolean; protected var root:String; protected var loaderInfo:IEventDispatcher; protected var info:DataLoaderItem; public function DataLoaderTask(_arg1:String, _arg2:DataLoader){ this.root = _arg1; this.loader = _arg2; _done = true; _amountDone = 1; } protected function securityError(_arg1:IOErrorEvent):void{ logError(_arg1.text); taskFinished(); } protected function logError(_arg1:String):void{ trace(_arg1); if (errorsAreFatal){ throw (new Error(("Load failed! " + _arg1))); }; } protected function loadFile():void{ if (info.isImage()){ loadImage(fullURL, info.callback); } else { if (info.isSound()){ loadSound(fullURL, info.callback); } else { if (info.isXML()){ loadXML(fullURL, info.callback); } else { if (info.isSWF()){ loadSWF(fullURL, info.callback); } else { throw (new Error(("Unreconized file type: " + info.url))); }; }; }; }; } protected function loadProgress(_arg1:ProgressEvent):void{ _amountDone = (Number(_arg1.bytesLoaded) / Math.max(_arg1.bytesTotal, 1)); if (((info.stream) && (!(_arg1.target.isBuffering)))){ trace("Buffering Complete", fullURL, _arg1.target.bytesLoaded, _arg1.target.bytesTotal); info.callback(_arg1.target); taskFinished(); }; } protected function loadSound(_arg1:String, _arg2:Function):void{ var _local3:Sound = new Sound(); addListeners(_local3); _local3.load(new URLRequest(_arg1), this.loader.soundLoaderContext); } protected function loadImage(_arg1:String, _arg2:Function):void{ var _local3:Loader = new Loader(); addListeners(_local3.contentLoaderInfo); _local3.load(new URLRequest(_arg1), this.loader.loaderContext); } protected function loadOpen(_arg1:Event):void{ } protected function loadXML(_arg1:String, _arg2:Function):void{ XML.ignoreWhitespace = true; var _local3:URLLoader = new URLLoader(); addListeners(_local3); _local3.load(new URLRequest(_arg1)); } public function done():Boolean{ return (_done); } protected function addListeners(_arg1:IEventDispatcher):void{ loaderInfo = _arg1; loaderInfo.addEventListener(Event.OPEN, loadOpen); loaderInfo.addEventListener(ProgressEvent.PROGRESS, loadProgress); loaderInfo.addEventListener(Event.COMPLETE, loadCompleteCallback); loaderInfo.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityError); loaderInfo.addEventListener(IOErrorEvent.IO_ERROR, loadError); } protected function get fullURL():String{ return ((root + info.url)); } protected function loadCompleteCallback(_arg1:Event):void{ var _local2:*; if ((_arg1.target is Sound)){ _local2 = _arg1.target; } else { if ((_arg1.target is URLLoader)){ _local2 = _arg1.target.data; if (info.isXML()){ _local2 = XML(_local2); }; } else { _local2 = _arg1.target.content; }; }; loadComplete(_local2); taskFinished(); } public function loadBytes(_arg1):void{ info.retries = 0; var _local2:Loader = new Loader(); addListeners(_local2.contentLoaderInfo); _local2.loadBytes(_arg1, this.loader.loaderContext); } protected function removeListeners():void{ loaderInfo.removeEventListener(Event.OPEN, loadOpen); loaderInfo.removeEventListener(ProgressEvent.PROGRESS, loadProgress); loaderInfo.removeEventListener(Event.COMPLETE, loadCompleteCallback); loaderInfo.removeEventListener(SecurityErrorEvent.SECURITY_ERROR, securityError); loaderInfo.removeEventListener(IOErrorEvent.IO_ERROR, loadError); loaderInfo = null; } protected function tryEmbeddedLoad():Boolean{ var _local1:* = ResourceEmbedding.getResource(loader, info.url); if (_local1){ trace("Embedded", info.url); info.callback(_local1); return (true); }; return (false); } public function load(_arg1:DataLoaderItem):void{ this.info = _arg1; _done = false; _amountDone = 0; _arg1.retries = 3; } protected function loadError(_arg1:IOErrorEvent):void{ if (info.retries){ info.retries = (info.retries - 1); retry(); } else { logError(_arg1.text); taskFinished(); }; } protected function retry():void{ removeListeners(); trace("retry", info.url); loadFile(); } protected function taskFinished():void{ removeListeners(); _done = true; _amountDone = 1; } public function amountDone():Number{ return (_amountDone); } protected function loadSWF(_arg1:String, _arg2:Function):void{ var _local3:Loader = new Loader(); addListeners(_local3.contentLoaderInfo); _local3.load(new URLRequest(_arg1), this.loader.loaderContext); } public function loadComplete(_arg1):void{ trace("Complete", fullURL); info.callback(_arg1); } } }//package genius.resource
Section 736
//ILoaderListener (genius.resource.ILoaderListener) package genius.resource { public interface ILoaderListener { function loadingProgress(_arg1:Number):void; function loadingStarted():void; function loadingCompleted():void; } }//package genius.resource
Section 737
//SoundChannel (genius.sound.SoundChannel) package genius.sound { import flash.events.*; import flash.media.*; public class SoundChannel { protected var queue:Array; public var name:String; public var limit:int; public function SoundChannel(_arg1:String, _arg2:int){ this.name = _arg1; this.limit = _arg2; queue = new Array(); } protected function soundCompleteHandler(_arg1:Event):void{ var _local2:SoundChannel = (_arg1.target as SoundChannel); _local2.removeEventListener(Event.SOUND_COMPLETE, soundCompleteHandler); var _local3:int = queue.indexOf(_local2); if (_local3 >= 0){ queue.splice(_local3, 1); }; } public function addSound(_arg1:SoundChannel):void{ makeSpace(); _arg1.addEventListener(Event.SOUND_COMPLETE, soundCompleteHandler); queue.push(_arg1); } public function makeSpace():void{ if (limit > 0){ while (queue.length >= limit) { kill(queue.shift()); }; }; } public function stop():void{ while (queue.length) { kill(queue.shift()); }; } protected function kill(_arg1:SoundChannel):void{ _arg1.removeEventListener(Event.SOUND_COMPLETE, soundCompleteHandler); _arg1.stop(); } } }//package genius.sound
Section 738
//SoundData (genius.sound.SoundData) package genius.sound { import flash.media.*; public class SoundData { public var stream:Boolean; public var trim:Number; public var data:Sound; public var name:String; public var url:String; public function SoundData(){ trim = 1; } public function postload(_arg1:Engine):void{ _arg1.dataloader.load(url, soundLoaded, stream); } public function soundLoaded(_arg1:Sound):void{ data = _arg1; } } }//package genius.sound
Section 739
//SoundManager (genius.sound.SoundManager) package genius.sound { import flash.geom.*; import flash.media.*; public class SoundManager { protected var engine:Engine; protected var channels:Object; protected var globalVolume:Number; protected var sfxMute:Boolean;// = false public function SoundManager(_arg1:Engine){ this.engine = _arg1; channels = {}; setVolume(1); createChannel("default", -1); createChannel("ghost", 2); createChannel("coin", 2); createChannel("door", 2); createChannel("music", 1); } public function setSFXMute(_arg1:Boolean):void{ var _local2:SoundChannel; if (sfxMute != _arg1){ sfxMute = _arg1; if (sfxMute){ for each (_local2 in channels) { if (_local2.name != "music"){ _local2.stop(); }; }; }; }; } public function createChannel(_arg1:String, _arg2:int=-1):void{ channels[_arg1] = new SoundChannel(_arg1, _arg2); } public function playPositioned(_arg1:SoundData, _arg2:String, _arg3:Number, _arg4:Point):void{ play(_arg1, _arg2, _arg3, engine.rendering.panning(_arg4)); } public function setVolume(_arg1:Number):void{ globalVolume = _arg1; SoundMixer.soundTransform = new SoundTransform(_arg1, 0); } public function pauseMusic():void{ channels.music.stop(); } public function playMusic(_arg1:SoundData):void{ resumeMusic(_arg1); } public function play(_arg1:SoundData, _arg2:String=null, _arg3:Number=1, _arg4:Number=0, _arg5:int=0, _arg6:int=0):SoundChannel{ var _local7:SoundChannel; if (!((_arg2) && ((_arg2 in channels)))){ _arg2 = "default"; }; if (((sfxMute) && (!((_arg2 == "music"))))){ return (null); }; if (((((_arg1.data) && (_arg3))) && (_arg1.trim))){ channels[_arg2].makeSpace(); if (_arg5 > (_arg1.data.length - 1)){ _arg5 = (_arg1.data.length - 1); }; _local7 = _arg1.data.play(_arg5, _arg6, new SoundTransform((_arg3 * _arg1.trim), _arg4)); channels[_arg2].addSound(_local7); return (_local7); //unresolved jump }; return (null); } public function resumeMusic(_arg1:SoundData):void{ play(_arg1, "music", 1, 0, 0, 2000000000); } } }//package genius.sound
Section 740
//Encoder (genius.util.Encoder) package genius.util { public class Encoder { private static const rl2n:Object = {ƒ:145, :250, ‡:222, :30, ‹:228, :213, :68, :169, “:143, :154, —:190, :252, ›:87, :15, Ÿ:106, :101, £:148, $:67, §:204, (:81, «:211, ,:184, ¯:140, 0:62, ³:31, 4:75, ·:42, 8:34, »:231, <:163, ¿:115, @:103, Ã:142, D:2, Ç:181, H:77, Ë:82, L:25, Ï:28, P:157, Ó:151, T:29, ×:78, X:224, Û:39, \:179, ß:7, `:203, ã:249, d:21, ç:22, h:168, ë:54, l:217, ï:27, p:209, ó:195, t:76, ÷:193, x:198, û:79, |:95, ÿ:218, €:144, :159, „:210, :153, ˆ:214, :180, Œ:70, :248, :183, :93, ”:185, :188, ˜:13, :59, œ:73, :60,  :120, #:26, ¤:241, ':227, ¨:176, +:128, ¬:61, /:57, °:20, 3:55, ´:51, 7:126, ¸:83, ;:18, ¼:10, ?:229, À:237, C:225, Ä:171, G:69, È:138, K:94, Ì:12, O:223, Ð:119, S:24, Ô:251, W:196, Ø:105, [:33, Ü:240, _:40, à:112, c:113, ä:216, g:215, è:177, k:226, ì:197, o:254, ð:85, s:89, ô:23, w:16, ø:98, {:132, ü:36, :50, :102, :152, …:208, :108, ‰:90, :88, :99, :187, ‘:46, :111, •:37, :221, ™:178, :43, :239, :234, ¡:64, ":230, ¥:243, &:253, ©:117, *:45, ­:158, .:189, ±:122, 2:118, µ:125, 6:96, ¹:127, ::207, ½:129, >:146, Á:130, B:136, Å:191, F:5, É:0, J:219, Í:172, N:245, Ñ:166, R:44, Õ:32, V:49, Ù:47, Z:150, Ý:71, ^:186, á:236, b:205, å:97, f:80, é:212, j:170, í:137, n:164, ñ:63, r:194, õ:242, v:48, ù:238, z:201, ý:123, ~:160, :162, ‚:235, :139, †:110, :247, Š:131, :91, Ž:58, :174, ’:19, :52, –:104, :147, š:244, :3, ž:202, !:167, ¢:92, %:233, ¦:14, ):192, ª:4, -:53, ®:135, 1:200, ²:149, 5:173, ¶:86, 9:11, º:161, =:109, ¾:199, A:175, Â:56, E:156, Æ:107, I:9, Ê:155, M:84, Î:66, Q:182, Ò:133, U:206, Ö:220, Y:165, Ú:1, ]:124, Þ:38, a:17, â:121, e:41, æ:246, i:116, ê:65, m:134, î:114, q:8, ò:141, u:35, ö:74, y:6, ú:100, }:232, þ:72}; private static const rn2l:String = ") ´ä>Ÿh×ÏÂQSÓvö€Zº0yÅÕ4¢§œ#˜3•ABÿ½ÛªÀ¿6:é+T,$¾¨7o‘bd“N óþ=¦~µtÃ}ò'ý¬îðÚåsñ W¡?®%w^í¼·ž‹—ãˆuÊcf{n»¹ û¥e]õ„F’¶pOP”zìCç˃M*qÎÝ(©YÑôß²Ö£j`H…â<r1[mŠ­Ç@|šL"³¤Ž8êiÆæ¸ÔÉl±kKU;úë–ÈÁ‚ÞÍ a2DEG.ùR°Ü9x!ÙJ› &™‡Iü¯\_VàÄï÷Œ/èXІg‰ÒØÌø5-á«"; public static function reverse(_arg1:String):String{ return (scramble(_arg1, rl2n, rn2l)); } private static function scramble(_arg1:String, _arg2:Object, _arg3:String):String{ var _local6:String; var _local4 = ""; var _local5:int; while (_local5 < _arg1.length) { _local6 = _arg1.charAt(_local5); if ((_local6 in _arg2)){ _local6 = _arg3.charAt(((_arg2[_local6] + _local5) % _arg3.length)); }; _local4 = (_local4 + _local6); _local5++; }; return (_local4); } } }//package genius.util
Section 741
//GameTimer (genius.util.GameTimer) package genius.util { import flash.utils.*; public class GameTimer { public var elapsed:int; public var ticks:uint; public var tickTime:Number; public var timeLimit:Number; public var dt:Number; protected var last:int; protected var accum:Number; public var tickRate:uint; public var tickLimit:uint; public function GameTimer(_arg1:uint, _arg2:uint=2, _arg3:Number=0.1){ setTickRate(_arg1); this.tickLimit = _arg2; this.timeLimit = _arg3; reset(); } public function newFrame():void{ var _local1:int = getTimer(); elapsed = (_local1 - last); last = _local1; dt = (elapsed / 1000); accum = (accum + dt); accum = Math.min(accum, timeLimit); ticks = 0; while ((((accum > tickTime)) && ((ticks <= tickLimit)))) { accum = (accum - tickTime); ticks = (ticks + 1); }; } public function reset():void{ last = getTimer(); accum = 0; } public function setTickRate(_arg1:uint):void{ this.tickRate = _arg1; tickTime = (1 / _arg1); } } }//package genius.util
Section 742
//LinkedList (genius.util.LinkedList) package genius.util { public class LinkedList { public var next; public var prev; public function makeRoot():void{ prev = this; next = this; } public function unlink():void{ if (prev != null){ prev.next = next; next.prev = prev; next = null; prev = null; }; } public function insertBefore(_arg1:LinkedList):void{ unlink(); prev = _arg1.prev; next = _arg1; prev.next = this; next.prev = this; } } }//package genius.util
Section 743
//MathUtil (genius.util.MathUtil) package genius.util { import flash.geom.*; public class MathUtil { protected static const mipScale:Number = 0.721347520444482; public static function blendPoints(_arg1:Point, _arg2:Point, _arg3:Number):Point{ return (new Point(((_arg1.x * (1 - _arg3)) + (_arg2.x * _arg3)), ((_arg1.y * (1 - _arg3)) + (_arg2.y * _arg3)))); } public static function random(_arg1:int):int{ return (Math.floor((Math.random() * _arg1))); } public static function randomChoice(_arg1:Array){ return (_arg1[random(_arg1.length)]); } public static function fuzzyEQ(_arg1:Number, _arg2:Number, _arg3:Number=1E-6):Boolean{ return ((Math.abs((_arg1 - _arg2)) < (Math.max(Math.abs(_arg1), Math.abs(_arg2), 1) * _arg3))); } public static function matrixScale(_arg1:Matrix):Number{ return (Math.sqrt((matrixScaleSquared(_arg1) * 0.5))); } public static function wrap(_arg1:Number, _arg2:Number, _arg3:Number):Number{ var _local4:Number = (_arg3 - _arg2); if (_arg1 >= _arg3){ while (_arg1 >= _arg3) { _arg1 = (_arg1 - _local4); }; } else { if (_arg1 < _arg2){ while (_arg1 < _arg2) { _arg1 = (_arg1 + _local4); }; }; }; return (_arg1); } public static function frame(_arg1:Number, _arg2:int):int{ return (clamp(Math.floor(_arg1), 0, (_arg2 - 1))); } public static function saturate(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number):Number{ var _local6:Number; var _local7:Number; if (_arg1 < _arg3){ _local6 = (_arg3 - _arg1); _local7 = (_local6 / (1 + _local6)); return ((_arg3 + (_local7 * (_arg2 - _arg3)))); }; if (_arg1 > _arg4){ _local6 = (_arg1 - _arg4); _local7 = (_local6 / (1 + _local6)); return ((_arg4 + (_local7 * (_arg5 - _arg4)))); }; return (_arg1); } public static function randomAngle():Number{ return (_slot1.uniform(-(Math.PI), Math.PI)); } public static function uniform(_arg1:Number, _arg2:Number):Number{ return ((_arg1 + (Math.random() * (_arg2 - _arg1)))); } public static function mipLevel(_arg1:Matrix):Number{ var _local2:Number = matrixScaleSquared(_arg1); var _local3:Number = ((mipScale * Math.log(_local2)) - 0.5); return (_local3); } public static function randrange(_arg1:int, _arg2:int):int{ return ((_arg1 + random(((_arg2 - _arg1) + 1)))); } public static function clamp(_arg1:Number, _arg2:Number, _arg3:Number):Number{ return (Math.min(Math.max(_arg1, _arg2), _arg3)); } public static function randomDirection(_arg1:Number=1):Point{ var _local2:Number = randomAngle(); return (new Point((Math.cos(_local2) * _arg1), (Math.sin(_local2) * _arg1))); } public static function reflect(_arg1:Number, _arg2:Number, _arg3:Number):Number{ while (true) { if (_arg1 > _arg3){ _arg1 = ((2 * _arg3) - _arg1); } else { if (_arg1 < _arg2){ _arg1 = ((2 * _arg2) - _arg1); } else { break; }; }; }; return (_arg1); } public static function matrixScaleSquared(_arg1:Matrix):Number{ return (((((_arg1.a * _arg1.a) + (_arg1.b * _arg1.b)) + (_arg1.c * _arg1.c)) + (_arg1.d * _arg1.d))); } } }//package genius.util
Section 744
//PerformanceMonitor (genius.util.PerformanceMonitor) package genius.util { import flash.display.*; import flash.utils.*; import flash.text.*; import flash.system.*; public class PerformanceMonitor extends Sprite { protected var times:TextField; protected var names:TextField; protected var averageTime:Object; protected var header:TextField; protected var startTime:Object; protected var windowStart:int; protected var windowSize:int;// = 30 protected var fps:TextField; protected var baseMemory:int; protected var currentFrame:int;// = 0 protected var totalTime:Object; public function PerformanceMonitor(){ startTime = new Object(); totalTime = new Object(); averageTime = new Object(); header = new TextField(); names = new TextField(); times = new TextField(); fps = new TextField(); super(); header.textColor = 13373747; header.selectable = false; header.mouseEnabled = false; header.autoSize = TextFieldAutoSize.LEFT; addChild(header); names.textColor = 13373747; names.selectable = false; names.mouseEnabled = false; names.autoSize = TextFieldAutoSize.LEFT; addChild(names); times.textColor = 13373747; times.selectable = false; times.mouseEnabled = false; times.autoSize = TextFieldAutoSize.LEFT; addChild(times); fps.textColor = 13373747; fps.selectable = false; fps.mouseEnabled = false; fps.autoSize = TextFieldAutoSize.LEFT; addChild(fps); setMemoryBaseline(); currentFrame = 0; windowStart = getTimer(); this.mouseEnabled = false; } public function beginFrame():void{ var _local1:String; for (_local1 in startTime) { throw (new Error(("Did not end name: " + _local1))); }; currentFrame = (currentFrame + 1); if (currentFrame >= windowSize){ recalculate(); currentFrame = 0; windowStart = getTimer(); }; } public function setFont(_arg1:String, _arg2:Number):void{ var _local3:TextFormat = new TextFormat(_arg1, _arg2, 213979952, false, false, false); header.defaultTextFormat = _local3; names.defaultTextFormat = _local3; times.defaultTextFormat = _local3; fps.defaultTextFormat = _local3; } protected function recalculate():void{ var _local3:String; var _local4:Number; var _local1:Number = ((getTimer() - windowStart) / currentFrame); var _local2:Number = (System.totalMemory - baseMemory); header.text = (((1000 / _local1).toFixed(1) + " fps") + "\n"); header.appendText(((_local2 / (0x0400 * 0x0400)).toFixed(1) + " MB memory")); names.text = ""; times.text = ""; fps.text = ""; for (_local3 in totalTime) { _local4 = (totalTime[_local3] / currentFrame); delete totalTime[_local3]; names.appendText((_local3 + "\n")); times.appendText(((_local4.toFixed(1) + " ms") + "\n")); fps.appendText((((1000 / _local4).toFixed(1) + " fps") + "\n")); }; names.y = (header.height + 2); times.y = (header.height + 2); fps.y = (header.height + 2); times.x = Math.max(((names.x + names.width) + 10), times.x); fps.x = Math.max(((times.x + times.width) + 10), fps.x); } public function end(_arg1:String):void{ if (startTime[_arg1] == null){ throw (new Error(("Attempted to end a name without begining it: " + _arg1))); }; if (totalTime[_arg1] == null){ totalTime[_arg1] = 0; }; totalTime[_arg1] = (totalTime[_arg1] + (getTimer() - startTime[_arg1])); delete startTime[_arg1]; } public function setMemoryBaseline():void{ Engine.forceGC(); baseMemory = System.totalMemory; } public function begin(_arg1:String):void{ if (startTime[_arg1] != null){ throw (new Error(("Attempted to begin the same name twice: " + _arg1))); }; startTime[_arg1] = getTimer(); } } }//package genius.util
Section 745
//URLLink (genius.util.URLLink) package genius.util { import flash.net.*; import flash.external.*; public class URLLink { public static const SAFARI:String = "Safari"; public static const CHROME:String = "Chrome"; public static const MSIE:String = "MSIE"; public static const UNKNOWN:String = "Unknown"; public static const OPERA:String = "Opera"; public static const FIREFOX:String = "Firefox"; public static function open(_arg1:String, _arg2:String="_blank"):void{ var _local3:String = identifyBrowser(); trace("browser", _local3); if ((((_local3 == FIREFOX)) || ((_local3 == MSIE)))){ if (!jsNavigate(_arg1, _arg2)){ builtinNavigate(_arg1, _arg2); }; } else { if (!builtinNavigate(_arg1, _arg2)){ jsNavigate(_arg1, _arg2); }; }; } protected static function builtinNavigate(_arg1:String, _arg2:String):Boolean{ var url = _arg1; var window = _arg2; try { navigateToURL(new URLRequest(url), window); } catch(e:SecurityError) { trace("builtin security", url, e); return (false); } catch(e:Error) { trace("builtin error", url, e); return (false); }; return (true); } protected static function jsNavigate(_arg1:String, _arg2:String):Boolean{ if (ExternalInterface.available){ ExternalInterface.call("window.open", _arg1, _arg2); return (true); }; return (false); } protected static function identifyBrowser():String{ var _local1:String; if (ExternalInterface.available){ _local1 = ExternalInterface.call("function (){return navigator.userAgent;}"); }; if (_local1){ if (_local1.indexOf("Firefox") != -1){ return (FIREFOX); }; if (_local1.indexOf("MSIE") != -1){ return (MSIE); }; if (_local1.indexOf("Safari") != -1){ return (SAFARI); }; if (_local1.indexOf("Opera") != -1){ return (OPERA); }; if (_local1.indexOf("Chrome") != -1){ return (CHROME); }; }; return (UNKNOWN); } } }//package genius.util
Section 746
//MochiAd (mochi.as3.MochiAd) package mochi.as3 { import flash.display.*; import flash.events.*; import flash.utils.*; import flash.net.*; import flash.system.*; public class MochiAd { public static function getVersion():String{ return (MochiServices.getVersion()); } public static function showClickAwayAd(_arg1:Object):void{ var clip:Object; var mc:MovieClip; var chk:MovieClip; var options = _arg1; var DEFAULTS:Object = {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; var ad_timeout:Number = 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(); }; var wh:Array = MochiAd._getRes(options, clip); var w:Number = wh[0]; var h:Number = 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); }; var sendHostProgress:Boolean; mc.regContLC = function (_arg1:String):void{ mc._containerLCName = _arg1; }; chk["onEnterFrame"] = function ():void{ var _local4:Number; if (!this.parent){ delete this.onEnterFrame; return; }; var _local1:Object = this.parent._mochiad_ctr; var _local2:Number = (getTimer() - this.started); var _local3:Boolean; 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 = _arg1.split("/")[2].split(":")[0]; if (Security.sandboxType == "application"){ return (_local2); }; 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 clip:Object; var mc:MovieClip; var chk:MovieClip; var options = _arg1; var DEFAULTS:Object = {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; var ad_msec:Number = 11000; var ad_timeout:Number = options.ad_timeout; delete options.ad_timeout; var fadeout_time:Number = 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(); }; var wh:Array = MochiAd._getRes(options, clip); var w:Number = wh[0]; var h:Number = 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{ if (!this.parent){ delete this.onEnterFrame; delete this.fadeFunction; return; }; var _local1:Number = (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 = 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 _local4:Number; if (!this.parent){ delete this.onEnterFrame; delete this.fadeFunction; return; }; var _local1:Object = this.parent._mochiad_ctr; var _local2:Number = (getTimer() - this.started); var _local3:Boolean; 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 _local4:String; var _local5:Array; var _local6:Number; var _local7:Array; var _local3:Object = {}; 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 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); }; var idx:Number = 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 clip:Object; 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; var DEFAULTS:Object = {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.")); }; var depth:Number = options.depth; delete options.depth; var mc:MovieClip = createEmptyMovieClip(clip, "_mochiad", depth); var wh:Array = 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; } else { trace("[MochiAd] NOTE: Security Sandbox Violation errors below are normal"); }; var lv:URLVariables = 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.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, function (_arg1:IOErrorEvent):void{ trace("[MochiAds] Blocked URL"); }); 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 = _arg2.split("."); var _local5:Number = 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 = 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 _local6:Array; var _local3:Object = _arg2.getBounds(_arg2.root); var _local4:Number = 0; var _local5:Number = 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 = _arg2.split("."); var _local4:Number = 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 = _arg2.split("."); var _local5:Number = 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 clip:Object; var mc:MovieClip; var chk:MovieClip; var complete:Boolean; var unloaded:Boolean; var sendHostProgress:Boolean; var fn:Function; var r:MovieClip; var options = _arg1; var DEFAULTS:Object = {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{ }, progress_override:function (_arg1:Object):Number{ return (NaN); }, bar_offset:0}; 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; var ad_msec:Number = 11000; var ad_timeout:Number = options.ad_timeout; delete options.ad_timeout; var fadeout_time:Number = 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); var fn:Function = function ():void{ options.ad_finished(); }; setTimeout(fn, 100); }; var wh:Array = MochiAd._getRes(options, clip); var w:Number = wh[0]; var h:Number = 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); var bar:MovieClip = createEmptyMovieClip(chk, "_mochiad_bar", 4); if (options.no_progress_bar){ bar.visible = false; delete options.no_progress_bar; } else { bar.x = (10 + options.bar_offset); bar.y = (h - 20); }; var bar_w:Number = ((w - bar.x) - 10); var bar_color:Number = options.color; delete options.color; var bar_background:Number = options.background; delete options.background; var bar_outline:Number = options.outline; delete options.outline; var backing_mc:MovieClip = createEmptyMovieClip(bar, "_outline", 1); var backing:Object = backing_mc.graphics; backing.beginFill(bar_background); backing.moveTo(0, 0); backing.lineTo(bar_w, 0); backing.lineTo(bar_w, 10); backing.lineTo(0, 10); backing.lineTo(0, 0); backing.endFill(); var inside_mc:MovieClip = createEmptyMovieClip(bar, "_inside", 2); var inside:Object = inside_mc.graphics; inside.beginFill(bar_color); inside.moveTo(0, 0); inside.lineTo(bar_w, 0); inside.lineTo(bar_w, 10); inside.lineTo(0, 10); inside.lineTo(0, 0); inside.endFill(); inside_mc.scaleX = 0; var outline_mc:MovieClip = createEmptyMovieClip(bar, "_outline", 3); var outline:Object = outline_mc.graphics; outline.lineStyle(0, bar_outline, 100); outline.moveTo(0, 0); outline.lineTo(bar_w, 0); outline.lineTo(bar_w, 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 = (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; var progress:Number = Math.min(1, options.progress_override(clip)); var f:Function = function (_arg1:Event):void{ _arg1.target.removeEventListener(_arg1.type, arguments.callee); complete = true; if (unloaded){ MochiAd.unload(clip); }; }; if (!isNaN(progress)){ complete = (progress == 1); } else { if (clip.loaderInfo.bytesLoaded == clip.loaderInfo.bytesTotal){ complete = true; } else { if ((clip.root is MovieClip)){ r = (clip.root as MovieClip); if (r.framesLoaded >= r.totalFrames){ complete = true; } else { clip.loaderInfo.addEventListener(Event.COMPLETE, f); }; } else { clip.loaderInfo.addEventListener(Event.COMPLETE, f); }; }; }; 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 = 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 _local12:Number; if (((!(this.parent)) || (!(this.parent.parent)))){ delete this["onEnterFrame"]; return; }; var _local1:Object = this.parent.parent.root; var _local2:Object = this.parent._mochiad_ctr; var _local3:Number = (getTimer() - this.started); var _local4:Boolean; var _local5:Number = _local1.loaderInfo.bytesTotal; var _local6:Number = _local1.loaderInfo.bytesLoaded; var _local7:Number = Math.min(1, options.progress_override(_local1)); if (_local7 == 1){ complete = true; }; if (complete){ _local6 = Math.max(1, _local6); _local5 = _local6; }; var _local8:Number = ((100 * _local6) / _local5); if (!isNaN(_local7)){ _local8 = (100 * _local7); }; var _local9:Number = ((100 * _local3) / chk.ad_msec); var _local10:Object = this._mochiad_bar._inside; var _local11:Number = Math.min(100, Math.min(((_local8) || (0)), _local9)); _local11 = Math.max(this.last_pcnt, _local11); this.last_pcnt = _local11; _local10.scaleX = (_local11 * 0.01); options.ad_progress(_local11); if (sendHostProgress){ clip._mochiad.lc.send(clip._mochiad._containerLCName, "notify", {id:"hostLoadPcnt", pcnt:_local8}); if (_local8 >= 100){ sendHostProgress = false; }; }; if (!chk.showing){ _local12 = this.parent._mochiad_ctr.contentLoaderInfo.bytesTotal; if (_local12 > 0){ chk.showing = true; chk.started = getTimer(); MochiAd.adShowing(clip); } else { if ((((_local3 > chk.ad_timeout)) && ((_local8 == 100)))){ options.ad_failed(); _local4 = true; }; }; }; if (_local3 > chk.ad_msec){ _local4 = true; }; if (((complete) && (_local4))){ if (unloaded){ MochiAd.unload(_local1); } else { 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 mc = _arg1; var f:Function = 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 mochi.as3
Section 747
//MochiCoins (mochi.as3.MochiCoins) package mochi.as3 { public class MochiCoins { public static const STORE_HIDE:String = "StoreHide"; public static const LOGGED_IN:String = "LoggedIn"; public static const STORE_ITEMS:String = "StoreItems"; public static const NO_USER:String = "NoUser"; public static const PROPERTIES_SIZE:String = "PropertiesSize"; public static const ITEM_NEW:String = "ItemNew"; public static const USER_INFO:String = "UserInfo"; public static const IO_ERROR:String = "IOError"; public static const ITEM_OWNED:String = "ItemOwned"; public static const PROPERTIES_SAVED:String = "PropertySaved"; public static const WIDGET_LOADED:String = "WidgetLoaded"; public static const ERROR:String = "Error"; public static const LOGGED_OUT:String = "LoggedOut"; public static const PROFILE_SHOW:String = "ProfileShow"; public static const LOGIN_HIDE:String = "LoginHide"; public static const LOGIN_SHOW:String = "LoginShow"; public static const STORE_SHOW:String = "StoreShow"; public static const PROFILE_HIDE:String = "ProfileHide"; private static var _dispatcher:MochiEventDispatcher = new MochiEventDispatcher(); public static function showItem(_arg1:Object=null):void{ if (((!(_arg1)) || (!((typeof(_arg1.item) == "string"))))){ trace("ERROR: showItem call must pass an Object with an item key"); return; }; MochiServices.bringToTop(); MochiServices.send("coins_showItem", {options:_arg1}, null, null); } public static function saveUserProperties(_arg1:Object):void{ MochiServices.send("coins_saveUserProperties", _arg1); } public static function triggerEvent(_arg1:String, _arg2:Object):void{ _dispatcher.triggerEvent(_arg1, _arg2); } public static function showLoginWidget(_arg1:Object=null):void{ MochiServices.setContainer(); MochiServices.bringToTop(); MochiServices.send("coins_showLoginWidget", {options:_arg1}); } public static function getStoreItems():void{ MochiServices.send("coins_getStoreItems"); } public static function getVersion():String{ return (MochiServices.getVersion()); } public static function showStore(_arg1:Object=null):void{ MochiServices.bringToTop(); MochiServices.send("coins_showStore", {options:_arg1}, null, null); } public static function addEventListener(_arg1:String, _arg2:Function):void{ _dispatcher.addEventListener(_arg1, _arg2); } public static function getUserInfo():void{ MochiServices.send("coins_getUserInfo"); } public static function hideLoginWidget():void{ MochiServices.send("coins_hideLoginWidget"); } public static function removeEventListener(_arg1:String, _arg2:Function):void{ _dispatcher.removeEventListener(_arg1, _arg2); } public static function showVideo(_arg1:Object=null):void{ if (((!(_arg1)) || (!((typeof(_arg1.item) == "string"))))){ trace("ERROR: showVideo call must pass an Object with an item key"); return; }; MochiServices.bringToTop(); MochiServices.send("coins_showVideo", {options:_arg1}, null, null); } } }//package mochi.as3
Section 748
//MochiDigits (mochi.as3.MochiDigits) package mochi.as3 { public final class MochiDigits { private var Sibling:MochiDigits; private var Fragment:Number; private var Encoder:Number; public function MochiDigits(_arg1:Number=0, _arg2:uint=0):void{ Encoder = 0; setValue(_arg1, _arg2); } public function reencode():void{ var _local1:uint = int((2147483647 * Math.random())); Fragment = (Fragment ^ (_local1 ^ Encoder)); Encoder = _local1; } public function set value(_arg1:Number):void{ setValue(_arg1); } public function toString():String{ var _local1:String = String.fromCharCode((Fragment ^ Encoder)); if (Sibling != null){ _local1 = (_local1 + Sibling.toString()); }; return (_local1); } public function setValue(_arg1:Number=0, _arg2:uint=0):void{ var _local3:String = _arg1.toString(); var _temp1 = _arg2; _arg2 = (_arg2 + 1); Fragment = (_local3.charCodeAt(_temp1) ^ Encoder); if (_arg2 < _local3.length){ Sibling = new MochiDigits(_arg1, _arg2); } else { Sibling = null; }; reencode(); } public function get value():Number{ return (Number(this.toString())); } public function addValue(_arg1:Number):void{ value = (value + _arg1); } } }//package mochi.as3
Section 749
//MochiEventDispatcher (mochi.as3.MochiEventDispatcher) package mochi.as3 { public class MochiEventDispatcher { private var eventTable:Object; public function MochiEventDispatcher():void{ eventTable = {}; } public function triggerEvent(_arg1:String, _arg2:Object):void{ var _local3:Object; if (eventTable[_arg1] == undefined){ return; }; for (_local3 in eventTable[_arg1]) { var _local6 = eventTable[_arg1]; _local6[_local3](_arg2); }; } public function removeEventListener(_arg1:String, _arg2:Function):void{ var _local3:Object; if (eventTable[_arg1] == undefined){ eventTable[_arg1] = []; return; }; for (_local3 in eventTable[_arg1]) { if (eventTable[_arg1][_local3] != _arg2){ } else { eventTable[_arg1].splice(Number(_local3), 1); }; }; } public function addEventListener(_arg1:String, _arg2:Function):void{ removeEventListener(_arg1, _arg2); eventTable[_arg1].push(_arg2); } } }//package mochi.as3
Section 750
//MochiEvents (mochi.as3.MochiEvents) package mochi.as3 { import flash.display.*; public class MochiEvents { public static const ALIGN_BOTTOM_LEFT:String = "ALIGN_BL"; public static const FORMAT_LONG:String = "LongForm"; public static const ALIGN_BOTTOM:String = "ALIGN_B"; public static const ACHIEVEMENT_RECEIVED:String = "AchievementReceived"; public static const FORMAT_SHORT:String = "ShortForm"; public static const ALIGN_TOP_RIGHT:String = "ALIGN_TR"; public static const ALIGN_BOTTOM_RIGHT:String = "ALIGN_BR"; public static const ALIGN_TOP:String = "ALIGN_T"; public static const ALIGN_LEFT:String = "ALIGN_L"; public static const ALIGN_RIGHT:String = "ALIGN_R"; public static const ALIGN_TOP_LEFT:String = "ALIGN_TL"; public static const ALIGN_CENTER:String = "ALIGN_C"; private static var _dispatcher:MochiEventDispatcher = new MochiEventDispatcher(); private static var gameStart:Number; private static var levelStart:Number; public static function addEventListener(_arg1:String, _arg2:Function):void{ _dispatcher.addEventListener(_arg1, _arg2); } public static function removeEventListener(_arg1:String, _arg2:Function):void{ _dispatcher.removeEventListener(_arg1, _arg2); } public static function startSession(_arg1:String):void{ MochiServices.send("events_beginSession", {achievementID:_arg1}, null, null); } public static function triggerEvent(_arg1:String, _arg2:Object):void{ _dispatcher.triggerEvent(_arg1, _arg2); } public static function setNotifications(_arg1:MovieClip, _arg2:Object):void{ var _local4:Object; var _local3:Object = {}; for (_local4 in _arg2) { _local3[_local4] = _arg2[_local4]; }; _local3.clip = _arg1; MochiServices.send("events_setNotifications", _local3, null, null); } public static function endGame():void{ var _local1:Number = (new Date().time - gameStart); trigger("end_game", {time:_local1}); } public static function startGame():void{ gameStart = new Date().time; trigger("start_game"); } public static function trigger(_arg1:String, _arg2:Object=null):void{ if (_arg2 == null){ _arg2 = {}; } else { if (_arg2["kind"] != undefined){ trace("WARNING: optional arguements package contains key 'id', it will be overwritten"); _arg2["kind"] = _arg1; }; }; MochiServices.send("events_triggerEvent", {eventObject:_arg2}, null, null); } public static function getVersion():String{ return (MochiServices.getVersion()); } public static function startLevel():void{ levelStart = new Date().time; trigger("start_level"); } public static function endLevel():void{ var _local1:Number = (new Date().time - levelStart); trigger("end_level", {time:_local1}); } } }//package mochi.as3
Section 751
//MochiScores (mochi.as3.MochiScores) package mochi.as3 { import flash.display.*; import flash.text.*; public class MochiScores { private static var boardID:String; public static var onErrorHandler:Object; public static var onCloseHandler:Object; public static function showLeaderboard(_arg1:Object=null):void{ var n:Number; var options = _arg1; if (options != null){ delete options.clip; MochiServices.setContainer(); MochiServices.bringToTop(); if (options.name != null){ if ((options.name is TextField)){ if (options.name.text.length > 0){ options.name = options.name.text; }; }; }; if (options.score != null){ if ((options.score is TextField)){ if (options.score.text.length > 0){ options.score = options.score.text; }; } else { if ((options.score is MochiDigits)){ options.score = options.score.value; }; }; n = Number(options.score); if (isNaN(n)){ trace((("ERROR: Submitted score '" + options.score) + "' will be rejected, score is 'Not a Number'")); } else { if ((((n == Number.NEGATIVE_INFINITY)) || ((n == Number.POSITIVE_INFINITY)))){ trace((("ERROR: Submitted score '" + options.score) + "' will be rejected, score is an infinite")); } else { if (Math.floor(n) != n){ trace((("WARNING: Submitted score '" + options.score) + "' will be truncated")); }; options.score = n; }; }; }; if (options.onDisplay != null){ options.onDisplay(); } else { if (MochiServices.clip != null){ if ((MochiServices.clip is MovieClip)){ MochiServices.clip.stop(); } else { trace("Warning: Container is not a MovieClip, cannot call default onDisplay."); }; }; }; } else { options = {}; if ((MochiServices.clip is MovieClip)){ MochiServices.clip.stop(); } else { trace("Warning: Container is not a MovieClip, cannot call default onDisplay."); }; }; if (options.onClose != null){ onCloseHandler = options.onClose; } else { onCloseHandler = function ():void{ if ((MochiServices.clip is MovieClip)){ MochiServices.clip.play(); } else { trace("Warning: Container is not a MovieClip, cannot call default onClose."); }; }; }; if (options.onError != null){ onErrorHandler = options.onError; } else { onErrorHandler = null; }; if (options.boardID == null){ if (MochiScores.boardID != null){ options.boardID = MochiScores.boardID; }; }; MochiServices.warnID(options.boardID, true); trace("[MochiScores] NOTE: Security Sandbox Violation errors below are normal"); MochiServices.send("scores_showLeaderboard", {options:options}, null, onClose); } public static function closeLeaderboard():void{ MochiServices.send("scores_closeLeaderboard"); } public static function getPlayerInfo(_arg1:Object, _arg2:Object=null):void{ MochiServices.send("scores_getPlayerInfo", null, _arg1, _arg2); } public static function requestList(_arg1:Object, _arg2:Object=null):void{ MochiServices.send("scores_requestList", null, _arg1, _arg2); } public static function scoresArrayToObjects(_arg1:Object):Object{ var _local3:Number; var _local4:Number; var _local5:Object; var _local6:Object; var _local7:String; var _local8:String; var _local2:Object = {}; for (_local7 in _arg1) { if (typeof(_arg1[_local7]) == "object"){ if (((!((_arg1[_local7].cols == null))) && (!((_arg1[_local7].rows == null))))){ _local2[_local7] = []; _local5 = _arg1[_local7]; _local4 = 0; while (_local4 < _local5.rows.length) { _local6 = {}; _local3 = 0; while (_local3 < _local5.cols.length) { _local6[_local5.cols[_local3]] = _local5.rows[_local4][_local3]; _local3++; }; _local2[_local7].push(_local6); _local4++; }; } else { _local2[_local7] = {}; for (_local8 in _arg1[_local7]) { _local2[_local7][_local8] = _arg1[_local7][_local8]; }; }; } else { _local2[_local7] = _arg1[_local7]; }; }; return (_local2); } public static function submit(_arg1:Number, _arg2:String, _arg3:Object=null, _arg4:Object=null):void{ _arg1 = Number(_arg1); if (isNaN(_arg1)){ trace((("ERROR: Submitted score '" + String(_arg1)) + "' will be rejected, score is 'Not a Number'")); } else { if ((((_arg1 == Number.NEGATIVE_INFINITY)) || ((_arg1 == Number.POSITIVE_INFINITY)))){ trace((("ERROR: Submitted score '" + String(_arg1)) + "' will be rejected, score is an infinite")); } else { if (Math.floor(_arg1) != _arg1){ trace((("WARNING: Submitted score '" + String(_arg1)) + "' will be truncated")); }; _arg1 = Number(_arg1); }; }; MochiServices.send("scores_submit", {score:_arg1, name:_arg2}, _arg3, _arg4); } public static function onClose(_arg1:Object=null):void{ if (((((_arg1) && ((_arg1.error == true)))) && (onErrorHandler))){ if (_arg1.errorCode == null){ _arg1.errorCode = "IOError"; }; onErrorHandler(_arg1.errorCode); MochiServices.doClose(); return; }; onCloseHandler(); MochiServices.doClose(); } public static function setBoardID(_arg1:String):void{ MochiServices.warnID(_arg1, true); MochiScores.boardID = _arg1; MochiServices.send("scores_setBoardID", {boardID:_arg1}); } } }//package mochi.as3
Section 752
//MochiServices (mochi.as3.MochiServices) package mochi.as3 { import flash.display.*; import flash.events.*; import flash.geom.*; import flash.utils.*; import flash.net.*; import flash.system.*; public class MochiServices { private static var _container:Object; private static var _connected:Boolean = false; private static var _swfVersion:String; private static var _preserved:Object; public static var netupAttempted:Boolean = false; private static var _sendChannel:LocalConnection; public static var servicesSync:MochiSync = new MochiSync(); private static var _clip:MovieClip; private static var _id:String; private static var _services:String = "services.swf"; private static var _servURL:String = "http://www.mochiads.com/static/lib/services/"; public static var widget:Boolean = false; private static var _timer:Timer; private static var _sendChannelName:String; private static var _loader:Loader; private static var _connecting:Boolean = false; private static var _mochiLocalConnection:MovieClip; private static var _listenChannelName:String = "__ms_"; public static var onError:Object; public static var netup:Boolean = true; private static var _mochiLC:String = "MochiLC.swf"; public static function isNetworkAvailable():Boolean{ return (!((Security.sandboxType == "localWithFile"))); } public static function get connected():Boolean{ return (_connected); } private static function onReceive(_arg1:Object):void{ var methodName:String; var pkg = _arg1; var cb:String = pkg.callbackID; var cblst:Object = _clip._callbacks[cb]; if (!cblst){ return; }; var method:* = cblst.callbackMethod; methodName = ""; var obj:Object = cblst.callbackObject; if (((obj) && ((typeof(method) == "string")))){ methodName = method; if (obj[method] != null){ method = obj[method]; } else { trace((("Error: Method " + method) + " does not exist.")); }; }; if (method != undefined){ try { method.apply(obj, pkg.args); } catch(error:Error) { trace(((("Error invoking callback method '" + methodName) + "': ") + error.toString())); }; } else { if (obj != null){ try { obj(pkg.args); } catch(error:Error) { trace(("Error invoking method on object: " + error.toString())); }; }; }; delete _clip._callbacks[cb]; } public static function get childClip():Object{ return (_clip); } public static function send(_arg1:String, _arg2:Object=null, _arg3:Object=null, _arg4:Object=null):void{ if (_connected){ _mochiLocalConnection.send(_sendChannelName, "onReceive", {methodName:_arg1, args:_arg2, callbackID:_clip._nextcallbackID}); } else { if ((((_clip == null)) || (!(_connecting)))){ trace(("Error: MochiServices not connected. Please call MochiServices.connect(). Function: " + _arg1)); handleError(_arg2, _arg3, _arg4); flush(true); return; }; _clip._queue.push({methodName:_arg1, args:_arg2, callbackID:_clip._nextcallbackID}); }; if (_clip != null){ if (((!((_clip._callbacks == null))) && (!((_clip._nextcallbackID == null))))){ _clip._callbacks[_clip._nextcallbackID] = {callbackObject:_arg3, callbackMethod:_arg4}; _clip._nextcallbackID++; }; }; } private static function init(_arg1:String, _arg2:Object):void{ _id = _arg1; if (_arg2 != null){ _container = _arg2; loadCommunicator(_arg1, _container); }; } private static function clickMovie(_arg1:String, _arg2:Function):MovieClip{ var _local4:int; var _local14:Loader; var _local3:Array = [150, 21, 0, 7, 1, 0, 0, 0, 0, 98, 116, 110, 0, 7, 2, 0, 0, 0, 0, 116, 104, 105, 115, 0, 28, 150, 22, 0, 0, 99, 114, 101, 97, 116, 101, 69, 109, 112, 116, 121, 77, 111, 118, 105, 101, 67, 108, 105, 112, 0, 82, 135, 1, 0, 0, 23, 150, 13, 0, 4, 0, 0, 111, 110, 82, 101, 108, 101, 97, 115, 101, 0, 142, 8, 0, 0, 0, 0, 2, 42, 0, 114, 0, 150, 17, 0, 0, 32, 0, 7, 1, 0, 0, 0, 8, 0, 0, 115, 112, 108, 105, 116, 0, 82, 135, 1, 0, 1, 23, 150, 7, 0, 4, 1, 7, 0, 0, 0, 0, 78, 150, 8, 0, 0, 95, 98, 108, 97, 110, 107, 0, 154, 1, 0, 0, 150, 7, 0, 0, 99, 108, 105, 99, 107, 0, 150, 7, 0, 4, 1, 7, 1, 0, 0, 0, 78, 150, 27, 0, 7, 2, 0, 0, 0, 7, 0, 0, 0, 0, 0, 76, 111, 99, 97, 108, 67, 111, 110, 110, 101, 99, 116, 105, 111, 110, 0, 64, 150, 6, 0, 0, 115, 101, 110, 100, 0, 82, 79, 150, 15, 0, 4, 0, 0, 95, 97, 108, 112, 104, 97, 0, 7, 0, 0, 0, 0, 79, 150, 23, 0, 7, 0xFF, 0, 0xFF, 0, 7, 1, 0, 0, 0, 4, 0, 0, 98, 101, 103, 105, 110, 70, 105, 108, 108, 0, 82, 23, 150, 25, 0, 7, 0, 0, 0, 0, 7, 0, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 109, 111, 118, 101, 84, 111, 0, 82, 23, 150, 25, 0, 7, 100, 0, 0, 0, 7, 0, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 108, 105, 110, 101, 84, 111, 0, 82, 23, 150, 25, 0, 7, 100, 0, 0, 0, 7, 100, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 108, 105, 110, 101, 84, 111, 0, 82, 23, 150, 25, 0, 7, 0, 0, 0, 0, 7, 100, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 108, 105, 110, 101, 84, 111, 0, 82, 23, 150, 25, 0, 7, 0, 0, 0, 0, 7, 0, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 108, 105, 110, 101, 84, 111, 0, 82, 23, 150, 16, 0, 7, 0, 0, 0, 0, 4, 0, 0, 101, 110, 100, 70, 105, 108, 108, 0, 82, 23]; var _local5:Array = [104, 0, 31, 64, 0, 7, 208, 0, 0, 12, 1, 0, 67, 2, 0xFF, 0xFF, 0xFF, 63, 3]; var _local6:Array = [0, 64, 0, 0, 0]; var _local7:MovieClip = new MovieClip(); var _local8:LocalConnection = new LocalConnection(); var _local9:String = ((("_click_" + Math.floor((Math.random() * 999999))) + "_") + Math.floor(new Date().time)); _local8 = new LocalConnection(); _local7.lc = _local8; _local7.click = _arg2; _local8.client = _local7; _local8.connect(_local9); var _local10:ByteArray = new ByteArray(); var _local11:ByteArray = new ByteArray(); _local11.endian = Endian.LITTLE_ENDIAN; _local11.writeShort(1); _local11.writeUTFBytes(((_arg1 + " ") + _local9)); _local11.writeByte(0); var _local12:uint = ((_local3.length + _local11.length) + 4); var _local13:uint = (_local12 + 35); _local10.endian = Endian.LITTLE_ENDIAN; _local10.writeUTFBytes("FWS"); _local10.writeByte(8); _local10.writeUnsignedInt(_local13); for each (_local4 in _local5) { _local10.writeByte(_local4); }; _local10.writeUnsignedInt(_local12); _local10.writeByte(136); _local10.writeShort(_local11.length); _local10.writeBytes(_local11); for each (_local4 in _local3) { _local10.writeByte(_local4); }; for each (_local4 in _local6) { _local10.writeByte(_local4); }; _local14 = new Loader(); _local14.loadBytes(_local10); _local7.addChild(_local14); return (_local7); } public static function stayOnTop():void{ _container.addEventListener(Event.ENTER_FRAME, MochiServices.bringToTop, false, 0, true); if (_clip != null){ _clip.visible = true; }; } public static function addLinkEvent(_arg1:String, _arg2:String, _arg3:DisplayObjectContainer, _arg4:Function=null):void{ var avm1Click:DisplayObject; var x:String; var req:URLRequest; var loader:Loader; var setURL:Function; var err:Function; var complete:Function; var url = _arg1; var burl = _arg2; var btn = _arg3; var onClick = _arg4; var vars:Object = new Object(); vars["mav"] = getVersion(); vars["swfv"] = "9"; vars["swfurl"] = btn.loaderInfo.loaderURL; vars["fv"] = Capabilities.version; vars["os"] = Capabilities.os; vars["lang"] = Capabilities.language; vars["scres"] = ((Capabilities.screenResolutionX + "x") + Capabilities.screenResolutionY); var s = "?"; var i:Number = 0; for (x in vars) { if (i != 0){ s = (s + "&"); }; i = (i + 1); s = (((s + x) + "=") + escape(vars[x])); }; req = new URLRequest("http://x.mochiads.com/linkping.swf"); loader = new Loader(); setURL = function (_arg1:String):void{ if (avm1Click){ btn.removeChild(avm1Click); }; avm1Click = clickMovie(_arg1, onClick); var _local2:Rectangle = btn.getBounds(btn); btn.addChild(avm1Click); avm1Click.x = _local2.x; avm1Click.y = _local2.y; avm1Click.scaleX = (0.01 * _local2.width); avm1Click.scaleY = (0.01 * _local2.height); }; err = function (_arg1:Object):void{ netup = false; _arg1.target.removeEventListener(_arg1.type, arguments.callee); setURL(burl); }; complete = function (_arg1:Object):void{ _arg1.target.removeEventListener(_arg1.type, arguments.callee); }; if (netup){ setURL((url + s)); } else { setURL(burl); }; if (!((netupAttempted) || (_connected))){ netupAttempted = true; loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, err); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, complete); loader.load(req); }; } public static function warnID(_arg1:String, _arg2:Boolean):void{ _arg1 = _arg1.toLowerCase(); if (_arg1.length != 16){ trace((("WARNING: " + (_arg2) ? "board" : "game") + " ID is not the appropriate length")); return; } else { if (_arg1 == "1e113c7239048b3f"){ if (_arg2){ trace("WARNING: Using testing board ID"); } else { trace("WARNING: Using testing board ID as game ID"); }; return; } else { if (_arg1 == "84993a1de4031cd8"){ if (_arg2){ trace("WARNING: Using testing game ID as board ID"); } else { trace("WARNING: Using testing game ID"); }; return; }; }; }; var _local3:Number = 0; while (_local3 < _arg1.length) { switch (_arg1.charAt(_local3)){ case "0": case "1": case "2": case "3": case "4": case "5": case "6": case "7": case "8": case "9": case "a": case "b": case "c": case "d": case "e": case "f": break; default: trace(("WARNING: Board ID contains illegal characters: " + _arg1)); return; }; _local3++; }; } public static function disconnect():void{ if (((_connected) || (_connecting))){ if (_clip != null){ if (_clip.parent != null){ if ((_clip.parent is Sprite)){ Sprite(_clip.parent).removeChild(_clip); _clip = null; }; }; }; _connecting = (_connected = false); flush(true); try { _mochiLocalConnection.close(); } catch(error:Error) { }; }; if (_timer != null){ try { _timer.stop(); } catch(error:Error) { }; }; } public static function allowDomains(_arg1:String):String{ var _local2:String; if (Security.sandboxType != "application"){ Security.allowDomain("*"); Security.allowInsecureDomain("*"); }; if (_arg1.indexOf("http://") != -1){ _local2 = _arg1.split("/")[2].split(":")[0]; if (Security.sandboxType != "application"){ Security.allowDomain(_local2); Security.allowInsecureDomain(_local2); }; }; return (_local2); } public static function getVersion():String{ return ("3.3 as3"); } public static function doClose():void{ _container.removeEventListener(Event.ENTER_FRAME, MochiServices.bringToTop); } private static function flush(_arg1:Boolean):void{ var _local2:Object; var _local3:Object; if (((_clip) && (_clip._queue))){ while (_clip._queue.length > 0) { _local2 = _clip._queue.shift(); _local3 = null; if (_local2 != null){ if (_local2.callbackID != null){ _local3 = _clip._callbacks[_local2.callbackID]; }; delete _clip._callbacks[_local2.callbackID]; if (((_arg1) && (!((_local3 == null))))){ handleError(_local2.args, _local3.callbackObject, _local3.callbackMethod); }; }; }; }; } public static function get id():String{ return (_id); } private static function onEvent(_arg1:Object):void{ var _local2:String = _arg1.target; var _local3:String = _arg1.event; switch (_local2){ case "events": MochiEvents.triggerEvent(_arg1.event, _arg1.args); break; case "coins": MochiCoins.triggerEvent(_arg1.event, _arg1.args); break; case "sync": servicesSync.triggerEvent(_arg1.event, _arg1.args); break; }; } private static function urlOptions(_arg1:Object):Object{ var _local3:String; var _local4:Array; var _local5:Number; var _local6:Array; var _local2:Object = {}; if (_arg1.stage){ _local3 = _arg1.stage.loaderInfo.parameters.mochiad_options; } else { _local3 = _arg1.loaderInfo.parameters.mochiad_options; }; if (_local3){ _local4 = _local3.split("&"); _local5 = 0; while (_local5 < _local4.length) { _local6 = _local4[_local5].split("="); _local2[unescape(_local6[0])] = unescape(_local6[1]); _local5++; }; }; return (_local2); } public static function setContainer(_arg1:Object=null, _arg2:Boolean=true):void{ if (_arg1 != null){ if ((_arg1 is Sprite)){ _container = _arg1; }; }; if (_arg2){ if ((_container is Sprite)){ Sprite(_container).addChild(_clip); }; }; } private static function handleError(_arg1:Object, _arg2:Object, _arg3:Object):void{ var args = _arg1; var callbackObject = _arg2; var callbackMethod = _arg3; if (args != null){ if (args.onError != null){ args.onError.apply(null, ["NotConnected"]); }; if (((!((args.options == null))) && (!((args.options.onError == null))))){ args.options.onError.apply(null, ["NotConnected"]); }; }; if (callbackMethod != null){ args = {}; args.error = true; args.errorCode = "NotConnected"; if (((!((callbackObject == null))) && ((callbackMethod is String)))){ try { var _local5 = callbackObject; _local5[callbackMethod](args); } catch(error:Error) { }; } else { if (callbackMethod != null){ try { callbackMethod.apply(args); } catch(error:Error) { }; }; }; }; } private static function loadError(_arg1:Object):void{ _clip._mochiad_ctr_failed = true; trace("MochiServices could not load."); MochiServices.disconnect(); MochiServices.onError("IOError"); } private static function initComChannels():void{ if (!_connected){ trace("[SERVICES_API] connected!"); _connecting = false; _connected = true; _mochiLocalConnection.send(_sendChannelName, "onReceive", {methodName:"handshakeDone"}); _mochiLocalConnection.send(_sendChannelName, "onReceive", {methodName:"registerGame", preserved:_preserved, id:_id, clip:_container, version:getVersion(), parentURL:_container.loaderInfo.loaderURL}); _clip.onReceive = onReceive; _clip.onEvent = onEvent; _clip.onError = function ():void{ MochiServices.onError("IOError"); }; while (_clip._queue.length > 0) { _mochiLocalConnection.send(_sendChannelName, "onReceive", _clip._queue.shift()); }; }; } private static function loadLCBridge(_arg1:Object):void{ var loader:Loader; var clip = _arg1; loader = new Loader(); var mochiLCURL:String = (_servURL + _mochiLC); var req:URLRequest = new URLRequest(mochiLCURL); var complete:Function = function (_arg1:Object):void{ _mochiLocalConnection = MovieClip(loader.content); listen(); }; loader.contentLoaderInfo.addEventListener(Event.COMPLETE, complete); loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, loadError); loader.load(req); clip.addChild(loader); } private static function listen():void{ _mochiLocalConnection.connect(_listenChannelName); _clip.handshake = function (_arg1:Object):void{ MochiServices.comChannelName = _arg1.newChannel; }; trace("Waiting for MochiAds services to connect..."); } public static function get clip():Object{ return (_container); } public static function set comChannelName(_arg1:String):void{ if (_arg1 != null){ if (_arg1.length > 3){ _sendChannelName = (_arg1 + "_fromgame"); initComChannels(); }; }; } private static function loadCommunicator(_arg1:String, _arg2:Object):MovieClip{ var _local3:String = ("_mochiservices_com_" + _arg1); if (_clip != null){ return (_clip); }; if (!MochiServices.isNetworkAvailable()){ return (null); }; if (urlOptions(_arg2).servURL){ _servURL = urlOptions(_arg2).servURL; }; var _local4:String = (_servURL + _services); if (urlOptions(_arg2).servicesURL){ _local4 = urlOptions(_arg2).servicesURL; }; _listenChannelName = (_listenChannelName + ((Math.floor(new Date().time) + "_") + Math.floor((Math.random() * 99999)))); MochiServices.allowDomains(_local4); _clip = createEmptyMovieClip(_arg2, _local3, 10336, false); loadLCBridge(_clip); _loader = new Loader(); _loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, loadError); var _local5:URLRequest = new URLRequest(_local4); var _local6:URLVariables = new URLVariables(); _local6.listenLC = _listenChannelName; _local6.mochiad_options = _arg2.loaderInfo.parameters.mochiad_options; _local6.api_version = getVersion(); if (widget){ _local6.widget = true; }; _local5.data = _local6; _loader.load(_local5); _clip.addChild(_loader); _clip._mochiservices_com = _loader; _sendChannel = new LocalConnection(); _clip._queue = []; _clip._nextcallbackID = 0; _clip._callbacks = {}; _timer = new Timer(10000, 1); _timer.addEventListener(TimerEvent.TIMER, connectWait); _timer.start(); return (_clip); } public static function connect(_arg1:String, _arg2:Object, _arg3:Object=null):void{ var id = _arg1; var clip = _arg2; var onError = _arg3; warnID(id, false); if ((clip is DisplayObject)){ if (((!(_connected)) && ((_clip == null)))){ trace("MochiServices Connecting..."); _connecting = true; init(id, clip); }; } else { trace("Error, MochiServices requires a Sprite, Movieclip or instance of the stage."); }; if (onError != null){ MochiServices.onError = onError; } else { if (MochiServices.onError == null){ MochiServices.onError = function (_arg1:String):void{ trace(_arg1); }; }; }; } public static function createEmptyMovieClip(_arg1:Object, _arg2:String, _arg3:Number, _arg4:Boolean=true):MovieClip{ var parent = _arg1; var name = _arg2; var depth = _arg3; var doAdd = _arg4; var mc:MovieClip = new MovieClip(); if (doAdd){ if (((false) && (depth))){ parent.addChildAt(mc, depth); } else { parent.addChild(mc); }; }; try { parent[name] = mc; } catch(e:Error) { throw (new Error("MochiServices requires a clip that is an instance of a dynamic class. If your class extends Sprite or MovieClip, you must make it dynamic.")); }; mc["_name"] = name; return (mc); } public static function bringToTop(_arg1:Event=null):void{ var e = _arg1; if (((!((MochiServices.clip == null))) && (!((MochiServices.childClip == null))))){ try { if (MochiServices.clip.numChildren > 1){ MochiServices.clip.setChildIndex(MochiServices.childClip, (MochiServices.clip.numChildren - 1)); }; } catch(errorObject:Error) { trace("Warning: Depth sort error."); _container.removeEventListener(Event.ENTER_FRAME, MochiServices.bringToTop); }; }; } public static function connectWait(_arg1:TimerEvent):void{ if (!_connected){ _clip._mochiad_ctr_failed = true; trace("MochiServices could not load. (timeout)"); MochiServices.disconnect(); MochiServices.onError("IOError"); }; } } }//package mochi.as3
Section 753
//MochiSync (mochi.as3.MochiSync) package mochi.as3 { import flash.utils.*; public dynamic class MochiSync extends Proxy { private var _syncContainer:Object; public static var SYNC_PROPERTY:String = "UpdateProperty"; public static var SYNC_REQUEST:String = "SyncRequest"; public function MochiSync():void{ _syncContainer = {}; } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function setProperty(_arg1, _arg2):void{ if (_syncContainer[_arg1] == _arg2){ return; }; var _local3:String = _arg1.toString(); _syncContainer[_local3] = _arg2; MochiServices.send("sync_propUpdate", {name:_local3, value:_arg2}); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function getProperty(_arg1){ return (_syncContainer[_arg1]); } public function triggerEvent(_arg1:String, _arg2:Object):void{ switch (_arg1){ case SYNC_REQUEST: MochiServices.send("sync_syncronize", _syncContainer); break; case SYNC_PROPERTY: _syncContainer[_arg2.name] = _arg2.value; break; }; } } }//package mochi.as3
Section 754
//BitmapAsset (mx.core.BitmapAsset) package mx.core { import flash.display.*; public class BitmapAsset extends FlexBitmap implements IFlexAsset, IFlexDisplayObject { mx_internal static const VERSION:String = "3.4.0.9271"; public function BitmapAsset(_arg1:BitmapData=null, _arg2:String="auto", _arg3:Boolean=false){ super(_arg1, _arg2, _arg3); } public function get measuredWidth():Number{ if (bitmapData){ return (bitmapData.width); }; return (0); } public function get measuredHeight():Number{ if (bitmapData){ return (bitmapData.height); }; return (0); } public function setActualSize(_arg1:Number, _arg2:Number):void{ width = _arg1; height = _arg2; } public function move(_arg1:Number, _arg2:Number):void{ this.x = _arg1; this.y = _arg2; } } }//package mx.core
Section 755
//ByteArrayAsset (mx.core.ByteArrayAsset) package mx.core { import flash.utils.*; public class ByteArrayAsset extends ByteArray implements IFlexAsset { mx_internal static const VERSION:String = "3.4.0.9271"; } }//package mx.core
Section 756
//FlexBitmap (mx.core.FlexBitmap) package mx.core { import flash.display.*; import mx.utils.*; public class FlexBitmap extends Bitmap { mx_internal static const VERSION:String = "3.4.0.9271"; public function FlexBitmap(_arg1:BitmapData=null, _arg2:String="auto", _arg3:Boolean=false){ var bitmapData = _arg1; var pixelSnapping = _arg2; var smoothing = _arg3; super(bitmapData, pixelSnapping, smoothing); try { name = NameUtil.createUniqueName(this); } catch(e:Error) { }; } override public function toString():String{ return (NameUtil.displayObjectToString(this)); } } }//package mx.core
Section 757
//FontAsset (mx.core.FontAsset) package mx.core { import flash.text.*; public class FontAsset extends Font implements IFlexAsset { mx_internal static const VERSION:String = "3.4.0.9271"; } }//package mx.core
Section 758
//IFlexAsset (mx.core.IFlexAsset) package mx.core { public interface IFlexAsset { } }//package mx.core
Section 759
//IFlexDisplayObject (mx.core.IFlexDisplayObject) package mx.core { import flash.display.*; import flash.events.*; import flash.geom.*; import flash.accessibility.*; public interface IFlexDisplayObject extends IBitmapDrawable, IEventDispatcher { function get visible():Boolean; function get rotation():Number; function localToGlobal(_arg1:Point):Point; function get name():String; function set width(_arg1:Number):void; function get measuredHeight():Number; function get blendMode():String; function get scale9Grid():Rectangle; function set name(_arg1:String):void; function set scaleX(_arg1:Number):void; function set scaleY(_arg1:Number):void; function get measuredWidth():Number; function get accessibilityProperties():AccessibilityProperties; function set scrollRect(_arg1:Rectangle):void; function get cacheAsBitmap():Boolean; function globalToLocal(_arg1:Point):Point; function get height():Number; function set blendMode(_arg1:String):void; function get parent():DisplayObjectContainer; function getBounds(_arg1:DisplayObject):Rectangle; function get opaqueBackground():Object; function set scale9Grid(_arg1:Rectangle):void; function setActualSize(_arg1:Number, _arg2:Number):void; function set alpha(_arg1:Number):void; function set accessibilityProperties(_arg1:AccessibilityProperties):void; function get width():Number; function hitTestPoint(_arg1:Number, _arg2:Number, _arg3:Boolean=false):Boolean; function set cacheAsBitmap(_arg1:Boolean):void; function get scaleX():Number; function get scaleY():Number; function get scrollRect():Rectangle; function get mouseX():Number; function get mouseY():Number; function set height(_arg1:Number):void; function set mask(_arg1:DisplayObject):void; function getRect(_arg1:DisplayObject):Rectangle; function get alpha():Number; function set transform(_arg1:Transform):void; function move(_arg1:Number, _arg2:Number):void; function get loaderInfo():LoaderInfo; function get root():DisplayObject; function hitTestObject(_arg1:DisplayObject):Boolean; function set opaqueBackground(_arg1:Object):void; function set visible(_arg1:Boolean):void; function get mask():DisplayObject; function set x(_arg1:Number):void; function set y(_arg1:Number):void; function get transform():Transform; function set filters(_arg1:Array):void; function get x():Number; function get y():Number; function get filters():Array; function set rotation(_arg1:Number):void; function get stage():Stage; } }//package mx.core
Section 760
//IRepeaterClient (mx.core.IRepeaterClient) package mx.core { public interface IRepeaterClient { function get instanceIndices():Array; function set instanceIndices(_arg1:Array):void; function get isDocument():Boolean; function set repeaters(_arg1:Array):void; function initializeRepeaterArrays(_arg1:IRepeaterClient):void; function get repeaters():Array; function set repeaterIndices(_arg1:Array):void; function get repeaterIndices():Array; } }//package mx.core
Section 761
//mx_internal (mx.core.mx_internal) package mx.core { public namespace mx_internal = "http://www.adobe.com/2006/flex/mx/internal"; }//package mx.core
Section 762
//SoundAsset (mx.core.SoundAsset) package mx.core { import flash.media.*; public class SoundAsset extends Sound implements IFlexAsset { mx_internal static const VERSION:String = "3.4.0.9271"; } }//package mx.core
Section 763
//NameUtil (mx.utils.NameUtil) package mx.utils { import flash.display.*; import mx.core.*; import flash.utils.*; public class NameUtil { mx_internal static const VERSION:String = "3.4.0.9271"; private static var counter:int = 0; public static function displayObjectToString(_arg1:DisplayObject):String{ var result:String; var o:DisplayObject; var s:String; var indices:Array; var displayObject = _arg1; try { o = displayObject; while (o != null) { if (((((o.parent) && (o.stage))) && ((o.parent == o.stage)))){ break; }; s = o.name; if ((o is IRepeaterClient)){ indices = IRepeaterClient(o).instanceIndices; if (indices){ s = (s + (("[" + indices.join("][")) + "]")); }; }; result = ((result == null)) ? s : ((s + ".") + result); o = o.parent; }; } catch(e:SecurityError) { }; return (result); } public static function createUniqueName(_arg1:Object):String{ if (!_arg1){ return (null); }; var _local2:String = getQualifiedClassName(_arg1); var _local3:int = _local2.indexOf("::"); if (_local3 != -1){ _local2 = _local2.substr((_local3 + 2)); }; var _local4:int = _local2.charCodeAt((_local2.length - 1)); if ((((_local4 >= 48)) && ((_local4 <= 57)))){ _local2 = (_local2 + "_"); }; return ((_local2 + counter++)); } } }//package mx.utils
Section 764
//BaseGhost (scamper.actor.BaseGhost) package scamper.actor { import genius.component.*; import flash.geom.*; import genius.resource.config.*; import genius.util.*; import genius.events.*; import genius.component.shape.*; import genius.graphics.colors.*; import genius.graphics.renderable.*; import scamper.component.*; public class BaseGhost extends ScamperObject { public var delay:Number; protected var state:int; protected var phase:Number; protected static const ANGRY:int = 2; protected static const IDLE:int = 1; protected static const SPAWNING:int = 0; protected static const defaultOffset:RGBAColor = new RGBAColor(0, 0, 0, 0); protected static const defaultTint:RGBAColor = new RGBAColor(1, 1, 1, 1); override public function isGhost():Boolean{ return (true); } public function randomizeSpawn(_arg1:Engine):void{ } protected function scaredSprites(_arg1:Engine){ return (getComponent("animation", Object).scared); } public function harmedPlayer(_arg1:Engine, _arg2:Player):void{ if (_arg1.resources.gameplay.killGhostOnHit){ doDeath(_arg1, _arg1.resources.gameplay.clearRespawnDelay); } else { if (state == IDLE){ transition(_arg1, ANGRY); }; }; } protected function updateView(_arg1:Engine):void{ var _local2:*; var _local9:Point; var _local10:int; var _local3:Player = (_arg1.managers.name.lookup("player") as Player); var _local4:RGBAColor = defaultTint; var _local5:RGBAColor = defaultOffset; var _local6:RGBAColor = defaultTint; var _local7:SpriteRenderable = getComponent("mainScene", SpriteRenderable); var _local8:SpriteRenderable = getComponent("aura", SpriteRenderable); _local8.enabled = false; if (state != ANGRY){ if (((_local3) && (_local3.isLethal()))){ _local2 = scaredSprites(_arg1); if (_local3.blink()){ _local4 = _arg1.resources.gameplay.powerup.blinkTint; _local5 = _arg1.resources.gameplay.powerup.blinkOffset; _local6 = _arg1.resources.gameplay.powerup.auraTint; }; _local8.enabled = _local7.enabled; } else { _local2 = normalSprites(_arg1); }; _local9 = lookDirection(_arg1); _local10 = _arg1.gameplay.directionFrame(_local9); _local7.shader.texture = _local2.frame[_local10]; } else { _local2 = angrySprites(_arg1); _local7.shader.texture = _local2.frame[MathUtil.frame(phase, _local2.frame.length)]; }; _local7.shader.colorModulation = _local4; _local7.shader.colorOffset = _local5; _local8.shader.colorModulation = _local6; } public function makeActive(_arg1:Engine):void{ var _local2:AbstractShape = getComponent("shape", AbstractShape); _local2.setEnabled(true); var _local3:Body = getComponent("body", Body); _local3.setKinematic(false); var _local4:SpriteRenderable = getComponent("mainScene", SpriteRenderable); _local4.shader.layer = _arg1.resources.appearance.ghostPlayLayer; var _local5:SpriteRenderable = getComponent("aura", SpriteRenderable); _local5.shader.layer = (_arg1.resources.appearance.ghostPlayLayer + 1); var _local6:Swarm = getComponent("swarm", Swarm); if (_local6){ _local6.enabled = true; }; transition(_arg1, IDLE); } protected function transition(_arg1:Engine, _arg2:int):void{ if (_arg2 != state){ onExit(_arg1); state = _arg2; phase = 0; onEnter(_arg1); }; } protected function onExit(_arg1:Engine):void{ } protected function lookDirection(_arg1:Engine):Point{ return (null); } override protected function postConfigure(_arg1:Engine, _arg2:EntityConfig):void{ updateView(_arg1); state = IDLE; phase = 0; onEnter(_arg1); } protected function normalSprites(_arg1:Engine){ return (getComponent("animation", Object).normal); } public function prepareForActive(_arg1:Engine):void{ var _local2:SpriteRenderable = getComponent("mainScene", SpriteRenderable); _local2.enabled = true; } public function doDeath(_arg1:Engine, _arg2:Number):void{ } override public function frame(_arg1:Engine, _arg2:Number):void{ var _local3:Player; var _local4:*; if (state == ANGRY){ _local3 = (_arg1.managers.name.lookup("player") as Player); if (((_local3) && (_local3.isLethal()))){ transition(_arg1, IDLE); } else { _local4 = angrySprites(_arg1); phase = (phase + (_arg2 * _local4.fps)); if (phase >= _local4.frame.length){ transition(_arg1, IDLE); }; }; }; updateView(_arg1); } override public function playerHit(_arg1:Engine, _arg2:Player):void{ var _local4:Placement; var _local3:Player = (_arg2 as Player); if (_local3.isAlive()){ if (((_local3) && (_local3.isLethal()))){ _local4 = getComponent("placement", Placement); notifyEaten(_arg1, _local4.position); doDeath(_arg1, _arg1.resources.gameplay.eatenRespawnDelay); }; }; } public function doorSpawn(_arg1:Engine, _arg2:Point):void{ dispatchEvent(SetPosition, _arg2.x, _arg2.y, 0); var _local3:AbstractShape = getComponent("shape", AbstractShape); _local3.setEnabled(false); var _local4:Body = getComponent("body", Body); _local4.setKinematic(true); var _local5:SpriteRenderable = getComponent("mainScene", SpriteRenderable); _local5.shader.layer = _arg1.resources.appearance.ghostSpawnLayer; _local5.enabled = false; var _local6:SpriteRenderable = getComponent("aura", SpriteRenderable); _local6.shader.layer = (_arg1.resources.appearance.ghostSpawnLayer + 1); var _local7:Swarm = getComponent("swarm", Swarm); if (_local7){ _local7.enabled = false; }; transition(_arg1, SPAWNING); } protected function notifyEaten(_arg1:Engine, _arg2:Point):void{ } protected function onEnter(_arg1:Engine):void{ } protected function angrySprites(_arg1:Engine){ return (getComponent("animation", Object).angry); } } }//package scamper.actor
Section 765
//BigGhost (scamper.actor.BigGhost) package scamper.actor { import genius.component.*; import flash.geom.*; import genius.actor.*; import genius.events.*; import scamper.component.*; public class BigGhost extends BaseGhost { override protected function lookDirection(_arg1:Engine):Point{ var _local2:Placement = this.getComponent("placement", Placement); return (_arg1.gameplay.playerOffset(_local2.position)); } protected function controlVector(_arg1:Engine):Point{ var _local3:Body; var _local4:Point; var _local5:Swarm; var _local2:Player = (_arg1.managers.name.lookup("player") as Player); if (((_local2) && (_local2.isAlive()))){ _local3 = this.getComponent("body", Body); _local4 = _arg1.gameplay.playerOffsetPredict(_local3, _arg1.resources.gameplay.bigGhost.playerPredictTime); _local5 = getComponent("swarm", Swarm); _local5.distance = _local4.length; if (_local2.isLethal()){ _local4.normalize(_arg1.resources.gameplay.bigGhost.fleeForce); } else { _local4.normalize(_arg1.resources.gameplay.bigGhost.seekForce); }; return (_local4); //unresolved jump }; return (new Point()); } override protected function notifyEaten(_arg1:Engine, _arg2:Point):void{ _arg1.gameplay.eventBigGhostEaten(_arg2); } override public function doDeath(_arg1:Engine, _arg2:Number):void{ var _local3:Placement; var _local4:GameObject; if (state != SPAWNING){ _local3 = getComponent("placement", Placement); _local4 = _arg1.createObject(_arg1.resources.worldResources.bigghosteaten); SetPosition.dispatch(_local4, _local3.position.x, _local3.position.y, 0); _arg1.gameplay.respawnGhost(this, _arg2); }; } override public function randomizeSpawn(_arg1:Engine):void{ var _local2:Point = _arg1.gameplay.randomEdgePosition(16); SetPosition.dispatch(this, _local2.x, _local2.y, 0); SetVelocity.dispatch(this, 0, 0, 0); } override public function tick(_arg1:Engine, _arg2:Number):void{ var _local3:Body = getComponent("body", Body); _local3.applyForce(controlVector(_arg1), null, true); _local3.angle = 0; _local3.angularVelocity = 0; } } }//package scamper.actor
Section 766
//Bouncer (scamper.actor.Bouncer) package scamper.actor { import genius.resource.config.*; import genius.graphics.renderable.*; public class Bouncer extends ScamperObject { protected var phase:Number; override public function frame(_arg1:Engine, _arg2:Number):void{ var _local5:Number; var _local6:Number; var _local3:* = getComponent("bounceInfo", Object); phase = ((phase + (_arg2 * _local3.speed)) % 1); var _local4:SpriteRenderable = getComponent("mainScene", SpriteRenderable); if (_local4){ _local5 = ((phase - 0.5) * 2); _local6 = (1 - (_local5 * _local5)); _local4.center.x = (_local6 * _local3.offset.x); _local4.center.y = (_local6 * _local3.offset.y); }; } override protected function postConfigure(_arg1:Engine, _arg2:EntityConfig):void{ phase = 0; } } }//package scamper.actor
Section 767
//Coin (scamper.actor.Coin) package scamper.actor { import genius.component.*; import flash.geom.*; import genius.actor.*; import genius.resource.config.*; import genius.util.*; import genius.events.*; import genius.graphics.renderable.*; public class Coin extends ScamperObject { protected var phase:Number; override public function isCoin():Boolean{ return (true); } override protected function postConfigure(_arg1:Engine, _arg2:EntityConfig):void{ updateView(_arg1); phase = 0; } override public function playerHit(_arg1:Engine, _arg2:Player):void{ var _local5:GameObject; var _local3:Placement = getComponent("placement", Placement); var _local4:Point = _local3.position; _arg1.gameplay.eventCoinCollected(_local4); if (_arg1.resources.appearance.coin.showDeath){ _local5 = _arg1.createObject(_arg1.resources.worldResources.coinDeath); SetPosition.dispatch(_local5, _local4.x, _local4.y, 0); }; randomizeSpawn(_arg1); } public function randomizeSpawn(_arg1:Engine):void{ var _local3:GameObject; var _local2:Point = _arg1.gameplay.coinPattern.nextCoinPosition(); SetPosition.dispatch(this, _local2.x, _local2.y, 0); phase = MathUtil.uniform(0, 10); if (_arg1.resources.appearance.coin.showSpawn){ _local3 = _arg1.createObject(_arg1.resources.worldResources.coinSpawn); SetPosition.dispatch(_local3, _local2.x, _local2.y, 0); }; } override public function frame(_arg1:Engine, _arg2:Number):void{ var _local3:* = _arg1.resources.animations.coinSpinSprites; phase = MathUtil.wrap((phase + (_arg2 * _local3.fps)), 0, _local3.frame.length); updateView(_arg1); } protected function updateView(_arg1:Engine):void{ var _local2:* = _arg1.resources.animations.coinSpinSprites; var _local3:SpriteRenderable = getComponent("mainScene", SpriteRenderable); _local3.shader.texture = _local2.frame[MathUtil.frame(phase, _local2.frame.length)]; } } }//package scamper.actor
Section 768
//Cursor (scamper.actor.Cursor) package scamper.actor { import flash.geom.*; import genius.actor.*; import genius.events.*; import genius.graphics.renderable.*; import genius.gui.*; public class Cursor extends GameObject { override public function frame(_arg1:Engine, _arg2:Number):void{ var _local3:Point = _arg1.mouseWorld; SetPosition.dispatch(this, _local3.x, _local3.y, 0); var _local4:SpriteRenderable = getComponent("mainScene", SpriteRenderable); var _local5:Cursor = getComponent("cursor", Cursor); if (((((((((_arg1.gameplay.gameRunning) && ((_local3.x >= _arg1.resources.bounds.playAreaLeft)))) && ((_local3.x < _arg1.resources.bounds.playAreaRight)))) && ((_local3.y >= _arg1.resources.bounds.playAreaTop)))) && ((_local3.y < _arg1.resources.bounds.playAreaBottom)))){ _local5.show = false; } else { _local5.show = true; }; } } }//package scamper.actor
Section 769
//GhostDoor (scamper.actor.GhostDoor) package scamper.actor { import genius.component.*; import genius.resource.config.*; import genius.graphics.*; import genius.util.*; import genius.graphics.renderable.*; public class GhostDoor extends ScamperObject { protected var releasing:Array; protected var state:int; protected var pending:Array; protected var phase:Number; protected static const IDLE:int = 0; protected static const CLOSING:int = 3; protected static const WARNING:int = 1; protected static const OPENING:int = 2; public function GhostDoor(){ pending = new Array(); releasing = new Array(); super(); } public function addPending(_arg1:Engine, _arg2:BaseGhost, _arg3:Number):void{ var _local4:Placement = getComponent("placement", Placement); _arg2.doorSpawn(_arg1, _local4.position); _arg2.delay = _arg3; pending.push(_arg2); } override protected function postConfigure(_arg1:Engine, _arg2:EntityConfig):void{ pending.length = 0; state = IDLE; phase = 0; } protected function needsRelease():Boolean{ return ((((pending.length > 0)) && ((pending[0].delay <= 0)))); } override public function frame(_arg1:Engine, _arg2:Number):void{ var _local3:Texture; var _local4:*; updateDelay(_arg1, _arg2); switch (state){ case IDLE: _local4 = _arg1.resources.animations.doorWarningSprites; _local3 = _local4.frame[0]; if (needsRelease()){ transition(_arg1, WARNING); }; break; case WARNING: _local4 = _arg1.resources.animations.doorWarningSprites; phase = (phase + (_arg2 * _local4.fps)); _local3 = _local4.frame[Math.floor(MathUtil.clamp(phase, 0, (_local4.frame.length - 1)))]; if (phase >= _local4.frame.length){ transition(_arg1, OPENING); }; break; case OPENING: _local4 = _arg1.resources.animations.doorOpenSprites; phase = (phase + (_arg2 * _local4.fps)); _local3 = _local4.frame[Math.floor(MathUtil.clamp(phase, 0, (_local4.frame.length - 1)))]; if (phase >= _local4.frame.length){ transition(_arg1, CLOSING); }; break; case CLOSING: _local4 = _arg1.resources.animations.doorCloseSprites; phase = (phase + (_arg2 * _local4.fps)); _local3 = _local4.frame[Math.floor(MathUtil.clamp(phase, 0, (_local4.frame.length - 1)))]; if (phase >= _local4.frame.length){ if (needsRelease()){ if (_arg1.resources.gameplay.skipWarningOnBacklog){ transition(_arg1, OPENING); } else { transition(_arg1, WARNING); }; } else { transition(_arg1, IDLE); }; }; break; }; var _local5:SpriteRenderable = getComponent("mainScene", SpriteRenderable); _local5.shader.texture = _local3; } protected function transition(_arg1:Engine, _arg2:int):void{ onExit(_arg1); state = _arg2; phase = 0; onEnter(_arg1); } public function numPending():int{ return (pending.length); } protected function onEnter(_arg1:Engine):void{ var _local2:int; var _local3:int; var _local4:BaseGhost; switch (state){ case OPENING: if (!releasing.length){ _local2 = Math.ceil((Number(pending.length) / _arg1.resources.gameplay.multiSpawnThreshold)); trace("door release", _local2); _local3 = 0; while (_local3 < _local2) { _local4 = pending.shift(); _local4.prepareForActive(_arg1); releasing.push(_local4); _local3++; }; }; break; }; } protected function updateDelay(_arg1:Engine, _arg2:Number):void{ var _local3:BaseGhost; for each (_local3 in pending) { _local3.delay = (_local3.delay - _arg2); }; pending.sortOn("delay"); } protected function onExit(_arg1:Engine):void{ var _local2:BaseGhost; switch (state){ case OPENING: if (releasing.length){ for each (_local2 in releasing) { _local2.makeActive(_arg1); }; releasing.length = 0; }; break; case CLOSING: break; }; } } }//package scamper.actor
Section 770
//LittleGhost (scamper.actor.LittleGhost) package scamper.actor { import genius.component.*; import flash.geom.*; import genius.actor.*; import genius.resource.config.*; import genius.util.*; import genius.events.*; public class LittleGhost extends BaseGhost { protected var speed:Number; protected var wait:Number; protected var direction:Point; override protected function lookDirection(_arg1:Engine):Point{ var _local2:Body = getComponent("body", Body); return (_local2.linearVelocity); } protected function aim(_arg1:Engine):void{ var _local2:Placement = this.getComponent("placement", Placement); var _local3:Point = _local2.position; direction = _arg1.gameplay.playerOffset(_local3); direction.normalize(speed); SetVelocity.dispatch(this, direction.x, direction.y, 0); } override protected function postConfigure(_arg1:Engine, _arg2:EntityConfig):void{ randomizeSpawn(_arg1); updateView(_arg1); } override public function doDeath(_arg1:Engine, _arg2:Number):void{ var _local3:Placement; var _local4:GameObject; if (state != SPAWNING){ _local3 = getComponent("placement", Placement); _local4 = _arg1.createObject(_arg1.resources.worldResources.littleghosteaten); SetPosition.dispatch(_local4, _local3.position.x, _local3.position.y, 0); _arg1.gameplay.respawnGhost(this, _arg2); }; } override public function randomizeSpawn(_arg1:Engine):void{ speed = _arg1.resources.gameplay.littleGhostSpeed; var _local2:Point = _arg1.gameplay.randomEdgePosition(10); SetPosition.dispatch(this, _local2.x, _local2.y, 0); aim(_arg1); wait = MathUtil.uniform(5, 9); } override protected function notifyEaten(_arg1:Engine, _arg2:Point):void{ _arg1.gameplay.eventLittleGhostEaten(_arg2); } protected function maintainSpeed(_arg1:Engine, _arg2:Number):void{ var _local3:Body = getComponent("body", Body); var _local4:Point = _local3.linearVelocity; wait = (wait - _arg2); if (wait <= 0){ _local4.x = (_local4.x + (MathUtil.uniform(-0.5, 0.5) * speed)); _local4.y = (_local4.y + (MathUtil.uniform(-0.5, 0.5) * speed)); wait = (wait + MathUtil.uniform(5, 9)); }; _local4.normalize(speed); _local3.angle = 0; SetVelocity.dispatch(this, _local4.x, _local4.y, 0); } override public function tick(_arg1:Engine, _arg2:Number):void{ var _local3:Placement = this.getComponent("placement", Placement); var _local4:Point = _local3.position; if (!_arg1.gameplay.isInsidePlayArea(_local4, 10)){ randomizeSpawn(_arg1); }; maintainSpeed(_arg1, _arg2); } } }//package scamper.actor
Section 771
//MessageDisplay (scamper.actor.MessageDisplay) package scamper.actor { import genius.resource.config.*; import genius.graphics.colors.*; import genius.graphics.renderable.*; public class MessageDisplay extends ScamperObject { protected var phase:Number; protected var emphasis:Boolean; override public function frame(_arg1:Engine, _arg2:Number):void{ if (emphasis){ emphasis = false; } else { phase = (phase + _arg2); }; var _local3:RGBAColor = _arg1.resources.appearance.messageDisplay.color; var _local4:Number = ((phase - _arg1.resources.appearance.messageDisplay.holdTime) / _arg1.resources.appearance.messageDisplay.fadeTime); var _local5:TextRenderable = getComponent("mainSceneText", TextRenderable); if (_local4 <= 0){ _local5.shader.colorModulation = _local3; } else { if (_local4 < 1){ _local5.shader.colorModulation = new RGBAColor(_local3.r, _local3.g, _local3.b, (1 - _local4)); } else { _local5.enabled = false; }; }; } public function setMessage(_arg1:String):void{ var _local2:TextRenderable = getComponent("mainSceneText", TextRenderable); _local2.text = _arg1; _local2.enabled = true; emphasis = true; phase = 0; } override protected function postConfigure(_arg1:Engine, _arg2:EntityConfig):void{ emphasis = false; phase = 100; } } }//package scamper.actor
Section 772
//OneShotAnimation (scamper.actor.OneShotAnimation) package scamper.actor { import genius.actor.*; import genius.resource.config.*; import genius.util.*; import genius.graphics.renderable.*; public class OneShotAnimation extends GameObject { protected var phase:Number; protected var emphasis:Boolean; override public function frame(_arg1:Engine, _arg2:Number):void{ var _local5:int; var _local7:Number; var _local8:int; var _local3:* = getComponent("animation", Object).animation; var _local4:Boolean; if (emphasis){ _local5 = 0; emphasis = false; } else { _local7 = _local3.fps; if (_local3.pingpong){ _local8 = ((_local3.frame.length * 2) - 1); } else { _local8 = _local3.frame.length; }; if (_local3.repeat){ phase = MathUtil.wrap((phase + (_arg2 * _local7)), 0, _local8); } else { phase = MathUtil.clamp((phase + (_arg2 * _local7)), 0, _local8); if (phase >= _local8){ _local4 = true; }; }; if (_local3.pingpong){ _local5 = MathUtil.reflect(Math.floor(phase), 0, (_local3.frame.length - 1)); } else { _local5 = MathUtil.clamp(Math.floor(phase), 0, (_local3.frame.length - 1)); }; }; var _local6:SpriteRenderable = getComponent("mainScene", SpriteRenderable); _local6.shader.texture = _local3.frame[_local5]; if (_local4){ die(_arg1); }; } override public function configure(_arg1:Engine, _arg2:EntityConfig):void{ super.configure(_arg1, _arg2); phase = 0; emphasis = true; } } }//package scamper.actor
Section 773
//Player (scamper.actor.Player) package scamper.actor { import genius.component.*; import flash.geom.*; import genius.resource.config.*; import genius.graphics.*; import genius.util.*; import genius.events.*; import genius.component.shape.*; import genius.graphics.colors.*; import genius.graphics.renderable.*; public class Player extends ScamperObject { protected var powerTimer:Number; protected var forwardDir:Point; protected var state:int; protected var warningState:Boolean; protected var last:Point; protected var blinkState:Boolean; protected var graceActive:Boolean; protected var powered:Boolean; protected var graceTimer:Number; protected var phase:Number; protected static const DEAD:int = 6; protected static const EAT_BIG_GHOST:int = 5; protected static const EAT_LITTLE_GHOST:int = 4; protected static const HIT:int = 1; protected static const IDLE:int = 0; protected static const EAT_COIN:int = 2; protected static const EAT_POWERUP:int = 3; protected function shouldTrackMouse():Boolean{ return (isAlive()); } override public function coinHit(_arg1:Engine, _arg2:Coin):void{ if (isAlive()){ transition(_arg1, EAT_COIN); }; } public function isAlive():Boolean{ return (!((state == DEAD))); } override public function ghostHit(_arg1:Engine, _arg2:BaseGhost):void{ var _local3:Placement; var _local4:Boolean; var _local5:Body; if (isLethal()){ if ((_arg2 is LittleGhost)){ transition(_arg1, EAT_LITTLE_GHOST); } else { transition(_arg1, EAT_BIG_GHOST); }; } else { if (((!(grace())) && (isAlive()))){ _arg2.harmedPlayer(_arg1, this); _local3 = getComponent("placement", Placement); _local4 = _arg1.gameplay.eventPlayerHit(_local3.position); if (!_local4){ transition(_arg1, DEAD); _local5 = getComponent("body", Body); _local5.setKinematic(true); } else { transition(_arg1, HIT); }; }; }; } protected function activateGrace(_arg1:Engine, _arg2:Number):void{ if (_arg2 > 0){ graceActive = true; graceTimer = _arg2; }; } public function radius(_arg1:Engine):Number{ if (isLethal()){ return (_arg1.resources.gameplay.player.poweredRadius); }; return (_arg1.resources.gameplay.player.radius); } override public function powerupHit(_arg1:Engine, _arg2:Powerup):void{ if (isAlive()){ setPowered(_arg1, true); _arg1.sound.play(_arg1.resources.appearance.powerupSound); transition(_arg1, EAT_POWERUP); }; } protected function updatePowerup(_arg1:Engine, _arg2:Number):void{ var _local3:Number; var _local4:Number; if (powered){ if (_arg1.resources.gameplay.powerup.affectedBySpeed){ powerTimer = (powerTimer + _arg2); } else { powerTimer = (powerTimer + _arg1.timer.tickTime); }; _local3 = _arg1.resources.gameplay.powerup.duration; _local4 = _arg1.resources.gameplay.powerup.warningTime; if (powerTimer >= _local3){ _arg1.sound.play(_arg1.resources.appearance.powerupExpireSound); setPowered(_arg1, false); } else { if (powerTimer >= (_local3 - _local4)){ blinkState = ((((powerTimer - (_local3 - _local4)) * _arg1.resources.gameplay.powerup.blinkCount) % 1) >= 0.5); if (!warningState){ _arg1.gameplay.eventPowerupWarning(); }; warningState = true; }; }; }; } protected function onExit(_arg1:Engine):void{ } protected function look(_arg1:Engine, _arg2:Point):Texture{ var _local3:*; if (isLethal()){ _local3 = _arg1.resources.animations.playerPoweredSprites; } else { _local3 = _arg1.resources.animations.playerSprites; }; return (_local3.frame[_arg1.gameplay.directionFrame(_arg2)]); } public function blink():Boolean{ return (blinkState); } override protected function postConfigure(_arg1:Engine, _arg2:EntityConfig):void{ forwardDir = new Point(); state = IDLE; phase = 0; blinkState = false; warningState = false; powered = false; graceActive = false; graceTimer = 0; onEnter(_arg1); } protected function setPowered(_arg1:Engine, _arg2:Boolean):void{ powered = _arg2; powerTimer = 0; blinkState = false; warningState = false; var _local3:CircleShape = getComponent("shape", CircleShape); _local3.setRadius(radius(_arg1)); if (_arg2){ _arg1.gameplay.eventPowerupBegin(); } else { _arg1.gameplay.eventPowerupEnd(); }; activateGrace(_arg1, _arg1.resources.gameplay.player.powerupEndGraceTime); transition(_arg1, IDLE); } protected function deactivateGrace(_arg1:Engine):void{ graceActive = false; graceTimer = 0; } protected function updateGrace(_arg1:Engine, _arg2:Number):void{ graceTimer = (graceTimer - _arg2); if (graceTimer < 0){ deactivateGrace(_arg1); }; } override public function isPlayer():Boolean{ return (true); } override public function frame(_arg1:Engine, _arg2:Number):void{ var _local3:Texture; var _local4:*; var _local5:SpriteRenderable = getComponent("mainScene", SpriteRenderable); _arg2 = _arg1.timer.dt; switch (state){ case IDLE: _local3 = look(_arg1, forwardDir); break; case HIT: _local4 = _arg1.resources.animations.playerHit; phase = (phase + (_arg2 * _local4.fps)); _local3 = _local4.frame[Math.floor(MathUtil.clamp(phase, 0, (_local4.frame.length - 1)))]; if (phase >= _local4.frame.length){ transition(_arg1, IDLE); }; break; case EAT_COIN: if (isLethal()){ _local4 = _arg1.resources.animations.playerPoweredCoinEat; } else { _local4 = _arg1.resources.animations.playerCoinPickup; }; phase = (phase + (_arg2 * _local4.fps)); _local3 = _local4.frame[Math.floor(MathUtil.clamp(phase, 0, (_local4.frame.length - 1)))]; if (phase >= _local4.frame.length){ transition(_arg1, IDLE); }; break; case EAT_POWERUP: _local4 = _arg1.resources.animations.playerPoweredPowerupEat; phase = (phase + (_arg2 * _local4.fps)); _local3 = _local4.frame[Math.floor(MathUtil.clamp(phase, 0, (_local4.frame.length - 1)))]; if (phase >= _local4.frame.length){ transition(_arg1, IDLE); }; break; case EAT_LITTLE_GHOST: _local4 = _arg1.resources.animations.playerPoweredLittleGhostEat; phase = (phase + (_arg2 * _local4.fps)); _local3 = _local4.frame[Math.floor(MathUtil.clamp(phase, 0, (_local4.frame.length - 1)))]; if (phase >= _local4.frame.length){ transition(_arg1, IDLE); }; break; case EAT_BIG_GHOST: _local4 = _arg1.resources.animations.playerPoweredBigGhostEat; phase = (phase + (_arg2 * _local4.fps)); _local3 = _local4.frame[Math.floor(MathUtil.clamp(phase, 0, (_local4.frame.length - 1)))]; if (phase >= _local4.frame.length){ transition(_arg1, IDLE); }; break; case DEAD: _local4 = _arg1.resources.animations.playerDeath; phase = (phase + (_arg2 * _local4.fps)); _local3 = _local4.frame[Math.floor(MathUtil.clamp(phase, 0, (_local4.frame.length - 1)))]; if (phase >= _local4.frame.length){ _arg1.gameplay.eventPlayerDead(); die(_arg1); return; }; break; }; _local5.shader.texture = _local3; var _local6:RGBAColor = new RGBAColor(1, 1, 1, 1); var _local7:RGBAColor = new RGBAColor(0, 0, 0, 0); if (isLethal()){ if (blink()){ _local6 = _arg1.resources.gameplay.powerup.blinkTint; _local7 = _arg1.resources.gameplay.powerup.blinkOffset; }; } else { if (grace()){ _local6 = _arg1.resources.gameplay.player.graceTint; _local7 = _arg1.resources.gameplay.player.graceOffset; }; }; _local5.shader.colorModulation = _local6; _local5.shader.colorOffset = _local7; } override public function tick(_arg1:Engine, _arg2:Number):void{ var _local4:Point; updateGrace(_arg1, _arg2); updatePowerup(_arg1, _arg2); var _local3:Point = getComponent("placement", Placement).position; if (shouldTrackMouse()){ _local4 = _arg1.mouseWorld; } else { _local4 = _local3; }; var _local5:Point = _local4.clone(); _arg1.gameplay.constrainToPlayArea(_local5, radius(_arg1)); _local5 = MathUtil.blendPoints(_local5, _local3, 0.1); SetPosition.dispatch(this, _local5.x, _local5.y, 0); if (shouldTrackMouse()){ SetVelocity.dispatch(this, (_local5.x - _local3.x), (_local5.y - _local3.y), 0); } else { SetVelocity.dispatch(this, 0, 0, 0); }; if (!last){ last = _local5; }; last = MathUtil.blendPoints(last, _local5, 0.3); forwardDir = _local5.subtract(last); } protected function transition(_arg1:Engine, _arg2:int):void{ if (state != _arg2){ onExit(_arg1); state = _arg2; phase = 0; onEnter(_arg1); }; } public function grace():Boolean{ return (graceActive); } protected function onEnter(_arg1:Engine):void{ var _local2:SpriteRenderable; var _local3:CircleShape; switch (state){ case HIT: activateGrace(_arg1, _arg1.resources.gameplay.player.playerHitGraceTime); break; case DEAD: _local2 = getComponent("mainScene", SpriteRenderable); _local2.shader.blendMode = "add"; _local3 = getComponent("shape", CircleShape); _local3.setEnabled(false); break; }; } public function isLethal():Boolean{ return (powered); } public function warning():Boolean{ return (warningState); } } }//package scamper.actor
Section 774
//Powerup (scamper.actor.Powerup) package scamper.actor { import genius.component.*; import flash.geom.*; import genius.actor.*; import genius.resource.config.*; import genius.util.*; import genius.events.*; import genius.graphics.renderable.*; public class Powerup extends ScamperObject { protected var phase:Number; override public function playerHit(_arg1:Engine, _arg2:Player):void{ var _local5:GameObject; var _local3:Placement = getComponent("placement", Placement); var _local4:Point = _local3.position; if (_arg1.resources.appearance.powerup.showDeath){ _local5 = _arg1.createObject(_arg1.resources.worldResources.powerupDeath); SetPosition.dispatch(_local5, _local4.x, _local4.y, 0); }; die(_arg1); } override protected function postConfigure(_arg1:Engine, _arg2:EntityConfig):void{ updateView(_arg1); } override public function isPowerup():Boolean{ return (true); } public function randomizeSpawn(_arg1:Engine):void{ var _local3:GameObject; var _local2:Point = _arg1.gameplay.randomAreaPosition(8); SetPosition.dispatch(this, _local2.x, _local2.y, 0); phase = MathUtil.uniform(0, 10); if (_arg1.resources.appearance.powerup.showSpawn){ _local3 = _arg1.createObject(_arg1.resources.worldResources.powerupSpawn); SetPosition.dispatch(_local3, _local2.x, _local2.y, 0); }; } override public function frame(_arg1:Engine, _arg2:Number):void{ var _local3:* = _arg1.resources.animations.powerupSprites; phase = MathUtil.wrap((phase + (_arg2 * _local3.fps)), 0, _local3.frame.length); updateView(_arg1); } protected function updateView(_arg1:Engine):void{ var _local2:* = _arg1.resources.animations.powerupSprites; var _local3:SpriteRenderable = getComponent("mainScene", SpriteRenderable); _local3.shader.texture = _local2.frame[MathUtil.frame(phase, _local2.frame.length)]; } } }//package scamper.actor
Section 775
//ScamperObject (scamper.actor.ScamperObject) package scamper.actor { import genius.actor.*; import genius.physics.*; public class ScamperObject extends GameObject { public function coinHit(_arg1:Engine, _arg2:Coin):void{ } public function isPlayer():Boolean{ return (false); } public function ghostHit(_arg1:Engine, _arg2:BaseGhost):void{ } public function isGhost():Boolean{ return (false); } public function isPowerup():Boolean{ return (false); } public function playerHit(_arg1:Engine, _arg2:Player):void{ } public function powerupHit(_arg1:Engine, _arg2:Powerup):void{ } public function isCoin():Boolean{ return (false); } override public function collide(_arg1:Engine, _arg2:GameObject, _arg3:ContactInfo):void{ var _local4:ScamperObject = (_arg2 as ScamperObject); if (_local4){ if (_local4.isGhost()){ ghostHit(_arg1, (_local4 as BaseGhost)); }; if (_local4.isPlayer()){ playerHit(_arg1, (_local4 as Player)); }; if (_local4.isCoin()){ coinHit(_arg1, (_local4 as Coin)); }; if (_local4.isPowerup()){ powerupHit(_arg1, (_local4 as Powerup)); }; }; } } }//package scamper.actor
Section 776
//SleeperGhost (scamper.actor.SleeperGhost) package scamper.actor { import genius.component.*; import flash.geom.*; import genius.actor.*; import genius.events.*; public class SleeperGhost extends BaseGhost { protected var sphase:Number; protected var svel:Number; protected var sleepState:int; protected static const AWAKE:int = 0; protected static const SLEEP:int = 2; protected static const DRIFT:int = 1; override protected function lookDirection(_arg1:Engine):Point{ var _local2:Placement; if (sleepState == AWAKE){ _local2 = this.getComponent("placement", Placement); return (_arg1.gameplay.playerOffset(_local2.position)); }; return (new Point(0, 0)); } protected function goToSleep():void{ sleepState = SLEEP; sphase = 0; var _local1:Body = getComponent("body", Body); _local1.setKinematic(true); SetVelocity.dispatch(this, 0, 0, 0); } protected function controlVector(_arg1:Engine):Point{ var _local2:Body; var _local3:Player; var _local4:Point; if (sleepState == AWAKE){ _local3 = (_arg1.managers.name.lookup("player") as Player); if (((_local3) && (_local3.isAlive()))){ _local2 = this.getComponent("body", Body); _local4 = _arg1.gameplay.playerOffsetPredict(_local2, _arg1.resources.gameplay.sleeperGhost.playerPredictTime); if (_local3.isLethal()){ _local4.normalize(_arg1.resources.gameplay.sleeperGhost.fleeForce); } else { _local4.normalize(_arg1.resources.gameplay.sleeperGhost.seekForce); }; return (_local4); } else { return (new Point()); }; //unresolved jump }; return (new Point()); } override public function doDeath(_arg1:Engine, _arg2:Number):void{ var _local3:Placement; var _local4:GameObject; if (state != SPAWNING){ _local3 = getComponent("placement", Placement); _local4 = _arg1.createObject(_arg1.resources.worldResources.sleeperghosteaten); SetPosition.dispatch(_local4, _local3.position.x, _local3.position.y, 0); _arg1.gameplay.respawnGhost(this, _arg2); }; } override public function randomizeSpawn(_arg1:Engine):void{ var _local2:Point = _arg1.gameplay.randomEdgePosition(16); SetPosition.dispatch(this, _local2.x, _local2.y, 0); SetVelocity.dispatch(this, 0, 0, 0); wakeUp(); } override public function makeActive(_arg1:Engine):void{ super.makeActive(_arg1); wakeUp(); } protected function startDrift():void{ sleepState = DRIFT; sphase = 0; var _local1:Body = getComponent("body", Body); svel = _local1.linearVelocity.length; } override public function prepareForActive(_arg1:Engine):void{ super.prepareForActive(_arg1); goToSleep(); } override protected function notifyEaten(_arg1:Engine, _arg2:Point):void{ _arg1.gameplay.eventSleeperGhostEaten(_arg2); } override protected function onEnter(_arg1:Engine):void{ if (state == ANGRY){ wakeUp(); }; } override public function tick(_arg1:Engine, _arg2:Number):void{ var _local4:Point; var _local3:Body = getComponent("body", Body); _local3.angle = 0; _local3.angularVelocity = 0; if (sleepState == AWAKE){ sphase = (sphase + _arg2); if (sphase >= 2){ startDrift(); }; _local3.applyForce(controlVector(_arg1), null, true); } else { if (sleepState == DRIFT){ sphase = (sphase + _arg2); if (sphase <= 1){ _local4 = _local3.linearVelocity.clone(); _local4.normalize((svel * (1 - (sphase / 1)))); SetVelocity.dispatch(this, _local4.x, _local4.y, 0); } else { goToSleep(); }; }; }; } protected function wakeUp():void{ sleepState = AWAKE; sphase = 0; var _local1:Body = getComponent("body", Body); _local1.setKinematic(false); } } }//package scamper.actor
Section 777
//StateFX (scamper.actor.StateFX) package scamper.actor { import genius.resource.config.*; import genius.graphics.colors.*; import genius.graphics.renderable.*; public class StateFX extends ScamperObject { protected var logoBlend:Number; protected var hitColor:RGBAColor; protected var state:int; protected var phase:Number; protected var emphasis:Boolean; protected static const HIT:int = 1; protected static const POWERED:int = 2; protected static const defaultColor:RGBAColor = new RGBAColor(0, 0, 0, 0); protected static const IDLE:int = 0; public function StateFX(){ hitColor = new RGBAColor(1, 0, 0, 0); super(); } public function eventPowerupBegin(_arg1:Engine):void{ transition(_arg1, POWERED); } public function eventPowerupEnd(_arg1:Engine):void{ transition(_arg1, IDLE); } override public function frame(_arg1:Engine, _arg2:Number):void{ var _local5:RGBAColor; var _local6:Player; var _local7:Number; var _local8:RGBAColor; updateLogo(_arg1, _arg2); var _local3:SpriteRenderable = getComponent("leftOverlay", SpriteRenderable); var _local4:SpriteRenderable = getComponent("rightOverlay", SpriteRenderable); if (emphasis){ emphasis = false; } else { phase = (phase + _arg2); }; switch (state){ case IDLE: _local5 = defaultColor; break; case HIT: if (phase > _arg1.resources.appearance.stateFX.hitHold){ _local7 = Math.min(((phase - _arg1.resources.appearance.stateFX.hitHold) / _arg1.resources.appearance.stateFX.hitFade), 1); _local8 = _arg1.resources.appearance.stateFX.hitColor; _local5 = hitColor; _local5.r = _local8.r; _local5.g = _local8.g; _local5.b = _local8.b; _local5.a = (_local8.a * (1 - _local7)); if (_local7 >= 1){ transition(_arg1, IDLE); }; } else { _local5 = _arg1.resources.appearance.stateFX.hitColor; }; break; case POWERED: _local6 = (_arg1.managers.name.lookup("player") as Player); if (((_local6) && (_local6.warning()))){ _local5 = _arg1.resources.appearance.stateFX.warningColor; } else { _local5 = _arg1.resources.appearance.stateFX.poweredColor; }; break; }; if (_local3){ _local3.shader.colorModulation = _local5; }; if (_local4){ _local4.shader.colorModulation = _local5; }; } override protected function postConfigure(_arg1:Engine, _arg2:EntityConfig):void{ phase = 0; state = IDLE; onEnter(_arg1); logoBlend = 0; } public function eventGhostSpawned(_arg1:Engine):void{ logoBlend = 1; } protected function updateLogo(_arg1:Engine, _arg2:Number):void{ var _local3:SpriteRenderable = getComponent("logo", SpriteRenderable); if (_local3){ logoBlend = Math.max((logoBlend - (_arg2 / _arg1.resources.appearance.stateFX.logoFade)), 0); if (logoBlend){ _local3.shader.colorTransform.alphaMultiplier = logoBlend; _local3.enabled = true; } else { _local3.enabled = false; }; }; } protected function transition(_arg1:Engine, _arg2:int):void{ if (state != _arg2){ onExit(_arg1); state = _arg2; phase = 0; emphasis = true; onEnter(_arg1); }; } protected function onEnter(_arg1:Engine):void{ var _local2:SpriteRenderable = getComponent("leftOverlay", SpriteRenderable); var _local3:SpriteRenderable = getComponent("rightOverlay", SpriteRenderable); switch (state){ case IDLE: if (_local2){ _local2.enabled = false; }; if (_local3){ _local3.enabled = false; }; break; }; } protected function onExit(_arg1:Engine):void{ var _local2:SpriteRenderable = getComponent("leftOverlay", SpriteRenderable); var _local3:SpriteRenderable = getComponent("rightOverlay", SpriteRenderable); switch (state){ case IDLE: if (_local2){ _local2.enabled = true; }; if (_local3){ _local3.enabled = true; }; break; }; } public function eventPlayerHit(_arg1:Engine):void{ if (state != POWERED){ transition(_arg1, HIT); }; } } }//package scamper.actor
Section 778
//ScamperBuildConfig (scamper.build.ScamperBuildConfig) package scamper.build { import genius.util.*; public class ScamperBuildConfig { public static const mochiBotOK:Boolean = true; public static const splashScreensOK:Boolean = true; public static const localFilesystemOK:Boolean = true; public static const adsOK:Boolean = false; public static const leaderboardOK:Boolean = true; public static const waitForPlayButton:Boolean = true; public static const mochiRes:String = "700x600"; public static function get mochiBotID():String{ return (Encoder.reverse("z\x031P •j")); } public static function get mochiAdID():String{ return (Encoder.reverse("ž’¾´éæ\x14‘v¼Kn.y\x1A")); } public static function get mochiBoardName():String{ return (Encoder.reverse("Ô–î5EÄN\x07hÓÙ|qÌ9^")); } } }//package scamper.build
Section 779
//ICoinPattern (scamper.coin.ICoinPattern) package scamper.coin { import flash.geom.*; public interface ICoinPattern { function nextCoinPosition():Point; } }//package scamper.coin
Section 780
//RandomCoinPattern (scamper.coin.RandomCoinPattern) package scamper.coin { import flash.geom.*; public class RandomCoinPattern implements ICoinPattern { protected var engine:Engine; public function RandomCoinPattern(_arg1:Engine){ this.engine = _arg1; } public function nextCoinPosition():Point{ return (engine.gameplay.randomAreaPosition(8)); } } }//package scamper.coin
Section 781
//RandomPathCoinPattern (scamper.coin.RandomPathCoinPattern) package scamper.coin { import flash.geom.*; import genius.util.*; public class RandomPathCoinPattern implements ICoinPattern { protected var engine:Engine; protected var last:Point; protected var delta:Point; public function RandomPathCoinPattern(_arg1:Engine){ this.engine = _arg1; last = new Point(0, 0); delta = new Point(); } public function nextCoinPosition():Point{ updateDelta(engine); var _local1:Point = last.add(delta); last.x = _local1.x; last.y = _local1.y; engine.gameplay.constrainToPlayArea(last, 8); if ((((last.x < _local1.x)) && ((delta.x > 0)))){ delta.x = -(delta.x); } else { if ((((last.x > _local1.x)) && ((delta.x < 0)))){ delta.x = -(delta.x); }; }; if ((((last.y < _local1.y)) && ((delta.y > 0)))){ delta.y = -(delta.y); } else { if ((((last.y > _local1.y)) && ((delta.y < 0)))){ delta.y = -(delta.y); }; }; return (last); } protected function updateDelta(_arg1:Engine):void{ var _local2:Number = _arg1.resources.gameplay.coin.pathRandom; var _local3:Number = MathUtil.uniform(_arg1.resources.gameplay.coin.pathStepMin, _arg1.resources.gameplay.coin.pathStepMax); delta.x = (delta.x + MathUtil.uniform(-(_local2), _local2)); delta.y = (delta.y + MathUtil.uniform(-(_local2), _local2)); delta.normalize(_local3); } } }//package scamper.coin
Section 782
//Swarm (scamper.component.Swarm) package scamper.component { import genius.component.*; import flash.geom.*; import genius.actor.*; import genius.util.*; public class Swarm extends LinkedList implements IComponent { public var enabled:Boolean; public var body:Body; public var placement:Placement; public var amt:Number; public var owner:GameObject; public var distance:Number; public var control:Point; public function Swarm(){ control = new Point(); super(); } public function destroy(_arg1:Engine, _arg2:GameObject):void{ unlink(); } public function configure(_arg1:Engine, _arg2:GameObject, _arg3):void{ var _local4:SwarmManager = _arg1.managers["swarm"]; insertBefore(_local4.root); owner = _arg2; amt = _arg3.amt; distance = 10000; enabled = true; } public function link(_arg1:Engine, _arg2:GameObject):void{ placement = _arg2.getComponent("placement", Placement); body = _arg2.getComponent("body", Body); } } }//package scamper.component
Section 783
//SwarmManager (scamper.component.SwarmManager) package scamper.component { import genius.component.*; import flash.geom.*; public class SwarmManager implements ComponentManager { public var root:Swarm; public function SwarmManager(){ root = new Swarm(); super(); root.makeRoot(); } public function componentName():String{ return ("swarm"); } public function update(_arg1:Engine, _arg2:Number):void{ var _local3:Swarm; var _local6:int; var _local8:Point; var _local9:Swarm; var _local10:Point; var _local11:Point; var _local12:Number; if (!_arg1.resources){ return; }; var _local4:Number = _arg1.resources.gameplay.swarm.predictTime; var _local5:Swarm = root.next; _local3 = root.next; while (_local3 != root) { if (_local3.enabled){ _local3.control.x = 0; _local3.control.y = 0; if (_local3.distance < _local5.distance){ _local5 = _local3; }; _local6 = (_local6 + 1); }; _local3 = _local3.next; }; var _local7:Number = (_arg1.resources.gameplay.swarm.halflife / (_arg1.resources.gameplay.swarm.halflife + _local6)); _local3 = root.next; while (_local3 != root) { if (!_local3.enabled){ } else { _local8 = _local3.body.predict(_local4); _local9 = _local3.next; while (_local9 != root) { if (!_local9.enabled){ } else { _local10 = _local9.body.predict(_local4); _local11 = _local8.subtract(_local10); _local12 = (1 / Math.max(0.25, ((_local11.x * _local11.x) + (_local11.y * _local11.y)))); _local11.x = (_local11.x * _local12); _local11.y = (_local11.y * _local12); _local3.control.x = (_local3.control.x + _local11.x); _local3.control.y = (_local3.control.y + _local11.y); _local9.control.x = (_local9.control.x - _local11.x); _local9.control.y = (_local9.control.y - _local11.y); }; _local9 = _local9.next; }; _local3.control.x = (_local3.control.x * (_local3.amt * _local7)); _local3.control.y = (_local3.control.y * (_local3.amt * _local7)); if (_local3 != _local5){ _local3.body.applyForce(_local3.control, null, true); }; }; _local3 = _local3.next; }; } } }//package scamper.component
Section 784
//CreditsGamelet (scamper.gamelet.CreditsGamelet) package scamper.gamelet { import genius.game.*; public class CreditsGamelet extends Gamelet { public function mouseRelease(_arg1):void{ engine.managers.gui.cursorRelease(engine, engine.mouseWorld); } override public function activate():void{ engine.gameplay.gameRunning = false; loadWorld(); } override public function render():void{ engine.rendering.beginFrame(); engine.rendering.drawScene(engine.mainScene); engine.rendering.endFrame(); engine.rendering.transferBackBuffer(graphics, game.screenWidth, game.screenHeight); } protected function loadWorld():void{ engine.clearWorld(); engine.loadWorld(engine.resources.menuBase); engine.loadWorld(engine.resources.creditsMenu); Engine.forceGC(); } override public function frame(_arg1:Number):void{ } public function mousePress(_arg1):void{ if (!engine.managers.gui.cursorPress(engine, engine.mouseWorld)){ }; } } }//package scamper.gamelet
Section 785
//InstructionsGamelet (scamper.gamelet.InstructionsGamelet) package scamper.gamelet { import genius.game.*; public class InstructionsGamelet extends Gamelet { public function mouseRelease(_arg1):void{ engine.managers.gui.cursorRelease(engine, engine.mouseWorld); } override public function activate():void{ engine.gameplay.gameRunning = false; engine.rendering.clearColor = null; engine.input.mouseVisible = false; loadWorld(); } protected function loadWorld():void{ engine.clearWorld(); engine.loadWorld(engine.resources.menuBase); engine.loadWorld(engine.resources.instructions); Engine.forceGC(); } public function mousePress(_arg1):void{ engine.managers.gui.cursorPress(engine, engine.mouseWorld); } override public function render():void{ engine.rendering.beginFrame(); engine.rendering.drawScene(engine.mainScene); engine.rendering.endFrame(); engine.rendering.transferBackBuffer(graphics, game.screenWidth, game.screenHeight); } } }//package scamper.gamelet
Section 786
//MainGamelet (scamper.gamelet.MainGamelet) package scamper.gamelet { import genius.game.*; import flash.geom.*; import genius.graphics.*; import flash.display.*; import Box2D.Dynamics.*; public class MainGamelet extends Gamelet { protected var slowAmt:Number;// = 0 protected var debugPhysics:Boolean;// = false protected var slowActive:Number;// = 0 protected var speedControlCapture:Boolean; protected var debugSprite:Sprite; protected var debugShader:VectorShader; public function MainGamelet(){ debugSprite = new Sprite(); debugShader = new VectorShader(); super(); } override public function activate():void{ engine.rendering.clearColor = null; engine.gameplay.gameRunning = true; loadLevel(); engine.input.mouseVisible = false; speedControlCapture = false; engine.gameplay.setMusic(engine.resources.music); } public function superSpeedStart(_arg1):void{ if (!engine.managers.gui.cursorPress(engine, engine.mouseWorld)){ if (!speedControlCapture){ engine.gameplay.speedControl.activate(engine); speedControlCapture = true; }; } else { speedControlCapture = false; }; } override public function render():void{ engine.rendering.beginFrame(); engine.rendering.drawScene(engine.mainScene); if (debugPhysics){ engine.rendering.draw(debugSprite, new Matrix(), debugShader); }; engine.gameplay.speedControl.applyImageFilter(engine); engine.rendering.endFrame(); engine.rendering.transferBackBuffer(graphics, game.screenWidth, game.screenHeight); } public function configure(_arg1):void{ var _local2:b2World; var _local3:b2DebugDraw; if (_arg1.showStats){ addChild(engine.monitor); }; debugPhysics = _arg1.debugPhysics; _local2 = engine.managers.body.world; if (debugPhysics){ _local3 = new b2DebugDraw(); _local3.SetFlags((b2DebugDraw.e_shapeBit | b2DebugDraw.e_centerOfMassBit)); _local3.m_fillAlpha = 0.1; _local3.m_lineThickness = 0.1; _local3.m_sprite = debugSprite; _local2.SetDebugDraw(_local3); } else { _local2.SetDebugDraw(null); }; } public function togglePause(_arg1):void{ engine.gameplay.gameRunning = !(engine.gameplay.gameRunning); } override public function frame(_arg1:Number):void{ } public function superSpeedEnd(_arg1):void{ if (speedControlCapture){ engine.gameplay.speedControl.deactivate(engine); speedControlCapture = false; } else { engine.managers.gui.cursorRelease(engine, engine.mouseWorld); }; } public function toggle(_arg1):void{ engine.rendering.useFastPath = !(engine.rendering.useFastPath); trace("toggle", engine.rendering.useFastPath); } override public function tick(_arg1:Number):void{ timeScale = engine.gameplay.speedControl.timeScale; } public function loadLevel():void{ engine.gameplay.initWorld(engine.resources.defaultWorld); Engine.forceGC(); } } }//package scamper.gamelet
Section 787
//MenuGamelet (scamper.gamelet.MenuGamelet) package scamper.gamelet { import genius.game.*; public class MenuGamelet extends Gamelet { protected var phase:Number; public function mouseRelease(_arg1):void{ engine.managers.gui.cursorRelease(engine, engine.mouseWorld); } override public function render():void{ engine.rendering.beginFrame(); engine.rendering.drawScene(engine.mainScene); engine.rendering.endFrame(); engine.rendering.transferBackBuffer(graphics, game.screenWidth, game.screenHeight); } override public function activate():void{ game.stage.frameRate = 60; engine.gameplay.gameRunning = false; engine.rendering.clearColor = null; engine.input.mouseVisible = false; phase = 0; loadWorld(); engine.gameplay.setMusic(engine.resources.menuMusic); } protected function loadWorld():void{ engine.clearWorld(); engine.loadWorld(engine.resources.menuBase); engine.loadWorld(engine.resources.menu); engine.loadWorld(engine.resources.menuIcon); Engine.forceGC(); } override public function frame(_arg1:Number):void{ phase = (phase + _arg1); } public function mousePress(_arg1):void{ engine.managers.gui.cursorPress(engine, engine.mouseWorld); } } }//package scamper.gamelet
Section 788
//ScoresGamelet (scamper.gamelet.ScoresGamelet) package scamper.gamelet { import genius.game.*; import genius.actor.*; import genius.graphics.renderable.*; public class ScoresGamelet extends Gamelet { protected var scoresPopover:Boolean; public function showLeaderboard():void{ scoresPopover = true; engine.gameplay.showOnlineScores(onDisplay, onClose, onError); } protected function showGlobalScores():void{ if (engine.gameplay.showResults){ engine.gameplay.showResults = false; engine.gameplay.showOnlineScoresSubmit(onDisplay, onClose, onError); } else { engine.gameplay.showOnlineScores(onDisplay, onClose, onError); }; } protected function onDisplay():void{ scoresPopover = true; } protected function onError(_arg1:String):void{ scoresPopover = false; } protected function loadWorld():void{ engine.clearWorld(); engine.loadWorld(engine.resources.menuBase); engine.loadWorld(engine.resources.scoresMenu); if (engine.gameplay.showResults){ engine.createObject(engine.resources.scoresResources.gameOverTitle); if (engine.game.build.leaderboardEnabled){ engine.createObject(engine.resources.scoresResources.submitButton); }; engine.createObject(engine.resources.scoresResources.playAgainButton); } else { engine.createObject(engine.resources.scoresResources.scoresTitle); if (engine.game.build.leaderboardEnabled){ engine.createObject(engine.resources.scoresResources.leaderboardButton); }; engine.createObject(engine.resources.scoresResources.smallPlayButton); }; initLocalScores(); engine.gameplay.syncScoreDisplay(); engine.gameplay.showResults = false; Engine.forceGC(); } override public function frame(_arg1:Number):void{ } protected function setText(_arg1:String, _arg2:String):void{ var _local4:TextRenderable; var _local3:GameObject = engine.managers.name.lookup(_arg1); if (_local3){ _local4 = _local3.getComponent("mainSceneText", TextRenderable); if (_local4){ _local4.text = _arg2; }; }; } public function mouseRelease(_arg1):void{ engine.managers.gui.cursorRelease(engine, engine.mouseWorld); } override public function activate():void{ engine.gameplay.gameRunning = false; scoresPopover = false; loadWorld(); } override public function render():void{ engine.rendering.beginFrame(); engine.rendering.drawScene(engine.mainScene); engine.rendering.endFrame(); engine.rendering.transferBackBuffer(graphics, game.screenWidth, game.screenHeight); } public function trigger(_arg1):void{ game.activateGamelet("menu"); } protected function onClose():void{ scoresPopover = false; } public function submitScore():void{ scoresPopover = true; engine.gameplay.showOnlineScoresSubmit(onDisplay, onClose, onError); } protected function initLocalScores():void{ var _local1:Object = engine.gameplay.makeScoreLUT(); setText("lastTime", _local1.time); setText("bestTime", _local1.bestTime); setText("lastCoins", _local1.coins); setText("bestCoins", _local1.bestCoins); setText("lastGhosts", _local1.ghostsEaten); setText("bestGhosts", _local1.bestGhostsEaten); setText("lastScore", _local1.score); setText("bestScore", _local1.bestScore); } public function mousePress(_arg1):void{ if (!scoresPopover){ engine.managers.gui.cursorPress(engine, engine.mouseWorld); }; } } }//package scamper.gamelet
Section 789
//SplashScreenGamelet (scamper.gamelet.SplashScreenGamelet) package scamper.gamelet { import genius.game.*; import flash.events.*; import genius.graphics.*; import genius.graphics.colors.*; public class SplashScreenGamelet extends Gamelet { protected var swf:SWF; protected var next:String; protected var clickCallback:Function; protected var frameRate:Number; public function SplashScreenGamelet(_arg1:Number, _arg2:String){ this.frameRate = _arg1; this.next = _arg2; } public function configure(_arg1:SWF, _arg2:Function):void{ this.swf = _arg1; this.clickCallback = _arg2; } protected function advance():void{ swf.data.removeEventListener(Event.ENTER_FRAME, frameHandler); swf.data.stop(); removeChild(swf.data); game.activateGamelet(next); } public function mouseRelease(_arg1):void{ } override public function activate():void{ game.stage.frameRate = frameRate; engine.gameplay.gameRunning = false; engine.rendering.clearColor = new RGBAColor(0, 0, 0, 1); engine.input.mouseVisible = true; addChild(swf.data); swf.data.gotoAndPlay(0); swf.data.addEventListener(Event.ENTER_FRAME, frameHandler); } protected function frameHandler(_arg1:Event):void{ if (swf.data.currentFrame >= swf.data.totalFrames){ advance(); }; } public function mousePress(_arg1):void{ clickCallback(null); } } }//package scamper.gamelet
Section 790
//PowerupManager (scamper.PowerupManager) package scamper { import genius.component.*; import scamper.actor.*; import genius.util.*; public class PowerupManager { protected var powerupChain:int; protected var powerupActive:Boolean; protected var powerupClear:Boolean; protected var powerupSpawned:Boolean; protected var powerupRespawnTimer:Number; public function eventPowerupBegin(_arg1:Engine):void{ powerupChain = 0; powerupClear = false; _arg1.gameplay.message(_arg1.resources.appearance.messages.powerupBegin); var _local2:StateFX = (_arg1.managers.name.lookup("stateFX") as StateFX); if (_local2){ _local2.eventPowerupBegin(_arg1); }; } public function tick(_arg1:Engine, _arg2:Number):void{ var _local3:Powerup; var _local4:Placement; if (((!(powerupSpawned)) && (_arg1.resources.gameplay.powerup.enabled))){ powerupRespawnTimer = (powerupRespawnTimer - _arg2); if (powerupRespawnTimer <= 0){ _local3 = (_arg1.createObject(_arg1.resources.worldResources.powerup) as Powerup); _local3.randomizeSpawn(_arg1); powerupSpawned = true; _local4 = _local3.getComponent("placement", Placement); _arg1.sound.playPositioned(_arg1.resources.appearance.powerupSpawnSound, null, 1, _local4.position); }; }; } public function eventBoardClear(_arg1:Engine):void{ _arg1.gameplay.message(_arg1.resources.appearance.messages.boardClear); _arg1.gameplay.addScore(_arg1.resources.gameplay.score.boardClear); _arg1.sound.play(_arg1.resources.appearance.boardClearSound); } protected function randomizeRespawnTimer(_arg1:Engine):void{ powerupRespawnTimer = MathUtil.uniform(_arg1.resources.gameplay.powerup.waitMin, _arg1.resources.gameplay.powerup.waitMax); powerupSpawned = false; } public function reset(_arg1:Engine):void{ powerupRespawnTimer = MathUtil.uniform(_arg1.resources.gameplay.powerup.initialWaitMin, _arg1.resources.gameplay.powerup.initialWaitMax); powerupSpawned = false; powerupActive = false; powerupChain = 0; powerupClear = false; } public function incrementPowerupChain(_arg1:Engine):void{ powerupChain = (powerupChain + 1); if (powerupChain >= 2){ _arg1.gameplay.message(_arg1.interpolate(_arg1.resources.appearance.messages.ghostEaten, {chain:powerupChain})); _arg1.gameplay.addScore((_arg1.resources.gameplay.score.chainConstant + (_arg1.resources.gameplay.score.chainScale * powerupChain))); }; if (((!(powerupClear)) && (_arg1.gameplay.boardIsClear()))){ eventBoardClear(_arg1); }; } public function eventPowerupEnd(_arg1:Engine):void{ powerupChain = 0; powerupClear = false; _arg1.gameplay.message(_arg1.resources.appearance.messages.powerupEnd); var _local2:StateFX = (_arg1.managers.name.lookup("stateFX") as StateFX); if (_local2){ _local2.eventPowerupEnd(_arg1); }; randomizeRespawnTimer(_arg1); } public function eventPowerupWarning(_arg1:Engine):void{ powerupChain = 0; powerupClear = false; _arg1.gameplay.message(_arg1.resources.appearance.messages.powerupWarning); } } }//package scamper
Section 791
//SpeedControl (scamper.SpeedControl) package scamper { import flash.geom.*; import genius.util.*; import genius.graphics.colors.*; import flash.filters.*; public class SpeedControl { protected var slowAmt:Number; public var juice:Number; public var slowActive:Boolean; protected var _colorTransform:ColorTransform; public var requestActive:Boolean; public var timeScale:Number; public function SpeedControl(_arg1:Engine){ _colorTransform = new ColorTransform(); super(); reset(_arg1); } public function colorTransform(_arg1:Engine):ColorTransform{ var _local2:RGBAColor = _arg1.resources.appearance.speedEffect.tint; var _local3:RGBAColor = _arg1.resources.appearance.speedEffect.offset; var _local4:Number = (slowAmt * _arg1.resources.appearance.speedEffect.amount); _colorTransform.redMultiplier = ((_local2.r * _local4) + (1 - _local4)); _colorTransform.greenMultiplier = ((_local2.g * _local4) + (1 - _local4)); _colorTransform.blueMultiplier = ((_local2.b * _local4) + (1 - _local4)); _colorTransform.alphaMultiplier = 1; _colorTransform.redOffset = ((_local3.r * 0xFF) * _local4); _colorTransform.greenOffset = ((_local3.g * 0xFF) * _local4); _colorTransform.blueOffset = ((_local3.b * 0xFF) * _local4); _colorTransform.alphaOffset = 0; return (_colorTransform); } public function activate(_arg1:Engine):Boolean{ requestActive = true; slowActive = ((canUse(_arg1)) && (useJuice(_arg1, _arg1.resources.gameplay.speed.costActivate))); _arg1.gameplay.syncSpeedMeter(); if (slowActive){ _arg1.sound.play(_arg1.resources.appearance.speedEffect.enterSound); } else { _arg1.sound.play(_arg1.resources.appearance.speedEffect.deniedSound); }; return (slowActive); } public function reset(_arg1:Engine):void{ slowAmt = 0; timeScale = 1; slowActive = false; requestActive = false; juice = (maximum(_arg1) * 0.66); } public function canUse(_arg1:Engine):Boolean{ if (!_arg1.resources.gameplay.speed.enabled){ return (false); }; if (((_arg1.resources.gameplay.speed.mustBeFullToStart) && ((juice < _arg1.resources.gameplay.speed.maximum)))){ return (false); }; return ((juice > _arg1.resources.gameplay.speed.costActivate)); } protected function useJuice(_arg1:Engine, _arg2:Number):Boolean{ if (!canSustain(_arg1)){ return (false); }; if (_arg2 >= 0){ setJuice(_arg1, (juice - _arg2)); }; return (true); } public function tick(_arg1:Engine, _arg2:Number):void{ if (!_arg1.resources){ return; }; var _local3:Number = _arg1.timer.tickTime; if (slowActive){ if (!useJuice(_arg1, (_local3 * _arg1.resources.gameplay.speed.costScale))){ turnOff(_arg1); }; slowAmt = MathUtil.clamp((slowAmt + (_local3 * _arg1.resources.gameplay.speed.activateSpeed)), 0, 1); } else { slowAmt = MathUtil.clamp((slowAmt - (_local3 * _arg1.resources.gameplay.speed.deactivateSpeed)), 0, 1); }; timeScale = ((1 * (1 - slowAmt)) + (_arg1.resources.gameplay.speed.timeWarp * slowAmt)); } public function setJuice(_arg1:Engine, _arg2:Number):void{ juice = MathUtil.clamp(_arg2, 0, maximum(_arg1)); _arg1.gameplay.syncSpeedMeter(); } public function applyImageFilter(_arg1:Engine):void{ if (slowAmt > 0){ _arg1.rendering.tint(colorTransform(_arg1)); }; } public function maximum(_arg1:Engine):Number{ return ((_arg1.resources.gameplay.speed.maximum + _arg1.resources.gameplay.speed.costActivate)); } protected function turnOff(_arg1:Engine):void{ if (slowActive){ _arg1.sound.play(_arg1.resources.appearance.speedEffect.exitSound); }; slowActive = false; _arg1.gameplay.syncSpeedMeter(); } public function imageFilter(_arg1:Engine):BitmapFilter{ var _local2:Number = _arg1.resources.appearance.speedEffect.desaturate; var _local3:RGBAColor = _arg1.resources.appearance.speedEffect.tint; var _local4:RGBAColor = _arg1.resources.appearance.speedEffect.offset; var _local5:Array = [((1 - (_local2 * (1 - 0.299))) * _local3.r), ((_local2 * 0.587) * _local3.r), ((_local2 * 0.114) * _local3.r), 0, (_local4.r * 0xFF), ((_local2 * 0.299) * _local3.g), ((1 - (_local2 * (1 - 0.587))) * _local3.g), ((_local2 * 0.114) * _local3.g), 0, (_local4.g * 0xFF), ((_local2 * 0.299) * _local3.b), ((_local2 * 0.587) * _local3.b), ((1 - (_local2 * (1 - 0.114))) * _local3.b), 0, (_local4.b * 0xFF), 0, 0, 0, 1, 0]; var _local6:Array = [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0]; var _local7:Array = new Array(20); var _local8:Number = (slowAmt * _arg1.resources.appearance.speedEffect.amount); var _local9:int; while (_local9 < 20) { _local7[_local9] = ((_local5[_local9] * _local8) + (_local6[_local9] * (1 - _local8))); _local9++; }; return (new ColorMatrixFilter(_local7)); } public function deactivate(_arg1:Engine):void{ requestActive = false; if (!_arg1.resources.gameplay.speed.runUntilEmpty){ turnOff(_arg1); }; _arg1.gameplay.syncSpeedMeter(); } public function canSustain(_arg1:Engine):Boolean{ if (!_arg1.resources.gameplay.speed.enabled){ return (false); }; return ((juice > 0)); } public function addJuice(_arg1:Engine, _arg2:Number):void{ if (((!(slowActive)) || (_arg1.resources.gameplay.speed.canIncreaseDuringUse))){ setJuice(_arg1, (juice + _arg2)); }; } } }//package scamper
Section 792
//Engine (Engine) package { import genius.game.*; import genius.resource.*; import genius.component.*; import flash.geom.*; import genius.sound.*; import genius.actor.*; import genius.resource.config.*; import Box2D.Collision.Shapes.*; import Box2D.Collision.*; import Box2D.Common.Math.*; import genius.graphics.*; import Box2D.Dynamics.*; import genius.util.*; import genius.events.*; import flash.text.*; import flash.system.*; public class Engine { public var timer:GameTimer; public var rendering:RenderingEngine; public var sound:SoundManager; public var gom:GameObjectManager; public var input:Input; public var monitor:PerformanceMonitor; public var configparser:ConfigParser; public var mainScene:Scene2D; public var resources:Package; public var managers:Object; public var errors:TextField; public var gameplay; public var game:Game; public var dataloader:DataLoader; public function Engine(_arg1:Game, _arg2:int, _arg3:int){ this.game = _arg1; rendering = new RenderingEngine(_arg2, _arg3); rendering.engine = this; timer = new GameTimer(30); configparser = new ConfigParser(this); dataloader = new DataLoader(_arg1.rootDirectory); gom = new GameObjectManager(this); sound = new SoundManager(this); mainScene = new Scene2D(); managers = new Object(); monitor = new PerformanceMonitor(); monitor.x = 5; monitor.y = 5; } public function get mouseWorld():Point{ return (rendering.sceneView.viewportToScene.transformPoint(input.mousePosition)); } public function emitSound(_arg1:SoundData, _arg2:Point):void{ sound.playPositioned(_arg1, null, 0.5, _arg2); } public function onAttach():void{ input = new Input(game); } public function interpolate(_arg1:String, _arg2:Object):String{ var replacer:Function; var s = _arg1; var lut = _arg2; replacer = function ():String{ if ((arguments[1] in lut)){ return (lut[arguments[1]]); }; return ("???"); }; if (!s){ return (""); }; var matcher:RegExp = /{([\w_][\w\d_]*)}/g; return (s.replace(matcher, replacer)); } public function getObjectAtMouse(_arg1:Function):GameObject{ var mousePVec:b2Vec2; var mouseFilter:Function; var filter = _arg1; mouseFilter = function (_arg1:b2Shape):Boolean{ var _local2:b2Body = _arg1.GetBody(); return (((_arg1.TestPoint(_local2.GetXForm(), mousePVec)) && (filter(_arg1.GetUserData().owner)))); }; var mouseWorld:Point = mouseWorld; mousePVec = new b2Vec2(mouseWorld.x, mouseWorld.y); var results:Array = queryAABB((mouseWorld.x - 0.001), (mouseWorld.x + 0.001), (mouseWorld.y - 0.001), (mouseWorld.y + 0.001), mouseFilter); if (results.length){ return (results[0]); }; return (null); } public function clearWorld():void{ gom.clear(); } public function queryAABB(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Function=null):Array{ var _local12:b2Shape; var _local13:GameObject; var _local6:b2AABB = new b2AABB(); _local6.lowerBound.Set(_arg1, _arg3); _local6.upperBound.Set(_arg2, _arg4); var _local7:Array = new Array(); var _local8:int = managers.body.world.Query(_local6, _local7, 100); var _local9:Array = new Array(); var _local10:b2Body; var _local11:int; while (_local11 < _local8) { _local12 = (_local7[_local11] as b2Shape); if ((((_arg5 == null)) || (_arg5(_local12)))){ _local13 = _local12.GetUserData().owner; if (!_local13.dead){ _local9.push(_local13); }; }; _local11++; }; return (_local9); } public function raycast(_arg1:Point, _arg2:Point):Object{ var _local8:GameObject; var _local9:Number; var _local10:Number; var _local11:Point; var _local3:Point = _arg1.add(_arg2); var _local4:b2Segment = new b2Segment(); _local4.p1.SetV(new b2Vec2(_arg1.x, _arg1.y)); _local4.p2.SetV(new b2Vec2(_local3.x, _local3.y)); _local4.ExtendForward(managers.body.worldAABB); var _local5:Array = [1]; var _local6:b2Vec2 = new b2Vec2(); var _local7:b2Shape = RaycastOne(_local4, _local5, _local6, false, null); if (_local7){ _local8 = _local7.GetUserData().owner; _local9 = (((1 - _local5[0]) * _local4.p1.x) + (_local5[0] * _local4.p2.x)); _local10 = (((1 - _local5[0]) * _local4.p1.y) + (_local5[0] * _local4.p2.y)); _local11 = new Point(_local9, _local10); return ({object:_local8, position:_local11}); }; return (null); } public function createObject(_arg1:EntityConfig):GameObject{ var _local2:* = new _arg1.nativeType(); _local2.configure(this, _arg1); gom.addObject(_local2); return (_local2); } public function addManager(_arg1:ComponentManager):void{ var _local2:String = _arg1.componentName(); if ((_local2 in managers)){ throw (Error(("Attemped to add multiple managers with the same name: " + _local2))); }; managers[_local2] = _arg1; } public function explode(_arg1:Point, _arg2:Number, _arg3:Boolean, _arg4:Boolean):void{ var explodeFilter:Function; var go:GameObject; var b:Body; var force:Point; var len:Number; var scale:Number; var strengthAtPoint:Number; var p = _arg1; var strength = _arg2; var gravity = _arg3; var impulse = _arg4; explodeFilter = function (_arg1:b2Shape):Boolean{ return (!(((_arg1.GetFilterData().categoryBits & resources.collision.shot.mask) == 0))); }; var radius:Number = 15; var results:Array = queryAABB((p.x - radius), (p.x + radius), (p.y - radius), (p.y + radius), explodeFilter); for each (go in results) { b = go.getComponent("body", Body); if (b == null){ } else { force = b.position; force = force.subtract(p); len = force.length; if (len <= radius){ scale = Math.max(len, 1); strengthAtPoint = (strength / (scale * scale)); force.normalize(1); force.x = (force.x * strengthAtPoint); force.y = (force.y * strengthAtPoint); if (impulse){ b.applyImpulse(force, null, gravity); } else { b.applyForce(force, null, gravity); }; }; }; }; } public function loadWorld(_arg1):void{ var _local2:*; managers.body.gravity = _arg1.gravity; for each (_local2 in _arg1.entity) { createObject(_local2); }; } public function logError(_arg1:String):void{ if (!errors.visible){ errors.visible = true; }; errors.appendText((_arg1 + "\n")); } public function RaycastOne(_arg1:b2Segment, _arg2:Array, _arg3:b2Vec2, _arg4:Boolean, _arg5):b2Shape{ var _local8:Number; var _local9:b2Shape; var _local10:b2Vec2; var _local14:int; var _local6:Array = new Array(1); var _local7:Number = managers.body.world.Raycast(_arg1, _local6, 100, _arg4, _arg5); if (_local7 == 0){ return (null); }; var _local11:b2Shape = _local6[_local14]; var _local12:b2XForm = _local11.GetBody().GetXForm(); _local11.TestSegment(_local12, _arg2, _arg3, _arg1, 1); _local8 = _arg2[0]; _local9 = _local11; _local10 = _arg3; var _local13:int = resources.collision.shot.mask; _local14 = 0; while (_local14 < _local7) { _local11 = _local6[_local14]; if (_local11.GetUserData().owner.dead){ } else { if ((_local11.GetFilterData().categoryBits & _local13)){ _local12 = _local11.GetBody().GetXForm(); _local11.TestSegment(_local12, _arg2, _arg3, _arg1, 1); if (_arg2[0] < _local8){ _local8 = _arg2[0]; _local9 = _local11; _local10 = _arg3; }; }; }; _local14++; }; _arg2[0] = _local8; _arg3.x = _local10.x; _arg3.y = _local10.y; return (_local9); } public static function forceGC():void{ System.gc(); } } }//package
Section 793
//MaxGamesLinkButton (MaxGamesLinkButton) package { import flash.display.*; import flash.events.*; import genius.util.*; public class MaxGamesLinkButton extends Sprite { protected var defaultImage:Class; protected var url:String;// = "http://www.maxgames.com" protected var mouseImage:Class; protected var pressedInstance:Bitmap; protected var pressedImage:Class; protected var mouseInstance:Bitmap; protected var defaultInstance:Bitmap; public function MaxGamesLinkButton(){ defaultImage = MaxGamesLinkButton_defaultImage; mouseImage = MaxGamesLinkButton_mouseImage; pressedImage = MaxGamesLinkButton_pressedImage; super(); defaultInstance = new defaultImage(); mouseInstance = new mouseImage(); pressedInstance = new pressedImage(); addEventListener(MouseEvent.MOUSE_DOWN, eventDown); addEventListener(MouseEvent.MOUSE_UP, eventUp); addEventListener(MouseEvent.MOUSE_OUT, eventOut); addEventListener(MouseEvent.MOUSE_OVER, eventIn); defaultState(); } protected function eventOut(_arg1):void{ defaultState(); } protected function mouseState():void{ clear(); addChild(mouseInstance); } protected function pressedState():void{ clear(); addChild(pressedInstance); } protected function clear():void{ while (numChildren) { removeChildAt((numChildren - 1)); }; } protected function defaultState():void{ clear(); addChild(defaultInstance); } protected function eventUp(_arg1):void{ mouseState(); } protected function eventDown(_arg1):void{ pressedState(); URLLink.open(url); } protected function eventIn(_arg1):void{ mouseState(); } } }//package
Section 794
//MaxGamesLinkButton_defaultImage (MaxGamesLinkButton_defaultImage) package { import mx.core.*; public class MaxGamesLinkButton_defaultImage extends BitmapAsset { } }//package
Section 795
//MaxGamesLinkButton_mouseImage (MaxGamesLinkButton_mouseImage) package { import mx.core.*; public class MaxGamesLinkButton_mouseImage extends BitmapAsset { } }//package
Section 796
//MaxGamesLinkButton_pressedImage (MaxGamesLinkButton_pressedImage) package { import mx.core.*; public class MaxGamesLinkButton_pressedImage extends BitmapAsset { } }//package
Section 797
//MochiBot (MochiBot) package { import flash.display.*; import flash.events.*; import flash.net.*; import flash.system.*; public dynamic class MochiBot extends Sprite { protected static function handleIOError(_arg1:IOErrorEvent):void{ trace("MochiBot failed to connect."); } public static function track(_arg1:Sprite, _arg2:String):MochiBot{ if (Security.sandboxType == "localWithFile"){ return (null); }; var _local3:MochiBot = new (MochiBot); _arg1.addChild(_local3); Security.allowDomain("*"); Security.allowInsecureDomain("*"); var _local4 = "http://core.mochibot.com/my/core.swf"; var _local5:URLVariables = new URLVariables(); _local5["sb"] = Security.sandboxType; _local5["v"] = Capabilities.version; _local5["swfid"] = _arg2; _local5["mv"] = "8"; _local5["fv"] = "9"; var _local6:String = _local3.root.loaderInfo.loaderURL; if (_local6.indexOf("http") == 0){ _local5["url"] = _local6; } else { _local5["url"] = "local"; }; var _local7:URLRequest = new URLRequest(_local4); _local7.contentType = "application/x-www-form-urlencoded"; _local7.method = URLRequestMethod.POST; _local7.data = _local5; var _local8:Loader = new Loader(); _local8.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, handleIOError); _local3.addChild(_local8); _local8.load(_local7); return (_local3); } } }//package
Section 798
//PlayButton (PlayButton) package { import flash.display.*; import flash.events.*; public class PlayButton extends Sprite { protected var defaultImage:Class; protected var callback; protected var mouseImage:Class; protected var pressedInstance:Bitmap; protected var pressedImage:Class; protected var mouseInstance:Bitmap; protected var defaultInstance:Bitmap; public function PlayButton(_arg1){ defaultImage = PlayButton_defaultImage; mouseImage = PlayButton_mouseImage; pressedImage = PlayButton_pressedImage; super(); this.callback = _arg1; defaultInstance = new defaultImage(); mouseInstance = new mouseImage(); pressedInstance = new pressedImage(); addEventListener(MouseEvent.MOUSE_DOWN, eventDown); addEventListener(MouseEvent.MOUSE_UP, eventUp); addEventListener(MouseEvent.MOUSE_OUT, eventOut); addEventListener(MouseEvent.MOUSE_OVER, eventIn); defaultState(); } protected function eventOut(_arg1):void{ defaultState(); } protected function mouseState():void{ clear(); addChild(mouseInstance); } protected function clear():void{ while (numChildren) { removeChildAt((numChildren - 1)); }; } protected function pressedState():void{ clear(); addChild(pressedInstance); } protected function defaultState():void{ clear(); addChild(defaultInstance); } protected function eventUp(_arg1):void{ mouseState(); } protected function eventDown(_arg1):void{ pressedState(); callback(); } protected function eventIn(_arg1):void{ mouseState(); } } }//package
Section 799
//PlayButton_defaultImage (PlayButton_defaultImage) package { import mx.core.*; public class PlayButton_defaultImage extends BitmapAsset { } }//package
Section 800
//PlayButton_mouseImage (PlayButton_mouseImage) package { import mx.core.*; public class PlayButton_mouseImage extends BitmapAsset { } }//package
Section 801
//PlayButton_pressedImage (PlayButton_pressedImage) package { import mx.core.*; public class PlayButton_pressedImage extends BitmapAsset { } }//package
Section 802
//Preloader (Preloader) package { import flash.display.*; import genius.preloader.*; import genius.build.*; import scamper.build.*; public dynamic class Preloader extends MochiPreloader { protected var loading:Bitmap; protected var loadingEmbed:Class; protected var allow:Array; protected var logoEmbed:Class; public function Preloader(){ logoEmbed = Preloader_logoEmbed; loadingEmbed = Preloader_loadingEmbed; allow = ["GßîŽÇrè\x156!5@Gy$\x15ø“", "\x06–3Eìw`øÙ\x07", "¸-Qà@vÙöŸx\x13·£"]; super(); build = new MochiBuild(root, ScamperBuildConfig); } override protected function trackID():String{ return (ScamperBuildConfig.mochiBotID); } override protected function createLogo():DisplayObject{ return (new logoEmbed()); } override protected function allowed():Array{ return (null); } override protected function createProgressBar(_arg1:int, _arg2:int):ProgressBar{ var _local3:Number = 5; var _local4:ProgressBar = new ProgressBar(343, 8, 0, 0, 0, 0xFF0000, 0xFF0000, 0); _local4.x = 231; _local4.y = 355; return (_local4); } override protected function postLogo():void{ var _local1:MaxGamesLinkButton = new MaxGamesLinkButton(); _local1.x = 81; _local1.y = 243; addChild(_local1); loading = new loadingEmbed(); loading.x = 121; loading.y = 350; addChild(loading); } override protected function postLoad():void{ removeChild(loading); loading = null; removeChild(progress); progress = null; var _local1:PlayButton = new PlayButton(playPressed); _local1.x = 208; _local1.y = 342; addChild(_local1); } override protected function gameName():String{ return ("ScamperGame"); } override protected function adEnabled():Boolean{ return (false); } } }//package
Section 803
//Preloader_loadingEmbed (Preloader_loadingEmbed) package { import mx.core.*; public class Preloader_loadingEmbed extends BitmapAsset { } }//package
Section 804
//Preloader_logoEmbed (Preloader_logoEmbed) package { import mx.core.*; public class Preloader_logoEmbed extends BitmapAsset { } }//package
Section 805
//ScamperGame (ScamperGame) package { import genius.game.*; import flash.events.*; import genius.resource.*; import flash.geom.*; import flash.text.*; import scamper.gamelet.*; import flash.net.*; public class ScamperGame extends Game { private var FuturePix:Class; public function ScamperGame(){ FuturePix = ScamperGame_FuturePix; super(); } public function loadData(_arg1:ILoaderListener):void{ engine.dataloader.setListener(_arg1); engine.dataloader.load("data/config.xml", configLoaded); engine.dataloader.begin(); addEventListener(Event.ENTER_FRAME, pollDataLoader); } protected function pollDataLoader(_arg1):void{ engine.dataloader.update(); } public function onAttach():void{ engine.onAttach(); } public function init():void{ screenWidth = 700; screenHeight = 600; this.scrollRect = new Rectangle(0, 0, screenWidth, screenHeight); mouseChildren = false; engine = new Engine(this, screenWidth, screenHeight); engine.gameplay = new ScamperGameplay(engine); engine.timer.setTickRate(60); engine.rendering.setCamera(0, 0, 600); addGamelet("sponsorsplash", new SplashScreenGamelet(30, "stolengoosesplash")); addGamelet("stolengoosesplash", new SplashScreenGamelet(20, "menu")); addGamelet("menu", new MenuGamelet()); addGamelet("instructions", new InstructionsGamelet()); addGamelet("main", new MainGamelet()); addGamelet("credits", new CreditsGamelet()); addGamelet("scores", new ScoresGamelet()); } public function resourcesLoaded():void{ engine.dataloader.setListener(null); var _local1:* = engine.resources; gamelets["sponsorsplash"].configure(_local1.splashScreens.sponsor, engine.gameplay.eventOpenSponsorWebsite); gamelets["sponsorsplash"].setupButtons(_local1.splashScreenButtons); gamelets["stolengoosesplash"].configure(_local1.splashScreens.stolengoose, engine.gameplay.eventOpenWebsite); gamelets["stolengoosesplash"].setupButtons(_local1.splashScreenButtons); gamelets["main"].configure(_local1); gamelets["menu"].setupButtons(_local1.menuButtons); gamelets["instructions"].setupButtons(_local1.instructionsButtons); gamelets["main"].setupButtons(_local1.gameButtons); gamelets["credits"].setupButtons(_local1.creditsButtons); gamelets["scores"].setupButtons(_local1.scoresButtons); engine.sound.setVolume(_local1.globalVolume); if (build.config.splashScreensOK){ activateGamelet("sponsorsplash"); } else { activateGamelet("menu"); }; addEventListener(Event.ENTER_FRAME, run); } protected function configLoaded(_arg1:XML):void{ engine.resources = engine.configparser.fromXML(_arg1.localName(), _arg1); engine.dataloader.begin(); } } }//package
Section 806
//ScamperGame_FuturePix (ScamperGame_FuturePix) package { import mx.core.*; public class ScamperGame_FuturePix extends FontAsset { } }//package
Section 807
//ScamperGameplay (ScamperGameplay) package { import genius.component.*; import flash.geom.*; import genius.sound.*; import genius.actor.*; import genius.graphics.*; import scamper.actor.*; import genius.util.*; import genius.graphics.renderable.*; import genius.gui.*; import scamper.gamelet.*; import scamper.*; import flash.net.*; import scamper.coin.*; import scamper.component.*; public class ScamperGameplay { public var coins:int; protected var lives:int; public var speedControl:SpeedControl; public var musicButtonState:int;// = 0 protected var music:SoundData; protected var introTimer:Number; public var showResults:Boolean; protected var engine:Engine; public var powerup:PowerupManager; public var shared:SharedObject; public var gameRunning:Boolean;// = true public var showInstructionsState:int;// = 0 protected var spawnTimer:Number; protected var state:int; public var score:int; public var ghostsEaten:int; public var sfxButtonState:int;// = 0 public var coinPattern:ICoinPattern; public var gameTime:Number; protected var numGhosts:int; protected var ghostsSpawned:int; public static const MAIN:int = 1; public static const INTRO:int = 0; public function ScamperGameplay(_arg1:Engine){ powerup = new PowerupManager(); super(); shared = SharedObject.getLocal("ScamperGhostConfig", "/"); gameRunning = false; gameTime = 0; coins = 0; ghostsEaten = 0; score = 0; registerStats(); this.engine = _arg1; setupComponentManagers(); showResults = false; } public function showOnlineScores(_arg1:Function=null, _arg2:Function=null, _arg3:Function=null):void{ engine.game.build.showLeaderboard(-1, _arg1, _arg2, _arg3); } public function eventLittleGhostEaten(_arg1:Point):void{ ghostsEaten = (ghostsEaten + 1); speedControl.addJuice(engine, engine.resources.gameplay.speed.littleGhost); engine.sound.playPositioned(engine.resources.appearance.ghostEatenSound, "ghost", 1, _arg1); addScore(engine.resources.gameplay.score.littleGhost); powerup.incrementPowerupChain(engine); } protected function spawnBigGhost():BaseGhost{ var _local1:BaseGhost = (engine.createObject(engine.resources.worldResources.bigghost) as BaseGhost); _local1.randomizeSpawn(engine); numGhosts = (numGhosts + 1); syncGhostDisplay(); return (_local1); } public function syncScoreDisplay():void{ var _local2:*; var _local3:SpriteRenderable; var _local4:int; var _local5:int; var _local1:GameObject = engine.managers.name.lookup("scoreDisplay"); if (_local1){ _local2 = engine.resources.animations.ledNumbers; _local5 = Math.min(score, 999999); _local3 = _local1.getComponent("digit0", SpriteRenderable); _local4 = extractDigit(_local5, 0); _local3.shader.texture = _local2.frame[_local4]; _local3 = _local1.getComponent("digit1", SpriteRenderable); _local4 = extractDigit(_local5, 1); _local3.shader.texture = _local2.frame[_local4]; _local3 = _local1.getComponent("digit2", SpriteRenderable); _local4 = extractDigit(_local5, 2); _local3.shader.texture = _local2.frame[_local4]; _local3 = _local1.getComponent("digit3", SpriteRenderable); _local4 = extractDigit(_local5, 3); _local3.shader.texture = _local2.frame[_local4]; _local3 = _local1.getComponent("digit4", SpriteRenderable); _local4 = extractDigit(_local5, 4); _local3.shader.texture = _local2.frame[_local4]; _local3 = _local1.getComponent("digit5", SpriteRenderable); _local4 = extractDigit(_local5, 5); _local3.shader.texture = _local2.frame[_local4]; }; } public function eventOpenJunkyardSamWebsite(_arg1):void{ engine.sound.play(engine.resources.appearance.menuClickSound); URLLink.open(engine.resources.links.junkyardSamURL); } public function eventSleeperGhostEaten(_arg1:Point):void{ ghostsEaten = (ghostsEaten + 1); speedControl.addJuice(engine, engine.resources.gameplay.speed.sleeperGhost); engine.sound.playPositioned(engine.resources.appearance.ghostEatenSound, "ghost", 1, _arg1); addScore(engine.resources.gameplay.score.sleeperGhost); powerup.incrementPowerupChain(engine); } public function eventPlayButtonReleased(_arg1):void{ engine.sound.play(engine.resources.appearance.menuClickSound); if (showInstructionsState == 0){ engine.game.activateGamelet("instructions"); } else { engine.game.activateGamelet("main"); }; } public function eventPlayerDead():void{ engine.gameplay.registerStats(); showResults = true; engine.sound.play(engine.resources.appearance.gameOverSound); engine.gameplay.setMusic(engine.resources.menuMusic); engine.game.activateGamelet("scores"); } protected function syncTwoDigitDisplay(_arg1:GameObject, _arg2:int):void{ var _local3:*; var _local4:SpriteRenderable; var _local5:int; if (_arg1){ _arg2 = MathUtil.clamp(_arg2, 0, 99); _local3 = engine.resources.animations.ledNumbers; _local4 = _arg1.getComponent("digit0", SpriteRenderable); _local5 = extractDigit(_arg2, 0); _local4.shader.texture = _local3.frame[_local5]; _local4 = _arg1.getComponent("digit1", SpriteRenderable); _local5 = extractDigit(_arg2, 1); _local4.shader.texture = _local3.frame[_local5]; }; } public function makeScoreLUT():Object{ var _local1:* = shared.data; var _local2:Object = {time:gameTime.toFixed(2), bestTime:_local1.bestTime.toFixed(2), coins:coins.toString(), bestCoins:_local1.bestCoins.toString(), ghostsEaten:ghostsEaten.toString(), bestGhostsEaten:_local1.bestGhostsEaten.toString(), score:score.toString(), bestScore:_local1.bestScore.toString()}; return (_local2); } public function message(_arg1:String):void{ var _local2:MessageDisplay; if (_arg1){ _local2 = (engine.managers.name.lookup("messageDisplay") as MessageDisplay); if (_local2){ _local2.setMessage(_arg1); }; }; } protected function getDoor():GhostDoor{ return ((engine.managers.name.lookup("ghostDoor") as GhostDoor)); } protected function extractDigit(_arg1:Number, _arg2:int):int{ return (Math.floor(((_arg1 * Math.pow(10, -(_arg2))) % 10))); } public function directionFrame(_arg1:Point):int{ var _local2:Number; var _local3:int; if ((((Math.abs(_arg1.x) < 0.5)) && ((Math.abs(_arg1.y) < 0.5)))){ return (16); }; _local2 = Math.atan2(_arg1.x, -(_arg1.y)); _local3 = Math.floor(MathUtil.wrap((((_local2 / Math.PI) * 8) + 0.5), 0, 16)); return (_local3); } protected function syncGhostMeter():void{ var _local2:SpriteRenderable; var _local3:Number; var _local4:Number; var _local1:GameObject = engine.managers.name.lookup("ghostMeter"); if (_local1){ _local2 = _local1.getComponent("meter", SpriteRenderable); _local3 = 199; _local4 = (spawnTimer / engine.resources.gameplay.ghostSpawnTime); _local2.size.y = (_local4 * _local3); _local2.center.y = ((-(_local3) * 0.5) * (1 - _local4)); _local2.shader.colorModulation = engine.resources.appearance.ghostMeter.emptyColor.lerp(engine.resources.appearance.ghostMeter.fullColor, _local4); }; } public function eventCoinCollected(_arg1:Point):void{ var _local3:*; var _local4:int; var _local5:SoundData; setNumCoins((coins + 1)); message(engine.interpolate(engine.resources.appearance.messages.coins, {coins:coins})); var _local2:int = engine.resources.gameplay.coinsPerLife; if ((((_local2 > 0)) && (((coins % _local2) == 0)))){ setNumLives((lives + 1)); message(engine.resources.appearance.messages.extraLife); engine.sound.playPositioned(engine.resources.appearance.extraLifeSound, null, 1, new Point()); } else { _local3 = engine.resources.appearance.coinPickupShader; if (_local2 == 0){ _local4 = 0; } else { _local4 = int(((((coins - 1) % _local2) / Number(_local2)) * (_local3.sound.length - 1))); }; _local5 = _local3.sound[_local4]; engine.sound.playPositioned(_local5, "coin", 1, _arg1); }; speedControl.addJuice(engine, engine.resources.gameplay.speed.coin); addScore(engine.resources.gameplay.score.coin); } protected function syncCoinMeter():void{ var _local2:SpriteRenderable; var _local3:Number; var _local4:Number; var _local1:GameObject = engine.managers.name.lookup("coinMeter"); if (_local1){ _local2 = _local1.getComponent("meter", SpriteRenderable); _local3 = 199; _local4 = ((Number(coins) % engine.resources.gameplay.coinsPerLife) / engine.resources.gameplay.coinsPerLife); _local2.size.y = (_local4 * _local3); _local2.center.y = ((-(_local3) * 0.5) * (1 - _local4)); _local2.shader.colorModulation = engine.resources.appearance.coinMeter.emptyColor.lerp(engine.resources.appearance.coinMeter.fullColor, _local4); }; } public function eventMainMenuButtonClicked(_arg1):void{ engine.sound.play(engine.resources.appearance.menuClickSound); engine.game.activateGamelet("menu"); } public function eventInstructionsAcknowlaged(_arg1):void{ engine.sound.play(engine.resources.appearance.menuClickSound); engine.game.activateGamelet("main"); } protected function spawnSleeperGhost():BaseGhost{ var _local1:BaseGhost = (engine.createObject(engine.resources.worldResources.sleeperghost) as BaseGhost); _local1.randomizeSpawn(engine); numGhosts = (numGhosts + 1); syncGhostDisplay(); return (_local1); } public function respawnGhost(_arg1:BaseGhost, _arg2:Number):void{ var _local3:GhostDoor = getDoor(); _local3.addPending(engine, _arg1, _arg2); } public function randomAreaPosition(_arg1:Number):Point{ var _local2:Number = MathUtil.uniform((engine.resources.bounds.playAreaLeft + _arg1), (engine.resources.bounds.playAreaRight - _arg1)); var _local3:Number = MathUtil.uniform((engine.resources.bounds.playAreaTop + _arg1), (engine.resources.bounds.playAreaBottom - _arg1)); var _local4:Point = new Point(_local2, _local3); constrainToPlayArea(_local4, _arg1); return (_local4); } public function eventOpenSponsorWebsite(_arg1):void{ engine.sound.play(engine.resources.appearance.menuClickSound); URLLink.open(engine.resources.links.sponsorURL); } public function eventShowLeaderboard(_arg1):void{ var _local2:ScoresGamelet = (engine.game.current as ScoresGamelet); if (_local2){ _local2.showLeaderboard(); }; } protected function setScore(_arg1:int):void{ score = _arg1; syncScoreDisplay(); } public function constrainToPlayArea(_arg1:Point, _arg2:Number):void{ var _local3:Number; var _local4:Number; _arg1.x = MathUtil.clamp(_arg1.x, (engine.resources.bounds.playAreaLeft + _arg2), (engine.resources.bounds.playAreaRight - _arg2)); _arg1.y = MathUtil.clamp(_arg1.y, (engine.resources.bounds.playAreaTop + _arg2), (engine.resources.bounds.playAreaBottom - _arg2)); var _local5:Number = engine.resources.bounds.cornerSize; var _local6:Number = (_local5 + (_arg2 * 1.414214)); _local3 = (_arg1.x + _arg1.y); _local4 = (_local3 - ((engine.resources.bounds.playAreaBottom + engine.resources.bounds.playAreaRight) - _local6)); if (_local4 > 0){ _arg1.x = (_arg1.x - (_local4 * 0.5)); _arg1.y = (_arg1.y - (_local4 * 0.5)); return; }; _local4 = (_local3 - ((engine.resources.bounds.playAreaTop + engine.resources.bounds.playAreaLeft) + _local6)); if (_local4 < 0){ _arg1.x = (_arg1.x - (_local4 * 0.5)); _arg1.y = (_arg1.y - (_local4 * 0.5)); return; }; _local3 = (_arg1.x - _arg1.y); _local4 = (_local3 - ((engine.resources.bounds.playAreaLeft - engine.resources.bounds.playAreaBottom) + _local6)); if (_local4 < 0){ _arg1.x = (_arg1.x - (_local4 * 0.5)); _arg1.y = (_arg1.y + (_local4 * 0.5)); return; }; _local4 = (_local3 - ((engine.resources.bounds.playAreaRight - engine.resources.bounds.playAreaTop) - _local6)); if (_local4 > 0){ _arg1.x = (_arg1.x - (_local4 * 0.5)); _arg1.y = (_arg1.y + (_local4 * 0.5)); return; }; } public function eventPowerupWarning():void{ engine.sound.play(engine.resources.appearance.powerupWarningSound); powerup.eventPowerupWarning(engine); } public function eventBigGhostEaten(_arg1:Point):void{ ghostsEaten = (ghostsEaten + 1); speedControl.addJuice(engine, engine.resources.gameplay.speed.bigGhost); engine.sound.playPositioned(engine.resources.appearance.ghostEatenSound, "ghost", 1, _arg1); addScore(engine.resources.gameplay.score.bigGhost); powerup.incrementPowerupChain(engine); } protected function accumulateGameTime(_arg1:Number):void{ var _local2:BaseGhost; var _local3:GhostDoor; if (engine.resources){ if (Math.floor(gameTime) != Math.floor((gameTime + _arg1))){ eventSecondElapsed(); }; gameTime = (gameTime + _arg1); if (state == INTRO){ introTimer = (introTimer + _arg1); if (introTimer >= engine.resources.gameplay.introWait){ initialGhostSpawn(); spawnEffect(); state = MAIN; }; } else { spawnTimer = (spawnTimer + _arg1); if (spawnTimer >= engine.resources.gameplay.ghostSpawnTime){ spawnTimer = (spawnTimer - engine.resources.gameplay.ghostSpawnTime); ghostsSpawned = (ghostsSpawned + 1); if (((ghostsSpawned + engine.resources.gameplay.bigGhost.spawnOffset) % engine.resources.gameplay.bigGhost.spawnModulus) == 0){ _local2 = spawnBigGhost(); } else { if (((ghostsSpawned + engine.resources.gameplay.sleeperGhost.spawnOffset) % engine.resources.gameplay.sleeperGhost.spawnModulus) == 0){ _local2 = spawnSleeperGhost(); } else { _local2 = spawnLittleGhost(); }; }; _local3 = getDoor(); _local3.addPending(engine, _local2, 0); addScore((engine.resources.gameplay.score.spawnConstant + (engine.resources.gameplay.score.spawnScale * ghostsSpawned))); spawnEffect(); }; }; syncGhostMeter(); powerup.tick(engine, _arg1); }; } public function initWorld(_arg1):void{ var _local3:int; var _local4:Coin; engine.clearWorld(); engine.loadWorld(engine.resources.defaultWorld); if (engine.resources.gameplay.coin.pathsEnabled){ coinPattern = new RandomPathCoinPattern(engine); } else { coinPattern = new RandomCoinPattern(engine); }; setNumLives(engine.resources.gameplay.startLives); setNumCoins(0); setScore(0); speedControl = new SpeedControl(engine); speedControl.reset(engine); syncSpeedMeter(); spawnTimer = 0; ghostsSpawned = 0; gameTime = 0; syncTimerDisplay(); numGhosts = 0; ghostsEaten = 0; syncGhostDisplay(); introTimer = 0; state = INTRO; powerup.reset(engine); var _local2:GhostDoor = getDoor(); _local3 = 0; while (_local3 < engine.resources.gameplay.coin.initialCoinCount) { _local4 = (engine.createObject(engine.resources.worldResources.coin) as Coin); _local4.randomizeSpawn(engine); _local3++; }; } public function playerOffsetPredict(_arg1:Body, _arg2:Number):Point{ var _local3:GameObject = engine.managers.name.lookup("player"); var _local4:Body = _local3.getComponent("body", Body); var _local5:Point = _local4.predict(_arg2); var _local6:Point = _arg1.predict(_arg2); return (_local5.subtract(_local6)); } public function eventSubmitScore(_arg1):void{ var _local2:ScoresGamelet = (engine.game.current as ScoresGamelet); if (_local2){ _local2.submitScore(); }; } public function randomEdgePosition(_arg1:Number):Point{ var _local2:Number; var _local3:Number; if (Math.random() < engine.resources.bounds.topWeight){ _local2 = MathUtil.uniform(engine.resources.bounds.playAreaLeft, engine.resources.bounds.playAreaRight); if (Math.random() < 0.5){ _local3 = engine.resources.bounds.playAreaTop; } else { _local3 = engine.resources.bounds.playAreaBottom; }; } else { _local3 = MathUtil.uniform(engine.resources.bounds.playAreaTop, engine.resources.bounds.playAreaBottom); if (Math.random() < 0.5){ _local2 = engine.resources.bounds.playAreaLeft; } else { _local2 = engine.resources.bounds.playAreaRight; }; }; return (new Point(_local2, _local3)); } protected function syncGhostDisplay():void{ var _local1:GameObject = engine.managers.name.lookup("ghostDisplay"); syncTwoDigitDisplay(_local1, numGhosts); } public function showOnlineScoresSubmit(_arg1:Function=null, _arg2:Function=null, _arg3:Function=null):void{ engine.game.build.showLeaderboard(score, _arg1, _arg2, _arg3); } public function addScore(_arg1:int):void{ setScore((score + _arg1)); } public function eventPlayerHit(_arg1:Point):Boolean{ setNumLives((lives - 1)); engine.sound.playPositioned(engine.resources.appearance.hitSound, null, 1, _arg1); var _local2:StateFX = (engine.managers.name.lookup("stateFX") as StateFX); if (_local2){ _local2.eventPlayerHit(engine); }; if (lives > 0){ if (engine.resources.gameplay.clearBoardOnHit){ clearBoard(); }; message(engine.resources.appearance.messages.playerHit); return (true); //unresolved jump }; message(engine.resources.appearance.messages.playerDead); return (false); } public function eventOpenNcbrayWebsite(_arg1):void{ engine.sound.play(engine.resources.appearance.menuClickSound); URLLink.open(engine.resources.links.ncbrayURL); } public function frame(_arg1:Number):void{ if (gameRunning){ syncTimerDisplay(); }; } public function syncSpeedMeter():void{ var _local2:SpriteRenderable; var _local3:Number; var _local4:Number; var _local5:Texture; var _local1:GameObject = engine.managers.name.lookup("speedMeter"); if (_local1){ _local2 = _local1.getComponent("meter", SpriteRenderable); if (_local2){ _local3 = 199; if (engine.resources.gameplay.speed.enabled){ _local4 = (speedControl.juice / speedControl.maximum(engine)); } else { _local4 = 1; }; _local2.size.y = (_local4 * _local3); _local2.center.y = ((-(_local3) * 0.5) * (1 - _local4)); if (engine.resources.gameplay.speed.enabled){ _local2.shader.colorModulation = engine.resources.appearance.speedMeter.emptyColor.lerp(engine.resources.appearance.speedMeter.fullColor, _local4); } else { _local2.shader.colorModulation = engine.resources.appearance.speedMeter.disabledColor; }; }; _local2 = _local1.getComponent("chargeIcon", SpriteRenderable); if (_local2){ if (!engine.resources.gameplay.speed.enabled){ if (speedControl.requestActive){ _local5 = engine.resources.appearance.speedMeter.disabledActive; } else { _local5 = engine.resources.appearance.speedMeter.disabledPassive; }; } else { if (speedControl.slowActive){ _local5 = engine.resources.appearance.speedMeter.allowedActive; } else { if (speedControl.canUse(engine)){ _local5 = engine.resources.appearance.speedMeter.allowedPassive; } else { if (speedControl.requestActive){ _local5 = engine.resources.appearance.speedMeter.disallowedActive; } else { _local5 = engine.resources.appearance.speedMeter.disallowedPassive; }; }; }; }; _local2.shader.texture = _local5; }; }; } public function setupComponentManagers():void{ engine.addManager(new BodyManager()); engine.addManager(new NameManager()); engine.addManager(new SwarmManager()); engine.addManager(new GUIManager()); } public function boardIsClear():Boolean{ var _local1:GhostDoor = engine.gameplay.getDoor(); return (((_local1.numPending() + 1) >= engine.gameplay.numGhosts)); } protected function initialGhostSpawn():void{ var _local2:int; var _local1:GhostDoor = getDoor(); _local2 = 0; while (_local2 < engine.resources.gameplay.initialLittleGhostCount) { _local1.addPending(engine, spawnLittleGhost(), 0); _local2++; }; _local2 = 0; while (_local2 < engine.resources.gameplay.initialBigGhostCount) { _local1.addPending(engine, spawnBigGhost(), 0); _local2++; }; _local2 = 0; while (_local2 < engine.resources.gameplay.initialSleeperGhostCount) { _local1.addPending(engine, spawnSleeperGhost(), 0); _local2++; }; } public function eventPowerupEnd():void{ powerup.eventPowerupEnd(engine); } public function eventInstructionsOff(_arg1):void{ engine.sound.play(engine.resources.appearance.menuClickSound); showInstructionsState = 1; } public function boardName():String{ var _local1 = "Ô–î5EÄN\x07hÓÙ|qÌ9^"; return (Encoder.reverse(_local1)); } public function clearBoard():void{ var ghost:BaseGhost; var ghosts:Array = engine.gom.query(function (_arg1:GameObject):Boolean{ return ((_arg1 is BaseGhost)); }); for each (ghost in ghosts) { ghost.doDeath(engine, engine.resources.gameplay.clearRespawnDelay); }; } public function setNumCoins(_arg1:int):void{ coins = _arg1; syncCoinMeter(); } public function eventClearHighScoresButtonClicked(_arg1):void{ var _local2:* = shared.data; _local2.bestTime = 0; _local2.bestCoins = 0; _local2.bestGhostsEaten = 0; _local2.bestScore = 0; engine.sound.play(engine.resources.appearance.gameOverSound); } public function setNumLives(_arg1:int):void{ var _local3:GameObject; var _local4:*; var _local5:SpriteRenderable; var _local2:int = engine.resources.gameplay.maxLives; lives = MathUtil.clamp(_arg1, 0, _local2); _local3 = engine.managers.name.lookup("lifeDisplay"); syncTwoDigitDisplay(_local3, lives); _local3 = engine.managers.name.lookup("lifeIndicator"); if (_local3){ _local4 = engine.resources.worldResources.lifeIndicator; _local5 = _local3.getComponent("mainScene0", SpriteRenderable); if (_local5){ _local5.shader.texture = _local4.frame[((lives > 0)) ? 1 : 0]; _local5.enabled = (_local2 > 0); }; _local5 = _local3.getComponent("mainScene1", SpriteRenderable); if (_local5){ _local5.shader.texture = _local4.frame[((lives > 1)) ? 1 : 0]; _local5.enabled = (_local2 > 1); }; _local5 = _local3.getComponent("mainScene2", SpriteRenderable); if (_local5){ _local5.shader.texture = _local4.frame[((lives > 2)) ? 1 : 0]; _local5.enabled = (_local2 > 2); }; _local5 = _local3.getComponent("mainScene3", SpriteRenderable); if (_local5){ _local5.shader.texture = _local4.frame[((lives > 3)) ? 1 : 0]; _local5.enabled = (_local2 > 3); }; _local5 = _local3.getComponent("mainScene4", SpriteRenderable); if (_local5){ _local5.shader.texture = _local4.frame[((lives > 4)) ? 1 : 0]; _local5.enabled = (_local2 > 4); }; }; } public function tick(_arg1:Number):void{ if (gameRunning){ accumulateGameTime(_arg1); speedControl.tick(engine, _arg1); }; } public function eventInstructionsOn(_arg1):void{ engine.sound.play(engine.resources.appearance.menuClickSound); showInstructionsState = 0; } public function registerStats():void{ var _local1:* = shared.data; if (((!(("bestTime" in _local1))) || ((_local1.bestTime < gameTime)))){ _local1.bestTime = gameTime; }; if (((!(("bestCoins" in _local1))) || ((_local1.bestCoins < coins)))){ _local1.bestCoins = coins; }; if (((!(("bestGhostsEaten" in _local1))) || ((_local1.bestGhostsEaten < ghostsEaten)))){ _local1.bestGhostsEaten = ghostsEaten; }; if (((!(("bestScore" in _local1))) || ((_local1.bestScore < score)))){ _local1.bestScore = score; }; } public function eventMusicOff(_arg1):void{ engine.sound.play(engine.resources.appearance.menuClickSound); engine.sound.pauseMusic(); musicButtonState = 1; } protected function spawnLittleGhost():BaseGhost{ var _local1:BaseGhost = (engine.createObject(engine.resources.worldResources.littleghost) as BaseGhost); _local1.randomizeSpawn(engine); numGhosts = (numGhosts + 1); syncGhostDisplay(); return (_local1); } public function initResults(_arg1):void{ var _local2:GameObject; var _local3:TextRenderable; var _local4:Object = makeScoreLUT(); _local2 = engine.managers.name.lookup("timeResult"); if (_local2){ _local3 = _local2.getComponent("mainSceneText", TextRenderable); _local3.text = engine.interpolate(_arg1.timeText, _local4); }; _local2 = engine.managers.name.lookup("coinsResult"); if (_local2){ _local3 = _local2.getComponent("mainSceneText", TextRenderable); _local3.text = engine.interpolate(_arg1.coinsText, _local4); }; _local2 = engine.managers.name.lookup("ghostsResult"); if (_local2){ _local3 = _local2.getComponent("mainSceneText", TextRenderable); _local3.text = engine.interpolate(_arg1.ghostsEatenText, _local4); }; _local2 = engine.managers.name.lookup("scoreResult"); if (_local2){ _local3 = _local2.getComponent("mainSceneText", TextRenderable); _local3.text = engine.interpolate(_arg1.scoreText, _local4); }; } public function isInsidePlayArea(_arg1:Point, _arg2:Number):Boolean{ return (((((((((_arg1.x + _arg2) >= engine.resources.bounds.playAreaLeft)) && (((_arg1.x - _arg2) < engine.resources.bounds.playAreaRight)))) && (((_arg1.y + _arg2) >= engine.resources.bounds.playAreaTop)))) && (((_arg1.y - _arg2) < engine.resources.bounds.playAreaBottom)))); } public function eventSfxOn(_arg1):void{ engine.sound.setSFXMute(false); engine.sound.play(engine.resources.appearance.menuClickSound); sfxButtonState = 0; } public function eventCreditsButtonClicked(_arg1):void{ engine.sound.play(engine.resources.appearance.menuClickSound); engine.game.activateGamelet("credits"); } public function playerOffset(_arg1:Point):Point{ var _local3:Placement; var _local4:Point; var _local2:GameObject = engine.managers.name.lookup("player"); if (_local2){ _local3 = _local2.getComponent("placement", Placement); _local4 = _local3.position; return (_local4.subtract(_arg1)); }; return (new Point(MathUtil.uniform(-1, 1), MathUtil.uniform(-1, 1))); } public function eventPowerupBegin():void{ powerup.eventPowerupBegin(engine); } public function eventSfxOff(_arg1):void{ engine.sound.setSFXMute(true); sfxButtonState = 1; } public function eventMusicOn(_arg1):void{ engine.sound.play(engine.resources.appearance.menuClickSound); if (music){ engine.sound.resumeMusic(music); }; musicButtonState = 0; } protected function spawnEffect():void{ engine.sound.play(engine.resources.appearance.spawnSound); message(engine.resources.appearance.messages.spawn); var _local1:StateFX = (engine.managers.name.lookup("stateFX") as StateFX); if (_local1){ _local1.eventGhostSpawned(engine); }; } public function eventSecondElapsed():void{ addScore((engine.resources.gameplay.score.timeConstant + (engine.resources.gameplay.score.timeScale * Math.floor(gameTime)))); } public function setMusic(_arg1:SoundData):void{ if (((_arg1) && ((musicButtonState == 0)))){ if (_arg1 != this.music){ engine.sound.resumeMusic(_arg1); }; } else { engine.sound.pauseMusic(); }; this.music = _arg1; } public function eventOpenWebsite(_arg1):void{ engine.sound.play(engine.resources.appearance.menuClickSound); URLLink.open(engine.resources.links.stolenGooseURL); } protected function syncTimerDisplay():void{ var _local2:*; var _local3:SpriteRenderable; var _local4:int; var _local5:Number; var _local6:int; var _local7:int; var _local1:GameObject = engine.managers.name.lookup("timerDisplay"); if (_local1){ _local2 = engine.resources.animations.ledNumbers; _local5 = (gameTime % 1); _local6 = (Math.floor(gameTime) % 60); _local7 = ((Math.floor(gameTime) - _local6) / 60); if (_local7 > 99){ _local7 = 99; _local6 = 99; }; _local3 = _local1.getComponent("digit0", SpriteRenderable); _local4 = extractDigit(_local6, 0); _local3.shader.texture = _local2.frame[_local4]; _local3 = _local1.getComponent("digit1", SpriteRenderable); _local4 = extractDigit(_local6, 1); _local3.shader.texture = _local2.frame[_local4]; _local3 = _local1.getComponent("digit2", SpriteRenderable); _local4 = extractDigit(_local7, 0); _local3.shader.texture = _local2.frame[_local4]; _local3 = _local1.getComponent("digit3", SpriteRenderable); _local4 = extractDigit(_local7, 1); _local3.shader.texture = _local2.frame[_local4]; }; } public function eventScoresButtonClicked(_arg1):void{ engine.sound.play(engine.resources.appearance.menuClickSound); engine.game.activateGamelet("scores"); } public function resetGameplayState():void{ } } }//package

Library Items

Symbol 1 Bitmap {PlayButton_mouseImage}
Symbol 2 Bitmap {PlayButton_pressedImage}
Symbol 3 Bitmap {PlayButton_defaultImage}
Symbol 4 Bitmap {Preloader_loadingEmbed}
Symbol 5 Bitmap {MaxGamesLinkButton_pressedImage}
Symbol 6 Bitmap {Preloader_logoEmbed}
Symbol 7 Bitmap {MaxGamesLinkButton_defaultImage}
Symbol 8 Bitmap {MaxGamesLinkButton_mouseImage}
Symbol 9 Sound {generated.ResourceEmbedding_resource0559} [generated.ResourceEmbedding_resource0559]
Symbol 10 Sound {generated.ResourceEmbedding_resource0557} [generated.ResourceEmbedding_resource0557]
Symbol 11 Sound {generated.ResourceEmbedding_resource0558} [generated.ResourceEmbedding_resource0558]
Symbol 12 Sound {generated.ResourceEmbedding_resource0555} [generated.ResourceEmbedding_resource0555]
Symbol 13 Sound {generated.ResourceEmbedding_resource0556} [generated.ResourceEmbedding_resource0556]
Symbol 14 Sound {generated.ResourceEmbedding_resource0553} [generated.ResourceEmbedding_resource0553]
Symbol 15 Sound {generated.ResourceEmbedding_resource0554} [generated.ResourceEmbedding_resource0554]
Symbol 16 Sound {generated.ResourceEmbedding_resource0551} [generated.ResourceEmbedding_resource0551]
Symbol 17 Sound {generated.ResourceEmbedding_resource0552} [generated.ResourceEmbedding_resource0552]
Symbol 18 Sound {generated.ResourceEmbedding_resource0550} [generated.ResourceEmbedding_resource0550]
Symbol 19 Sound {generated.ResourceEmbedding_resource0548} [generated.ResourceEmbedding_resource0548]
Symbol 20 Sound {generated.ResourceEmbedding_resource0549} [generated.ResourceEmbedding_resource0549]
Symbol 21 Sound {generated.ResourceEmbedding_resource0544} [generated.ResourceEmbedding_resource0544]
Symbol 22 Sound {generated.ResourceEmbedding_resource0545} [generated.ResourceEmbedding_resource0545]
Symbol 23 Sound {generated.ResourceEmbedding_resource0546} [generated.ResourceEmbedding_resource0546]
Symbol 24 Sound {generated.ResourceEmbedding_resource0547} [generated.ResourceEmbedding_resource0547]
Symbol 25 Sound {generated.ResourceEmbedding_resource0540} [generated.ResourceEmbedding_resource0540]
Symbol 26 Sound {generated.ResourceEmbedding_resource0541} [generated.ResourceEmbedding_resource0541]
Symbol 27 Sound {generated.ResourceEmbedding_resource0542} [generated.ResourceEmbedding_resource0542]
Symbol 28 Sound {generated.ResourceEmbedding_resource0543} [generated.ResourceEmbedding_resource0543]
Symbol 29 Sound {generated.ResourceEmbedding_resource0539} [generated.ResourceEmbedding_resource0539]
Symbol 30 Sound {generated.ResourceEmbedding_resource0537} [generated.ResourceEmbedding_resource0537]
Symbol 31 Sound {generated.ResourceEmbedding_resource0538} [generated.ResourceEmbedding_resource0538]
Symbol 32 Sound {generated.ResourceEmbedding_resource0531} [generated.ResourceEmbedding_resource0531]
Symbol 33 Sound {generated.ResourceEmbedding_resource0532} [generated.ResourceEmbedding_resource0532]
Symbol 34 Sound {generated.ResourceEmbedding_resource0530} [generated.ResourceEmbedding_resource0530]
Symbol 35 Sound {generated.ResourceEmbedding_resource0535} [generated.ResourceEmbedding_resource0535]
Symbol 36 Sound {generated.ResourceEmbedding_resource0536} [generated.ResourceEmbedding_resource0536]
Symbol 37 Sound {generated.ResourceEmbedding_resource0533} [generated.ResourceEmbedding_resource0533]
Symbol 38 Sound {generated.ResourceEmbedding_resource0534} [generated.ResourceEmbedding_resource0534]
Symbol 39 Sound {generated.ResourceEmbedding_resource0526} [generated.ResourceEmbedding_resource0526]
Symbol 40 Sound {generated.ResourceEmbedding_resource0527} [generated.ResourceEmbedding_resource0527]
Symbol 41 Sound {generated.ResourceEmbedding_resource0528} [generated.ResourceEmbedding_resource0528]
Symbol 42 Sound {generated.ResourceEmbedding_resource0529} [generated.ResourceEmbedding_resource0529]
Symbol 43 Sound {generated.ResourceEmbedding_resource0520} [generated.ResourceEmbedding_resource0520]
Symbol 44 Sound {generated.ResourceEmbedding_resource0521} [generated.ResourceEmbedding_resource0521]
Symbol 45 Sound {generated.ResourceEmbedding_resource0522} [generated.ResourceEmbedding_resource0522]
Symbol 46 Sound {generated.ResourceEmbedding_resource0523} [generated.ResourceEmbedding_resource0523]
Symbol 47 Sound {generated.ResourceEmbedding_resource0524} [generated.ResourceEmbedding_resource0524]
Symbol 48 Sound {generated.ResourceEmbedding_resource0525} [generated.ResourceEmbedding_resource0525]
Symbol 49 Sound {generated.ResourceEmbedding_resource0576} [generated.ResourceEmbedding_resource0576]
Symbol 50 Sound {generated.ResourceEmbedding_resource0575} [generated.ResourceEmbedding_resource0575]
Symbol 51 Sound {generated.ResourceEmbedding_resource0574} [generated.ResourceEmbedding_resource0574]
Symbol 52 Sound {generated.ResourceEmbedding_resource0573} [generated.ResourceEmbedding_resource0573]
Symbol 53 Sound {generated.ResourceEmbedding_resource0578} [generated.ResourceEmbedding_resource0578]
Symbol 54 Sound {generated.ResourceEmbedding_resource0577} [generated.ResourceEmbedding_resource0577]
Symbol 55 Sound {generated.ResourceEmbedding_resource0571} [generated.ResourceEmbedding_resource0571]
Symbol 56 Sound {generated.ResourceEmbedding_resource0572} [generated.ResourceEmbedding_resource0572]
Symbol 57 Sound {generated.ResourceEmbedding_resource0570} [generated.ResourceEmbedding_resource0570]
Symbol 58 Sound {generated.ResourceEmbedding_resource0563} [generated.ResourceEmbedding_resource0563]
Symbol 59 Sound {generated.ResourceEmbedding_resource0562} [generated.ResourceEmbedding_resource0562]
Symbol 60 Sound {generated.ResourceEmbedding_resource0565} [generated.ResourceEmbedding_resource0565]
Symbol 61 Sound {generated.ResourceEmbedding_resource0564} [generated.ResourceEmbedding_resource0564]
Symbol 62 Sound {generated.ResourceEmbedding_resource0567} [generated.ResourceEmbedding_resource0567]
Symbol 63 Sound {generated.ResourceEmbedding_resource0566} [generated.ResourceEmbedding_resource0566]
Symbol 64 Sound {generated.ResourceEmbedding_resource0569} [generated.ResourceEmbedding_resource0569]
Symbol 65 Sound {generated.ResourceEmbedding_resource0568} [generated.ResourceEmbedding_resource0568]
Symbol 66 Sound {generated.ResourceEmbedding_resource0560} [generated.ResourceEmbedding_resource0560]
Symbol 67 Sound {generated.ResourceEmbedding_resource0561} [generated.ResourceEmbedding_resource0561]
Symbol 68 Sound {generated.ResourceEmbedding_resource0514} [generated.ResourceEmbedding_resource0514]
Symbol 69 Sound {generated.ResourceEmbedding_resource0519} [generated.ResourceEmbedding_resource0519]
Symbol 70 Sound {generated.ResourceEmbedding_resource0516} [generated.ResourceEmbedding_resource0516]
Symbol 71 Sound {generated.ResourceEmbedding_resource0515} [generated.ResourceEmbedding_resource0515]
Symbol 72 Sound {generated.ResourceEmbedding_resource0518} [generated.ResourceEmbedding_resource0518]
Symbol 73 Sound {generated.ResourceEmbedding_resource0517} [generated.ResourceEmbedding_resource0517]
Symbol 74 Bitmap {generated.ResourceEmbedding_resource0042}
Symbol 75 Bitmap {generated.ResourceEmbedding_resource0041}
Symbol 76 Bitmap {generated.ResourceEmbedding_resource0044}
Symbol 77 Bitmap {generated.ResourceEmbedding_resource0043}
Symbol 78 Bitmap {generated.ResourceEmbedding_resource0045}
Symbol 79 Bitmap {generated.ResourceEmbedding_resource0049}
Symbol 80 Bitmap {generated.ResourceEmbedding_resource0047}
Symbol 81 Bitmap {generated.ResourceEmbedding_resource0450}
Symbol 82 Bitmap {generated.ResourceEmbedding_resource0451}
Symbol 83 Bitmap {generated.ResourceEmbedding_resource0357}
Symbol 84 Bitmap {generated.ResourceEmbedding_resource0452}
Symbol 85 Bitmap {generated.ResourceEmbedding_resource0358}
Symbol 86 Bitmap {generated.ResourceEmbedding_resource0453}
Symbol 87 Bitmap {generated.ResourceEmbedding_resource0359}
Symbol 88 Bitmap {generated.ResourceEmbedding_resource0454}
Symbol 89 Bitmap {generated.ResourceEmbedding_resource0455}
Symbol 90 Bitmap {generated.ResourceEmbedding_resource0456}
Symbol 91 Bitmap {generated.ResourceEmbedding_resource0353}
Symbol 92 Bitmap {generated.ResourceEmbedding_resource0457}
Symbol 93 Bitmap {generated.ResourceEmbedding_resource0354}
Symbol 94 Bitmap {generated.ResourceEmbedding_resource0458}
Symbol 95 Bitmap {generated.ResourceEmbedding_resource0355}
Symbol 96 Bitmap {generated.ResourceEmbedding_resource0459}
Symbol 97 Bitmap {generated.ResourceEmbedding_resource0356}
Symbol 98 Bitmap {generated.ResourceEmbedding_resource0350}
Symbol 99 Bitmap {generated.ResourceEmbedding_resource0050}
Symbol 100 Bitmap {generated.ResourceEmbedding_resource0351}
Symbol 101 Bitmap {generated.ResourceEmbedding_resource0051}
Symbol 102 Bitmap {generated.ResourceEmbedding_resource0352}
Symbol 103 Bitmap {generated.ResourceEmbedding_resource0055}
Symbol 104 Bitmap {generated.ResourceEmbedding_resource0054}
Symbol 105 Bitmap {generated.ResourceEmbedding_resource0053}
Symbol 106 Bitmap {generated.ResourceEmbedding_resource0052}
Symbol 107 Bitmap {generated.ResourceEmbedding_resource0059}
Symbol 108 Bitmap {generated.ResourceEmbedding_resource0058}
Symbol 109 Bitmap {generated.ResourceEmbedding_resource0057}
Symbol 110 Bitmap {generated.ResourceEmbedding_resource0056}
Symbol 111 Bitmap {generated.ResourceEmbedding_resource0440}
Symbol 112 Bitmap {generated.ResourceEmbedding_resource0348}
Symbol 113 Bitmap {generated.ResourceEmbedding_resource0443}
Symbol 114 Bitmap {generated.ResourceEmbedding_resource0349}
Symbol 115 Bitmap {generated.ResourceEmbedding_resource0444}
Symbol 116 Bitmap {generated.ResourceEmbedding_resource0346}
Symbol 117 Bitmap {generated.ResourceEmbedding_resource0441}
Symbol 118 Bitmap {generated.ResourceEmbedding_resource0347}
Symbol 119 Bitmap {generated.ResourceEmbedding_resource0442}
Symbol 120 Bitmap {generated.ResourceEmbedding_resource0344}
Symbol 121 Bitmap {generated.ResourceEmbedding_resource0447}
Symbol 122 Bitmap {generated.ResourceEmbedding_resource0345}
Symbol 123 Bitmap {generated.ResourceEmbedding_resource0448}
Symbol 124 Bitmap {generated.ResourceEmbedding_resource0342}
Symbol 125 Bitmap {generated.ResourceEmbedding_resource0445}
Symbol 126 Bitmap {generated.ResourceEmbedding_resource0343}
Symbol 127 Bitmap {generated.ResourceEmbedding_resource0446}
Symbol 128 Bitmap {generated.ResourceEmbedding_resource0340}
Symbol 129 Bitmap {generated.ResourceEmbedding_resource0061}
Symbol 130 Bitmap {generated.ResourceEmbedding_resource0341}
Symbol 131 Bitmap {generated.ResourceEmbedding_resource0062}
Symbol 132 Bitmap {generated.ResourceEmbedding_resource0449}
Symbol 133 Bitmap {generated.ResourceEmbedding_resource0060}
Symbol 134 Bitmap {generated.ResourceEmbedding_resource0068}
Symbol 135 Bitmap {generated.ResourceEmbedding_resource0067}
Symbol 136 Bitmap {generated.ResourceEmbedding_resource0069}
Symbol 137 Bitmap {generated.ResourceEmbedding_resource0064}
Symbol 138 Bitmap {generated.ResourceEmbedding_resource0063}
Symbol 139 Bitmap {generated.ResourceEmbedding_resource0066}
Symbol 140 Bitmap {generated.ResourceEmbedding_resource0065}
Symbol 141 Bitmap {generated.ResourceEmbedding_resource0480}
Symbol 142 Bitmap {generated.ResourceEmbedding_resource0474}
Symbol 143 Bitmap {generated.ResourceEmbedding_resource0338}
Symbol 144 Bitmap {generated.ResourceEmbedding_resource0475}
Symbol 145 Bitmap {generated.ResourceEmbedding_resource0336}
Symbol 146 Bitmap {generated.ResourceEmbedding_resource0476}
Symbol 147 Bitmap {generated.ResourceEmbedding_resource0337}
Symbol 148 Bitmap {generated.ResourceEmbedding_resource0477}
Symbol 149 Bitmap {generated.ResourceEmbedding_resource0339}
Symbol 150 Bitmap {generated.ResourceEmbedding_resource0470}
Symbol 151 Bitmap {generated.ResourceEmbedding_resource0471}
Symbol 152 Bitmap {generated.ResourceEmbedding_resource0472}
Symbol 153 Bitmap {generated.ResourceEmbedding_resource0473}
Symbol 154 Bitmap {generated.ResourceEmbedding_resource0070}
Symbol 155 Bitmap {generated.ResourceEmbedding_resource0071}
Symbol 156 Bitmap {generated.ResourceEmbedding_resource0072}
Symbol 157 Bitmap {generated.ResourceEmbedding_resource0333}
Symbol 158 Bitmap {generated.ResourceEmbedding_resource0073}
Symbol 159 Bitmap {generated.ResourceEmbedding_resource0331}
Symbol 160 Bitmap {generated.ResourceEmbedding_resource0478}
Symbol 161 Bitmap {generated.ResourceEmbedding_resource0332}
Symbol 162 Bitmap {generated.ResourceEmbedding_resource0479}
Symbol 163 Bitmap {generated.ResourceEmbedding_resource0334}
Symbol 164 Bitmap {generated.ResourceEmbedding_resource0079}
Symbol 165 Bitmap {generated.ResourceEmbedding_resource0078}
Symbol 166 Bitmap {generated.ResourceEmbedding_resource0077}
Symbol 167 Bitmap {generated.ResourceEmbedding_resource0076}
Symbol 168 Bitmap {generated.ResourceEmbedding_resource0075}
Symbol 169 Bitmap {generated.ResourceEmbedding_resource0074}
Symbol 170 Bitmap {generated.ResourceEmbedding_resource0326}
Symbol 171 Bitmap {generated.ResourceEmbedding_resource0465}
Symbol 172 Bitmap {generated.ResourceEmbedding_resource0327}
Symbol 173 Bitmap {generated.ResourceEmbedding_resource0466}
Symbol 174 Bitmap {generated.ResourceEmbedding_resource0324}
Symbol 175 Bitmap {generated.ResourceEmbedding_resource0463}
Symbol 176 Bitmap {generated.ResourceEmbedding_resource0328}
Symbol 177 Bitmap {generated.ResourceEmbedding_resource0464}
Symbol 178 Bitmap {generated.ResourceEmbedding_resource0461}
Symbol 179 Bitmap {generated.ResourceEmbedding_resource0462}
Symbol 180 Bitmap {generated.ResourceEmbedding_resource0329}
Symbol 181 Bitmap {generated.ResourceEmbedding_resource0460}
Symbol 182 Bitmap {generated.ResourceEmbedding_resource0083}
Symbol 183 Bitmap {generated.ResourceEmbedding_resource0084}
Symbol 184 Bitmap {generated.ResourceEmbedding_resource0081}
Symbol 185 Bitmap {generated.ResourceEmbedding_resource0082}
Symbol 186 Bitmap {generated.ResourceEmbedding_resource0322}
Symbol 187 Bitmap {generated.ResourceEmbedding_resource0469}
Symbol 188 Bitmap {generated.ResourceEmbedding_resource0320}
Symbol 189 Bitmap {generated.ResourceEmbedding_resource0080}
Symbol 190 Bitmap {generated.ResourceEmbedding_resource0467}
Symbol 191 Bitmap {generated.ResourceEmbedding_resource0321}
Symbol 192 Bitmap {generated.ResourceEmbedding_resource0468}
Symbol 193 Bitmap {generated.ResourceEmbedding_resource0005}
Symbol 194 Bitmap {generated.ResourceEmbedding_resource0247}
Symbol 195 Bitmap {generated.ResourceEmbedding_resource0006}
Symbol 196 Bitmap {generated.ResourceEmbedding_resource0007}
Symbol 197 Bitmap {generated.ResourceEmbedding_resource0008}
Symbol 198 Bitmap {generated.ResourceEmbedding_resource0009}
Symbol 199 Bitmap {generated.ResourceEmbedding_resource0243}
Symbol 200 Bitmap {generated.ResourceEmbedding_resource0210}
Symbol 201 Bitmap {generated.ResourceEmbedding_resource0244}
Symbol 202 Bitmap {generated.ResourceEmbedding_resource0211}
Symbol 203 Bitmap {generated.ResourceEmbedding_resource0245}
Symbol 204 Bitmap {generated.ResourceEmbedding_resource0212}
Symbol 205 Bitmap {generated.ResourceEmbedding_resource0246}
Symbol 206 Bitmap {generated.ResourceEmbedding_resource0213}
Symbol 207 Bitmap {generated.ResourceEmbedding_resource0239}
Symbol 208 Bitmap {generated.ResourceEmbedding_resource0214}
Symbol 209 Bitmap {generated.ResourceEmbedding_resource0240}
Symbol 210 Bitmap {generated.ResourceEmbedding_resource0215}
Symbol 211 Bitmap {generated.ResourceEmbedding_resource0241}
Symbol 212 Bitmap {generated.ResourceEmbedding_resource0216}
Symbol 213 BinaryData {generated.ResourceEmbedding_resource0000}
Symbol 214 Bitmap {generated.ResourceEmbedding_resource0242}
Symbol 215 Bitmap {generated.ResourceEmbedding_resource0217}
Symbol 216 Bitmap {generated.ResourceEmbedding_resource0001}
Symbol 217 Bitmap {generated.ResourceEmbedding_resource0218}
Symbol 218 Bitmap {generated.ResourceEmbedding_resource0002}
Symbol 219 Bitmap {generated.ResourceEmbedding_resource0219}
Symbol 220 Bitmap {generated.ResourceEmbedding_resource0003}
Symbol 221 Bitmap {generated.ResourceEmbedding_resource0238}
Symbol 222 Bitmap {generated.ResourceEmbedding_resource0004}
Symbol 223 Bitmap {generated.ResourceEmbedding_resource0413}
Symbol 224 Bitmap {generated.ResourceEmbedding_resource0310}
Symbol 225 Bitmap {generated.ResourceEmbedding_resource0412}
Symbol 226 Bitmap {generated.ResourceEmbedding_resource0415}
Symbol 227 Bitmap {generated.ResourceEmbedding_resource0312}
Symbol 228 Bitmap {generated.ResourceEmbedding_resource0414}
Symbol 229 Bitmap {generated.ResourceEmbedding_resource0311}
Symbol 230 Bitmap {generated.ResourceEmbedding_resource0417}
Symbol 231 Bitmap {generated.ResourceEmbedding_resource0416}
Symbol 232 Bitmap {generated.ResourceEmbedding_resource0419}
Symbol 233 Bitmap {generated.ResourceEmbedding_resource0418}
Symbol 234 Bitmap {generated.ResourceEmbedding_resource0318}
Symbol 235 Bitmap {generated.ResourceEmbedding_resource0317}
Symbol 236 Bitmap {generated.ResourceEmbedding_resource0319}
Symbol 237 Bitmap {generated.ResourceEmbedding_resource0314}
Symbol 238 Bitmap {generated.ResourceEmbedding_resource0313}
Symbol 239 Bitmap {generated.ResourceEmbedding_resource0411}
Symbol 240 Bitmap {generated.ResourceEmbedding_resource0316}
Symbol 241 Bitmap {generated.ResourceEmbedding_resource0410}
Symbol 242 Bitmap {generated.ResourceEmbedding_resource0315}
Symbol 243 Bitmap {generated.ResourceEmbedding_resource0018}
Symbol 244 Bitmap {generated.ResourceEmbedding_resource0019}
Symbol 245 Bitmap {generated.ResourceEmbedding_resource0236}
Symbol 246 Bitmap {generated.ResourceEmbedding_resource0016}
Symbol 247 Bitmap {generated.ResourceEmbedding_resource0237}
Symbol 248 Bitmap {generated.ResourceEmbedding_resource0017}
Symbol 249 Bitmap {generated.ResourceEmbedding_resource0201}
Symbol 250 Bitmap {generated.ResourceEmbedding_resource0106}
Symbol 251 Bitmap {generated.ResourceEmbedding_resource0202}
Symbol 252 Bitmap {generated.ResourceEmbedding_resource0107}
Symbol 253 Bitmap {generated.ResourceEmbedding_resource0104}
Symbol 254 Bitmap {generated.ResourceEmbedding_resource0200}
Symbol 255 Bitmap {generated.ResourceEmbedding_resource0105}
Symbol 256 Bitmap {generated.ResourceEmbedding_resource0205}
Symbol 257 Bitmap {generated.ResourceEmbedding_resource0102}
Symbol 258 Bitmap {generated.ResourceEmbedding_resource0010}
Symbol 259 Bitmap {generated.ResourceEmbedding_resource0206}
Symbol 260 Bitmap {generated.ResourceEmbedding_resource0103}
Symbol 261 Bitmap {generated.ResourceEmbedding_resource0011}
Symbol 262 Bitmap {generated.ResourceEmbedding_resource0203}
Symbol 263 Bitmap {generated.ResourceEmbedding_resource0409}
Symbol 264 Bitmap {generated.ResourceEmbedding_resource0100}
Symbol 265 Bitmap {generated.ResourceEmbedding_resource0204}
Symbol 266 Bitmap {generated.ResourceEmbedding_resource0101}
Symbol 267 Bitmap {generated.ResourceEmbedding_resource0209}
Symbol 268 Bitmap {generated.ResourceEmbedding_resource0014}
Symbol 269 Bitmap {generated.ResourceEmbedding_resource0015}
Symbol 270 Bitmap {generated.ResourceEmbedding_resource0207}
Symbol 271 Bitmap {generated.ResourceEmbedding_resource0012}
Symbol 272 Bitmap {generated.ResourceEmbedding_resource0208}
Symbol 273 Bitmap {generated.ResourceEmbedding_resource0013}
Symbol 274 Bitmap {generated.ResourceEmbedding_resource0402}
Symbol 275 Bitmap {generated.ResourceEmbedding_resource0301}
Symbol 276 Bitmap {generated.ResourceEmbedding_resource0403}
Symbol 277 Bitmap {generated.ResourceEmbedding_resource0300}
Symbol 278 Bitmap {generated.ResourceEmbedding_resource0401}
Symbol 279 Bitmap {generated.ResourceEmbedding_resource0408}
Symbol 280 Bitmap {generated.ResourceEmbedding_resource0407}
Symbol 281 Bitmap {generated.ResourceEmbedding_resource0406}
Symbol 282 Bitmap {generated.ResourceEmbedding_resource0405}
Symbol 283 Bitmap {generated.ResourceEmbedding_resource0309}
Symbol 284 Bitmap {generated.ResourceEmbedding_resource0308}
Symbol 285 Bitmap {generated.ResourceEmbedding_resource0307}
Symbol 286 Bitmap {generated.ResourceEmbedding_resource0306}
Symbol 287 Bitmap {generated.ResourceEmbedding_resource0400}
Symbol 288 Bitmap {generated.ResourceEmbedding_resource0305}
Symbol 289 Bitmap {generated.ResourceEmbedding_resource0304}
Symbol 290 Bitmap {generated.ResourceEmbedding_resource0303}
Symbol 291 BinaryData {generated.ResourceEmbedding_resource0580}
Symbol 292 Bitmap {generated.ResourceEmbedding_resource0302}
Symbol 293 Bitmap {generated.ResourceEmbedding_resource0232}
Symbol 294 Bitmap {generated.ResourceEmbedding_resource0233}
Symbol 295 Bitmap {generated.ResourceEmbedding_resource0234}
Symbol 296 Bitmap {generated.ResourceEmbedding_resource0235}
Symbol 297 Bitmap {generated.ResourceEmbedding_resource0027}
Symbol 298 Bitmap {generated.ResourceEmbedding_resource0028}
Symbol 299 Bitmap {generated.ResourceEmbedding_resource0029}
Symbol 300 Bitmap {generated.ResourceEmbedding_resource0230}
Symbol 301 Bitmap {generated.ResourceEmbedding_resource0231}
Symbol 302 Bitmap {generated.ResourceEmbedding_resource0023}
Symbol 303 Bitmap {generated.ResourceEmbedding_resource0024}
Symbol 304 Bitmap {generated.ResourceEmbedding_resource0025}
Symbol 305 Bitmap {generated.ResourceEmbedding_resource0026}
Symbol 306 Bitmap {generated.ResourceEmbedding_resource0020}
Symbol 307 Bitmap {generated.ResourceEmbedding_resource0021}
Symbol 308 Bitmap {generated.ResourceEmbedding_resource0022}
Symbol 309 Bitmap {generated.ResourceEmbedding_resource0439}
Symbol 310 Bitmap {generated.ResourceEmbedding_resource0438}
Symbol 311 BinaryData {generated.ResourceEmbedding_resource0579}
Symbol 312 Bitmap {generated.ResourceEmbedding_resource0435}
Symbol 313 Bitmap {generated.ResourceEmbedding_resource0434}
Symbol 314 Bitmap {generated.ResourceEmbedding_resource0437}
Symbol 315 Bitmap {generated.ResourceEmbedding_resource0436}
Symbol 316 Bitmap {generated.ResourceEmbedding_resource0431}
Symbol 317 Bitmap {generated.ResourceEmbedding_resource0430}
Symbol 318 Bitmap {generated.ResourceEmbedding_resource0433}
Symbol 319 Bitmap {generated.ResourceEmbedding_resource0432}
Symbol 320 Bitmap {generated.ResourceEmbedding_resource0223}
Symbol 321 Bitmap {generated.ResourceEmbedding_resource0224}
Symbol 322 Bitmap {generated.ResourceEmbedding_resource0221}
Symbol 323 Bitmap {generated.ResourceEmbedding_resource0222}
Symbol 324 Bitmap {generated.ResourceEmbedding_resource0220}
Symbol 325 Bitmap {generated.ResourceEmbedding_resource0038}
Symbol 326 Bitmap {generated.ResourceEmbedding_resource0039}
Symbol 327 Bitmap {generated.ResourceEmbedding_resource0036}
Symbol 328 Bitmap {generated.ResourceEmbedding_resource0037}
Symbol 329 Bitmap {generated.ResourceEmbedding_resource0034}
Symbol 330 Bitmap {generated.ResourceEmbedding_resource0229}
Symbol 331 Bitmap {generated.ResourceEmbedding_resource0035}
Symbol 332 Bitmap {generated.ResourceEmbedding_resource0032}
Symbol 333 Bitmap {generated.ResourceEmbedding_resource0227}
Symbol 334 Bitmap {generated.ResourceEmbedding_resource0033}
Symbol 335 Bitmap {generated.ResourceEmbedding_resource0228}
Symbol 336 Bitmap {generated.ResourceEmbedding_resource0030}
Symbol 337 Bitmap {generated.ResourceEmbedding_resource0225}
Symbol 338 Bitmap {generated.ResourceEmbedding_resource0031}
Symbol 339 Bitmap {generated.ResourceEmbedding_resource0226}
Symbol 340 Bitmap {generated.ResourceEmbedding_resource0040}
Symbol 341 Bitmap {generated.ResourceEmbedding_resource0429}
Symbol 342 Bitmap {generated.ResourceEmbedding_resource0428}
Symbol 343 Bitmap {generated.ResourceEmbedding_resource0427}
Symbol 344 Bitmap {generated.ResourceEmbedding_resource0426}
Symbol 345 Bitmap {generated.ResourceEmbedding_resource0425}
Symbol 346 Bitmap {generated.ResourceEmbedding_resource0424}
Symbol 347 Bitmap {generated.ResourceEmbedding_resource0423}
Symbol 348 Bitmap {generated.ResourceEmbedding_resource0422}
Symbol 349 Bitmap {generated.ResourceEmbedding_resource0421}
Symbol 350 Bitmap {generated.ResourceEmbedding_resource0420}
Symbol 351 Bitmap {generated.ResourceEmbedding_resource0260}
Symbol 352 Bitmap {generated.ResourceEmbedding_resource0160}
Symbol 353 Bitmap {generated.ResourceEmbedding_resource0161}
Symbol 354 Bitmap {generated.ResourceEmbedding_resource0158}
Symbol 355 Bitmap {generated.ResourceEmbedding_resource0157}
Symbol 356 Bitmap {generated.ResourceEmbedding_resource0156}
Symbol 357 Bitmap {generated.ResourceEmbedding_resource0259}
Symbol 358 Bitmap {generated.ResourceEmbedding_resource0155}
Symbol 359 Bitmap {generated.ResourceEmbedding_resource0258}
Symbol 360 Bitmap {generated.ResourceEmbedding_resource0154}
Symbol 361 Bitmap {generated.ResourceEmbedding_resource0153}
Symbol 362 Bitmap {generated.ResourceEmbedding_resource0152}
Symbol 363 Bitmap {generated.ResourceEmbedding_resource0151}
Symbol 364 Bitmap {generated.ResourceEmbedding_resource0125}
Symbol 365 Bitmap {generated.ResourceEmbedding_resource0124}
Symbol 366 Bitmap {generated.ResourceEmbedding_resource0123}
Symbol 367 Bitmap {generated.ResourceEmbedding_resource0122}
Symbol 368 Bitmap {generated.ResourceEmbedding_resource0257}
Symbol 369 Bitmap {generated.ResourceEmbedding_resource0256}
Symbol 370 Bitmap {generated.ResourceEmbedding_resource0255}
Symbol 371 Bitmap {generated.ResourceEmbedding_resource0159}
Symbol 372 Bitmap {generated.ResourceEmbedding_resource0126}
Symbol 373 Bitmap {generated.ResourceEmbedding_resource0150}
Symbol 374 Bitmap {generated.ResourceEmbedding_resource0145}
Symbol 375 Bitmap {generated.ResourceEmbedding_resource0120}
Symbol 376 Bitmap {generated.ResourceEmbedding_resource0144}
Symbol 377 Bitmap {generated.ResourceEmbedding_resource0147}
Symbol 378 Bitmap {generated.ResourceEmbedding_resource0146}
Symbol 379 Bitmap {generated.ResourceEmbedding_resource0121}
Symbol 380 Bitmap {generated.ResourceEmbedding_resource0141}
Symbol 381 Bitmap {generated.ResourceEmbedding_resource0140}
Symbol 382 Bitmap {generated.ResourceEmbedding_resource0143}
Symbol 383 Bitmap {generated.ResourceEmbedding_resource0142}
Symbol 384 Bitmap {generated.ResourceEmbedding_resource0149}
Symbol 385 Bitmap {generated.ResourceEmbedding_resource0148}
Symbol 386 Bitmap {generated.ResourceEmbedding_resource0281}
Symbol 387 Bitmap {generated.ResourceEmbedding_resource0282}
Symbol 388 Bitmap {generated.ResourceEmbedding_resource0280}
Symbol 389 Bitmap {generated.ResourceEmbedding_resource0132}
Symbol 390 Bitmap {generated.ResourceEmbedding_resource0131}
Symbol 391 Bitmap {generated.ResourceEmbedding_resource0130}
Symbol 392 Bitmap {generated.ResourceEmbedding_resource0136}
Symbol 393 Bitmap {generated.ResourceEmbedding_resource0135}
Symbol 394 Bitmap {generated.ResourceEmbedding_resource0134}
Symbol 395 Bitmap {generated.ResourceEmbedding_resource0133}
Symbol 396 Bitmap {generated.ResourceEmbedding_resource0277}
Symbol 397 Bitmap {generated.ResourceEmbedding_resource0139}
Symbol 398 Bitmap {generated.ResourceEmbedding_resource0138}
Symbol 399 Bitmap {generated.ResourceEmbedding_resource0137}
Symbol 400 Bitmap {generated.ResourceEmbedding_resource0276}
Symbol 401 Bitmap {generated.ResourceEmbedding_resource0275}
Symbol 402 Bitmap {generated.ResourceEmbedding_resource0274}
Symbol 403 Bitmap {generated.ResourceEmbedding_resource0273}
Symbol 404 Bitmap {generated.ResourceEmbedding_resource0272}
Symbol 405 Bitmap {generated.ResourceEmbedding_resource0270}
Symbol 406 Bitmap {generated.ResourceEmbedding_resource0271}
Symbol 407 Bitmap {generated.ResourceEmbedding_resource0269}
Symbol 408 Bitmap {generated.ResourceEmbedding_resource0127}
Symbol 409 Bitmap {generated.ResourceEmbedding_resource0266}
Symbol 410 Bitmap {generated.ResourceEmbedding_resource0265}
Symbol 411 Bitmap {generated.ResourceEmbedding_resource0129}
Symbol 412 Bitmap {generated.ResourceEmbedding_resource0268}
Symbol 413 Bitmap {generated.ResourceEmbedding_resource0128}
Symbol 414 Bitmap {generated.ResourceEmbedding_resource0267}
Symbol 415 Bitmap {generated.ResourceEmbedding_resource0262}
Symbol 416 Bitmap {generated.ResourceEmbedding_resource0261}
Symbol 417 Bitmap {generated.ResourceEmbedding_resource0264}
Symbol 418 Bitmap {generated.ResourceEmbedding_resource0263}
Symbol 419 Bitmap {generated.ResourceEmbedding_resource0399}
Symbol 420 Bitmap {generated.ResourceEmbedding_resource0398}
Symbol 421 Bitmap {generated.ResourceEmbedding_resource0397}
Symbol 422 Bitmap {generated.ResourceEmbedding_resource0396}
Symbol 423 Bitmap {generated.ResourceEmbedding_resource0395}
Symbol 424 Bitmap {generated.ResourceEmbedding_resource0394}
Symbol 425 Bitmap {generated.ResourceEmbedding_resource0393}
Symbol 426 Bitmap {generated.ResourceEmbedding_resource0495}
Symbol 427 Bitmap {generated.ResourceEmbedding_resource0494}
Symbol 428 Bitmap {generated.ResourceEmbedding_resource0493}
Symbol 429 Bitmap {generated.ResourceEmbedding_resource0492}
Symbol 430 Bitmap {generated.ResourceEmbedding_resource0499}
Symbol 431 Bitmap {generated.ResourceEmbedding_resource0498}
Symbol 432 Bitmap {generated.ResourceEmbedding_resource0497}
Symbol 433 Bitmap {generated.ResourceEmbedding_resource0496}
Symbol 434 Bitmap {generated.ResourceEmbedding_resource0296}
Symbol 435 Bitmap {generated.ResourceEmbedding_resource0297}
Symbol 436 Bitmap {generated.ResourceEmbedding_resource0294}
Symbol 437 Bitmap {generated.ResourceEmbedding_resource0295}
Symbol 438 Bitmap {generated.ResourceEmbedding_resource0298}
Symbol 439 Bitmap {generated.ResourceEmbedding_resource0299}
Symbol 440 Bitmap {generated.ResourceEmbedding_resource0199}
Symbol 441 Bitmap {generated.ResourceEmbedding_resource0197}
Symbol 442 Bitmap {generated.ResourceEmbedding_resource0198}
Symbol 443 Bitmap {generated.ResourceEmbedding_resource0195}
Symbol 444 Bitmap {generated.ResourceEmbedding_resource0196}
Symbol 445 Bitmap {generated.ResourceEmbedding_resource0387}
Symbol 446 Bitmap {generated.ResourceEmbedding_resource0192}
Symbol 447 Bitmap {generated.ResourceEmbedding_resource0386}
Symbol 448 Bitmap {generated.ResourceEmbedding_resource0191}
Symbol 449 Bitmap {generated.ResourceEmbedding_resource0489}
Symbol 450 Bitmap {generated.ResourceEmbedding_resource0194}
Symbol 451 Bitmap {generated.ResourceEmbedding_resource0389}
Symbol 452 Bitmap {generated.ResourceEmbedding_resource0388}
Symbol 453 Bitmap {generated.ResourceEmbedding_resource0193}
Symbol 454 Bitmap {generated.ResourceEmbedding_resource0383}
Symbol 455 Bitmap {generated.ResourceEmbedding_resource0382}
Symbol 456 Bitmap {generated.ResourceEmbedding_resource0385}
Symbol 457 Bitmap {generated.ResourceEmbedding_resource0190}
Symbol 458 Bitmap {generated.ResourceEmbedding_resource0384}
Symbol 459 Bitmap {generated.ResourceEmbedding_resource0482}
Symbol 460 Bitmap {generated.ResourceEmbedding_resource0481}
Symbol 461 Bitmap {generated.ResourceEmbedding_resource0484}
Symbol 462 Bitmap {generated.ResourceEmbedding_resource0483}
Symbol 463 Bitmap {generated.ResourceEmbedding_resource0291}
Symbol 464 Bitmap {generated.ResourceEmbedding_resource0486}
Symbol 465 Bitmap {generated.ResourceEmbedding_resource0290}
Symbol 466 Bitmap {generated.ResourceEmbedding_resource0485}
Symbol 467 Bitmap {generated.ResourceEmbedding_resource0293}
Symbol 468 Bitmap {generated.ResourceEmbedding_resource0488}
Symbol 469 Bitmap {generated.ResourceEmbedding_resource0292}
Symbol 470 Bitmap {generated.ResourceEmbedding_resource0487}
Symbol 471 Bitmap {generated.ResourceEmbedding_resource0283}
Symbol 472 Bitmap {generated.ResourceEmbedding_resource0284}
Symbol 473 Bitmap {generated.ResourceEmbedding_resource0285}
Symbol 474 Bitmap {generated.ResourceEmbedding_resource0286}
Symbol 475 Bitmap {generated.ResourceEmbedding_resource0287}
Symbol 476 Bitmap {generated.ResourceEmbedding_resource0288}
Symbol 477 Bitmap {generated.ResourceEmbedding_resource0289}
Symbol 478 Bitmap {generated.ResourceEmbedding_resource0490}
Symbol 479 Bitmap {generated.ResourceEmbedding_resource0491}
Symbol 480 Bitmap {generated.ResourceEmbedding_resource0188}
Symbol 481 Bitmap {generated.ResourceEmbedding_resource0390}
Symbol 482 Bitmap {generated.ResourceEmbedding_resource0189}
Symbol 483 Bitmap {generated.ResourceEmbedding_resource0391}
Symbol 484 Bitmap {generated.ResourceEmbedding_resource0392}
Symbol 485 Bitmap {generated.ResourceEmbedding_resource0184}
Symbol 486 Bitmap {generated.ResourceEmbedding_resource0185}
Symbol 487 Bitmap {generated.ResourceEmbedding_resource0186}
Symbol 488 Bitmap {generated.ResourceEmbedding_resource0187}
Symbol 489 Bitmap {generated.ResourceEmbedding_resource0374}
Symbol 490 Bitmap {generated.ResourceEmbedding_resource0373}
Symbol 491 Bitmap {generated.ResourceEmbedding_resource0372}
Symbol 492 Bitmap {generated.ResourceEmbedding_resource0371}
Symbol 493 Bitmap {generated.ResourceEmbedding_resource0183}
Symbol 494 Bitmap {generated.ResourceEmbedding_resource0378}
Symbol 495 Bitmap {generated.ResourceEmbedding_resource0182}
Symbol 496 Bitmap {generated.ResourceEmbedding_resource0377}
Symbol 497 Bitmap {generated.ResourceEmbedding_resource0181}
Symbol 498 Bitmap {generated.ResourceEmbedding_resource0376}
Symbol 499 Bitmap {generated.ResourceEmbedding_resource0180}
Symbol 500 Bitmap {generated.ResourceEmbedding_resource0375}
Symbol 501 Bitmap {generated.ResourceEmbedding_resource0379}
Symbol 502 Bitmap {generated.ResourceEmbedding_resource0175}
Symbol 503 Bitmap {generated.ResourceEmbedding_resource0176}
Symbol 504 Bitmap {generated.ResourceEmbedding_resource0173}
Symbol 505 Bitmap {generated.ResourceEmbedding_resource0174}
Symbol 506 Bitmap {generated.ResourceEmbedding_resource0179}
Symbol 507 Bitmap {generated.ResourceEmbedding_resource0380}
Symbol 508 Bitmap {generated.ResourceEmbedding_resource0381}
Symbol 509 Bitmap {generated.ResourceEmbedding_resource0177}
Symbol 510 Bitmap {generated.ResourceEmbedding_resource0178}
Symbol 511 Bitmap {generated.ResourceEmbedding_resource0361}
Symbol 512 Bitmap {generated.ResourceEmbedding_resource0360}
Symbol 513 Bitmap {generated.ResourceEmbedding_resource0363}
Symbol 514 Bitmap {generated.ResourceEmbedding_resource0362}
Symbol 515 Bitmap {generated.ResourceEmbedding_resource0365}
Symbol 516 Bitmap {generated.ResourceEmbedding_resource0170}
Symbol 517 Bitmap {generated.ResourceEmbedding_resource0364}
Symbol 518 Bitmap {generated.ResourceEmbedding_resource0172}
Symbol 519 Bitmap {generated.ResourceEmbedding_resource0367}
Symbol 520 Bitmap {generated.ResourceEmbedding_resource0366}
Symbol 521 Bitmap {generated.ResourceEmbedding_resource0171}
Symbol 522 Bitmap {generated.ResourceEmbedding_resource0369}
Symbol 523 Bitmap {generated.ResourceEmbedding_resource0368}
Symbol 524 Bitmap {generated.ResourceEmbedding_resource0162}
Symbol 525 Bitmap {generated.ResourceEmbedding_resource0163}
Symbol 526 Bitmap {generated.ResourceEmbedding_resource0164}
Symbol 527 Bitmap {generated.ResourceEmbedding_resource0165}
Symbol 528 Bitmap {generated.ResourceEmbedding_resource0166}
Symbol 529 Bitmap {generated.ResourceEmbedding_resource0167}
Symbol 530 Bitmap {generated.ResourceEmbedding_resource0168}
Symbol 531 Bitmap {generated.ResourceEmbedding_resource0169}
Symbol 532 Bitmap {generated.ResourceEmbedding_resource0370}
Symbol 533 Bitmap {generated.ResourceEmbedding_resource0089}
Symbol 534 Bitmap {generated.ResourceEmbedding_resource0088}
Symbol 535 Bitmap {generated.ResourceEmbedding_resource0087}
Symbol 536 Bitmap {generated.ResourceEmbedding_resource0086}
Symbol 537 Bitmap {generated.ResourceEmbedding_resource0085}
Symbol 538 Bitmap {generated.ResourceEmbedding_resource0094}
Symbol 539 Bitmap {generated.ResourceEmbedding_resource0095}
Symbol 540 Bitmap {generated.ResourceEmbedding_resource0092}
Symbol 541 Bitmap {generated.ResourceEmbedding_resource0093}
Symbol 542 Bitmap {generated.ResourceEmbedding_resource0090}
Symbol 543 Bitmap {generated.ResourceEmbedding_resource0091}
Symbol 544 Bitmap {generated.ResourceEmbedding_resource0097}
Symbol 545 Bitmap {generated.ResourceEmbedding_resource0096}
Symbol 546 Bitmap {generated.ResourceEmbedding_resource0099}
Symbol 547 Bitmap {generated.ResourceEmbedding_resource0098}
Symbol 548 Bitmap {generated.ResourceEmbedding_resource0501}
Symbol 549 Bitmap {generated.ResourceEmbedding_resource0500}
Symbol 550 Bitmap {generated.ResourceEmbedding_resource0503}
Symbol 551 Bitmap {generated.ResourceEmbedding_resource0502}
Symbol 552 Bitmap {generated.ResourceEmbedding_resource0505}
Symbol 553 Bitmap {generated.ResourceEmbedding_resource0504}
Symbol 554 Bitmap {generated.ResourceEmbedding_resource0507}
Symbol 555 Bitmap {generated.ResourceEmbedding_resource0506}
Symbol 556 Bitmap {generated.ResourceEmbedding_resource0508}
Symbol 557 Bitmap {generated.ResourceEmbedding_resource0509}
Symbol 558 Bitmap {generated.ResourceEmbedding_resource0513}
Symbol 559 Bitmap {generated.ResourceEmbedding_resource0512}
Symbol 560 Bitmap {generated.ResourceEmbedding_resource0511}
Symbol 561 Bitmap {generated.ResourceEmbedding_resource0510}
Symbol 562 Font {ScamperGame_FuturePix}

Special Tags

FileAttributes (69)Timeline Frame 1Access network only, Metadata present, AS3.
SWFMetaData (77)Timeline Frame 1539 bytes "<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#'><rdf:Description rdf:about='' xmlns ..."
ScriptLimits (65)Timeline Frame 1MaxRecursionDepth: 1000, ScriptTimeout: 60 seconds
ExportAssets (56)Timeline Frame 2Symbol 9 as "generated.ResourceEmbedding_resource0559"
ExportAssets (56)Timeline Frame 2Symbol 10 as "generated.ResourceEmbedding_resource0557"
ExportAssets (56)Timeline Frame 2Symbol 11 as "generated.ResourceEmbedding_resource0558"
ExportAssets (56)Timeline Frame 2Symbol 12 as "generated.ResourceEmbedding_resource0555"
ExportAssets (56)Timeline Frame 2Symbol 13 as "generated.ResourceEmbedding_resource0556"
ExportAssets (56)Timeline Frame 2Symbol 14 as "generated.ResourceEmbedding_resource0553"
ExportAssets (56)Timeline Frame 2Symbol 15 as "generated.ResourceEmbedding_resource0554"
ExportAssets (56)Timeline Frame 2Symbol 16 as "generated.ResourceEmbedding_resource0551"
ExportAssets (56)Timeline Frame 2Symbol 17 as "generated.ResourceEmbedding_resource0552"
ExportAssets (56)Timeline Frame 2Symbol 18 as "generated.ResourceEmbedding_resource0550"
ExportAssets (56)Timeline Frame 2Symbol 19 as "generated.ResourceEmbedding_resource0548"
ExportAssets (56)Timeline Frame 2Symbol 20 as "generated.ResourceEmbedding_resource0549"
ExportAssets (56)Timeline Frame 2Symbol 21 as "generated.ResourceEmbedding_resource0544"
ExportAssets (56)Timeline Frame 2Symbol 22 as "generated.ResourceEmbedding_resource0545"
ExportAssets (56)Timeline Frame 2Symbol 23 as "generated.ResourceEmbedding_resource0546"
ExportAssets (56)Timeline Frame 2Symbol 24 as "generated.ResourceEmbedding_resource0547"
ExportAssets (56)Timeline Frame 2Symbol 25 as "generated.ResourceEmbedding_resource0540"
ExportAssets (56)Timeline Frame 2Symbol 26 as "generated.ResourceEmbedding_resource0541"
ExportAssets (56)Timeline Frame 2Symbol 27 as "generated.ResourceEmbedding_resource0542"
ExportAssets (56)Timeline Frame 2Symbol 28 as "generated.ResourceEmbedding_resource0543"
ExportAssets (56)Timeline Frame 2Symbol 29 as "generated.ResourceEmbedding_resource0539"
ExportAssets (56)Timeline Frame 2Symbol 30 as "generated.ResourceEmbedding_resource0537"
ExportAssets (56)Timeline Frame 2Symbol 31 as "generated.ResourceEmbedding_resource0538"
ExportAssets (56)Timeline Frame 2Symbol 32 as "generated.ResourceEmbedding_resource0531"
ExportAssets (56)Timeline Frame 2Symbol 33 as "generated.ResourceEmbedding_resource0532"
ExportAssets (56)Timeline Frame 2Symbol 34 as "generated.ResourceEmbedding_resource0530"
ExportAssets (56)Timeline Frame 2Symbol 35 as "generated.ResourceEmbedding_resource0535"
ExportAssets (56)Timeline Frame 2Symbol 36 as "generated.ResourceEmbedding_resource0536"
ExportAssets (56)Timeline Frame 2Symbol 37 as "generated.ResourceEmbedding_resource0533"
ExportAssets (56)Timeline Frame 2Symbol 38 as "generated.ResourceEmbedding_resource0534"
ExportAssets (56)Timeline Frame 2Symbol 39 as "generated.ResourceEmbedding_resource0526"
ExportAssets (56)Timeline Frame 2Symbol 40 as "generated.ResourceEmbedding_resource0527"
ExportAssets (56)Timeline Frame 2Symbol 41 as "generated.ResourceEmbedding_resource0528"
ExportAssets (56)Timeline Frame 2Symbol 42 as "generated.ResourceEmbedding_resource0529"
ExportAssets (56)Timeline Frame 2Symbol 43 as "generated.ResourceEmbedding_resource0520"
ExportAssets (56)Timeline Frame 2Symbol 44 as "generated.ResourceEmbedding_resource0521"
ExportAssets (56)Timeline Frame 2Symbol 45 as "generated.ResourceEmbedding_resource0522"
ExportAssets (56)Timeline Frame 2Symbol 46 as "generated.ResourceEmbedding_resource0523"
ExportAssets (56)Timeline Frame 2Symbol 47 as "generated.ResourceEmbedding_resource0524"
ExportAssets (56)Timeline Frame 2Symbol 48 as "generated.ResourceEmbedding_resource0525"
ExportAssets (56)Timeline Frame 2Symbol 49 as "generated.ResourceEmbedding_resource0576"
ExportAssets (56)Timeline Frame 2Symbol 50 as "generated.ResourceEmbedding_resource0575"
ExportAssets (56)Timeline Frame 2Symbol 51 as "generated.ResourceEmbedding_resource0574"
ExportAssets (56)Timeline Frame 2Symbol 52 as "generated.ResourceEmbedding_resource0573"
ExportAssets (56)Timeline Frame 2Symbol 53 as "generated.ResourceEmbedding_resource0578"
ExportAssets (56)Timeline Frame 2Symbol 54 as "generated.ResourceEmbedding_resource0577"
ExportAssets (56)Timeline Frame 2Symbol 55 as "generated.ResourceEmbedding_resource0571"
ExportAssets (56)Timeline Frame 2Symbol 56 as "generated.ResourceEmbedding_resource0572"
ExportAssets (56)Timeline Frame 2Symbol 57 as "generated.ResourceEmbedding_resource0570"
ExportAssets (56)Timeline Frame 2Symbol 58 as "generated.ResourceEmbedding_resource0563"
ExportAssets (56)Timeline Frame 2Symbol 59 as "generated.ResourceEmbedding_resource0562"
ExportAssets (56)Timeline Frame 2Symbol 60 as "generated.ResourceEmbedding_resource0565"
ExportAssets (56)Timeline Frame 2Symbol 61 as "generated.ResourceEmbedding_resource0564"
ExportAssets (56)Timeline Frame 2Symbol 62 as "generated.ResourceEmbedding_resource0567"
ExportAssets (56)Timeline Frame 2Symbol 63 as "generated.ResourceEmbedding_resource0566"
ExportAssets (56)Timeline Frame 2Symbol 64 as "generated.ResourceEmbedding_resource0569"
ExportAssets (56)Timeline Frame 2Symbol 65 as "generated.ResourceEmbedding_resource0568"
ExportAssets (56)Timeline Frame 2Symbol 66 as "generated.ResourceEmbedding_resource0560"
ExportAssets (56)Timeline Frame 2Symbol 67 as "generated.ResourceEmbedding_resource0561"
ExportAssets (56)Timeline Frame 2Symbol 68 as "generated.ResourceEmbedding_resource0514"
ExportAssets (56)Timeline Frame 2Symbol 69 as "generated.ResourceEmbedding_resource0519"
ExportAssets (56)Timeline Frame 2Symbol 70 as "generated.ResourceEmbedding_resource0516"
ExportAssets (56)Timeline Frame 2Symbol 71 as "generated.ResourceEmbedding_resource0515"
ExportAssets (56)Timeline Frame 2Symbol 72 as "generated.ResourceEmbedding_resource0518"
ExportAssets (56)Timeline Frame 2Symbol 73 as "generated.ResourceEmbedding_resource0517"
SerialNumber (41)Timeline Frame 126 bytes "..........7$.......z<W%..."

Labels

"Preloader"Frame 1
"Game"Frame 2




http://swfchan.com/19/92449/info.shtml
Created: 27/3 -2019 10:33:48 Last modified: 27/3 -2019 10:33:48 Server time: 27/04 -2024 13:55:46