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

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

Pipol-Smasher.swf

This is the info page for
Flash #116053

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


Text
FAIL

Level:

<p align="left"><font face="Kingthings Organica" size="22" color="#000000" letterSpacing="0.000000" kerning="1">99</font></p>

Scores:

<p align="right"><font face="Kingthings Organica" size="22" color="#000000" letterSpacing="0.000000" kerning="1">99</font></p>

<p align="left"><font face="Kingthings Organica" size="22" color="#000000" letterSpacing="0.000000" kerning="1">99</font></p>

prepare

Lvl select

restart (R)

SUBMIT YOUR SCORE

YOUR NAME

Congratulations!

Error, score not send (no connection?)

v.04

PLAY

PLAY

PLAY

<p align="center"><font face="BadaBoom BB" size="16" color="#000000" letterSpacing="0.000000" kerning="1">100%</font></p>

The time of cars has come. all humans will be eliminated!

pipol smasher

1

Click on Car...

...Kill all humans and...

...stop car by second click!

2

cause more damage for higher scores

Corpses here

Heads here

Vogd, 2010

Vogd, 2010

FULL THROTTLE!

programmer:

dmitriy zaletov

artist:

music:

konstantin jenchur

Dmitry Petyakin (El-Metallico)

reset levels

SMASHHHHHH!!

Lv-1

Lv-2

Lv-3

Lv-4

Lv-5

Lv-6

Lv-7

Lv-8

Lv-9

Lv-10

Lv-11

Lv-12

Lv-13

Lv-14

Lv-15

Lv-16

Lv-17

Lv-18

Lv-19

Lv-20

Lv-21

Lv-22

Lv-23

Lv-24

Lv-25

Lv-26

Lv-27

Lv-28

Lv-29

Lv-30

Classic levels:

Fire Levels:

play

more games

add game to your site

back

score:

<p align="left"><font face="BadaBoom BB" size="18" color="#ffffcc" letterSpacing="0.000000" kerning="1">0000</font></p>

werebox

vehicles

credits

ifon

next

Clicks:

<p align="left"><font face="Impact" size="22" color="#000000" letterSpacing="0.000000" kerning="1">99</font></p>

walkthrough

game is locked

<p align="left"><font face="Impact" size="22" color="#000000" letterSpacing="0.000000" kerning="1">99</font></p>

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):Boolean{ 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.x + ((_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){ return (false); }; 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 (false); }; 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 (true); }; return (false); } 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 { import Box2D.Common.Math.*; public class b2FilterData { public var maskBits:uint;// = 0xFFFF public var groupIndex:int;// = 0 public var categoryBits:uint;// = 1 public var b_rigid:int;// = 0 public function Copy():b2FilterData{ var _local1:b2FilterData = new b2FilterData(); _local1.categoryBits = categoryBits; _local1.maskBits = maskBits; _local1.groupIndex = groupIndex; _local1.b_rigid = b_rigid; 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):Boolean{ 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 (false); }; _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 (true); }; return (false); } 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.*; import Box2D.Common.*; 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_unknownShape:int = -1; public static const e_circleShape:int = 0; public static const e_shapeTypeCount:int = 2; private static var s_resetAABB:b2AABB = new b2AABB(); private static var s_syncAABB:b2AABB = new b2AABB(); private static var s_proxyAABB:b2AABB = new b2AABB(); public function b2Shape(_arg1:b2ShapeDef){ m_userData = _arg1.userData; m_friction = _arg1.friction; m_restitution = _arg1.restitution; m_density = _arg1.density; m_body = null; m_sweepRadius = 0; m_next = null; 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):Boolean{ return (false); } 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 { import Box2D.Common.Math.*; import Box2D.Common.*; 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_quantizationFactor:b2Vec2; public var m_worldAABB:b2AABB; public var m_freeProxy:uint; 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 = b2Settings.USHRT_MAX; public static const b2_invalid:uint = b2Settings.USHRT_MAX; public static var s_validate:Boolean = false; public function b2BroadPhase(_arg1:b2AABB, _arg2:b2PairCallback){ var _local3:int; var _local5:Number; var _local6:b2Proxy; var _local7:int; m_pairManager = new b2PairManager(); m_proxyPool = new Array(b2Settings.b2_maxPairs); m_bounds = new Array((2 * b2Settings.b2_maxProxies)); 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; _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); _local5 = (_arg1.upperBound.y - _arg1.lowerBound.y); m_quantizationFactor.x = (b2Settings.USHRT_MAX / _local4); m_quantizationFactor.y = (b2Settings.USHRT_MAX / _local5); _local3 = 0; while (_local3 < (b2Settings.b2_maxProxies - 1)) { _local6 = new b2Proxy(); m_proxyPool[_local3] = _local6; _local6.SetNext((_local3 + 1)); _local6.timeStamp = 0; _local6.overlapCount = b2_invalid; _local6.userData = null; _local3++; }; _local6 = new b2Proxy(); m_proxyPool[int((b2Settings.b2_maxProxies - 1))] = _local6; _local6.SetNext(b2Pair.b2_nullProxy); _local6.timeStamp = 0; _local6.overlapCount = b2_invalid; _local6.userData = null; 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 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 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.Common.Math.*; import Box2D.Collision.Shapes.*; import Box2D.Common.*; public class b2Collision { public static const b2_nullFeature:uint = 0xFF; private static var b2CollidePolyTempVec:b2Vec2 = new b2Vec2(); public static function EdgeSeparation(_arg1:b2PolygonShape, _arg2:b2XForm, _arg3:int, _arg4:b2PolygonShape, _arg5:b2XForm):Number{ var _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.Common.Math.*; import Box2D.Collision.Shapes.*; 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.Common.Math.*; import Box2D.Collision.Shapes.*; import Box2D.Common.*; public class b2Distance { private static var s_p2s:Array = [new b2Vec2(), new b2Vec2(), new b2Vec2()]; private static var s_p1s:Array = [new b2Vec2(), new b2Vec2(), new b2Vec2()]; private static var s_points:Array = [new b2Vec2(), new b2Vec2(), new b2Vec2()]; private static var gPoint:b2Point = new b2Point(); public static var g_GJK_Iterations:int = 0; public static function InPoints(_arg1:b2Vec2, _arg2:Array, _arg3:int):Boolean{ var _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); } } }//package Box2D.Collision
Section 27
//b2TimeOfImpact (Box2D.Collision.b2TimeOfImpact) package Box2D.Collision { import Box2D.Common.Math.*; import Box2D.Collision.Shapes.*; import Box2D.Common.*; public class b2TimeOfImpact { public static var s_xf1:b2XForm = new b2XForm(); public static var s_xf2:b2XForm = new b2XForm(); public static var s_p1:b2Vec2 = new b2Vec2(); public static var s_p2:b2Vec2 = new b2Vec2(); public static function TimeOfImpact(_arg1:b2Shape, _arg2:b2Sweep, _arg3:b2Shape, _arg4:b2Sweep):Number{ var _local5:Number; var _local6:Number; var _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 { import Box2D.Common.*; 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 { import Box2D.Common.*; 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 { import Box2D.Common.*; 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 { import Box2D.Common.*; 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.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Collision.Shapes.*; 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.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Collision.Shapes.*; import Box2D.Common.*; public class b2Contact { public var m_shape1:b2Shape; public var m_shape2:b2Shape; public var m_prev:b2Contact; public var m_toi:Number; public var m_next:b2Contact; public var m_friction:Number; public var m_manifoldCount:int; public var m_node1:b2ContactEdge; public var m_node2:b2ContactEdge; public var m_restitution:Number; public var m_flags:uint; public static var e_toiFlag:uint = 8; public static var e_nonSolidFlag:uint = 1; public static var e_slowFlag:uint = 2; public static var e_islandFlag:uint = 4; public static var s_registers:Array; public static var s_initialized:Boolean = false; public function b2Contact(_arg1:b2Shape=null, _arg2:b2Shape=null){ m_node1 = new b2ContactEdge(); m_node2 = new b2ContactEdge(); super(); m_flags = 0; if (((!(_arg1)) || (!(_arg2)))){ m_shape1 = null; m_shape2 = null; return; }; if (((_arg1.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.*; import Box2D.Common.Math.*; import Box2D.Collision.Shapes.*; 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.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Collision.Shapes.*; 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.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Collision.Shapes.*; 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 { import Box2D.Common.Math.*; 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.*; import Box2D.Common.*; 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.Common.Math.*; 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 _local11: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); _local11 = (_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 _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); var _local15:Number = (_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.Common.Math.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; import Box2D.Common.*; import Box2D.Dynamics.Contacts.*; public class b2Body { public var m_next:b2Body; public var m_contactList:b2ContactEdge; public var m_angularVelocity:Number; public var m_xf:b2XForm; public var m_shapeList:b2Shape; public var m_force:b2Vec2; public var m_sweep:b2Sweep; public var m_mass:Number; public var m_torque:Number; public var m_userData; public var m_I:Number; public var m_flags:uint; public var m_world:b2World; public var m_prev:b2Body; public var m_invMass:Number; public var m_linearDamping:Number; public var m_type:int; public var m_angularDamping:Number; public var m_invI:Number; public var m_shapeCount:int; public var m_gravity_vector; public var m_sleepTime:Number; public var m_jointList:b2JointEdge; public var m_linearVelocity:b2Vec2; public var b_collisions;// = true 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_gravity_vector = new b2Vec2(0, 1); 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 ApplyTorque(_arg1:Number):void{ if (IsSleeping()){ WakeUp(); }; m_torque = (m_torque + _arg1); } public function GetLocalCenter():b2Vec2{ return (m_sweep.localCenter); } public function GetLinearVelocity():b2Vec2{ return (m_linearVelocity); } public function IsFrozen():Boolean{ return (((m_flags & e_frozenFlag) == e_frozenFlag)); } public function IsDynamic():Boolean{ return ((m_type == e_dynamicType)); } 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 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 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 GetNext():b2Body{ return (m_next); } public function GetMass():Number{ return (m_mass); } 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 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 GetShapeList():b2Shape{ return (m_shapeList); } public function Advance(_arg1:Number):void{ m_sweep.Advance(_arg1); m_sweep.c.SetV(m_sweep.c0); m_sweep.a = m_sweep.a0; SynchronizeTransform(); } public function 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); _local2.m_next = m_shapeList; m_shapeList = _local2; m_shapeCount++; _local2.m_body = this; _local2.CreateProxy(m_world.m_broadPhase, m_xf); _local2.UpdateSweepRadius(m_sweep.localCenter); return (_local2); } public function IsConnected(_arg1:b2Body):Boolean{ var _local2:b2JointEdge = 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{ if (m_world.m_lock == true){ return; }; _arg1.DestroyProxy(m_world.m_broadPhase); var _local2:b2Shape = m_shapeList; var _local3:b2Shape; var _local4:Boolean; while (_local2 != null) { if (_local2 == _arg1){ if (_local3){ _local3.m_next = _arg1.m_next; } else { m_shapeList = _arg1.m_next; }; _local4 = true; break; }; _local3 = _local2; _local2 = _local2.m_next; }; _arg1.m_body = null; _arg1.m_next = null; m_shapeCount--; b2Shape.Destroy(_arg1, m_world.m_blockAllocator); } public function GetUserData(){ return (m_userData); } public function IsBullet():Boolean{ return (((m_flags & e_bulletFlag) == e_bulletFlag)); } public function GetWorldCenter():b2Vec2{ return (m_sweep.c); } public function 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.*; import Box2D.Common.Math.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; import Box2D.Dynamics.Contacts.*; 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.*; import Box2D.Common.Math.*; import Box2D.Collision.Shapes.*; import Box2D.Common.*; import Box2D.Dynamics.Contacts.*; 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.b_rigid == 1)) && ((_local4.b_rigid == 2)))) || ((((_local4.b_rigid == 1)) && ((_local3.b_rigid == 2)))))){ return (false); }; 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); } } }//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.*; import Box2D.Common.Math.*; import Box2D.Collision.Shapes.*; 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 _local3:b2Shape = (_arg1 as b2Shape); var _local4:b2Shape = (_arg2 as b2Shape); var _local5:b2Body = _local3.m_body; var _local6:b2Body = _local4.m_body; if ((((_local5.b_collisions == false)) || ((_local6.b_collisions == false)))){ return (m_nullContact); }; 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.*; import Box2D.Common.Math.*; import Box2D.Collision.Shapes.*; import Box2D.Common.*; import Box2D.Dynamics.Contacts.*; import flash.display.*; 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.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; 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 _local8:*; var _local10:int; var _local11:Boolean; var _local12:Boolean; var _local13:Boolean; var _local14:Number; var _local15:Number; var _local16:Number; _local8 = new b2Vec2(); _local5 = 0; while (_local5 < m_bodyCount) { _local6 = m_bodies[_local5]; if (_local6.IsStatic()){ } else { _local8.x = (_arg2.x * _local6.m_gravity_vector.x); _local8.y = (_arg2.y * _local6.m_gravity_vector.y); _local6.m_linearVelocity.x = (_local6.m_linearVelocity.x + (_arg1.dt * (_local8.x + (_local6.m_invMass * _local6.m_force.x)))); _local6.m_linearVelocity.y = (_local6.m_linearVelocity.y + (_arg1.dt * (_local8.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 _local9:b2ContactSolver = new b2ContactSolver(_arg1, m_contacts, m_contactCount, m_allocator); _local9.InitVelocityConstraints(_arg1); _local5 = 0; while (_local5 < m_jointCount) { _local7 = m_joints[_local5]; _local7.InitVelocityConstraints(_arg1); _local5++; }; _local5 = 0; while (_local5 < _arg1.maxIterations) { _local9.SolveVelocityConstraints(); _local10 = 0; while (_local10 < m_jointCount) { _local7 = m_joints[_local10]; _local7.SolveVelocityConstraints(_arg1); _local10++; }; _local5++; }; _local9.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) { _local11 = _local9.SolvePositionConstraints(b2Settings.b2_contactBaumgarte); _local12 = true; _local5 = 0; while (_local5 < m_jointCount) { _local7 = m_joints[_local5]; _local13 = _local7.SolvePositionConstraints(); _local12 = ((_local12) && (_local13)); _local5++; }; if (((_local11) && (_local12))){ break; }; m_positionIterationCount++; }; }; Report(_local9.m_constraints); if (_arg4){ _local14 = Number.MAX_VALUE; _local15 = (b2Settings.b2_linearSleepTolerance * b2Settings.b2_linearSleepTolerance); _local16 = (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; _local14 = 0; }; if (((((((_local6.m_flags & b2Body.e_allowSleepFlag) == 0)) || (((_local6.m_angularVelocity * _local6.m_angularVelocity) > _local16)))) || ((b2Math.b2Dot(_local6.m_linearVelocity, _local6.m_linearVelocity) > _local15)))){ _local6.m_sleepTime = 0; _local14 = 0; } else { _local6.m_sleepTime = (_local6.m_sleepTime + _arg1.dt); _local14 = b2Math.b2Min(_local14, _local6.m_sleepTime); }; }; _local5++; }; if (_local14 >= 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.*; import Box2D.Common.Math.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; 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_allowSleep:Boolean; public var m_broadPhase:b2BroadPhase; public var m_destructionListener:b2DestructionListener; public var m_jointCount:int; public var m_bodyCount:int; public var m_lock:Boolean; public var m_positionIterationCount:int; public var m_groundBody:b2Body; public var m_contactCount:int; public var m_debugDraw:b2DebugDraw; public var m_contactFilter:b2ContactFilter; public var m_bodyList:b2Body; 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_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 SetContactFilter(_arg1:b2ContactFilter):void{ m_contactFilter = _arg1; } public function GetGroundBody():b2Body{ return (m_groundBody); } 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 GetContactCount():int{ return (m_contactCount); } 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 SetGravity(_arg1:b2Vec2):void{ m_gravity = _arg1; } public function SolveTOI(_arg1:b2TimeStep):void{ var _local2:b2Body; var _local3:b2Shape; var _local4:b2Shape; var _local5:b2Body; var _local6:b2Body; var _local7:b2ContactEdge; var _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 GetBodyList():b2Body{ return (m_bodyList); } public function GetPairCount():int{ return (m_broadPhase.m_pairManager.m_pairCount); } public function Validate():void{ m_broadPhase.Validate(); } 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; if (_arg1 == null){ return; }; 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 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 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
//bblogo_4 (bubblebox_submit_score_fla.bblogo_4) package bubblebox_submit_score_fla { import flash.display.*; import flash.events.*; import flash.media.*; import flash.net.*; import flash.geom.*; import flash.system.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; import flash.text.*; import flash.ui.*; import flash.utils.*; import flash.external.*; public dynamic class bblogo_4 extends MovieClip { public function bblogo_4(){ addFrameScript(0, frame1); } function frame1(){ this.addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent){ navigateToURL(new URLRequest("http://www.bubblebox.com/"), "_blank"); }); } } }//package bubblebox_submit_score_fla
Section 76
//bubblebox_saving_5 (bubblebox_submit_score_fla.bubblebox_saving_5) package bubblebox_submit_score_fla { import flash.display.*; import flash.events.*; import flash.media.*; import flash.net.*; import flash.geom.*; import flash.system.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; import flash.text.*; import flash.ui.*; import flash.utils.*; import flash.external.*; public dynamic class bubblebox_saving_5 extends MovieClip { public function bubblebox_saving_5(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package bubblebox_submit_score_fla
Section 77
//bubblebox_send_btn_2 (bubblebox_submit_score_fla.bubblebox_send_btn_2) package bubblebox_submit_score_fla { import flash.display.*; import flash.events.*; import flash.media.*; import flash.net.*; import flash.geom.*; import flash.system.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; import flash.text.*; import flash.ui.*; import flash.utils.*; import flash.external.*; public dynamic class bubblebox_send_btn_2 extends MovieClip { public function bubblebox_send_btn_2(){ addFrameScript(0, frame1); } function frame1(){ stop(); this.mouseChildren = false; this.useHandCursor = true; this.buttonMode = true; this.addEventListener(MouseEvent.MOUSE_OVER, function (_arg1:MouseEvent){ _arg1.currentTarget.gotoAndStop(2); }); this.addEventListener(MouseEvent.MOUSE_OUT, function (_arg1:MouseEvent){ _arg1.currentTarget.gotoAndStop(1); }); } } }//package bubblebox_submit_score_fla
Section 78
//bubblebox_try_again_10 (bubblebox_submit_score_fla.bubblebox_try_again_10) package bubblebox_submit_score_fla { import flash.display.*; import flash.events.*; import flash.media.*; import flash.net.*; import flash.geom.*; import flash.system.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; import flash.text.*; import flash.ui.*; import flash.utils.*; import flash.external.*; public dynamic class bubblebox_try_again_10 extends MovieClip { public function bubblebox_try_again_10(){ addFrameScript(0, frame1); } function frame1(){ stop(); this.mouseChildren = false; this.useHandCursor = true; this.buttonMode = true; this.addEventListener(MouseEvent.MOUSE_OVER, function (_arg1:MouseEvent){ _arg1.currentTarget.gotoAndStop(2); }); this.addEventListener(MouseEvent.MOUSE_OUT, function (_arg1:MouseEvent){ _arg1.currentTarget.gotoAndStop(1); }); } } }//package bubblebox_submit_score_fla
Section 79
//bubblebox_view_scores_8 (bubblebox_submit_score_fla.bubblebox_view_scores_8) package bubblebox_submit_score_fla { import flash.display.*; import flash.events.*; import flash.media.*; import flash.net.*; import flash.geom.*; import flash.system.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; import flash.text.*; import flash.ui.*; import flash.utils.*; import flash.external.*; public dynamic class bubblebox_view_scores_8 extends MovieClip { public function bubblebox_view_scores_8(){ addFrameScript(0, frame1); } function frame1(){ stop(); this.mouseChildren = false; this.useHandCursor = true; this.buttonMode = true; this.addEventListener(MouseEvent.MOUSE_OVER, function (_arg1:MouseEvent){ _arg1.currentTarget.gotoAndStop(2); }); this.addEventListener(MouseEvent.MOUSE_OUT, function (_arg1:MouseEvent){ _arg1.currentTarget.gotoAndStop(1); }); } } }//package bubblebox_submit_score_fla
Section 80
//AdLoader (CPMStar.AdLoader) package CPMStar { import flash.display.*; import flash.events.*; import flash.net.*; import flash.system.*; public class AdLoader extends Sprite { private var cpmstarLoader:Loader; private var contentspotid:String; public function AdLoader(_arg1:String){ this.contentspotid = _arg1; addEventListener(Event.ADDED, addedHandler); } private function dispatchHandler(_arg1:Event):void{ dispatchEvent(_arg1); } private function addedHandler(_arg1:Event):void{ removeEventListener(Event.ADDED, addedHandler); Security.allowDomain("server.cpmstar.com"); var _local2 = "http://server.cpmstar.com/adviewas3.swf"; var _local3:DisplayObjectContainer = parent; cpmstarLoader = new Loader(); cpmstarLoader.contentLoaderInfo.addEventListener(Event.INIT, dispatchHandler); cpmstarLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, dispatchHandler); cpmstarLoader.load(new URLRequest(((_local2 + "?contentspotid=") + contentspotid))); addChild(cpmstarLoader); } } }//package CPMStar
Section 81
//BonusStar (gui.BonusStar) package gui { import flash.display.*; import flash.events.*; public dynamic class BonusStar extends MovieClip { var scores;// = 0 var dspeed;// = 0.6 var speed;// = 1 var m_px;// = 279 var m_py;// = 18 public function BonusStar(_arg1, _arg2, _arg3){ addFrameScript(24, frame25); scores = _arg3; x = _arg1; y = _arg2; addEventListener(Event.ENTER_FRAME, Update); main.m_stage.addChild(this); mouseEnabled = false; main.m_scores = (main.m_scores + scores); if (main.m_scores > main.mySO.data.Saves.m_scores[(main.m_stage_number - 1)]){ main.mySO.data.Saves.m_scores[(main.m_stage_number - 1)] = main.m_scores; }; if (main.m_scores >= main.m_scores_data.m_data[main.m_stage_number]){ if (main.LevelNumberClip){ if (main.LevelNumberClip.bg.visible == false){ main.m_main.GoldSound.play(); }; main.LevelNumberClip.bg.visible = true; }; }; } public function Update(_arg1){ var _local3:*; var _local2:* = (m_px - x); _local3 = (m_py - y); var _local4:* = Math.sqrt(((_local2 * _local2) + (_local3 * _local3))); if (_local4 < speed){ Delete(); return; }; _local2 = (_local2 / _local4); _local3 = (_local3 / _local4); x = (x + (_local2 * speed)); y = (y + (_local3 * speed)); speed = (speed + dspeed); } public function Delete(){ removeEventListener(Event.ENTER_FRAME, Update); parent.removeChild(this); } function frame25(){ stop(); } } }//package gui
Section 82
//BubbleButton (gui.BubbleButton) package gui { import flash.display.*; import flash.events.*; import flash.net.*; public dynamic class BubbleButton extends SimpleButton { public function BubbleButton(){ addEventListener(MouseEvent.MOUSE_DOWN, onPress); } private function onPress(_arg1){ if (main.b_mochi){ MochiBot.track(main.m_main, "e9daa994"); }; var _local2:URLRequest = new URLRequest("http://www.bubblebox.com/clickreg.php?type=gamestats&id=1835&subid=somesubid"); navigateToURL(_local2, "_blank"); } } }//package gui
Section 83
//FailLogo (gui.FailLogo) package gui { import flash.display.*; public dynamic class FailLogo extends MovieClip { } }//package gui
Section 84
//GameMenu (gui.GameMenu) package gui { import flash.display.*; import flash.events.*; public dynamic class GameMenu extends MovieClip { var m_py;// = 456 public function GameMenu(){ y = 506; addEventListener(Event.ENTER_FRAME, Update); main.m_main.addChild(this); this.bubbleBox.visible = false; } public function Hide(){ } public function Update(_arg1){ if (Math.abs((y - m_py)) > 1){ y = (y + ((m_py - y) * 0.2)); }; if (main.b_finish){ Hide(); } else { Show(); }; } public function Delete(){ removeEventListener(Event.ENTER_FRAME, Update); parent.removeChild(this); } public function Show(){ m_py = 456; } } }//package gui
Section 85
//GMButtonMenu (gui.GMButtonMenu) package gui { import flash.display.*; import flash.events.*; public dynamic class GMButtonMenu extends SimpleButton { public function GMButtonMenu(){ addEventListener(MouseEvent.MOUSE_DOWN, onPress); } private function onPress(_arg1){ removeEventListener(MouseEvent.MOUSE_DOWN, onPress); main.FreeAll(); main.m_main.GameMenu.Delete(); main.m_main.GameMenu = null; main.m_main.WinMenu.Delete(); main.m_main.WinMenu = null; main.m_main.SoundButton.Delete(); main.m_main.SoundButton = null; main.m_WalkClip.Delete(); main.m_WalkClip = null; main.m_main.gotoAndStop("Menu"); } } }//package gui
Section 86
//GMButtonRestart (gui.GMButtonRestart) package gui { import flash.display.*; import flash.events.*; public dynamic class GMButtonRestart extends SimpleButton { public function GMButtonRestart(){ addEventListener(MouseEvent.MOUSE_DOWN, onPress); } private function onPress(_arg1){ main.RestartLevel(); } } }//package gui
Section 87
//GMButtonWalk (gui.GMButtonWalk) package gui { import flash.display.*; import flash.events.*; import flash.net.*; public dynamic class GMButtonWalk extends SimpleButton { public function GMButtonWalk(){ addEventListener(MouseEvent.MOUSE_DOWN, onPress); } private function onPress(_arg1){ if (main.b_mochi){ MochiBot.track(main.m_main, "cb55ed4c"); }; var _local2:URLRequest = new URLRequest("http://www.bubblebox.com/clickreg.php?type=gamestats&id=1835&subid=walkthrough&action=walkthrough_1835"); navigateToURL(_local2, "_blank"); } } }//package gui
Section 88
//LaraButton (gui.LaraButton) package gui { import flash.display.*; import flash.events.*; import flash.net.*; public dynamic class LaraButton extends SimpleButton { public function LaraButton(){ addEventListener(MouseEvent.MOUSE_DOWN, onPress); } private function onPress(_arg1){ if (main.b_mochi){ MochiBot.track(main.m_main, "fbc2bd3f"); }; var _local2:URLRequest = new URLRequest("http://itunes.apple.com/us/app/laura-jones-gates-good-evil/id369323417?mt=8"); navigateToURL(_local2, "_blank"); } } }//package gui
Section 89
//LevelNumber (gui.LevelNumber) package gui { import flash.display.*; import flash.events.*; public dynamic class LevelNumber extends MovieClip { public function LevelNumber(){ x = 10; main.m_main.addChild(this); this.bg.visible = false; var _local1:String = (main.m_stage_name.charAt((main.m_stage_name.length - 2)) + main.m_stage_name.charAt((main.m_stage_name.length - 1))); this.level_number_text.text = _local1; main.m_stage_number = int(_local1); } } }//package gui
Section 90
//LevelsButtonsClip (gui.LevelsButtonsClip) package gui { import flash.display.*; import flash.events.*; import flash.net.*; public dynamic class LevelsButtonsClip extends MovieClip { public function LevelsButtonsClip(){ var _local2:*; super(); x = main.m_level_menu_px; y = main.m_level_menu_py; addEventListener(Event.ENTER_FRAME, Update); this.PlayButton.addEventListener(MouseEvent.MOUSE_DOWN, pressPlayButton); this.BackButton.addEventListener(MouseEvent.MOUSE_DOWN, pressBackButton); this.CreditsButton.addEventListener(MouseEvent.MOUSE_DOWN, pressCreditsButton); this.BackCreditsButton.addEventListener(MouseEvent.MOUSE_DOWN, pressBackCreditsButton); this.MoreGamesButton.addEventListener(MouseEvent.MOUSE_DOWN, pressMoreGamesButton); this.AddGameButton.addEventListener(MouseEvent.MOUSE_DOWN, pressAddGameButton); this.ResetLevelsButton.addEventListener(MouseEvent.MOUSE_DOWN, pressResetLevelsButton); var _local1:* = 0; _local2 = 0; while (_local2 < 30) { _local1 = (_local1 + main.mySO.data.Saves.m_scores[_local2]); _local2++; }; trace(_local1); this.Scores.TText.text = _local1; } public function pressPlayButton(_arg1){ main.m_level_menu_px = 0; main.m_level_menu_py = 0; } public function pressAddGameButton(_arg1){ if (main.b_mochi){ MochiBot.track(main.m_main, "e9daa994"); }; var _local2:URLRequest = new URLRequest("http://www.bubblebox.com/clickreg.php?type=gamestats&id=1835&subid=addtosite&action=addtosite"); navigateToURL(_local2, "_blank"); } public function pressBackCreditsButton(_arg1){ main.m_level_menu_px = 640; main.m_level_menu_py = 0; } public function Update(_arg1){ var _local2:* = main.m_level_menu_px; var _local3:* = main.m_level_menu_py; if (Math.abs((y - _local3)) > 1){ y = (y + ((_local3 - y) * 0.2)); }; if (Math.abs((x - _local2)) > 1){ x = (x + ((_local2 - x) * 0.2)); }; } public function pressCreditsButton(_arg1){ main.m_level_menu_px = 640; main.m_level_menu_py = -480; } public function pressMoreGamesButton(_arg1){ if (main.b_mochi){ MochiBot.track(main.m_main, "e9daa994"); }; var _local2:URLRequest = new URLRequest("http://www.bubblebox.com/clickreg.php?type=gamestats&id=1835&subid=somesubid"); navigateToURL(_local2, "_blank"); } public function pressBackButton(_arg1){ main.m_level_menu_px = 640; main.m_level_menu_py = 0; } public function pressResetLevelsButton(_arg1){ main.ResetLevels(); } } }//package gui
Section 91
//LevelScores (gui.LevelScores) package gui { import flash.events.*; public dynamic class LevelScores { public var m_data; public function LevelScores(){ m_data = new Array(); Init(); } public function Init(){ m_data.push(0); m_data.push(210); m_data.push(900); m_data.push(380); m_data.push(100); m_data.push(110); m_data.push(650); m_data.push(500); m_data.push(400); m_data.push(400); m_data.push(720); m_data.push(950); m_data.push(200); m_data.push(10); m_data.push(650); m_data.push(100); m_data.push(600); m_data.push(720); m_data.push(950); m_data.push(1550); m_data.push(1340); m_data.push(420); m_data.push(900); m_data.push(580); m_data.push(900); m_data.push(1650); m_data.push(700); m_data.push(1200); m_data.push(1700); m_data.push(1200); m_data.push(400); m_data.push(0); m_data.push(0); m_data.push(0); m_data.push(0); m_data.push(0); m_data.push(0); m_data.push(0); m_data.push(0); m_data.push(0); m_data.push(0); m_data.push(0); m_data.push(0); m_data.push(0); m_data.push(0); m_data.push(0); } } }//package gui
Section 92
//MenuWalkClip (gui.MenuWalkClip) package gui { import flash.display.*; import flash.events.*; public dynamic class MenuWalkClip extends MovieClip { var m_py;// = -34 var counter;// = 0 public function MenuWalkClip(){ y = -34; counter = 0; addEventListener(Event.ENTER_FRAME, Update); main.m_main.addChild(this); main.m_WalkClip = this; } public function Hide(){ m_py = -34; counter = 0; } public function Update(_arg1){ if (Math.abs((y - m_py)) > 1){ y = (y + ((m_py - y) * 0.2)); }; if (main.b_finish){ Hide(); }; } public function Delete(){ removeEventListener(Event.ENTER_FRAME, Update); parent.removeChild(this); } public function Show(){ if (counter++ == 1){ m_py = 20; }; } } }//package gui
Section 93
//NextButton (gui.NextButton) package gui { import flash.display.*; import flash.events.*; public dynamic class NextButton extends SimpleButton { public function NextButton(){ addEventListener(MouseEvent.MOUSE_DOWN, onPress); } private function onPress(_arg1){ var _local2:String = main.m_stage_name; _local2 = _local2.substr(6, 8); _local2 = (int(_local2) + 1); if (_local2 > 30){ this.visible = false; removeEventListener(MouseEvent.MOUSE_DOWN, onPress); main.FreeAll(); main.m_main.GameMenu.Delete(); main.m_main.GameMenu = null; main.m_main.WinMenu.Delete(); main.m_main.WinMenu = null; main.m_main.SoundButton.Delete(); main.m_main.SoundButton = null; main.m_WalkClip.Delete(); main.m_WalkClip = null; main.m_main.gotoAndStop("Menu"); return; }; if (_local2 < 10){ main.m_stage_name = ("stage_0" + _local2); } else { main.m_stage_name = ("stage_" + _local2); }; main.FreeAll(); main.CreateStage(main.m_stage_name); parent.visible = false; } } }//package gui
Section 94
//Preloader (gui.Preloader) package gui { import flash.display.*; import flash.events.*; public dynamic class Preloader extends MovieClip { var max_mx;// = 618 var px;// = -370 var bytesloaded; var bytestotal; var pmx;// = -10 var max_x;// = 300 public function Preloader(){ addFrameScript(0, frame1); addEventListener(Event.ENTER_FRAME, Update); this.BPlay.addEventListener(MouseEvent.MOUSE_DOWN, onPressPlay); this.BPlay.visible = false; } function frame1(){ stop(); } public function Update(_arg1){ bytestotal = stage.loaderInfo.bytesTotal; bytesloaded = stage.loaderInfo.bytesLoaded; var _local2:int = ((bytesloaded * 100) / bytestotal); if (((((this.Man) && (this.Man.Procents))) && (this.Man.Procents.TText))){ this.Man.Procents.TText.text = (String(_local2) + "%"); }; px = (-515 + ((515 + max_x) * (_local2 / 100))); pmx = (-10 + ((10 + max_mx) * (_local2 / 100))); UpdateParavoz(); if (bytesloaded >= bytestotal){ this.BPlay.visible = true; }; } private function onPressPlay(_arg1){ trace("Ok"); if (bytesloaded >= bytestotal){ main.m_main.adBox.parent.removeChild(main.m_main.adBox); if (main.b_locked){ main.m_main.gotoAndStop("Locked"); } else { main.m_main.gotoAndStop("Splash"); }; }; } public function UpdateParavoz(){ var _local1:*; if ((px - this.Paravoz.x) > 0.01){ _local1 = ((px - this.Paravoz.x) * 0.1); }; if (_local1 > 3.6){ _local1 = 3.6; }; this.Paravoz.x = (this.Paravoz.x + _local1); if ((pmx - this.Man.x) > 0.01){ _local1 = ((pmx - this.Man.x) * 0.1); }; if (_local1 > 3){ _local1 = 3; }; this.Man.x = (this.Man.x + _local1); } } }//package gui
Section 95
//SoundButton (gui.SoundButton) package gui { import flash.display.*; import flash.events.*; import flash.media.*; public dynamic class SoundButton extends MovieClip { public function SoundButton(){ addFrameScript(0, frame1); if (main.b_sound == false){ this.gotoAndStop(2); }; addEventListener(MouseEvent.MOUSE_DOWN, onPress); main.m_main.addChild(this); } public function Delete(){ if (parent){ parent.removeChild(this); }; } private function onPress(_arg1){ var _local2:SoundTransform; var _local3:SoundTransform; if (main.b_sound){ this.gotoAndStop(2); main.b_sound = false; _local2 = new SoundTransform(0, 0); SoundMixer.soundTransform = _local2; } else { this.gotoAndStop(1); main.b_sound = true; _local3 = new SoundTransform(1, 0); SoundMixer.soundTransform = _local3; }; } function frame1(){ stop(); } } }//package gui
Section 96
//SplashButton (gui.SplashButton) package gui { import flash.display.*; import flash.events.*; import flash.net.*; public dynamic class SplashButton extends SimpleButton { public function SplashButton(){ addEventListener(MouseEvent.MOUSE_DOWN, onPress); } private function onPress(_arg1){ if (main.b_mochi){ MochiBot.track(main.m_main, "e9daa994"); }; var _local2:URLRequest = new URLRequest("http://www.bubblebox.com/clickreg.php?type=gamestats&id=1835&subid=splash"); navigateToURL(_local2, "_blank"); } } }//package gui
Section 97
//StageButton (gui.StageButton) package gui { import flash.display.*; import flash.events.*; public dynamic class StageButton extends SimpleButton { public function StageButton(){ var _local3:*; var _local4:*; var _local5:*; super(); var _local1:String = (name.charAt((name.length - 2)) + name.charAt((name.length - 1))); var _local2:* = int(_local1); if (main.mySO.data.Saves.m_levels[(_local2 - 1)] == 0){ alpha = 0.5; mouseEnabled = false; _local3 = new RedLineClip(); _local3.alpha = 0.5; _local3.x = x; _local3.y = y; _local3.rotation = rotation; parent.addChild(_local3); } else { addEventListener(MouseEvent.MOUSE_DOWN, onPress); }; if (main.mySO.data.Saves.m_levels[(_local2 - 1)] == 2){ if (main.mySO.data.Saves.m_scores[(_local2 - 1)] >= main.m_scores_data.m_data[_local2]){ _local5 = new LevelGoodClip(); _local5.x = x; _local5.y = y; _local5.rotation = rotation; parent.addChild(_local5); }; _local4 = new GreenBarClip(); _local4.alpha = 0.5; _local4.x = x; _local4.y = y; _local4.rotation = rotation; _local4.mouseEnabled = false; parent.addChild(_local4); }; } private function onPress(_arg1){ root.gotoAndStop("Game"); main.CreateStage(name); } } }//package gui
Section 98
//VehiclesButton (gui.VehiclesButton) package gui { import flash.display.*; import flash.events.*; import flash.net.*; public dynamic class VehiclesButton extends SimpleButton { public function VehiclesButton(){ addEventListener(MouseEvent.MOUSE_DOWN, onPress); } private function onPress(_arg1){ if (main.b_mochi){ MochiBot.track(main.m_main, "5d1434e4"); }; var _local2:URLRequest = new URLRequest("http://www.bubblebox.com/clickreg.php?type=gamestats&id=1835&subid=playSomeGame&action=play_1800"); navigateToURL(_local2, "_blank"); } } }//package gui
Section 99
//WereboxButton (gui.WereboxButton) package gui { import flash.display.*; import flash.events.*; import flash.net.*; public dynamic class WereboxButton extends SimpleButton { public function WereboxButton(){ addEventListener(MouseEvent.MOUSE_DOWN, onPress); } private function onPress(_arg1){ if (main.b_mochi){ MochiBot.track(main.m_main, "fddd81bc"); }; var _local2:URLRequest = new URLRequest("http://www.bubblebox.com/clickreg.php?type=gamestats&id=1835&subid=playSomeGame&action=play_1660"); navigateToURL(_local2, "_blank"); } } }//package gui
Section 100
//WinMenu (gui.WinMenu) package gui { import flash.display.*; import flash.events.*; public dynamic class WinMenu extends MovieClip { var m_py;// = 506 public function WinMenu(){ visible = false; y = 506; m_py = 506; addEventListener(Event.ENTER_FRAME, Update); main.m_main.addChild(this); } public function Hide(){ m_py = 506; visible = false; } public function Update(_arg1){ if (Math.abs((y - m_py)) > 1){ y = (y + ((m_py - y) * 0.2)); }; if (main.b_finish){ Show(); } else { Hide(); }; } public function Delete(){ removeEventListener(Event.ENTER_FRAME, Update); parent.removeChild(this); } public function Show(){ m_py = 456; visible = true; main.m_main.addChild(main.m_main.WinMenu); } } }//package gui
Section 101
//VogdButton (gui.VogdButton) package gui { import flash.display.*; import flash.events.*; import flash.net.*; public dynamic class VogdButton extends SimpleButton { public function VogdButton(){ addEventListener(MouseEvent.MOUSE_DOWN, onPress); } private function onPress(_arg1){ var _local2:URLRequest = new URLRequest("http://www.astargames.ru"); navigateToURL(_local2, "_blank"); } } }//package gui
Section 102
//Box_01 (Objects.Box_01) package Objects { import Box2D.Collision.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; import Box2D.Common.*; import Box2D.Dynamics.Contacts.*; import flash.display.*; import flash.events.*; public dynamic class Box_01 extends Box_Base { public function Box_01(){ m_friction = 0.5; m_density = 0.02; } } }//package Objects
Section 103
//Box_02 (Objects.Box_02) package Objects { import Box2D.Collision.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; import Box2D.Common.*; import Box2D.Dynamics.Contacts.*; import flash.display.*; import flash.events.*; public dynamic class Box_02 extends Box_Base { public function Box_02(){ m_friction = 0; m_density = 0.02; } } }//package Objects
Section 104
//Box_Base (Objects.Box_Base) package Objects { import Box2D.Collision.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; import Box2D.Common.*; import Box2D.Dynamics.Contacts.*; import flash.display.*; import flash.events.*; public dynamic class Box_Base extends MovieClip { public var cart;// = 0 public var p1:Object; public var p3:Object; public var p2:Object; public var p4:Object; public var m_friction; public var m_density; public function Box_Base(){ main.AddObject(this, 5); } public function Update(){ if ((((cart == 0)) && (main.m_stage))){ CreatePhysBody(); }; if (cart){ x = (cart.GetPosition().x * main.m_physScale); y = (cart.GetPosition().y * main.m_physScale); rotation = ((cart.GetAngle() / Math.PI) * 180); }; } public function CreatePhysBody(){ var _local2:b2BodyDef; var _local3:b2Body; var _local1:b2PolygonDef = new b2PolygonDef(); _local2 = new b2BodyDef(); _local1.density = m_density; _local1.friction = m_friction; _local1.restitution = 0.1; _local2.position.Set((x / main.m_physScale), (y / main.m_physScale)); _local2.angle = ((rotation / 180) * Math.PI); rotation = 0; _local1.SetAsBox(((width / 2) / main.m_physScale), ((height / 2) / main.m_physScale)); _local3 = main.m_world.CreateBody(_local2); _local3.CreateShape(_local1); _local3.SetMassFromShapes(); cart = _local3; cart.m_userData = new Object(); cart.m_userData.m_type = int(1); cart.m_userData.m_body = this; } public function Destroy(){ main.m_world.DestroyBody(cart); } } }//package Objects
Section 105
//Box_lvl5 (Objects.Box_lvl5) package Objects { import Box2D.Collision.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; import Box2D.Common.*; import Box2D.Dynamics.Contacts.*; import flash.display.*; import flash.events.*; public dynamic class Box_lvl5 extends Box_Base { public function Box_lvl5(){ m_friction = 0.5; m_density = 0.02; } } }//package Objects
Section 106
//Box_lvl6 (Objects.Box_lvl6) package Objects { import Box2D.Collision.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; import Box2D.Common.*; import Box2D.Dynamics.Contacts.*; import flash.display.*; import flash.events.*; public dynamic class Box_lvl6 extends Box_Base { public function Box_lvl6(){ m_friction = 0.5; m_density = 0.02; } } }//package Objects
Section 107
//BoxSleep (Objects.BoxSleep) package Objects { import Box2D.Collision.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; import Box2D.Common.*; import Box2D.Dynamics.Contacts.*; import flash.display.*; import flash.events.*; public dynamic class BoxSleep extends MovieClip { public var p1:Object; public var p3:Object; public var p2:Object; public var p4:Object; public var m_type;// = 0 public var m_phys_body;// = 0 public function BoxSleep(){ visible = false; main.AddObject(this); } public function CreatePhysBody(){ var _local1:b2PolygonDef; var _local2:b2BodyDef; var _local3:b2Body; _local1 = new b2PolygonDef(); _local2 = new b2BodyDef(); _local1.density = 0; _local1.friction = 0.5; _local1.restitution = 0.1; _local2.position.Set((x / main.m_physScale), (y / main.m_physScale)); _local2.angle = ((rotation / 180) * Math.PI); rotation = 0; _local1.SetAsBox(((width / main.m_physScale) / 2), ((height / main.m_physScale) / 2)); _local3 = main.m_world.CreateBody(_local2); _local3.CreateShape(_local1); _local3.SetMassFromShapes(); m_phys_body = _local3; } public function Destroy(){ if (parent){ parent.removeChild(this); }; main.m_world.DestroyBody(m_phys_body); } public function Update(){ if ((((m_phys_body == 0)) && (main.m_stage))){ CreatePhysBody(); }; if (m_phys_body){ x = (m_phys_body.GetPosition().x * main.m_physScale); y = (m_phys_body.GetPosition().y * main.m_physScale); rotation = ((m_phys_body.GetAngle() / Math.PI) * 180); }; } } }//package Objects
Section 108
//Bridge_Base (Objects.Bridge_Base) package Objects { import flash.display.*; import flash.events.*; public dynamic class Bridge_Base extends MovieClip { var m_g;// = 2 var parts:Array; var counter;// = 90 public function Bridge_Base():void{ parts = new Array(); super(); } public function Destroy(){ InitParts(); addEventListener(Event.ENTER_FRAME, Update); } public function Update(_arg1){ var _local3:*; if (counter <= 0){ removeEventListener(Event.ENTER_FRAME, Update); this.parent.removeChild(this); return; }; counter--; alpha = (alpha - (1 / counter)); var _local2:* = 0; while (_local2 < this.numChildren) { _local3 = this.getChildAt(_local2); _local3.x = (_local3.x + parts[_local2].m_dx); _local3.y = (_local3.y + (parts[_local2].m_dy + m_g)); _local2++; }; m_g = (m_g + 0.1); } public function InitParts(){ var _local2:*; var _local3:*; var _local4:*; var _local5:*; var _local6:*; var _local1:* = 0; while (_local1 < this.numChildren) { _local2 = this.getChildAt(_local1); _local3 = 4; _local4 = ((Math.random() * _local3) - (_local3 / 2)); _local5 = ((Math.random() * _local3) - (_local3 / 2)); _local6 = ((Math.random() * 10) - 5); parts.push({m_dx:_local4, m_dy:_local5, m_da:_local6}); _local1++; }; } } }//package Objects
Section 109
//Car_Base (Objects.Car_Base) package Objects { import Box2D.Collision.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; import flash.display.*; import flash.events.*; public dynamic class Car_Base extends MovieClip { public var ibox; private var ps; private var pw; public var b_tormoza;// = true private var box; public var m_sound;// = 0 public var b_breaks;// = true public var m_sound_type;// = 0 public var bw; private var spring_length; public var m_force;// = 4.5 public var m_dens;// = 0.2 public var cart:b2Body; public var b_big;// = false public var b_back;// = false public var b_bad;// = false public var iw; private var pa; public var m_group_num; public var m_frict;// = 1.5 private var pm; public function Car_Base(_arg1=0, _arg2=0):void{ pw = new Array(); pa = new Array(); pm = new Array(); ps = new Array(); bw = new Array(); iw = new Array(); super(); if (((!((_arg1 == 0))) && (!((_arg2 == 0))))){ x = _arg1; y = _arg2; }; m_group_num = main.g_num; main.g_num--; } public function FirstInit(_arg1){ var _local4:*; var _local5:*; var _local6:*; var _local7:*; box = _arg1.Box; box.visible = false; var _local2:* = 1; var _local3:* = true; while (_local3) { _local4 = ("Wheel" + _local2); _local5 = ("IWheel" + _local2); _local6 = this[_local4]; _local7 = this[_local5]; if ((((_local6 == undefined)) || ((_local7 == undefined)))){ _local3 = false; } else { _local6.visible = false; bw.push(_local6); iw.push(_local7); _local2++; }; }; ibox = _arg1.IBox; Init(); main.AddObject(this, 1); } private function Init():void{ var _local1:*; var _local2:*; var _local3:*; var _local4:*; var _local5:*; var _local6:*; var _local7:*; var _local8:*; var _local9:int; var _local10:b2Body; var _local11:b2BodyDef; var _local12:b2PolygonDef; var _local13:b2CircleDef; var _local14:b2RevoluteJointDef; var _local15:b2PrismaticJointDef; _local3 = box.width; _local4 = box.height; _local11 = new b2BodyDef(); _local12 = new b2PolygonDef(); _local12.density = m_dens; _local12.friction = 0.5; _local12.restitution = 0.2; _local12.filter.groupIndex = m_group_num; _local11.position.Set(((x + box.x) / main.m_physScale), ((y + box.y) / main.m_physScale)); _local11.angle = ((rotation / 180) * Math.PI); _local12.SetAsBox(((_local3 / 2) / main.m_physScale), ((_local4 / 2) / main.m_physScale)); cart = main.m_world.CreateBody(_local11); cart.m_userData = new Object(); cart.m_userData.m_type = int(1); cart.m_userData.m_body = this; cart.CreateShape(_local12); cart.SetMassFromShapes(); _local12.density = 1; _local12.friction = 0.5; _local9 = 0; while (_local9 < bw.length) { _local1 = (bw[_local9].width / 2); _local2 = (bw[_local9].width / 2); spring_length = ((bw[_local9].y - box.y) + (_local4 / 2)); _local11.position.Set(((x + bw[_local9].x) / main.m_physScale), (((y + bw[_local9].y) - (_local1 / 2)) / main.m_physScale)); _local11.angle = (Math.PI / 2); _local6 = main.m_world.CreateBody(_local11); _local12.SetAsBox((5 / main.m_physScale), (5 / main.m_physScale)); _local6.CreateShape(_local12); _local6.SetMassFromShapes(); _local15 = new b2PrismaticJointDef(); _local15.Initialize(cart, _local6, _local6.GetWorldCenter(), new b2Vec2(0, 1)); _local15.lowerTranslation = (-(spring_length) / main.m_physScale); _local15.upperTranslation = (spring_length / main.m_physScale); _local15.enableLimit = true; _local15.enableMotor = true; _local8 = (main.m_world.CreateJoint(_local15) as b2PrismaticJoint); _local13 = new b2CircleDef(); _local13.radius = (_local1 / main.m_physScale); _local13.density = m_dens; _local13.friction = m_frict; _local13.restitution = 0.2; _local13.filter.groupIndex = m_group_num; _local11 = new b2BodyDef(); _local11.position.Set(((bw[_local9].x + x) / main.m_physScale), ((bw[_local9].y + y) / main.m_physScale)); _local11.allowSleep = false; _local5 = main.m_world.CreateBody(_local11); _local5.CreateShape(_local13); _local5.SetMassFromShapes(); _local5.m_userData = new Object(); _local5.m_userData.m_type = int(1); _local5.m_userData.m_body = this; _local14 = new b2RevoluteJointDef(); _local14.enableMotor = true; _local14.Initialize(_local6, _local5, _local5.GetWorldCenter()); _local7 = (main.m_world.CreateJoint(_local14) as b2RevoluteJoint); _local8.SetMaxMotorForce(100000); _local8.SetMaxMotorForce(100000); pw.push(_local5); pa.push(_local6); pm.push(_local7); ps.push(_local8); _local9++; }; Break(true, true); } public function GetPosition(){ return ([(cart.GetPosition().x * main.m_physScale), (cart.GetPosition().y * main.m_physScale)]); } public function Destroy(){ var _local1:*; for each (_local1 in pm) { main.m_world.DestroyJoint(_local1); }; for each (_local1 in ps) { main.m_world.DestroyJoint(_local1); }; for each (_local1 in pw) { main.m_world.DestroyBody(_local1); }; for each (_local1 in pa) { main.m_world.DestroyBody(_local1); }; main.m_world.DestroyBody(cart); for each (_local1 in bw) { _local1.parent.removeChild(_local1); }; for each (_local1 in iw) { _local1.parent.removeChild(_local1); }; box.parent.removeChild(box); ibox.parent.removeChild(ibox); } public function MouseDown(_arg1){ if (b_breaks){ UnBreak(); } else { Break(b_tormoza); }; } public function Break(_arg1, _arg2=false){ var _local3:*; var _local4:*; if (b_bad){ return; }; ibox.smoke.visible = false; b_breaks = true; for each (_local3 in pm) { if (_arg1){ _local4 = _local3.GetJointAngle(); _local3.EnableLimit(true); _local3.SetLimits((_local4 - 0.1), (_local4 + 0.1)); }; _local3.EnableMotor(false); }; if (_arg2 == false){ if (m_sound){ m_sound.stop(); }; m_sound = main.m_main.BreakingSound.play(0, 1); }; } public function Update(){ var _local1:*; if (cart){ ibox.x = ((cart.GetPosition().x * main.m_physScale) - x); ibox.y = ((cart.GetPosition().y * main.m_physScale) - y); ibox.rotation = ((cart.GetAngle() / Math.PI) * 180); }; _local1 = 0; while (_local1 < iw.length) { iw[_local1].x = ((pw[_local1].GetPosition().x * main.m_physScale) - x); iw[_local1].y = ((pw[_local1].GetPosition().y * main.m_physScale) - y); iw[_local1].rotation = ((pw[_local1].GetAngle() / Math.PI) * 180); ps[_local1].SetMaxMotorForce((30 + Math.abs((800 * Math.pow(ps[_local1].GetJointTranslation(), 2))))); ps[_local1].SetMotorSpeed(((ps[_local1].GetMotorSpeed() - (10 * ps[_local1].GetJointTranslation())) * 0.4)); _local1++; }; var _local2:* = (spring_length / 20); if (b_breaks == false){ }; } public function UnBreak(){ if (b_bad){ return; }; b_breaks = false; for each (i in pm) { i.EnableLimit(false); i.EnableMotor(true); i.SetMotorSpeed((m_force * Math.PI)); i.SetMaxMotorTorque(30000); }; if (m_sound){ m_sound.stop(); }; if (b_big){ m_sound = main.m_main.GasBigSound.play(0, 1); } else { m_sound = main.m_main.GasSmallSound.play(0, 1); }; ibox.smoke.visible = true; } } }//package Objects
Section 110
//Car1 (Objects.Car1) package Objects { import Box2D.Collision.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; import flash.events.*; public dynamic class Car1 extends Car_Base { public function Car1(_arg1=0, _arg2=0):void{ var _local3:*; var _local4:*; super(); if (((!((_arg1 == 0))) && (!((_arg2 == 0))))){ _local3 = this.IBox.x; _local4 = this.IBox.y; x = (_arg1 - _local3); y = (_arg2 - _local4); }; m_dens = 0.1; m_frict = 1.5; m_force = 6.5; b_bad = false; b_tormoza = true; FirstInit(this); this.m_back = "Car1_Back"; this.b_left = true; } } }//package Objects
Section 111
//Car1_Back (Objects.Car1_Back) package Objects { import Box2D.Collision.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; import flash.events.*; public dynamic class Car1_Back extends Car_Base { public function Car1_Back(_arg1=0, _arg2=0):void{ var _local3:*; var _local4:*; super(); if (((!((_arg1 == 0))) && (!((_arg2 == 0))))){ _local3 = this.IBox.x; _local4 = this.IBox.y; x = (_arg1 - _local3); y = (_arg2 - _local4); }; m_dens = 0.1; m_frict = 1.5; m_force = -6.5; b_bad = false; b_tormoza = true; FirstInit(this); this.m_back = "Car1"; this.b_left = false; } } }//package Objects
Section 112
//Car2 (Objects.Car2) package Objects { import Box2D.Collision.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; import flash.events.*; public dynamic class Car2 extends Car_Base { public function Car2(_arg1=0, _arg2=0):void{ var _local3:*; var _local4:*; super(); if (((!((_arg1 == 0))) && (!((_arg2 == 0))))){ _local3 = this.IBox.x; _local4 = this.IBox.y; x = (_arg1 - _local3); y = (_arg2 - _local4); }; m_dens = 0.3; m_frict = 1.5; m_force = 12; b_bad = false; b_tormoza = true; FirstInit(this); this.m_back = "Car2_Back"; this.b_left = true; } } }//package Objects
Section 113
//Car2_Back (Objects.Car2_Back) package Objects { import Box2D.Collision.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; import flash.events.*; public dynamic class Car2_Back extends Car_Base { public function Car2_Back(_arg1=0, _arg2=0):void{ var _local3:*; var _local4:*; super(); if (((!((_arg1 == 0))) && (!((_arg2 == 0))))){ _local3 = this.IBox.x; _local4 = this.IBox.y; x = (_arg1 - _local3); y = (_arg2 - _local4); }; m_dens = 0.3; m_frict = 1.5; m_force = -12; b_bad = false; b_tormoza = true; FirstInit(this); this.m_back = "Car2"; this.b_left = false; } } }//package Objects
Section 114
//Car3 (Objects.Car3) package Objects { import Box2D.Collision.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; import flash.events.*; public dynamic class Car3 extends Car_Base { public function Car3(_arg1=0, _arg2=0):void{ var _local3:*; var _local4:*; super(); if (((!((_arg1 == 0))) && (!((_arg2 == 0))))){ _local3 = this.IBox.x; _local4 = this.IBox.y; x = (_arg1 - _local3); y = (_arg2 - _local4); }; m_dens = 0.1; m_frict = 0.7; m_force = 7.5; b_bad = false; b_tormoza = true; b_big = true; FirstInit(this); this.m_back = "Car3_Back"; this.b_left = true; } } }//package Objects
Section 115
//Car3_Back (Objects.Car3_Back) package Objects { import Box2D.Collision.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; import flash.events.*; public dynamic class Car3_Back extends Car_Base { public function Car3_Back(_arg1=0, _arg2=0):void{ var _local3:*; var _local4:*; super(); if (((!((_arg1 == 0))) && (!((_arg2 == 0))))){ _local3 = this.IBox.x; _local4 = this.IBox.y; x = (_arg1 - _local3); y = (_arg2 - _local4); }; m_dens = 0.1; m_frict = 0.7; m_force = -7.5; b_bad = false; b_tormoza = true; b_big = true; FirstInit(this); this.m_back = "Car3"; this.b_left = false; } } }//package Objects
Section 116
//Car4 (Objects.Car4) package Objects { import Box2D.Collision.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; import flash.events.*; public dynamic class Car4 extends Car_Base { public function Car4(_arg1=0, _arg2=0):void{ var _local3:*; var _local4:*; super(); if (((!((_arg1 == 0))) && (!((_arg2 == 0))))){ _local3 = this.IBox.x; _local4 = this.IBox.y; x = (_arg1 - _local3); y = (_arg2 - _local4); }; m_dens = 0.1; m_frict = 0.7; m_force = 7.5; b_bad = false; b_tormoza = true; b_big = true; FirstInit(this); this.m_back = "Car4_Back"; this.b_left = true; } } }//package Objects
Section 117
//Car4_Back (Objects.Car4_Back) package Objects { import Box2D.Collision.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; import flash.events.*; public dynamic class Car4_Back extends Car_Base { public function Car4_Back(_arg1=0, _arg2=0):void{ var _local3:*; var _local4:*; super(); if (((!((_arg1 == 0))) && (!((_arg2 == 0))))){ _local3 = this.IBox.x; _local4 = this.IBox.y; x = (_arg1 - _local3); y = (_arg2 - _local4); }; m_dens = 0.1; m_frict = 0.7; m_force = -7.5; b_bad = false; b_tormoza = true; b_big = true; FirstInit(this); this.m_back = "Car4"; this.b_left = false; } } }//package Objects
Section 118
//Circle (Objects.Circle) package Objects { import Box2D.Collision.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; import Box2D.Common.*; import Box2D.Dynamics.Contacts.*; import flash.display.*; import flash.events.*; public dynamic class Circle extends MovieClip { public var cart;// = 0 public var p1:Object; public var p3:Object; public var p2:Object; public var p4:Object; public var m_phys_body;// = 0 public function Circle(){ main.AddObject(this); } public function CreatePhysBody(){ var _local1:b2BodyDef; _local1 = new b2BodyDef(); _local1.position.Set((x / main.m_physScale), (y / main.m_physScale)); _local1.angle = ((rotation / 180) * Math.PI); rotation = 0; var _local2:b2CircleDef = new b2CircleDef(); _local2.radius = ((width / main.m_physScale) / 2); _local2.density = 0.02; _local2.restitution = 0.2; _local2.friction = 0.1; b = main.m_world.CreateBody(_local1); b.CreateShape(_local2); b.SetMassFromShapes(); cart = b; cart.m_userData = new Object(); cart.m_userData.m_type = int(1); cart.m_userData.m_body = this; } public function Destroy(){ main.m_world.DestroyBody(cart); } public function Update(){ if ((((cart == 0)) && (main.m_stage))){ CreatePhysBody(); }; if (cart){ x = (cart.GetPosition().x * main.m_physScale); y = (cart.GetPosition().y * main.m_physScale); rotation = ((cart.GetAngle() / Math.PI) * 180); }; } } }//package Objects
Section 119
//ContactListenerClass (Objects.ContactListenerClass) package Objects { import Box2D.Collision.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; import flash.events.*; public class ContactListenerClass extends b2ContactListener { public var contactStack:Array; public function ContactListenerClass(){ contactStack = new Array(); super(); } override public function Add(_arg1:b2ContactPoint):void{ var _local4:Number; var _local5:b2Vec2; var _local2:b2Shape = _arg1.shape1; var _local3:b2Shape = _arg1.shape2; if (((_local2.GetBody().m_userData) && (_local3.GetBody().m_userData))){ if ((((((_local2.GetBody().m_userData.m_type == 1)) && ((_local3.GetBody().m_userData.m_type == 2)))) || ((((_local3.GetBody().m_userData.m_type == 1)) && ((_local2.GetBody().m_userData.m_type == 2)))))){ _local4 = _arg1.separation; _local5 = _arg1.position.Copy(); if (_local2.GetBody().m_userData.m_type == 1){ contactStack.push({car:_local2.GetBody(), man:_local3.GetBody(), force:_local4, pos:_local5}); } else { contactStack.push({car:_local3.GetBody(), man:_local2.GetBody(), force:_local4, pos:_local5}); }; }; }; } } }//package Objects
Section 120
//Fire (Objects.Fire) package Objects { import flash.display.*; import flash.events.*; public dynamic class Fire extends MovieClip { public function Fire():void{ main.m_fire_controll.AddLevelFire(this); } public function EnableFire(){ visible = true; this.b_enabled = true; } public function DisableFire(){ visible = false; this.b_enabled = false; } } }//package Objects
Section 121
//FireControll (Objects.FireControll) package Objects { import flash.display.*; import flash.events.*; import gui.*; import flash.geom.*; public dynamic class FireControll { public var m_counter; public var m_car_fires; public var m_level_fires; public var m_body_fires; public function FireControll(){ trace("Create FireControll"); m_level_fires = new Array(); m_body_fires = new Array(); m_car_fires = new Array(); } public function IfNear(_arg1, _arg2){ m_counter++; var _local3:* = 20; var _local4:* = 20; if ((((Math.abs((_arg1.x - _arg2.x)) < _local3)) && ((Math.abs((_arg1.y - _arg2.y)) < _local4)))){ return (true); }; return (false); } public function AddFireBody(_arg1){ main.m_main.FireSmallSound.play(); var _local2:* = new FireBody(); _local2.x = _arg1.x; _local2.y = _arg1.y; _local2.alpha = 0.5; main.m_main.addChild(_local2); _local2.m_body = _arg1; m_body_fires.push(_local2); } public function Update(){ var _local1:*; var _local2:*; var _local3:*; m_counter = 0; for each (_local1 in m_level_fires) { if (_local1.b_enabled == true){ for each (_local2 in main.m_objects) { if ((((_local2.m_type == 3)) && (!((_local2.b_fired == true))))){ if ((((((((((((_local2.m_ibody.b_fire == true)) && ((_local2.m_ihand1.b_fire == true)))) && ((_local2.m_ihand2.b_fire == true)))) && ((_local2.m_ileg1.b_fire == true)))) && ((_local2.m_ileg2.b_fire == true)))) && ((_local2.m_ihead.b_fire == true)))){ _local3 = new BonusStar(_local2.m_ibody.x, _local2.m_ibody.y, 10); _local2.b_fired = true; }; }; if ((((_local2.m_type == 3)) && (!((_local2.b_fired == true))))){ TryFirePart(_local1, _local2.m_ibody); TryFirePart(_local1, _local2.m_ihand1); TryFirePart(_local1, _local2.m_ihand2); TryFirePart(_local1, _local2.m_ileg1); TryFirePart(_local1, _local2.m_ileg2); TryFirePart(_local1, _local2.m_ihead); }; }; }; }; for each (_local1 in m_body_fires) { _local1.x = _local1.m_body.x; _local1.y = _local1.m_body.y; }; for each (_local1 in main.m_objects) { if ((((_local1.m_type == 3)) && (!((_local1.b_fired == true))))){ for each (_local2 in m_body_fires) { if (TryFirePart(_local2, _local1.m_ibody)){ break; }; if (TryFirePart(_local2, _local1.m_ihand1)){ break; }; if (TryFirePart(_local2, _local1.m_ihand2)){ break; }; if (TryFirePart(_local2, _local1.m_ileg1)){ break; }; if (TryFirePart(_local2, _local1.m_ileg2)){ break; }; if (TryFirePart(_local2, _local1.m_ihead)){ break; }; }; }; }; } public function TryFirePart(_arg1, _arg2){ if (_arg2.b_fire != true){ if (IfNear(_arg1, _arg2)){ _arg2.b_fire = true; AddFireBody(_arg2); return (true); }; }; return (false); } public function FreeAll(){ for each (i in m_body_fires) { i.parent.removeChild(i); }; for each (i in m_car_fires) { i.parent.removeChild(i); }; m_level_fires.splice(0); m_body_fires.splice(0); m_car_fires.splice(0); } public function AddLevelFire(_arg1){ _arg1.b_enabled = true; m_level_fires.push(_arg1); } } }//package Objects
Section 122
//FireTrigger (Objects.FireTrigger) package Objects { import flash.display.*; import flash.events.*; public dynamic class FireTrigger extends MovieClip { public var b_action;// = false public function FireTrigger():void{ main.AddObject(this); } public function CheckTrigger(_arg1){ if (b_action == true){ return; }; if (this.hitTestObject(_arg1)){ Action(); }; } public function Destroy(){ if (parent){ parent.removeChild(this); }; } public function Action(){ b_action = true; var _local1:* = ("F" + this.name); main.m_stage[_local1].EnableFire(); main.m_main.FireSound.play(); this.stop(); this.visible = false; } public function Update(){ var _local1:*; if (b_action == true){ return; }; for each (_local1 in main.m_objects) { if (_local1.m_type == 1){ CheckTrigger(_local1.ibox); } else { if (_local1.m_type == 3){ CheckTrigger(_local1.m_ibody); CheckTrigger(_local1.m_ihand1); CheckTrigger(_local1.m_ihand2); CheckTrigger(_local1.m_ileg1); CheckTrigger(_local1.m_ileg2); CheckTrigger(_local1.m_ihead); } else { if (_local1.m_type == 5){ CheckTrigger(_local1); }; }; }; }; } } }//package Objects
Section 123
//Man_01 (Objects.Man_01) package Objects { import Box2D.Collision.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; import flash.events.*; public dynamic class Man_01 extends Man_Base { public function Man_01():void{ Init(this.BBox, this.BBody); } } }//package Objects
Section 124
//Man_Base (Objects.Man_Base) package Objects { import Box2D.Collision.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; import Box2D.Common.*; import Box2D.Dynamics.Contacts.*; import flash.display.*; import flash.events.*; public dynamic class Man_Base extends MovieClip { public var p1:Object; public var p3:Object; public var m_break_coeff;// = 1 public var p2:Object; public var p4:Object; public var m_body;// = 0 public var m_box;// = 0 public var m_phys_body;// = 0 public function Init(_arg1, _arg2){ m_box = _arg1; m_body = _arg2; m_box.visible = false; m_body.Head.visible = false; m_body.Body.visible = false; m_body.Hand1.visible = false; m_body.Hand2.visible = false; m_body.Leg1.visible = false; m_body.Leg2.visible = false; main.AddObject(this, 2); } public function CreatePhysBody(){ var _local3:b2Body; var _local1:b2PolygonDef = new b2PolygonDef(); var _local2:b2BodyDef = new b2BodyDef(); _local1.density = 0.02; _local1.friction = 0.2; _local1.restitution = 0.1; _local1.filter.groupIndex = -2; _local1.filter.b_rigid = 1; _local2.position.Set((x / main.m_physScale), (y / main.m_physScale)); _local2.angle = ((m_box.rotation / 180) * Math.PI); m_box.rotation = 0; _local1.SetAsBox(((m_box.width / 2) / main.m_physScale), ((m_box.height / 2) / main.m_physScale)); _local3 = main.m_world.CreateBody(_local2); _local3.CreateShape(_local1); _local3.SetMassFromShapes(); m_phys_body = _local3; m_phys_body.m_userData = new Object(); m_phys_body.m_userData.m_type = int(2); m_phys_body.m_userData.m_body = this; } public function Update(){ if ((((m_phys_body == 0)) && (main.m_stage))){ CreatePhysBody(); }; if (m_phys_body){ x = (m_phys_body.GetPosition().x * main.m_physScale); y = (m_phys_body.GetPosition().y * main.m_physScale); rotation = ((m_phys_body.GetAngle() / Math.PI) * 180); }; } public function Destroy(){ main.m_world.DestroyBody(m_phys_body); if (parent){ parent.removeChild(this); }; } } }//package Objects
Section 125
//Most19 (Objects.Most19) package Objects { public dynamic class Most19 extends Bridge_Base { } }//package Objects
Section 126
//Most30 (Objects.Most30) package Objects { public dynamic class Most30 extends Bridge_Base { } }//package Objects
Section 127
//Ragdoll (Objects.Ragdoll) package Objects { import Box2D.Collision.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; import Box2D.Common.*; import Box2D.Dynamics.Contacts.*; import flash.display.*; import flash.events.*; import gui.*; import flash.geom.*; public dynamic class Ragdoll extends MovieClip { public var m_pbody;// = 0 public var m_pleg1;// = 0 public var joint5;// = 0 public var m_phand1;// = 0 public var m_phand2;// = 0 public var m_pleg2;// = 0 public var m_group_num; public var m_bc;// = 1 public var joint1;// = 0 public var joint2;// = 0 public var joint3;// = 0 public var joint4;// = 0 public var m_ihand1;// = 0 public var m_ihand2;// = 0 public var m_ihead;// = 0 public var m_ibody;// = 0 public var m_ileg1;// = 0 public var m_ileg2;// = 0 public var m_phead;// = 0 public function Ragdoll(_arg1, _arg2, _arg3, _arg4, _arg5){ m_bc = _arg1.m_break_coeff; m_group_num = main.g_num; main.g_num--; m_pbody = CreatePhysBody(_arg1.BBody.Body); m_phand1 = CreatePhysBody(_arg1.BBody.Hand1); m_phand2 = CreatePhysBody(_arg1.BBody.Hand2); m_pleg1 = CreatePhysBody(_arg1.BBody.Leg1); m_pleg2 = CreatePhysBody(_arg1.BBody.Leg2); m_phead = CreatePhysCircle(_arg1.BBody.Head); joint1 = CreatePhysJoint(m_pbody, m_phand1, -2, -7); joint2 = CreatePhysJoint(m_pbody, m_phand2, 2, -7); joint3 = CreatePhysJoint(m_pbody, m_pleg1, -4, 7); joint4 = CreatePhysJoint(m_pbody, m_pleg2, 4, 7); joint5 = CreatePhysJoint(m_pbody, m_phead, 0, -10); m_ibody = new Man_02_Body(); m_ihand1 = new Man_02_Hand1(); m_ihand2 = new Man_02_Hand2(); m_ileg1 = new Man_02_Leg1(); m_ileg2 = new Man_02_Leg2(); m_ihead = new Man_02_Head(); main.m_main.addChild(m_ibody); main.m_main.addChild(m_ihand1); main.m_main.addChild(m_ihand2); main.m_main.addChild(m_ileg1); main.m_main.addChild(m_ileg2); main.m_main.addChild(m_ihead); main.AddObject(this, 3); var _local6:* = new b2Vec2(_arg4, (_arg5 + (20 / main.m_physScale))); var _local7:* = new b2Vec2(_arg4, _arg5); var _local8:* = new b2Vec2(0, 0); if (_arg2){ _local8 = _arg2.cart.GetLinearVelocity(); }; _local8.Multiply(main.m_force_coeff); _local8.y = (_local8.y - main.m_bonus_y); if (_arg2){ m_pbody.ApplyForce(_local8, _local6); } else { m_pbody.ApplyForce(new b2Vec2(0.003, 0), _local7); }; if (_arg2){ if (_local8.x > 0){ m_pbody.ApplyTorque((Math.PI / (Math.random() * 100))); } else { m_pbody.ApplyTorque((-(Math.PI) / (Math.random() * 100))); }; }; } public function CreatePhysCircle(_arg1){ var _local2:* = new Point(_arg1.x, _arg1.y); _local2 = _arg1.parent.localToGlobal(_local2); var _local3:b2BodyDef = new b2BodyDef(); _local3.position.Set((_local2.x / main.m_physScale), (_local2.y / main.m_physScale)); _local3.angle = ((rotation / 180) * Math.PI); rotation = 0; var _local4:b2CircleDef = new b2CircleDef(); _local4.radius = ((_arg1.width / main.m_physScale) / 2); _local4.density = 0.02; _local4.restitution = 0.2; _local4.friction = 0.1; _local4.filter.groupIndex = m_group_num; _local4.filter.b_rigid = 2; b = main.m_world.CreateBody(_local3); b.CreateShape(_local4); b.SetMassFromShapes(); return (b); } public function CreatePhysBody(_arg1){ var _local4:b2Body; var _local2:b2PolygonDef = new b2PolygonDef(); var _local3:b2BodyDef = new b2BodyDef(); _local2.density = 0.03; _local2.friction = 0.5; _local2.restitution = 0.1; _local2.filter.groupIndex = m_group_num; _local2.filter.b_rigid = 2; var _local5:* = new Point(_arg1.x, _arg1.y); _local5 = _arg1.parent.localToGlobal(_local5); _local3.position.Set((_local5.x / main.m_physScale), (_local5.y / main.m_physScale)); _local3.angle = ((_arg1.rotation / 180) * Math.PI); _arg1.rotation = 0; _local2.SetAsBox(((_arg1.width / 2) / main.m_physScale), ((_arg1.height / 2) / main.m_physScale)); _local4 = main.m_world.CreateBody(_local3); _local4.CreateShape(_local2); _local4.SetMassFromShapes(); return (_local4); } public function Destroy(){ main.m_world.DestroyJoint(joint1); main.m_world.DestroyJoint(joint2); main.m_world.DestroyJoint(joint3); main.m_world.DestroyJoint(joint4); main.m_world.DestroyJoint(joint5); main.m_world.DestroyBody(m_pbody); main.m_world.DestroyBody(m_phand1); main.m_world.DestroyBody(m_phand2); main.m_world.DestroyBody(m_pleg1); main.m_world.DestroyBody(m_pleg2); main.m_world.DestroyBody(m_phead); main.m_main.removeChild(m_ibody); main.m_main.removeChild(m_ihand1); main.m_main.removeChild(m_ihand2); main.m_main.removeChild(m_ileg1); main.m_main.removeChild(m_ileg2); main.m_main.removeChild(m_ihead); } public function CreatePhysJoint(_arg1, _arg2, _arg3, _arg4){ var _local5:* = new b2RevoluteJointDef(); var _local6:* = _arg1.GetWorldCenter(); _arg1.GetWorldCenter().x = (_local6.x + (_arg3 / main.m_physScale)); _local6.y = (_local6.y + (_arg4 / main.m_physScale)); _local5.Initialize(_arg1, _arg2, _local6); var _local7:* = (main.m_world.CreateJoint(_local5) as b2RevoluteJoint); _local6.x = (_local6.x - (_arg3 / main.m_physScale)); _local6.y = (_local6.y - (_arg4 / main.m_physScale)); var _local8:* = _local7.GetJointAngle(); _local7.EnableLimit(true); _local7.SetLimits((_local8 - (Math.PI / 4)), (_local8 + (Math.PI / 4))); return (_local7); } public function Update(){ if (m_ibody == 0){ return; }; SetIObj(m_ibody, m_pbody); SetIObj(m_ihand1, m_phand1); SetIObj(m_ihand2, m_phand2); SetIObj(m_ileg1, m_pleg1); SetIObj(m_ileg2, m_pleg2); SetIObj(m_ihead, m_phead); if (UJoint(joint1)){ joint1 = null; }; if (UJoint(joint2)){ joint2 = null; }; if (UJoint(joint3)){ joint3 = null; }; if (UJoint(joint4)){ joint4 = null; }; if (UJoint(joint5)){ joint5 = null; }; } public function UJoint(_arg1){ var _local5:*; var _local6:*; var _local7:*; if (_arg1 == null){ return; }; var _local2:* = _arg1.GetReactionForce(); var _local3:* = _local2.Length(); var _local4:* = ((this.b_fired)!=true) ? 1.5 : 0.3; if (_local3 > (_local4 * m_bc)){ _local5 = (int((Math.random() * 3)) + 1); if (_local5 == 1){ main.m_main.CrackSound1.play(); } else { if (_local5 == 2){ main.m_main.CrackSound2.play(); } else { if (_local5 == 3){ main.m_main.CrackSound3.play(); }; }; }; _local6 = _arg1.GetAnchor1(); _local7 = new BonusStar((_local6.x * main.m_physScale), (_local6.y * main.m_physScale), 10); main.m_world.DestroyJoint(_arg1); return (true); }; return (false); } public function SetIObj(_arg1, _arg2){ _arg1.x = (_arg2.GetPosition().x * main.m_physScale); _arg1.y = (_arg2.GetPosition().y * main.m_physScale); _arg1.rotation = ((_arg2.GetAngle() / Math.PI) * 180); } } }//package Objects
Section 128
//ReverseLeft (Objects.ReverseLeft) package Objects { import flash.display.*; import flash.events.*; import flash.utils.*; public dynamic class ReverseLeft extends MovieClip { public function ReverseLeft():void{ main.AddObject(this); } public function Update(){ var _local1:*; var _local2:*; for each (_local1 in main.m_objects) { if (_local1.m_type == 1){ if (_local1.b_left == true){ _local2 = _local1.GetPosition(); if (this.hitTestObject(_local1.IBox)){ ChangeCar(_local1, _local2); }; }; }; }; } public function Destroy(){ if (parent){ parent.removeChild(this); }; } public function ChangeCar(_arg1, _arg2){ var _local3:* = new (getDefinitionByName(("Objects." + _arg1.m_back)) as Class)(_arg2[0], _arg2[1]); main.m_main.addChild(_local3); if (_arg1.b_breaks == false){ _local3.UnBreak(); }; var _local4:* = _arg1.cart.GetLinearVelocity(); _local3.cart.SetLinearVelocity(_local4); main.DeleteObject(_arg1); } } }//package Objects
Section 129
//ReverseRight (Objects.ReverseRight) package Objects { import flash.display.*; import flash.events.*; import flash.utils.*; public dynamic class ReverseRight extends MovieClip { public function ReverseRight():void{ main.AddObject(this); } public function Update(){ var _local1:*; var _local2:*; for each (_local1 in main.m_objects) { if (_local1.m_type == 1){ if (_local1.b_left == false){ _local2 = _local1.GetPosition(); if (this.hitTestObject(_local1.IBox)){ ChangeCar(_local1, _local2); }; }; }; }; } public function Destroy(){ if (parent){ parent.removeChild(this); }; } public function ChangeCar(_arg1, _arg2){ var _local3:* = new (getDefinitionByName(("Objects." + _arg1.m_back)) as Class)(_arg2[0], _arg2[1]); main.m_main.addChild(_local3); if (_arg1.b_breaks == false){ _local3.UnBreak(); }; var _local4:* = _arg1.cart.GetLinearVelocity(); _local3.cart.SetLinearVelocity(_local4); main.DeleteObject(_arg1); } } }//package Objects
Section 130
//StaticTrigger (Objects.StaticTrigger) package Objects { import flash.display.*; import flash.events.*; public dynamic class StaticTrigger extends MovieClip { public var b_action;// = false public function StaticTrigger():void{ main.AddObject(this); } public function CheckTrigger(_arg1){ if (b_action == true){ return; }; if (this.hitTestObject(_arg1)){ Action(); }; } public function Destroy(){ if (parent){ parent.removeChild(this); }; } public function Action(){ var _local2:*; var _local3:*; b_action = true; var _local1:* = ("S" + this.name); var _local4:* = 0; _local1 = ("S" + this.name); while (main.m_stage[_local1]) { main.DeleteObject(main.m_stage[_local1]); _local4++; _local1 = (("S" + _local4) + this.name); }; _local1 = ("IS" + this.name); _local4 = 0; while (main.m_stage[_local1]) { main.m_stage[_local1].Destroy(); _local4++; _local1 = ((("I" + _local4) + "S") + this.name); }; main.m_main.ExplosionSound.play(); this.stop(); this.visible = false; } public function Update(){ var _local1:*; if (b_action == true){ return; }; for each (_local1 in main.m_objects) { if (_local1.m_type == 1){ CheckTrigger(_local1.ibox); } else { if (_local1.m_type == 3){ CheckTrigger(_local1.m_ibody); CheckTrigger(_local1.m_ihand1); CheckTrigger(_local1.m_ihand2); CheckTrigger(_local1.m_ileg1); CheckTrigger(_local1.m_ileg2); CheckTrigger(_local1.m_ihead); } else { if (_local1.m_type == 5){ CheckTrigger(_local1); }; }; }; }; } } }//package Objects
Section 131
//Batters2_960 (PipolSmasher_fla.Batters2_960) package PipolSmasher_fla { import flash.display.*; import flash.events.*; import flash.media.*; import flash.net.*; import flash.geom.*; import flash.system.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class Batters2_960 extends MovieClip { public function Batters2_960(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package PipolSmasher_fla
Section 132
//black_bbx_btn_1117 (PipolSmasher_fla.black_bbx_btn_1117) package PipolSmasher_fla { import flash.display.*; import flash.events.*; import flash.media.*; import flash.net.*; import flash.geom.*; import flash.system.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class black_bbx_btn_1117 extends MovieClip { public function black_bbx_btn_1117(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package PipolSmasher_fla
Section 133
//bubble_logo3_1104 (PipolSmasher_fla.bubble_logo3_1104) package PipolSmasher_fla { import flash.display.*; import flash.events.*; import flash.media.*; import flash.net.*; import flash.geom.*; import flash.system.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class bubble_logo3_1104 extends MovieClip { public function bubble_logo3_1104(){ addFrameScript(0, frame1, 9, frame10); } function frame10(){ stop(); } function frame1(){ stop(); } } }//package PipolSmasher_fla
Section 134
//BubbleBoxSplash_1102 (PipolSmasher_fla.BubbleBoxSplash_1102) package PipolSmasher_fla { import flash.display.*; import flash.events.*; import flash.media.*; import flash.net.*; import flash.geom.*; import flash.system.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class BubbleBoxSplash_1102 extends MovieClip { public var play_latest_text:MovieClip; public var link:MovieClip; public function BubbleBoxSplash_1102(){ addFrameScript(160, frame161); } function frame161(){ main.m_main.gotoAndStop("Menu"); stop(); } } }//package PipolSmasher_fla
Section 135
//ManImage_41 (PipolSmasher_fla.ManImage_41) package PipolSmasher_fla { import flash.display.*; import flash.events.*; import flash.media.*; import flash.net.*; import flash.geom.*; import flash.system.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class ManImage_41 extends MovieClip { public var cadr; public function ManImage_41(){ addFrameScript(1, frame2); } function frame2(){ cadr = ((int((Math.random() * 6)) * 10) + 10); this.gotoAndStop(cadr); } } }//package PipolSmasher_fla
Section 136
//Vehicles_Tween16_1134 (PipolSmasher_fla.Vehicles_Tween16_1134) package PipolSmasher_fla { import flash.display.*; import flash.events.*; import flash.media.*; import flash.net.*; import flash.geom.*; import flash.system.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class Vehicles_Tween16_1134 extends MovieClip { public function Vehicles_Tween16_1134(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package PipolSmasher_fla
Section 137
//base_stage (Stages.base_stage) package Stages { import flash.display.*; public dynamic class base_stage extends MovieClip { } }//package Stages
Section 138
//stage_01 (Stages.stage_01) package Stages { import Box2D.Collision.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; import Box2D.Common.*; import Box2D.Dynamics.Contacts.*; import flash.events.*; import Objects.*; public dynamic class stage_01 extends base_stage { public function stage_01(){ this.Man_01.m_break_coeff = 0.6; } } }//package Stages
Section 139
//stage_02 (Stages.stage_02) package Stages { public dynamic class stage_02 extends base_stage { var action_1;// = false var action_2;// = false var action_3;// = false public function stage_02(){ var _local1:*; super(); } } }//package Stages
Section 140
//stage_03 (Stages.stage_03) package Stages { import flash.display.*; public dynamic class stage_03 extends MovieClip { } }//package Stages
Section 141
//stage_04 (Stages.stage_04) package Stages { import flash.display.*; public dynamic class stage_04 extends MovieClip { } }//package Stages
Section 142
//stage_05 (Stages.stage_05) package Stages { import flash.events.*; import Objects.*; public dynamic class stage_05 extends base_stage { var action_1;// = false var action_2;// = false var action_3;// = false public function stage_05(){ this.Man_01.m_break_coeff = 0.6; } } }//package Stages
Section 143
//stage_06 (Stages.stage_06) package Stages { import flash.events.*; import Objects.*; public dynamic class stage_06 extends base_stage { var action_1;// = false var action_2;// = false var action_3;// = false public function stage_06(){ main.m_force_coeff = 1; main.m_bonus_y = 2; } } }//package Stages
Section 144
//stage_07 (Stages.stage_07) package Stages { import flash.display.*; public dynamic class stage_07 extends MovieClip { } }//package Stages
Section 145
//stage_08 (Stages.stage_08) package Stages { import flash.display.*; public dynamic class stage_08 extends MovieClip { } }//package Stages
Section 146
//stage_09 (Stages.stage_09) package Stages { import flash.display.*; import Objects.*; public dynamic class stage_09 extends MovieClip { public var SStatic_02:BoxSleep; public var SStatic_03:BoxSleep; public var ISStatic_02:Stage09_Most; public var ISStatic_03:Stage09_Most; public var ISStatic_01:Stage09_Most; public var Static_01:StaticTrigger; public var Static_02:StaticTrigger; public var Static_03:StaticTrigger; public var SStatic_01:BoxSleep; } }//package Stages
Section 147
//stage_10 (Stages.stage_10) package Stages { import flash.events.*; import Objects.*; public dynamic class stage_10 extends base_stage { var action_1;// = false var action_2;// = false var action_3;// = false public function stage_10(){ this.Car_01.m_force = 26; this.Car_01.m_frict = 4; } } }//package Stages
Section 148
//stage_11 (Stages.stage_11) package Stages { import flash.display.*; public dynamic class stage_11 extends MovieClip { } }//package Stages
Section 149
//stage_12 (Stages.stage_12) package Stages { public dynamic class stage_12 extends base_stage { var action_1;// = false var action_2;// = false var action_3;// = false } }//package Stages
Section 150
//stage_13 (Stages.stage_13) package Stages { import flash.events.*; import Objects.*; import flash.utils.*; public dynamic class stage_13 extends base_stage { var action_1;// = false var action_3;// = false var m_stars;// = 0 var action_2;// = false var t_time; public function stage_13(){ addEventListener(Event.ENTER_FRAME, Update); t_time = getTimer(); } public function Update(_arg1){ var _local2:*; var _local3:*; var _local4:*; for each (_local2 in main.m_objects) { if (_local2.m_type == 1){ if (_local2.b_breaks == true){ t_time = getTimer(); }; }; }; if (action_1 == false){ if ((getTimer() - t_time) > 8000){ action_1 = true; _local3 = new Stars(); _local3.x = this.Man_01.x; _local3.y = this.Man_01.y; main.m_stage.addChild(_local3); m_stars = _local3; t_time = getTimer(); }; }; if ((((action_2 == false)) && ((action_1 == true)))){ if ((getTimer() - t_time) > 3000){ if (m_stars){ m_stars.parent.removeChild(m_stars); }; action_2 = true; _local4 = new Ragdoll(this.Man_01, 0, 0, (this.Man_01.x - 0), this.Man_01.y); main.DeleteObject(this.Man_01); }; }; } public function Destroy(){ removeEventListener(Event.ENTER_FRAME, Update); } } }//package Stages
Section 151
//stage_14 (Stages.stage_14) package Stages { import flash.display.*; import Objects.*; public dynamic class stage_14 extends MovieClip { public var SStatic_02:BoxSleep; public var ISStatic_01:Most14; public var ISStatic_02:Most14_2; public var Static_02:StaticTrigger; public var Static_01:StaticTrigger; public var SStatic_01:BoxSleep; } }//package Stages
Section 152
//stage_15 (Stages.stage_15) package Stages { import flash.display.*; public dynamic class stage_15 extends MovieClip { } }//package Stages
Section 153
//stage_16 (Stages.stage_16) package Stages { import flash.display.*; public dynamic class stage_16 extends MovieClip { } }//package Stages
Section 154
//stage_17 (Stages.stage_17) package Stages { import flash.display.*; public dynamic class stage_17 extends MovieClip { } }//package Stages
Section 155
//stage_18 (Stages.stage_18) package Stages { import flash.events.*; import Objects.*; public dynamic class stage_18 extends base_stage { var action_1;// = false var action_2;// = false var action_3;// = false public function stage_18(){ this.FFire_01.DisableFire(); } } }//package Stages
Section 156
//stage_19 (Stages.stage_19) package Stages { import flash.events.*; import Objects.*; public dynamic class stage_19 extends base_stage { var action_1;// = false var action_2;// = false var action_3;// = false public function stage_19(){ this.FFire_01.DisableFire(); } } }//package Stages
Section 157
//stage_20 (Stages.stage_20) package Stages { import flash.display.*; public dynamic class stage_20 extends MovieClip { } }//package Stages
Section 158
//stage_21 (Stages.stage_21) package Stages { import flash.events.*; import Objects.*; public dynamic class stage_21 extends base_stage { var action_1;// = false var action_2;// = false var action_3;// = false public function stage_21(){ this.FFire_01.DisableFire(); } } }//package Stages
Section 159
//stage_22 (Stages.stage_22) package Stages { import flash.events.*; import Objects.*; public dynamic class stage_22 extends base_stage { var action_1;// = false var action_2;// = false var action_3;// = false public function stage_22(){ main.m_force_coeff = 1; main.m_bonus_y = 2; this.FFire_01.DisableFire(); } } }//package Stages
Section 160
//stage_23 (Stages.stage_23) package Stages { import flash.events.*; import Objects.*; public dynamic class stage_23 extends base_stage { var action_1;// = false var action_2;// = false var action_3;// = false public function stage_23(){ this.FFire_01.DisableFire(); } } }//package Stages
Section 161
//stage_24 (Stages.stage_24) package Stages { import flash.events.*; import Objects.*; public dynamic class stage_24 extends base_stage { var action_1;// = false var action_2;// = false var action_3;// = false public function stage_24(){ this.FFire_01.DisableFire(); } } }//package Stages
Section 162
//stage_25 (Stages.stage_25) package Stages { import flash.events.*; import Objects.*; public dynamic class stage_25 extends base_stage { var action_1;// = false var action_2;// = false var action_3;// = false public function stage_25(){ this.FFire_01.DisableFire(); this.FFire_02.DisableFire(); } } }//package Stages
Section 163
//stage_26 (Stages.stage_26) package Stages { import flash.display.*; public dynamic class stage_26 extends MovieClip { } }//package Stages
Section 164
//stage_27 (Stages.stage_27) package Stages { import flash.events.*; import Objects.*; public dynamic class stage_27 extends base_stage { var action_1;// = false var action_2;// = false var action_3;// = false public function stage_27(){ this.FFire_01.DisableFire(); } } }//package Stages
Section 165
//stage_28 (Stages.stage_28) package Stages { import flash.events.*; import Objects.*; public dynamic class stage_28 extends base_stage { var action_1;// = false var action_2;// = false var action_3;// = false public function stage_28(){ this.FFire_01.DisableFire(); } } }//package Stages
Section 166
//stage_29 (Stages.stage_29) package Stages { import flash.events.*; import Objects.*; public dynamic class stage_29 extends base_stage { var action_1;// = false var action_2;// = false var action_3;// = false public function stage_29(){ this.FFire_01.DisableFire(); } } }//package Stages
Section 167
//stage_30 (Stages.stage_30) package Stages { import flash.display.*; import Objects.*; public dynamic class stage_30 extends MovieClip { public var ISStatic_01:Most30; public var I2SStatic_03:Most19; public var Static_02:StaticTrigger; public var Static_03:StaticTrigger; public var S1Static_02:BoxSleep; public var S1Static_03:BoxSleep; public var Static_01:StaticTrigger; public var S1Static_01:BoxSleep; public var Static_04:StaticTrigger; public var SStatic_01:BoxSleep; public var SStatic_02:BoxSleep; public var SStatic_03:BoxSleep; public var SStatic_04:BoxSleep; public var I1SStatic_01:Most19; public var I1SStatic_02:Most19; public var I1SStatic_03:Most19; public var ISStatic_02:Most30; public var S2Static_01:BoxSleep; public var S2Static_03:BoxSleep; public var I2SStatic_02:Most19; public var ISStatic_03:Most30; public var S2Static_02:BoxSleep; public var I2SStatic_01:Most19; } }//package Stages
Section 168
//stage_31 (Stages.stage_31) package Stages { import flash.display.*; public dynamic class stage_31 extends MovieClip { } }//package Stages
Section 169
//Box_lvl12_1 (Box_lvl12_1) package { import Objects.*; public dynamic class Box_lvl12_1 extends Box_01 { } }//package
Section 170
//Box_lvl12_2 (Box_lvl12_2) package { import Objects.*; public dynamic class Box_lvl12_2 extends Box_01 { } }//package
Section 171
//Box_lvl14 (Box_lvl14) package { import Objects.*; public dynamic class Box_lvl14 extends Box_01 { } }//package
Section 172
//Box_lvl15 (Box_lvl15) package { import Objects.*; public dynamic class Box_lvl15 extends Box_01 { } }//package
Section 173
//Box_lvl19 (Box_lvl19) package { import Objects.*; public dynamic class Box_lvl19 extends Box_01 { } }//package
Section 174
//Box_lvl24 (Box_lvl24) package { import Objects.*; public dynamic class Box_lvl24 extends Box_01 { } }//package
Section 175
//Box_lvl25 (Box_lvl25) package { import Objects.*; public dynamic class Box_lvl25 extends Box_01 { } }//package
Section 176
//Box_lvl26 (Box_lvl26) package { import Objects.*; public dynamic class Box_lvl26 extends Box_01 { } }//package
Section 177
//Box_lvl30_1 (Box_lvl30_1) package { import Objects.*; public dynamic class Box_lvl30_1 extends Box_01 { } }//package
Section 178
//Box_lvl30_2 (Box_lvl30_2) package { import Objects.*; public dynamic class Box_lvl30_2 extends Box_02 { } }//package
Section 179
//Box_lvl8 (Box_lvl8) package { import Objects.*; public dynamic class Box_lvl8 extends Box_01 { } }//package
Section 180
//Box_lvl9 (Box_lvl9) package { import Objects.*; public dynamic class Box_lvl9 extends Box_01 { } }//package
Section 181
//BrakeClip (BrakeClip) package { import flash.display.*; import flash.events.*; import flash.media.*; import flash.net.*; import flash.geom.*; import flash.system.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class BrakeClip extends MovieClip { public function BrakeClip(){ addFrameScript(19, frame20); } function frame20(){ stop(); if (parent){ parent.removeChild(this); }; } } }//package
Section 182
//BreakingSound (BreakingSound) package { import flash.media.*; public dynamic class BreakingSound extends Sound { } }//package
Section 183
//bubblebox_submit_score (bubblebox_submit_score) package { import flash.display.*; import flash.events.*; import flash.media.*; import flash.net.*; import flash.geom.*; import flash.system.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; import flash.text.*; import flash.ui.*; import flash.utils.*; import flash.external.*; public dynamic class bubblebox_submit_score extends BubbleboxScores { public var hexArray_chr; public var vartext; public var validWeeklyScore; public var validScore; public function bubblebox_submit_score(){ addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4); } public function ii(_arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7){ return (cmn((_arg3 ^ (_arg2 | ~(_arg4))), _arg1, _arg2, _arg5, _arg6, _arg7)); } public function gg(_arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7){ return (cmn((MathbitAND(_arg2, _arg4) | MathbitAND(_arg3, ~(_arg4))), _arg1, _arg2, _arg5, _arg6, _arg7)); } public function cmn(_arg1, _arg2, _arg3, _arg4, _arg5, _arg6){ return (addme(rol(addme(addme(_arg2, _arg1), addme(_arg4, _arg6)), _arg5), _arg3)); } function frame2(){ stop(); } function frame3(){ this.bubblebox_view_score.addEventListener(MouseEvent.CLICK, function (_arg1:Event){ navigateToURL(new URLRequest((("http://www.bubblebox.com/highscores/" + _arg1.currentTarget.parent.bubbleboxGameID) + ".htm")), "_blank"); _arg1.target.parent.dispatchEvent(new Event("viewScores")); }); vartext = ""; validScore = true; validWeeklyScore = true; if (isNaN(this.result_scorepos)){ validScore = false; }; if (isNaN(this.result_scorepos)){ validWeeklyScore = false; }; if ((((validScore == true)) && ((this.result_scorepos <= 1000)))){ vartext = (("Congratulations, you're ranked nr " + this.result_scorepos) + " in the alltime highscores!!"); } else { if ((((validWeeklyScore == true)) && ((this.result_weeklyScorepos <= 1000)))){ vartext = (("Congratulations, you're ranked nr " + this.result_weeklyScorepos) + " in the weekly highscores."); } else { vartext = "Sorry, you did not make it into the weekly or alltime top 1000."; }; }; this.postext.text = vartext; } public function hh(_arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7){ return (cmn(((_arg2 ^ _arg3) ^ _arg4), _arg1, _arg2, _arg5, _arg6, _arg7)); } function frame1(){ MathbitAND = function (_arg1, _arg2){ var _local3:*; var _local4:*; if ((((_arg1 < 0)) && ((_arg2 < 0)))){ _local3 = ((_arg1 & 1) & (_arg2 & 1)); _local4 = ((_arg1 >>> 1) & (_arg2 >>> 1)); return (((_local4 << 1) | _local3)); }; return ((_arg1 & _arg2)); }; hexArray_chr = "0123456789abcdef"; String.prototype.MD5 = function (){ var _local1:* = this; xArray = str2blks_MD5(_local1); a = 1732584193; b = -271733879; c = -1732584194; d = 271733878; i = 0; while (i < xArray.length) { olda = a; oldb = b; oldc = c; oldd = d; a = ff(a, b, c, d, xArray[(i + 0)], 7, -680876936); d = ff(d, a, b, c, xArray[(i + 1)], 12, -389564586); c = ff(c, d, a, b, xArray[(i + 2)], 17, 606105819); b = ff(b, c, d, a, xArray[(i + 3)], 22, -1044525330); a = ff(a, b, c, d, xArray[(i + 4)], 7, -176418897); d = ff(d, a, b, c, xArray[(i + 5)], 12, 1200080426); c = ff(c, d, a, b, xArray[(i + 6)], 17, -1473231341); b = ff(b, c, d, a, xArray[(i + 7)], 22, -45705983); a = ff(a, b, c, d, xArray[(i + 8)], 7, 1770035416); d = ff(d, a, b, c, xArray[(i + 9)], 12, -1958414417); c = ff(c, d, a, b, xArray[(i + 10)], 17, -42063); b = ff(b, c, d, a, xArray[(i + 11)], 22, -1990404162); a = ff(a, b, c, d, xArray[(i + 12)], 7, 1804603682); d = ff(d, a, b, c, xArray[(i + 13)], 12, -40341101); c = ff(c, d, a, b, xArray[(i + 14)], 17, -1502002290); b = ff(b, c, d, a, xArray[(i + 15)], 22, 1236535329); a = gg(a, b, c, d, xArray[(i + 1)], 5, -165796510); d = gg(d, a, b, c, xArray[(i + 6)], 9, -1069501632); c = gg(c, d, a, b, xArray[(i + 11)], 14, 643717713); b = gg(b, c, d, a, xArray[(i + 0)], 20, -373897302); a = gg(a, b, c, d, xArray[(i + 5)], 5, -701558691); d = gg(d, a, b, c, xArray[(i + 10)], 9, 38016083); c = gg(c, d, a, b, xArray[(i + 15)], 14, -660478335); b = gg(b, c, d, a, xArray[(i + 4)], 20, -405537848); a = gg(a, b, c, d, xArray[(i + 9)], 5, 568446438); d = gg(d, a, b, c, xArray[(i + 14)], 9, -1019803690); c = gg(c, d, a, b, xArray[(i + 3)], 14, -187363961); b = gg(b, c, d, a, xArray[(i + 8)], 20, 1163531501); a = gg(a, b, c, d, xArray[(i + 13)], 5, -1444681467); d = gg(d, a, b, c, xArray[(i + 2)], 9, -51403784); c = gg(c, d, a, b, xArray[(i + 7)], 14, 1735328473); b = gg(b, c, d, a, xArray[(i + 12)], 20, -1926607734); a = hh(a, b, c, d, xArray[(i + 5)], 4, -378558); d = hh(d, a, b, c, xArray[(i + 8)], 11, -2022574463); c = hh(c, d, a, b, xArray[(i + 11)], 16, 1839030562); b = hh(b, c, d, a, xArray[(i + 14)], 23, -35309556); a = hh(a, b, c, d, xArray[(i + 1)], 4, -1530992060); d = hh(d, a, b, c, xArray[(i + 4)], 11, 1272893353); c = hh(c, d, a, b, xArray[(i + 7)], 16, -155497632); b = hh(b, c, d, a, xArray[(i + 10)], 23, -1094730640); a = hh(a, b, c, d, xArray[(i + 13)], 4, 681279174); d = hh(d, a, b, c, xArray[(i + 0)], 11, -358537222); c = hh(c, d, a, b, xArray[(i + 3)], 16, -722521979); b = hh(b, c, d, a, xArray[(i + 6)], 23, 76029189); a = hh(a, b, c, d, xArray[(i + 9)], 4, -640364487); d = hh(d, a, b, c, xArray[(i + 12)], 11, -421815835); c = hh(c, d, a, b, xArray[(i + 15)], 16, 530742520); b = hh(b, c, d, a, xArray[(i + 2)], 23, -995338651); a = ii(a, b, c, d, xArray[(i + 0)], 6, -198630844); d = ii(d, a, b, c, xArray[(i + 7)], 10, 1126891415); c = ii(c, d, a, b, xArray[(i + 14)], 15, -1416354905); b = ii(b, c, d, a, xArray[(i + 5)], 21, -57434055); a = ii(a, b, c, d, xArray[(i + 12)], 6, 1700485571); d = ii(d, a, b, c, xArray[(i + 3)], 10, -1894986606); c = ii(c, d, a, b, xArray[(i + 10)], 15, -1051523); b = ii(b, c, d, a, xArray[(i + 1)], 21, -2054922799); a = ii(a, b, c, d, xArray[(i + 8)], 6, 1873313359); d = ii(d, a, b, c, xArray[(i + 15)], 10, -30611744); c = ii(c, d, a, b, xArray[(i + 6)], 15, -1560198380); b = ii(b, c, d, a, xArray[(i + 13)], 21, 1309151649); a = ii(a, b, c, d, xArray[(i + 4)], 6, -145523070); d = ii(d, a, b, c, xArray[(i + 11)], 10, -1120210379); c = ii(c, d, a, b, xArray[(i + 2)], 15, 718787259); b = ii(b, c, d, a, xArray[(i + 9)], 21, -343485551); a = addme(a, olda); b = addme(b, oldb); c = addme(c, oldc); d = addme(d, oldd); i = (i + 16); }; return ((((rhexArray(a) + rhexArray(b)) + rhexArray(c)) + rhexArray(d))); }; stop(); scoreMc = this; sendBubbleBoxScore = function (_arg1, _arg2:Sprite){ var gameID = _arg1; var root = _arg2; userData = new URLLoader(); var sendStr:* = ((((gameID + "_") + root.score) + "_") + root.bubblebox_name.text); var preHashStr:* = ((((((((((gameID + "_") + "4234232143214421") + "_") + root.score) + "_") + "2537625476251") + "_") + root.bubblebox_name.text) + "_") + "desleutelistessa"); var hashStr:* = preHashStr.MD5(); var data:URLVariables = new URLVariables(((("datastring=" + sendStr) + "&hashstring=") + hashStr)); userData.addEventListener(IOErrorEvent.IO_ERROR, function (_arg1:Event){ scoreMc.gotoAndStop("tryagain"); }); userData.addEventListener(Event.COMPLETE, function (_arg1:Event){ var _local5:String; var _local6:Array; var _local2:* = _arg1.target; var _local3:Array = _local2.data.split("&"); var _local4:Object = {}; for each (_local5 in _local3) { _local6 = _local5.split("="); if (_local6.length == 2){ _local4[_local6[0]] = _local6[1]; }; }; scoreMc.result_scoreID = _local4.id; scoreMc.result_weeklyID = _local4.weekly_id; scoreMc.result_scorepos = _local4.scorepos; scoreMc.result_weeklyScorepos = _local4.weeklyScorepos; scoreMc.gotoAndStop("success"); }); var request:URLRequest = new URLRequest("http://www.bubblebox.com/scripts/insertscore2009.php"); request.method = URLRequestMethod.POST; request.data = data; userData.load(request); }; this.send_btn.addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent){ var _local2:Sprite = _arg1.target.parent; if (((!((_local2.bubblebox_name.text == "YOUR NAME"))) && ((_local2.bubblebox_name.text.length > 0)))){ trace(_local2.bubbleboxGameID); sendBubbleBoxScore(_local2.bubbleboxGameID, _local2); _local2.gotoAndStop("saving"); _local2.dispatchEvent(new Event("sendScores")); }; }); } function frame4(){ this.try_again.addEventListener(MouseEvent.CLICK, function (_arg1:MouseEvent){ _arg1.currentTarget.parent.gotoAndStop(1); }); } public function ff(_arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7){ return (cmn((MathbitAND(_arg2, _arg3) | MathbitAND(~(_arg2), _arg4)), _arg1, _arg2, _arg5, _arg6, _arg7)); } public function rhexArray(_arg1){ str = ""; j = 0; while (j <= 3) { str = (str + (hexArray_chr.charAt(MathbitAND((_arg1 >> ((j * 8) + 4)), 15)) + hexArray_chr.charAt(MathbitAND((_arg1 >> (j * 8)), 15)))); j++; }; return (str); } public function str2blks_MD5(_arg1){ _arg1 = String(_arg1); nblk = (((_arg1.length + 8) >> 6) + 1); blks = new Array((nblk * 16)); i = 0; while (i < (nblk * 16)) { blks[i] = 0; i++; }; i = 0; while (i < _arg1.length) { blks[(i >> 2)] = (blks[(i >> 2)] | (_arg1.charCodeAt(i) << ((i % 4) * 8))); i++; }; blks[(i >> 2)] = (blks[(i >> 2)] | (128 << ((i % 4) * 8))); blks[((nblk * 16) - 2)] = (_arg1.length * 8); return (blks); } public function rol(_arg1, _arg2){ return (((_arg1 << _arg2) | (_arg1 >>> (32 - _arg2)))); } public function addme(_arg1, _arg2){ var _local3:* = (MathbitAND(_arg1, 0xFFFF) + MathbitAND(_arg2, 0xFFFF)); var _local4:* = (((_arg1 >> 16) + (_arg2 >> 16)) + (_local3 >> 16)); return (((_local4 << 16) | MathbitAND(_local3, 0xFFFF))); } } }//package
Section 184
//BubbleboxScores (BubbleboxScores) package { import flash.display.*; public dynamic class BubbleboxScores extends MovieClip { public function setScore(_arg1:Number, _arg2:int):void{ this.bubbleboxGameID = _arg2; this.score = _arg1; this.gotoAndStop(1); } } }//package
Section 185
//Bum_Sound (Bum_Sound) package { import flash.media.*; public dynamic class Bum_Sound extends Sound { } }//package
Section 186
//Bum2_Sound (Bum2_Sound) package { import flash.media.*; public dynamic class Bum2_Sound extends Sound { } }//package
Section 187
//Bum3_Sound (Bum3_Sound) package { import flash.media.*; public dynamic class Bum3_Sound extends Sound { } }//package
Section 188
//Bum4_Sound (Bum4_Sound) package { import flash.media.*; public dynamic class Bum4_Sound extends Sound { } }//package
Section 189
//Bum5_Sound (Bum5_Sound) package { import flash.media.*; public dynamic class Bum5_Sound extends Sound { } }//package
Section 190
//Bum6_Sound (Bum6_Sound) package { import flash.media.*; public dynamic class Bum6_Sound extends Sound { } }//package
Section 191
//Button_Over (Button_Over) package { import flash.media.*; public dynamic class Button_Over extends Sound { } }//package
Section 192
//Car_Crush (Car_Crush) package { import flash.media.*; public dynamic class Car_Crush extends Sound { } }//package
Section 193
//ClickClip (ClickClip) package { import flash.display.*; import flash.events.*; import flash.media.*; import flash.net.*; import flash.geom.*; import flash.system.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class ClickClip extends MovieClip { public function ClickClip(){ addFrameScript(4, frame5); } function frame5(){ stop(); if (parent){ parent.removeChild(this); }; } } }//package
Section 194
//CrackSound1 (CrackSound1) package { import flash.media.*; public dynamic class CrackSound1 extends Sound { } }//package
Section 195
//CrackSound2 (CrackSound2) package { import flash.media.*; public dynamic class CrackSound2 extends Sound { } }//package
Section 196
//CrackSound3 (CrackSound3) package { import flash.media.*; public dynamic class CrackSound3 extends Sound { } }//package
Section 197
//ExplosionSound (ExplosionSound) package { import flash.media.*; public dynamic class ExplosionSound extends Sound { } }//package
Section 198
//Fire_Start (Fire_Start) package { import flash.media.*; public dynamic class Fire_Start extends Sound { } }//package
Section 199
//Fire_Start_Small (Fire_Start_Small) package { import flash.media.*; public dynamic class Fire_Start_Small extends Sound { } }//package
Section 200
//FireBody (FireBody) package { import flash.display.*; public dynamic class FireBody extends MovieClip { } }//package
Section 201
//GasBigSound (GasBigSound) package { import flash.media.*; public dynamic class GasBigSound extends Sound { } }//package
Section 202
//GasSmallSound (GasSmallSound) package { import flash.media.*; public dynamic class GasSmallSound extends Sound { } }//package
Section 203
//GoldSound (GoldSound) package { import flash.media.*; public dynamic class GoldSound extends Sound { } }//package
Section 204
//GreenBarClip (GreenBarClip) package { import flash.display.*; public dynamic class GreenBarClip extends MovieClip { } }//package
Section 205
//LevelGoodClip (LevelGoodClip) package { import flash.display.*; public dynamic class LevelGoodClip extends MovieClip { } }//package
Section 206
//main (main) package { import Box2D.Collision.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; import Box2D.Common.*; import Box2D.Dynamics.Contacts.*; import flash.display.*; import flash.events.*; import Objects.*; import gui.*; import CPMStar.*; import flash.net.*; import flash.geom.*; import flash.ui.*; import flash.utils.*; public dynamic class main extends MovieClip { public static var m_physScale:Number = 30; public static var m_bonus_y = 0; public static var mySO:SharedObject = SharedObject.getLocal("WereBoxesFlash_09"); public static var b_first = false; public static var b_finish = false; public static var b_loose = false; public static var b_menu_up = false; public static var b_mochi = true; public static var myContactListener = 0; public static var b_locked = false; public static var m_counter = 0; public static var m_stage = 0; public static var m_scores = 0; public static var g_num = -5; public static var m_scores_data; public static var t_timer = 0; public static var LevelNumberClip = 0; public static var m_stage_name; public static var m_world:b2World; public static var m_objects = new Array(); public static var m_stage_number; public static var m_fire_controll; public static var m_iterations:int = 10; public static var m_timeStep:Number = 0.0333333333333333; public static var m_main; public static var m_force_coeff = 0; public static var m_sprite:Sprite; public static var b_pause = false; public static var m_level_menu_px = 640; public static var b_level_loaded = false; public static var m_level_menu_py = 0; public static var m_WalkClip = 0; public static var b_sound = true; public static var m_clicks = 0; public function main(){ var _local2:*; var _local3:DisplayObject; super(); addFrameScript(0, frame1, 54, frame55, 84, frame85); addEventListener(Event.ENTER_FRAME, Update); stage.addEventListener(MouseEvent.MOUSE_DOWN, MouseDown); stage.addEventListener(MouseEvent.MOUSE_UP, MouseUp); stage.addEventListener(MouseEvent.MOUSE_MOVE, MouseMove); stage.addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler); stage.addEventListener(KeyboardEvent.KEY_UP, keyUpHandler); m_main = this; m_scores_data = new LevelScores(); m_sprite = new Sprite(); addChild(m_sprite); InitPhysics(); if (!mySO.data.Saves){ if (b_mochi){ MochiBot.track(main.m_main, "72a1f50e"); }; mySO.data.Saves = new Object(); mySO.data.Saves.m_scores = new Array(); mySO.data.Saves.m_levels = new Array(); _local2 = 0; while (_local2 < 30) { mySO.data.Saves.m_levels.push(0); mySO.data.Saves.m_scores.push(0); _local2++; }; mySO.data.Saves.m_levels[0] = 1; mySO.data.Saves.b_uniq_bubble = false; mySO.data.Saves.b_uniq_lara = false; mySO.data.Saves.b_01 = false; mySO.data.Saves.b_05 = false; mySO.data.Saves.b_10 = false; mySO.data.Saves.b_30 = false; mySO.flush(); }; if (!isUrl(["astargames.ru", "bubblebox.com"])){ }; var _local1 = "2534QD8450FAE"; if (main.isUrl(["kongregate.com"])){ this.adBox.visible = false; } else { _local3 = new AdLoader(_local1); this.adBox.addChild(_local3); }; m_fire_controll = new FireControll(); } public function MouseUp(_arg1){ if (b_pause){ return; }; } function frame1(){ stop(); this.b_first = true; } public function MouseDown(_arg1){ var _local2:*; if (b_pause){ return; }; if (m_counter > 0){ return; }; for each (_local2 in m_objects) { if (_local2.m_type == 1){ if (_local2.ibox.selector.hitTestPoint(mouseX, mouseY)){ if (_local2.b_breaks){ CreateEffect("WrrClip", mouseX, mouseY); _local2.UnBreak(); } else { CreateEffect("BrakeClip", mouseX, mouseY); _local2.Break(_local2.b_tormoza); }; return; }; }; }; CreateEffect("ClickClip", mouseX, mouseY); } public function Update(_arg1){ var _local2:*; var _local3:uint; if (b_pause){ return; }; if (((b_level_loaded) && ((m_counter > 0)))){ m_counter--; }; m_sprite.graphics.clear(); for each (_local2 in m_objects) { _local2.Update(); if ((((_local2.y > 1000)) && (!((_local2.m_type == 1))))){ DeleteObject(_local2); }; }; _local3 = getTimer(); m_world.Step(m_timeStep, m_iterations); CheckFinish(); if (m_main.clicks_number_text != undefined){ m_main.clicks_number_text.text = m_clicks; }; if (((((m_stage) && (b_menu_up))) && (!((m_main.GameMenu == undefined))))){ main.m_main.addChild(m_main.GameMenu); b_menu_up = false; }; CalculateContacts(); m_fire_controll.Update(); if (LevelNumberClip){ LevelNumberClip.scores_number_text.text = main.m_scores; LevelNumberClip.scores2_number_text.text = ("/ " + m_scores_data.m_data[m_stage_number]); }; } function frame85(){ gotoAndStop("Menu"); } function frame55(){ if (this.b_first){ main.m_main.Music1 = new Music1(); main.m_main.Music2 = new Music2(); main.m_main.m_music = main.m_main.Music1.play(0, 9999); main.m_main.m_music_type = 1; main.m_main.BumSound = new Bum_Sound(); main.m_main.BumSound2 = new Bum2_Sound(); main.m_main.BumSound3 = new Bum3_Sound(); main.m_main.BumSound4 = new Bum4_Sound(); main.m_main.BumSound5 = new Bum5_Sound(); main.m_main.BumSound6 = new Bum6_Sound(); main.m_main.CarCrashSound = new Car_Crush(); main.m_main.FireSound = new Fire_Start(); main.m_main.FireSmallSound = new Fire_Start_Small(); main.m_main.StarSound = new Star_Arrive(); main.m_main.CrackSound1 = new CrackSound1(); main.m_main.CrackSound2 = new CrackSound2(); main.m_main.CrackSound3 = new CrackSound3(); main.m_main.BreakingSound = new BreakingSound(); main.m_main.GasBigSound = new GasBigSound(); main.m_main.GasSmallSound = new GasSmallSound(); main.m_main.ExplosionSound = new ExplosionSound(); main.m_main.GoldSound = new GoldSound(); main.m_main.RestartSound = new RestartSound(); main.m_main.WinSound = new WinSound(); this.b_first = false; }; } private function keyUpHandler(_arg1:KeyboardEvent):void{ } public function CreateEffect(_arg1, _arg2, _arg3){ var _local4:* = new ((getDefinitionByName(_arg1) as Class)); _local4.x = _arg2; _local4.y = _arg3; var _local5:* = ((Math.random() * 60) - 30); _local4.rotation = _local5; main.m_main.addChild(_local4); } public function MouseMove(_arg1:MouseEvent):void{ if (b_pause){ return; }; } public function InitPhysics(){ var _local1:b2AABB = new b2AABB(); _local1.lowerBound.Set(-1000, -1000); _local1.upperBound.Set(1000, 1000); var _local2:b2Vec2 = new b2Vec2(0, 10); var _local3:Boolean; m_world = new b2World(_local1, _local2, _local3); var _local4:b2DebugDraw = new b2DebugDraw(); _local4.m_sprite = m_sprite; _local4.m_drawScale = m_physScale; _local4.m_fillAlpha = 0.2; _local4.m_lineThickness = 1; _local4.m_drawFlags = (b2DebugDraw.e_shapeBit | b2DebugDraw.e_jointBit); myContactListener = new ContactListenerClass(); m_world.SetContactListener(myContactListener); } private function keyDownHandler(_arg1:KeyboardEvent):void{ if ((((((_arg1.keyCode == 27)) || ((_arg1.keyCode == 32)))) || ((_arg1.keyCode == 80)))){ }; if (_arg1.keyCode == 82){ main.RestartLevel(); }; } public function CalculateContacts(){ var _local1:*; var _local2:Number; var _local3:Number; var _local4:Number; var _local5:*; var _local6:*; var _local7:*; var _local8:*; var _local9:*; if (myContactListener == 0){ return; }; while (myContactListener.contactStack[0]) { _local1 = myContactListener.contactStack.pop(); _local2 = _local1.pos.x; _local3 = _local1.pos.y; _local4 = -(_local1.force); _local5 = _local1.car; _local6 = _local1.man; if ((((_local4 > 0.005)) && (!((_local6.m_userData.m_body.b_deleted == true))))){ _local7 = (int((Math.random() * 6)) + 1); if (_local7 == 1){ main.m_main.BumSound.play(); } else { if (_local7 == 2){ main.m_main.BumSound2.play(); } else { if (_local7 == 3){ main.m_main.BumSound3.play(); } else { if (_local7 == 4){ main.m_main.BumSound4.play(); } else { if (_local7 == 5){ main.m_main.BumSound5.play(); } else { if (_local7 == 6){ main.m_main.BumSound6.play(); }; }; }; }; }; }; CreateEffect("RagdollClip", (_local2 * main.m_physScale), (_local3 * main.m_physScale)); _local8 = new BonusStar((_local2 * main.m_physScale), (_local3 * main.m_physScale), 100); _local9 = new Ragdoll(_local6.m_userData.m_body, _local5.m_userData.m_body, _local4, _local2, _local3); main.DeleteObject(_local6.m_userData.m_body); }; }; } public static function FinishLevel(){ var _local1:*; if (b_finish){ return; }; i = 0; while (i < m_objects.length) { if (m_objects[i].m_type == 2){ _local1 = m_objects[i]; if (_local1.m_type == 2){ DeleteObject(_local1); i = 0; }; }; i++; }; CheckFinish(); t_timer = (t_timer - 3000); } public static function AddObject(_arg1, _arg2=0){ _arg1.b_deleted = false; _arg1.m_type = int(_arg2); m_objects.push(_arg1); } public static function CreateStage(_arg1){ m_counter = 3; b_level_loaded = true; m_force_coeff = 0.5; m_bonus_y = 1; var _local2:* = new ((getDefinitionByName(("Stages." + _arg1)) as Class)); main.m_stage = _local2; main.m_main.addChild(main.m_stage); if (main.m_main.SoundButton){ main.m_main.addChild(main.m_main.SoundButton); }; m_stage_name = _arg1; b_pause = false; b_finish = false; b_loose = false; t_timer = 0; b_first = true; m_clicks = 0; b_menu_up = true; m_scores = 0; LevelNumberClip = new LevelNumber(); if (m_WalkClip){ m_main.addChild(m_WalkClip); }; if ((((main.m_stage_number <= 15)) && ((main.m_main.m_music_type == 2)))){ main.m_main.m_music.stop(); main.m_main.m_music = main.m_main.Music1.play(0, 9999); main.m_main.m_music_type = 1; } else { if ((((main.m_stage_number > 15)) && ((main.m_main.m_music_type == 1)))){ main.m_main.m_music.stop(); main.m_main.m_music = main.m_main.Music2.play(0, 9999); main.m_main.m_music_type = 2; }; }; if (((((main.b_mochi) && ((main.m_stage_number == 1)))) && ((main.mySO.data.Saves.b_01 == false)))){ MochiBot.track(main.m_main, "594a021a"); main.mySO.data.Saves.b_01 = true; }; } public static function RestartLevel(){ if (main.m_stage){ main.m_main.RestartSound.play(); main.m_WalkClip.Show(); main.FreeAll(); main.CreateStage(main.m_stage_name); }; } public static function CheckFinish(){ var _local1:*; var _local2:*; var _local3:*; var _local4:*; var _local5:*; var _local6:*; var _local7:*; var _local8:String; var _local9:*; var _local10:*; if (m_stage == 0){ return; }; if (b_finish == false){ _local4 = true; _local5 = true; _local1 = 0; while (_local1 < m_objects.length) { _local6 = m_objects[_local1]; if (_local6.m_type == 1){ _local2 = (_local6.x + _local6.ibox.x); _local3 = (_local6.y + _local6.ibox.y); if ((((((((_local2 < -100)) || ((_local2 > 740)))) || ((_local3 < -100)))) || ((_local3 > 580)))){ _local4 = false; }; }; if (_local6.m_type == 2){ if ((((((((_local6.x > 0)) && ((_local6.x < 640)))) && ((_local6.y > 0)))) && ((_local6.y < 480)))){ _local5 = false; }; }; _local1++; }; if ((((_local5 == true)) && ((t_timer == 0)))){ t_timer = getTimer(); }; if (_local4 == false){ if (b_loose == false){ _local7 = new FailLogo(); _local7.alpha = 0.4; m_stage.addChild(_local7); m_main.CarCrashSound.play(); }; b_loose = true; return; }; if (((!((t_timer == 0))) && (((getTimer() - t_timer) > 3000)))){ if (_local5 == true){ _local8 = (main.m_stage_name.charAt((main.m_stage_name.length - 2)) + main.m_stage_name.charAt((main.m_stage_name.length - 1))); _local9 = int(_local8); if (((((main.b_mochi) && ((_local9 == 5)))) && ((main.mySO.data.Saves.b_05 == false)))){ MochiBot.track(main.m_main, "3878289a"); main.mySO.data.Saves.b_05 = true; }; if (((((main.b_mochi) && ((_local9 == 10)))) && ((main.mySO.data.Saves.b_10 == false)))){ MochiBot.track(main.m_main, "c0ba0dbb"); main.mySO.data.Saves.b_10 = true; }; if (((((main.b_mochi) && ((_local9 == 30)))) && ((main.mySO.data.Saves.b_30 == false)))){ MochiBot.track(main.m_main, "f051c6bd"); main.mySO.data.Saves.b_30 = true; }; if ((((_local9 == 30)) && ((main.mySO.data.Saves.m_levels[29] == 1)))){ _local10 = 0; _local1 = 0; while (_local1 < 30) { _local10 = (_local10 + main.mySO.data.Saves.m_scores[_local1]); _local1++; }; main.m_main.GameMenu.bubbleBox.setScore(_local10, 1835); main.m_main.GameMenu.bubbleBox.visible = true; }; main.mySO.data.Saves.m_levels[(_local9 - 1)] = 2; if ((((_local9 < 30)) && ((main.mySO.data.Saves.m_levels[_local9] == 0)))){ main.mySO.data.Saves.m_levels[_local9] = 1; }; main.mySO.flush(); m_main.WinSound.play(); m_main.WinMenu.visible = true; b_finish = true; }; }; }; } public static function isUrl(_arg1:Array):Boolean{ var _local4:*; var _local5:*; var _local6:*; var _local7:*; var _local2:String = main.m_main.stage.loaderInfo.loaderURL; var _local3:* = _local2.split("://"); if (_local3[1]){ _local2 = _local3[1]; }; for (_local5 in _arg1) { _local4 = true; _local6 = _local2.search(_arg1[_local5]); if (_local6 > 0){ _local7 = _local2.charAt((_local6 - 1)); }; if (_local6 == -1){ _local4 = false; }; if ((((_local6 > 0)) && (!((_local7 == "."))))){ _local4 = false; }; if (_local4){ return (true); }; }; return (false); } public static function DeleteObject(_arg1){ var _local2:*; _local2 = 0; while (_local2 < m_objects.length) { if (m_objects[_local2] == _arg1){ m_objects[_local2].Destroy(); m_objects[_local2].b_deleted = true; m_objects.splice(_local2, 1); return (true); }; _local2++; }; return (false); } public static function FreeAll(){ var _local1:*; for each (_local1 in m_objects) { _local1.Destroy(); }; if (m_stage.Destroy){ m_stage.Destroy(); }; m_stage.parent.removeChild(m_stage); m_stage = 0; m_objects.splice(0); m_main.removeChild(LevelNumberClip); LevelNumberClip = 0; m_fire_controll.FreeAll(); b_level_loaded = false; } public static function ResetLevels(){ var _local1:* = 0; while (_local1 < 30) { mySO.data.Saves.m_levels[_local1] = 0; mySO.data.Saves.m_scores[_local1] = 0; _local1++; }; mySO.data.Saves.m_levels[0] = 1; main.m_main.gotoAndStop("Reset"); } } }//package
Section 207
//Man_01_Body (Man_01_Body) package { import flash.display.*; public dynamic class Man_01_Body extends MovieClip { } }//package
Section 208
//Man_01_Hand1 (Man_01_Hand1) package { import flash.display.*; public dynamic class Man_01_Hand1 extends MovieClip { } }//package
Section 209
//Man_01_Hand2 (Man_01_Hand2) package { import flash.display.*; public dynamic class Man_01_Hand2 extends MovieClip { } }//package
Section 210
//Man_01_Head (Man_01_Head) package { import flash.display.*; public dynamic class Man_01_Head extends MovieClip { } }//package
Section 211
//Man_01_Leg1 (Man_01_Leg1) package { import flash.display.*; public dynamic class Man_01_Leg1 extends MovieClip { } }//package
Section 212
//Man_01_Leg2 (Man_01_Leg2) package { import flash.display.*; public dynamic class Man_01_Leg2 extends MovieClip { } }//package
Section 213
//Man_02_Body (Man_02_Body) package { import flash.display.*; public dynamic class Man_02_Body extends MovieClip { } }//package
Section 214
//Man_02_Hand1 (Man_02_Hand1) package { import flash.display.*; public dynamic class Man_02_Hand1 extends MovieClip { } }//package
Section 215
//Man_02_Hand2 (Man_02_Hand2) package { import flash.display.*; public dynamic class Man_02_Hand2 extends MovieClip { } }//package
Section 216
//Man_02_Head (Man_02_Head) package { import flash.display.*; public dynamic class Man_02_Head extends MovieClip { } }//package
Section 217
//Man_02_Leg1 (Man_02_Leg1) package { import flash.display.*; public dynamic class Man_02_Leg1 extends MovieClip { } }//package
Section 218
//Man_02_Leg2 (Man_02_Leg2) package { import flash.display.*; public dynamic class Man_02_Leg2 extends MovieClip { } }//package
Section 219
//MochiBot (MochiBot) package { import flash.display.*; import flash.net.*; import flash.system.*; public dynamic class MochiBot extends Sprite { 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(); _local3.addChild(_local8); _local8.load(_local7); return (_local3); } } }//package
Section 220
//Most14 (Most14) package { import Objects.*; public dynamic class Most14 extends Bridge_Base { } }//package
Section 221
//Most14_2 (Most14_2) package { import Objects.*; public dynamic class Most14_2 extends Bridge_Base { } }//package
Section 222
//Most24 (Most24) package { import Objects.*; public dynamic class Most24 extends Bridge_Base { } }//package
Section 223
//Most27_1 (Most27_1) package { import Objects.*; public dynamic class Most27_1 extends Bridge_Base { } }//package
Section 224
//Most27_2 (Most27_2) package { import Objects.*; public dynamic class Most27_2 extends Bridge_Base { } }//package
Section 225
//Music1 (Music1) package { import flash.media.*; public dynamic class Music1 extends Sound { } }//package
Section 226
//Music2 (Music2) package { import flash.media.*; public dynamic class Music2 extends Sound { } }//package
Section 227
//Prepare_StartGame (Prepare_StartGame) package { import flash.display.*; import flash.events.*; import flash.media.*; import flash.net.*; import flash.geom.*; import flash.system.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class Prepare_StartGame extends MovieClip { public function Prepare_StartGame(){ addFrameScript(14, frame15); } function frame15(){ stop(); parent.removeChild(this); } } }//package
Section 228
//RagdollClip (RagdollClip) package { import flash.display.*; import flash.events.*; import flash.media.*; import flash.net.*; import flash.geom.*; import flash.system.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class RagdollClip extends MovieClip { public function RagdollClip(){ addFrameScript(19, frame20); } function frame20(){ stop(); if (parent){ parent.removeChild(this); }; } } }//package
Section 229
//RedLineClip (RedLineClip) package { import flash.display.*; public dynamic class RedLineClip extends MovieClip { } }//package
Section 230
//RestartSound (RestartSound) package { import flash.media.*; public dynamic class RestartSound extends Sound { } }//package
Section 231
//Stage09_Most (Stage09_Most) package { import Objects.*; public dynamic class Stage09_Most extends Bridge_Base { } }//package
Section 232
//Star_Arrive (Star_Arrive) package { import flash.media.*; public dynamic class Star_Arrive extends Sound { } }//package
Section 233
//Stars (Stars) package { import flash.display.*; public dynamic class Stars extends MovieClip { } }//package
Section 234
//WinSound (WinSound) package { import flash.media.*; public dynamic class WinSound extends Sound { } }//package
Section 235
//WrrClip (WrrClip) package { import flash.display.*; import flash.events.*; import flash.media.*; import flash.net.*; import flash.geom.*; import flash.system.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class WrrClip extends MovieClip { public function WrrClip(){ addFrameScript(19, frame20); } function frame20(){ stop(); if (parent){ parent.removeChild(this); }; } } }//package

Library Items

Symbol 1 GraphicUsed by:2
Symbol 2 MovieClip {Man_02_Hand2}Uses:1
Symbol 3 GraphicUsed by:4
Symbol 4 MovieClip {Man_02_Hand1}Uses:3
Symbol 5 GraphicUsed by:6
Symbol 6 MovieClip {Objects.Box_02}Uses:5
Symbol 7 GraphicUsed by:10
Symbol 8 FontUsed by:9 17 20 43 52 53 125 127 128 129 154 158 160 251 252 253 254 255 256 1575 1683 2326 2327 2328 2329 2330 2331 2332 2336 2337 2338 2339 2340 2341 2342 2343 2344 2345 2346 2347 2348 2349 2350 2351 2352 2353 2354 2355 2356 2357 2358 2359 2360 2361 2362 2363 2364 2365 2366 2367 2368 2369 2376 2380 2383 2422 2424 2425 2444 2479 2480 2492 2496 2509 2511
Symbol 9 TextUses:8Used by:10
Symbol 10 MovieClip {gui.FailLogo}Uses:7 9
Symbol 11 GraphicUsed by:23
Symbol 12 GraphicUsed by:15
Symbol 13 GraphicUsed by:14
Symbol 14 MovieClipUses:13Used by:15 315 1032 1177 1236 1377 1681 1729 2028 2182
Symbol 15 MovieClipUses:12 14Used by:23
Symbol 16 GraphicUsed by:23
Symbol 17 TextUses:8Used by:23
Symbol 18 FontUsed by:19 21 22 2320 2321
Symbol 19 EditableTextUses:18Used by:23
Symbol 20 TextUses:8Used by:23
Symbol 21 EditableTextUses:18Used by:23
Symbol 22 EditableTextUses:18Used by:23
Symbol 23 MovieClip {gui.LevelNumber}Uses:11 15 16 17 19 20 21 22
Symbol 24 GraphicUsed by:25
Symbol 25 MovieClip {RedLineClip}Uses:24
Symbol 26 GraphicUsed by:27
Symbol 27 MovieClip {GreenBarClip}Uses:26
Symbol 28 GraphicUsed by:30
Symbol 29 GraphicUsed by:30
Symbol 30 MovieClip {FireBody}Uses:28 29
Symbol 31 GraphicUsed by:32 33
Symbol 32 MovieClip {gui.BonusStar}Uses:31
Symbol 33 MovieClip {Stars}Uses:31
Symbol 34 GraphicUsed by:35
Symbol 35 MovieClip {BrakeClip}Uses:34
Symbol 36 GraphicUsed by:37
Symbol 37 MovieClip {RagdollClip}Uses:36
Symbol 38 GraphicUsed by:39
Symbol 39 MovieClip {WrrClip}Uses:38
Symbol 40 GraphicUsed by:41
Symbol 41 MovieClip {ClickClip}Uses:40
Symbol 42 GraphicUsed by:44
Symbol 43 TextUses:8Used by:44
Symbol 44 MovieClip {Prepare_StartGame}Uses:42 43
Symbol 45 GraphicUsed by:46
Symbol 46 MovieClip {LevelGoodClip}Uses:45
Symbol 47 GraphicUsed by:49
Symbol 48 Sound {Button_Over}Used by:49 51 85 130 2317 2335 2372 2375 2379 2382 2421 2443 2478 2481 2491 2495 2508  Timeline
Symbol 49 Button {gui.GMButtonRestart}Uses:47 48Used by:83
Symbol 50 GraphicUsed by:51
Symbol 51 Button {gui.GMButtonMenu}Uses:50 48Used by:83
Symbol 52 TextUses:8Used by:83
Symbol 53 TextUses:8Used by:83
Symbol 54 GraphicUsed by:82
Symbol 55 GraphicUsed by:82
Symbol 56 GraphicUsed by:60
Symbol 57 GraphicUsed by:60
Symbol 58 GraphicUsed by:59
Symbol 59 MovieClipUses:58Used by:60
Symbol 60 MovieClip {bubblebox_submit_score_fla.bubblebox_send_btn_2}Uses:56 57 59Used by:82
Symbol 61 FontUsed by:62 77
Symbol 62 TextUses:61Used by:82
Symbol 63 BitmapUsed by:64
Symbol 64 GraphicUses:63Used by:65 82
Symbol 65 MovieClip {bubblebox_submit_score_fla.bblogo_4}Uses:64Used by:82
Symbol 66 GraphicUsed by:72 82
Symbol 67 FontUsed by:68 81
Symbol 68 EditableTextUses:67Used by:82
Symbol 69 GraphicUsed by:73 76 80
Symbol 70 GraphicUsed by:71
Symbol 71 MovieClipUses:70Used by:73
Symbol 72 MovieClipUses:66Used by:73
Symbol 73 MovieClip {bubblebox_submit_score_fla.bubblebox_saving_5}Uses:69 71 72Used by:82
Symbol 74 GraphicUsed by:75 76
Symbol 75 MovieClipUses:74Used by:76
Symbol 76 MovieClip {bubblebox_submit_score_fla.bubblebox_view_scores_8}Uses:69 74 75Used by:82
Symbol 77 EditableTextUses:61Used by:82
Symbol 78 GraphicUsed by:79 80
Symbol 79 MovieClipUses:78Used by:80
Symbol 80 MovieClip {bubblebox_submit_score_fla.bubblebox_try_again_10}Uses:69 78 79Used by:82
Symbol 81 EditableTextUses:67Used by:82
Symbol 82 MovieClip {bubblebox_submit_score}Uses:54 55 60 62 65 66 68 73 76 77 80 81 64Used by:83
Symbol 83 MovieClip {gui.GameMenu}Uses:49 51 52 53 82Used by:Timeline
Symbol 84 GraphicUsed by:85
Symbol 85 Button {gui.StageButton}Uses:84 48Used by:2493
Symbol 86 GraphicUsed by:91
Symbol 87 GraphicUsed by:90
Symbol 88 GraphicUsed by:90
Symbol 89 GraphicUsed by:90
Symbol 90 MovieClip {PipolSmasher_fla.Batters2_960}Uses:87 88 89Used by:91
Symbol 91 MovieClipUses:86 90Used by:92 2439
Symbol 92 MovieClip {Objects.Circle}Uses:91Used by:1915
Symbol 93 GraphicUsed by:94
Symbol 94 MovieClip {Objects.Box_01}Uses:93Used by:236 1431 1681 1842 2057 2182
Symbol 95 GraphicUsed by:96
Symbol 96 MovieClipUses:95Used by:112 231 258 268 281 289 291 1678
Symbol 97 GraphicUsed by:98
Symbol 98 MovieClipUses:97Used by:112 231 258 268 281 289 291 1678
Symbol 99 GraphicUsed by:100
Symbol 100 MovieClipUses:99Used by:109 135 257
Symbol 101 GraphicUsed by:105
Symbol 102 GraphicUsed by:105
Symbol 103 GraphicUsed by:105
Symbol 104 GraphicUsed by:105
Symbol 105 MovieClipUses:101 102 103 104Used by:106
Symbol 106 MovieClipUses:105Used by:109 134 135 138 141 230 257 267 280 288 290 1677
Symbol 107 GraphicUsed by:108 2315
Symbol 108 MovieClipUses:107Used by:109 230 257 267 280 288 290 1677 2503
Symbol 109 MovieClipUses:100 106 108Used by:112  Timeline
Symbol 110 GraphicUsed by:111 132 229
Symbol 111 MovieClipUses:110Used by:112 258
Symbol 112 MovieClip {Objects.Car1}Uses:96 98 109 111Used by:236 259 272 275 292 475 1236 1239 1311 1572 1681 1842 2182 2276
Symbol 113 GraphicUsed by:114
Symbol 114 MovieClip {Man_02_Leg2}Uses:113Used by:226
Symbol 115 GraphicUsed by:116
Symbol 116 MovieClip {Man_02_Leg1}Uses:115Used by:226
Symbol 117 GraphicUsed by:118 2379
Symbol 118 MovieClip {Man_02_Body}Uses:117Used by:226
Symbol 119 GraphicUsed by:120 2379
Symbol 120 MovieClip {Man_02_Head}Uses:119Used by:226
Symbol 121 GraphicUsed by:122
Symbol 122 MovieClip {Objects.BoxSleep}Uses:121Used by:236 259 272 275 284 292 315 322 475 1032 1172 1177 1236 1239 1311 1314 1377 1380 1431 1436 1438 1480 1572 1681 1729 1842 1915 2028 2057 2182 2276
Symbol 123 BitmapUsed by:124
Symbol 124 GraphicUses:123Used by:Timeline
Symbol 125 TextUses:8Used by:Timeline
Symbol 126 GraphicUsed by:130
Symbol 127 TextUses:8Used by:130
Symbol 128 TextUses:8Used by:130
Symbol 129 TextUses:8Used by:130
Symbol 130 ButtonUses:126 127 128 129 48Used by:157
Symbol 131 GraphicUsed by:134 266
Symbol 132 MovieClipUses:110Used by:133 268 281
Symbol 133 MovieClipUses:132Used by:134 135 138 141
Symbol 134 MovieClipUses:131 133 106Used by:142 157
Symbol 135 MovieClipUses:100 133 106Used by:142 157
Symbol 136 GraphicUsed by:137
Symbol 137 MovieClipUses:136Used by:138 288 290
Symbol 138 MovieClipUses:137 133 106Used by:142 157
Symbol 139 GraphicUsed by:140
Symbol 140 MovieClipUses:139Used by:141 230 1677
Symbol 141 MovieClipUses:133 140 106Used by:142 157
Symbol 142 MovieClipUses:134 135 138 141Used by:157
Symbol 143 GraphicUsed by:156
Symbol 144 GraphicUsed by:156 226
Symbol 145 GraphicUsed by:156 226
Symbol 146 GraphicUsed by:156
Symbol 147 GraphicUsed by:156
Symbol 148 GraphicUsed by:156
Symbol 149 GraphicUsed by:156
Symbol 150 GraphicUsed by:155
Symbol 151 GraphicUsed by:152
Symbol 152 MovieClipUses:151Used by:155
Symbol 153 GraphicUsed by:155
Symbol 154 EditableTextUses:8Used by:155
Symbol 155 MovieClipUses:150 152 153 154Used by:156 157
Symbol 156 MovieClipUses:143 144 145 146 147 148 149 155Used by:157
Symbol 157 MovieClip {gui.Preloader}Uses:130 142 156 155 134 135 138 141Used by:Timeline
Symbol 158 TextUses:8Used by:Timeline
Symbol 159 GraphicUsed by:2493  Timeline
Symbol 160 TextUses:8Used by:2493  Timeline
Symbol 161 GraphicUsed by:162
Symbol 162 MovieClipUses:161Used by:Timeline
Symbol 163 GraphicUsed by:181
Symbol 164 BitmapUsed by:165
Symbol 165 GraphicUses:164Used by:174
Symbol 166 BitmapUsed by:167
Symbol 167 GraphicUses:166Used by:174
Symbol 168 BitmapUsed by:169
Symbol 169 GraphicUses:168Used by:174
Symbol 170 BitmapUsed by:171
Symbol 171 GraphicUses:170Used by:174
Symbol 172 BitmapUsed by:173
Symbol 173 GraphicUses:172Used by:174
Symbol 174 MovieClipUses:165 167 169 171 173Used by:181
Symbol 175 GraphicUsed by:181
Symbol 176 GraphicUsed by:181
Symbol 177 GraphicUsed by:178
Symbol 178 MovieClipUses:177Used by:181
Symbol 179 BitmapUsed by:180
Symbol 180 GraphicUses:179Used by:181
Symbol 181 MovieClipUses:163 174 175 176 178 180Used by:236 259 275 284 292 322 475 1172 1177 1239 1431 1436 1480 1915 2276
Symbol 182 GraphicUsed by:183
Symbol 183 MovieClipUses:182Used by:236
Symbol 184 GraphicUsed by:211
Symbol 185 GraphicUsed by:188 205
Symbol 186 BitmapUsed by:187
Symbol 187 GraphicUses:186Used by:188
Symbol 188 MovieClipUses:185 187Used by:211
Symbol 189 GraphicUsed by:192
Symbol 190 BitmapUsed by:191
Symbol 191 GraphicUses:190Used by:192
Symbol 192 MovieClipUses:189 191Used by:211
Symbol 193 GraphicUsed by:211
Symbol 194 GraphicUsed by:197
Symbol 195 BitmapUsed by:196
Symbol 196 GraphicUses:195Used by:197
Symbol 197 MovieClipUses:194 196Used by:211
Symbol 198 GraphicUsed by:201
Symbol 199 BitmapUsed by:200
Symbol 200 GraphicUses:199Used by:201
Symbol 201 MovieClipUses:198 200Used by:211
Symbol 202 GraphicUsed by:211
Symbol 203 BitmapUsed by:204
Symbol 204 GraphicUses:203Used by:205
Symbol 205 MovieClipUses:185 204Used by:211
Symbol 206 GraphicUsed by:209
Symbol 207 BitmapUsed by:208
Symbol 208 GraphicUses:207Used by:209
Symbol 209 MovieClipUses:206 208Used by:211
Symbol 210 GraphicUsed by:211
Symbol 211 MovieClipUses:184 188 192 193 197 201 202 205 209 210Used by:236 259 272 275 284 292 315 322 475 1032 1172 1177 1236 1239 1311 1314 1377 1380 1431 1436 1572 1681 1729 1915 2028 2182 2276
Symbol 212 GraphicUsed by:213
Symbol 213 MovieClipUses:212Used by:228
Symbol 214 GraphicUsed by:215
Symbol 215 MovieClip {Man_01_Head}Uses:214Used by:227
Symbol 216 GraphicUsed by:217
Symbol 217 MovieClip {Man_01_Body}Uses:216Used by:227
Symbol 218 GraphicUsed by:219
Symbol 219 MovieClip {Man_01_Hand1}Uses:218Used by:227
Symbol 220 GraphicUsed by:221
Symbol 221 MovieClip {Man_01_Hand2}Uses:220Used by:227
Symbol 222 GraphicUsed by:223
Symbol 223 MovieClip {Man_01_Leg1}Uses:222Used by:227
Symbol 224 GraphicUsed by:225
Symbol 225 MovieClip {Man_01_Leg2}Uses:224Used by:227
Symbol 226 MovieClip {PipolSmasher_fla.ManImage_41}Uses:120 118 116 114 144 145Used by:227 2379
Symbol 227 MovieClipUses:215 217 219 221 223 225 226Used by:228
Symbol 228 MovieClip {Objects.Man_01}Uses:213 227Used by:236 259 272 275 284 292 315 322 475 1032 1172 1177 1236 1239 1311 1314 1377 1380 1431 1436 1438 1480 1572 1681 1729 1842 1915 2028 2057 2182 2276
Symbol 229 MovieClipUses:110Used by:231 289 291 1678
Symbol 230 MovieClipUses:140 108 106Used by:231
Symbol 231 MovieClip {Objects.Car4}Uses:96 98 229 230Used by:236 475 1314 1436 1842 1915 2182 2276
Symbol 232 GraphicUsed by:233
Symbol 233 MovieClip {Box_lvl12_1}Uses:232Used by:236
Symbol 234 GraphicUsed by:235
Symbol 235 MovieClip {Box_lvl12_2}Uses:234Used by:236
Symbol 236 MovieClip {Stages.stage_12}Uses:181 122 183 211 228 231 112 94 233 235Used by:Timeline
Symbol 237 GraphicUsed by:238
Symbol 238 MovieClipUses:237Used by:259
Symbol 239 GraphicUsed by:246
Symbol 240 BitmapUsed by:241
Symbol 241 GraphicUses:240Used by:242
Symbol 242 MovieClipUses:241Used by:246
Symbol 243 BitmapUsed by:244
Symbol 244 GraphicUses:243Used by:245
Symbol 245 MovieClipUses:244Used by:246
Symbol 246 MovieClipUses:239 242 245Used by:259 292 322 475 1314 1380 1431 1436 2276
Symbol 247 GraphicUsed by:248
Symbol 248 MovieClipUses:247Used by:259 272 284 292 315 322 475 1032 1172 1177 1236 1239 1314 1377 1380 1572 1681 1729 1842 1915 2028 2182 2276
Symbol 249 GraphicUsed by:259 284 322 1177
Symbol 250 GraphicUsed by:259
Symbol 251 TextUses:8Used by:259
Symbol 252 TextUses:8Used by:259
Symbol 253 TextUses:8Used by:259
Symbol 254 TextUses:8Used by:259
Symbol 255 TextUses:8Used by:259
Symbol 256 TextUses:8Used by:259
Symbol 257 MovieClipUses:100 106 108Used by:258
Symbol 258 MovieClip {Objects.Car1_Back}Uses:96 98 257 111Used by:259 292 1239 1311 1377 1438 1572
Symbol 259 MovieClip {Stages.stage_01}Uses:181 122 238 211 246 248 249 250 251 252 253 254 255 256 112 228 258Used by:Timeline
Symbol 260 Sound {Bum_Sound}Used by:Timeline
Symbol 261 BitmapUsed by:262
Symbol 262 GraphicUses:261Used by:263
Symbol 263 MovieClipUses:262Used by:272 315 1032 1236 1311 1314 1377 1380 1572 1681 1729 1842 2028 2057 2182
Symbol 264 GraphicUsed by:265
Symbol 265 MovieClipUses:264Used by:272
Symbol 266 MovieClipUses:131Used by:267 280
Symbol 267 MovieClipUses:266 106 108Used by:268
Symbol 268 MovieClip {Objects.Car2_Back}Uses:96 98 267 132Used by:272 292 1032 1172 1311 1380 1480 2057 2276
Symbol 269 GraphicUsed by:271
Symbol 270 GraphicUsed by:271
Symbol 271 MovieClip {Objects.Fire}Uses:269 270Used by:272 315 1032 1236 1311 1314 1377 1380 1572 1681 1729 1842 2028 2057 2182
Symbol 272 MovieClip {Stages.stage_17}Uses:263 122 265 211 248 228 268 271 112Used by:Timeline
Symbol 273 GraphicUsed by:274
Symbol 274 MovieClipUses:273Used by:275
Symbol 275 MovieClip {Stages.stage_02}Uses:181 122 274 211 228 112Used by:Timeline
Symbol 276 GraphicUsed by:277
Symbol 277 MovieClipUses:276Used by:284
Symbol 278 GraphicUsed by:279
Symbol 279 MovieClip {Objects.ReverseLeft}Uses:278Used by:284 475 1480 1681 2028 2182
Symbol 280 MovieClipUses:266 106 108Used by:281
Symbol 281 MovieClip {Objects.Car2}Uses:96 98 280 132Used by:284 292 315 322 1032 1172 1177 1311 1377 1380 1431
Symbol 282 GraphicUsed by:283
Symbol 283 MovieClip {Objects.ReverseRight}Uses:282Used by:284 475 1172 1480 2028 2182
Symbol 284 MovieClip {Stages.stage_13}Uses:181 122 277 211 248 249 279 228 281 283Used by:Timeline
Symbol 285 GraphicUsed by:286
Symbol 286 MovieClipUses:285Used by:292
Symbol 287 GraphicUsed by:292 1236 1314 2057 2182
Symbol 288 MovieClipUses:137 106 108Used by:289
Symbol 289 MovieClip {Objects.Car3}Uses:96 98 288 229Used by:292 1236 1239 1431 1572
Symbol 290 MovieClipUses:137 106 108Used by:291
Symbol 291 MovieClip {Objects.Car3_Back}Uses:96 98 290 229Used by:292 1431
Symbol 292 MovieClip {Stages.stage_03}Uses:181 122 286 246 211 248 287 112 258 281 268 289 291 228Used by:Timeline
Symbol 293 GraphicUsed by:294
Symbol 294 MovieClipUses:293Used by:315
Symbol 295 GraphicUsed by:296
Symbol 296 MovieClip {Objects.FireTrigger}Uses:295Used by:315 1311 1377 1380 1572 1681 1729 1842 2028 2182
Symbol 297 GraphicUsed by:298
Symbol 298 MovieClip {Objects.StaticTrigger}Uses:297Used by:315 475 1311 1572 1681 1729 2028 2057 2182 2276
Symbol 299 GraphicUsed by:314
Symbol 300 GraphicUsed by:314
Symbol 301 GraphicUsed by:314
Symbol 302 GraphicUsed by:314
Symbol 303 GraphicUsed by:314
Symbol 304 GraphicUsed by:314
Symbol 305 GraphicUsed by:314
Symbol 306 GraphicUsed by:314
Symbol 307 GraphicUsed by:314
Symbol 308 GraphicUsed by:314
Symbol 309 GraphicUsed by:314
Symbol 310 GraphicUsed by:314
Symbol 311 GraphicUsed by:314
Symbol 312 GraphicUsed by:314
Symbol 313 GraphicUsed by:314
Symbol 314 MovieClip {Objects.Most19}Uses:299 300 301 302 303 304 305 306 307 308 309 310 311 312 313Used by:315 1311 1572 2057 2182
Symbol 315 MovieClip {Stages.stage_21}Uses:263 122 294 211 248 14 228 281 271 296 298 314Used by:Timeline
Symbol 316 BitmapUsed by:320
Symbol 317 BitmapUsed by:320
Symbol 318 BitmapUsed by:320
Symbol 319 BitmapUsed by:320
Symbol 320 GraphicUses:317 318 319 316Used by:321
Symbol 321 MovieClipUses:320Used by:322
Symbol 322 MovieClip {Stages.stage_04}Uses:181 122 321 246 248 211 249 228 281Used by:Timeline
Symbol 323 Sound {Car_Crush}Used by:Timeline
Symbol 324 GraphicUsed by:440
Symbol 325 GraphicUsed by:326 1277 1289 1295 1398 1414 1534 1624 1685 2081 2158 2169 2185
Symbol 326 MovieClipUses:325Used by:440
Symbol 327 GraphicUsed by:328
Symbol 328 MovieClipUses:327Used by:440
Symbol 329 GraphicUsed by:330 334 351 363 665 858 1042 1068 1200 1296 1535 1537 1578 1580 1625 1634 1686 1688 1720 1895 1949 2082 2105 2124 2142 2159 2161 2170 2172 2207 2221 2232
Symbol 330 MovieClipUses:329Used by:440
Symbol 331 GraphicUsed by:332
Symbol 332 MovieClipUses:331Used by:440
Symbol 333 GraphicUsed by:440
Symbol 334 MovieClipUses:329Used by:440
Symbol 335 GraphicUsed by:440
Symbol 336 GraphicUsed by:337 478 563 1071 1075 1082 1085 1095 1220 1243 1245 1325 1335 1337 1357 1363 1384 1484 1486 1500 1511 1546 1550 1560 1564 1632 1640 1692 1735 1772 1775 1777 1815 1821 1875 1877 1919 1927 1935 2035 2079 2089 2100 2193 2202 2204
Symbol 337 MovieClipUses:336Used by:440
Symbol 338 GraphicUsed by:440
Symbol 339 GraphicUsed by:340 365 477 679 1035 1061 1205 1212 1217 1242 1281 1334 1345 1354 1383 1483 1543 1561 1592 1700 1715 1774 1785 1812 1820 1836 1845 1918 1923 1929 1932 1939 1946 2097 2118 2153 2201 2209 2214 2216 2227
Symbol 340 MovieClipUses:339Used by:440
Symbol 341 GraphicUsed by:342 1036 1062
Symbol 342 MovieClipUses:341Used by:440
Symbol 343 GraphicUsed by:344
Symbol 344 MovieClipUses:343Used by:440
Symbol 345 GraphicUsed by:346
Symbol 346 MovieClipUses:345Used by:440
Symbol 347 GraphicUsed by:440
Symbol 348 GraphicUsed by:349 357 361 366 382 386 629 925 1037 1040 1063 1066 1181 1206 1208 1213 1215 1282 1284 1287 1346 1348 1355 1361 1386 1419 1509 1544 1562 1584 1593 1595 1599 1622 1630 1642 1701 1703 1707 1716 1718 1733 1770 1786 1813 1837 1839 1846 1848 1857 1859 1921 1930 1933 1940 1942 2077 2109 2119 2121 2130 2139 2154 2156 2163 2174 2210 2212 2217 2219 2228 2230
Symbol 349 MovieClipUses:348Used by:440
Symbol 350 GraphicUsed by:440
Symbol 351 MovieClipUses:329Used by:440
Symbol 352 GraphicUsed by:440
Symbol 353 GraphicUsed by:354 1180 1263 1404 1418 1874
Symbol 354 MovieClipUses:353Used by:440
Symbol 355 GraphicUsed by:356
Symbol 356 MovieClipUses:355Used by:440
Symbol 357 MovieClipUses:348Used by:440
Symbol 358 GraphicUsed by:359 1038 1064
Symbol 359 MovieClipUses:358Used by:440
Symbol 360 GraphicUsed by:440
Symbol 361 MovieClipUses:348Used by:440
Symbol 362 GraphicUsed by:440
Symbol 363 MovieClipUses:329Used by:440
Symbol 364 GraphicUsed by:440
Symbol 365 MovieClipUses:339Used by:440
Symbol 366 MovieClipUses:348Used by:440
Symbol 367 GraphicUsed by:368 387 479 1048 1057 1072 1086 1101 1122 1124 1498 1582 1605 1690 2065 2128 2147 2225 2236
Symbol 368 MovieClipUses:367Used by:440
Symbol 369 GraphicUsed by:370 684 1102
Symbol 370 MovieClipUses:369Used by:440
Symbol 371 GraphicUsed by:372 481 685 1049 1073 1088
Symbol 372 MovieClipUses:371Used by:440
Symbol 373 GraphicUsed by:374 390
Symbol 374 MovieClipUses:373Used by:440
Symbol 375 GraphicUsed by:376 1080
Symbol 376 MovieClipUses:375Used by:440
Symbol 377 GraphicUsed by:378 384 486 594 689 790 1092 1097 1327 1350 1423 1448 1456 1464 1488 1502 1517 1548 1586 1609 1694 1737 1779 1866 1885 1897 1908 1954 1965 2070 2091 2111 2132 2149 2195
Symbol 378 MovieClipUses:377Used by:440
Symbol 379 GraphicUsed by:380
Symbol 380 MovieClipUses:379Used by:440
Symbol 381 GraphicUsed by:440
Symbol 382 MovieClipUses:348Used by:440
Symbol 383 GraphicUsed by:440
Symbol 384 MovieClipUses:377Used by:440
Symbol 385 GraphicUsed by:440
Symbol 386 MovieClipUses:348Used by:440
Symbol 387 MovieClipUses:367Used by:440
Symbol 388 GraphicUsed by:389 480 1087
Symbol 389 MovieClipUses:388Used by:440
Symbol 390 MovieClipUses:373Used by:440
Symbol 391 GraphicUsed by:440
Symbol 392 GraphicUsed by:393 401 415 417 1059 1078 1105 1186
Symbol 393 MovieClipUses:392Used by:440
Symbol 394 GraphicUsed by:395 661 1131
Symbol 395 MovieClipUses:394Used by:440
Symbol 396 GraphicUsed by:397 1329 1504 1588 1647 1739 2031
Symbol 397 MovieClipUses:396Used by:440
Symbol 398 GraphicUsed by:440
Symbol 399 GraphicUsed by:400
Symbol 400 MovieClipUses:399Used by:440
Symbol 401 MovieClipUses:392Used by:440
Symbol 402 GraphicUsed by:403 419 854 1108 1116 1161
Symbol 403 MovieClipUses:402Used by:440
Symbol 404 GraphicUsed by:405 1109 1117
Symbol 405 MovieClipUses:404Used by:440
Symbol 406 GraphicUsed by:440
Symbol 407 GraphicUsed by:408 917 1159 1196 1255 1396 2167 2178
Symbol 408 MovieClipUses:407Used by:440
Symbol 409 GraphicUsed by:440
Symbol 410 GraphicUsed by:411 413 1076 1323 2087
Symbol 411 MovieClipUses:410Used by:440
Symbol 412 GraphicUsed by:440
Symbol 413 MovieClipUses:410Used by:440
Symbol 414 GraphicUsed by:440
Symbol 415 MovieClipUses:392Used by:440
Symbol 416 GraphicUsed by:440
Symbol 417 MovieClipUses:392Used by:440
Symbol 418 GraphicUsed by:440
Symbol 419 MovieClipUses:402Used by:440
Symbol 420 GraphicUsed by:421 424 1132 1134 1372 1519 1603 1611 1711 1722 1806 1810 1872 1903 1960 2072 2151
Symbol 421 MovieClipUses:420Used by:440
Symbol 422 GraphicUsed by:423 1133 1165 1167 1169
Symbol 423 MovieClipUses:422Used by:440
Symbol 424 MovieClipUses:420Used by:440
Symbol 425 GraphicUsed by:440
Symbol 426 GraphicUsed by:427 1139
Symbol 427 MovieClipUses:426Used by:440
Symbol 428 GraphicUsed by:440
Symbol 429 GraphicUsed by:430 1222 1231
Symbol 430 MovieClipUses:429Used by:440
Symbol 431 GraphicUsed by:440
Symbol 432 GraphicUsed by:433 686 824 1103 1156 1162 1224 1253 1273 1394 1411 1541 2165 2176
Symbol 433 MovieClipUses:432Used by:440
Symbol 434 GraphicUsed by:435 1157 1163
Symbol 435 MovieClipUses:434Used by:440
Symbol 436 GraphicUsed by:440
Symbol 437 GraphicUsed by:438 1115 1142
Symbol 438 MovieClipUses:437Used by:440
Symbol 439 GraphicUsed by:440
Symbol 440 MovieClipUses:324 326 328 330 332 333 334 335 337 338 340 342 344 346 347 349 350 351 352 354 356 357 359 360 361 362 363 364 365 366 368 370 372 374 376 378 380 381 382 383 384 385 386 387 389 390 391 393 395 397 398 400 401 403 405 406 408 409 411 412 413 414 415 416 417 418 419 421 423 424 425 427 428 430 431 433 435 436 438 439Used by:475
Symbol 441 GraphicUsed by:442
Symbol 442 MovieClip {Box_lvl9}Uses:441Used by:475
Symbol 443 GraphicUsed by:474
Symbol 444 GraphicUsed by:474
Symbol 445 GraphicUsed by:474
Symbol 446 GraphicUsed by:474
Symbol 447 GraphicUsed by:474
Symbol 448 GraphicUsed by:474
Symbol 449 GraphicUsed by:474
Symbol 450 GraphicUsed by:474
Symbol 451 GraphicUsed by:474
Symbol 452 GraphicUsed by:474
Symbol 453 GraphicUsed by:474 2003 2027 2056 2258
Symbol 454 GraphicUsed by:474
Symbol 455 GraphicUsed by:474
Symbol 456 GraphicUsed by:474
Symbol 457 GraphicUsed by:474
Symbol 458 GraphicUsed by:474
Symbol 459 GraphicUsed by:474
Symbol 460 GraphicUsed by:474
Symbol 461 GraphicUsed by:474
Symbol 462 GraphicUsed by:474
Symbol 463 GraphicUsed by:474
Symbol 464 GraphicUsed by:474
Symbol 465 GraphicUsed by:474
Symbol 466 GraphicUsed by:474
Symbol 467 GraphicUsed by:474
Symbol 468 GraphicUsed by:474
Symbol 469 GraphicUsed by:474
Symbol 470 GraphicUsed by:474
Symbol 471 GraphicUsed by:474
Symbol 472 GraphicUsed by:474
Symbol 473 GraphicUsed by:474
Symbol 474 MovieClip {Stage09_Most}Uses:443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473Used by:475
Symbol 475 MovieClip {Stages.stage_09}Uses:181 122 440 246 211 248 112 279 283 231 228 298 442 474Used by:Timeline
Symbol 476 GraphicUsed by:1031
Symbol 477 MovieClipUses:339Used by:1031
Symbol 478 MovieClipUses:336Used by:1031
Symbol 479 MovieClipUses:367Used by:1031
Symbol 480 MovieClipUses:388Used by:1031
Symbol 481 MovieClipUses:371Used by:1031
Symbol 482 GraphicUsed by:483
Symbol 483 MovieClipUses:482Used by:1031
Symbol 484 GraphicUsed by:485 1050 1091
Symbol 485 MovieClipUses:484Used by:1031
Symbol 486 MovieClipUses:377Used by:1031
Symbol 487 GraphicUsed by:488 690 1093
Symbol 488 MovieClipUses:487Used by:1031
Symbol 489 MovieClipUsed by:490
Symbol 490 MovieClipUses:489Used by:1031
Symbol 491 GraphicUsed by:492 564 695
Symbol 492 MovieClipUses:491Used by:1031
Symbol 493 GraphicUsed by:494
Symbol 494 MovieClipUses:493Used by:1031
Symbol 495 GraphicUsed by:496 497 498 501 502 503 506 509 512 513 516 517 518 551 567 568 569 570 571 572 573 597 598 601 616 632 633 634 635 636 637 652 653 654 655 656 668 669 670 671 672 673 694 696 698 699 702 703 704 705 706 707 708 709 710 712 713 746 747 761 762 764 765 766 768 793 794 795 796 797 810 827 829 830 831 832 845 846 847 849 861 863 864 865 866 940 941 943 944 945 968 969 970 971 972 973 984 985 986 987 992 993 995 996 997 998
Symbol 496 MovieClipUses:495Used by:1031
Symbol 497 MovieClipUses:495Used by:1031
Symbol 498 MovieClipUses:495Used by:1031
Symbol 499 GraphicUsed by:500 691 697 711 760 763 767 828 848 860 862 942 994 1171
Symbol 500 MovieClipUses:499Used by:1031
Symbol 501 MovieClipUses:495Used by:1031
Symbol 502 MovieClipUses:495Used by:1031
Symbol 503 MovieClipUses:495Used by:1031
Symbol 504 GraphicUsed by:505
Symbol 505 MovieClipUses:504Used by:1031
Symbol 506 MovieClipUses:495Used by:1031
Symbol 507 GraphicUsed by:508
Symbol 508 MovieClipUses:507Used by:1031
Symbol 509 MovieClipUses:495Used by:1031
Symbol 510 GraphicUsed by:511
Symbol 511 MovieClipUses:510Used by:1031
Symbol 512 MovieClipUses:495Used by:1031
Symbol 513 MovieClipUses:495Used by:1031
Symbol 514 GraphicUsed by:515
Symbol 515 MovieClipUses:514Used by:1031
Symbol 516 MovieClipUses:495Used by:1031
Symbol 517 MovieClipUses:495Used by:1031
Symbol 518 MovieClipUses:495Used by:1031
Symbol 519 GraphicUsed by:520
Symbol 520 MovieClipUses:519Used by:1031
Symbol 521 GraphicUsed by:522
Symbol 522 MovieClipUses:521Used by:1031
Symbol 523 GraphicUsed by:524
Symbol 524 MovieClipUses:523Used by:1031
Symbol 525 GraphicUsed by:526
Symbol 526 MovieClipUses:525Used by:1031
Symbol 527 GraphicUsed by:528
Symbol 528 MovieClipUses:527Used by:1031
Symbol 529 GraphicUsed by:530
Symbol 530 MovieClipUses:529Used by:1031
Symbol 531 MovieClipUsed by:1031
Symbol 532 GraphicUsed by:533
Symbol 533 MovieClipUses:532Used by:1031
Symbol 534 GraphicUsed by:535
Symbol 535 MovieClipUses:534Used by:1031
Symbol 536 GraphicUsed by:537
Symbol 537 MovieClipUses:536Used by:1031
Symbol 538 GraphicUsed by:539
Symbol 539 MovieClipUses:538Used by:1031
Symbol 540 GraphicUsed by:541 591 785 877
Symbol 541 MovieClipUses:540Used by:1031
Symbol 542 GraphicUsed by:543
Symbol 543 MovieClipUses:542Used by:1031
Symbol 544 GraphicUsed by:545
Symbol 545 MovieClipUses:544Used by:1031
Symbol 546 MovieClipUsed by:1031
Symbol 547 GraphicUsed by:548
Symbol 548 MovieClipUses:547Used by:1031
Symbol 549 GraphicUsed by:550
Symbol 550 MovieClipUses:549Used by:1031
Symbol 551 MovieClipUses:495Used by:1031
Symbol 552 GraphicUsed by:553
Symbol 553 MovieClipUses:552Used by:1031
Symbol 554 GraphicUsed by:555
Symbol 555 MovieClipUses:554Used by:1031
Symbol 556 MovieClipUsed by:1031
Symbol 557 GraphicUsed by:558
Symbol 558 MovieClipUses:557Used by:1031
Symbol 559 GraphicUsed by:560
Symbol 560 MovieClipUses:559Used by:1031
Symbol 561 GraphicUsed by:562
Symbol 562 MovieClipUses:561Used by:1031
Symbol 563 MovieClipUses:336Used by:1031
Symbol 564 MovieClipUses:491Used by:1031
Symbol 565 GraphicUsed by:566
Symbol 566 MovieClipUses:565Used by:1031
Symbol 567 MovieClipUses:495Used by:1031
Symbol 568 MovieClipUses:495Used by:1031
Symbol 569 MovieClipUses:495Used by:1031
Symbol 570 MovieClipUses:495Used by:1031
Symbol 571 MovieClipUses:495Used by:1031
Symbol 572 MovieClipUses:495Used by:1031
Symbol 573 MovieClipUses:495Used by:1031
Symbol 574 GraphicUsed by:575
Symbol 575 MovieClipUses:574Used by:1031
Symbol 576 GraphicUsed by:577
Symbol 577 MovieClipUses:576Used by:1031
Symbol 578 GraphicUsed by:579
Symbol 579 MovieClipUses:578Used by:1031
Symbol 580 GraphicUsed by:581
Symbol 581 MovieClipUses:580Used by:1031
Symbol 582 MovieClipUsed by:1031
Symbol 583 GraphicUsed by:584
Symbol 584 MovieClipUses:583Used by:1031
Symbol 585 GraphicUsed by:586
Symbol 586 MovieClipUses:585Used by:1031
Symbol 587 GraphicUsed by:588
Symbol 588 MovieClipUses:587Used by:1031
Symbol 589 GraphicUsed by:590
Symbol 590 MovieClipUses:589Used by:1031
Symbol 591 MovieClipUses:540Used by:1031
Symbol 592 GraphicUsed by:593
Symbol 593 MovieClipUses:592Used by:1031
Symbol 594 MovieClipUses:377Used by:1031
Symbol 595 GraphicUsed by:596
Symbol 596 MovieClipUses:595Used by:1031
Symbol 597 MovieClipUses:495Used by:1031
Symbol 598 MovieClipUses:495Used by:1031
Symbol 599 GraphicUsed by:600
Symbol 600 MovieClipUses:599Used by:1031
Symbol 601 MovieClipUses:495Used by:1031
Symbol 602 GraphicUsed by:603
Symbol 603 MovieClipUses:602Used by:1031
Symbol 604 GraphicUsed by:605
Symbol 605 MovieClipUses:604Used by:1031
Symbol 606 GraphicUsed by:607
Symbol 607 MovieClipUses:606Used by:1031
Symbol 608 GraphicUsed by:609
Symbol 609 MovieClipUses:608Used by:1031
Symbol 610 GraphicUsed by:611
Symbol 611 MovieClipUses:610Used by:1031
Symbol 612 GraphicUsed by:613
Symbol 613 MovieClipUses:612Used by:1031
Symbol 614 GraphicUsed by:615
Symbol 615 MovieClipUses:614Used by:1031
Symbol 616 MovieClipUses:495Used by:1031
Symbol 617 GraphicUsed by:618
Symbol 618 MovieClipUses:617Used by:1031
Symbol 619 GraphicUsed by:620
Symbol 620 MovieClipUses:619Used by:1031
Symbol 621 GraphicUsed by:622
Symbol 622 MovieClipUses:621Used by:1031
Symbol 623 GraphicUsed by:624
Symbol 624 MovieClipUses:623Used by:1031
Symbol 625 GraphicUsed by:626
Symbol 626 MovieClipUses:625Used by:1031
Symbol 627 GraphicUsed by:628
Symbol 628 MovieClipUses:627Used by:1031
Symbol 629 MovieClipUses:348Used by:1031
Symbol 630 GraphicUsed by:631
Symbol 631 MovieClipUses:630Used by:1031
Symbol 632 MovieClipUses:495Used by:1031
Symbol 633 MovieClipUses:495Used by:1031
Symbol 634 MovieClipUses:495Used by:1031
Symbol 635 MovieClipUses:495Used by:1031
Symbol 636 MovieClipUses:495Used by:1031
Symbol 637 MovieClipUses:495Used by:1031
Symbol 638 GraphicUsed by:639
Symbol 639 MovieClipUses:638Used by:1031
Symbol 640 GraphicUsed by:641
Symbol 641 MovieClipUses:640Used by:1031
Symbol 642 GraphicUsed by:643
Symbol 643 MovieClipUses:642Used by:1031
Symbol 644 GraphicUsed by:645
Symbol 645 MovieClipUses:644Used by:1031
Symbol 646 GraphicUsed by:647
Symbol 647 MovieClipUses:646Used by:1031
Symbol 648 GraphicUsed by:649
Symbol 649 MovieClipUses:648Used by:1031
Symbol 650 GraphicUsed by:651
Symbol 651 MovieClipUses:650Used by:1031
Symbol 652 MovieClipUses:495Used by:1031
Symbol 653 MovieClipUses:495Used by:1031
Symbol 654 MovieClipUses:495Used by:1031
Symbol 655 MovieClipUses:495Used by:1031
Symbol 656 MovieClipUses:495Used by:1031
Symbol 657 GraphicUsed by:658
Symbol 658 MovieClipUses:657Used by:1031
Symbol 659 GraphicUsed by:660 1247 1388
Symbol 660 MovieClipUses:659Used by:1031
Symbol 661 MovieClipUses:394Used by:1031
Symbol 662 GraphicUsed by:663 1352 1783 1887 1899 1910 1956 2093 2197 2223 2234
Symbol 663 MovieClipUses:662Used by:1031
Symbol 664 GraphicUsed by:1031
Symbol 665 MovieClipUses:329Used by:1031
Symbol 666 GraphicUsed by:667 1490 1636 1868
Symbol 667 MovieClipUses:666Used by:1031
Symbol 668 MovieClipUses:495Used by:1031
Symbol 669 MovieClipUses:495Used by:1031
Symbol 670 MovieClipUses:495Used by:1031
Symbol 671 MovieClipUses:495Used by:1031
Symbol 672 MovieClipUses:495Used by:1031
Symbol 673 MovieClipUses:495Used by:1031
Symbol 674 GraphicUsed by:675
Symbol 675 MovieClipUses:674Used by:1031
Symbol 676 GraphicUsed by:677
Symbol 677 MovieClipUses:676Used by:1031
Symbol 678 GraphicUsed by:1031
Symbol 679 MovieClipUses:339Used by:1031
Symbol 680 GraphicUsed by:681
Symbol 681 MovieClipUses:680Used by:1031
Symbol 682 GraphicUsed by:683 1365 1513 1597
Symbol 683 MovieClipUses:682Used by:1031
Symbol 684 MovieClipUses:369Used by:1031
Symbol 685 MovieClipUses:371Used by:1031
Symbol 686 MovieClipUses:432Used by:1031
Symbol 687 GraphicUsed by:688
Symbol 688 MovieClipUses:687Used by:1031
Symbol 689 MovieClipUses:377Used by:1031
Symbol 690 MovieClipUses:487Used by:1031
Symbol 691 MovieClipUses:499Used by:1031
Symbol 692 GraphicUsed by:693
Symbol 693 MovieClipUses:692Used by:1031
Symbol 694 MovieClipUses:495Used by:1031
Symbol 695 MovieClipUses:491Used by:1031
Symbol 696 MovieClipUses:495Used by:1031
Symbol 697 MovieClipUses:499Used by:1031
Symbol 698 MovieClipUses:495Used by:1031
Symbol 699 MovieClipUses:495Used by:1031
Symbol 700 GraphicUsed by:701
Symbol 701 MovieClipUses:700Used by:1031
Symbol 702 MovieClipUses:495Used by:1031
Symbol 703 MovieClipUses:495Used by:1031
Symbol 704 MovieClipUses:495Used by:1031
Symbol 705 MovieClipUses:495Used by:1031
Symbol 706 MovieClipUses:495Used by:1031
Symbol 707 MovieClipUses:495Used by:1031
Symbol 708 MovieClipUses:495Used by:1031
Symbol 709 MovieClipUses:495Used by:1031
Symbol 710 MovieClipUses:495Used by:1031
Symbol 711 MovieClipUses:499Used by:1031
Symbol 712 MovieClipUses:495Used by:1031
Symbol 713 MovieClipUses:495Used by:1031
Symbol 714 GraphicUsed by:715
Symbol 715 MovieClipUses:714Used by:1031
Symbol 716 GraphicUsed by:717
Symbol 717 MovieClipUses:716Used by:1031
Symbol 718 GraphicUsed by:719
Symbol 719 MovieClipUses:718Used by:1031
Symbol 720 GraphicUsed by:721
Symbol 721 MovieClipUses:720Used by:1031
Symbol 722 GraphicUsed by:723
Symbol 723 MovieClipUses:722Used by:1031
Symbol 724 GraphicUsed by:725
Symbol 725 MovieClipUses:724Used by:1031
Symbol 726 GraphicUsed by:727
Symbol 727 MovieClipUses:726Used by:1031
Symbol 728 GraphicUsed by:729
Symbol 729 MovieClipUses:728Used by:1031
Symbol 730 GraphicUsed by:731
Symbol 731 MovieClipUses:730Used by:1031
Symbol 732 GraphicUsed by:733
Symbol 733 MovieClipUses:732Used by:1031
Symbol 734 GraphicUsed by:735
Symbol 735 MovieClipUses:734Used by:1031
Symbol 736 GraphicUsed by:737
Symbol 737 MovieClipUses:736Used by:1031
Symbol 738 GraphicUsed by:739
Symbol 739 MovieClipUses:738Used by:1031
Symbol 740 GraphicUsed by:741
Symbol 741 MovieClipUses:740Used by:1031
Symbol 742 GraphicUsed by:743
Symbol 743 MovieClipUses:742Used by:1031
Symbol 744 GraphicUsed by:745
Symbol 745 MovieClipUses:744Used by:1031
Symbol 746 MovieClipUses:495Used by:1031
Symbol 747 MovieClipUses:495Used by:1031
Symbol 748 GraphicUsed by:749
Symbol 749 MovieClipUses:748Used by:1031
Symbol 750 GraphicUsed by:751
Symbol 751 MovieClipUses:750Used by:1031
Symbol 752 GraphicUsed by:753
Symbol 753 MovieClipUses:752Used by:1031
Symbol 754 GraphicUsed by:755
Symbol 755 MovieClipUses:754Used by:1031
Symbol 756 GraphicUsed by:757
Symbol 757 MovieClipUses:756Used by:1031
Symbol 758 GraphicUsed by:759 823 1218 1367
Symbol 759 MovieClipUses:758Used by:1031
Symbol 760 MovieClipUses:499Used by:1031
Symbol 761 MovieClipUses:495Used by:1031
Symbol 762 MovieClipUses:495Used by:1031
Symbol 763 MovieClipUses:499Used by:1031
Symbol 764 MovieClipUses:495Used by:1031
Symbol 765 MovieClipUses:495Used by:1031
Symbol 766 MovieClipUses:495Used by:1031
Symbol 767 MovieClipUses:499Used by:1031
Symbol 768 MovieClipUses:495Used by:1031
Symbol 769 GraphicUsed by:770
Symbol 770 MovieClipUses:769Used by:1031
Symbol 771 GraphicUsed by:772
Symbol 772 MovieClipUses:771Used by:1031
Symbol 773 GraphicUsed by:774
Symbol 774 MovieClipUses:773Used by:1031
Symbol 775 GraphicUsed by:776
Symbol 776 MovieClipUses:775Used by:1031
Symbol 777 GraphicUsed by:778
Symbol 778 MovieClipUses:777Used by:1031
Symbol 779 GraphicUsed by:780
Symbol 780 MovieClipUses:779Used by:1031
Symbol 781 GraphicUsed by:782
Symbol 782 MovieClipUses:781Used by:1031
Symbol 783 GraphicUsed by:784
Symbol 784 MovieClipUses:783Used by:1031
Symbol 785 MovieClipUses:540Used by:1031
Symbol 786 GraphicUsed by:787
Symbol 787 MovieClipUses:786Used by:1031
Symbol 788 GraphicUsed by:789
Symbol 789 MovieClipUses:788Used by:1031
Symbol 790 MovieClipUses:377Used by:1031
Symbol 791 GraphicUsed by:792
Symbol 792 MovieClipUses:791Used by:1031
Symbol 793 MovieClipUses:495Used by:1031
Symbol 794 MovieClipUses:495Used by:1031
Symbol 795 MovieClipUses:495Used by:1031
Symbol 796 MovieClipUses:495Used by:1031
Symbol 797 MovieClipUses:495Used by:1031
Symbol 798 GraphicUsed by:799
Symbol 799 MovieClipUses:798Used by:1031
Symbol 800 GraphicUsed by:801
Symbol 801 MovieClipUses:800Used by:1031
Symbol 802 GraphicUsed by:803
Symbol 803 MovieClipUses:802Used by:1031
Symbol 804 GraphicUsed by:805
Symbol 805 MovieClipUses:804Used by:1031
Symbol 806 GraphicUsed by:807
Symbol 807 MovieClipUses:806Used by:1031
Symbol 808 GraphicUsed by:809
Symbol 809 MovieClipUses:808Used by:1031
Symbol 810 MovieClipUses:495Used by:1031
Symbol 811 GraphicUsed by:812
Symbol 812 MovieClipUses:811Used by:1031
Symbol 813 GraphicUsed by:814
Symbol 814 MovieClipUses:813Used by:1031
Symbol 815 GraphicUsed by:816
Symbol 816 MovieClipUses:815Used by:1031
Symbol 817 GraphicUsed by:818
Symbol 818 MovieClipUses:817Used by:1031
Symbol 819 GraphicUsed by:820
Symbol 820 MovieClipUses:819Used by:1031
Symbol 821 GraphicUsed by:822
Symbol 822 MovieClipUses:821Used by:1031
Symbol 823 MovieClipUses:758Used by:1031
Symbol 824 MovieClipUses:432Used by:1031
Symbol 825 GraphicUsed by:826
Symbol 826 MovieClipUses:825Used by:1031
Symbol 827 MovieClipUses:495Used by:1031
Symbol 828 MovieClipUses:499Used by:1031
Symbol 829 MovieClipUses:495Used by:1031
Symbol 830 MovieClipUses:495Used by:1031
Symbol 831 MovieClipUses:495Used by:1031
Symbol 832 MovieClipUses:495Used by:1031
Symbol 833 GraphicUsed by:834
Symbol 834 MovieClipUses:833Used by:1031
Symbol 835 GraphicUsed by:836
Symbol 836 MovieClipUses:835Used by:1031
Symbol 837 GraphicUsed by:838
Symbol 838 MovieClipUses:837Used by:1031
Symbol 839 GraphicUsed by:840
Symbol 840 MovieClipUses:839Used by:1031
Symbol 841 GraphicUsed by:842
Symbol 842 MovieClipUses:841Used by:1031
Symbol 843 GraphicUsed by:844
Symbol 844 MovieClipUses:843Used by:1031
Symbol 845 MovieClipUses:495Used by:1031
Symbol 846 MovieClipUses:495Used by:1031
Symbol 847 MovieClipUses:495Used by:1031
Symbol 848 MovieClipUses:499Used by:1031
Symbol 849 MovieClipUses:495Used by:1031
Symbol 850 GraphicUsed by:851
Symbol 851 MovieClipUses:850Used by:1031
Symbol 852 GraphicUsed by:853
Symbol 853 MovieClipUses:852Used by:1031
Symbol 854 MovieClipUses:402Used by:1031
Symbol 855 GraphicUsed by:856 859 1555
Symbol 856 MovieClipUses:855Used by:1031
Symbol 857 GraphicUsed by:1031
Symbol 858 MovieClipUses:329Used by:1031
Symbol 859 MovieClipUses:855Used by:1031
Symbol 860 MovieClipUses:499Used by:1031
Symbol 861 MovieClipUses:495Used by:1031
Symbol 862 MovieClipUses:499Used by:1031
Symbol 863 MovieClipUses:495Used by:1031
Symbol 864 MovieClipUses:495Used by:1031
Symbol 865 MovieClipUses:495Used by:1031
Symbol 866 MovieClipUses:495Used by:1031
Symbol 867 GraphicUsed by:868
Symbol 868 MovieClipUses:867Used by:1031
Symbol 869 GraphicUsed by:870
Symbol 870 MovieClipUses:869Used by:1031
Symbol 871 GraphicUsed by:872
Symbol 872 MovieClipUses:871Used by:1031
Symbol 873 GraphicUsed by:874
Symbol 874 MovieClipUses:873Used by:1031
Symbol 875 GraphicUsed by:876
Symbol 876 MovieClipUses:875Used by:1031
Symbol 877 MovieClipUses:540Used by:1031
Symbol 878 GraphicUsed by:879
Symbol 879 MovieClipUses:878Used by:1031
Symbol 880 GraphicUsed by:881
Symbol 881 MovieClipUses:880Used by:1031
Symbol 882 GraphicUsed by:883 886 894
Symbol 883 MovieClipUses:882Used by:1031
Symbol 884 GraphicUsed by:885
Symbol 885 MovieClipUses:884Used by:1031
Symbol 886 MovieClipUses:882Used by:1031
Symbol 887 GraphicUsed by:888 2027
Symbol 888 MovieClipUses:887Used by:1031
Symbol 889 GraphicUsed by:893
Symbol 890 BitmapUsed by:891
Symbol 891 GraphicUses:890Used by:892
Symbol 892 MovieClipUses:891Used by:893
Symbol 893 MovieClipUses:889 892Used by:1031
Symbol 894 MovieClipUses:882Used by:1031
Symbol 895 GraphicUsed by:1031
Symbol 896 GraphicUsed by:897
Symbol 897 MovieClipUses:896Used by:1031
Symbol 898 GraphicUsed by:899
Symbol 899 MovieClipUses:898Used by:1031
Symbol 900 GraphicUsed by:901 926
Symbol 901 MovieClipUses:900Used by:1031
Symbol 902 GraphicUsed by:903
Symbol 903 MovieClipUses:902Used by:1031
Symbol 904 GraphicUsed by:905
Symbol 905 MovieClipUses:904Used by:1031
Symbol 906 GraphicUsed by:907
Symbol 907 MovieClipUses:906Used by:1031
Symbol 908 GraphicUsed by:909
Symbol 909 MovieClipUses:908Used by:1031
Symbol 910 GraphicUsed by:911
Symbol 911 MovieClipUses:910Used by:1031
Symbol 912 MovieClipUsed by:913
Symbol 913 MovieClipUses:912Used by:1031
Symbol 914 GraphicUsed by:1031
Symbol 915 GraphicUsed by:916
Symbol 916 MovieClipUses:915Used by:1031
Symbol 917 MovieClipUses:407Used by:1031
Symbol 918 GraphicUsed by:919
Symbol 919 MovieClipUses:918Used by:1031
Symbol 920 GraphicUsed by:921 1781 2134
Symbol 921 MovieClipUses:920Used by:1031
Symbol 922 GraphicUsed by:1031
Symbol 923 GraphicUsed by:924
Symbol 924 MovieClipUses:923Used by:1031
Symbol 925 MovieClipUses:348Used by:1031
Symbol 926 MovieClipUses:900Used by:1031
Symbol 927 GraphicUsed by:928
Symbol 928 MovieClipUses:927Used by:1031
Symbol 929 GraphicUsed by:1031
Symbol 930 GraphicUsed by:931
Symbol 931 MovieClipUses:930Used by:1031
Symbol 932 GraphicUsed by:1031
Symbol 933 GraphicUsed by:934
Symbol 934 MovieClipUses:933Used by:1031
Symbol 935 GraphicUsed by:936
Symbol 936 MovieClipUses:935Used by:1031
Symbol 937 GraphicUsed by:1031
Symbol 938 GraphicUsed by:939
Symbol 939 MovieClipUses:938Used by:1031
Symbol 940 MovieClipUses:495Used by:1031
Symbol 941 MovieClipUses:495Used by:1031
Symbol 942 MovieClipUses:499Used by:1031
Symbol 943 MovieClipUses:495Used by:1031
Symbol 944 MovieClipUses:495Used by:1031
Symbol 945 MovieClipUses:495Used by:1031
Symbol 946 GraphicUsed by:947
Symbol 947 MovieClipUses:946Used by:1031
Symbol 948 GraphicUsed by:949
Symbol 949 MovieClipUses:948Used by:1031
Symbol 950 GraphicUsed by:951
Symbol 951 MovieClipUses:950Used by:1031
Symbol 952 GraphicUsed by:953
Symbol 953 MovieClipUses:952Used by:1031
Symbol 954 GraphicUsed by:955
Symbol 955 MovieClipUses:954Used by:1031
Symbol 956 GraphicUsed by:957
Symbol 957 MovieClipUses:956Used by:1031
Symbol 958 GraphicUsed by:959
Symbol 959 MovieClipUses:958Used by:1031
Symbol 960 GraphicUsed by:961
Symbol 961 MovieClipUses:960Used by:1031
Symbol 962 GraphicUsed by:963
Symbol 963 MovieClipUses:962Used by:1031
Symbol 964 GraphicUsed by:965
Symbol 965 MovieClipUses:964Used by:1031
Symbol 966 GraphicUsed by:967
Symbol 967 MovieClipUses:966Used by:1031
Symbol 968 MovieClipUses:495Used by:1031
Symbol 969 MovieClipUses:495Used by:1031
Symbol 970 MovieClipUses:495Used by:1031
Symbol 971 MovieClipUses:495Used by:1031
Symbol 972 MovieClipUses:495Used by:1031
Symbol 973 MovieClipUses:495Used by:1031
Symbol 974 GraphicUsed by:975
Symbol 975 MovieClipUses:974Used by:1031
Symbol 976 GraphicUsed by:977
Symbol 977 MovieClipUses:976Used by:1031
Symbol 978 GraphicUsed by:979
Symbol 979 MovieClipUses:978Used by:1031
Symbol 980 GraphicUsed by:981
Symbol 981 MovieClipUses:980Used by:1031
Symbol 982 GraphicUsed by:983
Symbol 983 MovieClipUses:982Used by:1031
Symbol 984 MovieClipUses:495Used by:1031
Symbol 985 MovieClipUses:495Used by:1031
Symbol 986 MovieClipUses:495Used by:1031
Symbol 987 MovieClipUses:495Used by:1031
Symbol 988 GraphicUsed by:989
Symbol 989 MovieClipUses:988Used by:1031
Symbol 990 GraphicUsed by:991
Symbol 991 MovieClipUses:990Used by:1031
Symbol 992 MovieClipUses:495Used by:1031
Symbol 993 MovieClipUses:495Used by:1031
Symbol 994 MovieClipUses:499Used by:1031
Symbol 995 MovieClipUses:495Used by:1031
Symbol 996 MovieClipUses:495Used by:1031
Symbol 997 MovieClipUses:495Used by:1031
Symbol 998 MovieClipUses:495Used by:1031
Symbol 999 GraphicUsed by:1000
Symbol 1000 MovieClipUses:999Used by:1031
Symbol 1001 GraphicUsed by:1002
Symbol 1002 MovieClipUses:1001Used by:1031
Symbol 1003 GraphicUsed by:1004
Symbol 1004 MovieClipUses:1003Used by:1031
Symbol 1005 GraphicUsed by:1006
Symbol 1006 MovieClipUses:1005Used by:1031
Symbol 1007 GraphicUsed by:1008
Symbol 1008 MovieClipUses:1007Used by:1031
Symbol 1009 GraphicUsed by:1010
Symbol 1010 MovieClipUses:1009Used by:1031
Symbol 1011 GraphicUsed by:1012
Symbol 1012 MovieClipUses:1011Used by:1031
Symbol 1013 GraphicUsed by:1014 1019 1020 1021 1022 1023 1024 1025 1028 1029
Symbol 1014 MovieClipUses:1013Used by:1031
Symbol 1015 GraphicUsed by:1016
Symbol 1016 MovieClipUses:1015Used by:1031
Symbol 1017 GraphicUsed by:1018
Symbol 1018 MovieClipUses:1017Used by:1031
Symbol 1019 MovieClipUses:1013Used by:1031
Symbol 1020 MovieClipUses:1013Used by:1031
Symbol 1021 MovieClipUses:1013Used by:1031
Symbol 1022 MovieClipUses:1013Used by:1031
Symbol 1023 MovieClipUses:1013Used by:1031
Symbol 1024 MovieClipUses:1013Used by:1031
Symbol 1025 MovieClipUses:1013Used by:1031
Symbol 1026 GraphicUsed by:1027
Symbol 1027 MovieClipUses:1026Used by:1031
Symbol 1028 MovieClipUses:1013Used by:1031
Symbol 1029 MovieClipUses:1013Used by:1031
Symbol 1030 GraphicUsed by:1031
Symbol 1031 MovieClipUses:476 477 478 479 480 481 483 485 486 488 490 492 494 496 497 498 500 501 502 503 505 506 508 509 511 512 513 515 516 517 518 520 522 524 526 528 530 531 533 535 537 539 541 543 545 546 548 550 551 553 555 556 558 560 562 563 564 566 567 568 569 570 571 572 573 575 577 579 581 582 584 586 588 590 591 593 594 596 597 598 600 601 603 605 607 609 611 613 615 616 618 620 622 624 626 628 629 631 632 633 634 635 636 637 639 641 643 645 647 649 651 652 653 654 655 656 658 660 661 663 664 665 667 668 669 670 671 672 673 675 677 678 679 681 683 684 685 686 688 689 690 691 693 694 695 696 697 698 699 701 702 703 704 705 706 707 708 709 710 711 712 713 715 717 719 721 723 725 727 729 731 733 735 737 739 741 743 745 746 747 749 751 753 755 757 759 760 761 762 763 764 765 766 767 768 770 772 774 776 778 780 782 784 785 787 789 790 792 793 794 795 796 797 799 801 803 805 807 809 810 812 814 816 818 820 822 823 824 826 827 828 829 830 831 832 834 836 838 840 842 844 845 846 847 848 849 851 853 854 856 857 858 859 860 861 862 863 864 865 866 868 870 872 874 876 877 879 881 883 885 886 888 893 894 895 897 899 901 903 905 907 909 911 913 914 916 917 919 921 922 924 925 926 928 929 931 932 934 936 937 939 940 941 942 943 944 945 947 949 951 953 955 957 959 961 963 965 967 968 969 970 971 972 973 975 977 979 981 983 984 985 986 987 989 991 992 993 994 995 996 997 998 1000 1002 1004 1006 1008 1010 1012 1014 1016 1018 1019 1020 1021 1022 1023 1024 1025 1027 1028 1029 1030Used by:1032
Symbol 1032 MovieClip {Stages.stage_20}Uses:263 122 1031 211 248 14 228 281 268 271Used by:Timeline
Symbol 1033 Sound {Fire_Start}Used by:Timeline
Symbol 1034 GraphicUsed by:1171
Symbol 1035 MovieClipUses:339Used by:1171
Symbol 1036 MovieClipUses:341Used by:1171
Symbol 1037 MovieClipUses:348Used by:1171
Symbol 1038 MovieClipUses:358Used by:1171
Symbol 1039 GraphicUsed by:1171
Symbol 1040 MovieClipUses:348Used by:1171
Symbol 1041 GraphicUsed by:1171
Symbol 1042 MovieClipUses:329Used by:1171
Symbol 1043 GraphicUsed by:1171
Symbol 1044 GraphicUsed by:1045 1070 1084 1286 1508 1629 1856 2076 2138
Symbol 1045 MovieClipUses:1044Used by:1171
Symbol 1046 GraphicUsed by:1047
Symbol 1047 MovieClipUses:1046Used by:1171
Symbol 1048 MovieClipUses:367Used by:1171
Symbol 1049 MovieClipUses:371Used by:1171
Symbol 1050 MovieClipUses:484Used by:1171
Symbol 1051 GraphicUsed by:1171
Symbol 1052 GraphicUsed by:1053
Symbol 1053 MovieClipUses:1052Used by:1171
Symbol 1054 GraphicUsed by:1171
Symbol 1055 GraphicUsed by:1056
Symbol 1056 MovieClipUses:1055Used by:1171
Symbol 1057 MovieClipUses:367Used by:1171
Symbol 1058 GraphicUsed by:1171
Symbol 1059 MovieClipUses:392Used by:1171
Symbol 1060 GraphicUsed by:1171
Symbol 1061 MovieClipUses:339Used by:1171
Symbol 1062 MovieClipUses:341Used by:1171
Symbol 1063 MovieClipUses:348Used by:1171
Symbol 1064 MovieClipUses:358Used by:1171
Symbol 1065 GraphicUsed by:1171
Symbol 1066 MovieClipUses:348Used by:1171
Symbol 1067 GraphicUsed by:1171
Symbol 1068 MovieClipUses:329Used by:1171
Symbol 1069 GraphicUsed by:1171
Symbol 1070 MovieClipUses:1044Used by:1171
Symbol 1071 MovieClipUses:336Used by:1171
Symbol 1072 MovieClipUses:367Used by:1171
Symbol 1073 MovieClipUses:371Used by:1171
Symbol 1074 GraphicUsed by:1171
Symbol 1075 MovieClipUses:336Used by:1171
Symbol 1076 MovieClipUses:410Used by:1171
Symbol 1077 GraphicUsed by:1171
Symbol 1078 MovieClipUses:392Used by:1171
Symbol 1079 GraphicUsed by:1171
Symbol 1080 MovieClipUses:375Used by:1171
Symbol 1081 GraphicUsed by:1171
Symbol 1082 MovieClipUses:336Used by:1171
Symbol 1083 GraphicUsed by:1171
Symbol 1084 MovieClipUses:1044Used by:1171
Symbol 1085 MovieClipUses:336Used by:1171
Symbol 1086 MovieClipUses:367Used by:1171
Symbol 1087 MovieClipUses:388Used by:1171
Symbol 1088 MovieClipUses:371Used by:1171
Symbol 1089 GraphicUsed by:1090
Symbol 1090 MovieClipUses:1089Used by:1171
Symbol 1091 MovieClipUses:484Used by:1171
Symbol 1092 MovieClipUses:377Used by:1171
Symbol 1093 MovieClipUses:487Used by:1171
Symbol 1094 GraphicUsed by:1171
Symbol 1095 MovieClipUses:336Used by:1171
Symbol 1096 GraphicUsed by:1171
Symbol 1097 MovieClipUses:377Used by:1171
Symbol 1098 GraphicUsed by:1171
Symbol 1099 GraphicUsed by:1100
Symbol 1100 MovieClipUses:1099Used by:1171
Symbol 1101 MovieClipUses:367Used by:1171
Symbol 1102 MovieClipUses:369Used by:1171
Symbol 1103 MovieClipUses:432Used by:1171
Symbol 1104 GraphicUsed by:1171
Symbol 1105 MovieClipUses:392Used by:1171
Symbol 1106 GraphicUsed by:1107
Symbol 1107 MovieClipUses:1106Used by:1171
Symbol 1108 MovieClipUses:402Used by:1171
Symbol 1109 MovieClipUses:404Used by:1171
Symbol 1110 GraphicUsed by:1171
Symbol 1111 GraphicUsed by:1112 1249
Symbol 1112 MovieClipUses:1111Used by:1171
Symbol 1113 GraphicUsed by:1114
Symbol 1114 MovieClipUses:1113Used by:1171
Symbol 1115 MovieClipUses:437Used by:1171
Symbol 1116 MovieClipUses:402Used by:1171
Symbol 1117 MovieClipUses:404Used by:1171
Symbol 1118 GraphicUsed by:1171
Symbol 1119 GraphicUsed by:1120 1129
Symbol 1120 MovieClipUses:1119Used by:1171
Symbol 1121 GraphicUsed by:1171
Symbol 1122 MovieClipUses:367Used by:1171
Symbol 1123 GraphicUsed by:1171
Symbol 1124 MovieClipUses:367Used by:1171
Symbol 1125 GraphicUsed by:1171
Symbol 1126 GraphicUsed by:1127
Symbol 1127 MovieClipUses:1126Used by:1171
Symbol 1128 GraphicUsed by:1171
Symbol 1129 MovieClipUses:1119Used by:1171
Symbol 1130 GraphicUsed by:1171
Symbol 1131 MovieClipUses:394Used by:1171
Symbol 1132 MovieClipUses:420Used by:1171
Symbol 1133 MovieClipUses:422Used by:1171
Symbol 1134 MovieClipUses:420Used by:1171
Symbol 1135 GraphicUsed by:1136
Symbol 1136 MovieClipUses:1135Used by:1171
Symbol 1137 GraphicUsed by:1138
Symbol 1138 MovieClipUses:1137Used by:1171
Symbol 1139 MovieClipUses:426Used by:1171
Symbol 1140 GraphicUsed by:1141
Symbol 1141 MovieClipUses:1140Used by:1171
Symbol 1142 MovieClipUses:437Used by:1171
Symbol 1143 GraphicUsed by:1144
Symbol 1144 MovieClipUses:1143Used by:1171
Symbol 1145 GraphicUsed by:1171
Symbol 1146 GraphicUsed by:1147 1188 1261 1293 1321 1494 1525 1567 1569 1804 1818 1827 1963 2061 2103 2189
Symbol 1147 MovieClipUses:1146Used by:1171
Symbol 1148 GraphicUsed by:1149
Symbol 1149 MovieClipUses:1148Used by:1171
Symbol 1150 GraphicUsed by:1171
Symbol 1151 GraphicUsed by:1152
Symbol 1152 MovieClipUses:1151Used by:1171
Symbol 1153 GraphicUsed by:1154
Symbol 1154 MovieClipUses:1153Used by:1171
Symbol 1155 GraphicUsed by:1171
Symbol 1156 MovieClipUses:432Used by:1171
Symbol 1157 MovieClipUses:434Used by:1171
Symbol 1158 GraphicUsed by:1171
Symbol 1159 MovieClipUses:407Used by:1171
Symbol 1160 GraphicUsed by:1171
Symbol 1161 MovieClipUses:402Used by:1171
Symbol 1162 MovieClipUses:432Used by:1171
Symbol 1163 MovieClipUses:434Used by:1171
Symbol 1164 GraphicUsed by:1171
Symbol 1165 MovieClipUses:422Used by:1171
Symbol 1166 GraphicUsed by:1171
Symbol 1167 MovieClipUses:422Used by:1171
Symbol 1168 GraphicUsed by:1171
Symbol 1169 MovieClipUses:422Used by:1171
Symbol 1170 GraphicUsed by:1171
Symbol 1171 MovieClipUses:1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1045 1047 1048 1049 1050 1051 1053 1054 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1090 1091 1092 1093 1094 1095 1096 1097 1098 1100 1101 1102 1103 1104 1105 1107 1108 1109 1110 1112 1114 1115 1116 1117 1118 1120 1121 1122 1123 1124 1125 1127 1128 1129 1130 1131 1132 1133 1134 1136 1138 1139 1141 1142 1144 1145 1147 1149 1150 1152 1154 1155 1156 1157 1158 1159 1160 1161 499 1162 1163 1164 1165 1166 1167 1168 1169 1170Used by:1172
Symbol 1172 MovieClip {Stages.stage_10}Uses:181 122 1171 248 211 228 281 268 283Used by:Timeline
Symbol 1173 GraphicUsed by:1174
Symbol 1174 MovieClipUses:1173Used by:1177
Symbol 1175 GraphicUsed by:1176
Symbol 1176 MovieClip {Objects.Box_lvl6}Uses:1175Used by:1177
Symbol 1177 MovieClip {Stages.stage_06}Uses:181 122 1174 211 248 14 249 228 281 1176Used by:Timeline
Symbol 1178 Sound {Fire_Start_Small}Used by:Timeline
Symbol 1179 GraphicUsed by:1233
Symbol 1180 MovieClipUses:353Used by:1233
Symbol 1181 MovieClipUses:348Used by:1233
Symbol 1182 GraphicUsed by:1233
Symbol 1183 GraphicUsed by:1184 1421
Symbol 1184 MovieClipUses:1183Used by:1233
Symbol 1185 GraphicUsed by:1233
Symbol 1186 MovieClipUses:392Used by:1233
Symbol 1187 GraphicUsed by:1233
Symbol 1188 MovieClipUses:1146Used by:1233
Symbol 1189 GraphicUsed by:1233
Symbol 1190 GraphicUsed by:1191 1210 1251 1392 1409 1416 1529 1539
Symbol 1191 MovieClipUses:1190Used by:1233
Symbol 1192 GraphicUsed by:1233
Symbol 1193 GraphicUsed by:1194
Symbol 1194 MovieClipUses:1193Used by:1233
Symbol 1195 GraphicUsed by:1233
Symbol 1196 MovieClipUses:407Used by:1233
Symbol 1197 GraphicUsed by:1233
Symbol 1198 GraphicUsed by:1199
Symbol 1199 MovieClipUses:1198Used by:1233
Symbol 1200 MovieClipUses:329Used by:1233
Symbol 1201 GraphicUsed by:1233
Symbol 1202 GraphicUsed by:1203 1390 1402 1496 1527 1627 1854 1864 2063 2126
Symbol 1203 MovieClipUses:1202Used by:1233
Symbol 1204 GraphicUsed by:1233
Symbol 1205 MovieClipUses:339Used by:1233
Symbol 1206 MovieClipUses:348Used by:1233
Symbol 1207 GraphicUsed by:1233
Symbol 1208 MovieClipUses:348Used by:1233
Symbol 1209 GraphicUsed by:1233
Symbol 1210 MovieClipUses:1190Used by:1233
Symbol 1211 GraphicUsed by:1233
Symbol 1212 MovieClipUses:339Used by:1233
Symbol 1213 MovieClipUses:348Used by:1233
Symbol 1214 GraphicUsed by:1233
Symbol 1215 MovieClipUses:348Used by:1233
Symbol 1216 GraphicUsed by:1233
Symbol 1217 MovieClipUses:339Used by:1233
Symbol 1218 MovieClipUses:758Used by:1233
Symbol 1219 GraphicUsed by:1233
Symbol 1220 MovieClipUses:336Used by:1233
Symbol 1221 GraphicUsed by:1233
Symbol 1222 MovieClipUses:429Used by:1233
Symbol 1223 GraphicUsed by:1233
Symbol 1224 MovieClipUses:432Used by:1233
Symbol 1225 GraphicUsed by:1226
Symbol 1226 MovieClipUses:1225Used by:1233
Symbol 1227 GraphicUsed by:1233
Symbol 1228 GraphicUsed by:1229 1257 1317 1566 1577 1850 1861 2102 2141 2206
Symbol 1229 MovieClipUses:1228Used by:1233
Symbol 1230 GraphicUsed by:1233
Symbol 1231 MovieClipUses:429Used by:1233
Symbol 1232 GraphicUsed by:1233
Symbol 1233 MovieClipUses:1179 1180 1181 1182 1184 1185 1186 1187 1188 1189 1191 1192 1194 1195 1196 1197 1199 1200 1201 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1226 1227 1229 1230 1231 1232Used by:1236
Symbol 1234 GraphicUsed by:1235
Symbol 1235 MovieClip {Box_lvl26}Uses:1234Used by:1236
Symbol 1236 MovieClip {Stages.stage_26}Uses:263 122 1233 211 248 14 287 228 112 289 271 1235Used by:Timeline
Symbol 1237 GraphicUsed by:1238
Symbol 1238 MovieClipUses:1237Used by:1239
Symbol 1239 MovieClip {Stages.stage_11}Uses:181 122 1238 211 248 228 289 112 258Used by:Timeline
Symbol 1240 Sound {Star_Arrive}Used by:Timeline
Symbol 1241 GraphicUsed by:1308
Symbol 1242 MovieClipUses:339Used by:1308
Symbol 1243 MovieClipUses:336Used by:1308
Symbol 1244 GraphicUsed by:1308
Symbol 1245 MovieClipUses:336Used by:1308
Symbol 1246 GraphicUsed by:1308
Symbol 1247 MovieClipUses:659Used by:1308
Symbol 1248 GraphicUsed by:1308
Symbol 1249 MovieClipUses:1111Used by:1308
Symbol 1250 GraphicUsed by:1308
Symbol 1251 MovieClipUses:1190Used by:1308
Symbol 1252 GraphicUsed by:1308
Symbol 1253 MovieClipUses:432Used by:1308
Symbol 1254 GraphicUsed by:1308
Symbol 1255 MovieClipUses:407Used by:1308
Symbol 1256 GraphicUsed by:1308
Symbol 1257 MovieClipUses:1228Used by:1308
Symbol 1258 GraphicUsed by:1259
Symbol 1259 MovieClipUses:1258Used by:1308
Symbol 1260 GraphicUsed by:1308
Symbol 1261 MovieClipUses:1146Used by:1308
Symbol 1262 GraphicUsed by:1308
Symbol 1263 MovieClipUses:353Used by:1308
Symbol 1264 GraphicUsed by:1265 1405
Symbol 1265 MovieClipUses:1264Used by:1308
Symbol 1266 GraphicUsed by:1308
Symbol 1267 GraphicUsed by:1268 1407 1515 1607 1616 1823
Symbol 1268 MovieClipUses:1267Used by:1308
Symbol 1269 GraphicUsed by:1308
Symbol 1270 GraphicUsed by:1271 1279
Symbol 1271 MovieClipUses:1270Used by:1308
Symbol 1272 GraphicUsed by:1308
Symbol 1273 MovieClipUses:432Used by:1308
Symbol 1274 GraphicUsed by:1275 1412
Symbol 1275 MovieClipUses:1274Used by:1308
Symbol 1276 GraphicUsed by:1308
Symbol 1277 MovieClipUses:325Used by:1308
Symbol 1278 GraphicUsed by:1308
Symbol 1279 MovieClipUses:1270Used by:1308
Symbol 1280 GraphicUsed by:1308
Symbol 1281 MovieClipUses:339Used by:1308
Symbol 1282 MovieClipUses:348Used by:1308
Symbol 1283 GraphicUsed by:1308
Symbol 1284 MovieClipUses:348Used by:1308
Symbol 1285 GraphicUsed by:1308
Symbol 1286 MovieClipUses:1044Used by:1308
Symbol 1287 MovieClipUses:348Used by:1308
Symbol 1288 GraphicUsed by:1308
Symbol 1289 MovieClipUses:325Used by:1308
Symbol 1290 GraphicUsed by:1291
Symbol 1291 MovieClipUses:1290Used by:1308
Symbol 1292 GraphicUsed by:1308
Symbol 1293 MovieClipUses:1146Used by:1308
Symbol 1294 GraphicUsed by:1308
Symbol 1295 MovieClipUses:325Used by:1308
Symbol 1296 MovieClipUses:329Used by:1308
Symbol 1297 GraphicUsed by:1308
Symbol 1298 GraphicUsed by:1308
Symbol 1299 GraphicUsed by:1308
Symbol 1300 GraphicUsed by:1308
Symbol 1301 GraphicUsed by:1308
Symbol 1302 GraphicUsed by:1308
Symbol 1303 GraphicUsed by:1308
Symbol 1304 GraphicUsed by:1308
Symbol 1305 GraphicUsed by:1308
Symbol 1306 GraphicUsed by:1308
Symbol 1307 GraphicUsed by:1308
Symbol 1308 MovieClipUses:1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1259 1260 1261 1262 1263 1265 1266 1268 1269 1271 1272 1273 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307Used by:1311
Symbol 1309 GraphicUsed by:1310
Symbol 1310 MovieClip {Box_lvl19}Uses:1309Used by:1311
Symbol 1311 MovieClip {Stages.stage_19}Uses:263 122 1308 211 228 112 258 281 268 298 271 296 1310 314Used by:Timeline
Symbol 1312 GraphicUsed by:1313
Symbol 1313 MovieClipUses:1312Used by:1314
Symbol 1314 MovieClip {Stages.stage_16}Uses:263 122 1313 248 211 246 287 228 231 271Used by:Timeline
Symbol 1315 Sound {Bum2_Sound}Used by:Timeline
Symbol 1316 GraphicUsed by:1376
Symbol 1317 MovieClipUses:1228Used by:1376
Symbol 1318 GraphicUsed by:1319
Symbol 1319 MovieClipUses:1318Used by:1376
Symbol 1320 GraphicUsed by:1376
Symbol 1321 MovieClipUses:1146Used by:1376
Symbol 1322 GraphicUsed by:1376
Symbol 1323 MovieClipUses:410Used by:1376
Symbol 1324 GraphicUsed by:1376
Symbol 1325 MovieClipUses:336Used by:1376
Symbol 1326 GraphicUsed by:1376
Symbol 1327 MovieClipUses:377Used by:1376
Symbol 1328 GraphicUsed by:1376
Symbol 1329 MovieClipUses:396Used by:1376
Symbol 1330 GraphicUsed by:1376
Symbol 1331 GraphicUsed by:1332 1374 1506 1590 1638 1698 1713 1724 1937 1944 2033 2074 2095 2107 2116 2136
Symbol 1332 MovieClipUses:1331Used by:1376
Symbol 1333 GraphicUsed by:1376
Symbol 1334 MovieClipUses:339Used by:1376
Symbol 1335 MovieClipUses:336Used by:1376
Symbol 1336 GraphicUsed by:1376
Symbol 1337 MovieClipUses:336Used by:1376
Symbol 1338 GraphicUsed by:1376
Symbol 1339 GraphicUsed by:1340
Symbol 1340 MovieClipUses:1339Used by:1376
Symbol 1341 GraphicUsed by:1376
Symbol 1342 GraphicUsed by:1343
Symbol 1343 MovieClipUses:1342Used by:1376
Symbol 1344 GraphicUsed by:1376
Symbol 1345 MovieClipUses:339Used by:1376
Symbol 1346 MovieClipUses:348Used by:1376
Symbol 1347 GraphicUsed by:1376
Symbol 1348 MovieClipUses:348Used by:1376
Symbol 1349 GraphicUsed by:1376
Symbol 1350 MovieClipUses:377Used by:1376
Symbol 1351 GraphicUsed by:1376
Symbol 1352 MovieClipUses:662Used by:1376
Symbol 1353 GraphicUsed by:1376
Symbol 1354 MovieClipUses:339Used by:1376
Symbol 1355 MovieClipUses:348Used by:1376
Symbol 1356 GraphicUsed by:1376
Symbol 1357 MovieClipUses:336Used by:1376
Symbol 1358 GraphicUsed by:1376
Symbol 1359 GraphicUsed by:1360 1732 1769
Symbol 1360 MovieClipUses:1359Used by:1376
Symbol 1361 MovieClipUses:348Used by:1376
Symbol 1362 GraphicUsed by:1376
Symbol 1363 MovieClipUses:336Used by:1376
Symbol 1364 GraphicUsed by:1376
Symbol 1365 MovieClipUses:682Used by:1376
Symbol 1366 GraphicUsed by:1376
Symbol 1367 MovieClipUses:758Used by:1376
Symbol 1368 GraphicUsed by:1376
Symbol 1369 GraphicUsed by:1370 1601 1709
Symbol 1370 MovieClipUses:1369Used by:1376
Symbol 1371 GraphicUsed by:1376
Symbol 1372 MovieClipUses:420Used by:1376
Symbol 1373 GraphicUsed by:1376
Symbol 1374 MovieClipUses:1331Used by:1376
Symbol 1375 GraphicUsed by:1376
Symbol 1376 MovieClipUses:1316 1317 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1332 1333 1334 1335 1336 1337 1338 1340 1341 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1360 1361 1362 1363 1364 1365 1366 1367 1368 1370 1371 1372 1373 1374 1375Used by:1377
Symbol 1377 MovieClip {Stages.stage_22}Uses:263 122 1376 248 211 14 228 258 281 271 296Used by:Timeline
Symbol 1378 GraphicUsed by:1379
Symbol 1379 MovieClipUses:1378Used by:1380
Symbol 1380 MovieClip {Stages.stage_23}Uses:263 122 1379 211 248 246 228 281 271 296 268Used by:Timeline
Symbol 1381 Sound {Bum3_Sound}Used by:Timeline
Symbol 1382 GraphicUsed by:1428
Symbol 1383 MovieClipUses:339Used by:1428
Symbol 1384 MovieClipUses:336Used by:1428
Symbol 1385 GraphicUsed by:1428
Symbol 1386 MovieClipUses:348Used by:1428
Symbol 1387 GraphicUsed by:1428
Symbol 1388 MovieClipUses:659Used by:1428
Symbol 1389 GraphicUsed by:1428
Symbol 1390 MovieClipUses:1202Used by:1428
Symbol 1391 GraphicUsed by:1428
Symbol 1392 MovieClipUses:1190Used by:1428
Symbol 1393 GraphicUsed by:1428
Symbol 1394 MovieClipUses:432Used by:1428
Symbol 1395 GraphicUsed by:1428
Symbol 1396 MovieClipUses:407Used by:1428
Symbol 1397 GraphicUsed by:1428
Symbol 1398 MovieClipUses:325Used by:1428
Symbol 1399 GraphicUsed by:1400
Symbol 1400 MovieClipUses:1399Used by:1428
Symbol 1401 GraphicUsed by:1428
Symbol 1402 MovieClipUses:1202Used by:1428
Symbol 1403 GraphicUsed by:1428
Symbol 1404 MovieClipUses:353Used by:1428
Symbol 1405 MovieClipUses:1264Used by:1428
Symbol 1406 GraphicUsed by:1428
Symbol 1407 MovieClipUses:1267Used by:1428
Symbol 1408 GraphicUsed by:1428
Symbol 1409 MovieClipUses:1190Used by:1428
Symbol 1410 GraphicUsed by:1428
Symbol 1411 MovieClipUses:432Used by:1428
Symbol 1412 MovieClipUses:1274Used by:1428
Symbol 1413 GraphicUsed by:1428
Symbol 1414 MovieClipUses:325Used by:1428
Symbol 1415 GraphicUsed by:1428
Symbol 1416 MovieClipUses:1190Used by:1428
Symbol 1417 GraphicUsed by:1428
Symbol 1418 MovieClipUses:353Used by:1428
Symbol 1419 MovieClipUses:348Used by:1428
Symbol 1420 GraphicUsed by:1428
Symbol 1421 MovieClipUses:1183Used by:1428
Symbol 1422 GraphicUsed by:1428
Symbol 1423 MovieClipUses:377Used by:1428
Symbol 1424 GraphicUsed by:1428
Symbol 1425 GraphicUsed by:1426 1696
Symbol 1426 MovieClipUses:1425Used by:1428
Symbol 1427 GraphicUsed by:1428
Symbol 1428 MovieClipUses:1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1426 1427Used by:1431
Symbol 1429 GraphicUsed by:1430
Symbol 1430 MovieClip {Box_lvl15}Uses:1429Used by:1431
Symbol 1431 MovieClip {Stages.stage_15}Uses:181 122 1428 246 211 228 281 289 291 94 1430Used by:Timeline
Symbol 1432 GraphicUsed by:1433
Symbol 1433 MovieClipUses:1432Used by:1436
Symbol 1434 GraphicUsed by:1435
Symbol 1435 MovieClip {Objects.Box_lvl5}Uses:1434Used by:1436
Symbol 1436 MovieClip {Stages.stage_05}Uses:181 122 1433 246 211 228 231 1435Used by:Timeline
Symbol 1437 Sound {Bum4_Sound}Used by:Timeline
Symbol 1438 MovieClip {Stages.stage_31}Uses:122 228 258Used by:Timeline
Symbol 1439 GraphicUsed by:1479
Symbol 1440 GraphicUsed by:1441 1450 1458
Symbol 1441 MovieClipUses:1440Used by:1479
Symbol 1442 GraphicUsed by:1443 1451 1459
Symbol 1443 MovieClipUses:1442Used by:1479
Symbol 1444 GraphicUsed by:1479
Symbol 1445 GraphicUsed by:1446
Symbol 1446 MovieClipUses:1445Used by:1479
Symbol 1447 GraphicUsed by:1479
Symbol 1448 MovieClipUses:377Used by:1479
Symbol 1449 GraphicUsed by:1479
Symbol 1450 MovieClipUses:1440Used by:1479
Symbol 1451 MovieClipUses:1442Used by:1479
Symbol 1452 GraphicUsed by:1479
Symbol 1453 GraphicUsed by:1454
Symbol 1454 MovieClipUses:1453Used by:1479
Symbol 1455 GraphicUsed by:1479
Symbol 1456 MovieClipUses:377Used by:1479
Symbol 1457 GraphicUsed by:1479
Symbol 1458 MovieClipUses:1440Used by:1479
Symbol 1459 MovieClipUses:1442Used by:1479
Symbol 1460 GraphicUsed by:1479
Symbol 1461 GraphicUsed by:1462
Symbol 1462 MovieClipUses:1461Used by:1479
Symbol 1463 GraphicUsed by:1479
Symbol 1464 MovieClipUses:377Used by:1479
Symbol 1465 GraphicUsed by:1479
Symbol 1466 GraphicUsed by:1467 1473
Symbol 1467 MovieClipUses:1466Used by:1479
Symbol 1468 GraphicUsed by:1469 1471
Symbol 1469 MovieClipUses:1468Used by:1479
Symbol 1470 GraphicUsed by:1479
Symbol 1471 MovieClipUses:1468Used by:1479
Symbol 1472 GraphicUsed by:1479
Symbol 1473 MovieClipUses:1466Used by:1479
Symbol 1474 GraphicUsed by:1475 1477
Symbol 1475 MovieClipUses:1474Used by:1479
Symbol 1476 GraphicUsed by:1479
Symbol 1477 MovieClipUses:1474Used by:1479
Symbol 1478 GraphicUsed by:1479
Symbol 1479 MovieClipUses:1439 1441 1443 1444 1446 1447 1448 1449 1450 1451 1452 1454 1455 1456 1457 1458 1459 1460 1462 1463 1464 1465 1467 1469 1470 1471 1472 1473 1475 1476 1477 1478Used by:1480
Symbol 1480 MovieClip {Stages.stage_07}Uses:181 122 1479 279 283 228 268Used by:Timeline
Symbol 1481 Sound {Bum5_Sound}Used by:Timeline
Symbol 1482 GraphicUsed by:1571
Symbol 1483 MovieClipUses:339Used by:1571
Symbol 1484 MovieClipUses:336Used by:1571
Symbol 1485 GraphicUsed by:1571
Symbol 1486 MovieClipUses:336Used by:1571
Symbol 1487 GraphicUsed by:1571
Symbol 1488 MovieClipUses:377Used by:1571
Symbol 1489 GraphicUsed by:1571
Symbol 1490 MovieClipUses:666Used by:1571
Symbol 1491 GraphicUsed by:1571
Symbol 1492 GraphicUsed by:1493 1524 1817 1882 1948 1962 2060
Symbol 1493 MovieClipUses:1492Used by:1571
Symbol 1494 MovieClipUses:1146Used by:1571
Symbol 1495 GraphicUsed by:1571
Symbol 1496 MovieClipUses:1202Used by:1571
Symbol 1497 GraphicUsed by:1571
Symbol 1498 MovieClipUses:367Used by:1571
Symbol 1499 GraphicUsed by:1571
Symbol 1500 MovieClipUses:336Used by:1571
Symbol 1501 GraphicUsed by:1571
Symbol 1502 MovieClipUses:377Used by:1571
Symbol 1503 GraphicUsed by:1571
Symbol 1504 MovieClipUses:396Used by:1571
Symbol 1505 GraphicUsed by:1571
Symbol 1506 MovieClipUses:1331Used by:1571
Symbol 1507 GraphicUsed by:1571
Symbol 1508 MovieClipUses:1044Used by:1571
Symbol 1509 MovieClipUses:348Used by:1571
Symbol 1510 GraphicUsed by:1571
Symbol 1511 MovieClipUses:336Used by:1571
Symbol 1512 GraphicUsed by:1571
Symbol 1513 MovieClipUses:682Used by:1571
Symbol 1514 GraphicUsed by:1571
Symbol 1515 MovieClipUses:1267Used by:1571
Symbol 1516 GraphicUsed by:1571
Symbol 1517 MovieClipUses:377Used by:1571
Symbol 1518 GraphicUsed by:1571
Symbol 1519 MovieClipUses:420Used by:1571
Symbol 1520 GraphicUsed by:1571
Symbol 1521 GraphicUsed by:1522
Symbol 1522 MovieClipUses:1521Used by:1571
Symbol 1523 GraphicUsed by:1571
Symbol 1524 MovieClipUses:1492Used by:1571
Symbol 1525 MovieClipUses:1146Used by:1571
Symbol 1526 GraphicUsed by:1571
Symbol 1527 MovieClipUses:1202Used by:1571
Symbol 1528 GraphicUsed by:1571
Symbol 1529 MovieClipUses:1190Used by:1571
Symbol 1530 GraphicUsed by:1571
Symbol 1531 GraphicUsed by:1532
Symbol 1532 MovieClipUses:1531Used by:1571
Symbol 1533 GraphicUsed by:1571
Symbol 1534 MovieClipUses:325Used by:1571
Symbol 1535 MovieClipUses:329Used by:1571
Symbol 1536 GraphicUsed by:1571
Symbol 1537 MovieClipUses:329Used by:1571
Symbol 1538 GraphicUsed by:1571
Symbol 1539 MovieClipUses:1190Used by:1571
Symbol 1540 GraphicUsed by:1571
Symbol 1541 MovieClipUses:432Used by:1571
Symbol 1542 GraphicUsed by:1571
Symbol 1543 MovieClipUses:339Used by:1571
Symbol 1544 MovieClipUses:348Used by:1571
Symbol 1545 GraphicUsed by:1571
Symbol 1546 MovieClipUses:336Used by:1571
Symbol 1547 GraphicUsed by:1571
Symbol 1548 MovieClipUses:377Used by:1571
Symbol 1549 GraphicUsed by:1571
Symbol 1550 MovieClipUses:336Used by:1571
Symbol 1551 GraphicUsed by:1571
Symbol 1552 GraphicUsed by:1553 1808 1870 1889 1901 1958
Symbol 1553 MovieClipUses:1552Used by:1571
Symbol 1554 GraphicUsed by:1571
Symbol 1555 MovieClipUses:855Used by:1571
Symbol 1556 GraphicUsed by:1571
Symbol 1557 GraphicUsed by:1558 1649 2191 2199
Symbol 1558 MovieClipUses:1557Used by:1571
Symbol 1559 GraphicUsed by:1571
Symbol 1560 MovieClipUses:336Used by:1571
Symbol 1561 MovieClipUses:339Used by:1571
Symbol 1562 MovieClipUses:348Used by:1571
Symbol 1563 GraphicUsed by:1571
Symbol 1564 MovieClipUses:336Used by:1571
Symbol 1565 GraphicUsed by:1571
Symbol 1566 MovieClipUses:1228Used by:1571
Symbol 1567 MovieClipUses:1146Used by:1571
Symbol 1568 GraphicUsed by:1571
Symbol 1569 MovieClipUses:1146Used by:1571
Symbol 1570 GraphicUsed by:1571
Symbol 1571 MovieClipUses:1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1522 1523 1524 1525 1526 1527 1528 1529 1530 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1553 1554 1555 1556 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570Used by:1572
Symbol 1572 MovieClip {Stages.stage_28}Uses:263 122 1571 211 248 112 258 289 298 296 271 228 314Used by:Timeline
Symbol 1573 Sound {Bum6_Sound}Used by:Timeline
Symbol 1574 GraphicUsed by:1681 1729
Symbol 1575 TextUses:8Used by:1681
Symbol 1576 GraphicUsed by:1651
Symbol 1577 MovieClipUses:1228Used by:1651
Symbol 1578 MovieClipUses:329Used by:1651
Symbol 1579 GraphicUsed by:1651
Symbol 1580 MovieClipUses:329Used by:1651
Symbol 1581 GraphicUsed by:1651
Symbol 1582 MovieClipUses:367Used by:1651
Symbol 1583 GraphicUsed by:1651
Symbol 1584 MovieClipUses:348Used by:1651
Symbol 1585 GraphicUsed by:1651
Symbol 1586 MovieClipUses:377Used by:1651
Symbol 1587 GraphicUsed by:1651
Symbol 1588 MovieClipUses:396Used by:1651
Symbol 1589 GraphicUsed by:1651
Symbol 1590 MovieClipUses:1331Used by:1651
Symbol 1591 GraphicUsed by:1651
Symbol 1592 MovieClipUses:339Used by:1651
Symbol 1593 MovieClipUses:348Used by:1651
Symbol 1594 GraphicUsed by:1651
Symbol 1595 MovieClipUses:348Used by:1651
Symbol 1596 GraphicUsed by:1651
Symbol 1597 MovieClipUses:682Used by:1651
Symbol 1598 GraphicUsed by:1651
Symbol 1599 MovieClipUses:348Used by:1651
Symbol 1600 GraphicUsed by:1651
Symbol 1601 MovieClipUses:1369Used by:1651
Symbol 1602 GraphicUsed by:1651
Symbol 1603 MovieClipUses:420Used by:1651
Symbol 1604 GraphicUsed by:1651
Symbol 1605 MovieClipUses:367Used by:1651
Symbol 1606 GraphicUsed by:1651
Symbol 1607 MovieClipUses:1267Used by:1651
Symbol 1608 GraphicUsed by:1651
Symbol 1609 MovieClipUses:377Used by:1651
Symbol 1610 GraphicUsed by:1651
Symbol 1611 MovieClipUses:420Used by:1651
Symbol 1612 GraphicUsed by:1651
Symbol 1613 GraphicUsed by:1614 1705
Symbol 1614 MovieClipUses:1613Used by:1651
Symbol 1615 GraphicUsed by:1651
Symbol 1616 MovieClipUses:1267Used by:1651
Symbol 1617 GraphicUsed by:1618
Symbol 1618 MovieClipUses:1617Used by:1651
Symbol 1619 GraphicUsed by:1620
Symbol 1620 MovieClipUses:1619Used by:1651
Symbol 1621 GraphicUsed by:1651
Symbol 1622 MovieClipUses:348Used by:1651
Symbol 1623 GraphicUsed by:1651
Symbol 1624 MovieClipUses:325Used by:1651
Symbol 1625 MovieClipUses:329Used by:1651
Symbol 1626 GraphicUsed by:1651
Symbol 1627 MovieClipUses:1202Used by:1651
Symbol 1628 GraphicUsed by:1651
Symbol 1629 MovieClipUses:1044Used by:1651
Symbol 1630 MovieClipUses:348Used by:1651
Symbol 1631 GraphicUsed by:1651
Symbol 1632 MovieClipUses:336Used by:1651
Symbol 1633 GraphicUsed by:1651
Symbol 1634 MovieClipUses:329Used by:1651
Symbol 1635 GraphicUsed by:1651
Symbol 1636 MovieClipUses:666Used by:1651
Symbol 1637 GraphicUsed by:1651
Symbol 1638 MovieClipUses:1331Used by:1651
Symbol 1639 GraphicUsed by:1651
Symbol 1640 MovieClipUses:336Used by:1651
Symbol 1641 GraphicUsed by:1651
Symbol 1642 MovieClipUses:348Used by:1651
Symbol 1643 GraphicUsed by:1651
Symbol 1644 GraphicUsed by:1645 1862
Symbol 1645 MovieClipUses:1644Used by:1651
Symbol 1646 GraphicUsed by:1651
Symbol 1647 MovieClipUses:396Used by:1651
Symbol 1648 GraphicUsed by:1651
Symbol 1649 MovieClipUses:1557Used by:1651
Symbol 1650 GraphicUsed by:1651
Symbol 1651 MovieClipUses:1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1614 1615 1616 1618 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1645 1646 1647 1648 1649 1650Used by:1681
Symbol 1652 GraphicUsed by:1676
Symbol 1653 GraphicUsed by:1676
Symbol 1654 GraphicUsed by:1676
Symbol 1655 GraphicUsed by:1676
Symbol 1656 GraphicUsed by:1676
Symbol 1657 GraphicUsed by:1676 2003 2027 2056 2258
Symbol 1658 GraphicUsed by:1676
Symbol 1659 GraphicUsed by:1676
Symbol 1660 GraphicUsed by:1676
Symbol 1661 GraphicUsed by:1676
Symbol 1662 GraphicUsed by:1676
Symbol 1663 GraphicUsed by:1676
Symbol 1664 GraphicUsed by:1676
Symbol 1665 GraphicUsed by:1676
Symbol 1666 GraphicUsed by:1676
Symbol 1667 GraphicUsed by:1676
Symbol 1668 GraphicUsed by:1676
Symbol 1669 GraphicUsed by:1676
Symbol 1670 GraphicUsed by:1676
Symbol 1671 GraphicUsed by:1676
Symbol 1672 GraphicUsed by:1676
Symbol 1673 GraphicUsed by:1676
Symbol 1674 GraphicUsed by:1676
Symbol 1675 GraphicUsed by:1676
Symbol 1676 MovieClip {Most24}Uses:1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675Used by:1681 1729 2182
Symbol 1677 MovieClipUses:140 108 106Used by:1678
Symbol 1678 MovieClip {Objects.Car4_Back}Uses:96 98 229 1677Used by:1681 1729 1915 2028  Timeline
Symbol 1679 GraphicUsed by:1680
Symbol 1680 MovieClip {Box_lvl25}Uses:1679Used by:1681
Symbol 1681 MovieClip {Stages.stage_25}Uses:263 1574 122 1575 1651 211 248 14 1676 279 228 1678 271 296 298 112 94 1680Used by:Timeline
Symbol 1682 Sound {CrackSound1}Used by:Timeline
Symbol 1683 TextUses:8Used by:1729
Symbol 1684 GraphicUsed by:1726
Symbol 1685 MovieClipUses:325Used by:1726
Symbol 1686 MovieClipUses:329Used by:1726
Symbol 1687 GraphicUsed by:1726
Symbol 1688 MovieClipUses:329Used by:1726
Symbol 1689 GraphicUsed by:1726
Symbol 1690 MovieClipUses:367Used by:1726
Symbol 1691 GraphicUsed by:1726
Symbol 1692 MovieClipUses:336Used by:1726
Symbol 1693 GraphicUsed by:1726
Symbol 1694 MovieClipUses:377Used by:1726
Symbol 1695 GraphicUsed by:1726
Symbol 1696 MovieClipUses:1425Used by:1726
Symbol 1697 GraphicUsed by:1726
Symbol 1698 MovieClipUses:1331Used by:1726
Symbol 1699 GraphicUsed by:1726
Symbol 1700 MovieClipUses:339Used by:1726
Symbol 1701 MovieClipUses:348Used by:1726
Symbol 1702 GraphicUsed by:1726
Symbol 1703 MovieClipUses:348Used by:1726
Symbol 1704 GraphicUsed by:1726
Symbol 1705 MovieClipUses:1613Used by:1726
Symbol 1706 GraphicUsed by:1726
Symbol 1707 MovieClipUses:348Used by:1726
Symbol 1708 GraphicUsed by:1726
Symbol 1709 MovieClipUses:1369Used by:1726
Symbol 1710 GraphicUsed by:1726
Symbol 1711 MovieClipUses:420Used by:1726
Symbol 1712 GraphicUsed by:1726
Symbol 1713 MovieClipUses:1331Used by:1726
Symbol 1714 GraphicUsed by:1726
Symbol 1715 MovieClipUses:339Used by:1726
Symbol 1716 MovieClipUses:348Used by:1726
Symbol 1717 GraphicUsed by:1726
Symbol 1718 MovieClipUses:348Used by:1726
Symbol 1719 GraphicUsed by:1726
Symbol 1720 MovieClipUses:329Used by:1726
Symbol 1721 GraphicUsed by:1726
Symbol 1722 MovieClipUses:420Used by:1726
Symbol 1723 GraphicUsed by:1726
Symbol 1724 MovieClipUses:1331Used by:1726
Symbol 1725 GraphicUsed by:1726
Symbol 1726 MovieClipUses:1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725Used by:1729
Symbol 1727 GraphicUsed by:1728
Symbol 1728 MovieClip {Box_lvl24}Uses:1727Used by:1729
Symbol 1729 MovieClip {Stages.stage_24}Uses:263 1574 122 1683 1726 248 211 14 228 1678 271 296 298 1728 1676Used by:Timeline
Symbol 1730 Sound {CrackSound2}Used by:Timeline
Symbol 1731 GraphicUsed by:1841
Symbol 1732 MovieClipUses:1359Used by:1841
Symbol 1733 MovieClipUses:348Used by:1841
Symbol 1734 GraphicUsed by:1841
Symbol 1735 MovieClipUses:336Used by:1841
Symbol 1736 GraphicUsed by:1841
Symbol 1737 MovieClipUses:377Used by:1841
Symbol 1738 GraphicUsed by:1841
Symbol 1739 MovieClipUses:396Used by:1841
Symbol 1740 GraphicUsed by:1841
Symbol 1741 GraphicUsed by:1742 1796
Symbol 1742 MovieClipUses:1741Used by:1841
Symbol 1743 GraphicUsed by:1744
Symbol 1744 MovieClipUses:1743Used by:1841
Symbol 1745 GraphicUsed by:1841
Symbol 1746 GraphicUsed by:1747
Symbol 1747 MovieClipUses:1746Used by:1841
Symbol 1748 GraphicUsed by:1841
Symbol 1749 GraphicUsed by:1750
Symbol 1750 MovieClipUses:1749Used by:1841
Symbol 1751 GraphicUsed by:1841
Symbol 1752 GraphicUsed by:1753
Symbol 1753 MovieClipUses:1752Used by:1841
Symbol 1754 GraphicUsed by:1841
Symbol 1755 GraphicUsed by:1756
Symbol 1756 MovieClipUses:1755Used by:1841
Symbol 1757 GraphicUsed by:1841
Symbol 1758 GraphicUsed by:1759
Symbol 1759 MovieClipUses:1758Used by:1841
Symbol 1760 GraphicUsed by:1841
Symbol 1761 GraphicUsed by:1762
Symbol 1762 MovieClipUses:1761Used by:1841
Symbol 1763 GraphicUsed by:1764
Symbol 1764 MovieClipUses:1763Used by:1841
Symbol 1765 GraphicUsed by:1841
Symbol 1766 GraphicUsed by:1767
Symbol 1767 MovieClipUses:1766Used by:1841
Symbol 1768 GraphicUsed by:1841
Symbol 1769 MovieClipUses:1359Used by:1841
Symbol 1770 MovieClipUses:348Used by:1841
Symbol 1771 GraphicUsed by:1841
Symbol 1772 MovieClipUses:336Used by:1841
Symbol 1773 GraphicUsed by:1841
Symbol 1774 MovieClipUses:339Used by:1841
Symbol 1775 MovieClipUses:336Used by:1841
Symbol 1776 GraphicUsed by:1841
Symbol 1777 MovieClipUses:336Used by:1841
Symbol 1778 GraphicUsed by:1841
Symbol 1779 MovieClipUses:377Used by:1841
Symbol 1780 GraphicUsed by:1841
Symbol 1781 MovieClipUses:920Used by:1841
Symbol 1782 GraphicUsed by:1841
Symbol 1783 MovieClipUses:662Used by:1841
Symbol 1784 GraphicUsed by:1841
Symbol 1785 MovieClipUses:339Used by:1841
Symbol 1786 MovieClipUses:348Used by:1841
Symbol 1787 GraphicUsed by:1841
Symbol 1788 GraphicUsed by:1789
Symbol 1789 MovieClipUses:1788Used by:1841
Symbol 1790 GraphicUsed by:1791 1797
Symbol 1791 MovieClipUses:1790Used by:1841
Symbol 1792 GraphicUsed by:1841
Symbol 1793 GraphicUsed by:1794
Symbol 1794 MovieClipUses:1793Used by:1841
Symbol 1795 GraphicUsed by:1841
Symbol 1796 MovieClipUses:1741Used by:1841
Symbol 1797 MovieClipUses:1790Used by:1841
Symbol 1798 GraphicUsed by:1841
Symbol 1799 GraphicUsed by:1800 1879 1891 1894 1951 2123
Symbol 1800 MovieClipUses:1799Used by:1841
Symbol 1801 GraphicUsed by:1802 1880
Symbol 1802 MovieClipUses:1801Used by:1841
Symbol 1803 GraphicUsed by:1841
Symbol 1804 MovieClipUses:1146Used by:1841
Symbol 1805 GraphicUsed by:1841
Symbol 1806 MovieClipUses:420Used by:1841
Symbol 1807 GraphicUsed by:1841
Symbol 1808 MovieClipUses:1552Used by:1841
Symbol 1809 GraphicUsed by:1841
Symbol 1810 MovieClipUses:420Used by:1841
Symbol 1811 GraphicUsed by:1841
Symbol 1812 MovieClipUses:339Used by:1841
Symbol 1813 MovieClipUses:348Used by:1841
Symbol 1814 GraphicUsed by:1841
Symbol 1815 MovieClipUses:336Used by:1841
Symbol 1816 GraphicUsed by:1841
Symbol 1817 MovieClipUses:1492Used by:1841
Symbol 1818 MovieClipUses:1146Used by:1841
Symbol 1819 GraphicUsed by:1841
Symbol 1820 MovieClipUses:339Used by:1841
Symbol 1821 MovieClipUses:336Used by:1841
Symbol 1822 GraphicUsed by:1841
Symbol 1823 MovieClipUses:1267Used by:1841
Symbol 1824 GraphicUsed by:1841
Symbol 1825 GraphicUsed by:1826 1829 1905
Symbol 1826 MovieClipUses:1825Used by:1841
Symbol 1827 MovieClipUses:1146Used by:1841
Symbol 1828 GraphicUsed by:1841
Symbol 1829 MovieClipUses:1825Used by:1841
Symbol 1830 GraphicUsed by:1831
Symbol 1831 MovieClipUses:1830Used by:1841
Symbol 1832 GraphicUsed by:1841
Symbol 1833 GraphicUsed by:1834 1883 1892
Symbol 1834 MovieClipUses:1833Used by:1841
Symbol 1835 GraphicUsed by:1841
Symbol 1836 MovieClipUses:339Used by:1841
Symbol 1837 MovieClipUses:348Used by:1841
Symbol 1838 GraphicUsed by:1841
Symbol 1839 MovieClipUses:348Used by:1841
Symbol 1840 GraphicUsed by:1841
Symbol 1841 MovieClipUses:1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1742 1744 1745 1747 1748 1750 1751 1753 1754 1756 1757 1759 1760 1762 1764 1765 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1789 1791 1792 1794 1795 1796 1797 1798 1800 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1826 1827 1828 1829 1831 1832 1834 1835 1836 1837 1838 1839 1840Used by:1842
Symbol 1842 MovieClip {Stages.stage_18}Uses:263 122 1841 248 228 231 94 112 296 271Used by:Timeline
Symbol 1843 Sound {CrackSound3}Used by:Timeline
Symbol 1844 GraphicUsed by:1912
Symbol 1845 MovieClipUses:339Used by:1912
Symbol 1846 MovieClipUses:348Used by:1912
Symbol 1847 GraphicUsed by:1912
Symbol 1848 MovieClipUses:348Used by:1912
Symbol 1849 GraphicUsed by:1912
Symbol 1850 MovieClipUses:1228Used by:1912
Symbol 1851 GraphicUsed by:1852 1906 1952
Symbol 1852 MovieClipUses:1851Used by:1912
Symbol 1853 GraphicUsed by:1912
Symbol 1854 MovieClipUses:1202Used by:1912
Symbol 1855 GraphicUsed by:1912
Symbol 1856 MovieClipUses:1044Used by:1912
Symbol 1857 MovieClipUses:348Used by:1912
Symbol 1858 GraphicUsed by:1912
Symbol 1859 MovieClipUses:348Used by:1912
Symbol 1860 GraphicUsed by:1912
Symbol 1861 MovieClipUses:1228Used by:1912
Symbol 1862 MovieClipUses:1644Used by:1912
Symbol 1863 GraphicUsed by:1912
Symbol 1864 MovieClipUses:1202Used by:1912
Symbol 1865 GraphicUsed by:1912
Symbol 1866 MovieClipUses:377Used by:1912
Symbol 1867 GraphicUsed by:1912
Symbol 1868 MovieClipUses:666Used by:1912
Symbol 1869 GraphicUsed by:1912
Symbol 1870 MovieClipUses:1552Used by:1912
Symbol 1871 GraphicUsed by:1912
Symbol 1872 MovieClipUses:420Used by:1912
Symbol 1873 GraphicUsed by:1912
Symbol 1874 MovieClipUses:353Used by:1912
Symbol 1875 MovieClipUses:336Used by:1912
Symbol 1876 GraphicUsed by:1912
Symbol 1877 MovieClipUses:336Used by:1912
Symbol 1878 GraphicUsed by:1912
Symbol 1879 MovieClipUses:1799Used by:1912
Symbol 1880 MovieClipUses:1801Used by:1912
Symbol 1881 GraphicUsed by:1912
Symbol 1882 MovieClipUses:1492Used by:1912
Symbol 1883 MovieClipUses:1833Used by:1912
Symbol 1884 GraphicUsed by:1912
Symbol 1885 MovieClipUses:377Used by:1912
Symbol 1886 GraphicUsed by:1912
Symbol 1887 MovieClipUses:662Used by:1912
Symbol 1888 GraphicUsed by:1912
Symbol 1889 MovieClipUses:1552Used by:1912
Symbol 1890 GraphicUsed by:1912
Symbol 1891 MovieClipUses:1799Used by:1912
Symbol 1892 MovieClipUses:1833Used by:1912
Symbol 1893 GraphicUsed by:1912
Symbol 1894 MovieClipUses:1799Used by:1912
Symbol 1895 MovieClipUses:329Used by:1912
Symbol 1896 GraphicUsed by:1912
Symbol 1897 MovieClipUses:377Used by:1912
Symbol 1898 GraphicUsed by:1912
Symbol 1899 MovieClipUses:662Used by:1912
Symbol 1900 GraphicUsed by:1912
Symbol 1901 MovieClipUses:1552Used by:1912
Symbol 1902 GraphicUsed by:1912
Symbol 1903 MovieClipUses:420Used by:1912
Symbol 1904 GraphicUsed by:1912
Symbol 1905 MovieClipUses:1825Used by:1912
Symbol 1906 MovieClipUses:1851Used by:1912
Symbol 1907 GraphicUsed by:1912
Symbol 1908 MovieClipUses:377Used by:1912
Symbol 1909 GraphicUsed by:1912
Symbol 1910 MovieClipUses:662Used by:1912
Symbol 1911 GraphicUsed by:1912
Symbol 1912 MovieClipUses:1844 1845 1846 1847 1848 1849 1850 1852 1853 1854 1855 1856 1857 1858 1859 1860 1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871 1872 1873 1874 1875 1876 1877 1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911Used by:1915
Symbol 1913 GraphicUsed by:1914
Symbol 1914 MovieClip {Box_lvl8}Uses:1913Used by:1915
Symbol 1915 MovieClip {Stages.stage_08}Uses:181 122 1912 211 248 228 231 1678 92 1914Used by:Timeline
Symbol 1916 Sound {BreakingSound}Used by:Timeline
Symbol 1917 GraphicUsed by:1967
Symbol 1918 MovieClipUses:339Used by:1967
Symbol 1919 MovieClipUses:336Used by:1967
Symbol 1920 GraphicUsed by:1967
Symbol 1921 MovieClipUses:348Used by:1967
Symbol 1922 GraphicUsed by:1967
Symbol 1923 MovieClipUses:339Used by:1967
Symbol 1924 GraphicUsed by:1925 2098
Symbol 1925 MovieClipUses:1924Used by:1967
Symbol 1926 GraphicUsed by:1967
Symbol 1927 MovieClipUses:336Used by:1967
Symbol 1928 GraphicUsed by:1967
Symbol 1929 MovieClipUses:339Used by:1967
Symbol 1930 MovieClipUses:348Used by:1967
Symbol 1931 GraphicUsed by:1967
Symbol 1932 MovieClipUses:339Used by:1967
Symbol 1933 MovieClipUses:348Used by:1967
Symbol 1934 GraphicUsed by:1967
Symbol 1935 MovieClipUses:336Used by:1967
Symbol 1936 GraphicUsed by:1967
Symbol 1937 MovieClipUses:1331Used by:1967
Symbol 1938 GraphicUsed by:1967
Symbol 1939 MovieClipUses:339Used by:1967
Symbol 1940 MovieClipUses:348Used by:1967
Symbol 1941 GraphicUsed by:1967
Symbol 1942 MovieClipUses:348Used by:1967
Symbol 1943 GraphicUsed by:1967
Symbol 1944 MovieClipUses:1331Used by:1967
Symbol 1945 GraphicUsed by:1967
Symbol 1946 MovieClipUses:339Used by:1967
Symbol 1947 GraphicUsed by:1967
Symbol 1948 MovieClipUses:1492Used by:1967
Symbol 1949 MovieClipUses:329Used by:1967
Symbol 1950 GraphicUsed by:1967
Symbol 1951 MovieClipUses:1799Used by:1967
Symbol 1952 MovieClipUses:1851Used by:1967
Symbol 1953 GraphicUsed by:1967
Symbol 1954 MovieClipUses:377Used by:1967
Symbol 1955 GraphicUsed by:1967
Symbol 1956 MovieClipUses:662Used by:1967
Symbol 1957 GraphicUsed by:1967
Symbol 1958 MovieClipUses:1552Used by:1967
Symbol 1959 GraphicUsed by:1967
Symbol 1960 MovieClipUses:420Used by:1967
Symbol 1961 GraphicUsed by:1967
Symbol 1962 MovieClipUses:1492Used by:1967
Symbol 1963 MovieClipUses:1146Used by:1967
Symbol 1964 GraphicUsed by:1967
Symbol 1965 MovieClipUses:377Used by:1967
Symbol 1966 GraphicUsed by:1967
Symbol 1967 MovieClipUses:1917 1918 1919 1920 1921 1922 1923 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966Used by:2028
Symbol 1968 GraphicUsed by:2003 2056 2258
Symbol 1969 GraphicUsed by:2003
Symbol 1970 GraphicUsed by:2003 2056 2258
Symbol 1971 GraphicUsed by:2003 2056 2258
Symbol 1972 GraphicUsed by:2003 2027 2056 2258
Symbol 1973 GraphicUsed by:2003 2056 2258
Symbol 1974 GraphicUsed by:2003 2056 2258
Symbol 1975 GraphicUsed by:2003 2056 2258
Symbol 1976 GraphicUsed by:2003 2027 2258
Symbol 1977 GraphicUsed by:2003 2056 2258
Symbol 1978 GraphicUsed by:2003 2056 2258
Symbol 1979 GraphicUsed by:2003 2027 2056 2258
Symbol 1980 GraphicUsed by:2003
Symbol 1981 GraphicUsed by:2003
Symbol 1982 GraphicUsed by:2003
Symbol 1983 GraphicUsed by:2003
Symbol 1984 GraphicUsed by:2003
Symbol 1985 GraphicUsed by:2003
Symbol 1986 GraphicUsed by:2003
Symbol 1987 GraphicUsed by:2003
Symbol 1988 GraphicUsed by:2003
Symbol 1989 GraphicUsed by:2003 2027 2258
Symbol 1990 GraphicUsed by:2003 2027 2258
Symbol 1991 GraphicUsed by:2003 2027 2056 2258
Symbol 1992 GraphicUsed by:2003 2027 2056 2258
Symbol 1993 GraphicUsed by:2003 2027 2056 2258
Symbol 1994 GraphicUsed by:2003 2258
Symbol 1995 GraphicUsed by:2003
Symbol 1996 GraphicUsed by:2003 2258
Symbol 1997 GraphicUsed by:2003
Symbol 1998 GraphicUsed by:2003 2258
Symbol 1999 GraphicUsed by:2003 2027 2258
Symbol 2000 GraphicUsed by:2003 2027 2258
Symbol 2001 GraphicUsed by:2003 2027 2258
Symbol 2002 GraphicUsed by:2003
Symbol 2003 MovieClip {Most27_2}Uses:1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1657 1994 1995 1996 453 1997 1998 1999 2000 2001 2002Used by:2028
Symbol 2004 GraphicUsed by:2027
Symbol 2005 GraphicUsed by:2027
Symbol 2006 GraphicUsed by:2027
Symbol 2007 GraphicUsed by:2027
Symbol 2008 GraphicUsed by:2027
Symbol 2009 GraphicUsed by:2027
Symbol 2010 GraphicUsed by:2027
Symbol 2011 GraphicUsed by:2027
Symbol 2012 GraphicUsed by:2027
Symbol 2013 GraphicUsed by:2027
Symbol 2014 GraphicUsed by:2027
Symbol 2015 GraphicUsed by:2027
Symbol 2016 GraphicUsed by:2027
Symbol 2017 GraphicUsed by:2027
Symbol 2018 GraphicUsed by:2027
Symbol 2019 GraphicUsed by:2027
Symbol 2020 GraphicUsed by:2027
Symbol 2021 GraphicUsed by:2027
Symbol 2022 GraphicUsed by:2027
Symbol 2023 GraphicUsed by:2027
Symbol 2024 GraphicUsed by:2027
Symbol 2025 GraphicUsed by:2027
Symbol 2026 GraphicUsed by:2027
Symbol 2027 MovieClip {Most27_1}Uses:2004 2005 2006 2007 1976 2008 2009 2010 1972 2011 2012 1979 2013 2014 2015 2016 2017 2018 2019 2020 2021 1990 1989 1992 1991 1993 1657 2022 2023 453 2024 2025 1999 2001 2000 2026 887Used by:2028
Symbol 2028 MovieClip {Stages.stage_27}Uses:263 122 1967 211 248 14 2003 283 279 1678 228 298 296 271 2027Used by:Timeline
Symbol 2029 Sound {GasBigSound}Used by:Timeline
Symbol 2030 GraphicUsed by:2037
Symbol 2031 MovieClipUses:396Used by:2037
Symbol 2032 GraphicUsed by:2037
Symbol 2033 MovieClipUses:1331Used by:2037
Symbol 2034 GraphicUsed by:2037
Symbol 2035 MovieClipUses:336Used by:2037
Symbol 2036 GraphicUsed by:2037
Symbol 2037 MovieClipUses:2030 2031 2032 2033 2034 2035 2036Used by:2057
Symbol 2038 GraphicUsed by:2039
Symbol 2039 MovieClip {Box_lvl30_1}Uses:2038Used by:2057
Symbol 2040 GraphicUsed by:2041
Symbol 2041 MovieClip {Box_lvl30_2}Uses:2040Used by:2057
Symbol 2042 GraphicUsed by:2056
Symbol 2043 GraphicUsed by:2056
Symbol 2044 GraphicUsed by:2056
Symbol 2045 GraphicUsed by:2056
Symbol 2046 GraphicUsed by:2056
Symbol 2047 GraphicUsed by:2056
Symbol 2048 GraphicUsed by:2056
Symbol 2049 GraphicUsed by:2056
Symbol 2050 GraphicUsed by:2056
Symbol 2051 GraphicUsed by:2056
Symbol 2052 GraphicUsed by:2056
Symbol 2053 GraphicUsed by:2056
Symbol 2054 GraphicUsed by:2056
Symbol 2055 GraphicUsed by:2056
Symbol 2056 MovieClip {Objects.Most30}Uses:2042 1991 1992 1993 1657 2043 2044 453 2045 2046 1970 1971 1977 1973 1974 1975 1978 1972 1979 2047 2048 2049 2050 2051 2052 2053 2054 2055 1968Used by:2057
Symbol 2057 MovieClip {Stages.stage_30}Uses:263 122 2037 287 268 228 298 94 271 2039 2041 2056 314Used by:Timeline
Symbol 2058 Sound {GasSmallSound}Used by:Timeline
Symbol 2059 GraphicUsed by:2181
Symbol 2060 MovieClipUses:1492Used by:2181
Symbol 2061 MovieClipUses:1146Used by:2181
Symbol 2062 GraphicUsed by:2181
Symbol 2063 MovieClipUses:1202Used by:2181
Symbol 2064 GraphicUsed by:2181
Symbol 2065 MovieClipUses:367Used by:2181
Symbol 2066 GraphicUsed by:2181
Symbol 2067 GraphicUsed by:2068
Symbol 2068 MovieClipUses:2067Used by:2181
Symbol 2069 GraphicUsed by:2181
Symbol 2070 MovieClipUses:377Used by:2181
Symbol 2071 GraphicUsed by:2181
Symbol 2072 MovieClipUses:420Used by:2181
Symbol 2073 GraphicUsed by:2181
Symbol 2074 MovieClipUses:1331Used by:2181
Symbol 2075 GraphicUsed by:2181
Symbol 2076 MovieClipUses:1044Used by:2181
Symbol 2077 MovieClipUses:348Used by:2181
Symbol 2078 GraphicUsed by:2181
Symbol 2079 MovieClipUses:336Used by:2181
Symbol 2080 GraphicUsed by:2181
Symbol 2081 MovieClipUses:325Used by:2181
Symbol 2082 MovieClipUses:329Used by:2181
Symbol 2083 GraphicUsed by:2181
Symbol 2084 GraphicUsed by:2085
Symbol 2085 MovieClipUses:2084Used by:2181
Symbol 2086 GraphicUsed by:2181
Symbol 2087 MovieClipUses:410Used by:2181
Symbol 2088 GraphicUsed by:2181
Symbol 2089 MovieClipUses:336Used by:2181
Symbol 2090 GraphicUsed by:2181
Symbol 2091 MovieClipUses:377Used by:2181
Symbol 2092 GraphicUsed by:2181
Symbol 2093 MovieClipUses:662Used by:2181
Symbol 2094 GraphicUsed by:2181
Symbol 2095 MovieClipUses:1331Used by:2181
Symbol 2096 GraphicUsed by:2181
Symbol 2097 MovieClipUses:339Used by:2181
Symbol 2098 MovieClipUses:1924Used by:2181
Symbol 2099 GraphicUsed by:2181
Symbol 2100 MovieClipUses:336Used by:2181
Symbol 2101 GraphicUsed by:2181
Symbol 2102 MovieClipUses:1228Used by:2181
Symbol 2103 MovieClipUses:1146Used by:2181
Symbol 2104 GraphicUsed by:2181
Symbol 2105 MovieClipUses:329Used by:2181
Symbol 2106 GraphicUsed by:2181
Symbol 2107 MovieClipUses:1331Used by:2181
Symbol 2108 GraphicUsed by:2181
Symbol 2109 MovieClipUses:348Used by:2181
Symbol 2110 GraphicUsed by:2181
Symbol 2111 MovieClipUses:377Used by:2181
Symbol 2112 GraphicUsed by:2181
Symbol 2113 GraphicUsed by:2114
Symbol 2114 MovieClipUses:2113Used by:2181
Symbol 2115 GraphicUsed by:2181
Symbol 2116 MovieClipUses:1331Used by:2181
Symbol 2117 GraphicUsed by:2181
Symbol 2118 MovieClipUses:339Used by:2181
Symbol 2119 MovieClipUses:348Used by:2181
Symbol 2120 GraphicUsed by:2181
Symbol 2121 MovieClipUses:348Used by:2181
Symbol 2122 GraphicUsed by:2181
Symbol 2123 MovieClipUses:1799Used by:2181
Symbol 2124 MovieClipUses:329Used by:2181
Symbol 2125 GraphicUsed by:2181
Symbol 2126 MovieClipUses:1202Used by:2181
Symbol 2127 GraphicUsed by:2181
Symbol 2128 MovieClipUses:367Used by:2181
Symbol 2129 GraphicUsed by:2181
Symbol 2130 MovieClipUses:348Used by:2181
Symbol 2131 GraphicUsed by:2181
Symbol 2132 MovieClipUses:377Used by:2181
Symbol 2133 GraphicUsed by:2181
Symbol 2134 MovieClipUses:920Used by:2181
Symbol 2135 GraphicUsed by:2181
Symbol 2136 MovieClipUses:1331Used by:2181
Symbol 2137 GraphicUsed by:2181
Symbol 2138 MovieClipUses:1044Used by:2181
Symbol 2139 MovieClipUses:348Used by:2181
Symbol 2140 GraphicUsed by:2181
Symbol 2141 MovieClipUses:1228Used by:2181
Symbol 2142 MovieClipUses:329Used by:2181
Symbol 2143 GraphicUsed by:2181
Symbol 2144 GraphicUsed by:2145
Symbol 2145 MovieClipUses:2144Used by:2181
Symbol 2146 GraphicUsed by:2181
Symbol 2147 MovieClipUses:367Used by:2181
Symbol 2148 GraphicUsed by:2181
Symbol 2149 MovieClipUses:377Used by:2181
Symbol 2150 GraphicUsed by:2181
Symbol 2151 MovieClipUses:420Used by:2181
Symbol 2152 GraphicUsed by:2181
Symbol 2153 MovieClipUses:339Used by:2181
Symbol 2154 MovieClipUses:348Used by:2181
Symbol 2155 GraphicUsed by:2181
Symbol 2156 MovieClipUses:348Used by:2181
Symbol 2157 GraphicUsed by:2181
Symbol 2158 MovieClipUses:325Used by:2181
Symbol 2159 MovieClipUses:329Used by:2181
Symbol 2160 GraphicUsed by:2181
Symbol 2161 MovieClipUses:329Used by:2181
Symbol 2162 GraphicUsed by:2181
Symbol 2163 MovieClipUses:348Used by:2181
Symbol 2164 GraphicUsed by:2181
Symbol 2165 MovieClipUses:432Used by:2181
Symbol 2166 GraphicUsed by:2181
Symbol 2167 MovieClipUses:407Used by:2181
Symbol 2168 GraphicUsed by:2181
Symbol 2169 MovieClipUses:325Used by:2181
Symbol 2170 MovieClipUses:329Used by:2181
Symbol 2171 GraphicUsed by:2181
Symbol 2172 MovieClipUses:329Used by:2181
Symbol 2173 GraphicUsed by:2181
Symbol 2174 MovieClipUses:348Used by:2181
Symbol 2175 GraphicUsed by:2181
Symbol 2176 MovieClipUses:432Used by:2181
Symbol 2177 GraphicUsed by:2181
Symbol 2178 MovieClipUses:407Used by:2181
Symbol 2179 GraphicUsed by:2181
Symbol 2180 GraphicUsed by:2181
Symbol 2181 MovieClipUses:2059 2060 2061 2062 2063 2064 2065 2066 2068 2069 2070 2071 2072 2073 2074 2075 2076 2077 2078 2079 2080 2081 2082 2083 2085 2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 2096 2097 2098 2099 2100 2101 2102 2103 2104 2105 2106 2107 2108 2109 2110 2111 2112 2114 2115 2116 2117 2118 2119 2120 2121 2122 2123 2124 2125 2126 2127 2128 2129 2130 2131 2132 2133 2134 2135 2136 2137 2138 2139 2140 2141 2142 2143 2145 2146 2147 2148 2149 2150 2151 2152 2153 2154 2155 2156 2157 2158 2159 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 2170 2171 2172 2173 2174 2175 2176 2177 2178 2179 2180Used by:2182
Symbol 2182 MovieClip {Stages.stage_29}Uses:263 279 283 122 2181 211 248 14 287 94 228 298 271 231 296 1676 314 112Used by:Timeline
Symbol 2183 Sound {ExplosionSound}Used by:Timeline
Symbol 2184 GraphicUsed by:2244
Symbol 2185 MovieClipUses:325Used by:2244
Symbol 2186 GraphicUsed by:2187
Symbol 2187 MovieClipUses:2186Used by:2244
Symbol 2188 GraphicUsed by:2244
Symbol 2189 MovieClipUses:1146Used by:2244
Symbol 2190 GraphicUsed by:2244
Symbol 2191 MovieClipUses:1557Used by:2244
Symbol 2192 GraphicUsed by:2244
Symbol 2193 MovieClipUses:336Used by:2244
Symbol 2194 GraphicUsed by:2244
Symbol 2195 MovieClipUses:377Used by:2244
Symbol 2196 GraphicUsed by:2244
Symbol 2197 MovieClipUses:662Used by:2244
Symbol 2198 GraphicUsed by:2244
Symbol 2199 MovieClipUses:1557Used by:2244
Symbol 2200 GraphicUsed by:2244
Symbol 2201 MovieClipUses:339Used by:2244
Symbol 2202 MovieClipUses:336Used by:2244
Symbol 2203 GraphicUsed by:2244
Symbol 2204 MovieClipUses:336Used by:2244
Symbol 2205 GraphicUsed by:2244
Symbol 2206 MovieClipUses:1228Used by:2244
Symbol 2207 MovieClipUses:329Used by:2244
Symbol 2208 GraphicUsed by:2244
Symbol 2209 MovieClipUses:339Used by:2244
Symbol 2210 MovieClipUses:348Used by:2244
Symbol 2211 GraphicUsed by:2244
Symbol 2212 MovieClipUses:348Used by:2244
Symbol 2213 GraphicUsed by:2244
Symbol 2214 MovieClipUses:339Used by:2244
Symbol 2215 GraphicUsed by:2244
Symbol 2216 MovieClipUses:339Used by:2244
Symbol 2217 MovieClipUses:348Used by:2244
Symbol 2218 GraphicUsed by:2244
Symbol 2219 MovieClipUses:348Used by:2244
Symbol 2220 GraphicUsed by:2244
Symbol 2221 MovieClipUses:329Used by:2244
Symbol 2222 GraphicUsed by:2244
Symbol 2223 MovieClipUses:662Used by:2244
Symbol 2224 GraphicUsed by:2244
Symbol 2225 MovieClipUses:367Used by:2244
Symbol 2226 GraphicUsed by:2244
Symbol 2227 MovieClipUses:339Used by:2244
Symbol 2228 MovieClipUses:348Used by:2244
Symbol 2229 GraphicUsed by:2244
Symbol 2230 MovieClipUses:348Used by:2244
Symbol 2231 GraphicUsed by:2244
Symbol 2232 MovieClipUses:329Used by:2244
Symbol 2233 GraphicUsed by:2244
Symbol 2234 MovieClipUses:662Used by:2244
Symbol 2235 GraphicUsed by:2244
Symbol 2236 MovieClipUses:367Used by:2244
Symbol 2237 GraphicUsed by:2244
Symbol 2238 GraphicUsed by:2244
Symbol 2239 GraphicUsed by:2244
Symbol 2240 GraphicUsed by:2244
Symbol 2241 GraphicUsed by:2244
Symbol 2242 GraphicUsed by:2244
Symbol 2243 GraphicUsed by:2244
Symbol 2244 MovieClipUses:2184 2185 2187 2188 2189 2190 2191 2192 2193 2194 2195 2196 2197 2198 2199 2200 2201 2202 2203 2204 2205 2206 2207 2208 2209 2210 2211 2212 2213 2214 2215 2216 2217 2218 2219 2220 2221 2222 2223 2224 2225 2226 2227 2228 2229 2230 2231 2232 2233 2234 2235 2236 2237 2238 2239 2240 2241 2242 2243Used by:2276
Symbol 2245 GraphicUsed by:2258
Symbol 2246 GraphicUsed by:2258
Symbol 2247 GraphicUsed by:2258
Symbol 2248 GraphicUsed by:2258
Symbol 2249 GraphicUsed by:2258
Symbol 2250 GraphicUsed by:2258
Symbol 2251 GraphicUsed by:2258
Symbol 2252 GraphicUsed by:2258
Symbol 2253 GraphicUsed by:2258
Symbol 2254 GraphicUsed by:2258
Symbol 2255 GraphicUsed by:2258
Symbol 2256 GraphicUsed by:2258
Symbol 2257 GraphicUsed by:2258
Symbol 2258 MovieClip {Most14}Uses:1968 2245 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 2246 2247 2248 2249 2250 2251 2252 2253 2254 1989 1990 1991 1992 1993 1657 1998 1994 1996 453 2255 2256 1999 2000 2001 2257Used by:2276
Symbol 2259 GraphicUsed by:2273
Symbol 2260 GraphicUsed by:2273
Symbol 2261 GraphicUsed by:2273
Symbol 2262 GraphicUsed by:2273
Symbol 2263 GraphicUsed by:2273
Symbol 2264 GraphicUsed by:2273
Symbol 2265 GraphicUsed by:2273
Symbol 2266 GraphicUsed by:2273
Symbol 2267 GraphicUsed by:2273
Symbol 2268 GraphicUsed by:2273
Symbol 2269 GraphicUsed by:2273
Symbol 2270 GraphicUsed by:2273
Symbol 2271 GraphicUsed by:2273
Symbol 2272 GraphicUsed by:2273
Symbol 2273 MovieClip {Most14_2}Uses:2259 2260 2261 2262 2263 2264 2265 2266 2267 2268 2269 2270 2271 2272Used by:2276
Symbol 2274 GraphicUsed by:2275
Symbol 2275 MovieClip {Box_lvl14}Uses:2274Used by:2276
Symbol 2276 MovieClip {Stages.stage_14}Uses:181 122 2244 246 211 248 2258 2273 228 231 268 112 298 2275Used by:Timeline
Symbol 2277 Sound {GoldSound}Used by:Timeline
Symbol 2278 Sound {RestartSound}Used by:Timeline
Symbol 2279 Sound {WinSound}Used by:Timeline
Symbol 2280 Sound {Music2}Used by:Timeline
Symbol 2281 Sound {Music1}Used by:Timeline
Symbol 2282 GraphicUsed by:2283 2317
Symbol 2283 MovieClipUses:2282Used by:2315
Symbol 2284 GraphicUsed by:2314 2315
Symbol 2285 BitmapUsed by:2286 2298
Symbol 2286 GraphicUses:2285Used by:2314 2315
Symbol 2287 GraphicUsed by:2314 2315
Symbol 2288 GraphicUsed by:2314 2315
Symbol 2289 GraphicUsed by:2314 2315
Symbol 2290 GraphicUsed by:2314 2315
Symbol 2291 GraphicUsed by:2314 2315
Symbol 2292 GraphicUsed by:2314 2315
Symbol 2293 GraphicUsed by:2314 2315
Symbol 2294 GraphicUsed by:2314 2315
Symbol 2295 GraphicUsed by:2314 2315
Symbol 2296 GraphicUsed by:2314 2315
Symbol 2297 GraphicUsed by:2314 2315
Symbol 2298 GraphicUses:2285Used by:2314 2315
Symbol 2299 GraphicUsed by:2312
Symbol 2300 GraphicUsed by:2312
Symbol 2301 GraphicUsed by:2312
Symbol 2302 GraphicUsed by:2312
Symbol 2303 GraphicUsed by:2312
Symbol 2304 GraphicUsed by:2312
Symbol 2305 GraphicUsed by:2312
Symbol 2306 GraphicUsed by:2312
Symbol 2307 GraphicUsed by:2312
Symbol 2308 GraphicUsed by:2312
Symbol 2309 GraphicUsed by:2312
Symbol 2310 GraphicUsed by:2312
Symbol 2311 GraphicUsed by:2312
Symbol 2312 MovieClipUses:2299 2300 2301 2302 2303 2304 2305 2306 2307 2308 2309 2310 2311Used by:2313
Symbol 2313 MovieClip {PipolSmasher_fla.bubble_logo3_1104}Uses:2312Used by:2314 2315
Symbol 2314 MovieClipUses:2298 2313 2297 2296 2295 2294 2293 2292 2287 2291 2290 2289 2288 2286 2284Used by:2315
Symbol 2315 MovieClip {PipolSmasher_fla.BubbleBoxSplash_1102}Uses:2283 2284 2286 2287 2288 2289 2290 2291 2292 2293 2294 2295 2296 2297 107 2298 2313 2314Used by:Timeline
Symbol 2316 GraphicUsed by:2317
Symbol 2317 Button {gui.SplashButton}Uses:2316 2282 48Used by:Timeline
Symbol 2318 BitmapUsed by:2319
Symbol 2319 GraphicUses:2318Used by:Timeline
Symbol 2320 TextUses:18Used by:2323
Symbol 2321 TextUses:18Used by:2323
Symbol 2322 GraphicUsed by:2323
Symbol 2323 Button {gui.VogdButton}Uses:2320 2321 2322Used by:Timeline
Symbol 2324 GraphicUsed by:2493
Symbol 2325 GraphicUsed by:2493
Symbol 2326 TextUses:8Used by:2493
Symbol 2327 TextUses:8Used by:2493
Symbol 2328 TextUses:8Used by:2493
Symbol 2329 TextUses:8Used by:2493
Symbol 2330 TextUses:8Used by:2493
Symbol 2331 TextUses:8Used by:2493
Symbol 2332 TextUses:8Used by:2493
Symbol 2333 GraphicUsed by:2335
Symbol 2334 GraphicUsed by:2335
Symbol 2335 ButtonUses:2333 2334 48Used by:2493
Symbol 2336 TextUses:8Used by:2493
Symbol 2337 TextUses:8Used by:2493
Symbol 2338 TextUses:8Used by:2493
Symbol 2339 TextUses:8Used by:2493
Symbol 2340 TextUses:8Used by:2493
Symbol 2341 TextUses:8Used by:2493
Symbol 2342 TextUses:8Used by:2493
Symbol 2343 TextUses:8Used by:2493
Symbol 2344 TextUses:8Used by:2493
Symbol 2345 TextUses:8Used by:2493
Symbol 2346 TextUses:8Used by:2493
Symbol 2347 TextUses:8Used by:2493
Symbol 2348 TextUses:8Used by:2493
Symbol 2349 TextUses:8Used by:2493
Symbol 2350 TextUses:8Used by:2493
Symbol 2351 TextUses:8Used by:2493
Symbol 2352 TextUses:8Used by:2493
Symbol 2353 TextUses:8Used by:2493
Symbol 2354 TextUses:8Used by:2493
Symbol 2355 TextUses:8Used by:2493
Symbol 2356 TextUses:8Used by:2493
Symbol 2357 TextUses:8Used by:2493
Symbol 2358 TextUses:8Used by:2493
Symbol 2359 TextUses:8Used by:2493
Symbol 2360 TextUses:8Used by:2493
Symbol 2361 TextUses:8Used by:2493
Symbol 2362 TextUses:8Used by:2493
Symbol 2363 TextUses:8Used by:2493
Symbol 2364 TextUses:8Used by:2493
Symbol 2365 TextUses:8Used by:2493
Symbol 2366 TextUses:8Used by:2493
Symbol 2367 TextUses:8Used by:2493
Symbol 2368 TextUses:8Used by:2493
Symbol 2369 TextUses:8Used by:2493
Symbol 2370 GraphicUsed by:2372
Symbol 2371 GraphicUsed by:2372
Symbol 2372 ButtonUses:2370 2371 48Used by:2493
Symbol 2373 GraphicUsed by:2375
Symbol 2374 GraphicUsed by:2375
Symbol 2375 ButtonUses:2373 2374 48Used by:2493
Symbol 2376 TextUses:8Used by:2493
Symbol 2377 GraphicUsed by:2379
Symbol 2378 GraphicUsed by:2379
Symbol 2379 ButtonUses:2377 226 2378 119 117 48Used by:2493
Symbol 2380 TextUses:8Used by:2493
Symbol 2381 GraphicUsed by:2382
Symbol 2382 ButtonUses:2381 48Used by:2493
Symbol 2383 TextUses:8Used by:2493
Symbol 2384 GraphicUsed by:2420 2421
Symbol 2385 BitmapUsed by:2386
Symbol 2386 GraphicUses:2385Used by:2392 2421
Symbol 2387 GraphicUsed by:2392 2421
Symbol 2388 GraphicUsed by:2392 2421
Symbol 2389 GraphicUsed by:2392 2421
Symbol 2390 GraphicUsed by:2392 2421
Symbol 2391 GraphicUsed by:2392 2421
Symbol 2392 MovieClipUses:2386 2387 2388 2389 2390 2391Used by:2420
Symbol 2393 GraphicUsed by:2403 2421
Symbol 2394 GraphicUsed by:2403 2421
Symbol 2395 GraphicUsed by:2403 2421
Symbol 2396 GraphicUsed by:2403 2421
Symbol 2397 GraphicUsed by:2403 2421
Symbol 2398 GraphicUsed by:2403 2421
Symbol 2399 GraphicUsed by:2403 2421
Symbol 2400 GraphicUsed by:2403 2421
Symbol 2401 GraphicUsed by:2403 2421
Symbol 2402 GraphicUsed by:2403 2421
Symbol 2403 MovieClipUses:2393 2394 2395 2396 2397 2398 2399 2400 2401 2402Used by:2420
Symbol 2404 GraphicUsed by:2420
Symbol 2405 GraphicUsed by:2420
Symbol 2406 GraphicUsed by:2420
Symbol 2407 GraphicUsed by:2420
Symbol 2408 GraphicUsed by:2420
Symbol 2409 GraphicUsed by:2420
Symbol 2410 GraphicUsed by:2420
Symbol 2411 GraphicUsed by:2420
Symbol 2412 GraphicUsed by:2420
Symbol 2413 GraphicUsed by:2420
Symbol 2414 GraphicUsed by:2420
Symbol 2415 GraphicUsed by:2420
Symbol 2416 GraphicUsed by:2420
Symbol 2417 GraphicUsed by:2420
Symbol 2418 GraphicUsed by:2420
Symbol 2419 GraphicUsed by:2420
Symbol 2420 MovieClip {PipolSmasher_fla.black_bbx_btn_1117}Uses:2384 2392 2403 2404 2405 2406 2407 2408 2409 2410 2411 2412 2413 2414 2415 2416 2417 2418 2419Used by:2421
Symbol 2421 Button {gui.BubbleButton}Uses:2420 2384 2386 2387 2388 2389 2390 2391 2393 2394 2395 2396 2397 2398 2399 2400 2401 2402 48Used by:2493  Timeline
Symbol 2422 TextUses:8Used by:2493
Symbol 2423 GraphicUsed by:2426
Symbol 2424 TextUses:8Used by:2426
Symbol 2425 EditableTextUses:8Used by:2426
Symbol 2426 MovieClipUses:2423 2424 2425Used by:2493
Symbol 2427 GraphicUsed by:2428 2443 2478 2491
Symbol 2428 MovieClipUses:2427Used by:2443 2478 2491
Symbol 2429 GraphicUsed by:2442
Symbol 2430 GraphicUsed by:2441
Symbol 2431 GraphicUsed by:2432
Symbol 2432 MovieClipUses:2431Used by:2441
Symbol 2433 GraphicUsed by:2438
Symbol 2434 GraphicUsed by:2437
Symbol 2435 GraphicUsed by:2437
Symbol 2436 GraphicUsed by:2437
Symbol 2437 MovieClipUses:2434 2435 2436Used by:2438
Symbol 2438 MovieClipUses:2433 2437Used by:2439
Symbol 2439 MovieClipUses:91 2438Used by:2441
Symbol 2440 GraphicUsed by:2441
Symbol 2441 MovieClipUses:2430 2432 2439 2440Used by:2442
Symbol 2442 MovieClipUses:2429 2441Used by:2443
Symbol 2443 Button {gui.WereboxButton}Uses:2428 2442 2427 48Used by:2493
Symbol 2444 TextUses:8Used by:2493
Symbol 2445 GraphicUsed by:2477
Symbol 2446 GraphicUsed by:2447
Symbol 2447 MovieClipUses:2446Used by:2476
Symbol 2448 GraphicUsed by:2449
Symbol 2449 MovieClip {PipolSmasher_fla.Vehicles_Tween16_1134}Uses:2448Used by:2471
Symbol 2450 GraphicUsed by:2471
Symbol 2451 GraphicUsed by:2471
Symbol 2452 GraphicUsed by:2471
Symbol 2453 GraphicUsed by:2471
Symbol 2454 GraphicUsed by:2471
Symbol 2455 GraphicUsed by:2471
Symbol 2456 GraphicUsed by:2471
Symbol 2457 GraphicUsed by:2471
Symbol 2458 GraphicUsed by:2471
Symbol 2459 GraphicUsed by:2471
Symbol 2460 GraphicUsed by:2471
Symbol 2461 GraphicUsed by:2471
Symbol 2462 GraphicUsed by:2471
Symbol 2463 GraphicUsed by:2471
Symbol 2464 GraphicUsed by:2471
Symbol 2465 GraphicUsed by:2471
Symbol 2466 GraphicUsed by:2471
Symbol 2467 GraphicUsed by:2471
Symbol 2468 GraphicUsed by:2471
Symbol 2469 GraphicUsed by:2471
Symbol 2470 GraphicUsed by:2471
Symbol 2471 MovieClipUses:2449 2450 2451 2452 2453 2454 2455 2456 2457 2458 2459 2460 2461 2462 2463 2464 2465 2466 2467 2468 2469 2470Used by:2476
Symbol 2472 GraphicUsed by:2473
Symbol 2473 MovieClipUses:2472Used by:2476
Symbol 2474 GraphicUsed by:2475
Symbol 2475 MovieClipUses:2474Used by:2476
Symbol 2476 MovieClipUses:2447 2471 2473 2475Used by:2477
Symbol 2477 MovieClipUses:2445 2476Used by:2478
Symbol 2478 Button {gui.VehiclesButton}Uses:2428 2477 2427 48Used by:2493
Symbol 2479 TextUses:8Used by:2493
Symbol 2480 TextUses:8Used by:2481
Symbol 2481 ButtonUses:2480 48Used by:2493
Symbol 2482 GraphicUsed by:2490
Symbol 2483 BitmapUsed by:2484
Symbol 2484 GraphicUses:2483Used by:2489
Symbol 2485 BitmapUsed by:2486
Symbol 2486 GraphicUses:2485Used by:2489
Symbol 2487 BitmapUsed by:2488
Symbol 2488 GraphicUses:2487Used by:2489
Symbol 2489 MovieClipUses:2484 2486 2488Used by:2490
Symbol 2490 MovieClipUses:2482 2489Used by:2491
Symbol 2491 Button {gui.LaraButton}Uses:2428 2490 2427 48Used by:2493
Symbol 2492 TextUses:8Used by:2493
Symbol 2493 MovieClip {gui.LevelsButtonsClip}Uses:2324 2325 2326 2327 2328 2329 2330 2331 2332 159 160 2335 2336 2337 85 2338 2339 2340 2341 2342 2343 2344 2345 2346 2347 2348 2349 2350 2351 2352 2353 2354 2355 2356 2357 2358 2359 2360 2361 2362 2363 2364 2365 2366 2367 2368 2369 2372 2375 2376 2379 2380 2382 2383 2421 2422 2426 2443 2444 2478 2479 2481 2491 2492Used by:Timeline
Symbol 2494 GraphicUsed by:2495
Symbol 2495 Button {gui.NextButton}Uses:2494 48Used by:2497
Symbol 2496 TextUses:8Used by:2497
Symbol 2497 MovieClip {gui.WinMenu}Uses:2495 2496Used by:Timeline
Symbol 2498 FontUsed by:2499 2500 2512
Symbol 2499 TextUses:2498Used by:Timeline
Symbol 2500 EditableTextUses:2498Used by:Timeline
Symbol 2501 GraphicUsed by:2505
Symbol 2502 GraphicUsed by:2503
Symbol 2503 MovieClipUses:108 2502Used by:2505
Symbol 2504 GraphicUsed by:2505
Symbol 2505 MovieClip {gui.SoundButton}Uses:2501 2503 2504Used by:Timeline
Symbol 2506 GraphicUsed by:2508
Symbol 2507 GraphicUsed by:2508
Symbol 2508 Button {gui.GMButtonWalk}Uses:2506 2507 48Used by:2510
Symbol 2509 TextUses:8Used by:2510
Symbol 2510 MovieClip {gui.MenuWalkClip}Uses:2508 2509Used by:Timeline
Symbol 2511 TextUses:8Used by:Timeline
Symbol 2512 EditableTextUses:2498Used by:Timeline

Instance Names

"adBox"Frame 1Symbol 162 MovieClip
"IBox"Frame 9Symbol 109 MovieClip
"WinMenu"Frame 65Symbol 2497 MovieClip {gui.WinMenu}
"GameMenu"Frame 65Symbol 83 MovieClip {gui.GameMenu}
"clicks_number_text"Frame 65Symbol 2500 EditableText
"SoundButton"Frame 65Symbol 2505 MovieClip {gui.SoundButton}
"WinMenu"Frame 95Symbol 2497 MovieClip {gui.WinMenu}
"GameMenu"Frame 95Symbol 83 MovieClip {gui.GameMenu}
"clicks_number_text"Frame 95Symbol 2512 EditableText
"SoundButton"Frame 95Symbol 2505 MovieClip {gui.SoundButton}
"bg"Symbol 23 MovieClip {gui.LevelNumber} Frame 1Symbol 15 MovieClip
"level_number_text"Symbol 23 MovieClip {gui.LevelNumber} Frame 1Symbol 19 EditableText
"scores_number_text"Symbol 23 MovieClip {gui.LevelNumber} Frame 1Symbol 21 EditableText
"scores2_number_text"Symbol 23 MovieClip {gui.LevelNumber} Frame 1Symbol 22 EditableText
"send_btn"Symbol 82 MovieClip {bubblebox_submit_score} Frame 1Symbol 60 MovieClip {bubblebox_submit_score_fla.bubblebox_send_btn_2}
"bubblebox_name"Symbol 82 MovieClip {bubblebox_submit_score} Frame 1Symbol 68 EditableText
"bubblebox_saving"Symbol 82 MovieClip {bubblebox_submit_score} Frame 2Symbol 73 MovieClip {bubblebox_submit_score_fla.bubblebox_saving_5}
"bubblebox_view_score"Symbol 82 MovieClip {bubblebox_submit_score} Frame 3Symbol 76 MovieClip {bubblebox_submit_score_fla.bubblebox_view_scores_8}
"postext"Symbol 82 MovieClip {bubblebox_submit_score} Frame 3Symbol 77 EditableText
"try_again"Symbol 82 MovieClip {bubblebox_submit_score} Frame 4Symbol 80 MovieClip {bubblebox_submit_score_fla.bubblebox_try_again_10}
"MainMenu"Symbol 83 MovieClip {gui.GameMenu} Frame 1Symbol 51 Button {gui.GMButtonMenu}
"bubbleBox"Symbol 83 MovieClip {gui.GameMenu} Frame 1Symbol 82 MovieClip {bubblebox_submit_score}
"Face"Symbol 91 MovieClip Frame 1Symbol 90 MovieClip {PipolSmasher_fla.Batters2_960}
"smoke"Symbol 109 MovieClip Frame 1Symbol 106 MovieClip
"selector"Symbol 109 MovieClip Frame 1Symbol 108 MovieClip
"Box"Symbol 112 MovieClip {Objects.Car1} Frame 1Symbol 96 MovieClip
"Wheel1"Symbol 112 MovieClip {Objects.Car1} Frame 1Symbol 98 MovieClip
"Wheel2"Symbol 112 MovieClip {Objects.Car1} Frame 1Symbol 98 MovieClip
"IBox"Symbol 112 MovieClip {Objects.Car1} Frame 1Symbol 109 MovieClip
"IWheel1"Symbol 112 MovieClip {Objects.Car1} Frame 1Symbol 111 MovieClip
"IWheel2"Symbol 112 MovieClip {Objects.Car1} Frame 1Symbol 111 MovieClip
"smoke"Symbol 134 MovieClip Frame 1Symbol 106 MovieClip
"smoke"Symbol 135 MovieClip Frame 1Symbol 106 MovieClip
"smoke"Symbol 138 MovieClip Frame 1Symbol 106 MovieClip
"smoke"Symbol 141 MovieClip Frame 1Symbol 106 MovieClip
"TText"Symbol 155 MovieClip Frame 1Symbol 154 EditableText
"Procents"Symbol 156 MovieClip Frame 1Symbol 155 MovieClip
"BPlay"Symbol 157 MovieClip {gui.Preloader} Frame 1Symbol 130 Button
"Paravoz"Symbol 157 MovieClip {gui.Preloader} Frame 1Symbol 142 MovieClip
"Man"Symbol 157 MovieClip {gui.Preloader} Frame 1Symbol 156 MovieClip
"Procents"Symbol 157 MovieClip {gui.Preloader} Frame 102Symbol 155 MovieClip
"Head"Symbol 227 MovieClip Frame 1Symbol 215 MovieClip {Man_01_Head}
"Body"Symbol 227 MovieClip Frame 1Symbol 217 MovieClip {Man_01_Body}
"Hand1"Symbol 227 MovieClip Frame 1Symbol 219 MovieClip {Man_01_Hand1}
"Hand2"Symbol 227 MovieClip Frame 1Symbol 221 MovieClip {Man_01_Hand2}
"Leg1"Symbol 227 MovieClip Frame 1Symbol 223 MovieClip {Man_01_Leg1}
"Leg2"Symbol 227 MovieClip Frame 1Symbol 225 MovieClip {Man_01_Leg2}
"IImage"Symbol 227 MovieClip Frame 1Symbol 226 MovieClip {PipolSmasher_fla.ManImage_41}
"BBox"Symbol 228 MovieClip {Objects.Man_01} Frame 1Symbol 213 MovieClip
"BBody"Symbol 228 MovieClip {Objects.Man_01} Frame 1Symbol 227 MovieClip
"selector"Symbol 230 MovieClip Frame 1Symbol 108 MovieClip
"smoke"Symbol 230 MovieClip Frame 1Symbol 106 MovieClip
"Box"Symbol 231 MovieClip {Objects.Car4} Frame 1Symbol 96 MovieClip
"Wheel2"Symbol 231 MovieClip {Objects.Car4} Frame 1Symbol 98 MovieClip
"Wheel3"Symbol 231 MovieClip {Objects.Car4} Frame 1Symbol 98 MovieClip
"Wheel4"Symbol 231 MovieClip {Objects.Car4} Frame 1Symbol 98 MovieClip
"Wheel1"Symbol 231 MovieClip {Objects.Car4} Frame 1Symbol 98 MovieClip
"Wheel5"Symbol 231 MovieClip {Objects.Car4} Frame 1Symbol 98 MovieClip
"IWheel2"Symbol 231 MovieClip {Objects.Car4} Frame 1Symbol 229 MovieClip
"IWheel3"Symbol 231 MovieClip {Objects.Car4} Frame 1Symbol 229 MovieClip
"IWheel4"Symbol 231 MovieClip {Objects.Car4} Frame 1Symbol 229 MovieClip
"IBox"Symbol 231 MovieClip {Objects.Car4} Frame 1Symbol 230 MovieClip
"IWheel1"Symbol 231 MovieClip {Objects.Car4} Frame 1Symbol 229 MovieClip
"IWheel5"Symbol 231 MovieClip {Objects.Car4} Frame 1Symbol 229 MovieClip
"Man_01"Symbol 236 MovieClip {Stages.stage_12} Frame 1Symbol 228 MovieClip {Objects.Man_01}
"smoke"Symbol 257 MovieClip Frame 1Symbol 106 MovieClip
"selector"Symbol 257 MovieClip Frame 1Symbol 108 MovieClip
"Box"Symbol 258 MovieClip {Objects.Car1_Back} Frame 1Symbol 96 MovieClip
"Wheel1"Symbol 258 MovieClip {Objects.Car1_Back} Frame 1Symbol 98 MovieClip
"Wheel2"Symbol 258 MovieClip {Objects.Car1_Back} Frame 1Symbol 98 MovieClip
"IBox"Symbol 258 MovieClip {Objects.Car1_Back} Frame 1Symbol 257 MovieClip
"IWheel1"Symbol 258 MovieClip {Objects.Car1_Back} Frame 1Symbol 111 MovieClip
"IWheel2"Symbol 258 MovieClip {Objects.Car1_Back} Frame 1Symbol 111 MovieClip
"Man_01"Symbol 259 MovieClip {Stages.stage_01} Frame 1Symbol 228 MovieClip {Objects.Man_01}
"smoke"Symbol 267 MovieClip Frame 1Symbol 106 MovieClip
"selector"Symbol 267 MovieClip Frame 1Symbol 108 MovieClip
"Box"Symbol 268 MovieClip {Objects.Car2_Back} Frame 1Symbol 96 MovieClip
"Wheel1"Symbol 268 MovieClip {Objects.Car2_Back} Frame 1Symbol 98 MovieClip
"Wheel2"Symbol 268 MovieClip {Objects.Car2_Back} Frame 1Symbol 98 MovieClip
"IBox"Symbol 268 MovieClip {Objects.Car2_Back} Frame 1Symbol 267 MovieClip
"IWheel1"Symbol 268 MovieClip {Objects.Car2_Back} Frame 1Symbol 132 MovieClip
"IWheel2"Symbol 268 MovieClip {Objects.Car2_Back} Frame 1Symbol 132 MovieClip
"smoke"Symbol 280 MovieClip Frame 1Symbol 106 MovieClip
"selector"Symbol 280 MovieClip Frame 1Symbol 108 MovieClip
"Box"Symbol 281 MovieClip {Objects.Car2} Frame 1Symbol 96 MovieClip
"Wheel1"Symbol 281 MovieClip {Objects.Car2} Frame 1Symbol 98 MovieClip
"Wheel2"Symbol 281 MovieClip {Objects.Car2} Frame 1Symbol 98 MovieClip
"IBox"Symbol 281 MovieClip {Objects.Car2} Frame 1Symbol 280 MovieClip
"IWheel1"Symbol 281 MovieClip {Objects.Car2} Frame 1Symbol 132 MovieClip
"IWheel2"Symbol 281 MovieClip {Objects.Car2} Frame 1Symbol 132 MovieClip
"Man_01"Symbol 284 MovieClip {Stages.stage_13} Frame 1Symbol 228 MovieClip {Objects.Man_01}
"Car_01"Symbol 284 MovieClip {Stages.stage_13} Frame 1Symbol 281 MovieClip {Objects.Car2}
"smoke"Symbol 288 MovieClip Frame 1Symbol 106 MovieClip
"selector"Symbol 288 MovieClip Frame 1Symbol 108 MovieClip
"Box"Symbol 289 MovieClip {Objects.Car3} Frame 1Symbol 96 MovieClip
"Wheel1"Symbol 289 MovieClip {Objects.Car3} Frame 1Symbol 98 MovieClip
"Wheel2"Symbol 289 MovieClip {Objects.Car3} Frame 1Symbol 98 MovieClip
"IBox"Symbol 289 MovieClip {Objects.Car3} Frame 1Symbol 288 MovieClip
"IWheel1"Symbol 289 MovieClip {Objects.Car3} Frame 1Symbol 229 MovieClip
"IWheel2"Symbol 289 MovieClip {Objects.Car3} Frame 1Symbol 229 MovieClip
"smoke"Symbol 290 MovieClip Frame 1Symbol 106 MovieClip
"selector"Symbol 290 MovieClip Frame 1Symbol 108 MovieClip
"Box"Symbol 291 MovieClip {Objects.Car3_Back} Frame 1Symbol 96 MovieClip
"Wheel1"Symbol 291 MovieClip {Objects.Car3_Back} Frame 1Symbol 98 MovieClip
"Wheel2"Symbol 291 MovieClip {Objects.Car3_Back} Frame 1Symbol 98 MovieClip
"IBox"Symbol 291 MovieClip {Objects.Car3_Back} Frame 1Symbol 290 MovieClip
"IWheel1"Symbol 291 MovieClip {Objects.Car3_Back} Frame 1Symbol 229 MovieClip
"IWheel2"Symbol 291 MovieClip {Objects.Car3_Back} Frame 1Symbol 229 MovieClip
"SStatic_01"Symbol 315 MovieClip {Stages.stage_21} Frame 1Symbol 122 MovieClip {Objects.BoxSleep}
"FFire_01"Symbol 315 MovieClip {Stages.stage_21} Frame 1Symbol 271 MovieClip {Objects.Fire}
"Fire_01"Symbol 315 MovieClip {Stages.stage_21} Frame 1Symbol 296 MovieClip {Objects.FireTrigger}
"Static_01"Symbol 315 MovieClip {Stages.stage_21} Frame 1Symbol 298 MovieClip {Objects.StaticTrigger}
"ISStatic_01"Symbol 315 MovieClip {Stages.stage_21} Frame 1Symbol 314 MovieClip {Objects.Most19}
"SStatic_01"Symbol 475 MovieClip {Stages.stage_09} Frame 1Symbol 122 MovieClip {Objects.BoxSleep}
"SStatic_02"Symbol 475 MovieClip {Stages.stage_09} Frame 1Symbol 122 MovieClip {Objects.BoxSleep}
"SStatic_03"Symbol 475 MovieClip {Stages.stage_09} Frame 1Symbol 122 MovieClip {Objects.BoxSleep}
"Static_01"Symbol 475 MovieClip {Stages.stage_09} Frame 1Symbol 298 MovieClip {Objects.StaticTrigger}
"Static_02"Symbol 475 MovieClip {Stages.stage_09} Frame 1Symbol 298 MovieClip {Objects.StaticTrigger}
"Static_03"Symbol 475 MovieClip {Stages.stage_09} Frame 1Symbol 298 MovieClip {Objects.StaticTrigger}
"ISStatic_03"Symbol 475 MovieClip {Stages.stage_09} Frame 1Symbol 474 MovieClip {Stage09_Most}
"ISStatic_01"Symbol 475 MovieClip {Stages.stage_09} Frame 1Symbol 474 MovieClip {Stage09_Most}
"ISStatic_02"Symbol 475 MovieClip {Stages.stage_09} Frame 1Symbol 474 MovieClip {Stage09_Most}
"Car_01"Symbol 1172 MovieClip {Stages.stage_10} Frame 1Symbol 281 MovieClip {Objects.Car2}
"SStatic_01"Symbol 1311 MovieClip {Stages.stage_19} Frame 1Symbol 122 MovieClip {Objects.BoxSleep}
"Static_01"Symbol 1311 MovieClip {Stages.stage_19} Frame 1Symbol 298 MovieClip {Objects.StaticTrigger}
"FFire_01"Symbol 1311 MovieClip {Stages.stage_19} Frame 1Symbol 271 MovieClip {Objects.Fire}
"Fire_01"Symbol 1311 MovieClip {Stages.stage_19} Frame 1Symbol 296 MovieClip {Objects.FireTrigger}
"ISStatic_01"Symbol 1311 MovieClip {Stages.stage_19} Frame 1Symbol 314 MovieClip {Objects.Most19}
"FFire_01"Symbol 1377 MovieClip {Stages.stage_22} Frame 1Symbol 271 MovieClip {Objects.Fire}
"Fire_01"Symbol 1377 MovieClip {Stages.stage_22} Frame 1Symbol 296 MovieClip {Objects.FireTrigger}
"FFire_01"Symbol 1380 MovieClip {Stages.stage_23} Frame 1Symbol 271 MovieClip {Objects.Fire}
"Fire_01"Symbol 1380 MovieClip {Stages.stage_23} Frame 1Symbol 296 MovieClip {Objects.FireTrigger}
"Man_01"Symbol 1436 MovieClip {Stages.stage_05} Frame 1Symbol 228 MovieClip {Objects.Man_01}
"SStatic_01"Symbol 1572 MovieClip {Stages.stage_28} Frame 1Symbol 122 MovieClip {Objects.BoxSleep}
"SStatic_02"Symbol 1572 MovieClip {Stages.stage_28} Frame 1Symbol 122 MovieClip {Objects.BoxSleep}
"Static_02"Symbol 1572 MovieClip {Stages.stage_28} Frame 1Symbol 298 MovieClip {Objects.StaticTrigger}
"Static_01"Symbol 1572 MovieClip {Stages.stage_28} Frame 1Symbol 298 MovieClip {Objects.StaticTrigger}
"Fire_01"Symbol 1572 MovieClip {Stages.stage_28} Frame 1Symbol 296 MovieClip {Objects.FireTrigger}
"FFire_01"Symbol 1572 MovieClip {Stages.stage_28} Frame 1Symbol 271 MovieClip {Objects.Fire}
"ISStatic_02"Symbol 1572 MovieClip {Stages.stage_28} Frame 1Symbol 314 MovieClip {Objects.Most19}
"ISStatic_01"Symbol 1572 MovieClip {Stages.stage_28} Frame 1Symbol 314 MovieClip {Objects.Most19}
"selector"Symbol 1677 MovieClip Frame 1Symbol 108 MovieClip
"smoke"Symbol 1677 MovieClip Frame 1Symbol 106 MovieClip
"Box"Symbol 1678 MovieClip {Objects.Car4_Back} Frame 1Symbol 96 MovieClip
"Wheel1"Symbol 1678 MovieClip {Objects.Car4_Back} Frame 1Symbol 98 MovieClip
"Wheel2"Symbol 1678 MovieClip {Objects.Car4_Back} Frame 1Symbol 98 MovieClip
"Wheel3"Symbol 1678 MovieClip {Objects.Car4_Back} Frame 1Symbol 98 MovieClip
"Wheel4"Symbol 1678 MovieClip {Objects.Car4_Back} Frame 1Symbol 98 MovieClip
"Wheel5"Symbol 1678 MovieClip {Objects.Car4_Back} Frame 1Symbol 98 MovieClip
"IWheel2"Symbol 1678 MovieClip {Objects.Car4_Back} Frame 1Symbol 229 MovieClip
"IWheel3"Symbol 1678 MovieClip {Objects.Car4_Back} Frame 1Symbol 229 MovieClip
"IWheel4"Symbol 1678 MovieClip {Objects.Car4_Back} Frame 1Symbol 229 MovieClip
"IBox"Symbol 1678 MovieClip {Objects.Car4_Back} Frame 1Symbol 1677 MovieClip
"IWheel1"Symbol 1678 MovieClip {Objects.Car4_Back} Frame 1Symbol 229 MovieClip
"IWheel5"Symbol 1678 MovieClip {Objects.Car4_Back} Frame 1Symbol 229 MovieClip
"SStatic_01"Symbol 1681 MovieClip {Stages.stage_25} Frame 1Symbol 122 MovieClip {Objects.BoxSleep}
"ISStatic_01"Symbol 1681 MovieClip {Stages.stage_25} Frame 1Symbol 1676 MovieClip {Most24}
"FFire_01"Symbol 1681 MovieClip {Stages.stage_25} Frame 1Symbol 271 MovieClip {Objects.Fire}
"FFire_02"Symbol 1681 MovieClip {Stages.stage_25} Frame 1Symbol 271 MovieClip {Objects.Fire}
"Fire_01"Symbol 1681 MovieClip {Stages.stage_25} Frame 1Symbol 296 MovieClip {Objects.FireTrigger}
"Fire_02"Symbol 1681 MovieClip {Stages.stage_25} Frame 1Symbol 296 MovieClip {Objects.FireTrigger}
"Static_01"Symbol 1681 MovieClip {Stages.stage_25} Frame 1Symbol 298 MovieClip {Objects.StaticTrigger}
"SStatic_01"Symbol 1729 MovieClip {Stages.stage_24} Frame 1Symbol 122 MovieClip {Objects.BoxSleep}
"FFire_01"Symbol 1729 MovieClip {Stages.stage_24} Frame 1Symbol 271 MovieClip {Objects.Fire}
"Fire_01"Symbol 1729 MovieClip {Stages.stage_24} Frame 1Symbol 296 MovieClip {Objects.FireTrigger}
"Static_01"Symbol 1729 MovieClip {Stages.stage_24} Frame 1Symbol 298 MovieClip {Objects.StaticTrigger}
"ISStatic_01"Symbol 1729 MovieClip {Stages.stage_24} Frame 1Symbol 1676 MovieClip {Most24}
"Fire_01"Symbol 1842 MovieClip {Stages.stage_18} Frame 1Symbol 296 MovieClip {Objects.FireTrigger}
"FFire_01"Symbol 1842 MovieClip {Stages.stage_18} Frame 1Symbol 271 MovieClip {Objects.Fire}
"SStatic_01"Symbol 2028 MovieClip {Stages.stage_27} Frame 1Symbol 122 MovieClip {Objects.BoxSleep}
"SStatic_02"Symbol 2028 MovieClip {Stages.stage_27} Frame 1Symbol 122 MovieClip {Objects.BoxSleep}
"SStatic_03"Symbol 2028 MovieClip {Stages.stage_27} Frame 1Symbol 122 MovieClip {Objects.BoxSleep}
"SStatic_03"Symbol 2028 MovieClip {Stages.stage_27} Frame 1Symbol 122 MovieClip {Objects.BoxSleep}
"SStatic_03"Symbol 2028 MovieClip {Stages.stage_27} Frame 1Symbol 122 MovieClip {Objects.BoxSleep}
"ISStatic_02"Symbol 2028 MovieClip {Stages.stage_27} Frame 1Symbol 2003 MovieClip {Most27_2}
"Static_01"Symbol 2028 MovieClip {Stages.stage_27} Frame 1Symbol 298 MovieClip {Objects.StaticTrigger}
"Static_02"Symbol 2028 MovieClip {Stages.stage_27} Frame 1Symbol 298 MovieClip {Objects.StaticTrigger}
"Fire_01"Symbol 2028 MovieClip {Stages.stage_27} Frame 1Symbol 296 MovieClip {Objects.FireTrigger}
"FFire_01"Symbol 2028 MovieClip {Stages.stage_27} Frame 1Symbol 271 MovieClip {Objects.Fire}
"ISStatic_01"Symbol 2028 MovieClip {Stages.stage_27} Frame 1Symbol 2027 MovieClip {Most27_1}
"S2Static_01"Symbol 2057 MovieClip {Stages.stage_30} Frame 1Symbol 122 MovieClip {Objects.BoxSleep}
"S2Static_02"Symbol 2057 MovieClip {Stages.stage_30} Frame 1Symbol 122 MovieClip {Objects.BoxSleep}
"S2Static_03"Symbol 2057 MovieClip {Stages.stage_30} Frame 1Symbol 122 MovieClip {Objects.BoxSleep}
"S1Static_01"Symbol 2057 MovieClip {Stages.stage_30} Frame 1Symbol 122 MovieClip {Objects.BoxSleep}
"S1Static_02"Symbol 2057 MovieClip {Stages.stage_30} Frame 1Symbol 122 MovieClip {Objects.BoxSleep}
"S1Static_03"Symbol 2057 MovieClip {Stages.stage_30} Frame 1Symbol 122 MovieClip {Objects.BoxSleep}
"SStatic_01"Symbol 2057 MovieClip {Stages.stage_30} Frame 1Symbol 122 MovieClip {Objects.BoxSleep}
"SStatic_02"Symbol 2057 MovieClip {Stages.stage_30} Frame 1Symbol 122 MovieClip {Objects.BoxSleep}
"SStatic_03"Symbol 2057 MovieClip {Stages.stage_30} Frame 1Symbol 122 MovieClip {Objects.BoxSleep}
"SStatic_04"Symbol 2057 MovieClip {Stages.stage_30} Frame 1Symbol 122 MovieClip {Objects.BoxSleep}
"Static_01"Symbol 2057 MovieClip {Stages.stage_30} Frame 1Symbol 298 MovieClip {Objects.StaticTrigger}
"Static_02"Symbol 2057 MovieClip {Stages.stage_30} Frame 1Symbol 298 MovieClip {Objects.StaticTrigger}
"Static_03"Symbol 2057 MovieClip {Stages.stage_30} Frame 1Symbol 298 MovieClip {Objects.StaticTrigger}
"Static_04"Symbol 2057 MovieClip {Stages.stage_30} Frame 1Symbol 298 MovieClip {Objects.StaticTrigger}
"ISStatic_03"Symbol 2057 MovieClip {Stages.stage_30} Frame 1Symbol 2056 MovieClip {Objects.Most30}
"ISStatic_02"Symbol 2057 MovieClip {Stages.stage_30} Frame 1Symbol 2056 MovieClip {Objects.Most30}
"ISStatic_01"Symbol 2057 MovieClip {Stages.stage_30} Frame 1Symbol 2056 MovieClip {Objects.Most30}
"I1SStatic_03"Symbol 2057 MovieClip {Stages.stage_30} Frame 1Symbol 314 MovieClip {Objects.Most19}
"I1SStatic_02"Symbol 2057 MovieClip {Stages.stage_30} Frame 1Symbol 314 MovieClip {Objects.Most19}
"I1SStatic_01"Symbol 2057 MovieClip {Stages.stage_30} Frame 1Symbol 314 MovieClip {Objects.Most19}
"I2SStatic_03"Symbol 2057 MovieClip {Stages.stage_30} Frame 1Symbol 314 MovieClip {Objects.Most19}
"I2SStatic_02"Symbol 2057 MovieClip {Stages.stage_30} Frame 1Symbol 314 MovieClip {Objects.Most19}
"I2SStatic_01"Symbol 2057 MovieClip {Stages.stage_30} Frame 1Symbol 314 MovieClip {Objects.Most19}
"SStatic_01"Symbol 2182 MovieClip {Stages.stage_29} Frame 1Symbol 122 MovieClip {Objects.BoxSleep}
"SStatic_02"Symbol 2182 MovieClip {Stages.stage_29} Frame 1Symbol 122 MovieClip {Objects.BoxSleep}
"Static_01"Symbol 2182 MovieClip {Stages.stage_29} Frame 1Symbol 298 MovieClip {Objects.StaticTrigger}
"FFire_01"Symbol 2182 MovieClip {Stages.stage_29} Frame 1Symbol 271 MovieClip {Objects.Fire}
"Static_02"Symbol 2182 MovieClip {Stages.stage_29} Frame 1Symbol 298 MovieClip {Objects.StaticTrigger}
"Fire_01"Symbol 2182 MovieClip {Stages.stage_29} Frame 1Symbol 296 MovieClip {Objects.FireTrigger}
"ISStatic_02"Symbol 2182 MovieClip {Stages.stage_29} Frame 1Symbol 1676 MovieClip {Most24}
"ISStatic_01"Symbol 2182 MovieClip {Stages.stage_29} Frame 1Symbol 314 MovieClip {Objects.Most19}
"SStatic_02"Symbol 2276 MovieClip {Stages.stage_14} Frame 1Symbol 122 MovieClip {Objects.BoxSleep}
"SStatic_01"Symbol 2276 MovieClip {Stages.stage_14} Frame 1Symbol 122 MovieClip {Objects.BoxSleep}
"ISStatic_01"Symbol 2276 MovieClip {Stages.stage_14} Frame 1Symbol 2258 MovieClip {Most14}
"ISStatic_02"Symbol 2276 MovieClip {Stages.stage_14} Frame 1Symbol 2273 MovieClip {Most14_2}
"Static_01"Symbol 2276 MovieClip {Stages.stage_14} Frame 1Symbol 298 MovieClip {Objects.StaticTrigger}
"Static_02"Symbol 2276 MovieClip {Stages.stage_14} Frame 1Symbol 298 MovieClip {Objects.StaticTrigger}
"play_latest_text"Symbol 2314 MovieClip Frame 1Symbol 2313 MovieClip {PipolSmasher_fla.bubble_logo3_1104}
"link"Symbol 2315 MovieClip {PipolSmasher_fla.BubbleBoxSplash_1102} Frame 1Symbol 2283 MovieClip
"play_latest_text"Symbol 2315 MovieClip {PipolSmasher_fla.BubbleBoxSplash_1102} Frame 79Symbol 2313 MovieClip {PipolSmasher_fla.bubble_logo3_1104}
"play_latest_text"Symbol 2315 MovieClip {PipolSmasher_fla.BubbleBoxSplash_1102} Frame 117Symbol 2313 MovieClip {PipolSmasher_fla.bubble_logo3_1104}
"TText"Symbol 2426 MovieClip Frame 1Symbol 2425 EditableText
"Face"Symbol 2438 MovieClip Frame 1Symbol 2437 MovieClip
"ResetLevelsButton"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 2335 Button
"stage_01"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 85 Button {gui.StageButton}
"stage_02"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 85 Button {gui.StageButton}
"stage_03"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 85 Button {gui.StageButton}
"stage_04"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 85 Button {gui.StageButton}
"stage_05"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 85 Button {gui.StageButton}
"stage_06"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 85 Button {gui.StageButton}
"stage_07"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 85 Button {gui.StageButton}
"stage_08"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 85 Button {gui.StageButton}
"stage_09"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 85 Button {gui.StageButton}
"stage_10"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 85 Button {gui.StageButton}
"stage_11"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 85 Button {gui.StageButton}
"stage_12"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 85 Button {gui.StageButton}
"stage_13"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 85 Button {gui.StageButton}
"stage_14"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 85 Button {gui.StageButton}
"stage_15"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 85 Button {gui.StageButton}
"stage_16"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 85 Button {gui.StageButton}
"stage_17"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 85 Button {gui.StageButton}
"stage_18"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 85 Button {gui.StageButton}
"stage_19"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 85 Button {gui.StageButton}
"stage_20"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 85 Button {gui.StageButton}
"stage_21"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 85 Button {gui.StageButton}
"stage_22"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 85 Button {gui.StageButton}
"stage_23"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 85 Button {gui.StageButton}
"stage_24"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 85 Button {gui.StageButton}
"stage_25"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 85 Button {gui.StageButton}
"stage_26"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 85 Button {gui.StageButton}
"stage_27"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 85 Button {gui.StageButton}
"stage_28"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 85 Button {gui.StageButton}
"stage_29"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 85 Button {gui.StageButton}
"stage_30"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 85 Button {gui.StageButton}
"BackButton"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 2372 Button
"PlayButton"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 2375 Button
"MoreGamesButton"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 2379 Button
"AddGameButton"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 2382 Button
"Scores"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 2426 MovieClip
"BackCreditsButton"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 2372 Button
"CreditsButton"Symbol 2493 MovieClip {gui.LevelsButtonsClip} Frame 1Symbol 2481 Button
"MainMenu"Symbol 2497 MovieClip {gui.WinMenu} Frame 1Symbol 2495 Button {gui.NextButton}

Special Tags

FileAttributes (69)Timeline Frame 1Access local files only, Metadata not present, AS3.
Protect (24)Timeline Frame 131 bytes "..$1$SC$Gd79gy4OdxFZNhSddgKaI/."

Labels

"Loading"Frame 1
"Splash"Frame 47
"Menu"Frame 55
"Game"Frame 65
"Locked"Frame 75
"Reset"Frame 85
"saving"Symbol 82 MovieClip {bubblebox_submit_score} Frame 2
"success"Symbol 82 MovieClip {bubblebox_submit_score} Frame 3
"tryagain"Symbol 82 MovieClip {bubblebox_submit_score} Frame 4
"Sad"Symbol 90 MovieClip {PipolSmasher_fla.Batters2_960} Frame 1
"Normal"Symbol 90 MovieClip {PipolSmasher_fla.Batters2_960} Frame 35
"Angry"Symbol 90 MovieClip {PipolSmasher_fla.Batters2_960} Frame 75
"Normal"Symbol 2437 MovieClip Frame 1
"Angry"Symbol 2437 MovieClip Frame 35
"Sad"Symbol 2437 MovieClip Frame 67




http://swfchan.com/24/116053/info.shtml
Created: 9/3 -2019 03:57:05 Last modified: 9/3 -2019 03:57:05 Server time: 09/05 -2024 08:17:44