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

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

Dummy Never Fails 2 - Cool shooting dummy cannon physics puzzle platformer game.swf

This is the info page for
Flash #130782

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


Text
PLAY

100%

Loading...

BACK

BACK

box2d

box2d

NEW

COPY

EDIT

EXIT

LOAD

NEXT

RETRY

SAVE

SEND

TEST

WALK

Aim with the cursor and click to
shoot, distance from cannon
determines the force

You have to impact
the dummy against
the goal object

The less pain dummy
receives the better

Shortcut keys
R: Retry
N: Next
S: Slow

A > F

Sometimes you wiil need to use
the zoom to see the goal or the
path to complete the test

Use the zoom slider
to zoom out

In order to solve some puzzles
you will need to change the
gravity with the G-Joystick.

Shoot a dummy and
hit the goal setting
the gravity

You can set the
gravity also with
the arrow keys

Item

15

Game developed by

Game Artist
Israel Alvarez Carrion

Programmer
Xavier Heras Divison

Sponsored by

MIN AREA

MAX AREA

Shift + Click = Remove Object

Control+ Click = Duplicate Object

Click = Select  Object

Escape Key = Unselect Object

Backgrounds

Launcher

Estatic

Moveable

Dynamic

Thrusters

Magnets

Estatic Goal

Moveable Goals

Bolt

info

SHARE

<p align="center"></p>

EXPORT

SAVE

SAVE

IMPORT

DELETE

LOAD

LOAD

SUBMIT

SUBMIT

Creation name

Player name

SUBMIT

Creation name

Player name

already taken!

Welcome back
Start the game

????????????

Unlock 50 dummies

Go through 4 different
direction thrusters

Complete level 50 without
dummies out of the screen

Shoot a dummy with
the min power

Complete 25 levels

Complete level 4
Don't use slow motion

Shoot a dummy with
the max power

Complete level 81 with
4 dummies in the screen

Complete level 103. Don't
impact dynamic platforms

Complete level 100 without
dummies out of the screen

Complete level 24
Don't use thrusters

Complete a level PERFECT
with 4 dummies in the screen

Complete 100 levels

Shoot East-West

A dummy comes back after
shooting it out of the screen

Get more than 100000
pain with first shot

Complete a level again
with worse score

Complete 6 levels
consecutively

Shoot
North-East-South-West

Play more games

Visit Tanoku site

Get more than 10000000
pain in a play

Complete 50 levels

Complete all levels

Complete 75 levels

Complete 10 levels
with PERFECT

Complete 5 levels
with PERFECT

Welcome back
Start the game

Lvl 67 - Shoot 10 dummies out
of the screen and complete

Level 36
More than 100000 pain

Unlock 50 dummies

Shoot 10 dummies in
5 seconds

Go through 4 different
direction thrusters

Shoot
North-West-East-South

Complete level 50 without
dummies out of the screen

Shoot a dummy with
the min power

Shoot West-East

Complete a level
and retry it

Complete 25 levels

Complete level 4
Don't use slow motion

Shoot a dummy with
the max power

Complete level 81 with
4 dummies in the screen

Complete level 103. Don't
impact dynamic platforms

Complete level 100 without
dummies out of the screen

Complete a level
from the level editor

Shoot a dummy
exactly to the south

Complete level 24
Don't use thrusters

Shoot more than 30
dummies in a level

Complete a level PERFECT
with 4 dummies in the screen

Complete 100 levels

10 seconds between the
1st and the 2nd shot

Wait 10 seconds after
a level starts

Shoot East-West

Complete the last level
twice

A dummy comes back after
shooting it out of the screen

Lvl 28- Shoot 5 dummies out
of the screen & complete

Get more than 100000
pain with first shot

Complete level 2
in slow motion

Complete a level again
with worse score

Complete 6 levels
consecutively

Shoot
North-East-South-West

Play more games

Retry 10 times the
level 51

Visit Tanoku site

Go to the skins gallery
while playing

Complete a level PERFECT
with the basic skin

Get more than 10000000
pain in a play

Lvl 74 - All the moveable
blocks out of the screen

Complete 50 levels

Shoot 2 dummies exactly
from the same position

Shoot more than 10
dummies in level 97

Complete all levels

Shoot immediately
when a level starts

Change the skin 10 times
from the gallery in game

Complete 75 levels

Complete 10 levels
with PERFECT

Complete 5 levels
with PERFECT

Complete a level PERFECT
with more than one shot

Basic dummy

Aerobics

Cuban

Bricklayer

Treedummy

Graduate

Butcher

Cupid

Mr.B

Frankenstein

Karate

Boxing dummy

Sexy rabbit

Rapper

Ballet

Pyjamas

Drag dummy

Scottish

Stonedummy

Elegant

Schooldummy

Mountaineer

Shadow

Invisible

Icedummy

Power dummy

Caveman

Sea star

Bull

Goalkeeper

Batter

Basket player

Summer suit

Rider

Adventurer

Creature

Mutant

Operator

Nurse

Mime

Gorilla

Knight

Fireman

King

Diver

Eva

Adan

Eskimo

Scarecrow

Werewolf

Ninja

RANDOM

Dummy gallery

DUMMIES

SPONSOR

9999999

BACK

NORMAL

ZERO

A

B

C

F

1

1

1

1

Level 123456789012345

Level 123456789012345

I LIKE IT

RANDOM

LEVEL
COMPLETE

A

B

C

F

MORE GAMES

MORE GAMES

ALL TIME

1 . Basic Dummy

Dummy unlocked

2. Space Ranger

3 . Alien

4 . Force Dummy

5 . Saiyadummy

6 . Robo-dummy

7 . Dummy chief

8. Dumghast

9 . Elvis

10 . Space engineer

11 . Kitty

12 . Panda

13 . Pig

14 . Cheetah

15 . Frog

16 . Teledummy

17 . Smurf

18 . Ninja Turtle

19 . Kiss fan

20 . Evil dummy

21 . Baby dummy

22 . Thriller

23 . Viking

24 . War veteran

25 . Dummy potter

26 . Spartan

27 . Hulk

28 . Ghostbuster

29 . Cardboard dummy

30 . Nurse

31 . Human

32 . Daddy

33 . King

34 . Dummy of the lamp

35 . Lee

36 . Nightmare

37 . Guard

38 . Elf

39 . Jester

40 . Pacifist

41 . Infected

42 . Zombie girl

43 . Wolverine

44 . Dummy croft

45 . Race queen

46 . Mike Shadow

47 . Dummy gaga

48 . Pinoccio

49 . Maid

50 . MA

51 . Cookie

001

001

002

002

003

003

004

004

005

005

006

006

007

007

008

008

009

009

010

010

011

011

012

012

013

013

014

014

015

015

016

016

017

017

018

018

019

019

020

020

021

021

022

022

023

023

024

024

025

025

026

026

027

027

028

028

029

029

030

030

031

031

032

032

033

033

034

034

035

035

036

036

037

037

038

038

039

039

040

040

041

041

042

042

043

043

044

044

045

045

046

046

047

047

048

048

049

049

050

050

051

051

052

052

info2

info

info user

TUTORIAL

FRIDGE

CONTROL ROOM

VENTILATION

ASTEROIDS

CORRIDORS

BOILER

DEPOT

SECRET ROOM

1

1

3

3

5

5

7

7

9

9

2

2

4

4

6

6

8

8

CHANGE
DUMMY

asadasdas

v .62

RESET DATA

RESET DATA

UNLOCK  ALL

UNLOCK  ALL

Undo

Redo

Zoom

Brush Size

Brush Shape

Brush

Brush

Eraser

Eraser

0

Bucket

Bucket

Color

Body Parts

MINE

MINE

LASTEST

LASTEST

THIS WEEK

THIS WEEK

TODAY

TODAY

ALL TIME

POPULAR

POPULAR

NEWEST

NEWEST

ONLINE LEVELS

0 of 0

ONLINE LEVELS

123456780

123456780

123456780

123456780

123456780

123456780

123456780

123456780

123456780

123456780

123456780

123456780

123456780

123456780

123456780

123456780

123456780

123456780

123456780

123456780

RANKING

Nombre

Puntuacion

SUBMIT

1234567890

SCORE

NAME

SCORE

NAME

!

X

A

M

E

H

T

O

S

E

M

A

G

T

N

R

I

F

info1

info2

123456

12345678901234567890

info2

A

B

C

F

01

Loading

Loading .

Loading ..

Loading ...

Cannot connect to database, restart the game.

0 . Random

1 . ????????

Start the game

2. ????????

Tutorial completed

3 . ????????

Fridge completed

4 . ????????

Control room completed

5 . ????????

Ventilation completed

6 . ????????

Asteroids completed

7 . ????????

Corridors completed

8. ????????

Boiler completed

9 . ????????

Depot completed

10 . ????????

Secret room completed

11 . ????????

Share your first level

12 . ????????

Share your first skin

13 . ????????

Play an online level

14 . ????????

Play with an online dummy

15 . ????????

Like an online level

16 . ????????

Like an online dummy

17 . ????????

Complete 5 levels with A+ score

18 . ????????

Complete 10 levels with A+ score

19 . ????????

Complete 15 levels with A+ score

20 . ????????

Test a local level

21 . ????????

Test a local dummy

22 . ????????

Open the walkthrough

23 . ????????

Open the level editor tutorial

24 . ????????

Open the dummy editor tutorial

25 . ????????

Play more games

26 . ????????

Unmute the sound

27 . ????????

Level 5 : A+ score and all the bolts collected

28 . ????????

Level 7 : A+ score and all the bolts collected

29 . ????????

Level 12 : A+ score and all the bolts collected

30 . ????????

Complete level 14 with one shot and N gravity

31 . ????????

Complete level 20 with N gravity

32 . ????????

Complete level 27 with N gravity

33 . ????????

Complete level 28 with A+ score

34 . ????????

Complete level 29 with N gravity

35 . ????????

Complete level 30 with N gravity

36 . ????????

Complete level 33 with N gravity

37 . ????????

Level 38 : 2 shots and all the bolts collected

38 . ????????

Complete level 40 with one shot

39 . ????????

Complete level 41 with N gravity

40 . ????????

Complete level 42 with N gravity

41 . ????????

Level 45 : 1 shot and all the bolts collected

42 . ????????

Complete level 47 with N gravity

43 . ????????

Complete level 49 with N gravity

44 . ????????

Complete level 53 with two shots & N gravity

45 . ????????

Complete level 54 with N gravity

46 . ????????

Complete level 59 with N gravity

47 . ????????

Shoot 1000 dummies

48 . ????????

Play the game 10 times

49 . ????????

Collect 50 bolts

50 . ????????

Shoot 4 dummies with 0 gravity

51 . ????????

Get a F score shooting

1 . Basic Dummy

Start the game

2. Space Ranger

Tutorial completed

3 . Alien

Fridge completed

4 . Force Dummy

Control room completed

5 . Saiyadummy

Ventilation completed

6 . Robo-dummy

Asteroids completed

7 . Dummy chief

Corridors completed

8. Dumghast

Boiler completed

9 . Elvis

Depot completed

10 . Space engineer

Secret room completed

11 . Kitty

Share your first level

12 . Panda

Share your first skin

13 . Pig

Play an online level

14 . Cheetah

Play with an online dummy

15 . Frog

Like an online level

16 . Teledummy

Like an online dummy

17 . Smurf

Complete 5 levels with A+ score

18 . Ninja Turtle

Complete 10 levels with A+ score

19 . Kiss fan

Complete 15 levels with A+ score

20 . Evil dummy

Test a local level

21 . Baby dummy

Test a local dummy

22 . Thriller

Open the walkthrough

23 . Viking

Open the level editor tutorial

24 . War veteran

Open the dummy editor tutorial

25 . Dummy potter

Play more games

26 . Spartan

Unmute the sound

27 . Hulk

Level 5 : A+ score and all the bolts collected

28 . Ghostbuster

Level 7 : A+ score and all the bolts collected

29 . Cardboard dummy

Level 12 : A+ score and all the bolts collected

30 . Nurse

Complete level 14 with one shot and N gravity

31 . Human

Complete level 20 with N gravity

32 . Daddy

Complete level 27 with N gravity

33 . King

Complete level 28 with A+ score

34 . Dummy of the lamp

Complete level 29 with N gravity

35 . Lee

Complete level 30 with N gravity

36 . Nightmare

Complete level 33 with N gravity

37 . Guard

Level 38 : 2 shots and all the bolts collected

38 . Elf

Complete level 40 with one shot

39 . Jester

Complete level 41 with N gravity

40 . Pacifist

Complete level 42 with N gravity

41 . Infected (not zombie)

Level 45 : 1 shot and all the bolts collected

42 . Zombie girl

Complete level 47 with N gravity

43 . Wolverine

Complete level 49 with N gravity

44 . Dummy croft

Complete level 53 with two shots & N gravity

45 . Race queen

Complete level 54 with N gravity

46 . Mike Shadow

Complete level 59 with N gravity

47 . Dummy gaga

Shoot 1000 dummies

48 . Pinoccio

Play the game 10 times

49 . Maid

Collect 50 bolts

50 . MA

Shoot 4 dummies with 0 gravity

51 . Cookie

Get a F score shooting

1 . Basic Dummy

Start the game

2. Space Ranger

Tutorial completed

3 . Alien

Fridge completed

4 . Force Dummy

Control room completed

5 . Saiyadummy

Ventilation completed

6 . Robo-dummy

Asteroids completed

7 . Dummy chief

Corridors completed

8. Dumghast

Boiler completed

9 . Elvis

Depot completed

10 . Space engineer

Secret room completed

11 . Kitty

Share your first level

12 . Panda

Share your first skin

13 . Pig

Play an online level

14 . Cheetah

Play with an online dummy

15 . Frog

Like an online level

16 . Teledummy

Like an online dummy

17 . Smurf

Complete 5 levels with A+ score

18 . Ninja Turtle

Complete 10 levels with A+ score

19 . Kiss fan

Complete 15 levels with A+ score

20 . Evil dummy

Test a local level

21 . Baby dummy

Test a local dummy

22 . Thriller

Open the walkthrough

23 . Viking

Open the level editor tutorial

24 . War veteran

Open the dummy editor tutorial

25 . Dummy potter

Play more games

26 . Spartan

Unmute the sound

27 . Hulk

Level 5 : A+ score and all the bolts collected

28 . Ghostbuster

Level 7 : A+ score and all the bolts collected

29 . Cardboard dummy

Level 12 : A+ score and all the bolts collected

30 . Nurse

Complete level 14 with one shot and N gravity

31 . Human

Complete level 20 with N gravity

32 . Daddy

Complete level 27 with N gravity

33 . King

Complete level 28 with A+ score

34 . Dummy of the lamp

Complete level 29 with N gravity

35 . Lee

Complete level 30 with N gravity

36 . Nightmare

Complete level 33 with N gravity

37 . Guard

Level 38 : 2 shots and all the bolts collected

38 . Elf

Complete level 40 with one shot

39 . Jester

Complete level 41 with N gravity

40 . Pacifist

Complete level 42 with N gravity

41 . Infected (not zombie)

Level 45 : 1 shot and all the bolts collected

42 . Zombie girl

Complete level 47 with N gravity

43 . Wolverine

Complete level 49 with N gravity

44 . Dummy croft

Complete level 53 with two shots & N gravity

45 . Race queen

Complete level 54 with N gravity

46 . Mike Shadow

Complete level 59 with N gravity

47 . Dummy gaga

Shoot 1000 dummies

48 . Pinoccio

Play the game 10 times

49 . Maid

Collect 50 bolts

50 . MA

Shoot 4 dummies with 0 gravity

51 . Cookie

Get a F score shooting

0 . Random

LOAD MORE

LOAD MORE

ActionScript [AS3]

Section 1
//b2CircleDef (Box2D.Collision.Shapes.b2CircleDef) package Box2D.Collision.Shapes { import Box2D.Common.Math.*; public class b2CircleDef extends b2ShapeDef { public var localPosition:b2Vec2; public var radius:Number; 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.Common.*; import Box2D.Dynamics.*; import Box2D.Collision.*; public class b2CircleShape extends b2Shape { public var m_radius:Number; public var m_localPosition:b2Vec2; public function b2CircleShape(_arg1:b2ShapeDef){ var _local2:b2CircleDef; m_localPosition = new b2Vec2(); super(_arg1); _local2 = (_arg1 as b2CircleDef); m_type = e_circleShape; m_localPosition.SetV(_local2.localPosition); m_radius = _local2.radius; } override public function TestPoint(_arg1:b2XForm, _arg2:b2Vec2):Boolean{ var _local3:b2Mat22; var _local4:Number; var _local5:Number; _local3 = _arg1.R; _local4 = (_arg1.position.x + ((_local3.col1.x * m_localPosition.x) + (_local3.col2.x * m_localPosition.y))); _local5 = (_arg1.position.y + ((_local3.col1.y * m_localPosition.x) + (_local3.col2.y * m_localPosition.y))); _local4 = (_arg2.x - _local4); _local5 = (_arg2.y - _local5); return ((((_local4 * _local4) + (_local5 * _local5)) <= (m_radius * m_radius))); } public function GetLocalPosition():b2Vec2{ return (m_localPosition); } override public function TestSegment(_arg1:b2XForm, _arg2:Array, _arg3:b2Vec2, _arg4:b2Segment, _arg5:Number):int{ var _local6:b2Mat22; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; _local6 = _arg1.R; _local7 = (_arg1.position.x + ((_local6.col1.x * m_localPosition.x) + (_local6.col2.x * m_localPosition.y))); _local8 = (_arg1.position.y + ((_local6.col1.y * m_localPosition.x) + (_local6.col2.y * m_localPosition.y))); _local9 = (_arg4.p1.x - _local7); _local10 = (_arg4.p1.y - _local8); _local11 = (((_local9 * _local9) + (_local10 * _local10)) - (m_radius * m_radius)); if (_local11 < 0){ _arg2[0] = 0; return (e_startsInsideCollide); }; _local12 = (_arg4.p2.x - _arg4.p1.x); _local13 = (_arg4.p2.y - _arg4.p1.y); _local14 = ((_local9 * _local12) + (_local10 * _local13)); _local15 = ((_local12 * _local12) + (_local13 * _local13)); _local16 = ((_local14 * _local14) - (_local15 * _local11)); if ((((_local16 < 0)) || ((_local15 < Number.MIN_VALUE)))){ return (e_missCollide); }; _local17 = -((_local14 + Math.sqrt(_local16))); if ((((0 <= _local17)) && ((_local17 <= (_arg5 * _local15))))){ _local17 = (_local17 / _local15); _arg2[0] = _local17; _arg3.x = (_local9 + (_local17 * _local12)); _arg3.y = (_local10 + (_local17 * _local13)); _arg3.Normalize(); return (e_hitCollide); }; return (e_missCollide); } override public function ComputeMass(_arg1:b2MassData):void{ _arg1.mass = (((m_density * b2Settings.b2_pi) * m_radius) * m_radius); _arg1.center.SetV(m_localPosition); _arg1.I = (_arg1.mass * (((0.5 * m_radius) * m_radius) + ((m_localPosition.x * m_localPosition.x) + (m_localPosition.y * m_localPosition.y)))); } override public function ComputeSweptAABB(_arg1:b2AABB, _arg2:b2XForm, _arg3:b2XForm):void{ var _local4:b2Mat22; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; _local4 = _arg2.R; _local5 = (_arg2.position.x + ((_local4.col1.x * m_localPosition.x) + (_local4.col2.x * m_localPosition.y))); _local6 = (_arg2.position.y + ((_local4.col1.y * m_localPosition.x) + (_local4.col2.y * m_localPosition.y))); _local4 = _arg3.R; _local7 = (_arg3.position.x + ((_local4.col1.x * m_localPosition.x) + (_local4.col2.x * m_localPosition.y))); _local8 = (_arg3.position.y + ((_local4.col1.y * m_localPosition.x) + (_local4.col2.y * m_localPosition.y))); _arg1.lowerBound.Set((((_local5 < _local7)) ? _local5 : _local7 - m_radius), (((_local6 < _local8)) ? _local6 : _local8 - m_radius)); _arg1.upperBound.Set((((_local5 > _local7)) ? _local5 : _local7 + m_radius), (((_local6 > _local8)) ? _local6 : _local8 + m_radius)); } public function GetRadius():Number{ return (m_radius); } override public function UpdateSweepRadius(_arg1:b2Vec2):void{ var _local2:Number; var _local3:Number; _local2 = (m_localPosition.x - _arg1.x); _local3 = (m_localPosition.y - _arg1.y); _local2 = Math.sqrt(((_local2 * _local2) + (_local3 * _local3))); m_sweepRadius = ((_local2 + m_radius) - b2Settings.b2_toiSlop); } override public function ComputeAABB(_arg1:b2AABB, _arg2:b2XForm):void{ var _local3:b2Mat22; var _local4:Number; var _local5:Number; _local3 = _arg2.R; _local4 = (_arg2.position.x + ((_local3.col1.x * m_localPosition.x) + (_local3.col2.x * m_localPosition.y))); _local5 = (_arg2.position.y + ((_local3.col1.y * m_localPosition.x) + (_local3.col2.y * m_localPosition.y))); _arg1.lowerBound.Set((_local4 - m_radius), (_local5 - m_radius)); _arg1.upperBound.Set((_local4 + m_radius), (_local5 + m_radius)); } } }//package Box2D.Collision.Shapes
Section 3
//b2FilterData (Box2D.Collision.Shapes.b2FilterData) package Box2D.Collision.Shapes { import Box2D.Common.Math.*; public class b2FilterData { public var maskBits:uint;// = 0xFFFF public var groupIndex:int;// = 0 public var categoryBits:uint;// = 1 public function b2FilterData(){ categoryBits = 1; maskBits = 0xFFFF; groupIndex = 0; super(); } public function Copy():b2FilterData{ var _local1:b2FilterData; _local1 = new b2FilterData(); _local1.categoryBits = categoryBits; _local1.maskBits = maskBits; _local1.groupIndex = groupIndex; return (_local1); } } }//package Box2D.Collision.Shapes
Section 4
//b2MassData (Box2D.Collision.Shapes.b2MassData) package Box2D.Collision.Shapes { import Box2D.Common.Math.*; public class b2MassData { public var mass:Number;// = 0 public var center:b2Vec2; public var I:Number;// = 0 public function b2MassData(){ mass = 0; center = new b2Vec2(0, 0); I = 0; super(); } } }//package Box2D.Collision.Shapes
Section 5
//b2PolygonDef (Box2D.Collision.Shapes.b2PolygonDef) package Box2D.Collision.Shapes { import Box2D.Common.Math.*; import Box2D.Common.*; public class b2PolygonDef extends b2ShapeDef { public var vertexCount:int; public var vertices:Array; private static var s_mat:b2Mat22 = new b2Mat22(); public function b2PolygonDef(){ var _local1:int; vertices = new Array(b2Settings.b2_maxPolygonVertices); super(); type = b2Shape.e_polygonShape; vertexCount = 0; _local1 = 0; while (_local1 < b2Settings.b2_maxPolygonVertices) { vertices[_local1] = new b2Vec2(); _local1++; }; } public function SetAsOrientedBox(_arg1:Number, _arg2:Number, _arg3:b2Vec2=null, _arg4:Number=0):void{ var _local5:b2Vec2; var _local6:b2Mat22; var _local7:int; vertexCount = 4; vertices[0].Set(-(_arg1), -(_arg2)); vertices[1].Set(_arg1, -(_arg2)); vertices[2].Set(_arg1, _arg2); vertices[3].Set(-(_arg1), _arg2); if (_arg3){ _local5 = _arg3; _local6 = s_mat; _local6.Set(_arg4); _local7 = 0; while (_local7 < vertexCount) { _arg3 = vertices[_local7]; _arg1 = (_local5.x + ((_local6.col1.x * _arg3.x) + (_local6.col2.x * _arg3.y))); _arg3.y = (_local5.y + ((_local6.col1.y * _arg3.x) + (_local6.col2.y * _arg3.y))); _arg3.x = _arg1; _local7++; }; }; } public function SetAsBox(_arg1:Number, _arg2:Number):void{ vertexCount = 4; vertices[0].Set(-(_arg1), -(_arg2)); vertices[1].Set(_arg1, -(_arg2)); vertices[2].Set(_arg1, _arg2); vertices[3].Set(-(_arg1), _arg2); } } }//package Box2D.Collision.Shapes
Section 6
//b2PolygonShape (Box2D.Collision.Shapes.b2PolygonShape) package Box2D.Collision.Shapes { import Box2D.Common.Math.*; import Box2D.Common.*; import Box2D.Dynamics.*; import Box2D.Collision.*; public class b2PolygonShape extends b2Shape { public var m_vertices:Array; public var m_normals:Array; private var s_supportVec:b2Vec2; public var m_obb:b2OBB; public var m_coreVertices:Array; public var m_centroid:b2Vec2; 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 _local2:b2PolygonDef; var _local3:int; var _local4:int; var _local5:int; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; 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; _local2 = (_arg1 as b2PolygonDef); m_vertexCount = _local2.vertexCount; _local4 = _local3; _local5 = _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 TestPoint(_arg1:b2XForm, _arg2:b2Vec2):Boolean{ var _local3:b2Vec2; var _local4:b2Mat22; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:int; var _local10:Number; _local4 = _arg1.R; _local5 = (_arg2.x - _arg1.position.x); _local6 = (_arg2.y - _arg1.position.y); _local7 = ((_local5 * _local4.col1.x) + (_local6 * _local4.col1.y)); _local8 = ((_local5 * _local4.col2.x) + (_local6 * _local4.col2.y)); _local9 = 0; while (_local9 < 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 function GetCoreVertices():Array{ return (m_coreVertices); } override public function TestSegment(_arg1:b2XForm, _arg2:Array, _arg3:b2Vec2, _arg4:b2Segment, _arg5:Number):int{ var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:b2Mat22; var _local11:b2Vec2; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:int; var _local19:int; var _local20:Number; var _local21:Number; _local6 = 0; _local7 = _arg5; _local8 = (_arg4.p1.x - _arg1.position.x); _local9 = (_arg4.p1.y - _arg1.position.y); _local10 = _arg1.R; _local12 = ((_local8 * _local10.col1.x) + (_local9 * _local10.col1.y)); _local13 = ((_local8 * _local10.col2.x) + (_local9 * _local10.col2.y)); _local8 = (_arg4.p2.x - _arg1.position.x); _local9 = (_arg4.p2.y - _arg1.position.y); _local10 = _arg1.R; _local14 = ((_local8 * _local10.col1.x) + (_local9 * _local10.col1.y)); _local15 = ((_local8 * _local10.col2.x) + (_local9 * _local10.col2.y)); _local16 = (_local14 - _local12); _local17 = (_local15 - _local13); _local18 = -1; _local19 = 0; while (_local19 < m_vertexCount) { _local11 = m_vertices[_local19]; _local8 = (_local11.x - _local12); _local9 = (_local11.y - _local13); _local11 = m_normals[_local19]; _local20 = ((_local11.x * _local8) + (_local11.y * _local9)); _local21 = ((_local11.x * _local16) + (_local11.y * _local17)); if ((((_local21 < 0)) && ((_local20 < (_local6 * _local21))))){ _local6 = (_local20 / _local21); _local18 = _local19; } else { if ((((_local21 > 0)) && ((_local20 < (_local7 * _local21))))){ _local7 = (_local20 / _local21); }; }; if (_local7 < _local6){ return (e_missCollide); }; _local19++; }; if (_local18 >= 0){ _arg2[0] = _local6; _local10 = _arg1.R; _local11 = m_normals[_local18]; _arg3.x = ((_local10.col1.x * _local11.x) + (_local10.col2.x * _local11.y)); _arg3.y = ((_local10.col1.y * _local11.x) + (_local10.col2.y * _local11.y)); return (e_hitCollide); }; _arg2[0] = 0; return (e_startsInsideCollide); } public function GetCentroid():b2Vec2{ return (m_centroid); } override public function ComputeMass(_arg1:b2MassData):void{ var _local2:Number; var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:int; var _local10:b2Vec2; var _local11:b2Vec2; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; var _local20:Number; var _local21:Number; var _local22:Number; var _local23:Number; var _local24:Number; var _local25:Number; _local2 = 0; _local3 = 0; _local4 = 0; _local5 = 0; _local6 = 0; _local7 = 0; _local8 = (1 / 3); _local9 = 0; while (_local9 < 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 Support(_arg1:b2XForm, _arg2:Number, _arg3:Number):b2Vec2{ var _local4:b2Vec2; var _local5:b2Mat22; var _local6:Number; var _local7:Number; var _local8:int; var _local9:Number; var _local10:int; var _local11:Number; _local5 = _arg1.R; _local6 = ((_arg2 * _local5.col1.x) + (_arg3 * _local5.col1.y)); _local7 = ((_arg2 * _local5.col2.x) + (_arg3 * _local5.col2.y)); _local8 = 0; _local4 = m_coreVertices[0]; _local9 = ((_local4.x * _local6) + (_local4.y * _local7)); _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 ComputeSweptAABB(_arg1:b2AABB, _arg2:b2XForm, _arg3:b2XForm):void{ var _local4:b2AABB; var _local5:b2AABB; _local4 = s_sweptAABB1; _local5 = s_sweptAABB2; ComputeAABB(_local4, _arg2); ComputeAABB(_local5, _arg3); _arg1.lowerBound.Set(((_local4.lowerBound.x < _local5.lowerBound.x)) ? _local4.lowerBound.x : _local5.lowerBound.x, ((_local4.lowerBound.y < _local5.lowerBound.y)) ? _local4.lowerBound.y : _local5.lowerBound.y); _arg1.upperBound.Set(((_local4.upperBound.x > _local5.upperBound.x)) ? _local4.upperBound.x : _local5.upperBound.x, ((_local4.upperBound.y > _local5.upperBound.y)) ? _local4.upperBound.y : _local5.upperBound.y); } public function GetVertices():Array{ return (m_vertices); } public function GetNormals():Array{ return (m_normals); } 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 UpdateSweepRadius(_arg1:b2Vec2):void{ var _local2:b2Vec2; var _local3:int; var _local4:Number; var _local5:Number; m_sweepRadius = 0; _local3 = 0; 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 ComputeAABB(_arg1:b2AABB, _arg2:b2XForm):void{ var _local3:b2Mat22; var _local4:b2Vec2; var _local5:b2Mat22; var _local6:b2Mat22; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; _local5 = s_computeMat; _local3 = _arg2.R; _local4 = 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(); _local6 = _local5; _local4 = m_obb.extents; _local7 = ((_local6.col1.x * _local4.x) + (_local6.col2.x * _local4.y)); _local8 = ((_local6.col1.y * _local4.x) + (_local6.col2.y * _local4.y)); _local3 = _arg2.R; _local4 = m_obb.center; _local9 = (_arg2.position.x + ((_local3.col1.x * _local4.x) + (_local3.col2.x * _local4.y))); _local10 = (_arg2.position.y + ((_local3.col1.y * _local4.x) + (_local3.col2.y * _local4.y))); _arg1.lowerBound.Set((_local9 - _local7), (_local10 - _local8)); _arg1.upperBound.Set((_local9 + _local7), (_local10 + _local8)); } public static function ComputeCentroid(_arg1:Array, _arg2:int):b2Vec2{ var _local3:b2Vec2; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:int; var _local9:b2Vec2; var _local10:b2Vec2; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; _local3 = new b2Vec2(); _local4 = 0; _local5 = 0; _local6 = 0; _local7 = (1 / 3); _local8 = 0; while (_local8 < _arg2) { _local9 = _arg1[_local8]; _local10 = (((_local8 + 1) < _arg2)) ? _arg1[int((_local8 + 1))] : _arg1[0]; _local11 = (_local9.x - _local5); _local12 = (_local9.y - _local6); _local13 = (_local10.x - _local5); _local14 = (_local10.y - _local6); _local15 = ((_local11 * _local14) - (_local12 * _local13)); _local16 = (0.5 * _local15); _local4 = (_local4 + _local16); _local3.x = (_local3.x + ((_local16 * _local7) * ((_local5 + _local9.x) + _local10.x))); _local3.y = (_local3.y + ((_local16 * _local7) * ((_local6 + _local9.y) + _local10.y))); _local8++; }; _local3.x = (_local3.x * (1 / _local4)); _local3.y = (_local3.y * (1 / _local4)); return (_local3); } public static function ComputeOBB(_arg1:b2OBB, _arg2:Array, _arg3:int):void{ var _local4:int; var _local5:Array; var _local6:Number; var _local7:b2Vec2; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:int; var _local18:Number; var _local19:Number; var _local20:Number; var _local21:Number; var _local22:Number; var _local23:Number; var _local24:Number; var _local25:b2Mat22; _local5 = new Array((b2Settings.b2_maxPolygonVertices + 1)); _local4 = 0; while (_local4 < _arg3) { _local5[_local4] = _arg2[_local4]; _local4++; }; _local5[_arg3] = _local5[0]; _local6 = Number.MAX_VALUE; _local4 = 1; while (_local4 <= _arg3) { _local7 = _local5[int((_local4 - 1))]; _local8 = (_local5[_local4].x - _local7.x); _local9 = (_local5[_local4].y - _local7.y); _local10 = Math.sqrt(((_local8 * _local8) + (_local9 * _local9))); _local8 = (_local8 / _local10); _local9 = (_local9 / _local10); _local11 = -(_local9); _local12 = _local8; _local13 = Number.MAX_VALUE; _local14 = Number.MAX_VALUE; _local15 = -(Number.MAX_VALUE); _local16 = -(Number.MAX_VALUE); _local17 = 0; while (_local17 < _arg3) { _local19 = (_local5[_local17].x - _local7.x); _local20 = (_local5[_local17].y - _local7.y); _local21 = ((_local8 * _local19) + (_local9 * _local20)); _local22 = ((_local11 * _local19) + (_local12 * _local20)); if (_local21 < _local13){ _local13 = _local21; }; if (_local22 < _local14){ _local14 = _local22; }; if (_local21 > _local15){ _local15 = _local21; }; if (_local22 > _local16){ _local16 = _local22; }; _local17++; }; _local18 = ((_local15 - _local13) * (_local16 - _local14)); if (_local18 < (0.95 * _local6)){ _local6 = _local18; _arg1.R.col1.x = _local8; _arg1.R.col1.y = _local9; _arg1.R.col2.x = _local11; _arg1.R.col2.y = _local12; _local23 = (0.5 * (_local13 + _local15)); _local24 = (0.5 * (_local14 + _local16)); _local25 = _arg1.R; _arg1.center.x = (_local7.x + ((_local25.col1.x * _local23) + (_local25.col2.x * _local24))); _arg1.center.y = (_local7.y + ((_local25.col1.y * _local23) + (_local25.col2.y * _local24))); _arg1.extents.x = (0.5 * (_local15 - _local13)); _arg1.extents.y = (0.5 * (_local16 - _local14)); }; _local4++; }; } } }//package Box2D.Collision.Shapes
Section 7
//b2Shape (Box2D.Collision.Shapes.b2Shape) package Box2D.Collision.Shapes { import Box2D.Common.Math.*; import Box2D.Common.*; import Box2D.Dynamics.*; import Box2D.Collision.*; public class b2Shape { public var m_type:int; public var m_sweepRadius:Number; public var m_density:Number; public var m_filter:b2FilterData; public var m_friction:Number; public var m_next:b2Shape; public var m_restitution:Number; public var m_userData; public var m_isSensor:Boolean; public var m_proxyId:uint; public var m_body:b2Body; public static const e_polygonShape:int = 1; public static const e_hitCollide:int = 1; public static const e_missCollide:int = 0; public static const e_unknownShape:int = -1; public static const e_circleShape:int = 0; public static const e_shapeTypeCount:int = 2; public static const e_startsInsideCollide:int = -1; private static var s_resetAABB:b2AABB = new b2AABB(); private static var s_syncAABB:b2AABB = new b2AABB(); private static var s_proxyAABB:b2AABB = new b2AABB(); public function b2Shape(_arg1:b2ShapeDef){ m_userData = _arg1.userData; m_friction = _arg1.friction; m_restitution = _arg1.restitution; m_density = _arg1.density; m_body = null; m_sweepRadius = 0; m_next = null; m_proxyId = b2Pair.b2_nullProxy; m_filter = _arg1.filter.Copy(); m_isSensor = _arg1.isSensor; } public function TestPoint(_arg1:b2XForm, _arg2:b2Vec2):Boolean{ return (false); } public function GetSweepRadius():Number{ return (m_sweepRadius); } public function GetNext():b2Shape{ return (m_next); } public function ComputeSweptAABB(_arg1:b2AABB, _arg2:b2XForm, _arg3:b2XForm):void{ } public function GetType():int{ return (m_type); } public function GetRestitution():Number{ return (m_restitution); } public function GetFriction():Number{ return (m_friction); } public function GetFilterData():b2FilterData{ return (m_filter.Copy()); } public function TestSegment(_arg1:b2XForm, _arg2:Array, _arg3:b2Vec2, _arg4:b2Segment, _arg5:Number):int{ return (e_missCollide); } public function RefilterProxy(_arg1:b2BroadPhase, _arg2:b2XForm):void{ var _local3:b2AABB; var _local4:Boolean; if (m_proxyId == b2Pair.b2_nullProxy){ return; }; _arg1.DestroyProxy(m_proxyId); _local3 = s_resetAABB; ComputeAABB(_local3, _arg2); _local4 = _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{ var _local4:b2AABB; if (m_proxyId == b2Pair.b2_nullProxy){ return (false); }; _local4 = 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; var _local4:Boolean; _local3 = s_proxyAABB; ComputeAABB(_local3, _arg2); _local4 = _arg1.InRange(_local3); if (_local4){ m_proxyId = _arg1.CreateProxy(_local3, this); } else { m_proxyId = b2Pair.b2_nullProxy; }; } public function SetUserData(_arg1):void{ m_userData = _arg1; } public static function Destroy(_arg1:b2Shape, _arg2):void{ } public static function Create(_arg1:b2ShapeDef, _arg2):b2Shape{ switch (_arg1.type){ case e_circleShape: return (new b2CircleShape(_arg1)); case e_polygonShape: return (new b2PolygonShape(_arg1)); default: return (null); }; } } }//package Box2D.Collision.Shapes
Section 8
//b2ShapeDef (Box2D.Collision.Shapes.b2ShapeDef) package Box2D.Collision.Shapes { import Box2D.Common.Math.*; import Box2D.Common.*; public class b2ShapeDef { public var isSensor:Boolean;// = false public var density:Number;// = 0 public var type:int;// = -1 public var restitution:Number;// = 0 public var userData;// = null public var filter:b2FilterData; public var friction:Number;// = 0.2 public function b2ShapeDef(){ type = b2Shape.e_unknownShape; userData = null; friction = 0.2; restitution = 0; density = 0; isSensor = false; filter = new b2FilterData(); super(); } } }//package Box2D.Collision.Shapes
Section 9
//b2AABB (Box2D.Collision.b2AABB) package Box2D.Collision { import Box2D.Common.Math.*; public class b2AABB { public var upperBound:b2Vec2; public var lowerBound:b2Vec2; public function b2AABB(){ lowerBound = new b2Vec2(); upperBound = new b2Vec2(); super(); } public function IsValid():Boolean{ var _local1:Number; var _local2:Number; var _local3:Boolean; _local1 = (upperBound.x - lowerBound.x); _local2 = (upperBound.y - lowerBound.y); _local3 = (((_local1 >= 0)) && ((_local2 >= 0))); _local3 = ((((_local3) && (lowerBound.IsValid()))) && (upperBound.IsValid())); return (_local3); } } }//package Box2D.Collision
Section 10
//b2Bound (Box2D.Collision.b2Bound) package Box2D.Collision { public class b2Bound { public var proxyId:uint; public var stabbingCount:uint; public var value:uint; public function Swap(_arg1:b2Bound):void{ var _local2:uint; var _local3:uint; var _local4:uint; _local2 = value; _local3 = proxyId; _local4 = stabbingCount; value = _arg1.value; proxyId = _arg1.proxyId; stabbingCount = _arg1.stabbingCount; _arg1.value = _local2; _arg1.proxyId = _local3; _arg1.stabbingCount = _local4; } public function IsLower():Boolean{ return (((value & 1) == 0)); } public function IsUpper():Boolean{ return (((value & 1) == 1)); } } }//package Box2D.Collision
Section 11
//b2BoundValues (Box2D.Collision.b2BoundValues) package Box2D.Collision { public class b2BoundValues { public var lowerValues:Array; public var upperValues:Array; public function b2BoundValues(){ lowerValues = [0, 0]; upperValues = [0, 0]; super(); } } }//package Box2D.Collision
Section 12
//b2BroadPhase (Box2D.Collision.b2BroadPhase) package Box2D.Collision { import Box2D.Common.*; import Box2D.Common.Math.*; public class b2BroadPhase { public var m_worldAABB:b2AABB; public var m_bounds:Array; public var m_freeProxy:uint; public var m_quantizationFactor:b2Vec2; public var m_proxyCount:int; public var m_proxyPool:Array; public var m_querySortKeys:Array; public var m_pairManager:b2PairManager; public var m_queryResultCount:int; 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 _local4:Number; var _local5:Number; var _local6:b2Proxy; var _local7:int; m_pairManager = new b2PairManager(); m_proxyPool = new Array(b2Settings.b2_maxPairs); m_bounds = new Array((2 * b2Settings.b2_maxProxies)); m_querySortKeys = new Array(b2Settings.b2_maxProxies); m_queryResults = new Array(b2Settings.b2_maxProxies); m_quantizationFactor = new b2Vec2(); super(); m_pairManager.Initialize(this, _arg2); m_worldAABB = _arg1; m_proxyCount = 0; _local3 = 0; while (_local3 < b2Settings.b2_maxProxies) { m_queryResults[_local3] = 0; m_querySortKeys[_local3] = 0; _local3++; }; m_bounds = new Array(2); _local3 = 0; while (_local3 < 2) { m_bounds[_local3] = new Array((2 * b2Settings.b2_maxProxies)); _local7 = 0; while (_local7 < (2 * b2Settings.b2_maxProxies)) { m_bounds[_local3][_local7] = new b2Bound(); _local7++; }; _local3++; }; _local4 = (_arg1.upperBound.x - _arg1.lowerBound.x); _local5 = (_arg1.upperBound.y - _arg1.lowerBound.y); m_quantizationFactor.x = (b2Settings.USHRT_MAX / _local4); m_quantizationFactor.y = (b2Settings.USHRT_MAX / _local5); _local3 = 0; while (_local3 < (b2Settings.b2_maxProxies - 1)) { _local6 = new b2Proxy(); m_proxyPool[_local3] = _local6; _local6.SetNext((_local3 + 1)); _local6.timeStamp = 0; _local6.overlapCount = b2_invalid; _local6.userData = null; _local3++; }; _local6 = new b2Proxy(); m_proxyPool[int((b2Settings.b2_maxProxies - 1))] = _local6; _local6.SetNext(b2Pair.b2_nullProxy); _local6.timeStamp = 0; _local6.overlapCount = b2_invalid; _local6.userData = null; m_freeProxy = 0; m_timeStamp = 1; m_queryResultCount = 0; } public function QueryAABB(_arg1:b2AABB, _arg2, _arg3:int):int{ var _local4:Array; var _local5:Array; var _local6:uint; var _local7:uint; var _local8:Array; var _local9:Array; var _local10:int; var _local11:int; var _local12:b2Proxy; _local4 = new Array(); _local5 = new Array(); ComputeBounds(_local4, _local5, _arg1); _local8 = [_local6]; _local9 = [_local7]; Query(_local8, _local9, _local4[0], _local5[0], m_bounds[0], (2 * m_proxyCount), 0); Query(_local8, _local9, _local4[1], _local5[1], m_bounds[1], (2 * m_proxyCount), 1); _local10 = 0; _local11 = 0; while ((((_local11 < 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; _local2 = 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 _local8:uint; var _local9:uint; var _local10:b2Bound; var _local11:uint; var _local12:int; var _local13:int; var _local14:b2Proxy; _local8 = BinarySearch(_arg5, _arg6, _arg3); _local9 = BinarySearch(_arg5, _arg6, _arg4); _local11 = _local8; while (_local11 < _local9) { _local10 = _arg5[_local11]; if (_local10.IsLower()){ IncrementOverlapCount(_local10.proxyId); }; _local11++; }; if (_local8 > 0){ _local12 = (_local8 - 1); _local10 = _arg5[_local12]; _local13 = _local10.stabbingCount; while (_local13) { _local10 = _arg5[_local12]; if (_local10.IsLower()){ _local14 = m_proxyPool[_local10.proxyId]; if (_local8 <= _local14.upperBounds[_arg7]){ IncrementOverlapCount(_local10.proxyId); _local13--; }; }; _local12--; }; }; _arg1[0] = _local8; _arg2[0] = _local9; } private function AddProxyResult(_arg1:uint, _arg2:b2Proxy, _arg3:Number, _arg4:Function):void{ var _local5:Number; var _local6:Number; var _local7:Number; var _local8:uint; var _local9:Number; var _local10:uint; _local5 = _arg4(_arg2.userData); if (_local5 < 0){ return; }; _local6 = 0; while ((((_local6 < m_queryResultCount)) && ((m_querySortKeys[_local6] < _local5)))) { _local6++; }; _local7 = _local5; _local8 = _arg1; m_queryResultCount = (m_queryResultCount + 1); if (m_queryResultCount > _arg3){ m_queryResultCount = _arg3; }; while (_local6 < m_queryResultCount) { _local9 = m_querySortKeys[_local6]; _local10 = m_queryResults[_local6]; m_querySortKeys[_local6] = _local7; m_queryResults[_local6] = _local8; _local7 = _local9; _local8 = _local10; _local6++; }; } public function QuerySegment(_arg1:b2Segment, _arg2, _arg3:int, _arg4:Function):int{ var _local5:Number; var _local6:Number; var _local7:Number; var _local8:int; var _local9:int; var _local10:Number; var _local11:Number; var _local12:Array; var _local13:Array; var _local14:Array; var _local15:int; var _local16:int; var _local17:uint; var _local18:b2Proxy; var _local19:uint; var _local20:uint; var _local21:Array; var _local22:Array; var _local23:Boolean; var _local24:Number; var _local25:Number; var _local26:int; var _local27:Number; var _local28:Number; var _local29:Number; var _local30:uint; _local5 = 1; _local6 = ((_arg1.p2.x - _arg1.p1.x) * m_quantizationFactor.x); _local7 = ((_arg1.p2.y - _arg1.p1.y) * m_quantizationFactor.y); _local8 = ((_local6 < -(Number.MIN_VALUE))) ? -1 : ((_local6 > Number.MIN_VALUE)) ? 1 : 0; _local9 = ((_local7 < -(Number.MIN_VALUE))) ? -1 : ((_local7 > Number.MIN_VALUE)) ? 1 : 0; _local10 = (m_quantizationFactor.x * (_arg1.p1.x - m_worldAABB.lowerBound.x)); _local11 = (m_quantizationFactor.y * (_arg1.p1.y - m_worldAABB.lowerBound.y)); _local12 = new Array(); _local13 = new Array(); _local12[0] = (uint(_local10) & (b2Settings.USHRT_MAX - 1)); _local12[1] = (uint(_local11) & (b2Settings.USHRT_MAX - 1)); _local13[0] = (_local12[0] + 1); _local13[1] = (_local12[1] + 1); _local14 = new Array(); _local21 = [_local19]; _local22 = [_local20]; Query(_local21, _local22, _local12[0], _local13[0], m_bounds[0], (2 * m_proxyCount), 0); if (_local8 >= 0){ _local15 = (_local22[0] - 1); } else { _local15 = _local21[0]; }; Query(_local21, _local22, _local12[1], _local13[1], m_bounds[1], (2 * m_proxyCount), 1); if (_local9 >= 0){ _local16 = (_local22[0] - 1); } else { _local16 = _local21[0]; }; if (_arg4 != null){ _local27 = 0; while (_local27 < m_queryResultCount) { m_querySortKeys[_local27] = _arg4(m_proxyPool[m_queryResults[_local27]].userData); _local27++; }; _local27 = 0; while (_local27 < (m_queryResultCount - 1)) { _local28 = m_querySortKeys[_local27]; _local29 = m_querySortKeys[(_local27 + 1)]; if (((_local28)<0) ? (_local29 >= 0) : (((_local28 > _local29)) && ((_local29 >= 0)))){ m_querySortKeys[(_local27 + 1)] = _local28; m_querySortKeys[_local27] = _local29; _local30 = m_queryResults[(_local27 + 1)]; m_queryResults[(_local27 + 1)] = m_queryResults[_local27]; m_queryResults[_local27] = _local30; _local27--; if (_local27 == -1){ _local27 = 1; }; } else { _local27++; }; }; while ((((m_queryResultCount > 0)) && ((m_querySortKeys[(m_queryResultCount - 1)] < 0)))) { m_queryResultCount--; }; }; _local23 = true; if ((((_local15 < 0)) || ((_local15 >= (m_proxyCount * 2))))){ _local23 = false; }; if ((((_local16 < 0)) || ((_local16 >= (m_proxyCount * 2))))){ _local23 = false; }; if (_local23){ if (_local8 != 0){ if (_local8 > 0){ _local15++; if (_local15 == (m_proxyCount * 2)){ _local23 = false; }; } else { _local15--; if (_local15 < 0){ _local23 = false; }; }; _local24 = ((m_bounds[0][_local15].value - _local10) / _local6); }; if (_local9 != 0){ if (_local9 > 0){ _local16++; if (_local16 == (m_proxyCount * 2)){ _local23 = false; }; } else { _local16--; if (_local16 < 0){ _local23 = false; }; }; _local25 = ((m_bounds[1][_local16].value - _local11) / _local7); }; }; while (_local23) { if ((((_local9 == 0)) || (((!((_local8 == 0))) && ((_local24 < _local25)))))){ if (_local24 > _local5){ break; }; if (((_local8 > 0)) ? m_bounds[0][_local15].IsLower() : m_bounds[0][_local15].IsUpper()){ _local17 = m_bounds[0][_local15].proxyId; _local18 = m_proxyPool[_local17]; if (_local9 >= 0){ if ((((_local18.lowerBounds[1] <= (_local16 - 1))) && ((_local18.upperBounds[1] >= _local16)))){ if (_arg4 != null){ AddProxyResult(_local17, _local18, _arg3, _arg4); } else { m_queryResults[m_queryResultCount] = _local17; m_queryResultCount++; }; }; } else { if ((((_local18.lowerBounds[1] <= _local16)) && ((_local18.upperBounds[1] >= (_local16 + 1))))){ if (_arg4 != null){ AddProxyResult(_local17, _local18, _arg3, _arg4); } else { m_queryResults[m_queryResultCount] = _local17; m_queryResultCount++; }; }; }; }; if (((((((!((_arg4 == null))) && ((m_queryResultCount == _arg3)))) && ((m_queryResultCount > 0)))) && ((_local24 > m_querySortKeys[(m_queryResultCount - 1)])))){ break; }; if (_local8 > 0){ _local15++; if (_local15 == (m_proxyCount * 2)){ break; }; } else { _local15--; if (_local15 < 0){ break; }; }; _local24 = ((m_bounds[0][_local15].value - _local10) / _local6); } else { if (_local25 > _local5){ break; }; if (((_local9 > 0)) ? m_bounds[1][_local16].IsLower() : m_bounds[1][_local16].IsUpper()){ _local17 = m_bounds[1][_local16].proxyId; _local18 = m_proxyPool[_local17]; if (_local8 >= 0){ if ((((_local18.lowerBounds[0] <= (_local15 - 1))) && ((_local18.upperBounds[0] >= _local15)))){ if (_arg4 != null){ AddProxyResult(_local17, _local18, _arg3, _arg4); } else { m_queryResults[m_queryResultCount] = _local17; m_queryResultCount++; }; }; } else { if ((((_local18.lowerBounds[0] <= _local15)) && ((_local18.upperBounds[0] >= (_local15 + 1))))){ if (_arg4 != null){ AddProxyResult(_local17, _local18, _arg3, _arg4); } else { m_queryResults[m_queryResultCount] = _local17; m_queryResultCount++; }; }; }; }; if (((((((!((_arg4 == null))) && ((m_queryResultCount == _arg3)))) && ((m_queryResultCount > 0)))) && ((_local25 > m_querySortKeys[(m_queryResultCount - 1)])))){ break; }; if (_local9 > 0){ _local16++; if (_local16 == (m_proxyCount * 2)){ break; }; } else { _local16--; if (_local16 < 0){ break; }; }; _local25 = ((m_bounds[1][_local16].value - _local11) / _local7); }; }; _local26 = 0; _local27 = 0; while ((((_local27 < m_queryResultCount)) && ((_local26 < _arg3)))) { _local18 = m_proxyPool[m_queryResults[_local27]]; _arg2[_local27] = _local18.userData; _local27++; _local26++; }; m_queryResultCount = 0; IncrementTimeStamp(); return (_local26); } private function ComputeBounds(_arg1:Array, _arg2:Array, _arg3:b2AABB):void{ var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; _local4 = _arg3.lowerBound.x; _local5 = _arg3.lowerBound.y; _local4 = b2Math.b2Min(_local4, m_worldAABB.upperBound.x); _local5 = b2Math.b2Min(_local5, m_worldAABB.upperBound.y); _local4 = b2Math.b2Max(_local4, m_worldAABB.lowerBound.x); _local5 = b2Math.b2Max(_local5, m_worldAABB.lowerBound.y); _local6 = _arg3.upperBound.x; _local7 = _arg3.upperBound.y; _local6 = b2Math.b2Min(_local6, m_worldAABB.upperBound.x); _local7 = b2Math.b2Min(_local7, m_worldAABB.upperBound.y); _local6 = b2Math.b2Max(_local6, m_worldAABB.lowerBound.x); _local7 = b2Math.b2Max(_local7, m_worldAABB.lowerBound.y); _arg1[0] = (uint((m_quantizationFactor.x * (_local4 - m_worldAABB.lowerBound.x))) & (b2Settings.USHRT_MAX - 1)); _arg2[0] = ((uint((m_quantizationFactor.x * (_local6 - m_worldAABB.lowerBound.x))) & 0xFFFF) | 1); _arg1[1] = (uint((m_quantizationFactor.y * (_local5 - m_worldAABB.lowerBound.y))) & (b2Settings.USHRT_MAX - 1)); _arg2[1] = ((uint((m_quantizationFactor.y * (_local7 - m_worldAABB.lowerBound.y))) & 0xFFFF) | 1); } public function CreateProxy(_arg1:b2AABB, _arg2):uint{ var _local3:uint; var _local4:b2Proxy; var _local5:uint; var _local6:uint; var _local7:Array; var _local8:Array; var _local9:int; var _local10:int; var _local11:Array; var _local12:uint; var _local13:uint; var _local14:Array; var _local15:Array; var _local16:Array; var _local17:int; var _local18:int; var _local19:b2Bound; var _local20:b2Bound; var _local21:b2Bound; var _local22:int; var _local23:b2Proxy; _local5 = m_freeProxy; _local4 = m_proxyPool[_local5]; m_freeProxy = _local4.GetNext(); _local4.overlapCount = 0; _local4.userData = _arg2; _local6 = (2 * m_proxyCount); _local7 = new Array(); _local8 = new Array(); ComputeBounds(_local7, _local8, _arg1); _local9 = 0; while (_local9 < 2) { _local11 = m_bounds[_local9]; _local14 = [_local12]; _local15 = [_local13]; Query(_local14, _local15, _local7[_local9], _local8[_local9], _local11, _local6, _local9); _local12 = _local14[0]; _local13 = _local15[0]; _local16 = new Array(); _local18 = (_local6 - _local13); _local17 = 0; while (_local17 < _local18) { _local16[_local17] = new b2Bound(); _local19 = _local16[_local17]; _local20 = _local11[int((_local13 + _local17))]; _local19.value = _local20.value; _local19.proxyId = _local20.proxyId; _local19.stabbingCount = _local20.stabbingCount; _local17++; }; _local18 = _local16.length; _local22 = (_local13 + 2); _local17 = 0; while (_local17 < _local18) { _local20 = _local16[_local17]; _local19 = _local11[int((_local22 + _local17))]; _local19.value = _local20.value; _local19.proxyId = _local20.proxyId; _local19.stabbingCount = _local20.stabbingCount; _local17++; }; _local16 = new Array(); _local18 = (_local13 - _local12); _local17 = 0; while (_local17 < _local18) { _local16[_local17] = new b2Bound(); _local19 = _local16[_local17]; _local20 = _local11[int((_local12 + _local17))]; _local19.value = _local20.value; _local19.proxyId = _local20.proxyId; _local19.stabbingCount = _local20.stabbingCount; _local17++; }; _local18 = _local16.length; _local22 = (_local12 + 1); _local17 = 0; while (_local17 < _local18) { _local20 = _local16[_local17]; _local19 = _local11[int((_local22 + _local17))]; _local19.value = _local20.value; _local19.proxyId = _local20.proxyId; _local19.stabbingCount = _local20.stabbingCount; _local17++; }; _local13++; _local19 = _local11[_local12]; _local20 = _local11[_local13]; _local19.value = _local7[_local9]; _local19.proxyId = _local5; _local20.value = _local8[_local9]; _local20.proxyId = _local5; _local21 = _local11[int((_local12 - 1))]; _local19.stabbingCount = ((_local12 == 0)) ? 0 : _local21.stabbingCount; _local21 = _local11[int((_local13 - 1))]; _local20.stabbingCount = _local21.stabbingCount; _local3 = _local12; while (_local3 < _local13) { _local21 = _local11[_local3]; _local21.stabbingCount++; _local3++; }; _local3 = _local12; while (_local3 < (_local6 + 2)) { _local19 = _local11[_local3]; _local23 = m_proxyPool[_local19.proxyId]; if (_local19.IsLower()){ _local23.lowerBounds[_local9] = _local3; } else { _local23.upperBounds[_local9] = _local3; }; _local3++; }; _local9++; }; m_proxyCount++; _local10 = 0; while (_local10 < m_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 _local4:b2Proxy; var _local5:int; var _local6:int; var _local7:int; var _local8:Array; var _local9:uint; var _local10:uint; var _local11:uint; var _local12:uint; var _local13:Array; var _local14:int; var _local15:int; var _local16:int; var _local17:uint; var _local18:int; var _local19:b2Proxy; _local4 = m_proxyPool[_arg1]; _local5 = (2 * m_proxyCount); _local6 = 0; while (_local6 < 2) { _local8 = m_bounds[_local6]; _local9 = _local4.lowerBounds[_local6]; _local10 = _local4.upperBounds[_local6]; _local2 = _local8[_local9]; _local11 = _local2.value; _local3 = _local8[_local10]; _local12 = _local3.value; _local13 = new Array(); _local15 = ((_local10 - _local9) - 1); _local14 = 0; while (_local14 < _local15) { _local13[_local14] = new b2Bound(); _local2 = _local13[_local14]; _local3 = _local8[int(((_local9 + 1) + _local14))]; _local2.value = _local3.value; _local2.proxyId = _local3.proxyId; _local2.stabbingCount = _local3.stabbingCount; _local14++; }; _local15 = _local13.length; _local16 = _local9; _local14 = 0; while (_local14 < _local15) { _local3 = _local13[_local14]; _local2 = _local8[int((_local16 + _local14))]; _local2.value = _local3.value; _local2.proxyId = _local3.proxyId; _local2.stabbingCount = _local3.stabbingCount; _local14++; }; _local13 = new Array(); _local15 = ((_local5 - _local10) - 1); _local14 = 0; while (_local14 < _local15) { _local13[_local14] = new b2Bound(); _local2 = _local13[_local14]; _local3 = _local8[int(((_local10 + 1) + _local14))]; _local2.value = _local3.value; _local2.proxyId = _local3.proxyId; _local2.stabbingCount = _local3.stabbingCount; _local14++; }; _local15 = _local13.length; _local16 = (_local10 - 1); _local14 = 0; while (_local14 < _local15) { _local3 = _local13[_local14]; _local2 = _local8[int((_local16 + _local14))]; _local2.value = _local3.value; _local2.proxyId = _local3.proxyId; _local2.stabbingCount = _local3.stabbingCount; _local14++; }; _local15 = (_local5 - 2); _local17 = _local9; while (_local17 < _local15) { _local2 = _local8[_local17]; _local19 = m_proxyPool[_local2.proxyId]; if (_local2.IsLower()){ _local19.lowerBounds[_local6] = _local17; } else { _local19.upperBounds[_local6] = _local17; }; _local17++; }; _local15 = (_local10 - 1); _local18 = _local9; while (_local18 < _local15) { _local2 = _local8[_local18]; _local2.stabbingCount--; _local18++; }; Query([0], [0], _local11, _local12, _local8, (_local5 - 2), _local6); _local6++; }; _local7 = 0; while (_local7 < m_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 _local3:int; var _local4:Array; var _local5:b2Bound; _local3 = 0; while (_local3 < 2) { _local4 = m_bounds[_local3]; _local5 = _local4[_arg2.upperBounds[_local3]]; if (_arg1.lowerValues[_local3] > _local5.value){ return (false); }; _local5 = _local4[_arg2.lowerBounds[_local3]]; if (_arg1.upperValues[_local3] < _local5.value){ return (false); }; _local3++; }; return (true); } public function Validate():void{ var _local1:b2Pair; var _local2:b2Proxy; var _local3:b2Proxy; var _local4:Boolean; var _local5:int; var _local6:b2Bound; var _local7:uint; var _local8:uint; var _local9:uint; var _local10:b2Bound; _local5 = 0; while (_local5 < 2) { _local6 = m_bounds[_local5]; _local7 = (2 * m_proxyCount); _local8 = 0; _local9 = 0; while (_local9 < _local7) { _local10 = _local6[_local9]; if (_local10.IsLower() == true){ _local8++; } else { _local8--; }; _local9++; }; _local5++; }; } private function IncrementOverlapCount(_arg1:uint):void{ var _local2:b2Proxy; _local2 = 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)); } private function TestOverlapValidate(_arg1:b2Proxy, _arg2:b2Proxy):Boolean{ var _local3:int; var _local4:Array; var _local5:b2Bound; var _local6:b2Bound; _local3 = 0; while (_local3 < 2) { _local4 = m_bounds[_local3]; _local5 = _local4[_arg1.lowerBounds[_local3]]; _local6 = _local4[_arg2.upperBounds[_local3]]; if (_local5.value > _local6.value){ return (false); }; _local5 = _local4[_arg1.upperBounds[_local3]]; _local6 = _local4[_arg2.lowerBounds[_local3]]; if (_local5.value < _local6.value){ return (false); }; _local3++; }; return (true); } public function MoveProxy(_arg1:uint, _arg2:b2AABB):void{ var _local3:Array; var _local4:int; var _local5:uint; var _local6:uint; var _local7:b2Bound; var _local8:b2Bound; var _local9:b2Bound; var _local10:uint; var _local11:b2Proxy; var _local12:uint; var _local13:b2Proxy; var _local14:b2BoundValues; var _local15:b2BoundValues; var _local16:Array; var _local17:uint; var _local18:uint; var _local19:uint; var _local20:uint; var _local21:int; var _local22:int; var _local23:uint; var _local24:b2Proxy; if ((((_arg1 == b2Pair.b2_nullProxy)) || ((b2Settings.b2_maxProxies <= _arg1)))){ return; }; if (_arg2.IsValid() == false){ return; }; _local12 = (2 * m_proxyCount); _local13 = m_proxyPool[_arg1]; _local14 = new b2BoundValues(); ComputeBounds(_local14.lowerValues, _local14.upperValues, _arg2); _local15 = new b2BoundValues(); _local5 = 0; while (_local5 < 2) { _local7 = m_bounds[_local5][_local13.lowerBounds[_local5]]; _local15.lowerValues[_local5] = _local7.value; _local7 = m_bounds[_local5][_local13.upperBounds[_local5]]; _local15.upperValues[_local5] = _local7.value; _local5++; }; _local5 = 0; while (_local5 < 2) { _local16 = m_bounds[_local5]; _local17 = _local13.lowerBounds[_local5]; _local18 = _local13.upperBounds[_local5]; _local19 = _local14.lowerValues[_local5]; _local20 = _local14.upperValues[_local5]; _local7 = _local16[_local17]; _local21 = (_local19 - _local7.value); _local7.value = _local19; _local7 = _local16[_local18]; _local22 = (_local20 - _local7.value); _local7.value = _local20; if (_local21 < 0){ _local6 = _local17; while ((((_local6 > 0)) && ((_local19 < (_local16[int((_local6 - 1))] as b2Bound).value)))) { _local7 = _local16[_local6]; _local8 = _local16[int((_local6 - 1))]; _local23 = _local8.proxyId; _local24 = m_proxyPool[_local8.proxyId]; _local8.stabbingCount++; if (_local8.IsUpper() == true){ if (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 _local4:int; var _local5:int; var _local6:int; var _local7:b2Bound; _local4 = 0; _local5 = (_arg2 - 1); while (_local4 <= _local5) { _local6 = ((_local4 + _local5) / 2); _local7 = _arg1[_local6]; if (_local7.value > _arg3){ _local5 = (_local6 - 1); } else { if (_local7.value < _arg3){ _local4 = (_local6 + 1); } else { return (uint(_local6)); }; }; }; return (uint(_local4)); } } }//package Box2D.Collision
Section 13
//b2BufferedPair (Box2D.Collision.b2BufferedPair) package Box2D.Collision { public class b2BufferedPair { public var proxyId1:uint; public var proxyId2:uint; } }//package Box2D.Collision
Section 14
//b2Collision (Box2D.Collision.b2Collision) package Box2D.Collision { import Box2D.Common.Math.*; import Box2D.Common.*; import Box2D.Collision.Shapes.*; public class b2Collision { public static const b2_nullFeature:uint = 0xFF; private static var b2CollidePolyTempVec:b2Vec2 = new b2Vec2(); public static function EdgeSeparation(_arg1:b2PolygonShape, _arg2:b2XForm, _arg3:int, _arg4:b2PolygonShape, _arg5:b2XForm):Number{ var _local6:int; var _local7:Array; var _local8:Array; var _local9:int; var _local10:Array; var _local11:b2Mat22; var _local12:b2Vec2; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:int; var _local18:Number; var _local19:int; var _local20:Number; var _local21:Number; var _local22:Number; var _local23:Number; var _local24:Number; var _local25:Number; _local6 = _arg1.m_vertexCount; _local7 = _arg1.m_vertices; _local8 = _arg1.m_normals; _local9 = _arg4.m_vertexCount; _local10 = _arg4.m_vertices; _local11 = _arg2.R; _local12 = _local8[_arg3]; _local13 = ((_local11.col1.x * _local12.x) + (_local11.col2.x * _local12.y)); _local14 = ((_local11.col1.y * _local12.x) + (_local11.col2.y * _local12.y)); _local11 = _arg5.R; _local15 = ((_local11.col1.x * _local13) + (_local11.col1.y * _local14)); _local16 = ((_local11.col2.x * _local13) + (_local11.col2.y * _local14)); _local17 = 0; _local18 = Number.MAX_VALUE; _local19 = 0; while (_local19 < _local9) { _local12 = _local10[_local19]; _local25 = ((_local12.x * _local15) + (_local12.y * _local16)); if (_local25 < _local18){ _local18 = _local25; _local17 = _local19; }; _local19++; }; _local12 = _local7[_arg3]; _local11 = _arg2.R; _local20 = (_arg2.position.x + ((_local11.col1.x * _local12.x) + (_local11.col2.x * _local12.y))); _local21 = (_arg2.position.y + ((_local11.col1.y * _local12.x) + (_local11.col2.y * _local12.y))); _local12 = _local10[_local17]; _local11 = _arg5.R; _local22 = (_arg5.position.x + ((_local11.col1.x * _local12.x) + (_local11.col2.x * _local12.y))); _local23 = (_arg5.position.y + ((_local11.col1.y * _local12.x) + (_local11.col2.y * _local12.y))); _local22 = (_local22 - _local20); _local23 = (_local23 - _local21); _local24 = ((_local22 * _local13) + (_local23 * _local14)); return (_local24); } public static function b2TestOverlap(_arg1:b2AABB, _arg2:b2AABB):Boolean{ var _local3:b2Vec2; var _local4:b2Vec2; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; _local3 = _arg2.lowerBound; _local4 = _arg1.upperBound; _local5 = (_local3.x - _local4.x); _local6 = (_local3.y - _local4.y); _local3 = _arg1.lowerBound; _local4 = _arg2.upperBound; _local7 = (_local3.x - _local4.x); _local8 = (_local3.y - _local4.y); if ((((_local5 > 0)) || ((_local6 > 0)))){ return (false); }; if ((((_local7 > 0)) || ((_local8 > 0)))){ return (false); }; return (true); } public static function FindIncidentEdge(_arg1:Array, _arg2:b2PolygonShape, _arg3:b2XForm, _arg4:int, _arg5:b2PolygonShape, _arg6:b2XForm):void{ var _local7:int; var _local8:Array; var _local9:int; var _local10:Array; var _local11:Array; var _local12:b2Mat22; var _local13:b2Vec2; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:int; var _local18:Number; var _local19:int; var _local20:ClipVertex; var _local21:int; var _local22:int; var _local23:Number; _local7 = _arg2.m_vertexCount; _local8 = _arg2.m_normals; _local9 = _arg5.m_vertexCount; _local10 = _arg5.m_vertices; _local11 = _arg5.m_normals; _local12 = _arg3.R; _local13 = _local8[_arg4]; _local14 = ((_local12.col1.x * _local13.x) + (_local12.col2.x * _local13.y)); _local15 = ((_local12.col1.y * _local13.x) + (_local12.col2.y * _local13.y)); _local12 = _arg6.R; _local16 = ((_local12.col1.x * _local14) + (_local12.col1.y * _local15)); _local15 = ((_local12.col2.x * _local14) + (_local12.col2.y * _local15)); _local14 = _local16; _local17 = 0; _local18 = Number.MAX_VALUE; _local19 = 0; while (_local19 < _local9) { _local13 = _local11[_local19]; _local23 = ((_local14 * _local13.x) + (_local15 * _local13.y)); if (_local23 < _local18){ _local18 = _local23; _local17 = _local19; }; _local19++; }; _local21 = _local17; _local22 = (((_local21 + 1) < _local9)) ? (_local21 + 1) : 0; _local20 = _arg1[0]; _local13 = _local10[_local21]; _local12 = _arg6.R; _local20.v.x = (_arg6.position.x + ((_local12.col1.x * _local13.x) + (_local12.col2.x * _local13.y))); _local20.v.y = (_arg6.position.y + ((_local12.col1.y * _local13.x) + (_local12.col2.y * _local13.y))); _local20.id.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 _local7:int; var _local8:Array; var _local9:Number; var _local10:int; var _local11:Array; var _local12:Number; var _local13:b2PolygonShape; var _local14:b2PolygonShape; var _local15:b2XForm; var _local16:b2XForm; var _local17:int; var _local18:uint; var _local19:Number; var _local20:Number; var _local21:Array; var _local22:int; var _local23:Array; var _local24:b2Vec2; var _local25:b2Vec2; var _local26:b2Vec2; var _local27:b2Vec2; var _local28:b2Vec2; var _local29:Number; var _local30:Number; var _local31:Number; var _local32:Array; var _local33:Array; var _local34:int; var _local35:int; var _local36:int; var _local37:b2Vec2; var _local38:Number; var _local39:b2ManifoldPoint; _arg1.pointCount = 0; _local7 = 0; _local8 = [_local7]; _local9 = FindMaxSeparation(_local8, _arg2, _arg3, _arg4, _arg5); _local7 = _local8[0]; if (_local9 > 0){ return; }; _local10 = 0; _local11 = [_local10]; _local12 = FindMaxSeparation(_local11, _arg4, _arg5, _arg2, _arg3); _local10 = _local11[0]; if (_local12 > 0){ return; }; _local15 = new b2XForm(); _local16 = new b2XForm(); _local19 = 0.98; _local20 = 0.001; if (_local12 > ((_local19 * _local9) + _local20)){ _local13 = _arg4; _local14 = _arg2; _local15.Set(_arg5); _local16.Set(_arg3); _local17 = _local10; _local18 = 1; } else { _local13 = _arg2; _local14 = _arg4; _local15.Set(_arg3); _local16.Set(_arg5); _local17 = _local7; _local18 = 0; }; _local21 = [new ClipVertex(), new ClipVertex()]; FindIncidentEdge(_local21, _local13, _local15, _local17, _local14, _local16); _local22 = _local13.m_vertexCount; _local23 = _local13.m_vertices; _local24 = _local23[_local17]; _local25 = _local24.Copy(); if ((_local17 + 1) < _local22){ _local24 = _local23[int((_local17 + 1))]; _local37 = _local24.Copy(); } else { _local24 = _local23[0]; _local37 = _local24.Copy(); }; _local26 = b2Math.SubtractVV(_local37, _local25); _local27 = b2Math.b2MulMV(_local15.R, b2Math.SubtractVV(_local37, _local25)); _local27.Normalize(); _local28 = b2Math.b2CrossVF(_local27, 1); _local25 = b2Math.b2MulX(_local15, _local25); _local37 = b2Math.b2MulX(_local15, _local37); _local29 = b2Math.b2Dot(_local28, _local25); _local30 = -(b2Math.b2Dot(_local27, _local25)); _local31 = b2Math.b2Dot(_local27, _local37); _local32 = [new ClipVertex(), new ClipVertex()]; _local33 = [new ClipVertex(), new ClipVertex()]; _local34 = ClipSegmentToLine(_local32, _local21, _local27.Negative(), _local30); if (_local34 < 2){ return; }; _local34 = ClipSegmentToLine(_local33, _local32, _local27, _local31); if (_local34 < 2){ return; }; _arg1.normal = (_local18) ? _local28.Negative() : _local28.Copy(); _local35 = 0; _local36 = 0; while (_local36 < b2Settings.b2_maxManifoldPoints) { _local6 = _local33[_local36]; _local38 = (b2Math.b2Dot(_local28, _local6.v) - _local29); if (_local38 <= 0){ _local39 = _arg1.points[_local35]; _local39.separation = _local38; _local39.localPoint1 = b2Math.b2MulXT(_arg3, _local6.v); _local39.localPoint2 = b2Math.b2MulXT(_arg5, _local6.v); _local39.id.key = _local6.id._key; _local39.id.features.flip = _local18; _local35++; }; _local36++; }; _arg1.pointCount = _local35; } public static function FindMaxSeparation(_arg1:Array, _arg2:b2PolygonShape, _arg3:b2XForm, _arg4:b2PolygonShape, _arg5:b2XForm):Number{ var _local6:int; var _local7:Array; var _local8:b2Vec2; var _local9:b2Mat22; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:int; var _local15:Number; var _local16:int; var _local17:Number; var _local18:int; var _local19:Number; var _local20:int; var _local21:Number; var _local22:int; var _local23:Number; var _local24:int; var _local25:Number; _local6 = _arg2.m_vertexCount; _local7 = _arg2.m_normals; _local9 = _arg5.R; _local8 = _arg4.m_centroid; _local10 = (_arg5.position.x + ((_local9.col1.x * _local8.x) + (_local9.col2.x * _local8.y))); _local11 = (_arg5.position.y + ((_local9.col1.y * _local8.x) + (_local9.col2.y * _local8.y))); _local9 = _arg3.R; _local8 = _arg2.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)))); _local12 = ((_local10 * _arg3.R.col1.x) + (_local11 * _arg3.R.col1.y)); _local13 = ((_local10 * _arg3.R.col2.x) + (_local11 * _arg3.R.col2.y)); _local14 = 0; _local15 = -(Number.MAX_VALUE); _local16 = 0; while (_local16 < _local6) { _local8 = _local7[_local16]; _local25 = ((_local8.x * _local12) + (_local8.y * _local13)); if (_local25 > _local15){ _local15 = _local25; _local14 = _local16; }; _local16++; }; _local17 = EdgeSeparation(_arg2, _arg3, _local14, _arg4, _arg5); if (_local17 > 0){ return (_local17); }; _local18 = (((_local14 - 1) >= 0)) ? (_local14 - 1) : (_local6 - 1); _local19 = EdgeSeparation(_arg2, _arg3, _local18, _arg4, _arg5); if (_local19 > 0){ return (_local19); }; _local20 = (((_local14 + 1) < _local6)) ? (_local14 + 1) : 0; _local21 = EdgeSeparation(_arg2, _arg3, _local20, _arg4, _arg5); if (_local21 > 0){ return (_local21); }; if ((((_local19 > _local17)) && ((_local19 > _local21)))){ _local24 = -1; _local22 = _local18; _local23 = _local19; } else { if (_local21 > _local17){ _local24 = 1; _local22 = _local20; _local23 = _local21; } else { _arg1[0] = _local14; return (_local17); }; }; while (true) { if (_local24 == -1){ _local14 = (((_local22 - 1) >= 0)) ? (_local22 - 1) : (_local6 - 1); } else { _local14 = (((_local22 + 1) < _local6)) ? (_local22 + 1) : 0; }; _local17 = EdgeSeparation(_arg2, _arg3, _local14, _arg4, _arg5); if (_local17 > 0){ return (_local17); }; if (_local17 > _local23){ _local22 = _local14; _local23 = _local17; } else { break; }; }; _arg1[0] = _local22; return (_local23); } public static function ClipSegmentToLine(_arg1:Array, _arg2:Array, _arg3:b2Vec2, _arg4:Number):int{ var _local5:ClipVertex; var _local6:int; var _local7:b2Vec2; var _local8:b2Vec2; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:b2Vec2; var _local13:ClipVertex; _local6 = 0; _local5 = _arg2[0]; _local7 = _local5.v; _local5 = _arg2[1]; _local8 = _local5.v; _local9 = (b2Math.b2Dot(_arg3, _local7) - _arg4); _local10 = (b2Math.b2Dot(_arg3, _local8) - _arg4); if (_local9 <= 0){ var _temp1 = _local6; _local6 = (_local6 + 1); var _local14 = _temp1; _arg1[_local14] = _arg2[0]; }; if (_local10 <= 0){ var _temp2 = _local6; _local6 = (_local6 + 1); _local14 = _temp2; _arg1[_local14] = _arg2[1]; }; if ((_local9 * _local10) < 0){ _local11 = (_local9 / (_local9 - _local10)); _local5 = _arg1[_local6]; _local12 = _local5.v; _local12.x = (_local7.x + (_local11 * (_local8.x - _local7.x))); _local12.y = (_local7.y + (_local11 * (_local8.y - _local7.y))); _local5 = _arg1[_local6]; if (_local9 > 0){ _local13 = _arg2[0]; _local5.id = _local13.id; } else { _local13 = _arg2[1]; _local5.id = _local13.id; }; _local6++; }; return (_local6); } public static function b2CollideCircles(_arg1:b2Manifold, _arg2:b2CircleShape, _arg3:b2XForm, _arg4:b2CircleShape, _arg5:b2XForm):void{ var _local6:b2Mat22; var _local7:b2Vec2; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:b2ManifoldPoint; var _local20:Number; var _local21:Number; var _local22:Number; var _local23:Number; var _local24:Number; var _local25:Number; _arg1.pointCount = 0; _local6 = _arg3.R; _local7 = _arg2.m_localPosition; _local8 = (_arg3.position.x + ((_local6.col1.x * _local7.x) + (_local6.col2.x * _local7.y))); _local9 = (_arg3.position.y + ((_local6.col1.y * _local7.x) + (_local6.col2.y * _local7.y))); _local6 = _arg5.R; _local7 = _arg4.m_localPosition; _local10 = (_arg5.position.x + ((_local6.col1.x * _local7.x) + (_local6.col2.x * _local7.y))); _local11 = (_arg5.position.y + ((_local6.col1.y * _local7.x) + (_local6.col2.y * _local7.y))); _local12 = (_local10 - _local8); _local13 = (_local11 - _local9); _local14 = ((_local12 * _local12) + (_local13 * _local13)); _local15 = _arg2.m_radius; _local16 = _arg4.m_radius; _local17 = (_local15 + _local16); if (_local14 > (_local17 * _local17)){ return; }; if (_local14 < Number.MIN_VALUE){ _local18 = -(_local17); _arg1.normal.Set(0, 1); } else { _local24 = Math.sqrt(_local14); _local18 = (_local24 - _local17); _local25 = (1 / _local24); _arg1.normal.x = (_local25 * _local12); _arg1.normal.y = (_local25 * _local13); }; _arg1.pointCount = 1; _local19 = _arg1.points[0]; _local19.id.key = 0; _local19.separation = _local18; _local8 = (_local8 + (_local15 * _arg1.normal.x)); _local9 = (_local9 + (_local15 * _arg1.normal.y)); _local10 = (_local10 - (_local16 * _arg1.normal.x)); _local11 = (_local11 - (_local16 * _arg1.normal.y)); _local20 = (0.5 * (_local8 + _local10)); _local21 = (0.5 * (_local9 + _local11)); _local22 = (_local20 - _arg3.position.x); _local23 = (_local21 - _arg3.position.y); _local19.localPoint1.x = ((_local22 * _arg3.R.col1.x) + (_local23 * _arg3.R.col1.y)); _local19.localPoint1.y = ((_local22 * _arg3.R.col2.x) + (_local23 * _arg3.R.col2.y)); _local22 = (_local20 - _arg5.position.x); _local23 = (_local21 - _arg5.position.y); _local19.localPoint2.x = ((_local22 * _arg5.R.col1.x) + (_local23 * _arg5.R.col1.y)); _local19.localPoint2.y = ((_local22 * _arg5.R.col2.x) + (_local23 * _arg5.R.col2.y)); } public static function b2CollidePolygonAndCircle(_arg1:b2Manifold, _arg2:b2PolygonShape, _arg3:b2XForm, _arg4:b2CircleShape, _arg5:b2XForm):void{ var _local6:b2ManifoldPoint; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:b2Vec2; var _local12:b2Mat22; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:int; var _local19:Number; var _local20:Number; var _local21:int; var _local22:Array; var _local23:Array; var _local24:int; var _local25:int; var _local26:int; var _local27:b2Vec2; var _local28:Number; var _local29:Number; var _local30:Number; var _local31:Number; var _local32:Number; var _local33:Number; var _local34:Number; _arg1.pointCount = 0; _local12 = _arg5.R; _local11 = _arg4.m_localPosition; _local13 = (_arg5.position.x + ((_local12.col1.x * _local11.x) + (_local12.col2.x * _local11.y))); _local14 = (_arg5.position.y + ((_local12.col1.y * _local11.x) + (_local12.col2.y * _local11.y))); _local7 = (_local13 - _arg3.position.x); _local8 = (_local14 - _arg3.position.y); _local12 = _arg3.R; _local15 = ((_local7 * _local12.col1.x) + (_local8 * _local12.col1.y)); _local16 = ((_local7 * _local12.col2.x) + (_local8 * _local12.col2.y)); _local18 = 0; _local19 = -(Number.MAX_VALUE); _local20 = _arg4.m_radius; _local21 = _arg2.m_vertexCount; _local22 = _arg2.m_vertices; _local23 = _arg2.m_normals; _local24 = 0; while (_local24 < _local21) { _local11 = _local22[_local24]; _local7 = (_local15 - _local11.x); _local8 = (_local16 - _local11.y); _local11 = _local23[_local24]; _local34 = ((_local11.x * _local7) + (_local11.y * _local8)); if (_local34 > _local20){ return; }; if (_local34 > _local19){ _local19 = _local34; _local18 = _local24; }; _local24++; }; if (_local19 < Number.MIN_VALUE){ _arg1.pointCount = 1; _local11 = _local23[_local18]; _local12 = _arg3.R; _arg1.normal.x = ((_local12.col1.x * _local11.x) + (_local12.col2.x * _local11.y)); _arg1.normal.y = ((_local12.col1.y * _local11.x) + (_local12.col2.y * _local11.y)); _local6 = _arg1.points[0]; _local6.id.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; }; _local25 = _local18; _local26 = (((_local25 + 1) < _local21)) ? (_local25 + 1) : 0; _local11 = _local22[_local25]; _local27 = _local22[_local26]; _local28 = (_local27.x - _local11.x); _local29 = (_local27.y - _local11.y); _local30 = Math.sqrt(((_local28 * _local28) + (_local29 * _local29))); _local28 = (_local28 / _local30); _local29 = (_local29 / _local30); _local7 = (_local15 - _local11.x); _local8 = (_local16 - _local11.y); _local31 = ((_local7 * _local28) + (_local8 * _local29)); _local6 = _arg1.points[0]; if (_local31 <= 0){ _local32 = _local11.x; _local33 = _local11.y; _local6.id.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; _local1 = new b2ContactID(); _local1.key = key; return (_local1); } public function get key():uint{ return (_key); } 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); } } }//package Box2D.Collision
Section 16
//b2ContactPoint (Box2D.Collision.b2ContactPoint) package Box2D.Collision { import Box2D.Collision.Shapes.*; import Box2D.Common.Math.*; public class b2ContactPoint { public var separation:Number; public var normal:b2Vec2; public var position:b2Vec2; public var restitution:Number; public var shape1:b2Shape; public var shape2:b2Shape; public var id:b2ContactID; public var friction:Number; public var velocity:b2Vec2; public function b2ContactPoint(){ position = new b2Vec2(); velocity = new b2Vec2(); normal = new b2Vec2(); id = new b2ContactID(); super(); } } }//package Box2D.Collision
Section 17
//b2Distance (Box2D.Collision.b2Distance) package Box2D.Collision { import Box2D.Common.Math.*; import Box2D.Common.*; import Box2D.Collision.Shapes.*; public class b2Distance { private static var s_p2s:Array = [new b2Vec2(), new b2Vec2(), new b2Vec2()]; private static var s_p1s:Array = [new b2Vec2(), new b2Vec2(), new b2Vec2()]; private static var s_points:Array = [new b2Vec2(), new b2Vec2(), new b2Vec2()]; private static var gPoint:b2Point = new b2Point(); public static var g_GJK_Iterations:int = 0; public static function InPoints(_arg1:b2Vec2, _arg2:Array, _arg3:int):Boolean{ var _local4:Number; var _local5:int; var _local6:b2Vec2; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; _local4 = (100 * Number.MIN_VALUE); _local5 = 0; while (_local5 < _arg3) { _local6 = _arg2[_local5]; _local7 = Math.abs((_arg1.x - _local6.x)); _local8 = Math.abs((_arg1.y - _local6.y)); _local9 = Math.max(Math.abs(_arg1.x), Math.abs(_local6.x)); _local10 = Math.max(Math.abs(_arg1.y), Math.abs(_local6.y)); if ((((_local7 < (_local4 * (_local9 + 1)))) && ((_local8 < (_local4 * (_local10 + 1)))))){ return (true); }; _local5++; }; return (false); } public static function DistanceGeneric(_arg1:b2Vec2, _arg2:b2Vec2, _arg3, _arg4:b2XForm, _arg5, _arg6:b2XForm):Number{ var _local7:b2Vec2; var _local8:Array; var _local9:Array; var _local10:Array; var _local11:int; var _local12:Number; var _local13:int; var _local14:int; var _local15:Number; var _local16:Number; var _local17:b2Vec2; var _local18:b2Vec2; var _local19:Number; var _local20:Number; var _local21:Number; var _local22:Number; var _local23:int; _local8 = s_p1s; _local9 = s_p2s; _local10 = s_points; _local11 = 0; _arg1.SetV(_arg3.GetFirstVertex(_arg4)); _arg2.SetV(_arg5.GetFirstVertex(_arg6)); _local12 = 0; _local13 = 20; _local14 = 0; while (_local14 < _local13) { _local15 = (_arg2.x - _arg1.x); _local16 = (_arg2.y - _arg1.y); _local17 = _arg3.Support(_arg4, _local15, _local16); _local18 = _arg5.Support(_arg6, -(_local15), -(_local16)); _local12 = ((_local15 * _local15) + (_local16 * _local16)); _local19 = (_local18.x - _local17.x); _local20 = (_local18.y - _local17.y); _local21 = ((_local15 * _local19) + (_local16 * _local20)); if ((_local12 - ((_local15 * _local19) + (_local16 * _local20))) <= (0.01 * _local12)){ if (_local11 == 0){ _arg1.SetV(_local17); _arg2.SetV(_local18); }; g_GJK_Iterations = _local14; return (Math.sqrt(_local12)); }; switch (_local11){ case 0: _local7 = _local8[0]; _local7.SetV(_local17); _local7 = _local9[0]; _local7.SetV(_local18); _local7 = _local10[0]; _local7.x = _local19; _local7.y = _local20; _arg1.SetV(_local8[0]); _arg2.SetV(_local9[0]); _local11++; break; case 1: _local7 = _local8[1]; _local7.SetV(_local17); _local7 = _local9[1]; _local7.SetV(_local18); _local7 = _local10[1]; _local7.x = _local19; _local7.y = _local20; _local11 = ProcessTwo(_arg1, _arg2, _local8, _local9, _local10); break; case 2: _local7 = _local8[2]; _local7.SetV(_local17); _local7 = _local9[2]; _local7.SetV(_local18); _local7 = _local10[2]; _local7.x = _local19; _local7.y = _local20; _local11 = ProcessThree(_arg1, _arg2, _local8, _local9, _local10); break; }; if (_local11 == 3){ g_GJK_Iterations = _local14; return (0); }; _local22 = -(Number.MAX_VALUE); _local23 = 0; while (_local23 < _local11) { _local7 = _local10[_local23]; _local22 = b2Math.b2Max(_local22, ((_local7.x * _local7.x) + (_local7.y * _local7.y))); _local23++; }; if ((((_local11 == 3)) || ((_local12 <= ((100 * Number.MIN_VALUE) * _local22))))){ g_GJK_Iterations = _local14; _local15 = (_arg2.x - _arg1.x); _local16 = (_arg2.y - _arg1.y); _local12 = ((_local15 * _local15) + (_local16 * _local16)); return (Math.sqrt(_local12)); }; _local14++; }; g_GJK_Iterations = _local13; return (Math.sqrt(_local12)); } public static function DistanceCC(_arg1:b2Vec2, _arg2:b2Vec2, _arg3:b2CircleShape, _arg4:b2XForm, _arg5:b2CircleShape, _arg6:b2XForm):Number{ var _local7:b2Mat22; var _local8:b2Vec2; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; var _local20:Number; _local7 = _arg4.R; _local8 = _arg3.m_localPosition; _local9 = (_arg4.position.x + ((_local7.col1.x * _local8.x) + (_local7.col2.x * _local8.y))); _local10 = (_arg4.position.y + ((_local7.col1.y * _local8.x) + (_local7.col2.y * _local8.y))); _local7 = _arg6.R; _local8 = _arg5.m_localPosition; _local11 = (_arg6.position.x + ((_local7.col1.x * _local8.x) + (_local7.col2.x * _local8.y))); _local12 = (_arg6.position.y + ((_local7.col1.y * _local8.x) + (_local7.col2.y * _local8.y))); _local13 = (_local11 - _local9); _local14 = (_local12 - _local10); _local15 = ((_local13 * _local13) + (_local14 * _local14)); _local16 = (_arg3.m_radius - b2Settings.b2_toiSlop); _local17 = (_arg5.m_radius - b2Settings.b2_toiSlop); _local18 = (_local16 + _local17); if (_local15 > (_local18 * _local18)){ _local19 = Math.sqrt(((_local13 * _local13) + (_local14 * _local14))); _local13 = (_local13 / _local19); _local14 = (_local14 / _local19); _local20 = (_local19 - _local18); _arg1.x = (_local9 + (_local16 * _local13)); _arg1.y = (_local10 + (_local16 * _local14)); _arg2.x = (_local11 - (_local17 * _local13)); _arg2.y = (_local12 - (_local17 * _local14)); return (_local20); }; if (_local15 > (Number.MIN_VALUE * Number.MIN_VALUE)){ _local19 = Math.sqrt(((_local13 * _local13) + (_local14 * _local14))); _local13 = (_local13 / _local19); _local14 = (_local14 / _local19); _arg1.x = (_local9 + (_local16 * _local13)); _arg1.y = (_local10 + (_local16 * _local14)); _arg2.x = _arg1.x; _arg2.y = _arg1.y; return (0); }; _arg1.x = _local9; _arg1.y = _local10; _arg2.x = _arg1.x; _arg2.y = _arg1.y; return (0); } public static function ProcessThree(_arg1:b2Vec2, _arg2:b2Vec2, _arg3:Array, _arg4:Array, _arg5:Array):int{ var _local6:b2Vec2; var _local7:b2Vec2; var _local8:b2Vec2; var _local9:b2Vec2; var _local10:b2Vec2; var _local11:b2Vec2; var _local12:b2Vec2; var _local13:b2Vec2; var _local14:b2Vec2; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; var _local20:Number; var _local21:Number; var _local22:Number; var _local23:Number; var _local24:Number; var _local25:Number; var _local26:Number; var _local27:Number; var _local28:Number; var _local29:Number; var _local30:Number; var _local31:Number; var _local32:Number; var _local33:Number; var _local34:Number; var _local35:Number; var _local36:Number; var _local37:Number; var _local38:Number; var _local39:Number; var _local40:Number; var _local41:Number; _local6 = _arg5[0]; _local7 = _arg5[1]; _local8 = _arg5[2]; _local9 = _arg3[0]; _local10 = _arg3[1]; _local11 = _arg3[2]; _local12 = _arg4[0]; _local13 = _arg4[1]; _local14 = _arg4[2]; _local15 = _local6.x; _local16 = _local6.y; _local17 = _local7.x; _local18 = _local7.y; _local19 = _local8.x; _local20 = _local8.y; _local21 = (_local17 - _local15); _local22 = (_local18 - _local16); _local23 = (_local19 - _local15); _local24 = (_local20 - _local16); _local25 = (_local19 - _local17); _local26 = (_local20 - _local18); _local27 = -(((_local15 * _local21) + (_local16 * _local22))); _local28 = ((_local17 * _local21) + (_local18 * _local22)); _local29 = -(((_local15 * _local23) + (_local16 * _local24))); _local30 = ((_local19 * _local23) + (_local20 * _local24)); _local31 = -(((_local17 * _local25) + (_local18 * _local26))); _local32 = ((_local19 * _local25) + (_local20 * _local26)); if ((((_local30 <= 0)) && ((_local32 <= 0)))){ _arg1.SetV(_local11); _arg2.SetV(_local14); _local9.SetV(_local11); _local12.SetV(_local14); _local6.SetV(_local8); return (1); }; _local33 = ((_local21 * _local24) - (_local22 * _local23)); _local34 = (_local33 * ((_local15 * _local18) - (_local16 * _local17))); _local36 = (_local33 * ((_local17 * _local20) - (_local18 * _local19))); if ((((((((_local36 <= 0)) && ((_local31 >= 0)))) && ((_local32 >= 0)))) && (((_local31 + _local32) > 0)))){ _local35 = (_local31 / (_local31 + _local32)); _arg1.x = (_local10.x + (_local35 * (_local11.x - _local10.x))); _arg1.y = (_local10.y + (_local35 * (_local11.y - _local10.y))); _arg2.x = (_local13.x + (_local35 * (_local14.x - _local13.x))); _arg2.y = (_local13.y + (_local35 * (_local14.y - _local13.y))); _local9.SetV(_local11); _local12.SetV(_local14); _local6.SetV(_local8); return (2); }; _local37 = (_local33 * ((_local19 * _local16) - (_local20 * _local15))); if ((((((((_local37 <= 0)) && ((_local29 >= 0)))) && ((_local30 >= 0)))) && (((_local29 + _local30) > 0)))){ _local35 = (_local29 / (_local29 + _local30)); _arg1.x = (_local9.x + (_local35 * (_local11.x - _local9.x))); _arg1.y = (_local9.y + (_local35 * (_local11.y - _local9.y))); _arg2.x = (_local12.x + (_local35 * (_local14.x - _local12.x))); _arg2.y = (_local12.y + (_local35 * (_local14.y - _local12.y))); _local10.SetV(_local11); _local13.SetV(_local14); _local7.SetV(_local8); return (2); }; _local38 = ((_local36 + _local37) + _local34); _local38 = (1 / _local38); _local39 = (_local36 * _local38); _local40 = (_local37 * _local38); _local41 = ((1 - _local39) - _local40); _arg1.x = (((_local39 * _local9.x) + (_local40 * _local10.x)) + (_local41 * _local11.x)); _arg1.y = (((_local39 * _local9.y) + (_local40 * _local10.y)) + (_local41 * _local11.y)); _arg2.x = (((_local39 * _local12.x) + (_local40 * _local13.x)) + (_local41 * _local14.x)); _arg2.y = (((_local39 * _local12.y) + (_local40 * _local13.y)) + (_local41 * _local14.y)); return (3); } public static function DistancePC(_arg1:b2Vec2, _arg2:b2Vec2, _arg3:b2PolygonShape, _arg4:b2XForm, _arg5:b2CircleShape, _arg6:b2XForm):Number{ var _local7:b2Mat22; var _local8:b2Vec2; var _local9:b2Point; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; _local9 = gPoint; _local8 = _arg5.m_localPosition; _local7 = _arg6.R; _local9.p.x = (_arg6.position.x + ((_local7.col1.x * _local8.x) + (_local7.col2.x * _local8.y))); _local9.p.y = (_arg6.position.y + ((_local7.col1.y * _local8.x) + (_local7.col2.y * _local8.y))); _local10 = DistanceGeneric(_arg1, _arg2, _arg3, _arg4, _local9, b2Math.b2XForm_identity); _local11 = (_arg5.m_radius - b2Settings.b2_toiSlop); if (_local10 > _local11){ _local10 = (_local10 - _local11); _local12 = (_arg2.x - _arg1.x); _local13 = (_arg2.y - _arg1.y); _local14 = Math.sqrt(((_local12 * _local12) + (_local13 * _local13))); _local12 = (_local12 / _local14); _local13 = (_local13 / _local14); _arg2.x = (_arg2.x - (_local11 * _local12)); _arg2.y = (_arg2.y - (_local11 * _local13)); } else { _local10 = 0; _arg2.x = _arg1.x; _arg2.y = _arg1.y; }; return (_local10); } public static function Distance(_arg1:b2Vec2, _arg2:b2Vec2, _arg3:b2Shape, _arg4:b2XForm, _arg5:b2Shape, _arg6:b2XForm):Number{ var _local7:int; var _local8:int; _local7 = _arg3.m_type; _local8 = _arg5.m_type; if ((((_local7 == b2Shape.e_circleShape)) && ((_local8 == b2Shape.e_circleShape)))){ return (DistanceCC(_arg1, _arg2, (_arg3 as b2CircleShape), _arg4, (_arg5 as b2CircleShape), _arg6)); }; if ((((_local7 == b2Shape.e_polygonShape)) && ((_local8 == b2Shape.e_circleShape)))){ return (DistancePC(_arg1, _arg2, (_arg3 as b2PolygonShape), _arg4, (_arg5 as b2CircleShape), _arg6)); }; if ((((_local7 == b2Shape.e_circleShape)) && ((_local8 == b2Shape.e_polygonShape)))){ return (DistancePC(_arg2, _arg1, (_arg5 as b2PolygonShape), _arg6, (_arg3 as b2CircleShape), _arg4)); }; if ((((_local7 == b2Shape.e_polygonShape)) && ((_local8 == b2Shape.e_polygonShape)))){ return (DistanceGeneric(_arg1, _arg2, (_arg3 as b2PolygonShape), _arg4, (_arg5 as b2PolygonShape), _arg6)); }; return (0); } public static function ProcessTwo(_arg1:b2Vec2, _arg2:b2Vec2, _arg3:Array, _arg4:Array, _arg5:Array):int{ var _local6:b2Vec2; var _local7:b2Vec2; var _local8:b2Vec2; var _local9:b2Vec2; var _local10:b2Vec2; var _local11:b2Vec2; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; _local6 = _arg5[0]; _local7 = _arg5[1]; _local8 = _arg3[0]; _local9 = _arg3[1]; _local10 = _arg4[0]; _local11 = _arg4[1]; _local12 = -(_local7.x); _local13 = -(_local7.y); _local14 = (_local6.x - _local7.x); _local15 = (_local6.y - _local7.y); _local16 = Math.sqrt(((_local14 * _local14) + (_local15 * _local15))); _local14 = (_local14 / _local16); _local15 = (_local15 / _local16); _local17 = ((_local12 * _local14) + (_local13 * _local15)); if ((((_local17 <= 0)) || ((_local16 < Number.MIN_VALUE)))){ _arg1.SetV(_local9); _arg2.SetV(_local11); _local8.SetV(_local9); _local10.SetV(_local11); _local6.SetV(_local7); return (1); }; _local17 = (_local17 / _local16); _arg1.x = (_local9.x + (_local17 * (_local8.x - _local9.x))); _arg1.y = (_local9.y + (_local17 * (_local8.y - _local9.y))); _arg2.x = (_local11.x + (_local17 * (_local10.x - _local11.x))); _arg2.y = (_local11.y + (_local17 * (_local10.y - _local11.y))); return (2); } } }//package Box2D.Collision
Section 18
//b2Manifold (Box2D.Collision.b2Manifold) package Box2D.Collision { import Box2D.Common.Math.*; import Box2D.Common.*; public class b2Manifold { public var points:Array; public var pointCount:int;// = 0 public var normal:b2Vec2; public function b2Manifold(){ var _local1:int; pointCount = 0; super(); points = new Array(b2Settings.b2_maxManifoldPoints); _local1 = 0; while (_local1 < b2Settings.b2_maxManifoldPoints) { points[_local1] = new b2ManifoldPoint(); _local1++; }; normal = new b2Vec2(); } public function Set(_arg1:b2Manifold):void{ var _local2:int; pointCount = _arg1.pointCount; _local2 = 0; while (_local2 < b2Settings.b2_maxManifoldPoints) { (points[_local2] as b2ManifoldPoint).Set(_arg1.points[_local2]); _local2++; }; normal.SetV(_arg1.normal); } public function Reset():void{ var _local1:int; _local1 = 0; while (_local1 < b2Settings.b2_maxManifoldPoints) { (points[_local1] as b2ManifoldPoint).Reset(); _local1++; }; normal.SetZero(); pointCount = 0; } } }//package Box2D.Collision
Section 19
//b2ManifoldPoint (Box2D.Collision.b2ManifoldPoint) package Box2D.Collision { import Box2D.Common.Math.*; public class b2ManifoldPoint { public var separation:Number; public var localPoint2:b2Vec2; public var normalImpulse:Number; public var tangentImpulse:Number; public var localPoint1:b2Vec2; public var id:b2ContactID; public function b2ManifoldPoint(){ localPoint1 = new b2Vec2(); localPoint2 = new b2Vec2(); id = new b2ContactID(); super(); } public function Set(_arg1:b2ManifoldPoint):void{ localPoint1.SetV(_arg1.localPoint1); localPoint2.SetV(_arg1.localPoint2); separation = _arg1.separation; normalImpulse = _arg1.normalImpulse; tangentImpulse = _arg1.tangentImpulse; id.key = _arg1.id.key; } public function Reset():void{ localPoint1.SetZero(); localPoint2.SetZero(); separation = 0; normalImpulse = 0; tangentImpulse = 0; id.key = 0; } } }//package Box2D.Collision
Section 20
//b2OBB (Box2D.Collision.b2OBB) package Box2D.Collision { import Box2D.Common.Math.*; public class b2OBB { public var R:b2Mat22; public var center:b2Vec2; public var extents:b2Vec2; public function b2OBB(){ R = new b2Mat22(); center = new b2Vec2(); extents = new b2Vec2(); super(); } } }//package Box2D.Collision
Section 21
//b2Pair (Box2D.Collision.b2Pair) package Box2D.Collision { import Box2D.Common.*; public class b2Pair { public var userData;// = null public var proxyId1:uint; public var proxyId2:uint; public var status:uint; public var next:uint; public static var e_pairFinal:uint = 4; public static var b2_tableMask:int = (b2_tableCapacity - 1); public static var e_pairRemoved:uint = 2; public static var b2_nullPair:uint = b2Settings.USHRT_MAX; public static var e_pairBuffered:uint = 1; public static var b2_nullProxy:uint = b2Settings.USHRT_MAX; public static var b2_tableCapacity:int = b2Settings.b2_maxPairs; public function b2Pair(){ userData = null; super(); } public function SetBuffered():void{ status = (status | e_pairBuffered); } public function IsBuffered():Boolean{ return (((status & e_pairBuffered) == e_pairBuffered)); } public function IsFinal():Boolean{ return (((status & e_pairFinal) == e_pairFinal)); } public function ClearRemoved():void{ status = (status & ~(e_pairRemoved)); } public function SetFinal():void{ status = (status | e_pairFinal); } public function IsRemoved():Boolean{ return (((status & e_pairRemoved) == e_pairRemoved)); } public function ClearBuffered():void{ status = (status & ~(e_pairBuffered)); } public function SetRemoved():void{ status = (status | e_pairRemoved); } } }//package Box2D.Collision
Section 22
//b2PairCallback (Box2D.Collision.b2PairCallback) package Box2D.Collision { public class b2PairCallback { public function PairRemoved(_arg1, _arg2, _arg3):void{ } public function PairAdded(_arg1, _arg2){ return (null); } } }//package Box2D.Collision
Section 23
//b2PairManager (Box2D.Collision.b2PairManager) package Box2D.Collision { import Box2D.Common.*; import Box2D.Common.Math.*; public class b2PairManager { public var m_pairCount:int; public var m_pairBuffer:Array; public var m_callback:b2PairCallback; public var m_pairs:Array; public var m_pairBufferCount:int; public var m_hashTable:Array; 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; _local5 = m_hashTable[_arg3]; _local4 = m_pairs[_local5]; while (((!((_local5 == b2Pair.b2_nullPair))) && ((Equals(_local4, _arg1, _arg2) == false)))) { _local5 = _local4.next; _local4 = m_pairs[_local5]; }; if (_local5 == b2Pair.b2_nullPair){ return (null); }; return (_local4); } private function Find(_arg1:uint, _arg2:uint):b2Pair{ var _local3:uint; var _local4:uint; if (_arg1 > _arg2){ _local4 = _arg1; _arg1 = _arg2; _arg2 = _local4; }; _local3 = (Hash(_arg1, _arg2) & b2Pair.b2_tableMask); return (FindHash(_arg1, _arg2, _local3)); } private function ValidateBuffer():void{ } public function Commit():void{ var _local1:b2BufferedPair; var _local2:int; var _local3:int; var _local4:Array; var _local5:b2Pair; var _local6:b2Proxy; var _local7:b2Proxy; _local3 = 0; _local4 = m_broadPhase.m_proxyPool; _local2 = 0; while (_local2 < 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; _local4 = 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 _local4:uint; var _local5:uint; var _local6:b2Pair; var _local7:uint; var _local8:uint; var _local9:*; if (_arg1 > _arg2){ _local7 = _arg1; _arg1 = _arg2; _arg2 = _local7; }; _local4 = (Hash(_arg1, _arg2) & b2Pair.b2_tableMask); _local5 = m_hashTable[_local4]; _local6 = null; while (_local5 != b2Pair.b2_nullPair) { if (Equals(m_pairs[_local5], _arg1, _arg2)){ _local8 = _local5; _local3 = m_pairs[_local5]; if (_local6){ _local6.next = _local3.next; } else { m_hashTable[_local4] = _local3.next; }; _local3 = m_pairs[_local8]; _local9 = _local3.userData; _local3.next = 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; _local4 = 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 _local3:uint; var _local4:b2Pair; var _local5:uint; var _local6:uint; if (_arg1 > _arg2){ _local6 = _arg1; _arg1 = _arg2; _arg2 = _local6; }; _local3 = (Hash(_arg1, _arg2) & b2Pair.b2_tableMask); _local4 = FindHash(_arg1, _arg2, _local3); if (_local4 != null){ return (_local4); }; _local5 = 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; _local3 = (((_arg2 << 16) & 4294901760) | _arg1); _local3 = (~(_local3) + ((_local3 << 15) & 4294934528)); _local3 = (_local3 ^ ((_local3 >> 12) & 1048575)); _local3 = (_local3 + ((_local3 << 2) & 4294967292)); _local3 = (_local3 ^ ((_local3 >> 4) & 268435455)); _local3 = (_local3 * 2057); _local3 = (_local3 ^ ((_local3 >> 16) & 0xFFFF)); return (_local3); } public static function Equals(_arg1:b2Pair, _arg2:uint, _arg3:uint):Boolean{ return ((((_arg1.proxyId1 == _arg2)) && ((_arg1.proxyId2 == _arg3)))); } } }//package Box2D.Collision
Section 24
//b2Point (Box2D.Collision.b2Point) package Box2D.Collision { import Box2D.Common.Math.*; public class b2Point { public var p:b2Vec2; public function b2Point(){ p = new b2Vec2(); super(); } public function GetFirstVertex(_arg1:b2XForm):b2Vec2{ return (p); } public function Support(_arg1:b2XForm, _arg2:Number, _arg3:Number):b2Vec2{ return (p); } } }//package Box2D.Collision
Section 25
//b2Proxy (Box2D.Collision.b2Proxy) package Box2D.Collision { public class b2Proxy { public var overlapCount:uint; public var lowerBounds:Array; public var upperBounds:Array; public var userData;// = null public var timeStamp:uint; public function b2Proxy(){ lowerBounds = [uint(0), uint(0)]; upperBounds = [uint(0), uint(0)]; userData = null; super(); } public function GetNext():uint{ return (lowerBounds[0]); } public function IsValid():Boolean{ return (!((overlapCount == b2BroadPhase.b2_invalid))); } public function SetNext(_arg1:uint):void{ lowerBounds[0] = (_arg1 & 0xFFFF); } } }//package Box2D.Collision
Section 26
//b2Segment (Box2D.Collision.b2Segment) package Box2D.Collision { import Box2D.Common.Math.*; 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 _local5:b2Vec2; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; _local5 = _arg3.p1; _local6 = (_arg3.p2.x - _local5.x); _local7 = (_arg3.p2.y - _local5.y); _local8 = (p2.x - p1.x); _local9 = (p2.y - p1.y); _local10 = _local9; _local11 = -(_local8); _local12 = (100 * Number.MIN_VALUE); _local13 = -(((_local6 * _local10) + (_local7 * _local11))); if (_local13 > _local12){ _local14 = (_local5.x - p1.x); _local15 = (_local5.y - p1.y); _local16 = ((_local14 * _local10) + (_local15 * _local11)); if ((((0 <= _local16)) && ((_local16 <= (_arg4 * _local13))))){ _local17 = ((-(_local7) * _local15) + (_local7 * _local14)); if (((((-(_local12) * _local13) <= _local17)) && ((_local17 <= (_local13 * (1 + _local12)))))){ _local16 = (_local16 / _local13); _local18 = Math.sqrt(((_local10 * _local10) + (_local11 * _local11))); _local10 = (_local10 / _local18); _local11 = (_local11 / _local18); _arg1[0] = _local16; _arg2.Set(_local10, _local11); return (true); }; }; }; return (false); } public function ExtendForward(_arg1:b2AABB):void{ var dX:Number; var dY:Number; var greaterthan0:*; var lambda:Number; var aabb = _arg1; dX = (p2.x - p1.x); dY = (p2.y - p1.y); greaterthan0 = function (_arg1){ return ((_arg1 > 0)); }; lambda = Math.min(((dX > 0)) ? ((aabb.upperBound.x - p1.x) / dX) : ((dX < 0)) ? ((aabb.lowerBound.x - p1.x) / dX) : Number.POSITIVE_INFINITY, ((dY > 0)) ? ((aabb.upperBound.y - p1.y) / dY) : ((dY < 0)) ? ((aabb.lowerBound.y - p1.y) / dY) : Number.POSITIVE_INFINITY); p2.x = (p1.x + (dX * lambda)); p2.y = (p1.y + (dY * lambda)); } public function Extend(_arg1:b2AABB):void{ ExtendForward(_arg1); ExtendBackward(_arg1); } public function ExtendBackward(_arg1:b2AABB):void{ var dX:Number; var dY:Number; var greaterthan0:*; var lambda:Number; var aabb = _arg1; dX = (-(p2.x) + p1.x); dY = (-(p2.y) + p1.y); greaterthan0 = function (_arg1){ return ((_arg1 > 0)); }; lambda = Math.min(((dX > 0)) ? ((aabb.upperBound.x - p2.x) / dX) : ((dX < 0)) ? ((aabb.lowerBound.x - p2.x) / dX) : Number.POSITIVE_INFINITY, ((dY > 0)) ? ((aabb.upperBound.y - p2.y) / dY) : ((dY < 0)) ? ((aabb.lowerBound.y - p2.y) / dY) : Number.POSITIVE_INFINITY); p1.x = (p2.x + (dX * lambda)); p1.y = (p2.y + (dY * lambda)); } } }//package Box2D.Collision
Section 27
//b2TimeOfImpact (Box2D.Collision.b2TimeOfImpact) package Box2D.Collision { import Box2D.Common.Math.*; import Box2D.Common.*; import Box2D.Collision.Shapes.*; public class b2TimeOfImpact { public static var s_xf1:b2XForm = new b2XForm(); public static var s_xf2:b2XForm = new b2XForm(); public static var s_p1:b2Vec2 = new b2Vec2(); public static var s_p2:b2Vec2 = new b2Vec2(); public static function TimeOfImpact(_arg1:b2Shape, _arg2:b2Sweep, _arg3:b2Shape, _arg4:b2Sweep):Number{ var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:b2Vec2; var _local18:b2Vec2; var _local19:int; var _local20:int; var _local21:Number; var _local22:Number; var _local23:Number; var _local24:Number; var _local25:Number; var _local26:b2XForm; var _local27:b2XForm; var _local28:Number; var _local29:Number; var _local30:Number; var _local31:Number; _local7 = _arg1.m_sweepRadius; _local8 = _arg3.m_sweepRadius; _local9 = _arg2.t0; _local10 = (_arg2.c.x - _arg2.c0.x); _local11 = (_arg2.c.y - _arg2.c0.y); _local12 = (_arg4.c.x - _arg4.c0.x); _local13 = (_arg4.c.y - _arg4.c0.y); _local14 = (_arg2.a - _arg2.a0); _local15 = (_arg4.a - _arg4.a0); _local16 = 0; _local17 = s_p1; _local18 = s_p2; _local19 = 20; _local20 = 0; _local21 = 0; _local22 = 0; _local23 = 0; _local24 = 0; while (true) { _local25 = (((1 - _local16) * _local9) + _local16); _local26 = s_xf1; _local27 = s_xf2; _arg2.GetXForm(_local26, _local25); _arg4.GetXForm(_local27, _local25); _local23 = b2Distance.Distance(_local17, _local18, _arg1, _local26, _arg3, _local27); if (_local20 == 0){ if (_local23 > (2 * b2Settings.b2_toiSlop)){ _local24 = (1.5 * b2Settings.b2_toiSlop); } else { _local5 = (0.05 * b2Settings.b2_toiSlop); _local6 = (_local23 - (0.5 * b2Settings.b2_toiSlop)); _local24 = ((_local5 > _local6)) ? _local5 : _local6; }; }; 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 v:b2Vec2; public var id:b2ContactID; public function ClipVertex(){ v = new b2Vec2(); id = new b2ContactID(); super(); } } }//package Box2D.Collision
Section 29
//Features (Box2D.Collision.Features) package Box2D.Collision { public class Features { public var _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 set flip(_arg1:int):void{ _flip = _arg1; _m_id._key = ((_m_id._key & 0xFFFFFF) | ((_flip << 24) & 4278190080)); } public function get incidentVertex():int{ return (_incidentVertex); } public function set incidentEdge(_arg1:int):void{ _incidentEdge = _arg1; _m_id._key = ((_m_id._key & 4294902015) | ((_incidentEdge << 8) & 0xFF00)); } } }//package Box2D.Collision
Section 30
//b2Mat22 (Box2D.Common.Math.b2Mat22) package Box2D.Common.Math { import Box2D.Common.*; public class b2Mat22 { public var col1:b2Vec2; public var col2:b2Vec2; public function b2Mat22(_arg1:Number=0, _arg2:b2Vec2=null, _arg3:b2Vec2=null){ var _local4:Number; var _local5:Number; col1 = new b2Vec2(); col2 = new b2Vec2(); super(); if (((!((_arg2 == null))) && (!((_arg3 == null))))){ col1.SetV(_arg2); col2.SetV(_arg3); } else { _local4 = Math.cos(_arg1); _local5 = Math.sin(_arg1); col1.x = _local4; col2.x = -(_local5); col1.y = _local5; col2.y = _local4; }; } public function SetIdentity():void{ col1.x = 1; col2.x = 0; col1.y = 0; col2.y = 1; } public function Set(_arg1:Number):void{ var _local2:Number; var _local3:Number; _local2 = Math.cos(_arg1); _local3 = Math.sin(_arg1); col1.x = _local2; col2.x = -(_local3); col1.y = _local3; col2.y = _local2; } public function SetVV(_arg1:b2Vec2, _arg2:b2Vec2):void{ col1.SetV(_arg1); col2.SetV(_arg2); } public function SetZero():void{ col1.x = 0; col2.x = 0; col1.y = 0; col2.y = 0; } public function SetM(_arg1:b2Mat22):void{ col1.SetV(_arg1.col1); col2.SetV(_arg1.col2); } public function AddM(_arg1:b2Mat22):void{ col1.x = (col1.x + _arg1.col1.x); col1.y = (col1.y + _arg1.col1.y); col2.x = (col2.x + _arg1.col2.x); col2.y = (col2.y + _arg1.col2.y); } public function Abs():void{ col1.Abs(); col2.Abs(); } public function Copy():b2Mat22{ return (new b2Mat22(0, col1, col2)); } public function Invert(_arg1:b2Mat22):b2Mat22{ var _local2:Number; var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Number; _local2 = col1.x; _local3 = col2.x; _local4 = col1.y; _local5 = col2.y; _local6 = ((_local2 * _local5) - (_local3 * _local4)); _local6 = (1 / _local6); _arg1.col1.x = (_local6 * _local5); _arg1.col2.x = (-(_local6) * _local3); _arg1.col1.y = (-(_local6) * _local4); _arg1.col2.y = (_local6 * _local2); return (_arg1); } public function GetAngle():Number{ return (Math.atan2(col1.y, col1.x)); } public function Solve(_arg1:b2Vec2, _arg2:Number, _arg3:Number):b2Vec2{ var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; _local4 = col1.x; _local5 = col2.x; _local6 = col1.y; _local7 = col2.y; _local8 = ((_local4 * _local7) - (_local5 * _local6)); _local8 = (1 / _local8); _arg1.x = (_local8 * ((_local7 * _arg2) - (_local5 * _arg3))); _arg1.y = (_local8 * ((_local4 * _arg3) - (_local6 * _arg2))); return (_arg1); } } }//package Box2D.Common.Math
Section 31
//b2Math (Box2D.Common.Math.b2Math) package Box2D.Common.Math { public class b2Math { public static const b2Mat22_identity:b2Mat22 = new b2Mat22(0, new b2Vec2(1, 0), new b2Vec2(0, 1)); public static const b2XForm_identity:b2XForm = new b2XForm(b2Vec2_zero, b2Mat22_identity); public static const b2Vec2_zero:b2Vec2 = new b2Vec2(0, 0); public static function b2CrossVF(_arg1:b2Vec2, _arg2:Number):b2Vec2{ var _local3:b2Vec2; _local3 = new b2Vec2((_arg2 * _arg1.y), (-(_arg2) * _arg1.x)); return (_local3); } public static function AddVV(_arg1:b2Vec2, _arg2:b2Vec2):b2Vec2{ var _local3:b2Vec2; _local3 = new b2Vec2((_arg1.x + _arg2.x), (_arg1.y + _arg2.y)); return (_local3); } public static function b2IsValid(_arg1:Number):Boolean{ return (isFinite(_arg1)); } public static function b2MinV(_arg1:b2Vec2, _arg2:b2Vec2):b2Vec2{ var _local3:b2Vec2; _local3 = new b2Vec2(b2Min(_arg1.x, _arg2.x), b2Min(_arg1.y, _arg2.y)); return (_local3); } public static function b2MulX(_arg1:b2XForm, _arg2:b2Vec2):b2Vec2{ var _local3:b2Vec2; _local3 = b2MulMV(_arg1.R, _arg2); _local3.x = (_local3.x + _arg1.position.x); _local3.y = (_local3.y + _arg1.position.y); return (_local3); } public static function b2DistanceSquared(_arg1:b2Vec2, _arg2:b2Vec2):Number{ var _local3:Number; var _local4:Number; _local3 = (_arg1.x - _arg2.x); _local4 = (_arg1.y - _arg2.y); return (((_local3 * _local3) + (_local4 * _local4))); } public static function b2Swap(_arg1:Array, _arg2:Array):void{ var _local3:*; _local3 = _arg1[0]; _arg1[0] = _arg2[0]; _arg2[0] = _local3; } public static function b2AbsM(_arg1:b2Mat22):b2Mat22{ var _local2:b2Mat22; _local2 = new b2Mat22(0, b2AbsV(_arg1.col1), b2AbsV(_arg1.col2)); return (_local2); } public static function SubtractVV(_arg1:b2Vec2, _arg2:b2Vec2):b2Vec2{ var _local3:b2Vec2; _local3 = new b2Vec2((_arg1.x - _arg2.x), (_arg1.y - _arg2.y)); return (_local3); } public static function b2MulXT(_arg1:b2XForm, _arg2:b2Vec2):b2Vec2{ var _local3:b2Vec2; var _local4:Number; _local3 = SubtractVV(_arg2, _arg1.position); _local4 = ((_local3.x * _arg1.R.col1.x) + (_local3.y * _arg1.R.col1.y)); _local3.y = ((_local3.x * _arg1.R.col2.x) + (_local3.y * _arg1.R.col2.y)); _local3.x = _local4; return (_local3); } public static function b2Abs(_arg1:Number):Number{ return (((_arg1 > 0)) ? _arg1 : -(_arg1)); } public static function b2Clamp(_arg1:Number, _arg2:Number, _arg3:Number):Number{ return (b2Max(_arg2, b2Min(_arg1, _arg3))); } public static function b2AbsV(_arg1:b2Vec2):b2Vec2{ var _local2:b2Vec2; _local2 = new b2Vec2(b2Abs(_arg1.x), b2Abs(_arg1.y)); return (_local2); } public static function MulFV(_arg1:Number, _arg2:b2Vec2):b2Vec2{ var _local3:b2Vec2; _local3 = new b2Vec2((_arg1 * _arg2.x), (_arg1 * _arg2.y)); return (_local3); } public static function b2CrossVV(_arg1:b2Vec2, _arg2:b2Vec2):Number{ return (((_arg1.x * _arg2.y) - (_arg1.y * _arg2.x))); } public static function b2Dot(_arg1:b2Vec2, _arg2:b2Vec2):Number{ return (((_arg1.x * _arg2.x) + (_arg1.y * _arg2.y))); } public static function b2CrossFV(_arg1:Number, _arg2:b2Vec2):b2Vec2{ var _local3:b2Vec2; _local3 = new b2Vec2((-(_arg1) * _arg2.y), (_arg1 * _arg2.x)); return (_local3); } public static function AddMM(_arg1:b2Mat22, _arg2:b2Mat22):b2Mat22{ var _local3:b2Mat22; _local3 = new b2Mat22(0, AddVV(_arg1.col1, _arg2.col1), AddVV(_arg1.col2, _arg2.col2)); return (_local3); } public static function b2Distance(_arg1:b2Vec2, _arg2:b2Vec2):Number{ var _local3:Number; var _local4:Number; _local3 = (_arg1.x - _arg2.x); _local4 = (_arg1.y - _arg2.y); return (Math.sqrt(((_local3 * _local3) + (_local4 * _local4)))); } public static function b2MulTMM(_arg1:b2Mat22, _arg2:b2Mat22):b2Mat22{ var _local3:b2Vec2; var _local4:b2Vec2; var _local5:b2Mat22; _local3 = new b2Vec2(b2Dot(_arg1.col1, _arg2.col1), b2Dot(_arg1.col2, _arg2.col1)); _local4 = new b2Vec2(b2Dot(_arg1.col1, _arg2.col2), b2Dot(_arg1.col2, _arg2.col2)); _local5 = new b2Mat22(0, _local3, _local4); return (_local5); } public static function b2MaxV(_arg1:b2Vec2, _arg2:b2Vec2):b2Vec2{ var _local3:b2Vec2; _local3 = new b2Vec2(b2Max(_arg1.x, _arg2.x), b2Max(_arg1.y, _arg2.y)); return (_local3); } public static function b2IsPowerOfTwo(_arg1:uint):Boolean{ var _local2:Boolean; _local2 = (((_arg1 > 0)) && (((_arg1 & (_arg1 - 1)) == 0))); return (_local2); } public static function b2ClampV(_arg1:b2Vec2, _arg2:b2Vec2, _arg3:b2Vec2):b2Vec2{ return (b2MaxV(_arg2, b2MinV(_arg1, _arg3))); } public static function b2RandomRange(_arg1:Number, _arg2:Number):Number{ var _local3:Number; _local3 = Math.random(); _local3 = (((_arg2 - _arg1) * _local3) + _arg1); return (_local3); } public static function b2MulTMV(_arg1:b2Mat22, _arg2:b2Vec2):b2Vec2{ var _local3:b2Vec2; _local3 = new b2Vec2(b2Dot(_arg2, _arg1.col1), b2Dot(_arg2, _arg1.col2)); return (_local3); } public static function b2Min(_arg1:Number, _arg2:Number):Number{ return (((_arg1 < _arg2)) ? _arg1 : _arg2); } public static function b2Random():Number{ return (((Math.random() * 2) - 1)); } public static function b2MulMM(_arg1:b2Mat22, _arg2:b2Mat22):b2Mat22{ var _local3:b2Mat22; _local3 = new b2Mat22(0, b2MulMV(_arg1, _arg2.col1), b2MulMV(_arg1, _arg2.col2)); return (_local3); } public static function b2NextPowerOfTwo(_arg1:uint):uint{ _arg1 = (_arg1 | ((_arg1 >> 1) & 2147483647)); _arg1 = (_arg1 | ((_arg1 >> 2) & 1073741823)); _arg1 = (_arg1 | ((_arg1 >> 4) & 268435455)); _arg1 = (_arg1 | ((_arg1 >> 8) & 0xFFFFFF)); _arg1 = (_arg1 | ((_arg1 >> 16) & 0xFFFF)); return ((_arg1 + 1)); } public static function b2Max(_arg1:Number, _arg2:Number):Number{ return (((_arg1 > _arg2)) ? _arg1 : _arg2); } public static function b2MulMV(_arg1:b2Mat22, _arg2:b2Vec2):b2Vec2{ var _local3:b2Vec2; _local3 = new b2Vec2(((_arg1.col1.x * _arg2.x) + (_arg1.col2.x * _arg2.y)), ((_arg1.col1.y * _arg2.x) + (_arg1.col2.y * _arg2.y))); return (_local3); } } }//package Box2D.Common.Math
Section 32
//b2Sweep (Box2D.Common.Math.b2Sweep) package Box2D.Common.Math { import Box2D.Common.*; public class b2Sweep { public var localCenter:b2Vec2; public var c:b2Vec2; public var a:Number; public var c0:b2Vec2; public var a0:Number; public var t0:Number; public function b2Sweep(){ localCenter = new b2Vec2(); c0 = new b2Vec2(); c = new b2Vec2(); super(); } public function Advance(_arg1:Number):void{ var _local2:Number; if ((((t0 < _arg1)) && (((1 - t0) > Number.MIN_VALUE)))){ _local2 = ((_arg1 - t0) / (1 - t0)); c0.x = (((1 - _local2) * c0.x) + (_local2 * c.x)); c0.y = (((1 - _local2) * c0.y) + (_local2 * c.y)); a0 = (((1 - _local2) * a0) + (_local2 * a)); t0 = _arg1; }; } public function GetXForm(_arg1:b2XForm, _arg2:Number):void{ var _local3:b2Mat22; var _local4:Number; var _local5:Number; if ((1 - t0) > Number.MIN_VALUE){ _local4 = ((_arg2 - t0) / (1 - t0)); _arg1.position.x = (((1 - _local4) * c0.x) + (_local4 * c.x)); _arg1.position.y = (((1 - _local4) * c0.y) + (_local4 * c.y)); _local5 = (((1 - _local4) * a0) + (_local4 * a)); _arg1.R.Set(_local5); } else { _arg1.position.SetV(c); _arg1.R.Set(a); }; _local3 = _arg1.R; _arg1.position.x = (_arg1.position.x - ((_local3.col1.x * localCenter.x) + (_local3.col2.x * localCenter.y))); _arg1.position.y = (_arg1.position.y - ((_local3.col1.y * localCenter.x) + (_local3.col2.y * localCenter.y))); } } }//package Box2D.Common.Math
Section 33
//b2Vec2 (Box2D.Common.Math.b2Vec2) package Box2D.Common.Math { import Box2D.Common.*; public class b2Vec2 { public var x:Number; public var y:Number; public function b2Vec2(_arg1:Number=0, _arg2:Number=0):void{ x = _arg1; y = _arg2; } public function Set(_arg1:Number=0, _arg2:Number=0):void{ x = _arg1; y = _arg2; } public function Multiply(_arg1:Number):void{ x = (x * _arg1); y = (y * _arg1); } public function Length():Number{ return (Math.sqrt(((x * x) + (y * y)))); } public function LengthSquared():Number{ return (((x * x) + (y * y))); } public function SetZero():void{ x = 0; y = 0; } public function Add(_arg1:b2Vec2):void{ x = (x + _arg1.x); y = (y + _arg1.y); } public function 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 CrossVF(_arg1:Number):void{ var _local2:Number; _local2 = x; x = (_arg1 * y); y = (-(_arg1) * _local2); } public function Abs():void{ if (x < 0){ x = -(x); }; if (y < 0){ y = -(y); }; } public function Copy():b2Vec2{ return (new b2Vec2(x, y)); } public function MulTM(_arg1:b2Mat22):void{ var _local2:Number; _local2 = b2Math.b2Dot(this, _arg1.col1); y = b2Math.b2Dot(this, _arg1.col2); x = _local2; } public function IsValid():Boolean{ return (((b2Math.b2IsValid(x)) && (b2Math.b2IsValid(y)))); } public function MinV(_arg1:b2Vec2):void{ x = ((x < _arg1.x)) ? x : _arg1.x; y = ((y < _arg1.y)) ? y : _arg1.y; } public function MulM(_arg1:b2Mat22):void{ var _local2:Number; _local2 = x; x = ((_arg1.col1.x * _local2) + (_arg1.col2.x * y)); y = ((_arg1.col1.y * _local2) + (_arg1.col2.y * y)); } public function Normalize():Number{ var _local1:Number; var _local2:Number; _local1 = Math.sqrt(((x * x) + (y * y))); if (_local1 < Number.MIN_VALUE){ return (0); }; _local2 = (1 / _local1); x = (x * _local2); y = (y * _local2); return (_local1); } public function Subtract(_arg1:b2Vec2):void{ x = (x - _arg1.x); y = (y - _arg1.y); } public function CrossFV(_arg1:Number):void{ var _local2:Number; _local2 = x; x = (-(_arg1) * y); y = (_arg1 * _local2); } public static function Make(_arg1:Number, _arg2:Number):b2Vec2{ return (new b2Vec2(_arg1, _arg2)); } } }//package Box2D.Common.Math
Section 34
//b2XForm (Box2D.Common.Math.b2XForm) package Box2D.Common.Math { import Box2D.Common.*; public class b2XForm { public var R:b2Mat22; public var position:b2Vec2; public function b2XForm(_arg1:b2Vec2=null, _arg2:b2Mat22=null):void{ position = new b2Vec2(); R = new b2Mat22(); super(); if (_arg1){ position.SetV(_arg1); R.SetM(_arg2); }; } public function Initialize(_arg1:b2Vec2, _arg2:b2Mat22):void{ position.SetV(_arg1); R.SetM(_arg2); } public function Set(_arg1:b2XForm):void{ position.SetV(_arg1.position); R.SetM(_arg1.R); } public function SetIdentity():void{ position.SetZero(); R.SetIdentity(); } } }//package Box2D.Common.Math
Section 35
//b2Color (Box2D.Common.b2Color) package Box2D.Common { import Box2D.Common.Math.*; public class b2Color { private var _g:uint;// = 0 private var _b:uint;// = 0 private var _r:uint;// = 0 public function b2Color(_arg1:Number, _arg2:Number, _arg3:Number){ _r = 0; _g = 0; _b = 0; super(); _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 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 b(_arg1:Number):void{ _b = uint((0xFF * b2Math.b2Clamp(_arg1, 0, 1))); } public function set g(_arg1:Number):void{ _g = uint((0xFF * b2Math.b2Clamp(_arg1, 0, 1))); } } }//package Box2D.Common
Section 36
//b2Settings (Box2D.Common.b2Settings) package Box2D.Common { import Box2D.Common.Math.*; public class b2Settings { public static const b2_angularSleepTolerance:Number = 0.0111111111111111; public static const b2_linearSleepTolerance:Number = 0.01; public static const b2_angularSlop:Number = 0.0349065850398866; public static const b2_linearSlop:Number = 0.005; public static const b2_pi:Number = 3.14159265358979; public static const b2_maxProxies:int = 0x0200; public static const b2_maxAngularVelocitySquared:Number = 62500; public static const b2_maxPolygonVertices:int = 8; public static const b2_velocityThreshold:Number = 1; public static const b2_contactBaumgarte:Number = 0.2; public static const b2_maxPairs:int = 4096; public static const b2_maxTOIContactsPerIsland:int = 32; public static const b2_timeToSleep:Number = 0.5; public static const b2_maxManifoldPoints:int = 2; public static const b2_maxAngularVelocity:Number = 250; public static const b2_maxAngularCorrection:Number = 0.139626340159546; public static const USHRT_MAX:int = 0xFFFF; public static const b2_maxLinearVelocity:Number = 200; public static const b2_maxLinearCorrection:Number = 0.2; public static const b2_toiSlop:Number = 0.04; public static const b2_maxLinearVelocitySquared:Number = 40000; public static function b2Assert(_arg1:Boolean):void{ var _local2:b2Vec2; if (!(_arg1)){ _local2.x++; }; } } }//package Box2D.Common
Section 37
//b2CircleContact (Box2D.Dynamics.Contacts.b2CircleContact) package Box2D.Dynamics.Contacts { import Box2D.Collision.Shapes.*; import Box2D.Collision.*; import Box2D.Dynamics.*; import Box2D.Common.*; import Box2D.Common.Math.*; public class b2CircleContact 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 b2CircleContact(_arg1:b2Shape, _arg2:b2Shape){ var _local3:b2ManifoldPoint; m_manifolds = [new b2Manifold()]; m0 = new b2Manifold(); super(_arg1, _arg2); m_manifold = m_manifolds[0]; m_manifold.pointCount = 0; _local3 = m_manifold.points[0]; _local3.normalImpulse = 0; _local3.tangentImpulse = 0; } override public function GetManifolds():Array{ return (m_manifolds); } override public function Evaluate(_arg1:b2ContactListener):void{ var _local2:b2Vec2; var _local3:b2Vec2; var _local4:b2ManifoldPoint; var _local5:b2Body; var _local6:b2Body; var _local7:b2ContactPoint; var _local8:b2ManifoldPoint; _local5 = m_shape1.m_body; _local6 = m_shape2.m_body; m0.Set(m_manifold); b2Collision.b2CollideCircles(m_manifold, (m_shape1 as b2CircleShape), _local5.m_xf, (m_shape2 as b2CircleShape), _local6.m_xf); _local7 = s_evalCP; _local7.shape1 = m_shape1; _local7.shape2 = m_shape2; _local7.friction = m_friction; _local7.restitution = m_restitution; if (m_manifold.pointCount > 0){ m_manifoldCount = 1; _local8 = m_manifold.points[0]; if (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); }; }; } 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.Dynamics.*; import Box2D.Collision.Shapes.*; import Box2D.Collision.*; import Box2D.Common.Math.*; 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 GetShape1():b2Shape{ return (m_shape1); } public function IsSolid():Boolean{ return (((m_flags & e_nonSolidFlag) == 0)); } public function GetNext():b2Contact{ return (m_next); } public function GetManifolds():Array{ return (null); } public function GetShape2():b2Shape{ return (m_shape2); } public function GetManifoldCount():int{ return (m_manifoldCount); } public function Update(_arg1:b2ContactListener):void{ var _local2:int; var _local3:int; var _local4:b2Body; var _local5:b2Body; _local2 = m_manifoldCount; Evaluate(_arg1); _local3 = m_manifoldCount; _local4 = m_shape1.m_body; _local5 = m_shape2.m_body; if ((((_local3 == 0)) && ((_local2 > 0)))){ _local4.WakeUp(); _local5.WakeUp(); }; if (((((((_local4.IsStatic()) || (_local4.IsBullet()))) || (_local5.IsStatic()))) || (_local5.IsBullet()))){ m_flags = (m_flags & ~(e_slowFlag)); } else { m_flags = (m_flags | e_slowFlag); }; } public function Evaluate(_arg1:b2ContactListener):void{ } public static function InitializeRegisters():void{ var _local1:int; var _local2:int; s_registers = new Array(b2Shape.e_shapeTypeCount); _local1 = 0; while (_local1 < b2Shape.e_shapeTypeCount) { s_registers[_local1] = new Array(b2Shape.e_shapeTypeCount); _local2 = 0; while (_local2 < b2Shape.e_shapeTypeCount) { s_registers[_local1][_local2] = new b2ContactRegister(); _local2++; }; _local1++; }; AddType(b2CircleContact.Create, b2CircleContact.Destroy, b2Shape.e_circleShape, b2Shape.e_circleShape); AddType(b2PolyAndCircleContact.Create, b2PolyAndCircleContact.Destroy, b2Shape.e_polygonShape, b2Shape.e_circleShape); AddType(b2PolygonContact.Create, b2PolygonContact.Destroy, b2Shape.e_polygonShape, b2Shape.e_polygonShape); } public static function Destroy(_arg1:b2Contact, _arg2):void{ var _local3:int; var _local4:int; var _local5:b2ContactRegister; var _local6:Function; if (_arg1.m_manifoldCount > 0){ _arg1.m_shape1.m_body.WakeUp(); _arg1.m_shape2.m_body.WakeUp(); }; _local3 = _arg1.m_shape1.m_type; _local4 = _arg1.m_shape2.m_type; _local5 = s_registers[_local3][_local4]; _local6 = _local5.destroyFcn; _local6(_arg1, _arg2); } public static function AddType(_arg1:Function, _arg2:Function, _arg3:int, _arg4:int):void{ s_registers[_arg3][_arg4].createFcn = _arg1; s_registers[_arg3][_arg4].destroyFcn = _arg2; s_registers[_arg3][_arg4].primary = true; if (_arg3 != _arg4){ s_registers[_arg4][_arg3].createFcn = _arg1; s_registers[_arg4][_arg3].destroyFcn = _arg2; s_registers[_arg4][_arg3].primary = false; }; } public static function Create(_arg1:b2Shape, _arg2:b2Shape, _arg3):b2Contact{ var _local4:int; var _local5:int; var _local6:b2ContactRegister; var _local7:Function; var _local8:b2Contact; var _local9:int; var _local10:b2Manifold; if (s_initialized == false){ InitializeRegisters(); s_initialized = true; }; _local4 = _arg1.m_type; _local5 = _arg2.m_type; _local6 = s_registers[_local4][_local5]; _local7 = _local6.createFcn; if (_local7 != null){ if (_local6.primary){ return (_local7(_arg1, _arg2, _arg3)); }; _local8 = _local7(_arg2, _arg1, _arg3); _local9 = 0; while (_local9 < _local8.m_manifoldCount) { _local10 = _local8.GetManifolds()[_local9]; _local10.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.Collision.*; import Box2D.Dynamics.*; import Box2D.Common.*; public class b2ContactConstraint { public var points:Array; public var restitution:Number; public var body1:b2Body; public var manifold:b2Manifold; public var normal:b2Vec2; public var body2:b2Body; public var friction:Number; public var pointCount:int; public function b2ContactConstraint(){ var _local1:int; normal = new b2Vec2(); super(); points = new Array(b2Settings.b2_maxManifoldPoints); _local1 = 0; while (_local1 < b2Settings.b2_maxManifoldPoints) { points[_local1] = new b2ContactConstraintPoint(); _local1++; }; } } }//package Box2D.Dynamics.Contacts
Section 40
//b2ContactConstraintPoint (Box2D.Dynamics.Contacts.b2ContactConstraintPoint) package Box2D.Dynamics.Contacts { import Box2D.Common.Math.*; public class b2ContactConstraintPoint { public var r2:b2Vec2; public var separation:Number; public var positionImpulse:Number; public var normalImpulse:Number; public var equalizedMass:Number; public var tangentMass:Number; public var tangentImpulse:Number; public var localAnchor1:b2Vec2; public var localAnchor2:b2Vec2; public var normalMass:Number; public var velocityBias:Number; public var r1:b2Vec2; public function b2ContactConstraintPoint(){ localAnchor1 = new b2Vec2(); localAnchor2 = new b2Vec2(); r1 = new b2Vec2(); r2 = new b2Vec2(); super(); } } }//package Box2D.Dynamics.Contacts
Section 41
//b2ContactEdge (Box2D.Dynamics.Contacts.b2ContactEdge) package Box2D.Dynamics.Contacts { import Box2D.Dynamics.*; public class b2ContactEdge { public var next:b2ContactEdge; public var other:b2Body; public var contact:b2Contact; public var prev:b2ContactEdge; } }//package Box2D.Dynamics.Contacts
Section 42
//b2ContactRegister (Box2D.Dynamics.Contacts.b2ContactRegister) package Box2D.Dynamics.Contacts { public class b2ContactRegister { public var primary:Boolean; public var createFcn:Function; public var destroyFcn:Function; } }//package Box2D.Dynamics.Contacts
Section 43
//b2ContactResult (Box2D.Dynamics.Contacts.b2ContactResult) package Box2D.Dynamics.Contacts { import Box2D.Collision.*; import Box2D.Collision.Shapes.*; import Box2D.Common.Math.*; public class b2ContactResult { public var normal:b2Vec2; public var position:b2Vec2; public var shape1:b2Shape; public var shape2:b2Shape; public var normalImpulse:Number; public var tangentImpulse:Number; public var id:b2ContactID; public function b2ContactResult(){ position = new b2Vec2(); normal = new b2Vec2(); id = new b2ContactID(); super(); } } }//package Box2D.Dynamics.Contacts
Section 44
//b2ContactSolver (Box2D.Dynamics.Contacts.b2ContactSolver) package Box2D.Dynamics.Contacts { import Box2D.Common.Math.*; import Box2D.Dynamics.*; import Box2D.Collision.*; import Box2D.Common.*; public class b2ContactSolver { public var 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 _local9:int; var _local10:b2Body; var _local11:b2Body; var _local12:int; var _local13:Array; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; var _local20:Number; var _local21:Number; var _local22:int; var _local23:b2Manifold; var _local24:Number; var _local25:Number; var _local26:b2ContactConstraint; var _local27:uint; var _local28:b2ManifoldPoint; var _local29:b2ContactConstraintPoint; var _local30:Number; var _local31:Number; var _local32:Number; var _local33:Number; var _local34:Number; var _local35:Number; var _local36:Number; var _local37:Number; var _local38:Number; var _local39:Number; var _local40:Number; var _local41:Number; var _local42:Number; var _local43:Number; var _local44:Number; var _local45:Number; var _local46:Number; var _local47:Number; 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++; }; _local9 = 0; _local6 = 0; while (_local6 < _arg3) { _local5 = _arg2[_local6]; _local10 = _local5.m_shape1.m_body; _local11 = _local5.m_shape2.m_body; _local12 = _local5.m_manifoldCount; _local13 = _local5.GetManifolds(); _local14 = _local5.m_friction; _local15 = _local5.m_restitution; _local16 = _local10.m_linearVelocity.x; _local17 = _local10.m_linearVelocity.y; _local18 = _local11.m_linearVelocity.x; _local19 = _local11.m_linearVelocity.y; _local20 = _local10.m_angularVelocity; _local21 = _local11.m_angularVelocity; _local22 = 0; while (_local22 < _local12) { _local23 = _local13[_local22]; _local24 = _local23.normal.x; _local25 = _local23.normal.y; _local26 = m_constraints[_local9]; _local26.body1 = _local10; _local26.body2 = _local11; _local26.manifold = _local23; _local26.normal.x = _local24; _local26.normal.y = _local25; _local26.pointCount = _local23.pointCount; _local26.friction = _local14; _local26.restitution = _local15; _local27 = 0; while (_local27 < _local26.pointCount) { _local28 = _local23.points[_local27]; _local29 = _local26.points[_local27]; _local29.normalImpulse = _local28.normalImpulse; _local29.tangentImpulse = _local28.tangentImpulse; _local29.separation = _local28.separation; _local29.positionImpulse = 0; _local29.localAnchor1.SetV(_local28.localPoint1); _local29.localAnchor2.SetV(_local28.localPoint2); _local8 = _local10.m_xf.R; _local32 = (_local28.localPoint1.x - _local10.m_sweep.localCenter.x); _local33 = (_local28.localPoint1.y - _local10.m_sweep.localCenter.y); _local30 = ((_local8.col1.x * _local32) + (_local8.col2.x * _local33)); _local33 = ((_local8.col1.y * _local32) + (_local8.col2.y * _local33)); _local32 = _local30; _local29.r1.Set(_local32, _local33); _local8 = _local11.m_xf.R; _local34 = (_local28.localPoint2.x - _local11.m_sweep.localCenter.x); _local35 = (_local28.localPoint2.y - _local11.m_sweep.localCenter.y); _local30 = ((_local8.col1.x * _local34) + (_local8.col2.x * _local35)); _local35 = ((_local8.col1.y * _local34) + (_local8.col2.y * _local35)); _local34 = _local30; _local29.r2.Set(_local34, _local35); _local36 = ((_local32 * _local32) + (_local33 * _local33)); _local37 = ((_local34 * _local34) + (_local35 * _local35)); _local38 = ((_local32 * _local24) + (_local33 * _local25)); _local39 = ((_local34 * _local24) + (_local35 * _local25)); _local40 = (_local10.m_invMass + _local11.m_invMass); _local40 = (_local40 + ((_local10.m_invI * (_local36 - (_local38 * _local38))) + (_local11.m_invI * (_local37 - (_local39 * _local39))))); _local29.normalMass = (1 / _local40); _local41 = ((_local10.m_mass * _local10.m_invMass) + (_local11.m_mass * _local11.m_invMass)); _local41 = (_local41 + (((_local10.m_mass * _local10.m_invI) * (_local36 - (_local38 * _local38))) + ((_local11.m_mass * _local11.m_invI) * (_local37 - (_local39 * _local39))))); _local29.equalizedMass = (1 / _local41); _local42 = _local25; _local43 = -(_local24); _local44 = ((_local32 * _local42) + (_local33 * _local43)); _local45 = ((_local34 * _local42) + (_local35 * _local43)); _local46 = (_local10.m_invMass + _local11.m_invMass); _local46 = (_local46 + ((_local10.m_invI * (_local36 - (_local44 * _local44))) + (_local11.m_invI * (_local37 - (_local45 * _local45))))); _local29.tangentMass = (1 / _local46); _local29.velocityBias = 0; if (_local29.separation > 0){ _local29.velocityBias = (-60 * _local29.separation); }; _local30 = (((_local18 + (-(_local21) * _local35)) - _local16) - (-(_local20) * _local33)); _local31 = (((_local19 + (_local21 * _local34)) - _local17) - (_local20 * _local32)); _local47 = ((_local26.normal.x * _local30) + (_local26.normal.y * _local31)); if (_local47 < -(b2Settings.b2_velocityThreshold)){ _local29.velocityBias = (_local29.velocityBias + (-(_local26.restitution) * _local47)); }; _local27++; }; _local9++; _local22++; }; _local6++; }; } public function InitVelocityConstraints(_arg1:b2TimeStep):void{ var _local2:b2Vec2; var _local3:b2Vec2; var _local4:b2Mat22; var _local5:int; var _local6:b2ContactConstraint; var _local7:b2Body; var _local8:b2Body; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:int; var _local19:int; var _local20:b2ContactConstraintPoint; var _local21:Number; var _local22:Number; var _local23:b2ContactConstraintPoint; _local5 = 0; while (_local5 < 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]; _local20.normalImpulse = (_local20.normalImpulse * _arg1.dtRatio); _local20.tangentImpulse = (_local20.tangentImpulse * _arg1.dtRatio); _local21 = ((_local20.normalImpulse * _local13) + (_local20.tangentImpulse * _local15)); _local22 = ((_local20.normalImpulse * _local14) + (_local20.tangentImpulse * _local16)); _local7.m_angularVelocity = (_local7.m_angularVelocity - (_local10 * ((_local20.r1.x * _local22) - (_local20.r1.y * _local21)))); _local7.m_linearVelocity.x = (_local7.m_linearVelocity.x - (_local9 * _local21)); _local7.m_linearVelocity.y = (_local7.m_linearVelocity.y - (_local9 * _local22)); _local8.m_angularVelocity = (_local8.m_angularVelocity + (_local12 * ((_local20.r2.x * _local22) - (_local20.r2.y * _local21)))); _local8.m_linearVelocity.x = (_local8.m_linearVelocity.x + (_local11 * _local21)); _local8.m_linearVelocity.y = (_local8.m_linearVelocity.y + (_local11 * _local22)); _local18++; }; } else { _local19 = _local6.pointCount; _local18 = 0; while (_local18 < _local19) { _local23 = _local6.points[_local18]; _local23.normalImpulse = 0; _local23.tangentImpulse = 0; _local18++; }; }; _local5++; }; } public function SolvePositionConstraints(_arg1:Number):Boolean{ var _local2:Number; var _local3:b2Mat22; var _local4:b2Vec2; var _local5:int; var _local6:b2ContactConstraint; var _local7:b2Body; var _local8:b2Body; var _local9:b2Vec2; var _local10:Number; var _local11:b2Vec2; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:int; var _local20:int; var _local21:b2ContactConstraintPoint; var _local22:Number; var _local23:Number; var _local24:Number; var _local25:Number; var _local26:Number; var _local27:Number; var _local28:Number; var _local29:Number; var _local30:Number; var _local31:Number; var _local32:Number; var _local33:Number; var _local34:Number; var _local35:Number; var _local36:Number; var _local37:Number; var _local38:Number; _local2 = 0; _local5 = 0; while (_local5 < 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 _local19:int; var _local20:b2ContactConstraint; var _local21:b2Body; var _local22:b2Body; var _local23:Number; var _local24:Number; var _local25:b2Vec2; var _local26:b2Vec2; var _local27:Number; var _local28:Number; var _local29:Number; var _local30:Number; var _local31:Number; var _local32:Number; var _local33:Number; var _local34:Number; var _local35:Number; var _local36:Number; var _local37:int; var _local38:Number; _local19 = 0; while (_local19 < 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 _local1:int; var _local2:b2ContactConstraint; var _local3:b2Manifold; var _local4:int; var _local5:b2ManifoldPoint; var _local6:b2ContactConstraintPoint; _local1 = 0; 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 GetManifolds():Array{ return (null); } override public function Evaluate(_arg1:b2ContactListener):void{ } } }//package Box2D.Dynamics.Contacts
Section 46
//b2PolyAndCircleContact (Box2D.Dynamics.Contacts.b2PolyAndCircleContact) package Box2D.Dynamics.Contacts { import Box2D.Collision.Shapes.*; import Box2D.Collision.*; import Box2D.Dynamics.*; import Box2D.Common.*; import Box2D.Common.Math.*; public class b2PolyAndCircleContact 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 b2PolyAndCircleContact(_arg1:b2Shape, _arg2:b2Shape){ var _local3:b2ManifoldPoint; 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; _local3 = m_manifold.points[0]; _local3.normalImpulse = 0; _local3.tangentImpulse = 0; } override public function GetManifolds():Array{ return (m_manifolds); } override public function Evaluate(_arg1:b2ContactListener):void{ var _local2:int; var _local3:b2Vec2; var _local4:b2Vec2; var _local5:b2ManifoldPoint; var _local6:b2Body; var _local7:b2Body; var _local8:Array; var _local9:b2ContactPoint; var _local10:b2ManifoldPoint; var _local11:Boolean; var _local12:uint; var _local13:int; _local6 = m_shape1.m_body; _local7 = m_shape2.m_body; m0.Set(m_manifold); b2Collision.b2CollidePolygonAndCircle(m_manifold, (m_shape1 as b2PolygonShape), _local6.m_xf, (m_shape2 as b2CircleShape), _local7.m_xf); _local8 = [false, false]; _local9 = s_evalCP; _local9.shape1 = m_shape1; _local9.shape2 = m_shape2; _local9.friction = m_friction; _local9.restitution = m_restitution; if (m_manifold.pointCount > 0){ _local2 = 0; while (_local2 < m_manifold.pointCount) { _local10 = m_manifold.points[_local2]; _local10.normalImpulse = 0; _local10.tangentImpulse = 0; _local11 = false; _local12 = _local10.id._key; _local13 = 0; while (_local13 < 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++; }; } public static function Destroy(_arg1:b2Contact, _arg2):void{ } public static function Create(_arg1:b2Shape, _arg2:b2Shape, _arg3):b2Contact{ return (new b2PolyAndCircleContact(_arg1, _arg2)); } } }//package Box2D.Dynamics.Contacts
Section 47
//b2PolygonContact (Box2D.Dynamics.Contacts.b2PolygonContact) package Box2D.Dynamics.Contacts { import Box2D.Collision.Shapes.*; import Box2D.Collision.*; import Box2D.Dynamics.*; import Box2D.Common.*; import Box2D.Common.Math.*; 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 GetManifolds():Array{ return (m_manifolds); } override public function Evaluate(_arg1:b2ContactListener):void{ var _local2:b2Vec2; var _local3:b2Vec2; var _local4:b2ManifoldPoint; var _local5:b2Body; var _local6:b2Body; var _local7:b2ContactPoint; var _local8:int; var _local9:Array; var _local10:b2ManifoldPoint; var _local11:Boolean; var _local12:uint; var _local13:int; _local5 = m_shape1.m_body; _local6 = m_shape2.m_body; m0.Set(m_manifold); b2Collision.b2CollidePolygons(m_manifold, (m_shape1 as b2PolygonShape), _local5.m_xf, (m_shape2 as b2PolygonShape), _local6.m_xf); _local9 = [false, false]; _local7 = s_evalCP; _local7.shape1 = m_shape1; _local7.shape2 = m_shape2; _local7.friction = m_friction; _local7.restitution = m_restitution; if (m_manifold.pointCount > 0){ _local8 = 0; while (_local8 < m_manifold.pointCount) { _local10 = m_manifold.points[_local8]; _local10.normalImpulse = 0; _local10.tangentImpulse = 0; _local11 = false; _local12 = _local10.id._key; _local13 = 0; while (_local13 < 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++; }; } 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.Common.*; import Box2D.Dynamics.*; public class b2DistanceJoint extends b2Joint { public var m_mass:Number; public var m_u:b2Vec2; public var m_impulse:Number; public var m_dampingRatio:Number; public var m_frequencyHz:Number; public var m_localAnchor2:b2Vec2; public var m_localAnchor1:b2Vec2; public var m_bias:Number; public var m_gamma: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 GetReactionForce():b2Vec2{ var _local1:b2Vec2; _local1 = new b2Vec2(); _local1.SetV(m_u); _local1.Multiply((m_inv_dt * m_impulse)); return (_local1); } override public function SolvePositionConstraints():Boolean{ var _local1:b2Mat22; var _local2:b2Body; var _local3:b2Body; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; if (m_frequencyHz > 0){ return (true); }; _local2 = m_body1; _local3 = m_body2; _local1 = _local2.m_xf.R; _local4 = (m_localAnchor1.x - _local2.m_sweep.localCenter.x); _local5 = (m_localAnchor1.y - _local2.m_sweep.localCenter.y); _local6 = ((_local1.col1.x * _local4) + (_local1.col2.x * _local5)); _local5 = ((_local1.col1.y * _local4) + (_local1.col2.y * _local5)); _local4 = _local6; _local1 = _local3.m_xf.R; _local7 = (m_localAnchor2.x - _local3.m_sweep.localCenter.x); _local8 = (m_localAnchor2.y - _local3.m_sweep.localCenter.y); _local6 = ((_local1.col1.x * _local7) + (_local1.col2.x * _local8)); _local8 = ((_local1.col1.y * _local7) + (_local1.col2.y * _local8)); _local7 = _local6; _local9 = (((_local3.m_sweep.c.x + _local7) - _local2.m_sweep.c.x) - _local4); _local10 = (((_local3.m_sweep.c.y + _local8) - _local2.m_sweep.c.y) - _local5); _local11 = Math.sqrt(((_local9 * _local9) + (_local10 * _local10))); _local9 = (_local9 / _local11); _local10 = (_local10 / _local11); _local12 = (_local11 - m_length); _local12 = b2Math.b2Clamp(_local12, -(b2Settings.b2_maxLinearCorrection), b2Settings.b2_maxLinearCorrection); _local13 = (-(m_mass) * _local12); m_u.Set(_local9, _local10); _local14 = (_local13 * m_u.x); _local15 = (_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 InitVelocityConstraints(_arg1:b2TimeStep):void{ var _local2:b2Mat22; var _local3:Number; var _local4:b2Body; var _local5:b2Body; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; m_inv_dt = _arg1.inv_dt; _local4 = m_body1; _local5 = m_body2; _local2 = _local4.m_xf.R; _local6 = (m_localAnchor1.x - _local4.m_sweep.localCenter.x); _local7 = (m_localAnchor1.y - _local4.m_sweep.localCenter.y); _local3 = ((_local2.col1.x * _local6) + (_local2.col2.x * _local7)); _local7 = ((_local2.col1.y * _local6) + (_local2.col2.y * _local7)); _local6 = _local3; _local2 = _local5.m_xf.R; _local8 = (m_localAnchor2.x - _local5.m_sweep.localCenter.x); _local9 = (m_localAnchor2.y - _local5.m_sweep.localCenter.y); _local3 = ((_local2.col1.x * _local8) + (_local2.col2.x * _local9)); _local9 = ((_local2.col1.y * _local8) + (_local2.col2.y * _local9)); _local8 = _local3; 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); _local10 = 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(); }; _local11 = ((_local6 * m_u.y) - (_local7 * m_u.x)); _local12 = ((_local8 * m_u.y) - (_local9 * m_u.x)); _local13 = (((_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 SolveVelocityConstraints(_arg1:b2TimeStep):void{ var _local2:b2Mat22; var _local3:b2Body; var _local4:b2Body; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; _local3 = m_body1; _local4 = m_body2; _local2 = _local3.m_xf.R; _local5 = (m_localAnchor1.x - _local3.m_sweep.localCenter.x); _local6 = (m_localAnchor1.y - _local3.m_sweep.localCenter.y); _local7 = ((_local2.col1.x * _local5) + (_local2.col2.x * _local6)); _local6 = ((_local2.col1.y * _local5) + (_local2.col2.y * _local6)); _local5 = _local7; _local2 = _local4.m_xf.R; _local8 = (m_localAnchor2.x - _local4.m_sweep.localCenter.x); _local9 = (m_localAnchor2.y - _local4.m_sweep.localCenter.y); _local7 = ((_local2.col1.x * _local8) + (_local2.col2.x * _local9)); _local9 = ((_local2.col1.y * _local8) + (_local2.col2.y * _local9)); _local8 = _local7; _local10 = (_local3.m_linearVelocity.x + (-(_local3.m_angularVelocity) * _local6)); _local11 = (_local3.m_linearVelocity.y + (_local3.m_angularVelocity * _local5)); _local12 = (_local4.m_linearVelocity.x + (-(_local4.m_angularVelocity) * _local9)); _local13 = (_local4.m_linearVelocity.y + (_local4.m_angularVelocity * _local8)); _local14 = ((m_u.x * (_local12 - _local10)) + (m_u.y * (_local13 - _local11))); _local15 = (-(m_mass) * ((_local14 + m_bias) + (m_gamma * m_impulse))); m_impulse = (m_impulse + _local15); _local16 = (_local15 * m_u.x); _local17 = (_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 length:Number; public var dampingRatio:Number; public var frequencyHz:Number; public var localAnchor2:b2Vec2; public var localAnchor1:b2Vec2; public function b2DistanceJointDef(){ localAnchor1 = new b2Vec2(); localAnchor2 = new b2Vec2(); super(); type = b2Joint.e_distanceJoint; length = 1; frequencyHz = 0; dampingRatio = 0; } public function Initialize(_arg1:b2Body, _arg2:b2Body, _arg3:b2Vec2, _arg4:b2Vec2):void{ var _local5:Number; var _local6:Number; body1 = _arg1; body2 = _arg2; localAnchor1.SetV(body1.GetLocalPoint(_arg3)); localAnchor2.SetV(body2.GetLocalPoint(_arg4)); _local5 = (_arg4.x - _arg3.x); _local6 = (_arg4.y - _arg3.y); length = Math.sqrt(((_local5 * _local5) + (_local6 * _local6))); frequencyHz = 0; dampingRatio = 0; } } }//package Box2D.Dynamics.Joints
Section 50
//b2GearJoint (Box2D.Dynamics.Joints.b2GearJoint) package Box2D.Dynamics.Joints { import Box2D.Common.Math.*; import Box2D.Common.*; import Box2D.Dynamics.*; public class b2GearJoint extends b2Joint { public var m_force:Number; public var m_mass:Number; public var m_prismatic1:b2PrismaticJoint; public var m_prismatic2:b2PrismaticJoint; public var m_ground1:b2Body; public var m_ground2:b2Body; public var m_constant:Number; public var m_revolute1:b2RevoluteJoint; public var m_revolute2:b2RevoluteJoint; public var m_groundAnchor1:b2Vec2; public var m_groundAnchor2:b2Vec2; public var m_localAnchor1:b2Vec2; public var m_localAnchor2:b2Vec2; public var m_ratio:Number; public var m_J:b2Jacobian; public function b2GearJoint(_arg1:b2GearJointDef){ var _local2:int; var _local3:int; var _local4:Number; var _local5:Number; m_groundAnchor1 = new b2Vec2(); m_groundAnchor2 = new b2Vec2(); m_localAnchor1 = new b2Vec2(); m_localAnchor2 = new b2Vec2(); m_J = new b2Jacobian(); super(_arg1); _local2 = _arg1.joint1.m_type; _local3 = _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 GetReactionForce():b2Vec2{ var _local1:b2Vec2; _local1 = new b2Vec2((m_force * m_J.linear2.x), (m_force * m_J.linear2.y)); return (_local1); } override public function SolvePositionConstraints():Boolean{ var _local1:Number; var _local2:b2Body; var _local3:b2Body; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; _local1 = 0; _local2 = m_body1; _local3 = m_body2; if (m_revolute1){ _local4 = m_revolute1.GetJointAngle(); } else { _local4 = m_prismatic1.GetJointTranslation(); }; if (m_revolute2){ _local5 = m_revolute2.GetJointAngle(); } else { _local5 = m_prismatic2.GetJointTranslation(); }; _local6 = (m_constant - (_local4 + (m_ratio * _local5))); _local7 = (-(m_mass) * _local6); _local2.m_sweep.c.x = (_local2.m_sweep.c.x + ((_local2.m_invMass * _local7) * 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)); } override public function InitVelocityConstraints(_arg1:b2TimeStep):void{ var _local2:b2Body; var _local3:b2Body; var _local4:b2Body; var _local5:b2Body; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:b2Mat22; var _local11:b2Vec2; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; _local2 = m_ground1; _local3 = m_ground2; _local4 = m_body1; _local5 = m_body2; _local14 = 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; var _local2:Number; var _local3:Number; var _local4:Number; _local1 = m_body2.m_xf.R; _local2 = (m_localAnchor1.x - m_body2.m_sweep.localCenter.x); _local3 = (m_localAnchor1.y - m_body2.m_sweep.localCenter.y); _local4 = ((_local1.col1.x * _local2) + (_local1.col2.x * _local3)); _local3 = ((_local1.col1.y * _local2) + (_local1.col2.y * _local3)); _local2 = _local4; _local4 = ((m_force * m_J.angular2) - ((_local2 * (m_force * m_J.linear2.y)) - (_local3 * (m_force * m_J.linear2.x)))); return (_local4); } public function GetRatio():Number{ return (m_ratio); } override public function SolveVelocityConstraints(_arg1:b2TimeStep):void{ var _local2:b2Body; var _local3:b2Body; var _local4:Number; var _local5:Number; var _local6:Number; _local2 = m_body1; _local3 = m_body2; _local4 = m_J.Compute(_local2.m_linearVelocity, _local2.m_angularVelocity, _local3.m_linearVelocity, _local3.m_angularVelocity); _local5 = ((-(_arg1.inv_dt) * m_mass) * _local4); m_force = (m_force + _local5); _local6 = (_arg1.dt * _local5); _local2.m_linearVelocity.x = (_local2.m_linearVelocity.x + ((_local2.m_invMass * _local6) * m_J.linear1.x)); _local2.m_linearVelocity.y = (_local2.m_linearVelocity.y + ((_local2.m_invMass * _local6) * m_J.linear1.y)); _local2.m_angularVelocity = (_local2.m_angularVelocity + ((_local2.m_invI * _local6) * m_J.angular1)); _local3.m_linearVelocity.x = (_local3.m_linearVelocity.x + ((_local3.m_invMass * _local6) * m_J.linear2.x)); _local3.m_linearVelocity.y = (_local3.m_linearVelocity.y + ((_local3.m_invMass * _local6) * m_J.linear2.y)); _local3.m_angularVelocity = (_local3.m_angularVelocity + ((_local3.m_invI * _local6) * m_J.angular2)); } } }//package Box2D.Dynamics.Joints
Section 51
//b2GearJointDef (Box2D.Dynamics.Joints.b2GearJointDef) package Box2D.Dynamics.Joints { import Box2D.Common.Math.*; public class b2GearJointDef extends b2JointDef { public var joint2:b2Joint; public var joint1: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 angular2:Number; public var angular1:Number; public function b2Jacobian(){ linear1 = new b2Vec2(); linear2 = new b2Vec2(); super(); } public function Set(_arg1:b2Vec2, _arg2:Number, _arg3:b2Vec2, _arg4:Number):void{ linear1.SetV(_arg1); angular1 = _arg2; linear2.SetV(_arg3); angular2 = _arg4; } public function SetZero():void{ linear1.SetZero(); angular1 = 0; linear2.SetZero(); angular2 = 0; } public function Compute(_arg1:b2Vec2, _arg2:Number, _arg3:b2Vec2, _arg4:Number):Number{ return ((((((linear1.x * _arg1.x) + (linear1.y * _arg1.y)) + (angular1 * _arg2)) + ((linear2.x * _arg3.x) + (linear2.y * _arg3.y))) + (angular2 * _arg4))); } } }//package Box2D.Dynamics.Joints
Section 53
//b2Joint (Box2D.Dynamics.Joints.b2Joint) package Box2D.Dynamics.Joints { import Box2D.Common.Math.*; import Box2D.Common.*; import Box2D.Dynamics.*; public class b2Joint { public var m_islandFlag:Boolean; public var m_body1:b2Body; public var m_prev:b2Joint; public var m_next:b2Joint; public var m_type:int; public var m_collideConnected:Boolean; public var m_node1:b2JointEdge; public var m_node2:b2JointEdge; public var m_inv_dt:Number; public var m_userData; public var m_body2:b2Body; public static const e_unknownJoint:int = 0; public static const e_inactiveLimit:int = 0; public static const e_atUpperLimit:int = 2; public static const e_atLowerLimit:int = 1; public static const e_gearJoint:int = 6; public static const e_revoluteJoint:int = 1; public static const e_equalLimits:int = 3; public static const e_distanceJoint:int = 3; public static const e_pulleyJoint:int = 4; public static const e_prismaticJoint:int = 2; public static const e_mouseJoint:int = 5; public function b2Joint(_arg1:b2JointDef){ m_node1 = new b2JointEdge(); m_node2 = new b2JointEdge(); super(); m_type = _arg1.type; m_prev = null; m_next = null; m_body1 = _arg1.body1; m_body2 = _arg1.body2; m_collideConnected = _arg1.collideConnected; m_islandFlag = false; m_userData = _arg1.userData; } public function GetAnchor1():b2Vec2{ return (null); } public function GetAnchor2():b2Vec2{ return (null); } public function InitVelocityConstraints(_arg1:b2TimeStep):void{ } public function GetType():int{ return (m_type); } public function GetBody2():b2Body{ return (m_body2); } public function GetNext():b2Joint{ return (m_next); } public function GetReactionTorque():Number{ return (0); } public function GetUserData(){ return (m_userData); } public function GetReactionForce():b2Vec2{ return (null); } public function SolvePositionConstraints():Boolean{ return (false); } public function SetUserData(_arg1):void{ m_userData = _arg1; } public function 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; _local3 = null; switch (_arg1.type){ case e_distanceJoint: _local3 = new b2DistanceJoint((_arg1 as b2DistanceJointDef)); break; case e_mouseJoint: _local3 = new b2MouseJoint((_arg1 as b2MouseJointDef)); break; case e_prismaticJoint: _local3 = new b2PrismaticJoint((_arg1 as b2PrismaticJointDef)); break; case e_revoluteJoint: _local3 = new b2RevoluteJoint((_arg1 as b2RevoluteJointDef)); break; case e_pulleyJoint: _local3 = new b2PulleyJoint((_arg1 as b2PulleyJointDef)); break; case e_gearJoint: _local3 = new b2GearJoint((_arg1 as b2GearJointDef)); break; default: break; }; return (_local3); } } }//package Box2D.Dynamics.Joints
Section 54
//b2JointDef (Box2D.Dynamics.Joints.b2JointDef) package Box2D.Dynamics.Joints { import Box2D.Common.Math.*; import Box2D.Dynamics.*; public class b2JointDef { public var collideConnected:Boolean; public var body1:b2Body; public var body2:b2Body; public var userData; public var type:int; public function b2JointDef(){ type = b2Joint.e_unknownJoint; userData = null; body1 = null; body2 = null; collideConnected = false; } } }//package Box2D.Dynamics.Joints
Section 55
//b2JointEdge (Box2D.Dynamics.Joints.b2JointEdge) package Box2D.Dynamics.Joints { import Box2D.Dynamics.*; public class b2JointEdge { public var joint:b2Joint; public var other:b2Body; public var next:b2JointEdge; public var prev:b2JointEdge; } }//package Box2D.Dynamics.Joints
Section 56
//b2MouseJoint (Box2D.Dynamics.Joints.b2MouseJoint) package Box2D.Dynamics.Joints { import Box2D.Common.Math.*; import Box2D.Common.*; import Box2D.Dynamics.*; public class b2MouseJoint extends b2Joint { public var m_beta:Number; public var m_mass:b2Mat22; public var m_target:b2Vec2; public var m_impulse:b2Vec2; public var m_localAnchor:b2Vec2; private var K1:b2Mat22; private var K2:b2Mat22; private var K:b2Mat22; public var m_gamma:Number; public var m_C:b2Vec2; public var m_maxForce:Number; public function b2MouseJoint(_arg1:b2MouseJointDef){ var _local2:Number; var _local3:Number; var _local4:b2Mat22; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; K = new b2Mat22(); 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); _local2 = (m_target.x - m_body2.m_xf.position.x); _local3 = (m_target.y - m_body2.m_xf.position.y); _local4 = 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(); _local5 = m_body2.m_mass; _local6 = ((2 * b2Settings.b2_pi) * _arg1.frequencyHz); _local7 = (((2 * _local5) * _arg1.dampingRatio) * _local6); _local8 = ((_arg1.timeStep * _local5) * (_local6 * _local6)); m_gamma = (1 / (_local7 + _local8)); m_beta = (_local8 / (_local7 + _local8)); } override public function GetAnchor1():b2Vec2{ return (m_target); } override public function GetAnchor2():b2Vec2{ return (m_body2.GetWorldPoint(m_localAnchor)); } override public function GetReactionForce():b2Vec2{ return (m_impulse); } override public function SolvePositionConstraints():Boolean{ return (true); } override public function InitVelocityConstraints(_arg1:b2TimeStep):void{ var _local2:b2Body; var _local3:b2Mat22; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; _local2 = m_body2; _local3 = _local2.m_xf.R; _local4 = (m_localAnchor.x - _local2.m_sweep.localCenter.x); _local5 = (m_localAnchor.y - _local2.m_sweep.localCenter.y); _local6 = ((_local3.col1.x * _local4) + (_local3.col2.x * _local5)); _local5 = ((_local3.col1.y * _local4) + (_local3.col2.y * _local5)); _local4 = _local6; _local7 = _local2.m_invMass; _local8 = _local2.m_invI; 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); _local9 = (_arg1.dt * m_impulse.x); _local10 = (_arg1.dt * m_impulse.y); _local2.m_linearVelocity.x = (_local2.m_linearVelocity.x + (_local7 * _local9)); _local2.m_linearVelocity.y = (_local2.m_linearVelocity.y + (_local7 * _local10)); _local2.m_angularVelocity = (_local2.m_angularVelocity + (_local8 * ((_local4 * _local10) - (_local5 * _local9)))); } override public function GetReactionTorque():Number{ return (0); } public function SetTarget(_arg1:b2Vec2):void{ if (m_body2.IsSleeping()){ m_body2.WakeUp(); }; m_target = _arg1; } override public function SolveVelocityConstraints(_arg1:b2TimeStep):void{ var _local2:b2Body; var _local3:b2Mat22; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; _local2 = m_body2; _local3 = _local2.m_xf.R; _local6 = (m_localAnchor.x - _local2.m_sweep.localCenter.x); _local7 = (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; _local8 = (_local2.m_linearVelocity.x + (-(_local2.m_angularVelocity) * _local7)); _local9 = (_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)); _local10 = (-(_arg1.inv_dt) * ((_local3.col1.x * _local4) + (_local3.col2.x * _local5))); _local11 = (-(_arg1.inv_dt) * ((_local3.col1.y * _local4) + (_local3.col2.y * _local5))); _local12 = m_impulse.x; _local13 = m_impulse.y; m_impulse.x = (m_impulse.x + _local10); m_impulse.y = (m_impulse.y + _local11); _local14 = m_impulse.Length(); if (_local14 > m_maxForce){ m_impulse.Multiply((m_maxForce / _local14)); }; _local10 = (m_impulse.x - _local12); _local11 = (m_impulse.y - _local13); _local15 = (_arg1.dt * _local10); _local16 = (_arg1.dt * _local11); _local2.m_linearVelocity.x = (_local2.m_linearVelocity.x + (_local2.m_invMass * _local15)); _local2.m_linearVelocity.y = (_local2.m_linearVelocity.y + (_local2.m_invMass * _local16)); _local2.m_angularVelocity = (_local2.m_angularVelocity + (_local2.m_invI * ((_local6 * _local16) - (_local7 * _local15)))); } } }//package Box2D.Dynamics.Joints
Section 57
//b2MouseJointDef (Box2D.Dynamics.Joints.b2MouseJointDef) package Box2D.Dynamics.Joints { import Box2D.Common.Math.*; public class b2MouseJointDef extends b2JointDef { public var frequencyHz:Number; public var dampingRatio:Number; public var maxForce:Number; public var target:b2Vec2; public var timeStep: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.*; import Box2D.Common.Math.*; import Box2D.Dynamics.*; public class b2PrismaticJoint extends b2Joint { public var m_limitForce:Number; public var m_refAngle:Number; public var m_lowerTranslation:Number; public var m_localXAxis1:b2Vec2; public var m_torque:Number; public var m_enableLimit:Boolean; public var m_motorForce:Number; public var m_force:Number; public var m_localYAxis1:b2Vec2; public var m_motorMass:Number; public var m_maxMotorForce:Number; public var m_localAnchor1:b2Vec2; public var m_localAnchor2:b2Vec2; public var m_angularMass:Number; public var m_limitState:int; public var m_linearMass:Number; public var m_upperTranslation:Number; public var m_motorJacobian:b2Jacobian; public var m_limitPositionImpulse:Number; public var m_motorSpeed:Number; public var m_linearJacobian:b2Jacobian; public var m_enableMotor:Boolean; public function b2PrismaticJoint(_arg1:b2PrismaticJointDef){ var _local2:b2Mat22; var _local3:Number; var _local4:Number; m_localAnchor1 = new b2Vec2(); m_localAnchor2 = new b2Vec2(); m_localXAxis1 = new b2Vec2(); 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 GetAnchor1():b2Vec2{ return (m_body1.GetWorldPoint(m_localAnchor1)); } override public function GetAnchor2():b2Vec2{ return (m_body2.GetWorldPoint(m_localAnchor2)); } public function EnableMotor(_arg1:Boolean):void{ m_enableMotor = _arg1; } public function GetUpperLimit():Number{ return (m_upperTranslation); } public function GetLowerLimit():Number{ return (m_lowerTranslation); } public function GetJointTranslation():Number{ var _local1:b2Body; var _local2:b2Body; var _local3:b2Mat22; var _local4:b2Vec2; var _local5:b2Vec2; var _local6:Number; var _local7:Number; var _local8:b2Vec2; var _local9:Number; _local1 = m_body1; _local2 = m_body2; _local4 = _local1.GetWorldPoint(m_localAnchor1); _local5 = _local2.GetWorldPoint(m_localAnchor2); _local6 = (_local5.x - _local4.x); _local7 = (_local5.y - _local4.y); _local8 = _local1.GetWorldVector(m_localXAxis1); _local9 = ((_local8.x * _local6) + (_local8.y * _local7)); return (_local9); } public function SetLimits(_arg1:Number, _arg2:Number):void{ m_lowerTranslation = _arg1; m_upperTranslation = _arg2; } public function GetMotorSpeed():Number{ return (m_motorSpeed); } override public function GetReactionForce():b2Vec2{ var _local1:b2Mat22; var _local2:Number; var _local3:Number; var _local4:Number; var _local5:Number; _local1 = m_body1.m_xf.R; _local2 = (m_limitForce * ((_local1.col1.x * m_localXAxis1.x) + (_local1.col2.x * m_localXAxis1.y))); _local3 = (m_limitForce * ((_local1.col1.y * m_localXAxis1.x) + (_local1.col2.y * m_localXAxis1.y))); _local4 = (m_force * ((_local1.col1.x * m_localYAxis1.x) + (_local1.col2.x * m_localYAxis1.y))); _local5 = (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 _local3:b2Body; var _local4:b2Body; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:b2Mat22; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; var _local20:Number; var _local21:Number; var _local22:Number; var _local23:Number; var _local24:Number; var _local25:Number; var _local26:Number; var _local27:Number; var _local28:Number; var _local29:Number; var _local30:Number; var _local31:Number; var _local32:Number; _local3 = m_body1; _local4 = m_body2; _local5 = _local3.m_invMass; _local6 = _local4.m_invMass; _local7 = _local3.m_invI; _local8 = _local4.m_invI; _local9 = _local3.m_xf.R; _local11 = (m_localAnchor1.x - _local3.m_sweep.localCenter.x); _local12 = (m_localAnchor1.y - _local3.m_sweep.localCenter.y); _local10 = ((_local9.col1.x * _local11) + (_local9.col2.x * _local12)); _local12 = ((_local9.col1.y * _local11) + (_local9.col2.y * _local12)); _local11 = _local10; _local9 = _local4.m_xf.R; _local13 = (m_localAnchor2.x - _local4.m_sweep.localCenter.x); _local14 = (m_localAnchor2.y - _local4.m_sweep.localCenter.y); _local10 = ((_local9.col1.x * _local13) + (_local9.col2.x * _local14)); _local14 = ((_local9.col1.y * _local13) + (_local9.col2.y * _local14)); _local13 = _local10; _local15 = (_local3.m_sweep.c.x + _local11); _local16 = (_local3.m_sweep.c.y + _local12); _local17 = (_local4.m_sweep.c.x + _local13); _local18 = (_local4.m_sweep.c.y + _local14); _local19 = (_local17 - _local15); _local20 = (_local18 - _local16); _local9 = _local3.m_xf.R; _local21 = ((_local9.col1.x * m_localYAxis1.x) + (_local9.col2.x * m_localYAxis1.y)); _local22 = ((_local9.col1.y * m_localYAxis1.x) + (_local9.col2.y * m_localYAxis1.y)); _local23 = ((_local21 * _local19) + (_local22 * _local20)); _local23 = b2Math.b2Clamp(_local23, -(b2Settings.b2_maxLinearCorrection), b2Settings.b2_maxLinearCorrection); _local24 = (-(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)); _local25 = b2Math.b2Abs(_local23); _local26 = ((_local4.m_sweep.a - _local3.m_sweep.a) - m_refAngle); _local26 = b2Math.b2Clamp(_local26, -(b2Settings.b2_maxAngularCorrection), b2Settings.b2_maxAngularCorrection); _local27 = (-(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(); _local28 = b2Math.b2Abs(_local26); if (((m_enableLimit) && (!((m_limitState == e_inactiveLimit))))){ _local9 = _local3.m_xf.R; _local11 = (m_localAnchor1.x - _local3.m_sweep.localCenter.x); _local12 = (m_localAnchor1.y - _local3.m_sweep.localCenter.y); _local10 = ((_local9.col1.x * _local11) + (_local9.col2.x * _local12)); _local12 = ((_local9.col1.y * _local11) + (_local9.col2.y * _local12)); _local11 = _local10; _local9 = _local4.m_xf.R; _local13 = (m_localAnchor2.x - _local4.m_sweep.localCenter.x); _local14 = (m_localAnchor2.y - _local4.m_sweep.localCenter.y); _local10 = ((_local9.col1.x * _local13) + (_local9.col2.x * _local14)); _local14 = ((_local9.col1.y * _local13) + (_local9.col2.y * _local14)); _local13 = _local10; _local15 = (_local3.m_sweep.c.x + _local11); _local16 = (_local3.m_sweep.c.y + _local12); _local17 = (_local4.m_sweep.c.x + _local13); _local18 = (_local4.m_sweep.c.y + _local14); _local19 = (_local17 - _local15); _local20 = (_local18 - _local16); _local9 = _local3.m_xf.R; _local29 = ((_local9.col1.x * m_localXAxis1.x) + (_local9.col2.x * m_localXAxis1.y)); _local30 = ((_local9.col1.y * m_localXAxis1.x) + (_local9.col2.y * m_localXAxis1.y)); _local31 = ((_local29 * _local19) + (_local30 * _local20)); _local32 = 0; if (m_limitState == e_equalLimits){ _local1 = b2Math.b2Clamp(_local31, -(b2Settings.b2_maxLinearCorrection), b2Settings.b2_maxLinearCorrection); _local32 = (-(m_motorMass) * _local1); _local25 = b2Math.b2Max(_local25, b2Math.b2Abs(_local26)); } else { if (m_limitState == e_atLowerLimit){ _local1 = (_local31 - 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 GetJointSpeed():Number{ var _local1:b2Body; var _local2:b2Body; var _local3:b2Mat22; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:b2Vec2; var _local16:b2Vec2; var _local17:b2Vec2; var _local18:Number; var _local19:Number; var _local20:Number; _local1 = m_body1; _local2 = m_body2; _local3 = _local1.m_xf.R; _local4 = (m_localAnchor1.x - _local1.m_sweep.localCenter.x); _local5 = (m_localAnchor1.y - _local1.m_sweep.localCenter.y); _local6 = ((_local3.col1.x * _local4) + (_local3.col2.x * _local5)); _local5 = ((_local3.col1.y * _local4) + (_local3.col2.y * _local5)); _local4 = _local6; _local3 = _local2.m_xf.R; _local7 = (m_localAnchor2.x - _local2.m_sweep.localCenter.x); _local8 = (m_localAnchor2.y - _local2.m_sweep.localCenter.y); _local6 = ((_local3.col1.x * _local7) + (_local3.col2.x * _local8)); _local8 = ((_local3.col1.y * _local7) + (_local3.col2.y * _local8)); _local7 = _local6; _local9 = (_local1.m_sweep.c.x + _local4); _local10 = (_local1.m_sweep.c.y + _local5); _local11 = (_local2.m_sweep.c.x + _local7); _local12 = (_local2.m_sweep.c.y + _local8); _local13 = (_local11 - _local9); _local14 = (_local12 - _local10); _local15 = _local1.GetWorldVector(m_localXAxis1); _local16 = _local1.m_linearVelocity; _local17 = _local2.m_linearVelocity; _local18 = _local1.m_angularVelocity; _local19 = _local2.m_angularVelocity; _local20 = (((_local13 * (-(_local18) * _local15.y)) + (_local14 * (_local18 * _local15.x))) + ((_local15.x * (((_local17.x + (-(_local19) * _local8)) - _local16.x) - (-(_local18) * _local5))) + (_local15.y * (((_local17.y + (_local19 * _local7)) - _local16.y) - (_local18 * _local4))))); return (_local20); } public function SetMotorSpeed(_arg1:Number):void{ m_motorSpeed = _arg1; } override public function InitVelocityConstraints(_arg1:b2TimeStep):void{ var _local2:b2Body; var _local3:b2Body; var _local4:b2Mat22; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; var _local20:Number; var _local21:Number; var _local22:Number; var _local23:Number; var _local24:Number; var _local25:Number; var _local26:Number; var _local27:Number; var _local28:Number; _local2 = m_body1; _local3 = m_body2; _local4 = _local2.m_xf.R; _local6 = (m_localAnchor1.x - _local2.m_sweep.localCenter.x); _local7 = (m_localAnchor1.y - _local2.m_sweep.localCenter.y); _local5 = ((_local4.col1.x * _local6) + (_local4.col2.x * _local7)); _local7 = ((_local4.col1.y * _local6) + (_local4.col2.y * _local7)); _local6 = _local5; _local4 = _local3.m_xf.R; _local8 = (m_localAnchor2.x - _local3.m_sweep.localCenter.x); _local9 = (m_localAnchor2.y - _local3.m_sweep.localCenter.y); _local5 = ((_local4.col1.x * _local8) + (_local4.col2.x * _local9)); _local9 = ((_local4.col1.y * _local8) + (_local4.col2.y * _local9)); _local8 = _local5; _local10 = _local2.m_invMass; _local11 = _local3.m_invMass; _local12 = _local2.m_invI; _local13 = _local3.m_invI; _local4 = _local2.m_xf.R; _local14 = ((_local4.col1.x * m_localYAxis1.x) + (_local4.col2.x * m_localYAxis1.y)); _local15 = ((_local4.col1.y * m_localYAxis1.x) + (_local4.col2.y * m_localYAxis1.y)); _local16 = ((_local3.m_sweep.c.x + _local8) - _local2.m_sweep.c.x); _local17 = ((_local3.m_sweep.c.y + _local9) - _local2.m_sweep.c.y); 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 SetMaxMotorForce(_arg1:Number):void{ m_maxMotorForce = _arg1; } public function EnableLimit(_arg1:Boolean):void{ m_enableLimit = _arg1; } override public function GetReactionTorque():Number{ return (m_torque); } public function IsLimitEnabled():Boolean{ return (m_enableLimit); } public function IsMotorEnabled():Boolean{ return (m_enableMotor); } override public function SolveVelocityConstraints(_arg1:b2TimeStep):void{ var _local2:b2Body; var _local3:b2Body; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; _local2 = m_body1; _local3 = m_body2; _local4 = _local2.m_invMass; _local5 = _local3.m_invMass; _local6 = _local2.m_invI; _local7 = _local3.m_invI; _local9 = m_linearJacobian.Compute(_local2.m_linearVelocity, _local2.m_angularVelocity, _local3.m_linearVelocity, _local3.m_angularVelocity); _local10 = ((-(_arg1.inv_dt) * m_linearMass) * _local9); m_force = (m_force + _local10); _local11 = (_arg1.dt * _local10); _local2.m_linearVelocity.x = (_local2.m_linearVelocity.x + ((_local4 * _local11) * m_linearJacobian.linear1.x)); _local2.m_linearVelocity.y = (_local2.m_linearVelocity.y + ((_local4 * _local11) * m_linearJacobian.linear1.y)); _local2.m_angularVelocity = (_local2.m_angularVelocity + ((_local6 * _local11) * m_linearJacobian.angular1)); _local3.m_linearVelocity.x = (_local3.m_linearVelocity.x + ((_local5 * _local11) * m_linearJacobian.linear2.x)); _local3.m_linearVelocity.y = (_local3.m_linearVelocity.y + ((_local5 * _local11) * m_linearJacobian.linear2.y)); _local3.m_angularVelocity = (_local3.m_angularVelocity + ((_local7 * _local11) * m_linearJacobian.angular2)); _local12 = (_local3.m_angularVelocity - _local2.m_angularVelocity); _local13 = ((-(_arg1.inv_dt) * m_angularMass) * _local12); m_torque = (m_torque + _local13); _local14 = (_arg1.dt * _local13); _local2.m_angularVelocity = (_local2.m_angularVelocity - (_local6 * _local14)); _local3.m_angularVelocity = (_local3.m_angularVelocity + (_local7 * _local14)); if (((m_enableMotor) && (!((m_limitState == e_equalLimits))))){ _local15 = (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)); }; } } }//package Box2D.Dynamics.Joints
Section 59
//b2PrismaticJointDef (Box2D.Dynamics.Joints.b2PrismaticJointDef) package Box2D.Dynamics.Joints { import Box2D.Common.Math.*; import Box2D.Dynamics.*; public class b2PrismaticJointDef extends b2JointDef { public var localAxis1:b2Vec2; public var referenceAngle:Number; public var maxMotorForce:Number; public var motorSpeed:Number; public var upperTranslation:Number; public var localAnchor1:b2Vec2; public var localAnchor2:b2Vec2; public var enableLimit:Boolean; public var enableMotor:Boolean; public var lowerTranslation:Number; public function b2PrismaticJointDef(){ localAnchor1 = new b2Vec2(); localAnchor2 = new b2Vec2(); localAxis1 = new b2Vec2(); super(); type = b2Joint.e_prismaticJoint; localAxis1.Set(1, 0); referenceAngle = 0; enableLimit = false; lowerTranslation = 0; upperTranslation = 0; enableMotor = false; 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.Common.*; import Box2D.Dynamics.*; public class b2PulleyJoint extends b2Joint { public var m_ground:b2Body; public var m_maxLength2:Number; public var m_limitForce1:Number; public var m_maxLength1:Number; public var m_limitState1:int; public var m_limitState2:int; public var m_limitPositionImpulse2:Number; public var m_force:Number; public var m_limitPositionImpulse1:Number; public var m_constant: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_positionImpulse:Number; public var m_limitMass2:Number; public var m_limitMass1:Number; public var m_pulleyMass:Number; public var m_u1:b2Vec2; public var m_u2:b2Vec2; public var m_limitForce2:Number; public static const b2_minPulleyLength:Number = 2; public function b2PulleyJoint(_arg1:b2PulleyJointDef){ var _local2:b2Mat22; var _local3:Number; var _local4:Number; m_groundAnchor1 = new b2Vec2(); m_groundAnchor2 = new b2Vec2(); m_localAnchor1 = new b2Vec2(); m_localAnchor2 = new b2Vec2(); 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; _local1 = 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; _local1 = m_u2.Copy(); _local1.Multiply(m_force); return (_local1); } override public function SolvePositionConstraints():Boolean{ var _local1:b2Body; var _local2:b2Body; var _local3:b2Mat22; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; var _local20:Number; var _local21:Number; var _local22:Number; var _local23:Number; _local1 = m_body1; _local2 = m_body2; _local4 = (m_ground.m_xf.position.x + m_groundAnchor1.x); _local5 = (m_ground.m_xf.position.y + m_groundAnchor1.y); _local6 = (m_ground.m_xf.position.x + m_groundAnchor2.x); _local7 = (m_ground.m_xf.position.y + m_groundAnchor2.y); _local23 = 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 _local2:b2Body; var _local3:b2Body; var _local4:b2Mat22; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; var _local20:Number; var _local21:Number; var _local22:Number; var _local23:Number; var _local24:Number; var _local25:Number; var _local26:Number; _local2 = m_body1; _local3 = m_body2; _local4 = _local2.m_xf.R; _local5 = (m_localAnchor1.x - _local2.m_sweep.localCenter.x); _local6 = (m_localAnchor1.y - _local2.m_sweep.localCenter.y); _local7 = ((_local4.col1.x * _local5) + (_local4.col2.x * _local6)); _local6 = ((_local4.col1.y * _local5) + (_local4.col2.y * _local6)); _local5 = _local7; _local4 = _local3.m_xf.R; _local8 = (m_localAnchor2.x - _local3.m_sweep.localCenter.x); _local9 = (m_localAnchor2.y - _local3.m_sweep.localCenter.y); _local7 = ((_local4.col1.x * _local8) + (_local4.col2.x * _local9)); _local9 = ((_local4.col1.y * _local8) + (_local4.col2.y * _local9)); _local8 = _local7; _local10 = (_local2.m_sweep.c.x + _local5); _local11 = (_local2.m_sweep.c.y + _local6); _local12 = (_local3.m_sweep.c.x + _local8); _local13 = (_local3.m_sweep.c.y + _local9); _local14 = (m_ground.m_xf.position.x + m_groundAnchor1.x); _local15 = (m_ground.m_xf.position.y + m_groundAnchor1.y); _local16 = (m_ground.m_xf.position.x + m_groundAnchor2.x); _local17 = (m_ground.m_xf.position.y + m_groundAnchor2.y); m_u1.Set((_local10 - _local14), (_local11 - _local15)); m_u2.Set((_local12 - _local16), (_local13 - _local17)); _local18 = m_u1.Length(); _local19 = 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(); }; _local20 = ((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; }; _local21 = ((_local5 * m_u1.y) - (_local6 * m_u1.x)); _local22 = ((_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); } public function GetLength2():Number{ var _local1:b2Vec2; var _local2:Number; var _local3:Number; var _local4:Number; var _local5:Number; _local1 = m_body2.GetWorldPoint(m_localAnchor2); _local2 = (m_ground.m_xf.position.x + m_groundAnchor2.x); _local3 = (m_ground.m_xf.position.y + m_groundAnchor2.y); _local4 = (_local1.x - _local2); _local5 = (_local1.y - _local3); return (Math.sqrt(((_local4 * _local4) + (_local5 * _local5)))); } override public function SolveVelocityConstraints(_arg1:b2TimeStep):void{ var _local2:b2Body; var _local3:b2Body; var _local4:b2Mat22; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; var _local20:Number; _local2 = m_body1; _local3 = m_body2; _local4 = _local2.m_xf.R; _local5 = (m_localAnchor1.x - _local2.m_sweep.localCenter.x); _local6 = (m_localAnchor1.y - _local2.m_sweep.localCenter.y); _local7 = ((_local4.col1.x * _local5) + (_local4.col2.x * _local6)); _local6 = ((_local4.col1.y * _local5) + (_local4.col2.y * _local6)); _local5 = _local7; _local4 = _local3.m_xf.R; _local8 = (m_localAnchor2.x - _local3.m_sweep.localCenter.x); _local9 = (m_localAnchor2.y - _local3.m_sweep.localCenter.y); _local7 = ((_local4.col1.x * _local8) + (_local4.col2.x * _local9)); _local9 = ((_local4.col1.y * _local8) + (_local4.col2.y * _local9)); _local8 = _local7; if (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; var _local2:Number; var _local3:Number; var _local4:Number; var _local5:Number; _local1 = m_body1.GetWorldPoint(m_localAnchor1); _local2 = (m_ground.m_xf.position.x + m_groundAnchor1.x); _local3 = (m_ground.m_xf.position.y + m_groundAnchor1.y); _local4 = (_local1.x - _local2); _local5 = (_local1.y - _local3); return (Math.sqrt(((_local4 * _local4) + (_local5 * _local5)))); } public function GetGroundAnchor1():b2Vec2{ var _local1:b2Vec2; _local1 = m_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 maxLength2:Number; public var length1:Number; public var length2:Number; public var maxLength1:Number; public var ratio:Number; public var groundAnchor1:b2Vec2; public var groundAnchor2:b2Vec2; public var localAnchor1:b2Vec2; public var localAnchor2:b2Vec2; 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{ var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; body1 = _arg1; body2 = _arg2; groundAnchor1.SetV(_arg3); groundAnchor2.SetV(_arg4); localAnchor1 = body1.GetLocalPoint(_arg5); localAnchor2 = body2.GetLocalPoint(_arg6); _local8 = (_arg5.x - _arg3.x); _local9 = (_arg5.y - _arg3.y); length1 = Math.sqrt(((_local8 * _local8) + (_local9 * _local9))); _local10 = (_arg6.x - _arg4.x); _local11 = (_arg6.y - _arg4.y); length2 = Math.sqrt(((_local10 * _local10) + (_local11 * _local11))); ratio = _arg7; _local12 = (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.Common.*; import Box2D.Dynamics.*; public class b2RevoluteJoint extends b2Joint { public var m_limitForce:Number; public var m_motorForce:Number; public var m_pivotMass:b2Mat22; public var m_enableLimit:Boolean; public var m_limitState:int; public var m_motorMass:Number; public var m_localAnchor1:b2Vec2; public var m_localAnchor2:b2Vec2; private var K1:b2Mat22; private var K2:b2Mat22; private var K3:b2Mat22; private var K:b2Mat22; public var m_pivotForce:b2Vec2; public var m_motorSpeed:Number; public var m_enableMotor:Boolean; public var m_limitPositionImpulse:Number; public var m_maxMotorTorque:Number; public var m_referenceAngle:Number; public var m_lowerAngle:Number; public var m_upperAngle: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 GetAnchor1():b2Vec2{ return (m_body1.GetWorldPoint(m_localAnchor1)); } override public function GetAnchor2():b2Vec2{ return (m_body2.GetWorldPoint(m_localAnchor2)); } public function EnableMotor(_arg1:Boolean):void{ m_enableMotor = _arg1; } public function GetUpperLimit():Number{ return (m_upperAngle); } public function GetLowerLimit():Number{ return (m_lowerAngle); } public function SetLimits(_arg1:Number, _arg2:Number):void{ m_lowerAngle = _arg1; m_upperAngle = _arg2; } 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 _local3:b2Body; var _local4:b2Body; var _local5:Number; var _local6:b2Mat22; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; var _local20:Number; var _local21:Number; var _local22:Number; var _local23:Number; var _local24:Number; var _local25:Number; var _local26:Number; _local3 = m_body1; _local4 = m_body2; _local5 = 0; _local6 = _local3.m_xf.R; _local7 = (m_localAnchor1.x - _local3.m_sweep.localCenter.x); _local8 = (m_localAnchor1.y - _local3.m_sweep.localCenter.y); _local9 = ((_local6.col1.x * _local7) + (_local6.col2.x * _local8)); _local8 = ((_local6.col1.y * _local7) + (_local6.col2.y * _local8)); _local7 = _local9; _local6 = _local4.m_xf.R; _local10 = (m_localAnchor2.x - _local4.m_sweep.localCenter.x); _local11 = (m_localAnchor2.y - _local4.m_sweep.localCenter.y); _local9 = ((_local6.col1.x * _local10) + (_local6.col2.x * _local11)); _local11 = ((_local6.col1.y * _local10) + (_local6.col2.y * _local11)); _local10 = _local9; _local12 = (_local3.m_sweep.c.x + _local7); _local13 = (_local3.m_sweep.c.y + _local8); _local14 = (_local4.m_sweep.c.x + _local10); _local15 = (_local4.m_sweep.c.y + _local11); _local16 = (_local14 - _local12); _local17 = (_local15 - _local13); _local5 = Math.sqrt(((_local16 * _local16) + (_local17 * _local17))); _local18 = _local3.m_invMass; _local19 = _local4.m_invMass; _local20 = _local3.m_invI; _local21 = _local4.m_invI; 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)); _local22 = tImpulse.x; _local23 = tImpulse.y; _local3.m_sweep.c.x = (_local3.m_sweep.c.x - (_local3.m_invMass * _local22)); _local3.m_sweep.c.y = (_local3.m_sweep.c.y - (_local3.m_invMass * _local23)); _local3.m_sweep.a = (_local3.m_sweep.a - (_local3.m_invI * ((_local7 * _local23) - (_local8 * _local22)))); _local4.m_sweep.c.x = (_local4.m_sweep.c.x + (_local4.m_invMass * _local22)); _local4.m_sweep.c.y = (_local4.m_sweep.c.y + (_local4.m_invMass * _local23)); _local4.m_sweep.a = (_local4.m_sweep.a + (_local4.m_invI * ((_local10 * _local23) - (_local11 * _local22)))); _local3.SynchronizeTransform(); _local4.SynchronizeTransform(); _local24 = 0; if (((m_enableLimit) && (!((m_limitState == e_inactiveLimit))))){ _local25 = ((_local4.m_sweep.a - _local3.m_sweep.a) - 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 GetJointSpeed():Number{ return ((m_body2.m_angularVelocity - m_body1.m_angularVelocity)); } public function SetMotorSpeed(_arg1:Number):void{ m_motorSpeed = _arg1; } 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)); } override public function InitVelocityConstraints(_arg1:b2TimeStep):void{ var _local2:b2Body; var _local3:b2Body; var _local4:b2Mat22; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; _local2 = m_body1; _local3 = m_body2; _local4 = _local2.m_xf.R; _local6 = (m_localAnchor1.x - _local2.m_sweep.localCenter.x); _local7 = (m_localAnchor1.y - _local2.m_sweep.localCenter.y); _local5 = ((_local4.col1.x * _local6) + (_local4.col2.x * _local7)); _local7 = ((_local4.col1.y * _local6) + (_local4.col2.y * _local7)); _local6 = _local5; _local4 = _local3.m_xf.R; _local8 = (m_localAnchor2.x - _local3.m_sweep.localCenter.x); _local9 = (m_localAnchor2.y - _local3.m_sweep.localCenter.y); _local5 = ((_local4.col1.x * _local8) + (_local4.col2.x * _local9)); _local9 = ((_local4.col1.y * _local8) + (_local4.col2.y * _local9)); _local8 = _local5; _local10 = _local2.m_invMass; _local11 = _local3.m_invMass; _local12 = _local2.m_invI; _local13 = _local3.m_invI; 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; } public function GetMotorTorque():Number{ return (m_motorForce); } override public function GetReactionTorque():Number{ return (m_limitForce); } public function IsLimitEnabled():Boolean{ return (m_enableLimit); } public function IsMotorEnabled():Boolean{ return (m_enableMotor); } override public function SolveVelocityConstraints(_arg1:b2TimeStep):void{ var _local2:b2Body; var _local3:b2Body; var _local4:b2Mat22; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; var _local20:Number; var _local21:Number; _local2 = m_body1; _local3 = m_body2; _local4 = _local2.m_xf.R; _local6 = (m_localAnchor1.x - _local2.m_sweep.localCenter.x); _local7 = (m_localAnchor1.y - _local2.m_sweep.localCenter.y); _local5 = ((_local4.col1.x * _local6) + (_local4.col2.x * _local7)); _local7 = ((_local4.col1.y * _local6) + (_local4.col2.y * _local7)); _local6 = _local5; _local4 = _local3.m_xf.R; _local8 = (m_localAnchor2.x - _local3.m_sweep.localCenter.x); _local9 = (m_localAnchor2.y - _local3.m_sweep.localCenter.y); _local5 = ((_local4.col1.x * _local8) + (_local4.col2.x * _local9)); _local9 = ((_local4.col1.y * _local8) + (_local4.col2.y * _local9)); _local8 = _local5; _local11 = (((_local3.m_linearVelocity.x + (-(_local3.m_angularVelocity) * _local9)) - _local2.m_linearVelocity.x) - (-(_local2.m_angularVelocity) * _local7)); _local12 = (((_local3.m_linearVelocity.y + (_local3.m_angularVelocity * _local8)) - _local2.m_linearVelocity.y) - (_local2.m_angularVelocity * _local6)); _local13 = (-(_arg1.inv_dt) * ((m_pivotMass.col1.x * _local11) + (m_pivotMass.col2.x * _local12))); _local14 = (-(_arg1.inv_dt) * ((m_pivotMass.col1.y * _local11) + (m_pivotMass.col2.y * _local12))); m_pivotForce.x = (m_pivotForce.x + _local13); m_pivotForce.y = (m_pivotForce.y + _local14); _local15 = (_arg1.dt * _local13); _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)); }; } } }//package Box2D.Dynamics.Joints
Section 63
//b2RevoluteJointDef (Box2D.Dynamics.Joints.b2RevoluteJointDef) package Box2D.Dynamics.Joints { import Box2D.Common.Math.*; import Box2D.Dynamics.*; public class b2RevoluteJointDef extends b2JointDef { public var referenceAngle:Number; public var upperAngle:Number; public var lowerAngle:Number; public var motorSpeed:Number; public var maxMotorTorque:Number; public var localAnchor1:b2Vec2; public var localAnchor2:b2Vec2; public var enableLimit:Boolean; public var enableMotor:Boolean; public function b2RevoluteJointDef(){ localAnchor1 = new b2Vec2(); localAnchor2 = new b2Vec2(); super(); type = b2Joint.e_revoluteJoint; localAnchor1.Set(0, 0); localAnchor2.Set(0, 0); referenceAngle = 0; 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.Dynamics.Joints.*; import Box2D.Dynamics.Contacts.*; import Box2D.Collision.Shapes.*; import Box2D.Common.Math.*; import Box2D.Common.*; public class b2Body { public var m_next:b2Body; public var m_contactList:b2ContactEdge; public var m_angularVelocity:Number; public var m_shapeList:b2Shape; public var m_force:b2Vec2; public var m_mass:Number; public var m_sweep:b2Sweep; public var m_xf:b2XForm; public var m_torque:Number; public var m_userData; public var m_flags:uint; public var m_world:b2World; public var m_prev:b2Body; public var m_invMass:Number; public var m_type:int; public var m_linearDamping:Number; public var m_angularDamping:Number; public var m_invI:Number; public var m_linearVelocity:b2Vec2; public var m_sleepTime:Number; public var m_shapeCount:int; public var m_jointList:b2JointEdge; public var 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){ var _local3:b2Mat22; var _local4:b2Vec2; m_xf = new b2XForm(); m_sweep = new b2Sweep(); m_linearVelocity = new b2Vec2(); m_force = new b2Vec2(); super(); m_flags = 0; if (_arg1.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); _local3 = m_xf.R; _local4 = m_sweep.localCenter; m_sweep.c.x = ((_local3.col1.x * _local4.x) + (_local3.col2.x * _local4.y)); m_sweep.c.y = ((_local3.col1.y * _local4.x) + (_local3.col2.y * _local4.y)); m_sweep.c.x = (m_sweep.c.x + m_xf.position.x); m_sweep.c.y = (m_sweep.c.y + m_xf.position.y); m_sweep.c0.SetV(m_sweep.c); m_jointList = null; m_contactList = null; m_prev = null; m_next = null; m_linearDamping = _arg1.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{ var _local1:b2Mat22; var _local2:b2Vec2; m_xf.R.Set(m_sweep.a); _local1 = m_xf.R; _local2 = m_sweep.localCenter; m_xf.position.x = (m_sweep.c.x - ((_local1.col1.x * _local2.x) + (_local1.col2.x * _local2.y))); m_xf.position.y = (m_sweep.c.y - ((_local1.col1.y * _local2.x) + (_local1.col2.y * _local2.y))); } public function GetInertia():Number{ return (m_I); } public function IsSleeping():Boolean{ return (((m_flags & e_sleepFlag) == e_sleepFlag)); } public function SetMassFromShapes():void{ var _local1:b2Shape; var _local2:Number; var _local3:Number; var _local4:b2MassData; var _local5:b2Mat22; var _local6:b2Vec2; var _local7:int; if (m_world.m_lock == true){ return; }; m_mass = 0; m_invMass = 0; m_I = 0; m_invI = 0; _local2 = 0; _local3 = 0; _local4 = s_massData; _local1 = m_shapeList; while (_local1) { _local1.ComputeMass(_local4); m_mass = (m_mass + _local4.mass); _local2 = (_local2 + (_local4.mass * _local4.center.x)); _local3 = (_local3 + (_local4.mass * _local4.center.y)); 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); _local5 = m_xf.R; _local6 = m_sweep.localCenter; m_sweep.c.x = ((_local5.col1.x * _local6.x) + (_local5.col2.x * _local6.y)); m_sweep.c.y = ((_local5.col1.y * _local6.x) + (_local5.col2.y * _local6.y)); m_sweep.c.x = (m_sweep.c.x + m_xf.position.x); m_sweep.c.y = (m_sweep.c.y + m_xf.position.y); m_sweep.c0.SetV(m_sweep.c); _local1 = m_shapeList; while (_local1) { _local1.UpdateSweepRadius(m_sweep.localCenter); _local1 = _local1.m_next; }; _local7 = m_type; if ((((m_invMass == 0)) && ((m_invI == 0)))){ m_type = e_staticType; } else { m_type = e_dynamicType; }; if (_local7 != m_type){ _local1 = m_shapeList; while (_local1) { _local1.RefilterProxy(m_world.m_broadPhase, m_xf); _local1 = _local1.m_next; }; }; } public function PutToSleep():void{ m_flags = (m_flags | e_sleepFlag); m_sleepTime = 0; m_linearVelocity.SetZero(); m_angularVelocity = 0; m_force.SetZero(); m_torque = 0; } public function GetJointList():b2JointEdge{ return (m_jointList); } public function SetXForm(_arg1:b2Vec2, _arg2:Number):Boolean{ var _local3:b2Shape; var _local4:b2Mat22; var _local5:b2Vec2; var _local6:Boolean; var _local7:Boolean; if (m_world.m_lock == true){ return (true); }; if (IsFrozen()){ return (false); }; m_xf.R.Set(_arg2); m_xf.position.SetV(_arg1); _local4 = m_xf.R; _local5 = m_sweep.localCenter; m_sweep.c.x = ((_local4.col1.x * _local5.x) + (_local4.col2.x * _local5.y)); m_sweep.c.y = ((_local4.col1.y * _local5.x) + (_local4.col2.y * _local5.y)); m_sweep.c.x = (m_sweep.c.x + m_xf.position.x); m_sweep.c.y = (m_sweep.c.y + m_xf.position.y); m_sweep.c0.SetV(m_sweep.c); m_sweep.a0 = (m_sweep.a = _arg2); _local6 = false; _local3 = m_shapeList; while (_local3) { _local7 = _local3.Synchronize(m_world.m_broadPhase, m_xf, m_xf); if (_local7 == false){ _local6 = true; break; }; _local3 = _local3.m_next; }; if (_local6 == true){ m_flags = (m_flags | e_frozenFlag); m_linearVelocity.SetZero(); m_angularVelocity = 0; _local3 = m_shapeList; while (_local3) { _local3.DestroyProxy(m_world.m_broadPhase); _local3 = _local3.m_next; }; return (false); }; m_world.m_broadPhase.Commit(); return (true); } public function GetLocalPoint(_arg1:b2Vec2):b2Vec2{ return (b2Math.b2MulXT(m_xf, _arg1)); } public function ApplyForce(_arg1:b2Vec2, _arg2:b2Vec2):void{ if (IsSleeping()){ WakeUp(); }; m_force.x = (m_force.x + _arg1.x); m_force.y = (m_force.y + _arg1.y); m_torque = (m_torque + (((_arg2.x - m_sweep.c.x) * _arg1.y) - ((_arg2.y - m_sweep.c.y) * _arg1.x))); } public function SynchronizeShapes():Boolean{ var _local1:b2XForm; var _local2:b2Mat22; var _local3:b2Vec2; var _local4:b2Shape; var _local5:Boolean; _local1 = s_xf1; _local1.R.Set(m_sweep.a0); _local2 = _local1.R; _local3 = m_sweep.localCenter; _local1.position.x = (m_sweep.c0.x - ((_local2.col1.x * _local3.x) + (_local2.col2.x * _local3.y))); _local1.position.y = (m_sweep.c0.y - ((_local2.col1.y * _local3.x) + (_local2.col2.y * _local3.y))); _local5 = true; _local4 = m_shapeList; while (_local4) { _local5 = _local4.Synchronize(m_world.m_broadPhase, _local1, m_xf); if (_local5 == false){ break; }; _local4 = _local4.m_next; }; if (_local5 == false){ m_flags = (m_flags | e_frozenFlag); m_linearVelocity.SetZero(); m_angularVelocity = 0; _local4 = m_shapeList; while (_local4) { _local4.DestroyProxy(m_world.m_broadPhase); _local4 = _local4.m_next; }; return (false); }; return (true); } public function GetAngle():Number{ return (m_sweep.a); } public function GetXForm():b2XForm{ return (m_xf); } public function ApplyImpulse(_arg1:b2Vec2, _arg2:b2Vec2):void{ if (IsSleeping()){ WakeUp(); }; m_linearVelocity.x = (m_linearVelocity.x + (m_invMass * _arg1.x)); m_linearVelocity.y = (m_linearVelocity.y + (m_invMass * _arg1.y)); m_angularVelocity = (m_angularVelocity + (m_invI * (((_arg2.x - m_sweep.c.x) * _arg1.y) - ((_arg2.y - m_sweep.c.y) * _arg1.x)))); } public function GetNext():b2Body{ return (m_next); } public function GetMass():Number{ return (m_mass); } public function GetLinearVelocityFromLocalPoint(_arg1:b2Vec2):b2Vec2{ var _local2:b2Mat22; var _local3:b2Vec2; _local2 = m_xf.R; _local3 = new b2Vec2(((_local2.col1.x * _arg1.x) + (_local2.col2.x * _arg1.y)), ((_local2.col1.y * _arg1.x) + (_local2.col2.y * _arg1.y))); _local3.x = (_local3.x + m_xf.position.x); _local3.y = (_local3.y + m_xf.position.y); return (new b2Vec2((m_linearVelocity.x + (m_angularVelocity * (_local3.y - m_sweep.c.y))), (m_linearVelocity.x - (m_angularVelocity * (_local3.x - m_sweep.c.x))))); } public function GetAngularVelocity():Number{ return (m_angularVelocity); } public function SetAngularVelocity(_arg1:Number):void{ m_angularVelocity = _arg1; } public function SetMass(_arg1:b2MassData):void{ var _local2:b2Shape; var _local3:b2Mat22; var _local4:b2Vec2; var _local5:int; if (m_world.m_lock == true){ return; }; m_invMass = 0; 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); _local3 = m_xf.R; _local4 = m_sweep.localCenter; m_sweep.c.x = ((_local3.col1.x * _local4.x) + (_local3.col2.x * _local4.y)); m_sweep.c.y = ((_local3.col1.y * _local4.x) + (_local3.col2.y * _local4.y)); m_sweep.c.x = (m_sweep.c.x + m_xf.position.x); m_sweep.c.y = (m_sweep.c.y + m_xf.position.y); m_sweep.c0.SetV(m_sweep.c); _local2 = m_shapeList; while (_local2) { _local2.UpdateSweepRadius(m_sweep.localCenter); _local2 = _local2.m_next; }; _local5 = m_type; if ((((m_invMass == 0)) && ((m_invI == 0)))){ m_type = e_staticType; } else { m_type = e_dynamicType; }; if (_local5 != m_type){ _local2 = m_shapeList; while (_local2) { _local2.RefilterProxy(m_world.m_broadPhase, m_xf); _local2 = _local2.m_next; }; }; } public function IsStatic():Boolean{ return ((m_type == e_staticType)); } public function GetWorldVector(_arg1:b2Vec2):b2Vec2{ return (b2Math.b2MulMV(m_xf.R, _arg1)); } public function GetShapeList():b2Shape{ return (m_shapeList); } public function Advance(_arg1:Number):void{ m_sweep.Advance(_arg1); m_sweep.c.SetV(m_sweep.c0); m_sweep.a = m_sweep.a0; SynchronizeTransform(); } public function 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; _local2 = m_jointList; while (_local2) { if (_local2.other == _arg1){ return ((_local2.joint.m_collideConnected == false)); }; _local2 = _local2.next; }; return (false); } public function DestroyShape(_arg1:b2Shape):void{ var _local2:b2Shape; var _local3:Boolean; if (m_world.m_lock == true){ return; }; _arg1.DestroyProxy(m_world.m_broadPhase); _local2 = m_shapeList; _local3 = false; while (_local2 != null) { if (_local2 == _arg1){ _local2 = _arg1.m_next; _local3 = true; break; }; _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; var _local3:b2Vec2; _local2 = m_xf.R; _local3 = new b2Vec2(((_local2.col1.x * _arg1.x) + (_local2.col2.x * _arg1.y)), ((_local2.col1.y * _arg1.x) + (_local2.col2.y * _arg1.y))); _local3.x = (_local3.x + m_xf.position.x); _local3.y = (_local3.y + m_xf.position.y); return (_local3); } public function 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.Dynamics.Joints.*; import Box2D.Dynamics.Contacts.*; import Box2D.Collision.*; import Box2D.Collision.Shapes.*; import Box2D.Common.Math.*; public class b2BodyDef { public var isSleeping:Boolean; public var position:b2Vec2; public var isBullet:Boolean; public var allowSleep:Boolean; public var userData; public var angularDamping:Number; public var fixedRotation:Boolean; public var angle:Number; 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.*; import Box2D.Collision.*; import Box2D.Dynamics.Contacts.*; import Box2D.Common.Math.*; import Box2D.Common.*; public class b2ContactFilter { public static var b2_defaultFilter:b2ContactFilter = new (b2ContactFilter); ; public function RayCollide(_arg1, _arg2:b2Shape):Boolean{ if (!(_arg1)){ return (true); }; return (ShouldCollide((_arg1 as b2Shape), _arg2)); } public function ShouldCollide(_arg1:b2Shape, _arg2:b2Shape):Boolean{ var _local3:b2FilterData; var _local4:b2FilterData; var _local5:Boolean; _local3 = _arg1.GetFilterData(); _local4 = _arg2.GetFilterData(); if ((((_local3.groupIndex == _local4.groupIndex)) && (!((_local3.groupIndex == 0))))){ return ((_local3.groupIndex > 0)); }; _local5 = ((!(((_local3.maskBits & _local4.categoryBits) == 0))) && (!(((_local3.categoryBits & _local4.maskBits) == 0)))); return (_local5); } } }//package Box2D.Dynamics
Section 68
//b2ContactListener (Box2D.Dynamics.b2ContactListener) package Box2D.Dynamics { import Box2D.Collision.*; import Box2D.Dynamics.Contacts.*; public class b2ContactListener { public function Add(_arg1:b2ContactPoint):void{ } public function Remove(_arg1:b2ContactPoint):void{ } public function Persist(_arg1:b2ContactPoint):void{ } public function Result(_arg1:b2ContactResult):void{ } } }//package Box2D.Dynamics
Section 69
//b2ContactManager (Box2D.Dynamics.b2ContactManager) package Box2D.Dynamics { import Box2D.Collision.*; import Box2D.Collision.Shapes.*; import Box2D.Dynamics.Contacts.*; import Box2D.Common.Math.*; 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 PairAdded(_arg1, _arg2){ var _local3:b2Shape; var _local4:b2Shape; var _local5:b2Body; var _local6:b2Body; var _local7:b2Contact; _local3 = (_arg1 as b2Shape); _local4 = (_arg2 as b2Shape); _local5 = _local3.m_body; _local6 = _local4.m_body; if (((_local5.IsStatic()) && (_local6.IsStatic()))){ return (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); }; _local7 = 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); } override public function PairRemoved(_arg1, _arg2, _arg3):void{ var _local4:b2Contact; if (_arg3 == null){ return; }; _local4 = (_arg3 as b2Contact); if (_local4 == m_nullContact){ return; }; Destroy(_local4); } public function Destroy(_arg1:b2Contact):void{ var _local2:b2Shape; var _local3:b2Shape; var _local4:int; var _local5:b2Body; var _local6:b2Body; var _local7:b2Body; var _local8:b2Body; var _local9:Array; var _local10:b2ContactPoint; var _local11:int; var _local12:b2Manifold; var _local13:int; var _local14:b2ManifoldPoint; var _local15:b2Vec2; var _local16:b2Vec2; _local2 = _arg1.m_shape1; _local3 = _arg1.m_shape2; _local4 = _arg1.m_manifoldCount; if ((((_local4 > 0)) && (m_world.m_contactListener))){ _local7 = _local2.m_body; _local8 = _local3.m_body; _local9 = _arg1.GetManifolds(); _local10 = s_evalCP; _local10.shape1 = _arg1.m_shape1; _local10.shape2 = _arg1.m_shape1; _local10.friction = _arg1.m_friction; _local10.restitution = _arg1.m_restitution; _local11 = 0; while (_local11 < _local4) { _local12 = _local9[_local11]; _local10.normal.SetV(_local12.normal); _local13 = 0; while (_local13 < _local12.pointCount) { _local14 = _local12.points[_local13]; _local10.position = _local7.GetWorldPoint(_local14.localPoint1); _local15 = _local7.GetLinearVelocityFromLocalPoint(_local14.localPoint1); _local16 = _local8.GetLinearVelocityFromLocalPoint(_local14.localPoint2); _local10.velocity.Set((_local16.x - _local15.x), (_local16.y - _local15.y)); _local10.separation = _local14.separation; _local10.id.key = _local14.id._key; m_world.m_contactListener.Remove(_local10); _local13++; }; _local11++; }; }; if (_arg1.m_prev){ _arg1.m_prev.m_next = _arg1.m_next; }; if (_arg1.m_next){ _arg1.m_next.m_prev = _arg1.m_prev; }; if (_arg1 == m_world.m_contactList){ m_world.m_contactList = _arg1.m_next; }; _local5 = _local2.m_body; _local6 = _local3.m_body; if (_arg1.m_node1.prev){ _arg1.m_node1.prev.next = _arg1.m_node1.next; }; if (_arg1.m_node1.next){ _arg1.m_node1.next.prev = _arg1.m_node1.prev; }; if (_arg1.m_node1 == _local5.m_contactList){ _local5.m_contactList = _arg1.m_node1.next; }; if (_arg1.m_node2.prev){ _arg1.m_node2.prev.next = _arg1.m_node2.next; }; if (_arg1.m_node2.next){ _arg1.m_node2.next.prev = _arg1.m_node2.prev; }; if (_arg1.m_node2 == _local6.m_contactList){ _local6.m_contactList = _arg1.m_node2.next; }; b2Contact.Destroy(_arg1, m_world.m_blockAllocator); m_world.m_contactCount--; } public function Collide():void{ var _local1:b2Contact; var _local2:b2Body; var _local3:b2Body; _local1 = m_world.m_contactList; while (_local1) { _local2 = _local1.m_shape1.m_body; _local3 = _local1.m_shape2.m_body; if (((_local2.IsSleeping()) && (_local3.IsSleeping()))){ } else { _local1.Update(m_world.m_contactListener); }; _local1 = _local1.m_next; }; } } }//package Box2D.Dynamics
Section 70
//b2DebugDraw (Box2D.Dynamics.b2DebugDraw) package Box2D.Dynamics { import Box2D.Collision.*; import Box2D.Collision.Shapes.*; import Box2D.Dynamics.Contacts.*; import Box2D.Common.Math.*; import Box2D.Common.*; import flash.display.*; public class b2DebugDraw { public var m_xformScale:Number;// = 1 public var m_fillAlpha:Number;// = 1 public var m_alpha:Number;// = 1 public var m_lineThickness:Number;// = 1 public var m_drawFlags:uint; public var m_sprite:Sprite; public var m_drawScale:Number;// = 1 public static var e_coreShapeBit:uint = 4; public static var e_shapeBit:uint = 1; public static var e_centerOfMassBit:uint = 64; public static var e_aabbBit:uint = 8; public static var e_obbBit:uint = 16; public static var e_pairBit:uint = 32; public static var e_jointBit:uint = 2; public function b2DebugDraw(){ m_drawScale = 1; m_lineThickness = 1; m_alpha = 1; m_fillAlpha = 1; m_xformScale = 1; super(); m_drawFlags = 0; } public function DrawSolidPolygon(_arg1:Array, _arg2:int, _arg3:b2Color):void{ var _local4:int; 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); _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 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)); } public function ClearFlags(_arg1:uint):void{ m_drawFlags = (m_drawFlags & ~(_arg1)); } 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 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 GetFlags():uint{ return (m_drawFlags); } public function DrawPolygon(_arg1:Array, _arg2:int, _arg3:b2Color):void{ var _local4:int; m_sprite.graphics.lineStyle(m_lineThickness, _arg3.color, m_alpha); m_sprite.graphics.moveTo((_arg1[0].x * m_drawScale), (_arg1[0].y * m_drawScale)); _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)); } } }//package Box2D.Dynamics
Section 71
//b2DestructionListener (Box2D.Dynamics.b2DestructionListener) package Box2D.Dynamics { import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; public class b2DestructionListener { public function SayGoodbyeJoint(_arg1:b2Joint):void{ } public function SayGoodbyeShape(_arg1:b2Shape):void{ } } }//package Box2D.Dynamics
Section 72
//b2Island (Box2D.Dynamics.b2Island) package Box2D.Dynamics { import Box2D.Common.*; import Box2D.Common.Math.*; import Box2D.Dynamics.Contacts.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.*; public class b2Island { public var m_joints:Array; public var m_listener:b2ContactListener; public var m_positionIterationCount:int; public var m_bodyCapacity:int; public var m_bodies: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)>0) ? _arg1 : 1); _local6 = 0; while (_local6 < _arg1) { m_bodies[_local6] = null; _local6++; }; m_contacts = new Array(((_arg2)>0) ? _arg2 : 1); _local6 = 0; while (_local6 < _arg2) { m_contacts[_local6] = null; _local6++; }; m_joints = new Array(((_arg3)>0) ? _arg3 : 1); _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 _local4:int; var _local5:b2Contact; var _local6:b2ContactConstraint; var _local7:b2ContactResult; var _local8:b2Body; var _local9:int; var _local10:Array; var _local11:int; var _local12:b2Manifold; var _local13:int; var _local14:b2ManifoldPoint; var _local15:b2ContactConstraintPoint; if (m_listener == null){ return; }; _local4 = 0; while (_local4 < m_contactCount) { _local5 = m_contacts[_local4]; _local6 = _arg1[_local4]; _local7 = s_reportCR; _local7.shape1 = _local5.m_shape1; _local7.shape2 = _local5.m_shape2; _local8 = _local7.shape1.m_body; _local9 = _local5.m_manifoldCount; _local10 = _local5.GetManifolds(); _local11 = 0; while (_local11 < _local9) { _local12 = _local10[_local11]; _local7.normal.SetV(_local12.normal); _local13 = 0; while (_local13 < _local12.pointCount) { _local14 = _local12.points[_local13]; _local15 = _local6.points[_local13]; _local7.position = _local8.GetWorldPoint(_local14.localPoint1); _local7.normalImpulse = _local15.normalImpulse; _local7.tangentImpulse = _local15.tangentImpulse; _local7.id.key = _local14.id.key; m_listener.Result(_local7); _local13++; }; _local11++; }; _local4++; }; } public function Solve(_arg1:b2TimeStep, _arg2:b2Vec2, _arg3:Boolean, _arg4:Boolean):void{ var _local5:int; var _local6:b2Body; var _local7:b2Joint; var _local8:b2ContactSolver; var _local9:int; var _local10:Boolean; var _local11:Boolean; var _local12:Boolean; var _local13:Number; var _local14:Number; var _local15:Number; _local5 = 0; while (_local5 < m_bodyCount) { _local6 = m_bodies[_local5]; if (_local6.IsStatic()){ } 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++; }; _local8 = 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]; _local6.m_flags = (_local6.m_flags | b2Body.e_sleepFlag); _local6.m_linearVelocity.SetZero(); _local6.m_angularVelocity = 0; _local5++; }; }; }; } public function AddContact(_arg1:b2Contact):void{ var _local2 = m_contactCount++; m_contacts[_local2] = _arg1; } public function Clear():void{ m_bodyCount = 0; m_contactCount = 0; m_jointCount = 0; } public function SolveTOI(_arg1:b2TimeStep):void{ var _local2:int; var _local3:b2ContactSolver; var _local4:Number; var _local5:b2Body; var _local6:Boolean; _local3 = new b2ContactSolver(_arg1, m_contacts, m_contactCount, m_allocator); _local2 = 0; while (_local2 < _arg1.maxIterations) { _local3.SolveVelocityConstraints(); _local2++; }; _local2 = 0; while (_local2 < m_bodyCount) { _local5 = m_bodies[_local2]; if (_local5.IsStatic()){ } 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++; }; _local4 = 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.Common.*; import Box2D.Collision.*; import Box2D.Collision.Shapes.*; import Box2D.Dynamics.Contacts.*; 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_raycastSegment:b2Segment; 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_raycastUserData; public var m_allowSleep:Boolean; public var m_positionIterationCount:int; public var m_groundBody:b2Body; public var m_contactCount:int; public var m_raycastNormal:b2Vec2; public var m_contactFilter:b2ContactFilter; public var m_bodyList:b2Body; public var m_debugDraw:b2DebugDraw; public var m_stackAllocator; public var m_jointList:b2Joint; public var m_gravity:b2Vec2; public var m_contactManager:b2ContactManager; private static var s_jointColor:b2Color = new b2Color(0.5, 0.8, 0.8); public static var m_continuousPhysics:Boolean; public static var m_warmStarting:Boolean; private static var s_coreColor:b2Color = new b2Color(0.9, 0.6, 0.6); public static var m_positionCorrection:Boolean; private static var s_xf:b2XForm = new b2XForm(); public function b2World(_arg1:b2AABB, _arg2:b2Vec2, _arg3:Boolean){ var _local4:b2BodyDef; m_raycastNormal = new b2Vec2(); m_contactManager = new b2ContactManager(); super(); m_destructionListener = null; m_boundaryListener = null; m_contactFilter = b2ContactFilter.b2_defaultFilter; m_contactListener = null; m_debugDraw = null; m_bodyList = null; m_contactList = null; m_jointList = null; m_bodyCount = 0; m_contactCount = 0; m_jointCount = 0; m_positionCorrection = true; m_warmStarting = true; m_continuousPhysics = true; m_allowSleep = _arg3; m_gravity = _arg2; m_lock = false; m_inv_dt0 = 0; m_contactManager.m_world = this; m_broadPhase = new b2BroadPhase(_arg1, m_contactManager); _local4 = new b2BodyDef(); m_groundBody = CreateBody(_local4); } public function DrawJoint(_arg1:b2Joint):void{ var _local2:b2Body; var _local3:b2Body; var _local4:b2XForm; var _local5:b2XForm; var _local6:b2Vec2; var _local7:b2Vec2; var _local8:b2Vec2; var _local9:b2Vec2; var _local10:b2Color; var _local11:b2PulleyJoint; var _local12:b2Vec2; var _local13:b2Vec2; _local2 = _arg1.m_body1; _local3 = _arg1.m_body2; _local4 = _local2.m_xf; _local5 = _local3.m_xf; _local6 = _local4.position; _local7 = _local5.position; _local8 = _arg1.GetAnchor1(); _local9 = _arg1.GetAnchor2(); _local10 = s_jointColor; switch (_arg1.m_type){ case b2Joint.e_distanceJoint: 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 _local1:uint; var _local2:int; var _local3:b2Body; var _local4:b2Shape; var _local5:b2Joint; var _local6:b2BroadPhase; var _local7:b2Vec2; var _local8:b2Vec2; var _local9:b2Vec2; var _local10:b2Color; var _local11:b2XForm; var _local12:b2AABB; var _local13:b2AABB; var _local14:Array; var _local15:Boolean; var _local16:uint; var _local17:b2Pair; var _local18:b2Proxy; var _local19:b2Proxy; var _local20:b2Vec2; var _local21:b2Vec2; var _local22:b2Proxy; var _local23:b2PolygonShape; var _local24:b2OBB; var _local25:b2Vec2; var _local26:b2Mat22; var _local27:b2Vec2; var _local28:Number; if (m_debugDraw == null){ return; }; m_debugDraw.m_sprite.graphics.clear(); _local1 = m_debugDraw.GetFlags(); _local7 = new b2Vec2(); _local8 = new b2Vec2(); _local9 = new b2Vec2(); _local10 = new b2Color(0, 0, 0); _local12 = new b2AABB(); _local13 = new b2AABB(); _local14 = [new b2Vec2(), new b2Vec2(), new b2Vec2(), new b2Vec2()]; if ((_local1 & b2DebugDraw.e_shapeBit)){ _local15 = ((_local1 & b2DebugDraw.e_coreShapeBit) == b2DebugDraw.e_coreShapeBit); _local3 = m_bodyList; while (_local3) { _local11 = _local3.m_xf; _local4 = _local3.GetShapeList(); while (_local4) { if (_local3.IsStatic()){ DrawShape(_local4, _local11, new b2Color(0.5, 0.9, 0.5), _local15); } else { if (_local3.IsSleeping()){ DrawShape(_local4, _local11, new b2Color(0.5, 0.5, 0.9), _local15); } else { DrawShape(_local4, _local11, new b2Color(0.9, 0.9, 0.9), _local15); }; }; _local4 = _local4.m_next; }; _local3 = _local3.m_next; }; }; if ((_local1 & b2DebugDraw.e_jointBit)){ _local5 = m_jointList; while (_local5) { DrawJoint(_local5); _local5 = _local5.m_next; }; }; if ((_local1 & b2DebugDraw.e_pairBit)){ _local6 = m_broadPhase; _local7.Set((1 / _local6.m_quantizationFactor.x), (1 / _local6.m_quantizationFactor.y)); _local10.Set(0.9, 0.9, 0.3); _local2 = 0; while (_local2 < b2Pair.b2_tableCapacity) { _local16 = _local6.m_pairManager.m_hashTable[_local2]; while (_local16 != b2Pair.b2_nullPair) { _local17 = _local6.m_pairManager.m_pairs[_local16]; _local18 = _local6.m_proxyPool[_local17.proxyId1]; _local19 = _local6.m_proxyPool[_local17.proxyId2]; _local12.lowerBound.x = (_local6.m_worldAABB.lowerBound.x + (_local7.x * _local6.m_bounds[0][_local18.lowerBounds[0]].value)); _local12.lowerBound.y = (_local6.m_worldAABB.lowerBound.y + (_local7.y * _local6.m_bounds[1][_local18.lowerBounds[1]].value)); _local12.upperBound.x = (_local6.m_worldAABB.lowerBound.x + (_local7.x * _local6.m_bounds[0][_local18.upperBounds[0]].value)); _local12.upperBound.y = (_local6.m_worldAABB.lowerBound.y + (_local7.y * _local6.m_bounds[1][_local18.upperBounds[1]].value)); _local13.lowerBound.x = (_local6.m_worldAABB.lowerBound.x + (_local7.x * _local6.m_bounds[0][_local19.lowerBounds[0]].value)); _local13.lowerBound.y = (_local6.m_worldAABB.lowerBound.y + (_local7.y * _local6.m_bounds[1][_local19.lowerBounds[1]].value)); _local13.upperBound.x = (_local6.m_worldAABB.lowerBound.x + (_local7.x * _local6.m_bounds[0][_local19.upperBounds[0]].value)); _local13.upperBound.y = (_local6.m_worldAABB.lowerBound.y + (_local7.y * _local6.m_bounds[1][_local19.upperBounds[1]].value)); _local8.x = (0.5 * (_local12.lowerBound.x + _local12.upperBound.x)); _local8.y = (0.5 * (_local12.lowerBound.y + _local12.upperBound.y)); _local9.x = (0.5 * (_local13.lowerBound.x + _local13.upperBound.x)); _local9.y = (0.5 * (_local13.lowerBound.y + _local13.upperBound.y)); m_debugDraw.DrawSegment(_local8, _local9, _local10); _local16 = _local17.next; }; _local2++; }; }; if ((_local1 & b2DebugDraw.e_aabbBit)){ _local6 = m_broadPhase; _local20 = _local6.m_worldAABB.lowerBound; _local21 = _local6.m_worldAABB.upperBound; _local7.Set((1 / _local6.m_quantizationFactor.x), (1 / _local6.m_quantizationFactor.y)); _local10.Set(0.9, 0.3, 0.9); _local2 = 0; while (_local2 < b2Settings.b2_maxProxies) { _local22 = _local6.m_proxyPool[_local2]; if (_local22.IsValid() == false){ } else { _local12.lowerBound.x = (_local20.x + (_local7.x * _local6.m_bounds[0][_local22.lowerBounds[0]].value)); _local12.lowerBound.y = (_local20.y + (_local7.y * _local6.m_bounds[1][_local22.lowerBounds[1]].value)); _local12.upperBound.x = (_local20.x + (_local7.x * _local6.m_bounds[0][_local22.upperBounds[0]].value)); _local12.upperBound.y = (_local20.y + (_local7.y * _local6.m_bounds[1][_local22.upperBounds[1]].value)); _local14[0].Set(_local12.lowerBound.x, _local12.lowerBound.y); _local14[1].Set(_local12.upperBound.x, _local12.lowerBound.y); _local14[2].Set(_local12.upperBound.x, _local12.upperBound.y); _local14[3].Set(_local12.lowerBound.x, _local12.upperBound.y); m_debugDraw.DrawPolygon(_local14, 4, _local10); }; _local2++; }; _local14[0].Set(_local20.x, _local20.y); _local14[1].Set(_local21.x, _local20.y); _local14[2].Set(_local21.x, _local21.y); _local14[3].Set(_local20.x, _local21.y); m_debugDraw.DrawPolygon(_local14, 4, new b2Color(0.3, 0.9, 0.9)); }; if ((_local1 & b2DebugDraw.e_obbBit)){ _local10.Set(0.5, 0.3, 0.5); _local3 = m_bodyList; while (_local3) { _local11 = _local3.m_xf; _local4 = _local3.GetShapeList(); while (_local4) { if (_local4.m_type != b2Shape.e_polygonShape){ } else { _local23 = (_local4 as b2PolygonShape); _local24 = _local23.GetOBB(); _local25 = _local24.extents; _local14[0].Set(-(_local25.x), -(_local25.y)); _local14[1].Set(_local25.x, -(_local25.y)); _local14[2].Set(_local25.x, _local25.y); _local14[3].Set(-(_local25.x), _local25.y); _local2 = 0; while (_local2 < 4) { _local26 = _local24.R; _local27 = _local14[_local2]; _local28 = (_local24.center.x + ((_local26.col1.x * _local27.x) + (_local26.col2.x * _local27.y))); _local14[_local2].y = (_local24.center.y + ((_local26.col1.y * _local27.x) + (_local26.col2.y * _local27.y))); _local14[_local2].x = _local28; _local26 = _local11.R; _local28 = (_local11.position.x + ((_local26.col1.x * _local27.x) + (_local26.col2.x * _local27.y))); _local14[_local2].y = (_local11.position.y + ((_local26.col1.y * _local27.x) + (_local26.col2.y * _local27.y))); _local14[_local2].x = _local28; _local2++; }; m_debugDraw.DrawPolygon(_local14, 4, _local10); }; _local4 = _local4.m_next; }; _local3 = _local3.m_next; }; }; if ((_local1 & b2DebugDraw.e_centerOfMassBit)){ _local3 = m_bodyList; while (_local3) { _local11 = s_xf; _local11.R = _local3.m_xf.R; _local11.position = _local3.GetWorldCenter(); m_debugDraw.DrawXForm(_local11); _local3 = _local3.m_next; }; }; } public function DestroyBody(_arg1:b2Body):void{ var _local2:b2JointEdge; var _local3:b2Shape; var _local4:b2JointEdge; var _local5:b2Shape; if (m_lock == true){ return; }; _local2 = _arg1.m_jointList; while (_local2) { _local4 = _local2; _local2 = _local2.next; if (m_destructionListener){ m_destructionListener.SayGoodbyeJoint(_local4.joint); }; DestroyJoint(_local4.joint); }; _local3 = _arg1.m_shapeList; while (_local3) { _local5 = _local3; _local3 = _local3.m_next; if (m_destructionListener){ m_destructionListener.SayGoodbyeShape(_local5); }; _local5.DestroyProxy(m_broadPhase); b2Shape.Destroy(_local5, m_blockAllocator); }; if (_arg1.m_prev){ _arg1.m_prev.m_next = _arg1.m_next; }; if (_arg1.m_next){ _arg1.m_next.m_prev = _arg1.m_prev; }; if (_arg1 == m_bodyList){ m_bodyList = _arg1.m_next; }; m_bodyCount--; } public function DrawShape(_arg1:b2Shape, _arg2:b2XForm, _arg3:b2Color, _arg4:Boolean):void{ var _local5:b2Color; var _local6:b2CircleShape; var _local7:b2Vec2; var _local8:Number; var _local9:b2Vec2; var _local10:int; var _local11:b2PolygonShape; var _local12:int; var _local13:Array; var _local14:Array; var _local15:Array; _local5 = s_coreColor; switch (_arg1.m_type){ case b2Shape.e_circleShape: _local6 = (_arg1 as b2CircleShape); _local7 = b2Math.b2MulX(_arg2, _local6.m_localPosition); _local8 = _local6.m_radius; _local9 = _arg2.R.col1; m_debugDraw.DrawSolidCircle(_local7, _local8, _local9, _arg3); if (_arg4){ m_debugDraw.DrawCircle(_local7, (_local8 - b2Settings.b2_toiSlop), _local5); }; break; case b2Shape.e_polygonShape: _local11 = (_arg1 as b2PolygonShape); _local12 = _local11.GetVertexCount(); _local13 = _local11.GetVertices(); _local14 = new Array(b2Settings.b2_maxPolygonVertices); _local10 = 0; while (_local10 < _local12) { _local14[_local10] = b2Math.b2MulX(_arg2, _local13[_local10]); _local10++; }; m_debugDraw.DrawSolidPolygon(_local14, _local12, _arg3); if (_arg4){ _local15 = _local11.GetCoreVertices(); _local10 = 0; while (_local10 < _local12) { _local14[_local10] = b2Math.b2MulX(_arg2, _local15[_local10]); _local10++; }; m_debugDraw.DrawPolygon(_local14, _local12, _local5); }; break; }; } public function GetGroundBody():b2Body{ return (m_groundBody); } public function SetContactFilter(_arg1:b2ContactFilter):void{ m_contactFilter = _arg1; } public function Solve(_arg1:b2TimeStep):void{ var _local2:b2Body; var _local3:b2Island; var _local4:b2Contact; var _local5:b2Joint; var _local6:int; var _local7:Array; var _local8:b2Body; var _local9:int; var _local10:int; var _local11:b2Body; var _local12:b2ContactEdge; var _local13:b2JointEdge; var _local14:Boolean; m_positionIterationCount = 0; _local3 = new b2Island(m_bodyCount, m_contactCount, m_jointCount, m_stackAllocator, m_contactListener); _local2 = m_bodyList; while (_local2) { _local2.m_flags = (_local2.m_flags & ~(b2Body.e_islandFlag)); _local2 = _local2.m_next; }; _local4 = m_contactList; while (_local4) { _local4.m_flags = (_local4.m_flags & ~(b2Contact.e_islandFlag)); _local4 = _local4.m_next; }; _local5 = m_jointList; while (_local5) { _local5.m_islandFlag = false; _local5 = _local5.m_next; }; _local6 = m_bodyCount; _local7 = new Array(((_local6)>0) ? _local6 : 1); _local8 = 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; var _local5:int; var _local6:int; _local4 = new Array(_arg3); _local5 = m_broadPhase.QueryAABB(_arg1, _local4, _arg3); _local6 = 0; while (_local6 < _local5) { _arg2[_local6] = _local4[_local6]; _local6++; }; return (_local5); } public function GetContactCount():int{ return (m_contactCount); } public function SolveTOI(_arg1:b2TimeStep):void{ var _local2:b2Body; var _local3:b2Shape; var _local4:b2Shape; var _local5:b2Body; var _local6:b2Body; var _local7:b2ContactEdge; var _local8:b2Island; var _local9:int; var _local10:Array; var _local11:b2Contact; var _local12:b2Contact; var _local13:Number; var _local14:b2Body; var _local15:int; var _local16:b2TimeStep; var _local17:int; var _local18:Number; var _local19:Number; var _local20:b2Body; var _local21:Boolean; _local8 = new b2Island(m_bodyCount, b2Settings.b2_maxTOIContactsPerIsland, 0, m_stackAllocator, m_contactListener); _local9 = m_bodyCount; _local10 = new Array(((_local9)>0) ? _local9 : 1); _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]; _local11.m_flags = (_local11.m_flags & ~((b2Contact.e_toiFlag | b2Contact.e_islandFlag))); _local17++; }; m_broadPhase.Commit(); }; }; } public function GetJointList():b2Joint{ return (m_jointList); } public function SetGravity(_arg1:b2Vec2):void{ m_gravity = _arg1; } public function Validate():void{ m_broadPhase.Validate(); } public function GetPairCount():int{ return (m_broadPhase.m_pairManager.m_pairCount); } public function GetBodyList():b2Body{ return (m_bodyList); } public function SetWarmStarting(_arg1:Boolean):void{ m_warmStarting = _arg1; } public function SetPositionCorrection(_arg1:Boolean):void{ m_positionCorrection = _arg1; } public function CreateJoint(_arg1:b2JointDef):b2Joint{ var _local2:b2Joint; var _local3:b2Body; var _local4:b2Shape; _local2 = b2Joint.Create(_arg1, m_blockAllocator); _local2.m_prev = null; _local2.m_next = m_jointList; if (m_jointList){ m_jointList.m_prev = _local2; }; m_jointList = _local2; m_jointCount++; _local2.m_node1.joint = _local2; _local2.m_node1.other = _local2.m_body2; _local2.m_node1.prev = null; _local2.m_node1.next = _local2.m_body1.m_jointList; if (_local2.m_body1.m_jointList){ _local2.m_body1.m_jointList.prev = _local2.m_node1; }; _local2.m_body1.m_jointList = _local2.m_node1; _local2.m_node2.joint = _local2; _local2.m_node2.other = _local2.m_body1; _local2.m_node2.prev = null; _local2.m_node2.next = _local2.m_body2.m_jointList; if (_local2.m_body2.m_jointList){ _local2.m_body2.m_jointList.prev = _local2.m_node2; }; _local2.m_body2.m_jointList = _local2.m_node2; if (_arg1.collideConnected == false){ _local3 = ((_arg1.body1.m_shapeCount < _arg1.body2.m_shapeCount)) ? _arg1.body1 : _arg1.body2; _local4 = _local3.m_shapeList; while (_local4) { _local4.RefilterProxy(m_broadPhase, _local3.m_xf); _local4 = _local4.m_next; }; }; return (_local2); } public function DestroyJoint(_arg1:b2Joint):void{ var _local2:Boolean; var _local3:b2Body; var _local4:b2Body; var _local5:b2Body; var _local6:b2Shape; _local2 = _arg1.m_collideConnected; if (_arg1.m_prev){ _arg1.m_prev.m_next = _arg1.m_next; }; if (_arg1.m_next){ _arg1.m_next.m_prev = _arg1.m_prev; }; if (_arg1 == m_jointList){ m_jointList = _arg1.m_next; }; _local3 = _arg1.m_body1; _local4 = _arg1.m_body2; _local3.WakeUp(); _local4.WakeUp(); if (_arg1.m_node1.prev){ _arg1.m_node1.prev.next = _arg1.m_node1.next; }; if (_arg1.m_node1.next){ _arg1.m_node1.next.prev = _arg1.m_node1.prev; }; if (_arg1.m_node1 == _local3.m_jointList){ _local3.m_jointList = _arg1.m_node1.next; }; _arg1.m_node1.prev = null; _arg1.m_node1.next = null; if (_arg1.m_node2.prev){ _arg1.m_node2.prev.next = _arg1.m_node2.next; }; if (_arg1.m_node2.next){ _arg1.m_node2.next.prev = _arg1.m_node2.prev; }; if (_arg1.m_node2 == _local4.m_jointList){ _local4.m_jointList = _arg1.m_node2.next; }; _arg1.m_node2.prev = null; _arg1.m_node2.next = null; b2Joint.Destroy(_arg1, m_blockAllocator); m_jointCount--; if (_local2 == false){ _local5 = ((_local3.m_shapeCount < _local4.m_shapeCount)) ? _local3 : _local4; _local6 = _local5.m_shapeList; while (_local6) { _local6.RefilterProxy(m_broadPhase, _local5.m_xf); _local6 = _local6.m_next; }; }; } public function SetContactListener(_arg1:b2ContactListener):void{ m_contactListener = _arg1; } public function Raycast(_arg1:b2Segment, _arg2:Array, _arg3:int, _arg4:Boolean, _arg5):int{ var _local6:Array; var _local7:int; var _local8:int; _local6 = new Array(_arg3); m_raycastSegment = _arg1; m_raycastUserData = _arg5; if (_arg4){ _local7 = m_broadPhase.QuerySegment(_arg1, _local6, _arg3, RaycastSortKey); } else { _local7 = m_broadPhase.QuerySegment(_arg1, _local6, _arg3, RaycastSortKey2); }; _local8 = 0; while (_local8 < _local7) { _arg2[_local8] = _local6[_local8]; _local8++; }; return (_local7); } public function RaycastSortKey2(_arg1:b2Shape){ var _local2:b2Body; var _local3:b2XForm; var _local4:Array; if (((m_contactFilter) && (!(m_contactFilter.RayCollide(m_raycastUserData, _arg1))))){ return (-1); }; _local2 = _arg1.GetBody(); _local3 = _local2.GetXForm(); _local4 = [0]; if (_arg1.TestSegment(_local3, _local4, m_raycastNormal, m_raycastSegment, 1) != b2Shape.e_hitCollide){ return (-1); }; return (_local4[0]); } public function RaycastOne(_arg1:b2Segment, _arg2:Array, _arg3:b2Vec2, _arg4:Boolean, _arg5):b2Shape{ var _local6:Array; var _local7:Number; var _local8:b2Shape; var _local9:b2XForm; _local6 = new Array(1); _local7 = Raycast(_arg1, _local6, 1, _arg4, _arg5); if (_local7 == 0){ return (null); }; if (_local7 > 1){ trace(_local7); }; _local8 = _local6[0]; _local9 = _local8.GetBody().GetXForm(); _local8.TestSegment(_local9, _arg2, _arg3, _arg1, 1); return (_local8); } public function CreateBody(_arg1:b2BodyDef):b2Body{ var _local2:b2Body; if (m_lock == true){ return (null); }; _local2 = new b2Body(_arg1, this); _local2.m_prev = null; _local2.m_next = m_bodyList; if (m_bodyList){ m_bodyList.m_prev = _local2; }; m_bodyList = _local2; m_bodyCount++; return (_local2); } public function RaycastSortKey(_arg1:b2Shape){ var _local2:b2Body; var _local3:b2XForm; var _local4:Array; if (((m_contactFilter) && (!(m_contactFilter.RayCollide(m_raycastUserData, _arg1))))){ return (-1); }; _local2 = _arg1.GetBody(); _local3 = _local2.GetXForm(); _local4 = [0]; if (_arg1.TestSegment(_local3, _local4, m_raycastNormal, m_raycastSegment, 1) == b2Shape.e_missCollide){ return (-1); }; return (_local4[0]); } public function SetBoundaryListener(_arg1:b2BoundaryListener):void{ m_boundaryListener = _arg1; } public function SetDestructionListener(_arg1:b2DestructionListener):void{ m_destructionListener = _arg1; } public function Step(_arg1:Number, _arg2:int):void{ var _local3:b2TimeStep; m_lock = true; _local3 = new b2TimeStep(); _local3.dt = _arg1; _local3.maxIterations = _arg2; if (_arg1 > 0){ _local3.inv_dt = (1 / _arg1); } else { _local3.inv_dt = 0; }; _local3.dtRatio = (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
//PropTween (com.greensock.core.PropTween) package com.greensock.core { public class PropTween { public var start:Number; public var name:String; public var prevNode:PropTween; public var change:Number; public var target:Object; public var priority:int; public var property:String; public var nextNode:PropTween; public var isPlugin:Boolean; public function PropTween(_arg1:Object, _arg2:String, _arg3:Number, _arg4:Number, _arg5:String, _arg6:Boolean, _arg7:PropTween=null, _arg8:int=0){ this.target = _arg1; this.property = _arg2; this.start = _arg3; this.change = _arg4; this.name = _arg5; this.isPlugin = _arg6; if (_arg7){ _arg7.prevNode = this; this.nextNode = _arg7; }; this.priority = _arg8; } } }//package com.greensock.core
Section 76
//SimpleTimeline (com.greensock.core.SimpleTimeline) package com.greensock.core { public class SimpleTimeline extends TweenCore { public var autoRemoveChildren:Boolean; protected var _lastChild:TweenCore; protected var _firstChild:TweenCore; public function SimpleTimeline(_arg1:Object=null){ super(0, _arg1); } override public function renderTime(_arg1:Number, _arg2:Boolean=false, _arg3:Boolean=false):void{ var _local4:TweenCore; var _local5:Number; var _local6:TweenCore; _local4 = _firstChild; this.cachedTotalTime = _arg1; this.cachedTime = _arg1; while (_local4) { _local6 = _local4.nextNode; if (((_local4.active) || ((((((_arg1 >= _local4.cachedStartTime)) && (!(_local4.cachedPaused)))) && (!(_local4.gc)))))){ if (!(_local4.cachedReversed)){ _local4.renderTime(((_arg1 - _local4.cachedStartTime) * _local4.cachedTimeScale), _arg2, false); } else { _local5 = (_local4.cacheIsDirty) ? _local4.totalDuration : _local4.cachedTotalDuration; _local4.renderTime((_local5 - ((_arg1 - _local4.cachedStartTime) * _local4.cachedTimeScale)), _arg2, false); }; }; _local4 = _local6; }; } public function addChild(_arg1:TweenCore):void{ if (((!(_arg1.gc)) && (_arg1.timeline))){ _arg1.timeline.remove(_arg1, true); }; _arg1.timeline = this; if (_arg1.gc){ _arg1.setEnabled(true, true); }; if (_firstChild){ _firstChild.prevNode = _arg1; }; _arg1.nextNode = _firstChild; _firstChild = _arg1; _arg1.prevNode = null; } public function get rawTime():Number{ return (this.cachedTotalTime); } public function remove(_arg1:TweenCore, _arg2:Boolean=false):void{ if (_arg1.gc){ return; }; if (!(_arg2)){ _arg1.setEnabled(false, true); }; if (_arg1.nextNode){ _arg1.nextNode.prevNode = _arg1.prevNode; } else { if (_lastChild == _arg1){ _lastChild = _arg1.prevNode; }; }; if (_arg1.prevNode){ _arg1.prevNode.nextNode = _arg1.nextNode; } else { if (_firstChild == _arg1){ _firstChild = _arg1.nextNode; }; }; } } }//package com.greensock.core
Section 77
//TweenCore (com.greensock.core.TweenCore) package com.greensock.core { import com.greensock.*; public class TweenCore { public var initted:Boolean; protected var _hasUpdate:Boolean; public var active:Boolean; protected var _delay:Number; public var cachedReversed:Boolean; public var nextNode:TweenCore; public var cachedTime:Number; protected var _rawPrevTime:Number;// = -1 public var vars:Object; public var cachedTotalTime:Number; public var data; public var timeline:SimpleTimeline; public var cachedStartTime:Number; public var prevNode:TweenCore; public var cachedDuration:Number; public var gc:Boolean; protected var _pauseTime:Number; public var cacheIsDirty:Boolean; public var cachedPaused:Boolean; public var cachedTimeScale:Number; public var cachedTotalDuration:Number; public static const version:Number = 1.13; protected static var _classInitted:Boolean; public function TweenCore(_arg1:Number=0, _arg2:Object=null){ var _local3:SimpleTimeline; _rawPrevTime = -1; super(); this.vars = ((_arg2) || ({})); this.cachedDuration = (this.cachedTotalDuration = ((_arg1) || (0))); _delay = ((this.vars.delay) || (0)); this.cachedTimeScale = ((this.vars.timeScale) || (1)); this.active = Boolean((((((_arg1 == 0)) && ((_delay == 0)))) && (!((this.vars.immediateRender == false))))); this.cachedTotalTime = (this.cachedTime = 0); this.data = this.vars.data; if (!(_classInitted)){ if (isNaN(TweenLite.rootFrame)){ TweenLite.initClass(); _classInitted = true; } else { return; }; }; _local3 = ((this.vars.timeline is SimpleTimeline)) ? this.vars.timeline : (this.vars.useFrames) ? TweenLite.rootFramesTimeline : TweenLite.rootTimeline; this.cachedStartTime = (_local3.cachedTotalTime + _delay); _local3.addChild(this); if (this.vars.reversed){ this.cachedReversed = true; }; if (this.vars.paused){ this.paused = true; }; } public function renderTime(_arg1:Number, _arg2:Boolean=false, _arg3:Boolean=false):void{ } public function get delay():Number{ return (_delay); } public function get duration():Number{ return (this.cachedDuration); } public function set reversed(_arg1:Boolean):void{ if (_arg1 != this.cachedReversed){ this.cachedReversed = _arg1; setTotalTime(this.cachedTotalTime, true); }; } public function set startTime(_arg1:Number):void{ var _local2:Boolean; _local2 = Boolean(((!((this.timeline == null))) && (((!((_arg1 == this.cachedStartTime))) || (this.gc))))); this.cachedStartTime = _arg1; if (_local2){ this.timeline.addChild(this); }; } public function set delay(_arg1:Number):void{ this.startTime = (this.startTime + (_arg1 - _delay)); _delay = _arg1; } public function resume():void{ this.paused = false; } public function get paused():Boolean{ return (this.cachedPaused); } public function play():void{ this.reversed = false; this.paused = false; } public function set duration(_arg1:Number):void{ this.cachedDuration = (this.cachedTotalDuration = _arg1); setDirtyCache(false); } public function invalidate():void{ } public function restart(_arg1:Boolean=false, _arg2:Boolean=true):void{ this.reversed = false; this.paused = false; this.setTotalTime((_arg1) ? -(_delay) : 0, _arg2); } public function complete(_arg1:Boolean=false, _arg2:Boolean=false):void{ if (!(_arg1)){ renderTime(this.cachedTotalDuration, _arg2, false); return; }; if (this.timeline.autoRemoveChildren){ this.setEnabled(false, false); } else { this.active = false; }; if (!(_arg2)){ if (((((this.vars.onComplete) && ((this.cachedTotalTime == this.cachedTotalDuration)))) && (!(this.cachedReversed)))){ this.vars.onComplete.apply(null, this.vars.onCompleteParams); } else { if (((((this.cachedReversed) && ((this.cachedTotalTime == 0)))) && (this.vars.onReverseComplete))){ this.vars.onReverseComplete.apply(null, this.vars.onReverseCompleteParams); }; }; }; } public function get reversed():Boolean{ return (this.cachedReversed); } public function get totalTime():Number{ return (this.cachedTotalTime); } public function get startTime():Number{ return (this.cachedStartTime); } public function set currentTime(_arg1:Number):void{ setTotalTime(_arg1, false); } protected function setDirtyCache(_arg1:Boolean=true):void{ var _local2:TweenCore; _local2 = (_arg1) ? this : this.timeline; while (_local2) { _local2.cacheIsDirty = true; _local2 = _local2.timeline; }; } public function reverse(_arg1:Boolean=true):void{ this.reversed = true; if (_arg1){ this.paused = false; } else { if (this.gc){ this.setEnabled(true, false); }; }; } public function set paused(_arg1:Boolean):void{ if (((!((_arg1 == this.cachedPaused))) && (this.timeline))){ if (_arg1){ _pauseTime = this.timeline.rawTime; } else { this.cachedStartTime = (this.cachedStartTime + (this.timeline.rawTime - _pauseTime)); _pauseTime = NaN; setDirtyCache(false); }; this.cachedPaused = _arg1; this.active = Boolean(((((!(this.cachedPaused)) && ((this.cachedTotalTime > 0)))) && ((this.cachedTotalTime < this.cachedTotalDuration)))); }; if (((!(_arg1)) && (this.gc))){ this.setTotalTime(this.cachedTotalTime, false); this.setEnabled(true, false); }; } public function kill():void{ setEnabled(false, false); } public function set totalTime(_arg1:Number):void{ setTotalTime(_arg1, false); } public function get currentTime():Number{ return (this.cachedTime); } protected function setTotalTime(_arg1:Number, _arg2:Boolean=false):void{ var _local3:Number; var _local4:Number; if (this.timeline){ _local3 = (((_pauseTime) || ((_pauseTime == 0)))) ? _pauseTime : this.timeline.cachedTotalTime; if (this.cachedReversed){ _local4 = (this.cacheIsDirty) ? this.totalDuration : this.cachedTotalDuration; this.cachedStartTime = (_local3 - ((_local4 - _arg1) / this.cachedTimeScale)); } else { this.cachedStartTime = (_local3 - (_arg1 / this.cachedTimeScale)); }; if (!(this.timeline.cacheIsDirty)){ setDirtyCache(false); }; if (this.cachedTotalTime != _arg1){ renderTime(_arg1, _arg2, false); }; }; } public function pause():void{ this.paused = true; } public function set totalDuration(_arg1:Number):void{ this.duration = _arg1; } public function get totalDuration():Number{ return (this.cachedTotalDuration); } public function setEnabled(_arg1:Boolean, _arg2:Boolean=false):Boolean{ if (_arg1){ this.active = Boolean(((((!(this.cachedPaused)) && ((this.cachedTotalTime > 0)))) && ((this.cachedTotalTime < this.cachedTotalDuration)))); if (((!(_arg2)) && (this.gc))){ this.timeline.addChild(this); }; } else { this.active = false; if (!(_arg2)){ this.timeline.remove(this, true); }; }; this.gc = !(_arg1); return (false); } } }//package com.greensock.core
Section 78
//TweenLite (com.greensock.TweenLite) package com.greensock { import com.greensock.core.*; import flash.display.*; import flash.events.*; import flash.utils.*; public class TweenLite extends TweenCore { public var target:Object; protected var _overwrite:uint; public var ratio:Number;// = 0 protected var _notifyPluginsOfEnabled:Boolean; protected var _hasPlugins:Boolean; public var cachedPT1:PropTween; protected var _overwrittenProps:Object; public var propTweenLookup:Object; protected var _ease:Function; public static const version:Number = 11.133; public static var rootTimeline:SimpleTimeline; public static var fastEaseLookup:Dictionary = new Dictionary(false); public static var onPluginEvent:Function; public static var rootFramesTimeline:SimpleTimeline; public static var defaultEase:Function = TweenLite.easeOut; public static var plugins:Object = {}; public static var masterList:Dictionary = new Dictionary(false); public static var overwriteManager:Object; public static var rootFrame:Number; public static var killDelayedCallsTo:Function = TweenLite.killTweensOf; private static var _shape:Shape = new Shape(); protected static var _reservedProps:Object = {ease:1, delay:1, overwrite:1, onComplete:1, onCompleteParams:1, useFrames:1, runBackwards:1, startAt:1, onUpdate:1, onUpdateParams:1, roundProps:1, onStart:1, onStartParams:1, onReverseComplete:1, onReverseCompleteParams:1, onRepeat:1, onRepeatParams:1, proxiedEase:1, easeParams:1, yoyo:1, onCompleteListener:1, onUpdateListener:1, onStartListener:1, onReverseCompleteListener:1, onRepeatListener:1, orientToBezier:1, timeScale:1, immediateRender:1, repeat:1, repeatDelay:1, timeline:1, data:1, paused:1}; public function TweenLite(_arg1:Object, _arg2:Number, _arg3:Object){ var _local4:Array; var _local5:TweenLite; ratio = 0; super(_arg2, _arg3); this.target = _arg1; if ((((this.target is TweenCore)) && (("timeScale" in this.vars)))){ this.cachedTimeScale = 1; }; propTweenLookup = {}; _ease = defaultEase; _overwrite = (((!((Number(_arg3.overwrite) > -1))) || (((!(overwriteManager.enabled)) && ((_arg3.overwrite > 1)))))) ? overwriteManager.mode : int(_arg3.overwrite); _local4 = masterList[_arg1]; if (!(_local4)){ masterList[_arg1] = [this]; } else { if (_overwrite == 1){ for each (_local5 in _local4) { if (!(_local5.gc)){ _local5.setEnabled(false, false); }; }; masterList[_arg1] = [this]; } else { _local4[_local4.length] = this; }; }; if (((this.active) || (this.vars.immediateRender))){ renderTime(0, false, true); }; } override public function renderTime(_arg1:Number, _arg2:Boolean=false, _arg3:Boolean=false):void{ var _local4:Boolean; var _local5:Number; var _local6:PropTween; _local5 = this.cachedTime; if (_arg1 >= this.cachedDuration){ this.cachedTotalTime = (this.cachedTime = this.cachedDuration); this.ratio = 1; _local4 = true; if (this.cachedDuration == 0){ if ((((((_arg1 == 0)) || ((_rawPrevTime < 0)))) && (!((_rawPrevTime == _arg1))))){ _arg3 = true; }; _rawPrevTime = _arg1; }; } else { if (_arg1 <= 0){ this.cachedTotalTime = (this.cachedTime = (this.ratio = 0)); if (_arg1 < 0){ this.active = false; if (this.cachedDuration == 0){ if (_rawPrevTime > 0){ _arg3 = true; _local4 = true; }; _rawPrevTime = _arg1; }; }; if (((this.cachedReversed) && (!((_local5 == 0))))){ _local4 = true; }; } else { this.cachedTotalTime = (this.cachedTime = _arg1); this.ratio = _ease(_arg1, 0, 1, this.cachedDuration); }; }; if ((((this.cachedTime == _local5)) && (!(_arg3)))){ return; }; if (!(this.initted)){ init(); if (((!(_local4)) && (this.cachedTime))){ this.ratio = _ease(this.cachedTime, 0, 1, this.cachedDuration); }; }; if (((!(this.active)) && (!(this.cachedPaused)))){ this.active = true; }; if ((((((((_local5 == 0)) && (this.vars.onStart))) && (!((this.cachedTime == 0))))) && (!(_arg2)))){ this.vars.onStart.apply(null, this.vars.onStartParams); }; _local6 = this.cachedPT1; while (_local6) { _local6.target[_local6.property] = (_local6.start + (this.ratio * _local6.change)); _local6 = _local6.nextNode; }; if (((_hasUpdate) && (!(_arg2)))){ this.vars.onUpdate.apply(null, this.vars.onUpdateParams); }; if (_local4){ if (((_hasPlugins) && (this.cachedPT1))){ onPluginEvent("onComplete", this); }; complete(true, _arg2); }; } protected function init():void{ var _local1:String; var _local2:int; var _local3:*; var _local4:Boolean; var _local5:Array; var _local6:PropTween; if (typeof(this.vars.ease) == "function"){ _ease = this.vars.ease; }; if (this.vars.easeParams){ this.vars.proxiedEase = _ease; _ease = easeProxy; }; this.cachedPT1 = null; this.propTweenLookup = {}; for (_local1 in this.vars) { if ((((_local1 in _reservedProps)) && (!((((_local1 == "timeScale")) && ((this.target is TweenCore))))))){ } else { if ((((_local1 in plugins)) && (new ((plugins[_local1] as Class)).onInitTween(this.target, this.vars[_local1], this)))){ this.cachedPT1 = new PropTween(_local3, "changeFactor", 0, 1, ((_local3.overwriteProps.length)==1) ? _local3.overwriteProps[0] : "_MULTIPLE_", true, this.cachedPT1); if (this.cachedPT1.name == "_MULTIPLE_"){ _local2 = _local3.overwriteProps.length; while (_local2--) { this.propTweenLookup[_local3.overwriteProps[_local2]] = this.cachedPT1; }; } else { this.propTweenLookup[this.cachedPT1.name] = this.cachedPT1; }; if (_local3.priority){ this.cachedPT1.priority = _local3.priority; _local4 = true; }; if (((_local3.onDisable) || (_local3.onEnable))){ _notifyPluginsOfEnabled = true; }; _hasPlugins = true; } else { this.cachedPT1 = new PropTween(this.target, _local1, Number(this.target[_local1]), ((typeof(this.vars[_local1]))=="number") ? (Number(this.vars[_local1]) - this.target[_local1]) : Number(this.vars[_local1]), _local1, false, this.cachedPT1); this.propTweenLookup[_local1] = this.cachedPT1; }; }; }; if (_local4){ onPluginEvent("onInit", this); }; if (this.vars.runBackwards){ _local6 = this.cachedPT1; while (_local6) { _local6.start = (_local6.start + _local6.change); _local6.change = -(_local6.change); _local6 = _local6.nextNode; }; }; _hasUpdate = Boolean(!((this.vars.onUpdate == null))); if (_overwrittenProps){ killVars(_overwrittenProps); if (this.cachedPT1 == null){ this.setEnabled(false, false); }; }; if ((((((((_overwrite > 1)) && (this.cachedPT1))) && (masterList[this.target]))) && ((_local5.length > 1)))){ if (overwriteManager.manageOverwrites(this, this.propTweenLookup, _local5, _overwrite)){ init(); }; }; this.initted = true; } protected function easeProxy(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (this.vars.proxiedEase.apply(null, arguments.concat(this.vars.easeParams))); } override public function invalidate():void{ if (((_notifyPluginsOfEnabled) && (this.cachedPT1))){ onPluginEvent("onDisable", this); }; this.cachedPT1 = null; _overwrittenProps = null; _hasUpdate = (this.initted = (this.active = (_notifyPluginsOfEnabled = false))); this.propTweenLookup = {}; } public function killVars(_arg1:Object, _arg2:Boolean=true):Boolean{ var _local3:String; var _local4:PropTween; var _local5:Boolean; if (_overwrittenProps == null){ _overwrittenProps = {}; }; for (_local3 in _arg1) { if ((_local3 in propTweenLookup)){ _local4 = propTweenLookup[_local3]; if (((_local4.isPlugin) && ((_local4.name == "_MULTIPLE_")))){ _local4.target.killProps(_arg1); if (_local4.target.overwriteProps.length == 0){ _local4.name = ""; }; }; if (_local4.name != "_MULTIPLE_"){ if (_local4.nextNode){ _local4.nextNode.prevNode = _local4.prevNode; }; if (_local4.prevNode){ _local4.prevNode.nextNode = _local4.nextNode; } else { if (this.cachedPT1 == _local4){ this.cachedPT1 = _local4.nextNode; }; }; if (((_local4.isPlugin) && (_local4.target.onDisable))){ _local4.target.onDisable(); if (_local4.target.activeDisable){ _local5 = true; }; }; delete propTweenLookup[_local3]; }; }; if (_arg2){ _overwrittenProps[_local3] = 1; }; }; return (_local5); } override public function setEnabled(_arg1:Boolean, _arg2:Boolean=false):Boolean{ var _local3:Array; if (_arg1){ _local3 = TweenLite.masterList[this.target]; if (!(_local3)){ TweenLite.masterList[this.target] = [this]; } else { _local3[_local3.length] = this; }; }; super.setEnabled(_arg1, _arg2); if (((_notifyPluginsOfEnabled) && (this.cachedPT1))){ return (onPluginEvent((_arg1) ? "onEnable" : "onDisable", this)); }; return (false); } public static function initClass():void{ rootFrame = 0; rootTimeline = new SimpleTimeline(null); rootFramesTimeline = new SimpleTimeline(null); rootTimeline.cachedStartTime = (getTimer() * 0.001); rootFramesTimeline.cachedStartTime = rootFrame; rootTimeline.autoRemoveChildren = true; rootFramesTimeline.autoRemoveChildren = true; _shape.addEventListener(Event.ENTER_FRAME, updateAll, false, 0, true); if (overwriteManager == null){ overwriteManager = {mode:1, enabled:false}; }; } public static function killTweensOf(_arg1:Object, _arg2:Boolean=false):void{ var _local3:Array; var _local4:int; if ((_arg1 in masterList)){ _local3 = masterList[_arg1]; _local4 = _local3.length; while (_local4--) { if (!(TweenLite(_local3[_local4]).gc)){ if (_arg2){ TweenLite(_local3[_local4]).complete(false, false); } else { TweenLite(_local3[_local4]).setEnabled(false, false); }; }; }; delete masterList[_arg1]; }; } public static function from(_arg1:Object, _arg2:Number, _arg3:Object):TweenLite{ _arg3.runBackwards = true; if (!(("immediateRender" in _arg3))){ _arg3.immediateRender = true; }; return (new TweenLite(_arg1, _arg2, _arg3)); } protected static function easeOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = (1 - (_arg1 / _arg4)); return ((1 - (_arg1 * _arg1))); } public static function delayedCall(_arg1:Number, _arg2:Function, _arg3:Array=null, _arg4:Boolean=false):TweenLite{ return (new TweenLite(_arg2, 0, {delay:_arg1, onComplete:_arg2, onCompleteParams:_arg3, immediateRender:false, useFrames:_arg4, overwrite:0})); } protected static function updateAll(_arg1:Event=null):void{ var _local2:Dictionary; var _local3:Object; var _local4:Array; var _local5:int; rootTimeline.renderTime((((getTimer() * 0.001) - rootTimeline.cachedStartTime) * rootTimeline.cachedTimeScale), false, false); rootFrame++; rootFramesTimeline.renderTime(((rootFrame - rootFramesTimeline.cachedStartTime) * rootFramesTimeline.cachedTimeScale), false, false); if (!((rootFrame % 60))){ _local2 = masterList; for (_local3 in _local2) { _local4 = _local2[_local3]; _local5 = _local4.length; while (_local5--) { if (TweenLite(_local4[_local5]).gc){ _local4.splice(_local5, 1); }; }; if (_local4.length == 0){ delete _local2[_local3]; }; }; }; } public static function to(_arg1:Object, _arg2:Number, _arg3:Object):TweenLite{ return (new TweenLite(_arg1, _arg2, _arg3)); } } }//package com.greensock
Section 79
//CanvasEvent (com.nocircleno.graffiti.events.CanvasEvent) package com.nocircleno.graffiti.events { import flash.geom.*; import flash.events.*; public class CanvasEvent extends Event { private var _canvasWidth:uint; private var _viewableRect:Rectangle; private var _canvasZoom:Number; private var _canvasHeight:uint; public static const ZOOM:String = "zoom"; public static const DRAG:String = "drag"; public function CanvasEvent(_arg1:String, _arg2:Number, _arg3:uint, _arg4:uint, _arg5:Rectangle, _arg6:Boolean=false, _arg7:Boolean=false){ super(_arg1, _arg6, _arg7); _canvasZoom = _arg2; _canvasWidth = _arg3; _canvasHeight = _arg4; _viewableRect = _arg5; } public function get viewableRect():Rectangle{ return (_viewableRect); } public function get canvasWidth():uint{ return (_canvasWidth); } public function get zoom():Number{ return (_canvasZoom); } public function get canvasHeight():uint{ return (_canvasHeight); } } }//package com.nocircleno.graffiti.events
Section 80
//Brush (com.nocircleno.graffiti.tools.Brush) package com.nocircleno.graffiti.tools { import flash.display.*; import flash.geom.*; public class Brush implements ITool { private const RENDER_TYPE:String = "continuous"; private const abs:Function; private const atan2:Function; private var _mode:String; private var _type:String; private var _fourthSize:Number; private var _size:Number; private var _halfSize:Number; private var _eighthSize:Number; private var _color:uint; public function Brush(_arg1:Number=4, _arg2:uint=0, _arg3:String=null, _arg4:String=null){ atan2 = Math.atan2; abs = Math.abs; super(); size = _arg1; color = _arg2; type = _arg3; mode = _arg4; } public function set size(_arg1:Number):void{ if (_arg1 > 0){ _size = _arg1; _halfSize = (_size / 2); _fourthSize = (_size / 4); _eighthSize = (_size / 8); }; } public function set color(_arg1:uint):void{ _color = _arg1; } public function get size():Number{ return (_size); } public function set mode(_arg1:String):void{ if (((!((_arg1 == null))) && (ToolMode.validMode(_arg1)))){ _mode = _arg1; } else { _mode = ToolMode.NORMAL; }; } public function get type():String{ return (_type); } public function generateBrush(_arg1:Number=0, _arg2:int=-1):Sprite{ var _local3:Sprite; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:uint; _local3 = new Sprite(); if (_arg1 == 0){ _local6 = _size; _local7 = _halfSize; _local8 = _fourthSize; _local9 = _eighthSize; } else { _local6 = _arg1; _local7 = (_arg1 / 2); _local8 = (_arg1 / 4); _local9 = (_arg1 / 8); }; if (_arg2 < 0){ _local10 = _color; } else { _local10 = _arg2; }; if (_type == BrushType.ROUND){ _local3.graphics.beginFill(_local10, 1); _local3.graphics.drawCircle(0, 0, _local7); _local3.graphics.endFill(); } else { if ((((((_type == BrushType.HORIZONTAL_LINE)) || ((_type == BrushType.VERTICAL_LINE)))) || ((_type == BrushType.SQUARE)))){ if (_type == BrushType.HORIZONTAL_LINE){ _local4 = _local7; _local5 = _local9; } else { if (_type == BrushType.VERTICAL_LINE){ _local4 = _local9; _local5 = _local7; } else { if (_type == BrushType.SQUARE){ _local4 = _local7; _local5 = _local7; }; }; }; _local3.graphics.beginFill(_local10, 1); _local3.graphics.drawRect(-(_local4), -(_local5), (_local4 << 1), (_local5 << 1)); _local3.graphics.endFill(); } else { if (_type == BrushType.FORWARD_LINE){ _local3.graphics.beginFill(_local10, 1); _local3.graphics.moveTo((_local7 - _local9), -(_local7)); _local3.graphics.lineTo(_local7, -(_local7)); _local3.graphics.lineTo((-(_local7) + _local9), _local7); _local3.graphics.lineTo(-(_local7), _local7); _local3.graphics.lineTo((_local7 - _local9), -(_local7)); _local3.graphics.endFill(); } else { if (_type == BrushType.BACKWARD_LINE){ _local3.graphics.beginFill(_local10, 1); _local3.graphics.moveTo((-(_local7) + _local9), -(_local7)); _local3.graphics.lineTo(-(_local7), -(_local7)); _local3.graphics.lineTo((_local7 - _local9), _local7); _local3.graphics.lineTo(_local7, _local7); _local3.graphics.lineTo((-(_local7) + _local9), -(_local7)); _local3.graphics.endFill(); } else { if (_type == BrushType.DIAMOND){ _local3.graphics.beginFill(_local10, 1); _local3.graphics.moveTo(0, -(_local7)); _local3.graphics.lineTo(_local7, 0); _local3.graphics.lineTo(0, _local7); _local3.graphics.lineTo(-(_local7), 0); _local3.graphics.lineTo(0, -(_local7)); _local3.graphics.endFill(); }; }; }; }; }; return (_local3); } public function get color():uint{ return (_color); } public function get mode():String{ return (_mode); } public function apply(_arg1:DisplayObject, _arg2:Point, _arg3:Point=null):void{ var _local4:Sprite; var _local5:Number; var _local6:Number; var _local7:Point; var _local8:Point; var _local9:Number; _local4 = Sprite(_arg1); if (_arg3 == null){ if (_type == BrushType.ROUND){ _local4.graphics.beginFill(_color, 1); _local4.graphics.drawCircle(_arg2.x, _arg2.y, _halfSize); _local4.graphics.endFill(); } else { if ((((((_type == BrushType.HORIZONTAL_LINE)) || ((_type == BrushType.VERTICAL_LINE)))) || ((_type == BrushType.SQUARE)))){ if (_type == BrushType.HORIZONTAL_LINE){ _local5 = _halfSize; _local6 = _eighthSize; } else { if (_type == BrushType.VERTICAL_LINE){ _local5 = _eighthSize; _local6 = _halfSize; } else { if (_type == BrushType.SQUARE){ _local5 = _halfSize; _local6 = _halfSize; }; }; }; _local4.graphics.beginFill(_color, 1); _local4.graphics.drawRect((_arg2.x - _local5), (_arg2.y - _local6), (_local5 << 1), (_local6 << 1)); _local4.graphics.endFill(); } else { if (_type == BrushType.FORWARD_LINE){ _local4.graphics.beginFill(_color, 1); _local4.graphics.moveTo(((_arg2.x + _halfSize) - _eighthSize), (_arg2.y - _halfSize)); _local4.graphics.lineTo((_arg2.x + _halfSize), (_arg2.y - _halfSize)); _local4.graphics.lineTo(((_arg2.x - _halfSize) + _eighthSize), (_arg2.y + _halfSize)); _local4.graphics.lineTo((_arg2.x - _halfSize), (_arg2.y + _halfSize)); _local4.graphics.lineTo(((_arg2.x + _halfSize) - _eighthSize), (_arg2.y - _halfSize)); _local4.graphics.endFill(); } else { if (_type == BrushType.BACKWARD_LINE){ _local4.graphics.beginFill(_color, 1); _local4.graphics.moveTo(((_arg2.x - _halfSize) + _eighthSize), (_arg2.y - _halfSize)); _local4.graphics.lineTo((_arg2.x - _halfSize), (_arg2.y - _halfSize)); _local4.graphics.lineTo(((_arg2.x + _halfSize) - _eighthSize), (_arg2.y + _halfSize)); _local4.graphics.lineTo((_arg2.x + _halfSize), (_arg2.y + _halfSize)); _local4.graphics.lineTo(((_arg2.x - _halfSize) + _eighthSize), (_arg2.y - _halfSize)); _local4.graphics.endFill(); } else { if (_type == BrushType.DIAMOND){ _local4.graphics.beginFill(_color, 1); _local4.graphics.moveTo(_arg2.x, (_arg2.y - _halfSize)); _local4.graphics.lineTo((_arg2.x + _halfSize), _arg2.y); _local4.graphics.lineTo(_arg2.x, (_arg2.y + _halfSize)); _local4.graphics.lineTo((_arg2.x - _halfSize), _arg2.y); _local4.graphics.lineTo(_arg2.x, (_arg2.y - _halfSize)); _local4.graphics.endFill(); }; }; }; }; }; } else { if (_arg2.x <= _arg3.x){ _local7 = _arg2; _local8 = _arg3; } else { _local7 = _arg3; _local8 = _arg2; }; if (_type == BrushType.ROUND){ _local4.graphics.lineStyle(_size, _color, 1, false, LineScaleMode.NORMAL, CapsStyle.ROUND); _local4.graphics.moveTo(_arg2.x, _arg2.y); _local4.graphics.lineTo(_arg3.x, _arg3.y); } else { if ((((((_type == BrushType.HORIZONTAL_LINE)) || ((_type == BrushType.VERTICAL_LINE)))) || ((_type == BrushType.SQUARE)))){ if (_type == BrushType.HORIZONTAL_LINE){ _local5 = _halfSize; _local6 = _eighthSize; } else { if (_type == BrushType.VERTICAL_LINE){ _local5 = _eighthSize; _local6 = _halfSize; } else { if (_type == BrushType.SQUARE){ _local5 = _halfSize; _local6 = _halfSize; }; }; }; _local4.graphics.beginFill(_color, 1); if (_local7.y < _local8.y){ _local4.graphics.moveTo((_local7.x + _local5), (_local7.y - _local6)); _local4.graphics.lineTo((_local8.x + _local5), (_local8.y - _local6)); _local4.graphics.lineTo((_local8.x + _local5), (_local8.y + _local6)); _local4.graphics.lineTo((_local8.x - _local5), (_local8.y + _local6)); _local4.graphics.lineTo((_local7.x - _local5), (_local7.y + _local6)); _local4.graphics.lineTo((_local7.x - _local5), (_local7.y - _local6)); _local4.graphics.lineTo((_local7.x + _local5), (_local7.y - _local6)); } else { _local4.graphics.moveTo((_local7.x - _local5), (_local7.y - _local6)); _local4.graphics.lineTo((_local8.x - _local5), (_local8.y - _local6)); _local4.graphics.lineTo((_local8.x + _local5), (_local8.y - _local6)); _local4.graphics.lineTo((_local8.x + _local5), (_local8.y + _local6)); _local4.graphics.lineTo((_local7.x + _local5), (_local7.y + _local6)); _local4.graphics.lineTo((_local7.x - _local5), (_local7.y + _local6)); _local4.graphics.lineTo((_local7.x - _local5), (_local7.y - _local6)); }; _local4.graphics.endFill(); } else { if (_type == BrushType.FORWARD_LINE){ _local9 = degrees(atan2((_local8.x - _local7.x), (_local8.y - _local7.y))); _local4.graphics.beginFill(_color, 1); _local4.graphics.moveTo((_local7.x - _halfSize), (_local7.y + _halfSize)); if (_local9 >= 135){ _local4.graphics.lineTo((_local8.x - _halfSize), (_local8.y + _halfSize)); _local4.graphics.lineTo(((_local8.x + _halfSize) - _eighthSize), (_local8.y - _halfSize)); _local4.graphics.lineTo((_local8.x + _halfSize), (_local8.y - _halfSize)); _local4.graphics.lineTo((_local7.x + _halfSize), (_local7.y - _halfSize)); _local4.graphics.lineTo(((_local7.x - _halfSize) + _eighthSize), (_local7.y + _halfSize)); } else { if (_local9 >= 90){ _local4.graphics.lineTo(((_local7.x + _halfSize) - _eighthSize), (_local7.y - _halfSize)); _local4.graphics.lineTo(((_local8.x + _halfSize) - _eighthSize), (_local8.y - _halfSize)); _local4.graphics.lineTo((_local8.x + _halfSize), (_local8.y - _halfSize)); _local4.graphics.lineTo(((_local8.x - _halfSize) + _eighthSize), (_local8.y + _halfSize)); _local4.graphics.lineTo(((_local7.x - _halfSize) + _eighthSize), (_local7.y + _halfSize)); } else { _local4.graphics.lineTo(((_local7.x + _halfSize) - _eighthSize), (_local7.y - _halfSize)); _local4.graphics.lineTo((_local7.x + _halfSize), (_local7.y - _halfSize)); _local4.graphics.lineTo((_local8.x + _halfSize), (_local8.y - _halfSize)); _local4.graphics.lineTo(((_local8.x - _halfSize) + _eighthSize), (_local8.y + _halfSize)); _local4.graphics.lineTo((_local8.x - _halfSize), (_local8.y + _halfSize)); _local4.graphics.lineTo(((_local7.x - _halfSize) + _eighthSize), (_local7.y + _halfSize)); }; }; _local4.graphics.lineTo((_local7.x - _halfSize), (_local7.y + _halfSize)); _local4.graphics.endFill(); } else { if (_type == BrushType.BACKWARD_LINE){ _local9 = degrees(atan2((_local8.x - _local7.x), (_local8.y - _local7.y))); _local4.graphics.beginFill(_color, 1); _local4.graphics.moveTo((_local7.x - _halfSize), (_local7.y - _halfSize)); if (_local9 <= 45){ _local4.graphics.lineTo(((_local7.x - _halfSize) + _eighthSize), (_local7.y - _halfSize)); _local4.graphics.lineTo((_local7.x + _halfSize), (_local7.y + _halfSize)); _local4.graphics.lineTo((_local8.x + _halfSize), (_local8.y + _halfSize)); _local4.graphics.lineTo(((_local8.x + _halfSize) - _eighthSize), (_local8.y + _halfSize)); _local4.graphics.lineTo((_local8.x - _halfSize), (_local8.y - _halfSize)); } else { if (_local9 <= 90){ _local4.graphics.lineTo(((_local7.x - _halfSize) + _eighthSize), (_local7.y - _halfSize)); _local4.graphics.lineTo(((_local8.x - _halfSize) + _eighthSize), (_local8.y - _halfSize)); _local4.graphics.lineTo((_local8.x + _halfSize), (_local8.y + _halfSize)); _local4.graphics.lineTo(((_local8.x + _halfSize) - _eighthSize), (_local8.y + _halfSize)); _local4.graphics.lineTo(((_local7.x + _halfSize) - _eighthSize), (_local7.y + _halfSize)); } else { _local4.graphics.lineTo((_local8.x - _halfSize), (_local8.y - _halfSize)); _local4.graphics.lineTo(((_local8.x - _halfSize) + _eighthSize), (_local8.y - _halfSize)); _local4.graphics.lineTo((_local8.x + _halfSize), (_local8.y + _halfSize)); _local4.graphics.lineTo((_local7.x + _halfSize), (_local7.y + _halfSize)); _local4.graphics.lineTo(((_local7.x + _halfSize) - _eighthSize), (_local7.y + _halfSize)); }; }; _local4.graphics.lineTo((_local7.x - _halfSize), (_local7.y - _halfSize)); _local4.graphics.endFill(); } else { if (_type == BrushType.DIAMOND){ _local4.graphics.beginFill(_color, 1); if (abs((_arg3.x - _arg2.x)) > abs((_arg3.y - _arg2.y))){ _local4.graphics.moveTo(_local7.x, (_local7.y - _halfSize)); _local4.graphics.lineTo(_local8.x, (_local8.y - _halfSize)); _local4.graphics.lineTo((_local8.x + _halfSize), _local8.y); _local4.graphics.lineTo(_local8.x, (_local8.y + _halfSize)); _local4.graphics.lineTo(_local7.x, (_local7.y + _halfSize)); _local4.graphics.lineTo((_local7.x - _halfSize), _local7.y); _local4.graphics.lineTo(_local7.x, (_local7.y - _halfSize)); } else { if (_arg2.y < _arg3.y){ _local7 = _arg2; _local8 = _arg3; } else { _local7 = _arg3; _local8 = _arg2; }; _local4.graphics.moveTo((_local7.x + _halfSize), _local7.y); _local4.graphics.lineTo((_local8.x + _halfSize), _local8.y); _local4.graphics.lineTo(_local8.x, (_local8.y + _halfSize)); _local4.graphics.lineTo((_local8.x - _halfSize), _local8.y); _local4.graphics.lineTo((_local7.x - _halfSize), _local7.y); _local4.graphics.lineTo(_local7.x, (_local7.y - _halfSize)); _local4.graphics.lineTo((_local7.x + _halfSize), _local7.y); }; _local4.graphics.endFill(); }; }; }; }; }; }; } public function get renderType():String{ return (RENDER_TYPE); } private function degrees(_arg1:Number):Number{ return (((_arg1 * 180) / Math.PI)); } public function set type(_arg1:String):void{ if (((!((_arg1 == null))) && (BrushType.validType(_arg1)))){ _type = _arg1; } else { _type = BrushType.SQUARE; }; } } }//package com.nocircleno.graffiti.tools
Section 81
//BrushType (com.nocircleno.graffiti.tools.BrushType) package com.nocircleno.graffiti.tools { public class BrushType { public static const SQUARE:String = "square"; public static const FORWARD_LINE:String = "forward_line"; public static const HORIZONTAL_LINE:String = "horizontal_line"; public static const BACKWARD_LINE:String = "backward_line"; public static const DIAMOND:String = "diamond"; public static const ROUND:String = "round"; public static const VERTICAL_LINE:String = "vertical_line"; public static function validType(_arg1:String):Boolean{ var _local2:Boolean; _local2 = false; if ((((((((((((((_arg1 == BrushType.SQUARE)) || ((_arg1 == BrushType.ROUND)))) || ((_arg1 == BrushType.HORIZONTAL_LINE)))) || ((_arg1 == BrushType.VERTICAL_LINE)))) || ((_arg1 == BrushType.FORWARD_LINE)))) || ((_arg1 == BrushType.BACKWARD_LINE)))) || ((_arg1 == BrushType.DIAMOND)))){ _local2 = true; }; return (_local2); } } }//package com.nocircleno.graffiti.tools
Section 82
//ITool (com.nocircleno.graffiti.tools.ITool) package com.nocircleno.graffiti.tools { import flash.display.*; import flash.geom.*; public interface ITool { function get renderType():String; function get mode():String; function set type(_arg1:String):void; function set mode(_arg1:String):void; function get type():String; function apply(_arg1:DisplayObject, _arg2:Point, _arg3:Point=null):void; } }//package com.nocircleno.graffiti.tools
Section 83
//Line (com.nocircleno.graffiti.tools.Line) package com.nocircleno.graffiti.tools { import flash.display.*; import flash.geom.*; public class Line implements ITool { private const RENDER_TYPE:String = "clickDrag"; private const cos:Function; private const atan2:Function; private const LINE_SEGMENT_LENGTH_BASE:uint = 4; private const sin:Function; private const pow:Function; private const sqrt:Function; private var _mode:String; private var _type:String; private var _color:uint; private var _lineWidth:Number; public function Line(_arg1:Number=4, _arg2:uint=0, _arg3:String=null, _arg4:String=null){ sin = Math.sin; cos = Math.cos; sqrt = Math.sqrt; pow = Math.pow; atan2 = Math.atan2; super(); this.lineWidth = _arg1; color = _arg2; type = _arg3; mode = _arg4; } public function get type():String{ return (_type); } public function set color(_arg1:uint):void{ _color = _arg1; } public function set mode(_arg1:String):void{ if (((!((_arg1 == null))) && (ToolMode.validMode(_arg1)))){ _mode = _arg1; } else { _mode = ToolMode.NORMAL; }; } public function get color():uint{ return (_color); } public function get mode():String{ return (_mode); } public function apply(_arg1:DisplayObject, _arg2:Point, _arg3:Point=null):void{ var _local4:Sprite; var _local5:Number; var _local6:Number; var _local7:uint; var _local8:uint; var _local9:uint; var _local10:int; var _local11:Point; var _local12:Point; var _local13:Number; var _local14:Point; var _local15:Number; _local4 = Sprite(_arg1); _local5 = sqrt((pow((_arg3.x - _arg2.x), 2) + pow((_arg3.y - _arg2.y), 2))); _local6 = atan2((_arg3.y - _arg2.y), (_arg3.x - _arg2.x)); if (_arg3 != null){ _local4.graphics.moveTo(_arg2.x, _arg2.y); if (_type == LineType.SOLID){ _local4.graphics.lineStyle(_lineWidth, _color, 1); _local4.graphics.lineTo(_arg3.x, _arg3.y); } else { if (_type == LineType.DASHED){ _local4.graphics.lineStyle(_lineWidth, _color, 1, false, LineScaleMode.NORMAL, CapsStyle.SQUARE, JointStyle.MITER); _local8 = (LINE_SEGMENT_LENGTH_BASE * _lineWidth); _local9 = (LINE_SEGMENT_LENGTH_BASE * _lineWidth); _local10 = Math.floor((_local5 / (_local8 + _local9))); _local11 = new Point(); _local12 = new Point(); _local7 = 0; while (_local7 <= _local10) { _local11.x = (_arg2.x + (cos(_local6) * (_local7 * (_local8 + _local9)))); _local11.y = (_arg2.y + (sin(_local6) * (_local7 * (_local8 + _local9)))); _local12.x = (_arg2.x + (cos(_local6) * (((_local7 + 1) * (_local8 + _local9)) - _local9))); _local12.y = (_arg2.y + (sin(_local6) * (((_local7 + 1) * (_local8 + _local9)) - _local9))); if (_local7 == _local10){ _local13 = sqrt((pow((_arg3.x - _local11.x), 2) + pow((_arg3.y - _local11.y), 2))); if (_local13 <= _local8){ _local12.x = _arg3.x; _local12.y = _arg3.y; }; }; _local4.graphics.moveTo(_local11.x, _local11.y); _local4.graphics.lineTo(_local12.x, _local12.y); _local7++; }; } else { if (_type == LineType.DOTTED){ _local14 = new Point(); _local15 = (3 * _lineWidth); _local7 = 0; while (_local7 <= _local5) { _local14.x = (_arg2.x + (cos(_local6) * _local7)); _local14.y = (_arg2.y + (sin(_local6) * _local7)); _local4.graphics.lineStyle(0, 0xFF0000, 0); _local4.graphics.beginFill(_color, 1); _local4.graphics.drawCircle(_local14.x, _local14.y, (_lineWidth / 2)); _local4.graphics.endFill(); _local7 = (_local7 + _local15); }; }; }; }; }; } public function set type(_arg1:String):void{ if (((!((_arg1 == null))) && (LineType.validType(_arg1)))){ _type = _arg1; } else { _type = LineType.SOLID; }; } public function get lineWidth():Number{ return (_lineWidth); } public function set lineWidth(_arg1:Number):void{ if (_arg1 > 0){ _lineWidth = _arg1; }; } public function get renderType():String{ return (RENDER_TYPE); } } }//package com.nocircleno.graffiti.tools
Section 84
//LineType (com.nocircleno.graffiti.tools.LineType) package com.nocircleno.graffiti.tools { public class LineType { public static const DASHED:String = "dashed"; public static const DOTTED:String = "dotted"; public static const SOLID:String = "solid"; public static function validType(_arg1:String):Boolean{ var _local2:Boolean; _local2 = false; if ((((((_arg1 == LineType.SOLID)) || ((_arg1 == LineType.DASHED)))) || ((_arg1 == LineType.DOTTED)))){ _local2 = true; }; return (_local2); } } }//package com.nocircleno.graffiti.tools
Section 85
//Shape (com.nocircleno.graffiti.tools.Shape) package com.nocircleno.graffiti.tools { import flash.display.*; import flash.geom.*; public class Shape implements ITool { private const RENDER_TYPE:String = "clickDrag"; private const pow:Function; private const sqrt:Function; private const max:Function; private const abs:Function; private var _mode:String; private var _strokeColor:int; private var _type:String; private var _fillColor:int; private var _strokeWidth:Number; public function Shape(_arg1:Number=1, _arg2:int=0, _arg3:int=0xFFFFFF, _arg4:String=null, _arg5:String=null){ sqrt = Math.sqrt; pow = Math.pow; abs = Math.abs; max = Math.max; super(); this.strokeWidth = _arg1; this.strokeColor = _arg2; this.fillColor = _arg3; type = _arg4; mode = _arg5; } public function get strokeColor():int{ return (_strokeColor); } public function set mode(_arg1:String):void{ if (((!((_arg1 == null))) && (ToolMode.validMode(_arg1)))){ _mode = _arg1; } else { _mode = ToolMode.NORMAL; }; } public function set strokeColor(_arg1:int):void{ _strokeColor = _arg1; } public function set strokeWidth(_arg1:Number):void{ if ((((_arg1 > 0)) || ((_arg1 == -1)))){ _strokeWidth = _arg1; }; } public function set fillColor(_arg1:int):void{ _fillColor = _arg1; } public function get mode():String{ return (_mode); } public function get fillColor():int{ return (_fillColor); } public function get strokeWidth():Number{ return (_strokeWidth); } public function set type(_arg1:String):void{ if (((!((_arg1 == null))) && (ShapeType.validType(_arg1)))){ _type = _arg1; } else { _type = ShapeType.RECTANGLE; }; } public function apply(_arg1:DisplayObject, _arg2:Point, _arg3:Point=null):void{ var _local4:Sprite; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; _local4 = Sprite(_arg1); _local5 = (_arg3.x - _arg2.x); _local6 = (_arg3.y - _arg2.y); if (_strokeColor != -1){ if ((((_type == ShapeType.RECTANGLE)) || ((_type == ShapeType.SQUARE)))){ _local4.graphics.lineStyle(_strokeWidth, _strokeColor, 1, false, LineScaleMode.NORMAL, CapsStyle.SQUARE, JointStyle.MITER); } else { _local4.graphics.lineStyle(_strokeWidth, _strokeColor, 1); }; }; if (_fillColor != -1){ _local4.graphics.beginFill(_fillColor, 1); }; if (_type == ShapeType.RECTANGLE){ _local4.graphics.drawRect(_arg2.x, _arg2.y, _local5, _local6); }; if (_type == ShapeType.SQUARE){ _local7 = abs(max(_local5, _local6)); _local4.graphics.drawRect(_arg2.x, _arg2.y, ((_arg3.x < _arg2.x)) ? -(_local7) : _local7, ((_arg3.y < _arg2.y)) ? -(_local7) : _local7); } else { if (_type == ShapeType.OVAL){ _local4.graphics.drawEllipse(_arg2.x, _arg2.y, _local5, _local6); } else { if (_type == ShapeType.CIRCLE){ _local8 = sqrt((pow((_arg3.x - _arg2.x), 2) + pow((_arg3.y - _arg2.y), 2))); _local4.graphics.drawCircle((_arg2.x + (_local5 / 2)), (_arg2.y + (_local6 / 2)), (_local8 / 2)); }; }; }; if (_fillColor != -1){ _local4.graphics.endFill(); }; } public function get renderType():String{ return (RENDER_TYPE); } public function get type():String{ return (_type); } } }//package com.nocircleno.graffiti.tools
Section 86
//ShapeType (com.nocircleno.graffiti.tools.ShapeType) package com.nocircleno.graffiti.tools { public class ShapeType { public static const CIRCLE:String = "circle"; public static const OVAL:String = "oval"; public static const SQUARE:String = "square"; public static const RECTANGLE:String = "rectangle"; public static function validType(_arg1:String):Boolean{ var _local2:Boolean; _local2 = false; if ((((((((_arg1 == ShapeType.RECTANGLE)) || ((_arg1 == ShapeType.SQUARE)))) || ((_arg1 == ShapeType.OVAL)))) || ((_arg1 == ShapeType.CIRCLE)))){ _local2 = true; }; return (_local2); } } }//package com.nocircleno.graffiti.tools
Section 87
//ToolMode (com.nocircleno.graffiti.tools.ToolMode) package com.nocircleno.graffiti.tools { public class ToolMode { public static const ERASE:String = "erase"; public static const NORMAL:String = "normal"; public static function validMode(_arg1:String):Boolean{ var _local2:Boolean; _local2 = false; if ((((_arg1 == ToolMode.NORMAL)) || ((_arg1 == ToolMode.ERASE)))){ _local2 = true; }; return (_local2); } } }//package com.nocircleno.graffiti.tools
Section 88
//ToolRenderType (com.nocircleno.graffiti.tools.ToolRenderType) package com.nocircleno.graffiti.tools { public class ToolRenderType { public static const CLICK_DRAG:String = "clickDrag"; public static const CONTINUOUS:String = "continuous"; } }//package com.nocircleno.graffiti.tools
Section 89
//GraffitiCanvas (com.nocircleno.graffiti.GraffitiCanvas) package com.nocircleno.graffiti { import com.nocircleno.graffiti.tools.*; import flash.display.*; import flash.events.*; import flash.geom.*; import com.nocircleno.graffiti.events.*; public class GraffitiCanvas extends Sprite { private const MAX_BITMAP_DIM:uint = 5500; private const MAX_HEIGHT:uint = 2800; private const MAX_WIDTH:uint = 2800; private var _minZoom:uint;// = 1 private var _maxHistoryLength:uint; private var _maxZoom:uint; private var canvas:Bitmap; private var _tool:ITool; private var container:Sprite; private var _canvasWidth:uint; private var _history:Array; private var drawing_space:Sprite; private var _prevPoint:Point; private var _shiftKeyWasDown:Boolean;// = false private var _canvasHeight:uint; private var _zoom:Number;// = 1 private var _canvasEnabled:Boolean;// = true private var _bmp:BitmapData; private var _historyPosition:uint;// = 0 private var overlay_do:DisplayObject; private var underlay_do:DisplayObject; private var _mouseDrag:Boolean;// = false public static const HISTORY_LENGTH_CHANGE:String = "historyLengthChange"; public function GraffitiCanvas(_arg1:uint=100, _arg2:uint=100, _arg3:uint=0, _arg4:DisplayObject=null, _arg5:DisplayObject=null){ _canvasEnabled = true; _mouseDrag = false; _zoom = 1; _minZoom = 1; _historyPosition = 0; _shiftKeyWasDown = false; super(); _canvasWidth = _arg1; _canvasHeight = _arg2; checkPropertyLimits(); _tool = new Brush(16, 0, BrushType.DIAMOND); drawing_space = new Sprite(); container = new Sprite(); _bmp = new BitmapData(_canvasWidth, _canvasHeight, true, 0xFFFFFF); canvas = new Bitmap(_bmp, "auto", false); addChild(container); container.addChild(canvas); container.addChild(drawing_space); if (_arg4 != null){ overlay_do = _arg4; container.addChild(overlay_do); }; if (_arg5 != null){ underlay_do = _arg5; container.addChildAt(underlay_do, 0); }; this.addEventListener(MouseEvent.MOUSE_DOWN, mouseHandler); this.scrollRect = new Rectangle(0, 0, _canvasWidth, _canvasHeight); initHistory(_arg3); } public function clearCanvas():void{ _bmp.fillRect(new Rectangle(0, 0, _canvasWidth, _canvasHeight), 0xFFFFFF); if (_maxHistoryLength != 0){ writeToHistory(); }; } public function drawToCanvas(_arg1:Object):void{ if ((_arg1 is IBitmapDrawable)){ _bmp.draw(IBitmapDrawable(_arg1)); }; } private function restoreFromHistory():void{ var _local1:Rectangle; var _local2:BitmapData; _local1 = _history[_historyPosition].rect; if (((!((_local1.width == _canvasWidth))) || (!((_local1.height == _canvasHeight))))){ _local2 = new BitmapData(_canvasWidth, _canvasHeight, true, 0xFFFFFF); _local2.copyPixels(_history[_historyPosition], _history[_historyPosition].rect, new Point(0, 0)); _bmp.copyPixels(_local2, _local2.rect, new Point(0, 0)); _local2.dispose(); } else { _bmp.copyPixels(_history[_historyPosition], _history[_historyPosition].rect, new Point(0, 0)); }; } private function dragEventUpdater(_arg1:MouseEvent):void{ dispatchEvent(new CanvasEvent(CanvasEvent.DRAG, _zoom, _canvasWidth, _canvasHeight, getViewableRect())); } public function drawing():BitmapData{ var _local1:BitmapData; _local1 = new BitmapData(_canvasWidth, _canvasHeight, true, 0xFFFFFF); _local1.draw(container); return (_local1); } private function resizeCanvas():void{ var _local1:BitmapData; if (_bmp != null){ _local1 = _bmp.clone(); _bmp.dispose(); _bmp = new BitmapData(_canvasWidth, _canvasHeight, true, 0xFFFFFF); _bmp.copyPixels(_local1, _local1.rect, new Point(0, 0)); _local1.dispose(); canvas.bitmapData = _bmp; }; this.scrollRect = new Rectangle(0, 0, _canvasWidth, _canvasHeight); } public function set canvasHeight(_arg1:uint):void{ _canvasHeight = _arg1; checkPropertyLimits(); resizeCanvas(); } private function draw(_arg1:MouseEvent=null):void{ var _local2:Point; var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; _local2 = new Point(container.mouseX, container.mouseY); if (_tool.renderType == ToolRenderType.CLICK_DRAG){ drawing_space.graphics.clear(); }; if (_prevPoint == null){ _tool.apply(drawing_space, _local2); } else { if ((((_tool is Line)) && (!((_arg1 == null))))){ if (_arg1.shiftKey){ _local3 = Math.abs((_local2.x - _prevPoint.x)); _local4 = Math.abs((_local2.y - _prevPoint.y)); if ((((_local3 > (_local4 / 2))) && (((_local3 / 2) < _local4)))){ _local5 = ((_local3 < _local4)) ? _local3 : _local4; _local6 = (_local2.x - _prevPoint.x); _local7 = (_local2.y - _prevPoint.y); _local8 = ((_local6 < 0)) ? -(_local5) : _local5; _local9 = ((_local7 < 0)) ? -(_local5) : _local5; _local2.x = (_prevPoint.x + _local8); _local2.y = (_prevPoint.y + _local9); } else { if (Math.abs((_local2.x - _prevPoint.x)) < Math.abs((_local2.y - _prevPoint.y))){ _local2.x = _prevPoint.x; } else { _local2.y = _prevPoint.y; }; }; }; } else { if ((((_tool is Shape)) && (!((_arg1 == null))))){ if (_arg1.shiftKey){ if (_tool.type == ShapeType.OVAL){ _tool.type = ShapeType.CIRCLE; } else { if (_tool.type == ShapeType.RECTANGLE){ _tool.type = ShapeType.SQUARE; }; }; _shiftKeyWasDown = true; } else { if (_shiftKeyWasDown){ _shiftKeyWasDown = false; if (_tool.type == ShapeType.CIRCLE){ _tool.type = ShapeType.OVAL; } else { if (_tool.type == ShapeType.SQUARE){ _tool.type = ShapeType.RECTANGLE; }; }; }; }; }; }; _tool.apply(drawing_space, _prevPoint, _local2); }; if (_tool.renderType == ToolRenderType.CONTINUOUS){ _bmp.draw(drawing_space, new Matrix(), null, _tool.mode); drawing_space.graphics.clear(); _prevPoint = new Point(_local2.x, _local2.y); }; if (_arg1 != null){ _arg1.updateAfterEvent(); }; } public function get minZoom():Number{ return (_minZoom); } public function get maxZoom():Number{ return (_maxZoom); } public function get canvasWidth():uint{ return (_canvasWidth); } public function nextHistory():void{ if (_history != null){ if (_historyPosition != (_history.length - 1)){ _historyPosition++; restoreFromHistory(); }; }; } private function checkPropertyLimits():void{ _canvasWidth = ((_canvasWidth <= MAX_WIDTH)) ? _canvasWidth : MAX_WIDTH; _canvasHeight = ((_canvasHeight <= MAX_HEIGHT)) ? _canvasHeight : MAX_HEIGHT; _maxZoom = Math.floor((MAX_BITMAP_DIM / Math.max(_canvasWidth, _canvasHeight))); if (_zoom > _maxZoom){ this.zoom = _maxZoom; }; } public function set activeTool(_arg1:ITool):void{ _tool = _arg1; } public function fill(_arg1:Point, _arg2:uint):void{ if ((_arg2 >> 24) == 0){ _arg2 = ((0xFF << 24) | _arg2); }; if (_bmp.rect.containsPoint(_arg1)){ _bmp.floodFill(_arg1.x, _arg1.y, _arg2); if (_maxHistoryLength != 0){ writeToHistory(); }; }; } public function get mouseDrag():Boolean{ return (_mouseDrag); } public function set underlay(_arg1:DisplayObject):void{ if (underlay_do != null){ container.removeChild(underlay_do); }; underlay_do = _arg1; if (underlay_do != null){ container.addChildAt(underlay_do, 0); }; } public function set canvasEnabled(_arg1:Boolean):void{ _canvasEnabled = _arg1; this.mouseEnabled = _arg1; this.mouseChildren = _arg1; } public function get historyLength():uint{ return ((!((_history == null))) ? _history.length : 0); } public function get maxHistoryLength():uint{ return (_maxHistoryLength); } public function get canvasHeight():uint{ return (_canvasHeight); } public function setCanvasPos(_arg1:Point):void{ container.x = _arg1.x; container.y = _arg1.y; if (container.x > 0){ container.x = 0; }; if (container.y > 0){ container.y = 0; }; if ((container.x + container.width) < _canvasWidth){ container.x = (_canvasWidth - container.width); }; if ((container.y + container.height) < _canvasHeight){ container.y = (_canvasHeight - container.height); }; } public function set zoom(_arg1:Number):void{ var _local2:Point; if ((((_arg1 >= _minZoom)) && ((_arg1 <= _maxZoom)))){ _local2 = new Point(((Math.abs(container.x) + (_canvasWidth / 2)) / _zoom), ((Math.abs(container.y) + (_canvasHeight / 2)) / _zoom)); _zoom = _arg1; container.scaleX = _zoom; container.scaleY = _zoom; container.x = ((-(_local2.x) * _zoom) + (_canvasWidth / 2)); container.y = ((-(_local2.y) * _zoom) + (_canvasHeight / 2)); if (container.x > 0){ container.x = 0; }; if (container.y > 0){ container.y = 0; }; if ((container.x + container.width) < _canvasWidth){ container.x = (_canvasWidth - container.width); }; if ((container.y + container.height) < _canvasHeight){ container.y = (_canvasHeight - container.height); }; dispatchEvent(new CanvasEvent(CanvasEvent.ZOOM, _zoom, _canvasWidth, _canvasHeight, getViewableRect())); }; } public function set overlay(_arg1:DisplayObject):void{ if (overlay_do != null){ container.removeChild(overlay_do); }; overlay_do = _arg1; if (overlay_do != null){ container.addChild(overlay_do); }; } private function writeToHistory():void{ var _local1:int; if (_historyPosition != (_history.length - 1)){ _local1 = (_history.length - 1); while (_local1 > _historyPosition) { _history[_local1].dispose(); _history.splice(_local1, 1); _local1--; }; }; if (_history.length == _maxHistoryLength){ _history[0].dispose(); _history.splice(0, 1); }; _history.push(_bmp.clone()); _historyPosition = (_history.length - 1); dispatchEvent(new Event(GraffitiCanvas.HISTORY_LENGTH_CHANGE)); } public function set canvasWidth(_arg1:uint):void{ _canvasWidth = _arg1; checkPropertyLimits(); resizeCanvas(); } public function get activeTool():ITool{ return (_tool); } private function initHistory(_arg1:uint):void{ _maxHistoryLength = _arg1; if (_maxHistoryLength != 0){ _history = new Array(); writeToHistory(); }; } public function getColorAtPoint(_arg1:Point, _arg2:Boolean=false):int{ var _local3:int; var _local4:BitmapData; if (_bmp.rect.containsPoint(_arg1)){ if (_arg2){ _local4 = BitmapData(this.drawing); _local3 = _local4.getPixel32(_arg1.x, _arg1.y); _local4.dispose(); } else { _local3 = _bmp.getPixel32(_arg1.x, _arg1.y); }; } else { _local3 = -1; }; return (_local3); } public function get canvasEnabled():Boolean{ return (_canvasEnabled); } public function get zoom():Number{ return (_zoom); } public function clearHistory():void{ var _local1:uint; if (_history != null){ _local1 = 0; while (_local1 < _history.length) { _history[_local1].dispose(); _local1++; }; _history = new Array(); _historyPosition = 0; }; dispatchEvent(new Event(GraffitiCanvas.HISTORY_LENGTH_CHANGE)); } public function get historyPosition():uint{ return (_historyPosition); } public function prevHistory():void{ if (_history != null){ if (_historyPosition != 0){ _historyPosition--; restoreFromHistory(); }; }; } private function mouseHandler(_arg1:MouseEvent):void{ if (((_canvasEnabled) && (((!((_tool == null))) || (_mouseDrag))))){ if (_arg1.type == MouseEvent.MOUSE_DOWN){ if (_mouseDrag){ container.startDrag(false, new Rectangle(-((container.width - _canvasWidth)), -((container.height - _canvasHeight)), (container.width - _canvasWidth), (container.height - _canvasHeight))); stage.addEventListener(MouseEvent.MOUSE_UP, mouseHandler); stage.addEventListener(MouseEvent.MOUSE_MOVE, dragEventUpdater); } else { if (_tool.renderType == ToolRenderType.CLICK_DRAG){ _prevPoint = new Point(container.mouseX, container.mouseY); }; stage.addEventListener(MouseEvent.MOUSE_MOVE, draw); draw(); stage.addEventListener(MouseEvent.MOUSE_UP, mouseHandler); }; } else { if (_arg1.type == MouseEvent.MOUSE_UP){ stopDrag(); if (_prevPoint != null){ if (_tool.renderType == ToolRenderType.CLICK_DRAG){ _bmp.draw(drawing_space, new Matrix(), null, _tool.mode); drawing_space.graphics.clear(); }; if (_maxHistoryLength != 0){ writeToHistory(); }; _prevPoint = null; stage.removeEventListener(MouseEvent.MOUSE_MOVE, draw); } else { stage.removeEventListener(MouseEvent.MOUSE_MOVE, dragEventUpdater); }; stage.removeEventListener(MouseEvent.MOUSE_UP, mouseHandler); }; }; }; } public function set mouseDrag(_arg1:Boolean):void{ _mouseDrag = _arg1; } public function getViewableRect():Rectangle{ return (new Rectangle((Math.abs(container.x) / _zoom), (Math.abs(container.y) / _zoom), (_canvasWidth / _zoom), (_canvasHeight / _zoom))); } } }//package com.nocircleno.graffiti
Section 90
//SliderUIEvent (com.reintroducing.events.SliderUIEvent) package com.reintroducing.events { import flash.display.*; import flash.events.*; public class SliderUIEvent extends Event { public var percent:Number; public var track:DisplayObject; public var slider:DisplayObject; public var currentValue:Number; public static const ON_PRESS:String = "onPress"; public static const ON_RELEASE:String = "onRelease"; public static const ON_ENABLED:String = "onEnabled"; public static const ON_UPDATE:String = "onUpdate"; public static const ON_DISABLED:String = "onDisabled"; public function SliderUIEvent(_arg1:String, _arg2:Number, _arg3:Number, _arg4:DisplayObject, _arg5:DisplayObject, _arg6:Boolean=false, _arg7:Boolean=false){ super(_arg1, _arg6, _arg7); this.percent = _arg2; this.currentValue = _arg3; this.slider = _arg4; this.track = _arg5; } override public function clone():Event{ return (new SliderUIEvent(type, this.percent, this.currentValue, this.slider, this.track, bubbles, cancelable)); } override public function toString():String{ return (formatToString("SliderUIEvent", "percent", "currentValue", "slider", "track", "type", "bubbles", "cancelable")); } } }//package com.reintroducing.events
Section 91
//SliderUI (com.reintroducing.ui.SliderUI) package com.reintroducing.ui { import flash.utils.*; import flash.display.*; import flash.events.*; import com.reintroducing.events.*; import flash.geom.*; public class SliderUI extends EventDispatcher { private var _slider:Sprite; private var _percent:Number; private var _currentVal:Number; private var _stage:Stage; private var _axis:String; private var _startVal:Number; private var _timer:Timer; private var _lowVal:Number; private var _changeProp:String; private var _track:Sprite; private var _range:Number; private var _highVal:Number; private var _precision:int; public function SliderUI(_arg1:Stage, _arg2:String, _arg3:Sprite, _arg4:Sprite, _arg5:Number, _arg6:Number, _arg7:Number=0, _arg8:int=0):void{ this._stage = _arg1; this._axis = _arg2; this._track = _arg3; this._slider = _arg4; this._lowVal = _arg5; this._highVal = _arg6; this._startVal = _arg7; this._precision = _arg8; this._changeProp = ((this._axis)=="x") ? "width" : "height"; this._range = ((this._lowVal)<=0) ? (Math.abs(this._lowVal) + this._highVal) : (this._highVal - this._lowVal); this._timer = new Timer(10); if (this._startVal < this._lowVal){ this._startVal = this._lowVal; }; if (this._startVal > this._highVal){ this._startVal = this._highVal; }; this.manageRestingPosition(this._startVal); this.initEvents(); } public function enable():void{ this.initEvents(); this.dispatchEvent(new SliderUIEvent(SliderUIEvent.ON_ENABLED, this._percent, this._currentVal, this._slider, this._track)); } public function set percent(_arg1:Number):void{ this._percent = _arg1; this.manageRestingPosition(this._percent); } private function updateInfo(_arg1:TimerEvent):void{ this._percent = Math.abs(((this._slider[this._axis] - this._track[this._axis]) / this._track[this._changeProp])); this._currentVal = this.roundToPrecision((this._lowVal + (this._range * this._percent)), this._precision); this.dispatchEvent(new SliderUIEvent(SliderUIEvent.ON_UPDATE, this._percent, this._currentVal, this._slider, this._track)); } private function handleMouseDown(_arg1:MouseEvent):void{ this.dispatchEvent(new SliderUIEvent(SliderUIEvent.ON_PRESS, this._percent, this._currentVal, this._slider, this._track)); if (this._axis == "x"){ this._slider.startDrag(false, new Rectangle(this._track.x, this._slider.y, this._track.width, 0)); } else { this._slider.startDrag(false, new Rectangle(this._slider.x, this._track.y, 0, -(this._track.height))); }; this._timer.start(); this._stage.addEventListener(MouseEvent.MOUSE_UP, handleMouseUp, false, 0, true); } private function manageRestingPosition(_arg1:Number):void{ if (_arg1 < 0){ this._percent = (Math.abs((this._lowVal + Math.abs(_arg1))) / this._range); } else { this._percent = (Math.abs((this._lowVal - _arg1)) / this._range); }; this._currentVal = this.roundToPrecision((this._lowVal + (this._range * this._percent)), this._precision); if (this._axis == "x"){ this._slider[this._axis] = (this._track[this._axis] + (this._percent * this._track[this._changeProp])); } else { this._slider[this._axis] = (this._track[this._axis] - (this._percent * this._track[this._changeProp])); }; } public function get percent():Number{ return (this._percent); } private function initEvents():void{ this._slider.buttonMode = true; this._slider.addEventListener(MouseEvent.MOUSE_DOWN, handleMouseDown); this._slider.addEventListener(MouseEvent.MOUSE_UP, handleMouseUp); this._timer.addEventListener(TimerEvent.TIMER, updateInfo); } private function roundToPrecision(_arg1:Number, _arg2:int=0):Number{ var _local3:Number; _local3 = Math.pow(10, _arg2); return ((Math.round((_local3 * _arg1)) / _local3)); } private function handleMouseUp(_arg1:MouseEvent):void{ this.dispatchEvent(new SliderUIEvent(SliderUIEvent.ON_RELEASE, this._percent, this._currentVal, this._slider, this._track)); this._slider.stopDrag(); this._timer.reset(); this.manageRestingPosition(this._currentVal); this._stage.removeEventListener(MouseEvent.MOUSE_UP, handleMouseUp); } public function disable():void{ this._slider.buttonMode = false; this._slider.removeEventListener(MouseEvent.MOUSE_DOWN, handleMouseDown); this._slider.removeEventListener(MouseEvent.MOUSE_UP, handleMouseUp); this._timer.removeEventListener(TimerEvent.TIMER, updateInfo); this.dispatchEvent(new SliderUIEvent(SliderUIEvent.ON_DISABLED, this._percent, this._currentVal, this._slider, this._track)); } override public function toString():String{ return (getQualifiedClassName(this)); } public function set currentValue(_arg1:Number):void{ this._currentVal = _arg1; this.manageRestingPosition(this._currentVal); } public function get currentValue():Number{ return (this._currentVal); } public function destroy():void{ this.disable(); this._timer = null; } } }//package com.reintroducing.ui
Section 92
//TransformTool (com.senocular.display.TransformTool) package com.senocular.display { import flash.display.*; import flash.events.*; import flash.geom.*; import flash.utils.*; public class TransformTool extends Sprite { private var _boundsLeft:Point; private var _scaleTopLeftControl:TransformToolControl; private var _scaleLeftControl:TransformToolControl; private var _registrationCursor:TransformToolCursor; private var _raiseNewTargets:Boolean;// = true private var _moveNewTargets:Boolean;// = false private var scaleControls:Sprite; private var _moveCursor:TransformToolCursor; private var _scaleBottomControl:TransformToolControl; private var _skewRightControl:TransformToolControl; private var _constrainScale:Boolean;// = false private var innerRegistration:Point; private var _boundsBottomRight:Point; private var mouseLoc:Point; private var _isMask:Boolean;// = false private var _moveEnabled:Boolean;// = true private var _scaleEnabled:Boolean;// = true private var _maintainControlForm:Boolean;// = true private var _boundsTopLeft:Point; private var _rotationCursor:TransformToolCursor; private var registrationControls:Sprite; private var _registration:Point; private var _skewCursor:TransformToolCursor; private var _moveControl:TransformToolControl; private var _target:DisplayObject; private var _boundsRight:Point; private var _outlineEnabled:Boolean;// = true private var _cursorsEnabled:Boolean;// = true private var _rememberRegistration:Boolean;// = true private var toolInvertedMatrix:Matrix; private var innerMouseLoc:Point; private var _rotationBottomLeftControl:TransformToolControl; private var _outlineControl:TransformToolControl; private var _constrainRotationAngle:Number;// = 0.785398163397448 private var _boundsTop:Point; private var _rotationTopRightControl:TransformToolControl; private var lines:Sprite; private var _customControlsEnabled:Boolean;// = true private var _rotationTopLeftControl:TransformToolControl; private var _scaleTopControl:TransformToolControl; private var _skewTopControl:TransformToolControl; private var _scaleBottomRightControl:TransformToolControl; private var _scaleBottomLeftControl:TransformToolControl; private var _globalMatrix:Matrix; private var _boundsBottom:Point; private var _rotationBottomRightControl:TransformToolControl; private var rotateControls:Sprite; private var customCursors:Sprite; private var _toolMatrix:Matrix; private var _controlSize:Number;// = 8 private var interactionStartAngle:Number;// = 0 private var _skewEnabled:Boolean;// = true private var customControls:Sprite; private var _boundsCenter:Point; private var _maxScaleX:Number;// = INF private var _customCursorsEnabled:Boolean;// = true private var interactionStartMatrix:Matrix; private var _maxScaleY:Number;// = INF private var _skewBottomControl:TransformToolControl; private var interactionStart:Point; private var _livePreview:Boolean;// = true private var _scaleCursor:TransformToolCursor; private var _registrationEnabled:Boolean;// = true private var mouseOffset:Point; private var toolSprites:Sprite; private var _rotationEnabled:Boolean;// = true private var targetBounds:Rectangle; private var moveControls:Sprite; private var _registrationControl:TransformToolControl; private var _skewLeftControl:TransformToolControl; private var _scaleRightControl:TransformToolControl; private var _boundsTopRight:Point; private var _constrainRotation:Boolean;// = false private var _currentControl:TransformToolControl; private var _boundsBottomLeft:Point; private var registrationLog:Dictionary; private var _scaleTopRightControl:TransformToolControl; private var cursors:Sprite; private var skewControls:Sprite; private var innerInteractionStart:Point; private var _moveUnderObjects:Boolean;// = true public static const CURSOR_SCALE:String = "cursorScale"; public static const CURSOR_REGISTRATION:String = "cursorRegistration"; public static const SCALE_BOTTOM_LEFT:String = "scaleBottomLeft"; public static const ROTATION_BOTTOM_RIGHT:String = "rotationBottomRight"; public static const SKEW_TOP:String = "skewTop"; public static const CONTROL_MOVE:String = "controlMove"; public static const SKEW_RIGHT:String = "skewRight"; public static const SKEW_BOTTOM:String = "skewBottom"; public static const CURSOR_MOVE:String = "cursorMove"; public static const SKEW_LEFT:String = "skewLeft"; public static const CONTROL_PREFERENCE:String = "controlPreference"; public static const SCALE_TOP:String = "scaleTop"; public static const SCALE_RIGHT:String = "scaleRight"; public static const TRANSFORM_TOOL:String = "transformTool"; public static const SCALE_TOP_RIGHT:String = "scaleTopRight"; public static const NEW_TARGET:String = "newTarget"; public static const REGISTRATION:String = "registration"; public static const SCALE_TOP_LEFT:String = "scaleTopLeft"; public static const CONTROL_INIT:String = "controlInit"; public static const CURSOR_SKEW:String = "cursorSkew"; public static const CONTROL_UP:String = "controlUp"; public static const CURSOR_ROTATION:String = "cursorRotate"; public static const ROTATION_BOTTOM_LEFT:String = "rotationBottomLeft"; public static const SCALE_BOTTOM:String = "scaleBottom"; public static const TRANSFORM_TARGET:String = "transformTarget"; public static const SCALE_BOTTOM_RIGHT:String = "scaleBottomRight"; public static const CONTROL_TRANSFORM_TOOL:String = "controlTransformTool"; public static const ROTATION_TOP_RIGHT:String = "rotationTopRight"; public static const ROTATION_TOP_LEFT:String = "rotationTopLeft"; public static const CONTROL_DOWN:String = "controlDown"; public static const SCALE_LEFT:String = "scaleLeft"; public function TransformTool(){ toolInvertedMatrix = new Matrix(); innerRegistration = new Point(); registrationLog = new Dictionary(true); targetBounds = new Rectangle(); mouseLoc = new Point(); mouseOffset = new Point(); innerMouseLoc = new Point(); interactionStart = new Point(); innerInteractionStart = new Point(); interactionStartAngle = 0; interactionStartMatrix = new Matrix(); toolSprites = new Sprite(); lines = new Sprite(); moveControls = new Sprite(); registrationControls = new Sprite(); rotateControls = new Sprite(); scaleControls = new Sprite(); skewControls = new Sprite(); cursors = new Sprite(); customControls = new Sprite(); customCursors = new Sprite(); _isMask = false; _toolMatrix = new Matrix(); _globalMatrix = new Matrix(); _registration = new Point(); _livePreview = true; _raiseNewTargets = true; _moveNewTargets = false; _moveEnabled = true; _registrationEnabled = true; _rotationEnabled = true; _scaleEnabled = true; _skewEnabled = true; _outlineEnabled = true; _customControlsEnabled = true; _customCursorsEnabled = true; _cursorsEnabled = true; _rememberRegistration = true; _constrainScale = false; _constrainRotationAngle = (Math.PI / 4); _constrainRotation = false; _moveUnderObjects = true; _maintainControlForm = true; _controlSize = 8; _maxScaleX = Infinity; _maxScaleY = Infinity; _boundsTopLeft = new Point(); _boundsTop = new Point(); _boundsTopRight = new Point(); _boundsRight = new Point(); _boundsBottomRight = new Point(); _boundsBottom = new Point(); _boundsBottomLeft = new Point(); _boundsLeft = new Point(); _boundsCenter = new Point(); super(); createControls(); } public function get customControlsEnabled():Boolean{ return (_customControlsEnabled); } public function set controlSize(_arg1:Number):void{ if (_controlSize != _arg1){ _controlSize = _arg1; dispatchEvent(new Event(CONTROL_PREFERENCE)); }; } public function set moveNewTargets(_arg1:Boolean):void{ _moveNewTargets = _arg1; } public function skewYInteraction():void{ var _local1:Point; _local1 = distortOffset(new Point(innerInteractionStart.x, innerMouseLoc.y), (innerInteractionStart.x - innerRegistration.x)); _toolMatrix.a = (_toolMatrix.a + _local1.x); _toolMatrix.b = (_toolMatrix.b + _local1.y); completeInteraction(true); } private function distortOffset(_arg1:Point, _arg2:Number):Point{ var _local3:Number; var _local4:Number; _local3 = (_arg2) ? (targetBounds.width / _arg2) : 0; _local4 = (_arg2) ? (targetBounds.height / _arg2) : 0; _arg1 = interactionStartMatrix.transformPoint(_arg1).subtract(interactionStart); _arg1.x = (_arg1.x * (targetBounds.width) ? (_local3 / targetBounds.width) : 0); _arg1.y = (_arg1.y * (targetBounds.height) ? (_local4 / targetBounds.height) : 0); return (_arg1); } public function get scaleBottomLeftControl():TransformToolControl{ return (_scaleBottomLeftControl); } public function get rememberRegistration():Boolean{ return (_rememberRegistration); } private function distortAngle():Number{ var _local1:Matrix; var _local2:Point; var _local3:Point; var _local4:Point; _local1 = transform.concatenatedMatrix; _local2 = _local1.transformPoint(mouseLoc); _local3 = _local1.transformPoint(_registration); _local4 = _local2.subtract(_local3); return (Math.atan2(_local4.y, _local4.x)); } public function get skewLeftControl():TransformToolControl{ return (_skewLeftControl); } public function get constrainScale():Boolean{ return (_constrainScale); } public function get scaleRightControl():TransformToolControl{ return (_scaleRightControl); } private function updateRegistration():void{ _registration = _toolMatrix.transformPoint(innerRegistration); } public function getSkin(_arg1:String):DisplayObject{ var _local2:TransformToolInternalControl; _local2 = getControlByName(_arg1); return (_local2.skin); } public function set constrainScale(_arg1:Boolean):void{ if (_constrainScale != _arg1){ _constrainScale = _arg1; dispatchEvent(new Event(CONTROL_PREFERENCE)); }; } public function get rotationTopRightControl():TransformToolControl{ return (_rotationTopRightControl); } public function get moveEnabled():Boolean{ return (_moveEnabled); } public function scaleYInteraction():void{ var _local1:Point; _local1 = distortOffset(new Point(innerInteractionStart.x, innerMouseLoc.y), (innerInteractionStart.y - innerRegistration.y)); _toolMatrix.c = (_toolMatrix.c + _local1.x); _toolMatrix.d = (_toolMatrix.d + _local1.y); completeInteraction(true); } public function get registrationEnabled():Boolean{ return (_registrationEnabled); } public function set constrainRotation(_arg1:Boolean):void{ if (_constrainRotation != _arg1){ _constrainRotation = _arg1; dispatchEvent(new Event(CONTROL_PREFERENCE)); }; } public function set moveEnabled(_arg1:Boolean):void{ if (_moveEnabled != _arg1){ _moveEnabled = _arg1; updateControlsEnabled(); }; } public function get raiseNewTargets():Boolean{ return (_raiseNewTargets); } public function get boundsTop():Point{ return (_boundsTop.clone()); } public function get constrainRotation():Boolean{ return (_constrainRotation); } override public function toString():String{ return ((("[Transform Tool: target=" + String(_target)) + "]")); } public function get boundsRight():Point{ return (_boundsRight.clone()); } public function get rotationBottomLeftControl():TransformToolControl{ return (_rotationBottomLeftControl); } public function set isMask(_arg1:Boolean):void{ _isMask = _arg1; } public function get boundsLeft():Point{ return (_boundsLeft.clone()); } public function get customCursorsEnabled():Boolean{ return (_customCursorsEnabled); } public function set maintainControlForm(_arg1:Boolean):void{ if (_maintainControlForm != _arg1){ _maintainControlForm = _arg1; dispatchEvent(new Event(CONTROL_PREFERENCE)); }; } public function get registrationControl():TransformToolControl{ return (_registrationControl); } public function set livePreview(_arg1:Boolean):void{ _livePreview = _arg1; } public function get scaleBottomRightControl():TransformToolControl{ return (_scaleBottomRightControl); } public function get boundsTopLeft():Point{ return (_boundsTopLeft.clone()); } public function get rotationCursor():TransformToolCursor{ return (_rotationCursor); } public function set registrationEnabled(_arg1:Boolean):void{ if (_registrationEnabled != _arg1){ _registrationEnabled = _arg1; updateControlsEnabled(); }; } public function set globalMatrix(_arg1:Matrix):void{ updateMatrix(_arg1); updateRegistration(); dispatchEvent(new Event(TRANSFORM_TOOL)); } private function enforceLimits():void{ var _local1:Number; var _local2:Number; var _local3:Boolean; var _local4:Matrix; var _local5:Matrix; _local3 = false; _local4 = _toolMatrix.clone(); _local4.concat(transform.concatenatedMatrix); _local1 = Math.sqrt(((_local4.a * _local4.a) + (_local4.b * _local4.b))); if (_local1 > _maxScaleX){ _local2 = Math.atan2(_local4.b, _local4.a); _local4.a = (Math.cos(_local2) * _maxScaleX); _local4.b = (Math.sin(_local2) * _maxScaleX); _local3 = true; }; _local1 = Math.sqrt(((_local4.c * _local4.c) + (_local4.d * _local4.d))); if (_local1 > _maxScaleY){ _local2 = Math.atan2(_local4.c, _local4.d); _local4.d = (Math.cos(_local2) * _maxScaleY); _local4.c = (Math.sin(_local2) * _maxScaleY); _local3 = true; }; if (_local3){ _toolMatrix = _local4; _local5 = transform.concatenatedMatrix; _local5.invert(); _toolMatrix.concat(_local5); }; } private function raiseTarget():void{ var _local1:int; _local1 = (_target.parent.numChildren - 1); _target.parent.setChildIndex(_target, _local1); if (_target.parent == parent){ parent.setChildIndex(this, _local1); }; } public function get cursorsEnabled():Boolean{ return (_cursorsEnabled); } public function set raiseNewTargets(_arg1:Boolean):void{ _raiseNewTargets = _arg1; } public function get mouse():Point{ return (new Point(mouseX, mouseY)); } public function get outlineEnabled():Boolean{ return (_outlineEnabled); } public function skewXInteraction():void{ var _local1:Point; _local1 = distortOffset(new Point(innerMouseLoc.x, innerInteractionStart.y), (innerInteractionStart.y - innerRegistration.y)); _toolMatrix.c = (_toolMatrix.c + _local1.x); _toolMatrix.d = (_toolMatrix.d + _local1.y); completeInteraction(true); } public function get registration():Point{ return (_registration.clone()); } public function get scaleTopLeftControl():TransformToolControl{ return (_scaleTopLeftControl); } public function get outlineControl():TransformToolControl{ return (_outlineControl); } public function get moveControl():TransformToolControl{ return (_moveControl); } public function get scaleEnabled():Boolean{ return (_scaleEnabled); } private function updateControlContainer(_arg1:Sprite, _arg2:Boolean):void{ var _local3:Boolean; _local3 = toolSprites.contains(_arg1); if (_arg2){ if (_local3){ toolSprites.setChildIndex(_arg1, 0); } else { toolSprites.addChildAt(_arg1, 0); }; } else { if (_local3){ toolSprites.removeChild(_arg1); }; }; } private function setNewRegistation():void{ var _local1:Point; if (((_rememberRegistration) && ((_target in registrationLog)))){ _local1 = registrationLog[_target]; innerRegistration = registrationLog[_target]; } else { innerRegistration = new Point(0, 0); }; updateRegistration(); } public function get boundsBottomRight():Point{ return (_boundsBottomRight.clone()); } public function get moveCursor():TransformToolCursor{ return (_moveCursor); } public function removeControl(_arg1:TransformToolControl):TransformToolControl{ if (customControls.contains(_arg1)){ customControls.removeChild(_arg1); return (_arg1); }; return (null); } public function get maxScaleX():Number{ return (_maxScaleX); } public function get maxScaleY():Number{ return (_maxScaleY); } public function get skewEnabled():Boolean{ return (_skewEnabled); } private function updateBounds():void{ if (_target){ targetBounds = _target.getBounds(_target); _boundsTopLeft = _toolMatrix.transformPoint(new Point(targetBounds.left, targetBounds.top)); _boundsTopRight = _toolMatrix.transformPoint(new Point(targetBounds.right, targetBounds.top)); _boundsBottomRight = _toolMatrix.transformPoint(new Point(targetBounds.right, targetBounds.bottom)); _boundsBottomLeft = _toolMatrix.transformPoint(new Point(targetBounds.left, targetBounds.bottom)); _boundsTop = Point.interpolate(_boundsTopLeft, _boundsTopRight, 0.5); _boundsRight = Point.interpolate(_boundsTopRight, _boundsBottomRight, 0.5); _boundsBottom = Point.interpolate(_boundsBottomRight, _boundsBottomLeft, 0.5); _boundsLeft = Point.interpolate(_boundsBottomLeft, _boundsTopLeft, 0.5); _boundsCenter = Point.interpolate(_boundsTopLeft, _boundsBottomRight, 0.5); }; } private function interactionHandler(_arg1:MouseEvent):void{ updateMouse(); _toolMatrix = interactionStartMatrix.clone(); dispatchEvent(new Event(CONTROL_MOVE)); dispatchEvent(new Event(CONTROL_TRANSFORM_TOOL)); if (_livePreview){ apply(); }; _arg1.updateAfterEvent(); } public function set customCursorsEnabled(_arg1:Boolean):void{ if (_customCursorsEnabled != _arg1){ _customCursorsEnabled = _arg1; updateControlsEnabled(); dispatchEvent(new Event(CONTROL_PREFERENCE)); }; } public function scaleXInteraction():void{ var _local1:Point; _local1 = distortOffset(new Point(innerMouseLoc.x, innerInteractionStart.y), (innerInteractionStart.x - innerRegistration.x)); _toolMatrix.a = (_toolMatrix.a + _local1.x); _toolMatrix.b = (_toolMatrix.b + _local1.y); completeInteraction(true); } private function updateControlsVisible():void{ var _local1:Boolean; _local1 = contains(toolSprites); if (_target){ if (!(_local1)){ addChild(toolSprites); }; } else { if (_local1){ removeChild(toolSprites); }; }; } public function get skewCursor():TransformToolCursor{ return (_skewCursor); } public function set toolMatrix(_arg1:Matrix):void{ updateMatrix(_arg1, false); updateRegistration(); dispatchEvent(new Event(TRANSFORM_TOOL)); } public function get scaleTopRightControl():TransformToolControl{ return (_scaleTopRightControl); } public function setSkin(_arg1:String, _arg2:DisplayObject):void{ var _local3:TransformToolInternalControl; _local3 = getControlByName(_arg1); if (_local3){ _local3.skin = _arg2; }; } public function get controlSize():Number{ return (_controlSize); } private function startInteractionHandler(_arg1:MouseEvent):void{ _currentControl = (_arg1.currentTarget as TransformToolControl); if (_currentControl){ setupInteraction(); }; } public function get skewTopControl():TransformToolControl{ return (_skewTopControl); } private function completeInteraction(_arg1:Boolean=false):void{ var _local2:Point; enforceLimits(); if (_arg1){ _local2 = _registration.subtract(_toolMatrix.transformPoint(innerRegistration)); _toolMatrix.tx = (_toolMatrix.tx + _local2.x); _toolMatrix.ty = (_toolMatrix.ty + _local2.y); }; updateBounds(); } public function removeCursor(_arg1:TransformToolCursor):TransformToolCursor{ if (customCursors.contains(_arg1)){ customCursors.removeChild(_arg1); return (_arg1); }; return (null); } public function set target(_arg1:DisplayObject):void{ if (!(_arg1)){ if (_target){ _target = null; updateControlsVisible(); dispatchEvent(new Event(NEW_TARGET)); }; return; } else { if ((((((((_arg1 == _target)) || ((_arg1 == this)))) || (contains(_arg1)))) || ((((_arg1 is DisplayObjectContainer)) && ((_arg1 as DisplayObjectContainer).contains(this)))))){ return; }; _target = _arg1; updateMatrix(); setNewRegistation(); updateControlsVisible(); if (_raiseNewTargets){ raiseTarget(); }; }; if (!(_moveNewTargets)){ apply(); }; dispatchEvent(new Event(NEW_TARGET)); if (((((_moveNewTargets) && (_moveEnabled))) && (_moveControl))){ _currentControl = _moveControl; _currentControl.dispatchEvent(new MouseEvent(MouseEvent.MOUSE_DOWN)); }; } private function endInteractionHandler(_arg1:MouseEvent):void{ var _local2:Stage; if ((((_arg1.eventPhase == EventPhase.BUBBLING_PHASE)) || (!((_arg1.currentTarget is Stage))))){ return; }; if (!(_livePreview)){ apply(); }; _local2 = (_arg1.currentTarget as Stage); _local2.removeEventListener(MouseEvent.MOUSE_MOVE, interactionHandler); _local2.removeEventListener(MouseEvent.MOUSE_UP, endInteractionHandler, false); _local2.removeEventListener(MouseEvent.MOUSE_UP, endInteractionHandler, true); dispatchEvent(new Event(CONTROL_UP)); _currentControl = null; } public function set scaleEnabled(_arg1:Boolean):void{ if (_scaleEnabled != _arg1){ _scaleEnabled = _arg1; updateControlsEnabled(); }; } public function set moveUnderObjects(_arg1:Boolean):void{ if (_moveUnderObjects != _arg1){ _moveUnderObjects = _arg1; dispatchEvent(new Event(CONTROL_PREFERENCE)); }; } public function get isMask():Boolean{ return (_isMask); } public function get scaleTopControl():TransformToolControl{ return (_scaleTopControl); } public function get livePreview():Boolean{ return (_livePreview); } public function get maintainControlForm():Boolean{ return (_maintainControlForm); } public function get globalMatrix():Matrix{ var _local1:Matrix; _local1 = _toolMatrix.clone(); _local1.concat(transform.concatenatedMatrix); return (_local1); } public function set outlineEnabled(_arg1:Boolean):void{ if (_outlineEnabled != _arg1){ _outlineEnabled = _arg1; updateControlsEnabled(); }; } public function set cursorsEnabled(_arg1:Boolean):void{ if (_cursorsEnabled != _arg1){ _cursorsEnabled = _arg1; updateControlsEnabled(); }; } private function setupInteraction():void{ updateMatrix(); apply(); dispatchEvent(new Event(CONTROL_DOWN)); mouseOffset = (((_currentControl) && (_currentControl.referencePoint))) ? _currentControl.referencePoint.subtract(new Point(mouseX, mouseY)) : new Point(0, 0); updateMouse(); interactionStart = mouseLoc.clone(); innerInteractionStart = innerMouseLoc.clone(); interactionStartMatrix = _toolMatrix.clone(); interactionStartAngle = distortAngle(); if (stage){ stage.addEventListener(MouseEvent.MOUSE_MOVE, interactionHandler); stage.addEventListener(MouseEvent.MOUSE_UP, endInteractionHandler, false); stage.addEventListener(MouseEvent.MOUSE_UP, endInteractionHandler, true); }; } public function addCursor(_arg1:TransformToolCursor):void{ addToolControl(customCursors, _arg1); } public function get boundsBottom():Point{ return (_boundsBottom.clone()); } private function updateMouse():void{ mouseLoc = new Point(mouseX, mouseY).add(mouseOffset); innerMouseLoc = toolInvertedMatrix.transformPoint(mouseLoc); } private function addToolControl(_arg1:Sprite, _arg2:TransformToolControl, _arg3:Boolean=true):void{ _arg2.transformTool = this; if (_arg3){ _arg2.addEventListener(MouseEvent.MOUSE_DOWN, startInteractionHandler); }; _arg1.addChild(_arg2); _arg2.dispatchEvent(new Event(CONTROL_INIT)); } public function get boundsCenter():Point{ return (_boundsCenter.clone()); } public function get scaleCursor():TransformToolCursor{ return (_scaleCursor); } public function get boundsBottomLeft():Point{ return (_boundsBottomLeft.clone()); } public function get registrationCursor():TransformToolCursor{ return (_registrationCursor); } public function draw():void{ updateMatrix(); dispatchEvent(new Event(TRANSFORM_TOOL)); } public function set registration(_arg1:Point):void{ _registration = _arg1.clone(); innerRegistration = toolInvertedMatrix.transformPoint(_registration); if (_rememberRegistration){ registrationLog[_target] = innerRegistration; }; dispatchEvent(new Event(TRANSFORM_TOOL)); } public function apply():void{ var _local1:Matrix; var _local2:Matrix; if (_target){ _local1 = _toolMatrix.clone(); _local1.concat(transform.concatenatedMatrix); if (_target.parent){ _local2 = target.parent.transform.concatenatedMatrix; _local2.invert(); _local1.concat(_local2); }; _target.transform.matrix = _local1; dispatchEvent(new Event(TRANSFORM_TARGET)); }; } public function get toolMatrix():Matrix{ return (_toolMatrix.clone()); } public function set constrainRotationAngle(_arg1:Number):void{ var _local2:Number; _local2 = ((_arg1 * Math.PI) / 180); if (_constrainRotationAngle != _local2){ _constrainRotationAngle = _local2; dispatchEvent(new Event(CONTROL_PREFERENCE)); }; } public function addControl(_arg1:TransformToolControl):void{ addToolControl(customControls, _arg1); } public function get scaleBottomControl():TransformToolControl{ return (_scaleBottomControl); } private function getControlByName(_arg1:String):TransformToolInternalControl{ var _local2:TransformToolInternalControl; var _local3:Array; var _local4:int; _local3 = new Array(skewControls, registrationControls, cursors, rotateControls, scaleControls); _local4 = _local3.length; while (((_local4--) && ((_local2 == null)))) { _local2 = (_local3[_local4].getChildByName(_arg1) as TransformToolInternalControl); }; return (_local2); } public function get target():DisplayObject{ return (_target); } public function get rotationBottomRightControl():TransformToolControl{ return (_rotationBottomRightControl); } public function scaleBothInteraction():void{ var _local1:Point; var _local2:Point; var _local3:Point; var _local4:Point; var _local5:Point; var _local6:*; var _local7:*; _local1 = innerMouseLoc.clone(); if (_constrainScale){ _local4 = innerMouseLoc.subtract(innerInteractionStart); _local5 = innerInteractionStart.subtract(innerRegistration); _local6 = (_local5.x) ? (_local4.x / _local5.x) : 0; _local7 = (_local5.y) ? (_local4.y / _local5.y) : 0; if (_local6 > _local7){ _local1.x = (innerInteractionStart.x + (_local5.x * _local7)); } else { _local1.y = (innerInteractionStart.y + (_local5.y * _local6)); }; }; _local2 = distortOffset(new Point(_local1.x, innerInteractionStart.y), (innerInteractionStart.x - innerRegistration.x)); _local3 = distortOffset(new Point(innerInteractionStart.x, _local1.y), (innerInteractionStart.y - innerRegistration.y)); _toolMatrix.a = (_toolMatrix.a + _local2.x); _toolMatrix.b = (_toolMatrix.b + _local2.y); _toolMatrix.c = (_toolMatrix.c + _local3.x); _toolMatrix.d = (_toolMatrix.d + _local3.y); completeInteraction(true); } public function registrationInteraction():void{ _registration.x = mouseLoc.x; _registration.y = mouseLoc.y; innerRegistration = toolInvertedMatrix.transformPoint(_registration); if (_rememberRegistration){ registrationLog[_target] = innerRegistration; }; completeInteraction(); } private function updateControlsEnabled():void{ updateControlContainer(customCursors, _customCursorsEnabled); updateControlContainer(cursors, _cursorsEnabled); updateControlContainer(customControls, _customControlsEnabled); updateControlContainer(registrationControls, _registrationEnabled); updateControlContainer(scaleControls, _scaleEnabled); updateControlContainer(skewControls, _skewEnabled); updateControlContainer(moveControls, _moveEnabled); updateControlContainer(rotateControls, _rotationEnabled); updateControlContainer(lines, _outlineEnabled); } public function get moveUnderObjects():Boolean{ return (_moveUnderObjects); } public function get currentControl():TransformToolControl{ return (_currentControl); } public function set skewEnabled(_arg1:Boolean):void{ if (_skewEnabled != _arg1){ _skewEnabled = _arg1; updateControlsEnabled(); }; } public function set maxScaleX(_arg1:Number):void{ _maxScaleX = _arg1; } public function get constrainRotationAngle():Number{ return (((_constrainRotationAngle * 180) / Math.PI)); } public function moveInteraction():void{ var _local1:Point; _local1 = mouseLoc.subtract(interactionStart); _toolMatrix.tx = (_toolMatrix.tx + _local1.x); _toolMatrix.ty = (_toolMatrix.ty + _local1.y); updateRegistration(); completeInteraction(); } public function set maxScaleY(_arg1:Number):void{ _maxScaleY = _arg1; } public function get boundsTopRight():Point{ return (_boundsTopRight.clone()); } public function get scaleLeftControl():TransformToolControl{ return (_scaleLeftControl); } public function set rememberRegistration(_arg1:Boolean):void{ _rememberRegistration = _arg1; if (!(_rememberRegistration)){ registrationLog = new Dictionary(true); }; } public function set rotationEnabled(_arg1:Boolean):void{ if (_rotationEnabled != _arg1){ _rotationEnabled = _arg1; updateControlsEnabled(); }; } public function rotationInteraction():void{ var _local1:Matrix; var _local2:Matrix; var _local3:Number; _local1 = transform.concatenatedMatrix; _local2 = _local1.clone(); _local2.invert(); _toolMatrix.concat(_local1); _local3 = (distortAngle() - interactionStartAngle); if (_constrainRotation){ if (_local3 > Math.PI){ _local3 = (_local3 - (Math.PI * 2)); } else { if (_local3 < -(Math.PI)){ _local3 = (_local3 + (Math.PI * 2)); }; }; _local3 = (Math.round((_local3 / _constrainRotationAngle)) * _constrainRotationAngle); }; _toolMatrix.rotate(_local3); _toolMatrix.concat(_local2); completeInteraction(true); } public function get skewBottomControl():TransformToolControl{ return (_skewBottomControl); } private function createControls():void{ _moveControl = new TransformToolMoveShape("move", moveInteraction); _registrationControl = new TransformToolRegistrationControl(REGISTRATION, registrationInteraction, "registration"); _rotationTopLeftControl = new TransformToolRotateControl(ROTATION_TOP_LEFT, rotationInteraction, "boundsTopLeft"); _rotationTopRightControl = new TransformToolRotateControl(ROTATION_TOP_RIGHT, rotationInteraction, "boundsTopRight"); _rotationBottomRightControl = new TransformToolRotateControl(ROTATION_BOTTOM_RIGHT, rotationInteraction, "boundsBottomRight"); _rotationBottomLeftControl = new TransformToolRotateControl(ROTATION_BOTTOM_LEFT, rotationInteraction, "boundsBottomLeft"); _scaleTopLeftControl = new TransformToolScaleControl(SCALE_TOP_LEFT, scaleBothInteraction, "boundsTopLeft"); _scaleTopControl = new TransformToolScaleControl(SCALE_TOP, scaleYInteraction, "boundsTop"); _scaleTopRightControl = new TransformToolScaleControl(SCALE_TOP_RIGHT, scaleBothInteraction, "boundsTopRight"); _scaleRightControl = new TransformToolScaleControl(SCALE_RIGHT, scaleXInteraction, "boundsRight"); _scaleBottomRightControl = new TransformToolScaleControl(SCALE_BOTTOM_RIGHT, scaleBothInteraction, "boundsBottomRight"); _scaleBottomControl = new TransformToolScaleControl(SCALE_BOTTOM, scaleYInteraction, "boundsBottom"); _scaleBottomLeftControl = new TransformToolScaleControl(SCALE_BOTTOM_LEFT, scaleBothInteraction, "boundsBottomLeft"); _scaleLeftControl = new TransformToolScaleControl(SCALE_LEFT, scaleXInteraction, "boundsLeft"); _skewTopControl = new TransformToolSkewBar(SKEW_TOP, skewXInteraction, "boundsTopRight", "boundsTopLeft", "boundsTopRight"); _skewRightControl = new TransformToolSkewBar(SKEW_RIGHT, skewYInteraction, "boundsBottomRight", "boundsTopRight", "boundsBottomRight"); _skewBottomControl = new TransformToolSkewBar(SKEW_BOTTOM, skewXInteraction, "boundsBottomLeft", "boundsBottomRight", "boundsBottomLeft"); _skewLeftControl = new TransformToolSkewBar(SKEW_LEFT, skewYInteraction, "boundsTopLeft", "boundsBottomLeft", "boundsTopLeft"); _moveCursor = new TransformToolMoveCursor(); _moveCursor.addReference(_moveControl); _registrationCursor = new TransformToolRegistrationCursor(); _registrationCursor.addReference(_registrationControl); _rotationCursor = new TransformToolRotateCursor(); _rotationCursor.addReference(_rotationTopLeftControl); _rotationCursor.addReference(_rotationTopRightControl); _rotationCursor.addReference(_rotationBottomRightControl); _rotationCursor.addReference(_rotationBottomLeftControl); _scaleCursor = new TransformToolScaleCursor(); _scaleCursor.addReference(_scaleTopLeftControl); _scaleCursor.addReference(_scaleTopControl); _scaleCursor.addReference(_scaleTopRightControl); _scaleCursor.addReference(_scaleRightControl); _scaleCursor.addReference(_scaleBottomRightControl); _scaleCursor.addReference(_scaleBottomControl); _scaleCursor.addReference(_scaleBottomLeftControl); _scaleCursor.addReference(_scaleLeftControl); _skewCursor = new TransformToolSkewCursor(); _skewCursor.addReference(_skewTopControl); _skewCursor.addReference(_skewRightControl); _skewCursor.addReference(_skewBottomControl); _skewCursor.addReference(_skewLeftControl); addToolControl(moveControls, _moveControl); addToolControl(registrationControls, _registrationControl); addToolControl(rotateControls, _rotationTopLeftControl); addToolControl(rotateControls, _rotationTopRightControl); addToolControl(rotateControls, _rotationBottomRightControl); addToolControl(rotateControls, _rotationBottomLeftControl); addToolControl(scaleControls, _scaleTopControl); addToolControl(scaleControls, _scaleRightControl); addToolControl(scaleControls, _scaleBottomControl); addToolControl(scaleControls, _scaleLeftControl); addToolControl(scaleControls, _scaleTopLeftControl); addToolControl(scaleControls, _scaleTopRightControl); addToolControl(scaleControls, _scaleBottomRightControl); addToolControl(scaleControls, _scaleBottomLeftControl); addToolControl(skewControls, _skewTopControl); addToolControl(skewControls, _skewRightControl); addToolControl(skewControls, _skewBottomControl); addToolControl(skewControls, _skewLeftControl); addToolControl(lines, new TransformToolOutline("outline"), false); addToolControl(cursors, _moveCursor, false); addToolControl(cursors, _registrationCursor, false); addToolControl(cursors, _rotationCursor, false); addToolControl(cursors, _scaleCursor, false); addToolControl(cursors, _skewCursor, false); updateControlsEnabled(); } public function get rotationEnabled():Boolean{ return (_rotationEnabled); } public function get rotationTopLeftControl():TransformToolControl{ return (_rotationTopLeftControl); } private function updateMatrix(_arg1:Matrix=null, _arg2:Boolean=true):void{ var _local3:Matrix; if (_target){ _toolMatrix = (_arg1) ? _arg1.clone() : _target.transform.concatenatedMatrix.clone(); if (_arg2){ _local3 = transform.concatenatedMatrix; _local3.invert(); _toolMatrix.concat(_local3); }; enforceLimits(); toolInvertedMatrix = _toolMatrix.clone(); toolInvertedMatrix.invert(); updateBounds(); }; } public function set customControlsEnabled(_arg1:Boolean):void{ if (_customControlsEnabled != _arg1){ _customControlsEnabled = _arg1; updateControlsEnabled(); dispatchEvent(new Event(CONTROL_PREFERENCE)); }; } public function get skewRightControl():TransformToolControl{ return (_skewRightControl); } public function get moveNewTargets():Boolean{ return (_moveNewTargets); } } }//package com.senocular.display import flash.display.*; import flash.events.*; import flash.geom.*; class TransformToolInternalControl extends TransformToolControl { public var _skin:DisplayObject; public var referenceName:String; public var interactionMethod:Function; private function TransformToolInternalControl(_arg1:String, _arg2:Function=null, _arg3:String=null){ this.name = _arg1; this.interactionMethod = _arg2; this.referenceName = _arg3; addEventListener(TransformTool.CONTROL_INIT, init); } public function set skin(_arg1:DisplayObject):void{ if (((_skin) && (contains(_skin)))){ removeChild(_skin); }; _skin = _arg1; if (_skin){ addChild(_skin); }; draw(); } override public function get referencePoint():Point{ if ((referenceName in _transformTool)){ return (_transformTool[referenceName]); }; return (null); } protected function init(_arg1:Event):void{ _transformTool.addEventListener(TransformTool.NEW_TARGET, draw); _transformTool.addEventListener(TransformTool.TRANSFORM_TOOL, draw); _transformTool.addEventListener(TransformTool.CONTROL_TRANSFORM_TOOL, position); _transformTool.addEventListener(TransformTool.CONTROL_PREFERENCE, draw); _transformTool.addEventListener(TransformTool.CONTROL_MOVE, controlMove); draw(); } public function position(_arg1:Event=null):void{ var _local2:Point; _local2 = referencePoint; if (_local2){ x = _local2.x; y = _local2.y; }; } public function draw(_arg1:Event=null):void{ if (_transformTool.maintainControlForm){ counterTransform(); }; position(); } public function get skin():DisplayObject{ return (_skin); } private function controlMove(_arg1:Event):void{ if (((interactionMethod) && ((_transformTool.currentControl == this)))){ interactionMethod(); }; } } class TransformToolInternalCursor extends TransformToolCursor { public var icon:Shape; public var offset:Point; private function TransformToolInternalCursor(){ offset = new Point(); icon = new Shape(); super(); addChild(icon); offset = _mouseOffset; addEventListener(TransformTool.CONTROL_INIT, init); } override public function position(_arg1:Event=null):void{ if (parent){ x = (parent.mouseX + offset.x); y = (parent.mouseY + offset.y); }; } private function init(_arg1:Event):void{ _transformTool.addEventListener(TransformTool.NEW_TARGET, maintainTransform); _transformTool.addEventListener(TransformTool.CONTROL_PREFERENCE, maintainTransform); draw(); } protected function maintainTransform(_arg1:Event):void{ var _local2:Matrix; offset = _mouseOffset; if (_transformTool.maintainControlForm){ transform.matrix = new Matrix(); _local2 = transform.concatenatedMatrix; _local2.invert(); transform.matrix = _local2; offset = _local2.deltaTransformPoint(offset); }; updateVisible(_arg1); } public function draw():void{ icon.graphics.beginFill(0); icon.graphics.lineStyle(1, 0xFFFFFF); } protected function drawArc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Boolean=true):void{ var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:int; _local7 = (_arg5 - _arg4); _local8 = (1 + Math.floor((Math.abs(_local7) / (Math.PI / 4)))); _local9 = (_local7 / (2 * _local8)); _local10 = Math.cos(_local9); _local11 = (_local10) ? (_arg3 / _local10) : 0; if (_arg6){ icon.graphics.moveTo((_arg1 + (Math.cos(_arg4) * _arg3)), (_arg2 - (Math.sin(_arg4) * _arg3))); } else { icon.graphics.lineTo((_arg1 + (Math.cos(_arg4) * _arg3)), (_arg2 - (Math.sin(_arg4) * _arg3))); }; _local12 = 0; while (_local12 < _local8) { _arg5 = (_arg4 + _local9); _arg4 = (_arg5 + _local9); icon.graphics.curveTo((_arg1 + (Math.cos(_arg5) * _local11)), (_arg2 - (Math.sin(_arg5) * _local11)), (_arg1 + (Math.cos(_arg4) * _arg3)), (_arg2 - (Math.sin(_arg4) * _arg3))); _local12++; }; } protected function getGlobalAngle(_arg1:Point):Number{ var _local2:Matrix; _local2 = _transformTool.globalMatrix; _arg1 = _local2.deltaTransformPoint(_arg1); return ((Math.atan2(_arg1.y, _arg1.x) * (180 / Math.PI))); } } class TransformToolOutline extends TransformToolInternalControl { private function TransformToolOutline(_arg1:String){ super(_arg1); } override public function position(_arg1:Event=null):void{ draw(_arg1); } override public function draw(_arg1:Event=null):void{ var _local2:Point; var _local3:Point; var _local4:Point; var _local5:Point; _local2 = _transformTool.boundsTopLeft; _local3 = _transformTool.boundsTopRight; _local4 = _transformTool.boundsBottomRight; _local5 = _transformTool.boundsBottomLeft; graphics.clear(); graphics.lineStyle(0, 0); graphics.moveTo(_local2.x, _local2.y); graphics.lineTo(_local3.x, _local3.y); graphics.lineTo(_local4.x, _local4.y); graphics.lineTo(_local5.x, _local5.y); graphics.lineTo(_local2.x, _local2.y); } } class TransformToolMoveCursor extends TransformToolInternalCursor { private function TransformToolMoveCursor(){ } override public function draw():void{ super.draw(); icon.graphics.moveTo(1, 1); icon.graphics.lineTo(1, -2); icon.graphics.lineTo(-1, -2); icon.graphics.lineTo(2, -6); icon.graphics.lineTo(5, -2); icon.graphics.lineTo(3, -2); icon.graphics.lineTo(3, 1); icon.graphics.lineTo(6, 1); icon.graphics.lineTo(6, -1); icon.graphics.lineTo(10, 2); icon.graphics.lineTo(6, 5); icon.graphics.lineTo(6, 3); icon.graphics.lineTo(3, 3); icon.graphics.lineTo(3, 5); icon.graphics.lineTo(3, 6); icon.graphics.lineTo(5, 6); icon.graphics.lineTo(2, 10); icon.graphics.lineTo(-1, 6); icon.graphics.lineTo(1, 6); icon.graphics.lineTo(1, 5); icon.graphics.lineTo(1, 3); icon.graphics.lineTo(-2, 3); icon.graphics.lineTo(-2, 5); icon.graphics.lineTo(-6, 2); icon.graphics.lineTo(-2, -1); icon.graphics.lineTo(-2, 1); icon.graphics.lineTo(1, 1); icon.graphics.endFill(); } } class TransformToolRegistrationControl extends TransformToolInternalControl { private function TransformToolRegistrationControl(_arg1:String, _arg2:Function, _arg3:String){ super(_arg1, _arg2, _arg3); } override public function draw(_arg1:Event=null):void{ graphics.clear(); if (!(_skin)){ graphics.lineStyle(1, 0); graphics.beginFill(0xFFFFFF); graphics.drawCircle(0, 0, (_transformTool.controlSize / 2)); graphics.endFill(); }; super.draw(); } } class TransformToolRotateControl extends TransformToolInternalControl { private var locationName:String; private function TransformToolRotateControl(_arg1:String, _arg2:Function, _arg3:String){ super(_arg1, _arg2); this.locationName = _arg3; } override public function position(_arg1:Event=null):void{ var _local2:Point; if ((locationName in _transformTool)){ _local2 = _transformTool[locationName]; x = _local2.x; y = _local2.y; }; } override public function draw(_arg1:Event=null):void{ graphics.clear(); if (!(_skin)){ graphics.beginFill(0xFF, 0); graphics.drawCircle(0, 0, (_transformTool.controlSize * 2)); graphics.endFill(); }; super.draw(); } } class TransformToolSkewBar extends TransformToolInternalControl { private var locationStart:String; private var locationEnd:String; private function TransformToolSkewBar(_arg1:String, _arg2:Function, _arg3:String, _arg4:String, _arg5:String){ super(_arg1, _arg2, _arg3); this.locationStart = _arg4; this.locationEnd = _arg5; } override public function position(_arg1:Event=null):void{ var _local2:Point; var _local3:Point; var _local4:Point; if (_skin){ _local2 = _transformTool[locationStart]; _local3 = _transformTool[locationEnd]; _local4 = Point.interpolate(_local2, _local3, 0.5); x = _local4.x; y = _local4.y; } else { x = 0; y = 0; draw(_arg1); }; } override public function draw(_arg1:Event=null):void{ var _local2:Point; var _local3:Point; var _local4:Matrix; var _local5:Matrix; var _local6:Boolean; var _local7:Number; var _local8:Point; var _local9:Number; var _local10:Point; var _local11:Point; var _local12:Point; var _local13:Point; var _local14:Point; graphics.clear(); if (_skin){ super.draw(_arg1); return; }; _local2 = _transformTool[locationStart]; _local3 = _transformTool[locationEnd]; _local6 = _transformTool.maintainControlForm; if (_local6){ _local4 = transform.concatenatedMatrix; _local5 = _local4.clone(); _local5.invert(); _local2 = _local4.transformPoint(_local2); _local3 = _local4.transformPoint(_local3); }; _local7 = (_transformTool.controlSize / 2); _local8 = _local3.subtract(_local2); _local9 = (Math.atan2(_local8.y, _local8.x) - (Math.PI / 2)); _local10 = Point.polar(_local7, _local9); _local11 = _local2.add(_local10); _local12 = _local3.add(_local10); _local13 = _local3.subtract(_local10); _local14 = _local2.subtract(_local10); if (_local6){ _local11 = _local5.transformPoint(_local11); _local12 = _local5.transformPoint(_local12); _local13 = _local5.transformPoint(_local13); _local14 = _local5.transformPoint(_local14); }; graphics.beginFill(0xFF0000, 0); graphics.moveTo(_local11.x, _local11.y); graphics.lineTo(_local12.x, _local12.y); graphics.lineTo(_local13.x, _local13.y); graphics.lineTo(_local14.x, _local14.y); graphics.lineTo(_local11.x, _local11.y); graphics.endFill(); } } class TransformToolSkewCursor extends TransformToolInternalCursor { private function TransformToolSkewCursor(){ } override public function draw():void{ super.draw(); icon.graphics.moveTo(-6, -1); icon.graphics.lineTo(6, -1); icon.graphics.lineTo(6, -4); icon.graphics.lineTo(10, 1); icon.graphics.lineTo(-6, 1); icon.graphics.lineTo(-6, -1); icon.graphics.endFill(); super.draw(); icon.graphics.moveTo(10, 5); icon.graphics.lineTo(-2, 5); icon.graphics.lineTo(-2, 8); icon.graphics.lineTo(-6, 3); icon.graphics.lineTo(10, 3); icon.graphics.lineTo(10, 5); icon.graphics.endFill(); } override public function updateVisible(_arg1:Event=null):void{ var _local2:TransformToolSkewBar; super.updateVisible(_arg1); if (_arg1){ _local2 = (_arg1.target as TransformToolSkewBar); if (_local2){ switch (_local2){ case _transformTool.skewLeftControl: case _transformTool.skewRightControl: icon.rotation = getGlobalAngle(new Point(0, 100)); break; default: icon.rotation = getGlobalAngle(new Point(100, 0)); }; }; }; } } class TransformToolRegistrationCursor extends TransformToolInternalCursor { private function TransformToolRegistrationCursor(){ } override public function draw():void{ super.draw(); icon.graphics.drawCircle(0, 0, 2); icon.graphics.drawCircle(0, 0, 4); icon.graphics.endFill(); } } class TransformToolScaleCursor extends TransformToolInternalCursor { private function TransformToolScaleCursor(){ } override public function draw():void{ super.draw(); icon.graphics.moveTo(4.5, -0.5); icon.graphics.lineTo(4.5, -2.5); icon.graphics.lineTo(8.5, 0.5); icon.graphics.lineTo(4.5, 3.5); icon.graphics.lineTo(4.5, 1.5); icon.graphics.lineTo(-0.5, 1.5); icon.graphics.lineTo(-3.5, 1.5); icon.graphics.lineTo(-3.5, 3.5); icon.graphics.lineTo(-7.5, 0.5); icon.graphics.lineTo(-3.5, -2.5); icon.graphics.lineTo(-3.5, -0.5); icon.graphics.lineTo(4.5, -0.5); icon.graphics.endFill(); } override public function updateVisible(_arg1:Event=null):void{ var _local2:TransformToolScaleControl; super.updateVisible(_arg1); if (_arg1){ _local2 = (_arg1.target as TransformToolScaleControl); if (_local2){ switch (_local2){ case _transformTool.scaleTopLeftControl: case _transformTool.scaleBottomRightControl: icon.rotation = ((getGlobalAngle(new Point(0, 100)) + getGlobalAngle(new Point(100, 0))) / 2); break; case _transformTool.scaleTopRightControl: case _transformTool.scaleBottomLeftControl: icon.rotation = ((getGlobalAngle(new Point(0, -100)) + getGlobalAngle(new Point(100, 0))) / 2); break; case _transformTool.scaleTopControl: case _transformTool.scaleBottomControl: icon.rotation = getGlobalAngle(new Point(0, 100)); break; default: icon.rotation = getGlobalAngle(new Point(100, 0)); }; }; }; } } class TransformToolMoveShape extends TransformToolInternalControl { private var lastTarget:DisplayObject; private function TransformToolMoveShape(_arg1:String, _arg2:Function){ super(_arg1, _arg2); } override public function draw(_arg1:Event=null):void{ var _local2:DisplayObject; var _local3:Boolean; var _local4:TransformToolCursor; _local3 = _transformTool.moveUnderObjects; if (_local3){ hitArea = (_transformTool.target as Sprite); _local2 = null; relatedObject = this; } else { hitArea = null; _local2 = _transformTool.target; relatedObject = (_transformTool.target as InteractiveObject); }; if (lastTarget != _local2){ if (lastTarget){ lastTarget.removeEventListener(MouseEvent.MOUSE_DOWN, mouseDown, false); }; if (_local2){ _local2.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown, false, 0, true); }; _local4 = _transformTool.moveCursor; _local4.removeReference(lastTarget); _local4.addReference(_local2); lastTarget = _local2; }; } private function mouseDown(_arg1:MouseEvent):void{ dispatchEvent(new MouseEvent(MouseEvent.MOUSE_DOWN)); } } class TransformToolRotateCursor extends TransformToolInternalCursor { private function TransformToolRotateCursor(){ } override public function draw():void{ var _local1:Number; var _local2:Number; super.draw(); _local1 = Math.PI; _local2 = (-(Math.PI) / 2); drawArc(0, 0, 4, _local1, _local2); drawArc(0, 0, 6, _local2, _local1, false); icon.graphics.lineTo(-8, 0); icon.graphics.lineTo(-5, 4); icon.graphics.lineTo(-2, 0); icon.graphics.lineTo(-4, 0); icon.graphics.endFill(); } } class TransformToolScaleControl extends TransformToolInternalControl { private function TransformToolScaleControl(_arg1:String, _arg2:Function, _arg3:String){ super(_arg1, _arg2, _arg3); } override public function draw(_arg1:Event=null):void{ var _local2:*; var _local3:Number; graphics.clear(); if (!(_skin)){ graphics.lineStyle(2, 0xFFFFFF); graphics.beginFill(0); _local2 = _transformTool.controlSize; _local3 = (_local2 / 2); graphics.drawRect(-(_local3), -(_local3), _local2, _local2); graphics.endFill(); }; super.draw(); } }
Section 93
//TransformToolControl (com.senocular.display.TransformToolControl) package com.senocular.display { import flash.display.*; import flash.geom.*; public class TransformToolControl extends MovieClip { protected var _transformTool:TransformTool; protected var _referencePoint:Point; protected var _relatedObject:InteractiveObject; public function TransformToolControl(){ _relatedObject = this; } public function get referencePoint():Point{ return (_referencePoint); } public function set referencePoint(_arg1:Point):void{ _referencePoint = _arg1; } public function get transformTool():TransformTool{ return (_transformTool); } public function set transformTool(_arg1:TransformTool):void{ _transformTool = _arg1; } public function get relatedObject():InteractiveObject{ return (_relatedObject); } public function set relatedObject(_arg1:InteractiveObject):void{ _relatedObject = (_arg1) ? _arg1 : this; } public function counterTransform():void{ var _local1:Matrix; transform.matrix = new Matrix(); _local1 = transform.concatenatedMatrix; _local1.invert(); transform.matrix = _local1; } } }//package com.senocular.display
Section 94
//TransformToolCursor (com.senocular.display.TransformToolCursor) package com.senocular.display { import flash.geom.*; import flash.utils.*; import flash.display.*; import flash.events.*; public class TransformToolCursor extends TransformToolControl { protected var active:Boolean;// = false protected var contact:Boolean;// = false protected var references:Dictionary; protected var _mouseOffset:Point; public function TransformToolCursor(){ _mouseOffset = new Point(20, 20); contact = false; active = false; references = new Dictionary(true); super(); addEventListener(TransformTool.CONTROL_INIT, init); } protected function controlMouseUp(_arg1:Event):void{ if (references[_transformTool.currentControl.relatedObject]){ active = false; }; updateVisible(_arg1); } private function init(_arg1:Event):void{ _transformTool.addEventListener(TransformTool.TRANSFORM_TOOL, position, false, 0, true); _transformTool.addEventListener(TransformTool.NEW_TARGET, referenceUnset, false, 0, true); _transformTool.addEventListener(TransformTool.CONTROL_TRANSFORM_TOOL, position, false, 0, true); _transformTool.addEventListener(TransformTool.CONTROL_DOWN, controlMouseDown, false, 0, true); _transformTool.addEventListener(TransformTool.CONTROL_MOVE, controlMove, false, 0, true); _transformTool.addEventListener(TransformTool.CONTROL_UP, controlMouseUp, false, 0, true); updateVisible(_arg1); position(_arg1); } private function removeReferenceListeners(_arg1:DisplayObject):void{ _arg1.removeEventListener(MouseEvent.MOUSE_MOVE, referenceMove, false); _arg1.removeEventListener(MouseEvent.MOUSE_DOWN, referenceSet, false); _arg1.removeEventListener(MouseEvent.ROLL_OVER, referenceSet, false); _arg1.removeEventListener(MouseEvent.ROLL_OUT, referenceUnset, false); } protected function referenceSet(_arg1:Event):void{ contact = true; if (!(_transformTool.currentControl)){ updateVisible(_arg1); }; } public function position(_arg1:Event=null):void{ if (parent){ x = (parent.mouseX + mouseOffset.x); y = (parent.mouseY + mouseOffset.y); }; } public function removeReference(_arg1:DisplayObject):DisplayObject{ if (((_arg1) && (references[_arg1]))){ removeReferenceListeners(_arg1); delete references[_arg1]; return (_arg1); }; return (null); } public function set mouseOffset(_arg1:Point):void{ _mouseOffset = _arg1; } protected function controlMouseDown(_arg1:Event):void{ if (references[_transformTool.currentControl.relatedObject]){ active = true; }; updateVisible(_arg1); } public function updateVisible(_arg1:Event=null):void{ if (active){ if (!(visible)){ visible = true; }; } else { if (visible != contact){ visible = contact; }; }; position(_arg1); } public function get mouseOffset():Point{ return (_mouseOffset.clone()); } protected function referenceUnset(_arg1:Event):void{ contact = false; if (!(_transformTool.currentControl)){ updateVisible(_arg1); }; } public function addReference(_arg1:DisplayObject):void{ if (((_arg1) && (!(references[_arg1])))){ references[_arg1] = true; addReferenceListeners(_arg1); }; } private function addReferenceListeners(_arg1:DisplayObject):void{ _arg1.addEventListener(MouseEvent.MOUSE_MOVE, referenceMove, false, 0, true); _arg1.addEventListener(MouseEvent.MOUSE_DOWN, referenceSet, false, 0, true); _arg1.addEventListener(MouseEvent.ROLL_OVER, referenceSet, false, 0, true); _arg1.addEventListener(MouseEvent.ROLL_OUT, referenceUnset, false, 0, true); } protected function referenceMove(_arg1:MouseEvent):void{ position(_arg1); _arg1.updateAfterEvent(); } protected function controlMove(_arg1:Event):void{ if (references[_transformTool.currentControl.relatedObject]){ position(_arg1); }; } } }//package com.senocular.display
Section 95
//MusicManager (com.tanoku.sonido.MusicManager) package com.tanoku.sonido { import flash.utils.*; import flash.media.*; import flash.net.*; import gs.*; public class MusicManager { private var _soundsDict:Dictionary; private var _sounds:Array; public var Activo:Boolean;// = true private static var _instance:MusicManager; private static var _allowInstance:Boolean; public function MusicManager(){ Activo = true; super(); this._soundsDict = new Dictionary(true); this._sounds = new Array(); if (!(MusicManager._allowInstance)){ throw (new Error("Error: Use MusicManager.getInstance() instead of the new keyword.")); }; } public function fadeSound(_arg1:String, _arg2:Number=0, _arg3:Number=1):void{ var _local4:SoundChannel; _local4 = this._soundsDict[_arg1].channel; TweenLite.to(_local4, _arg3, {volume:_arg2}); } public function get sounds():Array{ return (this._sounds); } public function Mute():void{ Activo = !(Activo); if (Activo){ } else { stopAllSounds(); }; } public function getSoundDuration(_arg1:String):Number{ return (this._soundsDict[_arg1].sound.length); } public function setSoundVolume(_arg1:String, _arg2:Number):void{ var _local3:Object; var _local4:SoundTransform; _local3 = this._soundsDict[_arg1]; _local4 = _local3.channel.soundTransform; _local4.volume = _arg2; _local3.channel.soundTransform = _local4; } public function getSoundVolume(_arg1:String):Number{ return (this._soundsDict[_arg1].channel.soundTransform.volume); } public function addLibrarySound(_arg1, _arg2:String):Boolean{ var _local3:int; var _local4:Object; var _local5:Sound; _local3 = 0; while (_local3 < this._sounds.length) { if (this._sounds[_local3].name == _arg2){ return (false); }; _local3++; }; _local4 = new Object(); _local5 = new (_arg1); _local4.name = _arg2; _local4.sound = _local5; _local4.channel = new SoundChannel(); _local4.position = 0; _local4.paused = true; _local4.volume = 1; _local4.startTime = 0; _local4.loops = 0; _local4.pausedByAll = false; this._soundsDict[_arg2] = _local4; this._sounds.push(_local4); return (true); } public function toString():String{ return (getQualifiedClassName(this)); } public function isSoundPaused(_arg1:String):Boolean{ return (this._soundsDict[_arg1].paused); } public function removeAllSounds():void{ var _local1:int; _local1 = 0; while (_local1 < this._sounds.length) { this._sounds[_local1] = null; _local1++; }; this._sounds = new Array(); this._soundsDict = new Dictionary(true); } public function getSoundPosition(_arg1:String):Number{ return (this._soundsDict[_arg1].channel.position); } public function stopAllSounds(_arg1:Boolean=true):void{ var _local2:int; var _local3:String; _local2 = 0; while (_local2 < this._sounds.length) { _local3 = this._sounds[_local2].name; if (_arg1){ if (!(this._soundsDict[_local3].paused)){ this._soundsDict[_local3].pausedByAll = true; this.stopSound(_local3); }; } else { this.stopSound(_local3); }; _local2++; }; } public function removeSound(_arg1:String):void{ var _local2:int; _local2 = 0; while (_local2 < this._sounds.length) { if (this._sounds[_local2].name == _arg1){ this._sounds[_local2] = null; this._sounds.splice(_local2, 1); }; _local2++; }; delete this._soundsDict[_arg1]; } public function muteAllSounds():void{ var _local1:int; var _local2:String; _local1 = 0; while (_local1 < this._sounds.length) { _local2 = this._sounds[_local1].name; this.setSoundVolume(_local2, 0); _local1++; }; } public function stopSound(_arg1:String):void{ var _local2:Object; _local2 = this._soundsDict[_arg1]; _local2.paused = true; _local2.channel.stop(); _local2.position = _local2.channel.position; } public function pauseAllSounds(_arg1:Boolean=true):void{ var _local2:int; var _local3:String; _local2 = 0; while (_local2 < this._sounds.length) { _local3 = this._sounds[_local2].name; if (_arg1){ if (!(this._soundsDict[_local3].paused)){ this._soundsDict[_local3].pausedByAll = true; this.pauseSound(_local3); }; } else { this.pauseSound(_local3); }; _local2++; }; } public function playAllSounds(_arg1:Boolean=false):void{ var _local2:int; var _local3:String; _local2 = 0; while (_local2 < this._sounds.length) { _local3 = this._sounds[_local2].name; if (_arg1){ if (this._soundsDict[_local3].pausedByAll){ this._soundsDict[_local3].pausedByAll = false; this.playSound(_local3); }; } else { this.playSound(_local3); }; _local2++; }; } public function addExternalSound(_arg1:String, _arg2:String, _arg3:Number=1000, _arg4:Boolean=false):Boolean{ var _local5:int; var _local6:Object; var _local7:Sound; _local5 = 0; while (_local5 < this._sounds.length) { if (this._sounds[_local5].name == _arg2){ return (false); }; _local5++; }; _local6 = new Object(); _local7 = new Sound(new URLRequest(_arg1), new SoundLoaderContext(_arg3, _arg4)); _local6.name = _arg2; _local6.sound = _local7; _local6.channel = new SoundChannel(); _local6.position = 0; _local6.paused = true; _local6.volume = 1; _local6.startTime = 0; _local6.loops = 0; _local6.pausedByAll = false; this._soundsDict[_arg2] = _local6; this._sounds.push(_local6); return (true); } public function unmuteAllSounds():void{ var _local1:int; var _local2:String; var _local3:Object; var _local4:SoundTransform; _local1 = 0; while (_local1 < this._sounds.length) { _local2 = this._sounds[_local1].name; _local3 = this._soundsDict[_local2]; _local4 = _local3.channel.soundTransform; _local4.volume = _local3.volume; _local3.channel.soundTransform = _local4; _local1++; }; } public function isSoundPausedByAll(_arg1:String):Boolean{ return (this._soundsDict[_arg1].pausedByAll); } public function getSoundObject(_arg1:String):Sound{ return (this._soundsDict[_arg1].sound); } public function pauseSound(_arg1:String):void{ var _local2:Object; _local2 = this._soundsDict[_arg1]; _local2.paused = true; _local2.position = _local2.channel.position; _local2.channel.stop(); } public function playSound(_arg1:String, _arg2:Number=1, _arg3:Number=0, _arg4:int=0):void{ var _local5:Object; _local5 = this._soundsDict[_arg1]; _local5.volume = _arg2; if (Activo){ _local5.volume = _arg2; } else { _local5.volume = 0; }; _local5.startTime = _arg3; _local5.loops = _arg4; if (_local5.paused){ _local5.channel = _local5.sound.play(_local5.position, _local5.loops, new SoundTransform(_local5.volume)); } else { _local5.channel = _local5.sound.play(_arg3, _local5.loops, new SoundTransform(_local5.volume)); }; _local5.paused = false; } public static function getInstance():MusicManager{ if (MusicManager._instance == null){ MusicManager._allowInstance = true; MusicManager._instance = new (MusicManager); MusicManager._allowInstance = false; }; return (MusicManager._instance); } } }//package com.tanoku.sonido
Section 96
//SoundManager (com.tanoku.sonido.SoundManager) package com.tanoku.sonido { import flash.utils.*; import flash.media.*; import flash.net.*; import gs.*; public class SoundManager { private var _soundsDict:Dictionary; private var _sounds:Array; public var Activo:Boolean;// = true private static var _instance:SoundManager; private static var _allowInstance:Boolean; public function SoundManager(){ Activo = true; super(); this._soundsDict = new Dictionary(true); this._sounds = new Array(); if (!(SoundManager._allowInstance)){ throw (new Error("Error: Use SoundManager.getInstance() instead of the new keyword.")); }; } public function fadeSound(_arg1:String, _arg2:Number=0, _arg3:Number=1):void{ var _local4:SoundChannel; _local4 = this._soundsDict[_arg1].channel; TweenLite.to(_local4, _arg3, {volume:_arg2}); } public function get sounds():Array{ return (this._sounds); } public function Mute():void{ Activo = !(Activo); if (Activo){ unmuteAllSounds(); } else { muteAllSounds(); }; } public function getSoundDuration(_arg1:String):Number{ return (this._soundsDict[_arg1].sound.length); } public function setSoundVolume(_arg1:String, _arg2:Number):void{ var _local3:Object; var _local4:SoundTransform; _local3 = this._soundsDict[_arg1]; _local4 = _local3.channel.soundTransform; _local4.volume = _arg2; _local3.channel.soundTransform = _local4; } public function getSoundVolume(_arg1:String):Number{ return (this._soundsDict[_arg1].channel.soundTransform.volume); } public function addLibrarySound(_arg1, _arg2:String):Boolean{ var _local3:int; var _local4:Object; var _local5:Sound; _local3 = 0; while (_local3 < this._sounds.length) { if (this._sounds[_local3].name == _arg2){ return (false); }; _local3++; }; _local4 = new Object(); _local5 = new (_arg1); _local4.name = _arg2; _local4.sound = _local5; _local4.channel = new SoundChannel(); _local4.position = 0; _local4.paused = true; _local4.volume = 1; _local4.startTime = 0; _local4.loops = 0; _local4.pausedByAll = false; this._soundsDict[_arg2] = _local4; this._sounds.push(_local4); return (true); } public function toString():String{ return (getQualifiedClassName(this)); } public function isSoundPaused(_arg1:String):Boolean{ return (this._soundsDict[_arg1].paused); } public function removeAllSounds():void{ var _local1:int; _local1 = 0; while (_local1 < this._sounds.length) { this._sounds[_local1] = null; _local1++; }; this._sounds = new Array(); this._soundsDict = new Dictionary(true); } public function getSoundPosition(_arg1:String):Number{ return (this._soundsDict[_arg1].channel.position); } public function stopAllSounds(_arg1:Boolean=true):void{ var _local2:int; var _local3:String; _local2 = 0; while (_local2 < this._sounds.length) { _local3 = this._sounds[_local2].name; if (_arg1){ if (!(this._soundsDict[_local3].paused)){ this._soundsDict[_local3].pausedByAll = true; this.stopSound(_local3); }; } else { this.stopSound(_local3); }; _local2++; }; } public function removeSound(_arg1:String):void{ var _local2:int; _local2 = 0; while (_local2 < this._sounds.length) { if (this._sounds[_local2].name == _arg1){ this._sounds[_local2] = null; this._sounds.splice(_local2, 1); }; _local2++; }; delete this._soundsDict[_arg1]; } public function muteAllSounds():void{ var _local1:int; var _local2:String; _local1 = 0; while (_local1 < this._sounds.length) { _local2 = this._sounds[_local1].name; this.setSoundVolume(_local2, 0); _local1++; }; } public function stopSound(_arg1:String):void{ var _local2:Object; _local2 = this._soundsDict[_arg1]; _local2.paused = true; if (_local2.channel != null){ _local2.channel.stop(); _local2.position = _local2.channel.position; }; } public function pauseAllSounds(_arg1:Boolean=true):void{ var _local2:int; var _local3:String; _local2 = 0; while (_local2 < this._sounds.length) { _local3 = this._sounds[_local2].name; if (_arg1){ if (!(this._soundsDict[_local3].paused)){ this._soundsDict[_local3].pausedByAll = true; this.pauseSound(_local3); }; } else { this.pauseSound(_local3); }; _local2++; }; } public function playAllSounds(_arg1:Boolean=false):void{ var _local2:int; var _local3:String; _local2 = 0; while (_local2 < this._sounds.length) { _local3 = this._sounds[_local2].name; if (_arg1){ if (this._soundsDict[_local3].pausedByAll){ this._soundsDict[_local3].pausedByAll = false; this.playSound(_local3); }; } else { this.playSound(_local3); }; _local2++; }; } public function addExternalSound(_arg1:String, _arg2:String, _arg3:Number=1000, _arg4:Boolean=false):Boolean{ var _local5:int; var _local6:Object; var _local7:Sound; _local5 = 0; while (_local5 < this._sounds.length) { if (this._sounds[_local5].name == _arg2){ return (false); }; _local5++; }; _local6 = new Object(); _local7 = new Sound(new URLRequest(_arg1), new SoundLoaderContext(_arg3, _arg4)); _local6.name = _arg2; _local6.sound = _local7; _local6.channel = new SoundChannel(); _local6.position = 0; _local6.paused = true; _local6.volume = 1; _local6.startTime = 0; _local6.loops = 0; _local6.pausedByAll = false; this._soundsDict[_arg2] = _local6; this._sounds.push(_local6); return (true); } public function unmuteAllSounds():void{ var _local1:int; var _local2:String; var _local3:Object; var _local4:SoundTransform; _local1 = 0; while (_local1 < this._sounds.length) { _local2 = this._sounds[_local1].name; _local3 = this._soundsDict[_local2]; _local4 = _local3.channel.soundTransform; _local4.volume = 1; _local3.channel.soundTransform = _local4; _local1++; }; } public function isSoundPausedByAll(_arg1:String):Boolean{ return (this._soundsDict[_arg1].pausedByAll); } public function getSoundObject(_arg1:String):Sound{ return (this._soundsDict[_arg1].sound); } public function pauseSound(_arg1:String):void{ var _local2:Object; _local2 = this._soundsDict[_arg1]; _local2.paused = true; if (_local2.channel != null){ _local2.position = _local2.channel.position; _local2.channel.stop(); }; } public function playSound(_arg1:String, _arg2:Number=1, _arg3:Number=0, _arg4:int=0):void{ var _local5:Object; _local5 = this._soundsDict[_arg1]; if (Activo){ _local5.volume = _arg2; } else { _local5.volume = 0; }; _local5.startTime = _arg3; _local5.loops = _arg4; if (_local5.paused){ _local5.channel = _local5.sound.play(_local5.position, _local5.loops, new SoundTransform(_local5.volume)); } else { _local5.channel = _local5.sound.play(_arg3, _local5.loops, new SoundTransform(_local5.volume)); }; _local5.paused = false; } public static function getInstance():SoundManager{ if (SoundManager._instance == null){ SoundManager._allowInstance = true; SoundManager._instance = new (SoundManager); SoundManager._allowInstance = false; }; return (SoundManager._instance); } } }//package com.tanoku.sonido
Section 97
//all_time_button_545 (DummyNeverFails2_fla.all_time_button_545) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class all_time_button_545 extends MovieClip { public function all_time_button_545(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DummyNeverFails2_fla
Section 98
//bateriasanim_78 (DummyNeverFails2_fla.bateriasanim_78) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class bateriasanim_78 extends MovieClip { public function bateriasanim_78(){ addFrameScript(62, frame63); } function frame63(){ gotoAndPlay(32); } } }//package DummyNeverFails2_fla
Section 99
//boton_skins_442 (DummyNeverFails2_fla.boton_skins_442) package DummyNeverFails2_fla { import flash.display.*; public dynamic class boton_skins_442 extends MovieClip { public var lowerArmR:brazo_inf_d; public var lowerArmL:brazo_inf_i; public var upperArmL:brazo_sup_i; public var upperArmR:brazo_sup_d; public var dummy_random:MovieClip; public var torso2:torso_central; public var lowerLegL:pierna_inf_i; public var torso3:torso_inferior; public var lowerLegR:pierna_inf_d; public var torso1:torso_superior; public var upperLegR:pierna_sup_d; public var upperLegL:pierna_sup_i; public var head:cabeza; } }//package DummyNeverFails2_fla
Section 100
//credits_button_7 (DummyNeverFails2_fla.credits_button_7) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class credits_button_7 extends MovieClip { public function credits_button_7(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DummyNeverFails2_fla
Section 101
//descripcion_skin_bloqueado_596 (DummyNeverFails2_fla.descripcion_skin_bloqueado_596) package DummyNeverFails2_fla { import flash.display.*; public dynamic class descripcion_skin_bloqueado_596 extends MovieClip { public var torso:torso_superior; public var cara:cabeza; } }//package DummyNeverFails2_fla
Section 102
//descripcion_skin_desbloqueado_597 (DummyNeverFails2_fla.descripcion_skin_desbloqueado_597) package DummyNeverFails2_fla { import flash.display.*; public dynamic class descripcion_skin_desbloqueado_597 extends MovieClip { public var torso:torso_superior; public var cara:cabeza; } }//package DummyNeverFails2_fla
Section 103
//descripcion_skin_seleccionado_598 (DummyNeverFails2_fla.descripcion_skin_seleccionado_598) package DummyNeverFails2_fla { import flash.text.*; import flash.display.*; public dynamic class descripcion_skin_seleccionado_598 extends MovieClip { public var desc:TextField; public var nom:TextField; } }//package DummyNeverFails2_fla
Section 104
//Dummynames_331 (DummyNeverFails2_fla.Dummynames_331) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class Dummynames_331 extends MovieClip { public function Dummynames_331(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DummyNeverFails2_fla
Section 105
//dummyrandom_332 (DummyNeverFails2_fla.dummyrandom_332) package DummyNeverFails2_fla { import flash.display.*; public dynamic class dummyrandom_332 extends MovieClip { public var lowerArmR:MovieClip; public var lowerArmL:MovieClip; public var upperArmL:MovieClip; public var upperArmR:MovieClip; public var torso2:MovieClip; public var lowerLegL:MovieClip; public var torso3:MovieClip; public var lowerLegR:MovieClip; public var torso1:MovieClip; public var upperLegR:MovieClip; public var upperLegL:MovieClip; public var head:MovieClip; } }//package DummyNeverFails2_fla
Section 106
//editor_brush_button_519 (DummyNeverFails2_fla.editor_brush_button_519) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class editor_brush_button_519 extends MovieClip { public function editor_brush_button_519(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DummyNeverFails2_fla
Section 107
//editor_bucket_button_533 (DummyNeverFails2_fla.editor_bucket_button_533) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class editor_bucket_button_533 extends MovieClip { public function editor_bucket_button_533(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DummyNeverFails2_fla
Section 108
//Editor_Cargar_263 (DummyNeverFails2_fla.Editor_Cargar_263) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; import fl.data.*; import fl.controls.*; public dynamic class Editor_Cargar_263 extends MovieClip { public var j2; public var cargar_importar_importar:SimpleButton; public var collObj2:DataProvider; public var salir_cargar:SimpleButton; public var cargar_salir_importar:SimpleButton; public var cadena:TextField; public var cargar_borrar:SimpleButton; public var lista:List; public var cargar_cargar:SimpleButton; public var importar_cargar:SimpleButton; public var titulo:TextField; public var collProp2:Object; public var itemObj2:SimpleCollectionItem; public var collProps2:Array; public var fondo_importar:MovieClip; public var i2:int; public function Editor_Cargar_263(){ __setProp_lista_Editor_Cargar_guardar_1(); } function __setProp_lista_Editor_Cargar_guardar_1(){ try { lista["componentInspectorSetting"] = true; } catch(e:Error) { }; lista.allowMultipleSelection = false; collObj2 = new DataProvider(); collProps2 = []; i2 = 0; while (i2 < collProps2.length) { itemObj2 = new SimpleCollectionItem(); collProp2 = collProps2[i2]; for (j2 in collProp2) { itemObj2[j2] = collProp2[j2]; }; collObj2.addItem(itemObj2); i2++; }; lista.dataProvider = collObj2; lista.enabled = true; lista.horizontalLineScrollSize = 10; lista.horizontalPageScrollSize = 0; lista.horizontalScrollPolicy = "auto"; lista.verticalLineScrollSize = 4; lista.verticalPageScrollSize = 0; lista.verticalScrollPolicy = "auto"; lista.visible = true; try { lista["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package DummyNeverFails2_fla
Section 109
//editor_eraser_button_520 (DummyNeverFails2_fla.editor_eraser_button_520) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class editor_eraser_button_520 extends MovieClip { public function editor_eraser_button_520(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DummyNeverFails2_fla
Section 110
//Editor_Guardar_233 (DummyNeverFails2_fla.Editor_Guardar_233) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; import fl.data.*; import fl.controls.*; public dynamic class Editor_Guardar_233 extends MovieClip { public var j1; public var collObj1:DataProvider; public var guardar_copiar:SimpleButton; public var fondo_exportar:MovieClip; public var exportar_guardar:SimpleButton; public var guardar_salir_exportar:SimpleButton; public var cadena:TextField; public var lista:List; public var collProp1:Object; public var titulo:TextField; public var nombre:TextField; public var itemObj1:SimpleCollectionItem; public var collProps1:Array; public var salir_guardar:SimpleButton; public var i1:int; public var guardar_guardar:SimpleButton; public function Editor_Guardar_233(){ __setProp_lista_Editor_Guardar_guardar_1(); } function __setProp_lista_Editor_Guardar_guardar_1(){ try { lista["componentInspectorSetting"] = true; } catch(e:Error) { }; lista.allowMultipleSelection = false; collObj1 = new DataProvider(); collProps1 = []; i1 = 0; while (i1 < collProps1.length) { itemObj1 = new SimpleCollectionItem(); collProp1 = collProps1[i1]; for (j1 in collProp1) { itemObj1[j1] = collProp1[j1]; }; collObj1.addItem(itemObj1); i1++; }; lista.dataProvider = collObj1; lista.enabled = true; lista.horizontalLineScrollSize = 10; lista.horizontalPageScrollSize = 0; lista.horizontalScrollPolicy = "auto"; lista.verticalLineScrollSize = 4; lista.verticalPageScrollSize = 0; lista.verticalScrollPolicy = "auto"; lista.visible = true; try { lista["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package DummyNeverFails2_fla
Section 111
//editor_head_button_525 (DummyNeverFails2_fla.editor_head_button_525) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class editor_head_button_525 extends MovieClip { public function editor_head_button_525(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DummyNeverFails2_fla
Section 112
//editor_left_lower_arm_button_523 (DummyNeverFails2_fla.editor_left_lower_arm_button_523) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class editor_left_lower_arm_button_523 extends MovieClip { public function editor_left_lower_arm_button_523(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DummyNeverFails2_fla
Section 113
//editor_left_lower_leg_button_531 (DummyNeverFails2_fla.editor_left_lower_leg_button_531) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class editor_left_lower_leg_button_531 extends MovieClip { public function editor_left_lower_leg_button_531(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DummyNeverFails2_fla
Section 114
//editor_left_upper_arm_button_524 (DummyNeverFails2_fla.editor_left_upper_arm_button_524) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class editor_left_upper_arm_button_524 extends MovieClip { public function editor_left_upper_arm_button_524(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DummyNeverFails2_fla
Section 115
//editor_left_upper_leg_button_528 (DummyNeverFails2_fla.editor_left_upper_leg_button_528) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class editor_left_upper_leg_button_528 extends MovieClip { public function editor_left_upper_leg_button_528(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DummyNeverFails2_fla
Section 116
//Editor_Lienzo_179 (DummyNeverFails2_fla.Editor_Lienzo_179) package DummyNeverFails2_fla { import flash.display.*; public dynamic class Editor_Lienzo_179 extends MovieClip { public var camara:VCam_AS3_Interactive; public var bg:MovieClip; } }//package DummyNeverFails2_fla
Section 117
//editor_lower_torso_button_530 (DummyNeverFails2_fla.editor_lower_torso_button_530) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class editor_lower_torso_button_530 extends MovieClip { public function editor_lower_torso_button_530(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DummyNeverFails2_fla
Section 118
//Editor_Menu_211 (DummyNeverFails2_fla.Editor_Menu_211) package DummyNeverFails2_fla { import flash.display.*; import flash.text.*; public dynamic class Editor_Menu_211 extends MovieClip { public var musica:MovieClip; public var borrar:SimpleButton; public var tutorial:SimpleButton; public var probar:SimpleButton; public var cargar:SimpleButton; public var salir:SimpleButton; public var sfx:MovieClip; public var ayuda:SimpleButton; public var info:TextField; public var herramientas:MovieClip; public var guardar:SimpleButton; public var share:SimpleButton; } }//package DummyNeverFails2_fla
Section 119
//editor_middle_torso_button_526 (DummyNeverFails2_fla.editor_middle_torso_button_526) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class editor_middle_torso_button_526 extends MovieClip { public function editor_middle_torso_button_526(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DummyNeverFails2_fla
Section 120
//Editor_Objetos_182 (DummyNeverFails2_fla.Editor_Objetos_182) package DummyNeverFails2_fla { import flash.display.*; public dynamic class Editor_Objetos_182 extends MovieClip { public var ah:autonomo_horizontal_mc; public var av:autonomo_vertical_mc; public var ci:circulo_impulsor_mc; public var cn:circulo_negativo_mc; public var cp:circulo_positivo_mc; public var cm:circulo_moneda_mc; public var l:lanzadera_editor_mc; public var dc:dinamico_cuadrado_mc; public var de:dinamico_circulo_mc; public var bg6:MovieClip; public var bg3:MovieClip; public var bg5:MovieClip; public var me:meta_estatica_mc; public var bg7:MovieClip; public var bg8:MovieClip; public var mc:meta_cuadrada_mc; public var ee:estatico_circulo_mc; public var mr:meta_circular_mc; public var ec:estatico_cuadrado_mc; public var bg2:MovieClip; public var bg4:MovieClip; public var bg1:MovieClip; } }//package DummyNeverFails2_fla
Section 121
//editor_redo_button_508 (DummyNeverFails2_fla.editor_redo_button_508) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class editor_redo_button_508 extends MovieClip { public function editor_redo_button_508(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DummyNeverFails2_fla
Section 122
//editor_right_lower_arm_button_521 (DummyNeverFails2_fla.editor_right_lower_arm_button_521) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class editor_right_lower_arm_button_521 extends MovieClip { public function editor_right_lower_arm_button_521(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DummyNeverFails2_fla
Section 123
//editor_right_lower_leg_button_532 (DummyNeverFails2_fla.editor_right_lower_leg_button_532) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class editor_right_lower_leg_button_532 extends MovieClip { public function editor_right_lower_leg_button_532(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DummyNeverFails2_fla
Section 124
//editor_right_upper_arm_button_522 (DummyNeverFails2_fla.editor_right_upper_arm_button_522) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class editor_right_upper_arm_button_522 extends MovieClip { public function editor_right_upper_arm_button_522(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DummyNeverFails2_fla
Section 125
//editor_right_upper_leg_button_529 (DummyNeverFails2_fla.editor_right_upper_leg_button_529) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class editor_right_upper_leg_button_529 extends MovieClip { public function editor_right_upper_leg_button_529(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DummyNeverFails2_fla
Section 126
//Editor_Submit_268 (DummyNeverFails2_fla.Editor_Submit_268) package DummyNeverFails2_fla { import flash.text.*; import flash.display.*; public dynamic class Editor_Submit_268 extends MovieClip { public var e_nombre:TextField; public var submit_submit:SimpleButton; public var miniatura:MovieClip; public var titulo:TextField; public var jugador:TextField; public var nombre:TextField; public var salir_submit:SimpleButton; public var error_nombre:TextField; public var e_jugador:TextField; } }//package DummyNeverFails2_fla
Section 127
//editor_undo_button_505 (DummyNeverFails2_fla.editor_undo_button_505) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class editor_undo_button_505 extends MovieClip { public function editor_undo_button_505(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DummyNeverFails2_fla
Section 128
//editor_upper_torso_button_527 (DummyNeverFails2_fla.editor_upper_torso_button_527) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class editor_upper_torso_button_527 extends MovieClip { public function editor_upper_torso_button_527(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DummyNeverFails2_fla
Section 129
//fondo_43 (DummyNeverFails2_fla.fondo_43) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class fondo_43 extends MovieClip { public function fondo_43(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DummyNeverFails2_fla
Section 130
//fondo_galeria_dummy_334 (DummyNeverFails2_fla.fondo_galeria_dummy_334) package DummyNeverFails2_fla { import flash.display.*; public dynamic class fondo_galeria_dummy_334 extends MovieClip { public var miniatura_dummy:MovieClip; } }//package DummyNeverFails2_fla
Section 131
//FPS_600 (DummyNeverFails2_fla.FPS_600) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class FPS_600 extends MovieClip { public var prevSecondTime:Number; public var secondTime:Number; public var tf:TextField; public var frames:Number; public var time:Number; public var frameTime:Number; public var fps:String; public var prevFrameTime:Number; public var iBar:MovieClip; public function FPS_600(){ addFrameScript(0, frame1, 1, frame2); } function frame1(){ prevFrameTime = getTimer(); prevSecondTime = getTimer(); frames = 0; fps = "..."; } function frame2(){ stop(); this.addEventListener(Event.ENTER_FRAME, onEnterFrame); } public function onEnterFrame(_arg1:Event):void{ time = getTimer(); frameTime = (time - prevFrameTime); secondTime = (time - prevSecondTime); if (secondTime >= 1000){ fps = frames.toString(); frames = 0; prevSecondTime = time; } else { frames++; }; prevFrameTime = time; tf.text = (((fps + " FPS / ") + frameTime) + " MS"); iBar.scaleX = (iBar.scaleX - ((iBar.scaleX - (frameTime / 10)) / 5)); parent.setChildIndex(this, (parent.numChildren - 1)); } } }//package DummyNeverFails2_fla
Section 132
//hiscores_button_17 (DummyNeverFails2_fla.hiscores_button_17) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class hiscores_button_17 extends MovieClip { public function hiscores_button_17(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DummyNeverFails2_fla
Section 133
//humo_81 (DummyNeverFails2_fla.humo_81) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class humo_81 extends MovieClip { public function humo_81(){ addFrameScript(11, frame12); } function frame12(){ stop(); } } }//package DummyNeverFails2_fla
Section 134
//Juego_Lienzo_346 (DummyNeverFails2_fla.Juego_Lienzo_346) package DummyNeverFails2_fla { import flash.display.*; public dynamic class Juego_Lienzo_346 extends MovieClip { public var camara:VCam_AS3_Interactive; public var bg:MovieClip; } }//package DummyNeverFails2_fla
Section 135
//Juego_Menu_347 (DummyNeverFails2_fla.Juego_Menu_347) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; import fl.controls.*; public dynamic class Juego_Menu_347 extends MovieClip { public var reintentar:SimpleButton; public var logo_sponsor_siguiente:SimpleButton; public var slow:MovieClip; public var musica:MovieClip; public var sponsor:SimpleButton; public var areaGravedad:MovieClip; public var medidor:MovieClip; public var track_mc:MovieClip; public var solucion:SimpleButton; public var info2:TextField; public var info3:TextField; public var galeria:SimpleButton; public var gravedad:TextField; public var back:SimpleButton; public var logo_sponsor_ingame:SimpleButton; public var panelsiguiente:MovieClip; public var box2d:SimpleButton; public var salir:SimpleButton; public var skin:TextField; public var distancia:TextField; public var sfx:MovieClip; public var siguiente:SimpleButton; public var zero:SimpleButton; public var slider_mc:MovieClip; public var info:TextField; public var editar:SimpleButton; public var puntoGravedad:MovieClip; public var zoom:TextField; public var szoom:Slider; public var nota:MovieClip; public var normal:SimpleButton; public var masjuegos:SimpleButton; public function Juego_Menu_347(){ __setProp_szoom_Juego_Menu_ZOOM_1(); } function __setProp_szoom_Juego_Menu_ZOOM_1(){ try { szoom["componentInspectorSetting"] = true; } catch(e:Error) { }; szoom.direction = "horizontal"; szoom.enabled = true; szoom.liveDragging = true; szoom.maximum = 52; szoom.minimum = 0; szoom.snapInterval = 0; szoom.tickInterval = 1; szoom.value = 0; szoom.visible = true; try { szoom["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package DummyNeverFails2_fla
Section 136
//lanzadera_dinamica_83 (DummyNeverFails2_fla.lanzadera_dinamica_83) package DummyNeverFails2_fla { import flash.display.*; public dynamic class lanzadera_dinamica_83 extends MovieClip { public var efecto:MovieClip; } }//package DummyNeverFails2_fla
Section 137
//latest_button_542 (DummyNeverFails2_fla.latest_button_542) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class latest_button_542 extends MovieClip { public function latest_button_542(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DummyNeverFails2_fla
Section 138
//lista_rangos_botones_591 (DummyNeverFails2_fla.lista_rangos_botones_591) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class lista_rangos_botones_591 extends MovieClip { public function lista_rangos_botones_591(){ addFrameScript(1, frame2); } function frame2(){ stop(); } } }//package DummyNeverFails2_fla
Section 139
//miniatura_submit_270 (DummyNeverFails2_fla.miniatura_submit_270) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class miniatura_submit_270 extends MovieClip { public function miniatura_submit_270(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DummyNeverFails2_fla
Section 140
//miniaturas_dummies_335 (DummyNeverFails2_fla.miniaturas_dummies_335) package DummyNeverFails2_fla { import flash.display.*; public dynamic class miniaturas_dummies_335 extends MovieClip { public var lowerArmR:brazo_inf_d; public var lowerArmL:brazo_inf_i; public var upperArmL:brazo_sup_i; public var upperArmR:brazo_sup_d; public var dummy_random:MovieClip; public var torso2:torso_central; public var lowerLegL:pierna_inf_i; public var torso3:torso_inferior; public var lowerLegR:pierna_inf_d; public var torso1:torso_superior; public var upperLegR:pierna_sup_d; public var upperLegL:pierna_sup_i; public var head:cabeza; } }//package DummyNeverFails2_fla
Section 141
//miniaturas_niveles_423 (DummyNeverFails2_fla.miniaturas_niveles_423) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class miniaturas_niveles_423 extends MovieClip { public var info2:TextField; public var info3:TextField; public var info:TextField; public function miniaturas_niveles_423(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DummyNeverFails2_fla
Section 142
//moregames_button_20 (DummyNeverFails2_fla.moregames_button_20) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class moregames_button_20 extends MovieClip { public function moregames_button_20(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DummyNeverFails2_fla
Section 143
//music_button_21 (DummyNeverFails2_fla.music_button_21) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class music_button_21 extends MovieClip { public function music_button_21(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DummyNeverFails2_fla
Section 144
//my_levels_button_541 (DummyNeverFails2_fla.my_levels_button_541) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class my_levels_button_541 extends MovieClip { public function my_levels_button_541(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DummyNeverFails2_fla
Section 145
//newest_button_547 (DummyNeverFails2_fla.newest_button_547) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class newest_button_547 extends MovieClip { public function newest_button_547(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DummyNeverFails2_fla
Section 146
//painometer_348 (DummyNeverFails2_fla.painometer_348) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class painometer_348 extends MovieClip { public function painometer_348(){ addFrameScript(99, frame100); } function frame100(){ gotoAndPlay(97); } } }//package DummyNeverFails2_fla
Section 147
//panel_lista_logros_337 (DummyNeverFails2_fla.panel_lista_logros_337) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; import fl.containers.*; public dynamic class panel_lista_logros_337 extends MovieClip { public var atras:SimpleButton; public var lista:ScrollPane; public var aleatoreo:SimpleButton; public function panel_lista_logros_337(){ __setProp_lista_panel_lista_logros_lista_1(); } function __setProp_lista_panel_lista_logros_lista_1(){ try { lista["componentInspectorSetting"] = true; } catch(e:Error) { }; lista.enabled = true; lista.horizontalLineScrollSize = 4; lista.horizontalPageScrollSize = 0; lista.horizontalScrollPolicy = "off"; lista.scrollDrag = false; lista.source = ""; lista.verticalLineScrollSize = 4; lista.verticalPageScrollSize = 0; lista.verticalScrollPolicy = "auto"; lista.visible = true; try { lista["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package DummyNeverFails2_fla
Section 148
//panel_niveles_425 (DummyNeverFails2_fla.panel_niveles_425) package DummyNeverFails2_fla { import flash.display.*; public dynamic class panel_niveles_425 extends MovieClip { public var p1:MovieClip; public var p2:MovieClip; public var p3:MovieClip; public var p5:MovieClip; public var p9:MovieClip; public var p6:MovieClip; public var p7:MovieClip; public var p8:MovieClip; public var p4:MovieClip; } }//package DummyNeverFails2_fla
Section 149
//panel_version_463 (DummyNeverFails2_fla.panel_version_463) package DummyNeverFails2_fla { import flash.display.*; public dynamic class panel_version_463 extends MovieClip { public var desbloquear_todo:SimpleButton; public var borrar_partida:SimpleButton; } }//package DummyNeverFails2_fla
Section 150
//popular_button_546 (DummyNeverFails2_fla.popular_button_546) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class popular_button_546 extends MovieClip { public function popular_button_546(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DummyNeverFails2_fla
Section 151
//popupNext_360 (DummyNeverFails2_fla.popupNext_360) package DummyNeverFails2_fla { import flash.display.*; public dynamic class popupNext_360 extends MovieClip { public var online:MovieClip; public var random_online:SimpleButton; public var like_online:MovieClip; public var nota:MovieClip; } }//package DummyNeverFails2_fla
Section 152
//slider_mc_221 (DummyNeverFails2_fla.slider_mc_221) package DummyNeverFails2_fla { import flash.display.*; public dynamic class slider_mc_221 extends MovieClip { public var info_mc:MovieClip; } }//package DummyNeverFails2_fla
Section 153
//sliderInfo_mc_222 (DummyNeverFails2_fla.sliderInfo_mc_222) package DummyNeverFails2_fla { import flash.text.*; import flash.display.*; public dynamic class sliderInfo_mc_222 extends MovieClip { public var label_txt:TextField; } }//package DummyNeverFails2_fla
Section 154
//sound_button_31 (DummyNeverFails2_fla.sound_button_31) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class sound_button_31 extends MovieClip { public function sound_button_31(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DummyNeverFails2_fla
Section 155
//splash_468 (DummyNeverFails2_fla.splash_468) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class splash_468 extends MovieClip { public var lowerArmR:brazo_inf_d; public var lowerArmL:brazo_inf_i; public var upperArmL:brazo_sup_i; public var upperArmR:brazo_sup_d; public var torso2:torso_central; public var lowerLegL:pierna_inf_i; public var torso3:torso_inferior; public var lowerLegR:pierna_inf_d; public var torso1:torso_superior; public var tar; public var upperLegR:pierna_sup_d; public var upperLegL:pierna_sup_i; public var head:cabeza; public function splash_468(){ addFrameScript(89, frame90); } function frame90(){ tar = parent; tar.play(); } } }//package DummyNeverFails2_fla
Section 156
//sponsor_mc_569 (DummyNeverFails2_fla.sponsor_mc_569) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class sponsor_mc_569 extends MovieClip { public var tar; public function sponsor_mc_569(){ addFrameScript(185, frame186); } function frame186(){ tar = parent; tar.play(); } } }//package DummyNeverFails2_fla
Section 157
//tanoku_mc_562 (DummyNeverFails2_fla.tanoku_mc_562) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class tanoku_mc_562 extends MovieClip { public var tar; public function tanoku_mc_562(){ addFrameScript(117, frame118); } function frame118(){ tar = parent; tar.play(); } } }//package DummyNeverFails2_fla
Section 158
//this_week_button_544 (DummyNeverFails2_fla.this_week_button_544) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class this_week_button_544 extends MovieClip { public function this_week_button_544(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DummyNeverFails2_fla
Section 159
//today_button_543 (DummyNeverFails2_fla.today_button_543) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class today_button_543 extends MovieClip { public function today_button_543(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DummyNeverFails2_fla
Section 160
//tools_button_217 (DummyNeverFails2_fla.tools_button_217) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class tools_button_217 extends MovieClip { public function tools_button_217(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DummyNeverFails2_fla
Section 161
//torso_central_111 (DummyNeverFails2_fla.torso_central_111) package DummyNeverFails2_fla { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class torso_central_111 extends MovieClip { public function torso_central_111(){ addFrameScript(0, frame1); } function frame1(){ gotoAndStop(1); } } }//package DummyNeverFails2_fla
Section 162
//BaseScrollPane (fl.containers.BaseScrollPane) package fl.containers { import fl.controls.*; import fl.core.*; import flash.display.*; import flash.geom.*; import fl.events.*; import flash.events.*; public class BaseScrollPane extends UIComponent { protected var defaultLineScrollSize:Number;// = 4 protected var _maxHorizontalScrollPosition:Number;// = 0 protected var vScrollBar:Boolean; protected var disabledOverlay:Shape; protected var hScrollBar:Boolean; protected var availableWidth:Number; protected var _verticalPageScrollSize:Number;// = 0 protected var vOffset:Number;// = 0 protected var _verticalScrollBar:ScrollBar; protected var useFixedHorizontalScrolling:Boolean;// = false protected var contentWidth:Number;// = 0 protected var contentHeight:Number;// = 0 protected var _horizontalPageScrollSize:Number;// = 0 protected var background:DisplayObject; protected var _useBitmpScrolling:Boolean;// = false protected var contentPadding:Number;// = 0 protected var availableHeight:Number; protected var _horizontalScrollBar:ScrollBar; protected var contentScrollRect:Rectangle; protected var _horizontalScrollPolicy:String; protected var _verticalScrollPolicy:String; protected static const SCROLL_BAR_STYLES:Object = {upArrowDisabledSkin:"upArrowDisabledSkin", upArrowDownSkin:"upArrowDownSkin", upArrowOverSkin:"upArrowOverSkin", upArrowUpSkin:"upArrowUpSkin", downArrowDisabledSkin:"downArrowDisabledSkin", downArrowDownSkin:"downArrowDownSkin", downArrowOverSkin:"downArrowOverSkin", downArrowUpSkin:"downArrowUpSkin", thumbDisabledSkin:"thumbDisabledSkin", thumbDownSkin:"thumbDownSkin", thumbOverSkin:"thumbOverSkin", thumbUpSkin:"thumbUpSkin", thumbIcon:"thumbIcon", trackDisabledSkin:"trackDisabledSkin", trackDownSkin:"trackDownSkin", trackOverSkin:"trackOverSkin", trackUpSkin:"trackUpSkin", repeatDelay:"repeatDelay", repeatInterval:"repeatInterval"}; private static var defaultStyles:Object = {repeatDelay:500, repeatInterval:35, skin:"ScrollPane_upSkin", contentPadding:0, disabledAlpha:0.5}; public function BaseScrollPane(){ contentWidth = 0; contentHeight = 0; contentPadding = 0; vOffset = 0; _maxHorizontalScrollPosition = 0; _horizontalPageScrollSize = 0; _verticalPageScrollSize = 0; defaultLineScrollSize = 4; useFixedHorizontalScrolling = false; _useBitmpScrolling = false; super(); } protected function handleWheel(_arg1:MouseEvent):void{ if (((((!(enabled)) || (!(_verticalScrollBar.visible)))) || ((contentHeight <= availableHeight)))){ return; }; _verticalScrollBar.scrollPosition = (_verticalScrollBar.scrollPosition - (_arg1.delta * verticalLineScrollSize)); setVerticalScrollPosition(_verticalScrollBar.scrollPosition); dispatchEvent(new ScrollEvent(ScrollBarDirection.VERTICAL, _arg1.delta, horizontalScrollPosition)); } public function get verticalScrollPosition():Number{ return (_verticalScrollBar.scrollPosition); } protected function drawDisabledOverlay():void{ if (enabled){ if (contains(disabledOverlay)){ removeChild(disabledOverlay); }; } else { disabledOverlay.x = (disabledOverlay.y = contentPadding); disabledOverlay.width = availableWidth; disabledOverlay.height = availableHeight; disabledOverlay.alpha = (getStyleValue("disabledAlpha") as Number); addChild(disabledOverlay); }; } public function set verticalScrollPosition(_arg1:Number):void{ drawNow(); _verticalScrollBar.scrollPosition = _arg1; setVerticalScrollPosition(_verticalScrollBar.scrollPosition, false); } protected function setContentSize(_arg1:Number, _arg2:Number):void{ if ((((((contentWidth == _arg1)) || (useFixedHorizontalScrolling))) && ((contentHeight == _arg2)))){ return; }; contentWidth = _arg1; contentHeight = _arg2; invalidate(InvalidationType.SIZE); } public function get horizontalScrollPosition():Number{ return (_horizontalScrollBar.scrollPosition); } public function get horizontalScrollBar():ScrollBar{ return (_horizontalScrollBar); } override public function set enabled(_arg1:Boolean):void{ if (enabled == _arg1){ return; }; _verticalScrollBar.enabled = _arg1; _horizontalScrollBar.enabled = _arg1; super.enabled = _arg1; } public function get verticalLineScrollSize():Number{ return (_verticalScrollBar.lineScrollSize); } public function get horizontalScrollPolicy():String{ return (_horizontalScrollPolicy); } protected function calculateAvailableSize():void{ var _local1:Number; var _local2:Number; var _local3:Number; var _local4:Number; var _local5:Number; _local1 = ScrollBar.WIDTH; _local2 = (contentPadding = Number(getStyleValue("contentPadding"))); _local3 = ((height - (2 * _local2)) - vOffset); vScrollBar = (((_verticalScrollPolicy == ScrollPolicy.ON)) || ((((_verticalScrollPolicy == ScrollPolicy.AUTO)) && ((contentHeight > _local3))))); _local4 = ((width - (vScrollBar) ? _local1 : 0) - (2 * _local2)); _local5 = (useFixedHorizontalScrolling) ? _maxHorizontalScrollPosition : (contentWidth - _local4); hScrollBar = (((_horizontalScrollPolicy == ScrollPolicy.ON)) || ((((_horizontalScrollPolicy == ScrollPolicy.AUTO)) && ((_local5 > 0))))); if (hScrollBar){ _local3 = (_local3 - _local1); }; if (((((((hScrollBar) && (!(vScrollBar)))) && ((_verticalScrollPolicy == ScrollPolicy.AUTO)))) && ((contentHeight > _local3)))){ vScrollBar = true; _local4 = (_local4 - _local1); }; availableHeight = (_local3 + vOffset); availableWidth = _local4; } public function get maxVerticalScrollPosition():Number{ drawNow(); return (Math.max(0, (contentHeight - availableHeight))); } public function set horizontalScrollPosition(_arg1:Number):void{ drawNow(); _horizontalScrollBar.scrollPosition = _arg1; setHorizontalScrollPosition(_horizontalScrollBar.scrollPosition, false); } public function get horizontalLineScrollSize():Number{ return (_horizontalScrollBar.lineScrollSize); } public function set verticalPageScrollSize(_arg1:Number):void{ _verticalPageScrollSize = _arg1; invalidate(InvalidationType.SIZE); } public function get verticalScrollPolicy():String{ return (_verticalScrollPolicy); } protected function setHorizontalScrollPosition(_arg1:Number, _arg2:Boolean=false):void{ } public function get useBitmapScrolling():Boolean{ return (_useBitmpScrolling); } protected function handleScroll(_arg1:ScrollEvent):void{ if (_arg1.target == _verticalScrollBar){ setVerticalScrollPosition(_arg1.position); } else { setHorizontalScrollPosition(_arg1.position); }; } public function set verticalLineScrollSize(_arg1:Number):void{ _verticalScrollBar.lineScrollSize = _arg1; } public function get verticalScrollBar():ScrollBar{ return (_verticalScrollBar); } protected function setVerticalScrollPosition(_arg1:Number, _arg2:Boolean=false):void{ } public function set horizontalPageScrollSize(_arg1:Number):void{ _horizontalPageScrollSize = _arg1; invalidate(InvalidationType.SIZE); } override protected function draw():void{ if (isInvalid(InvalidationType.STYLES)){ setStyles(); drawBackground(); if (contentPadding != getStyleValue("contentPadding")){ invalidate(InvalidationType.SIZE, false); }; }; if (isInvalid(InvalidationType.SIZE, InvalidationType.STATE)){ drawLayout(); }; updateChildren(); super.draw(); } public function set horizontalScrollPolicy(_arg1:String):void{ _horizontalScrollPolicy = _arg1; invalidate(InvalidationType.SIZE); } override protected function configUI():void{ var _local1:Graphics; super.configUI(); contentScrollRect = new Rectangle(0, 0, 85, 85); _verticalScrollBar = new ScrollBar(); _verticalScrollBar.addEventListener(ScrollEvent.SCROLL, handleScroll, false, 0, true); _verticalScrollBar.visible = false; _verticalScrollBar.lineScrollSize = defaultLineScrollSize; addChild(_verticalScrollBar); copyStylesToChild(_verticalScrollBar, SCROLL_BAR_STYLES); _horizontalScrollBar = new ScrollBar(); _horizontalScrollBar.direction = ScrollBarDirection.HORIZONTAL; _horizontalScrollBar.addEventListener(ScrollEvent.SCROLL, handleScroll, false, 0, true); _horizontalScrollBar.visible = false; _horizontalScrollBar.lineScrollSize = defaultLineScrollSize; addChild(_horizontalScrollBar); copyStylesToChild(_horizontalScrollBar, SCROLL_BAR_STYLES); disabledOverlay = new Shape(); _local1 = disabledOverlay.graphics; _local1.beginFill(0xFFFFFF); _local1.drawRect(0, 0, width, height); _local1.endFill(); addEventListener(MouseEvent.MOUSE_WHEEL, handleWheel, false, 0, true); } protected function calculateContentWidth():void{ } public function get verticalPageScrollSize():Number{ if (isNaN(availableHeight)){ drawNow(); }; return (((((_verticalPageScrollSize == 0)) && (!(isNaN(availableHeight))))) ? availableHeight : _verticalPageScrollSize); } protected function drawLayout():void{ calculateAvailableSize(); calculateContentWidth(); background.width = width; background.height = height; if (vScrollBar){ _verticalScrollBar.visible = true; _verticalScrollBar.x = ((width - ScrollBar.WIDTH) - contentPadding); _verticalScrollBar.y = contentPadding; _verticalScrollBar.height = availableHeight; } else { _verticalScrollBar.visible = false; }; _verticalScrollBar.setScrollProperties(availableHeight, 0, (contentHeight - availableHeight), verticalPageScrollSize); setVerticalScrollPosition(_verticalScrollBar.scrollPosition, false); if (hScrollBar){ _horizontalScrollBar.visible = true; _horizontalScrollBar.x = contentPadding; _horizontalScrollBar.y = ((height - ScrollBar.WIDTH) - contentPadding); _horizontalScrollBar.width = availableWidth; } else { _horizontalScrollBar.visible = false; }; _horizontalScrollBar.setScrollProperties(availableWidth, 0, (useFixedHorizontalScrolling) ? _maxHorizontalScrollPosition : (contentWidth - availableWidth), horizontalPageScrollSize); setHorizontalScrollPosition(_horizontalScrollBar.scrollPosition, false); drawDisabledOverlay(); } protected function drawBackground():void{ var _local1:DisplayObject; _local1 = background; background = getDisplayObjectInstance(getStyleValue("skin")); background.width = width; background.height = height; addChildAt(background, 0); if (((!((_local1 == null))) && (!((_local1 == background))))){ removeChild(_local1); }; } public function set horizontalLineScrollSize(_arg1:Number):void{ _horizontalScrollBar.lineScrollSize = _arg1; } public function get horizontalPageScrollSize():Number{ if (isNaN(availableWidth)){ drawNow(); }; return (((((_horizontalPageScrollSize == 0)) && (!(isNaN(availableWidth))))) ? availableWidth : _horizontalPageScrollSize); } public function get maxHorizontalScrollPosition():Number{ drawNow(); return (Math.max(0, (contentWidth - availableWidth))); } protected function setStyles():void{ copyStylesToChild(_verticalScrollBar, SCROLL_BAR_STYLES); copyStylesToChild(_horizontalScrollBar, SCROLL_BAR_STYLES); } protected function updateChildren():void{ _verticalScrollBar.enabled = (_horizontalScrollBar.enabled = enabled); _verticalScrollBar.drawNow(); _horizontalScrollBar.drawNow(); } public function set verticalScrollPolicy(_arg1:String):void{ _verticalScrollPolicy = _arg1; invalidate(InvalidationType.SIZE); } public function set useBitmapScrolling(_arg1:Boolean):void{ _useBitmpScrolling = _arg1; invalidate(InvalidationType.STATE); } public static function getStyleDefinition():Object{ return (mergeStyles(defaultStyles, ScrollBar.getStyleDefinition())); } } }//package fl.containers
Section 163
//ScrollPane (fl.containers.ScrollPane) package fl.containers { import fl.core.*; import flash.net.*; import flash.display.*; import flash.events.*; import flash.system.*; import fl.events.*; import flash.ui.*; import fl.controls.*; import fl.managers.*; public class ScrollPane extends BaseScrollPane implements IFocusManagerComponent { protected var scrollDragHPos:Number; protected var loader:Loader; protected var yOffset:Number; protected var currentContent:Object; protected var xOffset:Number; protected var _source:Object;// = "" protected var scrollDragVPos:Number; protected var _scrollDrag:Boolean;// = false protected var contentClip:Sprite; private static var defaultStyles:Object = {upSkin:"ScrollPane_upSkin", disabledSkin:"ScrollPane_disabledSkin", focusRectSkin:null, focusRectPadding:null, contentPadding:0}; public function ScrollPane(){ _source = ""; _scrollDrag = false; super(); } public function get source():Object{ return (_source); } public function set source(_arg1:Object):void{ var _local2:*; clearContent(); if (isLivePreview){ return; }; _source = _arg1; if ((((_source == "")) || ((_source == null)))){ return; }; currentContent = getDisplayObjectInstance(_arg1); if (currentContent != null){ _local2 = contentClip.addChild((currentContent as DisplayObject)); dispatchEvent(new Event(Event.INIT)); update(); } else { load(new URLRequest(_source.toString())); }; } public function get bytesLoaded():Number{ return (((((loader == null)) || ((loader.contentLoaderInfo == null)))) ? 0 : loader.contentLoaderInfo.bytesLoaded); } protected function doDrag(_arg1:MouseEvent):void{ var _local2:*; var _local3:*; _local2 = (scrollDragVPos - (mouseY - yOffset)); _verticalScrollBar.setScrollPosition(_local2); setVerticalScrollPosition(_verticalScrollBar.scrollPosition, true); _local3 = (scrollDragHPos - (mouseX - xOffset)); _horizontalScrollBar.setScrollPosition(_local3); setHorizontalScrollPosition(_horizontalScrollBar.scrollPosition, true); } override protected function keyDownHandler(_arg1:KeyboardEvent):void{ var _local2:int; _local2 = calculateAvailableHeight(); switch (_arg1.keyCode){ case Keyboard.DOWN: verticalScrollPosition++; break; case Keyboard.UP: verticalScrollPosition--; break; case Keyboard.RIGHT: horizontalScrollPosition++; break; case Keyboard.LEFT: horizontalScrollPosition--; break; case Keyboard.END: verticalScrollPosition = maxVerticalScrollPosition; break; case Keyboard.HOME: verticalScrollPosition = 0; break; case Keyboard.PAGE_UP: verticalScrollPosition = (verticalScrollPosition - _local2); break; case Keyboard.PAGE_DOWN: verticalScrollPosition = (verticalScrollPosition + _local2); break; }; } protected function doStartDrag(_arg1:MouseEvent):void{ if (!(enabled)){ return; }; xOffset = mouseX; yOffset = mouseY; scrollDragHPos = horizontalScrollPosition; scrollDragVPos = verticalScrollPosition; stage.addEventListener(MouseEvent.MOUSE_MOVE, doDrag, false, 0, true); } public function get content():DisplayObject{ var _local1:Object; _local1 = currentContent; if ((_local1 is URLRequest)){ _local1 = loader.content; }; return ((_local1 as DisplayObject)); } public function get percentLoaded():Number{ if (loader != null){ return (Math.round(((bytesLoaded / bytesTotal) * 100))); }; return (0); } protected function endDrag(_arg1:MouseEvent):void{ stage.removeEventListener(MouseEvent.MOUSE_MOVE, doDrag); } public function update():void{ var _local1:DisplayObject; _local1 = contentClip.getChildAt(0); setContentSize(_local1.width, _local1.height); } override protected function setHorizontalScrollPosition(_arg1:Number, _arg2:Boolean=false):void{ var _local3:*; _local3 = contentClip.scrollRect; _local3.x = _arg1; contentClip.scrollRect = _local3; } public function refreshPane():void{ if ((_source is URLRequest)){ _source = _source.url; }; source = _source; } protected function passEvent(_arg1:Event):void{ dispatchEvent(_arg1); } protected function calculateAvailableHeight():Number{ var _local1:Number; _local1 = Number(getStyleValue("contentPadding")); return (((height - (_local1 * 2)) - ((((_horizontalScrollPolicy == ScrollPolicy.ON)) || ((((_horizontalScrollPolicy == ScrollPolicy.AUTO)) && ((_maxHorizontalScrollPosition > 0)))))) ? 15 : 0)); } public function load(_arg1:URLRequest, _arg2:LoaderContext=null):void{ if (_arg2 == null){ _arg2 = new LoaderContext(false, ApplicationDomain.currentDomain); }; clearContent(); initLoader(); currentContent = (_source = _arg1); loader.load(_arg1, _arg2); } override protected function handleScroll(_arg1:ScrollEvent):void{ passEvent(_arg1); super.handleScroll(_arg1); } override protected function setVerticalScrollPosition(_arg1:Number, _arg2:Boolean=false):void{ var _local3:*; _local3 = contentClip.scrollRect; _local3.y = _arg1; contentClip.scrollRect = _local3; } protected function initLoader():void{ loader = new Loader(); loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, passEvent, false, 0, true); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onContentLoad, false, 0, true); loader.contentLoaderInfo.addEventListener(Event.INIT, passEvent, false, 0, true); contentClip.addChild(loader); } override protected function draw():void{ if (isInvalid(InvalidationType.STYLES)){ drawBackground(); }; if (isInvalid(InvalidationType.STATE)){ setScrollDrag(); }; super.draw(); } override protected function configUI():void{ super.configUI(); contentClip = new Sprite(); addChild(contentClip); contentClip.scrollRect = contentScrollRect; _horizontalScrollPolicy = ScrollPolicy.AUTO; _verticalScrollPolicy = ScrollPolicy.AUTO; } public function set scrollDrag(_arg1:Boolean):void{ _scrollDrag = _arg1; invalidate(InvalidationType.STATE); } protected function clearContent():void{ if (contentClip.numChildren == 0){ return; }; contentClip.removeChildAt(0); currentContent = null; if (loader != null){ try { loader.close(); } catch(e) { }; try { loader.unload(); } catch(e) { }; loader = null; }; } override protected function drawLayout():void{ super.drawLayout(); contentScrollRect = contentClip.scrollRect; contentScrollRect.width = availableWidth; contentScrollRect.height = availableHeight; contentClip.cacheAsBitmap = useBitmapScrolling; contentClip.scrollRect = contentScrollRect; contentClip.x = (contentClip.y = contentPadding); } override protected function drawBackground():void{ var _local1:DisplayObject; _local1 = background; background = getDisplayObjectInstance(getStyleValue((enabled) ? "upSkin" : "disabledSkin")); background.width = width; background.height = height; addChildAt(background, 0); if (((!((_local1 == null))) && (!((_local1 == background))))){ removeChild(_local1); }; } public function get bytesTotal():Number{ return (((((loader == null)) || ((loader.contentLoaderInfo == null)))) ? 0 : loader.contentLoaderInfo.bytesTotal); } protected function onContentLoad(_arg1:Event):void{ var _local2:*; update(); _local2 = calculateAvailableHeight(); calculateAvailableSize(); horizontalScrollBar.setScrollProperties(availableWidth, 0, (useFixedHorizontalScrolling) ? _maxHorizontalScrollPosition : (contentWidth - availableWidth), availableWidth); verticalScrollBar.setScrollProperties(_local2, 0, (contentHeight - _local2), _local2); passEvent(_arg1); } public function get scrollDrag():Boolean{ return (_scrollDrag); } protected function setScrollDrag():void{ if (_scrollDrag){ contentClip.addEventListener(MouseEvent.MOUSE_DOWN, doStartDrag, false, 0, true); stage.addEventListener(MouseEvent.MOUSE_UP, endDrag, false, 0, true); } else { contentClip.removeEventListener(MouseEvent.MOUSE_DOWN, doStartDrag); stage.removeEventListener(MouseEvent.MOUSE_UP, endDrag); removeEventListener(MouseEvent.MOUSE_MOVE, doDrag); }; contentClip.buttonMode = _scrollDrag; } public static function getStyleDefinition():Object{ return (mergeStyles(defaultStyles, BaseScrollPane.getStyleDefinition())); } } }//package fl.containers
Section 164
//CellRenderer (fl.controls.listClasses.CellRenderer) package fl.controls.listClasses { import flash.events.*; import fl.controls.*; public class CellRenderer extends LabelButton implements ICellRenderer { protected var _data:Object; protected var _listData:ListData; private static var defaultStyles:Object = {upSkin:"CellRenderer_upSkin", downSkin:"CellRenderer_downSkin", overSkin:"CellRenderer_overSkin", disabledSkin:"CellRenderer_disabledSkin", selectedDisabledSkin:"CellRenderer_selectedDisabledSkin", selectedUpSkin:"CellRenderer_selectedUpSkin", selectedDownSkin:"CellRenderer_selectedDownSkin", selectedOverSkin:"CellRenderer_selectedOverSkin", textFormat:null, disabledTextFormat:null, embedFonts:null, textPadding:5}; public function CellRenderer():void{ toggle = true; focusEnabled = false; } override protected function toggleSelected(_arg1:MouseEvent):void{ } override public function get selected():Boolean{ return (super.selected); } public function set listData(_arg1:ListData):void{ _listData = _arg1; label = _listData.label; setStyle("icon", _listData.icon); } override public function set selected(_arg1:Boolean):void{ super.selected = _arg1; } public function set data(_arg1:Object):void{ _data = _arg1; } public function get listData():ListData{ return (_listData); } override public function setSize(_arg1:Number, _arg2:Number):void{ super.setSize(_arg1, _arg2); } override protected function drawLayout():void{ var _local1:Number; var _local2:Number; var _local3:Number; _local1 = Number(getStyleValue("textPadding")); _local2 = 0; if (icon != null){ icon.x = _local1; icon.y = Math.round(((height - icon.height) >> 1)); _local2 = (icon.width + _local1); }; if (label.length > 0){ textField.visible = true; _local3 = Math.max(0, ((width - _local2) - (_local1 * 2))); textField.width = _local3; textField.height = (textField.textHeight + 4); textField.x = (_local2 + _local1); textField.y = Math.round(((height - textField.height) >> 1)); } else { textField.visible = false; }; background.width = width; background.height = height; } public function get data():Object{ return (_data); } public static function getStyleDefinition():Object{ return (defaultStyles); } } }//package fl.controls.listClasses
Section 165
//ICellRenderer (fl.controls.listClasses.ICellRenderer) package fl.controls.listClasses { public interface ICellRenderer { function setSize(_arg1:Number, _arg2:Number):void; function get listData():ListData; function get data():Object; function setMouseState(_arg1:String):void; function set x(_arg1:Number):void; function set y(_arg1:Number):void; function set data(_arg1:Object):void; function set selected(_arg1:Boolean):void; function set listData(_arg1:ListData):void; function get selected():Boolean; } }//package fl.controls.listClasses
Section 166
//ListData (fl.controls.listClasses.ListData) package fl.controls.listClasses { import fl.core.*; public class ListData { protected var _index:uint; protected var _owner:UIComponent; protected var _label:String; protected var _icon:Object;// = null protected var _row:uint; protected var _column:uint; public function ListData(_arg1:String, _arg2:Object, _arg3:UIComponent, _arg4:uint, _arg5:uint, _arg6:uint=0){ _icon = null; super(); _label = _arg1; _icon = _arg2; _owner = _arg3; _index = _arg4; _row = _arg5; _column = _arg6; } public function get owner():UIComponent{ return (_owner); } public function get label():String{ return (_label); } public function get row():uint{ return (_row); } public function get index():uint{ return (_index); } public function get icon():Object{ return (_icon); } public function get column():uint{ return (_column); } } }//package fl.controls.listClasses
Section 167
//BaseButton (fl.controls.BaseButton) package fl.controls { import flash.utils.*; import flash.events.*; import fl.core.*; import fl.events.*; import flash.display.*; public class BaseButton extends UIComponent { protected var _selected:Boolean;// = false private var unlockedMouseState:String; protected var pressTimer:Timer; protected var mouseState:String; protected var background:DisplayObject; private var _mouseStateLocked:Boolean;// = false protected var _autoRepeat:Boolean;// = false private static var defaultStyles:Object = {upSkin:"Button_upSkin", downSkin:"Button_downSkin", overSkin:"Button_overSkin", disabledSkin:"Button_disabledSkin", selectedDisabledSkin:"Button_selectedDisabledSkin", selectedUpSkin:"Button_selectedUpSkin", selectedDownSkin:"Button_selectedDownSkin", selectedOverSkin:"Button_selectedOverSkin", focusRectSkin:null, focusRectPadding:null, repeatDelay:500, repeatInterval:35}; public function BaseButton(){ _selected = false; _autoRepeat = false; _mouseStateLocked = false; super(); buttonMode = true; mouseChildren = false; useHandCursor = false; setupMouseEvents(); setMouseState("up"); pressTimer = new Timer(1, 0); pressTimer.addEventListener(TimerEvent.TIMER, buttonDown, false, 0, true); } protected function endPress():void{ pressTimer.reset(); } public function set mouseStateLocked(_arg1:Boolean):void{ _mouseStateLocked = _arg1; if (_arg1 == false){ setMouseState(unlockedMouseState); } else { unlockedMouseState = mouseState; }; } public function get autoRepeat():Boolean{ return (_autoRepeat); } public function set autoRepeat(_arg1:Boolean):void{ _autoRepeat = _arg1; } override public function set enabled(_arg1:Boolean):void{ super.enabled = _arg1; mouseEnabled = _arg1; } public function get selected():Boolean{ return (_selected); } protected function mouseEventHandler(_arg1:MouseEvent):void{ if (_arg1.type == MouseEvent.MOUSE_DOWN){ setMouseState("down"); startPress(); } else { if ((((_arg1.type == MouseEvent.ROLL_OVER)) || ((_arg1.type == MouseEvent.MOUSE_UP)))){ setMouseState("over"); endPress(); } else { if (_arg1.type == MouseEvent.ROLL_OUT){ setMouseState("up"); endPress(); }; }; }; } public function setMouseState(_arg1:String):void{ if (_mouseStateLocked){ unlockedMouseState = _arg1; return; }; if (mouseState == _arg1){ return; }; mouseState = _arg1; invalidate(InvalidationType.STATE); } protected function startPress():void{ if (_autoRepeat){ pressTimer.delay = Number(getStyleValue("repeatDelay")); pressTimer.start(); }; dispatchEvent(new ComponentEvent(ComponentEvent.BUTTON_DOWN, true)); } protected function buttonDown(_arg1:TimerEvent):void{ if (!(_autoRepeat)){ endPress(); return; }; if (pressTimer.currentCount == 1){ pressTimer.delay = Number(getStyleValue("repeatInterval")); }; dispatchEvent(new ComponentEvent(ComponentEvent.BUTTON_DOWN, true)); } public function set selected(_arg1:Boolean):void{ if (_selected == _arg1){ return; }; _selected = _arg1; invalidate(InvalidationType.STATE); } override public function get enabled():Boolean{ return (super.enabled); } override protected function draw():void{ if (isInvalid(InvalidationType.STYLES, InvalidationType.STATE)){ drawBackground(); invalidate(InvalidationType.SIZE, false); }; if (isInvalid(InvalidationType.SIZE)){ drawLayout(); }; super.draw(); } protected function setupMouseEvents():void{ addEventListener(MouseEvent.ROLL_OVER, mouseEventHandler, false, 0, true); addEventListener(MouseEvent.MOUSE_DOWN, mouseEventHandler, false, 0, true); addEventListener(MouseEvent.MOUSE_UP, mouseEventHandler, false, 0, true); addEventListener(MouseEvent.ROLL_OUT, mouseEventHandler, false, 0, true); } protected function drawLayout():void{ background.width = width; background.height = height; } protected function drawBackground():void{ var _local1:String; var _local2:DisplayObject; _local1 = (enabled) ? mouseState : "disabled"; if (selected){ _local1 = (("selected" + _local1.substr(0, 1).toUpperCase()) + _local1.substr(1)); }; _local1 = (_local1 + "Skin"); _local2 = background; background = getDisplayObjectInstance(getStyleValue(_local1)); addChildAt(background, 0); if (((!((_local2 == null))) && (!((_local2 == background))))){ removeChild(_local2); }; } public static function getStyleDefinition():Object{ return (defaultStyles); } } }//package fl.controls
Section 168
//Button (fl.controls.Button) package fl.controls { import fl.core.*; import fl.managers.*; import flash.display.*; public class Button extends LabelButton implements IFocusManagerComponent { protected var emphasizedBorder:DisplayObject; protected var _emphasized:Boolean;// = false private static var defaultStyles:Object = {emphasizedSkin:"Button_emphasizedSkin", emphasizedPadding:2}; public static var createAccessibilityImplementation:Function; public function Button(){ _emphasized = false; super(); } override public function drawFocus(_arg1:Boolean):void{ var _local2:Number; var _local3:*; super.drawFocus(_arg1); if (_arg1){ _local2 = Number(getStyleValue("emphasizedPadding")); if ((((_local2 < 0)) || (!(_emphasized)))){ _local2 = 0; }; _local3 = getStyleValue("focusRectPadding"); _local3 = ((_local3)==null) ? 2 : _local3; _local3 = (_local3 + _local2); uiFocusRect.x = -(_local3); uiFocusRect.y = -(_local3); uiFocusRect.width = (width + (_local3 * 2)); uiFocusRect.height = (height + (_local3 * 2)); }; } public function set emphasized(_arg1:Boolean):void{ _emphasized = _arg1; invalidate(InvalidationType.STYLES); } override protected function draw():void{ if (((isInvalid(InvalidationType.STYLES)) || (isInvalid(InvalidationType.SIZE)))){ drawEmphasized(); }; super.draw(); if (emphasizedBorder != null){ setChildIndex(emphasizedBorder, (numChildren - 1)); }; } public function get emphasized():Boolean{ return (_emphasized); } override protected function initializeAccessibility():void{ if (Button.createAccessibilityImplementation != null){ Button.createAccessibilityImplementation(this); }; } protected function drawEmphasized():void{ var _local1:Object; var _local2:Number; if (emphasizedBorder != null){ removeChild(emphasizedBorder); }; emphasizedBorder = null; if (!(_emphasized)){ return; }; _local1 = getStyleValue("emphasizedSkin"); if (_local1 != null){ emphasizedBorder = getDisplayObjectInstance(_local1); }; if (emphasizedBorder != null){ addChildAt(emphasizedBorder, 0); _local2 = Number(getStyleValue("emphasizedPadding")); emphasizedBorder.x = (emphasizedBorder.y = -(_local2)); emphasizedBorder.width = (width + (_local2 * 2)); emphasizedBorder.height = (height + (_local2 * 2)); }; } public static function getStyleDefinition():Object{ return (UIComponent.mergeStyles(LabelButton.getStyleDefinition(), defaultStyles)); } } }//package fl.controls
Section 169
//ButtonLabelPlacement (fl.controls.ButtonLabelPlacement) package fl.controls { public class ButtonLabelPlacement { public static const TOP:String = "top"; public static const LEFT:String = "left"; public static const BOTTOM:String = "bottom"; public static const RIGHT:String = "right"; } }//package fl.controls
Section 170
//CheckBox (fl.controls.CheckBox) package fl.controls { import flash.display.*; public class CheckBox extends LabelButton { private static var defaultStyles:Object = {icon:null, upIcon:"CheckBox_upIcon", downIcon:"CheckBox_downIcon", overIcon:"CheckBox_overIcon", disabledIcon:"CheckBox_disabledIcon", selectedDisabledIcon:"CheckBox_selectedDisabledIcon", focusRectSkin:null, focusRectPadding:null, selectedUpIcon:"CheckBox_selectedUpIcon", selectedDownIcon:"CheckBox_selectedDownIcon", selectedOverIcon:"CheckBox_selectedOverIcon", textFormat:null, disabledTextFormat:null, embedFonts:null, textPadding:5}; public static var createAccessibilityImplementation:Function; override public function drawFocus(_arg1:Boolean):void{ var _local2:Number; super.drawFocus(_arg1); if (_arg1){ _local2 = Number(getStyleValue("focusRectPadding")); uiFocusRect.x = (background.x - _local2); uiFocusRect.y = (background.y - _local2); uiFocusRect.width = (background.width + (_local2 << 1)); uiFocusRect.height = (background.height + (_local2 << 1)); }; } override public function get autoRepeat():Boolean{ return (false); } override public function set autoRepeat(_arg1:Boolean):void{ } override public function set toggle(_arg1:Boolean):void{ throw (new Error("Warning: You cannot change a CheckBox's toggle.")); } override public function get toggle():Boolean{ return (true); } override protected function configUI():void{ var _local1:Shape; var _local2:Graphics; super.configUI(); super.toggle = true; _local1 = new Shape(); _local2 = _local1.graphics; _local2.beginFill(0, 0); _local2.drawRect(0, 0, 100, 100); _local2.endFill(); background = (_local1 as DisplayObject); addChildAt(background, 0); } override protected function drawLayout():void{ var _local1:Number; super.drawLayout(); _local1 = Number(getStyleValue("textPadding")); switch (_labelPlacement){ case ButtonLabelPlacement.RIGHT: icon.x = _local1; textField.x = (icon.x + (icon.width + _local1)); background.width = ((textField.x + textField.width) + _local1); background.height = (Math.max(textField.height, icon.height) + (_local1 * 2)); break; case ButtonLabelPlacement.LEFT: icon.x = ((width - icon.width) - _local1); textField.x = (((width - icon.width) - (_local1 * 2)) - textField.width); background.width = ((textField.width + icon.width) + (_local1 * 3)); background.height = (Math.max(textField.height, icon.height) + (_local1 * 2)); break; case ButtonLabelPlacement.TOP: case ButtonLabelPlacement.BOTTOM: background.width = (Math.max(textField.width, icon.width) + (_local1 * 2)); background.height = ((textField.height + icon.height) + (_local1 * 3)); break; }; background.x = Math.min((icon.x - _local1), (textField.x - _local1)); background.y = Math.min((icon.y - _local1), (textField.y - _local1)); } override protected function drawBackground():void{ } override protected function initializeAccessibility():void{ if (CheckBox.createAccessibilityImplementation != null){ CheckBox.createAccessibilityImplementation(this); }; } public static function getStyleDefinition():Object{ return (defaultStyles); } } }//package fl.controls
Section 171
//ColorPicker (fl.controls.ColorPicker) package fl.controls { import flash.geom.*; import fl.core.*; import fl.managers.*; import flash.events.*; import flash.display.*; import flash.text.*; import flash.ui.*; import fl.events.*; public class ColorPicker extends UIComponent implements IFocusManagerComponent { protected var paletteBG:DisplayObject; protected var customColors:Array; protected var palette:Sprite; protected var isOpen:Boolean;// = false protected var swatchButton:BaseButton; protected var selectedSwatch:Sprite; protected var textFieldBG:DisplayObject; protected var colorWell:DisplayObject; protected var rollOverColor:int;// = -1 protected var colorHash:Object; protected var swatchSelectedSkin:DisplayObject; protected var _showTextField:Boolean;// = true protected var currRowIndex:int; protected var doOpen:Boolean;// = false protected var currColIndex:int; protected var swatchMap:Array; protected var _selectedColor:uint; protected var _editable:Boolean;// = true public var textField:TextField; protected var swatches:Sprite; protected static const SWATCH_STYLES:Object = {disabledSkin:"swatchSkin", downSkin:"swatchSkin", overSkin:"swatchSkin", upSkin:"swatchSkin"}; protected static const POPUP_BUTTON_STYLES:Object = {disabledSkin:"disabledSkin", downSkin:"downSkin", overSkin:"overSkin", upSkin:"upSkin"}; public static var defaultColors:Array; private static var defaultStyles:Object = {upSkin:"ColorPicker_upSkin", disabledSkin:"ColorPicker_disabledSkin", overSkin:"ColorPicker_overSkin", downSkin:"ColorPicker_downSkin", colorWell:"ColorPicker_colorWell", swatchSkin:"ColorPicker_swatchSkin", swatchSelectedSkin:"ColorPicker_swatchSelectedSkin", swatchWidth:10, swatchHeight:10, columnCount:18, swatchPadding:1, textFieldSkin:"ColorPicker_textFieldSkin", textFieldWidth:null, textFieldHeight:null, textPadding:3, background:"ColorPicker_backgroundSkin", backgroundPadding:5, textFormat:null, focusRectSkin:null, focusRectPadding:null, embedFonts:false}; public function ColorPicker(){ rollOverColor = -1; _editable = true; _showTextField = true; isOpen = false; doOpen = false; super(); } public function set imeMode(_arg1:String):void{ _imeMode = _arg1; } protected function drawSwatchHighlight():void{ var _local1:Object; var _local2:Number; cleanUpSelected(); _local1 = getStyleValue("swatchSelectedSkin"); _local2 = (getStyleValue("swatchPadding") as Number); if (_local1 != null){ swatchSelectedSkin = getDisplayObjectInstance(_local1); swatchSelectedSkin.x = 0; swatchSelectedSkin.y = 0; swatchSelectedSkin.width = ((getStyleValue("swatchWidth") as Number) + 2); swatchSelectedSkin.height = ((getStyleValue("swatchHeight") as Number) + 2); }; } protected function setColorWellColor(_arg1:ColorTransform):void{ if (!(colorWell)){ return; }; colorWell.transform.colorTransform = _arg1; } override protected function isOurFocus(_arg1:DisplayObject):Boolean{ return ((((_arg1 == textField)) || (super.isOurFocus(_arg1)))); } public function open():void{ var _local1:IFocusManager; if (!(_enabled)){ return; }; doOpen = true; _local1 = focusManager; if (_local1){ _local1.defaultButtonEnabled = false; }; invalidate(InvalidationType.STATE); } protected function setTextEditable():void{ if (!(showTextField)){ return; }; textField.type = (editable) ? TextFieldType.INPUT : TextFieldType.DYNAMIC; textField.selectable = editable; } protected function createSwatch(_arg1:uint):Sprite{ var _local2:Sprite; var _local3:BaseButton; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Graphics; _local2 = new Sprite(); _local3 = new BaseButton(); _local3.focusEnabled = false; _local4 = (getStyleValue("swatchWidth") as Number); _local5 = (getStyleValue("swatchHeight") as Number); _local3.setSize(_local4, _local5); _local3.transform.colorTransform = new ColorTransform(0, 0, 0, 1, (_arg1 >> 16), ((_arg1 >> 8) & 0xFF), (_arg1 & 0xFF), 0); copyStylesToChild(_local3, SWATCH_STYLES); _local3.mouseEnabled = false; _local3.drawNow(); _local3.name = "color"; _local2.addChild(_local3); _local6 = (getStyleValue("swatchPadding") as Number); _local7 = _local2.graphics; _local7.beginFill(0); _local7.drawRect(-(_local6), -(_local6), (_local4 + (_local6 * 2)), (_local5 + (_local6 * 2))); _local7.endFill(); _local2.addEventListener(MouseEvent.CLICK, onSwatchClick, false, 0, true); _local2.addEventListener(MouseEvent.MOUSE_OVER, onSwatchOver, false, 0, true); _local2.addEventListener(MouseEvent.MOUSE_OUT, onSwatchOut, false, 0, true); return (_local2); } protected function onSwatchOut(_arg1:MouseEvent):void{ var _local2:ColorTransform; _local2 = _arg1.target.transform.colorTransform; dispatchEvent(new ColorPickerEvent(ColorPickerEvent.ITEM_ROLL_OUT, _local2.color)); } override protected function keyDownHandler(_arg1:KeyboardEvent):void{ var _local2:ColorTransform; var _local3:Sprite; switch (_arg1.keyCode){ case Keyboard.SHIFT: case Keyboard.CONTROL: return; }; if (_arg1.ctrlKey){ switch (_arg1.keyCode){ case Keyboard.DOWN: open(); break; case Keyboard.UP: close(); break; }; return; }; if (!(isOpen)){ switch (_arg1.keyCode){ case Keyboard.UP: case Keyboard.DOWN: case Keyboard.LEFT: case Keyboard.RIGHT: case Keyboard.SPACE: open(); return; }; }; textField.maxChars = ((((_arg1.keyCode == "#".charCodeAt(0))) || ((textField.text.indexOf("#") > -1)))) ? 7 : 6; switch (_arg1.keyCode){ case Keyboard.TAB: _local3 = findSwatch(_selectedColor); setSwatchHighlight(_local3); return; case Keyboard.HOME: currColIndex = (currRowIndex = 0); break; case Keyboard.END: currColIndex = (swatchMap[(swatchMap.length - 1)].length - 1); currRowIndex = (swatchMap.length - 1); break; case Keyboard.PAGE_DOWN: currRowIndex = (swatchMap.length - 1); break; case Keyboard.PAGE_UP: currRowIndex = 0; break; case Keyboard.ESCAPE: if (isOpen){ selectedColor = _selectedColor; }; close(); return; case Keyboard.ENTER: return; case Keyboard.UP: currRowIndex = Math.max(-1, (currRowIndex - 1)); if (currRowIndex == -1){ currRowIndex = (swatchMap.length - 1); }; break; case Keyboard.DOWN: currRowIndex = Math.min(swatchMap.length, (currRowIndex + 1)); if (currRowIndex == swatchMap.length){ currRowIndex = 0; }; break; case Keyboard.RIGHT: currColIndex = Math.min(swatchMap[currRowIndex].length, (currColIndex + 1)); if (currColIndex == swatchMap[currRowIndex].length){ currColIndex = 0; currRowIndex = Math.min(swatchMap.length, (currRowIndex + 1)); if (currRowIndex == swatchMap.length){ currRowIndex = 0; }; }; break; case Keyboard.LEFT: currColIndex = Math.max(-1, (currColIndex - 1)); if (currColIndex == -1){ currColIndex = (swatchMap[currRowIndex].length - 1); currRowIndex = Math.max(-1, (currRowIndex - 1)); if (currRowIndex == -1){ currRowIndex = (swatchMap.length - 1); }; }; break; default: return; }; _local2 = swatchMap[currRowIndex][currColIndex].getChildByName("color").transform.colorTransform; rollOverColor = _local2.color; setColorWellColor(_local2); setSwatchHighlight(swatchMap[currRowIndex][currColIndex]); setColorText(_local2.color); } public function get editable():Boolean{ return (_editable); } override protected function focusInHandler(_arg1:FocusEvent):void{ super.focusInHandler(_arg1); setIMEMode(true); } protected function onStageClick(_arg1:MouseEvent):void{ if (((!(contains((_arg1.target as DisplayObject)))) && (!(palette.contains((_arg1.target as DisplayObject)))))){ selectedColor = _selectedColor; close(); }; } protected function onSwatchOver(_arg1:MouseEvent):void{ var _local2:BaseButton; var _local3:ColorTransform; _local2 = (_arg1.target.getChildByName("color") as BaseButton); _local3 = _local2.transform.colorTransform; setColorWellColor(_local3); setSwatchHighlight((_arg1.target as Sprite)); setColorText(_local3.color); dispatchEvent(new ColorPickerEvent(ColorPickerEvent.ITEM_ROLL_OVER, _local3.color)); } override public function set enabled(_arg1:Boolean):void{ super.enabled = _arg1; if (!(_arg1)){ close(); }; swatchButton.enabled = _arg1; } override protected function keyUpHandler(_arg1:KeyboardEvent):void{ var _local2:uint; var _local3:ColorTransform; var _local4:String; var _local5:Sprite; if (!(isOpen)){ return; }; _local3 = new ColorTransform(); if (((editable) && (showTextField))){ _local4 = textField.text; if (_local4.indexOf("#") > -1){ _local4 = _local4.replace(/^\s+|\s+$/g, ""); _local4 = _local4.replace(/#/g, ""); }; _local2 = parseInt(_local4, 16); _local5 = findSwatch(_local2); setSwatchHighlight(_local5); _local3.color = _local2; setColorWellColor(_local3); } else { _local2 = rollOverColor; _local3.color = _local2; }; if (_arg1.keyCode != Keyboard.ENTER){ return; }; dispatchEvent(new ColorPickerEvent(ColorPickerEvent.ENTER, _local2)); _selectedColor = rollOverColor; setColorText(_local3.color); rollOverColor = _local3.color; dispatchEvent(new ColorPickerEvent(ColorPickerEvent.CHANGE, selectedColor)); close(); } protected function drawBG():void{ var _local1:Object; var _local2:Number; _local1 = getStyleValue("background"); if (_local1 != null){ paletteBG = (getDisplayObjectInstance(_local1) as Sprite); }; if (paletteBG == null){ return; }; _local2 = Number(getStyleValue("backgroundPadding")); paletteBG.width = (Math.max((showTextField) ? textFieldBG.width : 0, swatches.width) + (_local2 * 2)); paletteBG.height = ((swatches.y + swatches.height) + _local2); palette.addChildAt(paletteBG, 0); } protected function positionTextField():void{ var _local1:Number; var _local2:Number; if (!(showTextField)){ return; }; _local1 = (getStyleValue("backgroundPadding") as Number); _local2 = (getStyleValue("textPadding") as Number); textFieldBG.x = (paletteBG.x + _local1); textFieldBG.y = (paletteBG.y + _local1); textField.x = (textFieldBG.x + _local2); textField.y = (textFieldBG.y + _local2); } protected function setEmbedFonts():void{ var _local1:Object; _local1 = getStyleValue("embedFonts"); if (_local1 != null){ textField.embedFonts = _local1; }; } public function set showTextField(_arg1:Boolean):void{ invalidate(InvalidationType.STYLES); _showTextField = _arg1; } protected function addStageListener(_arg1:Event=null):void{ stage.addEventListener(MouseEvent.MOUSE_DOWN, onStageClick, false, 0, true); } protected function drawPalette():void{ if (isOpen){ stage.removeChild(palette); }; palette = new Sprite(); drawTextField(); drawSwatches(); drawBG(); } protected function showPalette():void{ var _local1:Sprite; if (isOpen){ positionPalette(); return; }; addEventListener(Event.ENTER_FRAME, addCloseListener, false, 0, true); stage.addChild(palette); isOpen = true; positionPalette(); dispatchEvent(new Event(Event.OPEN)); stage.focus = textField; _local1 = selectedSwatch; if (_local1 == null){ _local1 = findSwatch(_selectedColor); }; setSwatchHighlight(_local1); } public function set editable(_arg1:Boolean):void{ _editable = _arg1; invalidate(InvalidationType.STATE); } public function set colors(_arg1:Array):void{ customColors = _arg1; invalidate(InvalidationType.DATA); } protected function drawTextField():void{ var _local1:Number; var _local2:Number; var _local3:Object; var _local4:TextFormat; var _local5:TextFormat; if (!(showTextField)){ return; }; _local1 = (getStyleValue("backgroundPadding") as Number); _local2 = (getStyleValue("textPadding") as Number); textFieldBG = getDisplayObjectInstance(getStyleValue("textFieldSkin")); if (textFieldBG != null){ palette.addChild(textFieldBG); textFieldBG.x = (textFieldBG.y = _local1); }; _local3 = UIComponent.getStyleDefinition(); _local4 = (enabled) ? (_local3.defaultTextFormat as TextFormat) : (_local3.defaultDisabledTextFormat as TextFormat); textField.setTextFormat(_local4); _local5 = (getStyleValue("textFormat") as TextFormat); if (_local5 != null){ textField.setTextFormat(_local5); } else { _local5 = _local4; }; textField.defaultTextFormat = _local5; setEmbedFonts(); textField.restrict = "A-Fa-f0-9#"; textField.maxChars = 6; palette.addChild(textField); textField.text = " #888888 "; textField.height = (textField.textHeight + 3); textField.width = (textField.textWidth + 3); textField.text = ""; textField.x = (textField.y = (_local1 + _local2)); textFieldBG.width = (textField.width + (_local2 * 2)); textFieldBG.height = (textField.height + (_local2 * 2)); setTextEditable(); } protected function setColorText(_arg1:uint):void{ if (textField == null){ return; }; textField.text = ("#" + colorToString(_arg1)); } protected function colorToString(_arg1:uint):String{ var _local2:String; _local2 = _arg1.toString(16); while (_local2.length < 6) { _local2 = ("0" + _local2); }; return (_local2); } public function get imeMode():String{ return (_imeMode); } public function set selectedColor(_arg1:uint):void{ var _local2:ColorTransform; if (!(_enabled)){ return; }; _selectedColor = _arg1; rollOverColor = -1; currColIndex = (currRowIndex = 0); _local2 = new ColorTransform(); _local2.color = _arg1; setColorWellColor(_local2); invalidate(InvalidationType.DATA); } override protected function focusOutHandler(_arg1:FocusEvent):void{ if (_arg1.relatedObject == textField){ setFocus(); return; }; if (isOpen){ close(); }; super.focusOutHandler(_arg1); setIMEMode(false); } protected function onPopupButtonClick(_arg1:MouseEvent):void{ if (isOpen){ close(); } else { open(); }; } protected function positionPalette():void{ var _local1:Point; var _local2:Number; _local1 = swatchButton.localToGlobal(new Point(0, 0)); _local2 = (getStyleValue("backgroundPadding") as Number); if ((_local1.x + palette.width) > stage.stageWidth){ palette.x = ((_local1.x - palette.width) << 0); } else { palette.x = (((_local1.x + swatchButton.width) + _local2) << 0); }; palette.y = (Math.max(0, Math.min(_local1.y, (stage.stageHeight - palette.height))) << 0); } public function get hexValue():String{ if (colorWell == null){ return (colorToString(0)); }; return (colorToString(colorWell.transform.colorTransform.color)); } override public function get enabled():Boolean{ return (super.enabled); } protected function setSwatchHighlight(_arg1:Sprite):void{ var _local2:Number; var _local3:*; if (_arg1 == null){ if (palette.contains(swatchSelectedSkin)){ palette.removeChild(swatchSelectedSkin); }; return; } else { if (((!(palette.contains(swatchSelectedSkin))) && ((colors.length > 0)))){ palette.addChild(swatchSelectedSkin); } else { if (!(colors.length)){ return; }; }; }; _local2 = (getStyleValue("swatchPadding") as Number); palette.setChildIndex(swatchSelectedSkin, (palette.numChildren - 1)); swatchSelectedSkin.x = ((swatches.x + _arg1.x) - 1); swatchSelectedSkin.y = ((swatches.y + _arg1.y) - 1); _local3 = _arg1.getChildByName("color").transform.colorTransform.color; currColIndex = colorHash[_local3].col; currRowIndex = colorHash[_local3].row; } protected function onSwatchClick(_arg1:MouseEvent):void{ var _local2:ColorTransform; _local2 = _arg1.target.getChildByName("color").transform.colorTransform; _selectedColor = _local2.color; dispatchEvent(new ColorPickerEvent(ColorPickerEvent.CHANGE, selectedColor)); close(); } override protected function draw():void{ if (isInvalid(InvalidationType.STYLES, InvalidationType.DATA)){ setStyles(); drawPalette(); setEmbedFonts(); invalidate(InvalidationType.DATA, false); invalidate(InvalidationType.STYLES, false); }; if (isInvalid(InvalidationType.DATA)){ drawSwatchHighlight(); setColorDisplay(); }; if (isInvalid(InvalidationType.STATE)){ setTextEditable(); if (doOpen){ doOpen = false; showPalette(); }; colorWell.visible = enabled; }; if (isInvalid(InvalidationType.SIZE, InvalidationType.STYLES)){ swatchButton.setSize(width, height); swatchButton.drawNow(); colorWell.width = width; colorWell.height = height; }; super.draw(); } protected function drawSwatches():void{ var _local1:Number; var _local2:Number; var _local3:uint; var _local4:uint; var _local5:Number; var _local6:Number; var _local7:uint; var _local8:int; var _local9:uint; var _local10:Sprite; _local1 = (getStyleValue("backgroundPadding") as Number); _local2 = (showTextField) ? ((textFieldBG.y + textFieldBG.height) + _local1) : _local1; swatches = new Sprite(); palette.addChild(swatches); swatches.x = _local1; swatches.y = _local2; _local3 = (getStyleValue("columnCount") as uint); _local4 = (getStyleValue("swatchPadding") as uint); _local5 = (getStyleValue("swatchWidth") as Number); _local6 = (getStyleValue("swatchHeight") as Number); colorHash = {}; swatchMap = []; _local7 = Math.min(0x0400, colors.length); _local8 = -1; _local9 = 0; while (_local9 < _local7) { _local10 = createSwatch(colors[_local9]); _local10.x = ((_local5 + _local4) * (_local9 % _local3)); if (_local10.x == 0){ swatchMap.push([_local10]); _local8++; } else { swatchMap[_local8].push(_local10); }; colorHash[colors[_local9]] = {swatch:_local10, row:_local8, col:(swatchMap[_local8].length - 1)}; _local10.y = (Math.floor((_local9 / _local3)) * (_local6 + _local4)); swatches.addChild(_local10); _local9++; }; } override protected function configUI():void{ var _local1:uint; super.configUI(); tabChildren = false; if (_slot1.defaultColors == null){ _slot1.defaultColors = []; _local1 = 0; while (_local1 < 216) { _slot1.defaultColors.push(((((((((_local1 / 6) % 3) << 0) + (((_local1 / 108) << 0) * 3)) * 51) << 16) | (((_local1 % 6) * 51) << 8)) | ((((_local1 / 18) << 0) % 6) * 51))); _local1++; }; }; colorHash = {}; swatchMap = []; textField = new TextField(); textField.tabEnabled = false; swatchButton = new BaseButton(); swatchButton.focusEnabled = false; swatchButton.useHandCursor = false; swatchButton.autoRepeat = false; swatchButton.setSize(25, 25); swatchButton.addEventListener(MouseEvent.CLICK, onPopupButtonClick, false, 0, true); addChild(swatchButton); palette = new Sprite(); palette.tabChildren = false; palette.cacheAsBitmap = true; } public function get showTextField():Boolean{ return (_showTextField); } public function get colors():Array{ return (((customColors)!=null) ? customColors : _slot1.defaultColors); } protected function findSwatch(_arg1:uint):Sprite{ var _local2:Object; if (!(swatchMap.length)){ return (null); }; _local2 = colorHash[_arg1]; if (_local2 != null){ return (_local2.swatch); }; return (null); } protected function setColorDisplay():void{ var _local1:ColorTransform; var _local2:Sprite; if (!(swatchMap.length)){ return; }; _local1 = new ColorTransform(0, 0, 0, 1, (_selectedColor >> 16), ((_selectedColor >> 8) & 0xFF), (_selectedColor & 0xFF), 0); setColorWellColor(_local1); setColorText(_selectedColor); _local2 = findSwatch(_selectedColor); setSwatchHighlight(_local2); if (((swatchMap.length) && ((colorHash[_selectedColor] == undefined)))){ cleanUpSelected(); }; } protected function cleanUpSelected():void{ if (((swatchSelectedSkin) && (palette.contains(swatchSelectedSkin)))){ palette.removeChild(swatchSelectedSkin); }; } public function get selectedColor():uint{ if (colorWell == null){ return (0); }; return (colorWell.transform.colorTransform.color); } private function addCloseListener(_arg1:Event){ removeEventListener(Event.ENTER_FRAME, addCloseListener); if (!(isOpen)){ return; }; addStageListener(); } protected function removeStageListener(_arg1:Event=null):void{ stage.removeEventListener(MouseEvent.MOUSE_DOWN, onStageClick, false); } protected function setStyles():void{ var _local1:DisplayObject; var _local2:Object; _local1 = colorWell; _local2 = getStyleValue("colorWell"); if (_local2 != null){ colorWell = (getDisplayObjectInstance(_local2) as DisplayObject); }; addChildAt(colorWell, getChildIndex(swatchButton)); copyStylesToChild(swatchButton, POPUP_BUTTON_STYLES); swatchButton.drawNow(); if (((((!((_local1 == null))) && (contains(_local1)))) && (!((_local1 == colorWell))))){ removeChild(_local1); }; } public function close():void{ var _local1:IFocusManager; if (isOpen){ stage.removeChild(palette); isOpen = false; dispatchEvent(new Event(Event.CLOSE)); }; _local1 = focusManager; if (_local1){ _local1.defaultButtonEnabled = true; }; removeStageListener(); cleanUpSelected(); } public static function getStyleDefinition():Object{ return (defaultStyles); } } }//package fl.controls
Section 172
//ComboBox (fl.controls.ComboBox) package fl.controls { import fl.core.*; import fl.data.*; import fl.events.*; import flash.events.*; import fl.managers.*; import flash.text.*; import flash.geom.*; import fl.controls.listClasses.*; import flash.display.*; import flash.ui.*; public class ComboBox extends UIComponent implements IFocusManagerComponent { protected var _dropdownWidth:Number; protected var highlightedCell:int;// = -1 protected var _prompt:String; protected var isOpen:Boolean;// = false protected var list:List; protected var _rowCount:uint;// = 5 protected var currentIndex:int; protected var isKeyDown:Boolean;// = false protected var _labels:Array; protected var background:BaseButton; protected var inputField:TextInput; protected var listOverIndex:uint; protected var editableValue:String; protected var _editable:Boolean;// = false private var collectionItemImport:SimpleCollectionItem; protected static const BACKGROUND_STYLES:Object = {overSkin:"overSkin", downSkin:"downSkin", upSkin:"upSkin", disabledSkin:"disabledSkin", repeatInterval:"repeatInterval"}; protected static const LIST_STYLES:Object = {upSkin:"comboListUpSkin", overSkin:"comboListOverSkin", downSkin:"comobListDownSkin", disabledSkin:"comboListDisabledSkin", downArrowDisabledSkin:"downArrowDisabledSkin", downArrowDownSkin:"downArrowDownSkin", downArrowOverSkin:"downArrowOverSkin", downArrowUpSkin:"downArrowUpSkin", upArrowDisabledSkin:"upArrowDisabledSkin", upArrowDownSkin:"upArrowDownSkin", upArrowOverSkin:"upArrowOverSkin", upArrowUpSkin:"upArrowUpSkin", thumbDisabledSkin:"thumbDisabledSkin", thumbDownSkin:"thumbDownSkin", thumbOverSkin:"thumbOverSkin", thumbUpSkin:"thumbUpSkin", thumbIcon:"thumbIcon", trackDisabledSkin:"trackDisabledSkin", trackDownSkin:"trackDownSkin", trackOverSkin:"trackOverSkin", trackUpSkin:"trackUpSkin", repeatDelay:"repeatDelay", repeatInterval:"repeatInterval", textFormat:"textFormat", disabledAlpha:"disabledAlpha", skin:"listSkin"}; private static var defaultStyles:Object = {upSkin:"ComboBox_upSkin", downSkin:"ComboBox_downSkin", overSkin:"ComboBox_overSkin", disabledSkin:"ComboBox_disabledSkin", focusRectSkin:null, focusRectPadding:null, textFormat:null, disabledTextFormat:null, textPadding:3, buttonWidth:24, disabledAlpha:null, listSkin:null}; public static var createAccessibilityImplementation:Function; public function ComboBox(){ _rowCount = 5; _editable = false; isOpen = false; highlightedCell = -1; isKeyDown = false; super(); } protected function drawList():void{ list.rowCount = Math.max(0, Math.min(_rowCount, list.dataProvider.length)); } public function set imeMode(_arg1:String):void{ inputField.imeMode = _arg1; } public function get dropdown():List{ return (list); } public function get dropdownWidth():Number{ return (list.width); } public function sortItemsOn(_arg1:String, _arg2:Object=null){ return (list.sortItemsOn(_arg1, _arg2)); } protected function onEnter(_arg1:ComponentEvent):void{ _arg1.stopPropagation(); } public function removeItemAt(_arg1:uint):void{ list.removeItemAt(_arg1); invalidate(InvalidationType.DATA); } public function open():void{ currentIndex = selectedIndex; if (((isOpen) || ((length == 0)))){ return; }; dispatchEvent(new Event(Event.OPEN)); isOpen = true; addEventListener(Event.ENTER_FRAME, addCloseListener, false, 0, true); positionList(); list.scrollToSelected(); stage.addChild(list); } public function get selectedItem():Object{ return (list.selectedItem); } public function set text(_arg1:String):void{ if (!(editable)){ return; }; inputField.text = _arg1; } public function get labelField():String{ return (list.labelField); } override protected function keyDownHandler(_arg1:KeyboardEvent):void{ var _local2:int; var _local3:uint; var _local4:Number; var _local5:int; isKeyDown = true; if (_arg1.ctrlKey){ switch (_arg1.keyCode){ case Keyboard.UP: if (highlightedCell > -1){ selectedIndex = highlightedCell; dispatchEvent(new Event(Event.CHANGE)); }; close(); break; case Keyboard.DOWN: open(); break; }; return; }; _arg1.stopPropagation(); _local2 = Math.max(((calculateAvailableHeight() / list.rowHeight) << 0), 1); _local3 = selectedIndex; _local4 = ((highlightedCell)==-1) ? selectedIndex : highlightedCell; _local5 = -1; switch (_arg1.keyCode){ case Keyboard.SPACE: if (isOpen){ close(); } else { open(); }; return; case Keyboard.ESCAPE: if (isOpen){ if (highlightedCell > -1){ selectedIndex = selectedIndex; }; close(); }; return; case Keyboard.UP: _local5 = Math.max(0, (_local4 - 1)); break; case Keyboard.DOWN: _local5 = Math.min((length - 1), (_local4 + 1)); break; case Keyboard.PAGE_UP: _local5 = Math.max((_local4 - _local2), 0); break; case Keyboard.PAGE_DOWN: _local5 = Math.min((_local4 + _local2), (length - 1)); break; case Keyboard.HOME: _local5 = 0; break; case Keyboard.END: _local5 = (length - 1); break; case Keyboard.ENTER: if (((_editable) && ((highlightedCell == -1)))){ editableValue = inputField.text; selectedIndex = -1; } else { if (((isOpen) && ((highlightedCell > -1)))){ editableValue = null; selectedIndex = highlightedCell; dispatchEvent(new Event(Event.CHANGE)); }; }; dispatchEvent(new ComponentEvent(ComponentEvent.ENTER)); close(); return; default: if (editable){ break; }; _local5 = list.getNextIndexAtLetter(String.fromCharCode(_arg1.keyCode), _local4); break; }; if (_local5 > -1){ if (isOpen){ highlightCell(_local5); inputField.text = list.itemToLabel(getItemAt(_local5)); } else { highlightCell(); selectedIndex = _local5; dispatchEvent(new Event(Event.CHANGE)); }; }; } public function set dropdownWidth(_arg1:Number):void{ _dropdownWidth = _arg1; invalidate(InvalidationType.SIZE); } public function get editable():Boolean{ return (_editable); } override protected function focusInHandler(_arg1:FocusEvent):void{ super.focusInHandler(_arg1); if (editable){ stage.focus = inputField.textField; }; } protected function onStageClick(_arg1:MouseEvent):void{ if (!(isOpen)){ return; }; if (((!(contains((_arg1.target as DisplayObject)))) && (!(list.contains((_arg1.target as DisplayObject)))))){ if (highlightedCell != -1){ selectedIndex = highlightedCell; dispatchEvent(new Event(Event.CHANGE)); }; close(); }; } protected function handleDataChange(_arg1:DataChangeEvent):void{ invalidate(InvalidationType.DATA); } override protected function keyUpHandler(_arg1:KeyboardEvent):void{ isKeyDown = false; } protected function onListItemUp(_arg1:MouseEvent):void{ var _local2:*; stage.removeEventListener(MouseEvent.MOUSE_UP, onListItemUp); if (((!((_arg1.target is ICellRenderer))) || (!(list.contains((_arg1.target as DisplayObject)))))){ return; }; editableValue = null; _local2 = selectedIndex; selectedIndex = _arg1.target.listData.index; if (_local2 != selectedIndex){ dispatchEvent(new Event(Event.CHANGE)); }; close(); } public function removeAll():void{ list.removeAll(); inputField.text = ""; invalidate(InvalidationType.DATA); } public function set selectedItem(_arg1:Object):void{ list.selectedItem = _arg1; invalidate(InvalidationType.SELECTED); } protected function highlightCell(_arg1:int=-1):void{ var _local2:ICellRenderer; if (highlightedCell > -1){ _local2 = list.itemToCellRenderer(getItemAt(highlightedCell)); if (_local2 != null){ _local2.setMouseState("up"); }; }; if (_arg1 == -1){ return; }; list.scrollToIndex(_arg1); list.drawNow(); _local2 = list.itemToCellRenderer(getItemAt(_arg1)); if (_local2 != null){ _local2.setMouseState("over"); highlightedCell = _arg1; }; } public function itemToLabel(_arg1:Object):String{ if (_arg1 == null){ return (""); }; return (list.itemToLabel(_arg1)); } public function addItemAt(_arg1:Object, _arg2:uint):void{ list.addItemAt(_arg1, _arg2); invalidate(InvalidationType.DATA); } public function replaceItemAt(_arg1:Object, _arg2:uint):Object{ return (list.replaceItemAt(_arg1, _arg2)); } protected function showPrompt():void{ inputField.text = _prompt; } public function set rowCount(_arg1:uint):void{ _rowCount = _arg1; invalidate(InvalidationType.SIZE); } public function get restrict():String{ return (inputField.restrict); } protected function setEmbedFonts():void{ var _local1:Object; _local1 = getStyleValue("embedFonts"); if (_local1 != null){ inputField.textField.embedFonts = _local1; }; } public function sortItems(... _args){ return (list.sortItems.apply(list, _args)); } public function set labelField(_arg1:String):void{ list.labelField = _arg1; invalidate(InvalidationType.DATA); } public function set editable(_arg1:Boolean):void{ _editable = _arg1; drawTextField(); } public function set prompt(_arg1:String):void{ if (_arg1 == ""){ _prompt = null; } else { _prompt = _arg1; }; invalidate(InvalidationType.STATE); } public function get length():int{ return (list.length); } protected function drawTextField():void{ inputField.setStyle("upSkin", ""); inputField.setStyle("disabledSkin", ""); inputField.enabled = enabled; inputField.editable = _editable; inputField.textField.selectable = ((enabled) && (_editable)); inputField.mouseEnabled = (inputField.mouseChildren = ((enabled) && (_editable))); inputField.focusEnabled = false; if (_editable){ inputField.addEventListener(FocusEvent.FOCUS_IN, onInputFieldFocus, false, 0, true); inputField.addEventListener(FocusEvent.FOCUS_OUT, onInputFieldFocusOut, false, 0, true); } else { inputField.removeEventListener(FocusEvent.FOCUS_IN, onInputFieldFocus); inputField.removeEventListener(FocusEvent.FOCUS_OUT, onInputFieldFocusOut); }; } protected function onInputFieldFocusOut(_arg1:FocusEvent):void{ inputField.removeEventListener(ComponentEvent.ENTER, onEnter); selectedIndex = selectedIndex; } protected function passEvent(_arg1:Event):void{ dispatchEvent(_arg1); } public function get imeMode():String{ return (inputField.imeMode); } public function get labelFunction():Function{ return (list.labelFunction); } protected function calculateAvailableHeight():Number{ var _local1:Number; _local1 = Number(getStyleValue("contentPadding")); return ((list.height - (_local1 * 2))); } public function get selectedIndex():int{ return (list.selectedIndex); } override protected function focusOutHandler(_arg1:FocusEvent):void{ isKeyDown = false; if (isOpen){ if (((!(_arg1.relatedObject)) || (!(list.contains(_arg1.relatedObject))))){ if (((!((highlightedCell == -1))) && (!((highlightedCell == selectedIndex))))){ selectedIndex = highlightedCell; dispatchEvent(new Event(Event.CHANGE)); }; close(); }; }; super.focusOutHandler(_arg1); } public function get selectedLabel():String{ if (editableValue != null){ return (editableValue); }; if (selectedIndex == -1){ return (null); }; return (itemToLabel(selectedItem)); } public function get text():String{ return (inputField.text); } protected function onListChange(_arg1:Event):void{ editableValue = null; dispatchEvent(_arg1); invalidate(InvalidationType.SELECTED); if (isKeyDown){ return; }; close(); } protected function onToggleListVisibility(_arg1:MouseEvent):void{ _arg1.stopPropagation(); dispatchEvent(_arg1); if (isOpen){ close(); } else { open(); stage.addEventListener(MouseEvent.MOUSE_UP, onListItemUp, false, 0, true); }; } override protected function draw():void{ var _local1:*; _local1 = selectedIndex; if ((((_local1 == -1)) && (((((!((prompt == null))) || (editable))) || ((length == 0)))))){ _local1 = Math.max(-1, Math.min(_local1, (length - 1))); } else { editableValue = null; _local1 = Math.max(0, Math.min(_local1, (length - 1))); }; if (list.selectedIndex != _local1){ list.selectedIndex = _local1; invalidate(InvalidationType.SELECTED, false); }; if (isInvalid(InvalidationType.STYLES)){ setStyles(); setEmbedFonts(); invalidate(InvalidationType.SIZE, false); }; if (isInvalid(InvalidationType.SIZE, InvalidationType.DATA, InvalidationType.STATE)){ drawTextFormat(); drawLayout(); invalidate(InvalidationType.DATA); }; if (isInvalid(InvalidationType.DATA)){ drawList(); invalidate(InvalidationType.SELECTED, true); }; if (isInvalid(InvalidationType.SELECTED)){ if ((((_local1 == -1)) && (!((editableValue == null))))){ inputField.text = editableValue; } else { if (_local1 > -1){ if (length > 0){ inputField.horizontalScrollPosition = 0; inputField.text = itemToLabel(list.selectedItem); }; } else { if ((((_local1 == -1)) && (!((_prompt == null))))){ showPrompt(); } else { inputField.text = ""; }; }; }; if (((((editable) && ((selectedIndex > -1)))) && ((stage.focus == inputField.textField)))){ inputField.setSelection(0, inputField.length); }; }; drawTextField(); super.draw(); } public function addItem(_arg1:Object):void{ list.addItem(_arg1); invalidate(InvalidationType.DATA); } public function get rowCount():uint{ return (_rowCount); } override protected function configUI():void{ super.configUI(); background = new BaseButton(); background.focusEnabled = false; copyStylesToChild(background, BACKGROUND_STYLES); background.addEventListener(MouseEvent.MOUSE_DOWN, onToggleListVisibility, false, 0, true); addChild(background); inputField = new TextInput(); inputField.focusTarget = (this as IFocusManagerComponent); inputField.focusEnabled = false; inputField.addEventListener(Event.CHANGE, onTextInput, false, 0, true); addChild(inputField); list = new List(); list.focusEnabled = false; copyStylesToChild(list, LIST_STYLES); list.addEventListener(Event.CHANGE, onListChange, false, 0, true); list.addEventListener(ListEvent.ITEM_CLICK, onListChange, false, 0, true); list.addEventListener(ListEvent.ITEM_ROLL_OUT, passEvent, false, 0, true); list.addEventListener(ListEvent.ITEM_ROLL_OVER, passEvent, false, 0, true); list.verticalScrollBar.addEventListener(Event.SCROLL, passEvent, false, 0, true); } protected function positionList():void{ var _local1:Point; _local1 = localToGlobal(new Point(0, 0)); list.x = _local1.x; if (((_local1.y + height) + list.height) > stage.stageHeight){ list.y = (_local1.y - list.height); } else { list.y = (_local1.y + height); }; } public function get value():String{ var _local1:Object; if (editableValue != null){ return (editableValue); }; _local1 = selectedItem; if (((!(_editable)) && (!((_local1.data == null))))){ return (_local1.data); }; return (itemToLabel(_local1)); } public function get prompt():String{ return (_prompt); } public function set dataProvider(_arg1:DataProvider):void{ _arg1.addEventListener(DataChangeEvent.DATA_CHANGE, handleDataChange, false, 0, true); list.dataProvider = _arg1; invalidate(InvalidationType.DATA); } public function set restrict(_arg1:String):void{ if (((componentInspectorSetting) && ((_arg1 == "")))){ _arg1 = null; }; if (!(_editable)){ return; }; inputField.restrict = _arg1; } protected function onTextInput(_arg1:Event):void{ _arg1.stopPropagation(); if (!(_editable)){ return; }; editableValue = inputField.text; selectedIndex = -1; dispatchEvent(new Event(Event.CHANGE)); } protected function onInputFieldFocus(_arg1:FocusEvent):void{ inputField.addEventListener(ComponentEvent.ENTER, onEnter, false, 0, true); close(); } public function getItemAt(_arg1:uint):Object{ return (list.getItemAt(_arg1)); } override protected function initializeAccessibility():void{ if (ComboBox.createAccessibilityImplementation != null){ ComboBox.createAccessibilityImplementation(this); }; } protected function drawLayout():void{ var _local1:Number; var _local2:Number; _local1 = (getStyleValue("buttonWidth") as Number); _local2 = (getStyleValue("textPadding") as Number); background.setSize(width, height); inputField.x = (inputField.y = _local2); inputField.setSize(((width - _local1) - _local2), (height - _local2)); list.width = (isNaN(_dropdownWidth)) ? width : _dropdownWidth; background.enabled = enabled; background.drawNow(); } public function removeItem(_arg1:Object):Object{ return (list.removeItem(_arg1)); } private function addCloseListener(_arg1:Event){ removeEventListener(Event.ENTER_FRAME, addCloseListener); if (!(isOpen)){ return; }; stage.addEventListener(MouseEvent.MOUSE_DOWN, onStageClick, false, 0, true); } public function get dataProvider():DataProvider{ return (list.dataProvider); } public function get textField():TextInput{ return (inputField); } protected function setStyles():void{ copyStylesToChild(background, BACKGROUND_STYLES); copyStylesToChild(list, LIST_STYLES); } public function set labelFunction(_arg1:Function):void{ list.labelFunction = _arg1; invalidate(InvalidationType.DATA); } protected function drawTextFormat():void{ var _local1:TextFormat; _local1 = (getStyleValue((_enabled) ? "textFormat" : "disabledTextFormat") as TextFormat); if (_local1 == null){ _local1 = new TextFormat(); }; inputField.textField.defaultTextFormat = _local1; inputField.textField.setTextFormat(_local1); setEmbedFonts(); } public function set selectedIndex(_arg1:int):void{ list.selectedIndex = _arg1; highlightCell(); invalidate(InvalidationType.SELECTED); } public function close():void{ highlightCell(); highlightedCell = -1; if (!(isOpen)){ return; }; dispatchEvent(new Event(Event.CLOSE)); stage.removeEventListener(MouseEvent.MOUSE_DOWN, onStageClick); isOpen = false; stage.removeChild(list); } public static function getStyleDefinition():Object{ return (mergeStyles(defaultStyles, List.getStyleDefinition())); } } }//package fl.controls
Section 173
//LabelButton (fl.controls.LabelButton) package fl.controls { import fl.events.*; import fl.core.*; import flash.events.*; import flash.text.*; import flash.display.*; import flash.ui.*; import fl.managers.*; public class LabelButton extends BaseButton implements IFocusManagerComponent { protected var _labelPlacement:String;// = "right" protected var _toggle:Boolean;// = false protected var icon:DisplayObject; protected var oldMouseState:String; protected var mode:String;// = "center" public var textField:TextField; protected var _label:String;// = "Label" private static var defaultStyles:Object = {icon:null, upIcon:null, downIcon:null, overIcon:null, disabledIcon:null, selectedDisabledIcon:null, selectedUpIcon:null, selectedDownIcon:null, selectedOverIcon:null, textFormat:null, disabledTextFormat:null, textPadding:5, embedFonts:false}; public static var createAccessibilityImplementation:Function; public function LabelButton(){ _labelPlacement = ButtonLabelPlacement.RIGHT; _toggle = false; _label = "Label"; mode = "center"; super(); } protected function toggleSelected(_arg1:MouseEvent):void{ selected = !(selected); dispatchEvent(new Event(Event.CHANGE, true)); } public function get labelPlacement():String{ return (_labelPlacement); } override protected function keyDownHandler(_arg1:KeyboardEvent):void{ if (!(enabled)){ return; }; if (_arg1.keyCode == Keyboard.SPACE){ if (oldMouseState == null){ oldMouseState = mouseState; }; setMouseState("down"); startPress(); }; } protected function setEmbedFont(){ var _local1:Object; _local1 = getStyleValue("embedFonts"); if (_local1 != null){ textField.embedFonts = _local1; }; } override protected function keyUpHandler(_arg1:KeyboardEvent):void{ if (!(enabled)){ return; }; if (_arg1.keyCode == Keyboard.SPACE){ setMouseState(oldMouseState); oldMouseState = null; endPress(); dispatchEvent(new MouseEvent(MouseEvent.CLICK)); }; } override public function get selected():Boolean{ return ((_toggle) ? _selected : false); } public function set labelPlacement(_arg1:String):void{ _labelPlacement = _arg1; invalidate(InvalidationType.SIZE); } public function set toggle(_arg1:Boolean):void{ if (((!(_arg1)) && (super.selected))){ selected = false; }; _toggle = _arg1; if (_toggle){ addEventListener(MouseEvent.CLICK, toggleSelected, false, 0, true); } else { removeEventListener(MouseEvent.CLICK, toggleSelected); }; invalidate(InvalidationType.STATE); } public function get label():String{ return (_label); } override public function set selected(_arg1:Boolean):void{ _selected = _arg1; if (_toggle){ invalidate(InvalidationType.STATE); }; } override protected function draw():void{ if (textField.text != _label){ label = _label; }; if (isInvalid(InvalidationType.STYLES, InvalidationType.STATE)){ drawBackground(); drawIcon(); drawTextFormat(); invalidate(InvalidationType.SIZE, false); }; if (isInvalid(InvalidationType.SIZE)){ drawLayout(); }; if (isInvalid(InvalidationType.SIZE, InvalidationType.STYLES)){ if (((isFocused) && (focusManager.showFocusIndicator))){ drawFocus(true); }; }; validate(); } public function get toggle():Boolean{ return (_toggle); } override protected function configUI():void{ super.configUI(); textField = new TextField(); textField.type = TextFieldType.DYNAMIC; textField.selectable = false; addChild(textField); } override protected function drawLayout():void{ var _local1:Number; var _local2:String; var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; _local1 = Number(getStyleValue("textPadding")); _local2 = ((((icon == null)) && ((mode == "center")))) ? ButtonLabelPlacement.TOP : _labelPlacement; textField.height = (textField.textHeight + 4); _local3 = (textField.textWidth + 4); _local4 = (textField.textHeight + 4); _local5 = ((icon)==null) ? 0 : (icon.width + _local1); _local6 = ((icon)==null) ? 0 : (icon.height + _local1); textField.visible = (label.length > 0); if (icon != null){ icon.x = Math.round(((width - icon.width) / 2)); icon.y = Math.round(((height - icon.height) / 2)); }; if (textField.visible == false){ textField.width = 0; textField.height = 0; } else { if ((((_local2 == ButtonLabelPlacement.BOTTOM)) || ((_local2 == ButtonLabelPlacement.TOP)))){ _local7 = Math.max(0, Math.min(_local3, (width - (2 * _local1)))); if ((height - 2) > _local4){ _local8 = _local4; } else { _local8 = (height - 2); }; _local3 = _local7; textField.width = _local3; _local4 = _local8; textField.height = _local4; textField.x = Math.round(((width - _local3) / 2)); textField.y = Math.round(((((height - textField.height) - _local6) / 2) + ((_local2)==ButtonLabelPlacement.BOTTOM) ? _local6 : 0)); if (icon != null){ icon.y = Math.round(((_local2)==ButtonLabelPlacement.BOTTOM) ? (textField.y - _local6) : ((textField.y + textField.height) + _local1)); }; } else { _local7 = Math.max(0, Math.min(_local3, ((width - _local5) - (2 * _local1)))); _local3 = _local7; textField.width = _local3; textField.x = Math.round(((((width - _local3) - _local5) / 2) + ((_local2)!=ButtonLabelPlacement.LEFT) ? _local5 : 0)); textField.y = Math.round(((height - textField.height) / 2)); if (icon != null){ icon.x = Math.round(((_local2)!=ButtonLabelPlacement.LEFT) ? (textField.x - _local5) : ((textField.x + _local3) + _local1)); }; }; }; super.drawLayout(); } override protected function initializeAccessibility():void{ if (LabelButton.createAccessibilityImplementation != null){ LabelButton.createAccessibilityImplementation(this); }; } protected function drawIcon():void{ var _local1:DisplayObject; var _local2:String; var _local3:Object; _local1 = icon; _local2 = (enabled) ? mouseState : "disabled"; if (selected){ _local2 = (("selected" + _local2.substr(0, 1).toUpperCase()) + _local2.substr(1)); }; _local2 = (_local2 + "Icon"); _local3 = getStyleValue(_local2); if (_local3 == null){ _local3 = getStyleValue("icon"); }; if (_local3 != null){ icon = getDisplayObjectInstance(_local3); }; if (icon != null){ addChildAt(icon, 1); }; if (((!((_local1 == null))) && (!((_local1 == icon))))){ removeChild(_local1); }; } public function set label(_arg1:String):void{ _label = _arg1; if (textField.text != _label){ textField.text = _label; dispatchEvent(new ComponentEvent(ComponentEvent.LABEL_CHANGE)); }; invalidate(InvalidationType.SIZE); invalidate(InvalidationType.STYLES); } protected function drawTextFormat():void{ var _local1:Object; var _local2:TextFormat; var _local3:TextFormat; _local1 = UIComponent.getStyleDefinition(); _local2 = (enabled) ? (_local1.defaultTextFormat as TextFormat) : (_local1.defaultDisabledTextFormat as TextFormat); textField.setTextFormat(_local2); _local3 = (getStyleValue((enabled) ? "textFormat" : "disabledTextFormat") as TextFormat); if (_local3 != null){ textField.setTextFormat(_local3); } else { _local3 = _local2; }; textField.defaultTextFormat = _local3; setEmbedFont(); } public static function getStyleDefinition():Object{ return (mergeStyles(defaultStyles, BaseButton.getStyleDefinition())); } } }//package fl.controls
Section 174
//List (fl.controls.List) package fl.controls { import fl.core.*; import flash.geom.*; import fl.controls.listClasses.*; import flash.utils.*; import flash.display.*; import flash.events.*; import flash.ui.*; import fl.managers.*; public class List extends SelectableList implements IFocusManagerComponent { protected var _labelField:String;// = "label" protected var _rowHeight:Number;// = 20 protected var _cellRenderer:Object; protected var _iconField:String;// = "icon" protected var _labelFunction:Function; protected var _iconFunction:Function; private static var defaultStyles:Object = {focusRectSkin:null, focusRectPadding:null}; public static var createAccessibilityImplementation:Function; public function List(){ _rowHeight = 20; _labelField = "label"; _iconField = "icon"; super(); } public function get iconField():String{ return (_iconField); } protected function doKeySelection(_arg1:int, _arg2:Boolean, _arg3:Boolean):void{ var _local4:Boolean; var _local5:int; var _local6:Array; var _local7:int; var _local8:int; _local4 = false; if (_arg2){ _local6 = []; _local7 = lastCaretIndex; _local8 = _arg1; if (_local7 == -1){ _local7 = (!((caretIndex == -1))) ? caretIndex : _arg1; }; if (_local7 > _local8){ _local8 = _local7; _local7 = _arg1; }; _local5 = _local7; while (_local5 <= _local8) { _local6.push(_local5); _local5++; }; selectedIndices = _local6; caretIndex = _arg1; _local4 = true; } else { selectedIndex = _arg1; caretIndex = (lastCaretIndex = _arg1); _local4 = true; }; if (_local4){ dispatchEvent(new Event(Event.CHANGE)); }; invalidate(InvalidationType.DATA); } override protected function drawList():void{ var _local1:Rectangle; var _local2:uint; var _local3:uint; var _local4:uint; var _local5:Object; var _local6:ICellRenderer; var _local7:Dictionary; var _local8:Dictionary; var _local9:Boolean; var _local10:String; var _local11:Object; var _local12:Sprite; var _local13:String; listHolder.x = (listHolder.y = contentPadding); _local1 = listHolder.scrollRect; _local1.x = _horizontalScrollPosition; _local1.y = (Math.floor(_verticalScrollPosition) % rowHeight); listHolder.scrollRect = _local1; listHolder.cacheAsBitmap = useBitmapScrolling; _local2 = Math.floor((_verticalScrollPosition / rowHeight)); _local3 = Math.min(length, ((_local2 + rowCount) + 1)); _local7 = (renderedItems = new Dictionary(true)); _local4 = _local2; while (_local4 < _local3) { _local7[_dataProvider.getItemAt(_local4)] = true; _local4++; }; _local8 = new Dictionary(true); while (activeCellRenderers.length > 0) { _local6 = (activeCellRenderers.pop() as ICellRenderer); _local5 = _local6.data; if ((((_local7[_local5] == null)) || ((invalidItems[_local5] == true)))){ availableCellRenderers.push(_local6); } else { _local8[_local5] = _local6; invalidItems[_local5] = true; }; list.removeChild((_local6 as DisplayObject)); }; invalidItems = new Dictionary(true); _local4 = _local2; while (_local4 < _local3) { _local9 = false; _local5 = _dataProvider.getItemAt(_local4); if (_local8[_local5] != null){ _local9 = true; _local6 = _local8[_local5]; delete _local8[_local5]; } else { if (availableCellRenderers.length > 0){ _local6 = (availableCellRenderers.pop() as ICellRenderer); } else { _local6 = (getDisplayObjectInstance(getStyleValue("cellRenderer")) as ICellRenderer); _local12 = (_local6 as Sprite); if (_local12 != null){ _local12.addEventListener(MouseEvent.CLICK, handleCellRendererClick, false, 0, true); _local12.addEventListener(MouseEvent.ROLL_OVER, handleCellRendererMouseEvent, false, 0, true); _local12.addEventListener(MouseEvent.ROLL_OUT, handleCellRendererMouseEvent, false, 0, true); _local12.addEventListener(Event.CHANGE, handleCellRendererChange, false, 0, true); _local12.doubleClickEnabled = true; _local12.addEventListener(MouseEvent.DOUBLE_CLICK, handleCellRendererDoubleClick, false, 0, true); if (_local12["setStyle"] != null){ for (_local13 in rendererStyles) { var _local16 = _local12; _local16["setStyle"](_local13, rendererStyles[_local13]); }; }; }; }; }; list.addChild((_local6 as Sprite)); activeCellRenderers.push(_local6); _local6.y = (rowHeight * (_local4 - _local2)); _local6.setSize((availableWidth + _maxHorizontalScrollPosition), rowHeight); _local10 = itemToLabel(_local5); _local11 = null; if (_iconFunction != null){ _local11 = _iconFunction(_local5); } else { if (_iconField != null){ _local11 = _local5[_iconField]; }; }; if (!(_local9)){ _local6.data = _local5; }; _local6.listData = new ListData(_local10, _local11, this, _local4, _local4, 0); _local6.selected = !((_selectedIndices.indexOf(_local4) == -1)); if ((_local6 is UIComponent)){ (_local6 as UIComponent).drawNow(); }; _local4++; }; } public function get iconFunction():Function{ return (_iconFunction); } public function set iconField(_arg1:String):void{ if (_arg1 == _iconField){ return; }; _iconField = _arg1; invalidate(InvalidationType.DATA); } override protected function keyDownHandler(_arg1:KeyboardEvent):void{ var _local2:int; if (!(selectable)){ return; }; switch (_arg1.keyCode){ case Keyboard.UP: case Keyboard.DOWN: case Keyboard.END: case Keyboard.HOME: case Keyboard.PAGE_UP: case Keyboard.PAGE_DOWN: moveSelectionVertically(_arg1.keyCode, ((_arg1.shiftKey) && (_allowMultipleSelection)), ((_arg1.ctrlKey) && (_allowMultipleSelection))); break; case Keyboard.LEFT: case Keyboard.RIGHT: moveSelectionHorizontally(_arg1.keyCode, ((_arg1.shiftKey) && (_allowMultipleSelection)), ((_arg1.ctrlKey) && (_allowMultipleSelection))); break; case Keyboard.SPACE: if (caretIndex == -1){ caretIndex = 0; }; doKeySelection(caretIndex, _arg1.shiftKey, _arg1.ctrlKey); scrollToSelected(); break; default: _local2 = getNextIndexAtLetter(String.fromCharCode(_arg1.keyCode), selectedIndex); if (_local2 > -1){ selectedIndex = _local2; scrollToSelected(); }; break; }; _arg1.stopPropagation(); } override public function itemToLabel(_arg1:Object):String{ if (_labelFunction != null){ return (String(_labelFunction(_arg1))); }; return (((_arg1[_labelField])!=null) ? String(_arg1[_labelField]) : ""); } public function get labelField():String{ return (_labelField); } override protected function moveSelectionVertically(_arg1:uint, _arg2:Boolean, _arg3:Boolean):void{ var _local4:int; var _local5:int; var _local6:int; _local4 = Math.max(Math.floor((calculateAvailableHeight() / rowHeight)), 1); _local5 = -1; _local6 = 0; switch (_arg1){ case Keyboard.UP: if (caretIndex > 0){ _local5 = (caretIndex - 1); }; break; case Keyboard.DOWN: if (caretIndex < (length - 1)){ _local5 = (caretIndex + 1); }; break; case Keyboard.PAGE_UP: if (caretIndex > 0){ _local5 = Math.max((caretIndex - _local4), 0); }; break; case Keyboard.PAGE_DOWN: if (caretIndex < (length - 1)){ _local5 = Math.min((caretIndex + _local4), (length - 1)); }; break; case Keyboard.HOME: if (caretIndex > 0){ _local5 = 0; }; break; case Keyboard.END: if (caretIndex < (length - 1)){ _local5 = (length - 1); }; break; }; if (_local5 >= 0){ doKeySelection(_local5, _arg2, _arg3); scrollToSelected(); }; } public function set labelField(_arg1:String):void{ if (_arg1 == _labelField){ return; }; _labelField = _arg1; invalidate(InvalidationType.DATA); } public function set rowCount(_arg1:uint):void{ var _local2:Number; var _local3:Number; _local2 = Number(getStyleValue("contentPadding")); _local3 = ((((_horizontalScrollPolicy == ScrollPolicy.ON)) || ((((_horizontalScrollPolicy == ScrollPolicy.AUTO)) && ((_maxHorizontalScrollPosition > 0)))))) ? 15 : 0; height = (((rowHeight * _arg1) + (2 * _local2)) + _local3); } override protected function setHorizontalScrollPosition(_arg1:Number, _arg2:Boolean=false):void{ list.x = -(_arg1); super.setHorizontalScrollPosition(_arg1, true); } public function set iconFunction(_arg1:Function):void{ if (_iconFunction == _arg1){ return; }; _iconFunction = _arg1; invalidate(InvalidationType.DATA); } public function get labelFunction():Function{ return (_labelFunction); } override protected function moveSelectionHorizontally(_arg1:uint, _arg2:Boolean, _arg3:Boolean):void{ } override protected function setVerticalScrollPosition(_arg1:Number, _arg2:Boolean=false):void{ invalidate(InvalidationType.SCROLL); super.setVerticalScrollPosition(_arg1, true); } protected function calculateAvailableHeight():Number{ var _local1:Number; _local1 = Number(getStyleValue("contentPadding")); return (((height - (_local1 * 2)) - ((((_horizontalScrollPolicy == ScrollPolicy.ON)) || ((((_horizontalScrollPolicy == ScrollPolicy.AUTO)) && ((_maxHorizontalScrollPosition > 0)))))) ? 15 : 0)); } override protected function draw():void{ var _local1:Boolean; _local1 = !((contentHeight == (rowHeight * length))); contentHeight = (rowHeight * length); if (isInvalid(InvalidationType.STYLES)){ setStyles(); drawBackground(); if (contentPadding != getStyleValue("contentPadding")){ invalidate(InvalidationType.SIZE, false); }; if (_cellRenderer != getStyleValue("cellRenderer")){ _invalidateList(); _cellRenderer = getStyleValue("cellRenderer"); }; }; if (((isInvalid(InvalidationType.SIZE, InvalidationType.STATE)) || (_local1))){ drawLayout(); }; if (isInvalid(InvalidationType.RENDERER_STYLES)){ updateRendererStyles(); }; if (isInvalid(InvalidationType.STYLES, InvalidationType.SIZE, InvalidationType.DATA, InvalidationType.SCROLL, InvalidationType.SELECTED)){ drawList(); }; updateChildren(); validate(); } override protected function configUI():void{ useFixedHorizontalScrolling = true; _horizontalScrollPolicy = ScrollPolicy.AUTO; _verticalScrollPolicy = ScrollPolicy.AUTO; super.configUI(); } override public function get rowCount():uint{ return (Math.ceil((calculateAvailableHeight() / rowHeight))); } override protected function initializeAccessibility():void{ if (List.createAccessibilityImplementation != null){ List.createAccessibilityImplementation(this); }; } override public function scrollToIndex(_arg1:int):void{ var _local2:uint; var _local3:uint; drawNow(); _local2 = (Math.floor(((_verticalScrollPosition + availableHeight) / rowHeight)) - 1); _local3 = Math.ceil((_verticalScrollPosition / rowHeight)); if (_arg1 < _local3){ verticalScrollPosition = (_arg1 * rowHeight); } else { if (_arg1 > _local2){ verticalScrollPosition = (((_arg1 + 1) * rowHeight) - availableHeight); }; }; } public function get rowHeight():Number{ return (_rowHeight); } public function set labelFunction(_arg1:Function):void{ if (_labelFunction == _arg1){ return; }; _labelFunction = _arg1; invalidate(InvalidationType.DATA); } public function set rowHeight(_arg1:Number):void{ _rowHeight = _arg1; invalidate(InvalidationType.SIZE); } public static function getStyleDefinition():Object{ return (mergeStyles(defaultStyles, SelectableList.getStyleDefinition())); } } }//package fl.controls
Section 175
//ScrollBar (fl.controls.ScrollBar) package fl.controls { import fl.core.*; import fl.events.*; import flash.events.*; public class ScrollBar extends UIComponent { private var _direction:String;// = "vertical" protected var inDrag:Boolean;// = false protected var upArrow:BaseButton; private var _pageScrollSize:Number;// = 0 protected var downArrow:BaseButton; private var _pageSize:Number;// = 10 private var thumbScrollOffset:Number; private var _maxScrollPosition:Number;// = 0 private var _scrollPosition:Number;// = 0 protected var track:BaseButton; private var _minScrollPosition:Number;// = 0 private var _lineScrollSize:Number;// = 1 protected var thumb:LabelButton; protected static const THUMB_STYLES:Object = {disabledSkin:"thumbDisabledSkin", downSkin:"thumbDownSkin", overSkin:"thumbOverSkin", upSkin:"thumbUpSkin", icon:"thumbIcon", textPadding:0}; public static const WIDTH:Number = 15; protected static const DOWN_ARROW_STYLES:Object = {disabledSkin:"downArrowDisabledSkin", downSkin:"downArrowDownSkin", overSkin:"downArrowOverSkin", upSkin:"downArrowUpSkin", repeatDelay:"repeatDelay", repeatInterval:"repeatInterval"}; protected static const UP_ARROW_STYLES:Object = {disabledSkin:"upArrowDisabledSkin", downSkin:"upArrowDownSkin", overSkin:"upArrowOverSkin", upSkin:"upArrowUpSkin", repeatDelay:"repeatDelay", repeatInterval:"repeatInterval"}; protected static const TRACK_STYLES:Object = {disabledSkin:"trackDisabledSkin", downSkin:"trackDownSkin", overSkin:"trackOverSkin", upSkin:"trackUpSkin", repeatDelay:"repeatDelay", repeatInterval:"repeatInterval"}; private static var defaultStyles:Object = {downArrowDisabledSkin:"ScrollArrowDown_disabledSkin", downArrowDownSkin:"ScrollArrowDown_downSkin", downArrowOverSkin:"ScrollArrowDown_overSkin", downArrowUpSkin:"ScrollArrowDown_upSkin", thumbDisabledSkin:"ScrollThumb_upSkin", thumbDownSkin:"ScrollThumb_downSkin", thumbOverSkin:"ScrollThumb_overSkin", thumbUpSkin:"ScrollThumb_upSkin", trackDisabledSkin:"ScrollTrack_skin", trackDownSkin:"ScrollTrack_skin", trackOverSkin:"ScrollTrack_skin", trackUpSkin:"ScrollTrack_skin", upArrowDisabledSkin:"ScrollArrowUp_disabledSkin", upArrowDownSkin:"ScrollArrowUp_downSkin", upArrowOverSkin:"ScrollArrowUp_overSkin", upArrowUpSkin:"ScrollArrowUp_upSkin", thumbIcon:"ScrollBar_thumbIcon", repeatDelay:500, repeatInterval:35}; public function ScrollBar(){ _pageSize = 10; _pageScrollSize = 0; _lineScrollSize = 1; _minScrollPosition = 0; _maxScrollPosition = 0; _scrollPosition = 0; _direction = ScrollBarDirection.VERTICAL; inDrag = false; super(); setStyles(); focusEnabled = false; } public function get minScrollPosition():Number{ return (_minScrollPosition); } public function set minScrollPosition(_arg1:Number):void{ setScrollProperties(_pageSize, _arg1, _maxScrollPosition); } public function setScrollPosition(_arg1:Number, _arg2:Boolean=true):void{ var _local3:Number; _local3 = scrollPosition; _scrollPosition = Math.max(_minScrollPosition, Math.min(_maxScrollPosition, _arg1)); if (_local3 == _scrollPosition){ return; }; if (_arg2){ dispatchEvent(new ScrollEvent(_direction, (scrollPosition - _local3), scrollPosition)); }; updateThumb(); } public function set scrollPosition(_arg1:Number):void{ setScrollPosition(_arg1, true); } public function get pageScrollSize():Number{ return (((_pageScrollSize)==0) ? _pageSize : _pageScrollSize); } public function set pageSize(_arg1:Number):void{ if (_arg1 > 0){ _pageSize = _arg1; }; } public function setScrollProperties(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number=0):void{ this.pageSize = _arg1; _minScrollPosition = _arg2; _maxScrollPosition = _arg3; if (_arg4 >= 0){ _pageScrollSize = _arg4; }; enabled = (_maxScrollPosition > _minScrollPosition); setScrollPosition(_scrollPosition, false); updateThumb(); } override public function set enabled(_arg1:Boolean):void{ super.enabled = _arg1; downArrow.enabled = (track.enabled = (thumb.enabled = (upArrow.enabled = ((enabled) && ((_maxScrollPosition > _minScrollPosition)))))); updateThumb(); } protected function updateThumb():void{ var _local1:Number; _local1 = ((_maxScrollPosition - _minScrollPosition) + _pageSize); if ((((((track.height <= 12)) || ((_maxScrollPosition <= _minScrollPosition)))) || ((((_local1 == 0)) || (isNaN(_local1)))))){ thumb.height = 12; thumb.visible = false; } else { thumb.height = Math.max(13, ((_pageSize / _local1) * track.height)); thumb.y = (track.y + ((track.height - thumb.height) * ((_scrollPosition - _minScrollPosition) / (_maxScrollPosition - _minScrollPosition)))); thumb.visible = enabled; }; } protected function thumbPressHandler(_arg1:MouseEvent):void{ inDrag = true; thumbScrollOffset = (mouseY - thumb.y); thumb.mouseStateLocked = true; mouseChildren = false; stage.addEventListener(MouseEvent.MOUSE_MOVE, handleThumbDrag, false, 0, true); stage.addEventListener(MouseEvent.MOUSE_UP, thumbReleaseHandler, false, 0, true); } protected function thumbReleaseHandler(_arg1:MouseEvent):void{ inDrag = false; mouseChildren = true; thumb.mouseStateLocked = false; stage.removeEventListener(MouseEvent.MOUSE_MOVE, handleThumbDrag); stage.removeEventListener(MouseEvent.MOUSE_UP, thumbReleaseHandler); } public function set pageScrollSize(_arg1:Number):void{ if (_arg1 >= 0){ _pageScrollSize = _arg1; }; } protected function handleThumbDrag(_arg1:MouseEvent):void{ var _local2:Number; _local2 = Math.max(0, Math.min((track.height - thumb.height), ((mouseY - track.y) - thumbScrollOffset))); setScrollPosition((((_local2 / (track.height - thumb.height)) * (_maxScrollPosition - _minScrollPosition)) + _minScrollPosition)); } public function set direction(_arg1:String):void{ var _local2:Boolean; if (_direction == _arg1){ return; }; _direction = _arg1; if (isLivePreview){ return; }; setScaleY(1); _local2 = (_direction == ScrollBarDirection.HORIZONTAL); if (((_local2) && (componentInspectorSetting))){ if (rotation == 90){ return; }; setScaleX(-1); rotation = -90; }; if (!(componentInspectorSetting)){ if (((_local2) && ((rotation == 0)))){ rotation = -90; setScaleX(-1); } else { if (((!(_local2)) && ((rotation == -90)))){ rotation = 0; setScaleX(1); }; }; }; invalidate(InvalidationType.SIZE); } public function set lineScrollSize(_arg1:Number):void{ if (_arg1 > 0){ _lineScrollSize = _arg1; }; } override public function get height():Number{ return (((_direction)==ScrollBarDirection.HORIZONTAL) ? super.width : super.height); } protected function scrollPressHandler(_arg1:ComponentEvent):void{ var _local2:Number; var _local3:Number; _arg1.stopImmediatePropagation(); if (_arg1.currentTarget == upArrow){ setScrollPosition((_scrollPosition - _lineScrollSize)); } else { if (_arg1.currentTarget == downArrow){ setScrollPosition((_scrollPosition + _lineScrollSize)); } else { _local2 = (((track.mouseY / track.height) * (_maxScrollPosition - _minScrollPosition)) + _minScrollPosition); _local3 = ((pageScrollSize)==0) ? pageSize : pageScrollSize; if (_scrollPosition < _local2){ setScrollPosition(Math.min(_local2, (_scrollPosition + _local3))); } else { if (_scrollPosition > _local2){ setScrollPosition(Math.max(_local2, (_scrollPosition - _local3))); }; }; }; }; } public function get pageSize():Number{ return (_pageSize); } public function set maxScrollPosition(_arg1:Number):void{ setScrollProperties(_pageSize, _minScrollPosition, _arg1); } public function get scrollPosition():Number{ return (_scrollPosition); } override public function get enabled():Boolean{ return (super.enabled); } override protected function draw():void{ var _local1:Number; if (isInvalid(InvalidationType.SIZE)){ _local1 = super.height; downArrow.move(0, Math.max(upArrow.height, (_local1 - downArrow.height))); track.setSize(WIDTH, Math.max(0, (_local1 - (downArrow.height + upArrow.height)))); updateThumb(); }; if (isInvalid(InvalidationType.STYLES, InvalidationType.STATE)){ setStyles(); }; downArrow.drawNow(); upArrow.drawNow(); track.drawNow(); thumb.drawNow(); validate(); } override protected function configUI():void{ super.configUI(); track = new BaseButton(); track.move(0, 14); track.useHandCursor = false; track.autoRepeat = true; track.focusEnabled = false; addChild(track); thumb = new LabelButton(); thumb.label = ""; thumb.setSize(WIDTH, 15); thumb.move(0, 15); thumb.focusEnabled = false; addChild(thumb); downArrow = new BaseButton(); downArrow.setSize(WIDTH, 14); downArrow.autoRepeat = true; downArrow.focusEnabled = false; addChild(downArrow); upArrow = new BaseButton(); upArrow.setSize(WIDTH, 14); upArrow.move(0, 0); upArrow.autoRepeat = true; upArrow.focusEnabled = false; addChild(upArrow); upArrow.addEventListener(ComponentEvent.BUTTON_DOWN, scrollPressHandler, false, 0, true); downArrow.addEventListener(ComponentEvent.BUTTON_DOWN, scrollPressHandler, false, 0, true); track.addEventListener(ComponentEvent.BUTTON_DOWN, scrollPressHandler, false, 0, true); thumb.addEventListener(MouseEvent.MOUSE_DOWN, thumbPressHandler, false, 0, true); enabled = false; } public function get direction():String{ return (_direction); } public function get lineScrollSize():Number{ return (_lineScrollSize); } override public function setSize(_arg1:Number, _arg2:Number):void{ if (_direction == ScrollBarDirection.HORIZONTAL){ super.setSize(_arg2, _arg1); } else { super.setSize(_arg1, _arg2); }; } public function get maxScrollPosition():Number{ return (_maxScrollPosition); } override public function get width():Number{ return (((_direction)==ScrollBarDirection.HORIZONTAL) ? super.height : super.width); } protected function setStyles():void{ copyStylesToChild(downArrow, DOWN_ARROW_STYLES); copyStylesToChild(thumb, THUMB_STYLES); copyStylesToChild(track, TRACK_STYLES); copyStylesToChild(upArrow, UP_ARROW_STYLES); } public static function getStyleDefinition():Object{ return (defaultStyles); } } }//package fl.controls
Section 176
//ScrollBarDirection (fl.controls.ScrollBarDirection) package fl.controls { public class ScrollBarDirection { public static const HORIZONTAL:String = "horizontal"; public static const VERTICAL:String = "vertical"; } }//package fl.controls
Section 177
//ScrollPolicy (fl.controls.ScrollPolicy) package fl.controls { public class ScrollPolicy { public static const OFF:String = "off"; public static const ON:String = "on"; public static const AUTO:String = "auto"; } }//package fl.controls
Section 178
//SelectableList (fl.controls.SelectableList) package fl.controls { import fl.controls.listClasses.*; import fl.containers.*; import flash.utils.*; import fl.data.*; import fl.events.*; import fl.core.*; import flash.display.*; import flash.events.*; import flash.ui.*; import fl.managers.*; public class SelectableList extends BaseScrollPane implements IFocusManagerComponent { protected var invalidItems:Dictionary; protected var renderedItems:Dictionary; protected var listHolder:Sprite; protected var _allowMultipleSelection:Boolean;// = false protected var lastCaretIndex:int;// = -1 protected var _selectedIndices:Array; protected var availableCellRenderers:Array; protected var list:Sprite; protected var caretIndex:int;// = -1 protected var updatedRendererStyles:Object; protected var preChangeItems:Array; protected var activeCellRenderers:Array; protected var rendererStyles:Object; protected var _verticalScrollPosition:Number; protected var _dataProvider:DataProvider; protected var _horizontalScrollPosition:Number; private var collectionItemImport:SimpleCollectionItem; protected var _selectable:Boolean;// = true private static var defaultStyles:Object = {skin:"List_skin", cellRenderer:CellRenderer, contentPadding:null, disabledAlpha:null}; public static var createAccessibilityImplementation:Function; public function SelectableList(){ _allowMultipleSelection = false; _selectable = true; caretIndex = -1; lastCaretIndex = -1; super(); activeCellRenderers = []; availableCellRenderers = []; invalidItems = new Dictionary(true); renderedItems = new Dictionary(true); _selectedIndices = []; if (dataProvider == null){ dataProvider = new DataProvider(); }; verticalScrollPolicy = ScrollPolicy.AUTO; rendererStyles = {}; updatedRendererStyles = {}; } protected function drawList():void{ } public function set allowMultipleSelection(_arg1:Boolean):void{ if (_arg1 == _allowMultipleSelection){ return; }; _allowMultipleSelection = _arg1; if (((!(_arg1)) && ((_selectedIndices.length > 1)))){ _selectedIndices = [_selectedIndices.pop()]; invalidate(InvalidationType.DATA); }; } public function sortItemsOn(_arg1:String, _arg2:Object=null){ return (_dataProvider.sortOn(_arg1, _arg2)); } public function removeItemAt(_arg1:uint):Object{ return (_dataProvider.removeItemAt(_arg1)); } public function get selectedItem():Object{ return (((_selectedIndices.length)==0) ? null : _dataProvider.getItemAt(selectedIndex)); } override protected function keyDownHandler(_arg1:KeyboardEvent):void{ if (!(selectable)){ return; }; switch (_arg1.keyCode){ case Keyboard.UP: case Keyboard.DOWN: case Keyboard.END: case Keyboard.HOME: case Keyboard.PAGE_UP: case Keyboard.PAGE_DOWN: moveSelectionVertically(_arg1.keyCode, ((_arg1.shiftKey) && (_allowMultipleSelection)), ((_arg1.ctrlKey) && (_allowMultipleSelection))); _arg1.stopPropagation(); break; case Keyboard.LEFT: case Keyboard.RIGHT: moveSelectionHorizontally(_arg1.keyCode, ((_arg1.shiftKey) && (_allowMultipleSelection)), ((_arg1.ctrlKey) && (_allowMultipleSelection))); _arg1.stopPropagation(); break; }; } public function get selectable():Boolean{ return (_selectable); } public function itemToCellRenderer(_arg1:Object):ICellRenderer{ var _local2:*; var _local3:ICellRenderer; if (_arg1 != null){ for (_local2 in activeCellRenderers) { _local3 = (activeCellRenderers[_local2] as ICellRenderer); if (_local3.data == _arg1){ return (_local3); }; }; }; return (null); } public function getNextIndexAtLetter(_arg1:String, _arg2:int=-1):int{ var _local3:int; var _local4:Number; var _local5:Number; var _local6:Object; var _local7:String; if (length == 0){ return (-1); }; _arg1 = _arg1.toUpperCase(); _local3 = (length - 1); _local4 = 0; while (_local4 < _local3) { _local5 = ((_arg2 + 1) + _local4); if (_local5 > (length - 1)){ _local5 = (_local5 - length); }; _local6 = getItemAt(_local5); if (_local6 == null){ break; }; _local7 = itemToLabel(_local6); if (_local7 == null){ } else { if (_local7.charAt(0).toUpperCase() == _arg1){ return (_local5); }; }; _local4++; }; return (-1); } public function invalidateList():void{ _invalidateList(); invalidate(InvalidationType.DATA); } override public function set enabled(_arg1:Boolean):void{ super.enabled = _arg1; list.mouseChildren = _enabled; } public function get selectedIndices():Array{ return (_selectedIndices.concat()); } public function set selectable(_arg1:Boolean):void{ if (_arg1 == _selectable){ return; }; if (!(_arg1)){ selectedIndices = []; }; _selectable = _arg1; } public function itemToLabel(_arg1:Object):String{ return (_arg1["label"]); } public function addItemAt(_arg1:Object, _arg2:uint):void{ _dataProvider.addItemAt(_arg1, _arg2); invalidateList(); } public function replaceItemAt(_arg1:Object, _arg2:uint):Object{ return (_dataProvider.replaceItemAt(_arg1, _arg2)); } protected function handleDataChange(_arg1:DataChangeEvent):void{ var _local2:int; var _local3:int; var _local4:String; var _local5:uint; _local2 = _arg1.startIndex; _local3 = _arg1.endIndex; _local4 = _arg1.changeType; if (_local4 == DataChangeType.INVALIDATE_ALL){ clearSelection(); invalidateList(); } else { if (_local4 == DataChangeType.INVALIDATE){ _local5 = 0; while (_local5 < _arg1.items.length) { invalidateItem(_arg1.items[_local5]); _local5++; }; } else { if (_local4 == DataChangeType.ADD){ _local5 = 0; while (_local5 < _selectedIndices.length) { if (_selectedIndices[_local5] >= _local2){ _selectedIndices[_local5] = (_selectedIndices[_local5] + (_local2 - _local3)); }; _local5++; }; } else { if (_local4 == DataChangeType.REMOVE){ _local5 = 0; while (_local5 < _selectedIndices.length) { if (_selectedIndices[_local5] >= _local2){ if (_selectedIndices[_local5] <= _local3){ delete _selectedIndices[_local5]; } else { _selectedIndices[_local5] = (_selectedIndices[_local5] - ((_local2 - _local3) + 1)); }; }; _local5++; }; } else { if (_local4 == DataChangeType.REMOVE_ALL){ clearSelection(); } else { if (_local4 == DataChangeType.REPLACE){ } else { selectedItems = preChangeItems; preChangeItems = null; }; }; }; }; }; }; invalidate(InvalidationType.DATA); } protected function _invalidateList():void{ availableCellRenderers = []; while (activeCellRenderers.length > 0) { list.removeChild((activeCellRenderers.pop() as DisplayObject)); }; } protected function updateRendererStyles():void{ var _local1:Array; var _local2:uint; var _local3:uint; var _local4:String; _local1 = availableCellRenderers.concat(activeCellRenderers); _local2 = _local1.length; _local3 = 0; while (_local3 < _local2) { if (_local1[_local3].setStyle == null){ } else { for (_local4 in updatedRendererStyles) { _local1[_local3].setStyle(_local4, updatedRendererStyles[_local4]); }; _local1[_local3].drawNow(); }; _local3++; }; updatedRendererStyles = {}; } public function set selectedItem(_arg1:Object):void{ var _local2:int; _local2 = _dataProvider.getItemIndex(_arg1); selectedIndex = _local2; } public function sortItems(... _args){ return (_dataProvider.sort.apply(_dataProvider, _args)); } public function removeAll():void{ _dataProvider.removeAll(); } protected function handleCellRendererChange(_arg1:Event):void{ var _local2:ICellRenderer; var _local3:uint; _local2 = (_arg1.currentTarget as ICellRenderer); _local3 = _local2.listData.index; _dataProvider.invalidateItemAt(_local3); } protected function moveSelectionVertically(_arg1:uint, _arg2:Boolean, _arg3:Boolean):void{ } override protected function setHorizontalScrollPosition(_arg1:Number, _arg2:Boolean=false):void{ var _local3:Number; if (_arg1 == _horizontalScrollPosition){ return; }; _local3 = (_arg1 - _horizontalScrollPosition); _horizontalScrollPosition = _arg1; if (_arg2){ dispatchEvent(new ScrollEvent(ScrollBarDirection.HORIZONTAL, _local3, _arg1)); }; } public function scrollToSelected():void{ scrollToIndex(selectedIndex); } public function invalidateItem(_arg1:Object):void{ if (renderedItems[_arg1] == null){ return; }; invalidItems[_arg1] = true; invalidate(InvalidationType.DATA); } protected function handleCellRendererClick(_arg1:MouseEvent):void{ var _local2:ICellRenderer; var _local3:uint; var _local4:int; var _local5:int; var _local6:uint; if (!(_enabled)){ return; }; _local2 = (_arg1.currentTarget as ICellRenderer); _local3 = _local2.listData.index; if (((!(dispatchEvent(new ListEvent(ListEvent.ITEM_CLICK, false, true, _local2.listData.column, _local2.listData.row, _local3, _local2.data)))) || (!(_selectable)))){ return; }; _local4 = selectedIndices.indexOf(_local3); if (!(_allowMultipleSelection)){ if (_local4 != -1){ return; }; _local2.selected = true; _selectedIndices = [_local3]; lastCaretIndex = (caretIndex = _local3); } else { if (_arg1.shiftKey){ _local6 = ((_selectedIndices.length)>0) ? _selectedIndices[0] : _local3; _selectedIndices = []; if (_local6 > _local3){ _local5 = _local6; while (_local5 >= _local3) { _selectedIndices.push(_local5); _local5--; }; } else { _local5 = _local6; while (_local5 <= _local3) { _selectedIndices.push(_local5); _local5++; }; }; caretIndex = _local3; } else { if (_arg1.ctrlKey){ if (_local4 != -1){ _local2.selected = false; _selectedIndices.splice(_local4, 1); } else { _local2.selected = true; _selectedIndices.push(_local3); }; caretIndex = _local3; } else { _selectedIndices = [_local3]; lastCaretIndex = (caretIndex = _local3); }; }; }; dispatchEvent(new Event(Event.CHANGE)); invalidate(InvalidationType.DATA); } public function get length():uint{ return (_dataProvider.length); } public function get allowMultipleSelection():Boolean{ return (_allowMultipleSelection); } protected function onPreChange(_arg1:DataChangeEvent):void{ switch (_arg1.changeType){ case DataChangeType.REMOVE: case DataChangeType.ADD: case DataChangeType.INVALIDATE: case DataChangeType.REMOVE_ALL: case DataChangeType.REPLACE: case DataChangeType.INVALIDATE_ALL: break; default: preChangeItems = selectedItems; break; }; } public function getRendererStyle(_arg1:String, _arg2:int=-1):Object{ return (rendererStyles[_arg1]); } override protected function setVerticalScrollPosition(_arg1:Number, _arg2:Boolean=false):void{ var _local3:Number; if (_arg1 == _verticalScrollPosition){ return; }; _local3 = (_arg1 - _verticalScrollPosition); _verticalScrollPosition = _arg1; if (_arg2){ dispatchEvent(new ScrollEvent(ScrollBarDirection.VERTICAL, _local3, _arg1)); }; } protected function moveSelectionHorizontally(_arg1:uint, _arg2:Boolean, _arg3:Boolean):void{ } public function set selectedIndices(_arg1:Array):void{ if (!(_selectable)){ return; }; _selectedIndices = ((_arg1)==null) ? [] : _arg1.concat(); invalidate(InvalidationType.SELECTED); } public function get selectedIndex():int{ return (((_selectedIndices.length)==0) ? -1 : _selectedIndices[(_selectedIndices.length - 1)]); } override protected function draw():void{ super.draw(); } override protected function configUI():void{ super.configUI(); listHolder = new Sprite(); addChild(listHolder); listHolder.scrollRect = contentScrollRect; list = new Sprite(); listHolder.addChild(list); } public function addItem(_arg1:Object):void{ _dataProvider.addItem(_arg1); invalidateList(); } protected function handleCellRendererMouseEvent(_arg1:MouseEvent):void{ var _local2:ICellRenderer; var _local3:String; _local2 = (_arg1.target as ICellRenderer); _local3 = ((_arg1.type)==MouseEvent.ROLL_OVER) ? ListEvent.ITEM_ROLL_OVER : ListEvent.ITEM_ROLL_OUT; dispatchEvent(new ListEvent(_local3, false, false, _local2.listData.column, _local2.listData.row, _local2.listData.index, _local2.data)); } public function clearRendererStyle(_arg1:String, _arg2:int=-1):void{ delete rendererStyles[_arg1]; updatedRendererStyles[_arg1] = null; invalidate(InvalidationType.RENDERER_STYLES); } protected function handleCellRendererDoubleClick(_arg1:MouseEvent):void{ var _local2:ICellRenderer; var _local3:uint; if (!(_enabled)){ return; }; _local2 = (_arg1.currentTarget as ICellRenderer); _local3 = _local2.listData.index; dispatchEvent(new ListEvent(ListEvent.ITEM_DOUBLE_CLICK, false, true, _local2.listData.column, _local2.listData.row, _local3, _local2.data)); } public function get rowCount():uint{ return (0); } public function isItemSelected(_arg1:Object):Boolean{ return ((selectedItems.indexOf(_arg1) > -1)); } public function set dataProvider(_arg1:DataProvider):void{ if (_dataProvider != null){ _dataProvider.removeEventListener(DataChangeEvent.DATA_CHANGE, handleDataChange); _dataProvider.removeEventListener(DataChangeEvent.PRE_DATA_CHANGE, onPreChange); }; _dataProvider = _arg1; _dataProvider.addEventListener(DataChangeEvent.DATA_CHANGE, handleDataChange, false, 0, true); _dataProvider.addEventListener(DataChangeEvent.PRE_DATA_CHANGE, onPreChange, false, 0, true); clearSelection(); invalidateList(); } override protected function drawLayout():void{ super.drawLayout(); contentScrollRect = listHolder.scrollRect; contentScrollRect.width = availableWidth; contentScrollRect.height = availableHeight; listHolder.scrollRect = contentScrollRect; } public function getItemAt(_arg1:uint):Object{ return (_dataProvider.getItemAt(_arg1)); } override protected function initializeAccessibility():void{ if (SelectableList.createAccessibilityImplementation != null){ SelectableList.createAccessibilityImplementation(this); }; } public function scrollToIndex(_arg1:int):void{ } public function removeItem(_arg1:Object):Object{ return (_dataProvider.removeItem(_arg1)); } public function get dataProvider():DataProvider{ return (_dataProvider); } public function set maxHorizontalScrollPosition(_arg1:Number):void{ _maxHorizontalScrollPosition = _arg1; invalidate(InvalidationType.SIZE); } public function setRendererStyle(_arg1:String, _arg2:Object, _arg3:uint=0):void{ if (rendererStyles[_arg1] == _arg2){ return; }; updatedRendererStyles[_arg1] = _arg2; rendererStyles[_arg1] = _arg2; invalidate(InvalidationType.RENDERER_STYLES); } public function invalidateItemAt(_arg1:uint):void{ var _local2:Object; _local2 = _dataProvider.getItemAt(_arg1); if (_local2 != null){ invalidateItem(_local2); }; } public function set selectedItems(_arg1:Array):void{ var _local2:Array; var _local3:uint; var _local4:int; if (_arg1 == null){ selectedIndices = null; return; }; _local2 = []; _local3 = 0; while (_local3 < _arg1.length) { _local4 = _dataProvider.getItemIndex(_arg1[_local3]); if (_local4 != -1){ _local2.push(_local4); }; _local3++; }; selectedIndices = _local2; } public function clearSelection():void{ selectedIndex = -1; } override public function get maxHorizontalScrollPosition():Number{ return (_maxHorizontalScrollPosition); } public function get selectedItems():Array{ var _local1:Array; var _local2:uint; _local1 = []; _local2 = 0; while (_local2 < _selectedIndices.length) { _local1.push(_dataProvider.getItemAt(_selectedIndices[_local2])); _local2++; }; return (_local1); } public function set selectedIndex(_arg1:int):void{ selectedIndices = ((_arg1)==-1) ? null : [_arg1]; } public static function getStyleDefinition():Object{ return (mergeStyles(defaultStyles, BaseScrollPane.getStyleDefinition())); } } }//package fl.controls
Section 179
//Slider (fl.controls.Slider) package fl.controls { import fl.core.*; import fl.events.*; import flash.display.*; import flash.events.*; import flash.ui.*; import fl.managers.*; public class Slider extends UIComponent implements IFocusManagerComponent { protected var _direction:String; protected var _liveDragging:Boolean;// = false protected var _value:Number;// = 0 protected var _snapInterval:Number;// = 0 protected var _minimum:Number;// = 0 protected var _maximum:Number;// = 10 protected var track:BaseButton; protected var _tickInterval:Number;// = 0 protected var tickContainer:Sprite; protected var thumb:BaseButton; protected static const TICK_STYLES:Object = {upSkin:"tickSkin"}; protected static const TRACK_STYLES:Object = {upSkin:"sliderTrackSkin", overSkin:"sliderTrackSkin", downSkin:"sliderTrackSkin", disabledSkin:"sliderTrackDisabledSkin"}; protected static const THUMB_STYLES:Object = {upSkin:"thumbUpSkin", overSkin:"thumbOverSkin", downSkin:"thumbDownSkin", disabledSkin:"thumbDisabledSkin"}; protected static var defaultStyles:Object = {thumbUpSkin:"SliderThumb_upSkin", thumbOverSkin:"SliderThumb_overSkin", thumbDownSkin:"SliderThumb_downSkin", thumbDisabledSkin:"SliderThumb_disabledSkin", sliderTrackSkin:"SliderTrack_skin", sliderTrackDisabledSkin:"SliderTrack_disabledSkin", tickSkin:"SliderTick_skin", focusRectSkin:null, focusRectPadding:null}; public function Slider(){ _direction = SliderDirection.HORIZONTAL; _minimum = 0; _maximum = 10; _value = 0; _tickInterval = 0; _snapInterval = 0; _liveDragging = false; super(); setStyles(); } public function get minimum():Number{ return (_minimum); } public function set minimum(_arg1:Number):void{ _minimum = _arg1; this.value = Math.max(_arg1, this.value); invalidate(InvalidationType.DATA); } public function get maximum():Number{ return (_maximum); } protected function positionThumb():void{ thumb.x = ((((_direction)==SliderDirection.VERTICAL) ? ((maximum - minimum) - value) : (value - minimum) / (maximum - minimum)) * _width); } protected function clearTicks():void{ if (((!(tickContainer)) || (!(tickContainer.parent)))){ return; }; removeChild(tickContainer); } protected function onTrackClick(_arg1:MouseEvent):void{ calculateValue(track.mouseX, InteractionInputType.MOUSE, SliderEventClickTarget.TRACK); if (!(liveDragging)){ dispatchEvent(new SliderEvent(SliderEvent.CHANGE, value, SliderEventClickTarget.TRACK, InteractionInputType.MOUSE)); }; } public function set maximum(_arg1:Number):void{ _maximum = _arg1; this.value = Math.min(_arg1, this.value); invalidate(InvalidationType.DATA); } public function get liveDragging():Boolean{ return (_liveDragging); } protected function doDrag(_arg1:MouseEvent):void{ var _local2:Number; var _local3:Number; _local2 = (_width / snapInterval); _local3 = track.mouseX; calculateValue(_local3, InteractionInputType.MOUSE, SliderEventClickTarget.THUMB); dispatchEvent(new SliderEvent(SliderEvent.THUMB_DRAG, value, SliderEventClickTarget.THUMB, InteractionInputType.MOUSE)); } override protected function keyDownHandler(_arg1:KeyboardEvent):void{ var _local2:uint; var _local3:Number; var _local4:Boolean; if (!(enabled)){ return; }; _local2 = ((snapInterval)>0) ? snapInterval : 1; _local4 = (direction == SliderDirection.HORIZONTAL); if ((((((_arg1.keyCode == Keyboard.DOWN)) && (!(_local4)))) || ((((_arg1.keyCode == Keyboard.LEFT)) && (_local4))))){ _local3 = (value - _local2); } else { if ((((((_arg1.keyCode == Keyboard.UP)) && (!(_local4)))) || ((((_arg1.keyCode == Keyboard.RIGHT)) && (_local4))))){ _local3 = (value + _local2); } else { if ((((((_arg1.keyCode == Keyboard.PAGE_DOWN)) && (!(_local4)))) || ((((_arg1.keyCode == Keyboard.HOME)) && (_local4))))){ _local3 = minimum; } else { if ((((((_arg1.keyCode == Keyboard.PAGE_UP)) && (!(_local4)))) || ((((_arg1.keyCode == Keyboard.END)) && (_local4))))){ _local3 = maximum; }; }; }; }; if (!(isNaN(_local3))){ _arg1.stopPropagation(); doSetValue(_local3, InteractionInputType.KEYBOARD, null, _arg1.keyCode); }; } override public function set enabled(_arg1:Boolean):void{ if (enabled == _arg1){ return; }; super.enabled = _arg1; track.enabled = (thumb.enabled = _arg1); } protected function thumbPressHandler(_arg1:MouseEvent):void{ stage.addEventListener(MouseEvent.MOUSE_MOVE, doDrag, false, 0, true); stage.addEventListener(MouseEvent.MOUSE_UP, thumbReleaseHandler, false, 0, true); dispatchEvent(new SliderEvent(SliderEvent.THUMB_PRESS, value, InteractionInputType.MOUSE, SliderEventClickTarget.THUMB)); } public function get snapInterval():Number{ return (_snapInterval); } protected function thumbReleaseHandler(_arg1:MouseEvent):void{ stage.removeEventListener(MouseEvent.MOUSE_MOVE, doDrag); stage.removeEventListener(MouseEvent.MOUSE_UP, thumbReleaseHandler); dispatchEvent(new SliderEvent(SliderEvent.THUMB_RELEASE, value, InteractionInputType.MOUSE, SliderEventClickTarget.THUMB)); dispatchEvent(new SliderEvent(SliderEvent.CHANGE, value, SliderEventClickTarget.THUMB, InteractionInputType.MOUSE)); } public function set liveDragging(_arg1:Boolean):void{ _liveDragging = _arg1; } public function set value(_arg1:Number):void{ doSetValue(_arg1); } public function set direction(_arg1:String):void{ var _local2:Boolean; _direction = _arg1; _local2 = (_direction == SliderDirection.VERTICAL); if (isLivePreview){ if (_local2){ setScaleY(-1); y = track.height; } else { setScaleY(1); y = 0; }; positionThumb(); return; }; if (((_local2) && (componentInspectorSetting))){ if ((rotation % 90) == 0){ setScaleY(-1); }; }; if (!(componentInspectorSetting)){ rotation = (_local2) ? 90 : 0; }; } public function set tickInterval(_arg1:Number):void{ _tickInterval = _arg1; invalidate(InvalidationType.SIZE); } override public function get enabled():Boolean{ return (super.enabled); } override protected function draw():void{ if (isInvalid(InvalidationType.STYLES)){ setStyles(); invalidate(InvalidationType.SIZE, false); }; if (isInvalid(InvalidationType.SIZE)){ track.setSize(_width, track.height); track.drawNow(); thumb.drawNow(); }; if (tickInterval > 0){ drawTicks(); } else { clearTicks(); }; positionThumb(); super.draw(); } override protected function configUI():void{ super.configUI(); thumb = new BaseButton(); thumb.setSize(13, 13); thumb.autoRepeat = false; addChild(thumb); thumb.addEventListener(MouseEvent.MOUSE_DOWN, thumbPressHandler, false, 0, true); track = new BaseButton(); track.move(0, 0); track.setSize(80, 4); track.autoRepeat = false; track.useHandCursor = false; track.addEventListener(MouseEvent.CLICK, onTrackClick, false, 0, true); addChildAt(track, 0); } public function set snapInterval(_arg1:Number):void{ _snapInterval = _arg1; } public function get value():Number{ return (_value); } public function get direction():String{ return (_direction); } public function get tickInterval():Number{ return (_tickInterval); } override public function setSize(_arg1:Number, _arg2:Number):void{ if ((((_direction == SliderDirection.VERTICAL)) && (!(isLivePreview)))){ super.setSize(_arg2, _arg1); } else { super.setSize(_arg1, _arg2); }; invalidate(InvalidationType.SIZE); } protected function drawTicks():void{ var _local1:Number; var _local2:Number; var _local3:Number; var _local4:uint; var _local5:DisplayObject; clearTicks(); tickContainer = new Sprite(); _local1 = ((maximum)<1) ? (tickInterval / 100) : tickInterval; _local2 = ((maximum - minimum) / _local1); _local3 = (_width / _local2); _local4 = 0; while (_local4 <= _local2) { _local5 = getDisplayObjectInstance(getStyleValue("tickSkin")); _local5.x = (_local3 * _local4); _local5.y = ((track.y - _local5.height) - 2); tickContainer.addChild(_local5); _local4++; }; addChild(tickContainer); } protected function calculateValue(_arg1:Number, _arg2:String, _arg3:String, _arg4:int=undefined):void{ var _local5:Number; _local5 = ((_arg1 / _width) * (maximum - minimum)); if (_direction == SliderDirection.VERTICAL){ _local5 = (maximum - _local5); } else { _local5 = (minimum + _local5); }; doSetValue(_local5, _arg2, _arg3, _arg4); } protected function getPrecision(_arg1:Number):Number{ var _local2:String; _local2 = _arg1.toString(); if (_local2.indexOf(".") == -1){ return (0); }; return (_local2.split(".").pop().length); } protected function doSetValue(_arg1:Number, _arg2:String=null, _arg3:String=null, _arg4:int=undefined):void{ var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; _local5 = _value; if (((!((_snapInterval == 0))) && (!((_snapInterval == 1))))){ _local6 = Math.pow(10, getPrecision(snapInterval)); _local7 = (_snapInterval * _local6); _local8 = Math.round((_arg1 * _local6)); _local9 = (Math.round((_local8 / _local7)) * _local7); _arg1 = (_local9 / _local6); _value = Math.max(minimum, Math.min(maximum, _arg1)); } else { _value = Math.max(minimum, Math.min(maximum, Math.round(_arg1))); }; if (((!((_local5 == _value))) && (((((liveDragging) && (!((_arg3 == null))))) || ((_arg2 == InteractionInputType.KEYBOARD)))))){ dispatchEvent(new SliderEvent(SliderEvent.CHANGE, value, _arg3, _arg2, _arg4)); }; positionThumb(); } protected function setStyles():void{ copyStylesToChild(thumb, THUMB_STYLES); copyStylesToChild(track, TRACK_STYLES); } public static function getStyleDefinition():Object{ return (defaultStyles); } } }//package fl.controls
Section 180
//SliderDirection (fl.controls.SliderDirection) package fl.controls { public class SliderDirection { public static var HORIZONTAL:String = "horizontal"; public static var VERTICAL:String = "vertical"; } }//package fl.controls
Section 181
//TextInput (fl.controls.TextInput) package fl.controls { import fl.core.*; import flash.text.*; import flash.ui.*; import fl.events.*; import flash.events.*; import flash.display.*; import fl.managers.*; public class TextInput extends UIComponent implements IFocusManagerComponent { protected var _html:Boolean;// = false protected var _savedHTML:String; protected var background:DisplayObject; protected var _editable:Boolean;// = true public var textField:TextField; private static var defaultStyles:Object = {upSkin:"TextInput_upSkin", disabledSkin:"TextInput_disabledSkin", focusRectSkin:null, focusRectPadding:null, textFormat:null, disabledTextFormat:null, textPadding:0, embedFonts:false}; public static var createAccessibilityImplementation:Function; public function TextInput(){ _editable = true; _html = false; super(); } override public function drawFocus(_arg1:Boolean):void{ if (focusTarget != null){ focusTarget.drawFocus(_arg1); return; }; super.drawFocus(_arg1); } public function set imeMode(_arg1:String):void{ _imeMode = _arg1; } override protected function isOurFocus(_arg1:DisplayObject):Boolean{ return ((((_arg1 == textField)) || (super.isOurFocus(_arg1)))); } protected function handleKeyDown(_arg1:KeyboardEvent):void{ if (_arg1.keyCode == Keyboard.ENTER){ dispatchEvent(new ComponentEvent(ComponentEvent.ENTER, true)); }; } public function set text(_arg1:String):void{ textField.text = _arg1; _html = false; invalidate(InvalidationType.DATA); invalidate(InvalidationType.STYLES); } protected function updateTextFieldType():void{ textField.type = (((enabled) && (editable))) ? TextFieldType.INPUT : TextFieldType.DYNAMIC; textField.selectable = enabled; } public function get selectionEndIndex():int{ return (textField.selectionEndIndex); } public function get editable():Boolean{ return (_editable); } override protected function focusInHandler(_arg1:FocusEvent):void{ var _local2:IFocusManager; if (_arg1.target == this){ stage.focus = textField; }; _local2 = focusManager; if (((editable) && (_local2))){ _local2.showFocusIndicator = true; if (((textField.selectable) && ((textField.selectionBeginIndex == textField.selectionBeginIndex)))){ setSelection(0, textField.length); }; }; super.focusInHandler(_arg1); if (editable){ setIMEMode(true); }; } public function get selectionBeginIndex():int{ return (textField.selectionBeginIndex); } public function set alwaysShowSelection(_arg1:Boolean):void{ textField.alwaysShowSelection = _arg1; } override public function set enabled(_arg1:Boolean):void{ super.enabled = _arg1; updateTextFieldType(); } protected function setEmbedFont(){ var _local1:Object; _local1 = getStyleValue("embedFonts"); if (_local1 != null){ textField.embedFonts = _local1; }; } public function get horizontalScrollPosition():int{ return (textField.scrollH); } public function set condenseWhite(_arg1:Boolean):void{ textField.condenseWhite = _arg1; } public function set displayAsPassword(_arg1:Boolean):void{ textField.displayAsPassword = _arg1; } public function set horizontalScrollPosition(_arg1:int):void{ textField.scrollH = _arg1; } public function get restrict():String{ return (textField.restrict); } public function get textWidth():Number{ return (textField.textWidth); } public function get textHeight():Number{ return (textField.textHeight); } public function set editable(_arg1:Boolean):void{ _editable = _arg1; updateTextFieldType(); } public function get maxChars():int{ return (textField.maxChars); } public function get length():int{ return (textField.length); } public function getLineMetrics(_arg1:int):TextLineMetrics{ return (textField.getLineMetrics(_arg1)); } public function get imeMode():String{ return (_imeMode); } override protected function focusOutHandler(_arg1:FocusEvent):void{ super.focusOutHandler(_arg1); if (editable){ setIMEMode(false); }; } public function set htmlText(_arg1:String):void{ if (_arg1 == ""){ text = ""; return; }; _html = true; _savedHTML = _arg1; textField.htmlText = _arg1; invalidate(InvalidationType.DATA); invalidate(InvalidationType.STYLES); } public function get text():String{ return (textField.text); } override public function get enabled():Boolean{ return (super.enabled); } public function get condenseWhite():Boolean{ return (textField.condenseWhite); } public function get alwaysShowSelection():Boolean{ return (textField.alwaysShowSelection); } override protected function draw():void{ var _local1:Object; if (isInvalid(InvalidationType.STYLES, InvalidationType.STATE)){ drawTextFormat(); drawBackground(); _local1 = getStyleValue("embedFonts"); if (_local1 != null){ textField.embedFonts = _local1; }; invalidate(InvalidationType.SIZE, false); }; if (isInvalid(InvalidationType.SIZE)){ drawLayout(); }; super.draw(); } protected function handleTextInput(_arg1:TextEvent):void{ _arg1.stopPropagation(); dispatchEvent(new TextEvent(TextEvent.TEXT_INPUT, true, false, _arg1.text)); } override protected function configUI():void{ super.configUI(); tabChildren = true; textField = new TextField(); addChild(textField); updateTextFieldType(); textField.addEventListener(TextEvent.TEXT_INPUT, handleTextInput, false, 0, true); textField.addEventListener(Event.CHANGE, handleChange, false, 0, true); textField.addEventListener(KeyboardEvent.KEY_DOWN, handleKeyDown, false, 0, true); } public function setSelection(_arg1:int, _arg2:int):void{ textField.setSelection(_arg1, _arg2); } public function get displayAsPassword():Boolean{ return (textField.displayAsPassword); } public function appendText(_arg1:String):void{ textField.appendText(_arg1); } public function set restrict(_arg1:String):void{ if (((componentInspectorSetting) && ((_arg1 == "")))){ _arg1 = null; }; textField.restrict = _arg1; } public function get htmlText():String{ return (textField.htmlText); } protected function drawBackground():void{ var _local1:DisplayObject; var _local2:String; _local1 = background; _local2 = (enabled) ? "upSkin" : "disabledSkin"; background = getDisplayObjectInstance(getStyleValue(_local2)); if (background == null){ return; }; addChildAt(background, 0); if (((((!((_local1 == null))) && (!((_local1 == background))))) && (contains(_local1)))){ removeChild(_local1); }; } override public function setFocus():void{ stage.focus = textField; } protected function drawLayout():void{ var _local1:Number; _local1 = Number(getStyleValue("textPadding")); if (background != null){ background.width = width; background.height = height; }; textField.width = (width - (2 * _local1)); textField.height = (height - (2 * _local1)); textField.x = (textField.y = _local1); } public function set maxChars(_arg1:int):void{ textField.maxChars = _arg1; } public function get maxHorizontalScrollPosition():int{ return (textField.maxScrollH); } protected function drawTextFormat():void{ var _local1:Object; var _local2:TextFormat; var _local3:TextFormat; _local1 = UIComponent.getStyleDefinition(); _local2 = (enabled) ? (_local1.defaultTextFormat as TextFormat) : (_local1.defaultDisabledTextFormat as TextFormat); textField.setTextFormat(_local2); _local3 = (getStyleValue((enabled) ? "textFormat" : "disabledTextFormat") as TextFormat); if (_local3 != null){ textField.setTextFormat(_local3); } else { _local3 = _local2; }; textField.defaultTextFormat = _local3; setEmbedFont(); if (_html){ textField.htmlText = _savedHTML; }; } protected function handleChange(_arg1:Event):void{ _arg1.stopPropagation(); dispatchEvent(new Event(Event.CHANGE, true)); } public static function getStyleDefinition():Object{ return (defaultStyles); } } }//package fl.controls
Section 182
//ComponentShim (fl.core.ComponentShim) package fl.core { import flash.display.*; public dynamic class ComponentShim extends MovieClip { } }//package fl.core
Section 183
//InvalidationType (fl.core.InvalidationType) package fl.core { public class InvalidationType { public static const SIZE:String = "size"; public static const ALL:String = "all"; public static const DATA:String = "data"; public static const SCROLL:String = "scroll"; public static const STATE:String = "state"; public static const STYLES:String = "styles"; public static const SELECTED:String = "selected"; public static const RENDERER_STYLES:String = "rendererStyles"; } }//package fl.core
Section 184
//UIComponent (fl.core.UIComponent) package fl.core { import flash.text.*; import flash.utils.*; import fl.managers.*; import flash.events.*; import fl.events.*; import flash.display.*; import flash.system.*; public class UIComponent extends Sprite { protected var _enabled:Boolean;// = true private var _mouseFocusEnabled:Boolean;// = true protected var startHeight:Number; protected var _height:Number; protected var _oldIMEMode:String;// = null protected var startWidth:Number; public var focusTarget:IFocusManagerComponent; protected var errorCaught:Boolean;// = false protected var uiFocusRect:DisplayObject; protected var _width:Number; public var version:String;// = "3.0.0.15" protected var isFocused:Boolean;// = false protected var callLaterMethods:Dictionary; private var _focusEnabled:Boolean;// = true private var tempText:TextField; protected var invalidateFlag:Boolean;// = false protected var _inspector:Boolean;// = false protected var sharedStyles:Object; protected var invalidHash:Object; protected var isLivePreview:Boolean;// = false protected var _imeMode:String;// = null protected var instanceStyles:Object; protected var _x:Number; protected var _y:Number; public static var inCallLaterPhase:Boolean = false; private static var defaultStyles:Object = {focusRectSkin:"focusRectSkin", focusRectPadding:2, textFormat:new TextFormat("_sans", 11, 0, false, false, false, "", "", TextFormatAlign.LEFT, 0, 0, 0, 0), disabledTextFormat:new TextFormat("_sans", 11, 0x999999, false, false, false, "", "", TextFormatAlign.LEFT, 0, 0, 0, 0), defaultTextFormat:new TextFormat("_sans", 11, 0, false, false, false, "", "", TextFormatAlign.LEFT, 0, 0, 0, 0), defaultDisabledTextFormat:new TextFormat("_sans", 11, 0x999999, false, false, false, "", "", TextFormatAlign.LEFT, 0, 0, 0, 0)}; public static var createAccessibilityImplementation:Function; private static var focusManagers:Dictionary = new Dictionary(false); public function UIComponent(){ version = "3.0.0.15"; isLivePreview = false; invalidateFlag = false; _enabled = true; isFocused = false; _focusEnabled = true; _mouseFocusEnabled = true; _imeMode = null; _oldIMEMode = null; errorCaught = false; _inspector = false; super(); instanceStyles = {}; sharedStyles = {}; invalidHash = {}; callLaterMethods = new Dictionary(); StyleManager.registerInstance(this); configUI(); invalidate(InvalidationType.ALL); tabEnabled = (this is IFocusManagerComponent); focusRect = false; if (tabEnabled){ addEventListener(FocusEvent.FOCUS_IN, focusInHandler); addEventListener(FocusEvent.FOCUS_OUT, focusOutHandler); addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler); addEventListener(KeyboardEvent.KEY_UP, keyUpHandler); }; initializeFocusManager(); addEventListener(Event.ENTER_FRAME, hookAccessibility, false, 0, true); } public function drawFocus(_arg1:Boolean):void{ var _local2:Number; isFocused = _arg1; if (((!((uiFocusRect == null))) && (contains(uiFocusRect)))){ removeChild(uiFocusRect); uiFocusRect = null; }; if (_arg1){ uiFocusRect = (getDisplayObjectInstance(getStyleValue("focusRectSkin")) as Sprite); if (uiFocusRect == null){ return; }; _local2 = Number(getStyleValue("focusRectPadding")); uiFocusRect.x = -(_local2); uiFocusRect.y = -(_local2); uiFocusRect.width = (width + (_local2 * 2)); uiFocusRect.height = (height + (_local2 * 2)); addChildAt(uiFocusRect, 0); }; } private function callLaterDispatcher(_arg1:Event):void{ var _local2:Dictionary; var _local3:Object; if (_arg1.type == Event.ADDED_TO_STAGE){ removeEventListener(Event.ADDED_TO_STAGE, callLaterDispatcher); stage.addEventListener(Event.RENDER, callLaterDispatcher, false, 0, true); stage.invalidate(); return; }; _arg1.target.removeEventListener(Event.RENDER, callLaterDispatcher); if (stage == null){ addEventListener(Event.ADDED_TO_STAGE, callLaterDispatcher, false, 0, true); return; }; inCallLaterPhase = true; _local2 = callLaterMethods; for (_local3 in _local2) { _local3(); delete _local2[_local3]; }; inCallLaterPhase = false; } private function addedHandler(_arg1:Event):void{ removeEventListener("addedToStage", addedHandler); initializeFocusManager(); } protected function getStyleValue(_arg1:String):Object{ return (((instanceStyles[_arg1])==null) ? sharedStyles[_arg1] : instanceStyles[_arg1]); } protected function isOurFocus(_arg1:DisplayObject):Boolean{ return ((_arg1 == this)); } override public function get scaleX():Number{ return ((width / startWidth)); } override public function get scaleY():Number{ return ((height / startHeight)); } override public function set height(_arg1:Number):void{ if (_height == _arg1){ return; }; setSize(width, _arg1); } protected function keyDownHandler(_arg1:KeyboardEvent):void{ } protected function focusInHandler(_arg1:FocusEvent):void{ var _local2:IFocusManager; if (isOurFocus((_arg1.target as DisplayObject))){ _local2 = focusManager; if (((_local2) && (_local2.showFocusIndicator))){ drawFocus(true); isFocused = true; }; }; } public function setStyle(_arg1:String, _arg2:Object):void{ if ((((instanceStyles[_arg1] === _arg2)) && (!((_arg2 is TextFormat))))){ return; }; instanceStyles[_arg1] = _arg2; invalidate(InvalidationType.STYLES); } override public function get visible():Boolean{ return (super.visible); } public function get componentInspectorSetting():Boolean{ return (_inspector); } override public function get x():Number{ return ((isNaN(_x)) ? super.x : _x); } override public function get y():Number{ return ((isNaN(_y)) ? super.y : _y); } protected function setIMEMode(_arg1:Boolean){ var enabled = _arg1; if (_imeMode != null){ if (enabled){ IME.enabled = true; _oldIMEMode = IME.conversionMode; try { if (((!(errorCaught)) && (!((IME.conversionMode == IMEConversionMode.UNKNOWN))))){ IME.conversionMode = _imeMode; }; errorCaught = false; } catch(e:Error) { errorCaught = true; throw (new Error(("IME mode not supported: " + _imeMode))); }; } else { if (((!((IME.conversionMode == IMEConversionMode.UNKNOWN))) && (!((_oldIMEMode == IMEConversionMode.UNKNOWN))))){ IME.conversionMode = _oldIMEMode; }; IME.enabled = false; }; }; } public function set enabled(_arg1:Boolean):void{ if (_arg1 == _enabled){ return; }; _enabled = _arg1; invalidate(InvalidationType.STATE); } public function setSharedStyle(_arg1:String, _arg2:Object):void{ if ((((sharedStyles[_arg1] === _arg2)) && (!((_arg2 is TextFormat))))){ return; }; sharedStyles[_arg1] = _arg2; if (instanceStyles[_arg1] == null){ invalidate(InvalidationType.STYLES); }; } protected function keyUpHandler(_arg1:KeyboardEvent):void{ } public function set focusEnabled(_arg1:Boolean):void{ _focusEnabled = _arg1; } override public function set scaleX(_arg1:Number):void{ setSize((startWidth * _arg1), height); } public function get mouseFocusEnabled():Boolean{ return (_mouseFocusEnabled); } override public function set scaleY(_arg1:Number):void{ setSize(width, (startHeight * _arg1)); } protected function getDisplayObjectInstance(_arg1:Object):DisplayObject{ var classDef:Object; var skin = _arg1; classDef = null; if ((skin is Class)){ return ((new (skin) as DisplayObject)); }; if ((skin is DisplayObject)){ (skin as DisplayObject).x = 0; (skin as DisplayObject).y = 0; return ((skin as DisplayObject)); }; try { classDef = getDefinitionByName(skin.toString()); } catch(e:Error) { try { classDef = (loaderInfo.applicationDomain.getDefinition(skin.toString()) as Object); } catch(e:Error) { }; }; if (classDef == null){ return (null); }; return ((new (classDef) as DisplayObject)); } protected function copyStylesToChild(_arg1:UIComponent, _arg2:Object):void{ var _local3:String; for (_local3 in _arg2) { _arg1.setStyle(_local3, getStyleValue(_arg2[_local3])); }; } protected function beforeComponentParameters():void{ } protected function callLater(_arg1:Function):void{ if (inCallLaterPhase){ return; }; callLaterMethods[_arg1] = true; if (stage != null){ stage.addEventListener(Event.RENDER, callLaterDispatcher, false, 0, true); stage.invalidate(); } else { addEventListener(Event.ADDED_TO_STAGE, callLaterDispatcher, false, 0, true); }; } protected function createFocusManager():void{ if (focusManagers[stage] == null){ focusManagers[stage] = new FocusManager(stage); }; } override public function set visible(_arg1:Boolean):void{ var _local2:String; if (super.visible == _arg1){ return; }; super.visible = _arg1; _local2 = (_arg1) ? ComponentEvent.SHOW : ComponentEvent.HIDE; dispatchEvent(new ComponentEvent(_local2, true)); } protected function hookAccessibility(_arg1:Event):void{ removeEventListener(Event.ENTER_FRAME, hookAccessibility); initializeAccessibility(); } public function set componentInspectorSetting(_arg1:Boolean):void{ _inspector = _arg1; if (_inspector){ beforeComponentParameters(); } else { afterComponentParameters(); }; } override public function set x(_arg1:Number):void{ move(_arg1, _y); } public function drawNow():void{ draw(); } override public function set y(_arg1:Number):void{ move(_x, _arg1); } protected function checkLivePreview():Boolean{ var className:String; if (parent == null){ return (false); }; try { className = getQualifiedClassName(parent); } catch(e:Error) { }; return ((className == "fl.livepreview::LivePreviewParent")); } protected function focusOutHandler(_arg1:FocusEvent):void{ if (isOurFocus((_arg1.target as DisplayObject))){ drawFocus(false); isFocused = false; }; } public function set mouseFocusEnabled(_arg1:Boolean):void{ _mouseFocusEnabled = _arg1; } public function getFocus():InteractiveObject{ if (stage){ return (stage.focus); }; return (null); } protected function validate():void{ invalidHash = {}; } override public function get height():Number{ return (_height); } public function invalidate(_arg1:String="all", _arg2:Boolean=true):void{ invalidHash[_arg1] = true; if (_arg2){ this.callLater(draw); }; } public function get enabled():Boolean{ return (_enabled); } protected function getScaleX():Number{ return (super.scaleX); } protected function getScaleY():Number{ return (super.scaleY); } public function get focusEnabled():Boolean{ return (_focusEnabled); } protected function afterComponentParameters():void{ } protected function draw():void{ if (isInvalid(InvalidationType.SIZE, InvalidationType.STYLES)){ if (((isFocused) && (focusManager.showFocusIndicator))){ drawFocus(true); }; }; validate(); } protected function configUI():void{ var _local1:Number; var _local2:Number; var _local3:Number; isLivePreview = checkLivePreview(); _local1 = rotation; rotation = 0; _local2 = super.width; _local3 = super.height; var _local4 = 1; super.scaleY = _local4; super.scaleX = _local4; setSize(_local2, _local3); move(super.x, super.y); rotation = _local1; startWidth = _local2; startHeight = _local3; if (numChildren > 0){ removeChildAt(0); }; } protected function setScaleX(_arg1:Number):void{ super.scaleX = _arg1; } protected function setScaleY(_arg1:Number):void{ super.scaleY = _arg1; } private function initializeFocusManager():void{ if (stage == null){ addEventListener(Event.ADDED_TO_STAGE, addedHandler, false, 0, true); } else { createFocusManager(); }; } public function set focusManager(_arg1:IFocusManager):void{ UIComponent.focusManagers[this] = _arg1; } public function clearStyle(_arg1:String):void{ setStyle(_arg1, null); } protected function isInvalid(_arg1:String, ... _args):Boolean{ if (((invalidHash[_arg1]) || (invalidHash[InvalidationType.ALL]))){ return (true); }; while (_args.length > 0) { if (invalidHash[_args.pop()]){ return (true); }; }; return (false); } public function setSize(_arg1:Number, _arg2:Number):void{ _width = _arg1; _height = _arg2; invalidate(InvalidationType.SIZE); dispatchEvent(new ComponentEvent(ComponentEvent.RESIZE, false)); } override public function set width(_arg1:Number):void{ if (_width == _arg1){ return; }; setSize(_arg1, height); } public function setFocus():void{ if (stage){ stage.focus = this; }; } protected function initializeAccessibility():void{ if (UIComponent.createAccessibilityImplementation != null){ UIComponent.createAccessibilityImplementation(this); }; } public function get focusManager():IFocusManager{ var _local1:DisplayObject; _local1 = this; while (_local1) { if (UIComponent.focusManagers[_local1] != null){ return (IFocusManager(UIComponent.focusManagers[_local1])); }; _local1 = _local1.parent; }; return (null); } override public function get width():Number{ return (_width); } public function move(_arg1:Number, _arg2:Number):void{ _x = _arg1; _y = _arg2; super.x = Math.round(_arg1); super.y = Math.round(_arg2); dispatchEvent(new ComponentEvent(ComponentEvent.MOVE)); } public function validateNow():void{ invalidate(InvalidationType.ALL, false); draw(); } public function getStyle(_arg1:String):Object{ return (instanceStyles[_arg1]); } public static function getStyleDefinition():Object{ return (defaultStyles); } public static function mergeStyles(... _args):Object{ var _local2:Object; var _local3:uint; var _local4:uint; var _local5:Object; var _local6:String; _local2 = {}; _local3 = _args.length; _local4 = 0; while (_local4 < _local3) { _local5 = _args[_local4]; for (_local6 in _local5) { if (_local2[_local6] != null){ } else { _local2[_local6] = _args[_local4][_local6]; }; }; _local4++; }; return (_local2); } } }//package fl.core
Section 185
//DataProvider (fl.data.DataProvider) package fl.data { import fl.events.*; import flash.events.*; public class DataProvider extends EventDispatcher { protected var data:Array; public function DataProvider(_arg1:Object=null){ if (_arg1 == null){ data = []; } else { data = getDataFromObject(_arg1); }; } protected function dispatchPreChangeEvent(_arg1:String, _arg2:Array, _arg3:int, _arg4:int):void{ dispatchEvent(new DataChangeEvent(DataChangeEvent.PRE_DATA_CHANGE, _arg1, _arg2, _arg3, _arg4)); } public function invalidateItemAt(_arg1:int):void{ checkIndex(_arg1, (data.length - 1)); dispatchChangeEvent(DataChangeType.INVALIDATE, [data[_arg1]], _arg1, _arg1); } public function getItemIndex(_arg1:Object):int{ return (data.indexOf(_arg1)); } protected function getDataFromObject(_arg1:Object):Array{ var _local2:Array; var _local3:Array; var _local4:uint; var _local5:Object; var _local6:XML; var _local7:XMLList; var _local8:XML; var _local9:XMLList; var _local10:XML; var _local11:XMLList; var _local12:XML; if ((_arg1 is Array)){ _local3 = (_arg1 as Array); if (_local3.length > 0){ if ((((_local3[0] is String)) || ((_local3[0] is Number)))){ _local2 = []; _local4 = 0; while (_local4 < _local3.length) { _local5 = {label:String(_local3[_local4]), data:_local3[_local4]}; _local2.push(_local5); _local4++; }; return (_local2); }; }; return (_arg1.concat()); //unresolved jump }; if ((_arg1 is DataProvider)){ return (_arg1.toArray()); }; if ((_arg1 is XML)){ _local6 = (_arg1 as XML); _local2 = []; _local7 = _local6.*; for each (_local8 in _local7) { _arg1 = {}; _local9 = _local8.attributes(); for each (_local10 in _local9) { _arg1[_local10.localName()] = _local10.toString(); }; _local11 = _local8.*; for each (_local12 in _local11) { if (_local12.hasSimpleContent()){ _arg1[_local12.localName()] = _local12.toString(); }; }; _local2.push(_arg1); }; return (_local2); //unresolved jump }; throw (new TypeError((("Error: Type Coercion failed: cannot convert " + _arg1) + " to Array or DataProvider."))); } public function removeItemAt(_arg1:uint):Object{ var _local2:Array; checkIndex(_arg1, (data.length - 1)); dispatchPreChangeEvent(DataChangeType.REMOVE, data.slice(_arg1, (_arg1 + 1)), _arg1, _arg1); _local2 = data.splice(_arg1, 1); dispatchChangeEvent(DataChangeType.REMOVE, _local2, _arg1, _arg1); return (_local2[0]); } public function addItem(_arg1:Object):void{ dispatchPreChangeEvent(DataChangeType.ADD, [_arg1], (data.length - 1), (data.length - 1)); data.push(_arg1); dispatchChangeEvent(DataChangeType.ADD, [_arg1], (data.length - 1), (data.length - 1)); } public function sortOn(_arg1:Object, _arg2:Object=null){ var _local3:Array; dispatchPreChangeEvent(DataChangeType.SORT, data.concat(), 0, (data.length - 1)); _local3 = data.sortOn(_arg1, _arg2); dispatchChangeEvent(DataChangeType.SORT, data.concat(), 0, (data.length - 1)); return (_local3); } public function sort(... _args){ var _local2:Array; dispatchPreChangeEvent(DataChangeType.SORT, data.concat(), 0, (data.length - 1)); _local2 = data.sort.apply(data, _args); dispatchChangeEvent(DataChangeType.SORT, data.concat(), 0, (data.length - 1)); return (_local2); } public function addItems(_arg1:Object):void{ addItemsAt(_arg1, data.length); } public function concat(_arg1:Object):void{ addItems(_arg1); } public function clone():DataProvider{ return (new DataProvider(data)); } public function toArray():Array{ return (data.concat()); } public function get length():uint{ return (data.length); } public function addItemAt(_arg1:Object, _arg2:uint):void{ checkIndex(_arg2, data.length); dispatchPreChangeEvent(DataChangeType.ADD, [_arg1], _arg2, _arg2); data.splice(_arg2, 0, _arg1); dispatchChangeEvent(DataChangeType.ADD, [_arg1], _arg2, _arg2); } public function getItemAt(_arg1:uint):Object{ checkIndex(_arg1, (data.length - 1)); return (data[_arg1]); } override public function toString():String{ return ((("DataProvider [" + data.join(" , ")) + "]")); } public function invalidateItem(_arg1:Object):void{ var _local2:uint; _local2 = getItemIndex(_arg1); if (_local2 == -1){ return; }; invalidateItemAt(_local2); } protected function dispatchChangeEvent(_arg1:String, _arg2:Array, _arg3:int, _arg4:int):void{ dispatchEvent(new DataChangeEvent(DataChangeEvent.DATA_CHANGE, _arg1, _arg2, _arg3, _arg4)); } protected function checkIndex(_arg1:int, _arg2:int):void{ if ((((_arg1 > _arg2)) || ((_arg1 < 0)))){ throw (new RangeError((((("DataProvider index (" + _arg1) + ") is not in acceptable range (0 - ") + _arg2) + ")"))); }; } public function addItemsAt(_arg1:Object, _arg2:uint):void{ var _local3:Array; checkIndex(_arg2, data.length); _local3 = getDataFromObject(_arg1); dispatchPreChangeEvent(DataChangeType.ADD, _local3, _arg2, ((_arg2 + _local3.length) - 1)); data.splice.apply(data, [_arg2, 0].concat(_local3)); dispatchChangeEvent(DataChangeType.ADD, _local3, _arg2, ((_arg2 + _local3.length) - 1)); } public function replaceItem(_arg1:Object, _arg2:Object):Object{ var _local3:int; _local3 = getItemIndex(_arg2); if (_local3 != -1){ return (replaceItemAt(_arg1, _local3)); }; return (null); } public function removeItem(_arg1:Object):Object{ var _local2:int; _local2 = getItemIndex(_arg1); if (_local2 != -1){ return (removeItemAt(_local2)); }; return (null); } public function merge(_arg1:Object):void{ var _local2:Array; var _local3:uint; var _local4:uint; var _local5:uint; var _local6:Object; _local2 = getDataFromObject(_arg1); _local3 = _local2.length; _local4 = data.length; dispatchPreChangeEvent(DataChangeType.ADD, data.slice(_local4, data.length), _local4, (this.data.length - 1)); _local5 = 0; while (_local5 < _local3) { _local6 = _local2[_local5]; if (getItemIndex(_local6) == -1){ data.push(_local6); }; _local5++; }; if (data.length > _local4){ dispatchChangeEvent(DataChangeType.ADD, data.slice(_local4, data.length), _local4, (this.data.length - 1)); } else { dispatchChangeEvent(DataChangeType.ADD, [], -1, -1); }; } public function replaceItemAt(_arg1:Object, _arg2:uint):Object{ var _local3:Array; checkIndex(_arg2, (data.length - 1)); _local3 = [data[_arg2]]; dispatchPreChangeEvent(DataChangeType.REPLACE, _local3, _arg2, _arg2); data[_arg2] = _arg1; dispatchChangeEvent(DataChangeType.REPLACE, _local3, _arg2, _arg2); return (_local3[0]); } public function invalidate():void{ dispatchEvent(new DataChangeEvent(DataChangeEvent.DATA_CHANGE, DataChangeType.INVALIDATE_ALL, data.concat(), 0, data.length)); } public function removeAll():void{ var _local1:Array; _local1 = data.concat(); dispatchPreChangeEvent(DataChangeType.REMOVE_ALL, _local1, 0, _local1.length); data = []; dispatchChangeEvent(DataChangeType.REMOVE_ALL, _local1, 0, _local1.length); } } }//package fl.data
Section 186
//SimpleCollectionItem (fl.data.SimpleCollectionItem) package fl.data { public dynamic class SimpleCollectionItem { public var label:String; public var data:String; public function toString():String{ return ((((("[SimpleCollectionItem: " + label) + ",") + data) + "]")); } } }//package fl.data
Section 187
//ColorPickerEvent (fl.events.ColorPickerEvent) package fl.events { import flash.events.*; public class ColorPickerEvent extends Event { protected var _color:uint; public static const ITEM_ROLL_OUT:String = "itemRollOut"; public static const ITEM_ROLL_OVER:String = "itemRollOver"; public static const CHANGE:String = "change"; public static const ENTER:String = "enter"; public function ColorPickerEvent(_arg1:String, _arg2:uint){ super(_arg1, true); _color = _arg2; } override public function toString():String{ return (formatToString("ColorPickerEvent", "type", "bubbles", "cancelable", "color")); } public function get color():uint{ return (_color); } override public function clone():Event{ return (new ColorPickerEvent(type, color)); } } }//package fl.events
Section 188
//ComponentEvent (fl.events.ComponentEvent) package fl.events { import flash.events.*; public class ComponentEvent extends Event { public static const HIDE:String = "hide"; public static const BUTTON_DOWN:String = "buttonDown"; public static const MOVE:String = "move"; public static const RESIZE:String = "resize"; public static const ENTER:String = "enter"; public static const LABEL_CHANGE:String = "labelChange"; public static const SHOW:String = "show"; public function ComponentEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false){ super(_arg1, _arg2, _arg3); } override public function toString():String{ return (formatToString("ComponentEvent", "type", "bubbles", "cancelable")); } override public function clone():Event{ return (new ComponentEvent(type, bubbles, cancelable)); } } }//package fl.events
Section 189
//DataChangeEvent (fl.events.DataChangeEvent) package fl.events { import flash.events.*; public class DataChangeEvent extends Event { protected var _items:Array; protected var _endIndex:uint; protected var _changeType:String; protected var _startIndex:uint; public static const PRE_DATA_CHANGE:String = "preDataChange"; public static const DATA_CHANGE:String = "dataChange"; public function DataChangeEvent(_arg1:String, _arg2:String, _arg3:Array, _arg4:int=-1, _arg5:int=-1):void{ super(_arg1); _changeType = _arg2; _startIndex = _arg4; _items = _arg3; _endIndex = ((_arg5)==-1) ? _startIndex : _arg5; } public function get changeType():String{ return (_changeType); } public function get startIndex():uint{ return (_startIndex); } public function get items():Array{ return (_items); } override public function clone():Event{ return (new DataChangeEvent(type, _changeType, _items, _startIndex, _endIndex)); } override public function toString():String{ return (formatToString("DataChangeEvent", "type", "changeType", "startIndex", "endIndex", "bubbles", "cancelable")); } public function get endIndex():uint{ return (_endIndex); } } }//package fl.events
Section 190
//DataChangeType (fl.events.DataChangeType) package fl.events { public class DataChangeType { public static const ADD:String = "add"; public static const REMOVE:String = "remove"; public static const REMOVE_ALL:String = "removeAll"; public static const CHANGE:String = "change"; public static const REPLACE:String = "replace"; public static const INVALIDATE:String = "invalidate"; public static const INVALIDATE_ALL:String = "invalidateAll"; public static const SORT:String = "sort"; } }//package fl.events
Section 191
//InteractionInputType (fl.events.InteractionInputType) package fl.events { public class InteractionInputType { public static const MOUSE:String = "mouse"; public static const KEYBOARD:String = "keyboard"; } }//package fl.events
Section 192
//ListEvent (fl.events.ListEvent) package fl.events { import flash.events.*; public class ListEvent extends Event { protected var _index:int; protected var _item:Object; protected var _columnIndex:int; protected var _rowIndex:int; public static const ITEM_DOUBLE_CLICK:String = "itemDoubleClick"; public static const ITEM_ROLL_OUT:String = "itemRollOut"; public static const ITEM_ROLL_OVER:String = "itemRollOver"; public static const ITEM_CLICK:String = "itemClick"; public function ListEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:int=-1, _arg5:int=-1, _arg6:int=-1, _arg7:Object=null){ super(_arg1, _arg2, _arg3); _rowIndex = _arg5; _columnIndex = _arg4; _index = _arg6; _item = _arg7; } public function get rowIndex():Object{ return (_rowIndex); } public function get index():int{ return (_index); } public function get item():Object{ return (_item); } public function get columnIndex():int{ return (_columnIndex); } override public function clone():Event{ return (new ListEvent(type, bubbles, cancelable, _columnIndex, _rowIndex)); } override public function toString():String{ return (formatToString("ListEvent", "type", "bubbles", "cancelable", "columnIndex", "rowIndex", "index", "item")); } } }//package fl.events
Section 193
//ScrollEvent (fl.events.ScrollEvent) package fl.events { import flash.events.*; public class ScrollEvent extends Event { private var _position:Number; private var _direction:String; private var _delta:Number; public static const SCROLL:String = "scroll"; public function ScrollEvent(_arg1:String, _arg2:Number, _arg3:Number){ super(ScrollEvent.SCROLL, false, false); _direction = _arg1; _delta = _arg2; _position = _arg3; } override public function clone():Event{ return (new ScrollEvent(_direction, _delta, _position)); } public function get position():Number{ return (_position); } override public function toString():String{ return (formatToString("ScrollEvent", "type", "bubbles", "cancelable", "direction", "delta", "position")); } public function get delta():Number{ return (_delta); } public function get direction():String{ return (_direction); } } }//package fl.events
Section 194
//SliderEvent (fl.events.SliderEvent) package fl.events { import flash.events.*; public class SliderEvent extends Event { protected var _triggerEvent:String; protected var _keyCode:Number; protected var _value:Number; protected var _clickTarget:String; public static const CHANGE:String = "change"; public static const THUMB_PRESS:String = "thumbPress"; public static const THUMB_DRAG:String = "thumbDrag"; public static const THUMB_RELEASE:String = "thumbRelease"; public function SliderEvent(_arg1:String, _arg2:Number, _arg3:String, _arg4:String, _arg5:int=0){ _value = _arg2; _keyCode = _arg5; _triggerEvent = _arg4; _clickTarget = _arg3; super(_arg1); } public function get clickTarget():String{ return (_clickTarget); } override public function clone():Event{ return (new SliderEvent(type, _value, _clickTarget, _triggerEvent, _keyCode)); } override public function toString():String{ return (formatToString("SliderEvent", "type", "value", "bubbles", "cancelable", "keyCode", "triggerEvent", "clickTarget")); } public function get triggerEvent():String{ return (_triggerEvent); } public function get value():Number{ return (_value); } public function get keyCode():Number{ return (_keyCode); } } }//package fl.events
Section 195
//SliderEventClickTarget (fl.events.SliderEventClickTarget) package fl.events { public class SliderEventClickTarget { public static const TRACK:String = "track"; public static const THUMB:String = "thumb"; } }//package fl.events
Section 196
//FocusManager (fl.managers.FocusManager) package fl.managers { import flash.utils.*; import flash.display.*; import flash.events.*; import flash.text.*; import fl.core.*; import fl.controls.*; import flash.ui.*; public class FocusManager implements IFocusManager { private var focusableObjects:Dictionary; private var _showFocusIndicator:Boolean;// = true private var defButton:Button; private var focusableCandidates:Array; private var _form:DisplayObjectContainer; private var _defaultButtonEnabled:Boolean;// = true private var activated:Boolean;// = false private var _defaultButton:Button; private var calculateCandidates:Boolean;// = true private var lastFocus:InteractiveObject; private var lastAction:String; public function FocusManager(_arg1:DisplayObjectContainer){ activated = false; calculateCandidates = true; _showFocusIndicator = true; _defaultButtonEnabled = true; super(); focusableObjects = new Dictionary(true); if (_arg1 != null){ _form = _arg1; addFocusables(DisplayObject(_arg1)); _arg1.addEventListener(Event.ADDED, addedHandler); _arg1.addEventListener(Event.REMOVED, removedHandler); activate(); }; } public function get showFocusIndicator():Boolean{ return (_showFocusIndicator); } private function getIndexOfNextObject(_arg1:int, _arg2:Boolean, _arg3:Boolean, _arg4:String):int{ var _local5:int; var _local6:int; var _local7:DisplayObject; var _local8:IFocusManagerGroup; var _local9:int; var _local10:DisplayObject; var _local11:IFocusManagerGroup; _local5 = focusableCandidates.length; _local6 = _arg1; while (true) { if (_arg2){ _arg1--; } else { _arg1++; }; if (_arg3){ if (((_arg2) && ((_arg1 < 0)))){ break; }; if (((!(_arg2)) && ((_arg1 == _local5)))){ break; }; } else { _arg1 = ((_arg1 + _local5) % _local5); if (_local6 == _arg1){ break; }; }; if (isValidFocusCandidate(focusableCandidates[_arg1], _arg4)){ _local7 = DisplayObject(findFocusManagerComponent(focusableCandidates[_arg1])); if ((_local7 is IFocusManagerGroup)){ _local8 = IFocusManagerGroup(_local7); _local9 = 0; while (_local9 < focusableCandidates.length) { _local10 = focusableCandidates[_local9]; if ((_local10 is IFocusManagerGroup)){ _local11 = IFocusManagerGroup(_local10); if ((((_local11.groupName == _local8.groupName)) && (_local11.selected))){ _arg1 = _local9; break; }; }; _local9++; }; }; return (_arg1); }; }; return (_arg1); } public function set form(_arg1:DisplayObjectContainer):void{ _form = _arg1; } private function addFocusables(_arg1:DisplayObject, _arg2:Boolean=false):void{ var focusable:IFocusManagerComponent; var io:InteractiveObject; var doc:DisplayObjectContainer; var i:int; var child:DisplayObject; var o = _arg1; var skipTopLevel = _arg2; if (!(skipTopLevel)){ if ((o is IFocusManagerComponent)){ focusable = IFocusManagerComponent(o); if (focusable.focusEnabled){ if (((focusable.tabEnabled) && (isTabVisible(o)))){ focusableObjects[o] = true; calculateCandidates = true; }; o.addEventListener(Event.TAB_ENABLED_CHANGE, tabEnabledChangeHandler); o.addEventListener(Event.TAB_INDEX_CHANGE, tabIndexChangeHandler); }; } else { if ((o is InteractiveObject)){ io = (o as InteractiveObject); if (((((io) && (io.tabEnabled))) && ((findFocusManagerComponent(io) == io)))){ focusableObjects[io] = true; calculateCandidates = true; }; io.addEventListener(Event.TAB_ENABLED_CHANGE, tabEnabledChangeHandler); io.addEventListener(Event.TAB_INDEX_CHANGE, tabIndexChangeHandler); }; }; }; if ((o is DisplayObjectContainer)){ doc = DisplayObjectContainer(o); o.addEventListener(Event.TAB_CHILDREN_CHANGE, tabChildrenChangeHandler); if ((((((doc is Stage)) || ((doc.parent is Stage)))) || (doc.tabChildren))){ i = 0; while (i < doc.numChildren) { try { child = doc.getChildAt(i); if (child != null){ addFocusables(doc.getChildAt(i)); }; } catch(error:SecurityError) { }; i = (i + 1); }; }; }; } private function getChildIndex(_arg1:DisplayObjectContainer, _arg2:DisplayObject):int{ return (_arg1.getChildIndex(_arg2)); } private function mouseFocusChangeHandler(_arg1:FocusEvent):void{ if ((_arg1.relatedObject is TextField)){ return; }; _arg1.preventDefault(); } private function focusOutHandler(_arg1:FocusEvent):void{ var _local2:InteractiveObject; _local2 = (_arg1.target as InteractiveObject); } private function isValidFocusCandidate(_arg1:DisplayObject, _arg2:String):Boolean{ var _local3:IFocusManagerGroup; if (!(isEnabledAndVisible(_arg1))){ return (false); }; if ((_arg1 is IFocusManagerGroup)){ _local3 = IFocusManagerGroup(_arg1); if (_arg2 == _local3.groupName){ return (false); }; }; return (true); } public function findFocusManagerComponent(_arg1:InteractiveObject):InteractiveObject{ var _local2:InteractiveObject; _local2 = _arg1; while (_arg1) { if ((((_arg1 is IFocusManagerComponent)) && (IFocusManagerComponent(_arg1).focusEnabled))){ return (_arg1); }; _arg1 = _arg1.parent; }; return (_local2); } private function sortFocusableObjectsTabIndex():void{ var _local1:Object; var _local2:InteractiveObject; focusableCandidates = []; for (_local1 in focusableObjects) { _local2 = InteractiveObject(_local1); if (((_local2.tabIndex) && (!(isNaN(Number(_local2.tabIndex)))))){ focusableCandidates.push(_local2); }; }; focusableCandidates.sort(sortByTabIndex); } private function removeFocusables(_arg1:DisplayObject):void{ var _local2:Object; var _local3:DisplayObject; if ((_arg1 is DisplayObjectContainer)){ _arg1.removeEventListener(Event.TAB_CHILDREN_CHANGE, tabChildrenChangeHandler); _arg1.removeEventListener(Event.TAB_INDEX_CHANGE, tabIndexChangeHandler); for (_local2 in focusableObjects) { _local3 = DisplayObject(_local2); if (DisplayObjectContainer(_arg1).contains(_local3)){ if (_local3 == lastFocus){ lastFocus = null; }; _local3.removeEventListener(Event.TAB_ENABLED_CHANGE, tabEnabledChangeHandler); delete focusableObjects[_local2]; calculateCandidates = true; }; }; }; } private function addedHandler(_arg1:Event):void{ var _local2:DisplayObject; _local2 = DisplayObject(_arg1.target); if (_local2.stage){ addFocusables(DisplayObject(_arg1.target)); }; } private function getTopLevelFocusTarget(_arg1:InteractiveObject):InteractiveObject{ while (_arg1 != InteractiveObject(form)) { if ((((((((_arg1 is IFocusManagerComponent)) && (IFocusManagerComponent(_arg1).focusEnabled))) && (IFocusManagerComponent(_arg1).mouseFocusEnabled))) && (UIComponent(_arg1).enabled))){ return (_arg1); }; _arg1 = _arg1.parent; if (_arg1 == null){ break; }; }; return (null); } private function tabChildrenChangeHandler(_arg1:Event):void{ var _local2:DisplayObjectContainer; if (_arg1.target != _arg1.currentTarget){ return; }; calculateCandidates = true; _local2 = DisplayObjectContainer(_arg1.target); if (_local2.tabChildren){ addFocusables(_local2, true); } else { removeFocusables(_local2); }; } public function sendDefaultButtonEvent():void{ defButton.dispatchEvent(new MouseEvent(MouseEvent.CLICK)); } public function getFocus():InteractiveObject{ var _local1:InteractiveObject; _local1 = form.stage.focus; return (findFocusManagerComponent(_local1)); } private function isEnabledAndVisible(_arg1:DisplayObject):Boolean{ var _local2:DisplayObjectContainer; var _local3:TextField; var _local4:SimpleButton; _local2 = DisplayObject(form).parent; while (_arg1 != _local2) { if ((_arg1 is UIComponent)){ if (!(UIComponent(_arg1).enabled)){ return (false); }; } else { if ((_arg1 is TextField)){ _local3 = TextField(_arg1); if ((((_local3.type == TextFieldType.DYNAMIC)) || (!(_local3.selectable)))){ return (false); }; } else { if ((_arg1 is SimpleButton)){ _local4 = SimpleButton(_arg1); if (!(_local4.enabled)){ return (false); }; }; }; }; if (!(_arg1.visible)){ return (false); }; _arg1 = _arg1.parent; }; return (true); } public function set defaultButton(_arg1:Button):void{ var _local2:Button; _local2 = (_arg1) ? Button(_arg1) : null; if (_local2 != _defaultButton){ if (_defaultButton){ _defaultButton.emphasized = false; }; if (defButton){ defButton.emphasized = false; }; _defaultButton = _local2; defButton = _local2; if (_local2){ _local2.emphasized = true; }; }; } private function deactivateHandler(_arg1:Event):void{ var _local2:InteractiveObject; _local2 = InteractiveObject(_arg1.target); } public function setFocus(_arg1:InteractiveObject):void{ if ((_arg1 is IFocusManagerComponent)){ IFocusManagerComponent(_arg1).setFocus(); } else { form.stage.focus = _arg1; }; } private function setFocusToNextObject(_arg1:FocusEvent):void{ var _local2:InteractiveObject; if (!(hasFocusableObjects())){ return; }; _local2 = getNextFocusManagerComponent(_arg1.shiftKey); if (_local2){ setFocus(_local2); }; } private function hasFocusableObjects():Boolean{ var _local1:Object; for (_local1 in focusableObjects) { return (true); }; return (false); } private function tabIndexChangeHandler(_arg1:Event):void{ calculateCandidates = true; } private function sortFocusableObjects():void{ var _local1:Object; var _local2:InteractiveObject; focusableCandidates = []; for (_local1 in focusableObjects) { _local2 = InteractiveObject(_local1); if (((((_local2.tabIndex) && (!(isNaN(Number(_local2.tabIndex)))))) && ((_local2.tabIndex > 0)))){ sortFocusableObjectsTabIndex(); return; }; focusableCandidates.push(_local2); }; focusableCandidates.sort(sortByDepth); } private function keyFocusChangeHandler(_arg1:FocusEvent):void{ showFocusIndicator = true; if ((((((_arg1.keyCode == Keyboard.TAB)) || ((_arg1.keyCode == 0)))) && (!(_arg1.isDefaultPrevented())))){ setFocusToNextObject(_arg1); _arg1.preventDefault(); }; } private function getIndexOfFocusedObject(_arg1:DisplayObject):int{ var _local2:int; var _local3:int; _local2 = focusableCandidates.length; _local3 = 0; _local3 = 0; while (_local3 < _local2) { if (focusableCandidates[_local3] == _arg1){ return (_local3); }; _local3++; }; return (-1); } public function hideFocus():void{ } private function removedHandler(_arg1:Event):void{ var _local2:int; var _local3:DisplayObject; var _local4:InteractiveObject; _local3 = DisplayObject(_arg1.target); if ((((_local3 is IFocusManagerComponent)) && ((focusableObjects[_local3] == true)))){ if (_local3 == lastFocus){ IFocusManagerComponent(lastFocus).drawFocus(false); lastFocus = null; }; _local3.removeEventListener(Event.TAB_ENABLED_CHANGE, tabEnabledChangeHandler); delete focusableObjects[_local3]; calculateCandidates = true; } else { if ((((_local3 is InteractiveObject)) && ((focusableObjects[_local3] == true)))){ _local4 = (_local3 as InteractiveObject); if (_local4){ if (_local4 == lastFocus){ lastFocus = null; }; delete focusableObjects[_local4]; calculateCandidates = true; }; _local3.addEventListener(Event.TAB_ENABLED_CHANGE, tabEnabledChangeHandler); }; }; removeFocusables(_local3); } private function sortByDepth(_arg1:InteractiveObject, _arg2:InteractiveObject):Number{ var _local3:String; var _local4:String; var _local5:int; var _local6:String; var _local7:String; var _local8:String; var _local9:DisplayObject; var _local10:DisplayObject; _local3 = ""; _local4 = ""; _local8 = "0000"; _local9 = DisplayObject(_arg1); _local10 = DisplayObject(_arg2); while (((!((_local9 == DisplayObject(form)))) && (_local9.parent))) { _local5 = getChildIndex(_local9.parent, _local9); _local6 = _local5.toString(16); if (_local6.length < 4){ _local7 = (_local8.substring(0, (4 - _local6.length)) + _local6); }; _local3 = (_local7 + _local3); _local9 = _local9.parent; }; while (((!((_local10 == DisplayObject(form)))) && (_local10.parent))) { _local5 = getChildIndex(_local10.parent, _local10); _local6 = _local5.toString(16); if (_local6.length < 4){ _local7 = (_local8.substring(0, (4 - _local6.length)) + _local6); }; _local4 = (_local7 + _local4); _local10 = _local10.parent; }; return (((_local3 > _local4)) ? 1 : ((_local3 < _local4)) ? -1 : 0); } public function get defaultButton():Button{ return (_defaultButton); } private function activateHandler(_arg1:Event):void{ var _local2:InteractiveObject; _local2 = InteractiveObject(_arg1.target); if (lastFocus){ if ((lastFocus is IFocusManagerComponent)){ IFocusManagerComponent(lastFocus).setFocus(); } else { form.stage.focus = lastFocus; }; }; lastAction = "ACTIVATE"; } public function showFocus():void{ } public function set defaultButtonEnabled(_arg1:Boolean):void{ _defaultButtonEnabled = _arg1; } public function getNextFocusManagerComponent(_arg1:Boolean=false):InteractiveObject{ var _local2:DisplayObject; var _local3:String; var _local4:int; var _local5:Boolean; var _local6:int; var _local7:int; var _local8:IFocusManagerGroup; if (!(hasFocusableObjects())){ return (null); }; if (calculateCandidates){ sortFocusableObjects(); calculateCandidates = false; }; _local2 = form.stage.focus; _local2 = DisplayObject(findFocusManagerComponent(InteractiveObject(_local2))); _local3 = ""; if ((_local2 is IFocusManagerGroup)){ _local8 = IFocusManagerGroup(_local2); _local3 = _local8.groupName; }; _local4 = getIndexOfFocusedObject(_local2); _local5 = false; _local6 = _local4; if (_local4 == -1){ if (_arg1){ _local4 = focusableCandidates.length; }; _local5 = true; }; _local7 = getIndexOfNextObject(_local4, _arg1, _local5, _local3); return (findFocusManagerComponent(focusableCandidates[_local7])); } private function mouseDownHandler(_arg1:MouseEvent):void{ var _local2:InteractiveObject; if (_arg1.isDefaultPrevented()){ return; }; _local2 = getTopLevelFocusTarget(InteractiveObject(_arg1.target)); if (!(_local2)){ return; }; showFocusIndicator = false; if (((((!((_local2 == lastFocus))) || ((lastAction == "ACTIVATE")))) && (!((_local2 is TextField))))){ setFocus(_local2); }; lastAction = "MOUSEDOWN"; } private function isTabVisible(_arg1:DisplayObject):Boolean{ var _local2:DisplayObjectContainer; _local2 = _arg1.parent; while (((((_local2) && (!((_local2 is Stage))))) && (!(((_local2.parent) && ((_local2.parent is Stage))))))) { if (!(_local2.tabChildren)){ return (false); }; _local2 = _local2.parent; }; return (true); } public function get nextTabIndex():int{ return (0); } private function keyDownHandler(_arg1:KeyboardEvent):void{ if (_arg1.keyCode == Keyboard.TAB){ lastAction = "KEY"; if (calculateCandidates){ sortFocusableObjects(); calculateCandidates = false; }; }; if (((((((defaultButtonEnabled) && ((_arg1.keyCode == Keyboard.ENTER)))) && (defaultButton))) && (defButton.enabled))){ sendDefaultButtonEvent(); }; } private function focusInHandler(_arg1:FocusEvent):void{ var _local2:InteractiveObject; var _local3:Button; _local2 = InteractiveObject(_arg1.target); if (form.contains(_local2)){ lastFocus = findFocusManagerComponent(InteractiveObject(_local2)); if ((lastFocus is Button)){ _local3 = Button(lastFocus); if (defButton){ defButton.emphasized = false; defButton = _local3; _local3.emphasized = true; }; } else { if (((defButton) && (!((defButton == _defaultButton))))){ defButton.emphasized = false; defButton = _defaultButton; _defaultButton.emphasized = true; }; }; }; } private function tabEnabledChangeHandler(_arg1:Event):void{ var _local2:InteractiveObject; var _local3:Boolean; calculateCandidates = true; _local2 = InteractiveObject(_arg1.target); _local3 = (focusableObjects[_local2] == true); if (_local2.tabEnabled){ if (((!(_local3)) && (isTabVisible(_local2)))){ if (!((_local2 is IFocusManagerComponent))){ _local2.focusRect = false; }; focusableObjects[_local2] = true; }; } else { if (_local3){ delete focusableObjects[_local2]; }; }; } public function set showFocusIndicator(_arg1:Boolean):void{ _showFocusIndicator = _arg1; } public function get form():DisplayObjectContainer{ return (_form); } private function sortByTabIndex(_arg1:InteractiveObject, _arg2:InteractiveObject):int{ return (((_arg1.tabIndex > _arg2.tabIndex)) ? 1 : ((_arg1.tabIndex < _arg2.tabIndex)) ? -1 : sortByDepth(_arg1, _arg2)); } public function activate():void{ if (activated){ return; }; form.stage.addEventListener(FocusEvent.MOUSE_FOCUS_CHANGE, mouseFocusChangeHandler, false, 0, true); form.stage.addEventListener(FocusEvent.KEY_FOCUS_CHANGE, keyFocusChangeHandler, false, 0, true); form.addEventListener(FocusEvent.FOCUS_IN, focusInHandler, true); form.addEventListener(FocusEvent.FOCUS_OUT, focusOutHandler, true); form.stage.addEventListener(Event.ACTIVATE, activateHandler, false, 0, true); form.stage.addEventListener(Event.DEACTIVATE, deactivateHandler, false, 0, true); form.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler); form.addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler, true); activated = true; if (lastFocus){ setFocus(lastFocus); }; } public function deactivate():void{ form.stage.removeEventListener(FocusEvent.MOUSE_FOCUS_CHANGE, mouseFocusChangeHandler); form.stage.removeEventListener(FocusEvent.KEY_FOCUS_CHANGE, keyFocusChangeHandler); form.removeEventListener(FocusEvent.FOCUS_IN, focusInHandler, true); form.removeEventListener(FocusEvent.FOCUS_OUT, focusOutHandler, true); form.stage.removeEventListener(Event.ACTIVATE, activateHandler); form.stage.removeEventListener(Event.DEACTIVATE, deactivateHandler); form.removeEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler); form.removeEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler, true); activated = false; } public function get defaultButtonEnabled():Boolean{ return (_defaultButtonEnabled); } } }//package fl.managers
Section 197
//IFocusManager (fl.managers.IFocusManager) package fl.managers { import fl.controls.*; import flash.display.*; public interface IFocusManager { function getFocus():InteractiveObject; function deactivate():void; function set defaultButton(_arg1:Button):void; function set showFocusIndicator(_arg1:Boolean):void; function get defaultButtonEnabled():Boolean; function get nextTabIndex():int; function get defaultButton():Button; function get showFocusIndicator():Boolean; function setFocus(_arg1:InteractiveObject):void; function activate():void; function showFocus():void; function set defaultButtonEnabled(_arg1:Boolean):void; function hideFocus():void; function findFocusManagerComponent(_arg1:InteractiveObject):InteractiveObject; function getNextFocusManagerComponent(_arg1:Boolean=false):InteractiveObject; } }//package fl.managers
Section 198
//IFocusManagerComponent (fl.managers.IFocusManagerComponent) package fl.managers { public interface IFocusManagerComponent { function set focusEnabled(_arg1:Boolean):void; function drawFocus(_arg1:Boolean):void; function setFocus():void; function get focusEnabled():Boolean; function get tabEnabled():Boolean; function get tabIndex():int; function get mouseFocusEnabled():Boolean; } }//package fl.managers
Section 199
//IFocusManagerGroup (fl.managers.IFocusManagerGroup) package fl.managers { public interface IFocusManagerGroup { function set groupName(_arg1:String):void; function set selected(_arg1:Boolean):void; function get groupName():String; function get selected():Boolean; } }//package fl.managers
Section 200
//StyleManager (fl.managers.StyleManager) package fl.managers { import flash.utils.*; import fl.core.*; import flash.text.*; public class StyleManager { private var globalStyles:Object; private var classToDefaultStylesDict:Dictionary; private var styleToClassesHash:Object; private var classToStylesDict:Dictionary; private var classToInstancesDict:Dictionary; private static var _instance:StyleManager; public function StyleManager(){ styleToClassesHash = {}; classToInstancesDict = new Dictionary(true); classToStylesDict = new Dictionary(true); classToDefaultStylesDict = new Dictionary(true); globalStyles = UIComponent.getStyleDefinition(); } public static function clearComponentStyle(_arg1:Object, _arg2:String):void{ var _local3:Class; var _local4:Object; _local3 = getClassDef(_arg1); _local4 = getInstance().classToStylesDict[_local3]; if (((!((_local4 == null))) && (!((_local4[_arg2] == null))))){ delete _local4[_arg2]; invalidateComponentStyle(_local3, _arg2); }; } private static function getClassDef(_arg1:Object):Class{ var component = _arg1; if ((component is Class)){ return ((component as Class)); }; try { return ((getDefinitionByName(getQualifiedClassName(component)) as Class)); } catch(e:Error) { if ((component is UIComponent)){ try { return ((component.loaderInfo.applicationDomain.getDefinition(getQualifiedClassName(component)) as Class)); } catch(e:Error) { }; }; }; return (null); } public static function clearStyle(_arg1:String):void{ setStyle(_arg1, null); } public static function setComponentStyle(_arg1:Object, _arg2:String, _arg3:Object):void{ var _local4:Class; var _local5:Object; _local4 = getClassDef(_arg1); _local5 = getInstance().classToStylesDict[_local4]; if (_local5 == null){ _local5 = (getInstance().classToStylesDict[_local4] = {}); }; if (_local5 == _arg3){ return; }; _local5[_arg2] = _arg3; invalidateComponentStyle(_local4, _arg2); } private static function setSharedStyles(_arg1:UIComponent):void{ var _local2:StyleManager; var _local3:Class; var _local4:Object; var _local5:String; _local2 = getInstance(); _local3 = getClassDef(_arg1); _local4 = _local2.classToDefaultStylesDict[_local3]; for (_local5 in _local4) { _arg1.setSharedStyle(_local5, getSharedStyle(_arg1, _local5)); }; } public static function getComponentStyle(_arg1:Object, _arg2:String):Object{ var _local3:Class; var _local4:Object; _local3 = getClassDef(_arg1); _local4 = getInstance().classToStylesDict[_local3]; return (((_local4)==null) ? null : _local4[_arg2]); } private static function getInstance(){ if (_instance == null){ _instance = new (StyleManager); }; return (_instance); } private static function invalidateComponentStyle(_arg1:Class, _arg2:String):void{ var _local3:Dictionary; var _local4:Object; var _local5:UIComponent; _local3 = getInstance().classToInstancesDict[_arg1]; if (_local3 == null){ return; }; for (_local4 in _local3) { _local5 = (_local4 as UIComponent); if (_local5 == null){ } else { _local5.setSharedStyle(_arg2, getSharedStyle(_local5, _arg2)); }; }; } private static function invalidateStyle(_arg1:String):void{ var _local2:Dictionary; var _local3:Object; _local2 = getInstance().styleToClassesHash[_arg1]; if (_local2 == null){ return; }; for (_local3 in _local2) { invalidateComponentStyle(Class(_local3), _arg1); }; } public static function registerInstance(_arg1:UIComponent):void{ var inst:StyleManager; var classDef:Class; var target:Class; var defaultStyles:Object; var styleToClasses:Object; var n:String; var instance = _arg1; inst = getInstance(); classDef = getClassDef(instance); if (classDef == null){ return; }; if (inst.classToInstancesDict[classDef] == null){ inst.classToInstancesDict[classDef] = new Dictionary(true); target = classDef; while (defaultStyles == null) { if (target["getStyleDefinition"] != null){ defaultStyles = target["getStyleDefinition"](); break; }; try { target = (instance.loaderInfo.applicationDomain.getDefinition(getQualifiedSuperclassName(target)) as Class); } catch(err:Error) { try { target = (getDefinitionByName(getQualifiedSuperclassName(target)) as Class); } catch(e:Error) { defaultStyles = UIComponent.getStyleDefinition(); break; }; }; }; styleToClasses = inst.styleToClassesHash; for (n in defaultStyles) { if (styleToClasses[n] == null){ styleToClasses[n] = new Dictionary(true); }; styleToClasses[n][classDef] = true; }; inst.classToDefaultStylesDict[classDef] = defaultStyles; inst.classToStylesDict[classDef] = {}; }; inst.classToInstancesDict[classDef][instance] = true; setSharedStyles(instance); } public static function getStyle(_arg1:String):Object{ return (getInstance().globalStyles[_arg1]); } private static function getSharedStyle(_arg1:UIComponent, _arg2:String):Object{ var _local3:Class; var _local4:StyleManager; var _local5:Object; _local3 = getClassDef(_arg1); _local4 = getInstance(); _local5 = _local4.classToStylesDict[_local3][_arg2]; if (_local5 != null){ return (_local5); }; _local5 = _local4.globalStyles[_arg2]; if (_local5 != null){ return (_local5); }; return (_local4.classToDefaultStylesDict[_local3][_arg2]); } public static function setStyle(_arg1:String, _arg2:Object):void{ var _local3:Object; _local3 = getInstance().globalStyles; if ((((_local3[_arg1] === _arg2)) && (!((_arg2 is TextFormat))))){ return; }; _local3[_arg1] = _arg2; invalidateStyle(_arg1); } } }//package fl.managers
Section 201
//TweenEvent (gs.events.TweenEvent) package gs.events { import flash.events.*; public class TweenEvent extends Event { public var info:Object; public static const UPDATE:String = "update"; public static const START:String = "start"; public static const version:Number = 0.9; public static const COMPLETE:String = "complete"; public function TweenEvent(_arg1:String, _arg2:Object=null, _arg3:Boolean=false, _arg4:Boolean=false){ super(_arg1, _arg3, _arg4); this.info = _arg2; } override public function clone():Event{ return (new TweenEvent(this.type, this.info, this.bubbles, this.cancelable)); } } }//package gs.events
Section 202
//AutoAlphaPlugin (gs.plugins.AutoAlphaPlugin) package gs.plugins { import flash.display.*; import gs.*; public class AutoAlphaPlugin extends TweenPlugin { protected var _tweenVisible:Boolean; protected var _tween:TweenLite; protected var _visible:Boolean; protected var _target:Object; public static const VERSION:Number = 1; public static const API:Number = 1; public function AutoAlphaPlugin(){ this.propName = "autoAlpha"; this.overwriteProps = ["alpha", "visible"]; this.onComplete = onCompleteTween; } override public function set changeFactor(_arg1:Number):void{ updateTweens(_arg1); if (((!((_target.visible == true))) && (_tweenVisible))){ _target.visible = true; }; } public function onCompleteTween():void{ if (((((_tweenVisible) && (!((_tween.vars.runBackwards == true))))) && ((_tween.ease == _tween.vars.ease)))){ _target.visible = _visible; }; } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ _target = _arg1; _tween = _arg3; _visible = Boolean(!((_arg2 == 0))); _tweenVisible = true; addTween(_arg1, "alpha", _arg1.alpha, _arg2, "alpha"); return (true); } override public function killProps(_arg1:Object):void{ super.killProps(_arg1); _tweenVisible = !(Boolean(("visible" in _arg1))); } } }//package gs.plugins
Section 203
//BevelFilterPlugin (gs.plugins.BevelFilterPlugin) package gs.plugins { import flash.filters.*; import flash.display.*; import gs.*; public class BevelFilterPlugin extends FilterPlugin { public static const VERSION:Number = 1; public static const API:Number = 1; public function BevelFilterPlugin(){ this.propName = "bevelFilter"; this.overwriteProps = ["bevelFilter"]; } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ _target = _arg1; _type = BevelFilter; initFilter(_arg2, new BevelFilter(0, 0, 0xFFFFFF, 0.5, 0, 0.5, 2, 2, 0, ((_arg2.quality) || (2)))); return (true); } } }//package gs.plugins
Section 204
//BezierPlugin (gs.plugins.BezierPlugin) package gs.plugins { import gs.*; import gs.utils.tween.*; public class BezierPlugin extends TweenPlugin { protected var _future:Object; protected var _orient:Boolean; protected var _orientData:Array; protected var _beziers:Object; protected var _target:Object; protected static const _RAD2DEG:Number = 57.2957795130823; public static const VERSION:Number = 1.01; public static const API:Number = 1; public function BezierPlugin(){ _future = {}; super(); this.propName = "bezier"; this.overwriteProps = []; } override public function set changeFactor(_arg1:Number):void{ var _local2:int; var _local3:String; var _local4:Object; var _local5:Number; var _local6:uint; var _local7:Number; var _local8:int; var _local9:Object; var _local10:Boolean; var _local11:Number; var _local12:Number; var _local13:Array; var _local14:Number; if (_arg1 == 1){ for (_local3 in _beziers) { _local2 = (_beziers[_local3].length - 1); _target[_local3] = _beziers[_local3][_local2][2]; }; } else { for (_local3 in _beziers) { _local6 = _beziers[_local3].length; if (_arg1 < 0){ _local2 = 0; } else { if (_arg1 >= 1){ _local2 = (_local6 - 1); } else { _local2 = int((_local6 * _arg1)); }; }; _local5 = ((_arg1 - (_local2 * (1 / _local6))) * _local6); _local4 = _beziers[_local3][_local2]; if (this.round){ _local7 = (_local4[0] + (_local5 * (((2 * (1 - _local5)) * (_local4[1] - _local4[0])) + (_local5 * (_local4[2] - _local4[0]))))); _local8 = ((_local7)<0) ? -1 : 1; _target[_local3] = ((((_local7 % 1) * _local8))>0.5) ? (int(_local7) + _local8) : int(_local7); } else { _target[_local3] = (_local4[0] + (_local5 * (((2 * (1 - _local5)) * (_local4[1] - _local4[0])) + (_local5 * (_local4[2] - _local4[0]))))); }; }; }; if (_orient){ _local9 = _target; _local10 = this.round; _target = _future; this.round = false; _orient = false; this.changeFactor = (_arg1 + 0.01); _target = _local9; this.round = _local10; _orient = true; _local2 = 0; while (_local2 < _orientData.length) { _local13 = _orientData[_local2]; _local14 = ((_local13[3]) || (0)); _local11 = (_future[_local13[0]] - _target[_local13[0]]); _local12 = (_future[_local13[1]] - _target[_local13[1]]); _target[_local13[2]] = ((Math.atan2(_local12, _local11) * _RAD2DEG) + _local14); _local2++; }; }; } protected function init(_arg1:TweenLite, _arg2:Array, _arg3:Boolean):void{ var _local4:Object; var _local5:int; var _local6:String; _target = _arg1.target; if (_arg1.exposedVars.orientToBezier == true){ _orientData = [["x", "y", "rotation", 0]]; _orient = true; } else { if ((_arg1.exposedVars.orientToBezier is Array)){ _orientData = _arg1.exposedVars.orientToBezier; _orient = true; }; }; _local4 = {}; _local5 = 0; while (_local5 < _arg2.length) { for (_local6 in _arg2[_local5]) { if (_local4[_local6] == undefined){ _local4[_local6] = [_arg1.target[_local6]]; }; if (typeof(_arg2[_local5][_local6]) == "number"){ _local4[_local6].push(_arg2[_local5][_local6]); } else { _local4[_local6].push((_arg1.target[_local6] + Number(_arg2[_local5][_local6]))); }; }; _local5++; }; for (_local6 in _local4) { this.overwriteProps[this.overwriteProps.length] = _local6; if (_arg1.exposedVars[_local6] != undefined){ if (typeof(_arg1.exposedVars[_local6]) == "number"){ _local4[_local6].push(_arg1.exposedVars[_local6]); } else { _local4[_local6].push((_arg1.target[_local6] + Number(_arg1.exposedVars[_local6]))); }; delete _arg1.exposedVars[_local6]; _local5 = (_arg1.tweens.length - 1); while (_local5 > -1) { if (_arg1.tweens[_local5].name == _local6){ _arg1.tweens.splice(_local5, 1); }; _local5--; }; }; }; _beziers = parseBeziers(_local4, _arg3); } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ if (!((_arg2 is Array))){ return (false); }; init(_arg3, (_arg2 as Array), false); return (true); } override public function killProps(_arg1:Object):void{ var _local2:String; for (_local2 in _beziers) { if ((_local2 in _arg1)){ delete _beziers[_local2]; }; }; super.killProps(_arg1); } public static function parseBeziers(_arg1:Object, _arg2:Boolean=false):Object{ var _local3:int; var _local4:Array; var _local5:Object; var _local6:String; var _local7:Object; _local7 = {}; if (_arg2){ for (_local6 in _arg1) { _local4 = _arg1[_local6]; _local5 = []; _local7[_local6] = _local5; if (_local4.length > 2){ _local5[_local5.length] = [_local4[0], (_local4[1] - ((_local4[2] - _local4[0]) / 4)), _local4[1]]; _local3 = 1; while (_local3 < (_local4.length - 1)) { _local5[_local5.length] = [_local4[_local3], (_local4[_local3] + (_local4[_local3] - _local5[(_local3 - 1)][1])), _local4[(_local3 + 1)]]; _local3++; }; } else { _local5[_local5.length] = [_local4[0], ((_local4[0] + _local4[1]) / 2), _local4[1]]; }; }; } else { for (_local6 in _arg1) { _local4 = _arg1[_local6]; _local5 = []; _local7[_local6] = _local5; if (_local4.length > 3){ _local5[_local5.length] = [_local4[0], _local4[1], ((_local4[1] + _local4[2]) / 2)]; _local3 = 2; while (_local3 < (_local4.length - 2)) { _local5[_local5.length] = [_local5[(_local3 - 2)][2], _local4[_local3], ((_local4[_local3] + _local4[(_local3 + 1)]) / 2)]; _local3++; }; _local5[_local5.length] = [_local5[(_local5.length - 1)][2], _local4[(_local4.length - 2)], _local4[(_local4.length - 1)]]; } else { if (_local4.length == 3){ _local5[_local5.length] = [_local4[0], _local4[1], _local4[2]]; } else { if (_local4.length == 2){ _local5[_local5.length] = [_local4[0], ((_local4[0] + _local4[1]) / 2), _local4[1]]; }; }; }; }; }; return (_local7); } } }//package gs.plugins
Section 205
//BezierThroughPlugin (gs.plugins.BezierThroughPlugin) package gs.plugins { import gs.*; public class BezierThroughPlugin extends BezierPlugin { public static const VERSION:Number = 1; public static const API:Number = 1; public function BezierThroughPlugin(){ this.propName = "bezierThrough"; } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ if (!((_arg2 is Array))){ return (false); }; init(_arg3, (_arg2 as Array), true); return (true); } } }//package gs.plugins
Section 206
//BlurFilterPlugin (gs.plugins.BlurFilterPlugin) package gs.plugins { import flash.filters.*; import flash.display.*; import gs.*; public class BlurFilterPlugin extends FilterPlugin { public static const VERSION:Number = 1; public static const API:Number = 1; public function BlurFilterPlugin(){ this.propName = "blurFilter"; this.overwriteProps = ["blurFilter"]; } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ _target = _arg1; _type = BlurFilter; initFilter(_arg2, new BlurFilter(0, 0, ((_arg2.quality) || (2)))); return (true); } } }//package gs.plugins
Section 207
//ColorMatrixFilterPlugin (gs.plugins.ColorMatrixFilterPlugin) package gs.plugins { import flash.display.*; import flash.filters.*; import gs.*; public class ColorMatrixFilterPlugin extends FilterPlugin { protected var _matrix:Array; protected var _matrixTween:EndArrayPlugin; public static const API:Number = 1; public static const VERSION:Number = 1.1; protected static var _lumG:Number = 0.71516; protected static var _lumR:Number = 0.212671; protected static var _idMatrix:Array = [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0]; protected static var _lumB:Number = 0.072169; public function ColorMatrixFilterPlugin(){ this.propName = "colorMatrixFilter"; this.overwriteProps = ["colorMatrixFilter"]; } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ var _local4:Object; var _local5:Array; _target = _arg1; _type = ColorMatrixFilter; _local4 = _arg2; initFilter({remove:_arg2.remove, index:_arg2.index, addFilter:_arg2.addFilter}, new ColorMatrixFilter(_idMatrix.slice())); _matrix = ColorMatrixFilter(_filter).matrix; _local5 = []; if (((!((_local4.matrix == null))) && ((_local4.matrix is Array)))){ _local5 = _local4.matrix; } else { if (_local4.relative == true){ _local5 = _matrix.slice(); } else { _local5 = _idMatrix.slice(); }; _local5 = setBrightness(_local5, _local4.brightness); _local5 = setContrast(_local5, _local4.contrast); _local5 = setHue(_local5, _local4.hue); _local5 = setSaturation(_local5, _local4.saturation); _local5 = setThreshold(_local5, _local4.threshold); if (!(isNaN(_local4.colorize))){ _local5 = colorize(_local5, _local4.colorize, _local4.amount); }; }; _matrixTween = new EndArrayPlugin(); _matrixTween.init(_matrix, _local5); return (true); } override public function set changeFactor(_arg1:Number):void{ _matrixTween.changeFactor = _arg1; ColorMatrixFilter(_filter).matrix = _matrix; super.changeFactor = _arg1; } public static function setSaturation(_arg1:Array, _arg2:Number):Array{ var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Array; if (isNaN(_arg2)){ return (_arg1); }; _local3 = (1 - _arg2); _local4 = (_local3 * _lumR); _local5 = (_local3 * _lumG); _local6 = (_local3 * _lumB); _local7 = [(_local4 + _arg2), _local5, _local6, 0, 0, _local4, (_local5 + _arg2), _local6, 0, 0, _local4, _local5, (_local6 + _arg2), 0, 0, 0, 0, 0, 1, 0]; return (applyMatrix(_local7, _arg1)); } public static function setHue(_arg1:Array, _arg2:Number):Array{ var _local3:Number; var _local4:Number; var _local5:Array; if (isNaN(_arg2)){ return (_arg1); }; _arg2 = (_arg2 * (Math.PI / 180)); _local3 = Math.cos(_arg2); _local4 = Math.sin(_arg2); _local5 = [((_lumR + (_local3 * (1 - _lumR))) + (_local4 * -(_lumR))), ((_lumG + (_local3 * -(_lumG))) + (_local4 * -(_lumG))), ((_lumB + (_local3 * -(_lumB))) + (_local4 * (1 - _lumB))), 0, 0, ((_lumR + (_local3 * -(_lumR))) + (_local4 * 0.143)), ((_lumG + (_local3 * (1 - _lumG))) + (_local4 * 0.14)), ((_lumB + (_local3 * -(_lumB))) + (_local4 * -0.283)), 0, 0, ((_lumR + (_local3 * -(_lumR))) + (_local4 * -((1 - _lumR)))), ((_lumG + (_local3 * -(_lumG))) + (_local4 * _lumG)), ((_lumB + (_local3 * (1 - _lumB))) + (_local4 * _lumB)), 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1]; return (applyMatrix(_local5, _arg1)); } public static function setThreshold(_arg1:Array, _arg2:Number):Array{ var _local3:Array; if (isNaN(_arg2)){ return (_arg1); }; _local3 = [(_lumR * 0x0100), (_lumG * 0x0100), (_lumB * 0x0100), 0, (-256 * _arg2), (_lumR * 0x0100), (_lumG * 0x0100), (_lumB * 0x0100), 0, (-256 * _arg2), (_lumR * 0x0100), (_lumG * 0x0100), (_lumB * 0x0100), 0, (-256 * _arg2), 0, 0, 0, 1, 0]; return (applyMatrix(_local3, _arg1)); } public static function applyMatrix(_arg1:Array, _arg2:Array):Array{ var _local3:Array; var _local4:int; var _local5:int; var _local6:int; var _local7:int; if (((!((_arg1 is Array))) || (!((_arg2 is Array))))){ return (_arg2); }; _local3 = []; _local4 = 0; _local5 = 0; _local6 = 0; while (_local6 < 4) { _local7 = 0; while (_local7 < 5) { if (_local7 == 4){ _local5 = _arg1[(_local4 + 4)]; } else { _local5 = 0; }; _local3[(_local4 + _local7)] = (((((_arg1[_local4] * _arg2[_local7]) + (_arg1[(_local4 + 1)] * _arg2[(_local7 + 5)])) + (_arg1[(_local4 + 2)] * _arg2[(_local7 + 10)])) + (_arg1[(_local4 + 3)] * _arg2[(_local7 + 15)])) + _local5); _local7++; }; _local4 = (_local4 + 5); _local6++; }; return (_local3); } public static function colorize(_arg1:Array, _arg2:Number, _arg3:Number=1):Array{ var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Array; if (isNaN(_arg2)){ return (_arg1); }; if (isNaN(_arg3)){ _arg3 = 1; }; _local4 = (((_arg2 >> 16) & 0xFF) / 0xFF); _local5 = (((_arg2 >> 8) & 0xFF) / 0xFF); _local6 = ((_arg2 & 0xFF) / 0xFF); _local7 = (1 - _arg3); _local8 = [(_local7 + ((_arg3 * _local4) * _lumR)), ((_arg3 * _local4) * _lumG), ((_arg3 * _local4) * _lumB), 0, 0, ((_arg3 * _local5) * _lumR), (_local7 + ((_arg3 * _local5) * _lumG)), ((_arg3 * _local5) * _lumB), 0, 0, ((_arg3 * _local6) * _lumR), ((_arg3 * _local6) * _lumG), (_local7 + ((_arg3 * _local6) * _lumB)), 0, 0, 0, 0, 0, 1, 0]; return (applyMatrix(_local8, _arg1)); } public static function setBrightness(_arg1:Array, _arg2:Number):Array{ if (isNaN(_arg2)){ return (_arg1); }; _arg2 = ((_arg2 * 100) - 100); return (applyMatrix([1, 0, 0, 0, _arg2, 0, 1, 0, 0, _arg2, 0, 0, 1, 0, _arg2, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1], _arg1)); } public static function setContrast(_arg1:Array, _arg2:Number):Array{ var _local3:Array; if (isNaN(_arg2)){ return (_arg1); }; _arg2 = (_arg2 + 0.01); _local3 = [_arg2, 0, 0, 0, (128 * (1 - _arg2)), 0, _arg2, 0, 0, (128 * (1 - _arg2)), 0, 0, _arg2, 0, (128 * (1 - _arg2)), 0, 0, 0, 1, 0]; return (applyMatrix(_local3, _arg1)); } } }//package gs.plugins
Section 208
//DropShadowFilterPlugin (gs.plugins.DropShadowFilterPlugin) package gs.plugins { import flash.filters.*; import flash.display.*; import gs.*; public class DropShadowFilterPlugin extends FilterPlugin { public static const VERSION:Number = 1; public static const API:Number = 1; public function DropShadowFilterPlugin(){ this.propName = "dropShadowFilter"; this.overwriteProps = ["dropShadowFilter"]; } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ _target = _arg1; _type = DropShadowFilter; initFilter(_arg2, new DropShadowFilter(0, 45, 0, 0, 0, 0, 1, ((_arg2.quality) || (2)), _arg2.inner, _arg2.knockout, _arg2.hideObject)); return (true); } } }//package gs.plugins
Section 209
//EndArrayPlugin (gs.plugins.EndArrayPlugin) package gs.plugins { import flash.display.*; import gs.*; import gs.utils.tween.*; public class EndArrayPlugin extends TweenPlugin { protected var _info:Array; protected var _a:Array; public static const VERSION:Number = 1.01; public static const API:Number = 1; public function EndArrayPlugin(){ _info = []; super(); this.propName = "endArray"; this.overwriteProps = ["endArray"]; } override public function set changeFactor(_arg1:Number):void{ var _local2:int; var _local3:ArrayTweenInfo; var _local4:Number; var _local5:int; if (this.round){ _local2 = (_info.length - 1); while (_local2 > -1) { _local3 = _info[_local2]; _local4 = (_local3.start + (_local3.change * _arg1)); _local5 = ((_local4)<0) ? -1 : 1; _a[_local3.index] = ((((_local4 % 1) * _local5))>0.5) ? (int(_local4) + _local5) : int(_local4); _local2--; }; } else { _local2 = (_info.length - 1); while (_local2 > -1) { _local3 = _info[_local2]; _a[_local3.index] = (_local3.start + (_local3.change * _arg1)); _local2--; }; }; } public function init(_arg1:Array, _arg2:Array):void{ var _local3:int; _a = _arg1; _local3 = (_arg2.length - 1); while (_local3 > -1) { if (((!((_arg1[_local3] == _arg2[_local3]))) && (!((_arg1[_local3] == null))))){ _info[_info.length] = new ArrayTweenInfo(_local3, _a[_local3], (_arg2[_local3] - _a[_local3])); }; _local3--; }; } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ if (((!((_arg1 is Array))) || (!((_arg2 is Array))))){ return (false); }; init((_arg1 as Array), _arg2); return (true); } } }//package gs.plugins
Section 210
//FilterPlugin (gs.plugins.FilterPlugin) package gs.plugins { import flash.display.*; import flash.filters.*; import gs.*; import gs.utils.tween.*; public class FilterPlugin extends TweenPlugin { protected var _index:int; protected var _filter:BitmapFilter; protected var _type:Class; protected var _remove:Boolean; protected var _target:Object; public static const VERSION:Number = 1.03; public static const API:Number = 1; override public function set changeFactor(_arg1:Number):void{ var _local2:int; var _local3:TweenInfo; var _local4:Array; _local4 = _target.filters; _local2 = (_tweens.length - 1); while (_local2 > -1) { _local3 = _tweens[_local2]; _local3.target[_local3.property] = (_local3.start + (_local3.change * _arg1)); _local2--; }; if (!((_local4[_index] is _type))){ _index = (_local4.length - 1); _local2 = (_local4.length - 1); while (_local2 > -1) { if ((_local4[_local2] is _type)){ _index = _local2; break; }; _local2--; }; }; _local4[_index] = _filter; _target.filters = _local4; } public function onCompleteTween():void{ var _local1:int; var _local2:Array; if (_remove){ _local2 = _target.filters; if (!((_local2[_index] is _type))){ _local1 = (_local2.length - 1); while (_local1 > -1) { if ((_local2[_local1] is _type)){ _local2.splice(_local1, 1); break; }; _local1--; }; } else { _local2.splice(_index, 1); }; _target.filters = _local2; }; } protected function initFilter(_arg1:Object, _arg2:BitmapFilter):void{ var _local3:Array; var _local4:String; var _local5:int; var _local6:HexColorsPlugin; var _local7:Object; _local3 = _target.filters; _index = -1; if (_arg1.index != null){ _index = _arg1.index; } else { _local5 = (_local3.length - 1); while (_local5 > -1) { if ((_local3[_local5] is _type)){ _index = _local5; break; }; _local5--; }; }; if ((((((_index == -1)) || ((_local3[_index] == null)))) || ((_arg1.addFilter == true)))){ _index = ((_arg1.index)!=null) ? _arg1.index : _local3.length; _local3[_index] = _arg2; _target.filters = _local3; }; _filter = _local3[_index]; _remove = Boolean((_arg1.remove == true)); if (_remove){ this.onComplete = onCompleteTween; }; _local7 = ((_arg1.isTV)==true) ? _arg1.exposedVars : _arg1; for (_local4 in _local7) { if (((((((((!((_local4 in _filter))) || ((_filter[_local4] == _local7[_local4])))) || ((_local4 == "remove")))) || ((_local4 == "index")))) || ((_local4 == "addFilter")))){ } else { if ((((((_local4 == "color")) || ((_local4 == "highlightColor")))) || ((_local4 == "shadowColor")))){ _local6 = new HexColorsPlugin(); _local6.initColor(_filter, _local4, _filter[_local4], _local7[_local4]); _tweens[_tweens.length] = new TweenInfo(_local6, "changeFactor", 0, 1, _local4, false); } else { if ((((((((_local4 == "quality")) || ((_local4 == "inner")))) || ((_local4 == "knockout")))) || ((_local4 == "hideObject")))){ _filter[_local4] = _local7[_local4]; } else { addTween(_filter, _local4, _filter[_local4], _local7[_local4], _local4); }; }; }; }; } } }//package gs.plugins
Section 211
//FramePlugin (gs.plugins.FramePlugin) package gs.plugins { import flash.display.*; import gs.*; public class FramePlugin extends TweenPlugin { public var frame:int; protected var _target:MovieClip; public static const VERSION:Number = 1.01; public static const API:Number = 1; public function FramePlugin(){ this.propName = "frame"; this.overwriteProps = ["frame"]; this.round = true; } override public function set changeFactor(_arg1:Number):void{ updateTweens(_arg1); _target.gotoAndStop(this.frame); } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ if (((!((_arg1 is MovieClip))) || (isNaN(_arg2)))){ return (false); }; _target = (_arg1 as MovieClip); this.frame = _target.currentFrame; addTween(this, "frame", this.frame, _arg2, "frame"); return (true); } } }//package gs.plugins
Section 212
//GlowFilterPlugin (gs.plugins.GlowFilterPlugin) package gs.plugins { import flash.filters.*; import flash.display.*; import gs.*; public class GlowFilterPlugin extends FilterPlugin { public static const VERSION:Number = 1; public static const API:Number = 1; public function GlowFilterPlugin(){ this.propName = "glowFilter"; this.overwriteProps = ["glowFilter"]; } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ _target = _arg1; _type = GlowFilter; initFilter(_arg2, new GlowFilter(0xFFFFFF, 0, 0, 0, ((_arg2.strength) || (1)), ((_arg2.quality) || (2)), _arg2.inner, _arg2.knockout)); return (true); } } }//package gs.plugins
Section 213
//HexColorsPlugin (gs.plugins.HexColorsPlugin) package gs.plugins { import flash.display.*; import gs.*; public class HexColorsPlugin extends TweenPlugin { protected var _colors:Array; public static const VERSION:Number = 1.01; public static const API:Number = 1; public function HexColorsPlugin(){ this.propName = "hexColors"; this.overwriteProps = []; _colors = []; } override public function set changeFactor(_arg1:Number):void{ var _local2:int; var _local3:Array; _local2 = (_colors.length - 1); while (_local2 > -1) { _local3 = _colors[_local2]; _local3[0][_local3[1]] = ((((_local3[2] + (_arg1 * _local3[3])) << 16) | ((_local3[4] + (_arg1 * _local3[5])) << 8)) | (_local3[6] + (_arg1 * _local3[7]))); _local2--; }; } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ var _local4:String; for (_local4 in _arg2) { initColor(_arg1, _local4, uint(_arg1[_local4]), uint(_arg2[_local4])); }; return (true); } override public function killProps(_arg1:Object):void{ var _local2:int; _local2 = (_colors.length - 1); while (_local2 > -1) { if (_arg1[_colors[_local2][1]] != undefined){ _colors.splice(_local2, 1); }; _local2--; }; super.killProps(_arg1); } public function initColor(_arg1:Object, _arg2:String, _arg3:uint, _arg4:uint):void{ var _local5:Number; var _local6:Number; var _local7:Number; if (_arg3 != _arg4){ _local5 = (_arg3 >> 16); _local6 = ((_arg3 >> 8) & 0xFF); _local7 = (_arg3 & 0xFF); _colors[_colors.length] = [_arg1, _arg2, _local5, ((_arg4 >> 16) - _local5), _local6, (((_arg4 >> 8) & 0xFF) - _local6), _local7, ((_arg4 & 0xFF) - _local7)]; this.overwriteProps[this.overwriteProps.length] = _arg2; }; } } }//package gs.plugins
Section 214
//RemoveTintPlugin (gs.plugins.RemoveTintPlugin) package gs.plugins { import flash.display.*; import gs.*; public class RemoveTintPlugin extends TintPlugin { public static const VERSION:Number = 1.01; public static const API:Number = 1; public function RemoveTintPlugin(){ this.propName = "removeTint"; } } }//package gs.plugins
Section 215
//RoundPropsPlugin (gs.plugins.RoundPropsPlugin) package gs.plugins { import flash.display.*; import gs.*; public class RoundPropsPlugin extends TweenPlugin { public static const VERSION:Number = 1; public static const API:Number = 1; public function RoundPropsPlugin(){ this.propName = "roundProps"; this.overwriteProps = []; this.round = true; } public function add(_arg1:Object, _arg2:String, _arg3:Number, _arg4:Number):void{ addTween(_arg1, _arg2, _arg3, (_arg3 + _arg4), _arg2); this.overwriteProps[this.overwriteProps.length] = _arg2; } } }//package gs.plugins
Section 216
//ShortRotationPlugin (gs.plugins.ShortRotationPlugin) package gs.plugins { import flash.display.*; import gs.*; public class ShortRotationPlugin extends TweenPlugin { public static const VERSION:Number = 1; public static const API:Number = 1; public function ShortRotationPlugin(){ this.propName = "shortRotation"; this.overwriteProps = []; } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ var _local4:String; if (typeof(_arg2) == "number"){ trace("WARNING: You appear to be using the old shortRotation syntax. Instead of passing a number, please pass an object with properties that correspond to the rotations values For example, TweenMax.to(mc, 2, {shortRotation:{rotationX:-170, rotationY:25}})"); return (false); }; for (_local4 in _arg2) { initRotation(_arg1, _local4, _arg1[_local4], _arg2[_local4]); }; return (true); } public function initRotation(_arg1:Object, _arg2:String, _arg3:Number, _arg4:Number):void{ var _local5:Number; _local5 = ((_arg4 - _arg3) % 360); if (_local5 != (_local5 % 180)){ _local5 = ((_local5)<0) ? (_local5 + 360) : (_local5 - 360); }; addTween(_arg1, _arg2, _arg3, (_arg3 + _local5), _arg2); this.overwriteProps[this.overwriteProps.length] = _arg2; } } }//package gs.plugins
Section 217
//TintPlugin (gs.plugins.TintPlugin) package gs.plugins { import flash.display.*; import gs.*; import flash.geom.*; import gs.utils.tween.*; public class TintPlugin extends TweenPlugin { protected var _ct:ColorTransform; protected var _ignoreAlpha:Boolean; protected var _target:DisplayObject; public static const VERSION:Number = 1.1; public static const API:Number = 1; protected static var _props:Array = ["redMultiplier", "greenMultiplier", "blueMultiplier", "alphaMultiplier", "redOffset", "greenOffset", "blueOffset", "alphaOffset"]; public function TintPlugin(){ this.propName = "tint"; this.overwriteProps = ["tint"]; } override public function set changeFactor(_arg1:Number):void{ var _local2:ColorTransform; updateTweens(_arg1); if (_ignoreAlpha){ _local2 = _target.transform.colorTransform; _ct.alphaMultiplier = _local2.alphaMultiplier; _ct.alphaOffset = _local2.alphaOffset; }; _target.transform.colorTransform = _ct; } public function init(_arg1:DisplayObject, _arg2:ColorTransform):void{ var _local3:int; var _local4:String; _target = _arg1; _ct = _target.transform.colorTransform; _local3 = (_props.length - 1); while (_local3 > -1) { _local4 = _props[_local3]; if (_ct[_local4] != _arg2[_local4]){ _tweens[_tweens.length] = new TweenInfo(_ct, _local4, _ct[_local4], (_arg2[_local4] - _ct[_local4]), "tint", false); }; _local3--; }; } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ var _local4:ColorTransform; if (!((_arg1 is DisplayObject))){ return (false); }; _local4 = new ColorTransform(); if (((!((_arg2 == null))) && (!((_arg3.exposedVars.removeTint == true))))){ _local4.color = uint(_arg2); }; _ignoreAlpha = true; init((_arg1 as DisplayObject), _local4); return (true); } } }//package gs.plugins
Section 218
//TweenPlugin (gs.plugins.TweenPlugin) package gs.plugins { import gs.*; import gs.utils.tween.*; public class TweenPlugin { public var overwriteProps:Array; protected var _tweens:Array; public var round:Boolean; public var onComplete:Function; public var propName:String; protected var _changeFactor:Number;// = 0 public static const VERSION:Number = 1.03; public static const API:Number = 1; public function TweenPlugin(){ _tweens = []; _changeFactor = 0; super(); } protected function updateTweens(_arg1:Number):void{ var _local2:int; var _local3:TweenInfo; var _local4:Number; var _local5:int; if (this.round){ _local2 = (_tweens.length - 1); while (_local2 > -1) { _local3 = _tweens[_local2]; _local4 = (_local3.start + (_local3.change * _arg1)); _local5 = ((_local4)<0) ? -1 : 1; _local3.target[_local3.property] = ((((_local4 % 1) * _local5))>0.5) ? (int(_local4) + _local5) : int(_local4); _local2--; }; } else { _local2 = (_tweens.length - 1); while (_local2 > -1) { _local3 = _tweens[_local2]; _local3.target[_local3.property] = (_local3.start + (_local3.change * _arg1)); _local2--; }; }; } public function set changeFactor(_arg1:Number):void{ updateTweens(_arg1); _changeFactor = _arg1; } protected function addTween(_arg1:Object, _arg2:String, _arg3:Number, _arg4, _arg5:String=null):void{ var _local6:Number; if (_arg4 != null){ _local6 = ((typeof(_arg4))=="number") ? (_arg4 - _arg3) : Number(_arg4); if (_local6 != 0){ _tweens[_tweens.length] = new TweenInfo(_arg1, _arg2, _arg3, _local6, ((_arg5) || (_arg2)), false); }; }; } public function killProps(_arg1:Object):void{ var _local2:int; _local2 = (this.overwriteProps.length - 1); while (_local2 > -1) { if ((this.overwriteProps[_local2] in _arg1)){ this.overwriteProps.splice(_local2, 1); }; _local2--; }; _local2 = (_tweens.length - 1); while (_local2 > -1) { if ((_tweens[_local2].name in _arg1)){ _tweens.splice(_local2, 1); }; _local2--; }; } public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ addTween(_arg1, this.propName, _arg1[this.propName], _arg2, this.propName); return (true); } public function get changeFactor():Number{ return (_changeFactor); } public static function activate(_arg1:Array):Boolean{ var _local2:int; var _local3:Object; _local2 = (_arg1.length - 1); while (_local2 > -1) { _local3 = new (_arg1[_local2]); TweenLite.plugins[_local3.propName] = _arg1[_local2]; _local2--; }; return (true); } } }//package gs.plugins
Section 219
//VisiblePlugin (gs.plugins.VisiblePlugin) package gs.plugins { import flash.display.*; import gs.*; public class VisiblePlugin extends TweenPlugin { protected var _tween:TweenLite; protected var _visible:Boolean; protected var _target:Object; public static const VERSION:Number = 1; public static const API:Number = 1; public function VisiblePlugin(){ this.propName = "visible"; this.overwriteProps = ["visible"]; this.onComplete = onCompleteTween; } override public function set changeFactor(_arg1:Number):void{ if (_target.visible != true){ _target.visible = true; }; } public function onCompleteTween():void{ if (((!((_tween.vars.runBackwards == true))) && ((_tween.ease == _tween.vars.ease)))){ _target.visible = _visible; }; } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ _target = _arg1; _tween = _arg3; _visible = Boolean(_arg2); return (true); } } }//package gs.plugins
Section 220
//VolumePlugin (gs.plugins.VolumePlugin) package gs.plugins { import flash.display.*; import gs.*; import flash.media.*; public class VolumePlugin extends TweenPlugin { protected var _st:SoundTransform; protected var _target:Object; public static const VERSION:Number = 1.01; public static const API:Number = 1; public function VolumePlugin(){ this.propName = "volume"; this.overwriteProps = ["volume"]; } override public function set changeFactor(_arg1:Number):void{ updateTweens(_arg1); _target.soundTransform = _st; } override public function onInitTween(_arg1:Object, _arg2, _arg3:TweenLite):Boolean{ if (((isNaN(_arg2)) || (!(_arg1.hasOwnProperty("soundTransform"))))){ return (false); }; _target = _arg1; _st = _target.soundTransform; addTween(_st, "volume", _st.volume, _arg2, "volume"); return (true); } } }//package gs.plugins
Section 221
//ArrayTweenInfo (gs.utils.tween.ArrayTweenInfo) package gs.utils.tween { public class ArrayTweenInfo { public var change:Number; public var index:uint; public var start:Number; public function ArrayTweenInfo(_arg1:uint, _arg2:Number, _arg3:Number){ this.index = _arg1; this.start = _arg2; this.change = _arg3; } } }//package gs.utils.tween
Section 222
//TweenInfo (gs.utils.tween.TweenInfo) package gs.utils.tween { public class TweenInfo { public var start:Number; public var name:String; public var change:Number; public var target:Object; public var property:String; public var isPlugin:Boolean; public function TweenInfo(_arg1:Object, _arg2:String, _arg3:Number, _arg4:Number, _arg5:String, _arg6:Boolean){ this.target = _arg1; this.property = _arg2; this.start = _arg3; this.change = _arg4; this.name = _arg5; this.isPlugin = _arg6; } } }//package gs.utils.tween
Section 223
//OverwriteManager (gs.OverwriteManager) package gs { import flash.errors.*; import flash.utils.*; import gs.utils.tween.*; public class OverwriteManager { public static const ALL:int = 1; public static const NONE:int = 0; public static const AUTO:int = 2; public static const CONCURRENT:int = 3; public static const version:Number = 3.12; public static var mode:int; public static var enabled:Boolean; public static function killVars(_arg1:Object, _arg2:Object, _arg3:Array):void{ var _local4:int; var _local5:String; var _local6:TweenInfo; _local4 = (_arg3.length - 1); while (_local4 > -1) { _local6 = _arg3[_local4]; if ((_local6.name in _arg1)){ _arg3.splice(_local4, 1); } else { if (((_local6.isPlugin) && ((_local6.name == "_MULTIPLE_")))){ _local6.target.killProps(_arg1); if (_local6.target.overwriteProps.length == 0){ _arg3.splice(_local4, 1); }; }; }; _local4--; }; for (_local5 in _arg1) { delete _arg2[_local5]; }; } public static function manageOverwrites(_arg1:TweenLite, _arg2:Array):void{ var _local3:Object; var _local4:int; var _local5:Number; var _local6:Array; var _local7:int; var _local8:TweenLite; var _local9:int; var _local10:Array; var _local11:Object; var _local12:int; var _local13:TweenInfo; var _local14:Array; _local3 = _arg1.vars; _local4 = ((_local3.overwrite)==undefined) ? mode : int(_local3.overwrite); if ((((_local4 < 2)) || ((_arg2 == null)))){ return; }; _local5 = _arg1.startTime; _local6 = []; _local9 = -1; _local7 = (_arg2.length - 1); while (_local7 > -1) { _local8 = _arg2[_local7]; if (_local8 == _arg1){ _local9 = _local7; } else { if ((((((_local7 < _local9)) && ((_local8.startTime <= _local5)))) && (((_local8.startTime + ((_local8.duration * 1000) / _local8.combinedTimeScale)) > _local5)))){ _local6[_local6.length] = _local8; }; }; _local7--; }; if ((((_local6.length == 0)) || ((_arg1.tweens.length == 0)))){ return; }; if (_local4 == AUTO){ _local10 = _arg1.tweens; _local11 = {}; _local7 = (_local10.length - 1); while (_local7 > -1) { _local13 = _local10[_local7]; if (_local13.isPlugin){ if (_local13.name == "_MULTIPLE_"){ _local14 = _local13.target.overwriteProps; _local12 = (_local14.length - 1); while (_local12 > -1) { _local11[_local14[_local12]] = true; _local12--; }; } else { _local11[_local13.name] = true; }; _local11[_local13.target.propName] = true; } else { _local11[_local13.name] = true; }; _local7--; }; _local7 = (_local6.length - 1); while (_local7 > -1) { killVars(_local11, _local6[_local7].exposedVars, _local6[_local7].tweens); _local7--; }; } else { _local7 = (_local6.length - 1); while (_local7 > -1) { _local6[_local7].enabled = false; _local7--; }; }; } public static function init(_arg1:int=2):int{ if (TweenLite.version < 10.09){ trace("TweenLite warning: Your TweenLite class needs to be updated to work with OverwriteManager (or you may need to clear your ASO files). Please download and install the latest version from http://www.tweenlite.com."); }; TweenLite.overwriteManager = OverwriteManager; mode = _arg1; enabled = true; return (mode); } } }//package gs
Section 224
//TweenLite (gs.TweenLite) package gs { import flash.display.*; import flash.events.*; import flash.utils.*; import gs.plugins.*; import gs.utils.tween.*; public class TweenLite { public var delay:Number; protected var _hasUpdate:Boolean; protected var _hasPlugins:Boolean; public var started:Boolean; public var initted:Boolean; public var active:Boolean; public var startTime:Number; public var target:Object; public var duration:Number; public var gc:Boolean; public var vars:Object; public var ease:Function; public var tweens:Array; public var exposedVars:Object; public var combinedTimeScale:Number; public var initTime:Number; public static const version:Number = 10.092; private static var _timer:Timer = new Timer(2000); public static var defaultEase:Function = TweenLite.easeOut; public static var plugins:Object = {}; public static var currentTime:uint; public static var masterList:Dictionary = new Dictionary(false); protected static var _reservedProps:Object = {ease:1, delay:1, overwrite:1, onComplete:1, onCompleteParams:1, runBackwards:1, startAt:1, onUpdate:1, onUpdateParams:1, roundProps:1, onStart:1, onStartParams:1, persist:1, renderOnStart:1, proxiedEase:1, easeParams:1, yoyo:1, loop:1, onCompleteListener:1, onUpdateListener:1, onStartListener:1, orientToBezier:1, timeScale:1}; public static var killDelayedCallsTo:Function = TweenLite.killTweensOf; public static var timingSprite:Sprite = new Sprite(); public static var overwriteManager:Object; private static var _tlInitted:Boolean; public function TweenLite(_arg1:Object, _arg2:Number, _arg3:Object){ var _local4:int; super(); if (_arg1 == null){ return; }; if (!(_tlInitted)){ TweenPlugin.activate([TintPlugin, RemoveTintPlugin, FramePlugin, AutoAlphaPlugin, VisiblePlugin, VolumePlugin, EndArrayPlugin]); currentTime = getTimer(); timingSprite.addEventListener(Event.ENTER_FRAME, updateAll, false, 0, true); if (overwriteManager == null){ overwriteManager = {mode:1, enabled:false}; }; _timer.addEventListener("timer", killGarbage, false, 0, true); _timer.start(); _tlInitted = true; }; this.vars = _arg3; this.duration = ((_arg2) || (0.001)); this.delay = ((_arg3.delay) || (0)); this.combinedTimeScale = ((_arg3.timeScale) || (1)); this.active = Boolean((((_arg2 == 0)) && ((this.delay == 0)))); this.target = _arg1; if (typeof(this.vars.ease) != "function"){ this.vars.ease = defaultEase; }; if (this.vars.easeParams != null){ this.vars.proxiedEase = this.vars.ease; this.vars.ease = easeProxy; }; this.ease = this.vars.ease; this.exposedVars = ((this.vars.isTV)==true) ? this.vars.exposedVars : this.vars; this.tweens = []; this.initTime = currentTime; this.startTime = (this.initTime + (this.delay * 1000)); _local4 = ((((_arg3.overwrite == undefined)) || (((!(overwriteManager.enabled)) && ((_arg3.overwrite > 1)))))) ? overwriteManager.mode : int(_arg3.overwrite); if (((!((_arg1 in masterList))) || ((_local4 == 1)))){ masterList[_arg1] = [this]; } else { masterList[_arg1].push(this); }; if ((((((this.vars.runBackwards == true)) && (!((this.vars.renderOnStart == true))))) || (this.active))){ initTweenVals(); if (this.active){ render((this.startTime + 1)); } else { render(this.startTime); }; if (((((!((this.exposedVars.visible == null))) && ((this.vars.runBackwards == true)))) && ((this.target is DisplayObject)))){ this.target.visible = this.exposedVars.visible; }; }; } public function set enabled(_arg1:Boolean):void{ var _local2:Array; var _local3:Boolean; var _local4:int; if (_arg1){ if (!((this.target in masterList))){ masterList[this.target] = [this]; } else { _local2 = masterList[this.target]; _local4 = (_local2.length - 1); while (_local4 > -1) { if (_local2[_local4] == this){ _local3 = true; break; }; _local4--; }; if (!(_local3)){ _local2[_local2.length] = this; }; }; }; this.gc = (_arg1) ? false : true; if (this.gc){ this.active = false; } else { this.active = this.started; }; } public function clear():void{ this.tweens = []; this.vars = (this.exposedVars = {ease:this.vars.ease}); _hasUpdate = false; } public function render(_arg1:uint):void{ var _local2:Number; var _local3:Number; var _local4:TweenInfo; var _local5:int; _local2 = ((_arg1 - this.startTime) * 0.001); if (_local2 >= this.duration){ _local2 = this.duration; _local3 = ((((this.ease == this.vars.ease)) || ((this.duration == 0.001)))) ? 1 : 0; } else { _local3 = this.ease(_local2, 0, 1, this.duration); }; _local5 = (this.tweens.length - 1); while (_local5 > -1) { _local4 = this.tweens[_local5]; _local4.target[_local4.property] = (_local4.start + (_local3 * _local4.change)); _local5--; }; if (_hasUpdate){ this.vars.onUpdate.apply(null, this.vars.onUpdateParams); }; if (_local2 == this.duration){ complete(true); }; } public function activate():void{ this.started = (this.active = true); if (!(this.initted)){ initTweenVals(); }; if (this.vars.onStart != null){ this.vars.onStart.apply(null, this.vars.onStartParams); }; if (this.duration == 0.001){ this.startTime = (this.startTime - 1); }; } public function get enabled():Boolean{ return ((this.gc) ? false : true); } public function initTweenVals():void{ var _local1:String; var _local2:int; var _local3:*; var _local4:TweenInfo; if (((!((this.exposedVars.timeScale == undefined))) && (this.target.hasOwnProperty("timeScale")))){ this.tweens[this.tweens.length] = new TweenInfo(this.target, "timeScale", this.target.timeScale, (this.exposedVars.timeScale - this.target.timeScale), "timeScale", false); }; for (_local1 in this.exposedVars) { if ((_local1 in _reservedProps)){ } else { if ((_local1 in plugins)){ _local3 = new (plugins[_local1]); if (_local3.onInitTween(this.target, this.exposedVars[_local1], this) == false){ this.tweens[this.tweens.length] = new TweenInfo(this.target, _local1, this.target[_local1], ((typeof(this.exposedVars[_local1]))=="number") ? (this.exposedVars[_local1] - this.target[_local1]) : Number(this.exposedVars[_local1]), _local1, false); } else { this.tweens[this.tweens.length] = new TweenInfo(_local3, "changeFactor", 0, 1, ((_local3.overwriteProps.length)==1) ? _local3.overwriteProps[0] : "_MULTIPLE_", true); _hasPlugins = true; }; } else { this.tweens[this.tweens.length] = new TweenInfo(this.target, _local1, this.target[_local1], ((typeof(this.exposedVars[_local1]))=="number") ? (this.exposedVars[_local1] - this.target[_local1]) : Number(this.exposedVars[_local1]), _local1, false); }; }; }; if (this.vars.runBackwards == true){ _local2 = (this.tweens.length - 1); while (_local2 > -1) { _local4 = this.tweens[_local2]; _local4.start = (_local4.start + _local4.change); _local4.change = -(_local4.change); _local2--; }; }; if (this.vars.onUpdate != null){ _hasUpdate = true; }; if (((TweenLite.overwriteManager.enabled) && ((this.target in masterList)))){ overwriteManager.manageOverwrites(this, masterList[this.target]); }; this.initted = true; } protected function easeProxy(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (this.vars.proxiedEase.apply(null, arguments.concat(this.vars.easeParams))); } public function killVars(_arg1:Object):void{ if (overwriteManager.enabled){ overwriteManager.killVars(_arg1, this.exposedVars, this.tweens); }; } public function complete(_arg1:Boolean=false):void{ var _local2:int; if (!(_arg1)){ if (!(this.initted)){ initTweenVals(); }; this.startTime = (currentTime - ((this.duration * 1000) / this.combinedTimeScale)); render(currentTime); return; }; if (_hasPlugins){ _local2 = (this.tweens.length - 1); while (_local2 > -1) { if (((this.tweens[_local2].isPlugin) && (!((this.tweens[_local2].target.onComplete == null))))){ this.tweens[_local2].target.onComplete(); }; _local2--; }; }; if (this.vars.persist != true){ this.enabled = false; }; if (this.vars.onComplete != null){ this.vars.onComplete.apply(null, this.vars.onCompleteParams); }; } public static function updateAll(_arg1:Event=null):void{ var _local2:uint; var _local3:Dictionary; var _local4:Array; var _local5:int; var _local6:TweenLite; _local2 = (currentTime = getTimer()); _local3 = masterList; for each (_local4 in _local3) { _local5 = (_local4.length - 1); while (_local5 > -1) { _local6 = _local4[_local5]; if (_local6.active){ _local6.render(_local2); } else { if (_local6.gc){ _local4.splice(_local5, 1); } else { if (_local2 >= _local6.startTime){ _local6.activate(); _local6.render(_local2); }; }; }; _local5--; }; }; } public static function removeTween(_arg1:TweenLite, _arg2:Boolean=true):void{ if (_arg1 != null){ if (_arg2){ _arg1.clear(); }; _arg1.enabled = false; }; } public static function killTweensOf(_arg1:Object=null, _arg2:Boolean=false):void{ var _local3:Array; var _local4:int; var _local5:TweenLite; if (((!((_arg1 == null))) && ((_arg1 in masterList)))){ _local3 = masterList[_arg1]; _local4 = (_local3.length - 1); while (_local4 > -1) { _local5 = _local3[_local4]; if (((_arg2) && (!(_local5.gc)))){ _local5.complete(false); }; _local5.clear(); _local4--; }; delete masterList[_arg1]; }; } public static function from(_arg1:Object, _arg2:Number, _arg3:Object):TweenLite{ _arg3.runBackwards = true; return (new TweenLite(_arg1, _arg2, _arg3)); } public static function easeOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = (_arg1 / _arg4); return ((((-(_arg3) * _arg1) * (_arg1 - 2)) + _arg2)); } protected static function killGarbage(_arg1:TimerEvent):void{ var _local2:Dictionary; var _local3:Object; _local2 = masterList; for (_local3 in _local2) { if (_local2[_local3].length == 0){ delete _local2[_local3]; }; }; } public static function delayedCall(_arg1:Number, _arg2:Function, _arg3:Array=null):TweenLite{ return (new TweenLite(_arg2, 0, {delay:_arg1, onComplete:_arg2, onCompleteParams:_arg3, overwrite:0})); } public static function to(_arg1:Object, _arg2:Number, _arg3:Object):TweenLite{ return (new TweenLite(_arg1, _arg2, _arg3)); } } }//package gs
Section 225
//TweenMax (gs.TweenMax) package gs { import flash.events.*; import flash.utils.*; import gs.plugins.*; import gs.utils.tween.*; import gs.events.*; public class TweenMax extends TweenLite implements IEventDispatcher { protected var _dispatcher:EventDispatcher; protected var _callbacks:Object; public var pauseTime:Number; protected var _repeatCount:Number; protected var _timeScale:Number; public static const version:Number = 10.12; public static var removeTween:Function = TweenLite.removeTween; private static var _overwriteMode:int = (OverwriteManager.enabled) ? OverwriteManager.mode : OverwriteManager.init(); ; protected static var _pausedTweens:Dictionary = new Dictionary(false); protected static var _globalTimeScale:Number = 1; public static var killTweensOf:Function = TweenLite.killTweensOf; public static var killDelayedCallsTo:Function = TweenLite.killTweensOf; private static var _activatedPlugins:Boolean = TweenPlugin.activate([TintPlugin, RemoveTintPlugin, FramePlugin, AutoAlphaPlugin, VisiblePlugin, VolumePlugin, EndArrayPlugin, HexColorsPlugin, BlurFilterPlugin, ColorMatrixFilterPlugin, BevelFilterPlugin, DropShadowFilterPlugin, GlowFilterPlugin, RoundPropsPlugin, BezierPlugin, BezierThroughPlugin, ShortRotationPlugin]); public function TweenMax(_arg1:Object, _arg2:Number, _arg3:Object){ super(_arg1, _arg2, _arg3); if (TweenLite.version < 10.092){ trace("TweenMax error! Please update your TweenLite class or try deleting your ASO files. TweenMax requires a more recent version. Download updates at http://www.TweenMax.com."); }; if (((!((this.combinedTimeScale == 1))) && ((this.target is TweenMax)))){ _timeScale = 1; this.combinedTimeScale = _globalTimeScale; } else { _timeScale = this.combinedTimeScale; this.combinedTimeScale = (this.combinedTimeScale * _globalTimeScale); }; if (((!((this.combinedTimeScale == 1))) && (!((this.delay == 0))))){ this.startTime = (this.initTime + (this.delay * (1000 / this.combinedTimeScale))); }; if (((((!((this.vars.onCompleteListener == null))) || (!((this.vars.onUpdateListener == null))))) || (!((this.vars.onStartListener == null))))){ initDispatcher(); if ((((_arg2 == 0)) && ((this.delay == 0)))){ onUpdateDispatcher(); onCompleteDispatcher(); }; }; _repeatCount = 0; if (((!(isNaN(this.vars.yoyo))) || (!(isNaN(this.vars.loop))))){ this.vars.persist = true; }; if ((((this.delay == 0)) && (!((this.vars.startAt == null))))){ this.vars.startAt.overwrite = 0; new TweenMax(this.target, 0, this.vars.startAt); }; } public function set repeatCount(_arg1:Number):void{ _repeatCount = _arg1; } override public function set enabled(_arg1:Boolean):void{ if (!(_arg1)){ _pausedTweens[this] = null; delete _pausedTweens[this]; }; super.enabled = _arg1; if (_arg1){ this.combinedTimeScale = (_timeScale * _globalTimeScale); }; } public function set reversed(_arg1:Boolean):void{ if (this.reversed != _arg1){ reverse(); }; } override public function render(_arg1:uint):void{ var _local2:Number; var _local3:Number; var _local4:TweenInfo; var _local5:int; _local2 = (((_arg1 - this.startTime) * 0.001) * this.combinedTimeScale); if (_local2 >= this.duration){ _local2 = this.duration; _local3 = ((((this.ease == this.vars.ease)) || ((this.duration == 0.001)))) ? 1 : 0; } else { _local3 = this.ease(_local2, 0, 1, this.duration); }; _local5 = (this.tweens.length - 1); while (_local5 > -1) { _local4 = this.tweens[_local5]; _local4.target[_local4.property] = (_local4.start + (_local3 * _local4.change)); _local5--; }; if (_hasUpdate){ this.vars.onUpdate.apply(null, this.vars.onUpdateParams); }; if (_local2 == this.duration){ complete(true); }; } protected function adjustStartValues():void{ var _local1:Number; var _local2:Number; var _local3:Number; var _local4:Number; var _local5:TweenInfo; var _local6:int; _local1 = this.progress; if (_local1 != 0){ _local2 = this.ease(_local1, 0, 1, 1); _local3 = (1 / (1 - _local2)); _local6 = (this.tweens.length - 1); while (_local6 > -1) { _local5 = this.tweens[_local6]; _local4 = (_local5.start + _local5.change); if (_local5.isPlugin){ _local5.change = ((_local4 - _local2) * _local3); } else { _local5.change = ((_local4 - _local5.target[_local5.property]) * _local3); }; _local5.start = (_local4 - _local5.change); _local6--; }; }; } public function get timeScale():Number{ return (_timeScale); } public function restart(_arg1:Boolean=false):void{ if (_arg1){ this.initTime = currentTime; this.startTime = (currentTime + (this.delay * (1000 / this.combinedTimeScale))); } else { this.startTime = currentTime; this.initTime = (currentTime - (this.delay * (1000 / this.combinedTimeScale))); }; _repeatCount = 0; if (this.target != this.vars.onComplete){ render(this.startTime); }; this.pauseTime = NaN; _pausedTweens[this] = null; delete _pausedTweens[this]; this.enabled = true; } public function get paused():Boolean{ return (!(isNaN(this.pauseTime))); } public function killProperties(_arg1:Array):void{ var _local2:Object; var _local3:int; _local2 = {}; _local3 = (_arg1.length - 1); while (_local3 > -1) { _local2[_arg1[_local3]] = true; _local3--; }; killVars(_local2); } public function resume():void{ this.enabled = true; if (!(isNaN(this.pauseTime))){ this.initTime = (this.initTime + (currentTime - this.pauseTime)); this.startTime = (this.initTime + (this.delay * (1000 / this.combinedTimeScale))); this.pauseTime = NaN; if (((!(this.started)) && ((currentTime >= this.startTime)))){ activate(); } else { this.active = this.started; }; _pausedTweens[this] = null; delete _pausedTweens[this]; }; } override public function complete(_arg1:Boolean=false):void{ if (((((!(isNaN(this.vars.yoyo))) && ((((_repeatCount < this.vars.yoyo)) || ((this.vars.yoyo == 0)))))) || (((!(isNaN(this.vars.loop))) && ((((_repeatCount < this.vars.loop)) || ((this.vars.loop == 0)))))))){ _repeatCount++; if (!(isNaN(this.vars.yoyo))){ this.ease = ((this.vars.ease)==this.ease) ? reverseEase : this.vars.ease; }; this.startTime = (_arg1) ? (this.startTime + (this.duration * (1000 / this.combinedTimeScale))) : currentTime; this.initTime = (this.startTime - (this.delay * (1000 / this.combinedTimeScale))); } else { if (this.vars.persist == true){ pause(); }; }; super.complete(_arg1); } public function invalidate(_arg1:Boolean=true):void{ var _local2:Number; if (this.initted){ _local2 = this.progress; if (((!(_arg1)) && (!((_local2 == 0))))){ this.progress = 0; }; this.tweens = []; _hasPlugins = false; this.exposedVars = ((this.vars.isTV)==true) ? this.vars.exposedProps : this.vars; initTweenVals(); _timeScale = ((this.vars.timeScale) || (1)); this.combinedTimeScale = (_timeScale * _globalTimeScale); this.delay = ((this.vars.delay) || (0)); if (isNaN(this.pauseTime)){ this.startTime = (this.initTime + ((this.delay * 1000) / this.combinedTimeScale)); }; if (((((!((this.vars.onCompleteListener == null))) || (!((this.vars.onUpdateListener == null))))) || (!((this.vars.onStartListener == null))))){ if (_dispatcher != null){ this.vars.onStart = _callbacks.onStart; this.vars.onUpdate = _callbacks.onUpdate; this.vars.onComplete = _callbacks.onComplete; _dispatcher = null; }; initDispatcher(); }; if (_local2 != 0){ if (_arg1){ adjustStartValues(); } else { this.progress = _local2; }; }; }; } public function get progress():Number{ var _local1:Number; var _local2:Number; _local1 = (!(isNaN(this.pauseTime))) ? this.pauseTime : currentTime; _local2 = (((((_local1 - this.initTime) * 0.001) - (this.delay / this.combinedTimeScale)) / this.duration) * this.combinedTimeScale); if (_local2 > 1){ return (1); }; if (_local2 < 0){ return (0); }; return (_local2); } public function willTrigger(_arg1:String):Boolean{ if (_dispatcher == null){ return (false); }; return (_dispatcher.willTrigger(_arg1)); } public function dispatchEvent(_arg1:Event):Boolean{ if (_dispatcher == null){ return (false); }; return (_dispatcher.dispatchEvent(_arg1)); } public function get reversed():Boolean{ return ((this.ease == reverseEase)); } public function get repeatCount():Number{ return (_repeatCount); } protected function onStartDispatcher(... _args):void{ if (_callbacks.onStart != null){ _callbacks.onStart.apply(null, this.vars.onStartParams); }; _dispatcher.dispatchEvent(new TweenEvent(TweenEvent.START)); } public function setDestination(_arg1:String, _arg2, _arg3:Boolean=true):void{ var _local4:Number; var _local5:int; var _local6:TweenInfo; var _local7:Object; var _local8:Object; var _local9:Array; var _local10:Boolean; var _local11:Array; var _local12:Object; _local4 = this.progress; if (this.initted){ if (!(_arg3)){ _local5 = (this.tweens.length - 1); while (_local5 > -1) { _local6 = this.tweens[_local5]; if (_local6.name == _arg1){ _local6.target[_local6.property] = _local6.start; }; _local5--; }; }; _local7 = this.vars; _local8 = this.exposedVars; _local9 = this.tweens; _local10 = _hasPlugins; this.tweens = []; this.vars = (this.exposedVars = {}); this.vars[_arg1] = _arg2; initTweenVals(); if (((!((this.ease == reverseEase))) && ((_local7.ease is Function)))){ this.ease = _local7.ease; }; if (((_arg3) && (!((_local4 == 0))))){ adjustStartValues(); }; _local11 = this.tweens; this.vars = _local7; this.exposedVars = _local8; this.tweens = _local9; _local12 = {}; _local12[_arg1] = true; _local5 = (this.tweens.length - 1); while (_local5 > -1) { _local6 = this.tweens[_local5]; if (_local6.name == _arg1){ this.tweens.splice(_local5, 1); } else { if (((_local6.isPlugin) && ((_local6.name == "_MULTIPLE_")))){ _local6.target.killProps(_local12); if (_local6.target.overwriteProps.length == 0){ this.tweens.splice(_local5, 1); }; }; }; _local5--; }; this.tweens = this.tweens.concat(_local11); _hasPlugins = Boolean(((_local10) || (_hasPlugins))); }; this.vars[_arg1] = (this.exposedVars[_arg1] = _arg2); } public function set timeScale(_arg1:Number):void{ if (_arg1 < 1E-5){ _arg1 = (_timeScale = 1E-5); } else { _timeScale = _arg1; _arg1 = (_arg1 * _globalTimeScale); }; this.initTime = ((currentTime - ((((currentTime - this.initTime) - (this.delay * (1000 / this.combinedTimeScale))) * this.combinedTimeScale) * (1 / _arg1))) - (this.delay * (1000 / _arg1))); if (this.startTime != 999999999999999){ this.startTime = (this.initTime + (this.delay * (1000 / _arg1))); }; this.combinedTimeScale = _arg1; } public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{ if (_dispatcher != null){ _dispatcher.removeEventListener(_arg1, _arg2, _arg3); }; } override public function initTweenVals():void{ var _local1:int; var _local2:int; var _local3:String; var _local4:String; var _local5:Array; var _local6:Object; var _local7:TweenInfo; if (((!((this.vars.startAt == null))) && (!((this.delay == 0))))){ this.vars.startAt.overwrite = 0; new TweenMax(this.target, 0, this.vars.startAt); }; super.initTweenVals(); if ((((this.exposedVars.roundProps is Array)) && (!((TweenLite.plugins.roundProps == null))))){ _local5 = this.exposedVars.roundProps; _local1 = (_local5.length - 1); while (_local1 > -1) { _local3 = _local5[_local1]; _local2 = (this.tweens.length - 1); while (_local2 > -1) { _local7 = this.tweens[_local2]; if (_local7.name == _local3){ if (_local7.isPlugin){ _local7.target.round = true; } else { if (_local6 == null){ _local6 = new TweenLite.plugins.roundProps(); _local6.add(_local7.target, _local3, _local7.start, _local7.change); _hasPlugins = true; this.tweens[_local2] = new TweenInfo(_local6, "changeFactor", 0, 1, _local3, true); } else { _local6.add(_local7.target, _local3, _local7.start, _local7.change); this.tweens.splice(_local2, 1); }; }; } else { if (((((_local7.isPlugin) && ((_local7.name == "_MULTIPLE_")))) && (!(_local7.target.round)))){ _local4 = ((" " + _local7.target.overwriteProps.join(" ")) + " "); if (_local4.indexOf(((" " + _local3) + " ")) != -1){ _local7.target.round = true; }; }; }; _local2--; }; _local1--; }; }; } protected function initDispatcher():void{ var _local1:Object; var _local2:String; if (_dispatcher == null){ _dispatcher = new EventDispatcher(this); _callbacks = {onStart:this.vars.onStart, onUpdate:this.vars.onUpdate, onComplete:this.vars.onComplete}; if (this.vars.isTV == true){ this.vars = this.vars.clone(); } else { _local1 = {}; for (_local2 in this.vars) { _local1[_local2] = this.vars[_local2]; }; this.vars = _local1; }; this.vars.onStart = onStartDispatcher; this.vars.onComplete = onCompleteDispatcher; if ((this.vars.onStartListener is Function)){ _dispatcher.addEventListener(TweenEvent.START, this.vars.onStartListener, false, 0, true); }; if ((this.vars.onUpdateListener is Function)){ _dispatcher.addEventListener(TweenEvent.UPDATE, this.vars.onUpdateListener, false, 0, true); this.vars.onUpdate = onUpdateDispatcher; _hasUpdate = true; }; if ((this.vars.onCompleteListener is Function)){ _dispatcher.addEventListener(TweenEvent.COMPLETE, this.vars.onCompleteListener, false, 0, true); }; }; } protected function onUpdateDispatcher(... _args):void{ if (_callbacks.onUpdate != null){ _callbacks.onUpdate.apply(null, this.vars.onUpdateParams); }; _dispatcher.dispatchEvent(new TweenEvent(TweenEvent.UPDATE)); } public function set progress(_arg1:Number):void{ this.startTime = (currentTime - ((this.duration * _arg1) * 1000)); this.initTime = (this.startTime - (this.delay * (1000 / this.combinedTimeScale))); if (!(this.started)){ activate(); }; render(currentTime); if (!(isNaN(this.pauseTime))){ this.pauseTime = currentTime; this.startTime = 999999999999999; this.active = false; }; } public function reverse(_arg1:Boolean=true, _arg2:Boolean=true):void{ var _local3:Number; this.ease = ((this.vars.ease)==this.ease) ? reverseEase : this.vars.ease; _local3 = this.progress; if (((_arg1) && ((_local3 > 0)))){ this.startTime = (currentTime - ((((1 - _local3) * this.duration) * 1000) / this.combinedTimeScale)); this.initTime = (this.startTime - (this.delay * (1000 / this.combinedTimeScale))); }; if (_arg2 != false){ if (_local3 < 1){ resume(); } else { restart(); }; }; } public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{ if (_dispatcher == null){ initDispatcher(); }; if ((((_arg1 == TweenEvent.UPDATE)) && (!((this.vars.onUpdate == onUpdateDispatcher))))){ this.vars.onUpdate = onUpdateDispatcher; _hasUpdate = true; }; _dispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5); } public function set paused(_arg1:Boolean):void{ if (_arg1){ pause(); } else { resume(); }; } public function hasEventListener(_arg1:String):Boolean{ if (_dispatcher == null){ return (false); }; return (_dispatcher.hasEventListener(_arg1)); } public function pause():void{ if (isNaN(this.pauseTime)){ this.pauseTime = currentTime; this.startTime = 999999999999999; this.enabled = false; _pausedTweens[this] = this; }; } public function reverseEase(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (this.vars.ease((_arg4 - _arg1), _arg2, _arg3, _arg4)); } protected function onCompleteDispatcher(... _args):void{ if (_callbacks.onComplete != null){ _callbacks.onComplete.apply(null, this.vars.onCompleteParams); }; _dispatcher.dispatchEvent(new TweenEvent(TweenEvent.COMPLETE)); } public static function set globalTimeScale(_arg1:Number):void{ setGlobalTimeScale(_arg1); } public static function pauseAll(_arg1:Boolean=true, _arg2:Boolean=false):void{ changePause(true, _arg1, _arg2); } public static function killAllDelayedCalls(_arg1:Boolean=false):void{ killAll(_arg1, false, true); } public static function setGlobalTimeScale(_arg1:Number):void{ var _local2:Dictionary; var _local3:int; var _local4:Array; if (_arg1 < 1E-5){ _arg1 = 1E-5; }; _local2 = masterList; _globalTimeScale = _arg1; for each (_local4 in _local2) { _local3 = (_local4.length - 1); while (_local3 > -1) { if ((_local4[_local3] is TweenMax)){ _local4[_local3].timeScale = (_local4[_local3].timeScale * 1); }; _local3--; }; }; } public static function get globalTimeScale():Number{ return (_globalTimeScale); } public static function getTweensOf(_arg1:Object):Array{ var _local2:Array; var _local3:Array; var _local4:TweenLite; var _local5:int; _local2 = masterList[_arg1]; _local3 = []; if (_local2 != null){ _local5 = (_local2.length - 1); while (_local5 > -1) { if (!(_local2[_local5].gc)){ _local3[_local3.length] = _local2[_local5]; }; _local5--; }; }; for each (_local4 in _pausedTweens) { if (_local4.target == _arg1){ _local3[_local3.length] = _local4; }; }; return (_local3); } public static function delayedCall(_arg1:Number, _arg2:Function, _arg3:Array=null, _arg4:Boolean=false):TweenMax{ return (new TweenMax(_arg2, 0, {delay:_arg1, onComplete:_arg2, onCompleteParams:_arg3, persist:_arg4, overwrite:0})); } public static function isTweening(_arg1:Object):Boolean{ var _local2:Array; var _local3:int; _local2 = getTweensOf(_arg1); _local3 = (_local2.length - 1); while (_local3 > -1) { if (((((_local2[_local3].active) || ((_local2[_local3].startTime == currentTime)))) && (!(_local2[_local3].gc)))){ return (true); }; _local3--; }; return (false); } public static function changePause(_arg1:Boolean, _arg2:Boolean=true, _arg3:Boolean=false):void{ var _local4:Array; var _local5:Boolean; var _local6:int; _local4 = getAllTweens(); _local6 = (_local4.length - 1); while (_local6 > -1) { _local5 = (_local4[_local6].target == _local4[_local6].vars.onComplete); if ((((_local4[_local6] is TweenMax)) && ((((_local5 == _arg3)) || (!((_local5 == _arg2))))))){ _local4[_local6].paused = _arg1; }; _local6--; }; } public static function killAllTweens(_arg1:Boolean=false):void{ killAll(_arg1, true, false); } public static function from(_arg1:Object, _arg2:Number, _arg3:Object):TweenMax{ _arg3.runBackwards = true; return (new TweenMax(_arg1, _arg2, _arg3)); } public static function killAll(_arg1:Boolean=false, _arg2:Boolean=true, _arg3:Boolean=true):void{ var _local4:Array; var _local5:Boolean; var _local6:int; _local4 = getAllTweens(); _local6 = (_local4.length - 1); while (_local6 > -1) { _local5 = (_local4[_local6].target == _local4[_local6].vars.onComplete); if ((((_local5 == _arg3)) || (!((_local5 == _arg2))))){ if (_arg1){ _local4[_local6].complete(false); _local4[_local6].clear(); } else { TweenLite.removeTween(_local4[_local6], true); }; }; _local6--; }; } public static function getAllTweens():Array{ var _local1:Dictionary; var _local2:Array; var _local3:Array; var _local4:int; var _local5:TweenLite; _local1 = masterList; _local2 = []; for each (_local3 in _local1) { _local4 = (_local3.length - 1); while (_local4 > -1) { if (!(_local3[_local4].gc)){ _local2[_local2.length] = _local3[_local4]; }; _local4--; }; }; for each (_local5 in _pausedTweens) { _local2[_local2.length] = _local5; }; return (_local2); } public static function resumeAll(_arg1:Boolean=true, _arg2:Boolean=false):void{ changePause(false, _arg1, _arg2); } public static function to(_arg1:Object, _arg2:Number, _arg3:Object):TweenMax{ return (new TweenMax(_arg1, _arg2, _arg3)); } } }//package gs
Section 226
//FPSMonitor (it.flashfuck.debugger.FPSMonitor) package it.flashfuck.debugger { import flash.text.*; import flash.display.*; import flash.system.*; import flash.utils.*; import flash.events.*; public class FPSMonitor extends Sprite { private const MONITOR_BG_COLOR:uint = 2570269491; private const MONITOR_MEM_COLOR:uint = 4278190080; private const MONITOR_H:uint = 100; private const MONITOR_FPS_COLOR:uint = 4294967295; private const MONITOR_MEM_MAX:uint = 100; private const MONITOR_FPS_MAX:uint = 100; private const MONITOR_TXT_COLOR:uint = 0xFFFFFF; private const MONITOR_W:uint = 100; private var _fpstxt:TextField; private var _monitor:Bitmap; private var _mem:Number; private var _fps:Number; private var _ms:int; private var _btnGC:Sprite; private var _1024:Number; private var _tmpfps:Number; private var _time:int; private var _playerVersion:String; private var _m:BitmapData; public function FPSMonitor(){ setupui(); initMonitor(); } private function monitorFPS(_arg1:Event):void{ _time = (getTimer() - 1000); if (_time > _ms){ _fps = (_tmpfps + ((_tmpfps * 0.001) * (_time - _ms))); _ms = getTimer(); _tmpfps = 0; } else { _tmpfps++; }; _mem = ((System.totalMemory * _1024) * 0.001); _m.scroll(1, 0); _m.setPixel32(1, (MONITOR_H - ((_fps / MONITOR_FPS_MAX) * MONITOR_H)), MONITOR_FPS_COLOR); _m.setPixel32(1, (MONITOR_H - ((_mem / MONITOR_MEM_MAX) * MONITOR_H)), MONITOR_MEM_COLOR); _fpstxt.text = ((((_playerVersion + "\nFPS: ") + _fps) + "\nMEM: ") + _mem.toString().substr(0, 5)); } private function initMonitor():void{ _playerVersion = ((((("(" + Capabilities.playerType) + ") ") + Capabilities.version) + " debug:") + Capabilities.isDebugger); _1024 = (1 / 0x0400); _ms = getTimer(); _fps = 0; _tmpfps = 0; addEventListener(Event.ENTER_FRAME, monitorFPS); _btnGC.addEventListener(MouseEvent.CLICK, runGC); } private function runGC(_arg1:MouseEvent=null):void{ } private function setupui():void{ var txtf:TextFormat; var gcTxt:TextField; _m = new BitmapData(MONITOR_W, MONITOR_H, true, MONITOR_BG_COLOR); _monitor = new Bitmap(_m); _monitor.y = 40; addChild(_monitor); _fpstxt = new TextField(); txtf = new TextFormat(); txtf.color = MONITOR_TXT_COLOR; txtf.font = "Verdana"; txtf.size = 10; _fpstxt.defaultTextFormat = txtf; _fpstxt.autoSize = "left"; _fpstxt.selectable = false; addChild(_fpstxt); _btnGC = new Sprite(); var _local2 = _btnGC.graphics; with (_local2) { beginFill(MONITOR_BG_COLOR, 0.5); drawRect(0, 0, MONITOR_W, 20); endFill(); }; gcTxt = new TextField(); gcTxt.defaultTextFormat = txtf; gcTxt.text = "Run System.gc()"; gcTxt.autoSize = "left"; gcTxt.selectable = false; gcTxt.x = ((MONITOR_W - gcTxt.width) * 0.5); gcTxt.y = ((_btnGC.height - gcTxt.height) * 0.5); _btnGC.mouseChildren = false; _btnGC.buttonMode = true; _btnGC.addChild(gcTxt); _btnGC.y = (_monitor.y + MONITOR_H); addChild(_btnGC); } } }//package it.flashfuck.debugger
Section 227
//IFlexModuleFactory (mx.core.IFlexModuleFactory) package mx.core { import flash.utils.*; public interface IFlexModuleFactory { function get preloadedRSLs():Dictionary; function allowInsecureDomain(... _args):void; function create(... _args):Object; function allowDomain(... _args):void; function info():Object; } }//package mx.core
Section 228
//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 229
//Singleton (mx.core.Singleton) package mx.core { public class Singleton { mx_internal static const VERSION:String = "3.4.1.10084"; private static var classMap:Object = {}; public static function registerClass(_arg1:String, _arg2:Class):void{ var _local3:Class; _local3 = classMap[_arg1]; if (!(_local3)){ classMap[_arg1] = _arg2; }; } public static function getClass(_arg1:String):Class{ return (classMap[_arg1]); } public static function getInstance(_arg1:String):Object{ var _local2:Class; _local2 = classMap[_arg1]; if (!(_local2)){ throw (new Error((("No class registered for interface '" + _arg1) + "'."))); }; return (_local2["getInstance"]()); } } }//package mx.core
Section 230
//ModuleEvent (mx.events.ModuleEvent) package mx.events { import mx.modules.*; import flash.events.*; public class ModuleEvent extends ProgressEvent { private var _module:IModuleInfo; public var errorText:String; public static const READY:String = "ready"; public static const ERROR:String = "error"; public static const PROGRESS:String = "progress"; mx_internal static const VERSION:String = "3.4.1.10084"; public static const SETUP:String = "setup"; public static const UNLOAD:String = "unload"; public function ModuleEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:uint=0, _arg5:uint=0, _arg6:String=null, _arg7:IModuleInfo=null){ super(_arg1, _arg2, _arg3, _arg4, _arg5); this.errorText = _arg6; this._module = _arg7; } override public function clone():Event{ return (new ModuleEvent(type, bubbles, cancelable, bytesLoaded, bytesTotal, errorText, module)); } public function get module():IModuleInfo{ if (_module){ return (_module); }; return ((target as IModuleInfo)); } } }//package mx.events
Section 231
//ResourceEvent (mx.events.ResourceEvent) package mx.events { import flash.events.*; public class ResourceEvent extends ProgressEvent { public var errorText:String; mx_internal static const VERSION:String = "3.4.1.10084"; public static const COMPLETE:String = "complete"; public static const PROGRESS:String = "progress"; public static const ERROR:String = "error"; public function ResourceEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:uint=0, _arg5:uint=0, _arg6:String=null){ super(_arg1, _arg2, _arg3, _arg4, _arg5); this.errorText = _arg6; } override public function clone():Event{ return (new ResourceEvent(type, bubbles, cancelable, bytesLoaded, bytesTotal, errorText)); } } }//package mx.events
Section 232
//IModuleInfo (mx.modules.IModuleInfo) package mx.modules { import mx.core.*; import flash.system.*; import flash.utils.*; import flash.events.*; public interface IModuleInfo extends IEventDispatcher { function get ready():Boolean; function get loaded():Boolean; function get error():Boolean; function get factory():IFlexModuleFactory; function release():void; function get data():Object; function load(_arg1:ApplicationDomain=null, _arg2:SecurityDomain=null, _arg3:ByteArray=null):void; function get url():String; function set data(_arg1:Object):void; function get setup():Boolean; function publish(_arg1:IFlexModuleFactory):void; function unload():void; } }//package mx.modules
Section 233
//ModuleManager (mx.modules.ModuleManager) package mx.modules { import mx.core.*; public class ModuleManager { mx_internal static const VERSION:String = "3.4.1.10084"; public static function getModule(_arg1:String):IModuleInfo{ return (getSingleton().getModule(_arg1)); } private static function getSingleton():Object{ if (!(ModuleManagerGlobals.managerSingleton)){ ModuleManagerGlobals.managerSingleton = new ModuleManagerImpl(); }; return (ModuleManagerGlobals.managerSingleton); } public static function getAssociatedFactory(_arg1:Object):IFlexModuleFactory{ return (getSingleton().getAssociatedFactory(_arg1)); } } }//package mx.modules import mx.core.*; import flash.system.*; import flash.utils.*; import flash.events.*; import flash.net.*; import flash.display.*; import mx.events.*; class FactoryInfo { public var bytesTotal:int;// = 0 public var factory:IFlexModuleFactory; public var applicationDomain:ApplicationDomain; private function FactoryInfo(){ bytesTotal = 0; super(); } } class ModuleInfoProxy extends EventDispatcher implements IModuleInfo { private var _data:Object; private var info:ModuleInfo; private var referenced:Boolean;// = false private function ModuleInfoProxy(_arg1:ModuleInfo){ referenced = false; super(); this.info = _arg1; _arg1.addEventListener(ModuleEvent.SETUP, moduleEventHandler, false, 0, true); _arg1.addEventListener(ModuleEvent.PROGRESS, moduleEventHandler, false, 0, true); _arg1.addEventListener(ModuleEvent.READY, moduleEventHandler, false, 0, true); _arg1.addEventListener(ModuleEvent.ERROR, moduleEventHandler, false, 0, true); _arg1.addEventListener(ModuleEvent.UNLOAD, moduleEventHandler, false, 0, true); } public function get loaded():Boolean{ return (info.loaded); } public function get error():Boolean{ return (info.error); } public function set data(_arg1:Object):void{ _data = _arg1; } public function publish(_arg1:IFlexModuleFactory):void{ info.publish(_arg1); } public function get factory():IFlexModuleFactory{ return (info.factory); } public function release():void{ if (referenced){ info.removeReference(); referenced = false; }; } public function get ready():Boolean{ return (info.ready); } public function load(_arg1:ApplicationDomain=null, _arg2:SecurityDomain=null, _arg3:ByteArray=null):void{ var _local4:ModuleEvent; info.resurrect(); if (!(referenced)){ info.addReference(); referenced = true; }; if (info.error){ dispatchEvent(new ModuleEvent(ModuleEvent.ERROR)); } else { if (info.loaded){ if (info.setup){ dispatchEvent(new ModuleEvent(ModuleEvent.SETUP)); if (info.ready){ _local4 = new ModuleEvent(ModuleEvent.PROGRESS); _local4.bytesLoaded = info.size; _local4.bytesTotal = info.size; dispatchEvent(_local4); dispatchEvent(new ModuleEvent(ModuleEvent.READY)); }; }; } else { info.load(_arg1, _arg2, _arg3); }; }; } public function get data():Object{ return (_data); } private function moduleEventHandler(_arg1:ModuleEvent):void{ dispatchEvent(_arg1); } public function get url():String{ return (info.url); } public function get setup():Boolean{ return (info.setup); } public function unload():void{ info.unload(); info.removeEventListener(ModuleEvent.SETUP, moduleEventHandler); info.removeEventListener(ModuleEvent.PROGRESS, moduleEventHandler); info.removeEventListener(ModuleEvent.READY, moduleEventHandler); info.removeEventListener(ModuleEvent.ERROR, moduleEventHandler); info.removeEventListener(ModuleEvent.UNLOAD, moduleEventHandler); } } class ModuleManagerImpl extends EventDispatcher { private var moduleList:Object; private function ModuleManagerImpl(){ moduleList = {}; super(); } public function getModule(_arg1:String):IModuleInfo{ var _local2:ModuleInfo; _local2 = (moduleList[_arg1] as ModuleInfo); if (!(_local2)){ _local2 = new ModuleInfo(_arg1); moduleList[_arg1] = _local2; }; return (new ModuleInfoProxy(_local2)); } public function getAssociatedFactory(_arg1:Object):IFlexModuleFactory{ var className:String; var m:Object; var info:ModuleInfo; var domain:ApplicationDomain; var cls:Class; var object = _arg1; className = getQualifiedClassName(object); for each (m in moduleList) { info = (m as ModuleInfo); if (!(info.ready)){ } else { domain = info.applicationDomain; try { cls = Class(domain.getDefinition(className)); if ((object is cls)){ return (info.factory); }; } catch(error:Error) { }; }; }; return (null); } } class ModuleInfo extends EventDispatcher { private var _error:Boolean;// = false private var loader:Loader; private var _loaded:Boolean;// = false private var _ready:Boolean;// = false private var numReferences:int;// = 0 private var _url:String; private var factoryInfo:FactoryInfo; private var limbo:Dictionary; private var _setup:Boolean;// = false private function ModuleInfo(_arg1:String){ numReferences = 0; _error = false; _loaded = false; _ready = false; _setup = false; super(); _url = _arg1; } public function get loaded():Boolean{ return ((!(limbo)) ? _loaded : false); } public function get error():Boolean{ return ((!(limbo)) ? _error : false); } public function get factory():IFlexModuleFactory{ return ((((!(limbo)) && (factoryInfo))) ? factoryInfo.factory : null); } public function release():void{ if (((_ready) && (!(limbo)))){ limbo = new Dictionary(true); limbo[factoryInfo] = 1; factoryInfo = null; } else { unload(); }; } public function get size():int{ return ((((!(limbo)) && (factoryInfo))) ? factoryInfo.bytesTotal : 0); } public function publish(_arg1:IFlexModuleFactory):void{ if (factoryInfo){ return; }; if (_url.indexOf("published://") != 0){ return; }; factoryInfo = new FactoryInfo(); factoryInfo.factory = _arg1; _loaded = true; _setup = true; _ready = true; _error = false; dispatchEvent(new ModuleEvent(ModuleEvent.SETUP)); dispatchEvent(new ModuleEvent(ModuleEvent.PROGRESS)); dispatchEvent(new ModuleEvent(ModuleEvent.READY)); } public function initHandler(_arg1:Event):void{ var moduleEvent:ModuleEvent; var event = _arg1; factoryInfo = new FactoryInfo(); try { factoryInfo.factory = (loader.content as IFlexModuleFactory); } catch(error:Error) { }; if (!(factoryInfo.factory)){ moduleEvent = new ModuleEvent(ModuleEvent.ERROR, event.bubbles, event.cancelable); moduleEvent.bytesLoaded = 0; moduleEvent.bytesTotal = 0; moduleEvent.errorText = "SWF is not a loadable module"; dispatchEvent(moduleEvent); return; }; loader.content.addEventListener("ready", readyHandler); loader.content.addEventListener("error", moduleErrorHandler); try { factoryInfo.applicationDomain = loader.contentLoaderInfo.applicationDomain; } catch(error:Error) { }; _setup = true; dispatchEvent(new ModuleEvent(ModuleEvent.SETUP)); } public function resurrect():void{ var _local1:Object; if (((!(factoryInfo)) && (limbo))){ for (_local1 in limbo) { factoryInfo = (_local1 as FactoryInfo); break; }; limbo = null; }; if (!(factoryInfo)){ if (_loaded){ dispatchEvent(new ModuleEvent(ModuleEvent.UNLOAD)); }; loader = null; _loaded = false; _setup = false; _ready = false; _error = false; }; } public function errorHandler(_arg1:ErrorEvent):void{ var _local2:ModuleEvent; _error = true; _local2 = new ModuleEvent(ModuleEvent.ERROR, _arg1.bubbles, _arg1.cancelable); _local2.bytesLoaded = 0; _local2.bytesTotal = 0; _local2.errorText = _arg1.text; dispatchEvent(_local2); } public function get ready():Boolean{ return ((!(limbo)) ? _ready : false); } private function loadBytes(_arg1:ApplicationDomain, _arg2:ByteArray):void{ var _local3:LoaderContext; _local3 = new LoaderContext(); _local3.applicationDomain = (_arg1) ? _arg1 : new ApplicationDomain(ApplicationDomain.currentDomain); if (("allowLoadBytesCodeExecution" in _local3)){ _local3["allowLoadBytesCodeExecution"] = true; }; loader = new Loader(); loader.contentLoaderInfo.addEventListener(Event.INIT, initHandler); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler); loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, errorHandler); loader.contentLoaderInfo.addEventListener(SecurityErrorEvent.SECURITY_ERROR, errorHandler); loader.loadBytes(_arg2, _local3); } public function removeReference():void{ numReferences--; if (numReferences == 0){ release(); }; } public function addReference():void{ numReferences++; } public function get applicationDomain():ApplicationDomain{ return ((((!(limbo)) && (factoryInfo))) ? factoryInfo.applicationDomain : null); } public function moduleErrorHandler(_arg1:Event):void{ var _local2:ModuleEvent; _ready = true; factoryInfo.bytesTotal = loader.contentLoaderInfo.bytesTotal; clearLoader(); if ((_arg1 is ModuleEvent)){ _local2 = ModuleEvent(_arg1); } else { _local2 = new ModuleEvent(ModuleEvent.ERROR); }; dispatchEvent(_local2); } public function readyHandler(_arg1:Event):void{ var _local2:ModuleEvent; _ready = true; factoryInfo.bytesTotal = loader.contentLoaderInfo.bytesTotal; _local2 = new ModuleEvent(ModuleEvent.READY); _local2.bytesLoaded = loader.contentLoaderInfo.bytesLoaded; _local2.bytesTotal = loader.contentLoaderInfo.bytesTotal; clearLoader(); dispatchEvent(_local2); } private function clearLoader():void{ if (loader){ if (loader.contentLoaderInfo){ loader.contentLoaderInfo.removeEventListener(Event.INIT, initHandler); loader.contentLoaderInfo.removeEventListener(Event.COMPLETE, completeHandler); loader.contentLoaderInfo.removeEventListener(ProgressEvent.PROGRESS, progressHandler); loader.contentLoaderInfo.removeEventListener(IOErrorEvent.IO_ERROR, errorHandler); loader.contentLoaderInfo.removeEventListener(SecurityErrorEvent.SECURITY_ERROR, errorHandler); }; try { if (loader.content){ loader.content.removeEventListener("ready", readyHandler); loader.content.removeEventListener("error", moduleErrorHandler); }; } catch(error:Error) { }; if (_loaded){ try { loader.close(); } catch(error:Error) { }; }; try { loader.unload(); } catch(error:Error) { }; loader = null; }; } public function progressHandler(_arg1:ProgressEvent):void{ var _local2:ModuleEvent; _local2 = new ModuleEvent(ModuleEvent.PROGRESS, _arg1.bubbles, _arg1.cancelable); _local2.bytesLoaded = _arg1.bytesLoaded; _local2.bytesTotal = _arg1.bytesTotal; dispatchEvent(_local2); } public function load(_arg1:ApplicationDomain=null, _arg2:SecurityDomain=null, _arg3:ByteArray=null):void{ var _local4:URLRequest; var _local5:LoaderContext; if (_loaded){ return; }; _loaded = true; limbo = null; if (_arg3){ loadBytes(_arg1, _arg3); return; }; if (_url.indexOf("published://") == 0){ return; }; _local4 = new URLRequest(_url); _local5 = new LoaderContext(); _local5.applicationDomain = (_arg1) ? _arg1 : new ApplicationDomain(ApplicationDomain.currentDomain); _local5.securityDomain = _arg2; if ((((_arg2 == null)) && ((Security.sandboxType == Security.REMOTE)))){ _local5.securityDomain = SecurityDomain.currentDomain; }; loader = new Loader(); loader.contentLoaderInfo.addEventListener(Event.INIT, initHandler); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler); loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, progressHandler); loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, errorHandler); loader.contentLoaderInfo.addEventListener(SecurityErrorEvent.SECURITY_ERROR, errorHandler); loader.load(_local4, _local5); } public function completeHandler(_arg1:Event):void{ var _local2:ModuleEvent; _local2 = new ModuleEvent(ModuleEvent.PROGRESS, _arg1.bubbles, _arg1.cancelable); _local2.bytesLoaded = loader.contentLoaderInfo.bytesLoaded; _local2.bytesTotal = loader.contentLoaderInfo.bytesTotal; dispatchEvent(_local2); } public function get url():String{ return (_url); } public function get setup():Boolean{ return ((!(limbo)) ? _setup : false); } public function unload():void{ clearLoader(); if (_loaded){ dispatchEvent(new ModuleEvent(ModuleEvent.UNLOAD)); }; limbo = null; factoryInfo = null; _loaded = false; _setup = false; _ready = false; _error = false; } }
Section 234
//ModuleManagerGlobals (mx.modules.ModuleManagerGlobals) package mx.modules { public class ModuleManagerGlobals { public static var managerSingleton:Object = null; } }//package mx.modules
Section 235
//IResourceBundle (mx.resources.IResourceBundle) package mx.resources { public interface IResourceBundle { function get content():Object; function get locale():String; function get bundleName():String; } }//package mx.resources
Section 236
//IResourceManager (mx.resources.IResourceManager) package mx.resources { import flash.events.*; import flash.system.*; public interface IResourceManager extends IEventDispatcher { function getClass(_arg1:String, _arg2:String, _arg3:String=null):Class; function getInt(_arg1:String, _arg2:String, _arg3:String=null):int; function update():void; function set localeChain(_arg1:Array):void; function getUint(_arg1:String, _arg2:String, _arg3:String=null):uint; function getStringArray(_arg1:String, _arg2:String, _arg3:String=null):Array; function removeResourceBundle(_arg1:String, _arg2:String):void; function get localeChain():Array; function installCompiledResourceBundles(_arg1:ApplicationDomain, _arg2:Array, _arg3:Array):void; function findResourceBundleWithResource(_arg1:String, _arg2:String):IResourceBundle; function initializeLocaleChain(_arg1:Array):void; function getString(_arg1:String, _arg2:String, _arg3:Array=null, _arg4:String=null):String; function loadResourceModule(_arg1:String, _arg2:Boolean=true, _arg3:ApplicationDomain=null, _arg4:SecurityDomain=null):IEventDispatcher; function getLocales():Array; function removeResourceBundlesForLocale(_arg1:String):void; function getResourceBundle(_arg1:String, _arg2:String):IResourceBundle; function addResourceBundle(_arg1:IResourceBundle):void; function getBoolean(_arg1:String, _arg2:String, _arg3:String=null):Boolean; function getBundleNamesForLocale(_arg1:String):Array; function getObject(_arg1:String, _arg2:String, _arg3:String=null); function unloadResourceModule(_arg1:String, _arg2:Boolean=true):void; function getPreferredLocaleChain():Array; function getNumber(_arg1:String, _arg2:String, _arg3:String=null):Number; } }//package mx.resources
Section 237
//IResourceModule (mx.resources.IResourceModule) package mx.resources { public interface IResourceModule { function get resourceBundles():Array; } }//package mx.resources
Section 238
//LocaleSorter (mx.resources.LocaleSorter) package mx.resources { public class LocaleSorter { mx_internal static const VERSION:String = "3.4.1.10084"; private static function normalizeLocale(_arg1:String):String{ return (_arg1.toLowerCase().replace(/-/g, "_")); } public static function sortLocalesByPreference(_arg1:Array, _arg2:Array, _arg3:String=null, _arg4:Boolean=false):Array{ var result:Array; var hasLocale:Object; var i:int; var j:int; var k:int; var l:int; var locale:String; var locales:Array; var preferenceLocales:Array; var promote:*; var plocale:LocaleID; var appLocales = _arg1; var systemPreferences = _arg2; var ultimateFallbackLocale = _arg3; var addAll = _arg4; promote = function (_arg1:String):void{ if (typeof(hasLocale[_arg1]) != "undefined"){ result.push(appLocales[hasLocale[_arg1]]); delete hasLocale[_arg1]; }; }; result = []; hasLocale = {}; locales = trimAndNormalize(appLocales); preferenceLocales = trimAndNormalize(systemPreferences); addUltimateFallbackLocale(preferenceLocales, ultimateFallbackLocale); j = 0; while (j < locales.length) { hasLocale[locales[j]] = j; j = (j + 1); }; i = 0; l = preferenceLocales.length; while (i < l) { plocale = LocaleID.fromString(preferenceLocales[i]); promote(preferenceLocales[i]); promote(plocale.toString()); while (plocale.transformToParent()) { promote(plocale.toString()); }; plocale = LocaleID.fromString(preferenceLocales[i]); j = 0; while (j < l) { locale = preferenceLocales[j]; if (plocale.isSiblingOf(LocaleID.fromString(locale))){ promote(locale); }; j = (j + 1); }; j = 0; k = locales.length; while (j < k) { locale = locales[j]; if (plocale.isSiblingOf(LocaleID.fromString(locale))){ promote(locale); }; j = (j + 1); }; i = (i + 1); }; if (addAll){ j = 0; k = locales.length; while (j < k) { promote(locales[j]); j = (j + 1); }; }; return (result); } private static function addUltimateFallbackLocale(_arg1:Array, _arg2:String):void{ var _local3:String; if (((!((_arg2 == null))) && (!((_arg2 == ""))))){ _local3 = normalizeLocale(_arg2); if (_arg1.indexOf(_local3) == -1){ _arg1.push(_local3); }; }; } private static function trimAndNormalize(_arg1:Array):Array{ var _local2:Array; var _local3:int; _local2 = []; _local3 = 0; while (_local3 < _arg1.length) { _local2.push(normalizeLocale(_arg1[_local3])); _local3++; }; return (_local2); } } }//package mx.resources class LocaleRegistry { private static const SCRIPT_ID_BY_LANG:Object = {ab:5, af:1, am:2, ar:3, as:4, ay:1, be:5, bg:5, bn:4, bs:1, ca:1, ch:1, cs:1, cy:1, da:1, de:1, dv:6, dz:7, el:8, en:1, eo:1, es:1, et:1, eu:1, fa:3, fi:1, fj:1, fo:1, fr:1, frr:1, fy:1, ga:1, gl:1, gn:1, gu:9, gv:1, he:10, hi:11, hr:1, ht:1, hu:1, hy:12, id:1, in:1, is:1, it:1, iw:10, ja:13, ka:14, kk:5, kl:1, km:15, kn:16, ko:17, la:1, lb:1, ln:1, lo:18, lt:1, lv:1, mg:1, mh:1, mk:5, ml:19, mo:1, mr:11, ms:1, mt:1, my:20, na:1, nb:1, nd:1, ne:11, nl:1, nn:1, no:1, nr:1, ny:1, om:1, or:21, pa:22, pl:1, ps:3, pt:1, qu:1, rn:1, ro:1, ru:5, rw:1, sg:1, si:23, sk:1, sl:1, sm:1, so:1, sq:1, ss:1, st:1, sv:1, sw:1, ta:24, te:25, th:26, ti:2, tl:1, tn:1, to:1, tr:1, ts:1, uk:5, ur:3, ve:1, vi:1, wo:1, xh:1, yi:10, zu:1, cpe:1, dsb:1, frs:1, gsw:1, hsb:1, kok:11, mai:11, men:1, nds:1, niu:1, nqo:27, nso:1, son:1, tem:1, tkl:1, tmh:1, tpi:1, tvl:1, zbl:28}; private static const SCRIPTS:Array = ["", "latn", "ethi", "arab", "beng", "cyrl", "thaa", "tibt", "grek", "gujr", "hebr", "deva", "armn", "jpan", "geor", "khmr", "knda", "kore", "laoo", "mlym", "mymr", "orya", "guru", "sinh", "taml", "telu", "thai", "nkoo", "blis", "hans", "hant", "mong", "syrc"]; private static const DEFAULT_REGION_BY_LANG_AND_SCRIPT:Object = {bg:{5:"bg"}, ca:{1:"es"}, zh:{30:"tw", 29:"cn"}, cs:{1:"cz"}, da:{1:"dk"}, de:{1:"de"}, el:{8:"gr"}, en:{1:"us"}, es:{1:"es"}, fi:{1:"fi"}, fr:{1:"fr"}, he:{10:"il"}, hu:{1:"hu"}, is:{1:"is"}, it:{1:"it"}, ja:{13:"jp"}, ko:{17:"kr"}, nl:{1:"nl"}, nb:{1:"no"}, pl:{1:"pl"}, pt:{1:"br"}, ro:{1:"ro"}, ru:{5:"ru"}, hr:{1:"hr"}, sk:{1:"sk"}, sq:{1:"al"}, sv:{1:"se"}, th:{26:"th"}, tr:{1:"tr"}, ur:{3:"pk"}, id:{1:"id"}, uk:{5:"ua"}, be:{5:"by"}, sl:{1:"si"}, et:{1:"ee"}, lv:{1:"lv"}, lt:{1:"lt"}, fa:{3:"ir"}, vi:{1:"vn"}, hy:{12:"am"}, az:{1:"az", 5:"az"}, eu:{1:"es"}, mk:{5:"mk"}, af:{1:"za"}, ka:{14:"ge"}, fo:{1:"fo"}, hi:{11:"in"}, ms:{1:"my"}, kk:{5:"kz"}, ky:{5:"kg"}, sw:{1:"ke"}, uz:{1:"uz", 5:"uz"}, tt:{5:"ru"}, pa:{22:"in"}, gu:{9:"in"}, ta:{24:"in"}, te:{25:"in"}, kn:{16:"in"}, mr:{11:"in"}, sa:{11:"in"}, mn:{5:"mn"}, gl:{1:"es"}, kok:{11:"in"}, syr:{32:"sy"}, dv:{6:"mv"}, nn:{1:"no"}, sr:{1:"cs", 5:"cs"}, cy:{1:"gb"}, mi:{1:"nz"}, mt:{1:"mt"}, quz:{1:"bo"}, tn:{1:"za"}, xh:{1:"za"}, zu:{1:"za"}, nso:{1:"za"}, se:{1:"no"}, smj:{1:"no"}, sma:{1:"no"}, sms:{1:"fi"}, smn:{1:"fi"}, bs:{1:"ba"}}; private static const SCRIPT_BY_ID:Object = {latn:1, ethi:2, arab:3, beng:4, cyrl:5, thaa:6, tibt:7, grek:8, gujr:9, hebr:10, deva:11, armn:12, jpan:13, geor:14, khmr:15, knda:16, kore:17, laoo:18, mlym:19, mymr:20, orya:21, guru:22, sinh:23, taml:24, telu:25, thai:26, nkoo:27, blis:28, hans:29, hant:30, mong:31, syrc:32}; private static const SCRIPT_ID_BY_LANG_AND_REGION:Object = {zh:{cn:29, sg:29, tw:30, hk:30, mo:30}, mn:{cn:31, sg:5}, pa:{pk:3, in:22}, ha:{gh:1, ne:1}}; private function LocaleRegistry(){ } public static function getScriptByLangAndRegion(_arg1:String, _arg2:String):String{ var _local3:Object; var _local4:Object; _local3 = SCRIPT_ID_BY_LANG_AND_REGION[_arg1]; if (_local3 == null){ return (""); }; _local4 = _local3[_arg2]; if (_local4 == null){ return (""); }; return (SCRIPTS[int(_local4)].toLowerCase()); } public static function getScriptByLang(_arg1:String):String{ var _local2:Object; _local2 = SCRIPT_ID_BY_LANG[_arg1]; if (_local2 == null){ return (""); }; return (SCRIPTS[int(_local2)].toLowerCase()); } public static function getDefaultRegionForLangAndScript(_arg1:String, _arg2:String):String{ var _local3:Object; var _local4:Object; _local3 = DEFAULT_REGION_BY_LANG_AND_SCRIPT[_arg1]; _local4 = SCRIPT_BY_ID[_arg2]; if ((((_local3 == null)) || ((_local4 == null)))){ return (""); }; return (((_local3[int(_local4)]) || (""))); } } class LocaleID { private var privateLangs:Boolean;// = false private var script:String;// = "" private var lang:String;// = "" private var privates:Array; private var region:String;// = "" private var variants:Array; private var extensions:Object; private var extended_langs:Array; public static const STATE_PRIMARY_LANGUAGE:int = 0; public static const STATE_REGION:int = 3; public static const STATE_EXTENDED_LANGUAGES:int = 1; public static const STATE_EXTENSIONS:int = 5; public static const STATE_SCRIPT:int = 2; public static const STATE_VARIANTS:int = 4; public static const STATE_PRIVATES:int = 6; private function LocaleID(){ lang = ""; script = ""; region = ""; extended_langs = []; variants = []; extensions = {}; privates = []; privateLangs = false; super(); } public function equals(_arg1:LocaleID):Boolean{ return ((toString() == _arg1.toString())); } public function transformToParent():Boolean{ var _local1:String; var _local2:String; var _local3:Array; var _local4:String; if (privates.length > 0){ privates.splice((privates.length - 1), 1); return (true); }; _local1 = null; for (_local2 in extensions) { if (extensions.hasOwnProperty(_local2)){ _local1 = _local2; }; }; if (_local1){ _local3 = extensions[_local1]; if (_local3.length == 1){ delete extensions[_local1]; return (true); }; _local3.splice((_local3.length - 1), 1); return (true); }; if (variants.length > 0){ variants.splice((variants.length - 1), 1); return (true); }; if (script != ""){ if (LocaleRegistry.getScriptByLang(lang) != ""){ script = ""; return (true); }; if (region == ""){ _local4 = LocaleRegistry.getDefaultRegionForLangAndScript(lang, script); if (_local4 != ""){ region = _local4; script = ""; return (true); }; }; }; if (region != ""){ if (!((((script == "")) && ((LocaleRegistry.getScriptByLang(lang) == ""))))){ region = ""; return (true); }; }; if (extended_langs.length > 0){ extended_langs.splice((extended_langs.length - 1), 1); return (true); }; return (false); } public function toString():String{ var _local1:Array; var _local2:String; _local1 = [lang]; Array.prototype.push.apply(_local1, extended_langs); if (script != ""){ _local1.push(script); }; if (region != ""){ _local1.push(region); }; Array.prototype.push.apply(_local1, variants); for (_local2 in extensions) { if (extensions.hasOwnProperty(_local2)){ _local1.push(_local2); Array.prototype.push.apply(_local1, extensions[_local2]); }; }; if (privates.length > 0){ _local1.push("x"); Array.prototype.push.apply(_local1, privates); }; return (_local1.join("_")); } public function isSiblingOf(_arg1:LocaleID):Boolean{ return ((((lang == _arg1.lang)) && ((script == _arg1.script)))); } public function canonicalize():void{ var _local1:String; for (_local1 in extensions) { if (extensions.hasOwnProperty(_local1)){ if (extensions[_local1].length == 0){ delete extensions[_local1]; } else { extensions[_local1] = extensions[_local1].sort(); }; }; }; extended_langs = extended_langs.sort(); variants = variants.sort(); privates = privates.sort(); if (script == ""){ script = LocaleRegistry.getScriptByLang(lang); }; if ((((script == "")) && (!((region == ""))))){ script = LocaleRegistry.getScriptByLangAndRegion(lang, region); }; if ((((region == "")) && (!((script == ""))))){ region = LocaleRegistry.getDefaultRegionForLangAndScript(lang, script); }; } public static function fromString(_arg1:String):LocaleID{ var _local2:LocaleID; var _local3:int; var _local4:Array; var _local5:Array; var _local6:int; var _local7:int; var _local8:String; var _local9:int; var _local10:String; _local2 = new (LocaleID); _local3 = STATE_PRIMARY_LANGUAGE; _local4 = _arg1.replace(/-/g, "_").split("_"); _local6 = 0; _local7 = _local4.length; while (_local6 < _local7) { _local8 = _local4[_local6].toLowerCase(); if (_local3 == STATE_PRIMARY_LANGUAGE){ if (_local8 == "x"){ _local2.privateLangs = true; } else { if (_local8 == "i"){ _local2.lang = (_local2.lang + "i-"); } else { _local2.lang = (_local2.lang + _local8); _local3 = STATE_EXTENDED_LANGUAGES; }; }; } else { _local9 = _local8.length; if (_local9 == 0){ } else { _local10 = _local8.charAt(0).toLowerCase(); if ((((_local3 <= STATE_EXTENDED_LANGUAGES)) && ((_local9 == 3)))){ _local2.extended_langs.push(_local8); if (_local2.extended_langs.length == 3){ _local3 = STATE_SCRIPT; }; } else { if ((((_local3 <= STATE_SCRIPT)) && ((_local9 == 4)))){ _local2.script = _local8; _local3 = STATE_REGION; } else { if ((((_local3 <= STATE_REGION)) && ((((_local9 == 2)) || ((_local9 == 3)))))){ _local2.region = _local8; _local3 = STATE_VARIANTS; } else { if ((((_local3 <= STATE_VARIANTS)) && ((((((((_local10 >= "a")) && ((_local10 <= "z")))) && ((_local9 >= 5)))) || ((((((_local10 >= "0")) && ((_local10 <= "9")))) && ((_local9 >= 4)))))))){ _local2.variants.push(_local8); _local3 = STATE_VARIANTS; } else { if ((((_local3 < STATE_PRIVATES)) && ((_local9 == 1)))){ if (_local8 == "x"){ _local3 = STATE_PRIVATES; _local5 = _local2.privates; } else { _local3 = STATE_EXTENSIONS; _local5 = ((_local2.extensions[_local8]) || ([])); _local2.extensions[_local8] = _local5; }; } else { if (_local3 >= STATE_EXTENSIONS){ _local5.push(_local8); }; }; }; }; }; }; }; }; _local6++; }; _local2.canonicalize(); return (_local2); } }
Section 239
//ResourceBundle (mx.resources.ResourceBundle) package mx.resources { import flash.system.*; import mx.core.*; import mx.utils.*; public class ResourceBundle implements IResourceBundle { mx_internal var _locale:String; mx_internal var _bundleName:String; private var _content:Object; mx_internal static const VERSION:String = "3.4.1.10084"; mx_internal static var backupApplicationDomain:ApplicationDomain; mx_internal static var locale:String; public function ResourceBundle(_arg1:String=null, _arg2:String=null){ _content = {}; super(); mx_internal::_locale = _arg1; mx_internal::_bundleName = _arg2; _content = getContent(); } public function get content():Object{ return (_content); } protected function getContent():Object{ return ({}); } public function get locale():String{ return (mx_internal::_locale); } public function getBoolean(_arg1:String, _arg2:Boolean=true):Boolean{ var _local3:String; _local3 = _getObject(_arg1).toLowerCase(); if (_local3 == "false"){ return (false); }; if (_local3 == "true"){ return (true); }; return (_arg2); } public function getStringArray(_arg1:String):Array{ var _local2:Array; var _local3:int; var _local4:int; _local2 = _getObject(_arg1).split(","); _local3 = _local2.length; _local4 = 0; while (_local4 < _local3) { _local2[_local4] = StringUtil.trim(_local2[_local4]); _local4++; }; return (_local2); } public function getObject(_arg1:String):Object{ return (_getObject(_arg1)); } public function getString(_arg1:String):String{ return (String(_getObject(_arg1))); } public function get bundleName():String{ return (mx_internal::_bundleName); } private function _getObject(_arg1:String):Object{ var _local2:Object; _local2 = content[_arg1]; if (!(_local2)){ throw (new Error(((("Key " + _arg1) + " was not found in resource bundle ") + bundleName))); }; return (_local2); } public function getNumber(_arg1:String):Number{ return (Number(_getObject(_arg1))); } private static function getClassByName(_arg1:String, _arg2:ApplicationDomain):Class{ var _local3:Class; if (_arg2.hasDefinition(_arg1)){ _local3 = (_arg2.getDefinition(_arg1) as Class); }; return (_local3); } public static function getResourceBundle(_arg1:String, _arg2:ApplicationDomain=null):ResourceBundle{ var _local3:String; var _local4:Class; var _local5:Object; var _local6:ResourceBundle; if (!(_arg2)){ _arg2 = ApplicationDomain.currentDomain; }; _local3 = (((mx_internal::locale + "$") + _arg1) + "_properties"); _local4 = getClassByName(_local3, _arg2); if (!(_local4)){ _local3 = (_arg1 + "_properties"); _local4 = getClassByName(_local3, _arg2); }; if (!(_local4)){ _local3 = _arg1; _local4 = getClassByName(_local3, _arg2); }; if (((!(_local4)) && (mx_internal::backupApplicationDomain))){ _local3 = (_arg1 + "_properties"); _local4 = getClassByName(_local3, mx_internal::backupApplicationDomain); if (!(_local4)){ _local3 = _arg1; _local4 = getClassByName(_local3, mx_internal::backupApplicationDomain); }; }; if (_local4){ _local5 = new (_local4); if ((_local5 is ResourceBundle)){ _local6 = ResourceBundle(_local5); return (_local6); }; }; throw (new Error(("Could not find resource bundle " + _arg1))); } } }//package mx.resources
Section 240
//ResourceManager (mx.resources.ResourceManager) package mx.resources { import mx.core.*; public class ResourceManager { mx_internal static const VERSION:String = "3.4.1.10084"; private static var implClassDependency:ResourceManagerImpl; private static var instance:IResourceManager; public static function getInstance():IResourceManager{ if (!(instance)){ try { instance = IResourceManager(Singleton.getInstance("mx.resources::IResourceManager")); } catch(e:Error) { instance = new ResourceManagerImpl(); }; }; return (instance); } } }//package mx.resources
Section 241
//ResourceManagerImpl (mx.resources.ResourceManagerImpl) package mx.resources { import mx.modules.*; import mx.events.*; import flash.events.*; import mx.core.*; import flash.system.*; import flash.utils.*; import mx.utils.*; public class ResourceManagerImpl extends EventDispatcher implements IResourceManager { private var resourceModules:Object; private var initializedForNonFrameworkApp:Boolean;// = false private var localeMap:Object; private var _localeChain:Array; mx_internal static const VERSION:String = "3.4.1.10084"; private static var instance:IResourceManager; public function ResourceManagerImpl(){ localeMap = {}; resourceModules = {}; initializedForNonFrameworkApp = false; super(); } public function unloadResourceModule(_arg1:String, _arg2:Boolean=true):void{ var _local3:ResourceModuleInfo; var _local4:Array; var _local5:int; var _local6:int; var _local7:String; var _local8:String; _local3 = resourceModules[_arg1]; if (!(_local3)){ return; }; if (_local3.resourceModule){ _local4 = _local3.resourceModule.resourceBundles; if (_local4){ _local5 = _local4.length; _local6 = 0; while (_local6 < _local5) { _local7 = _local4[_local6].locale; _local8 = _local4[_local6].bundleName; removeResourceBundle(_local7, _local8); _local6++; }; }; }; resourceModules[_arg1] = null; delete resourceModules[_arg1]; _local3.moduleInfo.unload(); if (_arg2){ this.update(); }; } public function getBoolean(_arg1:String, _arg2:String, _arg3:String=null):Boolean{ var _local4:IResourceBundle; var _local5:*; _local4 = findBundle(_arg1, _arg2, _arg3); if (!(_local4)){ return (false); }; _local5 = _local4.content[_arg2]; return ((String(_local5).toLowerCase() == "true")); } public function getStringArray(_arg1:String, _arg2:String, _arg3:String=null):Array{ var _local4:IResourceBundle; var _local5:*; var _local6:Array; var _local7:int; var _local8:int; _local4 = findBundle(_arg1, _arg2, _arg3); if (!(_local4)){ return (null); }; _local5 = _local4.content[_arg2]; _local6 = String(_local5).split(","); _local7 = _local6.length; _local8 = 0; while (_local8 < _local7) { _local6[_local8] = StringUtil.trim(_local6[_local8]); _local8++; }; return (_local6); } public function set localeChain(_arg1:Array):void{ _localeChain = _arg1; update(); } public function get localeChain():Array{ return (_localeChain); } mx_internal function installCompiledResourceBundle(_arg1:ApplicationDomain, _arg2:String, _arg3:String):void{ var _local4:String; var _local5:String; var _local6:int; var _local7:String; var _local8:Class; var _local9:ResourceBundle; _local4 = null; _local5 = _arg3; _local6 = _arg3.indexOf(":"); if (_local6 != -1){ _local4 = _arg3.substring(0, _local6); _local5 = _arg3.substring((_local6 + 1)); }; if (getResourceBundle(_arg2, _arg3)){ return; }; _local7 = (((_arg2 + "$") + _local5) + "_properties"); if (_local4 != null){ _local7 = ((_local4 + ".") + _local7); }; _local8 = null; if (_arg1.hasDefinition(_local7)){ _local8 = Class(_arg1.getDefinition(_local7)); }; if (!(_local8)){ _local7 = _arg3; if (_arg1.hasDefinition(_local7)){ _local8 = Class(_arg1.getDefinition(_local7)); }; }; if (!(_local8)){ _local7 = (_arg3 + "_properties"); if (_arg1.hasDefinition(_local7)){ _local8 = Class(_arg1.getDefinition(_local7)); }; }; if (!(_local8)){ throw (new Error((((("Could not find compiled resource bundle '" + _arg3) + "' for locale '") + _arg2) + "'."))); }; _local9 = ResourceBundle(new (_local8)); _local9.mx_internal::_locale = _arg2; _local9.mx_internal::_bundleName = _arg3; addResourceBundle(_local9); } public function getString(_arg1:String, _arg2:String, _arg3:Array=null, _arg4:String=null):String{ var _local5:IResourceBundle; var _local6:String; _local5 = findBundle(_arg1, _arg2, _arg4); if (!(_local5)){ return (null); }; _local6 = String(_local5.content[_arg2]); if (_arg3){ _local6 = StringUtil.substitute(_local6, _arg3); }; return (_local6); } public function loadResourceModule(_arg1:String, _arg2:Boolean=true, _arg3:ApplicationDomain=null, _arg4:SecurityDomain=null):IEventDispatcher{ var moduleInfo:IModuleInfo; var resourceEventDispatcher:ResourceEventDispatcher; var readyHandler:Function; var errorHandler:Function; var timer:Timer; var timerHandler:Function; var url = _arg1; var updateFlag = _arg2; var applicationDomain = _arg3; var securityDomain = _arg4; moduleInfo = ModuleManager.getModule(url); resourceEventDispatcher = new ResourceEventDispatcher(moduleInfo); readyHandler = function (_arg1:ModuleEvent):void{ var _local2:*; _local2 = _arg1.module.factory.create(); resourceModules[_arg1.module.url].resourceModule = _local2; if (updateFlag){ update(); }; }; moduleInfo.addEventListener(ModuleEvent.READY, readyHandler, false, 0, true); errorHandler = function (_arg1:ModuleEvent):void{ var _local2:String; var _local3:ResourceEvent; _local2 = ("Unable to load resource module from " + url); if (resourceEventDispatcher.willTrigger(ResourceEvent.ERROR)){ _local3 = new ResourceEvent(ResourceEvent.ERROR, _arg1.bubbles, _arg1.cancelable); _local3.bytesLoaded = 0; _local3.bytesTotal = 0; _local3.errorText = _local2; resourceEventDispatcher.dispatchEvent(_local3); } else { throw (new Error(_local2)); }; }; moduleInfo.addEventListener(ModuleEvent.ERROR, errorHandler, false, 0, true); resourceModules[url] = new ResourceModuleInfo(moduleInfo, readyHandler, errorHandler); timer = new Timer(0); timerHandler = function (_arg1:TimerEvent):void{ timer.removeEventListener(TimerEvent.TIMER, timerHandler); timer.stop(); moduleInfo.load(applicationDomain, securityDomain); }; timer.addEventListener(TimerEvent.TIMER, timerHandler, false, 0, true); timer.start(); return (resourceEventDispatcher); } public function removeResourceBundlesForLocale(_arg1:String):void{ delete localeMap[_arg1]; } public function getResourceBundle(_arg1:String, _arg2:String):IResourceBundle{ var _local3:Object; _local3 = localeMap[_arg1]; if (!(_local3)){ return (null); }; return (_local3[_arg2]); } public function getLocales():Array{ var _local1:Array; var _local2:String; _local1 = []; for (_local2 in localeMap) { _local1.push(_local2); }; return (_local1); } private function dumpResourceModule(_arg1):void{ var _local2:ResourceBundle; var _local3:String; for each (_local2 in _arg1.resourceBundles) { trace(_local2.locale, _local2.bundleName); for (_local3 in _local2.content) { }; }; } public function addResourceBundle(_arg1:IResourceBundle):void{ var _local2:String; var _local3:String; _local2 = _arg1.locale; _local3 = _arg1.bundleName; if (!(localeMap[_local2])){ localeMap[_local2] = {}; }; localeMap[_local2][_local3] = _arg1; } public function getObject(_arg1:String, _arg2:String, _arg3:String=null){ var _local4:IResourceBundle; _local4 = findBundle(_arg1, _arg2, _arg3); if (!(_local4)){ return (undefined); }; return (_local4.content[_arg2]); } public function getInt(_arg1:String, _arg2:String, _arg3:String=null):int{ var _local4:IResourceBundle; var _local5:*; _local4 = findBundle(_arg1, _arg2, _arg3); if (!(_local4)){ return (0); }; _local5 = _local4.content[_arg2]; return (int(_local5)); } public function getBundleNamesForLocale(_arg1:String):Array{ var _local2:Array; var _local3:String; _local2 = []; for (_local3 in localeMap[_arg1]) { _local2.push(_local3); }; return (_local2); } private function findBundle(_arg1:String, _arg2:String, _arg3:String):IResourceBundle{ supportNonFrameworkApps(); return ((!((_arg3 == null))) ? getResourceBundle(_arg3, _arg1) : findResourceBundleWithResource(_arg1, _arg2)); } public function getNumber(_arg1:String, _arg2:String, _arg3:String=null):Number{ var _local4:IResourceBundle; var _local5:*; _local4 = findBundle(_arg1, _arg2, _arg3); if (!(_local4)){ return (NaN); }; _local5 = _local4.content[_arg2]; return (Number(_local5)); } private function supportNonFrameworkApps():void{ var _local1:ApplicationDomain; var _local2:Class; var _local3:Array; var _local4:Array; if (initializedForNonFrameworkApp){ return; }; initializedForNonFrameworkApp = true; if (getLocales().length > 0){ return; }; _local1 = ApplicationDomain.currentDomain; if (!(_local1.hasDefinition("_CompiledResourceBundleInfo"))){ return; }; _local2 = Class(_local1.getDefinition("_CompiledResourceBundleInfo")); _local3 = _local2.compiledLocales; _local4 = _local2.compiledResourceBundleNames; installCompiledResourceBundles(_local1, _local3, _local4); localeChain = _local3; } public function getPreferredLocaleChain():Array{ return (LocaleSorter.sortLocalesByPreference(getLocales(), getSystemPreferredLocales(), null, true)); } public function update():void{ dispatchEvent(new Event(Event.CHANGE)); } public function installCompiledResourceBundles(_arg1:ApplicationDomain, _arg2:Array, _arg3:Array):void{ var _local4:int; var _local5:int; var _local6:int; var _local7:String; var _local8:int; var _local9:String; _local4 = (_arg2) ? _arg2.length : 0; _local5 = (_arg3) ? _arg3.length : 0; _local6 = 0; while (_local6 < _local4) { _local7 = _arg2[_local6]; _local8 = 0; while (_local8 < _local5) { _local9 = _arg3[_local8]; mx_internal::installCompiledResourceBundle(_arg1, _local7, _local9); _local8++; }; _local6++; }; } public function getClass(_arg1:String, _arg2:String, _arg3:String=null):Class{ var _local4:IResourceBundle; var _local5:*; _local4 = findBundle(_arg1, _arg2, _arg3); if (!(_local4)){ return (null); }; _local5 = _local4.content[_arg2]; return ((_local5 as Class)); } public function findResourceBundleWithResource(_arg1:String, _arg2:String):IResourceBundle{ var _local3:int; var _local4:int; var _local5:String; var _local6:Object; var _local7:ResourceBundle; if (!(_localeChain)){ return (null); }; _local3 = _localeChain.length; _local4 = 0; while (_local4 < _local3) { _local5 = localeChain[_local4]; _local6 = localeMap[_local5]; if (!(_local6)){ } else { _local7 = _local6[_arg1]; if (!(_local7)){ } else { if ((_arg2 in _local7.content)){ return (_local7); }; }; }; _local4++; }; return (null); } public function getUint(_arg1:String, _arg2:String, _arg3:String=null):uint{ var _local4:IResourceBundle; var _local5:*; _local4 = findBundle(_arg1, _arg2, _arg3); if (!(_local4)){ return (0); }; _local5 = _local4.content[_arg2]; return (uint(_local5)); } public function removeResourceBundle(_arg1:String, _arg2:String):void{ delete localeMap[_arg1][_arg2]; if (getBundleNamesForLocale(_arg1).length == 0){ delete localeMap[_arg1]; }; } public function initializeLocaleChain(_arg1:Array):void{ localeChain = LocaleSorter.sortLocalesByPreference(_arg1, getSystemPreferredLocales(), null, true); } private function getSystemPreferredLocales():Array{ var _local1:Array; if (Capabilities["languages"]){ _local1 = Capabilities["languages"]; } else { _local1 = [Capabilities.language]; }; return (_local1); } public static function getInstance():IResourceManager{ if (!(instance)){ instance = new (ResourceManagerImpl); }; return (instance); } } }//package mx.resources import mx.modules.*; import mx.events.*; import flash.events.*; class ResourceModuleInfo { public var errorHandler:Function; public var resourceModule:IResourceModule; public var moduleInfo:IModuleInfo; public var readyHandler:Function; private function ResourceModuleInfo(_arg1:IModuleInfo, _arg2:Function, _arg3:Function){ this.moduleInfo = _arg1; this.readyHandler = _arg2; this.errorHandler = _arg3; } } class ResourceEventDispatcher extends EventDispatcher { private function ResourceEventDispatcher(_arg1:IModuleInfo){ _arg1.addEventListener(ModuleEvent.ERROR, moduleInfo_errorHandler, false, 0, true); _arg1.addEventListener(ModuleEvent.PROGRESS, moduleInfo_progressHandler, false, 0, true); _arg1.addEventListener(ModuleEvent.READY, moduleInfo_readyHandler, false, 0, true); } private function moduleInfo_readyHandler(_arg1:ModuleEvent):void{ var _local2:ResourceEvent; _local2 = new ResourceEvent(ResourceEvent.COMPLETE); dispatchEvent(_local2); } private function moduleInfo_errorHandler(_arg1:ModuleEvent):void{ var _local2:ResourceEvent; _local2 = new ResourceEvent(ResourceEvent.ERROR, _arg1.bubbles, _arg1.cancelable); _local2.bytesLoaded = _arg1.bytesLoaded; _local2.bytesTotal = _arg1.bytesTotal; _local2.errorText = _arg1.errorText; dispatchEvent(_local2); } private function moduleInfo_progressHandler(_arg1:ModuleEvent):void{ var _local2:ResourceEvent; _local2 = new ResourceEvent(ResourceEvent.PROGRESS, _arg1.bubbles, _arg1.cancelable); _local2.bytesLoaded = _arg1.bytesLoaded; _local2.bytesTotal = _arg1.bytesTotal; dispatchEvent(_local2); } }
Section 242
//Base64Decoder (mx.utils.Base64Decoder) package mx.utils { import flash.utils.*; import mx.resources.*; public class Base64Decoder { private var work:Array; private var filled:int;// = 0 private var data:ByteArray; private var count:int;// = 0 private var resourceManager:IResourceManager; private static const ESCAPE_CHAR_CODE:Number = 61; private static const inverse:Array = [64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 62, 64, 64, 64, 63, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 64, 64, 64, 64, 64, 64, 64, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 64, 64, 64, 64, 64, 64, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64]; public function Base64Decoder(){ count = 0; filled = 0; work = [0, 0, 0, 0]; resourceManager = ResourceManager.getInstance(); super(); data = new ByteArray(); } public function flush():ByteArray{ var _local1:String; if (count > 0){ _local1 = resourceManager.getString("utils", "partialBlockDropped", [count]); throw (new Error(_local1)); }; return (drain()); } public function decode(_arg1:String):void{ var _local2:uint; var _local3:Number; _local2 = 0; for (;_local2 < _arg1.length;_local2++) { _local3 = _arg1.charCodeAt(_local2); if (_local3 == ESCAPE_CHAR_CODE){ var _local4 = count++; work[_local4] = -1; } else { if (inverse[_local3] != 64){ _local4 = count++; work[_local4] = inverse[_local3]; } else { continue; }; }; if (count == 4){ count = 0; data.writeByte(((work[0] << 2) | ((work[1] & 0xFF) >> 4))); filled++; if (work[2] == -1){ break; }; data.writeByte(((work[1] << 4) | ((work[2] & 0xFF) >> 2))); filled++; if (work[3] == -1){ break; }; data.writeByte(((work[2] << 6) | work[3])); filled++; }; }; } public function reset():void{ data = new ByteArray(); count = 0; filled = 0; } public function drain():ByteArray{ var _local1:ByteArray; _local1 = new ByteArray(); copyByteArray(data, _local1, filled); filled = 0; return (_local1); } public function toByteArray():ByteArray{ var _local1:ByteArray; _local1 = flush(); reset(); return (_local1); } private static function copyByteArray(_arg1:ByteArray, _arg2:ByteArray, _arg3:uint=0):void{ var _local4:int; var _local5:uint; _local4 = _arg1.position; _arg1.position = 0; _arg2.position = 0; _local5 = 0; while ((((_arg1.bytesAvailable > 0)) && ((_local5 < _arg3)))) { _arg2.writeByte(_arg1.readByte()); _local5++; }; _arg1.position = _local4; _arg2.position = 0; } } }//package mx.utils
Section 243
//Base64Encoder (mx.utils.Base64Encoder) package mx.utils { import flash.utils.*; public class Base64Encoder { private var _line:uint; private var _count:uint; private var _buffers:Array; public var insertNewLines:Boolean;// = true private var _work:Array; public static const MAX_BUFFER_SIZE:uint = 32767; private static const ALPHABET_CHAR_CODES:Array = [65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 43, 47]; public static const CHARSET_UTF_8:String = "UTF-8"; private static const ESCAPE_CHAR_CODE:Number = 61; public static var newLine:int = 10; public function Base64Encoder(){ insertNewLines = true; _work = [0, 0, 0]; super(); reset(); } public function flush():String{ var _local1:String; if (_count > 0){ encodeBlock(); }; _local1 = drain(); reset(); return (_local1); } public function toString():String{ return (flush()); } public function reset():void{ _buffers = []; _buffers.push([]); _count = 0; _line = 0; _work[0] = 0; _work[1] = 0; _work[2] = 0; } public function encodeBytes(_arg1:ByteArray, _arg2:uint=0, _arg3:uint=0):void{ var _local4:uint; var _local5:uint; var _local6:uint; if (_arg3 == 0){ _arg3 = _arg1.length; }; _local4 = _arg1.position; _arg1.position = _arg2; _local5 = _arg2; _local6 = (_arg2 + _arg3); if (_local6 > _arg1.length){ _local6 = _arg1.length; }; while (_local5 < _local6) { _work[_count] = _arg1[_local5]; _count++; if ((((_count == _work.length)) || (((_local6 - _local5) == 1)))){ encodeBlock(); _count = 0; _work[0] = 0; _work[1] = 0; _work[2] = 0; }; _local5++; }; _arg1.position = _local4; } public function encode(_arg1:String, _arg2:uint=0, _arg3:uint=0):void{ var _local4:uint; var _local5:uint; if (_arg3 == 0){ _arg3 = _arg1.length; }; _local4 = _arg2; _local5 = (_arg2 + _arg3); if (_local5 > _arg1.length){ _local5 = _arg1.length; }; while (_local4 < _local5) { _work[_count] = _arg1.charCodeAt(_local4); _count++; if ((((_count == _work.length)) || (((_local5 - _local4) == 1)))){ encodeBlock(); _count = 0; _work[0] = 0; _work[1] = 0; _work[2] = 0; }; _local4++; }; } private function encodeBlock():void{ var _local1:Array; _local1 = (_buffers[(_buffers.length - 1)] as Array); if (_local1.length >= MAX_BUFFER_SIZE){ _local1 = []; _buffers.push(_local1); }; _local1.push(ALPHABET_CHAR_CODES[((_work[0] & 0xFF) >> 2)]); _local1.push(ALPHABET_CHAR_CODES[(((_work[0] & 3) << 4) | ((_work[1] & 240) >> 4))]); if (_count > 1){ _local1.push(ALPHABET_CHAR_CODES[(((_work[1] & 15) << 2) | ((_work[2] & 192) >> 6))]); } else { _local1.push(ESCAPE_CHAR_CODE); }; if (_count > 2){ _local1.push(ALPHABET_CHAR_CODES[(_work[2] & 63)]); } else { _local1.push(ESCAPE_CHAR_CODE); }; if (insertNewLines){ if ((_line = (_line + 4)) == 76){ _local1.push(newLine); _line = 0; }; }; } public function encodeUTFBytes(_arg1:String):void{ var _local2:ByteArray; _local2 = new ByteArray(); _local2.writeUTFBytes(_arg1); _local2.position = 0; encodeBytes(_local2); } public function drain():String{ var _local1:String; var _local2:uint; var _local3:Array; _local1 = ""; _local2 = 0; while (_local2 < _buffers.length) { _local3 = (_buffers[_local2] as Array); _local1 = (_local1 + String.fromCharCode.apply(null, _local3)); _local2++; }; _buffers = []; _buffers.push([]); return (_local1); } } }//package mx.utils
Section 244
//StringUtil (mx.utils.StringUtil) package mx.utils { public class StringUtil { mx_internal static const VERSION:String = "3.4.1.10084"; public static function trim(_arg1:String):String{ var _local2:int; var _local3:int; if (_arg1 == null){ return (""); }; _local2 = 0; while (isWhitespace(_arg1.charAt(_local2))) { _local2++; }; _local3 = (_arg1.length - 1); while (isWhitespace(_arg1.charAt(_local3))) { _local3--; }; if (_local3 >= _local2){ return (_arg1.slice(_local2, (_local3 + 1))); }; return (""); } public static function isWhitespace(_arg1:String):Boolean{ switch (_arg1){ case " ": case "\t": case "\r": case "\n": case "\f": return (true); default: return (false); }; } public static function substitute(_arg1:String, ... _args):String{ var _local3:uint; var _local4:Array; var _local5:int; if (_arg1 == null){ return (""); }; _local3 = _args.length; if ((((_local3 == 1)) && ((_args[0] is Array)))){ _local4 = (_args[0] as Array); _local3 = _local4.length; } else { _local4 = _args; }; _local5 = 0; while (_local5 < _local3) { _arg1 = _arg1.replace(new RegExp((("\\{" + _local5) + "\\}"), "g"), _local4[_local5]); _local5++; }; return (_arg1); } public static function trimArrayElements(_arg1:String, _arg2:String):String{ var _local3:Array; var _local4:int; var _local5:int; if (((!((_arg1 == ""))) && (!((_arg1 == null))))){ _local3 = _arg1.split(_arg2); _local4 = _local3.length; _local5 = 0; while (_local5 < _local4) { _local3[_local5] = StringUtil.trim(_local3[_local5]); _local5++; }; if (_local4 > 0){ _arg1 = _local3.join(_arg2); }; }; return (_arg1); } } }//package mx.utils
Section 245
//Encode (Playtomic.Encode) package Playtomic { import flash.utils.*; import flash.display.*; public class Encode { private static const BASE64_CHARS:String = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="; private static var crcTableComputed:Boolean = false; private static var hex_chr:String = "0123456789abcdef"; private static var crcTable:Array; private static function ff(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number):Number{ return (cmn(bitOR(bitAND(_arg2, _arg3), bitAND(~(_arg2), _arg4)), _arg1, _arg2, _arg5, _arg6, _arg7)); } private static function hh(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number):Number{ return (cmn(bitXOR(bitXOR(_arg2, _arg3), _arg4), _arg1, _arg2, _arg5, _arg6, _arg7)); } private static function cmn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number):Number{ return (addme(rol(addme(addme(_arg2, _arg1), addme(_arg4, _arg6)), _arg5), _arg3)); } private static function gg(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number):Number{ return (cmn(bitOR(bitAND(_arg2, _arg4), bitAND(_arg3, ~(_arg4))), _arg1, _arg2, _arg5, _arg6, _arg7)); } private static function bitAND(_arg1:Number, _arg2:Number):Number{ var _local3:Number; var _local4:Number; _local3 = ((_arg1 & 1) & (_arg2 & 1)); _local4 = ((_arg1 >>> 1) & (_arg2 >>> 1)); return (((_local4 << 1) | _local3)); } private static function writeChunk(_arg1:ByteArray, _arg2:uint, _arg3:ByteArray):void{ var _local4:uint; var _local5:uint; var _local6:uint; var _local7:int; var _local8:uint; var _local9:uint; var _local10:uint; if (!(crcTableComputed)){ crcTableComputed = true; crcTable = []; _local9 = 0; while (_local9 < 0x0100) { _local8 = _local9; _local10 = 0; while (_local10 < 8) { if ((_local8 & 1)){ _local8 = uint((uint(3988292384) ^ uint((_local8 >>> 1)))); } else { _local8 = uint((_local8 >>> 1)); }; _local10++; }; crcTable[_local9] = _local8; _local9++; }; }; _local4 = 0; if (_arg3 != null){ _local4 = _arg3.length; }; _arg1.writeUnsignedInt(_local4); _local5 = _arg1.position; _arg1.writeUnsignedInt(_arg2); if (_arg3 != null){ _arg1.writeBytes(_arg3); }; _local6 = _arg1.position; _arg1.position = _local5; _local8 = 4294967295; _local7 = 0; while (_local7 < (_local6 - _local5)) { _local8 = uint((crcTable[((_local8 ^ _arg1.readUnsignedByte()) & uint(0xFF))] ^ uint((_local8 >>> 8)))); _local7++; }; _local8 = uint((_local8 ^ uint(4294967295))); _arg1.position = _local6; _arg1.writeUnsignedInt(_local8); } public static function Base64(_arg1:ByteArray):String{ var _local2:String; var _local3:Array; var _local4:Array; var _local5:uint; var _local6:uint; var _local7:uint; _local2 = ""; _local4 = new Array(4); _arg1.position = 0; while (_arg1.bytesAvailable > 0) { _local3 = new Array(); _local5 = 0; while ((((_local5 < 3)) && ((_arg1.bytesAvailable > 0)))) { _local3[_local5] = _arg1.readUnsignedByte(); _local5++; }; _local4[0] = ((_local3[0] & 252) >> 2); _local4[1] = (((_local3[0] & 3) << 4) | (_local3[1] >> 4)); _local4[2] = (((_local3[1] & 15) << 2) | (_local3[2] >> 6)); _local4[3] = (_local3[2] & 63); _local6 = _local3.length; while (_local6 < 3) { _local4[(_local6 + 1)] = 64; _local6++; }; _local7 = 0; while (_local7 < _local4.length) { _local2 = (_local2 + BASE64_CHARS.charAt(_local4[_local7])); _local7++; }; }; return (_local2); } public static function PNG(_arg1:BitmapData):ByteArray{ var _local2:ByteArray; var _local3:ByteArray; var _local4:ByteArray; var _local5:uint; var _local6:int; var _local7:int; _local2 = new ByteArray(); _local2.writeUnsignedInt(2303741511); _local2.writeUnsignedInt(218765834); _local3 = new ByteArray(); _local3.writeInt(_arg1.width); _local3.writeInt(_arg1.height); _local3.writeUnsignedInt(134610944); _local3.writeByte(0); writeChunk(_local2, 1229472850, _local3); _local4 = new ByteArray(); _local7 = 0; while (_local7 < _arg1.height) { _local4.writeByte(0); if (!(_arg1.transparent)){ _local6 = 0; while (_local6 < _arg1.width) { _local5 = _arg1.getPixel(_local6, _local7); _local4.writeUnsignedInt(uint((((_local5 & 0xFFFFFF) << 8) | 0xFF))); _local6++; }; } else { _local6 = 0; while (_local6 < _arg1.width) { _local5 = _arg1.getPixel32(_local6, _local7); _local4.writeUnsignedInt(uint((((_local5 & 0xFFFFFF) << 8) | (_local5 >>> 24)))); _local6++; }; }; _local7++; }; _local4.compress(); writeChunk(_local2, 1229209940, _local4); writeChunk(_local2, 1229278788, null); return (_local2); } private static function ii(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number):Number{ return (cmn(bitXOR(_arg3, bitOR(_arg2, ~(_arg4))), _arg1, _arg2, _arg5, _arg6, _arg7)); } private static function rol(_arg1:Number, _arg2:Number):Number{ return (((_arg1 << _arg2) | (_arg1 >>> (32 - _arg2)))); } private static function bitOR(_arg1:Number, _arg2:Number):Number{ var _local3:Number; var _local4:Number; _local3 = ((_arg1 & 1) | (_arg2 & 1)); _local4 = ((_arg1 >>> 1) | (_arg2 >>> 1)); return (((_local4 << 1) | _local3)); } private static function rhex(_arg1:Number):String{ var _local2:String; var _local3:int; _local2 = ""; _local3 = 0; while (_local3 <= 3) { _local2 = (_local2 + (hex_chr.charAt(((_arg1 >> ((_local3 * 8) + 4)) & 15)) + hex_chr.charAt(((_arg1 >> (_local3 * 8)) & 15)))); _local3++; }; return (_local2); } private static function addme(_arg1:Number, _arg2:Number):Number{ var _local3:Number; var _local4:Number; _local3 = ((_arg1 & 0xFFFF) + (_arg2 & 0xFFFF)); _local4 = (((_arg1 >> 16) + (_arg2 >> 16)) + (_local3 >> 16)); return (((_local4 << 16) | (_local3 & 0xFFFF))); } private static function bitXOR(_arg1:Number, _arg2:Number):Number{ var _local3:Number; var _local4:Number; _local3 = ((_arg1 & 1) ^ (_arg2 & 1)); _local4 = ((_arg1 >>> 1) ^ (_arg2 >>> 1)); return (((_local4 << 1) | _local3)); } public static function MD5(_arg1:String):String{ var _local2:Array; var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:int; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; _local2 = str2blks_MD5(_arg1); _local3 = 1732584193; _local4 = -271733879; _local5 = -1732584194; _local6 = 271733878; _local7 = 0; while (_local7 < _local2.length) { _local8 = _local3; _local9 = _local4; _local10 = _local5; _local11 = _local6; _local3 = ff(_local3, _local4, _local5, _local6, _local2[(_local7 + 0)], 7, -680876936); _local6 = ff(_local6, _local3, _local4, _local5, _local2[(_local7 + 1)], 12, -389564586); _local5 = ff(_local5, _local6, _local3, _local4, _local2[(_local7 + 2)], 17, 606105819); _local4 = ff(_local4, _local5, _local6, _local3, _local2[(_local7 + 3)], 22, -1044525330); _local3 = ff(_local3, _local4, _local5, _local6, _local2[(_local7 + 4)], 7, -176418897); _local6 = ff(_local6, _local3, _local4, _local5, _local2[(_local7 + 5)], 12, 1200080426); _local5 = ff(_local5, _local6, _local3, _local4, _local2[(_local7 + 6)], 17, -1473231341); _local4 = ff(_local4, _local5, _local6, _local3, _local2[(_local7 + 7)], 22, -45705983); _local3 = ff(_local3, _local4, _local5, _local6, _local2[(_local7 + 8)], 7, 1770035416); _local6 = ff(_local6, _local3, _local4, _local5, _local2[(_local7 + 9)], 12, -1958414417); _local5 = ff(_local5, _local6, _local3, _local4, _local2[(_local7 + 10)], 17, -42063); _local4 = ff(_local4, _local5, _local6, _local3, _local2[(_local7 + 11)], 22, -1990404162); _local3 = ff(_local3, _local4, _local5, _local6, _local2[(_local7 + 12)], 7, 1804603682); _local6 = ff(_local6, _local3, _local4, _local5, _local2[(_local7 + 13)], 12, -40341101); _local5 = ff(_local5, _local6, _local3, _local4, _local2[(_local7 + 14)], 17, -1502002290); _local4 = ff(_local4, _local5, _local6, _local3, _local2[(_local7 + 15)], 22, 1236535329); _local3 = gg(_local3, _local4, _local5, _local6, _local2[(_local7 + 1)], 5, -165796510); _local6 = gg(_local6, _local3, _local4, _local5, _local2[(_local7 + 6)], 9, -1069501632); _local5 = gg(_local5, _local6, _local3, _local4, _local2[(_local7 + 11)], 14, 643717713); _local4 = gg(_local4, _local5, _local6, _local3, _local2[(_local7 + 0)], 20, -373897302); _local3 = gg(_local3, _local4, _local5, _local6, _local2[(_local7 + 5)], 5, -701558691); _local6 = gg(_local6, _local3, _local4, _local5, _local2[(_local7 + 10)], 9, 38016083); _local5 = gg(_local5, _local6, _local3, _local4, _local2[(_local7 + 15)], 14, -660478335); _local4 = gg(_local4, _local5, _local6, _local3, _local2[(_local7 + 4)], 20, -405537848); _local3 = gg(_local3, _local4, _local5, _local6, _local2[(_local7 + 9)], 5, 568446438); _local6 = gg(_local6, _local3, _local4, _local5, _local2[(_local7 + 14)], 9, -1019803690); _local5 = gg(_local5, _local6, _local3, _local4, _local2[(_local7 + 3)], 14, -187363961); _local4 = gg(_local4, _local5, _local6, _local3, _local2[(_local7 + 8)], 20, 1163531501); _local3 = gg(_local3, _local4, _local5, _local6, _local2[(_local7 + 13)], 5, -1444681467); _local6 = gg(_local6, _local3, _local4, _local5, _local2[(_local7 + 2)], 9, -51403784); _local5 = gg(_local5, _local6, _local3, _local4, _local2[(_local7 + 7)], 14, 1735328473); _local4 = gg(_local4, _local5, _local6, _local3, _local2[(_local7 + 12)], 20, -1926607734); _local3 = hh(_local3, _local4, _local5, _local6, _local2[(_local7 + 5)], 4, -378558); _local6 = hh(_local6, _local3, _local4, _local5, _local2[(_local7 + 8)], 11, -2022574463); _local5 = hh(_local5, _local6, _local3, _local4, _local2[(_local7 + 11)], 16, 1839030562); _local4 = hh(_local4, _local5, _local6, _local3, _local2[(_local7 + 14)], 23, -35309556); _local3 = hh(_local3, _local4, _local5, _local6, _local2[(_local7 + 1)], 4, -1530992060); _local6 = hh(_local6, _local3, _local4, _local5, _local2[(_local7 + 4)], 11, 1272893353); _local5 = hh(_local5, _local6, _local3, _local4, _local2[(_local7 + 7)], 16, -155497632); _local4 = hh(_local4, _local5, _local6, _local3, _local2[(_local7 + 10)], 23, -1094730640); _local3 = hh(_local3, _local4, _local5, _local6, _local2[(_local7 + 13)], 4, 681279174); _local6 = hh(_local6, _local3, _local4, _local5, _local2[(_local7 + 0)], 11, -358537222); _local5 = hh(_local5, _local6, _local3, _local4, _local2[(_local7 + 3)], 16, -722521979); _local4 = hh(_local4, _local5, _local6, _local3, _local2[(_local7 + 6)], 23, 76029189); _local3 = hh(_local3, _local4, _local5, _local6, _local2[(_local7 + 9)], 4, -640364487); _local6 = hh(_local6, _local3, _local4, _local5, _local2[(_local7 + 12)], 11, -421815835); _local5 = hh(_local5, _local6, _local3, _local4, _local2[(_local7 + 15)], 16, 530742520); _local4 = hh(_local4, _local5, _local6, _local3, _local2[(_local7 + 2)], 23, -995338651); _local3 = ii(_local3, _local4, _local5, _local6, _local2[(_local7 + 0)], 6, -198630844); _local6 = ii(_local6, _local3, _local4, _local5, _local2[(_local7 + 7)], 10, 1126891415); _local5 = ii(_local5, _local6, _local3, _local4, _local2[(_local7 + 14)], 15, -1416354905); _local4 = ii(_local4, _local5, _local6, _local3, _local2[(_local7 + 5)], 21, -57434055); _local3 = ii(_local3, _local4, _local5, _local6, _local2[(_local7 + 12)], 6, 1700485571); _local6 = ii(_local6, _local3, _local4, _local5, _local2[(_local7 + 3)], 10, -1894986606); _local5 = ii(_local5, _local6, _local3, _local4, _local2[(_local7 + 10)], 15, -1051523); _local4 = ii(_local4, _local5, _local6, _local3, _local2[(_local7 + 1)], 21, -2054922799); _local3 = ii(_local3, _local4, _local5, _local6, _local2[(_local7 + 8)], 6, 1873313359); _local6 = ii(_local6, _local3, _local4, _local5, _local2[(_local7 + 15)], 10, -30611744); _local5 = ii(_local5, _local6, _local3, _local4, _local2[(_local7 + 6)], 15, -1560198380); _local4 = ii(_local4, _local5, _local6, _local3, _local2[(_local7 + 13)], 21, 1309151649); _local3 = ii(_local3, _local4, _local5, _local6, _local2[(_local7 + 4)], 6, -145523070); _local6 = ii(_local6, _local3, _local4, _local5, _local2[(_local7 + 11)], 10, -1120210379); _local5 = ii(_local5, _local6, _local3, _local4, _local2[(_local7 + 2)], 15, 718787259); _local4 = ii(_local4, _local5, _local6, _local3, _local2[(_local7 + 9)], 21, -343485551); _local3 = addme(_local3, _local8); _local4 = addme(_local4, _local9); _local5 = addme(_local5, _local10); _local6 = addme(_local6, _local11); _local7 = (_local7 + 16); }; return ((((rhex(_local3) + rhex(_local4)) + rhex(_local5)) + rhex(_local6))); } private static function str2blks_MD5(_arg1:String):Array{ var _local2:Number; var _local3:Array; var _local4:int; var _local5:int; _local2 = (((_arg1.length + 8) >> 6) + 1); _local3 = new Array((_local2 * 16)); _local4 = 0; while (_local4 < (_local2 * 16)) { _local3[_local4] = 0; _local4++; }; _local4 = 0; while (_local4 < _arg1.length) { _local3[(_local4 >> 2)] = (_local3[(_local4 >> 2)] | (_arg1.charCodeAt(_local4) << ((((_arg1.length * 8) + _local4) % 4) * 8))); _local4++; }; _local3[(_local4 >> 2)] = (_local3[(_local4 >> 2)] | (128 << ((((_arg1.length * 8) + _local4) % 4) * 8))); _local5 = (_arg1.length * 8); _local3[((_local2 * 16) - 2)] = (_local5 & 0xFF); _local3[((_local2 * 16) - 2)] = (_local3[((_local2 * 16) - 2)] | (((_local5 >>> 8) & 0xFF) << 8)); _local3[((_local2 * 16) - 2)] = (_local3[((_local2 * 16) - 2)] | (((_local5 >>> 16) & 0xFF) << 16)); _local3[((_local2 * 16) - 2)] = (_local3[((_local2 * 16) - 2)] | (((_local5 >>> 24) & 0xFF) << 24)); return (_local3); } } }//package Playtomic
Section 246
//Leaderboards (Playtomic.Leaderboards) package Playtomic { import flash.net.*; import flash.events.*; public class Leaderboards { private static function ProcessScores(_arg1:URLLoader, _arg2:Function):void{ var _local3:XML; var _local4:int; var _local5:int; var _local6:int; var _local7:Array; var _local8:XMLList; var _local9:String; var _local10:int; var _local11:int; var _local12:int; var _local13:XML; var _local14:PlayerScore; var _local15:XMLList; var _local16:XML; _local3 = XML(_arg1["data"]); _local4 = parseInt(_local3["status"]); _local5 = parseInt(_local3["errorcode"]); _local6 = parseInt(_local3["numscores"]); _local7 = new Array(); if (_local4 == 1){ _local8 = _local3["score"]; for each (_local13 in _local8) { _local9 = _local13["sdate"]; _local10 = int(_local9.substring((_local9.lastIndexOf("/") + 1))); _local11 = int(_local9.substring(0, _local9.indexOf("/"))); _local12 = int(_local9.substring((_local9.indexOf("/") + 1)).substring(0, 2)); _local14 = new PlayerScore(); _local14.SDate = new Date(_local10, (_local11 - 1), _local12); _local14.RDate = _local13["rdate"]; _local14.Name = _local13["name"]; _local14.Points = _local13["points"]; _local14.Website = _local13["website"]; if (_local13["custom"]){ _local15 = _local13["custom"]; for each (_local16 in _local15.children()) { _local14.CustomData[_local16.name()] = _local16.text(); }; }; _local7.push(_local14); }; }; _arg2(_local7, _local6, {Success:(_local4 == 1), ErrorCode:_local5}); } public static function ListFB(_arg1:String, _arg2:Function, _arg3:Object=null):void{ var global:Boolean; var highest:Boolean; var friendslist:Array; var mode:String; var customfilters:Object; var page:int; var perpage:int; var sendaction:URLLoader; var handled:Boolean; var fail:Function; var httpstatusignore:Function; var postdata:URLVariables; var numcustomfilters:int; var request:URLRequest; var bridge:Function; var key:String; var table = _arg1; var callback = _arg2; var options = _arg3; if (options == null){ options = new Object(); }; global = (options.hasOwnProperty("global")) ? options["global"] : true; highest = (options.hasOwnProperty("highest")) ? options["highest"] : true; friendslist = (options.hasOwnProperty("friendslist")) ? options["friendslist"] : new Array(); mode = (options.hasOwnProperty("mode")) ? options["mode"] : "alltime"; customfilters = (options.hasOwnProperty("customfilters")) ? options["customfilters"] : {}; page = (options.hasOwnProperty("page")) ? options["page"] : 1; perpage = (options.hasOwnProperty("perpage")) ? options["perpage"] : 20; sendaction = new URLLoader(); handled = false; if (callback != null){ bridge = function ():void{ if ((((callback == null)) || (handled))){ return; }; handled = true; ProcessScores(sendaction, callback); }; sendaction.addEventListener(Event.COMPLETE, bridge); }; fail = function ():void{ if ((((callback == null)) || (handled))){ return; }; handled = true; callback([], 0, {Success:false, ErrorCode:1}); }; httpstatusignore = function ():void{ }; postdata = new URLVariables(); postdata["friendslist"] = friendslist.join(","); numcustomfilters = 0; if (customfilters != null){ for (key in customfilters) { postdata[("ckey" + numcustomfilters)] = key; postdata[("cdata" + numcustomfilters)] = escape(customfilters[key]); numcustomfilters = (numcustomfilters + 1); }; }; request = new URLRequest(((((((((((((((((((("http://g" + Log.GUID) + ".api.playtomic.com/leaderboards/listfb.aspx?swfid=") + Log.SWFID) + "&table=") + table) + "&mode=") + mode) + "&filters=") + numcustomfilters) + "&url=") + (((global) || ((Log.SourceUrl == null)))) ? "global" : Log.SourceUrl) + "&highest=") + (highest) ? "y" : "n") + "&page=") + page) + "&perpage=") + perpage) + "&") + Math.random())); request.data = postdata; request.method = URLRequestMethod.POST; sendaction.addEventListener(IOErrorEvent.IO_ERROR, fail, false, 0, true); sendaction.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpstatusignore, false, 0, true); sendaction.addEventListener(SecurityErrorEvent.SECURITY_ERROR, fail, false, 0, true); sendaction.load(request); } public static function Save(_arg1:PlayerScore, _arg2:String, _arg3:Function=null, _arg4:Object=null):void{ var facebook:Boolean; var allowduplicates:Boolean; var highest:Boolean; var sendaction:URLLoader; var handled:Boolean; var fail:Function; var httpstatusignore:Function; var s:String; var postdata:URLVariables; var customfields:int; var request:URLRequest; var bridge:Function; var key:String; var score = _arg1; var table = _arg2; var callback = _arg3; var options = _arg4; if (options == null){ options = new Object(); }; facebook = (options.hasOwnProperty("facebook")) ? options["facebook"] : false; allowduplicates = (options.hasOwnProperty("allowduplicates")) ? options["allowduplicates"] : false; highest = (options.hasOwnProperty("highest")) ? options["highest"] : true; sendaction = new URLLoader(); handled = false; if (callback != null){ bridge = function ():void{ var _local1:XML; var _local2:int; if ((((callback == null)) || (handled))){ return; }; handled = true; _local1 = XML(sendaction["data"]); _local2 = parseInt(_local1["status"]); if (_local2 == 1){ score.SDate = new Date(); score.RDate = "Just now"; }; callback(score, {Success:(_local2 == 1), ErrorCode:parseInt(_local1["errorcode"])}); }; sendaction.addEventListener(Event.COMPLETE, bridge); }; fail = function ():void{ if ((((callback == null)) || (handled))){ return; }; handled = true; callback(score, {Success:false, ErrorCode:1}); }; httpstatusignore = function ():void{ }; s = score.Points.toString(); if (s.indexOf(".") > -1){ s = s.substring(0, s.indexOf(".")); }; postdata = new URLVariables(); postdata["table"] = escape(table); postdata["highest"] = highest; postdata["name"] = escape(score.Name); postdata["points"] = s; postdata["allowduplicates"] = (allowduplicates) ? "y" : "n"; postdata["auth"] = Encode.MD5((Log.SourceUrl + s)); postdata["fb"] = (facebook) ? "y" : "n"; postdata["fbuserid"] = score.FBUserId; customfields = 0; if (score.CustomData != null){ for (key in score.CustomData) { postdata[("ckey" + customfields)] = key; postdata[("cdata" + customfields)] = escape(score.CustomData[key]); customfields = (customfields + 1); }; }; postdata["customfields"] = customfields; request = new URLRequest(((((((("http://g" + Log.GUID) + ".api.playtomic.com/leaderboards/save.aspx?swfid=") + Log.SWFID) + "&url=") + Log.SourceUrl) + "&r=") + Math.random())); request.data = postdata; request.method = URLRequestMethod.POST; sendaction.addEventListener(IOErrorEvent.IO_ERROR, fail, false, 0, true); sendaction.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpstatusignore, false, 0, true); sendaction.addEventListener(SecurityErrorEvent.SECURITY_ERROR, fail, false, 0, true); sendaction.load(request); } public static function List(_arg1:String, _arg2:Function, _arg3:Object=null):void{ var global:Boolean; var highest:Boolean; var mode:String; var customfilters:Object; var page:int; var perpage:int; var sendaction:URLLoader; var handled:Boolean; var fail:Function; var httpstatusignore:Function; var postdata:URLVariables; var numcustomfilters:int; var request:URLRequest; var bridge:Function; var key:String; var table = _arg1; var callback = _arg2; var options = _arg3; if (options == null){ options = new Object(); }; global = (options.hasOwnProperty("global")) ? options["global"] : true; highest = (options.hasOwnProperty("highest")) ? options["highest"] : true; mode = (options.hasOwnProperty("mode")) ? options["mode"] : "alltime"; customfilters = (options.hasOwnProperty("customfilters")) ? options["customfilters"] : {}; trace(("Custom filters are " + customfilters)); page = (options.hasOwnProperty("page")) ? options["page"] : 1; perpage = (options.hasOwnProperty("perpage")) ? options["perpage"] : 20; sendaction = new URLLoader(); handled = false; if (callback != null){ bridge = function ():void{ if ((((callback == null)) || (handled))){ return; }; handled = true; ProcessScores(sendaction, callback); }; sendaction.addEventListener(Event.COMPLETE, bridge); }; fail = function ():void{ if ((((callback == null)) || (handled))){ return; }; handled = true; callback([], 0, {Success:false, ErrorCode:1}); }; httpstatusignore = function ():void{ }; postdata = new URLVariables(); numcustomfilters = 0; if (customfilters != null){ for (key in customfilters) { postdata[("ckey" + numcustomfilters)] = key; postdata[("cdata" + numcustomfilters)] = escape(customfilters[key]); numcustomfilters = (numcustomfilters + 1); }; }; request = new URLRequest(((((((((((((((((((("http://g" + Log.GUID) + ".api.playtomic.com/leaderboards/list.aspx?swfid=") + Log.SWFID) + "&table=") + table) + "&mode=") + mode) + "&filters=") + numcustomfilters) + "&url=") + (((global) || ((Log.SourceUrl == null)))) ? "global" : Log.SourceUrl) + "&highest=") + (highest) ? "y" : "n") + "&page=") + page) + "&perpage=") + perpage) + "&") + Math.random())); request.data = postdata; request.method = URLRequestMethod.POST; sendaction.addEventListener(IOErrorEvent.IO_ERROR, fail, false, 0, true); sendaction.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpstatusignore, false, 0, true); sendaction.addEventListener(SecurityErrorEvent.SECURITY_ERROR, fail, false, 0, true); sendaction.load(request); } } }//package Playtomic
Section 247
//Log (Playtomic.Log) package Playtomic { import flash.utils.*; import flash.system.*; import flash.net.*; import flash.events.*; import flash.external.*; public final class Log { private static const PingR:Timer = new Timer(30000); private static const PingF:Timer = new Timer(60000); private static var LevelAverages:Array = new Array(); private static var Customs:Array = new Array(); public static var Cookie:SharedObject; public static var GUID:String = ""; private static var LevelRangeds:Array = new Array(); private static var Plays:int = 0; public static var Enabled:Boolean = false; private static var Pings:int = 0; private static var FrozenQueue:Array = new Array(); public static var SourceUrl:String; private static var HighestGoal:int = 0; private static var FirstPing:Boolean = true; private static var Frozen:Boolean = false; public static var BaseUrl:String; public static var Request:LogRequest; public static var Queue:Boolean = true; private static var LevelCounters:Array = new Array(); public static var SWFID:int = 0; public static function Link(_arg1:String, _arg2:String, _arg3:String, _arg4:int, _arg5:int, _arg6:int):void{ if (!(Enabled)){ return; }; Send(((((((((((("l/" + Clean(_arg2)) + "/") + Clean(_arg3)) + "/") + Clean(_arg1)) + "/") + _arg4) + "/") + _arg5) + "/") + _arg6)); } public static function LevelAverageMetric(_arg1:String, _arg2, _arg3:int, _arg4:Boolean=false):void{ if (!(Enabled)){ return; }; if (_arg4){ if (LevelAverages.indexOf(_arg1) > -1){ return; }; LevelAverages.push(_arg1); }; Send(((((("la/" + Clean(_arg1)) + "/") + Clean(_arg2)) + "/") + _arg3)); } private static function Send(_arg1:String, _arg2:Boolean=false):void{ if (Frozen){ FrozenQueue.push(_arg1); return; }; Request.Queue(_arg1); if (((((Request.Ready) || (_arg2))) || (!(Queue)))){ Request.Send(); Request = LogRequest.Create(); }; } public static function CustomMetric(_arg1:String, _arg2:String=null, _arg3:Boolean=false):void{ if (!(Enabled)){ return; }; if (_arg2 == null){ _arg2 = ""; }; if (_arg3){ if (Customs.indexOf(_arg1) > -1){ return; }; Customs.push(_arg1); }; Send(((("c/" + Clean(_arg1)) + "/") + Clean(_arg2))); } private static function Clean(_arg1:String):String{ while (_arg1.indexOf("/") > -1) { _arg1 = _arg1.replace("/", "\\"); }; while (_arg1.indexOf("~") > -1) { _arg1 = _arg1.replace("~", "-"); }; return (escape(_arg1)); } public static function UnFreeze():void{ Frozen = false; Request.MassQueue(FrozenQueue); } private static function GetCookie(_arg1:String):int{ if (Cookie.data[_arg1] == undefined){ return (0); }; return (int(Cookie.data[_arg1])); } public static function View(_arg1:int=0, _arg2:String="", _arg3:String=""):void{ var _local4:int; if (SWFID > 0){ return; }; SWFID = _arg1; GUID = _arg2; Enabled = true; if ((((SWFID == 0)) || ((GUID == "")))){ Enabled = false; return; }; if (((((!((_arg3.indexOf("http://") == 0))) && (!((Security.sandboxType == "localWithNetwork"))))) && (!((Security.sandboxType == "localTrusted"))))){ Enabled = false; return; }; SourceUrl = GetUrl(_arg3); if ((((((SourceUrl == null)) || ((SourceUrl == "")))) || ((SourceUrl.indexOf("https://") == 0)))){ Enabled = false; return; }; Security.allowDomain((("http://g" + Log.GUID) + ".api.playtomic.com/")); Security.allowInsecureDomain((("http://g" + Log.GUID) + ".api.playtomic.com/")); Security.loadPolicyFile((("http://g" + Log.GUID) + ".api.playtomic.com/crossdomain.xml")); Request = LogRequest.Create(); Cookie = SharedObject.getLocal("playtomic"); _local4 = GetCookie("views"); _local4++; SaveCookie("views", _local4); Send(("v/" + _local4), true); PingF.addEventListener(TimerEvent.TIMER, PingServer); PingF.start(); } public static function Freeze():void{ Frozen = true; } public static function LevelCounterMetric(_arg1:String, _arg2, _arg3:Boolean=false):void{ if (!(Enabled)){ return; }; if (_arg3){ if (LevelCounters.indexOf(_arg1) > -1){ return; }; LevelCounters.push(_arg1); }; Send(((("lc/" + Clean(_arg1)) + "/") + Clean(_arg2))); } public static function Play():void{ if (!(Enabled)){ return; }; LevelCounters = new Array(); LevelAverages = new Array(); LevelRangeds = new Array(); Plays++; Send(("p/" + Plays)); } private static function GetUrl(_arg1:String):String{ var url:String; var defaulturl = _arg1; if (ExternalInterface.available){ try { url = String(ExternalInterface.call("window.location.href.toString")); } catch(s:Error) { url = defaulturl; }; } else { if ((((defaulturl.indexOf("http://") == 0)) || ((defaulturl.indexOf("https://") == 0)))){ url = defaulturl; }; }; if ((((((url == null)) || ((url == "")))) || ((url == "null")))){ if ((((Security.sandboxType == "localWithNetwork")) || ((Security.sandboxType == "localTrusted")))){ url = "http://local-testing/"; } else { url = null; }; }; return (escape(url)); } public static function LevelRangedMetric(_arg1:String, _arg2, _arg3:int, _arg4:Boolean=false):void{ if (!(Enabled)){ return; }; if (_arg4){ if (LevelRangeds.indexOf(_arg1) > -1){ return; }; LevelRangeds.push(_arg1); }; Send(((((("lr/" + Clean(_arg1)) + "/") + Clean(_arg2)) + "/") + _arg3)); } private static function SaveCookie(_arg1:String, _arg2:int):void{ var _local3:SharedObject; _local3 = SharedObject.getLocal("swfstats"); _local3.data[_arg1] = _arg2.toString(); _local3.flush(); } public static function ForceSend():void{ if (!(Enabled)){ return; }; Request.Send(); Request = LogRequest.Create(); if (FrozenQueue.length > 0){ Request.MassQueue(FrozenQueue); }; } private static function PingServer(... _args):void{ if (!(Enabled)){ return; }; Pings++; Send(((("t/" + (FirstPing) ? "y" : "n") + "/") + Pings), true); if (FirstPing){ PingF.stop(); PingR.addEventListener(TimerEvent.TIMER, PingServer); PingR.start(); FirstPing = false; }; } } }//package Playtomic
Section 248
//LogRequest (Playtomic.LogRequest) package Playtomic { import flash.net.*; import flash.events.*; public final class LogRequest { public var Ready:Boolean;// = false private var Data:String;// = "" private var Target:URLRequest; private var Sender:URLLoader; private var BaseUrl:String; private static var Pool:Array = new Array(); private static var Failed:int = 0; public function LogRequest(){ Data = ""; Ready = false; super(); this.Sender = new URLLoader(); this.Sender.addEventListener(Event.COMPLETE, this.Dispose, false, 0, true); this.Sender.addEventListener(IOErrorEvent.IO_ERROR, this.IOErrorHandler, false, 0, true); this.Sender.addEventListener(HTTPStatusEvent.HTTP_STATUS, this.StatusChange, false, 0, true); this.Sender.addEventListener(SecurityErrorEvent.SECURITY_ERROR, this.SecurityErrorHandler, false, 0, true); this.Target = new URLRequest(); this.BaseUrl = ((("http://g" + Log.GUID) + ".api.playtomic.com/tracker/q.aspx?swfid=") + Log.SWFID); } public function Send():void{ this.Target.url = (((((((this.BaseUrl + "&q=") + this.Data) + "&url=") + Log.SourceUrl) + "&") + Math.random()) + "z"); this.Sender.load(this.Target); } private function SecurityErrorHandler(_arg1:SecurityErrorEvent):void{ } private function IOErrorHandler(_arg1:IOErrorEvent):void{ Failed++; } public function Queue(_arg1:String):void{ if (Failed > 3){ return; }; this.Data = (this.Data + (((this.Data == "")) ? "" : "~" + _arg1)); if (this.Data.length > 300){ this.Ready = true; }; } private function StatusChange(_arg1:HTTPStatusEvent):void{ } public function MassQueue(_arg1:Array):void{ var _local2:int; var _local3:LogRequest; if (Failed > 3){ return; }; _local2 = (_arg1.length - 1); while (_local2 > -1) { this.Data = (this.Data + (((this.Data == "")) ? "" : "~" + _arg1[_local2])); _arg1.splice(_local2, 1); if (this.Data.length > 300){ _local3 = Create(); _local3.MassQueue(_arg1); this.Ready = true; this.Send(); return; }; _local2--; }; Log.Request = this; } public function Dispose(_arg1:Event=null):void{ Pool.push(this); } public static function Create():LogRequest{ var _local1:LogRequest; _local1 = ((Pool.length > 0)) ? (Pool.pop() as LogRequest) : new (LogRequest); _local1.Data = ""; _local1.Ready = false; return (_local1); } } }//package Playtomic
Section 249
//PlayerLevel (Playtomic.PlayerLevel) package Playtomic { public final class PlayerLevel { public var PlayerId:int;// = 0 public var Data:String; public var CustomData:Object; public var LevelId:String; public var RDate:String; public var SDate:Date; public var Plays:int; public var Votes:int; public var Name:String; public var PlayerName:String;// = "" public var Score:int; public var PlayerSource:String;// = "" public var Rating:Number; public function PlayerLevel(){ PlayerSource = ""; PlayerId = 0; PlayerName = ""; CustomData = {}; super(); this.SDate = new Date(); this.RDate = "Just now"; } public function Thumbnail():String{ return (((((("http://g" + Log.GUID) + ".api.playtomic.com/playerlevels/thumb.aspx?swfid=") + Log.SWFID) + "&levelid=") + this.LevelId)); } } }//package Playtomic
Section 250
//PlayerLevels (Playtomic.PlayerLevels) package Playtomic { import flash.net.*; import flash.events.*; import flash.geom.*; import flash.display.*; public final class PlayerLevels { public static function Rate(_arg1:String, _arg2:int, _arg3:Function=null):void{ var cookie:SharedObject; var sendaction:URLLoader; var handled:Boolean; var fail:Function; var httpstatusignore:Function; var bridge:Function; var levelid = _arg1; var rating = _arg2; var callback = _arg3; cookie = SharedObject.getLocal("ratings"); if (cookie.data[levelid] != null){ if (callback != null){ callback({Success:false, ErrorCode:402}); }; return; }; if ((((rating < 0)) || ((rating > 10)))){ if (callback != null){ callback({Success:false, ErrorCode:401}); }; return; }; sendaction = new URLLoader(); handled = false; if (callback != null){ bridge = function ():void{ var _local1:XML; var _local2:int; var _local3:int; var _local4:SharedObject; if ((((callback == null)) || (handled))){ return; }; handled = true; _local1 = XML(sendaction["data"]); _local2 = parseInt(_local1["status"]); _local3 = parseInt(_local1["errorcode"]); if (_local2 == 1){ _local4 = SharedObject.getLocal("ratings"); _local4.data[levelid] = rating; _local4.flush(); }; callback({Success:(_local2 == 1), ErrorCode:_local3}); }; sendaction.addEventListener(Event.COMPLETE, bridge, false, 0, true); }; fail = function ():void{ if ((((callback == null)) || (handled))){ return; }; handled = true; callback([], {Success:false, ErrorCode:1}); }; httpstatusignore = function ():void{ }; sendaction.addEventListener(IOErrorEvent.IO_ERROR, fail, false, 0, true); sendaction.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpstatusignore, false, 0, true); sendaction.addEventListener(SecurityErrorEvent.SECURITY_ERROR, fail, false, 0, true); sendaction.load(new URLRequest(((((((((("http://g" + Log.GUID) + ".api.playtomic.com/playerlevels/rate.aspx?swfid=") + Log.SWFID) + "&levelid=") + levelid) + "&rating=") + rating) + "&") + Math.random()))); } public static function Save(_arg1:PlayerLevel, _arg2:DisplayObject=null, _arg3:Function=null):void{ var postdata:URLVariables; var customfields:int; var sendaction:URLLoader; var handled:Boolean; var fail:Function; var httpstatusignore:Function; var request:URLRequest; var scale:Number; var w:int; var h:int; var scaler:Matrix; var image:BitmapData; var key:String; var bridge:Function; var level = _arg1; var thumb = _arg2; var callback = _arg3; postdata = new URLVariables(); postdata.data = level.Data; postdata.playerid = level.PlayerId; postdata.playersource = level.PlayerSource; postdata.playername = level.PlayerName; postdata.name = escape(level.Name); if (thumb != null){ scale = 1; w = thumb.width; h = thumb.height; if ((((thumb.width > 100)) || ((thumb.height > 100)))){ if (thumb.width >= thumb.height){ scale = (100 / thumb.width); w = 100; h = Math.ceil((scale * thumb.height)); } else { if (thumb.height > thumb.width){ scale = (100 / thumb.height); w = Math.ceil((scale * thumb.width)); h = 100; }; }; }; scaler = new Matrix(); scaler.scale(scale, scale); image = new BitmapData(w, h, true, 0); image.draw(thumb, scaler, null, null, null, true); postdata.image = Encode.Base64(Encode.PNG(image)); postdata.arrp = RandomSample(image); postdata.hash = Encode.MD5((postdata.image + postdata.arrp)); } else { postdata.nothumb = "y"; }; customfields = 0; if (level.CustomData != null){ for (key in level.CustomData) { postdata[("ckey" + customfields)] = key; postdata[("cdata" + customfields)] = escape(level.CustomData[key]); customfields = (customfields + 1); }; }; postdata["customfields"] = customfields; sendaction = new URLLoader(); handled = false; if (callback != null){ bridge = function ():void{ var _local1:XML; var _local2:int; var _local3:int; if ((((callback == null)) || (handled))){ return; }; handled = true; _local1 = XML(sendaction["data"]); _local2 = parseInt(_local1["status"]); _local3 = parseInt(_local1["errorcode"]); if (_local2 == 1){ level.LevelId = _local1["levelid"]; level.SDate = new Date(); level.RDate = "Just now"; }; callback(level, {Success:(_local2 == 1), ErrorCode:_local3}); }; sendaction.addEventListener(Event.COMPLETE, bridge, false, 0, true); }; fail = function ():void{ if ((((callback == null)) || (handled))){ return; }; handled = true; callback(level, {Success:false, ErrorCode:1}); }; httpstatusignore = function ():void{ }; request = new URLRequest(((("http://g" + Log.GUID) + ".api.playtomic.com/playerlevels/save.aspx?swfid=") + Log.SWFID)); request.data = postdata; request.method = URLRequestMethod.POST; sendaction.dataFormat = URLLoaderDataFormat.TEXT; sendaction.addEventListener(IOErrorEvent.IO_ERROR, fail, false, 0, true); sendaction.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpstatusignore, false, 0, true); sendaction.addEventListener(SecurityErrorEvent.SECURITY_ERROR, fail, false, 0, true); sendaction.load(request); } public static function List(_arg1:Function=null, _arg2:Object=null):void{ var mode:String; var page:int; var perpage:int; var datemin:String; var datemax:String; var data:Boolean; var customfilters:Object; var sendaction:URLLoader; var handled:Boolean; var fail:Function; var httpstatusignore:Function; var postdata:URLVariables; var numcustomfilters:int; var request:URLRequest; var bridge:Function; var key:String; var callback = _arg1; var options = _arg2; if (options == null){ options = new Object(); }; mode = (options.hasOwnProperty("mode")) ? options["mode"] : "popular"; page = (options.hasOwnProperty("page")) ? options["page"] : 1; perpage = (options.hasOwnProperty("perpage")) ? options["perpage"] : 20; datemin = (options.hasOwnProperty("datemin")) ? options["datemin"] : ""; datemax = (options.hasOwnProperty("datemax")) ? options["datemax"] : ""; data = (options.hasOwnProperty("data")) ? options["data"] : false; customfilters = (options.hasOwnProperty("customfilters")) ? options["customfilters"] : {}; sendaction = new URLLoader(); handled = false; if (callback != null){ bridge = function ():void{ var _local1:XML; var _local2:int; var _local3:int; var _local4:Array; var _local5:int; var _local6:XMLList; var _local7:XML; var _local8:String; var _local9:int; var _local10:int; var _local11:int; var _local12:XML; var _local13:PlayerLevel; var _local14:XMLList; if ((((callback == null)) || (handled))){ return; }; handled = true; _local1 = XML(sendaction["data"]); _local2 = parseInt(_local1["status"]); _local3 = parseInt(_local1["errorcode"]); _local4 = new Array(); _local5 = _local1["numresults"]; if (_local2 == 1){ _local6 = _local1["level"]; for each (_local12 in _local6) { _local8 = _local12["sdate"]; _local9 = int(_local8.substring((_local8.lastIndexOf("/") + 1))); _local10 = int(_local8.substring(0, _local8.indexOf("/"))); _local11 = int(_local8.substring((_local8.indexOf("/") + 1)).substring(0, 2)); _local13 = new PlayerLevel(); _local13.LevelId = _local12["levelid"]; _local13.PlayerId = _local12["playerid"]; _local13.PlayerName = _local12["playername"]; _local13.Name = _local12["name"]; _local13.Score = _local12["score"]; _local13.Rating = _local12["rating"]; _local13.Plays = _local12["plays"]; _local13.Votes = _local12["votes"]; _local13.SDate = new Date(_local9, (_local10 - 1), _local11); _local13.RDate = _local12["rdate"]; if (_local12["data"]){ _local13.Data = _local12["data"]; }; _local14 = _local12["custom"]; if (_local14 != null){ for each (_local7 in _local14.children()) { _local13.CustomData[_local7.name()] = _local7.text(); }; }; _local4.push(_local13); }; }; callback(_local4, _local5, {Success:(_local2 == 1), ErrorCode:_local3}); }; sendaction.addEventListener(Event.COMPLETE, bridge, false, 0, true); }; fail = function ():void{ if ((((callback == null)) || (handled))){ return; }; handled = true; callback([], 0, {Success:false, ErrorCode:1}); }; httpstatusignore = function ():void{ }; postdata = new URLVariables(); numcustomfilters = 0; if (customfilters != null){ for (key in customfilters) { postdata[("ckey" + numcustomfilters)] = key; postdata[("cdata" + numcustomfilters)] = escape(customfilters[key]); numcustomfilters = (numcustomfilters + 1); }; }; request = new URLRequest(((((((((((((((((((("http://g" + Log.GUID) + ".api.playtomic.com/playerlevels/list.aspx?swfid=") + Log.SWFID) + "&mode=") + mode) + "&filters=") + numcustomfilters) + "&page=") + page) + "&perpage=") + perpage) + "&data=") + data) + "&datemin=") + datemin) + "&datemax=") + datemax) + "&") + Math.random())); request.data = postdata; request.method = URLRequestMethod.POST; sendaction.addEventListener(IOErrorEvent.IO_ERROR, fail, false, 0, true); sendaction.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpstatusignore, false, 0, true); sendaction.addEventListener(SecurityErrorEvent.SECURITY_ERROR, fail, false, 0, true); sendaction.load(request); } public static function Load(_arg1:String, _arg2:Function=null):void{ var sendaction:URLLoader; var handled:Boolean; var fail:Function; var httpstatusignore:Function; var bridge:Function; var levelid = _arg1; var callback = _arg2; sendaction = new URLLoader(); handled = false; if (callback != null){ bridge = function ():void{ var _local1:XML; var _local2:int; var _local3:int; var _local4:PlayerLevel; var _local5:XML; var _local6:String; var _local7:int; var _local8:int; var _local9:int; var _local10:XMLList; var _local11:XML; if ((((callback == null)) || (handled))){ return; }; handled = true; _local1 = XML(sendaction["data"]); _local2 = parseInt(_local1["status"]); _local3 = parseInt(_local1["errorcode"]); _local4 = new PlayerLevel(); if (_local2 == 1){ _local5 = XML(_local1["level"]); _local6 = _local5["sdate"]; _local7 = int(_local6.substring((_local6.lastIndexOf("/") + 1))); _local8 = int(_local6.substring(0, _local6.indexOf("/"))); _local9 = int(_local6.substring((_local6.indexOf("/") + 1)).substring(0, 2)); _local4.LevelId = _local5["levelid"]; _local4.PlayerName = _local5["playername"]; _local4.PlayerId = _local5["playerid"]; _local4.Name = _local5["name"]; _local4.Score = _local5["score"]; _local4.Votes = _local5["votes"]; _local4.Rating = _local5["rating"]; _local4.Data = _local5["data"]; _local4.SDate = new Date(_local7, (_local8 - 1), _local9); _local4.RDate = _local5["rdate"]; if (_local5["custom"]){ _local10 = _local5["custom"]; for each (_local11 in _local10.children()) { _local4.CustomData[_local11.name()] = _local11.text(); }; }; }; callback(_local4, {Success:(_local2 == 1), ErrorCode:_local3}); }; sendaction.addEventListener(Event.COMPLETE, bridge, false, 0, true); }; fail = function ():void{ if ((((callback == null)) || (handled))){ return; }; handled = true; callback(new PlayerLevel(), {Success:false, ErrorCode:1}); }; httpstatusignore = function ():void{ }; sendaction.addEventListener(IOErrorEvent.IO_ERROR, fail, false, 0, true); sendaction.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpstatusignore, false, 0, true); sendaction.addEventListener(SecurityErrorEvent.SECURITY_ERROR, fail, false, 0, true); sendaction.load(new URLRequest(((((((("http://g" + Log.GUID) + ".api.playtomic.com/playerlevels/load.aspx?swfid=") + Log.SWFID) + "&levelid=") + levelid) + "&") + Math.random()))); } private static function RandomSample(_arg1:BitmapData):String{ var _local2:Array; var _local3:int; var _local4:int; var _local5:String; _local2 = new Array(); while (_local2.length < 10) { _local3 = (Math.random() * _arg1.width); _local4 = (Math.random() * _arg1.height); _local5 = _arg1.getPixel32(_local3, _local4).toString(16); while (_local5.length < 6) { _local5 = ("0" + _local5); }; _local2.push(((((_local3 + "/") + _local4) + "/") + _local5)); }; return (_local2.join(",")); } } }//package Playtomic
Section 251
//PlayerScore (Playtomic.PlayerScore) package Playtomic { public final class PlayerScore { public var RDate:String; public var FBUserId:String; public var Points:Number; public var SDate:Date; public var CustomData:Object; public var Name:String; public var Website:String; public function PlayerScore(){ CustomData = {}; super(); } } }//package Playtomic
Section 252
//achipopups (achipopups) package { import flash.display.*; public dynamic class achipopups extends MovieClip { public var torso:torso_superior; public var cara:cabeza; } }//package
Section 253
//Actor (Actor) package { import Box2D.Dynamics.*; import flash.display.*; import flash.geom.*; import flash.events.*; public class Actor extends EventDispatcher { protected var _cuerpo:b2Body; protected var _disfraz:DisplayObject; public function Actor(_arg1:b2Body, _arg2:DisplayObject){ if (_arg1 != null){ _cuerpo = _arg1; _cuerpo.SetUserData(this); } else { _cuerpo = null; }; _disfraz = _arg2; actualizaMiApariencia(); } public function explotar():void{ } protected function limpiarAntesDeBorrar():void{ } public function get disfraz():DisplayObject{ return (_disfraz); } public function destruir():void{ limpiarAntesDeBorrar(); if (_disfraz != null){ _disfraz.parent.removeChild(_disfraz); }; if (_cuerpo != null){ VariablesGlobales.mundo.DestroyBody(_cuerpo); }; } public function get cuerpo():b2Body{ return (_cuerpo); } public function afectadoPorExplosion():void{ } public function set disfraz(_arg1:DisplayObject):void{ _disfraz = _arg1; } private function actualizaMiApariencia():void{ if (_cuerpo != null){ _disfraz.x = (_cuerpo.GetPosition().x * VariablesGlobales.RATIO); _disfraz.y = (_cuerpo.GetPosition().y * VariablesGlobales.RATIO); _disfraz.rotation = ((_cuerpo.GetAngle() * 180) / Math.PI); }; } public function actualizaAhora():void{ actualizaMiApariencia(); actualizacionEspecificaHijo(); if (!(VariablesGlobales.limitesMundo.containsPoint(new Point(_disfraz.x, _disfraz.y)))){ gestionarFueraDeLimites(); }; } protected function actualizacionEspecificaHijo():void{ } public function set cuerpo(_arg1:b2Body):void{ _cuerpo = _arg1; } protected function gestionarFueraDeLimites():void{ } } }//package
Section 254
//alarma (alarma) package { import flash.media.*; public dynamic class alarma extends Sound { } }//package
Section 255
//autonomo_horizontal_editor_mc (autonomo_horizontal_editor_mc) package { public dynamic class autonomo_horizontal_editor_mc extends MovieClipEnmascarado { } }//package
Section 256
//autonomo_horizontal_mc (autonomo_horizontal_mc) package { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class autonomo_horizontal_mc extends MovieClip { public var texture:MovieClip; public var myMask:MovieClip; public function autonomo_horizontal_mc(){ addFrameScript(0, frame1); } function frame1(){ texture.mask = myMask; } } }//package
Section 257
//autonomo_vertical_editor_mc (autonomo_vertical_editor_mc) package { public dynamic class autonomo_vertical_editor_mc extends MovieClipEnmascarado { } }//package
Section 258
//autonomo_vertical_mc (autonomo_vertical_mc) package { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class autonomo_vertical_mc extends MovieClip { public var texture:MovieClip; public var myMask:MovieClip; public function autonomo_vertical_mc(){ addFrameScript(0, frame1); } function frame1(){ texture.mask = myMask; } } }//package
Section 259
//brazo_inf_d (brazo_inf_d) package { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class brazo_inf_d extends MovieClip { public function brazo_inf_d(){ addFrameScript(0, frame1); } function frame1(){ gotoAndStop(1); } } }//package
Section 260
//brazo_inf_i (brazo_inf_i) package { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class brazo_inf_i extends MovieClip { public function brazo_inf_i(){ addFrameScript(0, frame1); } function frame1(){ gotoAndStop(1); } } }//package
Section 261
//brazo_sup_d (brazo_sup_d) package { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class brazo_sup_d extends MovieClip { public function brazo_sup_d(){ addFrameScript(0, frame1); } function frame1(){ gotoAndStop(1); } } }//package
Section 262
//brazo_sup_i (brazo_sup_i) package { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class brazo_sup_i extends MovieClip { public function brazo_sup_i(){ addFrameScript(0, frame1); } function frame1(){ gotoAndStop(1); } } }//package
Section 263
//Button_disabledSkin (Button_disabledSkin) package { import flash.display.*; public dynamic class Button_disabledSkin extends MovieClip { } }//package
Section 264
//Button_downSkin (Button_downSkin) package { import flash.display.*; public dynamic class Button_downSkin extends MovieClip { } }//package
Section 265
//Button_emphasizedSkin (Button_emphasizedSkin) package { import flash.display.*; public dynamic class Button_emphasizedSkin extends MovieClip { } }//package
Section 266
//Button_overSkin (Button_overSkin) package { import flash.display.*; public dynamic class Button_overSkin extends MovieClip { } }//package
Section 267
//Button_selectedDisabledSkin (Button_selectedDisabledSkin) package { import flash.display.*; public dynamic class Button_selectedDisabledSkin extends MovieClip { } }//package
Section 268
//Button_selectedDownSkin (Button_selectedDownSkin) package { import flash.display.*; public dynamic class Button_selectedDownSkin extends MovieClip { } }//package
Section 269
//Button_selectedOverSkin (Button_selectedOverSkin) package { import flash.display.*; public dynamic class Button_selectedOverSkin extends MovieClip { } }//package
Section 270
//Button_selectedUpSkin (Button_selectedUpSkin) package { import flash.display.*; public dynamic class Button_selectedUpSkin extends MovieClip { } }//package
Section 271
//Button_upSkin (Button_upSkin) package { import flash.display.*; public dynamic class Button_upSkin extends MovieClip { } }//package
Section 272
//cabeza (cabeza) package { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class cabeza extends MovieClip { public function cabeza(){ addFrameScript(0, frame1); } function frame1(){ gotoAndStop(1); } } }//package
Section 273
//Cadena_Nivel (Cadena_Nivel) package { public class Cadena_Nivel { public var datos:Array; public function Cadena_Nivel(){ var _local1:String; var _local2:String; var _local3:String; var _local4:String; var _local5:String; var _local6:String; var _local7:String; var _local8:String; var _local9:String; var _local10:String; var _local11:String; var _local12:String; var _local13:String; var _local14:String; var _local15:String; var _local16:String; var _local17:String; var _local18:String; var _local19:String; var _local20:String; var _local21:String; var _local22:String; var _local23:String; var _local24:String; var _local25:String; var _local26:String; var _local27:String; var _local28:String; var _local29:String; var _local30:String; var _local31:String; var _local32:String; var _local33:String; var _local34:String; var _local35:String; var _local36:String; var _local37:String; var _local38:String; var _local39:String; var _local40:String; var _local41:String; var _local42:String; var _local43:String; var _local44:String; var _local45:String; var _local46:String; var _local47:String; var _local48:String; var _local49:String; var _local50:String; var _local51:String; var _local52:String; var _local53:String; var _local54:String; var _local55:String; var _local56:String; var _local57:String; var _local58:String; var _local59:String; var _local60:String; super(); _local1 = "97#l,232.85,291.50,52.00,26.15,0|me,507.00,286.00,48.80,48.80,0|ec,391.50,507.40,746.30,18.70,0|ec,389.05,74.90,747.30,19.70,0|ec,8.45,291.15,18.70,451.30,0|ec,772.10,291.15,19.70,452.30,0|"; _local2 = "98#l,394.05,357.10,52.00,26.15,0|me,388.85,36.30,48.80,48.80,0|ec,391.70,507.35,746.30,18.70,0|ec,391.70,-21.30,747.30,19.70,0|ec,8.65,244.60,18.70,547.70,0|ec,777.25,242.85,19.70,548.70,0|"; _local3 = "99#l,610.95,443.05,52.00,26.15,0|me,165.55,291.50,48.80,48.80,0|ec,391.50,507.20,746.30,18.70,0|ec,8.50,341.65,18.70,347.60,0|ec,769.40,438.65,16.90,157.30,0|ec,345.10,273.75,19.70,209.30,0|ec,176.80,178.85,318.60,19.70,0|ec,557.40,368.95,404.30,17.95,0|"; _local4 = "1#mr,34.95,95.55,46.00,46.00,0|cn,759.20,246.35,41.00,41.00,0|cn,706.70,376.90,41.00,41.00,0|cn,523.65,471.15,41.00,41.00,0|cn,323.05,496.70,41.00,41.00,0|cn,177.65,468.45,41.00,41.00,0|l,631.35,138.65,77.70,45.30,0|cn,53.80,314.95,41.00,41.00,0|cp,328.45,161.55,41.00,41.00,0|ee,25.60,149.40,39.00,39.00,0|ee,67.25,203.25,39.00,39.00,0|ee,131.90,247.70,39.00,39.00,0|ee,367.50,261.10,39.00,39.00,0|ee,405.20,205.90,39.00,39.00,0|ee,417.30,149.40,39.00,39.00,0|ee,398.45,84.80,39.00,39.00,0|ee,321.70,72.65,39.00,39.00,0|ee,243.65,71.30,39.00,39.00,0|ee,162.85,64.60,39.00,39.00,0|ee,95.55,64.60,39.00,39.00,0|cn,91.50,405.15,41.00,41.00,0|"; _local5 = "1#l,685.10,336.70,77.70,45.30,0|ec,258.50,354.00,67.60,43.90,-31.32|ec,275.95,397.10,70.20,29.70,22.79|ec,234.20,320.35,27.65,70.50,18.53|ec,219.05,272.60,31.15,78.95,-39.1|ec,321.40,399.15,55.45,28.70,-19.03|ec,300.15,317.65,64.60,48.10,-49.65|ec,359.45,304.20,88.55,30.25,-9.51|ec,307.95,259.10,71.70,26.15,-81.24|ec,399.75,275.95,30.40,62.25,17.52|ec,304.20,204.60,26.85,61.95,-17.52|me,204.60,387.65,48.80,48.80,0|cm,345.10,264.85,46.00,46.00,0|"; _local6 = "1#dc,386.20,242.60,18.65,196.80,-14.77|ec,443.35,119.90,19.75,212.45,12.01|ec,492.15,517.25,411.45,21.95,-12.51|ec,464.25,379.20,24.20,166.70,-16.52|ec,407.10,423.80,16.15,115.45,-16.27|ee,354.10,234.20,39.00,39.00,0|l,58.55,290.00,77.70,45.30,0|ec,567.75,417.20,25.10,167.10,-15.53|ee,338.80,185.40,39.00,39.00,0|ec,352.70,114.30,147.20,22.15,-14.01|ee,370.80,326.20,39.00,39.00,0|me,701.30,121.25,48.80,48.80,0|ec,723.95,262.45,417.70,22.95,-78.24|ec,622.85,33.80,313.70,22.90,4.75|ee,334.65,511.65,39.00,39.00,0|ee,369.45,446.15,39.00,39.00,0|ee,432.20,292.80,39.00,39.00,0|de,422.45,372.25,39.00,39.00,0|de,435.00,414.05,39.00,39.00,0|de,444.75,446.10,39.00,39.00,0.01|dc,457.30,485.15,38.40,38.45,-17.06|ci,580.00,305.35,41.00,41.00,54.4|ci,623.15,266.25,41.00,41.00,57.15|ci,670.60,231.40,41.00,41.00,52.06|"; _local7 = "1#l,60.90,288.00,77.70,45.30,0|me,717.20,292.10,48.20,48.20,0|ci,672.90,250.60,40.70,40.70,175.2|ci,756.00,333.65,40.90,40.90,53.92|ci,677.05,333.65,40.90,40.90,127.84|ci,750.40,243.65,40.90,40.90,-51.87|ci,235.35,389.05,41.00,41.00,137.47|ci,135.65,490.15,40.90,40.90,-7.73|ci,569.10,488.75,41.00,41.00,-75.47|ci,690.90,101.05,40.90,40.90,81.11|ci,207.65,293.50,41.00,41.00,-128.59|ci,231.20,191.05,41.00,41.00,-72.25|ci,312.90,117.65,41.00,41.00,55.78|ci,422.30,120.45,41.00,41.00,-84.12|ci,517.85,178.60,41.00,41.00,-3.57|ci,307.35,436.15,40.90,40.90,-90.23|ci,458.30,433.35,41.00,41.00,134.4|ci,540.00,282.45,41.00,41.00,56.31|ci,530.30,366.90,40.90,40.90,-143.04|ci,375.20,494.30,41.00,41.00,0|ci,368.30,66.45,41.00,41.00,0|ci,119.05,76.15,41.00,41.00,34.56|ci,582.90,72.00,41.00,41.00,62.39|ci,60.90,164.75,41.00,41.00,21.38|ci,55.35,426.45,41.00,41.00,-30.93|ci,685.35,443.05,41.00,41.00,-65.73|ee,379.35,285.20,304.80,304.80,0|cm,188.30,116.30,46.00,46.00,0|cm,171.65,429.20,46.00,46.00,0|cm,596.75,131.50,46.00,46.00,0|cm,600.90,420.90,46.00,46.00,0|cn,-64.90,293.25,41.00,41.00,0|cn,843.80,454.35,41.00,41.00,0|"; _local8 = "1#l,399.80,154.75,77.70,45.30,0|ec,393.10,306.95,453.10,35.80,0|me,395.80,405.20,48.80,48.80,0|"; _local9 = "1#ec,552.90,506.55,434.50,14.80,0|l,64.15,430.05,77.70,45.30,0|ci,749.55,439.65,40.70,40.70,-146.16|ci,43.70,309.90,40.70,40.70,-34.82|ec,219.80,81.20,436.50,16.80,0|me,531.15,155.60,48.80,48.80,0|av,629.40,363.15,23.50,45.95,0|av,166.55,228.00,23.50,45.95,0|ec,626.70,116.05,38.50,38.50,0|ec,165.15,487.40,38.50,38.50,0|ec,51.15,341.70,178.80,15.80,0|ec,281.25,342.00,179.80,16.80,0|ec,739.70,268.60,180.80,17.80,0|ec,519.15,270.70,180.80,17.80,0|cm,395.95,303.10,46.00,46.00,0|"; _local10 = "1#ec,301.15,298.35,38.50,161.20,0|ec,351.30,197.95,138.90,38.50,0|ec,352.70,398.75,141.70,38.50,0|me,363.85,302.55,48.80,48.80,0|ci,147.75,472.60,41.00,41.00,0|ci,149.15,117.10,41.00,41.00,0|l,213.30,291.35,77.70,45.30,0|cn,654.75,133.35,41.00,41.00,0|cn,659.85,465.85,41.00,41.00,0|cn,579.20,545.15,42.00,42.00,0|cn,576.85,47.60,43.00,43.00,0|cn,633.75,243.90,42.00,42.00,0|cn,633.25,348.80,43.00,43.00,0|cn,459.30,577.30,43.00,43.00,0|cn,464.45,-0.45,44.00,44.00,0|"; _local11 = "2#l,390.40,95.50,77.70,45.30,0|ee,59.50,193.80,39.00,39.00,0|ee,144.00,195.20,39.00,39.00,0|ee,231.20,202.15,39.00,39.00,0|ee,312.90,203.50,39.00,39.00,0|ee,402.90,202.15,39.00,39.00,0|ee,487.35,199.35,39.00,39.00,0|ee,580.15,198.00,39.00,39.00,0|ee,671.50,200.75,39.00,39.00,0|ee,742.10,199.35,39.00,39.00,0|ee,94.15,297.65,39.00,39.00,0|ee,185.50,296.30,39.00,39.00,0|ee,276.90,290.75,39.00,39.00,0|ee,368.30,292.15,39.00,39.00,0|ee,462.45,293.50,39.00,39.00,0|ee,531.65,288.00,39.00,39.00,0|ee,625.85,286.60,39.00,39.00,0|ee,718.60,286.60,39.00,39.00,0|ee,41.50,402.90,39.00,39.00,0|ee,146.75,396.00,39.00,39.00,0|ee,231.20,396.00,39.00,39.00,0|ee,319.80,391.85,39.00,39.00,0|ee,423.65,382.15,39.00,39.00,0|ee,530.30,391.85,39.00,39.00,0|ee,621.65,386.30,39.00,39.00,0|ee,735.20,407.05,39.00,39.00,0|ah,119.05,249.20,46.00,20.70,0|ee,0.00,254.80,39.00,39.00,0|ee,-2.75,351.70,39.00,39.00,0|ee,775.35,355.85,39.00,39.00,0|ee,774.00,247.80,39.00,39.00,0|ah,696.45,350.30,46.00,23.50,0|me,387.65,490.15,48.20,48.20,0|cn,23.50,90.00,41.00,41.00,0|cn,760.15,78.90,41.00,41.00,0|cn,184.15,344.75,41.00,41.00,0|cn,407.75,249.55,42.00,42.00,0|cn,625.85,338.50,43.00,43.00,0|cn,29.05,494.30,41.00,41.00,0|cn,751.80,490.15,41.00,41.00,0|"; _local12 = "2#ec,175.35,367.15,250.80,27.10,-51.16|ec,175.45,128.55,808.25,30.40,0.5|mr,30.95,82.10,46.00,46.00,0|l,68.65,324.45,77.70,45.30,0|ec,59.10,39.40,1138.50,38.50,0|ci,528.20,437.55,41.00,41.00,-69.97|ci,721.45,457.30,41.00,41.00,-86.17|cm,380.40,352.80,46.00,46.00,0|cm,547.95,364.65,46.00,46.00,0|cm,715.50,394.20,46.00,46.00,0|ee,636.65,258.15,39.00,39.00,0|ci,358.75,415.90,41.00,41.00,-45|"; _local13 = "2#ec,324.75,231.85,713.40,16.40,25.8|l,697.30,154.80,77.70,45.30,0|ec,340.45,475.75,700.15,15.50,2.28|mr,25.55,421.35,46.00,46.00,0|ec,689.65,217.80,270.95,17.10,11.54|"; _local14 = "2#l,75.10,400.00,77.70,45.30,0|ec,308.55,300.35,367.85,18.90,-37.84|ee,488.80,270.30,79.10,79.10,29.31|ee,409.60,344.05,80.10,80.10,0|ec,492.90,386.40,63.35,108.80,39.1|ee,592.55,233.45,79.90,79.90,0|ee,691.90,291.10,80.90,80.90,0|ec,606.95,341.70,64.15,109.45,-48.11|me,391.85,428.70,48.80,48.80,0|ec,167.90,477.85,22.10,147.70,0|"; _local15 = "2#ec,12.30,158.70,38.50,195.60,0|ec,8.00,459.50,39.50,158.90,0|ec,285.50,43.15,577.70,38.50,0|ec,288.20,559.20,607.70,38.50,0|av,126.10,92.45,53.85,46.95,0|av,491.45,511.75,54.80,47.95,0|mc,59.25,317.50,46.00,46.00,0|ec,72.30,235.50,38.50,38.50,0|ec,73.35,398.65,38.50,38.50,0|ec,299.35,402.75,289.40,38.50,0|ec,550.35,442.20,40.50,193.40,0|ec,553.55,157.45,39.50,191.60,0|ec,652.65,249.85,158.60,38.50,0|ec,652.25,356.65,159.60,39.50,0|l,660.80,177.50,77.70,45.30,0|ec,299.00,236.50,290.40,39.50,0|dc,15.75,358.50,152.50,36.40,0|ee,295.80,360.35,39.00,39.00,0|dc,14.75,274.75,153.50,37.40,0|ec,6.25,315.50,39.50,39.50,0|ec,784.65,306.15,39.50,747.00,0|cm,295.60,140.50,46.00,46.00,0|cm,294.00,491.10,46.00,46.00,0|"; _local16 = "2#me,382.75,220.25,48.80,48.80,0|ee,332.50,297.25,23.70,23.70,0|ee,432.75,297.50,24.70,24.70,0|ec,384.75,393.25,38.50,14.10,0|ci,381.50,147.75,41.00,41.00,-95.05|ci,426.30,158.15,40.80,40.80,-44.62|ci,457.05,179.75,41.00,41.00,-26.33|ci,496.60,291.95,41.00,41.00,0|ci,496.25,330.20,41.00,41.00,0|ci,491.00,370.40,41.00,41.00,15.77|ci,482.80,407.00,40.70,40.70,39.6|ci,431.75,465.25,41.00,41.00,91.76|ci,340.50,467.75,41.00,41.00,93.76|ci,282.45,389.00,41.00,41.00,0.65|ci,270.50,343.25,41.00,41.00,176.5|ci,267.50,295.50,41.00,41.00,176.44|ci,295.25,205.25,40.90,40.90,-151.93|ci,328.00,163.75,40.90,40.90,-141.67|ci,300.75,436.00,41.80,41.80,133.37|ec,382.20,420.40,114.90,13.95,0|ec,325.00,269.00,38.50,12.00,-20.31|ec,435.00,272.00,39.40,12.95,20.56|l,695.20,305.50,77.70,45.30,0|ci,276.50,250.50,42.00,42.00,176.44|ci,477.00,215.75,42.00,42.00,-7.29|ci,387.75,484.25,42.00,42.00,91.76|cn,125.45,303.85,41.00,41.00,0|cn,127.65,412.85,42.00,42.00,0|cn,125.45,204.75,43.00,43.00,0|ci,237.75,391.85,41.00,41.00,0|ci,493.00,252.30,41.00,41.00,0|ci,464.20,440.70,41.00,41.00,48.46|"; _local17 = "2#ec,463.85,392.20,667.50,39.50,0|ec,225.25,277.20,57.60,49.40,0|ec,417.75,276.25,58.60,50.40,0|dc,223.85,338.60,49.45,49.65,0|av,174.75,277.20,23.50,45.95,0|av,365.90,278.50,23.50,45.95,0|ec,617.45,280.60,59.60,51.40,0|av,567.65,277.45,24.50,46.95,0|dc,411.65,337.55,50.45,50.65,0|dc,616.10,339.25,51.45,51.65,0|me,738.65,283.95,48.80,48.80,0|ec,786.40,288.15,38.50,453.70,0|l,73.20,310.15,77.70,45.30,0|ec,139.00,228.00,38.50,38.50,0|ec,273.00,229.00,154.50,38.50,0|ec,470.00,229.00,155.50,39.50,0|ec,683.00,228.00,168.50,40.50,0|ec,180.00,188.00,39.50,39.50,0|ec,370.00,185.00,40.50,40.50,0|ec,570.00,183.00,41.50,41.50,0|cm,264.00,174.00,46.00,46.00,0|cm,474.00,178.00,46.00,46.00,0|cm,684.00,178.00,46.00,46.00,0|"; _local18 = "3#l,74.45,158.75,77.70,45.30,0|ec,-25.60,326.05,1110.05,25.95,-34.08|ec,509.80,122.70,1231.45,26.60,-34.08|ec,312.00,414.55,880.45,19.20,-34.08|ec,702.75,293.05,837.65,17.35,-34.08|ec,562.30,526.30,659.35,21.15,-34.08|ec,405.40,659.40,1455.10,38.50,0|ec,381.60,-139.20,1456.10,39.50,0|ci,102.55,295.50,41.00,41.00,-34.62|ci,307.70,381.00,41.00,41.00,148.03|ci,424.95,376.10,41.00,41.00,-34.04|ec,-197.80,300.40,38.50,932.40,0|ec,979.95,273.50,39.50,933.40,0|ec,885.35,453.05,349.05,16.40,-34.08|ec,893.90,551.95,312.00,19.00,0|me,906.10,600.80,48.80,48.80,0|dc,781.55,600.80,63.05,68.55,0|cm,906.10,9.75,46.00,46.00,0|cm,-124.50,593.45,46.00,46.00,0|cm,-126.35,288.20,47.00,47.00,0|cm,916.45,254.00,47.00,47.00,0|"; _local19 = "3#mr,65.95,344.60,46.00,46.00,0|ee,542.15,338.55,250.00,250.00,0|ec,65.95,390.40,38.50,38.50,0|ec,18.85,290.75,38.50,450.40,0|ec,231.40,154.65,461.20,38.50,0|ec,403.80,191.15,38.50,189.20,0|ec,321.70,456.30,38.50,170.40,0|ci,362.10,347.30,41.00,41.00,91.61|ci,399.45,346.65,42.00,42.00,91.53|ee,216.45,351.70,251.00,251.00,0|l,547.55,156.70,77.70,45.30,0|ec,554.05,552.45,636.20,38.50,0|ec,731.75,460.35,357.70,38.45,-41.88|ec,527.45,-11.70,38.00,539.40,-40.86|ee,547.60,513.70,39.00,39.00,0|dc,728.55,189.00,226.05,25.15,-39.84|ec,828.65,338.15,38.90,328.40,-40.86|ee,892.55,51.40,127.80,127.80,0|ee,456.75,37.95,128.80,128.80,0|"; _local20 = "3#me,43.95,112.35,48.80,48.80,0|me,39.05,478.65,48.80,48.80,0|me,732.70,114.75,48.80,48.80,0|me,735.15,478.70,48.80,48.80,0|l,412.70,307.75,77.70,45.30,0|cn,117.15,168.50,41.00,41.00,0|cn,117.20,429.85,41.00,41.00,0|cn,620.35,173.40,41.00,41.00,0|dc,405.45,429.85,44.70,1205.70,90|"; _local21 = "3#ec,448.00,206.50,17.35,295.20,36.09|ec,636.10,309.30,18.35,295.70,36.09|ec,85.75,399.85,19.25,295.80,36.09|ec,151.35,121.15,20.15,295.90,36.09|ec,386.75,451.50,20.95,295.10,36.09|ec,428.60,36.65,21.55,559.20,36.09|mr,343.00,-57.75,46.00,46.00,0|de,317.50,7.30,39.00,39.00,0|de,131.85,26.85,39.00,39.00,0|de,288.15,-114.75,39.00,39.00,0|de,446.95,-85.45,39.00,39.00,0|de,686.30,-7.30,39.00,39.00,0|ee,236.90,429.85,39.00,39.00,0|ee,324.80,293.05,39.00,39.00,0|ee,12.20,315.05,39.00,39.00,0|ee,222.25,170.95,39.00,39.00,0|ee,529.95,249.10,39.00,39.00,0|ee,483.55,471.35,39.00,39.00,0|ee,610.55,202.70,39.00,39.00,0|ee,740.00,366.35,39.00,39.00,0|ee,644.75,459.15,39.00,39.00,0|ec,351.70,612.95,1264.60,38.50,0|ec,-175.85,241.75,38.50,771.20,0|ec,965.30,232.00,39.50,772.20,0|l,705.85,126.95,77.70,45.30,0|cm,407.85,158.75,46.00,46.00,0|cm,341.90,420.05,46.00,46.00,0|cm,854.75,295.50,46.00,46.00,0|"; _local22 = "3#ec,97.65,437.20,354.85,38.35,39.6|dc,180.75,315.05,155.35,143.05,39.6|ee,192.90,451.80,39.00,39.00,0|ee,251.50,388.30,39.00,39.00,0|mc,107.40,383.45,46.00,46.00,0|ec,261.25,158.75,19.00,253.50,0|ec,73.85,97.65,20.00,401.00,0|l,608.10,212.45,77.70,45.30,0|"; _local23 = "3#ec,286.70,301.50,22.40,337.30,0|ec,749.45,302.20,23.40,338.30,0|ec,390.90,133.30,217.70,18.80,0|ec,350.45,467.50,149.20,23.40,0|ec,452.35,271.60,89.85,17.30,0|ec,417.25,338.25,16.80,128.20,0|ec,624.75,339.50,17.85,126.50,0|dc,523.00,414.75,229.45,19.00,0|ec,432.05,511.55,179.60,11.70,80.99|ec,518.80,476.25,38.50,92.80,0|ec,649.40,134.25,218.70,19.80,0|ec,589.75,272.45,90.85,18.30,0|l,68.65,468.15,77.70,45.30,0|ec,398.10,683.85,14.10,414.70,0|ec,642.95,681.40,15.10,415.70,0|me,520.20,583.70,48.80,48.80,0|ec,684.55,466.45,150.20,24.40,0|ec,603.80,514.60,180.50,13.60,101.01|ci,463.60,473.30,41.00,41.00,79|ci,573.85,476.90,42.00,42.00,102.76|cm,348.90,402.25,46.00,46.00,0|cm,688.10,403.80,46.00,46.00,0|"; _local24 = "3#l,105.10,124.25,77.70,45.30,0|ec,46.40,83.25,150.70,15.80,-44.4|ec,145.70,86.35,150.95,16.70,43.88|ec,4.40,310.60,352.70,16.35,-90.5|ec,192.25,401.00,249.70,17.35,-90.5|ec,94.50,245.75,18.05,171.10,-90.25|ec,99.65,352.60,19.05,172.10,-90.25|ec,194.55,163.85,54.05,17.25,-90.5|dc,326.25,370.50,364.15,15.50,42.12|ec,496.20,512.00,94.20,23.10,0|av,652.10,512.05,199.90,24.30,0|ec,662.10,622.30,124.10,20.40,0|ec,650.15,133.40,125.10,21.40,0|ec,511.55,264.35,41.30,16.70,-1.16|ec,352.95,232.45,291.80,17.60,13.55|ec,537.75,301.85,15.15,178.80,0|ci,554.05,167.60,41.00,41.00,178.74|ci,644.10,168.25,42.00,42.00,178.74|ci,600.05,167.25,43.00,43.00,178.75|ee,432.85,509.25,39.00,39.00,0|me,456.00,167.90,48.80,48.80,0|cp,853.25,323.15,41.00,41.00,0|ee,230.75,328.50,39.00,39.00,0|ee,309.95,404.15,39.00,39.00,0|cm,267.00,367.00,46.00,46.00,0|cm,653.25,572.10,46.00,46.00,0|"; _local25 = "4#ci,172.00,393.20,41.00,41.00,-42.1|ci,230.00,345.80,41.90,41.90,-42.11|ci,286.70,294.20,42.80,42.80,-42.11|ci,338.25,248.10,43.70,43.70,-42.11|ec,315.40,333.10,391.30,20.90,-44.12|ec,252.25,258.40,389.70,21.75,-44.12|ci,392.50,195.25,44.60,44.60,-42.11|ci,443.75,145.05,45.50,45.50,-42.11|me,622.60,389.10,48.80,48.80,0|l,75.05,147.45,77.70,45.30,0|ec,117.40,91.45,19.40,598.40,0|ec,186.70,762.20,20.40,599.40,0|ci,562.50,389.10,41.00,41.00,0|ci,509.95,390.80,42.00,42.00,0|ci,680.30,392.50,43.00,43.00,-179.5|ci,731.80,392.85,44.00,44.00,-179.5|"; _local26 = "4#ee,108.35,505.05,171.30,171.30,0|ee,288.50,512.75,172.30,172.30,0|ee,470.50,513.55,173.30,173.30,0|ee,201.55,303.95,174.30,174.30,0|ee,387.10,305.00,175.30,175.30,0|mr,86.30,394.85,46.00,46.00,0|ec,-5.50,369.10,134.00,115.60,0|ec,42.20,252.50,135.00,116.60,0|ee,295.30,101.10,175.30,175.30,0|ec,77.40,132.00,136.00,117.60,0|ec,185.25,-54.15,449.95,30.25,-32.57|ec,605.85,411.20,38.35,773.15,-23.54|ee,415.05,92.60,84.90,84.90,0|ci,176.00,96.45,41.00,41.00,-88.33|cm,99.80,47.35,46.00,46.00,0|l,663.35,240.25,77.70,45.30,0|cm,791.20,608.65,46.00,46.00,0|"; _local27 = "4#l,384.80,98.95,77.70,45.30,0|dc,214.70,256.50,178.20,16.75,-12.85|ee,214.70,285.80,39.00,39.00,0|ec,216.10,156.15,38.50,175.10,0|de,121.00,227.60,77.20,77.20,0|ee,108.75,288.55,39.00,39.00,0|ec,453.50,148.05,39.50,152.40,0|ec,47.40,377.85,127.65,19.40,36.59|ec,344.30,423.85,434.50,19.00,0|ec,601.30,581.05,38.50,38.50,0|ec,682.30,577.10,38.50,38.50,0|ec,739.90,475.10,32.70,179.30,0|av,605.25,340.85,23.50,45.95,0|av,680.75,341.00,23.50,45.95,0|ee,602.40,231.15,39.00,39.00,0|ee,683.10,230.00,39.00,39.00,0|ee,323.25,303.35,39.00,39.00,0|dc,661.70,198.00,85.70,38.05,-44.87|mr,614.30,186.10,46.00,46.00,0|ee,568.55,263.95,39.00,39.00,0|ee,521.20,292.75,39.00,39.00,0|ee,468.35,311.35,40.00,40.00,0|ec,651.10,92.25,341.85,34.90,0|ee,402.70,313.10,39.00,39.00,0|"; _local28 = "4#ci,43.05,467.10,40.90,40.90,-58.1|l,716.15,461.75,77.70,45.30,0|cn,728.25,123.85,41.00,41.00,0|ci,650.15,246.30,40.70,40.70,143.91|ci,487.30,446.90,40.80,40.80,-108.48|me,183.05,96.85,48.80,48.80,0|ec,6.70,316.35,334.85,37.95,-30.56|ec,284.00,82.05,203.65,37.50,-50.15|ec,652.85,333.80,240.50,38.50,0|ci,32.30,223.45,40.90,40.90,-36.86|ci,557.30,290.75,40.80,40.80,-155.75|"; _local29 = "4#dc,390.45,471.00,777.95,16.00,0|ec,465.55,548.85,38.50,128.60,0|me,311.30,124.25,48.80,48.80,0|de,606.25,109.25,129.90,129.95,0|ec,604.85,197.95,38.50,38.50,0|l,387.75,364.50,77.70,45.30,0|ec,17.70,499.70,38.50,38.50,0|ec,395.95,162.45,389.90,14.75,-38.6|ci,277.15,215.70,40.90,40.90,142.17|ci,212.30,168.25,41.90,41.90,142.17|"; _local30 = "4#l,656.70,338.55,77.70,45.30,0|ec,460.10,413.70,27.60,139.50,0|dc,460.10,335.85,124.05,16.55,0|ec,461.50,307.20,38.50,38.40,0|ec,277.15,382.30,147.60,13.85,-12.02|mr,374.10,334.50,46.00,46.00,0|ec,329.05,268.95,295.10,38.50,0|ec,375.50,365.90,54.90,16.60,0|"; _local31 = "4#dc,715.40,161.10,290.40,17.15,0|ee,216.25,421.20,39.00,39.00,0|ee,471.05,279.90,39.00,39.00,0|ee,636.20,192.50,39.00,39.00,0|mr,725.00,121.50,46.00,46.00,0|ee,704.45,185.65,39.00,39.00,0|ci,758.05,357.65,41.00,41.00,-90.01|l,383.70,447.80,77.70,45.30,0|ee,299.00,301.75,39.00,39.00,0|ci,470.70,370.35,41.60,41.60,-125.72|dc,389.80,228.30,291.40,18.15,0|dc,300.35,259.35,38.50,38.50,0|ec,615.80,268.60,143.20,21.95,9.26|ec,690.20,268.65,49.55,22.85,-38.1|ee,698.70,224.25,40.00,40.00,0|ee,521.05,301.50,40.00,40.00,0|ec,820.05,405.90,38.50,477.70,0|dc,212.90,355.95,38.50,79.90,0|ec,18.30,420.85,38.50,168.20,0|dc,126.85,303.15,292.10,19.15,-7.76|ee,113.10,354.30,39.00,39.00,0|ee,292.70,337.65,39.00,39.00,0|ee,53.25,247.85,39.00,39.00,0|ee,294.40,444.10,39.00,39.00,0|"; _local32 = "5#ec,426.70,459.00,482.25,12.80,7.25|ci,702.70,500.75,40.90,40.90,-98.54|l,100.95,397.10,77.70,45.30,0|ec,372.50,186.45,324.40,13.75,-17.02|ci,141.30,320.35,41.00,41.00,-28.1|ah,593.65,135.95,46.00,23.50,0|me,732.30,208.65,48.80,48.80,0|ec,737.70,140.00,38.50,38.50,0|ec,113.05,348.65,189.20,17.00,0|ec,720.20,289.40,17.65,122.25,-20.53|ec,699.35,157.45,94.80,14.70,-17.02|"; _local33 = "5#l,59.20,437.50,77.70,45.30,0|dc,666.30,296.15,38.50,311.70,0|mr,666.30,111.70,46.00,46.00,0|ec,539.80,471.15,568.90,38.50,0|dc,592.25,281.35,38.50,226.15,0|dc,399.80,442.85,483.95,17.55,0|ec,414.25,349.25,311.40,39.50,0|ec,451.95,410.20,389.50,39.50,0|dc,379.25,378.90,383.05,18.55,0|dc,515.20,266.85,39.50,119.35,0|dc,350.65,319.00,278.85,16.90,0|ec,380.25,289.05,228.90,40.50,0|ec,309.60,126.50,299.70,154.30,0|ci,290.75,251.65,41.00,41.00,179.43|ci,289.40,222.10,41.00,41.00,179.95|"; _local34 = "5#ec,-210.00,249.10,38.50,844.40,0|ec,999.50,253.95,39.50,845.40,0|ec,393.20,671.65,1367.10,38.50,0|ec,392.00,63.50,1012.50,25.80,0|mc,390.75,-90.35,46.00,46.00,0|ec,380.35,583.70,1013.50,26.80,0|ec,-114.15,127.00,19.90,283.70,0|ec,-113.55,449.35,20.90,294.50,0|ec,900.55,449.35,21.90,295.50,0|l,390.75,266.20,77.70,45.30,0|de,46.40,498.20,39.00,39.00,0|de,222.25,456.70,39.00,39.00,0|de,315.05,505.55,39.00,39.00,0|de,503.10,461.60,39.00,39.00,0|de,610.55,244.20,39.00,39.00,0|de,725.35,315.05,39.00,39.00,0|de,652.10,488.45,39.00,39.00,0|de,254.00,322.35,39.00,39.00,0|de,87.90,92.80,39.00,39.00,0|de,26.85,241.75,39.00,39.00,0|de,-80.55,427.40,39.00,39.00,0|de,327.25,124.55,39.00,39.00,0|de,522.65,158.75,39.00,39.00,0|dc,-163.60,620.35,38.50,38.50,0|dc,-168.50,556.85,38.50,38.50,0|dc,-161.15,490.90,38.50,38.50,0|dc,-163.60,422.50,38.50,38.50,0|dc,-163.60,349.25,38.50,38.50,0|dc,-161.15,280.85,38.50,38.50,0|dc,-166.05,205.15,38.50,38.50,0|dc,-163.60,134.30,38.50,38.50,0|ec,897.55,129.40,20.90,284.70,0|"; _local35 = "5#ee,238.40,291.40,228.60,228.60,0|ec,547.90,80.85,593.50,30.20,0|ec,545.50,505.05,594.50,31.20,0|ec,166.15,489.40,105.10,24.50,17.27|ec,64.30,428.85,105.00,25.25,47.13|ec,21.55,299.05,158.75,26.20,88.5|ec,64.15,161.05,105.50,26.15,-51.41|ec,157.90,97.90,105.80,25.45,160.72|dc,235.65,100.10,21.75,141.45,0|dc,234.45,561.75,22.75,151.90,0|ec,592.90,296.95,490.30,69.10,0|l,656.70,199.40,77.70,45.30,0|me,638.50,422.45,48.80,48.80,0|ec,231.55,660.40,38.50,38.50,0|ec,272.30,581.10,38.50,111.40,0|ec,195.65,578.40,39.50,112.40,0|ec,271.75,6.95,39.50,112.40,0|ec,201.55,8.55,40.50,113.35,-1.18|ec,234.20,-71.25,39.50,39.50,0|ec,851.30,293.75,175.80,458.80,0|ci,98.60,295.90,41.00,41.00,-92.56|"; _local36 = "5#de,261.30,-141.60,153.65,153.65,0|dc,459.15,486.00,567.45,23.40,0|mc,715.55,442.05,46.00,46.00,0|ec,466.45,134.30,38.50,566.10,0|ee,493.35,556.85,107.40,107.40,0|l,112.35,124.55,77.70,45.30,0|"; _local37 = "5#ec,-12.50,354.75,287.40,15.30,37.59|dc,361.50,515.25,227.20,18.60,0|ee,256.80,547.60,39.00,39.00,0|ee,461.95,547.60,39.00,39.00,0|mr,-171.55,-136.10,46.00,46.00,0|ec,170.00,480.15,156.55,19.00,27.3|ec,553.30,487.05,156.15,19.80,-24.8|ec,794.40,334.15,418.05,15.80,145.17|ec,-168.00,203.85,156.65,19.90,57.64|l,76.45,188.40,77.70,45.30,0|ec,54.05,252.70,287.90,16.30,37.59|ec,240.20,380.05,157.35,20.00,27.3|ec,383.65,386.55,156.20,20.70,-22.3|ec,572.15,275.60,289.95,17.35,145.17|ee,311.15,412.50,39.00,39.00,0|ee,168.10,338.60,39.00,39.00,0|ee,449.45,355.25,39.00,39.00,0|ee,630.70,462.60,39.00,39.00,0|ee,94.20,453.05,39.00,39.00,0|ci,625.50,279.80,41.00,41.00,-36.36|ci,653.80,310.15,41.90,41.90,-36.34|ci,680.05,340.55,42.80,42.80,-36.34|ci,704.20,372.90,43.70,43.70,-36.34|ec,755.15,230.45,152.60,20.10,25.3|ec,-46.35,7.30,14.10,336.40,0|ci,940.30,185.60,41.00,41.00,118.34|ci,906.70,163.60,41.90,41.90,118.32|ci,873.15,139.20,42.80,42.80,118.31|"; _local38 = "5#l,85.50,199.15,77.70,45.30,0|me,604.10,360.85,48.20,48.20,0|ec,450.40,481.85,361.50,18.05,3.76|ec,342.10,360.85,74.00,19.60,-56.68|cp,362.20,209.85,41.00,41.00,0|cp,306.00,331.45,41.00,41.00,0|ec,398.25,214.50,84.75,18.15,-72.19|ec,555.95,159.00,361.10,18.90,28.6|cm,487.85,180.40,46.00,46.00,0|cm,360.85,439.65,46.00,46.00,0|cm,455.80,322.10,46.00,46.00,0|"; _local39 = "6#l,125.65,93.90,77.70,45.30,0|ec,392.15,35.50,849.00,38.50,0|ec,390.50,545.35,860.10,39.50,0|ec,-20.30,295.70,38.50,542.05,0|ec,799.15,293.15,39.50,539.50,0|ec,663.35,147.25,180.60,38.50,0|ec,632.90,287.65,106.20,38.50,0|ec,570.30,296.15,38.50,336.20,0|me,736.15,434.90,48.80,48.80,0|ec,71.05,303.75,42.50,340.20,0|cm,338.45,319.85,46.00,46.00,0|cm,372.30,353.70,46.00,46.00,0|cm,617.70,213.20,46.00,46.00,0|ec,130.30,152.30,92.70,38.50,0|ec,192.50,187.85,93.40,39.40,43.87|ec,220.85,253.85,94.05,40.25,87.24|ec,213.65,346.90,94.95,41.20,99.53|ec,184.45,420.95,95.55,42.05,131.61|ec,129.85,451.85,93.70,39.50,0|ec,402.80,295.30,42.45,339.70,-27.58|ec,327.85,297.00,43.50,341.20,0|ec,481.45,293.65,44.50,342.20,0|cn,328.30,89.70,41.00,41.00,0|cm,50.75,495.85,46.00,46.00,0|av,23.70,184.45,23.50,45.95,0|ci,494.15,84.60,41.00,41.00,179.25|ci,571.60,478.95,42.00,42.00,179.25|ah,749.65,286.00,46.00,23.50,0|ci,572.85,507.65,43.00,43.00,176.56|"; _local40 = "6#l,606.20,116.35,77.70,45.30,0|de,492.90,311.30,247.05,247.05,0|ec,129.70,454.65,797.70,38.50,0|ec,122.55,136.90,798.70,39.50,0|me,81.90,374.10,48.80,48.80,0|ee,553.00,453.25,55.40,55.40,0|"; _local41 = "6#ec,315.40,196.60,162.75,18.95,-21.03|ec,472.40,197.95,177.20,19.30,19.28|ec,570.75,273.10,387.10,16.30,-38.57|ec,140.60,289.45,348.10,13.25,44.87|ec,430.10,398.65,65.80,38.50,0|dc,411.00,314.00,19.35,130.75,1.25|mr,404.15,223.90,46.00,46.00,0|ee,447.85,223.90,39.00,39.00,0|ee,450.55,264.90,39.00,39.00,0|ee,382.25,293.55,39.00,39.00,0|l,391.80,121.50,77.70,45.30,0|"; _local42 = "6#dc,343.25,375.60,391.40,14.85,-19.78|ee,352.70,397.10,39.00,39.00,0|ec,319.00,476.50,638.90,38.50,0|ee,350.05,336.50,39.00,39.00,0|mr,173.65,403.85,46.00,46.00,0|ec,131.90,429.40,38.50,54.80,0|ec,350.00,226.15,38.50,213.40,0|ee,446.90,300.20,39.00,39.00,0|ec,418.65,246.35,95.10,105.80,0|ec,207.30,293.45,245.80,38.50,0|ec,20.15,363.40,38.50,186.60,0|l,730.90,301.50,77.70,45.30,0|ec,352.70,428.05,38.50,65.50,0|ec,554.25,268.55,42.30,98.80,0|ec,572.10,397.10,40.45,181.30,-13.01|ee,130.55,312.30,52.50,52.50,0|ee,130.55,403.80,39.00,39.00,0|"; _local43 = "6#ec,125.20,292.75,38.50,454.90,0|ec,389.25,538.15,556.20,38.50,0|ec,649.85,294.45,38.50,441.30,0|ec,600.75,58.50,723.50,38.50,0|ec,257.20,228.40,38.50,302.60,0|ec,380.80,399.35,207.60,38.50,0|ec,507.70,307.95,38.50,143.40,0|ec,431.55,214.90,113.00,38.50,0|ec,358.75,269.10,38.50,65.60,0|me,429.85,277.50,48.80,48.80,0|l,730.65,271.65,77.70,45.30,0|ci,380.25,594.00,41.00,41.00,179.45|ci,722.25,585.00,41.00,41.00,-179.46|ci,56.25,623.25,41.00,41.00,-92.01|ci,56.25,335.25,41.00,41.00,-91.22|ci,67.50,29.25,41.00,41.00,0|ci,562.50,583.85,42.00,42.00,179.49|ci,207.00,600.75,43.00,43.00,179.5|ci,54.00,471.35,42.00,42.00,-92.01|ci,58.50,186.75,43.00,43.00,-92|dc,184.50,479.25,65.60,66.15,0|dc,434.25,154.10,66.60,67.15,0|dc,312.75,348.75,67.60,68.15,0|ci,195.75,28.10,42.00,42.00,88.66|de,416.25,477.00,39.00,39.00,0|de,573.75,474.75,39.00,39.00,0|de,324.00,173.25,39.00,39.00,0|de,580.50,211.50,39.00,39.00,0|de,594.00,364.50,39.00,39.00,0|ec,157.50,222.75,38.50,38.50,0|ec,227.25,220.50,38.50,38.50,0|"; _local44 = "6#mc,382.30,301.55,46.00,46.00,0|dc,382.00,345.00,38.50,38.50,0|dc,382.00,257.00,38.50,38.50,0|dc,339.00,302.00,38.50,38.50,0|dc,424.00,302.00,38.50,38.50,0|dc,339.00,260.00,38.50,38.50,0|dc,424.00,258.00,38.50,38.50,0|dc,339.00,345.00,38.50,38.50,0|dc,424.00,348.00,38.50,38.50,0|dc,299.00,301.00,38.50,38.50,0|dc,467.00,302.00,38.50,38.50,0|dc,382.00,214.00,38.50,38.50,0|dc,381.00,389.00,38.50,38.50,0|dc,297.00,260.00,38.50,38.50,0|dc,339.00,216.00,38.50,38.50,0|dc,423.00,217.00,38.50,38.50,0|dc,467.00,259.00,38.50,38.50,0|dc,380.00,172.00,38.50,38.50,0|dc,255.00,300.00,38.50,38.50,0|dc,512.00,303.00,38.50,38.50,0|ee,340.00,385.00,39.00,39.00,0|ee,382.00,432.00,39.00,39.00,0|ee,423.00,389.00,39.00,39.00,0|ec,248.00,343.00,132.50,38.50,0|ec,518.00,345.00,133.50,39.50,0|l,274.00,405.00,77.70,45.30,0|ec,605.00,192.00,38.50,342.50,0|ec,162.00,190.00,39.50,343.50,0|ec,383.25,36.75,465.50,38.50,0|"; _local45 = "6#ec,322.25,271.75,16.00,88.70,0|l,393.00,273.00,77.70,45.30,0|ec,369.25,221.75,113.00,12.00,0|ec,372.25,321.75,114.00,13.00,0|ec,474.25,268.75,17.00,179.70,0|ec,377.25,182.75,208.00,13.00,0|ec,267.25,223.75,13.00,71.70,0|ec,289.25,263.75,56.00,13.00,0|ec,268.25,330.75,14.00,60.70,0|ec,372.25,361.75,209.00,13.95,0|ec,393.25,388.75,15.00,61.70,0|ec,459.25,415.75,115.00,13.95,0|ec,525.25,279.75,14.00,282.70,0|ec,375.25,132.75,319.00,13.95,0|ec,216.70,278.70,16.00,270.70,0|ec,281.25,412.75,135.00,13.95,0|ec,377.25,469.75,438.00,14.95,0|ec,560.25,361.75,57.00,13.95,0|ec,587.25,417.75,16.00,112.70,0|ec,585.25,191.75,17.00,223.70,0|cm,291.00,229.00,46.00,46.00,0|ec,152.85,278.65,17.00,401.50,0|ec,369.90,75.70,439.00,15.95,0|ec,86.15,277.25,18.05,537.95,0|ec,181.35,540.85,199.40,14.95,0|ec,289.20,567.55,16.00,62.70,0|ec,502.65,539.35,289.80,15.95,0|ec,648.65,399.50,15.10,302.60,0|ec,623.40,187.10,58.00,14.95,0|ec,647.25,98.40,18.05,180.70,0|ec,503.70,5.00,313.10,16.95,0|ec,187.50,3.60,221.70,18.05,0|ec,367.05,602.15,701.40,18.85,0|ec,713.20,451.40,16.10,303.60,0|ec,683.60,308.25,59.00,15.95,0|ec,716.10,90.85,16.10,303.60,0|ec,10.80,280.15,19.00,662.95,0|cm,682.25,348.80,47.00,47.00,0|cm,247.15,567.50,48.00,48.00,0|ec,362.80,-57.35,702.40,19.85,0|me,749.85,270.50,48.80,48.80,0|"; _local46 = "7#ec,426.00,203.40,19.40,142.30,0|ec,425.30,442.70,20.40,143.30,0|dc,492.90,285.35,230.15,18.90,0|dc,499.40,360.75,231.15,19.90,0|mc,497.00,323.55,46.00,46.00,0|ec,570.35,203.75,20.40,143.30,0|ec,569.70,444.40,21.40,144.30,0|ec,425.65,323.25,22.40,47.00,0|ec,568.65,322.20,23.40,48.00,0|l,167.90,307.20,77.70,45.30,0|ec,458.75,165.20,84.55,16.60,29.31|ec,540.30,213.30,85.15,17.55,-45.88|ci,469.65,443.70,41.00,41.00,88.49|ci,522.55,442.70,42.00,42.00,88.49|cm,495.65,400.05,46.00,46.00,0|"; _local47 = "7#l,69.60,331.80,77.70,45.30,0|ec,564.70,479.25,421.30,12.00,0|dc,468.00,293.75,38.50,38.50,0|dc,468.00,255.25,38.50,38.50,0|dc,536.00,337.50,38.50,38.50,0|dc,468.25,216.25,38.50,38.50,0|dc,536.00,298.25,38.50,38.50,0|dc,534.00,376.25,38.50,38.50,0|de,456.05,367.30,39.00,39.00,0|de,380.90,450.60,39.00,39.00,0|mr,527.70,107.00,46.00,46.00,0|ec,432.45,402.50,280.30,12.00,0|ec,366.15,325.75,243.40,12.00,0|dc,537.00,260.00,38.50,38.50,0|dc,536.00,221.00,38.50,38.50,0|dc,536.00,182.00,38.50,38.50,0|ec,383.25,248.75,108.40,12.00,0|de,404.00,287.25,40.00,40.00,0|dc,467.00,175.00,38.50,38.50,0|dc,597.00,454.00,38.50,38.50,0|dc,597.00,415.00,38.50,38.50,0|dc,597.00,376.00,38.50,38.50,0|dc,597.00,338.00,38.50,38.50,0|dc,596.00,299.00,38.50,38.50,0|dc,595.00,260.00,38.50,38.50,0|dc,596.00,219.00,38.50,38.50,0|dc,596.00,179.00,38.50,38.50,0|dc,532.00,147.00,158.85,15.10,0|ec,426.70,117.10,14.20,103.10,0|ec,631.35,73.00,389.00,13.00,0|ec,765.60,237.,12.50,308.70,0|"; _local48 = "7#ec,247.70,499.40,38.50,38.50,0|ec,-10.75,498.05,38.50,38.50,0|av,123.80,358.05,242.30,40.40,0|ec,-8.45,315.65,39.50,39.50,0|ec,567.70,315.65,669.50,39.50,0|l,548.90,450.60,77.70,45.30,0|ci,150.75,310.95,40.70,40.70,-59.24|ci,84.45,311.60,41.80,41.80,-63.82|me,471.15,266.50,48.80,48.80,0|ec,403.80,220.75,38.50,148.90,0|ah,643.40,183.10,118.70,23.50,0|ec,819.80,69.95,237.30,38.45,-42.86|ec,875.25,196.70,38.50,95.10,0|"; _local49 = "7#de,654.20,87.50,39.00,39.00,0|ec,234.20,234.20,181.70,20.90,11.01|ee,6.70,243.65,39.00,39.00,0|ee,96.90,226.15,30.90,30.90,0|ee,32.25,265.15,38.75,38.75,24.79|ee,98.25,380.95,30.90,30.90,0|ec,375.55,123.80,552.45,17.40,-1.56|l,724.25,305.55,77.70,45.30,0|ec,248.70,317.00,254.10,20.40,11.01|ec,291.40,407.85,355.90,21.45,11.01|ec,322.05,497.40,397.60,22.45,11.01|ec,551.95,332.45,60.10,265.75,-31.32|ec,642.10,522.30,426.20,25.10,0|ee,687.85,498.05,60.60,60.60,0|de,100.95,258.45,39.00,39.00,0|de,103.60,344.60,39.00,39.00,0|mr,119.80,425.40,46.00,46.00,0|de,99.60,184.40,39.00,39.00,-6.08|ec,123.80,216.70,54.70,22.30,0|ec,114.40,293.45,30.40,22.30,0|ec,113.05,374.25,25.00,22.30,0|ec,121.15,459.00,22.40,25.00,0|ee,107.65,300.15,30.90,30.90,0|ee,-6.55,387.60,38.90,38.90,6.82|ee,2.45,422.15,38.90,38.90,-3.25|ee,26.30,446.80,39.00,39.00,1.75|ec,17.65,133.15,62.60,116.40,9.01|ee,32.30,296.15,39.00,39.00,0|ci,485.95,437.50,41.00,41.00,-119.62|ci,518.25,436.15,41.00,41.00,-115.47|ci,556.00,434.80,41.00,41.00,-110.92|ci,150.75,179.00,41.00,41.00,0|ci,208.65,273.30,41.00,41.00,0|ci,259.75,367.50,41.00,41.00,0|ec,267.85,257.10,105.00,22.45,11.51|ec,318.65,347.95,105.60,23.40,11.51|ec,420.65,137.30,413.85,24.30,-1.5|ci,599.00,491.35,41.00,41.00,-22.91|ee,721.55,79.40,95.60,95.60,0|ee,51.35,468.60,39.00,39.00,0|"; _local50 = "7#dc,388.50,155.50,802.65,26.15,0|dc,313.35,223.95,639.20,27.15,0|dc,220.70,296.40,459.70,28.15,0|dc,157.05,367.75,332.35,29.15,0|dc,93.35,443.20,200.95,24.50,0|ee,148.55,407.45,39.00,39.00,0|ee,145.75,331.00,39.00,39.00,0|ee,147.05,258.90,39.00,39.00,0|ee,148.55,186.80,39.00,39.00,0|ec,-22.05,189.75,97.30,38.50,0|ec,-24.25,260.00,98.30,39.50,0|ec,-23.50,333.20,99.30,40.50,0|ec,-21.30,407.85,100.30,41.50,0|ec,-22.05,481.05,101.30,42.50,0|ec,-42.50,117.05,98.30,39.50,0|ec,812.90,120.00,99.30,40.50,0|ec,860.25,188.25,381.80,37.50,0|ec,775.40,260.20,536.20,42.50,0|ec,710.50,331.50,653.50,37.50,0|ec,662.75,405.75,720.00,44.50,0|ec,641.05,478.45,934.00,45.50,0|ee,294.95,332.10,40.00,40.00,0|ee,292.75,259.65,41.00,41.00,0|ee,290.55,190.10,42.00,42.00,0|ee,428.10,189.75,43.00,43.00,0|ee,427.35,258.55,44.00,44.00,0|ec,810.05,293.05,38.50,458.60,0|ec,-88.25,302.85,39.50,459.60,0|l,104.80,489.90,77.70,45.30,0|ec,-130.60,48.80,721.00,45.50,0|ec,249.90,23.50,40.50,153.30,0|mr,54.20,119.30,46.00,46.00,0|"; _local51 = "7#ec,212.25,137.20,141.40,137.10,0|ec,416.25,136.75,142.40,138.10,0|ec,620.15,138.15,143.40,139.10,0|ec,113.00,279.00,339.50,61.00,0|ec,417.20,282.35,145.40,62.05,0|ec,622.25,323.30,146.40,142.10,0|ec,212.70,511.30,147.40,143.10,0|l,76.30,138.50,77.70,45.30,0|dc,214.80,227.55,38.50,38.50,0|dc,207.75,416.95,38.50,38.50,0|dc,415.55,227.55,38.50,38.50,0|dc,416.95,415.50,38.50,38.50,0|dc,626.15,415.55,38.50,38.50,0|dc,623.35,228.95,38.50,38.50,0|ec,109.25,366.00,340.50,61.95,0|ec,417.60,361.70,146.40,51.60,0|dc,180.90,322.25,259.60,21.05,0|ee,715.95,231.05,39.00,39.00,0|ee,716.05,420.45,39.00,39.00,0|ec,-11.70,321.75,116.80,38.50,0|ec,411.95,466.10,147.40,52.60,0|ec,414.30,550.30,146.40,63.05,0|dc,582.85,506.00,211.40,22.05,0|ec,619.15,465.40,148.40,53.60,0|ec,618.75,550.95,147.40,64.05,0|ec,751.45,510.85,117.80,146.50,0|me,517.90,611.65,48.80,48.80,0|ee,518.75,46.85,40.00,40.00,0|ee,315.25,45.20,41.00,41.00,0|ee,-21.35,216.20,42.00,42.00,0|ee,-22.60,104.40,43.00,43.00,0|ee,-12.30,43.55,44.00,44.00,0|ee,52.20,43.55,45.00,45.00,0|ee,113.45,43.55,46.00,46.00,0|ee,-22.15,157.00,44.00,44.00,0|ee,105.65,418.45,43.00,43.00,0|ee,321.45,599.30,44.00,44.00,0|cm,520.15,141.60,46.00,46.00,0|cm,315.05,544.60,46.00,46.00,0|"; _local52 = "7#ah,769.05,625.75,288.40,60.40,0|ah,393.80,38.80,179.10,167.40,0|l,3.05,325.40,77.70,45.30,0|av,596.50,387.70,198.40,53.35,0|ec,258.30,437.15,887.60,38.50,0|ec,183.75,142.85,668.80,39.50,0|ec,-95.80,359.00,42.40,947.50,0|ec,945.10,332.00,43.40,948.50,0|cp,525.10,41.50,41.00,41.00,0|ec,718.05,288.20,38.50,400.00,0|ci,715.55,51.30,41.00,41.00,0|ci,774.20,51.25,41.00,41.00,2.28|ci,835.15,53.85,41.00,41.00,77.62|ec,371.20,224.65,189.90,121.50,0|dc,362.25,389.25,38.50,38.50,0.25|dc,235.25,390.50,38.50,38.50,0|dc,160.45,394.25,39.50,39.50,0|dc,294.25,390.25,38.50,38.50,0|mc,53.50,591.65,46.00,46.00,0|ec,65.75,634.85,147.30,38.50,0|cp,-51.25,588.60,41.00,41.00,0|ec,851.25,484.20,138.90,38.50,0|ec,10.30,601.95,38.60,23.80,0|cm,864.60,566.55,46.00,46.00,0|"; _local53 = "8#l,721.55,115.75,77.70,45.30,0|ec,220.75,82.10,431.50,30.40,0|mr,477.90,130.55,46.00,46.00,0|ec,395.40,170.25,432.50,31.40,0|dc,561.30,111.70,100.60,80.55,0|ec,526.35,37.70,181.20,38.50,0|ec,207.30,250.35,210.80,38.50,0|ee,88.80,191.15,67.05,67.15,-18.03|ee,413.25,332.45,106.30,106.30,0|ec,592.25,317.65,38.50,256.50,0|ci,702.70,230.15,41.00,41.00,88.9|ci,677.10,496.75,41.00,41.00,178.99|ci,432.10,494.05,41.00,41.00,-172.73|ci,152.10,433.45,41.00,41.00,-25.25|ci,566.35,497.35,42.00,42.00,179|ci,289.10,483.95,42.00,42.00,-161.52|ec,635.35,59.20,38.50,68.20,0|"; _local54 = "8#dc,193.75,296.25,38.50,282.95,0|dc,581.55,380.90,335.00,20.65,12.81|ec,242.70,547.85,140.05,144.30,0|mr,191.25,132.00,46.00,46.00,0|l,332.50,424.00,77.70,45.30,0|dc,193.80,457.70,38.50,38.50,0|ec,371.40,212.75,305.15,19.45,12.26|ee,235.55,387.65,39.00,39.00,0|ee,148.05,351.30,39.00,39.00,0|ec,415.95,304.20,196.05,19.60,-25.54|ee,570.10,401.15,18.20,18.20,0|ec,763.25,488.65,38.50,157.00,0|de,487.05,484.95,77.75,77.80,0|ec,615.45,490.30,312.75,24.25,-21.78|ee,440.00,524.60,39.00,39.00,0|ci,438.85,328.45,41.00,41.00,144.66|ci,492.65,341.90,41.00,41.00,136.39|ci,542.50,354.00,41.00,41.00,147.19|ec,336.75,546.60,55.40,38.50,0|ci,621.90,352.00,41.90,41.90,147.18|ci,672.30,362.15,42.80,42.80,147.18|ci,726.05,380.35,43.80,43.80,147.18|ec,235.55,281.30,38.50,140.80,0|ec,83.45,399.75,28.85,114.05,51.66|"; _local55 = "8#ec,126.95,151.55,302.55,16.65,-27.56|ec,631.45,131.40,302.85,17.65,20.06|ec,139.25,466.25,303.55,18.65,20.04|ec,641.05,441.35,303.15,17.65,-27.55|ec,370.00,77.80,210.60,13.90,0|ec,-1.35,316.75,13.90,166.90,0|ec,773.80,280.25,14.90,167.90,0|dc,341.85,293.30,22.05,419.40,0|dc,438.85,295.20,23.05,420.40,0|dc,397.35,514.75,189.10,16.10,0|ec,399.20,561.45,157.90,72.00,0|mc,388.00,389.85,46.00,46.00,0|l,82.10,255.55,77.70,45.30,0|ee,253.70,231.30,39.00,39.00,0|ee,253.70,367.45,39.00,39.00,0|ee,535.35,216.35,39.00,39.00,0|ee,529.75,380.50,39.00,39.00,0|"; _local56 = "8#ec,381.80,471.95,19.90,127.20,0|ec,473.80,336.40,20.90,439.50,90|ec,385.80,196.50,20.90,133.90,0|ec,168.75,320.15,21.20,93.40,0|ec,572.20,199.05,22.20,117.50,0|ec,197.20,224.60,21.75,92.70,32.07|ec,273.35,146.75,22.75,93.45,57.93|ec,196.85,410.65,22.55,92.90,140.14|ec,306.10,393.35,23.50,93.75,140.15|ci,295.70,465.85,41.00,41.00,-128.94|ec,148.55,529.25,451.00,38.50,0|l,79.30,373.55,77.70,45.30,0|av,481.70,237.95,130.30,45.95,0|ec,546.95,114.25,21.90,440.50,90|ci,724.00,324.50,41.00,41.00,90.83|ci,723.65,274.00,42.00,42.00,90.77|ci,724.75,219.20,43.00,43.00,90.76|ec,673.55,421.15,38.50,139.50,0|ec,779.90,301.05,39.50,391.50,0|dc,324.50,278.35,87.65,79.80,0|mc,725.50,461.50,46.00,46.00,0|dc,724.00,509.10,296.00,17.75,0|ec,629.05,544.10,71.00,38.50,0|ec,813.45,543.25,72.00,39.50,0|"; _local57 = "8#ec,390.80,656.95,1191.30,28.70,0|l,63.45,476.25,77.70,45.30,0|dc,161.80,598.50,67.90,71.90,0|ec,286.05,543.70,367.20,26.20,0|ec,687.75,586.30,200.80,119.60,0|ec,552.80,500.65,68.00,107.90,0|dc,352.95,493.00,75.10,71.70,0|ec,461.00,431.60,408.80,27.20,0|ec,97.15,432.85,194.80,32.20,0|ec,125.60,488.80,38.50,83.10,0|dc,132.00,378.85,76.10,72.70,0|ec,294.05,326.40,409.80,28.20,0|ec,155.35,219.95,354.50,29.20,0|dc,310.40,272.40,77.10,73.70,0|ec,13.40,324.75,50.20,29.20,0|ec,668.85,325.75,184.20,30.20,0|ec,797.65,431.55,185.20,187.20,0|cm,648.35,487.25,46.00,46.00,0|ec,570.40,220.90,355.50,30.20,0|mc,29.00,91.45,46.00,46.00,0|ec,39.90,41.90,74.30,38.50,0|ec,183.30,41.60,75.30,39.50,0|ec,331.10,42.65,76.30,40.50,0|ec,485.70,39.60,77.30,41.50,0|ec,635.20,39.90,78.30,42.50,0|ec,329.70,133.10,721.40,30.20,0|cm,35.50,176.10,46.00,46.00,0|dc,445.15,179.85,94.55,43.80,0|ec,850.25,150.90,79.30,376.60,0|ec,-21.15,290.10,39.50,800.10,0|ec,769.70,41.60,79.30,43.50,0|"; _local58 = "8#de,159.40,405.80,99.55,99.55,0|de,430.05,409.90,100.55,100.55,0|ec,292.55,439.65,180.00,18.70,0|ec,500.05,435.20,43.80,19.70,0|ec,67.10,439.55,80.10,20.70,0|ec,33.90,404.25,15.90,75.20,0|ec,47.35,364.65,47.20,16.00,0|ec,108.45,317.95,122.15,21.45,-44.37|ec,253.30,272.75,206.30,19.70,0|ec,381.60,299.65,122.20,22.25,-146.92|ec,480.55,340.65,122.55,23.15,-168.43|ec,555.85,391.85,105.50,18.15,-106.07|ec,292.15,349.15,208.20,12.00,0|dc,260.75,311.25,13.05,45.25,0|av,278.60,637.85,254.40,23.50,0|ec,283.30,671.15,38.50,38.50,0|mr,226.00,313.00,46.00,46.00,0|l,679.85,194.40,77.70,45.30,0|ee,-4.60,598.10,291.30,291.30,0|ee,558.45,651.85,263.30,263.30,0|cm,50.50,320.85,46.00,46.00,0|cm,76.45,402.75,46.00,46.00,0|cm,520.20,390.45,46.00,46.00,0|"; _local59 = "8#l,106.45,305.80,77.70,45.30,0|ec,510.65,457.40,215.90,16.60,0|ah,659.45,424.60,46.00,48.20,0|ec,752.30,424.65,38.50,38.50,0|dc,221.20,233.45,77.20,17.25,0|ee,379.50,236.20,52.70,52.70,0|ee,285.30,296.30,55.40,55.40,0|ee,378.20,337.25,58.10,58.10,0|ee,292.15,401.40,52.60,52.60,0|mr,281.25,219.80,46.00,46.00,0|ec,238.95,178.85,41.20,95.80,0|ec,381.60,146.40,329.40,48.10,3.75|ec,465.55,255.30,183.20,224.30,0|ec,255.25,345.40,68.50,205.20,0|ec,759.15,227.30,352.30,39.80,-74.98|ee,270.35,475.15,39.00,39.00,0|"; _local60 = "8#ec,419.25,89.75,479.20,17.00,0|ec,380.60,508.20,559.10,18.05,0|ec,649.00,298.75,19.70,399.30,0|ec,100.60,296.75,20.70,400.30,0|mc,613.50,476.50,46.00,46.00,0|dc,542.60,473.80,88.35,46.15,0|ec,615.10,385.55,46.50,134.50,0|ec,322.25,316.00,170.50,38.50,0|ec,432.75,466.50,40.50,102.50,0|ec,219.60,335.40,36.50,148.50,0|dc,191.75,243.75,158.85,38.50,0|dc,566.25,383.25,48.55,136.95,0|dc,598.25,142.50,90.65,85.15,0|ec,497.85,433.20,87.50,35.80,0|dc,593.00,292.25,93.35,45.10,0|ec,353.25,433.75,116.50,36.50,0|ec,424.00,203.50,440.50,38.50,0|ec,452.00,297.50,89.50,43.50,0|ec,463.00,340.50,157.50,47.50,0|ec,425.00,253.50,46.50,134.50,0|ec,641.00,246.50,89.50,43.50,0|l,709.10,476.60,77.70,45.30,0|cm,704.65,98.55,46.00,46.00,0|cm,154.45,141.20,46.00,46.00,0|cm,148.55,336.85,46.00,46.00,0|cm,316.30,475.10,46.00,46.00,0|cn,379.55,144.15,41.00,41.00,0|ci,766.45,264.80,40.90,40.90,-105.78|cn,33.80,94.10,41.00,41.00,0|cn,39.70,361.90,41.00,41.00,0|cn,475.15,475.15,41.00,41.00,0|cn,379.55,475.15,41.00,41.00,0|cn,267.00,376.00,41.00,41.00,0|"; datos = ["", _local1, _local2, _local3, _local4, _local5, _local6, _local7, _local8, _local9, _local10, _local11, _local12, _local13, _local14, _local15, _local16, _local17, _local18, _local19, _local20, _local21, _local22, _local23, _local24, _local25, _local26, _local27, _local28, _local29, _local30, _local31, _local32, _local33, _local34, _local35, _local36, _local37, _local38, _local39, _local40, _local41, _local42, _local43, _local44, _local45, _local46, _local47, _local48, _local49, _local50, _local51, _local52, _local53, _local54, _local55, _local56, _local57, _local58, _local59, _local60]; } } }//package
Section 274
//CatalogoObjetos (CatalogoObjetos) package { public class CatalogoObjetos { public const AUTONOMO_VERTICAL:String = "av"; public const DUMMY:String = "d"; public const META_REDONDA:String = "mr"; public const LANZADERA:String = "l"; public const CIRCULO_NEGATIVO:String = "cn"; public const ESTATICO_CIRCULO:String = "ee"; public const CIRCULO_POSITIVO:String = "cp"; public const META_ESTATICA:String = "me"; public const DINAMICO_CIRCULO:String = "de"; public const DINAMICO_CUADRADO:String = "dc"; public const AUTONOMO_HORIZONTAL:String = "ah"; public const ESTATICO_CUADRADO:String = "ec"; public const CIRCULO_MONEDA:String = "cm"; public const CIRCULO_IMPULSOR:String = "ci"; public const META_CUADRADA:String = "mc"; } }//package
Section 275
//CellRenderer_disabledSkin (CellRenderer_disabledSkin) package { import flash.display.*; public dynamic class CellRenderer_disabledSkin extends MovieClip { } }//package
Section 276
//CellRenderer_downSkin (CellRenderer_downSkin) package { import flash.display.*; public dynamic class CellRenderer_downSkin extends MovieClip { } }//package
Section 277
//CellRenderer_overSkin (CellRenderer_overSkin) package { import flash.display.*; public dynamic class CellRenderer_overSkin extends MovieClip { } }//package
Section 278
//CellRenderer_selectedDisabledSkin (CellRenderer_selectedDisabledSkin) package { import flash.display.*; public dynamic class CellRenderer_selectedDisabledSkin extends MovieClip { } }//package
Section 279
//CellRenderer_selectedDownSkin (CellRenderer_selectedDownSkin) package { import flash.display.*; public dynamic class CellRenderer_selectedDownSkin extends MovieClip { } }//package
Section 280
//CellRenderer_selectedOverSkin (CellRenderer_selectedOverSkin) package { import flash.display.*; public dynamic class CellRenderer_selectedOverSkin extends MovieClip { } }//package
Section 281
//CellRenderer_selectedUpSkin (CellRenderer_selectedUpSkin) package { import flash.display.*; public dynamic class CellRenderer_selectedUpSkin extends MovieClip { } }//package
Section 282
//CellRenderer_upSkin (CellRenderer_upSkin) package { import flash.display.*; public dynamic class CellRenderer_upSkin extends MovieClip { } }//package
Section 283
//CheckBox_disabledIcon (CheckBox_disabledIcon) package { import flash.display.*; public dynamic class CheckBox_disabledIcon extends MovieClip { } }//package
Section 284
//CheckBox_downIcon (CheckBox_downIcon) package { import flash.display.*; public dynamic class CheckBox_downIcon extends MovieClip { } }//package
Section 285
//CheckBox_overIcon (CheckBox_overIcon) package { import flash.display.*; public dynamic class CheckBox_overIcon extends MovieClip { } }//package
Section 286
//CheckBox_selectedDisabledIcon (CheckBox_selectedDisabledIcon) package { import flash.display.*; public dynamic class CheckBox_selectedDisabledIcon extends MovieClip { } }//package
Section 287
//CheckBox_selectedDownIcon (CheckBox_selectedDownIcon) package { import flash.display.*; public dynamic class CheckBox_selectedDownIcon extends MovieClip { } }//package
Section 288
//CheckBox_selectedOverIcon (CheckBox_selectedOverIcon) package { import flash.display.*; public dynamic class CheckBox_selectedOverIcon extends MovieClip { } }//package
Section 289
//CheckBox_selectedUpIcon (CheckBox_selectedUpIcon) package { import flash.display.*; public dynamic class CheckBox_selectedUpIcon extends MovieClip { } }//package
Section 290
//CheckBox_upIcon (CheckBox_upIcon) package { import flash.display.*; public dynamic class CheckBox_upIcon extends MovieClip { } }//package
Section 291
//circulo_estatico_1_mc (circulo_estatico_1_mc) package { import flash.display.*; public dynamic class circulo_estatico_1_mc extends MovieClip { } }//package
Section 292
//circulo_estatico_2_mc (circulo_estatico_2_mc) package { import flash.display.*; public dynamic class circulo_estatico_2_mc extends MovieClip { } }//package
Section 293
//circulo_estatico_3_mc (circulo_estatico_3_mc) package { import flash.display.*; public dynamic class circulo_estatico_3_mc extends MovieClip { } }//package
Section 294
//circulo_impulsor_e_mc (circulo_impulsor_e_mc) package { import flash.display.*; public dynamic class circulo_impulsor_e_mc extends MovieClip { } }//package
Section 295
//circulo_impulsor_mc (circulo_impulsor_mc) package { import flash.display.*; public dynamic class circulo_impulsor_mc extends MovieClip { } }//package
Section 296
//circulo_impulsor_n_mc (circulo_impulsor_n_mc) package { import flash.display.*; public dynamic class circulo_impulsor_n_mc extends MovieClip { } }//package
Section 297
//circulo_impulsor_ne_mc (circulo_impulsor_ne_mc) package { import flash.display.*; public dynamic class circulo_impulsor_ne_mc extends MovieClip { } }//package
Section 298
//circulo_impulsor_no_mc (circulo_impulsor_no_mc) package { import flash.display.*; public dynamic class circulo_impulsor_no_mc extends MovieClip { } }//package
Section 299
//circulo_impulsor_o_mc (circulo_impulsor_o_mc) package { import flash.display.*; public dynamic class circulo_impulsor_o_mc extends MovieClip { } }//package
Section 300
//circulo_impulsor_s_mc (circulo_impulsor_s_mc) package { import flash.display.*; public dynamic class circulo_impulsor_s_mc extends MovieClip { } }//package
Section 301
//circulo_impulsor_se_mc (circulo_impulsor_se_mc) package { import flash.display.*; public dynamic class circulo_impulsor_se_mc extends MovieClip { } }//package
Section 302
//circulo_impulsor_so_mc (circulo_impulsor_so_mc) package { import flash.display.*; public dynamic class circulo_impulsor_so_mc extends MovieClip { } }//package
Section 303
//circulo_moneda_mc (circulo_moneda_mc) package { import flash.display.*; public dynamic class circulo_moneda_mc extends MovieClip { } }//package
Section 304
//circulo_negativo_mc (circulo_negativo_mc) package { import flash.display.*; public dynamic class circulo_negativo_mc extends MovieClip { } }//package
Section 305
//circulo_noestatico_1_mc (circulo_noestatico_1_mc) package { import flash.display.*; public dynamic class circulo_noestatico_1_mc extends MovieClip { } }//package
Section 306
//circulo_noestatico_2_mc (circulo_noestatico_2_mc) package { import flash.display.*; public dynamic class circulo_noestatico_2_mc extends MovieClip { } }//package
Section 307
//circulo_noestatico_3_mc (circulo_noestatico_3_mc) package { import flash.display.*; public dynamic class circulo_noestatico_3_mc extends MovieClip { } }//package
Section 308
//circulo_positivo_mc (circulo_positivo_mc) package { import flash.display.*; public dynamic class circulo_positivo_mc extends MovieClip { } }//package
Section 309
//click (click) package { import flash.media.*; public dynamic class click extends Sound { } }//package
Section 310
//colision_circulo_gris_mc (colision_circulo_gris_mc) package { import flash.display.*; public dynamic class colision_circulo_gris_mc extends MovieClip { } }//package
Section 311
//colision_circulo_interior_mc (colision_circulo_interior_mc) package { import flash.display.*; public dynamic class colision_circulo_interior_mc extends MovieClip { } }//package
Section 312
//colision_circulo_mc (colision_circulo_mc) package { import flash.display.*; public dynamic class colision_circulo_mc extends MovieClip { } }//package
Section 313
//colision_cuadrado_gris_mc (colision_cuadrado_gris_mc) package { import flash.display.*; public dynamic class colision_cuadrado_gris_mc extends MovieClip { } }//package
Section 314
//colision_cuadrado_interior_mc (colision_cuadrado_interior_mc) package { import flash.display.*; public dynamic class colision_cuadrado_interior_mc extends MovieClip { } }//package
Section 315
//colision_cuadrado_mc (colision_cuadrado_mc) package { import flash.display.*; public dynamic class colision_cuadrado_mc extends MovieClip { } }//package
Section 316
//ColorPicker_backgroundSkin (ColorPicker_backgroundSkin) package { import flash.display.*; public dynamic class ColorPicker_backgroundSkin extends MovieClip { } }//package
Section 317
//ColorPicker_colorWell (ColorPicker_colorWell) package { import flash.display.*; public dynamic class ColorPicker_colorWell extends MovieClip { } }//package
Section 318
//ColorPicker_disabledSkin (ColorPicker_disabledSkin) package { import flash.display.*; public dynamic class ColorPicker_disabledSkin extends MovieClip { } }//package
Section 319
//ColorPicker_downSkin (ColorPicker_downSkin) package { import flash.display.*; public dynamic class ColorPicker_downSkin extends MovieClip { } }//package
Section 320
//ColorPicker_overSkin (ColorPicker_overSkin) package { import flash.display.*; public dynamic class ColorPicker_overSkin extends MovieClip { } }//package
Section 321
//ColorPicker_swatchSelectedSkin (ColorPicker_swatchSelectedSkin) package { import flash.display.*; public dynamic class ColorPicker_swatchSelectedSkin extends MovieClip { } }//package
Section 322
//ColorPicker_swatchSkin (ColorPicker_swatchSkin) package { import flash.display.*; public dynamic class ColorPicker_swatchSkin extends Sprite { } }//package
Section 323
//ColorPicker_textFieldSkin (ColorPicker_textFieldSkin) package { import flash.display.*; public dynamic class ColorPicker_textFieldSkin extends MovieClip { } }//package
Section 324
//ColorPicker_upSkin (ColorPicker_upSkin) package { import flash.display.*; public dynamic class ColorPicker_upSkin extends MovieClip { } }//package
Section 325
//ComboBox_disabledSkin (ComboBox_disabledSkin) package { import flash.display.*; public dynamic class ComboBox_disabledSkin extends MovieClip { } }//package
Section 326
//ComboBox_downSkin (ComboBox_downSkin) package { import flash.display.*; public dynamic class ComboBox_downSkin extends MovieClip { } }//package
Section 327
//ComboBox_overSkin (ComboBox_overSkin) package { import flash.display.*; public dynamic class ComboBox_overSkin extends MovieClip { } }//package
Section 328
//ComboBox_upSkin (ComboBox_upSkin) package { import flash.display.*; public dynamic class ComboBox_upSkin extends MovieClip { } }//package
Section 329
//Congratulations (Congratulations) package { import flash.events.*; import flash.display.*; public class Congratulations extends Ventana { public var salir:SimpleButton; override protected function Cargar_Ventana():void{ salir.addEventListener(MouseEvent.CLICK, on_button_clicked); super.Cargar_Ventana(); } override protected function Descargar_Ventana():void{ salir.removeEventListener(MouseEvent.CLICK, on_button_clicked); super.Descargar_Ventana(); } public function on_button_clicked(_arg1:MouseEvent){ if (VariablesGlobales.soundMan){ VariablesGlobales.soundMan.playSound("click", 1, 0, 0); }; switch (_arg1.target.name){ case "salir": VariablesGlobales.musicMan.stopAllSounds(); main_class.abre_pantalla(new Niveles()); main_class.cierra_pantalla(this); break; default: trace((_arg1.target.name + " UNDEFINED")); break; }; } } }//package
Section 330
//Creditos (Creditos) package { import com.greensock.*; import flash.events.*; import flash.display.*; public class Creditos extends Ventana { public var sponsor:SimpleButton; public var atras:SimpleButton; function onFinishTweenInicio():void{ } override protected function Cargar_Ventana():void{ atras.addEventListener(MouseEvent.CLICK, on_button_clicked); sponsor.addEventListener(MouseEvent.CLICK, on_button_clicked); super.Cargar_Ventana(); this.x = -780; TweenLite.to(this, 1, {x:0, onComplete:onFinishTweenInicio}); } override protected function Descargar_Ventana():void{ atras.removeEventListener(MouseEvent.CLICK, on_button_clicked); super.Descargar_Ventana(); } public function on_button_clicked(_arg1:MouseEvent){ if (VariablesGlobales.soundMan){ VariablesGlobales.soundMan.playSound("click", 1, 0, 0); }; switch (_arg1.target.name){ case "atras": TweenLite.to(this, 1, {x:-780, onComplete:onFinishTweenFinal}); TweenLite.to(VariablesGlobales.PrincipalActual, 1, {x:0}); break; case "sponsor": VariablesGlobales.AbreWeb(VariablesGlobales.WEB_SPONSOR); break; default: trace((_arg1.target.name + " UNDEFINED")); break; }; } function onFinishTweenFinal():void{ main_class.cierra_pantalla(this); } } }//package
Section 331
//cuadrado_estatico_1_mc (cuadrado_estatico_1_mc) package { import flash.display.*; public dynamic class cuadrado_estatico_1_mc extends MovieClip { } }//package
Section 332
//cuadrado_estatico_2_mc (cuadrado_estatico_2_mc) package { import flash.display.*; public dynamic class cuadrado_estatico_2_mc extends MovieClip { } }//package
Section 333
//cuadrado_estatico_3_mc (cuadrado_estatico_3_mc) package { import flash.display.*; public dynamic class cuadrado_estatico_3_mc extends MovieClip { } }//package
Section 334
//cuadrado_horizontal_dinamico_mc (cuadrado_horizontal_dinamico_mc) package { import flash.display.*; public dynamic class cuadrado_horizontal_dinamico_mc extends MovieClip { } }//package
Section 335
//cuadrado_noestatico_1_mc (cuadrado_noestatico_1_mc) package { import flash.display.*; public dynamic class cuadrado_noestatico_1_mc extends MovieClip { } }//package
Section 336
//cuadrado_noestatico_2_mc (cuadrado_noestatico_2_mc) package { import flash.display.*; public dynamic class cuadrado_noestatico_2_mc extends MovieClip { } }//package
Section 337
//cuadrado_noestatico_3_mc (cuadrado_noestatico_3_mc) package { import flash.display.*; public dynamic class cuadrado_noestatico_3_mc extends MovieClip { } }//package
Section 338
//cuadrado_vertical_dinamico_mc (cuadrado_vertical_dinamico_mc) package { import flash.display.*; public dynamic class cuadrado_vertical_dinamico_mc extends MovieClip { } }//package
Section 339
//dinamico_circulo_editor_mc (dinamico_circulo_editor_mc) package { public dynamic class dinamico_circulo_editor_mc extends MovieClipEnmascarado { } }//package
Section 340
//dinamico_circulo_mc (dinamico_circulo_mc) package { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class dinamico_circulo_mc extends MovieClip { public var texture:MovieClip; public var myMask:MovieClip; public function dinamico_circulo_mc(){ addFrameScript(0, frame1); } function frame1(){ texture.mask = myMask; } } }//package
Section 341
//dinamico_cuadrado_editor_mc (dinamico_cuadrado_editor_mc) package { public dynamic class dinamico_cuadrado_editor_mc extends MovieClipEnmascarado { } }//package
Section 342
//dinamico_cuadrado_mc (dinamico_cuadrado_mc) package { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class dinamico_cuadrado_mc extends MovieClip { public var texture:MovieClip; public var myMask:MovieClip; public function dinamico_cuadrado_mc(){ addFrameScript(0, frame1); } function frame1(){ texture.mask = myMask; } } }//package
Section 343
//Dummy (Dummy) package { import Box2D.Dynamics.*; import Box2D.Collision.Shapes.*; import Box2D.Dynamics.Joints.*; import Box2D.Common.Math.*; import flash.display.*; import flash.geom.*; import mx.utils.*; import flash.utils.*; public class Dummy extends Actor { var upperArmR_mc:MovieClip; var lowerArmL_mc:MovieClip; private var posicion_inicial:b2Vec2; var lowerArmL:b2Body; var torso3_mc:MovieClip; var lowerArmR:b2Body; private var limiteSuperiorAlcanzado:Boolean;// = false var torso1:b2Body; var torso2:b2Body; var torso3:b2Body; var lowerLegR:b2Body; var upperLegR_mc:MovieClip; var upperArmL:b2Body; var torso2_mc:MovieClip; var lowerLegL:b2Body; var upperLegL_mc:MovieClip; var upperArmR:b2Body; var upperArmL_mc:MovieClip; var upperLegR:b2Body; private var padre:DisplayObjectContainer; var head_mc:MovieClip; var lowerArmR_mc:MovieClip; var torso1_mc:MovieClip; var head:b2Body; var upperLegL:b2Body; var escala_cuerpo:Number;// = 0.4 public var lanzadera_origen:Lanzadera; var lowerLegL_mc:MovieClip; var lowerLegR_mc:MovieClip; public function Dummy(_arg1:DisplayObjectContainer, _arg2:Point, _arg3:Number, _arg4:Number, _arg5:int=1){ var _local6:Number; var _local7:Number; var _local8:Number; var _local9:b2BodyDef; var _local10:b2CircleDef; var _local11:b2PolygonDef; var _local12:b2RevoluteJointDef; var _local13:Number; var _local14:Number; var _local15:Array; escala_cuerpo = 0.4; limiteSuperiorAlcanzado = false; padre = _arg1; posicion_inicial = new b2Vec2((_arg2.x / VariablesGlobales.RATIO), (_arg2.y / VariablesGlobales.RATIO)); _local6 = 0.1; _local7 = 0.4; _local8 = 0.3; _local10 = new b2CircleDef(); _local11 = new b2PolygonDef(); _local12 = new b2RevoluteJointDef(); _local13 = _arg2.x; _local14 = _arg2.y; if ((((((((VariablesGlobales.nivelOnline == false)) && ((VariablesGlobales.nivelEditor == false)))) && ((VariablesGlobales.nivelDummy == false)))) && ((VariablesGlobales.dummyOnline == false)))){ VariablesGlobales.dummyPruebaActual = ""; }; if (VariablesGlobales.nivelDummy){ _arg5 = 1; }; if (VariablesGlobales.dummyOnline){ _arg5 = 1; }; _local10.radius = ((12.5 * escala_cuerpo) / VariablesGlobales.RATIO); _local10.density = _local6; _local10.friction = _local7; _local10.restitution = _local8; _local9 = new b2BodyDef(); _local9.position.Set((_local13 / VariablesGlobales.RATIO), (_local14 / VariablesGlobales.RATIO)); head = VariablesGlobales.mundo.CreateBody(_local9); head_mc = new cabeza(); head_mc.mouseEnabled = false; head_mc.mouseChildren = false; head_mc.gotoAndStop(_arg5); head_mc.scaleX = escala_cuerpo; head_mc.scaleY = escala_cuerpo; padre.addChild(head_mc); head.SetUserData(this); head.CreateShape(_local10); head.SetMassFromShapes(); padre.addChild(head_mc); super(head, head_mc); _local11.SetAsBox(((15 * escala_cuerpo) / VariablesGlobales.RATIO), ((10 * escala_cuerpo) / VariablesGlobales.RATIO)); _local11.density = _local6; _local11.friction = _local7; _local11.restitution = _local8; _local9 = new b2BodyDef(); _local9.position.Set((_local13 / VariablesGlobales.RATIO), ((_local14 + (28 * escala_cuerpo)) / VariablesGlobales.RATIO)); torso1 = VariablesGlobales.mundo.CreateBody(_local9); torso1_mc = new torso_superior(); torso1_mc.mouseEnabled = false; torso1_mc.mouseChildren = false; torso1_mc.gotoAndStop(_arg5); torso1_mc.scaleX = escala_cuerpo; torso1_mc.scaleY = escala_cuerpo; padre.addChild(torso1_mc); torso1.SetUserData(this); torso1.CreateShape(_local11); torso1.SetMassFromShapes(); _local9 = new b2BodyDef(); _local9.position.Set((_local13 / VariablesGlobales.RATIO), ((_local14 + (43 * escala_cuerpo)) / VariablesGlobales.RATIO)); torso2 = VariablesGlobales.mundo.CreateBody(_local9); torso2_mc = new torso_central(); torso2_mc.gotoAndStop(_arg5); torso2_mc.mouseEnabled = false; torso2_mc.mouseChildren = false; torso2_mc.scaleX = escala_cuerpo; torso2_mc.scaleY = escala_cuerpo; padre.addChild(torso2_mc); torso2.SetUserData(this); torso2.CreateShape(_local11); torso2.SetMassFromShapes(); _local9 = new b2BodyDef(); _local9.position.Set((_local13 / VariablesGlobales.RATIO), ((_local14 + (58 * escala_cuerpo)) / VariablesGlobales.RATIO)); torso3 = VariablesGlobales.mundo.CreateBody(_local9); torso3_mc = new torso_inferior(); torso3_mc.mouseEnabled = false; torso3_mc.mouseChildren = false; torso3_mc.gotoAndStop(_arg5); torso3_mc.scaleX = escala_cuerpo; torso3_mc.scaleY = escala_cuerpo; padre.addChild(torso3_mc); torso3.SetUserData(this); torso3.CreateShape(_local11); torso3.SetMassFromShapes(); _local11.SetAsBox(((18 * escala_cuerpo) / VariablesGlobales.RATIO), ((6.5 * escala_cuerpo) / VariablesGlobales.RATIO)); _local11.density = _local6; _local11.friction = _local7; _local11.restitution = _local8; _local9 = new b2BodyDef(); _local9.position.Set(((_local13 - (30 * escala_cuerpo)) / VariablesGlobales.RATIO), ((_local14 + (20 * escala_cuerpo)) / VariablesGlobales.RATIO)); upperArmL = VariablesGlobales.mundo.CreateBody(_local9); upperArmL_mc = new brazo_sup_i(); upperArmL_mc.gotoAndStop(_arg5); upperArmL_mc.mouseEnabled = false; upperArmL_mc.mouseChildren = false; upperArmL_mc.scaleX = escala_cuerpo; upperArmL_mc.scaleY = escala_cuerpo; padre.addChild(upperArmL_mc); upperArmL.SetUserData(this); upperArmL.CreateShape(_local11); upperArmL.SetMassFromShapes(); _local9.position.Set(((_local13 + (30 * escala_cuerpo)) / VariablesGlobales.RATIO), ((_local14 + (20 * escala_cuerpo)) / VariablesGlobales.RATIO)); upperArmR = VariablesGlobales.mundo.CreateBody(_local9); upperArmR_mc = new brazo_sup_d(); upperArmR_mc.gotoAndStop(_arg5); upperArmR_mc.mouseEnabled = false; upperArmR_mc.mouseChildren = false; upperArmR_mc.scaleX = escala_cuerpo; upperArmR_mc.scaleY = escala_cuerpo; padre.addChild(upperArmR_mc); upperArmR.SetUserData(this); upperArmR.CreateShape(_local11); upperArmR.SetMassFromShapes(); _local11.SetAsBox(((17 * escala_cuerpo) / VariablesGlobales.RATIO), ((6 * escala_cuerpo) / VariablesGlobales.RATIO)); _local11.density = _local6; _local11.friction = _local7; _local11.restitution = _local8; _local9 = new b2BodyDef(); _local9.position.Set(((_local13 - (57 * escala_cuerpo)) / VariablesGlobales.RATIO), ((_local14 + (20 * escala_cuerpo)) / VariablesGlobales.RATIO)); lowerArmL = VariablesGlobales.mundo.CreateBody(_local9); lowerArmL_mc = new brazo_inf_i(); lowerArmL_mc.gotoAndStop(_arg5); lowerArmL_mc.mouseEnabled = false; lowerArmL_mc.mouseChildren = false; lowerArmL_mc.scaleX = escala_cuerpo; lowerArmL_mc.scaleY = escala_cuerpo; padre.addChild(lowerArmL_mc); lowerArmL.SetUserData(this); lowerArmL.CreateShape(_local11); lowerArmL.SetMassFromShapes(); _local9.position.Set(((_local13 + (57 * escala_cuerpo)) / VariablesGlobales.RATIO), ((_local14 + (20 * escala_cuerpo)) / VariablesGlobales.RATIO)); lowerArmR = VariablesGlobales.mundo.CreateBody(_local9); lowerArmR_mc = new brazo_inf_d(); lowerArmR_mc.gotoAndStop(_arg5); lowerArmR_mc.mouseEnabled = false; lowerArmR_mc.mouseChildren = false; lowerArmR_mc.scaleX = escala_cuerpo; lowerArmR_mc.scaleY = escala_cuerpo; padre.addChild(lowerArmR_mc); lowerArmR.SetUserData(this); lowerArmR.CreateShape(_local11); lowerArmR.SetMassFromShapes(); _local11.SetAsBox(((7.5 * escala_cuerpo) / VariablesGlobales.RATIO), ((22 * escala_cuerpo) / VariablesGlobales.RATIO)); _local11.density = _local6; _local11.friction = _local7; _local11.restitution = _local8; _local9 = new b2BodyDef(); _local9.position.Set(((_local13 - (8 * escala_cuerpo)) / VariablesGlobales.RATIO), ((_local14 + (85 * escala_cuerpo)) / VariablesGlobales.RATIO)); upperLegL = VariablesGlobales.mundo.CreateBody(_local9); upperLegL_mc = new pierna_sup_i(); upperLegL_mc.gotoAndStop(_arg5); upperLegL_mc.mouseEnabled = false; upperLegL_mc.mouseChildren = false; upperLegL_mc.scaleX = escala_cuerpo; upperLegL_mc.scaleY = escala_cuerpo; padre.addChild(upperLegL_mc); upperLegL.SetUserData(this); upperLegL.CreateShape(_local11); upperLegL.SetMassFromShapes(); _local9.position.Set(((_local13 + (8 * escala_cuerpo)) / VariablesGlobales.RATIO), ((_local14 + (85 * escala_cuerpo)) / VariablesGlobales.RATIO)); upperLegR = VariablesGlobales.mundo.CreateBody(_local9); upperLegR_mc = new pierna_sup_d(); upperLegR_mc.gotoAndStop(_arg5); upperLegR_mc.mouseEnabled = false; upperLegR_mc.mouseChildren = false; upperLegR_mc.scaleX = escala_cuerpo; upperLegR_mc.scaleY = escala_cuerpo; padre.addChild(upperLegR_mc); upperLegR.SetUserData(this); upperLegR.CreateShape(_local11); upperLegR.SetMassFromShapes(); _local11.SetAsBox(((6 * escala_cuerpo) / VariablesGlobales.RATIO), ((20 * escala_cuerpo) / VariablesGlobales.RATIO)); _local11.density = _local6; _local11.friction = _local7; _local11.restitution = _local8; _local9 = new b2BodyDef(); _local9.position.Set(((_local13 - (8 * escala_cuerpo)) / VariablesGlobales.RATIO), ((_local14 + (120 * escala_cuerpo)) / VariablesGlobales.RATIO)); lowerLegL = VariablesGlobales.mundo.CreateBody(_local9); lowerLegL_mc = new pierna_inf_i(); lowerLegL_mc.gotoAndStop(_arg5); lowerLegL_mc.mouseEnabled = false; lowerLegL_mc.mouseChildren = false; lowerLegL_mc.scaleX = escala_cuerpo; lowerLegL_mc.scaleY = escala_cuerpo; padre.addChild(lowerLegL_mc); lowerLegL.SetUserData(this); lowerLegL.CreateShape(_local11); lowerLegL.SetMassFromShapes(); _local9.position.Set(((_local13 + (8 * escala_cuerpo)) / VariablesGlobales.RATIO), ((_local14 + (120 * escala_cuerpo)) / VariablesGlobales.RATIO)); lowerLegR = VariablesGlobales.mundo.CreateBody(_local9); lowerLegR_mc = new pierna_inf_d(); lowerLegR_mc.gotoAndStop(_arg5); lowerLegR_mc.mouseEnabled = false; lowerLegR_mc.mouseChildren = false; lowerLegR_mc.scaleX = escala_cuerpo; lowerLegR_mc.scaleY = escala_cuerpo; padre.addChild(lowerLegR_mc); lowerLegR.SetUserData(this); lowerLegR.CreateShape(_local11); lowerLegR.SetMassFromShapes(); _local12.enableLimit = true; _local12.lowerAngle = (-40 / (180 / Math.PI)); _local12.upperAngle = (40 / (180 / Math.PI)); _local12.Initialize(torso1, head, new b2Vec2((_local13 / VariablesGlobales.RATIO), ((_local14 + (15 * escala_cuerpo)) / VariablesGlobales.RATIO))); VariablesGlobales.mundo.CreateJoint(_local12); _local12.lowerAngle = (-85 / (180 / Math.PI)); _local12.upperAngle = (130 / (180 / Math.PI)); _local12.Initialize(torso1, upperArmL, new b2Vec2(((_local13 - (18 * escala_cuerpo)) / VariablesGlobales.RATIO), ((_local14 + (20 * escala_cuerpo)) / VariablesGlobales.RATIO))); VariablesGlobales.mundo.CreateJoint(_local12); _local12.lowerAngle = (-130 / (180 / Math.PI)); _local12.upperAngle = (85 / (180 / Math.PI)); _local12.Initialize(torso1, upperArmR, new b2Vec2(((_local13 + (18 * escala_cuerpo)) / VariablesGlobales.RATIO), ((_local14 + (20 * escala_cuerpo)) / VariablesGlobales.RATIO))); VariablesGlobales.mundo.CreateJoint(_local12); _local12.lowerAngle = (-130 / (180 / Math.PI)); _local12.upperAngle = (10 / (180 / Math.PI)); _local12.Initialize(upperArmL, lowerArmL, new b2Vec2(((_local13 - (45 * escala_cuerpo)) / VariablesGlobales.RATIO), ((_local14 + (20 * escala_cuerpo)) / VariablesGlobales.RATIO))); VariablesGlobales.mundo.CreateJoint(_local12); _local12.lowerAngle = (-10 / (180 / Math.PI)); _local12.upperAngle = (130 / (180 / Math.PI)); _local12.Initialize(upperArmR, lowerArmR, new b2Vec2(((_local13 + (45 * escala_cuerpo)) / VariablesGlobales.RATIO), ((_local14 + (20 * escala_cuerpo)) / VariablesGlobales.RATIO))); VariablesGlobales.mundo.CreateJoint(_local12); _local12.lowerAngle = (-15 / (180 / Math.PI)); _local12.upperAngle = (15 / (180 / Math.PI)); _local12.Initialize(torso1, torso2, new b2Vec2((_local13 / VariablesGlobales.RATIO), ((_local14 + (35 * escala_cuerpo)) / VariablesGlobales.RATIO))); VariablesGlobales.mundo.CreateJoint(_local12); _local12.Initialize(torso2, torso3, new b2Vec2((_local13 / VariablesGlobales.RATIO), ((_local14 + (50 * escala_cuerpo)) / VariablesGlobales.RATIO))); VariablesGlobales.mundo.CreateJoint(_local12); _local12.lowerAngle = (-25 / (180 / Math.PI)); _local12.upperAngle = (45 / (180 / Math.PI)); _local12.Initialize(torso3, upperLegL, new b2Vec2(((_local13 - (8 * escala_cuerpo)) / VariablesGlobales.RATIO), ((_local14 + (72 * escala_cuerpo)) / VariablesGlobales.RATIO))); VariablesGlobales.mundo.CreateJoint(_local12); _local12.lowerAngle = (-45 / (180 / Math.PI)); _local12.upperAngle = (25 / (180 / Math.PI)); _local12.Initialize(torso3, upperLegR, new b2Vec2(((_local13 + (8 * escala_cuerpo)) / VariablesGlobales.RATIO), ((_local14 + (72 * escala_cuerpo)) / VariablesGlobales.RATIO))); VariablesGlobales.mundo.CreateJoint(_local12); _local12.lowerAngle = (-25 / (180 / Math.PI)); _local12.upperAngle = (115 / (180 / Math.PI)); _local12.Initialize(upperLegL, lowerLegL, new b2Vec2(((_local13 - (8 * escala_cuerpo)) / VariablesGlobales.RATIO), ((_local14 + (105 * escala_cuerpo)) / VariablesGlobales.RATIO))); VariablesGlobales.mundo.CreateJoint(_local12); _local12.lowerAngle = (-115 / (180 / Math.PI)); _local12.upperAngle = (25 / (180 / Math.PI)); _local12.Initialize(upperLegR, lowerLegR, new b2Vec2(((_local13 + (8 * escala_cuerpo)) / VariablesGlobales.RATIO), ((_local14 + (105 * escala_cuerpo)) / VariablesGlobales.RATIO))); VariablesGlobales.mundo.CreateJoint(_local12); VariablesGlobales.dummiesActivosPantallaActual++; VariablesGlobales.dummyActual = ""; if (VariablesGlobales.nivelDummy){ VariablesGlobales.dummyActual = VariablesGlobales.dummyPruebaActual; }; if (VariablesGlobales.dummyActual != ""){ _local15 = VariablesGlobales.dummyActual.split(","); trace((("" + _local15.length) + " imagenes a cargar")); dibujarCadenaImagen(_local15[0], head_mc, 0); dibujarCadenaImagen(_local15[1], torso1_mc, 1); dibujarCadenaImagen(_local15[2], torso2_mc, 2); dibujarCadenaImagen(_local15[3], torso3_mc, 3); dibujarCadenaImagen(_local15[4], upperArmL_mc, 4); dibujarCadenaImagen(_local15[5], lowerArmL_mc, 5); dibujarCadenaImagen(_local15[6], upperArmR_mc, 6); dibujarCadenaImagen(_local15[7], lowerArmR_mc, 7); dibujarCadenaImagen(_local15[8], upperLegL_mc, 8); dibujarCadenaImagen(_local15[9], lowerLegL_mc, 9); dibujarCadenaImagen(_local15[10], upperLegR_mc, 10); dibujarCadenaImagen(_local15[11], lowerLegR_mc, 11); }; OrientarDummy((((_arg3 * (180 / Math.PI)) - 90) + 180)); Ordenar_Grafico(); _arg4 = (_arg4 / 300); if (_arg4 < 0.25){ _arg4 = 0.25; } else { if (_arg4 > 1){ _arg4 = 1; }; }; Impulsar(new b2Vec2((Math.cos(_arg3) * _arg4), (Math.sin(_arg3) * _arg4)), true); } function uncompress(_arg1:String):ByteArray{ var _local2:Base64Decoder; var _local3:ByteArray; _local2 = new Base64Decoder(); _local2.decode(_arg1); _local3 = _local2.toByteArray(); _local3.uncompress(); return (_local3); } private function Actualizar_Graficos():void{ torso1_mc.x = (torso1.GetPosition().x * VariablesGlobales.RATIO); torso1_mc.y = (torso1.GetPosition().y * VariablesGlobales.RATIO); torso1_mc.rotation = (torso1.GetAngle() * (180 / 3.14)); torso2_mc.x = (torso2.GetPosition().x * VariablesGlobales.RATIO); torso2_mc.y = (torso2.GetPosition().y * VariablesGlobales.RATIO); torso2_mc.rotation = (torso2.GetAngle() * (180 / 3.14)); torso3_mc.x = (torso3.GetPosition().x * VariablesGlobales.RATIO); torso3_mc.y = (torso3.GetPosition().y * VariablesGlobales.RATIO); torso3_mc.rotation = (torso3.GetAngle() * (180 / 3.14)); upperArmL_mc.x = (upperArmL.GetPosition().x * VariablesGlobales.RATIO); upperArmL_mc.y = (upperArmL.GetPosition().y * VariablesGlobales.RATIO); upperArmL_mc.rotation = (upperArmL.GetAngle() * (180 / 3.14)); lowerArmL_mc.x = (lowerArmL.GetPosition().x * VariablesGlobales.RATIO); lowerArmL_mc.y = (lowerArmL.GetPosition().y * VariablesGlobales.RATIO); lowerArmL_mc.rotation = (lowerArmL.GetAngle() * (180 / 3.14)); upperArmR_mc.x = (upperArmR.GetPosition().x * VariablesGlobales.RATIO); upperArmR_mc.y = (upperArmR.GetPosition().y * VariablesGlobales.RATIO); upperArmR_mc.rotation = (upperArmR.GetAngle() * (180 / 3.14)); lowerArmR_mc.x = (lowerArmR.GetPosition().x * VariablesGlobales.RATIO); lowerArmR_mc.y = (lowerArmR.GetPosition().y * VariablesGlobales.RATIO); lowerArmR_mc.rotation = (lowerArmR.GetAngle() * (180 / 3.14)); upperLegL_mc.x = (upperLegL.GetPosition().x * VariablesGlobales.RATIO); upperLegL_mc.y = (upperLegL.GetPosition().y * VariablesGlobales.RATIO); upperLegL_mc.rotation = (upperLegL.GetAngle() * (180 / 3.14)); lowerLegL_mc.x = (lowerLegL.GetPosition().x * VariablesGlobales.RATIO); lowerLegL_mc.y = (lowerLegL.GetPosition().y * VariablesGlobales.RATIO); lowerLegL_mc.rotation = (lowerLegL.GetAngle() * (180 / 3.14)); upperLegR_mc.x = (upperLegR.GetPosition().x * VariablesGlobales.RATIO); upperLegR_mc.y = (upperLegR.GetPosition().y * VariablesGlobales.RATIO); upperLegR_mc.rotation = (upperLegR.GetAngle() * (180 / 3.14)); lowerLegR_mc.x = (lowerLegR.GetPosition().x * VariablesGlobales.RATIO); lowerLegR_mc.y = (lowerLegR.GetPosition().y * VariablesGlobales.RATIO); lowerLegR_mc.rotation = (lowerLegR.GetAngle() * (180 / 3.14)); } public function Desviar(_arg1:b2Vec2, _arg2:Boolean=true){ if (_arg2){ head.ApplyImpulse(_arg1, cuerpo.GetWorldCenter()); torso1.ApplyImpulse(_arg1, cuerpo.GetWorldCenter()); torso3.ApplyImpulse(_arg1, cuerpo.GetWorldCenter()); } else { torso2.ApplyImpulse(_arg1, cuerpo.GetWorldCenter()); }; } private function Ordenar_Grafico():void{ lowerLegL_mc.parent.setChildIndex(lowerLegL_mc, (lowerLegL_mc.parent.numChildren - 1)); lowerLegR_mc.parent.setChildIndex(lowerLegR_mc, (lowerLegR_mc.parent.numChildren - 1)); lowerArmL_mc.parent.setChildIndex(lowerArmL_mc, (lowerArmL_mc.parent.numChildren - 1)); lowerArmR_mc.parent.setChildIndex(lowerArmR_mc, (lowerArmR_mc.parent.numChildren - 1)); upperLegL_mc.parent.setChildIndex(upperLegL_mc, (upperLegL_mc.parent.numChildren - 1)); upperLegR_mc.parent.setChildIndex(upperLegR_mc, (upperLegR_mc.parent.numChildren - 1)); upperArmL_mc.parent.setChildIndex(upperArmL_mc, (upperArmL_mc.parent.numChildren - 1)); upperArmR_mc.parent.setChildIndex(upperArmR_mc, (upperArmR_mc.parent.numChildren - 1)); torso3_mc.parent.setChildIndex(torso3_mc, (torso3_mc.parent.numChildren - 1)); torso2_mc.parent.setChildIndex(torso2_mc, (torso2_mc.parent.numChildren - 1)); torso1_mc.parent.setChildIndex(torso1_mc, (torso1_mc.parent.numChildren - 1)); head_mc.parent.setChildIndex(head_mc, (head_mc.parent.numChildren - 1)); } private function dist(_arg1:b2Body, _arg2:b2Body):Number{ var _local3:Number; var _local4:Number; _local3 = (_arg1.GetPosition().x - _arg2.GetPosition().x); _local4 = (_arg1.GetPosition().y - _arg2.GetPosition().y); return (Math.sqrt(((_local3 * _local3) + (_local4 * _local4)))); } override protected function gestionarFueraDeLimites():void{ VariablesGlobales.dummiesFueraPantallaActual++; Juego(VariablesGlobales.JuegoActual).eliminarActor(this); super.gestionarFueraDeLimites(); } private function dibujarCadenaImagen(_arg1, _arg2, _arg3):void{ var _local4:Number; var _local5:Rectangle; var _local6:BitmapData; var _local7:MovieClip; _local4 = 1.82330827067669; _local5 = new Rectangle(0, 0, (Math.round((((_arg2.width / escala_cuerpo) * _local4) * 2)) - 1), (Math.round((((_arg2.height / escala_cuerpo) * _local4) * 2)) - 1)); _local5.width = VariablesGlobales.dummyCoordenadasRectanguloAncho[_arg3]; _local5.height = VariablesGlobales.dummyCoordenadasRectanguloAlto[_arg3]; _local6 = new BitmapData(_local5.width, _local5.height, true, 0xFFFFFF); trace(((("rect destino ancho: " + _local5.width) + " alto: ") + _local5.height)); _local6.setPixels(_local5, uncompress(_arg1)); _local7 = new MovieClip(); _local7.addChild(new Bitmap(_local6)); _local7.x = -((_local5.width / 4)); _local7.y = -((_local5.height / 4)); _local7.width = (_local7.width / 2); _local7.height = (_local7.height / 2); _arg2.addChild(_local7); } public function Impulsar(_arg1:b2Vec2, _arg2:Boolean=true){ head.SetLinearVelocity(new b2Vec2(0, 0)); torso1.SetLinearVelocity(new b2Vec2(0, 0)); torso2.SetLinearVelocity(new b2Vec2(0, 0)); torso3.SetLinearVelocity(new b2Vec2(0, 0)); upperArmL.SetLinearVelocity(new b2Vec2(0, 0)); lowerArmL.SetLinearVelocity(new b2Vec2(0, 0)); upperArmR.SetLinearVelocity(new b2Vec2(0, 0)); lowerArmR.SetLinearVelocity(new b2Vec2(0, 0)); upperLegL.SetLinearVelocity(new b2Vec2(0, 0)); lowerLegL.SetLinearVelocity(new b2Vec2(0, 0)); upperLegR.SetLinearVelocity(new b2Vec2(0, 0)); lowerLegR.SetLinearVelocity(new b2Vec2(0, 0)); if (_arg2){ head.ApplyImpulse(_arg1, cuerpo.GetWorldCenter()); torso1.ApplyImpulse(_arg1, cuerpo.GetWorldCenter()); torso3.ApplyImpulse(_arg1, cuerpo.GetWorldCenter()); } else { torso2.ApplyImpulse(_arg1, cuerpo.GetWorldCenter()); }; } function distance(_arg1, _arg2):Number{ var _local3:*; var _local4:*; var _local5:Number; _local4 = (_arg2.x - _arg1.x); _local5 = (_arg2.y - _arg1.y); _local3 = Math.sqrt(((_local4 * _local4) + (_local5 * _local5))); return (_local3); } override public function destruir():void{ var _local1:int; padre.removeChild(lowerLegL_mc); VariablesGlobales.mundo.DestroyBody(lowerLegL); lowerLegR_mc.parent.removeChild(lowerLegR_mc); VariablesGlobales.mundo.DestroyBody(lowerLegR); lowerArmL_mc.parent.removeChild(lowerArmL_mc); VariablesGlobales.mundo.DestroyBody(lowerArmL); lowerArmR_mc.parent.removeChild(lowerArmR_mc); VariablesGlobales.mundo.DestroyBody(lowerArmR); upperLegL_mc.parent.removeChild(upperLegL_mc); VariablesGlobales.mundo.DestroyBody(upperLegL); upperLegR_mc.parent.removeChild(upperLegR_mc); VariablesGlobales.mundo.DestroyBody(upperLegR); upperArmL_mc.parent.removeChild(upperArmL_mc); VariablesGlobales.mundo.DestroyBody(upperArmL); upperArmR_mc.parent.removeChild(upperArmR_mc); VariablesGlobales.mundo.DestroyBody(upperArmR); torso3_mc.parent.removeChild(torso3_mc); VariablesGlobales.mundo.DestroyBody(torso3); torso2_mc.parent.removeChild(torso2_mc); VariablesGlobales.mundo.DestroyBody(torso2); torso1_mc.parent.removeChild(torso1_mc); VariablesGlobales.mundo.DestroyBody(torso1); _local1 = lanzadera_origen.listaObjetos.indexOf(this); if (_local1 > -1){ lanzadera_origen.listaObjetos.splice(_local1, 1); }; VariablesGlobales.dummiesActivosPantallaActual--; super.destruir(); } private function angle(_arg1:b2Body, _arg2:b2Body):Number{ var _local3:Number; var _local4:Number; _local3 = (_arg1.GetPosition().x - _arg2.GetPosition().x); _local4 = (_arg1.GetPosition().y - _arg2.GetPosition().y); return (Math.atan2(_local4, _local3)); } public function Magnetismo(_arg1:b2Body, _arg2:Number){ var _local3:Number; var _local4:Number; var _local5:Number; var _local6:b2Vec2; var _local7:Number; var _local8:*; var _local9:Number; var _local10:Number; _local3 = angle(_arg1, torso2); _local4 = 10; _local5 = _arg2; _local6 = torso2.GetLinearVelocity(); VariablesGlobales.JuegoActual.menu.distancia.text = ("" + torso2.GetLinearVelocity().Length().toFixed(2)); _local7 = 50; if (torso2.GetLinearVelocity().Length() > _local7){ _local10 = torso2.m_linearVelocity.Normalize(); torso2.m_linearVelocity.Multiply(Math.min(_local10, _local7)); _local6 = torso2.GetLinearVelocity(); }; _local8 = new b2Vec2(); _local9 = dist(_arg1, torso2); if (_arg2 > 0){ if (_local9 < (_local4 / 10)){ _local5 = 0; }; } else { if (_local9 < _local4){ _local5 = (_local5 / _local9); }; }; _local8.x = (_local6.x + (_local5 * Math.cos(_local3))); _local8.y = (_local6.y + (_local5 * Math.sin(_local3))); torso2.SetLinearVelocity(_local8); } private function OrientarDummy(_arg1:Number):void{ var _local2:Number; var _local3:Number; var _local4:*; var _local5:*; var _local6:*; var _local7:*; _local2 = 0; posicion_inicial.Set((posicion_inicial.x * VariablesGlobales.RATIO), (posicion_inicial.y * VariablesGlobales.RATIO)); _local2 = 0; head_mc.x = (posicion_inicial.x + (Math.cos(_arg1) * _local2)); head_mc.y = (posicion_inicial.y + (Math.sin(_arg1) * _local2)); head_mc.rotation = _arg1; _local6 = (_arg1 / (180 / Math.PI)); head.SetXForm(new b2Vec2((head_mc.x / VariablesGlobales.RATIO), (head_mc.y / VariablesGlobales.RATIO)), _local6); torso1_mc.x = (posicion_inicial.x + (0 * escala_cuerpo)); torso1_mc.y = (posicion_inicial.y + (28 * escala_cuerpo)); _local4 = (torso1_mc.x - posicion_inicial.x); _local5 = (torso1_mc.y - posicion_inicial.y); _local6 = Math.atan2(_local5, _local4); _local7 = (_local6 * (180 / Math.PI)); _local7 = (_local7 / (180 / Math.PI)); _local2 = distance(new Point(posicion_inicial.x, posicion_inicial.y), new Point(torso1_mc.x, torso1_mc.y)); _local6 = ((_arg1 / (180 / Math.PI)) + _local7); torso1_mc.x = (posicion_inicial.x + (Math.cos(_local6) * _local2)); torso1_mc.y = (posicion_inicial.y + (Math.sin(_local6) * _local2)); torso1_mc.rotation = _arg1; _local6 = (_arg1 / (180 / Math.PI)); torso1.SetXForm(new b2Vec2((torso1_mc.x / VariablesGlobales.RATIO), (torso1_mc.y / VariablesGlobales.RATIO)), _local6); torso2_mc.x = (posicion_inicial.x + (0 * escala_cuerpo)); torso2_mc.y = (posicion_inicial.y + (43 * escala_cuerpo)); _local4 = (torso2_mc.x - posicion_inicial.x); _local5 = (torso2_mc.y - posicion_inicial.y); _local6 = Math.atan2(_local5, _local4); _local7 = (_local6 * (180 / Math.PI)); _local7 = (_local7 / (180 / Math.PI)); _local2 = distance(new Point(posicion_inicial.x, posicion_inicial.y), new Point(torso2_mc.x, torso2_mc.y)); _local6 = ((_arg1 / (180 / Math.PI)) + _local7); torso2_mc.x = (posicion_inicial.x + (Math.cos(_local6) * _local2)); torso2_mc.y = (posicion_inicial.y + (Math.sin(_local6) * _local2)); torso2_mc.rotation = _arg1; _local6 = (_arg1 / (180 / Math.PI)); torso2.SetXForm(new b2Vec2((torso2_mc.x / VariablesGlobales.RATIO), (torso2_mc.y / VariablesGlobales.RATIO)), _local6); torso3_mc.x = (posicion_inicial.x + (0 * escala_cuerpo)); torso3_mc.y = (posicion_inicial.y + (58 * escala_cuerpo)); _local4 = (torso3_mc.x - posicion_inicial.x); _local5 = (torso3_mc.y - posicion_inicial.y); _local6 = Math.atan2(_local5, _local4); _local7 = (_local6 * (180 / Math.PI)); _local7 = (_local7 / (180 / Math.PI)); _local2 = distance(new Point(posicion_inicial.x, posicion_inicial.y), new Point(torso3_mc.x, torso3_mc.y)); _local6 = ((_arg1 / (180 / Math.PI)) + _local7); torso3_mc.x = (posicion_inicial.x + (Math.cos(_local6) * _local2)); torso3_mc.y = (posicion_inicial.y + (Math.sin(_local6) * _local2)); torso3_mc.rotation = _arg1; _local6 = (_arg1 / (180 / Math.PI)); torso3.SetXForm(new b2Vec2((torso3_mc.x / VariablesGlobales.RATIO), (torso3_mc.y / VariablesGlobales.RATIO)), _local6); upperArmL_mc.x = (posicion_inicial.x + (-30 * escala_cuerpo)); upperArmL_mc.y = (posicion_inicial.y + (20 * escala_cuerpo)); _local4 = (upperArmL_mc.x - posicion_inicial.x); _local5 = (upperArmL_mc.y - posicion_inicial.y); _local6 = Math.atan2(_local5, _local4); _local7 = (_local6 * (180 / Math.PI)); _local7 = (_local7 / (180 / Math.PI)); _local2 = distance(new Point(posicion_inicial.x, posicion_inicial.y), new Point(upperArmL_mc.x, upperArmL_mc.y)); _local6 = ((_arg1 / (180 / Math.PI)) + _local7); upperArmL_mc.x = (posicion_inicial.x + (Math.cos(_local6) * _local2)); upperArmL_mc.y = (posicion_inicial.y + (Math.sin(_local6) * _local2)); upperArmL_mc.rotation = _arg1; _local6 = (_arg1 / (180 / Math.PI)); upperArmL.SetXForm(new b2Vec2((upperArmL_mc.x / VariablesGlobales.RATIO), (upperArmL_mc.y / VariablesGlobales.RATIO)), _local6); lowerArmL_mc.x = (posicion_inicial.x + (-57 * escala_cuerpo)); lowerArmL_mc.y = (posicion_inicial.y + (20 * escala_cuerpo)); _local4 = (lowerArmL_mc.x - posicion_inicial.x); _local5 = (lowerArmL_mc.y - posicion_inicial.y); _local6 = Math.atan2(_local5, _local4); _local7 = (_local6 * (180 / Math.PI)); _local7 = (_local7 / (180 / Math.PI)); _local2 = distance(new Point(posicion_inicial.x, posicion_inicial.y), new Point(lowerArmL_mc.x, lowerArmL_mc.y)); _local6 = ((_arg1 / (180 / Math.PI)) + _local7); lowerArmL_mc.x = (posicion_inicial.x + (Math.cos(_local6) * _local2)); lowerArmL_mc.y = (posicion_inicial.y + (Math.sin(_local6) * _local2)); lowerArmL_mc.rotation = _arg1; _local6 = (_arg1 / (180 / Math.PI)); lowerArmL.SetXForm(new b2Vec2((lowerArmL_mc.x / VariablesGlobales.RATIO), (lowerArmL_mc.y / VariablesGlobales.RATIO)), _local6); upperArmR_mc.x = (posicion_inicial.x + (30 * escala_cuerpo)); upperArmR_mc.y = (posicion_inicial.y + (20 * escala_cuerpo)); _local4 = (upperArmR_mc.x - posicion_inicial.x); _local5 = (upperArmR_mc.y - posicion_inicial.y); _local6 = Math.atan2(_local5, _local4); _local7 = (_local6 * (180 / Math.PI)); _local7 = (_local7 / (180 / Math.PI)); _local2 = distance(new Point(posicion_inicial.x, posicion_inicial.y), new Point(upperArmR_mc.x, upperArmR_mc.y)); _local6 = ((_arg1 / (180 / Math.PI)) + _local7); upperArmR_mc.x = (posicion_inicial.x + (Math.cos(_local6) * _local2)); upperArmR_mc.y = (posicion_inicial.y + (Math.sin(_local6) * _local2)); upperArmR_mc.rotation = _arg1; _local6 = (_arg1 / (180 / Math.PI)); upperArmR.SetXForm(new b2Vec2((upperArmR_mc.x / VariablesGlobales.RATIO), (upperArmR_mc.y / VariablesGlobales.RATIO)), _local6); lowerArmR_mc.x = (posicion_inicial.x + (57 * escala_cuerpo)); lowerArmR_mc.y = (posicion_inicial.y + (20 * escala_cuerpo)); _local4 = (lowerArmR_mc.x - posicion_inicial.x); _local5 = (lowerArmR_mc.y - posicion_inicial.y); _local6 = Math.atan2(_local5, _local4); _local7 = (_local6 * (180 / Math.PI)); _local7 = (_local7 / (180 / Math.PI)); _local2 = distance(new Point(posicion_inicial.x, posicion_inicial.y), new Point(lowerArmR_mc.x, lowerArmR_mc.y)); _local6 = ((_arg1 / (180 / Math.PI)) + _local7); lowerArmR_mc.x = (posicion_inicial.x + (Math.cos(_local6) * _local2)); lowerArmR_mc.y = (posicion_inicial.y + (Math.sin(_local6) * _local2)); lowerArmR_mc.rotation = _arg1; _local6 = (_arg1 / (180 / Math.PI)); lowerArmR.SetXForm(new b2Vec2((lowerArmR_mc.x / VariablesGlobales.RATIO), (lowerArmR_mc.y / VariablesGlobales.RATIO)), _local6); upperLegL_mc.x = (posicion_inicial.x + (-8 * escala_cuerpo)); upperLegL_mc.y = (posicion_inicial.y + (85 * escala_cuerpo)); _local4 = (upperLegL_mc.x - posicion_inicial.x); _local5 = (upperLegL_mc.y - posicion_inicial.y); _local6 = Math.atan2(_local5, _local4); _local7 = (_local6 * (180 / Math.PI)); _local7 = (_local7 / (180 / Math.PI)); _local2 = distance(new Point(posicion_inicial.x, posicion_inicial.y), new Point(upperLegL_mc.x, upperLegL_mc.y)); _local6 = ((_arg1 / (180 / Math.PI)) + _local7); upperLegL_mc.x = (posicion_inicial.x + (Math.cos(_local6) * _local2)); upperLegL_mc.y = (posicion_inicial.y + (Math.sin(_local6) * _local2)); upperLegL_mc.rotation = _arg1; _local6 = (_arg1 / (180 / Math.PI)); upperLegL.SetXForm(new b2Vec2((upperLegL_mc.x / VariablesGlobales.RATIO), (upperLegL_mc.y / VariablesGlobales.RATIO)), _local6); lowerLegL_mc.x = (posicion_inicial.x + (-8 * escala_cuerpo)); lowerLegL_mc.y = (posicion_inicial.y + (120 * escala_cuerpo)); _local4 = (lowerLegL_mc.x - posicion_inicial.x); _local5 = (lowerLegL_mc.y - posicion_inicial.y); _local6 = Math.atan2(_local5, _local4); _local7 = (_local6 * (180 / Math.PI)); _local7 = (_local7 / (180 / Math.PI)); _local2 = distance(new Point(posicion_inicial.x, posicion_inicial.y), new Point(lowerLegL_mc.x, lowerLegL_mc.y)); _local6 = ((_arg1 / (180 / Math.PI)) + _local7); lowerLegL_mc.x = (posicion_inicial.x + (Math.cos(_local6) * _local2)); lowerLegL_mc.y = (posicion_inicial.y + (Math.sin(_local6) * _local2)); lowerLegL_mc.rotation = _arg1; _local6 = (_arg1 / (180 / Math.PI)); lowerLegL.SetXForm(new b2Vec2((lowerLegL_mc.x / VariablesGlobales.RATIO), (lowerLegL_mc.y / VariablesGlobales.RATIO)), _local6); upperLegR_mc.x = (posicion_inicial.x + (8 * escala_cuerpo)); upperLegR_mc.y = (posicion_inicial.y + (85 * escala_cuerpo)); _local4 = (upperLegR_mc.x - posicion_inicial.x); _local5 = (upperLegR_mc.y - posicion_inicial.y); _local6 = Math.atan2(_local5, _local4); _local7 = (_local6 * (180 / Math.PI)); _local7 = (_local7 / (180 / Math.PI)); _local2 = distance(new Point(posicion_inicial.x, posicion_inicial.y), new Point(upperLegR_mc.x, upperLegR_mc.y)); _local6 = ((_arg1 / (180 / Math.PI)) + _local7); upperLegR_mc.x = (posicion_inicial.x + (Math.cos(_local6) * _local2)); upperLegR_mc.y = (posicion_inicial.y + (Math.sin(_local6) * _local2)); upperLegR_mc.rotation = _arg1; _local6 = (_arg1 / (180 / Math.PI)); upperLegR.SetXForm(new b2Vec2((upperLegR_mc.x / VariablesGlobales.RATIO), (upperLegR_mc.y / VariablesGlobales.RATIO)), _local6); lowerLegR_mc.x = (posicion_inicial.x + (8 * escala_cuerpo)); lowerLegR_mc.y = (posicion_inicial.y + (120 * escala_cuerpo)); _local4 = (lowerLegR_mc.x - posicion_inicial.x); _local5 = (lowerLegR_mc.y - posicion_inicial.y); _local6 = Math.atan2(_local5, _local4); _local7 = (_local6 * (180 / Math.PI)); _local7 = (_local7 / (180 / Math.PI)); _local2 = distance(new Point(posicion_inicial.x, posicion_inicial.y), new Point(lowerLegR_mc.x, lowerLegR_mc.y)); _local6 = ((_arg1 / (180 / Math.PI)) + _local7); lowerLegR_mc.x = (posicion_inicial.x + (Math.cos(_local6) * _local2)); lowerLegR_mc.y = (posicion_inicial.y + (Math.sin(_local6) * _local2)); lowerLegR_mc.rotation = _arg1; _local6 = (_arg1 / (180 / Math.PI)); lowerLegR.SetXForm(new b2Vec2((lowerLegR_mc.x / VariablesGlobales.RATIO), (lowerLegR_mc.y / VariablesGlobales.RATIO)), _local6); } override protected function actualizacionEspecificaHijo():void{ Actualizar_Graficos(); super.actualizacionEspecificaHijo(); } } }//package
Section 344
//DummyNeverFails (DummyNeverFails) package { import Playtomic.*; import flash.utils.*; import flash.events.*; import com.tanoku.sonido.*; import flash.display.*; import flash.text.*; public class DummyNeverFails extends MovieClip { var timerCpmStar:Timer; public var splash_sponsor:MovieClip; public var txt_denegado:TextField; public function DummyNeverFails(){ timerCpmStar = new Timer(1); super(); addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4); VariablesGlobales.contenedorPadre = this; Log.View(1989, "05c7e6fce4e24842", root.loaderInfo.loaderURL); Log.Enabled = true; stage.stageFocusRect = false; } public function Validar(){ var _local1:String; var _local2:Array; var _local3:String; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Boolean; var _local9:int; trace("validar"); _local1 = ""; _local2 = new Array("flashgamelicense.com", "dropbox.com"); _local3 = stage.loaderInfo.url; _local4 = (_local3.indexOf("://") + 3); _local5 = _local3.indexOf("/", _local4); _local1 = _local3.substring(_local4, _local5); _local6 = (_local1.lastIndexOf(".") - 1); _local7 = (_local1.lastIndexOf(".", _local6) + 1); _local1 = _local1.substring(_local7, _local1.length); _local8 = false; VariablesGlobales.estoyEnSponsor = false; trace(("sponsor= " + VariablesGlobales.WEB_DOMINIO)); if (_local1 == VariablesGlobales.WEB_DOMINIO){ VariablesGlobales.estoyEnSponsor = true; }; VariablesGlobales.estoyEnSponsor = true; _local9 = 0; while (_local9 < _local2.length) { if (_local1 == _local2[_local9]){ _local8 = true; _local9 = _local2.length; }; _local9++; }; _local8 = true; if (_local8){ mc_preload = new preloader_sc(); this.addChild(mc_preload); mc_preload.jugar.visible = false; addEventListener(Event.ENTER_FRAME, preloader); mc_preload.boton_tanoku.visible = false; mc_preload.boton_sponsor.addEventListener(MouseEvent.CLICK, sponsorPreload); mc_preload.boton_tanoku.addEventListener(MouseEvent.CLICK, tanokuPreload); trace("allowed"); this.play(); } else { VariablesGlobales.estoyEnSponsor = false; trace("denied"); txt_denegado.text = (("access denied \n -" + _local1) + "-"); }; } function tanokuPreload(_arg1:MouseEvent):void{ VariablesGlobales.AbreWeb(VariablesGlobales.WEB_TANOKU, false); } public function IntroSponsor(){ } private function Preloader(_arg1:Event):void{ } function frame3(){ stop(); Intros(); } function frame1(){ stop(); Validar(); } function preloader(_arg1:Event):void{ var _local2:*; var _local3:*; var _local4:int; _local2 = stage.loaderInfo.bytesTotal; _local3 = stage.loaderInfo.bytesLoaded; _local4 = ((_local3 * 100) / _local2); trace((_local4 + "%")); mc_preload.porc.text = (_local4 + "%"); mc_preload.gotoAndStop(_local4); if (_local3 >= _local2){ timerCpmStar = new Timer(100, 1); timerCpmStar.start(); timerCpmStar.addEventListener(TimerEvent.TIMER_COMPLETE, finTiempoTimerCPM); mc_preload.porc.visible = false; removeEventListener(Event.ENTER_FRAME, preloader); trace(("loaded " + getTimer())); }; } private function CargarDatos():void{ VariablesGlobales.soundMan = SoundManager.getInstance(); VariablesGlobales.musicMan = MusicManager.getInstance(); VariablesGlobales.logrosMan = new ManagerLogros(); VariablesGlobales.logrosMan.main_class = this; VariablesGlobales.savegameMan = new ManagerPartidas(); VariablesGlobales.numeroPartidas = (VariablesGlobales.numeroPartidas + 1); trace(("partida actual " + VariablesGlobales.numeroPartidas)); if (VariablesGlobales.numeroPartidas >= 10){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.NUMERO_PARTIDAS); } else { VariablesGlobales.savegameMan.salvarPartida(); }; VariablesGlobales.cargarListasOnline(); } function frame4(){ stop(); Start(); } public function cierra_pantalla(_arg1){ if (_arg1){ VariablesGlobales.contenedorPadre.removeChild(_arg1); VariablesGlobales.contenedorHijo = null; _arg1.main_class = null; _arg1 = null; }; } function frame2(){ stop(); } function sponsorPreload(_arg1:MouseEvent):void{ trace("sponsor"); VariablesGlobales.AbreWeb(VariablesGlobales.WEB_SPONSOR, false); } public function abre_pantalla(_arg1){ VariablesGlobales.contenedorPadre.addChild(_arg1); _arg1.tabEnabled = false; _arg1.main_class = VariablesGlobales.contenedorPadre; VariablesGlobales.contenedorHijo = _arg1; } public function CargarSonidos():void{ VariablesGlobales.soundMan.addLibrarySound(click, "click"); VariablesGlobales.soundMan.addLibrarySound(logro, "logro"); VariablesGlobales.soundMan.addLibrarySound(gas, "gas"); VariablesGlobales.soundMan.addLibrarySound(gas_solo, "gas_solo"); VariablesGlobales.soundMan.addLibrarySound(alarma, "alarma"); VariablesGlobales.musicMan.addLibrarySound(ingame_01, "ingame_01"); VariablesGlobales.musicMan.addLibrarySound(principal_01, "principal_01"); VariablesGlobales.musicMan.addLibrarySound(editor_01, "editor_01"); } private function Start():void{ stop(); if (VariablesGlobales.estoyEnSponsor){ abre_pantalla(new Principal()); trace("start"); VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.EMPEZAR_JUEGO); }; } function jugarPreload(_arg1:MouseEvent):void{ this.removeChild(mc_preload); mc_preload.jugar.removeEventListener(MouseEvent.CLICK, jugarPreload); mc_preload.boton_sponsor.removeEventListener(MouseEvent.CLICK, sponsorPreload); mc_preload.boton_tanoku.removeEventListener(MouseEvent.CLICK, tanokuPreload); this.play(); } function finTiempoTimerCPM(_arg1:TimerEvent):void{ trace("fin timer"); mc_preload.jugar.visible = true; mc_preload.jugar.addEventListener(MouseEvent.CLICK, jugarPreload); timerCpmStar.removeEventListener(TimerEvent.TIMER_COMPLETE, finTiempoTimerCPM); } public function Intros(){ trace("Intros"); splash_sponsor.addEventListener(MouseEvent.CLICK, sponsorPreload); CargarDatos(); CargarSonidos(); } } }//package
Section 345
//DummyNeverFailsContactListener (DummyNeverFailsContactListener) package { import Box2D.Dynamics.Contacts.*; import Box2D.Collision.*; import Box2D.Dynamics.*; public class DummyNeverFailsContactListener extends b2ContactListener { override public function Persist(_arg1:b2ContactPoint):void{ if ((((_arg1.shape1.GetBody().GetUserData() is ObjetoDinamico)) && ((_arg1.shape2.GetBody().GetUserData() is ObjetoEstatico)))){ if ((_arg1.shape1.GetBody().GetUserData() is ObjetoDinamico)){ ObjetoDinamico(_arg1.shape1.GetBody().GetUserData()).colisionObjetoEstatico(); ObjetoDinamico(_arg1.shape1.GetBody().GetUserData()).cambio_sentido_disponible = false; }; } else { if ((((_arg1.shape2.GetBody().GetUserData() is ObjetoDinamico)) && ((_arg1.shape1.GetBody().GetUserData() is ObjetoEstatico)))){ if ((_arg1.shape2.GetBody().GetUserData() is ObjetoDinamico)){ ObjetoDinamico(_arg1.shape2.GetBody().GetUserData()).colisionObjetoEstatico(); ObjetoDinamico(_arg1.shape2.GetBody().GetUserData()).cambio_sentido_disponible = false; }; }; }; if ((((_arg1.shape1.GetBody().GetUserData() is ObjetoDinamico)) && ((_arg1.shape2.GetBody().GetUserData() is ObjetoDinamico)))){ if ((_arg1.shape1.GetBody().GetUserData() is ObjetoDinamico)){ ObjetoDinamico(_arg1.shape1.GetBody().GetUserData()).colisionObjetoEstatico(); ObjetoDinamico(_arg1.shape1.GetBody().GetUserData()).cambio_sentido_disponible = false; ObjetoDinamico(_arg1.shape2.GetBody().GetUserData()).colisionObjetoEstatico(); ObjetoDinamico(_arg1.shape2.GetBody().GetUserData()).cambio_sentido_disponible = false; }; } else { if ((((_arg1.shape2.GetBody().GetUserData() is ObjetoDinamico)) && ((_arg1.shape1.GetBody().GetUserData() is ObjetoDinamico)))){ if ((_arg1.shape2.GetBody().GetUserData() is ObjetoDinamico)){ ObjetoDinamico(_arg1.shape2.GetBody().GetUserData()).colisionObjetoEstatico(); ObjetoDinamico(_arg1.shape2.GetBody().GetUserData()).cambio_sentido_disponible = false; ObjetoDinamico(_arg1.shape1.GetBody().GetUserData()).colisionObjetoEstatico(); ObjetoDinamico(_arg1.shape1.GetBody().GetUserData()).cambio_sentido_disponible = false; }; }; }; super.Persist(_arg1); } override public function Add(_arg1:b2ContactPoint):void{ if ((((_arg1.shape1.GetBody().GetUserData() is ObjetoDinamico)) && ((_arg1.shape2.GetBody().GetUserData() is ObjetoEstatico)))){ if ((_arg1.shape1.GetBody().GetUserData() is ObjetoDinamico)){ ObjetoDinamico(_arg1.shape1.GetBody().GetUserData()).cambio_sentido_disponible = true; }; } else { if ((((_arg1.shape2.GetBody().GetUserData() is ObjetoDinamico)) && ((_arg1.shape1.GetBody().GetUserData() is ObjetoEstatico)))){ if ((_arg1.shape2.GetBody().GetUserData() is ObjetoDinamico)){ ObjetoDinamico(_arg1.shape2.GetBody().GetUserData()).cambio_sentido_disponible = true; }; }; }; if ((((_arg1.shape1.GetBody().GetUserData() is ObjetoDinamico)) && ((_arg1.shape2.GetBody().GetUserData() is ObjetoDinamico)))){ if ((_arg1.shape1.GetBody().GetUserData() is ObjetoDinamico)){ ObjetoDinamico(_arg1.shape1.GetBody().GetUserData()).cambio_sentido_disponible = true; ObjetoDinamico(_arg1.shape2.GetBody().GetUserData()).cambio_sentido_disponible = true; }; } else { if ((((_arg1.shape2.GetBody().GetUserData() is ObjetoDinamico)) && ((_arg1.shape1.GetBody().GetUserData() is ObjetoDinamico)))){ if ((_arg1.shape2.GetBody().GetUserData() is ObjetoDinamico)){ ObjetoDinamico(_arg1.shape2.GetBody().GetUserData()).cambio_sentido_disponible = true; ObjetoDinamico(_arg1.shape1.GetBody().GetUserData()).cambio_sentido_disponible = true; }; }; }; if ((((_arg1.shape1.GetBody().GetUserData() is Dummy)) && ((_arg1.shape2.GetBody().GetUserData() is Meta)))){ Juego(VariablesGlobales.JuegoActual).Meta_Alcanzada(); Meta(_arg1.shape2.GetBody().GetUserData()).activarMeta(); } else { if ((((_arg1.shape2.GetBody().GetUserData() is Dummy)) && ((_arg1.shape1.GetBody().GetUserData() is Meta)))){ Juego(VariablesGlobales.JuegoActual).Meta_Alcanzada(); Meta(_arg1.shape1.GetBody().GetUserData()).activarMeta(); }; }; if ((((_arg1.shape1.GetBody().GetUserData() is Dummy)) && ((_arg1.shape2.GetBody().GetUserData() is Item)))){ if ((_arg1.shape2.GetBody().GetUserData() is Item)){ Item(_arg1.shape2.GetBody().GetUserData()).RecogerItem(); }; } else { if ((((_arg1.shape2.GetBody().GetUserData() is Dummy)) && ((_arg1.shape1.GetBody().GetUserData() is Item)))){ if ((_arg1.shape1.GetBody().GetUserData() is Item)){ Item(_arg1.shape1.GetBody().GetUserData()).RecogerItem(); }; }; }; if ((((_arg1.shape1.GetBody().GetUserData() is Dummy)) && ((_arg1.shape2.GetBody().GetUserData() is ObjetoImpulsor)))){ if ((_arg1.shape2.GetBody().GetUserData() is ObjetoImpulsor)){ Dummy(_arg1.shape1.GetBody().GetUserData()).Impulsar(ObjetoImpulsor(_arg1.shape2.GetBody().GetUserData()).direccion_impulso, false); ObjetoImpulsor(_arg1.shape2.GetBody().GetUserData()).ActivarImpulsor(); VariablesGlobales.objetoImpulsorActivado = true; }; } else { if ((((_arg1.shape2.GetBody().GetUserData() is Dummy)) && ((_arg1.shape1.GetBody().GetUserData() is ObjetoImpulsor)))){ if ((_arg1.shape1.GetBody().GetUserData() is ObjetoImpulsor)){ Dummy(_arg1.shape2.GetBody().GetUserData()).Impulsar(ObjetoImpulsor(_arg1.shape1.GetBody().GetUserData()).direccion_impulso, false); ObjetoImpulsor(_arg1.shape1.GetBody().GetUserData()).ActivarImpulsor(); VariablesGlobales.objetoImpulsorActivado = true; }; }; }; if ((((_arg1.shape1.GetBody().GetUserData() is Dummy)) && ((_arg1.shape2.GetBody().GetUserData() is ObjetoMagnetico)))){ if ((_arg1.shape2.GetBody().GetUserData() is ObjetoMagnetico)){ Dummy(_arg1.shape1.GetBody().GetUserData()).Magnetismo(ObjetoMagnetico(_arg1.shape2.GetBody().GetUserData()).cuerpo, ObjetoMagnetico(_arg1.shape2.GetBody().GetUserData()).intensidad_magnetica); }; } else { if ((((_arg1.shape2.GetBody().GetUserData() is Dummy)) && ((_arg1.shape1.GetBody().GetUserData() is ObjetoImpulsor)))){ if ((_arg1.shape1.GetBody().GetUserData() is ObjetoImpulsor)){ Dummy(_arg1.shape2.GetBody().GetUserData()).Magnetismo(ObjetoMagnetico(_arg1.shape1.GetBody().GetUserData()).cuerpo, ObjetoMagnetico(_arg1.shape1.GetBody().GetUserData()).intensidad_magnetica); }; }; }; if ((((_arg1.shape1.GetBody().GetUserData() is Dummy)) && ((_arg1.shape2.GetBody().GetUserData() is ObjetoDinamico)))){ if ((_arg1.shape2.GetBody().GetUserData() is ObjetoDinamico)){ VariablesGlobales.objetoDinamicoActivado = true; }; } else { if ((((_arg1.shape2.GetBody().GetUserData() is Dummy)) && ((_arg1.shape1.GetBody().GetUserData() is ObjetoDinamico)))){ if ((_arg1.shape1.GetBody().GetUserData() is ObjetoDinamico)){ VariablesGlobales.objetoDinamicoActivado = true; }; }; }; super.Add(_arg1); } override public function Remove(_arg1:b2ContactPoint):void{ super.Remove(_arg1); } override public function Result(_arg1:b2ContactResult):void{ if ((((_arg1.shape1.GetBody().GetUserData() is Dummy)) && (!((_arg1.shape2.GetBody().GetUserData() is Dummy))))){ Juego(VariablesGlobales.JuegoActual).RecibirDolor(_arg1.normalImpulse); } else { if ((((_arg1.shape2.GetBody().GetUserData() is Dummy)) && (!((_arg1.shape1.GetBody().GetUserData() is Dummy))))){ Juego(VariablesGlobales.JuegoActual).RecibirDolor(_arg1.normalImpulse); }; }; super.Result(_arg1); } } }//package
Section 346
//Editor (Editor) package { import Playtomic.*; import com.senocular.display.*; import flash.events.*; import fl.controls.*; import fl.events.*; import com.reintroducing.ui.*; import com.reintroducing.events.*; import flash.display.*; import flash.ui.*; import com.greensock.*; import flash.system.*; import flash.geom.*; import flash.utils.*; import mx.utils.*; import gs.*; public class Editor extends Ventana { private var hayImpulsor:Boolean;// = false public var submit:MovieClip; private var objetoSeleccionadoNombre:String;// = "" private var y_coor_copia:Number;// = 0 private var hayLanzadera:Boolean;// = false private var objetoSeleccionado:MovieClip;// = null public var objetos:MovieClip; private var sinObjetos:Boolean;// = false var sui:SliderUI; public var fade:MovieClip; private var rotacionOriginalObjetoSeleccionado:Number;// = 0 public var cargar:MovieClip; public var lienzo:MovieClip; public var szoom:Slider; private var x_coor_copia:Number;// = 0 private var currTool:TransformTool; private var objetoSeleccionadoLienzo:Object;// = null public var track_mc:MovieClip; private var listaObjetos:Array; private var zoomActual:int;// = 1 public var menu:MovieClip; private var defaultTool:TransformTool; public var guardar:MovieClip; private var num_copia:Number;// = 0 public var slider_mc:MovieClip; private var numObjetos:int;// = 0 public function Editor(){ zoomActual = 1; objetoSeleccionado = null; objetoSeleccionadoNombre = ""; listaObjetos = []; hayLanzadera = false; sinObjetos = false; numObjetos = 0; hayImpulsor = false; objetoSeleccionadoLienzo = null; rotacionOriginalObjetoSeleccionado = 0; defaultTool = new TransformTool(); x_coor_copia = 0; y_coor_copia = 0; num_copia = 0; super(); VariablesGlobales.EditorNivelesActual = this; __setProp_szoom_Editor_ZOOM_1(); } function __setProp_szoom_Editor_ZOOM_1(){ try { szoom["componentInspectorSetting"] = true; } catch(e:Error) { }; szoom.direction = "horizontal"; szoom.enabled = true; szoom.liveDragging = true; szoom.maximum = 150; szoom.minimum = 0; szoom.snapInterval = 0; szoom.tickInterval = 1; szoom.value = 36; szoom.visible = true; try { szoom["componentInspectorSetting"] = false; } catch(e:Error) { }; } private function borrarObjetos():void{ var _local1:int; _local1 = listaObjetos.length; while (_local1 > 0) { MovieClip(lienzo).removeChild(listaObjetos[0]); listaObjetos.shift(); _local1 = listaObjetos.length; }; hayLanzadera = false; currTool.target = null; } private function cargarNivelLocal():void{ var _local1:String; var _local2:int; if (List(cargar.lista).selectedIndex < 0){ return; }; _local1 = List(cargar.lista).selectedItem.label; _local2 = VariablesGlobales.nivelesNombresJugador.indexOf(_local1); trace(("nombre nivel local " + _local1)); if (_local2 < 0){ trace("el nivel no existe"); } else { cargar.cadena.text = VariablesGlobales.nivelesDataJugador[_local2]; borrarObjetos(); cargarObjetos(cargar.cadena.text); cerrarPopupCargarNivel(); }; } private function inputEventCapture(_arg1:TextEvent):void{ } override protected function Cargar_Ventana():void{ menu.salir.addEventListener(MouseEvent.CLICK, on_button_clicked); menu.share.addEventListener(MouseEvent.CLICK, on_button_clicked); menu.cargar.addEventListener(MouseEvent.CLICK, on_button_clicked); menu.borrar.addEventListener(MouseEvent.CLICK, on_button_clicked); menu.guardar.addEventListener(MouseEvent.CLICK, on_button_clicked); menu.probar.addEventListener(MouseEvent.CLICK, on_button_clicked); menu.tutorial.addEventListener(MouseEvent.CLICK, on_button_clicked); menu.herramientas.addEventListener(MouseEvent.CLICK, on_button_clicked); menu.herramientas.buttonMode = true; if (VariablesGlobales.editorHerramientasVisibles){ menu.herramientas.gotoAndStop(2); } else { menu.herramientas.gotoAndStop(1); }; menu.sfx.addEventListener(MouseEvent.CLICK, on_button_clicked); menu.sfx.gotoAndStop(VariablesGlobales.EstadoSFX()); menu.musica.addEventListener(MouseEvent.CLICK, on_button_clicked); VariablesGlobales.musicaActual = "editor_01"; menu.musica.gotoAndStop(VariablesGlobales.EstadoMusica()); menu.info.visible = false; submit.visible = false; submit.salir_submit.addEventListener(MouseEvent.CLICK, on_button_clicked_submit); submit.submit_submit.addEventListener(MouseEvent.CLICK, on_button_clicked_submit); guardar.visible = false; guardar.salir_guardar.addEventListener(MouseEvent.CLICK, on_button_clicked_guardar); guardar.exportar_guardar.addEventListener(MouseEvent.CLICK, on_button_clicked_guardar); guardar.guardar_guardar.addEventListener(MouseEvent.CLICK, on_button_clicked_guardar); guardar.guardar_salir_exportar.addEventListener(MouseEvent.CLICK, on_button_clicked_guardar); guardar.guardar_copiar.addEventListener(MouseEvent.CLICK, on_button_clicked_guardar); List(guardar.lista).addEventListener(ListEvent.ITEM_CLICK, on_lista_guardar_click); cargar.visible = false; cargar.salir_cargar.addEventListener(MouseEvent.CLICK, on_button_clicked_cargar); cargar.importar_cargar.addEventListener(MouseEvent.CLICK, on_button_clicked_cargar); cargar.cargar_cargar.addEventListener(MouseEvent.CLICK, on_button_clicked_cargar); cargar.cargar_borrar.addEventListener(MouseEvent.CLICK, on_button_clicked_cargar); cargar.cargar_salir_importar.addEventListener(MouseEvent.CLICK, on_button_clicked_cargar); cargar.cargar_importar_importar.addEventListener(MouseEvent.CLICK, on_button_clicked_cargar); objetos.l.addEventListener(MouseEvent.CLICK, on_object_selected); objetos.mr.addEventListener(MouseEvent.CLICK, on_object_selected); objetos.mr.gotoAndStop(1); objetos.mc.addEventListener(MouseEvent.CLICK, on_object_selected); objetos.mc.gotoAndStop(1); objetos.me.addEventListener(MouseEvent.CLICK, on_object_selected); objetos.me.gotoAndStop(1); objetos.av.addEventListener(MouseEvent.CLICK, on_object_selected); objetos.ah.addEventListener(MouseEvent.CLICK, on_object_selected); objetos.ec.addEventListener(MouseEvent.CLICK, on_object_selected); objetos.ee.addEventListener(MouseEvent.CLICK, on_object_selected); objetos.dc.addEventListener(MouseEvent.CLICK, on_object_selected); objetos.de.addEventListener(MouseEvent.CLICK, on_object_selected); objetos.cm.addEventListener(MouseEvent.CLICK, on_object_selected); objetos.ci.addEventListener(MouseEvent.CLICK, on_object_selected); objetos.cp.addEventListener(MouseEvent.CLICK, on_object_selected); objetos.cn.addEventListener(MouseEvent.CLICK, on_object_selected); objetos.bg1.addEventListener(MouseEvent.CLICK, on_button_clicked); objetos.bg2.addEventListener(MouseEvent.CLICK, on_button_clicked); objetos.bg3.addEventListener(MouseEvent.CLICK, on_button_clicked); objetos.bg4.addEventListener(MouseEvent.CLICK, on_button_clicked); objetos.bg5.addEventListener(MouseEvent.CLICK, on_button_clicked); objetos.bg6.addEventListener(MouseEvent.CLICK, on_button_clicked); objetos.bg7.addEventListener(MouseEvent.CLICK, on_button_clicked); objetos.bg8.addEventListener(MouseEvent.CLICK, on_button_clicked); seleccionFondo(1); objetos.visible = VariablesGlobales.editorHerramientasVisibles; sui = new SliderUI(stage, "x", track_mc, slider_mc, 0, 150, 36, 1); sui.addEventListener(SliderUIEvent.ON_UPDATE, doSliderUpdate); slider_mc.info_mc.visible = false; Slider(szoom).addEventListener(SliderEvent.CHANGE, on_zoom_change); MovieClip(lienzo.bg).mouseEnabled = false; MovieClip(lienzo.bg).mouseChildren = false; MovieClip(lienzo.bg).gotoAndStop(1); lienzo.bg.visible = true; lienzo.addEventListener(MouseEvent.MOUSE_MOVE, on_mouse_move); lienzo.addEventListener(MouseEvent.CLICK, on_canvas_clicked); lienzo.addChild(defaultTool); currTool = defaultTool; currTool.registrationEnabled = false; currTool.moveEnabled = true; currTool.skewEnabled = false; currTool.moveNewTargets = true; currTool.addEventListener(MouseEvent.CLICK, on_mouse_down_selector); stage.addEventListener(KeyboardEvent.KEY_UP, on_key_up_stage); InicializarEditor(); super.Cargar_Ventana(); fade.visible = false; } private function MostrarImportar():void{ cargar.cadena.visible = true; cargar.fondo_importar.visible = true; cargar.cargar_salir_importar.visible = true; cargar.cargar_importar_importar.visible = true; } private function on_mouse_down_selector(_arg1:MouseEvent):void{ trace(_arg1.currentTarget.name); if (_arg1.shiftKey){ borrarObjetoLienzo(objetoSeleccionadoLienzo); } else { if (_arg1.ctrlKey){ copiarObjetoLienzo(objetoSeleccionadoLienzo); }; }; } private function on_mouse_down(_arg1:MouseEvent):void{ trace(_arg1.currentTarget.name); if (_arg1.shiftKey){ borrarObjetoLienzo(_arg1.currentTarget); } else { if (_arg1.ctrlKey){ copiarObjetoLienzo(_arg1.currentTarget); } else { objetoSeleccionadoLienzo = _arg1.currentTarget; currTool.moveNewTargets = true; propiedadesSeleccion(objetoSeleccionadoLienzo.name); currTool.target = objetoSeleccionadoLienzo; toolInit(); }; }; } private function ZoomLienzo(_arg1:Number):void{ lienzo.camara.height = _arg1; lienzo.camara.width = ((lienzo.camara.height * 780) / 520); zoomActual = lienzo.camara.height; VariablesGlobales.editorZoomActual = zoomActual; } private function cerrarPopupSubmitNivel():void{ submit.visible = false; } override protected function Descargar_Ventana():void{ VariablesGlobales.EditorNivelesActual = null; menu.salir.removeEventListener(MouseEvent.CLICK, on_button_clicked); MovieClip(lienzo).removeEventListener(MouseEvent.MOUSE_MOVE, on_mouse_move); super.Descargar_Ventana(); } private function on_key_up_stage(_arg1:KeyboardEvent):void{ switch (_arg1.charCode){ case Keyboard.ESCAPE: if (((!((objetoSeleccionadoLienzo == null))) && (!((currTool == null))))){ currTool.target = null; }; break; }; } private function MostrarExportar():void{ guardar.cadena.visible = true; guardar.fondo_exportar.visible = true; guardar.guardar_salir_exportar.visible = true; guardar.guardar_copiar.visible = true; } public function on_button_clicked(_arg1:MouseEvent){ if (VariablesGlobales.soundMan){ VariablesGlobales.soundMan.playSound("click", 1, 0, 0); }; switch (_arg1.target.name){ case "salir": fade.alpha = 0; fade.visible = true; TweenLite.to(fade, 0.5, {alpha:1, onComplete:onFinishTweenFinal}); break; case "probar": VariablesGlobales.nivelOnline = false; VariablesGlobales.nivelEditor = true; VariablesGlobales.nivelDummy = false; VariablesGlobales.dummyOnline = false; VariablesGlobales.nivelPruebaActual = guardarObjetos(); main_class.abre_pantalla(new Juego()); main_class.cierra_pantalla(this); VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.TEST_NIVEL); break; case "tutorial": VariablesGlobales.AbreWeb(VariablesGlobales.WEB_TUTORIAL_NIVEL); break; case "herramientas": VariablesGlobales.editorHerramientasVisibles = !(VariablesGlobales.editorHerramientasVisibles); if (VariablesGlobales.editorHerramientasVisibles){ menu.herramientas.gotoAndStop(2); } else { menu.herramientas.gotoAndStop(1); }; objetos.visible = VariablesGlobales.editorHerramientasVisibles; break; case "zoom": zoomActual = (zoomActual + 1); if (zoomActual > 3){ zoomActual = 1; }; ZoomLienzo(zoomActual); break; case "share": abrirPopupSubmitNivel(); break; case "cargar": abrirPopupCargarNivel(); break; case "guardar": abrirPopupGuardarNivel(); break; case "borrar": borrarObjetos(); break; case "sfx": menu.sfx.gotoAndStop(VariablesGlobales.EstadoSFX(true)); break; case "musica": menu.musica.gotoAndStop(VariablesGlobales.EstadoMusica(true)); break; case "bg1": seleccionFondo(1); break; case "bg2": seleccionFondo(2); break; case "bg3": seleccionFondo(3); break; case "bg4": seleccionFondo(4); break; case "bg5": seleccionFondo(5); break; case "bg6": seleccionFondo(6); break; case "bg7": seleccionFondo(7); break; case "bg8": seleccionFondo(8); break; default: trace((_arg1.target.name + " UNDEFINED")); break; }; } private function borrarObjetoLienzo(_arg1:Object):void{ var _local2:int; trace(("borrar " + _arg1.name)); _local2 = listaObjetos.indexOf(_arg1); if (_local2 > -1){ listaObjetos.splice(_local2, 1); if (currTool.target == _arg1){ currTool.target = null; }; MovieClip(_arg1).parent.removeChild(MovieClip(_arg1)); if (_arg1.name == VariablesGlobales.catalogoObjetos.LANZADERA){ hayLanzadera = false; }; }; } private function insertarObjeto(_arg1, _arg2, _arg3, _arg4, _arg5, _arg6):Object{ var _local7:*; _local7 = graficoObjeto(_arg1); if (_local7){ _local7.x = _arg2; _local7.y = _arg3; _local7.width = (_arg4 + 1); _local7.height = (_arg5 + 1); _local7.rotation = _arg6; _local7.gotoAndStop(1); lienzo.addChild(_local7); MovieClip(_local7).name = _arg1; _local7.addEventListener(MouseEvent.MOUSE_DOWN, on_mouse_down); listaObjetos.push(_local7); return (_local7); }; trace((("ERROR no se pudo insertar objeto [" + _arg1) + "]")); return (null); } private function abrirPopupGuardarNivel():void{ OcultarExportar(); guardar.cadena.visible = false; guardar.cadena.text = guardarObjetos(); guardar.titulo.text = "Save Your Level"; guardar.visible = true; stage.focus = guardar.nombre; CargarListaNiveles(guardar.lista); } private function guardarNivelEnLocal():void{ var _local1:int; _local1 = VariablesGlobales.nivelesNombresJugador.indexOf(guardar.nombre.text); trace(("indice nivel local " + _local1)); if (_local1 < 0){ VariablesGlobales.nivelesNombresJugador.push(guardar.nombre.text); VariablesGlobales.nivelesDataJugador.push(guardar.cadena.text); } else { VariablesGlobales.nivelesNombresJugador[_local1] = guardar.nombre.text; VariablesGlobales.nivelesDataJugador[_local1] = guardar.cadena.text; }; CargarListaNiveles(guardar.lista); } private function on_canvas_clicked(_arg1:MouseEvent):void{ var _local2:Boolean; var _local3:*; if (((!((_arg1.target.name == "lienzo"))) && (!((_arg1.target.name == "bg"))))){ } else { if (objetoSeleccionado){ _local2 = false; if (objetoSeleccionado.name == VariablesGlobales.catalogoObjetos.LANZADERA){ if (hayLanzadera){ _local2 = false; } else { _local2 = true; }; } else { _local2 = true; }; if (_local2){ if ((((((((((((objetoSeleccionado.name == VariablesGlobales.catalogoObjetos.ESTATICO_CUADRADO)) || ((objetoSeleccionado.name == VariablesGlobales.catalogoObjetos.ESTATICO_CIRCULO)))) || ((objetoSeleccionado.name == VariablesGlobales.catalogoObjetos.DINAMICO_CUADRADO)))) || ((objetoSeleccionado.name == VariablesGlobales.catalogoObjetos.DINAMICO_CIRCULO)))) || ((objetoSeleccionado.name == VariablesGlobales.catalogoObjetos.AUTONOMO_HORIZONTAL)))) || ((objetoSeleccionado.name == VariablesGlobales.catalogoObjetos.AUTONOMO_VERTICAL)))){ _local3 = insertarObjeto(objetoSeleccionado.name, _arg1.localX, _arg1.localY, objetoSeleccionado.myMask.width, objetoSeleccionado.myMask.height, objetoSeleccionado.rotation); } else { _local3 = insertarObjeto(objetoSeleccionado.name, _arg1.localX, _arg1.localY, objetoSeleccionado.width, objetoSeleccionado.height, objetoSeleccionado.rotation); }; if (_local3 != null){ currTool.moveNewTargets = false; objetoSeleccionadoLienzo = _local3; propiedadesSeleccion(objetoSeleccionadoLienzo.name); currTool.target = objetoSeleccionadoLienzo; }; }; }; }; } private function copiarObjetoLienzo(_arg1:Object):void{ var _local2:*; var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; _local3 = _arg1.rotation; _local4 = _arg1.x; _local5 = _arg1.y; if (_local4 != x_coor_copia){ num_copia = 1; } else { num_copia++; }; x_coor_copia = _local4; y_coor_copia = _local5; _arg1.rotation = 0; _local6 = _arg1.width; _local7 = _arg1.height; _arg1.rotation = _local3; _local2 = insertarObjeto(_arg1.name, (_local4 + (20 * num_copia)), (_local5 + (10 * num_copia)), _local6, _local7, _local3); } function onFinishTweenFinal():void{ VariablesGlobales.musicMan.stopAllSounds(); main_class.abre_pantalla(new Principal()); main_class.cierra_pantalla(this); } function toolInit():void{ currTool.parent.setChildIndex(currTool, (currTool.parent.numChildren - 1)); } private function on_button_clicked_guardar(_arg1:MouseEvent):void{ if (VariablesGlobales.soundMan){ VariablesGlobales.soundMan.playSound("click", 1, 0, 0); }; trace("boton guardar"); switch (_arg1.target.name){ case "salir_guardar": cerrarPopupGuardarNivel(); break; case "exportar_guardar": MostrarExportar(); break; case "guardar_guardar": if (guardar.nombre.text != ""){ guardarNivelEnLocal(); } else { trace("alarma sin nombre"); }; break; case "guardar_salir_exportar": cerrarPopupGuardarNivel(); break; case "guardar_copiar": System.setClipboard(guardar.cadena.text); cerrarPopupGuardarNivel(); break; }; } private function seleccionFondo(_arg1):void{ lienzo.bg.gotoAndStop(_arg1); objetos.bg1.gotoAndStop(1); objetos.bg2.gotoAndStop(1); objetos.bg3.gotoAndStop(1); objetos.bg4.gotoAndStop(1); objetos.bg5.gotoAndStop(1); objetos.bg6.gotoAndStop(1); objetos.bg7.gotoAndStop(1); objetos.bg8.gotoAndStop(1); switch (_arg1){ case 1: objetos.bg1.gotoAndStop(2); break; case 2: objetos.bg2.gotoAndStop(2); break; case 3: objetos.bg3.gotoAndStop(2); break; case 4: objetos.bg4.gotoAndStop(2); break; case 5: objetos.bg5.gotoAndStop(2); break; case 6: objetos.bg6.gotoAndStop(2); break; case 7: objetos.bg7.gotoAndStop(2); break; case 8: objetos.bg7.gotoAndStop(8); break; }; } private function OcultarImportar():void{ cargar.cadena.visible = false; cargar.fondo_importar.visible = false; cargar.cargar_salir_importar.visible = false; cargar.cargar_importar_importar.visible = false; } private function abrirPopupCargarNivel():void{ OcultarImportar(); cargar.cadena.visible = false; cargar.cadena.text = guardarObjetos(); cargar.titulo.text = "Load a Saved Level"; cargar.visible = true; CargarListaNiveles(cargar.lista); } public function cargarObjetos(_arg1:String):void{ var _local2:Array; var _local3:Array; var _local4:int; var _local5:Array; if (_arg1.length > 0){ _local2 = _arg1.split("#"); lienzo.bg.gotoAndStop(_local2[0]); if (_local2.length > 0){ _local3 = String(_local2[1]).split("|"); _local4 = 0; while (_local4 < _local3.length) { if (_local3[_local4] != ""){ _local5 = String(_local3[_local4]).split(","); if (_local5[0] != "nom"){ insertarObjeto(_local5[0], _local5[1], _local5[2], _local5[3], _local5[4], _local5[5]); }; }; _local4++; }; }; }; } private function concatenarCadenaImagen(_arg1):String{ var _local2:BitmapData; var _local3:Rectangle; var _local4:ByteArray; var _local5:String; _local2 = new BitmapData(_arg1.width, _arg1.height, false, 4294967295); _local2.draw(_arg1); _local3 = new Rectangle(0, 0, _local2.width, _local2.height); trace(((("concatenar rect ancho= " + _local3.width.toFixed(3)) + " alto= ") + _local3.height.toFixed(3))); _local4 = _local2.getPixels(_local3); _local5 = compress(_local4); trace(_local5); return (_local5); } private function doSliderUpdate(_arg1:SliderUIEvent):void{ zoomActual = (520 + Math.round((_arg1.currentValue * 5))); ZoomLienzo(zoomActual); } private function on_object_selected(_arg1:MouseEvent):void{ if (objetoSeleccionado){ TweenMax.to(objetoSeleccionado, 0.1, {glowFilter:{color:0xFFFFFF, alpha:1, blurX:0, blurY:0}}); objetoSeleccionado.visible = true; }; objetoSeleccionado = _arg1.currentTarget; TweenMax.to(objetoSeleccionado, 0.1, {glowFilter:{color:0xFF0000, alpha:1, blurX:15, blurY:15}}); } private function on_zoom_change(_arg1:SliderEvent):void{ zoomActual = (520 + (_arg1.value * 5)); ZoomLienzo(zoomActual); } private function on_button_clicked_(_arg1:MouseEvent):void{ if (VariablesGlobales.soundMan){ VariablesGlobales.soundMan.playSound("click", 1, 0, 0); }; trace("boton guardar"); switch (_arg1.target.name){ case "salir_guardar": cerrarPopupGuardarNivel(); break; case "exportar_guardar": MostrarExportar(); break; case "guardar_guardar": if (guardar.nombre.text != ""){ guardarNivelEnLocal(); } else { trace("alarma sin nombre"); }; break; case "guardar_salir_exportar": cerrarPopupGuardarNivel(); break; case "guardar_copiar": System.setClipboard(guardar.cadena.text); cerrarPopupGuardarNivel(); break; }; } private function OcultarExportar():void{ guardar.cadena.visible = false; guardar.fondo_exportar.visible = false; guardar.guardar_salir_exportar.visible = false; guardar.guardar_copiar.visible = false; } private function cerrarPopupGuardarNivel():void{ OcultarExportar(); guardar.visible = false; } function compress(_arg1:ByteArray):String{ var _local2:Base64Encoder; _local2 = new Base64Encoder(); _arg1.compress(); _local2.encodeBytes(_arg1); return (_local2.drain().split("\n").join("")); } private function borrarNivelLocal():void{ var _local1:String; var _local2:int; if (List(cargar.lista).selectedIndex < 0){ return; }; _local1 = List(cargar.lista).selectedItem.label; _local2 = VariablesGlobales.nivelesNombresJugador.indexOf(_local1); trace(("nombre nivel local " + _local1)); if (_local2 < 0){ trace("el nivel no existe"); } else { VariablesGlobales.nivelesNombresJugador.splice(_local2, 1); VariablesGlobales.nivelesDataJugador.splice(_local2, 1); CargarListaNiveles(cargar.lista); }; } private function getBitmapData(_arg1:DisplayObject):BitmapData{ var _local2:BitmapData; if (_local2){ _local2 = null; }; _local2 = new BitmapData(780, 520); _local2.draw(_arg1); return (_local2); } private function on_button_clicked_submit(_arg1:MouseEvent):void{ if (VariablesGlobales.soundMan){ VariablesGlobales.soundMan.playSound("click", 1, 0, 0); }; trace("boton submit"); switch (_arg1.target.name){ case "salir_submit": cerrarPopupSubmitNivel(); break; case "submit_submit": if (((!((submit.nombre.text == ""))) && (!((submit.jugador.text == ""))))){ SaveLevel(); } else { if (submit.nombre.text == ""){ stage.focus = submit.nombre; } else { stage.focus = submit.jugador; }; }; break; }; } private function on_lista_guardar_click(_arg1:ListEvent):void{ guardar.nombre.text = _arg1.item.label; } private function cerrarPopupCargarNivel():void{ OcultarImportar(); cargar.visible = false; } private function on_mouse_move(_arg1:MouseEvent):void{ menu.info.text = ((("x:" + int(_arg1.localX)) + " - y:") + int(_arg1.localY)); } private function propiedadesSeleccion(_arg1):void{ currTool.scaleEnabled = true; currTool.scaleRightControl.visible = true; currTool.scaleLeftControl.visible = true; currTool.scaleTopControl.visible = true; currTool.scaleBottomControl.visible = true; currTool.constrainScale = false; currTool.rotationEnabled = true; currTool.maxScaleX = 100; currTool.maxScaleY = 100; if ((((((((((((((_arg1 == VariablesGlobales.catalogoObjetos.LANZADERA)) || ((_arg1 == VariablesGlobales.catalogoObjetos.META_CUADRADA)))) || ((_arg1 == VariablesGlobales.catalogoObjetos.META_ESTATICA)))) || ((_arg1 == VariablesGlobales.catalogoObjetos.META_REDONDA)))) || ((_arg1 == VariablesGlobales.catalogoObjetos.CIRCULO_MONEDA)))) || ((_arg1 == VariablesGlobales.catalogoObjetos.CIRCULO_POSITIVO)))) || ((_arg1 == VariablesGlobales.catalogoObjetos.CIRCULO_NEGATIVO)))){ currTool.scaleEnabled = false; currTool.scaleRightControl.visible = false; currTool.scaleLeftControl.visible = false; currTool.scaleTopControl.visible = false; currTool.scaleBottomControl.visible = false; currTool.constrainScale = false; currTool.rotationEnabled = false; }; if ((((_arg1 == VariablesGlobales.catalogoObjetos.ESTATICO_CUADRADO)) || ((_arg1 == VariablesGlobales.catalogoObjetos.DINAMICO_CUADRADO)))){ currTool.scaleEnabled = true; currTool.scaleRightControl.visible = true; currTool.scaleLeftControl.visible = true; currTool.scaleTopControl.visible = true; currTool.scaleBottomControl.visible = true; currTool.constrainScale = false; currTool.rotationEnabled = true; currTool.maxScaleX = 20; currTool.maxScaleY = 20; }; if ((((_arg1 == VariablesGlobales.catalogoObjetos.ESTATICO_CIRCULO)) || ((_arg1 == VariablesGlobales.catalogoObjetos.DINAMICO_CIRCULO)))){ currTool.scaleEnabled = true; currTool.scaleRightControl.visible = false; currTool.scaleLeftControl.visible = false; currTool.scaleTopControl.visible = false; currTool.scaleBottomControl.visible = false; currTool.constrainScale = true; currTool.rotationEnabled = true; currTool.maxScaleX = 20; currTool.maxScaleY = 20; }; if ((((_arg1 == VariablesGlobales.catalogoObjetos.AUTONOMO_HORIZONTAL)) || ((_arg1 == VariablesGlobales.catalogoObjetos.AUTONOMO_VERTICAL)))){ currTool.scaleEnabled = true; currTool.scaleRightControl.visible = true; currTool.scaleLeftControl.visible = true; currTool.scaleTopControl.visible = true; currTool.scaleBottomControl.visible = true; currTool.constrainScale = false; currTool.rotationEnabled = false; currTool.maxScaleX = 5; currTool.maxScaleY = 5; }; if (_arg1 == VariablesGlobales.catalogoObjetos.CIRCULO_IMPULSOR){ currTool.scaleEnabled = false; currTool.scaleRightControl.visible = false; currTool.scaleLeftControl.visible = false; currTool.scaleTopControl.visible = false; currTool.scaleBottomControl.visible = false; currTool.constrainScale = false; currTool.rotationEnabled = true; }; } private function InicializarEditor():void{ listaObjetos = new Array(); hayLanzadera = false; hayImpulsor = false; zoomActual = VariablesGlobales.editorZoomActual; trace(("valor slide " + Math.round(((zoomActual - 520) / 5)))); szoom.value = Math.round(((zoomActual - 520) / 5)); ZoomLienzo(zoomActual); if (VariablesGlobales.nivelPruebaActual != ""){ cargarObjetos(VariablesGlobales.nivelPruebaActual); }; } private function guardarObjetos():String{ var _local1:String; var _local2:int; var _local3:Number; _local1 = ""; sinObjetos = true; hayImpulsor = false; numObjetos = 0; _local1 = ((_local1 + MovieClip(lienzo.bg).currentFrame) + "#"); _local2 = 0; while (_local2 < listaObjetos.length) { _local3 = Number(listaObjetos[_local2].rotation).toFixed(2); listaObjetos[_local2].rotation = 0; _local1 = ((((((((((((_local1 + listaObjetos[_local2].name) + ",") + Number(listaObjetos[_local2].x).toFixed(2)) + ",") + Number(listaObjetos[_local2].y).toFixed(2)) + ",") + Number(listaObjetos[_local2].width).toFixed(2)) + ",") + Number(listaObjetos[_local2].height).toFixed(2)) + ",") + _local3) + "|"); listaObjetos[_local2].rotation = _local3; numObjetos = (numObjetos + 1); sinObjetos = false; _local2++; }; return (_local1); } function SaveLevel():void{ var _local1:PlayerLevel; _local1 = new PlayerLevel(); _local1.Name = ("" + submit.nombre.text); _local1.PlayerName = ("" + submit.jugador.text); _local1.Votes = 0; _local1.Score = 0; _local1.Data = guardarObjetos(); _local1.CustomData.tipo = "nivel"; PlayerLevels.Save(_local1, submit.miniatura, this.SaveComplete); } private function on_button_clicked_cargar(_arg1:MouseEvent):void{ if (VariablesGlobales.soundMan){ VariablesGlobales.soundMan.playSound("click", 1, 0, 0); }; trace("boton cargar"); switch (_arg1.target.name){ case "salir_cargar": cerrarPopupCargarNivel(); break; case "importar_cargar": MostrarImportar(); break; case "cargar_cargar": cargarNivelLocal(); break; case "cargar_borrar": borrarNivelLocal(); break; case "cargar_salir_importar": cerrarPopupCargarNivel(); break; case "cargar_importar_importar": cargar.visible = false; borrarObjetos(); cargarObjetos(cargar.cadena.text); cerrarPopupCargarNivel(); break; }; } private function graficoObjeto(_arg1:String):MovieClip{ var _local2:*; switch (_arg1){ case VariablesGlobales.catalogoObjetos.LANZADERA: hayLanzadera = true; objetoSeleccionadoNombre = VariablesGlobales.catalogoObjetos.LANZADERA; return (new lanzadera_editor_mc()); case VariablesGlobales.catalogoObjetos.META_REDONDA: objetoSeleccionadoNombre = VariablesGlobales.catalogoObjetos.META_REDONDA; return (new meta_circular_mc()); case VariablesGlobales.catalogoObjetos.META_CUADRADA: objetoSeleccionadoNombre = VariablesGlobales.catalogoObjetos.META_CUADRADA; return (new meta_cuadrada_mc()); case VariablesGlobales.catalogoObjetos.META_ESTATICA: objetoSeleccionadoNombre = VariablesGlobales.catalogoObjetos.META_ESTATICA; return (new meta_estatica_mc()); case VariablesGlobales.catalogoObjetos.AUTONOMO_HORIZONTAL: objetoSeleccionadoNombre = VariablesGlobales.catalogoObjetos.AUTONOMO_HORIZONTAL; _local2 = new autonomo_horizontal_editor_mc(); MovieClipEnmascarado(_local2).nombre_original = objetoSeleccionadoNombre; return (MovieClip(_local2)); case VariablesGlobales.catalogoObjetos.AUTONOMO_VERTICAL: objetoSeleccionadoNombre = VariablesGlobales.catalogoObjetos.AUTONOMO_VERTICAL; _local2 = new autonomo_horizontal_editor_mc(); MovieClipEnmascarado(_local2).nombre_original = objetoSeleccionadoNombre; return (MovieClip(_local2)); case VariablesGlobales.catalogoObjetos.ESTATICO_CUADRADO: objetoSeleccionadoNombre = VariablesGlobales.catalogoObjetos.ESTATICO_CUADRADO; _local2 = new estatico_cuadrado_editor_mc(); MovieClipEnmascarado(_local2).nombre_original = objetoSeleccionadoNombre; return (MovieClip(_local2)); case VariablesGlobales.catalogoObjetos.ESTATICO_CIRCULO: objetoSeleccionadoNombre = VariablesGlobales.catalogoObjetos.ESTATICO_CIRCULO; _local2 = new estatico_circulo_editor_mc(); MovieClipEnmascarado(_local2).nombre_original = objetoSeleccionadoNombre; return (MovieClip(_local2)); case VariablesGlobales.catalogoObjetos.DINAMICO_CUADRADO: objetoSeleccionadoNombre = VariablesGlobales.catalogoObjetos.DINAMICO_CUADRADO; _local2 = new dinamico_cuadrado_editor_mc(); MovieClipEnmascarado(_local2).nombre_original = objetoSeleccionadoNombre; return (MovieClip(_local2)); case VariablesGlobales.catalogoObjetos.DINAMICO_CIRCULO: objetoSeleccionadoNombre = VariablesGlobales.catalogoObjetos.DINAMICO_CIRCULO; _local2 = new dinamico_circulo_editor_mc(); MovieClipEnmascarado(_local2).nombre_original = objetoSeleccionadoNombre; return (MovieClip(_local2)); case VariablesGlobales.catalogoObjetos.CIRCULO_MONEDA: objetoSeleccionadoNombre = VariablesGlobales.catalogoObjetos.CIRCULO_MONEDA; return (new circulo_moneda_mc()); case VariablesGlobales.catalogoObjetos.CIRCULO_IMPULSOR: objetoSeleccionadoNombre = VariablesGlobales.catalogoObjetos.CIRCULO_IMPULSOR; return (new circulo_impulsor_mc()); case VariablesGlobales.catalogoObjetos.CIRCULO_POSITIVO: objetoSeleccionadoNombre = VariablesGlobales.catalogoObjetos.CIRCULO_POSITIVO; return (new circulo_positivo_mc()); case VariablesGlobales.catalogoObjetos.CIRCULO_NEGATIVO: objetoSeleccionadoNombre = VariablesGlobales.catalogoObjetos.CIRCULO_NEGATIVO; return (new circulo_negativo_mc()); default: trace((("objeto [" + _arg1) + "] no asociado a un mc ")); }; } private function CargarListaNiveles(_arg1):void{ var _local2:int; _arg1.removeAll(); _local2 = 0; while (_local2 < VariablesGlobales.nivelesNombresJugador.length) { _arg1.addItem({label:VariablesGlobales.nivelesNombresJugador[_local2], data:VariablesGlobales.nivelesDataJugador[_local2]}); _local2++; }; } private function abrirPopupSubmitNivel():void{ var _local1:Bitmap; currTool.target = null; _local1 = new Bitmap(getBitmapData(lienzo)); _local1.height = ((_local1.height * 100) / _local1.width); _local1.width = 100; _local1.y = ((submit.miniatura.height / 2) - (_local1.height / 2)); submit.miniatura.addChild(_local1); submit.titulo.text = "Submit Your Level"; submit.e_nombre.text = "Level Name:"; submit.e_jugador.text = "Enter Your Name:"; submit.error_nombre.visible = false; submit.visible = true; trace("crear miniatura"); stage.focus = submit.nombre; } function SaveComplete(_arg1:PlayerLevel, _arg2:Object):void{ if (_arg2.Success){ trace("Level saved successfully, the level parameter is ready for use!"); } else { trace(("Level saved error " + _arg2.ErrorCode)); submit.error_nombre.visible = true; return; }; trace(("Agregar nivel id local " + _arg1.LevelId)); VariablesGlobales.nivelesOnlineJugador.push(_arg1.LevelId); VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.SHARE_NIVEL); cerrarPopupSubmitNivel(); } } }//package
Section 347
//editor_01 (editor_01) package { import flash.media.*; public dynamic class editor_01 extends Sound { } }//package
Section 348
//Editor_Animacion (Editor_Animacion) package { import com.greensock.*; public class Editor_Animacion extends Ventana { public function Editor_Animacion(){ addFrameScript(21, frame22, 57, frame58); if (VariablesGlobales.soundMan){ VariablesGlobales.soundMan.playSound("gas_solo", 1, 0, 0); }; } override protected function Cargar_Ventana():void{ super.Cargar_Ventana(); } public function finAnimacion(){ trace("fin animacion"); main_class.cierra_pantalla(this); } function frame22(){ cerrarVentanaPadre(); } override protected function Descargar_Ventana():void{ super.Descargar_Ventana(); } public function cerrarVentanaPadre(){ Principal(VariablesGlobales.PrincipalActual).forzarCerrar(); if (VariablesGlobales.EditorNivelesActual != null){ Editor(VariablesGlobales.EditorNivelesActual).visible = true; }; if (VariablesGlobales.EditorDummyActual != null){ EditorDummy(VariablesGlobales.EditorDummyActual).visible = true; }; trace("cerrar ventana padre"); } function frame58(){ stop(); finAnimacion(); } } }//package
Section 349
//EditorDummy (EditorDummy) package { import flash.events.*; import fl.controls.*; import fl.events.*; import com.nocircleno.graffiti.*; import com.nocircleno.graffiti.tools.*; import flash.ui.*; import flash.geom.*; import com.greensock.*; import flash.display.*; import Playtomic.*; import flash.utils.*; import flash.system.*; import mx.utils.*; import flash.text.*; public class EditorDummy extends Ventana { private const CABEZA:String = "cabeza"; private const BRAZOD:String = "brazod"; private const BRAZOI:String = "brazoi"; private const PINCEL:String = "pincel"; private const GOMA:String = "goma"; private const TORSO2:String = "torso2"; private const TORSO1:String = "torso1"; private const TORSO3:String = "torso3"; private const PIERNAD:String = "piernad"; private const PIERNAI:String = "piernai"; private const ANTEBRAZOI:String = "antebrazoi"; private const ANTEBRAZOD:String = "antebrazod"; private const BOTE:String = "bote"; private const ANTEPIERNAD:String = "antepiernad"; private const ANTEPIERNAI:String = "antepiernai"; public var lowerArmR:brazo_inf_d; public var submit:MovieClip; public var lowerArmL:brazo_inf_i; private var _fillColor:uint;// = 0xFF0000 public var stroke_color_mc:ColorPicker; public var b_capa_piernad:MovieClip; private var _brush:Brush; var canvas_antebrazod:GraffitiCanvas; public var zoom_slider_mc:Slider; public var b_capa_piernai:MovieClip; public var bucket_tool_mc:MovieClip; private var _strokeColor:uint;// = 0xFF00 var canvas_antebrazoi:GraffitiCanvas; var canvas_actual:GraffitiCanvas; public var cursor_mouse:MovieClip; private var herramienta_actual:String;// = "" public var fade:MovieClip; public var cargar:MovieClip; public var b_capa_antebrazod:MovieClip; public var b_capa_antebrazoi:MovieClip; public var undo_btn:MovieClip; public var b_capa_antepiernad:MovieClip; public var lienzo:MovieClip; public var torso2:torso_central; public var save_btn:Button; public var torso1:torso_superior; public var b_capa_antepiernai:MovieClip; public var lowerLegR:pierna_inf_d; public var lowerLegL:pierna_inf_i; public var area:MovieClip; public var redo_btn:MovieClip; public var overlay_cb:CheckBox; public var torso3:torso_inferior; var canvas_cabeza:GraffitiCanvas; public var size_slider:Slider; var canvas_brazod:GraffitiCanvas; public var eraser_tool_mc:MovieClip; var canvas_brazoi:GraffitiCanvas; public var t_size:TextField; var canvas_piernad:GraffitiCanvas; public var _brushShapes:ComboBox; private var _brushSize:Number;// = 2 public var b_capa_cabeza:MovieClip; var canvas_piernai:GraffitiCanvas; public var b_capa_brazod:MovieClip; public var upperArmL:brazo_sup_i; public var upperArmR:brazo_sup_d; public var b_capa_brazoi:MovieClip; var canvas:GraffitiCanvas; public var menu:MovieClip; var canvas_torso1:GraffitiCanvas; public var clear_btn:Button; var canvas_antepiernai:GraffitiCanvas; var canvas_torso2:GraffitiCanvas; var canvas_torso3:GraffitiCanvas; var canvas_antepiernad:GraffitiCanvas; private var factor_area:int;// = 2 public var brush_tool_mc:MovieClip; public var guardar:MovieClip; public var b_capa_torso1:MovieClip; public var b_capa_torso2:MovieClip; public var b_capa_torso3:MovieClip; private var _eraser:Brush; public var upperLegL:pierna_sup_i; public var upperLegR:pierna_sup_d; public var head:cabeza; public function EditorDummy(){ _brushSize = 2; _strokeColor = 0xFF00; _fillColor = 0xFF0000; herramienta_actual = ""; factor_area = 2; super(); VariablesGlobales.EditorDummyActual = this; __setProp_save_btn_EditorDummy_controles_1(); __setProp_clear_btn_EditorDummy_controles_1(); __setProp_zoom_slider_mc_EditorDummy_controles_1(); __setProp_size_slider_EditorDummy_controles_1(); __setProp_overlay_cb_EditorDummy_controles_1(); } function __setProp_clear_btn_EditorDummy_controles_1(){ try { clear_btn["componentInspectorSetting"] = true; } catch(e:Error) { }; clear_btn.emphasized = false; clear_btn.enabled = true; clear_btn.label = "clear"; clear_btn.labelPlacement = "right"; clear_btn.selected = false; clear_btn.toggle = false; clear_btn.visible = true; try { clear_btn["componentInspectorSetting"] = false; } catch(e:Error) { }; } private function historyHandler(_arg1:MouseEvent):void{ if (_arg1.currentTarget == undo_btn){ canvas_actual.prevHistory(); if (canvas_actual.historyPosition == 0){ undo_btn.mouseEnabled = false; undo_btn.alpha = 0.5; }; redo_btn.mouseEnabled = true; redo_btn.alpha = 1; } else { if (_arg1.currentTarget == redo_btn){ canvas_actual.nextHistory(); if (canvas_actual.historyPosition == (canvas_actual.historyLength - 1)){ redo_btn.mouseEnabled = false; redo_btn.alpha = 0.5; }; undo_btn.mouseEnabled = true; undo_btn.alpha = 1; }; }; } function __setProp_zoom_slider_mc_EditorDummy_controles_1(){ try { zoom_slider_mc["componentInspectorSetting"] = true; } catch(e:Error) { }; zoom_slider_mc.direction = "horizontal"; zoom_slider_mc.enabled = true; zoom_slider_mc.liveDragging = false; zoom_slider_mc.maximum = 2; zoom_slider_mc.minimum = 1; zoom_slider_mc.snapInterval = 0; zoom_slider_mc.tickInterval = 0.1; zoom_slider_mc.value = 1; zoom_slider_mc.visible = true; try { zoom_slider_mc["componentInspectorSetting"] = false; } catch(e:Error) { }; } private function seleccionarCapa(_arg1:MouseEvent):void{ switch (_arg1.currentTarget.name){ case "b_capa_cabeza": activarCapa(CABEZA); break; case "b_capa_torso1": activarCapa(TORSO1); break; case "b_capa_torso2": activarCapa(TORSO2); break; case "b_capa_torso3": activarCapa(TORSO3); break; case "b_capa_antebrazoi": activarCapa(ANTEBRAZOI); break; case "b_capa_brazoi": activarCapa(BRAZOI); break; case "b_capa_antebrazod": activarCapa(ANTEBRAZOD); break; case "b_capa_brazod": activarCapa(BRAZOD); break; case "b_capa_antepiernai": activarCapa(ANTEPIERNAI); break; case "b_capa_piernai": activarCapa(PIERNAI); break; case "b_capa_antepiernad": activarCapa(ANTEPIERNAD); break; case "b_capa_piernad": activarCapa(PIERNAD); break; }; } private function on_mouse_over_canvas(_arg1:MouseEvent):void{ if (_arg1.currentTarget.canvasEnabled){ Mouse.hide(); switch (herramienta_actual){ case PINCEL: cursor_mouse.gotoAndStop(1); break; case GOMA: cursor_mouse.gotoAndStop(2); break; case BOTE: cursor_mouse.gotoAndStop(3); break; }; cursor_mouse.visible = true; cursor_mouse.x = stage.mouseX; cursor_mouse.y = stage.mouseY; }; } private function cerrarPopupCargarDummy():void{ cargar.visible = false; } private function borrarObjetos():void{ borrarCapas(); } override protected function Cargar_Ventana():void{ menu.salir.addEventListener(MouseEvent.CLICK, on_button_clicked); menu.guardar.addEventListener(MouseEvent.CLICK, on_button_clicked); menu.cargar.addEventListener(MouseEvent.CLICK, on_button_clicked); menu.probar.addEventListener(MouseEvent.CLICK, on_button_clicked); menu.tutorial.addEventListener(MouseEvent.CLICK, on_button_clicked); menu.borrar.addEventListener(MouseEvent.CLICK, on_button_clicked); menu.share.addEventListener(MouseEvent.CLICK, on_button_clicked); menu.musica.addEventListener(MouseEvent.CLICK, on_button_clicked); VariablesGlobales.musicaActual = "editor_01"; menu.musica.gotoAndStop(VariablesGlobales.EstadoMusica()); menu.herramientas.visible = false; submit.visible = false; submit.salir_submit.addEventListener(MouseEvent.CLICK, on_button_clicked_submit); submit.submit_submit.addEventListener(MouseEvent.CLICK, on_button_clicked_submit); guardar.visible = false; guardar.salir_guardar.addEventListener(MouseEvent.CLICK, on_button_clicked_guardar); guardar.exportar_guardar.addEventListener(MouseEvent.CLICK, on_button_clicked_guardar); guardar.guardar_guardar.addEventListener(MouseEvent.CLICK, on_button_clicked_guardar); guardar.guardar_salir_exportar.addEventListener(MouseEvent.CLICK, on_button_clicked_guardar); guardar.guardar_copiar.addEventListener(MouseEvent.CLICK, on_button_clicked_guardar); List(guardar.lista).addEventListener(ListEvent.ITEM_CLICK, on_lista_guardar_click); cargar.visible = false; cargar.salir_cargar.addEventListener(MouseEvent.CLICK, on_button_clicked_cargar); cargar.importar_cargar.addEventListener(MouseEvent.CLICK, on_button_clicked_cargar); cargar.cargar_cargar.addEventListener(MouseEvent.CLICK, on_button_clicked_cargar); cargar.cargar_borrar.addEventListener(MouseEvent.CLICK, on_button_clicked_cargar); cargar.cargar_salir_importar.addEventListener(MouseEvent.CLICK, on_button_clicked_cargar); cargar.cargar_importar_importar.addEventListener(MouseEvent.CLICK, on_button_clicked_cargar); canvas = new GraffitiCanvas(lienzo.width, lienzo.height, 100); canvas.addEventListener(GraffitiCanvas.HISTORY_LENGTH_CHANGE, historyLengthChangeHandler); canvas.x = lienzo.x; lienzo.addChild(canvas); canvas.canvasEnabled = false; lowerLegL.stop(); canvas_piernai = new GraffitiCanvas(VariablesGlobales.dummyCoordenadasRectanguloAncho[9], VariablesGlobales.dummyCoordenadasRectanguloAlto[9], 100); canvas_piernai.addEventListener(GraffitiCanvas.HISTORY_LENGTH_CHANGE, historyLengthChangeHandler); canvas_piernai.addEventListener(MouseEvent.CLICK, on_mouse_click_canvas); canvas_piernai.addEventListener(MouseEvent.MOUSE_OVER, on_mouse_over_canvas); canvas_piernai.addEventListener(MouseEvent.MOUSE_OUT, on_mouse_out_canvas); canvas_piernai.addEventListener(MouseEvent.MOUSE_MOVE, on_mouse_move_canvas); canvas_piernai.x = ((lowerLegL.x - lowerLegL.width) - lienzo.x); canvas_piernai.y = (lowerLegL.y - lowerLegL.height); lienzo.addChild(canvas_piernai); canvas_piernai.canvasEnabled = false; lowerLegR.stop(); canvas_piernad = new GraffitiCanvas(VariablesGlobales.dummyCoordenadasRectanguloAncho[11], VariablesGlobales.dummyCoordenadasRectanguloAlto[11], 100); canvas_piernad.addEventListener(GraffitiCanvas.HISTORY_LENGTH_CHANGE, historyLengthChangeHandler); canvas_piernad.addEventListener(MouseEvent.CLICK, on_mouse_click_canvas); canvas_piernad.addEventListener(MouseEvent.MOUSE_OVER, on_mouse_over_canvas); canvas_piernad.addEventListener(MouseEvent.MOUSE_OUT, on_mouse_out_canvas); canvas_piernad.addEventListener(MouseEvent.MOUSE_MOVE, on_mouse_move_canvas); canvas_piernad.x = ((lowerLegR.x - lowerLegR.width) - lienzo.x); canvas_piernad.y = (lowerLegR.y - lowerLegR.height); lienzo.addChild(canvas_piernad); canvas_piernad.canvasEnabled = false; lowerArmL.stop(); canvas_brazoi = new GraffitiCanvas(VariablesGlobales.dummyCoordenadasRectanguloAncho[5], VariablesGlobales.dummyCoordenadasRectanguloAlto[5], 100); canvas_brazoi.addEventListener(GraffitiCanvas.HISTORY_LENGTH_CHANGE, historyLengthChangeHandler); canvas_brazoi.addEventListener(MouseEvent.CLICK, on_mouse_click_canvas); canvas_brazoi.addEventListener(MouseEvent.MOUSE_OVER, on_mouse_over_canvas); canvas_brazoi.addEventListener(MouseEvent.MOUSE_OUT, on_mouse_out_canvas); canvas_brazoi.addEventListener(MouseEvent.MOUSE_MOVE, on_mouse_move_canvas); canvas_brazoi.x = ((lowerArmL.x - lowerArmL.width) - lienzo.x); canvas_brazoi.y = (lowerArmL.y - lowerArmL.height); lienzo.addChild(canvas_brazoi); canvas_brazoi.canvasEnabled = false; lowerArmR.stop(); canvas_brazod = new GraffitiCanvas(VariablesGlobales.dummyCoordenadasRectanguloAncho[7], VariablesGlobales.dummyCoordenadasRectanguloAlto[7], 100); canvas_brazod.addEventListener(GraffitiCanvas.HISTORY_LENGTH_CHANGE, historyLengthChangeHandler); canvas_brazod.addEventListener(MouseEvent.CLICK, on_mouse_click_canvas); canvas_brazod.addEventListener(MouseEvent.MOUSE_OVER, on_mouse_over_canvas); canvas_brazod.addEventListener(MouseEvent.MOUSE_OUT, on_mouse_out_canvas); canvas_brazod.addEventListener(MouseEvent.MOUSE_MOVE, on_mouse_move_canvas); canvas_brazod.x = ((lowerArmR.x - lowerArmR.width) - lienzo.x); canvas_brazod.y = (lowerArmR.y - lowerArmR.height); lienzo.addChild(canvas_brazod); canvas_brazod.canvasEnabled = false; upperLegL.stop(); canvas_antepiernai = new GraffitiCanvas(VariablesGlobales.dummyCoordenadasRectanguloAncho[8], VariablesGlobales.dummyCoordenadasRectanguloAlto[8], 100); canvas_antepiernai.addEventListener(GraffitiCanvas.HISTORY_LENGTH_CHANGE, historyLengthChangeHandler); canvas_antepiernai.addEventListener(MouseEvent.CLICK, on_mouse_click_canvas); canvas_antepiernai.addEventListener(MouseEvent.MOUSE_OVER, on_mouse_over_canvas); canvas_antepiernai.addEventListener(MouseEvent.MOUSE_OUT, on_mouse_out_canvas); canvas_antepiernai.addEventListener(MouseEvent.MOUSE_MOVE, on_mouse_move_canvas); canvas_antepiernai.x = ((upperLegL.x - upperLegL.width) - lienzo.x); canvas_antepiernai.y = (upperLegL.y - upperLegL.height); lienzo.addChild(canvas_antepiernai); canvas_antepiernai.canvasEnabled = false; upperLegR.stop(); canvas_antepiernad = new GraffitiCanvas(VariablesGlobales.dummyCoordenadasRectanguloAncho[10], VariablesGlobales.dummyCoordenadasRectanguloAlto[10], 100); canvas_antepiernad.addEventListener(GraffitiCanvas.HISTORY_LENGTH_CHANGE, historyLengthChangeHandler); canvas_antepiernad.addEventListener(MouseEvent.CLICK, on_mouse_click_canvas); canvas_antepiernad.addEventListener(MouseEvent.MOUSE_OVER, on_mouse_over_canvas); canvas_antepiernad.addEventListener(MouseEvent.MOUSE_OUT, on_mouse_out_canvas); canvas_antepiernad.addEventListener(MouseEvent.MOUSE_MOVE, on_mouse_move_canvas); canvas_antepiernad.x = ((upperLegR.x - upperLegR.width) - lienzo.x); canvas_antepiernad.y = (upperLegR.y - upperLegR.height); lienzo.addChild(canvas_antepiernad); canvas_antepiernad.canvasEnabled = false; upperArmL.stop(); canvas_antebrazoi = new GraffitiCanvas(VariablesGlobales.dummyCoordenadasRectanguloAncho[4], VariablesGlobales.dummyCoordenadasRectanguloAlto[4], 100); canvas_antebrazoi.addEventListener(GraffitiCanvas.HISTORY_LENGTH_CHANGE, historyLengthChangeHandler); canvas_antebrazoi.addEventListener(MouseEvent.CLICK, on_mouse_click_canvas); canvas_antebrazoi.addEventListener(MouseEvent.MOUSE_OVER, on_mouse_over_canvas); canvas_antebrazoi.addEventListener(MouseEvent.MOUSE_OUT, on_mouse_out_canvas); canvas_antebrazoi.addEventListener(MouseEvent.MOUSE_MOVE, on_mouse_move_canvas); canvas_antebrazoi.x = ((upperArmL.x - upperArmL.width) - lienzo.x); canvas_antebrazoi.y = (upperArmL.y - upperArmL.height); lienzo.addChild(canvas_antebrazoi); canvas_antebrazoi.canvasEnabled = false; upperArmR.stop(); canvas_antebrazod = new GraffitiCanvas(VariablesGlobales.dummyCoordenadasRectanguloAncho[6], VariablesGlobales.dummyCoordenadasRectanguloAlto[6], 100); canvas_antebrazod.addEventListener(GraffitiCanvas.HISTORY_LENGTH_CHANGE, historyLengthChangeHandler); canvas_antebrazod.addEventListener(MouseEvent.CLICK, on_mouse_click_canvas); canvas_antebrazod.addEventListener(MouseEvent.MOUSE_OVER, on_mouse_over_canvas); canvas_antebrazod.addEventListener(MouseEvent.MOUSE_OUT, on_mouse_out_canvas); canvas_antebrazod.addEventListener(MouseEvent.MOUSE_MOVE, on_mouse_move_canvas); canvas_antebrazod.x = ((upperArmR.x - upperArmR.width) - lienzo.x); canvas_antebrazod.y = (upperArmR.y - upperArmR.height); lienzo.addChild(canvas_antebrazod); canvas_antebrazod.canvasEnabled = false; torso3.stop(); canvas_torso3 = new GraffitiCanvas(VariablesGlobales.dummyCoordenadasRectanguloAncho[3], VariablesGlobales.dummyCoordenadasRectanguloAlto[3], 100); canvas_torso3.addEventListener(GraffitiCanvas.HISTORY_LENGTH_CHANGE, historyLengthChangeHandler); canvas_torso3.addEventListener(MouseEvent.CLICK, on_mouse_click_canvas); canvas_torso3.addEventListener(MouseEvent.MOUSE_OVER, on_mouse_over_canvas); canvas_torso3.addEventListener(MouseEvent.MOUSE_OUT, on_mouse_out_canvas); canvas_torso3.addEventListener(MouseEvent.MOUSE_MOVE, on_mouse_move_canvas); canvas_torso3.x = ((torso3.x - torso3.width) - lienzo.x); canvas_torso3.y = (torso3.y - torso3.height); lienzo.addChild(canvas_torso3); canvas_torso3.canvasEnabled = false; torso2.stop(); canvas_torso2 = new GraffitiCanvas(VariablesGlobales.dummyCoordenadasRectanguloAncho[2], VariablesGlobales.dummyCoordenadasRectanguloAlto[2], 100); canvas_torso2.addEventListener(GraffitiCanvas.HISTORY_LENGTH_CHANGE, historyLengthChangeHandler); canvas_torso2.addEventListener(MouseEvent.CLICK, on_mouse_click_canvas); canvas_torso2.addEventListener(MouseEvent.MOUSE_OVER, on_mouse_over_canvas); canvas_torso2.addEventListener(MouseEvent.MOUSE_OUT, on_mouse_out_canvas); canvas_torso2.addEventListener(MouseEvent.MOUSE_MOVE, on_mouse_move_canvas); canvas_torso2.x = ((torso2.x - torso2.width) - lienzo.x); canvas_torso2.y = (torso2.y - torso2.height); lienzo.addChild(canvas_torso2); canvas_torso2.canvasEnabled = false; torso1.stop(); canvas_torso1 = new GraffitiCanvas(VariablesGlobales.dummyCoordenadasRectanguloAncho[1], VariablesGlobales.dummyCoordenadasRectanguloAlto[1], 100); canvas_torso1.addEventListener(GraffitiCanvas.HISTORY_LENGTH_CHANGE, historyLengthChangeHandler); canvas_torso1.addEventListener(MouseEvent.CLICK, on_mouse_click_canvas); canvas_torso1.addEventListener(MouseEvent.MOUSE_OVER, on_mouse_over_canvas); canvas_torso1.addEventListener(MouseEvent.MOUSE_OUT, on_mouse_out_canvas); canvas_torso1.addEventListener(MouseEvent.MOUSE_MOVE, on_mouse_move_canvas); canvas_torso1.x = ((torso1.x - torso1.width) - lienzo.x); canvas_torso1.y = (torso1.y - torso1.height); lienzo.addChild(canvas_torso1); canvas_torso1.canvasEnabled = false; head.stop(); canvas_cabeza = new GraffitiCanvas(VariablesGlobales.dummyCoordenadasRectanguloAncho[0], VariablesGlobales.dummyCoordenadasRectanguloAlto[0], 100); canvas_cabeza.addEventListener(GraffitiCanvas.HISTORY_LENGTH_CHANGE, historyLengthChangeHandler); canvas_cabeza.addEventListener(MouseEvent.CLICK, on_mouse_click_canvas); canvas_cabeza.addEventListener(MouseEvent.MOUSE_OVER, on_mouse_over_canvas); canvas_cabeza.addEventListener(MouseEvent.MOUSE_OUT, on_mouse_out_canvas); canvas_cabeza.addEventListener(MouseEvent.MOUSE_MOVE, on_mouse_move_canvas); canvas_cabeza.x = ((head.x - head.width) - lienzo.x); canvas_cabeza.y = (head.y - head.height); lienzo.addChild(canvas_cabeza); canvas_cabeza.canvasEnabled = false; b_capa_cabeza.buttonMode = true; b_capa_cabeza.addEventListener(MouseEvent.CLICK, seleccionarCapa); b_capa_torso1.buttonMode = true; b_capa_torso1.addEventListener(MouseEvent.CLICK, seleccionarCapa); b_capa_torso2.buttonMode = true; b_capa_torso2.addEventListener(MouseEvent.CLICK, seleccionarCapa); b_capa_torso3.buttonMode = true; b_capa_torso3.addEventListener(MouseEvent.CLICK, seleccionarCapa); b_capa_antebrazoi.buttonMode = true; b_capa_antebrazoi.addEventListener(MouseEvent.CLICK, seleccionarCapa); b_capa_brazoi.buttonMode = true; b_capa_brazoi.addEventListener(MouseEvent.CLICK, seleccionarCapa); b_capa_antebrazod.buttonMode = true; b_capa_antebrazod.addEventListener(MouseEvent.CLICK, seleccionarCapa); b_capa_brazod.buttonMode = true; b_capa_brazod.addEventListener(MouseEvent.CLICK, seleccionarCapa); b_capa_antepiernai.buttonMode = true; b_capa_antepiernai.addEventListener(MouseEvent.CLICK, seleccionarCapa); b_capa_piernai.buttonMode = true; b_capa_piernai.addEventListener(MouseEvent.CLICK, seleccionarCapa); b_capa_antepiernad.buttonMode = true; b_capa_antepiernad.addEventListener(MouseEvent.CLICK, seleccionarCapa); b_capa_piernad.buttonMode = true; b_capa_piernad.addEventListener(MouseEvent.CLICK, seleccionarCapa); _brush = new Brush(_brushSize, _fillColor, "normal"); _eraser = new Brush(_brushSize, _fillColor, "erase"); undo_btn.addEventListener(MouseEvent.CLICK, historyHandler); redo_btn.addEventListener(MouseEvent.CLICK, historyHandler); brush_tool_mc.buttonMode = true; brush_tool_mc.addEventListener(MouseEvent.CLICK, on_tool_click); eraser_tool_mc.buttonMode = true; eraser_tool_mc.addEventListener(MouseEvent.CLICK, on_tool_click); bucket_tool_mc.buttonMode = true; bucket_tool_mc.addEventListener(MouseEvent.CLICK, on_tool_click); Slider(size_slider).addEventListener(SliderEvent.CHANGE, on_size_change); _brushSize = Slider(size_slider).value; t_size.text = ("" + _brushSize); ColorPicker(stroke_color_mc).addEventListener(ColorPickerEvent.CHANGE, on_stroke_color_change); _strokeColor = ColorPicker(stroke_color_mc).selectedColor; _brushShapes.addItem({label:"Round", data:BrushType.ROUND}); _brushShapes.addItem({label:"Square", data:BrushType.SQUARE}); _brushShapes.addItem({label:"Diamond", data:BrushType.DIAMOND}); ComboBox(_brushShapes).addEventListener(Event.CHANGE, on_shape_change); ComboBox(_brushShapes).selectedIndex = 0; activarCapa(CABEZA); configura_herramienta_actual(PINCEL); borrarCapas(); cursor_mouse.visible = false; cursor_mouse.mouseChildren = false; cursor_mouse.mouseEnabled = false; if (VariablesGlobales.dummyPruebaActual != ""){ cargarObjetos(VariablesGlobales.dummyPruebaActual); }; super.Cargar_Ventana(); fade.visible = false; } private function MostrarImportar():void{ cargar.cadena.text = ""; cargar.cadena.visible = true; cargar.fondo_importar.visible = true; cargar.cargar_salir_importar.visible = true; cargar.cargar_importar_importar.visible = true; } private function on_shape_change(_arg1:Event):void{ trace(("shape change " + ComboBox(_brushShapes).selectedItem.data)); configura_herramienta_actual(herramienta_actual); } private function on_stroke_color_change(_arg1:ColorPickerEvent):void{ trace(("stroke color change " + ColorPicker(stroke_color_mc).selectedColor)); _strokeColor = ColorPicker(stroke_color_mc).selectedColor; configura_herramienta_actual(herramienta_actual); } private function on_mouse_move_canvas(_arg1:MouseEvent):void{ if (_arg1.currentTarget.canvasEnabled){ Mouse.hide(); switch (herramienta_actual){ case PINCEL: cursor_mouse.gotoAndStop(1); break; case GOMA: cursor_mouse.gotoAndStop(2); break; case BOTE: cursor_mouse.gotoAndStop(3); break; }; cursor_mouse.visible = true; cursor_mouse.x = stage.mouseX; cursor_mouse.y = stage.mouseY; }; } override protected function Descargar_Ventana():void{ VariablesGlobales.EditorDummyActual = null; menu.salir.removeEventListener(MouseEvent.CLICK, on_button_clicked); super.Descargar_Ventana(); } private function on_tool_click(_arg1:MouseEvent):void{ trace(_arg1.currentTarget.name); switch (_arg1.currentTarget.name){ case "brush_tool_mc": configura_herramienta_actual(PINCEL); break; case "eraser_tool_mc": configura_herramienta_actual(GOMA); break; case "bucket_tool_mc": configura_herramienta_actual(BOTE); break; }; } private function abrirPopupSubmitDummy():void{ var _local1:Bitmap; menu.visible = false; area.visible = false; _local1 = new Bitmap(getBitmapData(this)); menu.visible = true; area.visible = true; _local1.height = ((_local1.height * 100) / _local1.width); _local1.width = 100; _local1.y = ((submit.miniatura.height / 2) - (_local1.height / 2)); submit.miniatura.addChild(_local1); submit.titulo.text = "Submit Your Dummy"; submit.e_nombre.text = "Dummy Name:"; submit.e_jugador.text = "Enter Your Name:"; submit.error_nombre.visible = false; submit.visible = true; trace("crear miniatura"); stage.focus = submit.nombre; } private function activarCapa(_arg1):void{ canvas_cabeza.canvasEnabled = false; canvas_torso1.canvasEnabled = false; canvas_torso2.canvasEnabled = false; canvas_torso3.canvasEnabled = false; canvas_antebrazoi.canvasEnabled = false; canvas_brazoi.canvasEnabled = false; canvas_antebrazod.canvasEnabled = false; canvas_brazod.canvasEnabled = false; canvas_antepiernai.canvasEnabled = false; canvas_piernai.canvasEnabled = false; canvas_antepiernad.canvasEnabled = false; canvas_piernad.canvasEnabled = false; b_capa_cabeza.gotoAndStop(1); b_capa_torso1.gotoAndStop(1); b_capa_torso2.gotoAndStop(1); b_capa_torso3.gotoAndStop(1); b_capa_antebrazoi.gotoAndStop(1); b_capa_brazoi.gotoAndStop(1); b_capa_antebrazod.gotoAndStop(1); b_capa_brazod.gotoAndStop(1); b_capa_antepiernai.gotoAndStop(1); b_capa_piernai.gotoAndStop(1); b_capa_antepiernad.gotoAndStop(1); b_capa_piernad.gotoAndStop(1); switch (_arg1){ case CABEZA: b_capa_cabeza.gotoAndStop(2); canvas_actual = canvas_cabeza; break; case TORSO1: b_capa_torso1.gotoAndStop(2); canvas_actual = canvas_torso1; break; case TORSO2: b_capa_torso2.gotoAndStop(2); canvas_actual = canvas_torso2; break; case TORSO3: b_capa_torso3.gotoAndStop(2); canvas_actual = canvas_torso3; break; case ANTEBRAZOI: b_capa_antebrazoi.gotoAndStop(2); canvas_actual = canvas_antebrazoi; break; case BRAZOI: b_capa_brazoi.gotoAndStop(2); canvas_actual = canvas_brazoi; break; case ANTEBRAZOD: b_capa_antebrazod.gotoAndStop(2); canvas_actual = canvas_antebrazod; break; case BRAZOD: b_capa_brazod.gotoAndStop(2); canvas_actual = canvas_brazod; break; case ANTEPIERNAI: b_capa_antepiernai.gotoAndStop(2); canvas_actual = canvas_antepiernai; break; case PIERNAI: b_capa_piernai.gotoAndStop(2); canvas_actual = canvas_piernai; break; case ANTEPIERNAD: b_capa_antepiernad.gotoAndStop(2); canvas_actual = canvas_antepiernad; break; case PIERNAD: b_capa_piernad.gotoAndStop(2); canvas_actual = canvas_piernad; break; }; canvas_actual.canvasEnabled = true; area.x = (canvas_actual.x + lienzo.x); area.y = canvas_actual.y; area.width = canvas_actual.width; area.height = canvas_actual.height; configura_herramienta_actual(herramienta_actual); actualizarEstadoBotonesCapaActual(); } private function borrarDummyLocal():void{ var _local1:String; var _local2:int; if (List(cargar.lista).selectedIndex < 0){ return; }; _local1 = List(cargar.lista).selectedItem.label; _local2 = VariablesGlobales.dummyNombresJugador.indexOf(_local1); trace(("nombre dummy local " + _local1)); if (_local2 < 0){ trace("el dummy no existe"); } else { VariablesGlobales.dummyNombresJugador.splice(_local2, 1); VariablesGlobales.dummyDataJugador.splice(_local2, 1); CargarListaDummy(cargar.lista); }; } function onFinishTweenFinal():void{ VariablesGlobales.musicMan.stopAllSounds(); main_class.abre_pantalla(new Principal()); main_class.cierra_pantalla(this); } private function CargarListaDummy(_arg1):void{ var _local2:int; _arg1.removeAll(); _local2 = 0; while (_local2 < VariablesGlobales.dummyNombresJugador.length) { _arg1.addItem({label:VariablesGlobales.dummyNombresJugador[_local2], data:VariablesGlobales.dummyDataJugador[_local2]}); _local2++; }; } private function on_button_clicked_guardar(_arg1:MouseEvent):void{ if (VariablesGlobales.soundMan){ VariablesGlobales.soundMan.playSound("click", 1, 0, 0); }; trace("boton guardar"); switch (_arg1.target.name){ case "salir_guardar": cerrarPopupGuardarDummy(); break; case "exportar_guardar": MostrarExportar(); break; case "guardar_guardar": if (guardar.nombre.text != ""){ guardarDummyEnLocal(); } else { trace("alarma sin nombre"); }; break; case "guardar_salir_exportar": cerrarPopupGuardarDummy(); break; case "guardar_copiar": trace("cadena copiada"); System.setClipboard(guardar.cadena.text); cerrarPopupGuardarDummy(); break; }; } private function MostrarExportar():void{ guardar.cadena.visible = true; guardar.fondo_exportar.visible = true; guardar.guardar_salir_exportar.visible = true; guardar.guardar_copiar.visible = true; } private function overlayHandler(_arg1:Event):void{ if (_arg1.currentTarget.selected){ canvas.overlay = plantilla; } else { canvas.overlay = null; }; } private function actualizarEstadoBotonesCapaActual():void{ if ((((canvas_actual.historyLength > 0)) && (!((canvas_actual.historyPosition == 0))))){ undo_btn.mouseEnabled = true; undo_btn.alpha = 1; } else { undo_btn.mouseEnabled = false; undo_btn.alpha = 0.5; }; if ((((canvas_actual.historyLength > 0)) && (!((canvas_actual.historyPosition == (canvas_actual.historyLength - 1)))))){ redo_btn.mouseEnabled = true; redo_btn.alpha = 1; } else { redo_btn.mouseEnabled = false; redo_btn.alpha = 0.5; }; } public function on_button_clicked(_arg1:MouseEvent){ switch (_arg1.target.name){ case "salir": fade.alpha = 0; fade.visible = true; TweenLite.to(fade, 0.5, {alpha:1, onComplete:onFinishTweenFinal}); break; case "cargar": abrirPopupCargarDummy(); break; case "guardar": abrirPopupGuardarDummy(); break; case "probar": VariablesGlobales.nivelOnline = false; VariablesGlobales.nivelEditor = true; VariablesGlobales.nivelDummy = true; VariablesGlobales.dummyOnline = false; VariablesGlobales.nivelPruebaActual = VariablesGlobales.nivelPruebaDummy; VariablesGlobales.dummyPruebaActual = guardarObjetos(); main_class.abre_pantalla(new Juego()); main_class.cierra_pantalla(this); VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.TEST_DUMMY); break; case "tutorial": VariablesGlobales.AbreWeb(VariablesGlobales.WEB_TUTORIAL_DUMMY); break; case "share": abrirPopupSubmitDummy(); break; case "borrar": borrarCapas(); break; case "sfx": break; case "musica": menu.musica.gotoAndStop(VariablesGlobales.EstadoMusica(true)); break; default: trace((_arg1.target.name + " UNDEFINED")); break; }; } private function OcultarImportar():void{ cargar.cadena.visible = false; cargar.fondo_importar.visible = false; cargar.cargar_salir_importar.visible = false; cargar.cargar_importar_importar.visible = false; } private function historyLengthChangeHandler(_arg1:Event):void{ actualizarEstadoBotonesCapaActual(); } function __setProp_size_slider_EditorDummy_controles_1(){ try { size_slider["componentInspectorSetting"] = true; } catch(e:Error) { }; size_slider.direction = "horizontal"; size_slider.enabled = true; size_slider.liveDragging = false; size_slider.maximum = 10; size_slider.minimum = 1; size_slider.snapInterval = 0; size_slider.tickInterval = 0; size_slider.value = 4; size_slider.visible = true; try { size_slider["componentInspectorSetting"] = false; } catch(e:Error) { }; } function uncompress(_arg1:String):ByteArray{ var _local2:Base64Decoder; var _local3:ByteArray; _local2 = new Base64Decoder(); _local2.decode(_arg1); _local3 = _local2.toByteArray(); _local3.uncompress(); return (_local3); } private function cerrarPopupSubmitDummy():void{ submit.visible = false; } private function saveHandler(_arg1:MouseEvent):void{ var _local2:String; _local2 = guardarObjetos(); trace(((("cadena (" + _local2.length) + ")= ") + _local2)); } function SaveDummy():void{ var _local1:PlayerLevel; _local1 = new PlayerLevel(); _local1.Name = ("" + submit.nombre.text); _local1.PlayerName = ("" + submit.jugador.text); _local1.Data = guardarObjetos(); _local1.CustomData.tipo = "dummy"; PlayerLevels.Save(_local1, submit.miniatura, this.SaveComplete); } private function cargarObjetos(_arg1:String):void{ var _local2:Array; trace("cargar cadena dummy"); _local2 = _arg1.split(","); trace((("" + _local2.length) + " imagenes a cargar")); dibujarCadenaImagen(_local2[0], canvas_cabeza, 0); dibujarCadenaImagen(_local2[1], canvas_torso1, 1); dibujarCadenaImagen(_local2[2], canvas_torso2, 2); dibujarCadenaImagen(_local2[3], canvas_torso3, 3); dibujarCadenaImagen(_local2[4], canvas_antebrazoi, 4); dibujarCadenaImagen(_local2[5], canvas_brazoi, 5); dibujarCadenaImagen(_local2[6], canvas_antebrazod, 6); dibujarCadenaImagen(_local2[7], canvas_brazod, 7); dibujarCadenaImagen(_local2[8], canvas_antepiernai, 8); dibujarCadenaImagen(_local2[9], canvas_piernai, 9); dibujarCadenaImagen(_local2[10], canvas_antepiernad, 10); dibujarCadenaImagen(_local2[11], canvas_piernad, 11); } private function configura_herramienta_actual(_arg1):void{ herramienta_actual = _arg1; brush_tool_mc.gotoAndStop(1); eraser_tool_mc.gotoAndStop(1); bucket_tool_mc.gotoAndStop(1); switch (herramienta_actual){ case PINCEL: brush_tool_mc.gotoAndStop(2); canvas_actual.activeTool = new Brush(_brushSize, _strokeColor, ComboBox(_brushShapes).selectedItem.data, ToolMode.NORMAL); break; case GOMA: eraser_tool_mc.gotoAndStop(2); canvas_actual.activeTool = new Brush(_brushSize, _strokeColor, ComboBox(_brushShapes).selectedItem.data, ToolMode.ERASE); break; case BOTE: bucket_tool_mc.gotoAndStop(2); canvas_actual.activeTool = null; break; }; } private function concatenarCadenaImagen(_arg1:BitmapData, _arg2:int=0):String{ var _local3:Rectangle; var _local4:ByteArray; var _local5:String; _local3 = new Rectangle(0, 0, VariablesGlobales.dummyCoordenadasRectanguloAncho[_arg2], VariablesGlobales.dummyCoordenadasRectanguloAlto[_arg2]); trace(((("concatenar rect ancho= " + _local3.width.toFixed(3)) + " alto= ") + _local3.height.toFixed(3))); _local4 = _arg1.getPixels(_local3); _local5 = compress(_local4); return (_local5); } private function OcultarExportar():void{ guardar.cadena.visible = false; guardar.fondo_exportar.visible = false; guardar.guardar_salir_exportar.visible = false; guardar.guardar_copiar.visible = false; } private function abrirPopupGuardarDummy():void{ OcultarExportar(); guardar.cadena.visible = false; guardar.cadena.text = guardarObjetos(); guardar.titulo.text = "Save Your Dummy"; guardar.visible = true; CargarListaDummy(guardar.lista); stage.focus = guardar.nombre; } private function guardarDummyEnLocal():void{ var _local1:int; _local1 = VariablesGlobales.dummyNombresJugador.indexOf(guardar.nombre.text); trace(("indice dummy local " + _local1)); if (_local1 < 0){ VariablesGlobales.dummyNombresJugador.push(guardar.nombre.text); VariablesGlobales.dummyDataJugador.push(guardar.cadena.text); } else { VariablesGlobales.dummyNombresJugador[_local1] = guardar.nombre.text; VariablesGlobales.dummyDataJugador[_local1] = guardar.cadena.text; }; CargarListaDummy(guardar.lista); } private function on_size_change(_arg1:SliderEvent):void{ trace("size change"); _brushSize = Slider(size_slider).value; t_size.text = ("" + _brushSize); configura_herramienta_actual(herramienta_actual); } private function cargarDummyLocal():void{ var _local1:String; var _local2:int; if (List(cargar.lista).selectedIndex < 0){ return; }; _local1 = List(cargar.lista).selectedItem.label; _local2 = VariablesGlobales.dummyNombresJugador.indexOf(_local1); trace(("nombre dummy local " + _local1)); if (_local2 < 0){ trace("el dummy no existe"); } else { cargar.cadena.text = VariablesGlobales.dummyDataJugador[_local2]; borrarObjetos(); cargarObjetos(cargar.cadena.text); cerrarPopupCargarDummy(); }; } private function getBitmapData(_arg1:DisplayObject):BitmapData{ var _local2:BitmapData; var _local3:Matrix; if (_local2){ _local2 = null; }; _local2 = new BitmapData(420, 420); _local3 = new Matrix(); _local3.tx = -180; _local3.ty = -50; _local2.draw(_arg1, _local3, null, null, new Rectangle(0, 0, 420, 420), true); return (_local2); } function compress(_arg1:ByteArray):String{ var _local2:Base64Encoder; _local2 = new Base64Encoder(); _arg1.compress(); _local2.encodeBytes(_arg1); return (_local2.drain().split("\n").join("")); } function __setProp_overlay_cb_EditorDummy_controles_1(){ try { overlay_cb["componentInspectorSetting"] = true; } catch(e:Error) { }; overlay_cb.enabled = true; overlay_cb.label = "Overlay"; overlay_cb.labelPlacement = "right"; overlay_cb.selected = true; overlay_cb.visible = true; try { overlay_cb["componentInspectorSetting"] = false; } catch(e:Error) { }; } private function on_lista_guardar_click(_arg1:ListEvent):void{ guardar.nombre.text = _arg1.item.label; } private function on_button_clicked_submit(_arg1:MouseEvent):void{ if (VariablesGlobales.soundMan){ VariablesGlobales.soundMan.playSound("click", 1, 0, 0); }; trace("boton submit"); switch (_arg1.target.name){ case "salir_submit": cerrarPopupSubmitDummy(); break; case "submit_submit": if (((!((submit.nombre.text == ""))) && (!((submit.jugador.text == ""))))){ SaveDummy(); } else { if (submit.nombre.text == ""){ stage.focus = submit.nombre; } else { stage.focus = submit.jugador; }; }; break; }; } private function dibujarCadenaImagen(_arg1, _arg2, _arg3):void{ var _local4:Rectangle; var _local5:BitmapData; _local4 = new Rectangle(0, 0, VariablesGlobales.dummyCoordenadasRectanguloAncho[_arg3], VariablesGlobales.dummyCoordenadasRectanguloAlto[_arg3]); trace(((((((((_arg3 + " ") + _local4.x) + " ") + _local4.y) + " ") + _local4.width) + " ") + _local4.height)); _local5 = new BitmapData(_local4.width, _local4.height, true, 0xFFFFFF); _local5.setPixels(_local4, uncompress(_arg1)); _arg2.drawToCanvas(_local5); } private function on_mouse_click_canvas(_arg1:MouseEvent):void{ if ((((herramienta_actual == BOTE)) && (_arg1.currentTarget.canvasEnabled))){ trace(((("bote en coor: " + _arg1.currentTarget.mouseX) + " - ") + _arg1.currentTarget.mouseY)); canvas_actual.fill(new Point(_arg1.currentTarget.mouseX, _arg1.currentTarget.mouseY), _strokeColor); }; } private function on_mouse_out_canvas(_arg1:MouseEvent):void{ if (_arg1.currentTarget.canvasEnabled){ cursor_mouse.visible = false; Mouse.show(); }; } private function abrirPopupCargarDummy():void{ OcultarImportar(); cargar.cadena.visible = false; cargar.cadena.text = guardarObjetos(); cargar.titulo.text = "Load a Saved Dummy"; cargar.visible = true; CargarListaDummy(cargar.lista); } private function clearCanvasHandler(_arg1:MouseEvent):void{ borrarCapas(); } private function guardarObjetos():String{ var _local1:String; _local1 = ""; _local1 = ((_local1 + concatenarCadenaImagen(canvas_cabeza.drawing(), 0)) + ","); _local1 = ((_local1 + concatenarCadenaImagen(canvas_torso1.drawing(), 1)) + ","); _local1 = ((_local1 + concatenarCadenaImagen(canvas_torso2.drawing(), 2)) + ","); _local1 = ((_local1 + concatenarCadenaImagen(canvas_torso3.drawing(), 3)) + ","); _local1 = ((_local1 + concatenarCadenaImagen(canvas_antebrazoi.drawing(), 4)) + ","); _local1 = ((_local1 + concatenarCadenaImagen(canvas_brazoi.drawing(), 5)) + ","); _local1 = ((_local1 + concatenarCadenaImagen(canvas_antebrazod.drawing(), 6)) + ","); _local1 = ((_local1 + concatenarCadenaImagen(canvas_brazod.drawing(), 7)) + ","); _local1 = ((_local1 + concatenarCadenaImagen(canvas_antepiernai.drawing(), 8)) + ","); _local1 = ((_local1 + concatenarCadenaImagen(canvas_piernai.drawing(), 9)) + ","); _local1 = ((_local1 + concatenarCadenaImagen(canvas_antepiernad.drawing(), 10)) + ","); _local1 = (_local1 + concatenarCadenaImagen(canvas_piernad.drawing(), 11)); return (_local1); } private function borrarCapas():void{ canvas_cabeza.clearCanvas(); canvas_torso1.clearCanvas(); canvas_torso2.clearCanvas(); canvas_torso3.clearCanvas(); canvas_antebrazoi.clearCanvas(); canvas_brazoi.clearCanvas(); canvas_antebrazod.clearCanvas(); canvas_brazod.clearCanvas(); canvas_antepiernai.clearCanvas(); canvas_piernai.clearCanvas(); canvas_antepiernad.clearCanvas(); canvas_piernad.clearCanvas(); } private function on_button_clicked_cargar(_arg1:MouseEvent):void{ if (VariablesGlobales.soundMan){ VariablesGlobales.soundMan.playSound("click", 1, 0, 0); }; trace("boton cargar"); switch (_arg1.target.name){ case "salir_cargar": cerrarPopupCargarDummy(); break; case "importar_cargar": MostrarImportar(); break; case "cargar_cargar": cargarDummyLocal(); break; case "cargar_borrar": borrarDummyLocal(); break; case "cargar_salir_importar": cerrarPopupCargarDummy(); break; case "cargar_importar_importar": cargar.visible = false; borrarObjetos(); cargarObjetos(cargar.cadena.text); cerrarPopupCargarDummy(); break; }; } private function cerrarPopupGuardarDummy():void{ guardar.visible = false; } function __setProp_save_btn_EditorDummy_controles_1(){ try { save_btn["componentInspectorSetting"] = true; } catch(e:Error) { }; save_btn.emphasized = false; save_btn.enabled = true; save_btn.label = "save"; save_btn.labelPlacement = "right"; save_btn.selected = false; save_btn.toggle = false; save_btn.visible = true; try { save_btn["componentInspectorSetting"] = false; } catch(e:Error) { }; } private function zoomHandler(_arg1:SliderEvent):void{ trace(("zoom change " + _arg1.value)); canvas.zoom = _arg1.value; } function SaveComplete(_arg1:PlayerLevel, _arg2:Object):void{ if (_arg2.Success){ trace("Dummy saved successfully, the dummy parameter is ready for use!"); } else { trace(("Dummy saved error " + _arg2.ErrorCode)); submit.error_nombre.visible = true; return; }; trace(("Agregar dummy id local " + _arg1.LevelId)); VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.SHARE_DUMMY); VariablesGlobales.dummyOnlineJugador.push(_arg1.LevelId); cerrarPopupSubmitDummy(); } } }//package
Section 350
//estatico_circulo_editor_mc (estatico_circulo_editor_mc) package { public dynamic class estatico_circulo_editor_mc extends MovieClipEnmascarado { } }//package
Section 351
//estatico_circulo_mc (estatico_circulo_mc) package { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class estatico_circulo_mc extends MovieClip { public var texture:MovieClip; public var myMask:MovieClip; public function estatico_circulo_mc(){ addFrameScript(0, frame1); } function frame1(){ texture.mask = myMask; } } }//package
Section 352
//estatico_cuadrado_editor_mc (estatico_cuadrado_editor_mc) package { public dynamic class estatico_cuadrado_editor_mc extends MovieClipEnmascarado { } }//package
Section 353
//estatico_cuadrado_mc (estatico_cuadrado_mc) package { import flash.display.*; public dynamic class estatico_cuadrado_mc extends MovieClip { public var texture:MovieClip; public var myMask:MovieClip; } }//package
Section 354
//ficha_mc (ficha_mc) package { import flash.text.*; import flash.display.*; public dynamic class ficha_mc extends MovieClip { public var id:TextField; public var info1:TextField; public var info2:TextField; public var info3:TextField; public var miniatura:SimpleButton; public var b_nombre:SimpleButton; public var info:SimpleButton; public var nombre:TextField; } }//package
Section 355
//ficha_nivel_mc (ficha_nivel_mc) package { import flash.text.*; import flash.display.*; public dynamic class ficha_nivel_mc extends MovieClip { public var indice:TextField; public var nota:MovieClip; public var bloqueado:MovieClip; } }//package
Section 356
//ficha_skin_mc (ficha_skin_mc) package { import flash.display.*; import flash.text.*; public dynamic class ficha_skin_mc extends MovieClip { public var desbloqueado:MovieClip; public var indice:TextField; public var estado:TextField; public var seleccionado:MovieClip; public var aleatoreo:MovieClip; public var bloqueado:MovieClip; } }//package
Section 357
//focusRectSkin (focusRectSkin) package { import flash.display.*; public dynamic class focusRectSkin extends MovieClip { } }//package
Section 358
//Galeria (Galeria) package { import com.greensock.*; import flash.events.*; import flash.ui.*; import flash.display.*; public class Galeria extends Ventana { public var fondo:MovieClip; private var numClicks:int;// = 0 public var fade:MovieClip; public var p_logros:MovieClip; private var listaFichas:Array; public function Galeria(){ numClicks = 0; listaFichas = []; super(); VariablesGlobales.GaleriaActual = this; } function CargarLista():void{ var _local1:MovieClip; var _local2:Boolean; var _local3:Number; var _local4:Number; var _local5:int; var _local6:ficha_skin_mc; _local1 = new MovieClip(); _local2 = true; _local3 = 0; _local4 = 0; listaFichas = []; _local5 = 0; while (_local5 < VariablesGlobales.logrosMan.matrizLogros.length) { _local6 = new ficha_skin_mc(); _local6.indice.text = ("" + _local5); _local6.estado.text = ("" + VariablesGlobales.logrosMan.LogroDesbloqueado(_local5).toString()); _local6.seleccionado.visible = false; _local6.indice.visible = false; _local6.estado.visible = false; _local6.seleccionado.gotoAndStop(_local5); _local6.bloqueado.gotoAndStop(_local5); _local6.desbloqueado.gotoAndStop(_local5); if (_local5 == 0){ _local6.bloqueado.visible = false; _local6.seleccionado.nom.text = "0. Random"; _local6.seleccionado.desc.visible = false; _local6.desbloqueado.visible = false; _local6.aleatoreo.visible = true; _local6.estado.text = "true"; } else { _local6.aleatoreo.visible = false; _local6.bloqueado.visible = false; _local6.desbloqueado.visible = false; if (VariablesGlobales.logrosMan.LogroDesbloqueado(_local5)){ _local6.desbloqueado.cara.gotoAndStop(_local5); _local6.desbloqueado.torso.gotoAndStop(_local5); _local6.desbloqueado.visible = true; } else { _local6.bloqueado.visible = true; }; }; _local6.addEventListener(MouseEvent.CLICK, on_skin_click); _local6.x = 5; _local4 = (5 + (_local3 * 60)); _local3++; _local6.y = _local4; listaFichas.push(_local6); _local1.addChild(_local6); _local5++; }; p_logros.lista.setSize(p_logros.lista.width, p_logros.lista.height); p_logros.lista.source = _local1; } override protected function Cargar_Ventana():void{ VariablesGlobales.galeriaSkins = true; p_logros.atras.addEventListener(MouseEvent.CLICK, on_button_clicked); p_logros.aleatoreo.addEventListener(MouseEvent.CLICK, on_button_clicked); CargarLista(); SeleccionarSkin(VariablesGlobales.skinActual); super.Cargar_Ventana(); p_logros.x = 780; TweenLite.to(p_logros, 1, {x:390}); if (VariablesGlobales.soundMan){ VariablesGlobales.soundMan.playSound("gas_solo", 1, 0, 0); }; VariablesGlobales.cursorVisible = true; Mouse.show(); fade.visible = false; trace(("mostrar fondo dummy " + VariablesGlobales.GaleriaDummyMostrarFondo)); fondo.visible = VariablesGlobales.GaleriaDummyMostrarFondo; } override protected function Descargar_Ventana():void{ VariablesGlobales.GaleriaActual = null; VariablesGlobales.galeriaSkins = false; p_logros.atras.removeEventListener(MouseEvent.CLICK, on_button_clicked); p_logros.aleatoreo.removeEventListener(MouseEvent.CLICK, on_button_clicked); super.Descargar_Ventana(); } private function on_skin_click(_arg1:MouseEvent):void{ trace(_arg1.currentTarget.estado.text); if (_arg1.currentTarget.estado.text == "true"){ trace(_arg1.currentTarget); SeleccionarSkin(int(_arg1.currentTarget.indice.text)); }; } public function on_button_clicked(_arg1:MouseEvent){ if (VariablesGlobales.soundMan){ VariablesGlobales.soundMan.playSound("click", 1, 0, 0); }; switch (_arg1.currentTarget.name){ case "atras": if (VariablesGlobales.JuegoActual != null){ Juego(VariablesGlobales.JuegoActual).menu.skin.text = VariablesGlobales.skinActual; VariablesGlobales.cursorVisible = false; Mouse.hide(); }; if (VariablesGlobales.JuegoActual != null){ Juego(VariablesGlobales.JuegoActual).SemiFade(false); TweenLite.to(p_logros, 1, {x:880, onComplete:onFinishTweenFinal}); } else { fade.alpha = 0; fade.visible = true; TweenLite.to(fade, 1, {alpha:1, onComplete:onFinishTweenFinal}); }; break; case "aleatoreo": SeleccionarSkin(0); break; case "blog": VariablesGlobales.AbreWeb(VariablesGlobales.WEB_TANOKU_BLOG); break; default: trace((_arg1.target.name + " UNDEFINED")); break; }; } private function SeleccionarSkin(_arg1:int):void{ var _local2:int; _local2 = 0; while (_local2 < VariablesGlobales.logrosMan.matrizLogros.length) { if (VariablesGlobales.logrosMan.LogroDesbloqueado(_local2)){ if (_local2 == _arg1){ ficha_skin_mc(listaFichas[_local2]).seleccionado.visible = true; } else { ficha_skin_mc(listaFichas[_local2]).seleccionado.visible = false; }; }; _local2++; }; trace(("seleccionar skin " + _arg1)); VariablesGlobales.skinActual = _arg1; fondo.miniatura_dummy.head.visible = false; fondo.miniatura_dummy.torso1.visible = false; fondo.miniatura_dummy.torso2.visible = false; fondo.miniatura_dummy.torso3.visible = false; fondo.miniatura_dummy.upperArmL.visible = false; fondo.miniatura_dummy.lowerArmL.visible = false; fondo.miniatura_dummy.upperArmR.visible = false; fondo.miniatura_dummy.lowerArmR.visible = false; fondo.miniatura_dummy.upperLegL.visible = false; fondo.miniatura_dummy.upperLegR.visible = false; fondo.miniatura_dummy.lowerLegL.visible = false; fondo.miniatura_dummy.lowerLegR.visible = false; fondo.miniatura_dummy.dummy_random.visible = false; ficha_skin_mc(listaFichas[0]).seleccionado.visible = false; if (_arg1 == 0){ fondo.miniatura_dummy.dummy_random.visible = true; ficha_skin_mc(listaFichas[0]).seleccionado.visible = true; } else { fondo.miniatura_dummy.head.visible = true; fondo.miniatura_dummy.torso1.visible = true; fondo.miniatura_dummy.torso2.visible = true; fondo.miniatura_dummy.torso3.visible = true; fondo.miniatura_dummy.upperArmL.visible = true; fondo.miniatura_dummy.lowerArmL.visible = true; fondo.miniatura_dummy.upperArmR.visible = true; fondo.miniatura_dummy.lowerArmR.visible = true; fondo.miniatura_dummy.upperLegL.visible = true; fondo.miniatura_dummy.upperLegR.visible = true; fondo.miniatura_dummy.lowerLegL.visible = true; fondo.miniatura_dummy.lowerLegR.visible = true; fondo.miniatura_dummy.head.gotoAndStop(_arg1); fondo.miniatura_dummy.torso1.gotoAndStop(_arg1); fondo.miniatura_dummy.torso2.gotoAndStop(_arg1); fondo.miniatura_dummy.torso3.gotoAndStop(_arg1); fondo.miniatura_dummy.upperArmL.gotoAndStop(_arg1); fondo.miniatura_dummy.lowerArmL.gotoAndStop(_arg1); fondo.miniatura_dummy.upperArmR.gotoAndStop(_arg1); fondo.miniatura_dummy.lowerArmR.gotoAndStop(_arg1); fondo.miniatura_dummy.upperLegL.gotoAndStop(_arg1); fondo.miniatura_dummy.upperLegR.gotoAndStop(_arg1); fondo.miniatura_dummy.lowerLegL.gotoAndStop(_arg1); fondo.miniatura_dummy.lowerLegR.gotoAndStop(_arg1); fondo.miniatura_dummy.dummy_random.visible = false; }; } function onFinishTweenFinal():void{ if (VariablesGlobales.JuegoActual != null){ } else { if (VariablesGlobales.NivelesActual != null){ } else { main_class.abre_pantalla(new Principal()); }; }; main_class.cierra_pantalla(this); } } }//package
Section 359
//Galeria_Animacion (Galeria_Animacion) package { import com.greensock.*; public class Galeria_Animacion extends Ventana { public function Galeria_Animacion(){ addFrameScript(20, frame21, 39, frame40); if (VariablesGlobales.soundMan){ VariablesGlobales.soundMan.playSound("gas_solo", 1, 0, 0); }; } override protected function Cargar_Ventana():void{ super.Cargar_Ventana(); } public function finAnimacion(){ trace("fin animacion"); main_class.cierra_pantalla(this); } function frame21(){ cerrarVentanaPadre(); } override protected function Descargar_Ventana():void{ super.Descargar_Ventana(); } function frame40(){ stop(); finAnimacion(); } public function cerrarVentanaPadre(){ if (VariablesGlobales.PrincipalActual != null){ Principal(VariablesGlobales.PrincipalActual).forzarCerrar(); }; Galeria(VariablesGlobales.GaleriaActual).visible = true; trace("cerrar ventana padre"); } } }//package
Section 360
//gas (gas) package { import flash.media.*; public dynamic class gas extends Sound { } }//package
Section 361
//gas_solo (gas_solo) package { import flash.media.*; public dynamic class gas_solo extends Sound { } }//package
Section 362
//ingame_01 (ingame_01) package { import flash.media.*; public dynamic class ingame_01 extends Sound { } }//package
Section 363
//Item (Item) package { import Box2D.Dynamics.*; import Box2D.Collision.Shapes.*; import flash.display.*; import flash.geom.*; public class Item extends Actor { private var indice_item:int; private var vivo:Boolean;// = true public function Item(_arg1:DisplayObjectContainer, _arg2:Point, _arg3:String, _arg4:int=0, _arg5:Number=0, _arg6:Number=0, _arg7:Number=0){ var _local8:b2Body; var _local9:b2BodyDef; var _local10:*; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:*; vivo = true; _local9 = new b2BodyDef(); _local11 = 0; _local12 = 0.3; _local13 = 0; VariablesGlobales.hayItems = true; VariablesGlobales.itemsFinal++; _local14 = new circulo_moneda_mc(); _local10 = new b2CircleDef(); b2CircleDef(_local10).isSensor = true; b2CircleDef(_local10).radius = ((_arg5 / 2) / VariablesGlobales.RATIO); _local9.position.Set((_arg2.x / VariablesGlobales.RATIO), (_arg2.y / VariablesGlobales.RATIO)); _local8 = VariablesGlobales.mundo.CreateBody(_local9); _local8.CreateShape(b2CircleDef(_local10)); _local8.SetMassFromShapes(); _arg1.addChild(_local14); _local14.mouseEnabled = false; _local14.mouseChildren = false; indice_item = _arg4; super(_local8, _local14); } public function RecogerItem():void{ if (vivo){ vivo = false; trace(("item " + indice_item)); VariablesGlobales.itemsFinal--; if (!(VariablesGlobales.nivelEditor)){ VariablesGlobales.itemsRecogidos++; if (VariablesGlobales.itemsRecogidos >= 50){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.NUMERO_BOLTS); }; } else { trace("modo editor no chekear logro item"); }; Juego(VariablesGlobales.JuegoActual).eliminarActor(this); }; } override protected function actualizacionEspecificaHijo():void{ super.actualizacionEspecificaHijo(); } } }//package
Section 364
//item_01 (item_01) package { import flash.display.*; public dynamic class item_01 extends MovieClip { } }//package
Section 365
//item_02 (item_02) package { import flash.display.*; public dynamic class item_02 extends MovieClip { } }//package
Section 366
//item_03 (item_03) package { import flash.display.*; public dynamic class item_03 extends MovieClip { } }//package
Section 367
//item_04 (item_04) package { import flash.display.*; public dynamic class item_04 extends MovieClip { } }//package
Section 368
//item_05 (item_05) package { import flash.display.*; public dynamic class item_05 extends MovieClip { } }//package
Section 369
//item_06 (item_06) package { import flash.display.*; public dynamic class item_06 extends MovieClip { } }//package
Section 370
//item_07 (item_07) package { import flash.display.*; public dynamic class item_07 extends MovieClip { } }//package
Section 371
//item_08 (item_08) package { import flash.display.*; public dynamic class item_08 extends MovieClip { } }//package
Section 372
//item_09 (item_09) package { import flash.display.*; public dynamic class item_09 extends MovieClip { } }//package
Section 373
//item_10 (item_10) package { import flash.display.*; public dynamic class item_10 extends MovieClip { } }//package
Section 374
//item_11 (item_11) package { import flash.display.*; public dynamic class item_11 extends MovieClip { } }//package
Section 375
//item_12 (item_12) package { import flash.display.*; public dynamic class item_12 extends MovieClip { } }//package
Section 376
//item_13 (item_13) package { import flash.display.*; public dynamic class item_13 extends MovieClip { } }//package
Section 377
//item_14 (item_14) package { import flash.display.*; public dynamic class item_14 extends MovieClip { } }//package
Section 378
//item_15 (item_15) package { import flash.display.*; public dynamic class item_15 extends MovieClip { } }//package
Section 379
//item_mc (item_mc) package { import flash.display.*; public dynamic class item_mc extends MovieClip { } }//package
Section 380
//Juego (Juego) package { import it.flashfuck.debugger.*; import flash.events.*; import com.reintroducing.ui.*; import com.reintroducing.events.*; import fl.events.*; import flash.display.*; import flash.geom.*; import flash.ui.*; import Box2D.Common.Math.*; import Box2D.Collision.*; import Box2D.Dynamics.*; import com.greensock.*; import Playtomic.*; public class Juego extends Ventana { private var dolor:Number;// = 0 private var hayLanzadera:Boolean;// = false private var slow_mode:Boolean;// = false private var zoomActual:int;// = 1 private var _debug:Sprite; public var menu:MovieClip; private var listaObjetos:Array; public var fade:MovieClip; public var lienzo:MovieClip; private var monitor:FPSMonitor; private var listaObjetosABorrar:Array; public var gravedadManual:Boolean;// = false public var nivel_completado:Boolean;// = false private var dolorTotal:Number;// = 0 public function Juego(){ zoomActual = 1; listaObjetos = []; listaObjetosABorrar = []; dolor = 0; dolorTotal = 0; slow_mode = false; nivel_completado = false; gravedadManual = false; hayLanzadera = false; monitor = new FPSMonitor(); super(); VariablesGlobales.JuegoActual = this; monitor.visible = false; monitor.y = 50; addChild(monitor); } private function eliminarActoresAhora():void{ var _local1:Actor; var _local2:int; for each (_local1 in listaObjetosABorrar) { _local1.destruir(); _local2 = listaObjetos.indexOf(_local1); if (_local2 > -1){ listaObjetos.splice(_local2, 1); }; }; listaObjetosABorrar = []; } public function actualiza(){ var _local1:Number; var _local2:Actor; if (VariablesGlobales.mundo != null){ if (slow_mode){ _local1 = (VariablesGlobales.PASO_TIEMPO / VariablesGlobales.valorVelocidadLenta); VariablesGlobales.PASO_TIEMPO_LENTO = VariablesGlobales.valorVelocidadLenta; } else { _local1 = VariablesGlobales.PASO_TIEMPO; VariablesGlobales.PASO_TIEMPO_LENTO = VariablesGlobales.valorVelocidadNormal; }; if (gravedadManual){ VariablesGlobales.mundo.m_gravity.x = Number((menu.puntoGravedad.x - menu.areaGravedad.x)).toFixed(1); VariablesGlobales.mundo.m_gravity.y = Number((menu.puntoGravedad.y - menu.areaGravedad.y)).toFixed(1); } else { menu.puntoGravedad.x = (menu.areaGravedad.x + VariablesGlobales.mundo.m_gravity.x); menu.puntoGravedad.y = (menu.areaGravedad.y + VariablesGlobales.mundo.m_gravity.y); }; if ((((VariablesGlobales.mundo.m_gravity.x == 0)) && ((VariablesGlobales.mundo.m_gravity.y == 0)))){ VariablesGlobales.gravedadCero = true; } else { VariablesGlobales.gravedadCero = false; }; menu.gravedad.text = ((("" + VariablesGlobales.mundo.m_gravity.x) + ",") + VariablesGlobales.mundo.m_gravity.y); menu.zoom.text = ("" + sui.currentValue); VariablesGlobales.mundo.Step(_local1, 10); for each (_local2 in listaObjetos) { Actor(_local2).actualizaAhora(); }; eliminarActoresAhora(); VariablesGlobales.mundo.DrawDebugData(); controlLogicaJuego(); }; } private function VolverDummyOnline():void{ if (VariablesGlobales.dummyOnline){ DescargarNivel(); main_class.abre_pantalla(new Niveles_Jugadores(Niveles_Jugadores.DUMMIES)); main_class.cierra_pantalla(this); }; } private function logicaObjeto(_arg1:String, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number):Actor{ switch (_arg1){ case VariablesGlobales.catalogoObjetos.LANZADERA: hayLanzadera = true; return (new Lanzadera(lienzo, new Point(_arg2, _arg3))); case VariablesGlobales.catalogoObjetos.META_REDONDA: return (new Meta(lienzo, new Point(_arg2, _arg3), VariablesGlobales.catalogoObjetos.META_REDONDA)); case VariablesGlobales.catalogoObjetos.META_CUADRADA: return (new Meta(lienzo, new Point(_arg2, _arg3), VariablesGlobales.catalogoObjetos.META_CUADRADA)); case VariablesGlobales.catalogoObjetos.META_ESTATICA: return (new Meta(lienzo, new Point(_arg2, _arg3), VariablesGlobales.catalogoObjetos.META_ESTATICA)); case VariablesGlobales.catalogoObjetos.AUTONOMO_HORIZONTAL: return (new ObjetoDinamico(lienzo, new Point(_arg2, _arg3), VariablesGlobales.catalogoObjetos.AUTONOMO_HORIZONTAL, _arg4, _arg5, _arg6)); case VariablesGlobales.catalogoObjetos.AUTONOMO_VERTICAL: return (new ObjetoDinamico(lienzo, new Point(_arg2, _arg3), VariablesGlobales.catalogoObjetos.AUTONOMO_VERTICAL, _arg4, _arg5, _arg6)); case VariablesGlobales.catalogoObjetos.ESTATICO_CUADRADO: return (new ObjetoEstatico(lienzo, new Point(_arg2, _arg3), VariablesGlobales.catalogoObjetos.ESTATICO_CUADRADO, _arg4, _arg5, _arg6)); case VariablesGlobales.catalogoObjetos.ESTATICO_CIRCULO: return (new ObjetoEstatico(lienzo, new Point(_arg2, _arg3), VariablesGlobales.catalogoObjetos.ESTATICO_CIRCULO, _arg4, _arg5, _arg6)); case VariablesGlobales.catalogoObjetos.DINAMICO_CUADRADO: return (new ObjetoMovible(lienzo, new Point(_arg2, _arg3), VariablesGlobales.catalogoObjetos.DINAMICO_CUADRADO, _arg4, _arg5, _arg6)); case VariablesGlobales.catalogoObjetos.DINAMICO_CIRCULO: return (new ObjetoMovible(lienzo, new Point(_arg2, _arg3), VariablesGlobales.catalogoObjetos.DINAMICO_CIRCULO, _arg4, _arg5, _arg6)); case VariablesGlobales.catalogoObjetos.CIRCULO_MONEDA: return (new Item(lienzo, new Point(_arg2, _arg3), VariablesGlobales.catalogoObjetos.CIRCULO_MONEDA, 0, _arg4, _arg5, _arg6)); case VariablesGlobales.catalogoObjetos.CIRCULO_IMPULSOR: return (new ObjetoImpulsor(lienzo, new Point(_arg2, _arg3), VariablesGlobales.catalogoObjetos.CIRCULO_IMPULSOR, _arg4, _arg5, _arg6)); case VariablesGlobales.catalogoObjetos.CIRCULO_POSITIVO: return (new ObjetoMagnetico(lienzo, new Point(_arg2, _arg3), VariablesGlobales.catalogoObjetos.CIRCULO_POSITIVO, _arg4, _arg5, _arg6)); case VariablesGlobales.catalogoObjetos.CIRCULO_NEGATIVO: return (new ObjetoMagnetico(lienzo, new Point(_arg2, _arg3), VariablesGlobales.catalogoObjetos.CIRCULO_NEGATIVO, _arg4, _arg5, _arg6)); default: trace((("objeto [" + _arg1) + "] no asociado a un mc ")); return (null); }; } private function Control_Logros_InGame():void{ var _local1:int; var _local2:*; var _local3:int; _local1 = 0; _local2 = 0; _local3 = 1; while (_local3 < VariablesGlobales.matrizPuntuaciones.length) { if (VariablesGlobales.matrizPuntuaciones[_local3] == 0){ _local1++; }; if (VariablesGlobales.matrizPuntuaciones[_local3] >= 0){ _local2++; }; _local3++; }; trace(("total perfects = " + _local1)); if (_local1 >= 5){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.NIVELES_A_1); }; if (_local1 >= 10){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.NIVELES_A_2); }; if (_local1 >= 10){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.NIVELES_A_3); }; trace(("total niveles completados = " + _local2)); if (_local2 >= 25){ }; if (_local2 >= 50){ }; if (_local2 >= 75){ }; if (_local2 >= 100){ }; if (_local2 >= VariablesGlobales.indiceNivelMaximoReal){ }; trace(((("dummies fuera nivel actual (" + VariablesGlobales.indiceNivelActual) + ") ") + VariablesGlobales.dummiesFueraPantallaActual)); if ((((VariablesGlobales.dummiesFueraPantallaActual == 0)) && ((VariablesGlobales.indiceNivelActual == 50)))){ }; if ((((VariablesGlobales.dummiesFueraPantallaActual == 0)) && ((VariablesGlobales.indiceNivelActual == 100)))){ }; if ((((VariablesGlobales.dummiesFueraPantallaActual >= 5)) && ((VariablesGlobales.indiceNivelActual == 28)))){ }; if ((((VariablesGlobales.dummiesFueraPantallaActual >= 10)) && ((VariablesGlobales.indiceNivelActual == 67)))){ }; trace(((("dummies activos nivel actual (" + VariablesGlobales.indiceNivelActual) + ") ") + VariablesGlobales.dummiesActivosPantallaActual)); if ((((VariablesGlobales.dummiesActivosPantallaActual == 4)) && ((VariablesGlobales.indiceNivelActual == 81)))){ }; if ((((VariablesGlobales.dummiesActivosPantallaActual == 4)) && ((dolor.toFixed(0) == 0)))){ }; trace(((("dummy choco contra objeto dinamico (" + VariablesGlobales.indiceNivelActual) + ") = ") + VariablesGlobales.objetoDinamicoActivado)); if ((((VariablesGlobales.objetoDinamicoActivado == false)) && ((VariablesGlobales.indiceNivelActual == 103)))){ }; trace(((("dummy choco contra objeto impulsor (" + VariablesGlobales.indiceNivelActual) + ") = ") + VariablesGlobales.objetoImpulsorActivado)); if ((((VariablesGlobales.objetoImpulsorActivado == false)) && ((VariablesGlobales.indiceNivelActual == 24)))){ }; trace(("dolor total sesion actual = " + VariablesGlobales.dolorTotalAcumuladoSesionActual)); trace(((("slow mode utilizado (" + VariablesGlobales.indiceNivelActual) + ") = ") + VariablesGlobales.slowModeUtilizado)); if ((((VariablesGlobales.slowModeUtilizado == false)) && ((VariablesGlobales.indiceNivelActual == 4)))){ }; if ((((VariablesGlobales.slowModeUtilizado == true)) && ((VariablesGlobales.indiceNivelActual == 2)))){ }; if ((((VariablesGlobales.skinActual == 1)) && ((dolor.toFixed(0) == 0)))){ }; if ((((dolor.toFixed(0) >= 100000)) && ((VariablesGlobales.indiceNivelActual == 36)))){ }; trace(("disparos realizados nivel actual " + VariablesGlobales.disparosRealizadosNivelActual)); if ((((dolor.toFixed(0) == 0)) && ((VariablesGlobales.disparosRealizadosNivelActual > 1)))){ }; trace((((("hay objetos movibles " + VariablesGlobales.hayObjetosMovibles) + " final = (") + VariablesGlobales.objetosMoviblesFinal) + ")")); if (((((VariablesGlobales.hayObjetosMovibles) && ((VariablesGlobales.objetosMoviblesFinal == 0)))) && ((VariablesGlobales.indiceNivelActual == 74)))){ }; } private function eliminarObjetosNivel():void{ var _local1:int; _local1 = 0; while (_local1 < listaObjetos.length) { eliminarActor(listaObjetos[_local1]); _local1++; }; eliminarActoresAhora(); listaObjetos = []; listaObjetosABorrar = []; } private function InicializarBox2D():void{ var _local1:b2AABB; var _local2:b2Vec2; var _local3:Boolean; var _local4:b2DebugDraw; _local1 = new b2AABB(); VariablesGlobales.limitesMundo = new Rectangle(); VariablesGlobales.limitesMundo.topLeft = new Point(-1000, -500); VariablesGlobales.limitesMundo.bottomRight = new Point((1000 + 780), (500 + 450)); _local1.lowerBound.Set((VariablesGlobales.limitesMundo.topLeft.x / VariablesGlobales.RATIO), (VariablesGlobales.limitesMundo.topLeft.y / VariablesGlobales.RATIO)); _local1.upperBound.Set((VariablesGlobales.limitesMundo.bottomRight.x / VariablesGlobales.RATIO), (VariablesGlobales.limitesMundo.bottomRight.y / VariablesGlobales.RATIO)); _local2 = new b2Vec2(0, VariablesGlobales.GRAVEDAD); _local3 = false; VariablesGlobales.mundo = new b2World(_local1, _local2, _local3); VariablesGlobales.mundo.SetContactListener(new DummyNeverFailsContactListener()); _local4 = new b2DebugDraw(); _debug = new Sprite(); addChild(_debug); _local4.m_sprite = _debug; _local4.m_drawScale = 30; _local4.m_fillAlpha = 0.3; _local4.m_lineThickness = 1; _local4.m_drawFlags = ((b2DebugDraw.e_coreShapeBit | b2DebugDraw.e_shapeBit) | b2DebugDraw.e_jointBit); VariablesGlobales.mundo.SetDebugDraw(_local4); _debug.visible = false; } private function borrarObjetos():void{ var _local1:int; _local1 = listaObjetos.length; while (_local1 > 0) { MovieClip(lienzo).removeChild(listaObjetos[0]); listaObjetos.shift(); _local1 = listaObjetos.length; }; } public function cargarObjetos(_arg1:String):void{ var _local2:Array; var _local3:Array; var _local4:int; var _local5:Array; if (_arg1.length > 0){ _local2 = _arg1.split("#"); lienzo.bg.gotoAndStop(_local2[0]); if (_local2.length > 0){ _local3 = String(_local2[1]).split("|"); hayLanzadera = false; _local4 = 0; while (_local4 < _local3.length) { if (_local3[_local4] != ""){ _local5 = String(_local3[_local4]).split(","); if (_local5[0] != "nom"){ listaObjetos.push(logicaObjeto(_local5[0], _local5[1], _local5[2], _local5[3], _local5[4], _local5[5])); }; }; _local4++; }; }; }; } public function SemiFade(_arg1):void{ fade.visible = true; if (_arg1){ fade.alpha = 0; TweenLite.to(fade, 1, {alpha:0.5}); } else { fade.alpha = 0.5; TweenLite.to(fade, 1, {alpha:0, onComplete:onFinishTweenFadeOff}); }; } private function doSliderUpdate(_arg1:SliderUIEvent):void{ zoomActual = (520 + Math.round((_arg1.currentValue * 5))); ZoomLienzo(zoomActual); } private function Reintentar():void{ if (VariablesGlobales.galeriaSkins){ return; }; trace("reinentar"); if (!(VariablesGlobales.nivelEditor)){ trace((((((("reintentar nivel actual (" + VariablesGlobales.indiceNivelActual) + ") nivel anterior (") + VariablesGlobales.ultimoNivelReintentado) + ") reintentos (") + VariablesGlobales.numeroReintentosRepetidos) + ")")); if (VariablesGlobales.ultimoNivelReintentado != VariablesGlobales.indiceNivelActual){ VariablesGlobales.ultimoNivelReintentado = VariablesGlobales.indiceNivelActual; VariablesGlobales.numeroReintentosRepetidos = 1; } else { VariablesGlobales.numeroReintentosRepetidos++; if ((((VariablesGlobales.numeroReintentosRepetidos >= 10)) && ((VariablesGlobales.indiceNivelActual == 51)))){ }; }; trace((("reintentos (" + VariablesGlobales.numeroReintentosRepetidos) + ")")); if (nivel_completado == true){ }; }; DescargarNivel(); InicializarJuego(); VariablesGlobales.cursorVisible = false; } private function on_zoom_change(_arg1:SliderEvent):void{ zoomActual = (520 + (_arg1.value * 5)); ZoomLienzo(zoomActual); } override protected function Cargar_Ventana():void{ VariablesGlobales.contenedorPadre.addEventListener(KeyboardEvent.KEY_UP, on_keyboard_up); VariablesGlobales.contenedorPadre.addEventListener(KeyboardEvent.KEY_DOWN, on_keyboard_down); menu.addEventListener(MouseEvent.MOUSE_MOVE, on_mouse_move); menu.addEventListener(MouseEvent.MOUSE_OVER, on_mouse_over); menu.addEventListener(MouseEvent.MOUSE_OUT, on_mouse_out); menu.salir.addEventListener(MouseEvent.CLICK, on_button_clicked); menu.editar.addEventListener(MouseEvent.CLICK, on_button_clicked); menu.back.addEventListener(MouseEvent.CLICK, on_button_clicked); menu.reintentar.addEventListener(MouseEvent.CLICK, on_button_clicked); menu.siguiente.addEventListener(MouseEvent.CLICK, on_button_clicked); menu.sponsor.addEventListener(MouseEvent.CLICK, on_button_clicked); menu.logo_sponsor_ingame.addEventListener(MouseEvent.CLICK, on_button_clicked); menu.logo_sponsor_siguiente.addEventListener(MouseEvent.CLICK, on_button_clicked); menu.panelsiguiente.random_online.addEventListener(MouseEvent.CLICK, on_button_clicked); menu.panelsiguiente.like_online.addEventListener(MouseEvent.CLICK, on_button_clicked); menu.masjuegos.addEventListener(MouseEvent.CLICK, on_button_clicked); menu.box2d.addEventListener(MouseEvent.CLICK, on_button_clicked); menu.box2d.visible = false; menu.slow.addEventListener(MouseEvent.CLICK, on_button_clicked); menu.solucion.addEventListener(MouseEvent.CLICK, on_button_clicked); menu.galeria.addEventListener(MouseEvent.CLICK, on_button_clicked); menu.sfx.addEventListener(MouseEvent.CLICK, on_button_clicked); menu.sfx.gotoAndStop(VariablesGlobales.EstadoSFX()); menu.musica.addEventListener(MouseEvent.CLICK, on_button_clicked); if (VariablesGlobales.nivelEditor){ VariablesGlobales.musicaActual = "editor_01"; } else { VariablesGlobales.musicaActual = "ingame_01"; }; menu.musica.gotoAndStop(VariablesGlobales.EstadoMusica()); menu.zero.addEventListener(MouseEvent.CLICK, on_button_clicked); menu.normal.addEventListener(MouseEvent.CLICK, on_button_clicked); sui = new SliderUI(stage, "x", menu.track_mc, menu.slider_mc, 0, 52, 0, 1); sui.addEventListener(SliderUIEvent.ON_UPDATE, doSliderUpdate); menu.slider_mc.info_mc.visible = false; menu.szoom.addEventListener(SliderEvent.CHANGE, on_zoom_change); menu.puntoGravedad.addEventListener(MouseEvent.MOUSE_DOWN, on_mouse_down_gravedad); MovieClip(lienzo.bg).mouseEnabled = false; MovieClip(lienzo.bg).mouseChildren = false; MovieClip(lienzo.bg).gotoAndStop(1); lienzo.bg.visible = true; InicializarBox2D(); InicializarJuego(); addEventListener(Event.ENTER_FRAME, nuevoFrame); super.Cargar_Ventana(); fade.visible = false; } private function ModificarGravedad(_arg1:Number, _arg2:Number):void{ var _local3:b2Vec2; if (VariablesGlobales.mundo != null){ _local3 = new b2Vec2(VariablesGlobales.mundo.m_gravity.x, VariablesGlobales.mundo.m_gravity.y); _local3.x = (_local3.x + _arg1); _local3.y = (_local3.y + _arg2); if (_local3.x > 10){ _local3.x = 10; }; if (_local3.x < -10){ _local3.x = -10; }; if (_local3.y > 10){ _local3.y = 10; }; if (_local3.y < -10){ _local3.y = -10; }; VariablesGlobales.mundo.SetGravity(_local3); VariablesGlobales.gravedadModificada = true; }; } private function on_mouse_out(_arg1:MouseEvent):void{ VariablesGlobales.cursorVisible = false; } private function on_drop_gravedad(_arg1:MouseEvent):void{ stage.removeEventListener(MouseEvent.MOUSE_UP, on_drop_gravedad); stage.removeEventListener(MouseEvent.MOUSE_MOVE, on_slide_gravedad); MovieClip(menu.puntoGravedad).stopDrag(); gravedadManual = false; VariablesGlobales.gravedadModificada = true; } function RateComplete(_arg1:Object):void{ if (_arg1.Success){ trace("Rating complete"); } else { trace(("Rating errorCode " + _arg1.ErrorCode)); }; if (VariablesGlobales.tipo_actual == Niveles_Jugadores.NIVELES){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.LIKE_NIVEL); } else { VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.LIKE_DUMMY); }; } private function ZoomLienzo(_arg1:Number):void{ lienzo.camara.height = _arg1; lienzo.camara.width = ((lienzo.camara.height * 780) / 520); zoomActual = lienzo.camara.height; } public function Meta_Alcanzada():void{ var _local1:Boolean; var _local2:Number; var _local3:int; if (menu.siguiente.visible == false){ trace("meta alcanzada"); menu.siguiente.visible = true; menu.logo_sponsor_ingame.visible = false; menu.logo_sponsor_siguiente.visible = true; menu.masjuegos.visible = true; menu.panelsiguiente.nota.gotoAndStop(VariablesGlobales.notaDolor(dolor.toFixed(0))); menu.panelsiguiente.visible = true; if (((VariablesGlobales.nivelOnline) || (VariablesGlobales.dummyOnline))){ menu.panelsiguiente.online.visible = true; menu.panelsiguiente.random_online.visible = true; MovieClip(menu.panelsiguiente.like_online).buttonMode = true; MovieClip(menu.panelsiguiente.like_online).gotoAndStop(1); menu.panelsiguiente.like_online.visible = true; }; if (VariablesGlobales.nivelEditor){ } else { if (VariablesGlobales.indiceNivelActual == VariablesGlobales.indiceNivelMaximoReal){ VariablesGlobales.indiceNivelMaximo = VariablesGlobales.indiceNivelMaximoReal; } else { if (VariablesGlobales.indiceNivelMaximo == VariablesGlobales.indiceNivelActual){ VariablesGlobales.indiceNivelMaximo = (VariablesGlobales.indiceNivelMaximo + 1); }; }; if (VariablesGlobales.indiceNivelActual == 3){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.BLOQUE_1); }; if (VariablesGlobales.indiceNivelActual == 10){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.BLOQUE_2); }; if (VariablesGlobales.indiceNivelActual == 17){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.BLOQUE_3); }; if (VariablesGlobales.indiceNivelActual == 24){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.BLOQUE_4); }; if (VariablesGlobales.indiceNivelActual == 31){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.BLOQUE_5); }; if (VariablesGlobales.indiceNivelActual == 38){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.BLOQUE_6); }; if (VariablesGlobales.indiceNivelActual == 45){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.BLOQUE_7); }; if (VariablesGlobales.indiceNivelActual == 52){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.BLOQUE_8); }; if (VariablesGlobales.indiceNivelActual == 60){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.BLOQUE_9); }; if ((((((VariablesGlobales.indiceNivelActual == 5)) && (((VariablesGlobales.hayItems) && ((VariablesGlobales.itemsFinal == 0)))))) && ((VariablesGlobales.notaDolor(dolor) == VariablesGlobales.NOTA_A_MAS)))){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.NIVEL_05_BA); }; if ((((((VariablesGlobales.indiceNivelActual == 7)) && (((VariablesGlobales.hayItems) && ((VariablesGlobales.itemsFinal == 0)))))) && ((VariablesGlobales.notaDolor(dolor) == VariablesGlobales.NOTA_A_MAS)))){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.NIVEL_07_BA); }; if ((((((VariablesGlobales.indiceNivelActual == 12)) && (((VariablesGlobales.hayItems) && ((VariablesGlobales.itemsFinal == 0)))))) && ((VariablesGlobales.notaDolor(dolor) == VariablesGlobales.NOTA_A_MAS)))){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.NIVEL_12_BA); }; if ((((((VariablesGlobales.indiceNivelActual == 14)) && ((VariablesGlobales.gravedadModificada == false)))) && ((VariablesGlobales.numeroDisparosPantallaActual == 1)))){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.NIVEL_14_GD1); }; if ((((VariablesGlobales.indiceNivelActual == 20)) && ((VariablesGlobales.gravedadModificada == false)))){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.NIVEL_20_G); }; if ((((VariablesGlobales.indiceNivelActual == 27)) && ((VariablesGlobales.gravedadModificada == false)))){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.NIVEL_27_G); }; if ((((VariablesGlobales.indiceNivelActual == 28)) && ((VariablesGlobales.notaDolor(dolor) == VariablesGlobales.NOTA_A_MAS)))){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.NIVEL_28_A); }; if ((((VariablesGlobales.indiceNivelActual == 29)) && ((VariablesGlobales.gravedadModificada == false)))){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.NIVEL_29_G); }; if ((((VariablesGlobales.indiceNivelActual == 30)) && ((VariablesGlobales.gravedadModificada == false)))){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.NIVEL_30_G); }; if ((((VariablesGlobales.indiceNivelActual == 33)) && ((VariablesGlobales.gravedadModificada == false)))){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.NIVEL_33_G); }; if ((((((VariablesGlobales.indiceNivelActual == 38)) && (((VariablesGlobales.hayItems) && ((VariablesGlobales.itemsFinal == 0)))))) && ((VariablesGlobales.numeroDisparosPantallaActual == 2)))){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.NIVEL_38_BD2); }; if ((((VariablesGlobales.indiceNivelActual == 40)) && ((VariablesGlobales.numeroDisparosPantallaActual == 1)))){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.NIVEL_40_D1); }; if ((((VariablesGlobales.indiceNivelActual == 41)) && ((VariablesGlobales.gravedadModificada == false)))){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.NIVEL_41_G); }; if ((((VariablesGlobales.indiceNivelActual == 42)) && ((VariablesGlobales.gravedadModificada == false)))){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.NIVEL_42_G); }; if ((((((VariablesGlobales.indiceNivelActual == 45)) && (((VariablesGlobales.hayItems) && ((VariablesGlobales.itemsFinal == 0)))))) && ((VariablesGlobales.numeroDisparosPantallaActual == 1)))){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.NIVEL_45_BD1); }; if ((((VariablesGlobales.indiceNivelActual == 47)) && ((VariablesGlobales.gravedadModificada == false)))){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.NIVEL_47_G); }; if ((((VariablesGlobales.indiceNivelActual == 49)) && ((VariablesGlobales.gravedadModificada == false)))){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.NIVEL_49_G); }; if ((((((VariablesGlobales.indiceNivelActual == 53)) && ((VariablesGlobales.gravedadModificada == false)))) && ((VariablesGlobales.numeroDisparosPantallaActual == 2)))){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.NIVEL_53_GD2); }; if ((((VariablesGlobales.indiceNivelActual == 54)) && ((VariablesGlobales.gravedadModificada == false)))){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.NIVEL_54_G); }; if ((((VariablesGlobales.indiceNivelActual == 59)) && ((VariablesGlobales.gravedadModificada == false)))){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.NIVEL_59_G); }; if (dolor == 0){ }; if (slow_mode){ }; if (dolor >= 99999){ }; if (VariablesGlobales.skinActual == 0){ }; nivel_completado = true; _local1 = true; trace(("calculo nivel " + VariablesGlobales.indiceNivelActual)); if (VariablesGlobales.matrizPuntuaciones[VariablesGlobales.indiceNivelActual] == -1){ trace(((((("actualizar puntuacion nivel (" + VariablesGlobales.indiceNivelActual) + ") ") + VariablesGlobales.matrizPuntuaciones[VariablesGlobales.indiceNivelActual]) + " --> ") + dolor.toFixed(0))); VariablesGlobales.matrizPuntuaciones[VariablesGlobales.indiceNivelActual] = dolor.toFixed(0); _local1 = false; } else { if (Number(VariablesGlobales.matrizPuntuaciones[VariablesGlobales.indiceNivelActual]) > dolor.toFixed(0)){ trace(((((("actualizar puntuacion nivel (" + VariablesGlobales.indiceNivelActual) + ") ") + VariablesGlobales.matrizPuntuaciones[VariablesGlobales.indiceNivelActual]) + " --> ") + dolor.toFixed(0))); VariablesGlobales.matrizPuntuaciones[VariablesGlobales.indiceNivelActual] = dolor.toFixed(0); } else { trace(((((("no mejorar puntuacion nivel nivel (" + VariablesGlobales.indiceNivelActual) + ") ") + VariablesGlobales.matrizPuntuaciones[VariablesGlobales.indiceNivelActual]) + " --> ") + dolor.toFixed(0))); }; }; if (((_local1) && ((VariablesGlobales.indiceNivelActual == VariablesGlobales.indiceNivelMaximoReal)))){ }; _local2 = 0; _local3 = 1; while (_local3 < VariablesGlobales.matrizPuntuaciones.length) { if (VariablesGlobales.matrizPuntuaciones[_local3] >= 0){ _local2 = (_local2 + Number(VariablesGlobales.matrizPuntuaciones[_local3])); }; _local3++; }; trace(((("actualizar puntuacion total " + VariablesGlobales.matrizPuntuaciones[0]) + " --> ") + _local2)); VariablesGlobales.matrizPuntuaciones[0] = _local2; Control_Logros_InGame(); }; }; } private function on_slide_gravedad(_arg1:MouseEvent):void{ gravedadManual = true; } override protected function Descargar_Ventana():void{ VariablesGlobales.contenedorPadre.removeEventListener(KeyboardEvent.KEY_UP, on_keyboard_up); VariablesGlobales.contenedorPadre.removeEventListener(KeyboardEvent.KEY_DOWN, on_keyboard_down); VariablesGlobales.mundo = null; VariablesGlobales.JuegoActual = null; removeEventListener(Event.ENTER_FRAME, nuevoFrame); super.Descargar_Ventana(); Mouse.show(); } private function on_keyboard_down(_arg1:KeyboardEvent):void{ switch (_arg1.keyCode){ case 38: ModificarGravedad(0, -1); break; case 40: ModificarGravedad(0, 1); break; case 39: ModificarGravedad(1, 0); break; case 37: ModificarGravedad(-1, 0); break; }; } private function on_mouse_over(_arg1:MouseEvent):void{ VariablesGlobales.cursorVisible = true; Mouse.show(); } private function controlLogicaJuego():void{ stage.focus = VariablesGlobales.contenedorPadre; if (dolor == 0){ menu.info.text = "0"; } else { menu.info.text = (dolor.toFixed(0) + " "); }; menu.nota.gotoAndStop(VariablesGlobales.notaDolor(dolor.toFixed(0))); if (VariablesGlobales.nivelEditor){ menu.info2.text = "Editor"; menu.info3.text = ""; } else { menu.info2.text = ("Level : " + VariablesGlobales.indiceNivelActual); menu.info3.text = ""; }; if (((VariablesGlobales.nivelOnline) || (VariablesGlobales.dummyOnline))){ menu.info2.text = ("" + VariablesGlobales.nombreOnlineActual); menu.info3.text = ("By " + VariablesGlobales.playerOnlineActual); }; if (slow_mode){ menu.slow.gotoAndStop(2); } else { menu.slow.gotoAndStop(1); }; } private function MeGusta():void{ MovieClip(menu.panelsiguiente.like_online).buttonMode = false; menu.panelsiguiente.like_online.gotoAndStop(3); PlayerLevels.Rate(VariablesGlobales.idOnlineActual, 1, this.RateComplete); } private function DescargarNivel():void{ eliminarObjetosNivel(); } private function on_mouse_move(_arg1:MouseEvent):void{ VariablesGlobales.cursorVisible = true; Mouse.show(); } private function EditarDummy():void{ if (VariablesGlobales.nivelDummy){ DescargarNivel(); main_class.abre_pantalla(new EditorDummy()); main_class.cierra_pantalla(this); }; } private function on_keyboard_up(_arg1:KeyboardEvent):void{ switch (_arg1.keyCode){ case 83: slow_mode = !(slow_mode); if (slow_mode == true){ VariablesGlobales.slowModeUtilizado = true; }; break; case 82: Reintentar(); break; case 78: break; case 66: break; case 69: EditarNivel(); break; default: trace((("tecla " + _arg1.keyCode) + " no asignada")); }; } public function agrearObjeto(_arg1){ listaObjetos.push(_arg1); } private function InicializarJuego():void{ hayLanzadera = false; listaObjetos = new Array(); menu.logo_sponsor_ingame.visible = true; menu.siguiente.visible = false; menu.logo_sponsor_siguiente.visible = false; menu.masjuegos.visible = false; menu.panelsiguiente.visible = false; menu.panelsiguiente.online.visible = false; menu.panelsiguiente.random_online.visible = false; MovieClip(menu.panelsiguiente.like_online).buttonMode = true; menu.panelsiguiente.like_online.visible = false; VariablesGlobales.hayObjetosMovibles = false; VariablesGlobales.objetosMoviblesFinal = 0; VariablesGlobales.hayItems = false; VariablesGlobales.itemsFinal = 0; VariablesGlobales.gravedadModificada = false; VariablesGlobales.gravedadCero = false; gravedadManual = false; VariablesGlobales.mundo.SetGravity(new b2Vec2(0, VariablesGlobales.GRAVEDAD)); if (VariablesGlobales.nivelEditor == false){ menu.editar.visible = false; menu.back.visible = false; cargarObjetos(VariablesGlobales.nivelActual); } else { cargarObjetos(VariablesGlobales.nivelPruebaActual); if (VariablesGlobales.nivelOnline == true){ menu.back.visible = true; menu.editar.visible = false; } else { if (VariablesGlobales.dummyOnline == true){ menu.back.visible = true; menu.editar.visible = false; } else { menu.back.visible = false; menu.editar.visible = true; }; }; menu.solucion.visible = false; menu.salir.visible = false; menu.galeria.visible = false; }; trace(("total objetos movibles inicio " + VariablesGlobales.objetosMoviblesFinal)); dolor = 0; dolorTotal = 0; menu.skin.text = ("" + VariablesGlobales.skinActual); menu.skin.visible = false; menu.medidor.gotoAndPlay(97); nivel_completado = false; VariablesGlobales.estadoImpulsores = [false, false, false, false, false, false, false, false]; VariablesGlobales.dummiesFueraPantallaActual = 0; VariablesGlobales.objetoDinamicoActivado = false; VariablesGlobales.objetoImpulsorActivado = false; VariablesGlobales.slowModeUtilizado = slow_mode; VariablesGlobales.disparosRealizadosNivelActual = 0; } private function VolverNivelOnline():void{ if (VariablesGlobales.nivelOnline){ DescargarNivel(); main_class.abre_pantalla(new Niveles_Jugadores()); main_class.cierra_pantalla(this); }; } private function SaltarSiguienteNivel():void{ if (VariablesGlobales.nivelEditor){ DescargarNivel(); InicializarJuego(); } else { VariablesGlobales.numeroPartidasNextSeguidas++; trace(("partidas next total=" + VariablesGlobales.numeroPartidasNextSeguidas)); if (VariablesGlobales.numeroPartidasNextSeguidas >= 6){ }; if (VariablesGlobales.indiceNivelActual == VariablesGlobales.indiceNivelMaximoReal){ VariablesGlobales.indiceNivelActual = VariablesGlobales.indiceNivelMaximoReal; VariablesGlobales.musicMan.stopAllSounds(); DescargarNivel(); VariablesGlobales.cursorVisible = true; Mouse.show(); main_class.abre_pantalla(new Niveles()); main_class.cierra_pantalla(this); } else { VariablesGlobales.indiceNivelActual = (VariablesGlobales.indiceNivelActual + 1); VariablesGlobales.nivelActual = VariablesGlobales.nivelesJuego.datos[VariablesGlobales.indiceNivelActual]; DescargarNivel(); InicializarJuego(); }; }; VariablesGlobales.cursorVisible = false; } public function on_button_clicked(_arg1:MouseEvent){ var _local2:String; if (VariablesGlobales.soundMan){ VariablesGlobales.soundMan.playSound("click", 1, 0, 0); }; switch (_arg1.target.name){ case "salir": VariablesGlobales.numeroPartidasNextSeguidas = 0; VariablesGlobales.musicMan.stopAllSounds(); DescargarNivel(); main_class.abre_pantalla(new Niveles()); main_class.cierra_pantalla(this); break; case "editar": if (VariablesGlobales.nivelDummy){ EditarDummy(); } else { EditarNivel(); }; break; case "back": if (VariablesGlobales.nivelOnline){ VolverNivelOnline(); } else { if (VariablesGlobales.dummyOnline){ VolverDummyOnline(); }; }; break; case "reintentar": Reintentar(); break; case "siguiente": SaltarSiguienteNivel(); break; case "random_online": _local2 = VariablesGlobales.obtenerIdAleatorio(VariablesGlobales.tipo_actual); if (_local2 != ""){ DescargarNivel(); main_class.abre_pantalla(new LanzarContenidoOnline()); main_class.cierra_pantalla(this); }; break; case "like_online": MeGusta(); break; case "sponsor": VariablesGlobales.AbreWeb(VariablesGlobales.WEB_SPONSOR); break; case "logo_sponsor_ingame": VariablesGlobales.AbreWeb(VariablesGlobales.WEB_SPONSOR); break; case "logo_sponsor_siguiente": VariablesGlobales.AbreWeb(VariablesGlobales.WEB_SPONSOR); break; case "masjuegos": VariablesGlobales.AbreWeb(VariablesGlobales.WEB_SPONSOR); break; case "box2d": break; case "slow": slow_mode = !(slow_mode); if (slow_mode == true){ VariablesGlobales.slowModeUtilizado = true; }; break; case "solucion": VariablesGlobales.AbreWeb(VariablesGlobales.WEB_SOLUCION); break; case "galeria": if (VariablesGlobales.GaleriaActual == null){ SemiFade(true); VariablesGlobales.GaleriaDummyMostrarFondo = false; main_class.abre_pantalla(new Galeria()); }; break; case "sfx": menu.sfx.gotoAndStop(VariablesGlobales.EstadoSFX(true)); break; case "musica": menu.musica.gotoAndStop(VariablesGlobales.EstadoMusica(true)); break; case "normal": VariablesGlobales.gravedadModificada = true; VariablesGlobales.mundo.m_gravity.x = 0; VariablesGlobales.mundo.m_gravity.y = VariablesGlobales.GRAVEDAD; break; case "zero": VariablesGlobales.gravedadModificada = true; VariablesGlobales.mundo.m_gravity.x = 0; VariablesGlobales.mundo.m_gravity.y = 0; break; }; } private function seleccionFondo(_arg1):void{ lienzo.bg.gotoAndStop(_arg1); } public function eliminarActor(_arg1:Actor):void{ if (listaObjetosABorrar.indexOf(_arg1) < 0){ listaObjetosABorrar.push(_arg1); }; } function onFinishTweenFadeOff():void{ fade.visible = false; } private function on_mouse_down_gravedad(_arg1:MouseEvent):void{ var _local2:Rectangle; _local2 = new Rectangle(((menu.areaGravedad.x - (menu.areaGravedad.width / 2)) + (menu.puntoGravedad.width / 2)), ((menu.areaGravedad.y - (menu.areaGravedad.height / 2)) + (menu.puntoGravedad.height / 2)), (menu.areaGravedad.width - menu.puntoGravedad.width), (menu.areaGravedad.height - menu.puntoGravedad.height)); MovieClip(menu.puntoGravedad).startDrag(false, _local2); stage.addEventListener(MouseEvent.MOUSE_UP, on_drop_gravedad); stage.addEventListener(MouseEvent.MOUSE_MOVE, on_slide_gravedad); gravedadManual = true; VariablesGlobales.gravedadModificada = true; } public function RecibirDolor(_arg1:Number){ if (!(menu.siguiente.visible)){ if (dolor.toFixed(0) < VariablesGlobales.maximoDolorNivel){ if (_arg1 > VariablesGlobales.valorMinimoDolor){ if (_arg1 >= 0.4){ if (menu.medidor.currentFrame > 1){ menu.medidor.gotoAndPlay(1); }; } else { if (_arg1 >= 0.3){ if (menu.medidor.currentFrame > 25){ menu.medidor.gotoAndPlay(25); }; } else { if (_arg1 >= 0.2){ if (menu.medidor.currentFrame > 50){ menu.medidor.gotoAndPlay(50); }; } else { if (menu.medidor.currentFrame > 75){ menu.medidor.gotoAndPlay(75); }; }; }; }; dolor = (dolor + (_arg1 * VariablesGlobales.multiplicadorDolor)); VariablesGlobales.dolorTotalAcumuladoSesionActual = (VariablesGlobales.dolorTotalAcumuladoSesionActual + (_arg1 * VariablesGlobales.multiplicadorDolor)); }; dolorTotal = (dolorTotal + (_arg1 * VariablesGlobales.multiplicadorDolor)); } else { dolor = VariablesGlobales.maximoDolorNivel; }; if ((((VariablesGlobales.notaDolor(dolor) == VariablesGlobales.NOTA_F)) && ((VariablesGlobales.numeroDisparosPantallaActual == 1)))){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.F_CON_1_DUMMY); }; if ((((dolor >= 100000)) && ((VariablesGlobales.numeroDisparosPantallaActual == 1)))){ }; if (VariablesGlobales.dolorTotalAcumuladoSesionActual >= 10000000){ }; }; } private function EditarNivel():void{ if (VariablesGlobales.nivelEditor){ DescargarNivel(); main_class.abre_pantalla(new Editor()); main_class.cierra_pantalla(this); }; } private function nuevoFrame(_arg1:Event):void{ MovieClip(menu.parent).setChildIndex(menu, (MovieClip(menu.parent).numChildren - 1)); actualiza(); } } }//package
Section 381
//Lanzadera (Lanzadera) package { import Box2D.Dynamics.*; import Box2D.Collision.Shapes.*; import flash.events.*; import flash.utils.*; import flash.display.*; import flash.geom.*; import flash.ui.*; public class Lanzadera extends Actor { private var padre:DisplayObjectContainer; private var secuenciaDireccion:Array; private var angulo_brazo:Number;// = 0 private var dummiesLanzadosAux:int;// = 0 private var lanzamiento_anterior_x:int; public var listaObjetos:Array; private var lanzamiento_anterior_y:int; private var dummiesLanzadosAntes:int;// = 0 private var tiempoLanzamientoAux:Number;// = 0 private var maximoObjetos:int;// = 4 private var punto_mira; private var tiempoPrimerLanzamiento:Number;// = 0 private var tiempoUltimoDisparo:Number;// = 0 private var dummiesLanzadosDespues:int;// = 0 public function Lanzadera(_arg1:DisplayObjectContainer, _arg2:Point){ var _local3:b2Body; var _local4:b2BodyDef; var _local5:*; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:*; angulo_brazo = 0; maximoObjetos = 4; dummiesLanzadosAntes = 0; dummiesLanzadosDespues = 0; tiempoUltimoDisparo = 0; secuenciaDireccion = []; tiempoPrimerLanzamiento = 0; tiempoLanzamientoAux = 0; dummiesLanzadosAux = 0; _local4 = new b2BodyDef(); _local6 = 0; _local7 = 0.3; _local8 = 0; padre = _arg1; _local9 = new lanzadera_mc(); _local9.mouseEnabled = false; _local9.mouseChildren = false; _local5 = new b2CircleDef(); b2CircleDef(_local5).isSensor = true; b2CircleDef(_local5).radius = 0.1; _local4.position.Set((_arg2.x / VariablesGlobales.RATIO), (_arg2.y / VariablesGlobales.RATIO)); _local3 = VariablesGlobales.mundo.CreateBody(_local4); _local3.CreateShape(b2CircleDef(_local5)); _local3.SetMassFromShapes(); padre.addChild(_local9); super(_local3, _local9); padre.addEventListener(MouseEvent.MOUSE_MOVE, on_mouse_move); padre.addEventListener(MouseEvent.CLICK, on_canvas_clicked); punto_mira = new mirilla_mc(); punto_mira.mouseEnabled = false; punto_mira.mouseChildren = false; padre.addChild(punto_mira); listaObjetos = []; secuenciaDireccion = []; disfraz.brazo.efecto.gotoAndStop(1); tiempoUltimoDisparo = getTimer(); VariablesGlobales.numeroDisparosPantallaActual = 0; VariablesGlobales.dummiesActivosPantallaActual = 0; } private function ActualizaPosicionBrazo():void{ var _local1:Number; var _local2:Number; _local1 = (_disfraz.x - disfraz.parent.mouseX); _local2 = (_disfraz.y - disfraz.parent.mouseY); angulo_brazo = Math.atan2(-(_local2), -(_local1)); disfraz.brazo.rotation = (angulo_brazo * (180 / Math.PI)); } private function on_mouse_move(_arg1:MouseEvent):void{ if (VariablesGlobales.galeriaSkins){ }; if (VariablesGlobales.cursorVisible){ Mouse.show(); }; MovieClip(punto_mira.parent).setChildIndex(punto_mira, (MovieClip(punto_mira.parent).numChildren - 1)); } private function on_canvas_clicked(_arg1:MouseEvent):void{ var _local2:Number; var _local3:Actor; var _local4:int; var _local5:int; var _local6:String; var _local7:String; var _local8:int; var _local9:Actor; var _local10:Number; var _local11:Number; var _local12:Number; if ((((lanzamiento_anterior_x == _arg1.localX)) && ((lanzamiento_anterior_y == _arg1.localY)))){ trace("mismo punto lanzamiento"); } else { trace("distinto punto lanzamiento"); lanzamiento_anterior_x = _arg1.localX; lanzamiento_anterior_y = _arg1.localY; }; _local2 = distance(new Point(disfraz.x, disfraz.y), new Point(_arg1.localX, _arg1.localY)); trace(("potencia disparo " + _local2)); if (!(VariablesGlobales.nivelEditor)){ if (_local2 <= 10){ }; if (_local2 >= 600){ }; }; if (listaObjetos.length >= maximoObjetos){ _local9 = listaObjetos.shift(); Juego(VariablesGlobales.JuegoActual).eliminarActor(_local9); }; _local4 = 0; VariablesGlobales.skinActual = Number(Juego(VariablesGlobales.JuegoActual).menu.skin.text); if (VariablesGlobales.skinActual == 0){ _local4 = obtenerSkinAleatoreo(); } else { _local4 = VariablesGlobales.skinActual; }; trace(("skin " + _local4)); _local3 = new Dummy(padre, new Point(disfraz.x, disfraz.y), angulo_brazo, _local2, _local4); listaObjetos.push(_local3); Dummy(_local3).lanzadera_origen = this; Juego(VariablesGlobales.JuegoActual).agrearObjeto(_local3); if (dummiesLanzadosAntes == 0){ _local10 = (getTimer() - tiempoUltimoDisparo); trace(("diferencia tiempo sin disparar " + _local10)); if ((((((_local10 < 150)) && ((VariablesGlobales.nivelEditor == false)))) && ((Juego(VariablesGlobales.JuegoActual).nivel_completado == false)))){ }; if ((((((_local10 >= 10000)) && ((VariablesGlobales.nivelEditor == false)))) && ((Juego(VariablesGlobales.JuegoActual).nivel_completado == false)))){ }; }; if (Juego(VariablesGlobales.JuegoActual).nivel_completado == true){ dummiesLanzadosDespues = (dummiesLanzadosDespues + 1); if (dummiesLanzadosDespues > 10){ }; } else { dummiesLanzadosAntes = (dummiesLanzadosAntes + 1); VariablesGlobales.disparosRealizadosNivelActual = (VariablesGlobales.disparosRealizadosNivelActual + 1); tiempoUltimoDisparo = getTimer(); if (tiempoLanzamientoAux == 0){ tiempoLanzamientoAux = getTimer(); dummiesLanzadosAux = 1; } else { _local11 = (getTimer() - tiempoLanzamientoAux); if (_local11 <= 5000){ dummiesLanzadosAux++; if ((((((dummiesLanzadosAux >= 10)) && ((VariablesGlobales.nivelEditor == false)))) && ((Juego(VariablesGlobales.JuegoActual).nivel_completado == false)))){ trace("10 dumies en 5 secs trigger"); }; } else { trace((dummiesLanzadosAux + " dummies lanzados en 5 secs")); tiempoLanzamientoAux = 0; dummiesLanzadosAux = 0; }; }; }; if (dummiesLanzadosAntes == 1){ tiempoPrimerLanzamiento = getTimer(); } else { if (dummiesLanzadosAntes == 2){ _local12 = (getTimer() - tiempoPrimerLanzamiento); trace(("diferencia tiempo primer lanzamiento " + _local12)); if ((((((_local12 >= 10000)) && ((VariablesGlobales.nivelEditor == false)))) && ((Juego(VariablesGlobales.JuegoActual).nivel_completado == false)))){ }; }; }; if (dummiesLanzadosAntes >= 10){ if ((((VariablesGlobales.indiceNivelActual == 97)) && ((VariablesGlobales.nivelEditor == false)))){ }; }; _local5 = (dummiesLanzadosAntes + dummiesLanzadosDespues); if ((((_local5 >= 30)) && ((VariablesGlobales.nivelEditor == false)))){ }; _local6 = ""; if ((((disfraz.brazo.rotation >= 0)) && ((disfraz.brazo.rotation <= 45)))){ _local6 = "E"; }; if ((((disfraz.brazo.rotation >= 45.01)) && ((disfraz.brazo.rotation <= 135)))){ _local6 = "S"; }; if ((((disfraz.brazo.rotation >= 135.01)) && ((disfraz.brazo.rotation <= 180)))){ _local6 = "O"; }; if ((((disfraz.brazo.rotation <= 0)) && ((disfraz.brazo.rotation >= -45)))){ _local6 = "E"; }; if ((((disfraz.brazo.rotation <= -45.01)) && ((disfraz.brazo.rotation >= -135)))){ _local6 = "N"; }; if ((((disfraz.brazo.rotation <= -135.01)) && ((disfraz.brazo.rotation >= -180)))){ _local6 = "O"; }; if ((((((disfraz.brazo.rotation >= 89)) && ((disfraz.brazo.rotation <= 91)))) && ((VariablesGlobales.nivelEditor == false)))){ }; secuenciaDireccion.push(_local6); if (secuenciaDireccion.length > maximoObjetos){ secuenciaDireccion.shift(); }; _local7 = ""; _local8 = 0; while (_local8 < secuenciaDireccion.length) { _local7 = (_local7 + secuenciaDireccion[_local8]); _local8++; }; trace(_local7); if (_local7 == "EO"){ }; if (_local7 == "OE"){ }; if (_local7 == "NESO"){ }; if (_local7 == "NOES"){ }; if (!(VariablesGlobales.nivelEditor)){ VariablesGlobales.numeroDisparos = (VariablesGlobales.numeroDisparos + 1); VariablesGlobales.numeroDisparosPantallaActual = (VariablesGlobales.numeroDisparosPantallaActual + 1); trace(("disparo actual " + VariablesGlobales.numeroDisparos)); trace(("disparo actual pantalla" + VariablesGlobales.numeroDisparosPantallaActual)); if (VariablesGlobales.numeroDisparos >= 1000){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.NUMERO_DISPAROS); }; trace(((("4 en gravedad? " + listaObjetos.length) + ",") + VariablesGlobales.gravedadCero)); if ((((listaObjetos.length == 4)) && ((VariablesGlobales.gravedadCero == true)))){ trace("4 en gravedad = si"); VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.DUMMIES_SIN_GRAVEDAD); }; if (VariablesGlobales.numeroDisparos == 100){ } else { if (VariablesGlobales.numeroDisparos == 200){ } else { if (VariablesGlobales.numeroDisparos == 300){ } else { if (VariablesGlobales.numeroDisparos == 400){ } else { if (VariablesGlobales.numeroDisparos == 500){ } else { if (VariablesGlobales.numeroDisparos == 666){ } else { VariablesGlobales.savegameMan.salvarPartida(); }; }; }; }; }; }; }; _disfraz.parent.setChildIndex(_disfraz, (_disfraz.parent.numChildren - 1)); _disfraz.brazo.efecto.gotoAndPlay(1); if (VariablesGlobales.soundMan){ VariablesGlobales.soundMan.playSound("gas", 1, 0, 0); }; } override public function destruir():void{ var _local1:Actor; while (listaObjetos.length > 0) { _local1 = listaObjetos.shift(); Juego(VariablesGlobales.JuegoActual).eliminarActor(_local1); }; listaObjetos = []; padre.removeEventListener(MouseEvent.MOUSE_MOVE, on_mouse_move); padre.removeEventListener(MouseEvent.CLICK, on_canvas_clicked); padre.removeChild(punto_mira); punto_mira = null; super.destruir(); } private function obtenerSkinAleatoreo():int{ var _local1:Array; var _local2:int; var _local3:int; _local1 = []; _local2 = 1; _local3 = 1; while (_local3 < VariablesGlobales.logrosMan.matrizLogros.length) { if (VariablesGlobales.logrosMan.matrizLogros[_local3]){ _local1.push(_local3); }; _local3++; }; if (_local1.length > 0){ _local2 = ((Math.random() * _local1.length) + 1); _local2 = _local1[_local2]; }; return (_local2); } override protected function actualizacionEspecificaHijo():void{ var _local1:Number; ActualizaPosicionBrazo(); _local1 = (getTimer() - tiempoUltimoDisparo); if (_local1 > 20000){ }; if (punto_mira != null){ punto_mira.visible = true; punto_mira.x = MovieClip(punto_mira.parent).mouseX; punto_mira.y = MovieClip(punto_mira.parent).mouseY; if (VariablesGlobales.galeriaSkins){ }; if (VariablesGlobales.cursorVisible){ Mouse.show(); }; MovieClip(punto_mira.parent).setChildIndex(punto_mira, (MovieClip(punto_mira.parent).numChildren - 1)); }; super.actualizacionEspecificaHijo(); } function distance(_arg1, _arg2):Number{ var _local3:*; var _local4:*; var _local5:Number; _local4 = (_arg2.x - _arg1.x); _local5 = (_arg2.y - _arg1.y); _local3 = Math.sqrt(((_local4 * _local4) + (_local5 * _local5))); return (_local3); } } }//package
Section 382
//lanzadera_editor_mc (lanzadera_editor_mc) package { import flash.display.*; public dynamic class lanzadera_editor_mc extends MovieClip { } }//package
Section 383
//lanzadera_mc (lanzadera_mc) package { import flash.display.*; public dynamic class lanzadera_mc extends MovieClip { public var brazo:MovieClip; } }//package
Section 384
//LanzarContenidoOnline (LanzarContenidoOnline) package { import flash.utils.*; import flash.events.*; import flash.text.*; public class LanzarContenidoOnline extends Ventana { public var time_error:TextField; var time_left:Timer; public function LanzarContenidoOnline(){ time_left = new Timer(10000); super(); time_error.visible = false; time_left.start(); time_left.addEventListener(TimerEvent.TIMER, on_time); } private function on_time(_arg1:TimerEvent):void{ time_error.visible = true; time_left.removeEventListener(TimerEvent.TIMER_COMPLETE, on_time); } override protected function Cargar_Ventana():void{ var _local1:String; _local1 = VariablesGlobales.obtenerIdAleatorio(VariablesGlobales.tipo_actual); if (_local1 != ""){ VariablesGlobales.CargarContenidoOnline(this, _local1); }; super.Cargar_Ventana(); } override protected function Descargar_Ventana():void{ time_left.removeEventListener(TimerEvent.TIMER_COMPLETE, on_time); super.Descargar_Ventana(); } } }//package
Section 385
//List_skin (List_skin) package { import flash.display.*; public dynamic class List_skin extends MovieClip { } }//package
Section 386
//load_more_button (load_more_button) package { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class load_more_button extends MovieClip { public function load_more_button(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 387
//logro (logro) package { import flash.media.*; public dynamic class logro extends Sound { } }//package
Section 388
//ManagerLogros (ManagerLogros) package { import flash.utils.*; import flash.events.*; import gs.*; import flash.display.*; public class ManagerLogros { public var matrizLogrosInicial:Array; private var _colaLogros:Array; private var _matrizLogros:Array; private var _mostrandoLogro:Boolean;// = false private var panelAchi:achipopups; private var muertePanel:Timer; private var timerLogros:Timer; public var main_class:MovieClip; public static const SKIN_01:int = 1; public static const SKIN_02:int = 2; public static const SKIN_03:int = 3; public static const SKIN_05:int = 5; public static const SKIN_07:int = 7; public static const SKIN_09:int = 9; public static const SKIN_04:int = 4; public static const SKIN_06:int = 6; public static const SKIN_08:int = 8; public static const NIVEL_05_BA:int = 27; public static const SHARE_DUMMY:int = 12; public static const SKIN_10:int = 10; public static const SKIN_11:int = 11; public static const SKIN_12:int = 12; public static const SKIN_13:int = 13; public static const SKIN_14:int = 14; public static const SKIN_15:int = 15; public static const SKIN_16:int = 16; public static const SKIN_17:int = 17; public static const SKIN_18:int = 18; public static const SKIN_19:int = 19; public static const SKIN_20:int = 20; public static const SKIN_21:int = 21; public static const SKIN_23:int = 23; public static const SKIN_25:int = 25; public static const SKIN_27:int = 27; public static const SKIN_22:int = 22; public static const SKIN_24:int = 24; public static const SKIN_26:int = 26; public static const SKIN_28:int = 28; public static const SKIN_29:int = 29; public static const NIVEL_38_BD2:int = 37; public static const SKIN_30:int = 30; public static const SKIN_31:int = 31; public static const SKIN_32:int = 32; public static const SKIN_33:int = 33; public static const SKIN_34:int = 34; public static const SKIN_35:int = 35; public static const SKIN_36:int = 36; public static const SKIN_37:int = 37; public static const SKIN_38:int = 38; public static const SKIN_39:int = 39; public static const NIVEL_33_G:int = 36; public static const NIVEL_45_BD1:int = 41; public static const NIVEL_40_D1:int = 38; public static const DESMUTAR_SONIDO:int = 26; public static const SKIN_40:int = 40; public static const SKIN_41:int = 41; public static const SKIN_43:int = 43; public static const SKIN_45:int = 45; public static const SKIN_47:int = 47; public static const SKIN_42:int = 42; public static const SKIN_44:int = 44; public static const SKIN_46:int = 46; public static const SKIN_48:int = 48; public static const NIVEL_12_BA:int = 29; public static const NIVEL_29_G:int = 34; public static const SKIN_49:int = 49; public static const VIDEO_EDITOR_DUMMY:int = 24; public static const TEST_DUMMY:int = 21; public static const SKIN_50:int = 50; public static const SKIN_51:int = 51; public static const F_CON_1_DUMMY:int = 51; public static const NUMERO_BOLTS:int = 49; public static const NIVEL_20_G:int = 31; public static const NIVEL_28_A:int = 33; public static const NIVEL_53_GD2:int = 44; public static const NIVEL_07_BA:int = 28; public static const NIVEL_54_G:int = 45; public static const NIVEL_42_G:int = 40; public static const NIVELES_A_2:int = 18; public static const NIVELES_A_1:int = 17; public static const NIVELES_A_3:int = 19; public static const NIVEL_27_G:int = 32; public static const PLAY_NIVEL:int = 13; public static const PLAY_MORE_GAMES:int = 25; public static const LIKE_NIVEL:int = 15; public static const NIVEL_41_G:int = 39; public static const NIVEL_30_G:int = 35; public static const NUMERO_DISPAROS:int = 47; public static const NIVEL_49_G:int = 43; public static const SHARE_NIVEL:int = 11; public static const DUMMIES_SIN_GRAVEDAD:int = 50; public static const EMPEZAR_JUEGO:int = 1; public static const NIVEL_59_G:int = 46; public static const PLAY_DUMMY:int = 14; public static const NUMERO_PARTIDAS:int = 48; public static const NIVEL_47_G:int = 42; public static const NIVEL_14_GD1:int = 30; public static const LIKE_DUMMY:int = 16; public static const VIDEO_GUIA:int = 22; public static const BLOQUE_1:int = 2; public static const BLOQUE_2:int = 3; public static const BLOQUE_3:int = 4; public static const BLOQUE_5:int = 6; public static const BLOQUE_6:int = 7; public static const BLOQUE_7:int = 8; public static const TEST_NIVEL:int = 20; public static const BLOQUE_9:int = 10; public static const BLOQUE_4:int = 5; public static const VIDEO_EDITOR_NIVEL:int = 23; public static const BLOQUE_8:int = 9; public function ManagerLogros(){ _matrizLogros = [0, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false]; matrizLogrosInicial = [0, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false]; _colaLogros = []; _mostrandoLogro = false; timerLogros = new Timer(1000, 1); super(); trace("inicia manager logros"); _matrizLogros = [0, true, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false]; timerLogros.addEventListener(TimerEvent.TIMER_COMPLETE, timerComplete); timerLogros.start(); } private function on_finish_timer(_arg1:TimerEvent):void{ muertePanel.removeEventListener(TimerEvent.TIMER_COMPLETE, on_finish_timer); TweenLite.to(panelAchi, 3, {alpha:0, onComplete:onFinishTween}); } function onFinishTween():void{ trace("mostrando logro = false"); _mostrandoLogro = false; } public function DesbloquearTodos(){ _matrizLogros = [0, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true, true]; VariablesGlobales.savegameMan.salvarPartida(); } private function timerComplete(_arg1:TimerEvent):void{ timerLogros.start(); if ((((_colaLogros.length > 0)) && ((_mostrandoLogro == false)))){ mostrarLogro(_colaLogros.splice(0, 1)); }; } private function mostrarLogro(_arg1:int):void{ _mostrandoLogro = true; trace("mostrando logro = true"); panelAchi = new achipopups(); panelAchi.gotoAndStop(_arg1); panelAchi.mouseEnabled = false; panelAchi.mouseChildren = false; panelAchi.x = 593; panelAchi.y = 112; VariablesGlobales.contenedorPadre.addChild(panelAchi); muertePanel = new Timer(3000, 1); muertePanel.addEventListener(TimerEvent.TIMER_COMPLETE, on_finish_timer); muertePanel.start(); if (VariablesGlobales.soundMan){ VariablesGlobales.soundMan.playSound("logro", 1, 0, 0); }; } public function DesbloquearLogro(_arg1:int){ if (LogroDesbloqueado(_arg1)){ return; }; if (_matrizLogros[_arg1] == false){ trace((("logro " + _arg1) + " desbloqueado")); _matrizLogros[_arg1] = true; VariablesGlobales.savegameMan.salvarPartida(); _colaLogros.push(_arg1); }; } public function LogroDesbloqueado(_arg1:int):Boolean{ var _local2:Boolean; _local2 = false; _local2 = _matrizLogros[_arg1]; return (_local2); } public function set matrizLogros(_arg1:Array):void{ _matrizLogros = _arg1; } public function get matrizLogros():Array{ return (_matrizLogros); } } }//package
Section 389
//ManagerPartidas (ManagerPartidas) package { import flash.net.*; public class ManagerPartidas { var so:SharedObject; public function ManagerPartidas(){ so = SharedObject.getLocal("DNF2_betav2", "/"); super(); cargarPartida(); } public function borrarPartida(){ iniciaPartida(); volcarDatos(); salvarPartida(); } public function cargarPartida(){ if (so.data.inicializados == undefined){ trace("inicializar savegame"); iniciaPartida(); } else { trace("cargar savegame"); }; volcarDatos(); } public function salvarPartida(){ so.data.inicializados = true; so.data.musica = VariablesGlobales.musicMan.Activo; so.data.sonido = VariablesGlobales.soundMan.Activo; so.data.indiceNivelMaximo = VariablesGlobales.indiceNivelMaximo; so.data.skinActual = VariablesGlobales.skinActual; so.data.numeroPartidas = VariablesGlobales.numeroPartidas; so.data.numeroDisparos = VariablesGlobales.numeroDisparos; so.data.numeroItems = VariablesGlobales.itemsRecogidos; so.data.logros = VariablesGlobales.logrosMan.matrizLogros; so.data.puntuaciones = VariablesGlobales.matrizPuntuaciones; so.data.nivelesNombres = VariablesGlobales.nivelesNombresJugador; so.data.nivelesData = VariablesGlobales.nivelesDataJugador; so.data.nivelesOnline = VariablesGlobales.nivelesOnlineJugador; so.data.dummyNombres = VariablesGlobales.dummyNombresJugador; so.data.dummyData = VariablesGlobales.dummyDataJugador; so.data.dummyOnline = VariablesGlobales.dummyOnlineJugador; so.flush(); } private function volcarDatos():void{ VariablesGlobales.musicMan.Activo = so.data.musica; VariablesGlobales.soundMan.Activo = so.data.sonido; VariablesGlobales.indiceNivelMaximo = so.data.indiceNivelMaximo; VariablesGlobales.skinActual = so.data.skinActual; VariablesGlobales.numeroPartidas = so.data.numeroPartidas; VariablesGlobales.numeroDisparos = so.data.numeroDisparos; VariablesGlobales.itemsRecogidos = so.data.numeroItems; VariablesGlobales.logrosMan.matrizLogros = so.data.logros; VariablesGlobales.matrizPuntuaciones = so.data.puntuaciones; VariablesGlobales.nivelesNombresJugador = so.data.nivelesNombres; VariablesGlobales.nivelesDataJugador = so.data.nivelesData; VariablesGlobales.nivelesOnlineJugador = so.data.nivelesOnline; VariablesGlobales.dummyNombresJugador = so.data.dummyNombres; VariablesGlobales.dummyDataJugador = so.data.dummyData; VariablesGlobales.dummyOnlineJugador = so.data.dummyOnline; } private function iniciaPartida(){ so.data.inicializados = new Boolean(true); so.data.musica = true; so.data.sonido = true; so.data.indiceNivelMaximo = 1; so.data.skinActual = 0; so.data.numeroPartidas = 0; so.data.numeroDisparos = 0; so.data.numeroItems = 0; so.data.logros = VariablesGlobales.logrosMan.matrizLogrosInicial; so.data.logros = [0, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false]; so.data.puntuaciones = [-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1]; so.data.nivelesNombres = []; so.data.nivelesData = []; so.data.nivelesOnline = []; so.data.dummyNombres = []; so.data.dummyData = []; so.data.dummyOnline = []; } } }//package
Section 390
//Meta (Meta) package { import Box2D.Dynamics.*; import Box2D.Collision.Shapes.*; import flash.display.*; import flash.geom.*; public class Meta extends Actor { private var activa:Boolean;// = false public function Meta(_arg1:DisplayObjectContainer, _arg2:Point, _arg3:String){ var _local4:b2Body; var _local5:b2BodyDef; var _local6:*; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:*; activa = false; _local5 = new b2BodyDef(); _local7 = 0.1; _local8 = 0.3; _local9 = 0; switch (_arg3){ case VariablesGlobales.catalogoObjetos.META_REDONDA: _local10 = new meta_circular_mc(); _local6 = new b2CircleDef(); b2CircleDef(_local6).density = _local7; b2CircleDef(_local6).radius = ((Sprite(_local10).width / 2) / VariablesGlobales.RATIO); b2CircleDef(_local6).friction = _local8; b2CircleDef(_local6).restitution = _local9; _local5.position.Set((_arg2.x / VariablesGlobales.RATIO), (_arg2.y / VariablesGlobales.RATIO)); _local4 = VariablesGlobales.mundo.CreateBody(_local5); _local4.CreateShape(b2CircleDef(_local6)); _local4.SetMassFromShapes(); break; case VariablesGlobales.catalogoObjetos.META_CUADRADA: _local10 = new meta_cuadrada_mc(); _local6 = new b2PolygonDef(); b2PolygonDef(_local6).density = _local7; b2PolygonDef(_local6).SetAsBox(((Sprite(_local10).width / 2) / VariablesGlobales.RATIO), ((Sprite(_local10).height / 2) / VariablesGlobales.RATIO)); b2PolygonDef(_local6).friction = _local8; b2PolygonDef(_local6).restitution = _local9; _local5.position.Set((_arg2.x / VariablesGlobales.RATIO), (_arg2.y / VariablesGlobales.RATIO)); _local4 = VariablesGlobales.mundo.CreateBody(_local5); _local4.CreateShape(b2PolygonDef(_local6)); _local4.SetMassFromShapes(); break; case VariablesGlobales.catalogoObjetos.META_ESTATICA: _local10 = new meta_estatica_mc(); _local6 = new b2CircleDef(); b2CircleDef(_local6).density = 0; b2CircleDef(_local6).radius = ((Sprite(_local10).width / 2) / VariablesGlobales.RATIO); b2CircleDef(_local6).friction = _local8; b2CircleDef(_local6).restitution = _local9; _local5.position.Set((_arg2.x / VariablesGlobales.RATIO), (_arg2.y / VariablesGlobales.RATIO)); _local4 = VariablesGlobales.mundo.CreateBody(_local5); _local4.CreateShape(b2CircleDef(_local6)); _local4.SetMassFromShapes(); break; default: _local10 = new Sprite(); trace("ERROR al crear actor meta"); }; _arg1.addChild(_local10); _local10.mouseEnabled = false; _local10.mouseChildren = false; super(_local4, _local10); _disfraz.gotoAndStop(1); } override protected function limpiarAntesDeBorrar():void{ if (VariablesGlobales.soundMan){ VariablesGlobales.soundMan.stopSound("alarma"); }; super.limpiarAntesDeBorrar(); } public function activarMeta():void{ if (!(activa)){ activa = true; _disfraz.gotoAndPlay(1); if (VariablesGlobales.soundMan){ VariablesGlobales.soundMan.playSound("alarma", 1, 0, 0); }; }; } override protected function actualizacionEspecificaHijo():void{ super.actualizacionEspecificaHijo(); } } }//package
Section 391
//meta_circular_mc (meta_circular_mc) package { import flash.display.*; public dynamic class meta_circular_mc extends MovieClip { } }//package
Section 392
//meta_cuadrada_mc (meta_cuadrada_mc) package { import flash.display.*; public dynamic class meta_cuadrada_mc extends MovieClip { } }//package
Section 393
//meta_estatica_mc (meta_estatica_mc) package { import flash.display.*; public dynamic class meta_estatica_mc extends MovieClip { } }//package
Section 394
//mirilla_mc (mirilla_mc) package { import flash.display.*; public dynamic class mirilla_mc extends MovieClip { } }//package
Section 395
//MovieClipEnmascarado (MovieClipEnmascarado) package { import flash.events.*; import flash.display.*; public class MovieClipEnmascarado extends MovieClip { public var colision_interior_mc; public var modoEdicion:Boolean;// = false public var colision_mc; public var nombre_original:String;// = "" public var colision_gris_mc; public var original_mc; public function MovieClipEnmascarado(){ modoEdicion = false; nombre_original = ""; super(); addEventListener(Event.ADDED_TO_STAGE, onAddedToStage); addEventListener(Event.REMOVED_FROM_STAGE, onRemovedFromStage); } private function onRemovedFromStage(_arg1:Event):void{ parent.removeChild(original_mc); parent.removeChild(colision_interior_mc); parent.removeChild(colision_gris_mc); parent.removeChild(colision_mc); original_mc = null; colision_interior_mc = null; colision_gris_mc = null; colision_mc = null; removeEventListener(Event.ENTER_FRAME, onEnterFrame); removeEventListener(Event.REMOVED_FROM_STAGE, onRemovedFromStage); } private function onAddedToStage(_arg1:Event):void{ switch (nombre_original){ case VariablesGlobales.catalogoObjetos.ESTATICO_CUADRADO: original_mc = new estatico_cuadrado_mc(); colision_interior_mc = new colision_cuadrado_interior_mc(); colision_gris_mc = new colision_cuadrado_gris_mc(); colision_mc = new colision_cuadrado_mc(); break; case VariablesGlobales.catalogoObjetos.ESTATICO_CIRCULO: original_mc = new estatico_circulo_mc(); colision_interior_mc = new colision_circulo_interior_mc(); colision_gris_mc = new colision_circulo_gris_mc(); colision_mc = new colision_circulo_mc(); break; case VariablesGlobales.catalogoObjetos.DINAMICO_CUADRADO: original_mc = new dinamico_cuadrado_mc(); colision_interior_mc = new colision_cuadrado_interior_mc(); colision_gris_mc = new colision_cuadrado_gris_mc(); colision_mc = new colision_cuadrado_mc(); break; case VariablesGlobales.catalogoObjetos.DINAMICO_CIRCULO: original_mc = new dinamico_circulo_mc(); colision_interior_mc = new colision_circulo_interior_mc(); colision_gris_mc = new colision_circulo_gris_mc(); colision_mc = new colision_circulo_mc(); break; case VariablesGlobales.catalogoObjetos.AUTONOMO_HORIZONTAL: original_mc = new autonomo_horizontal_mc(); colision_interior_mc = new colision_cuadrado_interior_mc(); colision_gris_mc = new colision_cuadrado_gris_mc(); colision_mc = new colision_cuadrado_mc(); break; case VariablesGlobales.catalogoObjetos.AUTONOMO_VERTICAL: original_mc = new autonomo_vertical_mc(); colision_interior_mc = new colision_cuadrado_interior_mc(); colision_gris_mc = new colision_cuadrado_gris_mc(); colision_mc = new colision_cuadrado_mc(); break; }; MovieClip(colision_mc).mouseChildren = false; MovieClip(colision_mc).mouseEnabled = false; MovieClip(colision_mc).visible = false; parent.addChild(colision_mc); MovieClip(colision_gris_mc).mouseChildren = false; MovieClip(colision_gris_mc).mouseEnabled = false; MovieClip(colision_gris_mc).visible = false; parent.addChild(colision_gris_mc); MovieClip(colision_interior_mc).mouseChildren = false; MovieClip(colision_interior_mc).mouseEnabled = false; MovieClip(colision_interior_mc).visible = false; parent.addChild(colision_interior_mc); MovieClip(original_mc).mouseChildren = false; MovieClip(original_mc).mouseEnabled = false; MovieClip(original_mc).visible = false; parent.addChild(original_mc); alpha = 0.01; visible = false; removeEventListener(Event.ADDED_TO_STAGE, onAddedToStage); addEventListener(Event.ENTER_FRAME, onEnterFrame); } private function onEnterFrame(_arg1:Event):void{ var _local2:Number; _local2 = rotation; if (width < 12){ width = 12; }; if (height < 12){ height = 12; }; rotation = 0; MovieClip(colision_mc).rotation = 0; MovieClip(colision_mc).width = width; MovieClip(colision_mc).height = height; MovieClip(colision_gris_mc).rotation = 0; MovieClip(colision_gris_mc).width = (width - VariablesGlobales.margenGris); MovieClip(colision_gris_mc).height = (height - VariablesGlobales.margenGris); MovieClip(colision_interior_mc).rotation = 0; MovieClip(colision_interior_mc).width = (width - VariablesGlobales.margenContornoMascara); MovieClip(colision_interior_mc).height = (height - VariablesGlobales.margenContornoMascara); MovieClip(original_mc).myMask.width = (width - VariablesGlobales.margenContornoMascara); MovieClip(original_mc).myMask.height = (height - VariablesGlobales.margenContornoMascara); MovieClip(colision_mc).x = x; MovieClip(colision_mc).y = y; MovieClip(colision_gris_mc).x = x; MovieClip(colision_gris_mc).y = y; MovieClip(colision_interior_mc).x = x; MovieClip(colision_interior_mc).y = y; rotation = _local2; MovieClip(colision_mc).rotation = rotation; MovieClip(colision_gris_mc).rotation = rotation; MovieClip(colision_interior_mc).rotation = rotation; MovieClip(original_mc).x = x; MovieClip(original_mc).y = y; MovieClip(original_mc).rotation = rotation; MovieClip(colision_mc).visible = true; MovieClip(colision_gris_mc).visible = true; MovieClip(colision_interior_mc).visible = true; MovieClip(original_mc).visible = true; visible = true; } } }//package
Section 396
//Niveles (Niveles) package { import flash.events.*; import com.greensock.*; import flash.ui.*; import flash.display.*; import flash.text.*; public class Niveles extends Ventana { public var panel:MovieClip; public var b2:MovieClip; public var b4:MovieClip; public var b9:MovieClip; public var b5:MovieClip; public var b6:MovieClip; public var b7:MovieClip; public var b1:MovieClip; public var b3:MovieClip; public var b8:MovieClip; public var der:SimpleButton; public var atras:SimpleButton; public var submit:SimpleButton; private var grupos:Array; public var miniatura:MovieClip; public var puntuaciones:SimpleButton; public var miniatura_dummy:MovieClip; public var izq:SimpleButton; public var fade:MovieClip; public var info:TextField; private var puertaActual:int;// = 1 private var skinTemp:int; private var listaFichas:Array; public function Niveles(){ skinTemp = VariablesGlobales.skinActual; grupos = [[1, 2, 3], [4, 5, 6, 7, 8, 9, 10], [11, 12, 13, 14, 15, 16, 17], [18, 19, 20, 21, 22, 23, 24], [25, 26, 27, 28, 29, 30, 31], [32, 33, 34, 35, 36, 37, 38], [39, 40, 41, 42, 43, 44, 45], [46, 47, 48, 49, 50, 51, 52], [53, 54, 55, 56, 57, 58, 59, 60]]; puertaActual = 1; listaFichas = []; super(); VariablesGlobales.NivelesActual = this; } public function forzarCerrar():void{ main_class.cierra_pantalla(this); } private function on_button_out(_arg1:MouseEvent):void{ _arg1.currentTarget.gotoAndStop(1); } override protected function Cargar_Ventana():void{ VariablesGlobales.musicaActual = "principal_01"; VariablesGlobales.EstadoMusica(); atras.addEventListener(MouseEvent.CLICK, on_button_clicked); izq.addEventListener(MouseEvent.CLICK, on_button_clicked); der.addEventListener(MouseEvent.CLICK, on_button_clicked); b1.addEventListener(MouseEvent.CLICK, on_button_clicked); b2.addEventListener(MouseEvent.CLICK, on_button_clicked); b3.addEventListener(MouseEvent.CLICK, on_button_clicked); b4.addEventListener(MouseEvent.CLICK, on_button_clicked); b5.addEventListener(MouseEvent.CLICK, on_button_clicked); b6.addEventListener(MouseEvent.CLICK, on_button_clicked); b7.addEventListener(MouseEvent.CLICK, on_button_clicked); b8.addEventListener(MouseEvent.CLICK, on_button_clicked); b9.addEventListener(MouseEvent.CLICK, on_button_clicked); submit.addEventListener(MouseEvent.CLICK, on_button_clicked); puntuaciones.addEventListener(MouseEvent.CLICK, on_button_clicked); EstadoNiveles(); EstadoDummy(); miniatura_dummy.addEventListener(MouseEvent.CLICK, on_button_clicked); if (VariablesGlobales.matrizPuntuaciones[0] == -1){ info.text = "0 "; } else { info.text = (("" + String(VariablesGlobales.matrizPuntuaciones[0])) + " "); }; miniatura.info.text = ""; miniatura.info2.text = ""; miniatura.info3.text = ""; miniatura.gotoAndStop(1); addEventListener(Event.ENTER_FRAME, enter_frame); puertaActual = puertaNivel(VariablesGlobales.indiceNivelActual); irAPuerta(puertaActual); super.Cargar_Ventana(); if (VariablesGlobales.PrincipalActual != null){ this.y = -520; TweenLite.to(this, 1, {y:0}); }; fade.visible = false; } private function puertaNivel(_arg1):int{ var _local2:int; var _local3:int; var _local4:int; _local2 = 0; while (_local2 < grupos.length) { _local3 = 0; while (_local3 < grupos[_local2].length) { _local4 = grupos[_local2][_local3]; if (_local4 == _arg1){ return ((_local2 + 1)); }; _local3++; }; _local2++; }; } private function on_button_over(_arg1:MouseEvent):void{ _arg1.currentTarget.gotoAndStop(2); } private function enter_frame(_arg1:Event):void{ Mouse.show(); if (skinTemp != VariablesGlobales.skinActual){ EstadoDummy(); }; } override protected function Descargar_Ventana():void{ VariablesGlobales.NivelesActual = null; atras.removeEventListener(MouseEvent.CLICK, on_button_clicked); removeEventListener(Event.ENTER_FRAME, enter_frame); super.Descargar_Ventana(); } private function onFinishTweenAbrirPuerta():void{ } public function on_button_clicked(_arg1:MouseEvent){ if (VariablesGlobales.soundMan){ VariablesGlobales.soundMan.playSound("click", 1, 0, 0); }; switch (_arg1.currentTarget.name){ case "atras": main_class.abre_pantalla(new Principal()); VariablesGlobales.PrincipalActual.y = 520; TweenLite.to(this, 1, {y:-520, onComplete:onFinishTweenFinal}); TweenLite.to(VariablesGlobales.PrincipalActual, 1, {y:0}); break; case "der": puertaActual = (puertaActual + 1); if (puertaActual > 9){ puertaActual = 9; }; irAPuerta(puertaActual); break; case "izq": puertaActual = (puertaActual - 1); if (puertaActual < 1){ puertaActual = 1; }; irAPuerta(puertaActual); break; case "b1": puertaActual = 1; irAPuerta(puertaActual); break; case "b2": puertaActual = 2; irAPuerta(puertaActual); break; case "b3": puertaActual = 3; irAPuerta(puertaActual); break; case "b4": puertaActual = 4; irAPuerta(puertaActual); break; case "b5": puertaActual = 5; irAPuerta(puertaActual); break; case "b6": puertaActual = 6; irAPuerta(puertaActual); break; case "b7": puertaActual = 7; irAPuerta(puertaActual); break; case "b8": puertaActual = 8; irAPuerta(puertaActual); break; case "b9": puertaActual = 9; irAPuerta(puertaActual); break; case "miniatura_dummy": if (VariablesGlobales.GaleriaActual == null){ VariablesGlobales.GaleriaDummyMostrarFondo = true; main_class.abre_pantalla(new Galeria()); Galeria(VariablesGlobales.GaleriaActual).visible = false; main_class.abre_pantalla(new Galeria_Animacion()); }; break; case "puntuaciones": VariablesGlobales.AbrePuntuaciones(main_class); break; case "submit": VariablesGlobales.SubmitPuntuaciones(main_class); break; default: trace((_arg1.currentTarget.name + " UNDEFINED")); break; }; } private function irAPuerta(_arg1):void{ var _local2:Number; _local2 = 0; b1.gotoAndStop(1); b2.gotoAndStop(1); b3.gotoAndStop(1); b4.gotoAndStop(1); b5.gotoAndStop(1); b6.gotoAndStop(1); b7.gotoAndStop(1); b8.gotoAndStop(1); b9.gotoAndStop(1); switch (_arg1){ case 1: b1.gotoAndStop(2); _local2 = panel.p1.x; break; case 2: b2.gotoAndStop(2); _local2 = panel.p2.x; break; case 3: b3.gotoAndStop(2); _local2 = panel.p3.x; break; case 4: b4.gotoAndStop(2); _local2 = panel.p4.x; break; case 5: b5.gotoAndStop(2); _local2 = panel.p5.x; break; case 6: b6.gotoAndStop(2); _local2 = panel.p6.x; break; case 7: b7.gotoAndStop(2); _local2 = panel.p7.x; break; case 8: b8.gotoAndStop(2); _local2 = panel.p8.x; break; case 9: b9.gotoAndStop(2); _local2 = panel.p9.x; break; }; _local2 = ((_local2 - panel.p1.x) - 27); _local2 = (_local2 * -1); TweenLite.to(panel, 1, {x:_local2}); } private function on_nivel_click(_arg1:MouseEvent):void{ var _local2:int; _local2 = puertaNivel(int(_arg1.currentTarget.indice.text)); switch (_local2){ case 1: VariablesGlobales.indiceNivelActual = int(_arg1.currentTarget.indice.text); fade.alpha = 0.1; fade.visible = true; TweenLite.to(panel.p1, 1, {y:(panel.p1.y - 400), onComplete:onFinishTweenAbrirPuerta}); arrastrarNivelesPuerta(_local2); break; case 2: VariablesGlobales.indiceNivelActual = int(_arg1.currentTarget.indice.text); fade.alpha = 0.1; fade.visible = true; TweenLite.to(panel.p2, 1, {y:(panel.p2.y - 400), onComplete:onFinishTweenAbrirPuerta}); arrastrarNivelesPuerta(_local2); break; case 3: VariablesGlobales.indiceNivelActual = int(_arg1.currentTarget.indice.text); fade.alpha = 0.1; fade.visible = true; TweenLite.to(panel.p3, 1, {y:(panel.p3.y - 400), onComplete:onFinishTweenAbrirPuerta}); arrastrarNivelesPuerta(_local2); break; case 4: VariablesGlobales.indiceNivelActual = int(_arg1.currentTarget.indice.text); fade.alpha = 0.1; fade.visible = true; TweenLite.to(panel.p4, 1, {y:(panel.p4.y - 400), onComplete:onFinishTweenAbrirPuerta}); arrastrarNivelesPuerta(_local2); break; case 5: VariablesGlobales.indiceNivelActual = int(_arg1.currentTarget.indice.text); fade.alpha = 0.1; fade.visible = true; TweenLite.to(panel.p5, 1, {y:(panel.p5.y - 400), onComplete:onFinishTweenAbrirPuerta}); arrastrarNivelesPuerta(_local2); break; case 6: VariablesGlobales.indiceNivelActual = int(_arg1.currentTarget.indice.text); fade.alpha = 0.1; fade.visible = true; TweenLite.to(panel.p6, 1, {y:(panel.p6.y - 400), onComplete:onFinishTweenAbrirPuerta}); arrastrarNivelesPuerta(_local2); break; case 7: VariablesGlobales.indiceNivelActual = int(_arg1.currentTarget.indice.text); fade.alpha = 0.1; fade.visible = true; TweenLite.to(panel.p7, 1, {y:(panel.p7.y - 400), onComplete:onFinishTweenAbrirPuerta}); arrastrarNivelesPuerta(_local2); break; case 8: VariablesGlobales.indiceNivelActual = int(_arg1.currentTarget.indice.text); fade.alpha = 0.1; fade.visible = true; TweenLite.to(panel.p8, 1, {y:(panel.p8.y - 400), onComplete:onFinishTweenAbrirPuerta}); arrastrarNivelesPuerta(_local2); break; case 9: VariablesGlobales.indiceNivelActual = int(_arg1.currentTarget.indice.text); fade.alpha = 0.1; fade.visible = true; TweenLite.to(panel.p9, 1, {y:(panel.p9.y - 400), onComplete:onFinishTweenAbrirPuerta}); arrastrarNivelesPuerta(_local2); break; }; abrirNivel(VariablesGlobales.indiceNivelActual); } function onFinishTweenFinal():void{ main_class.cierra_pantalla(this); } private function EstadoDummy():void{ var _local1:int; _local1 = VariablesGlobales.skinActual; skinTemp = _local1; miniatura_dummy.head.visible = false; miniatura_dummy.torso1.visible = false; miniatura_dummy.torso2.visible = false; miniatura_dummy.torso3.visible = false; miniatura_dummy.upperArmL.visible = false; miniatura_dummy.lowerArmL.visible = false; miniatura_dummy.upperArmR.visible = false; miniatura_dummy.lowerArmR.visible = false; miniatura_dummy.upperLegL.visible = false; miniatura_dummy.upperLegR.visible = false; miniatura_dummy.lowerLegL.visible = false; miniatura_dummy.lowerLegR.visible = false; miniatura_dummy.dummy_random.visible = false; if (_local1 == 0){ miniatura_dummy.dummy_random.visible = true; } else { miniatura_dummy.head.visible = true; miniatura_dummy.torso1.visible = true; miniatura_dummy.torso2.visible = true; miniatura_dummy.torso3.visible = true; miniatura_dummy.upperArmL.visible = true; miniatura_dummy.lowerArmL.visible = true; miniatura_dummy.upperArmR.visible = true; miniatura_dummy.lowerArmR.visible = true; miniatura_dummy.upperLegL.visible = true; miniatura_dummy.upperLegR.visible = true; miniatura_dummy.lowerLegL.visible = true; miniatura_dummy.lowerLegR.visible = true; miniatura_dummy.head.gotoAndStop(_local1); miniatura_dummy.torso1.gotoAndStop(_local1); miniatura_dummy.torso2.gotoAndStop(_local1); miniatura_dummy.torso3.gotoAndStop(_local1); miniatura_dummy.upperArmL.gotoAndStop(_local1); miniatura_dummy.lowerArmL.gotoAndStop(_local1); miniatura_dummy.upperArmR.gotoAndStop(_local1); miniatura_dummy.lowerArmR.gotoAndStop(_local1); miniatura_dummy.upperLegL.gotoAndStop(_local1); miniatura_dummy.upperLegR.gotoAndStop(_local1); miniatura_dummy.lowerLegL.gotoAndStop(_local1); miniatura_dummy.lowerLegR.gotoAndStop(_local1); miniatura_dummy.dummy_random.visible = false; }; } private function EstadoNiveles():void{ var _local1:int; var _local2:int; var _local3:int; var _local4:ficha_nivel_mc; var _local5:int; var _local6:int; var _local7:int; var _local8:int; var _local9:Boolean; var _local10:Number; var _local11:Number; var _local12:int; var _local13:int; _local1 = VariablesGlobales.indiceNivelMaximo; listaFichas = []; _local2 = 0; while (_local2 < VariablesGlobales.nivelesJuego.datos.length) { _local4 = new ficha_nivel_mc(); if (_local2 == 0){ _local4.visible = false; }; _local4.indice.text = ("" + _local2); _local4.gotoAndStop(1); if (_local2 <= VariablesGlobales.indiceNivelMaximo){ _local4.indice.visible = true; _local4.nota.gotoAndStop(VariablesGlobales.notaDolor(VariablesGlobales.matrizPuntuaciones[_local2])); _local4.nota.visible = true; _local4.bloqueado.visible = false; _local4.buttonMode = true; _local4.addEventListener(MouseEvent.CLICK, on_nivel_click); _local4.addEventListener(MouseEvent.MOUSE_OVER, on_button_over); _local4.addEventListener(MouseEvent.ROLL_OUT, on_button_out); } else { _local4.indice.visible = false; _local4.nota.visible = false; _local4.bloqueado.visible = true; _local4.buttonMode = false; }; _local4.y = 105; _local4.x = (5 + (_local4.width * _local2)); listaFichas.push(_local4); switch (puertaNivel(_local2)){ case 1: panel.p1.addChild(_local4); break; case 2: panel.p2.addChild(_local4); break; case 3: panel.p3.addChild(_local4); break; case 4: panel.p4.addChild(_local4); break; case 5: panel.p5.addChild(_local4); break; case 6: panel.p6.addChild(_local4); break; case 7: panel.p7.addChild(_local4); break; case 8: panel.p8.addChild(_local4); break; case 9: panel.p9.addChild(_local4); break; default: panel.addChild(_local4); }; _local2++; }; _local3 = 0; while (_local3 < grupos.length) { _local5 = 0; _local6 = 0; _local7 = 32.5; _local8 = 135.5; switch (_local3){ case 0: _local5 = panel.p1.x; _local6 = panel.p1.y; break; case 1: _local5 = panel.p2.x; _local6 = panel.p2.y; break; case 2: _local5 = panel.p3.x; _local6 = panel.p3.y; break; case 3: _local5 = panel.p4.x; _local6 = panel.p4.y; break; case 4: _local5 = panel.p5.x; _local6 = panel.p5.y; break; case 5: _local5 = panel.p6.x; _local6 = panel.p6.y; break; case 6: _local5 = panel.p7.x; _local6 = panel.p7.y; break; case 7: _local5 = panel.p8.x; _local6 = panel.p8.y; break; case 8: _local5 = panel.p9.x; _local6 = panel.p9.y; break; }; _local5 = _local7; _local6 = _local8; _local9 = true; _local10 = 1; _local11 = _local6; _local12 = 0; while (_local12 < grupos[_local3].length) { _local13 = grupos[_local3][_local12]; listaFichas[_local13].y = _local11; if (_local9){ listaFichas[_local13].x = _local5; } else { listaFichas[_local13].x = ((_local5 + listaFichas[_local13].width) + 3.5); _local11 = (((_local10 * listaFichas[_local13].height) + _local6) + 3.5); _local10++; }; _local9 = !(_local9); _local12++; }; _local3++; }; } private function arrastrarNivelesPuerta(_arg1):void{ } private function abrirNivel(_arg1:int):void{ VariablesGlobales.indiceNivelActual = _arg1; fade.alpha = 0; fade.visible = true; TweenLite.to(fade, 1, {alpha:1, onComplete:onFinishTweenFinalCargarNivel}); } private function onFinishTweenFinalCargarNivel():void{ VariablesGlobales.numeroPartidasNextSeguidas = 0; VariablesGlobales.nivelOnline = false; VariablesGlobales.dummyOnline = false; VariablesGlobales.nivelEditor = false; VariablesGlobales.nivelDummy = false; VariablesGlobales.nivelActual = VariablesGlobales.nivelesJuego.datos[VariablesGlobales.indiceNivelActual]; VariablesGlobales.musicMan.stopAllSounds(); main_class.abre_pantalla(new Juego()); main_class.cierra_pantalla(this); } } }//package
Section 397
//Niveles_Jugadores (Niveles_Jugadores) package { import Playtomic.*; import com.greensock.*; import flash.display.*; import flash.net.*; import flash.events.*; import mx.utils.*; import flash.utils.*; import flash.geom.*; import flash.text.*; import fl.containers.*; public class Niveles_Jugadores extends Ventana { private var cantidadMinima:Number;// = 8 public var atras:SimpleButton; public var play_random:SimpleButton; public var ultimos:MovieClip; public var mis_niveles:MovieClip; private var totalNiveles:Number; public var total:TextField; public var hoy:MovieClip; public var lista:ScrollPane; public var titulo:TextField; public var esta_semana:MovieClip; private var listaTemporal:Array; private var cantidadSuma:Number;// = 8 private var listaContenidoLocal:Array; public var mas_nuevo:MovieClip; public var todos:MovieClip; public var mas_popular:MovieClip; public static const ULTIMOS:String = "newest"; public static const DUMMIES:String = "dummy"; public static const MIS_NIVELES:String = "player"; public static const TODOS:String = "all"; public static const NIVELES:String = "nivel"; public static const HOY:String = "today"; public static const MAS_POPULAR:String = "popular"; public static const ESTA_SEMANA:String = "week"; public static const MAS_NUEVO:String = "newest"; public function Niveles_Jugadores(_arg1:String="nivel"){ cantidadMinima = 8; cantidadSuma = 8; listaContenidoLocal = []; listaTemporal = []; super(); trace("constructor"); VariablesGlobales.tipo_actual = _arg1; if (VariablesGlobales.filtroModo == ""){ VariablesGlobales.filtroModo = MAS_NUEVO; }; if (VariablesGlobales.filtroTiempo == ""){ VariablesGlobales.filtroTiempo = TODOS; }; VariablesGlobales.filtroCantidad = cantidadMinima; if (VariablesGlobales.PrincipalActual != null){ this.x = 780; TweenLite.to(this, 1, {x:0}); }; } private function actualizarEstado(_arg1):void{ trace(("actualizar estado " + _arg1)); mas_popular.visible = true; mas_nuevo.visible = true; switch (_arg1){ case "mis_niveles": mis_niveles.gotoAndStop(2); VariablesGlobales.filtroTiempo = MIS_NIVELES; cargarListaContenidoLocal(); ultimos.gotoAndStop(1); esta_semana.gotoAndStop(1); hoy.gotoAndStop(1); todos.gotoAndStop(1); mas_popular.visible = false; mas_nuevo.visible = false; break; case "ultimos": mis_niveles.gotoAndStop(1); ultimos.gotoAndStop(2); VariablesGlobales.filtroTiempo = ULTIMOS; cargarListaNivelesJugador(VariablesGlobales.filtroTiempo, VariablesGlobales.filtroModo, VariablesGlobales.filtroCantidad); esta_semana.gotoAndStop(1); hoy.gotoAndStop(1); todos.gotoAndStop(1); break; case "esta_semana": mis_niveles.gotoAndStop(1); ultimos.gotoAndStop(1); esta_semana.gotoAndStop(2); VariablesGlobales.filtroTiempo = ESTA_SEMANA; cargarListaNivelesJugador(VariablesGlobales.filtroTiempo, VariablesGlobales.filtroModo, VariablesGlobales.filtroCantidad); hoy.gotoAndStop(1); todos.gotoAndStop(1); break; case "hoy": mis_niveles.gotoAndStop(1); ultimos.gotoAndStop(1); esta_semana.gotoAndStop(1); hoy.gotoAndStop(2); VariablesGlobales.filtroTiempo = HOY; cargarListaNivelesJugador(VariablesGlobales.filtroTiempo, VariablesGlobales.filtroModo, VariablesGlobales.filtroCantidad); todos.gotoAndStop(1); break; case "todos": mis_niveles.gotoAndStop(1); ultimos.gotoAndStop(1); esta_semana.gotoAndStop(1); hoy.gotoAndStop(1); todos.gotoAndStop(2); VariablesGlobales.filtroTiempo = TODOS; cargarListaNivelesJugador(VariablesGlobales.filtroTiempo, VariablesGlobales.filtroModo, VariablesGlobales.filtroCantidad); break; case "mas_popular": mas_popular.gotoAndStop(2); mas_nuevo.gotoAndStop(1); VariablesGlobales.filtroModo = MAS_POPULAR; cargarListaNivelesJugador(VariablesGlobales.filtroTiempo, VariablesGlobales.filtroModo, VariablesGlobales.filtroCantidad); break; case "mas_nuevo": mas_popular.gotoAndStop(1); mas_nuevo.gotoAndStop(2); VariablesGlobales.filtroModo = MAS_NUEVO; cargarListaNivelesJugador(VariablesGlobales.filtroTiempo, VariablesGlobales.filtroModo, VariablesGlobales.filtroCantidad); break; }; } override protected function Cargar_Ventana():void{ trace("cargar ventana"); mis_niveles.addEventListener(MouseEvent.CLICK, on_button_clicked); mis_niveles.gotoAndStop(1); ultimos.addEventListener(MouseEvent.CLICK, on_button_clicked); ultimos.gotoAndStop(1); esta_semana.addEventListener(MouseEvent.CLICK, on_button_clicked); esta_semana.gotoAndStop(1); hoy.addEventListener(MouseEvent.CLICK, on_button_clicked); hoy.gotoAndStop(1); todos.addEventListener(MouseEvent.CLICK, on_button_clicked); todos.gotoAndStop(2); mas_popular.addEventListener(MouseEvent.CLICK, on_button_clicked); mas_popular.gotoAndStop(1); mas_popular.buttonMode = true; mas_nuevo.addEventListener(MouseEvent.CLICK, on_button_clicked); mas_nuevo.gotoAndStop(2); mas_nuevo.buttonMode = true; play_random.addEventListener(MouseEvent.CLICK, on_button_clicked); atras.addEventListener(MouseEvent.CLICK, on_button_clicked); VariablesGlobales.musicaActual = "editor_01"; VariablesGlobales.EstadoMusica(); listaContenidoLocal = []; if (VariablesGlobales.tipo_actual == NIVELES){ titulo.text = "ONLINE LEVELS "; listaContenidoLocal = VariablesGlobales.nivelesOnlineJugador; } else { titulo.text = "ONLINE DUMMIES "; listaContenidoLocal = VariablesGlobales.dummyOnlineJugador; }; trace(("contenido local " + listaContenidoLocal.length)); total.text = "loading..."; super.Cargar_Ventana(); mis_niveles.gotoAndStop(1); ultimos.gotoAndStop(1); esta_semana.gotoAndStop(1); hoy.gotoAndStop(1); todos.gotoAndStop(2); VariablesGlobales.filtroTiempo = TODOS; cargarListaNivelesJugador(VariablesGlobales.filtroTiempo, VariablesGlobales.filtroModo, VariablesGlobales.filtroCantidad); } function LoadComplete(_arg1:PlayerLevel, _arg2:Object):void{ if (_arg2.Success){ VariablesGlobales.idOnlineActual = _arg1.LevelId; VariablesGlobales.nombreOnlineActual = _arg1.Name; VariablesGlobales.playerOnlineActual = _arg1.PlayerName; if (VariablesGlobales.tipo_actual == NIVELES){ trace("Level has been loaded, now you can begin playing it"); VariablesGlobales.nivelOnline = true; VariablesGlobales.nivelEditor = true; VariablesGlobales.nivelDummy = false; VariablesGlobales.dummyOnline = false; VariablesGlobales.nivelPruebaActual = _arg1.Data; main_class.abre_pantalla(new Juego()); main_class.cierra_pantalla(this); } else { trace("Dummy has been loaded, now you can begin playing it"); VariablesGlobales.nivelOnline = false; VariablesGlobales.nivelEditor = true; VariablesGlobales.nivelDummy = true; VariablesGlobales.dummyOnline = true; VariablesGlobales.nivelPruebaActual = VariablesGlobales.nivelPruebaDummy; VariablesGlobales.dummyPruebaActual = _arg1.Data; main_class.abre_pantalla(new Juego()); main_class.cierra_pantalla(this); }; }; } function ListLoaded(_arg1:Array, _arg2:int, _arg3:Object):void{ var _local4:Number; var _local5:MovieClip; var _local6:Boolean; var _local7:Number; var _local8:Number; var _local9:int; var _local10:ficha_mc; var _local11:int; var _local12:int; var _local13:Loader; var _local14:URLRequest; var _local15:load_more_button; if (_arg3.Success){ trace(("ListLoaded response = true " + _arg1.length)); _local4 = VariablesGlobales.filtroCantidad; if (_local4 > _arg1.length){ _local4 = _arg1.length; }; _local5 = new MovieClip(); _local6 = true; _local7 = 0; _local8 = 0; if (_arg1.length <= VariablesGlobales.filtroCantidad){ total.text = ((_arg1.length + " of ") + _arg1.length); } else { total.text = ((VariablesGlobales.filtroCantidad + " of ") + _arg1.length); }; _local9 = 0; while (_local9 < _local4) { _local10 = new ficha_mc(); _local10.info.visible = false; _local10.nombre.text = _arg1[_local9].Name; _local10.nombre.mouseEnabled = false; _local11 = _arg1[_local9].Votes; _local11 = (_local11 - 1); _local10.info1.text = (_local11 + " plays"); _local12 = _arg1[_local9].Score; _local12 = (_local12 - 5); _local10.info2.visible = false; _local10.info2.text = (_local12 + " likes"); trace(("Name: " + _arg1[_local9].Name)); trace(("PlayerName: " + _arg1[_local9].PlayerName)); trace(("Votes: " + _arg1[_local9].Votes)); trace(("Score: " + _arg1[_local9].Score)); trace(("Plays: " + _arg1[_local9].Plays)); trace(("Rating: " + _arg1[_local9].Rating)); _local10.info3.text = ("by " + _arg1[_local9].PlayerName); _local10.b_nombre.addEventListener(MouseEvent.CLICK, on_level_click); _local10.miniatura.addEventListener(MouseEvent.CLICK, on_level_click); _local10.id.visible = false; _local10.id.text = _arg1[_local9].LevelId; if (_local6){ _local10.x = 15; _local8 = (15 + (_local7 * 125)); _local7++; } else { _local10.x = ((15 + 15) + 340); }; _local6 = !(_local6); _local10.y = _local8; _local13 = new Loader(); _local14 = new URLRequest(((((("http://g" + Log.GUID) + ".api.playtomic.com/playerlevels/thumb.aspx?swfid=") + Log.SWFID) + "&levelid=") + PlayerLevel(_arg1[_local9]).LevelId)); _local13.load(_local14); _local13.x = _local10.miniatura.x; _local13.y = _local10.miniatura.y; _local13.mouseChildren = false; _local13.mouseEnabled = false; _local10.addChild(_local13); _local5.addChild(_local10); _local9++; }; if (VariablesGlobales.filtroTiempo != MIS_NIVELES){ _local15 = new load_more_button(); _local15.name = "cargar_mas"; _local8 = (15 + (_local7 * 125)); _local7++; _local15.x = (lista.width / 2); _local15.y = (_local8 + (_local15.height / 2)); _local15.buttonMode = true; _local5.addChild(_local15); _local15.addEventListener(MouseEvent.CLICK, on_button_clicked); }; lista.setSize(lista.width, lista.height); lista.source = _local5; }; } function uncompress(_arg1:String):ByteArray{ var _local2:Base64Decoder; var _local3:ByteArray; _local2 = new Base64Decoder(); _local2.decode(_arg1); _local3 = _local2.toByteArray(); _local3.uncompress(); return (_local3); } override protected function Descargar_Ventana():void{ atras.removeEventListener(MouseEvent.CLICK, on_button_clicked); super.Descargar_Ventana(); } private function on_level_click(_arg1:MouseEvent):void{ trace(("lanzar nivel " + _arg1.currentTarget.parent.id.text)); VariablesGlobales.CargarContenidoOnline(this, _arg1.currentTarget.parent.id.text); } private function dibujarCadenaImagen(_arg1, _arg2):void{ var _local3:Rectangle; var _local4:BitmapData; _local3 = new Rectangle(0, 0, 100, 100); _local4 = new BitmapData(_local3.width, _local3.height, true, 0); _local4.setPixels(_local3, uncompress(_arg1)); _arg2.addChild(new Bitmap(_local4)); } private function cargarListaNivelesJugador(_arg1:String, _arg2:String, _arg3:Number):void{ var _local4:*; var _local5:String; var _local6:String; var _local7:String; var _local8:Date; var _local9:Date; var _local10:Date; _local4 = (((1000 * 60) * 60) * 24); _local5 = ""; _local6 = ""; _local7 = ""; _local8 = new Date(); _local9 = new Date(); _local10 = new Date(); total.text = "loading..."; switch (_arg1){ case ULTIMOS: break; case ESTA_SEMANA: _local9.time = (_local9.time - (_local4 * 7)); break; case HOY: break; case TODOS: _local9.date = 1; _local9.month = 0; _local9.fullYear = 1970; break; }; _local6 = (((((_local9.getMonth() + 1) + "/") + _local9.getDate()) + "/") + _local9.getFullYear()); _local5 = _arg2; trace(((((_local5 + " ") + _local6) + " ") + _local7)); PlayerLevels.List(this.ListLoaded, {datemin:_local6, customfilters:{tipo:VariablesGlobales.tipo_actual}}); } function onFinishTweenFinal():void{ main_class.cierra_pantalla(this); } public function on_button_clicked(_arg1:MouseEvent){ if (VariablesGlobales.soundMan){ VariablesGlobales.soundMan.playSound("click", 1, 0, 0); }; mas_popular.visible = true; mas_nuevo.visible = true; switch (_arg1.target.name){ case "atras": VariablesGlobales.musicMan.stopAllSounds(); main_class.abre_pantalla(new Principal()); VariablesGlobales.PrincipalActual.x = -780; TweenLite.to(this, 1, {x:780, onComplete:onFinishTweenFinal}); TweenLite.to(VariablesGlobales.PrincipalActual, 1, {x:0}); break; case "mis_niveles": mis_niveles.gotoAndStop(2); VariablesGlobales.filtroTiempo = MIS_NIVELES; cargarListaContenidoLocal(); ultimos.gotoAndStop(1); esta_semana.gotoAndStop(1); hoy.gotoAndStop(1); todos.gotoAndStop(1); mas_popular.visible = false; mas_nuevo.visible = false; break; case "ultimos": mis_niveles.gotoAndStop(1); ultimos.gotoAndStop(2); VariablesGlobales.filtroTiempo = ULTIMOS; cargarListaNivelesJugador(VariablesGlobales.filtroTiempo, VariablesGlobales.filtroModo, VariablesGlobales.filtroCantidad); esta_semana.gotoAndStop(1); hoy.gotoAndStop(1); todos.gotoAndStop(1); break; case "esta_semana": mis_niveles.gotoAndStop(1); ultimos.gotoAndStop(1); esta_semana.gotoAndStop(2); VariablesGlobales.filtroTiempo = ESTA_SEMANA; cargarListaNivelesJugador(VariablesGlobales.filtroTiempo, VariablesGlobales.filtroModo, VariablesGlobales.filtroCantidad); hoy.gotoAndStop(1); todos.gotoAndStop(1); break; case "hoy": mis_niveles.gotoAndStop(1); ultimos.gotoAndStop(1); esta_semana.gotoAndStop(1); hoy.gotoAndStop(2); VariablesGlobales.filtroTiempo = HOY; cargarListaNivelesJugador(VariablesGlobales.filtroTiempo, VariablesGlobales.filtroModo, VariablesGlobales.filtroCantidad); todos.gotoAndStop(1); break; case "todos": mis_niveles.gotoAndStop(1); ultimos.gotoAndStop(1); esta_semana.gotoAndStop(1); hoy.gotoAndStop(1); todos.gotoAndStop(2); VariablesGlobales.filtroTiempo = TODOS; cargarListaNivelesJugador(VariablesGlobales.filtroTiempo, VariablesGlobales.filtroModo, VariablesGlobales.filtroCantidad); break; case "mas_popular": mas_popular.gotoAndStop(2); mas_nuevo.gotoAndStop(1); VariablesGlobales.filtroModo = MAS_POPULAR; cargarListaNivelesJugador(VariablesGlobales.filtroTiempo, VariablesGlobales.filtroModo, VariablesGlobales.filtroCantidad); break; case "mas_nuevo": mas_popular.gotoAndStop(1); mas_nuevo.gotoAndStop(2); VariablesGlobales.filtroModo = MAS_NUEVO; cargarListaNivelesJugador(VariablesGlobales.filtroTiempo, VariablesGlobales.filtroModo, VariablesGlobales.filtroCantidad); break; case "play_random": main_class.abre_pantalla(new LanzarContenidoOnline()); main_class.cierra_pantalla(this); break; case "cargar_mas": trace("cargar mas"); VariablesGlobales.filtroCantidad = (VariablesGlobales.filtroCantidad + cantidadSuma); cargarListaNivelesJugador(VariablesGlobales.filtroTiempo, VariablesGlobales.filtroModo, VariablesGlobales.filtroCantidad); break; default: trace((_arg1.target.name + " UNDEFINED")); break; }; } private function cargarListaContenidoLocal():void{ var _local1:int; var _local2:Object; var _local3:String; total.text = "loading..."; listaTemporal = []; if (listaContenidoLocal.length == 0){ trace("lista temporal vacia. lanzar listado."); _local2 = new Object(); _local2.Success = true; ListLoaded([], 0, _local2); return; }; _local1 = 0; while (_local1 < listaContenidoLocal.length) { _local3 = listaContenidoLocal[_local1]; trace(("descargar info local id " + _local3)); if (_local3 != null){ PlayerLevels.Load(_local3, crear_lista_contenido_local); } else { listaContenidoLocal.splice(_local1, 1); }; _local1++; }; } function crear_lista_contenido_local(_arg1:PlayerLevel, _arg2:Object):void{ if (_arg2.Success){ trace((("nivel local " + _arg1.LevelId) + " encontrado. Añadido a la lista temporal.")); listaTemporal.push(_arg1); if (listaTemporal.length == listaContenidoLocal.length){ trace("lista temporal cargada. lanzar listado."); ListLoaded(listaTemporal, listaTemporal.length, _arg2); }; }; } } }//package
Section 398
//ObjetoDinamico (ObjetoDinamico) package { import Box2D.Dynamics.*; import Box2D.Dynamics.Joints.*; import Box2D.Collision.Shapes.*; import Box2D.Common.Math.*; import flash.display.*; import flash.geom.*; public class ObjetoDinamico extends Actor { var borde_mascara; public var cambio_sentido_disponible:Boolean;// = true var desplazamiento:b2Vec2; var posicion_original:b2Vec2; var mascara; var contorno_gris; public function ObjetoDinamico(_arg1:DisplayObjectContainer, _arg2:Point, _arg3:String, _arg4:Number, _arg5:Number, _arg6:Number){ var _local7:b2Body; var _local8:b2BodyDef; var _local9:*; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:b2PrismaticJointDef; var _local15:*; cambio_sentido_disponible = true; _local8 = new b2BodyDef(); _local10 = 1000; _local11 = 1; _local12 = 0; _local13 = -3; _local14 = new b2PrismaticJointDef(); switch (_arg3){ case VariablesGlobales.catalogoObjetos.AUTONOMO_HORIZONTAL: _local15 = new colision_cuadrado_mc(); contorno_gris = new colision_cuadrado_gris_mc(); borde_mascara = new colision_cuadrado_interior_mc(); mascara = new autonomo_horizontal_mc(); _local9 = new b2PolygonDef(); b2PolygonDef(_local9).density = _local10; b2PolygonDef(_local9).SetAsBox(((_arg4 / 2) / VariablesGlobales.RATIO), ((_arg5 / 2) / VariablesGlobales.RATIO)); b2PolygonDef(_local9).friction = _local11; b2PolygonDef(_local9).restitution = _local12; _local8.position.Set((_arg2.x / VariablesGlobales.RATIO), (_arg2.y / VariablesGlobales.RATIO)); _local7 = VariablesGlobales.mundo.CreateBody(_local8); _local7.CreateShape(b2PolygonDef(_local9)); _local7.SetMassFromShapes(); desplazamiento = new b2Vec2(_local13, 0); _local14.Initialize(_local7, VariablesGlobales.mundo.m_groundBody, _local7.GetWorldCenter(), new b2Vec2(1, 0)); _local14.enableLimit = false; _local14.enableMotor = false; VariablesGlobales.mundo.CreateJoint(_local14); break; case VariablesGlobales.catalogoObjetos.AUTONOMO_VERTICAL: _local15 = new colision_cuadrado_mc(); contorno_gris = new colision_cuadrado_gris_mc(); borde_mascara = new colision_cuadrado_interior_mc(); mascara = new autonomo_vertical_mc(); _local9 = new b2PolygonDef(); b2PolygonDef(_local9).density = _local10; b2PolygonDef(_local9).SetAsBox(((_arg4 / 2) / VariablesGlobales.RATIO), ((_arg5 / 2) / VariablesGlobales.RATIO)); b2PolygonDef(_local9).friction = _local11; b2PolygonDef(_local9).restitution = _local12; _local8.position.Set((_arg2.x / VariablesGlobales.RATIO), (_arg2.y / VariablesGlobales.RATIO)); _local7 = VariablesGlobales.mundo.CreateBody(_local8); _local7.CreateShape(b2PolygonDef(_local9)); _local7.SetMassFromShapes(); desplazamiento = new b2Vec2(0, _local13); _local14.Initialize(_local7, VariablesGlobales.mundo.m_groundBody, _local7.GetWorldCenter(), new b2Vec2(0, 1)); _local14.enableLimit = false; _local14.enableMotor = false; VariablesGlobales.mundo.CreateJoint(_local14); break; default: _local15 = new Sprite(); trace("ERROR al crear actor Objetodinamico"); }; posicion_original = new b2Vec2((_arg2.x / VariablesGlobales.RATIO), (_arg2.y / VariablesGlobales.RATIO)); MovieClip(_local15).width = _arg4; MovieClip(_local15).height = _arg5; MovieClip(_local15).rotation = _arg6; MovieClip(contorno_gris).rotation = 0; MovieClip(contorno_gris).x = _arg2.x; MovieClip(contorno_gris).y = _arg2.y; MovieClip(contorno_gris).width = (_arg4 - VariablesGlobales.margenGris); MovieClip(contorno_gris).height = (_arg5 - VariablesGlobales.margenGris); MovieClip(contorno_gris).rotation = _arg6; MovieClip(borde_mascara).rotation = 0; MovieClip(borde_mascara).x = _arg2.x; MovieClip(borde_mascara).y = _arg2.y; MovieClip(borde_mascara).width = (_arg4 - VariablesGlobales.margenContornoMascara); MovieClip(borde_mascara).height = (_arg5 - VariablesGlobales.margenContornoMascara); MovieClip(borde_mascara).rotation = _arg6; MovieClip(mascara).rotation = 0; MovieClip(mascara).x = _arg2.x; MovieClip(mascara).y = _arg2.y; MovieClip(mascara).myMask.width = (_arg4 - VariablesGlobales.margenMascara); MovieClip(mascara).myMask.height = (_arg5 - VariablesGlobales.margenMascara); MovieClip(mascara).rotation = _arg6; _arg1.addChild(_local15); _arg1.addChild(contorno_gris); _arg1.addChild(borde_mascara); _arg1.addChild(mascara); _local15.mouseEnabled = false; _local15.mouseChildren = false; super(_local7, _local15); } override public function destruir():void{ contorno_gris.parent.removeChild(contorno_gris); borde_mascara.parent.removeChild(borde_mascara); mascara.parent.removeChild(mascara); super.destruir(); } private function ActualizarPosicion():void{ var _local1:Number; var _local2:Number; var _local3:Number; cuerpo.SetLinearVelocity(new b2Vec2(desplazamiento.x, desplazamiento.y)); cuerpo.SetAngularVelocity(0); _local3 = VariablesGlobales.PASO_TIEMPO_LENTO; if (desplazamiento.x == 0){ _local1 = posicion_original.x; } else { _local1 = (cuerpo.GetPosition().x + ((desplazamiento.x / _local3) / VariablesGlobales.RATIO)); }; if (desplazamiento.y == 0){ _local2 = posicion_original.y; } else { _local2 = (cuerpo.GetPosition().y + ((desplazamiento.y / _local3) / VariablesGlobales.RATIO)); }; cuerpo.SetXForm(new b2Vec2(_local1, _local2), 0); disfraz.rotation = 0; } public function colisionObjetoEstatico():void{ if (cambio_sentido_disponible){ desplazamiento.x = (desplazamiento.x * -1); desplazamiento.y = (desplazamiento.y * -1); cambio_sentido_disponible = false; }; } override protected function actualizacionEspecificaHijo():void{ ActualizarPosicion(); MovieClip(contorno_gris).rotation = 0; MovieClip(contorno_gris).x = _disfraz.x; MovieClip(contorno_gris).y = _disfraz.y; MovieClip(contorno_gris).rotation = _disfraz.rotation; MovieClip(borde_mascara).rotation = 0; MovieClip(borde_mascara).x = _disfraz.x; MovieClip(borde_mascara).y = _disfraz.y; MovieClip(borde_mascara).rotation = _disfraz.rotation; MovieClip(mascara).rotation = 0; MovieClip(mascara).x = _disfraz.x; MovieClip(mascara).y = _disfraz.y; MovieClip(mascara).rotation = _disfraz.rotation; super.actualizacionEspecificaHijo(); } } }//package
Section 399
//ObjetoEstatico (ObjetoEstatico) package { import Box2D.Dynamics.*; import Box2D.Collision.Shapes.*; import flash.display.*; import flash.geom.*; public class ObjetoEstatico extends Actor { var mascara; var contorno_gris; var borde_mascara; public function ObjetoEstatico(_arg1:DisplayObjectContainer, _arg2:Point, _arg3:String, _arg4:Number, _arg5:Number, _arg6:Number){ var _local7:b2Body; var _local8:b2BodyDef; var _local9:*; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:*; _local8 = new b2BodyDef(); _local10 = 0; _local11 = 0.4; _local12 = 0.3; switch (_arg3){ case VariablesGlobales.catalogoObjetos.ESTATICO_CUADRADO: _local13 = new colision_cuadrado_mc(); contorno_gris = new colision_cuadrado_gris_mc(); borde_mascara = new colision_cuadrado_interior_mc(); mascara = new estatico_cuadrado_mc(); _local9 = new b2PolygonDef(); b2PolygonDef(_local9).density = _local10; b2PolygonDef(_local9).SetAsBox(((_arg4 / 2) / VariablesGlobales.RATIO), ((_arg5 / 2) / VariablesGlobales.RATIO)); b2PolygonDef(_local9).friction = _local11; b2PolygonDef(_local9).restitution = _local12; _local8.position.Set((_arg2.x / VariablesGlobales.RATIO), (_arg2.y / VariablesGlobales.RATIO)); _local8.angle = (_arg6 * (Math.PI / 180)); _local7 = VariablesGlobales.mundo.CreateBody(_local8); _local7.CreateShape(b2PolygonDef(_local9)); _local7.SetMassFromShapes(); break; case VariablesGlobales.catalogoObjetos.ESTATICO_CIRCULO: _local13 = new colision_circulo_mc(); contorno_gris = new colision_circulo_gris_mc(); borde_mascara = new colision_circulo_interior_mc(); mascara = new estatico_circulo_mc(); _local9 = new b2CircleDef(); b2CircleDef(_local9).density = _local10; b2CircleDef(_local9).radius = ((_arg4 / 2) / VariablesGlobales.RATIO); b2CircleDef(_local9).friction = _local11; b2CircleDef(_local9).restitution = _local12; _local8.position.Set((_arg2.x / VariablesGlobales.RATIO), (_arg2.y / VariablesGlobales.RATIO)); _local8.angle = (_arg6 * (Math.PI / 180)); _local7 = VariablesGlobales.mundo.CreateBody(_local8); _local7.CreateShape(b2CircleDef(_local9)); _local7.SetMassFromShapes(); break; default: _local13 = new Sprite(); trace("ERROR al crear actor ObjetoEstatico"); }; MovieClip(_local13).width = _arg4; MovieClip(_local13).height = _arg5; MovieClip(_local13).rotation = _arg6; MovieClip(contorno_gris).rotation = 0; MovieClip(contorno_gris).x = _arg2.x; MovieClip(contorno_gris).y = _arg2.y; MovieClip(contorno_gris).width = (_arg4 - VariablesGlobales.margenGris); MovieClip(contorno_gris).height = (_arg5 - VariablesGlobales.margenGris); MovieClip(contorno_gris).rotation = _arg6; MovieClip(borde_mascara).rotation = 0; MovieClip(borde_mascara).x = _arg2.x; MovieClip(borde_mascara).y = _arg2.y; MovieClip(borde_mascara).width = (_arg4 - VariablesGlobales.margenContornoMascara); MovieClip(borde_mascara).height = (_arg5 - VariablesGlobales.margenContornoMascara); MovieClip(borde_mascara).rotation = _arg6; MovieClip(mascara).rotation = 0; MovieClip(mascara).x = _arg2.x; MovieClip(mascara).y = _arg2.y; MovieClip(mascara).myMask.width = (_arg4 - VariablesGlobales.margenMascara); MovieClip(mascara).myMask.height = (_arg5 - VariablesGlobales.margenMascara); MovieClip(mascara).rotation = _arg6; _arg1.addChild(_local13); _arg1.addChild(contorno_gris); _arg1.addChild(borde_mascara); _arg1.addChild(mascara); _local13.mouseEnabled = false; _local13.mouseChildren = false; super(_local7, _local13); } override public function destruir():void{ mascara.parent.removeChild(mascara); contorno_gris.parent.removeChild(contorno_gris); borde_mascara.parent.removeChild(borde_mascara); super.destruir(); } override protected function actualizacionEspecificaHijo():void{ super.actualizacionEspecificaHijo(); } } }//package
Section 400
//ObjetoImpulsor (ObjetoImpulsor) package { import Box2D.Dynamics.*; import Box2D.Collision.Shapes.*; import Box2D.Common.Math.*; import flash.display.*; import flash.geom.*; public class ObjetoImpulsor extends Actor { public var direccion_impulso:b2Vec2; private var tipo_impulsor:String; public function ObjetoImpulsor(_arg1:DisplayObjectContainer, _arg2:Point, _arg3:String, _arg4:Number, _arg5:Number, _arg6:Number){ var _local7:b2Body; var _local8:b2BodyDef; var _local9:*; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:*; var _local14:Number; var _local15:Number; _local8 = new b2BodyDef(); _local10 = 0; _local11 = 0.4; _local12 = 0.3; _local14 = 4; _local15 = 5; tipo_impulsor = _arg3; _local13 = new circulo_impulsor_mc(); _local9 = new b2CircleDef(); b2CircleDef(_local9).density = _local10; b2CircleDef(_local9).radius = (((_arg4 / 2) / _local15) / VariablesGlobales.RATIO); b2CircleDef(_local9).isSensor = true; _local8.position.Set((_arg2.x / VariablesGlobales.RATIO), (_arg2.y / VariablesGlobales.RATIO)); _local8.angle = (_arg6 * (Math.PI / 180)); _local7 = VariablesGlobales.mundo.CreateBody(_local8); _local7.CreateShape(b2CircleDef(_local9)); _local7.SetMassFromShapes(); direccion_impulso = new b2Vec2((Math.cos((_arg6 * (Math.PI / 180))) * _local14), (Math.sin((_arg6 * (Math.PI / 180))) * _local14)); MovieClip(_local13).width = _arg4; MovieClip(_local13).height = _arg5; MovieClip(_local13).rotation = _arg6; _arg1.addChild(_local13); _local13.mouseEnabled = false; _local13.mouseChildren = false; super(_local7, _local13); _disfraz.parent.setChildIndex(_disfraz, 1); } public function ActivarImpulsor(){ } override protected function actualizacionEspecificaHijo():void{ super.actualizacionEspecificaHijo(); } } }//package
Section 401
//ObjetoMagnetico (ObjetoMagnetico) package { import Box2D.Dynamics.*; import Box2D.Collision.Shapes.*; import Box2D.Common.Math.*; import flash.display.*; import flash.geom.*; public class ObjetoMagnetico extends Actor { public var intensidad_magnetica:Number;// = 0 public var direccion_impulso:b2Vec2; private var tipo_impulsor:String; public function ObjetoMagnetico(_arg1:DisplayObjectContainer, _arg2:Point, _arg3:String, _arg4:Number, _arg5:Number, _arg6:Number){ var _local7:b2Body; var _local8:b2BodyDef; var _local9:*; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:*; var _local14:Number; var _local15:Number; var _local16:Number; intensidad_magnetica = 0; _local8 = new b2BodyDef(); _local10 = 0; _local11 = 0.4; _local12 = 0.3; _local14 = 10; _local15 = 5; _local16 = 2000; tipo_impulsor = _arg3; switch (_arg3){ case VariablesGlobales.catalogoObjetos.CIRCULO_POSITIVO: _local13 = new circulo_positivo_mc(); _local9 = new b2CircleDef(); b2CircleDef(_local9).density = _local10; b2CircleDef(_local9).radius = (((_local16 / 2) / _local15) / VariablesGlobales.RATIO); b2CircleDef(_local9).isSensor = true; _local8.position.Set((_arg2.x / VariablesGlobales.RATIO), (_arg2.y / VariablesGlobales.RATIO)); _local8.angle = (_arg6 * (Math.PI / 180)); _local7 = VariablesGlobales.mundo.CreateBody(_local8); _local7.CreateShape(b2CircleDef(_local9)); _local7.SetMassFromShapes(); direccion_impulso = new b2Vec2((Math.cos((_arg6 * (Math.PI / 180))) * _local14), (Math.sin((_arg6 * (Math.PI / 180))) * _local14)); intensidad_magnetica = _local14; break; case VariablesGlobales.catalogoObjetos.CIRCULO_NEGATIVO: _local13 = new circulo_negativo_mc(); _local9 = new b2CircleDef(); b2CircleDef(_local9).density = _local10; b2CircleDef(_local9).radius = (((_local16 / 2) / _local15) / VariablesGlobales.RATIO); b2CircleDef(_local9).isSensor = true; _local8.position.Set((_arg2.x / VariablesGlobales.RATIO), (_arg2.y / VariablesGlobales.RATIO)); _local8.angle = (_arg6 * (Math.PI / 180)); _local7 = VariablesGlobales.mundo.CreateBody(_local8); _local7.CreateShape(b2CircleDef(_local9)); _local7.SetMassFromShapes(); direccion_impulso = new b2Vec2((Math.cos((_arg6 * (Math.PI / 180))) * _local14), (Math.sin((_arg6 * (Math.PI / 180))) * _local14)); intensidad_magnetica = -(_local14); break; default: _local13 = new Sprite(); trace("ERROR al crear actor ObjetoImpulsor"); }; direccion_impulso = new b2Vec2(0, 0); MovieClip(_local13).width = _arg4; MovieClip(_local13).height = _arg5; MovieClip(_local13).rotation = _arg6; _arg1.addChild(_local13); _local13.mouseEnabled = false; _local13.mouseChildren = false; super(_local7, _local13); _disfraz.parent.setChildIndex(_disfraz, 1); } public function ActivarImpulsor(){ } public function CalcularFuerza(_arg1:b2Vec2){ switch (tipo_impulsor){ case VariablesGlobales.catalogoObjetos.CIRCULO_POSITIVO: dist_x = (_cuerpo.GetPosition().x - _arg1.x); dist_y = (_cuerpo.GetPosition().y - _arg1.y); break; case VariablesGlobales.catalogoObjetos.CIRCULO_NEGATIVO: dist_x = (_arg1.x - _cuerpo.GetPosition().x); dist_y = (_arg1.y - _cuerpo.GetPosition().y); break; }; direccion_impulso = new b2Vec2((dist_x / (20 * 7)), (dist_y / (5 * 7))); } override protected function actualizacionEspecificaHijo():void{ super.actualizacionEspecificaHijo(); } } }//package
Section 402
//ObjetoMovible (ObjetoMovible) package { import Box2D.Dynamics.*; import Box2D.Collision.Shapes.*; import flash.display.*; import flash.geom.*; public class ObjetoMovible extends Actor { private var activo:Boolean;// = true var mascara; var contorno_gris; var borde_mascara; public function ObjetoMovible(_arg1:DisplayObjectContainer, _arg2:Point, _arg3:String, _arg4:Number, _arg5:Number, _arg6:Number){ var _local7:b2Body; var _local8:b2BodyDef; var _local9:*; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:*; activo = true; _local8 = new b2BodyDef(); _local10 = 0.1; _local11 = 0.4; _local12 = 0.3; VariablesGlobales.hayObjetosMovibles = true; VariablesGlobales.objetosMoviblesFinal++; switch (_arg3){ case VariablesGlobales.catalogoObjetos.DINAMICO_CUADRADO: _local13 = new colision_cuadrado_mc(); contorno_gris = new colision_cuadrado_gris_mc(); borde_mascara = new colision_cuadrado_interior_mc(); mascara = new dinamico_cuadrado_mc(); _local9 = new b2PolygonDef(); b2PolygonDef(_local9).density = _local10; b2PolygonDef(_local9).SetAsBox(((_arg4 / 2) / VariablesGlobales.RATIO), ((_arg5 / 2) / VariablesGlobales.RATIO)); b2PolygonDef(_local9).friction = _local11; b2PolygonDef(_local9).restitution = _local12; _local8.position.Set((_arg2.x / VariablesGlobales.RATIO), (_arg2.y / VariablesGlobales.RATIO)); _local8.angle = (_arg6 * (Math.PI / 180)); _local7 = VariablesGlobales.mundo.CreateBody(_local8); _local7.CreateShape(b2PolygonDef(_local9)); _local7.SetMassFromShapes(); break; case VariablesGlobales.catalogoObjetos.DINAMICO_CIRCULO: _local13 = new colision_circulo_mc(); contorno_gris = new colision_circulo_gris_mc(); borde_mascara = new colision_circulo_interior_mc(); mascara = new dinamico_circulo_mc(); _local9 = new b2CircleDef(); b2CircleDef(_local9).density = _local10; b2CircleDef(_local9).radius = ((_arg4 / 2) / VariablesGlobales.RATIO); b2CircleDef(_local9).friction = _local11; b2CircleDef(_local9).restitution = _local12; _local8.position.Set((_arg2.x / VariablesGlobales.RATIO), (_arg2.y / VariablesGlobales.RATIO)); _local8.angle = (_arg6 * (Math.PI / 180)); _local7 = VariablesGlobales.mundo.CreateBody(_local8); _local7.CreateShape(b2CircleDef(_local9)); _local7.SetMassFromShapes(); break; default: _local13 = new Sprite(); trace("ERROR al crear actor ObjetoMovible"); }; MovieClip(_local13).width = _arg4; MovieClip(_local13).height = _arg5; MovieClip(_local13).rotation = _arg6; MovieClip(contorno_gris).rotation = 0; MovieClip(contorno_gris).x = _arg2.x; MovieClip(contorno_gris).y = _arg2.y; MovieClip(contorno_gris).width = (_arg4 - VariablesGlobales.margenGris); MovieClip(contorno_gris).height = (_arg5 - VariablesGlobales.margenGris); MovieClip(contorno_gris).rotation = _arg6; MovieClip(borde_mascara).rotation = 0; MovieClip(borde_mascara).x = _arg2.x; MovieClip(borde_mascara).y = _arg2.y; MovieClip(borde_mascara).width = (_arg4 - VariablesGlobales.margenContornoMascara); MovieClip(borde_mascara).height = (_arg5 - VariablesGlobales.margenContornoMascara); MovieClip(borde_mascara).rotation = _arg6; MovieClip(mascara).rotation = 0; MovieClip(mascara).x = _arg2.x; MovieClip(mascara).y = _arg2.y; MovieClip(mascara).myMask.width = (_arg4 - VariablesGlobales.margenMascara); MovieClip(mascara).myMask.height = (_arg5 - VariablesGlobales.margenMascara); MovieClip(mascara).rotation = _arg6; _arg1.addChild(_local13); _arg1.addChild(contorno_gris); _arg1.addChild(borde_mascara); _arg1.addChild(mascara); _local13.mouseEnabled = false; _local13.mouseChildren = false; super(_local7, _local13); } override protected function gestionarFueraDeLimites():void{ if (activo){ activo = false; VariablesGlobales.objetosMoviblesFinal--; trace(("objetos restantes " + VariablesGlobales.objetosMoviblesFinal)); }; super.gestionarFueraDeLimites(); } override public function destruir():void{ mascara.parent.removeChild(mascara); contorno_gris.parent.removeChild(contorno_gris); borde_mascara.parent.removeChild(borde_mascara); super.destruir(); } override protected function actualizacionEspecificaHijo():void{ MovieClip(contorno_gris).rotation = 0; MovieClip(contorno_gris).x = _disfraz.x; MovieClip(contorno_gris).y = _disfraz.y; MovieClip(contorno_gris).rotation = _disfraz.rotation; MovieClip(borde_mascara).rotation = 0; MovieClip(borde_mascara).x = _disfraz.x; MovieClip(borde_mascara).y = _disfraz.y; MovieClip(borde_mascara).rotation = _disfraz.rotation; MovieClip(mascara).rotation = 0; MovieClip(mascara).x = _disfraz.x; MovieClip(mascara).y = _disfraz.y; MovieClip(mascara).rotation = _disfraz.rotation; super.actualizacionEspecificaHijo(); } } }//package
Section 403
//pared_horizontal_mc (pared_horizontal_mc) package { import flash.display.*; public dynamic class pared_horizontal_mc extends MovieClip { } }//package
Section 404
//pared_vertical_mc (pared_vertical_mc) package { import flash.display.*; public dynamic class pared_vertical_mc extends MovieClip { } }//package
Section 405
//pierna_inf_d (pierna_inf_d) package { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class pierna_inf_d extends MovieClip { public function pierna_inf_d(){ addFrameScript(0, frame1); } function frame1(){ gotoAndStop(1); } } }//package
Section 406
//pierna_inf_i (pierna_inf_i) package { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class pierna_inf_i extends MovieClip { public function pierna_inf_i(){ addFrameScript(0, frame1); } function frame1(){ gotoAndStop(1); } } }//package
Section 407
//pierna_sup_d (pierna_sup_d) package { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class pierna_sup_d extends MovieClip { public function pierna_sup_d(){ addFrameScript(0, frame1); } function frame1(){ gotoAndStop(1); } } }//package
Section 408
//pierna_sup_i (pierna_sup_i) package { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class pierna_sup_i extends MovieClip { public function pierna_sup_i(){ addFrameScript(0, frame1); } function frame1(){ gotoAndStop(1); } } }//package
Section 409
//plantilla (plantilla) package { import flash.display.*; public dynamic class plantilla extends MovieClip { public var lowerArmR:brazo_inf_d; public var lowerArmL:brazo_inf_i; public var upperArmL:brazo_sup_i; public var upperArmR:brazo_sup_d; public var torso2:torso_central; public var lowerLegL:pierna_inf_i; public var torso3:torso_inferior; public var lowerLegR:pierna_inf_d; public var torso1:torso_superior; public var upperLegR:pierna_sup_d; public var upperLegL:pierna_sup_i; public var head:cabeza; } }//package
Section 410
//preload (preload) package { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class preload extends MovieClip { public function preload(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 411
//preloader_sc (preloader_sc) package { import flash.display.*; import flash.text.*; public dynamic class preloader_sc extends MovieClip { public var boton_tanoku:SimpleButton; public var porc:TextField; public var loadBar:MovieClip; public var jugar:SimpleButton; public var boton_sponsor:SimpleButton; } }//package
Section 412
//Principal (Principal) package { import flash.events.*; import flash.utils.*; import com.greensock.*; import flash.display.*; import flash.text.*; public class Principal extends Ventana { public var musica:MovieClip; private var timerOnline:Timer; public var sponsor:SimpleButton; private var numClicks:int;// = 0 public var tanoku:SimpleButton; public var galeria:SimpleButton; public var editor_dummy:SimpleButton; public var editor:SimpleButton; public var dummies_online:SimpleButton; public var panel_v:MovieClip; public var info_niveles:TextField; public var creditos:SimpleButton; public var mas_juegos:SimpleButton; public var jugar:SimpleButton; public var info_temp:TextField; public var info_dummies:TextField; public var original:SimpleButton; public var cabeza_d:MovieClip; public var niveles_online:SimpleButton; public function Principal(){ numClicks = 0; super(); VariablesGlobales.PrincipalActual = this; } private function onFinishTweenIrOnline():void{ main_class.cierra_pantalla(this); } public function forzarCerrar():void{ main_class.cierra_pantalla(this); } override protected function Cargar_Ventana():void{ jugar.addEventListener(MouseEvent.CLICK, on_button_clicked); editor.addEventListener(MouseEvent.CLICK, on_button_clicked); niveles_online.addEventListener(MouseEvent.CLICK, on_button_clicked); dummies_online.addEventListener(MouseEvent.CLICK, on_button_clicked); editor_dummy.addEventListener(MouseEvent.CLICK, on_button_clicked); creditos.addEventListener(MouseEvent.CLICK, on_button_clicked); galeria.addEventListener(MouseEvent.CLICK, on_button_clicked); mas_juegos.addEventListener(MouseEvent.CLICK, on_button_clicked); sponsor.addEventListener(MouseEvent.CLICK, on_button_clicked); tanoku.addEventListener(MouseEvent.CLICK, on_button_clicked); original.addEventListener(MouseEvent.CLICK, on_button_clicked); musica.addEventListener(MouseEvent.CLICK, on_button_clicked); VariablesGlobales.musicaActual = "principal_01"; musica.gotoAndStop(VariablesGlobales.EstadoMusica()); cabeza_d.addEventListener(MouseEvent.CLICK, on_button_clicked); panel_v.borrar_partida.addEventListener(MouseEvent.CLICK, on_button_clicked); panel_v.desbloquear_todo.addEventListener(MouseEvent.CLICK, on_button_clicked); panel_v.visible = false; timerOnline = new Timer(5000, 1); timerOnline.start(); timerOnline.addEventListener(TimerEvent.TIMER_COMPLETE, on_timerOnline); addEventListener(Event.ENTER_FRAME, on_enter_frame); super.Cargar_Ventana(); } private function on_timerOnline(_arg1:TimerEvent):void{ VariablesGlobales.cargarListasOnline(); timerOnline.start(); } override protected function Descargar_Ventana():void{ VariablesGlobales.PrincipalActual = null; timerOnline.removeEventListener(TimerEvent.TIMER_COMPLETE, on_timerOnline); removeEventListener(Event.ENTER_FRAME, on_enter_frame); super.Descargar_Ventana(); } public function on_button_clicked(_arg1:MouseEvent){ if (VariablesGlobales.soundMan){ VariablesGlobales.soundMan.playSound("click", 1, 0, 0); }; switch (_arg1.target.name){ case "jugar": if (VariablesGlobales.NivelesActual == null){ TweenLite.to(this, 1, {y:520, onComplete:onFinishTweenIrOnline}); VariablesGlobales.nivelEditor = false; main_class.abre_pantalla(new Niveles()); }; break; case "editor": if (VariablesGlobales.EditorNivelesActual == null){ VariablesGlobales.musicMan.stopAllSounds(); VariablesGlobales.nivelEditor = true; VariablesGlobales.nivelPruebaActual = ""; main_class.abre_pantalla(new Editor()); Editor(VariablesGlobales.EditorNivelesActual).visible = false; main_class.abre_pantalla(new Editor_Animacion()); }; break; case "editor_dummy": if (VariablesGlobales.EditorDummyActual == null){ VariablesGlobales.musicMan.stopAllSounds(); VariablesGlobales.dummyPruebaActual = ""; main_class.abre_pantalla(new EditorDummy()); EditorDummy(VariablesGlobales.EditorDummyActual).visible = false; main_class.abre_pantalla(new Editor_Animacion()); }; break; case "niveles_online": TweenLite.to(this, 1, {x:-780, onComplete:onFinishTweenIrOnline}); VariablesGlobales.musicMan.stopAllSounds(); main_class.abre_pantalla(new Niveles_Jugadores()); break; case "dummies_online": TweenLite.to(this, 1, {x:-780, onComplete:onFinishTweenIrOnline}); VariablesGlobales.musicMan.stopAllSounds(); main_class.abre_pantalla(new Niveles_Jugadores(Niveles_Jugadores.DUMMIES)); break; case "creditos": TweenLite.to(this, 1, {x:780}); main_class.abre_pantalla(new Creditos()); break; case "galeria": if (VariablesGlobales.GaleriaActual == null){ VariablesGlobales.GaleriaDummyMostrarFondo = true; main_class.abre_pantalla(new Galeria()); Galeria(VariablesGlobales.GaleriaActual).visible = false; main_class.abre_pantalla(new Galeria_Animacion()); }; break; case "sponsor": VariablesGlobales.AbreWeb(VariablesGlobales.WEB_SPONSOR); break; case "tanoku": VariablesGlobales.AbreWeb(VariablesGlobales.WEB_TANOKU); break; case "original": VariablesGlobales.AbreWeb(VariablesGlobales.WEB_DUMMY_ORIGINAL); break; case "puntuaciones": break; case "musica": musica.gotoAndStop(VariablesGlobales.EstadoMusica(true)); break; case "cabeza_d": numClicks++; if (numClicks >= 5){ panel_v.visible = true; }; break; case "borrar_partida": trace("borrar partida"); VariablesGlobales.savegameMan.borrarPartida(); VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.EMPEZAR_JUEGO); break; case "desbloquear_todo": trace("desbloquear skins"); VariablesGlobales.logrosMan.DesbloquearTodos(); trace("desbloquear niveles"); VariablesGlobales.indiceNivelMaximo = VariablesGlobales.indiceNivelMaximoReal; break; case "desbloquear_todo": break; case "mas_juegos": VariablesGlobales.AbreWeb(VariablesGlobales.WEB_MORE_GAMES); break; default: trace((_arg1.target.name + " UNDEFINED")); break; }; } private function on_enter_frame(_arg1:Event):void{ info_temp.visible = false; info_temp.text = ((((("p= " + VariablesGlobales.numeroPartidas) + " d= ") + VariablesGlobales.numeroDisparos) + " i= ") + VariablesGlobales.itemsRecogidos); info_niveles.text = ((VariablesGlobales.responseListNivelLoaded + " ") + VariablesGlobales.listaIdNiveles.length); info_dummies.text = ((VariablesGlobales.responseListDummyLoaded + " ") + VariablesGlobales.listaIdDummies.length); } } }//package
Section 413
//principal_01 (principal_01) package { import flash.media.*; public dynamic class principal_01 extends Sound { } }//package
Section 414
//Ranking (Ranking) package { import Playtomic.*; import flash.events.*; import flash.text.*; import flash.display.*; public class Ranking extends Ventana { public var t_nombre10:TextField; public var atras:SimpleButton; public var t_puntuacion10:TextField; public var t_nombre1:TextField; public var t_nombre2:TextField; public var t_nombre5:TextField; public var t_nombre6:TextField; public var t_nombre7:TextField; public var t_nombre9:TextField; public var t_puntuacion1:TextField; public var t_puntuacion3:TextField; public var t_puntuacion4:TextField; public var t_nombre3:TextField; public var t_puntuacion6:TextField; public var t_puntuacion7:TextField; public var t_puntuacion8:TextField; public var t_puntuacion9:TextField; public var t_nombre8:TextField; public var t_puntuacion5:TextField; public var t_puntuacion2:TextField; public var t_nombre4:TextField; public function Ranking(){ t_nombre1.text = ""; t_nombre2.text = ""; t_nombre3.text = ""; t_nombre4.text = ""; t_nombre5.text = ""; t_nombre6.text = ""; t_nombre7.text = ""; t_nombre8.text = ""; t_nombre9.text = ""; t_nombre10.text = ""; t_puntuacion1.text = ""; t_puntuacion2.text = ""; t_puntuacion3.text = ""; t_puntuacion4.text = ""; t_puntuacion5.text = ""; t_puntuacion6.text = ""; t_puntuacion7.text = ""; t_puntuacion8.text = ""; t_puntuacion9.text = ""; t_puntuacion10.text = ""; Leaderboards.List("Score", this.DisplayScores, {global:true, highest:true, page:1, perpage:10}); } private function on_button_clicked(_arg1:Event):void{ switch (_arg1.currentTarget.name){ case "atras": main_class.cierra_pantalla(this); break; }; } override protected function Cargar_Ventana():void{ atras.addEventListener(MouseEvent.CLICK, on_button_clicked); super.Cargar_Ventana(); } function DisplayScores(_arg1:Array, _arg2:int, _arg3:Object):void{ var _local4:*; var _local5:PlayerScore; if (_arg3.Success){ _local4 = 0; while (_local4 < _arg1.length) { _local5 = _arg1[_local4]; switch ((_local4 + 1)){ case 1: t_nombre1.text = ("" + _local5.Name); t_puntuacion1.text = ("" + _local5.Points); break; case 2: t_nombre2.text = ("" + _local5.Name); t_puntuacion2.text = ("" + _local5.Points); break; case 3: t_nombre3.text = ("" + _local5.Name); t_puntuacion3.text = ("" + _local5.Points); break; case 4: t_nombre4.text = ("" + _local5.Name); t_puntuacion4.text = ("" + _local5.Points); break; case 5: t_nombre5.text = ("" + _local5.Name); t_puntuacion5.text = ("" + _local5.Points); break; case 6: t_nombre6.text = ("" + _local5.Name); t_puntuacion6.text = ("" + _local5.Points); break; case 7: t_nombre7.text = ("" + _local5.Name); t_puntuacion7.text = ("" + _local5.Points); break; case 8: t_nombre8.text = ("" + _local5.Name); t_puntuacion8.text = ("" + _local5.Points); break; case 9: t_nombre9.text = ("" + _local5.Name); t_puntuacion9.text = ("" + _local5.Points); break; case 10: t_nombre10.text = ("" + _local5.Name); t_puntuacion10.text = ("" + _local5.Points); break; }; _local4++; }; }; } override protected function Descargar_Ventana():void{ super.Descargar_Ventana(); } } }//package
Section 415
//rectangulo_horizontal_dinamico_mc (rectangulo_horizontal_dinamico_mc) package { import flash.display.*; public dynamic class rectangulo_horizontal_dinamico_mc extends MovieClip { } }//package
Section 416
//rectangulo_horizontal_estatico_1_mc (rectangulo_horizontal_estatico_1_mc) package { import flash.display.*; public dynamic class rectangulo_horizontal_estatico_1_mc extends MovieClip { } }//package
Section 417
//rectangulo_horizontal_estatico_2_mc (rectangulo_horizontal_estatico_2_mc) package { import flash.display.*; public dynamic class rectangulo_horizontal_estatico_2_mc extends MovieClip { } }//package
Section 418
//rectangulo_horizontal_estatico_3_mc (rectangulo_horizontal_estatico_3_mc) package { import flash.display.*; public dynamic class rectangulo_horizontal_estatico_3_mc extends MovieClip { } }//package
Section 419
//rectangulo_horizontal_noestatico_1_mc (rectangulo_horizontal_noestatico_1_mc) package { import flash.display.*; public dynamic class rectangulo_horizontal_noestatico_1_mc extends MovieClip { } }//package
Section 420
//rectangulo_horizontal_noestatico_2_mc (rectangulo_horizontal_noestatico_2_mc) package { import flash.display.*; public dynamic class rectangulo_horizontal_noestatico_2_mc extends MovieClip { } }//package
Section 421
//rectangulo_horizontal_noestatico_3_mc (rectangulo_horizontal_noestatico_3_mc) package { import flash.display.*; public dynamic class rectangulo_horizontal_noestatico_3_mc extends MovieClip { } }//package
Section 422
//rectangulo_horizontal_noestatico_4_mc (rectangulo_horizontal_noestatico_4_mc) package { import flash.display.*; public dynamic class rectangulo_horizontal_noestatico_4_mc extends MovieClip { } }//package
Section 423
//rectangulo_vertical_dinamico_mc (rectangulo_vertical_dinamico_mc) package { import flash.display.*; public dynamic class rectangulo_vertical_dinamico_mc extends MovieClip { } }//package
Section 424
//rectangulo_vertical_estatico_1_mc (rectangulo_vertical_estatico_1_mc) package { import flash.display.*; public dynamic class rectangulo_vertical_estatico_1_mc extends MovieClip { } }//package
Section 425
//rectangulo_vertical_estatico_2_mc (rectangulo_vertical_estatico_2_mc) package { import flash.display.*; public dynamic class rectangulo_vertical_estatico_2_mc extends MovieClip { } }//package
Section 426
//rectangulo_vertical_estatico_3_mc (rectangulo_vertical_estatico_3_mc) package { import flash.display.*; public dynamic class rectangulo_vertical_estatico_3_mc extends MovieClip { } }//package
Section 427
//rectangulo_vertical_noestatico_1_mc (rectangulo_vertical_noestatico_1_mc) package { import flash.display.*; public dynamic class rectangulo_vertical_noestatico_1_mc extends MovieClip { } }//package
Section 428
//rectangulo_vertical_noestatico_2_mc (rectangulo_vertical_noestatico_2_mc) package { import flash.display.*; public dynamic class rectangulo_vertical_noestatico_2_mc extends MovieClip { } }//package
Section 429
//rectangulo_vertical_noestatico_3_mc (rectangulo_vertical_noestatico_3_mc) package { import flash.display.*; public dynamic class rectangulo_vertical_noestatico_3_mc extends MovieClip { } }//package
Section 430
//rectangulo_vertical_noestatico_4_mc (rectangulo_vertical_noestatico_4_mc) package { import flash.display.*; public dynamic class rectangulo_vertical_noestatico_4_mc extends MovieClip { } }//package
Section 431
//ScrollArrowDown_disabledSkin (ScrollArrowDown_disabledSkin) package { import flash.display.*; public dynamic class ScrollArrowDown_disabledSkin extends MovieClip { } }//package
Section 432
//ScrollArrowDown_downSkin (ScrollArrowDown_downSkin) package { import flash.display.*; public dynamic class ScrollArrowDown_downSkin extends MovieClip { } }//package
Section 433
//ScrollArrowDown_overSkin (ScrollArrowDown_overSkin) package { import flash.display.*; public dynamic class ScrollArrowDown_overSkin extends MovieClip { } }//package
Section 434
//ScrollArrowDown_upSkin (ScrollArrowDown_upSkin) package { import flash.display.*; public dynamic class ScrollArrowDown_upSkin extends MovieClip { } }//package
Section 435
//ScrollArrowUp_disabledSkin (ScrollArrowUp_disabledSkin) package { import flash.display.*; public dynamic class ScrollArrowUp_disabledSkin extends MovieClip { } }//package
Section 436
//ScrollArrowUp_downSkin (ScrollArrowUp_downSkin) package { import flash.display.*; public dynamic class ScrollArrowUp_downSkin extends MovieClip { } }//package
Section 437
//ScrollArrowUp_overSkin (ScrollArrowUp_overSkin) package { import flash.display.*; public dynamic class ScrollArrowUp_overSkin extends MovieClip { } }//package
Section 438
//ScrollArrowUp_upSkin (ScrollArrowUp_upSkin) package { import flash.display.*; public dynamic class ScrollArrowUp_upSkin extends MovieClip { } }//package
Section 439
//ScrollPane_disabledSkin (ScrollPane_disabledSkin) package { import flash.display.*; public dynamic class ScrollPane_disabledSkin extends MovieClip { } }//package
Section 440
//ScrollPane_upSkin (ScrollPane_upSkin) package { import flash.display.*; public dynamic class ScrollPane_upSkin extends MovieClip { } }//package
Section 441
//ScrollThumb_downSkin (ScrollThumb_downSkin) package { import flash.display.*; public dynamic class ScrollThumb_downSkin extends MovieClip { } }//package
Section 442
//ScrollThumb_overSkin (ScrollThumb_overSkin) package { import flash.display.*; public dynamic class ScrollThumb_overSkin extends MovieClip { } }//package
Section 443
//ScrollThumb_upSkin (ScrollThumb_upSkin) package { import flash.display.*; public dynamic class ScrollThumb_upSkin extends MovieClip { } }//package
Section 444
//ScrollTrack_skin (ScrollTrack_skin) package { import flash.display.*; public dynamic class ScrollTrack_skin extends MovieClip { } }//package
Section 445
//SliderThumb_disabledSkin (SliderThumb_disabledSkin) package { import flash.display.*; public dynamic class SliderThumb_disabledSkin extends MovieClip { } }//package
Section 446
//SliderThumb_downSkin (SliderThumb_downSkin) package { import flash.display.*; public dynamic class SliderThumb_downSkin extends MovieClip { } }//package
Section 447
//SliderThumb_overSkin (SliderThumb_overSkin) package { import flash.display.*; public dynamic class SliderThumb_overSkin extends MovieClip { } }//package
Section 448
//SliderThumb_upSkin (SliderThumb_upSkin) package { import flash.display.*; public dynamic class SliderThumb_upSkin extends MovieClip { } }//package
Section 449
//SliderTick_skin (SliderTick_skin) package { import flash.display.*; public dynamic class SliderTick_skin extends MovieClip { } }//package
Section 450
//SliderTrack_disabledSkin (SliderTrack_disabledSkin) package { import flash.display.*; public dynamic class SliderTrack_disabledSkin extends MovieClip { } }//package
Section 451
//SliderTrack_skin (SliderTrack_skin) package { import flash.display.*; public dynamic class SliderTrack_skin extends MovieClip { } }//package
Section 452
//Submit (Submit) package { import Playtomic.*; import flash.events.*; import flash.text.*; import flash.display.*; public class Submit extends Ventana { public var t_score:TextField; public var t_name:TextField; public var t_error:TextField; public var b_submit:SimpleButton; public var b_exit:SimpleButton; override protected function Cargar_Ventana():void{ b_submit.addEventListener(MouseEvent.CLICK, on_button_clicked); b_exit.addEventListener(MouseEvent.CLICK, on_button_clicked); t_error.visible = false; t_score.text = ("" + VariablesGlobales.matrizPuntuaciones[0]); t_name.text = ("" + VariablesGlobales.nombrePlayer); stage.focus = t_name; super.Cargar_Ventana(); } override protected function Descargar_Ventana():void{ super.Descargar_Ventana(); } private function on_button_clicked(_arg1:Event):void{ switch (_arg1.currentTarget.name){ case "b_submit": ValidarSubmit(); break; case "b_exit": main_class.cierra_pantalla(this); break; }; } private function ValidarSubmit():void{ var _local1:PlayerScore; if (t_name.text == ""){ t_error.text = "Escribe tu nombre!"; t_error.visible = true; stage.focus = t_name; } else { _local1 = new PlayerScore(); _local1.Name = String(t_name.text); _local1.Points = int(VariablesGlobales.matrizPuntuaciones[0]); Leaderboards.Save(_local1, "Score", onSubmit); VariablesGlobales.nombrePlayer = t_name.text; }; } private function onSubmit(_arg1:PlayerScore, _arg2:Object):void{ if (_arg2.Success){ t_error.text = "Puntuacion validada!"; } else { t_error.text = "No se pudo validar, intentar mas tarde."; }; b_submit.visible = false; } } }//package
Section 453
//TextInput_disabledSkin (TextInput_disabledSkin) package { import flash.display.*; public dynamic class TextInput_disabledSkin extends MovieClip { } }//package
Section 454
//TextInput_upSkin (TextInput_upSkin) package { import flash.display.*; public dynamic class TextInput_upSkin extends MovieClip { } }//package
Section 455
//torso_central (torso_central) package { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class torso_central extends MovieClip { public function torso_central(){ addFrameScript(0, frame1); } function frame1(){ gotoAndStop(1); } } }//package
Section 456
//torso_inferior (torso_inferior) package { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class torso_inferior extends MovieClip { public function torso_inferior(){ addFrameScript(0, frame1); } function frame1(){ gotoAndStop(1); } } }//package
Section 457
//torso_superior (torso_superior) package { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class torso_superior extends MovieClip { public function torso_superior(){ addFrameScript(0, frame1); } function frame1(){ gotoAndStop(1); } } }//package
Section 458
//VariablesGlobales (VariablesGlobales) package { import flash.net.*; import Playtomic.*; import flash.display.*; import flash.geom.*; import Box2D.Dynamics.*; import com.tanoku.sonido.*; public class VariablesGlobales { public static const WEB_NIVELES:String = "http://tanoku.com"; public static const WEB_DUMMY_ORIGINAL:String = "http://www.maxgames.com/game/dummy-never-fails.html"; public static const WEB_TANOKU_BLOG:String = "http://tanoku.com/tanokublog/?p=526"; public static const WEB_TUTORIAL_NIVEL:String = "http://www.maxgames.com/guides/dummy-never-fails-2.html"; public static const NOTA_B_MAS:Number = 4; public static const NOTA_C:Number = 8; public static const NOTA_A:Number = 2; public static const NOTA_B:Number = 5; public static const WEB_TANOKU:String = "http://tanoku.com"; public static const NOTA_F:Number = 10; public static const boardID:String = "c2fa05a8eea3767e"; public static const NOTA_B_MENOS:Number = 6; public static const NOTA_A_MAS:Number = 1; public static const WEB_TUTORIAL_DUMMY:String = "http://www.maxgames.com/guides/dummy-never-fails-2.html"; public static const WEB_SPONSOR:String = "http://www.maxgames.com/"; public static const PASO_TIEMPO:Number = 0.0333333333333333; public static const WEB_DOMINIO:String = "maxgames.com"; public static const WEB_MORE_GAMES:String = "http://www.maxgames.com/"; public static const NOTA_A_MENOS:Number = 3; public static const GRAVEDAD:Number = 10; public static const WEB_TWITER:String = "http://twitter.com"; public static const NOTA_C_MAS:Number = 7; public static const NOTA_C_MENOS:Number = 9; public static const WEB_SOLUCION:String = "http://www.maxgames.com/guides/dummy-never-fails-2.html"; public static const RATIO:Number = 30; public static var gravedadModificada:Boolean = false; public static var nivelEditor:Boolean = false; public static var IMPULSOR_NE:int = 1; public static var dummyOnlineJugador:Array; public static var nombreOnlineActual:String; public static var editorHerramientasVisibles:Boolean = true; public static var IMPULSOR_NO:int = 7; public static var nivelActual:String = ""; public static var slowModeUtilizado:Boolean = false; public static var valorVelocidadLenta:Number = 5; public static var cursorVisible:Boolean = false; public static var contenedorHijo:MovieClip; public static var indiceNivelActual:int = 1; public static var dummyCoordenadasRectanguloAncho:Array = [100, 157, 125, 143, 148, 189, 147, 189, 80, 64, 84, 64]; public static var filtroCantidad:Number = 0; public static var listaIdNiveles:Array = []; public static var dummyActual:String = ""; public static var objetosMapaSmall:int = 5; public static var IMPULSOR_E:int = 2; public static var IMPULSOR_N:int = 0; public static var IMPULSOR_O:int = 6; public static var IMPULSOR_S:int = 4; public static var nivelesDataJugador:Array; public static var ultimoNivelReintentado:int = 0; public static var idOnlineActual:String; public static var EditorDummyActual; public static var nivelesJuego:Cadena_Nivel = new Cadena_Nivel(); public static var dummyCoordenadasRectanguloAlto:Array = [125, 139, 91, 97, 64, 78, 62, 76, 195, 215, 197, 215]; public static var editorZoomActual:int = 700; public static var objetoDinamicoActivado:Boolean = false; public static var galeriaSkins:Boolean = false; public static var valorVelocidadNormal:Number = 1; public static var indiceNivelMaximo:int = 1; public static var gravedadCero:Boolean = false; public static var GaleriaActual; public static var limitesMundo:Rectangle; public static var matrizPuntuaciones:Array; public static var responseListNivelLoaded:String = "ListNivelLoaded waiting... "; public static var numeroDisparos:Number = 0; public static var numeroPartidasNextSeguidas:int = 0; public static var IMPULSOR_SE:int = 3; public static var PASO_TIEMPO_LENTO:Number = 0.0333333333333333; public static var maximoDolorNivel:Number = 9999999; public static var itemsRecogidos:int = 0; public static var IMPULSOR_SO:int = 5; public static var valorMinimoDolor:Number = 0.05; public static var mundo:b2World; public static var numeroDisparosPantallaActual:Number = 0; public static var filtroModo:String = ""; public static var responseListDummyLoaded:String = "ListDummyLoaded waiting... "; public static var nivelesNombresJugador:Array; public static var objetoImpulsorActivado:Boolean = false; public static var JuegoActual; public static var musicMan:MusicManager; public static var dummyDataJugador:Array; public static var tipo_actual:String = ""; public static var nivelOnline:Boolean = false; public static var hayItems:Boolean = false; public static var disparosRealizadosNivelActual:int = 0; public static var dummyOnline:Boolean = false; public static var numeroReintentosRepetidos:int = 0; public static var PrincipalActual; public static var playerOnlineActual:String; public static var numeroPartidas:Number = 0; public static var estadoImpulsores:Array = [false, false, false, false, false, false, false, false]; public static var multiplicadorDolor:Number = 1000; public static var EditorNivelesActual; public static var dummyNombresJugador:Array; public static var margenMascara:Number = 10; public static var margenContornoMascara:Number = 8; public static var listaIdDummies:Array = []; public static var contenedorPadre:MovieClip; public static var skinActual:int = 0; public static var contenedorOnline:MovieClip; public static var hayObjetosMovibles:Boolean = false; public static var objetosMoviblesFinal:int = 0; public static var GaleriaDummyMostrarFondo:Boolean = false; public static var dummyPruebaActual:String = ""; public static var musicaActual:String = ""; public static var itemsFinal:int = 0; public static var nivelesOnlineJugador:Array; public static var dummiesFueraPantallaActual:int = 0; public static var margenGris:Number = 4; public static var objetosMapaGrande:int = 20; public static var objetosMapaMediano:int = 10; public static var NivelesActual; public static var nivelDummy:Boolean = false; public static var soundMan:SoundManager; public static var filtroTiempo:String = ""; public static var indiceNivelMaximoReal:int = 60; public static var nivelPruebaActual:String = ""; public static var dummiesActivosPantallaActual:int = 0; public static var logrosMan:ManagerLogros; public static var savegameMan:ManagerPartidas; public static var dolorTotalAcumuladoSesionActual:int = 0; public static var catalogoObjetos:CatalogoObjetos = new CatalogoObjetos(); public static var nivelPruebaDummy:String = "100#l,127.45,361.05,52.00,26.10,0|ec,392.05,73.85,768.80,17.50,0|ec,388.05,512.25,782.70,18.50,0|ec,770.80,290.80,427.25,18.30,89.75|ec,9.65,290.40,450.35,22.25,89.75|me,676.00,295.25,35.35,35.35,0|"; function RateComplete(_arg1:Object):void{ if (_arg1.Success){ trace("Rating complete"); }; } public static function EstadoMusica(_arg1:Boolean=false):int{ if (_arg1){ VariablesGlobales.musicMan.Mute(); VariablesGlobales.soundMan.Mute(); if (VariablesGlobales.musicMan.Activo){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.DESMUTAR_SONIDO); }; }; VariablesGlobales.savegameMan.salvarPartida(); if (VariablesGlobales.musicMan.Activo){ if (VariablesGlobales.musicMan.isSoundPaused(VariablesGlobales.musicaActual)){ VariablesGlobales.musicMan.playSound(VariablesGlobales.musicaActual, 1, 0, 99); }; return (2); //unresolved jump }; return (1); } public static function CargarContenidoOnline(_arg1, _arg2):void{ contenedorOnline = _arg1; PlayerLevels.Load(_arg2, VariablesGlobales.LoadComplete); } public static function obtenerIdAleatorio(_arg1):String{ var _local2:int; var _local3:String; _local3 = ""; if (_arg1 == "nivel"){ if (listaIdNiveles.length > 0){ _local2 = ((Math.random() * listaIdNiveles.length) - 1); _local3 = listaIdNiveles[_local2].LevelId; }; } else { if (listaIdDummies.length > 0){ _local2 = ((Math.random() * listaIdDummies.length) - 1); _local3 = listaIdDummies[_local2].LevelId; }; }; return (_local3); } public static function LoadComplete(_arg1:PlayerLevel, _arg2:Object):void{ if (_arg2.Success){ VariablesGlobales.idOnlineActual = _arg1.LevelId; VariablesGlobales.nombreOnlineActual = _arg1.Name; VariablesGlobales.playerOnlineActual = _arg1.PlayerName; if (VariablesGlobales.tipo_actual == "nivel"){ trace("Level has been loaded, now you can begin playing it"); VariablesGlobales.nivelOnline = true; VariablesGlobales.nivelEditor = true; VariablesGlobales.nivelDummy = false; VariablesGlobales.dummyOnline = false; VariablesGlobales.nivelPruebaActual = _arg1.Data; contenedorOnline.main_class.abre_pantalla(new Juego()); contenedorOnline.main_class.cierra_pantalla(VariablesGlobales.contenedorOnline); VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.PLAY_NIVEL); } else { trace("Dummy has been loaded, now you can begin playing it"); VariablesGlobales.nivelOnline = false; VariablesGlobales.nivelEditor = true; VariablesGlobales.nivelDummy = true; VariablesGlobales.dummyOnline = true; VariablesGlobales.nivelPruebaActual = VariablesGlobales.nivelPruebaDummy; VariablesGlobales.dummyPruebaActual = _arg1.Data; contenedorOnline.main_class.abre_pantalla(new Juego()); contenedorOnline.main_class.cierra_pantalla(VariablesGlobales.contenedorOnline); VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.PLAY_DUMMY); }; PlayerLevels.Rate(VariablesGlobales.idOnlineActual, 0, VariablesGlobales.RateComplete); } else { trace(("level failed to load because of response.ErrorCode " + _arg2.ErrorCode)); }; } public static function cargarListasOnline():void{ PlayerLevels.List(ListNivelLoaded, {mode:"newest", customfilters:{tipo:"nivel"}}); PlayerLevels.List(ListDummyLoaded, {mode:"newest", customfilters:{tipo:"dummy"}}); } public static function AbreWeb(_arg1:String, _arg2:Boolean=true){ if (_arg2){ if (_arg1 == WEB_SOLUCION){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.VIDEO_GUIA); }; if (_arg1 == WEB_TUTORIAL_NIVEL){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.VIDEO_EDITOR_NIVEL); }; if (_arg1 == WEB_TUTORIAL_DUMMY){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.VIDEO_EDITOR_DUMMY); }; if (_arg1 == WEB_MORE_GAMES){ VariablesGlobales.logrosMan.DesbloquearLogro(ManagerLogros.PLAY_MORE_GAMES); }; }; if (_arg1 != ""){ navigateToURL(new URLRequest(_arg1)); }; } public static function ListNivelLoaded(_arg1:Array, _arg2:int, _arg3:Object):void{ var _local4:int; responseListNivelLoaded = "ListNivelLoaded ??? "; if (_arg3.Success){ listaIdNiveles = []; _local4 = 0; while (_local4 < _arg1.length) { listaIdNiveles.push(_arg1[_local4]); _local4++; }; responseListNivelLoaded = "ListNivelLoaded loaded "; } else { responseListNivelLoaded = ("ListNivelLoaded error " + _arg3.ErrorCode); }; } public static function esPar(_arg1:Number):Boolean{ return (!((_arg1 % 2))); } public static function EstadoSFX(_arg1:Boolean=false):int{ if (_arg1){ VariablesGlobales.soundMan.Mute(); }; VariablesGlobales.savegameMan.salvarPartida(); if (VariablesGlobales.soundMan.Activo){ return (2); }; return (1); } public static function ListDummyLoaded(_arg1:Array, _arg2:int, _arg3:Object):void{ var _local4:int; responseListDummyLoaded = "ListDummyLoaded ??? "; if (_arg3.Success){ listaIdDummies = []; _local4 = 0; while (_local4 < _arg1.length) { listaIdDummies.push(_arg1[_local4]); _local4++; }; responseListDummyLoaded = "ListDummyLoaded loaded "; } else { responseListDummyLoaded = ("ListDummyLoaded error " + _arg3.ErrorCode); }; } public static function AbrePuntuaciones(_arg1):void{ _arg1.abre_pantalla(new Ranking()); } public static function notaDolor(_arg1):uint{ var _local2:uint; _local2 = 1; if (_arg1 == 0){ _local2 = 1; }; if ((((_arg1 >= 1)) && ((_arg1 <= 1000)))){ _local2 = 2; }; if ((((_arg1 >= 1001)) && ((_arg1 <= 5000)))){ _local2 = 3; }; if ((((_arg1 >= 5001)) && ((_arg1 <= 10000)))){ _local2 = 4; }; if ((((_arg1 >= 10001)) && ((_arg1 <= 20000)))){ _local2 = 5; }; if ((((_arg1 >= 20001)) && ((_arg1 <= 50000)))){ _local2 = 6; }; if ((((_arg1 >= 50001)) && ((_arg1 <= 100000)))){ _local2 = 7; }; if ((((_arg1 >= 100001)) && ((_arg1 <= 250000)))){ _local2 = 8; }; if ((((_arg1 >= 250001)) && ((_arg1 <= 500000)))){ _local2 = 9; }; if (_arg1 >= 500001){ _local2 = 10; }; if (_arg1 < 0){ _local2 = 10; }; return (_local2); } public static function SubmitPuntuaciones(_arg1):void{ _arg1.abre_pantalla(new Submit()); } } }//package
Section 459
//VCam_AS3_Interactive (VCam_AS3_Interactive) package { import flash.accessibility.*; import flash.display.*; import flash.errors.*; import flash.events.*; import flash.external.*; import flash.filters.*; import flash.geom.*; import flash.media.*; import flash.net.*; import flash.system.*; import flash.text.*; import flash.ui.*; import flash.utils.*; public dynamic class VCam_AS3_Interactive extends MovieClip { public var sH:Number; public var rp:Point; public var sW:Number; public var bounds_obj:Object; public var camH:Number; public var camW:Number; public var oldScaleMode:String; public function VCam_AS3_Interactive(){ addFrameScript(0, frame1); } public function set scaleX2(_arg1:Number):void{ setProperty2("scaleX", _arg1); } function frame1(){ mouseEnabled = false; visible = false; oldScaleMode = stage.scaleMode; stage.scaleMode = "exactFit"; sW = stage.stageWidth; sH = stage.stageHeight; stage.scaleMode = oldScaleMode; bounds_obj = this.getBounds(this); camH = bounds_obj.height; camW = bounds_obj.width; rp = new Point(x, y); addEventListener(Event.ENTER_FRAME, camControl); addEventListener(Event.REMOVED_FROM_STAGE, reset); camControl(); } public function set x2(_arg1:Number):void{ var _local2:Point; _local2 = parent.parent.globalToLocal(parent.localToGlobal(rp)); parent.x = (parent.x + (_arg1 - _local2.x)); } public function get rotation2():Number{ return (parent.rotation); } public function camControl(... _args):void{ var _local2:Number; var _local3:Number; var _local4:Number; var _local5:Number; rp.x = x; rp.y = y; _local2 = (camH * scaleY); _local3 = (camW * scaleX); _local4 = (sH / _local2); _local5 = (sW / _local3); x2 = ((_local3 / 2) * _local5); y2 = ((_local2 / 2) * _local4); scaleX2 = _local5; scaleY2 = _local4; rotation2 = -(rotation); parent.filters = this.filters; parent.transform.colorTransform = this.transform.colorTransform; } public function set scaleY2(_arg1:Number):void{ setProperty2("scaleY", _arg1); } public function get scaleX2():Number{ return (parent.scaleX); } public function get x2():Number{ var _local1:Point; _local1 = parent.parent.globalToLocal(parent.localToGlobal(rp)); return (_local1.x); } public function setProperty2(_arg1:String, _arg2:Number):void{ var _local3:Point; var _local4:Point; _local3 = parent.parent.globalToLocal(parent.localToGlobal(rp)); parent[_arg1] = _arg2; _local4 = parent.parent.globalToLocal(parent.localToGlobal(rp)); parent.x = (parent.x - (_local4.x - _local3.x)); parent.y = (parent.y - (_local4.y - _local3.y)); } public function set y2(_arg1:Number):void{ var _local2:Point; _local2 = parent.parent.globalToLocal(parent.localToGlobal(rp)); parent.y = (parent.y + (_arg1 - _local2.y)); } public function reset(_arg1:Event):void{ removeEventListener(Event.ENTER_FRAME, camControl); removeEventListener(Event.REMOVED_FROM_STAGE, reset); parent.scaleX = 1; parent.scaleY = 1; parent.x = 0; parent.y = 0; parent.rotation = 0; parent.visible = true; } public function get scaleY2():Number{ return (parent.scaleY); } public function get y2():Number{ var _local1:Point; _local1 = parent.parent.globalToLocal(parent.localToGlobal(rp)); return (_local1.y); } public function set rotation2(_arg1:Number):void{ setProperty2("rotation", _arg1); } } }//package
Section 460
//Ventana (Ventana) package { import flash.events.*; import flash.display.*; public class Ventana extends MovieClip { public var main_class:MovieClip; public function Ventana(){ addEventListener(Event.ADDED_TO_STAGE, Ventana_Added); addEventListener(Event.REMOVED_FROM_STAGE, Ventana_Removed); } protected function Cargar_Ventana():void{ } private function Ventana_Added(_arg1:Event):void{ removeEventListener(Event.ADDED_TO_STAGE, Ventana_Added); Cargar_Ventana(); } protected function Descargar_Ventana():void{ } private function Ventana_Removed(_arg1:Event):void{ removeEventListener(Event.REMOVED, Ventana_Removed); Descargar_Ventana(); } } }//package

Library Items

Symbol 1 BitmapUsed by:2 1246 2234
Symbol 2 GraphicUses:1Used by:40 2129 2377
Symbol 3 GraphicUsed by:4
Symbol 4 MovieClipUses:3Used by:40
Symbol 5 GraphicUsed by:6
Symbol 6 MovieClipUses:5Used by:10
Symbol 7 GraphicUsed by:8
Symbol 8 MovieClipUses:7Used by:10
Symbol 9 GraphicUsed by:10
Symbol 10 MovieClipUses:6 8 9Used by:40 2129
Symbol 11 GraphicUsed by:15
Symbol 12 GraphicUsed by:15
Symbol 13 FontUsed by:14 2345 2346 2347 2348 2349 2350 2351 2352 2353 2354 2355 2356 2357 2358 2359 2360 2361 2362
Symbol 14 TextUses:13Used by:15
Symbol 15 ButtonUses:11 12 14Used by:40
Symbol 16 GraphicUsed by:27 28
Symbol 17 GraphicUsed by:18 28 2338
Symbol 18 MovieClipUses:17Used by:27
Symbol 19 GraphicUsed by:20 28 2343
Symbol 20 MovieClipUses:19Used by:27
Symbol 21 GraphicUsed by:22 28
Symbol 22 MovieClipUses:21Used by:27
Symbol 23 GraphicUsed by:24 28
Symbol 24 MovieClipUses:23Used by:27
Symbol 25 GraphicUsed by:27 28 1723 2344
Symbol 26 GraphicUsed by:27 28 1723
Symbol 27 MovieClipUses:16 18 20 22 24 25 26Used by:28 293
Symbol 28 ButtonUses:27 16 17 19 21 23 25 26Used by:40 1252 1787 2129
Symbol 29 FontUsed by:30 35 1545 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1578 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1848 1852 1854 1855 1857 1858 1860 1861 1863 1864 1866 1867 1869 1870 1872 1873 1875 1876 1878 1879 1881 1882 1884 1885 1887 1888 1890 1891 1893 1894 1896 1897 1899 1900 1902 1903 1905 1906 1908 1909 1911 1912 1914 1915 1917 1918 1920 1921 1923 1924 1926 1927 1929 1930 1932 1933 1935 1936 1938 1939 1941 1942 1944 1945 1947 1948 1950 1951 1953 1954 1956 1957 1959 1960 1962 1963 1965 1966 1968 1969 1971 1972 1974 1975 1977 1978 1980 1981 1983 1984 1986 1987 1989 1990 1992 1993 1995 1996 1998 1999 2001 2002 2004 2005 2012 2013 2014 2036
Symbol 30 EditableTextUses:29Used by:40
Symbol 31 BitmapUsed by:32
Symbol 32 GraphicUses:31Used by:33 297 1252
Symbol 33 ButtonUses:32Used by:40 2129
Symbol 34 GraphicUsed by:40
Symbol 35 EditableTextUses:29Used by:40
Symbol 36 GraphicUsed by:37
Symbol 37 MovieClipUses:36Used by:40
Symbol 38 GraphicUsed by:39
Symbol 39 MovieClipUses:38Used by:40
Symbol 40 MovieClip {preloader_sc}Uses:2 4 10 15 28 30 33 34 35 37 39
Symbol 41 GraphicUsed by:42
Symbol 42 MovieClipUses:41Used by:61 80 85 139 140 162 165 179 1382 1401
Symbol 43 MovieClip {fl.core.ComponentShim}Used by:61 80 85 111 138 139 140 162 165 179
Symbol 44 GraphicUsed by:45 54
Symbol 45 MovieClip {CheckBox_upIcon}Uses:44Used by:61
Symbol 46 GraphicUsed by:47 55
Symbol 47 MovieClip {CheckBox_overIcon}Uses:46Used by:61
Symbol 48 GraphicUsed by:49 56
Symbol 49 MovieClip {CheckBox_downIcon}Uses:48Used by:61
Symbol 50 GraphicUsed by:51
Symbol 51 MovieClip {CheckBox_disabledIcon}Uses:50Used by:61
Symbol 52 GraphicUsed by:53
Symbol 53 MovieClipUses:52Used by:54 55 56 58
Symbol 54 MovieClip {CheckBox_selectedUpIcon}Uses:44 53Used by:61
Symbol 55 MovieClip {CheckBox_selectedOverIcon}Uses:46 53Used by:61
Symbol 56 MovieClip {CheckBox_selectedDownIcon}Uses:48 53Used by:61
Symbol 57 GraphicUsed by:58
Symbol 58 MovieClip {CheckBox_selectedDisabledIcon}Uses:57 53Used by:61
Symbol 59 GraphicUsed by:60
Symbol 60 MovieClip {focusRectSkin}Uses:59Used by:61 80 85 138 139 140 179
Symbol 61 MovieClip {fl.controls.CheckBox}Uses:42 43 45 47 49 51 54 55 56 58 60Used by:2222
Symbol 62 GraphicUsed by:63
Symbol 63 MovieClip {Button_disabledSkin}Uses:62Used by:80
Symbol 64 GraphicUsed by:65
Symbol 65 MovieClip {Button_downSkin}Uses:64Used by:80
Symbol 66 GraphicUsed by:67
Symbol 67 MovieClip {Button_emphasizedSkin}Uses:66Used by:80
Symbol 68 GraphicUsed by:69
Symbol 69 MovieClip {Button_overSkin}Uses:68Used by:80
Symbol 70 GraphicUsed by:71
Symbol 71 MovieClip {Button_selectedDisabledSkin}Uses:70Used by:80
Symbol 72 GraphicUsed by:73
Symbol 73 MovieClip {Button_selectedDownSkin}Uses:72Used by:80
Symbol 74 GraphicUsed by:75
Symbol 75 MovieClip {Button_selectedOverSkin}Uses:74Used by:80
Symbol 76 GraphicUsed by:77
Symbol 77 MovieClip {Button_selectedUpSkin}Uses:76Used by:80
Symbol 78 GraphicUsed by:79
Symbol 79 MovieClip {Button_upSkin}Uses:78Used by:80
Symbol 80 MovieClip {fl.controls.Button}Uses:42 43 63 65 67 69 71 73 75 77 79 60Used by:2222
Symbol 81 GraphicUsed by:82
Symbol 82 MovieClip {TextInput_disabledSkin}Uses:81Used by:85
Symbol 83 GraphicUsed by:84
Symbol 84 MovieClip {TextInput_upSkin}Uses:83Used by:85
Symbol 85 MovieClip {fl.controls.TextInput}Uses:42 43 82 84 60Used by:140
Symbol 86 GraphicUsed by:87
Symbol 87 MovieClip {ComboBox_upSkin}Uses:86Used by:140
Symbol 88 GraphicUsed by:89
Symbol 89 MovieClip {ComboBox_disabledSkin}Uses:88Used by:140
Symbol 90 GraphicUsed by:91
Symbol 91 MovieClip {ComboBox_overSkin}Uses:90Used by:140
Symbol 92 GraphicUsed by:93
Symbol 93 MovieClip {ComboBox_downSkin}Uses:92Used by:140
Symbol 94 GraphicUsed by:95
Symbol 95 MovieClip {List_skin}Uses:94Used by:139
Symbol 96 GraphicUsed by:97
Symbol 97 MovieClip {CellRenderer_upSkin}Uses:96Used by:111
Symbol 98 GraphicUsed by:99 1407 1422 2278 2372 2379
Symbol 99 MovieClip {CellRenderer_disabledSkin}Uses:98Used by:111
Symbol 100 GraphicUsed by:101
Symbol 101 MovieClip {CellRenderer_downSkin}Uses:100Used by:111
Symbol 102 GraphicUsed by:103
Symbol 103 MovieClip {CellRenderer_overSkin}Uses:102Used by:111
Symbol 104 GraphicUsed by:105 110
Symbol 105 MovieClip {CellRenderer_selectedDisabledSkin}Uses:104Used by:111
Symbol 106 GraphicUsed by:107
Symbol 107 MovieClip {CellRenderer_selectedDownSkin}Uses:106Used by:111
Symbol 108 GraphicUsed by:109
Symbol 109 MovieClip {CellRenderer_selectedOverSkin}Uses:108Used by:111
Symbol 110 MovieClip {CellRenderer_selectedUpSkin}Uses:104Used by:111
Symbol 111 MovieClip {fl.controls.listClasses.CellRenderer}Uses:97 43 99 101 103 105 107 109 110Used by:139
Symbol 112 GraphicUsed by:113
Symbol 113 MovieClip {ScrollTrack_skin}Uses:112Used by:138
Symbol 114 GraphicUsed by:117
Symbol 115 GraphicUsed by:116 119 123 133
Symbol 116 MovieClipUses:115Used by:117 127 129
Symbol 117 MovieClip {ScrollArrowUp_downSkin}Uses:114 116Used by:138
Symbol 118 GraphicUsed by:119
Symbol 119 MovieClip {ScrollArrowDown_downSkin}Uses:118 115Used by:138
Symbol 120 GraphicUsed by:121
Symbol 121 MovieClip {ScrollThumb_downSkin}Uses:120Used by:138
Symbol 122 GraphicUsed by:123
Symbol 123 MovieClip {ScrollArrowDown_overSkin}Uses:122 115Used by:138
Symbol 124 GraphicUsed by:125
Symbol 125 MovieClip {ScrollThumb_overSkin}Uses:124Used by:138
Symbol 126 GraphicUsed by:127
Symbol 127 MovieClip {ScrollArrowUp_overSkin}Uses:126 116Used by:138
Symbol 128 GraphicUsed by:129
Symbol 129 MovieClip {ScrollArrowUp_upSkin}Uses:128 116Used by:138
Symbol 130 GraphicUsed by:131
Symbol 131 MovieClip {ScrollThumb_upSkin}Uses:130Used by:138
Symbol 132 GraphicUsed by:133
Symbol 133 MovieClip {ScrollArrowDown_upSkin}Uses:132 115Used by:138
Symbol 134 GraphicUsed by:135
Symbol 135 MovieClip {ScrollArrowDown_disabledSkin}Uses:134Used by:138
Symbol 136 GraphicUsed by:137
Symbol 137 MovieClip {ScrollArrowUp_disabledSkin}Uses:136Used by:138
Symbol 138 MovieClip {fl.controls.ScrollBar}Uses:113 43 60 117 119 121 123 125 127 129 131 133 135 137Used by:139 165
Symbol 139 MovieClip {fl.controls.List}Uses:42 43 95 111 60 138Used by:140 1382 1401
Symbol 140 MovieClip {fl.controls.ComboBox}Uses:42 43 60 87 89 91 93 85 139Used by:2222
Symbol 141 GraphicUsed by:142
Symbol 142 MovieClip {ColorPicker_upSkin}Uses:141Used by:162
Symbol 143 GraphicUsed by:144
Symbol 144 MovieClip {ColorPicker_disabledSkin}Uses:143Used by:162
Symbol 145 GraphicUsed by:146
Symbol 146 MovieClip {ColorPicker_swatchSkin}Uses:145Used by:162
Symbol 147 GraphicUsed by:148
Symbol 148 MovieClipUses:147Used by:151 162 163 164
Symbol 149 GraphicUsed by:150
Symbol 150 MovieClipUses:149Used by:151 162 163 164
Symbol 151 MovieClip {ColorPicker_backgroundSkin}Uses:148 150Used by:162
Symbol 152 GraphicUsed by:153
Symbol 153 MovieClip {ColorPicker_downSkin}Uses:152Used by:162
Symbol 154 GraphicUsed by:155
Symbol 155 MovieClip {ColorPicker_textFieldSkin}Uses:154Used by:162
Symbol 156 GraphicUsed by:157
Symbol 157 MovieClip {ColorPicker_overSkin}Uses:156Used by:162
Symbol 158 GraphicUsed by:159
Symbol 159 MovieClip {ColorPicker_colorWell}Uses:158Used by:162
Symbol 160 GraphicUsed by:161
Symbol 161 MovieClip {ColorPicker_swatchSelectedSkin}Uses:160Used by:162
Symbol 162 MovieClip {fl.controls.ColorPicker}Uses:42 43 142 144 146 151 153 155 157 159 161 150 148Used by:2222
Symbol 163 MovieClip {ScrollPane_disabledSkin}Uses:148 150Used by:165
Symbol 164 MovieClip {ScrollPane_upSkin}Uses:148 150Used by:165
Symbol 165 MovieClip {fl.containers.ScrollPane}Uses:42 43 163 164 138Used by:1698 2267
Symbol 166 GraphicUsed by:167
Symbol 167 MovieClip {SliderThumb_upSkin}Uses:166Used by:179
Symbol 168 GraphicUsed by:169
Symbol 169 MovieClip {SliderThumb_overSkin}Uses:168Used by:179
Symbol 170 GraphicUsed by:171
Symbol 171 MovieClip {SliderThumb_downSkin}Uses:170Used by:179
Symbol 172 GraphicUsed by:173
Symbol 173 MovieClip {SliderThumb_disabledSkin}Uses:172Used by:179
Symbol 174 GraphicUsed by:175
Symbol 175 MovieClip {SliderTrack_skin}Uses:174Used by:179
Symbol 176 MovieClip {SliderTick_skin}Used by:179
Symbol 177 GraphicUsed by:178
Symbol 178 MovieClip {SliderTrack_disabledSkin}Uses:177Used by:179
Symbol 179 MovieClip {fl.controls.Slider}Uses:42 43 167 169 171 173 175 176 178 60Used by:1423 1787 2222
Symbol 180 FontUsed by:181 190 191 1168 1199 1343 1400 1748 1750 1751 1752 2105 2106 2107 2161 2163 2265 2285 2286 2287 2288 2289 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2303 2304 2305 2306 2307 2309 2310 2311 2312 2313 2314 2387
Symbol 181 EditableTextUses:180Used by:Timeline
Symbol 182 GraphicUsed by:2743
Symbol 183 GraphicUsed by:188 1247
Symbol 184 FontUsed by:185 187 1255 1256 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1374 1375 1409 1415 1416 1417 1418 1419 1420 1695 1697 1779 1780 1781 1792 1793 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 1840 1841 1842 1843 1844 2024 2025 2026 2027 2028 2029 2030 2031 2032 2040 2042 2044 2045 2047 2048 2050 2051 2053 2054 2056 2057 2059 2060 2062 2063 2065 2066 2151 2238 2239 2242 2243 2246 2247 2250 2251 2254 2257 2258 2261 2262 2264 2266 2382 2383 2388 2412 2415 2416 2417 2418 2419 2420 2421 2422 2423 2424 2425 2426 2427 2428 2429 2430 2431 2432 2433 2434 2435 2436 2437 2438 2439 2440 2441 2442 2443 2444 2445 2446 2447 2448 2449 2450 2451 2452 2453 2454 2455 2456 2457 2458 2459 2460 2461 2462 2463 2464 2465 2466 2467 2468 2469 2470 2471 2472 2473 2474 2475 2476 2477 2478 2479 2480 2481 2482 2483 2484 2485 2486 2487 2488 2489 2490 2491 2492 2493 2494 2495 2496 2497 2498 2499 2500 2501 2502 2503 2504 2505 2506 2507 2508 2509 2510 2511 2512 2513 2514 2515 2516 2518 2519 2520 2521 2522 2523 2524 2525 2526 2527 2528 2529 2530 2531 2532 2533 2534 2535 2536 2537 2538 2539 2540 2541 2542 2543 2544 2545 2546 2547 2548 2549 2550 2551 2552 2553 2554 2555 2556 2557 2558 2559 2560 2561 2562 2563 2564 2565 2566 2567 2568 2569 2570 2571 2572 2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2731 2733
Symbol 185 TextUses:184Used by:188 1247
Symbol 186 GraphicUsed by:188 1247 1696 1782 2240 2244 2248 2252 2255 2259 2263
Symbol 187 TextUses:184Used by:188 1247
Symbol 188 MovieClipUses:183 185 186 187Used by:2743
Symbol 189 GraphicUsed by:192 1329 1747 1749 1770 2076 2077 2222 2398
Symbol 190 EditableTextUses:180Used by:192 1749
Symbol 191 EditableTextUses:180Used by:192 1749
Symbol 192 MovieClipUses:189 190 191Used by:2743
Symbol 193 BitmapUsed by:194 195 201 202 213 214 225 226 242 243 252 253 255 256 270 271 274 275 286 287 298 299 302 303 1344 1345 1348 1349 1369 1370 1387 1388 1391 1392 1411 1412 1715 1716 1727 1728 1732 1733 1736 1737 1757 1758 1761 1762
Symbol 194 GraphicUses:193Used by:200 1339
Symbol 195 GraphicUses:193Used by:200 1339
Symbol 196 GraphicUsed by:197 1244 1339 1340 1341 1342 1347 1351 1372 1381 1390 1394 1414 1718 1723 1726 1730 1731 1735 1739 1764 1776
Symbol 197 MovieClipUses:196Used by:200 204 216 228 245 258 273 277 301 305 1244 1339 1340 1341 1342 1347 1351 1372 1381 1390 1394 1414 1718 1723 1726 1730 1731 1735 1739 1760 1764 1776
Symbol 198 FontUsed by:199 203 215 227 244 257 272 276 280 300 304 1346 1371 1373 1380 1389 1393 1408 1410 1413 1717 1721 1729 1734 1738 1742 1744 1745 1746 1753 1754 1759 1763 1765 1766 1767 1768 1769 2075 2116 2118 2120 2123 2125 2158 2162 2164 2167 2169 2171 2210 2212 2218 2219 2389 2394 2395 2396 2397 2399 2726 2727
Symbol 199 TextUses:198Used by:200 1339
Symbol 200 MovieClipUses:194 195 197 199Used by:2743
Symbol 201 GraphicUses:193Used by:204 1381
Symbol 202 GraphicUses:193Used by:204 1381
Symbol 203 TextUses:198Used by:204 1381
Symbol 204 MovieClipUses:201 202 197 203Used by:2743
Symbol 205 GraphicUsed by:212 2099
Symbol 206 GraphicUsed by:209 2098 2099
Symbol 207 GraphicUsed by:208 2098 2099
Symbol 208 MovieClipUses:207Used by:209
Symbol 209 MovieClipUses:206 208Used by:212 251 2098 2099
Symbol 210 GraphicUsed by:212 2099
Symbol 211 GraphicUsed by:212 2099
Symbol 212 MovieClip {DummyNeverFails2_fla.credits_button_7}Uses:205 209 210 211Used by:2743
Symbol 213 GraphicUses:193Used by:216 1726
Symbol 214 GraphicUses:193Used by:216 1726
Symbol 215 TextUses:198Used by:216 1726
Symbol 216 MovieClipUses:213 214 197 215Used by:2743
Symbol 217 GraphicUsed by:224 2097
Symbol 218 GraphicUsed by:221 2097 2100 2104
Symbol 219 GraphicUsed by:220 2097 2100 2104
Symbol 220 MovieClipUses:219Used by:221
Symbol 221 MovieClipUses:218 220Used by:224 232 2097 2100 2104
Symbol 222 GraphicUsed by:224 2097
Symbol 223 GraphicUsed by:224 2097
Symbol 224 MovieClipUses:217 221 222 223Used by:2743
Symbol 225 GraphicUses:193Used by:228 1244
Symbol 226 GraphicUses:193Used by:228 1244
Symbol 227 TextUses:198Used by:228 1244
Symbol 228 MovieClipUses:225 226 197 227Used by:2743
Symbol 229 GraphicUsed by:232 2100
Symbol 230 GraphicUsed by:232 2100
Symbol 231 GraphicUsed by:232 2100
Symbol 232 MovieClipUses:229 221 230 231Used by:2743
Symbol 233 GraphicUsed by:234 306 1352 1705 2744
Symbol 234 MovieClipUses:233Used by:2743
Symbol 235 BitmapUsed by:237 238 2078
Symbol 236 BitmapUsed by:237 238 2078
Symbol 237 GraphicUses:235 236Used by:239
Symbol 238 GraphicUses:235 236Used by:239
Symbol 239 MovieClip {DummyNeverFails2_fla.hiscores_button_17}Uses:237 238Used by:2743
Symbol 240 GraphicUsed by:241
Symbol 241 MovieClipUses:240Used by:2743
Symbol 242 GraphicUses:193Used by:245 1340
Symbol 243 GraphicUses:193Used by:245 1340
Symbol 244 TextUses:198Used by:245 1340
Symbol 245 MovieClipUses:242 243 197 244Used by:2743
Symbol 246 BitmapUsed by:247
Symbol 247 GraphicUses:246Used by:2743
Symbol 248 GraphicUsed by:251 2098
Symbol 249 GraphicUsed by:251 2098
Symbol 250 GraphicUsed by:251 2098
Symbol 251 MovieClip {DummyNeverFails2_fla.moregames_button_20}Uses:248 209 249 250Used by:2743
Symbol 252 GraphicUses:193Used by:254
Symbol 253 GraphicUses:193Used by:254
Symbol 254 MovieClip {DummyNeverFails2_fla.music_button_21}Uses:252 253Used by:1353 1787 2129 2743
Symbol 255 GraphicUses:193Used by:258 1776
Symbol 256 GraphicUses:193Used by:258 1776
Symbol 257 TextUses:198Used by:258 1776
Symbol 258 MovieClipUses:255 256 197 257Used by:2743
Symbol 259 GraphicUsed by:269 2096
Symbol 260 GraphicUsed by:264 2096
Symbol 261 GraphicUsed by:264 2096
Symbol 262 GraphicUsed by:264 2096
Symbol 263 GraphicUsed by:264 2096
Symbol 264 MovieClipUses:260 261 262 263Used by:266 2377
Symbol 265 GraphicUsed by:266 2096
Symbol 266 MovieClipUses:264 265Used by:269 2096
Symbol 267 GraphicUsed by:269 2096
Symbol 268 GraphicUsed by:269 2096
Symbol 269 MovieClipUses:259 266 267 268Used by:2743
Symbol 270 GraphicUses:193Used by:273 1731
Symbol 271 GraphicUses:193Used by:273 1731
Symbol 272 TextUses:198Used by:273 1731
Symbol 273 MovieClipUses:270 271 197 272Used by:2743
Symbol 274 GraphicUses:193Used by:277 1341
Symbol 275 GraphicUses:193Used by:277 1341
Symbol 276 TextUses:198Used by:277 1341
Symbol 277 MovieClipUses:274 275 197 276Used by:2743
Symbol 278 GraphicUsed by:281
Symbol 279 GraphicUsed by:281
Symbol 280 TextUses:198Used by:281
Symbol 281 MovieClipUses:278 279 280Used by:2743
Symbol 282 BitmapUsed by:283 284 294 295
Symbol 283 GraphicUses:282Used by:285 2035
Symbol 284 GraphicUses:282Used by:285 2035
Symbol 285 MovieClipUses:283 284Used by:2743
Symbol 286 GraphicUses:193Used by:288
Symbol 287 GraphicUses:193Used by:288
Symbol 288 MovieClipUses:286 287Used by:1787 2743
Symbol 289 BitmapUsed by:290 291
Symbol 290 GraphicUses:289Used by:292
Symbol 291 GraphicUses:289Used by:292
Symbol 292 MovieClip {DummyNeverFails2_fla.sound_button_31}Uses:290 291Used by:1353 1787 2743
Symbol 293 MovieClipUses:27Used by:2743
Symbol 294 GraphicUses:282Used by:296 2034
Symbol 295 GraphicUses:282Used by:296 2034
Symbol 296 MovieClipUses:294 295Used by:2743
Symbol 297 MovieClipUses:32Used by:2743
Symbol 298 GraphicUses:193Used by:301 1342
Symbol 299 GraphicUses:193Used by:301 1342
Symbol 300 TextUses:198Used by:301 1342
Symbol 301 MovieClipUses:298 299 197 300Used by:2743
Symbol 302 GraphicUses:193Used by:305 1351
Symbol 303 GraphicUses:193Used by:305 1351
Symbol 304 TextUses:198Used by:305 1351
Symbol 305 MovieClipUses:302 303 197 304Used by:2743
Symbol 306 MovieClipUses:233Used by:2743
Symbol 307 GraphicUsed by:429 1262
Symbol 308 BitmapUsed by:309 1268 2016
Symbol 309 GraphicUses:308Used by:314 1262
Symbol 310 BitmapUsed by:311
Symbol 311 GraphicUses:310Used by:312
Symbol 312 MovieClipUses:311Used by:313
Symbol 313 MovieClipUses:312Used by:314
Symbol 314 MovieClipUses:309 313Used by:429
Symbol 315 BitmapUsed by:316 1257 1271 2016
Symbol 316 GraphicUses:315Used by:329
Symbol 317 GraphicUsed by:329
Symbol 318 GraphicUsed by:319
Symbol 319 MovieClipUses:318Used by:320
Symbol 320 MovieClipUses:319Used by:329
Symbol 321 GraphicUsed by:329
Symbol 322 BitmapUsed by:323
Symbol 323 GraphicUses:322Used by:324
Symbol 324 MovieClipUses:323Used by:325
Symbol 325 MovieClipUses:324Used by:329 398
Symbol 326 GraphicUsed by:329
Symbol 327 GraphicUsed by:329
Symbol 328 GraphicUsed by:329
Symbol 329 MovieClipUses:316 317 320 321 325 326 327 328Used by:429
Symbol 330 BitmapUsed by:331 1258 1273 2016
Symbol 331 GraphicUses:330Used by:342
Symbol 332 BitmapUsed by:333 1258
Symbol 333 GraphicUses:332Used by:334
Symbol 334 MovieClipUses:333Used by:335
Symbol 335 MovieClipUses:334Used by:342
Symbol 336 BitmapUsed by:337 1258
Symbol 337 GraphicUses:336Used by:338
Symbol 338 MovieClipUses:337Used by:339
Symbol 339 MovieClipUses:338Used by:342
Symbol 340 BitmapUsed by:341 1258 2016
Symbol 341 GraphicUses:340Used by:342
Symbol 342 MovieClipUses:331 335 339 341Used by:429
Symbol 343 BitmapUsed by:344 1259 2016
Symbol 344 GraphicUses:343Used by:360
Symbol 345 BitmapUsed by:346 358
Symbol 346 GraphicUses:345Used by:347
Symbol 347 MovieClipUses:346Used by:360
Symbol 348 BitmapUsed by:349 1259 1275 2016
Symbol 349 GraphicUses:348Used by:360
Symbol 350 BitmapUsed by:351 353
Symbol 351 GraphicUses:350Used by:352
Symbol 352 MovieClipUses:351Used by:360
Symbol 353 GraphicUses:350Used by:354
Symbol 354 MovieClipUses:353Used by:360
Symbol 355 BitmapUsed by:356
Symbol 356 GraphicUses:355Used by:357
Symbol 357 MovieClipUses:356Used by:360
Symbol 358 GraphicUses:345Used by:359
Symbol 359 MovieClipUses:358Used by:360
Symbol 360 MovieClipUses:344 347 349 352 354 357 359Used by:429
Symbol 361 BitmapUsed by:362
Symbol 362 GraphicUses:361Used by:363
Symbol 363 MovieClipUses:362Used by:366 1262
Symbol 364 BitmapUsed by:365 1277 2016
Symbol 365 GraphicUses:364Used by:366 1262
Symbol 366 MovieClipUses:363 365Used by:429
Symbol 367 BitmapUsed by:368 1279 2016
Symbol 368 GraphicUses:367Used by:383 1262
Symbol 369 BitmapUsed by:370
Symbol 370 GraphicUses:369Used by:371
Symbol 371 MovieClipUses:370Used by:372
Symbol 372 MovieClipUses:371Used by:383
Symbol 373 BitmapUsed by:374
Symbol 374 GraphicUses:373Used by:375
Symbol 375 MovieClipUses:374Used by:382
Symbol 376 BitmapUsed by:377
Symbol 377 GraphicUses:376Used by:378
Symbol 378 MovieClipUses:377Used by:382
Symbol 379 BitmapUsed by:380
Symbol 380 GraphicUses:379Used by:381
Symbol 381 MovieClipUses:380Used by:382
Symbol 382 MovieClipUses:375 378 381Used by:383
Symbol 383 MovieClipUses:368 372 382Used by:429
Symbol 384 BitmapUsed by:385 1260 1281 2016
Symbol 385 GraphicUses:384Used by:398
Symbol 386 BitmapUsed by:387 1260
Symbol 387 GraphicUses:386Used by:388
Symbol 388 MovieClipUses:387Used by:389
Symbol 389 MovieClipUses:388Used by:398
Symbol 390 GraphicUsed by:398
Symbol 391 BitmapUsed by:393 396
Symbol 392 BitmapUsed by:393 394
Symbol 393 GraphicUses:391 392Used by:398
Symbol 394 GraphicUses:392Used by:395
Symbol 395 MovieClipUses:394Used by:397
Symbol 396 GraphicUses:391Used by:397
Symbol 397 MovieClipUses:395 396Used by:398
Symbol 398 MovieClipUses:385 389 390 325 393 397Used by:429
Symbol 399 BitmapUsed by:400 1261 1283 2016
Symbol 400 GraphicUses:399Used by:408
Symbol 401 GraphicUsed by:405
Symbol 402 BitmapUsed by:403
Symbol 403 GraphicUses:402Used by:404
Symbol 404 MovieClipUses:403Used by:405
Symbol 405 MovieClip {DummyNeverFails2_fla.bateriasanim_78}Uses:401 404Used by:408
Symbol 406 BitmapUsed by:407 1261
Symbol 407 GraphicUses:406Used by:408
Symbol 408 MovieClipUses:400 405 407Used by:429
Symbol 409 BitmapUsed by:410 2016
Symbol 410 GraphicUses:409Used by:411
Symbol 411 MovieClipUses:410Used by:429 1262
Symbol 412 GraphicUsed by:429
Symbol 413 FontUsed by:414 415 416 417 418 421 422 425 426 427 1248 1249 1250 1251 2403 2404 2405 2406 2408
Symbol 414 TextUses:413Used by:429
Symbol 415 TextUses:413Used by:429
Symbol 416 TextUses:413Used by:429
Symbol 417 TextUses:413Used by:429
Symbol 418 TextUses:413Used by:429
Symbol 419 GraphicUsed by:429
Symbol 420 GraphicUsed by:429
Symbol 421 TextUses:413Used by:429
Symbol 422 TextUses:413Used by:429
Symbol 423 GraphicUsed by:429
Symbol 424 GraphicUsed by:429
Symbol 425 TextUses:413Used by:429
Symbol 426 TextUses:413Used by:429
Symbol 427 TextUses:413Used by:429
Symbol 428 GraphicUsed by:429
Symbol 429 MovieClip {DummyNeverFails2_fla.fondo_43}Uses:307 314 329 342 360 366 383 398 408 411 412 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428Used by:1706 2743
Symbol 430 GraphicUsed by:442
Symbol 431 GraphicUsed by:442
Symbol 432 GraphicUsed by:442
Symbol 433 GraphicUsed by:442
Symbol 434 GraphicUsed by:442
Symbol 435 GraphicUsed by:442
Symbol 436 GraphicUsed by:442
Symbol 437 GraphicUsed by:442
Symbol 438 GraphicUsed by:442
Symbol 439 GraphicUsed by:442
Symbol 440 GraphicUsed by:442
Symbol 441 GraphicUsed by:442
Symbol 442 MovieClip {DummyNeverFails2_fla.humo_81}Uses:430 431 432 433 434 435 436 437 438 439 440 441Used by:451 2743
Symbol 443 GraphicUsed by:451
Symbol 444 GraphicUsed by:451 458
Symbol 445 GraphicUsed by:451 458
Symbol 446 GraphicUsed by:451 458
Symbol 447 GraphicUsed by:451
Symbol 448 GraphicUsed by:449
Symbol 449 MovieClipUses:448Used by:451 458
Symbol 450 GraphicUsed by:451
Symbol 451 MovieClip {DummyNeverFails2_fla.lanzadera_dinamica_83}Uses:443 444 445 446 447 449 450 442Used by:454
Symbol 452 GraphicUsed by:453
Symbol 453 MovieClipUses:452Used by:454
Symbol 454 MovieClip {lanzadera_mc}Uses:451 453Used by:2743
Symbol 455 GraphicUsed by:458
Symbol 456 GraphicUsed by:458
Symbol 457 GraphicUsed by:458
Symbol 458 MovieClip {lanzadera_editor_mc}Uses:455 444 445 446 456 449 457Used by:1337 2743
Symbol 459 BitmapUsed by:460
Symbol 460 GraphicUses:459Used by:466 2407
Symbol 461 BitmapUsed by:462 463 464 465
Symbol 462 GraphicUses:461Used by:466 469 1321 2407
Symbol 463 GraphicUses:461Used by:466 469 1321 2407
Symbol 464 GraphicUses:461Used by:466 469 1321 2407
Symbol 465 GraphicUses:461Used by:466 469 1321 2407
Symbol 466 MovieClip {meta_circular_mc}Uses:460 462 463 464 465Used by:1337 2743
Symbol 467 BitmapUsed by:468
Symbol 468 GraphicUses:467Used by:469
Symbol 469 MovieClip {meta_cuadrada_mc}Uses:468 462 463 464 465Used by:1337 2136 2743
Symbol 470 GraphicUsed by:471
Symbol 471 MovieClipUses:470Used by:472
Symbol 472 MovieClip {mirilla_mc}Uses:471Used by:2743
Symbol 473 BitmapUsed by:474
Symbol 474 GraphicUses:473Used by:475
Symbol 475 MovieClip {pared_horizontal_mc}Uses:474Used by:2136 2743
Symbol 476 BitmapUsed by:477
Symbol 477 GraphicUses:476Used by:478
Symbol 478 MovieClip {pared_vertical_mc}Uses:477Used by:2743
Symbol 479 BitmapUsed by:480
Symbol 480 GraphicUses:479Used by:481
Symbol 481 MovieClip {cuadrado_horizontal_dinamico_mc}Uses:480Used by:2743
Symbol 482 BitmapUsed by:483
Symbol 483 GraphicUses:482Used by:484
Symbol 484 MovieClip {cuadrado_vertical_dinamico_mc}Uses:483Used by:2743
Symbol 485 BitmapUsed by:486
Symbol 486 GraphicUses:485Used by:487
Symbol 487 MovieClip {rectangulo_horizontal_dinamico_mc}Uses:486Used by:2743
Symbol 488 BitmapUsed by:489
Symbol 489 GraphicUses:488Used by:490
Symbol 490 MovieClip {rectangulo_vertical_dinamico_mc}Uses:489Used by:2743
Symbol 491 GraphicUsed by:538
Symbol 492 GraphicUsed by:538
Symbol 493 GraphicUsed by:538
Symbol 494 GraphicUsed by:538
Symbol 495 GraphicUsed by:538
Symbol 496 GraphicUsed by:538
Symbol 497 GraphicUsed by:538
Symbol 498 GraphicUsed by:538
Symbol 499 GraphicUsed by:538
Symbol 500 GraphicUsed by:538
Symbol 501 GraphicUsed by:538
Symbol 502 GraphicUsed by:538
Symbol 503 GraphicUsed by:538
Symbol 504 GraphicUsed by:538
Symbol 505 GraphicUsed by:538
Symbol 506 GraphicUsed by:538
Symbol 507 GraphicUsed by:538
Symbol 508 GraphicUsed by:538
Symbol 509 GraphicUsed by:538
Symbol 510 GraphicUsed by:538
Symbol 511 GraphicUsed by:538
Symbol 512 GraphicUsed by:538
Symbol 513 GraphicUsed by:538
Symbol 514 GraphicUsed by:538
Symbol 515 GraphicUsed by:538
Symbol 516 GraphicUsed by:538
Symbol 517 GraphicUsed by:538
Symbol 518 GraphicUsed by:538
Symbol 519 GraphicUsed by:538
Symbol 520 GraphicUsed by:538
Symbol 521 GraphicUsed by:538
Symbol 522 GraphicUsed by:538
Symbol 523 GraphicUsed by:538
Symbol 524 GraphicUsed by:538
Symbol 525 GraphicUsed by:538
Symbol 526 GraphicUsed by:538
Symbol 527 GraphicUsed by:538
Symbol 528 GraphicUsed by:538
Symbol 529 GraphicUsed by:538
Symbol 530 GraphicUsed by:538
Symbol 531 GraphicUsed by:538
Symbol 532 GraphicUsed by:538
Symbol 533 GraphicUsed by:538
Symbol 534 GraphicUsed by:538
Symbol 535 GraphicUsed by:538
Symbol 536 GraphicUsed by:538
Symbol 537 GraphicUsed by:538
Symbol 538 MovieClip {brazo_inf_d}Uses:491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537Used by:1110 1688 2073 2136 2222 2743
Symbol 539 GraphicUsed by:586
Symbol 540 GraphicUsed by:586
Symbol 541 GraphicUsed by:586
Symbol 542 GraphicUsed by:586
Symbol 543 GraphicUsed by:586
Symbol 544 GraphicUsed by:586
Symbol 545 GraphicUsed by:586
Symbol 546 GraphicUsed by:586
Symbol 547 GraphicUsed by:586
Symbol 548 GraphicUsed by:586
Symbol 549 GraphicUsed by:586
Symbol 550 GraphicUsed by:586
Symbol 551 GraphicUsed by:586
Symbol 552 GraphicUsed by:586
Symbol 553 GraphicUsed by:586
Symbol 554 GraphicUsed by:586
Symbol 555 GraphicUsed by:586
Symbol 556 GraphicUsed by:586
Symbol 557 GraphicUsed by:586
Symbol 558 GraphicUsed by:586
Symbol 559 GraphicUsed by:586
Symbol 560 GraphicUsed by:586
Symbol 561 GraphicUsed by:586
Symbol 562 GraphicUsed by:586
Symbol 563 GraphicUsed by:586
Symbol 564 GraphicUsed by:586
Symbol 565 GraphicUsed by:586
Symbol 566 GraphicUsed by:586
Symbol 567 GraphicUsed by:586
Symbol 568 GraphicUsed by:586
Symbol 569 GraphicUsed by:586
Symbol 570 GraphicUsed by:586
Symbol 571 GraphicUsed by:586
Symbol 572 GraphicUsed by:586
Symbol 573 GraphicUsed by:586
Symbol 574 GraphicUsed by:586
Symbol 575 GraphicUsed by:586
Symbol 576 GraphicUsed by:586
Symbol 577 GraphicUsed by:586
Symbol 578 GraphicUsed by:586
Symbol 579 GraphicUsed by:586
Symbol 580 GraphicUsed by:586
Symbol 581 GraphicUsed by:586
Symbol 582 GraphicUsed by:586
Symbol 583 GraphicUsed by:586
Symbol 584 GraphicUsed by:586
Symbol 585 GraphicUsed by:586
Symbol 586 MovieClip {brazo_inf_i}Uses:539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585Used by:1110 1688 2073 2136 2222 2743
Symbol 587 GraphicUsed by:631
Symbol 588 GraphicUsed by:631
Symbol 589 GraphicUsed by:631
Symbol 590 GraphicUsed by:631
Symbol 591 GraphicUsed by:631
Symbol 592 GraphicUsed by:631
Symbol 593 GraphicUsed by:631
Symbol 594 GraphicUsed by:631
Symbol 595 GraphicUsed by:631
Symbol 596 GraphicUsed by:631
Symbol 597 GraphicUsed by:631
Symbol 598 GraphicUsed by:631
Symbol 599 GraphicUsed by:631
Symbol 600 GraphicUsed by:631
Symbol 601 GraphicUsed by:631
Symbol 602 GraphicUsed by:631
Symbol 603 GraphicUsed by:631
Symbol 604 GraphicUsed by:631
Symbol 605 GraphicUsed by:631
Symbol 606 GraphicUsed by:631
Symbol 607 GraphicUsed by:631
Symbol 608 GraphicUsed by:631
Symbol 609 GraphicUsed by:631
Symbol 610 GraphicUsed by:631
Symbol 611 GraphicUsed by:631
Symbol 612 GraphicUsed by:631
Symbol 613 GraphicUsed by:631
Symbol 614 GraphicUsed by:631
Symbol 615 GraphicUsed by:631
Symbol 616 GraphicUsed by:631
Symbol 617 GraphicUsed by:631
Symbol 618 GraphicUsed by:631
Symbol 619 GraphicUsed by:631
Symbol 620 GraphicUsed by:631
Symbol 621 GraphicUsed by:631
Symbol 622 GraphicUsed by:631
Symbol 623 GraphicUsed by:631
Symbol 624 GraphicUsed by:631
Symbol 625 GraphicUsed by:631
Symbol 626 GraphicUsed by:631
Symbol 627 GraphicUsed by:631
Symbol 628 GraphicUsed by:631
Symbol 629 GraphicUsed by:631
Symbol 630 GraphicUsed by:631
Symbol 631 MovieClip {brazo_sup_d}Uses:587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630Used by:1110 1688 2073 2136 2222 2743
Symbol 632 GraphicUsed by:677
Symbol 633 GraphicUsed by:677
Symbol 634 GraphicUsed by:677
Symbol 635 GraphicUsed by:677
Symbol 636 GraphicUsed by:677
Symbol 637 GraphicUsed by:677
Symbol 638 GraphicUsed by:677
Symbol 639 GraphicUsed by:677
Symbol 640 GraphicUsed by:677
Symbol 641 GraphicUsed by:677
Symbol 642 GraphicUsed by:677
Symbol 643 GraphicUsed by:677
Symbol 644 GraphicUsed by:677
Symbol 645 GraphicUsed by:677
Symbol 646 GraphicUsed by:677
Symbol 647 GraphicUsed by:677
Symbol 648 GraphicUsed by:677
Symbol 649 GraphicUsed by:677
Symbol 650 GraphicUsed by:677
Symbol 651 GraphicUsed by:677
Symbol 652 GraphicUsed by:677
Symbol 653 GraphicUsed by:677
Symbol 654 GraphicUsed by:677
Symbol 655 GraphicUsed by:677
Symbol 656 GraphicUsed by:677
Symbol 657 GraphicUsed by:677
Symbol 658 GraphicUsed by:677
Symbol 659 GraphicUsed by:677
Symbol 660 GraphicUsed by:677
Symbol 661 GraphicUsed by:677
Symbol 662 GraphicUsed by:677
Symbol 663 GraphicUsed by:677
Symbol 664 GraphicUsed by:677
Symbol 665 GraphicUsed by:677
Symbol 666 GraphicUsed by:677
Symbol 667 GraphicUsed by:677
Symbol 668 GraphicUsed by:677
Symbol 669 GraphicUsed by:677
Symbol 670 GraphicUsed by:677
Symbol 671 GraphicUsed by:677
Symbol 672 GraphicUsed by:677
Symbol 673 GraphicUsed by:677
Symbol 674 GraphicUsed by:677
Symbol 675 GraphicUsed by:677
Symbol 676 GraphicUsed by:677
Symbol 677 MovieClip {brazo_sup_i}Uses:632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676Used by:1110 1688 2073 2136 2222 2743
Symbol 678 GraphicUsed by:729
Symbol 679 GraphicUsed by:729
Symbol 680 GraphicUsed by:729
Symbol 681 GraphicUsed by:729
Symbol 682 GraphicUsed by:729
Symbol 683 GraphicUsed by:729
Symbol 684 GraphicUsed by:729
Symbol 685 GraphicUsed by:729
Symbol 686 GraphicUsed by:729
Symbol 687 GraphicUsed by:729
Symbol 688 GraphicUsed by:729
Symbol 689 GraphicUsed by:729
Symbol 690 GraphicUsed by:729
Symbol 691 GraphicUsed by:729
Symbol 692 GraphicUsed by:729
Symbol 693 GraphicUsed by:729
Symbol 694 GraphicUsed by:729
Symbol 695 GraphicUsed by:729
Symbol 696 GraphicUsed by:729
Symbol 697 GraphicUsed by:729
Symbol 698 GraphicUsed by:729
Symbol 699 GraphicUsed by:729
Symbol 700 GraphicUsed by:729
Symbol 701 GraphicUsed by:729
Symbol 702 GraphicUsed by:729
Symbol 703 GraphicUsed by:729
Symbol 704 GraphicUsed by:729
Symbol 705 GraphicUsed by:729
Symbol 706 GraphicUsed by:729
Symbol 707 GraphicUsed by:729
Symbol 708 GraphicUsed by:729
Symbol 709 GraphicUsed by:729
Symbol 710 GraphicUsed by:729
Symbol 711 GraphicUsed by:729
Symbol 712 GraphicUsed by:729
Symbol 713 GraphicUsed by:729
Symbol 714 GraphicUsed by:729
Symbol 715 GraphicUsed by:729
Symbol 716 GraphicUsed by:729
Symbol 717 GraphicUsed by:729
Symbol 718 GraphicUsed by:729
Symbol 719 GraphicUsed by:729
Symbol 720 GraphicUsed by:729
Symbol 721 GraphicUsed by:729
Symbol 722 GraphicUsed by:729
Symbol 723 GraphicUsed by:729 2128 2274
Symbol 724 GraphicUsed by:729
Symbol 725 GraphicUsed by:729
Symbol 726 GraphicUsed by:729
Symbol 727 GraphicUsed by:729
Symbol 728 GraphicUsed by:729
Symbol 729 MovieClip {cabeza}Uses:678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728Used by:1110 1688 1845 2073 2136 2222 2517 2620 2743
Symbol 730 GraphicUsed by:731
Symbol 731 MovieClipUses:730Used by:1683 2743
Symbol 732 GraphicUsed by:733
Symbol 733 MovieClipUses:732Used by:1683 2743
Symbol 734 GraphicUsed by:735
Symbol 735 MovieClipUses:734Used by:1683 2743
Symbol 736 GraphicUsed by:737
Symbol 737 MovieClipUses:736Used by:1683 2743
Symbol 738 GraphicUsed by:739
Symbol 739 MovieClipUses:738Used by:1683 2743
Symbol 740 GraphicUsed by:741
Symbol 741 MovieClipUses:740Used by:1683 2743
Symbol 742 GraphicUsed by:743
Symbol 743 MovieClipUses:742Used by:1683 2743
Symbol 744 GraphicUsed by:745
Symbol 745 MovieClipUses:744Used by:1683 2743
Symbol 746 GraphicUsed by:747
Symbol 747 MovieClipUses:746Used by:1683 2743
Symbol 748 GraphicUsed by:749
Symbol 749 MovieClip {DummyNeverFails2_fla.torso_central_111}Uses:748Used by:1683 2743
Symbol 750 GraphicUsed by:751
Symbol 751 MovieClipUses:750Used by:1683 2743
Symbol 752 GraphicUsed by:753
Symbol 753 MovieClipUses:752Used by:1683 2743
Symbol 754 GraphicUsed by:805
Symbol 755 GraphicUsed by:805
Symbol 756 GraphicUsed by:805
Symbol 757 GraphicUsed by:805
Symbol 758 GraphicUsed by:805
Symbol 759 GraphicUsed by:805
Symbol 760 GraphicUsed by:805
Symbol 761 GraphicUsed by:805
Symbol 762 GraphicUsed by:805
Symbol 763 GraphicUsed by:805
Symbol 764 GraphicUsed by:805
Symbol 765 GraphicUsed by:805
Symbol 766 GraphicUsed by:805
Symbol 767 GraphicUsed by:805
Symbol 768 GraphicUsed by:805
Symbol 769 GraphicUsed by:805
Symbol 770 GraphicUsed by:805
Symbol 771 GraphicUsed by:805
Symbol 772 GraphicUsed by:805
Symbol 773 GraphicUsed by:805
Symbol 774 GraphicUsed by:805
Symbol 775 GraphicUsed by:805
Symbol 776 GraphicUsed by:805
Symbol 777 GraphicUsed by:805
Symbol 778 GraphicUsed by:805
Symbol 779 GraphicUsed by:805
Symbol 780 GraphicUsed by:805
Symbol 781 GraphicUsed by:805
Symbol 782 GraphicUsed by:805
Symbol 783 GraphicUsed by:805
Symbol 784 GraphicUsed by:805
Symbol 785 GraphicUsed by:805
Symbol 786 GraphicUsed by:805
Symbol 787 GraphicUsed by:805
Symbol 788 GraphicUsed by:805
Symbol 789 GraphicUsed by:805
Symbol 790 GraphicUsed by:805
Symbol 791 GraphicUsed by:805
Symbol 792 GraphicUsed by:805
Symbol 793 GraphicUsed by:805
Symbol 794 GraphicUsed by:805
Symbol 795 GraphicUsed by:805
Symbol 796 GraphicUsed by:805
Symbol 797 GraphicUsed by:805
Symbol 798 GraphicUsed by:805
Symbol 799 GraphicUsed by:805
Symbol 800 GraphicUsed by:805
Symbol 801 GraphicUsed by:805
Symbol 802 GraphicUsed by:805
Symbol 803 GraphicUsed by:805
Symbol 804 GraphicUsed by:805
Symbol 805 MovieClip {pierna_inf_d}Uses:754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804Used by:1110 1688 2073 2136 2222 2743
Symbol 806 GraphicUsed by:857
Symbol 807 GraphicUsed by:857
Symbol 808 GraphicUsed by:857
Symbol 809 GraphicUsed by:857
Symbol 810 GraphicUsed by:857
Symbol 811 GraphicUsed by:857
Symbol 812 GraphicUsed by:857
Symbol 813 GraphicUsed by:857
Symbol 814 GraphicUsed by:857
Symbol 815 GraphicUsed by:857
Symbol 816 GraphicUsed by:857
Symbol 817 GraphicUsed by:857
Symbol 818 GraphicUsed by:857
Symbol 819 GraphicUsed by:857
Symbol 820 GraphicUsed by:857
Symbol 821 GraphicUsed by:857
Symbol 822 GraphicUsed by:857
Symbol 823 GraphicUsed by:857
Symbol 824 GraphicUsed by:857
Symbol 825 GraphicUsed by:857
Symbol 826 GraphicUsed by:857
Symbol 827 GraphicUsed by:857
Symbol 828 GraphicUsed by:857
Symbol 829 GraphicUsed by:857
Symbol 830 GraphicUsed by:857
Symbol 831 GraphicUsed by:857
Symbol 832 GraphicUsed by:857
Symbol 833 GraphicUsed by:857
Symbol 834 GraphicUsed by:857
Symbol 835 GraphicUsed by:857
Symbol 836 GraphicUsed by:857
Symbol 837 GraphicUsed by:857
Symbol 838 GraphicUsed by:857
Symbol 839 GraphicUsed by:857
Symbol 840 GraphicUsed by:857
Symbol 841 GraphicUsed by:857
Symbol 842 GraphicUsed by:857
Symbol 843 GraphicUsed by:857
Symbol 844 GraphicUsed by:857
Symbol 845 GraphicUsed by:857
Symbol 846 GraphicUsed by:857
Symbol 847 GraphicUsed by:857
Symbol 848 GraphicUsed by:857
Symbol 849 GraphicUsed by:857
Symbol 850 GraphicUsed by:857
Symbol 851 GraphicUsed by:857
Symbol 852 GraphicUsed by:857
Symbol 853 GraphicUsed by:857
Symbol 854 GraphicUsed by:857
Symbol 855 GraphicUsed by:857
Symbol 856 GraphicUsed by:857
Symbol 857 MovieClip {pierna_inf_i}Uses:806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856Used by:1110 1688 2073 2136 2222 2743
Symbol 858 GraphicUsed by:907
Symbol 859 GraphicUsed by:907
Symbol 860 GraphicUsed by:907
Symbol 861 GraphicUsed by:907
Symbol 862 GraphicUsed by:907
Symbol 863 GraphicUsed by:907
Symbol 864 GraphicUsed by:907
Symbol 865 GraphicUsed by:907
Symbol 866 GraphicUsed by:907
Symbol 867 GraphicUsed by:907
Symbol 868 GraphicUsed by:907
Symbol 869 GraphicUsed by:907
Symbol 870 GraphicUsed by:907
Symbol 871 GraphicUsed by:907
Symbol 872 GraphicUsed by:907
Symbol 873 GraphicUsed by:907
Symbol 874 GraphicUsed by:907
Symbol 875 GraphicUsed by:907
Symbol 876 GraphicUsed by:907
Symbol 877 GraphicUsed by:907
Symbol 878 GraphicUsed by:907
Symbol 879 GraphicUsed by:907
Symbol 880 GraphicUsed by:907
Symbol 881 GraphicUsed by:907
Symbol 882 GraphicUsed by:907
Symbol 883 GraphicUsed by:907
Symbol 884 GraphicUsed by:907 956
Symbol 885 GraphicUsed by:907
Symbol 886 GraphicUsed by:907
Symbol 887 GraphicUsed by:907
Symbol 888 GraphicUsed by:907
Symbol 889 GraphicUsed by:907
Symbol 890 GraphicUsed by:907
Symbol 891 GraphicUsed by:907
Symbol 892 GraphicUsed by:907
Symbol 893 GraphicUsed by:907
Symbol 894 GraphicUsed by:907
Symbol 895 GraphicUsed by:907
Symbol 896 GraphicUsed by:907
Symbol 897 GraphicUsed by:907
Symbol 898 GraphicUsed by:907
Symbol 899 GraphicUsed by:907
Symbol 900 GraphicUsed by:907
Symbol 901 GraphicUsed by:907
Symbol 902 GraphicUsed by:907
Symbol 903 GraphicUsed by:907
Symbol 904 GraphicUsed by:907
Symbol 905 GraphicUsed by:907
Symbol 906 GraphicUsed by:907
Symbol 907 MovieClip {pierna_sup_d}Uses:858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906Used by:1110 1688 2073 2136 2222 2743
Symbol 908 GraphicUsed by:956
Symbol 909 GraphicUsed by:956
Symbol 910 GraphicUsed by:956
Symbol 911 GraphicUsed by:956
Symbol 912 GraphicUsed by:956
Symbol 913 GraphicUsed by:956
Symbol 914 GraphicUsed by:956
Symbol 915 GraphicUsed by:956
Symbol 916 GraphicUsed by:956
Symbol 917 GraphicUsed by:956
Symbol 918 GraphicUsed by:956
Symbol 919 GraphicUsed by:956
Symbol 920 GraphicUsed by:956
Symbol 921 GraphicUsed by:956
Symbol 922 GraphicUsed by:956
Symbol 923 GraphicUsed by:956
Symbol 924 GraphicUsed by:956
Symbol 925 GraphicUsed by:956
Symbol 926 GraphicUsed by:956
Symbol 927 GraphicUsed by:956
Symbol 928 GraphicUsed by:956
Symbol 929 GraphicUsed by:956
Symbol 930 GraphicUsed by:956
Symbol 931 GraphicUsed by:956
Symbol 932 GraphicUsed by:956
Symbol 933 GraphicUsed by:956
Symbol 934 GraphicUsed by:956
Symbol 935 GraphicUsed by:956
Symbol 936 GraphicUsed by:956
Symbol 937 GraphicUsed by:956
Symbol 938 GraphicUsed by:956
Symbol 939 GraphicUsed by:956
Symbol 940 GraphicUsed by:956
Symbol 941 GraphicUsed by:956
Symbol 942 GraphicUsed by:956
Symbol 943 GraphicUsed by:956
Symbol 944 GraphicUsed by:956
Symbol 945 GraphicUsed by:956
Symbol 946 GraphicUsed by:956
Symbol 947 GraphicUsed by:956
Symbol 948 GraphicUsed by:956
Symbol 949 GraphicUsed by:956
Symbol 950 GraphicUsed by:956
Symbol 951 GraphicUsed by:956
Symbol 952 GraphicUsed by:956
Symbol 953 GraphicUsed by:956
Symbol 954 GraphicUsed by:956
Symbol 955 GraphicUsed by:956
Symbol 956 MovieClip {pierna_sup_i}Uses:908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 884 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955Used by:1110 1688 2073 2136 2222 2743
Symbol 957 GraphicUsed by:1005
Symbol 958 GraphicUsed by:1005
Symbol 959 GraphicUsed by:1005
Symbol 960 GraphicUsed by:1005
Symbol 961 GraphicUsed by:1005
Symbol 962 GraphicUsed by:1005
Symbol 963 GraphicUsed by:1005
Symbol 964 GraphicUsed by:1005
Symbol 965 GraphicUsed by:1005
Symbol 966 GraphicUsed by:1005
Symbol 967 GraphicUsed by:1005
Symbol 968 GraphicUsed by:1005
Symbol 969 GraphicUsed by:1005
Symbol 970 GraphicUsed by:1005
Symbol 971 GraphicUsed by:1005
Symbol 972 GraphicUsed by:1005
Symbol 973 GraphicUsed by:1005
Symbol 974 GraphicUsed by:1005
Symbol 975 GraphicUsed by:1005
Symbol 976 GraphicUsed by:1005
Symbol 977 GraphicUsed by:1005
Symbol 978 GraphicUsed by:1005
Symbol 979 GraphicUsed by:1005
Symbol 980 GraphicUsed by:1005
Symbol 981 GraphicUsed by:1005
Symbol 982 GraphicUsed by:1005
Symbol 983 GraphicUsed by:1005
Symbol 984 GraphicUsed by:1005
Symbol 985 GraphicUsed by:1005
Symbol 986 GraphicUsed by:1005
Symbol 987 GraphicUsed by:1005
Symbol 988 GraphicUsed by:1005
Symbol 989 GraphicUsed by:1005
Symbol 990 GraphicUsed by:1005
Symbol 991 GraphicUsed by:1005
Symbol 992 GraphicUsed by:1005
Symbol 993 GraphicUsed by:1005
Symbol 994 GraphicUsed by:1005
Symbol 995 GraphicUsed by:1005
Symbol 996 GraphicUsed by:1005
Symbol 997 GraphicUsed by:1005
Symbol 998 GraphicUsed by:1005
Symbol 999 GraphicUsed by:1005
Symbol 1000 GraphicUsed by:1005
Symbol 1001 GraphicUsed by:1005
Symbol 1002 GraphicUsed by:1005
Symbol 1003 GraphicUsed by:1005
Symbol 1004 GraphicUsed by:1005
Symbol 1005 MovieClip {torso_central}Uses: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 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004Used by:1110 1688 2073 2136 2222
Symbol 1006 GraphicUsed by:1057
Symbol 1007 GraphicUsed by:1057
Symbol 1008 GraphicUsed by:1057
Symbol 1009 GraphicUsed by:1057
Symbol 1010 GraphicUsed by:1057
Symbol 1011 GraphicUsed by:1057
Symbol 1012 GraphicUsed by:1057
Symbol 1013 GraphicUsed by:1057
Symbol 1014 GraphicUsed by:1057
Symbol 1015 GraphicUsed by:1057
Symbol 1016 GraphicUsed by:1057
Symbol 1017 GraphicUsed by:1057
Symbol 1018 GraphicUsed by:1057
Symbol 1019 GraphicUsed by:1057
Symbol 1020 GraphicUsed by:1057
Symbol 1021 GraphicUsed by:1057
Symbol 1022 GraphicUsed by:1057
Symbol 1023 GraphicUsed by:1057
Symbol 1024 GraphicUsed by:1057
Symbol 1025 GraphicUsed by:1057
Symbol 1026 GraphicUsed by:1057
Symbol 1027 GraphicUsed by:1057
Symbol 1028 GraphicUsed by:1057
Symbol 1029 GraphicUsed by:1057
Symbol 1030 GraphicUsed by:1057
Symbol 1031 GraphicUsed by:1057
Symbol 1032 GraphicUsed by:1057
Symbol 1033 GraphicUsed by:1057
Symbol 1034 GraphicUsed by:1057
Symbol 1035 GraphicUsed by:1057
Symbol 1036 GraphicUsed by:1057
Symbol 1037 GraphicUsed by:1057
Symbol 1038 GraphicUsed by:1057
Symbol 1039 GraphicUsed by:1057
Symbol 1040 GraphicUsed by:1057
Symbol 1041 GraphicUsed by:1057
Symbol 1042 GraphicUsed by:1057
Symbol 1043 GraphicUsed by:1057
Symbol 1044 GraphicUsed by:1057
Symbol 1045 GraphicUsed by:1057
Symbol 1046 GraphicUsed by:1057
Symbol 1047 GraphicUsed by:1057
Symbol 1048 GraphicUsed by:1057
Symbol 1049 GraphicUsed by:1057
Symbol 1050 GraphicUsed by:1057
Symbol 1051 GraphicUsed by:1057
Symbol 1052 GraphicUsed by:1057
Symbol 1053 GraphicUsed by:1057
Symbol 1054 GraphicUsed by:1057
Symbol 1055 GraphicUsed by:1057
Symbol 1056 GraphicUsed by:1057
Symbol 1057 MovieClip {torso_inferior}Uses:1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056Used by:1110 1688 2073 2136 2222
Symbol 1058 GraphicUsed by:1109
Symbol 1059 GraphicUsed by:1109
Symbol 1060 GraphicUsed by:1109
Symbol 1061 GraphicUsed by:1109
Symbol 1062 GraphicUsed by:1109
Symbol 1063 GraphicUsed by:1109
Symbol 1064 GraphicUsed by:1109
Symbol 1065 GraphicUsed by:1109
Symbol 1066 GraphicUsed by:1109
Symbol 1067 GraphicUsed by:1109
Symbol 1068 GraphicUsed by:1109
Symbol 1069 GraphicUsed by:1109
Symbol 1070 GraphicUsed by:1109
Symbol 1071 GraphicUsed by:1109
Symbol 1072 GraphicUsed by:1109
Symbol 1073 GraphicUsed by:1109
Symbol 1074 GraphicUsed by:1109
Symbol 1075 GraphicUsed by:1109
Symbol 1076 GraphicUsed by:1109
Symbol 1077 GraphicUsed by:1109
Symbol 1078 GraphicUsed by:1109
Symbol 1079 GraphicUsed by:1109
Symbol 1080 GraphicUsed by:1109
Symbol 1081 GraphicUsed by:1109
Symbol 1082 GraphicUsed by:1109
Symbol 1083 GraphicUsed by:1109
Symbol 1084 GraphicUsed by:1109
Symbol 1085 GraphicUsed by:1109
Symbol 1086 GraphicUsed by:1109
Symbol 1087 GraphicUsed by:1109
Symbol 1088 GraphicUsed by:1109
Symbol 1089 GraphicUsed by:1109
Symbol 1090 GraphicUsed by:1109
Symbol 1091 GraphicUsed by:1109
Symbol 1092 GraphicUsed by:1109
Symbol 1093 GraphicUsed by:1109
Symbol 1094 GraphicUsed by:1109
Symbol 1095 GraphicUsed by:1109
Symbol 1096 GraphicUsed by:1109
Symbol 1097 GraphicUsed by:1109
Symbol 1098 GraphicUsed by:1109
Symbol 1099 GraphicUsed by:1109
Symbol 1100 GraphicUsed by:1109
Symbol 1101 GraphicUsed by:1109
Symbol 1102 GraphicUsed by:1109
Symbol 1103 GraphicUsed by:1109
Symbol 1104 GraphicUsed by:1109
Symbol 1105 GraphicUsed by:1109
Symbol 1106 GraphicUsed by:1109
Symbol 1107 GraphicUsed by:1109
Symbol 1108 GraphicUsed by:1109
Symbol 1109 MovieClip {torso_superior}Uses:1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108Used by:1110 1688 1845 2073 2136 2222 2517 2620
Symbol 1110 MovieClip {plantilla}Uses:538 586 631 677 805 907 857 956 1005 1057 1109 729Used by:2743
Symbol 1111 BitmapUsed by:1112
Symbol 1112 GraphicUses:1111Used by:1113
Symbol 1113 MovieClip {circulo_estatico_1_mc}Uses:1112Used by:2743
Symbol 1114 BitmapUsed by:1115
Symbol 1115 GraphicUses:1114Used by:1116
Symbol 1116 MovieClip {circulo_estatico_2_mc}Uses:1115Used by:2743
Symbol 1117 BitmapUsed by:1118
Symbol 1118 GraphicUses:1117Used by:1119
Symbol 1119 MovieClip {circulo_estatico_3_mc}Uses:1118Used by:2743
Symbol 1120 BitmapUsed by:1121
Symbol 1121 GraphicUses:1120Used by:1122
Symbol 1122 MovieClip {cuadrado_estatico_1_mc}Uses:1121Used by:2743
Symbol 1123 BitmapUsed by:1124
Symbol 1124 GraphicUses:1123Used by:1125
Symbol 1125 MovieClip {cuadrado_estatico_2_mc}Uses:1124Used by:2743
Symbol 1126 BitmapUsed by:1127
Symbol 1127 GraphicUses:1126Used by:1128
Symbol 1128 MovieClip {cuadrado_estatico_3_mc}Uses:1127Used by:2743
Symbol 1129 BitmapUsed by:1130
Symbol 1130 GraphicUses:1129Used by:1131
Symbol 1131 MovieClip {rectangulo_horizontal_estatico_1_mc}Uses:1130Used by:2743
Symbol 1132 BitmapUsed by:1133
Symbol 1133 GraphicUses:1132Used by:1134
Symbol 1134 MovieClip {rectangulo_horizontal_estatico_2_mc}Uses:1133Used by:2743
Symbol 1135 BitmapUsed by:1136
Symbol 1136 GraphicUses:1135Used by:1137
Symbol 1137 MovieClip {rectangulo_horizontal_estatico_3_mc}Uses:1136Used by:2136 2743
Symbol 1138 BitmapUsed by:1139
Symbol 1139 GraphicUses:1138Used by:1140
Symbol 1140 MovieClip {rectangulo_vertical_estatico_1_mc}Uses:1139Used by:2743
Symbol 1141 BitmapUsed by:1142
Symbol 1142 GraphicUses:1141Used by:1143
Symbol 1143 MovieClip {rectangulo_vertical_estatico_2_mc}Uses:1142Used by:2743
Symbol 1144 BitmapUsed by:1145
Symbol 1145 GraphicUses:1144Used by:1146
Symbol 1146 MovieClip {rectangulo_vertical_estatico_3_mc}Uses:1145Used by:2743
Symbol 1147 BitmapUsed by:1148
Symbol 1148 GraphicUses:1147Used by:1158 1160 1161 1162 1163 1164 1165 1166
Symbol 1149 GraphicUsed by:1158
Symbol 1150 GraphicUsed by:1157
Symbol 1151 GraphicUsed by:1157
Symbol 1152 GraphicUsed by:1157
Symbol 1153 GraphicUsed by:1157
Symbol 1154 GraphicUsed by:1157
Symbol 1155 GraphicUsed by:1157
Symbol 1156 GraphicUsed by:1157
Symbol 1157 MovieClipUses:1150 1151 1152 1153 1154 1155 1156Used by:1158 1160 1161 1162 1163 1164 1165 1166
Symbol 1158 MovieClip {circulo_impulsor_e_mc}Uses:1148 1149 1157Used by:1326 2743
Symbol 1159 GraphicUsed by:1160 1161 1162 1163 1164 1165 1166
Symbol 1160 MovieClip {circulo_impulsor_n_mc}Uses:1148 1159 1157Used by:2743
Symbol 1161 MovieClip {circulo_impulsor_ne_mc}Uses:1148 1159 1157Used by:2743
Symbol 1162 MovieClip {circulo_impulsor_no_mc}Uses:1148 1159 1157Used by:2743
Symbol 1163 MovieClip {circulo_impulsor_o_mc}Uses:1148 1159 1157Used by:2743
Symbol 1164 MovieClip {circulo_impulsor_s_mc}Uses:1148 1159 1157Used by:2743
Symbol 1165 MovieClip {circulo_impulsor_se_mc}Uses:1148 1159 1157Used by:2743
Symbol 1166 MovieClip {circulo_impulsor_so_mc}Uses:1148 1159 1157Used by:2743
Symbol 1167 GraphicUsed by:1169
Symbol 1168 TextUses:180Used by:1169
Symbol 1169 MovieClip {item_mc}Uses:1167 1168Used by:2743
Symbol 1170 BitmapUsed by:1171 1173 1175 1177 1179 1181 1183 1185 1187 1189 1191 1193 1195 1197
Symbol 1171 GraphicUses:1170Used by:1172
Symbol 1172 MovieClip {item_01}Uses:1171Used by:2743
Symbol 1173 GraphicUses:1170Used by:1174
Symbol 1174 MovieClip {item_02}Uses:1173Used by:2743
Symbol 1175 GraphicUses:1170Used by:1176
Symbol 1176 MovieClip {item_03}Uses:1175Used by:2743
Symbol 1177 GraphicUses:1170Used by:1178
Symbol 1178 MovieClip {item_04}Uses:1177Used by:2743
Symbol 1179 GraphicUses:1170Used by:1180
Symbol 1180 MovieClip {item_05}Uses:1179Used by:2743
Symbol 1181 GraphicUses:1170Used by:1182
Symbol 1182 MovieClip {item_06}Uses:1181Used by:2743
Symbol 1183 GraphicUses:1170Used by:1184
Symbol 1184 MovieClip {item_07}Uses:1183Used by:2743
Symbol 1185 GraphicUses:1170Used by:1186
Symbol 1186 MovieClip {item_08}Uses:1185Used by:2743
Symbol 1187 GraphicUses:1170Used by:1188
Symbol 1188 MovieClip {item_09}Uses:1187Used by:2743
Symbol 1189 GraphicUses:1170Used by:1190
Symbol 1190 MovieClip {item_10}Uses:1189Used by:2743
Symbol 1191 GraphicUses:1170Used by:1192
Symbol 1192 MovieClip {item_11}Uses:1191Used by:2743
Symbol 1193 GraphicUses:1170Used by:1194
Symbol 1194 MovieClip {item_12}Uses:1193Used by:2743
Symbol 1195 GraphicUses:1170Used by:1196
Symbol 1196 MovieClip {item_13}Uses:1195Used by:2743
Symbol 1197 GraphicUses:1170Used by:1198
Symbol 1198 MovieClip {item_14}Uses:1197Used by:2743
Symbol 1199 TextUses:180Used by:1200
Symbol 1200 MovieClip {item_15}Uses:1199Used by:2743
Symbol 1201 BitmapUsed by:1202
Symbol 1202 GraphicUses:1201Used by:1203
Symbol 1203 MovieClip {circulo_noestatico_1_mc}Uses:1202Used by:2743
Symbol 1204 BitmapUsed by:1205
Symbol 1205 GraphicUses:1204Used by:1206
Symbol 1206 MovieClip {circulo_noestatico_2_mc}Uses:1205Used by:2743
Symbol 1207 BitmapUsed by:1208
Symbol 1208 GraphicUses:1207Used by:1209
Symbol 1209 MovieClip {circulo_noestatico_3_mc}Uses:1208Used by:2743
Symbol 1210 BitmapUsed by:1211
Symbol 1211 GraphicUses:1210Used by:1212
Symbol 1212 MovieClip {cuadrado_noestatico_1_mc}Uses:1211Used by:2743
Symbol 1213 BitmapUsed by:1214
Symbol 1214 GraphicUses:1213Used by:1215
Symbol 1215 MovieClip {cuadrado_noestatico_2_mc}Uses:1214Used by:2743
Symbol 1216 BitmapUsed by:1217
Symbol 1217 GraphicUses:1216Used by:1218
Symbol 1218 MovieClip {cuadrado_noestatico_3_mc}Uses:1217Used by:2743
Symbol 1219 BitmapUsed by:1220
Symbol 1220 GraphicUses:1219Used by:1221
Symbol 1221 MovieClip {rectangulo_horizontal_noestatico_1_mc}Uses:1220Used by:2743
Symbol 1222 BitmapUsed by:1223
Symbol 1223 GraphicUses:1222Used by:1224
Symbol 1224 MovieClip {rectangulo_horizontal_noestatico_2_mc}Uses:1223Used by:2743
Symbol 1225 BitmapUsed by:1226
Symbol 1226 GraphicUses:1225Used by:1227
Symbol 1227 MovieClip {rectangulo_horizontal_noestatico_3_mc}Uses:1226Used by:2743
Symbol 1228 BitmapUsed by:1229
Symbol 1229 GraphicUses:1228Used by:1230
Symbol 1230 MovieClip {rectangulo_horizontal_noestatico_4_mc}Uses:1229Used by:2743
Symbol 1231 BitmapUsed by:1232
Symbol 1232 GraphicUses:1231Used by:1233
Symbol 1233 MovieClip {rectangulo_vertical_noestatico_1_mc}Uses:1232Used by:2743
Symbol 1234 BitmapUsed by:1235
Symbol 1235 GraphicUses:1234Used by:1236
Symbol 1236 MovieClip {rectangulo_vertical_noestatico_2_mc}Uses:1235Used by:2743
Symbol 1237 BitmapUsed by:1238
Symbol 1238 GraphicUses:1237Used by:1239
Symbol 1239 MovieClip {rectangulo_vertical_noestatico_3_mc}Uses:1238Used by:2743
Symbol 1240 BitmapUsed by:1241
Symbol 1241 GraphicUses:1240Used by:1242
Symbol 1242 MovieClip {rectangulo_vertical_noestatico_4_mc}Uses:1241Used by:2743
Symbol 1243 GraphicUsed by:1245
Symbol 1244 ButtonUses:225 226 197 227 196Used by:1245 1353 1382 1401 1421 1787 2315
Symbol 1245 MovieClip {Congratulations}Uses:1243 1244Used by:2743
Symbol 1246 GraphicUses:1Used by:1252
Symbol 1247 ButtonUses:183 185 186 187Used by:1252 1698 2077 2267 2308
Symbol 1248 TextUses:413Used by:1252
Symbol 1249 TextUses:413Used by:1252
Symbol 1250 TextUses:413Used by:1252
Symbol 1251 TextUses:413Used by:1252
Symbol 1252 MovieClip {Creditos}Uses:1246 28 32 1247 1248 1249 1250 1251Used by:2743
Symbol 1253 GraphicUsed by:1423 2077 2315 2409
Symbol 1254 GraphicUsed by:1262
Symbol 1255 EditableTextUses:184Used by:1262
Symbol 1256 EditableTextUses:184Used by:1262
Symbol 1257 GraphicUses:315Used by:1262
Symbol 1258 GraphicUses:340 336 332 330Used by:1262
Symbol 1259 GraphicUses:348 343Used by:1262
Symbol 1260 GraphicUses:386 384Used by:1262
Symbol 1261 GraphicUses:406 399Used by:1262
Symbol 1262 MovieClipUses:307 309 1254 1255 1256 1257 1258 1259 363 365 368 1260 1261 411Used by:1266 2743
Symbol 1263 GraphicUsed by:1264
Symbol 1264 MovieClip {VCam_AS3_Interactive}Uses:1263Used by:1266 1706
Symbol 1265 GraphicUsed by:1266 1706 1774
Symbol 1266 MovieClip {DummyNeverFails2_fla.Editor_Lienzo_179}Uses:1262 1264 1265Used by:1423
Symbol 1267 GraphicUsed by:1337
Symbol 1268 GraphicUses:308Used by:1270
Symbol 1269 GraphicUsed by:1270 1272 1274 1276 1278 1280 1282 1284
Symbol 1270 MovieClipUses:1268 1269Used by:1337
Symbol 1271 GraphicUses:315Used by:1272
Symbol 1272 MovieClipUses:1271 1269Used by:1337
Symbol 1273 GraphicUses:330Used by:1274
Symbol 1274 MovieClipUses:1273 1269Used by:1337
Symbol 1275 GraphicUses:348Used by:1276
Symbol 1276 MovieClipUses:1275 1269Used by:1337
Symbol 1277 GraphicUses:364Used by:1278
Symbol 1278 MovieClipUses:1277 1269Used by:1337
Symbol 1279 GraphicUses:367Used by:1280
Symbol 1280 MovieClipUses:1279 1269Used by:1337
Symbol 1281 GraphicUses:384Used by:1282
Symbol 1282 MovieClipUses:1281 1269Used by:1337
Symbol 1283 GraphicUses:399Used by:1284
Symbol 1284 MovieClipUses:1283 1269Used by:1337
Symbol 1285 GraphicUsed by:1286
Symbol 1286 MovieClipUses:1285Used by:1290 1297
Symbol 1287 BitmapUsed by:1288
Symbol 1288 GraphicUses:1287Used by:1289
Symbol 1289 MovieClipUses:1288Used by:1290 1293
Symbol 1290 MovieClip {estatico_circulo_mc}Uses:1286 1289Used by:1337 2743
Symbol 1291 GraphicUsed by:1292
Symbol 1292 MovieClipUses:1291Used by:1293 1298 1302 1305
Symbol 1293 MovieClip {estatico_cuadrado_mc}Uses:1292 1289Used by:1337 2743
Symbol 1294 BitmapUsed by:1295
Symbol 1295 GraphicUses:1294Used by:1296
Symbol 1296 MovieClipUses:1295Used by:1297 1298
Symbol 1297 MovieClip {dinamico_circulo_mc}Uses:1286 1296Used by:1337 2743
Symbol 1298 MovieClip {dinamico_cuadrado_mc}Uses:1292 1296Used by:1337 2743
Symbol 1299 BitmapUsed by:1300 1303
Symbol 1300 GraphicUses:1299Used by:1301
Symbol 1301 MovieClipUses:1300Used by:1302
Symbol 1302 MovieClip {autonomo_vertical_mc}Uses:1292 1301Used by:1337 2743
Symbol 1303 GraphicUses:1299Used by:1304
Symbol 1304 MovieClipUses:1303Used by:1305 2372
Symbol 1305 MovieClip {autonomo_horizontal_mc}Uses:1292 1304Used by:1337 2743
Symbol 1306 TextUses:184Used by:1337
Symbol 1307 TextUses:184Used by:1337
Symbol 1308 TextUses:184Used by:1337
Symbol 1309 TextUses:184Used by:1337
Symbol 1310 TextUses:184Used by:1337
Symbol 1311 TextUses:184Used by:1337
Symbol 1312 TextUses:184Used by:1337
Symbol 1313 TextUses:184Used by:1337
Symbol 1314 TextUses:184Used by:1337
Symbol 1315 TextUses:184Used by:1337
Symbol 1316 TextUses:184Used by:1337
Symbol 1317 TextUses:184Used by:1337
Symbol 1318 TextUses:184Used by:1337
Symbol 1319 TextUses:184Used by:1337
Symbol 1320 GraphicUsed by:1321
Symbol 1321 MovieClip {meta_estatica_mc}Uses:1320 462 463 464 465Used by:1337 2743
Symbol 1322 BitmapUsed by:1323
Symbol 1323 GraphicUses:1322Used by:1324
Symbol 1324 MovieClipUses:1323Used by:1325 2079
Symbol 1325 MovieClip {circulo_moneda_mc}Uses:1324Used by:1337 2743
Symbol 1326 MovieClip {circulo_impulsor_mc}Uses:1158Used by:1337 2743
Symbol 1327 BitmapUsed by:1328
Symbol 1328 GraphicUses:1327Used by:1330
Symbol 1329 MovieClipUses:189Used by:1330
Symbol 1330 MovieClip {circulo_negativo_mc}Uses:1328 1329Used by:1337 2743
Symbol 1331 BitmapUsed by:1332
Symbol 1332 GraphicUses:1331Used by:1335
Symbol 1333 GraphicUsed by:1334
Symbol 1334 MovieClipUses:1333Used by:1335
Symbol 1335 MovieClip {circulo_positivo_mc}Uses:1332 1334Used by:1337 2743
Symbol 1336 GraphicUsed by:1337
Symbol 1337 MovieClip {DummyNeverFails2_fla.Editor_Objetos_182}Uses:1267 1270 1272 1274 1276 1278 1280 1282 1284 1290 1293 1297 1298 1302 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1321 469 466 1325 1326 1330 1335 458 1336Used by:1423
Symbol 1338 GraphicUsed by:1353
Symbol 1339 ButtonUses:194 195 197 199 196Used by:1353
Symbol 1340 ButtonUses:242 243 197 244 196Used by:1353 1401
Symbol 1341 ButtonUses:274 275 197 276 196Used by:1353 1382
Symbol 1342 ButtonUses:298 299 197 300 196Used by:1353
Symbol 1343 EditableTextUses:180Used by:1353
Symbol 1344 GraphicUses:193Used by:1347
Symbol 1345 GraphicUses:193Used by:1347
Symbol 1346 TextUses:198Used by:1347
Symbol 1347 ButtonUses:1344 1345 197 1346 196Used by:1353
Symbol 1348 GraphicUses:193Used by:1350
Symbol 1349 GraphicUses:193Used by:1350
Symbol 1350 MovieClip {DummyNeverFails2_fla.tools_button_217}Uses:1348 1349Used by:1353
Symbol 1351 ButtonUses:302 303 197 304 196Used by:1353 1787
Symbol 1352 ButtonUses:233Used by:1353
Symbol 1353 MovieClip {DummyNeverFails2_fla.Editor_Menu_211}Uses:1338 1339 1244 1340 1341 1342 1343 292 1347 254 1350 1351 1352Used by:1423 2222
Symbol 1354 GraphicUsed by:1355
Symbol 1355 MovieClipUses:1354Used by:1423 1787
Symbol 1356 GraphicUsed by:1361
Symbol 1357 GraphicUsed by:1360
Symbol 1358 FontUsed by:1359
Symbol 1359 EditableTextUses:1358Used by:1360
Symbol 1360 MovieClip {DummyNeverFails2_fla.sliderInfo_mc_222}Uses:1357 1359Used by:1361
Symbol 1361 MovieClip {DummyNeverFails2_fla.slider_mc_221}Uses:1356 1360Used by:1423 1787
Symbol 1362 GraphicUsed by:1423
Symbol 1363 GraphicUsed by:1382
Symbol 1364 GraphicUsed by:1368 1386
Symbol 1365 GraphicUsed by:1368
Symbol 1366 GraphicUsed by:1368 1405
Symbol 1367 GraphicUsed by:1368 1386
Symbol 1368 MovieClipUses:1364 1365 1366 1367Used by:1382
Symbol 1369 GraphicUses:193Used by:1372
Symbol 1370 GraphicUses:193Used by:1372
Symbol 1371 TextUses:198Used by:1372
Symbol 1372 ButtonUses:1369 1370 197 1371 196Used by:1382
Symbol 1373 EditableTextUses:198Used by:1382
Symbol 1374 TextUses:184Used by:1382
Symbol 1375 EditableTextUses:184Used by:1382
Symbol 1376 GraphicUsed by:1379 1399
Symbol 1377 GraphicUsed by:1379 1399
Symbol 1378 GraphicUsed by:1379
Symbol 1379 MovieClipUses:1376 1377 1378Used by:1382
Symbol 1380 EditableTextUses:198Used by:1382
Symbol 1381 ButtonUses:201 202 197 203 196Used by:1382
Symbol 1382 MovieClip {DummyNeverFails2_fla.Editor_Guardar_233}Uses:1363 1368 1244 1341 1372 42 1373 139 1374 1375 1379 1380 1381Used by:1423 2222
Symbol 1383 GraphicUsed by:1401 1421 2381
Symbol 1384 GraphicUsed by:1386
Symbol 1385 GraphicUsed by:1386
Symbol 1386 MovieClipUses:1364 1384 1385 1367Used by:1401
Symbol 1387 GraphicUses:193Used by:1390
Symbol 1388 GraphicUses:193Used by:1390
Symbol 1389 TextUses:198Used by:1390
Symbol 1390 ButtonUses:1387 1388 197 1389 196Used by:1401
Symbol 1391 GraphicUses:193Used by:1394
Symbol 1392 GraphicUses:193Used by:1394
Symbol 1393 TextUses:198Used by:1394
Symbol 1394 ButtonUses:1391 1392 197 1393 196Used by:1401
Symbol 1395 FontUsed by:1396 1397
Symbol 1396 TextUses:1395Used by:1401
Symbol 1397 EditableTextUses:1395Used by:1401
Symbol 1398 GraphicUsed by:1399
Symbol 1399 MovieClipUses:1376 1377 1398Used by:1401
Symbol 1400 EditableTextUses:180Used by:1401
Symbol 1401 MovieClip {DummyNeverFails2_fla.Editor_Cargar_263}Uses:1383 1386 1244 1340 1390 1394 42 139 1396 1397 1399 1400Used by:1423 2222
Symbol 1402 GraphicUsed by:1405
Symbol 1403 GraphicUsed by:1405
Symbol 1404 GraphicUsed by:1405
Symbol 1405 MovieClipUses:1402 1403 1366 1404Used by:1421
Symbol 1406 GraphicUsed by:1407 2379
Symbol 1407 MovieClip {DummyNeverFails2_fla.miniatura_submit_270}Uses:98 1406Used by:1421
Symbol 1408 EditableTextUses:198Used by:1421
Symbol 1409 TextUses:184Used by:1421
Symbol 1410 EditableTextUses:198Used by:1421
Symbol 1411 GraphicUses:193Used by:1414
Symbol 1412 GraphicUses:193Used by:1414
Symbol 1413 TextUses:198Used by:1414
Symbol 1414 ButtonUses:1411 1412 197 1413 196Used by:1421 2315
Symbol 1415 TextUses:184Used by:1421
Symbol 1416 TextUses:184Used by:1421
Symbol 1417 EditableTextUses:184Used by:1421
Symbol 1418 EditableTextUses:184Used by:1421
Symbol 1419 EditableTextUses:184Used by:1421
Symbol 1420 EditableTextUses:184Used by:1421
Symbol 1421 MovieClip {DummyNeverFails2_fla.Editor_Submit_268}Uses:1383 1405 1407 1244 1408 1409 1410 1414 1415 1416 1417 1418 1419 1420Used by:1423 2222
Symbol 1422 MovieClipUses:98Used by:1423 1699 1788 2222 2334 2377
Symbol 1423 MovieClip {Editor}Uses:1253 1266 1337 1353 1355 1361 1362 179 1382 1401 1421 1422Used by:2743
Symbol 1424 GraphicUsed by:1425
Symbol 1425 MovieClipUses:1424Used by:2743
Symbol 1426 GraphicUsed by:1427
Symbol 1427 MovieClipUses:1426Used by:1428 2743
Symbol 1428 MovieClipUses:1427Used by:1688 2073 2743
Symbol 1429 BitmapUsed by:1431
Symbol 1430 BitmapUsed by:1431 1435
Symbol 1431 GraphicUses:1429 1430Used by:1434
Symbol 1432 BitmapUsed by:1433
Symbol 1433 GraphicUses:1432Used by:1434 1441 1443 1445 1447 1449 1451 1453 1455 1457 1459 1461 1463 1465 1467 1469 1471 1473 1475 1477 1479 1481 1483 1485 1487 1489 1491 1493 1495 1497 1499 1501 1503 1505 1507 1509 1511 1513 1515 1517 1519 1521 1523 1525 1528 1530 1532 1534 1536 1538 1540 1542
Symbol 1434 MovieClipUses:1431 1433Used by:2743
Symbol 1435 GraphicUses:1430Used by:1441 1443 1445 1447 1449 1451 1453 1455 1457 1459 1461 1463 1465 1467 1469 1471 1473 1475 1477 1479 1481 1483 1485 1487 1489 1491 1493 1495 1497 1499 1501 1503 1505 1507 1509 1511 1513 1515 1517 1519 1521 1523 1525 1528 1530 1532 1534 1536 1538 1540 1542
Symbol 1436 GraphicUsed by:1441
Symbol 1437 GraphicUsed by:1438
Symbol 1438 MovieClipUses:1437Used by:1441 1443 1445 1447 1449 1451 1453 1455 1457 1459 1461 1463 1465 1467 1469 1471 1473 1475 1477 1479 1481 1483 1485 1487 1489 1491 1493 1495 1497 1499 1501 1503 1505 1507 1509 1511 1513 1515 1517 1519 1521 1523 1525 1530 1532 1534 1536 1538 1540 1542
Symbol 1439 BitmapUsed by:1440
Symbol 1440 GraphicUses:1439Used by:1441 1443 1445 1447 1449 1451 1453 1455 1457 1459 1461 1463 1465 1467 1469 1471 1473 1475 1477 1479 1481 1483 1485 1487 1489 1491 1493 1495 1497 1499 1501 1503 1505 1507 1509 1511 1513 1515 1517 1519 1521 1523 1525 1528 1530 1532 1534 1536 1538 1540 1542
Symbol 1441 MovieClipUses:1435 1436 1433 1438 1440Used by:2743
Symbol 1442 GraphicUsed by:1443
Symbol 1443 MovieClipUses:1435 1442 1433 1438 1440Used by:2743
Symbol 1444 GraphicUsed by:1445
Symbol 1445 MovieClipUses:1435 1444 1433 1438 1440Used by:2743
Symbol 1446 GraphicUsed by:1447
Symbol 1447 MovieClipUses:1435 1446 1433 1438 1440Used by:2743
Symbol 1448 GraphicUsed by:1449
Symbol 1449 MovieClipUses:1435 1448 1433 1438 1440Used by:2743
Symbol 1450 GraphicUsed by:1451
Symbol 1451 MovieClipUses:1435 1450 1433 1438 1440Used by:2743
Symbol 1452 GraphicUsed by:1453
Symbol 1453 MovieClipUses:1435 1452 1433 1438 1440Used by:2743
Symbol 1454 GraphicUsed by:1455
Symbol 1455 MovieClipUses:1435 1454 1433 1438 1440Used by:2743
Symbol 1456 GraphicUsed by:1457
Symbol 1457 MovieClipUses:1435 1456 1433 1438 1440Used by:2743
Symbol 1458 GraphicUsed by:1459
Symbol 1459 MovieClipUses:1435 1458 1433 1438 1440Used by:2743
Symbol 1460 GraphicUsed by:1461
Symbol 1461 MovieClipUses:1435 1460 1433 1438 1440Used by:2743
Symbol 1462 GraphicUsed by:1463
Symbol 1463 MovieClipUses:1435 1462 1433 1438 1440Used by:2743
Symbol 1464 GraphicUsed by:1465
Symbol 1465 MovieClipUses:1435 1464 1433 1438 1440Used by:2743
Symbol 1466 GraphicUsed by:1467
Symbol 1467 MovieClipUses:1435 1466 1433 1438 1440Used by:2743
Symbol 1468 GraphicUsed by:1469
Symbol 1469 MovieClipUses:1435 1468 1433 1438 1440Used by:2743
Symbol 1470 GraphicUsed by:1471
Symbol 1471 MovieClipUses:1435 1470 1433 1438 1440Used by:2743
Symbol 1472 GraphicUsed by:1473
Symbol 1473 MovieClipUses:1435 1472 1433 1438 1440Used by:2743
Symbol 1474 GraphicUsed by:1475
Symbol 1475 MovieClipUses:1435 1474 1433 1438 1440Used by:2743
Symbol 1476 GraphicUsed by:1477
Symbol 1477 MovieClipUses:1435 1476 1433 1438 1440Used by:2743
Symbol 1478 GraphicUsed by:1479
Symbol 1479 MovieClipUses:1435 1478 1433 1438 1440Used by:2743
Symbol 1480 GraphicUsed by:1481
Symbol 1481 MovieClipUses:1435 1480 1433 1438 1440Used by:2743
Symbol 1482 GraphicUsed by:1483
Symbol 1483 MovieClipUses:1435 1482 1433 1438 1440Used by:2743
Symbol 1484 GraphicUsed by:1485
Symbol 1485 MovieClipUses:1435 1484 1433 1438 1440Used by:2743
Symbol 1486 GraphicUsed by:1487
Symbol 1487 MovieClipUses:1435 1486 1433 1438 1440Used by:2743
Symbol 1488 GraphicUsed by:1489
Symbol 1489 MovieClipUses:1435 1488 1433 1438 1440Used by:2743
Symbol 1490 GraphicUsed by:1491
Symbol 1491 MovieClipUses:1435 1490 1433 1438 1440Used by:2743
Symbol 1492 GraphicUsed by:1493
Symbol 1493 MovieClipUses:1435 1492 1433 1438 1440Used by:2743
Symbol 1494 GraphicUsed by:1495
Symbol 1495 MovieClipUses:1435 1494 1433 1438 1440Used by:2743
Symbol 1496 GraphicUsed by:1497
Symbol 1497 MovieClipUses:1435 1496 1433 1438 1440Used by:2743
Symbol 1498 GraphicUsed by:1499
Symbol 1499 MovieClipUses:1435 1498 1433 1438 1440Used by:2743
Symbol 1500 GraphicUsed by:1501
Symbol 1501 MovieClipUses:1435 1500 1433 1438 1440Used by:2743
Symbol 1502 GraphicUsed by:1503
Symbol 1503 MovieClipUses:1435 1502 1433 1438 1440Used by:2743
Symbol 1504 GraphicUsed by:1505
Symbol 1505 MovieClipUses:1435 1504 1433 1438 1440Used by:2743
Symbol 1506 GraphicUsed by:1507
Symbol 1507 MovieClipUses:1435 1506 1433 1438 1440Used by:2743
Symbol 1508 GraphicUsed by:1509
Symbol 1509 MovieClipUses:1435 1508 1433 1438 1440Used by:2743
Symbol 1510 GraphicUsed by:1511
Symbol 1511 MovieClipUses:1435 1510 1433 1438 1440Used by:2743
Symbol 1512 GraphicUsed by:1513
Symbol 1513 MovieClipUses:1435 1512 1433 1438 1440Used by:2743
Symbol 1514 GraphicUsed by:1515
Symbol 1515 MovieClipUses:1435 1514 1433 1438 1440Used by:2743
Symbol 1516 GraphicUsed by:1517
Symbol 1517 MovieClipUses:1435 1516 1433 1438 1440Used by:2743
Symbol 1518 GraphicUsed by:1519
Symbol 1519 MovieClipUses:1435 1518 1433 1438 1440Used by:2743
Symbol 1520 GraphicUsed by:1521
Symbol 1521 MovieClipUses:1435 1520 1433 1438 1440Used by:2743
Symbol 1522 GraphicUsed by:1523
Symbol 1523 MovieClipUses:1435 1522 1433 1438 1440Used by:2743
Symbol 1524 GraphicUsed by:1525
Symbol 1525 MovieClipUses:1435 1524 1433 1438 1440Used by:2743
Symbol 1526 GraphicUsed by:1528
Symbol 1527 GraphicUsed by:1528
Symbol 1528 MovieClipUses:1435 1526 1433 1527 1440Used by:2743
Symbol 1529 GraphicUsed by:1530
Symbol 1530 MovieClipUses:1435 1529 1433 1438 1440Used by:2743
Symbol 1531 GraphicUsed by:1532
Symbol 1532 MovieClipUses:1435 1531 1433 1438 1440Used by:2743
Symbol 1533 GraphicUsed by:1534
Symbol 1534 MovieClipUses:1435 1533 1433 1438 1440Used by:2743
Symbol 1535 GraphicUsed by:1536
Symbol 1536 MovieClipUses:1435 1535 1433 1438 1440Used by:2743
Symbol 1537 GraphicUsed by:1538
Symbol 1538 MovieClipUses:1435 1537 1433 1438 1440Used by:2743
Symbol 1539 GraphicUsed by:1540
Symbol 1540 MovieClipUses:1435 1539 1433 1438 1440Used by:2743
Symbol 1541 GraphicUsed by:1542
Symbol 1542 MovieClipUses:1435 1541 1433 1438 1440Used by:2743
Symbol 1543 BitmapUsed by:1544 1546
Symbol 1544 GraphicUses:1543Used by:1575
Symbol 1545 TextUses:29Used by:1575
Symbol 1546 GraphicUses:1543Used by:1575
Symbol 1547 TextUses:29Used by:1575
Symbol 1548 TextUses:29Used by:1575
Symbol 1549 TextUses:29Used by:1575
Symbol 1550 TextUses:29Used by:1575
Symbol 1551 TextUses:29Used by:1575
Symbol 1552 TextUses:29Used by:1575
Symbol 1553 TextUses:29Used by:1575
Symbol 1554 TextUses:29Used by:1575
Symbol 1555 TextUses:29Used by:1575
Symbol 1556 TextUses:29Used by:1575
Symbol 1557 TextUses:29Used by:1575
Symbol 1558 TextUses:29Used by:1575
Symbol 1559 TextUses:29Used by:1575
Symbol 1560 TextUses:29Used by:1575
Symbol 1561 TextUses:29Used by:1575
Symbol 1562 TextUses:29Used by:1575
Symbol 1563 TextUses:29Used by:1575
Symbol 1564 TextUses:29Used by:1575
Symbol 1565 TextUses:29Used by:1575
Symbol 1566 TextUses:29Used by:1575
Symbol 1567 TextUses:29Used by:1575
Symbol 1568 TextUses:29Used by:1575
Symbol 1569 TextUses:29Used by:1575
Symbol 1570 TextUses:29Used by:1575
Symbol 1571 TextUses:29Used by:1575
Symbol 1572 TextUses:29Used by:1575
Symbol 1573 TextUses:29Used by:1575
Symbol 1574 TextUses:29Used by:1575
Symbol 1575 MovieClipUses:1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574Used by:2743
Symbol 1576 BitmapUsed by:1577 1579
Symbol 1577 GraphicUses:1576Used by:1630
Symbol 1578 TextUses:29Used by:1630
Symbol 1579 GraphicUses:1576Used by:1630
Symbol 1580 TextUses:29Used by:1630
Symbol 1581 TextUses:29Used by:1630
Symbol 1582 TextUses:29Used by:1630
Symbol 1583 TextUses:29Used by:1630
Symbol 1584 TextUses:29Used by:1630
Symbol 1585 TextUses:29Used by:1630
Symbol 1586 TextUses:29Used by:1630
Symbol 1587 TextUses:29Used by:1630
Symbol 1588 TextUses:29Used by:1630
Symbol 1589 TextUses:29Used by:1630
Symbol 1590 TextUses:29Used by:1630
Symbol 1591 TextUses:29Used by:1630
Symbol 1592 TextUses:29Used by:1630
Symbol 1593 TextUses:29Used by:1630
Symbol 1594 TextUses:29Used by:1630
Symbol 1595 TextUses:29Used by:1630
Symbol 1596 TextUses:29Used by:1630
Symbol 1597 TextUses:29Used by:1630
Symbol 1598 TextUses:29Used by:1630
Symbol 1599 TextUses:29Used by:1630
Symbol 1600 TextUses:29Used by:1630
Symbol 1601 TextUses:29Used by:1630
Symbol 1602 TextUses:29Used by:1630
Symbol 1603 TextUses:29Used by:1630
Symbol 1604 TextUses:29Used by:1630
Symbol 1605 TextUses:29Used by:1630
Symbol 1606 TextUses:29Used by:1630
Symbol 1607 TextUses:29Used by:1630
Symbol 1608 TextUses:29Used by:1630
Symbol 1609 TextUses:29Used by:1630
Symbol 1610 TextUses:29Used by:1630
Symbol 1611 TextUses:29Used by:1630
Symbol 1612 TextUses:29Used by:1630
Symbol 1613 TextUses:29Used by:1630
Symbol 1614 TextUses:29Used by:1630
Symbol 1615 TextUses:29Used by:1630
Symbol 1616 TextUses:29Used by:1630
Symbol 1617 TextUses:29Used by:1630
Symbol 1618 TextUses:29Used by:1630
Symbol 1619 TextUses:29Used by:1630
Symbol 1620 TextUses:29Used by:1630
Symbol 1621 TextUses:29Used by:1630
Symbol 1622 TextUses:29Used by:1630
Symbol 1623 TextUses:29Used by:1630
Symbol 1624 TextUses:29Used by:1630
Symbol 1625 TextUses:29Used by:1630
Symbol 1626 TextUses:29Used by:1630
Symbol 1627 TextUses:29Used by:1630
Symbol 1628 TextUses:29Used by:1630
Symbol 1629 TextUses:29Used by:1630
Symbol 1630 MovieClipUses:1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629Used by:2743
Symbol 1631 TextUses:29Used by:1682
Symbol 1632 TextUses:29Used by:1682
Symbol 1633 TextUses:29Used by:1682
Symbol 1634 TextUses:29Used by:1682
Symbol 1635 TextUses:29Used by:1682
Symbol 1636 TextUses:29Used by:1682
Symbol 1637 TextUses:29Used by:1682
Symbol 1638 TextUses:29Used by:1682
Symbol 1639 TextUses:29Used by:1682
Symbol 1640 TextUses:29Used by:1682
Symbol 1641 TextUses:29Used by:1682
Symbol 1642 TextUses:29Used by:1682
Symbol 1643 TextUses:29Used by:1682
Symbol 1644 TextUses:29Used by:1682
Symbol 1645 TextUses:29Used by:1682
Symbol 1646 TextUses:29Used by:1682
Symbol 1647 TextUses:29Used by:1682
Symbol 1648 TextUses:29Used by:1682
Symbol 1649 TextUses:29Used by:1682
Symbol 1650 TextUses:29Used by:1682
Symbol 1651 TextUses:29Used by:1682
Symbol 1652 TextUses:29Used by:1682
Symbol 1653 TextUses:29Used by:1682
Symbol 1654 TextUses:29Used by:1682
Symbol 1655 TextUses:29Used by:1682
Symbol 1656 TextUses:29Used by:1682
Symbol 1657 TextUses:29Used by:1682
Symbol 1658 TextUses:29Used by:1682
Symbol 1659 TextUses:29Used by:1682
Symbol 1660 TextUses:29Used by:1682
Symbol 1661 TextUses:29Used by:1682
Symbol 1662 TextUses:29Used by:1682
Symbol 1663 TextUses:29Used by:1682
Symbol 1664 TextUses:29Used by:1682
Symbol 1665 TextUses:29Used by:1682
Symbol 1666 TextUses:29Used by:1682
Symbol 1667 TextUses:29Used by:1682
Symbol 1668 TextUses:29Used by:1682
Symbol 1669 TextUses:29Used by:1682
Symbol 1670 TextUses:29Used by:1682
Symbol 1671 TextUses:29Used by:1682
Symbol 1672 TextUses:29Used by:1682
Symbol 1673 TextUses:29Used by:1682
Symbol 1674 TextUses:29Used by:1682
Symbol 1675 TextUses:29Used by:1682
Symbol 1676 TextUses:29Used by:1682
Symbol 1677 TextUses:29Used by:1682
Symbol 1678 TextUses:29Used by:1682
Symbol 1679 TextUses:29Used by:1682
Symbol 1680 TextUses:29Used by:1682
Symbol 1681 TextUses:29Used by:1682
Symbol 1682 MovieClip {DummyNeverFails2_fla.Dummynames_331}Uses:1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681Used by:2743
Symbol 1683 MovieClip {DummyNeverFails2_fla.dummyrandom_332}Uses:731 733 735 737 741 745 743 747 751 749 753 739Used by:1687 2743
Symbol 1684 GraphicUsed by:1699
Symbol 1685 BitmapUsed by:1686
Symbol 1686 GraphicUses:1685Used by:1691
Symbol 1687 MovieClipUses:1683Used by:1688 2073
Symbol 1688 MovieClip {DummyNeverFails2_fla.miniaturas_dummies_335}Uses:1687 1428 538 586 631 677 805 907 857 956 1005 1057 1109 729Used by:1691
Symbol 1689 BitmapUsed by:1690
Symbol 1690 GraphicUses:1689Used by:1691
Symbol 1691 MovieClip {DummyNeverFails2_fla.fondo_galeria_dummy_334}Uses:1686 1688 1690Used by:1699
Symbol 1692 GraphicUsed by:1698
Symbol 1693 GraphicUsed by:1698
Symbol 1694 GraphicUsed by:1696
Symbol 1695 TextUses:184Used by:1696
Symbol 1696 ButtonUses:1694 1695 186Used by:1698 2267
Symbol 1697 TextUses:184Used by:1698
Symbol 1698 MovieClip {DummyNeverFails2_fla.panel_lista_logros_337}Uses:1692 165 1693 1247 1696 1697Used by:1699
Symbol 1699 MovieClip {Galeria}Uses:1684 1691 1698 1422Used by:2743
Symbol 1700 BitmapUsed by:1702
Symbol 1701 BitmapUsed by:1702
Symbol 1702 GraphicUses:1700 1701Used by:2743
Symbol 1703 GraphicUsed by:1705
Symbol 1704 GraphicUsed by:1705
Symbol 1705 MovieClipUses:233 1703 1704Used by:2743
Symbol 1706 MovieClip {DummyNeverFails2_fla.Juego_Lienzo_346}Uses:429 1264 1265Used by:1788
Symbol 1707 GraphicUsed by:1713
Symbol 1708 GraphicUsed by:1709
Symbol 1709 MovieClipUses:1708Used by:1713
Symbol 1710 GraphicUsed by:1713
Symbol 1711 GraphicUsed by:1713
Symbol 1712 GraphicUsed by:1713
Symbol 1713 MovieClip {DummyNeverFails2_fla.painometer_348}Uses:1707 1709 1710 1711 1712Used by:1787
Symbol 1714 GraphicUsed by:1787
Symbol 1715 GraphicUses:193Used by:1718
Symbol 1716 GraphicUses:193Used by:1718
Symbol 1717 TextUses:198Used by:1718
Symbol 1718 ButtonUses:1715 1716 197 1717 196Used by:1787
Symbol 1719 GraphicUsed by:1723
Symbol 1720 GraphicUsed by:1723
Symbol 1721 TextUses:198Used by:1723
Symbol 1722 GraphicUsed by:1723
Symbol 1723 ButtonUses:1719 1720 25 26 197 1721 1722 196Used by:1787
Symbol 1724 FontUsed by:1725 2173
Symbol 1725 EditableTextUses:1724Used by:1787
Symbol 1726 ButtonUses:213 214 197 215 196Used by:1787
Symbol 1727 GraphicUses:193Used by:1730
Symbol 1728 GraphicUses:193Used by:1730
Symbol 1729 TextUses:198Used by:1730
Symbol 1730 ButtonUses:1727 1728 197 1729 196Used by:1787
Symbol 1731 ButtonUses:270 271 197 272 196Used by:1787
Symbol 1732 GraphicUses:193Used by:1735
Symbol 1733 GraphicUses:193Used by:1735
Symbol 1734 TextUses:198Used by:1735
Symbol 1735 ButtonUses:1732 1733 197 1734 196Used by:1787
Symbol 1736 GraphicUses:193Used by:1739
Symbol 1737 GraphicUses:193Used by:1739
Symbol 1738 TextUses:198Used by:1739
Symbol 1739 ButtonUses:1736 1737 197 1738 196Used by:1787
Symbol 1740 GraphicUsed by:1741
Symbol 1741 MovieClipUses:1740Used by:1747 1770
Symbol 1742 EditableTextUses:198Used by:1747
Symbol 1743 GraphicUsed by:1747 1770 2398
Symbol 1744 EditableTextUses:198Used by:1747
Symbol 1745 EditableTextUses:198Used by:1747
Symbol 1746 EditableTextUses:198Used by:1747
Symbol 1747 MovieClipUses:1741 1742 1743 189 1744 1745 1746Used by:1787
Symbol 1748 EditableTextUses:180Used by:1787
Symbol 1749 ButtonUses:189 190 191Used by:1787
Symbol 1750 EditableTextUses:180Used by:1787
Symbol 1751 EditableTextUses:180Used by:1787
Symbol 1752 EditableTextUses:180Used by:1787
Symbol 1753 EditableTextUses:198Used by:1787
Symbol 1754 EditableTextUses:198Used by:1787
Symbol 1755 GraphicUsed by:1787
Symbol 1756 GraphicUsed by:1775
Symbol 1757 GraphicUses:193Used by:1760
Symbol 1758 GraphicUses:193Used by:1760
Symbol 1759 TextUses:198Used by:1760
Symbol 1760 MovieClipUses:1757 1758 197 1759Used by:1775
Symbol 1761 GraphicUses:193Used by:1764
Symbol 1762 GraphicUses:193Used by:1764
Symbol 1763 TextUses:198Used by:1764
Symbol 1764 ButtonUses:1761 1762 197 1763 196Used by:1775
Symbol 1765 TextUses:198Used by:1775
Symbol 1766 EditableTextUses:198Used by:1770
Symbol 1767 EditableTextUses:198Used by:1770
Symbol 1768 EditableTextUses:198Used by:1770
Symbol 1769 EditableTextUses:198Used by:1770
Symbol 1770 MovieClipUses:1741 1766 1743 189 1767 1768 1769Used by:1775
Symbol 1771 GraphicUsed by:1775
Symbol 1772 GraphicUsed by:1775
Symbol 1773 GraphicUsed by:1775
Symbol 1774 MovieClipUses:1265Used by:1775
Symbol 1775 MovieClip {DummyNeverFails2_fla.popupNext_360}Uses:1756 1760 1764 1765 1770 1771 1772 1773 1774Used by:1787
Symbol 1776 ButtonUses:255 256 197 257 196Used by:1787
Symbol 1777 GraphicUsed by:1782
Symbol 1778 GraphicUsed by:1782
Symbol 1779 TextUses:184Used by:1782
Symbol 1780 TextUses:184Used by:1782
Symbol 1781 TextUses:184Used by:1782 2255
Symbol 1782 ButtonUses:1777 1778 1779 1780 186 1781Used by:1787
Symbol 1783 GraphicUsed by:1784
Symbol 1784 MovieClipUses:1783Used by:1787
Symbol 1785 GraphicUsed by:1786
Symbol 1786 MovieClipUses:1785Used by:1787
Symbol 1787 MovieClip {DummyNeverFails2_fla.Juego_Menu_347}Uses:1713 1714 292 254 288 1718 1351 28 1723 1725 1726 1730 1731 1244 1735 1739 1747 1748 1749 1750 1751 1752 1753 1754 1755 179 1775 1776 1782 1355 1361 1784 1786Used by:1788
Symbol 1788 MovieClip {Juego}Uses:1706 1787 1422Used by:2743
Symbol 1789 BitmapUsed by:1790
Symbol 1790 GraphicUses:1789Used by:2743
Symbol 1791 GraphicUsed by:1845
Symbol 1792 TextUses:184Used by:1845
Symbol 1793 TextUses:184Used by:1845
Symbol 1794 GraphicUsed by:1845 2413 2517 2620
Symbol 1795 TextUses:184Used by:1845
Symbol 1796 TextUses:184Used by:1845
Symbol 1797 TextUses:184Used by:1845
Symbol 1798 TextUses:184Used by:1845
Symbol 1799 TextUses:184Used by:1845
Symbol 1800 TextUses:184Used by:1845
Symbol 1801 TextUses:184Used by:1845
Symbol 1802 TextUses:184Used by:1845
Symbol 1803 TextUses:184Used by:1845
Symbol 1804 TextUses:184Used by:1845
Symbol 1805 TextUses:184Used by:1845
Symbol 1806 TextUses:184Used by:1845
Symbol 1807 TextUses:184Used by:1845
Symbol 1808 TextUses:184Used by:1845
Symbol 1809 TextUses:184Used by:1845
Symbol 1810 TextUses:184Used by:1845
Symbol 1811 TextUses:184Used by:1845
Symbol 1812 TextUses:184Used by:1845
Symbol 1813 TextUses:184Used by:1845
Symbol 1814 TextUses:184Used by:1845
Symbol 1815 TextUses:184Used by:1845
Symbol 1816 TextUses:184Used by:1845
Symbol 1817 TextUses:184Used by:1845
Symbol 1818 TextUses:184Used by:1845
Symbol 1819 TextUses:184Used by:1845
Symbol 1820 TextUses:184Used by:1845
Symbol 1821 TextUses:184Used by:1845
Symbol 1822 TextUses:184Used by:1845
Symbol 1823 TextUses:184Used by:1845
Symbol 1824 TextUses:184Used by:1845
Symbol 1825 TextUses:184Used by:1845
Symbol 1826 TextUses:184Used by:1845
Symbol 1827 TextUses:184Used by:1845
Symbol 1828 TextUses:184Used by:1845
Symbol 1829 TextUses:184Used by:1845
Symbol 1830 TextUses:184Used by:1845
Symbol 1831 TextUses:184Used by:1845
Symbol 1832 TextUses:184Used by:1845
Symbol 1833 TextUses:184Used by:1845
Symbol 1834 TextUses:184Used by:1845
Symbol 1835 TextUses:184Used by:1845
Symbol 1836 TextUses:184Used by:1845
Symbol 1837 TextUses:184Used by:1845
Symbol 1838 TextUses:184Used by:1845
Symbol 1839 TextUses:184Used by:1845
Symbol 1840 TextUses:184Used by:1845
Symbol 1841 TextUses:184Used by:1845
Symbol 1842 TextUses:184Used by:1845
Symbol 1843 TextUses:184Used by:1845
Symbol 1844 TextUses:184Used by:1845
Symbol 1845 MovieClip {achipopups}Uses:1791 1792 1793 1794 1109 729 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 1840 1841 1842 1843 1844Used by:2743
Symbol 1846 BitmapUsed by:1847 1849 1851
Symbol 1847 GraphicUses:1846Used by:1853 1856 1859 1862 1865 1868 1871 1874 1877 1880 1883 1886 1889 1892 1895 1898 1901 1904 1907 1910 1913 1916 1919 1922 1925 1928 1931 1934 1937 1940 1943 1946 1949 1952 1955 1958 1961 1964 1967 1970 1973 1976 1979 1982 1985 1988 1991 1994 1997 2000 2003 2006
Symbol 1848 TextUses:29Used by:1853
Symbol 1849 GraphicUses:1846Used by:1850
Symbol 1850 MovieClipUses:1849Used by:1853 1856 1859 1862 1865 1868 1871 1874 1877 1880 1883 1886 1889 1892 1895 1898 1901 1904 1907 1910 1913 1916 1919 1922 1925 1928 1931 1934 1937 1940 1943 1946 1949 1952 1955 1958 1961 1964 1967 1970 1973 1976 1979 1982 1985 1988 1991 1994 1997 2000 2003 2006
Symbol 1851 GraphicUses:1846Used by:1853 1856 1859 1862 1865 1868 1871 1874 1877 1880 1883 1886 1889 1892 1895 1898 1901 1904 1907 1910 1913 1916 1919 1922 1925 1928 1931 1934 1937 1940 1943 1946 1949 1952 1955 1958 1961 1964 1967 1970 1973 1976 1979 1982 1985 1988 1991 1994 1997 2000 2003 2006
Symbol 1852 TextUses:29Used by:1853
Symbol 1853 MovieClipUses:1847 1848 1850 1851 1852Used by:2743
Symbol 1854 TextUses:29Used by:1856
Symbol 1855 TextUses:29Used by:1856
Symbol 1856 MovieClipUses:1847 1854 1850 1851 1855Used by:2743
Symbol 1857 TextUses:29Used by:1859
Symbol 1858 TextUses:29Used by:1859
Symbol 1859 MovieClipUses:1847 1857 1850 1851 1858Used by:2743
Symbol 1860 TextUses:29Used by:1862
Symbol 1861 TextUses:29Used by:1862
Symbol 1862 MovieClipUses:1847 1860 1850 1851 1861Used by:2743
Symbol 1863 TextUses:29Used by:1865
Symbol 1864 TextUses:29Used by:1865
Symbol 1865 MovieClipUses:1847 1863 1850 1851 1864Used by:2743
Symbol 1866 TextUses:29Used by:1868
Symbol 1867 TextUses:29Used by:1868
Symbol 1868 MovieClipUses:1847 1866 1850 1851 1867Used by:2743
Symbol 1869 TextUses:29Used by:1871
Symbol 1870 TextUses:29Used by:1871
Symbol 1871 MovieClipUses:1847 1869 1850 1851 1870Used by:2743
Symbol 1872 TextUses:29Used by:1874
Symbol 1873 TextUses:29Used by:1874
Symbol 1874 MovieClipUses:1847 1872 1850 1851 1873Used by:2743
Symbol 1875 TextUses:29Used by:1877
Symbol 1876 TextUses:29Used by:1877
Symbol 1877 MovieClipUses:1847 1875 1850 1851 1876Used by:2743
Symbol 1878 TextUses:29Used by:1880
Symbol 1879 TextUses:29Used by:1880
Symbol 1880 MovieClipUses:1847 1878 1850 1851 1879Used by:2743
Symbol 1881 TextUses:29Used by:1883
Symbol 1882 TextUses:29Used by:1883
Symbol 1883 MovieClipUses:1847 1881 1850 1851 1882Used by:2743
Symbol 1884 TextUses:29Used by:1886
Symbol 1885 TextUses:29Used by:1886
Symbol 1886 MovieClipUses:1847 1884 1850 1851 1885Used by:2743
Symbol 1887 TextUses:29Used by:1889
Symbol 1888 TextUses:29Used by:1889
Symbol 1889 MovieClipUses:1847 1887 1850 1851 1888Used by:2743
Symbol 1890 TextUses:29Used by:1892
Symbol 1891 TextUses:29Used by:1892
Symbol 1892 MovieClipUses:1847 1890 1850 1851 1891Used by:2743
Symbol 1893 TextUses:29Used by:1895
Symbol 1894 TextUses:29Used by:1895
Symbol 1895 MovieClipUses:1847 1893 1850 1851 1894Used by:2743
Symbol 1896 TextUses:29Used by:1898
Symbol 1897 TextUses:29Used by:1898
Symbol 1898 MovieClipUses:1847 1896 1850 1851 1897Used by:2743
Symbol 1899 TextUses:29Used by:1901
Symbol 1900 TextUses:29Used by:1901
Symbol 1901 MovieClipUses:1847 1899 1850 1851 1900Used by:2743
Symbol 1902 TextUses:29Used by:1904
Symbol 1903 TextUses:29Used by:1904
Symbol 1904 MovieClipUses:1847 1902 1850 1851 1903Used by:2743
Symbol 1905 TextUses:29Used by:1907
Symbol 1906 TextUses:29Used by:1907
Symbol 1907 MovieClipUses:1847 1905 1850 1851 1906Used by:2743
Symbol 1908 TextUses:29Used by:1910
Symbol 1909 TextUses:29Used by:1910
Symbol 1910 MovieClipUses:1847 1908 1850 1851 1909Used by:2743
Symbol 1911 TextUses:29Used by:1913
Symbol 1912 TextUses:29Used by:1913
Symbol 1913 MovieClipUses:1847 1911 1850 1851 1912Used by:2743
Symbol 1914 TextUses:29Used by:1916
Symbol 1915 TextUses:29Used by:1916
Symbol 1916 MovieClipUses:1847 1914 1850 1851 1915Used by:2743
Symbol 1917 TextUses:29Used by:1919
Symbol 1918 TextUses:29Used by:1919
Symbol 1919 MovieClipUses:1847 1917 1850 1851 1918Used by:2743
Symbol 1920 TextUses:29Used by:1922
Symbol 1921 TextUses:29Used by:1922
Symbol 1922 MovieClipUses:1847 1920 1850 1851 1921Used by:2743
Symbol 1923 TextUses:29Used by:1925
Symbol 1924 TextUses:29Used by:1925
Symbol 1925 MovieClipUses:1847 1923 1850 1851 1924Used by:2743
Symbol 1926 TextUses:29Used by:1928
Symbol 1927 TextUses:29Used by:1928
Symbol 1928 MovieClipUses:1847 1926 1850 1851 1927Used by:2743
Symbol 1929 TextUses:29Used by:1931
Symbol 1930 TextUses:29Used by:1931
Symbol 1931 MovieClipUses:1847 1929 1850 1851 1930Used by:2743
Symbol 1932 TextUses:29Used by:1934
Symbol 1933 TextUses:29Used by:1934
Symbol 1934 MovieClipUses:1847 1932 1850 1851 1933Used by:2743
Symbol 1935 TextUses:29Used by:1937
Symbol 1936 TextUses:29Used by:1937
Symbol 1937 MovieClipUses:1847 1935 1850 1851 1936Used by:2743
Symbol 1938 TextUses:29Used by:1940
Symbol 1939 TextUses:29Used by:1940
Symbol 1940 MovieClipUses:1847 1938 1850 1851 1939Used by:2743
Symbol 1941 TextUses:29Used by:1943
Symbol 1942 TextUses:29Used by:1943
Symbol 1943 MovieClipUses:1847 1941 1850 1851 1942Used by:2743
Symbol 1944 TextUses:29Used by:1946
Symbol 1945 TextUses:29Used by:1946
Symbol 1946 MovieClipUses:1847 1944 1850 1851 1945Used by:2743
Symbol 1947 TextUses:29Used by:1949
Symbol 1948 TextUses:29Used by:1949
Symbol 1949 MovieClipUses:1847 1947 1850 1851 1948Used by:2743
Symbol 1950 TextUses:29Used by:1952
Symbol 1951 TextUses:29Used by:1952
Symbol 1952 MovieClipUses:1847 1950 1850 1851 1951Used by:2743
Symbol 1953 TextUses:29Used by:1955
Symbol 1954 TextUses:29Used by:1955
Symbol 1955 MovieClipUses:1847 1953 1850 1851 1954Used by:2743
Symbol 1956 TextUses:29Used by:1958
Symbol 1957 TextUses:29Used by:1958
Symbol 1958 MovieClipUses:1847 1956 1850 1851 1957Used by:2743
Symbol 1959 TextUses:29Used by:1961
Symbol 1960 TextUses:29Used by:1961
Symbol 1961 MovieClipUses:1847 1959 1850 1851 1960Used by:2743
Symbol 1962 TextUses:29Used by:1964
Symbol 1963 TextUses:29Used by:1964
Symbol 1964 MovieClipUses:1847 1962 1850 1851 1963Used by:2743
Symbol 1965 TextUses:29Used by:1967
Symbol 1966 TextUses:29Used by:1967
Symbol 1967 MovieClipUses:1847 1965 1850 1851 1966Used by:2743
Symbol 1968 TextUses:29Used by:1970
Symbol 1969 TextUses:29Used by:1970
Symbol 1970 MovieClipUses:1847 1968 1850 1851 1969Used by:2743
Symbol 1971 TextUses:29Used by:1973
Symbol 1972 TextUses:29Used by:1973
Symbol 1973 MovieClipUses:1847 1971 1850 1851 1972Used by:2743
Symbol 1974 TextUses:29Used by:1976
Symbol 1975 TextUses:29Used by:1976
Symbol 1976 MovieClipUses:1847 1974 1850 1851 1975Used by:2743
Symbol 1977 TextUses:29Used by:1979
Symbol 1978 TextUses:29Used by:1979
Symbol 1979 MovieClipUses:1847 1977 1850 1851 1978Used by:2743
Symbol 1980 TextUses:29Used by:1982
Symbol 1981 TextUses:29Used by:1982
Symbol 1982 MovieClipUses:1847 1980 1850 1851 1981Used by:2743
Symbol 1983 TextUses:29Used by:1985
Symbol 1984 TextUses:29Used by:1985
Symbol 1985 MovieClipUses:1847 1983 1850 1851 1984Used by:2743
Symbol 1986 TextUses:29Used by:1988
Symbol 1987 TextUses:29Used by:1988
Symbol 1988 MovieClipUses:1847 1986 1850 1851 1987Used by:2743
Symbol 1989 TextUses:29Used by:1991
Symbol 1990 TextUses:29Used by:1991
Symbol 1991 MovieClipUses:1847 1989 1850 1851 1990Used by:2743
Symbol 1992 TextUses:29Used by:1994
Symbol 1993 TextUses:29Used by:1994
Symbol 1994 MovieClipUses:1847 1992 1850 1851 1993Used by:2743
Symbol 1995 TextUses:29Used by:1997
Symbol 1996 TextUses:29Used by:1997
Symbol 1997 MovieClipUses:1847 1995 1850 1851 1996Used by:2743
Symbol 1998 TextUses:29Used by:2000
Symbol 1999 TextUses:29Used by:2000
Symbol 2000 MovieClipUses:1847 1998 1850 1851 1999Used by:2743
Symbol 2001 TextUses:29Used by:2003
Symbol 2002 TextUses:29Used by:2003
Symbol 2003 MovieClipUses:1847 2001 1850 1851 2002Used by:2743
Symbol 2004 TextUses:29Used by:2006
Symbol 2005 TextUses:29Used by:2006
Symbol 2006 MovieClipUses:1847 2004 1850 1851 2005Used by:2743
Symbol 2007 BitmapUsed by:2011
Symbol 2008 BitmapUsed by:2011
Symbol 2009 BitmapUsed by:2011
Symbol 2010 BitmapUsed by:2011
Symbol 2011 GraphicUses:2007 2008 2009 2010Used by:2743
Symbol 2012 EditableTextUses:29Used by:2015
Symbol 2013 EditableTextUses:29Used by:2015
Symbol 2014 EditableTextUses:29Used by:2015
Symbol 2015 MovieClip {DummyNeverFails2_fla.miniaturas_niveles_423}Uses:2012 2013 2014Used by:2077 2743
Symbol 2016 GraphicUses:340 330 348 343 384 364 315 367 399 308 409Used by:2033
Symbol 2017 GraphicUsed by:2018
Symbol 2018 MovieClipUses:2017Used by:2033
Symbol 2019 GraphicUsed by:2033
Symbol 2020 GraphicUsed by:2021
Symbol 2021 MovieClipUses:2020Used by:2033
Symbol 2022 GraphicUsed by:2023
Symbol 2023 MovieClipUses:2022Used by:2033
Symbol 2024 TextUses:184Used by:2033
Symbol 2025 TextUses:184Used by:2033
Symbol 2026 TextUses:184Used by:2033
Symbol 2027 TextUses:184Used by:2033
Symbol 2028 TextUses:184Used by:2033
Symbol 2029 TextUses:184Used by:2033
Symbol 2030 TextUses:184Used by:2033
Symbol 2031 TextUses:184Used by:2033
Symbol 2032 TextUses:184Used by:2033
Symbol 2033 MovieClip {DummyNeverFails2_fla.panel_niveles_425}Uses:2016 2018 2019 2021 2023 2024 2025 2026 2027 2028 2029 2030 2031 2032Used by:2077
Symbol 2034 ButtonUses:294 295Used by:2077
Symbol 2035 ButtonUses:283 284Used by:2077
Symbol 2036 EditableTextUses:29Used by:2077
Symbol 2037 BitmapUsed by:2038
Symbol 2038 GraphicUses:2037Used by:2077
Symbol 2039 GraphicUsed by:2043 2046 2049 2052 2055 2058 2061 2064 2067
Symbol 2040 TextUses:184Used by:2043
Symbol 2041 GraphicUsed by:2043 2046 2049 2052 2055 2058 2061 2064 2067
Symbol 2042 TextUses:184Used by:2043
Symbol 2043 MovieClipUses:2039 2040 2041 2042Used by:2077
Symbol 2044 TextUses:184Used by:2046
Symbol 2045 TextUses:184Used by:2046
Symbol 2046 MovieClipUses:2039 2044 2041 2045Used by:2077
Symbol 2047 TextUses:184Used by:2049
Symbol 2048 TextUses:184Used by:2049
Symbol 2049 MovieClipUses:2039 2047 2041 2048Used by:2077
Symbol 2050 TextUses:184Used by:2052
Symbol 2051 TextUses:184Used by:2052
Symbol 2052 MovieClipUses:2039 2050 2041 2051Used by:2077
Symbol 2053 TextUses:184Used by:2055
Symbol 2054 TextUses:184Used by:2055
Symbol 2055 MovieClipUses:2039 2053 2041 2054Used by:2077
Symbol 2056 TextUses:184Used by:2058
Symbol 2057 TextUses:184Used by:2058
Symbol 2058 MovieClipUses:2039 2056 2041 2057Used by:2077
Symbol 2059 TextUses:184Used by:2061
Symbol 2060 TextUses:184Used by:2061
Symbol 2061 MovieClipUses:2039 2059 2041 2060Used by:2077
Symbol 2062 TextUses:184Used by:2064
Symbol 2063 TextUses:184Used by:2064
Symbol 2064 MovieClipUses:2039 2062 2041 2063Used by:2077
Symbol 2065 TextUses:184Used by:2067
Symbol 2066 TextUses:184Used by:2067
Symbol 2067 MovieClipUses:2039 2065 2041 2066Used by:2077
Symbol 2068 GraphicUsed by:2069 2070
Symbol 2069 ButtonUses:2068Used by:2077
Symbol 2070 ButtonUses:2068Used by:2077
Symbol 2071 GraphicUsed by:2077
Symbol 2072 GraphicUsed by:2073
Symbol 2073 MovieClip {DummyNeverFails2_fla.boton_skins_442}Uses:2072 1687 1428 538 586 631 677 805 907 857 956 1005 1057 1109 729Used by:2077
Symbol 2074 GraphicUsed by:2077
Symbol 2075 EditableTextUses:198Used by:2077
Symbol 2076 MovieClipUses:189Used by:2077
Symbol 2077 MovieClip {Niveles}Uses:1253 2033 2034 2035 2036 2038 1247 2015 2043 2046 2049 2052 2055 2058 2061 2064 2067 2069 2070 2071 189 2073 2074 2075 2076Used by:2743
Symbol 2078 GraphicUses:235 236Used by:2743
Symbol 2079 MovieClipUses:1324Used by:2129
Symbol 2080 GraphicUsed by:2084
Symbol 2081 GraphicUsed by:2084
Symbol 2082 GraphicUsed by:2083
Symbol 2083 MovieClipUses:2082Used by:2084
Symbol 2084 MovieClipUses:2080 2081 2083Used by:2085
Symbol 2085 MovieClipUses:2084Used by:2129
Symbol 2086 GraphicUsed by:2129
Symbol 2087 GraphicUsed by:2088
Symbol 2088 MovieClipUses:2087Used by:2129 2267
Symbol 2089 GraphicUsed by:2129
Symbol 2090 GraphicUsed by:2092
Symbol 2091 GraphicUsed by:2092
Symbol 2092 ButtonUses:2090 2091Used by:2129
Symbol 2093 GraphicUsed by:2095
Symbol 2094 GraphicUsed by:2095
Symbol 2095 ButtonUses:2093 2094Used by:2129
Symbol 2096 ButtonUses:259 266 267 268 260 261 262 263 265Used by:2129
Symbol 2097 ButtonUses:217 221 222 223 218 219Used by:2129
Symbol 2098 ButtonUses:248 209 249 250 206 207Used by:2129
Symbol 2099 ButtonUses:205 209 210 211 206 207Used by:2129
Symbol 2100 ButtonUses:229 221 230 231 218 219Used by:2129
Symbol 2101 GraphicUsed by:2104
Symbol 2102 GraphicUsed by:2104
Symbol 2103 GraphicUsed by:2104
Symbol 2104 ButtonUses:2101 221 2102 2103 218 219Used by:2129
Symbol 2105 EditableTextUses:180Used by:2129
Symbol 2106 EditableTextUses:180Used by:2129
Symbol 2107 EditableTextUses:180Used by:2129
Symbol 2108 BitmapUsed by:2109
Symbol 2109 GraphicUses:2108Used by:2114
Symbol 2110 BitmapUsed by:2111
Symbol 2111 GraphicUses:2110Used by:2114
Symbol 2112 BitmapUsed by:2113
Symbol 2113 GraphicUses:2112Used by:2114
Symbol 2114 ButtonUses:2109 2111 2113Used by:2129
Symbol 2115 GraphicUsed by:2127
Symbol 2116 TextUses:198Used by:2127
Symbol 2117 GraphicUsed by:2121
Symbol 2118 TextUses:198Used by:2121
Symbol 2119 GraphicUsed by:2121
Symbol 2120 TextUses:198Used by:2121
Symbol 2121 ButtonUses:2117 2118 2119 2120Used by:2127
Symbol 2122 GraphicUsed by:2126
Symbol 2123 TextUses:198Used by:2126
Symbol 2124 GraphicUsed by:2126
Symbol 2125 TextUses:198Used by:2126
Symbol 2126 ButtonUses:2122 2123 2124 2125Used by:2127
Symbol 2127 MovieClip {DummyNeverFails2_fla.panel_version_463}Uses:2115 2116 2121 2126Used by:2129
Symbol 2128 MovieClipUses:723Used by:2129
Symbol 2129 MovieClip {Principal}Uses:2 2079 2085 2086 2088 2089 2092 2095 2096 2097 2098 2099 2100 33 28 2104 2105 2106 10 254 2107 2114 2127 2128Used by:2743
Symbol 2130 BitmapUsed by:2131
Symbol 2131 GraphicUses:2130Used by:2132 2743
Symbol 2132 MovieClipUses:2131Used by:2136 2743
Symbol 2133 GraphicUsed by:2136
Symbol 2134 GraphicUsed by:2136
Symbol 2135 GraphicUsed by:2136
Symbol 2136 MovieClip {DummyNeverFails2_fla.splash_468}Uses:2133 475 1137 2132 469 729 1005 538 586 1109 631 677 805 907 857 956 1057 2134 2135Used by:2743
Symbol 2137 GraphicUsed by:2138
Symbol 2138 MovieClipUses:2137Used by:2145
Symbol 2139 GraphicUsed by:2140
Symbol 2140 MovieClipUses:2139Used by:2145
Symbol 2141 GraphicUsed by:2142
Symbol 2142 MovieClipUses:2141Used by:2145
Symbol 2143 GraphicUsed by:2144
Symbol 2144 MovieClipUses:2143Used by:2145
Symbol 2145 MovieClip {Editor_Animacion}Uses:2138 2140 2142 2144Used by:2743
Symbol 2146 GraphicUsed by:2222
Symbol 2147 GraphicUsed by:2148
Symbol 2148 MovieClipUses:2147Used by:2222
Symbol 2149 GraphicUsed by:2150
Symbol 2150 MovieClipUses:2149Used by:2222
Symbol 2151 TextUses:184Used by:2157
Symbol 2152 GraphicUsed by:2153
Symbol 2153 MovieClipUses:2152Used by:2157 2160 2168 2172 2213
Symbol 2154 GraphicUsed by:2157
Symbol 2155 GraphicUsed by:2156
Symbol 2156 MovieClipUses:2155Used by:2157 2160 2168 2172 2213
Symbol 2157 MovieClip {DummyNeverFails2_fla.editor_undo_button_505}Uses:2151 2153 2154 2156Used by:2222
Symbol 2158 TextUses:198Used by:2160
Symbol 2159 GraphicUsed by:2160
Symbol 2160 MovieClip {DummyNeverFails2_fla.editor_redo_button_508}Uses:2158 2153 2159 2156Used by:2222
Symbol 2161 TextUses:180Used by:2222
Symbol 2162 TextUses:198Used by:2222
Symbol 2163 TextUses:180Used by:2222
Symbol 2164 TextUses:198Used by:2168
Symbol 2165 GraphicUsed by:2168
Symbol 2166 GraphicUsed by:2168 2172 2213
Symbol 2167 TextUses:198Used by:2168
Symbol 2168 MovieClip {DummyNeverFails2_fla.editor_brush_button_519}Uses:2164 2153 2165 2166 2167 2156Used by:2222
Symbol 2169 TextUses:198Used by:2172
Symbol 2170 GraphicUsed by:2172
Symbol 2171 TextUses:198Used by:2172
Symbol 2172 MovieClip {DummyNeverFails2_fla.editor_eraser_button_520}Uses:2169 2153 2170 2166 2171 2156Used by:2222
Symbol 2173 EditableTextUses:1724Used by:2222
Symbol 2174 GraphicUsed by:2176
Symbol 2175 GraphicUsed by:2176
Symbol 2176 MovieClip {DummyNeverFails2_fla.editor_right_lower_arm_button_521}Uses:2174 2175Used by:2222
Symbol 2177 GraphicUsed by:2179
Symbol 2178 GraphicUsed by:2179
Symbol 2179 MovieClip {DummyNeverFails2_fla.editor_right_upper_arm_button_522}Uses:2177 2178Used by:2222
Symbol 2180 GraphicUsed by:2182
Symbol 2181 GraphicUsed by:2182
Symbol 2182 MovieClip {DummyNeverFails2_fla.editor_left_lower_arm_button_523}Uses:2180 2181Used by:2222
Symbol 2183 GraphicUsed by:2185
Symbol 2184 GraphicUsed by:2185
Symbol 2185 MovieClip {DummyNeverFails2_fla.editor_left_upper_arm_button_524}Uses:2183 2184Used by:2222
Symbol 2186 GraphicUsed by:2188
Symbol 2187 GraphicUsed by:2188
Symbol 2188 MovieClip {DummyNeverFails2_fla.editor_head_button_525}Uses:2186 2187Used by:2222
Symbol 2189 GraphicUsed by:2191
Symbol 2190 GraphicUsed by:2191
Symbol 2191 MovieClip {DummyNeverFails2_fla.editor_middle_torso_button_526}Uses:2189 2190Used by:2222
Symbol 2192 GraphicUsed by:2194
Symbol 2193 GraphicUsed by:2194
Symbol 2194 MovieClip {DummyNeverFails2_fla.editor_upper_torso_button_527}Uses:2192 2193Used by:2222
Symbol 2195 GraphicUsed by:2197
Symbol 2196 GraphicUsed by:2197
Symbol 2197 MovieClip {DummyNeverFails2_fla.editor_left_upper_leg_button_528}Uses:2195 2196Used by:2222
Symbol 2198 GraphicUsed by:2200
Symbol 2199 GraphicUsed by:2200
Symbol 2200 MovieClip {DummyNeverFails2_fla.editor_right_upper_leg_button_529}Uses:2198 2199Used by:2222
Symbol 2201 GraphicUsed by:2203
Symbol 2202 GraphicUsed by:2203
Symbol 2203 MovieClip {DummyNeverFails2_fla.editor_lower_torso_button_530}Uses:2201 2202Used by:2222
Symbol 2204 GraphicUsed by:2206
Symbol 2205 GraphicUsed by:2206
Symbol 2206 MovieClip {DummyNeverFails2_fla.editor_left_lower_leg_button_531}Uses:2204 2205Used by:2222
Symbol 2207 GraphicUsed by:2209
Symbol 2208 GraphicUsed by:2209
Symbol 2209 MovieClip {DummyNeverFails2_fla.editor_right_lower_leg_button_532}Uses:2207 2208Used by:2222
Symbol 2210 TextUses:198Used by:2213
Symbol 2211 GraphicUsed by:2213
Symbol 2212 TextUses:198Used by:2213
Symbol 2213 MovieClip {DummyNeverFails2_fla.editor_bucket_button_533}Uses:2210 2153 2211 2166 2212 2156Used by:2222
Symbol 2214 GraphicUsed by:2217
Symbol 2215 GraphicUsed by:2217
Symbol 2216 GraphicUsed by:2217
Symbol 2217 MovieClipUses:2214 2215 2216Used by:2222
Symbol 2218 TextUses:198Used by:2222
Symbol 2219 TextUses:198Used by:2222
Symbol 2220 GraphicUsed by:2221
Symbol 2221 MovieClipUses:2220Used by:2222
Symbol 2222 MovieClip {EditorDummy}Uses:2146 1005 538 586 631 677 805 907 857 956 1057 1109 729 2148 2150 1353 189 162 179 140 80 2157 2160 61 2161 2162 2163 2168 2172 2173 2176 2179 2182 2185 2188 2191 2194 2197 2200 2203 2206 2209 2213 2217 2218 2219 1382 1401 1421 2221 1422Used by:2743
Symbol 2223 GraphicUsed by:2224
Symbol 2224 MovieClipUses:2223Used by:2233
Symbol 2225 GraphicUsed by:2233
Symbol 2226 GraphicUsed by:2227
Symbol 2227 MovieClipUses:2226Used by:2233
Symbol 2228 GraphicUsed by:2232
Symbol 2229 GraphicUsed by:2232
Symbol 2230 GraphicUsed by:2232
Symbol 2231 GraphicUsed by:2232
Symbol 2232 MovieClipUses:2228 2229 2230 2231Used by:2233
Symbol 2233 MovieClip {Galeria_Animacion}Uses:2224 2225 2227 2232Used by:2743
Symbol 2234 GraphicUses:1Used by:2267
Symbol 2235 GraphicUsed by:2267
Symbol 2236 GraphicUsed by:2267
Symbol 2237 GraphicUsed by:2240
Symbol 2238 TextUses:184Used by:2240
Symbol 2239 TextUses:184Used by:2240
Symbol 2240 MovieClip {DummyNeverFails2_fla.my_levels_button_541}Uses:2237 2238 186 2239Used by:2267
Symbol 2241 GraphicUsed by:2244
Symbol 2242 TextUses:184Used by:2244
Symbol 2243 TextUses:184Used by:2244
Symbol 2244 MovieClip {DummyNeverFails2_fla.latest_button_542}Uses:2241 2242 186 2243Used by:2267
Symbol 2245 GraphicUsed by:2248
Symbol 2246 TextUses:184Used by:2248
Symbol 2247 TextUses:184Used by:2248
Symbol 2248 MovieClip {DummyNeverFails2_fla.today_button_543}Uses:2245 2246 186 2247Used by:2267
Symbol 2249 GraphicUsed by:2252
Symbol 2250 TextUses:184Used by:2252
Symbol 2251 TextUses:184Used by:2252
Symbol 2252 MovieClip {DummyNeverFails2_fla.this_week_button_544}Uses:2249 2250 186 2251Used by:2267
Symbol 2253 GraphicUsed by:2255
Symbol 2254 TextUses:184Used by:2255
Symbol 2255 MovieClip {DummyNeverFails2_fla.all_time_button_545}Uses:2253 2254 186 1781Used by:2267
Symbol 2256 GraphicUsed by:2259
Symbol 2257 TextUses:184Used by:2259
Symbol 2258 TextUses:184Used by:2259
Symbol 2259 MovieClip {DummyNeverFails2_fla.popular_button_546}Uses:2256 2257 186 2258Used by:2267
Symbol 2260 GraphicUsed by:2263
Symbol 2261 TextUses:184Used by:2263
Symbol 2262 TextUses:184Used by:2263
Symbol 2263 MovieClip {DummyNeverFails2_fla.newest_button_547}Uses:2260 2261 186 2262Used by:2267
Symbol 2264 TextUses:184Used by:2267
Symbol 2265 EditableTextUses:180Used by:2267
Symbol 2266 EditableTextUses:184Used by:2267
Symbol 2267 MovieClip {Niveles_Jugadores}Uses:2234 165 2235 2088 2236 1247 2240 2244 2248 2252 2255 2259 2263 1696 2264 2265 2266Used by:2743
Symbol 2268 GraphicUsed by:2269 2270 2273 2281 2283
Symbol 2269 MovieClip {autonomo_horizontal_editor_mc}Uses:2268Used by:2743
Symbol 2270 MovieClip {autonomo_vertical_editor_mc}Uses:2268Used by:2743
Symbol 2271 GraphicUsed by:2272 2277 2282
Symbol 2272 MovieClip {dinamico_circulo_editor_mc}Uses:2271Used by:2743
Symbol 2273 MovieClip {dinamico_cuadrado_editor_mc}Uses:2268Used by:2743
Symbol 2274 MovieClip {colision_circulo_mc}Uses:723Used by:2743
Symbol 2275 GraphicUsed by:2276
Symbol 2276 MovieClip {colision_circulo_gris_mc}Uses:2275Used by:2743
Symbol 2277 MovieClip {colision_circulo_interior_mc}Uses:2271Used by:2743
Symbol 2278 MovieClip {colision_cuadrado_mc}Uses:98Used by:2743
Symbol 2279 GraphicUsed by:2280
Symbol 2280 MovieClip {colision_cuadrado_gris_mc}Uses:2279Used by:2743
Symbol 2281 MovieClip {colision_cuadrado_interior_mc}Uses:2268Used by:2743
Symbol 2282 MovieClip {estatico_circulo_editor_mc}Uses:2271Used by:2743
Symbol 2283 MovieClip {estatico_cuadrado_editor_mc}Uses:2268Used by:2743
Symbol 2284 GraphicUsed by:2308
Symbol 2285 EditableTextUses:180Used by:2308
Symbol 2286 EditableTextUses:180Used by:2308
Symbol 2287 EditableTextUses:180Used by:2308
Symbol 2288 EditableTextUses:180Used by:2308
Symbol 2289 EditableTextUses:180Used by:2308
Symbol 2290 EditableTextUses:180Used by:2308
Symbol 2291 EditableTextUses:180Used by:2308
Symbol 2292 EditableTextUses:180Used by:2308
Symbol 2293 EditableTextUses:180Used by:2308
Symbol 2294 EditableTextUses:180Used by:2308
Symbol 2295 EditableTextUses:180Used by:2308
Symbol 2296 EditableTextUses:180Used by:2308
Symbol 2297 EditableTextUses:180Used by:2308
Symbol 2298 EditableTextUses:180Used by:2308
Symbol 2299 EditableTextUses:180Used by:2308
Symbol 2300 EditableTextUses:180Used by:2308
Symbol 2301 EditableTextUses:180Used by:2308
Symbol 2302 EditableTextUses:180Used by:2308
Symbol 2303 EditableTextUses:180Used by:2308
Symbol 2304 EditableTextUses:180Used by:2308
Symbol 2305 TextUses:180Used by:2308
Symbol 2306 TextUses:180Used by:2308
Symbol 2307 TextUses:180Used by:2308
Symbol 2308 MovieClip {Ranking}Uses:2284 1247 2285 2286 2287 2288 2289 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2303 2304 2305 2306 2307Used by:2743
Symbol 2309 EditableTextUses:180Used by:2315
Symbol 2310 EditableTextUses:180Used by:2315
Symbol 2311 TextUses:180Used by:2315
Symbol 2312 TextUses:180Used by:2315
Symbol 2313 EditableTextUses:180Used by:2315
Symbol 2314 EditableTextUses:180Used by:2315
Symbol 2315 MovieClip {Submit}Uses:1253 1414 1244 2309 2310 2311 2312 2313 2314Used by:2743
Symbol 2316 BitmapUsed by:2317
Symbol 2317 GraphicUses:2316Used by:2318
Symbol 2318 MovieClipUses:2317Used by:2334
Symbol 2319 BitmapUsed by:2320
Symbol 2320 GraphicUses:2319Used by:2321
Symbol 2321 MovieClipUses:2320Used by:2334
Symbol 2322 BitmapUsed by:2323
Symbol 2323 GraphicUses:2322Used by:2324
Symbol 2324 MovieClipUses:2323Used by:2334
Symbol 2325 BitmapUsed by:2326
Symbol 2326 GraphicUses:2325Used by:2327
Symbol 2327 MovieClipUses:2326Used by:2334
Symbol 2328 BitmapUsed by:2329
Symbol 2329 GraphicUses:2328Used by:2330
Symbol 2330 MovieClipUses:2329Used by:2334
Symbol 2331 BitmapUsed by:2332
Symbol 2332 GraphicUses:2331Used by:2333
Symbol 2333 MovieClipUses:2332Used by:2334
Symbol 2334 MovieClip {DummyNeverFails2_fla.tanoku_mc_562}Uses:1422 2318 2321 2324 2327 2330 2333Used by:2743
Symbol 2335 GraphicUsed by:2344
Symbol 2336 GraphicUsed by:2337
Symbol 2337 MovieClipUses:2336Used by:2344
Symbol 2338 MovieClipUses:17Used by:2344
Symbol 2339 GraphicUsed by:2340
Symbol 2340 MovieClipUses:2339Used by:2344
Symbol 2341 GraphicUsed by:2342
Symbol 2342 MovieClipUses:2341Used by:2344
Symbol 2343 MovieClipUses:19Used by:2344
Symbol 2344 MovieClipUses:2335 25 2337 2338 2340 2342 2343Used by:2377
Symbol 2345 TextUses:13Used by:2363 2367
Symbol 2346 TextUses:13Used by:2363 2367
Symbol 2347 TextUses:13Used by:2363 2367
Symbol 2348 TextUses:13Used by:2363 2367
Symbol 2349 TextUses:13Used by:2363 2367
Symbol 2350 TextUses:13Used by:2363 2367
Symbol 2351 TextUses:13Used by:2363 2367
Symbol 2352 TextUses:13Used by:2363 2367
Symbol 2353 TextUses:13Used by:2363 2366
Symbol 2354 TextUses:13Used by:2363 2364 2365 2366
Symbol 2355 TextUses:13Used by:2363 2366
Symbol 2356 TextUses:13Used by:2363 2366
Symbol 2357 TextUses:13Used by:2363 2366
Symbol 2358 TextUses:13Used by:2363 2365
Symbol 2359 TextUses:13Used by:2363 2365
Symbol 2360 TextUses:13Used by:2363 2364 2365
Symbol 2361 TextUses:13Used by:2363 2365
Symbol 2362 TextUses:13Used by:2363 2364
Symbol 2363 ButtonUses:2345 2346 2347 2348 2349 2350 2351 2352 2353 2354 2355 2356 2357 2358 2359 2360 2361 2362Used by:2368
Symbol 2364 MovieClipUses:2354 2360 2362Used by:2368
Symbol 2365 MovieClipUses:2358 2354 2359 2360 2361Used by:2368
Symbol 2366 MovieClipUses:2353 2354 2355 2356 2357Used by:2368
Symbol 2367 MovieClipUses:2345 2346 2347 2348 2349 2350 2351 2352Used by:2368
Symbol 2368 MovieClipUses:2363 2364 2365 2366 2367Used by:2377
Symbol 2369 SoundUsed by:2377
Symbol 2370 SoundUsed by:2377
Symbol 2371 GraphicUsed by:2372
Symbol 2372 MovieClipUses:2371 98 1304Used by:2377
Symbol 2373 GraphicUsed by:2374
Symbol 2374 MovieClipUses:2373Used by:2377
Symbol 2375 GraphicUsed by:2376
Symbol 2376 MovieClipUses:2375Used by:2377
Symbol 2377 MovieClip {DummyNeverFails2_fla.sponsor_mc_569}Uses:2 2344 2368 2369 2370 2372 264 2374 2376 1422Used by:2743  Timeline
Symbol 2378 GraphicUsed by:2390
Symbol 2379 ButtonUses:98 1406Used by:2390
Symbol 2380 GraphicUsed by:2381
Symbol 2381 ButtonUses:1383 2380Used by:2390
Symbol 2382 EditableTextUses:184Used by:2390
Symbol 2383 EditableTextUses:184Used by:2390
Symbol 2384 GraphicUsed by:2386
Symbol 2385 GraphicUsed by:2386
Symbol 2386 ButtonUses:2384 2385Used by:2390
Symbol 2387 EditableTextUses:180Used by:2390
Symbol 2388 EditableTextUses:184Used by:2390
Symbol 2389 EditableTextUses:198Used by:2390
Symbol 2390 MovieClip {ficha_mc}Uses:2378 2379 2381 2382 2383 2386 2387 2388 2389Used by:2743
Symbol 2391 GraphicUsed by:2402
Symbol 2392 GraphicUsed by:2393 2517
Symbol 2393 MovieClipUses:2392Used by:2402
Symbol 2394 EditableTextUses:198Used by:2398
Symbol 2395 EditableTextUses:198Used by:2398
Symbol 2396 EditableTextUses:198Used by:2398
Symbol 2397 EditableTextUses:198Used by:2398
Symbol 2398 MovieClip {DummyNeverFails2_fla.lista_rangos_botones_591}Uses:2394 1743 189 2395 2396 2397Used by:2402
Symbol 2399 EditableTextUses:198Used by:2402
Symbol 2400 GraphicUsed by:2402
Symbol 2401 GraphicUsed by:2402
Symbol 2402 MovieClip {ficha_nivel_mc}Uses:2391 2393 2398 2399 2400 2401Used by:2743
Symbol 2403 EditableTextUses:413Used by:2407
Symbol 2404 EditableTextUses:413Used by:2407
Symbol 2405 EditableTextUses:413Used by:2407
Symbol 2406 EditableTextUses:413Used by:2407
Symbol 2407 MovieClipUses:2403 460 462 2404 463 2405 464 2406 465Used by:2409
Symbol 2408 EditableTextUses:413Used by:2409
Symbol 2409 MovieClip {LanzarContenidoOnline}Uses:1253 2407 2408Used by:2743
Symbol 2410 GraphicUsed by:2413 2620
Symbol 2411 GraphicUsed by:2413
Symbol 2412 EditableTextUses:184Used by:2413
Symbol 2413 MovieClipUses:2410 1794 2411 2412Used by:2728
Symbol 2414 GraphicUsed by:2517
Symbol 2415 TextUses:184Used by:2517
Symbol 2416 TextUses:184Used by:2517
Symbol 2417 TextUses:184Used by:2517
Symbol 2418 TextUses:184Used by:2517
Symbol 2419 TextUses:184Used by:2517
Symbol 2420 TextUses:184Used by:2517
Symbol 2421 TextUses:184Used by:2517
Symbol 2422 TextUses:184Used by:2517
Symbol 2423 TextUses:184Used by:2517
Symbol 2424 TextUses:184Used by:2517
Symbol 2425 TextUses:184Used by:2517
Symbol 2426 TextUses:184Used by:2517
Symbol 2427 TextUses:184Used by:2517
Symbol 2428 TextUses:184Used by:2517
Symbol 2429 TextUses:184Used by:2517
Symbol 2430 TextUses:184Used by:2517
Symbol 2431 TextUses:184Used by:2517
Symbol 2432 TextUses:184Used by:2517
Symbol 2433 TextUses:184Used by:2517
Symbol 2434 TextUses:184Used by:2517
Symbol 2435 TextUses:184Used by:2517
Symbol 2436 TextUses:184Used by:2517
Symbol 2437 TextUses:184Used by:2517
Symbol 2438 TextUses:184Used by:2517
Symbol 2439 TextUses:184Used by:2517
Symbol 2440 TextUses:184Used by:2517
Symbol 2441 TextUses:184Used by:2517
Symbol 2442 TextUses:184Used by:2517
Symbol 2443 TextUses:184Used by:2517
Symbol 2444 TextUses:184Used by:2517
Symbol 2445 TextUses:184Used by:2517
Symbol 2446 TextUses:184Used by:2517
Symbol 2447 TextUses:184Used by:2517
Symbol 2448 TextUses:184Used by:2517
Symbol 2449 TextUses:184Used by:2517
Symbol 2450 TextUses:184Used by:2517
Symbol 2451 TextUses:184Used by:2517
Symbol 2452 TextUses:184Used by:2517
Symbol 2453 TextUses:184Used by:2517
Symbol 2454 TextUses:184Used by:2517
Symbol 2455 TextUses:184Used by:2517
Symbol 2456 TextUses:184Used by:2517
Symbol 2457 TextUses:184Used by:2517
Symbol 2458 TextUses:184Used by:2517
Symbol 2459 TextUses:184Used by:2517
Symbol 2460 TextUses:184Used by:2517
Symbol 2461 TextUses:184Used by:2517
Symbol 2462 TextUses:184Used by:2517
Symbol 2463 TextUses:184Used by:2517
Symbol 2464 TextUses:184Used by:2517
Symbol 2465 TextUses:184Used by:2517
Symbol 2466 TextUses:184Used by:2517
Symbol 2467 TextUses:184Used by:2517
Symbol 2468 TextUses:184Used by:2517
Symbol 2469 TextUses:184Used by:2517
Symbol 2470 TextUses:184Used by:2517
Symbol 2471 TextUses:184Used by:2517
Symbol 2472 TextUses:184Used by:2517
Symbol 2473 TextUses:184Used by:2517
Symbol 2474 TextUses:184Used by:2517
Symbol 2475 TextUses:184Used by:2517
Symbol 2476 TextUses:184Used by:2517
Symbol 2477 TextUses:184Used by:2517
Symbol 2478 TextUses:184Used by:2517
Symbol 2479 TextUses:184Used by:2517
Symbol 2480 TextUses:184Used by:2517
Symbol 2481 TextUses:184Used by:2517
Symbol 2482 TextUses:184Used by:2517
Symbol 2483 TextUses:184Used by:2517
Symbol 2484 TextUses:184Used by:2517
Symbol 2485 TextUses:184Used by:2517
Symbol 2486 TextUses:184Used by:2517
Symbol 2487 TextUses:184Used by:2517
Symbol 2488 TextUses:184Used by:2517
Symbol 2489 TextUses:184Used by:2517
Symbol 2490 TextUses:184Used by:2517
Symbol 2491 TextUses:184Used by:2517
Symbol 2492 TextUses:184Used by:2517
Symbol 2493 TextUses:184Used by:2517
Symbol 2494 TextUses:184Used by:2517
Symbol 2495 TextUses:184Used by:2517
Symbol 2496 TextUses:184Used by:2517
Symbol 2497 TextUses:184Used by:2517
Symbol 2498 TextUses:184Used by:2517
Symbol 2499 TextUses:184Used by:2517
Symbol 2500 TextUses:184Used by:2517
Symbol 2501 TextUses:184Used by:2517
Symbol 2502 TextUses:184Used by:2517
Symbol 2503 TextUses:184Used by:2517
Symbol 2504 TextUses:184Used by:2517
Symbol 2505 TextUses:184Used by:2517
Symbol 2506 TextUses:184Used by:2517
Symbol 2507 TextUses:184Used by:2517
Symbol 2508 TextUses:184Used by:2517
Symbol 2509 TextUses:184Used by:2517
Symbol 2510 TextUses:184Used by:2517
Symbol 2511 TextUses:184Used by:2517
Symbol 2512 TextUses:184Used by:2517
Symbol 2513 TextUses:184Used by:2517
Symbol 2514 TextUses:184Used by:2517
Symbol 2515 TextUses:184Used by:2517
Symbol 2516 TextUses:184Used by:2517
Symbol 2517 MovieClip {DummyNeverFails2_fla.descripcion_skin_bloqueado_596}Uses:2414 1794 1109 729 2392 2415 2416 2417 2418 2419 2420 2421 2422 2423 2424 2425 2426 2427 2428 2429 2430 2431 2432 2433 2434 2435 2436 2437 2438 2439 2440 2441 2442 2443 2444 2445 2446 2447 2448 2449 2450 2451 2452 2453 2454 2455 2456 2457 2458 2459 2460 2461 2462 2463 2464 2465 2466 2467 2468 2469 2470 2471 2472 2473 2474 2475 2476 2477 2478 2479 2480 2481 2482 2483 2484 2485 2486 2487 2488 2489 2490 2491 2492 2493 2494 2495 2496 2497 2498 2499 2500 2501 2502 2503 2504 2505 2506 2507 2508 2509 2510 2511 2512 2513 2514 2515 2516Used by:2728
Symbol 2518 TextUses:184Used by:2620
Symbol 2519 EditableTextUses:184Used by:2620
Symbol 2520 TextUses:184Used by:2620
Symbol 2521 TextUses:184Used by:2620
Symbol 2522 TextUses:184Used by:2620
Symbol 2523 TextUses:184Used by:2620
Symbol 2524 TextUses:184Used by:2620
Symbol 2525 EditableTextUses:184Used by:2620
Symbol 2526 TextUses:184Used by:2620
Symbol 2527 TextUses:184Used by:2620
Symbol 2528 TextUses:184Used by:2620
Symbol 2529 TextUses:184Used by:2620
Symbol 2530 TextUses:184Used by:2620
Symbol 2531 TextUses:184Used by:2620
Symbol 2532 TextUses:184Used by:2620
Symbol 2533 TextUses:184Used by:2620
Symbol 2534 TextUses:184Used by:2620
Symbol 2535 TextUses:184Used by:2620
Symbol 2536 TextUses:184Used by:2620
Symbol 2537 TextUses:184Used by:2620
Symbol 2538 TextUses:184Used by:2620
Symbol 2539 TextUses:184Used by:2620
Symbol 2540 TextUses:184Used by:2620
Symbol 2541 TextUses:184Used by:2620
Symbol 2542 TextUses:184Used by:2620
Symbol 2543 TextUses:184Used by:2620
Symbol 2544 TextUses:184Used by:2620
Symbol 2545 TextUses:184Used by:2620
Symbol 2546 TextUses:184Used by:2620
Symbol 2547 EditableTextUses:184Used by:2620
Symbol 2548 TextUses:184Used by:2620
Symbol 2549 EditableTextUses:184Used by:2620
Symbol 2550 TextUses:184Used by:2620
Symbol 2551 TextUses:184Used by:2620
Symbol 2552 TextUses:184Used by:2620
Symbol 2553 TextUses:184Used by:2620
Symbol 2554 TextUses:184Used by:2620
Symbol 2555 TextUses:184Used by:2620
Symbol 2556 TextUses:184Used by:2620
Symbol 2557 TextUses:184Used by:2620
Symbol 2558 TextUses:184Used by:2620
Symbol 2559 TextUses:184Used by:2620
Symbol 2560 TextUses:184Used by:2620
Symbol 2561 TextUses:184Used by:2620
Symbol 2562 TextUses:184Used by:2620
Symbol 2563 TextUses:184Used by:2620
Symbol 2564 TextUses:184Used by:2620
Symbol 2565 TextUses:184Used by:2620
Symbol 2566 TextUses:184Used by:2620
Symbol 2567 TextUses:184Used by:2620
Symbol 2568 TextUses:184Used by:2620
Symbol 2569 TextUses:184Used by:2620
Symbol 2570 TextUses:184Used by:2620
Symbol 2571 TextUses:184Used by:2620
Symbol 2572 TextUses:184Used by:2620
Symbol 2573 TextUses:184Used by:2620
Symbol 2574 TextUses:184Used by:2620
Symbol 2575 TextUses:184Used by:2620
Symbol 2576 TextUses:184Used by:2620
Symbol 2577 TextUses:184Used by:2620
Symbol 2578 TextUses:184Used by:2620
Symbol 2579 TextUses:184Used by:2620
Symbol 2580 TextUses:184Used by:2620
Symbol 2581 TextUses:184Used by:2620
Symbol 2582 TextUses:184Used by:2620
Symbol 2583 TextUses:184Used by:2620
Symbol 2584 TextUses:184Used by:2620
Symbol 2585 TextUses:184Used by:2620
Symbol 2586 TextUses:184Used by:2620
Symbol 2587 TextUses:184Used by:2620
Symbol 2588 TextUses:184Used by:2620
Symbol 2589 TextUses:184Used by:2620
Symbol 2590 TextUses:184Used by:2620
Symbol 2591 TextUses:184Used by:2620
Symbol 2592 EditableTextUses:184Used by:2620
Symbol 2593 TextUses:184Used by:2620
Symbol 2594 TextUses:184Used by:2620
Symbol 2595 TextUses:184Used by:2620
Symbol 2596 TextUses:184Used by:2620
Symbol 2597 TextUses:184Used by:2620
Symbol 2598 TextUses:184Used by:2620
Symbol 2599 TextUses:184Used by:2620
Symbol 2600 TextUses:184Used by:2620
Symbol 2601 TextUses:184Used by:2620
Symbol 2602 TextUses:184Used by:2620
Symbol 2603 TextUses:184Used by:2620
Symbol 2604 TextUses:184Used by:2620
Symbol 2605 TextUses:184Used by:2620
Symbol 2606 TextUses:184Used by:2620
Symbol 2607 TextUses:184Used by:2620
Symbol 2608 TextUses:184Used by:2620
Symbol 2609 TextUses:184Used by:2620
Symbol 2610 TextUses:184Used by:2620
Symbol 2611 TextUses:184Used by:2620
Symbol 2612 TextUses:184Used by:2620
Symbol 2613 TextUses:184Used by:2620
Symbol 2614 TextUses:184Used by:2620
Symbol 2615 EditableTextUses:184Used by:2620
Symbol 2616 TextUses:184Used by:2620
Symbol 2617 EditableTextUses:184Used by:2620
Symbol 2618 TextUses:184Used by:2620
Symbol 2619 TextUses:184Used by:2620
Symbol 2620 MovieClip {DummyNeverFails2_fla.descripcion_skin_desbloqueado_597}Uses:2410 1794 1109 729 2518 2519 2520 2521 2522 2523 2524 2525 2526 2527 2528 2529 2530 2531 2532 2533 2534 2535 2536 2537 2538 2539 2540 2541 2542 2543 2544 2545 2546 2547 2548 2549 2550 2551 2552 2553 2554 2555 2556 2557 2558 2559 2560 2561 2562 2563 2564 2565 2566 2567 2568 2569 2570 2571 2572 2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619Used by:2728
Symbol 2621 GraphicUsed by:2725
Symbol 2622 EditableTextUses:184Used by:2725
Symbol 2623 EditableTextUses:184Used by:2725
Symbol 2624 TextUses:184Used by:2725
Symbol 2625 TextUses:184Used by:2725
Symbol 2626 TextUses:184Used by:2725
Symbol 2627 TextUses:184Used by:2725
Symbol 2628 TextUses:184Used by:2725
Symbol 2629 TextUses:184Used by:2725
Symbol 2630 TextUses:184Used by:2725
Symbol 2631 TextUses:184Used by:2725
Symbol 2632 TextUses:184Used by:2725
Symbol 2633 TextUses:184Used by:2725
Symbol 2634 TextUses:184Used by:2725
Symbol 2635 TextUses:184Used by:2725
Symbol 2636 TextUses:184Used by:2725
Symbol 2637 TextUses:184Used by:2725
Symbol 2638 TextUses:184Used by:2725
Symbol 2639 TextUses:184Used by:2725
Symbol 2640 TextUses:184Used by:2725
Symbol 2641 TextUses:184Used by:2725
Symbol 2642 TextUses:184Used by:2725
Symbol 2643 TextUses:184Used by:2725
Symbol 2644 TextUses:184Used by:2725
Symbol 2645 TextUses:184Used by:2725
Symbol 2646 TextUses:184Used by:2725
Symbol 2647 TextUses:184Used by:2725
Symbol 2648 TextUses:184Used by:2725
Symbol 2649 TextUses:184Used by:2725
Symbol 2650 TextUses:184Used by:2725
Symbol 2651 TextUses:184Used by:2725
Symbol 2652 TextUses:184Used by:2725
Symbol 2653 TextUses:184Used by:2725
Symbol 2654 TextUses:184Used by:2725
Symbol 2655 TextUses:184Used by:2725
Symbol 2656 TextUses:184Used by:2725
Symbol 2657 TextUses:184Used by:2725
Symbol 2658 TextUses:184Used by:2725
Symbol 2659 TextUses:184Used by:2725
Symbol 2660 TextUses:184Used by:2725
Symbol 2661 TextUses:184Used by:2725
Symbol 2662 TextUses:184Used by:2725
Symbol 2663 TextUses:184Used by:2725
Symbol 2664 TextUses:184Used by:2725
Symbol 2665 TextUses:184Used by:2725
Symbol 2666 TextUses:184Used by:2725
Symbol 2667 TextUses:184Used by:2725
Symbol 2668 TextUses:184Used by:2725
Symbol 2669 TextUses:184Used by:2725
Symbol 2670 TextUses:184Used by:2725
Symbol 2671 TextUses:184Used by:2725
Symbol 2672 TextUses:184Used by:2725
Symbol 2673 TextUses:184Used by:2725
Symbol 2674 TextUses:184Used by:2725
Symbol 2675 TextUses:184Used by:2725
Symbol 2676 TextUses:184Used by:2725
Symbol 2677 TextUses:184Used by:2725
Symbol 2678 TextUses:184Used by:2725
Symbol 2679 TextUses:184Used by:2725
Symbol 2680 TextUses:184Used by:2725
Symbol 2681 TextUses:184Used by:2725
Symbol 2682 TextUses:184Used by:2725
Symbol 2683 TextUses:184Used by:2725
Symbol 2684 TextUses:184Used by:2725
Symbol 2685 TextUses:184Used by:2725
Symbol 2686 TextUses:184Used by:2725
Symbol 2687 TextUses:184Used by:2725
Symbol 2688 TextUses:184Used by:2725
Symbol 2689 TextUses:184Used by:2725
Symbol 2690 TextUses:184Used by:2725
Symbol 2691 TextUses:184Used by:2725
Symbol 2692 TextUses:184Used by:2725
Symbol 2693 TextUses:184Used by:2725
Symbol 2694 TextUses:184Used by:2725
Symbol 2695 TextUses:184Used by:2725
Symbol 2696 TextUses:184Used by:2725
Symbol 2697 TextUses:184Used by:2725
Symbol 2698 TextUses:184Used by:2725
Symbol 2699 TextUses:184Used by:2725
Symbol 2700 TextUses:184Used by:2725
Symbol 2701 TextUses:184Used by:2725
Symbol 2702 TextUses:184Used by:2725
Symbol 2703 TextUses:184Used by:2725
Symbol 2704 TextUses:184Used by:2725
Symbol 2705 TextUses:184Used by:2725
Symbol 2706 TextUses:184Used by:2725
Symbol 2707 TextUses:184Used by:2725
Symbol 2708 TextUses:184Used by:2725
Symbol 2709 TextUses:184Used by:2725
Symbol 2710 TextUses:184Used by:2725
Symbol 2711 TextUses:184Used by:2725
Symbol 2712 TextUses:184Used by:2725
Symbol 2713 TextUses:184Used by:2725
Symbol 2714 TextUses:184Used by:2725
Symbol 2715 TextUses:184Used by:2725
Symbol 2716 TextUses:184Used by:2725
Symbol 2717 TextUses:184Used by:2725
Symbol 2718 TextUses:184Used by:2725
Symbol 2719 TextUses:184Used by:2725
Symbol 2720 TextUses:184Used by:2725
Symbol 2721 TextUses:184Used by:2725
Symbol 2722 TextUses:184Used by:2725
Symbol 2723 TextUses:184Used by:2725
Symbol 2724 EditableTextUses:184Used by:2725
Symbol 2725 MovieClip {DummyNeverFails2_fla.descripcion_skin_seleccionado_598}Uses:2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724Used by:2728
Symbol 2726 EditableTextUses:198Used by:2728
Symbol 2727 EditableTextUses:198Used by:2728
Symbol 2728 MovieClip {ficha_skin_mc}Uses:2413 2517 2620 2725 2726 2727Used by:2743
Symbol 2729 GraphicUsed by:2734
Symbol 2730 GraphicUsed by:2734
Symbol 2731 TextUses:184Used by:2734
Symbol 2732 GraphicUsed by:2734
Symbol 2733 TextUses:184Used by:2734
Symbol 2734 MovieClip {load_more_button}Uses:2729 2730 2731 2732 2733Used by:2743
Symbol 2735 Sound {alarma}Used by:2743
Symbol 2736 Sound {click}Used by:2743
Symbol 2737 Sound {gas}Used by:2743
Symbol 2738 Sound {gas_solo}Used by:2743
Symbol 2739 Sound {ingame_01}Used by:2743
Symbol 2740 Sound {logro}Used by:2743
Symbol 2741 Sound {editor_01}Used by:2743
Symbol 2742 Sound {principal_01}Used by:2743
Symbol 2743 MovieClip {preload}Uses:182 188 192 200 204 212 216 224 228 232 234 239 241 245 247 251 254 258 269 273 277 281 285 288 292 293 296 297 301 305 306 429 442 454 458 466 469 472 475 478 481 484 487 490 538 586 631 677 729 731 733 735 737 739 741 743 745 747 749 751 753 805 857 907 956 1110 1113 1116 1119 1122 1125 1128 1131 1134 1137 1140 1143 1146 1158 1160 1161 1162 1163 1164 1165 1166 1169 1172 1174 1176 1178 1180 1182 1184 1186 1188 1190 1192 1194 1196 1198 1200 1203 1206 1209 1212 1215 1218 1221 1224 1227 1230 1233 1236 1239 1242 1245 1252 1423 1425 1427 1428 1434 1441 1443 1445 1447 1449 1451 1453 1455 1457 1459 1461 1463 1465 1467 1469 1471 1473 1475 1477 1479 1481 1483 1485 1487 1489 1491 1493 1495 1497 1499 1501 1503 1505 1507 1509 1511 1513 1515 1517 1519 1521 1523 1525 1528 1530 1532 1534 1536 1538 1540 1542 1575 1630 1682 1683 1699 1702 1705 1788 1790 1845 1853 1856 1859 1862 1865 1868 1871 1874 1877 1880 1883 1886 1889 1892 1895 1898 1901 1904 1907 1910 1913 1916 1919 1922 1925 1928 1931 1934 1937 1940 1943 1946 1949 1952 1955 1958 1961 1964 1967 1970 1973 1976 1979 1982 1985 1988 1991 1994 1997 2000 2003 2006 2011 2015 2077 2078 2129 2131 2132 2136 2145 2222 2233 2267 1305 2269 1302 2270 1321 1297 2272 1298 2273 2274 2276 2277 2278 2280 2281 1290 2282 1293 2283 1326 1325 1335 1330 2308 2315 2334 2377 2390 2402 2409 2728 1262 2734 2735 2736 2737 2738 2739 2740 2741 2742Used by:Timeline
Symbol 2744 MovieClipUses:233Used by:2748
Symbol 2745 GraphicUsed by:2748
Symbol 2746 FontUsed by:2747
Symbol 2747 EditableTextUses:2746Used by:2748
Symbol 2748 MovieClip {DummyNeverFails2_fla.FPS_600}Uses:2744 2745 2747Used by:Timeline

Instance Names

"txt_denegado"Frame 1Symbol 181 EditableText
"splash_sponsor"Frame 3Symbol 2377 MovieClip {DummyNeverFails2_fla.sponsor_mc_569}
"jugar"Symbol 40 MovieClip {preloader_sc} Frame 1Symbol 15 Button
"boton_sponsor"Symbol 40 MovieClip {preloader_sc} Frame 1Symbol 28 Button
"porc"Symbol 40 MovieClip {preloader_sc} Frame 1Symbol 30 EditableText
"boton_tanoku"Symbol 40 MovieClip {preloader_sc} Frame 1Symbol 33 Button
"loadBar"Symbol 40 MovieClip {preloader_sc} Frame 1Symbol 37 MovieClip
"efecto"Symbol 451 MovieClip {DummyNeverFails2_fla.lanzadera_dinamica_83} Frame 1Symbol 442 MovieClip {DummyNeverFails2_fla.humo_81}
"brazo"Symbol 454 MovieClip {lanzadera_mc} Frame 1Symbol 451 MovieClip {DummyNeverFails2_fla.lanzadera_dinamica_83}
"lowerArmR"Symbol 1110 MovieClip {plantilla} Frame 1Symbol 538 MovieClip {brazo_inf_d}
"lowerArmL"Symbol 1110 MovieClip {plantilla} Frame 1Symbol 586 MovieClip {brazo_inf_i}
"upperArmR"Symbol 1110 MovieClip {plantilla} Frame 1Symbol 631 MovieClip {brazo_sup_d}
"upperArmL"Symbol 1110 MovieClip {plantilla} Frame 1Symbol 677 MovieClip {brazo_sup_i}
"lowerLegR"Symbol 1110 MovieClip {plantilla} Frame 1Symbol 805 MovieClip {pierna_inf_d}
"upperLegR"Symbol 1110 MovieClip {plantilla} Frame 1Symbol 907 MovieClip {pierna_sup_d}
"lowerLegL"Symbol 1110 MovieClip {plantilla} Frame 1Symbol 857 MovieClip {pierna_inf_i}
"upperLegL"Symbol 1110 MovieClip {plantilla} Frame 1Symbol 956 MovieClip {pierna_sup_i}
"torso2"Symbol 1110 MovieClip {plantilla} Frame 1Symbol 1005 MovieClip {torso_central}
"torso3"Symbol 1110 MovieClip {plantilla} Frame 1Symbol 1057 MovieClip {torso_inferior}
"torso1"Symbol 1110 MovieClip {plantilla} Frame 1Symbol 1109 MovieClip {torso_superior}
"head"Symbol 1110 MovieClip {plantilla} Frame 1Symbol 729 MovieClip {cabeza}
"torso2"Symbol 1110 MovieClip {plantilla} Frame 2Symbol 1005 MovieClip {torso_central}
"salir"Symbol 1245 MovieClip {Congratulations} Frame 1Symbol 1244 Button
"sponsor"Symbol 1252 MovieClip {Creditos} Frame 1Symbol 28 Button
"atras"Symbol 1252 MovieClip {Creditos} Frame 1Symbol 1247 Button
"bg"Symbol 1266 MovieClip {DummyNeverFails2_fla.Editor_Lienzo_179} Frame 1Symbol 1262 MovieClip
"camara"Symbol 1266 MovieClip {DummyNeverFails2_fla.Editor_Lienzo_179} Frame 1Symbol 1264 MovieClip {VCam_AS3_Interactive}
"myMask"Symbol 1290 MovieClip {estatico_circulo_mc} Frame 1Symbol 1286 MovieClip
"texture"Symbol 1290 MovieClip {estatico_circulo_mc} Frame 1Symbol 1289 MovieClip
"myMask"Symbol 1293 MovieClip {estatico_cuadrado_mc} Frame 1Symbol 1292 MovieClip
"texture"Symbol 1293 MovieClip {estatico_cuadrado_mc} Frame 1Symbol 1289 MovieClip
"myMask"Symbol 1297 MovieClip {dinamico_circulo_mc} Frame 1Symbol 1286 MovieClip
"texture"Symbol 1297 MovieClip {dinamico_circulo_mc} Frame 1Symbol 1296 MovieClip
"myMask"Symbol 1298 MovieClip {dinamico_cuadrado_mc} Frame 1Symbol 1292 MovieClip
"texture"Symbol 1298 MovieClip {dinamico_cuadrado_mc} Frame 1Symbol 1296 MovieClip
"myMask"Symbol 1302 MovieClip {autonomo_vertical_mc} Frame 1Symbol 1292 MovieClip
"texture"Symbol 1302 MovieClip {autonomo_vertical_mc} Frame 1Symbol 1301 MovieClip
"myMask"Symbol 1305 MovieClip {autonomo_horizontal_mc} Frame 1Symbol 1292 MovieClip
"texture"Symbol 1305 MovieClip {autonomo_horizontal_mc} Frame 1Symbol 1304 MovieClip
"bg1"Symbol 1337 MovieClip {DummyNeverFails2_fla.Editor_Objetos_182} Frame 1Symbol 1270 MovieClip
"bg2"Symbol 1337 MovieClip {DummyNeverFails2_fla.Editor_Objetos_182} Frame 1Symbol 1272 MovieClip
"bg3"Symbol 1337 MovieClip {DummyNeverFails2_fla.Editor_Objetos_182} Frame 1Symbol 1274 MovieClip
"bg4"Symbol 1337 MovieClip {DummyNeverFails2_fla.Editor_Objetos_182} Frame 1Symbol 1276 MovieClip
"bg5"Symbol 1337 MovieClip {DummyNeverFails2_fla.Editor_Objetos_182} Frame 1Symbol 1278 MovieClip
"bg6"Symbol 1337 MovieClip {DummyNeverFails2_fla.Editor_Objetos_182} Frame 1Symbol 1280 MovieClip
"bg7"Symbol 1337 MovieClip {DummyNeverFails2_fla.Editor_Objetos_182} Frame 1Symbol 1282 MovieClip
"bg8"Symbol 1337 MovieClip {DummyNeverFails2_fla.Editor_Objetos_182} Frame 1Symbol 1284 MovieClip
"ee"Symbol 1337 MovieClip {DummyNeverFails2_fla.Editor_Objetos_182} Frame 1Symbol 1290 MovieClip {estatico_circulo_mc}
"ec"Symbol 1337 MovieClip {DummyNeverFails2_fla.Editor_Objetos_182} Frame 1Symbol 1293 MovieClip {estatico_cuadrado_mc}
"de"Symbol 1337 MovieClip {DummyNeverFails2_fla.Editor_Objetos_182} Frame 1Symbol 1297 MovieClip {dinamico_circulo_mc}
"dc"Symbol 1337 MovieClip {DummyNeverFails2_fla.Editor_Objetos_182} Frame 1Symbol 1298 MovieClip {dinamico_cuadrado_mc}
"av"Symbol 1337 MovieClip {DummyNeverFails2_fla.Editor_Objetos_182} Frame 1Symbol 1302 MovieClip {autonomo_vertical_mc}
"ah"Symbol 1337 MovieClip {DummyNeverFails2_fla.Editor_Objetos_182} Frame 1Symbol 1305 MovieClip {autonomo_horizontal_mc}
"me"Symbol 1337 MovieClip {DummyNeverFails2_fla.Editor_Objetos_182} Frame 1Symbol 1321 MovieClip {meta_estatica_mc}
"mc"Symbol 1337 MovieClip {DummyNeverFails2_fla.Editor_Objetos_182} Frame 1Symbol 469 MovieClip {meta_cuadrada_mc}
"mr"Symbol 1337 MovieClip {DummyNeverFails2_fla.Editor_Objetos_182} Frame 1Symbol 466 MovieClip {meta_circular_mc}
"cm"Symbol 1337 MovieClip {DummyNeverFails2_fla.Editor_Objetos_182} Frame 1Symbol 1325 MovieClip {circulo_moneda_mc}
"ci"Symbol 1337 MovieClip {DummyNeverFails2_fla.Editor_Objetos_182} Frame 1Symbol 1326 MovieClip {circulo_impulsor_mc}
"cn"Symbol 1337 MovieClip {DummyNeverFails2_fla.Editor_Objetos_182} Frame 1Symbol 1330 MovieClip {circulo_negativo_mc}
"cp"Symbol 1337 MovieClip {DummyNeverFails2_fla.Editor_Objetos_182} Frame 1Symbol 1335 MovieClip {circulo_positivo_mc}
"l"Symbol 1337 MovieClip {DummyNeverFails2_fla.Editor_Objetos_182} Frame 1Symbol 458 MovieClip {lanzadera_editor_mc}
"borrar"Symbol 1353 MovieClip {DummyNeverFails2_fla.Editor_Menu_211} Frame 1Symbol 1339 Button
"salir"Symbol 1353 MovieClip {DummyNeverFails2_fla.Editor_Menu_211} Frame 1Symbol 1244 Button
"cargar"Symbol 1353 MovieClip {DummyNeverFails2_fla.Editor_Menu_211} Frame 1Symbol 1340 Button
"guardar"Symbol 1353 MovieClip {DummyNeverFails2_fla.Editor_Menu_211} Frame 1Symbol 1341 Button
"probar"Symbol 1353 MovieClip {DummyNeverFails2_fla.Editor_Menu_211} Frame 1Symbol 1342 Button
"info"Symbol 1353 MovieClip {DummyNeverFails2_fla.Editor_Menu_211} Frame 1Symbol 1343 EditableText
"sfx"Symbol 1353 MovieClip {DummyNeverFails2_fla.Editor_Menu_211} Frame 1Symbol 292 MovieClip {DummyNeverFails2_fla.sound_button_31}
"share"Symbol 1353 MovieClip {DummyNeverFails2_fla.Editor_Menu_211} Frame 1Symbol 1347 Button
"musica"Symbol 1353 MovieClip {DummyNeverFails2_fla.Editor_Menu_211} Frame 1Symbol 254 MovieClip {DummyNeverFails2_fla.music_button_21}
"herramientas"Symbol 1353 MovieClip {DummyNeverFails2_fla.Editor_Menu_211} Frame 1Symbol 1350 MovieClip {DummyNeverFails2_fla.tools_button_217}
"tutorial"Symbol 1353 MovieClip {DummyNeverFails2_fla.Editor_Menu_211} Frame 1Symbol 1351 Button
"ayuda"Symbol 1353 MovieClip {DummyNeverFails2_fla.Editor_Menu_211} Frame 1Symbol 1352 Button
"label_txt"Symbol 1360 MovieClip {DummyNeverFails2_fla.sliderInfo_mc_222} Frame 1Symbol 1359 EditableText
"info_mc"Symbol 1361 MovieClip {DummyNeverFails2_fla.slider_mc_221} Frame 1Symbol 1360 MovieClip {DummyNeverFails2_fla.sliderInfo_mc_222}
"salir_guardar"Symbol 1382 MovieClip {DummyNeverFails2_fla.Editor_Guardar_233} Frame 1Symbol 1244 Button
"guardar_guardar"Symbol 1382 MovieClip {DummyNeverFails2_fla.Editor_Guardar_233} Frame 1Symbol 1341 Button
"exportar_guardar"Symbol 1382 MovieClip {DummyNeverFails2_fla.Editor_Guardar_233} Frame 1Symbol 1372 Button
"nombre"Symbol 1382 MovieClip {DummyNeverFails2_fla.Editor_Guardar_233} Frame 1Symbol 1373 EditableText
"lista"Symbol 1382 MovieClip {DummyNeverFails2_fla.Editor_Guardar_233} Frame 1Symbol 139 MovieClip {fl.controls.List}
"titulo"Symbol 1382 MovieClip {DummyNeverFails2_fla.Editor_Guardar_233} Frame 1Symbol 1375 EditableText
"fondo_exportar"Symbol 1382 MovieClip {DummyNeverFails2_fla.Editor_Guardar_233} Frame 1Symbol 1379 MovieClip
"cadena"Symbol 1382 MovieClip {DummyNeverFails2_fla.Editor_Guardar_233} Frame 1Symbol 1380 EditableText
"guardar_copiar"Symbol 1382 MovieClip {DummyNeverFails2_fla.Editor_Guardar_233} Frame 1Symbol 1381 Button
"guardar_salir_exportar"Symbol 1382 MovieClip {DummyNeverFails2_fla.Editor_Guardar_233} Frame 1Symbol 1244 Button
"salir_cargar"Symbol 1401 MovieClip {DummyNeverFails2_fla.Editor_Cargar_263} Frame 1Symbol 1244 Button
"cargar_cargar"Symbol 1401 MovieClip {DummyNeverFails2_fla.Editor_Cargar_263} Frame 1Symbol 1340 Button
"importar_cargar"Symbol 1401 MovieClip {DummyNeverFails2_fla.Editor_Cargar_263} Frame 1Symbol 1390 Button
"cargar_borrar"Symbol 1401 MovieClip {DummyNeverFails2_fla.Editor_Cargar_263} Frame 1Symbol 1394 Button
"lista"Symbol 1401 MovieClip {DummyNeverFails2_fla.Editor_Cargar_263} Frame 1Symbol 139 MovieClip {fl.controls.List}
"titulo"Symbol 1401 MovieClip {DummyNeverFails2_fla.Editor_Cargar_263} Frame 1Symbol 1397 EditableText
"fondo_importar"Symbol 1401 MovieClip {DummyNeverFails2_fla.Editor_Cargar_263} Frame 1Symbol 1399 MovieClip
"cadena"Symbol 1401 MovieClip {DummyNeverFails2_fla.Editor_Cargar_263} Frame 1Symbol 1400 EditableText
"cargar_importar_importar"Symbol 1401 MovieClip {DummyNeverFails2_fla.Editor_Cargar_263} Frame 1Symbol 1390 Button
"cargar_salir_importar"Symbol 1401 MovieClip {DummyNeverFails2_fla.Editor_Cargar_263} Frame 1Symbol 1244 Button
"miniatura"Symbol 1421 MovieClip {DummyNeverFails2_fla.Editor_Submit_268} Frame 1Symbol 1407 MovieClip {DummyNeverFails2_fla.miniatura_submit_270}
"salir_submit"Symbol 1421 MovieClip {DummyNeverFails2_fla.Editor_Submit_268} Frame 1Symbol 1244 Button
"nombre"Symbol 1421 MovieClip {DummyNeverFails2_fla.Editor_Submit_268} Frame 1Symbol 1408 EditableText
"jugador"Symbol 1421 MovieClip {DummyNeverFails2_fla.Editor_Submit_268} Frame 1Symbol 1410 EditableText
"submit_submit"Symbol 1421 MovieClip {DummyNeverFails2_fla.Editor_Submit_268} Frame 1Symbol 1414 Button
"titulo"Symbol 1421 MovieClip {DummyNeverFails2_fla.Editor_Submit_268} Frame 1Symbol 1417 EditableText
"e_nombre"Symbol 1421 MovieClip {DummyNeverFails2_fla.Editor_Submit_268} Frame 1Symbol 1418 EditableText
"e_jugador"Symbol 1421 MovieClip {DummyNeverFails2_fla.Editor_Submit_268} Frame 1Symbol 1419 EditableText
"error_nombre"Symbol 1421 MovieClip {DummyNeverFails2_fla.Editor_Submit_268} Frame 1Symbol 1420 EditableText
"lienzo"Symbol 1423 MovieClip {Editor} Frame 1Symbol 1266 MovieClip {DummyNeverFails2_fla.Editor_Lienzo_179}
"objetos"Symbol 1423 MovieClip {Editor} Frame 1Symbol 1337 MovieClip {DummyNeverFails2_fla.Editor_Objetos_182}
"menu"Symbol 1423 MovieClip {Editor} Frame 1Symbol 1353 MovieClip {DummyNeverFails2_fla.Editor_Menu_211}
"track_mc"Symbol 1423 MovieClip {Editor} Frame 1Symbol 1355 MovieClip
"slider_mc"Symbol 1423 MovieClip {Editor} Frame 1Symbol 1361 MovieClip {DummyNeverFails2_fla.slider_mc_221}
"szoom"Symbol 1423 MovieClip {Editor} Frame 1Symbol 179 MovieClip {fl.controls.Slider}
"guardar"Symbol 1423 MovieClip {Editor} Frame 1Symbol 1382 MovieClip {DummyNeverFails2_fla.Editor_Guardar_233}
"cargar"Symbol 1423 MovieClip {Editor} Frame 1Symbol 1401 MovieClip {DummyNeverFails2_fla.Editor_Cargar_263}
"submit"Symbol 1423 MovieClip {Editor} Frame 1Symbol 1421 MovieClip {DummyNeverFails2_fla.Editor_Submit_268}
"fade"Symbol 1423 MovieClip {Editor} Frame 1Symbol 1422 MovieClip
"lowerArmR"Symbol 1683 MovieClip {DummyNeverFails2_fla.dummyrandom_332} Frame 1Symbol 731 MovieClip
"lowerArmL"Symbol 1683 MovieClip {DummyNeverFails2_fla.dummyrandom_332} Frame 1Symbol 733 MovieClip
"upperArmR"Symbol 1683 MovieClip {DummyNeverFails2_fla.dummyrandom_332} Frame 1Symbol 735 MovieClip
"upperArmL"Symbol 1683 MovieClip {DummyNeverFails2_fla.dummyrandom_332} Frame 1Symbol 737 MovieClip
"lowerLegR"Symbol 1683 MovieClip {DummyNeverFails2_fla.dummyrandom_332} Frame 1Symbol 741 MovieClip
"upperLegR"Symbol 1683 MovieClip {DummyNeverFails2_fla.dummyrandom_332} Frame 1Symbol 745 MovieClip
"lowerLegL"Symbol 1683 MovieClip {DummyNeverFails2_fla.dummyrandom_332} Frame 1Symbol 743 MovieClip
"upperLegL"Symbol 1683 MovieClip {DummyNeverFails2_fla.dummyrandom_332} Frame 1Symbol 747 MovieClip
"torso3"Symbol 1683 MovieClip {DummyNeverFails2_fla.dummyrandom_332} Frame 1Symbol 751 MovieClip
"torso2"Symbol 1683 MovieClip {DummyNeverFails2_fla.dummyrandom_332} Frame 1Symbol 749 MovieClip {DummyNeverFails2_fla.torso_central_111}
"torso1"Symbol 1683 MovieClip {DummyNeverFails2_fla.dummyrandom_332} Frame 1Symbol 753 MovieClip
"head"Symbol 1683 MovieClip {DummyNeverFails2_fla.dummyrandom_332} Frame 1Symbol 739 MovieClip
"dummy_random"Symbol 1688 MovieClip {DummyNeverFails2_fla.miniaturas_dummies_335} Frame 1Symbol 1687 MovieClip
"lowerArmR"Symbol 1688 MovieClip {DummyNeverFails2_fla.miniaturas_dummies_335} Frame 1Symbol 538 MovieClip {brazo_inf_d}
"lowerArmL"Symbol 1688 MovieClip {DummyNeverFails2_fla.miniaturas_dummies_335} Frame 1Symbol 586 MovieClip {brazo_inf_i}
"upperArmR"Symbol 1688 MovieClip {DummyNeverFails2_fla.miniaturas_dummies_335} Frame 1Symbol 631 MovieClip {brazo_sup_d}
"upperArmL"Symbol 1688 MovieClip {DummyNeverFails2_fla.miniaturas_dummies_335} Frame 1Symbol 677 MovieClip {brazo_sup_i}
"lowerLegR"Symbol 1688 MovieClip {DummyNeverFails2_fla.miniaturas_dummies_335} Frame 1Symbol 805 MovieClip {pierna_inf_d}
"upperLegR"Symbol 1688 MovieClip {DummyNeverFails2_fla.miniaturas_dummies_335} Frame 1Symbol 907 MovieClip {pierna_sup_d}
"lowerLegL"Symbol 1688 MovieClip {DummyNeverFails2_fla.miniaturas_dummies_335} Frame 1Symbol 857 MovieClip {pierna_inf_i}
"upperLegL"Symbol 1688 MovieClip {DummyNeverFails2_fla.miniaturas_dummies_335} Frame 1Symbol 956 MovieClip {pierna_sup_i}
"torso2"Symbol 1688 MovieClip {DummyNeverFails2_fla.miniaturas_dummies_335} Frame 1Symbol 1005 MovieClip {torso_central}
"torso3"Symbol 1688 MovieClip {DummyNeverFails2_fla.miniaturas_dummies_335} Frame 1Symbol 1057 MovieClip {torso_inferior}
"torso1"Symbol 1688 MovieClip {DummyNeverFails2_fla.miniaturas_dummies_335} Frame 1Symbol 1109 MovieClip {torso_superior}
"head"Symbol 1688 MovieClip {DummyNeverFails2_fla.miniaturas_dummies_335} Frame 1Symbol 729 MovieClip {cabeza}
"miniatura_dummy"Symbol 1691 MovieClip {DummyNeverFails2_fla.fondo_galeria_dummy_334} Frame 1Symbol 1688 MovieClip {DummyNeverFails2_fla.miniaturas_dummies_335}
"lista"Symbol 1698 MovieClip {DummyNeverFails2_fla.panel_lista_logros_337} Frame 1Symbol 165 MovieClip {fl.containers.ScrollPane}
"atras"Symbol 1698 MovieClip {DummyNeverFails2_fla.panel_lista_logros_337} Frame 1Symbol 1247 Button
"aleatoreo"Symbol 1698 MovieClip {DummyNeverFails2_fla.panel_lista_logros_337} Frame 1Symbol 1696 Button
"fondo"Symbol 1699 MovieClip {Galeria} Frame 1Symbol 1691 MovieClip {DummyNeverFails2_fla.fondo_galeria_dummy_334}
"p_logros"Symbol 1699 MovieClip {Galeria} Frame 1Symbol 1698 MovieClip {DummyNeverFails2_fla.panel_lista_logros_337}
"fade"Symbol 1699 MovieClip {Galeria} Frame 1Symbol 1422 MovieClip
"bg"Symbol 1706 MovieClip {DummyNeverFails2_fla.Juego_Lienzo_346} Frame 1Symbol 429 MovieClip {DummyNeverFails2_fla.fondo_43}
"camara"Symbol 1706 MovieClip {DummyNeverFails2_fla.Juego_Lienzo_346} Frame 1Symbol 1264 MovieClip {VCam_AS3_Interactive}
"like_online"Symbol 1775 MovieClip {DummyNeverFails2_fla.popupNext_360} Frame 1Symbol 1760 MovieClip
"random_online"Symbol 1775 MovieClip {DummyNeverFails2_fla.popupNext_360} Frame 1Symbol 1764 Button
"nota"Symbol 1775 MovieClip {DummyNeverFails2_fla.popupNext_360} Frame 1Symbol 1770 MovieClip
"online"Symbol 1775 MovieClip {DummyNeverFails2_fla.popupNext_360} Frame 1Symbol 1774 MovieClip
"medidor"Symbol 1787 MovieClip {DummyNeverFails2_fla.Juego_Menu_347} Frame 1Symbol 1713 MovieClip {DummyNeverFails2_fla.painometer_348}
"sfx"Symbol 1787 MovieClip {DummyNeverFails2_fla.Juego_Menu_347} Frame 1Symbol 292 MovieClip {DummyNeverFails2_fla.sound_button_31}
"musica"Symbol 1787 MovieClip {DummyNeverFails2_fla.Juego_Menu_347} Frame 1Symbol 254 MovieClip {DummyNeverFails2_fla.music_button_21}
"slow"Symbol 1787 MovieClip {DummyNeverFails2_fla.Juego_Menu_347} Frame 1Symbol 288 MovieClip
"galeria"Symbol 1787 MovieClip {DummyNeverFails2_fla.Juego_Menu_347} Frame 1Symbol 1718 Button
"solucion"Symbol 1787 MovieClip {DummyNeverFails2_fla.Juego_Menu_347} Frame 1Symbol 1351 Button
"logo_sponsor_ingame"Symbol 1787 MovieClip {DummyNeverFails2_fla.Juego_Menu_347} Frame 1Symbol 28 Button
"sponsor"Symbol 1787 MovieClip {DummyNeverFails2_fla.Juego_Menu_347} Frame 1Symbol 1723 Button
"info"Symbol 1787 MovieClip {DummyNeverFails2_fla.Juego_Menu_347} Frame 1Symbol 1725 EditableText
"editar"Symbol 1787 MovieClip {DummyNeverFails2_fla.Juego_Menu_347} Frame 1Symbol 1726 Button
"back"Symbol 1787 MovieClip {DummyNeverFails2_fla.Juego_Menu_347} Frame 1Symbol 1730 Button
"reintentar"Symbol 1787 MovieClip {DummyNeverFails2_fla.Juego_Menu_347} Frame 1Symbol 1731 Button
"salir"Symbol 1787 MovieClip {DummyNeverFails2_fla.Juego_Menu_347} Frame 1Symbol 1244 Button
"normal"Symbol 1787 MovieClip {DummyNeverFails2_fla.Juego_Menu_347} Frame 1Symbol 1735 Button
"zero"Symbol 1787 MovieClip {DummyNeverFails2_fla.Juego_Menu_347} Frame 1Symbol 1739 Button
"nota"Symbol 1787 MovieClip {DummyNeverFails2_fla.Juego_Menu_347} Frame 1Symbol 1747 MovieClip
"skin"Symbol 1787 MovieClip {DummyNeverFails2_fla.Juego_Menu_347} Frame 1Symbol 1748 EditableText
"box2d"Symbol 1787 MovieClip {DummyNeverFails2_fla.Juego_Menu_347} Frame 1Symbol 1749 Button
"gravedad"Symbol 1787 MovieClip {DummyNeverFails2_fla.Juego_Menu_347} Frame 1Symbol 1750 EditableText
"distancia"Symbol 1787 MovieClip {DummyNeverFails2_fla.Juego_Menu_347} Frame 1Symbol 1751 EditableText
"zoom"Symbol 1787 MovieClip {DummyNeverFails2_fla.Juego_Menu_347} Frame 1Symbol 1752 EditableText
"info2"Symbol 1787 MovieClip {DummyNeverFails2_fla.Juego_Menu_347} Frame 1Symbol 1753 EditableText
"info3"Symbol 1787 MovieClip {DummyNeverFails2_fla.Juego_Menu_347} Frame 1Symbol 1754 EditableText
"szoom"Symbol 1787 MovieClip {DummyNeverFails2_fla.Juego_Menu_347} Frame 1Symbol 179 MovieClip {fl.controls.Slider}
"panelsiguiente"Symbol 1787 MovieClip {DummyNeverFails2_fla.Juego_Menu_347} Frame 1Symbol 1775 MovieClip {DummyNeverFails2_fla.popupNext_360}
"siguiente"Symbol 1787 MovieClip {DummyNeverFails2_fla.Juego_Menu_347} Frame 1Symbol 1776 Button
"logo_sponsor_siguiente"Symbol 1787 MovieClip {DummyNeverFails2_fla.Juego_Menu_347} Frame 1Symbol 28 Button
"masjuegos"Symbol 1787 MovieClip {DummyNeverFails2_fla.Juego_Menu_347} Frame 1Symbol 1782 Button
"track_mc"Symbol 1787 MovieClip {DummyNeverFails2_fla.Juego_Menu_347} Frame 1Symbol 1355 MovieClip
"slider_mc"Symbol 1787 MovieClip {DummyNeverFails2_fla.Juego_Menu_347} Frame 1Symbol 1361 MovieClip {DummyNeverFails2_fla.slider_mc_221}
"areaGravedad"Symbol 1787 MovieClip {DummyNeverFails2_fla.Juego_Menu_347} Frame 1Symbol 1784 MovieClip
"puntoGravedad"Symbol 1787 MovieClip {DummyNeverFails2_fla.Juego_Menu_347} Frame 1Symbol 1786 MovieClip
"lienzo"Symbol 1788 MovieClip {Juego} Frame 1Symbol 1706 MovieClip {DummyNeverFails2_fla.Juego_Lienzo_346}
"menu"Symbol 1788 MovieClip {Juego} Frame 1Symbol 1787 MovieClip {DummyNeverFails2_fla.Juego_Menu_347}
"fade"Symbol 1788 MovieClip {Juego} Frame 1Symbol 1422 MovieClip
"torso"Symbol 1845 MovieClip {achipopups} Frame 1Symbol 1109 MovieClip {torso_superior}
"cara"Symbol 1845 MovieClip {achipopups} Frame 1Symbol 729 MovieClip {cabeza}
"info2"Symbol 2015 MovieClip {DummyNeverFails2_fla.miniaturas_niveles_423} Frame 1Symbol 2012 EditableText
"info"Symbol 2015 MovieClip {DummyNeverFails2_fla.miniaturas_niveles_423} Frame 1Symbol 2013 EditableText
"info3"Symbol 2015 MovieClip {DummyNeverFails2_fla.miniaturas_niveles_423} Frame 1Symbol 2014 EditableText
"p1"Symbol 2033 MovieClip {DummyNeverFails2_fla.panel_niveles_425} Frame 1Symbol 2018 MovieClip
"p2"Symbol 2033 MovieClip {DummyNeverFails2_fla.panel_niveles_425} Frame 1Symbol 2018 MovieClip
"p3"Symbol 2033 MovieClip {DummyNeverFails2_fla.panel_niveles_425} Frame 1Symbol 2018 MovieClip
"p4"Symbol 2033 MovieClip {DummyNeverFails2_fla.panel_niveles_425} Frame 1Symbol 2018 MovieClip
"p5"Symbol 2033 MovieClip {DummyNeverFails2_fla.panel_niveles_425} Frame 1Symbol 2018 MovieClip
"p6"Symbol 2033 MovieClip {DummyNeverFails2_fla.panel_niveles_425} Frame 1Symbol 2018 MovieClip
"p7"Symbol 2033 MovieClip {DummyNeverFails2_fla.panel_niveles_425} Frame 1Symbol 2018 MovieClip
"p8"Symbol 2033 MovieClip {DummyNeverFails2_fla.panel_niveles_425} Frame 1Symbol 2018 MovieClip
"p9"Symbol 2033 MovieClip {DummyNeverFails2_fla.panel_niveles_425} Frame 1Symbol 2018 MovieClip
"dummy_random"Symbol 2073 MovieClip {DummyNeverFails2_fla.boton_skins_442} Frame 1Symbol 1687 MovieClip
"lowerArmR"Symbol 2073 MovieClip {DummyNeverFails2_fla.boton_skins_442} Frame 1Symbol 538 MovieClip {brazo_inf_d}
"lowerArmL"Symbol 2073 MovieClip {DummyNeverFails2_fla.boton_skins_442} Frame 1Symbol 586 MovieClip {brazo_inf_i}
"upperArmR"Symbol 2073 MovieClip {DummyNeverFails2_fla.boton_skins_442} Frame 1Symbol 631 MovieClip {brazo_sup_d}
"upperArmL"Symbol 2073 MovieClip {DummyNeverFails2_fla.boton_skins_442} Frame 1Symbol 677 MovieClip {brazo_sup_i}
"lowerLegR"Symbol 2073 MovieClip {DummyNeverFails2_fla.boton_skins_442} Frame 1Symbol 805 MovieClip {pierna_inf_d}
"upperLegR"Symbol 2073 MovieClip {DummyNeverFails2_fla.boton_skins_442} Frame 1Symbol 907 MovieClip {pierna_sup_d}
"lowerLegL"Symbol 2073 MovieClip {DummyNeverFails2_fla.boton_skins_442} Frame 1Symbol 857 MovieClip {pierna_inf_i}
"upperLegL"Symbol 2073 MovieClip {DummyNeverFails2_fla.boton_skins_442} Frame 1Symbol 956 MovieClip {pierna_sup_i}
"torso2"Symbol 2073 MovieClip {DummyNeverFails2_fla.boton_skins_442} Frame 1Symbol 1005 MovieClip {torso_central}
"torso3"Symbol 2073 MovieClip {DummyNeverFails2_fla.boton_skins_442} Frame 1Symbol 1057 MovieClip {torso_inferior}
"torso1"Symbol 2073 MovieClip {DummyNeverFails2_fla.boton_skins_442} Frame 1Symbol 1109 MovieClip {torso_superior}
"head"Symbol 2073 MovieClip {DummyNeverFails2_fla.boton_skins_442} Frame 1Symbol 729 MovieClip {cabeza}
"panel"Symbol 2077 MovieClip {Niveles} Frame 1Symbol 2033 MovieClip {DummyNeverFails2_fla.panel_niveles_425}
"submit"Symbol 2077 MovieClip {Niveles} Frame 1Symbol 2034 Button
"puntuaciones"Symbol 2077 MovieClip {Niveles} Frame 1Symbol 2035 Button
"info"Symbol 2077 MovieClip {Niveles} Frame 1Symbol 2036 EditableText
"atras"Symbol 2077 MovieClip {Niveles} Frame 1Symbol 1247 Button
"miniatura"Symbol 2077 MovieClip {Niveles} Frame 1Symbol 2015 MovieClip {DummyNeverFails2_fla.miniaturas_niveles_423}
"b1"Symbol 2077 MovieClip {Niveles} Frame 1Symbol 2043 MovieClip
"b3"Symbol 2077 MovieClip {Niveles} Frame 1Symbol 2046 MovieClip
"b5"Symbol 2077 MovieClip {Niveles} Frame 1Symbol 2049 MovieClip
"b7"Symbol 2077 MovieClip {Niveles} Frame 1Symbol 2052 MovieClip
"b9"Symbol 2077 MovieClip {Niveles} Frame 1Symbol 2055 MovieClip
"b2"Symbol 2077 MovieClip {Niveles} Frame 1Symbol 2058 MovieClip
"b4"Symbol 2077 MovieClip {Niveles} Frame 1Symbol 2061 MovieClip
"b6"Symbol 2077 MovieClip {Niveles} Frame 1Symbol 2064 MovieClip
"b8"Symbol 2077 MovieClip {Niveles} Frame 1Symbol 2067 MovieClip
"izq"Symbol 2077 MovieClip {Niveles} Frame 1Symbol 2069 Button
"der"Symbol 2077 MovieClip {Niveles} Frame 1Symbol 2070 Button
"miniatura_dummy"Symbol 2077 MovieClip {Niveles} Frame 1Symbol 2073 MovieClip {DummyNeverFails2_fla.boton_skins_442}
"fade"Symbol 2077 MovieClip {Niveles} Frame 1Symbol 2076 MovieClip
"borrar_partida"Symbol 2127 MovieClip {DummyNeverFails2_fla.panel_version_463} Frame 1Symbol 2121 Button
"desbloquear_todo"Symbol 2127 MovieClip {DummyNeverFails2_fla.panel_version_463} Frame 1Symbol 2126 Button
"niveles_online"Symbol 2129 MovieClip {Principal} Frame 1Symbol 2092 Button
"dummies_online"Symbol 2129 MovieClip {Principal} Frame 1Symbol 2095 Button
"jugar"Symbol 2129 MovieClip {Principal} Frame 1Symbol 2096 Button
"editor"Symbol 2129 MovieClip {Principal} Frame 1Symbol 2097 Button
"mas_juegos"Symbol 2129 MovieClip {Principal} Frame 1Symbol 2098 Button
"creditos"Symbol 2129 MovieClip {Principal} Frame 1Symbol 2099 Button
"galeria"Symbol 2129 MovieClip {Principal} Frame 1Symbol 2100 Button
"tanoku"Symbol 2129 MovieClip {Principal} Frame 1Symbol 33 Button
"sponsor"Symbol 2129 MovieClip {Principal} Frame 1Symbol 28 Button
"editor_dummy"Symbol 2129 MovieClip {Principal} Frame 1Symbol 2104 Button
"info_niveles"Symbol 2129 MovieClip {Principal} Frame 1Symbol 2105 EditableText
"info_dummies"Symbol 2129 MovieClip {Principal} Frame 1Symbol 2106 EditableText
"musica"Symbol 2129 MovieClip {Principal} Frame 1Symbol 254 MovieClip {DummyNeverFails2_fla.music_button_21}
"info_temp"Symbol 2129 MovieClip {Principal} Frame 1Symbol 2107 EditableText
"original"Symbol 2129 MovieClip {Principal} Frame 1Symbol 2114 Button
"panel_v"Symbol 2129 MovieClip {Principal} Frame 1Symbol 2127 MovieClip {DummyNeverFails2_fla.panel_version_463}
"cabeza_d"Symbol 2129 MovieClip {Principal} Frame 1Symbol 2128 MovieClip
"head"Symbol 2136 MovieClip {DummyNeverFails2_fla.splash_468} Frame 1Symbol 729 MovieClip {cabeza}
"torso2"Symbol 2136 MovieClip {DummyNeverFails2_fla.splash_468} Frame 1Symbol 1005 MovieClip {torso_central}
"lowerArmR"Symbol 2136 MovieClip {DummyNeverFails2_fla.splash_468} Frame 1Symbol 538 MovieClip {brazo_inf_d}
"lowerArmL"Symbol 2136 MovieClip {DummyNeverFails2_fla.splash_468} Frame 1Symbol 586 MovieClip {brazo_inf_i}
"torso1"Symbol 2136 MovieClip {DummyNeverFails2_fla.splash_468} Frame 1Symbol 1109 MovieClip {torso_superior}
"upperArmR"Symbol 2136 MovieClip {DummyNeverFails2_fla.splash_468} Frame 1Symbol 631 MovieClip {brazo_sup_d}
"upperArmL"Symbol 2136 MovieClip {DummyNeverFails2_fla.splash_468} Frame 1Symbol 677 MovieClip {brazo_sup_i}
"lowerLegR"Symbol 2136 MovieClip {DummyNeverFails2_fla.splash_468} Frame 1Symbol 805 MovieClip {pierna_inf_d}
"upperLegR"Symbol 2136 MovieClip {DummyNeverFails2_fla.splash_468} Frame 1Symbol 907 MovieClip {pierna_sup_d}
"lowerLegL"Symbol 2136 MovieClip {DummyNeverFails2_fla.splash_468} Frame 1Symbol 857 MovieClip {pierna_inf_i}
"upperLegL"Symbol 2136 MovieClip {DummyNeverFails2_fla.splash_468} Frame 1Symbol 956 MovieClip {pierna_sup_i}
"torso3"Symbol 2136 MovieClip {DummyNeverFails2_fla.splash_468} Frame 1Symbol 1057 MovieClip {torso_inferior}
"torso2"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 1005 MovieClip {torso_central}
"lowerArmR"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 538 MovieClip {brazo_inf_d}
"lowerArmL"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 586 MovieClip {brazo_inf_i}
"upperArmR"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 631 MovieClip {brazo_sup_d}
"upperArmL"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 677 MovieClip {brazo_sup_i}
"lowerLegR"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 805 MovieClip {pierna_inf_d}
"upperLegR"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 907 MovieClip {pierna_sup_d}
"lowerLegL"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 857 MovieClip {pierna_inf_i}
"upperLegL"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 956 MovieClip {pierna_sup_i}
"torso3"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 1057 MovieClip {torso_inferior}
"torso1"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 1109 MovieClip {torso_superior}
"head"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 729 MovieClip {cabeza}
"lienzo"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 2148 MovieClip
"area"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 2150 MovieClip
"menu"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 1353 MovieClip {DummyNeverFails2_fla.Editor_Menu_211}
"stroke_color_mc"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 162 MovieClip {fl.controls.ColorPicker}
"size_slider"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 179 MovieClip {fl.controls.Slider}
"_brushShapes"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 140 MovieClip {fl.controls.ComboBox}
"save_btn"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 80 MovieClip {fl.controls.Button}
"clear_btn"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 80 MovieClip {fl.controls.Button}
"undo_btn"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 2157 MovieClip {DummyNeverFails2_fla.editor_undo_button_505}
"redo_btn"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 2160 MovieClip {DummyNeverFails2_fla.editor_redo_button_508}
"zoom_slider_mc"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 179 MovieClip {fl.controls.Slider}
"overlay_cb"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 61 MovieClip {fl.controls.CheckBox}
"brush_tool_mc"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 2168 MovieClip {DummyNeverFails2_fla.editor_brush_button_519}
"eraser_tool_mc"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 2172 MovieClip {DummyNeverFails2_fla.editor_eraser_button_520}
"t_size"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 2173 EditableText
"b_capa_brazod"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 2176 MovieClip {DummyNeverFails2_fla.editor_right_lower_arm_button_521}
"b_capa_antebrazod"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 2179 MovieClip {DummyNeverFails2_fla.editor_right_upper_arm_button_522}
"b_capa_brazoi"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 2182 MovieClip {DummyNeverFails2_fla.editor_left_lower_arm_button_523}
"b_capa_antebrazoi"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 2185 MovieClip {DummyNeverFails2_fla.editor_left_upper_arm_button_524}
"b_capa_cabeza"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 2188 MovieClip {DummyNeverFails2_fla.editor_head_button_525}
"b_capa_torso2"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 2191 MovieClip {DummyNeverFails2_fla.editor_middle_torso_button_526}
"b_capa_torso1"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 2194 MovieClip {DummyNeverFails2_fla.editor_upper_torso_button_527}
"b_capa_antepiernai"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 2197 MovieClip {DummyNeverFails2_fla.editor_left_upper_leg_button_528}
"b_capa_antepiernad"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 2200 MovieClip {DummyNeverFails2_fla.editor_right_upper_leg_button_529}
"b_capa_torso3"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 2203 MovieClip {DummyNeverFails2_fla.editor_lower_torso_button_530}
"b_capa_piernai"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 2206 MovieClip {DummyNeverFails2_fla.editor_left_lower_leg_button_531}
"b_capa_piernad"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 2209 MovieClip {DummyNeverFails2_fla.editor_right_lower_leg_button_532}
"bucket_tool_mc"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 2213 MovieClip {DummyNeverFails2_fla.editor_bucket_button_533}
"cursor_mouse"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 2217 MovieClip
"guardar"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 1382 MovieClip {DummyNeverFails2_fla.Editor_Guardar_233}
"cargar"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 1401 MovieClip {DummyNeverFails2_fla.Editor_Cargar_263}
"submit"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 1421 MovieClip {DummyNeverFails2_fla.Editor_Submit_268}
"fade"Symbol 2222 MovieClip {EditorDummy} Frame 1Symbol 1422 MovieClip
"lista"Symbol 2267 MovieClip {Niveles_Jugadores} Frame 1Symbol 165 MovieClip {fl.containers.ScrollPane}
"atras"Symbol 2267 MovieClip {Niveles_Jugadores} Frame 1Symbol 1247 Button
"mis_niveles"Symbol 2267 MovieClip {Niveles_Jugadores} Frame 1Symbol 2240 MovieClip {DummyNeverFails2_fla.my_levels_button_541}
"ultimos"Symbol 2267 MovieClip {Niveles_Jugadores} Frame 1Symbol 2244 MovieClip {DummyNeverFails2_fla.latest_button_542}
"esta_semana"Symbol 2267 MovieClip {Niveles_Jugadores} Frame 1Symbol 2248 MovieClip {DummyNeverFails2_fla.today_button_543}
"hoy"Symbol 2267 MovieClip {Niveles_Jugadores} Frame 1Symbol 2252 MovieClip {DummyNeverFails2_fla.this_week_button_544}
"todos"Symbol 2267 MovieClip {Niveles_Jugadores} Frame 1Symbol 2255 MovieClip {DummyNeverFails2_fla.all_time_button_545}
"mas_popular"Symbol 2267 MovieClip {Niveles_Jugadores} Frame 1Symbol 2259 MovieClip {DummyNeverFails2_fla.popular_button_546}
"mas_nuevo"Symbol 2267 MovieClip {Niveles_Jugadores} Frame 1Symbol 2263 MovieClip {DummyNeverFails2_fla.newest_button_547}
"play_random"Symbol 2267 MovieClip {Niveles_Jugadores} Frame 1Symbol 1696 Button
"total"Symbol 2267 MovieClip {Niveles_Jugadores} Frame 1Symbol 2265 EditableText
"titulo"Symbol 2267 MovieClip {Niveles_Jugadores} Frame 1Symbol 2266 EditableText
"atras"Symbol 2308 MovieClip {Ranking} Frame 1Symbol 1247 Button
"t_nombre1"Symbol 2308 MovieClip {Ranking} Frame 1Symbol 2285 EditableText
"t_puntuacion1"Symbol 2308 MovieClip {Ranking} Frame 1Symbol 2286 EditableText
"t_nombre2"Symbol 2308 MovieClip {Ranking} Frame 1Symbol 2287 EditableText
"t_nombre3"Symbol 2308 MovieClip {Ranking} Frame 1Symbol 2288 EditableText
"t_nombre4"Symbol 2308 MovieClip {Ranking} Frame 1Symbol 2289 EditableText
"t_nombre5"Symbol 2308 MovieClip {Ranking} Frame 1Symbol 2290 EditableText
"t_nombre6"Symbol 2308 MovieClip {Ranking} Frame 1Symbol 2291 EditableText
"t_nombre7"Symbol 2308 MovieClip {Ranking} Frame 1Symbol 2292 EditableText
"t_nombre8"Symbol 2308 MovieClip {Ranking} Frame 1Symbol 2293 EditableText
"t_nombre9"Symbol 2308 MovieClip {Ranking} Frame 1Symbol 2294 EditableText
"t_nombre10"Symbol 2308 MovieClip {Ranking} Frame 1Symbol 2295 EditableText
"t_puntuacion2"Symbol 2308 MovieClip {Ranking} Frame 1Symbol 2296 EditableText
"t_puntuacion3"Symbol 2308 MovieClip {Ranking} Frame 1Symbol 2297 EditableText
"t_puntuacion4"Symbol 2308 MovieClip {Ranking} Frame 1Symbol 2298 EditableText
"t_puntuacion5"Symbol 2308 MovieClip {Ranking} Frame 1Symbol 2299 EditableText
"t_puntuacion6"Symbol 2308 MovieClip {Ranking} Frame 1Symbol 2300 EditableText
"t_puntuacion7"Symbol 2308 MovieClip {Ranking} Frame 1Symbol 2301 EditableText
"t_puntuacion8"Symbol 2308 MovieClip {Ranking} Frame 1Symbol 2302 EditableText
"t_puntuacion9"Symbol 2308 MovieClip {Ranking} Frame 1Symbol 2303 EditableText
"t_puntuacion10"Symbol 2308 MovieClip {Ranking} Frame 1Symbol 2304 EditableText
"b_submit"Symbol 2315 MovieClip {Submit} Frame 1Symbol 1414 Button
"b_exit"Symbol 2315 MovieClip {Submit} Frame 1Symbol 1244 Button
"t_error"Symbol 2315 MovieClip {Submit} Frame 1Symbol 2310 EditableText
"t_score"Symbol 2315 MovieClip {Submit} Frame 1Symbol 2313 EditableText
"t_name"Symbol 2315 MovieClip {Submit} Frame 1Symbol 2314 EditableText
"miniatura"Symbol 2390 MovieClip {ficha_mc} Frame 1Symbol 2379 Button
"b_nombre"Symbol 2390 MovieClip {ficha_mc} Frame 1Symbol 2381 Button
"info1"Symbol 2390 MovieClip {ficha_mc} Frame 1Symbol 2382 EditableText
"info2"Symbol 2390 MovieClip {ficha_mc} Frame 1Symbol 2383 EditableText
"info"Symbol 2390 MovieClip {ficha_mc} Frame 1Symbol 2386 Button
"id"Symbol 2390 MovieClip {ficha_mc} Frame 1Symbol 2387 EditableText
"nombre"Symbol 2390 MovieClip {ficha_mc} Frame 1Symbol 2388 EditableText
"info3"Symbol 2390 MovieClip {ficha_mc} Frame 1Symbol 2389 EditableText
"bloqueado"Symbol 2402 MovieClip {ficha_nivel_mc} Frame 1Symbol 2393 MovieClip
"nota"Symbol 2402 MovieClip {ficha_nivel_mc} Frame 1Symbol 2398 MovieClip {DummyNeverFails2_fla.lista_rangos_botones_591}
"indice"Symbol 2402 MovieClip {ficha_nivel_mc} Frame 1Symbol 2399 EditableText
"time_error"Symbol 2409 MovieClip {LanzarContenidoOnline} Frame 1Symbol 2408 EditableText
"torso"Symbol 2517 MovieClip {DummyNeverFails2_fla.descripcion_skin_bloqueado_596} Frame 1Symbol 1109 MovieClip {torso_superior}
"cara"Symbol 2517 MovieClip {DummyNeverFails2_fla.descripcion_skin_bloqueado_596} Frame 1Symbol 729 MovieClip {cabeza}
"torso"Symbol 2620 MovieClip {DummyNeverFails2_fla.descripcion_skin_desbloqueado_597} Frame 1Symbol 1109 MovieClip {torso_superior}
"cara"Symbol 2620 MovieClip {DummyNeverFails2_fla.descripcion_skin_desbloqueado_597} Frame 1Symbol 729 MovieClip {cabeza}
"nom"Symbol 2725 MovieClip {DummyNeverFails2_fla.descripcion_skin_seleccionado_598} Frame 1Symbol 2622 EditableText
"desc"Symbol 2725 MovieClip {DummyNeverFails2_fla.descripcion_skin_seleccionado_598} Frame 1Symbol 2623 EditableText
"aleatoreo"Symbol 2728 MovieClip {ficha_skin_mc} Frame 1Symbol 2413 MovieClip
"bloqueado"Symbol 2728 MovieClip {ficha_skin_mc} Frame 1Symbol 2517 MovieClip {DummyNeverFails2_fla.descripcion_skin_bloqueado_596}
"desbloqueado"Symbol 2728 MovieClip {ficha_skin_mc} Frame 1Symbol 2620 MovieClip {DummyNeverFails2_fla.descripcion_skin_desbloqueado_597}
"seleccionado"Symbol 2728 MovieClip {ficha_skin_mc} Frame 1Symbol 2725 MovieClip {DummyNeverFails2_fla.descripcion_skin_seleccionado_598}
"indice"Symbol 2728 MovieClip {ficha_skin_mc} Frame 1Symbol 2726 EditableText
"estado"Symbol 2728 MovieClip {ficha_skin_mc} Frame 1Symbol 2727 EditableText
"iBar"Symbol 2748 MovieClip {DummyNeverFails2_fla.FPS_600} Frame 1Symbol 2744 MovieClip
"tf"Symbol 2748 MovieClip {DummyNeverFails2_fla.FPS_600} Frame 2Symbol 2747 EditableText

Special Tags

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




http://swfchan.com/27/130782/info.shtml
Created: 21/2 -2019 22:37:40 Last modified: 21/2 -2019 22:37:40 Server time: 05/05 -2024 02:35:32