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

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

Slammings.swf

This is the info page for
Flash #58947

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


Text
01%

High sCores here

Today

Vandaag

Aujourd'hui

Heute

Hoy

Hoje

Oggi

Idag

Dzisiaj

Сегодня

Bugün

Hari ini

<p align="center"><font face="_sans" size="14" color="#515151" letterSpacing="0.000000" kerning="1">今日</font></p>

<p align="center"><font face="_sans" size="14" color="#515151" letterSpacing="0.000000" kerning="1">今天</font></p>

Week

Semaine

Woche

Semana

Settimana

Vecka

Tydzień

За неделю

Hafta

Minggu

<p align="center"><font face="_sans" size="14" color="#515151" letterSpacing="0.000000" kerning="1">週間</font></p>

<p align="center"><font face="_sans" size="14" color="#515151" letterSpacing="0.000000" kerning="1">本周</font></p>

Month

Maand

Mois

Monat

Mes

Mês

Mese

Månad

Miesiąc

За месяц

Ay

Bulan

<p align="center"><font face="_sans" size="14" color="#515151" letterSpacing="0.000000" kerning="1">月間</font></p>

<p align="center"><font face="_sans" size="14" color="#515151" letterSpacing="0.000000" kerning="1">本月</font></p>

DAY BUTTON DOwn

Week BUTTON down

month BUTTON down

BACK

TERUG

RETOUR

ZURÜCK

ATRÁS

ANTERIOR

RETROCEDER

INDIETRO

BAKÅT

POWRÓT

НАЗАД

GERİ

KEMBALI

UNDUR

<p align="center"><font face="_sans" size="14" color="#000000" letterSpacing="0.000000" kerning="1"><b>戻る</b></font></p>

返回

<p align="center"><font face="_sans" size="15" color="#000000" letterSpacing="0.000000" kerning="1">0%</font></p>

CONTINUE WITHOUT HIGH SCORES

DOORGAAN ZONDER HIGHSCORES

CONTINUER À JOUER SANS CLASSEMEN

WEITER OHNE HIGHSCORES

CONTINUAR SIN PUNTUACIONES MÁXIMAS

CONTINUAR SEM RECORDES

CONTINUE SEM AS PONTUAÇÕES MAIS ALTAS

CONTINUA SENZA RECORD

FORTSÄTT UTAN TOPPOÄNG

KONTYNUUJ BEZ RANKINGU

ПРОДОЛЖИТЬ БЕЗ РЕКОРДОВ

YÜKSEK SKORLARI KAYDETMEDEN OYNAYIN

LANJUT TANPA SKOR TERTINGGI

TERUSKAN TANPA SKOR TERTINGGI

ハイスコアに挑戦せずにゲームを続ける

<p align="center"><font face="_sans" size="14" color="#000000" letterSpacing="0.000000" kerning="1"><b>继续游戏</b><font face="_sans"><b>(</b></font><b>没有排行榜</b><font face="_sans"><b>)</b></font></font></p>

PLAY FOR HIGH SCORES ON:

SPEEL VOOR HIGHSCORES OP:

JOUER ICI POUR POUVOIR OBTENIR UN CLASSEMENT :

JAGE DIE HIGHSCORES AUF:

JUGAR CON PUNTUACIONES MÁXIMAS:

BATA RECORDES EM:

JOGUE PARA PONTUAÇÕES MAIS ALTAS EM:

GIOCA CON RECORD SU:

SPELA OM TOPPOÄNG PÅ:

GRAJ Z RANKINGIEM NA:

СЫГРАТЬ НА РЕКОРД НА:

YÜKSEK SKORLARA İMZA ATMAK İÇİN:

BERMAIN UNTUK SKOR TERTINGGI DI :

MAIN UNTUK MENDAPATKAN SKOR TERTINGGI DI:

↓ハイスコアに挑戦するなら↓

<p align="center"><font face="_sans" size="14" color="#000000" letterSpacing="0.000000" kerning="1"><b>到这里挑战排行榜:</b></font></p>

<p align="center"><font face="Arial Black" size="30" color="#ff9900" letterSpacing="0.000000" kerning="1">15 Kill Combo!</font></p>

1

1

1

2

2

2

3

3

3

4

4

4

5

5

5

4

© www.spilgames.com

© www.spilgames.com

YOUR SCORE:

YOUR NAME:

<p align="center"><font face="Comic Sans MS" size="50" color="#333300" letterSpacing="0.000000" kerning="1"><b>234234</b></font></p>

<p align="center"><font face="Comic Sans MS" size="14" color="#330000" letterSpacing="0.000000" kerning="1"><b>{Player_Name}</b></font></p>

<p align="center"><font face="Arial Black" size="50" color="#ff9900" letterSpacing="0.000000" kerning="1">0</font></p>

123456

<p align="center"><font face="Copperplate Gothic Bold" size="24" color="#0f0e1d" letterSpacing="0.000000" kerning="1">12</font></p>

50

<p align="left"><font face="Comic Sans MS" size="14" color="#000000" letterSpacing="0.000000" kerning="1"><b>fff</b></font></p>

<p align="left"><font face="Copperplate Gothic Bold" size="9" color="#b0ff03" letterSpacing="0.000000" kerning="1">x 22</font></p>

<p align="left"><font face="Copperplate Gothic Bold" size="17" color="#f9ff00" letterSpacing="0.000000" kerning="1">1</font></p>

BR

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.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Collision.*; 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.y + ((_local6.col1.y * m_localPosition.x) + (_local6.col2.y * m_localPosition.y))); var _local9:Number = (_arg4.p1.x - _local7); _local10 = (_arg4.p1.y - _local8); var _local11:Number = (((_local9 * _local9) + (_local10 * _local10)) - (m_radius * m_radius)); if (_local11 < 0){ 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 { public class b2FilterData { public var maskBits:uint;// = 0xFFFF public var groupIndex:int;// = 0 public var categoryBits:uint;// = 1 public function Copy():b2FilterData{ var _local1:b2FilterData = new b2FilterData(); _local1.categoryBits = categoryBits; _local1.maskBits = maskBits; _local1.groupIndex = groupIndex; return (_local1); } } }//package Box2D.Collision.Shapes
Section 4
//b2MassData (Box2D.Collision.Shapes.b2MassData) package Box2D.Collision.Shapes { import Box2D.Common.Math.*; public class b2MassData { public var mass:Number;// = 0 public var center:b2Vec2; public var I:Number;// = 0 public function b2MassData(){ center = new b2Vec2(0, 0); super(); } } }//package Box2D.Collision.Shapes
Section 5
//b2PolygonDef (Box2D.Collision.Shapes.b2PolygonDef) package Box2D.Collision.Shapes { import Box2D.Common.Math.*; import Box2D.Common.*; public class b2PolygonDef extends b2ShapeDef { public var vertices:Array; public var vertexCount:int; private static var s_mat:b2Mat22 = new b2Mat22(); public function b2PolygonDef(){ vertices = new Array(b2Settings.b2_maxPolygonVertices); super(); type = b2Shape.e_polygonShape; vertexCount = 0; var _local1:int; while (_local1 < b2Settings.b2_maxPolygonVertices) { vertices[_local1] = new b2Vec2(); _local1++; }; } public function SetAsOrientedBox(_arg1:Number, _arg2:Number, _arg3:b2Vec2=null, _arg4:Number=0):void{ var _local5:b2Vec2; var _local6:b2Mat22; var _local7:int; vertexCount = 4; vertices[0].Set(-(_arg1), -(_arg2)); vertices[1].Set(_arg1, -(_arg2)); vertices[2].Set(_arg1, _arg2); vertices[3].Set(-(_arg1), _arg2); if (_arg3){ _local5 = _arg3; _local6 = s_mat; _local6.Set(_arg4); _local7 = 0; while (_local7 < vertexCount) { _arg3 = vertices[_local7]; _arg1 = (_local5.x + ((_local6.col1.x * _arg3.x) + (_local6.col2.x * _arg3.y))); _arg3.y = (_local5.y + ((_local6.col1.y * _arg3.x) + (_local6.col2.y * _arg3.y))); _arg3.x = _arg1; _local7++; }; }; } public function SetAsBox(_arg1:Number, _arg2:Number):void{ vertexCount = 4; vertices[0].Set(-(_arg1), -(_arg2)); vertices[1].Set(_arg1, -(_arg2)); vertices[2].Set(_arg1, _arg2); vertices[3].Set(-(_arg1), _arg2); } } }//package Box2D.Collision.Shapes
Section 6
//b2PolygonShape (Box2D.Collision.Shapes.b2PolygonShape) package Box2D.Collision.Shapes { import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Collision.*; 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.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Collision.*; 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 { 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;// = -1 public function b2ShapeDef(){ 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 { public class b2Mat22 { public var col1:b2Vec2; public var col2:b2Vec2; public function b2Mat22(_arg1:Number=0, _arg2:b2Vec2=null, _arg3:b2Vec2=null){ var _local4:Number; var _local5:Number; col1 = new b2Vec2(); col2 = new b2Vec2(); super(); if (((!((_arg2 == null))) && (!((_arg3 == null))))){ col1.SetV(_arg2); col2.SetV(_arg3); } else { _local4 = Math.cos(_arg1); _local5 = Math.sin(_arg1); col1.x = _local4; col2.x = -(_local5); col1.y = _local5; col2.y = _local4; }; } public function SetIdentity():void{ col1.x = 1; col2.x = 0; col1.y = 0; col2.y = 1; } public function SetVV(_arg1:b2Vec2, _arg2:b2Vec2):void{ col1.SetV(_arg1); col2.SetV(_arg2); } public function Set(_arg1:Number):void{ var _local2:Number; _local2 = Math.cos(_arg1); var _local3:Number = Math.sin(_arg1); col1.x = _local2; col2.x = -(_local3); col1.y = _local3; col2.y = _local2; } public function SetZero():void{ col1.x = 0; col2.x = 0; col1.y = 0; col2.y = 0; } public function SetM(_arg1:b2Mat22):void{ col1.SetV(_arg1.col1); col2.SetV(_arg1.col2); } public function AddM(_arg1:b2Mat22):void{ col1.x = (col1.x + _arg1.col1.x); col1.y = (col1.y + _arg1.col1.y); col2.x = (col2.x + _arg1.col2.x); col2.y = (col2.y + _arg1.col2.y); } public function Abs():void{ col1.Abs(); col2.Abs(); } public function Copy():b2Mat22{ return (new b2Mat22(0, col1, col2)); } public function Invert(_arg1:b2Mat22):b2Mat22{ var _local2:Number; var _local4:Number; var _local6:Number; _local2 = col1.x; var _local3:Number = col2.x; _local4 = col1.y; var _local5:Number = col2.y; _local6 = ((_local2 * _local5) - (_local3 * _local4)); _local6 = (1 / _local6); _arg1.col1.x = (_local6 * _local5); _arg1.col2.x = (-(_local6) * _local3); _arg1.col1.y = (-(_local6) * _local4); _arg1.col2.y = (_local6 * _local2); return (_arg1); } public function GetAngle():Number{ return (Math.atan2(col1.y, col1.x)); } public function Solve(_arg1:b2Vec2, _arg2:Number, _arg3:Number):b2Vec2{ var _local4:Number = col1.x; var _local5:Number = col2.x; var _local6:Number = col1.y; var _local7:Number = col2.y; var _local8:Number = ((_local4 * _local7) - (_local5 * _local6)); _local8 = (1 / _local8); _arg1.x = (_local8 * ((_local7 * _arg2) - (_local5 * _arg3))); _arg1.y = (_local8 * ((_local4 * _arg3) - (_local6 * _arg2))); return (_arg1); } } }//package Box2D.Common.Math
Section 31
//b2Math (Box2D.Common.Math.b2Math) package Box2D.Common.Math { public class b2Math { public static const b2Mat22_identity:b2Mat22 = new b2Mat22(0, new b2Vec2(1, 0), new b2Vec2(0, 1)); public static const b2XForm_identity:b2XForm = new b2XForm(b2Vec2_zero, b2Mat22_identity); public static const b2Vec2_zero:b2Vec2 = new b2Vec2(0, 0); public static function b2CrossVF(_arg1:b2Vec2, _arg2:Number):b2Vec2{ var _local3:b2Vec2 = new b2Vec2((_arg2 * _arg1.y), (-(_arg2) * _arg1.x)); return (_local3); } public static function AddVV(_arg1:b2Vec2, _arg2:b2Vec2):b2Vec2{ var _local3:b2Vec2 = new b2Vec2((_arg1.x + _arg2.x), (_arg1.y + _arg2.y)); return (_local3); } public static function b2IsValid(_arg1:Number):Boolean{ return (isFinite(_arg1)); } public static function b2MinV(_arg1:b2Vec2, _arg2:b2Vec2):b2Vec2{ var _local3:b2Vec2 = new b2Vec2(b2Min(_arg1.x, _arg2.x), b2Min(_arg1.y, _arg2.y)); return (_local3); } public static function b2MulX(_arg1:b2XForm, _arg2:b2Vec2):b2Vec2{ var _local3:b2Vec2; _local3 = b2MulMV(_arg1.R, _arg2); _local3.x = (_local3.x + _arg1.position.x); _local3.y = (_local3.y + _arg1.position.y); return (_local3); } public static function b2DistanceSquared(_arg1:b2Vec2, _arg2:b2Vec2):Number{ var _local3:Number = (_arg1.x - _arg2.x); var _local4:Number = (_arg1.y - _arg2.y); return (((_local3 * _local3) + (_local4 * _local4))); } public static function b2Swap(_arg1:Array, _arg2:Array):void{ var _local3:* = _arg1[0]; _arg1[0] = _arg2[0]; _arg2[0] = _local3; } public static function b2AbsM(_arg1:b2Mat22):b2Mat22{ var _local2:b2Mat22 = new b2Mat22(0, b2AbsV(_arg1.col1), b2AbsV(_arg1.col2)); return (_local2); } public static function SubtractVV(_arg1:b2Vec2, _arg2:b2Vec2):b2Vec2{ var _local3:b2Vec2 = new b2Vec2((_arg1.x - _arg2.x), (_arg1.y - _arg2.y)); return (_local3); } public static function b2MulXT(_arg1:b2XForm, _arg2:b2Vec2):b2Vec2{ var _local3:b2Vec2; var _local4:Number; _local3 = SubtractVV(_arg2, _arg1.position); _local4 = ((_local3.x * _arg1.R.col1.x) + (_local3.y * _arg1.R.col1.y)); _local3.y = ((_local3.x * _arg1.R.col2.x) + (_local3.y * _arg1.R.col2.y)); _local3.x = _local4; return (_local3); } public static function b2Abs(_arg1:Number):Number{ return (((_arg1 > 0)) ? _arg1 : -(_arg1)); } public static function b2Clamp(_arg1:Number, _arg2:Number, _arg3:Number):Number{ return (b2Max(_arg2, b2Min(_arg1, _arg3))); } public static function b2AbsV(_arg1:b2Vec2):b2Vec2{ var _local2:b2Vec2 = new b2Vec2(b2Abs(_arg1.x), b2Abs(_arg1.y)); return (_local2); } public static function MulFV(_arg1:Number, _arg2:b2Vec2):b2Vec2{ var _local3:b2Vec2 = new b2Vec2((_arg1 * _arg2.x), (_arg1 * _arg2.y)); return (_local3); } public static function b2CrossVV(_arg1:b2Vec2, _arg2:b2Vec2):Number{ return (((_arg1.x * _arg2.y) - (_arg1.y * _arg2.x))); } public static function b2Dot(_arg1:b2Vec2, _arg2:b2Vec2):Number{ return (((_arg1.x * _arg2.x) + (_arg1.y * _arg2.y))); } public static function b2CrossFV(_arg1:Number, _arg2:b2Vec2):b2Vec2{ var _local3:b2Vec2 = new b2Vec2((-(_arg1) * _arg2.y), (_arg1 * _arg2.x)); return (_local3); } public static function AddMM(_arg1:b2Mat22, _arg2:b2Mat22):b2Mat22{ var _local3:b2Mat22 = new b2Mat22(0, AddVV(_arg1.col1, _arg2.col1), AddVV(_arg1.col2, _arg2.col2)); return (_local3); } public static function b2Distance(_arg1:b2Vec2, _arg2:b2Vec2):Number{ var _local3:Number = (_arg1.x - _arg2.x); var _local4:Number = (_arg1.y - _arg2.y); return (Math.sqrt(((_local3 * _local3) + (_local4 * _local4)))); } public static function b2MulTMM(_arg1:b2Mat22, _arg2:b2Mat22):b2Mat22{ var _local3:b2Vec2 = new b2Vec2(b2Dot(_arg1.col1, _arg2.col1), b2Dot(_arg1.col2, _arg2.col1)); var _local4:b2Vec2 = new b2Vec2(b2Dot(_arg1.col1, _arg2.col2), b2Dot(_arg1.col2, _arg2.col2)); var _local5:b2Mat22 = new b2Mat22(0, _local3, _local4); return (_local5); } public static function b2MaxV(_arg1:b2Vec2, _arg2:b2Vec2):b2Vec2{ var _local3:b2Vec2 = new b2Vec2(b2Max(_arg1.x, _arg2.x), b2Max(_arg1.y, _arg2.y)); return (_local3); } public static function b2IsPowerOfTwo(_arg1:uint):Boolean{ var _local2:Boolean = (((_arg1 > 0)) && (((_arg1 & (_arg1 - 1)) == 0))); return (_local2); } public static function b2ClampV(_arg1:b2Vec2, _arg2:b2Vec2, _arg3:b2Vec2):b2Vec2{ return (b2MaxV(_arg2, b2MinV(_arg1, _arg3))); } public static function b2RandomRange(_arg1:Number, _arg2:Number):Number{ var _local3:Number = Math.random(); _local3 = (((_arg2 - _arg1) * _local3) + _arg1); return (_local3); } public static function b2MulTMV(_arg1:b2Mat22, _arg2:b2Vec2):b2Vec2{ var _local3:b2Vec2 = new b2Vec2(b2Dot(_arg2, _arg1.col1), b2Dot(_arg2, _arg1.col2)); return (_local3); } public static function b2Min(_arg1:Number, _arg2:Number):Number{ return (((_arg1 < _arg2)) ? _arg1 : _arg2); } public static function b2Random():Number{ return (((Math.random() * 2) - 1)); } public static function b2MulMM(_arg1:b2Mat22, _arg2:b2Mat22):b2Mat22{ var _local3:b2Mat22 = new b2Mat22(0, b2MulMV(_arg1, _arg2.col1), b2MulMV(_arg1, _arg2.col2)); return (_local3); } public static function b2NextPowerOfTwo(_arg1:uint):uint{ _arg1 = (_arg1 | ((_arg1 >> 1) & 2147483647)); _arg1 = (_arg1 | ((_arg1 >> 2) & 1073741823)); _arg1 = (_arg1 | ((_arg1 >> 4) & 268435455)); _arg1 = (_arg1 | ((_arg1 >> 8) & 0xFFFFFF)); _arg1 = (_arg1 | ((_arg1 >> 16) & 0xFFFF)); return ((_arg1 + 1)); } public static function b2Max(_arg1:Number, _arg2:Number):Number{ return (((_arg1 > _arg2)) ? _arg1 : _arg2); } public static function b2MulMV(_arg1:b2Mat22, _arg2:b2Vec2):b2Vec2{ var _local3:b2Vec2 = new b2Vec2(((_arg1.col1.x * _arg2.x) + (_arg1.col2.x * _arg2.y)), ((_arg1.col1.y * _arg2.x) + (_arg1.col2.y * _arg2.y))); return (_local3); } } }//package Box2D.Common.Math
Section 32
//b2Sweep (Box2D.Common.Math.b2Sweep) package Box2D.Common.Math { public class b2Sweep { public var localCenter:b2Vec2; public var a:Number; public var c:b2Vec2; public var a0:Number; public var c0:b2Vec2; public var t0:Number; public function b2Sweep(){ localCenter = new b2Vec2(); c0 = new b2Vec2(); c = new b2Vec2(); super(); } public function Advance(_arg1:Number):void{ var _local2:Number; if ((((t0 < _arg1)) && (((1 - t0) > Number.MIN_VALUE)))){ _local2 = ((_arg1 - t0) / (1 - t0)); c0.x = (((1 - _local2) * c0.x) + (_local2 * c.x)); c0.y = (((1 - _local2) * c0.y) + (_local2 * c.y)); a0 = (((1 - _local2) * a0) + (_local2 * a)); t0 = _arg1; }; } public function GetXForm(_arg1:b2XForm, _arg2:Number):void{ var _local4:Number; var _local5:Number; if ((1 - t0) > Number.MIN_VALUE){ _local4 = ((_arg2 - t0) / (1 - t0)); _arg1.position.x = (((1 - _local4) * c0.x) + (_local4 * c.x)); _arg1.position.y = (((1 - _local4) * c0.y) + (_local4 * c.y)); _local5 = (((1 - _local4) * a0) + (_local4 * a)); _arg1.R.Set(_local5); } else { _arg1.position.SetV(c); _arg1.R.Set(a); }; var _local3:b2Mat22 = _arg1.R; _arg1.position.x = (_arg1.position.x - ((_local3.col1.x * localCenter.x) + (_local3.col2.x * localCenter.y))); _arg1.position.y = (_arg1.position.y - ((_local3.col1.y * localCenter.x) + (_local3.col2.y * localCenter.y))); } } }//package Box2D.Common.Math
Section 33
//b2Vec2 (Box2D.Common.Math.b2Vec2) package Box2D.Common.Math { public class b2Vec2 { public var y:Number; public var x:Number; public function b2Vec2(_arg1:Number=0, _arg2:Number=0):void{ x = _arg1; y = _arg2; } public function Add(_arg1:b2Vec2):void{ x = (x + _arg1.x); y = (y + _arg1.y); } public function Set(_arg1:Number=0, _arg2:Number=0):void{ x = _arg1; y = _arg2; } public function Multiply(_arg1:Number):void{ x = (x * _arg1); y = (y * _arg1); } public function Length():Number{ return (Math.sqrt(((x * x) + (y * y)))); } public function LengthSquared():Number{ return (((x * x) + (y * y))); } public function MulM(_arg1:b2Mat22):void{ var _local2:Number = x; x = ((_arg1.col1.x * _local2) + (_arg1.col2.x * y)); y = ((_arg1.col1.y * _local2) + (_arg1.col2.y * y)); } public function SetZero():void{ x = 0; y = 0; } public function MinV(_arg1:b2Vec2):void{ x = ((x < _arg1.x)) ? x : _arg1.x; y = ((y < _arg1.y)) ? y : _arg1.y; } public function Normalize():Number{ var _local1:Number = Math.sqrt(((x * x) + (y * y))); if (_local1 < Number.MIN_VALUE){ return (0); }; var _local2:Number = (1 / _local1); x = (x * _local2); y = (y * _local2); return (_local1); } public function CrossVF(_arg1:Number):void{ var _local2:Number = x; x = (_arg1 * y); y = (-(_arg1) * _local2); } public function MaxV(_arg1:b2Vec2):void{ x = ((x > _arg1.x)) ? x : _arg1.x; y = ((y > _arg1.y)) ? y : _arg1.y; } public function SetV(_arg1:b2Vec2):void{ x = _arg1.x; y = _arg1.y; } public function Negative():b2Vec2{ return (new b2Vec2(-(x), -(y))); } public function CrossFV(_arg1:Number):void{ var _local2:Number = x; x = (-(_arg1) * y); y = (_arg1 * _local2); } public function Abs():void{ if (x < 0){ x = -(x); }; if (y < 0){ y = -(y); }; } public function Subtract(_arg1:b2Vec2):void{ x = (x - _arg1.x); y = (y - _arg1.y); } public function Copy():b2Vec2{ return (new b2Vec2(x, y)); } public function MulTM(_arg1:b2Mat22):void{ var _local2:Number = b2Math.b2Dot(this, _arg1.col1); y = b2Math.b2Dot(this, _arg1.col2); x = _local2; } public function IsValid():Boolean{ return (((b2Math.b2IsValid(x)) && (b2Math.b2IsValid(y)))); } public static function Make(_arg1:Number, _arg2:Number):b2Vec2{ return (new b2Vec2(_arg1, _arg2)); } } }//package Box2D.Common.Math
Section 34
//b2XForm (Box2D.Common.Math.b2XForm) package Box2D.Common.Math { public class b2XForm { public var position:b2Vec2; public var R:b2Mat22; public function b2XForm(_arg1:b2Vec2=null, _arg2:b2Mat22=null):void{ position = new b2Vec2(); R = new b2Mat22(); super(); if (_arg1){ position.SetV(_arg1); R.SetM(_arg2); }; } public function Initialize(_arg1:b2Vec2, _arg2:b2Mat22):void{ position.SetV(_arg1); R.SetM(_arg2); } public function Set(_arg1:b2XForm):void{ position.SetV(_arg1.position); R.SetM(_arg1.R); } public function SetIdentity():void{ position.SetZero(); R.SetIdentity(); } } }//package Box2D.Common.Math
Section 35
//b2Color (Box2D.Common.b2Color) package Box2D.Common { import Box2D.Common.Math.*; public class b2Color { private var _r:uint;// = 0 private var _g:uint;// = 0 private var _b:uint;// = 0 public function b2Color(_arg1:Number, _arg2:Number, _arg3:Number){ _r = uint((0xFF * b2Math.b2Clamp(_arg1, 0, 1))); _g = uint((0xFF * b2Math.b2Clamp(_arg2, 0, 1))); _b = uint((0xFF * b2Math.b2Clamp(_arg3, 0, 1))); } public function Set(_arg1:Number, _arg2:Number, _arg3:Number):void{ _r = uint((0xFF * b2Math.b2Clamp(_arg1, 0, 1))); _g = uint((0xFF * b2Math.b2Clamp(_arg2, 0, 1))); _b = uint((0xFF * b2Math.b2Clamp(_arg3, 0, 1))); } public function set b(_arg1:Number):void{ _b = uint((0xFF * b2Math.b2Clamp(_arg1, 0, 1))); } public function get color():uint{ return (((_r | (_g << 8)) | (_b << 16))); } public function set r(_arg1:Number):void{ _r = uint((0xFF * b2Math.b2Clamp(_arg1, 0, 1))); } public function set g(_arg1:Number):void{ _g = uint((0xFF * b2Math.b2Clamp(_arg1, 0, 1))); } } }//package Box2D.Common
Section 36
//b2Settings (Box2D.Common.b2Settings) package Box2D.Common { import Box2D.Common.Math.*; public class b2Settings { public static const b2_angularSleepTolerance:Number = 0.0111111111111111; public static const b2_linearSleepTolerance:Number = 0.01; public static const b2_angularSlop:Number = ((2 / 180) * b2_pi); public static const b2_linearSlop:Number = 0.005; public static const b2_pi:Number = Math.PI; 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 = ((8 / 180) * b2_pi); public static const USHRT_MAX:int = 0xFFFF; public static const b2_maxLinearVelocity:Number = 200; public static const b2_maxLinearCorrection:Number = 0.2; public static const b2_toiSlop:Number = 0.04; public static const b2_maxLinearVelocitySquared:Number = 40000; public static function b2Assert(_arg1:Boolean):void{ var _local2:b2Vec2; if (!_arg1){ _local2.x++; }; } } }//package Box2D.Common
Section 37
//b2CircleContact (Box2D.Dynamics.Contacts.b2CircleContact) package Box2D.Dynamics.Contacts { import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Collision.*; import Box2D.Collision.Shapes.*; 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.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Collision.*; import Box2D.Collision.Shapes.*; import Box2D.Common.*; public class b2Contact { public var m_shape1:b2Shape; public var m_shape2:b2Shape; public var m_prev:b2Contact; public var m_toi:Number; public var m_next:b2Contact; public var m_friction:Number; public var m_manifoldCount:int; public var m_node1:b2ContactEdge; public var m_node2:b2ContactEdge; public var m_restitution:Number; public var m_flags:uint; public static var e_toiFlag:uint = 8; public static var e_nonSolidFlag:uint = 1; public static var e_slowFlag:uint = 2; public static var e_islandFlag:uint = 4; public static var s_registers:Array; public static var s_initialized:Boolean = false; public function b2Contact(_arg1:b2Shape=null, _arg2:b2Shape=null){ m_node1 = new b2ContactEdge(); m_node2 = new b2ContactEdge(); super(); m_flags = 0; if (((!(_arg1)) || (!(_arg2)))){ m_shape1 = null; m_shape2 = null; return; }; if (((_arg1.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.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Collision.*; 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.Common.Math.*; import Box2D.Collision.*; 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.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Collision.*; 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.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Collision.*; 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.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Collision.*; 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 { public class b2GearJointDef extends b2JointDef { public var joint1:b2Joint; public var joint2:b2Joint; public var ratio:Number; public function b2GearJointDef(){ type = b2Joint.e_gearJoint; joint1 = null; joint2 = null; ratio = 1; } } }//package Box2D.Dynamics.Joints
Section 52
//b2Jacobian (Box2D.Dynamics.Joints.b2Jacobian) package Box2D.Dynamics.Joints { import Box2D.Common.Math.*; public class b2Jacobian { public var linear1:b2Vec2; public var linear2:b2Vec2; public var angular1:Number; public var angular2:Number; public function b2Jacobian(){ linear1 = new b2Vec2(); linear2 = new b2Vec2(); super(); } public function Set(_arg1:b2Vec2, _arg2:Number, _arg3:b2Vec2, _arg4:Number):void{ linear1.SetV(_arg1); angular1 = _arg2; linear2.SetV(_arg3); angular2 = _arg4; } public function SetZero():void{ linear1.SetZero(); angular1 = 0; linear2.SetZero(); angular2 = 0; } public function Compute(_arg1:b2Vec2, _arg2:Number, _arg3:b2Vec2, _arg4:Number):Number{ return ((((((linear1.x * _arg1.x) + (linear1.y * _arg1.y)) + (angular1 * _arg2)) + ((linear2.x * _arg3.x) + (linear2.y * _arg3.y))) + (angular2 * _arg4))); } } }//package Box2D.Dynamics.Joints
Section 53
//b2Joint (Box2D.Dynamics.Joints.b2Joint) package Box2D.Dynamics.Joints { import Box2D.Common.Math.*; import Box2D.Dynamics.*; public class b2Joint { public var m_islandFlag:Boolean; public var m_body1:b2Body; public var m_prev:b2Joint; public var m_next:b2Joint; public var m_type:int; public var m_collideConnected:Boolean; public var m_node1:b2JointEdge; public var m_node2:b2JointEdge; public var m_inv_dt:Number; public var m_userData; public var m_body2:b2Body; public static const e_unknownJoint:int = 0; public static const e_inactiveLimit:int = 0; public static const e_atUpperLimit:int = 2; public static const e_atLowerLimit:int = 1; public static const e_gearJoint:int = 6; public static const e_revoluteJoint:int = 1; public static const e_equalLimits:int = 3; public static const e_distanceJoint:int = 3; public static const e_pulleyJoint:int = 4; public static const e_prismaticJoint:int = 2; public static const e_mouseJoint:int = 5; public function b2Joint(_arg1:b2JointDef){ m_node1 = new b2JointEdge(); m_node2 = new b2JointEdge(); super(); m_type = _arg1.type; m_prev = null; m_next = null; m_body1 = _arg1.body1; m_body2 = _arg1.body2; m_collideConnected = _arg1.collideConnected; m_islandFlag = false; m_userData = _arg1.userData; } public function GetBody2():b2Body{ return (m_body2); } public function GetAnchor1():b2Vec2{ return (null); } public function GetAnchor2():b2Vec2{ return (null); } public function GetNext():b2Joint{ return (m_next); } public function GetType():int{ return (m_type); } public function InitVelocityConstraints(_arg1:b2TimeStep):void{ } public function GetReactionTorque():Number{ return (0); } public function GetUserData(){ return (m_userData); } public function GetReactionForce():b2Vec2{ return (null); } public function SolvePositionConstraints():Boolean{ return (false); } public function SetUserData(_arg1):void{ m_userData = _arg1; } public function GetBody1():b2Body{ return (m_body1); } public function SolveVelocityConstraints(_arg1:b2TimeStep):void{ } public function InitPositionConstraints():void{ } public static function Destroy(_arg1:b2Joint, _arg2):void{ } public static function Create(_arg1:b2JointDef, _arg2):b2Joint{ var _local3:b2Joint; switch (_arg1.type){ case e_distanceJoint: _local3 = new b2DistanceJoint((_arg1 as b2DistanceJointDef)); break; case e_mouseJoint: _local3 = new b2MouseJoint((_arg1 as b2MouseJointDef)); break; case e_prismaticJoint: _local3 = new b2PrismaticJoint((_arg1 as b2PrismaticJointDef)); break; case e_revoluteJoint: _local3 = new b2RevoluteJoint((_arg1 as b2RevoluteJointDef)); break; case e_pulleyJoint: _local3 = new b2PulleyJoint((_arg1 as b2PulleyJointDef)); break; case e_gearJoint: _local3 = new b2GearJoint((_arg1 as b2GearJointDef)); break; default: break; }; return (_local3); } } }//package Box2D.Dynamics.Joints
Section 54
//b2JointDef (Box2D.Dynamics.Joints.b2JointDef) package Box2D.Dynamics.Joints { import Box2D.Dynamics.*; public class b2JointDef { public var body2:b2Body; public var type:int; public var userData; public var collideConnected:Boolean; public var body1:b2Body; public function b2JointDef(){ type = b2Joint.e_unknownJoint; userData = null; body1 = null; body2 = null; collideConnected = false; } } }//package Box2D.Dynamics.Joints
Section 55
//b2JointEdge (Box2D.Dynamics.Joints.b2JointEdge) package Box2D.Dynamics.Joints { import Box2D.Dynamics.*; public class b2JointEdge { public var other:b2Body; public var next:b2JointEdge; public var prev:b2JointEdge; public var joint:b2Joint; } }//package Box2D.Dynamics.Joints
Section 56
//b2MouseJoint (Box2D.Dynamics.Joints.b2MouseJoint) package Box2D.Dynamics.Joints { import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Common.*; public class b2MouseJoint extends b2Joint { private var K1:b2Mat22; private var K:b2Mat22; public var m_beta:Number; public var m_mass:b2Mat22; private var K2:b2Mat22; public var m_target:b2Vec2; public var m_gamma:Number; public var m_impulse:b2Vec2; public var m_C:b2Vec2; public var m_localAnchor:b2Vec2; public var m_maxForce:Number; public function b2MouseJoint(_arg1:b2MouseJointDef){ var _local3:Number; K = new b2Mat22(); K1 = new b2Mat22(); K2 = new b2Mat22(); m_localAnchor = new b2Vec2(); m_target = new b2Vec2(); m_impulse = new b2Vec2(); m_mass = new b2Mat22(); m_C = new b2Vec2(); super(_arg1); m_target.SetV(_arg1.target); var _local2:Number = (m_target.x - m_body2.m_xf.position.x); _local3 = (m_target.y - m_body2.m_xf.position.y); var _local4:b2Mat22 = m_body2.m_xf.R; m_localAnchor.x = ((_local2 * _local4.col1.x) + (_local3 * _local4.col1.y)); m_localAnchor.y = ((_local2 * _local4.col2.x) + (_local3 * _local4.col2.y)); m_maxForce = _arg1.maxForce; m_impulse.SetZero(); var _local5:Number = m_body2.m_mass; var _local6:Number = ((2 * b2Settings.b2_pi) * _arg1.frequencyHz); var _local7:Number = (((2 * _local5) * _arg1.dampingRatio) * _local6); var _local8:Number = ((_arg1.timeStep * _local5) * (_local6 * _local6)); m_gamma = (1 / (_local7 + _local8)); m_beta = (_local8 / (_local7 + _local8)); } public function SetTarget(_arg1:b2Vec2):void{ if (m_body2.IsSleeping()){ m_body2.WakeUp(); }; m_target = _arg1; } override public function GetAnchor2():b2Vec2{ return (m_body2.GetWorldPoint(m_localAnchor)); } override public function InitVelocityConstraints(_arg1:b2TimeStep):void{ var _local2:b2Body; var _local3:b2Mat22; var _local4:Number; var _local5:Number; var _local7:Number; var _local8:Number; _local2 = m_body2; _local3 = _local2.m_xf.R; _local4 = (m_localAnchor.x - _local2.m_sweep.localCenter.x); _local5 = (m_localAnchor.y - _local2.m_sweep.localCenter.y); var _local6:Number = ((_local3.col1.x * _local4) + (_local3.col2.x * _local5)); _local5 = ((_local3.col1.y * _local4) + (_local3.col2.y * _local5)); _local4 = _local6; _local7 = _local2.m_invMass; _local8 = _local2.m_invI; K1.col1.x = _local7; K1.col2.x = 0; K1.col1.y = 0; K1.col2.y = _local7; K2.col1.x = ((_local8 * _local5) * _local5); K2.col2.x = ((-(_local8) * _local4) * _local5); K2.col1.y = ((-(_local8) * _local4) * _local5); K2.col2.y = ((_local8 * _local4) * _local4); K.SetM(K1); K.AddM(K2); K.col1.x = (K.col1.x + m_gamma); K.col2.y = (K.col2.y + m_gamma); K.Invert(m_mass); m_C.x = ((_local2.m_sweep.c.x + _local4) - m_target.x); m_C.y = ((_local2.m_sweep.c.y + _local5) - m_target.y); _local2.m_angularVelocity = (_local2.m_angularVelocity * 0.98); var _local9:Number = (_arg1.dt * m_impulse.x); var _local10:Number = (_arg1.dt * m_impulse.y); _local2.m_linearVelocity.x = (_local2.m_linearVelocity.x + (_local7 * _local9)); _local2.m_linearVelocity.y = (_local2.m_linearVelocity.y + (_local7 * _local10)); _local2.m_angularVelocity = (_local2.m_angularVelocity + (_local8 * ((_local4 * _local10) - (_local5 * _local9)))); } override public function GetAnchor1():b2Vec2{ return (m_target); } override public function GetReactionTorque():Number{ return (0); } override public function GetReactionForce():b2Vec2{ return (m_impulse); } override public function SolvePositionConstraints():Boolean{ return (true); } override public function SolveVelocityConstraints(_arg1:b2TimeStep):void{ var _local3:b2Mat22; var _local4:Number; var _local5:Number; var _local2:b2Body = m_body2; _local3 = _local2.m_xf.R; var _local6:Number = (m_localAnchor.x - _local2.m_sweep.localCenter.x); var _local7:Number = (m_localAnchor.y - _local2.m_sweep.localCenter.y); _local4 = ((_local3.col1.x * _local6) + (_local3.col2.x * _local7)); _local7 = ((_local3.col1.y * _local6) + (_local3.col2.y * _local7)); _local6 = _local4; var _local8:Number = (_local2.m_linearVelocity.x + (-(_local2.m_angularVelocity) * _local7)); var _local9:Number = (_local2.m_linearVelocity.y + (_local2.m_angularVelocity * _local6)); _local3 = m_mass; _local4 = ((_local8 + ((m_beta * _arg1.inv_dt) * m_C.x)) + ((m_gamma * _arg1.dt) * m_impulse.x)); _local5 = ((_local9 + ((m_beta * _arg1.inv_dt) * m_C.y)) + ((m_gamma * _arg1.dt) * m_impulse.y)); var _local10:Number = (-(_arg1.inv_dt) * ((_local3.col1.x * _local4) + (_local3.col2.x * _local5))); var _local11:Number = (-(_arg1.inv_dt) * ((_local3.col1.y * _local4) + (_local3.col2.y * _local5))); var _local12:Number = m_impulse.x; var _local13:Number = m_impulse.y; m_impulse.x = (m_impulse.x + _local10); m_impulse.y = (m_impulse.y + _local11); var _local14:Number = m_impulse.Length(); if (_local14 > m_maxForce){ m_impulse.Multiply((m_maxForce / _local14)); }; _local10 = (m_impulse.x - _local12); _local11 = (m_impulse.y - _local13); var _local15:Number = (_arg1.dt * _local10); var _local16:Number = (_arg1.dt * _local11); _local2.m_linearVelocity.x = (_local2.m_linearVelocity.x + (_local2.m_invMass * _local15)); _local2.m_linearVelocity.y = (_local2.m_linearVelocity.y + (_local2.m_invMass * _local16)); _local2.m_angularVelocity = (_local2.m_angularVelocity + (_local2.m_invI * ((_local6 * _local16) - (_local7 * _local15)))); } } }//package Box2D.Dynamics.Joints
Section 57
//b2MouseJointDef (Box2D.Dynamics.Joints.b2MouseJointDef) package Box2D.Dynamics.Joints { import Box2D.Common.Math.*; public class b2MouseJointDef extends b2JointDef { public var timeStep:Number; public var target:b2Vec2; public var maxForce:Number; public var dampingRatio:Number; public var frequencyHz:Number; public function b2MouseJointDef(){ target = new b2Vec2(); super(); type = b2Joint.e_mouseJoint; maxForce = 0; frequencyHz = 5; dampingRatio = 0.7; timeStep = (1 / 60); } } }//package Box2D.Dynamics.Joints
Section 58
//b2PrismaticJoint (Box2D.Dynamics.Joints.b2PrismaticJoint) package Box2D.Dynamics.Joints { import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Common.*; public class b2PrismaticJoint extends b2Joint { public var m_limitForce:Number; public var m_lowerTranslation:Number; public var m_localXAxis1:b2Vec2; public var m_refAngle:Number; public var m_torque:Number; public var m_motorForce:Number; public var m_enableLimit:Boolean; public var m_angularMass:Number; public var m_maxMotorForce:Number; public var m_localYAxis1:b2Vec2; public var m_force:Number; public var m_motorMass:Number; public var m_upperTranslation:Number; public var m_localAnchor1:b2Vec2; public var m_localAnchor2:b2Vec2; public var m_limitState:int; public var m_linearMass:Number; public var m_motorJacobian:b2Jacobian; public var m_limitPositionImpulse:Number; public var m_motorSpeed:Number; public var m_enableMotor:Boolean; public var m_linearJacobian:b2Jacobian; public function b2PrismaticJoint(_arg1:b2PrismaticJointDef){ var _local2:b2Mat22; var _local3:Number; var _local4:Number; m_localAnchor1 = new b2Vec2(); m_localAnchor2 = new b2Vec2(); m_localXAxis1 = new b2Vec2(); m_localYAxis1 = new b2Vec2(); m_linearJacobian = new b2Jacobian(); m_motorJacobian = new b2Jacobian(); super(_arg1); m_localAnchor1.SetV(_arg1.localAnchor1); m_localAnchor2.SetV(_arg1.localAnchor2); m_localXAxis1.SetV(_arg1.localAxis1); m_localYAxis1.x = -(m_localXAxis1.y); m_localYAxis1.y = m_localXAxis1.x; m_refAngle = _arg1.referenceAngle; m_linearJacobian.SetZero(); m_linearMass = 0; m_force = 0; m_angularMass = 0; m_torque = 0; m_motorJacobian.SetZero(); m_motorMass = 0; m_motorForce = 0; m_limitForce = 0; m_limitPositionImpulse = 0; m_lowerTranslation = _arg1.lowerTranslation; m_upperTranslation = _arg1.upperTranslation; m_maxMotorForce = _arg1.maxMotorForce; m_motorSpeed = _arg1.motorSpeed; m_enableLimit = _arg1.enableLimit; m_enableMotor = _arg1.enableMotor; } override public function SolveVelocityConstraints(_arg1:b2TimeStep):void{ var _local8:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; var _local2:b2Body = m_body1; var _local3:b2Body = m_body2; var _local4:Number = _local2.m_invMass; var _local5:Number = _local3.m_invMass; var _local6:Number = _local2.m_invI; var _local7:Number = _local3.m_invI; var _local9:Number = m_linearJacobian.Compute(_local2.m_linearVelocity, _local2.m_angularVelocity, _local3.m_linearVelocity, _local3.m_angularVelocity); var _local10:Number = ((-(_arg1.inv_dt) * m_linearMass) * _local9); m_force = (m_force + _local10); var _local11:Number = (_arg1.dt * _local10); _local2.m_linearVelocity.x = (_local2.m_linearVelocity.x + ((_local4 * _local11) * m_linearJacobian.linear1.x)); _local2.m_linearVelocity.y = (_local2.m_linearVelocity.y + ((_local4 * _local11) * m_linearJacobian.linear1.y)); _local2.m_angularVelocity = (_local2.m_angularVelocity + ((_local6 * _local11) * m_linearJacobian.angular1)); _local3.m_linearVelocity.x = (_local3.m_linearVelocity.x + ((_local5 * _local11) * m_linearJacobian.linear2.x)); _local3.m_linearVelocity.y = (_local3.m_linearVelocity.y + ((_local5 * _local11) * m_linearJacobian.linear2.y)); _local3.m_angularVelocity = (_local3.m_angularVelocity + ((_local7 * _local11) * m_linearJacobian.angular2)); var _local12:Number = (_local3.m_angularVelocity - _local2.m_angularVelocity); var _local13:Number = ((-(_arg1.inv_dt) * m_angularMass) * _local12); m_torque = (m_torque + _local13); var _local14:Number = (_arg1.dt * _local13); _local2.m_angularVelocity = (_local2.m_angularVelocity - (_local6 * _local14)); _local3.m_angularVelocity = (_local3.m_angularVelocity + (_local7 * _local14)); if (((m_enableMotor) && (!((m_limitState == e_equalLimits))))){ _local15 = (m_motorJacobian.Compute(_local2.m_linearVelocity, _local2.m_angularVelocity, _local3.m_linearVelocity, _local3.m_angularVelocity) - m_motorSpeed); _local16 = ((-(_arg1.inv_dt) * m_motorMass) * _local15); _local17 = m_motorForce; m_motorForce = b2Math.b2Clamp((m_motorForce + _local16), -(m_maxMotorForce), m_maxMotorForce); _local16 = (m_motorForce - _local17); _local11 = (_arg1.dt * _local16); _local2.m_linearVelocity.x = (_local2.m_linearVelocity.x + ((_local4 * _local11) * m_motorJacobian.linear1.x)); _local2.m_linearVelocity.y = (_local2.m_linearVelocity.y + ((_local4 * _local11) * m_motorJacobian.linear1.y)); _local2.m_angularVelocity = (_local2.m_angularVelocity + ((_local6 * _local11) * m_motorJacobian.angular1)); _local3.m_linearVelocity.x = (_local3.m_linearVelocity.x + ((_local5 * _local11) * m_motorJacobian.linear2.x)); _local3.m_linearVelocity.y = (_local3.m_linearVelocity.y + ((_local5 * _local11) * m_motorJacobian.linear2.y)); _local3.m_angularVelocity = (_local3.m_angularVelocity + ((_local7 * _local11) * m_motorJacobian.angular2)); }; if (((m_enableLimit) && (!((m_limitState == e_inactiveLimit))))){ _local18 = m_motorJacobian.Compute(_local2.m_linearVelocity, _local2.m_angularVelocity, _local3.m_linearVelocity, _local3.m_angularVelocity); _local19 = ((-(_arg1.inv_dt) * m_motorMass) * _local18); if (m_limitState == e_equalLimits){ m_limitForce = (m_limitForce + _local19); } else { if (m_limitState == e_atLowerLimit){ _local8 = m_limitForce; m_limitForce = b2Math.b2Max((m_limitForce + _local19), 0); _local19 = (m_limitForce - _local8); } else { if (m_limitState == e_atUpperLimit){ _local8 = m_limitForce; m_limitForce = b2Math.b2Min((m_limitForce + _local19), 0); _local19 = (m_limitForce - _local8); }; }; }; _local11 = (_arg1.dt * _local19); _local2.m_linearVelocity.x = (_local2.m_linearVelocity.x + ((_local4 * _local11) * m_motorJacobian.linear1.x)); _local2.m_linearVelocity.y = (_local2.m_linearVelocity.y + ((_local4 * _local11) * m_motorJacobian.linear1.y)); _local2.m_angularVelocity = (_local2.m_angularVelocity + ((_local6 * _local11) * m_motorJacobian.angular1)); _local3.m_linearVelocity.x = (_local3.m_linearVelocity.x + ((_local5 * _local11) * m_motorJacobian.linear2.x)); _local3.m_linearVelocity.y = (_local3.m_linearVelocity.y + ((_local5 * _local11) * m_motorJacobian.linear2.y)); _local3.m_angularVelocity = (_local3.m_angularVelocity + ((_local7 * _local11) * m_motorJacobian.angular2)); }; } override public function GetAnchor1():b2Vec2{ return (m_body1.GetWorldPoint(m_localAnchor1)); } override public function GetAnchor2():b2Vec2{ return (m_body2.GetWorldPoint(m_localAnchor2)); } public function GetUpperLimit():Number{ return (m_upperTranslation); } public function GetLowerLimit():Number{ return (m_lowerTranslation); } public function EnableMotor(_arg1:Boolean):void{ m_enableMotor = _arg1; } public function GetJointTranslation():Number{ var _local3:b2Mat22; var _local1:b2Body = m_body1; var _local2:b2Body = m_body2; var _local4:b2Vec2 = _local1.GetWorldPoint(m_localAnchor1); var _local5:b2Vec2 = _local2.GetWorldPoint(m_localAnchor2); var _local6:Number = (_local5.x - _local4.x); var _local7:Number = (_local5.y - _local4.y); var _local8:b2Vec2 = _local1.GetWorldVector(m_localXAxis1); var _local9:Number = ((_local8.x * _local6) + (_local8.y * _local7)); return (_local9); } public function GetMotorSpeed():Number{ return (m_motorSpeed); } override public function GetReactionForce():b2Vec2{ var _local1:b2Mat22 = m_body1.m_xf.R; var _local2:Number = (m_limitForce * ((_local1.col1.x * m_localXAxis1.x) + (_local1.col2.x * m_localXAxis1.y))); var _local3:Number = (m_limitForce * ((_local1.col1.y * m_localXAxis1.x) + (_local1.col2.y * m_localXAxis1.y))); var _local4:Number = (m_force * ((_local1.col1.x * m_localYAxis1.x) + (_local1.col2.x * m_localYAxis1.y))); var _local5:Number = (m_force * ((_local1.col1.y * m_localYAxis1.x) + (_local1.col2.y * m_localYAxis1.y))); return (new b2Vec2(((m_limitForce * _local2) + (m_force * _local4)), ((m_limitForce * _local3) + (m_force * _local5)))); } override public function SolvePositionConstraints():Boolean{ var _local1:Number; var _local2:Number; var _local9:b2Mat22; var _local10:Number; var _local29:Number; var _local30:Number; var _local31:Number; var _local32:Number; var _local3:b2Body = m_body1; var _local4:b2Body = m_body2; var _local5:Number = _local3.m_invMass; var _local6:Number = _local4.m_invMass; var _local7:Number = _local3.m_invI; var _local8:Number = _local4.m_invI; _local9 = _local3.m_xf.R; var _local11:Number = (m_localAnchor1.x - _local3.m_sweep.localCenter.x); var _local12:Number = (m_localAnchor1.y - _local3.m_sweep.localCenter.y); _local10 = ((_local9.col1.x * _local11) + (_local9.col2.x * _local12)); _local12 = ((_local9.col1.y * _local11) + (_local9.col2.y * _local12)); _local11 = _local10; _local9 = _local4.m_xf.R; var _local13:Number = (m_localAnchor2.x - _local4.m_sweep.localCenter.x); var _local14:Number = (m_localAnchor2.y - _local4.m_sweep.localCenter.y); _local10 = ((_local9.col1.x * _local13) + (_local9.col2.x * _local14)); _local14 = ((_local9.col1.y * _local13) + (_local9.col2.y * _local14)); _local13 = _local10; var _local15:Number = (_local3.m_sweep.c.x + _local11); var _local16:Number = (_local3.m_sweep.c.y + _local12); var _local17:Number = (_local4.m_sweep.c.x + _local13); var _local18:Number = (_local4.m_sweep.c.y + _local14); var _local19:Number = (_local17 - _local15); var _local20:Number = (_local18 - _local16); _local9 = _local3.m_xf.R; var _local21:Number = ((_local9.col1.x * m_localYAxis1.x) + (_local9.col2.x * m_localYAxis1.y)); var _local22:Number = ((_local9.col1.y * m_localYAxis1.x) + (_local9.col2.y * m_localYAxis1.y)); var _local23:Number = ((_local21 * _local19) + (_local22 * _local20)); _local23 = b2Math.b2Clamp(_local23, -(b2Settings.b2_maxLinearCorrection), b2Settings.b2_maxLinearCorrection); var _local24:Number = (-(m_linearMass) * _local23); _local3.m_sweep.c.x = (_local3.m_sweep.c.x + ((_local5 * _local24) * m_linearJacobian.linear1.x)); _local3.m_sweep.c.y = (_local3.m_sweep.c.y + ((_local5 * _local24) * m_linearJacobian.linear1.y)); _local3.m_sweep.a = (_local3.m_sweep.a + ((_local7 * _local24) * m_linearJacobian.angular1)); _local4.m_sweep.c.x = (_local4.m_sweep.c.x + ((_local6 * _local24) * m_linearJacobian.linear2.x)); _local4.m_sweep.c.y = (_local4.m_sweep.c.y + ((_local6 * _local24) * m_linearJacobian.linear2.y)); _local4.m_sweep.a = (_local4.m_sweep.a + ((_local8 * _local24) * m_linearJacobian.angular2)); var _local25:Number = b2Math.b2Abs(_local23); var _local26:Number = ((_local4.m_sweep.a - _local3.m_sweep.a) - m_refAngle); _local26 = b2Math.b2Clamp(_local26, -(b2Settings.b2_maxAngularCorrection), b2Settings.b2_maxAngularCorrection); var _local27:Number = (-(m_angularMass) * _local26); _local3.m_sweep.a = (_local3.m_sweep.a - (_local3.m_invI * _local27)); _local4.m_sweep.a = (_local4.m_sweep.a + (_local4.m_invI * _local27)); _local3.SynchronizeTransform(); _local4.SynchronizeTransform(); var _local28:Number = b2Math.b2Abs(_local26); if (((m_enableLimit) && (!((m_limitState == e_inactiveLimit))))){ _local9 = _local3.m_xf.R; _local11 = (m_localAnchor1.x - _local3.m_sweep.localCenter.x); _local12 = (m_localAnchor1.y - _local3.m_sweep.localCenter.y); _local10 = ((_local9.col1.x * _local11) + (_local9.col2.x * _local12)); _local12 = ((_local9.col1.y * _local11) + (_local9.col2.y * _local12)); _local11 = _local10; _local9 = _local4.m_xf.R; _local13 = (m_localAnchor2.x - _local4.m_sweep.localCenter.x); _local14 = (m_localAnchor2.y - _local4.m_sweep.localCenter.y); _local10 = ((_local9.col1.x * _local13) + (_local9.col2.x * _local14)); _local14 = ((_local9.col1.y * _local13) + (_local9.col2.y * _local14)); _local13 = _local10; _local15 = (_local3.m_sweep.c.x + _local11); _local16 = (_local3.m_sweep.c.y + _local12); _local17 = (_local4.m_sweep.c.x + _local13); _local18 = (_local4.m_sweep.c.y + _local14); _local19 = (_local17 - _local15); _local20 = (_local18 - _local16); _local9 = _local3.m_xf.R; _local29 = ((_local9.col1.x * m_localXAxis1.x) + (_local9.col2.x * m_localXAxis1.y)); _local30 = ((_local9.col1.y * m_localXAxis1.x) + (_local9.col2.y * m_localXAxis1.y)); _local31 = ((_local29 * _local19) + (_local30 * _local20)); _local32 = 0; if (m_limitState == e_equalLimits){ _local1 = b2Math.b2Clamp(_local31, -(b2Settings.b2_maxLinearCorrection), b2Settings.b2_maxLinearCorrection); _local32 = (-(m_motorMass) * _local1); _local25 = b2Math.b2Max(_local25, b2Math.b2Abs(_local26)); } else { if (m_limitState == e_atLowerLimit){ _local1 = (_local31 - m_lowerTranslation); _local25 = b2Math.b2Max(_local25, -(_local1)); _local1 = b2Math.b2Clamp((_local1 + b2Settings.b2_linearSlop), -(b2Settings.b2_maxLinearCorrection), 0); _local32 = (-(m_motorMass) * _local1); _local2 = m_limitPositionImpulse; m_limitPositionImpulse = b2Math.b2Max((m_limitPositionImpulse + _local32), 0); _local32 = (m_limitPositionImpulse - _local2); } else { if (m_limitState == e_atUpperLimit){ _local1 = (_local31 - m_upperTranslation); _local25 = b2Math.b2Max(_local25, _local1); _local1 = b2Math.b2Clamp((_local1 - b2Settings.b2_linearSlop), 0, b2Settings.b2_maxLinearCorrection); _local32 = (-(m_motorMass) * _local1); _local2 = m_limitPositionImpulse; m_limitPositionImpulse = b2Math.b2Min((m_limitPositionImpulse + _local32), 0); _local32 = (m_limitPositionImpulse - _local2); }; }; }; _local3.m_sweep.c.x = (_local3.m_sweep.c.x + ((_local5 * _local32) * m_motorJacobian.linear1.x)); _local3.m_sweep.c.y = (_local3.m_sweep.c.y + ((_local5 * _local32) * m_motorJacobian.linear1.y)); _local3.m_sweep.a = (_local3.m_sweep.a + ((_local7 * _local32) * m_motorJacobian.angular1)); _local4.m_sweep.c.x = (_local4.m_sweep.c.x + ((_local6 * _local32) * m_motorJacobian.linear2.x)); _local4.m_sweep.c.y = (_local4.m_sweep.c.y + ((_local6 * _local32) * m_motorJacobian.linear2.y)); _local4.m_sweep.a = (_local4.m_sweep.a + ((_local8 * _local32) * m_motorJacobian.angular2)); _local3.SynchronizeTransform(); _local4.SynchronizeTransform(); }; return ((((_local25 <= b2Settings.b2_linearSlop)) && ((_local28 <= b2Settings.b2_angularSlop)))); } public function SetMotorSpeed(_arg1:Number):void{ m_motorSpeed = _arg1; } public function GetJointSpeed():Number{ var _local3:b2Mat22; var _local1:b2Body = m_body1; var _local2:b2Body = m_body2; _local3 = _local1.m_xf.R; var _local4:Number = (m_localAnchor1.x - _local1.m_sweep.localCenter.x); var _local5:Number = (m_localAnchor1.y - _local1.m_sweep.localCenter.y); var _local6:Number = ((_local3.col1.x * _local4) + (_local3.col2.x * _local5)); _local5 = ((_local3.col1.y * _local4) + (_local3.col2.y * _local5)); _local4 = _local6; _local3 = _local2.m_xf.R; var _local7:Number = (m_localAnchor2.x - _local2.m_sweep.localCenter.x); var _local8:Number = (m_localAnchor2.y - _local2.m_sweep.localCenter.y); _local6 = ((_local3.col1.x * _local7) + (_local3.col2.x * _local8)); _local8 = ((_local3.col1.y * _local7) + (_local3.col2.y * _local8)); _local7 = _local6; var _local9:Number = (_local1.m_sweep.c.x + _local4); var _local10:Number = (_local1.m_sweep.c.y + _local5); var _local11:Number = (_local2.m_sweep.c.x + _local7); var _local12:Number = (_local2.m_sweep.c.y + _local8); var _local13:Number = (_local11 - _local9); var _local14:Number = (_local12 - _local10); var _local15:b2Vec2 = _local1.GetWorldVector(m_localXAxis1); var _local16:b2Vec2 = _local1.m_linearVelocity; var _local17:b2Vec2 = _local2.m_linearVelocity; var _local18:Number = _local1.m_angularVelocity; var _local19:Number = _local2.m_angularVelocity; var _local20:Number = (((_local13 * (-(_local18) * _local15.y)) + (_local14 * (_local18 * _local15.x))) + ((_local15.x * (((_local17.x + (-(_local19) * _local8)) - _local16.x) - (-(_local18) * _local5))) + (_local15.y * (((_local17.y + (_local19 * _local7)) - _local16.y) - (_local18 * _local4))))); return (_local20); } override public function InitVelocityConstraints(_arg1:b2TimeStep):void{ var _local4:b2Mat22; var _local5:Number; var _local18:Number; var _local19:Number; var _local20:Number; var _local21:Number; var _local22:Number; var _local23:Number; var _local24:Number; var _local25:Number; var _local26:Number; var _local27:Number; var _local28:Number; var _local2:b2Body = m_body1; var _local3:b2Body = m_body2; _local4 = _local2.m_xf.R; var _local6:Number = (m_localAnchor1.x - _local2.m_sweep.localCenter.x); var _local7:Number = (m_localAnchor1.y - _local2.m_sweep.localCenter.y); _local5 = ((_local4.col1.x * _local6) + (_local4.col2.x * _local7)); _local7 = ((_local4.col1.y * _local6) + (_local4.col2.y * _local7)); _local6 = _local5; _local4 = _local3.m_xf.R; var _local8:Number = (m_localAnchor2.x - _local3.m_sweep.localCenter.x); var _local9:Number = (m_localAnchor2.y - _local3.m_sweep.localCenter.y); _local5 = ((_local4.col1.x * _local8) + (_local4.col2.x * _local9)); _local9 = ((_local4.col1.y * _local8) + (_local4.col2.y * _local9)); _local8 = _local5; var _local10:Number = _local2.m_invMass; var _local11:Number = _local3.m_invMass; var _local12:Number = _local2.m_invI; var _local13:Number = _local3.m_invI; _local4 = _local2.m_xf.R; var _local14:Number = ((_local4.col1.x * m_localYAxis1.x) + (_local4.col2.x * m_localYAxis1.y)); var _local15:Number = ((_local4.col1.y * m_localYAxis1.x) + (_local4.col2.y * m_localYAxis1.y)); var _local16:Number = ((_local3.m_sweep.c.x + _local8) - _local2.m_sweep.c.x); var _local17:Number = ((_local3.m_sweep.c.y + _local9) - _local2.m_sweep.c.y); m_linearJacobian.linear1.x = -(_local14); m_linearJacobian.linear1.y = -(_local15); m_linearJacobian.linear2.x = _local14; m_linearJacobian.linear2.y = _local15; m_linearJacobian.angular1 = -(((_local16 * _local15) - (_local17 * _local14))); m_linearJacobian.angular2 = ((_local8 * _local15) - (_local9 * _local14)); m_linearMass = (((_local10 + ((_local12 * m_linearJacobian.angular1) * m_linearJacobian.angular1)) + _local11) + ((_local13 * m_linearJacobian.angular2) * m_linearJacobian.angular2)); m_linearMass = (1 / m_linearMass); m_angularMass = (_local12 + _local13); if (m_angularMass > Number.MIN_VALUE){ m_angularMass = (1 / m_angularMass); }; if (((m_enableLimit) || (m_enableMotor))){ _local4 = _local2.m_xf.R; _local18 = ((_local4.col1.x * m_localXAxis1.x) + (_local4.col2.x * m_localXAxis1.y)); _local19 = ((_local4.col1.y * m_localXAxis1.x) + (_local4.col2.y * m_localXAxis1.y)); m_motorJacobian.linear1.x = -(_local18); m_motorJacobian.linear1.y = -(_local19); m_motorJacobian.linear2.x = _local18; m_motorJacobian.linear2.y = _local19; m_motorJacobian.angular1 = -(((_local16 * _local19) - (_local17 * _local18))); m_motorJacobian.angular2 = ((_local8 * _local19) - (_local9 * _local18)); m_motorMass = (((_local10 + ((_local12 * m_motorJacobian.angular1) * m_motorJacobian.angular1)) + _local11) + ((_local13 * m_motorJacobian.angular2) * m_motorJacobian.angular2)); m_motorMass = (1 / m_motorMass); if (m_enableLimit){ _local20 = (_local16 - _local6); _local21 = (_local17 - _local7); _local22 = ((_local18 * _local20) + (_local19 * _local21)); if (b2Math.b2Abs((m_upperTranslation - m_lowerTranslation)) < (2 * b2Settings.b2_linearSlop)){ m_limitState = e_equalLimits; } else { if (_local22 <= m_lowerTranslation){ if (m_limitState != e_atLowerLimit){ m_limitForce = 0; }; m_limitState = e_atLowerLimit; } else { if (_local22 >= m_upperTranslation){ if (m_limitState != e_atUpperLimit){ m_limitForce = 0; }; m_limitState = e_atUpperLimit; } else { m_limitState = e_inactiveLimit; m_limitForce = 0; }; }; }; }; }; if (m_enableMotor == false){ m_motorForce = 0; }; if (m_enableLimit == false){ m_limitForce = 0; }; if (_arg1.warmStarting){ _local23 = (_arg1.dt * ((m_force * m_linearJacobian.linear1.x) + ((m_motorForce + m_limitForce) * m_motorJacobian.linear1.x))); _local24 = (_arg1.dt * ((m_force * m_linearJacobian.linear1.y) + ((m_motorForce + m_limitForce) * m_motorJacobian.linear1.y))); _local25 = (_arg1.dt * ((m_force * m_linearJacobian.linear2.x) + ((m_motorForce + m_limitForce) * m_motorJacobian.linear2.x))); _local26 = (_arg1.dt * ((m_force * m_linearJacobian.linear2.y) + ((m_motorForce + m_limitForce) * m_motorJacobian.linear2.y))); _local27 = (_arg1.dt * (((m_force * m_linearJacobian.angular1) - m_torque) + ((m_motorForce + m_limitForce) * m_motorJacobian.angular1))); _local28 = (_arg1.dt * (((m_force * m_linearJacobian.angular2) + m_torque) + ((m_motorForce + m_limitForce) * m_motorJacobian.angular2))); _local2.m_linearVelocity.x = (_local2.m_linearVelocity.x + (_local10 * _local23)); _local2.m_linearVelocity.y = (_local2.m_linearVelocity.y + (_local10 * _local24)); _local2.m_angularVelocity = (_local2.m_angularVelocity + (_local12 * _local27)); _local3.m_linearVelocity.x = (_local3.m_linearVelocity.x + (_local11 * _local25)); _local3.m_linearVelocity.y = (_local3.m_linearVelocity.y + (_local11 * _local26)); _local3.m_angularVelocity = (_local3.m_angularVelocity + (_local13 * _local28)); } else { m_force = 0; m_torque = 0; m_limitForce = 0; m_motorForce = 0; }; m_limitPositionImpulse = 0; } public function GetMotorForce():Number{ return (m_motorForce); } public function EnableLimit(_arg1:Boolean):void{ m_enableLimit = _arg1; } public function SetMaxMotorForce(_arg1:Number):void{ m_maxMotorForce = _arg1; } override public function GetReactionTorque():Number{ return (m_torque); } public function IsLimitEnabled():Boolean{ return (m_enableLimit); } public function IsMotorEnabled():Boolean{ return (m_enableMotor); } public function SetLimits(_arg1:Number, _arg2:Number):void{ m_lowerTranslation = _arg1; m_upperTranslation = _arg2; } } }//package Box2D.Dynamics.Joints
Section 59
//b2PrismaticJointDef (Box2D.Dynamics.Joints.b2PrismaticJointDef) package Box2D.Dynamics.Joints { import Box2D.Common.Math.*; import Box2D.Dynamics.*; public class b2PrismaticJointDef extends b2JointDef { public var motorSpeed:Number; public var localAxis1:b2Vec2; public var referenceAngle:Number; public var upperTranslation:Number; public var localAnchor1:b2Vec2; public var localAnchor2:b2Vec2; public var enableLimit:Boolean; public var enableMotor:Boolean; public var maxMotorForce:Number; public var lowerTranslation:Number; public function b2PrismaticJointDef(){ localAnchor1 = new b2Vec2(); localAnchor2 = new b2Vec2(); localAxis1 = new b2Vec2(); super(); type = b2Joint.e_prismaticJoint; localAxis1.Set(1, 0); referenceAngle = 0; enableLimit = false; lowerTranslation = 0; upperTranslation = 0; enableMotor = false; maxMotorForce = 0; motorSpeed = 0; } public function Initialize(_arg1:b2Body, _arg2:b2Body, _arg3:b2Vec2, _arg4:b2Vec2):void{ body1 = _arg1; body2 = _arg2; localAnchor1 = body1.GetLocalPoint(_arg3); localAnchor2 = body2.GetLocalPoint(_arg3); localAxis1 = body1.GetLocalVector(_arg4); referenceAngle = (body2.GetAngle() - body1.GetAngle()); } } }//package Box2D.Dynamics.Joints
Section 60
//b2PulleyJoint (Box2D.Dynamics.Joints.b2PulleyJoint) package Box2D.Dynamics.Joints { import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Common.*; public class b2PulleyJoint extends b2Joint { public var m_limitState1:int; public var m_limitState2:int; public var m_ground:b2Body; public var m_maxLength2:Number; public var m_maxLength1:Number; public var m_limitPositionImpulse1:Number; public var m_limitPositionImpulse2:Number; public var m_force:Number; public var m_constant:Number; public var m_positionImpulse:Number; public var m_state:int; public var m_ratio:Number; public var m_groundAnchor1:b2Vec2; public var m_groundAnchor2:b2Vec2; public var m_localAnchor1:b2Vec2; public var m_localAnchor2:b2Vec2; public var m_limitMass1:Number; public var m_limitMass2:Number; public var m_pulleyMass:Number; public var m_u1:b2Vec2; public var m_limitForce1:Number; public var m_limitForce2:Number; public var m_u2:b2Vec2; public static const b2_minPulleyLength:Number = 2; public function b2PulleyJoint(_arg1:b2PulleyJointDef){ var _local2:b2Mat22; var _local3:Number; var _local4:Number; m_groundAnchor1 = new b2Vec2(); m_groundAnchor2 = new b2Vec2(); m_localAnchor1 = new b2Vec2(); m_localAnchor2 = new b2Vec2(); m_u1 = new b2Vec2(); m_u2 = new b2Vec2(); super(_arg1); m_ground = m_body1.m_world.m_groundBody; m_groundAnchor1.x = (_arg1.groundAnchor1.x - m_ground.m_xf.position.x); m_groundAnchor1.y = (_arg1.groundAnchor1.y - m_ground.m_xf.position.y); m_groundAnchor2.x = (_arg1.groundAnchor2.x - m_ground.m_xf.position.x); m_groundAnchor2.y = (_arg1.groundAnchor2.y - m_ground.m_xf.position.y); m_localAnchor1.SetV(_arg1.localAnchor1); m_localAnchor2.SetV(_arg1.localAnchor2); m_ratio = _arg1.ratio; m_constant = (_arg1.length1 + (m_ratio * _arg1.length2)); m_maxLength1 = b2Math.b2Min(_arg1.maxLength1, (m_constant - (m_ratio * b2_minPulleyLength))); m_maxLength2 = b2Math.b2Min(_arg1.maxLength2, ((m_constant - b2_minPulleyLength) / m_ratio)); m_force = 0; m_limitForce1 = 0; m_limitForce2 = 0; } public function GetGroundAnchor2():b2Vec2{ var _local1:b2Vec2 = m_ground.m_xf.position.Copy(); _local1.Add(m_groundAnchor2); return (_local1); } override public function GetAnchor1():b2Vec2{ return (m_body1.GetWorldPoint(m_localAnchor1)); } override public function GetAnchor2():b2Vec2{ return (m_body2.GetWorldPoint(m_localAnchor2)); } override public function GetReactionForce():b2Vec2{ var _local1:b2Vec2 = m_u2.Copy(); _local1.Multiply(m_force); return (_local1); } override public function SolvePositionConstraints():Boolean{ var _local3:b2Mat22; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; var _local20:Number; var _local21:Number; var _local22:Number; var _local1:b2Body = m_body1; var _local2:b2Body = m_body2; var _local4:Number = (m_ground.m_xf.position.x + m_groundAnchor1.x); var _local5:Number = (m_ground.m_xf.position.y + m_groundAnchor1.y); var _local6:Number = (m_ground.m_xf.position.x + m_groundAnchor2.x); var _local7:Number = (m_ground.m_xf.position.y + m_groundAnchor2.y); var _local23:Number = 0; if (m_state == e_atUpperLimit){ _local3 = _local1.m_xf.R; _local8 = (m_localAnchor1.x - _local1.m_sweep.localCenter.x); _local9 = (m_localAnchor1.y - _local1.m_sweep.localCenter.y); _local22 = ((_local3.col1.x * _local8) + (_local3.col2.x * _local9)); _local9 = ((_local3.col1.y * _local8) + (_local3.col2.y * _local9)); _local8 = _local22; _local3 = _local2.m_xf.R; _local10 = (m_localAnchor2.x - _local2.m_sweep.localCenter.x); _local11 = (m_localAnchor2.y - _local2.m_sweep.localCenter.y); _local22 = ((_local3.col1.x * _local10) + (_local3.col2.x * _local11)); _local11 = ((_local3.col1.y * _local10) + (_local3.col2.y * _local11)); _local10 = _local22; _local12 = (_local1.m_sweep.c.x + _local8); _local13 = (_local1.m_sweep.c.y + _local9); _local14 = (_local2.m_sweep.c.x + _local10); _local15 = (_local2.m_sweep.c.y + _local11); m_u1.Set((_local12 - _local4), (_local13 - _local5)); m_u2.Set((_local14 - _local6), (_local15 - _local7)); _local16 = m_u1.Length(); _local17 = m_u2.Length(); if (_local16 > b2Settings.b2_linearSlop){ m_u1.Multiply((1 / _local16)); } else { m_u1.SetZero(); }; if (_local17 > b2Settings.b2_linearSlop){ m_u2.Multiply((1 / _local17)); } else { m_u2.SetZero(); }; _local18 = ((m_constant - _local16) - (m_ratio * _local17)); _local23 = b2Math.b2Max(_local23, -(_local18)); _local18 = b2Math.b2Clamp((_local18 + b2Settings.b2_linearSlop), -(b2Settings.b2_maxLinearCorrection), 0); _local19 = (-(m_pulleyMass) * _local18); _local20 = m_positionImpulse; m_positionImpulse = b2Math.b2Max(0, (m_positionImpulse + _local19)); _local19 = (m_positionImpulse - _local20); _local12 = (-(_local19) * m_u1.x); _local13 = (-(_local19) * m_u1.y); _local14 = ((-(m_ratio) * _local19) * m_u2.x); _local15 = ((-(m_ratio) * _local19) * m_u2.y); _local1.m_sweep.c.x = (_local1.m_sweep.c.x + (_local1.m_invMass * _local12)); _local1.m_sweep.c.y = (_local1.m_sweep.c.y + (_local1.m_invMass * _local13)); _local1.m_sweep.a = (_local1.m_sweep.a + (_local1.m_invI * ((_local8 * _local13) - (_local9 * _local12)))); _local2.m_sweep.c.x = (_local2.m_sweep.c.x + (_local2.m_invMass * _local14)); _local2.m_sweep.c.y = (_local2.m_sweep.c.y + (_local2.m_invMass * _local15)); _local2.m_sweep.a = (_local2.m_sweep.a + (_local2.m_invI * ((_local10 * _local15) - (_local11 * _local14)))); _local1.SynchronizeTransform(); _local2.SynchronizeTransform(); }; if (m_limitState1 == e_atUpperLimit){ _local3 = _local1.m_xf.R; _local8 = (m_localAnchor1.x - _local1.m_sweep.localCenter.x); _local9 = (m_localAnchor1.y - _local1.m_sweep.localCenter.y); _local22 = ((_local3.col1.x * _local8) + (_local3.col2.x * _local9)); _local9 = ((_local3.col1.y * _local8) + (_local3.col2.y * _local9)); _local8 = _local22; _local12 = (_local1.m_sweep.c.x + _local8); _local13 = (_local1.m_sweep.c.y + _local9); m_u1.Set((_local12 - _local4), (_local13 - _local5)); _local16 = m_u1.Length(); if (_local16 > b2Settings.b2_linearSlop){ m_u1.x = (m_u1.x * (1 / _local16)); m_u1.y = (m_u1.y * (1 / _local16)); } else { m_u1.SetZero(); }; _local18 = (m_maxLength1 - _local16); _local23 = b2Math.b2Max(_local23, -(_local18)); _local18 = b2Math.b2Clamp((_local18 + b2Settings.b2_linearSlop), -(b2Settings.b2_maxLinearCorrection), 0); _local19 = (-(m_limitMass1) * _local18); _local21 = m_limitPositionImpulse1; m_limitPositionImpulse1 = b2Math.b2Max(0, (m_limitPositionImpulse1 + _local19)); _local19 = (m_limitPositionImpulse1 - _local21); _local12 = (-(_local19) * m_u1.x); _local13 = (-(_local19) * m_u1.y); _local1.m_sweep.c.x = (_local1.m_sweep.c.x + (_local1.m_invMass * _local12)); _local1.m_sweep.c.y = (_local1.m_sweep.c.y + (_local1.m_invMass * _local13)); _local1.m_sweep.a = (_local1.m_sweep.a + (_local1.m_invI * ((_local8 * _local13) - (_local9 * _local12)))); _local1.SynchronizeTransform(); }; if (m_limitState2 == e_atUpperLimit){ _local3 = _local2.m_xf.R; _local10 = (m_localAnchor2.x - _local2.m_sweep.localCenter.x); _local11 = (m_localAnchor2.y - _local2.m_sweep.localCenter.y); _local22 = ((_local3.col1.x * _local10) + (_local3.col2.x * _local11)); _local11 = ((_local3.col1.y * _local10) + (_local3.col2.y * _local11)); _local10 = _local22; _local14 = (_local2.m_sweep.c.x + _local10); _local15 = (_local2.m_sweep.c.y + _local11); m_u2.Set((_local14 - _local6), (_local15 - _local7)); _local17 = m_u2.Length(); if (_local17 > b2Settings.b2_linearSlop){ m_u2.x = (m_u2.x * (1 / _local17)); m_u2.y = (m_u2.y * (1 / _local17)); } else { m_u2.SetZero(); }; _local18 = (m_maxLength2 - _local17); _local23 = b2Math.b2Max(_local23, -(_local18)); _local18 = b2Math.b2Clamp((_local18 + b2Settings.b2_linearSlop), -(b2Settings.b2_maxLinearCorrection), 0); _local19 = (-(m_limitMass2) * _local18); _local21 = m_limitPositionImpulse2; m_limitPositionImpulse2 = b2Math.b2Max(0, (m_limitPositionImpulse2 + _local19)); _local19 = (m_limitPositionImpulse2 - _local21); _local14 = (-(_local19) * m_u2.x); _local15 = (-(_local19) * m_u2.y); _local2.m_sweep.c.x = (_local2.m_sweep.c.x + (_local2.m_invMass * _local14)); _local2.m_sweep.c.y = (_local2.m_sweep.c.y + (_local2.m_invMass * _local15)); _local2.m_sweep.a = (_local2.m_sweep.a + (_local2.m_invI * ((_local10 * _local15) - (_local11 * _local14)))); _local2.SynchronizeTransform(); }; return ((_local23 < b2Settings.b2_linearSlop)); } override public function InitVelocityConstraints(_arg1:b2TimeStep):void{ var _local4:b2Mat22; var _local23:Number; var _local24:Number; var _local25:Number; var _local26:Number; var _local2:b2Body = m_body1; var _local3:b2Body = m_body2; _local4 = _local2.m_xf.R; var _local5:Number = (m_localAnchor1.x - _local2.m_sweep.localCenter.x); var _local6:Number = (m_localAnchor1.y - _local2.m_sweep.localCenter.y); var _local7:Number = ((_local4.col1.x * _local5) + (_local4.col2.x * _local6)); _local6 = ((_local4.col1.y * _local5) + (_local4.col2.y * _local6)); _local5 = _local7; _local4 = _local3.m_xf.R; var _local8:Number = (m_localAnchor2.x - _local3.m_sweep.localCenter.x); var _local9:Number = (m_localAnchor2.y - _local3.m_sweep.localCenter.y); _local7 = ((_local4.col1.x * _local8) + (_local4.col2.x * _local9)); _local9 = ((_local4.col1.y * _local8) + (_local4.col2.y * _local9)); _local8 = _local7; var _local10:Number = (_local2.m_sweep.c.x + _local5); var _local11:Number = (_local2.m_sweep.c.y + _local6); var _local12:Number = (_local3.m_sweep.c.x + _local8); var _local13:Number = (_local3.m_sweep.c.y + _local9); var _local14:Number = (m_ground.m_xf.position.x + m_groundAnchor1.x); var _local15:Number = (m_ground.m_xf.position.y + m_groundAnchor1.y); var _local16:Number = (m_ground.m_xf.position.x + m_groundAnchor2.x); var _local17:Number = (m_ground.m_xf.position.y + m_groundAnchor2.y); m_u1.Set((_local10 - _local14), (_local11 - _local15)); m_u2.Set((_local12 - _local16), (_local13 - _local17)); var _local18:Number = m_u1.Length(); var _local19:Number = m_u2.Length(); if (_local18 > b2Settings.b2_linearSlop){ m_u1.Multiply((1 / _local18)); } else { m_u1.SetZero(); }; if (_local19 > b2Settings.b2_linearSlop){ m_u2.Multiply((1 / _local19)); } else { m_u2.SetZero(); }; var _local20:Number = ((m_constant - _local18) - (m_ratio * _local19)); if (_local20 > 0){ m_state = e_inactiveLimit; m_force = 0; } else { m_state = e_atUpperLimit; m_positionImpulse = 0; }; if (_local18 < m_maxLength1){ m_limitState1 = e_inactiveLimit; m_limitForce1 = 0; } else { m_limitState1 = e_atUpperLimit; m_limitPositionImpulse1 = 0; }; if (_local19 < m_maxLength2){ m_limitState2 = e_inactiveLimit; m_limitForce2 = 0; } else { m_limitState2 = e_atUpperLimit; m_limitPositionImpulse2 = 0; }; var _local21:Number = ((_local5 * m_u1.y) - (_local6 * m_u1.x)); var _local22:Number = ((_local8 * m_u2.y) - (_local9 * m_u2.x)); m_limitMass1 = (_local2.m_invMass + ((_local2.m_invI * _local21) * _local21)); m_limitMass2 = (_local3.m_invMass + ((_local3.m_invI * _local22) * _local22)); m_pulleyMass = (m_limitMass1 + ((m_ratio * m_ratio) * m_limitMass2)); m_limitMass1 = (1 / m_limitMass1); m_limitMass2 = (1 / m_limitMass2); m_pulleyMass = (1 / m_pulleyMass); if (_arg1.warmStarting){ _local23 = ((_arg1.dt * (-(m_force) - m_limitForce1)) * m_u1.x); _local24 = ((_arg1.dt * (-(m_force) - m_limitForce1)) * m_u1.y); _local25 = ((_arg1.dt * ((-(m_ratio) * m_force) - m_limitForce2)) * m_u2.x); _local26 = ((_arg1.dt * ((-(m_ratio) * m_force) - m_limitForce2)) * m_u2.y); _local2.m_linearVelocity.x = (_local2.m_linearVelocity.x + (_local2.m_invMass * _local23)); _local2.m_linearVelocity.y = (_local2.m_linearVelocity.y + (_local2.m_invMass * _local24)); _local2.m_angularVelocity = (_local2.m_angularVelocity + (_local2.m_invI * ((_local5 * _local24) - (_local6 * _local23)))); _local3.m_linearVelocity.x = (_local3.m_linearVelocity.x + (_local3.m_invMass * _local25)); _local3.m_linearVelocity.y = (_local3.m_linearVelocity.y + (_local3.m_invMass * _local26)); _local3.m_angularVelocity = (_local3.m_angularVelocity + (_local3.m_invI * ((_local8 * _local26) - (_local9 * _local25)))); } else { m_force = 0; m_limitForce1 = 0; m_limitForce2 = 0; }; } override public function GetReactionTorque():Number{ return (0); } public function GetRatio():Number{ return (m_ratio); } override public function SolveVelocityConstraints(_arg1:b2TimeStep):void{ var _local4:b2Mat22; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; var _local20:Number; var _local2:b2Body = m_body1; var _local3:b2Body = m_body2; _local4 = _local2.m_xf.R; var _local5:Number = (m_localAnchor1.x - _local2.m_sweep.localCenter.x); var _local6:Number = (m_localAnchor1.y - _local2.m_sweep.localCenter.y); var _local7:Number = ((_local4.col1.x * _local5) + (_local4.col2.x * _local6)); _local6 = ((_local4.col1.y * _local5) + (_local4.col2.y * _local6)); _local5 = _local7; _local4 = _local3.m_xf.R; var _local8:Number = (m_localAnchor2.x - _local3.m_sweep.localCenter.x); var _local9:Number = (m_localAnchor2.y - _local3.m_sweep.localCenter.y); _local7 = ((_local4.col1.x * _local8) + (_local4.col2.x * _local9)); _local9 = ((_local4.col1.y * _local8) + (_local4.col2.y * _local9)); _local8 = _local7; if (m_state == e_atUpperLimit){ _local10 = (_local2.m_linearVelocity.x + (-(_local2.m_angularVelocity) * _local6)); _local11 = (_local2.m_linearVelocity.y + (_local2.m_angularVelocity * _local5)); _local12 = (_local3.m_linearVelocity.x + (-(_local3.m_angularVelocity) * _local9)); _local13 = (_local3.m_linearVelocity.y + (_local3.m_angularVelocity * _local8)); _local18 = (-(((m_u1.x * _local10) + (m_u1.y * _local11))) - (m_ratio * ((m_u2.x * _local12) + (m_u2.y * _local13)))); _local19 = ((-(_arg1.inv_dt) * m_pulleyMass) * _local18); _local20 = m_force; m_force = b2Math.b2Max(0, (m_force + _local19)); _local19 = (m_force - _local20); _local14 = ((-(_arg1.dt) * _local19) * m_u1.x); _local15 = ((-(_arg1.dt) * _local19) * m_u1.y); _local16 = (((-(_arg1.dt) * m_ratio) * _local19) * m_u2.x); _local17 = (((-(_arg1.dt) * m_ratio) * _local19) * m_u2.y); _local2.m_linearVelocity.x = (_local2.m_linearVelocity.x + (_local2.m_invMass * _local14)); _local2.m_linearVelocity.y = (_local2.m_linearVelocity.y + (_local2.m_invMass * _local15)); _local2.m_angularVelocity = (_local2.m_angularVelocity + (_local2.m_invI * ((_local5 * _local15) - (_local6 * _local14)))); _local3.m_linearVelocity.x = (_local3.m_linearVelocity.x + (_local3.m_invMass * _local16)); _local3.m_linearVelocity.y = (_local3.m_linearVelocity.y + (_local3.m_invMass * _local17)); _local3.m_angularVelocity = (_local3.m_angularVelocity + (_local3.m_invI * ((_local8 * _local17) - (_local9 * _local16)))); }; if (m_limitState1 == e_atUpperLimit){ _local10 = (_local2.m_linearVelocity.x + (-(_local2.m_angularVelocity) * _local6)); _local11 = (_local2.m_linearVelocity.y + (_local2.m_angularVelocity * _local5)); _local18 = -(((m_u1.x * _local10) + (m_u1.y * _local11))); _local19 = ((-(_arg1.inv_dt) * m_limitMass1) * _local18); _local20 = m_limitForce1; m_limitForce1 = b2Math.b2Max(0, (m_limitForce1 + _local19)); _local19 = (m_limitForce1 - _local20); _local14 = ((-(_arg1.dt) * _local19) * m_u1.x); _local15 = ((-(_arg1.dt) * _local19) * m_u1.y); _local2.m_linearVelocity.x = (_local2.m_linearVelocity.x + (_local2.m_invMass * _local14)); _local2.m_linearVelocity.y = (_local2.m_linearVelocity.y + (_local2.m_invMass * _local15)); _local2.m_angularVelocity = (_local2.m_angularVelocity + (_local2.m_invI * ((_local5 * _local15) - (_local6 * _local14)))); }; if (m_limitState2 == e_atUpperLimit){ _local12 = (_local3.m_linearVelocity.x + (-(_local3.m_angularVelocity) * _local9)); _local13 = (_local3.m_linearVelocity.y + (_local3.m_angularVelocity * _local8)); _local18 = -(((m_u2.x * _local12) + (m_u2.y * _local13))); _local19 = ((-(_arg1.inv_dt) * m_limitMass2) * _local18); _local20 = m_limitForce2; m_limitForce2 = b2Math.b2Max(0, (m_limitForce2 + _local19)); _local19 = (m_limitForce2 - _local20); _local16 = ((-(_arg1.dt) * _local19) * m_u2.x); _local17 = ((-(_arg1.dt) * _local19) * m_u2.y); _local3.m_linearVelocity.x = (_local3.m_linearVelocity.x + (_local3.m_invMass * _local16)); _local3.m_linearVelocity.y = (_local3.m_linearVelocity.y + (_local3.m_invMass * _local17)); _local3.m_angularVelocity = (_local3.m_angularVelocity + (_local3.m_invI * ((_local8 * _local17) - (_local9 * _local16)))); }; } public function GetLength1():Number{ var _local1:b2Vec2 = m_body1.GetWorldPoint(m_localAnchor1); var _local2:Number = (m_ground.m_xf.position.x + m_groundAnchor1.x); var _local3:Number = (m_ground.m_xf.position.y + m_groundAnchor1.y); var _local4:Number = (_local1.x - _local2); var _local5:Number = (_local1.y - _local3); return (Math.sqrt(((_local4 * _local4) + (_local5 * _local5)))); } public function GetLength2():Number{ var _local1:b2Vec2 = m_body2.GetWorldPoint(m_localAnchor2); var _local2:Number = (m_ground.m_xf.position.x + m_groundAnchor2.x); var _local3:Number = (m_ground.m_xf.position.y + m_groundAnchor2.y); var _local4:Number = (_local1.x - _local2); var _local5:Number = (_local1.y - _local3); return (Math.sqrt(((_local4 * _local4) + (_local5 * _local5)))); } public function GetGroundAnchor1():b2Vec2{ var _local1:b2Vec2 = m_ground.m_xf.position.Copy(); _local1.Add(m_groundAnchor1); return (_local1); } } }//package Box2D.Dynamics.Joints
Section 61
//b2PulleyJointDef (Box2D.Dynamics.Joints.b2PulleyJointDef) package Box2D.Dynamics.Joints { import Box2D.Common.Math.*; import Box2D.Dynamics.*; public class b2PulleyJointDef extends b2JointDef { public var maxLength1:Number; public var maxLength2:Number; public var length1:Number; public var localAnchor1:b2Vec2; public var localAnchor2:b2Vec2; public var groundAnchor1:b2Vec2; public var groundAnchor2:b2Vec2; public var ratio:Number; public var length2:Number; public function b2PulleyJointDef(){ groundAnchor1 = new b2Vec2(); groundAnchor2 = new b2Vec2(); localAnchor1 = new b2Vec2(); localAnchor2 = new b2Vec2(); super(); type = b2Joint.e_pulleyJoint; groundAnchor1.Set(-1, 1); groundAnchor2.Set(1, 1); localAnchor1.Set(-1, 0); localAnchor2.Set(1, 0); length1 = 0; maxLength1 = 0; length2 = 0; maxLength2 = 0; ratio = 1; collideConnected = true; } public function Initialize(_arg1:b2Body, _arg2:b2Body, _arg3:b2Vec2, _arg4:b2Vec2, _arg5:b2Vec2, _arg6:b2Vec2, _arg7:Number):void{ body1 = _arg1; body2 = _arg2; groundAnchor1.SetV(_arg3); groundAnchor2.SetV(_arg4); localAnchor1 = body1.GetLocalPoint(_arg5); localAnchor2 = body2.GetLocalPoint(_arg6); var _local8:Number = (_arg5.x - _arg3.x); var _local9:Number = (_arg5.y - _arg3.y); length1 = Math.sqrt(((_local8 * _local8) + (_local9 * _local9))); var _local10:Number = (_arg6.x - _arg4.x); var _local11:Number = (_arg6.y - _arg4.y); length2 = Math.sqrt(((_local10 * _local10) + (_local11 * _local11))); ratio = _arg7; var _local12:Number = (length1 + (ratio * length2)); maxLength1 = (_local12 - (ratio * b2PulleyJoint.b2_minPulleyLength)); maxLength2 = ((_local12 - b2PulleyJoint.b2_minPulleyLength) / ratio); } } }//package Box2D.Dynamics.Joints
Section 62
//b2RevoluteJoint (Box2D.Dynamics.Joints.b2RevoluteJoint) package Box2D.Dynamics.Joints { import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Common.*; public class b2RevoluteJoint extends b2Joint { public var m_limitForce:Number; public var m_pivotMass:b2Mat22; public var m_motorForce:Number; public var m_enableLimit:Boolean; public var m_limitState:int; public var m_motorMass:Number; public var m_localAnchor1:b2Vec2; public var m_localAnchor2:b2Vec2; private var K1:b2Mat22; private var K2:b2Mat22; private var K3:b2Mat22; private var K:b2Mat22; public var m_pivotForce:b2Vec2; public var m_enableMotor:Boolean; public var m_referenceAngle:Number; public var m_limitPositionImpulse:Number; public var m_motorSpeed:Number; public var m_upperAngle:Number; public var m_lowerAngle:Number; public var m_maxMotorTorque:Number; public static var tImpulse:b2Vec2 = new b2Vec2(); public function b2RevoluteJoint(_arg1:b2RevoluteJointDef){ K = new b2Mat22(); K1 = new b2Mat22(); K2 = new b2Mat22(); K3 = new b2Mat22(); m_localAnchor1 = new b2Vec2(); m_localAnchor2 = new b2Vec2(); m_pivotForce = new b2Vec2(); m_pivotMass = new b2Mat22(); super(_arg1); m_localAnchor1.SetV(_arg1.localAnchor1); m_localAnchor2.SetV(_arg1.localAnchor2); m_referenceAngle = _arg1.referenceAngle; m_pivotForce.Set(0, 0); m_motorForce = 0; m_limitForce = 0; m_limitPositionImpulse = 0; m_lowerAngle = _arg1.lowerAngle; m_upperAngle = _arg1.upperAngle; m_maxMotorTorque = _arg1.maxMotorTorque; m_motorSpeed = _arg1.motorSpeed; m_enableLimit = _arg1.enableLimit; m_enableMotor = _arg1.enableMotor; } override public function SolveVelocityConstraints(_arg1:b2TimeStep):void{ var _local4:b2Mat22; var _local5:Number; var _local10:Number; var _local16: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); _local16 = (_arg1.dt * _local14); _local2.m_linearVelocity.x = (_local2.m_linearVelocity.x - (_local2.m_invMass * _local15)); _local2.m_linearVelocity.y = (_local2.m_linearVelocity.y - (_local2.m_invMass * _local16)); _local2.m_angularVelocity = (_local2.m_angularVelocity - (_local2.m_invI * ((_local6 * _local16) - (_local7 * _local15)))); _local3.m_linearVelocity.x = (_local3.m_linearVelocity.x + (_local3.m_invMass * _local15)); _local3.m_linearVelocity.y = (_local3.m_linearVelocity.y + (_local3.m_invMass * _local16)); _local3.m_angularVelocity = (_local3.m_angularVelocity + (_local3.m_invI * ((_local8 * _local16) - (_local9 * _local15)))); if (((m_enableMotor) && (!((m_limitState == e_equalLimits))))){ _local17 = ((_local3.m_angularVelocity - _local2.m_angularVelocity) - m_motorSpeed); _local18 = ((-(_arg1.inv_dt) * m_motorMass) * _local17); _local19 = m_motorForce; m_motorForce = b2Math.b2Clamp((m_motorForce + _local18), -(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.Contacts.*; import Box2D.Collision.Shapes.*; import Box2D.Dynamics.Joints.*; public class b2Body { public var m_next:b2Body; public var m_xf:b2XForm; public var m_contactList:b2ContactEdge; public var m_angularVelocity:Number; public var m_shapeList:b2Shape; public var m_force:b2Vec2; public var m_mass:Number; public var m_sweep:b2Sweep; public var m_torque:Number; public var m_userData; public var m_flags:uint; public var m_world:b2World; public var m_prev:b2Body; public var m_invMass:Number; public var m_type:int; public var m_linearDamping:Number; public var m_shapeCount:int; public var m_angularDamping:Number; public var m_invI:Number; public var m_linearVelocity:b2Vec2; public var m_sleepTime:Number; public var m_jointList:b2JointEdge; public var m_I:Number; public static var e_fixedRotationFlag:uint = 64; public static var e_frozenFlag:uint = 2; public static var e_maxTypes:uint = 3; public static var e_sleepFlag:uint = 8; private static var s_massData:b2MassData = new b2MassData(); public static var e_bulletFlag:uint = 32; public static var e_staticType:uint = 1; public static var e_islandFlag:uint = 4; public static var e_allowSleepFlag:uint = 16; private static var s_xf1:b2XForm = new b2XForm(); public static var e_dynamicType:uint = 2; public function b2Body(_arg1:b2BodyDef, _arg2:b2World){ m_xf = new b2XForm(); m_sweep = new b2Sweep(); m_linearVelocity = new b2Vec2(); m_force = new b2Vec2(); super(); m_flags = 0; if (_arg1.isBullet){ m_flags = (m_flags | e_bulletFlag); }; if (_arg1.fixedRotation){ m_flags = (m_flags | e_fixedRotationFlag); }; if (_arg1.allowSleep){ m_flags = (m_flags | e_allowSleepFlag); }; if (_arg1.isSleeping){ m_flags = (m_flags | e_sleepFlag); }; m_world = _arg2; m_xf.position.SetV(_arg1.position); m_xf.R.Set(_arg1.angle); m_sweep.localCenter.SetV(_arg1.massData.center); m_sweep.t0 = 1; m_sweep.a0 = (m_sweep.a = _arg1.angle); var _local3:b2Mat22 = m_xf.R; var _local4:b2Vec2 = m_sweep.localCenter; m_sweep.c.x = ((_local3.col1.x * _local4.x) + (_local3.col2.x * _local4.y)); m_sweep.c.y = ((_local3.col1.y * _local4.x) + (_local3.col2.y * _local4.y)); m_sweep.c.x = (m_sweep.c.x + m_xf.position.x); m_sweep.c.y = (m_sweep.c.y + m_xf.position.y); m_sweep.c0.SetV(m_sweep.c); m_jointList = null; m_contactList = null; m_prev = null; m_next = null; m_linearDamping = _arg1.linearDamping; m_angularDamping = _arg1.angularDamping; m_force.Set(0, 0); m_torque = 0; m_linearVelocity.SetZero(); m_angularVelocity = 0; m_sleepTime = 0; m_invMass = 0; m_I = 0; m_invI = 0; m_mass = _arg1.massData.mass; if (m_mass > 0){ m_invMass = (1 / m_mass); }; if ((m_flags & b2Body.e_fixedRotationFlag) == 0){ m_I = _arg1.massData.I; }; if (m_I > 0){ m_invI = (1 / m_I); }; if ((((m_invMass == 0)) && ((m_invI == 0)))){ m_type = e_staticType; } else { m_type = e_dynamicType; }; m_userData = _arg1.userData; m_shapeList = null; m_shapeCount = 0; } public function GetLinearVelocityFromWorldPoint(_arg1:b2Vec2):b2Vec2{ return (new b2Vec2((m_linearVelocity.x + (m_angularVelocity * (_arg1.y - m_sweep.c.y))), (m_linearVelocity.x - (m_angularVelocity * (_arg1.x - m_sweep.c.x))))); } public function SetLinearVelocity(_arg1:b2Vec2):void{ m_linearVelocity.SetV(_arg1); } public function WakeUp():void{ m_flags = (m_flags & ~(e_sleepFlag)); m_sleepTime = 0; } public function GetLocalCenter():b2Vec2{ return (m_sweep.localCenter); } public function ApplyTorque(_arg1:Number):void{ if (IsSleeping()){ WakeUp(); }; m_torque = (m_torque + _arg1); } public function IsFrozen():Boolean{ return (((m_flags & e_frozenFlag) == e_frozenFlag)); } public function IsDynamic():Boolean{ return ((m_type == e_dynamicType)); } public function GetLinearVelocity():b2Vec2{ return (m_linearVelocity); } public function SynchronizeTransform():void{ m_xf.R.Set(m_sweep.a); var _local1:b2Mat22 = m_xf.R; var _local2:b2Vec2 = m_sweep.localCenter; m_xf.position.x = (m_sweep.c.x - ((_local1.col1.x * _local2.x) + (_local1.col2.x * _local2.y))); m_xf.position.y = (m_sweep.c.y - ((_local1.col1.y * _local2.x) + (_local1.col2.y * _local2.y))); } public function 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{ var _local2:b2Shape; if (m_world.m_lock == true){ return (null); }; _local2 = b2Shape.Create(_arg1, m_world.m_blockAllocator); _local2.m_next = m_shapeList; m_shapeList = _local2; m_shapeCount++; _local2.m_body = this; _local2.CreateProxy(m_world.m_broadPhase, m_xf); _local2.UpdateSweepRadius(m_sweep.localCenter); return (_local2); } public function IsConnected(_arg1:b2Body):Boolean{ var _local2:b2JointEdge = 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.Common.Math.*; import Box2D.Collision.Shapes.*; public class b2BodyDef { public var angularDamping:Number; public var angle:Number; public var isSleeping:Boolean; public var position:b2Vec2; public var isBullet:Boolean; public var allowSleep:Boolean; public var userData; public var fixedRotation:Boolean; public var linearDamping:Number; public var massData:b2MassData; public function b2BodyDef(){ massData = new b2MassData(); position = new b2Vec2(); super(); massData.center.SetZero(); massData.mass = 0; massData.I = 0; userData = null; position.Set(0, 0); angle = 0; linearDamping = 0; angularDamping = 0; allowSleep = true; isSleeping = false; fixedRotation = false; isBullet = false; } } }//package Box2D.Dynamics
Section 66
//b2BoundaryListener (Box2D.Dynamics.b2BoundaryListener) package Box2D.Dynamics { public class b2BoundaryListener { public function Violation(_arg1:b2Body):void{ } } }//package Box2D.Dynamics
Section 67
//b2ContactFilter (Box2D.Dynamics.b2ContactFilter) package Box2D.Dynamics { import Box2D.Collision.Shapes.*; public class b2ContactFilter { public static var b2_defaultFilter:b2ContactFilter = new (b2ContactFilter); ; public function ShouldCollide(_arg1:b2Shape, _arg2:b2Shape):Boolean{ var _local3:b2FilterData = _arg1.GetFilterData(); var _local4:b2FilterData = _arg2.GetFilterData(); if ((((_local3.groupIndex == _local4.groupIndex)) && (!((_local3.groupIndex == 0))))){ return ((_local3.groupIndex > 0)); }; var _local5:Boolean = ((!(((_local3.maskBits & _local4.categoryBits) == 0))) && (!(((_local3.categoryBits & _local4.maskBits) == 0)))); return (_local5); } } }//package Box2D.Dynamics
Section 68
//b2ContactListener (Box2D.Dynamics.b2ContactListener) package Box2D.Dynamics { import Box2D.Collision.*; import Box2D.Dynamics.Contacts.*; public class b2ContactListener { public function Add(_arg1:b2ContactPoint):void{ } public function Remove(_arg1:b2ContactPoint):void{ } public function Persist(_arg1:b2ContactPoint):void{ } public function Result(_arg1:b2ContactResult):void{ } } }//package Box2D.Dynamics
Section 69
//b2ContactManager (Box2D.Dynamics.b2ContactManager) package Box2D.Dynamics { import Box2D.Common.Math.*; import Box2D.Collision.*; import Box2D.Dynamics.Contacts.*; import Box2D.Collision.Shapes.*; import Box2D.Common.*; 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.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 flash.display.*; import Box2D.Common.Math.*; import Box2D.Collision.*; import Box2D.Dynamics.Contacts.*; import Box2D.Collision.Shapes.*; import Box2D.Common.*; public class b2DebugDraw { public var m_xformScale:Number;// = 1 public var m_fillAlpha:Number;// = 1 public var m_alpha:Number;// = 1 public var m_drawFlags:uint; public var m_lineThickness:Number;// = 1 public var m_drawScale:Number;// = 1 public var m_sprite:Sprite; public static var e_coreShapeBit:uint = 4; public static var e_shapeBit:uint = 1; public static var e_centerOfMassBit:uint = 64; public static var e_aabbBit:uint = 8; public static var e_obbBit:uint = 16; public static var e_pairBit:uint = 32; public static var e_jointBit:uint = 2; public function b2DebugDraw(){ m_drawFlags = 0; } public function ClearFlags(_arg1:uint):void{ m_drawFlags = (m_drawFlags & ~(_arg1)); } public function SetFlags(_arg1:uint):void{ m_drawFlags = _arg1; } public function AppendFlags(_arg1:uint):void{ m_drawFlags = (m_drawFlags | _arg1); } public function DrawSegment(_arg1:b2Vec2, _arg2:b2Vec2, _arg3:b2Color):void{ m_sprite.graphics.lineStyle(m_lineThickness, _arg3.color, m_alpha); m_sprite.graphics.moveTo((_arg1.x * m_drawScale), (_arg1.y * m_drawScale)); m_sprite.graphics.lineTo((_arg2.x * m_drawScale), (_arg2.y * m_drawScale)); } public function DrawSolidPolygon(_arg1:Array, _arg2:int, _arg3:b2Color):void{ m_sprite.graphics.lineStyle(m_lineThickness, _arg3.color, m_alpha); m_sprite.graphics.moveTo((_arg1[0].x * m_drawScale), (_arg1[0].y * m_drawScale)); m_sprite.graphics.beginFill(_arg3.color, m_fillAlpha); var _local4 = 1; while (_local4 < _arg2) { m_sprite.graphics.lineTo((_arg1[_local4].x * m_drawScale), (_arg1[_local4].y * m_drawScale)); _local4++; }; m_sprite.graphics.lineTo((_arg1[0].x * m_drawScale), (_arg1[0].y * m_drawScale)); m_sprite.graphics.endFill(); } public function DrawCircle(_arg1:b2Vec2, _arg2:Number, _arg3:b2Color):void{ m_sprite.graphics.lineStyle(m_lineThickness, _arg3.color, m_alpha); m_sprite.graphics.drawCircle((_arg1.x * m_drawScale), (_arg1.y * m_drawScale), (_arg2 * m_drawScale)); } public function DrawPolygon(_arg1:Array, _arg2:int, _arg3:b2Color):void{ m_sprite.graphics.lineStyle(m_lineThickness, _arg3.color, m_alpha); m_sprite.graphics.moveTo((_arg1[0].x * m_drawScale), (_arg1[0].y * m_drawScale)); var _local4 = 1; while (_local4 < _arg2) { m_sprite.graphics.lineTo((_arg1[_local4].x * m_drawScale), (_arg1[_local4].y * m_drawScale)); _local4++; }; m_sprite.graphics.lineTo((_arg1[0].x * m_drawScale), (_arg1[0].y * m_drawScale)); } public function DrawSolidCircle(_arg1:b2Vec2, _arg2:Number, _arg3:b2Vec2, _arg4:b2Color):void{ m_sprite.graphics.lineStyle(m_lineThickness, _arg4.color, m_alpha); m_sprite.graphics.moveTo(0, 0); m_sprite.graphics.beginFill(_arg4.color, m_fillAlpha); m_sprite.graphics.drawCircle((_arg1.x * m_drawScale), (_arg1.y * m_drawScale), (_arg2 * m_drawScale)); m_sprite.graphics.endFill(); m_sprite.graphics.moveTo((_arg1.x * m_drawScale), (_arg1.y * m_drawScale)); m_sprite.graphics.lineTo(((_arg1.x + (_arg3.x * _arg2)) * m_drawScale), ((_arg1.y + (_arg3.y * _arg2)) * m_drawScale)); } public function GetFlags():uint{ return (m_drawFlags); } public function DrawXForm(_arg1:b2XForm):void{ m_sprite.graphics.lineStyle(m_lineThickness, 0xFF0000, m_alpha); m_sprite.graphics.moveTo((_arg1.position.x * m_drawScale), (_arg1.position.y * m_drawScale)); m_sprite.graphics.lineTo(((_arg1.position.x + (m_xformScale * _arg1.R.col1.x)) * m_drawScale), ((_arg1.position.y + (m_xformScale * _arg1.R.col1.y)) * m_drawScale)); m_sprite.graphics.lineStyle(m_lineThickness, 0xFF00, m_alpha); m_sprite.graphics.moveTo((_arg1.position.x * m_drawScale), (_arg1.position.y * m_drawScale)); m_sprite.graphics.lineTo(((_arg1.position.x + (m_xformScale * _arg1.R.col2.x)) * m_drawScale), ((_arg1.position.y + (m_xformScale * _arg1.R.col2.y)) * m_drawScale)); } } }//package Box2D.Dynamics
Section 71
//b2DestructionListener (Box2D.Dynamics.b2DestructionListener) package Box2D.Dynamics { import Box2D.Collision.Shapes.*; import Box2D.Dynamics.Joints.*; public class b2DestructionListener { public function SayGoodbyeShape(_arg1:b2Shape):void{ } public function SayGoodbyeJoint(_arg1:b2Joint):void{ } } }//package Box2D.Dynamics
Section 72
//b2Island (Box2D.Dynamics.b2Island) package Box2D.Dynamics { import Box2D.Common.Math.*; import Box2D.Collision.*; import Box2D.Dynamics.Contacts.*; import Box2D.Common.*; import Box2D.Dynamics.Joints.*; public class b2Island { public var m_listener:b2ContactListener; public var m_positionIterationCount:int; public var m_bodyCapacity:int; public var m_bodies:Array; public var m_joints:Array; public var m_jointCapacity:int; public var m_contactCount:int; public var m_contacts:Array; public var m_contactCapacity:int; public var m_jointCount:int; public var m_allocator; public var m_bodyCount:int; private static var s_reportCR:b2ContactResult = new b2ContactResult(); public function b2Island(_arg1:int, _arg2:int, _arg3:int, _arg4, _arg5:b2ContactListener){ var _local6:int; super(); m_bodyCapacity = _arg1; m_contactCapacity = _arg2; m_jointCapacity = _arg3; m_bodyCount = 0; m_contactCount = 0; m_jointCount = 0; m_allocator = _arg4; m_listener = _arg5; m_bodies = new Array(_arg1); _local6 = 0; while (_local6 < _arg1) { m_bodies[_local6] = null; _local6++; }; m_contacts = new Array(_arg2); _local6 = 0; while (_local6 < _arg2) { m_contacts[_local6] = null; _local6++; }; m_joints = new Array(_arg3); _local6 = 0; while (_local6 < _arg3) { m_joints[_local6] = null; _local6++; }; m_positionIterationCount = 0; } public function AddBody(_arg1:b2Body):void{ var _local2 = m_bodyCount++; m_bodies[_local2] = _arg1; } public function AddJoint(_arg1:b2Joint):void{ var _local2 = m_jointCount++; m_joints[_local2] = _arg1; } public function Report(_arg1:Array):void{ var _local2:b2Mat22; var _local3:b2Vec2; var _local5:b2Contact; var _local6:b2ContactConstraint; var _local7:b2ContactResult; var _local8:b2Body; var _local9:int; var _local10:Array; var _local11:int; var _local12:b2Manifold; var _local13:int; var _local14:b2ManifoldPoint; var _local15:b2ContactConstraintPoint; if (m_listener == null){ return; }; var _local4:int; while (_local4 < m_contactCount) { _local5 = m_contacts[_local4]; _local6 = _arg1[_local4]; _local7 = s_reportCR; _local7.shape1 = _local5.m_shape1; _local7.shape2 = _local5.m_shape2; _local8 = _local7.shape1.m_body; _local9 = _local5.m_manifoldCount; _local10 = _local5.GetManifolds(); _local11 = 0; while (_local11 < _local9) { _local12 = _local10[_local11]; _local7.normal.SetV(_local12.normal); _local13 = 0; while (_local13 < _local12.pointCount) { _local14 = _local12.points[_local13]; _local15 = _local6.points[_local13]; _local7.position = _local8.GetWorldPoint(_local14.localPoint1); _local7.normalImpulse = _local15.normalImpulse; _local7.tangentImpulse = _local15.tangentImpulse; _local7.id.key = _local14.id.key; m_listener.Result(_local7); _local13++; }; _local11++; }; _local4++; }; } public function AddContact(_arg1:b2Contact):void{ var _local2 = m_contactCount++; m_contacts[_local2] = _arg1; } public function Solve(_arg1:b2TimeStep, _arg2:b2Vec2, _arg3:Boolean, _arg4:Boolean):void{ var _local5:int; var _local6:b2Body; var _local7:b2Joint; var _local9:int; var _local10:Boolean; var _local11:Boolean; var _local12:Boolean; var _local13:Number; var _local14:Number; var _local15:Number; _local5 = 0; while (_local5 < m_bodyCount) { _local6 = m_bodies[_local5]; if (_local6.IsStatic()){ } else { _local6.m_linearVelocity.x = (_local6.m_linearVelocity.x + (_arg1.dt * (_arg2.x + (_local6.m_invMass * _local6.m_force.x)))); _local6.m_linearVelocity.y = (_local6.m_linearVelocity.y + (_arg1.dt * (_arg2.y + (_local6.m_invMass * _local6.m_force.y)))); _local6.m_angularVelocity = (_local6.m_angularVelocity + ((_arg1.dt * _local6.m_invI) * _local6.m_torque)); _local6.m_force.SetZero(); _local6.m_torque = 0; _local6.m_linearVelocity.Multiply(b2Math.b2Clamp((1 - (_arg1.dt * _local6.m_linearDamping)), 0, 1)); _local6.m_angularVelocity = (_local6.m_angularVelocity * b2Math.b2Clamp((1 - (_arg1.dt * _local6.m_angularDamping)), 0, 1)); if (_local6.m_linearVelocity.LengthSquared() > b2Settings.b2_maxLinearVelocitySquared){ _local6.m_linearVelocity.Normalize(); _local6.m_linearVelocity.x = (_local6.m_linearVelocity.x * b2Settings.b2_maxLinearVelocity); _local6.m_linearVelocity.y = (_local6.m_linearVelocity.y * b2Settings.b2_maxLinearVelocity); }; if ((_local6.m_angularVelocity * _local6.m_angularVelocity) > b2Settings.b2_maxAngularVelocitySquared){ if (_local6.m_angularVelocity < 0){ _local6.m_angularVelocity = -(b2Settings.b2_maxAngularVelocity); } else { _local6.m_angularVelocity = b2Settings.b2_maxAngularVelocity; }; }; }; _local5++; }; var _local8:b2ContactSolver = new b2ContactSolver(_arg1, m_contacts, m_contactCount, m_allocator); _local8.InitVelocityConstraints(_arg1); _local5 = 0; while (_local5 < m_jointCount) { _local7 = m_joints[_local5]; _local7.InitVelocityConstraints(_arg1); _local5++; }; _local5 = 0; while (_local5 < _arg1.maxIterations) { _local8.SolveVelocityConstraints(); _local9 = 0; while (_local9 < m_jointCount) { _local7 = m_joints[_local9]; _local7.SolveVelocityConstraints(_arg1); _local9++; }; _local5++; }; _local8.FinalizeVelocityConstraints(); _local5 = 0; while (_local5 < m_bodyCount) { _local6 = m_bodies[_local5]; if (_local6.IsStatic()){ } else { _local6.m_sweep.c0.SetV(_local6.m_sweep.c); _local6.m_sweep.a0 = _local6.m_sweep.a; _local6.m_sweep.c.x = (_local6.m_sweep.c.x + (_arg1.dt * _local6.m_linearVelocity.x)); _local6.m_sweep.c.y = (_local6.m_sweep.c.y + (_arg1.dt * _local6.m_linearVelocity.y)); _local6.m_sweep.a = (_local6.m_sweep.a + (_arg1.dt * _local6.m_angularVelocity)); _local6.SynchronizeTransform(); }; _local5++; }; if (_arg3){ _local5 = 0; while (_local5 < m_jointCount) { _local7 = m_joints[_local5]; _local7.InitPositionConstraints(); _local5++; }; m_positionIterationCount = 0; while (m_positionIterationCount < _arg1.maxIterations) { _local10 = _local8.SolvePositionConstraints(b2Settings.b2_contactBaumgarte); _local11 = true; _local5 = 0; while (_local5 < m_jointCount) { _local7 = m_joints[_local5]; _local12 = _local7.SolvePositionConstraints(); _local11 = ((_local11) && (_local12)); _local5++; }; if (((_local10) && (_local11))){ break; }; m_positionIterationCount++; }; }; Report(_local8.m_constraints); if (_arg4){ _local13 = Number.MAX_VALUE; _local14 = (b2Settings.b2_linearSleepTolerance * b2Settings.b2_linearSleepTolerance); _local15 = (b2Settings.b2_angularSleepTolerance * b2Settings.b2_angularSleepTolerance); _local5 = 0; while (_local5 < m_bodyCount) { _local6 = m_bodies[_local5]; if (_local6.m_invMass == 0){ } else { if ((_local6.m_flags & b2Body.e_allowSleepFlag) == 0){ _local6.m_sleepTime = 0; _local13 = 0; }; if (((((((_local6.m_flags & b2Body.e_allowSleepFlag) == 0)) || (((_local6.m_angularVelocity * _local6.m_angularVelocity) > _local15)))) || ((b2Math.b2Dot(_local6.m_linearVelocity, _local6.m_linearVelocity) > _local14)))){ _local6.m_sleepTime = 0; _local13 = 0; } else { _local6.m_sleepTime = (_local6.m_sleepTime + _arg1.dt); _local13 = b2Math.b2Min(_local13, _local6.m_sleepTime); }; }; _local5++; }; if (_local13 >= b2Settings.b2_timeToSleep){ _local5 = 0; while (_local5 < m_bodyCount) { _local6 = m_bodies[_local5]; m_bodies[_local5].m_flags = (_local6.m_flags | b2Body.e_sleepFlag); _local6.m_linearVelocity.SetZero(); _local6.m_angularVelocity = 0; _local5++; }; }; }; } public function Clear():void{ m_bodyCount = 0; m_contactCount = 0; m_jointCount = 0; } public function SolveTOI(_arg1:b2TimeStep):void{ var _local2:int; var _local5:b2Body; var _local6:Boolean; var _local3:b2ContactSolver = new b2ContactSolver(_arg1, m_contacts, m_contactCount, m_allocator); _local2 = 0; while (_local2 < _arg1.maxIterations) { _local3.SolveVelocityConstraints(); _local2++; }; _local2 = 0; while (_local2 < m_bodyCount) { _local5 = m_bodies[_local2]; if (_local5.IsStatic()){ } else { _local5.m_sweep.c0.SetV(_local5.m_sweep.c); _local5.m_sweep.a0 = _local5.m_sweep.a; _local5.m_sweep.c.x = (_local5.m_sweep.c.x + (_arg1.dt * _local5.m_linearVelocity.x)); _local5.m_sweep.c.y = (_local5.m_sweep.c.y + (_arg1.dt * _local5.m_linearVelocity.y)); _local5.m_sweep.a = (_local5.m_sweep.a + (_arg1.dt * _local5.m_angularVelocity)); _local5.SynchronizeTransform(); }; _local2++; }; var _local4:Number = 0.75; _local2 = 0; while (_local2 < _arg1.maxIterations) { _local6 = _local3.SolvePositionConstraints(_local4); if (_local6){ break; }; _local2++; }; Report(_local3.m_constraints); } } }//package Box2D.Dynamics
Section 73
//b2TimeStep (Box2D.Dynamics.b2TimeStep) package Box2D.Dynamics { public class b2TimeStep { public var warmStarting:Boolean; public var positionCorrection:Boolean; public var dt:Number; public var maxIterations:int; public var dtRatio:Number; public var inv_dt:Number; } }//package Box2D.Dynamics
Section 74
//b2World (Box2D.Dynamics.b2World) package Box2D.Dynamics { import Box2D.Common.Math.*; import Box2D.Collision.*; import Box2D.Dynamics.Contacts.*; import Box2D.Collision.Shapes.*; import Box2D.Common.*; import Box2D.Dynamics.Joints.*; 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.1, 0.1, 0.1), _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; 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
//CampaignInfo (com.google.analytics.campaign.CampaignInfo) package com.google.analytics.campaign { import com.google.analytics.utils.*; public class CampaignInfo { private var _new:Boolean; private var _empty:Boolean; public function CampaignInfo(_arg1:Boolean=true, _arg2:Boolean=false){ _empty = _arg1; _new = _arg2; } public function toURLString():String{ var _local1:Variables = toVariables(); return (_local1.toString()); } public function isNew():Boolean{ return (_new); } public function get utmcn():String{ return ("1"); } public function isEmpty():Boolean{ return (_empty); } public function toVariables():Variables{ var _local1:Variables = new Variables(); _local1.URIencode = true; if (((!(isEmpty())) && (isNew()))){ _local1.utmcn = utmcn; }; if (((!(isEmpty())) && (!(isNew())))){ _local1.utmcr = utmcr; }; return (_local1); } public function get utmcr():String{ return ("1"); } } }//package com.google.analytics.campaign
Section 76
//CampaignKey (com.google.analytics.campaign.CampaignKey) package com.google.analytics.campaign { public class CampaignKey { public var UCMD:String;// = "utm_medium" public var UCID:String;// = "utm_id" public var UCTR:String;// = "utm_term" public var UCSR:String;// = "utm_source" public var UCNO:String;// = "utm_nooverride" public var UCCN:String;// = "utm_campaign" public var UGCLID:String;// = "gclid" public var UCCT:String;// = "utm_content" } }//package com.google.analytics.campaign
Section 77
//CampaignManager (com.google.analytics.campaign.CampaignManager) package com.google.analytics.campaign { import com.google.analytics.core.*; import com.google.analytics.v4.*; import com.google.analytics.debug.*; import com.google.analytics.utils.*; public class CampaignManager { private var _config:Configuration; private var _domainHash:Number; private var _debug:DebugConfiguration; private var _timeStamp:Number; private var _referrer:String; private var _buffer:Buffer; public static const trackingDelimiter:String = "|"; public function CampaignManager(_arg1:Configuration, _arg2:DebugConfiguration, _arg3:Buffer, _arg4:Number, _arg5:String, _arg6:Number){ _config = _arg1; _debug = _arg2; _buffer = _arg3; _domainHash = _arg4; _referrer = _arg5; _timeStamp = _arg6; } public function getCampaignInformation(_arg1:String, _arg2:Boolean):CampaignInfo{ var _local4:CampaignTracker; var _local8:CampaignTracker; var _local9:int; var _local3:CampaignInfo = new CampaignInfo(); var _local5:Boolean; var _local6:Boolean; var _local7:int; if (((_config.allowLinker) && (_buffer.isGenuine()))){ if (!_buffer.hasUTMZ()){ return (_local3); }; }; _local4 = getTrackerFromSearchString(_arg1); if (isValid(_local4)){ _local6 = hasNoOverride(_arg1); if (((_local6) && (!(_buffer.hasUTMZ())))){ return (_local3); }; }; if (!isValid(_local4)){ _local4 = getOrganicCampaign(); if (((!(_buffer.hasUTMZ())) && (isIgnoredKeyword(_local4)))){ return (_local3); }; }; if (((!(isValid(_local4))) && (_arg2))){ _local4 = getReferrerCampaign(); if (((!(_buffer.hasUTMZ())) && (isIgnoredReferral(_local4)))){ return (_local3); }; }; if (!isValid(_local4)){ if (((!(_buffer.hasUTMZ())) && (_arg2))){ _local4 = getDirectCampaign(); }; }; if (!isValid(_local4)){ return (_local3); }; if (((_buffer.hasUTMZ()) && (!(_buffer.utmz.isEmpty())))){ _local8 = new CampaignTracker(); _local8.fromTrackerString(_buffer.utmz.campaignTracking); _local5 = (_local8.toTrackerString() == _local4.toTrackerString()); _local7 = _buffer.utmz.responseCount; }; if (((!(_local5)) || (_arg2))){ _local9 = _buffer.utma.sessionCount; _local7++; if (_local9 == 0){ _local9 = 1; }; _buffer.utmz.domainHash = _domainHash; _buffer.utmz.campaignCreation = _timeStamp; _buffer.utmz.campaignSessions = _local9; _buffer.utmz.responseCount = _local7; _buffer.utmz.campaignTracking = _local4.toTrackerString(); _debug.info(_buffer.utmz.toString(), VisualDebugMode.geek); _local3 = new CampaignInfo(false, true); } else { _local3 = new CampaignInfo(false, false); }; return (_local3); } public function hasNoOverride(_arg1:String):Boolean{ var _local2:CampaignKey = _config.campaignKey; if (_arg1 == ""){ return (false); }; var _local3:Variables = new Variables(_arg1); var _local4 = ""; if (_local3.hasOwnProperty(_local2.UCNO)){ _local4 = _local3[_local2.UCNO]; switch (_local4){ case "1": return (true); case "": case "0": default: return (false); }; }; return (false); } public function getTrackerFromSearchString(_arg1:String):CampaignTracker{ var _local2:CampaignTracker = getOrganicCampaign(); var _local3:CampaignTracker = new CampaignTracker(); var _local4:CampaignKey = _config.campaignKey; if (_arg1 == ""){ return (_local3); }; var _local5:Variables = new Variables(_arg1); if (_local5.hasOwnProperty(_local4.UCID)){ _local3.id = _local5[_local4.UCID]; }; if (_local5.hasOwnProperty(_local4.UCSR)){ _local3.source = _local5[_local4.UCSR]; }; if (_local5.hasOwnProperty(_local4.UGCLID)){ _local3.clickId = _local5[_local4.UGCLID]; }; if (_local5.hasOwnProperty(_local4.UCCN)){ _local3.name = _local5[_local4.UCCN]; } else { _local3.name = "(not set)"; }; if (_local5.hasOwnProperty(_local4.UCMD)){ _local3.medium = _local5[_local4.UCMD]; } else { _local3.medium = "(not set)"; }; if (_local5.hasOwnProperty(_local4.UCTR)){ _local3.term = _local5[_local4.UCTR]; } else { if (((_local2) && (!((_local2.term == ""))))){ _local3.term = _local2.term; }; }; if (_local5.hasOwnProperty(_local4.UCCT)){ _local3.content = _local5[_local4.UCCT]; }; return (_local3); } public function getOrganicCampaign():CampaignTracker{ var _local1:CampaignTracker; var _local4:Array; var _local5:OrganicReferrer; var _local6:String; if (((isInvalidReferrer(_referrer)) || (isFromGoogleCSE(_referrer, _config)))){ return (_local1); }; var _local2:URL = new URL(_referrer); var _local3 = ""; if (_local2.hostName != ""){ if (_local2.hostName.indexOf(".") > -1){ _local4 = _local2.hostName.split("."); switch (_local4.length){ case 2: _local3 = _local4[0]; break; case 3: _local3 = _local4[1]; break; }; }; }; if (_config.organic.match(_local3)){ _local5 = _config.organic.getReferrerByName(_local3); _local6 = _config.organic.getKeywordValue(_local5, _local2.search); _local1 = new CampaignTracker(); _local1.source = _local5.engine; _local1.name = "(organic)"; _local1.medium = "organic"; _local1.term = _local6; }; return (_local1); } public function getDirectCampaign():CampaignTracker{ var _local1:CampaignTracker = new CampaignTracker(); _local1.source = "(direct)"; _local1.name = "(direct)"; _local1.medium = "(none)"; return (_local1); } public function isIgnoredKeyword(_arg1:CampaignTracker):Boolean{ if (((_arg1) && ((_arg1.medium == "organic")))){ return (_config.organic.isIgnoredKeyword(_arg1.term)); }; return (false); } public function isIgnoredReferral(_arg1:CampaignTracker):Boolean{ if (((_arg1) && ((_arg1.medium == "referral")))){ return (_config.organic.isIgnoredReferral(_arg1.source)); }; return (false); } public function isValid(_arg1:CampaignTracker):Boolean{ if (((_arg1) && (_arg1.isValid()))){ return (true); }; return (false); } public function getReferrerCampaign():CampaignTracker{ var _local1:CampaignTracker; if (((isInvalidReferrer(_referrer)) || (isFromGoogleCSE(_referrer, _config)))){ return (_local1); }; var _local2:URL = new URL(_referrer); var _local3:String = _local2.hostName; var _local4:String = _local2.path; if (_local3.indexOf("www.") == 0){ _local3 = _local3.substr(4); }; _local1 = new CampaignTracker(); _local1.source = _local3; _local1.name = "(referral)"; _local1.medium = "referral"; _local1.content = _local4; return (_local1); } public static function isInvalidReferrer(_arg1:String):Boolean{ var _local2:URL; if ((((((_arg1 == "")) || ((_arg1 == "-")))) || ((_arg1 == "0")))){ return (true); }; if (_arg1.indexOf("://") > -1){ _local2 = new URL(_arg1); if ((((_local2.protocol == Protocols.file)) || ((_local2.protocol == Protocols.none)))){ return (true); }; }; return (false); } public static function isFromGoogleCSE(_arg1:String, _arg2:Configuration):Boolean{ var _local3:URL = new URL(_arg1); if (_local3.hostName.indexOf(_arg2.google) > -1){ if (_local3.search.indexOf((_arg2.googleSearchParam + "=")) > -1){ if (_local3.path == ("/" + _arg2.googleCsePath)){ return (true); }; }; }; return (false); } } }//package com.google.analytics.campaign
Section 78
//CampaignTracker (com.google.analytics.campaign.CampaignTracker) package com.google.analytics.campaign { import com.google.analytics.utils.*; public class CampaignTracker { public var content:String; public var source:String; public var clickId:String; public var name:String; public var term:String; public var medium:String; public var id:String; public function CampaignTracker(_arg1:String="", _arg2:String="", _arg3:String="", _arg4:String="", _arg5:String="", _arg6:String="", _arg7:String=""){ this.id = _arg1; this.source = _arg2; this.clickId = _arg3; this.name = _arg4; this.medium = _arg5; this.term = _arg6; this.content = _arg7; } public function isValid():Boolean{ if (((((!((id == ""))) || (!((source == ""))))) || (!((clickId == ""))))){ return (true); }; return (false); } public function toTrackerString():String{ var _local1:Array = []; _addIfNotEmpty(_local1, "utmcsr=", source); _addIfNotEmpty(_local1, "utmccn=", name); _addIfNotEmpty(_local1, "utmcmd=", medium); _addIfNotEmpty(_local1, "utmctr=", term); _addIfNotEmpty(_local1, "utmcct=", content); _addIfNotEmpty(_local1, "utmcid=", id); _addIfNotEmpty(_local1, "utmgclid=", clickId); return (_local1.join(CampaignManager.trackingDelimiter)); } private function _addIfNotEmpty(_arg1:Array, _arg2:String, _arg3:String):void{ if (_arg3 != ""){ _arg3 = _arg3.split("+").join("%20"); _arg3 = _arg3.split(" ").join("%20"); _arg1.push((_arg2 + _arg3)); }; } public function fromTrackerString(_arg1:String):void{ var _local2:String = _arg1.split(CampaignManager.trackingDelimiter).join("&"); var _local3:Variables = new Variables(_local2); if (_local3.hasOwnProperty("utmcid")){ this.id = _local3["utmcid"]; }; if (_local3.hasOwnProperty("utmcsr")){ this.source = _local3["utmcsr"]; }; if (_local3.hasOwnProperty("utmccn")){ this.name = _local3["utmccn"]; }; if (_local3.hasOwnProperty("utmcmd")){ this.medium = _local3["utmcmd"]; }; if (_local3.hasOwnProperty("utmctr")){ this.term = _local3["utmctr"]; }; if (_local3.hasOwnProperty("utmcct")){ this.content = _local3["utmcct"]; }; if (_local3.hasOwnProperty("utmgclid")){ this.clickId = _local3["utmgclid"]; }; } } }//package com.google.analytics.campaign
Section 79
//BrowserInfo (com.google.analytics.core.BrowserInfo) package com.google.analytics.core { import com.google.analytics.v4.*; import com.google.analytics.utils.*; public class BrowserInfo { private var _config:Configuration; private var _info:Environment; public function BrowserInfo(_arg1:Configuration, _arg2:Environment){ _config = _arg1; _info = _arg2; } public function get utmul():String{ return (_info.language.toLowerCase()); } public function get utmje():String{ return ("0"); } public function toURLString():String{ var _local1:Variables = toVariables(); return (_local1.toString()); } public function get utmsr():String{ return (((_info.screenWidth + "x") + _info.screenHeight)); } public function get utmfl():String{ var _local1:Version; if (_config.detectFlash){ _local1 = _info.flashVersion; return (((((_local1.major + ".") + _local1.minor) + " r") + _local1.build)); }; return ("-"); } public function get utmcs():String{ return (_info.languageEncoding); } public function toVariables():Variables{ var _local1:Variables = new Variables(); _local1.URIencode = true; _local1.utmcs = utmcs; _local1.utmsr = utmsr; _local1.utmsc = utmsc; _local1.utmul = utmul; _local1.utmje = utmje; _local1.utmfl = utmfl; return (_local1); } public function get utmsc():String{ return ((_info.screenColorDepth + "-bit")); } } }//package com.google.analytics.core
Section 80
//Buffer (com.google.analytics.core.Buffer) package com.google.analytics.core { import flash.events.*; import com.google.analytics.v4.*; import com.google.analytics.debug.*; import flash.net.*; import com.google.analytics.data.*; public dynamic class Buffer { private var _SO:SharedObject; private var _OBJ:Object; private var _utma:UTMA; private var _utmb:UTMB; private var _utmc:UTMC; private var _debug:DebugConfiguration; private var _utmk:UTMK; private var _config:Configuration; private var _utmv:UTMV; private var _utmz:UTMZ; private var _volatile:Boolean; public function Buffer(_arg1:Configuration, _arg2:DebugConfiguration, _arg3:Boolean=false, _arg4:Object=null){ var _local5:Boolean; var _local6:String; super(); _config = _arg1; _debug = _arg2; UTMB.defaultTimespan = _config.sessionTimeout; UTMZ.defaultTimespan = _config.conversionTimeout; if (!_arg3){ _SO = SharedObject.getLocal(_config.cookieName, _config.cookiePath); _local5 = false; if (_SO.data.utma){ if (!hasUTMA()){ _createUMTA(); }; _utma.fromSharedObject(_SO.data.utma); if (_debug.verbose){ _debug.info(("found: " + _utma.toString(true)), VisualDebugMode.geek); }; if (_utma.isExpired()){ if (_debug.verbose){ _debug.warning("UTMA has expired", VisualDebugMode.advanced); }; _clearUTMA(); _local5 = true; }; }; if (_SO.data.utmb){ if (!hasUTMB()){ _createUMTB(); }; _utmb.fromSharedObject(_SO.data.utmb); if (_debug.verbose){ _debug.info(("found: " + _utmb.toString(true)), VisualDebugMode.geek); }; if (_utmb.isExpired()){ if (_debug.verbose){ _debug.warning("UTMB has expired", VisualDebugMode.advanced); }; _clearUTMB(); _local5 = true; }; }; if (_SO.data.utmc){ delete _SO.data.utmc; _local5 = true; }; if (_SO.data.utmk){ if (!hasUTMK()){ _createUMTK(); }; _utmk.fromSharedObject(_SO.data.utmk); if (_debug.verbose){ _debug.info(("found: " + _utmk.toString()), VisualDebugMode.geek); }; }; if (_SO.data.utmv){ if (!hasUTMV()){ _createUMTV(); }; _utmv.fromSharedObject(_SO.data.utmv); if (_debug.verbose){ _debug.info(("found: " + _utmv.toString(true)), VisualDebugMode.geek); }; if (_utmv.isExpired()){ if (_debug.verbose){ _debug.warning("UTMV has expired", VisualDebugMode.advanced); }; _clearUTMV(); _local5 = true; }; }; if (_SO.data.utmz){ if (!hasUTMZ()){ _createUMTZ(); }; _utmz.fromSharedObject(_SO.data.utmz); if (_debug.verbose){ _debug.info(("found: " + _utmz.toString(true)), VisualDebugMode.geek); }; if (_utmz.isExpired()){ if (_debug.verbose){ _debug.warning("UTMZ has expired", VisualDebugMode.advanced); }; _clearUTMZ(); _local5 = true; }; }; if (_local5){ save(); }; } else { _OBJ = new Object(); if (_arg4){ for (_local6 in _arg4) { _OBJ[_local6] = _arg4[_local6]; }; }; }; _volatile = _arg3; } public function clearCookies():void{ utma.reset(); utmb.reset(); utmc.reset(); utmz.reset(); utmv.reset(); utmk.reset(); } public function save():void{ var flushStatus:String; if (!isVolatile()){ flushStatus = null; try { flushStatus = _SO.flush(); } catch(e:Error) { _debug.warning("Error...Could not write SharedObject to disk"); }; switch (flushStatus){ case SharedObjectFlushStatus.PENDING: _debug.info("Requesting permission to save object..."); _SO.addEventListener(NetStatusEvent.NET_STATUS, _onFlushStatus); break; case SharedObjectFlushStatus.FLUSHED: _debug.info("Value flushed to disk."); break; }; }; } public function get utmv():UTMV{ if (!hasUTMV()){ _createUMTV(); }; return (_utmv); } public function get utmz():UTMZ{ if (!hasUTMZ()){ _createUMTZ(); }; return (_utmz); } public function hasUTMA():Boolean{ if (_utma){ return (true); }; return (false); } public function hasUTMB():Boolean{ if (_utmb){ return (true); }; return (false); } public function hasUTMC():Boolean{ if (_utmc){ return (true); }; return (false); } public function isGenuine():Boolean{ if (!hasUTMK()){ return (true); }; return ((utmk.hash == generateCookiesHash())); } public function resetCurrentSession():void{ _clearUTMB(); _clearUTMC(); save(); } public function hasUTMK():Boolean{ if (_utmk){ return (true); }; return (false); } public function generateCookiesHash():Number{ var _local1 = ""; _local1 = (_local1 + utma.valueOf()); _local1 = (_local1 + utmb.valueOf()); _local1 = (_local1 + utmc.valueOf()); _local1 = (_local1 + utmz.valueOf()); _local1 = (_local1 + utmv.valueOf()); return (Utils.generateHash(_local1)); } private function _createUMTB():void{ _utmb = new UTMB(); _utmb.proxy = this; } private function _createUMTC():void{ _utmc = new UTMC(); } private function _createUMTA():void{ _utma = new UTMA(); _utma.proxy = this; } public function hasUTMV():Boolean{ if (_utmv){ return (true); }; return (false); } private function _createUMTK():void{ _utmk = new UTMK(); _utmk.proxy = this; } public function hasUTMZ():Boolean{ if (_utmz){ return (true); }; return (false); } private function _createUMTV():void{ _utmv = new UTMV(); _utmv.proxy = this; } private function _onFlushStatus(_arg1:NetStatusEvent):void{ _debug.info("User closed permission dialog..."); switch (_arg1.info.code){ case "SharedObject.Flush.Success": _debug.info("User granted permission -- value saved."); break; case "SharedObject.Flush.Failed": _debug.info("User denied permission -- value not saved."); break; }; _SO.removeEventListener(NetStatusEvent.NET_STATUS, _onFlushStatus); } private function _createUMTZ():void{ _utmz = new UTMZ(); _utmz.proxy = this; } public function updateUTMA(_arg1:Number):void{ if (_debug.verbose){ _debug.info((("updateUTMA( " + _arg1) + " )"), VisualDebugMode.advanced); }; if (!utma.isEmpty()){ if (isNaN(utma.sessionCount)){ utma.sessionCount = 1; } else { utma.sessionCount = (utma.sessionCount + 1); }; utma.lastTime = utma.currentTime; utma.currentTime = _arg1; }; } private function _clearUTMA():void{ _utma = null; if (!isVolatile()){ _SO.data.utma = null; delete _SO.data.utma; }; } private function _clearUTMC():void{ _utmc = null; } private function _clearUTMB():void{ _utmb = null; if (!isVolatile()){ _SO.data.utmb = null; delete _SO.data.utmb; }; } public function update(_arg1:String, _arg2):void{ if (isVolatile()){ _OBJ[_arg1] = _arg2; } else { _SO.data[_arg1] = _arg2; }; } private function _clearUTMZ():void{ _utmz = null; if (!isVolatile()){ _SO.data.utmz = null; delete _SO.data.utmz; }; } private function _clearUTMV():void{ _utmv = null; if (!isVolatile()){ _SO.data.utmv = null; delete _SO.data.utmv; }; } public function isVolatile():Boolean{ return (_volatile); } public function get utma():UTMA{ if (!hasUTMA()){ _createUMTA(); }; return (_utma); } public function get utmb():UTMB{ if (!hasUTMB()){ _createUMTB(); }; return (_utmb); } public function get utmc():UTMC{ if (!hasUTMC()){ _createUMTC(); }; return (_utmc); } public function get utmk():UTMK{ if (!hasUTMK()){ _createUMTK(); }; return (_utmk); } } }//package com.google.analytics.core
Section 81
//DocumentInfo (com.google.analytics.core.DocumentInfo) package com.google.analytics.core { import com.google.analytics.v4.*; import com.google.analytics.external.*; import com.google.analytics.utils.*; public class DocumentInfo { private var _pageURL:String; private var _utmr:String; private var _config:Configuration; private var _adSense:AdSenseGlobals; private var _info:Environment; public function DocumentInfo(_arg1:Configuration, _arg2:Environment, _arg3:String, _arg4:String=null, _arg5:AdSenseGlobals=null){ _config = _arg1; _info = _arg2; _utmr = _arg3; _pageURL = _arg4; _adSense = _arg5; } public function get utmr():String{ if (!_utmr){ return ("-"); }; return (_utmr); } public function toURLString():String{ var _local1:Variables = toVariables(); return (_local1.toString()); } private function _renderPageURL(_arg1:String=""):String{ var _local2:String = _info.locationPath; var _local3:String = _info.locationSearch; if (((!(_arg1)) || ((_arg1 == "")))){ _arg1 = (_local2 + unescape(_local3)); }; return (_arg1); } public function get utmp():String{ return (_renderPageURL(_pageURL)); } public function get utmhid():String{ return (String(_generateHitId())); } private function _generateHitId():Number{ var _local1:Number; if (((_adSense.hid) && (!((_adSense.hid == ""))))){ _local1 = Number(_adSense.hid); } else { _local1 = Math.round((Math.random() * 2147483647)); _adSense.hid = String(_local1); }; return (_local1); } public function toVariables():Variables{ var _local1:Variables = new Variables(); _local1.URIencode = true; if (((_config.detectTitle) && (!((utmdt == ""))))){ _local1.utmdt = utmdt; }; _local1.utmhid = utmhid; _local1.utmr = utmr; _local1.utmp = utmp; return (_local1); } public function get utmdt():String{ return (_info.documentTitle); } } }//package com.google.analytics.core
Section 82
//Domain (com.google.analytics.core.Domain) package com.google.analytics.core { import com.google.analytics.debug.*; public class Domain { private var _mode:DomainNameMode; private var _debug:DebugConfiguration; private var _name:String; public function Domain(_arg1:DomainNameMode=null, _arg2:String="", _arg3:DebugConfiguration=null){ _debug = _arg3; if (_arg1 == null){ _arg1 = DomainNameMode.auto; }; _mode = _arg1; if (_arg1 == DomainNameMode.custom){ this.name = _arg2; } else { _name = _arg2; }; } public function get mode():DomainNameMode{ return (_mode); } public function set mode(_arg1:DomainNameMode):void{ _mode = _arg1; if (_mode == DomainNameMode.none){ _name = ""; }; } public function get name():String{ return (_name); } public function set name(_arg1:String):void{ if (((!((_arg1.charAt(0) == "."))) && (_debug))){ _debug.warning(("missing leading period \".\", cookie will only be accessible on " + _arg1), VisualDebugMode.geek); }; _name = _arg1; } } }//package com.google.analytics.core
Section 83
//DomainNameMode (com.google.analytics.core.DomainNameMode) package com.google.analytics.core { public class DomainNameMode { private var _value:int; private var _name:String; public static const custom:DomainNameMode = new DomainNameMode(2, "custom"); ; public static const none:DomainNameMode = new DomainNameMode(0, "none"); ; public static const auto:DomainNameMode = new DomainNameMode(1, "auto"); ; public function DomainNameMode(_arg1:int=0, _arg2:String=""){ _value = _arg1; _name = _arg2; } public function valueOf():int{ return (_value); } public function toString():String{ return (_name); } } }//package com.google.analytics.core
Section 84
//EventInfo (com.google.analytics.core.EventInfo) package com.google.analytics.core { import com.google.analytics.data.*; import com.google.analytics.utils.*; public class EventInfo { private var _ext10:X10; private var _isEventHit:Boolean; private var _x10:X10; public function EventInfo(_arg1:Boolean, _arg2:X10, _arg3:X10=null){ _isEventHit = _arg1; _x10 = _arg2; _ext10 = _arg3; } public function toURLString():String{ var _local1:Variables = toVariables(); return (_local1.toString()); } public function get utmt():String{ return ("event"); } public function get utme():String{ return (_x10.renderMergedUrlString(_ext10)); } public function toVariables():Variables{ var _local1:Variables = new Variables(); _local1.URIencode = true; if (_isEventHit){ _local1.utmt = utmt; }; _local1.utme = utme; return (_local1); } } }//package com.google.analytics.core
Section 85
//EventTracker (com.google.analytics.core.EventTracker) package com.google.analytics.core { import com.google.analytics.v4.*; public class EventTracker { private var _parent:GoogleAnalyticsAPI; public var name:String; public function EventTracker(_arg1:String, _arg2:GoogleAnalyticsAPI){ this.name = _arg1; _parent = _arg2; } public function trackEvent(_arg1:String, _arg2:String=null, _arg3:Number=NaN):Boolean{ return (_parent.trackEvent(name, _arg1, _arg2, _arg3)); } } }//package com.google.analytics.core
Section 86
//ga_internal (com.google.analytics.core.ga_internal) package com.google.analytics.core { public namespace ga_internal; }//package com.google.analytics.core
Section 87
//GIFRequest (com.google.analytics.core.GIFRequest) package com.google.analytics.core { import flash.events.*; import flash.display.*; import com.google.analytics.v4.*; import com.google.analytics.debug.*; import flash.net.*; import com.google.analytics.utils.*; import flash.system.*; public class GIFRequest { private var _info:Environment; private var _count:int; private var _utmac:String; private var _alertcount:int; private var _debug:DebugConfiguration; private var _lastRequest:URLRequest; private var _buffer:Buffer; private var _config:Configuration; private var _requests:Array; public function GIFRequest(_arg1:Configuration, _arg2:DebugConfiguration, _arg3:Buffer, _arg4:Environment){ _config = _arg1; _debug = _arg2; _buffer = _arg3; _info = _arg4; _count = 0; _alertcount = 0; _requests = []; } public function get utmn():String{ return ((Utils.generate32bitRandom() as String)); } public function onIOError(_arg1:IOErrorEvent):void{ var _local2:String = _lastRequest.url; var _local3:String = String((_requests.length - 1)); var _local4 = (("Gif Request #" + _local3) + " failed"); if (_debug.GIFRequests){ if (!_debug.verbose){ if (_local2.indexOf("?") > -1){ _local2 = _local2.split("?")[0]; }; _local2 = _shortenURL(_local2); }; if (int(_debug.mode) > int(VisualDebugMode.basic)){ _local4 = (_local4 + ((" \"" + _local2) + "\" does not exists or is unreachable")); }; _debug.failure(_local4); } else { _debug.warning(_local4); }; _removeListeners(_arg1.target); } public function send(_arg1:String, _arg2:Variables=null, _arg3:Boolean=false, _arg4:Boolean=false):void{ var _local5:String; var _local6:URLRequest; var _local7:URLRequest; _utmac = _arg1; if (!_arg2){ _arg2 = new Variables(); }; _arg2.URIencode = false; _arg2.pre = ["utmwv", "utmn", "utmhn", "utmt", "utme", "utmcs", "utmsr", "utmsc", "utmul", "utmje", "utmfl", "utmdt", "utmhid", "utmr", "utmp"]; _arg2.post = ["utmcc"]; if (_debug.verbose){ _debug.info(((("tracking: " + _buffer.utmb.trackCount) + "/") + _config.trackingLimitPerSession), VisualDebugMode.geek); }; if ((((_buffer.utmb.trackCount < _config.trackingLimitPerSession)) || (_arg3))){ if (_arg4){ updateToken(); }; if (((((_arg3) || (!(_arg4)))) || ((_buffer.utmb.token >= 1)))){ if (((!(_arg3)) && (_arg4))){ _buffer.utmb.token = (_buffer.utmb.token - 1); }; _buffer.utmb.trackCount = (_buffer.utmb.trackCount + 1); if (_debug.verbose){ _debug.info(_buffer.utmb.toString(), VisualDebugMode.geek); }; _arg2.utmwv = utmwv; _arg2.utmn = Utils.generate32bitRandom(); if (_info.domainName != ""){ _arg2.utmhn = _info.domainName; }; if (_config.sampleRate < 1){ _arg2.utmsp = (_config.sampleRate * 100); }; if ((((_config.serverMode == ServerOperationMode.local)) || ((_config.serverMode == ServerOperationMode.both)))){ _local5 = _info.locationSWFPath; if (_local5.lastIndexOf("/") > 0){ _local5 = _local5.substring(0, _local5.lastIndexOf("/")); }; _local6 = new URLRequest(); if (_config.localGIFpath.indexOf("http") == 0){ _local6.url = _config.localGIFpath; } else { _local6.url = (_local5 + _config.localGIFpath); }; _local6.url = (_local6.url + ("?" + _arg2.toString())); if (((_debug.active) && (_debug.GIFRequests))){ _debugSend(_local6); } else { sendRequest(_local6); }; }; if ((((_config.serverMode == ServerOperationMode.remote)) || ((_config.serverMode == ServerOperationMode.both)))){ _local7 = new URLRequest(); if (_info.protocol == Protocols.HTTPS){ _local7.url = _config.secureRemoteGIFpath; } else { if (_info.protocol == Protocols.HTTP){ _local7.url = _config.remoteGIFpath; } else { _local7.url = _config.remoteGIFpath; }; }; _arg2.utmac = utmac; _arg2.utmcc = encodeURIComponent(utmcc); _local7.url = (_local7.url + ("?" + _arg2.toString())); if (((_debug.active) && (_debug.GIFRequests))){ _debugSend(_local7); } else { sendRequest(_local7); }; }; }; }; } public function onSecurityError(_arg1:SecurityErrorEvent):void{ if (_debug.GIFRequests){ _debug.failure(_arg1.text); }; } public function get utmsp():String{ return (((_config.sampleRate * 100) as String)); } public function get utmcc():String{ var _local1:Array = []; if (_buffer.hasUTMA()){ _local1.push((_buffer.utma.toURLString() + ";")); }; if (_buffer.hasUTMZ()){ _local1.push((_buffer.utmz.toURLString() + ";")); }; if (_buffer.hasUTMV()){ _local1.push((_buffer.utmv.toURLString() + ";")); }; return (_local1.join("+")); } public function get utmac():String{ return (_utmac); } public function get utmwv():String{ return (_config.version); } public function sendRequest(_arg1:URLRequest):void{ var request = _arg1; var loader:Loader = new Loader(); loader.name = String(_count++); var context:LoaderContext = new LoaderContext(false); loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, onIOError); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete); _lastRequest = request; _requests[loader.name] = new RequestObject(request); try { loader.load(request, context); } catch(e:Error) { _debug.failure("\"Loader.load()\" could not instanciate Gif Request"); }; } private function _removeListeners(_arg1:Object):void{ _arg1.removeEventListener(IOErrorEvent.IO_ERROR, onIOError); _arg1.removeEventListener(Event.COMPLETE, onComplete); } public function updateToken():void{ var _local2:Number; var _local1:Number = new Date().getTime(); _local2 = ((_local1 - _buffer.utmb.lastTime) * (_config.tokenRate / 1000)); if (_debug.verbose){ _debug.info(("tokenDelta: " + _local2), VisualDebugMode.geek); }; if (_local2 >= 1){ _buffer.utmb.token = Math.min(Math.floor((_buffer.utmb.token + _local2)), _config.bucketCapacity); _buffer.utmb.lastTime = _local1; if (_debug.verbose){ _debug.info(_buffer.utmb.toString(), VisualDebugMode.geek); }; }; } public function get utmhn():String{ return (_info.domainName); } private function _shortenURL(_arg1:String):String{ var _local2:Array; if (_arg1.length > 60){ _local2 = _arg1.split("/"); while (_arg1.length > 60) { _local2.shift(); _arg1 = ("../" + _local2.join("/")); }; }; return (_arg1); } private function _debugSend(_arg1:URLRequest):void{ var _local3:String; var _local2 = ""; switch (_debug.mode){ case VisualDebugMode.geek: _local2 = ((("Gif Request #" + _alertcount) + ":\n") + _arg1.url); break; case VisualDebugMode.advanced: _local3 = _arg1.url; if (_local3.indexOf("?") > -1){ _local3 = _local3.split("?")[0]; }; _local3 = _shortenURL(_local3); _local2 = (((("Send Gif Request #" + _alertcount) + ":\n") + _local3) + " ?"); break; case VisualDebugMode.basic: default: _local2 = (((("Send " + _config.serverMode.toString()) + " Gif Request #") + _alertcount) + " ?"); }; _debug.alertGifRequest(_local2, _arg1, this); _alertcount++; } public function onComplete(_arg1:Event):void{ var _local2:String = _arg1.target.loader.name; _requests[_local2].complete(); var _local3 = (("Gif Request #" + _local2) + " sent"); var _local4:String = _requests[_local2].request.url; if (_debug.GIFRequests){ if (!_debug.verbose){ if (_local4.indexOf("?") > -1){ _local4 = _local4.split("?")[0]; }; _local4 = _shortenURL(_local4); }; if (int(_debug.mode) > int(VisualDebugMode.basic)){ _local3 = (_local3 + ((" to \"" + _local4) + "\"")); }; _debug.success(_local3); } else { _debug.info(_local3); }; _removeListeners(_arg1.target); } } }//package com.google.analytics.core
Section 88
//IdleTimer (com.google.analytics.core.IdleTimer) package com.google.analytics.core { import flash.events.*; import flash.display.*; import com.google.analytics.v4.*; import com.google.analytics.debug.*; import flash.utils.*; public class IdleTimer { private var _stage:Stage; private var _loop:Timer; private var _lastMove:int; private var _inactivity:Number; private var _debug:DebugConfiguration; private var _session:Timer; private var _buffer:Buffer; public function IdleTimer(_arg1:Configuration, _arg2:DebugConfiguration, _arg3:DisplayObject, _arg4:Buffer){ var _local5:Number = _arg1.idleLoop; var _local6:Number = _arg1.idleTimeout; var _local7:Number = _arg1.sessionTimeout; _loop = new Timer((_local5 * 1000)); _session = new Timer((_local7 * 1000), 1); _debug = _arg2; _stage = _arg3.stage; _buffer = _arg4; _lastMove = getTimer(); _inactivity = (_local6 * 1000); _loop.addEventListener(TimerEvent.TIMER, checkForIdle); _session.addEventListener(TimerEvent.TIMER_COMPLETE, endSession); _stage.addEventListener(MouseEvent.MOUSE_MOVE, onMouseMove); _debug.info(((((("delay: " + _local5) + "sec , inactivity: ") + _local6) + "sec, sessionTimeout: ") + _local7), VisualDebugMode.geek); _loop.start(); } private function onMouseMove(_arg1:MouseEvent):void{ _lastMove = getTimer(); if (_session.running){ _debug.info("session timer reset", VisualDebugMode.geek); _session.reset(); }; } public function endSession(_arg1:TimerEvent):void{ _session.removeEventListener(TimerEvent.TIMER_COMPLETE, endSession); _debug.info("session timer end session", VisualDebugMode.geek); _session.reset(); _buffer.resetCurrentSession(); _debug.info(_buffer.utmb.toString(), VisualDebugMode.geek); _debug.info(_buffer.utmc.toString(), VisualDebugMode.geek); _session.addEventListener(TimerEvent.TIMER_COMPLETE, endSession); } public function checkForIdle(_arg1:TimerEvent):void{ var _local2:int = getTimer(); if ((_local2 - _lastMove) >= _inactivity){ if (!_session.running){ _debug.info("session timer start", VisualDebugMode.geek); _session.start(); }; }; } } }//package com.google.analytics.core
Section 89
//Organic (com.google.analytics.core.Organic) package com.google.analytics.core { import com.google.analytics.utils.*; public class Organic { private var _sourcesCache:Array; private var _sourcesEngine:Array; private var _ignoredKeywords:Array; private var _ignoredReferralsCache:Object; private var _ignoredReferrals:Array; private var _ignoredKeywordsCache:Object; private var _sources:Array; public static var throwErrors:Boolean = false; public function Organic(){ _sources = []; _sourcesCache = []; _sourcesEngine = []; _ignoredReferrals = []; _ignoredReferralsCache = {}; _ignoredKeywords = []; _ignoredKeywordsCache = {}; } public function isIgnoredKeyword(_arg1:String):Boolean{ if (_ignoredKeywordsCache.hasOwnProperty(_arg1)){ return (true); }; return (false); } public function getKeywordValue(_arg1:OrganicReferrer, _arg2:String):String{ var _local3:String = _arg1.keyword; return (getKeywordValueFromPath(_local3, _arg2)); } public function isIgnoredReferral(_arg1:String):Boolean{ if (_ignoredReferralsCache.hasOwnProperty(_arg1)){ return (true); }; return (false); } public function clear():void{ clearEngines(); clearIgnoredReferrals(); clearIgnoredKeywords(); } public function get count():int{ return (_sources.length); } public function get ignoredKeywordsCount():int{ return (_ignoredKeywords.length); } public function match(_arg1:String):Boolean{ if (_arg1 == ""){ return (false); }; _arg1 = _arg1.toLowerCase(); if (_sourcesEngine[_arg1] != undefined){ return (true); }; return (false); } public function clearIgnoredKeywords():void{ _ignoredKeywords = []; _ignoredKeywordsCache = {}; } public function addSource(_arg1:String, _arg2:String):void{ var _local3:OrganicReferrer = new OrganicReferrer(_arg1, _arg2); if (_sourcesCache[_local3.toString()] == undefined){ _sources.push(_local3); _sourcesCache[_local3.toString()] = (_sources.length - 1); if (_sourcesEngine[_local3.engine] == undefined){ _sourcesEngine[_local3.engine] = [(_sources.length - 1)]; } else { _sourcesEngine[_local3.engine].push((_sources.length - 1)); }; } else { if (throwErrors){ throw (new Error((_local3.toString() + " already exists, we don't add it."))); }; }; } public function clearEngines():void{ _sources = []; _sourcesCache = []; _sourcesEngine = []; } public function get ignoredReferralsCount():int{ return (_ignoredReferrals.length); } public function addIgnoredReferral(_arg1:String):void{ if (_ignoredReferralsCache[_arg1] == undefined){ _ignoredReferrals.push(_arg1); _ignoredReferralsCache[_arg1] = (_ignoredReferrals.length - 1); } else { if (throwErrors){ throw (new Error((("\"" + _arg1) + "\" already exists, we don't add it."))); }; }; } public function clearIgnoredReferrals():void{ _ignoredReferrals = []; _ignoredReferralsCache = {}; } public function getReferrerByName(_arg1:String):OrganicReferrer{ var _local2:int; if (match(_arg1)){ _local2 = _sourcesEngine[_arg1][0]; return (_sources[_local2]); }; return (null); } public function addIgnoredKeyword(_arg1:String):void{ if (_ignoredKeywordsCache[_arg1] == undefined){ _ignoredKeywords.push(_arg1); _ignoredKeywordsCache[_arg1] = (_ignoredKeywords.length - 1); } else { if (throwErrors){ throw (new Error((("\"" + _arg1) + "\" already exists, we don't add it."))); }; }; } public function get sources():Array{ return (_sources); } public static function getKeywordValueFromPath(_arg1:String, _arg2:String):String{ var _local3:String; var _local4:Variables; if (_arg2.indexOf((_arg1 + "=")) > -1){ if (_arg2.charAt(0) == "?"){ _arg2 = _arg2.substr(1); }; _arg2 = _arg2.split("+").join("%20"); _local4 = new Variables(_arg2); _local3 = _local4[_arg1]; }; return (_local3); } } }//package com.google.analytics.core
Section 90
//OrganicReferrer (com.google.analytics.core.OrganicReferrer) package com.google.analytics.core { public class OrganicReferrer { private var _engine:String; private var _keyword:String; public function OrganicReferrer(_arg1:String, _arg2:String){ this.engine = _arg1; this.keyword = _arg2; } public function get keyword():String{ return (_keyword); } public function get engine():String{ return (_engine); } public function set engine(_arg1:String):void{ _engine = _arg1.toLowerCase(); } public function toString():String{ return (((engine + "?") + keyword)); } public function set keyword(_arg1:String):void{ _keyword = _arg1.toLowerCase(); } } }//package com.google.analytics.core
Section 91
//RequestObject (com.google.analytics.core.RequestObject) package com.google.analytics.core { import flash.net.*; import flash.utils.*; public class RequestObject { public var start:int; public var end:int; public var request:URLRequest; public function RequestObject(_arg1:URLRequest){ start = getTimer(); this.request = _arg1; } public function hasCompleted():Boolean{ return ((end > 0)); } public function toString():String{ var _local1:Array = []; _local1.push((("duration: " + duration) + "ms")); _local1.push(("url: " + request.url)); return ((("{ " + _local1.join(", ")) + " }")); } public function complete():void{ end = getTimer(); } public function get duration():int{ if (!hasCompleted()){ return (0); }; return ((end - start)); } } }//package com.google.analytics.core
Section 92
//ServerOperationMode (com.google.analytics.core.ServerOperationMode) package com.google.analytics.core { public class ServerOperationMode { private var _value:int; private var _name:String; public static const both:ServerOperationMode = new ServerOperationMode(2, "both"); ; public static const remote:ServerOperationMode = new ServerOperationMode(1, "remote"); ; public static const local:ServerOperationMode = new ServerOperationMode(0, "local"); ; public function ServerOperationMode(_arg1:int=0, _arg2:String=""){ _value = _arg1; _name = _arg2; } public function valueOf():int{ return (_value); } public function toString():String{ return (_name); } } }//package com.google.analytics.core
Section 93
//TrackerCache (com.google.analytics.core.TrackerCache) package com.google.analytics.core { import com.google.analytics.v4.*; import flash.errors.*; public class TrackerCache implements GoogleAnalyticsAPI { public var tracker:GoogleAnalyticsAPI; private var _ar:Array; public static var CACHE_THROW_ERROR:Boolean; public function TrackerCache(_arg1:GoogleAnalyticsAPI=null){ this.tracker = _arg1; _ar = []; } public function size():uint{ return (_ar.length); } public function flush():void{ var _local1:Object; var _local2:String; var _local3:Array; var _local4:int; var _local5:int; if (tracker == null){ return; }; if (size() > 0){ _local4 = _ar.length; while (_local5 < _local4) { _local1 = _ar.shift(); _local2 = (_local1.name as String); _local3 = (_local1.args as Array); if (((!((_local2 == null))) && ((_local2 in tracker)))){ (tracker[_local2] as Function).apply(tracker, _local3); }; _local5++; }; }; } public function enqueue(_arg1:String, ... _args):Boolean{ if (_arg1 == null){ return (false); }; _ar.push({name:_arg1, args:_args}); return (true); } public function link(_arg1:String, _arg2:Boolean=false):void{ enqueue("link", _arg1, _arg2); } public function addOrganic(_arg1:String, _arg2:String):void{ enqueue("addOrganic", _arg1, _arg2); } public function setAllowLinker(_arg1:Boolean):void{ enqueue("setAllowLinker", _arg1); } public function trackEvent(_arg1:String, _arg2:String, _arg3:String=null, _arg4:Number=NaN):Boolean{ enqueue("trackEvent", _arg1, _arg2, _arg3, _arg4); return (true); } public function getClientInfo():Boolean{ if (CACHE_THROW_ERROR){ throw (new IllegalOperationError("The tracker is not ready and you can use the 'getClientInfo' method for the moment.")); }; return (false); } public function trackTrans():void{ enqueue("trackTrans"); } public function trackPageview(_arg1:String=""):void{ enqueue("trackPageview", _arg1); } public function setClientInfo(_arg1:Boolean):void{ enqueue("setClientInfo", _arg1); } public function linkByPost(_arg1:Object, _arg2:Boolean=false):void{ enqueue("linkByPost", _arg1, _arg2); } public function setCookieTimeout(_arg1:int):void{ enqueue("setCookieTimeout", _arg1); } public function isEmpty():Boolean{ return ((_ar.length == 0)); } public function getDetectTitle():Boolean{ if (CACHE_THROW_ERROR){ throw (new IllegalOperationError("The tracker is not ready and you can use the 'getDetectTitle' method for the moment.")); }; return (false); } public function resetSession():void{ enqueue("resetSession"); } public function setDetectFlash(_arg1:Boolean):void{ enqueue("setDetectFlash", _arg1); } public function clear():void{ _ar = []; } public function setCampNameKey(_arg1:String):void{ enqueue("setCampNameKey", _arg1); } public function addItem(_arg1:String, _arg2:String, _arg3:String, _arg4:String, _arg5:Number, _arg6:int):void{ enqueue("addItem", _arg1, _arg2, _arg3, _arg4, _arg5, _arg6); } public function createEventTracker(_arg1:String):EventTracker{ if (CACHE_THROW_ERROR){ throw (new IllegalOperationError("The tracker is not ready and you can use the 'createEventTracker' method for the moment.")); }; return (null); } public function setVar(_arg1:String):void{ enqueue("setVar", _arg1); } public function clearIgnoredOrganic():void{ enqueue("clearIgnoredOrganic"); } public function setDomainName(_arg1:String):void{ enqueue("setDomainName", _arg1); } public function setCampSourceKey(_arg1:String):void{ enqueue("setCampSourceKey", _arg1); } public function addTrans(_arg1:String, _arg2:String, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:String, _arg7:String, _arg8:String):Object{ if (CACHE_THROW_ERROR){ throw (new IllegalOperationError("The tracker is not ready and you can use the 'addTrans' method for the moment.")); }; return (null); } public function setCampContentKey(_arg1:String):void{ enqueue("setCampContentKey", _arg1); } public function setLocalServerMode():void{ enqueue("setLocalServerMode"); } public function getLocalGifPath():String{ if (CACHE_THROW_ERROR){ throw (new IllegalOperationError("The tracker is not ready and you can use the 'getLocalGifPath' method for the moment.")); }; return (""); } public function setAllowAnchor(_arg1:Boolean):void{ enqueue("setAllowAnchor", _arg1); } public function clearIgnoredRef():void{ enqueue("clearIgnoredRef"); } public function setLocalGifPath(_arg1:String):void{ enqueue("setLocalGifPath", _arg1); } public function getVersion():String{ if (CACHE_THROW_ERROR){ throw (new IllegalOperationError("The tracker is not ready and you can use the 'getVersion' method for the moment.")); }; return (""); } public function setCookiePath(_arg1:String):void{ enqueue("setCookiePath", _arg1); } public function setSampleRate(_arg1:Number):void{ enqueue("setSampleRate", _arg1); } public function setDetectTitle(_arg1:Boolean):void{ enqueue("setDetectTitle", _arg1); } public function setAllowHash(_arg1:Boolean):void{ enqueue("setAllowHash", _arg1); } public function addIgnoredOrganic(_arg1:String):void{ enqueue("addIgnoredOrganic", _arg1); } public function setCampNOKey(_arg1:String):void{ enqueue("setCampNOKey", _arg1); } public function getServiceMode():ServerOperationMode{ if (CACHE_THROW_ERROR){ throw (new IllegalOperationError("The tracker is not ready and you can use the 'getServiceMode' method for the moment.")); }; return (null); } public function setLocalRemoteServerMode():void{ enqueue("setLocalRemoteServerMode"); } public function cookiePathCopy(_arg1:String):void{ enqueue("cookiePathCopy", _arg1); } public function getDetectFlash():Boolean{ if (CACHE_THROW_ERROR){ throw (new IllegalOperationError("The tracker is not ready and you can use the 'getDetectFlash' method for the moment.")); }; return (false); } public function setCampaignTrack(_arg1:Boolean):void{ enqueue("setCampaignTrack", _arg1); } public function clearOrganic():void{ enqueue("clearOrganic"); } public function setCampTermKey(_arg1:String):void{ enqueue("setCampTermKey", _arg1); } public function addIgnoredRef(_arg1:String):void{ enqueue("addIgnoredRef", _arg1); } public function setCampMediumKey(_arg1:String):void{ enqueue("setCampMediumKey", _arg1); } public function setSessionTimeout(_arg1:int):void{ enqueue("setSessionTimeout", _arg1); } public function setRemoteServerMode():void{ enqueue("setRemoteServerMode"); } public function element(){ return (_ar[0]); } public function getAccount():String{ if (CACHE_THROW_ERROR){ throw (new IllegalOperationError("The tracker is not ready and you can use the 'getAccount' method for the moment.")); }; return (""); } } }//package com.google.analytics.core
Section 94
//TrackerMode (com.google.analytics.core.TrackerMode) package com.google.analytics.core { public class TrackerMode { public static const BRIDGE:String = "Bridge"; public static const AS3:String = "AS3"; } }//package com.google.analytics.core
Section 95
//Utils (com.google.analytics.core.Utils) package com.google.analytics.core { public class Utils { public static function trim(_arg1:String, _arg2:Boolean=false):String{ var _local5:int; var _local6:int; var _local7:int; if (_arg1 == ""){ return (""); }; var _local3:Array = [" ", "\n", "\r", "\t"]; var _local4:String = _arg1; if (_arg2){ _local5 = 0; while ((((_local5 < _local3.length)) && ((_local4.indexOf(_local3[_local5]) > -1)))) { _local4 = _local4.split(_local3[_local5]).join(""); _local5++; }; } else { _local6 = 0; while ((((_local6 < _local4.length)) && ((_local3.indexOf(_local4.charAt(_local6)) > -1)))) { _local6++; }; _local4 = _local4.substr(_local6); _local7 = (_local4.length - 1); while ((((_local7 >= 0)) && ((_local3.indexOf(_local4.charAt(_local7)) > -1)))) { _local7--; }; _local4 = _local4.substring(0, (_local7 + 1)); }; return (_local4); } public static function generateHash(_arg1:String):int{ var _local4:int; var _local5:int; var _local2 = 1; var _local3:int; if (((!((_arg1 == null))) && (!((_arg1 == ""))))){ _local2 = 0; _local4 = (_arg1.length - 1); while (_local4 >= 0) { _local5 = _arg1.charCodeAt(_local4); _local2 = ((((_local2 << 6) & 268435455) + _local5) + (_local5 << 14)); _local3 = (_local2 & 266338304); if (_local3 != 0){ _local2 = (_local2 ^ (_local3 >> 21)); }; _local4--; }; }; return (_local2); } public static function generate32bitRandom():int{ return (Math.round((Math.random() * 2147483647))); } public static function validateAccount(_arg1:String):Boolean{ var _local2:RegExp = /^UA-[0-9]*-[0-9]*$/; return (_local2.test(_arg1)); } } }//package com.google.analytics.core
Section 96
//Cookie (com.google.analytics.data.Cookie) package com.google.analytics.data { public interface Cookie { function fromSharedObject(_arg1:Object):void; function toURLString():String; function get creation():Date; function toSharedObject():Object; function isExpired():Boolean; function set creation(_arg1:Date):void; function set expiration(_arg1:Date):void; function get expiration():Date; } }//package com.google.analytics.data
Section 97
//UTMA (com.google.analytics.data.UTMA) package com.google.analytics.data { import com.google.analytics.utils.*; public class UTMA extends UTMCookie { private var _sessionId:Number; private var _domainHash:Number; private var _firstTime:Number; private var _currentTime:Number; private var _lastTime:Number; private var _sessionCount:Number; public function UTMA(_arg1:Number=NaN, _arg2:Number=NaN, _arg3:Number=NaN, _arg4:Number=NaN, _arg5:Number=NaN, _arg6:Number=NaN){ super("utma", "__utma", ["domainHash", "sessionId", "firstTime", "lastTime", "currentTime", "sessionCount"], (Timespan.twoyears * 1000)); this.domainHash = _arg1; this.sessionId = _arg2; this.firstTime = _arg3; this.lastTime = _arg4; this.currentTime = _arg5; this.sessionCount = _arg6; } public function get lastTime():Number{ return (_lastTime); } public function set lastTime(_arg1:Number):void{ _lastTime = _arg1; update(); } public function set currentTime(_arg1:Number):void{ _currentTime = _arg1; update(); } public function get sessionId():Number{ return (_sessionId); } public function get sessionCount():Number{ return (_sessionCount); } public function get firstTime():Number{ return (_firstTime); } public function get currentTime():Number{ return (_currentTime); } public function set domainHash(_arg1:Number):void{ _domainHash = _arg1; update(); } public function set sessionId(_arg1:Number):void{ _sessionId = _arg1; update(); } public function set sessionCount(_arg1:Number):void{ _sessionCount = _arg1; update(); } public function get domainHash():Number{ return (_domainHash); } public function set firstTime(_arg1:Number):void{ _firstTime = _arg1; update(); } } }//package com.google.analytics.data
Section 98
//UTMB (com.google.analytics.data.UTMB) package com.google.analytics.data { import com.google.analytics.utils.*; public class UTMB extends UTMCookie { private var _trackCount:Number; private var _lastTime:Number; private var _domainHash:Number; private var _token:Number; public static var defaultTimespan:Number = Timespan.thirtyminutes; public function UTMB(_arg1:Number=NaN, _arg2:Number=NaN, _arg3:Number=NaN, _arg4:Number=NaN){ super("utmb", "__utmb", ["domainHash", "trackCount", "token", "lastTime"], (defaultTimespan * 1000)); this.domainHash = _arg1; this.trackCount = _arg2; this.token = _arg3; this.lastTime = _arg4; } public function set token(_arg1:Number):void{ _token = _arg1; update(); } public function set trackCount(_arg1:Number):void{ _trackCount = _arg1; update(); } public function get lastTime():Number{ return (_lastTime); } public function set domainHash(_arg1:Number):void{ _domainHash = _arg1; update(); } public function set lastTime(_arg1:Number):void{ _lastTime = _arg1; update(); } public function get domainHash():Number{ return (_domainHash); } public function get token():Number{ return (_token); } public function get trackCount():Number{ return (_trackCount); } } }//package com.google.analytics.data
Section 99
//UTMC (com.google.analytics.data.UTMC) package com.google.analytics.data { public class UTMC extends UTMCookie { private var _domainHash:Number; public function UTMC(_arg1:Number=NaN){ super("utmc", "__utmc", ["domainHash"]); this.domainHash = _arg1; } public function get domainHash():Number{ return (_domainHash); } public function set domainHash(_arg1:Number):void{ _domainHash = _arg1; update(); } } }//package com.google.analytics.data
Section 100
//UTMCookie (com.google.analytics.data.UTMCookie) package com.google.analytics.data { import com.google.analytics.core.*; public class UTMCookie implements Cookie { protected var inURL:String; protected var name:String; private var _creation:Date; private var _expiration:Date; public var proxy:Buffer; protected var fields:Array; private var _timespan:Number; public function UTMCookie(_arg1:String, _arg2:String, _arg3:Array, _arg4:Number=0){ this.name = _arg1; this.inURL = _arg2; this.fields = _arg3; _timestamp(_arg4); } public function isEmpty():Boolean{ var _local2:String; var _local1:int; var _local3:int; while (_local3 < fields.length) { _local2 = fields[_local3]; if ((((this[_local2] is Number)) && (isNaN(this[_local2])))){ _local1++; } else { if ((((this[_local2] is String)) && ((this[_local2] == "")))){ _local1++; }; }; _local3++; }; if (_local1 == fields.length){ return (true); }; return (false); } public function resetTimestamp(_arg1:Number=NaN):void{ if (!isNaN(_arg1)){ _timespan = _arg1; }; _creation = null; _expiration = null; _timestamp(_timespan); } protected function update():void{ resetTimestamp(); if (proxy){ proxy.update(name, toSharedObject()); }; } public function reset():void{ var _local1:String; var _local2:int; while (_local2 < fields.length) { _local1 = fields[_local2]; if ((this[_local1] is Number)){ this[_local1] = NaN; } else { if ((this[_local1] is String)){ this[_local1] = ""; }; }; _local2++; }; resetTimestamp(); update(); } public function fromSharedObject(_arg1:Object):void{ var _local2:String; var _local3:int = fields.length; var _local4:int; while (_local4 < _local3) { _local2 = fields[_local4]; if (_arg1[_local2]){ this[_local2] = _arg1[_local2]; }; _local4++; }; if (_arg1.creation){ this.creation = _arg1.creation; }; if (_arg1.expiration){ this.expiration = _arg1.expiration; }; } private function _timestamp(_arg1:Number):void{ creation = new Date(); _timespan = _arg1; if (_arg1 > 0){ expiration = new Date((creation.valueOf() + _arg1)); }; } public function isExpired():Boolean{ var _local1:Date = new Date(); var _local2:Number = (expiration.valueOf() - _local1.valueOf()); if (_local2 <= 0){ return (true); }; return (false); } public function set expiration(_arg1:Date):void{ _expiration = _arg1; } public function get creation():Date{ return (_creation); } public function valueOf():String{ var _local2:String; var _local3:*; var _local1:Array = []; var _local4:int; while (_local4 < fields.length) { _local2 = fields[_local4]; _local3 = this[_local2]; if ((_local3 is String)){ if (_local3 == ""){ _local3 = "-"; _local1.push(_local3); } else { _local1.push(_local3); }; } else { if ((_local3 is Number)){ if (_local3 == 0){ _local1.push(_local3); } else { if (isNaN(_local3)){ _local3 = "-"; _local1.push(_local3); } else { _local1.push(_local3); }; }; }; }; _local4++; }; return (("" + _local1.join("."))); } public function toURLString():String{ return (((inURL + "=") + valueOf())); } public function get expiration():Date{ if (_expiration){ return (_expiration); }; return (new Date((new Date().valueOf() + 1000))); } public function toSharedObject():Object{ var _local2:String; var _local3:*; var _local1:Object = {}; var _local4:int; for (;_local4 < fields.length;_local4++) { _local2 = fields[_local4]; _local3 = this[_local2]; if ((_local3 is String)){ _local1[_local2] = _local3; } else { if (_local3 == 0){ _local1[_local2] = _local3; } else { if (isNaN(_local3)){ continue; } else { _local1[_local2] = _local3; }; }; }; }; _local1.creation = creation; _local1.expiration = expiration; return (_local1); } public function toString(_arg1:Boolean=false):String{ var _local3:String; var _local4:*; var _local2:Array = []; var _local5:int = fields.length; var _local6:int; for (;_local6 < _local5;_local6++) { _local3 = fields[_local6]; _local4 = this[_local3]; if ((_local4 is String)){ _local2.push((((_local3 + ": \"") + _local4) + "\"")); } else { if (_local4 == 0){ _local2.push(((_local3 + ": ") + _local4)); } else { if (isNaN(_local4)){ continue; } else { _local2.push(((_local3 + ": ") + _local4)); }; }; }; }; var _local7 = (((name.toUpperCase() + " {") + _local2.join(", ")) + "}"); if (_arg1){ _local7 = (_local7 + (((" creation:" + creation) + ", expiration:") + expiration)); }; return (_local7); } public function set creation(_arg1:Date):void{ _creation = _arg1; } } }//package com.google.analytics.data
Section 101
//UTMK (com.google.analytics.data.UTMK) package com.google.analytics.data { public class UTMK extends UTMCookie { private var _hash:Number; public function UTMK(_arg1:Number=NaN){ super("utmk", "__utmk", ["hash"]); this.hash = _arg1; } public function set hash(_arg1:Number):void{ _hash = _arg1; update(); } public function get hash():Number{ return (_hash); } } }//package com.google.analytics.data
Section 102
//UTMV (com.google.analytics.data.UTMV) package com.google.analytics.data { import com.google.analytics.utils.*; public class UTMV extends UTMCookie { private var _domainHash:Number; private var _value:String; public function UTMV(_arg1:Number=NaN, _arg2:String=""){ super("utmv", "__utmv", ["domainHash", "value"], (Timespan.twoyears * 1000)); this.domainHash = _arg1; this.value = _arg2; } override public function toURLString():String{ return (((inURL + "=") + encodeURI(valueOf()))); } public function get value():String{ return (_value); } public function get domainHash():Number{ return (_domainHash); } public function set domainHash(_arg1:Number):void{ _domainHash = _arg1; update(); } public function set value(_arg1:String):void{ _value = _arg1; update(); } } }//package com.google.analytics.data
Section 103
//UTMZ (com.google.analytics.data.UTMZ) package com.google.analytics.data { import com.google.analytics.utils.*; public class UTMZ extends UTMCookie { private var _campaignTracking:String; private var _campaignCreation:Number; private var _responseCount:Number; private var _domainHash:Number; private var _campaignSessions:Number; public static var defaultTimespan:Number = Timespan.sixmonths; public function UTMZ(_arg1:Number=NaN, _arg2:Number=NaN, _arg3:Number=NaN, _arg4:Number=NaN, _arg5:String=""){ super("utmz", "__utmz", ["domainHash", "campaignCreation", "campaignSessions", "responseCount", "campaignTracking"], (defaultTimespan * 1000)); this.domainHash = _arg1; this.campaignCreation = _arg2; this.campaignSessions = _arg3; this.responseCount = _arg4; this.campaignTracking = _arg5; } public function set responseCount(_arg1:Number):void{ _responseCount = _arg1; update(); } public function set domainHash(_arg1:Number):void{ _domainHash = _arg1; update(); } public function set campaignCreation(_arg1:Number):void{ _campaignCreation = _arg1; update(); } public function get campaignTracking():String{ return (_campaignTracking); } public function get campaignSessions():Number{ return (_campaignSessions); } public function get domainHash():Number{ return (_domainHash); } public function get responseCount():Number{ return (_responseCount); } public function get campaignCreation():Number{ return (_campaignCreation); } public function set campaignSessions(_arg1:Number):void{ _campaignSessions = _arg1; update(); } public function set campaignTracking(_arg1:String):void{ _campaignTracking = _arg1; update(); } } }//package com.google.analytics.data
Section 104
//X10 (com.google.analytics.data.X10) package com.google.analytics.data { public class X10 { private var _delimEnd:String;// = ")" private var _minimum:int; private var _delimSet:String;// = "*" private var _escapeChar:String;// = "'" private var _delimBegin:String;// = "(" private var _delimNumValue:String;// = "!" private var _key:String;// = "k" private var _set:Array; private var _hasData:int; private var _escapeCharMap:Object; private var _projectData:Object; private var _value:String;// = "v" public function X10(){ _set = [_key, _value]; super(); _projectData = {}; _escapeCharMap = {}; _escapeCharMap[_escapeChar] = "'0"; _escapeCharMap[_delimEnd] = "'1"; _escapeCharMap[_delimSet] = "'2"; _escapeCharMap[_delimNumValue] = "'3"; _minimum = 1; } private function _setInternal(_arg1:Number, _arg2:String, _arg3:Number, _arg4:String):void{ if (!hasProject(_arg1)){ _projectData[_arg1] = {}; }; if (_projectData[_arg1][_arg2] == undefined){ _projectData[_arg1][_arg2] = []; }; _projectData[_arg1][_arg2][_arg3] = _arg4; _hasData = (_hasData + 1); } private function _renderProject(_arg1:Object):String{ var _local4:int; var _local5:Array; var _local2 = ""; var _local3:Boolean; var _local6:int = _set.length; _local4 = 0; while (_local4 < _local6) { _local5 = _arg1[_set[_local4]]; if (_local5){ if (_local3){ _local2 = (_local2 + _set[_local4]); }; _local2 = (_local2 + _renderDataType(_local5)); _local3 = false; } else { _local3 = true; }; _local4++; }; return (_local2); } public function hasProject(_arg1:Number):Boolean{ return (_projectData[_arg1]); } public function clearKey(_arg1:Number):void{ _clearInternal(_arg1, _key); } private function _renderDataType(_arg1:Array):String{ var _local3:String; var _local4:int; var _local2:Array = []; _local4 = 0; while (_local4 < _arg1.length) { if (_arg1[_local4] != undefined){ _local3 = ""; if (((!((_local4 == _minimum))) && ((_arg1[(_local4 - 1)] == undefined)))){ _local3 = (_local3 + _local4.toString()); _local3 = (_local3 + _delimNumValue); }; _local3 = (_local3 + _escapeExtensibleValue(_arg1[_local4])); _local2.push(_local3); }; _local4++; }; return (((_delimBegin + _local2.join(_delimSet)) + _delimEnd)); } public function getKey(_arg1:Number, _arg2:Number):String{ return ((_getInternal(_arg1, _key, _arg2) as String)); } public function hasData():Boolean{ return ((_hasData > 0)); } public function renderMergedUrlString(_arg1:X10=null):String{ var _local3:String; if (!_arg1){ return (renderUrlString()); }; var _local2:Array = [_arg1.renderUrlString()]; for (_local3 in _projectData) { if (((hasProject(Number(_local3))) && (!(_arg1.hasProject(Number(_local3)))))){ _local2.push((_local3 + _renderProject(_projectData[_local3]))); }; }; return (_local2.join("")); } public function setValue(_arg1:Number, _arg2:Number, _arg3:Number):Boolean{ if (((((!((Math.round(_arg3) == _arg3))) || (isNaN(_arg3)))) || ((_arg3 == Infinity)))){ return (false); }; _setInternal(_arg1, _value, _arg2, _arg3.toString()); return (true); } public function renderUrlString():String{ var _local2:String; var _local1:Array = []; for (_local2 in _projectData) { if (hasProject(Number(_local2))){ _local1.push((_local2 + _renderProject(_projectData[_local2]))); }; }; return (_local1.join("")); } private function _getInternal(_arg1:Number, _arg2:String, _arg3:Number):Object{ if (((hasProject(_arg1)) && (!((_projectData[_arg1][_arg2] == undefined))))){ return (_projectData[_arg1][_arg2][_arg3]); }; return (undefined); } public function setKey(_arg1:Number, _arg2:Number, _arg3:String):Boolean{ _setInternal(_arg1, _key, _arg2, _arg3); return (true); } public function clearValue(_arg1:Number):void{ _clearInternal(_arg1, _value); } private function _clearInternal(_arg1:Number, _arg2:String):void{ var _local3:Boolean; var _local4:int; var _local5:int; if (((hasProject(_arg1)) && (!((_projectData[_arg1][_arg2] == undefined))))){ _projectData[_arg1][_arg2] = undefined; _local3 = true; _local5 = _set.length; _local4 = 0; while (_local4 < _local5) { if (_projectData[_arg1][_set[_local4]] != undefined){ _local3 = false; break; }; _local4++; }; if (_local3){ _projectData[_arg1] = undefined; _hasData = (_hasData - 1); }; }; } public function getValue(_arg1:Number, _arg2:Number){ var _local3:* = _getInternal(_arg1, _value, _arg2); if (_local3 == null){ return (null); }; return (Number(_local3)); } private function _escapeExtensibleValue(_arg1:String):String{ var _local3:int; var _local4:String; var _local5:String; var _local2 = ""; _local3 = 0; while (_local3 < _arg1.length) { _local4 = _arg1.charAt(_local3); _local5 = _escapeCharMap[_local4]; if (_local5){ _local2 = (_local2 + _local5); } else { _local2 = (_local2 + _local4); }; _local3++; }; return (_local2); } } }//package com.google.analytics.data
Section 105
//_Style (com.google.analytics.debug._Style) package com.google.analytics.debug { import flash.text.*; import flash.net.*; public class _Style { public var failureColor:uint; public var borderColor:uint; public var backgroundColor:uint; private var _sheet:StyleSheet; public var roundedCorner:uint; public var warningColor:uint; public var infoColor:uint; public var alertColor:uint; public var successColor:uint; private var _loader:URLLoader; private var _defaultSheet:String; public function _Style(){ _sheet = new StyleSheet(); _loader = new URLLoader(); _init(); } private function _parseSheet(_arg1:String):void{ _sheet.parseCSS(_arg1); } public function get sheet():StyleSheet{ return (_sheet); } private function _init():void{ _defaultSheet = ""; _defaultSheet = (_defaultSheet + "a{text-decoration: underline;}\n"); _defaultSheet = (_defaultSheet + ".uiLabel{color: #000000;font-family: Arial;font-size: 12;margin-left: 2;margin-right: 2;}\n"); _defaultSheet = (_defaultSheet + ".uiWarning{color: #ffffff;font-family: Arial;font-size: 14;font-weight: bold;margin-left: 6;margin-right: 6;}\n"); _defaultSheet = (_defaultSheet + ".uiAlert{color: #ffffff;font-family: Arial;font-size: 14;font-weight: bold;margin-left: 6;margin-right: 6;}\n"); _defaultSheet = (_defaultSheet + ".uiInfo{color: #000000;font-family: Arial;font-size: 14;font-weight: bold;margin-left: 6;margin-right: 6;}\n"); _defaultSheet = (_defaultSheet + ".uiSuccess{color: #ffffff;font-family: Arial;font-size: 12;font-weight: bold;margin-left: 6;margin-right: 6;}\n"); _defaultSheet = (_defaultSheet + ".uiFailure{color: #ffffff;font-family: Arial;font-size: 12;font-weight: bold;margin-left: 6;margin-right: 6;}\n"); _defaultSheet = (_defaultSheet + ".uiAlertAction{color: #ffffff;text-align: center;font-family: Arial;font-size: 12;font-weight: bold;margin-left: 6;margin-right: 6;}\n"); _defaultSheet = (_defaultSheet + ".uiAlertTitle{color: #ffffff;font-family: Arial;font-size: 16;font-weight: bold;margin-left: 6;margin-right: 6;}\n"); _defaultSheet = (_defaultSheet + "\n"); roundedCorner = 6; backgroundColor = 0xCCCCCC; borderColor = 0x555555; infoColor = 16777113; alertColor = 0xFFCC00; warningColor = 0xCC0000; successColor = 0xFF00; failureColor = 0xFF0000; _parseSheet(_defaultSheet); } } }//package com.google.analytics.debug
Section 106
//Alert (com.google.analytics.debug.Alert) package com.google.analytics.debug { import flash.events.*; public class Alert extends Label { public var autoClose:Boolean;// = true public var actionOnNextLine:Boolean;// = true private var _actions:Array; public function Alert(_arg1:String, _arg2:Array, _arg3:String="uiAlert", _arg4:uint=0, _arg5:Align=null, _arg6:Boolean=false, _arg7:Boolean=true){ if (_arg4 == 0){ _arg4 = Style.alertColor; }; if (_arg5 == null){ _arg5 = Align.center; }; super(_arg1, _arg3, _arg4, _arg5, _arg6); this.selectable = true; super.mouseChildren = true; this.buttonMode = true; this.mouseEnabled = true; this.useHandCursor = true; this.actionOnNextLine = _arg7; _actions = []; var _local8:int; while (_local8 < _arg2.length) { _arg2[_local8].container = this; _actions.push(_arg2[_local8]); _local8++; }; } private function _defineActions():void{ var _local3:AlertAction; var _local1 = ""; if (actionOnNextLine){ _local1 = (_local1 + "\n"); } else { _local1 = (_local1 + " |"); }; _local1 = (_local1 + " "); var _local2:Array = []; var _local4:int; while (_local4 < _actions.length) { _local3 = _actions[_local4]; _local2.push((((("<a href=\"event:" + _local3.activator) + "\">") + _local3.name) + "</a>")); _local4++; }; _local1 = (_local1 + _local2.join(" | ")); appendText(_local1, "uiAlertAction"); } protected function isValidAction(_arg1:String):Boolean{ var _local2:int; while (_local2 < _actions.length) { if (_arg1 == _actions[_local2].activator){ return (true); }; _local2++; }; return (false); } override protected function layout():void{ super.layout(); _defineActions(); } protected function getAction(_arg1:String):AlertAction{ var _local2:int; while (_local2 < _actions.length) { if (_arg1 == _actions[_local2].activator){ return (_actions[_local2]); }; _local2++; }; return (null); } protected function spaces(_arg1:int):String{ var _local2 = ""; var _local3 = " "; var _local4:int; while (_local4 < (_arg1 + 1)) { _local2 = (_local2 + _local3); _local4++; }; return (_local2); } override public function onLink(_arg1:TextEvent):void{ var _local2:AlertAction; if (isValidAction(_arg1.text)){ _local2 = getAction(_arg1.text); if (_local2){ _local2.execute(); }; }; if (autoClose){ close(); }; } public function close():void{ if (parent != null){ parent.removeChild(this); }; } } }//package com.google.analytics.debug
Section 107
//AlertAction (com.google.analytics.debug.AlertAction) package com.google.analytics.debug { public class AlertAction { public var container:Alert; private var _callback; public var activator:String; public var name:String; public function AlertAction(_arg1:String, _arg2:String, _arg3){ this.name = _arg1; this.activator = _arg2; _callback = _arg3; } public function execute():void{ if (_callback){ if ((_callback is Function)){ (_callback as Function)(); } else { if ((_callback is String)){ var _local1 = container; _local1[_callback](); }; }; }; } } }//package com.google.analytics.debug
Section 108
//Align (com.google.analytics.debug.Align) package com.google.analytics.debug { public class Align { private var _value:int; private var _name:String; public static const bottomRight:Align = new Align(18, "bottomRight"); ; public static const right:Align = new Align(16, "right"); ; public static const left:Align = new Align(32, "left"); ; public static const topRight:Align = new Align(17, "topRight"); ; public static const bottom:Align = new Align(2, "bottom"); ; public static const bottomLeft:Align = new Align(34, "bottomLeft"); ; public static const topLeft:Align = new Align(33, "topLeft"); ; public static const center:Align = new Align(0x0100, "center"); ; public static const none:Align = new Align(0, "none"); ; public static const top:Align = new Align(1, "top"); ; public function Align(_arg1:int=0, _arg2:String=""){ _value = _arg1; _name = _arg2; } public function valueOf():int{ return (_value); } public function toString():String{ return (_name); } } }//package com.google.analytics.debug
Section 109
//Background (com.google.analytics.debug.Background) package com.google.analytics.debug { import flash.display.*; public class Background { public static function drawRounded(_arg1, _arg2:Graphics, _arg3:uint=0, _arg4:uint=0):void{ var _local5:uint; var _local6:uint; var _local7:uint = Style.roundedCorner; if ((((_arg3 > 0)) && ((_arg4 > 0)))){ _local5 = _arg3; _local6 = _arg4; } else { _local5 = _arg1.width; _local6 = _arg1.height; }; if (((_arg1.stickToEdge) && (!((_arg1.alignement == Align.none))))){ switch (_arg1.alignement){ case Align.top: _arg2.drawRoundRectComplex(0, 0, _local5, _local6, 0, 0, _local7, _local7); break; case Align.topLeft: _arg2.drawRoundRectComplex(0, 0, _local5, _local6, 0, 0, 0, _local7); break; case Align.topRight: _arg2.drawRoundRectComplex(0, 0, _local5, _local6, 0, 0, _local7, 0); break; case Align.bottom: _arg2.drawRoundRectComplex(0, 0, _local5, _local6, _local7, _local7, 0, 0); break; case Align.bottomLeft: _arg2.drawRoundRectComplex(0, 0, _local5, _local6, 0, _local7, 0, 0); break; case Align.bottomRight: _arg2.drawRoundRectComplex(0, 0, _local5, _local6, _local7, 0, 0, 0); break; case Align.left: _arg2.drawRoundRectComplex(0, 0, _local5, _local6, 0, _local7, 0, _local7); break; case Align.right: _arg2.drawRoundRectComplex(0, 0, _local5, _local6, _local7, 0, _local7, 0); break; case Align.center: _arg2.drawRoundRect(0, 0, _local5, _local6, _local7, _local7); break; }; } else { _arg2.drawRoundRect(0, 0, _local5, _local6, _local7, _local7); }; } } }//package com.google.analytics.debug
Section 110
//Debug (com.google.analytics.debug.Debug) package com.google.analytics.debug { import flash.events.*; import flash.ui.*; public class Debug extends Label { private var _lines:Array; private var _preferredForcedWidth:uint;// = 540 private var _linediff:int;// = 0 public var maxLines:uint;// = 16 public static var count:uint = 0; public function Debug(_arg1:uint=0, _arg2:Align=null, _arg3:Boolean=false){ if (_arg2 == null){ _arg2 = Align.bottom; }; super("", "uiLabel", _arg1, _arg2, _arg3); this.name = ("Debug" + count++); _lines = []; selectable = true; addEventListener(KeyboardEvent.KEY_DOWN, onKey); } public function writeBold(_arg1:String):void{ write(_arg1, true); } private function _getLinesToDisplay(_arg1:int=0):Array{ var _local2:Array; var _local3:uint; var _local4:uint; if ((_lines.length - 1) > maxLines){ if ((_linediff <= 0)){ _linediff = (_linediff + _arg1); } else { if ((((_linediff > 0)) && ((_arg1 < 0)))){ _linediff = (_linediff + _arg1); }; }; _local3 = ((_lines.length - maxLines) + _linediff); _local4 = (_local3 + maxLines); _local2 = _lines.slice(_local3, _local4); } else { _local2 = _lines; }; return (_local2); } private function onKey(_arg1:KeyboardEvent=null):void{ var _local2:Array; switch (_arg1.keyCode){ case Keyboard.DOWN: _local2 = _getLinesToDisplay(1); break; case Keyboard.UP: _local2 = _getLinesToDisplay(-1); break; default: _local2 = null; }; if (_local2 == null){ return; }; text = _local2.join("\n"); } override public function get forcedWidth():uint{ if (this.parent){ if (UISprite(this.parent).forcedWidth > _preferredForcedWidth){ return (_preferredForcedWidth); }; return (UISprite(this.parent).forcedWidth); //unresolved jump }; return (super.forcedWidth); } public function write(_arg1:String, _arg2:Boolean=false):void{ var _local3:Array; if (_arg1.indexOf("") > -1){ _local3 = _arg1.split("\n"); } else { _local3 = [_arg1]; }; var _local4 = ""; var _local5 = ""; if (_arg2){ _local4 = "<b>"; _local5 = "</b>"; }; var _local6:int; while (_local6 < _local3.length) { _lines.push(((_local4 + _local3[_local6]) + _local5)); _local6++; }; var _local7:Array = _getLinesToDisplay(); text = _local7.join("\n"); } public function close():void{ dispose(); } override protected function dispose():void{ removeEventListener(KeyboardEvent.KEY_DOWN, onKey); super.dispose(); } } }//package com.google.analytics.debug
Section 111
//DebugConfiguration (com.google.analytics.debug.DebugConfiguration) package com.google.analytics.debug { import com.google.analytics.core.*; import flash.net.*; import flash.utils.*; import flash.ui.*; public class DebugConfiguration { public var showHideKey:Number; private var _mode:VisualDebugMode; private var _verbose:Boolean;// = false public var destroyKey:Number; public var GIFRequests:Boolean;// = false public var showInfos:Boolean;// = true public var infoTimeout:Number;// = 1000 public var minimizedOnStart:Boolean;// = false private var _active:Boolean;// = false public var traceOutput:Boolean;// = false public var layout:ILayout; public var warningTimeout:Number;// = 1500 public var javascript:Boolean;// = false public var showWarnings:Boolean;// = true private var _visualInitialized:Boolean;// = false public function DebugConfiguration(){ _mode = VisualDebugMode.basic; showHideKey = Keyboard.SPACE; destroyKey = Keyboard.BACKSPACE; super(); } public function get verbose():Boolean{ return (_verbose); } public function set verbose(_arg1:Boolean):void{ _verbose = _arg1; } public function set mode(_arg1):void{ if ((_arg1 is String)){ switch (_arg1){ case "geek": _arg1 = VisualDebugMode.geek; break; case "advanced": _arg1 = VisualDebugMode.advanced; break; case "basic": default: _arg1 = VisualDebugMode.basic; }; }; _mode = _arg1; } public function success(_arg1:String):void{ if (layout){ layout.createSuccessAlert(_arg1); }; if (traceOutput){ trace((("[+] " + _arg1) + " !!")); }; } public function get active():Boolean{ return (_active); } private function _initializeVisual():void{ if (layout){ layout.init(); _visualInitialized = true; }; } private function _destroyVisual():void{ if (((layout) && (_visualInitialized))){ layout.destroy(); }; } public function warning(_arg1:String, _arg2:VisualDebugMode=null):void{ if (_filter(_arg2)){ return; }; if (((layout) && (showWarnings))){ layout.createWarning(_arg1); }; if (traceOutput){ trace((("## " + _arg1) + " ##")); }; } private function _filter(_arg1:VisualDebugMode=null):Boolean{ return (((_arg1) && ((int(_arg1) >= int(this.mode))))); } public function failure(_arg1:String):void{ if (layout){ layout.createFailureAlert(_arg1); }; if (traceOutput){ trace((("[-] " + _arg1) + " !!")); }; } public function get mode(){ return (_mode); } public function set active(_arg1:Boolean):void{ _active = _arg1; if (_active){ _initializeVisual(); } else { _destroyVisual(); }; } protected function trace(_arg1:String):void{ var _local7:Array; var _local8:int; var _local2:Array = []; var _local3 = ""; var _local4 = ""; if (this.mode == VisualDebugMode.geek){ _local3 = (getTimer() + " - "); _local4 = (new Array(_local3.length).join(" ") + " "); }; if (_arg1.indexOf("\n") > -1){ _local7 = _arg1.split("\n"); _local8 = 0; while (_local8 < _local7.length) { if (_local7[_local8] == ""){ } else { if (_local8 == 0){ _local2.push((_local3 + _local7[_local8])); } else { _local2.push((_local4 + _local7[_local8])); }; }; _local8++; }; } else { _local2.push((_local3 + _arg1)); }; var _local5:int = _local2.length; var _local6:int; while (_local6 < _local5) { trace(_local2[_local6]); _local6++; }; } public function alert(_arg1:String):void{ if (layout){ layout.createAlert(_arg1); }; if (traceOutput){ trace((("!! " + _arg1) + " !!")); }; } public function info(_arg1:String, _arg2:VisualDebugMode=null):void{ if (_filter(_arg2)){ return; }; if (((layout) && (showInfos))){ layout.createInfo(_arg1); }; if (traceOutput){ trace(_arg1); }; } public function alertGifRequest(_arg1:String, _arg2:URLRequest, _arg3:GIFRequest):void{ if (layout){ layout.createGIFRequestAlert(_arg1, _arg2, _arg3); }; if (traceOutput){ trace(((">> " + _arg1) + " <<")); }; } } }//package com.google.analytics.debug
Section 112
//FailureAlert (com.google.analytics.debug.FailureAlert) package com.google.analytics.debug { public class FailureAlert extends Alert { public function FailureAlert(_arg1:DebugConfiguration, _arg2:String, _arg3:Array){ var _local4:Align = Align.bottomLeft; var _local5:Boolean; var _local6:Boolean; if (_arg1.verbose){ _arg2 = ((("<u><span class=\"uiAlertTitle\">Failure</span>" + spaces(18)) + "</u>\n\n") + _arg2); _local4 = Align.center; _local5 = false; _local6 = true; }; super(_arg2, _arg3, "uiFailure", Style.failureColor, _local4, _local5, _local6); } } }//package com.google.analytics.debug
Section 113
//GIFRequestAlert (com.google.analytics.debug.GIFRequestAlert) package com.google.analytics.debug { public class GIFRequestAlert extends Alert { public function GIFRequestAlert(_arg1:String, _arg2:Array){ super(_arg1, _arg2); } } }//package com.google.analytics.debug
Section 114
//ILayout (com.google.analytics.debug.ILayout) package com.google.analytics.debug { import flash.display.*; import com.google.analytics.core.*; import flash.net.*; public interface ILayout { function createAlert(_arg1:String):void; function addToStage(_arg1:DisplayObject):void; function createGIFRequestAlert(_arg1:String, _arg2:URLRequest, _arg3:GIFRequest):void; function createWarning(_arg1:String):void; function createPanel(_arg1:String, _arg2:uint, _arg3:uint):void; function createInfo(_arg1:String):void; function createFailureAlert(_arg1:String):void; function addToPanel(_arg1:String, _arg2:DisplayObject):void; function init():void; function createSuccessAlert(_arg1:String):void; function createVisualDebug():void; function destroy():void; function bringToFront(_arg1:DisplayObject):void; function isAvailable():Boolean; } }//package com.google.analytics.debug
Section 115
//Info (com.google.analytics.debug.Info) package com.google.analytics.debug { import flash.events.*; import flash.utils.*; public class Info extends Label { private var _timer:Timer; public function Info(_arg1:String="", _arg2:uint=3000){ super(_arg1, "uiInfo", Style.infoColor, Align.top, true); if (_arg2 > 0){ _timer = new Timer(_arg2, 1); _timer.start(); _timer.addEventListener(TimerEvent.TIMER_COMPLETE, onComplete, false, 0, true); }; } public function close():void{ if (parent != null){ parent.removeChild(this); }; } override public function onLink(_arg1:TextEvent):void{ switch (_arg1.text){ case "hide": close(); break; }; } public function onComplete(_arg1:TimerEvent):void{ close(); } } }//package com.google.analytics.debug
Section 116
//Label (com.google.analytics.debug.Label) package com.google.analytics.debug { import flash.events.*; import flash.display.*; import flash.text.*; public class Label extends UISprite { private var _color:uint; private var _background:Shape; private var _textField:TextField; public var stickToEdge:Boolean; private var _text:String; protected var selectable:Boolean; private var _tag:String; public static var count:uint = 0; public function Label(_arg1:String="", _arg2:String="uiLabel", _arg3:uint=0, _arg4:Align=null, _arg5:Boolean=false){ this.name = ("Label" + count++); selectable = false; _background = new Shape(); _textField = new TextField(); _text = _arg1; _tag = _arg2; if (_arg4 == null){ _arg4 = Align.none; }; this.alignement = _arg4; this.stickToEdge = _arg5; if (_arg3 == 0){ _arg3 = Style.backgroundColor; }; _color = _arg3; _textField.addEventListener(TextEvent.LINK, onLink); } public function get tag():String{ return (_tag); } private function _draw():void{ var _local1:Graphics = _background.graphics; _local1.clear(); _local1.beginFill(_color); var _local2:uint = _textField.width; var _local3:uint = _textField.height; if (forcedWidth > 0){ _local2 = forcedWidth; }; Background.drawRounded(this, _local1, _local2, _local3); _local1.endFill(); } public function get text():String{ return (_textField.text); } public function appendText(_arg1:String, _arg2:String=""):void{ if (_arg1 == ""){ return; }; if (_arg2 == ""){ _arg2 = tag; }; _textField.htmlText = (_textField.htmlText + (((("<span class=\"" + _arg2) + "\">") + _arg1) + "</span>")); _text = (_text + _arg1); _draw(); resize(); } public function set text(_arg1:String):void{ if (_arg1 == ""){ _arg1 = _text; }; _textField.htmlText = (((("<span class=\"" + tag) + "\">") + _arg1) + "</span>"); _text = _arg1; _draw(); resize(); } override protected function layout():void{ _textField.type = TextFieldType.DYNAMIC; _textField.autoSize = TextFieldAutoSize.LEFT; _textField.background = false; _textField.selectable = selectable; _textField.multiline = true; _textField.styleSheet = Style.sheet; this.text = _text; addChild(_background); addChild(_textField); } public function set tag(_arg1:String):void{ _tag = _arg1; text = ""; } public function onLink(_arg1:TextEvent):void{ } override protected function dispose():void{ _textField.removeEventListener(TextEvent.LINK, onLink); super.dispose(); } } }//package com.google.analytics.debug
Section 117
//Layout (com.google.analytics.debug.Layout) package com.google.analytics.debug { import flash.events.*; import flash.display.*; import com.google.analytics.core.*; import flash.net.*; import com.google.analytics.*; public class Layout implements ILayout { private var _display:DisplayObject; private var _infoQueue:Array; private var _maxCharPerLine:int;// = 85 private var _hasInfo:Boolean; private var _warningQueue:Array; private var _hasDebug:Boolean; private var _hasWarning:Boolean; private var _mainPanel:Panel; private var _GRAlertQueue:Array; private var _debug:DebugConfiguration; public var visualDebug:Debug; private var _hasGRAlert:Boolean; public function Layout(_arg1:DebugConfiguration, _arg2:DisplayObject){ _display = _arg2; _debug = _arg1; _hasWarning = false; _hasInfo = false; _hasDebug = false; _hasGRAlert = false; _warningQueue = []; _infoQueue = []; _GRAlertQueue = []; } private function onKey(_arg1:KeyboardEvent=null):void{ switch (_arg1.keyCode){ case _debug.showHideKey: _mainPanel.visible = !(_mainPanel.visible); break; case _debug.destroyKey: destroy(); break; }; } public function createWarning(_arg1:String):void{ if (((_hasWarning) || (!(isAvailable())))){ _warningQueue.push(_arg1); return; }; _arg1 = _filterMaxChars(_arg1); _hasWarning = true; var _local2:Warning = new Warning(_arg1, _debug.warningTimeout); addToPanel("analytics", _local2); _local2.addEventListener(Event.REMOVED_FROM_STAGE, _clearWarning, false, 0, true); if (_hasDebug){ visualDebug.writeBold(_arg1); }; } public function bringToFront(_arg1:DisplayObject):void{ _display.stage.setChildIndex(_arg1, (_display.stage.numChildren - 1)); } public function createFailureAlert(_arg1:String):void{ var _local2:AlertAction; if (_debug.verbose){ _arg1 = _filterMaxChars(_arg1); _local2 = new AlertAction("Close", "close", "close"); } else { _local2 = new AlertAction("X", "close", "close"); }; var _local3:Alert = new FailureAlert(_debug, _arg1, [_local2]); addToPanel("analytics", _local3); if (_hasDebug){ if (_debug.verbose){ _arg1 = _arg1.split("\n").join(""); _arg1 = _filterMaxChars(_arg1, 66); }; visualDebug.writeBold(_arg1); }; } public function init():void{ var _local1 = 10; var _local2:uint = (_display.stage.stageWidth - (_local1 * 2)); var _local3:uint = (_display.stage.stageHeight - (_local1 * 2)); var _local4:Panel = new Panel("analytics", _local2, _local3); _local4.alignement = Align.top; _local4.stickToEdge = false; _local4.title = ("Google Analytics v" + GATracker.version); _mainPanel = _local4; addToStage(_local4); bringToFront(_local4); if (_debug.minimizedOnStart){ _mainPanel.onToggle(); }; createVisualDebug(); _display.stage.addEventListener(KeyboardEvent.KEY_DOWN, onKey, false, 0, true); } public function addToPanel(_arg1:String, _arg2:DisplayObject):void{ var _local4:Panel; var _local3:DisplayObject = _display.stage.getChildByName(_arg1); if (_local3){ _local4 = (_local3 as Panel); _local4.addData(_arg2); } else { trace((("panel \"" + _arg1) + "\" not found")); }; } private function _clearInfo(_arg1:Event):void{ _hasInfo = false; if (_infoQueue.length > 0){ createInfo(_infoQueue.shift()); }; } private function _filterMaxChars(_arg1:String, _arg2:int=0):String{ var _local6:String; var _local3 = "\n"; var _local4:Array = []; var _local5:Array = _arg1.split(_local3); if (_arg2 == 0){ _arg2 = _maxCharPerLine; }; var _local7:int; while (_local7 < _local5.length) { _local6 = _local5[_local7]; while (_local6.length > _arg2) { _local4.push(_local6.substr(0, _arg2)); _local6 = _local6.substring(_arg2); }; _local4.push(_local6); _local7++; }; return (_local4.join(_local3)); } private function _clearGRAlert(_arg1:Event):void{ _hasGRAlert = false; if (_GRAlertQueue.length > 0){ createGIFRequestAlert.apply(this, _GRAlertQueue.shift()); }; } public function createSuccessAlert(_arg1:String):void{ var _local2:AlertAction; if (_debug.verbose){ _arg1 = _filterMaxChars(_arg1); _local2 = new AlertAction("Close", "close", "close"); } else { _local2 = new AlertAction("X", "close", "close"); }; var _local3:Alert = new SuccessAlert(_debug, _arg1, [_local2]); addToPanel("analytics", _local3); if (_hasDebug){ if (_debug.verbose){ _arg1 = _arg1.split("\n").join(""); _arg1 = _filterMaxChars(_arg1, 66); }; visualDebug.writeBold(_arg1); }; } public function isAvailable():Boolean{ return (!((_display.stage == null))); } public function createAlert(_arg1:String):void{ _arg1 = _filterMaxChars(_arg1); var _local2:Alert = new Alert(_arg1, [new AlertAction("Close", "close", "close")]); addToPanel("analytics", _local2); if (_hasDebug){ visualDebug.writeBold(_arg1); }; } public function createInfo(_arg1:String):void{ if (((_hasInfo) || (!(isAvailable())))){ _infoQueue.push(_arg1); return; }; _arg1 = _filterMaxChars(_arg1); _hasInfo = true; var _local2:Info = new Info(_arg1, _debug.infoTimeout); addToPanel("analytics", _local2); _local2.addEventListener(Event.REMOVED_FROM_STAGE, _clearInfo, false, 0, true); if (_hasDebug){ visualDebug.write(_arg1); }; } public function createGIFRequestAlert(_arg1:String, _arg2:URLRequest, _arg3:GIFRequest):void{ var message = _arg1; var request = _arg2; var ref = _arg3; if (_hasGRAlert){ _GRAlertQueue.push([message, request, ref]); return; }; _hasGRAlert = true; var f:Function = function ():void{ ref.sendRequest(request); }; message = _filterMaxChars(message); var gra:GIFRequestAlert = new GIFRequestAlert(message, [new AlertAction("OK", "ok", f), new AlertAction("Cancel", "cancel", "close")]); addToPanel("analytics", gra); gra.addEventListener(Event.REMOVED_FROM_STAGE, _clearGRAlert, false, 0, true); if (_hasDebug){ if (_debug.verbose){ message = message.split("\n").join(""); message = _filterMaxChars(message, 66); }; visualDebug.write(message); }; } public function createVisualDebug():void{ if (!visualDebug){ visualDebug = new Debug(); visualDebug.alignement = Align.bottom; visualDebug.stickToEdge = true; addToPanel("analytics", visualDebug); _hasDebug = true; }; } public function addToStage(_arg1:DisplayObject):void{ _display.stage.addChild(_arg1); } private function _clearWarning(_arg1:Event):void{ _hasWarning = false; if (_warningQueue.length > 0){ createWarning(_warningQueue.shift()); }; } public function createPanel(_arg1:String, _arg2:uint, _arg3:uint):void{ var _local4:Panel = new Panel(_arg1, _arg2, _arg3); _local4.alignement = Align.center; _local4.stickToEdge = false; addToStage(_local4); bringToFront(_local4); } public function destroy():void{ _mainPanel.close(); _debug.layout = null; } } }//package com.google.analytics.debug
Section 118
//Margin (com.google.analytics.debug.Margin) package com.google.analytics.debug { public class Margin { public var top:int; public var left:int; public var bottom:int; public var right:int; public function Margin(_arg1:int=0, _arg2:int=0, _arg3:int=0, _arg4:int=0){ this.top = _arg1; this.bottom = _arg2; this.left = _arg3; this.right = _arg4; } } }//package com.google.analytics.debug
Section 119
//Panel (com.google.analytics.debug.Panel) package com.google.analytics.debug { import flash.events.*; import flash.display.*; public class Panel extends UISprite { private var _savedH:uint; private var _data:UISprite; private var _mask:Sprite; private var _background:Shape; private var _savedW:uint; private var _stickToEdge:Boolean; private var _border:Shape; private var _borderColor:uint; protected var baseAlpha:Number; private var _backgroundColor:uint; private var _title:Label; private var _colapsed:Boolean; private var _name:String; public function Panel(_arg1:String, _arg2:uint, _arg3:uint, _arg4:uint=0, _arg5:uint=0, _arg6:Number=0.3, _arg7:Align=null, _arg8:Boolean=false){ _name = _arg1; this.name = _arg1; this.mouseEnabled = false; _colapsed = false; forcedWidth = _arg2; forcedHeight = _arg3; this.baseAlpha = _arg6; _background = new Shape(); _data = new UISprite(); _data.forcedWidth = _arg2; _data.forcedHeight = _arg3; _data.mouseEnabled = false; _title = new Label(_arg1, "uiLabel", 0xFFFFFF, Align.topLeft, _arg8); _title.buttonMode = true; _title.margin.top = 0.6; _title.margin.left = 0.6; _title.addEventListener(MouseEvent.CLICK, onToggle); _title.mouseChildren = false; _border = new Shape(); _mask = new Sprite(); _mask.useHandCursor = false; _mask.mouseEnabled = false; _mask.mouseChildren = false; if (_arg7 == null){ _arg7 = Align.none; }; this.alignement = _arg7; this.stickToEdge = _arg8; if (_arg4 == 0){ _arg4 = Style.backgroundColor; }; _backgroundColor = _arg4; if (_arg5 == 0){ _arg5 = Style.borderColor; }; _borderColor = _arg5; } public function get stickToEdge():Boolean{ return (_stickToEdge); } public function onToggle(_arg1:MouseEvent=null):void{ if (_colapsed){ _data.visible = true; } else { _data.visible = false; }; _colapsed = !(_colapsed); _update(); resize(); } public function set stickToEdge(_arg1:Boolean):void{ _stickToEdge = _arg1; _title.stickToEdge = _arg1; } override protected function dispose():void{ _title.removeEventListener(MouseEvent.CLICK, onToggle); super.dispose(); } private function _draw():void{ var _local1:uint; var _local2:uint; if (((_savedW) && (_savedH))){ forcedWidth = _savedW; forcedHeight = _savedH; }; if (!_colapsed){ _local1 = forcedWidth; _local2 = forcedHeight; } else { _local1 = _title.width; _local2 = _title.height; _savedW = forcedWidth; _savedH = forcedHeight; forcedWidth = _local1; forcedHeight = _local2; }; var _local3:Graphics = _background.graphics; _local3.clear(); _local3.beginFill(_backgroundColor); Background.drawRounded(this, _local3, _local1, _local2); _local3.endFill(); var _local4:Graphics = _data.graphics; _local4.clear(); _local4.beginFill(_backgroundColor, 0); Background.drawRounded(this, _local4, _local1, _local2); _local4.endFill(); var _local5:Graphics = _border.graphics; _local5.clear(); _local5.lineStyle(0.1, _borderColor); Background.drawRounded(this, _local5, _local1, _local2); _local5.endFill(); var _local6:Graphics = _mask.graphics; _local6.clear(); _local6.beginFill(_backgroundColor); Background.drawRounded(this, _local6, (_local1 + 1), (_local2 + 1)); _local6.endFill(); } public function get title():String{ return (_title.text); } private function _update():void{ _draw(); if (baseAlpha < 1){ _background.alpha = baseAlpha; _border.alpha = baseAlpha; }; } public function addData(_arg1:DisplayObject):void{ _data.addChild(_arg1); } override protected function layout():void{ _update(); addChild(_background); addChild(_data); addChild(_title); addChild(_border); addChild(_mask); mask = _mask; } public function set title(_arg1:String):void{ _title.text = _arg1; } public function close():void{ dispose(); if (parent != null){ parent.removeChild(this); }; } } }//package com.google.analytics.debug
Section 120
//Style (com.google.analytics.debug.Style) package com.google.analytics.debug { public const Style:_Style = new _Style(); }//package com.google.analytics.debug
Section 121
//SuccessAlert (com.google.analytics.debug.SuccessAlert) package com.google.analytics.debug { public class SuccessAlert extends Alert { public function SuccessAlert(_arg1:DebugConfiguration, _arg2:String, _arg3:Array){ var _local4:Align = Align.bottomLeft; var _local5:Boolean; var _local6:Boolean; if (_arg1.verbose){ _arg2 = ((("<u><span class=\"uiAlertTitle\">Success</span>" + spaces(18)) + "</u>\n\n") + _arg2); _local4 = Align.center; _local5 = false; _local6 = true; }; super(_arg2, _arg3, "uiSuccess", Style.successColor, _local4, _local5, _local6); } } }//package com.google.analytics.debug
Section 122
//UISprite (com.google.analytics.debug.UISprite) package com.google.analytics.debug { import flash.events.*; import flash.display.*; public class UISprite extends Sprite { private var _forcedWidth:uint; public var margin:Margin; protected var alignTarget:DisplayObject; protected var listenResize:Boolean; public var alignement:Align; private var _forcedHeight:uint; public function UISprite(_arg1:DisplayObject=null){ listenResize = false; alignement = Align.none; this.alignTarget = _arg1; margin = new Margin(); addEventListener(Event.ADDED_TO_STAGE, _onAddedToStage); addEventListener(Event.REMOVED_FROM_STAGE, _onRemovedFromStage); } public function get forcedHeight():uint{ if (_forcedHeight){ return (_forcedHeight); }; return (height); } private function _onAddedToStage(_arg1:Event):void{ layout(); resize(); } protected function dispose():void{ var _local1:DisplayObject; var _local2:int; while (_local2 < numChildren) { _local1 = getChildAt(_local2); if (_local1){ removeChild(_local1); }; _local2++; }; } public function set forcedHeight(_arg1:uint):void{ _forcedHeight = _arg1; } public function set forcedWidth(_arg1:uint):void{ _forcedWidth = _arg1; } protected function layout():void{ } public function get forcedWidth():uint{ if (_forcedWidth){ return (_forcedWidth); }; return (width); } public function alignTo(_arg1:Align, _arg2:DisplayObject=null):void{ var _local3:uint; var _local4:uint; var _local5:uint; var _local6:uint; var _local7:UISprite; if (_arg2 == null){ if ((parent is Stage)){ _arg2 = this.stage; } else { _arg2 = parent; }; }; if (_arg2 == this.stage){ if (this.stage == null){ return; }; _local3 = this.stage.stageHeight; _local4 = this.stage.stageWidth; _local5 = 0; _local6 = 0; } else { _local7 = (_arg2 as UISprite); if (_local7.forcedHeight){ _local3 = _local7.forcedHeight; } else { _local3 = _local7.height; }; if (_local7.forcedWidth){ _local4 = _local7.forcedWidth; } else { _local4 = _local7.width; }; _local5 = 0; _local6 = 0; }; switch (_arg1){ case Align.top: x = ((_local4 / 2) - (forcedWidth / 2)); y = (_local6 + margin.top); break; case Align.bottom: x = ((_local4 / 2) - (forcedWidth / 2)); y = (((_local6 + _local3) - forcedHeight) - margin.bottom); break; case Align.left: x = (_local5 + margin.left); y = ((_local3 / 2) - (forcedHeight / 2)); break; case Align.right: x = (((_local5 + _local4) - forcedWidth) - margin.right); y = ((_local3 / 2) - (forcedHeight / 2)); break; case Align.center: x = ((_local4 / 2) - (forcedWidth / 2)); y = ((_local3 / 2) - (forcedHeight / 2)); break; case Align.topLeft: x = (_local5 + margin.left); y = (_local6 + margin.top); break; case Align.topRight: x = (((_local5 + _local4) - forcedWidth) - margin.right); y = (_local6 + margin.top); break; case Align.bottomLeft: x = (_local5 + margin.left); y = (((_local6 + _local3) - forcedHeight) - margin.bottom); break; case Align.bottomRight: x = (((_local5 + _local4) - forcedWidth) - margin.right); y = (((_local6 + _local3) - forcedHeight) - margin.bottom); break; }; if (((!(listenResize)) && (!((_arg1 == Align.none))))){ _arg2.addEventListener(Event.RESIZE, onResize, false, 0, true); listenResize = true; }; this.alignement = _arg1; this.alignTarget = _arg2; } private function _onRemovedFromStage(_arg1:Event):void{ removeEventListener(Event.ADDED_TO_STAGE, _onAddedToStage); removeEventListener(Event.REMOVED_FROM_STAGE, _onRemovedFromStage); dispose(); } public function resize():void{ if (alignement != Align.none){ alignTo(alignement, alignTarget); }; } protected function onResize(_arg1:Event):void{ resize(); } } }//package com.google.analytics.debug
Section 123
//Warning (com.google.analytics.debug.Warning) package com.google.analytics.debug { import flash.events.*; import flash.utils.*; public class Warning extends Label { private var _timer:Timer; public function Warning(_arg1:String="", _arg2:uint=3000){ super(_arg1, "uiWarning", Style.warningColor, Align.top, false); margin.top = 32; if (_arg2 > 0){ _timer = new Timer(_arg2, 1); _timer.start(); _timer.addEventListener(TimerEvent.TIMER_COMPLETE, onComplete, false, 0, true); }; } public function close():void{ if (parent != null){ parent.removeChild(this); }; } override public function onLink(_arg1:TextEvent):void{ switch (_arg1.text){ case "hide": close(); break; }; } public function onComplete(_arg1:TimerEvent):void{ close(); } } }//package com.google.analytics.debug
Section 124
//VisualDebugMode (com.google.analytics.debug.VisualDebugMode) package com.google.analytics.debug { public class VisualDebugMode { private var _value:int; private var _name:String; public static const advanced:VisualDebugMode = new VisualDebugMode(1, "advanced"); ; public static const geek:VisualDebugMode = new VisualDebugMode(2, "geek"); ; public static const basic:VisualDebugMode = new VisualDebugMode(0, "basic"); ; public function VisualDebugMode(_arg1:int=0, _arg2:String=""){ _value = _arg1; _name = _arg2; } public function valueOf():int{ return (_value); } public function toString():String{ return (_name); } } }//package com.google.analytics.debug
Section 125
//AnalyticsEvent (com.google.analytics.events.AnalyticsEvent) package com.google.analytics.events { import flash.events.*; import com.google.analytics.*; public class AnalyticsEvent extends Event { public var tracker:AnalyticsTracker; public static const READY:String = "ready"; public function AnalyticsEvent(_arg1:String, _arg2:AnalyticsTracker, _arg3:Boolean=false, _arg4:Boolean=false){ super(_arg1, _arg3, _arg4); this.tracker = _arg2; } override public function clone():Event{ return (new AnalyticsEvent(type, tracker, bubbles, cancelable)); } } }//package com.google.analytics.events
Section 126
//AdSenseGlobals (com.google.analytics.external.AdSenseGlobals) package com.google.analytics.external { import com.google.analytics.debug.*; public class AdSenseGlobals extends JavascriptProxy { private var _gaGlobalVerified:Boolean;// = false public static var gaGlobal_js:XML = <script> <![CDATA[ function() { try { gaGlobal } catch(e) { gaGlobal = {} ; } } ]]> </script> ; public function AdSenseGlobals(_arg1:DebugConfiguration){ super(_arg1); } public function set vid(_arg1:String):void{ if (!isAvailable()){ return; }; _verify(); setProperty("gaGlobal.vid", _arg1); } public function get hid():String{ if (!isAvailable()){ return (null); }; _verify(); return (getProperty("gaGlobal.hid")); } public function set hid(_arg1:String):void{ if (!isAvailable()){ return; }; _verify(); setProperty("gaGlobal.hid", _arg1); } public function get dh():String{ if (!isAvailable()){ return (null); }; _verify(); return (getProperty("gaGlobal.dh")); } public function get sid():String{ if (!isAvailable()){ return (null); }; _verify(); return (getProperty("gaGlobal.sid")); } public function get vid():String{ if (!isAvailable()){ return (null); }; _verify(); return (getProperty("gaGlobal.vid")); } private function _verify():void{ if (!_gaGlobalVerified){ executeBlock(gaGlobal_js); _gaGlobalVerified = true; }; } public function set sid(_arg1:String):void{ if (!isAvailable()){ return; }; _verify(); setProperty("gaGlobal.sid", _arg1); } public function get gaGlobal():Object{ if (!isAvailable()){ return (null); }; _verify(); return (getProperty("gaGlobal")); } } }//package com.google.analytics.external
Section 127
//HTMLDOM (com.google.analytics.external.HTMLDOM) package com.google.analytics.external { import com.google.analytics.debug.*; public class HTMLDOM extends JavascriptProxy { private var _referrer:String; private var _language:String; private var _host:String; private var _pathname:String; private var _location:String; private var _search:String; private var _characterSet:String; private var _title:String; private var _protocol:String; private var _colorDepth:String; public static var cache_properties_js:XML = <script> <![CDATA[ function() { var obj = {}; obj.host = document.location.host; obj.language = navigator.language ? navigator.language : navigator.browserLanguage; obj.characterSet = document.characterSet ? document.characterSet : document.charset; obj.colorDepth = window.screen.colorDepth; obj.location = document.location.toString(); obj.pathname = document.location.pathname; obj.protocol = document.location.protocol; obj.search = document.location.search; obj.referrer = document.referrer; obj.title = document.title; return obj; } ]]> </script> ; public function HTMLDOM(_arg1:DebugConfiguration){ super(_arg1); } public function get search():String{ if (_search){ return (_search); }; if (!isAvailable()){ return (null); }; _search = getProperty("document.location.search"); return (_search); } public function get location():String{ if (_location){ return (_location); }; if (!isAvailable()){ return (null); }; _location = getPropertyString("document.location"); return (_location); } public function get pathname():String{ if (_pathname){ return (_pathname); }; if (!isAvailable()){ return (null); }; _pathname = getProperty("document.location.pathname"); return (_pathname); } public function cacheProperties():void{ if (!isAvailable()){ return; }; var _local1:Object = call(cache_properties_js); if (_local1){ _host = _local1.host; _language = _local1.language; _characterSet = _local1.characterSet; _colorDepth = _local1.colorDepth; _location = _local1.location; _pathname = _local1.pathname; _protocol = _local1.protocol; _search = _local1.search; _referrer = _local1.referrer; _title = _local1.title; }; } public function get language():String{ if (_language){ return (_language); }; if (!isAvailable()){ return (null); }; var _local1:String = getProperty("navigator.language"); if (_local1 == null){ _local1 = getProperty("navigator.browserLanguage"); }; _language = _local1; return (_language); } public function get colorDepth():String{ if (_colorDepth){ return (_colorDepth); }; if (!isAvailable()){ return (null); }; _colorDepth = getProperty("window.screen.colorDepth"); return (_colorDepth); } public function get referrer():String{ if (_referrer){ return (_referrer); }; if (!isAvailable()){ return (null); }; _referrer = getProperty("document.referrer"); return (_referrer); } public function get protocol():String{ if (_protocol){ return (_protocol); }; if (!isAvailable()){ return (null); }; _protocol = getProperty("document.location.protocol"); return (_protocol); } public function get host():String{ if (_host){ return (_host); }; if (!isAvailable()){ return (null); }; _host = getProperty("document.location.host"); return (_host); } public function get characterSet():String{ if (_characterSet){ return (_characterSet); }; if (!isAvailable()){ return (null); }; var _local1:String = getProperty("document.characterSet"); if (_local1 == null){ _local1 = getProperty("document.charset"); }; _characterSet = _local1; return (_characterSet); } public function get title():String{ if (_title){ return (_title); }; if (!isAvailable()){ return (null); }; _title = getProperty("document.title"); return (_title); } } }//package com.google.analytics.external
Section 128
//JavascriptProxy (com.google.analytics.external.JavascriptProxy) package com.google.analytics.external { import com.google.analytics.debug.*; import flash.system.*; import flash.external.*; public class JavascriptProxy { private var _notAvailableWarning:Boolean;// = true private var _debug:DebugConfiguration; public static var setProperty_js:XML = <script> <![CDATA[ function( path , value ) { var paths; var prop; if( path.indexOf(".") > 0 ) { paths = path.split("."); prop = paths.pop() ; } else { paths = []; prop = path; } var target = window ; var len = paths.length ; for( var i = 0 ; i < len ; i++ ) { target = target[ paths[i] ] ; } target[ prop ] = value ; } ]]> </script> ; public static var hasProperty_js:XML = <script> <![CDATA[ function( path ) { var paths; if( path.indexOf(".") > 0 ) { paths = path.split("."); } else { paths = [path]; } var target = window ; var len = paths.length ; for( var i = 0 ; i < len ; i++ ) { target = target[ paths[i] ] ; } if( target ) { return true; } else { return false; } } ]]> </script> ; public static var setPropertyRef_js:XML = <script> <![CDATA[ function( path , target ) { var paths; var prop; if( path.indexOf(".") > 0 ) { paths = path.split("."); prop = paths.pop() ; } else { paths = []; prop = path; } alert( "paths:"+paths.length+", prop:"+prop ); var targets; var name; if( target.indexOf(".") > 0 ) { targets = target.split("."); name = targets.pop(); } else { targets = []; name = target; } alert( "targets:"+targets.length+", name:"+name ); var root = window; var len = paths.length; for( var i = 0 ; i < len ; i++ ) { root = root[ paths[i] ] ; } var ref = window; var depth = targets.length; for( var j = 0 ; j < depth ; j++ ) { ref = ref[ targets[j] ] ; } root[ prop ] = ref[name] ; } ]]> </script> ; public function JavascriptProxy(_arg1:DebugConfiguration){ _debug = _arg1; } public function getProperty(_arg1:String){ return (call((_arg1 + ".valueOf"))); } public function hasProperty(_arg1:String):Boolean{ return (call(hasProperty_js, _arg1)); } public function setProperty(_arg1:String, _arg2):void{ call(setProperty_js, _arg1, _arg2); } public function executeBlock(_arg1:String):void{ var data = _arg1; if (isAvailable()){ try { ExternalInterface.call(data); } catch(e:SecurityError) { if (_debug.javascript){ _debug.warning("ExternalInterface is not allowed.\nEnsure that allowScriptAccess is set to \"always\" in the Flash embed HTML."); }; } catch(e:Error) { if (_debug.javascript){ _debug.warning(("ExternalInterface failed to make the call\nreason: " + e.message)); }; }; }; } public function getPropertyString(_arg1:String):String{ return (call((_arg1 + ".toString"))); } public function setPropertyByReference(_arg1:String, _arg2:String):void{ call(setPropertyRef_js, _arg1, _arg2); } public function call(_arg1:String, ... _args){ var output:String; var functionName = _arg1; var args = _args; if (isAvailable()){ try { if (((_debug.javascript) && (_debug.verbose))){ output = ""; output = ("Flash->JS: " + functionName); output = (output + "( "); if (args.length > 0){ output = (output + args.join(",")); }; output = (output + " )"); _debug.info(output); }; args.unshift(functionName); return (ExternalInterface.call.apply(ExternalInterface, args)); } catch(e:SecurityError) { if (_debug.javascript){ _debug.warning("ExternalInterface is not allowed.\nEnsure that allowScriptAccess is set to \"always\" in the Flash embed HTML."); }; } catch(e:Error) { if (_debug.javascript){ _debug.warning(("ExternalInterface failed to make the call\nreason: " + e.message)); }; }; }; return (null); } public function isAvailable():Boolean{ var _local1:Boolean = ExternalInterface.available; if (((_local1) && ((Capabilities.playerType == "External")))){ _local1 = false; }; if (((((!(_local1)) && (_debug.javascript))) && (_notAvailableWarning))){ _debug.warning("ExternalInterface is not available."); _notAvailableWarning = false; }; return (_local1); } } }//package com.google.analytics.external
Section 129
//Environment (com.google.analytics.utils.Environment) package com.google.analytics.utils { import com.google.analytics.debug.*; import com.google.analytics.external.*; import flash.system.*; public class Environment { private var _dom:HTMLDOM; private var _appName:String; private var _debug:DebugConfiguration; private var _appVersion:Version; private var _url:String; private var _protocol:Protocols; private var _userAgent:UserAgent; public function Environment(_arg1:String="", _arg2:String="", _arg3:String="", _arg4:DebugConfiguration=null, _arg5:HTMLDOM=null){ var _local6:Version; super(); if (_arg2 == ""){ if (isAIR()){ _arg2 = "AIR"; } else { _arg2 = "Flash"; }; }; if (_arg3 == ""){ _local6 = flashVersion; } else { _local6 = Version.fromString(_arg3); }; _url = _arg1; _appName = _arg2; _appVersion = _local6; _debug = _arg4; _dom = _arg5; } public function isAIR():Boolean{ return ((((playerType == "Desktop")) && ((Security.sandboxType.toString() == "application")))); } public function get screenWidth():Number{ return (Capabilities.screenResolutionX); } public function get playerType():String{ return (Capabilities.playerType); } public function get locationSearch():String{ var _local1:String = _dom.search; if (_local1){ return (_local1); }; return (""); } public function get protocol():Protocols{ if (!_protocol){ _findProtocol(); }; return (_protocol); } public function get flashVersion():Version{ var _local1:Version = Version.fromString(Capabilities.version.split(" ")[1], ","); return (_local1); } public function get userAgent():UserAgent{ if (!_userAgent){ _userAgent = new UserAgent(this, appName, appVersion.toString(4)); }; return (_userAgent); } public function get languageEncoding():String{ var _local1:String; if (System.useCodePage){ _local1 = _dom.characterSet; if (_local1){ return (_local1); }; return ("-"); }; return ("UTF-8"); } public function get appName():String{ return (_appName); } public function get screenColorDepth():String{ var _local1:String; switch (Capabilities.screenColor){ case "bw": _local1 = "1"; break; case "gray": _local1 = "2"; break; case "color": default: _local1 = "24"; }; var _local2:String = _dom.colorDepth; if (_local2){ _local1 = _local2; }; return (_local1); } private function _findProtocol():void{ var _local4:String; var _local5:String; var _local1:Protocols = Protocols.none; if (_url != ""){ _local4 = _url.toLowerCase(); _local5 = _local4.substr(0, 5); switch (_local5){ case "file:": _local1 = Protocols.file; break; case "http:": _local1 = Protocols.HTTP; break; case "https": if (_local4.charAt(5) == ":"){ _local1 = Protocols.HTTPS; }; break; default: _protocol = Protocols.none; }; }; var _local2:String = _dom.protocol; var _local3:String = (_local1.toString() + ":").toLowerCase(); if (((((_local2) && (!((_local2 == _local3))))) && (_debug))){ _debug.warning(((("Protocol mismatch: SWF=" + _local3) + ", DOM=") + _local2)); }; _protocol = _local1; } public function get locationSWFPath():String{ return (_url); } public function get platform():String{ var _local1:String = Capabilities.manufacturer; return (_local1.split("Adobe ")[1]); } public function get operatingSystem():String{ return (Capabilities.os); } public function set appName(_arg1:String):void{ _appName = _arg1; userAgent.applicationProduct = _arg1; } function set url(_arg1:String):void{ _url = _arg1; } public function get referrer():String{ var _local1:String = _dom.referrer; if (_local1){ return (_local1); }; if (protocol == Protocols.file){ return ("localhost"); }; return (""); } public function isInHTML():Boolean{ return ((Capabilities.playerType == "PlugIn")); } public function get language():String{ var _local1:String = _dom.language; var _local2:String = Capabilities.language; if (_local1){ if ((((_local1.length > _local2.length)) && ((_local1.substr(0, _local2.length) == _local2)))){ _local2 = _local1; }; }; return (_local2); } public function get domainName():String{ var _local1:String; var _local2:String; var _local3:int; if ((((protocol == Protocols.HTTP)) || ((protocol == Protocols.HTTPS)))){ _local1 = _url.toLowerCase(); if (protocol == Protocols.HTTP){ _local2 = _local1.split("http://").join(""); } else { if (protocol == Protocols.HTTPS){ _local2 = _local1.split("https://").join(""); }; }; _local3 = _local2.indexOf("/"); if (_local3 > -1){ _local2 = _local2.substring(0, _local3); }; return (_local2); }; if (protocol == Protocols.file){ return ("localhost"); }; return (""); } public function set userAgent(_arg1:UserAgent):void{ _userAgent = _arg1; } public function set appVersion(_arg1:Version):void{ _appVersion = _arg1; userAgent.applicationVersion = _arg1.toString(4); } public function get screenHeight():Number{ return (Capabilities.screenResolutionY); } public function get locationPath():String{ var _local1:String = _dom.pathname; if (_local1){ return (_local1); }; return (""); } public function get documentTitle():String{ var _local1:String = _dom.title; if (_local1){ return (_local1); }; return (""); } public function get appVersion():Version{ return (_appVersion); } } }//package com.google.analytics.utils
Section 130
//Protocols (com.google.analytics.utils.Protocols) package com.google.analytics.utils { public class Protocols { private var _value:int; private var _name:String; public static const none:Protocols = new Protocols(0, "none"); ; public static const HTTPS:Protocols = new Protocols(3, "HTTPS"); ; public static const file:Protocols = new Protocols(1, "file"); ; public static const HTTP:Protocols = new Protocols(2, "HTTP"); ; public function Protocols(_arg1:int=0, _arg2:String=""){ _value = _arg1; _name = _arg2; } public function valueOf():int{ return (_value); } public function toString():String{ return (_name); } } }//package com.google.analytics.utils
Section 131
//Timespan (com.google.analytics.utils.Timespan) package com.google.analytics.utils { public class Timespan { public static var sixmonths:Number = 15768000; public static var twoyears:Number = 63072000; public static var thirtyminutes:Number = 1800; } }//package com.google.analytics.utils
Section 132
//URL (com.google.analytics.utils.URL) package com.google.analytics.utils { public class URL { private var _url:String; public function URL(_arg1:String=""){ _url = _arg1.toLowerCase(); } public function get domain():String{ var _local1:Array; if (((!((hostName == ""))) && ((hostName.indexOf(".") > -1)))){ _local1 = hostName.split("."); switch (_local1.length){ case 2: return (hostName); case 3: if (_local1[1] == "co"){ return (hostName); }; _local1.shift(); return (_local1.join(".")); case 4: _local1.shift(); return (_local1.join(".")); }; }; return (""); } public function get path():String{ var _local1:String = _url; if (_local1.indexOf("://") > -1){ _local1 = _local1.split("://")[1]; }; if (_local1.indexOf(hostName) == 0){ _local1 = _local1.substr(hostName.length); }; if (_local1.indexOf("?") > -1){ _local1 = _local1.split("?")[0]; }; if (_local1.charAt(0) != "/"){ _local1 = ("/" + _local1); }; return (_local1); } public function get protocol():Protocols{ var _local1:String = _url.split("://")[0]; switch (_local1){ case "file": return (Protocols.file); case "http": return (Protocols.HTTP); case "https": return (Protocols.HTTPS); default: return (Protocols.none); }; } public function get hostName():String{ var _local1:String = _url; if (_local1.indexOf("://") > -1){ _local1 = _local1.split("://")[1]; }; if (_local1.indexOf("/") > -1){ _local1 = _local1.split("/")[0]; }; if (_local1.indexOf("?") > -1){ _local1 = _local1.split("?")[0]; }; if ((((protocol == Protocols.file)) || ((protocol == Protocols.none)))){ return (""); }; return (_local1); } public function get subDomain():String{ if (((!((domain == ""))) && (!((domain == hostName))))){ return (hostName.split(("." + domain)).join("")); }; return (""); } public function get search():String{ var _local1:String = _url; if (_local1.indexOf("://") > -1){ _local1 = _local1.split("://")[1]; }; if (_local1.indexOf(hostName) == 0){ _local1 = _local1.substr(hostName.length); }; if (_local1.indexOf("?") > -1){ _local1 = _local1.split("?")[1]; } else { _local1 = ""; }; return (_local1); } } }//package com.google.analytics.utils
Section 133
//UserAgent (com.google.analytics.utils.UserAgent) package com.google.analytics.utils { import com.google.analytics.core.*; import flash.system.*; public class UserAgent { private var _localInfo:Environment; private var _applicationProduct:String; private var _version:Version; public static var minimal:Boolean = false; public function UserAgent(_arg1:Environment, _arg2:String="", _arg3:String=""){ _localInfo = _arg1; applicationProduct = _arg2; _version = Version.fromString(_arg3); } public function get tamarinProductToken():String{ if (UserAgent.minimal){ return (""); }; if (System.vmVersion){ return (("Tamarin/" + Utils.trim(System.vmVersion, true))); }; return (""); } public function get applicationVersion():String{ return (_version.toString(2)); } public function get vendorProductToken():String{ var _local1 = ""; if (_localInfo.isAIR()){ _local1 = (_local1 + "AIR"); } else { _local1 = (_local1 + "FlashPlayer"); }; _local1 = (_local1 + "/"); _local1 = (_local1 + _version.toString(3)); return (_local1); } public function toString():String{ var _local1 = ""; _local1 = (_local1 + applicationProductToken); if (applicationComment != ""){ _local1 = (_local1 + (" " + applicationComment)); }; if (tamarinProductToken != ""){ _local1 = (_local1 + (" " + tamarinProductToken)); }; if (vendorProductToken != ""){ _local1 = (_local1 + (" " + vendorProductToken)); }; return (_local1); } public function get applicationComment():String{ var _local1:Array = []; _local1.push(_localInfo.platform); _local1.push(_localInfo.playerType); if (!UserAgent.minimal){ _local1.push(_localInfo.operatingSystem); _local1.push(_localInfo.language); }; if (Capabilities.isDebugger){ _local1.push("DEBUG"); }; if (_local1.length > 0){ return ((("(" + _local1.join("; ")) + ")")); }; return (""); } public function set applicationVersion(_arg1:String):void{ _version = Version.fromString(_arg1); } public function get applicationProductToken():String{ var _local1:String = applicationProduct; if (applicationVersion != ""){ _local1 = (_local1 + ("/" + applicationVersion)); }; return (_local1); } public function set applicationProduct(_arg1:String):void{ _applicationProduct = _arg1; } public function get applicationProduct():String{ return (_applicationProduct); } } }//package com.google.analytics.utils
Section 134
//Variables (com.google.analytics.utils.Variables) package com.google.analytics.utils { import flash.net.*; public dynamic class Variables { public var post:Array; public var URIencode:Boolean; public var pre:Array; public var sort:Boolean;// = true public function Variables(_arg1:String=null, _arg2:Array=null, _arg3:Array=null){ pre = []; post = []; super(); if (_arg1){ decode(_arg1); }; if (_arg2){ this.pre = _arg2; }; if (_arg3){ this.post = _arg3; }; } private function _join(_arg1:Variables):void{ var _local2:String; if (!_arg1){ return; }; for (_local2 in _arg1) { this[_local2] = _arg1[_local2]; }; } public function join(... _args):void{ var _local2:int = _args.length; var _local3:int; while (_local3 < _local2) { if (!(_args[_local3] is Variables)){ } else { _join(_args[_local3]); }; _local3++; }; } public function toString():String{ var _local2:String; var _local3:String; var _local4:String; var _local5:int; var _local6:int; var _local7:String; var _local8:String; var _local1:Array = []; for (_local3 in this) { _local2 = this[_local3]; if (URIencode){ _local2 = encodeURI(_local2); }; _local1.push(((_local3 + "=") + _local2)); }; if (sort){ _local1.sort(); }; if (pre.length > 0){ pre.reverse(); _local5 = 0; while (_local5 < pre.length) { _local7 = pre[_local5]; _local6 = 0; while (_local6 < _local1.length) { _local4 = _local1[_local6]; if (_local4.indexOf(_local7) == 0){ _local1.unshift(_local1.splice(_local6, 1)[0]); }; _local6++; }; _local5++; }; pre.reverse(); }; if (post.length > 0){ _local5 = 0; while (_local5 < post.length) { _local8 = post[_local5]; _local6 = 0; while (_local6 < _local1.length) { _local4 = _local1[_local6]; if (_local4.indexOf(_local8) == 0){ _local1.push(_local1.splice(_local6, 1)[0]); }; _local6++; }; _local5++; }; }; return (_local1.join("&")); } public function decode(_arg1:String):void{ var _local2:Array; var _local3:String; var _local4:String; var _local5:String; var _local6:Array; if (_arg1 == ""){ return; }; if (_arg1.indexOf("&") > -1){ _local2 = _arg1.split("&"); } else { _local2 = [_arg1]; }; var _local7:int; while (_local7 < _local2.length) { _local3 = _local2[_local7]; if (_local3.indexOf("=") > -1){ _local6 = _local3.split("="); _local4 = _local6[0]; _local5 = decodeURI(_local6[1]); this[_local4] = _local5; }; _local7++; }; } public function toURLVariables():URLVariables{ var _local2:String; var _local1:URLVariables = new URLVariables(); for (_local2 in this) { _local1[_local2] = this[_local2]; }; return (_local1); } } }//package com.google.analytics.utils
Section 135
//Version (com.google.analytics.utils.Version) package com.google.analytics.utils { public class Version { private var _revision:uint; private var _maxBuild:uint;// = 0xFF private var _maxMinor:uint;// = 15 private var _maxMajor:uint;// = 15 private var _separator:String;// = "." private var _maxRevision:uint;// = 0xFFFF private var _build:uint; private var _major:uint; private var _minor:uint; public function Version(_arg1:uint=0, _arg2:uint=0, _arg3:uint=0, _arg4:uint=0){ var _local5:Version; super(); if ((((((((_arg1 > _maxMajor)) && ((_arg2 == 0)))) && ((_arg3 == 0)))) && ((_arg4 == 0)))){ _local5 = Version.fromNumber(_arg1); _arg1 = _local5.major; _arg2 = _local5.minor; _arg3 = _local5.build; _arg4 = _local5.revision; }; this.major = _arg1; this.minor = _arg2; this.build = _arg3; this.revision = _arg4; } public function toString(_arg1:int=0):String{ var _local2:Array; if ((((_arg1 <= 0)) || ((_arg1 > 4)))){ _arg1 = getFields(); }; switch (_arg1){ case 1: _local2 = [major]; break; case 2: _local2 = [major, minor]; break; case 3: _local2 = [major, minor, build]; break; case 4: default: _local2 = [major, minor, build, revision]; }; return (_local2.join(_separator)); } public function set revision(_arg1:uint):void{ _revision = Math.min(_arg1, _maxRevision); } public function get revision():uint{ return (_revision); } public function set build(_arg1:uint):void{ _build = Math.min(_arg1, _maxBuild); } public function set minor(_arg1:uint):void{ _minor = Math.min(_arg1, _maxMinor); } public function get build():uint{ return (_build); } public function set major(_arg1:uint):void{ _major = Math.min(_arg1, _maxMajor); } public function get minor():uint{ return (_minor); } private function getFields():int{ var _local1 = 4; if (revision == 0){ _local1--; }; if ((((_local1 == 3)) && ((build == 0)))){ _local1--; }; if ((((_local1 == 2)) && ((minor == 0)))){ _local1--; }; return (_local1); } public function valueOf():uint{ return (((((major << 28) | (minor << 24)) | (build << 16)) | revision)); } public function get major():uint{ return (_major); } public function equals(_arg1):Boolean{ if (!(_arg1 is Version)){ return (false); }; if ((((((((_arg1.major == major)) && ((_arg1.minor == minor)))) && ((_arg1.build == build)))) && ((_arg1.revision == revision)))){ return (true); }; return (false); } public static function fromString(_arg1:String="", _arg2:String="."):Version{ var _local4:Array; var _local3:Version = new (Version); if ((((_arg1 == "")) || ((_arg1 == null)))){ return (_local3); }; if (_arg1.indexOf(_arg2) > -1){ _local4 = _arg1.split(_arg2); _local3.major = parseInt(_local4[0]); _local3.minor = parseInt(_local4[1]); _local3.build = parseInt(_local4[2]); _local3.revision = parseInt(_local4[3]); } else { _local3.major = parseInt(_arg1); }; return (_local3); } public static function fromNumber(_arg1:Number=0):Version{ var _local2:Version = new (Version); if (((((((((((isNaN(_arg1)) || ((_arg1 == 0)))) || ((_arg1 < 0)))) || ((_arg1 == Number.MAX_VALUE)))) || ((_arg1 == Number.POSITIVE_INFINITY)))) || ((_arg1 == Number.NEGATIVE_INFINITY)))){ return (_local2); }; _local2.major = (_arg1 >>> 28); _local2.minor = ((_arg1 & 251658240) >>> 24); _local2.build = ((_arg1 & 0xFF0000) >>> 16); _local2.revision = (_arg1 & 0xFFFF); return (_local2); } } }//package com.google.analytics.utils
Section 136
//Bridge (com.google.analytics.v4.Bridge) package com.google.analytics.v4 { import com.google.analytics.core.*; import com.google.analytics.debug.*; import com.google.analytics.external.*; public class Bridge implements GoogleAnalyticsAPI { private var _debug:DebugConfiguration; private var _proxy:JavascriptProxy; private var _jsContainer:String;// = "_GATracker" private var _hasGATracker:Boolean;// = false private var _account:String; private static var _linkTrackingObject_js:XML = <script> <![CDATA[ function( container , target ) { var targets ; var name ; if( target.indexOf(".") > 0 ) { targets = target.split("."); name = targets.pop(); } else { targets = []; name = target; } var ref = window; var depth = targets.length; for( var j = 0 ; j < depth ; j++ ) { ref = ref[ targets[j] ] ; } window[container][target] = ref[name] ; } ]]> </script> ; private static var _createTrackingObject_js:XML = <script> <![CDATA[ function( acct ) { _GATracker[acct] = _gat._getTracker(acct); } ]]> </script> ; private static var _injectTrackingObject_js:XML = <script> <![CDATA[ function() { try { _GATracker } catch(e) { _GATracker = {}; } } ]]> </script> ; private static var _checkGAJS_js:XML = <script> <![CDATA[ function() { if( _gat && _gat._getTracker ) { return true; } return false; } ]]> </script> ; private static var _checkValidTrackingObject_js:XML = <script> <![CDATA[ function(acct) { if( _GATracker[acct] && (_GATracker[acct]._getAccount) ) { return true ; } else { return false; } } ]]> </script> ; public function Bridge(_arg1:String, _arg2:DebugConfiguration, _arg3:JavascriptProxy){ var _local4:String; var _local5:String; var _local6:String; super(); _account = _arg1; _debug = _arg2; _proxy = _arg3; if (!_checkGAJS()){ _local4 = ""; _local4 = (_local4 + "ga.js not found, be sure to check if\n"); _local4 = (_local4 + "<script src=\"http://www.google-analytics.com/ga.js\"></script>\n"); _local4 = (_local4 + "is included in the HTML."); _debug.warning(_local4); throw (new Error(_local4)); }; if (!_hasGATracker){ if (((_debug.javascript) && (_debug.verbose))){ _local5 = ""; _local5 = (_local5 + "The Google Analytics tracking code was not found on the container page\n"); _local5 = (_local5 + "we create it"); _debug.info(_local5, VisualDebugMode.advanced); }; _injectTrackingObject(); }; if (Utils.validateAccount(_arg1)){ _createTrackingObject(_arg1); } else { if (_checkTrackingObject(_arg1)){ _linkTrackingObject(_arg1); } else { _local6 = ""; _local6 = (_local6 + (("JS Object \"" + _arg1) + "\" doesn't exist in DOM\n")); _local6 = (_local6 + "Bridge object not created."); _debug.warning(_local6); throw (new Error(_local6)); }; }; } public function link(_arg1:String, _arg2:Boolean=false):void{ _debug.info((((("link( " + _arg1) + ", ") + _arg2) + " )")); _call("_link", _arg1, _arg2); } public function addOrganic(_arg1:String, _arg2:String):void{ _debug.info((("addOrganic( " + [_arg1, _arg2].join(", ")) + " )")); _call("_addOrganic", _arg1); } public function setAllowLinker(_arg1:Boolean):void{ _debug.info((("setAllowLinker( " + _arg1) + " )")); _call("_setAllowLinker", _arg1); } private function _linkTrackingObject(_arg1:String):void{ _proxy.call(_linkTrackingObject_js, _jsContainer, _arg1); } public function trackEvent(_arg1:String, _arg2:String, _arg3:String=null, _arg4:Number=NaN):Boolean{ var _local5 = 2; if (((_arg3) && (!((_arg3 == ""))))){ _local5 = 3; }; if ((((_local5 == 3)) && (!(isNaN(_arg4))))){ _local5 = 4; }; switch (_local5){ case 4: _debug.info((("trackEvent( " + [_arg1, _arg2, _arg3, _arg4].join(", ")) + " )")); return (_call("_trackEvent", _arg1, _arg2, _arg3, _arg4)); case 3: _debug.info((("trackEvent( " + [_arg1, _arg2, _arg3].join(", ")) + " )")); return (_call("_trackEvent", _arg1, _arg2, _arg3)); case 2: default: _debug.info((("trackEvent( " + [_arg1, _arg2].join(", ")) + " )")); return (_call("_trackEvent", _arg1, _arg2)); }; } public function setClientInfo(_arg1:Boolean):void{ _debug.info((("setClientInfo( " + _arg1) + " )")); _call("_setClientInfo", _arg1); } public function trackTrans():void{ _debug.info("trackTrans()"); _call("_trackTrans"); } public function setCookieTimeout(_arg1:int):void{ _debug.info((("setCookieTimeout( " + _arg1) + " )")); _call("_setCookieTimeout", _arg1); } public function trackPageview(_arg1:String=""):void{ _debug.info((("trackPageview( " + _arg1) + " )")); _call("_trackPageview", _arg1); } public function getClientInfo():Boolean{ _debug.info("getClientInfo()"); return (_call("_getClientInfo")); } private function _checkValidTrackingObject(_arg1:String):Boolean{ return (_proxy.call(_checkValidTrackingObject_js, _arg1)); } private function _checkGAJS():Boolean{ return (_proxy.call(_checkGAJS_js)); } public function linkByPost(_arg1:Object, _arg2:Boolean=false):void{ _debug.warning((((("linkByPost( " + _arg1) + ", ") + _arg2) + " ) not implemented")); } private function _call(_arg1:String, ... _args){ _args.unshift(((((("window." + _jsContainer) + "[\"") + _account) + "\"].") + _arg1)); return (_proxy.call.apply(_proxy, _args)); } public function hasGAJS():Boolean{ return (_checkGAJS()); } private function _checkTrackingObject(_arg1:String):Boolean{ var _local2:Boolean = _proxy.hasProperty(_arg1); var _local3:Boolean = _proxy.hasProperty((_arg1 + "._getAccount")); return (((_local2) && (_local3))); } public function resetSession():void{ _debug.warning("resetSession() not implemented"); } public function getDetectTitle():Boolean{ _debug.info("getDetectTitle()"); return (_call("_getDetectTitle")); } public function setCampNameKey(_arg1:String):void{ _debug.info((("setCampNameKey( " + _arg1) + " )")); _call("_setCampNameKey", _arg1); } public function setDetectFlash(_arg1:Boolean):void{ _debug.info((("setDetectFlash( " + _arg1) + " )")); _call("_setDetectFlash", _arg1); } public function createEventTracker(_arg1:String):EventTracker{ _debug.info((("createEventTracker( " + _arg1) + " )")); return (new EventTracker(_arg1, this)); } public function addItem(_arg1:String, _arg2:String, _arg3:String, _arg4:String, _arg5:Number, _arg6:int):void{ _debug.info((("addItem( " + [_arg1, _arg2, _arg3, _arg4, _arg5, _arg6].join(", ")) + " )")); _call("_addItem", _arg1, _arg2, _arg3, _arg4, _arg5, _arg6); } public function clearIgnoredOrganic():void{ _debug.info("clearIgnoredOrganic()"); _call("_clearIgnoreOrganic"); } public function setVar(_arg1:String):void{ _debug.info((("setVar( " + _arg1) + " )")); _call("_setVar", _arg1); } public function setDomainName(_arg1:String):void{ _debug.info((("setDomainName( " + _arg1) + " )")); _call("_setDomainName", _arg1); } public function hasTrackingAccount(_arg1:String):Boolean{ if (Utils.validateAccount(_arg1)){ return (_checkValidTrackingObject(_arg1)); }; return (_checkTrackingObject(_arg1)); } public function setCampSourceKey(_arg1:String):void{ _debug.info((("setCampSourceKey( " + _arg1) + " )")); _call("_setCampSourceKey", _arg1); } public function addTrans(_arg1:String, _arg2:String, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:String, _arg7:String, _arg8:String):Object{ _debug.info((("addTrans( " + [_arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7, _arg8].join(", ")) + " )")); _call("_addTrans", _arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7, _arg8); return (null); } public function setCampContentKey(_arg1:String):void{ _debug.info((("setCampContentKey( " + _arg1) + " )")); _call("_setCampContentKey", _arg1); } public function setLocalServerMode():void{ _debug.info("setLocalServerMode()"); _call("_setLocalServerMode"); } public function getLocalGifPath():String{ _debug.info("getLocalGifPath()"); return (_call("_getLocalGifPath")); } public function clearIgnoredRef():void{ _debug.info("clearIgnoredRef()"); _call("_clearIgnoreRef"); } public function setAllowAnchor(_arg1:Boolean):void{ _debug.info((("setAllowAnchor( " + _arg1) + " )")); _call("_setAllowAnchor", _arg1); } public function setLocalGifPath(_arg1:String):void{ _debug.info((("setLocalGifPath( " + _arg1) + " )")); _call("_setLocalGifPath", _arg1); } public function getVersion():String{ _debug.info("getVersion()"); return (_call("_getVersion")); } private function _injectTrackingObject():void{ _proxy.executeBlock(_injectTrackingObject_js); _hasGATracker = true; } public function setCookiePath(_arg1:String):void{ _debug.info((("setCookiePath( " + _arg1) + " )")); _call("_setCookiePath", _arg1); } public function setSampleRate(_arg1:Number):void{ _debug.info((("setSampleRate( " + _arg1) + " )")); _call("_setSampleRate", _arg1); } public function setAllowHash(_arg1:Boolean):void{ _debug.info((("setAllowHash( " + _arg1) + " )")); _call("_setAllowHash", _arg1); } public function addIgnoredOrganic(_arg1:String):void{ _debug.info((("addIgnoredOrganic( " + _arg1) + " )")); _call("_addIgnoredOrganic", _arg1); } public function setCampNOKey(_arg1:String):void{ _debug.info((("setCampNOKey( " + _arg1) + " )")); _call("_setCampNOKey", _arg1); } public function cookiePathCopy(_arg1:String):void{ _debug.info((("cookiePathCopy( " + _arg1) + " )")); _call("_cookiePathCopy", _arg1); } public function setLocalRemoteServerMode():void{ _debug.info("setLocalRemoteServerMode()"); _call("_setLocalRemoteServerMode"); } public function getServiceMode():ServerOperationMode{ _debug.info("getServiceMode()"); return (_call("_getServiceMode")); } public function setDetectTitle(_arg1:Boolean):void{ _debug.info((("setDetectTitle( " + _arg1) + " )")); _call("_setDetectTitle", _arg1); } private function _createTrackingObject(_arg1:String):void{ _proxy.call(_createTrackingObject_js, _arg1); } public function setCampaignTrack(_arg1:Boolean):void{ _debug.info((("setCampaignTrack( " + _arg1) + " )")); _call("_setCampaignTrack", _arg1); } public function clearOrganic():void{ _debug.info("clearOrganic()"); _call("_clearOrganic"); } public function setCampTermKey(_arg1:String):void{ _debug.info((("setCampTermKey( " + _arg1) + " )")); _call("_setCampTermKey", _arg1); } public function getDetectFlash():Boolean{ _debug.info("getDetectFlash()"); return (_call("_getDetectFlash")); } public function setCampMediumKey(_arg1:String):void{ _debug.info((("setCampMediumKey( " + _arg1) + " )")); _call("_setCampMediumKey", _arg1); } public function addIgnoredRef(_arg1:String):void{ _debug.info((("addIgnoredRef( " + _arg1) + " )")); _call("_addIgnoredRef", _arg1); } public function setSessionTimeout(_arg1:int):void{ _debug.info((("setSessionTimeout( " + _arg1) + " )")); _call("_setSessionTimeout", _arg1); } public function setRemoteServerMode():void{ _debug.info("setRemoteServerMode()"); _call("_setRemoteServerMode"); } public function getAccount():String{ _debug.info("getAccount()"); return (_call("_getAccount")); } } }//package com.google.analytics.v4
Section 137
//Configuration (com.google.analytics.v4.Configuration) package com.google.analytics.v4 { import com.google.analytics.core.*; import com.google.analytics.debug.*; import com.google.analytics.utils.*; import com.google.analytics.campaign.*; public class Configuration { public var serverMode:ServerOperationMode; public var detectFlash:Boolean;// = true public var hasSiteOverlay:Boolean;// = false public var allowLocalTracking:Boolean;// = true public var secureRemoteGIFpath:String;// = "https://ssl.google-analytics.com/__utm.gif" private var _version:String;// = "4.3as" public var allowDomainHash:Boolean;// = true public var detectClientInfo:Boolean;// = true public var idleLoop:Number;// = 30 public var isTrackOutboundSubdomains:Boolean;// = false public var cookiePath:String;// = "/" public var transactionFieldDelim:String;// = "|" private var _organic:Organic; private var _cookieName:String;// = "analytics" public var campaignKey:CampaignKey; public var google:String;// = "google" public var googleCsePath:String;// = "cse" public var bucketCapacity:Number;// = 10 private var _sampleRate:Number;// = 1 public var remoteGIFpath:String;// = "http://www.google-analytics.com/__utm.gif" public var googleSearchParam:String;// = "q" public var allowLinker:Boolean;// = false public var maxOutboundLinkExamined:Number;// = 1000 private var _debug:DebugConfiguration; public var allowAnchor:Boolean;// = false private var _domain:Domain; private var _trackingLimitPerSession:int;// = 500 public var tokenCliff:int;// = 10 public var sessionTimeout:Number; public var idleTimeout:Number;// = 60 public var campaignTracking:Boolean;// = true public var domainName:String;// = "" public var detectTitle:Boolean;// = true public var tokenRate:Number;// = 0.2 public var conversionTimeout:Number; public var localGIFpath:String;// = "/__utm.gif" public function Configuration(_arg1:DebugConfiguration=null){ _organic = new Organic(); conversionTimeout = Timespan.sixmonths; sessionTimeout = Timespan.thirtyminutes; campaignKey = new CampaignKey(); serverMode = ServerOperationMode.remote; super(); _debug = _arg1; _domain = new Domain(DomainNameMode.auto, "", _debug); serverMode = ServerOperationMode.remote; _initOrganicSources(); } public function get organic():Organic{ return (_organic); } public function get cookieName():String{ return (_cookieName); } public function get trackingLimitPerSession():int{ return (_trackingLimitPerSession); } private function _initOrganicSources():void{ addOrganicSource(google, googleSearchParam); addOrganicSource("yahoo", "p"); addOrganicSource("msn", "q"); addOrganicSource("aol", "query"); addOrganicSource("aol", "encquery"); addOrganicSource("lycos", "query"); addOrganicSource("ask", "q"); addOrganicSource("altavista", "q"); addOrganicSource("netscape", "query"); addOrganicSource("cnn", "query"); addOrganicSource("looksmart", "qt"); addOrganicSource("about", "terms"); addOrganicSource("mamma", "query"); addOrganicSource("alltheweb", "q"); addOrganicSource("gigablast", "q"); addOrganicSource("voila", "rdata"); addOrganicSource("virgilio", "qs"); addOrganicSource("live", "q"); addOrganicSource("baidu", "wd"); addOrganicSource("alice", "qs"); addOrganicSource("yandex", "text"); addOrganicSource("najdi", "q"); addOrganicSource("aol", "q"); addOrganicSource("club-internet", "q"); addOrganicSource("mama", "query"); addOrganicSource("seznam", "q"); addOrganicSource("search", "q"); addOrganicSource("wp", "szukaj"); addOrganicSource("onet", "qt"); addOrganicSource("netsprint", "q"); addOrganicSource("google.interia", "q"); addOrganicSource("szukacz", "q"); addOrganicSource("yam", "k"); addOrganicSource("pchome", "q"); addOrganicSource("kvasir", "searchExpr"); addOrganicSource("sesam", "q"); addOrganicSource("ozu", "q"); addOrganicSource("terra", "query"); addOrganicSource("nostrum", "query"); addOrganicSource("mynet", "q"); addOrganicSource("ekolay", "q"); addOrganicSource("search.ilse", "search_for"); } public function get sampleRate():Number{ return (_sampleRate); } public function addOrganicSource(_arg1:String, _arg2:String):void{ var engine = _arg1; var keyword = _arg2; try { _organic.addSource(engine, keyword); } catch(e:Error) { if (((_debug) && (_debug.active))){ _debug.warning(e.message); }; }; } public function get domain():Domain{ return (_domain); } public function set sampleRate(_arg1:Number):void{ if (_arg1 <= 0){ _arg1 = 0.1; }; if (_arg1 > 1){ _arg1 = 1; }; _arg1 = Number(_arg1.toFixed(2)); _sampleRate = _arg1; } public function get version():String{ return (_version); } } }//package com.google.analytics.v4
Section 138
//GoogleAnalyticsAPI (com.google.analytics.v4.GoogleAnalyticsAPI) package com.google.analytics.v4 { import com.google.analytics.core.*; public interface GoogleAnalyticsAPI { function setCampSourceKey(_arg1:String):void; function getServiceMode():ServerOperationMode; function resetSession():void; function setLocalServerMode():void; function setCampContentKey(_arg1:String):void; function addOrganic(_arg1:String, _arg2:String):void; function setDetectFlash(_arg1:Boolean):void; function addTrans(_arg1:String, _arg2:String, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:String, _arg7:String, _arg8:String):Object; function trackEvent(_arg1:String, _arg2:String, _arg3:String=null, _arg4:Number=NaN):Boolean; function setCampTermKey(_arg1:String):void; function setCampNameKey(_arg1:String):void; function addIgnoredOrganic(_arg1:String):void; function addItem(_arg1:String, _arg2:String, _arg3:String, _arg4:String, _arg5:Number, _arg6:int):void; function setAllowLinker(_arg1:Boolean):void; function getClientInfo():Boolean; function getDetectFlash():Boolean; function setCampaignTrack(_arg1:Boolean):void; function createEventTracker(_arg1:String):EventTracker; function setCookieTimeout(_arg1:int):void; function setAllowAnchor(_arg1:Boolean):void; function trackTrans():void; function clearOrganic():void; function trackPageview(_arg1:String=""):void; function setLocalGifPath(_arg1:String):void; function getVersion():String; function getLocalGifPath():String; function setVar(_arg1:String):void; function clearIgnoredOrganic():void; function setCampMediumKey(_arg1:String):void; function addIgnoredRef(_arg1:String):void; function setClientInfo(_arg1:Boolean):void; function setCookiePath(_arg1:String):void; function setSampleRate(_arg1:Number):void; function setSessionTimeout(_arg1:int):void; function setRemoteServerMode():void; function clearIgnoredRef():void; function setDomainName(_arg1:String):void; function setDetectTitle(_arg1:Boolean):void; function setAllowHash(_arg1:Boolean):void; function getAccount():String; function linkByPost(_arg1:Object, _arg2:Boolean=false):void; function link(_arg1:String, _arg2:Boolean=false):void; function setCampNOKey(_arg1:String):void; function setLocalRemoteServerMode():void; function cookiePathCopy(_arg1:String):void; function getDetectTitle():Boolean; } }//package com.google.analytics.v4
Section 139
//Tracker (com.google.analytics.v4.Tracker) package com.google.analytics.v4 { import com.google.analytics.core.*; import com.google.analytics.debug.*; import com.google.analytics.data.*; import com.google.analytics.external.*; import com.google.analytics.utils.*; import com.google.analytics.campaign.*; public class Tracker implements GoogleAnalyticsAPI { private const EVENT_TRACKER_LABEL_KEY_NUM:int = 3; private const EVENT_TRACKER_VALUE_VALUE_NUM:int = 1; private const EVENT_TRACKER_PROJECT_ID:int = 5; private const EVENT_TRACKER_OBJECT_NAME_KEY_NUM:int = 1; private const EVENT_TRACKER_TYPE_KEY_NUM:int = 2; private var _adSense:AdSenseGlobals; private var _eventTracker:X10; private var _noSessionInformation:Boolean;// = false private var _browserInfo:BrowserInfo; private var _debug:DebugConfiguration; private var _isNewVisitor:Boolean;// = false private var _buffer:Buffer; private var _config:Configuration; private var _x10Module:X10; private var _campaign:CampaignManager; private var _formatedReferrer:String; private var _timeStamp:Number; private var _info:Environment; private var _domainHash:Number; private var _campaignInfo:CampaignInfo; private var _gifRequest:GIFRequest; private var _hasInitData:Boolean;// = false private var _account:String; public function Tracker(_arg1:String, _arg2:Configuration, _arg3:DebugConfiguration, _arg4:Environment, _arg5:Buffer, _arg6:GIFRequest, _arg7:AdSenseGlobals){ var _local8:String; super(); _account = _arg1; _config = _arg2; _debug = _arg3; _info = _arg4; _buffer = _arg5; _gifRequest = _arg6; _adSense = _arg7; if (!Utils.validateAccount(_arg1)){ _local8 = (("Account \"" + _arg1) + "\" is not valid."); _debug.warning(_local8); throw (new Error(_local8)); }; _initData(); } private function _doTracking():Boolean{ if (((((!((_info.protocol == Protocols.file))) && (!((_info.protocol == Protocols.none))))) && (_isNotGoogleSearch()))){ return (true); }; if (_config.allowLocalTracking){ return (true); }; return (false); } public function addOrganic(_arg1:String, _arg2:String):void{ _debug.info((("addOrganic( " + [_arg1, _arg2].join(", ")) + " )")); _config.organic.addSource(_arg1, _arg2); } public function setAllowLinker(_arg1:Boolean):void{ _config.allowLinker = _arg1; _debug.info((("setAllowLinker( " + _config.allowLinker) + " )")); } public function trackEvent(_arg1:String, _arg2:String, _arg3:String=null, _arg4:Number=NaN):Boolean{ var _local5:Boolean; var _local6 = 2; if (((!((_arg1 == ""))) && (!((_arg2 == ""))))){ _eventTracker.clearKey(EVENT_TRACKER_PROJECT_ID); _eventTracker.clearValue(EVENT_TRACKER_PROJECT_ID); _local5 = _eventTracker.setKey(EVENT_TRACKER_PROJECT_ID, EVENT_TRACKER_OBJECT_NAME_KEY_NUM, _arg1); _local5 = _eventTracker.setKey(EVENT_TRACKER_PROJECT_ID, EVENT_TRACKER_TYPE_KEY_NUM, _arg2); if (((_arg3) && (!((_arg3 == ""))))){ _local5 = _eventTracker.setKey(EVENT_TRACKER_PROJECT_ID, EVENT_TRACKER_LABEL_KEY_NUM, _arg3); _local6 = 3; if (!isNaN(_arg4)){ _local5 = _eventTracker.setValue(EVENT_TRACKER_PROJECT_ID, EVENT_TRACKER_VALUE_VALUE_NUM, _arg4); _local6 = 4; }; }; if (_local5){ _debug.info(((("valid event tracking call\ncategory: " + _arg1) + "\naction: ") + _arg2), VisualDebugMode.geek); _sendXEvent(_eventTracker); }; } else { _debug.warning(((("event tracking call is not valid, failed!\ncategory: " + _arg1) + "\naction: ") + _arg2), VisualDebugMode.geek); _local5 = false; }; switch (_local6){ case 4: _debug.info((("trackEvent( " + [_arg1, _arg2, _arg3, _arg4].join(", ")) + " )")); break; case 3: _debug.info((("trackEvent( " + [_arg1, _arg2, _arg3].join(", ")) + " )")); break; case 2: default: _debug.info((("trackEvent( " + [_arg1, _arg2].join(", ")) + " )")); }; return (_local5); } public function trackPageview(_arg1:String=""):void{ _debug.info((("trackPageview( " + _arg1) + " )")); if (_doTracking()){ _initData(); _trackMetrics(_arg1); _noSessionInformation = false; } else { _debug.warning((("trackPageview( " + _arg1) + " ) failed")); }; } public function setCookieTimeout(_arg1:int):void{ _config.conversionTimeout = _arg1; _debug.info((("setCookieTimeout( " + _config.conversionTimeout) + " )")); } public function trackTrans():void{ _debug.warning("trackTrans() not implemented"); } public function setClientInfo(_arg1:Boolean):void{ _config.detectClientInfo = _arg1; _debug.info((("setClientInfo( " + _config.detectClientInfo) + " )")); } public function linkByPost(_arg1:Object, _arg2:Boolean=false):void{ _debug.warning((("linkByPost( " + [_arg1, _arg2].join(", ")) + " ) not implemented")); } private function _initData():void{ var _local1:String; var _local2:String; if (!_hasInitData){ _updateDomainName(); _domainHash = _getDomainHash(); _timeStamp = Math.round((new Date().getTime() / 1000)); if (_debug.verbose){ _local1 = ""; _local1 = (_local1 + "_initData 0"); _local1 = (_local1 + ("\ndomain name: " + _config.domainName)); _local1 = (_local1 + ("\ndomain hash: " + _domainHash)); _local1 = (_local1 + (((("\ntimestamp: " + _timeStamp) + " (") + new Date((_timeStamp * 1000))) + ")")); _debug.info(_local1, VisualDebugMode.geek); }; }; if (_doTracking()){ _handleCookie(); }; if (!_hasInitData){ if (_doTracking()){ _formatedReferrer = _formatReferrer(); _browserInfo = new BrowserInfo(_config, _info); _debug.info(("browserInfo: " + _browserInfo.toURLString()), VisualDebugMode.advanced); if (_config.campaignTracking){ _campaign = new CampaignManager(_config, _debug, _buffer, _domainHash, _formatedReferrer, _timeStamp); _campaignInfo = _campaign.getCampaignInformation(_info.locationSearch, _noSessionInformation); _debug.info(("campaignInfo: " + _campaignInfo.toURLString()), VisualDebugMode.advanced); }; }; _x10Module = new X10(); _eventTracker = new X10(); _hasInitData = true; }; if (_config.hasSiteOverlay){ _debug.warning("Site Overlay is not supported"); }; if (_debug.verbose){ _local2 = ""; _local2 = (_local2 + "_initData (misc)"); _local2 = (_local2 + ("\nflash version: " + _info.flashVersion.toString(4))); _local2 = (_local2 + ("\nprotocol: " + _info.protocol)); _local2 = (_local2 + (("\ndefault domain name (auto): \"" + _info.domainName) + "\"")); _local2 = (_local2 + ("\nlanguage: " + _info.language)); _local2 = (_local2 + ("\ndomain hash: " + _getDomainHash())); _local2 = (_local2 + ("\nuser-agent: " + _info.userAgent)); _debug.info(_local2, VisualDebugMode.geek); }; } public function getDetectTitle():Boolean{ _debug.info("getDetectTitle()"); return (_config.detectTitle); } public function resetSession():void{ _debug.info("resetSession()"); _buffer.resetCurrentSession(); } public function getClientInfo():Boolean{ _debug.info("getClientInfo()"); return (_config.detectClientInfo); } private function _sendXEvent(_arg1:X10=null):void{ var _local2:Variables; var _local3:EventInfo; var _local4:Variables; var _local5:Variables; _initData(); if (_takeSample()){ _local2 = new Variables(); _local2.URIencode = true; _local3 = new EventInfo(true, _x10Module, _arg1); _local4 = _local3.toVariables(); _local5 = _renderMetricsSearchVariables(); _local2.join(_local4, _local5); _gifRequest.send(_account, _local2, false, true); }; } public function setDetectFlash(_arg1:Boolean):void{ _config.detectFlash = _arg1; _debug.info((("setDetectFlash( " + _config.detectFlash) + " )")); } public function setCampNameKey(_arg1:String):void{ _config.campaignKey.UCCN = _arg1; var _local2 = (("setCampNameKey( " + _config.campaignKey.UCCN) + " )"); if (_debug.mode == VisualDebugMode.geek){ _debug.info((_local2 + " [UCCN]")); } else { _debug.info(_local2); }; } private function _formatReferrer():String{ var _local2:String; var _local3:URL; var _local4:URL; var _local1:String = _info.referrer; if ((((_local1 == "")) || ((_local1 == "localhost")))){ _local1 = "-"; } else { _local2 = _info.domainName; _local3 = new URL(_local1); _local4 = new URL(("http://" + _local2)); if (_local3.hostName == _local2){ return ("-"); }; if (_local4.domain == _local3.domain){ if (_local4.subDomain != _local3.subDomain){ _local1 = "0"; }; }; if ((((_local1.charAt(0) == "[")) && (_local1.charAt((_local1.length - 1))))){ _local1 = "-"; }; }; _debug.info(("formated referrer: " + _local1), VisualDebugMode.advanced); return (_local1); } private function _visitCode():Number{ if (_debug.verbose){ _debug.info(("visitCode: " + _buffer.utma.sessionId), VisualDebugMode.geek); }; return (_buffer.utma.sessionId); } public function createEventTracker(_arg1:String):EventTracker{ _debug.info((("createEventTracker( " + _arg1) + " )")); return (new EventTracker(_arg1, this)); } public function addItem(_arg1:String, _arg2:String, _arg3:String, _arg4:String, _arg5:Number, _arg6:int):void{ _debug.warning((("addItem( " + [_arg1, _arg2, _arg3, _arg4, _arg5, _arg6].join(", ")) + " ) not implemented")); } public function clearIgnoredOrganic():void{ _debug.info("clearIgnoredOrganic()"); _config.organic.clearIgnoredKeywords(); } public function setVar(_arg1:String):void{ var _local2:Variables; if (((!((_arg1 == ""))) && (_isNotGoogleSearch()))){ _initData(); _buffer.utmv.domainHash = _domainHash; _buffer.utmv.value = _arg1; if (_debug.verbose){ _debug.info(_buffer.utmv.toString(), VisualDebugMode.geek); }; _debug.info((("setVar( " + _arg1) + " )")); if (_takeSample()){ _local2 = new Variables(); _local2.utmt = "var"; _gifRequest.send(_account, _local2); }; } else { _debug.warning((("setVar \"" + _arg1) + "\" is ignored")); }; } public function setDomainName(_arg1:String):void{ if (_arg1 == "auto"){ _config.domain.mode = DomainNameMode.auto; } else { if (_arg1 == "none"){ _config.domain.mode = DomainNameMode.none; } else { _config.domain.mode = DomainNameMode.custom; _config.domain.name = _arg1; }; }; _updateDomainName(); _debug.info((("setDomainName( " + _config.domainName) + " )")); } private function _updateDomainName():void{ var _local1:String; if (_config.domain.mode == DomainNameMode.auto){ _local1 = _info.domainName; if (_local1.substring(0, 4) == "www."){ _local1 = _local1.substring(4); }; _config.domain.name = _local1; }; _config.domainName = _config.domain.name.toLowerCase(); _debug.info(("domain name: " + _config.domainName), VisualDebugMode.advanced); } public function addTrans(_arg1:String, _arg2:String, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:String, _arg7:String, _arg8:String):Object{ _debug.warning((("addTrans( " + [_arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7, _arg8].join(", ")) + " ) not implemented")); return (null); } private function _renderMetricsSearchVariables(_arg1:String=""):Variables{ var _local4:Variables; var _local2:Variables = new Variables(); _local2.URIencode = true; var _local3:DocumentInfo = new DocumentInfo(_config, _info, _formatedReferrer, _arg1, _adSense); _debug.info(("docInfo: " + _local3.toURLString()), VisualDebugMode.geek); if (_config.campaignTracking){ _local4 = _campaignInfo.toVariables(); }; var _local5:Variables = _browserInfo.toVariables(); _local2.join(_local3.toVariables(), _local5, _local4); return (_local2); } public function setCampContentKey(_arg1:String):void{ _config.campaignKey.UCCT = _arg1; var _local2 = (("setCampContentKey( " + _config.campaignKey.UCCT) + " )"); if (_debug.mode == VisualDebugMode.geek){ _debug.info((_local2 + " [UCCT]")); } else { _debug.info(_local2); }; } private function _handleCookie():void{ var _local1:String; var _local2:String; var _local3:Array; var _local4:String; if (_config.allowLinker){ }; if (((_buffer.hasUTMA()) && (!(_buffer.utma.isEmpty())))){ if (((!(_buffer.hasUTMB())) || (!(_buffer.hasUTMC())))){ _buffer.updateUTMA(_timeStamp); _noSessionInformation = true; }; if (_debug.verbose){ _debug.info(("from cookie " + _buffer.utma.toString()), VisualDebugMode.geek); }; } else { _debug.info("create a new utma", VisualDebugMode.advanced); _buffer.utma.domainHash = _domainHash; _buffer.utma.sessionId = _getUniqueSessionId(); _buffer.utma.firstTime = _timeStamp; _buffer.utma.lastTime = _timeStamp; _buffer.utma.currentTime = _timeStamp; _buffer.utma.sessionCount = 1; if (_debug.verbose){ _debug.info(_buffer.utma.toString(), VisualDebugMode.geek); }; _noSessionInformation = true; _isNewVisitor = true; }; if (((_adSense.gaGlobal) && ((_adSense.dh == String(_domainHash))))){ if (_adSense.sid){ _buffer.utma.currentTime = Number(_adSense.sid); if (_debug.verbose){ _local1 = ""; _local1 = (_local1 + "AdSense sid found\n"); _local1 = (_local1 + (((("Override currentTime(" + _buffer.utma.currentTime) + ") from AdSense sid(") + Number(_adSense.sid)) + ")")); _debug.info(_local1, VisualDebugMode.geek); }; }; if (_isNewVisitor){ if (_adSense.sid){ _buffer.utma.lastTime = Number(_adSense.sid); if (_debug.verbose){ _local2 = ""; _local2 = (_local2 + "AdSense sid found (new visitor)\n"); _local2 = (_local2 + (((("Override lastTime(" + _buffer.utma.lastTime) + ") from AdSense sid(") + Number(_adSense.sid)) + ")")); _debug.info(_local2, VisualDebugMode.geek); }; }; if (_adSense.vid){ _local3 = _adSense.vid.split("."); _buffer.utma.sessionId = Number(_local3[0]); _buffer.utma.firstTime = Number(_local3[1]); if (_debug.verbose){ _local4 = ""; _local4 = (_local4 + "AdSense vid found (new visitor)\n"); _local4 = (_local4 + (((("Override sessionId(" + _buffer.utma.sessionId) + ") from AdSense vid(") + Number(_local3[0])) + ")\n")); _local4 = (_local4 + (((("Override firstTime(" + _buffer.utma.firstTime) + ") from AdSense vid(") + Number(_local3[1])) + ")")); _debug.info(_local4, VisualDebugMode.geek); }; }; if (_debug.verbose){ _debug.info(("AdSense modified : " + _buffer.utma.toString()), VisualDebugMode.geek); }; }; }; _buffer.utmb.domainHash = _domainHash; if (isNaN(_buffer.utmb.trackCount)){ _buffer.utmb.trackCount = 0; }; if (isNaN(_buffer.utmb.token)){ _buffer.utmb.token = _config.tokenCliff; }; if (isNaN(_buffer.utmb.lastTime)){ _buffer.utmb.lastTime = _buffer.utma.currentTime; }; _buffer.utmc.domainHash = _domainHash; if (_debug.verbose){ _debug.info(_buffer.utmb.toString(), VisualDebugMode.advanced); _debug.info(_buffer.utmc.toString(), VisualDebugMode.advanced); }; } public function setLocalServerMode():void{ _config.serverMode = ServerOperationMode.local; _debug.info("setLocalServerMode()"); } public function clearIgnoredRef():void{ _debug.info("clearIgnoredRef()"); _config.organic.clearIgnoredReferrals(); } public function setCampSourceKey(_arg1:String):void{ _config.campaignKey.UCSR = _arg1; var _local2 = (("setCampSourceKey( " + _config.campaignKey.UCSR) + " )"); if (_debug.mode == VisualDebugMode.geek){ _debug.info((_local2 + " [UCSR]")); } else { _debug.info(_local2); }; } public function getLocalGifPath():String{ _debug.info("getLocalGifPath()"); return (_config.localGIFpath); } public function setLocalGifPath(_arg1:String):void{ _config.localGIFpath = _arg1; _debug.info((("setLocalGifPath( " + _config.localGIFpath) + " )")); } public function getVersion():String{ _debug.info("getVersion()"); return (_config.version); } public function setAllowAnchor(_arg1:Boolean):void{ _config.allowAnchor = _arg1; _debug.info((("setAllowAnchor( " + _config.allowAnchor) + " )")); } private function _isNotGoogleSearch():Boolean{ var _local1:String = _config.domainName; var _local2 = (_local1.indexOf("www.google.") < 0); var _local3 = (_local1.indexOf(".google.") < 0); var _local4 = (_local1.indexOf("google.") < 0); var _local5 = (_local1.indexOf("google.org") > -1); return (((((((((_local2) || (_local3))) || (_local4))) || (!((_config.cookiePath == "/"))))) || (_local5))); } public function setSampleRate(_arg1:Number):void{ if (_arg1 < 0){ _debug.warning("sample rate can not be negative, ignoring value."); } else { _config.sampleRate = _arg1; }; _debug.info((("setSampleRate( " + _config.sampleRate) + " )")); } private function _takeSample():Boolean{ if (_debug.verbose){ _debug.info((((("takeSample: (" + (_visitCode() % 10000)) + ") < (") + (_config.sampleRate * 10000)) + ")"), VisualDebugMode.geek); }; return (((_visitCode() % 10000) < (_config.sampleRate * 10000))); } public function setCookiePath(_arg1:String):void{ _config.cookiePath = _arg1; _debug.info((("setCookiePath( " + _config.cookiePath) + " )")); } public function setAllowHash(_arg1:Boolean):void{ _config.allowDomainHash = _arg1; _debug.info((("setAllowHash( " + _config.allowDomainHash) + " )")); } private function _generateUserDataHash():Number{ var _local1 = ""; _local1 = (_local1 + _info.appName); _local1 = (_local1 + _info.appVersion); _local1 = (_local1 + _info.language); _local1 = (_local1 + _info.platform); _local1 = (_local1 + _info.userAgent.toString()); _local1 = (_local1 + (((_info.screenWidth + "x") + _info.screenHeight) + _info.screenColorDepth)); _local1 = (_local1 + _info.referrer); return (Utils.generateHash(_local1)); } public function setCampNOKey(_arg1:String):void{ _config.campaignKey.UCNO = _arg1; var _local2 = (("setCampNOKey( " + _config.campaignKey.UCNO) + " )"); if (_debug.mode == VisualDebugMode.geek){ _debug.info((_local2 + " [UCNO]")); } else { _debug.info(_local2); }; } public function addIgnoredOrganic(_arg1:String):void{ _debug.info((("addIgnoredOrganic( " + _arg1) + " )")); _config.organic.addIgnoredKeyword(_arg1); } public function setLocalRemoteServerMode():void{ _config.serverMode = ServerOperationMode.both; _debug.info("setLocalRemoteServerMode()"); } public function cookiePathCopy(_arg1:String):void{ _debug.warning((("cookiePathCopy( " + _arg1) + " ) not implemented")); } public function setDetectTitle(_arg1:Boolean):void{ _config.detectTitle = _arg1; _debug.info((("setDetectTitle( " + _config.detectTitle) + " )")); } public function setCampTermKey(_arg1:String):void{ _config.campaignKey.UCTR = _arg1; var _local2 = (("setCampTermKey( " + _config.campaignKey.UCTR) + " )"); if (_debug.mode == VisualDebugMode.geek){ _debug.info((_local2 + " [UCTR]")); } else { _debug.info(_local2); }; } public function getServiceMode():ServerOperationMode{ _debug.info("getServiceMode()"); return (_config.serverMode); } private function _trackMetrics(_arg1:String=""):void{ var _local2:Variables; var _local3:Variables; var _local4:Variables; var _local5:EventInfo; if (_takeSample()){ _local2 = new Variables(); _local2.URIencode = true; if (((_x10Module) && (_x10Module.hasData()))){ _local5 = new EventInfo(false, _x10Module); _local3 = _local5.toVariables(); }; _local4 = _renderMetricsSearchVariables(_arg1); _local2.join(_local3, _local4); _gifRequest.send(_account, _local2); }; } public function setCampaignTrack(_arg1:Boolean):void{ _config.campaignTracking = _arg1; _debug.info((("setCampaignTrack( " + _config.campaignTracking) + " )")); } public function addIgnoredRef(_arg1:String):void{ _debug.info((("addIgnoredRef( " + _arg1) + " )")); _config.organic.addIgnoredReferral(_arg1); } public function clearOrganic():void{ _debug.info("clearOrganic()"); _config.organic.clearEngines(); } public function getDetectFlash():Boolean{ _debug.info("getDetectFlash()"); return (_config.detectFlash); } public function setCampMediumKey(_arg1:String):void{ _config.campaignKey.UCMD = _arg1; var _local2 = (("setCampMediumKey( " + _config.campaignKey.UCMD) + " )"); if (_debug.mode == VisualDebugMode.geek){ _debug.info((_local2 + " [UCMD]")); } else { _debug.info(_local2); }; } private function _getUniqueSessionId():Number{ var _local1:Number = ((Utils.generate32bitRandom() ^ _generateUserDataHash()) * 2147483647); _debug.info(("Session ID: " + _local1), VisualDebugMode.geek); return (_local1); } private function _getDomainHash():Number{ if (((((!(_config.domainName)) || ((_config.domainName == "")))) || ((_config.domain.mode == DomainNameMode.none)))){ _config.domainName = ""; return (1); }; _updateDomainName(); if (_config.allowDomainHash){ return (Utils.generateHash(_config.domainName)); }; return (1); } public function setSessionTimeout(_arg1:int):void{ _config.sessionTimeout = _arg1; _debug.info((("setSessionTimeout( " + _config.sessionTimeout) + " )")); } public function getAccount():String{ _debug.info("getAccount()"); return (_account); } public function link(_arg1:String, _arg2:Boolean=false):void{ _debug.warning((("link( " + [_arg1, _arg2].join(", ")) + " ) not implemented")); } public function setRemoteServerMode():void{ _config.serverMode = ServerOperationMode.remote; _debug.info("setRemoteServerMode()"); } } }//package com.google.analytics.v4
Section 140
//AnalyticsTracker (com.google.analytics.AnalyticsTracker) package com.google.analytics { import flash.events.*; import com.google.analytics.v4.*; import com.google.analytics.debug.*; public interface AnalyticsTracker extends GoogleAnalyticsAPI, IEventDispatcher { function set account(_arg1:String):void; function get config():Configuration; function get mode():String; function set config(_arg1:Configuration):void; function set mode(_arg1:String):void; function set debug(_arg1:DebugConfiguration):void; function get visualDebug():Boolean; function get account():String; function set visualDebug(_arg1:Boolean):void; function isReady():Boolean; function get debug():DebugConfiguration; } }//package com.google.analytics
Section 141
//API (com.google.analytics.API) package com.google.analytics { import com.google.analytics.utils.*; public class API { public static var version:Version = new Version(); version.major = 1; version.minor = 0; version.build = 1; version.revision = "$Rev: 319 $ ".split(" ")[1]; } }//package com.google.analytics
Section 142
//GATracker (com.google.analytics.GATracker) package com.google.analytics { import flash.events.*; import flash.display.*; import com.google.analytics.core.*; import com.google.analytics.v4.*; import com.google.analytics.debug.*; import com.google.analytics.external.*; import com.google.analytics.utils.*; import com.google.analytics.events.*; public class GATracker implements AnalyticsTracker { private var _adSense:AdSenseGlobals; private var _env:Environment; private var _visualDebug:Boolean; private var _idleTimer:IdleTimer; private var _debug:DebugConfiguration; private var _buffer:Buffer; private var _config:Configuration; private var _mode:String; private var _display:DisplayObject; private var _jsproxy:JavascriptProxy; private var _dom:HTMLDOM; private var _eventDispatcher:EventDispatcher; private var _ready:Boolean;// = false private var _gifRequest:GIFRequest; private var _account:String; private var _tracker:GoogleAnalyticsAPI; public static var version:Version = API.version; public static var autobuild:Boolean = true; public function GATracker(_arg1:DisplayObject, _arg2:String, _arg3:String="AS3", _arg4:Boolean=false, _arg5:Configuration=null, _arg6:DebugConfiguration=null){ _display = _arg1; _eventDispatcher = new EventDispatcher(this); _tracker = new TrackerCache(); this.account = _arg2; this.mode = _arg3; this.visualDebug = _arg4; if (!_arg6){ this.debug = new DebugConfiguration(); }; if (!_arg5){ this.config = new Configuration(_arg6); }; if (autobuild){ _factory(); }; } public function link(_arg1:String, _arg2:Boolean=false):void{ _tracker.link(_arg1, _arg2); } public function addOrganic(_arg1:String, _arg2:String):void{ _tracker.addOrganic(_arg1, _arg2); } public function setAllowLinker(_arg1:Boolean):void{ _tracker.setAllowLinker(_arg1); } public function trackEvent(_arg1:String, _arg2:String, _arg3:String=null, _arg4:Number=NaN):Boolean{ return (_tracker.trackEvent(_arg1, _arg2, _arg3, _arg4)); } public function setCookieTimeout(_arg1:int):void{ _tracker.setCookieTimeout(_arg1); } public function trackTrans():void{ _tracker.trackTrans(); } public function getClientInfo():Boolean{ return (_tracker.getClientInfo()); } public function trackPageview(_arg1:String=""):void{ _tracker.trackPageview(_arg1); } public function setClientInfo(_arg1:Boolean):void{ _tracker.setClientInfo(_arg1); } public function get account():String{ return (_account); } public function linkByPost(_arg1:Object, _arg2:Boolean=false):void{ _tracker.linkByPost(_arg1, _arg2); } public function getDetectTitle():Boolean{ return (_tracker.getDetectTitle()); } public function dispatchEvent(_arg1:Event):Boolean{ return (_eventDispatcher.dispatchEvent(_arg1)); } public function get config():Configuration{ return (_config); } public function set mode(_arg1:String):void{ _mode = _arg1; } public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{ _eventDispatcher.removeEventListener(_arg1, _arg2, _arg3); } public function setDetectFlash(_arg1:Boolean):void{ _tracker.setDetectFlash(_arg1); } public function resetSession():void{ _tracker.resetSession(); } public function setCampNameKey(_arg1:String):void{ _tracker.setCampNameKey(_arg1); } public function get debug():DebugConfiguration{ return (_debug); } public function addItem(_arg1:String, _arg2:String, _arg3:String, _arg4:String, _arg5:Number, _arg6:int):void{ _tracker.addItem(_arg1, _arg2, _arg3, _arg4, _arg5, _arg6); } private function _bridgeFactory():GoogleAnalyticsAPI{ debug.info(((("GATracker (Bridge) v" + version) + "\naccount: ") + account)); return (new Bridge(account, _debug, _jsproxy)); } public function clearIgnoredOrganic():void{ _tracker.clearIgnoredOrganic(); } public function set account(_arg1:String):void{ _account = _arg1; } public function setVar(_arg1:String):void{ _tracker.setVar(_arg1); } public function build():void{ if (!isReady()){ _factory(); }; } public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{ _eventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5); } public function setDomainName(_arg1:String):void{ _tracker.setDomainName(_arg1); } public function createEventTracker(_arg1:String):EventTracker{ return (_tracker.createEventTracker(_arg1)); } public function setCampSourceKey(_arg1:String):void{ _tracker.setCampSourceKey(_arg1); } public function set config(_arg1:Configuration):void{ _config = _arg1; } public function addTrans(_arg1:String, _arg2:String, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:String, _arg7:String, _arg8:String):Object{ return (_tracker.addTrans(_arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7, _arg8)); } public function setCampContentKey(_arg1:String):void{ _tracker.setCampContentKey(_arg1); } public function willTrigger(_arg1:String):Boolean{ return (_eventDispatcher.willTrigger(_arg1)); } public function setLocalServerMode():void{ _tracker.setLocalServerMode(); } public function getLocalGifPath():String{ return (_tracker.getLocalGifPath()); } public function setAllowAnchor(_arg1:Boolean):void{ _tracker.setAllowAnchor(_arg1); } public function clearIgnoredRef():void{ _tracker.clearIgnoredRef(); } public function isReady():Boolean{ return (_ready); } public function get mode():String{ return (_mode); } public function set debug(_arg1:DebugConfiguration):void{ _debug = _arg1; } public function setLocalGifPath(_arg1:String):void{ _tracker.setLocalGifPath(_arg1); } public function getVersion():String{ return (_tracker.getVersion()); } public function setSampleRate(_arg1:Number):void{ _tracker.setSampleRate(_arg1); } public function setCookiePath(_arg1:String):void{ _tracker.setCookiePath(_arg1); } public function setAllowHash(_arg1:Boolean):void{ _tracker.setAllowHash(_arg1); } public function addIgnoredOrganic(_arg1:String):void{ _tracker.addIgnoredOrganic(_arg1); } public function setLocalRemoteServerMode():void{ _tracker.setLocalRemoteServerMode(); } public function cookiePathCopy(_arg1:String):void{ _tracker.cookiePathCopy(_arg1); } private function _factory():void{ var _local1:GoogleAnalyticsAPI; _jsproxy = new JavascriptProxy(debug); if (visualDebug){ debug.layout = new Layout(debug, _display); debug.active = visualDebug; }; var _local2:TrackerCache = (_tracker as TrackerCache); switch (mode){ case TrackerMode.BRIDGE: _local1 = _bridgeFactory(); break; case TrackerMode.AS3: default: _local1 = _trackerFactory(); }; if (!_local2.isEmpty()){ _local2.tracker = _local1; _local2.flush(); }; _tracker = _local1; _ready = true; dispatchEvent(new AnalyticsEvent(AnalyticsEvent.READY, this)); } public function setCampTermKey(_arg1:String):void{ _tracker.setCampTermKey(_arg1); } private function _trackerFactory():GoogleAnalyticsAPI{ debug.info(((("GATracker (AS3) v" + version) + "\naccount: ") + account)); _adSense = new AdSenseGlobals(debug); _dom = new HTMLDOM(debug); _dom.cacheProperties(); _env = new Environment("", "", "", debug, _dom); _buffer = new Buffer(config, debug, false); _gifRequest = new GIFRequest(config, debug, _buffer, _env); _idleTimer = new IdleTimer(config, debug, _display, _buffer); _env.url = _display.stage.loaderInfo.url; return (new Tracker(account, config, debug, _env, _buffer, _gifRequest, _adSense)); } public function setCampNOKey(_arg1:String):void{ _tracker.setCampNOKey(_arg1); } public function setDetectTitle(_arg1:Boolean):void{ _tracker.setDetectTitle(_arg1); } public function getServiceMode():ServerOperationMode{ return (_tracker.getServiceMode()); } public function clearOrganic():void{ _tracker.clearOrganic(); } public function setCampaignTrack(_arg1:Boolean):void{ _tracker.setCampaignTrack(_arg1); } public function addIgnoredRef(_arg1:String):void{ _tracker.addIgnoredRef(_arg1); } public function set visualDebug(_arg1:Boolean):void{ _visualDebug = _arg1; } public function setCampMediumKey(_arg1:String):void{ _tracker.setCampMediumKey(_arg1); } public function getDetectFlash():Boolean{ return (_tracker.getDetectFlash()); } public function get visualDebug():Boolean{ return (_visualDebug); } public function hasEventListener(_arg1:String):Boolean{ return (_eventDispatcher.hasEventListener(_arg1)); } public function getAccount():String{ return (_tracker.getAccount()); } public function setSessionTimeout(_arg1:int):void{ _tracker.setSessionTimeout(_arg1); } public function setRemoteServerMode():void{ _tracker.setRemoteServerMode(); } } var _local1:* = ServerOperationMode; return (_local1); }//package com.google.analytics
Section 143
//boss_dead_2 (Eindbaas_1_fla.boss_dead_2) package Eindbaas_1_fla { import flash.display.*; public dynamic class boss_dead_2 extends MovieClip { public function boss_dead_2(){ addFrameScript(19, frame20); } function frame20(){ stop(); } } }//package Eindbaas_1_fla
Section 144
//grotevoeten_lopen_10 (Eindbaas_1_fla.grotevoeten_lopen_10) package Eindbaas_1_fla { import flash.display.*; public dynamic class grotevoeten_lopen_10 extends MovieClip { public var feet:MovieClip; } }//package Eindbaas_1_fla
Section 145
//boss_dead_2 (Eindbaas_2_fla.boss_dead_2) package Eindbaas_2_fla { import flash.display.*; public dynamic class boss_dead_2 extends MovieClip { public function boss_dead_2(){ addFrameScript(19, frame20); } function frame20(){ stop(); } } }//package Eindbaas_2_fla
Section 146
//grotevoeten_lopen_10 (Eindbaas_2_fla.grotevoeten_lopen_10) package Eindbaas_2_fla { import flash.display.*; public dynamic class grotevoeten_lopen_10 extends MovieClip { public var feet:MovieClip; } }//package Eindbaas_2_fla
Section 147
//boss_dead_2 (Eindbaas_3_fla.boss_dead_2) package Eindbaas_3_fla { import flash.display.*; public dynamic class boss_dead_2 extends MovieClip { public function boss_dead_2(){ addFrameScript(19, frame20); } function frame20(){ stop(); } } }//package Eindbaas_3_fla
Section 148
//grotevoeten_lopen_10 (Eindbaas_3_fla.grotevoeten_lopen_10) package Eindbaas_3_fla { import flash.display.*; public dynamic class grotevoeten_lopen_10 extends MovieClip { public var feet:MovieClip; } }//package Eindbaas_3_fla
Section 149
//boss_dead_2 (Eindbaas_4_fla.boss_dead_2) package Eindbaas_4_fla { import flash.display.*; public dynamic class boss_dead_2 extends MovieClip { public function boss_dead_2(){ addFrameScript(19, frame20); } function frame20(){ stop(); } } }//package Eindbaas_4_fla
Section 150
//grotevoeten_lopen_10 (Eindbaas_4_fla.grotevoeten_lopen_10) package Eindbaas_4_fla { import flash.display.*; public dynamic class grotevoeten_lopen_10 extends MovieClip { public var feet:MovieClip; } }//package Eindbaas_4_fla
Section 151
//boss_dead_2 (Eindbaas_5_fla.boss_dead_2) package Eindbaas_5_fla { import flash.display.*; public dynamic class boss_dead_2 extends MovieClip { public function boss_dead_2(){ addFrameScript(19, frame20); } function frame20(){ stop(); } } }//package Eindbaas_5_fla
Section 152
//grotevoeten_lopen_10 (Eindbaas_5_fla.grotevoeten_lopen_10) package Eindbaas_5_fla { import flash.display.*; public dynamic class grotevoeten_lopen_10 extends MovieClip { public var feet:MovieClip; } }//package Eindbaas_5_fla
Section 153
//Elastic (fl.motion.easing.Elastic) package fl.motion.easing { public class Elastic { public static function easeOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number=0, _arg6:Number=0):Number{ var _local7:Number; if (_arg1 == 0){ return (_arg2); }; _arg1 = (_arg1 / _arg4); if (_arg1 == 1){ return ((_arg2 + _arg3)); }; if (!_arg6){ _arg6 = (_arg4 * 0.3); }; if (((!(_arg5)) || ((_arg5 < Math.abs(_arg3))))){ _arg5 = _arg3; _local7 = (_arg6 / 4); } else { _local7 = ((_arg6 / (2 * Math.PI)) * Math.asin((_arg3 / _arg5))); }; return (((((_arg5 * Math.pow(2, (-10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _arg6))) + _arg3) + _arg2)); } public static function easeIn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number=0, _arg6:Number=0):Number{ var _local7:Number; if (_arg1 == 0){ return (_arg2); }; _arg1 = (_arg1 / _arg4); if (_arg1 == 1){ return ((_arg2 + _arg3)); }; if (!_arg6){ _arg6 = (_arg4 * 0.3); }; if (((!(_arg5)) || ((_arg5 < Math.abs(_arg3))))){ _arg5 = _arg3; _local7 = (_arg6 / 4); } else { _local7 = ((_arg6 / (2 * Math.PI)) * Math.asin((_arg3 / _arg5))); }; --_arg1; return ((-(((_arg5 * Math.pow(2, (10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _arg6)))) + _arg2)); } public static function easeInOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number=0, _arg6:Number=0):Number{ var _local7:Number; if (_arg1 == 0){ return (_arg2); }; _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 == 2){ return ((_arg2 + _arg3)); }; if (!_arg6){ _arg6 = (_arg4 * (0.3 * 1.5)); }; if (((!(_arg5)) || ((_arg5 < Math.abs(_arg3))))){ _arg5 = _arg3; _local7 = (_arg6 / 4); } else { _local7 = ((_arg6 / (2 * Math.PI)) * Math.asin((_arg3 / _arg5))); }; if (_arg1 < 1){ --_arg1; return (((-0.5 * ((_arg5 * Math.pow(2, (10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _arg6)))) + _arg2)); }; --_arg1; return ((((((_arg5 * Math.pow(2, (-10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _arg6))) * 0.5) + _arg3) + _arg2)); } } }//package fl.motion.easing
Section 154
//Quadratic (fl.motion.easing.Quadratic) package fl.motion.easing { public class Quadratic { public static function easeOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = (_arg1 / _arg4); return ((((-(_arg3) * _arg1) * (_arg1 - 2)) + _arg2)); } public static function easeIn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = (_arg1 / _arg4); return ((((_arg3 * _arg1) * _arg1) + _arg2)); } public static function easeInOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ return (((((_arg3 / 2) * _arg1) * _arg1) + _arg2)); }; --_arg1; return ((((-(_arg3) / 2) * ((_arg1 * (_arg1 - 2)) - 1)) + _arg2)); } } }//package fl.motion.easing
Section 155
//Animator (fl.motion.Animator) package fl.motion { import flash.events.*; import flash.display.*; import flash.geom.*; public class Animator extends EventDispatcher { private var targetState:Object; public var transformationPoint:Point; public var positionMatrix:Matrix; private var _motion:Motion; private var playCount:int;// = 0 public var orientToPath:Boolean;// = false private var _target:DisplayObject; private var _time:int;// = -1 public var repeatCount:int;// = 1 public var autoRewind:Boolean;// = false private var _isPlaying:Boolean;// = false private var _lastRenderedTime:int;// = -1 private static var enterFrameBeacon:MovieClip = new MovieClip(); public function Animator(_arg1:XML=null, _arg2:DisplayObject=null){ this.motion = new Motion(_arg1); this.target = _arg2; } public function nextFrame():void{ if (this.time >= (this.motion.duration - 1)){ this.handleLastFrame(); } else { this.time++; }; } public function pause():void{ enterFrameBeacon.removeEventListener(Event.ENTER_FRAME, this.enterFrameHandler); this._isPlaying = false; } public function end():void{ enterFrameBeacon.removeEventListener(Event.ENTER_FRAME, this.enterFrameHandler); this._isPlaying = false; this.playCount = 0; if (this.autoRewind){ this.rewind(); } else { if (this.time != (this.motion.duration - 1)){ this.time = (this.motion.duration - 1); }; }; this.dispatchEvent(new MotionEvent(MotionEvent.MOTION_END)); } public function stop():void{ enterFrameBeacon.removeEventListener(Event.ENTER_FRAME, this.enterFrameHandler); this._isPlaying = false; this.playCount = 0; this.rewind(); this.dispatchEvent(new MotionEvent(MotionEvent.MOTION_END)); } public function get time():int{ return (this._time); } public function rewind():void{ this.time = 0; } public function get target():DisplayObject{ return (this._target); } public function set time(_arg1:int):void{ var _local5:Number; var _local6:Number; var _local7:Point; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Matrix; var _local13:Point; var _local14:Number; var _local15:Number; var _local16:ColorTransform; var _local17:Number; var _local18:Number; var _local19:Number; if (_arg1 == this._time){ return; }; var _local2:Motion = this.motion; if (_arg1 > (_local2.duration - 1)){ _arg1 = (_local2.duration - 1); } else { if (_arg1 < 0){ _arg1 = 0; }; }; this._time = _arg1; this.dispatchEvent(new MotionEvent(MotionEvent.TIME_CHANGE)); var _local3:Keyframe = _local2.getCurrentKeyframe(_arg1); var _local4:Boolean = (((_local3.index == this._lastRenderedTime)) && (!(_local3.tweens.length))); if (_local4){ return; }; this._target.visible = false; if (!_local3.blank){ _local5 = _local2.getValue(_arg1, Tweenables.X); _local6 = _local2.getValue(_arg1, Tweenables.Y); _local7 = new Point(_local5, _local6); if (this.positionMatrix){ _local7 = this.positionMatrix.transformPoint(_local7); }; _local7.x = (_local7.x + this.targetState.x); _local7.y = (_local7.y + this.targetState.y); _local8 = (_local2.getValue(_arg1, Tweenables.SCALE_X) * this.targetState.scaleX); _local9 = (_local2.getValue(_arg1, Tweenables.SCALE_Y) * this.targetState.scaleY); _local10 = 0; _local11 = 0; if (this.orientToPath){ _local17 = _local2.getValue((_arg1 + 1), Tweenables.X); _local18 = _local2.getValue((_arg1 + 1), Tweenables.Y); _local19 = (Math.atan2((_local18 - _local6), (_local17 - _local5)) * (180 / Math.PI)); if (!isNaN(_local19)){ _local10 = (_local19 + this.targetState.skewX); _local11 = (_local19 + this.targetState.skewY); }; } else { _local10 = (_local2.getValue(_arg1, Tweenables.SKEW_X) + this.targetState.skewX); _local11 = (_local2.getValue(_arg1, Tweenables.SKEW_Y) + this.targetState.skewY); }; _local12 = new Matrix((_local8 * Math.cos((_local11 * (Math.PI / 180)))), (_local8 * Math.sin((_local11 * (Math.PI / 180)))), (-(_local9) * Math.sin((_local10 * (Math.PI / 180)))), (_local9 * Math.cos((_local10 * (Math.PI / 180)))), _local7.x, _local7.y); _local13 = _local12.transformPoint(this.targetState.transformPointInternal); _local14 = (_local12.tx - _local13.x); _local15 = (_local12.ty - _local13.y); _local12.tx = (_local12.tx + _local14); _local12.ty = (_local12.ty + _local15); this._target.rotation = _local11; this._target.transform.matrix = _local12; this._target.scaleX = _local8; this._target.scaleY = _local9; _local16 = _local2.getColorTransform(_arg1); if (_local16){ this._target.transform.colorTransform = _local16; }; this._target.filters = _local2.getFilters(_arg1); this._target.blendMode = _local3.blendMode; this._target.cacheAsBitmap = _local3.cacheAsBitmap; this._target.visible = true; }; this._lastRenderedTime = this._time; this.dispatchEvent(new MotionEvent(MotionEvent.MOTION_UPDATE)); } private function enterFrameHandler(_arg1:Event):void{ this.nextFrame(); } public function set target(_arg1:DisplayObject):void{ var _local3:Number; var _local4:Number; var _local5:Point; if (!_arg1){ return; }; this._target = _arg1; this.targetState = {}; this.targetState.scaleX = this._target.scaleX; this.targetState.scaleY = this._target.scaleY; this.targetState.skewX = MatrixTransformer.getSkewX(this._target.transform.matrix); this.targetState.skewY = MatrixTransformer.getSkewY(this._target.transform.matrix); this.targetState.matrix = this._target.transform.matrix; var _local2:Object = (this.targetState.bounds = this._target.getBounds(this._target)); if (this.transformationPoint){ _local3 = ((this.transformationPoint.x * _local2.width) + _local2.left); _local4 = ((this.transformationPoint.y * _local2.height) + _local2.top); this.targetState.transformPointInternal = new Point(_local3, _local4); _local5 = this.targetState.matrix.transformPoint(this.targetState.transformPointInternal); this.targetState.x = _local5.x; this.targetState.y = _local5.y; } else { this.targetState.transformPointInternal = new Point(0, 0); this.targetState.x = this._target.x; this.targetState.y = this._target.y; }; } public function get isPlaying():Boolean{ return (_isPlaying); } public function set motion(_arg1:Motion):void{ this._motion = _arg1; if (((_arg1.source) && (_arg1.source.transformationPoint))){ this.transformationPoint = _arg1.source.transformationPoint.clone(); }; } public function resume():void{ enterFrameBeacon.addEventListener(Event.ENTER_FRAME, this.enterFrameHandler, false, 0, true); this._isPlaying = true; } private function handleLastFrame():void{ this.playCount++; if ((((this.repeatCount == 0)) || ((this.playCount < this.repeatCount)))){ this.rewind(); } else { this.end(); }; } public function get motion():Motion{ return (this._motion); } public function play():void{ if (!this._isPlaying){ enterFrameBeacon.addEventListener(Event.ENTER_FRAME, this.enterFrameHandler, false, 0, true); this._isPlaying = true; }; this.playCount = 0; this.rewind(); this.dispatchEvent(new MotionEvent(MotionEvent.MOTION_START)); } public static function fromXMLString(_arg1:String, _arg2:DisplayObject=null):Animator{ return (new Animator(new XML(_arg1), _arg2)); } } }//package fl.motion
Section 156
//BezierEase (fl.motion.BezierEase) package fl.motion { import flash.geom.*; public class BezierEase implements ITween { public var points:Array; private var firstNode:Point; private var _target:String;// = "" private var lastNode:Point; public function BezierEase(_arg1:XML=null){ this.points = []; this.parseXML(_arg1); } public function set target(_arg1:String):void{ this._target = _arg1; } private function parseXML(_arg1:XML=null):BezierEase{ var _local3:XML; if (!_arg1){ return (this); }; if (_arg1.@target.length()){ this.target = _arg1.@target; }; var _local2:XMLList = _arg1.elements(); for each (_local3 in _local2) { this.points.push(new Point(Number(_local3.@x), Number(_local3.@y))); }; return (this); } public function get target():String{ return (this._target); } public function getValue(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ if (_arg4 <= 0){ return (NaN); }; var _local5:Number = (_arg1 / _arg4); if (_local5 <= 0){ return (_arg2); }; if (_local5 >= 1){ return ((_arg2 + _arg3)); }; this.firstNode = new Point(0, _arg2); this.lastNode = new Point(1, (_arg2 + _arg3)); var _local6:Array = [this.firstNode].concat(this.points); _local6.push(this.lastNode); var _local7:Number = CustomEase.getYForPercent(_local5, _local6); return (_local7); } } }//package fl.motion
Section 157
//BezierSegment (fl.motion.BezierSegment) package fl.motion { import flash.geom.*; public class BezierSegment { public var a:Point; public var c:Point; public var b:Point; public var d:Point; public function BezierSegment(_arg1:Point, _arg2:Point, _arg3:Point, _arg4:Point){ this.a = _arg1; this.b = _arg2; this.c = _arg3; this.d = _arg4; } public function getValue(_arg1:Number):Point{ var _local2:Number = this.a.x; var _local3:Number = (((((_arg1 * _arg1) * (this.d.x - _local2)) + ((3 * (1 - _arg1)) * ((_arg1 * (this.c.x - _local2)) + ((1 - _arg1) * (this.b.x - _local2))))) * _arg1) + _local2); var _local4:Number = this.a.y; var _local5:Number = (((((_arg1 * _arg1) * (this.d.y - _local4)) + ((3 * (1 - _arg1)) * ((_arg1 * (this.c.y - _local4)) + ((1 - _arg1) * (this.b.y - _local4))))) * _arg1) + _local4); return (new Point(_local3, _local5)); } public function getYForX(_arg1:Number, _arg2:Array=null):Number{ var _local6:Number; if (this.a.x < this.d.x){ if (_arg1 <= (this.a.x + 1E-16)){ return (this.a.y); }; if (_arg1 >= (this.d.x - 1E-16)){ return (this.d.y); }; } else { if (_arg1 >= (this.a.x + 1E-16)){ return (this.a.y); }; if (_arg1 <= (this.d.x - 1E-16)){ return (this.d.y); }; }; if (!_arg2){ _arg2 = getCubicCoefficients(this.a.x, this.b.x, this.c.x, this.d.x); }; var _local3:Array = getCubicRoots(_arg2[0], _arg2[1], _arg2[2], (_arg2[3] - _arg1)); var _local4:Number = NaN; if (_local3.length == 0){ _local4 = 0; } else { if (_local3.length == 1){ _local4 = _local3[0]; } else { for each (_local6 in _local3) { if ((((0 <= _local6)) && ((_local6 <= 1)))){ _local4 = _local6; break; }; }; }; }; if (isNaN(_local4)){ return (NaN); }; var _local5:Number = getSingleValue(_local4, this.a.y, this.b.y, this.c.y, this.d.y); return (_local5); } public static function getCubicCoefficients(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Array{ return ([(((-(_arg1) + (3 * _arg2)) - (3 * _arg3)) + _arg4), (((3 * _arg1) - (6 * _arg2)) + (3 * _arg3)), ((-3 * _arg1) + (3 * _arg2)), _arg1]); } public static function getSingleValue(_arg1:Number, _arg2:Number=0, _arg3:Number=0, _arg4:Number=0, _arg5:Number=0):Number{ return ((((((_arg1 * _arg1) * (_arg5 - _arg2)) + ((3 * (1 - _arg1)) * ((_arg1 * (_arg4 - _arg2)) + ((1 - _arg1) * (_arg3 - _arg2))))) * _arg1) + _arg2)); } public static function getCubicRoots(_arg1:Number=0, _arg2:Number=0, _arg3:Number=0, _arg4:Number=0):Array{ var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:int; var _local16:Number; if (!_arg1){ return (BezierSegment.getQuadraticRoots(_arg2, _arg3, _arg4)); }; if (_arg1 != 1){ _arg2 = (_arg2 / _arg1); _arg3 = (_arg3 / _arg1); _arg4 = (_arg4 / _arg1); }; var _local5:Number = (((_arg2 * _arg2) - (3 * _arg3)) / 9); var _local6:Number = (((((_arg2 * _arg2) - (3 * _arg3)) / 9) * _local5) * _local5); var _local7:Number = ((((((2 * _arg2) * _arg2) * _arg2) - ((9 * _arg2) * _arg3)) + (27 * _arg4)) / 54); var _local8:Number = (_local6 - (_local7 * _local7)); if (_local8 >= 0){ if (!_local5){ return ([0]); }; _local9 = Math.acos((_local7 / Math.sqrt(_local6))); _local10 = Math.sqrt(_local5); _local11 = (((-2 * _local10) * Math.cos((_local9 / 3))) - (_arg2 / 3)); _local12 = (((-2 * _local10) * Math.cos(((_local9 + (2 * Math.PI)) / 3))) - (_arg2 / 3)); _local13 = (((-2 * _local10) * Math.cos(((_local9 + (4 * Math.PI)) / 3))) - (_arg2 / 3)); return ([_local11, _local12, _local13]); //unresolved jump }; _local14 = Math.pow((Math.sqrt(-(_local8)) + Math.abs(_local7)), (1 / 3)); _local15 = ((_local7)>0) ? 1 : ((_local7 < 0)) ? -1 : 0; _local16 = ((-(_local15) * (_local14 + (_local5 / _local14))) - (_arg2 / 3)); return ([_local16]); } public static function getQuadraticRoots(_arg1:Number, _arg2:Number, _arg3:Number):Array{ var _local7:Number; var _local4:Array = []; if (!_arg1){ if (!_arg2){ return ([]); }; _local4[0] = (-(_arg3) / _arg2); return (_local4); }; var _local5:Number = ((_arg2 * _arg2) - ((4 * _arg1) * _arg3)); var _local6:int = ((_local5)>0) ? 1 : ((_local5 < 0)) ? -1 : 0; if (_local6 < 0){ return ([]); }; if (!_local6){ _local4[0] = (-(_arg2) / (2 * _arg1)); } else { _local4[0] = (_local4[1] = (-(_arg2) / (2 * _arg1))); _local7 = (Math.sqrt(_local5) / (2 * _arg1)); _local4[0] = (_local4[0] - _local7); _local4[1] = (_local4[1] + _local7); }; return (_local4); } } }//package fl.motion
Section 158
//Color (fl.motion.Color) package fl.motion { import flash.display.*; import flash.geom.*; public class Color extends ColorTransform { private var _tintColor:Number;// = 0 private var _tintMultiplier:Number;// = 0 public function Color(_arg1:Number=1, _arg2:Number=1, _arg3:Number=1, _arg4:Number=1, _arg5:Number=0, _arg6:Number=0, _arg7:Number=0, _arg8:Number=0){ super(_arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7, _arg8); } private function deriveTintColor():uint{ var _local1:Number = (1 / this.tintMultiplier); var _local2:uint = Math.round((this.redOffset * _local1)); var _local3:uint = Math.round((this.greenOffset * _local1)); var _local4:uint = Math.round((this.blueOffset * _local1)); var _local5:uint = (((_local2 << 16) | (_local3 << 8)) | _local4); return (_local5); } public function set brightness(_arg1:Number):void{ if (_arg1 > 1){ _arg1 = 1; } else { if (_arg1 < -1){ _arg1 = -1; }; }; var _local2:Number = (1 - Math.abs(_arg1)); var _local3:Number = 0; if (_arg1 > 0){ _local3 = (_arg1 * 0xFF); }; this.redMultiplier = (this.greenMultiplier = (this.blueMultiplier = _local2)); this.redOffset = (this.greenOffset = (this.blueOffset = _local3)); } private function parseXML(_arg1:XML=null):Color{ var _local3:XML; var _local4:String; var _local5:uint; if (!_arg1){ return (this); }; var _local2:XML = _arg1.elements()[0]; if (!_local2){ return (this); }; for each (_local3 in _local2.attributes()) { _local4 = _local3.localName(); if (_local4 == "tintColor"){ _local5 = (Number(_local3.toString()) as uint); this.tintColor = _local5; } else { this[_local4] = Number(_local3.toString()); }; }; return (this); } public function get tintColor():uint{ return (this._tintColor); } public function set tintColor(_arg1:uint):void{ this.setTint(_arg1, this.tintMultiplier); } public function get brightness():Number{ return ((this.redOffset) ? (1 - this.redMultiplier) : (this.redMultiplier - 1)); } public function set tintMultiplier(_arg1:Number):void{ this.setTint(this.tintColor, _arg1); } public function get tintMultiplier():Number{ return (this._tintMultiplier); } public function setTint(_arg1:uint, _arg2:Number):void{ this._tintColor = _arg1; this._tintMultiplier = _arg2; this.redMultiplier = (this.greenMultiplier = (this.blueMultiplier = (1 - _arg2))); var _local3:uint = ((_arg1 >> 16) & 0xFF); var _local4:uint = ((_arg1 >> 8) & 0xFF); var _local5:uint = (_arg1 & 0xFF); this.redOffset = Math.round((_local3 * _arg2)); this.greenOffset = Math.round((_local4 * _arg2)); this.blueOffset = Math.round((_local5 * _arg2)); } public static function interpolateColor(_arg1:uint, _arg2:uint, _arg3:Number):uint{ var _local4:Number = (1 - _arg3); var _local5:uint = ((_arg1 >> 24) & 0xFF); var _local6:uint = ((_arg1 >> 16) & 0xFF); var _local7:uint = ((_arg1 >> 8) & 0xFF); var _local8:uint = (_arg1 & 0xFF); var _local9:uint = ((_arg2 >> 24) & 0xFF); var _local10:uint = ((_arg2 >> 16) & 0xFF); var _local11:uint = ((_arg2 >> 8) & 0xFF); var _local12:uint = (_arg2 & 0xFF); var _local13:uint = ((_local5 * _local4) + (_local9 * _arg3)); var _local14:uint = ((_local6 * _local4) + (_local10 * _arg3)); var _local15:uint = ((_local7 * _local4) + (_local11 * _arg3)); var _local16:uint = ((_local8 * _local4) + (_local12 * _arg3)); var _local17:uint = ((((_local13 << 24) | (_local14 << 16)) | (_local15 << 8)) | _local16); return (_local17); } public static function interpolateTransform(_arg1:ColorTransform, _arg2:ColorTransform, _arg3:Number):ColorTransform{ var _local4:Number = (1 - _arg3); var _local5:ColorTransform = new ColorTransform(((_arg1.redMultiplier * _local4) + (_arg2.redMultiplier * _arg3)), ((_arg1.greenMultiplier * _local4) + (_arg2.greenMultiplier * _arg3)), ((_arg1.blueMultiplier * _local4) + (_arg2.blueMultiplier * _arg3)), ((_arg1.alphaMultiplier * _local4) + (_arg2.alphaMultiplier * _arg3)), ((_arg1.redOffset * _local4) + (_arg2.redOffset * _arg3)), ((_arg1.greenOffset * _local4) + (_arg2.greenOffset * _arg3)), ((_arg1.blueOffset * _local4) + (_arg2.blueOffset * _arg3)), ((_arg1.alphaOffset * _local4) + (_arg2.alphaOffset * _arg3))); return (_local5); } public static function fromXML(_arg1:XML):Color{ return (Color(new (Color).parseXML(_arg1))); } } }//package fl.motion
Section 159
//CustomEase (fl.motion.CustomEase) package fl.motion { import flash.geom.*; public class CustomEase implements ITween { public var points:Array; private var firstNode:Point; private var _target:String;// = "" private var lastNode:Point; public function CustomEase(_arg1:XML=null){ this.points = []; this.parseXML(_arg1); this.firstNode = new Point(0, 0); this.lastNode = new Point(1, 1); } public function set target(_arg1:String):void{ this._target = _arg1; } private function parseXML(_arg1:XML=null):CustomEase{ var _local3:XML; if (!_arg1){ return (this); }; if (_arg1.@target.length()){ this.target = _arg1.@target; }; var _local2:XMLList = _arg1.elements(); for each (_local3 in _local2) { this.points.push(new Point(Number(_local3.@x), Number(_local3.@y))); }; return (this); } public function get target():String{ return (this._target); } public function getValue(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ if (_arg4 <= 0){ return (NaN); }; var _local5:Number = (_arg1 / _arg4); if (_local5 <= 0){ return (_arg2); }; if (_local5 >= 1){ return ((_arg2 + _arg3)); }; var _local6:Array = [this.firstNode].concat(this.points); _local6.push(this.lastNode); var _local7:Number = getYForPercent(_local5, _local6); return ((_arg2 + (_local7 * _arg3))); } static function getYForPercent(_arg1:Number, _arg2:Array):Number{ var _local8:int; var _local9:BezierSegment; var _local3:BezierSegment = new BezierSegment(_arg2[0], _arg2[1], _arg2[2], _arg2[3]); var _local4:Array = [_local3]; var _local5 = 3; while (_local5 < (_arg2.length - 3)) { _local4.push(new BezierSegment(_arg2[_local5], _arg2[(_local5 + 1)], _arg2[(_local5 + 2)], _arg2[(_local5 + 3)])); _local5 = (_local5 + 3); }; var _local6:BezierSegment = _local3; if (_arg2.length >= 5){ _local8 = 0; while (_local8 < _local4.length) { _local9 = _local4[_local8]; if ((((_local9.a.x <= _arg1)) && ((_arg1 <= _local9.d.x)))){ _local6 = _local9; break; }; _local8++; }; }; var _local7:Number = _local6.getYForX(_arg1); return (_local7); } } }//package fl.motion
Section 160
//FunctionEase (fl.motion.FunctionEase) package fl.motion { import flash.utils.*; public class FunctionEase implements ITween { private var _functionName:String;// = "" public var parameters:Array;// = null private var _target:String;// = "" public var easingFunction:Function;// = null public function FunctionEase(_arg1:XML=null){ this.parseXML(_arg1); } public function get functionName():String{ return (this._functionName); } public function set target(_arg1:String):void{ this._target = _arg1; } public function set functionName(_arg1:String):void{ var _local2:Array = _arg1.split("."); var _local3:String = _local2.pop(); var _local4:String = _local2.join("."); var _local5:Class = (getDefinitionByName(_local4) as Class); if ((_local5[_local3] is Function)){ this.easingFunction = _local5[_local3]; this._functionName = _arg1; }; } public function get target():String{ return (this._target); } public function getValue(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ var _local5:Array; if ((this.parameters is Array)){ _local5 = [_arg1, _arg2, _arg3, _arg4].concat(this.parameters); return (this.easingFunction.apply(null, _local5)); }; return (this.easingFunction(_arg1, _arg2, _arg3, _arg4)); } private function parseXML(_arg1:XML=null):FunctionEase{ if (!_arg1){ return (this); }; if (_arg1.@functionName.length()){ this.functionName = _arg1.@functionName; }; return (this); } } }//package fl.motion
Section 161
//ITween (fl.motion.ITween) package fl.motion { public interface ITween { function get target():String; function set target(_arg1:String):void; function getValue(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number; } }//package fl.motion
Section 162
//Keyframe (fl.motion.Keyframe) package fl.motion { import flash.display.*; import flash.filters.*; import flash.utils.*; public class Keyframe { public var skewX:Number;// = NAN public var skewY:Number;// = NAN public var blendMode:String; public var firstFrame:String; public var tweenScale:Boolean;// = true public var cacheAsBitmap:Boolean;// = false public var rotateTimes:uint;// = 0 public var tweenSync:Boolean;// = false public var loop:String; public var scaleX:Number;// = NAN public var scaleY:Number;// = NAN private var _index:int;// = -1 public var tweenSnap:Boolean;// = false public var blank:Boolean;// = false public var color:Color; public var rotateDirection:String; public var orientToPath:Boolean;// = false public var tweens:Array; public var label:String;// = "" public var x:Number;// = NAN public var y:Number;// = NAN public var filters:Array; public function Keyframe(_arg1:XML=null){ blendMode = BlendMode.NORMAL; rotateDirection = RotateDirection.AUTO; super(); this.tweens = []; this.filters = []; this.parseXML(_arg1); } public function set index(_arg1:int):void{ this._index = ((_arg1)<0) ? 0 : _arg1; if (this._index == 0){ this.setDefaults(); }; } public function getTween(_arg1:String=""):ITween{ var _local2:ITween; for each (_local2 in this.tweens) { if ((((((((_local2.target == _arg1)) || ((((_local2.target == "rotation")) && ((((_arg1 == "skewX")) || ((_arg1 == "skewY")))))))) || ((((_local2.target == "position")) && ((((_arg1 == "x")) || ((_arg1 == "y")))))))) || ((((_local2.target == "scale")) && ((((_arg1 == "scaleX")) || ((_arg1 == "scaleY")))))))){ return (_local2); }; }; return (null); } public function setValue(_arg1:String, _arg2:Number):void{ this[_arg1] = _arg2; } public function getValue(_arg1:String):Number{ return (Number(this[_arg1])); } public function get index():int{ return (this._index); } private function setDefaults():void{ if (isNaN(this.x)){ this.x = 0; }; if (isNaN(this.y)){ this.y = 0; }; if (isNaN(this.scaleX)){ this.scaleX = 1; }; if (isNaN(this.scaleY)){ this.scaleY = 1; }; if (isNaN(this.skewX)){ this.skewX = 0; }; if (isNaN(this.skewY)){ this.skewY = 0; }; if (!this.color){ this.color = new Color(); }; } public function affectsTweenable(_arg1:String=""):Boolean{ return (((((((((((!(_arg1)) || (!(isNaN(this[_arg1]))))) || ((((_arg1 == "color")) && (this.color))))) || ((((_arg1 == "filters")) && (this.filters.length))))) || (this.blank))) || (this.getTween()))); } private function parseXML(_arg1:XML=null):Keyframe{ var tweenableName:String; var elements:XMLList; var filtersArray:Array; var child:XML; var attribute:XML; var attributeValue:String; var name:String; var tweenChildren:XMLList; var tweenChild:XML; var tweenName:String; var filtersChildren:XMLList; var filterXML:XML; var filterName:String; var filterClassName:String; var filterClass:Object; var filterInstance:BitmapFilter; var filterTypeInfo:XML; var accessorList:XMLList; var ratios:Array; var attrib:XML; var attribName:String; var accessor:XML; var attribType:String; var attribValue:String; var uintValue:uint; var valuesArray:Array; var xml = _arg1; if (!xml){ return (this); }; var indexString:String = xml.@index.toXMLString(); var indexValue:int = parseInt(indexString); if (indexString){ this.index = indexValue; } else { throw (new Error("<Keyframe> is missing the required attribute \"index\".")); }; if (xml.@label.length()){ this.label = xml.@label; }; if (xml.@tweenScale.length()){ this.tweenScale = (xml.@tweenScale.toString() == "true"); }; if (xml.@tweenSnap.length()){ this.tweenSnap = (xml.@tweenSnap.toString() == "true"); }; if (xml.@tweenSync.length()){ this.tweenSync = (xml.@tweenSync.toString() == "true"); }; if (xml.@blendMode.length()){ this.blendMode = xml.@blendMode; }; if (xml.@cacheAsBitmap.length()){ this.cacheAsBitmap = (xml.@cacheAsBitmap.toString() == "true"); }; if (xml.@rotateDirection.length()){ this.rotateDirection = xml.@rotateDirection; }; if (xml.@rotateTimes.length()){ this.rotateTimes = parseInt(xml.@rotateTimes); }; if (xml.@orientToPath.length()){ this.orientToPath = (xml.@orientToPath.toString() == "true"); }; if (xml.@blank.length()){ this.blank = (xml.@blank.toString() == "true"); }; var tweenableNames:Array = ["x", "y", "scaleX", "scaleY", "rotation", "skewX", "skewY"]; for each (tweenableName in tweenableNames) { attribute = xml.attribute(tweenableName)[0]; if (!attribute){ } else { attributeValue = attribute.toString(); if (attributeValue){ this[tweenableName] = Number(attributeValue); }; }; }; elements = xml.elements(); filtersArray = []; for each (child in elements) { name = child.localName(); if (name == "tweens"){ tweenChildren = child.elements(); for each (tweenChild in tweenChildren) { tweenName = tweenChild.localName(); if (tweenName == "SimpleEase"){ this.tweens.push(new SimpleEase(tweenChild)); } else { if (tweenName == "CustomEase"){ this.tweens.push(new CustomEase(tweenChild)); } else { if (tweenName == "BezierEase"){ this.tweens.push(new BezierEase(tweenChild)); } else { if (tweenName == "FunctionEase"){ this.tweens.push(new FunctionEase(tweenChild)); }; }; }; }; }; } else { if (name == "filters"){ filtersChildren = child.elements(); for each (filterXML in filtersChildren) { filterName = filterXML.localName(); filterClassName = ("flash.filters." + filterName); if (filterName == "AdjustColorFilter"){ } else { filterClass = getDefinitionByName(filterClassName); filterInstance = new (filterClass); filterTypeInfo = describeType(filterInstance); accessorList = filterTypeInfo.accessor; ratios = []; for each (attrib in filterXML.attributes()) { attribName = attrib.localName(); accessor = accessorList.(@name == attribName)[0]; attribType = accessor.@type; attribValue = attrib.toString(); if (attribType == "int"){ filterInstance[attribName] = parseInt(attribValue); } else { if (attribType == "uint"){ filterInstance[attribName] = (parseInt(attribValue) as uint); uintValue = (parseInt(attribValue) as uint); } else { if (attribType == "Number"){ filterInstance[attribName] = Number(attribValue); } else { if (attribType == "Boolean"){ filterInstance[attribName] = (attribValue == "true"); } else { if (attribType == "Array"){ attribValue = attribValue.substring(1, (attribValue.length - 1)); valuesArray = null; if ((((attribName == "ratios")) || ((attribName == "colors")))){ valuesArray = splitUint(attribValue); } else { if (attribName == "alphas"){ valuesArray = splitNumber(attribValue); }; }; if (attribName == "ratios"){ ratios = valuesArray; } else { if (valuesArray){ filterInstance[attribName] = valuesArray; }; }; } else { if (attribType == "String"){ filterInstance[attribName] = attribValue; }; }; }; }; }; }; }; if (ratios.length){ filterInstance["ratios"] = ratios; }; filtersArray.push(filterInstance); }; }; } else { if (name == "color"){ this.color = Color.fromXML(child); }; }; }; this.filters = filtersArray; }; return (this); } public function set rotation(_arg1:Number):void{ if (((isNaN(this.skewX)) || (isNaN(this.skewY)))){ this.skewX = _arg1; } else { this.skewX = (this.skewX + (_arg1 - this.skewY)); }; this.skewY = _arg1; } public function get rotation():Number{ return (this.skewY); } private static function splitNumber(_arg1:String):Array{ var _local2:Array = _arg1.split(","); var _local3:int; while (_local3 < _local2.length) { _local2[_local3] = Number(_local2[_local3]); _local3++; }; return (_local2); } private static function splitUint(_arg1:String):Array{ var _local2:Array = _arg1.split(","); var _local3:int; while (_local3 < _local2.length) { _local2[_local3] = (parseInt(_local2[_local3]) as uint); _local3++; }; return (_local2); } private static function splitInt(_arg1:String):Array{ var _local2:Array = _arg1.split(","); var _local3:int; while (_local3 < _local2.length) { _local2[_local3] = (parseInt(_local2[_local3]) as int); _local3++; }; return (_local2); } } }//package fl.motion
Section 163
//MatrixTransformer (fl.motion.MatrixTransformer) package fl.motion { import flash.geom.*; public class MatrixTransformer { public static function getSkewY(_arg1:Matrix):Number{ return ((Math.atan2(_arg1.b, _arg1.a) * (180 / Math.PI))); } public static function getScaleX(_arg1:Matrix):Number{ return (Math.sqrt(((_arg1.a * _arg1.a) + (_arg1.b * _arg1.b)))); } public static function getScaleY(_arg1:Matrix):Number{ return (Math.sqrt(((_arg1.c * _arg1.c) + (_arg1.d * _arg1.d)))); } public static function setSkewXRadians(_arg1:Matrix, _arg2:Number):void{ var _local3:Number = getScaleY(_arg1); _arg1.c = (-(_local3) * Math.sin(_arg2)); _arg1.d = (_local3 * Math.cos(_arg2)); } public static function setRotation(_arg1:Matrix, _arg2:Number):void{ setRotationRadians(_arg1, (_arg2 * (Math.PI / 180))); } public static function rotateAroundInternalPoint(_arg1:Matrix, _arg2:Number, _arg3:Number, _arg4:Number):void{ var _local5:Point = new Point(_arg2, _arg3); _local5 = _arg1.transformPoint(_local5); _arg1.tx = (_arg1.tx - _local5.x); _arg1.ty = (_arg1.ty - _local5.y); _arg1.rotate((_arg4 * (Math.PI / 180))); _arg1.tx = (_arg1.tx + _local5.x); _arg1.ty = (_arg1.ty + _local5.y); } public static function setSkewX(_arg1:Matrix, _arg2:Number):void{ setSkewXRadians(_arg1, (_arg2 * (Math.PI / 180))); } public static function setSkewY(_arg1:Matrix, _arg2:Number):void{ setSkewYRadians(_arg1, (_arg2 * (Math.PI / 180))); } public static function setScaleX(_arg1:Matrix, _arg2:Number):void{ var _local4:Number; var _local5:Number; var _local3:Number = getScaleX(_arg1); if (_local3){ _local4 = (_arg2 / _local3); _arg1.a = (_arg1.a * _local4); _arg1.b = (_arg1.b * _local4); } else { _local5 = getSkewYRadians(_arg1); _arg1.a = (Math.cos(_local5) * _arg2); _arg1.b = (Math.sin(_local5) * _arg2); }; } public static function setScaleY(_arg1:Matrix, _arg2:Number):void{ var _local4:Number; var _local5:Number; var _local3:Number = getScaleY(_arg1); if (_local3){ _local4 = (_arg2 / _local3); _arg1.c = (_arg1.c * _local4); _arg1.d = (_arg1.d * _local4); } else { _local5 = getSkewXRadians(_arg1); _arg1.c = (-(Math.sin(_local5)) * _arg2); _arg1.d = (Math.cos(_local5) * _arg2); }; } public static function setRotationRadians(_arg1:Matrix, _arg2:Number):void{ var _local3:Number = getRotationRadians(_arg1); var _local4:Number = getSkewXRadians(_arg1); setSkewXRadians(_arg1, ((_local4 + _arg2) - _local3)); setSkewYRadians(_arg1, _arg2); } public static function setSkewYRadians(_arg1:Matrix, _arg2:Number):void{ var _local3:Number = getScaleX(_arg1); _arg1.a = (_local3 * Math.cos(_arg2)); _arg1.b = (_local3 * Math.sin(_arg2)); } public static function getSkewX(_arg1:Matrix):Number{ return ((Math.atan2(-(_arg1.c), _arg1.d) * (180 / Math.PI))); } public static function getSkewYRadians(_arg1:Matrix):Number{ return (Math.atan2(_arg1.b, _arg1.a)); } public static function getSkewXRadians(_arg1:Matrix):Number{ return (Math.atan2(-(_arg1.c), _arg1.d)); } public static function getRotation(_arg1:Matrix):Number{ return ((getRotationRadians(_arg1) * (180 / Math.PI))); } public static function rotateAroundExternalPoint(_arg1:Matrix, _arg2:Number, _arg3:Number, _arg4:Number):void{ _arg1.tx = (_arg1.tx - _arg2); _arg1.ty = (_arg1.ty - _arg3); _arg1.rotate((_arg4 * (Math.PI / 180))); _arg1.tx = (_arg1.tx + _arg2); _arg1.ty = (_arg1.ty + _arg3); } public static function getRotationRadians(_arg1:Matrix):Number{ return (getSkewYRadians(_arg1)); } public static function matchInternalPointWithExternal(_arg1:Matrix, _arg2:Point, _arg3:Point):void{ var _local4:Point = _arg1.transformPoint(_arg2); var _local5:Number = (_arg3.x - _local4.x); var _local6:Number = (_arg3.y - _local4.y); _arg1.tx = (_arg1.tx + _local5); _arg1.ty = (_arg1.ty + _local6); } } }//package fl.motion
Section 164
//Motion (fl.motion.Motion) package fl.motion { import flash.filters.*; import flash.geom.*; import flash.utils.*; public class Motion { public var keyframes:Array; private var _duration:int;// = 0 public var source:Source; private var _keyframesCompact:Array; private static var typeCache:Object = {}; public function Motion(_arg1:XML=null){ var _local2:Keyframe; super(); this.keyframes = []; this.parseXML(_arg1); if (!this.source){ this.source = new Source(); }; if (this.duration == 0){ _local2 = new Keyframe(); _local2.index = 0; this.addKeyframe(_local2); }; } private function parseXML(_arg1:XML):Motion{ var _local4:XML; var _local5:XML; if (!_arg1){ return (this); }; if (_arg1.@duration.length()){ this._duration = parseInt(_arg1.@duration); }; var _local2:XMLList = _arg1.elements(); var _local3:Number = 0; while (_local3 < _local2.length()) { _local4 = _local2[_local3]; if (_local4.localName() == "source"){ _local5 = _local4.children()[0]; this.source = new Source(_local5); } else { if (_local4.localName() == "Keyframe"){ this.addKeyframe(new Keyframe(_local4)); }; }; _local3++; }; return (this); } public function addKeyframe(_arg1:Keyframe):void{ this.keyframes[_arg1.index] = _arg1; if (this.duration < this.keyframes.length){ this.duration = this.keyframes.length; }; } public function set duration(_arg1:int):void{ if (_arg1 < this.keyframes.length){ _arg1 = this.keyframes.length; }; this._duration = _arg1; } public function getFilters(_arg1:Number):Array{ var _local7:Keyframe; var _local8:Array; var _local9:Number; var _local10:Number; var _local2:Array; var _local3:Keyframe = this.getCurrentKeyframe(_arg1, "filters"); if (((!(_local3)) || (!(_local3.filters.length)))){ return ([]); }; var _local4:Array = _local3.filters; var _local5:Number = (_arg1 - _local3.index); var _local6:ITween = ((_local3.getTween("filters")) || (_local3.getTween())); if ((((_local5 == 0)) || (!(_local6)))){ _local2 = _local4; } else { if (_local6){ _local7 = this.getNextKeyframe(_arg1, "filters"); if (((!(_local7)) || (!(_local7.filters.length)))){ _local2 = _local4; } else { _local8 = _local7.filters; _local9 = (_local7.index - _local3.index); _local10 = _local6.getValue(_local5, 0, 1, _local9); _local2 = interpolateFilters(_local4, _local8, _local10); }; }; }; return (_local2); } public function getValue(_arg1:Number, _arg2:String):Number{ var _local10:Number; var _local11:Number; var _local12:Number; var _local3:Number = NaN; var _local4:Keyframe = this.getCurrentKeyframe(_arg1, _arg2); if (((!(_local4)) || (_local4.blank))){ return (NaN); }; var _local5:Number = _local4.getValue(_arg2); if (((isNaN(_local5)) && ((_local4.index > 0)))){ _local5 = this.getValue((_local4.index - 1), _arg2); }; if (isNaN(_local5)){ return (NaN); }; var _local6:Number = (_arg1 - _local4.index); if (_local6 == 0){ return (_local5); }; var _local7:ITween = ((_local4.getTween(_arg2)) || (_local4.getTween())); if (((((!(_local7)) || (((!(_local4.tweenScale)) && ((((_arg2 == Tweenables.SCALE_X)) || ((_arg2 == Tweenables.SCALE_Y)))))))) || ((((_local4.rotateDirection == RotateDirection.NONE)) && ((((((_arg2 == Tweenables.ROTATION)) || ((_arg2 == Tweenables.SKEW_X)))) || ((_arg2 == Tweenables.SKEW_Y)))))))){ return (_local5); }; var _local8:String = _arg2; if (_local7.target == ""){ _local8 = ""; }; var _local9:Keyframe = this.getNextKeyframe(_arg1, _local8); if (((!(_local9)) || (_local9.blank))){ return (_local5); }; _local10 = _local9.getValue(_arg2); if (isNaN(_local10)){ _local10 = _local5; }; _local11 = (_local10 - _local5); if ((((((_arg2 == Tweenables.SKEW_X)) || ((_arg2 == Tweenables.SKEW_Y)))) || ((_arg2 == Tweenables.ROTATION)))){ if (_local4.rotateDirection == RotateDirection.AUTO){ _local11 = (_local11 % 360); if (_local11 > 180){ _local11 = (_local11 - 360); } else { if (_local11 < -180){ _local11 = (_local11 + 360); }; }; } else { if (_local4.rotateDirection == RotateDirection.CW){ if (_local11 < 0){ _local11 = ((_local11 % 360) + 360); }; _local11 = (_local11 + (_local4.rotateTimes * 360)); } else { if (_local11 > 0){ _local11 = ((_local11 % 360) - 360); }; _local11 = (_local11 - (_local4.rotateTimes * 360)); }; }; }; _local12 = (_local9.index - _local4.index); _local3 = _local7.getValue(_local6, _local5, _local11, _local12); return (_local3); } public function setValue(_arg1:int, _arg2:String, _arg3:Number):void{ if (_arg1 == 0){ return; }; var _local4:Keyframe = this.keyframes[_arg1]; if (!_local4){ _local4 = new Keyframe(); _local4.index = _arg1; this.addKeyframe(_local4); }; _local4.setValue(_arg2, _arg3); } private function indexOutOfRange(_arg1:int):Boolean{ return (((((isNaN(_arg1)) || ((_arg1 < 0)))) || ((_arg1 > (this.duration - 1))))); } public function get duration():int{ if (this._duration < this.keyframes.length){ this._duration = this.keyframes.length; }; return (this._duration); } public function getNextKeyframe(_arg1:int, _arg2:String=""):Keyframe{ var _local4:Keyframe; if (((((isNaN(_arg1)) || ((_arg1 < 0)))) || ((_arg1 > (this.duration - 1))))){ return (null); }; var _local3:int = (_arg1 + 1); while (_local3 < this.keyframes.length) { _local4 = this.keyframes[_local3]; if (((_local4) && (_local4.affectsTweenable(_arg2)))){ return (_local4); }; _local3++; }; return (null); } public function getCurrentKeyframe(_arg1:int, _arg2:String=""):Keyframe{ var _local4:Keyframe; if (((((isNaN(_arg1)) || ((_arg1 < 0)))) || ((_arg1 > (this.duration - 1))))){ return (null); }; var _local3:int = _arg1; while (_local3 > 0) { _local4 = this.keyframes[_local3]; if (((_local4) && (_local4.affectsTweenable(_arg2)))){ return (_local4); }; _local3--; }; return (this.keyframes[0]); } public function set keyframesCompact(_arg1:Array):void{ var _local2:Keyframe; this._keyframesCompact = _arg1.concat(); this.keyframes = []; for each (_local2 in this._keyframesCompact) { this.addKeyframe(_local2); }; } public function get keyframesCompact():Array{ var _local1:Keyframe; this._keyframesCompact = []; for each (_local1 in this.keyframes) { if (_local1){ this._keyframesCompact.push(_local1); }; }; return (this._keyframesCompact); } public function getColorTransform(_arg1:int):ColorTransform{ var _local7:Keyframe; var _local8:ColorTransform; var _local9:Number; var _local10:Number; var _local2:ColorTransform; var _local3:Keyframe = this.getCurrentKeyframe(_arg1, "color"); if (((!(_local3)) || (!(_local3.color)))){ return (null); }; var _local4:ColorTransform = _local3.color; var _local5:Number = (_arg1 - _local3.index); var _local6:ITween = ((((_local3.getTween("color")) || (_local3.getTween("alpha")))) || (_local3.getTween())); if ((((_local5 == 0)) || (!(_local6)))){ _local2 = _local4; } else { if (_local6){ _local7 = this.getNextKeyframe(_arg1, "color"); if (((!(_local7)) || (!(_local7.color)))){ _local2 = _local4; } else { _local8 = _local7.color; _local9 = (_local7.index - _local3.index); _local10 = _local6.getValue(_local5, 0, 1, _local9); _local2 = Color.interpolateTransform(_local4, _local8, _local10); }; }; }; return (_local2); } private static function getTypeInfo(_arg1):XML{ var _local2 = ""; if ((_arg1 is String)){ _local2 = _arg1; } else { _local2 = getQualifiedClassName(_arg1); }; if ((_local2 in typeCache)){ return (typeCache[_local2]); }; if ((_arg1 is String)){ _arg1 = getDefinitionByName(_arg1); }; return ((typeCache[_local2] = describeType(_arg1))); } public static function interpolateFilter(_arg1:BitmapFilter, _arg2:BitmapFilter, _arg3:Number):BitmapFilter{ var _local8:XML; var _local9:String; var _local10:String; var _local11:uint; var _local12:uint; var _local13:uint; var _local14:Array; var _local15:Array; var _local16:Array; var _local17:int; var _local18:int; var _local19:int; var _local20:int; var _local21:int; var _local22:Number; var _local23:uint; var _local24:Number; var _local25:int; var _local26:Number; var _local27:uint; var _local28:Number; var _local29:int; var _local30:uint; var _local31:Number; if (((!(_arg2)) || (!((_arg1["constructor"] == _arg2["constructor"]))))){ return (_arg1); }; if (_arg3 > 1){ _arg3 = 1; } else { if (_arg3 < 0){ _arg3 = 0; }; }; var _local4:Number = (1 - _arg3); var _local5:BitmapFilter = _arg1.clone(); var _local6:XML = getTypeInfo(_arg1); var _local7:XMLList = _local6.accessor; for each (_local8 in _local7) { _local9 = _local8.@name.toString(); _local10 = _local8.@type; if ((((_local10 == "Number")) || ((_local10 == "int")))){ _local5[_local9] = ((_arg1[_local9] * _local4) + (_arg2[_local9] * _arg3)); } else { if (_local10 == "uint"){ switch (_local9){ case "color": case "highlightColor": case "shadowColor": _local11 = _arg1[_local9]; _local12 = _arg2[_local9]; _local13 = Color.interpolateColor(_local11, _local12, _arg3); _local5[_local9] = _local13; break; default: _local5[_local9] = ((_arg1[_local9] * _local4) + (_arg2[_local9] * _arg3)); break; }; }; }; }; if ((((_arg1 is GradientGlowFilter)) || ((_arg1 is GradientBevelFilter)))){ _local14 = []; _local15 = []; _local16 = []; _local17 = _arg1["ratios"].length; _local18 = _arg2["ratios"].length; _local19 = Math.max(_local17, _local18); _local20 = 0; while (_local20 < _local19) { _local21 = Math.min(_local20, (_local17 - 1)); _local22 = _arg1["ratios"][_local21]; _local23 = _arg1["colors"][_local21]; _local24 = _arg1["alphas"][_local21]; _local25 = Math.min(_local20, (_local18 - 1)); _local26 = _arg2["ratios"][_local25]; _local27 = _arg2["colors"][_local25]; _local28 = _arg2["alphas"][_local25]; _local29 = ((_local22 * _local4) + (_local26 * _arg3)); _local30 = Color.interpolateColor(_local23, _local27, _arg3); _local31 = ((_local24 * _local4) + (_local28 * _arg3)); _local14[_local20] = _local29; _local15[_local20] = _local30; _local16[_local20] = _local31; _local20++; }; _local5["colors"] = _local15; _local5["alphas"] = _local16; _local5["ratios"] = _local14; }; return (_local5); } public static function interpolateFilters(_arg1:Array, _arg2:Array, _arg3:Number):Array{ var _local6:BitmapFilter; var _local7:BitmapFilter; var _local8:BitmapFilter; if (_arg1.length != _arg2.length){ return (null); }; var _local4:Array = []; var _local5:int; while (_local5 < _arg1.length) { _local6 = _arg1[_local5]; _local7 = _arg2[_local5]; _local8 = interpolateFilter(_local6, _local7, _arg3); if (_local8){ _local4.push(_local8); }; _local5++; }; return (_local4); } public static function fromXMLString(_arg1:String):Motion{ var _local2:XML = new XML(_arg1); return (new Motion(_local2)); } } }//package fl.motion
Section 165
//MotionEvent (fl.motion.MotionEvent) package fl.motion { import flash.events.*; public class MotionEvent extends Event { public static const MOTION_UPDATE:String = "motionUpdate"; public static const TIME_CHANGE:String = "timeChange"; public static const MOTION_START:String = "motionStart"; public static const MOTION_END:String = "motionEnd"; public function MotionEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false){ super(_arg1, _arg2, _arg3); } override public function clone():Event{ return (new MotionEvent(this.type, this.bubbles, this.cancelable)); } } }//package fl.motion
Section 166
//RotateDirection (fl.motion.RotateDirection) package fl.motion { public class RotateDirection { public static const CW:String = "cw"; public static const CCW:String = "ccw"; public static const NONE:String = "none"; public static const AUTO:String = "auto"; } }//package fl.motion
Section 167
//SimpleEase (fl.motion.SimpleEase) package fl.motion { public class SimpleEase implements ITween { private var _ease:Number;// = 0 private var _target:String;// = "" public function SimpleEase(_arg1:XML=null){ this.parseXML(_arg1); } public function set target(_arg1:String):void{ this._target = _arg1; } private function parseXML(_arg1:XML=null):SimpleEase{ if (_arg1){ if (_arg1.@ease.length()){ this.ease = Number(_arg1.@ease); }; }; return (this); } public function get ease():Number{ return (this._ease); } public function get target():String{ return (this._target); } public function getValue(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (easeQuadPercent(_arg1, _arg2, _arg3, _arg4, this.ease)); } public function set ease(_arg1:Number):void{ this._ease = ((_arg1 > 1)) ? 1 : ((_arg1 < -1)) ? -1 : (isNaN(_arg1)) ? 0 : _arg1; } public static function easeQuadPercent(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number):Number{ if (_arg4 <= 0){ return (NaN); }; if (_arg1 <= 0){ return (_arg2); }; _arg1 = (_arg1 / _arg4); if (_arg1 >= 1){ return ((_arg2 + _arg3)); }; if (!_arg5){ return (((_arg3 * _arg1) + _arg2)); }; if (_arg5 > 1){ _arg5 = 1; } else { if (_arg5 < -1){ _arg5 = -1; }; }; if (_arg5 < 0){ return ((((_arg3 * _arg1) * ((_arg1 * -(_arg5)) + (1 + _arg5))) + _arg2)); }; return ((((_arg3 * _arg1) * (((2 - _arg1) * _arg5) + (1 - _arg5))) + _arg2)); } public static function easeNone(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ if (_arg4 <= 0){ return (NaN); }; if (_arg1 <= 0){ return (_arg2); }; if (_arg1 >= _arg4){ return ((_arg2 + _arg3)); }; return ((((_arg3 * _arg1) / _arg4) + _arg2)); } } }//package fl.motion
Section 168
//Source (fl.motion.Source) package fl.motion { import flash.geom.*; public class Source { public var instanceName:String;// = "" public var symbolName:String;// = "" public var dimensions:Rectangle; public var scaleX:Number;// = 1 public var skewX:Number;// = 0 public var skewY:Number;// = 0 public var elementType:String;// = "" public var transformationPoint:Point; public var linkageID:String;// = "" public var scaleY:Number;// = 1 public var frameRate:Number;// = NAN public var x:Number;// = 0 public var y:Number;// = 0 public var rotation:Number;// = 0 public function Source(_arg1:XML=null){ this.parseXML(_arg1); } private function parseXML(_arg1:XML=null):Source{ var _local3:XML; var _local4:XML; var _local5:XML; if (!_arg1){ return (this); }; if (_arg1.@instanceName){ this.instanceName = String(_arg1.@instanceName); }; if (_arg1.@symbolName){ this.symbolName = String(_arg1.@symbolName); }; if (_arg1.@linkageID){ this.linkageID = String(_arg1.@linkageID); }; if (!isNaN(_arg1.@frameRate)){ this.frameRate = Number(_arg1.@frameRate); }; var _local2:XMLList = _arg1.elements(); for each (_local3 in _local2) { if (_local3.localName() == "transformationPoint"){ _local4 = _local3.children()[0]; this.transformationPoint = new Point(Number(_local4.@x), Number(_local4.@y)); } else { if (_local3.localName() == "dimensions"){ _local5 = _local3.children()[0]; this.dimensions = new Rectangle(Number(_local5.@left), Number(_local5.@top), Number(_local5.@width), Number(_local5.@height)); }; }; }; return (this); } } }//package fl.motion
Section 169
//Tweenables (fl.motion.Tweenables) package fl.motion { public class Tweenables { public static const SCALE_X:String = "scaleX"; public static const SCALE_Y:String = "scaleY"; public static const SKEW_X:String = "skewX"; public static const SKEW_Y:String = "skewY"; public static const X:String = "x"; public static const Y:String = "y"; public static const ROTATION:String = "rotation"; } }//package fl.motion
Section 170
//Fade (fl.transitions.Fade) package fl.transitions { import flash.display.*; public class Fade extends Transition { protected var _alphaFinal:Number; public function Fade(_arg1:MovieClip, _arg2:Object, _arg3:TransitionManager){ super(_arg1, _arg2, _arg3); this._alphaFinal = this.manager.contentAppearance.alpha; } override public function get type():Class{ return (_slot1); } override protected function _render(_arg1:Number):void{ this._content.alpha = (this._alphaFinal * _arg1); } } }//package fl.transitions
Section 171
//Transition (fl.transitions.Transition) package fl.transitions { import flash.events.*; import flash.display.*; import flash.geom.*; public class Transition extends EventDispatcher { protected var _direction:uint;// = 0 protected var _height:Number;// = NAN protected var _easing:Function; protected var _twn:Tween; protected var _width:Number;// = NAN protected var _outerBounds:Rectangle; protected var _progress:Number; public var ID:int; protected var _innerBounds:Rectangle; protected var _manager:TransitionManager; protected var _duration:Number;// = 2 protected var _content:MovieClip; public static const IN:uint = 0; public static const OUT:uint = 1; public function Transition(_arg1:MovieClip, _arg2:Object, _arg3:TransitionManager){ this.content = _arg1; this.direction = _arg2.direction; this.duration = _arg2.duration; this.easing = _arg2.easing; this.manager = _arg3; this._innerBounds = this.manager._innerBounds; this._outerBounds = this.manager._outerBounds; this._width = this.manager._width; this._height = this.manager._height; this._resetTween(); } public function get type():Class{ return (Transition); } public function cleanUp():void{ this.removeEventListener("transitionInDone", this._manager.transitionInDone); this.removeEventListener("transitionOutDone", this._manager.transitionOutDone); this.stop(); } public function stop():void{ this._twn.fforward(); this._twn.stop(); } public function onMotionFinished(_arg1:Object):void{ if (this.direction == Transition.OUT){ this.dispatchEvent(new Event("transitionOutDone")); } else { this.dispatchEvent(new Event("transitionInDone")); }; } public function set easing(_arg1:Function):void{ this._easing = _arg1; if (this._twn){ this._twn.func = _arg1; }; } public function set manager(_arg1:TransitionManager):void{ if (this._manager){ this.removeEventListener("transitionInDone", this._manager.transitionInDone); this.removeEventListener("transitionOutDone", this._manager.transitionOutDone); }; this._manager = _arg1; this.addEventListener("transitionInDone", this._manager.transitionInDone); this.addEventListener("transitionOutDone", this._manager.transitionOutDone); } private function _resetTween():void{ if (this._twn){ this._twn.stop(); this._twn.removeEventListener(TweenEvent.MOTION_FINISH, this.onMotionFinished); }; this._twn = new Tween(this, "", this.easing, 0, 1, this.duration, true); this._twn.stop(); this._twn.prop = "progress"; this._twn.addEventListener(TweenEvent.MOTION_FINISH, this.onMotionFinished, false, 0, true); } public function drawBox(_arg1:MovieClip, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number):void{ _arg1.graphics.moveTo(_arg2, _arg3); _arg1.graphics.lineTo((_arg2 + _arg4), _arg3); _arg1.graphics.lineTo((_arg2 + _arg4), (_arg3 + _arg5)); _arg1.graphics.lineTo(_arg2, (_arg3 + _arg5)); _arg1.graphics.lineTo(_arg2, _arg3); } public function set progress(_arg1:Number):void{ if (this._progress == _arg1){ return; }; this._progress = _arg1; if (this._direction){ this._render((1 - _arg1)); } else { this._render(_arg1); }; this.dispatchEvent(new Event("transitionProgress")); } public function get duration():Number{ return (this._duration); } public function set duration(_arg1:Number):void{ if (_arg1){ this._duration = _arg1; if (this._twn){ this._twn.duration = _arg1; }; }; } public function start():void{ this.content.visible = true; this._twn.start(); } public function get easing():Function{ return (this._easing); } public function get manager():TransitionManager{ return (this._manager); } public function set content(_arg1:MovieClip):void{ if (_arg1){ this._content = _arg1; if (this._twn){ this._twn.obj = _arg1; }; }; } protected function _render(_arg1:Number):void{ } public function get content():MovieClip{ return (this._content); } public function drawCircle(_arg1:MovieClip, _arg2:Number, _arg3:Number, _arg4:Number):void{ _arg1.graphics.moveTo((_arg2 + _arg4), _arg3); _arg1.graphics.curveTo((_arg4 + _arg2), ((Math.tan((Math.PI / 8)) * _arg4) + _arg3), ((Math.sin((Math.PI / 4)) * _arg4) + _arg2), ((Math.sin((Math.PI / 4)) * _arg4) + _arg3)); _arg1.graphics.curveTo(((Math.tan((Math.PI / 8)) * _arg4) + _arg2), (_arg4 + _arg3), _arg2, (_arg4 + _arg3)); _arg1.graphics.curveTo(((-(Math.tan((Math.PI / 8))) * _arg4) + _arg2), (_arg4 + _arg3), ((-(Math.sin((Math.PI / 4))) * _arg4) + _arg2), ((Math.sin((Math.PI / 4)) * _arg4) + _arg3)); _arg1.graphics.curveTo((-(_arg4) + _arg2), ((Math.tan((Math.PI / 8)) * _arg4) + _arg3), (-(_arg4) + _arg2), _arg3); _arg1.graphics.curveTo((-(_arg4) + _arg2), ((-(Math.tan((Math.PI / 8))) * _arg4) + _arg3), ((-(Math.sin((Math.PI / 4))) * _arg4) + _arg2), ((-(Math.sin((Math.PI / 4))) * _arg4) + _arg3)); _arg1.graphics.curveTo(((-(Math.tan((Math.PI / 8))) * _arg4) + _arg2), (-(_arg4) + _arg3), _arg2, (-(_arg4) + _arg3)); _arg1.graphics.curveTo(((Math.tan((Math.PI / 8)) * _arg4) + _arg2), (-(_arg4) + _arg3), ((Math.sin((Math.PI / 4)) * _arg4) + _arg2), ((-(Math.sin((Math.PI / 4))) * _arg4) + _arg3)); _arg1.graphics.curveTo((_arg4 + _arg2), ((-(Math.tan((Math.PI / 8))) * _arg4) + _arg3), (_arg4 + _arg2), _arg3); } public function get progress():Number{ return (this._progress); } private function _noEase(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return ((((_arg3 * _arg1) / _arg4) + _arg2)); } public function set direction(_arg1:Number):void{ this._direction = (_arg1) ? 1 : 0; } public function get direction():Number{ return (this._direction); } } }//package fl.transitions
Section 172
//TransitionManager (fl.transitions.TransitionManager) package fl.transitions { import flash.events.*; import flash.display.*; import flash.geom.*; public class TransitionManager extends EventDispatcher { public var type:Object; public var _width:Number;// = NAN public var _height:Number;// = NAN public var _outerBounds:Rectangle; private var _visualPropList:Object; private var _triggerEvent:String; public var className:String;// = "TransitionManager" public var _innerBounds:Rectangle; private var _content:MovieClip; private var _contentAppearance:Object; private var _transitions:Object; private static var IDCount:int = 0; public function TransitionManager(_arg1:MovieClip){ type = TransitionManager; _visualPropList = {x:null, y:null, scaleX:null, scaleY:null, alpha:null, rotation:null}; super(); this.content = _arg1; this._transitions = {}; } public function removeTransition(_arg1:Transition):Boolean{ if (((((!(_arg1)) || (!(this._transitions)))) || (!(this._transitions[_arg1.ID])))){ return (false); }; _arg1.cleanUp(); return (delete this._transitions[_arg1.ID]); } public function saveContentAppearance():void{ var _local2:Object; var _local3:String; var _local1:MovieClip = this._content; if (!this._contentAppearance){ _local2 = (this._contentAppearance = {}); for (_local3 in this._visualPropList) { _local2[_local3] = _local1[_local3]; }; _local2.colorTransform = _local1.transform.colorTransform; }; this._innerBounds = _local1.getBounds(_local1); this._outerBounds = _local1.getBounds(_local1.parent); this._width = _local1.width; this._height = _local1.height; } public function removeAllTransitions():void{ var _local1:Transition; for each (_local1 in this._transitions) { _local1.cleanUp(); this.removeTransition(_local1); }; } function transitionInDone(_arg1:Object):void{ var _local2:Boolean; this.removeTransition(_arg1.target); if (this.numInTransitions == 0){ _local2 = this._content.visible; if ((((this._triggerEvent == "hide")) || ((this._triggerEvent == "hideChild")))){ this._content.visible = false; }; if (_local2){ this.dispatchEvent(new Event("allTransitionsInDone")); }; }; } public function addTransition(_arg1:Transition):Transition{ _arg1.ID = ++TransitionManager.IDCount; this._transitions[_arg1.ID] = _arg1; return (_arg1); } public function startTransition(_arg1:Object):Transition{ this.removeTransition(this.findTransition(_arg1)); var _local2:Class = _arg1.type; var _local3:Transition = new _local2(this._content, _arg1, this); this.addTransition(_local3); _local3.start(); return (_local3); } function transitionOutDone(_arg1:Object):void{ var _local2:Boolean; this.removeTransition(_arg1.target); if (this.numOutTransitions == 0){ this.restoreContentAppearance(); _local2 = this._content.visible; if (((_local2) && ((((_triggerEvent == "hide")) || ((_triggerEvent == "hideChild")))))){ this._content.visible = false; }; if (_local2){ this.dispatchEvent(new Event("allTransitionsOutDone")); }; }; } public function restoreContentAppearance():void{ var _local3:String; var _local1:MovieClip = this._content; var _local2:Object = this._contentAppearance; for (_local3 in this._visualPropList) { _local1[_local3] = _local2[_local3]; }; _local1.transform.colorTransform = _local2.colorTransform; } public function get numTransitions():Number{ var _local2:Transition; var _local1:Number = 0; for each (_local2 in this._transitions) { _local1++; }; return (_local1); } public function findTransition(_arg1:Object):Transition{ var _local2:Transition; for each (_local2 in this._transitions) { if (_local2.type == _arg1.type){ return (_local2); }; }; return (null); } public function set content(_arg1:MovieClip):void{ this._content = _arg1; this.saveContentAppearance(); } public function get numInTransitions():Number{ var _local3:Transition; var _local1:Number = 0; var _local2:Object = this._transitions; for each (_local3 in _local2) { if (!_local3.direction){ _local1++; }; }; return (_local1); } public function get numOutTransitions():Number{ var _local3:Transition; var _local1:Number = 0; var _local2:Object = this._transitions; for each (_local3 in _local2) { if (_local3.direction){ _local1++; }; }; return (_local1); } public function get content():MovieClip{ return (this._content); } public function get transitionsList():Object{ return (this._transitions); } public function get contentAppearance():Object{ return (this._contentAppearance); } public static function start(_arg1:MovieClip, _arg2:Object):Transition{ if (!_arg1.__transitionManager){ _arg1.__transitionManager = new TransitionManager(_arg1); }; if (_arg2.direction == 1){ _arg1.__transitionManager._triggerEvent = "hide"; } else { _arg1.__transitionManager._triggerEvent = "reveal"; }; return (_arg1.__transitionManager.startTransition(_arg2)); } } }//package fl.transitions
Section 173
//Tween (fl.transitions.Tween) package fl.transitions { import flash.events.*; import flash.display.*; import flash.utils.*; public class Tween extends EventDispatcher { private var _position:Number;// = NAN public var prevTime:Number;// = NAN public var prevPos:Number;// = NAN public var isPlaying:Boolean;// = false private var _fps:Number;// = NAN private var _time:Number;// = NAN public var begin:Number;// = NAN private var _finish:Number;// = NAN public var change:Number;// = NAN public var looping:Boolean;// = false private var _intervalID:uint;// = 0 public var func:Function; private var _timer:Timer;// = null private var _startTime:Number;// = NAN public var prop:String;// = "" private var _duration:Number;// = NAN public var obj:Object;// = null public var useSeconds:Boolean;// = false protected static var _mc:MovieClip = new MovieClip(); public function Tween(_arg1:Object, _arg2:String, _arg3:Function, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Boolean=false){ func = function (_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return ((((_arg3 * _arg1) / _arg4) + _arg2)); }; super(); if (!arguments.length){ return; }; this.obj = _arg1; this.prop = _arg2; this.begin = _arg4; this.position = _arg4; this.duration = _arg6; this.useSeconds = _arg7; if ((_arg3 is Function)){ this.func = _arg3; }; this.finish = _arg5; this._timer = new Timer(100); this.start(); } public function continueTo(_arg1:Number, _arg2:Number):void{ this.begin = this.position; this.finish = _arg1; if (!isNaN(_arg2)){ this.duration = _arg2; }; this.start(); } protected function startEnterFrame():void{ var _local1:Number; if (isNaN(this._fps)){ _mc.addEventListener(Event.ENTER_FRAME, this.onEnterFrame, false, 0, true); } else { _local1 = (1000 / this._fps); this._timer.delay = _local1; this._timer.addEventListener(TimerEvent.TIMER, this.timerHandler, false, 0, true); this._timer.start(); }; this.isPlaying = true; } public function stop():void{ this.stopEnterFrame(); this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_STOP, this._time, this._position)); } private function fixTime():void{ if (this.useSeconds){ this._startTime = (getTimer() - (this._time * 1000)); }; } public function set FPS(_arg1:Number):void{ var _local2:Boolean = this.isPlaying; this.stopEnterFrame(); this._fps = _arg1; if (_local2){ this.startEnterFrame(); }; } public function get finish():Number{ return ((this.begin + this.change)); } public function get duration():Number{ return (this._duration); } protected function stopEnterFrame():void{ if (isNaN(this._fps)){ _mc.removeEventListener(Event.ENTER_FRAME, this.onEnterFrame); } else { this._timer.stop(); }; this.isPlaying = false; } public function set time(_arg1:Number):void{ this.prevTime = this._time; if (_arg1 > this.duration){ if (this.looping){ this.rewind((_arg1 - this._duration)); this.update(); this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_LOOP, this._time, this._position)); } else { if (this.useSeconds){ this._time = this._duration; this.update(); }; this.stop(); this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_FINISH, this._time, this._position)); }; } else { if (_arg1 < 0){ this.rewind(); this.update(); } else { this._time = _arg1; this.update(); }; }; } public function getPosition(_arg1:Number=NaN):Number{ if (isNaN(_arg1)){ _arg1 = this._time; }; return (this.func(_arg1, this.begin, this.change, this._duration)); } public function set finish(_arg1:Number):void{ this.change = (_arg1 - this.begin); } public function set duration(_arg1:Number):void{ this._duration = ((_arg1)<=0) ? Infinity : _arg1; } public function get position():Number{ return (this.getPosition(this._time)); } public function setPosition(_arg1:Number):void{ this.prevPos = this._position; if (this.prop.length){ this.obj[this.prop] = (this._position = _arg1); }; this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_CHANGE, this._time, this._position)); } public function resume():void{ this.fixTime(); this.startEnterFrame(); this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_RESUME, this._time, this._position)); } public function fforward():void{ this.time = this._duration; this.fixTime(); } protected function onEnterFrame(_arg1:Event):void{ this.nextFrame(); } public function yoyo():void{ this.continueTo(this.begin, this.time); } public function nextFrame():void{ if (this.useSeconds){ this.time = ((getTimer() - this._startTime) / 1000); } else { this.time = (this._time + 1); }; } protected function timerHandler(_arg1:TimerEvent):void{ this.nextFrame(); _arg1.updateAfterEvent(); } public function get FPS():Number{ return (this._fps); } public function rewind(_arg1:Number=0):void{ this._time = _arg1; this.fixTime(); this.update(); } public function set position(_arg1:Number):void{ this.setPosition(_arg1); } public function get time():Number{ return (this._time); } private function update():void{ this.setPosition(this.getPosition(this._time)); } public function start():void{ this.rewind(); this.startEnterFrame(); this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_START, this._time, this._position)); } public function prevFrame():void{ if (!this.useSeconds){ this.time = (this._time - 1); }; } } }//package fl.transitions
Section 174
//TweenEvent (fl.transitions.TweenEvent) package fl.transitions { import flash.events.*; public class TweenEvent extends Event { public var position:Number;// = NAN public var time:Number;// = NAN public static const MOTION_START:String = "motionStart"; public static const MOTION_STOP:String = "motionStop"; public static const MOTION_LOOP:String = "motionLoop"; public static const MOTION_CHANGE:String = "motionChange"; public static const MOTION_FINISH:String = "motionFinish"; public static const MOTION_RESUME:String = "motionResume"; public function TweenEvent(_arg1:String, _arg2:Number, _arg3:Number, _arg4:Boolean=false, _arg5:Boolean=false){ super(_arg1, _arg4, _arg5); this.time = _arg2; this.position = _arg3; } override public function clone():Event{ return (new TweenEvent(this.type, this.time, this.position, this.bubbles, this.cancelable)); } } }//package fl.transitions
Section 175
//achter_tv_120 (MENUS_fla.achter_tv_120) package MENUS_fla { import flash.display.*; public dynamic class achter_tv_120 extends MovieClip { public var grain2:MovieClip; public var grain1:MovieClip; public var line:MovieClip; public var grain3:MovieClip; } }//package MENUS_fla
Section 176
//back_127 (MENUS_fla.back_127) package MENUS_fla { import flash.display.*; import flash.utils.*; import spill.localisation.*; public dynamic class back_127 extends MovieClip { public var __setPropDict:Dictionary; public var __id13_:LocalizedTextField; public var __id14_:LocalizedTextField; public function back_127(){ __setPropDict = new Dictionary(true); super(); addFrameScript(0, frame1, 8, frame9, 9, frame10, 10, frame11, 11, frame12, 12, frame13, 13, frame14, 14, frame15, 1, frame2, 2, frame3, 3, frame4, 4, frame5, 5, frame6, 6, frame7, 7, frame8, 15, frame16, 16, frame17, 17, frame18, 18, frame19, 19, frame20, 20, frame21, 21, frame22, 22, frame23); } function __setProp___id14__back_background_16(){ try { __id14_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id14_.text = "BACK"; __id14_.textColor = 16764006; __id14_.textSize = 12; __id14_.bold = true; __id14_.embedFonts = true; __id14_.font = "Comic Sans MS"; __id14_.hAlign = "center"; __id14_.multiline = false; __id14_.vAlign = "top"; __id14_.antiAliasType = "normal"; __id14_.glowBlur = 3; __id14_.glowColor = 0x333300; __id14_.useGlowFilter = true; __id14_.glowQuality = 1; __id14_.glowStrength = 5; __id14_.gridFitType = "pixel"; __id14_.italic = false; __id14_.selectable = false; __id14_.underline = false; try { __id14_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame10(){ if ((((__setPropDict[__id13_] == undefined)) || (!((((int(__setPropDict[__id13_]) >= 9)) && ((int(__setPropDict[__id13_]) <= 15))))))){ __setPropDict[__id13_] = currentFrame; __setProp___id13__back_text_9(); }; } function frame14(){ if ((((__setPropDict[__id13_] == undefined)) || (!((((int(__setPropDict[__id13_]) >= 9)) && ((int(__setPropDict[__id13_]) <= 15))))))){ __setPropDict[__id13_] = currentFrame; __setProp___id13__back_text_9(); }; } function frame12(){ if ((((__setPropDict[__id13_] == undefined)) || (!((((int(__setPropDict[__id13_]) >= 9)) && ((int(__setPropDict[__id13_]) <= 15))))))){ __setPropDict[__id13_] = currentFrame; __setProp___id13__back_text_9(); }; } function frame18(){ if ((((__setPropDict[__id14_] == undefined)) || (!((((int(__setPropDict[__id14_]) >= 16)) && ((int(__setPropDict[__id14_]) <= 23))))))){ __setPropDict[__id14_] = currentFrame; __setProp___id14__back_background_16(); }; if ((((__setPropDict[__id13_] == undefined)) || (!((((((int(__setPropDict[__id13_]) >= 1)) && ((int(__setPropDict[__id13_]) <= 8)))) || ((((int(__setPropDict[__id13_]) >= 16)) && ((int(__setPropDict[__id13_]) <= 23))))))))){ __setPropDict[__id13_] = currentFrame; __setProp___id13__back_text_1(); }; } function frame3(){ if ((((__setPropDict[__id13_] == undefined)) || (!((((((int(__setPropDict[__id13_]) >= 1)) && ((int(__setPropDict[__id13_]) <= 8)))) || ((((int(__setPropDict[__id13_]) >= 16)) && ((int(__setPropDict[__id13_]) <= 23))))))))){ __setPropDict[__id13_] = currentFrame; __setProp___id13__back_text_1(); }; } function frame15(){ if ((((__setPropDict[__id13_] == undefined)) || (!((((int(__setPropDict[__id13_]) >= 9)) && ((int(__setPropDict[__id13_]) <= 15))))))){ __setPropDict[__id13_] = currentFrame; __setProp___id13__back_text_9(); }; } function frame7(){ if ((((__setPropDict[__id13_] == undefined)) || (!((((((int(__setPropDict[__id13_]) >= 1)) && ((int(__setPropDict[__id13_]) <= 8)))) || ((((int(__setPropDict[__id13_]) >= 16)) && ((int(__setPropDict[__id13_]) <= 23))))))))){ __setPropDict[__id13_] = currentFrame; __setProp___id13__back_text_1(); }; } function frame1(){ if ((((__setPropDict[__id13_] == undefined)) || (!((((((int(__setPropDict[__id13_]) >= 1)) && ((int(__setPropDict[__id13_]) <= 8)))) || ((((int(__setPropDict[__id13_]) >= 16)) && ((int(__setPropDict[__id13_]) <= 23))))))))){ __setPropDict[__id13_] = currentFrame; __setProp___id13__back_text_1(); }; stop(); } function frame19(){ if ((((__setPropDict[__id14_] == undefined)) || (!((((int(__setPropDict[__id14_]) >= 16)) && ((int(__setPropDict[__id14_]) <= 23))))))){ __setPropDict[__id14_] = currentFrame; __setProp___id14__back_background_16(); }; if ((((__setPropDict[__id13_] == undefined)) || (!((((((int(__setPropDict[__id13_]) >= 1)) && ((int(__setPropDict[__id13_]) <= 8)))) || ((((int(__setPropDict[__id13_]) >= 16)) && ((int(__setPropDict[__id13_]) <= 23))))))))){ __setPropDict[__id13_] = currentFrame; __setProp___id13__back_text_1(); }; } function frame6(){ if ((((__setPropDict[__id13_] == undefined)) || (!((((((int(__setPropDict[__id13_]) >= 1)) && ((int(__setPropDict[__id13_]) <= 8)))) || ((((int(__setPropDict[__id13_]) >= 16)) && ((int(__setPropDict[__id13_]) <= 23))))))))){ __setPropDict[__id13_] = currentFrame; __setProp___id13__back_text_1(); }; } function frame13(){ if ((((__setPropDict[__id13_] == undefined)) || (!((((int(__setPropDict[__id13_]) >= 9)) && ((int(__setPropDict[__id13_]) <= 15))))))){ __setPropDict[__id13_] = currentFrame; __setProp___id13__back_text_9(); }; } function frame17(){ if ((((__setPropDict[__id14_] == undefined)) || (!((((int(__setPropDict[__id14_]) >= 16)) && ((int(__setPropDict[__id14_]) <= 23))))))){ __setPropDict[__id14_] = currentFrame; __setProp___id14__back_background_16(); }; if ((((__setPropDict[__id13_] == undefined)) || (!((((((int(__setPropDict[__id13_]) >= 1)) && ((int(__setPropDict[__id13_]) <= 8)))) || ((((int(__setPropDict[__id13_]) >= 16)) && ((int(__setPropDict[__id13_]) <= 23))))))))){ __setPropDict[__id13_] = currentFrame; __setProp___id13__back_text_1(); }; } function frame4(){ if ((((__setPropDict[__id13_] == undefined)) || (!((((((int(__setPropDict[__id13_]) >= 1)) && ((int(__setPropDict[__id13_]) <= 8)))) || ((((int(__setPropDict[__id13_]) >= 16)) && ((int(__setPropDict[__id13_]) <= 23))))))))){ __setPropDict[__id13_] = currentFrame; __setProp___id13__back_text_1(); }; } function frame5(){ if ((((__setPropDict[__id13_] == undefined)) || (!((((((int(__setPropDict[__id13_]) >= 1)) && ((int(__setPropDict[__id13_]) <= 8)))) || ((((int(__setPropDict[__id13_]) >= 16)) && ((int(__setPropDict[__id13_]) <= 23))))))))){ __setPropDict[__id13_] = currentFrame; __setProp___id13__back_text_1(); }; } function frame9(){ if ((((__setPropDict[__id13_] == undefined)) || (!((((int(__setPropDict[__id13_]) >= 9)) && ((int(__setPropDict[__id13_]) <= 15))))))){ __setPropDict[__id13_] = currentFrame; __setProp___id13__back_text_9(); }; } function frame22(){ if ((((__setPropDict[__id14_] == undefined)) || (!((((int(__setPropDict[__id14_]) >= 16)) && ((int(__setPropDict[__id14_]) <= 23))))))){ __setPropDict[__id14_] = currentFrame; __setProp___id14__back_background_16(); }; if ((((__setPropDict[__id13_] == undefined)) || (!((((((int(__setPropDict[__id13_]) >= 1)) && ((int(__setPropDict[__id13_]) <= 8)))) || ((((int(__setPropDict[__id13_]) >= 16)) && ((int(__setPropDict[__id13_]) <= 23))))))))){ __setPropDict[__id13_] = currentFrame; __setProp___id13__back_text_1(); }; } function frame16(){ if ((((__setPropDict[__id14_] == undefined)) || (!((((int(__setPropDict[__id14_]) >= 16)) && ((int(__setPropDict[__id14_]) <= 23))))))){ __setPropDict[__id14_] = currentFrame; __setProp___id14__back_background_16(); }; if ((((__setPropDict[__id13_] == undefined)) || (!((((((int(__setPropDict[__id13_]) >= 1)) && ((int(__setPropDict[__id13_]) <= 8)))) || ((((int(__setPropDict[__id13_]) >= 16)) && ((int(__setPropDict[__id13_]) <= 23))))))))){ __setPropDict[__id13_] = currentFrame; __setProp___id13__back_text_1(); }; } function frame8(){ if ((((__setPropDict[__id13_] == undefined)) || (!((((((int(__setPropDict[__id13_]) >= 1)) && ((int(__setPropDict[__id13_]) <= 8)))) || ((((int(__setPropDict[__id13_]) >= 16)) && ((int(__setPropDict[__id13_]) <= 23))))))))){ __setPropDict[__id13_] = currentFrame; __setProp___id13__back_text_1(); }; } function frame21(){ if ((((__setPropDict[__id14_] == undefined)) || (!((((int(__setPropDict[__id14_]) >= 16)) && ((int(__setPropDict[__id14_]) <= 23))))))){ __setPropDict[__id14_] = currentFrame; __setProp___id14__back_background_16(); }; if ((((__setPropDict[__id13_] == undefined)) || (!((((((int(__setPropDict[__id13_]) >= 1)) && ((int(__setPropDict[__id13_]) <= 8)))) || ((((int(__setPropDict[__id13_]) >= 16)) && ((int(__setPropDict[__id13_]) <= 23))))))))){ __setPropDict[__id13_] = currentFrame; __setProp___id13__back_text_1(); }; } function frame2(){ if ((((__setPropDict[__id13_] == undefined)) || (!((((((int(__setPropDict[__id13_]) >= 1)) && ((int(__setPropDict[__id13_]) <= 8)))) || ((((int(__setPropDict[__id13_]) >= 16)) && ((int(__setPropDict[__id13_]) <= 23))))))))){ __setPropDict[__id13_] = currentFrame; __setProp___id13__back_text_1(); }; } function frame23(){ if ((((__setPropDict[__id14_] == undefined)) || (!((((int(__setPropDict[__id14_]) >= 16)) && ((int(__setPropDict[__id14_]) <= 23))))))){ __setPropDict[__id14_] = currentFrame; __setProp___id14__back_background_16(); }; if ((((__setPropDict[__id13_] == undefined)) || (!((((((int(__setPropDict[__id13_]) >= 1)) && ((int(__setPropDict[__id13_]) <= 8)))) || ((((int(__setPropDict[__id13_]) >= 16)) && ((int(__setPropDict[__id13_]) <= 23))))))))){ __setPropDict[__id13_] = currentFrame; __setProp___id13__back_text_1(); }; } function frame20(){ if ((((__setPropDict[__id14_] == undefined)) || (!((((int(__setPropDict[__id14_]) >= 16)) && ((int(__setPropDict[__id14_]) <= 23))))))){ __setPropDict[__id14_] = currentFrame; __setProp___id14__back_background_16(); }; if ((((__setPropDict[__id13_] == undefined)) || (!((((((int(__setPropDict[__id13_]) >= 1)) && ((int(__setPropDict[__id13_]) <= 8)))) || ((((int(__setPropDict[__id13_]) >= 16)) && ((int(__setPropDict[__id13_]) <= 23))))))))){ __setPropDict[__id13_] = currentFrame; __setProp___id13__back_text_1(); }; } function frame11(){ if ((((__setPropDict[__id13_] == undefined)) || (!((((int(__setPropDict[__id13_]) >= 9)) && ((int(__setPropDict[__id13_]) <= 15))))))){ __setPropDict[__id13_] = currentFrame; __setProp___id13__back_text_9(); }; } function __setProp___id13__back_text_1(){ try { __id13_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id13_.text = "{Back_Button}"; __id13_.textColor = 15984129; __id13_.textSize = 12; __id13_.bold = true; __id13_.embedFonts = true; __id13_.font = "Comic Sans MS"; __id13_.hAlign = "center"; __id13_.multiline = false; __id13_.vAlign = "top"; __id13_.antiAliasType = "advanced"; __id13_.glowBlur = 3; __id13_.glowColor = 0; __id13_.useGlowFilter = true; __id13_.glowQuality = 1; __id13_.glowStrength = 30; __id13_.gridFitType = "pixel"; __id13_.italic = false; __id13_.selectable = false; __id13_.underline = false; try { __id13_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function __setProp___id13__back_text_9(){ try { __id13_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id13_.text = "{Back_Button}"; __id13_.textColor = 0xCCFF00; __id13_.textSize = 12; __id13_.bold = true; __id13_.embedFonts = true; __id13_.font = "Comic Sans MS"; __id13_.hAlign = "center"; __id13_.multiline = false; __id13_.vAlign = "top"; __id13_.antiAliasType = "advanced"; __id13_.glowBlur = 3; __id13_.glowColor = 0x102200; __id13_.useGlowFilter = true; __id13_.glowQuality = 1; __id13_.glowStrength = 30; __id13_.gridFitType = "pixel"; __id13_.italic = false; __id13_.selectable = false; __id13_.underline = false; try { __id13_["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package MENUS_fla
Section 177
//backgroundvolume_72 (MENUS_fla.backgroundvolume_72) package MENUS_fla { import flash.display.*; public dynamic class backgroundvolume_72 extends MovieClip { public var btn:SimpleButton; } }//package MENUS_fla
Section 178
//bord_animatie_6 (MENUS_fla.bord_animatie_6) package MENUS_fla { import flash.display.*; public dynamic class bord_animatie_6 extends MovieClip { public function bord_animatie_6(){ addFrameScript(29, frame30); } function frame30(){ stop(); } } }//package MENUS_fla
Section 179
//button_tut2_110 (MENUS_fla.button_tut2_110) package MENUS_fla { import flash.display.*; public dynamic class button_tut2_110 extends MovieClip { public var _down:MovieClip; } }//package MENUS_fla
Section 180
//button_tut3_111 (MENUS_fla.button_tut3_111) package MENUS_fla { import flash.display.*; public dynamic class button_tut3_111 extends MovieClip { public var _down:MovieClip; } }//package MENUS_fla
Section 181
//button_tut4_112 (MENUS_fla.button_tut4_112) package MENUS_fla { import flash.display.*; public dynamic class button_tut4_112 extends MovieClip { public var _down:MovieClip; } }//package MENUS_fla
Section 182
//button_tut5_113 (MENUS_fla.button_tut5_113) package MENUS_fla { import flash.display.*; public dynamic class button_tut5_113 extends MovieClip { public var _down:MovieClip; } }//package MENUS_fla
Section 183
//campaignmodebtn_95 (MENUS_fla.campaignmodebtn_95) package MENUS_fla { import flash.display.*; import spill.localisation.*; public dynamic class campaignmodebtn_95 extends MovieClip { public var __id28_:LocalizedTextField; public function campaignmodebtn_95(){ addFrameScript(0, frame1); __setProp___id28__campaignmodebtn_Layer1_1(); } function frame1(){ stop(); } function __setProp___id28__campaignmodebtn_Layer1_1(){ try { __id28_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id28_.text = "{Campaign_Mode_Button}"; __id28_.textColor = 0xFFFF00; __id28_.textSize = 12; __id28_.bold = true; __id28_.embedFonts = true; __id28_.font = "Comic Sans MS"; __id28_.hAlign = "center"; __id28_.multiline = false; __id28_.vAlign = "top"; __id28_.antiAliasType = "normal"; __id28_.glowBlur = 3; __id28_.glowColor = 0x330000; __id28_.useGlowFilter = false; __id28_.glowQuality = 1; __id28_.glowStrength = 5; __id28_.gridFitType = "pixel"; __id28_.italic = false; __id28_.selectable = false; __id28_.underline = false; try { __id28_["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package MENUS_fla
Section 184
//cancelbtn_96 (MENUS_fla.cancelbtn_96) package MENUS_fla { import flash.display.*; import spill.localisation.*; public dynamic class cancelbtn_96 extends MovieClip { public var __id30_:LocalizedTextField; public function cancelbtn_96(){ addFrameScript(0, frame1); __setProp___id30__cancelbtn_Layer1_1(); } function frame1(){ stop(); } function __setProp___id30__cancelbtn_Layer1_1(){ try { __id30_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id30_.text = "{Cancel}"; __id30_.textColor = 0xFFFF00; __id30_.textSize = 12; __id30_.bold = true; __id30_.embedFonts = true; __id30_.font = "Comic Sans MS"; __id30_.hAlign = "center"; __id30_.multiline = false; __id30_.vAlign = "top"; __id30_.antiAliasType = "normal"; __id30_.glowBlur = 3; __id30_.glowColor = 0x330000; __id30_.useGlowFilter = false; __id30_.glowQuality = 1; __id30_.glowStrength = 5; __id30_.gridFitType = "pixel"; __id30_.italic = false; __id30_.selectable = false; __id30_.underline = false; try { __id30_["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package MENUS_fla
Section 185
//flag_icon_251 (MENUS_fla.flag_icon_251) package MENUS_fla { import flash.display.*; public dynamic class flag_icon_251 extends MovieClip { public function flag_icon_251(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package MENUS_fla
Section 186
//godmodebtn_94 (MENUS_fla.godmodebtn_94) package MENUS_fla { import flash.display.*; import spill.localisation.*; public dynamic class godmodebtn_94 extends MovieClip { public var __id27_:LocalizedTextField; public function godmodebtn_94(){ addFrameScript(0, frame1); __setProp___id27__godmodebtn_Layer1_1(); } function __setProp___id27__godmodebtn_Layer1_1(){ try { __id27_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id27_.text = "{God_Mode_Button}"; __id27_.textColor = 0xFFFF00; __id27_.textSize = 12; __id27_.bold = true; __id27_.embedFonts = true; __id27_.font = "Comic Sans MS"; __id27_.hAlign = "center"; __id27_.multiline = false; __id27_.vAlign = "top"; __id27_.antiAliasType = "normal"; __id27_.glowBlur = 3; __id27_.glowColor = 0x330000; __id27_.useGlowFilter = false; __id27_.glowQuality = 1; __id27_.glowStrength = 5; __id27_.gridFitType = "pixel"; __id27_.italic = false; __id27_.selectable = false; __id27_.underline = false; try { __id27_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame1(){ stop(); } } }//package MENUS_fla
Section 187
//hand_8 (MENUS_fla.hand_8) package MENUS_fla { import flash.display.*; public dynamic class hand_8 extends MovieClip { public function hand_8(){ addFrameScript(29, frame30); } function frame30(){ stop(); stop(); } } }//package MENUS_fla
Section 188
//highscores_20 (MENUS_fla.highscores_20) package MENUS_fla { import flash.display.*; import flash.utils.*; import spill.localisation.*; public dynamic class highscores_20 extends MovieClip { public var __setPropDict:Dictionary; public var __id35_:LocalizedTextField; public var __id36_:LocalizedTextField; public function highscores_20(){ __setPropDict = new Dictionary(true); super(); addFrameScript(0, frame1, 15, frame16, 16, frame17, 17, frame18, 18, frame19, 19, frame20, 20, frame21, 21, frame22, 22, frame23, 8, frame9, 9, frame10, 10, frame11, 11, frame12, 12, frame13, 13, frame14, 14, frame15, 1, frame2, 2, frame3, 3, frame4, 4, frame5, 5, frame6, 6, frame7, 7, frame8); } function frame10(){ if ((((__setPropDict[__id35_] == undefined)) || (!((((int(__setPropDict[__id35_]) >= 9)) && ((int(__setPropDict[__id35_]) <= 15))))))){ __setPropDict[__id35_] = currentFrame; __setProp___id35__highscores_text_9(); }; } function frame14(){ if ((((__setPropDict[__id35_] == undefined)) || (!((((int(__setPropDict[__id35_]) >= 9)) && ((int(__setPropDict[__id35_]) <= 15))))))){ __setPropDict[__id35_] = currentFrame; __setProp___id35__highscores_text_9(); }; } function frame12(){ if ((((__setPropDict[__id35_] == undefined)) || (!((((int(__setPropDict[__id35_]) >= 9)) && ((int(__setPropDict[__id35_]) <= 15))))))){ __setPropDict[__id35_] = currentFrame; __setProp___id35__highscores_text_9(); }; } function frame18(){ if ((((__setPropDict[__id35_] == undefined)) || (!((((((int(__setPropDict[__id35_]) >= 1)) && ((int(__setPropDict[__id35_]) <= 8)))) || ((((int(__setPropDict[__id35_]) >= 16)) && ((int(__setPropDict[__id35_]) <= 23))))))))){ __setPropDict[__id35_] = currentFrame; __setProp___id35__highscores_text_1(); }; if ((((__setPropDict[__id36_] == undefined)) || (!((((int(__setPropDict[__id36_]) >= 16)) && ((int(__setPropDict[__id36_]) <= 23))))))){ __setPropDict[__id36_] = currentFrame; __setProp___id36__highscores_background_16(); }; } function frame3(){ if ((((__setPropDict[__id35_] == undefined)) || (!((((((int(__setPropDict[__id35_]) >= 1)) && ((int(__setPropDict[__id35_]) <= 8)))) || ((((int(__setPropDict[__id35_]) >= 16)) && ((int(__setPropDict[__id35_]) <= 23))))))))){ __setPropDict[__id35_] = currentFrame; __setProp___id35__highscores_text_1(); }; } function frame16(){ if ((((__setPropDict[__id35_] == undefined)) || (!((((((int(__setPropDict[__id35_]) >= 1)) && ((int(__setPropDict[__id35_]) <= 8)))) || ((((int(__setPropDict[__id35_]) >= 16)) && ((int(__setPropDict[__id35_]) <= 23))))))))){ __setPropDict[__id35_] = currentFrame; __setProp___id35__highscores_text_1(); }; if ((((__setPropDict[__id36_] == undefined)) || (!((((int(__setPropDict[__id36_]) >= 16)) && ((int(__setPropDict[__id36_]) <= 23))))))){ __setPropDict[__id36_] = currentFrame; __setProp___id36__highscores_background_16(); }; } function frame1(){ if ((((__setPropDict[__id35_] == undefined)) || (!((((((int(__setPropDict[__id35_]) >= 1)) && ((int(__setPropDict[__id35_]) <= 8)))) || ((((int(__setPropDict[__id35_]) >= 16)) && ((int(__setPropDict[__id35_]) <= 23))))))))){ __setPropDict[__id35_] = currentFrame; __setProp___id35__highscores_text_1(); }; stop(); } function frame19(){ if ((((__setPropDict[__id35_] == undefined)) || (!((((((int(__setPropDict[__id35_]) >= 1)) && ((int(__setPropDict[__id35_]) <= 8)))) || ((((int(__setPropDict[__id35_]) >= 16)) && ((int(__setPropDict[__id35_]) <= 23))))))))){ __setPropDict[__id35_] = currentFrame; __setProp___id35__highscores_text_1(); }; if ((((__setPropDict[__id36_] == undefined)) || (!((((int(__setPropDict[__id36_]) >= 16)) && ((int(__setPropDict[__id36_]) <= 23))))))){ __setPropDict[__id36_] = currentFrame; __setProp___id36__highscores_background_16(); }; } function frame6(){ if ((((__setPropDict[__id35_] == undefined)) || (!((((((int(__setPropDict[__id35_]) >= 1)) && ((int(__setPropDict[__id35_]) <= 8)))) || ((((int(__setPropDict[__id35_]) >= 16)) && ((int(__setPropDict[__id35_]) <= 23))))))))){ __setPropDict[__id35_] = currentFrame; __setProp___id35__highscores_text_1(); }; } function frame13(){ if ((((__setPropDict[__id35_] == undefined)) || (!((((int(__setPropDict[__id35_]) >= 9)) && ((int(__setPropDict[__id35_]) <= 15))))))){ __setPropDict[__id35_] = currentFrame; __setProp___id35__highscores_text_9(); }; } function frame17(){ if ((((__setPropDict[__id35_] == undefined)) || (!((((((int(__setPropDict[__id35_]) >= 1)) && ((int(__setPropDict[__id35_]) <= 8)))) || ((((int(__setPropDict[__id35_]) >= 16)) && ((int(__setPropDict[__id35_]) <= 23))))))))){ __setPropDict[__id35_] = currentFrame; __setProp___id35__highscores_text_1(); }; if ((((__setPropDict[__id36_] == undefined)) || (!((((int(__setPropDict[__id36_]) >= 16)) && ((int(__setPropDict[__id36_]) <= 23))))))){ __setPropDict[__id36_] = currentFrame; __setProp___id36__highscores_background_16(); }; } function frame4(){ if ((((__setPropDict[__id35_] == undefined)) || (!((((((int(__setPropDict[__id35_]) >= 1)) && ((int(__setPropDict[__id35_]) <= 8)))) || ((((int(__setPropDict[__id35_]) >= 16)) && ((int(__setPropDict[__id35_]) <= 23))))))))){ __setPropDict[__id35_] = currentFrame; __setProp___id35__highscores_text_1(); }; } function frame5(){ if ((((__setPropDict[__id35_] == undefined)) || (!((((((int(__setPropDict[__id35_]) >= 1)) && ((int(__setPropDict[__id35_]) <= 8)))) || ((((int(__setPropDict[__id35_]) >= 16)) && ((int(__setPropDict[__id35_]) <= 23))))))))){ __setPropDict[__id35_] = currentFrame; __setProp___id35__highscores_text_1(); }; } function frame21(){ if ((((__setPropDict[__id35_] == undefined)) || (!((((((int(__setPropDict[__id35_]) >= 1)) && ((int(__setPropDict[__id35_]) <= 8)))) || ((((int(__setPropDict[__id35_]) >= 16)) && ((int(__setPropDict[__id35_]) <= 23))))))))){ __setPropDict[__id35_] = currentFrame; __setProp___id35__highscores_text_1(); }; if ((((__setPropDict[__id36_] == undefined)) || (!((((int(__setPropDict[__id36_]) >= 16)) && ((int(__setPropDict[__id36_]) <= 23))))))){ __setPropDict[__id36_] = currentFrame; __setProp___id36__highscores_background_16(); }; } function frame22(){ if ((((__setPropDict[__id35_] == undefined)) || (!((((((int(__setPropDict[__id35_]) >= 1)) && ((int(__setPropDict[__id35_]) <= 8)))) || ((((int(__setPropDict[__id35_]) >= 16)) && ((int(__setPropDict[__id35_]) <= 23))))))))){ __setPropDict[__id35_] = currentFrame; __setProp___id35__highscores_text_1(); }; if ((((__setPropDict[__id36_] == undefined)) || (!((((int(__setPropDict[__id36_]) >= 16)) && ((int(__setPropDict[__id36_]) <= 23))))))){ __setPropDict[__id36_] = currentFrame; __setProp___id36__highscores_background_16(); }; } function frame20(){ if ((((__setPropDict[__id35_] == undefined)) || (!((((((int(__setPropDict[__id35_]) >= 1)) && ((int(__setPropDict[__id35_]) <= 8)))) || ((((int(__setPropDict[__id35_]) >= 16)) && ((int(__setPropDict[__id35_]) <= 23))))))))){ __setPropDict[__id35_] = currentFrame; __setProp___id35__highscores_text_1(); }; if ((((__setPropDict[__id36_] == undefined)) || (!((((int(__setPropDict[__id36_]) >= 16)) && ((int(__setPropDict[__id36_]) <= 23))))))){ __setPropDict[__id36_] = currentFrame; __setProp___id36__highscores_background_16(); }; } function frame9(){ if ((((__setPropDict[__id35_] == undefined)) || (!((((int(__setPropDict[__id35_]) >= 9)) && ((int(__setPropDict[__id35_]) <= 15))))))){ __setPropDict[__id35_] = currentFrame; __setProp___id35__highscores_text_9(); }; } function frame2(){ if ((((__setPropDict[__id35_] == undefined)) || (!((((((int(__setPropDict[__id35_]) >= 1)) && ((int(__setPropDict[__id35_]) <= 8)))) || ((((int(__setPropDict[__id35_]) >= 16)) && ((int(__setPropDict[__id35_]) <= 23))))))))){ __setPropDict[__id35_] = currentFrame; __setProp___id35__highscores_text_1(); }; } function frame15(){ if ((((__setPropDict[__id35_] == undefined)) || (!((((int(__setPropDict[__id35_]) >= 9)) && ((int(__setPropDict[__id35_]) <= 15))))))){ __setPropDict[__id35_] = currentFrame; __setProp___id35__highscores_text_9(); }; } function frame7(){ if ((((__setPropDict[__id35_] == undefined)) || (!((((((int(__setPropDict[__id35_]) >= 1)) && ((int(__setPropDict[__id35_]) <= 8)))) || ((((int(__setPropDict[__id35_]) >= 16)) && ((int(__setPropDict[__id35_]) <= 23))))))))){ __setPropDict[__id35_] = currentFrame; __setProp___id35__highscores_text_1(); }; } function frame8(){ if ((((__setPropDict[__id35_] == undefined)) || (!((((((int(__setPropDict[__id35_]) >= 1)) && ((int(__setPropDict[__id35_]) <= 8)))) || ((((int(__setPropDict[__id35_]) >= 16)) && ((int(__setPropDict[__id35_]) <= 23))))))))){ __setPropDict[__id35_] = currentFrame; __setProp___id35__highscores_text_1(); }; } function frame11(){ if ((((__setPropDict[__id35_] == undefined)) || (!((((int(__setPropDict[__id35_]) >= 9)) && ((int(__setPropDict[__id35_]) <= 15))))))){ __setPropDict[__id35_] = currentFrame; __setProp___id35__highscores_text_9(); }; } function frame23(){ if ((((__setPropDict[__id35_] == undefined)) || (!((((((int(__setPropDict[__id35_]) >= 1)) && ((int(__setPropDict[__id35_]) <= 8)))) || ((((int(__setPropDict[__id35_]) >= 16)) && ((int(__setPropDict[__id35_]) <= 23))))))))){ __setPropDict[__id35_] = currentFrame; __setProp___id35__highscores_text_1(); }; if ((((__setPropDict[__id36_] == undefined)) || (!((((int(__setPropDict[__id36_]) >= 16)) && ((int(__setPropDict[__id36_]) <= 23))))))){ __setPropDict[__id36_] = currentFrame; __setProp___id36__highscores_background_16(); }; } function __setProp___id35__highscores_text_9(){ try { __id35_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id35_.text = "{High_Score_Button}"; __id35_.textColor = 0xCCFF00; __id35_.textSize = 12; __id35_.bold = true; __id35_.embedFonts = true; __id35_.font = "Comic Sans MS"; __id35_.hAlign = "center"; __id35_.multiline = false; __id35_.vAlign = "top"; __id35_.antiAliasType = "advanced"; __id35_.glowBlur = 3; __id35_.glowColor = 0x102200; __id35_.useGlowFilter = true; __id35_.glowQuality = 1; __id35_.glowStrength = 30; __id35_.gridFitType = "pixel"; __id35_.italic = false; __id35_.selectable = false; __id35_.underline = false; try { __id35_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function __setProp___id36__highscores_background_16(){ try { __id36_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id36_.text = "BACK"; __id36_.textColor = 16764006; __id36_.textSize = 12; __id36_.bold = true; __id36_.embedFonts = true; __id36_.font = "Comic Sans MS"; __id36_.hAlign = "center"; __id36_.multiline = false; __id36_.vAlign = "top"; __id36_.antiAliasType = "normal"; __id36_.glowBlur = 3; __id36_.glowColor = 0x333300; __id36_.useGlowFilter = true; __id36_.glowQuality = 1; __id36_.glowStrength = 5; __id36_.gridFitType = "pixel"; __id36_.italic = false; __id36_.selectable = false; __id36_.underline = false; try { __id36_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function __setProp___id35__highscores_text_1(){ try { __id35_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id35_.text = "{High_Score_Button}"; __id35_.textColor = 15984129; __id35_.textSize = 12; __id35_.bold = true; __id35_.embedFonts = true; __id35_.font = "Comic Sans MS"; __id35_.hAlign = "center"; __id35_.multiline = false; __id35_.vAlign = "top"; __id35_.antiAliasType = "advanced"; __id35_.glowBlur = 3; __id35_.glowColor = 0; __id35_.useGlowFilter = true; __id35_.glowQuality = 1; __id35_.glowStrength = 30; __id35_.gridFitType = "pixel"; __id35_.italic = false; __id35_.selectable = false; __id35_.underline = false; try { __id35_["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package MENUS_fla
Section 189
//howtoplay_27 (MENUS_fla.howtoplay_27) package MENUS_fla { import flash.display.*; import flash.utils.*; import spill.localisation.*; public dynamic class howtoplay_27 extends MovieClip { public var __setPropDict:Dictionary; public var __id37_:LocalizedTextField; public var __id38_:LocalizedTextField; public function howtoplay_27(){ __setPropDict = new Dictionary(true); super(); addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4, 4, frame5, 5, frame6, 6, frame7, 7, frame8, 15, frame16, 16, frame17, 17, frame18, 18, frame19, 19, frame20, 20, frame21, 21, frame22, 22, frame23, 8, frame9, 9, frame10, 10, frame11, 11, frame12, 12, frame13, 13, frame14, 14, frame15); } function __setProp___id37__howtoplay_text_1(){ try { __id37_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id37_.text = "{How_To_Play_Button}"; __id37_.textColor = 15984129; __id37_.textSize = 12; __id37_.bold = true; __id37_.embedFonts = true; __id37_.font = "Comic Sans MS"; __id37_.hAlign = "center"; __id37_.multiline = false; __id37_.vAlign = "top"; __id37_.antiAliasType = "advanced"; __id37_.glowBlur = 3; __id37_.glowColor = 0; __id37_.useGlowFilter = true; __id37_.glowQuality = 1; __id37_.glowStrength = 30; __id37_.gridFitType = "pixel"; __id37_.italic = false; __id37_.selectable = false; __id37_.underline = false; try { __id37_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function __setProp___id37__howtoplay_text_9(){ try { __id37_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id37_.text = "{How_To_Play_Button}"; __id37_.textColor = 0xCCFF00; __id37_.textSize = 12; __id37_.bold = true; __id37_.embedFonts = true; __id37_.font = "Comic Sans MS"; __id37_.hAlign = "center"; __id37_.multiline = false; __id37_.vAlign = "top"; __id37_.antiAliasType = "advanced"; __id37_.glowBlur = 3; __id37_.glowColor = 0x102200; __id37_.useGlowFilter = true; __id37_.glowQuality = 1; __id37_.glowStrength = 30; __id37_.gridFitType = "pixel"; __id37_.italic = false; __id37_.selectable = false; __id37_.underline = false; try { __id37_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame10(){ if ((((__setPropDict[__id37_] == undefined)) || (!((((int(__setPropDict[__id37_]) >= 9)) && ((int(__setPropDict[__id37_]) <= 15))))))){ __setPropDict[__id37_] = currentFrame; __setProp___id37__howtoplay_text_9(); }; } function frame14(){ if ((((__setPropDict[__id37_] == undefined)) || (!((((int(__setPropDict[__id37_]) >= 9)) && ((int(__setPropDict[__id37_]) <= 15))))))){ __setPropDict[__id37_] = currentFrame; __setProp___id37__howtoplay_text_9(); }; } function frame12(){ if ((((__setPropDict[__id37_] == undefined)) || (!((((int(__setPropDict[__id37_]) >= 9)) && ((int(__setPropDict[__id37_]) <= 15))))))){ __setPropDict[__id37_] = currentFrame; __setProp___id37__howtoplay_text_9(); }; } function __setProp___id38__howtoplay_background_16(){ try { __id38_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id38_.text = "BACK"; __id38_.textColor = 16764006; __id38_.textSize = 12; __id38_.bold = true; __id38_.embedFonts = true; __id38_.font = "Comic Sans MS"; __id38_.hAlign = "center"; __id38_.multiline = false; __id38_.vAlign = "top"; __id38_.antiAliasType = "normal"; __id38_.glowBlur = 3; __id38_.glowColor = 0x333300; __id38_.useGlowFilter = true; __id38_.glowQuality = 1; __id38_.glowStrength = 5; __id38_.gridFitType = "pixel"; __id38_.italic = false; __id38_.selectable = false; __id38_.underline = false; try { __id38_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame3(){ if ((((__setPropDict[__id37_] == undefined)) || (!((((((int(__setPropDict[__id37_]) >= 1)) && ((int(__setPropDict[__id37_]) <= 8)))) || ((((int(__setPropDict[__id37_]) >= 16)) && ((int(__setPropDict[__id37_]) <= 23))))))))){ __setPropDict[__id37_] = currentFrame; __setProp___id37__howtoplay_text_1(); }; } function frame6(){ if ((((__setPropDict[__id37_] == undefined)) || (!((((((int(__setPropDict[__id37_]) >= 1)) && ((int(__setPropDict[__id37_]) <= 8)))) || ((((int(__setPropDict[__id37_]) >= 16)) && ((int(__setPropDict[__id37_]) <= 23))))))))){ __setPropDict[__id37_] = currentFrame; __setProp___id37__howtoplay_text_1(); }; } function frame7(){ if ((((__setPropDict[__id37_] == undefined)) || (!((((((int(__setPropDict[__id37_]) >= 1)) && ((int(__setPropDict[__id37_]) <= 8)))) || ((((int(__setPropDict[__id37_]) >= 16)) && ((int(__setPropDict[__id37_]) <= 23))))))))){ __setPropDict[__id37_] = currentFrame; __setProp___id37__howtoplay_text_1(); }; } function frame1(){ if ((((__setPropDict[__id37_] == undefined)) || (!((((((int(__setPropDict[__id37_]) >= 1)) && ((int(__setPropDict[__id37_]) <= 8)))) || ((((int(__setPropDict[__id37_]) >= 16)) && ((int(__setPropDict[__id37_]) <= 23))))))))){ __setPropDict[__id37_] = currentFrame; __setProp___id37__howtoplay_text_1(); }; stop(); } function frame13(){ if ((((__setPropDict[__id37_] == undefined)) || (!((((int(__setPropDict[__id37_]) >= 9)) && ((int(__setPropDict[__id37_]) <= 15))))))){ __setPropDict[__id37_] = currentFrame; __setProp___id37__howtoplay_text_9(); }; } function frame17(){ if ((((__setPropDict[__id38_] == undefined)) || (!((((int(__setPropDict[__id38_]) >= 16)) && ((int(__setPropDict[__id38_]) <= 23))))))){ __setPropDict[__id38_] = currentFrame; __setProp___id38__howtoplay_background_16(); }; if ((((__setPropDict[__id37_] == undefined)) || (!((((((int(__setPropDict[__id37_]) >= 1)) && ((int(__setPropDict[__id37_]) <= 8)))) || ((((int(__setPropDict[__id37_]) >= 16)) && ((int(__setPropDict[__id37_]) <= 23))))))))){ __setPropDict[__id37_] = currentFrame; __setProp___id37__howtoplay_text_1(); }; } function frame4(){ if ((((__setPropDict[__id37_] == undefined)) || (!((((((int(__setPropDict[__id37_]) >= 1)) && ((int(__setPropDict[__id37_]) <= 8)))) || ((((int(__setPropDict[__id37_]) >= 16)) && ((int(__setPropDict[__id37_]) <= 23))))))))){ __setPropDict[__id37_] = currentFrame; __setProp___id37__howtoplay_text_1(); }; } function frame5(){ if ((((__setPropDict[__id37_] == undefined)) || (!((((((int(__setPropDict[__id37_]) >= 1)) && ((int(__setPropDict[__id37_]) <= 8)))) || ((((int(__setPropDict[__id37_]) >= 16)) && ((int(__setPropDict[__id37_]) <= 23))))))))){ __setPropDict[__id37_] = currentFrame; __setProp___id37__howtoplay_text_1(); }; } function frame21(){ if ((((__setPropDict[__id38_] == undefined)) || (!((((int(__setPropDict[__id38_]) >= 16)) && ((int(__setPropDict[__id38_]) <= 23))))))){ __setPropDict[__id38_] = currentFrame; __setProp___id38__howtoplay_background_16(); }; if ((((__setPropDict[__id37_] == undefined)) || (!((((((int(__setPropDict[__id37_]) >= 1)) && ((int(__setPropDict[__id37_]) <= 8)))) || ((((int(__setPropDict[__id37_]) >= 16)) && ((int(__setPropDict[__id37_]) <= 23))))))))){ __setPropDict[__id37_] = currentFrame; __setProp___id37__howtoplay_text_1(); }; } function frame22(){ if ((((__setPropDict[__id38_] == undefined)) || (!((((int(__setPropDict[__id38_]) >= 16)) && ((int(__setPropDict[__id38_]) <= 23))))))){ __setPropDict[__id38_] = currentFrame; __setProp___id38__howtoplay_background_16(); }; if ((((__setPropDict[__id37_] == undefined)) || (!((((((int(__setPropDict[__id37_]) >= 1)) && ((int(__setPropDict[__id37_]) <= 8)))) || ((((int(__setPropDict[__id37_]) >= 16)) && ((int(__setPropDict[__id37_]) <= 23))))))))){ __setPropDict[__id37_] = currentFrame; __setProp___id37__howtoplay_text_1(); }; } function frame16(){ if ((((__setPropDict[__id38_] == undefined)) || (!((((int(__setPropDict[__id38_]) >= 16)) && ((int(__setPropDict[__id38_]) <= 23))))))){ __setPropDict[__id38_] = currentFrame; __setProp___id38__howtoplay_background_16(); }; if ((((__setPropDict[__id37_] == undefined)) || (!((((((int(__setPropDict[__id37_]) >= 1)) && ((int(__setPropDict[__id37_]) <= 8)))) || ((((int(__setPropDict[__id37_]) >= 16)) && ((int(__setPropDict[__id37_]) <= 23))))))))){ __setPropDict[__id37_] = currentFrame; __setProp___id37__howtoplay_text_1(); }; } function frame8(){ if ((((__setPropDict[__id37_] == undefined)) || (!((((((int(__setPropDict[__id37_]) >= 1)) && ((int(__setPropDict[__id37_]) <= 8)))) || ((((int(__setPropDict[__id37_]) >= 16)) && ((int(__setPropDict[__id37_]) <= 23))))))))){ __setPropDict[__id37_] = currentFrame; __setProp___id37__howtoplay_text_1(); }; } function frame9(){ if ((((__setPropDict[__id37_] == undefined)) || (!((((int(__setPropDict[__id37_]) >= 9)) && ((int(__setPropDict[__id37_]) <= 15))))))){ __setPropDict[__id37_] = currentFrame; __setProp___id37__howtoplay_text_9(); }; } function frame2(){ if ((((__setPropDict[__id37_] == undefined)) || (!((((((int(__setPropDict[__id37_]) >= 1)) && ((int(__setPropDict[__id37_]) <= 8)))) || ((((int(__setPropDict[__id37_]) >= 16)) && ((int(__setPropDict[__id37_]) <= 23))))))))){ __setPropDict[__id37_] = currentFrame; __setProp___id37__howtoplay_text_1(); }; } function frame15(){ if ((((__setPropDict[__id37_] == undefined)) || (!((((int(__setPropDict[__id37_]) >= 9)) && ((int(__setPropDict[__id37_]) <= 15))))))){ __setPropDict[__id37_] = currentFrame; __setProp___id37__howtoplay_text_9(); }; } function frame23(){ if ((((__setPropDict[__id38_] == undefined)) || (!((((int(__setPropDict[__id38_]) >= 16)) && ((int(__setPropDict[__id38_]) <= 23))))))){ __setPropDict[__id38_] = currentFrame; __setProp___id38__howtoplay_background_16(); }; if ((((__setPropDict[__id37_] == undefined)) || (!((((((int(__setPropDict[__id37_]) >= 1)) && ((int(__setPropDict[__id37_]) <= 8)))) || ((((int(__setPropDict[__id37_]) >= 16)) && ((int(__setPropDict[__id37_]) <= 23))))))))){ __setPropDict[__id37_] = currentFrame; __setProp___id37__howtoplay_text_1(); }; } function frame20(){ if ((((__setPropDict[__id38_] == undefined)) || (!((((int(__setPropDict[__id38_]) >= 16)) && ((int(__setPropDict[__id38_]) <= 23))))))){ __setPropDict[__id38_] = currentFrame; __setProp___id38__howtoplay_background_16(); }; if ((((__setPropDict[__id37_] == undefined)) || (!((((((int(__setPropDict[__id37_]) >= 1)) && ((int(__setPropDict[__id37_]) <= 8)))) || ((((int(__setPropDict[__id37_]) >= 16)) && ((int(__setPropDict[__id37_]) <= 23))))))))){ __setPropDict[__id37_] = currentFrame; __setProp___id37__howtoplay_text_1(); }; } function frame18(){ if ((((__setPropDict[__id38_] == undefined)) || (!((((int(__setPropDict[__id38_]) >= 16)) && ((int(__setPropDict[__id38_]) <= 23))))))){ __setPropDict[__id38_] = currentFrame; __setProp___id38__howtoplay_background_16(); }; if ((((__setPropDict[__id37_] == undefined)) || (!((((((int(__setPropDict[__id37_]) >= 1)) && ((int(__setPropDict[__id37_]) <= 8)))) || ((((int(__setPropDict[__id37_]) >= 16)) && ((int(__setPropDict[__id37_]) <= 23))))))))){ __setPropDict[__id37_] = currentFrame; __setProp___id37__howtoplay_text_1(); }; } function frame11(){ if ((((__setPropDict[__id37_] == undefined)) || (!((((int(__setPropDict[__id37_]) >= 9)) && ((int(__setPropDict[__id37_]) <= 15))))))){ __setPropDict[__id37_] = currentFrame; __setProp___id37__howtoplay_text_9(); }; } function frame19(){ if ((((__setPropDict[__id38_] == undefined)) || (!((((int(__setPropDict[__id38_]) >= 16)) && ((int(__setPropDict[__id38_]) <= 23))))))){ __setPropDict[__id38_] = currentFrame; __setProp___id38__howtoplay_background_16(); }; if ((((__setPropDict[__id37_] == undefined)) || (!((((((int(__setPropDict[__id37_]) >= 1)) && ((int(__setPropDict[__id37_]) <= 8)))) || ((((int(__setPropDict[__id37_]) >= 16)) && ((int(__setPropDict[__id37_]) <= 23))))))))){ __setPropDict[__id37_] = currentFrame; __setProp___id37__howtoplay_text_1(); }; } } }//package MENUS_fla
Section 190
//howtoplaybtn_100 (MENUS_fla.howtoplaybtn_100) package MENUS_fla { import flash.display.*; import spill.localisation.*; public dynamic class howtoplaybtn_100 extends MovieClip { public var __id26_:LocalizedTextField; public function howtoplaybtn_100(){ addFrameScript(0, frame1); __setProp___id26__howtoplaybtn_Layer1_1(); } function __setProp___id26__howtoplaybtn_Layer1_1(){ try { __id26_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id26_.text = "{How_To_Play_Button}"; __id26_.textColor = 0xFFFF00; __id26_.textSize = 12; __id26_.bold = true; __id26_.embedFonts = true; __id26_.font = "Comic Sans MS"; __id26_.hAlign = "center"; __id26_.multiline = false; __id26_.vAlign = "top"; __id26_.antiAliasType = "normal"; __id26_.glowBlur = 3; __id26_.glowColor = 0x330000; __id26_.useGlowFilter = false; __id26_.glowQuality = 1; __id26_.glowStrength = 5; __id26_.gridFitType = "pixel"; __id26_.italic = false; __id26_.selectable = false; __id26_.underline = false; try { __id26_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame1(){ stop(); } } }//package MENUS_fla
Section 191
//l_br_253 (MENUS_fla.l_br_253) package MENUS_fla { import flash.display.*; import flash.text.*; public dynamic class l_br_253 extends MovieClip { public var text:TextField; public var flag:MovieClip; } }//package MENUS_fla
Section 192
//loadingbar_81 (MENUS_fla.loadingbar_81) package MENUS_fla { import flash.display.*; public dynamic class loadingbar_81 extends MovieClip { public var loadingbar:MovieClip; } }//package MENUS_fla
Section 193
//mainmenu_246 (MENUS_fla.mainmenu_246) package MENUS_fla { import flash.display.*; import flash.utils.*; import spill.localisation.*; public dynamic class mainmenu_246 extends MovieClip { public var __id10_:LocalizedTextField; public var __setPropDict:Dictionary; public var __id9_:LocalizedTextField; public function mainmenu_246(){ __setPropDict = new Dictionary(true); super(); addFrameScript(0, frame1, 15, frame16, 16, frame17, 17, frame18, 18, frame19, 19, frame20, 20, frame21, 21, frame22, 22, frame23, 8, frame9, 9, frame10, 10, frame11, 11, frame12, 12, frame13, 13, frame14, 14, frame15, 1, frame2, 2, frame3, 3, frame4, 4, frame5, 5, frame6, 6, frame7, 7, frame8); } function __setProp___id10__mainmenu_background_16(){ try { __id10_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id10_.text = "BACK"; __id10_.textColor = 16764006; __id10_.textSize = 12; __id10_.bold = true; __id10_.embedFonts = true; __id10_.font = "Comic Sans MS"; __id10_.hAlign = "center"; __id10_.multiline = false; __id10_.vAlign = "top"; __id10_.antiAliasType = "normal"; __id10_.glowBlur = 3; __id10_.glowColor = 0x333300; __id10_.useGlowFilter = true; __id10_.glowQuality = 1; __id10_.glowStrength = 5; __id10_.gridFitType = "pixel"; __id10_.italic = false; __id10_.selectable = false; __id10_.underline = false; try { __id10_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame10(){ if ((((__setPropDict[__id9_] == undefined)) || (!((((int(__setPropDict[__id9_]) >= 9)) && ((int(__setPropDict[__id9_]) <= 15))))))){ __setPropDict[__id9_] = currentFrame; __setProp___id9__mainmenu_text_9(); }; } function frame14(){ if ((((__setPropDict[__id9_] == undefined)) || (!((((int(__setPropDict[__id9_]) >= 9)) && ((int(__setPropDict[__id9_]) <= 15))))))){ __setPropDict[__id9_] = currentFrame; __setProp___id9__mainmenu_text_9(); }; } function frame12(){ if ((((__setPropDict[__id9_] == undefined)) || (!((((int(__setPropDict[__id9_]) >= 9)) && ((int(__setPropDict[__id9_]) <= 15))))))){ __setPropDict[__id9_] = currentFrame; __setProp___id9__mainmenu_text_9(); }; } function frame18(){ if ((((__setPropDict[__id9_] == undefined)) || (!((((((int(__setPropDict[__id9_]) >= 1)) && ((int(__setPropDict[__id9_]) <= 8)))) || ((((int(__setPropDict[__id9_]) >= 16)) && ((int(__setPropDict[__id9_]) <= 23))))))))){ __setPropDict[__id9_] = currentFrame; __setProp___id9__mainmenu_text_1(); }; if ((((__setPropDict[__id10_] == undefined)) || (!((((int(__setPropDict[__id10_]) >= 16)) && ((int(__setPropDict[__id10_]) <= 23))))))){ __setPropDict[__id10_] = currentFrame; __setProp___id10__mainmenu_background_16(); }; } function frame3(){ if ((((__setPropDict[__id9_] == undefined)) || (!((((((int(__setPropDict[__id9_]) >= 1)) && ((int(__setPropDict[__id9_]) <= 8)))) || ((((int(__setPropDict[__id9_]) >= 16)) && ((int(__setPropDict[__id9_]) <= 23))))))))){ __setPropDict[__id9_] = currentFrame; __setProp___id9__mainmenu_text_1(); }; } function frame15(){ if ((((__setPropDict[__id9_] == undefined)) || (!((((int(__setPropDict[__id9_]) >= 9)) && ((int(__setPropDict[__id9_]) <= 15))))))){ __setPropDict[__id9_] = currentFrame; __setProp___id9__mainmenu_text_9(); }; } function frame16(){ if ((((__setPropDict[__id9_] == undefined)) || (!((((((int(__setPropDict[__id9_]) >= 1)) && ((int(__setPropDict[__id9_]) <= 8)))) || ((((int(__setPropDict[__id9_]) >= 16)) && ((int(__setPropDict[__id9_]) <= 23))))))))){ __setPropDict[__id9_] = currentFrame; __setProp___id9__mainmenu_text_1(); }; if ((((__setPropDict[__id10_] == undefined)) || (!((((int(__setPropDict[__id10_]) >= 16)) && ((int(__setPropDict[__id10_]) <= 23))))))){ __setPropDict[__id10_] = currentFrame; __setProp___id10__mainmenu_background_16(); }; } function frame1(){ if ((((__setPropDict[__id9_] == undefined)) || (!((((((int(__setPropDict[__id9_]) >= 1)) && ((int(__setPropDict[__id9_]) <= 8)))) || ((((int(__setPropDict[__id9_]) >= 16)) && ((int(__setPropDict[__id9_]) <= 23))))))))){ __setPropDict[__id9_] = currentFrame; __setProp___id9__mainmenu_text_1(); }; stop(); } function frame19(){ if ((((__setPropDict[__id9_] == undefined)) || (!((((((int(__setPropDict[__id9_]) >= 1)) && ((int(__setPropDict[__id9_]) <= 8)))) || ((((int(__setPropDict[__id9_]) >= 16)) && ((int(__setPropDict[__id9_]) <= 23))))))))){ __setPropDict[__id9_] = currentFrame; __setProp___id9__mainmenu_text_1(); }; if ((((__setPropDict[__id10_] == undefined)) || (!((((int(__setPropDict[__id10_]) >= 16)) && ((int(__setPropDict[__id10_]) <= 23))))))){ __setPropDict[__id10_] = currentFrame; __setProp___id10__mainmenu_background_16(); }; } function frame6(){ if ((((__setPropDict[__id9_] == undefined)) || (!((((((int(__setPropDict[__id9_]) >= 1)) && ((int(__setPropDict[__id9_]) <= 8)))) || ((((int(__setPropDict[__id9_]) >= 16)) && ((int(__setPropDict[__id9_]) <= 23))))))))){ __setPropDict[__id9_] = currentFrame; __setProp___id9__mainmenu_text_1(); }; } function frame13(){ if ((((__setPropDict[__id9_] == undefined)) || (!((((int(__setPropDict[__id9_]) >= 9)) && ((int(__setPropDict[__id9_]) <= 15))))))){ __setPropDict[__id9_] = currentFrame; __setProp___id9__mainmenu_text_9(); }; } function frame17(){ if ((((__setPropDict[__id9_] == undefined)) || (!((((((int(__setPropDict[__id9_]) >= 1)) && ((int(__setPropDict[__id9_]) <= 8)))) || ((((int(__setPropDict[__id9_]) >= 16)) && ((int(__setPropDict[__id9_]) <= 23))))))))){ __setPropDict[__id9_] = currentFrame; __setProp___id9__mainmenu_text_1(); }; if ((((__setPropDict[__id10_] == undefined)) || (!((((int(__setPropDict[__id10_]) >= 16)) && ((int(__setPropDict[__id10_]) <= 23))))))){ __setPropDict[__id10_] = currentFrame; __setProp___id10__mainmenu_background_16(); }; } function frame4(){ if ((((__setPropDict[__id9_] == undefined)) || (!((((((int(__setPropDict[__id9_]) >= 1)) && ((int(__setPropDict[__id9_]) <= 8)))) || ((((int(__setPropDict[__id9_]) >= 16)) && ((int(__setPropDict[__id9_]) <= 23))))))))){ __setPropDict[__id9_] = currentFrame; __setProp___id9__mainmenu_text_1(); }; } function frame5(){ if ((((__setPropDict[__id9_] == undefined)) || (!((((((int(__setPropDict[__id9_]) >= 1)) && ((int(__setPropDict[__id9_]) <= 8)))) || ((((int(__setPropDict[__id9_]) >= 16)) && ((int(__setPropDict[__id9_]) <= 23))))))))){ __setPropDict[__id9_] = currentFrame; __setProp___id9__mainmenu_text_1(); }; } function frame21(){ if ((((__setPropDict[__id9_] == undefined)) || (!((((((int(__setPropDict[__id9_]) >= 1)) && ((int(__setPropDict[__id9_]) <= 8)))) || ((((int(__setPropDict[__id9_]) >= 16)) && ((int(__setPropDict[__id9_]) <= 23))))))))){ __setPropDict[__id9_] = currentFrame; __setProp___id9__mainmenu_text_1(); }; if ((((__setPropDict[__id10_] == undefined)) || (!((((int(__setPropDict[__id10_]) >= 16)) && ((int(__setPropDict[__id10_]) <= 23))))))){ __setPropDict[__id10_] = currentFrame; __setProp___id10__mainmenu_background_16(); }; } function frame22(){ if ((((__setPropDict[__id9_] == undefined)) || (!((((((int(__setPropDict[__id9_]) >= 1)) && ((int(__setPropDict[__id9_]) <= 8)))) || ((((int(__setPropDict[__id9_]) >= 16)) && ((int(__setPropDict[__id9_]) <= 23))))))))){ __setPropDict[__id9_] = currentFrame; __setProp___id9__mainmenu_text_1(); }; if ((((__setPropDict[__id10_] == undefined)) || (!((((int(__setPropDict[__id10_]) >= 16)) && ((int(__setPropDict[__id10_]) <= 23))))))){ __setPropDict[__id10_] = currentFrame; __setProp___id10__mainmenu_background_16(); }; } function frame20(){ if ((((__setPropDict[__id9_] == undefined)) || (!((((((int(__setPropDict[__id9_]) >= 1)) && ((int(__setPropDict[__id9_]) <= 8)))) || ((((int(__setPropDict[__id9_]) >= 16)) && ((int(__setPropDict[__id9_]) <= 23))))))))){ __setPropDict[__id9_] = currentFrame; __setProp___id9__mainmenu_text_1(); }; if ((((__setPropDict[__id10_] == undefined)) || (!((((int(__setPropDict[__id10_]) >= 16)) && ((int(__setPropDict[__id10_]) <= 23))))))){ __setPropDict[__id10_] = currentFrame; __setProp___id10__mainmenu_background_16(); }; } function frame9(){ if ((((__setPropDict[__id9_] == undefined)) || (!((((int(__setPropDict[__id9_]) >= 9)) && ((int(__setPropDict[__id9_]) <= 15))))))){ __setPropDict[__id9_] = currentFrame; __setProp___id9__mainmenu_text_9(); }; } function frame2(){ if ((((__setPropDict[__id9_] == undefined)) || (!((((((int(__setPropDict[__id9_]) >= 1)) && ((int(__setPropDict[__id9_]) <= 8)))) || ((((int(__setPropDict[__id9_]) >= 16)) && ((int(__setPropDict[__id9_]) <= 23))))))))){ __setPropDict[__id9_] = currentFrame; __setProp___id9__mainmenu_text_1(); }; } function frame7(){ if ((((__setPropDict[__id9_] == undefined)) || (!((((((int(__setPropDict[__id9_]) >= 1)) && ((int(__setPropDict[__id9_]) <= 8)))) || ((((int(__setPropDict[__id9_]) >= 16)) && ((int(__setPropDict[__id9_]) <= 23))))))))){ __setPropDict[__id9_] = currentFrame; __setProp___id9__mainmenu_text_1(); }; } function frame8(){ if ((((__setPropDict[__id9_] == undefined)) || (!((((((int(__setPropDict[__id9_]) >= 1)) && ((int(__setPropDict[__id9_]) <= 8)))) || ((((int(__setPropDict[__id9_]) >= 16)) && ((int(__setPropDict[__id9_]) <= 23))))))))){ __setPropDict[__id9_] = currentFrame; __setProp___id9__mainmenu_text_1(); }; } function frame11(){ if ((((__setPropDict[__id9_] == undefined)) || (!((((int(__setPropDict[__id9_]) >= 9)) && ((int(__setPropDict[__id9_]) <= 15))))))){ __setPropDict[__id9_] = currentFrame; __setProp___id9__mainmenu_text_9(); }; } function frame23(){ if ((((__setPropDict[__id9_] == undefined)) || (!((((((int(__setPropDict[__id9_]) >= 1)) && ((int(__setPropDict[__id9_]) <= 8)))) || ((((int(__setPropDict[__id9_]) >= 16)) && ((int(__setPropDict[__id9_]) <= 23))))))))){ __setPropDict[__id9_] = currentFrame; __setProp___id9__mainmenu_text_1(); }; if ((((__setPropDict[__id10_] == undefined)) || (!((((int(__setPropDict[__id10_]) >= 16)) && ((int(__setPropDict[__id10_]) <= 23))))))){ __setPropDict[__id10_] = currentFrame; __setProp___id10__mainmenu_background_16(); }; } function __setProp___id9__mainmenu_text_1(){ try { __id9_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id9_.text = "{Main_Menu_Button}"; __id9_.textColor = 15984129; __id9_.textSize = 12; __id9_.bold = true; __id9_.embedFonts = true; __id9_.font = "Comic Sans MS"; __id9_.hAlign = "center"; __id9_.multiline = false; __id9_.vAlign = "top"; __id9_.antiAliasType = "advanced"; __id9_.glowBlur = 3; __id9_.glowColor = 0; __id9_.useGlowFilter = true; __id9_.glowQuality = 1; __id9_.glowStrength = 30; __id9_.gridFitType = "pixel"; __id9_.italic = false; __id9_.selectable = false; __id9_.underline = false; try { __id9_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function __setProp___id9__mainmenu_text_9(){ try { __id9_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id9_.text = "{Main_Menu_Button}"; __id9_.textColor = 0xCCFF00; __id9_.textSize = 12; __id9_.bold = true; __id9_.embedFonts = true; __id9_.font = "Comic Sans MS"; __id9_.hAlign = "center"; __id9_.multiline = false; __id9_.vAlign = "top"; __id9_.antiAliasType = "advanced"; __id9_.glowBlur = 3; __id9_.glowColor = 0x102200; __id9_.useGlowFilter = true; __id9_.glowQuality = 1; __id9_.glowStrength = 30; __id9_.gridFitType = "pixel"; __id9_.italic = false; __id9_.selectable = false; __id9_.underline = false; try { __id9_["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package MENUS_fla
Section 194
//mainmenu_button_98 (MENUS_fla.mainmenu_button_98) package MENUS_fla { import flash.display.*; import spill.localisation.*; public dynamic class mainmenu_button_98 extends MovieClip { public var __id23_:LocalizedTextField; public function mainmenu_button_98(){ addFrameScript(0, frame1); __setProp___id23__mainmenu_button_Layer1_1(); } function frame1(){ stop(); } function __setProp___id23__mainmenu_button_Layer1_1(){ try { __id23_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id23_.text = "{Main_Menu_Button}"; __id23_.textColor = 0xFFFF00; __id23_.textSize = 12; __id23_.bold = true; __id23_.embedFonts = true; __id23_.font = "Comic Sans MS"; __id23_.hAlign = "center"; __id23_.multiline = false; __id23_.vAlign = "top"; __id23_.antiAliasType = "normal"; __id23_.glowBlur = 3; __id23_.glowColor = 0x330000; __id23_.useGlowFilter = false; __id23_.glowQuality = 1; __id23_.glowStrength = 5; __id23_.gridFitType = "pixel"; __id23_.italic = false; __id23_.selectable = false; __id23_.underline = false; try { __id23_["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package MENUS_fla
Section 195
//mainmenubutton_239 (MENUS_fla.mainmenubutton_239) package MENUS_fla { import flash.display.*; import spill.localisation.*; public dynamic class mainmenubutton_239 extends MovieClip { public var __id0_:LocalizedTextField; public function mainmenubutton_239(){ addFrameScript(0, frame1); __setProp___id0__mainmenubutton_Layer1_1(); } function __setProp___id0__mainmenubutton_Layer1_1(){ try { __id0_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id0_.text = "{Next_Level}"; __id0_.textColor = 0xFFFF00; __id0_.textSize = 12; __id0_.bold = true; __id0_.embedFonts = true; __id0_.font = "Comic Sans MS"; __id0_.hAlign = "center"; __id0_.multiline = false; __id0_.vAlign = "top"; __id0_.antiAliasType = "normal"; __id0_.glowBlur = 3; __id0_.glowColor = 0x330000; __id0_.useGlowFilter = false; __id0_.glowQuality = 1; __id0_.glowStrength = 5; __id0_.gridFitType = "pixel"; __id0_.italic = false; __id0_.selectable = false; __id0_.underline = false; try { __id0_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame1(){ stop(); } } }//package MENUS_fla
Section 196
//medailles_244 (MENUS_fla.medailles_244) package MENUS_fla { import flash.display.*; import flash.utils.*; import spill.localisation.*; public dynamic class medailles_244 extends MovieClip { public var __id6_:LocalizedTextField; public var __setPropDict:Dictionary; public function medailles_244(){ __setPropDict = new Dictionary(true); super(); addFrameScript(0, frame1); } function frame1(){ if ((((__setPropDict[__id6_] == undefined)) || (!((int(__setPropDict[__id6_]) == 1))))){ __setPropDict[__id6_] = currentFrame; __setProp___id6__medailles_Layer1_1(); }; } function __setProp___id6__medailles_Layer1_1(){ try { __id6_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id6_.text = "{No_Medal_Yet}"; __id6_.textColor = 0xCC9900; __id6_.textSize = 12; __id6_.bold = true; __id6_.embedFonts = true; __id6_.font = "Comic Sans MS"; __id6_.hAlign = "center"; __id6_.multiline = true; __id6_.vAlign = "middle"; __id6_.antiAliasType = "normal"; __id6_.glowBlur = 3; __id6_.glowColor = 0; __id6_.useGlowFilter = false; __id6_.glowQuality = 1; __id6_.glowStrength = 5; __id6_.gridFitType = "pixel"; __id6_.italic = false; __id6_.selectable = false; __id6_.underline = false; try { __id6_["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package MENUS_fla
Section 197
//moregamesbnt_29 (MENUS_fla.moregamesbnt_29) package MENUS_fla { import flash.display.*; public dynamic class moregamesbnt_29 extends MovieClip { public function moregamesbnt_29(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package MENUS_fla
Section 198
//qualitybtn_69 (MENUS_fla.qualitybtn_69) package MENUS_fla { import flash.display.*; import flash.utils.*; import spill.localisation.*; public dynamic class qualitybtn_69 extends MovieClip { public var __setPropDict:Dictionary; public var __id25_:LocalizedTextField; public function qualitybtn_69(){ __setPropDict = new Dictionary(true); super(); addFrameScript(0, frame1, 1, frame2, 2, frame3); } function __setProp___id25__qualitybtn_Layer1_3(){ try { __id25_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id25_.text = "{Quality}:{High}"; __id25_.textColor = 0xFFFF00; __id25_.textSize = 12; __id25_.bold = true; __id25_.embedFonts = true; __id25_.font = "Comic Sans MS"; __id25_.hAlign = "center"; __id25_.multiline = false; __id25_.vAlign = "top"; __id25_.antiAliasType = "normal"; __id25_.glowBlur = 3; __id25_.glowColor = 0; __id25_.useGlowFilter = false; __id25_.glowQuality = 1; __id25_.glowStrength = 5; __id25_.gridFitType = "pixel"; __id25_.italic = false; __id25_.selectable = false; __id25_.underline = false; try { __id25_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function __setProp___id25__qualitybtn_Layer1_1(){ try { __id25_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id25_.text = "{Quality}:{Low}"; __id25_.textColor = 0xFFFF00; __id25_.textSize = 12; __id25_.bold = true; __id25_.embedFonts = true; __id25_.font = "Comic Sans MS"; __id25_.hAlign = "center"; __id25_.multiline = false; __id25_.vAlign = "top"; __id25_.antiAliasType = "normal"; __id25_.glowBlur = 3; __id25_.glowColor = 0; __id25_.useGlowFilter = false; __id25_.glowQuality = 1; __id25_.glowStrength = 5; __id25_.gridFitType = "pixel"; __id25_.italic = false; __id25_.selectable = false; __id25_.underline = false; try { __id25_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame3(){ if ((((__setPropDict[__id25_] == undefined)) || (!((int(__setPropDict[__id25_]) == 3))))){ __setPropDict[__id25_] = currentFrame; __setProp___id25__qualitybtn_Layer1_3(); }; } function frame1(){ if ((((__setPropDict[__id25_] == undefined)) || (!((int(__setPropDict[__id25_]) == 1))))){ __setPropDict[__id25_] = currentFrame; __setProp___id25__qualitybtn_Layer1_1(); }; stop(); } function frame2(){ if ((((__setPropDict[__id25_] == undefined)) || (!((int(__setPropDict[__id25_]) == 2))))){ __setPropDict[__id25_] = currentFrame; __setProp___id25__qualitybtn_Layer1_2(); }; } function __setProp___id25__qualitybtn_Layer1_2(){ try { __id25_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id25_.text = "{Quality}:{Medium}"; __id25_.textColor = 0xFFFF00; __id25_.textSize = 12; __id25_.bold = true; __id25_.embedFonts = true; __id25_.font = "Comic Sans MS"; __id25_.hAlign = "center"; __id25_.multiline = false; __id25_.vAlign = "top"; __id25_.antiAliasType = "normal"; __id25_.glowBlur = 3; __id25_.glowColor = 0; __id25_.useGlowFilter = false; __id25_.glowQuality = 1; __id25_.glowStrength = 5; __id25_.gridFitType = "pixel"; __id25_.italic = false; __id25_.selectable = false; __id25_.underline = false; try { __id25_["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package MENUS_fla
Section 199
//qualityschuifje_68 (MENUS_fla.qualityschuifje_68) package MENUS_fla { import flash.display.*; public dynamic class qualityschuifje_68 extends MovieClip { public var text:MovieClip; public var btn:SimpleButton; } }//package MENUS_fla
Section 200
//retrybtn_242 (MENUS_fla.retrybtn_242) package MENUS_fla { import flash.display.*; import spill.localisation.*; public dynamic class retrybtn_242 extends MovieClip { public var __id2_:LocalizedTextField; public function retrybtn_242(){ addFrameScript(0, frame1); __setProp___id2__retrybtn_Layer1_1(); } function __setProp___id2__retrybtn_Layer1_1(){ try { __id2_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id2_.text = "{Retry_Button}"; __id2_.textColor = 0xFFFF00; __id2_.textSize = 12; __id2_.bold = true; __id2_.embedFonts = true; __id2_.font = "Comic Sans MS"; __id2_.hAlign = "center"; __id2_.multiline = false; __id2_.vAlign = "top"; __id2_.antiAliasType = "normal"; __id2_.glowBlur = 3; __id2_.glowColor = 0x330000; __id2_.useGlowFilter = false; __id2_.glowQuality = 1; __id2_.glowStrength = 5; __id2_.gridFitType = "pixel"; __id2_.italic = false; __id2_.selectable = false; __id2_.underline = false; try { __id2_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame1(){ stop(); } } }//package MENUS_fla
Section 201
//returntogamebutton_99 (MENUS_fla.returntogamebutton_99) package MENUS_fla { import flash.display.*; import spill.localisation.*; public dynamic class returntogamebutton_99 extends MovieClip { public var __id24_:LocalizedTextField; public function returntogamebutton_99(){ addFrameScript(0, frame1); __setProp___id24__returntogamebutton_Layer1_1(); } function __setProp___id24__returntogamebutton_Layer1_1(){ try { __id24_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id24_.text = "{Return_To_Game_Button}"; __id24_.textColor = 0xFFFF00; __id24_.textSize = 12; __id24_.bold = true; __id24_.embedFonts = true; __id24_.font = "Comic Sans MS"; __id24_.hAlign = "center"; __id24_.multiline = false; __id24_.vAlign = "top"; __id24_.antiAliasType = "normal"; __id24_.glowBlur = 3; __id24_.glowColor = 0x330000; __id24_.useGlowFilter = false; __id24_.glowQuality = 1; __id24_.glowStrength = 5; __id24_.gridFitType = "pixel"; __id24_.italic = false; __id24_.selectable = false; __id24_.underline = false; try { __id24_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame1(){ stop(); } } }//package MENUS_fla
Section 202
//skip_129 (MENUS_fla.skip_129) package MENUS_fla { import flash.display.*; import flash.utils.*; import spill.localisation.*; public dynamic class skip_129 extends MovieClip { public var __id20_:LocalizedTextField; public var __id21_:LocalizedTextField; public var __setPropDict:Dictionary; public function skip_129(){ __setPropDict = new Dictionary(true); super(); addFrameScript(0, frame1, 15, frame16, 16, frame17, 17, frame18, 18, frame19, 19, frame20, 20, frame21, 21, frame22, 22, frame23, 8, frame9, 9, frame10, 10, frame11, 11, frame12, 12, frame13, 13, frame14, 14, frame15, 1, frame2, 2, frame3, 3, frame4, 4, frame5, 5, frame6, 6, frame7, 7, frame8); } function frame10(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 9)) && ((int(__setPropDict[__id20_]) <= 15))))))){ __setPropDict[__id20_] = currentFrame; __setProp___id20__skip_text_9(); }; } function frame14(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 9)) && ((int(__setPropDict[__id20_]) <= 15))))))){ __setPropDict[__id20_] = currentFrame; __setProp___id20__skip_text_9(); }; } function frame12(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 9)) && ((int(__setPropDict[__id20_]) <= 15))))))){ __setPropDict[__id20_] = currentFrame; __setProp___id20__skip_text_9(); }; } function frame18(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 16)) && ((int(__setPropDict[__id20_]) <= 23))))))){ __setPropDict[__id20_] = currentFrame; __setProp___id20__skip_text_16(); }; if ((((__setPropDict[__id21_] == undefined)) || (!((((int(__setPropDict[__id21_]) >= 16)) && ((int(__setPropDict[__id21_]) <= 23))))))){ __setPropDict[__id21_] = currentFrame; __setProp___id21__skip_background_16(); }; } function frame3(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 1)) && ((int(__setPropDict[__id20_]) <= 8))))))){ __setPropDict[__id20_] = currentFrame; __setProp___id20__skip_text_1(); }; } function frame15(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 9)) && ((int(__setPropDict[__id20_]) <= 15))))))){ __setPropDict[__id20_] = currentFrame; __setProp___id20__skip_text_9(); }; } function frame16(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 16)) && ((int(__setPropDict[__id20_]) <= 23))))))){ __setPropDict[__id20_] = currentFrame; __setProp___id20__skip_text_16(); }; if ((((__setPropDict[__id21_] == undefined)) || (!((((int(__setPropDict[__id21_]) >= 16)) && ((int(__setPropDict[__id21_]) <= 23))))))){ __setPropDict[__id21_] = currentFrame; __setProp___id21__skip_background_16(); }; } function frame1(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 1)) && ((int(__setPropDict[__id20_]) <= 8))))))){ __setPropDict[__id20_] = currentFrame; __setProp___id20__skip_text_1(); }; stop(); } function frame19(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 16)) && ((int(__setPropDict[__id20_]) <= 23))))))){ __setPropDict[__id20_] = currentFrame; __setProp___id20__skip_text_16(); }; if ((((__setPropDict[__id21_] == undefined)) || (!((((int(__setPropDict[__id21_]) >= 16)) && ((int(__setPropDict[__id21_]) <= 23))))))){ __setPropDict[__id21_] = currentFrame; __setProp___id21__skip_background_16(); }; } function frame6(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 1)) && ((int(__setPropDict[__id20_]) <= 8))))))){ __setPropDict[__id20_] = currentFrame; __setProp___id20__skip_text_1(); }; } function frame13(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 9)) && ((int(__setPropDict[__id20_]) <= 15))))))){ __setPropDict[__id20_] = currentFrame; __setProp___id20__skip_text_9(); }; } function frame17(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 16)) && ((int(__setPropDict[__id20_]) <= 23))))))){ __setPropDict[__id20_] = currentFrame; __setProp___id20__skip_text_16(); }; if ((((__setPropDict[__id21_] == undefined)) || (!((((int(__setPropDict[__id21_]) >= 16)) && ((int(__setPropDict[__id21_]) <= 23))))))){ __setPropDict[__id21_] = currentFrame; __setProp___id21__skip_background_16(); }; } function frame4(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 1)) && ((int(__setPropDict[__id20_]) <= 8))))))){ __setPropDict[__id20_] = currentFrame; __setProp___id20__skip_text_1(); }; } function __setProp___id20__skip_text_9(){ try { __id20_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id20_.text = "{Skip}"; __id20_.textColor = 0xCCFF00; __id20_.textSize = 12; __id20_.bold = true; __id20_.embedFonts = true; __id20_.font = "Comic Sans MS"; __id20_.hAlign = "center"; __id20_.multiline = false; __id20_.vAlign = "top"; __id20_.antiAliasType = "advanced"; __id20_.glowBlur = 3; __id20_.glowColor = 0x102200; __id20_.useGlowFilter = true; __id20_.glowQuality = 1; __id20_.glowStrength = 30; __id20_.gridFitType = "pixel"; __id20_.italic = false; __id20_.selectable = false; __id20_.underline = false; try { __id20_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame22(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 16)) && ((int(__setPropDict[__id20_]) <= 23))))))){ __setPropDict[__id20_] = currentFrame; __setProp___id20__skip_text_16(); }; if ((((__setPropDict[__id21_] == undefined)) || (!((((int(__setPropDict[__id21_]) >= 16)) && ((int(__setPropDict[__id21_]) <= 23))))))){ __setPropDict[__id21_] = currentFrame; __setProp___id21__skip_background_16(); }; } function __setProp___id20__skip_text_16(){ try { __id20_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id20_.text = "{Back_Button}"; __id20_.textColor = 15984129; __id20_.textSize = 12; __id20_.bold = true; __id20_.embedFonts = true; __id20_.font = "Comic Sans MS"; __id20_.hAlign = "center"; __id20_.multiline = false; __id20_.vAlign = "top"; __id20_.antiAliasType = "advanced"; __id20_.glowBlur = 3; __id20_.glowColor = 0; __id20_.useGlowFilter = true; __id20_.glowQuality = 1; __id20_.glowStrength = 30; __id20_.gridFitType = "pixel"; __id20_.italic = false; __id20_.selectable = false; __id20_.underline = false; try { __id20_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function __setProp___id20__skip_text_1(){ try { __id20_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id20_.text = "{Skip}"; __id20_.textColor = 15984129; __id20_.textSize = 12; __id20_.bold = true; __id20_.embedFonts = true; __id20_.font = "Comic Sans MS"; __id20_.hAlign = "center"; __id20_.multiline = false; __id20_.vAlign = "top"; __id20_.antiAliasType = "advanced"; __id20_.glowBlur = 3; __id20_.glowColor = 0; __id20_.useGlowFilter = true; __id20_.glowQuality = 1; __id20_.glowStrength = 30; __id20_.gridFitType = "pixel"; __id20_.italic = false; __id20_.selectable = false; __id20_.underline = false; try { __id20_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame2(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 1)) && ((int(__setPropDict[__id20_]) <= 8))))))){ __setPropDict[__id20_] = currentFrame; __setProp___id20__skip_text_1(); }; } function frame5(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 1)) && ((int(__setPropDict[__id20_]) <= 8))))))){ __setPropDict[__id20_] = currentFrame; __setProp___id20__skip_text_1(); }; } function frame23(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 16)) && ((int(__setPropDict[__id20_]) <= 23))))))){ __setPropDict[__id20_] = currentFrame; __setProp___id20__skip_text_16(); }; if ((((__setPropDict[__id21_] == undefined)) || (!((((int(__setPropDict[__id21_]) >= 16)) && ((int(__setPropDict[__id21_]) <= 23))))))){ __setPropDict[__id21_] = currentFrame; __setProp___id21__skip_background_16(); }; } function frame7(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 1)) && ((int(__setPropDict[__id20_]) <= 8))))))){ __setPropDict[__id20_] = currentFrame; __setProp___id20__skip_text_1(); }; } function frame20(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 16)) && ((int(__setPropDict[__id20_]) <= 23))))))){ __setPropDict[__id20_] = currentFrame; __setProp___id20__skip_text_16(); }; if ((((__setPropDict[__id21_] == undefined)) || (!((((int(__setPropDict[__id21_]) >= 16)) && ((int(__setPropDict[__id21_]) <= 23))))))){ __setPropDict[__id21_] = currentFrame; __setProp___id21__skip_background_16(); }; } function frame21(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 16)) && ((int(__setPropDict[__id20_]) <= 23))))))){ __setPropDict[__id20_] = currentFrame; __setProp___id20__skip_text_16(); }; if ((((__setPropDict[__id21_] == undefined)) || (!((((int(__setPropDict[__id21_]) >= 16)) && ((int(__setPropDict[__id21_]) <= 23))))))){ __setPropDict[__id21_] = currentFrame; __setProp___id21__skip_background_16(); }; } function frame11(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 9)) && ((int(__setPropDict[__id20_]) <= 15))))))){ __setPropDict[__id20_] = currentFrame; __setProp___id20__skip_text_9(); }; } function frame8(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 1)) && ((int(__setPropDict[__id20_]) <= 8))))))){ __setPropDict[__id20_] = currentFrame; __setProp___id20__skip_text_1(); }; } function frame9(){ if ((((__setPropDict[__id20_] == undefined)) || (!((((int(__setPropDict[__id20_]) >= 9)) && ((int(__setPropDict[__id20_]) <= 15))))))){ __setPropDict[__id20_] = currentFrame; __setProp___id20__skip_text_9(); }; } function __setProp___id21__skip_background_16(){ try { __id21_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id21_.text = "BACK"; __id21_.textColor = 16764006; __id21_.textSize = 12; __id21_.bold = true; __id21_.embedFonts = true; __id21_.font = "Comic Sans MS"; __id21_.hAlign = "center"; __id21_.multiline = false; __id21_.vAlign = "top"; __id21_.antiAliasType = "normal"; __id21_.glowBlur = 3; __id21_.glowColor = 0x333300; __id21_.useGlowFilter = true; __id21_.glowQuality = 1; __id21_.glowStrength = 5; __id21_.gridFitType = "pixel"; __id21_.italic = false; __id21_.selectable = false; __id21_.underline = false; try { __id21_["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package MENUS_fla
Section 203
//Slamming1_btn_159 (MENUS_fla.Slamming1_btn_159) package MENUS_fla { import flash.display.*; public dynamic class Slamming1_btn_159 extends MovieClip { public function Slamming1_btn_159(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package MENUS_fla
Section 204
//Slamming2_btn_161 (MENUS_fla.Slamming2_btn_161) package MENUS_fla { import flash.display.*; public dynamic class Slamming2_btn_161 extends MovieClip { public function Slamming2_btn_161(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package MENUS_fla
Section 205
//Slamming3_btn_162 (MENUS_fla.Slamming3_btn_162) package MENUS_fla { import flash.display.*; public dynamic class Slamming3_btn_162 extends MovieClip { public function Slamming3_btn_162(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package MENUS_fla
Section 206
//Slamming4_btn_163 (MENUS_fla.Slamming4_btn_163) package MENUS_fla { import flash.display.*; public dynamic class Slamming4_btn_163 extends MovieClip { public function Slamming4_btn_163(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package MENUS_fla
Section 207
//Slamming5_btn_164 (MENUS_fla.Slamming5_btn_164) package MENUS_fla { import flash.display.*; public dynamic class Slamming5_btn_164 extends MovieClip { public function Slamming5_btn_164(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package MENUS_fla
Section 208
//startgame_28 (MENUS_fla.startgame_28) package MENUS_fla { import flash.display.*; import flash.utils.*; import spill.localisation.*; public dynamic class startgame_28 extends MovieClip { public var __setPropDict:Dictionary; public var __id40_:LocalizedTextField; public var __id39_:LocalizedTextField; public function startgame_28(){ __setPropDict = new Dictionary(true); super(); addFrameScript(0, frame1, 15, frame16, 16, frame17, 17, frame18, 18, frame19, 19, frame20, 20, frame21, 21, frame22, 22, frame23, 1, frame2, 2, frame3, 3, frame4, 4, frame5, 5, frame6, 6, frame7, 7, frame8, 8, frame9, 9, frame10, 10, frame11, 11, frame12, 12, frame13, 13, frame14, 14, frame15); } function __setProp___id39__startgame_text_1(){ try { __id39_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id39_.text = "{Start_Game_Button}"; __id39_.textColor = 15984129; __id39_.textSize = 12; __id39_.bold = true; __id39_.embedFonts = true; __id39_.font = "Comic Sans MS"; __id39_.hAlign = "center"; __id39_.multiline = false; __id39_.vAlign = "top"; __id39_.antiAliasType = "advanced"; __id39_.glowBlur = 3; __id39_.glowColor = 0; __id39_.useGlowFilter = true; __id39_.glowQuality = 1; __id39_.glowStrength = 30; __id39_.gridFitType = "pixel"; __id39_.italic = false; __id39_.selectable = false; __id39_.underline = false; try { __id39_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function __setProp___id39__startgame_text_9(){ try { __id39_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id39_.text = "{Start_Game_Button}"; __id39_.textColor = 0xCCFF00; __id39_.textSize = 12; __id39_.bold = true; __id39_.embedFonts = true; __id39_.font = "Comic Sans MS"; __id39_.hAlign = "center"; __id39_.multiline = false; __id39_.vAlign = "top"; __id39_.antiAliasType = "advanced"; __id39_.glowBlur = 3; __id39_.glowColor = 0; __id39_.useGlowFilter = true; __id39_.glowQuality = 1; __id39_.glowStrength = 30; __id39_.gridFitType = "pixel"; __id39_.italic = false; __id39_.selectable = false; __id39_.underline = false; try { __id39_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame10(){ if ((((__setPropDict[__id39_] == undefined)) || (!((((int(__setPropDict[__id39_]) >= 9)) && ((int(__setPropDict[__id39_]) <= 15))))))){ __setPropDict[__id39_] = currentFrame; __setProp___id39__startgame_text_9(); }; } function frame14(){ if ((((__setPropDict[__id39_] == undefined)) || (!((((int(__setPropDict[__id39_]) >= 9)) && ((int(__setPropDict[__id39_]) <= 15))))))){ __setPropDict[__id39_] = currentFrame; __setProp___id39__startgame_text_9(); }; } function frame12(){ if ((((__setPropDict[__id39_] == undefined)) || (!((((int(__setPropDict[__id39_]) >= 9)) && ((int(__setPropDict[__id39_]) <= 15))))))){ __setPropDict[__id39_] = currentFrame; __setProp___id39__startgame_text_9(); }; } function frame18(){ if ((((__setPropDict[__id39_] == undefined)) || (!((((((int(__setPropDict[__id39_]) >= 1)) && ((int(__setPropDict[__id39_]) <= 8)))) || ((((int(__setPropDict[__id39_]) >= 16)) && ((int(__setPropDict[__id39_]) <= 23))))))))){ __setPropDict[__id39_] = currentFrame; __setProp___id39__startgame_text_1(); }; if ((((__setPropDict[__id40_] == undefined)) || (!((((int(__setPropDict[__id40_]) >= 16)) && ((int(__setPropDict[__id40_]) <= 23))))))){ __setPropDict[__id40_] = currentFrame; __setProp___id40__startgame_background_16(); }; } function frame3(){ if ((((__setPropDict[__id39_] == undefined)) || (!((((((int(__setPropDict[__id39_]) >= 1)) && ((int(__setPropDict[__id39_]) <= 8)))) || ((((int(__setPropDict[__id39_]) >= 16)) && ((int(__setPropDict[__id39_]) <= 23))))))))){ __setPropDict[__id39_] = currentFrame; __setProp___id39__startgame_text_1(); }; } function frame6(){ if ((((__setPropDict[__id39_] == undefined)) || (!((((((int(__setPropDict[__id39_]) >= 1)) && ((int(__setPropDict[__id39_]) <= 8)))) || ((((int(__setPropDict[__id39_]) >= 16)) && ((int(__setPropDict[__id39_]) <= 23))))))))){ __setPropDict[__id39_] = currentFrame; __setProp___id39__startgame_text_1(); }; } function frame16(){ if ((((__setPropDict[__id39_] == undefined)) || (!((((((int(__setPropDict[__id39_]) >= 1)) && ((int(__setPropDict[__id39_]) <= 8)))) || ((((int(__setPropDict[__id39_]) >= 16)) && ((int(__setPropDict[__id39_]) <= 23))))))))){ __setPropDict[__id39_] = currentFrame; __setProp___id39__startgame_text_1(); }; if ((((__setPropDict[__id40_] == undefined)) || (!((((int(__setPropDict[__id40_]) >= 16)) && ((int(__setPropDict[__id40_]) <= 23))))))){ __setPropDict[__id40_] = currentFrame; __setProp___id40__startgame_background_16(); }; } function frame1(){ if ((((__setPropDict[__id39_] == undefined)) || (!((((((int(__setPropDict[__id39_]) >= 1)) && ((int(__setPropDict[__id39_]) <= 8)))) || ((((int(__setPropDict[__id39_]) >= 16)) && ((int(__setPropDict[__id39_]) <= 23))))))))){ __setPropDict[__id39_] = currentFrame; __setProp___id39__startgame_text_1(); }; stop(); } function frame19(){ if ((((__setPropDict[__id39_] == undefined)) || (!((((((int(__setPropDict[__id39_]) >= 1)) && ((int(__setPropDict[__id39_]) <= 8)))) || ((((int(__setPropDict[__id39_]) >= 16)) && ((int(__setPropDict[__id39_]) <= 23))))))))){ __setPropDict[__id39_] = currentFrame; __setProp___id39__startgame_text_1(); }; if ((((__setPropDict[__id40_] == undefined)) || (!((((int(__setPropDict[__id40_]) >= 16)) && ((int(__setPropDict[__id40_]) <= 23))))))){ __setPropDict[__id40_] = currentFrame; __setProp___id40__startgame_background_16(); }; } function frame7(){ if ((((__setPropDict[__id39_] == undefined)) || (!((((((int(__setPropDict[__id39_]) >= 1)) && ((int(__setPropDict[__id39_]) <= 8)))) || ((((int(__setPropDict[__id39_]) >= 16)) && ((int(__setPropDict[__id39_]) <= 23))))))))){ __setPropDict[__id39_] = currentFrame; __setProp___id39__startgame_text_1(); }; } function frame17(){ if ((((__setPropDict[__id39_] == undefined)) || (!((((((int(__setPropDict[__id39_]) >= 1)) && ((int(__setPropDict[__id39_]) <= 8)))) || ((((int(__setPropDict[__id39_]) >= 16)) && ((int(__setPropDict[__id39_]) <= 23))))))))){ __setPropDict[__id39_] = currentFrame; __setProp___id39__startgame_text_1(); }; if ((((__setPropDict[__id40_] == undefined)) || (!((((int(__setPropDict[__id40_]) >= 16)) && ((int(__setPropDict[__id40_]) <= 23))))))){ __setPropDict[__id40_] = currentFrame; __setProp___id40__startgame_background_16(); }; } function frame4(){ if ((((__setPropDict[__id39_] == undefined)) || (!((((((int(__setPropDict[__id39_]) >= 1)) && ((int(__setPropDict[__id39_]) <= 8)))) || ((((int(__setPropDict[__id39_]) >= 16)) && ((int(__setPropDict[__id39_]) <= 23))))))))){ __setPropDict[__id39_] = currentFrame; __setProp___id39__startgame_text_1(); }; } function frame5(){ if ((((__setPropDict[__id39_] == undefined)) || (!((((((int(__setPropDict[__id39_]) >= 1)) && ((int(__setPropDict[__id39_]) <= 8)))) || ((((int(__setPropDict[__id39_]) >= 16)) && ((int(__setPropDict[__id39_]) <= 23))))))))){ __setPropDict[__id39_] = currentFrame; __setProp___id39__startgame_text_1(); }; } function frame21(){ if ((((__setPropDict[__id39_] == undefined)) || (!((((((int(__setPropDict[__id39_]) >= 1)) && ((int(__setPropDict[__id39_]) <= 8)))) || ((((int(__setPropDict[__id39_]) >= 16)) && ((int(__setPropDict[__id39_]) <= 23))))))))){ __setPropDict[__id39_] = currentFrame; __setProp___id39__startgame_text_1(); }; if ((((__setPropDict[__id40_] == undefined)) || (!((((int(__setPropDict[__id40_]) >= 16)) && ((int(__setPropDict[__id40_]) <= 23))))))){ __setPropDict[__id40_] = currentFrame; __setProp___id40__startgame_background_16(); }; } function frame22(){ if ((((__setPropDict[__id39_] == undefined)) || (!((((((int(__setPropDict[__id39_]) >= 1)) && ((int(__setPropDict[__id39_]) <= 8)))) || ((((int(__setPropDict[__id39_]) >= 16)) && ((int(__setPropDict[__id39_]) <= 23))))))))){ __setPropDict[__id39_] = currentFrame; __setProp___id39__startgame_text_1(); }; if ((((__setPropDict[__id40_] == undefined)) || (!((((int(__setPropDict[__id40_]) >= 16)) && ((int(__setPropDict[__id40_]) <= 23))))))){ __setPropDict[__id40_] = currentFrame; __setProp___id40__startgame_background_16(); }; } function frame20(){ if ((((__setPropDict[__id39_] == undefined)) || (!((((((int(__setPropDict[__id39_]) >= 1)) && ((int(__setPropDict[__id39_]) <= 8)))) || ((((int(__setPropDict[__id39_]) >= 16)) && ((int(__setPropDict[__id39_]) <= 23))))))))){ __setPropDict[__id39_] = currentFrame; __setProp___id39__startgame_text_1(); }; if ((((__setPropDict[__id40_] == undefined)) || (!((((int(__setPropDict[__id40_]) >= 16)) && ((int(__setPropDict[__id40_]) <= 23))))))){ __setPropDict[__id40_] = currentFrame; __setProp___id40__startgame_background_16(); }; } function frame9(){ if ((((__setPropDict[__id39_] == undefined)) || (!((((int(__setPropDict[__id39_]) >= 9)) && ((int(__setPropDict[__id39_]) <= 15))))))){ __setPropDict[__id39_] = currentFrame; __setProp___id39__startgame_text_9(); }; } function frame2(){ if ((((__setPropDict[__id39_] == undefined)) || (!((((((int(__setPropDict[__id39_]) >= 1)) && ((int(__setPropDict[__id39_]) <= 8)))) || ((((int(__setPropDict[__id39_]) >= 16)) && ((int(__setPropDict[__id39_]) <= 23))))))))){ __setPropDict[__id39_] = currentFrame; __setProp___id39__startgame_text_1(); }; } function frame15(){ if ((((__setPropDict[__id39_] == undefined)) || (!((((int(__setPropDict[__id39_]) >= 9)) && ((int(__setPropDict[__id39_]) <= 15))))))){ __setPropDict[__id39_] = currentFrame; __setProp___id39__startgame_text_9(); }; } function frame23(){ if ((((__setPropDict[__id39_] == undefined)) || (!((((((int(__setPropDict[__id39_]) >= 1)) && ((int(__setPropDict[__id39_]) <= 8)))) || ((((int(__setPropDict[__id39_]) >= 16)) && ((int(__setPropDict[__id39_]) <= 23))))))))){ __setPropDict[__id39_] = currentFrame; __setProp___id39__startgame_text_1(); }; if ((((__setPropDict[__id40_] == undefined)) || (!((((int(__setPropDict[__id40_]) >= 16)) && ((int(__setPropDict[__id40_]) <= 23))))))){ __setPropDict[__id40_] = currentFrame; __setProp___id40__startgame_background_16(); }; } function frame13(){ if ((((__setPropDict[__id39_] == undefined)) || (!((((int(__setPropDict[__id39_]) >= 9)) && ((int(__setPropDict[__id39_]) <= 15))))))){ __setPropDict[__id39_] = currentFrame; __setProp___id39__startgame_text_9(); }; } function frame8(){ if ((((__setPropDict[__id39_] == undefined)) || (!((((((int(__setPropDict[__id39_]) >= 1)) && ((int(__setPropDict[__id39_]) <= 8)))) || ((((int(__setPropDict[__id39_]) >= 16)) && ((int(__setPropDict[__id39_]) <= 23))))))))){ __setPropDict[__id39_] = currentFrame; __setProp___id39__startgame_text_1(); }; } function __setProp___id40__startgame_background_16(){ try { __id40_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id40_.text = "BACK"; __id40_.textColor = 16764006; __id40_.textSize = 12; __id40_.bold = true; __id40_.embedFonts = true; __id40_.font = "Comic Sans MS"; __id40_.hAlign = "center"; __id40_.multiline = false; __id40_.vAlign = "top"; __id40_.antiAliasType = "normal"; __id40_.glowBlur = 3; __id40_.glowColor = 0x333300; __id40_.useGlowFilter = true; __id40_.glowQuality = 1; __id40_.glowStrength = 5; __id40_.gridFitType = "pixel"; __id40_.italic = false; __id40_.selectable = false; __id40_.underline = false; try { __id40_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame11(){ if ((((__setPropDict[__id39_] == undefined)) || (!((((int(__setPropDict[__id39_]) >= 9)) && ((int(__setPropDict[__id39_]) <= 15))))))){ __setPropDict[__id39_] = currentFrame; __setProp___id39__startgame_text_9(); }; } } }//package MENUS_fla
Section 209
//stastistieken_247 (MENUS_fla.stastistieken_247) package MENUS_fla { import flash.display.*; public dynamic class stastistieken_247 extends MovieClip { public var stats:MovieClip; public function stastistieken_247(){ addFrameScript(14, frame15, 29, frame30); } function frame15(){ stop(); } function frame30(){ stop(); } } }//package MENUS_fla
Section 210
//statistics_248 (MENUS_fla.statistics_248) package MENUS_fla { import flash.display.*; import spill.localisation.*; public dynamic class statistics_248 extends MovieClip { public var __id11_:LocalizedTextField; public var txt1:LocalizedTextField; public var txt2:LocalizedTextField; public function statistics_248(){ __setProp___id11__statistics_Layer1_1(); __setProp_txt2_statistics_Layer1_1(); __setProp_txt1_statistics_Layer1_1(); } function __setProp_txt2_statistics_Layer1_1(){ try { txt2["componentInspectorSetting"] = true; } catch(e:Error) { }; txt2.text = "SCORE"; txt2.textColor = 0; txt2.textSize = 12; txt2.bold = true; txt2.embedFonts = true; txt2.font = "Comic Sans MS"; txt2.hAlign = "left"; txt2.multiline = false; txt2.vAlign = "top"; txt2.antiAliasType = "normal"; txt2.glowBlur = 3; txt2.glowColor = 0; txt2.useGlowFilter = false; txt2.glowQuality = 1; txt2.glowStrength = 5; txt2.gridFitType = "pixel"; txt2.italic = false; txt2.selectable = false; txt2.underline = false; try { txt2["componentInspectorSetting"] = false; } catch(e:Error) { }; } function __setProp___id11__statistics_Layer1_1(){ try { __id11_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id11_.text = "{Stats_Title}"; __id11_.textColor = 0xFFFFFF; __id11_.textSize = 50; __id11_.bold = false; __id11_.embedFonts = true; __id11_.font = "Comic Sans MS"; __id11_.hAlign = "center"; __id11_.multiline = false; __id11_.vAlign = "top"; __id11_.antiAliasType = "normal"; __id11_.glowBlur = 3; __id11_.glowColor = 0x333300; __id11_.useGlowFilter = true; __id11_.glowQuality = 3; __id11_.glowStrength = 5; __id11_.gridFitType = "pixel"; __id11_.italic = false; __id11_.selectable = false; __id11_.underline = false; try { __id11_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function __setProp_txt1_statistics_Layer1_1(){ try { txt1["componentInspectorSetting"] = true; } catch(e:Error) { }; txt1.text = "SCORE"; txt1.textColor = 0; txt1.textSize = 12; txt1.bold = true; txt1.embedFonts = true; txt1.font = "Comic Sans MS"; txt1.hAlign = "right"; txt1.multiline = false; txt1.vAlign = "top"; txt1.antiAliasType = "normal"; txt1.glowBlur = 3; txt1.glowColor = 0; txt1.useGlowFilter = false; txt1.glowQuality = 1; txt1.glowStrength = 5; txt1.gridFitType = "pixel"; txt1.italic = false; txt1.selectable = false; txt1.underline = false; try { txt1["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package MENUS_fla
Section 211
//submitbtn_243 (MENUS_fla.submitbtn_243) package MENUS_fla { import flash.display.*; import spill.localisation.*; public dynamic class submitbtn_243 extends MovieClip { public var __id5_:LocalizedTextField; public function submitbtn_243(){ addFrameScript(0, frame1); __setProp___id5__submitbtn_Layer1_1(); } function __setProp___id5__submitbtn_Layer1_1(){ try { __id5_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id5_.text = "{Submit_Button}"; __id5_.textColor = 0xFFFF00; __id5_.textSize = 12; __id5_.bold = true; __id5_.embedFonts = true; __id5_.font = "Comic Sans MS"; __id5_.hAlign = "center"; __id5_.multiline = false; __id5_.vAlign = "top"; __id5_.antiAliasType = "advanced"; __id5_.glowBlur = 3; __id5_.glowColor = 0x330000; __id5_.useGlowFilter = false; __id5_.glowQuality = 1; __id5_.glowStrength = 5; __id5_.gridFitType = "pixel"; __id5_.italic = false; __id5_.selectable = false; __id5_.underline = false; try { __id5_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame1(){ stop(); } } }//package MENUS_fla
Section 212
//tekst_bord_241 (MENUS_fla.tekst_bord_241) package MENUS_fla { import flash.display.*; import flash.utils.*; import spill.localisation.*; public dynamic class tekst_bord_241 extends MovieClip { public var __setPropDict:Dictionary; public var __id1_:LocalizedTextField; public function tekst_bord_241(){ __setPropDict = new Dictionary(true); super(); addFrameScript(2, frame3, 1, frame2, 0, frame1); } function __setProp___id1__tekst_bord_Layer1_3(){ try { __id1_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id1_.text = "{Level_Complete}"; __id1_.textColor = 0xFF0000; __id1_.textSize = 50; __id1_.bold = false; __id1_.embedFonts = true; __id1_.font = "Comic Sans MS"; __id1_.hAlign = "center"; __id1_.multiline = false; __id1_.vAlign = "top"; __id1_.antiAliasType = "advanced"; __id1_.glowBlur = 3; __id1_.glowColor = 0x663300; __id1_.useGlowFilter = true; __id1_.glowQuality = 3; __id1_.glowStrength = 5; __id1_.gridFitType = "pixel"; __id1_.italic = false; __id1_.selectable = false; __id1_.underline = false; try { __id1_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame3(){ if ((((__setPropDict[__id1_] == undefined)) || (!((int(__setPropDict[__id1_]) == 3))))){ __setPropDict[__id1_] = currentFrame; __setProp___id1__tekst_bord_Layer1_3(); }; } function __setProp___id1__tekst_bord_Layer1_1(){ try { __id1_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id1_.text = "{Game_Over}"; __id1_.textColor = 0xFF0000; __id1_.textSize = 50; __id1_.bold = false; __id1_.embedFonts = true; __id1_.font = "Comic Sans MS"; __id1_.hAlign = "center"; __id1_.multiline = false; __id1_.vAlign = "top"; __id1_.antiAliasType = "advanced"; __id1_.glowBlur = 3; __id1_.glowColor = 0x663300; __id1_.useGlowFilter = true; __id1_.glowQuality = 3; __id1_.glowStrength = 5; __id1_.gridFitType = "pixel"; __id1_.italic = false; __id1_.selectable = false; __id1_.underline = false; try { __id1_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function __setProp___id1__tekst_bord_Layer1_2(){ try { __id1_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id1_.text = "{Game_Complete}"; __id1_.textColor = 0xFF0000; __id1_.textSize = 50; __id1_.bold = false; __id1_.embedFonts = true; __id1_.font = "Comic Sans MS"; __id1_.hAlign = "center"; __id1_.multiline = false; __id1_.vAlign = "top"; __id1_.antiAliasType = "advanced"; __id1_.glowBlur = 3; __id1_.glowColor = 0x663300; __id1_.useGlowFilter = true; __id1_.glowQuality = 3; __id1_.glowStrength = 5; __id1_.gridFitType = "pixel"; __id1_.italic = false; __id1_.selectable = false; __id1_.underline = false; try { __id1_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame1(){ if ((((__setPropDict[__id1_] == undefined)) || (!((int(__setPropDict[__id1_]) == 1))))){ __setPropDict[__id1_] = currentFrame; __setProp___id1__tekst_bord_Layer1_1(); }; } function frame2(){ if ((((__setPropDict[__id1_] == undefined)) || (!((int(__setPropDict[__id1_]) == 2))))){ __setPropDict[__id1_] = currentFrame; __setProp___id1__tekst_bord_Layer1_2(); }; } } }//package MENUS_fla
Section 213
//viewstatsbutton_245 (MENUS_fla.viewstatsbutton_245) package MENUS_fla { import flash.display.*; import flash.utils.*; import spill.localisation.*; public dynamic class viewstatsbutton_245 extends MovieClip { public var __id7_:LocalizedTextField; public var __setPropDict:Dictionary; public function viewstatsbutton_245(){ __setPropDict = new Dictionary(true); super(); addFrameScript(0, frame1, 1, frame2, 2, frame3); } function __setProp___id7__viewstatsbutton_Layer1_1(){ try { __id7_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id7_.text = "{View_Stats_Button}"; __id7_.textColor = 0xFFFF00; __id7_.textSize = 18; __id7_.bold = true; __id7_.embedFonts = true; __id7_.font = "Comic Sans MS"; __id7_.hAlign = "center"; __id7_.multiline = true; __id7_.vAlign = "middle"; __id7_.antiAliasType = "advanced"; __id7_.glowBlur = 3; __id7_.glowColor = 0; __id7_.useGlowFilter = false; __id7_.glowQuality = 1; __id7_.glowStrength = 5; __id7_.gridFitType = "pixel"; __id7_.italic = false; __id7_.selectable = false; __id7_.underline = false; try { __id7_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame3(){ if ((((__setPropDict[__id7_] == undefined)) || (!((((int(__setPropDict[__id7_]) == 1)) || ((int(__setPropDict[__id7_]) == 3))))))){ __setPropDict[__id7_] = currentFrame; __setProp___id7__viewstatsbutton_Layer1_1(); }; } function frame1(){ if ((((__setPropDict[__id7_] == undefined)) || (!((((int(__setPropDict[__id7_]) == 1)) || ((int(__setPropDict[__id7_]) == 3))))))){ __setPropDict[__id7_] = currentFrame; __setProp___id7__viewstatsbutton_Layer1_1(); }; stop(); } function __setProp___id7__viewstatsbutton_Layer1_2(){ try { __id7_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id7_.text = "{View_Stats_Button}"; __id7_.textColor = 0xFFFF00; __id7_.textSize = 18; __id7_.bold = true; __id7_.embedFonts = true; __id7_.font = "Comic Sans MS"; __id7_.hAlign = "center"; __id7_.multiline = true; __id7_.vAlign = "middle"; __id7_.antiAliasType = "normal"; __id7_.glowBlur = 3; __id7_.glowColor = 0; __id7_.useGlowFilter = false; __id7_.glowQuality = 1; __id7_.glowStrength = 5; __id7_.gridFitType = "pixel"; __id7_.italic = false; __id7_.selectable = false; __id7_.underline = false; try { __id7_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function frame2(){ if ((((__setPropDict[__id7_] == undefined)) || (!((int(__setPropDict[__id7_]) == 2))))){ __setPropDict[__id7_] = currentFrame; __setProp___id7__viewstatsbutton_Layer1_2(); }; } } }//package MENUS_fla
Section 214
//wood_button_30 (MENUS_fla.wood_button_30) package MENUS_fla { import flash.display.*; import spill.localisation.*; public dynamic class wood_button_30 extends MovieClip { public var __id3_:LocalizedTextField; public function wood_button_30(){ __setProp___id3__wood_button_1(); } function __setProp___id3__wood_button_1(){ try { __id3_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id3_.text = "{Branding_More_Games_Sentence_Short}"; __id3_.textColor = 0xCC9900; __id3_.textSize = 12; __id3_.bold = true; __id3_.embedFonts = true; __id3_.font = "Comic Sans MS"; __id3_.hAlign = "center"; __id3_.multiline = false; __id3_.vAlign = "top"; __id3_.antiAliasType = "normal"; __id3_.glowBlur = 3; __id3_.glowColor = 0x330000; __id3_.useGlowFilter = true; __id3_.glowQuality = 2; __id3_.glowStrength = 5; __id3_.gridFitType = "pixel"; __id3_.italic = false; __id3_.selectable = false; __id3_.underline = false; try { __id3_["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package MENUS_fla
Section 215
//FontAsset (mx.core.FontAsset) package mx.core { import flash.text.*; public class FontAsset extends Font implements IFlexAsset { mx_internal static const VERSION:String = "3.2.0.3958"; } }//package mx.core
Section 216
//IFlexAsset (mx.core.IFlexAsset) package mx.core { public interface IFlexAsset { } }//package mx.core
Section 217
//mx_internal (mx.core.mx_internal) package mx.core { public namespace mx_internal = "http://www.adobe.com/2006/flex/mx/internal"; }//package mx.core
Section 218
//O1111111l (O111111Ol111.O111111Ol.O1111111l) package O111111Ol111.O111111Ol { import flash.events.*; import flash.display.*; public class O1111111l extends MovieClip { public function O1111111l():void{ this.addEventListener(Event.ADDED_TO_STAGE, O11111100, false, 0, true); } private function O11111100(_arg1:Event):void{ this.gotoAndStop(O111111OO.O11111OO0().O11111Oll()); } } }//package O111111Ol111.O111111Ol
Section 219
//O1111111O11 (O111111Ol111.O111111Ol.O1111111O11) package O111111Ol111.O111111Ol { import flash.net.*; import flash.external.*; public class O1111111O11 { private static const O11111100:Array = ["gamedev.dev.spilgames.com", "gamedev.dev.spillgroup.com", "www.agame.com", "www.girlsgogames.com", "www.games.co.uk", "www.mygames.co.uk", "www.girlsgogames.co.uk", "www.spel.nl", "www.spelletjes.nl", "www.girlsgogames.nl", "www.jetztspielen.de", "www.spielen.com", "www.girlsgogames.de", "www.jeux.fr", "www.jeu.fr", "www.girlsgogames.fr", "www.juegos.com", "www.zapjuegos.com", "www.juegosdechicas.com", "www.gioco.it", "www.giocaregratis.it", "www.girlsgogames.it", "www.gry.pl", "www.minigry.pl", "www.girlsgogames.pl", "www.spela.se", "www.spel.eu", "www.girlsgogames.se", "www.ojogos.pt", "www.ourgames.ru", "www.flashgames.ru", "www.girlsgogames.ru", "www.oyunlar123.com", "www.asoyun.com", "www.girlsgogamestr.com", "www.gamesgames.com", "www.agame.com", "www.girlsgogames.com", "www.juegos.com", "www.zapjuegos.com", "www.juegosdechicas.com", "www.ojogos.com.br", "www.clickjogos.com", "www.girlsgogames.com.br", "www.game.com.cn", "www.xiaoyouxi.com", "www.egames.jp", "www.game.co.in", "www.game.co.in", "www.girlsgogames.in", "www.games.co.id", "www.laro.com.ph", "www.game.com.my", "www.onrpg.com", "www.zlonggames.com", "www.a10.com"]; private static var O11111O1O; private static var O11111O11:URLRequest; public function O1111111O11():void{ super(); try { O11111O1O = ExternalInterface.call("window.location.href.toString"); } catch(e) { O11111O1O = "error"; }; if ((((O11111O1O == null)) || ((O11111O1O == "")))){ O11111O1O = "error"; }; if (String(O11111O1O).indexOf(".swf") != -1){ O11111O1O = "error"; }; } public function O1111110l():Boolean{ if (((!((O11111OOO(O11111OOl(O11111O1O)) == -1))) && (!((O11111O1O == "error"))))){ return (true); }; return (false); } private static function O11111OOl(_arg1:String):String{ var _local2:String; var _local3:uint; _local2 = new String(); _local3 = 7; while (_local3 < _arg1.length) { if (_arg1.charAt(_local3) == "/"){ break; }; _local2 = (_local2 + _arg1.charAt(_local3)); _local3++; }; return (_local2); } private static function O11111OOO(_arg1:String):Number{ var _local2:uint; if (((O11111100) && (_arg1))){ _local2 = 0; while (_local2 < O11111100.length) { if (_arg1 == O11111100[_local2]){ return (_local2); }; _local2++; }; return (-1); } else { trace("cannot find site name"); }; return (-1); } } }//package O111111Ol111.O111111Ol
Section 220
//O111111O1 (O111111Ol111.O111111Ol.O111111O1) package O111111Ol111.O111111Ol { import flash.events.*; import flash.display.*; public class O111111O1 extends MovieClip { public function O111111O1():void{ this.addEventListener(Event.ADDED_TO_STAGE, O11111O10, false, 0, true); } private function O11111O10(_arg1:Event):void{ this.gotoAndStop(O111111OO.O11111OO0().O11111Ol0()); } } }//package O111111Ol111.O111111Ol
Section 221
//O111111OO (O111111Ol111.O111111Ol.O111111OO) package O111111Ol111.O111111Ol { import flash.net.*; public class O111111OO { private var O11111l1O:String; private var O11111l11:String; public var O11111O10:int;// = 1 private var O11111O00:Array; private var O11111111l0:int; private var O111111ll:String; private static var O11111O0l:O111111OO; public function O111111OO():void{ O11111O10 = 1; super(); O11111O00 = new Array(); } private function O11111l1l():void{ O11111O00.push(new O11111O0O(1, 1, (((((("http://www.agame.com/game/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(17, 1, (((((("http://www.gamesgames.com/game/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(29, 1, (((((("http://www.girlsgogames.com/game/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(45, 2, (((((("http://www.a10.com/game/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(2, 19, "http://www.game.com.cn/downloads")); O11111O00.push(new O11111O0O(2, 19, "http://www.game.com.cn/downloads")); O11111O00.push(new O11111O0O(2, 19, "http://www.game.com.cn/downloads")); O11111O00.push(new O11111O0O(2, 19, "http://www.game.com.cn/downloads")); O11111O00.push(new O11111O0O(4, 5, (((((("http://www.spel.nl/game/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(18, 5, (((((("http://www.spelletjes.nl/spel/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(30, 5, (((((("http://www.girlsgogames.nl/spel/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(3, 5, (((((("http://www.spel.nl/game/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(5, 6, (((((("http://www.jeu.fr/jeu/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(19, 6, (((((("http://www.jeux.fr/jeu/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(31, 6, (((((("http://www.girlsgogames.fr/jeu/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(4, 6, (((((("http://www.jeu.fr/jeu/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(6, 7, (((((("http://www.spielen.com/spiel/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(20, 7, (((((("http://www.jetztspielen.de/spiel/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(32, 7, (((((("http://www.girlsgogames.de/spiel/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(5, 7, (((((("http://www.spielen.com/spiel/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(14, 13, (((((("http://www.minigry.pl/gra/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(21, 13, (((((("http://www.gry.pl/gra/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(33, 13, (((((("http://www.girlsgogames.pl/gra/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(6, 13, (((((("http://www.minigry.pl/gra/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(9, 12, (((((("http://www.spel.eu/spel_/" + O11111l1O) + ".htmlutm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(22, 12, (((((("http://www.spela.se/spel_/" + O11111l1O) + ".htmlutm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(34, 12, (((((("http://www.girlsgogames.se/spel_/" + O11111l1O) + ".htmlutm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(7, 12, (((((("http://www.spel.eu/spel_/" + O11111l1O) + ".htmlutm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(8, 11, (((((("http://www.giocaregratis.it/gioco/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(23, 11, (((((("http://www.gioco.it/gioco/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(35, 11, (((((("http://www.girlsgogames.it/gioco/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(8, 11, (((((("http://www.giocaregratis.it/gioco/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(5, 8, (((((("http://www.zapjuegos.com/juego/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(24, 8, (((((("http://www.juegos.com/juego/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(36, 8, (((((("http://www.juegosdechicas.com/juego/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(9, 8, (((((("http://www.zapjuegos.com/juego/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(7, 9, (((((("http://www.clickjogos.com/jogo/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(25, 9, (((((("http://www.ojogos.com.br/jogo/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(38, 9, (((((("http://www.girlsgogames.com.br/jogo/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(10, 9, (((((("http://www.clickjogos.com/jogo/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(13, 16, (((((("http://www.games.co.id/permainanme/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(13, 16, (((((("http://www.games.co.id/permainanme/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(13, 16, (((((("http://www.games.co.id/permainanme/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(13, 16, (((((("http://www.games.co.id/permainanme/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(11, 14, (((((("http://www.flashgames.ru/igra/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(26, 14, (((((("http://www.ourgames.ru/igra/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(39, 14, (((((("http://www.girlsgogames.ru/igra/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(12, 14, (((((("http://www.flashgames.ru/igra/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(10, 2, (((((("http://www.mygames.co.uk/game/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(27, 2, (((((("http://www.games.co.uk/game/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(37, 2, (((((("http://www.girlsgogames.co.uk/game/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(13, 2, (((((("http://www.mygames.co.uk/game/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(12, 3, (((((("http://www.game.co.in/game/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(12, 3, (((((("http://www.game.co.in/game/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(40, 3, (((((("http://www.girlsgogames.in/game/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(14, 3, (((((("http://www.game.co.in/game/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(15, 15, (((((("http://www.asoyun.com/oyun/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(28, 15, (((((("http://www.oyunlar123.com/oyun/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(41, 15, (((((("http://www.girlsgogamestr.com/oyun/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(15, 15, (((((("http://www.asoyun.com/oyun/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(16, 17, (((((("http://www.game.com.my/permainan_/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(16, 17, (((((("http://www.game.com.my/permainan_/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(16, 17, (((((("http://www.game.com.my/permainan_/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(16, 17, (((((("http://www.game.com.my/permainan_/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(42, 10, (((((("http://www.ojogos.pt/jogo/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(42, 10, (((((("http://www.ojogos.pt/jogo/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(42, 10, (((((("http://www.ojogos.pt/jogo/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(42, 10, (((((("http://www.ojogos.pt/jogo/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(43, 4, (((((("http://www.laro.com.ph/game/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(43, 4, (((((("http://www.laro.com.ph/game/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(43, 4, (((((("http://www.laro.com.ph/game/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(43, 4, (((((("http://www.laro.com.ph/game/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(44, 18, (((((("http://www.egames.jp/game/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(44, 18, (((((("http://www.egames.jp/game/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(44, 18, (((((("http://www.egames.jp/game/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(44, 18, (((((("http://www.egames.jp/game/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(45, 2, (((((("http://www.a10.com/game/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(45, 2, (((((("http://www.a10.com/game/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(45, 2, (((((("http://www.a10.com/game/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); O11111O00.push(new O11111O0O(45, 2, (((((("http://www.a10.com/game/" + O11111l1O) + ".html?utm_source=brandedgames_external&utm_medium=") + O111111ll) + "&utm_campaign=") + O11111l11) + "&utm_term=play_with_highscore"))); } public function O11111O01():void{ navigateToURL(new URLRequest(O11111O00[((((O11111O10 - 1) * 4) + O11111111l0) - 1)].O11111OOl), "_blank"); } public function O11111OlO(_arg1:int=1):void{ O11111O10 = _arg1; } public function O11111Ol0():int{ return (O11111O00[((((O11111O10 - 1) * 4) + O11111111l0) - 1)].O11111OOO); } public function O11111Ol1(_arg1:String, _arg2:String, _arg3:String, _arg4:int):void{ O11111111l0 = _arg4; O11111l11 = _arg1; O111111ll = _arg2; O11111l1O = _arg3; O11111l1l(); } public function O11111Oll():int{ return (O11111O00[((((O11111O10 - 1) * 4) + O11111111l0) - 1)].O11111OO1); } public static function O11111OO0():O111111OO{ if (O11111O0l == null){ O11111O0l = new (O111111OO); }; return (O11111O0l); } } }//package O111111Ol111.O111111Ol class O11111O0O { public var O11111OOl:String; public var O11111OOO:int; public var O11111OO1:int; private function O11111O0O(_arg1:int, _arg2:int, _arg3:String):void{ O11111OO1 = _arg1; O11111OOO = _arg2; O11111OOl = _arg3; } }
Section 222
//B_slammings_burn (sfx.B_slammings_burn) package sfx { import flash.media.*; public dynamic class B_slammings_burn extends Sound { } }//package sfx
Section 223
//B_slammings_damage (sfx.B_slammings_damage) package sfx { import flash.media.*; public dynamic class B_slammings_damage extends Sound { } }//package sfx
Section 224
//B_slammings_damage2 (sfx.B_slammings_damage2) package sfx { import flash.media.*; public dynamic class B_slammings_damage2 extends Sound { } }//package sfx
Section 225
//B_slammings_die (sfx.B_slammings_die) package sfx { import flash.media.*; public dynamic class B_slammings_die extends Sound { } }//package sfx
Section 226
//B_slammings_drowninwater (sfx.B_slammings_drowninwater) package sfx { import flash.media.*; public dynamic class B_slammings_drowninwater extends Sound { } }//package sfx
Section 227
//B_slammings_getawaysmail (sfx.B_slammings_getawaysmail) package sfx { import flash.media.*; public dynamic class B_slammings_getawaysmail extends Sound { } }//package sfx
Section 228
//B_slammings_jump (sfx.B_slammings_jump) package sfx { import flash.media.*; public dynamic class B_slammings_jump extends Sound { } }//package sfx
Section 229
//B_slammings_pickup (sfx.B_slammings_pickup) package sfx { import flash.media.*; public dynamic class B_slammings_pickup extends Sound { } }//package sfx
Section 230
//bomb (sfx.bomb) package sfx { import flash.media.*; public dynamic class bomb extends Sound { } }//package sfx
Section 231
//combo (sfx.combo) package sfx { import flash.media.*; public dynamic class combo extends Sound { } }//package sfx
Section 232
//cut_slammings (sfx.cut_slammings) package sfx { import flash.media.*; public dynamic class cut_slammings extends Sound { } }//package sfx
Section 233
//cutbrige (sfx.cutbrige) package sfx { import flash.media.*; public dynamic class cutbrige extends Sound { } }//package sfx
Section 234
//cutnothing (sfx.cutnothing) package sfx { import flash.media.*; public dynamic class cutnothing extends Sound { } }//package sfx
Section 235
//gamepause (sfx.gamepause) package sfx { import flash.media.*; public dynamic class gamepause extends Sound { } }//package sfx
Section 236
//godhandbang (sfx.godhandbang) package sfx { import flash.media.*; public dynamic class godhandbang extends Sound { } }//package sfx
Section 237
//godhandwind (sfx.godhandwind) package sfx { import flash.media.*; public dynamic class godhandwind extends Sound { } }//package sfx
Section 238
//Level1Music (sfx.Level1Music) package sfx { import flash.media.*; public dynamic class Level1Music extends Sound { } }//package sfx
Section 239
//Level2Music (sfx.Level2Music) package sfx { import flash.media.*; public dynamic class Level2Music extends Sound { } }//package sfx
Section 240
//Level3Music (sfx.Level3Music) package sfx { import flash.media.*; public dynamic class Level3Music extends Sound { } }//package sfx
Section 241
//LevelCompleteMusic (sfx.LevelCompleteMusic) package sfx { import flash.media.*; public dynamic class LevelCompleteMusic extends Sound { } }//package sfx
Section 242
//LevelFailedMusic (sfx.LevelFailedMusic) package sfx { import flash.media.*; public dynamic class LevelFailedMusic extends Sound { } }//package sfx
Section 243
//levelselect_press (sfx.levelselect_press) package sfx { import flash.media.*; public dynamic class levelselect_press extends Sound { } }//package sfx
Section 244
//levelselect_touch (sfx.levelselect_touch) package sfx { import flash.media.*; public dynamic class levelselect_touch extends Sound { } }//package sfx
Section 245
//MainScreenMusic (sfx.MainScreenMusic) package sfx { import flash.media.*; public dynamic class MainScreenMusic extends Sound { } }//package sfx
Section 246
//menu_otherpress (sfx.menu_otherpress) package sfx { import flash.media.*; public dynamic class menu_otherpress extends Sound { } }//package sfx
Section 247
//menu_touch (sfx.menu_touch) package sfx { import flash.media.*; public dynamic class menu_touch extends Sound { } }//package sfx
Section 248
//N_slammings_burn (sfx.N_slammings_burn) package sfx { import flash.media.*; public dynamic class N_slammings_burn extends Sound { } }//package sfx
Section 249
//N_slammings_damage (sfx.N_slammings_damage) package sfx { import flash.media.*; public dynamic class N_slammings_damage extends Sound { } }//package sfx
Section 250
//N_slammings_damage2 (sfx.N_slammings_damage2) package sfx { import flash.media.*; public dynamic class N_slammings_damage2 extends Sound { } }//package sfx
Section 251
//N_slammings_die (sfx.N_slammings_die) package sfx { import flash.media.*; public dynamic class N_slammings_die extends Sound { } }//package sfx
Section 252
//N_slammings_die2 (sfx.N_slammings_die2) package sfx { import flash.media.*; public dynamic class N_slammings_die2 extends Sound { } }//package sfx
Section 253
//N_slammings_drownloop (sfx.N_slammings_drownloop) package sfx { import flash.media.*; public dynamic class N_slammings_drownloop extends Sound { } }//package sfx
Section 254
//N_slammings_getawaysmail (sfx.N_slammings_getawaysmail) package sfx { import flash.media.*; public dynamic class N_slammings_getawaysmail extends Sound { } }//package sfx
Section 255
//N_slammings_getawaysmail2 (sfx.N_slammings_getawaysmail2) package sfx { import flash.media.*; public dynamic class N_slammings_getawaysmail2 extends Sound { } }//package sfx
Section 256
//N_slammings_jump (sfx.N_slammings_jump) package sfx { import flash.media.*; public dynamic class N_slammings_jump extends Sound { } }//package sfx
Section 257
//N_slammings_jump2 (sfx.N_slammings_jump2) package sfx { import flash.media.*; public dynamic class N_slammings_jump2 extends Sound { } }//package sfx
Section 258
//N_slammings_jump3 (sfx.N_slammings_jump3) package sfx { import flash.media.*; public dynamic class N_slammings_jump3 extends Sound { } }//package sfx
Section 259
//N_slammings_pickup (sfx.N_slammings_pickup) package sfx { import flash.media.*; public dynamic class N_slammings_pickup extends Sound { } }//package sfx
Section 260
//N_slammings_pickup2 (sfx.N_slammings_pickup2) package sfx { import flash.media.*; public dynamic class N_slammings_pickup2 extends Sound { } }//package sfx
Section 261
//N_slammings_pickup3 (sfx.N_slammings_pickup3) package sfx { import flash.media.*; public dynamic class N_slammings_pickup3 extends Sound { } }//package sfx
Section 262
//S_slammings_burn (sfx.S_slammings_burn) package sfx { import flash.media.*; public dynamic class S_slammings_burn extends Sound { } }//package sfx
Section 263
//S_slammings_damage (sfx.S_slammings_damage) package sfx { import flash.media.*; public dynamic class S_slammings_damage extends Sound { } }//package sfx
Section 264
//S_slammings_damage2 (sfx.S_slammings_damage2) package sfx { import flash.media.*; public dynamic class S_slammings_damage2 extends Sound { } }//package sfx
Section 265
//S_slammings_damage3 (sfx.S_slammings_damage3) package sfx { import flash.media.*; public dynamic class S_slammings_damage3 extends Sound { } }//package sfx
Section 266
//S_slammings_die (sfx.S_slammings_die) package sfx { import flash.media.*; public dynamic class S_slammings_die extends Sound { } }//package sfx
Section 267
//S_slammings_die2 (sfx.S_slammings_die2) package sfx { import flash.media.*; public dynamic class S_slammings_die2 extends Sound { } }//package sfx
Section 268
//S_slammings_drownloop (sfx.S_slammings_drownloop) package sfx { import flash.media.*; public dynamic class S_slammings_drownloop extends Sound { } }//package sfx
Section 269
//S_slammings_getawaysmail (sfx.S_slammings_getawaysmail) package sfx { import flash.media.*; public dynamic class S_slammings_getawaysmail extends Sound { } }//package sfx
Section 270
//S_slammings_getawaysmail2 (sfx.S_slammings_getawaysmail2) package sfx { import flash.media.*; public dynamic class S_slammings_getawaysmail2 extends Sound { } }//package sfx
Section 271
//S_slammings_jump (sfx.S_slammings_jump) package sfx { import flash.media.*; public dynamic class S_slammings_jump extends Sound { } }//package sfx
Section 272
//S_slammings_jump2 (sfx.S_slammings_jump2) package sfx { import flash.media.*; public dynamic class S_slammings_jump2 extends Sound { } }//package sfx
Section 273
//S_slammings_jump3 (sfx.S_slammings_jump3) package sfx { import flash.media.*; public dynamic class S_slammings_jump3 extends Sound { } }//package sfx
Section 274
//S_slammings_pickup (sfx.S_slammings_pickup) package sfx { import flash.media.*; public dynamic class S_slammings_pickup extends Sound { } }//package sfx
Section 275
//S_slammings_pickup2 (sfx.S_slammings_pickup2) package sfx { import flash.media.*; public dynamic class S_slammings_pickup2 extends Sound { } }//package sfx
Section 276
//scoopbuild (sfx.scoopbuild) package sfx { import flash.media.*; public dynamic class scoopbuild extends Sound { } }//package sfx
Section 277
//scoopshoot (sfx.scoopshoot) package sfx { import flash.media.*; public dynamic class scoopshoot extends Sound { } }//package sfx
Section 278
//TutorialMusic (sfx.TutorialMusic) package sfx { import flash.media.*; public dynamic class TutorialMusic extends Sound { } }//package sfx
Section 279
//villagerdie (sfx.villagerdie) package sfx { import flash.media.*; public dynamic class villagerdie extends Sound { } }//package sfx
Section 280
//villagerdie2 (sfx.villagerdie2) package sfx { import flash.media.*; public dynamic class villagerdie2 extends Sound { } }//package sfx
Section 281
//villagerdie3 (sfx.villagerdie3) package sfx { import flash.media.*; public dynamic class villagerdie3 extends Sound { } }//package sfx
Section 282
//lemming_dood2_4 (Slamming1_fla.lemming_dood2_4) package Slamming1_fla { import flash.display.*; public dynamic class lemming_dood2_4 extends MovieClip { public function lemming_dood2_4(){ addFrameScript(17, frame18); } function frame18(){ stop(); } } }//package Slamming1_fla
Section 283
//lijf_19 (Slamming1_fla.lijf_19) package Slamming1_fla { import flash.display.*; public dynamic class lijf_19 extends MovieClip { public var body_new:MovieClip; } }//package Slamming1_fla
Section 284
//lemming_dood2_5 (Slamming2_fla.lemming_dood2_5) package Slamming2_fla { import flash.display.*; public dynamic class lemming_dood2_5 extends MovieClip { public function lemming_dood2_5(){ addFrameScript(20, frame21); } function frame21(){ stop(); } } }//package Slamming2_fla
Section 285
//lijf_20 (Slamming2_fla.lijf_20) package Slamming2_fla { import flash.display.*; public dynamic class lijf_20 extends MovieClip { public var body_new:MovieClip; } }//package Slamming2_fla
Section 286
//lemming_dood2_6 (Slamming3_fla.lemming_dood2_6) package Slamming3_fla { import flash.display.*; public dynamic class lemming_dood2_6 extends MovieClip { public function lemming_dood2_6(){ addFrameScript(20, frame21); } function frame21(){ stop(); } } }//package Slamming3_fla
Section 287
//lijf_21 (Slamming3_fla.lijf_21) package Slamming3_fla { import flash.display.*; public dynamic class lijf_21 extends MovieClip { public var body_new:MovieClip; } }//package Slamming3_fla
Section 288
//lemming_dood2_3 (Slamming4_fla.lemming_dood2_3) package Slamming4_fla { import flash.display.*; public dynamic class lemming_dood2_3 extends MovieClip { public function lemming_dood2_3(){ addFrameScript(20, frame21); } function frame21(){ stop(); } } }//package Slamming4_fla
Section 289
//lemming_dood2_3 (Slamming5_fla.lemming_dood2_3) package Slamming5_fla { import flash.display.*; public dynamic class lemming_dood2_3 extends MovieClip { public function lemming_dood2_3(){ addFrameScript(20, frame21); } function frame21(){ stop(); } } }//package Slamming5_fla
Section 290
//Brand (spill.localisation.Brand) package spill.localisation { public class Brand { public var domain:String; public var useGoogleAnalitics:Boolean;// = true public var emailPage:String; public var name:String; public var site_id:uint; public var isExternal:Boolean;// = false public var id:Number; public var hostingDomain:String;// = "" public var preferedLanguage:String;// = "" public var moreLink:String;// = "/moregames/" public var hasSendToFriendLink:Boolean;// = true public var portalGroup:uint; public var emailLink:String;// = "/game/" private static const topLevelDoubles:String = (((((((((((((("ac.cn,ac.jp,ac.uk,ad.jp,adm.br,adv.br,agr.br," + "ah.cn,am.br,arq.br,art.br,asn.au,ato.br,av.tr,bel.tr,bio.br,biz.tr,bj.cn,bmd.br,") + "cim.br,cng.br,cnt.br,co.at,co.jp,co.uk,com.au,com.br,com.cn,com.eg,com.hk,com.mx,") + "com.ru,com.tr,com.tw,conf.au,cq.cn,csiro.au,dr.tr,ecn.br,edu.au,edu.br,edu.tr,") + "emu.id.au,eng.br,esp.br,etc.br,eti.br,eun.eg,far.br,fj.cn,fm.br,fnd.br,fot.br,") + "fst.br,g12.br,gb.com,gb.net,gd.cn,gen.tr,ggf.br,gob.mx,gov.au,gov.br,gov.cn,") + "gov.hk,gov.tr,gr.jp,gs.cn,gx.cn,gz.cn,ha.cn,hb.cn,he.cn,hi.cn,hk.cn,hl.cn,hn.cn,") + "id.au,idv.tw,imb.br,ind.br,inf.br,info.au,info.tr,jl.cn,jor.br,js.cn,jx.cn,k12.tr,") + "lel.br,ln.cn,ltd.uk,mat.br,me.uk,med.br,mil.br,mil.tr,mo.cn,mus.br,name.tr,ne.jp,") + "net.au,net.br,net.cn,net.eg,net.hk,net.lu,net.mx,net.ru,net.tr,net.tw,net.uk,") + "nm.cn,no.com,nom.br,not.br,ntr.br,nx.cn,odo.br,oop.br,or.at,or.jp,org.au,org.br,") + "org.cn,org.hk,org.lu,org.ru,org.tr,org.tw,org.uk,plc.uk,pol.tr,pp.ru,ppg.br,pro.br,") + "psc.br,psi.br,qh.cn,qsl.br,rec.br,sc.cn,sd.cn,se.com,se.net,sh.cn,slg.br,sn.cn,") + "srv.br,sx.cn,tel.tr,tj.cn,tmp.br,trd.br,tur.br,tv.br,tw.cn,uk.com,uk.net,vet.br,") + "wattle.id.au,web.tr,xj.cn,xz.cn,yn.cn,zj.cn,zlg.br,co.nr,co.nz,com.fr,com.ph,"); public function Brand(){ moreLink = "/moregames/"; emailLink = "/game/"; useGoogleAnalitics = true; hasSendToFriendLink = true; preferedLanguage = ""; isExternal = false; hostingDomain = ""; super(); } private function get utm_source():String{ return (("utm_source=brandedgames_" + (isExternal) ? "external" : "internal")); } public function getMoreGamesLink(_arg1:String, _arg2:Boolean, _arg3:String="", _arg4:String=""):String{ var _local5:String; _local5 = ("http://" + domain); _local5 = (_local5 + moreLink); if (useGoogleAnalitics){ _local5 = (_local5 + ("?utm_medium=brandedgames_" + (_arg2) ? "external" : "internal")); _local5 = (_local5 + ("&utm_campaign=" + _arg1)); if (((_arg2) && (!((_arg3 == ""))))){ _local5 = (_local5 + ("&utm_source=" + stripSubDomain(_arg3))); }; if (((!((_arg4 == ""))) && (!((_arg4 == null))))){ _local5 = (_local5 + ("&utm_content=" + _arg4)); }; }; return (_local5); } private function get utm_campaign():String{ if (isExternal){ return (("utm_campaign=" + hostingDomain)); }; return (""); } private function get utm_term():String{ return ("utm_term="); } public function getSendToFriendLink(_arg1:String, _arg2:String, _arg3:Boolean, _arg4:String=""):String{ var _local5:String; if (!hasSendToFriendLink){ return (getMoreGamesLink(_arg1, _arg3)); }; _local5 = ("http://" + domain); _local5 = (_local5 + (emailLink + _arg2)); if (useGoogleAnalitics){ _local5 = (_local5 + ("?utm_medium=brandedgames_" + (_arg3) ? "external" : "internal")); _local5 = (_local5 + ("&utm_campaign=" + _arg1)); if (((_arg3) && (!((_arg4 == ""))))){ _local5 = (_local5 + ("&utm_source=" + stripSubDomain(_arg4))); }; _local5 = (_local5 + "&utm_content=send_to_friend"); }; return (_local5); } private static function stripSubDomain(_arg1:String):String{ var _local2:Array; if (!_arg1){ return (""); }; _local2 = _arg1.split("."); if (_local2.length <= 2){ return (_arg1); }; _local2 = _local2.reverse(); if (topLevelDoubles.indexOf((((_local2[1] + ".") + _local2[0]) + ",")) > 0){ return (((((_local2[2] + ".") + _local2[1]) + ".") + _local2[0])); }; return (((_local2[1] + ".") + _local2[0])); } } }//package spill.localisation
Section 291
//BrandingLogo (spill.localisation.BrandingLogo) package spill.localisation { import flash.events.*; import flash.display.*; public class BrandingLogo extends MovieClip { public function BrandingLogo(){ addFrameScript(0, frame1); super(); stop(); mouseEnabled = false; mouseChildren = false; addEventListener(Event.ADDED_TO_STAGE, added, false, 0, true); addEventListener(Event.REMOVED_FROM_STAGE, removed, false, 0, true); if (stage){ added(); }; brandingChanged(); } private function added(_arg1:Event=null):void{ SpilGame.addEventListener("brandingChanged", brandingChanged, false, 0, true); } private function brandingChanged(_arg1:Event=null):void{ if (SpilGame.currentBranding){ gotoAndStop(SpilGame.currentBranding.domain); }; } function frame1(){ stop(); } private function removed(_arg1:Event):void{ SpilGame.removeEventListener("brandingChanged", brandingChanged); } } }//package spill.localisation
Section 292
//Brandings (spill.localisation.Brandings) package spill.localisation { public class Brandings { private static var brands_by_id:Object = new Object(); private static var brands_by_domain:Object = new Object(); public static function getBrandByID(_arg1:Number):Brand{ return (brands_by_id[_arg1]); } public static function getBrandsArray():Array{ var _local1:Array; var _local2:Brand; _local1 = new Array(); for each (_local2 in brands_by_domain) { _local1.push(_local2); }; return (_local1); } private static function addBrand(_arg1:Brand):Brand{ if (brands_by_domain[_arg1.domain]){ trace(("ERROR: Attempting to add duplicate brand by domain: " + _arg1.domain)); } else { brands_by_domain[_arg1.domain] = _arg1; }; if (brands_by_id[_arg1.site_id]){ trace(("ERROR: Attempting to add duplicate brand by id: " + _arg1.site_id)); } else { brands_by_id[_arg1.site_id] = _arg1; }; return (_arg1); } public static function initialize():void{ var _local1:Brand; _local1 = new Brand(); _local1.site_id = 79; _local1.domain = "www.agame.com"; _local1.preferedLanguage = "en_us"; _local1.portalGroup = PortalGroup.TWEEN; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 88; _local1.domain = "www.gamesgames.com"; _local1.preferedLanguage = "en_us"; _local1.portalGroup = PortalGroup.FAMILY; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 90; _local1.domain = "www.girlsgogames.com"; _local1.preferedLanguage = "en_us"; _local1.portalGroup = PortalGroup.GIRL; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 45; _local1.domain = "www.a10.com"; _local1.moreLink = "/moregames/"; _local1.preferedLanguage = "en_us"; _local1.portalGroup = PortalGroup.TEEN; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 92; _local1.domain = "www.games.co.uk"; _local1.preferedLanguage = "en_uk"; _local1.portalGroup = PortalGroup.FAMILY; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 107; _local1.domain = "www.mygames.co.uk"; _local1.preferedLanguage = "en_uk"; _local1.portalGroup = PortalGroup.TWEEN; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 102; _local1.domain = "www.girlsgogames.co.uk"; _local1.preferedLanguage = "en_uk"; _local1.portalGroup = PortalGroup.GIRL; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 2; _local1.domain = "www.game.com.cn"; _local1.preferedLanguage = "cn"; _local1.portalGroup = PortalGroup.NONE; _local1.useGoogleAnalitics = false; _local1.hasSendToFriendLink = false; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 25; _local1.domain = "www.spel.nl"; _local1.portalGroup = PortalGroup.TWEEN; _local1.preferedLanguage = "nl"; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 1; _local1.domain = "www.spelletjes.nl"; _local1.emailLink = "/spel/"; _local1.portalGroup = PortalGroup.FAMILY; _local1.preferedLanguage = "nl"; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 93; _local1.domain = "www.girlsgogames.nl"; _local1.emailLink = "/spel/"; _local1.portalGroup = PortalGroup.GIRL; _local1.preferedLanguage = "nl"; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 12; _local1.domain = "www.jeu.fr"; _local1.emailLink = "/jeu/"; _local1.portalGroup = PortalGroup.TWEEN; _local1.preferedLanguage = "fr"; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 95; _local1.domain = "www.girlsgogames.fr"; _local1.emailLink = "/jeu/"; _local1.portalGroup = PortalGroup.GIRL; _local1.preferedLanguage = "fr"; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 11; _local1.domain = "www.jeux.fr"; _local1.emailLink = "/jeu/"; _local1.portalGroup = PortalGroup.FAMILY; _local1.preferedLanguage = "fr"; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 26; _local1.domain = "www.spielen.com"; _local1.emailLink = "/spiel/"; _local1.portalGroup = PortalGroup.TWEEN; _local1.preferedLanguage = "de"; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 94; _local1.domain = "www.girlsgogames.de"; _local1.emailLink = "/spiel/"; _local1.portalGroup = PortalGroup.GIRL; _local1.preferedLanguage = "de"; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 5; _local1.domain = "www.jetztspielen.de"; _local1.emailLink = "/spiel/"; _local1.portalGroup = PortalGroup.FAMILY; _local1.preferedLanguage = "de"; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 109; _local1.domain = "www.minigry.pl"; _local1.emailLink = "/gra/"; _local1.portalGroup = PortalGroup.TWEEN; _local1.preferedLanguage = "pl"; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 16; _local1.domain = "www.gry.pl"; _local1.emailLink = "/gra/"; _local1.portalGroup = PortalGroup.FAMILY; _local1.preferedLanguage = "pl"; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 98; _local1.domain = "www.girlsgogames.pl"; _local1.emailLink = "/gra/"; _local1.portalGroup = PortalGroup.GIRL; _local1.preferedLanguage = "pl"; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 108; _local1.domain = "www.spel.eu"; _local1.emailLink = "/spel_/"; _local1.portalGroup = PortalGroup.TWEEN; _local1.preferedLanguage = "se"; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 100; _local1.domain = "www.girlsgogames.se"; _local1.emailLink = "/spel_/"; _local1.portalGroup = PortalGroup.GIRL; _local1.preferedLanguage = "se"; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 44; _local1.domain = "www.spela.se"; _local1.emailLink = "/spel_/"; _local1.preferedLanguage = "se"; _local1.portalGroup = PortalGroup.FAMILY; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 106; _local1.domain = "www.giocaregratis.it"; _local1.emailLink = "/gioco/"; _local1.portalGroup = PortalGroup.TWEEN; _local1.preferedLanguage = "it"; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 15; _local1.domain = "www.gioco.it"; _local1.emailLink = "/gioco/"; _local1.portalGroup = PortalGroup.FAMILY; _local1.preferedLanguage = "it"; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 99; _local1.domain = "www.girlsgogames.it"; _local1.emailLink = "/gioco/"; _local1.portalGroup = PortalGroup.GIRL; _local1.preferedLanguage = "it"; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 97; _local1.domain = "www.zapjuegos.com"; _local1.emailLink = "/juego/"; _local1.portalGroup = PortalGroup.TWEEN; _local1.preferedLanguage = "es"; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 86; _local1.domain = "www.juegos.com"; _local1.emailLink = "/juego/"; _local1.portalGroup = PortalGroup.FAMILY; _local1.preferedLanguage = "es"; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 96; _local1.domain = "www.juegosdechicas.com"; _local1.emailLink = "/juego/"; _local1.portalGroup = PortalGroup.GIRL; _local1.preferedLanguage = "es"; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 122; _local1.domain = "www.girlsgogames.es"; _local1.emailLink = "/juego/"; _local1.portalGroup = PortalGroup.GIRL; _local1.preferedLanguage = "es"; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 91; _local1.domain = "www.clickjogos.com"; _local1.emailLink = "/jogo/"; _local1.portalGroup = PortalGroup.TWEEN; _local1.preferedLanguage = "br"; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 101; _local1.domain = "www.girlsgogames.com.br"; _local1.emailLink = "/jogo/"; _local1.portalGroup = PortalGroup.GIRL; _local1.preferedLanguage = "br"; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 50; _local1.domain = "www.ojogos.com.br"; _local1.emailLink = "/jogo/"; _local1.portalGroup = PortalGroup.FAMILY; _local1.preferedLanguage = "br"; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 55; _local1.domain = "www.games.co.id"; _local1.emailLink = "/permainanme/"; _local1.portalGroup = PortalGroup.TWEEN; _local1.preferedLanguage = "id"; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 105; _local1.domain = "www.flashgames.ru"; _local1.emailLink = "/igra/"; _local1.portalGroup = PortalGroup.TWEEN; _local1.preferedLanguage = "ru"; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 104; _local1.domain = "www.girlsgogames.ru"; _local1.emailLink = "/igra/"; _local1.portalGroup = PortalGroup.GIRL; _local1.preferedLanguage = "ru"; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 103; _local1.domain = "www.ourgames.ru"; _local1.emailLink = "/igra/"; _local1.portalGroup = PortalGroup.FAMILY; _local1.preferedLanguage = "ru"; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 24; _local1.domain = "www.game.co.in"; _local1.emailLink = "/game/"; _local1.portalGroup = PortalGroup.TWEEN; _local1.preferedLanguage = "in"; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 115; _local1.domain = "www.girlsgogames.in"; _local1.emailLink = "/game/"; _local1.portalGroup = PortalGroup.GIRL; _local1.preferedLanguage = "in"; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 116; _local1.domain = "www.asoyun.com"; _local1.emailLink = "/oyun/"; _local1.portalGroup = PortalGroup.TWEEN; _local1.preferedLanguage = "tr"; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 114; _local1.domain = "www.girlsgogamestr.com"; _local1.emailLink = "/oyun/"; _local1.portalGroup = PortalGroup.GIRL; _local1.preferedLanguage = "tr"; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 118; _local1.domain = "www.game.com.my"; _local1.emailLink = "/permainan_/"; _local1.portalGroup = PortalGroup.TWEEN; _local1.preferedLanguage = "my"; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 87; _local1.domain = "www.ojogos.pt"; _local1.emailLink = "/jogo/"; _local1.portalGroup = PortalGroup.FAMILY; _local1.preferedLanguage = "pt"; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 120; _local1.domain = "www.egames.jp"; _local1.emailLink = "/game/"; _local1.portalGroup = PortalGroup.TWEEN; _local1.preferedLanguage = "jp"; addBrand(_local1); _local1 = new Brand(); _local1.site_id = 0; _local1.domain = "gamedev.dev.spilgames.com"; _local1.portalGroup = PortalGroup.FAMILY; _local1.preferedLanguage = null; addBrand(_local1); } public static function getBrandByDomain(_arg1:String):Brand{ return (brands_by_domain[_arg1]); } public static function hasDomain(_arg1:String):Boolean{ return (!((brands_by_domain[_arg1] == null))); } } }//package spill.localisation
Section 293
//Language (spill.localisation.Language) package spill.localisation { public class Language { public var name:String; public var id:uint; public var portal_groups:Array; public var forceFont:String;// = null public var textLanguage:String; public var embedFonts:Boolean;// = true public var displayName:String;// = "" public var dname:String; public function Language(_arg1:String, _arg2:String=null){ embedFonts = true; forceFont = null; displayName = ""; super(); name = _arg1; dname = _arg2; portal_groups = new Array(); } public function get p_teen():String{ return (portal_groups[PortalGroup.TEEN]); } public function get p_girl():String{ return (portal_groups[PortalGroup.GIRL]); } public function get p_family():String{ return (portal_groups[PortalGroup.FAMILY]); } public function set p_teen(_arg1:String):void{ portal_groups[PortalGroup.TEEN] = _arg1; } public function get p_tween():String{ return (portal_groups[PortalGroup.TWEEN]); } public function set p_family(_arg1:String):void{ portal_groups[PortalGroup.FAMILY] = _arg1; } public function set p_girl(_arg1:String):void{ portal_groups[PortalGroup.GIRL] = _arg1; } public function get displayAcronim():String{ return ((dname) ? dname : name); } public function set p_tween(_arg1:String):void{ portal_groups[PortalGroup.TWEEN] = _arg1; } } }//package spill.localisation
Section 294
//Languages (spill.localisation.Languages) package spill.localisation { public class Languages { public static var languages:Object = new Object(); private static var _init:Boolean = false; public static function initialize():void{ var _local1:Language; if (_init){ return; }; _init = true; _local1 = new Language("nl"); _local1.displayName = "Nederlands"; _local1.p_family = "www.spelletjes.nl"; _local1.p_tween = "www.spel.nl"; _local1.p_girl = "www.girlsgogames.nl"; _local1.p_teen = "www.a10.com"; addLanguage(_local1); _local1 = new Language("es"); _local1.displayName = "Español"; _local1.p_family = "www.juegos.com"; _local1.p_tween = "www.zapjuegos.com"; _local1.p_girl = "www.girlsgogames.es"; _local1.p_teen = "www.a10.com"; addLanguage(_local1); _local1 = new Language("pl"); _local1.displayName = "Polski"; _local1.p_family = "www.gry.pl"; _local1.p_tween = "www.minigry.pl"; _local1.p_girl = "www.girlsgogames.pl"; _local1.p_teen = "www.a10.com"; addLanguage(_local1); _local1 = new Language("fr"); _local1.displayName = "Français"; _local1.p_family = "www.jeux.fr"; _local1.p_tween = "www.jeu.fr"; _local1.p_girl = "www.girlsgogames.fr"; _local1.p_teen = "www.a10.com"; addLanguage(_local1); _local1 = new Language("en_us", "us"); _local1.displayName = "English (US)"; _local1.p_family = "www.gamesgames.com"; _local1.p_tween = "www.agame.com"; _local1.p_girl = "www.girlsgogames.com"; _local1.p_teen = "www.a10.com"; addLanguage(_local1); addReference(_local1, "en"); _local1 = new Language("id"); _local1.displayName = "Bahasa Ind."; _local1.p_family = "www.games.co.id"; _local1.p_tween = "www.games.co.id"; _local1.p_girl = "www.games.co.id"; _local1.p_teen = "www.a10.com"; addLanguage(_local1); _local1 = new Language("ru"); _local1.displayName = "Русский язык"; _local1.p_family = "www.ourgames.ru"; _local1.p_tween = "www.flashgames.ru"; _local1.p_girl = "www.girlsgogames.ru"; _local1.p_teen = "www.a10.com"; addLanguage(_local1); _local1 = new Language("se"); _local1.displayName = "Svenska"; _local1.p_family = "www.spela.se"; _local1.p_tween = "www.spel.eu"; _local1.p_girl = "www.girlsgogames.se"; _local1.p_teen = "www.a10.com"; addLanguage(_local1); addReference(_local1, "sv"); _local1 = new Language("it"); _local1.displayName = "Italiano"; _local1.p_family = "www.gioco.it"; _local1.p_tween = "www.giocaregratis.it"; _local1.p_girl = "www.girlsgogames.it"; _local1.p_teen = "www.a10.com"; addLanguage(_local1); _local1 = new Language("en_uk", "uk"); _local1.displayName = "English (UK)"; _local1.p_family = "www.games.co.uk"; _local1.p_tween = "www.mygames.co.uk"; _local1.p_girl = "www.girlsgogames.co.uk"; _local1.p_teen = "www.a10.com"; addLanguage(_local1); _local1 = new Language("cn"); _local1.displayName = "中文"; _local1.p_family = "www.game.com.cn"; _local1.p_tween = "www.game.com.cn"; _local1.p_girl = "www.game.com.cn"; _local1.p_teen = "www.game.com.cn"; _local1.embedFonts = false; _local1.forceFont = "_sans"; addLanguage(_local1); addReference(_local1, "zh-CN"); addReference(_local1, "zh-TW"); _local1 = new Language("pt"); _local1.displayName = "Português"; _local1.p_family = "www.ojogos.pt"; _local1.p_tween = "www.ojogos.pt"; _local1.p_girl = "www.ojogos.pt"; _local1.p_teen = "www.a10.com"; addLanguage(_local1); _local1 = new Language("tr"); _local1.displayName = "Türkçe"; _local1.p_family = "www.asoyun.com"; _local1.p_tween = "www.asoyun.com"; _local1.p_girl = "www.girlsgogamestr.com"; _local1.p_teen = "www.a10.com"; addLanguage(_local1); _local1 = new Language("my"); _local1.displayName = "Bahasa melayu"; _local1.p_family = "www.game.com.my"; _local1.p_tween = "www.game.com.my"; _local1.p_girl = "www.game.com.my"; _local1.p_teen = "www.a10.com"; addLanguage(_local1); _local1 = new Language("in"); _local1.displayName = "India"; _local1.p_family = "www.game.co.in"; _local1.p_tween = "www.game.co.in"; _local1.p_girl = "www.girlsgogames.in"; _local1.p_teen = "www.a10.com"; _local1.textLanguage = "en_uk"; addLanguage(_local1); _local1 = new Language("de"); _local1.displayName = "Deutsch"; _local1.p_family = "www.jetztspielen.de"; _local1.p_tween = "www.spielen.com"; _local1.p_girl = "www.girlsgogames.de"; _local1.p_teen = "www.a10.com"; addLanguage(_local1); _local1 = new Language("br"); _local1.displayName = "PortuguêsBR"; _local1.p_family = "www.ojogos.com.br"; _local1.p_tween = "www.clickjogos.com"; _local1.p_girl = "www.girlsgogames.com.br"; _local1.p_teen = "www.a10.com"; addLanguage(_local1); _local1 = new Language("jp"); _local1.displayName = "日本語"; _local1.p_family = "www.egames.jp"; _local1.p_tween = "www.egames.jp"; _local1.p_girl = "www.egames.jp"; _local1.p_teen = "www.a10.com"; _local1.embedFonts = false; _local1.forceFont = "_sans"; addLanguage(_local1); addReference(_local1, "ja"); } public static function getLanguagesArray():Array{ var _local1:Array; var _local2:Object; var _local3:Language; _local1 = new Array(); _local2 = new Object(); for each (_local3 in languages) { if (!_local2[_local3.name]){ _local1.push(_local3); _local2[_local3.name] = true; }; }; return (_local1); } public static function getLanguage(_arg1:String):Language{ return (languages[_arg1]); } private static function addLanguage(_arg1:Language):void{ languages[_arg1.name] = _arg1; } private static function addReference(_arg1:Language, _arg2:String):void{ languages[_arg2] = _arg1; } } }//package spill.localisation
Section 295
//LanguageSelectBox (spill.localisation.LanguageSelectBox) package spill.localisation { import flash.events.*; import flash.display.*; import flash.text.*; public class LanguageSelectBox extends MovieClip { private var flag:MovieClip; private var mc:MovieClip; private var popup:MovieClip; private var languageName_text:TextField; public function LanguageSelectBox(){ if (numChildren > 0){ removeChildAt(0); }; addEventListener(Event.ADDED_TO_STAGE, added, false, 0, true); addEventListener(Event.REMOVED_FROM_STAGE, removed, false, 0, true); addEventListener(MouseEvent.MOUSE_OVER, mouseOver, false, 0, true); addEventListener(MouseEvent.MOUSE_OUT, mouseOut, false, 0, true); Languages.initialize(); popup = new LanguageSelectPopup_mc(); x = Math.round(x); y = Math.round(y); popup.y = -(Math.floor(popup.height)); popup.visible = false; addChild(popup); mc = new LanguageSelectBox_mc(); addChild(mc); flag = mc.flag; languageName_text = mc.languageName_text; if (stage){ added(); }; init(); languageChanged(); } private function added(_arg1:Event=null):void{ SpilGame.addEventListener("languageChanged", languageChanged, false, 0, true); } public function set popupLocation(_arg1:String):void{ trace(("popupLocation = " + _arg1)); if (_arg1 == "bottom"){ popup.y = Math.floor(mc.height); } else { popup.y = -(Math.floor(popup.height)); }; } private function init():void{ var _local1:int; var _local2:MovieClip; var _local3:Language; _local1 = 0; while (_local1 < popup.numChildren) { _local2 = MovieClip(popup.getChildAt(_local1)); _local2.addEventListener(MouseEvent.CLICK, itemClicked, true, 0, true); _local2.flag.gotoAndStop(_local2.name.substr(2)); _local2.flag.mouseEnabled = false; _local2.text.mouseEnabled = false; _local3 = Languages.getLanguage(_local2.name.substr(2)); if (_local3){ _local2.text.text = _local3.displayAcronim; } else { trace((("Error, '" + _local2.name.substr(2)) + "' language not found")); }; _local1++; }; } private function mouseOver(_arg1:MouseEvent):void{ popup.visible = true; } private function languageChanged(_arg1:Event=null):void{ if (SpilGame.currentLanguage){ flag.gotoAndStop(SpilGame.currentLanguage.name); languageName_text.text = SpilGame.currentLanguage.displayName; languageName_text.embedFonts = SpilGame.currentLanguage.embedFonts; }; } private function mouseOut(_arg1:MouseEvent):void{ popup.visible = false; } private function removed(_arg1:Event):void{ SpilGame.removeEventListener("languageChanged", languageChanged); } private function itemClicked(_arg1:MouseEvent):void{ SpilGame.changeLanguage(_arg1.currentTarget.name.substr(2)); popup.visible = false; } } }//package spill.localisation
Section 296
//LanguageSelectBox_mc (spill.localisation.LanguageSelectBox_mc) package spill.localisation { import flash.display.*; import flash.text.*; public dynamic class LanguageSelectBox_mc extends MovieClip { public var flag:MovieClip; public var languageName_text:TextField; } }//package spill.localisation
Section 297
//LanguageSelectPopup_mc (spill.localisation.LanguageSelectPopup_mc) package spill.localisation { import flash.display.*; public dynamic class LanguageSelectPopup_mc extends MovieClip { public var l_se:MovieClip; public var l_br:MovieClip; public var l_in:MovieClip; public var l_cn:MovieClip; public var l_tr:MovieClip; public var l_de:MovieClip; public var l_my:MovieClip; public var l_es:MovieClip; public var l_en_uk:MovieClip; public var l_fr:MovieClip; public var l_en_us:MovieClip; public var l_pl:MovieClip; public var l_pt:MovieClip; public var l_nl:MovieClip; public var l_id:MovieClip; public var l_it:MovieClip; public var l_jp:MovieClip; public var l_ru:MovieClip; } }//package spill.localisation
Section 298
//LocalizedTextField (spill.localisation.LocalizedTextField) package spill.localisation { import flash.events.*; public class LocalizedTextField extends TextFieldFit { private var regex:RegExp; private var originalText:String; public function LocalizedTextField(){ regex = /{([^{}]*)}/g; super(); addEventListener(Event.ADDED_TO_STAGE, added, false, 0, true); addEventListener(Event.REMOVED_FROM_STAGE, removed, false, 0, true); if (stage){ added(); }; } private function languageChanged(_arg1:Event):void{ text = originalText; } override public function set text(_arg1:String):void{ originalText = _arg1; if ((_arg1 is String)){ super.text = _arg1.replace(regex, replaceFn); } else { super.text = ""; }; } private function removed(_arg1:Event):void{ SpilGame.removeEventListener("languageChanged", languageChanged); } private function replaceFn():String{ var _local2:String; _local2 = SpilGame.getString(arguments[1]); if (((!(_local2)) || ((_local2 == "")))){ return ((("{" + arguments[1]) + "}")); }; return (_local2); } private function added(_arg1:Event=null):void{ SpilGame.addEventListener("languageChanged", languageChanged, false, 0, true); } } }//package spill.localisation
Section 299
//PortalGroup (spill.localisation.PortalGroup) package spill.localisation { public class PortalGroup { public static const FAMILY:uint = 0; public static const NONE:uint = 4; public static const TEEN:uint = 3; public static const TWEEN:uint = 1; public static const GIRL:uint = 2; } }//package spill.localisation
Section 300
//spil_internal (spill.localisation.spil_internal) package spill.localisation { public namespace spil_internal = "spill.localisation"; }//package spill.localisation
Section 301
//SpilGame (spill.localisation.SpilGame) package spill.localisation { import flash.events.*; import flash.display.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.system.*; import flash.external.*; public class SpilGame { private static const cookiePath:String = "/"; private static const cookieLanguageVar:String = "savedLang"; public static const LANGUAGE_CHANGED:String = "languageChanged"; private static const cookieName:String = "spilgames_language_v100"; public static const BRANDING_CHANGED:String = "brandingChanged"; private static var strings:Object = new Object(); public static var currentBranding:Brand; private static var contexMenuItem:ContextMenuItem; spil_internal static var gameName:String; spil_internal static var debugEmbedDomain:String = ""; spil_internal static var debugHostDomain:String = ""; private static var localDomains:Object = new Object(); spil_internal static var emailPage:String; private static var eventDispatcher:EventDispatcher; private static var _init:Boolean = false; public static var currentLanguage:Language; spil_internal static var portalGroup:uint; public static function getSpilCompanyLink():String{ if (currentLanguage.name == "cn"){ return ("http://www.game.com.cn/downloads/"); }; return ("http://www.gameportal.net"); } public static function getString(_arg1:String):String{ var _local2:Object; _local2 = strings[_arg1]; if (_local2){ if (currentLanguage.textLanguage){ return (_local2[currentLanguage.textLanguage]); }; return (_local2[currentLanguage.name]); //unresolved jump }; return (""); } public static function traceAllBrands():void{ trace(outputAllBrands()); } public static function initialize(_arg1:String, _arg2:int, _arg3:String, _arg4:Sprite):void{ if (_init){ trace("ERROR: LocalisationManager already initialised"); return; }; _init = true; localDomains["localhost"] = true; localDomains["www8.agame.com"] = true; localDomains["gamedev.dev.spilgames.com"] = true; Brandings.initialize(); Languages.initialize(); initContexMenu(_arg4); gameName = _arg1.replace(" ", "_"); portalGroup = _arg2; emailPage = _arg3; chooseLanguage(); setBrandingFromLanguage(); } private static function get isExternal():Boolean{ return (((!(Brandings.hasDomain(embedDomain))) && (!(localDomains[embedDomain])))); } private static function initContexMenu(_arg1:Sprite):void{ contexMenuItem = new ContextMenuItem(""); _arg1.contextMenu = new ContextMenu(); _arg1.contextMenu.customItems.push(contexMenuItem); contexMenuItem.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT, contexMenuClicked); } private static function replaceFn():String{ var _local2:String; _local2 = SpilGame.getString(arguments[1]); if (((!(_local2)) || ((_local2 == "")))){ return ((("{" + arguments[1]) + "}")); }; return (_local2); } private static function contexMenuClicked(_arg1:ContextMenuEvent):void{ navigateToURL(new URLRequest(getMoreGamesLink("Contex_Menu"))); } public static function initTextField(_arg1:TextField):void{ var _local2:TextFormat; trace(_arg1.text); _arg1.text = _arg1.text.replace(/{([^{}]*)}/g, replaceFn); trace(_arg1.text); _arg1.embedFonts = currentLanguage.embedFonts; if (currentLanguage.forceFont != ""){ _local2 = new TextFormat(); _local2.font = currentLanguage.forceFont; _arg1.setTextFormat(_local2); }; } spil_internal static function get hostingDomain():String{ var _local1:LocalConnection; if (debugHostDomain != ""){ return (debugHostDomain); }; _local1 = new LocalConnection(); return (_local1.domain); } spil_internal static function chooseLanguage():void{ if (cookieLanguage != null){ currentLanguage = cookieLanguage; } else { if (isExternal){ currentLanguage = systemLanguage; } else { currentLanguage = portalLanguage; if (!currentLanguage){ currentLanguage = systemLanguage; }; }; }; if (!currentLanguage){ trace("Unable to determine language, using 'English US'"); currentLanguage = Languages.getLanguage("en_us"); }; TextFieldFit.embedFonts = currentLanguage.embedFonts; TextFieldFit.forceFont = currentLanguage.forceFont; dispatchEvent(new Event(LANGUAGE_CHANGED)); } public static function importXMLv2(_arg1:XML):void{ var _local2:XML; var _local3:Object; var _local4:XML; for each (_local2 in _arg1.children()) { _local3 = (strings[_local2.attribute("identifier")] = new Object()); for each (_local4 in _local2.children()) { if (_local4.children().length() > 0){ _local3[_local4.name()] = _local4.children()[0].toString(); } else { _local3[_local4.name()] = ""; }; }; }; } spil_internal static function changeLanguage(_arg1:String):void{ var _local2:Language; _local2 = Languages.getLanguage(_arg1); if (!_local2){ trace("ERROR: Supplied language string does not have a matching language"); } else { cookieLanguage = _local2; currentLanguage = _local2; }; TextFieldFit.embedFonts = currentLanguage.embedFonts; TextFieldFit.forceFont = currentLanguage.forceFont; setBrandingFromLanguage(); dispatchEvent(new Event(LANGUAGE_CHANGED)); } public static function getSendToFriendLink():String{ return (currentBranding.getSendToFriendLink(gameName, emailPage, isExternal, embedDomain)); } public static function importXML(_arg1:XML):void{ var _local2:XML; var _local3:Object; var _local4:XML; for each (_local2 in _arg1.children()) { _local3 = (strings[_local2.identifier] = new Object()); for each (_local4 in _local2.children()) { _local3[_local4.name()] = _local4.children()[0].toString(); }; }; } spil_internal static function get systemLanguage():Language{ return (Languages.getLanguage(Capabilities.language)); } spil_internal static function set cookieLanguage(_arg1:Language):void{ var _local2:SharedObject; _local2 = SharedObject.getLocal(cookieName, cookiePath); if (_arg1 == null){ _local2.data[cookieLanguageVar] = null; } else { _local2.data[cookieLanguageVar] = _arg1.name; }; _local2.flush(); } spil_internal static function dispatchEvent(_arg1:Event):void{ if (!eventDispatcher){ eventDispatcher = new EventDispatcher(); }; eventDispatcher.dispatchEvent(_arg1); } private static function getDomain(_arg1:String):String{ var _local2:String; var _local3:uint; if (_arg1.indexOf("file") == 0){ return ("localhost"); }; _local2 = new String(); _local3 = 7; while (_local3 < _arg1.length) { if (_arg1.charAt(_local3) == "/"){ break; }; _local2 = (_local2 + _arg1.charAt(_local3)); _local3++; }; return (_local2); } spil_internal static function setBrandingFromLanguage():void{ var _local1:Brand; var _local2:uint; if (!isExternal){ _local1 = Brandings.getBrandByDomain(embedDomain); if (_local1){ if (currentLanguage.name == _local1.preferedLanguage){ currentBranding = _local1; } else { _local2 = 0; if (_local1.portalGroup == PortalGroup.NONE){ _local2 = portalGroup; } else { _local2 = _local1.portalGroup; }; currentBranding = Brandings.getBrandByDomain(currentLanguage.portal_groups[_local2]); }; } else { currentBranding = Brandings.getBrandByDomain(currentLanguage.portal_groups[portalGroup]); }; } else { currentBranding = Brandings.getBrandByDomain(currentLanguage.portal_groups[portalGroup]); }; if ((!(currentBranding) is Brand)){ currentBranding = Brandings.getBrandByDomain("www.agame.com"); }; contexMenuItem.caption = ("More Games: " + currentBranding.domain); dispatchEvent(new Event(BRANDING_CHANGED)); } public static function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{ if (!eventDispatcher){ eventDispatcher = new EventDispatcher(); }; eventDispatcher.removeEventListener(_arg1, _arg2, _arg3); } public static function outputAllBrands():String{ var _local1:Array; var _local2:String; var _local3:Brand; _local1 = Brandings.getBrandsArray(); _local2 = ""; for each (_local3 in _local1) { _local2 = (_local2 + (_local3.getSendToFriendLink(gameName, emailPage, isExternal, embedDomain) + "\n")); }; return (_local2); } public static function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{ if (!eventDispatcher){ eventDispatcher = new EventDispatcher(); }; eventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5); } public static function getMoreGamesLink(_arg1:String=""):String{ var _local2:String; _local2 = (embedDomain) ? embedDomain : hostingDomain; return (currentBranding.getMoreGamesLink(gameName, isExternal, _local2, _arg1)); } spil_internal static function get cookieLanguage():Language{ var _local1:SharedObject; var _local2:String; _local1 = SharedObject.getLocal(cookieName, cookiePath); _local2 = String(_local1.data[cookieLanguageVar]); return (Languages.getLanguage(_local2)); } private static function get portalLanguage():Language{ var _local1:Brand; var _local2:String; var _local3:Language; if (isExternal){ return (null); }; if (!embedDomain){ return (null); }; _local1 = Brandings.getBrandByDomain(embedDomain); if (!_local1){ return (null); }; _local2 = _local1.preferedLanguage; if (!_local2){ return (null); }; _local3 = Languages.getLanguage(_local2); if (!_local3){ return (null); }; return (_local3); } spil_internal static function get embedDomain():String{ var loc:String; if (debugEmbedDomain != ""){ return (debugEmbedDomain); }; if (ExternalInterface.available){ try { loc = ExternalInterface.call("window.location.href.toString"); if (((!((loc == ""))) && (!((loc == null))))){ trace(("embed domain = " + getDomain(loc))); return (getDomain(loc)); }; } catch(e:SecurityError) { trace(("Security Error connecting to external interface, error = " + e)); } catch(e:Error) { trace(("Error connecting to external interface, error = " + e)); }; }; return (null); } } }//package spill.localisation
Section 302
//SpilGamesLink (spill.localisation.SpilGamesLink) package spill.localisation { import flash.events.*; import flash.display.*; import flash.net.*; public class SpilGamesLink extends SimpleButton { public function SpilGamesLink(){ addEventListener(MouseEvent.CLICK, buttonClicked); } private function buttonClicked(_arg1:MouseEvent):void{ navigateToURL(new URLRequest(SpilGame.getSpilCompanyLink()), "_blank"); } } }//package spill.localisation
Section 303
//TextFieldFit (spill.localisation.TextFieldFit) package spill.localisation { import flash.events.*; import flash.display.*; import flash.text.*; import flash.filters.*; public class TextFieldFit extends MovieClip { protected var _text:String;// = "default" protected var _textSize:Number;// = 12 protected var _embedFonts:Boolean;// = true protected var _glowColor:uint;// = 0 private var h:Number; protected var _antiAliasType:String;// = "advanced" private var w:Number; protected var _useGlowFilter:Boolean;// = false protected var _hAlign:String;// = "left" protected var _textColor:uint;// = 0 protected var _glowStrength:Number;// = 5 protected var _glowBlur:Number;// = 3 private var field:TextField; protected var _gridFitType:String;// = "pixel" protected var _glowQuality:Number;// = 1 private var debugBounding:Sprite; protected var _multiline:Boolean;// = false protected var _font:String;// = "" protected var _underline:Boolean;// = false protected var _vAlign:String;// = "top" protected var _italic:Boolean;// = false protected var _bold:Boolean;// = false private var sizeChanged:Boolean;// = true private var embeddedFonts:Array; protected var _selectable:Boolean;// = false private var format:TextFormat; private var valid:Boolean;// = true private static const gutter:Number = 2; spil_internal static var embedFonts:Boolean = true; spil_internal static var forceAAType:String = null; spil_internal static var forceFont:String = null; public function TextFieldFit(){ var _local1:Number; var _local2:Number; sizeChanged = true; valid = true; _text = "default"; _textColor = 0; _textSize = 12; _multiline = false; _hAlign = "left"; _vAlign = "top"; _bold = false; _underline = false; _italic = false; _selectable = false; _font = ""; _embedFonts = true; _antiAliasType = "advanced"; _gridFitType = "pixel"; _useGlowFilter = false; _glowBlur = 3; _glowColor = 0; _glowStrength = 5; _glowQuality = 1; super(); _local1 = width; _local2 = height; if (numChildren > 0){ removeChildAt(0); }; if (!field){ field = new TextField(); addChild(field); }; field.border = false; field.background = false; field.type = TextFieldType.DYNAMIC; mouseEnabled = false; mouseChildren = false; format = new TextFormat(); embeddedFonts = Font.enumerateFonts(false); setSize(_local1, _local2); validate(); visible = false; if (stage){ addEventListener(Event.RENDER, init); stage.invalidate(); } else { init(); }; } private function resizeText(_arg1:Boolean=false):void{ if (!doesTextFit()){ format.size = Object((Number(format.size) - 1)); if (format.size <= 3){ trace("WARNING: Text resised to 3px, either an error occured or the text just wont fit"); return; }; field.setTextFormat(format); resizeText(true); } else { if (_arg1 == false){ while (doesTextFit()) { if (format.size <= textSize){ format.size = Object((Number(format.size) + 1)); field.setTextFormat(format); if (!doesTextFit()){ format.size = Object((Number(format.size) - 1)); field.setTextFormat(format); break; }; } else { break; }; }; }; }; } public function get italic():Boolean{ return (_italic); } public function get textColor():uint{ return (_textColor); } public function get vAlign():String{ return (_vAlign); } public function get useGlowFilter():Boolean{ return (_useGlowFilter); } public function get selectable():Boolean{ return (_selectable); } public function set italic(_arg1:Boolean):void{ _italic = _arg1; invalidate(); } public function set text(_arg1:String):void{ _text = _arg1; invalidate(); } public function set vAlign(_arg1:String):void{ _vAlign = _arg1; invalidate(); } public function get font():String{ return (_font); } public function set textColor(_arg1:uint):void{ _textColor = _arg1; invalidate(); } public function get antiAliasType():String{ return (_antiAliasType); } public function get bold():Boolean{ return (_bold); } public function set useGlowFilter(_arg1:Boolean):void{ _useGlowFilter = _arg1; invalidate(); } public function set font(_arg1:String):void{ _font = _arg1; invalidate(); } public function get embedFonts():Boolean{ return (_embedFonts); } public function set selectable(_arg1:Boolean):void{ _selectable = _arg1; invalidate(); } public function get multiline():Boolean{ return (_multiline); } public function get glowQuality():Number{ return (_glowQuality); } public function get gridFitType():String{ return (_gridFitType); } public function get underline():Boolean{ return (_underline); } public function get textSize():Number{ return (_textSize); } public function set antiAliasType(_arg1:String):void{ _antiAliasType = _arg1; invalidate(); } private function updateProperties():void{ var _local1:Boolean; var _local2:Font; field.text = _text; field.multiline = ((((_text.indexOf(" ") < 0)) && ((_text.length < 14)))) ? false : _multiline; field.wordWrap = field.multiline; field.selectable = _selectable; field.antiAliasType = (forceAAType) ? forceAAType : _antiAliasType; field.gridFitType = _gridFitType; embeddedFonts = Font.enumerateFonts(false); if (((((_embedFonts) && (!((_font == ""))))) && (TextFieldFit.embedFonts))){ _local1 = false; for each (_local2 in embeddedFonts) { if (_font == _local2.fontName){ _local1 = true; break; }; }; field.embedFonts = _local1; if (!_local1){ trace(((("WARNING: Embedded font '" + _font) + "' not found, disabling embedding of fonts, text = ") + _text)); }; } else { field.embedFonts = false; }; if (TextFieldFit.forceFont){ format.font = TextFieldFit.forceFont; } else { if (_font != ""){ format.font = _font; }; }; if (sizeChanged){ format.size = _textSize; }; format.color = _textColor; format.align = _hAlign; format.bold = _bold; format.italic = _italic; format.underline = _underline; format.leftMargin = 0; format.rightMargin = 0; field.setTextFormat(format); if (_useGlowFilter){ filters = [new GlowFilter(_glowColor, 1, _glowBlur, _glowBlur, _glowStrength, _glowQuality)]; } else { filters = []; }; } private function doesTextFit():Boolean{ if (((((field.textHeight + (gutter * 2)) > h)) || (((((field.textWidth + (gutter * 2)) > w)) && (!(multiline)))))){ return (false); }; return (true); } public function get glowStrength():Number{ return (_glowStrength); } public function set hAlign(_arg1:String):void{ _hAlign = _arg1; invalidate(); } private function init(_arg1:Event=null):void{ removeEventListener(Event.RENDER, init); updateProperties(); layoutText(); } public function set bold(_arg1:Boolean):void{ _bold = _arg1; invalidate(); } private function validate(_arg1:Event=null):void{ visible = true; updateProperties(); layoutText(); removeEventListener(Event.ENTER_FRAME, validate); valid = true; } public function get text():String{ return (_text); } public function set glowBlur(_arg1:Number):void{ _glowBlur = _arg1; invalidate(); } private function invalidate():void{ if (valid){ addEventListener(Event.ENTER_FRAME, validate); if (stage){ stage.invalidate(); }; valid = false; }; } public function set embedFonts(_arg1:Boolean):void{ _embedFonts = _arg1; invalidate(); } public function set multiline(_arg1:Boolean):void{ _multiline = _arg1; invalidate(); } public function set glowQuality(_arg1:Number):void{ _glowQuality = _arg1; invalidate(); } private function layoutText():void{ resizeText(); field.height = (field.textHeight + (gutter * 2)); if (vAlign == "top"){ field.y = 0; } else { if (vAlign == "middle"){ field.y = ((h - field.height) / 2); } else { if (vAlign == "bottom"){ field.y = (h - field.height); }; }; }; } public function get hAlign():String{ return (_hAlign); } public function setSize(_arg1:Number, _arg2:Number):void{ w = _arg1; h = _arg2; scaleX = (scaleY = 1); field.width = w; field.height = h; invalidate(); } public function set gridFitType(_arg1:String):void{ _gridFitType = _arg1; invalidate(); } public function set underline(_arg1:Boolean):void{ _underline = _arg1; invalidate(); } public function get glowBlur():Number{ return (_glowBlur); } public function set textSize(_arg1:Number):void{ _textSize = _arg1; sizeChanged = true; invalidate(); } public function set glowColor(_arg1:uint):void{ _glowColor = _arg1; invalidate(); } public function get glowColor():uint{ return (_glowColor); } public function set glowStrength(_arg1:Number):void{ _glowStrength = _arg1; invalidate(); } } }//package spill.localisation
Section 304
//spRoom (spill.physics.elements.spRoom) package spill.physics.elements { import spill.physics.*; import spill.physics.shapes.*; public class spRoom extends spElement { public var width:Number;// = 32 public var height:Number;// = 24 public var thickness:Number;// = 2 public var x:Number;// = 0 public var y:Number;// = 0 public var roomBody:spBody; public function spRoom(){ roomBody = new spBody(); addBody(roomBody); useGlobalDensity = false; density = 0; } override protected function initialize():void{ var _local1:Number = thickness; roomBody.addShape(new spRectangle((_local1 / 2), ((height / 2) + _local1), (-(_local1) / 2), (height / 2))); roomBody.addShape(new spRectangle((_local1 / 2), ((height / 2) + _local1), (width + (_local1 / 2)), (height / 2))); roomBody.addShape(new spRectangle(((width / 2) + _local1), (_local1 / 2), (width / 2), (height + (_local1 / 2)))); var _local2:spRectangle = new spRectangle(((width / 2) + _local1), (_local1 / 2), (width / 2), (-(_local1) / 2)); _local2.useParentFilter = false; _local2.filter.categoryBits = 0x0100; roomBody.addShape(_local2); } } }//package spill.physics.elements
Section 305
//spWorldEvent (spill.physics.events.spWorldEvent) package spill.physics.events { import flash.events.*; import spill.physics.*; public class spWorldEvent extends Event { public var world:spWorld; public var timeStep:Number; public var element:spElement; public static const BEFORE_STEP_PHYSICS:String = "beforeStepPhysics"; public static const AFTER_STEP_PHYSICS:String = "afterStepPhysics"; public static const ELEMENT_ADDED:String = "elementAdded"; public static const ELEMENT_REMOVED:String = "elementRemoved"; public function spWorldEvent(_arg1:String, _arg2:spWorld, _arg3:Number=0.033333, _arg4:spElement=null){ super(_arg1); world = _arg2; timeStep = _arg3; element = _arg4; } } }//package spill.physics.events
Section 306
//spCircle (spill.physics.shapes.spCircle) package spill.physics.shapes { import flash.display.*; import spill.physics.*; import Box2D.Common.Math.*; import Box2D.Collision.Shapes.*; public class spCircle extends spShape { public function spCircle(_arg1:Number=1, _arg2:Number=0, _arg3:Number=0){ var _local4:b2CircleDef = new b2CircleDef(); _local4.radius = _arg1; _local4.localPosition.Set(_arg2, _arg3); super(_local4); } public function get radius():Number{ return (b2CircleDef(def).radius); } public function get localPosition():b2Vec2{ return (b2CircleDef(def).localPosition); } public function set localPosition(_arg1:b2Vec2):void{ b2CircleDef(def).localPosition = _arg1; if (active){ $shapeChanged(); }; } public function set radius(_arg1:Number):void{ b2CircleDef(def).radius = _arg1; if (active){ $shapeChanged(); }; } public function drawShape(_arg1:Sprite, _arg2:Number, _arg3:b2Vec2=null):void{ var _local4:b2Vec2; _local4 = (_local4) ? _local4 : new b2Vec2(); _local4.Add(localPosition); _arg1.graphics.drawCircle((_local4.x * _arg2), (_local4.y * _arg2), (radius * _arg2)); } } }//package spill.physics.shapes
Section 307
//spRectangle (spill.physics.shapes.spRectangle) package spill.physics.shapes { import flash.display.*; import spill.physics.*; import Box2D.Common.Math.*; import Box2D.Collision.Shapes.*; public class spRectangle extends spShape { private var _height:Number;// = 1 private var _width:Number;// = 1 public function spRectangle(_arg1:Number=1, _arg2:Number=1, _arg3:Number=0, _arg4:Number=0, _arg5:Number=0){ var _local6:b2PolygonDef = new b2PolygonDef(); var _local7:b2Vec2 = new b2Vec2(); _local7.Set(_arg3, _arg4); _local6.SetAsOrientedBox(_arg1, _arg2, _local7, _arg5); super(_local6); } public function drawShape(_arg1:Sprite, _arg2:Number, _arg3:b2Vec2=null):void{ _arg3 = (_arg3) ? _arg3 : new b2Vec2(); var _local4:Array = b2PolygonDef(def).vertices; _arg1.graphics.moveTo((_local4[_local4.length].x + _arg3.x), (_local4[_local4.length].y + _arg3.y)); var _local5:int; while (_local5 < _local4.length) { _arg1.graphics.lineTo((_local4[_local5].x + _arg3.x), (_local4[_local5].y + _arg3.y)); _local5++; }; } } }//package spill.physics.shapes
Section 308
//sp_internal (spill.physics.sp_internal) package spill.physics { public namespace sp_internal = "spill.physics"; }//package spill.physics
Section 309
//spBody (spill.physics.spBody) package spill.physics { import flash.events.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Collision.Shapes.*; public class spBody extends EventDispatcher { public var name:String;// = "" public var useParentLinearDamping:Boolean; public var draggable:Boolean;// = true private var _shapes:Object; private var _world:spWorld; public var useParentDensity:Boolean; public var useParentRestitution:Boolean; private var _filter:b2FilterData; private var _angularVelocity:Number;// = 0 private var _active:Boolean;// = false public var mouseForceMultiplier:Number;// = 1 private var _density:Number;// = 1 private var _restitution:Number;// = 0.5 private var _linearDamping:Number;// = 0.1 public var useParentAngularDamping:Boolean; public var useParentFriction:Boolean; private var _id:Number;// = 0 private var _linearVelocity:b2Vec2; private var _def:b2BodyDef; sp_internal var _parent:spElement; private var _ref:b2Body; private var _friction:Number;// = 0.5 private var _angularDamping:Number;// = 0.1 public var useParentFilter:Boolean; private static var _idCounter:Number = 0; public function spBody(){ useParentFriction = spSettings.inheritProps; useParentRestitution = spSettings.inheritProps; useParentDensity = spSettings.inheritProps; useParentLinearDamping = spSettings.inheritProps; useParentAngularDamping = spSettings.inheritProps; useParentFilter = spSettings.inheritProps; _shapes = new Object(); super(); _id = _idCounter++; _def = new b2BodyDef(); _def.userData = this; _linearVelocity = new b2Vec2(); _linearVelocity.Set(0, 0); _filter = new b2FilterData(); } public function addShape(_arg1:spShape):void{ if (_shapes[_arg1.id] == null){ _shapes[_arg1.id] = _arg1; if (_active){ $addShape(_arg1); _ref.SetMassFromShapes(); }; } else { trace("WARNING: Attempted to add duplicate shape to body"); }; } public function get def():b2BodyDef{ return (_def); } public function get active():Boolean{ return (_active); } public function set angularDamping(_arg1:Number):void{ _def.angularDamping = _arg1; if (_active){ _ref.m_angularDamping = _arg1; }; } public function get linearDamping():Number{ return (_def.linearDamping); } public function set isBullet(_arg1:Boolean):void{ _def.isBullet = _arg1; if (_active){ _ref.SetBullet(_arg1); }; } function $addToWorld(_arg1:spWorld):void{ var _local2:spShape; if (!_active){ _world = _arg1; _ref = _arg1.ref.CreateBody(def); _active = true; for each (_local2 in _shapes) { $addShape(_local2); }; _ref.SetMassFromShapes(); _ref.m_linearVelocity = _linearVelocity; _ref.m_angularVelocity = _angularVelocity; } else { trace(("WARNING: attempted to add an already active body to world : " + this)); }; } private function $addShape(_arg1:spShape):void{ $setShapeProps(_arg1); _arg1.$addToBody(this); } public function get parent():spElement{ return (_parent); } public function get position():b2Vec2{ if (_active){ return (_ref.GetPosition()); }; return (_def.position); } private function $setShapeProps(_arg1:spShape):void{ if (_arg1.useParentDensity){ _arg1.density = _density; }; if (_arg1.useParentFriction){ _arg1.friction = _friction; }; if (_arg1.useParentRestitution){ _arg1.restitution = _restitution; }; if (_arg1.useParentFilter){ _arg1.filter = _filter.Copy(); }; } public function get id():Number{ return (_id); } public function set linearVelocity(_arg1:b2Vec2):void{ _linearVelocity = _arg1; if (_active){ ref.m_linearVelocity = _arg1; }; } public function set angularVelocity(_arg1:Number):void{ _angularVelocity = _arg1; if (_active){ _ref.m_angularVelocity = _arg1; }; } function $removeFromWorld(_arg1:spWorld):void{ var _local2:spShape; if (_active){ _arg1.ref.DestroyBody(_ref); for each (_local2 in _shapes) { _local2.$bodyDestroyed(); }; _def.position = _ref.GetPosition(); _def.angle = _ref.GetAngle(); _linearVelocity = _ref.GetLinearVelocity(); _angularVelocity = _ref.GetAngularVelocity(); _ref = null; _active = false; dispatchEvent(new Event("bodyDestroyed")); } else { trace(("WARNING: attempted to remove inactive body from world : " + this)); }; } public function set angle(_arg1:Number):void{ var _local2:spWorld; if (_active){ _local2 = _world; $removeFromWorld(_local2); _def.angle = _arg1; $addToWorld(_local2); } else { _def.angle = _arg1; }; } public function get isBullet():Boolean{ return (_def.isBullet); } public function get linearVelocity():b2Vec2{ if (_active){ return (ref.m_linearVelocity); }; return (_linearVelocity); } public function set density(_arg1:Number):void{ var _local2:spShape; _density = _arg1; if (_active){ for each (_local2 in _shapes) { if (_local2.useParentDensity){ _local2.density = _arg1; }; }; _ref.SetMassFromShapes(); }; } public function get angle():Number{ if (_active){ return (_ref.GetAngle()); }; return (_def.angle); } public function get angularDamping():Number{ return (_def.angularDamping); } public function set restitution(_arg1:Number):void{ var _local2:spShape; _restitution = _arg1; if (_active){ for each (_local2 in _shapes) { if (_local2.useParentRestitution){ _local2.restitution = _arg1; }; }; }; } public function set linearDamping(_arg1:Number):void{ _def.linearDamping = _arg1; if (_active){ _ref.m_linearDamping = _arg1; }; } public function get angularVelocity():Number{ if (_active){ return (ref.m_angularVelocity); }; return (_angularVelocity); } public function get ref():b2Body{ if (_active){ return (_ref); }; trace("WARNING: Attempted to access a reference of a non active body"); return (null); } public function get density():Number{ return (_density); } public function get restitution():Number{ return (_restitution); } public function getShapes():Boolean{ return (_shapes.concat()); } public function set filter(_arg1:b2FilterData):void{ var _local2:spShape; _filter = _arg1; for each (_local2 in _shapes) { if (_local2.useParentFilter){ _local2.filter = _arg1; }; }; } public function refilter():void{ var _local1:spShape; if (_active){ for each (_local1 in _shapes) { if (_local1.useParentFilter){ _local1.filter = filter; }; _world.ref.Refilter(_local1.ref); }; }; } public function get filter():b2FilterData{ return (_filter); } public function get friction():Number{ return (_friction); } public function set friction(_arg1:Number):void{ var _local2:spShape; _friction = _arg1; if (_active){ for each (_local2 in _shapes) { if (_local2.useParentFriction){ _local2.friction = _arg1; }; }; }; } public function removeShape(_arg1:spShape):void{ _arg1.$removeFromBody(this); delete _shapes[_arg1.id]; if (_active){ _ref.SetMassFromShapes(); }; } public function set position(_arg1:b2Vec2):void{ var _local2:spWorld; if (_active){ _local2 = _world; $removeFromWorld(_local2); _def.position = _arg1; $addToWorld(_local2); } else { _def.position = _arg1; }; } } }//package spill.physics
Section 310
//spCollisionListener (spill.physics.spCollisionListener) package spill.physics { import Box2D.Dynamics.*; import Box2D.Collision.*; import Box2D.Dynamics.Contacts.*; public class spCollisionListener extends b2ContactListener { public var minImpulse:Number;// = 50 override public function Add(_arg1:b2ContactPoint):void{ var _local2:spShape = spShape(_arg1.shape1.GetUserData()); var _local3:spShape = spShape(_arg1.shape2.GetUserData()); _local2.parent.parent.onAddContact(_arg1, _local2, _local3); _local3.parent.parent.onAddContact(_arg1, _local3, _local2); } override public function Persist(_arg1:b2ContactPoint):void{ var _local2:spShape = spShape(_arg1.shape1.GetUserData()); var _local3:spShape = spShape(_arg1.shape2.GetUserData()); _local2.parent.parent.onPersistContact(_arg1, _local2, _local3); _local3.parent.parent.onPersistContact(_arg1, _local3, _local2); } override public function Remove(_arg1:b2ContactPoint):void{ var _local2:spShape = spShape(_arg1.shape1.GetUserData()); var _local3:spShape = spShape(_arg1.shape2.GetUserData()); _local2.parent.parent.onRemoveContact(_arg1, _local2, _local3); _local3.parent.parent.onRemoveContact(_arg1, _local3, _local2); } override public function Result(_arg1:b2ContactResult):void{ var _local2:spShape = spShape(_arg1.shape1.GetUserData()); var _local3:spShape = spShape(_arg1.shape2.GetUserData()); _local2.parent.parent.onResultContact(_arg1, _local2, _local3); _local3.parent.parent.onResultContact(_arg1, _local3, _local2); } } }//package spill.physics
Section 311
//spDestructionListener (spill.physics.spDestructionListener) package spill.physics { import Box2D.Dynamics.*; import Box2D.Collision.Shapes.*; import Box2D.Dynamics.Joints.*; public class spDestructionListener extends b2DestructionListener { override public function SayGoodbyeShape(_arg1:b2Shape):void{ } override public function SayGoodbyeJoint(_arg1:b2Joint):void{ _arg1.GetUserData().$destroyed(); } } }//package spill.physics
Section 312
//spDisplay (spill.physics.spDisplay) package spill.physics { import flash.events.*; import flash.display.*; import spill.physics.events.*; import Box2D.Dynamics.*; public dynamic class spDisplay extends MovieClip { public var drawScale:Number;// = 20 private var _debugDrawEnabled:Boolean;// = true public var dbgDraw:b2DebugDraw; public var world:spWorld; public function spDisplay(_arg1:spWorld){ world = _arg1; world.addEventListener("renderWorld", render, false, 0, true); world.addEventListener(spWorldEvent.ELEMENT_ADDED, elementAdded, false, 0, true); world.addEventListener(spWorldEvent.ELEMENT_REMOVED, elementRemoved, false, 0, true); dbgDraw = new b2DebugDraw(); dbgDraw.m_sprite = this; dbgDraw.m_drawScale = drawScale; dbgDraw.m_fillAlpha = 0; dbgDraw.m_lineThickness = 0.1; dbgDraw.m_drawFlags = 3; } public function destroy():void{ world.removeEventListener("renderWorld", render, false); world.removeEventListener(spWorldEvent.ELEMENT_ADDED, elementAdded, false); world.removeEventListener(spWorldEvent.ELEMENT_REMOVED, elementRemoved, false); world = null; dbgDraw = null; } public function set debugLayer(_arg1:Sprite):void{ dbgDraw.m_sprite = _arg1; } public function get debugDrawEnabled():Boolean{ return (_debugDrawEnabled); } public function elementRemoved(_arg1:spWorldEvent):void{ _arg1.element.$removeFromDisplay(this); } public function set debugDrawEnabled(_arg1:Boolean):void{ _debugDrawEnabled = _arg1; if (_arg1){ world.ref.SetDebugDraw(dbgDraw); dbgDraw.m_drawScale = drawScale; } else { world.ref.SetDebugDraw(null); dbgDraw.m_sprite.graphics.clear(); }; dbgDraw.m_sprite.visible = _arg1; } public function render(_arg1:Event):void{ dispatchEvent(new spWorldEvent("renderWorld", world, world.timeStep, null)); } public function elementAdded(_arg1:spWorldEvent):void{ _arg1.element.$addToDisplay(this); } } }//package spill.physics
Section 313
//spElement (spill.physics.spElement) package spill.physics { import flash.events.*; import Box2D.Collision.*; import Box2D.Dynamics.Contacts.*; import Box2D.Collision.Shapes.*; public class spElement extends EventDispatcher { public var useGlobalRestitution:Boolean; public var name:String;// = "" private var _world:spWorld; private var _initialized:Boolean;// = false private var _filter:b2FilterData; private var _linearDamping:Number;// = 0.1 public var useGlobalFriction:Boolean; private var _active:Boolean;// = false private var _density:Number;// = 1 private var _restitution:Number;// = 0.5 private var _id:int; public var type:String;// = "" public var useGlobalLinearDamping:Boolean; private var _joints:Object; private var _friction:Number;// = 0.5 private var _angularDamping:Number;// = 0.1 private var _numBodies:Number;// = 0 public var useGlobalAngularDamping:Boolean; private var _bodies:Object; public var useGlobalDensity:Boolean; private static var _idCounter:int = 0; public function spElement(){ useGlobalFriction = spSettings.inheritProps; useGlobalRestitution = spSettings.inheritProps; useGlobalDensity = spSettings.inheritProps; useGlobalLinearDamping = spSettings.inheritProps; useGlobalAngularDamping = spSettings.inheritProps; _bodies = new Object(); _joints = new Object(); super(); _id = _idCounter++; _filter = new b2FilterData(); } public function get friction():Number{ return (_friction); } protected function stop():void{ } public function set friction(_arg1:Number):void{ var _local2:spBody; _friction = _arg1; if (_active){ for each (_local2 in _bodies) { if (_local2.useParentFriction){ _local2.friction = _arg1; }; }; }; } public function onAddContact(_arg1:b2ContactPoint, _arg2:spShape, _arg3:spShape):void{ } public function get active():Boolean{ return (_active); } public function set angularDamping(_arg1:Number):void{ var _local2:spBody; _angularDamping = _arg1; if (_active){ for each (_local2 in _bodies) { if (_local2.useParentAngularDamping){ _local2.angularDamping = _arg1; }; }; }; } public function get world():spWorld{ return (_world); } protected function removeFromDisplay(_arg1:spDisplay):void{ } final sp_internal function $addToWorld(_arg1:spWorld):void{ var _local2:spBody; var _local3:spJoint; if (!_active){ _world = _arg1; if (!_initialized){ initialize(); _initialized = false; }; for each (_local2 in _bodies) { $setBodyProps(_local2); _local2.$addToWorld(world); }; for each (_local3 in _joints) { _local3.$addToWorld(world); }; _active = true; addToWorld(_arg1); } else { trace(("WARNING: attempted to add an already active element to world : " + this)); }; } public function get id():Number{ return (_id); } public function get linearDamping():Number{ return (_linearDamping); } protected function initialize():void{ } public function mouseRelease(_arg1:spBody):void{ } protected function addToDisplay(_arg1:spDisplay):void{ } sp_internal function $stop():void{ stop(); } public function getBodies():Object{ return (_bodies); } public function getJoints():Object{ return (_joints); } final sp_internal function $removeFromWorld(_arg1:spWorld):void{ var _local2:spBody; var _local3:spJoint; if (_active){ for each (_local2 in _bodies) { _local2.$removeFromWorld(_arg1); }; for each (_local3 in _joints) { _local3.$removeFromWorld(_arg1); }; _world = null; _active = false; removeFromWorld(_arg1); } else { trace(("WARNING: attempted to remove inactive element from world : " + this)); }; } public function removeBody(_arg1:spBody):void{ if (_bodies[_arg1.id] == null){ trace((((("WARNING: attempted to remove body " + _arg1) + " from ") + this) + " that is not part of the Element")); } else { _numBodies--; if (_active){ _arg1.$removeFromWorld(world); }; delete _bodies[_arg1.id]; _arg1._parent = null; }; } public function get angularDamping():Number{ return (_angularDamping); } public function set linearDamping(_arg1:Number):void{ var _local2:spBody; _linearDamping = _arg1; if (_active){ for each (_local2 in _bodies) { if (_local2.useParentLinearDamping){ _local2.linearDamping = _arg1; }; }; }; } sp_internal function $start():void{ start(); } private function $setBodyProps(_arg1:spBody):void{ if (_arg1.useParentFriction){ _arg1.friction = _friction; }; if (_arg1.useParentRestitution){ _arg1.restitution = _restitution; }; if (_arg1.useParentDensity){ _arg1.density = _density; }; if (_arg1.useParentLinearDamping){ _arg1.linearDamping = _linearDamping; }; if (_arg1.useParentAngularDamping){ _arg1.angularDamping = _angularDamping; }; if (_arg1.useParentFilter){ _arg1.filter = _filter.Copy(); }; } sp_internal function $addToDisplay(_arg1:spDisplay):void{ addToDisplay(_arg1); } public function set density(_arg1:Number):void{ var _local2:spBody; _density = _arg1; if (_active){ for each (_local2 in _bodies) { if (_local2.useParentDensity){ _local2.density = _arg1; }; }; }; } public function set restitution(_arg1:Number):void{ var _local2:spBody; _restitution = _arg1; if (_active){ for each (_local2 in _bodies) { if (_local2.useParentRestitution){ _local2.restitution = _arg1; }; }; }; } public function onRemoveContact(_arg1:b2ContactPoint, _arg2:spShape, _arg3:spShape):void{ } protected function start():void{ } public function addBody(_arg1:spBody):void{ if (_bodies[_arg1.id] != null){ trace(((("WARNING: attempted to add a duplicate body " + _arg1) + " to ") + this)); } else { _numBodies++; _bodies[_arg1.id] = _arg1; _arg1._parent = this; $setBodyProps(_arg1); if (_active){ _arg1.$addToWorld(world); }; }; } protected function removeFromWorld(_arg1:spWorld):void{ } public function get density():Number{ return (_density); } public function addJoint(_arg1:spJoint):void{ _arg1._parent = this; _joints[_arg1.id] = _arg1; if (_active){ _arg1.$addToWorld(world); }; } public function refilter():void{ var _local1:spBody; if (_active){ for each (_local1 in _bodies) { if (_local1.useParentFilter){ _local1.filter = filter; }; _local1.refilter(); }; }; } public function removeJoint(_arg1:spJoint):void{ _arg1._parent = null; if (_joints[_arg1.id] == null){ trace((((("WARNING: attempted to remove joint " + _arg1) + " from ") + this) + " that is not part of the Element")); } else { delete _joints[_arg1.id]; if (_active){ _arg1.$removeFromWorld(world); }; }; } sp_internal function $removeFromDisplay(_arg1:spDisplay):void{ removeFromDisplay(_arg1); } public function get restitution():Number{ return (_restitution); } public function onPersistContact(_arg1:b2ContactPoint, _arg2:spShape, _arg3:spShape):void{ } public function get numBodies():Number{ return (_numBodies); } protected function addToWorld(_arg1:spWorld):void{ } public function set filter(_arg1:b2FilterData):void{ var _local2:spBody; _filter = _arg1; for each (_local2 in _bodies) { if (_local2.useParentFilter){ _local2.filter = _arg1; }; }; } public function onResultContact(_arg1:b2ContactResult, _arg2:spShape, _arg3:spShape):void{ } public function mouseDrag(_arg1:spBody):void{ } public function destroy():void{ var _local1:spBody; var _local2:spJoint; for each (_local1 in _bodies) { removeBody(_local1); }; for each (_local2 in _joints) { removeJoint(_local2); }; _bodies = null; _joints = null; } public function get filter():b2FilterData{ return (_filter); } } }//package spill.physics
Section 314
//spJoint (spill.physics.spJoint) package spill.physics { import Box2D.Dynamics.Joints.*; public class spJoint { private var _active:Boolean;// = false protected var _def:b2JointDef; sp_internal var _parent:spElement; private var _ref:b2Joint; protected var world:spWorld; private var _id:Number; private static var _idCounter:Number = 0; public function spJoint():void{ _id = _idCounter++; } function $removeFromWorld(_arg1:spWorld):void{ if (_active){ _arg1.ref.DestroyJoint(_ref); _active = false; }; _parent = null; removeFromWorld(_arg1); } function $addToWorld(_arg1:spWorld):void{ if (_active){ trace(("WARNING: attempted to add an already active joint to world : " + this)); } else { world = _arg1; _active = true; initialise(world); _def.userData = this; _ref = world.ref.CreateJoint(_def); addToWorld(world); }; } public function get id():Number{ return (_id); } public function get ref():b2Joint{ return (_ref); } protected function removeFromWorld(_arg1:spWorld):void{ } public function get active():Boolean{ return (_active); } public function get parent():spElement{ return (_parent); } public function $destroyed():void{ _active = false; _parent.removeJoint(this); } protected function addToWorld(_arg1:spWorld):void{ } protected function initialise(_arg1:spWorld):void{ } } }//package spill.physics
Section 315
//spMouseControl (spill.physics.spMouseControl) package spill.physics { import flash.events.*; import flash.display.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Collision.*; import Box2D.Collision.Shapes.*; import Box2D.Dynamics.Joints.*; public class spMouseControl extends EventDispatcher { protected var display:spDisplay; protected var stage:Stage; private var _enabled:Boolean;// = false public var maxMouseForce:Number;// = 300 protected var mouseYWorldPhys:Number; protected var world:spWorld; private var mousePVec:b2Vec2; protected var isDragging:Boolean;// = false protected var mouseYWorld:Number; protected var mouseXWorldPhys:Number; protected var display_mc:Sprite; protected var m_mouseJoint:b2MouseJoint; public var maxMass:Number;// = 5 protected var mouseXWorld:Number; public function spMouseControl(_arg1:spWorld, _arg2:spDisplay){ mousePVec = new b2Vec2(); super(); world = _arg1; display = _arg2; stage = display.stage; enabled = true; } public function getBodyAtMouse(_arg1:Boolean=false, _arg2:Boolean=true):b2Body{ var _local9:b2Shape; var _local10:Boolean; mouseXWorldPhys = (display.mouseX / display.drawScale); mouseYWorldPhys = (display.mouseY / display.drawScale); mousePVec.Set(mouseXWorldPhys, mouseYWorldPhys); var _local3:b2AABB = new b2AABB(); _local3.lowerBound.Set((mouseXWorldPhys - 0.001), (mouseYWorldPhys - 0.001)); _local3.upperBound.Set((mouseXWorldPhys + 0.001), (mouseYWorldPhys + 0.001)); var _local4 = 10; var _local5:Array = new Array(); var _local6:int = world.ref.Query(_local3, _local5, _local4); var _local7:b2Body; var _local8:int; while (_local8 < _local6) { if ((((_local5[_local8].GetBody().IsStatic() == false)) || (_arg1))){ if (((_local5[_local8].GetBody().GetUserData().draggable) || (_arg2))){ _local9 = (_local5[_local8] as b2Shape); _local10 = (_local5[_local8] as b2Shape).TestPoint(_local9.GetBody().GetXForm(), mousePVec); if (_local10){ _local7 = _local9.GetBody(); break; }; }; }; _local8++; }; return (_local7); } public function get enabled():Boolean{ return (_enabled); } public function destroy():void{ enabled = false; stage = null; world = null; display_mc = null; display = null; } public function set enabled(_arg1:Boolean):void{ if (((!(_enabled)) && (_arg1))){ display.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown, true, 0, true); } else { if (((((_enabled) && (!(_arg1)))) && (!(isDragging)))){ display.removeEventListener(MouseEvent.MOUSE_DOWN, mouseDown, true); }; }; _enabled = _arg1; if (((isDragging) && (!(_arg1)))){ disconnect(); }; } protected function mouseMove(_arg1:MouseEvent=null):void{ var _local2:b2Vec2; if (isDragging){ mouseXWorld = display.mouseX; mouseYWorld = display.mouseY; mouseXWorldPhys = (mouseXWorld / display.drawScale); mouseYWorldPhys = (mouseYWorld / display.drawScale); _local2 = new b2Vec2(mouseXWorldPhys, mouseYWorldPhys); m_mouseJoint.SetTarget(_local2); dispatchEvent(new Event("dragging")); }; } public function disconnect(_arg1:Event=null, _arg2:Boolean=false):void{ var _local3:spBody; if (isDragging){ _local3 = spBody(m_mouseJoint.m_body2.GetUserData()); _local3.parent.mouseRelease(_local3); if (!_arg2){ world.ref.DestroyJoint(m_mouseJoint); }; m_mouseJoint.m_userData = null; m_mouseJoint = null; stage.removeEventListener(MouseEvent.MOUSE_MOVE, mouseMove); stage.removeEventListener(MouseEvent.MOUSE_UP, mouseUp); isDragging = false; dispatchEvent(new Event("stopDrag")); }; } protected function mouseDown(_arg1:MouseEvent):void{ var _local2:b2Body; var _local3:b2MouseJointDef; if (!isDragging){ _local2 = getBodyAtMouse(false, false); if (_local2){ if (_local2.GetUserData().draggable){ _arg1.stopPropagation(); stage.addEventListener(MouseEvent.MOUSE_MOVE, mouseMove, false, 0, true); stage.addEventListener(MouseEvent.MOUSE_UP, mouseUp, false, 0, true); _local2.GetUserData().parent.mouseDrag(spBody(_local2.GetUserData())); _local3 = new b2MouseJointDef(); _local3.frequencyHz = 1000; _local3.dampingRatio = 0.5; _local3.userData = this; _local3.body1 = world.ref.GetGroundBody(); _local3.body2 = _local2; _local3.target.Set(mouseXWorldPhys, mouseYWorldPhys); _local3.maxForce = ((maxMouseForce * Math.min(_local2.GetMass(), maxMass)) * _local2.GetUserData().mouseForceMultiplier); _local3.timeStep = world.timeStep; m_mouseJoint = (world.ref.CreateJoint(_local3) as b2MouseJoint); _local2.WakeUp(); isDragging = true; dispatchEvent(new Event("startDrag")); }; }; }; } protected function mouseUp(_arg1:MouseEvent):void{ disconnect(); } function $destroyed():void{ disconnect(null, true); } } }//package spill.physics
Section 316
//spSettings (spill.physics.spSettings) package spill.physics { import flash.display.*; public final class spSettings { public static var inheritProps:Boolean = true; public static function stopChildren(_arg1:MovieClip):void{ var _local3:MovieClip; _arg1.stop(); var _local2:int; while (_local2 < _arg1.numChildren) { if ((_arg1.getChildAt(_local2) is MovieClip)){ _local3 = MovieClip(_arg1.getChildAt(_local2)); _local3.stop(); stopChildren(_local3); }; _local2++; }; } public static function playChildren(_arg1:MovieClip):void{ var _local3:MovieClip; _arg1.play(); var _local2:int; while (_local2 < _arg1.numChildren) { if ((_arg1.getChildAt(_local2) is MovieClip)){ _local3 = MovieClip(_arg1.getChildAt(_local2)); _local3.play(); playChildren(_local3); }; _local2++; }; } public static function playMovieClip(_arg1:MovieClip, _arg2:Number):void{ if (!_arg1.$_init){ _arg1.$_init = true; _arg1.playheadPosition = _arg1.currentFrame; _arg1.stop(); }; _arg1.playheadPosition = (_arg1.playheadPosition + (30 * _arg2)); if (_arg1.playheadPosition > _arg1.totalFrames){ _arg1.playheadPosition = (_arg1.playheadPosition - _arg1.totalFrames); }; _arg1.gotoAndStop(Math.ceil(_arg1.playheadPosition)); } } }//package spill.physics
Section 317
//spShape (spill.physics.spShape) package spill.physics { import Box2D.Collision.Shapes.*; public class spShape { private var _def:b2ShapeDef; private var _parent:spBody; private var _ref:b2Shape; public var useParentDensity:Boolean; public var useParentRestitution:Boolean; private var _filter:b2FilterData; private var _friction:Number;// = 0.5 private var _active:Boolean;// = false public var useParentFilter:Boolean; private var _restitution:Number;// = 0.5 private var _density:Number;// = 1 public var useParentFriction:Boolean; private var _id:Number; private static var _idCounter:Number = 0; public function spShape(_arg1:b2ShapeDef=null){ useParentFriction = spSettings.inheritProps; useParentRestitution = spSettings.inheritProps; useParentDensity = spSettings.inheritProps; useParentFilter = spSettings.inheritProps; super(); _id = _idCounter++; if (_arg1 != null){ setDefinition(_arg1); }; _filter = new b2FilterData(); } function $bodyDestroyed():void{ _active = false; _parent = null; _ref = null; } public function set friction(_arg1:Number):void{ _def.friction = _arg1; _friction = _arg1; if (_active){ _ref.m_friction = _arg1; }; } public function get def():b2ShapeDef{ return (_def); } public function get active():Boolean{ return (_active); } public function set density(_arg1:Number):void{ _def.density = _arg1; _density = _arg1; if (_active){ _ref.m_density = _arg1; }; } public function get ref():b2Shape{ return (_ref); } public function setDefinition(_arg1:b2ShapeDef):void{ if (!_active){ _def = _arg1; _def.userData = this; } else { trace("WARNING: Attempted to set shape definition of an already active shape"); }; } function $addToBody(_arg1:spBody):void{ if (!_active){ if (_def != null){ _def.friction = _friction; _def.restitution = _restitution; _def.density = _density; _def.filter = _filter; _ref = _arg1.ref.CreateShape(_def); _active = true; _parent = _arg1; } else { trace("WARNING: Attempted to add shape without a definition to body."); }; } else { trace("WARNING: Attempted to add an already active shape to a body."); }; } public function set restitution(_arg1:Number):void{ _restitution = _arg1; _def.restitution = _arg1; if (_active){ _ref.m_restitution = _arg1; }; } public function get friction():Number{ return (_friction); } public function get id():Number{ return (_id); } public function get parent():spBody{ return (_parent); } public function get density():Number{ return (_density); } public function get restitution():Number{ return (_restitution); } protected function $shapeChanged():void{ var _local1:spBody; if (_active){ _local1 = _parent; $removeFromBody(_local1); $addToBody(_local1); _local1.ref.SetMassFromShapes(); }; } public function get filter():b2FilterData{ return (_filter); } function $removeFromBody(_arg1:spBody):void{ if (_active){ _arg1.ref.DestroyShape(_ref); _active = false; _parent = null; _ref = null; } else { trace("WARNING: Attempted to remove a non active shape from a body."); }; } public function set filter(_arg1:b2FilterData):void{ _def.filter = _arg1; _filter = _arg1; if (_active){ _ref.m_filter = _arg1; }; } } }//package spill.physics
Section 318
//spWorld (spill.physics.spWorld) package spill.physics { import flash.events.*; import spill.physics.events.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Collision.*; import Box2D.Collision.Shapes.*; import Box2D.Dynamics.Joints.*; import flash.utils.*; public class spWorld extends EventDispatcher { public var ref:b2World; private var _globalAngularDamping:Number;// = 0 public var iterations:int;// = 10 public var timeStep:Number;// = 0.0333333333333333 public var running:Boolean;// = false public var calcTime:Number;// = 0 private var timer:Timer; private var _globalDensity:Number;// = 1 private var _globalRestitution:Number;// = 0 public var display:spDisplay; private var fpsCounter:Number;// = 0 public var worldScale:Number;// = 20 private var _globalFriction:Number;// = 0.5 private var calcCounter:Number;// = 0 public var frameRate:Number;// = 0 public var elements:Object; private var _globalLinearDamping:Number;// = 0 public function spWorld():void{ elements = new Object(); super(); var _local1:b2AABB = new b2AABB(); _local1.lowerBound.Set(-100, -100); _local1.upperBound.Set(100, 100); ref = new b2World(_local1, new b2Vec2(0, 10), true); timer = new Timer(1000); timer.addEventListener(TimerEvent.TIMER, fpsCounterEvent, false, 0, true); ref.SetContactListener(new spCollisionListener()); ref.SetDestructionListener(new spDestructionListener()); } public function set globalFriction(_arg1:Number):void{ var _local2:spElement; _globalFriction = _arg1; for each (_local2 in elements) { if (_local2.useGlobalFriction){ _local2.friction = _arg1; }; }; } public function stop():void{ var _local1:spElement; if (running){ display.removeEventListener(Event.ENTER_FRAME, update); running = false; timer.stop(); for each (_local1 in elements) { _local1.$stop(); }; } else { trace("WARNING: Attempted to stop world that was not running."); }; } public function set globalLinearDamping(_arg1:Number):void{ var _local2:spElement; _globalLinearDamping = _arg1; for each (_local2 in elements) { if (_local2.useGlobalLinearDamping){ _local2.linearDamping = _arg1; }; }; } public function set globalAngularDamping(_arg1:Number):void{ var _local2:spElement; _globalAngularDamping = _arg1; for each (_local2 in elements) { if (_local2.useGlobalAngularDamping){ _local2.angularDamping = _arg1; }; }; } private function fpsCounterEvent(_arg1:TimerEvent):void{ frameRate = fpsCounter; calcTime = Math.round((calcCounter / frameRate)); calcCounter = 0; fpsCounter = 0; } public function set globalRestitution(_arg1:Number):void{ var _local2:spElement; _globalRestitution = _arg1; for each (_local2 in elements) { if (_local2.useGlobalRestitution){ _local2.restitution = _arg1; }; }; } public function set globalDensity(_arg1:Number):void{ var _local2:spElement; _globalDensity = _arg1; for each (_local2 in elements) { if (_local2.useGlobalDensity){ _local2.density = _arg1; }; }; } private function _setElementProps(_arg1:spElement):void{ if (_arg1.useGlobalFriction){ _arg1.friction = _globalFriction; }; if (_arg1.useGlobalRestitution){ _arg1.restitution = _globalRestitution; }; if (_arg1.useGlobalDensity){ _arg1.density = _globalDensity; }; if (_arg1.useGlobalLinearDamping){ _arg1.linearDamping = _globalLinearDamping; }; if (_arg1.useGlobalAngularDamping){ _arg1.angularDamping = _globalAngularDamping; }; } public function addElement(_arg1:spElement):void{ if (elements[_arg1.id] == null){ elements[_arg1.id] = _arg1; _setElementProps(_arg1); _arg1.$addToWorld(this); dispatchEvent(new spWorldEvent("elementAdded", this, timeStep, _arg1)); } else { trace(((("WARNING: attempted to add a duplicate element " + _arg1) + " to ") + this)); }; } public function set gravity(_arg1:b2Vec2):void{ ref.m_gravity = _arg1; } public function get globalLinearDamping():Number{ return (_globalLinearDamping); } public function get globalFriction():Number{ return (_globalFriction); } public function testSegment(_arg1:b2Vec2, _arg2:b2Vec2, _arg3:b2Vec2=null, _arg4:Array=null):Number{ var _local8:b2Segment; var _local9:Number; var _local10:Array; var _local11:int; var _local12:b2Shape; var _local13:b2XForm; var _local14:b2Vec2; var _local5:b2AABB = new b2AABB(); _local5.lowerBound.x = (Math.min(_arg1.x, _arg2.x) - 1E-5); _local5.lowerBound.y = (Math.min(_arg1.y, _arg2.y) - 1E-5); _local5.upperBound.x = (Math.max(_arg1.x, _arg2.x) + 1E-5); _local5.upperBound.y = (Math.max(_arg1.y, _arg2.y) + 1E-5); var _local6:Array = new Array(); var _local7:int = ref.Query(_local5, _local6, 20); if (_local7 > 0){ if (!_arg3){ _arg3 = new b2Vec2(); }; if (!_arg4){ _arg4 = new Array(); }; _local8 = new b2Segment(); _local8.p1 = _arg1; _local8.p2 = _arg2; _local9 = 1; _local10 = new Array(); _local11 = 0; while (_local11 < _local6.length) { _local12 = b2Shape(_local6[_local11]); _local13 = _local12.GetBody().GetXForm(); _local14 = new b2Vec2(); if (_local12.TestSegment(_local13, _local10, _local14, _local8, 1)){ if (_local10[0] < _local9){ _local9 = _local10[0]; _arg4[0] = spShape(_local12.GetUserData()); _arg3.Set(_local14.x, _local14.y); }; }; _local11++; }; if (_local9 >= 1){ return (-1); }; return (_local9); }; return (-1); } public function get globalAngularDamping():Number{ return (_globalAngularDamping); } public function get globalRestitution():Number{ return (_globalRestitution); } public function get globalDensity():Number{ return (_globalDensity); } public function reset():void{ var _local1:spElement; for each (_local1 in elements) { removeElement(_local1); }; } private function update(_arg1:Event):void{ fpsCounter++; var _local2:Number = getTimer(); dispatchEvent(new spWorldEvent("beforeStep", this, timeStep)); ref.Step(timeStep, iterations); dispatchEvent(new spWorldEvent("afterStep", this, timeStep)); dispatchEvent(new spWorldEvent("renderWorld", this, timeStep)); calcCounter = (calcCounter + (getTimer() - _local2)); } public function get gravity():b2Vec2{ return (ref.m_gravity); } public function removeElement(_arg1:spElement):void{ if (elements[_arg1.id] != null){ delete elements[_arg1.id]; _arg1.$removeFromWorld(this); dispatchEvent(new spWorldEvent("elementRemoved", this, timeStep, _arg1)); } else { trace(((("WARNING: attempted to remove non existent element " + _arg1) + " from ") + this)); }; } public function start():void{ var _local1:spElement; if (!running){ display.addEventListener(Event.ENTER_FRAME, update, false, 0, true); running = true; timer.start(); for each (_local1 in elements) { _local1.$start(); }; } else { trace("WARNING: Attempted to start an already running world."); }; } public function getBodyAtPoint(_arg1:b2Vec2, _arg2:Boolean=false, _arg3:Boolean=true):b2Body{ var _local10:b2Shape; var _local11:Boolean; var _local4:b2AABB = new b2AABB(); _local4.lowerBound.Set((_arg1.x - 0.001), (_arg1.y - 0.001)); _local4.upperBound.Set((_arg1.x + 0.001), (_arg1.y + 0.001)); var _local5 = 10; var _local6:Array = new Array(); var _local7:int = ref.Query(_local4, _local6, _local5); var _local8:b2Body; var _local9:int; while (_local9 < _local7) { if ((((_local6[_local9].GetBody().IsStatic() == false)) || (_arg2))){ if (((_local6[_local9].GetBody().GetUserData().draggable) || (_arg3))){ _local10 = (_local6[_local9] as b2Shape); _local11 = (_local6[_local9] as b2Shape).TestPoint(_local10.GetBody().GetXForm(), _arg1); if (_local11){ _local8 = _local10.GetBody(); break; }; }; }; _local9++; }; return (_local8); } public function getElements(_arg1:String=""):Object{ return (elements); } public function destroy():void{ var _local1:spElement; for each (_local1 in elements) { _local1.destroy(); removeElement(_local1); }; if (running){ stop(); }; timer.removeEventListener(TimerEvent.TIMER, fpsCounterEvent, false); elements = null; display = null; ref = null; timer = null; } } }//package spill.physics
Section 319
//Teselator (spill.physics.Teselator) package spill.physics { import Box2D.Common.Math.*; import Box2D.Collision.Shapes.*; public class Teselator { private static function isGreater(_arg1:b2Vec2, _arg2:b2Vec2, _arg3:b2Vec2):Boolean{ var _local4:b2Vec2 = _arg2.Copy(); _local4.Subtract(_arg1); _local4.x = (_local4.x + ((_local4.x == 0)) ? 1E-6 : 0); var _local5:Number = (_local4.y / _local4.x); var _local6:Number = (_arg1.y - (_local5 * _arg1.x)); if (_local4.x > 0){ return ((_arg3.y > ((_local5 * _arg3.x) + _local6))); }; if (_local4.x < 0){ return ((_arg3.y < ((_local5 * _arg3.x) + _local6))); }; return (false); } private static function isConvex(_arg1:b2Vec2, _arg2:b2Vec2, _arg3:b2Vec2):Boolean{ var _local4:b2Vec2 = _arg2.Copy(); _local4.Subtract(_arg1); var _local5:b2Vec2 = _arg3.Copy(); _local5.Subtract(_arg2); if (_local4.x == 0){ _local4.x = 1E-7; }; if (_local5.x == 0){ _local5.x = 1E-7; }; var _local6:Number = (_local4.y / _local4.x); var _local7:Number = (_local5.y / _local5.x); if ((_local5.x * _local4.x) > 0){ return ((_local6 < _local7)); }; return ((_local6 > _local7)); } private static function getAngle(_arg1:b2Vec2, _arg2:b2Vec2, _arg3:b2Vec2):Number{ var _local4:b2Vec2 = _arg2.Copy(); _local4.Subtract(_arg1); var _local5:b2Vec2 = _arg3.Copy(); _local5.Subtract(_arg2); var _local6:Number = ((_local4.x * _local5.x) + (_local4.y * _local5.y)); var _local7:Number = Math.sqrt(((_local4.x * _local4.x) + (_local4.y * _local4.y))); var _local8:Number = Math.sqrt(((_local5.x * _local5.x) + (_local5.y * _local5.y))); var _local9:Number = Math.acos((_local6 / (_local7 * _local8))); if (_local6 < 0){ if (_local9 > 0){ _local9 = (_local9 + Math.PI); } else { _local9 = (_local9 - Math.PI); }; }; return (_local9); } public static function createBodyFromPoints(_arg1:Array):spBody{ var _local3:b2PolygonDef; var _local2:spBody = new spBody(); while ((_local3 = cutPoly(_arg1))) { _local2.addShape(new spShape(_local3)); }; return (_local2); } public static function optimiseShape(_arg1:Array):Array{ var _local3:b2Vec2; var _local4:b2Vec2; var _local5:b2Vec2; var _local6:b2Vec2; var _local2:int; while (_local2 < _arg1.length) { _local3 = _arg1[_local2]; _local4 = _arg1[((_local2 + 1) % _arg1.length)]; _local5 = _arg1[((_local2 + 2) % _arg1.length)]; _local6 = _local3.Copy(); _local6.Subtract(_local5); if (_local6.Length() > 2){ } else { if (getAngle(_local3, _local4, _local5) < 0.3){ _arg1.splice(((_local2 + 1) % _arg1.length), 1); _local2--; }; }; _local2++; }; return (_arg1); } private static function cutPoly(_arg1:Array):b2PolygonDef{ var _local3:Number; var _local4:Number; var _local9:b2Vec2; var _local10:b2Vec2; var _local11:b2Vec2; var _local12:b2Vec2; var _local13:b2Vec2; var _local14:Number; var _local15:int; var _local16:b2Vec2; var _local17:b2Vec2; var _local18:b2Vec2; var _local19:b2Vec2; var _local20:b2Vec2; var _local21:Number; var _local22:Number; var _local23:Number; var _local24:Array; var _local25:b2PolygonDef; var _local2:Number = _arg1.length; var _local5:Number = Number.POSITIVE_INFINITY; var _local6:Number = 0; var _local7:Boolean; var _local8:int; while (_local8 < _local2) { _local9 = _arg1[_local8]; _local10 = _arg1[((_local8 + 1) % _local2)]; _local11 = _arg1[((_local8 + 2) % _local2)]; if (isConvex(_local9, _local10, _local11)){ _local12 = _local10.Copy(); _local12.Subtract(_local9); _local13 = _local11.Copy(); _local13.Subtract(_local10); _local14 = _local12.Length(); _local15 = _local8; while (_local15 < (_local8 + 7)) { _local16 = _arg1[(_local15 % _local2)]; _local17 = _arg1[((_local15 + 1) % _local2)]; _local18 = _arg1[((_local15 + 2) % _local2)]; if (((((((isConvex(_local16, _local17, _local18)) && (isConvex(_local17, _local18, _local9)))) && (isConvex(_local18, _local9, _local10)))) && (!(contains(_local9, _local17, _local18, _arg1))))){ _local19 = _local18.Copy(); _local19.Subtract(_local17); _local14 = (_local14 + _local19.Length()); _local20 = _local9.Copy(); _local20.Subtract(_local18); _local21 = _local20.Length(); _local22 = (_local21 / _local14); if (_local22 < _local5){ _local5 = _local22; _local6 = ((_local15 - _local8) + 1); _local3 = _local8; _local4 = ((_local15 + 2) % _local2); _local7 = true; }; } else { _local15 = (_local8 + 7); }; _local15++; }; }; _local8++; }; if (_local7){ _local23 = _arg1.length; if (_local4 > _local3){ _local24 = _arg1.slice(_local3, (_local4 + 1)); _arg1.splice((_local3 + 1), ((_local4 - _local3) - 1)); } else { _local24 = _arg1.slice(_local3, _local2); _local24 = _local24.concat(_arg1.slice(0, (_local4 + 1))); _arg1.splice((_local3 + 1), (_local2 - _local3)); _arg1.splice(0, _local4); }; _local25 = new b2PolygonDef(); _local25.vertexCount = _local24.length; _local25.vertices = _local24; return (_local25); //unresolved jump }; return (null); } private static function contains(_arg1:b2Vec2, _arg2:b2Vec2, _arg3:b2Vec2, _arg4:Array):Boolean{ var _local6:b2Vec2; var _local5:int; while (_local5 < _arg4.length) { _local6 = _arg4[_local5]; if (((((!((_local6 == _arg1))) && (!((_local6 == _arg2))))) && (!((_local6 == _arg3))))){ if (((((isGreater(_arg1, _arg2, _local6)) && (isGreater(_arg2, _arg3, _local6)))) && (isGreater(_arg3, _arg1, _local6)))){ return (true); }; }; _local5++; }; return (false); } } }//package spill.physics
Section 320
//ArmJoint (spill.slammings.character.ArmJoint) package spill.slammings.character { import spill.physics.*; import Box2D.Common.Math.*; import Box2D.Dynamics.Joints.*; public class ArmJoint extends spJoint { private var _active:Boolean;// = false public var body1:spBody; public var body2:spBody; public var anchor:b2Vec2; public function ArmJoint(_arg1:spBody, _arg2:spBody, _arg3:b2Vec2){ def = new b2RevoluteJointDef(); def.userData = this; body1 = _arg1; body2 = _arg2; anchor = _arg3; } public function get def():b2RevoluteJointDef{ return ((_def as b2RevoluteJointDef)); } public function set def(_arg1:b2RevoluteJointDef):void{ _def = _arg1; } override protected function initialise(_arg1:spWorld):void{ def.Initialize(body1.ref, (body2) ? body2.ref : _arg1.ref.GetGroundBody(), anchor); } } }//package spill.slammings.character
Section 321
//FlyingSlamming (spill.slammings.character.FlyingSlamming) package spill.slammings.character { import spill.physics.events.*; public class FlyingSlamming extends Slamming { private var flying:Boolean;// = false public function FlyingSlamming(){ canFly = true; super(); jumpSpeed = 20; size = 0; } override protected function beforeStepAlive(_arg1:spWorldEvent):void{ super.beforeStepAlive(_arg1); if (((((!(walking)) && (!(drowning)))) && ((slammingBody.linearVelocity.y > 3)))){ fly(); if (!flying){ flying = true; jumping = true; setSlammingGraphic(); }; } else { flying = false; }; } override protected function setSlammingGraphic():void{ super.setSlammingGraphic(); body_mc.wings_normal.visible = ((!(flying)) && (!(dead))); body_mc.wings_flying.visible = ((flying) && (!(dead))); } private function fly():void{ var _local1:Number = (slammingBody.linearVelocity.y * 0.25); slammingBody.linearVelocity.y = (slammingBody.linearVelocity.y - _local1); if (slammingBody.linearVelocity.y <= 3){ slammingBody.linearVelocity.y = 3.1; }; slammingBody.linearVelocity.x = (slammingBody.linearVelocity.x + _local1); slammingBody.linearVelocity.x = (slammingBody.linearVelocity.x * 0.9); var _local2:Number = (bodyAngle - (Math.PI / 2)); while (_local2 < -(Math.PI)) { _local2 = (_local2 + (Math.PI * 2)); }; while (_local2 > Math.PI) { _local2 = (_local2 - (Math.PI * 2)); }; slammingBody.ref.m_angularVelocity = -(_local2); removeArm(); } } }//package spill.slammings.character
Section 322
//LegJoint (spill.slammings.character.LegJoint) package spill.slammings.character { import spill.physics.*; import Box2D.Common.Math.*; import Box2D.Dynamics.Joints.*; public class LegJoint extends spJoint { private var _active:Boolean;// = false public var body1:spBody; public var body2:spBody; public var anchor:b2Vec2; public function LegJoint(_arg1:spBody, _arg2:spBody, _arg3:b2Vec2){ def = new b2RevoluteJointDef(); def.userData = this; def.lowerAngle = (-20 * (Math.PI / 180)); def.upperAngle = (20 * (Math.PI / 180)); def.enableLimit = true; body1 = _arg1; body2 = _arg2; anchor = _arg3; } public function get def():b2RevoluteJointDef{ return ((_def as b2RevoluteJointDef)); } public function set def(_arg1:b2RevoluteJointDef):void{ _def = _arg1; } override protected function initialise(_arg1:spWorld):void{ def.Initialize(body1.ref, body2.ref, anchor); } } }//package spill.slammings.character
Section 323
//Level1Boss (spill.slammings.character.Level1Boss) package spill.slammings.character { public class Level1Boss extends SlammingBoss { override protected function init():void{ scale = (1.8 * 0.8); graphicsScale = 0.8; scaleGraphics = true; jumpOutOfWaterSpeed = 12; cut_mc_class_1 = Boss1_cut1; cut_mc_class_2 = Boss1_cut2; body_mc_class = Boss_1; foot_mc_class = Boss1_feet; arm_mc_class = Boss1_arm; livesLost = 2; super.init(); } } }//package spill.slammings.character
Section 324
//Level2Boss (spill.slammings.character.Level2Boss) package spill.slammings.character { public class Level2Boss extends SlammingBoss { override protected function init():void{ scale = (1.8 * 0.85); graphicsScale = 0.85; scaleGraphics = true; jumpOutOfWaterSpeed = 12; cut_mc_class_1 = Boss2_cut1; cut_mc_class_2 = Boss2_cut2; body_mc_class = Boss_2; foot_mc_class = Boss1_feet; arm_mc_class = Boss1_arm; livesLost = 3; super.init(); } } }//package spill.slammings.character
Section 325
//Level3Boss (spill.slammings.character.Level3Boss) package spill.slammings.character { public class Level3Boss extends SlammingBoss { override protected function init():void{ scale = (1.8 * 0.9); graphicsScale = 0.9; scaleGraphics = true; cut_mc_class_1 = Boss3_cut1; cut_mc_class_2 = Boss3_cut2; body_mc_class = Boss_3; foot_mc_class = Boss1_feet; arm_mc_class = Boss1_arm; livesLost = 4; super.init(); } } }//package spill.slammings.character
Section 326
//Level4Boss (spill.slammings.character.Level4Boss) package spill.slammings.character { public class Level4Boss extends SlammingBoss { override protected function init():void{ scale = (1.8 * 0.95); graphicsScale = 0.95; scaleGraphics = true; cut_mc_class_1 = Boss4_cut1; cut_mc_class_2 = Boss4_cut2; body_mc_class = Boss_4; foot_mc_class = Boss1_feet; arm_mc_class = Boss1_arm; livesLost = 5; super.init(); } } }//package spill.slammings.character
Section 327
//Level5Boss (spill.slammings.character.Level5Boss) package spill.slammings.character { public class Level5Boss extends SlammingBoss { override protected function init():void{ scale = 1.8; graphicsScale = 1; scaleGraphics = true; cut_mc_class_1 = Boss5_cut1; cut_mc_class_2 = Boss5_cut2; body_mc_class = Boss_5; foot_mc_class = Boss1_feet; arm_mc_class = Boss1_arm; livesLost = 6; super.init(); } } }//package spill.slammings.character
Section 328
//LittleSlamming (spill.slammings.character.LittleSlamming) package spill.slammings.character { public class LittleSlamming extends Slamming { override protected function init():void{ scale = 0.7; graphicsScale = 0.7; scaleGraphics = true; maxSpeed = 6; armor = (armor * (scale * scale)); maxHealth = (maxHealth * (scale * scale)); super.init(); slammingBody.mouseForceMultiplier = 0.8; walkForceLinear = (walkForceLinear * 2); walkForceAngular = (walkForceAngular * 2); size = 0; } } }//package spill.slammings.character
Section 329
//Slamming (spill.slammings.character.Slamming) package spill.slammings.character { import flash.events.*; import flash.display.*; import spill.slammings.*; import spill.physics.*; import spill.physics.events.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; import spill.slammings.display.*; import flash.media.*; import Box2D.Collision.*; import Box2D.Dynamics.Contacts.*; import Box2D.Collision.Shapes.*; import flash.filters.*; import spill.slammings.sound.*; import flash.utils.*; import spill.physics.shapes.*; public class Slamming extends spElement { public var size:Number;// = 1 private var rightFootJoint:LegJoint; protected var arm_mc_class:Class; private var walkNormal:b2Vec2; private var walkPosition:b2Vec2; private var body_scared:MovieClip; private var armBody:spBody; private var headContact:Boolean;// = false protected var foot_mc_class:Class; private var bodyAngleOffset:Number;// = 0 private var body_normal:MovieClip; private var wasWalking:Boolean;// = false public var bodyAngle:Number;// = 0 private var leftFootBody:spBody; private var arm_mc:MovieClip; private var healthBarFadeDir:Number;// = 1 private var burnSoundChannel:SoundChannel; public var dead:Boolean;// = false public var walkForceLinear:Number;// = 40 private var slamming_cut2_body:spBody; private var leftFootJoint:LegJoint; private var lastDamageType:String;// = "" private var slamming_cut1_mc:MovieClip; private var tv:Number;// = 0 protected var canFly:Boolean;// = false private var walkAngle:Number;// = 0 public var radius:Number;// = 1.1 public var mouseOverFilters:Array; private var body_drowning:MovieClip; protected var drowning:Boolean;// = false private var circleShape:spCircle; private var decapitated:Boolean;// = false public var jumpSpeed:Number;// = 15 private var graphicDepth:Number;// = 0 private var healthBar_mc:MovieClip; private var display:WorldDisplay; private var body_angry:MovieClip; public var livesLost:Number;// = 1 private var healthBarFadeSpeed:Number;// = 0.03 protected var armJointPosition:b2Vec2; public var dragStopsWalking:Boolean;// = true public var maxHealth:Number;// = 500 private var body_dead:MovieClip; public var slammingBody:spBody; public var walkForceAngular:Number;// = 10 private var body_falling:MovieClip; private var restingBodies:Object; private var slamming_cut2_mc:MovieClip; protected var jumping:Boolean;// = false private var hasCustomFeet:Boolean;// = false private var leftFoot_mc:MovieClip; protected var isDragged:Boolean;// = false private var isMouseOver:Boolean;// = false public var mouseDownFilters:Array; private var currentGraphic:MovieClip; private var healthBarFading:Boolean;// = false public var armor:Number;// = 110 public var maxSpeed:Number;// = 1.6 public var scale:Number;// = 1 private var rightFoot_mc:MovieClip; protected var body_mc:MovieClip; private var drownSoundChannel:SoundChannel; private var healthBarFadeFn:Function; private var rightFootBody:spBody; private var _health:Number; public var graphicsScale:Number;// = 1 protected var walking:Boolean;// = false protected var body_mc_class:Class; private var armJoint:ArmJoint; private var stopWalkTimeoutID:uint;// = 0 private var mc:Sprite; public var cut_mc_class_1:Class; public var cut_mc_class_2:Class; private var jumpedLastFrame:Boolean;// = false protected var armPosition:b2Vec2; private var hasCustomArm:Boolean;// = false protected var burning:Boolean;// = false public var isBoss:Boolean;// = false private var slamming_cut1_body:spBody; private var restInPeace:Boolean;// = false protected var blocked:Boolean;// = false private var soul:MovieClip; public var scaleGraphics:Boolean;// = false private var dragAngle:Number;// = 0 public static var maxImpulse:Number = 0; public static var maxVelocity:Number = 0; public function Slamming(){ cut_mc_class_1 = Lemming1_cut1; cut_mc_class_2 = Lemming1_cut2; mouseOverFilters = [new GlowFilter(16777113, 1, 5, 5, 4, 1)]; mouseDownFilters = [new GlowFilter(16764057, 1, 5, 5, 4, 1)]; body_mc_class = Lemming1; foot_mc_class = Foot; arm_mc_class = Arm_mc; restingBodies = new Object(); armJointPosition = new b2Vec2(-0.65, -0.2); armPosition = new b2Vec2(-0.65, 0.15); super(); init(); } public function escaped():void{ SlammingSoundManager.playSound("escape", size, slammingBody.position.x); if (stopWalkTimeoutID){ clearTimeout(stopWalkTimeoutID); }; world.removeElement(this); dispatchEvent(new Event("escape")); } override protected function stop():void{ spSettings.stopChildren(MovieClip(mc)); if (stopWalkTimeoutID){ clearTimeout(stopWalkTimeoutID); }; stopWalkTimeoutID = 0; } private function moveLayer():void{ if (mc.parent){ mc.parent.removeChild(mc); display.deadSlammings.addChild(mc); }; body_dead.stop(); } private function removeFeetJoints():void{ removeJoint(leftFootJoint); removeJoint(rightFootJoint); } private function onPersistContactAlive(_arg1:b2ContactPoint, _arg2:spShape, _arg3:spShape):void{ var _local4:Number; if (((((!(isDragged)) || (!(dragStopsWalking)))) && (!(_arg3.ref.IsSensor())))){ _local4 = Math.atan2((_arg1.position.y - slammingBody.position.y), (_arg1.position.x - slammingBody.position.x)); if ((((_local4 > (Math.PI * 0.2))) && ((_local4 < (Math.PI * 0.8))))){ if (walking){ if (_arg1.position.y > walkPosition.y){ walkNormal = _arg1.normal.Copy(); walkPosition = _arg1.position.Copy(); }; } else { walking = true; walkNormal = _arg1.normal.Copy(); walkPosition = _arg1.position.Copy(); }; if (walkNormal.y > 0){ walkNormal.Multiply(-1); }; walkAngle = (Math.atan2(walkNormal.y, walkNormal.x) + (Math.PI / 2)); } else { if ((((_local4 < (-(Math.PI) * 0.2))) && ((_local4 > (-(Math.PI) * 0.8))))){ headContact = true; } else { if (Math.abs(_local4) < (Math.PI * 0.2)){ blocked = true; }; }; }; }; } override protected function addToDisplay(_arg1:spDisplay):void{ display = WorldDisplay(_arg1); mc = new MovieClip(); body_mc = new body_mc_class(); body_mc.scaleX = -1; body_mc.stop(); body_mc.addEventListener(MouseEvent.ROLL_OVER, onMouseOver, false, 0, true); body_mc.addEventListener(MouseEvent.ROLL_OUT, onMouseOut, false, 0, true); body_mc.mouseChildren = false; body_mc.body_dead.stop(); mc.addChild(body_mc); if (body_mc.wings_normal){ if (canFly){ body_mc.wings_normal.visible = false; body_mc.wings_flying.visible = false; } else { body_mc.removeChild(body_mc.wings_normal); body_mc.removeChild(body_mc.wings_flying); }; }; leftFoot_mc = new foot_mc_class(); leftFoot_mc.visible = false; mc.addChild(leftFoot_mc); rightFoot_mc = new foot_mc_class(); rightFoot_mc.visible = false; mc.addChild(rightFoot_mc); arm_mc = new arm_mc_class(); arm_mc.visible = false; arm_mc.scaleX = -1; mc.addChild(arm_mc); healthBar_mc = new Healthbar_mc(); healthBar_mc.alpha = 0; healthBar_mc.y = ((-30 * scale) - 10); mc.addChild(healthBar_mc); display.slammings.addChild(mc); if (scaleGraphics){ scaleGraphicsFn(); }; display.addEventListener("renderWorld", render, false, 0, true); addFeet(); addArm(); removeGraphics(); setSlammingGraphic(); } private function removeArmJoint():void{ removeJoint(armJoint); } private function addSoul():void{ soul = new Soul(); display.slammings.addChild(soul); soul.addFrameScript((soul.totalFrames - 1), removeSoul); soul.x = mc.x; soul.y = mc.y; } public function drown(_arg1:Number=1):void{ if (dead){ return; }; if (_arg1 > 0.5){ doDamage((((scale * 5) * 30) * world.timeStep), "drown"); drowning = true; setSlammingGraphic(); drownSoundChannel = SlammingSoundManager.playSound("drown", size, slammingBody.position.x); }; } public function removeFeet():void{ if (!hasCustomFeet){ return; }; hasCustomFeet = false; body_mc.feet.visible = true; leftFoot_mc.visible = false; rightFoot_mc.visible = false; if (leftFootBody){ removeBody(leftFootBody); removeBody(rightFootBody); }; } public function get health():Number{ return (_health); } override protected function start():void{ spSettings.playChildren(MovieClip(mc)); } private function renderFeet():void{ var _local1:Number = display.drawScale; leftFoot_mc.x = ((leftFootBody.position.x * _local1) - mc.x); leftFoot_mc.y = ((leftFootBody.position.y * _local1) - mc.y); leftFoot_mc.rotation = (leftFootBody.angle * (180 / Math.PI)); rightFoot_mc.x = ((rightFootBody.position.x * _local1) - mc.x); rightFoot_mc.y = ((rightFootBody.position.y * _local1) - mc.y); rightFoot_mc.rotation = (rightFootBody.angle * (180 / Math.PI)); arm_mc.x = ((armBody.position.x * _local1) - mc.x); arm_mc.y = ((armBody.position.y * _local1) - mc.y); arm_mc.rotation = (armBody.angle * (180 / Math.PI)); } private function onPersistContactDead(_arg1:b2ContactPoint, _arg2:spShape, _arg3:spShape):void{ if (_arg3.parent.parent.type == "ground"){ if ((((((Math.abs(_arg2.parent.linearVelocity.x) < 0.001)) && ((Math.abs(_arg2.parent.linearVelocity.y) < 0.001)))) && ((Math.abs(_arg2.parent.angularVelocity) < 0.001)))){ restingBodies[_arg2.parent.id] = _arg2.parent; }; }; } public function decapitate():void{ doDamage(1000, "decapitate"); } private function die():void{ var _local1:spShape; var _local2:b2PolygonDef; var _local3:b2Vec2; var _local4:spShape; var _local5:b2PolygonDef; var _local6:b2Vec2; var _local7:b2Vec2; var _local8:spRectangle; var _local9:spCircle; var _local10:spCircle; dead = true; removeArm(); removeFeet(); density = 3.5; SlammingSoundManager.playSound("die", size, slammingBody.position.x); if (drownSoundChannel){ drownSoundChannel.stop(); }; if (burnSoundChannel){ burnSoundChannel.stop(); }; angularDamping = 3; if (lastDamageType == "decapitate"){ decapitated = true; slamming_cut1_mc = new cut_mc_class_1(); slamming_cut2_mc = new cut_mc_class_2(); slamming_cut1_mc.scaleX = -(graphicsScale); slamming_cut1_mc.scaleY = graphicsScale; slamming_cut2_mc.scaleX = -(graphicsScale); slamming_cut2_mc.scaleY = graphicsScale; mc.addChild(slamming_cut1_mc); mc.addChild(slamming_cut2_mc); mc.x = (mc.y = 0); slamming_cut1_body = new spBody(); slamming_cut2_body = new spBody(); density = 3.5; _local1 = new spShape(); _local2 = new b2PolygonDef(); _local2.vertices[0] = new b2Vec2(-0.9, -0.45); _local2.vertices[1] = new b2Vec2(0.7, -0.45); _local2.vertices[2] = new b2Vec2(0.85, 0); _local2.vertices[3] = new b2Vec2(0.65, 0.5); _local2.vertices[4] = new b2Vec2(0, 0.65); _local2.vertices[5] = new b2Vec2(-0.5, 0.5); _local2.vertices[6] = new b2Vec2(-0.85, 0); _local2.vertexCount = 7; for each (_local3 in _local2.vertices) { _local3.Multiply(scale); }; _local1.setDefinition(_local2); _local4 = new spShape(); _local5 = new b2PolygonDef(); _local5.vertices[0] = new b2Vec2(-0.5, -0.5); _local5.vertices[1] = new b2Vec2(0.3, -0.5); _local5.vertices[2] = new b2Vec2(0.6, 0); _local5.vertices[3] = new b2Vec2(0.4, 0.65); _local5.vertices[4] = new b2Vec2(-1.1, 0.65); _local5.vertexCount = 5; for each (_local3 in _local5.vertices) { _local3.Multiply(scale); }; _local4.setDefinition(_local5); slamming_cut1_body.addShape(_local1); slamming_cut2_body.addShape(_local4); _local6 = new b2Vec2(0, 0.7); _local6.MulM(new b2Mat22(bodyAngle)); _local6.Add(slammingBody.position); _local7 = new b2Vec2(0, -0.7); _local7.MulM(new b2Mat22(bodyAngle)); _local7.Add(slammingBody.position); slamming_cut1_body.position = _local6.Copy(); slamming_cut2_body.position = _local7.Copy(); slamming_cut1_body.angle = bodyAngle; slamming_cut2_body.angle = bodyAngle; slamming_cut1_body.linearVelocity = slammingBody.linearVelocity.Copy(); slamming_cut2_body.linearVelocity = slammingBody.linearVelocity.Copy(); _local6.Subtract(slammingBody.position); _local7.Subtract(slammingBody.position); _local6.Multiply(6); _local7.Multiply(6); slamming_cut1_body.linearVelocity.Add(_local6); slamming_cut2_body.linearVelocity.Add(_local7); slamming_cut1_body.angularVelocity = slammingBody.angularVelocity; slamming_cut2_body.angularVelocity = slammingBody.angularVelocity; addBody(slamming_cut1_body); addBody(slamming_cut2_body); removeBody(slammingBody); linearDamping = 1.5; restitution = 0.1; friction = 0.7; } else { slammingBody.removeShape(circleShape); _local8 = new spRectangle((0.4 * scale), (0.8 * scale), (-0.1 * scale), 0, 0); slammingBody.addShape(_local8); _local9 = new spCircle((0.4 * scale), (-0.1 * scale), (-0.8 * scale)); slammingBody.addShape(_local9); _local10 = new spCircle((0.4 * scale), (-0.1 * scale), (0.8 * scale)); slammingBody.addShape(_local10); slammingBody.angle = (bodyAngleOffset + (Math.PI / 2)); body_mc.body_dead.gotoAndStop(1); }; setSlammingGraphic(); body_mc.removeChild(body_mc.nose); body_mc.removeChild(body_mc.arm); body_mc.removeChild(body_mc.feet); mc.removeChild(arm_mc); mc.removeChild(leftFoot_mc); mc.removeChild(rightFoot_mc); mc.removeChild(healthBar_mc); if (canFly){ body_mc.removeChild(body_mc.wings_normal); body_mc.removeChild(body_mc.wings_flying); }; spSettings.stopChildren(MovieClip(mc)); filter.maskBits = (filter.maskBits & ~(GlobalSettings.dynamicGroundBit)); filter.maskBits = (filter.maskBits & ~(GlobalSettings.slammingBit)); filter = filter; isMouseOver = false; body_mc.removeEventListener(MouseEvent.ROLL_OVER, onMouseOver, false); body_mc.removeEventListener(MouseEvent.ROLL_OUT, onMouseOut, false); world.removeEventListener("afterStep", afterStepAlive); world.removeEventListener("beforeStep", beforeStepAlive); world.addEventListener("afterStep", afterStepDead, false, 0, true); if (stopWalkTimeoutID){ clearTimeout(stopWalkTimeoutID); }; dispatchEvent(new Event("death")); healthBar_mc.alpha = 0; } private function removeSoul():void{ if (soul){ display.slammings.removeChild(soul); soul.stop(); soul = null; }; } override protected function removeFromDisplay(_arg1:spDisplay):void{ mc.parent.removeChild(mc); removeSoul(); if (healthBarFading){ display.removeEventListener("renderWorld", fadeHealthBar); }; display.removeEventListener("renderWorld", render); } protected function setSlammingGraphic():void{ var _local1:MovieClip; if (dead){ if (lastDamageType == "decapitate"){ _local1 = null; } else { _local1 = body_dead; }; } else { if (((drowning) || (burning))){ _local1 = (isBoss) ? body_normal : body_drowning; } else { if (isDragged){ _local1 = body_angry; } else { if (isMouseOver){ _local1 = body_scared; } else { if (((walking) || (jumping))){ _local1 = body_normal; } else { _local1 = body_falling; }; }; }; }; }; if (currentGraphic != _local1){ if (currentGraphic){ body_mc.removeChild(currentGraphic); }; if (_local1){ body_mc.addChildAt(_local1, graphicDepth); }; currentGraphic = _local1; if (currentGraphic == body_drowning){ arm_mc.visible = (leftFoot_mc.visible = (rightFoot_mc.visible = false)); }; }; } private function startWalking():void{ if (stopWalkTimeoutID){ clearTimeout(stopWalkTimeoutID); }; removeFeet(); removeArm(); setSlammingGraphic(); } public function set health(_arg1:Number):void{ _health = _arg1; updateHealthBar(); } protected function beforeStepAlive(_arg1:spWorldEvent):void{ if (jumping){ if (slammingBody.linearVelocity.y < 0){ slammingBody.ref.ApplyForce(new b2Vec2((25 * scale), 0), slammingBody.position); }; }; drowning = false; burning = false; wasWalking = walking; walking = false; headContact = false; blocked = false; } private function addLimbs():void{ if (stopWalkTimeoutID){ clearTimeout(stopWalkTimeoutID); }; addArm(); addFeet(); } private function afterStepAlive(_arg1:spWorldEvent):void{ var _local2:Number; var _local3:b2Body; var _local4:Number; var _local5:b2Vec2; if (!active){ return; }; if ((((health <= 0)) && (!(dead)))){ die(); }; if (!dead){ _local2 = (Math.pow(slammingBody.ref.m_linearVelocity.x, 2) + Math.pow(slammingBody.ref.m_linearVelocity.y, 2)); if (_local2 > Slamming.maxVelocity){ Slamming.maxVelocity = _local2; }; if (walking){ if (!wasWalking){ startWalking(); }; if (!jumpedLastFrame){ jumping = false; }; jumpedLastFrame = false; _local3 = slammingBody.ref; _local4 = _local3.m_linearVelocity.LengthSquared(); if (_local4 > (maxSpeed * maxSpeed)){ _local3.m_linearVelocity.Normalize(); _local3.m_linearVelocity.Multiply(maxSpeed); }; bodyAngle = (bodyAngle - walkAngle); while (bodyAngle < Math.PI) { bodyAngle = (bodyAngle + (Math.PI * 2)); }; while (bodyAngle > Math.PI) { bodyAngle = (bodyAngle - (Math.PI * 2)); }; bodyAngle = (bodyAngle - ((0.1 * bodyAngle) * (30 * _arg1.timeStep))); bodyAngle = (bodyAngle + walkAngle); if (((((((!(headContact)) && (blocked))) && (!(jumping)))) && ((Math.random() < 0.1)))){ _local5 = walkNormal.Copy(); _local5.Multiply(jumpSpeed); _local3.m_linearVelocity.y = (_local3.m_linearVelocity.y + _local5.y); _local3.m_linearVelocity.x = (_local3.m_linearVelocity.x + _local5.x); jumping = true; jumpedLastFrame = true; setSlammingGraphic(); SlammingSoundManager.playSound("jump", size, slammingBody.position.x); }; walkNormal.CrossFV(1); walkNormal.Multiply(((walkForceLinear * scale) * scale)); _local3.ApplyForce(walkNormal, _local3.GetPosition()); _local3.ApplyTorque(((walkForceAngular * scale) * scale)); } else { if (wasWalking){ stopWalking(); }; bodyAngle = (slammingBody.angle - bodyAngleOffset); }; } else { bodyAngle = (slammingBody.angle - bodyAngleOffset); }; } private function hideHealthBar(_arg1:Function=null):void{ if (!healthBarFading){ display.addEventListener("renderWorld", fadeHealthBar, false, 0, true); healthBarFading = true; }; healthBarFadeFn = _arg1; healthBarFadeDir = -1; } private function fadeHealthBar(_arg1:Event):void{ healthBar_mc.alpha = (healthBar_mc.alpha + ((healthBarFadeSpeed * healthBarFadeDir) * (30 * world.timeStep))); if ((((healthBar_mc.alpha <= 0)) || ((healthBar_mc.alpha >= 1)))){ healthBarFading = false; display.removeEventListener("renderWorld", fadeHealthBar); if (healthBarFadeFn != null){ healthBarFadeFn(); }; }; } protected function init():void{ type = "slamming"; angularDamping = 0; linearDamping = 0.1; density = 1; restitution = 0.2; friction = 0.8; filter.categoryBits = GlobalSettings.slammingBit; useGlobalAngularDamping = false; useGlobalLinearDamping = false; useGlobalDensity = false; useGlobalRestitution = false; useGlobalFriction = false; slammingBody = new spBody(); slammingBody.useParentAngularDamping = true; slammingBody.useParentDensity = true; slammingBody.filter.categoryBits = GlobalSettings.slammingBit; radius = (radius * scale); circleShape = new spCircle(radius); circleShape.useParentDensity = true; circleShape.filter.categoryBits = GlobalSettings.slammingBit; slammingBody.addShape(circleShape); jumping = true; leftFootBody = new spBody(); leftFootBody.useParentFilter = false; leftFootBody.useParentDensity = false; leftFootBody.density = 1; leftFootBody.filter.categoryBits = 0; leftFootBody.addShape(new spRectangle((0.35 * scale), (0.15 * scale))); leftFootJoint = new LegJoint(slammingBody, leftFootBody, slammingBody.position.Copy()); rightFootBody = new spBody(); rightFootBody.useParentFilter = false; rightFootBody.useParentDensity = false; rightFootBody.density = 1; rightFootBody.filter.categoryBits = 0; rightFootBody.addShape(new spRectangle((0.35 * scale), (0.15 * scale))); rightFootJoint = new LegJoint(slammingBody, rightFootBody, slammingBody.position.Copy()); armBody = new spBody(); armBody.useParentFilter = false; armBody.useParentDensity = false; armBody.useParentAngularDamping = false; armBody.angularDamping = 2; armBody.linearDamping = 2; armBody.density = 1; armBody.filter.categoryBits = 0; armBody.addShape(new spRectangle((0.15 * scale), (0.5 * scale))); armBody.draggable = false; armJoint = new ArmJoint(slammingBody, armBody, slammingBody.position.Copy()); addBody(slammingBody); } private function stopWalking():void{ bodyAngleOffset = (slammingBody.angle - bodyAngle); slammingBody.ref.SetAngularVelocity(0); if (stopWalkTimeoutID){ clearTimeout(stopWalkTimeoutID); }; stopWalkTimeoutID = setTimeout(addLimbs, 200); } private function removeGraphics():void{ if (body_mc.body_drowning == null){ body_drowning = (body_mc.body_drowning = MovieClip(body_mc.body_normal)); } else { body_drowning = MovieClip(body_mc.removeChild(body_mc.body_drowning)); }; body_dead = MovieClip(body_mc.removeChild(body_mc.body_dead)); body_scared = MovieClip(body_mc.removeChild(body_mc.body_scared)); body_falling = MovieClip(body_mc.removeChild(body_mc.body_falling)); body_angry = MovieClip(body_mc.removeChild(body_mc.body_angry)); currentGraphic = (body_normal = body_mc.body_normal); graphicDepth = body_mc.getChildIndex(currentGraphic); } protected function removeArm():void{ if (!hasCustomArm){ return; }; hasCustomArm = false; body_mc.arm.visible = true; arm_mc.visible = false; if (armBody){ removeBody(armBody); }; } private function afterStepDead(_arg1:Event):void{ var _local2:spBody; if (!active){ return; }; for each (_local2 in restingBodies) { removeBody(_local2); if (decapitated){ if (_local2 == slamming_cut1_body){ slamming_cut1_mc.play(); }; if (_local2 == slamming_cut2_body){ slamming_cut2_mc.play(); }; }; }; restingBodies = new Object(); if (numBodies == 0){ stop(); if (!decapitated){ body_mc.body_dead.play(); body_dead.addFrameScript((body_dead.totalFrames - 1), moveLayer); }; restInPeace = true; render(); display.removeEventListener("renderWorld", render); world.removeEventListener("afterStep", afterStepDead); if (Math.random() < 0.4){ addSoul(); }; }; bodyAngle = (slammingBody.angle - bodyAngleOffset); } private function addArmJoint():void{ var _local1:b2Mat22 = new b2Mat22(bodyAngle); var _local2:b2Vec2 = armJointPosition.Copy(); _local2.Multiply(scale); _local2.MulM(_local1); _local2.Add(slammingBody.position); armJoint.anchor = _local2; addJoint(armJoint); } private function updateHealthBar():void{ if (body_mc){ healthBar_mc.gotoAndStop(Math.ceil(((_health / maxHealth) * healthBar_mc.totalFrames))); healthBar_mc.alpha = 1; hideHealthBar(); }; } private function onMouseOut(_arg1:MouseEvent):void{ isMouseOver = false; setSlammingGraphic(); } override public function onPersistContact(_arg1:b2ContactPoint, _arg2:spShape, _arg3:spShape):void{ if (!dead){ onPersistContactAlive(_arg1, _arg2, _arg3); } else { if (!restInPeace){ onPersistContactDead(_arg1, _arg2, _arg3); }; }; } override public function mouseDrag(_arg1:spBody):void{ jumping = false; isDragged = true; linearDamping = 0.2; angularDamping = 0.2; SlammingSoundManager.playSound("pickup", size, slammingBody.position.x); setSlammingGraphic(); } private function scaleGraphicsPart(_arg1:MovieClip):void{ _arg1.scaleX = (_arg1.scaleX * graphicsScale); _arg1.scaleY = (_arg1.scaleY * graphicsScale); _arg1.x = (_arg1.x * graphicsScale); _arg1.y = (_arg1.y * graphicsScale); } private function showHealthBar(_arg1:Function=null):void{ if (!healthBarFading){ display.addEventListener("renderWorld", fadeHealthBar, false, 0, true); healthBarFading = true; }; healthBarFadeFn = _arg1; healthBarFadeDir = 1; } override public function mouseRelease(_arg1:spBody):void{ jumping = false; isDragged = false; linearDamping = 0; angularDamping = 0; setSlammingGraphic(); } private function scaleGraphicsFn():void{ if (body_mc.wings_normal){ scaleGraphicsPart(body_mc.wings_normal); scaleGraphicsPart(body_mc.wings_flying); }; scaleGraphicsPart(body_mc); scaleGraphicsPart(leftFoot_mc); scaleGraphicsPart(rightFoot_mc); scaleGraphicsPart(arm_mc); } private function render(_arg1:Event=null):void{ if (decapitated){ slamming_cut1_mc.x = (slamming_cut1_body.position.x * display.drawScale); slamming_cut1_mc.y = (slamming_cut1_body.position.y * display.drawScale); slamming_cut2_mc.x = (slamming_cut2_body.position.x * display.drawScale); slamming_cut2_mc.y = (slamming_cut2_body.position.y * display.drawScale); slamming_cut1_mc.rotation = ((slamming_cut1_body.angle * 180) / Math.PI); slamming_cut2_mc.rotation = ((slamming_cut2_body.angle * 180) / Math.PI); } else { mc.x = (slammingBody.position.x * display.drawScale); mc.y = (slammingBody.position.y * display.drawScale); if (!dead){ body_mc.rotation = ((bodyAngle * 180) / Math.PI); } else { body_mc.rotation = ((slammingBody.angle * 180) / Math.PI); }; if (hasCustomFeet){ renderFeet(); }; }; } override public function onResultContact(_arg1:b2ContactResult, _arg2:spShape, _arg3:spShape):void{ if (((dead) || (!(active)))){ return; }; var _local4:Number = Math.abs(_arg1.normalImpulse); if (_local4 > armor){ if (_local4 > Slamming.maxImpulse){ Slamming.maxImpulse = _local4; }; doDamage(_local4); }; } public function burn(_arg1:Number=1):void{ if (dead){ return; }; if (_arg1 > 0.5){ doDamage((((scale * 5) * 30) * world.timeStep), "drown"); burning = true; setSlammingGraphic(); burnSoundChannel = SlammingSoundManager.playSound("burn", size, slammingBody.position.x); }; } public function doDamage(_arg1:Number, _arg2:String="physical"):void{ if (dead){ return; }; lastDamageType = _arg2; health = (health - _arg1); if (_arg2 == "physical"){ SlammingSoundManager.playSound("damage", size, slammingBody.position.x); }; } override protected function removeFromWorld(_arg1:spWorld):void{ if (!dead){ _arg1.removeEventListener("afterStep", afterStepAlive); _arg1.removeEventListener("beforeStep", beforeStepAlive); } else { if (!restInPeace){ _arg1.removeEventListener("afterStep", afterStepDead); }; }; if (stopWalkTimeoutID){ clearTimeout(stopWalkTimeoutID); }; stopWalkTimeoutID = 0; } private function addFeet(_arg1:Boolean=true):void{ if (hasCustomFeet){ return; }; hasCustomFeet = true; stopWalkTimeoutID = 0; var _local2:Number = (bodyAngle + 0.4); leftFootBody.position.x = (slammingBody.position.x + ((Math.cos((_local2 + (Math.PI / 2))) * 1.3) * scale)); leftFootBody.position.y = (slammingBody.position.y + ((Math.sin((_local2 + (Math.PI / 2))) * 1.3) * scale)); leftFootBody.angle = _local2; leftFootBody.linearVelocity = slammingBody.ref.GetLinearVelocityFromWorldPoint(leftFootBody.position); addBody(leftFootBody); leftFoot_mc.visible = true; _local2 = (bodyAngle - 0.4); rightFootBody.position.x = (slammingBody.position.x + ((Math.cos((_local2 + (Math.PI / 2))) * 1.3) * scale)); rightFootBody.position.y = (slammingBody.position.y + ((Math.sin((_local2 + (Math.PI / 2))) * 1.3) * scale)); rightFootBody.angle = _local2; rightFootBody.linearVelocity = slammingBody.ref.GetLinearVelocityFromWorldPoint(rightFootBody.position); addBody(rightFootBody); rightFoot_mc.visible = true; if (_arg1){ addFeetJoints(); }; body_mc.feet.visible = false; setSlammingGraphic(); renderFeet(); } override protected function addToWorld(_arg1:spWorld):void{ _arg1.addEventListener("afterStep", afterStepAlive, false, 0, true); _arg1.addEventListener("beforeStep", beforeStepAlive, false, 0, true); _health = maxHealth; } private function addFeetJoints():void{ leftFootJoint.anchor = slammingBody.position.Copy(); addJoint(leftFootJoint); rightFootJoint.anchor = slammingBody.position.Copy(); addJoint(rightFootJoint); } private function onMouseOver(_arg1:MouseEvent):void{ isMouseOver = true; setSlammingGraphic(); } private function addArm(_arg1:Boolean=true):void{ if (hasCustomArm){ return; }; hasCustomArm = true; var _local2:Number = bodyAngle; var _local3:b2Mat22 = new b2Mat22(bodyAngle); armBody.position = armPosition.Copy(); armBody.position.Multiply(scale); armBody.position.MulM(_local3); armBody.position.Add(slammingBody.position); armBody.angle = bodyAngle; armBody.linearVelocity = slammingBody.ref.GetLinearVelocityFromWorldPoint(armBody.position); addBody(armBody); body_mc.arm.visible = false; arm_mc.visible = true; if (_arg1){ addArmJoint(); }; } } }//package spill.slammings.character
Section 330
//Slamming1 (spill.slammings.character.Slamming1) package spill.slammings.character { public class Slamming1 extends Slamming { override protected function init():void{ scale = 0.9; graphicsScale = 0.9; scaleGraphics = true; size = 0; super.init(); } } }//package spill.slammings.character
Section 331
//Slamming2 (spill.slammings.character.Slamming2) package spill.slammings.character { public class Slamming2 extends Slamming { override protected function init():void{ body_mc_class = Slamming2_mc; cut_mc_class_1 = Slamming2_cut1; cut_mc_class_2 = Slamming2_cut2; scale = 0.95; graphicsScale = 0.95; scaleGraphics = true; maxSpeed = 2; armor = (armor * (scale * scale)); maxHealth = (maxHealth * ((scale * scale) * 2)); super.init(); } } }//package spill.slammings.character
Section 332
//Slamming3 (spill.slammings.character.Slamming3) package spill.slammings.character { public class Slamming3 extends Slamming { override protected function init():void{ body_mc_class = Slamming3_mc; cut_mc_class_1 = Slamming3_cut1; cut_mc_class_2 = Slamming3_cut2; arm_mc_class = Arm3_mc; scale = 1; graphicsScale = 1; scaleGraphics = true; maxSpeed = 2; armor = (armor * (scale * scale)); maxHealth = (maxHealth * ((scale * scale) * 2)); super.init(); slammingBody.mouseForceMultiplier = 0.7; } } }//package spill.slammings.character
Section 333
//Slamming4 (spill.slammings.character.Slamming4) package spill.slammings.character { public class Slamming4 extends Slamming { override protected function init():void{ body_mc_class = Slamming4_mc; cut_mc_class_1 = Slamming4_cut1; cut_mc_class_2 = Slamming4_cut2; arm_mc_class = Arm4_mc; scale = 1.05; graphicsScale = 1.05; scaleGraphics = true; maxSpeed = 2; armor = (armor * (scale * scale)); maxHealth = (maxHealth * ((scale * scale) * 2)); super.init(); slammingBody.mouseForceMultiplier = 0.7; walkForceLinear = (walkForceLinear * 2); walkForceAngular = (walkForceAngular * 2); } } }//package spill.slammings.character
Section 334
//Slamming5 (spill.slammings.character.Slamming5) package spill.slammings.character { public class Slamming5 extends Slamming { override protected function init():void{ body_mc_class = Slamming5_mc; cut_mc_class_1 = Slamming5_cut1; cut_mc_class_2 = Slamming5_cut2; arm_mc_class = Arm5_mc; scale = 1.1; graphicsScale = 1.1; scaleGraphics = true; maxSpeed = 2; armor = (armor * (scale * scale)); maxHealth = (maxHealth * ((scale * scale) * 2)); super.init(); slammingBody.mouseForceMultiplier = 0.7; walkForceLinear = (walkForceLinear * 2); walkForceAngular = (walkForceAngular * 2); } } }//package spill.slammings.character
Section 335
//SlammingBoss (spill.slammings.character.SlammingBoss) package spill.slammings.character { public class SlammingBoss extends Slamming { protected var jumpOutOfWaterSpeed:Number;// = 8 override protected function init():void{ isBoss = true; armor = (armor * ((scale * scale) * 1.4)); maxHealth = (maxHealth * ((scale * scale) * 4)); armJointPosition.Multiply(1.1); armPosition.Multiply(1.1); super.init(); slammingBody.mouseForceMultiplier = (0.5 * graphicsScale); density = 4; walkForceLinear = (walkForceLinear * density); walkForceAngular = (walkForceAngular * density); dragStopsWalking = false; size = 2; } override public function drown(_arg1:Number=1):void{ if (dead){ return; }; slammingBody.ref.m_linearVelocity.y = -(jumpOutOfWaterSpeed); } override public function doDamage(_arg1:Number, _arg2:String="physical"):void{ if ((((_arg1 > 850)) && (!((_arg2 == "decapitate"))))){ _arg1 = 850; }; super.doDamage(_arg1, _arg2); } } }//package spill.slammings.character
Section 336
//QualityControl (spill.slammings.controls.QualityControl) package spill.slammings.controls { import flash.events.*; import flash.display.*; import spill.slammings.*; public class QualityControl extends SliderControl { private var _inGame:Boolean;// = false private var qualities:Array; public function QualityControl(_arg1:MovieClip){ qualities = [StageQuality.LOW, StageQuality.MEDIUM, StageQuality.HIGH]; super(_arg1); setValue(SaveGameData.quality); } override protected function mouseMove(_arg1:MouseEvent=null):void{ mc.btn.x = Math.min(bottom, Math.max(mc.mouseX, top)); var _local2:int = Math.round((((mc.btn.x - top) / (bottom - top)) * 2)); mc.btn.x = (((_local2 / 2) * (bottom - top)) + top); SaveGameData.quality = qualities[_local2]; setText(); } private function setText():void{ mc.text.gotoAndStop(SaveGameData.quality); } private function setValue(_arg1:String):void{ var _local2:int = qualities.indexOf(_arg1.toLowerCase()); mc.btn.x = ((((bottom - top) / 2) * _local2) + top); setText(); } } }//package spill.slammings.controls
Section 337
//SliderControl (spill.slammings.controls.SliderControl) package spill.slammings.controls { import flash.events.*; import flash.display.*; public class SliderControl { protected var top:Number;// = 10 protected var bottom:Number;// = 75 protected var mc:MovieClip; public function SliderControl(_arg1:MovieClip){ mc = _arg1; mc.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown, false, 0, true); } private function mouseUp(_arg1:Event):void{ mc.stage.removeEventListener(MouseEvent.MOUSE_MOVE, mouseMove); mc.stage.removeEventListener(MouseEvent.MOUSE_UP, mouseUp); } public function set value(_arg1:Number):void{ mc.btn.x = (((bottom - top) * _arg1) + top); } private function mouseDown(_arg1:Event):void{ mc.stage.addEventListener(MouseEvent.MOUSE_MOVE, mouseMove, false, 0, true); mc.stage.addEventListener(MouseEvent.MOUSE_UP, mouseUp, false, 0, true); mouseMove(); } protected function mouseMove(_arg1:MouseEvent=null):void{ mc.btn.x = Math.min(bottom, Math.max((mc.mouseX + 3), top)); value = ((mc.btn.x - top) / (bottom - top)); } } }//package spill.slammings.controls
Section 338
//Tooltip (spill.slammings.controls.Tooltip) package spill.slammings.controls { import flash.events.*; import flash.display.*; import flash.filters.*; import flash.geom.*; import flash.text.*; public class Tooltip extends Sprite { public var _width:Number;// = 200 public var padding:Number;// = 8 private var mc:Tooltip_mc; private var fadeDir:Number;// = 1 private var fading:Boolean;// = false public function Tooltip(){ mc = new Tooltip_mc(); mc.txt.width = _width; mc.txt.autoSize = TextFieldAutoSize.LEFT; mc.txt.multiline = true; mc.txt.wordWrap = true; mc.txt.embedFonts = SpilGame.currentLanguage.embedFonts; mc.filters = [new DropShadowFilter(4, 45, 0, 0.6)]; mouseEnabled = false; mouseChildren = false; addChild(mc); addEventListener(Event.ADDED_TO_STAGE, added, false, 0, true); addEventListener(Event.REMOVED_FROM_STAGE, removed, false, 0, true); alpha = 0; } private function added(_arg1:Event):void{ stage.addEventListener(MouseEvent.MOUSE_MOVE, move, false, 0, true); } public function setText(_arg1:String):void{ var _local2:TextFormat; mc.txt.embedFonts = SpilGame.currentLanguage.embedFonts; mc.txt.text = _arg1; mc.bg.width = (_width + (padding * 2)); mc.bg.height = (mc.txt.height + (padding * 2)); mc.txt.x = (mc.txt.y = padding); if (SpilGame.currentLanguage.forceFont){ _local2 = new TextFormat(); _local2.font = SpilGame.currentLanguage.forceFont; mc.txt.setTextFormat(_local2); }; } private function removed(_arg1:Event):void{ stage.removeEventListener(MouseEvent.MOUSE_MOVE, move); } public function hide():void{ fadeDir = -1; if (!fading){ addEventListener(Event.ENTER_FRAME, fade); }; fading = true; } private function fade(_arg1:Event):void{ alpha = (alpha + (fadeDir * 0.2)); var _local2:Boolean; if (fadeDir == 1){ if (alpha >= 1){ _local2 = true; alpha = 1; }; } else { if (alpha <= 0){ _local2 = true; alpha = 0; }; }; if (_local2){ removeEventListener(Event.ENTER_FRAME, fade); fading = false; }; } public function show(_arg1:String):void{ setText(_arg1); fadeDir = 1; if (!fading){ addEventListener(Event.ENTER_FRAME, fade); }; fading = true; } private function move(_arg1:MouseEvent=null):void{ x = (parent.mouseX - 100); var _local2:Point = this.localToGlobal(new Point((_width + (padding * 2)), 0)); if (_local2.x > 640){ x = (640 - (_width + (padding * 2))); } else { if (x < 0){ x = 0; }; }; if (_arg1){ _arg1.updateAfterEvent(); }; } } }//package spill.slammings.controls
Section 339
//VolumeControl (spill.slammings.controls.VolumeControl) package spill.slammings.controls { import flash.display.*; import spill.slammings.*; public class VolumeControl extends SliderControl { private var type:Boolean;// = false public function VolumeControl(_arg1:MovieClip, _arg2:Boolean){ super(_arg1); type = _arg2; value = (type) ? SaveGameData.musicVolume : SaveGameData.soundVolume; } override public function set value(_arg1:Number):void{ super.value = _arg1; trace(("VolumeControl.set.musicVolume, type = " + type)); if (type){ SaveGameData.musicVolume = _arg1; } else { SaveGameData.soundVolume = _arg1; }; } } }//package spill.slammings.controls
Section 340
//ArrowDisplay (spill.slammings.display.ArrowDisplay) package spill.slammings.display { import flash.events.*; import flash.display.*; import spill.slammings.*; public class ArrowDisplay extends MovieClip { private var vis:Boolean;// = false private var gameDisplay:GameDisplay; private var mc:MovieClip; public function ArrowDisplay(){ mc = new ArrowDisplay_mc(); addChild(mc); mc.gotoAndStop("appear"); addEventListener(MouseEvent.MOUSE_DOWN, mouseDown, false, 0, true); addEventListener(MouseEvent.MOUSE_OVER, mouseOver, false, 0, true); addEventListener(MouseEvent.MOUSE_OUT, mouseOut, false, 0, true); } private function mouseUp(_arg1:MouseEvent):void{ stage.removeEventListener(MouseEvent.MOUSE_UP, mouseUp, false); removeEventListener(Event.ENTER_FRAME, scrollRight, false); } private function mouseOut(_arg1:MouseEvent):void{ MouseControl.instance.removeHandCursor(); } private function mouseDown(_arg1:MouseEvent):void{ stage.addEventListener(MouseEvent.MOUSE_UP, mouseUp, false, 0, true); addEventListener(Event.ENTER_FRAME, scrollRight, false, 0, true); } private function scrollRight(_arg1:Event):void{ GameDisplay.instance.scrollBy(-30, 0); } public function hide():void{ if (!vis){ return; }; mc.gotoAndPlay("disappear"); vis = false; } private function mouseOver(_arg1:MouseEvent):void{ MouseControl.instance.setHandCursor("point"); } public function show():void{ if (vis){ return; }; mc.gotoAndPlay("appear"); vis = true; } } }//package spill.slammings.display
Section 341
//CombatText (spill.slammings.display.CombatText) package spill.slammings.display { import flash.text.*; import spill.localisation.*; public class CombatText extends CombatText_mc { private var textFormat:TextFormat; public function CombatText(){ textFormat = new TextFormat(); super(); stop(); mouseEnabled = false; mouseChildren = false; anim.text.embedFonts = SpilGame.currentLanguage.embedFonts; anim.text.autoSize = TextFieldAutoSize.CENTER; anim.text.multiline = true; anim.text.wordWrap = true; } public function showText(_arg1:String, _arg2:Number, _arg3:Boolean=false):void{ happy_face.visible = _arg3; textFormat.size = _arg2; anim.text.text = _arg1; anim.text.setTextFormat(textFormat); gotoAndPlay(1); } public function comboEnd(_arg1:Number):void{ var _local2:String; if (_arg1 < 2){ return; }; var _local3:Boolean; var _local4:Number = 30; if (_arg1 <= 3){ _local2 = SpilGame.getString("Combo_Text_2"); _local3 = false; _local4 = 20; } else { if (_arg1 <= 6){ _local2 = SpilGame.getString("Combo_Text_3"); _local3 = true; _local4 = 22; } else { if (_arg1 <= 9){ _local2 = SpilGame.getString("Combo_Text_4"); _local4 = 24; } else { if (_arg1 <= 12){ _local2 = SpilGame.getString("Combo_Text_5"); _local4 = 26; } else { if (_arg1 <= 15){ _local2 = SpilGame.getString("Combo_Text_6"); _local4 = 28; } else { if (_arg1 <= 18){ _local2 = SpilGame.getString("Combo_Text_7"); _local4 = 30; } else { _local2 = SpilGame.getString("Combo_Text_8"); _local4 = 32; }; }; }; }; }; }; trace(("combo text = " + _local2)); happy_face.visible = _local3; textFormat.size = _local4; gotoAndPlay(1); anim.text.text = _local2; anim.text.setTextFormat(textFormat); } } }//package spill.slammings.display
Section 342
//GameDisplay (spill.slammings.display.GameDisplay) package spill.slammings.display { import flash.events.*; import flash.display.*; import spill.slammings.*; import flash.ui.*; public class GameDisplay extends Sprite { public var displayHeight:Number;// = 480 private var shakeLength:Number;// = 12 public var tutorialLayer:Sprite; private var shakeCounter:Number;// = 0 private var isDragging:Boolean;// = false public var scrollPosition:Number;// = 0 public var uiLayer:Sprite; public var scrollEdge:Number;// = 100 public var displayWidth:Number;// = 640 public var background:Sprite; private var scrollDirection:Number; private var paused:Boolean;// = false public var mouseLayer:Sprite; public var worldDisplay:WorldDisplay; public var coverLayer:Sprite; private var shakeStrength:Number;// = 30 private var isScrolling:Boolean;// = false private var mouseXstart:Number; public var mouseControl:MouseControl; public var scrollSpeed:Number;// = 0.15 public static var instance:GameDisplay; public function GameDisplay(_arg1:WorldDisplay){ mouseLayer = new Sprite(); uiLayer = new Sprite(); tutorialLayer = new Sprite(); coverLayer = new Sprite(); super(); coverLayer.graphics.beginFill(2245666, 0.75); coverLayer.graphics.lineStyle(); coverLayer.graphics.drawRect(0, 0, 640, 480); coverLayer.visible = false; GameDisplay.instance = this; worldDisplay = _arg1; addChild(_arg1); addChild(uiLayer); addChild(coverLayer); addChild(tutorialLayer); addChild(mouseLayer); mouseLayer.mouseEnabled = false; uiLayer.mouseEnabled = false; addEventListener(MouseEvent.ROLL_OVER, hideMouse, false, 0, true); addEventListener(MouseEvent.ROLL_OUT, showMouse, false, 0, true); addEventListener(Event.ADDED_TO_STAGE, addedToStage); } public function setMouseControl(_arg1:MouseControl):void{ mouseControl = _arg1; } private function hideMouse(_arg1:MouseEvent):void{ if (paused){ return; }; Mouse.hide(); } public function scrollBy(_arg1:Number, _arg2:Number):void{ var _local3:Number; worldDisplay.x = Math.round((worldDisplay.x + _arg1)); if (worldDisplay.x > 0){ worldDisplay.x = 0; } else { if (worldDisplay.x < (displayWidth - worldDisplay.worldWidth)){ worldDisplay.x = (displayWidth - worldDisplay.worldWidth); }; }; scrollPosition = worldDisplay.x; if (background){ _local3 = (worldDisplay.x / (displayWidth - worldDisplay.worldWidth)); background.x = (_local3 * (background.width - displayWidth)); }; mouseControl.forceUpdate(); dispatchEvent(new Event("scrollChanged")); } public function screenShake():void{ if (shakeCounter == 0){ worldDisplay.world.addEventListener("renderWorld", doScreenShake, false, 0, true); }; shakeCounter = shakeLength; } private function keyDown(_arg1:KeyboardEvent):void{ if (isScrolling){ return; }; if ((((_arg1.keyCode == Keyboard.LEFT)) || ((_arg1.keyCode == 65)))){ startKeyScroll(-1); } else { if ((((_arg1.keyCode == Keyboard.RIGHT)) || ((_arg1.keyCode == 68)))){ startKeyScroll(1); } else { if (_arg1.keyCode == Keyboard.SPACE){ worldDisplay.addEventListener(MouseEvent.MOUSE_DOWN, startDragWorld, true, 11, true); }; }; }; } private function addedToStage(_arg1:Event):void{ removeEventListener(Event.ADDED_TO_STAGE, addedToStage); stage.addEventListener(KeyboardEvent.KEY_DOWN, keyDown, false, 0, true); stage.addEventListener(KeyboardEvent.KEY_UP, keyUp, false, 0, true); } public function destroy():void{ removeEventListener(MouseEvent.ROLL_OVER, hideMouse, false); removeEventListener(MouseEvent.ROLL_OUT, showMouse, false); stage.removeEventListener(KeyboardEvent.KEY_DOWN, keyDown, false); stage.removeEventListener(KeyboardEvent.KEY_UP, keyUp, false); if (isDragging){ stage.removeEventListener(MouseEvent.MOUSE_MOVE, dragWorld, false); stage.removeEventListener(MouseEvent.MOUSE_UP, stopDragWorld, false); }; removeChild(worldDisplay); removeChild(uiLayer); removeChild(mouseLayer); worldDisplay = null; mouseControl = null; uiLayer = null; mouseLayer = null; background = null; GameDisplay.instance = null; } private function showMouse(_arg1:Event):void{ Mouse.show(); } public function setBackground(_arg1:Sprite):void{ worldDisplay.background.addChild(_arg1); background = _arg1; _arg1.cacheAsBitmap = true; } private function stopKeyScroll():void{ isScrolling = false; worldDisplay.bg.cacheAsBitmap = true; worldDisplay.world.removeEventListener("renderWorld", doKeyScroll, false); } private function doScroll(_arg1:Event):void{ var _local2:Number = 0; var _local3:Number = 0; if ((((mouseX < 0)) || ((mouseX > displayWidth)))){ return; }; if (mouseX < scrollEdge){ _local2 = ((scrollEdge - mouseX) * scrollSpeed); } else { if (mouseX > (displayWidth - scrollEdge)){ _local2 = (((displayWidth - scrollEdge) - mouseX) * scrollSpeed); }; }; if (((!((_local2 == 0))) || (!((_local3 == 0))))){ scrollBy(_local2, _local3); }; } private function dragWorld(_arg1:MouseEvent):void{ scrollBy((mouseX - mouseXstart), 0); mouseXstart = mouseX; _arg1.stopImmediatePropagation(); } public function getSoundPanning(_arg1:Number):Number{ _arg1 = (_arg1 * worldDisplay.drawScale); _arg1 = (_arg1 + scrollPosition); _arg1 = (_arg1 - 320); _arg1 = (_arg1 / 320); return (_arg1); } private function doKeyScroll(_arg1:Event):void{ scrollBy((scrollDirection * -20), 0); } private function startKeyScroll(_arg1:Number):void{ scrollDirection = _arg1; isScrolling = true; worldDisplay.bg.cacheAsBitmap = false; worldDisplay.world.addEventListener("renderWorld", doKeyScroll, false, 0, true); } private function stopDragWorld(_arg1:MouseEvent):void{ isDragging = false; worldDisplay.bg.cacheAsBitmap = true; MouseControl.instance.removeHandCursor(); stage.removeEventListener(MouseEvent.MOUSE_MOVE, dragWorld, false); stage.removeEventListener(MouseEvent.MOUSE_UP, stopDragWorld, false); scrollBy((mouseX - mouseXstart), 0); } private function keyUp(_arg1:KeyboardEvent):void{ if ((((_arg1.keyCode == Keyboard.LEFT)) || ((_arg1.keyCode == 65)))){ if (!isScrolling){ return; }; stopKeyScroll(); } else { if ((((_arg1.keyCode == Keyboard.RIGHT)) || ((_arg1.keyCode == 68)))){ if (!isScrolling){ return; }; stopKeyScroll(); } else { if (_arg1.keyCode == Keyboard.SPACE){ worldDisplay.removeEventListener(MouseEvent.MOUSE_DOWN, startDragWorld, true); }; }; }; } public function pauseChanged(_arg1:Boolean):void{ if (_arg1){ Mouse.show(); } else { Mouse.hide(); }; paused = _arg1; } private function doScreenShake(_arg1:Event):void{ shakeCounter--; if ((shakeCounter % 2) == 1){ return; }; var _local2:Number = (shakeCounter / shakeLength); worldDisplay.y = (((Math.random() - 0.5) * shakeStrength) * _local2); worldDisplay.x = (scrollPosition - (((Math.random() - 0.5) * shakeStrength) * _local2)); if (shakeCounter == 0){ worldDisplay.world.removeEventListener("renderWorld", doScreenShake, false); worldDisplay.y = 0; worldDisplay.x = scrollPosition; }; } private function startDragWorld(_arg1:MouseEvent):void{ isDragging = true; _arg1.stopImmediatePropagation(); MouseControl.instance.setHandCursor("closed"); stage.addEventListener(MouseEvent.MOUSE_MOVE, dragWorld, false, 10, true); stage.addEventListener(MouseEvent.MOUSE_UP, stopDragWorld, false, 0, true); worldDisplay.bg.cacheAsBitmap = false; mouseXstart = mouseX; } public function scrollToPercent(_arg1:Number):void{ var _local2:Number = (worldDisplay.worldWidth * _arg1); _local2 = (_local2 * -1); _local2 = (_local2 + 320); scrollBy((_local2 - worldDisplay.x), 0); } } }//package spill.slammings.display
Section 343
//LevelMap (spill.slammings.display.LevelMap) package spill.slammings.display { import flash.events.*; import flash.display.*; import spill.slammings.*; import spill.slammings.character.*; public class LevelMap extends Sprite { private var display:WorldDisplay; private var arrow:ArrowDisplay; private var slammings:Array; public var scrollbarSymbol:Class; public var backgroundSymbol:Class; private var background:Progress_bar; private var gameDisplay:GameDisplay; public var iconSymbol:Class; private var slammingManager:SlammingManager; private var scrollbar:MovieClip; private var scrolling:Boolean;// = false private var godMode:Boolean; private static const padding:Number = 8; private static const trackWidth:Number = 210; public function LevelMap(_arg1:GameDisplay, _arg2:WorldDisplay, _arg3:SlammingManager, _arg4:ArrowDisplay, _arg5:Boolean){ backgroundSymbol = Progress_bar; scrollbarSymbol = Scrollbar_mc; iconSymbol = LemmingBlip_mc; slammings = new Array(); super(); gameDisplay = _arg1; display = _arg2; slammingManager = _arg3; arrow = _arg4; godMode = _arg5; background = new backgroundSymbol(); background.numberSlammings.text = ""; background.numberSlammings.embedFonts = true; background.bar.scaleX = (_arg5) ? 0 : 1; addChild(background); var _local6:int; while (_local6 < _arg3.maxActiveSlammings) { addBlip(); _local6++; }; display.addEventListener("renderWorld", update, false, 0, true); addEventListener(MouseEvent.MOUSE_DOWN, startScroll, false, 0, true); addEventListener(MouseEvent.MOUSE_OVER, mouseOver, false, 0, true); addEventListener(MouseEvent.MOUSE_OUT, mouseOut, false, 0, true); scrollbar = new scrollbarSymbol(); scrollbar.width = ((_arg1.displayWidth / _arg2.worldWidth) * trackWidth); scrollbar.y = 42; addChild(scrollbar); _arg1.addEventListener("scrollChanged", scrollChanged, false, 0, true); scrollToPercent(0); } public function destroy():void{ display.removeEventListener("renderWorld", update, false); gameDisplay.removeEventListener("scrollChanged", scrollChanged, false); removeEventListener(MouseEvent.MOUSE_DOWN, startScroll); removeEventListener(MouseEvent.MOUSE_OVER, mouseOver, false); removeEventListener(MouseEvent.MOUSE_OUT, mouseOut, false); if (scrolling){ stage.removeEventListener(MouseEvent.MOUSE_UP, stopScroll, false); }; slammingManager = null; display = null; gameDisplay = null; slammings = null; background = null; arrow = null; } public function setLives(_arg1:Number):void{ background.lives_text.text = Math.max(0, _arg1).toString(); } public function setSlammingsLeft(_arg1:Number, _arg2:Number):void{ if (!godMode){ background.numberSlammings.text = ("x " + _arg2); background.bar.scaleX = _arg1; } else { background.numberSlammings.text = "∞"; background.bar.visible = false; }; } private function startScroll(_arg1:MouseEvent):void{ if (mouseX > trackWidth){ return; }; scrolling = true; stage.addEventListener(MouseEvent.MOUSE_UP, stopScroll, false, 0, true); } private function update(_arg1:Event=null):void{ var _local6:Slamming; var _local7:MovieClip; if (scrolling){ scroll(); }; var _local2:Object = slammingManager.liveSlammings; var _local3:Number = (display.worldWidth / display.drawScale); var _local4:Boolean; var _local5:int; for each (_local6 in _local2) { _local7 = MovieClip(slammings[_local5]); _local7.visible = true; _local7.scaleX = (slammings[_local5].scaleY = _local6.scale); _local7.rotation = (_local6.bodyAngle * (180 / Math.PI)); _local7.x = (((_local6.slammingBody.position.x / _local3) * (trackWidth - (padding * 2))) + padding); if ((_local6.slammingBody.position.x * display.drawScale) > (gameDisplay.displayWidth - gameDisplay.scrollPosition)){ _local4 = true; }; if (_local6.slammingBody.position.x > 56){ if (_local7.currentFrame == 1){ _local7.play(); }; }; _local5++; }; while (_local5 < slammingManager.maxActiveSlammings) { slammings[_local5].visible = false; _local5++; }; if (_local4){ arrow.show(); } else { arrow.hide(); }; } private function scroll(_arg1:MouseEvent=null):void{ gameDisplay.scrollToPercent((mouseX / trackWidth)); } private function scrollChanged(_arg1:Event):void{ scrollToPercent(-(((display.x - 320) / display.worldWidth))); } public function updateBlips():void{ var _local1:Number = Math.max(slammings.length, slammingManager.maxActiveSlammings); var _local2:int; while (_local2 < _local1) { if (slammings.length <= _local2){ addBlip(); }; if (slammingManager.maxActiveSlammings <= _local2){ removeChild(slammings[_local2]); delete slammings[_local2]; }; _local2++; }; setSlammingsLeft(1, slammingManager.maxTotalSlammings); } private function mouseOut(_arg1:MouseEvent):void{ MouseControl.instance.removeHandCursor(); } private function stopScroll(_arg1:MouseEvent):void{ scrolling = false; stage.removeEventListener(MouseEvent.MOUSE_UP, stopScroll, false); } private function addBlip():void{ var _local1:MovieClip = new iconSymbol(); addChild(_local1); slammings.push(_local1); _local1.y = 42.5; } private function mouseOver(_arg1:MouseEvent):void{ MouseControl.instance.setHandCursor("point"); } private function scrollToPercent(_arg1:Number):void{ scrollbar.x = ((trackWidth * _arg1) - (scrollbar.width / 2)); scrollbar.x = (Math.min(Math.max(scrollbar.x, 0), (trackWidth - scrollbar.width)) + 3); } } }//package spill.slammings.display
Section 344
//ToolMenu (spill.slammings.display.ToolMenu) package spill.slammings.display { import flash.events.*; import flash.display.*; public class ToolMenu extends Sprite { private var menuItems:Array; public var clickedToolID:int;// = 0 public var selectedToolID:int;// = 0 public var spacingX:Number;// = 0 public var spacingY:Number;// = 42 public var toolHintID:Number;// = 0 public static const PAUSE_CLICK_EVENT:String = "hintClicked"; public function ToolMenu(){ mouseEnabled = false; } public function setAvailableTools(_arg1:Array):void{ var _local2:Number = 0; var _local3:Number = 0; var _local4:int; while (_local4 < _arg1.length) { if (_arg1[_local4].available > 0){ menuItems[_local4].y = _local2; menuItems[_local4].x = _local3; menuItems[_local4].visible = true; menuItems[_local4].setAmount(_arg1[_local4].available); _local2 = (_local2 + spacingY); _local3 = (_local3 + spacingX); } else { menuItems[_local4].visible = false; }; _local4++; }; } public function highlightTool(_arg1:Number):void{ menuItems[_arg1].pow(); setChildIndex(menuItems[_arg1], (menuItems.length - 1)); } public function showHint(_arg1:Number):void{ toolHintID = _arg1; } public function setSelectedTool(_arg1:int):void{ menuItems[selectedToolID].setSelected(false); selectedToolID = _arg1; menuItems[selectedToolID].setSelected(true); } private function toolClicked(_arg1:Event):void{ clickedToolID = _arg1.currentTarget.id; dispatchEvent(new Event("toolSelected")); } public function destroy():void{ var _local1:int; while (_local1 < menuItems.length) { menuItems[_local1].setEnabled(false); menuItems[_local1].removeEventListener("toolClicked", toolClicked); _local1++; }; menuItems = null; } public function setTools(_arg1:Array):void{ menuItems = new Array(); var _local2:int; while (_local2 < _arg1.length) { menuItems[_local2] = new ToolMenuItem(_arg1[_local2]); menuItems[_local2].addEventListener("toolClicked", toolClicked, false, 0, true); addChild(menuItems[_local2]); _local2++; }; setAvailableTools(_arg1); menuItems[0].setSelected(true); } } }//package spill.slammings.display
Section 345
//ToolMenuItem (spill.slammings.display.ToolMenuItem) package spill.slammings.display { import flash.events.*; import flash.display.*; import spill.slammings.*; import fl.motion.*; public class ToolMenuItem extends Sprite { public var id:int; public var backgroundClass:Class; public var background:MovieClip; public var button:MovieClip; public var selected:Boolean;// = false private var buttonAnimation_animator:Animator; public function ToolMenuItem(_arg1:Object){ backgroundClass = Button_background; super(); id = _arg1.id; mouseEnabled = false; background = new backgroundClass(); background.stop(); addChild(background); button = new (_arg1.buttonClass); button.stop(); button.mouseChildren = false; background.addChild(button); setEnabled(true); background.key_text.text = _arg1.keyString; var _local2:XML = <Motion duration="14" xmlns="fl.motion.*" xmlns:geom="flash.geom.*" xmlns:filters="flash.filters.*"> <source> <Source frameRate="30" x="31" y="20" scaleX="1" scaleY="1" rotation="0" elementType="movie clip" symbolName="Symbol 1"> <dimensions> <geom:Rectangle left="0" top="0" width="62" height="40"/> </dimensions> <transformationPoint> <geom:Point x="0.5" y="0.5"/> </transformationPoint> </Source> </source> <Keyframe index="0" tweenSnap="true" tweenSync="true"> <tweens> <SimpleEase ease="1"/> </tweens> </Keyframe> <Keyframe index="5" tweenSnap="true" tweenSync="true" scaleX="1.2" scaleY="1.2"> <color> <Color brightness="0.4"/> </color> <tweens> <SimpleEase ease="-1"/> </tweens> </Keyframe> <Keyframe index="13" scaleX="1" scaleY="1"> <color> <Color/> </color> </Keyframe> </Motion> ; buttonAnimation_animator = new Animator(_local2, background); } private function mouseUp(_arg1:Event):void{ button.gotoAndStop("up"); } public function setAmount(_arg1:Number):void{ if (_arg1 > 1000){ background.amount_text.text = ""; } else { background.amount_text.text = ("x" + _arg1); }; } private function mouseDown(_arg1:Event):void{ button.gotoAndStop("down"); dispatchEvent(new Event("toolClicked")); MouseControl.instance.removeHandCursor(); } private function mouseOut(_arg1:Event):void{ button.gotoAndStop("up"); MouseControl.instance.removeHandCursor(); } public function setSelected(_arg1:Boolean):void{ if (selected == _arg1){ return; }; selected = _arg1; if (_arg1){ button.gotoAndStop("selected"); } else { button.gotoAndStop("up"); }; setEnabled(!(_arg1)); } private function clicked(_arg1:Event):void{ } public function pow():void{ buttonAnimation_animator.play(); } private function mouseOver(_arg1:Event):void{ button.gotoAndStop("over"); MouseControl.instance.setHandCursor("point"); } public function setEnabled(_arg1:Boolean):void{ if (_arg1){ button.addEventListener(MouseEvent.MOUSE_OVER, mouseOver, false, 0, true); button.addEventListener(MouseEvent.MOUSE_OUT, mouseOut, false, 0, true); button.addEventListener(MouseEvent.MOUSE_UP, mouseUp, false, 0, true); button.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown, false, 0, true); } else { button.removeEventListener(MouseEvent.MOUSE_OVER, mouseOver); button.removeEventListener(MouseEvent.MOUSE_OUT, mouseOut); button.removeEventListener(MouseEvent.MOUSE_UP, mouseUp); button.removeEventListener(MouseEvent.MOUSE_DOWN, mouseDown); }; } } }//package spill.slammings.display
Section 346
//WorldDisplay (spill.slammings.display.WorldDisplay) package spill.slammings.display { import flash.display.*; import spill.physics.*; public class WorldDisplay extends spDisplay { public var bg:Sprite; public var ground:Sprite; public var debug:Sprite; public var worldWidth:Number;// = 0x0500 public var deadSlammings:Sprite; public var slammings:Sprite; public var tools:Sprite; public var worldHeight:Number;// = 480 public var overSlammings:Sprite; public var dynamicGround:Sprite; public var mouse:Sprite; public var background:Sprite; public function WorldDisplay(_arg1:spWorld){ background = new Sprite(); ground = new Sprite(); dynamicGround = new Sprite(); deadSlammings = new Sprite(); slammings = new Sprite(); overSlammings = new Sprite(); tools = new Sprite(); mouse = new Sprite(); debug = new Sprite(); bg = new Sprite(); super(_arg1); ground.cacheAsBitmap = true; deadSlammings.cacheAsBitmap = true; bg.addChild(background); bg.addChild(ground); bg.addChild(deadSlammings); bg.cacheAsBitmap = true; bg.name = "BG container"; addChild(bg); addChild(dynamicGround); addChild(tools); addChild(slammings); addChild(overSlammings); addChild(debug); addChild(mouse); mouse.mouseEnabled = false; debugLayer = debug; debug.visible = false; } override public function destroy():void{ super.destroy(); removeChild(background.parent); removeChild(tools); removeChild(slammings); removeChild(overSlammings); removeChild(debug); removeChild(mouse); background = null; ground = null; deadSlammings = null; tools = null; slammings = null; overSlammings = null; debug = null; mouse = null; } } }//package spill.slammings.display
Section 347
//SlammingDeathEvent (spill.slammings.events.SlammingDeathEvent) package spill.slammings.events { import flash.events.*; import spill.slammings.character.*; public class SlammingDeathEvent extends Event { public var slamming:Slamming; public static const SLAMMING_DIED:String = "slammingDied"; public function SlammingDeathEvent(_arg1:String, _arg2:Slamming, _arg3:Boolean=false, _arg4:Boolean=false){ super(_arg1, _arg3, _arg4); slamming = _arg2; } } }//package spill.slammings.events
Section 348
//Level1 (spill.slammings.levels.Level1) package spill.slammings.levels { import flash.events.*; import spill.slammings.*; import spill.physics.*; import Box2D.Common.Math.*; import spill.slammings.display.*; import spill.slammings.tools.*; import spill.slammings.character.*; import flash.filters.*; import spill.slammings.sound.*; import spill.physics.shapes.*; import spill.physics.elements.*; public class Level1 extends Game { public function Level1(_arg1:Boolean):void{ super(_arg1); levelNum = 0; } override protected function init(_arg1:Event=null):void{ slammingTypes = [Slamming1, Level1Boss]; music = "level1"; super.init(); slammingManager.maxActiveSlammings = 9; slammingManager.minActiveSlammings = 2; slammingManager.minInterval = 50; slammingManager.rebirthChance = (godMode) ? 0.5 : 0.25; if (!godMode){ slammingManager.maxTotalSlammings = 40; slammingManager.slammingQueue[30] = Level1Boss; }; levelMap.updateBlips(); var _local2:spRoom = new spRoom(); _local2.width = 75; _local2.height = 40; _local2.type = "ground"; world.addElement(_local2); var _local3:SoftBridge = new SoftBridge(); _local3.y = 17; _local3.x = 25.25; _local3.segmentWidth = 1.5; _local3.segmentHeight = 1; _local3.segmentCount = 11; _local3.suspenderHeight = 0.9; _local3.suspenderForce = 25; _local3.depth = 3.5; world.addElement(_local3); var _local4:WaterElement = new WaterElement(); _local4.x = 26; _local4.y = 19.5; world.addElement(_local4); ground = new GameGround(); ground.x = 0; ground.y = 20.75; ground.bottom = 8; ground.filters = [new GlowFilter(0x280A00, 1, 0, 60, 3, 1, true)]; ground.points[0] = new b2Vec2(-0.5, -1.3); ground.points[1] = new b2Vec2(1.95, -0.7); ground.points[2] = new b2Vec2(4.3, -0.7); ground.points[3] = new b2Vec2(6.2, -1.35); ground.points[4] = new b2Vec2(8.25, -1.9); ground.points[5] = new b2Vec2(10.4, -2.2); ground.points[6] = new b2Vec2(12.3, -2.2); ground.points[7] = new b2Vec2(14, -1.83431457505076); ground.points[8] = new b2Vec2(16, -1.8); ground.points[9] = new b2Vec2(18, -2.23431457505076); ground.points[10] = new b2Vec2(20.15, -3.05); ground.points[11] = new b2Vec2(22, -3.76568542494924); ground.points[12] = new b2Vec2(24, -4.2); ground.points[13] = new b2Vec2(26, -4.16568542494924); ground.points[14] = new b2Vec2(26, 3); ground.points[15] = new b2Vec2(33.6, 3.25); ground.points[16] = new b2Vec2(41, 3); ground.points[17] = new b2Vec2(41, -4.3); ground.points[18] = new b2Vec2(43.25, -4.3); ground.points[19] = new b2Vec2(45.4, -3.9); ground.points[20] = new b2Vec2(47.2, -3); ground.points[21] = new b2Vec2(49.2, -2.3); ground.points[22] = new b2Vec2(51.55, -2); ground.points[23] = new b2Vec2(53.6, -2); ground.points[24] = new b2Vec2(55.45, -2.4); ground.points[25] = new b2Vec2(57.05, -2.95); ground.points[26] = new b2Vec2(59, -3.6); ground.points[27] = new b2Vec2(61.35, -4); ground.points[28] = new b2Vec2(66, -4); world.addElement(ground); var _local5:DeadZone = new DeadZone(); _local5.x = 67; _local5.y = 12; _local5.width = 1; _local5.height = 12; world.addElement(_local5); house.x = 0x0500; house.y = 350; } } }//package spill.slammings.levels
Section 349
//Level2 (spill.slammings.levels.Level2) package spill.slammings.levels { import flash.events.*; import spill.slammings.*; import spill.physics.*; import Box2D.Common.Math.*; import spill.slammings.display.*; import spill.slammings.tools.*; import spill.slammings.character.*; import flash.filters.*; import spill.physics.shapes.*; import spill.physics.elements.*; public class Level2 extends Game { public function Level2(_arg1:Boolean):void{ super(_arg1); levelNum = 1; } override protected function init(_arg1:Event=null):void{ var _local6:int; backgroundSymbol = Background3; foregroundSymbol = Foreground3; slammingTypes = [Slamming1, Slamming2, FlyingSlamming, [Level1Boss, Level2Boss]]; super.init(); slammingManager.maxActiveSlammings = 10; slammingManager.minActiveSlammings = 5; slammingManager.slammingStartX = 0; slammingManager.slammingStartY = 15; slammingManager.rebirthChance = (godMode) ? 0.75 : 0.5; if (!godMode){ slammingManager.maxTotalSlammings = 60; _local6 = 0; while (_local6 < 60) { slammingManager.slammingQueue[(_local6 - 2)] = Slamming1; slammingManager.slammingQueue[(_local6 - 1)] = Slamming2; slammingManager.slammingQueue[_local6] = FlyingSlamming; _local6 = (_local6 + 3); }; slammingManager.slammingQueue[30] = Level1Boss; slammingManager.slammingQueue[50] = Level2Boss; bronzeScore = 1800; silverScore = 3600; goldScore = 5400; }; levelMap.updateBlips(); var _local2:spRoom = new spRoom(); _local2.width = 70; _local2.height = 40; _local2.type = "ground"; world.addElement(_local2); var _local3:SoftBridge = new SoftBridge(); _local3.y = 14; _local3.x = 25.25; _local3.segmentWidth = 1.5; _local3.segmentHeight = 1; _local3.segmentCount = 11; _local3.suspenderHeight = 0.9; _local3.suspenderForce = 25; _local3.depth = 3.5; _local3.segmentSymbol = Bridgepart_ice; world.addElement(_local3); var _local4:WaterElement = new WaterElement(); _local4.x = 26; _local4.y = 16.2; world.addElement(_local4); ground = new GameGround(); ground.x = 0; ground.y = 20.75; ground.bottom = 8; ground.groundTexture = GroundTexture3; ground.grassTexture = IceTexture; ground.grassOffset = 5; ground.filters = [new GlowFilter(3102858, 1, 0, 60, 3, 1, true)]; ground.points.push(new b2Vec2(-2, -3.9)); ground.points.push(new b2Vec2(2.1, -2.4)); ground.points.push(new b2Vec2(4.55, -1.7)); ground.points.push(new b2Vec2(7, -1.15)); ground.points.push(new b2Vec2(9.7, -1.15)); ground.points.push(new b2Vec2(12.2, -2.15)); ground.points.push(new b2Vec2(14.2, -3.1)); ground.points.push(new b2Vec2(16.05, -4.2)); ground.points.push(new b2Vec2(17.5, -5.2)); ground.points.push(new b2Vec2(19.1, -5.95)); ground.points.push(new b2Vec2(20.5, -6.65)); ground.points.push(new b2Vec2(22.35, -7.25)); ground.points.push(new b2Vec2(24.35, -7.45)); ground.points.push(new b2Vec2(26, -7.4)); ground.points.push(new b2Vec2(26, 2)); ground.points.push(new b2Vec2(33.6, 2.25)); ground.points.push(new b2Vec2(41, 2)); ground.points.push(new b2Vec2(41, -7.35)); ground.points.push(new b2Vec2(43.25, -7.25)); ground.points.push(new b2Vec2(45.4, -4.65)); ground.points.push(new b2Vec2(47.3, -3.35)); ground.points.push(new b2Vec2(49.3, -2.6)); ground.points.push(new b2Vec2(51.6, -2.3)); ground.points.push(new b2Vec2(53.4, -2.4)); ground.points.push(new b2Vec2(55.55, -2.75)); ground.points.push(new b2Vec2(57.15, -3.1)); ground.points.push(new b2Vec2(58.85, -3.55)); ground.points.push(new b2Vec2(61.35, -4)); ground.points.push(new b2Vec2(66, -4)); world.addElement(ground); var _local5:DeadZone = new DeadZone(); _local5.x = 67; _local5.y = 12; _local5.width = 1; _local5.height = 12; world.addElement(_local5); house.x = 0x0500; house.y = 350; } } }//package spill.slammings.levels
Section 350
//Level3 (spill.slammings.levels.Level3) package spill.slammings.levels { import flash.events.*; import spill.slammings.*; import spill.physics.*; import Box2D.Common.Math.*; import spill.slammings.display.*; import spill.slammings.tools.*; import spill.slammings.character.*; import spill.slammings.sound.*; import spill.physics.shapes.*; import spill.physics.elements.*; public class Level3 extends Game { public function Level3(_arg1:Boolean):void{ super(_arg1); levelNum = 2; } override protected function init(_arg1:Event=null):void{ var _local6:int; backgroundSymbol = Background2; foregroundSymbol = Foreground2; slammingTypes = [Slamming1, Slamming2, Slamming3, FlyingSlamming, LittleSlamming, [Level1Boss, Level2Boss, Level3Boss]]; music = "level3"; super.init(); slammingManager.livesLeft = 10; slammingManager.slammingStartY = 5; slammingManager.slammingSpeedX = 7; slammingManager.slammingSpeedXRandom = 7; slammingManager.slammingSpeedYRandom = -3; slammingManager.maxActiveSlammings = 11; slammingManager.minActiveSlammings = 8; slammingManager.rebirthChance = (godMode) ? 1 : 0.75; if (!godMode){ slammingManager.maxTotalSlammings = 80; _local6 = 10; while (_local6 < slammingManager.maxTotalSlammings) { slammingManager.slammingQueue[_local6] = Slamming1; slammingManager.slammingQueue[(_local6 - 1)] = Slamming2; slammingManager.slammingQueue[(_local6 - 2)] = Slamming3; slammingManager.slammingQueue[(_local6 - 3)] = FlyingSlamming; slammingManager.slammingQueue[(_local6 - 4)] = LittleSlamming; _local6 = (_local6 + 5); }; slammingManager.slammingQueue[30] = Level1Boss; slammingManager.slammingQueue[45] = Level2Boss; slammingManager.slammingQueue[70] = Level3Boss; bronzeScore = 2000; silverScore = 4000; goldScore = 6000; }; levelMap.updateBlips(); var _local2:spRoom = new spRoom(); _local2.width = 70; _local2.height = 40; _local2.type = "ground"; world.addElement(_local2); var _local3:SoftBridge = new SoftBridge(); _local3.y = 15; _local3.x = 9.25; _local3.segmentWidth = 1.5; _local3.segmentHeight = 1; _local3.segmentCount = 11; _local3.segmentSymbol = Bridgepart_2; _local3.suspenderHeight = 0.9; _local3.suspenderForce = 25; _local3.depth = 3.5; world.addElement(_local3); var _local4:WaterElement = new WaterElement(); _local4.x = 10; _local4.y = 17; _local4.symbol = Fire_mc; _local4.type = "fire"; world.addElement(_local4); ground = new GameGround(); ground.x = 0; ground.y = 20.75; ground.bottom = 8; ground.groundTexture = GroundTexture2; ground.grassTexture = GrassTexture2; ground.points = [new b2Vec2(-0.5, -12.1), new b2Vec2(2.25, -10.8), new b2Vec2(4.05, -9.3), new b2Vec2(7.1, -7.35), new b2Vec2(10, -6.35), new b2Vec2(10, -0.95), new b2Vec2(18.3, -0.85), new b2Vec2(25, -0.8), new b2Vec2(25, -6.3), new b2Vec2(27.25, -6.15), new b2Vec2(29.5, -5.35), new b2Vec2(32, -3.45), new b2Vec2(33.55, -2), new b2Vec2(35.9, -0.55), new b2Vec2(38.4, 0.4), new b2Vec2(41.65, 0.75), new b2Vec2(44.5, 0.5), new b2Vec2(47.05, -0.65), new b2Vec2(49.2, -2.25), new b2Vec2(51, -3.75), new b2Vec2(53.1, -4.95), new b2Vec2(55, -5.65), new b2Vec2(57.1, -6.2), new b2Vec2(58.65, -6.45), new b2Vec2(60.4, -6.7), new b2Vec2(62.55, -6.5), new b2Vec2(66, -6)]; world.addElement(ground); var _local5:DeadZone = new DeadZone(); _local5.x = 67; _local5.y = 12; _local5.width = 1; _local5.height = 12; world.addElement(_local5); house.x = 0x0500; house.y = 300; } } }//package spill.slammings.levels
Section 351
//Level4 (spill.slammings.levels.Level4) package spill.slammings.levels { import flash.events.*; import spill.slammings.*; import spill.physics.*; import Box2D.Common.Math.*; import spill.slammings.display.*; import spill.slammings.tools.*; import spill.slammings.character.*; import flash.filters.*; import spill.physics.shapes.*; import spill.physics.elements.*; public class Level4 extends Game { public function Level4(_arg1:Boolean):void{ super(_arg1); levelNum = 3; } override protected function init(_arg1:Event=null):void{ var _local6:int; backgroundSymbol = Background4; foregroundSymbol = Foreground4; slammingTypes = [Slamming1, Slamming2, Slamming3, FlyingSlamming, LittleSlamming, Slamming4, [Level1Boss, Level2Boss, Level3Boss, Level4Boss]]; super.init(); slammingManager.maxActiveSlammings = 12; slammingManager.slammingStartY = 5; slammingManager.slammingSpeedX = 7; slammingManager.slammingSpeedXRandom = 7; slammingManager.slammingSpeedYRandom = -3; slammingManager.rebirthChance = 1; if (!godMode){ slammingManager.maxTotalSlammings = 100; _local6 = 8; while (_local6 < slammingManager.maxTotalSlammings) { slammingManager.slammingQueue[(_local6 - 5)] = Slamming1; slammingManager.slammingQueue[(_local6 - 4)] = LittleSlamming; slammingManager.slammingQueue[(_local6 - 3)] = FlyingSlamming; slammingManager.slammingQueue[(_local6 - 2)] = Slamming3; slammingManager.slammingQueue[(_local6 - 1)] = Slamming2; slammingManager.slammingQueue[_local6] = Slamming4; _local6 = (_local6 + 6); }; slammingManager.slammingQueue[30] = Level1Boss; slammingManager.slammingQueue[50] = Level2Boss; slammingManager.slammingQueue[70] = Level3Boss; slammingManager.slammingQueue[90] = Level4Boss; bronzeScore = 2000; silverScore = 4000; goldScore = 6000; }; levelMap.updateBlips(); var _local2:spRoom = new spRoom(); _local2.width = 70; _local2.height = 40; _local2.type = "ground"; world.addElement(_local2); var _local3:SoftBridge = new SoftBridge(); _local3.y = 17; _local3.x = 34.25; _local3.segmentWidth = 1.5; _local3.segmentHeight = 1; _local3.segmentCount = 11; _local3.segmentSymbol = Bridgepart_4; _local3.suspenderHeight = 0.9; _local3.suspenderForce = 25; _local3.depth = 3.5; world.addElement(_local3); var _local4:WaterElement = new WaterElement(); _local4.x = 35; _local4.y = 19; _local4.width = 7.55; _local4.symbol = Toxic_mc; world.addElement(_local4); ground = new GameGround(); ground.x = 0; ground.y = 20.75; ground.bottom = 8; ground.groundTexture = GroundTexture4; ground.grassTexture = GrassTexture4; ground.filters = [new GlowFilter(17, 1, 0, 60, 3, 1, true)]; ground.points = [new b2Vec2(-0.5, -12.75), new b2Vec2(1.95, -9.65), new b2Vec2(4.2, -7), new b2Vec2(6.9, -4.9), new b2Vec2(9.55, -3.65), new b2Vec2(13, -2.65), new b2Vec2(16.6, -2.45), new b2Vec2(19.9, -2.95), new b2Vec2(23.05, -4.65), new b2Vec2(25.6, -5.4), new b2Vec2(28.2, -5.6), new b2Vec2(30.85, -5), new b2Vec2(33.1, -4.45), new b2Vec2(35, -4.3), new b2Vec2(35, 2.5), new b2Vec2(42.85, 2.6), new b2Vec2(50, 2.5), new b2Vec2(50, -4.3), new b2Vec2(51.85, -4.05), new b2Vec2(53.3, -4.5), new b2Vec2(54.95, -4.85), new b2Vec2(57.1, -4.8), new b2Vec2(59, -4.5), new b2Vec2(62.6, -4.5), new b2Vec2(64.3, -4), new b2Vec2(68, -4)]; world.addElement(ground); var _local5:DeadZone = new DeadZone(); _local5.x = 67; _local5.y = 12; _local5.width = 1; _local5.height = 12; world.addElement(_local5); house.x = 0x0500; house.y = 340; } } }//package spill.slammings.levels
Section 352
//Level5 (spill.slammings.levels.Level5) package spill.slammings.levels { import flash.events.*; import spill.slammings.*; import spill.physics.*; import Box2D.Common.Math.*; import spill.slammings.display.*; import spill.slammings.tools.*; import spill.slammings.character.*; import flash.filters.*; import spill.physics.shapes.*; import spill.physics.elements.*; public class Level5 extends Game { public function Level5(_arg1:Boolean):void{ super(_arg1); levelNum = 4; } override protected function init(_arg1:Event=null):void{ var _local6:int; backgroundSymbol = Background5; foregroundSymbol = Foreground5; slammingTypes = [Slamming1, Slamming2, Slamming3, FlyingSlamming, LittleSlamming, Slamming4, Slamming5, [Level1Boss, Level2Boss, Level3Boss, Level4Boss, Level5Boss]]; super.init(); slammingManager.maxActiveSlammings = 13; slammingManager.slammingStartY = 10; slammingManager.rebirthChance = 1; if (!godMode){ slammingManager.maxTotalSlammings = 120; _local6 = 12; while (_local6 < slammingManager.maxTotalSlammings) { slammingManager.slammingQueue[(_local6 - 6)] = Slamming5; slammingManager.slammingQueue[(_local6 - 5)] = Slamming1; slammingManager.slammingQueue[(_local6 - 4)] = LittleSlamming; slammingManager.slammingQueue[(_local6 - 3)] = FlyingSlamming; slammingManager.slammingQueue[(_local6 - 2)] = Slamming3; slammingManager.slammingQueue[(_local6 - 1)] = Slamming2; slammingManager.slammingQueue[_local6] = Slamming4; _local6 = (_local6 + 7); }; slammingManager.slammingQueue[30] = Level1Boss; slammingManager.slammingQueue[50] = Level2Boss; slammingManager.slammingQueue[70] = Level3Boss; slammingManager.slammingQueue[90] = Level4Boss; slammingManager.slammingQueue[110] = Level5Boss; bronzeScore = 2000; silverScore = 4000; goldScore = 6000; }; levelMap.updateBlips(); var _local2:spRoom = new spRoom(); _local2.width = 70; _local2.height = 40; _local2.type = "ground"; world.addElement(_local2); var _local3:SoftBridge = new SoftBridge(); _local3.segmentSymbol = Bridgepart5; _local3.y = 17; _local3.x = 14.75; _local3.segmentWidth = 1.6; _local3.segmentHeight = 1; _local3.segmentCount = 6; _local3.suspenderHeight = 0.9; _local3.suspenderForce = 25; _local3.depth = 3.5; world.addElement(_local3); _local3 = new SoftBridge(); _local3.segmentSymbol = Bridgepart5; _local3.y = 17; _local3.x = 29.75; _local3.segmentWidth = 1.6; _local3.segmentHeight = 1; _local3.segmentCount = 6; _local3.suspenderHeight = 0.9; _local3.suspenderForce = 25; _local3.depth = 3.5; world.addElement(_local3); var _local4:WaterElement = new WaterElement(); _local4.x = 15.5; _local4.y = 19.5; _local4.width = 4; world.addElement(_local4); _local4 = new WaterElement(); _local4.x = 30.5; _local4.y = 19.5; _local4.width = 4; world.addElement(_local4); ground = new GameGround(); ground.x = 0; ground.y = 20.75; ground.bottom = 8; ground.filters = [new GlowFilter(724749, 1, 0, 60, 3, 1, true)]; ground.groundTexture = GroundTexture5; ground.grassTexture = GrassTexture5; ground.points = [new b2Vec2(-0.5, -10.2), new b2Vec2(1.3, -8.1), new b2Vec2(3.4, -6.05), new b2Vec2(5.75, -4.65), new b2Vec2(7.85, -3.9), new b2Vec2(10.2, -4), new b2Vec2(12.2, -4.7), new b2Vec2(14.2, -4.7), new b2Vec2(15.5, -4.4), new b2Vec2(15.5, 2.6), new b2Vec2(23.5, 2.6), new b2Vec2(23.5, -4.25), new b2Vec2(27.2, -5.15), new b2Vec2(30.5, -4.35), new b2Vec2(30.5, 2.6), new b2Vec2(38.5, 2.6), new b2Vec2(38.5, -4.35), new b2Vec2(41.6, -4.65), new b2Vec2(44.3, -5.3), new b2Vec2(46.85, -6.15), new b2Vec2(49.4, -6.8), new b2Vec2(51.95, -6.4), new b2Vec2(54, -5.4), new b2Vec2(55.5, -4.25), new b2Vec2(57.15, -3.8), new b2Vec2(59, -3.6), new b2Vec2(61.35, -3.9), new b2Vec2(66, -4)]; world.addElement(ground); var _local5:DeadZone = new DeadZone(); _local5.x = 67; _local5.y = 12; _local5.width = 1; _local5.height = 12; world.addElement(_local5); house.x = 0x0500; house.y = 350; } } }//package spill.slammings.levels
Section 353
//GameOver (spill.slammings.menus.GameOver) package spill.slammings.menus { import flash.events.*; import flash.display.*; import spill.slammings.*; import spill.localisation.*; import flash.ui.*; public class GameOver extends MovieClip { private var medalNames:Array; private var nextLevelMode:Boolean; private var nextLevelNum:Number; private var mc:GameOver_mc; private var main:Main; private var stats:GameStats; public function GameOver(_arg1:Main, _arg2:GameStats){ var _local4:String; medalNames = ["{None}", "{Bronze}", "{Silver}", "{Gold}"]; super(); main = _arg1; stats = _arg2; mc = new GameOver_mc(); addChild(mc); Utils.initButton(mc.mainmenu_btn, main.goMainMenu); Utils.initButton(mc.submit_btn, O01l10); Utils.initButton(mc.retry_btn, retry); Utils.initButton(mc.stats_btn, showStats); Utils.initBrandinButton(mc.moregames_btn, "More_Games_Button_Game_Over"); var _local3:Boolean; if (!stats.godMode){ if (!stats.success){ _local3 = true; } else { if (stats.levelNum == 4){ _local3 = true; } else { nextLevelMode = false; nextLevelNum = (stats.levelNum + 1); }; }; } else { if (stats.levelNum == 4){ _local3 = true; } else { if (SaveGameData.getLevelStatus((stats.levelNum + 1), stats.godMode)){ nextLevelMode = true; nextLevelNum = (stats.levelNum + 1); } else { _local3 = true; }; }; }; mc.statistics.addEventListener(MouseEvent.CLICK, hideStats, false, 0, true); if (_local3){ mc.nextlevel_btn.visible = false; } else { Utils.initButton(mc.nextlevel_btn, nextLevel); }; mc.score_txt.text = stats.score.toString(); mc.name_txt.embedFonts = SpilGame.currentLanguage.embedFonts; mc.name_txt.text = SpilGame.getString("Player_Name"); mc.name_txt.addEventListener(KeyboardEvent.KEY_DOWN, keyDown, false, 0, true); if (stats.success){ _local4 = (stats.gameComplete) ? "game_complete" : "level_complete"; } else { _local4 = "game_over"; }; mc.background.gotoAndStop(_local4); mc.title.gotoAndStop(_local4); mc.statistics.stop(); mc.statistics.visible = false; mc.medal.gotoAndStop((stats.medalEarned + 1)); addEventListener(Event.ADDED_TO_STAGE, addedToStage, false, 0, true); } private function keyDown(_arg1:KeyboardEvent):void{ if (_arg1.keyCode == Keyboard.ENTER){ O01l10(); }; } private function addedToStage(_arg1:Event):void{ removeEventListener(Event.ADDED_TO_STAGE, addedToStage); stage.focus = mc.name_txt; mc.name_txt.setSelection(0, 20); } private function showStats(_arg1:Event):void{ mc.statistics.gotoAndPlay(1); mc.statistics.visible = true; var _local2:LocalizedTextField = mc.statistics.stats.txt1; var _local3:LocalizedTextField = mc.statistics.stats.txt2; var _local4:Number = Math.round((stats.timePlayed / 1000)); var _local5:Number = Math.floor((_local4 / 60)); _local4 = (_local4 - (60 * _local5)); var _local6:String = (((_local5.toString() + ":") + ((_local4 < 10)) ? "0" : "") + _local4.toString()); _local2.text = ((((((((("{score}\n" + "{medal_earned}\n") + "{biggest_combo}\n") + "{hardest_impact}\n") + "{max_velocity}\n") + "{slammings_escaped}\n") + "{slammings_killed}\n") + "{time_played}\n") + "{tools_used}\n") + "{tools_saved}"); _local3.text = ((((((((((((((((((stats.score.toString() + "\n") + medalNames[stats.medalEarned]) + "\n") + stats.biggestCombo.toString()) + "\n") + stats.hardestImpact.toString()) + " kg*m/s\n") + stats.maxSlammingVelocity.toString()) + " m/s \n") + stats.slammingsEscaped.toString()) + "\n") + stats.slammingsKilled.toString()) + "\n") + _local6) + "\n") + stats.toolsUsed.toString()) + "\n") + stats.toolsSaved.toString()); } private function retry(_arg1:Event):void{ main.startGame(stats.levelNum, stats.godMode); } private function nextLevel(_arg1:Event):void{ main.startGame(nextLevelNum, nextLevelMode); } private function O01l10(_arg1:Event=null):void{ var _local2:String = mc.name_txt.text; var _local3:Number = stats.score; if (_local2.length >= 1){ main.O01l10(_local2, _local3); }; } private function hideStats(_arg1:Event):void{ mc.statistics.play(); } } }//package spill.slammings.menus
Section 354
//HighScoreScreen (spill.slammings.menus.HighScoreScreen) package spill.slammings.menus { import flash.events.*; import flash.display.*; import spill.slammings.*; public class HighScoreScreen extends MovieClip { private var mc:Highscore_mc; private var main:Main; private var hs:O11111OO11; private var stats:GameStats; public function HighScoreScreen(_arg1:Main, _arg2:O11111OO11, _arg3:GameStats){ main = _arg1; stats = _arg3; mc = new Highscore_mc(); hs = _arg2; hs.x = 90; hs.y = 85; hs.addEventListener("000111000100", back, false, 0, true); addChild(mc); addChild(hs); Utils.initButton(mc.back_btn, back); Utils.initBrandinButton(mc.moregames_btn, "More_Games_Button_High_Score"); } private function back(_arg1:Event=null):void{ hs.removeEventListener("000111000100", back); removeChild(hs); if (stats){ main.goLevelSelectMenu(stats.godMode); } else { main.goMainMenu(); }; } } }//package spill.slammings.menus
Section 355
//LevelSelectionMenu (spill.slammings.menus.LevelSelectionMenu) package spill.slammings.menus { import flash.events.*; import flash.display.*; import spill.slammings.*; import spill.slammings.sound.*; import spill.slammings.controls.*; import sfx.*; import spill.localisation.*; public class LevelSelectionMenu extends MovieClip { private var tooltip:Tooltip; private var mc:MovieClip; private var main:Main; private var godMode:Boolean; public function LevelSelectionMenu(_arg1:Main, _arg2:Boolean):void{ main = _arg1; godMode = _arg2; if (_arg2){ mc = new LevelSelectionGodMode_mc(); } else { mc = new LevelSelectionCampaign_mc(); }; addChild(mc); tooltip = new Tooltip(); addChild(tooltip); initButton(mc.level1_btn, 0); initButton(mc.level2_btn, 1); initButton(mc.level3_btn, 2); initButton(mc.level4_btn, 3); initButton(mc.level5_btn, 4); initIcon(mc.level1_icon, 0); initIcon(mc.level2_icon, 1); initIcon(mc.level3_icon, 2); initIcon(mc.level4_icon, 3); initIcon(mc.level5_icon, 4); Utils.initBrandinButton(mc.moregames_btn, "More_Games_Button_Level_Selection"); Utils.initButton(mc.back_btn, goBack); } private function mouseOver(_arg1:MouseEvent):void{ var _local2:Number = _arg1.currentTarget.levelNum; showToolTip(_local2, godMode, _arg1.currentTarget.unlocked); if (_arg1.currentTarget.unlocked){ SoundFX.playSound(levelselect_touch, 1, 1, 0, 3); }; } private function hideTooltip():void{ tooltip.hide(); } private function initButton(_arg1:MovieClip, _arg2:Number):void{ if (!_arg1){ trace((("level " + _arg2) + " button missing")); return; }; _arg1.levelNum = _arg2; _arg1.stop(); _arg1.addEventListener(MouseEvent.MOUSE_OVER, mouseOver); _arg1.addEventListener(MouseEvent.MOUSE_OUT, mouseOut); if (SaveGameData.getLevelStatus(_arg2, godMode) == -1){ _arg1.gotoAndStop("_disabled"); _arg1.mouseChildren = false; _arg1.unlocked = false; } else { _arg1.buttonMode = true; _arg1.addEventListener(MouseEvent.CLICK, buttonClicked); _arg1.unlocked = true; }; } private function initIcon(_arg1:MovieClip, _arg2:Number):void{ _arg1.gotoAndStop((SaveGameData.getLevelStatus(_arg2, godMode) + 2)); } private function showToolTip(_arg1:Number, _arg2:Boolean, _arg3:Boolean):void{ var _local4:Object; var _local5:String; if (!_arg3){ tooltip.show(SpilGame.getString("Locked_Message").replace("XXX", (_arg2) ? (_arg1 + 1) : _arg1)); } else { _local4 = SaveGameData.getLevelData(_arg1, _arg2); if (_local4.status == 3){ _local5 = SpilGame.getString("Score_Best").replace("XXX", _local4.bestScore); } else { _local5 = SpilGame.getString("Medal_Requirement"); if (_local4.status == 2){ _local5 = _local5.replace("XXX", _local4.goldScore); _local5 = _local5.replace("YYY", SpilGame.getString("Gold")); } else { if (_local4.status == 1){ _local5 = _local5.replace("XXX", _local4.silverScore); _local5 = _local5.replace("YYY", SpilGame.getString("Silver")); } else { if (_local4.status == 0){ _local5 = _local5.replace("XXX", _local4.bronzeScore); _local5 = _local5.replace("YYY", SpilGame.getString("Bronze")); }; }; }; }; tooltip.show(_local5); }; tooltip.y = (240 - tooltip.height); tooltip.x = ((_arg1 * 105) + 5); } private function goBack(_arg1:Event):void{ main.goMainMenu(); } private function mouseOut(_arg1:MouseEvent):void{ hideTooltip(); } private function buttonClicked(_arg1:MouseEvent):void{ var _local2:Number = _arg1.currentTarget.levelNum; if (SaveGameData.getLevelStatus(_local2, godMode) >= 0){ main.startGame(_local2, godMode); SoundFX.playSound(levelselect_press); }; } } }//package spill.slammings.menus
Section 356
//MainMenu (spill.slammings.menus.MainMenu) package spill.slammings.menus { import flash.events.*; import flash.display.*; import fl.transitions.*; import spill.slammings.*; import spill.physics.*; import flash.filters.*; import spill.slammings.controls.*; import fl.motion.easing.*; import flash.text.*; import spill.localisation.*; import flash.net.*; public class MainMenu extends MovieClip { private var modeMenu:LevelModeMenu; private var musicVolumeControl:VolumeControl; private var yTween:Tween; private var soundVolumeControl:VolumeControl; private var mc:MainMenu_mc; private var main:Main; private var xTween:Tween; private var qualityControl:QualityControl; public function MainMenu(_arg1:Main):void{ main = _arg1; mc = new MainMenu_mc(); addChild(mc); Utils.initButton(mc.start_btn, startGame); Utils.initButton(mc.highscores_btn, main.goHighScores); Utils.initButton(mc.htp_btn, main.goTutorial); Utils.initBrandinButton(mc.moregames_btn, "More_Games_Button_Main_Menu"); modeMenu = new LevelModeMenu(); modeMenu.x = 322; modeMenu.y = 239; modeMenu.visible = false; addChild(modeMenu); Utils.initButton(modeMenu.godmode_btn, goGodModeMenu); Utils.initButton(modeMenu.campaign_btn, goCampaignMenu); Utils.initButton(modeMenu.cancel_btn, cancelLevelSelection); musicVolumeControl = new VolumeControl(mc.music, true); soundVolumeControl = new VolumeControl(mc.sound, false); qualityControl = new QualityControl(mc.qualityControl); var _local2:TextField = new TextField(); _local2.text = "v 1.0"; _local2.width = 70; _local2.height = 20; _local2.selectable = false; _local2.embedFonts = true; _local2.antiAliasType = AntiAliasType.ADVANCED; _local2.setTextFormat(new TextFormat("Comic Sans MS", 10, 0xCCCCCC, true)); addChild(_local2); var _local3:kopimi = new kopimi(); _local3.x = 625; _local3.y = 10; addChild(_local3); } private function startGame(_arg1:MouseEvent):void{ selectMode(); } private function cancelLevelSelection(_arg1:MouseEvent):void{ mc.mouseEnabled = true; mc.mouseChildren = true; mc.filters = []; xTween.stop(); yTween.stop(); xTween = new Tween(modeMenu, "scaleX", Quadratic.easeOut, 1, 0, 6, false); yTween = new Tween(modeMenu, "scaleY", Quadratic.easeOut, 1, 0, 6, false); } public function goCampaignMenu(_arg1:MouseEvent):void{ main.goLevelSelectMenu(false); } private function moreGamesClicked(_arg1:Event):void{ navigateToURL(new URLRequest(SpilGame.getMoreGamesLink("More_Games_Main_Menu")), "_blank"); } public function goGodModeMenu(_arg1:MouseEvent):void{ main.goLevelSelectMenu(true); } public function selectMode():void{ modeMenu.visible = true; modeMenu.filters = [new DropShadowFilter(10, 45, 0, 0.8, 20, 20)]; xTween = new Tween(modeMenu, "scaleX", Elastic.easeOut, 0.1, 1, 35, false); yTween = new Tween(modeMenu, "scaleY", Elastic.easeOut, 0.1, 1, 35, false); spSettings.stopChildren(mc); mc.mouseEnabled = false; mc.mouseChildren = false; mc.filters = [new BlurFilter(12, 12, 2)]; } } }//package spill.slammings.menus
Section 357
//PausedMenu (spill.slammings.menus.PausedMenu) package spill.slammings.menus { import flash.events.*; import flash.display.*; import spill.slammings.*; import flash.filters.*; import spill.slammings.controls.*; public class PausedMenu extends Sprite { private var musicVolumeControl:VolumeControl; private var game:Game; private var soundVolumeControl:VolumeControl; private var mc:Paused_mc; private var qualityControl:QualityControl; public function PausedMenu(_arg1:Game){ mc = new Paused_mc(); mc.filters = [new DropShadowFilter(10, 45, 0, 1, 20, 20)]; addChild(mc); game = _arg1; Utils.initButton(mc.resume_btn, resume); Utils.initButton(mc.mainmenu_btn, quit); Utils.initButton(mc.htp, showTutorial); musicVolumeControl = new VolumeControl(mc.music, true); soundVolumeControl = new VolumeControl(mc.sound, false); qualityControl = new QualityControl(mc.qualityControl); } private function resume(_arg1:MouseEvent=null):void{ game.start(); game = null; } public function quit(_arg1:MouseEvent):void{ game.quit(); game = null; } private function showTutorial(_arg1:Event):void{ game.showTutorial(); } } }//package spill.slammings.menus
Section 358
//PreloaderScreen (spill.slammings.menus.PreloaderScreen) package spill.slammings.menus { import flash.events.*; import flash.display.*; import spill.localisation.*; import flash.net.*; public class PreloaderScreen extends Sprite { private var mc:Preloader_mc; private var ldrInfo:LoaderInfo; public function PreloaderScreen(_arg1:LoaderInfo){ ldrInfo = _arg1; ldrInfo.addEventListener(ProgressEvent.PROGRESS, progress, false, 0, true); mc = new Preloader_mc(); mc.branding_btn.addEventListener(MouseEvent.CLICK, brandingButtonClicked, false, 0, true); addChild(mc); } private function brandingButtonClicked(_arg1:MouseEvent):void{ navigateToURL(new URLRequest(SpilGame.getMoreGamesLink("More_Games_Button_Preloader"))); } private function progress(_arg1:ProgressEvent):void{ var _local2:Number = (ldrInfo.bytesLoaded / ldrInfo.bytesTotal); mc.loadingbar.scaleX = _local2; mc.txt.text = (Math.round((_local2 * 100)) + "%"); if (_local2 == 1){ ldrInfo.removeEventListener(ProgressEvent.PROGRESS, progress, false); ldrInfo = null; }; } } }//package spill.slammings.menus
Section 359
//Music (spill.slammings.sound.Music) package spill.slammings.sound { import flash.events.*; import flash.display.*; import flash.media.*; import sfx.*; public class Music { public static const TEST:Object = {fadeInStart:0, fadeInTime:5, fadeOutStart:1, fadeOutTime:5}; public static const NO_FADE:Object = {fadeInStart:1, fadeInTime:0, fadeOutStart:0, fadeOutTime:0}; public static const FADE_IN_OUT:Object = {fadeInStart:0.5, fadeInTime:1, fadeOutStart:1, fadeOutTime:0.5}; public static const FADE_IN:Object = {fadeInStart:0, fadeInTime:1, fadeOutStart:0, fadeOutTime:0}; public static const FADE_OUT:Object = {fadeInStart:1, fadeInTime:0, fadeOutStart:1, fadeOutTime:1}; private static const frameRate:Number = 30; private static var isFading:Boolean = false; private static var enterFrameDispatcher:MovieClip = new MovieClip(); private static var lastChannel:SoundChannel; private static var currentFade:Object; private static var currentSound:Sound; private static var lastSound:Sound; private static var currentSong:String; private static var paused:Boolean; public static var _volume:Number = 1; private static var pausePosition:Number; private static var currentChannel:SoundChannel; private static var lastSong:String; private static var currentLevelMusic:Number = 0; private static var currentTransform:SoundTransform; private static var lastTransform:SoundTransform; private static var songs:Object = {mainScreen:MainScreenMusic, levelFailed:LevelFailedMusic, levelComplete:LevelCompleteMusic, music0:Level1Music, music1:Level2Music, music2:Level3Music, tutorial:TutorialMusic}; private static var _mute:Number = 1; public static function get volume():Number{ return (_volume); } public static function get mute():Boolean{ return (!(Boolean(_mute))); } private static function doFade(_arg1:Event):void{ var _local2:Boolean; var _local3:Boolean; if (((((lastSong) && (lastTransform))) && (lastChannel))){ lastTransform.volume = (lastTransform.volume - (volume / (frameRate * currentFade.fadeOutTime))); if (lastTransform.volume <= 0){ lastTransform.volume = 0; lastChannel.stop(); _local2 = true; } else { lastChannel.soundTransform = lastTransform; }; } else { _local2 = true; }; if (((((currentSong) && (currentTransform))) && (currentChannel))){ currentTransform.volume = (currentTransform.volume + (volume / (frameRate * currentFade.fadeInTime))); if (currentTransform.volume >= (volume * _mute)){ currentTransform.volume = (volume * _mute); _local3 = true; }; currentChannel.soundTransform = currentTransform; } else { _local3 = true; }; if (((_local2) && (_local3))){ enterFrameDispatcher.removeEventListener(Event.ENTER_FRAME, doFade); isFading = false; }; } public static function resume():void{ if (!paused){ return; }; paused = false; currentChannel = currentSound.play((pausePosition % currentSound.length), 1, currentTransform); if (currentChannel){ currentChannel.addEventListener(Event.SOUND_COMPLETE, loopSong, false, 0, true); }; } public static function playNextLevelSong():void{ currentLevelMusic++; currentLevelMusic = (currentLevelMusic % 3); playSong(("music" + currentLevelMusic)); } public static function stopSong(_arg1:Object=null):void{ playSong(null, false, _arg1); } public static function set volume(_arg1:Number):void{ _volume = _arg1; if (((currentTransform) && (currentChannel))){ currentTransform.volume = (_mute * _volume); currentChannel.soundTransform = currentTransform; }; } public static function set mute(_arg1:Boolean):void{ _mute = (_arg1) ? 0 : 1; if (((currentTransform) && (currentChannel))){ currentTransform.volume = (_mute * volume); currentChannel.soundTransform = currentTransform; }; } private static function loopSong(_arg1:Event):void{ currentChannel = currentSound.play(0, 100, currentTransform); } public static function playSong(_arg1:String=null, _arg2:Boolean=true, _arg3:Object=null, _arg4:Boolean=false):void{ if ((((currentSong == _arg1)) && (!(_arg4)))){ return; }; if (((isFading) && (lastChannel))){ lastChannel.stop(); }; currentFade = (_arg3) ? _arg3 : FADE_IN_OUT; pausePosition = 0; trace(("playing song: " + _arg1)); if (currentSong != null){ lastSong = currentSong; lastSound = currentSound; lastTransform = currentTransform; lastChannel = currentChannel; if (lastTransform){ lastTransform.volume = ((currentFade.fadeOutStart * volume) * _mute); }; }; currentSong = _arg1; if (songs[_arg1] != null){ currentSound = new (songs[_arg1]); currentChannel = currentSound.play(0, (_arg2) ? 100 : 1); currentTransform = new SoundTransform(); currentTransform.volume = ((currentFade.fadeInStart * volume) * _mute); if (currentChannel){ currentChannel.soundTransform = currentTransform; }; }; enterFrameDispatcher.addEventListener(Event.ENTER_FRAME, doFade); isFading = true; paused = false; } public static function pause():void{ paused = true; pausePosition = currentChannel.position; currentChannel.stop(); } } }//package spill.slammings.sound
Section 360
//SlammingSoundManager (spill.slammings.sound.SlammingSoundManager) package spill.slammings.sound { import flash.media.*; import sfx.*; public class SlammingSoundManager { public static var sounds:Object = {pickup:[[S_slammings_pickup, S_slammings_pickup2], [N_slammings_pickup, N_slammings_pickup2, N_slammings_pickup3], [B_slammings_pickup]], burn:[[S_slammings_burn], [N_slammings_burn], [B_slammings_burn]], damage:[[S_slammings_damage, S_slammings_damage2, S_slammings_damage3], [N_slammings_damage, N_slammings_damage2], [B_slammings_damage, B_slammings_damage2]], die:[[S_slammings_die, S_slammings_die2], [N_slammings_die, N_slammings_die2], [B_slammings_die]], drown:[[S_slammings_drownloop], [N_slammings_drownloop], [B_slammings_drowninwater]], escape:[[S_slammings_getawaysmail, S_slammings_getawaysmail2], [N_slammings_getawaysmail, N_slammings_getawaysmail2], [B_slammings_getawaysmail]], jump:[[S_slammings_jump, S_slammings_jump2, S_slammings_jump3], [N_slammings_jump, N_slammings_jump2, N_slammings_jump3], [B_slammings_jump]]}; public static function playSound(_arg1:String, _arg2:Number, _arg3:Number=0):SoundChannel{ var _local4:Array = sounds[_arg1][_arg2]; return (SoundFX.playSound(_local4[Math.floor((Math.random() * _local4.length))], 1, 1, _arg3, 1)); } } }//package spill.slammings.sound
Section 361
//SoundFX (spill.slammings.sound.SoundFX) package spill.slammings.sound { import flash.events.*; import spill.slammings.display.*; import flash.media.*; import flash.utils.*; public class SoundFX { private static var soundDict:Dictionary = new Dictionary(); private static var _mute:Boolean = false; private static var channelDict:Dictionary = new Dictionary(); public static var volume:Number = 1; public static function get mute():Boolean{ return (_mute); } public static function set mute(_arg1:Boolean):void{ _mute = _arg1; } public static function resetCounters():void{ channelDict = new Dictionary(); soundDict = new Dictionary(); } private static function soundComplete(_arg1:Event):void{ var _local2:Class = channelDict[_arg1.currentTarget]; var _local3 = soundDict; var _local4 = _local2; var _local5 = (_local3[_local4] - 1); _local3[_local4] = _local5; delete channelDict[_arg1.currentTarget]; } public static function playSound(_arg1, _arg2:Number=1, _arg3:Number=1, _arg4:Number=0, _arg5:Number=1):SoundChannel{ var _local9:Number; var _local10:Number; if ((_arg1 is Array)){ _arg1 = _arg1[Math.floor((Math.random() * _arg1.length))]; }; if ((!(_arg1) is Class)){ return (null); }; if (soundDict[_arg1] >= _arg5){ return (null); }; var _local6:Sound = new (_arg1); var _local7:SoundChannel = _local6.play(0, _arg2); if (!_local7){ return (null); }; var _local8:SoundTransform = new SoundTransform((_mute) ? 0 : (volume * _arg3)); if (_arg4 != 0){ _local9 = GameDisplay.instance.getSoundPanning(_arg4); _local10 = 1; if (_local9 < -1){ _local10 = (_local10 + (1 + _local9)); _local9 = -1; } else { if (_local9 > 1){ _local10 = (_local10 + (1 - _local9)); _local9 = 1; }; }; _local8.pan = _local9; _local8.volume = (_local8.volume * Math.max(Math.min(_local10, 1), 0)); }; _local7.soundTransform = _local8; channelDict[_local7] = _arg1; if (!soundDict[_arg1]){ soundDict[_arg1] = 0; }; var _local11 = soundDict; var _local12 = _arg1; var _local13 = (_local11[_local12] + 1); _local11[_local12] = _local13; _local7.addEventListener(Event.SOUND_COMPLETE, soundComplete); return (_local7); } } }//package spill.slammings.sound
Section 362
//Bomb (spill.slammings.tools.Bomb) package spill.slammings.tools { import flash.events.*; import flash.display.*; import spill.slammings.*; import spill.physics.*; import Box2D.Common.Math.*; import spill.slammings.display.*; import spill.slammings.character.*; import spill.slammings.sound.*; import sfx.*; import spill.physics.shapes.*; public class Bomb extends Tool { private var display:WorldDisplay; public var explosionSymbol:Class; public var fuseTime:Number;// = 150 public var bombRadius:Number;// = 0.73 public var cursorSymbol:Class; private var mc:MovieClip; private var fuseCounter:Number;// = 0 private var bombShape:spShape; public var bombSymbol:Class; private var bombBody:spBody; public var bombForce:Number;// = 3000 private var explosionAnimation:MovieClip; public var bombDamage:Number;// = 0.25 public var bombRange:Number;// = 12 private var bombPlaced:Boolean;// = false public function Bomb(){ bombSymbol = Bomb_mc; explosionSymbol = Bomb_explode; cursorSymbol = Bomb_cursor; super(); type = "bomb"; bombBody = new spBody(); bombShape = new spCircle(bombRadius); bombBody.addShape(bombShape); var _local1:spShape = new spRectangle(0.2, 0.1, 0, (-(bombRadius) - 0.1), 0); bombBody.addShape(_local1); useGlobalDensity = false; useGlobalRestitution = false; restitution = 0.3; density = 4; cursor = new cursorSymbol(); cursor.stop(); } override protected function removeFromDisplay(_arg1:spDisplay):void{ if (!bombPlaced){ display.removeEventListener(MouseEvent.MOUSE_DOWN, placeBomb, true); } else { display.tools.removeChild(mc); }; if (explosionAnimation){ explosionAnimation.stop(); mc.removeChild(explosionAnimation); }; } private function placeBomb(_arg1:MouseEvent):void{ if (MouseControl.instance.getBodyAtMouse(true) == null){ mc = new bombSymbol(); mc.stop(); display.tools.addChild(mc); display.addEventListener("renderWorld", render, false, 0, true); display.removeEventListener(MouseEvent.MOUSE_DOWN, placeBomb, true); bombBody.position.x = (display.mouseX / display.drawScale); bombBody.position.y = (display.mouseY / display.drawScale); addBody(bombBody); bombPlaced = true; doneUsingTool(); } else { display.stage.addEventListener(MouseEvent.MOUSE_UP, resetCursor, false, 0, true); cursor.gotoAndStop("disabled"); }; } private function resetCursor(_arg1:Event):void{ cursor.gotoAndStop("enabled"); display.stage.removeEventListener(MouseEvent.MOUSE_UP, resetCursor, false); } private function showExplosion():void{ explosionAnimation = new explosionSymbol(); mc.addChild(explosionAnimation); explosionAnimation.addFrameScript((explosionAnimation.totalFrames - 1), end); GameDisplay.instance.screenShake(); } private function render(_arg1:Event):void{ mc.x = (bombBody.position.x * display.drawScale); mc.y = (bombBody.position.y * display.drawScale); mc.rotation = (bombBody.angle * (180 / Math.PI)); fuseCounter++; if (fuseCounter >= fuseTime){ explode(); } else { mc.gotoAndStop(Math.ceil(((mc.totalFrames * fuseCounter) / fuseTime))); }; } override protected function addToDisplay(_arg1:spDisplay):void{ display = WorldDisplay(_arg1); display.addEventListener(MouseEvent.MOUSE_DOWN, placeBomb, true, 2, true); } private function end():void{ explosionAnimation.stop(); explosionAnimation = null; world.removeElement(this); } private function explode():void{ var _local2:spElement; var _local3:Object; var _local4:spBody; var _local5:b2Vec2; var _local6:Number; var _local7:Number; var _local1:Object = world.getElements(); for each (_local2 in _local1) { if (_local2 != this){ _local3 = _local2.getBodies(); for each (_local4 in _local3) { _local5 = _local4.position.Copy(); _local5.Subtract(bombBody.position); _local6 = _local5.Length(); if (_local6 < bombRange){ _local7 = (((bombRange - _local6) / bombRange) * bombForce); _local5.Normalize(); _local5.Multiply(_local7); _local5.Multiply(_local4.density); _local4.ref.ApplyForce(_local5, _local4.position); _local4.ref.ApplyTorque(((Math.random() - 0.5) * 1000)); if (_local2.type == "slamming"){ if (_local4 == Slamming(_local2).slammingBody){ Slamming(_local2).doDamage((_local5.Length() * bombDamage)); }; }; }; }; }; }; SoundFX.playSound(bomb, 1, 1, bombBody.position.x, 3); removeBody(bombBody); display.removeEventListener("renderWorld", render); showExplosion(); } override public function stopUsingTool():void{ world.removeElement(this); } } }//package spill.slammings.tools
Section 363
//Hand (spill.slammings.tools.Hand) package spill.slammings.tools { import flash.events.*; import flash.display.*; import spill.slammings.*; import spill.physics.*; import Box2D.Common.Math.*; import spill.slammings.display.*; import Box2D.Collision.*; import Box2D.Collision.Shapes.*; import spill.slammings.sound.*; import sfx.*; import spill.physics.shapes.*; public class Hand extends Tool { private var deployed:Boolean;// = false private var display:WorldDisplay; private var handBody:spBody; private var mc:MovieClip; private var reverse:Boolean;// = false public function Hand(){ useGlobalDensity = false; filter.maskBits = (filter.maskBits & ~(0x0100)); density = 1.5; handBody = new spBody(); handBody.def.fixedRotation = true; handBody.linearVelocity.y = 12; var _local1:spRectangle = new spRectangle(3, 8, 2, -11); handBody.addShape(_local1); var _local2:b2PolygonDef = new b2PolygonDef(); _local2.vertices[0] = new b2Vec2(-6.5, -1); _local2.vertices[1] = new b2Vec2(0, -7); _local2.vertices[2] = new b2Vec2(5, -3); _local2.vertices[3] = new b2Vec2(4.5, 3); _local2.vertices[4] = new b2Vec2(1, 4); _local2.vertices[5] = new b2Vec2(-5, 2.7); _local2.vertexCount = 6; handBody.addShape(new spShape(_local2)); } override public function stopUsingTool():void{ if (!deployed){ display.removeEventListener("renderWorld", render); display.removeEventListener(MouseEvent.MOUSE_DOWN, mouseDown, true); world.removeElement(this); } else { trace("attempted to stop using hand that was alreadt deployed"); }; } private function mouseDown(_arg1:MouseEvent):void{ handBody.position.x = (display.mouseX / display.drawScale); world.addEventListener("beforeStep", beforeStep, false, 0, true); display.removeEventListener(MouseEvent.MOUSE_DOWN, mouseDown, true); _arg1.stopImmediatePropagation(); addBody(handBody); doneUsingTool(); SoundFX.playSound(godhandwind, 1, 1, handBody.position.x); deployed = true; } override protected function addToDisplay(_arg1:spDisplay):void{ display = WorldDisplay(_arg1); display.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown, true, 0, true); display.addEventListener("renderWorld", render, false, 0, true); mc = new Hand_mc(); mc.cacheAsBitmap = true; display.tools.addChild(mc); render(); } private function beforeStep(_arg1:Event):void{ if ((((handBody.linearVelocity.y <= 0.1)) && (!(reverse)))){ reverse = true; GameDisplay.instance.screenShake(); SoundFX.playSound(godhandbang, 1, 1, handBody.position.x); }; handBody.ref.m_linearVelocity.x = (handBody.ref.m_linearVelocity.x * 0.9); handBody.ref.ApplyForce(new b2Vec2(0, (reverse) ? -7500 : 6000), handBody.position); if ((((handBody.position.y < -3)) && ((handBody.linearVelocity.y < 0)))){ world.removeEventListener("beforeStep", beforeStep, false); world.removeElement(this); }; } override protected function removeFromDisplay(_arg1:spDisplay):void{ display.tools.removeChild(mc); } private function render(_arg1:Event=null):void{ if (!deployed){ mc.x = (display.mouseX - 150); mc.y = -410; } else { mc.x = ((handBody.position.x * display.drawScale) - 150); mc.y = ((handBody.position.y * display.drawScale) - 410); }; } override public function onAddContact(_arg1:b2ContactPoint, _arg2:spShape, _arg3:spShape):void{ var _local4:SoftBridge; if ((_arg3.parent.parent is SoftBridge)){ _local4 = SoftBridge(_arg3.parent.parent); _local4.cutBridgeAt(null, (Math.round((_local4.segmentCount / 2)) - 1)); }; } } }//package spill.slammings.tools
Section 364
//Scissors (spill.slammings.tools.Scissors) package spill.slammings.tools { import flash.events.*; import spill.slammings.*; import spill.physics.*; import Box2D.Dynamics.*; import spill.slammings.display.*; import spill.slammings.character.*; import spill.slammings.sound.*; import sfx.*; public class Scissors extends Tool { private var display:WorldDisplay; public function Scissors(){ cursor = new Scissor_cursor(); cursor.stop(); } override protected function removeFromDisplay(_arg1:spDisplay):void{ _arg1.stage.removeEventListener(MouseEvent.MOUSE_MOVE, mouseMoveEvent); _arg1.removeEventListener(MouseEvent.MOUSE_DOWN, mouseDownEvent, true); } private function mouseDownEvent(_arg1:MouseEvent):void{ var _local3:spBody; var _local2:b2Body = MouseControl.instance.getBodyAtMouse(false); if (_local2){ _local3 = spBody(_local2.GetUserData()); if ((_local3.parent is SoftBridge)){ cursor.gotoAndStop("enabled"); if (SoftBridge(_local3.parent).cutBridgeAt(_local3)){ stopUsingTool(); doneUsingTool(); _arg1.stopImmediatePropagation(); SoundFX.playSound(cutbrige, 1, 1, _local3.position.x); return; }; } else { if ((_local3.parent is Slamming)){ if (!Slamming(_local3.parent).dead){ cursor.gotoAndStop("enabled"); Slamming(_local3.parent).decapitate(); stopUsingTool(); doneUsingTool(); _arg1.stopImmediatePropagation(); SoundFX.playSound(cut_slammings, 1, 1, _local3.position.x); return; }; }; }; } else { cursor.gotoAndStop("disabled"); display.stage.addEventListener(MouseEvent.MOUSE_UP, resetCursor, false, 0, true); }; SoundFX.playSound(cutnothing, 1, 1, MouseControl.instance.getPhysicsMouseX()); } override protected function addToDisplay(_arg1:spDisplay):void{ display = WorldDisplay(_arg1); display.stage.addEventListener(MouseEvent.MOUSE_MOVE, mouseMoveEvent, false, 0, true); display.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownEvent, true, 1, true); } private function resetCursor(_arg1:MouseEvent):void{ cursor.gotoAndStop("enabled"); display.stage.removeEventListener(MouseEvent.MOUSE_UP, resetCursor); } override public function stopUsingTool():void{ world.removeElement(this); } private function mouseMoveEvent(_arg1:MouseEvent):void{ var _local3:spBody; var _local2:b2Body = MouseControl.instance.getBodyAtMouse(false); if (_local2){ _local3 = spBody(_local2.GetUserData()); if ((_local3.parent is SoftBridge)){ cursor.gotoAndStop("mouse_over"); return; }; if ((_local3.parent is Slamming)){ if (!Slamming(_local3.parent).dead){ cursor.gotoAndStop("mouse_over"); return; }; }; }; if (cursor.currentLabel != "disabled"){ cursor.gotoAndStop("enabled"); }; } override protected function addToWorld(_arg1:spWorld):void{ } } }//package spill.slammings.tools
Section 365
//ShapeDrawing (spill.slammings.tools.ShapeDrawing) package spill.slammings.tools { import flash.events.*; import flash.display.*; import spill.slammings.*; import spill.physics.*; import Box2D.Common.Math.*; import spill.slammings.display.*; import Box2D.Collision.*; import Box2D.Collision.Shapes.*; import flash.filters.*; import spill.physics.shapes.*; public class ShapeDrawing extends Tool { public var dynamicBodyBitmap:Class; private var isDrawing:Boolean;// = false private var mc:MovieClip; private var lastPoint:b2Vec2; private var body:spBody; public var dynamicBodyDensity:Number;// = 2 public var staticBodyFilters:Array; private var startPosition:b2Vec2; private var isDynamic:Boolean;// = false public var dynamicBodyFilters:Array; private var display:WorldDisplay; private var lifeFadeCounter:Number; private var firstPoint:b2Vec2; private var drawLength:Number;// = 0 private var center:b2Vec2; public var lineThickness:Number;// = 4 private var points:Array; public var segmentMinLength:Number;// = 0.2 public var fadeTime:Number;// = 20 public var maxLength:Number;// = 25 public var staticShapeWidth:Number;// = 0.2 private var bodyCreated:Boolean;// = false public var lifeTime:Number;// = 250 public var segmentMaxLength:Number;// = 2 public var drawingFilters:Array; public function ShapeDrawing(){ dynamicBodyFilters = [new GlowFilter(0x222222, 1, 16, 16, 2, 1, true)]; dynamicBodyBitmap = RockBitmap; staticBodyFilters = []; drawingFilters = [new GlowFilter(0xCCCCCC, 1, 2.5, 2.5, 5, 1, false)]; points = new Array(); center = new b2Vec2(); super(); cursor = new Pen_cursor(); cursor.gotoAndStop("enabled"); cursor.pen_fill.stop(); body = new spBody(); useGlobalRestitution = false; body.useParentDensity = false; restitution = 0.2; } private function mouseReleased(_arg1:MouseEvent=null):void{ stopDrawing(((points[(points.length - 1)].Length() - 1) < 2)); } private function resetCursor(_arg1:Event):void{ cursor.gotoAndStop("enabled"); display.stage.removeEventListener(MouseEvent.MOUSE_UP, resetCursor, false); } private function createDynamicBody():Boolean{ var _local7:Number; var _local8:Number; var _local1:Number = 1000; var _local2:Number = -1000; var _local3:Number = 1000; var _local4:Number = -1000; var _local5:int = points.length; var _local6:int; while (_local6 < _local5) { _local7 = points[_local6].x; _local8 = points[_local6].y; _local1 = ((_local7 < _local1)) ? _local7 : _local1; _local2 = ((_local7 > _local2)) ? _local7 : _local2; _local3 = ((_local8 < _local3)) ? _local8 : _local3; _local4 = ((_local8 > _local4)) ? _local8 : _local4; _local6++; }; center.Set(((_local1 + _local2) / 2), ((_local3 + _local4) / 2)); _local6 = 0; while (_local6 < _local5) { points[_local6].Subtract(center); _local6++; }; points.sort(sortOnAngle); removeConcavePoints(); if (points.length < 3){ return (false); }; createShapeFromPoints(); startPosition.Add(center); body.position = startPosition.Copy(); body.density = dynamicBodyDensity; drawDynamicBody(); display.addEventListener("renderWorld", render, false, 0, true); render(); return (true); } private function plotSegment(_arg1:b2Vec2, _arg2:b2Vec2, _arg3:Number):void{ _arg1.Subtract(startPosition); var _local4:b2Vec2 = _arg2.Copy(); _local4.Subtract(startPosition); _local4.Subtract(_arg1); _local4.Multiply(_arg3); _local4.Add(_arg1); mc.seg.graphics.lineStyle(lineThickness, 0); mc.seg.graphics.moveTo((_arg1.x * 20), (_arg1.y * 20)); mc.seg.graphics.lineTo((_local4.x * 20), (_local4.y * 20)); } private function createShapePart(_arg1:Array):void{ var _local2:spShape = new spShape(); var _local3:b2PolygonDef = new b2PolygonDef(); _local3.vertexCount = _arg1.length; var _local4:int; while (_local4 < _arg1.length) { _local3.vertices[_local4] = _arg1[_local4].Copy(); _local4++; }; _local2.setDefinition(_local3); body.addShape(_local2); } private function createShapeFromPoints():void{ var _local1:Array = points.concat(); while (_local1.length > 8) { createShapePart(_local1.slice(0, 8)); _local1.splice(1, 6); }; createShapePart(_local1); } private function drawDynamicBody():void{ var _local1:int = points.length; var _local2:BitmapData = new dynamicBodyBitmap(1, 1); mc.filters = dynamicBodyFilters; mc.graphics.clear(); mc.graphics.beginBitmapFill(_local2, null, true, false); mc.graphics.lineStyle(); mc.graphics.moveTo((points[(_local1 - 1)].x * display.drawScale), (points[(_local1 - 1)].y * display.drawScale)); var _local3:int; while (_local3 < _local1) { mc.graphics.lineTo((points[_local3].x * display.drawScale), (points[_local3].y * display.drawScale)); _local3++; }; } override protected function removeFromDisplay(_arg1:spDisplay):void{ display.tools.removeChild(mc); } private function destroyFadeEvent(_arg1:Event):void{ lifeFadeCounter++; if (lifeFadeCounter >= lifeTime){ destroyTool(); } else { if (lifeFadeCounter > (lifeTime - fadeTime)){ mc.alpha = ((lifeTime - lifeFadeCounter) / fadeTime); }; }; } private function render(_arg1:Event=null):void{ mc.x = (body.position.x * display.drawScale); mc.y = (body.position.y * display.drawScale); mc.rotation = (body.angle * (180 / Math.PI)); } override protected function addToDisplay(_arg1:spDisplay):void{ display = WorldDisplay(_arg1); display.addEventListener(MouseEvent.MOUSE_DOWN, startDrawing, true, 2, true); mc = new MovieClip(); mc.filters = drawingFilters; var _local2:MovieClip = new MovieClip(); mc.addChild(_local2); mc.seg = _local2; display.tools.addChild(mc); } private function removeConcavePoints():void{ var _local4:b2Vec2; var _local5:b2Vec2; var _local6:b2Vec2; var _local7:b2Vec2; var _local8:Number; var _local9:Number; var _local10:Boolean; var _local1:Array = new Array(); var _local2:Boolean; var _local3:int; while (_local3 < points.length) { _local4 = points[_local3].Copy(); _local5 = points[((_local3 + 1) % points.length)].Copy(); _local6 = points[((_local3 + 2) % points.length)].Copy(); _local7 = _local6.Copy(); _local7.Subtract(_local4); if (_local7.x == 0){ _local7.x = 1E-6; }; _local8 = (_local7.y / _local7.x); _local9 = (_local4.y - (_local8 * _local4.x)); _local10 = false; if ((((_local7.x > 0)) && ((_local5.y >= ((_local8 * _local5.x) + _local9))))){ _local10 = true; }; if ((((_local7.x < 0)) && ((_local5.y <= ((_local8 * _local5.x) + _local9))))){ _local10 = true; }; if (_local10){ points.splice(((_local3 + 1) % points.length), 1); _local3--; _local2 = true; }; _local3++; }; if (_local2){ removeConcavePoints(); }; } private function drawStaticBody():void{ var _local1:int = points.length; mc.graphics.clear(); mc.graphics.lineStyle(10, 0); var _local2:int; while (_local2 < _local1) { mc.graphics.lineTo((points[_local2].x * display.drawScale), (points[_local2].y * display.drawScale)); _local2++; }; } public function destroyTool():void{ if (!bodyCreated){ if (isDrawing){ display.stage.removeEventListener(MouseEvent.MOUSE_MOVE, captureMouse); display.stage.removeEventListener(MouseEvent.MOUSE_UP, mouseReleased); } else { display.removeEventListener(MouseEvent.MOUSE_DOWN, startDrawing, true); }; } else { if (isDynamic){ display.removeEventListener("renderWorld", render); }; display.removeEventListener("renderWorld", destroyFadeEvent); }; if (active){ world.removeElement(this); }; } private function stopDrawing(_arg1:Boolean=false):void{ var _local2:Boolean; mc.seg.graphics.clear(); if (points.length >= 3){ if (_arg1){ _local2 = createDynamicBody(); isDynamic = true; } else { _local2 = createStaticBody(); isDynamic = false; }; if (_local2){ addBody(body); display.addEventListener("renderWorld", destroyFadeEvent, false, 0, true); lifeFadeCounter = 0; bodyCreated = true; doneUsingTool(); }; }; if (!_local2){ mc.graphics.clear(); points = new Array(); display.addEventListener(MouseEvent.MOUSE_DOWN, startDrawing, true, 0, true); }; isDrawing = false; display.stage.removeEventListener(MouseEvent.MOUSE_MOVE, captureMouse); display.stage.removeEventListener(MouseEvent.MOUSE_UP, mouseReleased); } private function sortOnAngle(_arg1:b2Vec2, _arg2:b2Vec2):Number{ var _local3:Number = Math.atan2(_arg1.y, _arg1.x); _local3 = ((_local3 < 0)) ? (_local3 + (Math.PI * 2)) : _local3; var _local4:Number = Math.atan2(_arg2.y, _arg2.x); _local4 = ((_local4 < 0)) ? (_local4 + (Math.PI * 2)) : _local4; return (((_local3 < _local4)) ? -1 : 1); } private function testSegment(_arg1:b2Vec2, _arg2:b2Vec2):Boolean{ var _local6:b2Segment; var _local7:Number; var _local8:Boolean; var _local9:int; var _local10:b2Shape; var _local11:b2XForm; var _local12:Array; _arg1.Add(startPosition); _arg2.Add(startPosition); var _local3:b2AABB = new b2AABB(); _local3.lowerBound.x = (Math.min(_arg1.x, _arg2.x) - 0.1); _local3.lowerBound.y = (Math.min(_arg1.y, _arg2.y) - 0.1); _local3.upperBound.x = (Math.max(_arg1.x, _arg2.x) + 0.1); _local3.upperBound.y = (Math.max(_arg1.y, _arg2.y) + 0.1); var _local4:Array = new Array(); var _local5:int = world.ref.Query(_local3, _local4, 20); if (_local5 > 0){ _local6 = new b2Segment(); _local6.p1 = _arg1; _local6.p2 = _arg2; _local7 = Number.POSITIVE_INFINITY; _local8 = true; _local9 = 0; while (_local9 < _local4.length) { _local10 = b2Shape(_local4[_local9]); _local11 = _local10.GetBody().GetXForm(); _local12 = new Array(); if (_local10.TestSegment(_local11, _local12, new b2Vec2(), _local6, 1)){ if (_local12[0] < _local7){ _local7 = _local12[0]; }; _local8 = false; } else { if (_local10.TestPoint(_local11, _arg1)){ _local8 = false; return (false); }; if (_local10.TestPoint(_local11, _arg2)){ _local8 = false; if (_local7 > 1){ _local7 = 1; }; }; }; _local9++; }; if (!_local8){ plotSegment(_arg1.Copy(), _arg2.Copy(), _local7); return (true); }; }; return (false); } private function createStaticBody():Boolean{ var _local2:b2Vec2; var _local3:Number; var _local4:Number; var _local5:spRectangle; var _local1 = 1; while (_local1 < points.length) { _local2 = points[_local1].Copy(); _local2.Subtract(points[(_local1 - 1)]); _local3 = (_local2.Length() / 2); _local4 = Math.atan2(_local2.y, _local2.x); _local2.Multiply(0.5); _local2.Add(points[(_local1 - 1)]); _local5 = new spRectangle(_local3, staticShapeWidth, _local2.x, _local2.y, _local4); body.addShape(_local5); _local1++; }; body.position = startPosition.Copy(); body.density = 0; drawStaticBody(); return (true); } override public function stopUsingTool():void{ destroyTool(); } private function startDrawing(_arg1:MouseEvent):void{ if (MouseControl.instance.getBodyAtMouse(true) == null){ _arg1.stopPropagation(); isDrawing = true; display.removeEventListener(MouseEvent.MOUSE_DOWN, startDrawing, true); display.stage.addEventListener(MouseEvent.MOUSE_MOVE, captureMouse, false, 0, true); display.stage.addEventListener(MouseEvent.MOUSE_UP, mouseReleased, false, 0, true); mc.x = display.mouseX; mc.y = display.mouseY; startPosition = new b2Vec2(); startPosition.Set((display.mouseX / display.drawScale), (display.mouseY / display.drawScale)); mc.graphics.lineStyle(lineThickness); mc.graphics.moveTo(0, 0); lastPoint = new b2Vec2(0, 0); firstPoint = lastPoint; points.push(lastPoint); } else { cursor.gotoAndStop("disabled"); display.stage.addEventListener(MouseEvent.MOUSE_UP, resetCursor, false, 0, true); }; } override protected function removeFromWorld(_arg1:spWorld):void{ destroyTool(); } private function createDynamicBodyConcave():Boolean{ Teselator.optimiseShape(points); body = Teselator.createBodyFromPoints(points.concat()); body.position = startPosition.Copy(); body.density = dynamicBodyDensity; drawDynamicBody(); display.addEventListener("renderWorld", render, false, 0, true); render(); return (true); } private function captureMouse(_arg1:MouseEvent=null):void{ mc.seg.graphics.clear(); var _local2:b2Vec2 = new b2Vec2((mc.mouseX / display.drawScale), (mc.mouseY / display.drawScale)); var _local3:b2Vec2 = _local2.Copy(); _local3.Subtract(lastPoint); var _local4:Number = _local3.Length(); if (_local4 > segmentMaxLength){ _local3.Multiply((segmentMaxLength / _local4)); _local4 = segmentMaxLength; _local3.Add(lastPoint); _local2 = _local3; }; if (_local4 > segmentMinLength){ if (testSegment(lastPoint.Copy(), _local2.Copy())){ return; }; drawLength = (drawLength + _local4); cursor.pen_fill.gotoAndStop(Math.round(((drawLength / maxLength) * cursor.pen_fill.totalFrames))); points.push(_local2); lastPoint = _local2; mc.graphics.lineTo((_local2.x * display.drawScale), (_local2.y * display.drawScale)); if ((((drawLength > 3)) && ((_local2.Length() < 1)))){ stopDrawing(true); } else { if (drawLength > maxLength){ stopDrawing(false); }; }; }; } } }//package spill.slammings.tools
Section 366
//Spoon (spill.slammings.tools.Spoon) package spill.slammings.tools { import flash.events.*; import flash.display.*; import spill.slammings.*; import spill.physics.*; import Box2D.Common.Math.*; import spill.slammings.display.*; import Box2D.Collision.*; import Box2D.Collision.Shapes.*; import spill.slammings.character.*; import flash.filters.*; import spill.slammings.sound.*; import sfx.*; import spill.physics.shapes.*; public class Spoon extends Tool { private var display:WorldDisplay; private var spoon_mc:MovieClip; private var anchor_angle:Number; private var anchor_position:b2Vec2; private var mc:MovieClip; private var boardBodyShape:spRectangle; private var stopSign:MovieClip; private var anchor_mc:MovieClip; private var boardBody:spBody; private var status:Number;// = 0 private var throwsLeft:Number;// = 3 private var anchor_body:spBody; private var placed:Boolean;// = false override public function onPersistContact(_arg1:b2ContactPoint, _arg2:spShape, _arg3:spShape):void{ var _local4:b2Vec2; if (((((placed) && ((status == 0)))) && ((boardBody.angle > (-(Math.PI) / 2))))){ _local4 = boardBody.ref.GetLocalPoint(_arg1.position); if ((((_local4.x > 4.2)) && ((_local4.y <= -0.3)))){ if ((_arg3.parent.parent is Slamming)){ status = 1; boardBody.angularVelocity = (boardBody.angularVelocity - 10); throwsLeft--; SoundFX.playSound(scoopshoot, 1, 1, boardBody.position.x); }; }; }; } private function afterStep(_arg1:Event):void{ var _local2:Number; var _local3:b2Vec2; var _local4:Array; var _local5:Number; var _local6:Number; var _local7:spShape; var _local8:b2Vec2; mc.graphics.clear(); if (!placed){ _local2 = (display.mouseX / display.drawScale); _local3 = new b2Vec2(); _local4 = new Array(); _local5 = world.testSegment(new b2Vec2(_local2, 0), new b2Vec2(_local2, 30), _local3, _local4); _local6 = 0.03; if (_local5 >= 0){ _local7 = spShape(_local4[0]); if (_local7.parent.parent.type == "ground"){ stopSign.alpha = 0; } else { stopSign.alpha = 1; }; spoon_mc.x = display.mouseX; spoon_mc.y = ((30 * _local5) * display.drawScale); anchor_mc.x = spoon_mc.x; anchor_mc.y = spoon_mc.y; anchor_mc.rotation = (((Math.atan2(_local3.y, _local3.x) * 180) / Math.PI) + 90); }; } else { if (status == 1){ if (boardBody.angularVelocity >= 0){ status = 0; SoundFX.playSound(scoopbuild, 1, 1, boardBody.position.x); if (throwsLeft == 0){ world.removeElement(this); return; }; }; }; if (status == 1){ if (boardBody.angle > (-(Math.PI) / 2)){ boardBody.ref.ApplyTorque((-7000 * density)); }; } else { if (boardBody.angle < (-(Math.PI) / 4)){ boardBody.ref.ApplyTorque((1000 * density)); }; }; spoon_mc.rotation = (boardBody.angle * (180 / Math.PI)); spoon_mc.x = (boardBody.position.x * display.drawScale); spoon_mc.y = (boardBody.position.y * display.drawScale); _local8 = anchor_body.ref.GetWorldPoint(anchor_position); anchor_mc.x = (_local8.x * display.drawScale); anchor_mc.y = (_local8.y * display.drawScale); anchor_mc.rotation = ((((anchor_angle + anchor_body.angle) * 180) / Math.PI) + 90); }; } override protected function removeFromDisplay(_arg1:spDisplay):void{ if (!placed){ _arg1.removeEventListener(MouseEvent.MOUSE_DOWN, mouseDown, false); }; _arg1.tools.removeChild(mc); } override public function stopUsingTool():void{ world.removeElement(this); } override protected function addToDisplay(_arg1:spDisplay):void{ display = WorldDisplay(_arg1); mc = new MovieClip(); display.tools.addChild(mc); spoon_mc = new Spoon_mc(); spoon_mc.rotation = -90; mc.alpha = 1; mc.addChild(spoon_mc); anchor_mc = new Spoon_anchor_mc(); mc.addChild(anchor_mc); stopSign = new Forbidden(); spoon_mc.addChild(stopSign); stopSign.alpha = 0; stopSign.filters = [new GlowFilter(0xDDDDDD, 1, 2, 2, 10)]; stopSign.x = 50; stopSign.y = -35; useGlobalDensity = false; density = 2; boardBody = new spBody(); boardBody.isBullet = true; boardBodyShape = new spRectangle(2.5, 0.1, 2.5, 0); var _local2:spCircle = new spCircle(0.1, 0, 0); var _local3:b2PolygonDef = new b2PolygonDef(); _local3.vertexCount = 4; _local3.vertices[0] = new b2Vec2(0, 0); _local3.vertices[1] = new b2Vec2(4, -0.85); _local3.vertices[2] = new b2Vec2(6, -0.3); _local3.vertices[3] = new b2Vec2(6, 0.2); boardBody.addShape(new spShape(_local3)); _local3 = new b2PolygonDef(); _local3.vertexCount = 4; _local3.vertices[0] = new b2Vec2(6, 0.2); _local3.vertices[1] = new b2Vec2(6, -0.3); _local3.vertices[2] = new b2Vec2(7.8, -1.1); _local3.vertices[3] = new b2Vec2(7, 0); boardBody.addShape(new spShape(_local3)); display.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown, false, 0, true); } private function mouseDown(_arg1:MouseEvent):void{ var _local6:spShape; var _local7:b2Vec2; var _local8:BridgeJoint; var _local2:Number = (display.mouseX / display.drawScale); var _local3:b2Vec2 = new b2Vec2(); var _local4:Array = new Array(); var _local5:Number = world.testSegment(new b2Vec2(_local2, 0), new b2Vec2(_local2, 30), _local3, _local4); if (_local5 >= 0){ _local6 = spShape(_local4[0]); if (_local6.parent.parent.type == "ground"){ mc.alpha = 1; } else { return; }; placed = true; spoon_mc.removeChild(stopSign); _local7 = new b2Vec2(_local2, (30 * _local5)); boardBody.position = _local7.Copy(); boardBody.angle = (-(Math.PI) / 2); anchor_body = _local6.parent; anchor_angle = (Math.atan2(_local3.y, _local3.x) - anchor_body.angle); anchor_position = _local6.parent.ref.GetLocalPoint(_local7); _local8 = new BridgeJoint(boardBody, _local6.parent, _local7); _local8.def.collideConnected = true; addBody(boardBody); addJoint(_local8); doneUsingTool(); display.removeEventListener(MouseEvent.MOUSE_DOWN, mouseDown, false); }; } override protected function removeFromWorld(_arg1:spWorld):void{ _arg1.removeEventListener("afterStep", afterStep, false); } override protected function addToWorld(_arg1:spWorld):void{ _arg1.addEventListener("afterStep", afterStep, false, 0, true); } } }//package spill.slammings.tools
Section 367
//Tool (spill.slammings.tools.Tool) package spill.slammings.tools { import flash.events.*; import flash.display.*; import spill.physics.*; public class Tool extends spElement { public var cursor:MovieClip; public function stopUsingTool():void{ } protected function doneUsingTool():void{ dispatchEvent(new Event("doneUsingTool")); } } }//package spill.slammings.tools
Section 368
//ToolManager (spill.slammings.tools.ToolManager) package spill.slammings.tools { import flash.events.*; import spill.slammings.*; import spill.physics.*; import spill.slammings.display.*; public class ToolManager { private var currentToolID:int;// = 0 private var currentTool:Tool;// = null private var world:spWorld; private var toolMenu:ToolMenu; public var tools:Array; private static var firstUse:Array = [true, false, false, false, false, true]; public function ToolManager(_arg1:spWorld){ tools = [{toolClass:null, buttonClass:Grab_tool, keyString:"1", keyCode:49, available:Number.POSITIVE_INFINITY, totalUsed:0, id:0}, {toolClass:ShapeDrawing, buttonClass:Drawing_tool, keyString:"2", keyCode:50, available:1, totalUsed:0, id:1}, {toolClass:Bomb, buttonClass:Bomb_tool, keyString:"3", keyCode:51, available:1, totalUsed:0, id:2}, {toolClass:Scissors, buttonClass:Scissor_tool, keyString:"4", keyCode:52, available:0, totalUsed:0, id:3}, {toolClass:Spoon, buttonClass:Spoon_tool, keyString:"5", keyCode:53, available:0, totalUsed:0, id:4}, {toolClass:Hand, buttonClass:Fist_tool, keyString:"6", keyCode:54, available:0, totalUsed:0, id:5}]; super(); world = _arg1; } public function setMenu(_arg1:ToolMenu):void{ toolMenu = _arg1; toolMenu.addEventListener("toolSelected", toolSelected, false, 0, true); toolMenu.setTools(tools); toolMenu.stage.addEventListener(KeyboardEvent.KEY_UP, keyUp, false, 0, true); } public function updateMenu():void{ toolMenu.setAvailableTools(tools); } private function toolDone(_arg1:Event):void{ currentTool.removeEventListener("doneUsingTool", toolDone); currentTool = null; tools[currentToolID].available--; tools[currentToolID].totalUsed++; updateMenu(); selectTool(0); } private function toolSelected(_arg1:Event):void{ selectTool(toolMenu.clickedToolID); } private function selectTool(_arg1:int):void{ if (currentTool != null){ currentTool.stopUsingTool(); currentTool.removeEventListener("doneUsingTool", toolDone); }; currentToolID = _arg1; if (tools[_arg1].toolClass != null){ currentTool = new (tools[_arg1].toolClass); currentTool.addEventListener("doneUsingTool", toolDone, false, 0, true); MouseControl.instance.setCursor(currentTool.cursor); world.addElement(currentTool); } else { MouseControl.instance.setCursor(null); currentTool = null; }; toolMenu.setSelectedTool(_arg1); } public function addTool(_arg1:int):void{ tools[_arg1].available++; toolMenu.highlightTool(_arg1); updateMenu(); if (!firstUse[_arg1]){ firstUse[_arg1] = true; toolMenu.showHint(_arg1); }; } private function keyUp(_arg1:KeyboardEvent):void{ var _local2:int; while (_local2 < tools.length) { if (tools[_local2].keyCode == _arg1.keyCode){ if (tools[_local2].available){ selectTool(_local2); }; }; _local2++; }; } public function destroy():void{ if (currentTool){ currentTool.removeEventListener("doneUsingTool", toolDone); currentTool.stopUsingTool(); currentTool = null; }; toolMenu.stage.removeEventListener(KeyboardEvent.KEY_UP, keyUp); toolMenu.removeEventListener("toolSelected", toolSelected); toolMenu = null; } } }//package spill.slammings.tools
Section 369
//Analytics (spill.slammings.tracker.Analytics) package spill.slammings.tracker { import flash.display.*; import com.google.analytics.*; public class Analytics { private static var mainScreenVisited:Boolean = false; private static var levelCompleted:Boolean = false; private static var account:String = "UA-6695967-1"; private static var tracker:AnalyticsTracker; private static var gameCompleted:Boolean = false; private static var gameName:String = "Slammings"; public static function levelCompleteEvent():void{ if (!levelCompleted){ levelCompleted = true; tracker.trackEvent(gameName, "level 1 completed", "per session", 0); }; } public static function gameCompletedEvent():void{ if (!gameCompleted){ gameCompleted = true; tracker.trackEvent(gameName, "all levels completed", "per session", 0); }; } public static function mainScreenEvent():void{ if (!mainScreenVisited){ mainScreenVisited = true; tracker.trackEvent(gameName, "mainscreen viewed", "per session", 0); }; } public static function initialize(_arg1:DisplayObject, _arg2:Boolean=true):void{ tracker = new GATracker(_arg1, account, "AS3", _arg2); } } }//package spill.slammings.tracker
Section 370
//BridgeClampJoint (spill.slammings.BridgeClampJoint) package spill.slammings { import spill.physics.*; import Box2D.Common.Math.*; import Box2D.Dynamics.Joints.*; public class BridgeClampJoint extends spJoint { public var body:spBody; public var anchor:b2Vec2; public var direction:Number; public function BridgeClampJoint(_arg1:spBody, _arg2:b2Vec2, _arg3:Number){ def = new b2PrismaticJointDef(); def.userData = this; def.lowerTranslation = -0.3; def.upperTranslation = 0.3; def.enableLimit = true; body = _arg1; anchor = _arg2; direction = _arg3; } public function set def(_arg1:b2PrismaticJointDef):void{ _def = _arg1; } override protected function initialise(_arg1:spWorld):void{ def.Initialize(body.ref, _arg1.ref.GetGroundBody(), anchor, new b2Vec2(-(direction), 0)); } public function get def():b2PrismaticJointDef{ return ((_def as b2PrismaticJointDef)); } } }//package spill.slammings
Section 371
//BridgeJoint (spill.slammings.BridgeJoint) package spill.slammings { import spill.physics.*; import Box2D.Common.Math.*; import Box2D.Dynamics.Joints.*; public class BridgeJoint extends spJoint { public var body1:spBody; public var body2:spBody; public var anchor:b2Vec2; private var init:Boolean;// = false public function BridgeJoint(_arg1:spBody, _arg2:spBody, _arg3:b2Vec2){ def = new b2RevoluteJointDef(); def.userData = this; body1 = _arg1; body2 = _arg2; anchor = _arg3; } public function get def():b2RevoluteJointDef{ return ((_def as b2RevoluteJointDef)); } public function set def(_arg1:b2RevoluteJointDef):void{ _def = _arg1; } override protected function initialise(_arg1:spWorld):void{ if (!init){ def.Initialize(body1.ref, body2.ref, anchor); init = true; }; } } }//package spill.slammings
Section 372
//ComboManager (spill.slammings.ComboManager) package spill.slammings { import flash.display.*; import spill.physics.*; import spill.physics.events.*; import spill.slammings.display.*; import spill.slammings.tools.*; import spill.slammings.events.*; import spill.slammings.sound.*; import sfx.*; import flash.utils.*; import flash.text.*; public class ComboManager extends Sprite { private var combatText:CombatText; public var biggestCombo:Number;// = 0 private var world:spWorld; private var mc:MovieClip; private var comboText:TextField; private var scoreText:TextField; private var comboCountDown:Number;// = INF private var comboScore:Number;// = 0 private var comboKills:Number;// = 0 public var totalScore;// = 0 public var comboInterval:Number;// = 100 private var toolManager:ToolManager; private var slammingManager:SlammingManager; public function ComboManager(_arg1:SlammingManager, _arg2:ToolManager, _arg3:spWorld, _arg4:CombatText){ world = _arg3; toolManager = _arg2; slammingManager = _arg1; combatText = _arg4; slammingManager.addEventListener(SlammingDeathEvent.SLAMMING_DIED, slammingDied, false, 0, true); world.addEventListener("renderWorld", countEvent, false, 0, true); mc = new ComboCounter_mc(); mc.visible = false; addChild(mc); comboText = mc.text_mc.tween.comboText; comboText.antiAliasType = AntiAliasType.ADVANCED; scoreText = mc.score_txt; mouseEnabled = false; mouseChildren = false; } public function destroy():void{ slammingManager.removeEventListener(SlammingDeathEvent.SLAMMING_DIED, slammingDied); world.removeEventListener("renderWorld", countEvent); toolManager = null; slammingManager = null; combatText = null; world = null; } public function endCombo():void{ comboCountDown = Number.POSITIVE_INFINITY; totalScore = (totalScore + comboScore); comboScore = 0; if (comboKills > biggestCombo){ biggestCombo = comboKills; }; combatText.comboEnd(comboKills); if (comboKills > 5){ SoundFX.playSound(combo); }; comboKills = 0; mc.gotoAndPlay(1); } private function countEvent(_arg1:spWorldEvent):void{ if (comboCountDown <= 0){ endCombo(); } else { comboCountDown = (comboCountDown - (30 * _arg1.timeStep)); mc.clock.gotoAndStop(Math.round(((comboCountDown / comboInterval) * mc.clock.totalFrames))); }; } private function slammingDied(_arg1:SlammingDeathEvent):void{ var _local3:Number; comboCountDown = comboInterval; var _local2:int; while (_local2 < _arg1.slamming.livesLost) { comboKills++; _local3 = (comboKills % 22); if (comboKills == 1){ mc.visible = true; mc.gotoAndStop(1); } else { if (_local3 == 2){ toolManager.addTool(1); } else { if (_local3 == 5){ toolManager.addTool(2); } else { if (_local3 == 7){ toolManager.addTool(1); } else { if (_local3 == 9){ toolManager.addTool(3); } else { if (_local3 == 14){ toolManager.addTool(4); } else { if (_local3 == 17){ toolManager.addTool(1); } else { if (_local3 == 20){ toolManager.addTool(5); }; }; }; }; }; }; }; }; _local2++; }; mc.text_mc.play(); comboText.text = comboKills.toString(); comboScore = (comboScore + ((comboKills * 10) * _arg1.slamming.livesLost)); scoreText.text = (totalScore + comboScore).toString(); } } }//package spill.slammings
Section 373
//DeadZone (spill.slammings.DeadZone) package spill.slammings { import flash.events.*; import spill.physics.*; import Box2D.Collision.*; import spill.slammings.character.*; import spill.physics.shapes.*; public class DeadZone extends spElement { public var width:Number;// = 1 public var height:Number;// = 1 public var x:Number;// = 0 public var y:Number;// = 0 private var foundSlammings:Object; override protected function removeFromWorld(_arg1:spWorld):void{ _arg1.removeEventListener("beforeStep", beforeStep); _arg1.removeEventListener("afterStep", afterStep); } override public function onAddContact(_arg1:b2ContactPoint, _arg2:spShape, _arg3:spShape):void{ var _local4:spElement = _arg3.parent.parent; if ((_local4 is Slamming)){ foundSlammings[_local4.id] = _local4; }; } private function afterStep(_arg1:Event):void{ var _local2:Slamming; for each (_local2 in foundSlammings) { if (!_local2.dead){ _local2.escaped(); }; }; } private function beforeStep(_arg1:Event):void{ foundSlammings = new Object(); } override protected function addToWorld(_arg1:spWorld):void{ _arg1.addEventListener("beforeStep", beforeStep, false, 0, true); _arg1.addEventListener("afterStep", afterStep, false, -10, true); } override protected function initialize():void{ var _local1:spBody = new spBody(); var _local2:spRectangle = new spRectangle(width, height, x, y); _local2.density = 0; _local2.useParentDensity = false; _local2.def.isSensor = true; _local1.addShape(_local2); addBody(_local1); } } }//package spill.slammings
Section 374
//Game (spill.slammings.Game) package spill.slammings { import flash.events.*; import flash.display.*; import spill.physics.*; import spill.slammings.display.*; import spill.slammings.tools.*; import spill.slammings.character.*; import flash.filters.*; import flash.geom.*; import spill.slammings.sound.*; import spill.slammings.menus.*; import sfx.*; import flash.utils.*; import spill.localisation.*; import flash.ui.*; import flash.system.*; public class Game extends MovieClip { public var ground:GameGround; public var world:spWorld; public var toolMenu:ToolMenu; protected var slammingTypes:Array; public var levelWidth:Number;// = 0x0500 private var timeOutID:Number; public var music:String;// = "" public var house:Villager_house; private var pausedMenu:PausedMenu; public var currentSong:String; private var isGameOver:Boolean;// = false private var totalTime:Number;// = 0 public var levelMap:LevelMap; public var slammingManager:SlammingManager; public var foregroundSymbol:Class; public var comboManager:ComboManager; public var combatText:CombatText; public var godMode:Boolean; private var pauseButton:Paused_button; public var levelHeight:Number;// = 480 public var gameStats:GameStats; private var startTime:Number; public var worldDisplay:WorldDisplay; private var tutorial:Tutorial; public var levelNum:Number; public var backgroundSymbol:Class; public var toolManager:ToolManager; public var gameDisplay:GameDisplay; public var mouseControl:MouseControl; public static var currentMusicNum:Number = 0; public static var silverScore:Number = 3000; public static var bronzeScore:Number = 1500; public static var goldScore:Number = 4500; public function Game(_arg1:Boolean):void{ backgroundSymbol = Background_1_mc; foregroundSymbol = Foreground1; slammingTypes = [Slamming]; super(); godMode = _arg1; addEventListener(Event.ADDED_TO_STAGE, init, false, 0, true); } private function dispatchEnd(_arg1:Event=null):void{ clearTimeout(timeOutID); dispatchEvent(new Event("gameOver")); } private function buttonRollOut(_arg1:MouseEvent):void{ mouseControl.removeHandCursor(); } private function gameOver(_arg1:Event):void{ if (isGameOver){ return; }; isGameOver = true; Music.playSong("levelFailed", false); comboManager.endCombo(); gatherStats(false); combatText.showText(SpilGame.getString("Level_Failed"), 30, false); timeOutID = setTimeout(dispatchEnd, 2000); } override public function stop():void{ if (tutorial){ return; }; if (!world.running){ return; }; world.stop(); totalTime = (totalTime + (getTimer() - startTime)); trace(("stop, totalTime = " + totalTime)); gameDisplay.filters = [new BlurFilter(8, 8, 1)]; gameDisplay.uiLayer.visible = false; gameDisplay.coverLayer.visible = true; gameDisplay.pauseChanged(true); pausedMenu = new PausedMenu(this); pausedMenu.x = 320; pausedMenu.y = 240; addChild(pausedMenu); stage.quality = StageQuality.HIGH; Music.pause(); SoundFX.playSound(gamepause); mouseControl.hide(); } public function exitTutorial():void{ removeChild(tutorial); tutorial = null; Music.playSong(currentSong); start(); } protected function init(_arg1:Event=null):void{ removeEventListener(Event.ADDED_TO_STAGE, init); spSettings.inheritProps = true; world = new spWorld(); world.gravity.y = 15; world.iterations = 5; worldDisplay = new WorldDisplay(world); worldDisplay.drawScale = 20; world.display = worldDisplay; gameDisplay = new GameDisplay(worldDisplay); addChild(gameDisplay); var _local2:MovieClip = new backgroundSymbol(); _local2.cacheAsBitmap = true; gameDisplay.setBackground(_local2); var _local3:MovieClip = new foregroundSymbol(); _local3.cacheAsBitmap = true; worldDisplay.background.addChild(_local3); Slamming.maxVelocity = 0; Slamming.maxImpulse = 0; mouseControl = new MouseControl(world, worldDisplay, gameDisplay); mouseControl.maxMouseForce = 350; gameDisplay.setMouseControl(mouseControl); toolMenu = new ToolMenu(); toolMenu.x = 4; toolMenu.y = 4; gameDisplay.uiLayer.addChild(toolMenu); toolManager = new ToolManager(world); toolManager.setMenu(toolMenu); house = new Villager_house(); house.stop(); house.x = 0x0500; house.y = 350; worldDisplay.dynamicGround.addChild(house); slammingManager = new SlammingManager(world, house); slammingManager.addEventListener("gameOver", gameOver, false, 0, true); slammingManager.addEventListener("gameComplete", gameComplete, false, 0, true); if (godMode){ makeGodModeQueue(); }; if (godMode){ slammingManager.maxTotalSlammings = 1000; bronzeScore = 7000; silverScore = 15000; goldScore = 20000; }; combatText = new CombatText(); combatText.x = 320; combatText.y = 100; gameDisplay.uiLayer.addChild(combatText); comboManager = new ComboManager(slammingManager, toolManager, world, combatText); comboManager.x = 550; comboManager.y = 45; comboManager.scaleX = (comboManager.scaleY = 0.8); gameDisplay.uiLayer.addChild(comboManager); var _local4:ArrowDisplay = new ArrowDisplay(); _local4.x = 580; _local4.y = 240; gameDisplay.uiLayer.addChild(_local4); levelMap = new LevelMap(gameDisplay, worldDisplay, slammingManager, _local4, godMode); slammingManager.setLevelMap(levelMap); gameDisplay.uiLayer.addChild(levelMap); levelMap.x = 200; levelMap.y = 424; var _local5:BrandingButton_mc = new BrandingButton_mc(); _local5.mouseChildren = false; _local5.x = 100; _local5.y = 440; _local5.addEventListener(MouseEvent.ROLL_OVER, buttonRollOver, false, 0, true); _local5.addEventListener(MouseEvent.ROLL_OUT, buttonRollOut, false, 0, true); Utils.initBrandinButton(_local5, "More_Games_Button_In_Game"); gameDisplay.uiLayer.addChild(_local5); stage.addEventListener(KeyboardEvent.KEY_DOWN, keyDownEvent, false, 999, true); stage.addEventListener(FocusEvent.FOCUS_OUT, focusChange, false, 0, true); stage.focus = stage; pauseButton = new Paused_button(); pauseButton.addEventListener(MouseEvent.ROLL_OVER, buttonRollOver, false, 0, true); pauseButton.addEventListener(MouseEvent.ROLL_OUT, buttonRollOut, false, 0, true); pauseButton.x = 582; pauseButton.y = 422; Utils.initButton(pauseButton, pauseButtonClicked); gameDisplay.uiLayer.addChild(pauseButton); addEventListener(Event.DEACTIVATE, deactivate, false, 0, true); currentSong = ("music" + currentMusicNum); currentMusicNum++; currentMusicNum = (currentMusicNum % 3); SoundFX.resetCounters(); if ((((levelNum == 0)) && (!(godMode)))){ showTutorial(0); } else { Music.playSong(currentSong); start(); }; } private function focusChange(_arg1:FocusEvent):void{ stage.focus = stage; } public function makeGodModeQueue():void{ var _local11:int; var _local12:uint; var _local13:*; var _local14:Array; var _local1:Number = (slammingTypes.length * 2); var _local2:Number = Math.round((400 / _local1)); var _local3:Sprite = new SlammingStreamMap(); var _local4:BitmapData = new BitmapData(_local2, _local1, false); var _local5:Matrix = new Matrix(); _local5.createBox((_local2 / _local3.width), (_local1 / _local3.height)); _local4.draw(_local3, _local5); var _local6:Array = new Array(); var _local7:int; var _local8:int; while (_local8 < _local2) { _local11 = 0; while (_local11 < _local1) { _local12 = _local4.getPixel(_local8, _local11); _local12 = ((slammingTypes.length - Math.floor((((_local12 >> 16) / 0x0100) * slammingTypes.length))) - 1); if ((((Math.random() < 0.5)) || ((_local7 == 0)))){ _local6[_local7] = _local12; } else { _local6[_local7] = _local6[(_local7 - 1)]; _local6[(_local7 - 1)] = _local12; }; _local7++; _local11++; }; _local8++; }; _local4 = new BitmapData(_local6.length, 300, false); var _local9:Rectangle = new Rectangle(0, 0, 1, 300); var _local10:int; _local7 = 0; while (_local7 < _local6.length) { _local13 = slammingTypes[_local6[_local7]]; if ((_local13 is Array)){ _local14 = (_local13 as Array); var _temp1 = _local10; _local10 = (_local10 + 1); slammingManager.slammingQueue[_local7] = _local14[(_temp1 % _local14.length)]; } else { if ((_local13 is Class)){ slammingManager.slammingQueue[_local7] = (_local13 as Class); }; }; _local7++; }; } private function buttonRollOver(_arg1:MouseEvent):void{ mouseControl.setHandCursor("point"); } private function pauseButtonClicked(_arg1:Event):void{ stop(); } private function gameComplete(_arg1:Event):void{ if (isGameOver){ return; }; isGameOver = true; Music.playSong("levelComplete", false); comboManager.endCombo(); gatherStats(true); combatText.showText(SpilGame.getString("Level_Complete"), 32, true); timeOutID = setTimeout(dispatchEnd, 2000); } public function quit():void{ dispatchEvent(new Event("userQuit")); } public function get running():Boolean{ return (world.running); } private function gatherStats(_arg1:Boolean):void{ gameStats = new GameStats(); gameStats.maxSlammingVelocity = Math.round(Math.sqrt(Slamming.maxVelocity)); gameStats.hardestImpact = Math.round(Slamming.maxImpulse); gameStats.score = comboManager.totalScore; gameStats.biggestCombo = comboManager.biggestCombo; gameStats.slammingsEscaped = slammingManager.slammingsEscaped; gameStats.slammingsKilled = slammingManager.slammingsKilled; gameStats.toolInfo = toolManager.tools; gameStats.timePlayed = (totalTime + (getTimer() - startTime)); gameStats.godMode = godMode; gameStats.levelNum = levelNum; gameStats.success = _arg1; var _local2 = 1; while (_local2 < toolManager.tools.length) { gameStats.toolsUsed = (gameStats.toolsUsed + toolManager.tools[_local2].totalUsed); gameStats.toolsSaved = (gameStats.toolsSaved + toolManager.tools[_local2].available); _local2++; }; var _local3:Object = SaveGameData.getLevelData(levelNum, godMode); if ((((gameStats.score < _local3.bronzeScore)) || (((!(_arg1)) && (!(godMode)))))){ gameStats.medalEarned = 0; } else { if (gameStats.score < _local3.silverScore){ gameStats.medalEarned = 1; } else { if (gameStats.score < _local3.goldScore){ gameStats.medalEarned = 2; } else { gameStats.medalEarned = 3; }; }; }; } public function start():void{ if (tutorial){ return; }; if (world.running){ return; }; stage.focus = stage; world.start(); startTime = getTimer(); gameDisplay.filters = []; gameDisplay.uiLayer.visible = true; gameDisplay.coverLayer.visible = false; gameDisplay.pauseChanged(false); if (pausedMenu){ removeChild(pausedMenu); pausedMenu = null; }; stage.quality = SaveGameData.quality; Music.resume(); mouseControl.show(); } private function deactivate(_arg1:Event):void{ if (running){ stop(); }; } private function keyDownEvent(_arg1:KeyboardEvent):void{ trace("key down"); if ((((_arg1.keyCode == 80)) || ((_arg1.keyCode == Keyboard.ESCAPE)))){ if (running){ stop(); } else { start(); }; }; } public function destroy():void{ stage.removeEventListener(KeyboardEvent.KEY_DOWN, keyDownEvent, false); stage.removeEventListener(FocusEvent.FOCUS_OUT, focusChange, false); slammingManager.removeEventListener("gameOver", gameOver, false); slammingManager.removeEventListener("gameComplete", gameComplete, false); removeEventListener(Event.DEACTIVATE, deactivate, false); mouseControl.destroy(); toolManager.destroy(); toolMenu.destroy(); levelMap.destroy(); gameDisplay.destroy(); world.destroy(); worldDisplay.destroy(); slammingManager.destroy(); comboManager.destroy(); mouseControl = null; toolManager = null; toolMenu = null; levelMap = null; gameDisplay = null; worldDisplay = null; slammingManager = null; world = null; comboManager = null; System.gc(); System.gc(); } public function showTutorial(_arg1:Number=0):void{ stop(); tutorial = new Tutorial(null, this, _arg1); addChild(tutorial); } } }//package spill.slammings
Section 375
//GameGround (spill.slammings.GameGround) package spill.slammings { import flash.events.*; import flash.display.*; import spill.physics.*; import Box2D.Common.Math.*; import spill.slammings.display.*; import Box2D.Collision.Shapes.*; import flash.filters.*; import flash.geom.*; import flash.utils.*; import flash.ui.*; public class GameGround extends spElement { private var display:WorldDisplay; public var grassTexture:Class; private var editNodes:Array; private var groundBody:spBody; public var filters:Array; public var groundTexture:Class; private var mc:MovieClip; private var nodeContainer:Sprite; private var currentIndex:Number;// = 0 private var currentNode:MovieClip; public var points:Array; public var grassOffset:Number;// = 30 public var bottom:Number;// = 6 private var groundShapeTestVar:b2ShapeDef; public var x:Number;// = 0 public var y:Number;// = 0 private var grassLayer:Sprite; public function GameGround(){ grassTexture = Grass; groundTexture = Texture1; filters = [new GlowFilter(0x330000, 1, 0, 60, 3, 1, true)]; editNodes = new Array(); super(); points = new Array(); useGlobalDensity = false; density = 0; type = "ground"; filter.groupIndex = GlobalSettings.groundGroupIndex; filter.categoryBits = GlobalSettings.staticGroundBit; } private function createEditNodes():void{ nodeContainer = new Sprite(); nodeContainer.x = (x * display.drawScale); nodeContainer.y = (y * display.drawScale); display.debug.addChild(nodeContainer); var _local1:int; while (_local1 < points.length) { createEditNode(_local1); _local1++; }; } private function createEditNode(_arg1:int):void{ var _local2:MovieClip = new MovieClip(); _local2.addEventListener(MouseEvent.MOUSE_DOWN, nodeMouseDown, false, 0, true); _local2.addEventListener(MouseEvent.MOUSE_OVER, nodeMouseOver, false, 0, true); _local2.addEventListener(MouseEvent.MOUSE_OUT, nodeMouseOut, false, 0, true); _local2.index = _arg1; _local2.graphics.beginFill(0xFF0000, 0.5); _local2.graphics.drawCircle(0, 0, 4); _local2.graphics.endFill(); _local2.x = (points[_arg1].x * display.drawScale); _local2.y = (points[_arg1].y * display.drawScale); _local2.useHandCursor = true; _local2.mouseEnabled = true; _local2.buttonMode = true; nodeContainer.addChild(_local2); editNodes.push(_local2); } private function nodeMouseOut(_arg1:MouseEvent):void{ Mouse.hide(); } private function nodeMouseDown(_arg1:MouseEvent):void{ _arg1.stopImmediatePropagation(); currentNode = MovieClip(_arg1.currentTarget); currentIndex = currentNode.index; mc.stage.addEventListener(MouseEvent.MOUSE_UP, nodeMouseUp, false, 0, true); mc.stage.addEventListener(MouseEvent.MOUSE_MOVE, nodeMouseMove, false, 0, true); } private function nodeMouseOver(_arg1:MouseEvent):void{ Mouse.show(); } override protected function initialize():void{ createBody(); } private function nodeToMouse():void{ currentNode.x = mc.mouseX; currentNode.y = mc.mouseY; } override protected function removeFromDisplay(_arg1:spDisplay):void{ _arg1.ground.removeChild(mc); _arg1.debug.removeChild(nodeContainer); } private function nodeMouseMove(_arg1:MouseEvent):void{ nodeToMouse(); } public function exportPoints():void{ trace("// Code for ground ------------------"); var _local1 = "ground.points = [\n"; var _local2:int; while (_local2 < points.length) { _local1 = (_local1 + (((("new b2Vec2(" + points[_local2].x) + ",") + points[_local2].y) + ")")); if (_local2 < (points.length - 1)){ _local1 = (_local1 + ",\n"); }; _local2++; }; trace((_local1 + "];")); trace("-------------------------------------"); } override protected function addToDisplay(_arg1:spDisplay):void{ display = WorldDisplay(_arg1); mc = new MovieClip(); mc.cacheAsBitmap = true; mc.groundSprite = new Sprite(); filters.push(new GlowFilter(0, 1, 15, 15, 1.5, 1, true)); mc.groundSprite.filters = filters; mc.addChild(mc.groundSprite); drawGround(); createEditNodes(); display.ground.addChild(mc); } private function recreate():void{ createBody(); drawGround(); } private function nodeMouseUp(_arg1:MouseEvent):void{ nodeToMouse(); points[currentIndex].x = (currentNode.x / display.drawScale); points[currentIndex].y = (currentNode.y / display.drawScale); mc.stage.removeEventListener(MouseEvent.MOUSE_UP, nodeMouseUp); mc.stage.removeEventListener(MouseEvent.MOUSE_MOVE, nodeMouseMove); recreate(); } private function drawGround():void{ var _local8:b2Vec2; var _local13:b2Vec2; var _local14:Number; var _local15:b2Vec2; var _local16:Number; var _local17:Number; var _local1:MovieClip = new grassTexture(); var _local2:MovieClip = new groundTexture(); var _local3:Number = (points[(points.length - 1)].x * display.drawScale); var _local4:BitmapData = new BitmapData(_local1.width, _local1.height, true, 0); var _local5:BitmapData = new BitmapData(_local2.width, _local2.height, true, 0); if (grassLayer){ mc.removeChild(grassLayer); }; grassLayer = new Sprite(); grassLayer.mouseEnabled = false; grassLayer.cacheAsBitmap = true; mc.addChildAt(grassLayer, 1); _local4.draw(_local1); _local5.draw(_local2); var _local6:Graphics = mc.groundSprite.graphics; var _local7:Number = display.drawScale; mc.x = (x * _local7); mc.y = (y * _local7); _local6.clear(); _local6.moveTo((points[0].x * _local7), (bottom * _local7)); var _local9:Number = 0; var _local10:int; while (_local10 < points.length) { if (points[_local10].y < _local9){ _local9 = points[_local10].y; }; _local10++; }; var _local11:Matrix = new Matrix(); _local11.ty = (_local9 * _local7); _local6.beginBitmapFill(_local5, _local11); _local6.lineTo((points[0].x * _local7), (points[0].y * _local7)); _local8 = points[0].Copy(); _local8.Add(points[1]); _local8.Multiply(0.5); _local6.lineTo((_local8.x * _local7), (_local8.y * _local7)); drawGrassPiece(points[0].Copy(), points[1].Copy(), _local4, grassLayer); var _local12 = 1; while (_local12 < (points.length - 1)) { _local8 = points[_local12].Copy(); _local8.Add(points[(_local12 + 1)]); _local8.Multiply(0.5); _local13 = points[_local12].Copy(); _local13.Subtract(points[(_local12 - 1)]); _local14 = Math.atan2(_local13.y, _local13.x); _local15 = points[(_local12 + 1)].Copy(); _local15.Subtract(points[_local12]); _local16 = Math.atan2(_local15.y, _local15.x); _local17 = Math.abs((_local16 - _local14)); if (_local17 > 0.8){ _local6.lineTo((points[_local12].x * _local7), (points[_local12].y * _local7)); _local6.lineTo((_local8.x * _local7), (_local8.y * _local7)); } else { _local6.curveTo((points[_local12].x * _local7), (points[_local12].y * _local7), (_local8.x * _local7), (_local8.y * _local7)); }; drawGrassPiece(points[_local12].Copy(), points[(_local12 + 1)].Copy(), _local4, grassLayer); _local12++; }; _local6.lineTo((points[(points.length - 1)].x * _local7), (points[(points.length - 1)].y * _local7)); _local6.lineTo((points[(points.length - 1)].x * _local7), (bottom * _local7)); _local6.lineTo((points[0].x * _local7), (bottom * _local7)); _local6.endFill(); } private function drawGrassPiece(_arg1:b2Vec2, _arg2:b2Vec2, _arg3:BitmapData, _arg4:Sprite):void{ _arg1.Multiply(display.drawScale); _arg2.Multiply(display.drawScale); var _local5:b2Vec2 = _arg2.Copy(); _local5.Subtract(_arg1); if (_local5.x <= 0){ return; }; var _local6:Number = (_arg1.x % _arg3.width); var _local7:Rectangle = new Rectangle(_local6, 0, _local5.x, _arg3.height); var _local8:BitmapData = new BitmapData(_local5.x, _arg3.height, true, 0); _local8.copyPixels(_arg3, _local7, new Point(0, 0)); var _local9:Number = ((_local6 + _local5.x) - _arg3.width); if (_local9 > 0){ _local7 = new Rectangle(0, 0, _local9, _arg3.height); _local8.copyPixels(_arg3, _local7, new Point((_local5.x - _local9), 0)); }; var _local10:Matrix = new Matrix(); _local10.b = (_local5.y / _local5.x); _local10.tx = _arg1.x; _local10.ty = (_arg1.y - grassOffset); var _local11:Bitmap = new Bitmap(_local8); _local11.smoothing = true; var _local12:Transform = new Transform(_local11); _local12.matrix = _local10; _local11.transform = _local12; _arg4.addChild(_local11); } private function createBody():void{ var _local5:b2Vec2; var _local7:spShape; var _local8:b2PolygonDef; var _local11:b2Vec2; var _local12:b2Vec2; var _local13:Number; var _local14:Number; if (groundBody){ removeBody(groundBody); }; groundBody = new spBody(); var _local1:Boolean; var _local2:Boolean; var _local3:Boolean; var _local4:Boolean; var _local6:spBody = groundBody; var _local9:Number = 0; var _local10:int; while (_local10 < points.length) { _local5 = b2Vec2(points[_local10]); if (_local1){ _local7 = new spShape(); _local8 = new b2PolygonDef(); _local8.vertices[_local9].Set(_local5.x, bottom); _local9++; }; _local8.vertices[_local9] = _local5.Copy(); _local9++; if (_local10 == (points.length - 1)){ _local2 = true; } else { if (_local9 >= 7){ _local3 = true; _local4 = true; } else { if (!_local1){ _local11 = _local5.Copy(); _local11.Subtract(b2Vec2(points[(_local10 - 1)])); _local12 = b2Vec2(points[(_local10 + 1)]).Copy(); _local12.Subtract(_local5); _local13 = (_local11.y / _local11.x); _local14 = (_local12.y / _local12.x); if (_local12.x <= 0){ _local3 = true; _local4 = false; } else { if (_local14 < _local13){ _local3 = true; _local4 = true; }; }; }; }; }; if (((_local2) || (_local3))){ _local8.vertices[_local9].Set(_local5.x, bottom); _local9++; _local8.vertexCount = _local9; _local9 = 0; _local7.setDefinition(_local8); groundShapeTestVar = _local8; _local6.addShape(_local7); _local1 = true; if (_local2){ break; } else { if (_local3){ if (_local4){ _local10--; }; }; }; _local2 = false; _local3 = false; } else { _local1 = false; }; _local10++; }; _local6.position = new b2Vec2(x, y); addBody(_local6); } } }//package spill.slammings
Section 376
//GameStats (spill.slammings.GameStats) package spill.slammings { public class GameStats { public var timePlayed:Number; public var success:Boolean; public var gameComplete:Boolean;// = false public var medalEarned:Number;// = -1 public var biggestCombo:Number; public var score:Number; public var maxSlammingVelocity:Number; public var hardestImpact:Number; public var levelNum:Number; public var toolInfo:Object; public var slammingsEscaped:Number; public var toolsSaved:Number;// = 0 public var toolsUsed:Number;// = 0 public var slammingsKilled:Number; public var godMode:Boolean; } }//package spill.slammings
Section 377
//GlobalSettings (spill.slammings.GlobalSettings) package spill.slammings { import flash.display.*; public class GlobalSettings { public static const dynamicGroundBit:Number = 32; public static const slammingBit:Number = 8; public static const ceilingBit:Number = 64; public static const staticGroundBit:Number = 16; public static const groundGroupIndex:Number = -1; public static const noCollisionBit:Number = 0; public static function traceChildren(_arg1:MovieClip):void{ var _local2:Number = _arg1.numChildren; var _local3:int; while (_local3 < _local2) { trace(_arg1.getChildAt(_local3).name); _local3++; }; } public static function getCachedMCs(_arg1:Sprite, _arg2:int=0):void{ var _local6:Sprite; var _local3 = ""; var _local4:int; while (_local4 < _arg2) { _local3 = (_local3 + "\t"); _local4++; }; var _local5:int = _arg1.numChildren; _local4 = 0; while (_local4 < _local5) { if ((_arg1.getChildAt(_local4) is Sprite)){ _local6 = Sprite(_arg1.getChildAt(_local4)); if (_local6.cacheAsBitmap){ if ((_local6 is MovieClip)){ trace((_local3 + "** "), MovieClip(_local6).totalFrames, _local6, _local6.name); } else { trace((_local3 + "** "), _local6, _local6.name); }; } else { if ((_local6 is MovieClip)){ trace(_local3, MovieClip(_local6).totalFrames, _local6, _local6.name); } else { trace((_local3 + _local6), _local6.name); }; }; getCachedMCs(_local6, (_arg2 + 1)); }; _local4++; }; } } }//package spill.slammings
Section 378
//MouseControl (spill.slammings.MouseControl) package spill.slammings { import flash.events.*; import flash.display.*; import spill.physics.*; import Box2D.Common.Math.*; import spill.slammings.display.*; import flash.filters.*; public class MouseControl extends spMouseControl { private var hand_mc:MovieClip; public var maxLength:Number;// = 270 private var joint_mc:Sprite; private var currentCursor:MovieClip; private var gameDisplay:GameDisplay; public var thickness:Number;// = 7 private var mouse_mc:Sprite; public static var instance:MouseControl; public function MouseControl(_arg1:spWorld, _arg2:spDisplay, _arg3:GameDisplay){ super(_arg1, _arg2); gameDisplay = _arg3; MouseControl.instance = this; display.stage.addEventListener(MouseEvent.MOUSE_MOVE, mouseMoveEvent, false, 0, true); addEventListener("startDrag", startDrag, false, 0, true); mouse_mc = new Sprite(); mouse_mc.filters = [new GlowFilter(0xDDDDDD, 1, 2, 2, 10)]; _arg3.mouseLayer.addChild(mouse_mc); mouse_mc.mouseEnabled = false; mouse_mc.mouseChildren = false; joint_mc = new Sprite(); mouse_mc.addChild(joint_mc); hand_mc = new Grab_cursor(); hand_mc.stop(); hand_mc.y = 2; mouse_mc.addChild(hand_mc); } public function hide():void{ hand_mc.visible = false; if (currentCursor){ currentCursor.visible = false; }; } public function getPhysicsMouseX():Number{ return ((gameDisplay.worldDisplay.mouseX / gameDisplay.worldDisplay.drawScale)); } public function removeHandCursor():void{ hand_mc.gotoAndStop("open"); if (currentCursor){ currentCursor.visible = true; hand_mc.visible = false; } else { hand_mc.visible = true; }; } private function dragging(_arg1:Event):void{ drawConnector(); } private function stopDrag(_arg1:Event):void{ removeEventListener("stopDrag", stopDrag); display.removeEventListener("renderWorld", dragging); joint_mc.visible = false; joint_mc.graphics.clear(); if (currentCursor){ currentCursor.visible = true; hand_mc.visible = false; } else { hand_mc.visible = true; }; hand_mc.gotoAndStop("open"); } public function setCursor(_arg1:MovieClip=null):void{ if (currentCursor){ mouse_mc.removeChild(currentCursor); }; currentCursor = _arg1; if (_arg1){ mouse_mc.addChild(_arg1); _arg1.visible = !(isDragging); hand_mc.visible = isDragging; } else { hand_mc.visible = true; }; } public function forceUpdate():void{ mouseMove(); if (isDragging){ drawConnector(); } else { updateMouse(); }; } private function updateMouse():void{ mouse_mc.x = gameDisplay.mouseX; mouse_mc.y = gameDisplay.mouseY; } private function mouseMoveEvent(_arg1:MouseEvent):void{ if (!isDragging){ updateMouse(); _arg1.updateAfterEvent(); }; } private function drawConnector():void{ if (!m_mouseJoint){ return; }; var _local1:Number = display.drawScale; var _local2:b2Vec2 = m_mouseJoint.GetAnchor1().Copy(); var _local3:b2Vec2 = m_mouseJoint.GetAnchor2().Copy(); updateMouse(); _local3.Subtract(_local2); var _local4:Number = Math.atan2(_local3.y, _local3.x); joint_mc.rotation = (_local4 * (180 / Math.PI)); var _local5:Number = (_local3.Length() * _local1); if (_local5 > maxLength){ disconnect(); return; }; var _local6:Graphics = joint_mc.graphics; _local6.clear(); _local6.lineStyle(); _local6.beginFill(0x222222); _local6.drawCircle(0, 0, (thickness / 2)); _local6.endFill(); _local6.beginFill(0x222222); _local6.drawCircle(_local5, 0, (thickness / 2)); _local6.endFill(); var _local7:Number = ((thickness / 2) - ((_local5 / maxLength) * thickness)); _local6.beginFill(0x222222); _local6.lineStyle(); _local6.moveTo(0, (-(thickness) / 2)); _local6.curveTo((_local5 / 2), -(_local7), _local5, (-(thickness) / 2)); _local6.lineTo(_local5, (thickness / 2)); _local6.curveTo((_local5 / 2), _local7, 0, (thickness / 2)); _local6.lineTo(0, (-(thickness) / 2)); _local6.endFill(); } public function setHandCursor(_arg1:String):void{ hand_mc.gotoAndStop(_arg1); hand_mc.visible = true; if (currentCursor){ currentCursor.visible = false; }; } private function startDrag(_arg1:Event):void{ addEventListener("stopDrag", stopDrag, false, 0, true); display.addEventListener("renderWorld", dragging, false, 0, true); joint_mc.visible = true; hand_mc.visible = true; if (currentCursor){ currentCursor.visible = false; }; hand_mc.gotoAndStop("closed"); drawConnector(); } override public function destroy():void{ if (display.stage){ display.stage.removeEventListener(MouseEvent.MOUSE_MOVE, mouseMoveEvent, false); }; removeEventListener("startDrag", startDrag, false); if (isDragging){ removeEventListener("stopDrag", stopDrag); display.removeEventListener("renderWorld", dragging); }; MouseControl.instance = null; gameDisplay = null; super.destroy(); } public function show():void{ if (currentCursor){ currentCursor.visible = true; } else { hand_mc.visible = true; }; } } }//package spill.slammings
Section 379
//SaveGameData (spill.slammings.SaveGameData) package spill.slammings { import spill.slammings.sound.*; import flash.net.*; public class SaveGameData { public static var so_name:String = "slammings"; private static var reset:Boolean = false; public static var campaign:Array = [createLevelData(500, 2000, 4500, 0), createLevelData(600, 3200, 4800), createLevelData(700, 3400, 5100), createLevelData(800, 3600, 5400), createLevelData(900, 3800, 5700)]; public static var settings:Object = {soundVolume:1, musicVolume:0.7, quality:"medium"}; public static var so_path:String = "/"; private static var so:SharedObject; public static var endless:Array = [createLevelData(2000, 4000, 6000), createLevelData(3000, 6000, 9000), createLevelData(4000, 8000, 12000), createLevelData(5000, 10000, 15000), createLevelData(6000, 12000, 18000)]; private static var version:Number = 0.903; public static function set quality(_arg1:String):void{ settings.quality = _arg1; } public static function get soundVolume():Number{ return (settings.soundVolume); } public static function set soundVolume(_arg1:Number):void{ SoundFX.volume = _arg1; settings.soundVolume = _arg1; } public static function getLevelData(_arg1:Number, _arg2:Boolean):Object{ if (_arg2){ return (endless[_arg1]); }; return (campaign[_arg1]); } public static function get musicVolume():Number{ return (settings.musicVolume); } public static function deleteSaveGameData():void{ if (so){ delete so.data.campaign; delete so.data.endless; delete so.data.settings; }; } public static function getLevelStatus(_arg1:Number, _arg2:Boolean):Number{ if (_arg2){ return (endless[_arg1].status); }; return (campaign[_arg1].status); } public static function levelCompleted(_arg1:GameStats):void{ var _local5:Object; var _local2:Number = _arg1.levelNum; var _local3:Number = _arg1.medalEarned; var _local4:Boolean = _arg1.godMode; if (!_local3){ return; }; if (_local4){ _local5 = endless[_local2]; if (_local5.status < _local3){ _local5.status = _local3; }; if (_arg1.score > _local5.bestScore){ _local5.bestScore = _arg1.score; }; } else { _local5 = campaign[_local2]; if ((((_local2 == 4)) && (_arg1.success))){ if (campaign[4].status < 1){ _arg1.gameComplete = true; }; }; if (_local5.status < _local3){ _local5.status = _local3; }; if ((((_local2 < 4)) && (_arg1.success))){ if (campaign[(_local2 + 1)].status < 0){ campaign[(_local2 + 1)].status = 0; }; }; if (_arg1.score > _local5.bestScore){ _local5.bestScore = _arg1.score; }; if (endless[_local2].status < 0){ endless[_local2].status = 0; }; }; } private static function createLevelData(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number=-1):Object{ return ({bronzeScore:_arg1, silverScore:_arg2, goldScore:_arg3, status:_arg4, bestScore:0}); } public static function init():void{ try { so = SharedObject.getLocal("slammings", "/"); } catch(e:Error) { trace("Error getting local data"); }; if (so){ if (((!(so.data.version)) || ((so.data.version < version)))){ reset = true; so.data.version = version; }; if (((so.data.campaign) && (!(reset)))){ campaign = so.data.campaign; } else { so.data.campaign = campaign; }; if (((so.data.endless) && (!(reset)))){ endless = so.data.endless; } else { so.data.endless = endless; }; if (((so.data.settings) && (!(reset)))){ settings = so.data.settings; } else { so.data.settings = settings; }; soundVolume = settings.soundVolume; musicVolume = settings.musicVolume; }; trace(("campaign level status = " + campaign)); trace(("endless level status = " + endless)); } public static function set musicVolume(_arg1:Number):void{ Music.volume = _arg1; settings.musicVolume = _arg1; } public static function get quality():String{ return (settings.quality); } } }//package spill.slammings
Section 380
//SlammingManager (spill.slammings.SlammingManager) package spill.slammings { import flash.events.*; import spill.physics.*; import spill.physics.events.*; import spill.slammings.display.*; import spill.slammings.events.*; import spill.slammings.character.*; import spill.slammings.sound.*; import sfx.*; public class SlammingManager extends EventDispatcher { public var minActiveSlammings:Number;// = 0 public var addInterval:Number;// = 5 public var slammingSelectionFunction:Function;// = null public var liveSlammings:Object; public var slammingSpeedYRandom:Number;// = 0 public var maxDeadSlammings:Number;// = 15 private var world:spWorld; private var deadSlammings:Array; public var slammingQueue:Array; public var slammingStartYRandom:Number;// = -6 private var house:Villager_house; public var slammingSpeedX:Number;// = 0 public var slammingSpeedY:Number;// = 0 public var maxActiveSlammings:Number;// = 15 public var slammingsEscaped:Number;// = 0 private var activeSlammings:Number;// = 0 public var totalSlammings:Number;// = 0 private var _livesLeft:Number;// = 10 public var minInterval:Number;// = 100 private var levelMap:LevelMap; public var maxTotalSlammings:Number;// = 100 public var rebirthChance:Number;// = 0.7 public var slammingSpeedXRandom:Number;// = 5 private var frameCounter:Number;// = 100 public var slammingStartXRandom:Number;// = 0 public var slammingStartX:Number;// = 1 public var slammingStartY:Number;// = 15 public var defaultSlamming:Class; public var slammingsKilled:Number;// = 0 public function SlammingManager(_arg1:spWorld, _arg2:Villager_house){ liveSlammings = new Object(); defaultSlamming = Slamming1; slammingQueue = new Array(); deadSlammings = new Array(); super(); house = _arg2; world = _arg1; world.addEventListener("beforeStep", beforeStepPhysics, false, 0, true); } private function slammingEscaped(_arg1:Event):void{ slammingRemoved(Slamming(_arg1.currentTarget)); livesLeft = (livesLeft - Slamming(_arg1.currentTarget).livesLost); house.gotoAndStop((11 - livesLeft)); slammingsEscaped++; levelMap.setLives(livesLeft); dispatchEvent(new Event("slammingEscaped")); if (livesLeft <= 0){ dispatchEvent(new Event("gameOver")); } else { if ((((activeSlammings == 0)) && ((totalSlammings >= maxTotalSlammings)))){ dispatchEvent(new Event("gameComplete")); }; }; throwVillagers(); } private function throwVillagers():void{ SoundFX.playSound([villagerdie, villagerdie2, villagerdie3], 1, 1, 75); var _local1:Number = (Math.floor((Math.random() * 3)) + 1); var _local2:int; while (_local2 < _local1) { world.addElement(new Villager()); _local2++; }; } private function slammingDied(_arg1:Event):void{ slammingRemoved(Slamming(_arg1.currentTarget)); slammingsKilled++; deadSlammings.push(_arg1.currentTarget); if (deadSlammings.length >= maxDeadSlammings){ world.removeElement(Slamming(deadSlammings.shift())); }; dispatchEvent(new SlammingDeathEvent(SlammingDeathEvent.SLAMMING_DIED, Slamming(_arg1.currentTarget))); if ((((activeSlammings == 0)) && ((totalSlammings >= maxTotalSlammings)))){ dispatchEvent(new Event("gameComplete")); } else { if (activeSlammings < maxActiveSlammings){ if ((((activeSlammings < minActiveSlammings)) && (!((minActiveSlammings == 0))))){ addSlamming(); } else { if (Math.random() < rebirthChance){ addSlamming(); }; }; }; }; } public function get livesLeft():Number{ return (_livesLeft); } public function setLevelMap(_arg1:LevelMap):void{ levelMap = _arg1; levelMap.setLives(livesLeft); } private function addSlamming():void{ var _local1:Slamming; if (totalSlammings >= maxTotalSlammings){ return; }; if (slammingSelectionFunction == null){ if (slammingQueue[totalSlammings] == null){ _local1 = new (defaultSlamming); } else { if ((slammingQueue[totalSlammings] is Class)){ _local1 = new (slammingQueue[totalSlammings]); } else { _local1 = slammingQueue[totalSlammings]; }; }; } else { _local1 = slammingSelectionFunction(); }; _local1.slammingBody.position.x = (slammingStartX + (Math.random() * slammingStartXRandom)); _local1.slammingBody.position.y = (slammingStartY + (Math.random() * slammingStartYRandom)); _local1.slammingBody.linearVelocity.x = (slammingSpeedX + (Math.random() * slammingSpeedXRandom)); _local1.slammingBody.linearVelocity.y = (slammingSpeedY + (Math.random() * slammingSpeedYRandom)); _local1.addEventListener("death", slammingDied, false, 0, true); _local1.addEventListener("escape", slammingEscaped, false, 0, true); liveSlammings[_local1.id] = _local1; world.addElement(_local1); activeSlammings++; totalSlammings++; levelMap.setSlammingsLeft((1 - (totalSlammings / maxTotalSlammings)), (maxTotalSlammings - totalSlammings)); } private function beforeStepPhysics(_arg1:spWorldEvent):void{ frameCounter = (frameCounter - (30 * _arg1.timeStep)); if ((((frameCounter <= 0)) && ((activeSlammings < maxActiveSlammings)))){ addSlamming(); frameCounter = (minInterval + (activeSlammings * addInterval)); }; } public function set livesLeft(_arg1:Number):void{ _livesLeft = _arg1; levelMap.setLives(_arg1); } private function slammingRemoved(_arg1:Slamming):void{ _arg1.removeEventListener("death", slammingDied, false); _arg1.removeEventListener("escape", slammingEscaped, false); activeSlammings--; delete liveSlammings[_arg1.id]; } public function destroy():void{ var _local1:Slamming; world.removeEventListener("beforeStep", beforeStepPhysics); world = null; levelMap = null; for each (_local1 in liveSlammings) { slammingRemoved(_local1); }; deadSlammings = null; liveSlammings = null; slammingQueue = null; } } }//package spill.slammings
Section 381
//SoftBridge (spill.slammings.SoftBridge) package spill.slammings { import flash.events.*; import flash.display.*; import spill.physics.*; import Box2D.Common.Math.*; import Box2D.Collision.*; import Box2D.Collision.Shapes.*; import spill.slammings.character.*; import flash.geom.*; import spill.physics.shapes.*; public class SoftBridge extends spElement { public var suspenderForce:Number;// = 20 public var depth:Number;// = 3 private var slammingPasses:Object; private var groundBody:spBody; public var segmentWidth:Number;// = 1 private var numCuts:Number;// = 0 public var segmentCount:uint;// = 20 private var mc:Sprite; private var segments:Array; private var joints:Array; public var segmentSymbol:Class; public var suspenderHeight:Number;// = 0.25 private var cuts:Array; public var y:Number;// = 0 public var segmentHeight:Number;// = 0.5 private var slammingsThrough:Array; public var x:Number;// = 0 public function SoftBridge(){ segmentSymbol = Bridge_part; cuts = new Array(); segments = new Array(); joints = new Array(); slammingsThrough = new Array(); super(); useGlobalAngularDamping = false; useGlobalLinearDamping = false; linearDamping = 2; angularDamping = 2; filter.groupIndex = GlobalSettings.groundGroupIndex; filter.categoryBits = GlobalSettings.dynamicGroundBit; slammingPasses = new Object(); type = "ground"; name = "softground"; } private function forceTogether(_arg1:Number, _arg2:Number, _arg3:Number):void{ var _local4:spBody = spBody(segments[_arg1]); var _local5:spBody = spBody(segments[_arg2]); var _local6:b2Vec2 = _local4.ref.GetWorldPoint(new b2Vec2((segmentWidth / 2), 0)); var _local7:b2Vec2 = _local5.ref.GetWorldPoint(new b2Vec2((-(segmentWidth) / 2), 0)); var _local8:b2Vec2 = _local7.Copy(); _local8.Subtract(_local6); _local8.Multiply((30 * _arg3)); _local4.ref.ApplyForce(_local8, _local6); _local8.Multiply(-1); _local5.ref.ApplyForce(_local8, _local7); } private function step(_arg1:Event):void{ var _local3:b2Vec2; var _local5:int; var _local6:spBody; var _local7:Number; var _local8:spBody; var _local9:b2Vec2; var _local2:int; while (_local2 < slammingsThrough.length) { if (!slammingsThrough[_local5].parent.dead){ _local6 = slammingsThrough[_local5]; if (numCuts == 0){ if (!slammingPasses[_local6.parent.id]){ Slamming(_local6.parent).removeFeet(); _local6.position.y = (y - 0.5); _local6.position = _local6.position; }; } else { slammingPasses[_local6.parent.id] = true; }; }; _local2++; }; slammingsThrough = new Array(); var _local4:Boolean; _local5 = 0; for (;_local5 < segments.length;_local5++) { _local7 = 1; if (cuts[_local5]){ var _local10 = cuts; var _local11 = _local5; var _local12 = (_local10[_local11] - 1); _local10[_local11] = _local12; if (!cuts[_local5]){ regrow(_local5); }; if (cuts[_local5] > 60){ continue; } else { forceTogether(_local5, (_local5 + 1), ((60 - cuts[_local5]) / 60)); }; }; if (cuts[(_local5 - 1)] > 60){ } else { if (_local5 == 0){ _local3 = new b2Vec2((x - 2), y); _local4 = true; } else { if (_local5 == (segments.length - 1)){ _local3 = new b2Vec2(((x + ((_local5 + 2) * segmentWidth)) + 1), y); _local4 = true; } else { _local3 = new b2Vec2((x + ((_local5 + 0.5) * segmentWidth)), (y - suspenderHeight)); _local4 = false; }; }; _local8 = spBody(segments[_local5]); _local9 = _local8.ref.GetWorldPoint(new b2Vec2(0, 0)); _local3.Subtract(_local9); _local3.Multiply(suspenderForce); if (!_local8.ref.IsSleeping()){ _local8.ref.ApplyForce(_local3, _local9); }; }; }; } private function regrow(_arg1:Number):void{ addJoint(joints[_arg1]); numCuts--; } override protected function initialize():void{ var _local1:spBody; var _local5:b2PolygonDef; var _local6:spBody; var _local7:b2Vec2; var _local8:spJoint; var _local2:Number = y; var _local3:int; while (_local3 < segmentCount) { _local5 = new b2PolygonDef(); _local5.SetAsBox((segmentWidth / 2), (segmentHeight / 2)); _local5.density = 1; _local6 = new spBody(); _local6.addShape(new spShape(_local5)); _local6.position.x = ((x + (segmentWidth / 2)) + (segmentWidth * _local3)); _local6.position.y = y; addBody(_local6); segments[_local3] = _local6; if (_local1){ _local7 = new b2Vec2(); _local7.x = (x + (segmentWidth * _local3)); _local7.y = _local2; _local8 = new BridgeJoint(_local6, _local1, _local7); addJoint(_local8); joints.push(_local8); } else { addJoint(new BridgeClampJoint(_local6, new b2Vec2(x, _local2), 1)); }; if (_local3 == (segmentCount - 1)){ addJoint(new BridgeClampJoint(_local6, new b2Vec2((x + (segmentCount * segmentWidth)), _local2), -1)); }; _local1 = _local6; _local3++; }; var _local4:spRectangle = new spRectangle(((segmentCount * segmentWidth) / 2), 0.5); _local4.def.isSensor = true; groundBody = new spBody(); groundBody.position.x = (((segmentCount * segmentWidth) / 2) + x); groundBody.position.y = (y + depth); groundBody.addShape(_local4); groundBody.name = "ground"; groundBody.density = 0; groundBody.useParentDensity = false; addBody(groundBody); } override protected function removeFromDisplay(_arg1:spDisplay):void{ _arg1.dynamicGround.removeChild(mc); mc = null; _arg1.removeEventListener("renderWorld", render); } public function cutBridgeAt(_arg1:spBody, _arg2:Number=-1):Boolean{ var _local3:int; if (_arg2 >= 0){ if (!cuts[_arg2]){ numCuts++; cuts[_arg2] = 120; removeJoint(joints[_arg2]); return (true); }; } else { _local3 = 1; while (_local3 < (segments.length - 1)) { if (_arg1 == segments[_local3]){ if (!cuts[_local3]){ numCuts++; cuts[_local3] = 120; removeJoint(joints[_local3]); return (true); }; }; _local3++; }; }; return (false); } override protected function removeFromWorld(_arg1:spWorld):void{ _arg1.removeEventListener("afterStep", step); } private function render(_arg1:Event):void{ var _local5:DisplayObject; var _local2:spDisplay = spDisplay(_arg1.currentTarget); var _local3:Number = _local2.drawScale; var _local4:int; while (_local4 < segmentCount) { _local5 = mc.getChildAt(_local4); _local5.x = ((segments[_local4].position.x - x) * _local3); _local5.y = ((segments[_local4].position.y - y) * _local3); _local5.rotation = (segments[_local4].angle * (180 / Math.PI)); _local4++; }; } override protected function addToDisplay(_arg1:spDisplay):void{ var _local3:MovieClip; mc = new Sprite(); mc.x = (x * _arg1.drawScale); mc.y = (y * _arg1.drawScale); mc.scrollRect = new Rectangle(((segmentWidth * _arg1.drawScale) * 0.5), -100, ((segmentWidth * (segmentCount - 1)) * _arg1.drawScale), 300); mc.x = (mc.x + mc.scrollRect.x); mc.y = (mc.y + mc.scrollRect.y); var _local2:int; while (_local2 < segmentCount) { _local3 = new segmentSymbol(); _local3.scaleX = (segmentWidth / 1.5); mc.addChildAt(_local3, _local2); _local2++; }; _arg1.dynamicGround.addChild(mc); _arg1.addEventListener("renderWorld", render, false, 0, true); } override protected function addToWorld(_arg1:spWorld):void{ _arg1.addEventListener("afterStep", step, false, 0, true); } override public function onAddContact(_arg1:b2ContactPoint, _arg2:spShape, _arg3:spShape):void{ if (_arg2.parent.name == "ground"){ if (_arg3.parent.parent.type == "slamming"){ slammingsThrough.push(_arg3.parent); }; }; } } }//package spill.slammings
Section 382
//Tutorial (spill.slammings.Tutorial) package spill.slammings { import flash.events.*; import flash.display.*; import flash.geom.*; import spill.slammings.sound.*; public class Tutorial extends MovieClip { private var currentIndex:Number;// = -1 private var buttons:Array; private var main:Main; private var game:Game; private var mc:Tutorial_mc; private var videos:Array; private var video:MovieClip; public function Tutorial(_arg1:Main=null, _arg2:Game=null, _arg3:Number=0){ videos = [TutorialVideo1, TutorialVideo2, TutorialVideo3, TutorialVideo4, TutorialVideo5]; buttons = []; mc = new Tutorial_mc(); addChild(mc); Music.playSong("tutorial"); main = _arg1; game = _arg2; super(); initButton(mc.tut1_btn, 0); initButton(mc.tut2_btn, 1); initButton(mc.tut3_btn, 2); initButton(mc.tut4_btn, 3); initButton(mc.tut5_btn, 4); if (game){ Utils.initButton(mc.skip_btn, backButtonClicked); mc.back_btn.visible = false; } else { Utils.initButton(mc.back_btn, backButtonClicked); mc.skip_btn.visible = false; }; Utils.initButton(mc.play_btn, playVideo); mc.play_btn.visible = false; mc.video.scrollRect = new Rectangle(0, 0, 160, 120); showTutorial(_arg3); } private function grainEffect(_arg1:Event):void{ randomGrain(mc.video.grain1); randomGrain(mc.video.grain2); randomGrain(mc.video.grain3); randomLine(mc.video.line); } private function playVideo(_arg1:MouseEvent=null):void{ addEventListener(Event.ENTER_FRAME, grainEffect, false, 0, true); mc.play_btn.visible = false; video.play(); } private function initButton(_arg1:MovieClip, _arg2:Number):void{ _arg1.buttonMode = true; _arg1.mouseChildren = false; _arg1.stop(); _arg1.index = _arg2; _arg1.addEventListener(MouseEvent.MOUSE_DOWN, tutorialButtonClicked); buttons[_arg2] = _arg1; } private function backButtonClicked(_arg1:Event):void{ if (game){ game.exitTutorial(); } else { main.goMainMenu(); }; } private function showTutorial(_arg1:Number):void{ if (video){ mc.video.removeChild(video); video.addFrameScript((video.totalFrames - 1), null); video.stop(); }; video = new (videos[_arg1]); mc.video.addChildAt(video, 1); video.addFrameScript((video.totalFrames - 1), videoEnded); video.stop(); mc.play_btn.visible = true; if (currentIndex >= 0){ buttons[currentIndex].enabled = true; buttons[currentIndex].gotoAndStop("_up"); }; currentIndex = _arg1; buttons[currentIndex].enabled = false; buttons[currentIndex].gotoAndStop("_down"); mc.picture.gotoAndStop((_arg1 + 1)); mc.text1.text = (("{Tutorial_Title_" + (_arg1 + 1)) + "}"); mc.text2.text = (("{Tutorial_Intro_" + (_arg1 + 1)) + "}"); mc.text3.text = (("{Tutorial_Info_" + (_arg1 + 1)) + "}"); mc.text4.text = (("{Tutorial_Footer_" + (_arg1 + 1)) + "}"); playVideo(); } private function tutorialButtonClicked(_arg1:MouseEvent):void{ showTutorial(_arg1.currentTarget.index); } private function randomGrain(_arg1:Sprite):void{ _arg1.rotation = (360 * Math.random()); _arg1.scaleX = (Math.random() * 0.2); _arg1.scaleY = (Math.random() * 0.2); _arg1.alpha = (Math.random() * 0.65); _arg1.x = (Math.random() * 160); _arg1.y = (Math.random() * 120); } private function randomLine(_arg1:Sprite):void{ _arg1.x = (Math.random() * 160); _arg1.alpha = (Math.random() * 0.3); } private function videoEnded():void{ trace("video Ended"); removeEventListener(Event.ENTER_FRAME, grainEffect); video.gotoAndStop(1); mc.play_btn.visible = true; } } }//package spill.slammings
Section 383
//Utils (spill.slammings.Utils) package spill.slammings { import flash.events.*; import flash.display.*; import spill.slammings.sound.*; import sfx.*; import spill.localisation.*; import flash.net.*; public class Utils { public static function initButton(_arg1:MovieClip, _arg2:Function=null):void{ _arg1.buttonMode = true; _arg1.mouseChildren = false; _arg1.stop(); _arg1.addEventListener(MouseEvent.ROLL_OVER, buttonRollOver, false, 0, true); _arg1.addEventListener(MouseEvent.CLICK, buttonClicked, false, 0, true); if ((_arg2 is Function)){ _arg1.addEventListener(MouseEvent.CLICK, _arg2, false, 0, true); }; } private static function buttonRollOver(_arg1:MouseEvent):void{ SoundFX.playSound(menu_touch, 1, 1, 0, 3); } private static function brandingClicked(_arg1:Event):void{ var _local2:String = SpilGame.getMoreGamesLink(MovieClip(_arg1.currentTarget).term); navigateToURL(new URLRequest(_local2), "_blank"); } private static function buttonClicked(_arg1:MouseEvent):void{ SoundFX.playSound(menu_otherpress, 1, 1, 0, 1); } public static function initBrandinButton(_arg1:MovieClip, _arg2:String):void{ initButton(_arg1, brandingClicked); _arg1.term = _arg2; } } }//package spill.slammings
Section 384
//WaterElement (spill.slammings.WaterElement) package spill.slammings { import flash.events.*; import flash.display.*; import spill.physics.*; import Box2D.Common.Math.*; import spill.slammings.display.*; import Box2D.Collision.*; import spill.slammings.character.*; import spill.physics.shapes.*; public class WaterElement extends spElement { public var y:Number;// = 4 private var display:WorldDisplay; public var width:Number;// = 7.5 private var touchingShapes:Object; private var mc:MovieClip; public var symbol:Class; private var waterBody:spBody; public var x:Number;// = 4 public function WaterElement(){ symbol = Water_mc; touchingShapes = new Object(); super(); useGlobalDensity = false; density = 0; } override public function onPersistContact(_arg1:b2ContactPoint, _arg2:spShape, _arg3:spShape):void{ touchingShapes[_arg3.id] = _arg3; } private function afterStep(_arg1:Event):void{ var _local2:spShape; var _local3:b2AABB; var _local4:spBody; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:b2Vec2; for each (_local2 in touchingShapes) { _local3 = new b2AABB(); _local4 = _local2.parent; _local2.ref.ComputeAABB(_local3, _local2.parent.ref.GetXForm()); _local5 = (_local3.upperBound.y - _local3.lowerBound.y); _local6 = (_local3.upperBound.x - _local3.lowerBound.x); _local7 = ((_local3.upperBound.y - y) / _local5); _local7 = Math.min(Math.max(_local7, 0), 1); _local8 = (((_local7 * _local5) * _local6) * 25); _local9 = _local3.upperBound.Copy(); _local9.Add(_local3.lowerBound.Copy()); _local9.Multiply(0.5); _local2.ref.GetBody().ApplyForce(new b2Vec2(0, (-(_local8) / _local2.density)), _local9); _local2.ref.GetBody().m_angularVelocity = (_local2.ref.GetBody().m_angularVelocity * 0.93); _local2.ref.GetBody().m_linearVelocity.Multiply(0.93); if ((_local4.parent is Slamming)){ if (type == "fire"){ Slamming(_local4.parent).burn(_local7); } else { Slamming(_local4.parent).drown(_local7); }; }; }; touchingShapes = new Object(); } override protected function stop():void{ spSettings.stopChildren(mc); } override protected function removeFromWorld(_arg1:spWorld):void{ _arg1.removeEventListener("afterStep", afterStep); } override protected function addToDisplay(_arg1:spDisplay):void{ mc = new symbol(); mc.width = ((width * 2) * _arg1.drawScale); _arg1.addChild(mc); mc.x = (x * _arg1.drawScale); mc.y = (y * _arg1.drawScale); } override protected function start():void{ spSettings.playChildren(mc); } override protected function removeFromDisplay(_arg1:spDisplay):void{ _arg1.removeChild(mc); } override protected function addToWorld(_arg1:spWorld):void{ var _local2:spRectangle = new spRectangle(width, 3, width, 3); waterBody = new spBody(); waterBody.addShape(_local2); waterBody.position.x = x; waterBody.position.y = y; _local2.def.isSensor = true; addBody(waterBody); _arg1.addEventListener("afterStep", afterStep, false, 0, true); } } }//package spill.slammings
Section 385
//Villager (spill.slammings.Villager) package spill.slammings { import flash.events.*; import flash.display.*; import spill.physics.*; import spill.slammings.display.*; import Box2D.Collision.*; import spill.physics.shapes.*; public class Villager extends spElement { private var display:WorldDisplay; private var villagerBody:spBody; private var resting:Boolean;// = false private var mc:MovieClip; private static var gCounter:Number = 0; public function Villager(){ filter.maskBits = (filter.maskBits & ~(GlobalSettings.dynamicGroundBit)); filter.maskBits = (filter.maskBits & ~(GlobalSettings.slammingBit)); useGlobalDensity = false; density = 2; } override protected function addToDisplay(_arg1:spDisplay):void{ display = WorldDisplay(_arg1); if (gCounter == 0){ mc = new DeadVillager1(); } else { if (gCounter == 1){ mc = new DeadVillager2(); } else { mc = new DeadVillager3(); }; }; gCounter++; gCounter = (gCounter % 3); display.tools.addChild(mc); } override protected function removeFromWorld(_arg1:spWorld):void{ _arg1.removeEventListener("afterStep", afterStep); } private function afterStep(_arg1:Event):void{ mc.x = (villagerBody.position.x * display.drawScale); mc.y = (villagerBody.position.y * display.drawScale); mc.rotation = (villagerBody.angle * (180 / Math.PI)); if (resting){ display.tools.removeChild(mc); display.deadSlammings.addChild(mc); removeBody(villagerBody); world.removeElement(this); }; } override public function onPersistContact(_arg1:b2ContactPoint, _arg2:spShape, _arg3:spShape):void{ if (_arg3.parent.parent.type == "ground"){ if ((((((Math.abs(_arg2.parent.linearVelocity.x) < 0.001)) && ((Math.abs(_arg2.parent.linearVelocity.y) < 0.001)))) && ((Math.abs(_arg2.parent.angularVelocity) < 0.001)))){ resting = true; }; }; } override protected function addToWorld(_arg1:spWorld):void{ var _local2:spRectangle = new spRectangle(0.4, 0.8); villagerBody = new spBody(); villagerBody.addShape(_local2); villagerBody.position.x = 64.5; villagerBody.position.y = 10; villagerBody.linearVelocity.x = -10; villagerBody.linearVelocity.y = (-8 * Math.random()); villagerBody.angularVelocity = ((Math.random() - 0.5) * 10); villagerBody.draggable = false; addBody(villagerBody); _arg1.addEventListener("afterStep", afterStep, false, 0, true); } } }//package spill.slammings
Section 386
//CombatText_anim_14 (ui_stuff_fla.CombatText_anim_14) package ui_stuff_fla { import flash.display.*; import flash.text.*; public dynamic class CombatText_anim_14 extends MovieClip { public var text:TextField; } }//package ui_stuff_fla
Section 387
//comboTextClip_21 (ui_stuff_fla.comboTextClip_21) package ui_stuff_fla { import flash.display.*; public dynamic class comboTextClip_21 extends MovieClip { public var tween:MovieClip; public function comboTextClip_21(){ addFrameScript(12, frame13); } function frame13(){ stop(); } } }//package ui_stuff_fla
Section 388
//tween_22 (ui_stuff_fla.tween_22) package ui_stuff_fla { import flash.display.*; import flash.text.*; public dynamic class tween_22 extends MovieClip { public var comboText:TextField; } }//package ui_stuff_fla
Section 389
//Arm (Arm) package { import flash.display.*; public dynamic class Arm extends MovieClip { } }//package
Section 390
//Arm_mc (Arm_mc) package { import flash.display.*; public dynamic class Arm_mc extends MovieClip { } }//package
Section 391
//Arm3 (Arm3) package { import flash.display.*; public dynamic class Arm3 extends MovieClip { } }//package
Section 392
//Arm3_mc (Arm3_mc) package { import flash.display.*; public dynamic class Arm3_mc extends MovieClip { } }//package
Section 393
//Arm4_mc (Arm4_mc) package { import flash.display.*; public dynamic class Arm4_mc extends MovieClip { } }//package
Section 394
//Arm5_mc (Arm5_mc) package { import flash.display.*; public dynamic class Arm5_mc extends MovieClip { } }//package
Section 395
//ArrowDisplay_mc (ArrowDisplay_mc) package { import flash.display.*; public dynamic class ArrowDisplay_mc extends MovieClip { public function ArrowDisplay_mc(){ addFrameScript(0, frame1, 5, frame6, 6, frame7, 10, frame11); } function frame6(){ visible = false; stop(); } function frame7(){ visible = true; } function frame1(){ stop(); } function frame11(){ stop(); } } }//package
Section 396
//Background_1_mc (Background_1_mc) package { import flash.display.*; public dynamic class Background_1_mc extends MovieClip { } }//package
Section 397
//Background2 (Background2) package { import flash.display.*; public dynamic class Background2 extends MovieClip { } }//package
Section 398
//Background3 (Background3) package { import flash.display.*; public dynamic class Background3 extends MovieClip { } }//package
Section 399
//Background4 (Background4) package { import flash.display.*; public dynamic class Background4 extends MovieClip { } }//package
Section 400
//Background5 (Background5) package { import flash.display.*; public dynamic class Background5 extends MovieClip { } }//package
Section 401
//Bomb_cursor (Bomb_cursor) package { import flash.display.*; public dynamic class Bomb_cursor extends MovieClip { } }//package
Section 402
//Bomb_explode (Bomb_explode) package { import flash.display.*; public dynamic class Bomb_explode extends MovieClip { } }//package
Section 403
//Bomb_mc (Bomb_mc) package { import flash.display.*; public dynamic class Bomb_mc extends MovieClip { } }//package
Section 404
//Bomb_tool (Bomb_tool) package { import flash.display.*; public dynamic class Bomb_tool extends MovieClip { } }//package
Section 405
//Boss_1 (Boss_1) package { import flash.display.*; public dynamic class Boss_1 extends MovieClip { public var body_normal:MovieClip; public var body_scared:MovieClip; public var arm:MovieClip; public var feet:MovieClip; public var nose:MovieClip; public var body_dead:MovieClip; public var body_angry:MovieClip; public var body_falling:MovieClip; } }//package
Section 406
//Boss_2 (Boss_2) package { import flash.display.*; public dynamic class Boss_2 extends MovieClip { public var body_normal:MovieClip; public var body_scared:MovieClip; public var arm:MovieClip; public var feet:MovieClip; public var nose:MovieClip; public var body_dead:MovieClip; public var body_angry:MovieClip; public var body_falling:MovieClip; } }//package
Section 407
//Boss_3 (Boss_3) package { import flash.display.*; public dynamic class Boss_3 extends MovieClip { public var body_normal:MovieClip; public var body_scared:MovieClip; public var arm:MovieClip; public var feet:MovieClip; public var nose:MovieClip; public var body_dead:MovieClip; public var body_angry:MovieClip; public var body_falling:MovieClip; } }//package
Section 408
//Boss_4 (Boss_4) package { import flash.display.*; public dynamic class Boss_4 extends MovieClip { public var body_normal:MovieClip; public var body_scared:MovieClip; public var arm:MovieClip; public var feet:MovieClip; public var nose:MovieClip; public var body_dead:MovieClip; public var body_angry:MovieClip; public var body_falling:MovieClip; } }//package
Section 409
//Boss_5 (Boss_5) package { import flash.display.*; public dynamic class Boss_5 extends MovieClip { public var body_normal:MovieClip; public var body_scared:MovieClip; public var arm:MovieClip; public var feet:MovieClip; public var nose:MovieClip; public var body_dead:MovieClip; public var body_angry:MovieClip; public var body_falling:MovieClip; } }//package
Section 410
//Boss1_arm (Boss1_arm) package { import flash.display.*; public dynamic class Boss1_arm extends MovieClip { } }//package
Section 411
//Boss1_cut1 (Boss1_cut1) package { import flash.display.*; public dynamic class Boss1_cut1 extends MovieClip { public function Boss1_cut1(){ addFrameScript(19, frame20); } function frame20(){ stop(); } } }//package
Section 412
//Boss1_cut2 (Boss1_cut2) package { import flash.display.*; public dynamic class Boss1_cut2 extends MovieClip { public function Boss1_cut2(){ addFrameScript(19, frame20); } function frame20(){ stop(); } } }//package
Section 413
//Boss1_feet (Boss1_feet) package { import flash.display.*; public dynamic class Boss1_feet extends MovieClip { } }//package
Section 414
//Boss2_cut1 (Boss2_cut1) package { import flash.display.*; public dynamic class Boss2_cut1 extends MovieClip { public function Boss2_cut1(){ addFrameScript(19, frame20); } function frame20(){ stop(); } } }//package
Section 415
//Boss2_cut2 (Boss2_cut2) package { import flash.display.*; public dynamic class Boss2_cut2 extends MovieClip { public function Boss2_cut2(){ addFrameScript(19, frame20); } function frame20(){ stop(); } } }//package
Section 416
//Boss3_cut1 (Boss3_cut1) package { import flash.display.*; public dynamic class Boss3_cut1 extends MovieClip { public function Boss3_cut1(){ addFrameScript(19, frame20); } function frame20(){ stop(); } } }//package
Section 417
//Boss3_cut2 (Boss3_cut2) package { import flash.display.*; public dynamic class Boss3_cut2 extends MovieClip { public function Boss3_cut2(){ addFrameScript(19, frame20); } function frame20(){ stop(); } } }//package
Section 418
//Boss4_cut1 (Boss4_cut1) package { import flash.display.*; public dynamic class Boss4_cut1 extends MovieClip { public function Boss4_cut1(){ addFrameScript(19, frame20); } function frame20(){ stop(); } } }//package
Section 419
//Boss4_cut2 (Boss4_cut2) package { import flash.display.*; public dynamic class Boss4_cut2 extends MovieClip { public function Boss4_cut2(){ addFrameScript(19, frame20); } function frame20(){ stop(); } } }//package
Section 420
//Boss5_cut1 (Boss5_cut1) package { import flash.display.*; public dynamic class Boss5_cut1 extends MovieClip { public function Boss5_cut1(){ addFrameScript(19, frame20); } function frame20(){ stop(); } } }//package
Section 421
//Boss5_cut2 (Boss5_cut2) package { import flash.display.*; public dynamic class Boss5_cut2 extends MovieClip { public function Boss5_cut2(){ addFrameScript(19, frame20); } function frame20(){ stop(); } } }//package
Section 422
//BrandingButton_mc (BrandingButton_mc) package { import flash.display.*; import spill.localisation.*; public dynamic class BrandingButton_mc extends MovieClip { public var __id33_:LocalizedTextField; public function BrandingButton_mc(){ __setProp___id33__more_1(); } function __setProp___id33__more_1(){ try { __id33_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id33_.text = "{Branding_More_Games_Sentence_Short}"; __id33_.textColor = 0xCC9900; __id33_.textSize = 12; __id33_.bold = true; __id33_.embedFonts = true; __id33_.font = "Comic Sans MS"; __id33_.hAlign = "center"; __id33_.multiline = false; __id33_.vAlign = "top"; __id33_.antiAliasType = "normal"; __id33_.glowBlur = 3; __id33_.glowColor = 0x330000; __id33_.useGlowFilter = true; __id33_.glowQuality = 2; __id33_.glowStrength = 5; __id33_.gridFitType = "pixel"; __id33_.italic = false; __id33_.selectable = false; __id33_.underline = false; try { __id33_["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package
Section 423
//Bridge_part (Bridge_part) package { import flash.display.*; public dynamic class Bridge_part extends MovieClip { } }//package
Section 424
//Bridgepart_2 (Bridgepart_2) package { import flash.display.*; public dynamic class Bridgepart_2 extends MovieClip { } }//package
Section 425
//Bridgepart_4 (Bridgepart_4) package { import flash.display.*; public dynamic class Bridgepart_4 extends MovieClip { } }//package
Section 426
//Bridgepart_ice (Bridgepart_ice) package { import flash.display.*; public dynamic class Bridgepart_ice extends MovieClip { } }//package
Section 427
//Bridgepart5 (Bridgepart5) package { import flash.display.*; public dynamic class Bridgepart5 extends MovieClip { } }//package
Section 428
//Button_background (Button_background) package { import flash.display.*; import flash.text.*; public dynamic class Button_background extends MovieClip { public var key_text:TextField; public var amount_text:TextField; } }//package
Section 429
//COM_LoadingBar (COM_LoadingBar) package { import flash.display.*; public dynamic class COM_LoadingBar extends MovieClip { public var _btn:Lethe_Button_Back; } }//package
Section 430
//COM_LoadingProgress (COM_LoadingProgress) package { import flash.display.*; public dynamic class COM_LoadingProgress extends MovieClip { } }//package
Section 431
//CombatText_mc (CombatText_mc) package { import flash.display.*; public dynamic class CombatText_mc extends MovieClip { public var anim:MovieClip; public var happy_face:MovieClip; public function CombatText_mc(){ addFrameScript(64, frame65); } function frame65(){ stop(); } } }//package
Section 432
//ComboCounter_mc (ComboCounter_mc) package { import flash.display.*; import flash.text.*; public dynamic class ComboCounter_mc extends MovieClip { public var clock:MovieClip; public var score_txt:TextField; public var text_mc:MovieClip; public function ComboCounter_mc(){ addFrameScript(0, frame1, 6, frame7); } function frame7(){ stop(); } function frame1(){ stop(); } } }//package
Section 433
//DeadVillager1 (DeadVillager1) package { import flash.display.*; public dynamic class DeadVillager1 extends MovieClip { } }//package
Section 434
//DeadVillager2 (DeadVillager2) package { import flash.display.*; public dynamic class DeadVillager2 extends MovieClip { } }//package
Section 435
//DeadVillager3 (DeadVillager3) package { import flash.display.*; public dynamic class DeadVillager3 extends MovieClip { } }//package
Section 436
//Drawing_tool (Drawing_tool) package { import flash.display.*; public dynamic class Drawing_tool extends MovieClip { } }//package
Section 437
//Fire_mc (Fire_mc) package { import flash.display.*; public dynamic class Fire_mc extends MovieClip { } }//package
Section 438
//Fist_tool (Fist_tool) package { import flash.display.*; public dynamic class Fist_tool extends MovieClip { } }//package
Section 439
//Foot (Foot) package { import flash.display.*; public dynamic class Foot extends MovieClip { } }//package
Section 440
//Forbidden (Forbidden) package { import flash.display.*; public dynamic class Forbidden extends MovieClip { } }//package
Section 441
//Foreground1 (Foreground1) package { import flash.display.*; public dynamic class Foreground1 extends MovieClip { } }//package
Section 442
//Foreground2 (Foreground2) package { import flash.display.*; public dynamic class Foreground2 extends MovieClip { } }//package
Section 443
//Foreground3 (Foreground3) package { import flash.display.*; public dynamic class Foreground3 extends MovieClip { } }//package
Section 444
//Foreground4 (Foreground4) package { import flash.display.*; public dynamic class Foreground4 extends MovieClip { } }//package
Section 445
//Foreground5 (Foreground5) package { import flash.display.*; public dynamic class Foreground5 extends MovieClip { } }//package
Section 446
//GameOver_mc (GameOver_mc) package { import flash.display.*; import flash.text.*; import spill.localisation.*; public dynamic class GameOver_mc extends MovieClip { public var medal:MovieClip; public var statistics:MovieClip; public var moregames_btn:MovieClip; public var background:MovieClip; public var mainmenu_btn:MovieClip; public var score_txt:TextField; public var retry_btn:MovieClip; public var title:MovieClip; public var __id8_:LocalizedTextField; public var nextlevel_btn:MovieClip; public var submit_btn:MovieClip; public var name_txt:TextField; public var stats_btn:MovieClip; public var __id4_:LocalizedTextField; public function GameOver_mc(){ __setProp___id4__3in1MENU_gameover_1(); __setProp___id8__3in1MENU_gameover_1(); } function __setProp___id8__3in1MENU_gameover_1(){ try { __id8_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id8_.text = "{Your_Score}"; __id8_.textColor = 0xFFFF00; __id8_.textSize = 12; __id8_.bold = true; __id8_.embedFonts = true; __id8_.font = "Comic Sans MS"; __id8_.hAlign = "center"; __id8_.multiline = false; __id8_.vAlign = "top"; __id8_.antiAliasType = "advanced"; __id8_.glowBlur = 3; __id8_.glowColor = 0; __id8_.useGlowFilter = false; __id8_.glowQuality = 1; __id8_.glowStrength = 5; __id8_.gridFitType = "pixel"; __id8_.italic = false; __id8_.selectable = false; __id8_.underline = false; try { __id8_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function __setProp___id4__3in1MENU_gameover_1(){ try { __id4_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id4_.text = "{Your_Name}"; __id4_.textColor = 0xFFFF00; __id4_.textSize = 12; __id4_.bold = true; __id4_.embedFonts = true; __id4_.font = "Comic Sans MS"; __id4_.hAlign = "center"; __id4_.multiline = false; __id4_.vAlign = "top"; __id4_.antiAliasType = "advanced"; __id4_.glowBlur = 3; __id4_.glowColor = 0; __id4_.useGlowFilter = false; __id4_.glowQuality = 1; __id4_.glowStrength = 5; __id4_.gridFitType = "pixel"; __id4_.italic = false; __id4_.selectable = false; __id4_.underline = false; try { __id4_["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package
Section 447
//Grab_cursor (Grab_cursor) package { import flash.display.*; public dynamic class Grab_cursor extends MovieClip { } }//package
Section 448
//Grab_tool (Grab_tool) package { import flash.display.*; public dynamic class Grab_tool extends MovieClip { } }//package
Section 449
//Grass (Grass) package { import flash.display.*; public dynamic class Grass extends MovieClip { } }//package
Section 450
//GrassTexture2 (GrassTexture2) package { import flash.display.*; public dynamic class GrassTexture2 extends MovieClip { } }//package
Section 451
//GrassTexture4 (GrassTexture4) package { import flash.display.*; public dynamic class GrassTexture4 extends MovieClip { } }//package
Section 452
//GrassTexture5 (GrassTexture5) package { import flash.display.*; public dynamic class GrassTexture5 extends MovieClip { } }//package
Section 453
//GroundTexture2 (GroundTexture2) package { import flash.display.*; public dynamic class GroundTexture2 extends MovieClip { } }//package
Section 454
//GroundTexture3 (GroundTexture3) package { import flash.display.*; public dynamic class GroundTexture3 extends MovieClip { } }//package
Section 455
//GroundTexture4 (GroundTexture4) package { import flash.display.*; public dynamic class GroundTexture4 extends MovieClip { } }//package
Section 456
//GroundTexture5 (GroundTexture5) package { import flash.display.*; public dynamic class GroundTexture5 extends MovieClip { } }//package
Section 457
//Hand_mc (Hand_mc) package { import flash.display.*; public dynamic class Hand_mc extends MovieClip { } }//package
Section 458
//Healthbar_mc (Healthbar_mc) package { import flash.display.*; public dynamic class Healthbar_mc extends MovieClip { } }//package
Section 459
//Highscore_mc (Highscore_mc) package { import flash.display.*; import spill.localisation.*; public dynamic class Highscore_mc extends MovieClip { public var back_btn:MovieClip; public var moregames_btn:MovieClip; public var __id12_:LocalizedTextField; public function Highscore_mc(){ __setProp___id12__highscoresmc_Layer1_1(); } function __setProp___id12__highscoresmc_Layer1_1(){ try { __id12_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id12_.text = "{High_Scores}"; __id12_.textColor = 0xFF0000; __id12_.textSize = 50; __id12_.bold = false; __id12_.embedFonts = true; __id12_.font = "Comic Sans MS"; __id12_.hAlign = "center"; __id12_.multiline = false; __id12_.vAlign = "top"; __id12_.antiAliasType = "normal"; __id12_.glowBlur = 3; __id12_.glowColor = 0x663300; __id12_.useGlowFilter = true; __id12_.glowQuality = 3; __id12_.glowStrength = 5; __id12_.gridFitType = "pixel"; __id12_.italic = false; __id12_.selectable = false; __id12_.underline = false; try { __id12_["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package
Section 460
//IceTexture (IceTexture) package { import flash.display.*; public dynamic class IceTexture extends MovieClip { } }//package
Section 461
//kopimi (kopimi) package { import flash.display.*; public dynamic class kopimi extends MovieClip { } }//package
Section 462
//Lemming1 (Lemming1) package { import flash.display.*; public dynamic class Lemming1 extends MovieClip { public var body_normal:MovieClip; public var body_scared:MovieClip; public var wings_normal:MovieClip; public var arm:Arm; public var body_drowning:Lemming1_drowning; public var feet:MovieClip; public var nose:Nose; public var body_dead:MovieClip; public var wings_flying:MovieClip; public var body_falling:lemming1_valt; public var body_angry:MovieClip; } }//package
Section 463
//Lemming1_cut1 (Lemming1_cut1) package { import flash.display.*; public dynamic class Lemming1_cut1 extends MovieClip { public function Lemming1_cut1(){ addFrameScript(20, frame21); } function frame21(){ stop(); } } }//package
Section 464
//Lemming1_cut2 (Lemming1_cut2) package { import flash.display.*; public dynamic class Lemming1_cut2 extends MovieClip { public function Lemming1_cut2(){ addFrameScript(19, frame20); } function frame20(){ stop(); } } }//package
Section 465
//Lemming1_drowning (Lemming1_drowning) package { import flash.display.*; public dynamic class Lemming1_drowning extends MovieClip { } }//package
Section 466
//lemming1_valt (lemming1_valt) package { import flash.display.*; public dynamic class lemming1_valt extends MovieClip { } }//package
Section 467
//LemmingBlip_mc (LemmingBlip_mc) package { import flash.display.*; public dynamic class LemmingBlip_mc extends MovieClip { public function LemmingBlip_mc(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 468
//Lethe_Alert_Page (Lethe_Alert_Page) package { import flash.display.*; public dynamic class Lethe_Alert_Page extends MovieClip { } }//package
Section 469
//Lethe_BackGround (Lethe_BackGround) package { import flash.display.*; public dynamic class Lethe_BackGround extends MovieClip { } }//package
Section 470
//Lethe_Button_Back (Lethe_Button_Back) package { import flash.display.*; public dynamic class Lethe_Button_Back extends MovieClip { } }//package
Section 471
//Lethe_Button_Down (Lethe_Button_Down) package { import flash.display.*; public dynamic class Lethe_Button_Down extends MovieClip { public var _txt:MovieClip; } }//package
Section 472
//Lethe_Button_Down2 (Lethe_Button_Down2) package { import flash.display.*; public dynamic class Lethe_Button_Down2 extends MovieClip { public var _txt:MovieClip; } }//package
Section 473
//Lethe_Button_Down3 (Lethe_Button_Down3) package { import flash.display.*; public dynamic class Lethe_Button_Down3 extends MovieClip { public var _txt:MovieClip; } }//package
Section 474
//Lethe_Button_Up (Lethe_Button_Up) package { import flash.display.*; public dynamic class Lethe_Button_Up extends MovieClip { public var _txt:MovieClip; } }//package
Section 475
//Lethe_Button_Up2 (Lethe_Button_Up2) package { import flash.display.*; public dynamic class Lethe_Button_Up2 extends MovieClip { public var _txt:MovieClip; } }//package
Section 476
//Lethe_Button_Up3 (Lethe_Button_Up3) package { import flash.display.*; public dynamic class Lethe_Button_Up3 extends MovieClip { public var _txt:MovieClip; } }//package
Section 477
//Lethe_Continue_Button (Lethe_Continue_Button) package { import flash.display.*; public dynamic class Lethe_Continue_Button extends MovieClip { public var _txt:Lethe_txt2; } }//package
Section 478
//Lethe_FocusLine (Lethe_FocusLine) package { import flash.display.*; public dynamic class Lethe_FocusLine extends MovieClip { } }//package
Section 479
//Lethe_LineBack (Lethe_LineBack) package { import flash.display.*; public dynamic class Lethe_LineBack extends MovieClip { } }//package
Section 480
//Lethe_LineBack2 (Lethe_LineBack2) package { import flash.display.*; public dynamic class Lethe_LineBack2 extends MovieClip { } }//package
Section 481
//Lethe_Link_Button (Lethe_Link_Button) package { import flash.display.*; public dynamic class Lethe_Link_Button extends MovieClip { } }//package
Section 482
//Lethe_Loading_Text (Lethe_Loading_Text) package { import flash.display.*; public dynamic class Lethe_Loading_Text extends MovieClip { } }//package
Section 483
//Lethe_PreviewMc (Lethe_PreviewMc) package { import flash.display.*; public dynamic class Lethe_PreviewMc extends MovieClip { } }//package
Section 484
//Lethe_Text3 (Lethe_Text3) package { import O111111Ol111.O111111Ol.*; public dynamic class Lethe_Text3 extends O111111O1 { } }//package
Section 485
//Lethe_txt1 (Lethe_txt1) package { import O111111Ol111.O111111Ol.*; public dynamic class Lethe_txt1 extends O111111O1 { } }//package
Section 486
//Lethe_txt2 (Lethe_txt2) package { import O111111Ol111.O111111Ol.*; public dynamic class Lethe_txt2 extends O111111O1 { } }//package
Section 487
//LevelModeMenu (LevelModeMenu) package { import flash.display.*; import spill.localisation.*; public dynamic class LevelModeMenu extends MovieClip { public var cancel_btn:MovieClip; public var __id29_:LocalizedTextField; public var godmode_btn:MovieClip; public var campaign_btn:MovieClip; public function LevelModeMenu(){ __setProp___id29__selectmodemc_Layer1_1(); } function __setProp___id29__selectmodemc_Layer1_1(){ try { __id29_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id29_.text = "{Select_Mode}"; __id29_.textColor = 0xFFFF00; __id29_.textSize = 14; __id29_.bold = true; __id29_.embedFonts = true; __id29_.font = "Comic Sans MS"; __id29_.hAlign = "center"; __id29_.multiline = false; __id29_.vAlign = "top"; __id29_.antiAliasType = "normal"; __id29_.glowBlur = 3; __id29_.glowColor = 0; __id29_.useGlowFilter = false; __id29_.glowQuality = 1; __id29_.glowStrength = 5; __id29_.gridFitType = "pixel"; __id29_.italic = false; __id29_.selectable = false; __id29_.underline = false; try { __id29_["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package
Section 488
//LevelSelectionCampaign_mc (LevelSelectionCampaign_mc) package { import flash.display.*; import spill.localisation.*; public dynamic class LevelSelectionCampaign_mc extends MovieClip { public var back_btn:MovieClip; public var __id17_:LocalizedTextField; public var moregames_btn:MovieClip; public var __id18_:LocalizedTextField; public var level3_btn:MovieClip; public var level5_btn:MovieClip; public var level1_icon:MovieClip; public var level1_btn:MovieClip; public var level4_icon:MovieClip; public var level3_icon:MovieClip; public var level4_btn:MovieClip; public var level5_icon:MovieClip; public var level2_btn:MovieClip; public var level2_icon:MovieClip; public function LevelSelectionCampaign_mc(){ __setProp___id18__campaignmc_Layer1_1(); __setProp___id17__campaignmc_Layer1_1(); } function __setProp___id18__campaignmc_Layer1_1(){ try { __id18_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id18_.text = "{Campaign_Mode}"; __id18_.textColor = 15327532; __id18_.textSize = 50; __id18_.bold = false; __id18_.embedFonts = true; __id18_.font = "Comic Sans MS"; __id18_.hAlign = "center"; __id18_.multiline = false; __id18_.vAlign = "top"; __id18_.antiAliasType = "normal"; __id18_.glowBlur = 3; __id18_.glowColor = 0x663300; __id18_.useGlowFilter = true; __id18_.glowQuality = 3; __id18_.glowStrength = 5; __id18_.gridFitType = "pixel"; __id18_.italic = false; __id18_.selectable = false; __id18_.underline = false; try { __id18_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function __setProp___id17__campaignmc_Layer1_1(){ try { __id17_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id17_.text = "{Select_Level}"; __id17_.textColor = 0xFFF100; __id17_.textSize = 15; __id17_.bold = false; __id17_.embedFonts = true; __id17_.font = "Comic Sans MS"; __id17_.hAlign = "center"; __id17_.multiline = false; __id17_.vAlign = "top"; __id17_.antiAliasType = "normal"; __id17_.glowBlur = 5; __id17_.glowColor = 0x333300; __id17_.useGlowFilter = true; __id17_.glowQuality = 1; __id17_.glowStrength = 5; __id17_.gridFitType = "pixel"; __id17_.italic = false; __id17_.selectable = false; __id17_.underline = false; try { __id17_["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package
Section 489
//LevelSelectionGodMode_mc (LevelSelectionGodMode_mc) package { import flash.display.*; import spill.localisation.*; public dynamic class LevelSelectionGodMode_mc extends MovieClip { public var back_btn:MovieClip; public var moregames_btn:MovieClip; public var level3_btn:MovieClip; public var level5_btn:MovieClip; public var level1_icon:MovieClip; public var level1_btn:MovieClip; public var level4_icon:MovieClip; public var level3_icon:MovieClip; public var level4_btn:MovieClip; public var level5_icon:MovieClip; public var level2_btn:MovieClip; public var __id15_:LocalizedTextField; public var level2_icon:MovieClip; public var __id16_:LocalizedTextField; public function LevelSelectionGodMode_mc(){ __setProp___id15__godmodemc_Layer1_1(); __setProp___id16__godmodemc_Layer1_1(); } function __setProp___id15__godmodemc_Layer1_1(){ try { __id15_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id15_.text = "{God_Mode}"; __id15_.textColor = 0xFFFFFF; __id15_.textSize = 50; __id15_.bold = false; __id15_.embedFonts = true; __id15_.font = "Comic Sans MS"; __id15_.hAlign = "center"; __id15_.multiline = false; __id15_.vAlign = "top"; __id15_.antiAliasType = "normal"; __id15_.glowBlur = 3; __id15_.glowColor = 0x333300; __id15_.useGlowFilter = true; __id15_.glowQuality = 3; __id15_.glowStrength = 5; __id15_.gridFitType = "pixel"; __id15_.italic = false; __id15_.selectable = false; __id15_.underline = false; try { __id15_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function __setProp___id16__godmodemc_Layer1_1(){ try { __id16_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id16_.text = "{Select_Level}"; __id16_.textColor = 0xFFF100; __id16_.textSize = 15; __id16_.bold = false; __id16_.embedFonts = true; __id16_.font = "Comic Sans MS"; __id16_.hAlign = "center"; __id16_.multiline = false; __id16_.vAlign = "top"; __id16_.antiAliasType = "normal"; __id16_.glowBlur = 5; __id16_.glowColor = 0x333300; __id16_.useGlowFilter = true; __id16_.glowQuality = 1; __id16_.glowStrength = 5; __id16_.gridFitType = "pixel"; __id16_.italic = false; __id16_.selectable = false; __id16_.underline = false; try { __id16_["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package
Section 490
//Main (Main) package { import flash.events.*; import flash.display.*; import fl.transitions.*; import spill.slammings.*; import spill.physics.*; import spill.slammings.display.*; import spill.slammings.tools.*; import spill.slammings.character.*; import spill.slammings.sound.*; import spill.slammings.menus.*; import spill.slammings.levels.*; import fl.motion.easing.*; import spill.physics.shapes.*; import spill.localisation.*; import spill.physics.elements.*; import spill.slammings.tracker.*; import flash.ui.*; public class Main extends Sprite { private var O11O:O11111OO11; private var currentScreen:MovieClip; private var levelMode:Boolean; private var transition:TransitionManager; private var transitionParameters:Object; private var levelNum:Number; private var stats:GameStats; private var lastScreen:MovieClip; private var transitioning:Boolean;// = false private var levels:Array; private var game:Game; public function Main():void{ levels = [Level1, Level2, Level3, Level4, Level5]; transitionParameters = {type:Fade, direction:Transition.OUT, duration:1, startPoint:5, easing:Quadratic.easeOut}; super(); if (stage){ init(); } else { addEventListener(Event.ADDED_TO_STAGE, init); }; TextFieldFit.forceAAType = "advanced"; } public function O01l10(_arg1:String, _arg2:Number):void{ O11O.O11111O10(_arg2, _arg1); goHighScores(); } private function gameOver(_arg1:Event):void{ stage.quality = StageQuality.BEST; stats = game.gameStats; SaveGameData.levelCompleted(stats); if ((((stats.levelNum == 0)) && (stats.success))){ Analytics.levelCompleteEvent(); } else { if (stats.gameComplete){ Analytics.gameCompletedEvent(); }; }; game.removeEventListener("gameOver", gameOver, false); game.removeEventListener("userQuit", quitGame, false); goGameOverMenu(); Mouse.show(); } private function showScreen(_arg1:MovieClip):void{ var _local2:BitmapData; var _local3:Bitmap; if (transitioning){ transitionComplete(); }; addChildAt(_arg1, 0); if (currentScreen){ _local2 = new BitmapData(640, 480, true, 0); _local2.draw(currentScreen); _local3 = new Bitmap(_local2); lastScreen = new MovieClip(); lastScreen.addChild(_local3); lastScreen.mouseEnabled = false; lastScreen.mouseChildren = false; addChild(lastScreen); if (currentScreen == game){ game.destroy(); game = null; }; removeChild(currentScreen); transition = new TransitionManager(lastScreen); transition.addEventListener("allTransitionsOutDone", transitionComplete); transition.startTransition(transitionParameters); transitioning = true; }; currentScreen = _arg1; } private function init(_arg1:Event=null):void{ SaveGameData.init(); Analytics.mainScreenEvent(); goMainMenu(); O11O = new O11111OO11(); O11O.O111111O(parent, "Slamming", 1, "Slammings", 0, "normal", 4); if (!O11O.O11111100()){ trace("Highscores Disabled"); }; stage.quality = StageQuality.BEST; stage.frameRate = 31; } private function traceCached(_arg1:Event):void{ GlobalSettings.getCachedMCs(this); } public function goLevelSelectMenu(_arg1:Boolean):void{ showScreen(new LevelSelectionMenu(this, _arg1)); } public function goMainMenu(_arg1:Event=null):void{ if ((currentScreen is MainMenu)){ return; }; showScreen(new MainMenu(this)); Music.playSong("mainScreen"); } private function quitGame(_arg1:Event=null):void{ stage.quality = StageQuality.BEST; game.removeEventListener("gameOver", gameOver, false); game.removeEventListener("userQuit", quitGame, false); goMainMenu(); Mouse.show(); } public function goHighScores(_arg1:Event=null):void{ showScreen(new HighScoreScreen(this, O11O, stats)); Music.playSong("mainScreen"); } private function transitionComplete(_arg1:Event=null):void{ transition.removeEventListener("allTransitionsOutDone", transitionComplete); transitioning = false; removeChild(lastScreen); } public function goGameOverMenu(_arg1:Event=null):void{ showScreen(new GameOver(this, stats)); } public function goTutorial(_arg1:Event=null):void{ showScreen(new Tutorial(this)); } public function startGame(_arg1:Number, _arg2:Boolean):void{ game = new levels[_arg1](_arg2); game.addEventListener("gameOver", gameOver, false, 0, true); game.addEventListener("userQuit", quitGame, false, 0, true); stage.quality = SaveGameData.quality; showScreen(game); } } }//package
Section 491
//MainMenu_mc (MainMenu_mc) package { import flash.display.*; public dynamic class MainMenu_mc extends MovieClip { public var sound:MovieClip; public var moregames_btn:MovieClip; public var music:MovieClip; public var qualityControl:MovieClip; public var htp_btn:MovieClip; public var highscores_btn:MovieClip; public var start_btn:MovieClip; } }//package
Section 492
//Nose (Nose) package { import flash.display.*; public dynamic class Nose extends MovieClip { } }//package
Section 493
//O11111OO11 (O11111OO11) package { import flash.events.*; import flash.display.*; import O111111Ol111.O111111Ol.*; import flash.utils.*; import flash.text.*; import flash.net.*; import flash.system.*; public class O11111OO11 extends MovieClip { private const O1111110l0:Array; private var O11111OO0:int; private var O11111OO1:String; private var O11111OOO:int; private var O11111OOl:int; private var O11111O01:MovieClip; private var O11111O00; private var O111111000:MovieClip; private var O11111O0O:Boolean;// = false private var O11111O0l:Loader; private var O11111O1O:String; private var O11111O1l:int; private var O11111O100:String; private var O11111l11; private var O11111O110:String; private var O111100OO:String; private var O11111l1O; private var O11111l1l; private var O11111Ol0:Boolean;// = false private var O11111Ol1:Array; private var O11111OlO:String; private var O11111Oll:Boolean; private var O1111100O1:int; public function O11111OO11():void{ O11111Ol0 = false; O11111O0O = false; O1111110l0 = ["Failed to get highscores.", "Failed to get highscores.", "Failed to get highscores.", "Failed to get highscores.", "Ophalen van de highscores mislukt", "Classement échoué.", "Highscores konnten nicht geladen werden.", "Error al cargar las puntuaciones máximas.", "Os recordes não foram recebidos.", "Não conseguiu obter uma das melhores pontuações", "Impossibile recuperare dati sui record.", "Kunde ej hämta toppoäng.", "Pobieranie rankingu nie powiodło się.", "Ошибка! Получить данные о рекордах не удалось!", "Yüksek skorlar alınamadı.", "Gagal untuk mendapatkan skor tertinggi", "Gagal mendapatkan skor tertinggi.", "ハイスコア情報の取得に失敗しました", "获取排行榜失败"]; super(); Security.allowDomain("*"); this.stop(); O111110OO(null); } private function O1111100O():void{ var O11111l10:int; var O11111l0O:*; var O11111l0l:*; var O11111lO1:*; O11111l10 = 0; O11111l0O = getDefinitionByName("Lethe_Continue_Button"); O11111l0l = getDefinitionByName("Lethe_Link_Button"); while (true) { try { O11111lO1 = O11111O01.getChildAt(O11111l10); if ((O11111lO1 is O11111l0O)){ O111110l1(O11111lO1); O11111lO1.addEventListener(MouseEvent.CLICK, O11111000, false, 0, true); } else { if ((O11111lO1 is O11111l0l)){ O111110l1(O11111lO1); O11111lO1.addEventListener(MouseEvent.CLICK, O1111100l, false, 0, true); }; }; O11111l10 = (O11111l10 + 1); } catch(O11111lll:Error) { break; }; }; } private function O1111100l(_arg1:MouseEvent):void{ O111111OO.O11111OO0().O11111O01(); this.O1111O1Ol(new Event("00111111000")); } public function O111111001():void{ if (O11111l1l){ O11111l1l.O11111l0l(); }; } public function O11111O11():void{ if (O11111l1l){ O11111l1l.O111111lO = true; O11111l1l.O11111l1l(); }; } public function O11111O10(_arg1:int, _arg2:String):void{ if (O11111l1l){ O11111l1l.O11111l10(_arg1, _arg2); }; } public function O111111010():void{ if (O11111l1l){ O11111l1l.O11111l0O(); }; } private function O1111O1O1(_arg1:String){ return (getDefinitionByName(_arg1)); } private function O1111O1OO(_arg1:IOErrorEvent):void{ removeEventListener(Event.ENTER_FRAME, O111110O0); O11111l1O.visible = true; O11111l11.text = O1111110l0[(O111111OO.O11111OO0().O11111Ol0() - 1)]; } public function O111111O(_arg1, _arg2:String="default", _arg3:int=1, _arg4="", _arg5:int=0, _arg6:String="normal", _arg7:int=1):void{ O111111OO.O11111OO0().O11111OlO(_arg3); O11111O1O = _arg2; if (_arg3 == 20){ O11111O1l = 1; } else { O11111O1l = _arg3; }; if (_arg4 == ""){ O11111O100 = O11111O1O; } else { O11111O100 = _arg4; }; O1111100O1 = _arg7; O11111OO0 = _arg5; O111100OO = _arg6; O11111OOO = Number(_arg1.loaderInfo.parameters["id"]); O11111OOl = Number(_arg1.loaderInfo.parameters["s"]); O11111OO1 = "http://www8.agame.com/games/flash/highscore/Submiter.swf"; O111111l1 = false; O11111Ol0 = true; } private function O1111O1Ol(_arg1:Event):void{ this.dispatchEvent(_arg1); } private function O1111O111():void{ var _local1:*; stop(); O11111O0l = new Loader(); O11111O0l.load(new URLRequest(O11111OO1)); this.addChildAt(O11111O0l, 0); this.addEventListener(Event.ENTER_FRAME, O111110O0); O11111O0l.contentLoaderInfo.addEventListener(Event.COMPLETE, O1111O110); O11111O0l.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, O1111O1OO); _local1 = getDefinitionByName("COM_LoadingBar"); if (_local1 != null){ O111111000 = new (_local1); this.addChild(O111111000); O1111O11O(); }; } private function O1111O110(_arg1:Event):void{ this.dispatchEvent(new Event(Event.COMPLETE)); O11111l1l = _arg1.currentTarget.content; O11111l1l.addEventListener("000111000100", O1111O1Ol); O11111l1l.addEventListener("00111111000", O1111O1Ol); O11111l1l.addEventListener("000000000000", O1111O1Ol); O11111l1l.addEventListener("010101010100", O1111O1Ol); O11111l1l.addEventListener("000001111111", O1111O1Ol); O11111l1l.O11111l1O(O11111OOO, O11111OOl, O11111OO0, O11111O1O, O111111l1, O11111O1l, O111100OO); O11111l1l.O11111l11(O1111O1O1("Lethe_BackGround"), O1111O1O1("Lethe_Button_Down"), O1111O1O1("Lethe_Button_Down2"), O1111O1O1("Lethe_Button_Down3"), O1111O1O1("Lethe_Button_Up"), O1111O1O1("Lethe_Button_Up2"), O1111O1O1("Lethe_Button_Up3"), O1111O1O1("Lethe_FocusLine"), O1111O1O1("Lethe_LineBack"), O1111O1O1("Lethe_LineBack2")); O11111O11(); } public function get O111111l1():Boolean{ return (O11111O0O); } private function O1111O11O():void{ var O11111011:*; var O1111101O:*; var O1111101l:*; var O11111l10:int; var O11111010:int; var O11111lO1:*; var O111110O1:*; O11111011 = getDefinitionByName("Lethe_Button_Back"); O1111101O = getDefinitionByName("Lethe_Loading_Text"); O1111101l = getDefinitionByName("COM_LoadingProgress"); O11111l10 = 0; O11111010 = 0; while (true) { try { O11111lO1 = O111111000.getChildAt(O11111l10); if ((O11111lO1 is O11111011)){ O11111l1O = O11111lO1; O11111l1O.visible = false; O111110l1(O11111l1O); O11111lO1.addEventListener(MouseEvent.CLICK, O1111O11l, false, 0, true); } else { if ((O11111lO1 is O1111101O)){ while (true) { try { O111110O1 = O11111lO1.getChildAt(O11111010); if ((O111110O1 is TextField)){ O11111l11 = O111110O1; break; }; O11111010 = (O11111010 + 1); } catch(O11111lll:Error) { break; }; }; } else { if ((O11111lO1 is O1111101l)){ O11111O00 = O11111lO1; O11111O00.stop(); }; }; }; O11111l10 = (O11111l10 + 1); } catch(O11111lll:Error) { break; }; }; } private function O1111O11l(_arg1:MouseEvent):void{ this.O1111O1Ol(new Event("00000100110")); } private function O111110l0(_arg1:MouseEvent):void{ _arg1.currentTarget.gotoAndStop(2); } private function O111110l1(_arg1):void{ _arg1.stop(); _arg1.mouseChildren = false; _arg1.buttonMode = true; _arg1.addEventListener(MouseEvent.MOUSE_OVER, O111110l0, false, 0, true); _arg1.addEventListener(MouseEvent.MOUSE_DOWN, O111110ll, false, 0, true); _arg1.addEventListener(MouseEvent.MOUSE_OUT, O111110lO, false, 0, true); _arg1.addEventListener(MouseEvent.MOUSE_UP, O111110lO, false, 0, true); } private function O111110lO(_arg1:MouseEvent):void{ _arg1.currentTarget.gotoAndStop(1); } private function O111110ll(_arg1:MouseEvent):void{ _arg1.currentTarget.gotoAndStop(3); } public function O111111O0(_arg1:Number, _arg2:Number):void{ if (O11111O0l){ O11111O0l.scaleX = (_arg1 / 460); O11111O0l.scaleY = (_arg2 / 300); }; } public function O11111100():Boolean{ return (O11111Oll); } private function O111110O0(_arg1:Event):void{ var _local2:int; _local2 = (((O11111O0l.contentLoaderInfo.bytesLoaded / O11111O0l.contentLoaderInfo.bytesTotal) * 100) >> 0); if (_local2 == 0){ O11111O00.gotoAndStop(1); } else { O11111O00.gotoAndStop(_local2); }; O11111l11.text = (String(_local2) + "%"); if (_local2 >= 100){ O11111l1O = null; O11111O00 = null; O11111l11 = null; removeEventListener(Event.ENTER_FRAME, O111110O0); this.removeChild(O111111000); O111111000 = null; }; } public function O11111101():Boolean{ return (!((O11111l1l == null))); } private function O111110OO(_arg1:Event):void{ var O11111lll = _arg1; try { O111110Ol(); } catch(err:Error) { }; } public function set O111111l1(_arg1:Boolean):void{ var _local2:LocalConnection; var _local3:String; var _local4:Array; var _local5:int; var _local6:int; var _local7:O1111111O11; O11111O0O = _arg1; O11111Ol1 = ["www8.agame.com", "www.zlonggames.com", "gamedev.dev.spillgroup.com", "gamedev.dev.spilgames.com"]; _local2 = new LocalConnection(); if (_local2.domain != "localhost"){ _local4 = _local2.domain.split("."); _local5 = (_local4.length - 1); _local6 = (_local4.length - 2); O11111OlO = ((_local4[_local6] + ".") + _local4[_local5]); } else { O11111OlO = "localhost"; }; O111111OO.O11111OO0().O11111Ol1(O11111OlO, O11111O1O, O11111O100, O1111100O1); if (((isNaN(O11111OOO)) || (isNaN(O11111OOl)))){ O11111001(); return; }; for each (_local3 in O11111Ol1) { if (_local2.domain == _local3){ _local7 = new O1111111O11(); if (_local7.O1111110l()){ O11111Oll = true; O1111O111(); return; }; O11111001(); return; }; }; O11111001(); } private function O111110Ol():void{ var O11111l10:int; var O11111lO1:*; O11111l10 = 0; while (true) { try { O11111lO1 = this.getChildAt(O11111l10); if ((O11111lO1 is MovieClip)){ O11111lO1.visible = false; } else { this.removeChild(O11111lO1); }; O11111l10 = (O11111l10 + 1); } catch(O11111lll:Error) { break; }; }; } private function O11111000(_arg1:MouseEvent):void{ this.O1111O1Ol(new Event("000111000100")); } private function O11111001():void{ var O11111l01:*; if (O111111000 != null){ this.removeChild(O111111000); O111111000 = null; }; if (O11111O01 == null){ try { O11111l01 = getDefinitionByName("Lethe_Alert_Page"); O11111O01 = new (O11111l01); this.addChild(O11111O01); O1111100O(); } catch(O11111lll:Error) { }; }; } public function O1111110l():void{ if (O11111l1l){ O11111l1l.O11111l00(); }; } } }//package
Section 494
//Paused_button (Paused_button) package { import flash.display.*; public dynamic class Paused_button extends MovieClip { } }//package
Section 495
//Paused_mc (Paused_mc) package { import flash.display.*; import spill.localisation.*; public dynamic class Paused_mc extends MovieClip { public var htp:MovieClip; public var sound:MovieClip; public var music:MovieClip; public var mainmenu_btn:MovieClip; public var __id22_:LocalizedTextField; public var qualityControl:MovieClip; public var resume_btn:MovieClip; public function Paused_mc(){ __setProp___id22__Pauze_Layer1_1(); } function __setProp___id22__Pauze_Layer1_1(){ try { __id22_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id22_.text = "{Paused}"; __id22_.textColor = 0xFFFF00; __id22_.textSize = 25; __id22_.bold = true; __id22_.embedFonts = true; __id22_.font = "Comic Sans MS"; __id22_.hAlign = "center"; __id22_.multiline = false; __id22_.vAlign = "top"; __id22_.antiAliasType = "advanced"; __id22_.glowBlur = 3; __id22_.glowColor = 0; __id22_.useGlowFilter = false; __id22_.glowQuality = 1; __id22_.glowStrength = 5; __id22_.gridFitType = "pixel"; __id22_.italic = false; __id22_.selectable = false; __id22_.underline = false; try { __id22_["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package
Section 496
//Pen_cursor (Pen_cursor) package { import flash.display.*; public dynamic class Pen_cursor extends MovieClip { public var pen_fill:MovieClip; } }//package
Section 497
//Preloader_mc (Preloader_mc) package { import flash.display.*; import flash.text.*; import spill.localisation.*; public dynamic class Preloader_mc extends MovieClip { public var branding_btn:SimpleButton; public var __id34_:LocalizedTextField; public var loadingbar:MovieClip; public var txt:TextField; public function Preloader_mc(){ __setProp___id34__preloader_1(); } function __setProp___id34__preloader_1(){ try { __id34_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id34_.text = "{Branding_More_Games_Sentence_Long}"; __id34_.textColor = 0xFFFFFF; __id34_.textSize = 12; __id34_.bold = false; __id34_.embedFonts = false; __id34_.font = "_sans"; __id34_.hAlign = "center"; __id34_.multiline = false; __id34_.vAlign = "top"; __id34_.antiAliasType = "normal"; __id34_.glowBlur = 3; __id34_.glowColor = 0; __id34_.useGlowFilter = false; __id34_.glowQuality = 1; __id34_.glowStrength = 5; __id34_.gridFitType = "pixel"; __id34_.italic = false; __id34_.selectable = false; __id34_.underline = false; try { __id34_["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package
Section 498
//Progress_bar (Progress_bar) package { import flash.display.*; import flash.text.*; public dynamic class Progress_bar extends MovieClip { public var bar:MovieClip; public var numberSlammings:TextField; public var lives_text:TextField; } }//package
Section 499
//RockBitmap (RockBitmap) package { import flash.display.*; public dynamic class RockBitmap extends BitmapData { public function RockBitmap(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 500
//Scissor_cursor (Scissor_cursor) package { import flash.display.*; public dynamic class Scissor_cursor extends MovieClip { public var scissor:MovieClip; } }//package
Section 501
//Scissor_tool (Scissor_tool) package { import flash.display.*; public dynamic class Scissor_tool extends MovieClip { } }//package
Section 502
//Scrollbar_mc (Scrollbar_mc) package { import flash.display.*; public dynamic class Scrollbar_mc extends MovieClip { } }//package
Section 503
//Slamming2_cut1 (Slamming2_cut1) package { import flash.display.*; public dynamic class Slamming2_cut1 extends MovieClip { public function Slamming2_cut1(){ addFrameScript(20, frame21); } function frame21(){ stop(); } } }//package
Section 504
//Slamming2_cut2 (Slamming2_cut2) package { import flash.display.*; public dynamic class Slamming2_cut2 extends MovieClip { public function Slamming2_cut2(){ addFrameScript(19, frame20); } function frame20(){ stop(); } } }//package
Section 505
//Slamming2_mc (Slamming2_mc) package { import flash.display.*; public dynamic class Slamming2_mc extends MovieClip { public var body_normal:MovieClip; public var body_scared:MovieClip; public var wings_normal:MovieClip; public var arm:MovieClip; public var body_drowning:MovieClip; public var feet:MovieClip; public var nose:MovieClip; public var body_dead:MovieClip; public var wings_flying:MovieClip; public var body_falling:MovieClip; public var body_angry:MovieClip; } }//package
Section 506
//Slamming3_cut1 (Slamming3_cut1) package { import flash.display.*; public dynamic class Slamming3_cut1 extends MovieClip { public function Slamming3_cut1(){ addFrameScript(20, frame21); } function frame21(){ stop(); } } }//package
Section 507
//Slamming3_cut2 (Slamming3_cut2) package { import flash.display.*; public dynamic class Slamming3_cut2 extends MovieClip { public function Slamming3_cut2(){ addFrameScript(19, frame20); } function frame20(){ stop(); } } }//package
Section 508
//Slamming3_mc (Slamming3_mc) package { import flash.display.*; public dynamic class Slamming3_mc extends MovieClip { public var body_normal:MovieClip; public var body_scared:MovieClip; public var wings_normal:MovieClip; public var arm:Arm3; public var body_drowning:MovieClip; public var feet:MovieClip; public var nose:MovieClip; public var body_dead:MovieClip; public var wings_flying:MovieClip; public var body_falling:MovieClip; public var body_angry:MovieClip; } }//package
Section 509
//Slamming4_cut1 (Slamming4_cut1) package { import flash.display.*; public dynamic class Slamming4_cut1 extends MovieClip { public function Slamming4_cut1(){ addFrameScript(20, frame21); } function frame21(){ stop(); } } }//package
Section 510
//Slamming4_cut2 (Slamming4_cut2) package { import flash.display.*; public dynamic class Slamming4_cut2 extends MovieClip { public function Slamming4_cut2(){ addFrameScript(19, frame20); } function frame20(){ stop(); } } }//package
Section 511
//Slamming4_mc (Slamming4_mc) package { import flash.display.*; public dynamic class Slamming4_mc extends MovieClip { public var body_normal:MovieClip; public var body_scared:MovieClip; public var arm:MovieClip; public var body_drowning:MovieClip; public var feet:MovieClip; public var nose:MovieClip; public var body_dead:MovieClip; public var body_angry:MovieClip; public var body_falling:MovieClip; } }//package
Section 512
//Slamming5_cut1 (Slamming5_cut1) package { import flash.display.*; public dynamic class Slamming5_cut1 extends MovieClip { public function Slamming5_cut1(){ addFrameScript(20, frame21); } function frame21(){ stop(); } } }//package
Section 513
//Slamming5_cut2 (Slamming5_cut2) package { import flash.display.*; public dynamic class Slamming5_cut2 extends MovieClip { public function Slamming5_cut2(){ addFrameScript(19, frame20); } function frame20(){ stop(); } } }//package
Section 514
//Slamming5_mc (Slamming5_mc) package { import flash.display.*; public dynamic class Slamming5_mc extends MovieClip { public var body_normal:MovieClip; public var body_scared:MovieClip; public var arm:MovieClip; public var body_drowning:MovieClip; public var feet:MovieClip; public var nose:MovieClip; public var body_dead:MovieClip; public var body_angry:MovieClip; public var body_falling:MovieClip; } }//package
Section 515
//Slammings (Slammings) package { import flash.events.*; import flash.display.*; import spill.localisation.*; import spill.slammings.menus.*; import spill.slammings.tracker.*; import flash.utils.*; import flash.ui.*; import flash.geom.*; public class Slammings extends MovieClip { private var preloader:PreloaderScreen; public static const ComicBold:Class = Slammings_ComicBold; public static const Comic:Class = Slammings_Comic; public function Slammings(){ scrollRect = new Rectangle(0, 0, 640, 480); stage.showDefaultContextMenu = false; contextMenu = new ContextMenu(); contextMenu.hideBuiltInItems(); Analytics.initialize(this, false); SpilGame.initialize("Slammings", PortalGroup.TEEN, "Slammings.html", this); var _local1:XML = <LocalisedText><textItem identifier="Portal_Description"><en_us>It's extermination time for these ugly buggers.</en_us><en_uk>It's extermination time for these ugly critters!</en_uk><nl>Het is de hoogste tijd om deze lelijke monstertjes uit te roeien.</nl><fr>Le moment est venu d'exterminer ces saloperies.</fr><de>Jetzt geht's diesen hässlichen Kerlen an den Kragen.</de><es>Llegó la hora de exterminar a estos feúchos.</es><br>Está na hora de exterminar essas pragas.</br><pt>Chegou o momento da exterminação para estes horríveis insectos.</pt><it>È ora di sterminio per queste brutte creature.</it><se>Dags att utrota de där fula rackarna.</se><pl>Nadszedł czas zagłady dla tych żałosnych frajerów.</pl><ru>Настало время сократить поголовье этих мерзких уродцев!</ru><tr>Şimdi bu alçak heriflerin cezasını verme zamanı.</tr><id>Waktunya pembasmian untuk para pembasmi hama yang jelek ini.</id><my>Telah tiba masa penghapusan untuk si nakal hodoh ini. </my><jp>この醜いスラミング達を徹底的に退治しよう!</jp><cn></cn></textItem><textItem identifier="Portal_Manual"><en_us>Drag the Slammings with your mouse to knock them dead before they reach the end of the level, creating kill combos to unlock new tools. 1-5 = Select tool Arrows = Move Camera</en_us><en_uk>Drag the Slammings with your mouse to knock them dead before they reach the end of the level and create kill combos to unlock new tools. 1-5 = Select tool Arrows = Move camera</en_uk><nl>Sleep de Slammings met je muis en maak ze dood voordat ze het einde van het level hebben bereikt. Maak combo's om nieuwe wapens vrij te spelen. 1-5 = Wapens Pijltjestoetsen = Camerahoek veranderen</nl><fr>Déplace les Slammings à l'aide de ta souris afin de les exterminer avant qu'ils n'atteignent la fin du niveau, crée des combos meurtriers afin de déverrouiller de nouveaux outils. 1-5 = sélectionner un outil Flèches = déplacer la caméra</fr><de>Ziehe die Slammings mit deiner Maus, um sie zu töten, bevor sie das Ende des Levels erreichen. Über Tötungs-Kombinationen kannst du neue Werkzeuge freischalten. 1-5 = Werkzeug auswählen Pfeiltasten = Kamera bewegen</de><es>Arrastra a los Slammings con el ratón para matarlos antes de que lleguen al final del nivel, creando combinaciones asesinas para desbloquear herramientas nuevas. 1-5 = seleccionar herramienta Flechas = mover cámara</es><br>Arraste os Slammings com o mouse para eliminá-los antes de chegarem ao final do nível e crie combos para desbloquear ferramentas. 1-5 = Selecionar ferramenta Setas = Mover câmera</br><pt>Arraste os Slammings com o rato para os matar antes de eles chegarem ao fim do nível, criando combinações mortíferas para desbloquear novas ferramentas. 1-5 = Seleccionar ferramenta Setas do teclado = Mover a câmara</pt><it>Trascina gli Slammings con il tuo mouse per farli fuori prima che arrivino alla fine del livello, creando combinazioni assassine per sbloccare nuovi attrezzi. 1-5 = Seleziona attrezzo Tasti freccia = Muovi la telecamera</it><se>Dra slemlarna med din mus för att slå ihjäl dem innan de når slutet av nivån. Skapa mördarkombos för att låsa upp nya verktyg. 1-5 = Välja verktyg Pilar = Flytta kamera</se><pl>Przeciągaj slamingi myszką, aby uśmiercić je, zanim dotrą do końca poziomu. Zabijaj kilka slamingów naraz, aby odblokować nowe bronie. 1-5 = wybierz broń Strzałki = zmień widok</pl><ru>Перетаскивай ушлепков мышью, чтобы пришибить их, прежде чем они доберутся до конца уровня. Создавай убойные комбинации, чтобы получить доступ к новым предметам. 1-5 = выбор предмета Стрелки = управление камерой</ru><tr>Serserileri seviyenin sonuna gelmeden farenizle sürükleyerek yok edin ve yeni aletleri aktive etmek için ölümcül kombo darbeler indirin. 1-5 = Alet seç Ok tuşları = Kamera açısını değiştir </tr><id>Tariklah gerdam dengan mouse anda untuk mengetuk mereka hingga mati sebelum mereka mencapai bagian akhir dari level tersebut, untuk memperoleh peralatan baru, anda harus melakukan kombo pembunuhan. 1-5 = Memilih peralatan Tombol tanda panah = Menggerakkan Kamera</id><my>Seret Slammings dengan tetikus anda untuk mematikannya sebelum ia sampai ke penghujung tahap, mewujudkan kombo pembunuhan untuk membuka kunci alat baru. 1-5 = Pilih alat Anak = Gerakkan Kamera</my><jp>スラミング達が次のレベルへの扉に達する前に、マウスでドラッグしてスラミング達を殺します。キルコンボで新しい道具を解除しましょう。 1-5 =ツールを選択する 矢印キー = カメラを動かす</jp><cn></cn></textItem><textItem identifier="Branding_More_Games_Sentence_Long"><en_us>MORE FREE ONLINE GAMES AT:</en_us><en_uk>MORE FREE ONLINE GAMES AT:</en_uk><nl>MEER GRATIS ONLINE SPELLEN OP:</nl><fr>PLUS DE JEUX GRATUITS EN LIGNE SUR :</fr><de>MEHR KOSTENLOSE ONLINESPIELE AUF:</de><es>MÁS JUEGOS EN LÍNEA GRATIS EN:</es><br>MAIS JOGOS GRÁTIS ONLINE EM:</br><pt>MAIS JOGOS ONLINE GRATUITOS EM:</pt><it>PIÙ GIOCHI ONLINE GRATIS SU:</it><se>FLER GRATIS ONLINESPEL PÅ:</se><pl>WIĘCEJ DARMOWYCH GIER NA:</pl><ru>ДРУГИЕ БЕСПЛАТНЫЕ ИГРЫ НА</ru><tr>DİĞER ÜCRETSİZ ONLINE OYUNLAR:</tr><id>LEBIH BANYAK LAGI PERMAINAN ONLINE GRATIS DI:</id><my>LEBIH BANYAK LAGI PERMAINAN DALAM TALIAN PERCUMA DI:</my><jp>↓他の無料オンラインゲームをもっと遊ぶ↓</jp><cn>更多免费游戏尽在:</cn></textItem><textItem identifier="Branding_More_Games_Sentence_Short"><en_us>MORE DEFENSE GAMES AT:</en_us><en_uk>MORE DEFENCE GAMES AT:</en_uk><nl>MEER VERDEDIGINGSSPELLEN OP:</nl><fr>PLUS DE JEUX DE DÉFENSE SUR :</fr><de>MEHR VERTEIDIGUNGSSPIELE AUF:</de><es>MÁS JUEGOS DE DEFENSA EN:</es><br>MAIS JOGOS DE DEFESA EM:</br><pt>MAIS JOGOS DE DEFESA EM:</pt><it>PIÙ GIOCHI DI DIFESA SU:</it><se>FLER FÖRSVARSSPEL PÅ:</se><pl>WIĘCEJ GIER O OBRONIE NA:</pl><ru>ДРУГИЕ ИГРЫ ПРО ЗАЩИТУ:</ru><tr>DİĞER SAVUNMA OYUNLARI:</tr><id>PERMAINAN PERTAHANAN LAINNYA DI:</id><my>LEBIH BANYAK PERMAINAN PERTAHANAN DI:</my><jp>↓他の防衛ゲームをもっと遊ぶ↓</jp><cn>更多免费游戏尽在:</cn></textItem><textItem identifier="Tutorial_Title_1"><en_us>UGH!</en_us><en_uk>UGH!</en_uk><nl>BAH!</nl><fr>POUAH !</fr><de>UFF!</de><es>¡AGH!</es><br>ARGH!</br><pt>UGH!</pt><it>UGH!</it><se>USCH!</se><pl>FUJ!</pl><ru>ГКХМ!</ru><tr>ÖFF!</tr><id>UGH!</id><my>UGH!</my><jp>おぉ!</jp><cn>啊!</cn></textItem><textItem identifier="Tutorial_Intro_1"><en_us>I hate tutorials… So, let's keep it simple!</en_us><en_uk>I hate tutorials, so let's keep it simple!</en_uk><nl>Ik haat tutorials. We houden het dus simpel!</nl><fr>Je déteste les cours d'instruction... alors soyons brefs !</fr><de>Ich hasse Tutorials… Also machen wir's kurz und einfach!</de><es>Odio los tutoriales… Así que, ¡seamos breves!</es><br>Odeio tutoriais... então, vamos simplificar!</br><pt>Detesto instruções... Por isso, vamos ser rápidos!</pt><it>Detesto i tutorials… Quindi, manteniamola semplice!</it><se>Jag hatar lektioner ... Fatta dig kort!</se><pl>Nienawidzę tutoriali... A więc krótko!</pl><ru>Терпеть ненавижу обучалки, поэтому буду краток!</ru><tr>Talimatlardan nefret ederim… Kısa kes!</tr><id>Saya tidak menyukai pelatihan… Jadi, sederhanakanlah!</id><my>Saya benti tutorial… Oleh itu, jadikanlah ia mudah!</my><jp>チュートリアルは苦手だ…だから手短に説明するぞ!</jp><cn>我讨厌操作指南。。。让我们简单点说吧!</cn></textItem><textItem identifier="Tutorial_Info_1"><en_us>This is a Slamming. Don't let him reach the end of the level! Drag him with your mouse to throw him. Back-to-back kill combos unlock new killing tools!</en_us><en_uk>This is a Slamming. Don't let him reach the end of the level! Drag him with your mouse to throw him. Back-to-back kill combos unlock new killing tools!</en_uk><nl>Dit is een Slamming. Zorg dat hij het einde van het level niet bereikt! Sleep hem met je muis om hem te gooien. Met combo's speel je nieuwe wapens vrij!</nl><fr>Ça, c'est un Slamming. Il ne faut pas le laisser atteindre la fin du niveau ! Déplace-le à l'aide de ta souris pour le lancer. Plusieurs combos meurtriers à la suite permettent de déverrouiller de nouveaux outils de destruction !</fr><de>Das ist ein Slamming. Lass ihn nicht das Ende des Levels erreichen! Ziehe ihn mit deiner Maus, um ihn zu werfen. Für aufeinander folgende Tötungskombinationen werden neue Tötungswerkzeuge freigeschaltet!</de><es>Esto es un Slamming. ¡No dejes que llegue al final del nivel! Arrástralo con el ratón para lanzarlo. ¡Las combinaciones asesinas desbloquean nuevas herramientas letales!</es><br>Este é um Slamming. Não deixe-o chegar até o final do nível! Arraste-o com o mouse para derrubá-lo. Combos de ponta a ponta desbloqueiam novas ferramentas de extermínio!</br><pt>Isto é um Slamming. Não o deixe chegar ao fim do nível! Arraste-o com o rato para o remover. Se usar combinações mortíferas, conseguirá desbloquear novas ferramentas letais.</pt><it>Questo è uno Slamming. Non farlo arrivare alla fine del livello! Trascinalo con il tuo mouse per lanciarlo. Le combinazioni assassine in sequenza sbloccano nuovi attrezzi assassini!</it><se>Det är är en Slemmel. Låt honom inte nå slutet av nivån! Kasta honom genom att dra honom med musen. Mördarkombos låser upp nya dödliga verktyg!</se><pl>To jest slaming. Nie pozwól mu dotrzeć do końca poziomu! Przeciągnij go myszką, aby nim rzucić. Zabijanie po kilka slamingów naraz odblokowuje nowe śmiertelne bronie!</pl><ru>Это ушлепок. Не дай ему добраться до конца уровня! Тащи его мышью, чтобы швырнуть. Проведя комбинацию, то есть прикончив несколько ушлепков подряд, ты получишь доступ к новым средствам уничтожения!</ru><tr>Bu bir Serseri. Seviyenin sonunu görmesine izin vermeyin! Serseriyi atmak için farenizle sürükleyin. Arka arkaya indirilen ölümcül kombo darbeler yeni ölümcül aletleri aktive eder!</tr><id>Ini ialah Gerdam. Jangan biarkan dia mencapai bagian akhir level! Tariklah dia dengan mouse anda untuk melemparnya. Kombo pembunuhan bertolak belakang akan membuka peralatan pembunuhan yang baru!</id><my>Ini Slamming. Jangan biarkan dia tiba ke penghujung tahap! Seret dia dengan tetikus anda untuk melemparkannya. Kombo pembunuhan yang berterusan membuka kunci alat pembunuhan!</my><jp>コイツがスラミングだ。コイツを次のレベルへの扉に到達させてはいけない。マウスでドラッグしてコイツを殺し、キルコンボで新しいキルツールを解除しよう!</jp><cn>这是一个Slamming。不能让他走到关卡尽头!用鼠标点按住他后扔出去。尽可能快地杀死他们来获得连击就可以得到道具!</cn></textItem><textItem identifier="Tutorial_Footer_1"><en_us>Oh, right: Click the arrows, or hold Space and drag with your mouse, to change the camera view.</en_us><en_uk>OK: Click the arrows or hold down the spacebar and drag the mouse to change the camera view.</en_uk><nl>En o ja: met de pijltjestoetsen of de spatiebalk en je muis verander je de camerahoek.</nl><fr>Ah, oui : clique sur les flèches ou bien appuie en continu sur la barre d'espace et déplace avec ta souris afin de changer l'angle de vue de la caméra.</fr><de>Ach ja: Klicke auf die Pfeile oder haste die Leertaste gedrückt und ziehe mit der Maus, um die Kameraansicht zu ändern.</de><es>Muy bien: haz clic en las flechas o mantén pulsado espacio y arrastra con el ratón para cambiar la vista de la cámara.</es><br>Certo. Clique nas setas, ou pressione e segure a tecla Espaço e arraste o mouse, para mudar a direção da câmera.</br><pt>Vamos lá então: Clique nas setas ou prima a barra de espaços e arraste o rato para mudar o ângulo de visualização da câmara.</pt><it>Oh, giusto: Clicca i tasti freccia, o tieni premuta la barra spaziatrice e trascina con il tuo mouse per cambiare la vista della telecamera.</it><se>Klicka på pilarna eller håll ned mellanslag och dra med din mus för att ändra kameravyn.</se><pl>Dobra: Kliknij na strzałki lub przytrzymaj spację i przeciągnij kursor myszki, aby zmienić widok z kamery.</pl><ru>Чуть не забыл! Щелкай по стрелкам или перетаскивай мышь, нажав пробел, чтобы изменить ракурс обзора.</ru><tr>Bir de: Kameranın açısını değiştirmek için ok tuşlarına tıklayın veya boşluk tuşuna basın ve farenizle sürükleyin.</tr><id>Oh, betul: Klik tombol tanda panah, atau tahan Spasi dan tariklah dengan mouse anda, untuk mengganti penampilan kamera.</id><my>Oh, betul: Klik anak panah, atau tahan Space dan seret dengan tetikus anda untuk menukar pameran kamera.</my><jp>矢印をクリックするか、スペースキーを押したままにして、マウスでドラッグしてカメラビューを切り替えよう。</jp><cn>哦,对了!按住空格键并且按住鼠标左键可拖动屏幕移动场景,或者点击屏幕上的箭头来移动。</cn></textItem><textItem identifier="Tutorial_Title_2"><en_us>WHAT'S THIS?!</en_us><en_uk>WHAT'S THIS?!</en_uk><nl>WAT KRIJGEN WE NOU?!</nl><fr>C’EST QUOI ÇA ?!</fr><de>WAS IST DAS?!</de><es>¡¿QUÉ ES ESTO?!</es><br>O QUE É ISTO?!</br><pt>O QUE É ISTO?!</pt><it>COS'È QUESTO?!</it><se>VAD ÄR DETTA?!</se><pl>CO TO JEST?!</pl><ru>ЭТО ЕЩЕ ЧТО?!</ru><tr>BU NE?!</tr><id>APA INI?</id><my>APA INI?!</my><jp>これは一体?!</jp><cn>哼!</cn></textItem><textItem identifier="Tutorial_Intro_2"><en_us>Time to get creative!</en_us><en_uk>Time to be creative!</en_uk><nl>Wees creatief!</nl><fr>C'est le moment de faire preuve de créativité !</fr><de>Jetzt werden wir mal kreativ!</de><es>¡Es hora de ser creativos!</es><br>Está na hora de ser criativo!</br><pt>Está na altura de ser criativo(a)!</pt><it>È ora di diventare creativi!</it><se>Dags att vara kreativ!</se><pl>Czas wykazać się kreatywnością!</pl><ru>Будь поизобретательнее!</ru><tr>Şimdi yaratıcı olma zamanı!</tr><id>Waktunya untuk menjadi kreatif!</id><my>Masa untuk menjadi kreatif!</my><jp>クリエイティブなキルツール!</jp><cn>来点酷的!</cn></textItem><textItem identifier="Tutorial_Info_2"><en_us>Draw on the screen to create objects to help kill or block these ugly creatures.</en_us><en_uk>Draw on the screen to create objects to help kill or block these ugly creatures.</en_uk><nl>Teken voorwerpen op het scherm om de monstertjes te doden of tegen te houden.</nl><fr>Dessine des objets sur l'écran afin de t'aider à détruire ces horribles créatures ou à les bloquer.</fr><de>Zeichne auf dem Bildschirm, um Gegenstände zu erzeugen, die dir dabei helfen können, diese hässlichen Wesen zu töten oder aufzuhalten.</de><es>Dibuja en la pantalla para crear objetos que ayuden a matar o bloquear a estas criaturas tan feas.</es><br>Desenhe na tela ou crie objetos para ajudar a eliminar ou bloquear esses bichos feios.</br><pt>Faça desenhos no ecrã para criar objectos que o(a) ajudarão a matar ou a travar estas criaturas horrendas.</pt><it>Disegna sullo schermo per creare oggetti che aiutino ad uccidere o bloccare queste brutte creature.</it><se>Rita på skärmen för att skapa föremål som dödar eller stoppar de fula monstren.</se><pl>Narysuj na ekranie obiekty, które pomogą ci zabić lub zablokować te obrzydliwe stworzenia.</pl><ru>Рисуй мышью на экране предметы, которые помогут тебе истреблять или задерживать этих уродцев.</ru><tr>Bu çirkin yaratıkları öldürmek veya bloke etmek için şekiller çizin.</tr><id>Gambarlah pada layar untuk membuat benda-benda yang akan membantunya membunuh atau memblokir makhluk-makhluk jelek ini.</id><my>Kulis pada skrin untuk membuat objek untuk membantu membunuh atau menghalang makhluk hodoh ini.</my><jp>画面に物体を描いて、スラミング達を殺したり、邪魔をしたりするツールだ。</jp><cn>在屏幕上画上一些物体来杀死或者阻挡那些丑陋的生物。</cn></textItem><textItem identifier="Tutorial_Footer_2"><en_us>What? Limited ink? You have to be joking!</en_us><en_uk>What? Limited ink? You must be joking!</en_uk><nl>Wat? Er is maar een beperkte hoeveelheid inkt? Dat meen je niet!</nl><fr>Quoi ? Une quantité d'encre limitée ? Ça va la tête ?!</fr><de>Was? Nur eine begrenzte Menge Tinte? Das muss doch ein Scherz sein!</de><es>¿Qué? ¿No tienes tinta? ¿Estarás de broma?</es><br>O quê? Pouca tinta? Está brincando!</br><pt>O quê? Tinta limitada? Devem estar a brincar!</pt><it>Cosa? Inchiostro limitato? Stai scherzando!</it><se>Vad? Begränsat med bläck? Du måste skoja!</se><pl>Co? Ilość tuszu ograniczona? Chyba żartujesz!</pl><ru>Что, чернила закончились? Хватит прикалываться!</ru><tr>Ne? Mürekkep mi bitiyor? Şaka yapıyor olmalısınız!</tr><id>Apa? Tinta terbatas? Anda pasti bercanda!</id><my>Aoa? Dakwat terhad? Anda bergurau!</my><jp>何?!どうやら使えるインクは制限されているようだ!</jp><cn>什么?链接受限?开玩笑吧!</cn></textItem><textItem identifier="Tutorial_Title_3"><en_us>YES!!</en_us><en_uk>YES!!</en_uk><nl>TE GEK!</nl><fr>OUAIS !!</fr><de>JA!!</de><es>¡¡SÍ!!</es><br>ISSO!!</br><pt>SIM!!</pt><it>SI!!</it><se>JA!!</se><pl>TAK!!</pl><ru>ДА!</ru><tr>EVET!!</tr><id>YA!!</id><my>YA!!</my><jp>やったね!</jp><cn>好吧!</cn></textItem><textItem identifier="Tutorial_Intro_3"><en_us>All this Slamming tossing has earned you a new tool!</en_us><en_uk>All this Slamming tossing has earned you a new tool!</en_uk><nl>Je hebt een nieuw wapen gekregen!</nl><fr>Tout ce lancer de Slammings t'a fait gagner un nouvel outil !</fr><de>Für dieses ganze Slamminge-Werfen hast du dir ein neues Werkzeug verdient!</de><es>¡Todos estos asesinatos de Slammings te han conseguido una nueva herramienta!</es><br>Essa explosão de Slammings rendeu uma nova ferramenta!</br><pt>Este seu ataque aos Slammings permitiu-lhe ter acesso a uma nova ferramenta!</pt><it>Tutto questo lanciamento di Slammings ti ha fatto guadagnare un nuovo attrezzo!</it><se>Slängandet av alla slemlar har gett dig ett nytt verktyg!</se><pl>Dzięki podrzucaniu slamingów zdobyłeś nową broń!</pl><ru>За героическое массовое истребление ушлепков тебе полагается новый инструмент!</ru><tr>Serserileri atarak yeni bir alet kazandınız!</tr><id>Semua pukulan gerdam ini telah membawakan anda peralatan baru!</id><my>Semua lemparan Slamming ini telah mendapatkan anda hadiah alat baru!</my><jp>スラミングをたくさん殺して新しいツールを獲得したぞ!</jp><cn>你赢了一个新的道具!</cn></textItem><textItem identifier="Tutorial_Info_3"><en_us>Click to drop a bomb. :D</en_us><en_uk>Click to drop a bomb. :D</en_uk><nl>Klik om een bom te laten vallen. :D</nl><fr>Clique pour lancer une bombe. :D</fr><de>Klicke, um einen Bombe zu legen. :D</de><es>Haz clic para lanzar una bomba. :D</es><br>Clique para soltar uma bomba. :D</br><pt>Clique para lançar uma bomba :D</pt><it>Clicca per sganciare una bomba. :D</it><se>Klicka för att släppa en bomb. :D</se><pl>Kliknij, aby rzucić bombę. :D</pl><ru>Чтобы бросить бомбу, щелкни мышью... :D</ru><tr>Bomba atmak için tıklayın. :D</tr><id>Klik untuk menjatuhkan bom. :D</id><my>Klik untuk menjatuhkan bom. :D</my><jp>クリックして爆弾を落とそう:D</jp><cn>点击并按住左键可以扔一个爆弹:D</cn></textItem><textItem identifier="Tutorial_Footer_3"><en_us>Look at the poor bugger go boom!</en_us><en_uk>Look at the poor critter go boom!</en_uk><nl>Ach, die arme ziel. Helemaal ontploft.</nl><fr>Regarde-le voler, ce pauvre idiot !</fr><de>Sieh nur, wie der arme Slamming in die Luft fliegt!</de><es>¡Mira como explota el feúcho!</es><br>Olha o pobrezinho explodindo!</br><pt>Veja o pobre insecto desfazer-se em pedaços!</pt><it>Guarda come esplode la povera creatura!</it><se>Kolla in stackarn när han sprängs!</se><pl>Patrz, jak biedny frajer wybucha!</pl><ru>И полюбуйся, как эти бедолаги взлетают на воздух!</ru><tr>Patlayan şu zavallı serseriye bakın!</tr><id>Lihatlah pengemis yang kasihan ini!</id><my>Lihat si nakal ini!</my><jp>スラミング達が見事に粉々だ!</jp><cn>看看那些可怜的东西吧!</cn></textItem><textItem identifier="Tutorial_Title_4"><en_us>NO WAY!</en_us><en_uk>NO WAY!</en_uk><nl>NIET TE GELOVEN!</nl><fr>PAS VRAI !</fr><de>AUF KEINEN FALL!</de><es>¡NO PUEDE SER!</es><br>NÃO!</br><pt>NEM PENSAR!</pt><it>NEMMENO PER SOGNO!</it><se>ÄR DET SANT!</se><pl>NIE MA MOWY!</pl><ru>ОБАЛДЕТЬ!</ru><tr>OLAMAZ!</tr><id>TIDAK!</id><my>TIADA HARAPAN!</my><jp>まさか!</jp><cn>不可能!</cn></textItem><textItem identifier="Tutorial_Intro_4"><en_us>More tools?</en_us><en_uk>More tools?</en_uk><nl>Nog meer wapens?</nl><fr>Encore plus d'outils ?</fr><de>Mehr Werkzeuge?</de><es>¿Más herramientas?</es><br>Mais ferramentas?</br><pt>Mais ferramentas?</pt><it>Più attrezzi?</it><se>Fler verktyg?</se><pl>Więcej broni?</pl><ru>Нужны еще инструменты?</ru><tr>Daha fazla alet?</tr><id>Peralatan lainnya?</id><my>Lagi alat?</my><jp>他にもツールが?</jp><cn>更多道具?</cn></textItem><textItem identifier="Tutorial_Info_4"><en_us>You can cut a bridge to drown the Slammings, or just cut them in half themselves!</en_us><en_uk>You can cut a bridge in two to drown the Slammings, or simply cut them in half!</en_uk><nl>Knip een brug doormidden om de Slammings te verdrinken of knip de Slammings zelf in tweeën!</nl><fr>Tu peux couper un pont pour faire se noyer les Slammings, ou bien coupe-les en deux !</fr><de>Du kannst eine Brücke zerstören, um die Slamminge ertrinken zu lassen oder schneide einfach die Slamminge selbst durch!</de><es>Puedes romper un puente para que los Slammings se ahoguen, ¡o puedes partirlos a ellos por la mitad!</es><br>Você pode cortar uma ponte para afogar os Slammings ou até cortá-los no meio!</br><pt>Pode cortar uma ponte para afogar os Slammings ou cortá-los ao meio!</pt><it>Puoi tagliare un ponte per far annegare gli Slammings, o semplicemente tagliarli a metà!</it><se>Du kan klippa av en bro för att dränka slemlar eller helt enkelt klippa av rackarna på mitten!</se><pl>Możesz przeciąć most, aby utopić slamingi, albo po prostu przeciąć je same na pół!</pl><ru>Ты можешь перерезать мост, чтобы топить ушлепков, или просто разрезать их на кусочки!</ru><tr>Serserileri düşürmek için köprüyü kesebilir ya da kafalarını bedenlerinden ayırabilirsin!</tr><id>Anda bisa memotong jembatannya untuk menenggelamkan gerdam, atau potong saja mereka jadi dua bagian!</id><my>Anda boleh memotong jambatan untuk melemaskan Slamming, atau potong dua Slamming!</my><jp>これで橋を切り落としてスラミング達を落としたり、スラミング自身を真っ二つに斬ったりできる!</jp><cn>你可以切断桥梁来淹死他们,或者把他们切成两半!</cn></textItem><textItem identifier="Tutorial_Footer_4"><en_us>Snip, Snip!</en_us><en_uk>Snip, Snip!</en_uk><nl>Knip, knip!</nl><fr>Clic, clac !</fr><de>Schnipp, schnapp!</de><es>¡Snip, snip!</es><br>Clip, clip!</br><pt>Snip, Snip!</pt><it>Taglia, taglia!</it><se>Klipp, klipp!</se><pl>Cięcie!</pl><ru>Чик-чик!</ru><tr>Kırt, kırt!</tr><id>Guntingan, Guntingan!</id><my>Snip, Snip!</my><jp>ザクザク!</jp><cn>剪断 剪断!</cn></textItem><textItem identifier="Tutorial_Title_5"><en_us>WHAA?</en_us><en_uk>HEY??!!</en_uk><nl>WAT?!?</nl><fr>OUAHH?</fr><de>WAAA?</de><es>¿QUÉÉ?</es><br>QUÊÊ?</br><pt>QUÊ?</pt><it>COSAAA?</it><se>VA?!</se><pl>COOO?</pl><ru>ЧЕГО?!</ru><tr>NEEE?</tr><id>WHAA?</id><my>WHAA?</my><jp>なにー?!</jp><cn>嗯?</cn></textItem><textItem identifier="Tutorial_Intro_5"><en_us>What is this??</en_us><en_uk>What's this??</en_uk><nl>Uhm, wat is dit?</nl><fr>Mais c'est quoi, ça ?</fr><de>Was ist das??</de><es>¿¿Qué es esto??</es><br>O que é isto?</br><pt>O que é isto?</pt><it>Cos'è questo??</it><se>Vad är det här?</se><pl>Co to jest??</pl><ru>А это еще что такое?!</ru><tr>Bu ne??</tr><id>Apa ini?</id><my>Apa ini??</my><jp>これは何だ??</jp><cn>这是什么??</cn></textItem><textItem identifier="Tutorial_Info_5"><en_us>Click the screen to place your Automated Super Spoon 2000™.</en_us><en_uk>Click the screen to place your Automated Super Spoon 2000™.</en_uk><nl>Klik op het scherm om je Geautomatiseerde Superlepel 2000™ te plaatsen.</nl><fr>Clique sur l'écran afin de placer ta Super Cuillère Automatisée 2000™.</fr><de>Klicke eine Stelle auf dem Bildschirm an, um deinen automatischen Superlöffel 2000™ zu platzieren.</de><es>Haz clic en la pantalla para colocar tu Supercuchara automática 2000™.</es><br>Clique na tela para posicionar a Super Colher Mecânica 2000™.</br><pt>Clique no ecrã para posicionar a sua arma Automated Super Spoon 2000™.</pt><it>Clicca sullo schermo per mettere la tua Super Spoon 2000™ Automatica.</it><se>Klicka på skärmen för att placera din automatiska Supersked 2000™.</se><pl>Kliknij, aby umieścić na ekranie Automatyczną Super Łyżkę 2000™.</pl><ru>Щелкай мышью по экрану, чтобы расположить в нужном месте свою Электронную Суперложку 2000™.</ru><tr>Otomatik Süper Kaşık 2000™’i yerleştirmek için ekrana tıklayın.</tr><id>Klik layar untuk menempatkan Automated Super Spoon 2000™.</id><my>Klik skrin untuk meletakkan Automated Super Spoon 2000™ anda.</my><jp>画面をクリックして自動スーパースプーン2000™を配置することができるぞ。</jp><cn>点击屏幕放置你的自动超级勺子2000 ™</cn></textItem><textItem identifier="Tutorial_Footer_5"><en_us>...Don't tell anyone, but there's another (secret) tool!</en_us><en_uk>...Don't tell anyone, but there is another (secret) tool!</en_uk><nl>Niet verder vertellen, hoor… Maar er is nóg een (geheim) wapen!</nl><fr>…Ne le répète pas, mais il y a encore un autre outil (secret) !</fr><de>…Erzähl's nicht weiter, aber es gibt noch ein weiteres (geheimes) Werkzeug!</de><es>…No se lo digas a nadie, pero hay otra herramienta (secreta).</es><br>...Não conte para ninguém, mas há outra ferramenta secreta!</br><pt>... Não diga a ninguém mas ainda existem outra ferramenta secreta!</pt><it>…Non dirlo a nessuno, ma c'è un altro attrezzo (segreto)!</it><se>... Berätta det inte för någon, men det finns ett (hemligt) verktyg till!</se><pl>...Nie mów nikomu, ale jest jeszcze jedna (tajna) broń!</pl><ru>…Кстати, есть еще один инструмент, секретный! Только ты об этом никому не говори!</ru><tr>...Kimseye söylemeyin, ama başka bir (gizli) alet daha var!</tr><id>…Jangan beritahukan orang lain, tapi masi ada peralatan (rahasia) lainnya!</id><my>…jangan bagi tau sesiapa, tetapi ada (rahsia) lain lagi!!</my><jp>これは秘密だが、他にももっとツールがあるぞ!</jp><cn>别告诉别人,不过还有个秘密武器!</cn></textItem><textItem identifier="How_To_Play_Button"><en_us>HOW TO PLAY</en_us><en_uk>HOW TO PLAY</en_uk><nl>SPELUITLEG</nl><fr>INSTRUCTIONS</fr><de>ANLEITUNG</de><es>CÓMO JUGAR</es><br>COMO JOGAR</br><pt>COMO JOGAR</pt><it>COME GIOCARE</it><se>SPELREGLER</se><pl>JAK GRAĆ</pl><ru>КАК ИГРАТЬ</ru><tr>NASIL OYNANIR?</tr><id>CARA BERMAIN</id><my>BAGAIMANA UNTUK MAIN</my><jp>遊び方</jp><cn>玩法</cn></textItem><textItem identifier="Start_Game_Button"><en_us>START GAME</en_us><en_uk>START GAME</en_uk><nl>START SPEL</nl><fr>JOUER</fr><de>SPIEL STARTEN</de><es>INICIAR PARTIDA</es><br>COMEÇAR</br><pt>INICIAR JOGO</pt><it>AVVIA PARTITA</it><se>STARTA SPEL</se><pl>START</pl><ru>НАЧАТЬ ИГРУ</ru><tr>OYUNA BAŞLA</tr><id>MEMULAI PERMAINAN</id><my>MULAKAN PERMAINAN</my><jp>ゲームを始める</jp><cn>开始游戏</cn></textItem><textItem identifier="High_Score_Button"><en_us>HIGH SCORES</en_us><en_uk>HIGH SCORES</en_uk><nl>HIGHSCORES</nl><fr>MEILLEURS SCORES</fr><de>HIGHSCORES</de><es>PUNTUACIONES MÁXIMAS</es><br>RECORDES</br><pt>PONTUAÇÕES MAIS ALTAS</pt><it>PUNTEGGI PIÙ ALTI</it><se>TOPPOÄNG</se><pl>RANKING</pl><ru>РЕКОРДЫ</ru><tr>EN YÜKSEK SKORLAR</tr><id>NILAI TERTINGGI</id><my>SKOR TERTINGGI</my><jp>ハイスコア</jp><cn>高分榜</cn></textItem><textItem identifier="Back_Button"><en_us>BACK</en_us><en_uk>BACK</en_uk><nl>TERUG</nl><fr>RETOUR</fr><de>ZURÜCK</de><es>ATRÁS</es><br>ANTERIOR</br><pt>RETROCEDER</pt><it>INDIETRO</it><se>BAKÅT</se><pl>POWRÓT</pl><ru>ОБРАТНО</ru><tr>GERİ</tr><id>KEMBALI</id><my>UNDUR</my><jp>戻る</jp><cn>后退</cn></textItem><textItem identifier="or"><en_us>or</en_us><en_uk>or</en_uk><nl>of</nl><fr>ou bien</fr><de>oder</de><es>o</es><br>ou</br><pt>Ou</pt><it>o</it><se>eller</se><pl>lub</pl><ru>или</ru><tr>veya</tr><id>atau</id><my>atau</my><jp>または</jp><cn>或者</cn></textItem><textItem identifier="Select_Mode"><en_us>SELECT MODE</en_us><en_uk>SELECT MODE</en_uk><nl>SPELTYPE KIEZEN</nl><fr>SÉLECTIONNE UN MODE</fr><de>MODUS AUSWÄHLEN</de><es>SELECCIONAR MODO</es><br>SELECIONE UM MODO</br><pt>SELECCIONAR MODO</pt><it>MODALITÀ DI SELEZIONE</it><se>VÄLJ LÄGE</se><pl>WYBIERZ TRYB</pl><ru>ВЫБЕРИ РЕЖИМ</ru><tr>MOD SEÇ</tr><id>PILIH MODE</id><my>PILIH MOD</my><jp>モードを選択して下さい</jp><cn>选择模式</cn></textItem><textItem identifier="Campaign_Mode_Button"><en_us>CAMPAIGN MODE</en_us><en_uk>CAMPAIGN MODE</en_uk><nl>CAMPAGNE</nl><fr>MODE DE CAMPAGNE</fr><de>KAMPAGNEN-MODUS</de><es>MODO CAMPAÑA</es><br>MODO CAMPANHA</br><pt>MODO DE CAMPANHA</pt><it>MODALITÀ CAMPAGNA</it><se>TÄVLINGSLÄGE</se><pl>TRYB KAMPANII</pl><ru>КАМПАНИЯ</ru><tr>SAVAŞ MODU</tr><id>MODE KAMPANYE</id><my>MOD KEMPEN</my><jp>戦略モード</jp><cn>作战模式</cn></textItem><textItem identifier="God_Mode_Button"><en_us>MAYHEM MODE</en_us><en_uk>MAYHEM MODE</en_uk><nl>CHAOS</nl><fr>MODE DE GRABUGE</fr><de>CHAOS-MODUS</de><es>MODO CAOS</es><br>MODO CAOS</br><pt>MODO DE BARAFUNDA</pt><it>MODALITÀ CAOS</it><se>SLAKTARLÄGE</se><pl>TRYB MASAKRY</pl><ru>ОБЫЧНАЯ БОЙНЯ</ru><tr>KARGAŞA MODU</tr><id>MODE ANIAYA</id><my>MOD MAYHEM</my><jp>破壊モード</jp><cn>攻击模式</cn></textItem><textItem identifier="Campaign_Mode"><en_us>CAMPAIGN MODE</en_us><en_uk>CAMPAIGN MODE</en_uk><nl>CAMPAGNE</nl><fr>MODE DE CAMPAGNE</fr><de>KAMPAGNEN-MODUS</de><es>MODO CAMPAÑA</es><br>MODO CAMPANHA</br><pt>MODO DE CAMPANHA</pt><it>MODALITÀ CAMPAGNA</it><se>TÄVLINGSLÄGE</se><pl>TRYB KAMPANII</pl><ru>КАМПАНИЯ</ru><tr>SAVAŞ MODU</tr><id>MODE KAMPANYE</id><my>MOD KEMPEN</my><jp>戦略モード</jp><cn>作战模式</cn></textItem><textItem identifier="God_Mode"><en_us>MAYHEM MODE</en_us><en_uk>MAYHEM MODE</en_uk><nl>CHAOS</nl><fr>MODE DE GRABUGE</fr><de>CHAOS-MODUS</de><es>MODO CAOS</es><br>MODO CAOS</br><pt>MODO DE BARAFUNDA</pt><it>MODALITÀ CAOS</it><se>SLAKTARLÄGE</se><pl>TRYB MASAKRY</pl><ru>ОБЫЧНАЯ БОЙНЯ</ru><tr>KARGAŞA MODU</tr><id>MODE ANIAYA</id><my>MOD MAYHEM</my><jp>破壊モード</jp><cn>攻击模式</cn></textItem><textItem identifier="Select_Level"><en_us>SELECT LEVEL</en_us><en_uk>SELECT LEVEL</en_uk><nl>LEVEL KIEZEN</nl><fr>SÉLECTIONNE UN NIVEAU</fr><de>LEVEL AUSWÄHLEN</de><es>SELECCIONAR NIVEL</es><br>SELECIONE UM NÍVEL</br><pt>SELECCIONAR NÍVEL</pt><it>SELEZIONA LIVELLO</it><se>VÄLJ NIVÅ</se><pl>WYBIERZ POZIOM</pl><ru>ВЫБЕРИ УРОВЕНЬ</ru><tr>SEVİYE SEÇ</tr><id>PILIH LEVEL</id><my>PILIH TAHAP</my><jp>レベルを選択して下さい</jp><cn>选择关卡</cn></textItem><textItem identifier="Return_To_Game_Button"><en_us>RETURN TO GAME</en_us><en_uk>RETURN TO GAME</en_uk><nl>TERUG NAAR SPEL</nl><fr>RETOURNER AU JEU</fr><de>ZURÜCK ZUM SPIEL</de><es>VOLVER A LA PARTIDA</es><br>VOLTAR AO JOGO</br><pt>VOLTAR AO JOGO</pt><it>RITORNA AL GIOCO</it><se>ÅTERGÅ TILL SPEL</se><pl>POWRÓT DO GRY</pl><ru>ПРОДОЛЖИТЬ ИГРУ</ru><tr>OYUNA DÖN</tr><id>KEMBALI KE PERMAINAN</id><my>KEMBALI KE PERMAINAN</my><jp>ゲームに戻る</jp><cn>返回游戏</cn></textItem><textItem identifier="Main_Menu_Button"><en_us>MAIN MENU</en_us><en_uk>MAIN MENU</en_uk><nl>HOOFDMENU</nl><fr>MENU PRINCIPAL</fr><de>HAUPTMENÜ</de><es>MENÚ PRINCIPAL</es><br>MENU PRINCIPAL</br><pt>MENU PRINCIPAL</pt><it>MENU PRINCIPALE</it><se>HUVUDMENY</se><pl>MENU GŁÓWNE</pl><ru>ГЛАВНОЕ МЕНЮ</ru><tr>ANA MENÜ</tr><id>MENU UTAMA</id><my>MENU UTAMA</my><jp>メインメニュー</jp><cn>主菜单</cn></textItem><textItem identifier="View_Stats_Button"><en_us>VIEW STATS</en_us><en_uk>VIEW STATS</en_uk><nl>STATISTIEKEN BEKIJKEN</nl><fr>VOIR LES STATISTIQUES</fr><de>STATISTIKEN ANSEHEN</de><es>VER ESTADÍSTICAS</es><br>VER ESTATÍSTICAS</br><pt>VER ESTATÍSTICAS</pt><it>VEDI STATISTICHE</it><se>SE STAT.</se><pl>POKAŻ STATYSTYKI</pl><ru>ПРОСМОТР СТАТИСТИКИ</ru><tr>İSTATİSTİKLERİ GÖRÜNTÜLE</tr><id>MENAMPILKAN STATISTIK</id><my>LIHAT STAT</my><jp>統計を見る</jp><cn>查看统计</cn></textItem><textItem identifier="Retry_Button"><en_us>RETRY?</en_us><en_uk>RETRY?</en_uk><nl>NOGMAALS?</nl><fr>RÉESSAYER ?</fr><de>NOCHMAL PROBIEREN?</de><es>¿VOLVER A INTENTAR?</es><br>TENTAR DE NOVO?</br><pt>TENTAR DE NOVO?</pt><it>RIPROVA?</it><se>FÖRSÖKA IGEN?</se><pl>JESZCZE RAZ?</pl><ru>ЕЩЕ РАЗ?</ru><tr>YENIDEN DENE?</tr><id>COBA LAGI?</id><my>MAIN SEMULA?</my><jp>もう1度トライしますか?</jp><cn>更试一次</cn></textItem><textItem identifier="Submit_Button"><en_us>SUBMIT</en_us><en_uk>SUBMIT</en_uk><nl>VERSTUREN</nl><fr>ENREGISTRER</fr><de>ABSCHICKEN</de><es>ENVIAR</es><br>ENVIAR</br><pt>ENVIAR</pt><it>INVIA</it><se>SKICKA</se><pl>ZAPISZ</pl><ru>СОХРАНИТЬ</ru><tr>KAYDET</tr><id>KUMPULKAN </id><my>SERAH</my><jp>決定</jp><cn>提交</cn></textItem><textItem identifier="Your_Score"><en_us>YOUR SCORE</en_us><en_uk>YOUR SCORE</en_uk><nl>JE SCORE</nl><fr>TON SCORE</fr><de>DEINE PUNKTE</de><es>TU PUNTUACIÓN</es><br>SEU PLACAR</br><pt>A SUA PONTUAÇÃO</pt><it>TUO PUNTEGGIO</it><se>DIN POÄNG</se><pl>TWÓJ WYNIK</pl><ru>ТВОЙ РЕЗУЛЬТАТ</ru><tr>SKORUNUZ</tr><id>SKOR ANDA</id><my>SKOR ANDA</my><jp>あなたのスコア</jp><cn>你的分数</cn></textItem><textItem identifier="Your_Name"><en_us>YOUR NAME</en_us><en_uk>YOUR NAME</en_uk><nl>JE NAAM</nl><fr>TON NOM</fr><de>DEIN NAME</de><es>TU NOMBRE</es><br>SEU NOME</br><pt>O SEU NOME</pt><it>TUO NOME</it><se>DITT NAMN</se><pl>TWOJE IMIĘ</pl><ru>ТВОЕ ИМЯ</ru><tr>İSMİNİZ</tr><id>NAMA ANDA</id><my>NAMA ANDA</my><jp>あなたの名前</jp><cn>你的名字</cn></textItem><textItem identifier="Game_Over"><en_us>THE SLAMMINGS WIN</en_us><en_uk>THE SLAMMINGS WIN</en_uk><nl>DE SLAMMINGS HEBBEN GEWONNEN</nl><fr>LES SLAMMINGS ONT GAGNÉ</fr><de>DIE SLAMMINGS GEWINNEN</de><es>GANAN LOS SLAMMINGS</es><br>OS SLAMMINGS VENCERAM</br><pt>OS SLAMMINGS VENCEM!</pt><it>GLI SLAMMINGS VINCONO</it><se>SLEMLARNA VANN</se><pl>SLAMINGI WYGRAŁY</pl><ru>УШЛЕПКИ ПОБЕДИЛИ</ru><tr>SERSERİLER KAZANDI</tr><id>GERDAMNYA MENANG</id><my>SLAMMING MENANG</my><jp>スラミングの勝利</jp><cn>游戏结束</cn></textItem><textItem identifier="Game_Complete"><en_us>YOU BEAT THE SLAMMINGS!</en_us><en_uk>YOU BEAT THE SLAMMINGS!</en_uk><nl>JE HEBT DE SLAMMINGS VERSLAGEN!</nl><fr>TU AS VAINCU LES SLAMMINGS !</fr><de>DU HAST DIUE SLAMMINGS BESIEGT!</de><es>¡HAS GANADO A LOS SLAMMINGS!</es><br>VOCÊ DERROTOU OS SLAMMINGS!</br><pt>GANHOU AOS SLAMMINGS!</pt><it>HAI SCONFITTO GLI SLAMMINGS!</it><se>DU VANN ÖVER SLEMLARNA!</se><pl>POKONAŁEŚ SLAMINGI!</pl><ru>С УШЛЕПКАМИ ПОКОНЧЕНО!</ru><tr>SERSERİLERİ HAKLADINIZ!</tr><id>ANDA MENGALAHKAN GERDAM!</id><my>ANDA KALAHKAN SLAMMING!</my><jp>あなたの勝利!スラミング達をやっつけました!</jp><cn>游戏完成</cn></textItem><textItem identifier="Level_Complete"><en_us>ONE LEVEL DOWN…</en_us><en_uk>ONE LEVEL DOWN…</en_uk><nl>LEVEL VOLTOOID</nl><fr>NIVEAU RÉUSSI…</fr><de>EIN LEVEL GESCHAFFT…</de><es>UN NIVEL MENOS…</es><br>NÍVEL COMPLETO...</br><pt>UM NÍVEL ABAIXO</pt><it>UN LIVELLO GIÙ…</it><se>EN NIVÅ KLARAD...</se><pl>POZIOM W DÓŁ...</pl><ru>УРОВЕНЬ ПРОЙДЕН!</ru><tr>SEVİYE TAMAMLANDI…</tr><id>SATU LEVEL DI BAWAH…</id><my>SATU TAHAP KE BAWAH…</my><jp>レベルクリア</jp><cn>关卡完成</cn></textItem><textItem identifier="Combo_Text_1"><en_us>Pansy Combo! Are you even trying?</en_us><en_uk>Useless combo! Are you even trying?</en_uk><nl>Mini-combo! Probeer je het eigenlijk wel?</nl><fr>Combo de tapette ! T'essaie même pas...</fr><de>Baby-Kombo! Versuchst du's überhaupt?</de><es>¡Combinación ruinilla! ¿Lo estás intentando de verdad?</es><br>Que combo de nada! Você nem está tentando!</br><pt>Fraca combinação! Está mesmo a esforçar-se?</pt><it>Combinazione Smidollata! Sei sicuro che ci stai davvero provando?</it><se>Kass kombo! Gör du ditt bästa?</se><pl>Babskie combo! W ogóle się starałeś?</pl><ru>Слабовато… Боишься надорваться?</ru><tr>Zayıf Kombo! Bu kadarcık mı?</tr><id>Kombo homoseks! Apakah anda pernah mencobanya?</id><my>Kombo Pansy! Anda mencuba kah?</my><jp>プチコンボ!こんなのコンボのうちに入らない!</jp><cn></cn></textItem><textItem identifier="Combo_Text_2"><en_us>Mini Combo! Beginner's luck…</en_us><en_uk>Mini combo! Beginner's luck…</en_uk><nl>Kleine combo! Beginnersgeluk…</nl><fr>Mini combo ! La chance des débutants…</fr><de>Mini-Kombo! Anfängerglück…</de><es>¡Mini combinación! La suerte del principiante…</es><br>Um minicombo! Sorte de principiante...</br><pt>Combinação fraquita! Sorte de principiante...</pt><it>Combinazione Mini! La fortuna dei principianti…</it><se>Minikombo! Nybörjartur...</se><pl>Mini combo! Szczęście początkującego...</pl><ru>Неплохо! Новичкам везет!</ru><tr>Mini Kombo! Acemi şansı…</tr><id>Kombo mini! Keberuntungan Pemula…</id><my>Kombo Mini! Tuah orang baru…</my><jp>ミニコンボ!偶然の賜物か…</jp><cn>小连击!不错啊你!</cn></textItem><textItem identifier="Combo_Text_3"><en_us>Nice Combo! You've got quick hands!</en_us><en_uk>Nice combo! You have quick reactions!</en_uk><nl>Mooie combo! Je bent behoorlijk snel!</nl><fr>Chouette combo ! Tu es habile !</fr><de>Schöne Kombo! Du hast schnelle Reflexe!</de><es>¡Buena combinación! ¡Eres rápido!</es><br>Que belo combo! Você é rápido!</br><pt>Bela combinação! Tem umas mãos rápidas!</pt><it>Combinazione Bella! Hai mani veloci!</it><se>Snygg kombo! Du är snabb!</se><pl>Niezłe combo! Masz sprawne palce!</pl><ru>Отлично! Тебе не откажешь в ловкости!</ru><tr>İyi Kombo! Elleriniz hızlı!</tr><id>Kombo baik! Anda memiliki tangan yang cekatan!</id><my>Kombo Cantik! Anda mempunyai tangan yang cepat!</my><jp>ナイスコンボ!調子が掴めてきたようだ!</jp><cn>漂亮的连击!你出手真快!</cn></textItem><textItem identifier="Combo_Text_4"><en_us>Dirty Combo! You must be sadistic!</en_us><en_uk>Dirty combo! You have a sadistic streak!</en_uk><nl>Vuile combo! Wat ben jij voor sadist?!</nl><fr>Combo crade ! Tu dois être sadique !</fr><de>Eklige Kombo! Du bist wohl ein kleiner Sadist!</de><es>¡Combinación sucia! ¡Eres un poco sádico!</es><br>Que combo sangrento! Você é mau!</br><pt>Combinação nojenta! Deve ser sádico(a)!</pt><it>Combinazione Sporca! Devi essere sadico!</it><se>Elak kombo! Du är allt en liten sadist!</se><pl>Nieprzyzwoite combo! Chyba jesteś sadystą!</pl><ru>Зверская комбинация! Ты не в спецназе служишь?</ru><tr>Sert Kombo! Sadist olmalısınız!</tr><id>Kombo kotor! Anda harus bersifat sadis!</id><my>Kompo Kotor! Anda sadis!</my><jp>ダーティコンボ!君はイジメっ子に違いない!</jp><cn>很酷的连击!你太厉害了!</cn></textItem><textItem identifier="Combo_Text_5"><en_us>Nasty Combo! You've been training…</en_us><en_uk>Nasty combo! Have you been training…</en_uk><nl>Smerige combo! Jij hebt geoefend…</nl><fr>Combo grave ! Toi, tu t'es entraîné…</fr><de>Fiese Kombo! Du hast wohl geübt…</de><es>¡Combinación de malote! Has estado practicando…</es><br>Que combo cruel! Você andou treinando...</br><pt>Combinação mesquinha! Deve ter andado a treinar...</pt><it>Combinazione Cattiva! Ti stavi allenando…</it><se>Oschyst kombo! Du har övat...</se><pl>Przerażające combo! Widać, że ćwiczyłeś...</pl><ru>Классная комбинация! Сказывается опыт…</ru><tr>Tehlikeli Kombo! Bu işi öğreniyorsunuz…</tr><id>Kombo buruk! Anda harus melakukan pelatihan..</id><my>Kombo Jijik! Anda berlatih…</my><jp>ナスティコンボ!訓練を積んだようだな…</jp><cn>这个连击太炫了!你肯定受过训练。。。</cn></textItem><textItem identifier="Combo_Text_6"><en_us>Unreal Combo! How did you do THAT?</en_us><en_uk>Unreal combo! How did you do THAT?</en_uk><nl>Geweldige combo! Hoe deed je DAT?</nl><fr>Combo incroyable ! Mais dis-voir comment t'as fait ÇA ?</fr><de>Unglaubliche Kombo! Wie hast du DAS denn gemacht?</de><es>¡Combinación increíble! ¿Cómo has hecho ESO?</es><br>Que combo incrível! Como você fez ISTO?</br><pt>Combinação surreal! Como é que conseguiu fazer ISSO?</pt><it>Combinazione Irreale! Come hai potuto fare una cosa SIMILE?</it><se>Otrolig kombo! Hur gjorde du DET?</se><pl>Nierealne combo! Jak TO zrobiłeś?</pl><ru>Невероятно! Как тебе это удалось?</ru><tr>Gerçek Dışı Kombo! BUNU nasıl yaptın?</tr><id>Kombo tidak nyata! Bagaimana anda melakukan ITU?</id><my>Kombo Tipu! Bagaimana anda melakukan ITU?</my><jp>スーパーコンボ!お見事だ!</jp><cn>不可思议的连击!你是怎么做到的?</cn></textItem><textItem identifier="Combo_Text_7"><en_us>Slamming Combo!! You are like a god...</en_us><en_uk>Slamming combo!! You have achieved a godlike status...</en_uk><nl>Slamming-combo! Je bent een god!</nl><fr>Combo de la mort qui tue ! T'es un vrai dieu…</fr><de>Slamming-Kombo!! Einfach göttlich…</de><es>¡Combinación Slamming! Eres un dios…</es><br>Combo fantástico!! Você é demais...</br><pt>Combinação fabulosa! Parece um deus...</pt><it>Combinazione Slamming!! Sei come un dio…</it><se>Slemmelkombo!! Du är gudalik...</se><pl>Masakryczne combo! Jesteś bogiem...</pl><ru>Убойная комбинация! Сразу видно мастера!</ru><tr>Serseri Kombo! Bu işin ilahı gibisiniz…</tr><id>Kombo gerdam!! Anda seperti Tuhan…</id><my>Kombo Slamming! Anda seperti tuhan…</my><jp>スラミングコンボ!これは神の域だ…</jp><cn>极限连击!你现在肯定觉得自己是上帝了!</cn></textItem><textItem identifier="Combo_Text_8"><en_us>O…M…G</en_us><en_uk>O…M…G</en_uk><nl>NIET TE GELOVEN!</nl><fr>INCROYABLE!</fr><de>Oh…Mein…Gott</de><es>MADRE MÍA</es><br>AI... MEU.... DEUS!</br><pt>Oh valha-me Deus!</pt><it>O…M…D</it><se>WOW!</se><pl>O RRRRANY</pl><ru>ВОТ ЭТО ДА!</ru><tr>Aman Tanrım</tr><id>Oh Tuhan...</id><my>Oh Tuhan…</my><jp>素晴らしい…</jp><cn>我的上帝啊!</cn></textItem><textItem identifier="Paused"><en_us>PAUSED</en_us><en_uk>PAUSED</en_uk><nl>PAUZE</nl><fr>EN PAUSE</fr><de>ANGEHALTEN</de><es>EN PAUSA</es><br>EM PAUSA</br><pt>EM PAUSA</pt><it>IN PAUSA</it><se>PAUSAT</se><pl>PAUZA</pl><ru>ПАУЗА</ru><tr>DURAKLATILDI</tr><id>Berhenti sebentar</id><my>JEDA</my><jp>中断中</jp><cn>暂停</cn></textItem><textItem identifier="Level_Failed"><en_us>Level Failed</en_us><en_uk>Level Failed</en_uk><nl>Level mislukt</nl><fr>Niveau raté</fr><de>Level nicht geschafft</de><es>Nivel fallido</es><br>Nível perdido</br><pt>Nível falhado</pt><it>Livello fallito</it><se>Nivå ej klarad</se><pl>Poziom nie został ukończony</pl><ru>Уровень не пройден!</ru><tr>Seviye Tamamlanamadı</tr><id>Level Gagal</id><my>Tahap Gagal</my><jp>レベルクリア失敗</jp><cn>本关失败</cn></textItem><textItem identifier="Next_Level"><en_us>NEXT LEVEL</en_us><en_uk>NEXT LEVEL</en_uk><nl>VOLGEND LEVEL</nl><fr>PROCHAIN NIVEAU</fr><de>NÄCHSTER LEVEL</de><es>SIGUIENTE NIVEL</es><br>PRÓXIMO NÍVEL</br><pt>NÍVEL SEGUINTE</pt><it>PROSSIMO LIVELLO</it><se>NÄSTA NIVÅ</se><pl>NASTĘPNY POZIOM</pl><ru>СЛЕДУЮЩИЙ УРОВЕНЬ</ru><tr>SONRAKİ SEVİYE</tr><id>LEVEL BERIKUTNYA</id><my>TAHAP SETERUSNYA</my><jp>次のレベル</jp><cn>下一关</cn></textItem><textItem identifier="More_Games"><en_us>MORE GAMES AT:</en_us><en_uk>MORE GAMES AT:</en_uk><nl>MEER SPELLEN OP:</nl><fr>PLUS DE JEUX SUR :</fr><de>MEHR SPIELE AUF:</de><es>MÁS JUEGOS EN:</es><br>MAIS JOGOS EM:</br><pt>MAIS JOGOS EM:</pt><it>PIÙ GIOCHI SU:</it><se>FLER SPEL PÅ:</se><pl>WIĘCEJ GIER NA:</pl><ru>ДРУГИЕ ИГРЫ:</ru><tr>DİĞER OYUNLAR:</tr><id>PERMAINAN LAINNYA DI:</id><my>LAGI PERMAINAN DI:</my><jp>↓他のゲームをもっと遊ぶ↓</jp><cn>更多游戏:</cn></textItem><textItem identifier="Stats_Title"><en_us>STATS</en_us><en_uk>STATS</en_uk><nl>STATISTIEKEN</nl><fr>STATISTIQUES</fr><de>STATISTIKEN</de><es>ESTADÍSTICAS</es><br>ESTATÍSTICAS</br><pt>ESTATÍSTICAS</pt><it>STATISTICHE</it><se>STAT.</se><pl>STATYSTYKI</pl><ru>СТАТИСТИКА</ru><tr>İSTATİSTİKLER</tr><id>STATISTIK</id><my>STAT</my><jp>統計</jp><cn>统计</cn></textItem><textItem identifier="score"><en_us>Score</en_us><en_uk>Score</en_uk><nl>Score</nl><fr>Score</fr><de>Punkte</de><es>Puntuación</es><br>Pontuação</br><pt>Pontuação</pt><it>Punteggio</it><se>Poäng</se><pl>Wynik</pl><ru>Счет</ru><tr>Skor</tr><id>Skor </id><my>Skor</my><jp>スコア</jp><cn>分数</cn></textItem><textItem identifier="medal_earned"><en_us>Medal Earned</en_us><en_uk>Medal Earned</en_uk><nl>Medaille verdiend</nl><fr>Médailles gagnées</fr><de>Medaille gewonnen</de><es>Medalla conseguida</es><br>Medalha ganha</br><pt>Medalhas ganhas</pt><it>Medaglia guadagnata</it><se>Medalj tilldelad</se><pl>Zdobyte medale</pl><ru>Медаль</ru><tr>Kazanılan Madalya</tr><id>Medali yang diperoleh</id><my>Pingat Diperolehi</my><jp>獲得したメダル</jp><cn>奖章</cn></textItem><textItem identifier="biggest_combo"><en_us>Biggest Combo</en_us><en_uk>Biggest Combo</en_uk><nl>Grootste combo</nl><fr>Le plus grand combo</fr><de>Größte Kombo</de><es>Combinación más grande</es><br>Maior combo</br><pt>Maior combinação</pt><it>Combinazione più grande</it><se>Största kombo</se><pl>Największe combo</pl><ru>Лучшая комбинация</ru><tr>En Büyük Kombo</tr><id>Kombo terbesar</id><my>Kombo Terbesar</my><jp>最大コンボ</jp><cn>最大的连击</cn></textItem><textItem identifier="hardest_impact"><en_us>Hardest Impact</en_us><en_uk>Hardest Impact</en_uk><nl>Hardste inslag</nl><fr>L'impact le plus violent</fr><de>Härtester Schlag</de><es>Impacto más fuerte</es><br>Maior impacto</br><pt>Impacto mais forte</pt><it>Impatto più duro</it><se>Hårdast träff</se><pl>Najsilniejsze uderzenie</pl><ru>Сильнейший удар</ru><tr>En Zor Vuruş</tr><id>Pengaruh terkuat</id><my>Impak Paling kuat</my><jp>最大インパクト</jp><cn>最猛的冲击</cn></textItem><textItem identifier="max_velocity"><en_us>Maximum Velocity</en_us><en_uk>Maximum Velocity</en_uk><nl>Hoogste snelheid</nl><fr>La plus grande vitesse</fr><de>Höchste Geschwindigkeit</de><es>Velocidad máxima</es><br>Máxima velocidade</br><pt>Velocidade máxima</pt><it>Velocità massima</it><se>Maxhastighet</se><pl>Maksymalna prędkość</pl><ru>Максимальная скорость</ru><tr>Maksimum Hız</tr><id>Kecepatan maksimum</id><my>Halaju Maksimum</my><jp>最高速度</jp><cn>最大速度</cn></textItem><textItem identifier="slammings_escaped"><en_us>Slammings Escaped</en_us><en_uk>Slammings Escaped</en_uk><nl>Slammings ontsnapt</nl><fr>Slammings échappés</fr><de>Entkommene Slammings</de><es>Slammings que han huido</es><br>Slammings fugitivos</br><pt>Slammings que escaparam</pt><it>Slammings scappati</it><se>Slemlar som flytt</se><pl>Slamingi, które uciekły</pl><ru>Спаслось ушлепков</ru><tr>Kaçan Serseriler</tr><id>Gerdam yang melarikan diri</id><my>Slamming Terlepas</my><jp>逃げたスラミング</jp><cn>逃跑的Slamming</cn></textItem><textItem identifier="slammings_killed"><en_us>Slammings Killed</en_us><en_uk>Slammings Killed</en_uk><nl>Slammings gedood</nl><fr>Slammings tués</fr><de>Getötete Slammings</de><es>Slammings asesinados</es><br>Slammings eliminados</br><pt>Slammings mortos</pt><it>Slammings uccisi</it><se>Slemlar dödade</se><pl>Zabite slamingi</pl><ru>Убито ушлепков</ru><tr>Öldürülen Serseriler</tr><id>Gerdam yang terbunuh</id><my>Slamming Dibunuh</my><jp>殺したスラミング</jp><cn>杀死的Slamming</cn></textItem><textItem identifier="time_played"><en_us>Time Played</en_us><en_uk>Time Played</en_uk><nl>Tijd gespeeld</nl><fr>Temps joué</fr><de>Spielzeit</de><es>Tiempo jugado</es><br>Tempo de jogo</br><pt>Tempo de jogo</pt><it>Tempo giocato</it><se>Spelad tid</se><pl>Czas gry</pl><ru>Затрачено времени</ru><tr>Oyun Süresi</tr><id>Waktu yang dimainkan</id><my>Masa Mainan</my><jp>プレイ時間</jp><cn>时间</cn></textItem><textItem identifier="tools_used"><en_us>Tools Used</en_us><en_uk>Tools Used</en_uk><nl>Wapens gebruikt</nl><fr>Outils utilisés</fr><de>Verwendete Werkzeuge</de><es>Herramientas usadas</es><br>Ferramentas usadas</br><pt>Ferramentas usadas</pt><it>Strumenti usati</it><se>Använda verktyg</se><pl>Użyte bronie</pl><ru>Использовано предметов</ru><tr>Kullanılan Aletler</tr><id>Peralatan yang dipakai</id><my>Alat Digunakan</my><jp>使用したツール</jp><cn>使用过的道具</cn></textItem><textItem identifier="tools_saved"><en_us>Tools Saved</en_us><en_uk>Tools Saved</en_uk><nl>Wapens bewaard</nl><fr>Outils sauvegardés</fr><de>Nicht verwendete Werkzeuge</de><es>Herramientas guardadas</es><br>Ferramentas salvas</br><pt>Ferramentas guardadas</pt><it>Strumenti salvati</it><se>Sparade verktyg</se><pl>Zachowane bronie</pl><ru>Сэкономлено предметов</ru><tr>Saklanan Aletler</tr><id>Peralatan yang tersimpan</id><my>Alat Diselamatkan</my><jp>使用しなかったツール</jp><cn>收藏的道具</cn></textItem><textItem identifier="Gold"><en_us>Gold</en_us><en_uk>Gold</en_uk><nl>Gouden</nl><fr>Or</fr><de>Gold</de><es>Oro</es><br>Ouro</br><pt>Ouro</pt><it>Oro</it><se>Guld</se><pl>Złoty</pl><ru>Золотая</ru><tr>Altın</tr><id>Emas</id><my>Emas</my><jp>金</jp><cn>金</cn></textItem><textItem identifier="Silver"><en_us>Silver</en_us><en_uk>Silver</en_uk><nl>Zilveren</nl><fr>Argent</fr><de>Silber</de><es>Plata</es><br>Prata</br><pt>Prata</pt><it>Argento</it><se>Silver</se><pl>Srebrny</pl><ru>Серебряная</ru><tr>Gümüş</tr><id>Perak</id><my>Perak</my><jp>銀</jp><cn>银</cn></textItem><textItem identifier="Bronze"><en_us>Bronze</en_us><en_uk>Bronze</en_uk><nl>Bronzen</nl><fr>Bronze</fr><de>Bronze</de><es>Bronce</es><br>Bronze</br><pt>Bronze</pt><it>Bronzo</it><se>Brons</se><pl>Brązowy</pl><ru>Бронзовая</ru><tr>Bronz</tr><id>Tembaga</id><my>Gangsa</my><jp>銅</jp><cn>铜</cn></textItem><textItem identifier="None"><en_us>None</en_us><en_uk>None</en_uk><nl>Geen</nl><fr>Aucune</fr><de>Keine</de><es>Ninguna</es><br>Nenhuma</br><pt>Nenhuma</pt><it>Nessuno</it><se>Ingen</se><pl>Brak</pl><ru>Нет</ru><tr>Hiçbiri</tr><id>Tidak ada</id><my>Tiada</my><jp>なし</jp><cn>没有</cn></textItem><textItem identifier="High_Scores"><en_us>HIGH SCORES</en_us><en_uk>HIGH SCORES</en_uk><nl>HIGHSCORES</nl><fr>MEILLEURS SCORES</fr><de>HIGHSCORES</de><es>PUNTUACIONES MÁXIMAS</es><br>RECORDES</br><pt>PONTUAÇÕES MAIS ALTAS</pt><it>PUNTEGGI PIÙ ALTI</it><se>TOPPOÄNG</se><pl>RANKING</pl><ru>РЕКОРДЫ</ru><tr>EN YÜKSEK SKORLAR</tr><id>NILAI TERTINGGI</id><my>SKOR TERTINGGI</my><jp>ハイスコア</jp><cn>高分榜</cn></textItem><textItem identifier="Player_Name"><en_us>Player</en_us><en_uk>Player</en_uk><nl>Speler</nl><fr>Joueur</fr><de>Spieler</de><es>Jugador</es><br>Jogador</br><pt>Jogador</pt><it>Giocatore</it><se>Spelare</se><pl>Gracz</pl><ru>Игрок</ru><tr>Oyuncu</tr><id>Pemain</id><my>Pemain</my><jp>プレイヤー</jp><cn>玩家</cn></textItem><textItem identifier="Locked_Message"><en_us>Get a medal in Campaign Mode level XXX to unlock this level</en_us><en_uk>Win a medal in Campaign mode level XXX to unlock this level</en_uk><nl>Verdien een medaille in level XXX van het speltype Campagne om dit level vrij te spelen</nl><fr>Reçois une médaille en mode de campagne au niveau XXX afin de déverrouiller ce niveau</fr><de>Gewinne eine Medaille in Level XXX (Kampagnen-Modus), um diesen Level freizuschalten.</de><es>Consigue una medalla en el nivel XXX del modo Campaña para desbloquear este nivel.</es><br>Consiga uma medalha no nível XXX no Modo Campanha para desbloquear este nível</br><pt>Ganhe uma medalha no modo de campanha do nível XXX para desbloquear este nível</pt><it>Prendi una medaglia nella modalità Campaign XXX per sbloccare questo livello</it><se>Få en medalj i Tävlingsläge XXX för att låsa upp den här nivån</se><pl>Zdobądź medal na poziomie XXX w trybie kampanii, aby odblokować ten poziom</pl><ru>Чтобы получить доступ к этому уровню, заслужи медаль на XXX уровне в режиме кампании</ru><tr>Bu seviyeyi aktive etmek için Savaş Modunda XXX. seviyede bir madalya alın</tr><id>Dapatkan sebuah medali di Mode Kampanye level XXX untuk membuka level ini</id><my>Dapatkan pingat dalam Mod Kempen tahap XXX untuk membuka kunci tahap ini</my><jp>戦略モードのレベルXXXでメダルを獲得すると、このレベルが解除されます</jp><cn>在作战模式的第XXX关赢得一个奖章就可为本关解锁</cn></textItem><textItem identifier="Skip"><en_us>SKIP</en_us><en_uk>SKIP</en_uk><nl>OVERSLAAN</nl><fr>PASSER</fr><de>ÜBERSPRINGEN</de><es>SALTAR</es><br>PULAR</br><pt>IGNORAR</pt><it>SALTA</it><se>SKIPPA</se><pl>POMIŃ</pl><ru>ПРОПУСТИТЬ</ru><tr>ATLA</tr><id>LEWATI</id><my>LANGKAU</my><jp>スキップ</jp><cn>跳过</cn></textItem><textItem identifier="Quality"><en_us>QUALITY</en_us><en_uk>QUALITY</en_uk><nl>KWALITEIT</nl><fr>QUALITÉ</fr><de>QUALITÄT</de><es>CALIDAD</es><br>QUALIDADE</br><pt>QUALIDADE</pt><it>QUALITÀ</it><se>KVALITET</se><pl>JAKOŚĆ</pl><ru>КАЧЕСТВО</ru><tr>KALİTE</tr><id>KUALITAS</id><my>KUALITI</my><jp>クオリティ</jp><cn>质量</cn></textItem><textItem identifier="Low"><en_us>LOW</en_us><en_uk>LOW</en_uk><nl>LAAG</nl><fr>BASSE</fr><de>NIEDRIG</de><es>BAJA</es><br>BAIXA</br><pt>BAIXA</pt><it>BASSA</it><se>LÅG</se><pl>NISKA</pl><ru>НИЗКОЕ</ru><tr>DÜŞÜK</tr><id>BURUK</id><my>RENDAH</my><jp>低</jp><cn>低</cn></textItem><textItem identifier="Medium"><en_us>NORMAL </en_us><en_uk>NORMAL </en_uk><nl>NORMAAL</nl><fr>NORMALE</fr><de>NORMAL</de><es>NORMAL</es><br>NORMAL</br><pt>NORMAL </pt><it>NORMALE</it><se>NORMAL</se><pl>ŚREDNIA</pl><ru>СРЕДНЕЕ</ru><tr>NORMAL </tr><id>NORMAL</id><my>MEDIUM</my><jp>標準</jp><cn>中</cn></textItem><textItem identifier="High"><en_us>BEST</en_us><en_uk>BEST</en_uk><nl>HOOG</nl><fr>HAUTE</fr><de>HOCH</de><es>ALTA</es><br>ÓTIMA</br><pt>ÓPTIMA</pt><it>MIGLIORE</it><se>HÖG</se><pl>DOBRA</pl><ru>ВЫСОКОЕ</ru><tr>EN İYİ</tr><id>TERBAIK</id><my>TINGGI</my><jp>高</jp><cn>高</cn></textItem><textItem identifier="Volume"><en_us>VOLUME</en_us><en_uk>VOLUME</en_uk><nl>VOLUME</nl><fr>VOLUME</fr><de>LAUTSTÄRKE</de><es>VOLUMEN</es><br>VOLUME</br><pt>VOLUME</pt><it>VOLUME</it><se>VOLYM</se><pl>GŁOŚNOŚĆ</pl><ru>ГРОМКОСТЬ</ru><tr>SES</tr><id>VOLUME</id><my>KELANTANGAN</my><jp>音量</jp><cn>音量</cn></textItem><textItem identifier="Cancel"><en_us>CANCEL</en_us><en_uk>CANCEL</en_uk><nl>ANNULEREN</nl><fr>ANNULER</fr><de>ABBRECHEN</de><es>CANCELAR</es><br>CANCELAR</br><pt>CANCELAR</pt><it>ANNULLA</it><se>AVBRYT</se><pl>ANULUJ</pl><ru>ОТМЕНА</ru><tr>İPTAL</tr><id>BATAL</id><my>BATAL</my><jp>キャンセル</jp><cn>取消</cn></textItem><textItem identifier="No_Medal_Yet"><en_us>NO MEDAL</en_us><en_uk>NO MEDAL</en_uk><nl>GEEN MEDAILLE</nl><fr>AUCUNE MÉDAILLE</fr><de>KEINE MEDAILLE</de><es>NO HAY MEDALLA</es><br>NENHUMA MEDALHA</br><pt>NENHUMA MEDALHA</pt><it>NESSUNA MEDAGLIA</it><se>INGEN MEDALJ</se><pl>BEZ MEDALU</pl><ru>БЕЗ МЕДАЛИ</ru><tr>MADALYA YOK</tr><id>TIDAK ADA MEDALI</id><my>TIADA PINGAT</my><jp>メダル無し</jp><cn>没有奖章</cn></textItem><textItem identifier="Medal_Requirement"><en_us>Score over XXX points for a YYY medal</en_us><en_uk>Score over XXX points to win a YYY medal</en_uk><nl>Verdien meer dan XXX punten voor een YYY medaille</nl><fr>Marque plus de XXX points pour obtenir une médaille de YYY</fr><de>Erziele mehr als XXX Punkte, um eine YYY-Medaille zu bekommen</de><es>Consigue más de XXX puntos para una medalla de YYY</es><br>A pontuação deve ser maior que XXX para conquistar uma medalha de YYY</br><pt>Ganhe mais de XXX pontos para conseguir uma medalha de YYY</pt><it>Segna più di XXX punti per una medaglia YYY</it><se>Få över XXX poäng för att få en YYYmedalj</se><pl>Zdobądź ponad XXX punktów, aby otrzymać medal YYY</pl><ru>YYY медаль тебе полагается, если ты наберешь более XXX очков</ru><tr>YYY madalya kazanmak için XXX üzeri puan alın</tr><id>Skor melewati XXX poin untuk sebuah medali XXX</id><my>Dapatkan lebih daripada XXX mata untuk pingat YYY </my><jp>YYYメダルを獲得するにはXXX以上のポイントが必要です</jp><cn>分数超过YYY获得一个XXX奖章</cn></textItem><textItem identifier="Score_Best"><en_us>Your best score : XXX</en_us><en_uk>Your best score : XXX</en_uk><nl>Je beste score: XXX</nl><fr>Ton meilleur score : XXX</fr><de>Deine Höchstpunktzahl: XXX</de><es>Tu mejor puntuación: XXX</es><br>Sua melhor pontuação: XXX</br><pt>A sua melhor pontuação: XXX</pt><it>Il tuo miglior punteggio: XXX</it><se>Din bästa poäng: XXX</se><pl>Twój najlepszy wynik: XXX</pl><ru>Твой лучший результат: XXX</ru><tr>En iyi skorunuz : XXX</tr><id>Skor terbaik anda: XXX</id><my>Markah terbaik anda: XXX</my><jp>あなたのベストスコア:XXX</jp><cn>你的最高分:XXX</cn></textItem></LocalisedText> ; SpilGame.importXMLv2(_local1); trace("Language Data Succesfully included"); trace(("Slamming constructor, bytesLoaded = " + this.loaderInfo.bytesLoaded)); addEventListener(Event.ENTER_FRAME, checkFrame); preloader = new PreloaderScreen(loaderInfo); addChild(preloader); } private function checkFrame(_arg1:Event):void{ if (currentFrame == totalFrames){ removeChild(preloader); removeEventListener(Event.ENTER_FRAME, checkFrame); startup(); }; } private function startup():void{ stop(); var _local1:Class = (getDefinitionByName("Main") as Class); addChild((new (_local1) as DisplayObject)); } } }//package
Section 516
//Slammings_Comic (Slammings_Comic) package { import mx.core.*; public class Slammings_Comic extends FontAsset { } }//package
Section 517
//Slammings_ComicBold (Slammings_ComicBold) package { import mx.core.*; public class Slammings_ComicBold extends FontAsset { } }//package
Section 518
//SlammingStreamMap (SlammingStreamMap) package { import flash.display.*; public dynamic class SlammingStreamMap extends MovieClip { } }//package
Section 519
//Soul (Soul) package { import flash.display.*; public dynamic class Soul extends MovieClip { } }//package
Section 520
//Spoon_anchor_mc (Spoon_anchor_mc) package { import flash.display.*; public dynamic class Spoon_anchor_mc extends MovieClip { } }//package
Section 521
//Spoon_mc (Spoon_mc) package { import flash.display.*; public dynamic class Spoon_mc extends MovieClip { } }//package
Section 522
//Spoon_tool (Spoon_tool) package { import flash.display.*; public dynamic class Spoon_tool extends MovieClip { } }//package
Section 523
//Texture1 (Texture1) package { import flash.display.*; public dynamic class Texture1 extends MovieClip { } }//package
Section 524
//Tooltip_mc (Tooltip_mc) package { import flash.display.*; import flash.text.*; public dynamic class Tooltip_mc extends MovieClip { public var bg:TooltipBackground; public var txt:TextField; } }//package
Section 525
//TooltipBackground (TooltipBackground) package { import flash.display.*; public dynamic class TooltipBackground extends MovieClip { } }//package
Section 526
//Toxic_mc (Toxic_mc) package { import flash.display.*; public dynamic class Toxic_mc extends MovieClip { } }//package
Section 527
//Tutorial_mc (Tutorial_mc) package { import flash.display.*; import spill.localisation.*; public dynamic class Tutorial_mc extends MovieClip { public var back_btn:MovieClip; public var picture:MovieClip; public var tut1_btn:MovieClip; public var tut3_btn:MovieClip; public var tut5_btn:MovieClip; public var __id19_:LocalizedTextField; public var video:MovieClip; public var text3:LocalizedTextField; public var text4:LocalizedTextField; public var text2:LocalizedTextField; public var tut4_btn:MovieClip; public var text1:LocalizedTextField; public var skip_btn:MovieClip; public var tut2_btn:MovieClip; public var play_btn:MovieClip; public function Tutorial_mc(){ __setProp_text3_TUTORIALmc_Layer1_1(); __setProp___id19__TUTORIALmc_Layer1_1(); __setProp_text1_TUTORIALmc_Layer1_1(); __setProp_text2_TUTORIALmc_Layer1_1(); __setProp_text4_TUTORIALmc_Layer1_1(); } function __setProp_text4_TUTORIALmc_Layer1_1(){ try { text4["componentInspectorSetting"] = true; } catch(e:Error) { }; text4.text = "Oh right! Click and hold the screen to move the camera"; text4.textColor = 0xFFFFFF; text4.textSize = 14; text4.bold = true; text4.embedFonts = true; text4.font = "Comic Sans MS"; text4.hAlign = "center"; text4.multiline = true; text4.vAlign = "top"; text4.antiAliasType = "advanced"; text4.glowBlur = 3; text4.glowColor = 0; text4.useGlowFilter = false; text4.glowQuality = 1; text4.glowStrength = 5; text4.gridFitType = "pixel"; text4.italic = false; text4.selectable = false; text4.underline = false; try { text4["componentInspectorSetting"] = false; } catch(e:Error) { }; } function __setProp_text3_TUTORIALmc_Layer1_1(){ try { text3["componentInspectorSetting"] = true; } catch(e:Error) { }; text3.text = "Select bij clicking the icon. Or pressing ‘2’ "; text3.textColor = 0xFFFFFF; text3.textSize = 14; text3.bold = true; text3.embedFonts = true; text3.font = "Comic Sans MS"; text3.hAlign = "center"; text3.multiline = true; text3.vAlign = "middle"; text3.antiAliasType = "advanced"; text3.glowBlur = 3; text3.glowColor = 0; text3.useGlowFilter = false; text3.glowQuality = 1; text3.glowStrength = 5; text3.gridFitType = "pixel"; text3.italic = false; text3.selectable = false; text3.underline = false; try { text3["componentInspectorSetting"] = false; } catch(e:Error) { }; } function __setProp_text1_TUTORIALmc_Layer1_1(){ try { text1["componentInspectorSetting"] = true; } catch(e:Error) { }; text1.text = "UGH! I hate tutorials...LET’S"; text1.textColor = 0xFFFFFF; text1.textSize = 16; text1.bold = true; text1.embedFonts = true; text1.font = "Comic Sans MS"; text1.hAlign = "center"; text1.multiline = false; text1.vAlign = "top"; text1.antiAliasType = "advanced"; text1.glowBlur = 3; text1.glowColor = 0; text1.useGlowFilter = false; text1.glowQuality = 1; text1.glowStrength = 5; text1.gridFitType = "pixel"; text1.italic = false; text1.selectable = false; text1.underline = false; try { text1["componentInspectorSetting"] = false; } catch(e:Error) { }; } function __setProp___id19__TUTORIALmc_Layer1_1(){ try { __id19_["componentInspectorSetting"] = true; } catch(e:Error) { }; __id19_.text = "{or}"; __id19_.textColor = 0xFFFFFF; __id19_.textSize = 12; __id19_.bold = true; __id19_.embedFonts = true; __id19_.font = "Comic Sans MS"; __id19_.hAlign = "center"; __id19_.multiline = false; __id19_.vAlign = "top"; __id19_.antiAliasType = "advanced"; __id19_.glowBlur = 3; __id19_.glowColor = 0; __id19_.useGlowFilter = false; __id19_.glowQuality = 1; __id19_.glowStrength = 5; __id19_.gridFitType = "pixel"; __id19_.italic = false; __id19_.selectable = false; __id19_.underline = false; try { __id19_["componentInspectorSetting"] = false; } catch(e:Error) { }; } function __setProp_text2_TUTORIALmc_Layer1_1(){ try { text2["componentInspectorSetting"] = true; } catch(e:Error) { }; text2.text = "This a Slamming. He can't reach the end of the level.Click an hold to throw him"; text2.textColor = 0xFFFFFF; text2.textSize = 14; text2.bold = true; text2.embedFonts = true; text2.font = "Comic Sans MS"; text2.hAlign = "center"; text2.multiline = true; text2.vAlign = "middle"; text2.antiAliasType = "advanced"; text2.glowBlur = 3; text2.glowColor = 0; text2.useGlowFilter = false; text2.glowQuality = 1; text2.glowStrength = 5; text2.gridFitType = "pixel"; text2.italic = false; text2.selectable = false; text2.underline = false; try { text2["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package
Section 528
//TutorialVideo1 (TutorialVideo1) package { import flash.display.*; public dynamic class TutorialVideo1 extends MovieClip { } }//package
Section 529
//TutorialVideo2 (TutorialVideo2) package { import flash.display.*; public dynamic class TutorialVideo2 extends MovieClip { } }//package
Section 530
//TutorialVideo3 (TutorialVideo3) package { import flash.display.*; public dynamic class TutorialVideo3 extends MovieClip { } }//package
Section 531
//TutorialVideo4 (TutorialVideo4) package { import flash.display.*; public dynamic class TutorialVideo4 extends MovieClip { } }//package
Section 532
//TutorialVideo5 (TutorialVideo5) package { import flash.display.*; public dynamic class TutorialVideo5 extends MovieClip { } }//package
Section 533
//Water_mc (Water_mc) package { import flash.display.*; public dynamic class Water_mc extends MovieClip { } }//package
Section 534
//Villager_house (Villager_house) package { import flash.display.*; public dynamic class Villager_house extends MovieClip { } }//package

Library Items

Symbol 1 GraphicUsed by:109
Symbol 2 GraphicUsed by:3
Symbol 3 MovieClipUses:2Used by:109 586
Symbol 4 GraphicUsed by:109
Symbol 5 GraphicUsed by:6
Symbol 6 MovieClipUses:5Used by:109 586
Symbol 7 GraphicUsed by:109
Symbol 8 GraphicUsed by:9
Symbol 9 MovieClipUses:8Used by:109
Symbol 10 GraphicUsed by:109
Symbol 11 GraphicUsed by:12
Symbol 12 MovieClipUses:11Used by:109 586
Symbol 13 GraphicUsed by:109
Symbol 14 GraphicUsed by:15
Symbol 15 MovieClipUses:14Used by:109 586
Symbol 16 GraphicUsed by:109
Symbol 17 GraphicUsed by:18
Symbol 18 MovieClipUses:17Used by:19
Symbol 19 MovieClip {MENUS_fla.loadingbar_81} [MENUS_fla.loadingbar_81]Uses:18Used by:109
Symbol 20 GraphicUsed by:109
Symbol 21 GraphicUsed by:22
Symbol 22 MovieClipUses:21Used by:101 289
Symbol 23 GraphicUsed by:34
Symbol 24 GraphicUsed by:34
Symbol 25 GraphicUsed by:34
Symbol 26 GraphicUsed by:34
Symbol 27 GraphicUsed by:34
Symbol 28 GraphicUsed by:34
Symbol 29 GraphicUsed by:34
Symbol 30 GraphicUsed by:34
Symbol 31 GraphicUsed by:34
Symbol 32 GraphicUsed by:33
Symbol 33 MovieClipUses:32Used by:34
Symbol 34 MovieClipUses:23 24 25 26 27 28 29 30 31 33Used by:101 289
Symbol 35 GraphicUsed by:36
Symbol 36 MovieClipUses:35Used by:101 289
Symbol 37 GraphicUsed by:38
Symbol 38 MovieClipUses:37Used by:101 289
Symbol 39 GraphicUsed by:40
Symbol 40 MovieClipUses:39Used by:101 289
Symbol 41 GraphicUsed by:42
Symbol 42 MovieClipUses:41Used by:101
Symbol 43 GraphicUsed by:44
Symbol 44 MovieClipUses:43Used by:101 289
Symbol 45 GraphicUsed by:46
Symbol 46 MovieClipUses:45Used by:101 289
Symbol 47 GraphicUsed by:48
Symbol 48 MovieClipUses:47Used by:101
Symbol 49 GraphicUsed by:50
Symbol 50 MovieClipUses:49Used by:101 289
Symbol 51 GraphicUsed by:52
Symbol 52 MovieClipUses:51Used by:101 289
Symbol 53 GraphicUsed by:54
Symbol 54 MovieClipUses:53Used by:101 289
Symbol 55 GraphicUsed by:56
Symbol 56 MovieClipUses:55Used by:101
Symbol 57 GraphicUsed by:58
Symbol 58 MovieClipUses:57Used by:101
Symbol 59 GraphicUsed by:60
Symbol 60 MovieClipUses:59Used by:101
Symbol 61 GraphicUsed by:62
Symbol 62 MovieClipUses:61Used by:101
Symbol 63 GraphicUsed by:66
Symbol 64 GraphicUsed by:65
Symbol 65 MovieClipUses:64Used by:66 80 262 274
Symbol 66 MovieClipUses:63 65Used by:101
Symbol 67 GraphicUsed by:68
Symbol 68 MovieClipUses:67Used by:101
Symbol 69 GraphicUsed by:70
Symbol 70 MovieClipUses:69Used by:101
Symbol 71 GraphicUsed by:72
Symbol 72 MovieClipUses:71Used by:101
Symbol 73 GraphicUsed by:74
Symbol 74 MovieClipUses:73Used by:101 289
Symbol 75 GraphicUsed by:76
Symbol 76 MovieClipUses:75Used by:101
Symbol 77 GraphicUsed by:78
Symbol 78 MovieClipUses:77Used by:101
Symbol 79 GraphicUsed by:80
Symbol 80 MovieClipUses:79 65Used by:101
Symbol 81 GraphicUsed by:82
Symbol 82 MovieClipUses:81Used by:101
Symbol 83 GraphicUsed by:84
Symbol 84 MovieClipUses:83Used by:101
Symbol 85 GraphicUsed by:86
Symbol 86 MovieClipUses:85Used by:101 289
Symbol 87 GraphicUsed by:88
Symbol 88 MovieClipUses:87Used by:101
Symbol 89 GraphicUsed by:90
Symbol 90 MovieClipUses:89Used by:101 289
Symbol 91 GraphicUsed by:92
Symbol 92 MovieClipUses:91Used by:101 289
Symbol 93 GraphicUsed by:94
Symbol 94 MovieClipUses:93Used by:101
Symbol 95 GraphicUsed by:96
Symbol 96 MovieClipUses:95Used by:101
Symbol 97 GraphicUsed by:98
Symbol 98 MovieClipUses:97Used by:101
Symbol 99 GraphicUsed by:100
Symbol 100 MovieClipUses:99Used by:101
Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo]Uses:22 34 36 38 40 42 44 46 48 50 52 54 56 58 60 62 66 68 70 72 74 76 78 80 82 84 86 88 90 92 94 96 98 100Used by:109 336 518 570
Symbol 102 FontUsed by:103 126 127 128 129 130 131 132 133 134 135 136 137 138 139 142 143 144 145 146 147 148 149 150 151 152 153 156 157 158 159 160 161 162 163 164 165 166 167 168 169 206
Symbol 103 EditableTextUses:102Used by:109
Symbol 104 GraphicUsed by:105
Symbol 105 MovieClipUses:104Used by:106 580
Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]Uses:105Used by:109 336 514 517 518 565 566 568 570 573 594 595 596 597 684 695 696 699 712 716 723 727 729 785 818 879 995 996 997 998
Symbol 107 GraphicUsed by:108
Symbol 108 ButtonUses:107Used by:109
Symbol 109 MovieClip {Preloader_mc} [Preloader_mc]Uses:1 3 4 6 7 9 10 12 13 15 16 19 20 101 103 106 108
Symbol 110 Font {Slammings_ComicBold}Used by:697 717
Symbol 111 Font {Slammings_Comic}Used by:697 717
Symbol 112 GraphicUsed by:115
Symbol 113 FontUsed by:114 176 177 178
Symbol 114 TextUses:113Used by:115
Symbol 115 MovieClip {Lethe_PreviewMc} [Lethe_PreviewMc]Uses:112 114Used by:293
Symbol 116 GraphicUsed by:117
Symbol 117 MovieClipUses:116Used by:118
Symbol 118 MovieClip {Lethe_BackGround} [Lethe_BackGround]Uses:117Used by:293
Symbol 119 GraphicUsed by:120
Symbol 120 MovieClip {Lethe_FocusLine} [Lethe_FocusLine]Uses:119Used by:293
Symbol 121 GraphicUsed by:122
Symbol 122 MovieClip {Lethe_LineBack} [Lethe_LineBack]Uses:121Used by:293
Symbol 123 GraphicUsed by:124
Symbol 124 MovieClip {Lethe_LineBack2} [Lethe_LineBack2]Uses:123Used by:293
Symbol 125 GraphicUsed by:141 155 171
Symbol 126 EditableTextUses:102Used by:140
Symbol 127 EditableTextUses:102Used by:140
Symbol 128 EditableTextUses:102Used by:140
Symbol 129 EditableTextUses:102Used by:140
Symbol 130 EditableTextUses:102Used by:140
Symbol 131 EditableTextUses:102Used by:140
Symbol 132 EditableTextUses:102Used by:140
Symbol 133 EditableTextUses:102Used by:140
Symbol 134 EditableTextUses:102Used by:140
Symbol 135 EditableTextUses:102Used by:140
Symbol 136 EditableTextUses:102Used by:140
Symbol 137 EditableTextUses:102Used by:140
Symbol 138 EditableTextUses:102Used by:140
Symbol 139 EditableTextUses:102Used by:140
Symbol 140 MovieClipUses:126 127 128 129 130 131 132 133 134 135 136 137 138 139Used by:141 173
Symbol 141 MovieClip {Lethe_Button_Up} [Lethe_Button_Up]Uses:125 140Used by:293
Symbol 142 EditableTextUses:102Used by:154
Symbol 143 EditableTextUses:102Used by:154
Symbol 144 EditableTextUses:102Used by:154
Symbol 145 EditableTextUses:102Used by:154
Symbol 146 EditableTextUses:102Used by:154
Symbol 147 EditableTextUses:102Used by:154
Symbol 148 EditableTextUses:102Used by:154
Symbol 149 EditableTextUses:102Used by:154
Symbol 150 EditableTextUses:102Used by:154
Symbol 151 EditableTextUses:102Used by:154
Symbol 152 EditableTextUses:102Used by:154
Symbol 153 EditableTextUses:102Used by:154
Symbol 154 MovieClipUses:142 143 144 145 146 147 148 149 150 151 152 153Used by:155 174
Symbol 155 MovieClip {Lethe_Button_Up2} [Lethe_Button_Up2]Uses:125 154Used by:293
Symbol 156 EditableTextUses:102Used by:170
Symbol 157 EditableTextUses:102Used by:170
Symbol 158 EditableTextUses:102Used by:170
Symbol 159 EditableTextUses:102Used by:170
Symbol 160 EditableTextUses:102Used by:170
Symbol 161 EditableTextUses:102Used by:170
Symbol 162 EditableTextUses:102Used by:170
Symbol 163 EditableTextUses:102Used by:170
Symbol 164 EditableTextUses:102Used by:170
Symbol 165 EditableTextUses:102Used by:170
Symbol 166 EditableTextUses:102Used by:170
Symbol 167 EditableTextUses:102Used by:170
Symbol 168 EditableTextUses:102Used by:170
Symbol 169 EditableTextUses:102Used by:170
Symbol 170 MovieClipUses:156 157 158 159 160 161 162 163 164 165 166 167 168 169Used by:171 175
Symbol 171 MovieClip {Lethe_Button_Up3} [Lethe_Button_Up3]Uses:125 170Used by:293
Symbol 172 GraphicUsed by:173 174 175
Symbol 173 MovieClip {Lethe_Button_Down} [Lethe_Button_Down]Uses:172 140Used by:293
Symbol 174 MovieClip {Lethe_Button_Down2} [Lethe_Button_Down2]Uses:172 154Used by:293
Symbol 175 MovieClip {Lethe_Button_Down3} [Lethe_Button_Down3]Uses:172 170Used by:293
Symbol 176 TextUses:113Used by:293
Symbol 177 TextUses:113Used by:293
Symbol 178 TextUses:113Used by:293
Symbol 179 GraphicUsed by:208
Symbol 180 GraphicUsed by:201
Symbol 181 FontUsed by:182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 211 212 213 214 215 216 217 218 219 220 221 222 223 224 226 232 233 234 235 236 237 238 239 240 241 242 243 244 245 247
Symbol 182 EditableTextUses:181Used by:199
Symbol 183 EditableTextUses:181Used by:199
Symbol 184 EditableTextUses:181Used by:199
Symbol 185 EditableTextUses:181Used by:199
Symbol 186 EditableTextUses:181Used by:199
Symbol 187 EditableTextUses:181Used by:199
Symbol 188 EditableTextUses:181Used by:199
Symbol 189 EditableTextUses:181Used by:199
Symbol 190 EditableTextUses:181Used by:199
Symbol 191 EditableTextUses:181Used by:199
Symbol 192 EditableTextUses:181Used by:199
Symbol 193 EditableTextUses:181Used by:199
Symbol 194 EditableTextUses:181Used by:199
Symbol 195 EditableTextUses:181Used by:199
Symbol 196 EditableTextUses:181Used by:199
Symbol 197 FontUsed by:198 225 246
Symbol 198 TextUses:197Used by:199
Symbol 199 MovieClip {Lethe_Text3} [Lethe_Text3]Uses:182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 198Used by:201
Symbol 200 GraphicUsed by:201
Symbol 201 MovieClip {Lethe_Button_Back} [Lethe_Button_Back]Uses:180 199 200Used by:208
Symbol 202 GraphicUsed by:208
Symbol 203 ShapeTweeningUsed by:205
Symbol 204 GraphicUsed by:205
Symbol 205 MovieClip {COM_LoadingProgress} [COM_LoadingProgress]Uses:203 204Used by:208
Symbol 206 EditableTextUses:102Used by:207
Symbol 207 MovieClip {Lethe_Loading_Text} [Lethe_Loading_Text]Uses:206Used by:208
Symbol 208 MovieClip {COM_LoadingBar} [COM_LoadingBar]Uses:179 201 202 205 207Used by:293
Symbol 209 GraphicUsed by:292
Symbol 210 GraphicUsed by:230
Symbol 211 EditableTextUses:181Used by:227
Symbol 212 EditableTextUses:181Used by:227
Symbol 213 EditableTextUses:181Used by:227
Symbol 214 EditableTextUses:181Used by:227
Symbol 215 EditableTextUses:181Used by:227
Symbol 216 EditableTextUses:181Used by:227
Symbol 217 EditableTextUses:181Used by:227
Symbol 218 EditableTextUses:181Used by:227
Symbol 219 EditableTextUses:181Used by:227
Symbol 220 EditableTextUses:181Used by:227
Symbol 221 EditableTextUses:181Used by:227
Symbol 222 EditableTextUses:181Used by:227
Symbol 223 EditableTextUses:181Used by:227
Symbol 224 EditableTextUses:181Used by:227
Symbol 225 TextUses:197Used by:227
Symbol 226 EditableTextUses:181Used by:227
Symbol 227 MovieClip {Lethe_txt2} [Lethe_txt2]Uses:211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226Used by:230
Symbol 228 GraphicUsed by:230
Symbol 229 GraphicUsed by:230 291
Symbol 230 MovieClip {Lethe_Continue_Button} [Lethe_Continue_Button]Uses:210 227 228 229Used by:292
Symbol 231 GraphicUsed by:291
Symbol 232 EditableTextUses:181Used by:248
Symbol 233 EditableTextUses:181Used by:248
Symbol 234 EditableTextUses:181Used by:248
Symbol 235 EditableTextUses:181Used by:248
Symbol 236 EditableTextUses:181Used by:248
Symbol 237 EditableTextUses:181Used by:248
Symbol 238 EditableTextUses:181Used by:248
Symbol 239 EditableTextUses:181Used by:248
Symbol 240 EditableTextUses:181Used by:248
Symbol 241 EditableTextUses:181Used by:248
Symbol 242 EditableTextUses:181Used by:248
Symbol 243 EditableTextUses:181Used by:248
Symbol 244 EditableTextUses:181Used by:248
Symbol 245 EditableTextUses:181Used by:248
Symbol 246 TextUses:197Used by:248
Symbol 247 EditableTextUses:181Used by:248
Symbol 248 MovieClip {Lethe_txt1} [Lethe_txt1]Uses:232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247Used by:291
Symbol 249 GraphicUsed by:250
Symbol 250 MovieClipUses:249Used by:289
Symbol 251 GraphicUsed by:252
Symbol 252 MovieClipUses:251Used by:289
Symbol 253 GraphicUsed by:254
Symbol 254 MovieClipUses:253Used by:289
Symbol 255 GraphicUsed by:256
Symbol 256 MovieClipUses:255Used by:289
Symbol 257 GraphicUsed by:258
Symbol 258 MovieClipUses:257Used by:289
Symbol 259 GraphicUsed by:260
Symbol 260 MovieClipUses:259Used by:289
Symbol 261 GraphicUsed by:262
Symbol 262 MovieClipUses:261 65Used by:289
Symbol 263 GraphicUsed by:264
Symbol 264 MovieClipUses:263Used by:289
Symbol 265 GraphicUsed by:266
Symbol 266 MovieClipUses:265Used by:289
Symbol 267 GraphicUsed by:268
Symbol 268 MovieClipUses:267Used by:289
Symbol 269 GraphicUsed by:270
Symbol 270 MovieClipUses:269Used by:289
Symbol 271 GraphicUsed by:272
Symbol 272 MovieClipUses:271Used by:289
Symbol 273 GraphicUsed by:274
Symbol 274 MovieClipUses:273 65Used by:289
Symbol 275 GraphicUsed by:276
Symbol 276 MovieClipUses:275Used by:289
Symbol 277 GraphicUsed by:278
Symbol 278 MovieClipUses:277Used by:289
Symbol 279 GraphicUsed by:280
Symbol 280 MovieClipUses:279Used by:289
Symbol 281 GraphicUsed by:282
Symbol 282 MovieClipUses:281Used by:289
Symbol 283 GraphicUsed by:284
Symbol 284 MovieClipUses:283Used by:289
Symbol 285 GraphicUsed by:286
Symbol 286 MovieClipUses:285Used by:289
Symbol 287 GraphicUsed by:288
Symbol 288 MovieClipUses:287Used by:289
Symbol 289 MovieClip {O111111Ol111.O111111Ol.O1111111l} [O111111Ol111.O111111Ol.O1111111l]Uses:22 34 36 38 40 250 44 46 252 50 52 54 254 256 258 260 262 264 266 268 74 270 272 274 276 278 86 280 90 92 282 284 286 288Used by:291
Symbol 290 GraphicUsed by:291
Symbol 291 MovieClip {Lethe_Link_Button} [Lethe_Link_Button]Uses:231 248 289 290 229Used by:292
Symbol 292 MovieClip {Lethe_Alert_Page} [Lethe_Alert_Page]Uses:209 230 291Used by:293
Symbol 293 MovieClip {O11111OO11} [O11111OO11]Uses:115 118 120 122 124 141 155 171 173 174 175 176 177 178 208 292
Symbol 294 Sound {sfx.TutorialMusic} [sfx.TutorialMusic]
Symbol 295 Sound {sfx.MainScreenMusic} [sfx.MainScreenMusic]
Symbol 296 Sound {sfx.LevelCompleteMusic} [sfx.LevelCompleteMusic]
Symbol 297 Sound {sfx.Level3Music} [sfx.Level3Music]
Symbol 298 Sound {sfx.Level1Music} [sfx.Level1Music]
Symbol 299 Sound {sfx.Level2Music} [sfx.Level2Music]
Symbol 300 Sound {sfx.LevelFailedMusic} [sfx.LevelFailedMusic]
Symbol 301 GraphicUsed by:302
Symbol 302 MovieClip {SlammingStreamMap} [SlammingStreamMap]Uses:301
Symbol 303 GraphicUsed by:306
Symbol 304 GraphicUsed by:305
Symbol 305 MovieClipUses:304Used by:306
Symbol 306 MovieClipUses:303 305Used by:307
Symbol 307 MovieClip {Background_1_mc} [Background_1_mc]Uses:306
Symbol 308 GraphicUsed by:321
Symbol 309 GraphicUsed by:310
Symbol 310 MovieClipUses:309Used by:321
Symbol 311 GraphicUsed by:321
Symbol 312 GraphicUsed by:313
Symbol 313 MovieClipUses:312Used by:321
Symbol 314 GraphicUsed by:321
Symbol 315 GraphicUsed by:316
Symbol 316 MovieClipUses:315Used by:321
Symbol 317 GraphicUsed by:321
Symbol 318 GraphicUsed by:319
Symbol 319 MovieClipUses:318Used by:321
Symbol 320 GraphicUsed by:321
Symbol 321 MovieClip {Foreground1} [Foreground1]Uses:308 310 311 313 314 316 317 319 320
Symbol 322 FontUsed by:323 989
Symbol 323 EditableTextUses:322 1054 1613Used by:324
Symbol 324 MovieClip {ui_stuff_fla.CombatText_anim_14} [ui_stuff_fla.CombatText_anim_14]Uses:323Used by:328
Symbol 325 GraphicUsed by:326
Symbol 326 MovieClipUses:325Used by:327
Symbol 327 MovieClipUses:326Used by:328
Symbol 328 MovieClip {CombatText_mc} [CombatText_mc]Uses:324 327
Symbol 329 GraphicUsed by:332
Symbol 330 GraphicUsed by:332
Symbol 331 GraphicUsed by:332
Symbol 332 MovieClip {Paused_button} [Paused_button]Uses:329 330 331
Symbol 333 Sound {sfx.gamepause} [sfx.gamepause]
Symbol 334 GraphicUsed by:335
Symbol 335 ButtonUses:334Used by:336
Symbol 336 MovieClip {BrandingButton_mc} [BrandingButton_mc]Uses:106 101 335
Symbol 337 GraphicUsed by:358
Symbol 338 GraphicUsed by:339
Symbol 339 MovieClipUses:338Used by:358 683
Symbol 340 GraphicUsed by:357
Symbol 341 GraphicUsed by:357
Symbol 342 GraphicUsed by:357
Symbol 343 GraphicUsed by:357
Symbol 344 GraphicUsed by:357
Symbol 345 GraphicUsed by:357
Symbol 346 GraphicUsed by:357
Symbol 347 GraphicUsed by:357
Symbol 348 GraphicUsed by:357
Symbol 349 GraphicUsed by:357
Symbol 350 GraphicUsed by:357
Symbol 351 GraphicUsed by:357
Symbol 352 GraphicUsed by:357
Symbol 353 GraphicUsed by:357
Symbol 354 GraphicUsed by:357
Symbol 355 GraphicUsed by:357
Symbol 356 GraphicUsed by:357
Symbol 357 MovieClipUses:340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356Used by:358 368
Symbol 358 MovieClip {Villager_house} [Villager_house]Uses:337 339 357
Symbol 359 BitmapUsed by:360
Symbol 360 GraphicUses:359Used by:361
Symbol 361 MovieClip {GroundTexture2} [GroundTexture2]Uses:360
Symbol 362 BitmapUsed by:363
Symbol 363 GraphicUses:362Used by:364
Symbol 364 MovieClip {GrassTexture2} [GrassTexture2]Uses:363
Symbol 365 GraphicUsed by:366
Symbol 366 MovieClip {Bridgepart_2} [Bridgepart_2]Uses:365
Symbol 367 GraphicUsed by:368
Symbol 368 MovieClip {Fire_mc} [Fire_mc]Uses:357 367
Symbol 369 GraphicUsed by:372
Symbol 370 GraphicUsed by:371
Symbol 371 MovieClipUses:370Used by:372
Symbol 372 MovieClipUses:369 371Used by:373
Symbol 373 MovieClip {Background2} [Background2]Uses:372
Symbol 374 GraphicUsed by:390
Symbol 375 GraphicUsed by:376
Symbol 376 MovieClipUses:375Used by:390
Symbol 377 GraphicUsed by:390
Symbol 378 GraphicUsed by:379
Symbol 379 MovieClipUses:378Used by:390
Symbol 380 GraphicUsed by:390
Symbol 381 GraphicUsed by:382
Symbol 382 MovieClipUses:381Used by:390
Symbol 383 GraphicUsed by:390
Symbol 384 GraphicUsed by:385
Symbol 385 MovieClipUses:384Used by:390
Symbol 386 GraphicUsed by:390
Symbol 387 GraphicUsed by:388 838
Symbol 388 MovieClipUses:387Used by:390
Symbol 389 GraphicUsed by:390
Symbol 390 MovieClip {Foreground2} [Foreground2]Uses:374 376 377 379 380 382 383 385 386 388 389
Symbol 391 GraphicUsed by:392
Symbol 392 MovieClipUses:391Used by:393
Symbol 393 MovieClip {Background4} [Background4]Uses:392
Symbol 394 GraphicUsed by:397
Symbol 395 GraphicUsed by:396
Symbol 396 MovieClipUses:395Used by:397
Symbol 397 MovieClip {Foreground4} [Foreground4]Uses:394 396
Symbol 398 BitmapUsed by:399
Symbol 399 GraphicUses:398Used by:400
Symbol 400 MovieClip {GroundTexture4} [GroundTexture4]Uses:399
Symbol 401 GraphicUsed by:402
Symbol 402 MovieClip {Bridgepart_4} [Bridgepart_4]Uses:401
Symbol 403 GraphicUsed by:418
Symbol 404 GraphicUsed by:418
Symbol 405 GraphicUsed by:418
Symbol 406 GraphicUsed by:418
Symbol 407 GraphicUsed by:418
Symbol 408 GraphicUsed by:418
Symbol 409 GraphicUsed by:418
Symbol 410 GraphicUsed by:418
Symbol 411 GraphicUsed by:418
Symbol 412 GraphicUsed by:418
Symbol 413 GraphicUsed by:418
Symbol 414 GraphicUsed by:418
Symbol 415 GraphicUsed by:418
Symbol 416 GraphicUsed by:418
Symbol 417 GraphicUsed by:418
Symbol 418 MovieClip {Toxic_mc} [Toxic_mc]Uses:403 404 405 406 407 408 409 410 411 412 413 414 415 416 417
Symbol 419 BitmapUsed by:420
Symbol 420 GraphicUses:419Used by:421
Symbol 421 MovieClip {GrassTexture4} [GrassTexture4]Uses:420
Symbol 422 VideoUsed by:423
Symbol 423 MovieClip {TutorialVideo2} [TutorialVideo2]Uses:422
Symbol 424 VideoUsed by:425
Symbol 425 MovieClip {TutorialVideo3} [TutorialVideo3]Uses:424
Symbol 426 VideoUsed by:427
Symbol 427 MovieClip {TutorialVideo4} [TutorialVideo4]Uses:426
Symbol 428 GraphicUsed by:518
Symbol 429 GraphicUsed by:436
Symbol 430 BitmapUsed by:431 688 735 804
Symbol 431 GraphicUses:430Used by:432
Symbol 432 MovieClipUses:431Used by:436
Symbol 433 GraphicUsed by:434
Symbol 434 MovieClipUses:433Used by:436
Symbol 435 GraphicUsed by:436
Symbol 436 MovieClipUses:429 432 434 435Used by:518
Symbol 437 GraphicUsed by:518
Symbol 438 GraphicUsed by:439
Symbol 439 MovieClipUses:438Used by:518
Symbol 440 GraphicUsed by:441
Symbol 441 MovieClipUses:440Used by:518
Symbol 442 GraphicUsed by:518
Symbol 443 GraphicUsed by:446 451 455 459 463 467
Symbol 444 FontUsed by:445 447 450 452 453 454 456 457 458 460 461 462 464 465 466 663 664 697 717
Symbol 445 TextUses:444Used by:451
Symbol 446 MovieClipUses:443Used by:451 455 459 463 467
Symbol 447 TextUses:444Used by:451
Symbol 448 GraphicUsed by:449
Symbol 449 MovieClipUses:448Used by:451 455 459 463 467
Symbol 450 TextUses:444Used by:451
Symbol 451 MovieClipUses:443 445 446 447 449 450Used by:518
Symbol 452 TextUses:444Used by:455
Symbol 453 TextUses:444Used by:455
Symbol 454 TextUses:444Used by:455
Symbol 455 MovieClip {MENUS_fla.button_tut2_110} [MENUS_fla.button_tut2_110]Uses:443 452 446 453 449 454Used by:518
Symbol 456 TextUses:444Used by:459
Symbol 457 TextUses:444Used by:459
Symbol 458 TextUses:444Used by:459
Symbol 459 MovieClip {MENUS_fla.button_tut3_111} [MENUS_fla.button_tut3_111]Uses:443 456 446 457 449 458Used by:518
Symbol 460 TextUses:444Used by:463
Symbol 461 TextUses:444Used by:463
Symbol 462 TextUses:444Used by:463
Symbol 463 MovieClip {MENUS_fla.button_tut4_112} [MENUS_fla.button_tut4_112]Uses:443 460 446 461 449 462Used by:518
Symbol 464 TextUses:444Used by:467
Symbol 465 TextUses:444Used by:467
Symbol 466 TextUses:444Used by:467
Symbol 467 MovieClip {MENUS_fla.button_tut5_113} [MENUS_fla.button_tut5_113]Uses:443 464 446 465 449 466Used by:518
Symbol 468 GraphicUsed by:492
Symbol 469 GraphicUsed by:492
Symbol 470 GraphicUsed by:492
Symbol 471 GraphicUsed by:492
Symbol 472 GraphicUsed by:473
Symbol 473 MovieClipUses:472Used by:492
Symbol 474 GraphicUsed by:492
Symbol 475 GraphicUsed by:492
Symbol 476 GraphicUsed by:492
Symbol 477 GraphicUsed by:478
Symbol 478 MovieClipUses:477Used by:492 1038 1562
Symbol 479 GraphicUsed by:480
Symbol 480 MovieClipUses:479Used by:492 1038 1562
Symbol 481 GraphicUsed by:492
Symbol 482 GraphicUsed by:492
Symbol 483 FontUsed by:484
Symbol 484 TextUses:483Used by:492
Symbol 485 GraphicUsed by:492
Symbol 486 GraphicUsed by:492
Symbol 487 GraphicUsed by:492
Symbol 488 GraphicUsed by:491
Symbol 489 GraphicUsed by:490
Symbol 490 MovieClipUses:489Used by:491
Symbol 491 MovieClipUses:488 490Used by:492 1043
Symbol 492 MovieClipUses:468 469 470 471 473 474 475 476 478 480 481 482 484 485 486 487 491Used by:518
Symbol 493 GraphicUsed by:502
Symbol 494 GraphicUsed by:495
Symbol 495 MovieClipUses:494Used by:502
Symbol 496 GraphicUsed by:497
Symbol 497 MovieClipUses:496Used by:502
Symbol 498 GraphicUsed by:499
Symbol 499 MovieClipUses:498Used by:502
Symbol 500 GraphicUsed by:501
Symbol 501 MovieClipUses:500Used by:502
Symbol 502 MovieClip {MENUS_fla.achter_tv_120} [MENUS_fla.achter_tv_120]Uses:493 495 497 499 501Used by:518
Symbol 503 GraphicUsed by:504
Symbol 504 MovieClipUses:503Used by:506
Symbol 505 GraphicUsed by:506
Symbol 506 MovieClipUses:504 505Used by:518
Symbol 507 GraphicUsed by:514 517 566 723
Symbol 508 GraphicUsed by:509
Symbol 509 MovieClipUses:508Used by:513 514 517 565 566 568 723
Symbol 510 GraphicUsed by:511
Symbol 511 MovieClipUses:510Used by:513 514 517 565 566 568 723
Symbol 512 GraphicUsed by:513
Symbol 513 MovieClipUses:512 509 511Used by:514 517 565 566 568 723
Symbol 514 MovieClip {MENUS_fla.back_127} [MENUS_fla.back_127]Uses:507 509 511 106 513Used by:518 785 818 879
Symbol 515 GraphicUsed by:516
Symbol 516 MovieClipUses:515Used by:518
Symbol 517 MovieClip {MENUS_fla.skip_129} [MENUS_fla.skip_129]Uses:507 509 511 106 513Used by:518
Symbol 518 MovieClip {Tutorial_mc} [Tutorial_mc]Uses:428 436 437 439 441 442 451 455 459 463 467 492 502 506 106 514 516 517 101
Symbol 519 VideoUsed by:520
Symbol 520 MovieClip {TutorialVideo5} [TutorialVideo5]Uses:519
Symbol 521 VideoUsed by:522
Symbol 522 MovieClip {TutorialVideo1} [TutorialVideo1]Uses:521
Symbol 523 GraphicUsed by:586
Symbol 524 GraphicUsed by:525
Symbol 525 MovieClipUses:524Used by:586
Symbol 526 GraphicUsed by:527
Symbol 527 MovieClipUses:526Used by:586
Symbol 528 GraphicUsed by:529
Symbol 529 MovieClipUses:528Used by:586
Symbol 530 GraphicUsed by:531
Symbol 531 MovieClipUses:530Used by:586
Symbol 532 GraphicUsed by:586
Symbol 533 GraphicUsed by:534
Symbol 534 MovieClipUses:533Used by:536
Symbol 535 GraphicUsed by:536
Symbol 536 MovieClip {MENUS_fla.bord_animatie_6} [MENUS_fla.bord_animatie_6]Uses:534 535Used by:586
Symbol 537 GraphicUsed by:550
Symbol 538 GraphicUsed by:539
Symbol 539 MovieClipUses:538Used by:550
Symbol 540 GraphicUsed by:550
Symbol 541 GraphicUsed by:542
Symbol 542 MovieClipUses:541Used by:550
Symbol 543 GraphicUsed by:544
Symbol 544 MovieClipUses:543Used by:550
Symbol 545 GraphicUsed by:546
Symbol 546 MovieClipUses:545Used by:550
Symbol 547 GraphicUsed by:550
Symbol 548 GraphicUsed by:549
Symbol 549 MovieClipUses:548Used by:550
Symbol 550 MovieClip {MENUS_fla.hand_8} [MENUS_fla.hand_8]Uses:537 539 540 542 544 546 547 549Used by:586
Symbol 551 FontUsed by:552 554
Symbol 552 TextUses:551Used by:555
Symbol 553 GraphicUsed by:555
Symbol 554 TextUses:551Used by:555
Symbol 555 Button {spill.localisation.SpilGamesLink} [spill.localisation.SpilGamesLink]Uses:552 553 554Used by:586
Symbol 556 GraphicUsed by:586
Symbol 557 GraphicUsed by:586
Symbol 558 GraphicUsed by:586
Symbol 559 GraphicUsed by:560
Symbol 560 MovieClipUses:559Used by:586
Symbol 561 GraphicUsed by:586
Symbol 562 GraphicUsed by:586
Symbol 563 GraphicUsed by:586
Symbol 564 GraphicUsed by:565
Symbol 565 MovieClip {MENUS_fla.highscores_20} [MENUS_fla.highscores_20]Uses:564 509 511 106 513Used by:586
Symbol 566 MovieClip {MENUS_fla.howtoplay_27} [MENUS_fla.howtoplay_27]Uses:507 509 511 106 513Used by:586
Symbol 567 GraphicUsed by:568
Symbol 568 MovieClip {MENUS_fla.startgame_28} [MENUS_fla.startgame_28]Uses:567 509 511 106 513Used by:586
Symbol 569 GraphicUsed by:570
Symbol 570 MovieClip {MENUS_fla.wood_button_30} [MENUS_fla.wood_button_30]Uses:569 106 101Used by:571 729
Symbol 571 MovieClip {MENUS_fla.moregamesbnt_29} [MENUS_fla.moregamesbnt_29]Uses:570Used by:586 785 818 879
Symbol 572 GraphicUsed by:579 581
Symbol 573 MovieClip {MENUS_fla.qualitybtn_69} [MENUS_fla.qualitybtn_69]Uses:106Used by:579
Symbol 574 GraphicUsed by:578
Symbol 575 GraphicUsed by:578
Symbol 576 GraphicUsed by:578
Symbol 577 GraphicUsed by:578
Symbol 578 ButtonUses:574 575 576 577Used by:579 581
Symbol 579 MovieClip {MENUS_fla.qualityschuifje_68} [MENUS_fla.qualityschuifje_68]Uses:572 573 578Used by:586 998
Symbol 580 MovieClip {spill.localisation.LanguageSelectBox} [spill.localisation.LanguageSelectBox]Uses:105Used by:586
Symbol 581 MovieClip {MENUS_fla.backgroundvolume_72} [MENUS_fla.backgroundvolume_72]Uses:572 578Used by:586 998
Symbol 582 GraphicUsed by:583
Symbol 583 MovieClipUses:582Used by:586 998
Symbol 584 GraphicUsed by:585
Symbol 585 MovieClipUses:584Used by:586 998
Symbol 586 MovieClip {MainMenu_mc} [MainMenu_mc]Uses:523 525 527 529 531 532 536 550 555 556 3 557 6 558 560 561 12 562 15 563 565 566 568 571 579 580 581 583 585
Symbol 587 GraphicUsed by:597 998
Symbol 588 GraphicUsed by:589
Symbol 589 MovieClipUses:588Used by:597 998
Symbol 590 GraphicUsed by:597 998
Symbol 591 GraphicUsed by:594 595 596 684 696 699 995 996 997
Symbol 592 GraphicUsed by:594 595 596 684 696 699 995 996 997
Symbol 593 GraphicUsed by:594 595 596 684 696 699 995 996 997
Symbol 594 MovieClip {MENUS_fla.godmodebtn_94} [MENUS_fla.godmodebtn_94]Uses:591 106 592 593Used by:597
Symbol 595 MovieClip {MENUS_fla.campaignmodebtn_95} [MENUS_fla.campaignmodebtn_95]Uses:591 106 592 593Used by:597
Symbol 596 MovieClip {MENUS_fla.cancelbtn_96} [MENUS_fla.cancelbtn_96]Uses:591 106 592 593Used by:597
Symbol 597 MovieClip {LevelModeMenu} [LevelModeMenu]Uses:587 589 590 594 595 106 596
Symbol 598 GraphicUsed by:599
Symbol 599 MovieClip {kopimi} [kopimi]Uses:598
Symbol 600 GraphicUsed by:729
Symbol 601 GraphicUsed by:683
Symbol 602 GraphicUsed by:603
Symbol 603 MovieClipUses:602Used by:683
Symbol 604 MovieClipUsed by:683
Symbol 605 GraphicUsed by:606
Symbol 606 MovieClipUses:605Used by:683
Symbol 607 GraphicUsed by:608
Symbol 608 MovieClipUses:607Used by:683
Symbol 609 GraphicUsed by:683
Symbol 610 GraphicUsed by:683
Symbol 611 GraphicUsed by:612
Symbol 612 MovieClipUses:611Used by:683
Symbol 613 GraphicUsed by:683
Symbol 614 GraphicUsed by:615 617 679
Symbol 615 MovieClipUses:614Used by:683
Symbol 616 GraphicUsed by:683
Symbol 617 MovieClipUses:614Used by:683
Symbol 618 GraphicUsed by:683
Symbol 619 GraphicUsed by:620
Symbol 620 MovieClipUses:619Used by:683
Symbol 621 GraphicUsed by:683
Symbol 622 GraphicUsed by:683
Symbol 623 GraphicUsed by:624
Symbol 624 MovieClipUses:623Used by:683
Symbol 625 GraphicUsed by:626
Symbol 626 MovieClipUses:625Used by:683
Symbol 627 GraphicUsed by:628
Symbol 628 MovieClipUses:627Used by:683
Symbol 629 GraphicUsed by:630
Symbol 630 MovieClipUses:629Used by:683
Symbol 631 GraphicUsed by:632
Symbol 632 MovieClipUses:631Used by:683
Symbol 633 GraphicUsed by:634
Symbol 634 MovieClipUses:633Used by:683
Symbol 635 GraphicUsed by:636
Symbol 636 MovieClipUses:635Used by:683
Symbol 637 GraphicUsed by:683
Symbol 638 GraphicUsed by:639
Symbol 639 MovieClipUses:638Used by:683
Symbol 640 GraphicUsed by:683
Symbol 641 GraphicUsed by:642
Symbol 642 MovieClipUses:641Used by:683
Symbol 643 GraphicUsed by:683
Symbol 644 GraphicUsed by:645
Symbol 645 MovieClipUses:644Used by:683
Symbol 646 GraphicUsed by:683
Symbol 647 GraphicUsed by:648
Symbol 648 MovieClipUses:647Used by:683
Symbol 649 GraphicUsed by:683
Symbol 650 GraphicUsed by:651
Symbol 651 MovieClipUses:650Used by:683
Symbol 652 GraphicUsed by:683
Symbol 653 GraphicUsed by:654
Symbol 654 MovieClipUses:653Used by:683
Symbol 655 GraphicUsed by:683
Symbol 656 GraphicUsed by:657
Symbol 657 MovieClipUses:656Used by:683
Symbol 658 GraphicUsed by:683
Symbol 659 GraphicUsed by:660
Symbol 660 MovieClipUses:659Used by:681
Symbol 661 GraphicUsed by:681
Symbol 662 TextUsed by:681
Symbol 663 TextUses:444Used by:681
Symbol 664 TextUses:444Used by:681
Symbol 665 GraphicUsed by:681
Symbol 666 GraphicUsed by:667
Symbol 667 MovieClipUses:666Used by:681
Symbol 668 GraphicUsed by:669
Symbol 669 MovieClipUses:668Used by:681
Symbol 670 GraphicUsed by:671
Symbol 671 MovieClipUses:670Used by:681
Symbol 672 GraphicUsed by:673
Symbol 673 MovieClipUses:672Used by:681
Symbol 674 GraphicUsed by:675
Symbol 675 MovieClipUses:674Used by:681
Symbol 676 GraphicUsed by:677
Symbol 677 MovieClipUses:676Used by:681
Symbol 678 GraphicUsed by:681
Symbol 679 MovieClipUses:614Used by:681
Symbol 680 GraphicUsed by:681
Symbol 681 MovieClipUses:660 661 662 663 664 665 667 669 671 673 675 677 678 679 680Used by:683
Symbol 682 GraphicUsed by:683
Symbol 683 MovieClipUses:601 603 604 606 608 609 339 610 612 613 615 616 617 618 620 621 622 624 626 628 630 632 634 636 637 639 640 642 643 645 646 648 649 651 652 654 655 657 658 681 682Used by:729
Symbol 684 MovieClip {MENUS_fla.mainmenubutton_239} [MENUS_fla.mainmenubutton_239]Uses:591 106 592 593Used by:729
Symbol 685 GraphicUsed by:692
Symbol 686 GraphicUsed by:687
Symbol 687 MovieClipUses:686Used by:692
Symbol 688 GraphicUses:430Used by:689
Symbol 689 MovieClipUses:688Used by:692
Symbol 690 GraphicUsed by:691
Symbol 691 MovieClipUses:690Used by:692
Symbol 692 MovieClipUses:685 687 689 691Used by:729 785 818 879
Symbol 693 GraphicUsed by:694
Symbol 694 MovieClipUses:693Used by:729
Symbol 695 MovieClip {MENUS_fla.tekst_bord_241} [MENUS_fla.tekst_bord_241]Uses:106Used by:729
Symbol 696 MovieClip {MENUS_fla.retrybtn_242} [MENUS_fla.retrybtn_242]Uses:591 106 592 593Used by:729
Symbol 697 EditableTextUses:110 111 444 992Used by:729
Symbol 698 GraphicUsed by:729
Symbol 699 MovieClip {MENUS_fla.submitbtn_243} [MENUS_fla.submitbtn_243]Uses:591 106 592 593Used by:729
Symbol 700 GraphicUsed by:701 706
Symbol 701 MovieClipUses:700Used by:712 759
Symbol 702 GraphicUsed by:712 759
Symbol 703 GraphicUsed by:704 710
Symbol 704 MovieClipUses:703Used by:712 759
Symbol 705 GraphicUsed by:712 759
Symbol 706 MovieClipUses:700Used by:712 759
Symbol 707 GraphicUsed by:712 759
Symbol 708 GraphicUsed by:712 759
Symbol 709 GraphicUsed by:712 759
Symbol 710 MovieClipUses:703Used by:712 759
Symbol 711 GraphicUsed by:712 759
Symbol 712 MovieClip {MENUS_fla.medailles_244} [MENUS_fla.medailles_244]Uses:106 701 702 704 705 706 707 708 709 710 711Used by:729
Symbol 713 GraphicUsed by:716
Symbol 714 GraphicUsed by:716
Symbol 715 GraphicUsed by:716
Symbol 716 MovieClip {MENUS_fla.viewstatsbutton_245} [MENUS_fla.viewstatsbutton_245]Uses:713 106 714 715Used by:729
Symbol 717 EditableTextUses:110 111 444 992Used by:729
Symbol 718 GraphicUsed by:729
Symbol 719 GraphicUsed by:720
Symbol 720 MovieClipUses:719Used by:729 785 818 879
Symbol 721 GraphicUsed by:722
Symbol 722 MovieClipUses:721Used by:729 785 818 879
Symbol 723 MovieClip {MENUS_fla.mainmenu_246} [MENUS_fla.mainmenu_246]Uses:507 509 511 106 513Used by:729
Symbol 724 GraphicUsed by:727
Symbol 725 GraphicUsed by:726
Symbol 726 MovieClipUses:725Used by:727
Symbol 727 MovieClip {MENUS_fla.statistics_248} [MENUS_fla.statistics_248]Uses:724 726 106Used by:728
Symbol 728 MovieClip {MENUS_fla.stastistieken_247} [MENUS_fla.stastistieken_247]Uses:727Used by:729
Symbol 729 MovieClip {GameOver_mc} [GameOver_mc]Uses:600 683 684 692 694 695 696 570 697 698 106 699 712 716 717 718 720 722 723 728
Symbol 730 GraphicUsed by:785
Symbol 731 GraphicUsed by:732
Symbol 732 MovieClipUses:731Used by:785
Symbol 733 GraphicUsed by:734
Symbol 734 MovieClipUses:733Used by:785 818
Symbol 735 GraphicUses:430Used by:785
Symbol 736 GraphicUsed by:737 738
Symbol 737 MovieClipUses:736Used by:785
Symbol 738 MovieClipUses:736Used by:785
Symbol 739 GraphicUsed by:740
Symbol 740 MovieClipUses:739Used by:785
Symbol 741 GraphicUsed by:742
Symbol 742 MovieClipUses:741Used by:785
Symbol 743 GraphicUsed by:744
Symbol 744 MovieClipUses:743Used by:785
Symbol 745 GraphicUsed by:746 747
Symbol 746 MovieClipUses:745Used by:785
Symbol 747 MovieClipUses:745Used by:785
Symbol 748 GraphicUsed by:749
Symbol 749 MovieClipUses:748Used by:785
Symbol 750 GraphicUsed by:751
Symbol 751 MovieClipUses:750Used by:785
Symbol 752 GraphicUsed by:753
Symbol 753 MovieClipUses:752Used by:785
Symbol 754 GraphicUsed by:785
Symbol 755 GraphicUsed by:759
Symbol 756 GraphicUsed by:757
Symbol 757 MovieClipUses:756Used by:759
Symbol 758 GraphicUsed by:759
Symbol 759 MovieClipUses:755 757 758 701 702 704 705 706 707 708 709 710 711Used by:785 818
Symbol 760 GraphicUsed by:768 772 777 781 784
Symbol 761 GraphicUsed by:768
Symbol 762 GraphicUsed by:768 772 777 781 784
Symbol 763 GraphicUsed by:768
Symbol 764 GraphicUsed by:768 772 777 781 784
Symbol 765 GraphicUsed by:768
Symbol 766 GraphicUsed by:767
Symbol 767 MovieClipUses:766Used by:768 772 777 781 784
Symbol 768 MovieClip {MENUS_fla.Slamming1_btn_159} [MENUS_fla.Slamming1_btn_159]Uses:760 761 762 763 764 765 767Used by:785 818
Symbol 769 GraphicUsed by:772
Symbol 770 GraphicUsed by:772
Symbol 771 GraphicUsed by:772
Symbol 772 MovieClip {MENUS_fla.Slamming2_btn_161} [MENUS_fla.Slamming2_btn_161]Uses:760 769 762 770 764 771 767Used by:785 818
Symbol 773 GraphicUsed by:777
Symbol 774 GraphicUsed by:777
Symbol 775 GraphicUsed by:777
Symbol 776 GraphicUsed by:777
Symbol 777 MovieClip {MENUS_fla.Slamming3_btn_162} [MENUS_fla.Slamming3_btn_162]Uses:760 773 762 774 764 775 776 767Used by:785 818
Symbol 778 GraphicUsed by:781
Symbol 779 GraphicUsed by:781
Symbol 780 GraphicUsed by:781
Symbol 781 MovieClip {MENUS_fla.Slamming4_btn_163} [MENUS_fla.Slamming4_btn_163]Uses:760 778 762 779 764 780 767Used by:785 818
Symbol 782 GraphicUsed by:784
Symbol 783 GraphicUsed by:784
Symbol 784 MovieClip {MENUS_fla.Slamming5_btn_164} [MENUS_fla.Slamming5_btn_164]Uses:760 782 762 764 783 767Used by:785 818
Symbol 785 MovieClip {LevelSelectionCampaign_mc} [LevelSelectionCampaign_mc]Uses:730 732 734 735 737 738 740 742 744 746 747 749 751 753 754 106 692 759 768 772 777 781 784 720 722 514 571
Symbol 786 Sound {sfx.levelselect_press} [sfx.levelselect_press]
Symbol 787 GraphicUsed by:818
Symbol 788 GraphicUsed by:789
Symbol 789 MovieClipUses:788Used by:818
Symbol 790 GraphicUsed by:818
Symbol 791 GraphicUsed by:818
Symbol 792 GraphicUsed by:793
Symbol 793 MovieClipUses:792Used by:818
Symbol 794 GraphicUsed by:818
Symbol 795 GraphicUsed by:796
Symbol 796 MovieClipUses:795Used by:818
Symbol 797 GraphicUsed by:818
Symbol 798 GraphicUsed by:799
Symbol 799 MovieClipUses:798Used by:818
Symbol 800 GraphicUsed by:801
Symbol 801 MovieClipUses:800Used by:818
Symbol 802 GraphicUsed by:803
Symbol 803 MovieClipUses:802Used by:818
Symbol 804 GraphicUses:430Used by:818
Symbol 805 GraphicUsed by:806 807 808
Symbol 806 MovieClipUses:805Used by:818
Symbol 807 MovieClipUses:805Used by:818
Symbol 808 MovieClipUses:805Used by:818
Symbol 809 GraphicUsed by:810
Symbol 810 MovieClipUses:809Used by:818
Symbol 811 GraphicUsed by:812 813 814
Symbol 812 MovieClipUses:811Used by:818
Symbol 813 MovieClipUses:811Used by:818
Symbol 814 MovieClipUses:811Used by:818
Symbol 815 GraphicUsed by:816
Symbol 816 MovieClipUses:815Used by:818
Symbol 817 GraphicUsed by:818
Symbol 818 MovieClip {LevelSelectionGodMode_mc} [LevelSelectionGodMode_mc]Uses:787 789 790 734 791 793 794 796 797 799 801 803 804 806 807 808 810 812 813 814 816 817 514 692 106 759 768 772 777 781 784 720 722 571
Symbol 819 Sound {sfx.levelselect_touch} [sfx.levelselect_touch]
Symbol 820 GraphicUsed by:821
Symbol 821 MovieClip {Bridgepart5} [Bridgepart5]Uses:820
Symbol 822 GraphicUsed by:853
Symbol 823 GraphicUsed by:824
Symbol 824 MovieClipUses:823Used by:853
Symbol 825 GraphicUsed by:853
Symbol 826 GraphicUsed by:827
Symbol 827 MovieClipUses:826Used by:853
Symbol 828 GraphicUsed by:853
Symbol 829 GraphicUsed by:830
Symbol 830 MovieClipUses:829Used by:853
Symbol 831 GraphicUsed by:853
Symbol 832 GraphicUsed by:833
Symbol 833 MovieClipUses:832Used by:853
Symbol 834 GraphicUsed by:853
Symbol 835 GraphicUsed by:836
Symbol 836 MovieClipUses:835Used by:853
Symbol 837 GraphicUsed by:853
Symbol 838 MovieClipUses:387Used by:853
Symbol 839 GraphicUsed by:853
Symbol 840 GraphicUsed by:841
Symbol 841 MovieClipUses:840Used by:853
Symbol 842 GraphicUsed by:843
Symbol 843 MovieClipUses:842Used by:853
Symbol 844 GraphicUsed by:845
Symbol 845 MovieClipUses:844Used by:853
Symbol 846 GraphicUsed by:847
Symbol 847 MovieClipUses:846Used by:853
Symbol 848 GraphicUsed by:849
Symbol 849 MovieClipUses:848Used by:853
Symbol 850 GraphicUsed by:851
Symbol 851 MovieClipUses:850Used by:853
Symbol 852 GraphicUsed by:853
Symbol 853 MovieClip {Foreground5} [Foreground5]Uses:822 824 825 827 828 830 831 833 834 836 837 838 839 841 843 845 847 849 851 852
Symbol 854 BitmapUsed by:855
Symbol 855 GraphicUses:854Used by:856
Symbol 856 MovieClip {GroundTexture5} [GroundTexture5]Uses:855
Symbol 857 GraphicUsed by:862
Symbol 858 GraphicUsed by:859
Symbol 859 MovieClipUses:858Used by:862
Symbol 860 GraphicUsed by:861
Symbol 861 MovieClipUses:860Used by:862
Symbol 862 MovieClipUses:857 859 861Used by:863
Symbol 863 MovieClip {Background5} [Background5]Uses:862
Symbol 864 BitmapUsed by:865
Symbol 865 GraphicUses:864Used by:866
Symbol 866 MovieClip {GrassTexture5} [GrassTexture5]Uses:865
Symbol 867 GraphicUsed by:879
Symbol 868 GraphicUsed by:869
Symbol 869 MovieClipUses:868Used by:879
Symbol 870 GraphicUsed by:871 872
Symbol 871 MovieClipUses:870Used by:879
Symbol 872 MovieClipUses:870Used by:879
Symbol 873 GraphicUsed by:874
Symbol 874 MovieClipUses:873Used by:879
Symbol 875 GraphicUsed by:876 877
Symbol 876 MovieClipUses:875Used by:879
Symbol 877 MovieClipUses:875Used by:879
Symbol 878 GraphicUsed by:879
Symbol 879 MovieClip {Highscore_mc} [Highscore_mc]Uses:867 869 871 872 874 876 877 878 692 720 722 106 514 571
Symbol 880 BitmapUsed by:881
Symbol 881 GraphicUses:880Used by:882
Symbol 882 MovieClip {GroundTexture3} [GroundTexture3]Uses:881
Symbol 883 GraphicUsed by:884
Symbol 884 MovieClip {Bridgepart_ice} [Bridgepart_ice]Uses:883
Symbol 885 GraphicUsed by:894
Symbol 886 GraphicUsed by:887
Symbol 887 MovieClipUses:886Used by:894
Symbol 888 GraphicUsed by:894
Symbol 889 GraphicUsed by:890
Symbol 890 MovieClipUses:889Used by:894
Symbol 891 GraphicUsed by:892
Symbol 892 MovieClipUses:891Used by:894
Symbol 893 GraphicUsed by:894
Symbol 894 MovieClip {Foreground3} [Foreground3]Uses:885 887 888 890 892 893
Symbol 895 GraphicUsed by:896
Symbol 896 MovieClip {IceTexture} [IceTexture]Uses:895
Symbol 897 GraphicUsed by:903
Symbol 898 GraphicUsed by:899 900 901 902
Symbol 899 MovieClipUses:898Used by:903
Symbol 900 MovieClipUses:898Used by:903
Symbol 901 MovieClipUses:898Used by:903
Symbol 902 MovieClipUses:898Used by:903
Symbol 903 MovieClipUses:897 899 900 901 902Used by:907
Symbol 904 GraphicUsed by:905
Symbol 905 MovieClipUses:904Used by:906
Symbol 906 MovieClipUses:905Used by:907
Symbol 907 MovieClip {Background3} [Background3]Uses:903 906
Symbol 908 Sound {sfx.menu_otherpress} [sfx.menu_otherpress]
Symbol 909 Sound {sfx.menu_touch} [sfx.menu_touch]
Symbol 910 GraphicUsed by:913
Symbol 911 GraphicUsed by:913
Symbol 912 GraphicUsed by:913
Symbol 913 MovieClip {Grab_cursor} [Grab_cursor]Uses:910 911 912
Symbol 914 Sound {sfx.combo} [sfx.combo]
Symbol 915 GraphicUsed by:988
Symbol 916 GraphicUsed by:988
Symbol 917 GraphicUsed by:988
Symbol 918 GraphicUsed by:988
Symbol 919 GraphicUsed by:988
Symbol 920 GraphicUsed by:988
Symbol 921 GraphicUsed by:988
Symbol 922 GraphicUsed by:988
Symbol 923 GraphicUsed by:988
Symbol 924 GraphicUsed by:988
Symbol 925 GraphicUsed by:988
Symbol 926 GraphicUsed by:988
Symbol 927 GraphicUsed by:988
Symbol 928 GraphicUsed by:988
Symbol 929 GraphicUsed by:988
Symbol 930 GraphicUsed by:988
Symbol 931 GraphicUsed by:988
Symbol 932 GraphicUsed by:988
Symbol 933 GraphicUsed by:988
Symbol 934 GraphicUsed by:988
Symbol 935 GraphicUsed by:988
Symbol 936 GraphicUsed by:988
Symbol 937 GraphicUsed by:988
Symbol 938 GraphicUsed by:988
Symbol 939 GraphicUsed by:988
Symbol 940 GraphicUsed by:988
Symbol 941 GraphicUsed by:988
Symbol 942 GraphicUsed by:988
Symbol 943 GraphicUsed by:988
Symbol 944 GraphicUsed by:988
Symbol 945 GraphicUsed by:988
Symbol 946 GraphicUsed by:988
Symbol 947 GraphicUsed by:988
Symbol 948 GraphicUsed by:988
Symbol 949 GraphicUsed by:988
Symbol 950 GraphicUsed by:988
Symbol 951 GraphicUsed by:988
Symbol 952 GraphicUsed by:988
Symbol 953 GraphicUsed by:988
Symbol 954 GraphicUsed by:988
Symbol 955 GraphicUsed by:988
Symbol 956 GraphicUsed by:988
Symbol 957 GraphicUsed by:988
Symbol 958 GraphicUsed by:988
Symbol 959 GraphicUsed by:988
Symbol 960 GraphicUsed by:988
Symbol 961 GraphicUsed by:988
Symbol 962 GraphicUsed by:988
Symbol 963 GraphicUsed by:988
Symbol 964 GraphicUsed by:988
Symbol 965 GraphicUsed by:988
Symbol 966 GraphicUsed by:988
Symbol 967 GraphicUsed by:988
Symbol 968 GraphicUsed by:988
Symbol 969 GraphicUsed by:988
Symbol 970 GraphicUsed by:988
Symbol 971 GraphicUsed by:988
Symbol 972 GraphicUsed by:988
Symbol 973 GraphicUsed by:988
Symbol 974 GraphicUsed by:988
Symbol 975 GraphicUsed by:988
Symbol 976 GraphicUsed by:988
Symbol 977 GraphicUsed by:988
Symbol 978 GraphicUsed by:988
Symbol 979 GraphicUsed by:988
Symbol 980 GraphicUsed by:988
Symbol 981 GraphicUsed by:988
Symbol 982 GraphicUsed by:988
Symbol 983 GraphicUsed by:988
Symbol 984 GraphicUsed by:988
Symbol 985 GraphicUsed by:988
Symbol 986 GraphicUsed by:988
Symbol 987 GraphicUsed by:988
Symbol 988 MovieClipUses:915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987Used by:994
Symbol 989 EditableTextUses:322 1054 1613Used by:990
Symbol 990 MovieClip {ui_stuff_fla.tween_22} [ui_stuff_fla.tween_22]Uses:989Used by:991
Symbol 991 MovieClip {ui_stuff_fla.comboTextClip_21} [ui_stuff_fla.comboTextClip_21]Uses:990Used by:994
Symbol 992 FontUsed by:697 717 993 1399
Symbol 993 EditableTextUses:992Used by:994
Symbol 994 MovieClip {ComboCounter_mc} [ComboCounter_mc]Uses:988 991 993
Symbol 995 MovieClip {MENUS_fla.mainmenu_button_98} [MENUS_fla.mainmenu_button_98]Uses:591 106 592 593Used by:998
Symbol 996 MovieClip {MENUS_fla.returntogamebutton_99} [MENUS_fla.returntogamebutton_99]Uses:591 106 592 593Used by:998
Symbol 997 MovieClip {MENUS_fla.howtoplaybtn_100} [MENUS_fla.howtoplaybtn_100]Uses:591 106 592 593Used by:998
Symbol 998 MovieClip {Paused_mc} [Paused_mc]Uses:587 589 590 106 995 996 579 581 583 585 997
Symbol 999 BitmapUsed by:1000
Symbol 1000 GraphicUses:999Used by:1001
Symbol 1001 MovieClip {Texture1} [Texture1]Uses:1000
Symbol 1002 BitmapUsed by:1003
Symbol 1003 GraphicUses:1002Used by:1004
Symbol 1004 MovieClip {Grass} [Grass]Uses:1003
Symbol 1005 Sound {sfx.villagerdie2} [sfx.villagerdie2]
Symbol 1006 Sound {sfx.villagerdie3} [sfx.villagerdie3]
Symbol 1007 Sound {sfx.villagerdie} [sfx.villagerdie]
Symbol 1008 GraphicUsed by:1009
Symbol 1009 MovieClipUses:1008Used by:1021 1026 1029 1034 1038 1043
Symbol 1010 GraphicUsed by:1021
Symbol 1011 GraphicUsed by:1012
Symbol 1012 MovieClipUses:1011Used by:1021
Symbol 1013 GraphicUsed by:1021
Symbol 1014 GraphicUsed by:1015 1021
Symbol 1015 MovieClipUses:1014Used by:1021 1026 1029 1034 1038 1043
Symbol 1016 GraphicUsed by:1021
Symbol 1017 GraphicUsed by:1021
Symbol 1018 GraphicUsed by:1021
Symbol 1019 GraphicUsed by:1021
Symbol 1020 GraphicUsed by:1021
Symbol 1021 MovieClip {Drawing_tool} [Drawing_tool]Uses:1009 1010 1012 1013 1015 1016 1014 1017 1018 1019 1020
Symbol 1022 GraphicUsed by:1026
Symbol 1023 GraphicUsed by:1024
Symbol 1024 MovieClipUses:1023Used by:1026
Symbol 1025 GraphicUsed by:1026
Symbol 1026 MovieClip {Fist_tool} [Fist_tool]Uses:1009 1022 1024 1015 1025
Symbol 1027 GraphicUsed by:1029
Symbol 1028 GraphicUsed by:1029
Symbol 1029 MovieClip {Grab_tool} [Grab_tool]Uses:1009 1027 1015 1028
Symbol 1030 GraphicUsed by:1034
Symbol 1031 GraphicUsed by:1034
Symbol 1032 GraphicUsed by:1034
Symbol 1033 GraphicUsed by:1034
Symbol 1034 MovieClip {Scissor_tool} [Scissor_tool]Uses:1009 1030 1015 1031 1032 1033
Symbol 1035 GraphicUsed by:1038 1562
Symbol 1036 GraphicUsed by:1038
Symbol 1037 GraphicUsed by:1038
Symbol 1038 MovieClip {Bomb_tool} [Bomb_tool]Uses:1009 1035 478 480 1036 1015 1037
Symbol 1039 GraphicUsed by:1042
Symbol 1040 GraphicUsed by:1041
Symbol 1041 MovieClipUses:1040Used by:1042
Symbol 1042 MovieClipUses:1039 1041Used by:1043
Symbol 1043 MovieClip {Spoon_tool} [Spoon_tool]Uses:1009 491 1015 1042
Symbol 1044 GraphicUsed by:1056
Symbol 1045 GraphicUsed by:1056
Symbol 1046 GraphicUsed by:1047
Symbol 1047 MovieClipUses:1046Used by:1056
Symbol 1048 FontUsed by:1049 1468 1469
Symbol 1049 EditableTextUses:1048Used by:1056
Symbol 1050 GraphicUsed by:1056
Symbol 1051 GraphicUsed by:1052
Symbol 1052 MovieClipUses:1051Used by:1056
Symbol 1053 GraphicUsed by:1056
Symbol 1054 FontUsed by:323 989 1055
Symbol 1055 EditableTextUses:1054Used by:1056
Symbol 1056 MovieClip {Progress_bar} [Progress_bar]Uses:1044 1045 1047 1049 1050 1052 1053 1055
Symbol 1057 GraphicUsed by:1058
Symbol 1058 MovieClip {Scrollbar_mc} [Scrollbar_mc]Uses:1057
Symbol 1059 GraphicUsed by:1062
Symbol 1060 GraphicUsed by:1062
Symbol 1061 GraphicUsed by:1062
Symbol 1062 MovieClip {LemmingBlip_mc} [LemmingBlip_mc]Uses:1059 1060 1061
Symbol 1063 GraphicUsed by:1064
Symbol 1064 MovieClip {Lemming1_cut1} [Lemming1_cut1]Uses:1063
Symbol 1065 GraphicUsed by:1066
Symbol 1066 MovieClipUses:1065Used by:1067
Symbol 1067 MovieClip {Soul} [Soul]Uses:1066
Symbol 1068 GraphicUsed by:1069 1098 1099
Symbol 1069 MovieClip {Foot} [Foot]Uses:1068
Symbol 1070 GraphicUsed by:1085
Symbol 1071 GraphicUsed by:1085
Symbol 1072 GraphicUsed by:1085
Symbol 1073 GraphicUsed by:1085
Symbol 1074 GraphicUsed by:1085
Symbol 1075 GraphicUsed by:1085
Symbol 1076 GraphicUsed by:1085
Symbol 1077 GraphicUsed by:1085
Symbol 1078 GraphicUsed by:1085
Symbol 1079 GraphicUsed by:1085
Symbol 1080 GraphicUsed by:1085
Symbol 1081 GraphicUsed by:1085
Symbol 1082 GraphicUsed by:1085
Symbol 1083 GraphicUsed by:1085
Symbol 1084 GraphicUsed by:1085
Symbol 1085 MovieClip {Healthbar_mc} [Healthbar_mc]Uses:1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084
Symbol 1086 GraphicUsed by:1087 1104 1119
Symbol 1087 MovieClip {Arm_mc} [Arm_mc]Uses:1086
Symbol 1088 GraphicUsed by:1089
Symbol 1089 MovieClip {Lemming1_cut2} [Lemming1_cut2]Uses:1088
Symbol 1090 GraphicUsed by:1093 1094
Symbol 1091 GraphicUsed by:1092
Symbol 1092 MovieClipUses:1091Used by:1093 1094
Symbol 1093 MovieClipUses:1090 1092Used by:1120
Symbol 1094 MovieClipUses:1090 1092Used by:1120
Symbol 1095 GraphicUsed by:1096
Symbol 1096 MovieClipUses:1095Used by:1097
Symbol 1097 MovieClip {Slamming1_fla.lemming_dood2_4} [Slamming1_fla.lemming_dood2_4]Uses:1096Used by:1120
Symbol 1098 MovieClipUses:1068Used by:1120 1264 1293 1396 1463
Symbol 1099 MovieClipUses:1068Used by:1105 1252 1282 1379 1450
Symbol 1100 GraphicUsed by:1101 1109 1112
Symbol 1101 MovieClipUses:1100Used by:1105
Symbol 1102 GraphicUsed by:1103
Symbol 1103 MovieClipUses:1102Used by:1105 1120
Symbol 1104 MovieClipUses:1086Used by:1105
Symbol 1105 MovieClip {Lemming1_drowning} [Lemming1_drowning]Uses:1099 1101 1103 1104Used by:1120
Symbol 1106 GraphicUsed by:1108
Symbol 1107 GraphicUsed by:1108
Symbol 1108 MovieClipUses:1106 1107Used by:1120
Symbol 1109 MovieClipUses:1100Used by:1111
Symbol 1110 GraphicUsed by:1111
Symbol 1111 MovieClip {lemming1_valt} [lemming1_valt]Uses:1109 1110Used by:1120
Symbol 1112 MovieClip {Nose} [Nose]Uses:1100Used by:1120
Symbol 1113 GraphicUsed by:1114
Symbol 1114 MovieClipUses:1113Used by:1118
Symbol 1115 GraphicUsed by:1117
Symbol 1116 GraphicUsed by:1117
Symbol 1117 MovieClipUses:1115 1116Used by:1118 1262 1291 1382 1394 1453 1461
Symbol 1118 MovieClip {Slamming1_fla.lijf_19} [Slamming1_fla.lijf_19]Uses:1114 1117Used by:1120
Symbol 1119 MovieClip {Arm} [Arm]Uses:1086Used by:1120
Symbol 1120 MovieClip {Lemming1} [Lemming1]Uses:1093 1094 1097 1098 1105 1108 1103 1111 1112 1118 1119
Symbol 1121 GraphicUsed by:1122
Symbol 1122 MovieClipUses:1121Used by:1123
Symbol 1123 MovieClip {ArrowDisplay_mc} [ArrowDisplay_mc]Uses:1122
Symbol 1124 GraphicUsed by:1125
Symbol 1125 MovieClipUses:1124Used by:1126 1140 1170
Symbol 1126 MovieClip {Boss1_arm} [Boss1_arm]Uses:1125
Symbol 1127 GraphicUsed by:1128
Symbol 1128 MovieClip {Boss2_cut1} [Boss2_cut1]Uses:1127
Symbol 1129 GraphicUsed by:1130
Symbol 1130 MovieClip {Boss1_feet} [Boss1_feet]Uses:1129
Symbol 1131 GraphicUsed by:1134 1153 1167 1169
Symbol 1132 GraphicUsed by:1134
Symbol 1133 GraphicUsed by:1134 1141 1150 1153 1167 1169
Symbol 1134 MovieClip {Boss2_cut2} [Boss2_cut2]Uses:1131 1132 1133
Symbol 1135 GraphicUsed by:1136
Symbol 1136 MovieClipUses:1135Used by:1142
Symbol 1137 GraphicUsed by:1142
Symbol 1138 GraphicUsed by:1140
Symbol 1139 GraphicUsed by:1140
Symbol 1140 MovieClipUses:1138 1125 1139Used by:1142 1183 1304 1333 1411
Symbol 1141 MovieClipUses:1133Used by:1142
Symbol 1142 MovieClip {Eindbaas_2_fla.boss_dead_2} [Eindbaas_2_fla.boss_dead_2]Uses:1136 1137 1140 1141Used by:1172
Symbol 1143 GraphicUsed by:1145
Symbol 1144 GraphicUsed by:1145
Symbol 1145 MovieClipUses:1143 1144Used by:1150 1153 1167 1169
Symbol 1146 GraphicUsed by:1150
Symbol 1147 GraphicUsed by:1150
Symbol 1148 GraphicUsed by:1150
Symbol 1149 GraphicUsed by:1150 1153 1167 1169
Symbol 1150 MovieClipUses:1145 1146 1147 1148 1149 1133Used by:1172
Symbol 1151 GraphicUsed by:1153 1169
Symbol 1152 GraphicUsed by:1153
Symbol 1153 MovieClipUses:1145 1131 1151 1152 1149 1133Used by:1172
Symbol 1154 GraphicUsed by:1155
Symbol 1155 MovieClipUses:1154Used by:1156 1195 1316 1346 1423
Symbol 1156 MovieClip {Eindbaas_2_fla.grotevoeten_lopen_10} [Eindbaas_2_fla.grotevoeten_lopen_10]Uses:1155Used by:1172
Symbol 1157 GraphicUsed by:1158
Symbol 1158 MovieClipUses:1157Used by:1159
Symbol 1159 MovieClipUses:1158Used by:1172 1202 1323 1353 1430
Symbol 1160 GraphicUsed by:1167
Symbol 1161 GraphicUsed by:1167
Symbol 1162 GraphicUsed by:1165
Symbol 1163 GraphicUsed by:1165
Symbol 1164 GraphicUsed by:1165
Symbol 1165 MovieClipUses:1162 1163 1164Used by:1167 1199 1320 1350 1427
Symbol 1166 GraphicUsed by:1167
Symbol 1167 MovieClipUses:1145 1131 1160 1149 1161 1133 1165 1166Used by:1172
Symbol 1168 GraphicUsed by:1169
Symbol 1169 MovieClipUses:1145 1131 1151 1168 1133 1149Used by:1172
Symbol 1170 MovieClipUses:1125Used by:1171
Symbol 1171 MovieClipUses:1170Used by:1172 1202 1323 1353 1430
Symbol 1172 MovieClip {Boss_2} [Boss_2]Uses:1142 1150 1153 1156 1159 1167 1169 1171
Symbol 1173 GraphicUsed by:1174
Symbol 1174 MovieClip {Bridge_part} [Bridge_part]Uses:1173
Symbol 1175 GraphicUsed by:1178 1194 1199 1201
Symbol 1176 GraphicUsed by:1178
Symbol 1177 GraphicUsed by:1178 1182 1191 1194 1199 1201
Symbol 1178 MovieClip {Boss3_cut2} [Boss3_cut2]Uses:1175 1176 1177
Symbol 1179 GraphicUsed by:1180
Symbol 1180 MovieClipUses:1179Used by:1183
Symbol 1181 GraphicUsed by:1183
Symbol 1182 MovieClipUses:1177Used by:1183
Symbol 1183 MovieClip {Eindbaas_3_fla.boss_dead_2} [Eindbaas_3_fla.boss_dead_2]Uses:1180 1181 1140 1182Used by:1202
Symbol 1184 GraphicUsed by:1186
Symbol 1185 GraphicUsed by:1186
Symbol 1186 MovieClipUses:1184 1185Used by:1191 1194 1199 1201
Symbol 1187 GraphicUsed by:1191
Symbol 1188 GraphicUsed by:1191
Symbol 1189 GraphicUsed by:1191
Symbol 1190 GraphicUsed by:1191 1194 1199 1201
Symbol 1191 MovieClipUses:1186 1187 1188 1189 1190 1177Used by:1202
Symbol 1192 GraphicUsed by:1194 1201
Symbol 1193 GraphicUsed by:1194
Symbol 1194 MovieClipUses:1186 1175 1192 1193 1190 1177Used by:1202
Symbol 1195 MovieClip {Eindbaas_3_fla.grotevoeten_lopen_10} [Eindbaas_3_fla.grotevoeten_lopen_10]Uses:1155Used by:1202
Symbol 1196 GraphicUsed by:1199
Symbol 1197 GraphicUsed by:1199
Symbol 1198 GraphicUsed by:1199
Symbol 1199 MovieClipUses:1186 1175 1196 1190 1197 1177 1165 1198Used by:1202
Symbol 1200 GraphicUsed by:1201
Symbol 1201 MovieClipUses:1186 1175 1192 1200 1177 1190Used by:1202
Symbol 1202 MovieClip {Boss_3} [Boss_3]Uses:1183 1191 1194 1195 1159 1199 1201 1171
Symbol 1203 GraphicUsed by:1204
Symbol 1204 MovieClip {Boss3_cut1} [Boss3_cut1]Uses:1203
Symbol 1205 GraphicUsed by:1220
Symbol 1206 GraphicUsed by:1220
Symbol 1207 GraphicUsed by:1220
Symbol 1208 GraphicUsed by:1220
Symbol 1209 GraphicUsed by:1220
Symbol 1210 GraphicUsed by:1220
Symbol 1211 GraphicUsed by:1220
Symbol 1212 GraphicUsed by:1220
Symbol 1213 GraphicUsed by:1220
Symbol 1214 GraphicUsed by:1220
Symbol 1215 GraphicUsed by:1220
Symbol 1216 GraphicUsed by:1220
Symbol 1217 GraphicUsed by:1220
Symbol 1218 GraphicUsed by:1220
Symbol 1219 GraphicUsed by:1220
Symbol 1220 MovieClip {Water_mc} [Water_mc]Uses:1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219
Symbol 1221 GraphicUsed by:1222
Symbol 1222 MovieClip {Slamming3_cut1} [Slamming3_cut1]Uses:1221
Symbol 1223 GraphicUsed by:1224 1251 1263
Symbol 1224 MovieClip {Arm3_mc} [Arm3_mc]Uses:1223
Symbol 1225 GraphicUsed by:1226 1236
Symbol 1226 MovieClipUses:1225Used by:1258 1264 1396
Symbol 1227 GraphicUsed by:1230 1231
Symbol 1228 GraphicUsed by:1229
Symbol 1229 MovieClipUses:1228Used by:1230 1231
Symbol 1230 MovieClipUses:1227 1229Used by:1264 1293
Symbol 1231 MovieClipUses:1227 1229Used by:1264 1293
Symbol 1232 GraphicUsed by:1233
Symbol 1233 MovieClipUses:1232Used by:1237
Symbol 1234 GraphicUsed by:1235
Symbol 1235 MovieClipUses:1234Used by:1237
Symbol 1236 MovieClipUses:1225Used by:1237 1252 1267 1368 1371 1433 1440
Symbol 1237 MovieClip {Slamming3_fla.lemming_dood2_6} [Slamming3_fla.lemming_dood2_6]Uses:1233 1235 1236Used by:1264
Symbol 1238 GraphicUsed by:1240
Symbol 1239 GraphicUsed by:1240
Symbol 1240 MovieClipUses:1238 1239Used by:1250 1255 1258 1262
Symbol 1241 GraphicUsed by:1242 1255
Symbol 1242 MovieClipUses:1241Used by:1250 1258 1261 1267
Symbol 1243 GraphicUsed by:1250
Symbol 1244 GraphicUsed by:1245
Symbol 1245 MovieClipUses:1244Used by:1250 1255 1258 1261 1267 1273 1279 1285 1288 1290 1295 1368 1433
Symbol 1246 GraphicUsed by:1247
Symbol 1247 MovieClipUses:1246Used by:1250 1255 1258 1261 1267
Symbol 1248 GraphicUsed by:1250
Symbol 1249 GraphicUsed by:1250
Symbol 1250 MovieClipUses:1240 1242 1243 1245 1247 1248 1249Used by:1252 1264
Symbol 1251 MovieClipUses:1223Used by:1252 1379
Symbol 1252 MovieClipUses:1099 1236 1250 1251Used by:1264
Symbol 1253 GraphicUsed by:1255
Symbol 1254 GraphicUsed by:1255
Symbol 1255 MovieClipUses:1240 1241 1245 1247 1253 1254Used by:1264
Symbol 1256 GraphicUsed by:1258
Symbol 1257 GraphicUsed by:1258
Symbol 1258 MovieClipUses:1240 1226 1247 1245 1256 1242 1257Used by:1264
Symbol 1259 GraphicUsed by:1261
Symbol 1260 GraphicUsed by:1261
Symbol 1261 MovieClipUses:1242 1247 1245 1259 1260Used by:1262
Symbol 1262 MovieClip {Slamming3_fla.lijf_21} [Slamming3_fla.lijf_21]Uses:1240 1261 1117Used by:1264
Symbol 1263 MovieClip {Arm3} [Arm3]Uses:1223Used by:1264
Symbol 1264 MovieClip {Slamming3_mc} [Slamming3_mc]Uses:1226 1230 1231 1237 1098 1252 1255 1250 1258 1262 1263
Symbol 1265 GraphicUsed by:1267
Symbol 1266 GraphicUsed by:1267
Symbol 1267 MovieClip {Slamming3_cut2} [Slamming3_cut2]Uses:1245 1247 1242 1236 1265 1266
Symbol 1268 GraphicUsed by:1269
Symbol 1269 MovieClip {Slamming2_cut1} [Slamming2_cut1]Uses:1268
Symbol 1270 GraphicUsed by:1272
Symbol 1271 GraphicUsed by:1272 1274 1286
Symbol 1272 MovieClipUses:1270 1271Used by:1273
Symbol 1273 MovieClip {Slamming2_fla.lemming_dood2_5} [Slamming2_fla.lemming_dood2_5]Uses:1245 1272Used by:1293
Symbol 1274 MovieClipUses:1271Used by:1282
Symbol 1275 GraphicUsed by:1276
Symbol 1276 MovieClipUses:1275Used by:1279 1285 1288 1290
Symbol 1277 GraphicUsed by:1279
Symbol 1278 GraphicUsed by:1279
Symbol 1279 MovieClipUses:1245 1276 1277 1278Used by:1282 1293
Symbol 1280 GraphicUsed by:1281 1292
Symbol 1281 MovieClipUses:1280Used by:1282
Symbol 1282 MovieClipUses:1099 1274 1279 1281Used by:1293
Symbol 1283 GraphicUsed by:1285
Symbol 1284 GraphicUsed by:1285
Symbol 1285 MovieClipUses:1245 1276 1283 1284Used by:1293
Symbol 1286 MovieClipUses:1271Used by:1288 1293
Symbol 1287 GraphicUsed by:1288
Symbol 1288 MovieClipUses:1286 1245 1276 1287Used by:1293
Symbol 1289 GraphicUsed by:1290
Symbol 1290 MovieClipUses:1276 1245 1289Used by:1291
Symbol 1291 MovieClip {Slamming2_fla.lijf_20} [Slamming2_fla.lijf_20]Uses:1290 1117Used by:1293
Symbol 1292 MovieClipUses:1280Used by:1293
Symbol 1293 MovieClip {Slamming2_mc} [Slamming2_mc]Uses:1230 1231 1273 1098 1282 1285 1279 1288 1286 1291 1292
Symbol 1294 GraphicUsed by:1295
Symbol 1295 MovieClip {Slamming2_cut2} [Slamming2_cut2]Uses:1245 1294
Symbol 1296 GraphicUsed by:1299 1315 1320 1322
Symbol 1297 GraphicUsed by:1299
Symbol 1298 GraphicUsed by:1299 1303 1312 1315 1320 1322
Symbol 1299 MovieClip {Boss1_cut2} [Boss1_cut2]Uses:1296 1297 1298
Symbol 1300 GraphicUsed by:1301
Symbol 1301 MovieClipUses:1300Used by:1304
Symbol 1302 GraphicUsed by:1304
Symbol 1303 MovieClipUses:1298Used by:1304
Symbol 1304 MovieClip {Eindbaas_1_fla.boss_dead_2} [Eindbaas_1_fla.boss_dead_2]Uses:1301 1302 1140 1303Used by:1323
Symbol 1305 GraphicUsed by:1307
Symbol 1306 GraphicUsed by:1307
Symbol 1307 MovieClipUses:1305 1306Used by:1312 1315 1320 1322
Symbol 1308 GraphicUsed by:1312
Symbol 1309 GraphicUsed by:1312
Symbol 1310 GraphicUsed by:1312
Symbol 1311 GraphicUsed by:1312 1315 1320 1322
Symbol 1312 MovieClipUses:1307 1308 1309 1310 1311 1298Used by:1323
Symbol 1313 GraphicUsed by:1315 1322
Symbol 1314 GraphicUsed by:1315
Symbol 1315 MovieClipUses:1307 1296 1313 1314 1311 1298Used by:1323
Symbol 1316 MovieClip {Eindbaas_1_fla.grotevoeten_lopen_10} [Eindbaas_1_fla.grotevoeten_lopen_10]Uses:1155Used by:1323
Symbol 1317 GraphicUsed by:1320
Symbol 1318 GraphicUsed by:1320
Symbol 1319 GraphicUsed by:1320
Symbol 1320 MovieClipUses:1307 1296 1317 1311 1318 1298 1165 1319Used by:1323
Symbol 1321 GraphicUsed by:1322
Symbol 1322 MovieClipUses:1307 1296 1313 1321 1298 1311Used by:1323
Symbol 1323 MovieClip {Boss_1} [Boss_1]Uses:1304 1312 1315 1316 1159 1320 1322 1171
Symbol 1324 GraphicUsed by:1325
Symbol 1325 MovieClip {Boss1_cut1} [Boss1_cut1]Uses:1324
Symbol 1326 GraphicUsed by:1327
Symbol 1327 MovieClip {Boss4_cut1} [Boss4_cut1]Uses:1326
Symbol 1328 GraphicUsed by:1329
Symbol 1329 MovieClipUses:1328Used by:1333
Symbol 1330 GraphicUsed by:1333
Symbol 1331 GraphicUsed by:1332 1341 1345 1350 1352 1355
Symbol 1332 MovieClipUses:1331Used by:1333
Symbol 1333 MovieClip {Eindbaas_4_fla.boss_dead_2} [Eindbaas_4_fla.boss_dead_2]Uses:1329 1330 1140 1332Used by:1353
Symbol 1334 GraphicUsed by:1336
Symbol 1335 GraphicUsed by:1336
Symbol 1336 MovieClipUses:1334 1335Used by:1341 1345 1350 1352
Symbol 1337 GraphicUsed by:1341
Symbol 1338 GraphicUsed by:1341
Symbol 1339 GraphicUsed by:1341
Symbol 1340 GraphicUsed by:1341 1345 1350 1352
Symbol 1341 MovieClipUses:1336 1337 1338 1339 1340 1331Used by:1353
Symbol 1342 GraphicUsed by:1345 1350 1352 1355
Symbol 1343 GraphicUsed by:1345 1352
Symbol 1344 GraphicUsed by:1345
Symbol 1345 MovieClipUses:1336 1342 1343 1344 1340 1331Used by:1353
Symbol 1346 MovieClip {Eindbaas_4_fla.grotevoeten_lopen_10} [Eindbaas_4_fla.grotevoeten_lopen_10]Uses:1155Used by:1353
Symbol 1347 GraphicUsed by:1350
Symbol 1348 GraphicUsed by:1350
Symbol 1349 GraphicUsed by:1350
Symbol 1350 MovieClipUses:1336 1342 1347 1340 1348 1331 1165 1349Used by:1353
Symbol 1351 GraphicUsed by:1352
Symbol 1352 MovieClipUses:1336 1342 1343 1351 1331 1340Used by:1353
Symbol 1353 MovieClip {Boss_4} [Boss_4]Uses:1333 1341 1345 1346 1159 1350 1352 1171
Symbol 1354 GraphicUsed by:1355
Symbol 1355 MovieClip {Boss4_cut2} [Boss4_cut2]Uses:1342 1354 1331
Symbol 1356 GraphicUsed by:1357 1395
Symbol 1357 MovieClip {Arm4_mc} [Arm4_mc]Uses:1356
Symbol 1358 GraphicUsed by:1359
Symbol 1359 MovieClip {Slamming4_cut1} [Slamming4_cut1]Uses:1358
Symbol 1360 GraphicUsed by:1361
Symbol 1361 MovieClipUses:1360Used by:1368 1379 1382 1387 1391 1394 1433
Symbol 1362 GraphicUsed by:1363
Symbol 1363 MovieClipUses:1362Used by:1368 1371 1379 1382 1387 1391 1394 1433
Symbol 1364 GraphicUsed by:1365 1382
Symbol 1365 MovieClipUses:1364Used by:1368 1394 1433
Symbol 1366 GraphicUsed by:1368
Symbol 1367 GraphicUsed by:1368
Symbol 1368 MovieClip {Slamming4_cut2} [Slamming4_cut2]Uses:1361 1363 1365 1236 1366 1367 1245
Symbol 1369 GraphicUsed by:1370
Symbol 1370 MovieClipUses:1369Used by:1371
Symbol 1371 MovieClip {Slamming4_fla.lemming_dood2_3} [Slamming4_fla.lemming_dood2_3]Uses:1363 1370 1236Used by:1396
Symbol 1372 GraphicUsed by:1374
Symbol 1373 GraphicUsed by:1374
Symbol 1374 MovieClipUses:1372 1373Used by:1379 1382 1387 1391 1394
Symbol 1375 GraphicUsed by:1379
Symbol 1376 GraphicUsed by:1377 1391
Symbol 1377 MovieClipUses:1376Used by:1379
Symbol 1378 GraphicUsed by:1379
Symbol 1379 MovieClipUses:1374 1363 1375 1361 1099 1377 1378 1251Used by:1396
Symbol 1380 GraphicUsed by:1381
Symbol 1381 MovieClipUses:1380Used by:1382
Symbol 1382 MovieClipUses:1364 1361 1374 1363 1381 1117Used by:1396
Symbol 1383 GraphicUsed by:1387
Symbol 1384 GraphicUsed by:1387
Symbol 1385 GraphicUsed by:1386
Symbol 1386 MovieClipUses:1385Used by:1387 1458
Symbol 1387 MovieClipUses:1374 1383 1361 1363 1384 1386Used by:1396
Symbol 1388 GraphicUsed by:1391
Symbol 1389 GraphicUsed by:1391
Symbol 1390 GraphicUsed by:1391
Symbol 1391 MovieClipUses:1374 1388 1361 1363 1389 1376 1390Used by:1396
Symbol 1392 GraphicUsed by:1394
Symbol 1393 GraphicUsed by:1394
Symbol 1394 MovieClipUses:1361 1363 1365 1374 1392 1117 1393Used by:1396
Symbol 1395 MovieClipUses:1356Used by:1396
Symbol 1396 MovieClip {Slamming4_mc} [Slamming4_mc]Uses:1226 1371 1098 1379 1382 1387 1391 1394 1395
Symbol 1397 GraphicUsed by:1398
Symbol 1398 MovieClip {TooltipBackground} [TooltipBackground]Uses:1397Used by:1400
Symbol 1399 EditableTextUses:992Used by:1400
Symbol 1400 MovieClip {Tooltip_mc} [Tooltip_mc]Uses:1398 1399
Symbol 1401 GraphicUsed by:1402
Symbol 1402 MovieClip {Boss5_cut1} [Boss5_cut1]Uses:1401
Symbol 1403 GraphicUsed by:1406 1422 1427 1429
Symbol 1404 GraphicUsed by:1406
Symbol 1405 GraphicUsed by:1406 1410 1419 1422 1427 1429
Symbol 1406 MovieClip {Boss5_cut2} [Boss5_cut2]Uses:1403 1404 1405
Symbol 1407 GraphicUsed by:1408
Symbol 1408 MovieClipUses:1407Used by:1411
Symbol 1409 GraphicUsed by:1411
Symbol 1410 MovieClipUses:1405Used by:1411
Symbol 1411 MovieClip {Eindbaas_5_fla.boss_dead_2} [Eindbaas_5_fla.boss_dead_2]Uses:1408 1409 1140 1410Used by:1430
Symbol 1412 GraphicUsed by:1414
Symbol 1413 GraphicUsed by:1414
Symbol 1414 MovieClipUses:1412 1413Used by:1419 1422 1427 1429
Symbol 1415 GraphicUsed by:1419
Symbol 1416 GraphicUsed by:1419
Symbol 1417 GraphicUsed by:1419
Symbol 1418 GraphicUsed by:1419 1422 1427 1429
Symbol 1419 MovieClipUses:1414 1415 1416 1417 1418 1405Used by:1430
Symbol 1420 GraphicUsed by:1422 1429
Symbol 1421 GraphicUsed by:1422
Symbol 1422 MovieClipUses:1414 1403 1420 1421 1418 1405Used by:1430
Symbol 1423 MovieClip {Eindbaas_5_fla.grotevoeten_lopen_10} [Eindbaas_5_fla.grotevoeten_lopen_10]Uses:1155Used by:1430
Symbol 1424 GraphicUsed by:1427
Symbol 1425 GraphicUsed by:1427
Symbol 1426 GraphicUsed by:1427
Symbol 1427 MovieClipUses:1414 1403 1424 1418 1425 1405 1165 1426Used by:1430
Symbol 1428 GraphicUsed by:1429
Symbol 1429 MovieClipUses:1414 1403 1420 1428 1405 1418Used by:1430
Symbol 1430 MovieClip {Boss_5} [Boss_5]Uses:1411 1419 1422 1423 1159 1427 1429 1171
Symbol 1431 GraphicUsed by:1433
Symbol 1432 GraphicUsed by:1433
Symbol 1433 MovieClip {Slamming5_cut2} [Slamming5_cut2]Uses:1361 1363 1365 1236 1431 1432 1245
Symbol 1434 GraphicUsed by:1435
Symbol 1435 MovieClipUses:1434Used by:1463
Symbol 1436 GraphicUsed by:1437
Symbol 1437 MovieClipUses:1436Used by:1440 1450 1453 1455 1458 1461
Symbol 1438 GraphicUsed by:1439
Symbol 1439 MovieClipUses:1438Used by:1440
Symbol 1440 MovieClip {Slamming5_fla.lemming_dood2_3} [Slamming5_fla.lemming_dood2_3]Uses:1437 1439 1236Used by:1463
Symbol 1441 GraphicUsed by:1442
Symbol 1442 MovieClipUses:1441Used by:1450 1453 1455 1458 1461
Symbol 1443 GraphicUsed by:1445
Symbol 1444 GraphicUsed by:1445
Symbol 1445 MovieClipUses:1443 1444Used by:1450 1453 1455 1458 1461
Symbol 1446 GraphicUsed by:1450 1462 1466
Symbol 1447 GraphicUsed by:1448 1458
Symbol 1448 MovieClipUses:1447Used by:1450
Symbol 1449 GraphicUsed by:1450
Symbol 1450 MovieClipUses:1442 1437 1445 1446 1099 1448 1449Used by:1463
Symbol 1451 GraphicUsed by:1452
Symbol 1452 MovieClipUses:1451Used by:1453
Symbol 1453 MovieClipUses:1442 1437 1445 1452 1117Used by:1463
Symbol 1454 GraphicUsed by:1455
Symbol 1455 MovieClipUses:1442 1437 1445 1454Used by:1463
Symbol 1456 GraphicUsed by:1458
Symbol 1457 GraphicUsed by:1458
Symbol 1458 MovieClipUses:1445 1442 1437 1456 1447 1457 1386Used by:1463
Symbol 1459 GraphicUsed by:1461
Symbol 1460 GraphicUsed by:1461
Symbol 1461 MovieClipUses:1442 1437 1445 1459 1117 1460Used by:1463
Symbol 1462 MovieClipUses:1446Used by:1463
Symbol 1463 MovieClip {Slamming5_mc} [Slamming5_mc]Uses:1435 1440 1098 1450 1453 1455 1458 1461 1462
Symbol 1464 GraphicUsed by:1465
Symbol 1465 MovieClip {Slamming5_cut1} [Slamming5_cut1]Uses:1464
Symbol 1466 MovieClip {Arm5_mc} [Arm5_mc]Uses:1446
Symbol 1467 GraphicUsed by:1470
Symbol 1468 EditableTextUses:1048Used by:1470
Symbol 1469 EditableTextUses:1048Used by:1470
Symbol 1470 MovieClip {Button_background} [Button_background]Uses:1467 1468 1469
Symbol 1471 GraphicUsed by:1472
Symbol 1472 MovieClip {DeadVillager3} [DeadVillager3]Uses:1471
Symbol 1473 GraphicUsed by:1474
Symbol 1474 MovieClip {DeadVillager2} [DeadVillager2]Uses:1473
Symbol 1475 GraphicUsed by:1476
Symbol 1476 MovieClip {DeadVillager1} [DeadVillager1]Uses:1475
Symbol 1477 Sound {sfx.cutnothing} [sfx.cutnothing]
Symbol 1478 Sound {sfx.cutbrige} [sfx.cutbrige]
Symbol 1479 GraphicUsed by:1486
Symbol 1480 GraphicUsed by:1481 1562
Symbol 1481 MovieClip {Forbidden} [Forbidden]Uses:1480Used by:1486 1508
Symbol 1482 GraphicUsed by:1485
Symbol 1483 GraphicUsed by:1485
Symbol 1484 GraphicUsed by:1485
Symbol 1485 MovieClipUses:1482 1483 1484Used by:1486
Symbol 1486 MovieClip {Scissor_cursor} [Scissor_cursor]Uses:1479 1481 1485
Symbol 1487 Sound {sfx.cut_slammings} [sfx.cut_slammings]
Symbol 1488 GraphicUsed by:1507
Symbol 1489 GraphicUsed by:1507
Symbol 1490 GraphicUsed by:1507
Symbol 1491 GraphicUsed by:1507
Symbol 1492 GraphicUsed by:1507
Symbol 1493 GraphicUsed by:1507
Symbol 1494 GraphicUsed by:1507
Symbol 1495 GraphicUsed by:1507
Symbol 1496 GraphicUsed by:1507
Symbol 1497 GraphicUsed by:1507
Symbol 1498 GraphicUsed by:1507
Symbol 1499 GraphicUsed by:1507
Symbol 1500 GraphicUsed by:1507
Symbol 1501 GraphicUsed by:1507
Symbol 1502 GraphicUsed by:1507
Symbol 1503 GraphicUsed by:1507
Symbol 1504 GraphicUsed by:1507
Symbol 1505 GraphicUsed by:1507
Symbol 1506 GraphicUsed by:1507
Symbol 1507 MovieClipUses:1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506Used by:1508
Symbol 1508 MovieClip {Pen_cursor} [Pen_cursor]Uses:1507 1481
Symbol 1509 Bitmap {RockBitmap} [RockBitmap]
Symbol 1510 Sound {sfx.godhandwind} [sfx.godhandwind]
Symbol 1511 Sound {sfx.godhandbang} [sfx.godhandbang]
Symbol 1512 GraphicUsed by:1526
Symbol 1513 GraphicUsed by:1514
Symbol 1514 MovieClipUses:1513Used by:1526
Symbol 1515 GraphicUsed by:1526
Symbol 1516 GraphicUsed by:1517
Symbol 1517 MovieClipUses:1516Used by:1526
Symbol 1518 GraphicUsed by:1526
Symbol 1519 GraphicUsed by:1520
Symbol 1520 MovieClipUses:1519Used by:1526
Symbol 1521 GraphicUsed by:1522
Symbol 1522 MovieClipUses:1521Used by:1526
Symbol 1523 GraphicUsed by:1524
Symbol 1524 MovieClipUses:1523Used by:1526
Symbol 1525 GraphicUsed by:1526
Symbol 1526 MovieClip {Hand_mc} [Hand_mc]Uses:1512 1514 1515 1517 1518 1520 1522 1524 1525
Symbol 1527 GraphicUsed by:1528
Symbol 1528 MovieClip {Spoon_anchor_mc} [Spoon_anchor_mc]Uses:1527
Symbol 1529 GraphicUsed by:1530
Symbol 1530 MovieClip {Spoon_mc} [Spoon_mc]Uses:1529
Symbol 1531 Sound {sfx.scoopshoot} [sfx.scoopshoot]
Symbol 1532 Sound {sfx.scoopbuild} [sfx.scoopbuild]
Symbol 1533 Sound {sfx.bomb} [sfx.bomb]
Symbol 1534 GraphicUsed by:1535
Symbol 1535 MovieClipUses:1534Used by:1560
Symbol 1536 GraphicUsed by:1539
Symbol 1537 GraphicUsed by:1539
Symbol 1538 GraphicUsed by:1539
Symbol 1539 MovieClipUses:1536 1537 1538Used by:1560
Symbol 1540 GraphicUsed by:1560
Symbol 1541 GraphicUsed by:1560
Symbol 1542 GraphicUsed by:1543
Symbol 1543 MovieClipUses:1542Used by:1560
Symbol 1544 GraphicUsed by:1560
Symbol 1545 GraphicUsed by:1560
Symbol 1546 GraphicUsed by:1560
Symbol 1547 GraphicUsed by:1560
Symbol 1548 GraphicUsed by:1560
Symbol 1549 GraphicUsed by:1560
Symbol 1550 GraphicUsed by:1560
Symbol 1551 GraphicUsed by:1560
Symbol 1552 GraphicUsed by:1560
Symbol 1553 GraphicUsed by:1560
Symbol 1554 GraphicUsed by:1560
Symbol 1555 GraphicUsed by:1560
Symbol 1556 GraphicUsed by:1560
Symbol 1557 GraphicUsed by:1560
Symbol 1558 GraphicUsed by:1560
Symbol 1559 GraphicUsed by:1560
Symbol 1560 MovieClip {Bomb_explode} [Bomb_explode]Uses:1535 1539 1540 1541 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559
Symbol 1561 GraphicUsed by:1562
Symbol 1562 MovieClip {Bomb_cursor} [Bomb_cursor]Uses:1035 478 480 1561 1480
Symbol 1563 GraphicUsed by:1575
Symbol 1564 GraphicUsed by:1575
Symbol 1565 GraphicUsed by:1566
Symbol 1566 MovieClipUses:1565Used by:1575
Symbol 1567 GraphicUsed by:1575
Symbol 1568 GraphicUsed by:1570
Symbol 1569 GraphicUsed by:1570
Symbol 1570 MovieClipUses:1568 1569Used by:1575
Symbol 1571 GraphicUsed by:1575
Symbol 1572 GraphicUsed by:1575
Symbol 1573 GraphicUsed by:1575
Symbol 1574 GraphicUsed by:1575
Symbol 1575 MovieClip {Bomb_mc} [Bomb_mc]Uses:1563 1564 1566 1567 1570 1571 1572 1573 1574
Symbol 1576 Sound {sfx.N_slammings_damage2} [sfx.N_slammings_damage2]
Symbol 1577 Sound {sfx.N_slammings_getawaysmail} [sfx.N_slammings_getawaysmail]
Symbol 1578 Sound {sfx.B_slammings_damage2} [sfx.B_slammings_damage2]
Symbol 1579 Sound {sfx.N_slammings_jump3} [sfx.N_slammings_jump3]
Symbol 1580 Sound {sfx.N_slammings_jump} [sfx.N_slammings_jump]
Symbol 1581 Sound {sfx.N_slammings_pickup3} [sfx.N_slammings_pickup3]
Symbol 1582 Sound {sfx.B_slammings_drowninwater} [sfx.B_slammings_drowninwater]
Symbol 1583 Sound {sfx.S_slammings_drownloop} [sfx.S_slammings_drownloop]
Symbol 1584 Sound {sfx.N_slammings_drownloop} [sfx.N_slammings_drownloop]
Symbol 1585 Sound {sfx.S_slammings_burn} [sfx.S_slammings_burn]
Symbol 1586 Sound {sfx.N_slammings_burn} [sfx.N_slammings_burn]
Symbol 1587 Sound {sfx.B_slammings_die} [sfx.B_slammings_die]
Symbol 1588 Sound {sfx.S_slammings_damage3} [sfx.S_slammings_damage3]
Symbol 1589 Sound {sfx.S_slammings_damage} [sfx.S_slammings_damage]
Symbol 1590 Sound {sfx.N_slammings_damage} [sfx.N_slammings_damage]
Symbol 1591 Sound {sfx.S_slammings_getawaysmail2} [sfx.S_slammings_getawaysmail2]
Symbol 1592 Sound {sfx.N_slammings_pickup2} [sfx.N_slammings_pickup2]
Symbol 1593 Sound {sfx.B_slammings_getawaysmail} [sfx.B_slammings_getawaysmail]
Symbol 1594 Sound {sfx.B_slammings_damage} [sfx.B_slammings_damage]
Symbol 1595 Sound {sfx.N_slammings_die2} [sfx.N_slammings_die2]
Symbol 1596 Sound {sfx.S_slammings_jump} [sfx.S_slammings_jump]
Symbol 1597 Sound {sfx.S_slammings_pickup2} [sfx.S_slammings_pickup2]
Symbol 1598 Sound {sfx.N_slammings_jump2} [sfx.N_slammings_jump2]
Symbol 1599 Sound {sfx.N_slammings_die} [sfx.N_slammings_die]
Symbol 1600 Sound {sfx.S_slammings_jump2} [sfx.S_slammings_jump2]
Symbol 1601 Sound {sfx.B_slammings_jump} [sfx.B_slammings_jump]
Symbol 1602 Sound {sfx.N_slammings_getawaysmail2} [sfx.N_slammings_getawaysmail2]
Symbol 1603 Sound {sfx.N_slammings_pickup} [sfx.N_slammings_pickup]
Symbol 1604 Sound {sfx.S_slammings_damage2} [sfx.S_slammings_damage2]
Symbol 1605 Sound {sfx.S_slammings_getawaysmail} [sfx.S_slammings_getawaysmail]
Symbol 1606 Sound {sfx.S_slammings_die} [sfx.S_slammings_die]
Symbol 1607 Sound {sfx.S_slammings_jump3} [sfx.S_slammings_jump3]
Symbol 1608 Sound {sfx.S_slammings_die2} [sfx.S_slammings_die2]
Symbol 1609 Sound {sfx.S_slammings_pickup} [sfx.S_slammings_pickup]
Symbol 1610 Sound {sfx.B_slammings_pickup} [sfx.B_slammings_pickup]
Symbol 1611 Sound {sfx.B_slammings_burn} [sfx.B_slammings_burn]
Symbol 1612 GraphicUsed by:1636
Symbol 1613 FontUsed by:323 989 1614 1641
Symbol 1614 EditableTextUses:1613Used by:1636
Symbol 1615 GraphicUsed by:1636 1642
Symbol 1616 GraphicUsed by:1635
Symbol 1617 GraphicUsed by:1635
Symbol 1618 GraphicUsed by:1635
Symbol 1619 GraphicUsed by:1635
Symbol 1620 GraphicUsed by:1635
Symbol 1621 GraphicUsed by:1635
Symbol 1622 GraphicUsed by:1635
Symbol 1623 GraphicUsed by:1635
Symbol 1624 GraphicUsed by:1635
Symbol 1625 GraphicUsed by:1635
Symbol 1626 GraphicUsed by:1635
Symbol 1627 GraphicUsed by:1635
Symbol 1628 GraphicUsed by:1635
Symbol 1629 GraphicUsed by:1635
Symbol 1630 GraphicUsed by:1635
Symbol 1631 GraphicUsed by:1635
Symbol 1632 GraphicUsed by:1635
Symbol 1633 GraphicUsed by:1635
Symbol 1634 GraphicUsed by:1635
Symbol 1635 MovieClip {MENUS_fla.flag_icon_251} [MENUS_fla.flag_icon_251]Uses:1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634Used by:1636 1642
Symbol 1636 MovieClip {spill.localisation.LanguageSelectBox_mc} [spill.localisation.LanguageSelectBox_mc]Uses:1612 1614 1615 1635
Symbol 1637 GraphicUsed by:1640
Symbol 1638 GraphicUsed by:1640
Symbol 1639 GraphicUsed by:1640
Symbol 1640 ButtonUses:1637 1638 1639Used by:1642
Symbol 1641 EditableTextUses:1613Used by:1642
Symbol 1642 MovieClip {MENUS_fla.l_br_253} [MENUS_fla.l_br_253]Uses:1640 1615 1635 1641Used by:1643
Symbol 1643 MovieClip {spill.localisation.LanguageSelectPopup_mc} [spill.localisation.LanguageSelectPopup_mc]Uses:1642

Instance Names

"loadingbar"Symbol 19 MovieClip {MENUS_fla.loadingbar_81} [MENUS_fla.loadingbar_81] Frame 1Symbol 18 MovieClip
"loadingbar"Symbol 109 MovieClip {Preloader_mc} [Preloader_mc] Frame 1Symbol 19 MovieClip {MENUS_fla.loadingbar_81} [MENUS_fla.loadingbar_81]
"txt"Symbol 109 MovieClip {Preloader_mc} [Preloader_mc] Frame 1Symbol 103 EditableText
"__id34_"Symbol 109 MovieClip {Preloader_mc} [Preloader_mc] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"branding_btn"Symbol 109 MovieClip {Preloader_mc} [Preloader_mc] Frame 1Symbol 108 Button
"_txt"Symbol 141 MovieClip {Lethe_Button_Up} [Lethe_Button_Up] Frame 1Symbol 140 MovieClip
"_txt"Symbol 155 MovieClip {Lethe_Button_Up2} [Lethe_Button_Up2] Frame 1Symbol 154 MovieClip
"_txt"Symbol 171 MovieClip {Lethe_Button_Up3} [Lethe_Button_Up3] Frame 1Symbol 170 MovieClip
"_txt"Symbol 173 MovieClip {Lethe_Button_Down} [Lethe_Button_Down] Frame 1Symbol 140 MovieClip
"_txt"Symbol 174 MovieClip {Lethe_Button_Down2} [Lethe_Button_Down2] Frame 1Symbol 154 MovieClip
"_txt"Symbol 175 MovieClip {Lethe_Button_Down3} [Lethe_Button_Down3] Frame 1Symbol 170 MovieClip
"_btn"Symbol 208 MovieClip {COM_LoadingBar} [COM_LoadingBar] Frame 1Symbol 201 MovieClip {Lethe_Button_Back} [Lethe_Button_Back]
"_txt"Symbol 230 MovieClip {Lethe_Continue_Button} [Lethe_Continue_Button] Frame 1Symbol 227 MovieClip {Lethe_txt2} [Lethe_txt2]
"text"Symbol 324 MovieClip {ui_stuff_fla.CombatText_anim_14} [ui_stuff_fla.CombatText_anim_14] Frame 1Symbol 323 EditableText
"anim"Symbol 328 MovieClip {CombatText_mc} [CombatText_mc] Frame 1Symbol 324 MovieClip {ui_stuff_fla.CombatText_anim_14} [ui_stuff_fla.CombatText_anim_14]
"happy_face"Symbol 328 MovieClip {CombatText_mc} [CombatText_mc] Frame 1Symbol 327 MovieClip
"__id33_"Symbol 336 MovieClip {BrandingButton_mc} [BrandingButton_mc] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"_down"Symbol 455 MovieClip {MENUS_fla.button_tut2_110} [MENUS_fla.button_tut2_110] Frame 3Symbol 449 MovieClip
"_down"Symbol 459 MovieClip {MENUS_fla.button_tut3_111} [MENUS_fla.button_tut3_111] Frame 3Symbol 449 MovieClip
"_down"Symbol 463 MovieClip {MENUS_fla.button_tut4_112} [MENUS_fla.button_tut4_112] Frame 3Symbol 449 MovieClip
"_down"Symbol 467 MovieClip {MENUS_fla.button_tut5_113} [MENUS_fla.button_tut5_113] Frame 3Symbol 449 MovieClip
"grain3"Symbol 502 MovieClip {MENUS_fla.achter_tv_120} [MENUS_fla.achter_tv_120] Frame 1Symbol 495 MovieClip
"grain2"Symbol 502 MovieClip {MENUS_fla.achter_tv_120} [MENUS_fla.achter_tv_120] Frame 1Symbol 497 MovieClip
"grain1"Symbol 502 MovieClip {MENUS_fla.achter_tv_120} [MENUS_fla.achter_tv_120] Frame 1Symbol 499 MovieClip
"line"Symbol 502 MovieClip {MENUS_fla.achter_tv_120} [MENUS_fla.achter_tv_120] Frame 1Symbol 501 MovieClip
"__id13_"Symbol 514 MovieClip {MENUS_fla.back_127} [MENUS_fla.back_127] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"__id14_"Symbol 514 MovieClip {MENUS_fla.back_127} [MENUS_fla.back_127] Frame 16Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"__id20_"Symbol 517 MovieClip {MENUS_fla.skip_129} [MENUS_fla.skip_129] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"__id21_"Symbol 517 MovieClip {MENUS_fla.skip_129} [MENUS_fla.skip_129] Frame 16Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"tut1_btn"Symbol 518 MovieClip {Tutorial_mc} [Tutorial_mc] Frame 1Symbol 451 MovieClip
"tut2_btn"Symbol 518 MovieClip {Tutorial_mc} [Tutorial_mc] Frame 1Symbol 455 MovieClip {MENUS_fla.button_tut2_110} [MENUS_fla.button_tut2_110]
"tut3_btn"Symbol 518 MovieClip {Tutorial_mc} [Tutorial_mc] Frame 1Symbol 459 MovieClip {MENUS_fla.button_tut3_111} [MENUS_fla.button_tut3_111]
"tut4_btn"Symbol 518 MovieClip {Tutorial_mc} [Tutorial_mc] Frame 1Symbol 463 MovieClip {MENUS_fla.button_tut4_112} [MENUS_fla.button_tut4_112]
"tut5_btn"Symbol 518 MovieClip {Tutorial_mc} [Tutorial_mc] Frame 1Symbol 467 MovieClip {MENUS_fla.button_tut5_113} [MENUS_fla.button_tut5_113]
"picture"Symbol 518 MovieClip {Tutorial_mc} [Tutorial_mc] Frame 1Symbol 492 MovieClip
"video"Symbol 518 MovieClip {Tutorial_mc} [Tutorial_mc] Frame 1Symbol 502 MovieClip {MENUS_fla.achter_tv_120} [MENUS_fla.achter_tv_120]
"text1"Symbol 518 MovieClip {Tutorial_mc} [Tutorial_mc] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"text2"Symbol 518 MovieClip {Tutorial_mc} [Tutorial_mc] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"text3"Symbol 518 MovieClip {Tutorial_mc} [Tutorial_mc] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"text4"Symbol 518 MovieClip {Tutorial_mc} [Tutorial_mc] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"back_btn"Symbol 518 MovieClip {Tutorial_mc} [Tutorial_mc] Frame 1Symbol 514 MovieClip {MENUS_fla.back_127} [MENUS_fla.back_127]
"__id19_"Symbol 518 MovieClip {Tutorial_mc} [Tutorial_mc] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"play_btn"Symbol 518 MovieClip {Tutorial_mc} [Tutorial_mc] Frame 1Symbol 516 MovieClip
"skip_btn"Symbol 518 MovieClip {Tutorial_mc} [Tutorial_mc] Frame 1Symbol 517 MovieClip {MENUS_fla.skip_129} [MENUS_fla.skip_129]
"__id35_"Symbol 565 MovieClip {MENUS_fla.highscores_20} [MENUS_fla.highscores_20] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"__id36_"Symbol 565 MovieClip {MENUS_fla.highscores_20} [MENUS_fla.highscores_20] Frame 16Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"__id37_"Symbol 566 MovieClip {MENUS_fla.howtoplay_27} [MENUS_fla.howtoplay_27] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"__id38_"Symbol 566 MovieClip {MENUS_fla.howtoplay_27} [MENUS_fla.howtoplay_27] Frame 16Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"__id39_"Symbol 568 MovieClip {MENUS_fla.startgame_28} [MENUS_fla.startgame_28] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"__id40_"Symbol 568 MovieClip {MENUS_fla.startgame_28} [MENUS_fla.startgame_28] Frame 16Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"__id3_"Symbol 570 MovieClip {MENUS_fla.wood_button_30} [MENUS_fla.wood_button_30] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"__id25_"Symbol 573 MovieClip {MENUS_fla.qualitybtn_69} [MENUS_fla.qualitybtn_69] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"text"Symbol 579 MovieClip {MENUS_fla.qualityschuifje_68} [MENUS_fla.qualityschuifje_68] Frame 1Symbol 573 MovieClip {MENUS_fla.qualitybtn_69} [MENUS_fla.qualitybtn_69]
"btn"Symbol 579 MovieClip {MENUS_fla.qualityschuifje_68} [MENUS_fla.qualityschuifje_68] Frame 1Symbol 578 Button
"btn"Symbol 581 MovieClip {MENUS_fla.backgroundvolume_72} [MENUS_fla.backgroundvolume_72] Frame 1Symbol 578 Button
"highscores_btn"Symbol 586 MovieClip {MainMenu_mc} [MainMenu_mc] Frame 1Symbol 565 MovieClip {MENUS_fla.highscores_20} [MENUS_fla.highscores_20]
"htp_btn"Symbol 586 MovieClip {MainMenu_mc} [MainMenu_mc] Frame 1Symbol 566 MovieClip {MENUS_fla.howtoplay_27} [MENUS_fla.howtoplay_27]
"start_btn"Symbol 586 MovieClip {MainMenu_mc} [MainMenu_mc] Frame 1Symbol 568 MovieClip {MENUS_fla.startgame_28} [MENUS_fla.startgame_28]
"moregames_btn"Symbol 586 MovieClip {MainMenu_mc} [MainMenu_mc] Frame 1Symbol 571 MovieClip {MENUS_fla.moregamesbnt_29} [MENUS_fla.moregamesbnt_29]
"qualityControl"Symbol 586 MovieClip {MainMenu_mc} [MainMenu_mc] Frame 1Symbol 579 MovieClip {MENUS_fla.qualityschuifje_68} [MENUS_fla.qualityschuifje_68]
"music"Symbol 586 MovieClip {MainMenu_mc} [MainMenu_mc] Frame 1Symbol 581 MovieClip {MENUS_fla.backgroundvolume_72} [MENUS_fla.backgroundvolume_72]
"sound"Symbol 586 MovieClip {MainMenu_mc} [MainMenu_mc] Frame 1Symbol 581 MovieClip {MENUS_fla.backgroundvolume_72} [MENUS_fla.backgroundvolume_72]
"__id27_"Symbol 594 MovieClip {MENUS_fla.godmodebtn_94} [MENUS_fla.godmodebtn_94] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"__id28_"Symbol 595 MovieClip {MENUS_fla.campaignmodebtn_95} [MENUS_fla.campaignmodebtn_95] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"__id30_"Symbol 596 MovieClip {MENUS_fla.cancelbtn_96} [MENUS_fla.cancelbtn_96] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"godmode_btn"Symbol 597 MovieClip {LevelModeMenu} [LevelModeMenu] Frame 1Symbol 594 MovieClip {MENUS_fla.godmodebtn_94} [MENUS_fla.godmodebtn_94]
"campaign_btn"Symbol 597 MovieClip {LevelModeMenu} [LevelModeMenu] Frame 1Symbol 595 MovieClip {MENUS_fla.campaignmodebtn_95} [MENUS_fla.campaignmodebtn_95]
"__id29_"Symbol 597 MovieClip {LevelModeMenu} [LevelModeMenu] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"cancel_btn"Symbol 597 MovieClip {LevelModeMenu} [LevelModeMenu] Frame 1Symbol 596 MovieClip {MENUS_fla.cancelbtn_96} [MENUS_fla.cancelbtn_96]
"__id0_"Symbol 684 MovieClip {MENUS_fla.mainmenubutton_239} [MENUS_fla.mainmenubutton_239] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"__id1_"Symbol 695 MovieClip {MENUS_fla.tekst_bord_241} [MENUS_fla.tekst_bord_241] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"__id2_"Symbol 696 MovieClip {MENUS_fla.retrybtn_242} [MENUS_fla.retrybtn_242] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"__id5_"Symbol 699 MovieClip {MENUS_fla.submitbtn_243} [MENUS_fla.submitbtn_243] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"__id6_"Symbol 712 MovieClip {MENUS_fla.medailles_244} [MENUS_fla.medailles_244] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"__id7_"Symbol 716 MovieClip {MENUS_fla.viewstatsbutton_245} [MENUS_fla.viewstatsbutton_245] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"__id9_"Symbol 723 MovieClip {MENUS_fla.mainmenu_246} [MENUS_fla.mainmenu_246] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"__id10_"Symbol 723 MovieClip {MENUS_fla.mainmenu_246} [MENUS_fla.mainmenu_246] Frame 16Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"txt1"Symbol 727 MovieClip {MENUS_fla.statistics_248} [MENUS_fla.statistics_248] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"txt2"Symbol 727 MovieClip {MENUS_fla.statistics_248} [MENUS_fla.statistics_248] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"__id11_"Symbol 727 MovieClip {MENUS_fla.statistics_248} [MENUS_fla.statistics_248] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"stats"Symbol 728 MovieClip {MENUS_fla.stastistieken_247} [MENUS_fla.stastistieken_247] Frame 1Symbol 727 MovieClip {MENUS_fla.statistics_248} [MENUS_fla.statistics_248]
"background"Symbol 729 MovieClip {GameOver_mc} [GameOver_mc] Frame 1Symbol 683 MovieClip
"nextlevel_btn"Symbol 729 MovieClip {GameOver_mc} [GameOver_mc] Frame 1Symbol 684 MovieClip {MENUS_fla.mainmenubutton_239} [MENUS_fla.mainmenubutton_239]
"title"Symbol 729 MovieClip {GameOver_mc} [GameOver_mc] Frame 1Symbol 695 MovieClip {MENUS_fla.tekst_bord_241} [MENUS_fla.tekst_bord_241]
"retry_btn"Symbol 729 MovieClip {GameOver_mc} [GameOver_mc] Frame 1Symbol 696 MovieClip {MENUS_fla.retrybtn_242} [MENUS_fla.retrybtn_242]
"moregames_btn"Symbol 729 MovieClip {GameOver_mc} [GameOver_mc] Frame 1Symbol 570 MovieClip {MENUS_fla.wood_button_30} [MENUS_fla.wood_button_30]
"score_txt"Symbol 729 MovieClip {GameOver_mc} [GameOver_mc] Frame 1Symbol 697 EditableText
"__id4_"Symbol 729 MovieClip {GameOver_mc} [GameOver_mc] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"submit_btn"Symbol 729 MovieClip {GameOver_mc} [GameOver_mc] Frame 1Symbol 699 MovieClip {MENUS_fla.submitbtn_243} [MENUS_fla.submitbtn_243]
"medal"Symbol 729 MovieClip {GameOver_mc} [GameOver_mc] Frame 1Symbol 712 MovieClip {MENUS_fla.medailles_244} [MENUS_fla.medailles_244]
"stats_btn"Symbol 729 MovieClip {GameOver_mc} [GameOver_mc] Frame 1Symbol 716 MovieClip {MENUS_fla.viewstatsbutton_245} [MENUS_fla.viewstatsbutton_245]
"__id8_"Symbol 729 MovieClip {GameOver_mc} [GameOver_mc] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"name_txt"Symbol 729 MovieClip {GameOver_mc} [GameOver_mc] Frame 1Symbol 717 EditableText
"mainmenu_btn"Symbol 729 MovieClip {GameOver_mc} [GameOver_mc] Frame 1Symbol 723 MovieClip {MENUS_fla.mainmenu_246} [MENUS_fla.mainmenu_246]
"statistics"Symbol 729 MovieClip {GameOver_mc} [GameOver_mc] Frame 1Symbol 728 MovieClip {MENUS_fla.stastistieken_247} [MENUS_fla.stastistieken_247]
"__id17_"Symbol 785 MovieClip {LevelSelectionCampaign_mc} [LevelSelectionCampaign_mc] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"__id18_"Symbol 785 MovieClip {LevelSelectionCampaign_mc} [LevelSelectionCampaign_mc] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"level2_icon"Symbol 785 MovieClip {LevelSelectionCampaign_mc} [LevelSelectionCampaign_mc] Frame 1Symbol 759 MovieClip
"level3_icon"Symbol 785 MovieClip {LevelSelectionCampaign_mc} [LevelSelectionCampaign_mc] Frame 1Symbol 759 MovieClip
"level1_icon"Symbol 785 MovieClip {LevelSelectionCampaign_mc} [LevelSelectionCampaign_mc] Frame 1Symbol 759 MovieClip
"level4_icon"Symbol 785 MovieClip {LevelSelectionCampaign_mc} [LevelSelectionCampaign_mc] Frame 1Symbol 759 MovieClip
"level5_icon"Symbol 785 MovieClip {LevelSelectionCampaign_mc} [LevelSelectionCampaign_mc] Frame 1Symbol 759 MovieClip
"level1_btn"Symbol 785 MovieClip {LevelSelectionCampaign_mc} [LevelSelectionCampaign_mc] Frame 1Symbol 768 MovieClip {MENUS_fla.Slamming1_btn_159} [MENUS_fla.Slamming1_btn_159]
"level2_btn"Symbol 785 MovieClip {LevelSelectionCampaign_mc} [LevelSelectionCampaign_mc] Frame 1Symbol 772 MovieClip {MENUS_fla.Slamming2_btn_161} [MENUS_fla.Slamming2_btn_161]
"level3_btn"Symbol 785 MovieClip {LevelSelectionCampaign_mc} [LevelSelectionCampaign_mc] Frame 1Symbol 777 MovieClip {MENUS_fla.Slamming3_btn_162} [MENUS_fla.Slamming3_btn_162]
"level4_btn"Symbol 785 MovieClip {LevelSelectionCampaign_mc} [LevelSelectionCampaign_mc] Frame 1Symbol 781 MovieClip {MENUS_fla.Slamming4_btn_163} [MENUS_fla.Slamming4_btn_163]
"level5_btn"Symbol 785 MovieClip {LevelSelectionCampaign_mc} [LevelSelectionCampaign_mc] Frame 1Symbol 784 MovieClip {MENUS_fla.Slamming5_btn_164} [MENUS_fla.Slamming5_btn_164]
"back_btn"Symbol 785 MovieClip {LevelSelectionCampaign_mc} [LevelSelectionCampaign_mc] Frame 1Symbol 514 MovieClip {MENUS_fla.back_127} [MENUS_fla.back_127]
"moregames_btn"Symbol 785 MovieClip {LevelSelectionCampaign_mc} [LevelSelectionCampaign_mc] Frame 1Symbol 571 MovieClip {MENUS_fla.moregamesbnt_29} [MENUS_fla.moregamesbnt_29]
"back_btn"Symbol 818 MovieClip {LevelSelectionGodMode_mc} [LevelSelectionGodMode_mc] Frame 1Symbol 514 MovieClip {MENUS_fla.back_127} [MENUS_fla.back_127]
"__id15_"Symbol 818 MovieClip {LevelSelectionGodMode_mc} [LevelSelectionGodMode_mc] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"level2_icon"Symbol 818 MovieClip {LevelSelectionGodMode_mc} [LevelSelectionGodMode_mc] Frame 1Symbol 759 MovieClip
"level3_icon"Symbol 818 MovieClip {LevelSelectionGodMode_mc} [LevelSelectionGodMode_mc] Frame 1Symbol 759 MovieClip
"level1_icon"Symbol 818 MovieClip {LevelSelectionGodMode_mc} [LevelSelectionGodMode_mc] Frame 1Symbol 759 MovieClip
"level4_icon"Symbol 818 MovieClip {LevelSelectionGodMode_mc} [LevelSelectionGodMode_mc] Frame 1Symbol 759 MovieClip
"level5_icon"Symbol 818 MovieClip {LevelSelectionGodMode_mc} [LevelSelectionGodMode_mc] Frame 1Symbol 759 MovieClip
"level1_btn"Symbol 818 MovieClip {LevelSelectionGodMode_mc} [LevelSelectionGodMode_mc] Frame 1Symbol 768 MovieClip {MENUS_fla.Slamming1_btn_159} [MENUS_fla.Slamming1_btn_159]
"level2_btn"Symbol 818 MovieClip {LevelSelectionGodMode_mc} [LevelSelectionGodMode_mc] Frame 1Symbol 772 MovieClip {MENUS_fla.Slamming2_btn_161} [MENUS_fla.Slamming2_btn_161]
"level3_btn"Symbol 818 MovieClip {LevelSelectionGodMode_mc} [LevelSelectionGodMode_mc] Frame 1Symbol 777 MovieClip {MENUS_fla.Slamming3_btn_162} [MENUS_fla.Slamming3_btn_162]
"level4_btn"Symbol 818 MovieClip {LevelSelectionGodMode_mc} [LevelSelectionGodMode_mc] Frame 1Symbol 781 MovieClip {MENUS_fla.Slamming4_btn_163} [MENUS_fla.Slamming4_btn_163]
"level5_btn"Symbol 818 MovieClip {LevelSelectionGodMode_mc} [LevelSelectionGodMode_mc] Frame 1Symbol 784 MovieClip {MENUS_fla.Slamming5_btn_164} [MENUS_fla.Slamming5_btn_164]
"__id16_"Symbol 818 MovieClip {LevelSelectionGodMode_mc} [LevelSelectionGodMode_mc] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"moregames_btn"Symbol 818 MovieClip {LevelSelectionGodMode_mc} [LevelSelectionGodMode_mc] Frame 1Symbol 571 MovieClip {MENUS_fla.moregamesbnt_29} [MENUS_fla.moregamesbnt_29]
"__id12_"Symbol 879 MovieClip {Highscore_mc} [Highscore_mc] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"back_btn"Symbol 879 MovieClip {Highscore_mc} [Highscore_mc] Frame 1Symbol 514 MovieClip {MENUS_fla.back_127} [MENUS_fla.back_127]
"moregames_btn"Symbol 879 MovieClip {Highscore_mc} [Highscore_mc] Frame 1Symbol 571 MovieClip {MENUS_fla.moregamesbnt_29} [MENUS_fla.moregamesbnt_29]
"comboText"Symbol 990 MovieClip {ui_stuff_fla.tween_22} [ui_stuff_fla.tween_22] Frame 1Symbol 989 EditableText
"tween"Symbol 991 MovieClip {ui_stuff_fla.comboTextClip_21} [ui_stuff_fla.comboTextClip_21] Frame 1Symbol 990 MovieClip {ui_stuff_fla.tween_22} [ui_stuff_fla.tween_22]
"clock"Symbol 994 MovieClip {ComboCounter_mc} [ComboCounter_mc] Frame 1Symbol 988 MovieClip
"text_mc"Symbol 994 MovieClip {ComboCounter_mc} [ComboCounter_mc] Frame 1Symbol 991 MovieClip {ui_stuff_fla.comboTextClip_21} [ui_stuff_fla.comboTextClip_21]
"score_txt"Symbol 994 MovieClip {ComboCounter_mc} [ComboCounter_mc] Frame 1Symbol 993 EditableText
"__id23_"Symbol 995 MovieClip {MENUS_fla.mainmenu_button_98} [MENUS_fla.mainmenu_button_98] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"__id24_"Symbol 996 MovieClip {MENUS_fla.returntogamebutton_99} [MENUS_fla.returntogamebutton_99] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"__id26_"Symbol 997 MovieClip {MENUS_fla.howtoplaybtn_100} [MENUS_fla.howtoplaybtn_100] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"__id22_"Symbol 998 MovieClip {Paused_mc} [Paused_mc] Frame 1Symbol 106 MovieClip {spill.localisation.LocalizedTextField} [spill.localisation.LocalizedTextField]
"mainmenu_btn"Symbol 998 MovieClip {Paused_mc} [Paused_mc] Frame 1Symbol 995 MovieClip {MENUS_fla.mainmenu_button_98} [MENUS_fla.mainmenu_button_98]
"resume_btn"Symbol 998 MovieClip {Paused_mc} [Paused_mc] Frame 1Symbol 996 MovieClip {MENUS_fla.returntogamebutton_99} [MENUS_fla.returntogamebutton_99]
"qualityControl"Symbol 998 MovieClip {Paused_mc} [Paused_mc] Frame 1Symbol 579 MovieClip {MENUS_fla.qualityschuifje_68} [MENUS_fla.qualityschuifje_68]
"music"Symbol 998 MovieClip {Paused_mc} [Paused_mc] Frame 1Symbol 581 MovieClip {MENUS_fla.backgroundvolume_72} [MENUS_fla.backgroundvolume_72]
"sound"Symbol 998 MovieClip {Paused_mc} [Paused_mc] Frame 1Symbol 581 MovieClip {MENUS_fla.backgroundvolume_72} [MENUS_fla.backgroundvolume_72]
"htp"Symbol 998 MovieClip {Paused_mc} [Paused_mc] Frame 1Symbol 997 MovieClip {MENUS_fla.howtoplaybtn_100} [MENUS_fla.howtoplaybtn_100]
"lives_text"Symbol 1056 MovieClip {Progress_bar} [Progress_bar] Frame 1Symbol 1049 EditableText
"bar"Symbol 1056 MovieClip {Progress_bar} [Progress_bar] Frame 1Symbol 1052 MovieClip
"numberSlammings"Symbol 1056 MovieClip {Progress_bar} [Progress_bar] Frame 1Symbol 1055 EditableText
"body_new"Symbol 1118 MovieClip {Slamming1_fla.lijf_19} [Slamming1_fla.lijf_19] Frame 1Symbol 1114 MovieClip
"wings_flying"Symbol 1120 MovieClip {Lemming1} [Lemming1] Frame 1Symbol 1093 MovieClip
"wings_normal"Symbol 1120 MovieClip {Lemming1} [Lemming1] Frame 1Symbol 1094 MovieClip
"body_dead"Symbol 1120 MovieClip {Lemming1} [Lemming1] Frame 1Symbol 1097 MovieClip {Slamming1_fla.lemming_dood2_4} [Slamming1_fla.lemming_dood2_4]
"feet"Symbol 1120 MovieClip {Lemming1} [Lemming1] Frame 1Symbol 1098 MovieClip
"body_drowning"Symbol 1120 MovieClip {Lemming1} [Lemming1] Frame 1Symbol 1105 MovieClip {Lemming1_drowning} [Lemming1_drowning]
"body_angry"Symbol 1120 MovieClip {Lemming1} [Lemming1] Frame 1Symbol 1108 MovieClip
"body_scared"Symbol 1120 MovieClip {Lemming1} [Lemming1] Frame 1Symbol 1103 MovieClip
"body_falling"Symbol 1120 MovieClip {Lemming1} [Lemming1] Frame 1Symbol 1111 MovieClip {lemming1_valt} [lemming1_valt]
"nose"Symbol 1120 MovieClip {Lemming1} [Lemming1] Frame 1Symbol 1112 MovieClip {Nose} [Nose]
"body_normal"Symbol 1120 MovieClip {Lemming1} [Lemming1] Frame 1Symbol 1118 MovieClip {Slamming1_fla.lijf_19} [Slamming1_fla.lijf_19]
"arm"Symbol 1120 MovieClip {Lemming1} [Lemming1] Frame 1Symbol 1119 MovieClip {Arm} [Arm]
"feet"Symbol 1156 MovieClip {Eindbaas_2_fla.grotevoeten_lopen_10} [Eindbaas_2_fla.grotevoeten_lopen_10] Frame 1Symbol 1155 MovieClip
"body_dead"Symbol 1172 MovieClip {Boss_2} [Boss_2] Frame 1Symbol 1142 MovieClip {Eindbaas_2_fla.boss_dead_2} [Eindbaas_2_fla.boss_dead_2]
"body_angry"Symbol 1172 MovieClip {Boss_2} [Boss_2] Frame 1Symbol 1150 MovieClip
"body_falling"Symbol 1172 MovieClip {Boss_2} [Boss_2] Frame 1Symbol 1153 MovieClip
"feet"Symbol 1172 MovieClip {Boss_2} [Boss_2] Frame 1Symbol 1156 MovieClip {Eindbaas_2_fla.grotevoeten_lopen_10} [Eindbaas_2_fla.grotevoeten_lopen_10]
"nose"Symbol 1172 MovieClip {Boss_2} [Boss_2] Frame 1Symbol 1159 MovieClip
"body_normal"Symbol 1172 MovieClip {Boss_2} [Boss_2] Frame 1Symbol 1167 MovieClip
"body_scared"Symbol 1172 MovieClip {Boss_2} [Boss_2] Frame 1Symbol 1169 MovieClip
"arm"Symbol 1172 MovieClip {Boss_2} [Boss_2] Frame 1Symbol 1171 MovieClip
"feet"Symbol 1195 MovieClip {Eindbaas_3_fla.grotevoeten_lopen_10} [Eindbaas_3_fla.grotevoeten_lopen_10] Frame 1Symbol 1155 MovieClip
"body_dead"Symbol 1202 MovieClip {Boss_3} [Boss_3] Frame 1Symbol 1183 MovieClip {Eindbaas_3_fla.boss_dead_2} [Eindbaas_3_fla.boss_dead_2]
"body_angry"Symbol 1202 MovieClip {Boss_3} [Boss_3] Frame 1Symbol 1191 MovieClip
"body_falling"Symbol 1202 MovieClip {Boss_3} [Boss_3] Frame 1Symbol 1194 MovieClip
"feet"Symbol 1202 MovieClip {Boss_3} [Boss_3] Frame 1Symbol 1195 MovieClip {Eindbaas_3_fla.grotevoeten_lopen_10} [Eindbaas_3_fla.grotevoeten_lopen_10]
"nose"Symbol 1202 MovieClip {Boss_3} [Boss_3] Frame 1Symbol 1159 MovieClip
"body_normal"Symbol 1202 MovieClip {Boss_3} [Boss_3] Frame 1Symbol 1199 MovieClip
"body_scared"Symbol 1202 MovieClip {Boss_3} [Boss_3] Frame 1Symbol 1201 MovieClip
"arm"Symbol 1202 MovieClip {Boss_3} [Boss_3] Frame 1Symbol 1171 MovieClip
"body_new"Symbol 1262 MovieClip {Slamming3_fla.lijf_21} [Slamming3_fla.lijf_21] Frame 1Symbol 1261 MovieClip
"nose"Symbol 1264 MovieClip {Slamming3_mc} [Slamming3_mc] Frame 1Symbol 1226 MovieClip
"wings_flying"Symbol 1264 MovieClip {Slamming3_mc} [Slamming3_mc] Frame 1Symbol 1230 MovieClip
"wings_normal"Symbol 1264 MovieClip {Slamming3_mc} [Slamming3_mc] Frame 1Symbol 1231 MovieClip
"body_dead"Symbol 1264 MovieClip {Slamming3_mc} [Slamming3_mc] Frame 1Symbol 1237 MovieClip {Slamming3_fla.lemming_dood2_6} [Slamming3_fla.lemming_dood2_6]
"feet"Symbol 1264 MovieClip {Slamming3_mc} [Slamming3_mc] Frame 1Symbol 1098 MovieClip
"body_drowning"Symbol 1264 MovieClip {Slamming3_mc} [Slamming3_mc] Frame 1Symbol 1252 MovieClip
"body_angry"Symbol 1264 MovieClip {Slamming3_mc} [Slamming3_mc] Frame 1Symbol 1255 MovieClip
"body_scared"Symbol 1264 MovieClip {Slamming3_mc} [Slamming3_mc] Frame 1Symbol 1250 MovieClip
"body_falling"Symbol 1264 MovieClip {Slamming3_mc} [Slamming3_mc] Frame 1Symbol 1258 MovieClip
"body_normal"Symbol 1264 MovieClip {Slamming3_mc} [Slamming3_mc] Frame 1Symbol 1262 MovieClip {Slamming3_fla.lijf_21} [Slamming3_fla.lijf_21]
"arm"Symbol 1264 MovieClip {Slamming3_mc} [Slamming3_mc] Frame 1Symbol 1263 MovieClip {Arm3} [Arm3]
"body_new"Symbol 1291 MovieClip {Slamming2_fla.lijf_20} [Slamming2_fla.lijf_20] Frame 1Symbol 1290 MovieClip
"wings_flying"Symbol 1293 MovieClip {Slamming2_mc} [Slamming2_mc] Frame 1Symbol 1230 MovieClip
"wings_normal"Symbol 1293 MovieClip {Slamming2_mc} [Slamming2_mc] Frame 1Symbol 1231 MovieClip
"body_dead"Symbol 1293 MovieClip {Slamming2_mc} [Slamming2_mc] Frame 1Symbol 1273 MovieClip {Slamming2_fla.lemming_dood2_5} [Slamming2_fla.lemming_dood2_5]
"feet"Symbol 1293 MovieClip {Slamming2_mc} [Slamming2_mc] Frame 1Symbol 1098 MovieClip
"body_drowning"Symbol 1293 MovieClip {Slamming2_mc} [Slamming2_mc] Frame 1Symbol 1282 MovieClip
"body_angry"Symbol 1293 MovieClip {Slamming2_mc} [Slamming2_mc] Frame 1Symbol 1285 MovieClip
"body_scared"Symbol 1293 MovieClip {Slamming2_mc} [Slamming2_mc] Frame 1Symbol 1279 MovieClip
"body_falling"Symbol 1293 MovieClip {Slamming2_mc} [Slamming2_mc] Frame 1Symbol 1288 MovieClip
"nose"Symbol 1293 MovieClip {Slamming2_mc} [Slamming2_mc] Frame 1Symbol 1286 MovieClip
"body_normal"Symbol 1293 MovieClip {Slamming2_mc} [Slamming2_mc] Frame 1Symbol 1291 MovieClip {Slamming2_fla.lijf_20} [Slamming2_fla.lijf_20]
"arm"Symbol 1293 MovieClip {Slamming2_mc} [Slamming2_mc] Frame 1Symbol 1292 MovieClip
"feet"Symbol 1316 MovieClip {Eindbaas_1_fla.grotevoeten_lopen_10} [Eindbaas_1_fla.grotevoeten_lopen_10] Frame 1Symbol 1155 MovieClip
"body_dead"Symbol 1323 MovieClip {Boss_1} [Boss_1] Frame 1Symbol 1304 MovieClip {Eindbaas_1_fla.boss_dead_2} [Eindbaas_1_fla.boss_dead_2]
"body_angry"Symbol 1323 MovieClip {Boss_1} [Boss_1] Frame 1Symbol 1312 MovieClip
"body_falling"Symbol 1323 MovieClip {Boss_1} [Boss_1] Frame 1Symbol 1315 MovieClip
"feet"Symbol 1323 MovieClip {Boss_1} [Boss_1] Frame 1Symbol 1316 MovieClip {Eindbaas_1_fla.grotevoeten_lopen_10} [Eindbaas_1_fla.grotevoeten_lopen_10]
"nose"Symbol 1323 MovieClip {Boss_1} [Boss_1] Frame 1Symbol 1159 MovieClip
"body_normal"Symbol 1323 MovieClip {Boss_1} [Boss_1] Frame 1Symbol 1320 MovieClip
"body_scared"Symbol 1323 MovieClip {Boss_1} [Boss_1] Frame 1Symbol 1322 MovieClip
"arm"Symbol 1323 MovieClip {Boss_1} [Boss_1] Frame 1Symbol 1171 MovieClip
"feet"Symbol 1346 MovieClip {Eindbaas_4_fla.grotevoeten_lopen_10} [Eindbaas_4_fla.grotevoeten_lopen_10] Frame 1Symbol 1155 MovieClip
"body_dead"Symbol 1353 MovieClip {Boss_4} [Boss_4] Frame 1Symbol 1333 MovieClip {Eindbaas_4_fla.boss_dead_2} [Eindbaas_4_fla.boss_dead_2]
"body_angry"Symbol 1353 MovieClip {Boss_4} [Boss_4] Frame 1Symbol 1341 MovieClip
"body_falling"Symbol 1353 MovieClip {Boss_4} [Boss_4] Frame 1Symbol 1345 MovieClip
"feet"Symbol 1353 MovieClip {Boss_4} [Boss_4] Frame 1Symbol 1346 MovieClip {Eindbaas_4_fla.grotevoeten_lopen_10} [Eindbaas_4_fla.grotevoeten_lopen_10]
"nose"Symbol 1353 MovieClip {Boss_4} [Boss_4] Frame 1Symbol 1159 MovieClip
"body_normal"Symbol 1353 MovieClip {Boss_4} [Boss_4] Frame 1Symbol 1350 MovieClip
"body_scared"Symbol 1353 MovieClip {Boss_4} [Boss_4] Frame 1Symbol 1352 MovieClip
"arm"Symbol 1353 MovieClip {Boss_4} [Boss_4] Frame 1Symbol 1171 MovieClip
"nose"Symbol 1396 MovieClip {Slamming4_mc} [Slamming4_mc] Frame 1Symbol 1226 MovieClip
"body_dead"Symbol 1396 MovieClip {Slamming4_mc} [Slamming4_mc] Frame 1Symbol 1371 MovieClip {Slamming4_fla.lemming_dood2_3} [Slamming4_fla.lemming_dood2_3]
"feet"Symbol 1396 MovieClip {Slamming4_mc} [Slamming4_mc] Frame 1Symbol 1098 MovieClip
"body_drowning"Symbol 1396 MovieClip {Slamming4_mc} [Slamming4_mc] Frame 1Symbol 1379 MovieClip
"body_angry"Symbol 1396 MovieClip {Slamming4_mc} [Slamming4_mc] Frame 1Symbol 1382 MovieClip
"body_scared"Symbol 1396 MovieClip {Slamming4_mc} [Slamming4_mc] Frame 1Symbol 1387 MovieClip
"body_falling"Symbol 1396 MovieClip {Slamming4_mc} [Slamming4_mc] Frame 1Symbol 1391 MovieClip
"body_normal"Symbol 1396 MovieClip {Slamming4_mc} [Slamming4_mc] Frame 1Symbol 1394 MovieClip
"arm"Symbol 1396 MovieClip {Slamming4_mc} [Slamming4_mc] Frame 1Symbol 1395 MovieClip
"bg"Symbol 1400 MovieClip {Tooltip_mc} [Tooltip_mc] Frame 1Symbol 1398 MovieClip {TooltipBackground} [TooltipBackground]
"txt"Symbol 1400 MovieClip {Tooltip_mc} [Tooltip_mc] Frame 1Symbol 1399 EditableText
"feet"Symbol 1423 MovieClip {Eindbaas_5_fla.grotevoeten_lopen_10} [Eindbaas_5_fla.grotevoeten_lopen_10] Frame 1Symbol 1155 MovieClip
"body_dead"Symbol 1430 MovieClip {Boss_5} [Boss_5] Frame 1Symbol 1411 MovieClip {Eindbaas_5_fla.boss_dead_2} [Eindbaas_5_fla.boss_dead_2]
"body_angry"Symbol 1430 MovieClip {Boss_5} [Boss_5] Frame 1Symbol 1419 MovieClip
"body_falling"Symbol 1430 MovieClip {Boss_5} [Boss_5] Frame 1Symbol 1422 MovieClip
"feet"Symbol 1430 MovieClip {Boss_5} [Boss_5] Frame 1Symbol 1423 MovieClip {Eindbaas_5_fla.grotevoeten_lopen_10} [Eindbaas_5_fla.grotevoeten_lopen_10]
"nose"Symbol 1430 MovieClip {Boss_5} [Boss_5] Frame 1Symbol 1159 MovieClip
"body_normal"Symbol 1430 MovieClip {Boss_5} [Boss_5] Frame 1Symbol 1427 MovieClip
"body_scared"Symbol 1430 MovieClip {Boss_5} [Boss_5] Frame 1Symbol 1429 MovieClip
"arm"Symbol 1430 MovieClip {Boss_5} [Boss_5] Frame 1Symbol 1171 MovieClip
"nose"Symbol 1463 MovieClip {Slamming5_mc} [Slamming5_mc] Frame 1Symbol 1435 MovieClip
"body_dead"Symbol 1463 MovieClip {Slamming5_mc} [Slamming5_mc] Frame 1Symbol 1440 MovieClip {Slamming5_fla.lemming_dood2_3} [Slamming5_fla.lemming_dood2_3]
"feet"Symbol 1463 MovieClip {Slamming5_mc} [Slamming5_mc] Frame 1Symbol 1098 MovieClip
"body_drowning"Symbol 1463 MovieClip {Slamming5_mc} [Slamming5_mc] Frame 1Symbol 1450 MovieClip
"body_angry"Symbol 1463 MovieClip {Slamming5_mc} [Slamming5_mc] Frame 1Symbol 1453 MovieClip
"body_scared"Symbol 1463 MovieClip {Slamming5_mc} [Slamming5_mc] Frame 1Symbol 1455 MovieClip
"body_falling"Symbol 1463 MovieClip {Slamming5_mc} [Slamming5_mc] Frame 1Symbol 1458 MovieClip
"body_normal"Symbol 1463 MovieClip {Slamming5_mc} [Slamming5_mc] Frame 1Symbol 1461 MovieClip
"arm"Symbol 1463 MovieClip {Slamming5_mc} [Slamming5_mc] Frame 1Symbol 1462 MovieClip
"amount_text"Symbol 1470 MovieClip {Button_background} [Button_background] Frame 1Symbol 1468 EditableText
"key_text"Symbol 1470 MovieClip {Button_background} [Button_background] Frame 1Symbol 1469 EditableText
"scissor"Symbol 1486 MovieClip {Scissor_cursor} [Scissor_cursor] Frame 18Symbol 1485 MovieClip
"pen_fill"Symbol 1508 MovieClip {Pen_cursor} [Pen_cursor] Frame 1Symbol 1507 MovieClip
"languageName_text"Symbol 1636 MovieClip {spill.localisation.LanguageSelectBox_mc} [spill.localisation.LanguageSelectBox_mc] Frame 1Symbol 1614 EditableText
"flag"Symbol 1636 MovieClip {spill.localisation.LanguageSelectBox_mc} [spill.localisation.LanguageSelectBox_mc] Frame 1Symbol 1635 MovieClip {MENUS_fla.flag_icon_251} [MENUS_fla.flag_icon_251]
"flag"Symbol 1642 MovieClip {MENUS_fla.l_br_253} [MENUS_fla.l_br_253] Frame 1Symbol 1635 MovieClip {MENUS_fla.flag_icon_251} [MENUS_fla.flag_icon_251]
"text"Symbol 1642 MovieClip {MENUS_fla.l_br_253} [MENUS_fla.l_br_253] Frame 1Symbol 1641 EditableText
"l_cn"Symbol 1643 MovieClip {spill.localisation.LanguageSelectPopup_mc} [spill.localisation.LanguageSelectPopup_mc] Frame 1Symbol 1642 MovieClip {MENUS_fla.l_br_253} [MENUS_fla.l_br_253]
"l_br"Symbol 1643 MovieClip {spill.localisation.LanguageSelectPopup_mc} [spill.localisation.LanguageSelectPopup_mc] Frame 1Symbol 1642 MovieClip {MENUS_fla.l_br_253} [MENUS_fla.l_br_253]
"l_es"Symbol 1643 MovieClip {spill.localisation.LanguageSelectPopup_mc} [spill.localisation.LanguageSelectPopup_mc] Frame 1Symbol 1642 MovieClip {MENUS_fla.l_br_253} [MENUS_fla.l_br_253]
"l_de"Symbol 1643 MovieClip {spill.localisation.LanguageSelectPopup_mc} [spill.localisation.LanguageSelectPopup_mc] Frame 1Symbol 1642 MovieClip {MENUS_fla.l_br_253} [MENUS_fla.l_br_253]
"l_id"Symbol 1643 MovieClip {spill.localisation.LanguageSelectPopup_mc} [spill.localisation.LanguageSelectPopup_mc] Frame 1Symbol 1642 MovieClip {MENUS_fla.l_br_253} [MENUS_fla.l_br_253]
"l_fr"Symbol 1643 MovieClip {spill.localisation.LanguageSelectPopup_mc} [spill.localisation.LanguageSelectPopup_mc] Frame 1Symbol 1642 MovieClip {MENUS_fla.l_br_253} [MENUS_fla.l_br_253]
"l_it"Symbol 1643 MovieClip {spill.localisation.LanguageSelectPopup_mc} [spill.localisation.LanguageSelectPopup_mc] Frame 1Symbol 1642 MovieClip {MENUS_fla.l_br_253} [MENUS_fla.l_br_253]
"l_in"Symbol 1643 MovieClip {spill.localisation.LanguageSelectPopup_mc} [spill.localisation.LanguageSelectPopup_mc] Frame 1Symbol 1642 MovieClip {MENUS_fla.l_br_253} [MENUS_fla.l_br_253]
"l_my"Symbol 1643 MovieClip {spill.localisation.LanguageSelectPopup_mc} [spill.localisation.LanguageSelectPopup_mc] Frame 1Symbol 1642 MovieClip {MENUS_fla.l_br_253} [MENUS_fla.l_br_253]
"l_jp"Symbol 1643 MovieClip {spill.localisation.LanguageSelectPopup_mc} [spill.localisation.LanguageSelectPopup_mc] Frame 1Symbol 1642 MovieClip {MENUS_fla.l_br_253} [MENUS_fla.l_br_253]
"l_pl"Symbol 1643 MovieClip {spill.localisation.LanguageSelectPopup_mc} [spill.localisation.LanguageSelectPopup_mc] Frame 1Symbol 1642 MovieClip {MENUS_fla.l_br_253} [MENUS_fla.l_br_253]
"l_nl"Symbol 1643 MovieClip {spill.localisation.LanguageSelectPopup_mc} [spill.localisation.LanguageSelectPopup_mc] Frame 1Symbol 1642 MovieClip {MENUS_fla.l_br_253} [MENUS_fla.l_br_253]
"l_ru"Symbol 1643 MovieClip {spill.localisation.LanguageSelectPopup_mc} [spill.localisation.LanguageSelectPopup_mc] Frame 1Symbol 1642 MovieClip {MENUS_fla.l_br_253} [MENUS_fla.l_br_253]
"l_pt"Symbol 1643 MovieClip {spill.localisation.LanguageSelectPopup_mc} [spill.localisation.LanguageSelectPopup_mc] Frame 1Symbol 1642 MovieClip {MENUS_fla.l_br_253} [MENUS_fla.l_br_253]
"l_tr"Symbol 1643 MovieClip {spill.localisation.LanguageSelectPopup_mc} [spill.localisation.LanguageSelectPopup_mc] Frame 1Symbol 1642 MovieClip {MENUS_fla.l_br_253} [MENUS_fla.l_br_253]
"l_se"Symbol 1643 MovieClip {spill.localisation.LanguageSelectPopup_mc} [spill.localisation.LanguageSelectPopup_mc] Frame 1Symbol 1642 MovieClip {MENUS_fla.l_br_253} [MENUS_fla.l_br_253]
"l_en_us"Symbol 1643 MovieClip {spill.localisation.LanguageSelectPopup_mc} [spill.localisation.LanguageSelectPopup_mc] Frame 1Symbol 1642 MovieClip {MENUS_fla.l_br_253} [MENUS_fla.l_br_253]
"l_en_uk"Symbol 1643 MovieClip {spill.localisation.LanguageSelectPopup_mc} [spill.localisation.LanguageSelectPopup_mc] Frame 1Symbol 1642 MovieClip {MENUS_fla.l_br_253} [MENUS_fla.l_br_253]

Special Tags

FileAttributes (69)Timeline Frame 1Access network only, Metadata present, AS3.
SWFMetaData (77)Timeline Frame 1458 bytes "<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#'><rdf:Description rdf:about='' xmlns ..."
ScriptLimits (65)Timeline Frame 1MaxRecursionDepth: 1000, ScriptTimeout: 60 seconds
ExportAssets (56)Timeline Frame 1Symbol 109 as "Preloader_mc"
ExportAssets (56)Timeline Frame 1Symbol 101 as "spill.localisation.BrandingLogo"
ExportAssets (56)Timeline Frame 1Symbol 19 as "MENUS_fla.loadingbar_81"
ExportAssets (56)Timeline Frame 1Symbol 106 as "spill.localisation.LocalizedTextField"
ExportAssets (56)Timeline Frame 2Symbol 293 as "O11111OO11"
ExportAssets (56)Timeline Frame 2Symbol 294 as "sfx.TutorialMusic"
ExportAssets (56)Timeline Frame 2Symbol 295 as "sfx.MainScreenMusic"
ExportAssets (56)Timeline Frame 2Symbol 296 as "sfx.LevelCompleteMusic"
ExportAssets (56)Timeline Frame 2Symbol 297 as "sfx.Level3Music"
ExportAssets (56)Timeline Frame 2Symbol 298 as "sfx.Level1Music"
ExportAssets (56)Timeline Frame 2Symbol 299 as "sfx.Level2Music"
ExportAssets (56)Timeline Frame 2Symbol 300 as "sfx.LevelFailedMusic"
ExportAssets (56)Timeline Frame 2Symbol 302 as "SlammingStreamMap"
ExportAssets (56)Timeline Frame 2Symbol 307 as "Background_1_mc"
ExportAssets (56)Timeline Frame 2Symbol 321 as "Foreground1"
ExportAssets (56)Timeline Frame 2Symbol 328 as "CombatText_mc"
ExportAssets (56)Timeline Frame 2Symbol 332 as "Paused_button"
ExportAssets (56)Timeline Frame 2Symbol 333 as "sfx.gamepause"
ExportAssets (56)Timeline Frame 2Symbol 336 as "BrandingButton_mc"
ExportAssets (56)Timeline Frame 2Symbol 358 as "Villager_house"
ExportAssets (56)Timeline Frame 2Symbol 361 as "GroundTexture2"
ExportAssets (56)Timeline Frame 2Symbol 364 as "GrassTexture2"
ExportAssets (56)Timeline Frame 2Symbol 366 as "Bridgepart_2"
ExportAssets (56)Timeline Frame 2Symbol 368 as "Fire_mc"
ExportAssets (56)Timeline Frame 2Symbol 373 as "Background2"
ExportAssets (56)Timeline Frame 2Symbol 390 as "Foreground2"
ExportAssets (56)Timeline Frame 2Symbol 393 as "Background4"
ExportAssets (56)Timeline Frame 2Symbol 397 as "Foreground4"
ExportAssets (56)Timeline Frame 2Symbol 400 as "GroundTexture4"
ExportAssets (56)Timeline Frame 2Symbol 402 as "Bridgepart_4"
ExportAssets (56)Timeline Frame 2Symbol 418 as "Toxic_mc"
ExportAssets (56)Timeline Frame 2Symbol 421 as "GrassTexture4"
ExportAssets (56)Timeline Frame 2Symbol 423 as "TutorialVideo2"
ExportAssets (56)Timeline Frame 2Symbol 425 as "TutorialVideo3"
ExportAssets (56)Timeline Frame 2Symbol 427 as "TutorialVideo4"
ExportAssets (56)Timeline Frame 2Symbol 518 as "Tutorial_mc"
ExportAssets (56)Timeline Frame 2Symbol 520 as "TutorialVideo5"
ExportAssets (56)Timeline Frame 2Symbol 522 as "TutorialVideo1"
ExportAssets (56)Timeline Frame 2Symbol 586 as "MainMenu_mc"
ExportAssets (56)Timeline Frame 2Symbol 597 as "LevelModeMenu"
ExportAssets (56)Timeline Frame 2Symbol 599 as "kopimi"
ExportAssets (56)Timeline Frame 2Symbol 729 as "GameOver_mc"
ExportAssets (56)Timeline Frame 2Symbol 785 as "LevelSelectionCampaign_mc"
ExportAssets (56)Timeline Frame 2Symbol 786 as "sfx.levelselect_press"
ExportAssets (56)Timeline Frame 2Symbol 818 as "LevelSelectionGodMode_mc"
ExportAssets (56)Timeline Frame 2Symbol 819 as "sfx.levelselect_touch"
ExportAssets (56)Timeline Frame 2Symbol 821 as "Bridgepart5"
ExportAssets (56)Timeline Frame 2Symbol 853 as "Foreground5"
ExportAssets (56)Timeline Frame 2Symbol 856 as "GroundTexture5"
ExportAssets (56)Timeline Frame 2Symbol 863 as "Background5"
ExportAssets (56)Timeline Frame 2Symbol 866 as "GrassTexture5"
ExportAssets (56)Timeline Frame 2Symbol 879 as "Highscore_mc"
ExportAssets (56)Timeline Frame 2Symbol 175 as "Lethe_Button_Down3"
ExportAssets (56)Timeline Frame 2Symbol 141 as "Lethe_Button_Up"
ExportAssets (56)Timeline Frame 2Symbol 155 as "Lethe_Button_Up2"
ExportAssets (56)Timeline Frame 2Symbol 292 as "Lethe_Alert_Page"
ExportAssets (56)Timeline Frame 2Symbol 122 as "Lethe_LineBack"
ExportAssets (56)Timeline Frame 2Symbol 173 as "Lethe_Button_Down"
ExportAssets (56)Timeline Frame 2Symbol 208 as "COM_LoadingBar"
ExportAssets (56)Timeline Frame 2Symbol 115 as "Lethe_PreviewMc"
ExportAssets (56)Timeline Frame 2Symbol 171 as "Lethe_Button_Up3"
ExportAssets (56)Timeline Frame 2Symbol 124 as "Lethe_LineBack2"
ExportAssets (56)Timeline Frame 2Symbol 118 as "Lethe_BackGround"
ExportAssets (56)Timeline Frame 2Symbol 120 as "Lethe_FocusLine"
ExportAssets (56)Timeline Frame 2Symbol 174 as "Lethe_Button_Down2"
ExportAssets (56)Timeline Frame 2Symbol 882 as "GroundTexture3"
ExportAssets (56)Timeline Frame 2Symbol 884 as "Bridgepart_ice"
ExportAssets (56)Timeline Frame 2Symbol 894 as "Foreground3"
ExportAssets (56)Timeline Frame 2Symbol 896 as "IceTexture"
ExportAssets (56)Timeline Frame 2Symbol 907 as "Background3"
ExportAssets (56)Timeline Frame 2Symbol 908 as "sfx.menu_otherpress"
ExportAssets (56)Timeline Frame 2Symbol 909 as "sfx.menu_touch"
ExportAssets (56)Timeline Frame 2Symbol 913 as "Grab_cursor"
ExportAssets (56)Timeline Frame 2Symbol 324 as "ui_stuff_fla.CombatText_anim_14"
ExportAssets (56)Timeline Frame 2Symbol 914 as "sfx.combo"
ExportAssets (56)Timeline Frame 2Symbol 994 as "ComboCounter_mc"
ExportAssets (56)Timeline Frame 2Symbol 998 as "Paused_mc"
ExportAssets (56)Timeline Frame 2Symbol 1001 as "Texture1"
ExportAssets (56)Timeline Frame 2Symbol 1004 as "Grass"
ExportAssets (56)Timeline Frame 2Symbol 1005 as "sfx.villagerdie2"
ExportAssets (56)Timeline Frame 2Symbol 1006 as "sfx.villagerdie3"
ExportAssets (56)Timeline Frame 2Symbol 1007 as "sfx.villagerdie"
ExportAssets (56)Timeline Frame 2Symbol 1021 as "Drawing_tool"
ExportAssets (56)Timeline Frame 2Symbol 1026 as "Fist_tool"
ExportAssets (56)Timeline Frame 2Symbol 1029 as "Grab_tool"
ExportAssets (56)Timeline Frame 2Symbol 1034 as "Scissor_tool"
ExportAssets (56)Timeline Frame 2Symbol 1038 as "Bomb_tool"
ExportAssets (56)Timeline Frame 2Symbol 1043 as "Spoon_tool"
ExportAssets (56)Timeline Frame 2Symbol 1056 as "Progress_bar"
ExportAssets (56)Timeline Frame 2Symbol 1058 as "Scrollbar_mc"
ExportAssets (56)Timeline Frame 2Symbol 1062 as "LemmingBlip_mc"
ExportAssets (56)Timeline Frame 2Symbol 1064 as "Lemming1_cut1"
ExportAssets (56)Timeline Frame 2Symbol 1067 as "Soul"
ExportAssets (56)Timeline Frame 2Symbol 1069 as "Foot"
ExportAssets (56)Timeline Frame 2Symbol 1085 as "Healthbar_mc"
ExportAssets (56)Timeline Frame 2Symbol 1087 as "Arm_mc"
ExportAssets (56)Timeline Frame 2Symbol 1089 as "Lemming1_cut2"
ExportAssets (56)Timeline Frame 2Symbol 1120 as "Lemming1"
ExportAssets (56)Timeline Frame 2Symbol 1123 as "ArrowDisplay_mc"
ExportAssets (56)Timeline Frame 2Symbol 1126 as "Boss1_arm"
ExportAssets (56)Timeline Frame 2Symbol 1128 as "Boss2_cut1"
ExportAssets (56)Timeline Frame 2Symbol 1130 as "Boss1_feet"
ExportAssets (56)Timeline Frame 2Symbol 1134 as "Boss2_cut2"
ExportAssets (56)Timeline Frame 2Symbol 1172 as "Boss_2"
ExportAssets (56)Timeline Frame 2Symbol 1174 as "Bridge_part"
ExportAssets (56)Timeline Frame 2Symbol 1178 as "Boss3_cut2"
ExportAssets (56)Timeline Frame 2Symbol 1202 as "Boss_3"
ExportAssets (56)Timeline Frame 2Symbol 1204 as "Boss3_cut1"
ExportAssets (56)Timeline Frame 2Symbol 1220 as "Water_mc"
ExportAssets (56)Timeline Frame 2Symbol 1222 as "Slamming3_cut1"
ExportAssets (56)Timeline Frame 2Symbol 1224 as "Arm3_mc"
ExportAssets (56)Timeline Frame 2Symbol 1264 as "Slamming3_mc"
ExportAssets (56)Timeline Frame 2Symbol 1267 as "Slamming3_cut2"
ExportAssets (56)Timeline Frame 2Symbol 1269 as "Slamming2_cut1"
ExportAssets (56)Timeline Frame 2Symbol 1293 as "Slamming2_mc"
ExportAssets (56)Timeline Frame 2Symbol 1295 as "Slamming2_cut2"
ExportAssets (56)Timeline Frame 2Symbol 1299 as "Boss1_cut2"
ExportAssets (56)Timeline Frame 2Symbol 1323 as "Boss_1"
ExportAssets (56)Timeline Frame 2Symbol 1325 as "Boss1_cut1"
ExportAssets (56)Timeline Frame 2Symbol 1327 as "Boss4_cut1"
ExportAssets (56)Timeline Frame 2Symbol 1353 as "Boss_4"
ExportAssets (56)Timeline Frame 2Symbol 1355 as "Boss4_cut2"
ExportAssets (56)Timeline Frame 2Symbol 1357 as "Arm4_mc"
ExportAssets (56)Timeline Frame 2Symbol 1359 as "Slamming4_cut1"
ExportAssets (56)Timeline Frame 2Symbol 1368 as "Slamming4_cut2"
ExportAssets (56)Timeline Frame 2Symbol 1396 as "Slamming4_mc"
ExportAssets (56)Timeline Frame 2Symbol 455 as "MENUS_fla.button_tut2_110"
ExportAssets (56)Timeline Frame 2Symbol 514 as "MENUS_fla.back_127"
ExportAssets (56)Timeline Frame 2Symbol 467 as "MENUS_fla.button_tut5_113"
ExportAssets (56)Timeline Frame 2Symbol 517 as "MENUS_fla.skip_129"
ExportAssets (56)Timeline Frame 2Symbol 502 as "MENUS_fla.achter_tv_120"
ExportAssets (56)Timeline Frame 2Symbol 459 as "MENUS_fla.button_tut3_111"
ExportAssets (56)Timeline Frame 2Symbol 463 as "MENUS_fla.button_tut4_112"
ExportAssets (56)Timeline Frame 2Symbol 536 as "MENUS_fla.bord_animatie_6"
ExportAssets (56)Timeline Frame 2Symbol 579 as "MENUS_fla.qualityschuifje_68"
ExportAssets (56)Timeline Frame 2Symbol 580 as "spill.localisation.LanguageSelectBox"
ExportAssets (56)Timeline Frame 2Symbol 565 as "MENUS_fla.highscores_20"
ExportAssets (56)Timeline Frame 2Symbol 571 as "MENUS_fla.moregamesbnt_29"
ExportAssets (56)Timeline Frame 2Symbol 550 as "MENUS_fla.hand_8"
ExportAssets (56)Timeline Frame 2Symbol 566 as "MENUS_fla.howtoplay_27"
ExportAssets (56)Timeline Frame 2Symbol 581 as "MENUS_fla.backgroundvolume_72"
ExportAssets (56)Timeline Frame 2Symbol 568 as "MENUS_fla.startgame_28"
ExportAssets (56)Timeline Frame 2Symbol 555 as "spill.localisation.SpilGamesLink"
ExportAssets (56)Timeline Frame 2Symbol 596 as "MENUS_fla.cancelbtn_96"
ExportAssets (56)Timeline Frame 2Symbol 595 as "MENUS_fla.campaignmodebtn_95"
ExportAssets (56)Timeline Frame 2Symbol 594 as "MENUS_fla.godmodebtn_94"
ExportAssets (56)Timeline Frame 2Symbol 716 as "MENUS_fla.viewstatsbutton_245"
ExportAssets (56)Timeline Frame 2Symbol 712 as "MENUS_fla.medailles_244"
ExportAssets (56)Timeline Frame 2Symbol 696 as "MENUS_fla.retrybtn_242"
ExportAssets (56)Timeline Frame 2Symbol 723 as "MENUS_fla.mainmenu_246"
ExportAssets (56)Timeline Frame 2Symbol 684 as "MENUS_fla.mainmenubutton_239"
ExportAssets (56)Timeline Frame 2Symbol 570 as "MENUS_fla.wood_button_30"
ExportAssets (56)Timeline Frame 2Symbol 699 as "MENUS_fla.submitbtn_243"
ExportAssets (56)Timeline Frame 2Symbol 695 as "MENUS_fla.tekst_bord_241"
ExportAssets (56)Timeline Frame 2Symbol 728 as "MENUS_fla.stastistieken_247"
ExportAssets (56)Timeline Frame 2Symbol 784 as "MENUS_fla.Slamming5_btn_164"
ExportAssets (56)Timeline Frame 2Symbol 772 as "MENUS_fla.Slamming2_btn_161"
ExportAssets (56)Timeline Frame 2Symbol 768 as "MENUS_fla.Slamming1_btn_159"
ExportAssets (56)Timeline Frame 2Symbol 781 as "MENUS_fla.Slamming4_btn_163"
ExportAssets (56)Timeline Frame 2Symbol 777 as "MENUS_fla.Slamming3_btn_162"
ExportAssets (56)Timeline Frame 2Symbol 1400 as "Tooltip_mc"
ExportAssets (56)Timeline Frame 2Symbol 1402 as "Boss5_cut1"
ExportAssets (56)Timeline Frame 2Symbol 1406 as "Boss5_cut2"
ExportAssets (56)Timeline Frame 2Symbol 1430 as "Boss_5"
ExportAssets (56)Timeline Frame 2Symbol 1433 as "Slamming5_cut2"
ExportAssets (56)Timeline Frame 2Symbol 1463 as "Slamming5_mc"
ExportAssets (56)Timeline Frame 2Symbol 1465 as "Slamming5_cut1"
ExportAssets (56)Timeline Frame 2Symbol 1466 as "Arm5_mc"
ExportAssets (56)Timeline Frame 2Symbol 291 as "Lethe_Link_Button"
ExportAssets (56)Timeline Frame 2Symbol 230 as "Lethe_Continue_Button"
ExportAssets (56)Timeline Frame 2Symbol 207 as "Lethe_Loading_Text"
ExportAssets (56)Timeline Frame 2Symbol 205 as "COM_LoadingProgress"
ExportAssets (56)Timeline Frame 2Symbol 201 as "Lethe_Button_Back"
ExportAssets (56)Timeline Frame 2Symbol 991 as "ui_stuff_fla.comboTextClip_21"
ExportAssets (56)Timeline Frame 2Symbol 995 as "MENUS_fla.mainmenu_button_98"
ExportAssets (56)Timeline Frame 2Symbol 997 as "MENUS_fla.howtoplaybtn_100"
ExportAssets (56)Timeline Frame 2Symbol 996 as "MENUS_fla.returntogamebutton_99"
ExportAssets (56)Timeline Frame 2Symbol 1470 as "Button_background"
ExportAssets (56)Timeline Frame 2Symbol 1472 as "DeadVillager3"
ExportAssets (56)Timeline Frame 2Symbol 1474 as "DeadVillager2"
ExportAssets (56)Timeline Frame 2Symbol 1476 as "DeadVillager1"
ExportAssets (56)Timeline Frame 2Symbol 1477 as "sfx.cutnothing"
ExportAssets (56)Timeline Frame 2Symbol 1478 as "sfx.cutbrige"
ExportAssets (56)Timeline Frame 2Symbol 1486 as "Scissor_cursor"
ExportAssets (56)Timeline Frame 2Symbol 1487 as "sfx.cut_slammings"
ExportAssets (56)Timeline Frame 2Symbol 1508 as "Pen_cursor"
ExportAssets (56)Timeline Frame 2Symbol 1509 as "RockBitmap"
ExportAssets (56)Timeline Frame 2Symbol 1510 as "sfx.godhandwind"
ExportAssets (56)Timeline Frame 2Symbol 1511 as "sfx.godhandbang"
ExportAssets (56)Timeline Frame 2Symbol 1526 as "Hand_mc"
ExportAssets (56)Timeline Frame 2Symbol 1528 as "Spoon_anchor_mc"
ExportAssets (56)Timeline Frame 2Symbol 1530 as "Spoon_mc"
ExportAssets (56)Timeline Frame 2Symbol 1481 as "Forbidden"
ExportAssets (56)Timeline Frame 2Symbol 1531 as "sfx.scoopshoot"
ExportAssets (56)Timeline Frame 2Symbol 1532 as "sfx.scoopbuild"
ExportAssets (56)Timeline Frame 2Symbol 1533 as "sfx.bomb"
ExportAssets (56)Timeline Frame 2Symbol 1560 as "Bomb_explode"
ExportAssets (56)Timeline Frame 2Symbol 1562 as "Bomb_cursor"
ExportAssets (56)Timeline Frame 2Symbol 1575 as "Bomb_mc"
ExportAssets (56)Timeline Frame 2Symbol 1576 as "sfx.N_slammings_damage2"
ExportAssets (56)Timeline Frame 2Symbol 1577 as "sfx.N_slammings_getawaysmail"
ExportAssets (56)Timeline Frame 2Symbol 1578 as "sfx.B_slammings_damage2"
ExportAssets (56)Timeline Frame 2Symbol 1579 as "sfx.N_slammings_jump3"
ExportAssets (56)Timeline Frame 2Symbol 1580 as "sfx.N_slammings_jump"
ExportAssets (56)Timeline Frame 2Symbol 1581 as "sfx.N_slammings_pickup3"
ExportAssets (56)Timeline Frame 2Symbol 1582 as "sfx.B_slammings_drowninwater"
ExportAssets (56)Timeline Frame 2Symbol 1583 as "sfx.S_slammings_drownloop"
ExportAssets (56)Timeline Frame 2Symbol 1584 as "sfx.N_slammings_drownloop"
ExportAssets (56)Timeline Frame 2Symbol 1585 as "sfx.S_slammings_burn"
ExportAssets (56)Timeline Frame 2Symbol 1586 as "sfx.N_slammings_burn"
ExportAssets (56)Timeline Frame 2Symbol 1587 as "sfx.B_slammings_die"
ExportAssets (56)Timeline Frame 2Symbol 1588 as "sfx.S_slammings_damage3"
ExportAssets (56)Timeline Frame 2Symbol 1589 as "sfx.S_slammings_damage"
ExportAssets (56)Timeline Frame 2Symbol 1590 as "sfx.N_slammings_damage"
ExportAssets (56)Timeline Frame 2Symbol 1591 as "sfx.S_slammings_getawaysmail2"
ExportAssets (56)Timeline Frame 2Symbol 1592 as "sfx.N_slammings_pickup2"
ExportAssets (56)Timeline Frame 2Symbol 1593 as "sfx.B_slammings_getawaysmail"
ExportAssets (56)Timeline Frame 2Symbol 1594 as "sfx.B_slammings_damage"
ExportAssets (56)Timeline Frame 2Symbol 1595 as "sfx.N_slammings_die2"
ExportAssets (56)Timeline Frame 2Symbol 1596 as "sfx.S_slammings_jump"
ExportAssets (56)Timeline Frame 2Symbol 1597 as "sfx.S_slammings_pickup2"
ExportAssets (56)Timeline Frame 2Symbol 1598 as "sfx.N_slammings_jump2"
ExportAssets (56)Timeline Frame 2Symbol 1599 as "sfx.N_slammings_die"
ExportAssets (56)Timeline Frame 2Symbol 1600 as "sfx.S_slammings_jump2"
ExportAssets (56)Timeline Frame 2Symbol 1601 as "sfx.B_slammings_jump"
ExportAssets (56)Timeline Frame 2Symbol 1602 as "sfx.N_slammings_getawaysmail2"
ExportAssets (56)Timeline Frame 2Symbol 1603 as "sfx.N_slammings_pickup"
ExportAssets (56)Timeline Frame 2Symbol 1604 as "sfx.S_slammings_damage2"
ExportAssets (56)Timeline Frame 2Symbol 1605 as "sfx.S_slammings_getawaysmail"
ExportAssets (56)Timeline Frame 2Symbol 1606 as "sfx.S_slammings_die"
ExportAssets (56)Timeline Frame 2Symbol 1607 as "sfx.S_slammings_jump3"
ExportAssets (56)Timeline Frame 2Symbol 1608 as "sfx.S_slammings_die2"
ExportAssets (56)Timeline Frame 2Symbol 1609 as "sfx.S_slammings_pickup"
ExportAssets (56)Timeline Frame 2Symbol 1610 as "sfx.B_slammings_pickup"
ExportAssets (56)Timeline Frame 2Symbol 1611 as "sfx.B_slammings_burn"
ExportAssets (56)Timeline Frame 2Symbol 1119 as "Arm"
ExportAssets (56)Timeline Frame 2Symbol 1105 as "Lemming1_drowning"
ExportAssets (56)Timeline Frame 2Symbol 1118 as "Slamming1_fla.lijf_19"
ExportAssets (56)Timeline Frame 2Symbol 1097 as "Slamming1_fla.lemming_dood2_4"
ExportAssets (56)Timeline Frame 2Symbol 1111 as "lemming1_valt"
ExportAssets (56)Timeline Frame 2Symbol 1112 as "Nose"
ExportAssets (56)Timeline Frame 2Symbol 1142 as "Eindbaas_2_fla.boss_dead_2"
ExportAssets (56)Timeline Frame 2Symbol 1156 as "Eindbaas_2_fla.grotevoeten_lopen_10"
ExportAssets (56)Timeline Frame 2Symbol 1195 as "Eindbaas_3_fla.grotevoeten_lopen_10"
ExportAssets (56)Timeline Frame 2Symbol 1183 as "Eindbaas_3_fla.boss_dead_2"
ExportAssets (56)Timeline Frame 2Symbol 1263 as "Arm3"
ExportAssets (56)Timeline Frame 2Symbol 1262 as "Slamming3_fla.lijf_21"
ExportAssets (56)Timeline Frame 2Symbol 1237 as "Slamming3_fla.lemming_dood2_6"
ExportAssets (56)Timeline Frame 2Symbol 1273 as "Slamming2_fla.lemming_dood2_5"
ExportAssets (56)Timeline Frame 2Symbol 1291 as "Slamming2_fla.lijf_20"
ExportAssets (56)Timeline Frame 2Symbol 1304 as "Eindbaas_1_fla.boss_dead_2"
ExportAssets (56)Timeline Frame 2Symbol 1316 as "Eindbaas_1_fla.grotevoeten_lopen_10"
ExportAssets (56)Timeline Frame 2Symbol 1333 as "Eindbaas_4_fla.boss_dead_2"
ExportAssets (56)Timeline Frame 2Symbol 1346 as "Eindbaas_4_fla.grotevoeten_lopen_10"
ExportAssets (56)Timeline Frame 2Symbol 1371 as "Slamming4_fla.lemming_dood2_3"
ExportAssets (56)Timeline Frame 2Symbol 573 as "MENUS_fla.qualitybtn_69"
ExportAssets (56)Timeline Frame 2Symbol 1636 as "spill.localisation.LanguageSelectBox_mc"
ExportAssets (56)Timeline Frame 2Symbol 1643 as "spill.localisation.LanguageSelectPopup_mc"
ExportAssets (56)Timeline Frame 2Symbol 727 as "MENUS_fla.statistics_248"
ExportAssets (56)Timeline Frame 2Symbol 1398 as "TooltipBackground"
ExportAssets (56)Timeline Frame 2Symbol 1423 as "Eindbaas_5_fla.grotevoeten_lopen_10"
ExportAssets (56)Timeline Frame 2Symbol 1411 as "Eindbaas_5_fla.boss_dead_2"
ExportAssets (56)Timeline Frame 2Symbol 1440 as "Slamming5_fla.lemming_dood2_3"
ExportAssets (56)Timeline Frame 2Symbol 289 as "O111111Ol111.O111111Ol.O1111111l"
ExportAssets (56)Timeline Frame 2Symbol 248 as "Lethe_txt1"
ExportAssets (56)Timeline Frame 2Symbol 227 as "Lethe_txt2"
ExportAssets (56)Timeline Frame 2Symbol 199 as "Lethe_Text3"
ExportAssets (56)Timeline Frame 2Symbol 990 as "ui_stuff_fla.tween_22"
ExportAssets (56)Timeline Frame 2Symbol 1635 as "MENUS_fla.flag_icon_251"
ExportAssets (56)Timeline Frame 2Symbol 1642 as "MENUS_fla.l_br_253"
SerialNumber (41)Timeline Frame 1

Labels

"Slammings"Frame 1
"start"Frame 2
"www.agame.com"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 1
"www.game.com.cn"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 2
"www.zapjuegos.com"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 3
"www.spel.nl"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 4
"www.jeu.fr"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 5
"www.spielen.com"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 6
"www.clickjogos.com"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 7
"www.giocaregratis.it"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 8
"www.spel.eu"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 9
"www.mygames.co.uk"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 10
"www.flashgames.ru"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 11
"www.game.co.in"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 12
"www.games.co.id"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 13
"www.minigry.pl"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 14
"www.asoyun.com"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 15
"www.game.com.my"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 16
"www.gamesgames.com"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 17
"www.spelletjes.nl"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 18
"www.jeux.fr"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 19
"www.jetztspielen.de"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 20
"www.gry.nl"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 21
"www.spela.se"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 22
"www.gioco.it"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 23
"www.juegos.com"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 24
"www.ojogos.com.br"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 25
"www.ourgames.ru"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 26
"www.games.co.uk"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 27
"www.oyunlar123.com"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 28
"www.girlsgogames.com"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 29
"www.girlsgogames.nl"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 30
"www.girlsgogames.fr"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 31
"www.girlsgogames.de"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 32
"www.girlsgogames.pl"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 33
"www.girlsgogames.se"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 34
"www.girlsgogames.it"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 35
"www.juegosdechicas.com"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 36
"www.girlsgogames.co.uk"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 37
"www.girlsgogames.com.br"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 38
"www.girlsgogames.ru"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 39
"www.girlsgogames.in"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 40
"www.girlsgogamestr.com"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 41
"www.ojogos.pt"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 42
"www.laro.com.ph"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 43
"www.egames.jp"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 44
"www.a10.com"Symbol 101 MovieClip {spill.localisation.BrandingLogo} [spill.localisation.BrandingLogo] Frame 45
"_up"Symbol 332 MovieClip {Paused_button} [Paused_button] Frame 1
"_over"Symbol 332 MovieClip {Paused_button} [Paused_button] Frame 2
"_down"Symbol 332 MovieClip {Paused_button} [Paused_button] Frame 3
"_up"Symbol 451 MovieClip Frame 1
"_over"Symbol 451 MovieClip Frame 2
"_down"Symbol 451 MovieClip Frame 3
"_up"Symbol 455 MovieClip {MENUS_fla.button_tut2_110} [MENUS_fla.button_tut2_110] Frame 1
"_over"Symbol 455 MovieClip {MENUS_fla.button_tut2_110} [MENUS_fla.button_tut2_110] Frame 2
"_down"Symbol 455 MovieClip {MENUS_fla.button_tut2_110} [MENUS_fla.button_tut2_110] Frame 3
"_up"Symbol 459 MovieClip {MENUS_fla.button_tut3_111} [MENUS_fla.button_tut3_111] Frame 1
"_over"Symbol 459 MovieClip {MENUS_fla.button_tut3_111} [MENUS_fla.button_tut3_111] Frame 2
"_down"Symbol 459 MovieClip {MENUS_fla.button_tut3_111} [MENUS_fla.button_tut3_111] Frame 3
"_up"Symbol 463 MovieClip {MENUS_fla.button_tut4_112} [MENUS_fla.button_tut4_112] Frame 1
"_over"Symbol 463 MovieClip {MENUS_fla.button_tut4_112} [MENUS_fla.button_tut4_112] Frame 2
"_down"Symbol 463 MovieClip {MENUS_fla.button_tut4_112} [MENUS_fla.button_tut4_112] Frame 3
"_up"Symbol 467 MovieClip {MENUS_fla.button_tut5_113} [MENUS_fla.button_tut5_113] Frame 1
"_over"Symbol 467 MovieClip {MENUS_fla.button_tut5_113} [MENUS_fla.button_tut5_113] Frame 2
"_down"Symbol 467 MovieClip {MENUS_fla.button_tut5_113} [MENUS_fla.button_tut5_113] Frame 3
"_up"Symbol 514 MovieClip {MENUS_fla.back_127} [MENUS_fla.back_127] Frame 1
"_over"Symbol 514 MovieClip {MENUS_fla.back_127} [MENUS_fla.back_127] Frame 9
"_down"Symbol 514 MovieClip {MENUS_fla.back_127} [MENUS_fla.back_127] Frame 16
"_up"Symbol 517 MovieClip {MENUS_fla.skip_129} [MENUS_fla.skip_129] Frame 1
"_over"Symbol 517 MovieClip {MENUS_fla.skip_129} [MENUS_fla.skip_129] Frame 9
"_down"Symbol 517 MovieClip {MENUS_fla.skip_129} [MENUS_fla.skip_129] Frame 16
"tut1_btn"Symbol 518 MovieClip {Tutorial_mc} [Tutorial_mc] Frame 1
"_up"Symbol 565 MovieClip {MENUS_fla.highscores_20} [MENUS_fla.highscores_20] Frame 1
"_over"Symbol 565 MovieClip {MENUS_fla.highscores_20} [MENUS_fla.highscores_20] Frame 9
"_down"Symbol 565 MovieClip {MENUS_fla.highscores_20} [MENUS_fla.highscores_20] Frame 16
"_up"Symbol 566 MovieClip {MENUS_fla.howtoplay_27} [MENUS_fla.howtoplay_27] Frame 1
"_over"Symbol 566 MovieClip {MENUS_fla.howtoplay_27} [MENUS_fla.howtoplay_27] Frame 9
"_down"Symbol 566 MovieClip {MENUS_fla.howtoplay_27} [MENUS_fla.howtoplay_27] Frame 16
"_up"Symbol 568 MovieClip {MENUS_fla.startgame_28} [MENUS_fla.startgame_28] Frame 1
"_over"Symbol 568 MovieClip {MENUS_fla.startgame_28} [MENUS_fla.startgame_28] Frame 9
"_down"Symbol 568 MovieClip {MENUS_fla.startgame_28} [MENUS_fla.startgame_28] Frame 16
"_up"Symbol 571 MovieClip {MENUS_fla.moregamesbnt_29} [MENUS_fla.moregamesbnt_29] Frame 1
"_over"Symbol 571 MovieClip {MENUS_fla.moregamesbnt_29} [MENUS_fla.moregamesbnt_29] Frame 2
"_down"Symbol 571 MovieClip {MENUS_fla.moregamesbnt_29} [MENUS_fla.moregamesbnt_29] Frame 3
"low"Symbol 573 MovieClip {MENUS_fla.qualitybtn_69} [MENUS_fla.qualitybtn_69] Frame 1
"medium"Symbol 573 MovieClip {MENUS_fla.qualitybtn_69} [MENUS_fla.qualitybtn_69] Frame 2
"high"Symbol 573 MovieClip {MENUS_fla.qualitybtn_69} [MENUS_fla.qualitybtn_69] Frame 3
"btn"Symbol 579 MovieClip {MENUS_fla.qualityschuifje_68} [MENUS_fla.qualityschuifje_68] Frame 1
"btn"Symbol 581 MovieClip {MENUS_fla.backgroundvolume_72} [MENUS_fla.backgroundvolume_72] Frame 1
"_up"Symbol 594 MovieClip {MENUS_fla.godmodebtn_94} [MENUS_fla.godmodebtn_94] Frame 1
"_over"Symbol 594 MovieClip {MENUS_fla.godmodebtn_94} [MENUS_fla.godmodebtn_94] Frame 2
"_down"Symbol 594 MovieClip {MENUS_fla.godmodebtn_94} [MENUS_fla.godmodebtn_94] Frame 3
"_up"Symbol 595 MovieClip {MENUS_fla.campaignmodebtn_95} [MENUS_fla.campaignmodebtn_95] Frame 1
"_over"Symbol 595 MovieClip {MENUS_fla.campaignmodebtn_95} [MENUS_fla.campaignmodebtn_95] Frame 2
"_down"Symbol 595 MovieClip {MENUS_fla.campaignmodebtn_95} [MENUS_fla.campaignmodebtn_95] Frame 3
"_up"Symbol 596 MovieClip {MENUS_fla.cancelbtn_96} [MENUS_fla.cancelbtn_96] Frame 1
"_over"Symbol 596 MovieClip {MENUS_fla.cancelbtn_96} [MENUS_fla.cancelbtn_96] Frame 2
"_down"Symbol 596 MovieClip {MENUS_fla.cancelbtn_96} [MENUS_fla.cancelbtn_96] Frame 3
"gameover"Symbol 683 MovieClip Frame 1
"game_complete"Symbol 683 MovieClip Frame 2
"level_complete"Symbol 683 MovieClip Frame 3
"_up"Symbol 684 MovieClip {MENUS_fla.mainmenubutton_239} [MENUS_fla.mainmenubutton_239] Frame 1
"_over"Symbol 684 MovieClip {MENUS_fla.mainmenubutton_239} [MENUS_fla.mainmenubutton_239] Frame 2
"_down"Symbol 684 MovieClip {MENUS_fla.mainmenubutton_239} [MENUS_fla.mainmenubutton_239] Frame 3
"game_over"Symbol 695 MovieClip {MENUS_fla.tekst_bord_241} [MENUS_fla.tekst_bord_241] Frame 1
"game_complete"Symbol 695 MovieClip {MENUS_fla.tekst_bord_241} [MENUS_fla.tekst_bord_241] Frame 2
"level_complete"Symbol 695 MovieClip {MENUS_fla.tekst_bord_241} [MENUS_fla.tekst_bord_241] Frame 3
"_up"Symbol 696 MovieClip {MENUS_fla.retrybtn_242} [MENUS_fla.retrybtn_242] Frame 1
"_over"Symbol 696 MovieClip {MENUS_fla.retrybtn_242} [MENUS_fla.retrybtn_242] Frame 2
"_down"Symbol 696 MovieClip {MENUS_fla.retrybtn_242} [MENUS_fla.retrybtn_242] Frame 3
"_up"Symbol 699 MovieClip {MENUS_fla.submitbtn_243} [MENUS_fla.submitbtn_243] Frame 1
"_over"Symbol 699 MovieClip {MENUS_fla.submitbtn_243} [MENUS_fla.submitbtn_243] Frame 2
"_down"Symbol 699 MovieClip {MENUS_fla.submitbtn_243} [MENUS_fla.submitbtn_243] Frame 3
"_up"Symbol 716 MovieClip {MENUS_fla.viewstatsbutton_245} [MENUS_fla.viewstatsbutton_245] Frame 1
"_over"Symbol 716 MovieClip {MENUS_fla.viewstatsbutton_245} [MENUS_fla.viewstatsbutton_245] Frame 2
"_down"Symbol 716 MovieClip {MENUS_fla.viewstatsbutton_245} [MENUS_fla.viewstatsbutton_245] Frame 3
"_up"Symbol 723 MovieClip {MENUS_fla.mainmenu_246} [MENUS_fla.mainmenu_246] Frame 1
"_over"Symbol 723 MovieClip {MENUS_fla.mainmenu_246} [MENUS_fla.mainmenu_246] Frame 9
"_down"Symbol 723 MovieClip {MENUS_fla.mainmenu_246} [MENUS_fla.mainmenu_246] Frame 16
"_up"Symbol 768 MovieClip {MENUS_fla.Slamming1_btn_159} [MENUS_fla.Slamming1_btn_159] Frame 1
"_over"Symbol 768 MovieClip {MENUS_fla.Slamming1_btn_159} [MENUS_fla.Slamming1_btn_159] Frame 2
"_down"Symbol 768 MovieClip {MENUS_fla.Slamming1_btn_159} [MENUS_fla.Slamming1_btn_159] Frame 3
"_disabled"Symbol 768 MovieClip {MENUS_fla.Slamming1_btn_159} [MENUS_fla.Slamming1_btn_159] Frame 4
"_up"Symbol 772 MovieClip {MENUS_fla.Slamming2_btn_161} [MENUS_fla.Slamming2_btn_161] Frame 1
"_over"Symbol 772 MovieClip {MENUS_fla.Slamming2_btn_161} [MENUS_fla.Slamming2_btn_161] Frame 2
"_down"Symbol 772 MovieClip {MENUS_fla.Slamming2_btn_161} [MENUS_fla.Slamming2_btn_161] Frame 3
"_disabled"Symbol 772 MovieClip {MENUS_fla.Slamming2_btn_161} [MENUS_fla.Slamming2_btn_161] Frame 4
"_up"Symbol 777 MovieClip {MENUS_fla.Slamming3_btn_162} [MENUS_fla.Slamming3_btn_162] Frame 1
"_over"Symbol 777 MovieClip {MENUS_fla.Slamming3_btn_162} [MENUS_fla.Slamming3_btn_162] Frame 2
"_down"Symbol 777 MovieClip {MENUS_fla.Slamming3_btn_162} [MENUS_fla.Slamming3_btn_162] Frame 3
"_disabled"Symbol 777 MovieClip {MENUS_fla.Slamming3_btn_162} [MENUS_fla.Slamming3_btn_162] Frame 4
"_up"Symbol 781 MovieClip {MENUS_fla.Slamming4_btn_163} [MENUS_fla.Slamming4_btn_163] Frame 1
"_over"Symbol 781 MovieClip {MENUS_fla.Slamming4_btn_163} [MENUS_fla.Slamming4_btn_163] Frame 2
"_down"Symbol 781 MovieClip {MENUS_fla.Slamming4_btn_163} [MENUS_fla.Slamming4_btn_163] Frame 3
"_disabled"Symbol 781 MovieClip {MENUS_fla.Slamming4_btn_163} [MENUS_fla.Slamming4_btn_163] Frame 4
"_up"Symbol 784 MovieClip {MENUS_fla.Slamming5_btn_164} [MENUS_fla.Slamming5_btn_164] Frame 1
"_over"Symbol 784 MovieClip {MENUS_fla.Slamming5_btn_164} [MENUS_fla.Slamming5_btn_164] Frame 2
"_down"Symbol 784 MovieClip {MENUS_fla.Slamming5_btn_164} [MENUS_fla.Slamming5_btn_164] Frame 3
"_disabled"Symbol 784 MovieClip {MENUS_fla.Slamming5_btn_164} [MENUS_fla.Slamming5_btn_164] Frame 4
"open"Symbol 913 MovieClip {Grab_cursor} [Grab_cursor] Frame 1
"closed"Symbol 913 MovieClip {Grab_cursor} [Grab_cursor] Frame 9
"point"Symbol 913 MovieClip {Grab_cursor} [Grab_cursor] Frame 18
"_up"Symbol 995 MovieClip {MENUS_fla.mainmenu_button_98} [MENUS_fla.mainmenu_button_98] Frame 1
"_over"Symbol 995 MovieClip {MENUS_fla.mainmenu_button_98} [MENUS_fla.mainmenu_button_98] Frame 2
"_down"Symbol 995 MovieClip {MENUS_fla.mainmenu_button_98} [MENUS_fla.mainmenu_button_98] Frame 3
"_up"Symbol 996 MovieClip {MENUS_fla.returntogamebutton_99} [MENUS_fla.returntogamebutton_99] Frame 1
"_over"Symbol 996 MovieClip {MENUS_fla.returntogamebutton_99} [MENUS_fla.returntogamebutton_99] Frame 2
"_down"Symbol 996 MovieClip {MENUS_fla.returntogamebutton_99} [MENUS_fla.returntogamebutton_99] Frame 3
"_up"Symbol 997 MovieClip {MENUS_fla.howtoplaybtn_100} [MENUS_fla.howtoplaybtn_100] Frame 1
"_over"Symbol 997 MovieClip {MENUS_fla.howtoplaybtn_100} [MENUS_fla.howtoplaybtn_100] Frame 2
"_down"Symbol 997 MovieClip {MENUS_fla.howtoplaybtn_100} [MENUS_fla.howtoplaybtn_100] Frame 3
"up"Symbol 1021 MovieClip {Drawing_tool} [Drawing_tool] Frame 1
"over"Symbol 1021 MovieClip {Drawing_tool} [Drawing_tool] Frame 12
"down"Symbol 1021 MovieClip {Drawing_tool} [Drawing_tool] Frame 23
"selected"Symbol 1021 MovieClip {Drawing_tool} [Drawing_tool] Frame 34
"up"Symbol 1026 MovieClip {Fist_tool} [Fist_tool] Frame 1
"over"Symbol 1026 MovieClip {Fist_tool} [Fist_tool] Frame 13
"down"Symbol 1026 MovieClip {Fist_tool} [Fist_tool] Frame 26
"selected"Symbol 1026 MovieClip {Fist_tool} [Fist_tool] Frame 38
"up"Symbol 1029 MovieClip {Grab_tool} [Grab_tool] Frame 1
"over"Symbol 1029 MovieClip {Grab_tool} [Grab_tool] Frame 9
"down"Symbol 1029 MovieClip {Grab_tool} [Grab_tool] Frame 19
"selected"Symbol 1029 MovieClip {Grab_tool} [Grab_tool] Frame 32
"up"Symbol 1034 MovieClip {Scissor_tool} [Scissor_tool] Frame 1
"over"Symbol 1034 MovieClip {Scissor_tool} [Scissor_tool] Frame 9
"down"Symbol 1034 MovieClip {Scissor_tool} [Scissor_tool] Frame 18
"selected"Symbol 1034 MovieClip {Scissor_tool} [Scissor_tool] Frame 28
"up"Symbol 1038 MovieClip {Bomb_tool} [Bomb_tool] Frame 1
"over"Symbol 1038 MovieClip {Bomb_tool} [Bomb_tool] Frame 13
"down"Symbol 1038 MovieClip {Bomb_tool} [Bomb_tool] Frame 26
"selected"Symbol 1038 MovieClip {Bomb_tool} [Bomb_tool] Frame 38
"up"Symbol 1043 MovieClip {Spoon_tool} [Spoon_tool] Frame 1
"over"Symbol 1043 MovieClip {Spoon_tool} [Spoon_tool] Frame 13
"down"Symbol 1043 MovieClip {Spoon_tool} [Spoon_tool] Frame 26
"selected"Symbol 1043 MovieClip {Spoon_tool} [Spoon_tool] Frame 38
"healthbar"Symbol 1085 MovieClip {Healthbar_mc} [Healthbar_mc] Frame 1
"dood"Symbol 1096 MovieClip Frame 1
"dood"Symbol 1097 MovieClip {Slamming1_fla.lemming_dood2_4} [Slamming1_fla.lemming_dood2_4] Frame 1
"disappear"Symbol 1123 MovieClip {ArrowDisplay_mc} [ArrowDisplay_mc] Frame 2
"appear"Symbol 1123 MovieClip {ArrowDisplay_mc} [ArrowDisplay_mc] Frame 7
"dood"Symbol 1235 MovieClip Frame 1
"dood"Symbol 1237 MovieClip {Slamming3_fla.lemming_dood2_6} [Slamming3_fla.lemming_dood2_6] Frame 1
"body_falling"Symbol 1264 MovieClip {Slamming3_mc} [Slamming3_mc] Frame 1
"body_scared"Symbol 1264 MovieClip {Slamming3_mc} [Slamming3_mc] Frame 1
"body_angry"Symbol 1264 MovieClip {Slamming3_mc} [Slamming3_mc] Frame 1
"body_dead"Symbol 1264 MovieClip {Slamming3_mc} [Slamming3_mc] Frame 1
"dood"Symbol 1272 MovieClip Frame 1
"dood"Symbol 1273 MovieClip {Slamming2_fla.lemming_dood2_5} [Slamming2_fla.lemming_dood2_5] Frame 1
"body_falling"Symbol 1293 MovieClip {Slamming2_mc} [Slamming2_mc] Frame 1
"body_scared"Symbol 1293 MovieClip {Slamming2_mc} [Slamming2_mc] Frame 1
"body_angry"Symbol 1293 MovieClip {Slamming2_mc} [Slamming2_mc] Frame 1
"body_dead"Symbol 1293 MovieClip {Slamming2_mc} [Slamming2_mc] Frame 1
"dood"Symbol 1370 MovieClip Frame 1
"dood"Symbol 1371 MovieClip {Slamming4_fla.lemming_dood2_3} [Slamming4_fla.lemming_dood2_3] Frame 1
"body_falling"Symbol 1396 MovieClip {Slamming4_mc} [Slamming4_mc] Frame 1
"body_scared"Symbol 1396 MovieClip {Slamming4_mc} [Slamming4_mc] Frame 1
"body_angry"Symbol 1396 MovieClip {Slamming4_mc} [Slamming4_mc] Frame 1
"body_dead"Symbol 1396 MovieClip {Slamming4_mc} [Slamming4_mc] Frame 1
"dood"Symbol 1439 MovieClip Frame 1
"dood"Symbol 1440 MovieClip {Slamming5_fla.lemming_dood2_3} [Slamming5_fla.lemming_dood2_3] Frame 1
"body_falling"Symbol 1463 MovieClip {Slamming5_mc} [Slamming5_mc] Frame 1
"body_scared"Symbol 1463 MovieClip {Slamming5_mc} [Slamming5_mc] Frame 1
"body_angry"Symbol 1463 MovieClip {Slamming5_mc} [Slamming5_mc] Frame 1
"body_dead"Symbol 1463 MovieClip {Slamming5_mc} [Slamming5_mc] Frame 1
"enabled"Symbol 1486 MovieClip {Scissor_cursor} [Scissor_cursor] Frame 1
"disabled"Symbol 1486 MovieClip {Scissor_cursor} [Scissor_cursor] Frame 9
"mouse_over"Symbol 1486 MovieClip {Scissor_cursor} [Scissor_cursor] Frame 18
"enabled"Symbol 1508 MovieClip {Pen_cursor} [Pen_cursor] Frame 1
"disabled"Symbol 1508 MovieClip {Pen_cursor} [Pen_cursor] Frame 9
"enabled"Symbol 1562 MovieClip {Bomb_cursor} [Bomb_cursor] Frame 1
"disabled"Symbol 1562 MovieClip {Bomb_cursor} [Bomb_cursor] Frame 2
"br"Symbol 1635 MovieClip {MENUS_fla.flag_icon_251} [MENUS_fla.flag_icon_251] Frame 1
"nl"Symbol 1635 MovieClip {MENUS_fla.flag_icon_251} [MENUS_fla.flag_icon_251] Frame 2
"cn"Symbol 1635 MovieClip {MENUS_fla.flag_icon_251} [MENUS_fla.flag_icon_251] Frame 3
"de"Symbol 1635 MovieClip {MENUS_fla.flag_icon_251} [MENUS_fla.flag_icon_251] Frame 4
"es"Symbol 1635 MovieClip {MENUS_fla.flag_icon_251} [MENUS_fla.flag_icon_251] Frame 5
"fr"Symbol 1635 MovieClip {MENUS_fla.flag_icon_251} [MENUS_fla.flag_icon_251] Frame 6
"in"Symbol 1635 MovieClip {MENUS_fla.flag_icon_251} [MENUS_fla.flag_icon_251] Frame 7
"it"Symbol 1635 MovieClip {MENUS_fla.flag_icon_251} [MENUS_fla.flag_icon_251] Frame 8
"jp"Symbol 1635 MovieClip {MENUS_fla.flag_icon_251} [MENUS_fla.flag_icon_251] Frame 9
"my"Symbol 1635 MovieClip {MENUS_fla.flag_icon_251} [MENUS_fla.flag_icon_251] Frame 10
"ph"Symbol 1635 MovieClip {MENUS_fla.flag_icon_251} [MENUS_fla.flag_icon_251] Frame 11
"pl"Symbol 1635 MovieClip {MENUS_fla.flag_icon_251} [MENUS_fla.flag_icon_251] Frame 12
"pt"Symbol 1635 MovieClip {MENUS_fla.flag_icon_251} [MENUS_fla.flag_icon_251] Frame 13
"ru"Symbol 1635 MovieClip {MENUS_fla.flag_icon_251} [MENUS_fla.flag_icon_251] Frame 14
"se"Symbol 1635 MovieClip {MENUS_fla.flag_icon_251} [MENUS_fla.flag_icon_251] Frame 15
"tr"Symbol 1635 MovieClip {MENUS_fla.flag_icon_251} [MENUS_fla.flag_icon_251] Frame 16
"en_uk"Symbol 1635 MovieClip {MENUS_fla.flag_icon_251} [MENUS_fla.flag_icon_251] Frame 17
"en_us"Symbol 1635 MovieClip {MENUS_fla.flag_icon_251} [MENUS_fla.flag_icon_251] Frame 18
"id"Symbol 1635 MovieClip {MENUS_fla.flag_icon_251} [MENUS_fla.flag_icon_251] Frame 19




http://swfchan.com/12/58947/info.shtml
Created: 16/4 -2019 23:51:35 Last modified: 16/4 -2019 23:51:35 Server time: 22/12 -2024 19:08:24