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

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

Spewer.swf

This is the info page for
Flash #99217

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


Text
PRESENTS

n

e

o

l

i

P

E

d

a

M

c

u

m

y

B

G

A

Music by

r

h

e

F

n

a

d

o

J

y

b

s

t

c

f

u

D

l

i

M

m

E

P

g

A

m

o

c

.

S

D

N

U

O

R

G

W

E

!

M

A

Y

L

P

:

g

n

i

d

a

o

L

R

E

W

P

S

11100101010
00110101011
01110010101
100010100

11100101010
00110101011
01110010101
100010100

0101100010
10100101110
1010010010
0011100101

1100011001
1000101101
001010100
0101010011

011000100
0101010110
01011001111
010100100

Flash Ad

Place this movieclip wherever you want a
flash ad to load.
Please do not modify the size as you may
see decreases in your ad preformance!
(This clip will be hidden unless an ad loads)

Continue

Continue

Continue

Continue

T

R

A

S

T

R

A

S

T

R

A

S

r

o

t

i

d

E

p

a

M

r

o

t

i

d

E

p

a

M

r

o

t

i

d

E

p

a

M

s

t

i

d

e

r

C

s

t

i

d

e

r

C

s

t

i

d

e

r

C

y

b

N

O

I

l

e

M

c

u

m

With Music by Danny b. sound FX by jordan fehr

2darray.net

2darray.net

2darray.net

edmundm.com

edmundm.com

edmundm.com

Team puke

code spinner       eli piilonen
art arter      edmund mcmillen
Beat Slinger                          danny b.
noise maker                     jordan fehr
Performance Enhancer               riftmaster
Special thanks to our testers!
Want to talk about your day
with us?  log onto aim and
send a message to spewergame.

erase progress

erase progress

erase progress

just to be sure,
type "delete" in
the box below.

done

done

done

erase
successful

erase
failed

DOWNLOAD
(PC AND MAC)

DOWNLOAD
(PC AND MAC)

DOWNLOAD
(PC AND MAC)

intro song

NEWGROUNDS API CONNECTOR

Place this movieclip on your root timeline.
This clip will automatically hide itself unless neeeded.
(Error messages appear on frames 2 and 3)

NOTICE!

You are not logged in!
As a result, any medals you unlock in this game will NOT
be saved to your profile.

ERROR!

We could not connect to the Newgrounds gateway.
If you are using an ad-blocking application, you may need
to disable it to unlock any medals you earn in this game.

Medal Popup
Place this clip on the root of your movie,
spanning any frames where medals are
called. (this clip is hidden)

Weebl's secret island

MEDAL GET!

100pts

sound loader

object loader

the end

bonus chapter unlocked

<p align="left"><font face="Upheaval TT BRK" size="15" color="#000000" letterSpacing="0.000000" kerning="0">DRUGS MAKE YOU APPEAR COOL TO YOUR PEERS</font></p>

<p align="left"></p>

Level Select:

CH:1

CH:2

CH:3

CH:4

CH:5

CH:x

Return

Return

Return

(press r to
restart in-game)

Restart

Restart

Restart

Exit to title

Exit to title

Exit to title

Settings

antialiasing

background

HIGH

HIGH

HIGH

MEDIUM

MEDIUM

MEDIUM

low

low

low

enabled

enabled

enabled

disabled

disabled

disabled

sound

PAUSED

...reformatting...

..regurgitating..

.....refreshing.....

...reimagining...

...resetting...

...correcting...

...applying 1-up...

some added oomph

A sick nasty map

how to use the editor like a smart person
use the a and d keys to scroll through the
current item group. use the w and s keys to
switch to a different group.
click to place the item that is currently
selected.  if you are confused about an item,
read the tips at the bottom left corner of
the screen.  each item has a quick description
there that will probably point you in the right
direction.
hold the spacebar to delete items.  keep in
mind, however, that only items from the current
group will be deleted.
hold shift to activate the physics simulation.
press q while hovering the mouse over a tile
to quickly select that tile type.
open the properties window to set your level's
title and default puke.
enjoy!                              -the mgmt

edit

edit

edit

LOREM IPSUM, ETC, BLAH BLAH, OH JESUS, GOD DAMNIT, FUCK TITTIES, BLAH BLAH.
what the hell.

output

output

output

test

test

test

properties

properties

properties

help!

help!

help!

-funding needed for ESC v3, $4,000.

-pay rent

c

i

t

a

m

e

l

b

o

r

p

y

s

f

4

1

g

n

w

h

1

0

2

:

b

u

S

.

e

v

i

s

l

c

n

o

y

d

m

t

a

r

C

E

-

f

g

w

h

5

.-

3

p

M

j

d

v

-

3

u

B

4

-mindy unresponsive to sub: 1206

,

!

6

-mindy shows no signs of recovery

P

D

B

U

ActionScript [AS3]

Section 1
//MD5 (com.adobe.crypto.MD5) package com.adobe.crypto { import flash.utils.*; import com.adobe.utils.*; public class MD5 { public static var digest:ByteArray; private static function ff(_arg1:int, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int):int{ return (transform(f, _arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7)); } private static function f(_arg1:int, _arg2:int, _arg3:int):int{ return (((_arg1 & _arg2) | (~(_arg1) & _arg3))); } private static function g(_arg1:int, _arg2:int, _arg3:int):int{ return (((_arg1 & _arg3) | (_arg2 & ~(_arg3)))); } private static function h(_arg1:int, _arg2:int, _arg3:int):int{ return (((_arg1 ^ _arg2) ^ _arg3)); } private static function i(_arg1:int, _arg2:int, _arg3:int):int{ return ((_arg2 ^ (_arg1 | ~(_arg3)))); } private static function transform(_arg1:Function, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int, _arg8:int):int{ var _local9:int = (((_arg2 + int(_arg1(_arg3, _arg4, _arg5))) + _arg6) + _arg8); return ((IntUtil.rol(_local9, _arg7) + _arg3)); } private static function hh(_arg1:int, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int):int{ return (transform(h, _arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7)); } public static function hash(_arg1:String):String{ var _local2:ByteArray = new ByteArray(); _local2.writeUTFBytes(_arg1); return (hashBinary(_local2)); } private static function createBlocks(_arg1:ByteArray):Array{ var _local2:Array = new Array(); var _local3:int = (_arg1.length * 8); var _local4 = 0xFF; var _local5:int; while (_local5 < _local3) { _local2[int((_local5 >> 5))] = (_local2[int((_local5 >> 5))] | ((_arg1[(_local5 / 8)] & _local4) << (_local5 % 32))); _local5 = (_local5 + 8); }; _local2[int((_local3 >> 5))] = (_local2[int((_local3 >> 5))] | (128 << (_local3 % 32))); _local2[int(((((_local3 + 64) >>> 9) << 4) + 14))] = _local3; return (_local2); } public static function hashBinary(_arg1:ByteArray):String{ var _local6:int; var _local7:int; var _local8:int; var _local9:int; var _local2 = 1732584193; var _local3 = -271733879; var _local4 = -1732584194; var _local5 = 271733878; var _local10:Array = createBlocks(_arg1); var _local11:int = _local10.length; var _local12:int; while (_local12 < _local11) { _local6 = _local2; _local7 = _local3; _local8 = _local4; _local9 = _local5; _local2 = ff(_local2, _local3, _local4, _local5, _local10[int((_local12 + 0))], 7, -680876936); _local5 = ff(_local5, _local2, _local3, _local4, _local10[int((_local12 + 1))], 12, -389564586); _local4 = ff(_local4, _local5, _local2, _local3, _local10[int((_local12 + 2))], 17, 606105819); _local3 = ff(_local3, _local4, _local5, _local2, _local10[int((_local12 + 3))], 22, -1044525330); _local2 = ff(_local2, _local3, _local4, _local5, _local10[int((_local12 + 4))], 7, -176418897); _local5 = ff(_local5, _local2, _local3, _local4, _local10[int((_local12 + 5))], 12, 1200080426); _local4 = ff(_local4, _local5, _local2, _local3, _local10[int((_local12 + 6))], 17, -1473231341); _local3 = ff(_local3, _local4, _local5, _local2, _local10[int((_local12 + 7))], 22, -45705983); _local2 = ff(_local2, _local3, _local4, _local5, _local10[int((_local12 + 8))], 7, 1770035416); _local5 = ff(_local5, _local2, _local3, _local4, _local10[int((_local12 + 9))], 12, -1958414417); _local4 = ff(_local4, _local5, _local2, _local3, _local10[int((_local12 + 10))], 17, -42063); _local3 = ff(_local3, _local4, _local5, _local2, _local10[int((_local12 + 11))], 22, -1990404162); _local2 = ff(_local2, _local3, _local4, _local5, _local10[int((_local12 + 12))], 7, 1804603682); _local5 = ff(_local5, _local2, _local3, _local4, _local10[int((_local12 + 13))], 12, -40341101); _local4 = ff(_local4, _local5, _local2, _local3, _local10[int((_local12 + 14))], 17, -1502002290); _local3 = ff(_local3, _local4, _local5, _local2, _local10[int((_local12 + 15))], 22, 1236535329); _local2 = gg(_local2, _local3, _local4, _local5, _local10[int((_local12 + 1))], 5, -165796510); _local5 = gg(_local5, _local2, _local3, _local4, _local10[int((_local12 + 6))], 9, -1069501632); _local4 = gg(_local4, _local5, _local2, _local3, _local10[int((_local12 + 11))], 14, 643717713); _local3 = gg(_local3, _local4, _local5, _local2, _local10[int((_local12 + 0))], 20, -373897302); _local2 = gg(_local2, _local3, _local4, _local5, _local10[int((_local12 + 5))], 5, -701558691); _local5 = gg(_local5, _local2, _local3, _local4, _local10[int((_local12 + 10))], 9, 38016083); _local4 = gg(_local4, _local5, _local2, _local3, _local10[int((_local12 + 15))], 14, -660478335); _local3 = gg(_local3, _local4, _local5, _local2, _local10[int((_local12 + 4))], 20, -405537848); _local2 = gg(_local2, _local3, _local4, _local5, _local10[int((_local12 + 9))], 5, 568446438); _local5 = gg(_local5, _local2, _local3, _local4, _local10[int((_local12 + 14))], 9, -1019803690); _local4 = gg(_local4, _local5, _local2, _local3, _local10[int((_local12 + 3))], 14, -187363961); _local3 = gg(_local3, _local4, _local5, _local2, _local10[int((_local12 + 8))], 20, 1163531501); _local2 = gg(_local2, _local3, _local4, _local5, _local10[int((_local12 + 13))], 5, -1444681467); _local5 = gg(_local5, _local2, _local3, _local4, _local10[int((_local12 + 2))], 9, -51403784); _local4 = gg(_local4, _local5, _local2, _local3, _local10[int((_local12 + 7))], 14, 1735328473); _local3 = gg(_local3, _local4, _local5, _local2, _local10[int((_local12 + 12))], 20, -1926607734); _local2 = hh(_local2, _local3, _local4, _local5, _local10[int((_local12 + 5))], 4, -378558); _local5 = hh(_local5, _local2, _local3, _local4, _local10[int((_local12 + 8))], 11, -2022574463); _local4 = hh(_local4, _local5, _local2, _local3, _local10[int((_local12 + 11))], 16, 1839030562); _local3 = hh(_local3, _local4, _local5, _local2, _local10[int((_local12 + 14))], 23, -35309556); _local2 = hh(_local2, _local3, _local4, _local5, _local10[int((_local12 + 1))], 4, -1530992060); _local5 = hh(_local5, _local2, _local3, _local4, _local10[int((_local12 + 4))], 11, 1272893353); _local4 = hh(_local4, _local5, _local2, _local3, _local10[int((_local12 + 7))], 16, -155497632); _local3 = hh(_local3, _local4, _local5, _local2, _local10[int((_local12 + 10))], 23, -1094730640); _local2 = hh(_local2, _local3, _local4, _local5, _local10[int((_local12 + 13))], 4, 681279174); _local5 = hh(_local5, _local2, _local3, _local4, _local10[int((_local12 + 0))], 11, -358537222); _local4 = hh(_local4, _local5, _local2, _local3, _local10[int((_local12 + 3))], 16, -722521979); _local3 = hh(_local3, _local4, _local5, _local2, _local10[int((_local12 + 6))], 23, 76029189); _local2 = hh(_local2, _local3, _local4, _local5, _local10[int((_local12 + 9))], 4, -640364487); _local5 = hh(_local5, _local2, _local3, _local4, _local10[int((_local12 + 12))], 11, -421815835); _local4 = hh(_local4, _local5, _local2, _local3, _local10[int((_local12 + 15))], 16, 530742520); _local3 = hh(_local3, _local4, _local5, _local2, _local10[int((_local12 + 2))], 23, -995338651); _local2 = ii(_local2, _local3, _local4, _local5, _local10[int((_local12 + 0))], 6, -198630844); _local5 = ii(_local5, _local2, _local3, _local4, _local10[int((_local12 + 7))], 10, 1126891415); _local4 = ii(_local4, _local5, _local2, _local3, _local10[int((_local12 + 14))], 15, -1416354905); _local3 = ii(_local3, _local4, _local5, _local2, _local10[int((_local12 + 5))], 21, -57434055); _local2 = ii(_local2, _local3, _local4, _local5, _local10[int((_local12 + 12))], 6, 1700485571); _local5 = ii(_local5, _local2, _local3, _local4, _local10[int((_local12 + 3))], 10, -1894986606); _local4 = ii(_local4, _local5, _local2, _local3, _local10[int((_local12 + 10))], 15, -1051523); _local3 = ii(_local3, _local4, _local5, _local2, _local10[int((_local12 + 1))], 21, -2054922799); _local2 = ii(_local2, _local3, _local4, _local5, _local10[int((_local12 + 8))], 6, 1873313359); _local5 = ii(_local5, _local2, _local3, _local4, _local10[int((_local12 + 15))], 10, -30611744); _local4 = ii(_local4, _local5, _local2, _local3, _local10[int((_local12 + 6))], 15, -1560198380); _local3 = ii(_local3, _local4, _local5, _local2, _local10[int((_local12 + 13))], 21, 1309151649); _local2 = ii(_local2, _local3, _local4, _local5, _local10[int((_local12 + 4))], 6, -145523070); _local5 = ii(_local5, _local2, _local3, _local4, _local10[int((_local12 + 11))], 10, -1120210379); _local4 = ii(_local4, _local5, _local2, _local3, _local10[int((_local12 + 2))], 15, 718787259); _local3 = ii(_local3, _local4, _local5, _local2, _local10[int((_local12 + 9))], 21, -343485551); _local2 = (_local2 + _local6); _local3 = (_local3 + _local7); _local4 = (_local4 + _local8); _local5 = (_local5 + _local9); _local12 = (_local12 + 16); }; digest = new ByteArray(); digest.writeInt(_local2); digest.writeInt(_local3); digest.writeInt(_local4); digest.writeInt(_local5); digest.position = 0; return ((((IntUtil.toHex(_local2) + IntUtil.toHex(_local3)) + IntUtil.toHex(_local4)) + IntUtil.toHex(_local5))); } private static function gg(_arg1:int, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int):int{ return (transform(g, _arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7)); } private static function ii(_arg1:int, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int):int{ return (transform(i, _arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7)); } public static function hashBytes(_arg1:ByteArray):String{ return (hashBinary(_arg1)); } } }//package com.adobe.crypto
Section 2
//JSON (com.adobe.serialization.json.JSON) package com.adobe.serialization.json { public class JSON { public static function decode(_arg1:String){ var _local2:JSONDecoder = new JSONDecoder(_arg1); return (_local2.getValue()); } public static function encode(_arg1:Object):String{ var _local2:JSONEncoder = new JSONEncoder(_arg1); return (_local2.getString()); } } }//package com.adobe.serialization.json
Section 3
//JSONDecoder (com.adobe.serialization.json.JSONDecoder) package com.adobe.serialization.json { public class JSONDecoder { private var value; private var tokenizer:JSONTokenizer; private var token:JSONToken; public function JSONDecoder(_arg1:String){ tokenizer = new JSONTokenizer(_arg1); nextToken(); value = parseValue(); } private function parseObject():Object{ var _local2:String; var _local1:Object = new Object(); nextToken(); if (token.type == JSONTokenType.RIGHT_BRACE){ return (_local1); }; while (true) { if (token.type == JSONTokenType.STRING){ _local2 = String(token.value); nextToken(); if (token.type == JSONTokenType.COLON){ nextToken(); _local1[_local2] = parseValue(); nextToken(); if (token.type == JSONTokenType.RIGHT_BRACE){ return (_local1); }; if (token.type == JSONTokenType.COMMA){ nextToken(); } else { tokenizer.parseError(("Expecting } or , but found " + token.value)); }; } else { tokenizer.parseError(("Expecting : but found " + token.value)); }; } else { tokenizer.parseError(("Expecting string but found " + token.value)); }; }; return (null); } private function parseValue():Object{ if (token == null){ tokenizer.parseError("Unexpected end of input"); }; switch (token.type){ case JSONTokenType.LEFT_BRACE: return (parseObject()); case JSONTokenType.LEFT_BRACKET: return (parseArray()); case JSONTokenType.STRING: case JSONTokenType.NUMBER: case JSONTokenType.TRUE: case JSONTokenType.FALSE: case JSONTokenType.NULL: return (token.value); default: tokenizer.parseError(("Unexpected " + token.value)); }; return (null); } private function nextToken():JSONToken{ return ((token = tokenizer.getNextToken())); } public function getValue(){ return (value); } private function parseArray():Array{ var _local1:Array = new Array(); nextToken(); if (token.type == JSONTokenType.RIGHT_BRACKET){ return (_local1); }; while (true) { _local1.push(parseValue()); nextToken(); if (token.type == JSONTokenType.RIGHT_BRACKET){ return (_local1); }; if (token.type == JSONTokenType.COMMA){ nextToken(); } else { tokenizer.parseError(("Expecting ] or , but found " + token.value)); }; }; return (null); } } }//package com.adobe.serialization.json
Section 4
//JSONEncoder (com.adobe.serialization.json.JSONEncoder) package com.adobe.serialization.json { import flash.utils.*; public class JSONEncoder { private var jsonString:String; public function JSONEncoder(_arg1){ jsonString = convertToString(_arg1); } private function escapeString(_arg1:String):String{ var _local3:String; var _local6:String; var _local7:String; var _local2 = ""; var _local4:Number = _arg1.length; var _local5:int; while (_local5 < _local4) { _local3 = _arg1.charAt(_local5); switch (_local3){ case "\"": _local2 = (_local2 + "\\\""); break; case "\\": _local2 = (_local2 + "\\\\"); break; case "\b": _local2 = (_local2 + "\\b"); break; case "\f": _local2 = (_local2 + "\\f"); break; case "\n": _local2 = (_local2 + "\\n"); break; case "\r": _local2 = (_local2 + "\\r"); break; case "\t": _local2 = (_local2 + "\\t"); break; default: if (_local3 < " "){ _local6 = _local3.charCodeAt(0).toString(16); _local7 = ((_local6.length == 2)) ? "00" : "000"; _local2 = (_local2 + (("\\u" + _local7) + _local6)); } else { _local2 = (_local2 + _local3); }; }; _local5++; }; return ((("\"" + _local2) + "\"")); } private function arrayToString(_arg1:Array):String{ var _local2 = ""; var _local3:int; while (_local3 < _arg1.length) { if (_local2.length > 0){ _local2 = (_local2 + ","); }; _local2 = (_local2 + convertToString(_arg1[_local3])); _local3++; }; return ((("[" + _local2) + "]")); } public function getString():String{ return (jsonString); } private function objectToString(_arg1:Object):String{ var value:Object; var key:String; var v:XML; var o = _arg1; var s = ""; var classInfo:XML = describeType(o); if (classInfo.@name.toString() == "Object"){ for (key in o) { value = o[key]; if ((value is Function)){ } else { if (s.length > 0){ s = (s + ","); }; s = (s + ((escapeString(key) + ":") + convertToString(value))); }; }; } else { for each (v in classInfo..*.(((name() == "variable")) || ((name() == "accessor")))) { if (s.length > 0){ s = (s + ","); }; s = (s + ((escapeString(v.@name.toString()) + ":") + convertToString(o[v.@name]))); }; }; return ((("{" + s) + "}")); } private function convertToString(_arg1):String{ if ((_arg1 is String)){ return (escapeString((_arg1 as String))); }; if ((_arg1 is Number)){ return ((isFinite((_arg1 as Number))) ? _arg1.toString() : "null"); } else { if ((_arg1 is Boolean)){ return ((_arg1) ? "true" : "false"); } else { if ((_arg1 is Array)){ return (arrayToString((_arg1 as Array))); }; if ((((_arg1 is Object)) && (!((_arg1 == null))))){ return (objectToString(_arg1)); }; }; }; return ("null"); } } }//package com.adobe.serialization.json
Section 5
//JSONParseError (com.adobe.serialization.json.JSONParseError) package com.adobe.serialization.json { public class JSONParseError extends Error { private var _location:int; private var _text:String; public function JSONParseError(_arg1:String="", _arg2:int=0, _arg3:String=""){ super(_arg1); name = "JSONParseError"; _location = _arg2; _text = _arg3; } public function get location():int{ return (_location); } public function get text():String{ return (_text); } } }//package com.adobe.serialization.json
Section 6
//JSONToken (com.adobe.serialization.json.JSONToken) package com.adobe.serialization.json { public class JSONToken { private var _value:Object; private var _type:int; public function JSONToken(_arg1:int=-1, _arg2:Object=null){ _type = _arg1; _value = _arg2; } public function get value():Object{ return (_value); } public function get type():int{ return (_type); } public function set type(_arg1:int):void{ _type = _arg1; } public function set value(_arg1:Object):void{ _value = _arg1; } } }//package com.adobe.serialization.json
Section 7
//JSONTokenizer (com.adobe.serialization.json.JSONTokenizer) package com.adobe.serialization.json { public class JSONTokenizer { private var loc:int; private var ch:String; private var obj:Object; private var jsonString:String; public function JSONTokenizer(_arg1:String){ jsonString = _arg1; loc = 0; nextChar(); } private function skipComments():void{ if (ch == "/"){ nextChar(); switch (ch){ case "/": do { nextChar(); } while (((!((ch == "\n"))) && (!((ch == ""))))); nextChar(); break; case "*": nextChar(); while (true) { if (ch == "*"){ nextChar(); if (ch == "/"){ nextChar(); break; }; } else { nextChar(); }; if (ch == ""){ parseError("Multi-line comment not closed"); }; }; break; default: parseError((("Unexpected " + ch) + " encountered (expecting '/' or '*' )")); }; }; } private function isDigit(_arg1:String):Boolean{ return ((((_arg1 >= "0")) && ((_arg1 <= "9")))); } private function readString():JSONToken{ var _local3:String; var _local4:int; var _local1:JSONToken = new JSONToken(); _local1.type = JSONTokenType.STRING; var _local2 = ""; nextChar(); while (((!((ch == "\""))) && (!((ch == ""))))) { if (ch == "\\"){ nextChar(); switch (ch){ case "\"": _local2 = (_local2 + "\""); break; case "/": _local2 = (_local2 + "/"); break; case "\\": _local2 = (_local2 + "\\"); break; case "b": _local2 = (_local2 + "\b"); break; case "f": _local2 = (_local2 + "\f"); break; case "n": _local2 = (_local2 + "\n"); break; case "r": _local2 = (_local2 + "\r"); break; case "t": _local2 = (_local2 + "\t"); break; case "u": _local3 = ""; _local4 = 0; while (_local4 < 4) { if (!isHexDigit(nextChar())){ parseError((" Excepted a hex digit, but found: " + ch)); }; _local3 = (_local3 + ch); _local4++; }; _local2 = (_local2 + String.fromCharCode(parseInt(_local3, 16))); break; default: _local2 = (_local2 + ("\\" + ch)); }; } else { _local2 = (_local2 + ch); }; nextChar(); }; if (ch == ""){ parseError("Unterminated string literal"); }; nextChar(); _local1.value = _local2; return (_local1); } private function nextChar():String{ return ((ch = jsonString.charAt(loc++))); } public function getNextToken():JSONToken{ var _local2:String; var _local3:String; var _local4:String; var _local1:JSONToken = new JSONToken(); skipIgnored(); switch (ch){ case "{": _local1.type = JSONTokenType.LEFT_BRACE; _local1.value = "{"; nextChar(); break; case "}": _local1.type = JSONTokenType.RIGHT_BRACE; _local1.value = "}"; nextChar(); break; case "[": _local1.type = JSONTokenType.LEFT_BRACKET; _local1.value = "["; nextChar(); break; case "]": _local1.type = JSONTokenType.RIGHT_BRACKET; _local1.value = "]"; nextChar(); break; case ",": _local1.type = JSONTokenType.COMMA; _local1.value = ","; nextChar(); break; case ":": _local1.type = JSONTokenType.COLON; _local1.value = ":"; nextChar(); break; case "t": _local2 = ((("t" + nextChar()) + nextChar()) + nextChar()); if (_local2 == "true"){ _local1.type = JSONTokenType.TRUE; _local1.value = true; nextChar(); } else { parseError(("Expecting 'true' but found " + _local2)); }; break; case "f": _local3 = (((("f" + nextChar()) + nextChar()) + nextChar()) + nextChar()); if (_local3 == "false"){ _local1.type = JSONTokenType.FALSE; _local1.value = false; nextChar(); } else { parseError(("Expecting 'false' but found " + _local3)); }; break; case "n": _local4 = ((("n" + nextChar()) + nextChar()) + nextChar()); if (_local4 == "null"){ _local1.type = JSONTokenType.NULL; _local1.value = null; nextChar(); } else { parseError(("Expecting 'null' but found " + _local4)); }; break; case "\"": _local1 = readString(); break; default: if (((isDigit(ch)) || ((ch == "-")))){ _local1 = readNumber(); } else { if (ch == ""){ return (null); }; parseError((("Unexpected " + ch) + " encountered")); }; }; return (_local1); } private function skipWhite():void{ while (isWhiteSpace(ch)) { nextChar(); }; } public function parseError(_arg1:String):void{ throw (new JSONParseError(_arg1, loc, jsonString)); } private function isWhiteSpace(_arg1:String):Boolean{ return ((((((((_arg1 == " ")) || ((_arg1 == "\t")))) || ((_arg1 == "\n")))) || ((_arg1 == "\r")))); } private function skipIgnored():void{ var _local1:int; do { _local1 = loc; skipWhite(); skipComments(); } while (_local1 != loc); } private function isHexDigit(_arg1:String):Boolean{ var _local2:String = _arg1.toUpperCase(); return (((isDigit(_arg1)) || ((((_local2 >= "A")) && ((_local2 <= "F")))))); } private function readNumber():JSONToken{ var _local1:JSONToken = new JSONToken(); _local1.type = JSONTokenType.NUMBER; var _local2 = ""; if (ch == "-"){ _local2 = (_local2 + "-"); nextChar(); }; if (!isDigit(ch)){ parseError("Expecting a digit"); }; if (ch == "0"){ _local2 = (_local2 + ch); nextChar(); if (isDigit(ch)){ parseError("A digit cannot immediately follow 0"); }; } else { while (isDigit(ch)) { _local2 = (_local2 + ch); nextChar(); }; }; if (ch == "."){ _local2 = (_local2 + "."); nextChar(); if (!isDigit(ch)){ parseError("Expecting a digit"); }; while (isDigit(ch)) { _local2 = (_local2 + ch); nextChar(); }; }; if ((((ch == "e")) || ((ch == "E")))){ _local2 = (_local2 + "e"); nextChar(); if ((((ch == "+")) || ((ch == "-")))){ _local2 = (_local2 + ch); nextChar(); }; if (!isDigit(ch)){ parseError("Scientific notation number needs exponent value"); }; while (isDigit(ch)) { _local2 = (_local2 + ch); nextChar(); }; }; var _local3:Number = Number(_local2); if (((isFinite(_local3)) && (!(isNaN(_local3))))){ _local1.value = _local3; return (_local1); }; parseError((("Number " + _local3) + " is not valid!")); return (null); } } }//package com.adobe.serialization.json
Section 8
//JSONTokenType (com.adobe.serialization.json.JSONTokenType) package com.adobe.serialization.json { public class JSONTokenType { public static const NUMBER:int = 11; public static const FALSE:int = 8; public static const RIGHT_BRACKET:int = 4; public static const NULL:int = 9; public static const TRUE:int = 7; public static const RIGHT_BRACE:int = 2; public static const UNKNOWN:int = -1; public static const COMMA:int = 0; public static const LEFT_BRACKET:int = 3; public static const STRING:int = 10; public static const LEFT_BRACE:int = 1; public static const COLON:int = 6; } }//package com.adobe.serialization.json
Section 9
//IntUtil (com.adobe.utils.IntUtil) package com.adobe.utils { public class IntUtil { private static var hexChars:String = "0123456789abcdef"; public static function toHex(_arg1:int, _arg2:Boolean=false):String{ var _local4:int; var _local5:int; var _local3 = ""; if (_arg2){ _local4 = 0; while (_local4 < 4) { _local3 = (_local3 + (hexChars.charAt(((_arg1 >> (((3 - _local4) * 8) + 4)) & 15)) + hexChars.charAt(((_arg1 >> ((3 - _local4) * 8)) & 15)))); _local4++; }; } else { _local5 = 0; while (_local5 < 4) { _local3 = (_local3 + (hexChars.charAt(((_arg1 >> ((_local5 * 8) + 4)) & 15)) + hexChars.charAt(((_arg1 >> (_local5 * 8)) & 15)))); _local5++; }; }; return (_local3); } public static function ror(_arg1:int, _arg2:int):uint{ var _local3:int = (32 - _arg2); return (((_arg1 << _local3) | (_arg1 >>> (32 - _local3)))); } public static function rol(_arg1:int, _arg2:int):int{ return (((_arg1 << _arg2) | (_arg1 >>> (32 - _arg2)))); } } }//package com.adobe.utils
Section 10
//StringUtil (com.adobe.utils.StringUtil) package com.adobe.utils { public class StringUtil { public static function beginsWith(_arg1:String, _arg2:String):Boolean{ return ((_arg2 == _arg1.substring(0, _arg2.length))); } public static function trim(_arg1:String):String{ return (_slot1.ltrim(_slot1.rtrim(_arg1))); } public static function stringsAreEqual(_arg1:String, _arg2:String, _arg3:Boolean):Boolean{ if (_arg3){ return ((_arg1 == _arg2)); }; return ((_arg1.toUpperCase() == _arg2.toUpperCase())); } public static function replace(_arg1:String, _arg2:String, _arg3:String):String{ var _local9:Number; var _local4:String = new String(); var _local5:Boolean; var _local6:Number = _arg1.length; var _local7:Number = _arg2.length; var _local8:Number = 0; while (_local8 < _local6) { if (_arg1.charAt(_local8) == _arg2.charAt(0)){ _local5 = true; _local9 = 0; while (_local9 < _local7) { if (_arg1.charAt((_local8 + _local9)) != _arg2.charAt(_local9)){ _local5 = false; break; }; _local9++; }; //unresolved if _local4 = (_local4 + _arg3); _local8 = (_local8 + (_local7 - 1)); } else { _local4 = (_local4 + _arg1.charAt(_local8)); }; _local8++; }; return (_local4); } public static function rtrim(_arg1:String):String{ var _local2:Number = _arg1.length; var _local3:Number = _local2; while (_local3 > 0) { if (_arg1.charCodeAt((_local3 - 1)) > 32){ return (_arg1.substring(0, _local3)); }; _local3--; }; return (""); } public static function endsWith(_arg1:String, _arg2:String):Boolean{ return ((_arg2 == _arg1.substring((_arg1.length - _arg2.length)))); } public static function stringHasValue(_arg1:String):Boolean{ return (((!((_arg1 == null))) && ((_arg1.length > 0)))); } public static function remove(_arg1:String, _arg2:String):String{ return (_slot1.replace(_arg1, _arg2, "")); } public static function ltrim(_arg1:String):String{ var _local2:Number = _arg1.length; var _local3:Number = 0; while (_local3 < _local2) { if (_arg1.charCodeAt(_local3) > 32){ return (_arg1.substring(_local3)); }; _local3++; }; return (""); } } }//package com.adobe.utils
Section 11
//Base64 (com.dynamicflash.util.Base64) package com.dynamicflash.util { import flash.utils.*; public class Base64 { public static const version:String = "1.1.0"; private static const BASE64_CHARS:String = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="; public function Base64(){ throw (new Error("Base64 class is static container only")); } public static function encode(_arg1:String):String{ var _local2:ByteArray = new ByteArray(); _local2.writeUTFBytes(_arg1); return (encodeByteArray(_local2)); } public static function encodeByteArray(_arg1:ByteArray):String{ var _local3:Array; var _local5:uint; var _local6:uint; var _local7:uint; var _local2 = ""; var _local4:Array = 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 decode(_arg1:String):String{ var _local2:ByteArray = decodeToByteArray(_arg1); return (_local2.readUTFBytes(_local2.length)); } public static function decodeToByteArray(_arg1:String):ByteArray{ var _local6:uint; var _local7:uint; var _local2:ByteArray = new ByteArray(); var _local3:Array = new Array(4); var _local4:Array = new Array(3); var _local5:uint; while (_local5 < _arg1.length) { _local6 = 0; while ((((_local6 < 4)) && (((_local5 + _local6) < _arg1.length)))) { _local3[_local6] = BASE64_CHARS.indexOf(_arg1.charAt((_local5 + _local6))); _local6++; }; _local4[0] = ((_local3[0] << 2) + ((_local3[1] & 48) >> 4)); _local4[1] = (((_local3[1] & 15) << 4) + ((_local3[2] & 60) >> 2)); _local4[2] = (((_local3[2] & 3) << 6) + _local3[3]); _local7 = 0; while (_local7 < _local4.length) { if (_local3[(_local7 + 1)] == 64){ break; }; _local2.writeByte(_local4[_local7]); _local7++; }; _local5 = (_local5 + 4); }; _local2.position = 0; return (_local2); } } }//package com.dynamicflash.util
Section 12
//KongregateEvent (com.kongregate.as3.client.events.KongregateEvent) package com.kongregate.as3.client.events { import flash.events.*; public class KongregateEvent extends Event { public static const COMPLETE:String = "component_api_available"; public function KongregateEvent(_arg1:String){ super(_arg1); } } }//package com.kongregate.as3.client.events
Section 13
//AbstractShadowService (com.kongregate.as3.client.services.AbstractShadowService) package com.kongregate.as3.client.services { import flash.events.*; public class AbstractShadowService extends EventDispatcher { protected function alert(_arg1:String, _arg2:String, _arg3="", _arg4:String=""):void{ trace(((((((("Kongregate API: " + _arg1) + ".") + _arg2) + "(") + _arg3) + ") ") + _arg4)); } } }//package com.kongregate.as3.client.services
Section 14
//HighScoreServiceShadow (com.kongregate.as3.client.services.HighScoreServiceShadow) package com.kongregate.as3.client.services { public class HighScoreServiceShadow extends AbstractShadowService implements IHighScoreServices { private var mode:String; public function HighScoreServiceShadow(){ mode = ""; } public function submit(_arg1:Number, _arg2:String=null):void{ alert("IHighScoreServices", "submit", arguments); } public function connect():Boolean{ alert("IKongregateServices", "connect"); return (true); } public function requestList(_arg1:Function):void{ alert("IHighScoreServices", "requestList", "", (("[Mode: " + mode) + "]")); _arg1({success:false}); } public function setMode(_arg1:String):void{ alert("IHighScoreServices", "setMode", arguments); this.mode = _arg1; } } }//package com.kongregate.as3.client.services
Section 15
//IHighScoreServices (com.kongregate.as3.client.services.IHighScoreServices) package com.kongregate.as3.client.services { public interface IHighScoreServices { function setMode(_arg1:String):void; function submit(_arg1:Number, _arg2:String=null):void; function requestList(_arg1:Function):void; } }//package com.kongregate.as3.client.services
Section 16
//IKongregateServices (com.kongregate.as3.client.services.IKongregateServices) package com.kongregate.as3.client.services { import flash.events.*; public interface IKongregateServices extends IEventDispatcher { function getPlayerInfo(_arg1:Function):void; function connect(_arg1:Number=-1):Boolean; } }//package com.kongregate.as3.client.services
Section 17
//IStatServices (com.kongregate.as3.client.services.IStatServices) package com.kongregate.as3.client.services { public interface IStatServices { function submitArray(_arg1:Array):void; function submit(_arg1:String, _arg2:Number):void; } }//package com.kongregate.as3.client.services
Section 18
//IUserServices (com.kongregate.as3.client.services.IUserServices) package com.kongregate.as3.client.services { public interface IUserServices { function getName():String; function getPlayerInfo(_arg1:Function):void; } }//package com.kongregate.as3.client.services
Section 19
//KongregateServiceShadow (com.kongregate.as3.client.services.KongregateServiceShadow) package com.kongregate.as3.client.services { public class KongregateServiceShadow extends AbstractShadowService implements IKongregateServices { public function getName():String{ alert("IKongregateServices", "getName"); return ("Guest"); } public function connect(_arg1:Number=-1):Boolean{ alert("IKongregateServices", "connect", arguments); return (true); } public function getPlayerInfo(_arg1:Function):void{ alert("IKongregateServices", "getPlayerInfo"); _arg1(new Object()); } } }//package com.kongregate.as3.client.services
Section 20
//StatServiceShadow (com.kongregate.as3.client.services.StatServiceShadow) package com.kongregate.as3.client.services { public class StatServiceShadow extends AbstractShadowService implements IStatServices { public function submitArray(_arg1:Array):void{ alert("IStatServices", "submitArray", arguments); } public function submit(_arg1:String, _arg2:Number):void{ alert("IStatServices", "submitStat", arguments); } } }//package com.kongregate.as3.client.services
Section 21
//UserServiceShadow (com.kongregate.as3.client.services.UserServiceShadow) package com.kongregate.as3.client.services { public class UserServiceShadow extends AbstractShadowService implements IUserServices { public function getName():String{ alert("UserService", "getName"); return ("Guest"); } public function getPlayerInfo(_arg1:Function):void{ alert("UserService", "getPlayerInfo"); _arg1({isGuest:true, name:"Guest", points:0, level:0, isMode:false, isAdmin:false, isDeveloper:false, avatarPath:"", chatAvatarPath:""}); } } }//package com.kongregate.as3.client.services
Section 22
//IAPIBootstrap (com.kongregate.as3.client.IAPIBootstrap) package com.kongregate.as3.client { import flash.events.*; import flash.display.*; public interface IAPIBootstrap { function init(_arg1:Event=null, _arg2:Stage=null):void; function hideLog():void; function showLog(_arg1:int=0):void; } }//package com.kongregate.as3.client
Section 23
//KongregateAPI (com.kongregate.as3.client.KongregateAPI) package com.kongregate.as3.client { import flash.events.*; import flash.display.*; import flash.utils.*; import com.kongregate.as3.client.services.*; import com.kongregate.as3.client.events.*; import flash.system.*; import flash.net.*; import flash.errors.*; public class KongregateAPI extends Sprite { private const VERSION:Number = 1; private var loader:Loader; private var loadedDomain:ApplicationDomain; private static const CLASS_USER:String = "com.kongregate.as3.client.services.UserServices"; private static const CLASS_STATS:String = "com.kongregate.as3.client.services.StatServices"; private static const CLASS_SERVICES:String = "com.kongregate.as3.client.services.KongregateServices"; private static const CLASS_SCORES:String = "com.kongregate.as3.client.services.HighScoreServices"; private static const DEBUG_API_URL:String = "//Linuxpc/kongregate/public/flash/API_AS3.swf"; private static var _connected:Boolean; private static var kUser:IUserServices; private static var _loaded:Boolean; private static var kServices:IKongregateServices; private static var kScores:IHighScoreServices; private static var mInstance:KongregateAPI; private static var kStats:IStatServices; private static var kAPI:IAPIBootstrap; public function KongregateAPI(){ if (mInstance != null){ throw (new Error("Warning: KongregateAPI has been added to stage more than once or accessed improperly. Use getInstance() or a stage reference to access.")); }; mInstance = this; this.addEventListener(Event.ADDED_TO_STAGE, init, false, 0, true); } public function get loaded():Boolean{ return (_loaded); } public function get connected():Boolean{ return (_connected); } private function alertConnected(_arg1:TimerEvent=null):void{ var _local2:KongregateEvent; var _local3:Boolean; _local2 = new KongregateEvent(KongregateEvent.COMPLETE); _local3 = this.dispatchEvent(_local2); } private function init(_arg1:Event):void{ var _local2:Object; var _local3:String; var _local4:URLRequest; var _local5:LoaderContext; this.removeEventListener(Event.ADDED_TO_STAGE, init); _loaded = false; _connected = false; _local2 = LoaderInfo(root.loaderInfo).parameters; _local3 = _local2.api_path; if (_local3 == null){ trace("Alert: Kongregate API could not be loaded, due to local testing. API will load when the game is uploaded."); createShadowServices(); return; }; Security.allowDomain("*.kongregate.com"); Security.allowDomain("kongregatetrunk.com"); _local4 = new URLRequest(_local3); _local5 = new LoaderContext(false); _local5.applicationDomain = ApplicationDomain.currentDomain; _local5.securityDomain = SecurityDomain.currentDomain; loader = new Loader(); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loadComplete); loader.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler); loader.load(_local4, _local5); } public function get api():IAPIBootstrap{ return (kAPI); } private function loadComplete(_arg1:Event):void{ getServices(); } public function get scores():IHighScoreServices{ return (kScores); } private function ioErrorHandler(_arg1:IOErrorEvent):void{ throw (new IOError(("API file not found. " + _arg1))); } public function get services():IKongregateServices{ return (kServices); } public function get stats():IStatServices{ return (kStats); } private function createShadowServices():void{ var _local1:Timer; trace(">>> Kongregate Shadow Services instantiated for local development.."); kServices = new KongregateServiceShadow(); kScores = new HighScoreServiceShadow(); kStats = new StatServiceShadow(); kUser = new UserServiceShadow(); _local1 = new Timer(200, 1); _local1.addEventListener(TimerEvent.TIMER_COMPLETE, alertConnected); _local1.start(); _connected = true; } public function get user():IUserServices{ return (kUser); } private function getServices():void{ var _local1:ApplicationDomain; var _local2:*; var _local3:*; var _local4:*; var _local5:*; _local1 = ApplicationDomain.currentDomain; kAPI = IAPIBootstrap(loader.getChildAt(0)); this.addChild(loader); _local2 = _local1.getDefinition(CLASS_SERVICES); trace(_local2); kServices = _local2.getInstance(); _local3 = _local1.getDefinition(CLASS_SCORES); kScores = _local3.getInstance(); _local4 = _local1.getDefinition(CLASS_STATS); kStats = _local4.getInstance(); _local5 = _local1.getDefinition(CLASS_USER); kUser = _local5.getInstance(); kServices.connect(VERSION); _loaded = true; _connected = true; alertConnected(); } public static function getInstance():KongregateAPI{ if (!mInstance){ throw (new IllegalOperationError("You must add the Kongregate API component to the stage before attempting to access it.")); }; return (mInstance); } } }//package com.kongregate.as3.client
Section 24
//BaseN (com.newgrounds.BaseN) package com.newgrounds { import flash.utils.*; public class BaseN { private var _hashVal:Dictionary; private var _hashIndex:String; private var _base:Number; public function BaseN(_arg1:String=null){ if (_arg1){ _hashIndex = _arg1; } else { _hashIndex = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ`~@#$%^&*()+|;/"; }; _base = _hashIndex.length; _hashVal = new Dictionary(); var _local2:uint; while (_local2 < _base) { _hashVal[_hashIndex.charAt(_local2)] = _local2; _local2++; }; } public function encode(_arg1:Number, _arg2:uint=1):String{ var _local3:String = _arg1.toString(); var _local4 = ""; if (_local3.charAt(0) == "-"){ _local4 = "-"; _local3 = _local3.substring(1); }; var _local5:Array = _local3.split(".", 2); _local4 = (_local4 + baseNEncoder(_local5[0], _arg2)); if (_local5.length > 1){ _local4 = (_local4 + ("." + baseNEncoder(_local5[1]))); }; return (_local4); } private function baseNDecoder(_arg1:String):uint{ var _local2:uint; var _local3:uint; while (_local3 < _arg1.length) { _local2 = (_local2 * _base); _local2 = (_local2 + _hashVal[_arg1.charAt(_local3)]); _local3++; }; return (_local2); } public function decode(_arg1:String):Number{ var _local2 = ""; if (_arg1.charAt(0) == "-"){ _local2 = "-"; _arg1 = _arg1.substring(1); }; var _local3:Array = _arg1.split(".", 2); _local2 = (_local2 + baseNDecoder(_local3[0])); if (_local3.length > 1){ _local2 = (_local2 + "."); _local2 = (_local2 + baseNDecoder(_local3[1])); }; return (Number(_local2)); } private function baseNEncoder(_arg1:uint, _arg2:uint=1):String{ var _local3 = ""; var _local4:uint = _arg1; while (_local4 != 0) { _local3 = (_hashIndex.charAt((_local4 % _base)) + _local3); _local4 = (_local4 / _base); }; if (_arg2){ while (_local3.length < _arg2) { _local3 = (_hashIndex.charAt(0) + _local3); }; }; return (_local3); } } }//package com.newgrounds
Section 25
//NewgroundsAPI (com.newgrounds.NewgroundsAPI) package com.newgrounds { import flash.events.*; import flash.display.*; import flash.utils.*; import com.adobe.serialization.json.*; import com.adobe.crypto.*; import flash.system.*; import flash.text.*; import flash.net.*; public class NewgroundsAPI extends EventDispatcher { private static const COMMANDS_WIKI_URL:String = "http://www.newgrounds.com/wiki/flashapi/commands/"; public static const events:Object = {MOVIE_CONNECTED:1, ADS_APPROVED:2, AD_ATTACHED:3, HOST_BLOCKED:4, NEW_VERSION_AVAILABLE:5, EVENT_LOGGED:6, SCORE_POSTED:7, SCORES_LOADED:8, MEDAL_UNLOCKED:9, MEDALS_LOADED:10, FILE_PRIVS_LOADED:11, FILE_SAVED:12}; private static const AD_TERMS_URL:String = "http://www.newgrounds.com/wiki/flashads/terms/"; private static const REMOVED_FROM_STAGE:String = "removedFromStage"; private static const GATEWAY_URL:String = "http://www.ngads.com/gateway_v2.php"; private static var connected:Boolean; private static var error_format:TextFormat; private static var user_id:Number; private static var _initialized:Boolean = false; private static var ad_swf_url:String; private static var ad:Loader; private static var user_email:String; private static var ad_reset:Number = 0; private static var publisher_id:Number; private static var listeners:Array = setDefaultListeners(); private static var debug:Boolean; private static var normal_format:TextFormat; private static var do_echo:Boolean = false; private static var ad_url:String; private static var medals:Array = null; private static var session_id:String; private static var timeoutTimer:Timer; public static var errors:Dictionary = NewgroundsAPIError.init_codes(); private static var adURLLoader:URLLoader; private static var tracker_id:uint; private static var user_name:String; private static var movie_id:String; private static var adContainer:Sprite; private static var encryption_key:String; private static var flashAdTarget:DisplayObjectContainer; private static var host:String; private static var loaders:Array = []; private static var compressor:BaseN = new BaseN(compression_radix); private static var period_aliases:Object = {t:{name:"Today", alias:"TODAY"}, p:{name:"Yesterday", alias:"YESTERDAY"}, w:{name:"This Week", alias:"THIS_WEEK"}, m:{name:"This Month", alias:"THIS_MONTH"}, y:{name:"This Year", alias:"THIS_YEAR"}, a:{name:"All-Time", alias:"ALL_TIME"}}; private static var score_page_counts:Object = new Object(); private static var version:String; private static var link_format:TextFormat; public static var periods:Object = getPeriodAliases(); private static var root:DisplayObject; private static var compression_radix:String = "/g8236klvBQ#&|;Zb*7CEA59%s`Oue1wziFp$rDVY@TKxUPWytSaGHJ>dmoMR^<0~4qNLhc(I+fjn)X"; private static var sharedObjects:Object = new Object(); private static var header_format:TextFormat; private static var save_file = null; public static function setMovieVersion(_arg1:String):void{ if (_arg1){ version = String(_arg1); }; } public static function unlockMedal(_arg1:String, _arg2:Boolean=false):void{ if (!_arg1){ sendError({command_id:getCommandID("unlockMedal")}, new NewgroundsAPIError("MISSING_PARAM", "missing required medal name")); return; }; var _local3:Object = new Object(); _local3.medal = _arg1; _local3.get_score = _arg2; sendSecureCommand("unlockMedal", _local3); } private static function uncompressHex(_arg1:String):String{ var _local4:uint; var _local6:String; var _local7:uint; var _local8:String; var _local2:uint = uint(_arg1.charAt(0)); var _local3 = ""; var _local5:uint = 1; while (_local5 < _arg1.length) { _local6 = _arg1.substr(_local5, 4); _local7 = uint(compressor.decode(_local6)); _local8 = _local7.toString(16); if ((_local5 + 4) < _arg1.length){ _local4 = 6; } else { _local4 = _local2; }; while (_local8.length < _local4) { _local8 = ("0" + _local8); }; _local3 = (_local3 + _local8); _local5 = (_local5 + 4); }; return (_local3); } public static function isFlashVersion(_arg1:uint, _arg2:uint=0, _arg3:uint=0, _arg4:uint=0):Boolean{ var _local6:Array = Capabilities.version.split(" ")[1].split(","); var _local7:Array = arguments; var _local8:uint; while (_local8 < _local7.length) { _local6[_local8] = uint(_local6[_local8]); _local8++; }; _local8 = 0; while (_local8 < _local7.length) { if (_local6[_local8] > _local7[_local8]){ return (true); }; if (_local6[_local8] < _local7[_local8]){ return (false); }; _local8++; }; return (true); } public static function loadLocal(_arg1:String){ var _local2:SharedObject; if (!sharedObjects[_arg1]){ sharedObjects[_arg1] = SharedObject.getLocal(((("ng_ap_secure_" + movie_id) + "_") + _arg1)); }; _local2 = sharedObjects[_arg1]; _local2.flush(); if (_local2.data[_arg1]){ return (decodeData(sharedObjects.data[_arg1])); }; return (null); } public static function hasUserEmail():Boolean{ return (((!((user_email == null))) && (!((user_email == ""))))); } private static function getHost():String{ return (host); } public static function getYesterdaysScores(_arg1:String, _arg2:Object):void{ getScores(_arg1, "y", _arg2, "getYesterdaysScores"); } public static function onNewVersionAvailable(_arg1:Object, _arg2:Object):void{ } private static function echo(_arg1:String):void{ if (do_echo){ trace(_arg1); }; } public static function attachFlashAd(_arg1:DisplayObjectContainer):void{ var _local2:URLRequest; Security.allowDomain("http://server.cpmstar.com"); Security.allowDomain("http://www.cpmstar.com"); Security.allowDomain("https://server.cpmstar.com"); Security.allowDomain("https://www.cpmstar.com"); Security.allowInsecureDomain("http://server.cpmstar.com"); Security.allowInsecureDomain("http://www.cpmstar.com"); Security.allowInsecureDomain("https://server.cpmstar.com"); Security.allowInsecureDomain("https://www.cpmstar.com"); flashAdTarget = _arg1; sendMessage("You may get a security sandbox violation from this ad. This is nothing to worry about!"); if (resetAdTimer()){ if (ad_url){ adURLLoader = new URLLoader(); adURLLoader.addEventListener(Event.COMPLETE, adLoaderHandler); adURLLoader.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler); if (ad_url.indexOf("?") > -1){ _local2 = new URLRequest(((ad_url + "&random=") + Math.random())); adURLLoader.load(_local2); } else { _local2 = new URLRequest(((ad_url + "?random=") + Math.random())); adURLLoader.load(_local2); }; }; } else { renderAd(_arg1); }; } public static function getThisMonthsScores(_arg1:String, _arg2:Object):void{ getScores(_arg1, "m", _arg2, "getThisMonthsScores"); } public static function getScores(_arg1:String, _arg2:String, _arg3:Object=null, _arg4:String=null):void{ var _local5:String; if (!_arg3){ _arg3 = new Object(); }; if (!hasUserSession()){ callListener(events.SCORES_LOADED, false, new NewgroundsAPIError("SITE_ID_REQUIRED", (("Host '" + getHost()) + "' does not have high scores enabled"))); return; }; _arg3.publisher_id = publisher_id; _arg3.period = _arg2; _arg3.score = _arg1; if (_arg3.user_id){ _local5 = _arg2; } else { _local5 = (_arg2 + "-u"); }; if (score_page_counts[_local5] == undefined){ _arg3.request_page_count = true; }; sendCommand("getScores", _arg3); } public static function sendSecureCommand(_arg1:String, _arg2:Object, _arg3:Object=null, _arg4:Object=null):void{ if (((((!(debug)) && (!(hasUserSession())))) && (!(hasUserEmail())))){ sendError({command_id:getCommandID(_arg1)}, new NewgroundsAPIError("IDENTIFICATION_REQUIRED", (("You must be logged in or provide an e-mail address ( using NewgroundsAPI.setUserEmail(\"name@domain.com\"); ) to use " + _arg1) + "()."))); return; }; if (!_arg1){ fatalError("Missing command", "sendSecureCommand"); }; if (!_arg2){ fatalError("Missing secure_params", "sendSecureCommand"); }; if (!_arg3){ _arg3 = new Object(); }; var _local5 = ""; var _local6:uint; while (_local6 < 16) { _local5 = (_local5 + compression_radix.charAt(Math.floor((Math.random() * compression_radix.length)))); _local6++; }; if (debug){ _arg2.session_id = ""; } else { _arg2.session_id = session_id; }; _arg2.as_version = 3; _arg2.user_email = user_email; _arg2.publisher_id = publisher_id; _arg2.seed = _local5; _arg2.command_id = getCommandID(_arg1); var _local7:String = MD5.hash(_local5); var _local8:String = RC4.encrypt(JSON.encode(_arg2), encryption_key); var _local9:String = (_local7 + _local8); _arg3.secure = compressHex(_local9); sendCommand("securePacket", _arg3, false, _arg4); } private static function initTextFormats():void{ if (!error_format){ error_format = new TextFormat(); error_format.font = "Arial Black"; error_format.size = 48; error_format.color = 0xFF0000; }; if (!header_format){ header_format = new TextFormat(); header_format.font = "Arial Black"; header_format.size = 24; header_format.color = 0xFFFFFF; }; if (!normal_format){ normal_format = new TextFormat(); normal_format.font = "Arial"; normal_format.bold = true; normal_format.size = 12; normal_format.color = 0xFFFFFF; }; if (!link_format){ link_format = new TextFormat(); link_format.color = 0xFFFF00; link_format.underline = true; }; } private static function getCommandName(_arg1:String):String{ return (_arg1); } private static function getPeriodAliases():Object{ var _local2:String; var _local1:Object = new Object(); for (_local2 in period_aliases) { _local1[period_aliases[_local2].alias] = _local2; }; return (_local1); } public static function removeEventListener(_arg1:uint):void{ delete listeners[_arg1]; } public static function getThisWeeksScores(_arg1:String, _arg2:Object):void{ getScores(_arg1, "w", _arg2, "getThisWeeksScores"); } public static function setUserEmail(_arg1:String):void{ user_email = _arg1; } public static function hasUserSession():Boolean{ return (((((!((session_id == null))) && (!((session_id == ""))))) && (!((publisher_id == 0))))); } public static function getMedals():Array{ return (medals); } public static function addEventListener(_arg1:uint, _arg2:Function, _arg3:Object=null):void{ listeners[_arg1] = {listener:_arg2, params:_arg3}; } private static function callListener(_arg1:uint, _arg2:Boolean, _arg3=undefined, _arg4=undefined):void{ echo(("Fired Event: " + getEventName(_arg1))); if (listeners[_arg1]){ if ((_arg3 is NewgroundsAPIError)){ listeners[_arg1].listener({event:_arg1, success:_arg2, error:_arg3, target:_arg4}, listeners[_arg1].params); } else { listeners[_arg1].listener({event:_arg1, success:_arg2, data:_arg3, target:_arg4}, listeners[_arg1].params); }; }; } private static function compressHex(_arg1:String):String{ var _local2:uint = (_arg1.length % 6); var _local3 = ""; var _local4:uint; while (_local4 < _arg1.length) { _local3 = (_local3 + compressor.encode(uint(("0x" + _arg1.substr(_local4, 6))), 4)); _local4 = (_local4 + 6); }; return ((_local2.toString() + _local3)); } private static function adLoaderHandler(_arg1:Event):void{ var _local2:URLLoader = URLLoader(_arg1.target); if (_local2.data){ ad_swf_url = String(_local2.data); } else { ad_swf_url = null; }; renderAd(flashAdTarget); } public static function checkFilePrivs(_arg1:String, _arg2:String):void{ var _local3:uint; if (user_id){ _local3 = user_id; } else { _local3 = 0; }; var _local4:Object = {folder:_arg1, filename:_arg2, user_id:_local3, publisher_id:publisher_id}; sendCommand("checkFilePrivs", _local4); } public static function connectMovie(_arg1:DisplayObject, _arg2:String, _arg3:String, _arg4:Boolean):void{ initialize(_arg1); if (connected){ return; }; timeoutTimer.start(); if (!_arg2){ fatalError("NewgroundsAPI.connectMovie() - missing required movie_id parameter", "connectMovie"); }; movie_id = String(_arg2); tracker_id = uint(movie_id.substring(0, movie_id.indexOf(":"))); encryption_key = _arg3; debug = _arg4; connected = true; sendCommand("connectMovie", {host:getHost(), movie_version:version}); } private static function sendMessage(_arg1:String, _arg2:Boolean=false):String{ var _local3:String = ("[NewgroundsAPI] :: " + _arg1); if (_arg2){ return (_local3); }; trace(_local3); return (null); } private static function renderAd(_arg1:DisplayObjectContainer):void{ var _local2:Shape; var _local3:Shape; if (ad){ removeAd(); }; if (ad_swf_url){ _local2 = new Shape(); _local2.graphics.beginFill(0); _local2.graphics.moveTo(0, 0); _local2.graphics.lineTo(300, 0); _local2.graphics.lineTo(300, 250); _local2.graphics.lineTo(0, 250); _local2.graphics.lineTo(0, 0); _local2.graphics.endFill(); _local3 = new Shape(); _local3.graphics.beginFill(0); _local3.graphics.moveTo(0, 0); _local3.graphics.lineTo(300, 0); _local3.graphics.lineTo(300, 250); _local3.graphics.lineTo(0, 250); _local3.graphics.lineTo(0, 0); _local3.graphics.endFill(); ad = new Loader(); adContainer = new Sprite(); adContainer.addChild(_local2); adContainer.addChild(ad); adContainer.addChild(_local3); ad.mask = _local3; _arg1.addChild(adContainer); if (isFlashVersion(9, 0, 28)){ adContainer.addEventListener(REMOVED_FROM_STAGE, removeAdHandler); }; ad.load(new URLRequest(ad_swf_url)); callListener(events.AD_ATTACHED, true, null, _arg1); } else { callListener(events.AD_ATTACHED, false, new NewgroundsAPIError("FLASH_ADS_NOT_APPROVED", "Unable to render ad")); }; } private static function fatalError(_arg1:String, _arg2:String):void{ if (_arg2){ _arg1 = (_arg1 + ((("\n\tSee " + COMMANDS_WIKI_URL) + _arg2.toLowerCase()) + " for additional information.")); }; throw (new Error(("***ERROR*** class=NewgroundsAPI\n\n" + _arg1))); } private static function ioErrorHandler(_arg1:IOErrorEvent):void{ sendWarning(("Ad failed to load:" + _arg1.toString())); } private static function sendError(_arg1:Object, _arg2:NewgroundsAPIError):void{ trace(((((("[NewgroundsAPI ERROR] :: " + getCommandName(_arg1.command_id)) + "() - ") + _arg2.name) + ":\n\t\t\t\t") + _arg2.message)); } public static function connectionTimeOut(_arg1:Event=null):void{ callListener(events.MOVIE_CONNECTED, false, new NewgroundsAPIError("CONNECTION_FAILED", "Connection to NewgroundsAPI gateway timed out.")); } private static function setDefaultListeners():Array{ var _local1:Array = new Array(); _local1[events.HOST_BLOCKED] = {listener:doBlockHost}; _local1[events.NEW_VERSION_AVAILABLE] = {listener:onNewVersionAvailable}; return (_local1); } public static function hasPublisher():Boolean{ return (!((publisher_id == 0))); } public static function getEventName(_arg1:uint):String{ var _local2:String; for (_local2 in events) { if (events[_local2] == _arg1){ return (_local2); }; }; return (undefined); } public static function initialize(_arg1:DisplayObject):void{ var _local2:Object; if (_initialized){ return; }; _initialized = true; _slot1.root = _arg1; timeoutTimer = new Timer(8000, 1); if (_arg1.loaderInfo){ _local2 = _arg1.loaderInfo.parameters; host = _arg1.loaderInfo.url; }; if (_local2){ user_name = _local2.NewgroundsAPI_UserName; user_id = _local2.NewgroundsAPI_UserID; publisher_id = _local2.NewgroundsAPI_PublisherID; session_id = _local2.NewgroundsAPI_SessionID; } else { publisher_id = 1; session_id = null; user_id = 0; user_name = "Guest"; }; if ((((host.indexOf("http://") > -1)) || ((host.indexOf("https://") > -1)))){ host = host.split("/")[2].toLowerCase(); } else { host = "localhost"; }; } private static function removeAdHandler(_arg1:Event):void{ removeAd(); } private static function resetAdTimer():Boolean{ if (!ad_url){ return (false); }; var _local1:Date = new Date(); if (_local1.getTime() >= ad_reset){ ad_reset = (_local1.getTime() + ((1000 * 60) * 5)); return (true); }; return (false); } public static function loadCustomLink(_arg1:String):void{ sendCommand("loadCustomLink", {host:getHost(), link:_arg1}, true); } public static function loadMySite():void{ sendCommand("loadMySite", {host:getHost()}); } public static function saveFile(_arg1:String, _arg2:String, _arg3:Object, _arg4):void{ } public static function getTodaysScores(_arg1:String, _arg2:Object):void{ getScores(_arg1, "t", _arg2, "getTodaysScores"); } private static function doBlockHost(_arg1:Object):void{ } private static function sendCommand(_arg1:String, _arg2:Object, _arg3:Boolean=false, _arg4:Object=null):void{ var _local6:String; var _local8:String; var _local9:Array; var _local10:String; var _local11:URLLoader; if (((!(connected)) && (!((_arg1 == "connectMovie"))))){ _local8 = (("NewgroundsAPI." + _arg1) + "() - NewgroundsAPI.connectMovie() must be called before this command can be called\n"); fatalError(_local8, "connectMovie"); }; var _local5:URLVariables = new URLVariables(); _local5.command_id = getCommandID(_arg1); _local5.tracker_id = movie_id; if (debug){ _local5.debug = debug; }; if (_arg2){ for (_local6 in _arg2) { _local5[_local6] = _arg2[_local6]; }; }; if (_arg4){ for (_local6 in _arg4) { _local5[_local6] = _arg4[_local6]; }; }; echo((("OUTPUT: \n" + JSON.encode(_local5)) + "\n")); var _local7:URLRequest = new URLRequest(((GATEWAY_URL + "?seed=") + Math.random())); _local7.data = _local5; if (_arg3){ _local7.method = URLRequestMethod.GET; _local7.data = _local5; navigateToURL(_local7, "_blank"); } else { _local9 = new Array(); for (_local10 in _local5) { _local9.push(((_local10 + "=") + escape(_local5[_local10]))); }; echo(((("POST " + GATEWAY_URL) + "?") + _local9.join("&"))); _local7.method = URLRequestMethod.POST; _local11 = new URLLoader(); _local11.addEventListener(Event.COMPLETE, loaderHandler); loaders.push(_local11); _local11.load(_local7); trace(_local7.data); }; } public static function getConfirmation(_arg1:String, _arg2:uint, _arg3:String, _arg4:Object, _arg5:String, _arg6:String):void{ } private static function loaderHandler(_arg1:Event):void{ var _local4:Object; var _local5:NewgroundsAPIError; var _local2:URLLoader = URLLoader(_arg1.target); echo((("INPUT: \n" + _local2.data) + "\n")); var _local3:uint; while (_local3 < loaders.length) { if (loaders[_local3] == _local2){ loaders.splice(_local3, 1); break; }; _local3++; }; if (_local2.data){ _local4 = JSON.decode(_local2.data); } else { _local4 = {success:false}; }; if (!_local4.success){ _local5 = new NewgroundsAPIError(_local4.error_code, _local4.error_msg); sendError(_local4, _local5); } else { doEvent(_local4); }; } public static function loadNewgrounds():void{ sendCommand("loadNewgrounds", {host:getHost()}, true); } public static function getOfficialVersionURL():String{ var _local1:String = ((((((GATEWAY_URL + "?tracker_id=") + movie_id) + "&command_id=") + getCommandID("loadOfficalVersion")) + "&seed=") + Math.random()); if (debug){ _local1 = (_local1 + "&debug=1"); }; return (_local1); } public static function getFiles(_arg1:String, _arg2:Object):void{ } public static function logCustomEvent(_arg1:String):void{ sendCommand("logCustomEvent", {host:getHost(), event:_arg1}); } public static function removeAd():void{ if (adURLLoader){ try { adURLLoader.close(); } catch(e:Error) { }; adURLLoader = null; }; if (ad){ try { ad.close(); } catch(e:Error) { }; try { Object(ad).unloadAndStop(true); trace("uas"); } catch(e:Error) { ad.unload(); }; if (ad.parent){ ad.parent.removeChild(ad); }; }; if (adContainer){ if (isFlashVersion(9, 0, 28, 0)){ adContainer.removeEventListener(REMOVED_FROM_STAGE, removeAdHandler); }; if (adContainer.parent){ adContainer.parent.removeChild(adContainer); }; }; ad = null; adContainer = null; } public static function postScore(_arg1:String, _arg2:Number, _arg3:Boolean):void{ sendSecureCommand("postScore", {score:_arg1, value:_arg2, get_best:_arg3}); } public static function finishFileSave(_arg1:String, _arg2:String, _arg3:String, _arg4:Boolean, _arg5, _arg6):void{ } private static function sendNotice(_arg1:String, _arg2:String=null):void{ if (_arg2){ _arg1 = (_arg1 + ((("\n[NewgroundsAPI NOTICE] :: \tSee " + COMMANDS_WIKI_URL) + _arg2.toLowerCase()) + " for additional information.")); }; trace(("[NewgroundsAPI NOTICE] :: " + _arg1)); } public static function decodeData(_arg1:String){ return (JSON.decode(RC4.decrypt(uncompressHex(_arg1), encryption_key))); } public static function encodeData(_arg1:Object):String{ return (compressHex(RC4.encrypt(JSON.encode(_arg1), encryption_key))); } public static function getThisYearsScores(_arg1:String, _arg2:Object):void{ getScores(_arg1, "y", _arg2, "getThisYearsScores"); } private static function doEvent(_arg1:Object):void{ var _local2:String; var _local3:Object; var _local4:String; var _local5:Boolean; var _local6:String; var _local7:uint; switch (getCommandName(_arg1.command_id)){ case "connectMovie": timeoutTimer.stop(); sendMessage("You have successfully connected to the Newgrounds API Gateway"); sendMessage((("Movie identified as \"" + _arg1.movie_name) + "\"")); callListener(events.MOVIE_CONNECTED, _arg1.success, {movie_name:_arg1.movie_name}); _local5 = false; if (_arg1.ad_status === -1){ _local2 = "This movie was not approved to run Flash Ads."; sendWarning(_local2); sendWarning((("visit " + AD_TERMS_URL) + " to view our approval guidelines")); if (!_arg1.ad_url){ callListener(events.ADS_APPROVED, false, new NewgroundsAPIError("FLASH_ADS_NOT_APPROVED", _local2)); } else { _local5 = true; }; } else { if (_arg1.ad_status === 0){ _local2 = "Flash Ads are currently awaiting approval."; sendNotice(_local2); if (!_arg1.ad_url){ callListener(events.ADS_APPROVED, false, new NewgroundsAPIError("FLASH_ADS_NOT_APPROVED", _local2)); } else { _local5 = true; }; }; }; if (_arg1.ad_url){ ad_url = unescape(_arg1.ad_url); if (!_local5){ sendMessage("This movie has been approved to run Flash Ads!"); }; callListener(events.ADS_APPROVED, true); }; if (_arg1.deny_host){ _local2 = (getHost() + " does not have permission to run this movie!"); sendWarning(_local2); sendWarning(("\tUpdate your API configuration to unblock " + getHost())); callListener(events.HOST_BLOCKED, true, {movie_url:unescape(_arg1.movie_url), redirect_url:getOfficialVersionURL()}); }; if (_arg1.movie_version){ sendWarning("According to your API Configuration, this version is out of date."); if (version){ sendWarning(("\tThe this movie is version " + version)); }; sendWarning(("\tThe most current version is " + _arg1.movie_version)); callListener(events.NEW_VERSION_AVAILABLE, true, {movie_version:_arg1.movie_version, movie_url:unescape(_arg1.movie_url), redirect_url:getOfficialVersionURL()}); }; if (_arg1.request_portal_url){ sendCommand("setPortalID", {portal_url:host}); }; break; case "logCustomEvent": if (_arg1.success){ sendMessage((("Event '" + _arg1.event) + "' was logged.")); }; callListener(events.EVENT_LOGGED, _arg1.success, {event:_arg1.event}); break; case "postScore": if (_arg1.success){ _local4 = "User"; if (user_email){ _local4 = user_email; } else { if (user_name){ _local4 = user_name; }; }; sendMessage((((((_local4 + " posted ") + _arg1.value) + " to '") + _arg1.score) + "'")); _local3 = {score:_arg1.score, value:_arg1.value, username:_local4}; }; callListener(events.SCORE_POSTED, _arg1.success, _local3); break; case "getScores": if (_arg1.user_id){ _local6 = _arg1.period; } else { _local6 = (_arg1.period + "-u"); }; if (_arg1.total_pages){ score_page_counts[_local6] = _arg1.total_pages; }; _local3.user_id = _arg1.user_id; _local3.current_page = _arg1.current_page; _local3.total_pages = score_page_counts[_local6]; _local3.scores = _arg1.scores; _local3.period = getPeriodName(_arg1.period); callListener(events.SCORES_LOADED, _arg1.success, _local3); break; case "unlockMedal": if (medals){ _local7 = 0; while (_local7 < medals.length) { if (medals[_local7].medal_name === _arg1.medal_name){ medals[_local7].medal_unlocked = true; break; }; _local7++; }; }; _local3 = {medal_name:_arg1.medal_name, medal_value:_arg1.medal_value, medal_difficulty:_arg1.medal_difficulty}; callListener(events.MEDAL_UNLOCKED, _arg1.success, _local3); break; case "getMedals": medals = _arg1.medals; _local3 = {medals:_arg1.medals}; callListener(events.MEDALS_LOADED, _arg1.success, _local3); break; case "getFiles": break; case "getSystemFiles": break; case "saveFile": save_file = null; _local3 = {file_id:_arg1.file_id, filename:_arg1.filename, file_url:_arg1.file_url, thumbnail:_arg1.thumbnail, icon:_arg1.icon}; callListener(events.FILE_SAVED, _arg1.success, _local3); break; case "checkFilePrivs": if (save_file){ save_file.checkPrivs(_arg1); } else { _local3 = {filename:_arg1.filename, folder:_arg1.folder, can_read:_arg1.can_read, can_write:_arg1.can_write}; callListener(events.FILE_PRIVS_LOADED, _arg1.success, _local3); }; break; }; } public static function getPeriodAlias(_arg1:String):String{ var _local2:String; for (_local2 in period_aliases) { if (_local2 == _arg1){ return (period_aliases[_local2].alias); }; }; return (null); } public static function loadMedals():void{ if (medals){ callListener(events.MEDALS_LOADED, true, {medals:medals}); return; }; var _local1:Object = new Object(); if (hasUserSession()){ _local1.publisher_id = publisher_id; _local1.user_id = user_id; }; sendCommand("getMedals", _local1); } public static function saveLocal(_arg1:String, _arg2, _arg3:uint=0):void{ var _local4:SharedObject; if (!sharedObjects[_arg1]){ sharedObjects[_arg1] = SharedObject.getLocal(((("ng_ap_secure_" + movie_id) + "_") + _arg1)); }; _local4 = sharedObjects[_arg1]; _local4.data[_arg1] = encodeData(_arg2); _local4.flush(); } public static function getPeriodName(_arg1:String):String{ var _local2:String; for (_local2 in period_aliases) { if (_local2 == _arg1){ return (period_aliases[_local2].name); }; }; return (null); } private static function sendWarning(_arg1:String, _arg2:String=null):void{ if (_arg2){ _arg1 = (_arg1 + ((("\n[NewgroundsAPI WARNING] :: \tSee " + COMMANDS_WIKI_URL) + _arg2.toLowerCase()) + " for additional information.")); }; trace(("[NewgroundsAPI WARNING] :: " + _arg1)); } public static function isNewgrounds():Boolean{ return ((((publisher_id == 1)) || ((getHost().toLowerCase().indexOf("ungrounded.net") > -1)))); } private static function getCommandID(_arg1:String):String{ return (_arg1); } public static function getAlltimeScores(_arg1:String, _arg2:Object):void{ getScores(_arg1, "a", _arg2, "getAlltimeScores"); } } }//package com.newgrounds
Section 26
//NewgroundsAPIError (com.newgrounds.NewgroundsAPIError) package com.newgrounds { import flash.utils.*; public class NewgroundsAPIError { public var alias:String; public var message:String; public var name:String; public var code:Number;// = 0 private static const always_caps:Array = new Array("API", "URL", "ID"); public static const error_names:Object = init_names(); public static const aliases:Array = new Array("UNKNOWN_ERROR", "INVALID_API_ID", "MISSING_PARAM", "INVALID_STAT_ID", "INVALID_COMMAND_ID", "FLASH_ADS_NOT_APPROVED", "PERMISSION_DENIED", "IDENTIFICATION_REQUIRED", "INVALID_EMAIL_ADDRESS", "BANNED_USER", "SESSION_EXPIRED", "INVALID_SCORE", "INVALID_MEDAL", "INVALID_FOLDER", "FILE_NOT_FOUND", "SITE_ID_REQUIRED", "UPLOAD_IN_PROGRESS", "USER_CANCELLED", "CONFIRM_REQUEST", "CONNECTION_FAILED"); public static const error_codes:Object = init_codes(); public function NewgroundsAPIError(_arg1, _arg2:String){ if ((_arg1 is String)){ _arg1 = error_codes[_arg1]; } else { if (!(_arg1 is uint)){ _arg1 = 0; }; }; trace(_arg1); code = _arg1; message = _arg2; name = error_names[_arg1]; trace(name); alias = aliases[_arg1]; } public function isError():Boolean{ return (true); } private static function init_names():Array{ var _local3:Array; var _local4:uint; var _local5:String; var _local1:Array = new Array(); var _local2:uint; while (_local2 < aliases.length) { _local3 = aliases[_local2].toLowerCase().split("_"); _local4 = 0; while (_local4 < _local3.length) { _local3[_local4] = (_local3[_local4].substr(0, 1).toUpperCase() + _local3[_local4].substr(1, _local3[_local4].length)); for each (_local5 in always_caps) { if (_local3[_local4].toUpperCase() == _local5){ _local3[_local4] = _local3[_local4].toUpperCase(); }; }; _local4++; }; _local1[_local2] = _local3.join(" "); _local2++; }; return (_local1); } public static function init_codes():Dictionary{ var _local1:Dictionary = new Dictionary(); var _local2:uint; while (_local2 < aliases.length) { _local1[aliases[_local2]] = _local2; _local2++; }; return (_local1); } } }//package com.newgrounds
Section 27
//RC4 (com.newgrounds.RC4) package com.newgrounds { public class RC4 { private static var mykey:Array = new Array(0xFF); private static var sbox:Array = new Array(0xFF); private static function charsToHex(_arg1:Array):String{ var _local2:String = new String(""); var _local3:Array = new Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f"); var _local4:uint; while (_local4 < _arg1.length) { _local2 = (_local2 + (_local3[(_arg1[_local4] >> 4)] + _local3[(_arg1[_local4] & 15)])); _local4++; }; return (_local2); } public static function encrypt(_arg1:String, _arg2:String):String{ var _local3:Array = strToChars(_arg1); var _local4:Array = strToChars(_arg2); var _local5:Array = calculate(_local3, _local4); return (charsToHex(_local5)); } private static function hexToChars(_arg1:String):Array{ var _local2:Array = new Array(); var _local3:uint = ((_arg1.substr(0, 2))=="0x") ? 2 : 0; while (_local3 < _arg1.length) { _local2.push(parseInt(_arg1.substr(_local3, 2), 16)); _local3 = (_local3 + 2); }; return (_local2); } public static function encryptbin(_arg1:String, _arg2:String):Array{ var _local3:Array = strToChars(_arg1); var _local4:Array = strToChars(_arg2); var _local5:Array = calculate(_local3, _local4); return (_local5); } public static function decrypt(_arg1:String, _arg2:String):String{ var _local3:Array = hexToChars(_arg1); var _local4:Array = strToChars(_arg2); var _local5:Array = calculate(_local3, _local4); return (charsToStr(_local5)); } private static function strToChars(_arg1:String):Array{ var _local2:Array = new Array(); var _local3:uint; while (_local3 < _arg1.length) { _local2.push(_arg1.charCodeAt(_local3)); _local3++; }; return (_local2); } private static function calculate(_arg1:Array, _arg2:Array):Array{ var _local6:uint; var _local7:uint; var _local8:uint; var _local10:uint; initialize(_arg2); var _local3:uint; var _local4:uint; var _local5:Array = new Array(); var _local9:uint; while (_local9 < _arg1.length) { _local3 = ((_local3 + 1) % 0x0100); _local4 = ((_local4 + sbox[_local3]) % 0x0100); _local7 = sbox[_local3]; sbox[_local3] = sbox[_local4]; sbox[_local4] = _local7; _local10 = ((sbox[_local3] + sbox[_local4]) % 0x0100); _local6 = sbox[_local10]; _local8 = (_arg1[_local9] ^ _local6); _local5.push(_local8); _local9++; }; return (_local5); } private static function initialize(_arg1:Array):void{ var _local3:uint; var _local2:uint; var _local4:uint = _arg1.length; var _local5:uint; while (_local5 <= 0xFF) { mykey[_local5] = _arg1[(_local5 % _local4)]; sbox[_local5] = _local5; _local5++; }; _local5 = 0; while (_local5 <= 0xFF) { _local2 = (((_local2 + sbox[_local5]) + mykey[_local5]) % 0x0100); _local3 = sbox[_local5]; sbox[_local5] = sbox[_local2]; sbox[_local2] = _local3; _local5++; }; } private static function charsToStr(_arg1:Array):String{ var _local2:String = new String(""); var _local3:uint; while (_local3 < _arg1.length) { _local2 = (_local2 + String.fromCharCode(_arg1[_local3])); _local3++; }; return (_local2); } } }//package com.newgrounds
Section 28
//BaseButton (fl.controls.BaseButton) package fl.controls { import flash.events.*; import flash.display.*; import fl.core.*; import flash.utils.*; import fl.events.*; 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 29
//Button (fl.controls.Button) package fl.controls { import flash.display.*; import fl.core.*; import fl.managers.*; 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 30
//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 31
//ColorPicker (fl.controls.ColorPicker) package fl.controls { import flash.events.*; import flash.display.*; import fl.core.*; import fl.managers.*; import flash.geom.*; import fl.events.*; import flash.text.*; import flash.ui.*; 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 32
//LabelButton (fl.controls.LabelButton) package fl.controls { import flash.events.*; import flash.display.*; import fl.core.*; import fl.managers.*; import fl.events.*; import flash.text.*; import flash.ui.*; 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 33
//RadioButton (fl.controls.RadioButton) package fl.controls { import flash.events.*; import flash.display.*; import fl.managers.*; import flash.ui.*; public class RadioButton extends LabelButton implements IFocusManagerGroup { protected var _value:Object; protected var defaultGroupName:String;// = "RadioButtonGroup" protected var _group:RadioButtonGroup; private static var defaultStyles:Object = {icon:null, upIcon:"RadioButton_upIcon", downIcon:"RadioButton_downIcon", overIcon:"RadioButton_overIcon", disabledIcon:"RadioButton_disabledIcon", selectedDisabledIcon:"RadioButton_selectedDisabledIcon", selectedUpIcon:"RadioButton_selectedUpIcon", selectedDownIcon:"RadioButton_selectedDownIcon", selectedOverIcon:"RadioButton_selectedOverIcon", focusRectSkin:null, focusRectPadding:null, textFormat:null, disabledTextFormat:null, embedFonts:null, textPadding:5}; public static var createAccessibilityImplementation:Function; public function RadioButton(){ defaultGroupName = "RadioButtonGroup"; super(); mode = "border"; groupName = defaultGroupName; } 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 * 2)); uiFocusRect.height = (background.height + (_local2 * 2)); }; } private function setThis():void{ var _local1:RadioButtonGroup; _local1 = _group; if (_local1 != null){ if (_local1.selection != this){ _local1.selection = this; }; } else { super.selected = true; }; } override public function get autoRepeat():Boolean{ return (false); } override public function set autoRepeat(_arg1:Boolean):void{ } protected function handleClick(_arg1:MouseEvent):void{ if (_group == null){ return; }; _group.dispatchEvent(new MouseEvent(MouseEvent.CLICK, true)); } override protected function keyDownHandler(_arg1:KeyboardEvent):void{ switch (_arg1.keyCode){ case Keyboard.DOWN: setNext(!(_arg1.ctrlKey)); _arg1.stopPropagation(); break; case Keyboard.UP: setPrev(!(_arg1.ctrlKey)); _arg1.stopPropagation(); break; case Keyboard.LEFT: setPrev(!(_arg1.ctrlKey)); _arg1.stopPropagation(); break; case Keyboard.RIGHT: setNext(!(_arg1.ctrlKey)); _arg1.stopPropagation(); break; case Keyboard.SPACE: setThis(); _toggle = false; default: super.keyDownHandler(_arg1); break; }; } private function setNext(_arg1:Boolean=true):void{ var _local2:RadioButtonGroup; var _local3:IFocusManager; var _local4:int; var _local5:Number; var _local6:int; var _local7:*; _local2 = _group; if (_local2 == null){ return; }; _local3 = focusManager; if (_local3){ _local3.showFocusIndicator = true; }; _local4 = _local2.getRadioButtonIndex(this); _local5 = _local2.numRadioButtons; _local6 = _local4; if (_local4 != -1){ do { _local6++; _local6 = ((_local6)>(_local2.numRadioButtons - 1)) ? 0 : _local6; _local7 = _local2.getRadioButtonAt(_local6); if (((_local7) && (_local7.enabled))){ if (_arg1){ _local2.selection = _local7; }; _local7.setFocus(); return; }; if (((_arg1) && (!((_local2.getRadioButtonAt(_local6) == _local2.selection))))){ _local2.selection = this; }; this.drawFocus(true); } while (_local6 != _local4); }; } public function get group():RadioButtonGroup{ return (_group); } override protected function keyUpHandler(_arg1:KeyboardEvent):void{ super.keyUpHandler(_arg1); if ((((_arg1.keyCode == Keyboard.SPACE)) && (!(_toggle)))){ _toggle = true; }; } override public function get selected():Boolean{ return (super.selected); } override public function set toggle(_arg1:Boolean):void{ throw (new Error("Warning: You cannot change a RadioButtons toggle.")); } public function set value(_arg1:Object):void{ _value = _arg1; } public function set group(_arg1:RadioButtonGroup):void{ groupName = _arg1.name; } override public function set selected(_arg1:Boolean):void{ if ((((_arg1 == false)) || (selected))){ return; }; if (_group != null){ _group.selection = this; } else { super.selected = _arg1; }; } override protected function draw():void{ super.draw(); } 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); addEventListener(MouseEvent.CLICK, handleClick, false, 0, true); } public function set groupName(_arg1:String):void{ if (_group != null){ _group.removeRadioButton(this); _group.removeEventListener(Event.CHANGE, handleChange); }; _group = ((_arg1)==null) ? null : RadioButtonGroup.getGroup(_arg1); if (_group != null){ _group.addRadioButton(this); _group.addEventListener(Event.CHANGE, handleChange, false, 0, true); }; } public function get value():Object{ return (_value); } 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 (RadioButton.createAccessibilityImplementation != null){ RadioButton.createAccessibilityImplementation(this); }; } public function get groupName():String{ return (((_group)==null) ? null : _group.name); } private function setPrev(_arg1:Boolean=true):void{ var _local2:RadioButtonGroup; var _local3:IFocusManager; var _local4:int; var _local5:int; var _local6:*; _local2 = _group; if (_local2 == null){ return; }; _local3 = focusManager; if (_local3){ _local3.showFocusIndicator = true; }; _local4 = _local2.getRadioButtonIndex(this); _local5 = _local4; if (_local4 != -1){ do { --_local5; _local5 = ((_local5)==-1) ? (_local2.numRadioButtons - 1) : _local5; _local6 = _local2.getRadioButtonAt(_local5); if (((_local6) && (_local6.enabled))){ if (_arg1){ _local2.selection = _local6; }; _local6.setFocus(); return; }; if (((_arg1) && (!((_local2.getRadioButtonAt(_local5) == _local2.selection))))){ _local2.selection = this; }; this.drawFocus(true); } while (_local5 != _local4); }; } protected function handleChange(_arg1:Event):void{ super.selected = (_group.selection == this); dispatchEvent(new Event(Event.CHANGE, true)); } public static function getStyleDefinition():Object{ return (defaultStyles); } } }//package fl.controls
Section 34
//RadioButtonGroup (fl.controls.RadioButtonGroup) package fl.controls { import flash.events.*; public class RadioButtonGroup extends EventDispatcher { protected var _selection:RadioButton; protected var radioButtons:Array; protected var _name:String; private static var groups:Object; private static var groupCount:uint = 0; public function RadioButtonGroup(_arg1:String){ _name = _arg1; radioButtons = []; registerGroup(this); } public function getRadioButtonIndex(_arg1:RadioButton):int{ var _local2:int; var _local3:RadioButton; _local2 = 0; while (_local2 < radioButtons.length) { _local3 = (radioButtons[_local2] as RadioButton); if (_local3 == _arg1){ return (_local2); }; _local2++; }; return (-1); } public function get numRadioButtons():int{ return (radioButtons.length); } public function get name():String{ return (_name); } public function get selection():RadioButton{ return (_selection); } public function set selection(_arg1:RadioButton):void{ if ((((((_selection == _arg1)) || ((_arg1 == null)))) || ((getRadioButtonIndex(_arg1) == -1)))){ return; }; _selection = _arg1; dispatchEvent(new Event(Event.CHANGE, true)); } public function set selectedData(_arg1:Object):void{ var _local2:int; var _local3:RadioButton; _local2 = 0; while (_local2 < radioButtons.length) { _local3 = (radioButtons[_local2] as RadioButton); if (_local3.value == _arg1){ selection = _local3; return; }; _local2++; }; } public function removeRadioButton(_arg1:RadioButton):void{ var _local2:int; _local2 = getRadioButtonIndex(_arg1); if (_local2 != -1){ radioButtons.splice(_local2, 1); }; if (_selection == _arg1){ _selection = null; }; } public function addRadioButton(_arg1:RadioButton):void{ if (_arg1.groupName != name){ _arg1.groupName = name; return; }; radioButtons.push(_arg1); if (_arg1.selected){ selection = _arg1; }; } public function getRadioButtonAt(_arg1:int):RadioButton{ return (RadioButton(radioButtons[_arg1])); } public function get selectedData():Object{ var _local1:RadioButton; _local1 = _selection; return (((_local1)==null) ? null : _local1.value); } public static function getGroup(_arg1:String):RadioButtonGroup{ var _local2:RadioButtonGroup; if (groups == null){ groups = {}; }; _local2 = (groups[_arg1] as RadioButtonGroup); if (_local2 == null){ _local2 = new RadioButtonGroup(_arg1); if ((++groupCount % 20) == 0){ cleanUpGroups(); }; }; return (_local2); } private static function registerGroup(_arg1:RadioButtonGroup):void{ if (groups == null){ groups = {}; }; groups[_arg1.name] = _arg1; } private static function cleanUpGroups():void{ var _local1:String; var _local2:RadioButtonGroup; for (_local1 in groups) { _local2 = (groups[_local1] as RadioButtonGroup); if (_local2.radioButtons.length == 0){ delete groups[_local1]; }; }; } } }//package fl.controls
Section 35
//Slider (fl.controls.Slider) package fl.controls { import flash.events.*; import flash.display.*; import fl.core.*; import fl.managers.*; import fl.events.*; import flash.ui.*; 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 36
//SliderB (fl.controls.SliderB) package fl.controls { import flash.display.*; public dynamic class SliderB extends MovieClip { } }//package fl.controls
Section 37
//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 38
//ComponentShim (fl.core.ComponentShim) package fl.core { import flash.display.*; public dynamic class ComponentShim extends MovieClip { } }//package fl.core
Section 39
//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 40
//UIComponent (fl.core.UIComponent) package fl.core { import flash.events.*; import flash.display.*; import flash.utils.*; import fl.managers.*; import fl.events.*; import flash.system.*; import flash.text.*; 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 41
//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 42
//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 43
//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 44
//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 45
//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 46
//FocusManager (fl.managers.FocusManager) package fl.managers { import flash.events.*; import flash.display.*; import fl.controls.*; import fl.core.*; import flash.utils.*; import flash.text.*; 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 47
//IFocusManager (fl.managers.IFocusManager) package fl.managers { import flash.display.*; import fl.controls.*; 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 48
//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 49
//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 50
//StyleManager (fl.managers.StyleManager) package fl.managers { import fl.core.*; import flash.utils.*; 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 51
//1010_37 (spewer_fla.1010_37) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class 1010_37 extends MovieClip { public function 1010_37(){ addFrameScript(0, frame1); } function frame1(){ gotoAndPlay(Math.ceil((Math.random() * 10))); } } }//package spewer_fla
Section 52
//2dlinkcontainer_31 (spewer_fla.2dlinkcontainer_31) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class 2dlinkcontainer_31 extends MovieClip { public var hitButton:SimpleButton; public function 2dlinkcontainer_31(){ addFrameScript(0, frame1); } function frame1(){ hitButton.addEventListener(MouseEvent.CLICK, goto2D); } public function goto2D(_arg1:MouseEvent){ var e = _arg1; var req:URLRequest = new URLRequest("http://www.2DArray.net"); try { navigateToURL(req, "_blank"); } catch(e:Error) { trace("Navigate to URL failed", e.message); }; } } }//package spewer_fla
Section 53
//ani1_187 (spewer_fla.ani1_187) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class ani1_187 extends MovieClip { public var anim:MovieClip; public function ani1_187(){ addFrameScript(0, frame1); } function frame1(){ if (Math.random() < 0.8){ gotoAndStop(2); } else { gotoAndStop((Math.floor((Math.random() * 6)) + 3)); }; } } }//package spewer_fla
Section 54
//BGmoniters_185 (spewer_fla.BGmoniters_185) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class BGmoniters_185 extends MovieClip { public function BGmoniters_185(){ addFrameScript(0, frame1); } function frame1(){ gotoAndStop(Math.ceil((Math.random() * 4))); } } }//package spewer_fla
Section 55
//body01_320 (spewer_fla.body01_320) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class body01_320 extends MovieClip { public function body01_320(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package spewer_fla
Section 56
//chaptersonpause_161 (spewer_fla.chaptersonpause_161) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class chaptersonpause_161 extends MovieClip { public var chapters:MovieClip; public function chaptersonpause_161(){ addFrameScript(0, frame1); } function frame1(){ visible = (root.gameMode == "story"); if (root.unlockedLevel <= 54){ chapters.gotoAndStop(1); } else { chapters.gotoAndStop(2); }; } } }//package spewer_fla
Section 57
//cutscenefadeout_60 (spewer_fla.cutscenefadeout_60) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class cutscenefadeout_60 extends MovieClip { public function cutscenefadeout_60(){ addFrameScript(60, frame61); } function frame61(){ stop(); } } }//package spewer_fla
Section 58
//dblinkcontainer_41 (spewer_fla.dblinkcontainer_41) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class dblinkcontainer_41 extends MovieClip { public var hitButton:SimpleButton; public function dblinkcontainer_41(){ addFrameScript(0, frame1); } public function gotoDB(_arg1:MouseEvent){ var e = _arg1; var req:URLRequest = new URLRequest("http://dbsoundworks.com/"); try { navigateToURL(req, "_blank"); } catch(e:Error) { trace("Navigate to URL failed", e.message); }; } function frame1(){ hitButton.addEventListener(MouseEvent.CLICK, gotoDB); } } }//package spewer_fla
Section 59
//doc_195 (spewer_fla.doc_195) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class doc_195 extends MovieClip { public function doc_195(){ addFrameScript(173, frame174); } function frame174(){ parent.gotoAndStop(1); } } }//package spewer_fla
Section 60
//doc_196 (spewer_fla.doc_196) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class doc_196 extends MovieClip { public function doc_196(){ addFrameScript(203, frame204); } function frame204(){ parent.gotoAndStop(1); } } }//package spewer_fla
Section 61
//doc_197 (spewer_fla.doc_197) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class doc_197 extends MovieClip { public function doc_197(){ addFrameScript(76, frame77); } function frame77(){ parent.gotoAndStop(1); } } }//package spewer_fla
Section 62
//doc_202 (spewer_fla.doc_202) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class doc_202 extends MovieClip { public var anim:MovieClip; public function doc_202(){ addFrameScript(0, frame1); } function frame1(){ if (Math.random() < 0.8){ gotoAndStop(2); } else { gotoAndStop((Math.floor((Math.random() * 5)) + 3)); }; } } }//package spewer_fla
Section 63
//doc2_203 (spewer_fla.doc2_203) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class doc2_203 extends MovieClip { public function doc2_203(){ addFrameScript(12, frame13); } function frame13(){ parent.gotoAndStop(1); } } }//package spewer_fla
Section 64
//doc2_212 (spewer_fla.doc2_212) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class doc2_212 extends MovieClip { public function doc2_212(){ addFrameScript(112, frame113); } function frame113(){ parent.gotoAndStop(1); } } }//package spewer_fla
Section 65
//doc2_213 (spewer_fla.doc2_213) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class doc2_213 extends MovieClip { public function doc2_213(){ addFrameScript(61, frame62); } function frame62(){ parent.gotoAndStop(1); } } }//package spewer_fla
Section 66
//doc2_215 (spewer_fla.doc2_215) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class doc2_215 extends MovieClip { public function doc2_215(){ addFrameScript(123, frame124); } function frame124(){ parent.gotoAndStop(1); } } }//package spewer_fla
Section 67
//doc2_216 (spewer_fla.doc2_216) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class doc2_216 extends MovieClip { public function doc2_216(){ addFrameScript(107, frame108); } function frame108(){ parent.gotoAndStop(1); } } }//package spewer_fla
Section 68
//doc2erace_217 (spewer_fla.doc2erace_217) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class doc2erace_217 extends MovieClip { public function doc2erace_217(){ addFrameScript(29, frame30); } function frame30(){ parent.gotoAndStop(1); } } }//package spewer_fla
Section 69
//doc3_225 (spewer_fla.doc3_225) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class doc3_225 extends MovieClip { public var anim:MovieClip; public function doc3_225(){ addFrameScript(0, frame1); } function frame1(){ if (Math.random() < 0.3){ gotoAndStop(2); } else { gotoAndStop((Math.floor((Math.random() * 6)) + 3)); }; } } }//package spewer_fla
Section 70
//doc3lab1_219 (spewer_fla.doc3lab1_219) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class doc3lab1_219 extends MovieClip { public function doc3lab1_219(){ addFrameScript(228, frame229); } function frame229(){ parent.gotoAndStop(1); } } }//package spewer_fla
Section 71
//doc3upclose_238 (spewer_fla.doc3upclose_238) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class doc3upclose_238 extends MovieClip { public function doc3upclose_238(){ addFrameScript(58, frame59); } function frame59(){ parent.gotoAndStop(1); parent.scaleX = -(parent.scaleX); } } }//package spewer_fla
Section 72
//doc3upupclose1_236 (spewer_fla.doc3upupclose1_236) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class doc3upupclose1_236 extends MovieClip { public function doc3upupclose1_236(){ addFrameScript(262, frame263); } function frame263(){ parent.gotoAndStop(1); parent.scaleX = -(parent.scaleX); } } }//package spewer_fla
Section 73
//doc3walk1_226 (spewer_fla.doc3walk1_226) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class doc3walk1_226 extends MovieClip { public function doc3walk1_226(){ addFrameScript(119, frame120); } function frame120(){ parent.gotoAndStop(1); parent.scaleX = -(parent.scaleX); } } }//package spewer_fla
Section 74
//doc3walk2_228 (spewer_fla.doc3walk2_228) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class doc3walk2_228 extends MovieClip { public function doc3walk2_228(){ addFrameScript(119, frame120); } function frame120(){ parent.gotoAndStop(1); parent.scaleX = -(parent.scaleX); } } }//package spewer_fla
Section 75
//doc3walk3_231 (spewer_fla.doc3walk3_231) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class doc3walk3_231 extends MovieClip { public function doc3walk3_231(){ addFrameScript(199, frame200); } function frame200(){ parent.gotoAndStop(1); parent.scaleX = -(parent.scaleX); } } }//package spewer_fla
Section 76
//doc3walk4_233 (spewer_fla.doc3walk4_233) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class doc3walk4_233 extends MovieClip { public function doc3walk4_233(){ addFrameScript(174, frame175); } function frame175(){ parent.gotoAndStop(1); parent.scaleX = -(parent.scaleX); } } }//package spewer_fla
Section 77
//doc3walk5_239 (spewer_fla.doc3walk5_239) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class doc3walk5_239 extends MovieClip { public function doc3walk5_239(){ addFrameScript(89, frame90); } function frame90(){ parent.gotoAndStop(1); parent.scaleX = -(parent.scaleX); } } }//package spewer_fla
Section 78
//doc4_218 (spewer_fla.doc4_218) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class doc4_218 extends MovieClip { public var anim:MovieClip; public function doc4_218(){ addFrameScript(0, frame1); } function frame1(){ if (Math.random() < 0.7){ gotoAndStop(2); } else { gotoAndStop((Math.floor((Math.random() * 5)) + 3)); }; } } }//package spewer_fla
Section 79
//doc4_220 (spewer_fla.doc4_220) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class doc4_220 extends MovieClip { public function doc4_220(){ addFrameScript(80, frame81); } function frame81(){ parent.gotoAndStop(1); } } }//package spewer_fla
Section 80
//doc4_222 (spewer_fla.doc4_222) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class doc4_222 extends MovieClip { public function doc4_222(){ addFrameScript(80, frame81); } function frame81(){ parent.gotoAndStop(1); } } }//package spewer_fla
Section 81
//doc4lab4_223 (spewer_fla.doc4lab4_223) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class doc4lab4_223 extends MovieClip { public function doc4lab4_223(){ addFrameScript(58, frame59); } function frame59(){ parent.gotoAndStop(1); } } }//package spewer_fla
Section 82
//doc4lab5_224 (spewer_fla.doc4lab5_224) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class doc4lab5_224 extends MovieClip { public function doc4lab5_224(){ addFrameScript(69, frame70); } function frame70(){ parent.gotoAndStop(1); } } }//package spewer_fla
Section 83
//dochitskeys2_199 (spewer_fla.dochitskeys2_199) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class dochitskeys2_199 extends MovieClip { public function dochitskeys2_199(){ addFrameScript(165, frame166); } function frame166(){ parent.gotoAndStop(1); } } }//package spewer_fla
Section 84
//docmashkeys3_200 (spewer_fla.docmashkeys3_200) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class docmashkeys3_200 extends MovieClip { public function docmashkeys3_200(){ addFrameScript(285, frame286); } function frame286(){ parent.gotoAndStop(1); } } }//package spewer_fla
Section 85
//docpacingcutscene_241 (spewer_fla.docpacingcutscene_241) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class docpacingcutscene_241 extends MovieClip { public var anim:MovieClip; public function docpacingcutscene_241(){ addFrameScript(0, frame1); } function frame1(){ if (Math.random() < 0.3){ gotoAndStop(2); } else { gotoAndStop((Math.floor((Math.random() * 6)) + 3)); }; } } }//package spewer_fla
Section 86
//docsleepingatdesk_201 (spewer_fla.docsleepingatdesk_201) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class docsleepingatdesk_201 extends MovieClip { public function docsleepingatdesk_201(){ addFrameScript(50, frame51); } function frame51(){ parent.gotoAndStop(1); } } }//package spewer_fla
Section 87
//doctyping_188 (spewer_fla.doctyping_188) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class doctyping_188 extends MovieClip { public function doctyping_188(){ addFrameScript(138, frame139); } function frame139(){ parent.gotoAndStop(1); } } }//package spewer_fla
Section 88
//edlinkcontainer_30 (spewer_fla.edlinkcontainer_30) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class edlinkcontainer_30 extends MovieClip { public var hitButton:SimpleButton; public function edlinkcontainer_30(){ addFrameScript(0, frame1); } public function gotoEd(_arg1:MouseEvent){ var e = _arg1; var req:URLRequest = new URLRequest("http://www.edmundm.com"); try { navigateToURL(req, "_blank"); } catch(e:Error) { trace("Navigate to URL failed", e.message); }; } function frame1(){ hitButton.addEventListener(MouseEvent.CLICK, gotoEd); } } }//package spewer_fla
Section 89
//erasefailed_55 (spewer_fla.erasefailed_55) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class erasefailed_55 extends MovieClip { public function erasefailed_55(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package spewer_fla
Section 90
//erasesuccess_54 (spewer_fla.erasesuccess_54) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class erasesuccess_54 extends MovieClip { public function erasesuccess_54(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package spewer_fla
Section 91
//introsong_59 (spewer_fla.introsong_59) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class introsong_59 extends MovieClip { public function introsong_59(){ addFrameScript(0, frame1, 769, frame770); } function frame770(){ gotoAndPlay(2); } function frame1(){ stop(); } } }//package spewer_fla
Section 92
//jflinkcontainer_36 (spewer_fla.jflinkcontainer_36) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class jflinkcontainer_36 extends MovieClip { public var hitButton:SimpleButton; public function jflinkcontainer_36(){ addFrameScript(0, frame1); } function frame1(){ hitButton.addEventListener(MouseEvent.CLICK, gotoJF); } public function gotoJF(_arg1:MouseEvent){ var e = _arg1; var req:URLRequest = new URLRequest("http://jordanfehr.tumblr.com"); try { navigateToURL(req, "_blank"); } catch(e:Error) { trace("Navigate to URL failed", e.message); }; } } }//package spewer_fla
Section 93
//levelproperties_163 (spewer_fla.levelproperties_163) package spewer_fla { import flash.events.*; import flash.display.*; import fl.controls.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class levelproperties_163 extends MovieClip { public var defaultPuke:Slider; public var levelName:TextField; public function levelproperties_163(){ __setProp_defaultPuke_levelproperties_Layer1_0(); } function __setProp_defaultPuke_levelproperties_Layer1_0(){ try { defaultPuke["componentInspectorSetting"] = true; } catch(e:Error) { }; defaultPuke.direction = "horizontal"; defaultPuke.enabled = true; defaultPuke.liveDragging = true; defaultPuke.maximum = 100; defaultPuke.minimum = 0; defaultPuke.snapInterval = 1; defaultPuke.tickInterval = 0; defaultPuke.value = 0; defaultPuke.visible = true; try { defaultPuke["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package spewer_fla
Section 94
//MainTimeline (spewer_fla.MainTimeline) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import com.kongregate.as3.client.*; import flash.geom.*; import com.dynamicflash.util.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class MainTimeline extends MovieClip { public var spacialRecip; public var finishedVarInit; public var showBG; public var pukeForce; public var pukeTransform; public var extra; public var slurpTransform; public var waterTransform; public var checkingFluid; public var totalVomit; public var skipIntro; public var slurpVolume; public var death1; public var death3; public var death4; public var death2; public var pukeColTrans; public var oldSquish; public var P; public var partID; public var spacialSize; public var V; public var vy1p; public var c; public var e:MouseEvent; public var i:int; public var j:int; public var bytes; public var m:int; public var n; public var q:int; public var r; public var sounding; public var tilesClip; public var cy; public var jumpingSound; public var cx; public var gHeight; public var loadWidth; public var vy2p; public var s; public var k:int; public var pukeColor; public var spewerIsDead; public var myMatrix; public var l:int; public var dx:Number; public var acidLoopSound; public var stats; public var vx1p; public var dy:Number; public var cBody; public var slurpSound; public var keysDown; public var gameMode; public var vx2p; public var tooltips; public var acidTiles; public var HUD; public var go; public var API_Settings:Object; public var acidTile; public var tilesBitmap; public var sound; public var tipMode; public var musicDullSound; public var id; public var endingClip; public var ii; public var stageX; public var cPuke; public var objects; public var genericTile; public var partLen; public var stageY; public var spikes; public var edChange; public var steams; public var defaultType; public var tar2:Object; public var bgClip; public var landingSound; public var tar1:Object; public var musicStart; public var jj; public var chapterEnd; public var fgBitmap; public var splashes; public var clicking; public var map; public var menu:MovieClip; public var kk; public var genericMask; public var medal_popup:MovieClip; public var bubbles; public var defaultParticles; public var editor; public var jumpingChannel; public var tilesY; public var tilesX; public var ll; public var acidChannel; public var currentLevel; public var activeVomit; public var emptyTile; public var backgroundClip; public var gWidth; public var dist:Number; public var mm; public var loadHeight; public var cTile; public var bgBitmap; public var kongregate:KongregateAPI; public var rot; public var q2; public var pukeChannel; public var musicSound; public var ph; public var redrawSwitches; public var jumps; public var pukeVolume; public var teleBaseX; public var dx2; public var s2; public var tempBitmap; public var blankTile; public var pukeSound; public var tileDisplay; public var levelWinSound; public var stroke; public var constraints; public var acidVolume; public var waterSound; public var dy2; public var zones; public var newArrow; public var gravity; public var telePos; public var jumpSoundTimer; public var sh; public var unlockedLevel; public var acidParticle; public var sw; public var oQual; public var hitJump; public var tileTypes; public var intro:MovieClip; public var edSubMode; public var musicDullTransform; public var cookie; public var pukeAlpha; public var teleRun; public var tx; public var ty; public var sina; public var doors; public var musicDullChannel; public var resetScreen; public var particles; public var cDoor; public var playerKilled; public var musicTransform; public var rise; public var oTelePos; public var damp; public var edMode; public var switches; public var landingChannel; public var filterClip; public var particleClip; public var cHero; public var time1; public var time2; public var pauseGame; public var waterVolume; public var landingTransform; public var poofs; public var musicChannel; public var levelCompleted; public var slurpChannel; public var steps; public var acidTransform; public var teleLength; public var cTail2; public var cTail1; public var dist2; public var defaultVomit; public var fadeout:MovieClip; public var defaultLevelNames; public var particleBitmap; public var blink; public var color; public var tileX; public var tileY; public var pukeKickback; public var partSet; public var resetLevel; public var conv1; public var conv2; public var intros:MovieClip; public var cutscene; public var defaultObjects; public var acidDeathSound; public var fgFilter; public var heroSpawn; public var tar; public var click1; public var click2; public var fgClip; public var decay; public var genericDraw; public var mapBoxes; public var newgroundsAPIconnector:MovieClip; public var cosa; public var movingTiles; public var cBack; public var waterChannel; public var game; public function MainTimeline(){ addFrameScript(0, frame1, 1, frame2); } public function eFrame(_arg1:Event){ HUD.levelProps.radios.dot.x = (HUD.levelProps.radios.greenRadio.group.selection.x + (HUD.levelProps.radios.greenRadio.group.selection.width / 2)); HUD.levelProps.radios.dot.y = (HUD.levelProps.radios.greenRadio.group.selection.y + (HUD.levelProps.radios.greenRadio.group.selection.height / 2)); if (endingClip != undefined){ if (endingClip.currentFrame == endingClip.totalFrames){ removeChild(endingClip); endingClip = undefined; medal_popup.unlockMedal("Conclusion"); returnToMenu(); }; }; if ((((((editor == false)) && ((((showBG == false)) && (!((chapterEnd == true))))))) && (!((cBack == undefined))))){ game.removeChild(this[cBack]); this[cBack] = null; cBack = undefined; }; if ((((((editor == false)) && ((((showBG == true)) || ((chapterEnd == true)))))) && ((cBack == undefined)))){ this[("bg" + q)] = new backgroundAnimation(); cBack = ("bg" + q); game.addChild(this[cBack]); this[("bg" + q)].doc.gotoAndStop((1 + Math.floor((Math.random() * 4)))); game.setChildIndex(this[cBack], 0); q++; }; if (mapBoxes.length != 0){ HUD.mapScreen.levelNameDisp.text = ""; i = 0; while (i < mapBoxes.length) { tar = this[mapBoxes[i]]; if (HUD.mapScreen.y != 0){ HUD.mapScreen.removeChild(tar); this[mapBoxes[i]] = null; mapBoxes.splice(i, 1); i--; } else { if (tar.currentFrame == 2){ if (tar.anim.hitTestPoint(mouseX, mouseY)){ tar.anim.gotoAndStop(2); HUD.mapScreen.levelNameDisp.text = findLevelName(tar.index); if (clicking){ mapBoxes = new Array(); currentLevel = tar.index; j = 0; while (j < mapBoxes.length) { this[mapBoxes[j]] = undefined; j++; }; stats = undefined; if (HUD.mapScreen.statDisp != undefined){ stats = HUD.mapScreen.statDisp.htmlText; }; j = HUD.mapScreen.currentFrame; destroy(false); map = undefined; setup(); HUD.mapScreen.gotoAndStop(j); HUD.mapScreen.y = 0; HUD.mapScreen.settle = true; if (stats != undefined){ HUD.mapScreen.statDisp.htmlText = stats; stats = undefined; }; }; } else { tar.anim.gotoAndStop(1); }; }; if (tar.currentFrame == 3){ if (tar.boxLighten.hitTestPoint(mouseX, mouseY)){ tar.boxLighten.gotoAndStop(2); tar.anim.play(); HUD.mapScreen.levelNameDisp.text = findLevelName(tar.index); if (clicking){ mapBoxes = new Array(); currentLevel = tar.index; j = 0; while (j < mapBoxes.length) { this[mapBoxes[j]] = undefined; j++; }; stats = undefined; if (HUD.mapScreen.statDisp != undefined){ stats = HUD.mapScreen.statDisp.htmlText; }; j = HUD.mapScreen.currentFrame; destroy(false); map = undefined; setup(); HUD.mapScreen.gotoAndStop(j); HUD.mapScreen.y = 0; HUD.mapScreen.settle = true; if (((!((stats == undefined))) && (!((HUD.mapScreen.statDisp == undefined))))){ HUD.mapScreen.statDisp.htmlText = stats; }; break; }; } else { tar.boxLighten.gotoAndStop(1); }; }; if (mapBoxes.length > 0){ if (tar.i <= 10){ tar.visible = ((tar.i % 2) == 0); } else { tar.visible = false; }; if (tar.i > 0){ tar.i--; }; if (Math.random() < 0.002){ tar.visible = (tar.visible == false); }; }; }; i++; }; clicking = false; }; if (pauseGame == false){ jumpSoundTimer--; if (cBody != undefined){ cBody.rise = (cBody.rise + 0.5); cBody.run = (cBody.run * 0.98); cBody.rotation = (cBody.rotation + cBody.run); cBody.x = (cBody.x + cBody.run); cBody.y = (cBody.y + cBody.rise); cTail1.rise = (cTail1.rise + 0.3); cTail1.run = (cTail1.run * 0.98); cTail1.rotation = (cTail1.rotation + cTail1.run); cTail1.x = (cTail1.x + cTail1.run); cTail1.y = (cTail1.y + cTail1.rise); dx = (cBody.x - cTail1.x); dy = (cBody.y - cTail1.y); dist = (Math.sqrt(((dx * dx) + (dy * dy))) - 14); rot = Math.atan2(dy, dx); cTail1.x = (cTail1.x + (Math.cos(rot) * dist)); cTail1.y = (cTail1.y + (Math.sin(rot) * dist)); cTail1.run = (cTail1.run + ((Math.cos(rot) * dist) / 3)); cTail1.rise = (cTail1.rise + ((Math.sin(rot) * dist) / 3)); cTail2.rise = (cTail2.rise + 0.3); cTail2.run = (cTail2.run * 0.98); cTail2.rotation = (cTail2.rotation + cTail2.run); cTail2.x = (cTail2.x + cTail2.run); cTail2.y = (cTail2.y + cTail2.rise); dx = (cTail1.x - cTail2.x); dy = (cTail1.y - cTail2.y); dist = (Math.sqrt(((dx * dx) + (dy * dy))) - 6); rot = Math.atan2(dy, dx); cTail2.x = (cTail2.x + (Math.cos(rot) * dist)); cTail2.y = (cTail2.y + (Math.sin(rot) * dist)); cTail2.run = (cTail2.run + ((Math.cos(rot) * dist) / 3)); cTail2.rise = (cTail2.rise + ((Math.sin(rot) * dist) / 3)); if (cBody.y > stageY){ spewerIsDead = true; resetLevel = true; resetScreen = undefined; HUD.mapScreen.gotoAndStop(4); }; }; if (cutscene != true){ i = 0; while (i < steams.length) { tar = this[steams[i]]; if (tar.currentFrame == 20){ game.removeChild(tar); this[steams[i]] = null; steams.splice(i, 1); i--; }; i++; }; i = 0; while (i < poofs.length) { tar = this[poofs[i]]; if (tar.virgin == undefined){ tar.virgin = false; } else { if (tar.anim.currentFrame == 21){ game.removeChild(tar); this[poofs[i]] = null; poofs.splice(i, 1); i--; }; }; i++; }; if (editor == true){ if (edMode == 0){ tileDisplay.tiles.x = (tileDisplay.tiles.x + (((((-(cTile) * tileX) + tileX) + 60) - tileDisplay.tiles.x) / 3)); } else { if (edMode == 1){ tileDisplay.tiles.x = (tileDisplay.tiles.x + (-(tileDisplay.tiles.x) / 3)); } else { if (edMode == 2){ tileDisplay.tiles.x = (tileDisplay.tiles.x + ((((-(cPuke) * 30) + 60) - tileDisplay.tiles.x) / 3)); } else { if (edMode == 3){ tileDisplay.tiles.x = (tileDisplay.tiles.x + ((((-(cDoor) * tileX) + 60) - tileDisplay.tiles.x) / 3)); }; }; }; }; tileDisplay.tiles.y = (tileDisplay.tiles.y + (((edMode * 30) - tileDisplay.tiles.y) / 3)); } else { teleGoal = (teleLength * (1 - ((totalVomit - activeVomit) / 100))); if (teleGoal > teleLength){ teleGoal = teleLength; }; if (teleGoal < 0){ teleGoal = 0; }; teleRun = (teleRun + ((teleGoal - telePos) / 20)); teleRun = (teleRun * 0.8); if (teleRun > 10){ teleRun = 10; }; if (teleRun < -10){ teleRun = -10; }; telePos = (telePos + teleRun); if (Math.abs((telePos - teleGoal)) < 0.1){ telePos = teleGoal; }; if (telePos > teleLength){ telePos = teleLength; teleRun = (teleRun * -1); }; if (telePos < 0){ telePos = 0; teleRun = (teleRun * -1); }; if (telePos != oTelePos){ teleEndClip.x = (teleBaseX - telePos); i = 0; while (i < telePieces.length) { tar = this[telePieces[i]]; tar.x = (teleBaseX - telePos); if (tar.i >= telePos){ tar.x = (teleBaseX - telePos); } else { tar.x = (teleBaseX - tar.i); }; i++; }; }; oTelePos = telePos; HUD.barMask.mover.scaleX = (1 - (telePos / teleLength)); }; if (cHero != undefined){ if (cHero.doorTar != undefined){ cHero.x = (cHero.x + ((cHero.doorTar.x - cHero.x) / 6)); cHero.y = (cHero.y + ((cHero.doorTar.y - cHero.y) / 6)); cHero.scaleX = (cHero.scaleX + ((0.5 - cHero.scaleX) / 10)); cHero.scaleY = cHero.scaleX; } else { if ((((((((checkTile((cHero.x + cHero.r), (cHero.y + cHero.r)) == 1)) || ((checkTile((cHero.x - cHero.r), (cHero.y + cHero.r)) == 1)))) || ((checkTile((cHero.x + cHero.r), (cHero.y - cHero.r)) == 1)))) || ((checkTile((cHero.x - cHero.r), (cHero.y - cHero.r)) == 1)))){ cHero.x = cHero.ox; cHero.y = cHero.oy; }; i = 0; while (i < objects.length) { tar = this[objects[i]]; if (tar.t == 0){ go = false; if (tar.rotation == 0){ if ((cHero.y + cHero.r) < (tar.y - (tileY / 2))){ go = true; }; } else { if (tar.rotation == 90){ if ((cHero.x - cHero.r) > (tar.x + (tileX / 2))){ go = true; }; } else { if (tar.rotation == -180){ if ((cHero.y - cHero.r) > (tar.y + (tileY / 2))){ go = true; }; } else { if (tar.rotation == -90){ if ((cHero.x + cHero.r) < (tar.x - (tileX / 2))){ go = true; }; }; }; }; }; if (go){ go = false; dx = ((cHero.x + cHero.run) + cHero.r); dy = ((cHero.y + cHero.rise) + cHero.r); if ((((((((dx > (tar.x - (tileX / 2)))) && ((dx < (tar.x + (tileX / 2)))))) && ((dy > (tar.y - (tileY / 2)))))) && ((dy < (tar.y + (tileY / 2)))))){ go = true; }; dx = ((cHero.x + cHero.run) + cHero.r); dy = ((cHero.y + cHero.rise) - cHero.r); if ((((((((dx > (tar.x - (tileX / 2)))) && ((dx < (tar.x + (tileX / 2)))))) && ((dy > (tar.y - (tileY / 2)))))) && ((dy < (tar.y + (tileY / 2)))))){ go = true; }; dx = ((cHero.x + cHero.run) - cHero.r); dy = ((cHero.y + cHero.rise) + cHero.r); if ((((((((dx > (tar.x - (tileX / 2)))) && ((dx < (tar.x + (tileX / 2)))))) && ((dy > (tar.y - (tileY / 2)))))) && ((dy < (tar.y + (tileY / 2)))))){ go = true; }; dx = ((cHero.x + cHero.run) - cHero.r); dy = ((cHero.y + cHero.rise) - cHero.r); if ((((((((dx > (tar.x - (tileX / 2)))) && ((dx < (tar.x + (tileX / 2)))))) && ((dy > (tar.y - (tileY / 2)))))) && ((dy < (tar.y + (tileY / 2)))))){ go = true; }; if (go){ if (tar.currentFrame == 1){ if (sound){ click2.play(); }; tar.gotoAndStop(2); j = 0; while (j < switches[i].length) { tar2 = this[doors[switches[i][j]]]; if (tar2.currentFrame == 1){ tar2.play(); }; j++; }; }; }; }; }; i++; }; cHero.rMult = (cHero.rMult + ((pukeColTrans[cPuke][0] - cHero.rMult) / 6)); cHero.gMult = (cHero.gMult + ((pukeColTrans[cPuke][1] - cHero.gMult) / 6)); cHero.bMult = (cHero.bMult + ((pukeColTrans[cPuke][2] - cHero.bMult) / 6)); cHero.aMult = (cHero.aMult + ((pukeColTrans[cPuke][3] - cHero.aMult) / 6)); cHero.rOff = (cHero.rOff + ((pukeColTrans[cPuke][4] - cHero.rOff) / 6)); cHero.gOff = (cHero.gOff + ((pukeColTrans[cPuke][5] - cHero.gOff) / 6)); cHero.bOff = (cHero.bOff + ((pukeColTrans[cPuke][6] - cHero.bOff) / 6)); cHero.aOff = (cHero.aOff + ((pukeColTrans[cPuke][7] - cHero.aOff) / 6)); cHero.rGoal = Number(("0x" + pukeColTrans[cPuke][8].substr(0, 2))); cHero.gGoal = Number(("0x" + pukeColTrans[cPuke][8].substr(2, 2))); cHero.bGoal = Number(("0x" + pukeColTrans[cPuke][8].substr(4, 2))); cHero.outRed = (cHero.outRed + ((cHero.rGoal - cHero.outRed) / 6)); cHero.outGreen = (cHero.outGreen + ((cHero.gGoal - cHero.outGreen) / 6)); cHero.outBlue = (cHero.outBlue + ((cHero.bGoal - cHero.outBlue) / 6)); cHero.bodyParts.transform.colorTransform = new ColorTransform(cHero.rMult, cHero.gMult, cHero.bMult, cHero.aMult, cHero.rOff, cHero.gOff, cHero.bOff, cHero.aOff); cHero.stroke.color = (((Math.round(cHero.outRed) * 65536) + (Math.round(cHero.outGreen) * 0x0100)) + Math.round(cHero.outBlue)); cHero.filters = [cHero.stroke]; dx = (mouseX - cHero.x); dy = (mouseY - cHero.y); rot = Math.atan2(dy, dx); cHero.faceWhole.x = (cHero.faceWhole.x + (((Math.cos(rot) * 4) - cHero.faceWhole.x) / 6)); cHero.faceWhole.y = (cHero.faceWhole.y + (((Math.sin(rot) * 5) - cHero.faceWhole.y) / 6)); if ((((cHero.faceWhole.y < 3.5)) && ((cHero.faceWhole.y > -3.5)))){ if (dx > 0){ rot = (cHero.faceWhole.y * 5); } else { rot = (-(cHero.faceWhole.y) * 5); }; } else { if (dy > 0){ if (dx > 0){ rot = ((5 - cHero.faceWhole.y) * 11.665); } else { rot = (-((5 - cHero.faceWhole.y)) * 11.665); }; } else { if (dx > 0){ rot = ((-5 - cHero.faceWhole.y) * 11.665); } else { rot = (-((-5 - cHero.faceWhole.y)) * 11.665); }; }; }; cHero.faceWhole.rotation = (cHero.faceWhole.rotation + ((rot - cHero.faceWhole.rotation) / 6)); cHero.bodyParts.foot1.x = (cHero.bodyParts.foot1.x + ((cHero.bodyParts.foot1.rx - cHero.bodyParts.foot1.x) / 16)); cHero.bodyParts.foot1.y = (cHero.bodyParts.foot1.y + ((cHero.bodyParts.foot1.ry - cHero.bodyParts.foot1.y) / 16)); cHero.bodyParts.foot2.x = (cHero.bodyParts.foot2.x + ((cHero.bodyParts.foot2.rx - cHero.bodyParts.foot2.x) / 16)); cHero.bodyParts.foot2.y = (cHero.bodyParts.foot2.y + ((cHero.bodyParts.foot2.ry - cHero.bodyParts.foot2.y) / 16)); cHero.bodyParts.tail1.a = (cHero.bodyParts.tail1.a + ((Math.PI / 180) * 6)); cHero.bodyParts.tail2.a = (cHero.bodyParts.tail2.a + ((Math.PI / 180) * 6)); cHero.bodyParts.tail1.gx = (cHero.bodyParts.tail1.rx * cHero.dir); cHero.bodyParts.tail1.gy = (cHero.bodyParts.tail1.ry - ((Math.sin(cHero.bodyParts.tail1.a) + 1) * 1)); cHero.bodyParts.tail2.gx = (cHero.bodyParts.tail2.rx * cHero.dir); cHero.bodyParts.tail2.gy = (cHero.bodyParts.tail2.ry - ((Math.sin(cHero.bodyParts.tail2.a) + 1) * 2)); if (cHero.rise < 0){ cHero.bodyParts.tail1.gx = (cHero.bodyParts.tail1.gx / ((Math.abs(cHero.rise) / 2) + 1)); cHero.bodyParts.tail2.gx = (cHero.bodyParts.tail2.gx / ((Math.abs(cHero.rise) / 2) + 1)); }; cHero.bodyParts.tail1.run = (cHero.bodyParts.tail1.run + ((cHero.bodyParts.tail1.gx - cHero.bodyParts.tail1.x) / 4)); cHero.bodyParts.tail1.rise = (cHero.bodyParts.tail1.rise + ((cHero.bodyParts.tail1.gy - cHero.bodyParts.tail1.y) / 4)); cHero.bodyParts.tail2.run = (cHero.bodyParts.tail2.run + ((cHero.bodyParts.tail2.gx - cHero.bodyParts.tail2.x) / 4)); cHero.bodyParts.tail2.rise = (cHero.bodyParts.tail2.rise + ((cHero.bodyParts.tail2.gy - cHero.bodyParts.tail2.y) / 4)); cHero.bodyParts.tail1.run = (cHero.bodyParts.tail1.run - (cHero.run * 0.1)); cHero.bodyParts.tail1.rise = (cHero.bodyParts.tail1.rise - (cHero.rise * 0.25)); cHero.bodyParts.tail2.run = (cHero.bodyParts.tail2.run - (cHero.run * 0.15)); cHero.bodyParts.tail2.rise = (cHero.bodyParts.tail2.rise - (cHero.rise * 0.45)); r = 0.5; cHero.bodyParts.tail1.run = (cHero.bodyParts.tail1.run * r); cHero.bodyParts.tail1.rise = (cHero.bodyParts.tail1.rise * r); cHero.bodyParts.tail2.run = (cHero.bodyParts.tail2.run * r); cHero.bodyParts.tail2.rise = (cHero.bodyParts.tail2.rise * r); cHero.bodyParts.tail1.x = (cHero.bodyParts.tail1.x + cHero.bodyParts.tail1.run); cHero.bodyParts.tail1.y = (cHero.bodyParts.tail1.y + cHero.bodyParts.tail1.rise); cHero.bodyParts.tail2.x = (cHero.bodyParts.tail2.x + cHero.bodyParts.tail2.run); cHero.bodyParts.tail2.y = (cHero.bodyParts.tail2.y + cHero.bodyParts.tail2.rise); if (cHero.faceWhole.face.currentFrame == 1){ blink++; if ((((Math.random() < 0.02)) && ((blink > 10)))){ blink = 0; }; if (blink < 2){ cHero.faceWhole.face.eye1.gotoAndStop(2); cHero.faceWhole.face.eye2.gotoAndStop(2); } else { cHero.faceWhole.face.eye1.gotoAndStop(1); cHero.faceWhole.face.eye2.gotoAndStop(1); }; }; cHero.rise = (cHero.rise + (0.3 / ((cHero.partHits / 6) + 1))); cHero.run = (cHero.run * 0.8); cHero.rise = (cHero.rise / ((cHero.partHits / 40) + 1)); cHero.run = (cHero.run / ((cHero.partHits / 40) + 1)); if (cHero.standing == true){ cHero.run = (cHero.run * 0.8); }; if (cHero.partStanding == true){ cHero.standing = true; } else { cHero.standing = false; }; cHero.partStanding = false; if (cHero.run > 0){ if ((((checkTile(((cHero.x + (cHero.r * cHero.thin)) + cHero.run), (cHero.y - cHero.r)) == 1)) || ((checkTile(((cHero.x + (cHero.r * cHero.thin)) + cHero.run), (cHero.y + cHero.r)) == 1)))){ if (((cHero.x + cHero.run) + (cHero.r * cHero.thin)) < sw){ if ((((map[Math.floor(((cHero.y + cHero.r) / tileY))][Math.floor((((cHero.x + (cHero.r * cHero.thin)) + cHero.run) / tileX))] == spikes4)) || ((map[Math.floor(((cHero.y - cHero.r) / tileY))][Math.floor((((cHero.x + (cHero.r * cHero.thin)) + cHero.run) / tileX))] == spikes4)))){ playerKilled = true; if (sound){ sawDeathSound.play(); }; }; }; if (cHero.run > 2){ squishSound((cHero.run / 10)); }; cHero.run = (cHero.run * -0.3); }; } else { if ((((checkTile(((cHero.x - (cHero.r * cHero.thin)) + cHero.run), (cHero.y - cHero.r)) == 1)) || ((checkTile(((cHero.x - (cHero.r * cHero.thin)) + cHero.run), (cHero.y + cHero.r)) == 1)))){ if (((cHero.x + cHero.run) - (cHero.r * cHero.thin)) >= 0){ if ((((map[Math.floor(((cHero.y + cHero.r) / tileY))][Math.floor((((cHero.x - (cHero.r * cHero.thin)) + cHero.run) / tileX))] == spikes2)) || ((map[Math.floor(((cHero.y - cHero.r) / tileY))][Math.floor((((cHero.x - (cHero.r * cHero.thin)) + cHero.run) / tileX))] == spikes2)))){ playerKilled = true; if (sound){ sawDeathSound.play(); }; }; }; if (cHero.run < -2){ squishSound((-(cHero.run) / 10)); }; cHero.run = (cHero.run * -0.3); }; }; cHero.x = (cHero.x + cHero.run); if (cHero.rise > 0){ if ((((checkTile((cHero.x + ((cHero.r * cHero.thin) * 0.95)), ((cHero.y + cHero.r) + cHero.rise)) == 1)) || ((checkTile((cHero.x - ((cHero.r * cHero.thin) * 0.95)), ((cHero.y + cHero.r) + cHero.rise)) == 1)))){ if (cHero.rise > 2){ if (cHero.rise > 10){ cHero.bodyParts.body.gotoAndPlay(2); } else { cHero.bodyParts.body.gotoAndPlay((6 - Math.round((((cHero.rise - 2) * 4) / 8)))); }; }; if (((cHero.y + cHero.rise) + cHero.r) < sh){ if ((((map[Math.floor((((cHero.y + cHero.r) + cHero.rise) / tileY))][Math.floor(((cHero.x + (cHero.r * cHero.thin)) / tileX))] == conv1)) || ((map[Math.floor((((cHero.y + cHero.r) + cHero.rise) / tileY))][Math.floor(((cHero.x - (cHero.r * cHero.thin)) / tileX))] == conv1)))){ cHero.run = (cHero.run + 0.4); }; if ((((map[Math.floor((((cHero.y + cHero.r) + cHero.rise) / tileY))][Math.floor(((cHero.x + (cHero.r * cHero.thin)) / tileX))] == conv2)) || ((map[Math.floor((((cHero.y + cHero.r) + cHero.rise) / tileY))][Math.floor(((cHero.x - (cHero.r * cHero.thin)) / tileX))] == conv2)))){ cHero.run = (cHero.run - 0.4); }; if ((((map[Math.floor((((cHero.y + cHero.r) + cHero.rise) / tileY))][Math.floor(((cHero.x + (cHero.r * cHero.thin)) / tileX))] == spikes1)) || ((map[Math.floor((((cHero.y + cHero.r) + cHero.rise) / tileY))][Math.floor(((cHero.x - (cHero.r * cHero.thin)) / tileX))] == spikes1)))){ playerKilled = true; if (sound){ sawDeathSound.play(); }; }; }; if (cHero.rise > 1){ squishSound((cHero.rise / 10)); }; cHero.rise = (cHero.rise * -0.3); if (Math.abs(cHero.rise) < 0.5){ cHero.rise = 0; }; cHero.standing = true; } else { cHero.y = (cHero.y + cHero.rise); }; } else { if ((((checkTile((cHero.x + ((cHero.r * cHero.thin) * 0.95)), ((cHero.y - cHero.r) + cHero.rise)) == 1)) || ((checkTile((cHero.x - ((cHero.r * cHero.thin) * 0.95)), ((cHero.y - cHero.r) + cHero.rise)) == 1)))){ if (((cHero.y + cHero.rise) - cHero.r) >= 0){ if ((((map[Math.floor((((cHero.y - cHero.r) + cHero.rise) / tileY))][Math.floor(((cHero.x + (cHero.r * cHero.thin)) / tileX))] == spikes3)) || ((map[Math.floor((((cHero.y - cHero.r) + cHero.rise) / tileY))][Math.floor(((cHero.x - (cHero.r * cHero.thin)) / tileX))] == spikes3)))){ playerKilled = true; if (sound){ sawDeathSound.play(); }; }; }; if (cHero.rise < -1){ squishSound((-(cHero.rise) / 10)); }; cHero.rise = (cHero.rise * -0.3); } else { cHero.y = (cHero.y + cHero.rise); }; }; if ((cHero.y + cHero.r) > sh){ cHero.y = (sh - cHero.r); cHero.rise = (cHero.rise * -0.3); cHero.standing = true; }; if ((cHero.y - cHero.r) < 0){ cHero.y = cHero.r; cHero.rise = (cHero.rise * -0.3); }; if ((cHero.x - cHero.r) < 0){ cHero.x = cHero.r; cHero.run = (cHero.run * -0.3); }; if ((cHero.x + cHero.r) > sw){ cHero.x = (sw - cHero.r); cHero.run = (cHero.run * -0.3); }; cHero.ox = cHero.x; cHero.oy = cHero.y; if (isDown(65)){ cHero.run = (cHero.run - 1); cHero.dir = -1; if (cHero.standing == true){ cHero.rise = -1.5; steps++; if (cHero.cFoot == 1){ cHero.cFoot = 2; cHero.bodyParts.foot1.y = (cHero.bodyParts.foot1.ry + 2); cHero.bodyParts.foot1.x = (cHero.bodyParts.foot1.rx + 2); } else { cHero.cFoot = 1; cHero.bodyParts.foot2.y = (cHero.bodyParts.foot2.ry + 2); cHero.bodyParts.foot2.x = (cHero.bodyParts.foot2.rx + 2); }; }; }; if (isDown(68)){ cHero.run = (cHero.run + 1); cHero.dir = 1; if (cHero.standing == true){ cHero.rise = -1.5; steps++; if (cHero.cFoot == 1){ cHero.cFoot = 2; cHero.bodyParts.foot1.y = (cHero.bodyParts.foot1.ry + 2); cHero.bodyParts.foot1.x = (cHero.bodyParts.foot1.rx - 2); } else { cHero.cFoot = 1; cHero.bodyParts.foot2.y = (cHero.bodyParts.foot2.ry + 2); cHero.bodyParts.foot2.x = (cHero.bodyParts.foot2.rx - 2); }; }; }; if (((isDown(87)) && ((hitJump == false)))){ if ((((((checkTile((cHero.x + ((cHero.r * cHero.thin) * 0.95)), ((cHero.y + cHero.r) + 5)) == 1)) || ((checkTile((cHero.x - ((cHero.r * cHero.thin) * 0.95)), ((cHero.y + cHero.r) + 5)) == 1)))) || ((cHero.standing == true)))){ if (((cHero.y + cHero.r) + 5) < sh){ if ((((map[Math.floor((((cHero.y + cHero.r) + 5) / tileY))][Math.floor(((cHero.x + (cHero.r * cHero.thin)) / tileX))] == spikes1)) || ((map[Math.floor((((cHero.y + cHero.r) + 5) / tileY))][Math.floor(((cHero.x - (cHero.r * cHero.thin)) / tileX))] == spikes1)))){ if (cHero.rise >= 0){ playerKilled = true; if (sound){ sawDeathSound.play(); }; }; }; }; cHero.rise = -6.7; jumps++; cHero.y = (cHero.y - 3); if (cHero.partHits <= 2){ jumpSound(); cHero.jumpFaceCount = 0; }; squishSound(0.5); cHero.jumpCount = 0; } else { cHero.jumpCount = 7; }; if (cHero.partHits > 2){ cHero.rise = (cHero.rise - 0.8); }; }; if (isDown(87) == false){ hitJump = false; }; if (isDown(83)){ if (cHero.partHits > 2){ cHero.rise = (cHero.rise + 0.3); }; }; cHero.jumpCount--; if ((((cHero.jumpCount >= 0)) && ((cHero.standing == true)))){ cHero.rise = -6.7; jumps++; cHero.bodyParts.foot1.y = (cHero.bodyParts.foot1.ry + 2); cHero.bodyParts.foot1.x = cHero.bodyParts.foot1.rx; cHero.bodyParts.foot2.y = (cHero.bodyParts.foot2.ry + 2); cHero.bodyParts.foot2.x = cHero.bodyParts.foot2.rx; }; if (((((clicking) && ((((mouseY <= sh)) || ((editor == false)))))) && ((activeVomit < totalVomit)))){ if (cHero.partHits > 2){ if (Math.random() < 0.2){ makeBubble((cHero.x + cHero.faceWhole.x), ((cHero.y + cHero.faceWhole.y) + 2)); }; }; tar = makeParticle((cHero.x + cHero.faceWhole.x), ((cHero.y + cHero.faceWhole.y) + 2), cPuke, 0); dx = (mouseX - cHero.x); dy = (mouseY - cHero.y); rot = (Math.atan2(dy, dx) + ((((Math.random() - 0.5) * Math.PI) / 180) * 10)); tar.run = (Math.cos(rot) * pukeForce[cPuke]); tar.rise = (Math.sin(rot) * pukeForce[cPuke]); cHero.run = (cHero.run - ((Math.cos(rot) * pukeKickback[cPuke]) * 0.3)); cHero.rise = (cHero.rise - ((Math.sin(rot) * pukeKickback[cPuke]) * 0.15)); pukeVolume = 1; if (cHero.faceWhole.face.currentFrame != 2){ cHero.faceWhole.face.gotoAndStop(2); }; } else { if (isDown(32)){ if (cHero.faceWhole.face.currentFrame != 3){ cHero.faceWhole.face.gotoAndStop(3); }; } else { if (cHero.partHits > 2){ if (Math.random() < 0.05){ makeBubble((cHero.x + cHero.faceWhole.x), ((cHero.y + cHero.faceWhole.y) + 2)); }; if (cHero.faceWhole.face.currentFrame != 4){ cHero.faceWhole.face.gotoAndStop(4); }; } else { if (cHero.jumpFaceCount < 3){ cHero.faceWhole.face.gotoAndStop(2); } else { if (cHero.faceWhole.face.currentFrame != 1){ cHero.faceWhole.face.gotoAndStop(1); }; }; }; }; }; if ((((cHero.partHits > 2)) && (sound))){ waterVolume = ((Math.sqrt(((cHero.run * cHero.run) + (cHero.rise * cHero.rise))) / 14) + 0.1); } else { waterVolume = 0; }; cHero.partHits = 0; if (cHero.faceWhole.currentFrame != (cPuke + 1)){ cHero.faceWhole.gotoAndStop((cPuke + 1)); }; i = 0; while (i < doors.length) { if (doors[i].substr(0, 4) == "goal"){ tar = this[doors[i]]; dx = (tar.x - cHero.x); dy = (tar.y - cHero.y); if ((((((dx * dx) + (dy * dy)) < (20 * 20))) && ((tar.currentFrame == tar.totalFrames)))){ if (levelCompleted != true){ levelCompleted = true; if (((!((gameMode == "story"))) || (!((currentLevel == 54))))){ cHero.doorTar = tar; if (sound){ levelWinSound.play(); }; }; if (gameMode == "story"){ if (currentLevel == 10){ medal_popup.unlockMedal("Burp"); }; if (currentLevel == 21){ medal_popup.unlockMedal("Airhead"); }; if (currentLevel == 32){ medal_popup.unlockMedal("Rocket Sauce"); }; if (currentLevel == 43){ medal_popup.unlockMedal("Gishy"); }; if (currentLevel == 62){ medal_popup.unlockMedal("Perfectionist"); }; if (currentLevel != 54){ HUD.mapScreen.gotoAndStop(1); randomStats = ["Stats Created", "Mental Breakdowns", "Your B.A.C.", "Interns Fired", "Points Deducted", "Planets Aligned", "Viruses Detected", "Failure Rating", "Estimated I.Q.", "Laws Broken", "Instructions Ignored", "Spelling Errors", "Ideas Plagiarized", "Diseases Collected"]; HUD.mapScreen.statDisp.htmlText = (((((((((("<font size=\"+2\"><u>Level Complete</u></font><br><br>Saved Puke:<br><font color=\"#AA0000\">" + (totalVomit - activeVomit)) + "</font><br>Jumps:<br><font color=\"#AA0000\">") + jumps) + "</font><br>Steps Taken:<br><font color=\"#AA0000\">") + steps) + "</font><br>") + randomStats[Math.floor((Math.random() * randomStats.length))]) + ":<br><font color=\"#AA0000\">") + Math.round((Math.random() * 30))) + "</font>"); if (currentLevel == unlockedLevel){ unlockedLevel++; kongregate.stats.submit("Level", unlockedLevel); cookie.data.unlockedLevel = unlockedLevel; cookie.flush(); }; } else { if (currentLevel == unlockedLevel){ unlockedLevel++; kongregate.stats.submit("Level", unlockedLevel); cookie.data.unlockedLevel = unlockedLevel; cookie.flush(); }; endingClip = new ending(); endingClip.x = 300; endingClip.y = 225; addChild(endingClip); }; } else { medal_popup.unlockMedal("Architect"); }; }; }; }; i++; }; cHero.jumpFaceCount++; }; }; if (editor){ if (((isDown(81)) && ((HUD.levelProps.visible == false)))){ tx = Math.floor((mouseX / tileX)); ty = Math.floor((mouseY / tileY)); if ((((((((tx >= 0)) && ((tx < map[0].length)))) && ((ty >= 0)))) && ((ty < map.length)))){ cTile = map[ty][tx]; }; }; if (edMode == 3){ if (((((isDown(32)) && ((edSubMode == 0)))) && ((HUD.levelProps.visible == false)))){ redrawSwitches = false; i = 0; while (i < objects.length) { tar = this[objects[i]]; tx = Math.floor((tar.x / tileX)); ty = Math.floor((tar.y / tileY)); dx = Math.floor((mouseX / tileX)); dy = Math.floor((mouseY / tileY)); if ((((dx == tx)) && ((dy == ty)))){ HUD.editorOutput.text = ""; if ((((((tar.t == 1)) || ((tar.t == 2)))) || ((tar.t == 4)))){ map[ty][tx] = blankTile; drawMap((tx - 1), (ty - 1), 3, 3); c = Number.POSITIVE_INFINITY; j = 0; while (j < doors.length) { if (doors[j] == objects[i]){ c = j; doors.splice(j, 1); break; }; j++; }; j = 0; while (j < switches.length) { k = 0; while (k < switches[j].length) { if (switches[j][k] > c){ var _local2 = switches[j]; var _local3 = k; var _local4 = (_local2[_local3] - 1); _local2[_local3] = _local4; } else { if (switches[j][k] == c){ switches[j].splice(k, 1); k--; }; }; k++; }; j++; }; }; switches.splice(i, 1); objects.splice(i, 1); game.removeChild(tar); redrawSwitches = true; }; i++; }; if (redrawSwitches){ i = 0; while (i < switches.length) { tar = this[objects[i]]; if ((((tar.t == 0)) || ((tar.t == 5)))){ tar.drawing2.graphics.clear(); game.setChildIndex(tar, (game.numChildren - 1)); tar.drawing2.graphics.lineStyle(2, 0xFFFF00); j = 0; while (j < switches[i].length) { tar2 = this[doors[switches[i][j]]]; tx = Math.floor((tar2.x / tileX)); ty = Math.floor((tar2.y / tileY)); tar.drawing2.graphics.moveTo(0, 0); tar.drawing2.graphics.lineTo((((tx * tileX) - tar.x) + (tileX / 2)), (((ty * tileY) - tar.y) + (tileY / 2))); j++; }; }; i++; }; }; }; if (edSubMode == 1){ dx = (tar.x - mouseX); dy = (tar.y - mouseY); tar.rotation = ((Math.round((((Math.atan2(dy, dx) * 180) / Math.PI) / 90)) * 90) - 90); tar.drawing.rotation = ((-(Math.round((((Math.atan2(dy, dx) * 180) / Math.PI) / 90))) * 90) - 90); tar.drawing.graphics.clear(); tar.drawing.graphics.lineStyle(1, 0xFFFFFF); tar.drawing.graphics.lineTo(dx, dy); if (clicking){ HUD.editorOutput.text = ""; edSubMode = 0; clicking = false; tar.removeChild(tar.drawing); tar.drawing2 = new MovieClip(); tar.addChild(tar.drawing2); objects.push(("switch" + q)); switches.push([]); q++; }; } else { if (edSubMode == 2){ dx = (tar.x - mouseX); dy = (tar.y - mouseY); tar.drawing.graphics.clear(); tar.drawing.graphics.lineStyle(2, 0xFFFF00); tar.drawing.graphics.lineTo(-(dx), -(dy)); tx = Math.floor((mouseX / tileX)); ty = Math.floor((mouseY / tileY)); c = 0; k = -1; i = 0; while (i < objects.length) { tar2 = this[objects[i]]; if ((((((tar2.t == 1)) || ((tar2.t == 2)))) || ((tar2.t == 4)))){ dx = Math.floor((tar2.x / tileX)); dy = Math.floor((tar2.y / tileY)); if ((((tx == dx)) && ((ty == dy)))){ tar2.alpha = 1; k = c; } else { tar2.alpha = 0.5; c++; }; }; i++; }; if (clicking){ clicking = false; edSubMode = 0; if (k != -1){ HUD.editorOutput.text = ""; tx = Math.floor((mouseX / tileX)); ty = Math.floor((mouseY / tileY)); tar.drawing.graphics.clear(); tar.drawing2.rotation = -(tar.rotation); tar.drawing2.graphics.lineStyle(2, 0xFFFF00); tar.drawing2.graphics.moveTo(0, 0); tar.drawing2.graphics.lineTo((((tx * tileX) - tar.x) + (tileX / 2)), (((ty * tileY) - tar.y) + (tileY / 2))); switches[j].push(k); }; i = 0; while (i < objects.length) { tar2 = this[objects[i]]; if ((((((tar2.t == 1)) || ((tar2.t == 2)))) || ((tar2.t == 4)))){ tar2.alpha = 1; }; i++; }; tar.removeChild(tar.drawing); }; }; }; }; if (((clicking) || ((((((edMode == 0)) && (isDown(32)))) && ((HUD.levelProps.visible == false)))))){ go = true; tx = Math.floor((mouseX / tileX)); ty = Math.floor((mouseY / tileY)); i = 0; while (i < objects.length) { tar = this[objects[i]]; if ((((tar.x == ((tx * tileX) + (tileX / 2)))) && ((tar.y == ((ty * tileY) + (tileY / 2)))))){ go = false; }; i++; }; if (go){ if (edMode == 3){ if (edSubMode == 0){ if ((((cDoor == 0)) || ((cDoor == 1)))){ clicking = false; tx = Math.floor((mouseX / tileX)); ty = Math.floor((mouseY / tileY)); if ((((((((tx >= 0)) && ((tx < map[0].length)))) && ((ty >= 0)))) && ((ty < map.length)))){ if (((((!((heroSpawn.x == ((tx * tileX) + (tileX / 2))))) || (!((heroSpawn.y == ((ty * tileY) + (tileY / 2))))))) || ((tileTypes[cTile] == 0)))){ edSubMode = 1; if (cDoor == 0){ tar = (this[("switch" + q)] = new doorSwitch()); tar.t = 0; } else { tar = (this[("switch" + q)] = new pukeButton()); tar.t = 5; }; tar.x = ((tx * tileX) + (tileX / 2)); tar.y = ((ty * tileY) + (tileY / 2)); tar.stop(); game.addChild(tar); tar.drawing = new MovieClip(); tar.addChild(tar.drawing); map[ty][tx] = 1; drawMap((tx - 1), (ty - 1), 3, 3); }; }; } else { if (cDoor == 2){ clicking = false; tx = Math.floor((mouseX / tileX)); ty = Math.floor((mouseY / tileY)); if ((((((((tx >= 0)) && ((tx < map[0].length)))) && ((ty >= 0)))) && ((ty < map.length)))){ if (((((!((heroSpawn.x == ((tx * tileX) + (tileX / 2))))) || (!((heroSpawn.y == ((ty * tileY) + (tileY / 2))))))) || ((tileTypes[cTile] == 0)))){ HUD.editorOutput.text = ""; tar = (this[("door" + q)] = new door()); tar.x = ((tx * tileX) + (tileX / 2)); tar.y = ((ty * tileY) + (tileY / 2)); tar.t = 1; tar.stop(); game.addChild(tar); map[ty][tx] = 0; drawMap((tx - 1), (ty - 1), 3, 3); objects.push(("door" + q)); doors.push(("door" + q)); switches.push([]); q++; }; }; } else { if (cDoor == 4){ clicking = false; tx = Math.floor((mouseX / tileX)); ty = Math.floor((mouseY / tileY)); if ((((((((tx >= 0)) && ((tx < map[0].length)))) && ((ty >= 0)))) && ((ty < map.length)))){ if (((((!((heroSpawn.x == ((tx * tileX) + (tileX / 2))))) || (!((heroSpawn.y == ((ty * tileY) + (tileY / 2))))))) || ((tileTypes[cTile] == 0)))){ HUD.editorOutput.text = ""; tar = (this[("goal" + q)] = new goalDoor()); tar.x = ((tx * tileX) + (tileX / 2)); tar.y = ((ty * tileY) + (tileY / 2)); tar.t = 2; tar.stop(); game.addChild(tar); map[ty][tx] = 0; drawMap((tx - 1), (ty - 1), 3, 3); objects.push(("goal" + q)); doors.push(("goal" + q)); switches.push([]); q++; }; }; } else { if (cDoor == 5){ clicking = false; tx = Math.floor((mouseX / tileX)); ty = Math.floor((mouseY / tileY)); if ((((((((tx >= 0)) && ((tx < map[0].length)))) && ((ty >= 0)))) && ((ty < map.length)))){ if (((((!((heroSpawn.x == ((tx * tileX) + (tileX / 2))))) || (!((heroSpawn.y == ((ty * tileY) + (tileY / 2))))))) || ((tileTypes[cTile] == 0)))){ HUD.editorOutput.text = ""; tar = (this[("gate" + q)] = new gate()); tar.x = ((tx * tileX) + (tileX / 2)); tar.y = ((ty * tileY) + (tileY / 2)); tar.t = 4; tar.stop(); game.addChild(tar); map[ty][tx] = 0; drawMap((tx - 1), (ty - 1), 3, 3); objects.push(("gate" + q)); doors.push(("gate" + q)); switches.push([]); q++; }; }; }; }; }; }; }; } else { if (edMode == 2){ tx = Math.floor((mouseX / tileX)); ty = Math.floor((mouseY / tileY)); if ((((((((tx >= 0)) && ((tx < map[0].length)))) && ((ty >= 0)))) && ((ty < map.length)))){ if ((((tileTypes[map[ty][tx]] == 0)) && ((activeVomit < 100)))){ if (cPuke > 4){ clicking = false; }; HUD.editorOutput.text = ""; makeParticle(mouseX, mouseY, cPuke, 0); updateParticles(0); }; }; } else { if (edMode == 1){ tx = Math.floor((mouseX / tileX)); ty = Math.floor((mouseY / tileY)); if ((((((((tx >= 0)) && ((tx < map[0].length)))) && ((ty >= 0)))) && ((ty < map.length)))){ if (tileTypes[map[ty][tx]] == 0){ HUD.editorOutput.text = ""; heroSpawn.x = ((tx * tileX) + (tileX / 2)); heroSpawn.y = ((ty * tileY) + (tileY / 2)); }; }; } else { if (edMode == 0){ tx = Math.floor((mouseX / tileX)); ty = Math.floor((mouseY / tileY)); if ((((((((tx >= 0)) && ((tx < map[0].length)))) && ((ty >= 0)))) && ((ty < map.length)))){ if (((((!((heroSpawn.x == ((tx * tileX) + (tileX / 2))))) || (!((heroSpawn.y == ((ty * tileY) + (tileY / 2))))))) || ((tileTypes[cTile] == 0)))){ HUD.editorOutput.text = ""; if (clicking){ map[ty][tx] = cTile; } else { map[ty][tx] = emptyTile; }; drawMap((tx - 1), (ty - 1), 3, 3); }; }; }; }; }; }; } else { if ((((edMode == 3)) && ((edSubMode == 0)))){ if (cDoor == 3){ clicking = false; tx = Math.floor((mouseX / tileX)); ty = Math.floor((mouseY / tileY)); if ((((((((tx >= 0)) && ((tx < map[0].length)))) && ((ty >= 0)))) && ((ty < map.length)))){ i = 0; while (i < objects.length) { tar = this[objects[i]]; if ((((tar.t == 0)) || ((tar.t == 5)))){ dx = Math.floor((tar.x / tileX)); dy = Math.floor((tar.y / tileY)); if ((((dx == tx)) && ((dy == ty)))){ j = i; edSubMode = 2; clicking = false; tar.drawing = new MovieClip(); tar.drawing.rotation = -(tar.rotation); tar.addChild(tar.drawing); game.setChildIndex(tar, (game.numChildren - 1)); break; }; }; i++; }; }; }; }; }; }; }; if ((((editor == false)) || (((isDown(16)) && ((HUD.levelProps.visible == false)))))){ if (cHero != undefined){ slurpTransform = slurpChannel.soundTransform; slurpTransform.volume = (slurpTransform.volume + ((slurpVolume - slurpTransform.volume) / 3)); slurpChannel.soundTransform = slurpTransform; slurpVolume = 0; waterTransform = waterChannel.soundTransform; waterTransform.volume = (waterTransform.volume + ((waterVolume - waterTransform.volume) / 3)); waterChannel.soundTransform = waterTransform; if (sound == false){ pukeVolume = 0; }; pukeTransform = pukeChannel.soundTransform; pukeTransform.volume = (pukeTransform.volume + ((pukeVolume - pukeTransform.volume) / 3)); pukeChannel.soundTransform = pukeTransform; pukeVolume = 0; }; updateParticles(1); acidTransform = acidChannel.soundTransform; acidTransform.volume = (acidTransform.volume + ((acidVolume - acidTransform.volume) / 6)); acidChannel.soundTransform = acidTransform; acidVolume = 0; } else { updateParticles(0); }; updateBubbles(); if (playerKilled){ kill(); }; if ((((editor == false)) && (!((cBack == undefined))))){ if (((!((this[cBack].doc.mainAnim == undefined))) && (!((this[cBack].doc.mainAnim.anim == undefined))))){ this[cBack].doc.mainAnim.anim.play(); }; }; }; } else { if (cutscene == false){ if ((((editor == false)) && (!((cBack == undefined))))){ if (this[cBack].doc != undefined){ if (this[cBack].doc.mainAnim != undefined){ if (this[cBack].doc.mainAnim.anim != undefined){ this[cBack].doc.mainAnim.anim.stop(); }; }; }; }; slurpTransform = slurpChannel.soundTransform; slurpTransform.volume = 0; slurpChannel.soundTransform = slurpTransform; waterTransform = waterChannel.soundTransform; waterTransform.volume = 0; waterChannel.soundTransform = waterTransform; }; }; if (cutscene == false){ if (sound == false){ slurpTransform = slurpChannel.soundTransform; slurpTransform.volume = 0; slurpChannel.soundTransform = slurpTransform; waterTransform = waterChannel.soundTransform; waterTransform.volume = 0; waterChannel.soundTransform = waterTransform; }; if (((isDown(82)) && ((HUD.mapScreen.settle == false)))){ resetLevel = true; resetScreen = undefined; HUD.mapScreen.gotoAndStop(4); }; if (((((((((((((resetLevel) || (levelCompleted))) || (spewerIsDead))) || (pauseGame))) && ((HUD.mapScreen.settle == false)))) && ((editor == false)))) && ((endingClip == undefined)))){ if (HUD.mapScreen.gy != 0){ HUD.mapScreen.gy = 0; if (sound){ monitor.play(); }; }; } else { HUD.mapScreen.gy = -420; }; HUD.mapScreen.rise = (HUD.mapScreen.rise + ((HUD.mapScreen.gy - HUD.mapScreen.y) / 40)); HUD.mapScreen.rise = (HUD.mapScreen.rise * 0.85); HUD.mapScreen.y = (HUD.mapScreen.y + HUD.mapScreen.rise); if (HUD.mapScreen.currentFrame == 3){ HUD.mapScreen.returnToGame.visible = true; HUD.mapScreen.restartLevel.visible = true; HUD.mapScreen.exitToTitle.visible = true; HUD.mapScreen.options.visible = true; } else { HUD.mapScreen.returnToGame.visible = false; HUD.mapScreen.restartLevel.visible = false; HUD.mapScreen.exitToTitle.visible = false; HUD.mapScreen.options.visible = false; }; if (HUD.mapScreen.y > 0){ HUD.mapScreen.y = 0; HUD.mapScreen.rise = (HUD.mapScreen.rise * -0.5); if (Math.abs(HUD.mapScreen.rise) < 0.5){ HUD.mapScreen.rise = 0; if (((((levelCompleted) || (pauseGame))) && ((resetLevel == false)))){ pauseGame = true; if (gameMode == "story"){ drawMapScreen(); } else { if (levelCompleted){ destroy(editor); setup(); HUD.mapScreen.y = 0; HUD.mapScreen.settle = true; }; }; } else { resetScreen = HUD.mapScreen.variants.currentFrame; destroy(editor); setup(); HUD.mapScreen.gotoAndStop(4); HUD.mapScreen.y = 0; HUD.mapScreen.settle = true; }; }; }; if (HUD.mapScreen.y < -420){ HUD.mapScreen.y = -420; HUD.mapScreen.rise = 0; HUD.mapScreen.gotoAndStop(1); HUD.mapScreen.settle = false; }; }; } public function drawMapScreen(){ var _local1:* = 70; var _local2:* = 100; var _local3:* = 300; var _local4:* = 280; var _local5:* = _local1; var _local6:* = _local2; var _local7:* = 1; if (unlockedLevel <= 54){ drawLevels = 55; } else { drawLevels = 63; }; i = 0; while (i < drawLevels) { tar = (this[("mapBox" + q)] = new mapBox()); if (unlockedLevel > i){ tar.gotoAndStop(2); } else { if (unlockedLevel < i){ tar.gotoAndStop(1); } else { tar.gotoAndStop(3); }; }; tar.x = _local5; tar.y = _local6; if (i > 54){ _local6 = (_local6 + ((_local4 / 7) * _local7)); } else { _local6 = (_local6 + ((_local4 / 10) * _local7)); }; if ((((_local6 > (_local2 + _local4))) || ((_local6 < (_local2 - 1))))){ _local7 = -(_local7); _local6 = (_local6 + ((_local4 / 10) * _local7)); if (drawLevels == 55){ _local5 = (_local5 + (_local3 / 4)); } else { _local5 = (_local5 + (_local3 / 5)); }; }; if (((i + 1) % 11) == 0){ tar.scaleX = (tar.scaleY = 0.7); }; if (((!((i == 54))) && (!((i == 62))))){ tar.graphics.lineStyle(2, 0x959595); tar.graphics.lineTo(((_local5 - tar.x) / tar.scaleX), ((_local6 - tar.y) / tar.scaleY)); }; HUD.mapScreen.addChild(tar); tar.i = (i + 10); tar.index = i; tar.visible = false; mapBoxes.push(("mapBox" + q)); q++; i++; }; } public function makeBubble(_arg1, _arg2){ tar = (this[("bubble" + q)] = new bubble()); tar.x = _arg1; tar.y = _arg2; tar.rise = (tar.run = 0); game.addChild(tar); bubbles.push(("bubble" + q)); q++; } public function hitEdit(_arg1:MouseEvent){ gameMode = "editor"; if (menu.loadBox.text == "if you have a level code that you want to play, paste it here and press the map editor button."){ levelString = "eNoz1DEkEhqZkoNGdY7qHFidREFrawMgNDQw1TE2N7W2tgYAVBmWew=="; } else { levelString = menu.loadBox.text; levelString = levelString.split(" "); levelString = levelString.join(""); levelString = levelString.split("\n"); levelString = levelString.join(""); levelString = levelString.split("\r"); levelString = levelString.join(""); }; trace(levelString); menu.playButton.removeEventListener(MouseEvent.CLICK, hitPlay); menu.editButton.removeEventListener(MouseEvent.CLICK, hitPlay); menu.newgrounds.removeEventListener(MouseEvent.CLICK, gotoNG); stage.removeEventListener(Event.ENTER_FRAME, eFrame1); menu.titleScreen.eliSite.removeEventListener(MouseEvent.CLICK, goto2D); menu.titleScreen.edSite.removeEventListener(MouseEvent.CLICK, gotoEd); menu.eraseShit.removeEventListener(MouseEvent.CLICK, hitErase); menu.eraseBox.doneButton.removeEventListener(MouseEvent.CLICK, hitErase); menu.downloadButton.removeEventListener(MouseEvent.CLICK, hitDownload); menu.removeChild(menu.playButton); menu.removeChild(menu.editButton); menu.removeChild(menu.scanLines); graphics.clear(); editor = true; intro.stop(); if (musicChannel != undefined){ musicChannel.stop(); musicSound = (musicChannel = (musicTransform = null)); }; gotoAndStop(2); } public function testTheLevel(_arg1:MouseEvent){ HUD.testLevel.removeEventListener(MouseEvent.CLICK, testTheLevel); HUD.propsButton.removeEventListener(MouseEvent.CLICK, toggleProps); levelName = HUD.levelProps.levelName.text; defaultVomit = Number(HUD.levelProps.defaultPuke.value); defaultType = Number(HUD.levelProps.radios.greenRadio.group.selectedData); editor = false; cx = heroSpawn.x; cy = heroSpawn.y; defaultParticles = new Array(); i = 0; while (i < particles.length) { tar = this[particles[i]]; defaultParticles.push([tar.x, tar.y, tar.t, tar.surrounds]); i++; }; defaultObjects = new Array(); i = 0; while (i < objects.length) { tar = this[objects[i]]; if ((((tar.t == 0)) || ((tar.t == 5)))){ defaultObjects.push([tar.x, tar.y, tar.t, (tar.rotation / 90)]); } else { defaultObjects.push([tar.x, tar.y, tar.t]); }; i++; }; destroy(1); setup(); } public function updateBubbles(){ i = 0; while (i < bubbles.length) { tar = this[bubbles[i]]; tar.rise = (tar.rise + (((Math.random() - 0.5) * 1) - 0.5)); tar.run = (tar.run + ((Math.random() - 0.5) * 1)); tar.run = (tar.run * 0.7); tar.rise = (tar.rise * 0.7); tar.x = (tar.x + tar.run); tar.y = (tar.y + tar.rise); if (particleBitmap.getPixel32(tar.x, tar.y) == 0){ game.removeChild(tar); this[bubbles[i]] = null; bubbles[i] = bubbles[(bubbles.length - 1)]; bubbles.splice((bubbles.length - 1), 1); i--; }; i++; }; } function frame1(){ if (finishedVarInit == undefined){ finishedVarInit = true; unlockedLevel = 0; showBG = true; sound = true; stage.quality = StageQuality.MEDIUM; cookie = SharedObject.getLocal("SpewerSaveData"); if (cookie.data.bg == undefined){ cookie.data.bg = showBG; cookie.data.unlockedLevel = unlockedLevel; cookie.data.qual = stage.quality; cookie.data.sound = sound; cookie.flush(); } else { showBG = cookie.data.bg; unlockedLevel = cookie.data.unlockedLevel; stage.quality = cookie.data.qual; sound = cookie.data.sound; }; API_Settings = {movie_id:6706, enc_key:"pO3T6RsIb0n4TMjqWm3o1Q7nX4YlSNY5", debug_mode:false, movie_version:""}; newgroundsAPIconnector.initialize(API_Settings); kongregate = new KongregateAPI(); this.addChild(kongregate); } else { skipIntro = true; }; if (cutscene != undefined){ if (cutscene == true){ fadeout.visible = true; } else { fadeout.visible = false; }; } else { fadeout.visible = false; }; stop(); loadWidth = 100; loadHeight = 10; menu.rise = 0; menu.gy = 0; tar2 = new MovieClip(); menu.addChild(tar2); tar2.graphics.lineStyle(1, 0xFFFFFF); tar2.graphics.moveTo((211.45 - loadWidth), (382 - loadHeight)); tar2.graphics.lineTo((211.45 - loadWidth), (382 + loadHeight)); tar2.graphics.moveTo((212.45 + loadWidth), (382 - loadHeight)); tar2.graphics.lineTo((212.45 + loadWidth), (382 + loadHeight)); tar = new MovieClip(); tar.y = 382; tar.x = ((211.45 - loadWidth) + 1); tar.graphics.beginFill(0x666666); rise = 0; gHeight = 1; tar.scaleY = 0; tar.scaleX = 0; tar.graphics.drawRect(0, (-(loadHeight) * 0.5), ((loadWidth * 2) - 1), loadHeight); tar.graphics.endFill(); menu.addChild(tar); menu.setChildIndex(menu.scanLines, (menu.numChildren - 1)); menu.playButton.visible = false; menu.editButton.visible = false; menu.eraseShit.visible = false; menu.credits.visible = false; menu.loadBox.visible = false; menu.eraseBox.visible = false; menu.titleScreen.visible = false; menu.newgrounds.visible = false; menu.downloadButton.visible = false; if (skipIntro){ if (cutscene != true){ musicSound = new introSong(); if (sound){ musicChannel = musicSound.play(0, 99999999); musicTransform = musicChannel.soundTransform; musicTransform.volume = 0.2; musicChannel.soundTransform = musicTransform; }; }; menu.loadingScreen.visible = false; menu.newgrounds.visible = true; menu.newgrounds.addEventListener(MouseEvent.CLICK, gotoNG); menu.playButton.visible = true; menu.playButton.addEventListener(MouseEvent.CLICK, hitPlay); menu.editButton.visible = true; menu.editButton.addEventListener(MouseEvent.CLICK, hitEdit); menu.credits.addEventListener(MouseEvent.CLICK, hitCredits); menu.downloadButton.visible = true; menu.downloadButton.addEventListener(MouseEvent.CLICK, hitDownload); menu.eraseShit.addEventListener(MouseEvent.CLICK, hitErase); menu.eraseBox.doneButton.addEventListener(MouseEvent.CLICK, hitErase); menu.credits.visible = true; menu.eraseShit.visible = true; menu.loadBox.visible = true; menu.titleScreen.visible = true; menu.removeChild(tar); menu.removeChild(tar2); menu.titleScreen.eliSite.addEventListener(MouseEvent.CLICK, goto2D); menu.titleScreen.edSite.addEventListener(MouseEvent.CLICK, gotoEd); menu.titleScreen.eliSite.visible = false; menu.titleScreen.edSite.visible = false; menu.titleScreen.closeCredits.visible = false; }; menu.loadBox.text = "if you have a level code that you want to play, paste it here and press the map editor button."; currentLevel = unlockedLevel; if (currentLevel > 62){ currentLevel = 0; }; storyModeLevels = ["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"]; trace(storyModeLevels.length); loaderInfo.addEventListener(ProgressEvent.PROGRESS, preloaderUpdate); loaderInfo.addEventListener(Event.COMPLETE, preloaderFinish); stage.addEventListener(Event.ENTER_FRAME, eFrame1); } public function kUp(_arg1:KeyboardEvent){ id = keysDown.indexOf(_arg1.keyCode); if (id != -1){ keysDown[id] = keysDown[(keysDown.length - 1)]; keysDown.splice((keysDown.length - 1), 1); }; } function frame2(){ levelName = ""; setup(); HUD.mapScreen.y = 0; HUD.mapScreen.gotoAndStop(2); } public function preloaderFinish(_arg1:Event){ loaderInfo.removeEventListener(ProgressEvent.PROGRESS, preloaderUpdate); loaderInfo.removeEventListener(Event.COMPLETE, preloaderFinish); menu.loadingScreen.cont.addEventListener(MouseEvent.CLICK, playIntros); } public function preloaderUpdate(_arg1:ProgressEvent){ gWidth = (_arg1.bytesLoaded / _arg1.bytesTotal); } public function isDown(_arg1){ if (keysDown.indexOf(_arg1) != -1){ return (true); }; return (false); } public function setHigh(_arg1:MouseEvent){ stage.quality = (cookie.data.qual = StageQuality.HIGH); cookie.flush(); } public function eFrame1(_arg1:Event){ time1 = getTimer(); if ((((intros.currentFrame == intros.totalFrames)) && (!((menu.gy == 0))))){ menu.gy = 0; menu.loadingScreen.visible = false; menu.newgrounds.visible = true; menu.newgrounds.addEventListener(MouseEvent.CLICK, gotoNG); menu.playButton.visible = true; menu.playButton.addEventListener(MouseEvent.CLICK, hitPlay); menu.editButton.visible = true; menu.editButton.addEventListener(MouseEvent.CLICK, hitEdit); menu.credits.visible = true; menu.credits.addEventListener(MouseEvent.CLICK, hitCredits); menu.downloadButton.visible = true; menu.downloadButton.addEventListener(MouseEvent.CLICK, hitDownload); menu.eraseShit.addEventListener(MouseEvent.CLICK, hitErase); menu.eraseBox.doneButton.addEventListener(MouseEvent.CLICK, hitErase); menu.loadBox.visible = true; menu.titleScreen.visible = true; menu.titleScreen.eliSite.addEventListener(MouseEvent.CLICK, goto2D); menu.titleScreen.edSite.addEventListener(MouseEvent.CLICK, gotoEd); menu.titleScreen.eliSite.visible = false; menu.titleScreen.edSite.visible = false; menu.titleScreen.closeCredits.visible = false; menu.removeChild(tar); menu.removeChild(tar2); }; if (((!((intros.currentFrame == 1))) && (!((intros.currentFrame == intros.totalFrames))))){ menu.gy = -420; }; menu.rise = (menu.rise + ((menu.gy - menu.y) / 40)); menu.rise = (menu.rise * 0.85); menu.y = (menu.y + menu.rise); if (menu.y > 0){ menu.y = 0; menu.rise = (menu.rise * -0.5); if (Math.abs(menu.rise) < 0.5){ menu.rise = 0; menu.eraseShit.visible = true; intros.visible = false; }; }; if (menu.y < -420){ menu.y = -420; }; if (Math.random() < 0.03){ rise = (rise + 1); }; rise = (rise + ((gHeight - tar.scaleY) / 1)); rise = (rise * 0.7); tar.scaleY = (tar.scaleY + rise); tar.scaleX = (tar.scaleX + ((gWidth - tar.scaleX) / 6)); menu.playButton.alpha = (menu.playButton.alpha + ((1 - menu.playButton.alpha) / 20)); menu.editButton.alpha = (menu.editButton.alpha + ((1 - menu.editButton.alpha) / 20)); } public function setTooltip(){ if (edMode == 0){ tipMode = cTile; } else { if (edMode == 1){ tipMode = 0; } else { if (edMode == 2){ tipMode = cPuke; } else { if (edMode == 3){ tipMode = cDoor; }; }; }; }; HUD.edHUD.toolTip.text = tooltips[edMode][tipMode]; } public function disableBG(_arg1:MouseEvent){ showBG = (cookie.data.bg = false); cookie.flush(); } public function enableSound(_arg1:MouseEvent){ if (sound == false){ musicChannel = musicSound.play(0, 99999999); musicTransform = musicChannel.soundTransform; musicTransform.volume = 0.2; musicChannel.soundTransform = musicTransform; }; sound = (cookie.data.sound = true); cookie.flush(); } public function hitDownload(_arg1:MouseEvent){ var e = _arg1; var req:URLRequest = new URLRequest("http://www.newgrounds.com/downloads/flash/spewer.zip"); try { navigateToURL(req, "_blank"); } catch(e:Error) { trace("Navigate to URL failed", e.message); }; } public function gotoEd(_arg1:MouseEvent){ var e = _arg1; var req:URLRequest = new URLRequest("http://www.edmundm.com"); try { navigateToURL(req, "_blank"); } catch(e:Error) { trace("Navigate to URL failed", e.message); }; } public function enableBG(_arg1:MouseEvent){ showBG = (cookie.data.bg = true); cookie.flush(); } public function hitPlay(_arg1:MouseEvent){ gameMode = "story"; if (menu.loadBox.text.toLowerCase() == "i am a fag and a queer"){ unlockedLevel = Number.POSITIVE_INFINITY; }; menu.playButton.removeEventListener(MouseEvent.CLICK, hitPlay); menu.editButton.removeEventListener(MouseEvent.CLICK, hitPlay); menu.newgrounds.removeEventListener(MouseEvent.CLICK, gotoNG); stage.removeEventListener(Event.ENTER_FRAME, eFrame1); menu.titleScreen.eliSite.removeEventListener(MouseEvent.CLICK, goto2D); menu.titleScreen.edSite.removeEventListener(MouseEvent.CLICK, gotoEd); menu.eraseShit.removeEventListener(MouseEvent.CLICK, hitErase); menu.eraseBox.doneButton.removeEventListener(MouseEvent.CLICK, hitErase); menu.downloadButton.removeEventListener(MouseEvent.CLICK, hitDownload); menu.removeChild(menu.playButton); menu.removeChild(menu.editButton); menu.removeChild(menu.scanLines); graphics.clear(); levelString = undefined; editor = false; intro.stop(); if (musicChannel != undefined){ musicChannel.stop(); musicSound = (musicChannel = (musicTransform = null)); }; gotoAndStop(2); } public function drawMap(_arg1, _arg2, _arg3, _arg4){ var _local6:*; oQual = stage.quality; stage.quality = StageQuality.HIGH; fgBitmap.fillRect(new Rectangle((_arg1 * tileX), (_arg2 * tileY), (_arg3 * tileX), (_arg4 * tileY)), 0); fgFilter.fillRect(new Rectangle((_arg1 * tileX), (_arg2 * tileY), (_arg3 * tileX), (_arg4 * tileY)), 0); bgBitmap.fillRect(new Rectangle((_arg1 * tileX), (_arg2 * tileY), (_arg3 * tileX), (_arg4 * tileY)), 0); movingTiles = new Array(); var _local5:* = _arg2; while (_local5 < (_arg2 + _arg4)) { if ((((_local5 >= 0)) && ((_local5 < map.length)))){ _local6 = _arg1; while (_local6 < (_arg1 + _arg3)) { if ((((_local6 >= 0)) && ((_local6 < map[0].length)))){ if (map[_local5][_local6] != 0){ genericTile = new tile(); genericMask = new tileMask(); genericTile.gotoAndStop(map[_local5][_local6]); genericTile.x = (_local6 * tileX); genericTile.y = (_local5 * tileY); if (((!((map[_local5][_local6] == acidTile))) || ((editor == true)))){ if (tileTypes[map[_local5][_local6]] == 1){ fgBitmap.draw(genericTile, genericTile.transform.matrix); genericMask.gotoAndStop(map[_local5][_local6]); genericMask.x = (_local6 * tileX); genericMask.y = (_local5 * tileY); fgFilter.draw(genericMask, genericMask.transform.matrix); } else { if (tileTypes[map[_local5][_local6]] == 0){ bgBitmap.draw(genericTile, genericTile.transform.matrix); }; }; } else { genericTile.gotoAndStop(blankTile); bgBitmap.draw(genericTile, genericTile.transform.matrix); }; if ((((((((((((((map[_local5][_local6] == spikes1)) || ((map[_local5][_local6] == spikes2)))) || ((map[_local5][_local6] == spikes3)))) || ((map[_local5][_local6] == spikes4)))) || ((map[_local5][_local6] == conv1)))) || ((map[_local5][_local6] == conv2)))) || ((map[_local5][_local6] == acidTile)))){ movingTiles.push([_local5, _local6, map[_local5][_local6]]); }; genericTile = null; genericMask = null; if (map[_local5][_local6] == conv1){ newArrow = new convArrow(); newArrow.x = ((_local6 * tileX) + (tileX / 2)); newArrow.y = ((_local5 * tileY) + (tileY / 2)); fgBitmap.draw(newArrow, newArrow.transform.matrix); newArrow = null; }; if (map[_local5][_local6] == conv2){ newArrow = new convArrow(); newArrow.x = ((_local6 * tileX) + (tileX / 2)); newArrow.y = ((_local5 * tileY) + (tileY / 2)); newArrow.scaleX = -1; fgBitmap.draw(newArrow, newArrow.transform.matrix); newArrow = null; }; } else { genericTile = new tile(); genericMask = new tileMask(); if ((((gameMode == "story")) && ((currentLevel == 54)))){ genericTile.gotoAndStop(emptyTile); } else { genericTile.gotoAndStop(blankTile); }; genericTile.x = (_local6 * tileX); genericTile.y = (_local5 * tileY); bgBitmap.draw(genericTile, genericTile.transform.matrix); }; }; _local6++; }; }; _local5++; }; stroke = new GlowFilter(); stroke.blurX = (stroke.blurY = 4); stroke.color = 0x777777; stroke.strength = 8; stroke.quality = 1; stroke.knockout = false; fgFilter.applyFilter(fgFilter, new Rectangle(0, 0, sw, sh), new Point(0, 0), stroke); _local5 = _arg2; while (_local5 < (_arg2 + _arg4)) { if ((((_local5 >= 0)) && ((_local5 < map.length)))){ _local6 = _arg1; while (_local6 < (_arg1 + _arg3)) { if ((((_local6 >= 0)) && ((_local6 < map[0].length)))){ if (map[_local5][_local6] != 0){ genericMask = new tileMask(); if (tileTypes[map[_local5][_local6]] == 1){ genericMask.gotoAndStop(map[_local5][_local6]); genericMask.x = (_local6 * tileX); genericMask.y = (_local5 * tileY); fgFilter.draw(genericMask, genericMask.transform.matrix, null, "erase"); }; genericTile = null; genericMask = null; }; }; _local6++; }; }; _local5++; }; stage.quality = oQual; } public function hitHelp(_arg1:MouseEvent){ HUD.helpMe.visible = (HUD.helpMe.visible == false); } public function jumpSound(){ if (sound){ if (jumpSoundTimer <= 0){ c = Math.floor((Math.random() * 4)); if (c == 0){ jumpingSound = jumpSound0; } else { if (c == 1){ jumpingSound = jumpSound1; } else { if (c == 2){ jumpingSound = jumpSound2; } else { if (c == 3){ jumpingSound = jumpSound3; }; }; }; }; jumpingSound.play(); jumpSoundTimer = 4; }; }; } public function hitCredits(_arg1:MouseEvent){ if (menu.titleScreen.currentFrame == 1){ menu.flasher.gotoAndPlay(2); menu.titleScreen.gotoAndStop(2); menu.titleScreen.eliSite.visible = true; menu.titleScreen.edSite.visible = true; menu.titleScreen.closeCredits.visible = true; menu.titleScreen.closeCredits.addEventListener(MouseEvent.CLICK, closeCredits); } else { closeCredits(_arg1); }; } public function exitToTitle(_arg1:MouseEvent){ destroy(editor); if (musicChannel != undefined){ musicChannel.stop(); musicSound = (musicChannel = (musicTransform = null)); }; map = undefined; gotoAndStop(1); } public function editTheLevel(_arg1:MouseEvent){ HUD.editLevel.removeEventListener(MouseEvent.CLICK, editTheLevel); editor = true; destroy(0); setup(); } public function changePuke(_arg1){ if (((!((_arg1 == cPuke))) && (sound))){ powerSound.play(); }; if (_arg1 == 0){ if (cPuke != 0){ cPuke = 0; if (cHero != undefined){ this[("poof" + q)] = new poof(); this[("poof" + q)].gotoAndStop(1); this[("poof" + q)].x = cHero.x; this[("poof" + q)].y = cHero.y; this[("poof" + q)].rotation = ((Math.random() - 0.7) * 30); poofs.push(("poof" + q)); game.addChild(this[("poof" + q)]); q++; }; HUD.pukeBar.gotoAndStop(1); HUD.pukeFlash.gotoAndPlay(2); }; }; if (_arg1 == 1){ if (cPuke != 1){ cPuke = 1; if (cHero != undefined){ this[("poof" + q)] = new poof(); this[("poof" + q)].gotoAndStop(2); this[("poof" + q)].x = cHero.x; this[("poof" + q)].y = cHero.y; this[("poof" + q)].rotation = ((Math.random() - 0.7) * 30); poofs.push(("poof" + q)); game.addChild(this[("poof" + q)]); q++; }; HUD.pukeBar.gotoAndStop(2); HUD.pukeFlash.gotoAndPlay(2); }; }; if (_arg1 == 2){ if (cPuke != 2){ cPuke = 2; if (cHero != undefined){ this[("poof" + q)] = new poof(); this[("poof" + q)].gotoAndStop(3); this[("poof" + q)].x = cHero.x; this[("poof" + q)].y = cHero.y; this[("poof" + q)].rotation = ((Math.random() - 0.7) * 30); poofs.push(("poof" + q)); game.addChild(this[("poof" + q)]); q++; }; HUD.pukeBar.gotoAndStop(3); HUD.pukeFlash.gotoAndPlay(2); }; }; if (_arg1 == 3){ if (cPuke != 3){ cPuke = 3; if (cHero != undefined){ this[("poof" + q)] = new poof(); this[("poof" + q)].gotoAndStop(4); this[("poof" + q)].x = cHero.x; this[("poof" + q)].y = cHero.y; this[("poof" + q)].rotation = ((Math.random() - 0.7) * 30); poofs.push(("poof" + q)); game.addChild(this[("poof" + q)]); q++; }; HUD.pukeBar.gotoAndStop(4); HUD.pukeFlash.gotoAndPlay(2); }; }; if (_arg1 == 4){ if (cPuke != 4){ cPuke = 4; if (cHero != undefined){ this[("poof" + q)] = new poof(); this[("poof" + q)].gotoAndStop(5); this[("poof" + q)].x = cHero.x; this[("poof" + q)].y = cHero.y; this[("poof" + q)].rotation = ((Math.random() - 0.5) * 30); poofs.push(("poof" + q)); game.addChild(this[("poof" + q)]); q++; }; HUD.pukeBar.gotoAndStop(5); HUD.pukeFlash.gotoAndPlay(2); }; }; } public function squishSound(_arg1){ if (sound){ c = oldSquish; while (c == oldSquish) { c = Math.floor((Math.random() * 3)); }; if (c == 0){ this[("landingSound" + q)] = new land0(); } else { if (c == 1){ this[("landingSound" + q)] = new land1(); } else { if (c == 2){ this[("landingSound" + q)] = new land2(); } else { if (c == 3){ this[("landingSound" + q)] = new land3(); }; }; }; }; oldSquish = c; this[("landingChannel" + q)] = this[("landingSound" + q)].play(); this[("landingTransform" + q)] = this[("landingChannel" + q)].soundTransform; this[("landingTransform" + q)].volume = _arg1; this[("landingChannel" + q)].soundTransform = this[("landingTransform" + q)]; q++; }; } public function spawnHero(_arg1, _arg2){ cHero = new spewer(); cHero.x = _arg1; cHero.y = _arg2; cHero.bodyParts.body.stop(); cHero.rise = (cHero.run = 0); cHero.scaleX = (cHero.scaleY = 0.9); cHero.r = (14 * 0.9); cHero.dir = 1; cHero.thin = 0.8; cHero.jumpCount = 0; cHero.partHits = 0; cHero.jumpFaceCount = 100; cHero.faceWhole.gotoAndStop(1); cHero.bodyParts.tail2.a = 0; cHero.bodyParts.tail1.a = (Math.PI / 8); cHero.bodyParts.foot1.rx = (cHero.bodyParts.foot1.tx = cHero.bodyParts.foot1.x); cHero.bodyParts.foot1.ry = (cHero.bodyParts.foot1.ty = cHero.bodyParts.foot1.y); cHero.bodyParts.foot2.rx = (cHero.bodyParts.foot2.tx = cHero.bodyParts.foot2.x); cHero.bodyParts.foot2.ry = (cHero.bodyParts.foot2.ty = cHero.bodyParts.foot2.y); cHero.cFoot = 1; cHero.bodyParts.tail1.run = (cHero.bodyParts.tail1.rise = (cHero.bodyParts.tail2.run = (cHero.bodyParts.tail2.rise = 0))); cHero.bodyParts.tail1.rx = (cHero.bodyParts.tail1.gx = cHero.bodyParts.tail1.x); cHero.bodyParts.tail1.ry = (cHero.bodyParts.tail1.gy = cHero.bodyParts.tail1.y); cHero.bodyParts.tail2.rx = (cHero.bodyParts.tail2.gx = cHero.bodyParts.tail2.x); cHero.bodyParts.tail2.ry = (cHero.bodyParts.tail2.gy = cHero.bodyParts.tail2.y); cHero.stroke = new GlowFilter(); cHero.stroke.blurX = (cHero.stroke.blurY = 4); cHero.stroke.strength = 8; cHero.stroke.quality = 1; cHero.rMult = pukeColTrans[cPuke][0]; cHero.gMult = pukeColTrans[cPuke][1]; cHero.bMult = pukeColTrans[cPuke][2]; cHero.aMult = pukeColTrans[cPuke][3]; cHero.rOff = pukeColTrans[cPuke][4]; cHero.gOff = pukeColTrans[cPuke][5]; cHero.bOff = pukeColTrans[cPuke][6]; cHero.aOff = pukeColTrans[cPuke][7]; cHero.outRed = Number(("0x" + pukeColTrans[cPuke][8].substr(0, 2))); cHero.outGreen = Number(("0x" + pukeColTrans[cPuke][8].substr(2, 2))); cHero.outBlue = Number(("0x" + pukeColTrans[cPuke][8].substr(4, 2))); cHero.bodyParts.transform.colorTransform = new ColorTransform(cHero.rMult, cHero.gMult, cHero.bMult, cHero.aMult, cHero.rOff, cHero.gOff, cHero.bOff, cHero.aOff); cHero.stroke.color = (((Math.round(cHero.outRed) * 65536) + (Math.round(cHero.outGreen) * 0x0100)) + Math.round(cHero.outBlue)); cHero.filters = [cHero.stroke]; game.addChild(cHero); } public function gotoNG(_arg1:MouseEvent){ var e = _arg1; var req:URLRequest = new URLRequest("http://www.newgrounds.com"); try { navigateToURL(req, "_blank"); } catch(e:Error) { trace("Navigate to URL failed", e.message); }; } public function setMedium(_arg1:MouseEvent){ stage.quality = (cookie.data.qual = StageQuality.MEDIUM); cookie.flush(); } public function sortY(_arg1, _arg2){ if (this[_arg1].y < this[_arg2].y){ return (-1); }; if (this[_arg1].y > this[_arg2].y){ return (1); }; return (0); } public function findLevelName(_arg1){ levelString = storyModeLevels[_arg1]; bytes = new ByteArray(); bytes = Base64.decodeToByteArray(levelString); bytes.uncompress(); levelString = bytes.toString(); s = levelString.indexOf(";"); n = levelString.substring(0, s); n = levelString.indexOf(";", (s + 1)); return (levelString.substring((s + 1), n)); } public function sortX(_arg1, _arg2){ if (this[_arg1].x < this[_arg2].x){ return (-1); }; if (this[_arg1].x > this[_arg2].x){ return (1); }; return (0); } public function toggleProps(_arg1:MouseEvent){ HUD.levelProps.visible = (HUD.levelProps.visible == false); } public function setup(){ if (gameMode == "story"){ levelString = storyModeLevels[currentLevel]; }; stage.addEventListener(Event.ENTER_FRAME, eFrame); stage.addEventListener(MouseEvent.MOUSE_DOWN, mDown); stage.addEventListener(MouseEvent.MOUSE_UP, mUp); stage.addEventListener(KeyboardEvent.KEY_DOWN, kDown); stage.addEventListener(KeyboardEvent.KEY_UP, kUp); jumpSoundTimer = 0; if ((((gameMode == "story")) && ((currentLevel == 54)))){ if (musicChannel != undefined){ musicChannel.stop(); }; musicSound = new introSong(); if (sound){ musicChannel = musicSound.play(0, 99999999); musicTransform = musicChannel.soundTransform; musicTransform.volume = 0.2; musicChannel.soundTransform = musicTransform; }; }; if (musicSound == undefined){ musicSound = new music(); if (sound){ musicChannel = musicSound.play(0, 99999999); musicTransform = musicChannel.soundTransform; musicTransform.volume = 0.2; musicChannel.soundTransform = musicTransform; }; }; jumpSound0 = new jump0(); jumpSound1 = new jump1(); jumpSound2 = new jump2(); jumpSound3 = new jump3(); acidDeathSound = new acidSound(); click1 = new clickA(); click2 = new clickB(); death1 = new deathA(); death2 = new deathB(); death3 = new deathC(); death4 = new deathD(); monitor = new monitorSound(); levelWinSound = new winSound(); powerSound = new powerupSound(); sawDeathSound = new sawSound(); pukeSound = new pukeLoop(); pukeChannel = pukeSound.play(0, 99999999999999); pukeTransform = pukeChannel.soundTransform; pukeTransform.volume = (pukeVolume = 0); pukeChannel.soundTransform = pukeTransform; acidLoopSound = new acidLoop(); acidChannel = acidLoopSound.play(0, 99999999999999); acidTransform = acidChannel.soundTransform; acidTransform.volume = (acidVolume = 0); acidChannel.soundTransform = acidTransform; slurpSound = new slurp(); slurpChannel = slurpSound.play(0, 99999999999999); slurpTransform = slurpChannel.soundTransform; slurpTransform.volume = (slurpVolume = 0); slurpChannel.soundTransform = slurpTransform; waterSound = new underwater(); waterChannel = waterSound.play(0, 99999999999999); waterTransform = waterChannel.soundTransform; waterTransform.volume = (waterVolume = 0); waterChannel.soundTransform = waterTransform; HUD = new headsUpDisplay(); HUD.levelProps.radios = new radioButtons(); HUD.levelProps.radios.x = 75.5; HUD.levelProps.radios.y = 33.2; HUD.mapScreen.gy = -420; HUD.mapScreen.rise = 0; HUD.mapScreen.settle = false; HUD.mapScreen.returnToGame.visible = false; HUD.mapScreen.restartLevel.visible = false; HUD.mapScreen.exitToTitle.visible = false; HUD.mapScreen.options.visible = false; HUD.mapScreen.returnToGame.addEventListener(MouseEvent.CLICK, unPause); HUD.mapScreen.restartLevel.addEventListener(MouseEvent.CLICK, restartLevel); HUD.mapScreen.exitToTitle.addEventListener(MouseEvent.CLICK, exitToTitle); HUD.mapScreen.options.AAHigh.addEventListener(MouseEvent.CLICK, setHigh); HUD.mapScreen.options.AAMedium.addEventListener(MouseEvent.CLICK, setMedium); HUD.mapScreen.options.AALow.addEventListener(MouseEvent.CLICK, setLow); HUD.mapScreen.options.enableBG.addEventListener(MouseEvent.CLICK, enableBG); HUD.mapScreen.options.disableBG.addEventListener(MouseEvent.CLICK, disableBG); HUD.mapScreen.options.enableSound.addEventListener(MouseEvent.CLICK, enableSound); HUD.mapScreen.options.disableSound.addEventListener(MouseEvent.CLICK, disableSound); HUD.mapScreen.gotoAndStop(1); HUD.levelProps.visible = false; HUD.tutorial.visible = false; HUD.helpMe.visible = false; if (gameMode == "story"){ tutorialMessages = [[0, "<font color=\"#AA0000\">Move around with the W, A, D, and S keys.</font><br>If you mess up, <font color=\"#AA0000\">press R to reset the level</font>.<br>You can <font color=\"#AA0000\">pause the game by pressing p or esc</font>."], [2, "Don't be afraid of getting your feet wet, Spewer. You are a natural born swimmer."], [3, "If you <font color=\"#AA0000\">hold the mouse button</font>, you can vomit in the direction of the mouse cursor. You can also press the <font color=\"#AA0000\">Spacebar</font> to eat it back up."], [4, "If you need to jump higher, <font color=\"#AA0000\">puke downwards as you jump.</font>"], [10, "<br>Chapter 1 completed."], [21, "<br>Chapter 2 completed."], [32, "<br>Chapter 3 completed."], [43, "<br>Chapter 4 completed."], [11, "You can eat things other than your own vomit. Pills will make you throw up in new and possibly exciting ways. Fruit fills you up and tastes great."]]; i = 0; while (i < tutorialMessages.length) { if (tutorialMessages[i][0] == currentLevel){ HUD.tutorial.visible = true; HUD.tutorial.tutDisp.htmlText = tutorialMessages[i][1]; break; }; i++; }; }; keysDown = new Array(); particles = new Array(); bubbles = new Array(); objects = new Array(); doors = new Array(); steams = new Array(); poofs = new Array(); mapBoxes = new Array(); q = 0; cPuke = 0; if (defaultType != undefined){ cPuke = defaultType; HUD.levelProps.radios.greenRadio.group.selectedData = String(cPuke); }; cTile = 1; cDoor = 0; activeVomit = (totalVomit = 0); if (defaultVomit != undefined){ totalVomit = defaultVomit; HUD.levelProps.defaultPuke.value = defaultVomit; }; levelCompleted = false; edSubMode = 0; edMode = 0; spewerIsDead = false; playerKilled = false; pauseGame = false; sw = 600; sh = 420; cutscene = false; stageX = 600; stageY = 450; teleLength = (telePos = (346.9 - 20)); oTelePos = 0; telePieceWidth = 30; teleBaseX = 390.8; teleY = 15; teleRun = 0; hitJump = false; jumps = 0; steps = 0; resetLevel = false; telePieces = new Array(); acidTiles = []; pukeAlpha = [0.7, 0]; tileX = (tileY = 30); tilesX = Math.ceil((sw / tileX)); tilesY = Math.ceil((sh / tileY)); pukeColor = [3689779, 6167066, 0xFFFFFF, 0, 0xFFCC00, 0, 0, 0, 0, 0, 0]; pukeForce = [15, 20, 15, 15, 15, 0, 0, 0, 0, 0, 0]; pukeKickback = [1, 2, 1, 1, 1, 0, 0, 0, 0, 0, 0]; pukeColTrans = [[1, 1, 1, 1, 72, 55, 55, 0, "7A3030"], [1, 1, 1, 1, 76, -34, -34, 0, "9B3131"], [1, 1, 1, 1, 127, 127, 127, 0, "AEAEAE"], [1, 1, 1, 1, -51, -51, -51, 0, "333333"], [1, 1, 1, 1, 127, 127, 76, 0, "FFCC00"], [0, 0, 0, 0, 0, 0, 0, 0, "000000"], [0, 0, 0, 0, 0, 0, 0, 0, "000000"], [0, 0, 0, 0, 0, 0, 0, 0, "000000"], [0, 0, 0, 0, 0, 0, 0, 0, "000000"], [0, 0, 0, 0, 0, 0, 0, 0, "000000"], [0, 0, 0, 0, 0, 0, 0, 0, "000000"]]; if (map == undefined){ map = new Array(); bytes = new ByteArray(); bytes = Base64.decodeToByteArray(levelString); bytes.uncompress(); levelString = bytes.toString(); s = levelString.indexOf(";"); n = levelString.substring(0, s); n = n.split(","); i = 0; while (i < tilesY) { map[i] = n.slice((i * tilesX), ((i * tilesX) + tilesX)); i++; }; n = levelString.indexOf(";", (s + 1)); levelName = levelString.substring((s + 1), n); s = n; n = levelString.indexOf(";", (s + 1)); totalVomit = Number(levelString.substring((s + 1), n)); HUD.levelProps.defaultPuke.value = totalVomit; defaultVomit = totalVomit; s = n; n = levelString.indexOf(";", (s + 1)); cPuke = Number(levelString.substring((s + 1), n)); HUD.levelProps.radios.greenRadio.group.selectedData = String(cPuke); defaultType = cPuke; s = n; n = levelString.indexOf(",", (s + 1)); cx = Number(levelString.substring((s + 1), n)); s = n; n = levelString.indexOf(";", (s + 1)); cy = Number(levelString.substring((s + 1), n)); s = (n + 1); n = levelString.indexOf(";", s); s2 = levelString.substring(s, n); defaultParticles = s2.split("^"); defaultParticles.pop(); i = 0; while (i < defaultParticles.length) { defaultParticles[i] = defaultParticles[i].split(","); j = 0; while (j < defaultParticles[i].length) { defaultParticles[i][j] = Number(defaultParticles[i][j]); j++; }; i++; }; s = (n + 1); n = levelString.indexOf(";", s); s2 = levelString.substring(s, n); defaultObjects = s2.split("^"); defaultObjects.pop(); i = 0; while (i < defaultObjects.length) { defaultObjects[i] = defaultObjects[i].split(","); j = 0; while (j < defaultObjects[i].length) { defaultObjects[i][j] = Number(defaultObjects[i][j]); j++; }; i++; }; s = (n + 1); s2 = levelString.substring(s); switches = s2.split("^"); switches.pop(); i = 0; while (i < switches.length) { if (switches[i].length > 0){ switches[i] = switches[i].split(","); j = 0; while (j < switches[i].length) { switches[i][j] = Number(switches[i][j]); j++; }; } else { switches[i] = new Array(); }; i++; }; }; if (levelName.length == 0){ defaultLevelNames = ["My Dumb Level", "A Boring Level", "A Mediocre Level", "My Horrid Level", "A Stupid Level", "The Worst Level"]; levelName = (HUD.levelProps.levelName.text = defaultLevelNames[Math.floor((Math.random() * defaultLevelNames.length))]); } else { HUD.levelProps.levelName.text = levelName; }; HUD.levelProps.levelName.restrict = "a-zA-Z \"'0-9/.,()\\-+_=!@#$%\\^&*`~<>[]{}\\|?:"; HUD.nameDisplay.text = levelName; if (HUD.nameDisplay.textHeight > 20){ HUD.nameDisplay.y = 417; } else { HUD.nameDisplay.y = 425; }; fgBitmap = new BitmapData(sw, sh, true, 0); fgFilter = new BitmapData(sw, sh, true, 0); bgBitmap = new BitmapData(sw, sh, true, 0); fgClip = new Bitmap(fgBitmap); bgClip = new Bitmap(bgBitmap); filterClip = new Bitmap(fgFilter); tileTypes = [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; tooltips = [["Cockbomb", "A plain old boring wall tile. Doesn't do much.", "A wall tile with a stylish computer console. It's got to be the smallest screen in the history of electricity.", "Another wall tile. Awesome, yeah?", "A wall tile with some fancy looking flourishes.", "A wall tile with a dashed border. Sort of reminds me of ants. That are marching.", "Another dashed-border wall tile, but a little darker.", "A floor tile that transitions into an \"outside the level\" wall.", "A tile with a little hole in it, behind which is a standard wall tile.", "A tile with a hole that shows the world behind the tank through the center.", "A wall section with a horizontal pipe. The pipe is only there for effect. Sorry.", "A wall section with a vertical pipe. The pipe is still only there for effect.", "A corner piece for the pipe tiles.", "A corner piece for the pipe tiles.", "A corner piece for the pipe tiles.", "A corner piece for the pipe tiles.", "A very plain wall tile. Useful for filling in areas that are considered to be outside the level.", "Another \"outside the level\" tile. A little lighter.", "Deadly, deadly grinders! Be careful, Spewer!", "Deadly, deadly grinders! Be careful, Spewer!", "Deadly, deadly grinders! Be careful, Spewer!", "Deadly, deadly grinders! Be careful, Spewer!", "Acid tile-If Spewer sprays acid vomit on this tile, it will melt away. Sort of tragic, if you ask me.", "A conveyor belt. Great for pushing stuff around, I guess.", "Another conveyor belt, but in the other direction. Equally great for pushing stuff around.", "A completely empty tile, revealing the room behind the tank.", "The plain old boring background tile. Pro-tip: When editing tiles, hold space to set the current tile to this background.", "A background tile that gives a tiny view to the outside world.", "Another background tile that shows off the view, but oriented vertically.", "A background tile with one horizontal line.", "A background tile with one vertical line.", "A background tile with a horizontal pipe.", "A background tile with a vertical pipe.", "A corner piece for the background pipes.", "A corner piece for the background pipes.", "A corner piece for the background pipes.", "A corner piece for the background pipes.", "A background tile with nothing but one little dot in the middle. How desolate.", "A background tile with a little widget in the corner. Count it as one piece of flair.", "A background tile with a little widget in the corner. It's also one piece of flair.", "A background tile with a little widget in the corner. Eh, I guess we can count it as one piece of flair.", "A background tile with a little widget in the corner. Like its brothers, it's one piece of flair.", "A background tile with a quarter missing, showing the room behind the tank.", "A background tile with a quarter missing, showing the room behind the tank.", "A background tile with a quarter missing, showing the room behind the tank.", "A background tile with a quarter missing, showing the room behind the tank.", "The end of a background cable. It's got a little nubbin at the tip.", "The end of a background cable. It's got a little nubbin at the tip.", "The end of a background cable. It's got a little nubbin at the tip.", "The end of a background cable. It's got a little nubbin at the tip.", "A background cable.", "A background cable.", "A corner piece for a background cable.", "A corner piece for a background cable.", "A corner piece for a background cable.", "A corner piece for a background cable.", "A background frame tile with a cable extending out from it.", "A background frame tile with a cable extending out from it.", "A background frame tile with a cable extending out from it.", "A background frame tile with a cable extending out from it.", "A background frame tile, shaped into a corner.", "A background frame tile, shaped into a corner.", "A background frame tile, shaped into a corner.", "A background frame tile, shaped into a corner.", "A background frame tile.", "A background frame tile.", "A background frame tile.", "A background frame tile.", "An unfortunate reminder of the nature of the testing environment.", "An unfortunate reminder of the nature of the testing environment.", "An unfortunate reminder of the nature of the testing environment.", "An unfortunate reminder of the nature of the testing environment."], ["It's Spewer! Put him anywhere you want the player to start the level."], ["Standard green puke. Debatably gross. Hold shift to run the fluid sim.", "Red puke. Sprays harder than green, but otherwise, behaves the same. Hold shift to run the fluid sim.", "Strange grey puke. Somehow, it floats in the air. Hold shift to run the fluid sim.", "Black, tarry puke. Dries very quickly, creating bridges. Hold shift to run the fluid sim.", "Terrifying acidic puke. Burns through certain tiles. Hold shift to run the fluid sim.", "Vomit Pill. Eat this to gain more total puke!", "The Green Pill. Eat it to switch to standard green puke.", "The Red Pill. A possible movie reference. Eat it to switch to Rocket Puke.", "The White Pill. Possibly lightly hallucinogenic. Eat this to switch to Floater Puke.", "The Black Pill. Kind of menacing. Eat this to switch to Tar Puke.", "The Yellow Pill. Either tastes like mild lemons or battery acid. Eat this to switch to Acid Puke."], ["A switch. Place this, set its rotation, and then connect it with a wire to a door. Hi-technical, excellent!", "A puke button. Opens doors and grates like a regular switch, but activates with fluid instead of a button press.", "A door, to be used with a switch. Connect the two with a wire.", "A wire! Click on a switch and then a door to connect them. Wires are invisible when playing the game.", "The goal-make sure you have at least one. If a switch is connected, the player will have to open the door manually.", "A grate. Spewer can't pass through it until it's been opened by a switch (like a regular door), but everything else can."]]; blankTile = 26; conv1 = 23; conv2 = 24; spikes1 = 18; spikes2 = 19; spikes3 = 20; spikes4 = 21; acidTile = 22; partSet = 0; emptyTile = 25; drawMap(0, 0, map[0].length, map.length); gravity = 0.5; c = 0; checkingFluid = false; blink = 100; decay = 0.98; spacialSize = 16; spacialRecip = (1 / spacialSize); clicking = false; game = new MovieClip(); addChild(game); cBack = undefined; if (editor == false){ chapterEnd = false; if (gameMode == "story"){ if (((currentLevel + 1) % 11) == 0){ chapterEnd = true; }; }; if ((((showBG == true)) || ((chapterEnd == true)))){ this[("bg" + q)] = new backgroundAnimation(); cBack = ("bg" + q); game.addChild(this[cBack]); this[("bg" + q)].doc.gotoAndStop((1 + Math.floor((Math.random() * 4)))); q++; }; }; game.addChild(bgClip); i = 0; while (i < defaultObjects.length) { if (defaultObjects[i][2] == 2){ tar = (this[("goal" + q)] = new goalDoor()); objects.push(("goal" + q)); doors.push(("goal" + q)); if ((((gameMode == "story")) && ((currentLevel == 54)))){ tar.visible = false; }; if (editor){ tar.stop(); }; game.addChild(tar); game.setChildIndex(tar, (game.numChildren - 1)); q++; } else { if (defaultObjects[i][2] == 4){ tar = (this[("gate" + q)] = new gate()); objects.push(("gate" + q)); doors.push(("gate" + q)); tar.stop(); } else { if (defaultObjects[i][2] == 0){ tar = (this[("switch" + q)] = new doorSwitch()); tar.rotation = (defaultObjects[i][3] * 90); tar.stop(); objects.push(("switch" + q)); } else { if (defaultObjects[i][2] == 5){ tar = (this[("switch" + q)] = new pukeButton()); tar.rotation = (defaultObjects[i][3] * 90); tar.switched = false; tar.stop(); objects.push(("switch" + q)); } else { if (defaultObjects[i][2] == 1){ tar = (this[("door" + q)] = new door()); tar.stop(); objects.push(("door" + q)); doors.push(("door" + q)); }; }; }; }; }; tar.x = defaultObjects[i][0]; tar.y = defaultObjects[i][1]; tar.t = defaultObjects[i][2]; q++; i++; }; if (editor == false){ spawnHero(cx, cy); }; particleBitmap = new BitmapData(sw, sh, true, 0); tempBitmap = new BitmapData(sw, sh, true, 0); particleClip = new Bitmap(particleBitmap); game.addChild(particleClip); genericDraw = new MovieClip(); game.addChild(fgClip); if (editor == false){ teleEndClip = new teleEnd(); teleEndClip.y = teleY; HUD.barCont.addChild(teleEndClip); teleEndClip.x = (teleBaseX - teleLength); c = 0; i = (teleBaseX - teleLength); while (i < teleBaseX) { tar = (this[("tele" + q)] = new telePiece()); tar.gotoAndStop(Math.ceil((Math.random() * tar.totalFrames))); tar.x = i; tar.y = teleY; tar.scaleX = (telePieceWidth / 50); tar.scaleY = (0.5 + (c * 0.05)); tar.i = (teleBaseX - i); HUD.barCont.addChild(tar); telePieces.push(("tele" + q)); q++; c++; i = (i + telePieceWidth); }; HUD.pukeBar.gotoAndStop(1); i = 0; while (i < movingTiles.length) { tar = (this[("tile" + q)] = new tile()); tar.x = (movingTiles[i][1] * tileX); tar.y = (movingTiles[i][0] * tileY); tar.gotoAndStop(movingTiles[i][2]); game.addChild(tar); if (movingTiles[i][2] == acidTile){ acidTiles.push([movingTiles[i][0], movingTiles[i][1], ("tile" + q)]); }; q++; i++; }; game.addChild(filterClip); HUD.edHUD.visible = false; HUD.editorOutput.visible = false; HUD.outputButton.visible = false; HUD.helpButton.visible = false; if (gameMode == "story"){ HUD.editLevel.visible = false; } else { HUD.editLevel.visible = true; }; HUD.testLevel.visible = false; HUD.propsButton.visible = false; HUD.editLevel.addEventListener(MouseEvent.CLICK, editTheLevel); } else { setTooltip(); HUD.edHUD.visible = true; HUD.testLevel.visible = true; HUD.propsButton.visible = true; HUD.editLevel.visible = false; HUD.testLevel.addEventListener(MouseEvent.CLICK, testTheLevel); HUD.propsButton.addEventListener(MouseEvent.CLICK, toggleProps); tileDisplay = new tileDisp(); tileDisplay.x = (stageX - 150); tileDisplay.y = (stageY - 30); tar = new tile(); tilesBitmap = new BitmapData((tar.totalFrames * tileX), 120, false, 0); tilesClip = new Bitmap(tilesBitmap); tilesClip.y = -90; tileDisplay.tiles.addChild(tilesClip); i = 1; while (i <= tar.totalFrames) { tar.gotoAndStop(i); tar.x = ((i * tileX) - tileX); tar.y = 90; tilesBitmap.draw(tar, tar.transform.matrix); if (i == conv1){ newArrow = new convArrow(); newArrow.x = ((i * tileX) - (tileX / 2)); newArrow.y = 105; tilesBitmap.draw(newArrow, newArrow.transform.matrix); newArrow = null; }; if (i == conv2){ newArrow = new convArrow(); newArrow.x = ((i * tileX) - (tileX / 2)); newArrow.y = 105; newArrow.scaleX = -1; tilesBitmap.draw(newArrow, newArrow.transform.matrix); newArrow = null; }; i++; }; i = 0; while (i < pukeColor.length) { tar = new MovieClip(); tar.graphics.beginFill(pukeColor[i]); tar.graphics.drawCircle(((i * 30) + 15), 45, 10); tar.graphics.endFill(); tilesBitmap.draw(tar); i++; }; tar = new pillGraphic(); tar.gotoAndStop(1); tar.x = 165; tar.y = 45; tilesBitmap.draw(tar, tar.transform.matrix); tar.gotoAndStop(2); tar.x = 195; tar.y = 45; tilesBitmap.draw(tar, tar.transform.matrix); tar.gotoAndStop(3); tar.x = 225; tar.y = 45; tilesBitmap.draw(tar, tar.transform.matrix); tar.gotoAndStop(4); tar.x = 0xFF; tar.y = 45; tilesBitmap.draw(tar, tar.transform.matrix); tar.gotoAndStop(5); tar.x = 285; tar.y = 45; tilesBitmap.draw(tar, tar.transform.matrix); tar.gotoAndStop(6); tar.x = 315; tar.y = 45; tilesBitmap.draw(tar, tar.transform.matrix); tar = new spewer(); tar.x = 75; tar.y = 75; tar.rMult = pukeColTrans[0][0]; tar.gMult = pukeColTrans[0][1]; tar.bMult = pukeColTrans[0][2]; tar.aMult = pukeColTrans[0][3]; tar.rOff = pukeColTrans[0][4]; tar.gOff = pukeColTrans[0][5]; tar.bOff = pukeColTrans[0][6]; tar.aOff = pukeColTrans[0][7]; tar.outRed = Number(("0x" + pukeColTrans[0][8].substr(0, 2))); tar.outGreen = Number(("0x" + pukeColTrans[0][8].substr(2, 2))); tar.outBlue = Number(("0x" + pukeColTrans[0][8].substr(4, 2))); tar.bodyParts.transform.colorTransform = new ColorTransform(tar.rMult, tar.gMult, tar.bMult, tar.aMult, tar.rOff, tar.gOff, tar.bOff, tar.aOff); tilesBitmap.draw(tar, tar.transform.matrix); tileDisplay.tiles.x = 60; tar = new doorSwitch(); tar.x = 15; tar.y = 17; tar.scaleX = (tar.scaleY = 0.7); tilesBitmap.draw(tar, tar.transform.matrix); tar = new pukeButton(); tar.x = 45; tar.y = 17; tar.scaleX = (tar.scaleY = 0.7); tilesBitmap.draw(tar, tar.transform.matrix); tar = new door(); tar.x = 75; tar.y = 15; tar.scaleX = (tar.scaleY = 0.8); tilesBitmap.draw(tar, tar.transform.matrix); tar = new goalDoor(); tar.x = 135; tar.y = 15; tar.scaleX = (tar.scaleY = 0.8); tilesBitmap.draw(tar, tar.transform.matrix); tar = new MovieClip(); tar.graphics.lineStyle(2, 0xFFFF00); tar.graphics.moveTo(90, 15); tar.graphics.lineTo(120, 15); tilesBitmap.draw(tar); tar = new gate(); tar.x = 165; tar.y = 15; tar.scaleX = (tar.scaleY = 0.8); tilesBitmap.draw(tar, tar.transform.matrix); tar = null; HUD.addChild(tileDisplay); HUD.editorOutput.visible = true; HUD.outputButton.visible = true; HUD.helpButton.visible = true; HUD.outputButton.addEventListener(MouseEvent.CLICK, outputLevel); HUD.helpButton.addEventListener(MouseEvent.CLICK, hitHelp); heroSpawn = new spewer(); heroSpawn.x = cx; heroSpawn.y = cy; heroSpawn.scaleX = (heroSpawn.scaleY = 0.9); heroSpawn.faceWhole.stop(); heroSpawn.faceWhole.face.stop(); heroSpawn.faceWhole.face.eye1.stop(); heroSpawn.faceWhole.face.eye2.stop(); heroSpawn.bodyParts.body.stop(); heroSpawn.rMult = pukeColTrans[0][0]; heroSpawn.gMult = pukeColTrans[0][1]; heroSpawn.bMult = pukeColTrans[0][2]; heroSpawn.aMult = pukeColTrans[0][3]; heroSpawn.rOff = pukeColTrans[0][4]; heroSpawn.gOff = pukeColTrans[0][5]; heroSpawn.bOff = pukeColTrans[0][6]; heroSpawn.aOff = pukeColTrans[0][7]; heroSpawn.outRed = Number(("0x" + pukeColTrans[0][8].substr(0, 2))); heroSpawn.outGreen = Number(("0x" + pukeColTrans[0][8].substr(2, 2))); heroSpawn.outBlue = Number(("0x" + pukeColTrans[0][8].substr(4, 2))); heroSpawn.bodyParts.transform.colorTransform = new ColorTransform(heroSpawn.rMult, heroSpawn.gMult, heroSpawn.bMult, heroSpawn.aMult, heroSpawn.rOff, heroSpawn.gOff, heroSpawn.bOff, heroSpawn.aOff); game.addChild(heroSpawn); }; i = 0; while (i < defaultParticles.length) { makeParticle(defaultParticles[i][0], defaultParticles[i][1], defaultParticles[i][2], defaultParticles[i][3]); i++; }; totalVomit = (totalVomit + activeVomit); if (totalVomit > 100){ totalVomit = 100; }; i = 0; while (i < objects.length) { tar = this[objects[i]]; if (tar.t != 2){ game.addChild(tar); }; i++; }; if (editor){ i = 0; while (i < switches.length) { tar = this[objects[i]]; if ((((tar.t == 0)) || ((tar.t == 5)))){ game.setChildIndex(tar, (game.numChildren - 1)); }; tar.drawing = new MovieClip(); tar.addChild(tar.drawing); tar.drawing2 = new MovieClip(); tar.addChild(tar.drawing2); tar.drawing2.rotation = -(tar.rotation); tar.drawing2.graphics.lineStyle(2, 0xFFFF00); if (switches[i].length > 0){ j = 0; while (j < switches[i].length) { tar2 = this[doors[switches[i][j]]]; tx = Math.floor((tar2.x / tileX)); ty = Math.floor((tar2.y / tileY)); tar.drawing2.graphics.moveTo(0, 0); tar.drawing2.graphics.lineTo((((tx * tileX) - tar.x) + (tileX / 2)), (((ty * tileY) - tar.y) + (tileY / 2))); j++; }; }; i++; }; updateParticles(0); }; i = 0; while (i < switches.length) { if (switches[i].length > 0){ j = 0; while (j < switches[i].length) { tar2 = this[doors[switches[i][j]]]; tar2.gotoAndStop(1); j++; }; }; i++; }; addChild(HUD); setChildIndex(medal_popup, (numChildren - 1)); HUD.levelProps.addChild(HUD.levelProps.radios); if (editor){ HUD.grid = new MovieClip(); HUD.addChild(HUD.grid); HUD.setChildIndex(HUD.grid, 0); HUD.grid.cacheAsBitmap = true; HUD.grid.graphics.lineStyle(2, 0xFFFFFF, 0.2); i = 1; while (i < tilesX) { HUD.grid.graphics.moveTo((i * tileX), 0); HUD.grid.graphics.lineTo((i * tileX), sh); i++; }; j = 1; while (j < tilesY) { HUD.grid.graphics.moveTo(0, (j * tileY)); HUD.grid.graphics.lineTo(sw, (j * tileY)); j++; }; HUD.setChildIndex(HUD.levelProps, (HUD.numChildren - 1)); }; HUD.pukeBar.gotoAndStop((cPuke + 1)); stage.focus = stage; } public function makeParticle(_arg1, _arg2, _arg3, _arg4){ checkingFluid = true; if ((((checkTile(_arg1, _arg2) == 0)) || (true))){ if (_arg3 < 5){ activeVomit++; }; tar = (this[("part" + q)] = new MovieClip()); tar.x = (tar.ox1 = _arg1); tar.y = (tar.oy1 = _arg2); tar.rise = (tar.run = 0); tar.virgin = true; tar.swallow = false; tar.s = 25; tar.t = _arg3; tar.life = 0; tar.r = ((Math.random() * 3) + 7); tar.surrounds = _arg4; if (_arg4 == 0){ tar.surrounds = 0.5; }; if (_arg3 < 5){ myMatrix = new Matrix(); myMatrix.scale(0.025, 0.025); tar.col = pukeColor[_arg3]; tar.graphics.beginGradientFill(GradientType.RADIAL, [tar.col, tar.col], pukeAlpha, [50, 0xFF], myMatrix); tar.graphics.drawCircle(0, 0, 18); tar.graphics.endFill(); } else { tar.graphic = new pillGraphic(); tar.graphic.gotoAndStop((_arg3 - 4)); if (_arg3 == 5){ tar.graphic.anim.gotoAndStop(Math.ceil((Math.random() * tar.graphic.anim.totalFrames))); tar.rotation = (Math.random() * 360); }; tar.addChild(tar.graphic); }; tar.q = q; particles.push(("part" + q)); q++; return (tar); }; checkingFluid = false; } public function mDown(_arg1:MouseEvent){ if (editor == false){ clicking = true; } else { if (HUD.levelProps.visible){ if (HUD.levelProps.hitTestPoint(mouseX, mouseY) == false){ if (mouseY < 420){ HUD.levelProps.visible = false; }; }; } else { clicking = true; }; }; } public function restartLevel(_arg1:MouseEvent){ destroy(false); setup(); HUD.mapScreen.y = 0; HUD.mapScreen.settle = true; HUD.mapScreen.gotoAndStop(3); HUD.mapScreen.returnToGame.visible = true; HUD.mapScreen.restartLevel.visible = true; HUD.mapScreen.exitToTitle.visible = true; HUD.mapScreen.options.visible = true; } public function hitErase(_arg1:MouseEvent){ if (menu.eraseBox.visible == false){ menu.eraseBox.visible = true; stage.focus = menu.eraseBox.textBox; } else { if (menu.eraseBox.textBox.text.toLowerCase() == "delete"){ cookie.data.bg = true; cookie.data.sound = true; cookie.data.unlockedLevel = 0; cookie.data.qual = StageQuality.MEDIUM; cookie.flush(); showBG = true; sound = true; musicSound = undefined; unlockedLevel = (currentLevel = 0); stage.quality = StageQuality.MEDIUM; menu.winner.play(); } else { menu.failed.play(); }; menu.eraseBox.visible = false; }; } public function unPause(_arg1:MouseEvent){ pauseGame = false; } public function goto2D(_arg1:MouseEvent){ var e = _arg1; var req:URLRequest = new URLRequest("http://www.2DArray.net"); try { navigateToURL(req, "_blank"); } catch(e:Error) { trace("Navigate to URL failed", e.message); }; } public function outputLevel(_arg1:MouseEvent){ if (editor == true){ n = ""; i = 0; while (i < map.length) { n = (n + map[i]); if (i != (map.length - 1)){ n = (n + ","); } else { n = (n + ";"); }; i++; }; n = (n + (HUD.levelProps.levelName.text + ";")); n = (n + (String(HUD.levelProps.defaultPuke.value) + ";")); n = (n + (String(HUD.levelProps.radios.greenRadio.group.selectedData) + ";")); n = (n + (((heroSpawn.x + ",") + heroSpawn.y) + ";")); i = 0; while (i < particles.length) { tar = this[particles[i]]; if (checkTile(tar.x, tar.y)){ n = (n + ((((((tar.x + ",") + tar.y) + ",") + tar.t) + ",") + tar.surrounds)); } else { n = (n + ((((((tar.ox1 + ",") + tar.oy1) + ",") + tar.t) + ",") + tar.surrounds)); }; n = (n + "^"); i++; }; n = (n + ";"); i = 0; while (i < objects.length) { tar = this[objects[i]]; n = (n + ((((tar.x + ",") + tar.y) + ",") + tar.t)); if ((((tar.t == 0)) || ((tar.t == 5)))){ n = (n + ("," + (tar.rotation / 90))); }; n = (n + "^"); i++; }; n = (n + ";"); i = 0; while (i < switches.length) { n = (n + (switches[i] + "^")); i++; }; trace(n.length); bytes = new ByteArray(); bytes.writeUTFBytes(n); bytes.compress(); n = Base64.encodeByteArray(bytes); HUD.editorOutput.text = n; trace(n.length); trace(particles.length); }; } public function disableSound(_arg1:MouseEvent){ if (musicChannel != undefined){ musicChannel.stop(); }; sound = (cookie.data.sound = false); cookie.flush(); } public function kill(){ if (cHero != undefined){ this[("death" + (Math.floor((Math.random() * 4)) + 1))].play(); cHero.jumpCount = 0; cBody = new deadBody(); cTail1 = new deadTail1(); cTail2 = new deadTail2(); cBody.x = cHero.x; cBody.y = cHero.y; cTail1.x = cHero.x; cTail1.y = cHero.y; cTail2.x = cHero.x; cTail2.y = cHero.y; game.addChild(cTail2); game.addChild(cTail1); game.addChild(cBody); cBody.run = ((Math.random() - 0.5) * 10); cBody.rise = ((Math.random() - 1) * 10); cTail1.run = ((Math.random() - 0.5) * 10); cTail1.rise = ((Math.random() - 1) * 10); cTail2.run = ((Math.random() - 0.5) * 10); cTail2.rise = ((Math.random() - 1) * 10); this[("poof" + q)] = new poof(); this[("poof" + q)].gotoAndStop(6); this[("poof" + q)].x = cHero.x; this[("poof" + q)].y = cHero.y; this[("poof" + q)].rotation = ((Math.random() - 0.7) * 30); poofs.push(("poof" + q)); game.addChild(this[("poof" + q)]); q++; game.removeChild(cHero); cHero = undefined; }; } public function closeCredits(_arg1:MouseEvent){ menu.flasher.gotoAndPlay(2); menu.titleScreen.gotoAndStop(1); menu.titleScreen.eliSite.visible = false; menu.titleScreen.edSite.visible = false; menu.titleScreen.closeCredits.visible = false; menu.titleScreen.closeCredits.removeEventListener(MouseEvent.CLICK, closeCredits); } public function setLow(_arg1:MouseEvent){ stage.quality = (cookie.data.qual = StageQuality.LOW); cookie.flush(); } public function kDown(_arg1:KeyboardEvent){ if (keysDown.indexOf(_arg1.keyCode) == -1){ if ((((editor == true)) && ((HUD.levelProps.visible == false)))){ if (edSubMode == 0){ edChange = (((cTile + cPuke) + cDoor) + edMode); if (_arg1.keyCode == 65){ if (edMode == 0){ cTile--; tar = new tile(); if (cTile < 1){ cTile = tar.totalFrames; }; tar = null; } else { if (edMode == 2){ cPuke--; if (cPuke < 0){ cPuke = (pukeColor.length - 1); }; } else { if (edMode == 3){ cDoor--; if (cDoor < 0){ cDoor = 5; }; }; }; }; }; if (_arg1.keyCode == 68){ if (edMode == 0){ cTile++; tar = new tile(); if (cTile > tar.totalFrames){ cTile = 1; }; tar = null; } else { if (edMode == 2){ cPuke++; if (cPuke > (pukeColor.length - 1)){ cPuke = 0; }; } else { if (edMode == 3){ cDoor++; if (cDoor > 5){ cDoor = 0; }; }; }; }; }; if (_arg1.keyCode == 83){ edMode--; if (edMode < 0){ edMode = 3; }; }; if (_arg1.keyCode == 87){ edMode++; if (edMode > 3){ edMode = 0; }; }; if ((((cTile + cPuke) + cDoor) + edMode) != edChange){ setTooltip(); }; }; } else { if ((((((_arg1.keyCode == 80)) || ((_arg1.keyCode == 27)))) && (!((levelCompleted == true))))){ pauseGame = (pauseGame == false); if (pauseGame == true){ HUD.mapScreen.gotoAndStop(3); }; }; }; keysDown.push(_arg1.keyCode); }; } public function returnToMenu(){ destroy(editor); if (musicChannel != undefined){ }; map = undefined; gotoAndStop(1); } public function checkTile(_arg1, _arg2){ var _local3:*; var _local4:*; var _local5:*; var _local6:*; var _local7:*; if ((((((((_arg1 < 0)) || ((_arg2 < 0)))) || ((_arg1 >= sw)))) || ((_arg2 >= sh)))){ return (1); }; _local3 = map[Math.floor((_arg2 / tileY))][Math.floor((_arg1 / tileX))]; if (((!((_local3 == 0))) && (!((_local3 == acidTile))))){ return (tileTypes[map[Math.floor((_arg2 / tileY))][Math.floor((_arg1 / tileX))]]); }; _local4 = 0; while (_local4 < doors.length) { _local6 = this[doors[_local4]]; if ((((_local6.x == ((Math.floor((_arg1 / tileX)) * tileX) + (tileX / 2)))) && ((_local6.y == ((Math.floor((_arg2 / tileY)) * tileY) + (tileY / 2)))))){ if (_local6.t == 1){ if (_local6.currentFrame == _local6.totalFrames){ return (0); }; return (1); }; if (_local6.t == 4){ if (checkingFluid == true){ return (0); }; if (_local6.currentFrame == _local6.totalFrames){ return (0); }; return (1); }; break; }; _local4++; }; _local5 = 0; while (_local5 < acidTiles.length) { if ((((Math.floor((_arg1 / tileX)) == acidTiles[_local5][1])) && ((Math.floor((_arg2 / tileY)) == acidTiles[_local5][0])))){ _local7 = this[acidTiles[_local5][2]]; if (_local7.melt.currentFrame != _local7.melt.totalFrames){ if (acidParticle == true){ if (sound){ acidVolume = (acidVolume + 0.4); if (acidVolume > 1){ acidVolume = 1; }; }; _local7.melt.play(); if (Math.random() < 0.2){ this[("steam" + q)] = new steamCloud(); this[("steam" + q)].x = _arg1; this[("steam" + q)].y = _arg2; this[("steam" + q)].alpha = Math.random(); this[("steam" + q)].scaleX = ((Math.random() * 0.5) + 0.5); if (Math.random() < 0.5){ this[("steam" + q)].scaleX = (this[("steam" + q)].scaleX * -1); }; this[("steam" + q)].scaleY = ((Math.random() * 0.5) + 0.5); this[("steam" + q)].rotation = ((Math.random() - 0.5) * 50); game.addChild(this[("steam" + q)]); steams.push(("steam" + q)); q++; }; }; return (1); } else { return (0); }; }; _local5++; }; return (0); } public function playIntros(_arg1:MouseEvent){ if (cutscene != true){ intro.play(); }; intros.play(); } public function mUp(_arg1:MouseEvent){ clicking = false; } public function updateParticles(_arg1){ var _local2:Object; var _local3:Object; 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; checkingFluid = true; kk = 0; particleBitmap.fillRect(new Rectangle(0, 0, sw, sh), 0); tempBitmap.fillRect(new Rectangle(0, 0, sw, sh), 0); partSort = particles.slice(); partSort.sort(sortX); time1 = getTimer(); _local4 = 0; while (_local4 < partSort.length) { _local2 = this[partSort[_local4]]; if (((!((_local2 == undefined))) && (!((_local2 == null))))){ if (_arg1){ if (((((!((_local2.t == 2))) && (!((_local2.t == 3))))) && (!((_local2.t == 8))))){ _local2.run = (_local2.run * decay); _local2.rise = (_local2.rise + (gravity / (_local2.surrounds * 2))); } else { if ((((_local2.t == 2)) || ((_local2.t == 8)))){ _local2.run = (_local2.run * 0.9); _local2.rise = (_local2.rise * 0.9); if (Math.abs(_local2.run) < 0.1){ _local2.run = 0; }; if (Math.abs(_local2.rise) < 0.1){ _local2.rise = 0; }; } else { if (_local2.t == 3){ if (_local2.surrounds == 0.5){ _local2.run = (_local2.run * decay); _local2.rise = (_local2.rise + gravity); } else { _local2.run = (_local2.run * 0.3); _local2.rise = (_local2.rise * 0.3); if (Math.abs(_local2.run) < 0.1){ _local2.run = 0; }; if (Math.abs(_local2.rise) < 0.1){ _local2.rise = 0; }; }; }; }; }; if (_local2.t < 5){ _local2.rotation = ((Math.atan2(_local2.rise, _local2.run) * 180) / Math.PI); _local2.speed = ((_local2.run * _local2.run) + (_local2.rise * _local2.rise)); if (_local2.speed > 250){ _local2.speed = 250; }; _local2.scaleX = ((_local2.speed * 0.0025) + 1); _local2.scaleY = ((-(_local2.speed) * 0.002) + 1); } else { _local2.rotation = (_local2.rotation + _local2.run); if (_local2.oSurrounds != undefined){ if (_local2.oSurrounds > 0.6){ _local2.rise = (_local2.rise - ((_local2.oSurrounds - 0.6) / 4)); }; }; }; }; _local2.life++; if (_local2.virgin == false){ if ((((_local2.swallow == false)) && (((!((cHero == undefined))) || ((editor == true)))))){ if (editor == false){ _local6 = (cHero.x - _local2.x); _local7 = (cHero.y - _local2.y); _local12 = (cHero.r + _local2.r); } else { _local6 = (mouseX - _local2.x); _local7 = (mouseY - _local2.y); _local12 = 25; }; if ((((_local6 == 0)) && ((_local7 == 0)))){ _local6 = 0.1; }; if ((((((_local6 * _local6) + (_local7 * _local7)) < (_local12 * _local12))) && ((_local2.life > 2)))){ if (editor == false){ if (((!((cPuke == 4))) && ((_local2.t == 4)))){ if (sound){ acidDeathSound.play(); }; playerKilled = true; }; _local13 = Math.sqrt(((_local6 * _local6) + (_local7 * _local7))); if (((!((_local2.t == 3))) || ((_local2.surrounds == 0.5)))){ if (_local2.t < 5){ cHero.partHits++; _local16 = (_local6 / _local13); _local2.run = (_local2.run - (((_local16 * (_local12 - _local13)) * 0.1) / (cHero.partHits * cHero.partHits))); _local16 = (_local7 / _local13); _local2.rise = (_local2.rise - (((_local16 * (_local12 - _local13)) * 0.1) / (cHero.partHits * cHero.partHits))); } else { _local16 = (_local6 / _local13); _local2.run = (_local2.run - ((_local16 * (_local12 - _local13)) * 0.5)); _local16 = (_local7 / _local13); _local2.rise = (_local2.rise - ((_local16 * (_local12 - _local13)) * 0.5)); }; } else { if ((((Math.abs((cHero.x - _local2.x)) < (_local2.r / 1.2))) && ((cHero.y < _local2.y)))){ cHero.partStanding = true; }; _local16 = (_local6 / _local13); cHero.run = (cHero.run + ((_local16 * (_local12 - _local13)) * 0.1)); cHero.x = (cHero.x + ((_local16 * (_local12 - _local13)) * 0.3)); _local16 = (_local7 / _local13); cHero.rise = (cHero.rise + ((_local16 * (_local12 - _local13)) * 0.1)); cHero.y = (cHero.y + ((_local16 * (_local12 - _local13)) * 0.3)); }; }; if (((((((isDown(32)) && ((((((editor == true)) && ((edMode == 2)))) || ((editor == false)))))) && ((clicking == false)))) && ((HUD.levelProps.visible == false)))){ _local2.swallow = true; if (_local2.t == 5){ totalVomit = (totalVomit + 10); if (totalVomit > 100){ totalVomit = 100; }; }; if ((((_local2.t > 5)) && (!((cHero == undefined))))){ changePuke((_local2.t - 6)); }; if (_local2.t < 5){ activeVomit--; }; if (sound){ slurpVolume = 1; }; if (editor == false){ if (cHero.faceWhole.face.munch != undefined){ cHero.faceWhole.face.munch.play(); }; } else { HUD.editorOutput.text = ""; }; }; }; }; } else { _local2.virgin = false; }; if (_local2.swallow == true){ if (_local2.t < 5){ myMatrix = new Matrix(); myMatrix.scale((0.001 * _local2.s), (0.001 * _local2.s)); _local2.graphics.clear(); _local2.graphics.beginGradientFill(GradientType.RADIAL, [_local2.col, _local2.col], pukeAlpha, [50, 0xFF], myMatrix); _local2.graphics.drawCircle(0, 0, 25); _local2.graphics.endFill(); _local2.s = (_local2.s * 0.7); } else { _local2.scaleX = (_local2.scaleX * 0.7); _local2.scaleY = (_local2.scaleY * 0.7); }; }; if (_arg1){ if (_local2.swallow == false){ if (_local2.t == 4){ acidParticle = true; }; if (checkTile(_local2.x, _local2.y)){ _local2.x = _local2.ox1; _local2.y = _local2.oy1; }; if (checkTile((_local2.x + _local2.run), _local2.y) == 1){ _local2.run = (_local2.run * -0.3); _local2.surrounds = (_local2.surrounds + 0.1); if (_local2.t == 3){ _local2.rise = (_local2.run = 0); }; }; if (checkTile(_local2.x, (_local2.y + _local2.rise)) == 1){ if (((((_local2.y + _local2.rise) < sh)) && (((_local2.y + _local2.rise) >= 0)))){ if ((((_local2.rise > 0)) && ((map[Math.floor(((_local2.y + _local2.rise) / tileY))][Math.floor((_local2.x / tileX))] == conv1)))){ _local2.run = (_local2.run + 0.3); } else { if ((((_local2.rise > 0)) && ((map[Math.floor(((_local2.y + _local2.rise) / tileY))][Math.floor((_local2.x / tileX))] == conv2)))){ _local2.run = (_local2.run - 0.3); }; }; }; _local2.surrounds = (_local2.surrounds + 0.1); if (_local2.t == 3){ _local2.rise = (_local2.run = 0); }; _local2.rise = (_local2.rise * -0.3); }; if (_local2.t == 4){ acidParticle = false; }; _local2.x = (_local2.x + _local2.run); _local2.y = (_local2.y + _local2.rise); _local2.ox1 = _local2.x; _local2.oy1 = _local2.y; _local2.ox = _local2.tx; _local2.oy = _local2.ty; _local2.tx = Math.floor((_local2.x * spacialRecip)); _local2.ty = Math.floor((_local2.y * spacialRecip)); }; }; _local2.xHits = []; _local2.hits = []; _local2.hitAnything = false; if (_local2.t != 3){ _local2.oSurrounds = _local2.surrounds; _local2.surrounds = 0.5; }; _local5 = (_local4 + 1); while (_local5 < partSort.length) { if (((!((this[partSort[_local5]] == undefined))) && (!((this[partSort[_local5]] == null))))){ _local3 = this[partSort[_local5]]; if (_local3.x < ((_local2.x + _local2.r) + _local3.r)){ if (_local3.y > (_local2.y - (_local2.r + _local3.r))){ if (_local3.y < ((_local2.y + _local2.r) + _local3.r)){ _local2.hits.push(partSort[_local5]); }; }; } else { break; }; }; _local5 = (_local5 + 1); }; }; _local4 = (_local4 + 1); }; partSet = (partSet == 0); partLen = particles.length; _local4 = 0; while (_local4 < partLen) { _local2 = this[particles[_local4]]; if (((!((_local2 == undefined))) && (!((_local2 == null))))){ if (_arg1){ if (_local2.swallow == false){ _local10 = 0; while (_local10 < _local2.hits.length) { if (this[_local2.hits[_local10]] != undefined){ _local3 = this[_local2.hits[_local10]]; _local6 = (_local2.x - _local3.x); _local7 = (_local2.y - _local3.y); if ((((_local6 == 0)) && ((_local7 == 0)))){ _local6 = 0.01; }; _local13 = ((_local6 * _local6) + (_local7 * _local7)); if (_local13 < ((_local2.r + _local3.r) * (_local2.r + _local3.r))){ _local13 = Math.sqrt(_local13); dist2 = ((1 / _local13) * ((_local2.r + _local3.r) - _local13)); if (_local2.t == 3){ if (_local3.surrounds != 0.5){ _local2.surrounds = (_local2.surrounds + 0.1); }; } else { if ((((_local2.t < 5)) || ((_local3.t < 5)))){ if (_local3.t != 3){ _local2.surrounds++; }; }; }; if (_local3.t == 3){ if (_local2.surrounds != 0.5){ _local3.surrounds = (_local3.surrounds + 0.1); }; } else { if ((((_local2.t < 5)) || ((_local3.t < 5)))){ if (_local2.t != 3){ _local3.surrounds++; }; }; }; _local14 = ((_local6 * dist2) * 0.3); _local15 = ((_local7 * dist2) * 0.3); _local2.run = (_local2.run + _local14); _local2.rise = (_local2.rise + _local15); _local3.run = (_local3.run - _local14); _local3.rise = (_local3.rise - _local15); _local14 = ((_local6 * dist2) * 0.5); _local15 = ((_local7 * dist2) * 0.5); _local2.x = (_local2.x + _local14); _local2.y = (_local2.y + _local15); _local3.x = (_local3.x - _local14); _local3.y = (_local3.y - _local15); if ((((_local2.t == 3)) && (!((_local3.t == 3))))){ _local2.x = (_local2.x - (_local14 / 2)); _local2.y = (_local2.y - (_local15 / 2)); }; if ((((_local3.t == 3)) && (!((_local2.t == 3))))){ _local3.x = (_local3.x + (_local14 / 2)); _local3.y = (_local3.y + (_local15 / 2)); }; _local2.run = (_local2.run * 0.99); _local2.rise = (_local2.rise * 0.99); _local3.run = (_local3.run * 0.99); _local3.rise = (_local3.rise * 0.99); }; }; _local10++; }; }; }; if ((((editor == false)) && ((_local2.t < 5)))){ _local8 = 0; while (_local8 < objects.length) { _local3 = this[objects[_local8]]; if (_local3.t == 5){ if (_local3.switched == false){ if (_local3.rotation == 0){ _local6 = (_local3.x - _local2.x); _local7 = ((_local3.y - 15) - _local2.y); } else { if (_local3.rotation == 90){ _local6 = ((_local3.x + 15) - _local2.x); _local7 = (_local3.y - _local2.y); } else { if (_local3.rotation == -180){ _local6 = (_local3.x - _local2.x); _local7 = ((_local3.y + 15) - _local2.y); } else { if (_local3.rotation == -90){ _local6 = ((_local3.x - 15) - _local2.x); _local7 = (_local3.y - _local2.y); }; }; }; }; if (((_local6 * _local6) + (_local7 * _local7)) < (15 * 15)){ if (_local3.switched != true){ _local3.switched = true; if (sound){ click1.play(); }; }; _local3.play(); activeVomit--; totalVomit--; _local2.swallow = true; _local2.hitButton = true; _local2.gx = (_local6 + _local2.x); _local2.gy = (_local7 + _local2.y); _local9 = 0; while (_local9 < switches[_local8].length) { _local3 = this[doors[switches[_local8][_local9]]]; if (_local3.currentFrame == 1){ _local3.play(); }; _local9++; }; }; }; }; _local8++; }; }; if (_local2.swallow == true){ if (cHero != undefined){ if (_local2.hitButton == undefined){ _local2.gx = (cHero.x + cHero.faceWhole.x); _local2.gy = ((cHero.y + cHero.faceWhole.y) + 2); _local2.x = (_local2.x + cHero.run); _local2.y = (_local2.y + cHero.rise); }; _local6 = (_local2.gx - _local2.x); _local7 = (_local2.gy - _local2.y); } else { if (editor == true){ _local2.gx = mouseX; _local2.gy = mouseY; _local6 = (_local2.gx - _local2.x); _local7 = (_local2.gy - _local2.y); } else { if (_local2.hitButton == undefined){ _local2.s = 0; }; }; }; if ((((((_local6 * _local6) + (_local7 * _local7)) > 7)) && ((_local2.s > 2)))){ _local2.x = (_local2.x + (_local6 * 0.5)); _local2.y = (_local2.y + (_local7 * 0.5)); } else { this[particles[_local4]] = null; particles.splice(_local4, 1); _local4--; partLen--; _local2 = null; }; }; if (_local2 != null){ particleBitmap.draw(_local2, _local2.transform.matrix); }; }; _local4++; }; particleBitmap.threshold(particleBitmap, new Rectangle(0, 0, sw, sh), new Point(0, 0), "<", 2147483648); checkingFluid = false; } public function destroy(_arg1){ if (musicChannel != undefined){ }; fgBitmap.dispose(); bgBitmap.dispose(); fgFilter.dispose(); particleBitmap.dispose(); tempBitmap.dispose(); slurpChannel.stop(); waterChannel.stop(); acidChannel.stop(); pukeChannel.stop(); if (cBack != undefined){ game.removeChild(this[cBack]); this[cBack] = null; }; slurpChannel = (slurpSound = (slurpTransform = null)); waterChannel = (waterSound = (waterTransform = null)); acidChannel = (acidLoopSound = (acidTransform = null)); pukeChannel = (pukeSound = (pukeTransform = null)); tar = (tar2 = (cHero = (genericDraw = (genericTile = (genericMask = null))))); i = 0; while (i < particles.length) { this[particles[i]] = null; i++; }; i = 0; while (i < bubbles.length) { this[bubbles[i]] = null; i++; }; i = 0; while (i < poofs.length) { this[poofs[i]] = null; i++; }; stage.removeEventListener(Event.ENTER_FRAME, eFrame); stage.removeEventListener(MouseEvent.MOUSE_DOWN, mDown); stage.removeEventListener(MouseEvent.MOUSE_UP, mUp); stage.removeEventListener(KeyboardEvent.KEY_DOWN, kDown); stage.removeEventListener(KeyboardEvent.KEY_UP, kUp); HUD.mapScreen.returnToGame.removeEventListener(MouseEvent.CLICK, unPause); HUD.mapScreen.restartLevel.removeEventListener(MouseEvent.CLICK, restartLevel); HUD.mapScreen.exitToTitle.removeEventListener(MouseEvent.CLICK, exitToTitle); HUD.mapScreen.options.AAHigh.removeEventListener(MouseEvent.CLICK, setHigh); HUD.mapScreen.options.AAMedium.removeEventListener(MouseEvent.CLICK, setMedium); HUD.mapScreen.options.AALow.removeEventListener(MouseEvent.CLICK, setLow); HUD.mapScreen.options.enableBG.removeEventListener(MouseEvent.CLICK, enableBG); HUD.mapScreen.options.disableBG.removeEventListener(MouseEvent.CLICK, disableBG); HUD.mapScreen.options.enableSound.removeEventListener(MouseEvent.CLICK, enableSound); HUD.mapScreen.options.disableSound.removeEventListener(MouseEvent.CLICK, disableSound); particles = null; bubbles = null; cBody = (cTail1 = (cTail2 = null)); removeChild(game); if (_arg1 == 1){ tilesBitmap.dispose(); HUD.removeChild(tileDisplay); }; removeChild(HUD); } } }//package spewer_fla
Section 95
//menu_150 (spewer_fla.menu_150) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class menu_150 extends MovieClip { public var scanLines:MovieClip; public var loadBox:TextField; public var chapters:MovieClip; public var playButton:SimpleButton; public var variants:MovieClip; public var statDisp:TextField; public var editButton:SimpleButton; public var returnToGame:SimpleButton; public var options:MovieClip; public var exitToTitle:SimpleButton; public var titleScreen:MovieClip; public var levelNameDisp:TextField; public var restartLevel:SimpleButton; public function menu_150(){ addFrameScript(0, frame1, 1, frame2); } function frame2(){ if (root.currentFrame == 2){ titleScreen.eliSite.visible = false; titleScreen.edSite.visible = false; }; } function frame1(){ if (root.unlockedLevel <= 54){ chapters.gotoAndStop(1); } else { chapters.gotoAndStop(2); }; } } }//package spewer_fla
Section 96
//menu_58 (spewer_fla.menu_58) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class menu_58 extends MovieClip { public function menu_58(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package spewer_fla
Section 97
//NewgroundsAPI_Ad_Unit_38 (spewer_fla.NewgroundsAPI_Ad_Unit_38) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import com.newgrounds.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class NewgroundsAPI_Ad_Unit_38 extends MovieClip { public var background:MovieClip; public function NewgroundsAPI_Ad_Unit_38(){ addFrameScript(0, frame1); } public function attachAd(_arg1:Object, _arg2:Object):void{ NewgroundsAPI.attachFlashAd(this); } function frame1(){ NewgroundsAPI.addEventListener(NewgroundsAPI.events.ADS_APPROVED, attachAd); background.visible = false; } } }//package spewer_fla
Section 98
//NewgroundsAPI_Connector_61 (spewer_fla.NewgroundsAPI_Connector_61) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import com.newgrounds.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class NewgroundsAPI_Connector_61 extends MovieClip { public var closeButton:SimpleButton; public function NewgroundsAPI_Connector_61(){ addFrameScript(0, frame1); } public function initialize(_arg1:Object):void{ NewgroundsAPI.setMovieVersion(_arg1.movie_version); NewgroundsAPI.connectMovie(root, _arg1.movie_id.toString(), _arg1.enc_key, _arg1.debug_mode); closeButton.addEventListener(MouseEvent.CLICK, closeHandler); if (((NewgroundsAPI.isNewgrounds()) || (_arg1.debug_mode))){ NewgroundsAPI.addEventListener(NewgroundsAPI.events.MOVIE_CONNECTED, checkConnection); if (((!(NewgroundsAPI.hasUserSession())) && (!(_arg1.debug_mode)))){ visible = true; gotoAndStop(2); }; }; NewgroundsAPI.loadMedals(); } public function closeHandler(_arg1:MouseEvent):void{ visible = false; } function frame1(){ visible = false; stop(); } public function checkConnection(_arg1:Object, _arg2:Object):void{ if (!_arg1.success){ visible = true; gotoAndStop(3); }; } } }//package spewer_fla
Section 99
//NewgroundsAPI_Medal_Popup_63 (spewer_fla.NewgroundsAPI_Medal_Popup_63) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import com.newgrounds.*; import flash.geom.*; import com.adobe.utils.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class NewgroundsAPI_Medal_Popup_63 extends MovieClip { public var medal_icon:MovieClip; public var myBitmapData:BitmapData; public var medalValueText:TextField; public var bitmapClass:Class; public var medal_name:String; public var pop_delay:Timer; public var badChars:String; public var medal_value:String; public var medalClassName:String; public var medalNameText:TextField; public var i:uint; public function NewgroundsAPI_Medal_Popup_63(){ addFrameScript(0, frame1, 9, frame10); } function frame10(){ medalClassName = medal_name; badChars = "~`!@#$%^&*()-+=[{]}|;:'\"\\,<.>/? "; i = 0; while (i < badChars.length) { medalClassName = StringUtil.remove(medalClassName, badChars.charAt(i)); i++; }; try { bitmapClass = Class(getDefinitionByName(medalClassName)); } catch(e:Error) { trace((("Couldn't find medal image with class name " + medalClassName) + "!")); }; if (bitmapClass){ myBitmapData = new bitmapClass(0, 0); medal_icon.addChild(new Bitmap(myBitmapData)); }; medalNameText.text = medal_name; medalValueText.text = medal_value; stop(); } public function unlockMedal(_arg1:String):void{ var _local3:*; var _local4:*; var _local5:String; pop_delay.stop(); var _local2:Array = NewgroundsAPI.getMedals(); for (_local3 in _local2) { trace(_local2[_local3].medal_name); }; _local4 = null; for (_local5 in _local2) { if (_local2[_local5].medal_name == _arg1){ _local4 = _local2[_local5]; medal_name = _local4.medal_name; medal_value = (_local4.medal_value + "pts"); NewgroundsAPI.unlockMedal(medal_name); pop_delay.start(); visible = true; gotoAndPlay(2); break; }; }; } function frame1(){ pop_delay = new Timer(3000, 1); pop_delay.addEventListener(TimerEvent.TIMER, endDelay); medal_name = "?????"; medal_value = "???"; visible = false; stop(); } public function endDelay(_arg1:TimerEvent):void{ if (medal_icon.getChildAt(0)){ medal_icon.removeChildAt(0); }; gotoAndPlay(10); pop_delay.stop(); } } }//package spewer_fla
Section 100
//nglinkcontainer_17 (spewer_fla.nglinkcontainer_17) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class nglinkcontainer_17 extends MovieClip { public var hitButton:SimpleButton; public function nglinkcontainer_17(){ addFrameScript(0, frame1); } function frame1(){ hitButton.addEventListener(MouseEvent.CLICK, gotoNG); } public function gotoNG(_arg1:MouseEvent){ var e = _arg1; var req:URLRequest = new URLRequest("http://www.newgrounds.com"); try { navigateToURL(req, "_blank"); } catch(e:Error) { trace("Navigate to URL failed", e.message); }; } } }//package spewer_fla
Section 101
//objectloader_67 (spewer_fla.objectloader_67) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class objectloader_67 extends MovieClip { public function objectloader_67(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package spewer_fla
Section 102
//ourintro_1 (spewer_fla.ourintro_1) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class ourintro_1 extends MovieClip { public function ourintro_1(){ addFrameScript(0, frame1, 245, frame246); } function frame1(){ stop(); } function frame246(){ stop(); } } }//package spewer_fla
Section 103
//pukebarflash_148 (spewer_fla.pukebarflash_148) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class pukebarflash_148 extends MovieClip { public function pukebarflash_148(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package spewer_fla
Section 104
//resetscreen_162 (spewer_fla.resetscreen_162) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class resetscreen_162 extends MovieClip { public function resetscreen_162(){ addFrameScript(0, frame1); } function frame1(){ if (root.resetScreen == undefined){ gotoAndStop(Math.ceil((Math.random() * totalFrames))); } else { gotoAndStop(root.resetScreen); }; } } }//package spewer_fla
Section 105
//soundloader_66 (spewer_fla.soundloader_66) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class soundloader_66 extends MovieClip { public function soundloader_66(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package spewer_fla
Section 106
//suckup01_325 (spewer_fla.suckup01_325) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class suckup01_325 extends MovieClip { public function suckup01_325(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package spewer_fla
Section 107
//suckup01gish_338 (spewer_fla.suckup01gish_338) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class suckup01gish_338 extends MovieClip { public function suckup01gish_338(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package spewer_fla
Section 108
//suckup01red_330 (spewer_fla.suckup01red_330) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class suckup01red_330 extends MovieClip { public function suckup01red_330(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package spewer_fla
Section 109
//suckup01white_334 (spewer_fla.suckup01white_334) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class suckup01white_334 extends MovieClip { public function suckup01white_334(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package spewer_fla
Section 110
//suckup01yellow_342 (spewer_fla.suckup01yellow_342) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class suckup01yellow_342 extends MovieClip { public function suckup01yellow_342(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package spewer_fla
Section 111
//Symbol49_293 (spewer_fla.Symbol49_293) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class Symbol49_293 extends MovieClip { public function Symbol49_293(){ addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4, 4, frame5, 5, frame6, 6, frame7, 7, frame8, 8, frame9, 9, frame10, 10, frame11, 11, frame12, 12, frame13, 13, frame14, 14, frame15, 15, frame16, 16, frame17, 17, frame18, 18, frame19, 19, frame20, 20, frame21, 21, frame22, 22, frame23, 23, frame24, 24, frame25); } function frame10(){ stop(); } function frame11(){ stop(); } function frame12(){ stop(); } function frame13(){ stop(); } function frame14(){ stop(); } function frame15(){ stop(); } function frame16(){ stop(); } function frame17(){ stop(); } function frame18(){ play(); } function frame19(){ play(); } function frame1(){ stop(); } function frame2(){ stop(); } function frame3(){ stop(); } function frame4(){ stop(); } function frame5(){ stop(); } function frame6(){ stop(); } function frame7(){ stop(); } function frame20(){ play(); } function frame9(){ stop(); } function frame22(){ play(); } function frame23(){ play(); } function frame24(){ play(); } function frame25(){ stop(); } function frame8(){ stop(); } function frame21(){ play(); } } }//package spewer_fla
Section 112
//title_46 (spewer_fla.title_46) package spewer_fla { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class title_46 extends MovieClip { public var closeCredits:SimpleButton; public var edSite:SimpleButton; public var eliSite:SimpleButton; public function title_46(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package spewer_fla
Section 113
//acidLoop (acidLoop) package { import flash.media.*; public dynamic class acidLoop extends Sound { } }//package
Section 114
//acidSound (acidSound) package { import flash.media.*; public dynamic class acidSound extends Sound { } }//package
Section 115
//Airhead (Airhead) package { import flash.display.*; public dynamic class Airhead extends BitmapData { public function Airhead(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 116
//Architect (Architect) package { import flash.display.*; public dynamic class Architect extends BitmapData { public function Architect(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 117
//backgroundAnimation (backgroundAnimation) package { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class backgroundAnimation extends MovieClip { public var gg:MovieClip; public var bg:MovieClip; public var screens:MovieClip; public var glass:MovieClip; public var whiteboard:MovieClip; public var doc:MovieClip; public function backgroundAnimation(){ addFrameScript(0, frame1); } function frame1(){ if (root.gameMode != "story"){ whiteboard.visible = false; } else { if (root.currentLevel < 11){ whiteboard.gotoAndStop(1); } else { if (root.currentLevel < 22){ whiteboard.gotoAndStop(2); } else { if (root.currentLevel < 33){ whiteboard.gotoAndStop(3); } else { if (root.currentLevel < 44){ whiteboard.gotoAndStop(4); } else { whiteboard.visible = false; }; }; }; }; }; if (root.chapterEnd != undefined){ if (root.chapterEnd == true){ glass.visible = (gg.visible = false); whiteboard.filters = []; screens.filters = []; bg.filters = []; if (root.currentLevel == 10){ doc.gotoAndStop(5); }; if (root.currentLevel == 21){ doc.gotoAndStop(6); }; if (root.currentLevel == 32){ doc.gotoAndStop(7); }; if (root.currentLevel == 43){ doc.gotoAndStop(8); }; if (root.currentLevel == 54){ doc.gotoAndStop(9); }; }; }; } } }//package
Section 118
//blueBug (blueBug) package { import flash.display.*; public dynamic class blueBug extends MovieClip { } }//package
Section 119
//bubble (bubble) package { import flash.display.*; public dynamic class bubble extends MovieClip { } }//package
Section 120
//Burp (Burp) package { import flash.display.*; public dynamic class Burp extends BitmapData { public function Burp(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 121
//clickA (clickA) package { import flash.media.*; public dynamic class clickA extends Sound { } }//package
Section 122
//clickB (clickB) package { import flash.media.*; public dynamic class clickB extends Sound { } }//package
Section 123
//ColorPicker_backgroundSkin (ColorPicker_backgroundSkin) package { import flash.display.*; public dynamic class ColorPicker_backgroundSkin extends MovieClip { } }//package
Section 124
//ColorPicker_colorWell (ColorPicker_colorWell) package { import flash.display.*; public dynamic class ColorPicker_colorWell extends MovieClip { } }//package
Section 125
//ColorPicker_disabledSkin (ColorPicker_disabledSkin) package { import flash.display.*; public dynamic class ColorPicker_disabledSkin extends MovieClip { } }//package
Section 126
//ColorPicker_downSkin (ColorPicker_downSkin) package { import flash.display.*; public dynamic class ColorPicker_downSkin extends MovieClip { } }//package
Section 127
//ColorPicker_overSkin (ColorPicker_overSkin) package { import flash.display.*; public dynamic class ColorPicker_overSkin extends MovieClip { } }//package
Section 128
//ColorPicker_swatchSelectedSkin (ColorPicker_swatchSelectedSkin) package { import flash.display.*; public dynamic class ColorPicker_swatchSelectedSkin extends MovieClip { } }//package
Section 129
//ColorPicker_swatchSkin (ColorPicker_swatchSkin) package { import flash.display.*; public dynamic class ColorPicker_swatchSkin extends Sprite { } }//package
Section 130
//ColorPicker_textFieldSkin (ColorPicker_textFieldSkin) package { import flash.display.*; public dynamic class ColorPicker_textFieldSkin extends MovieClip { } }//package
Section 131
//ColorPicker_upSkin (ColorPicker_upSkin) package { import flash.display.*; public dynamic class ColorPicker_upSkin extends MovieClip { } }//package
Section 132
//Conclusion (Conclusion) package { import flash.display.*; public dynamic class Conclusion extends BitmapData { public function Conclusion(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 133
//convArrow (convArrow) package { import flash.display.*; public dynamic class convArrow extends MovieClip { } }//package
Section 134
//deadBody (deadBody) package { import flash.display.*; public dynamic class deadBody extends MovieClip { } }//package
Section 135
//deadTail1 (deadTail1) package { import flash.display.*; public dynamic class deadTail1 extends MovieClip { } }//package
Section 136
//deadTail2 (deadTail2) package { import flash.display.*; public dynamic class deadTail2 extends MovieClip { } }//package
Section 137
//deathA (deathA) package { import flash.media.*; public dynamic class deathA extends Sound { } }//package
Section 138
//deathB (deathB) package { import flash.media.*; public dynamic class deathB extends Sound { } }//package
Section 139
//deathC (deathC) package { import flash.media.*; public dynamic class deathC extends Sound { } }//package
Section 140
//deathD (deathD) package { import flash.media.*; public dynamic class deathD extends Sound { } }//package
Section 141
//door (door) package { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class door extends MovieClip { public function door(){ addFrameScript(0, frame1, 7, frame8); } function frame8(){ stop(); } function frame1(){ stop(); } } }//package
Section 142
//doorSwitch (doorSwitch) package { import flash.display.*; public dynamic class doorSwitch extends MovieClip { } }//package
Section 143
//ending (ending) package { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class ending extends MovieClip { public function ending(){ addFrameScript(9, frame10, 2098, frame2099); } function frame2099(){ stop(); } function frame10(){ root.pauseGame = true; root.cutscene = true; } } }//package
Section 144
//focusRectSkin (focusRectSkin) package { import flash.display.*; public dynamic class focusRectSkin extends MovieClip { } }//package
Section 145
//gate (gate) package { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class gate extends MovieClip { public function gate(){ addFrameScript(14, frame15); } function frame15(){ stop(); } } }//package
Section 146
//Gishy (Gishy) package { import flash.display.*; public dynamic class Gishy extends BitmapData { public function Gishy(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 147
//goalDoor (goalDoor) package { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class goalDoor extends MovieClip { public function goalDoor(){ addFrameScript(8, frame9); } function frame9(){ stop(); } } }//package
Section 148
//headsUpDisplay (headsUpDisplay) package { import flash.display.*; import flash.text.*; public dynamic class headsUpDisplay extends MovieClip { public var barMask:MovieClip; public var propsButton:SimpleButton; public var levelProps:MovieClip; public var editorOutput:TextField; public var pukeFlash:MovieClip; public var testLevel:SimpleButton; public var helpButton:SimpleButton; public var editLevel:SimpleButton; public var tutorial:MovieClip; public var edHUD:MovieClip; public var barCont:MovieClip; public var outputButton:SimpleButton; public var mapScreen:MovieClip; public var pukeBar:MovieClip; public var nameDisplay:TextField; public var helpMe:MovieClip; } }//package
Section 149
//introSong (introSong) package { import flash.media.*; public dynamic class introSong extends Sound { } }//package
Section 150
//jump0 (jump0) package { import flash.media.*; public dynamic class jump0 extends Sound { } }//package
Section 151
//jump1 (jump1) package { import flash.media.*; public dynamic class jump1 extends Sound { } }//package
Section 152
//jump2 (jump2) package { import flash.media.*; public dynamic class jump2 extends Sound { } }//package
Section 153
//jump3 (jump3) package { import flash.media.*; public dynamic class jump3 extends Sound { } }//package
Section 154
//land0 (land0) package { import flash.media.*; public dynamic class land0 extends Sound { } }//package
Section 155
//land1 (land1) package { import flash.media.*; public dynamic class land1 extends Sound { } }//package
Section 156
//land2 (land2) package { import flash.media.*; public dynamic class land2 extends Sound { } }//package
Section 157
//land3 (land3) package { import flash.media.*; public dynamic class land3 extends Sound { } }//package
Section 158
//mapBox (mapBox) package { import flash.display.*; public dynamic class mapBox extends MovieClip { public var anim:MovieClip; public var boxLighten:MovieClip; } }//package
Section 159
//monitorSound (monitorSound) package { import flash.media.*; public dynamic class monitorSound extends Sound { } }//package
Section 160
//music (music) package { import flash.media.*; public dynamic class music extends Sound { } }//package
Section 161
//Perfectionist (Perfectionist) package { import flash.display.*; public dynamic class Perfectionist extends BitmapData { public function Perfectionist(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 162
//pillGraphic (pillGraphic) package { import flash.display.*; public dynamic class pillGraphic extends MovieClip { public var anim:MovieClip; } }//package
Section 163
//poof (poof) package { import flash.display.*; public dynamic class poof extends MovieClip { public var anim:MovieClip; } }//package
Section 164
//powerupSound (powerupSound) package { import flash.media.*; public dynamic class powerupSound extends Sound { } }//package
Section 165
//pukeButton (pukeButton) package { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class pukeButton extends MovieClip { public function pukeButton(){ addFrameScript(4, frame5); } function frame5(){ stop(); } } }//package
Section 166
//pukeLoop (pukeLoop) package { import flash.media.*; public dynamic class pukeLoop extends Sound { } }//package
Section 167
//RadioButton_disabledIcon (RadioButton_disabledIcon) package { import flash.display.*; public dynamic class RadioButton_disabledIcon extends MovieClip { } }//package
Section 168
//RadioButton_downIcon (RadioButton_downIcon) package { import flash.display.*; public dynamic class RadioButton_downIcon extends MovieClip { } }//package
Section 169
//RadioButton_overIcon (RadioButton_overIcon) package { import flash.display.*; public dynamic class RadioButton_overIcon extends MovieClip { } }//package
Section 170
//RadioButton_selectedDisabledIcon (RadioButton_selectedDisabledIcon) package { import flash.display.*; public dynamic class RadioButton_selectedDisabledIcon extends MovieClip { } }//package
Section 171
//RadioButton_selectedDownIcon (RadioButton_selectedDownIcon) package { import flash.display.*; public dynamic class RadioButton_selectedDownIcon extends MovieClip { } }//package
Section 172
//RadioButton_selectedOverIcon (RadioButton_selectedOverIcon) package { import flash.display.*; public dynamic class RadioButton_selectedOverIcon extends MovieClip { } }//package
Section 173
//RadioButton_selectedUpIcon (RadioButton_selectedUpIcon) package { import flash.display.*; public dynamic class RadioButton_selectedUpIcon extends MovieClip { } }//package
Section 174
//RadioButton_upIcon (RadioButton_upIcon) package { import flash.display.*; public dynamic class RadioButton_upIcon extends MovieClip { } }//package
Section 175
//radioButtons (radioButtons) package { import flash.events.*; import flash.display.*; import fl.controls.*; import flash.utils.*; import flash.geom.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; public dynamic class radioButtons extends MovieClip { public var yellowRadio:RadioButton; public var dot:MovieClip; public var redRadio:RadioButton; public var whiteRadio:RadioButton; public var greenRadio:RadioButton; public var blackRadio:RadioButton; public function radioButtons(){ __setProp_greenRadio_radiobuttons_Layer1_0(); __setProp_redRadio_radiobuttons_Layer1_0(); __setProp_whiteRadio_radiobuttons_Layer1_0(); __setProp_blackRadio_radiobuttons_Layer1_0(); __setProp_yellowRadio_radiobuttons_Layer1_0(); } function __setProp_blackRadio_radiobuttons_Layer1_0(){ try { blackRadio["componentInspectorSetting"] = true; } catch(e:Error) { }; blackRadio.enabled = true; blackRadio.groupName = "RadioButtonGroup"; blackRadio.label = ""; blackRadio.labelPlacement = "bottom"; blackRadio.selected = false; blackRadio.value = "3"; blackRadio.visible = true; try { blackRadio["componentInspectorSetting"] = false; } catch(e:Error) { }; } function __setProp_redRadio_radiobuttons_Layer1_0(){ try { redRadio["componentInspectorSetting"] = true; } catch(e:Error) { }; redRadio.enabled = true; redRadio.groupName = "RadioButtonGroup"; redRadio.label = ""; redRadio.labelPlacement = "bottom"; redRadio.selected = false; redRadio.value = "1"; redRadio.visible = true; try { redRadio["componentInspectorSetting"] = false; } catch(e:Error) { }; } function __setProp_whiteRadio_radiobuttons_Layer1_0(){ try { whiteRadio["componentInspectorSetting"] = true; } catch(e:Error) { }; whiteRadio.enabled = true; whiteRadio.groupName = "RadioButtonGroup"; whiteRadio.label = ""; whiteRadio.labelPlacement = "bottom"; whiteRadio.selected = false; whiteRadio.value = "2"; whiteRadio.visible = true; try { whiteRadio["componentInspectorSetting"] = false; } catch(e:Error) { }; } function __setProp_yellowRadio_radiobuttons_Layer1_0(){ try { yellowRadio["componentInspectorSetting"] = true; } catch(e:Error) { }; yellowRadio.enabled = true; yellowRadio.groupName = "RadioButtonGroup"; yellowRadio.label = ""; yellowRadio.labelPlacement = "bottom"; yellowRadio.selected = false; yellowRadio.value = "4"; yellowRadio.visible = true; try { yellowRadio["componentInspectorSetting"] = false; } catch(e:Error) { }; } function __setProp_greenRadio_radiobuttons_Layer1_0(){ try { greenRadio["componentInspectorSetting"] = true; } catch(e:Error) { }; greenRadio.enabled = true; greenRadio.groupName = "RadioButtonGroup"; greenRadio.label = ""; greenRadio.labelPlacement = "bottom"; greenRadio.selected = false; greenRadio.value = "0"; greenRadio.visible = true; try { greenRadio["componentInspectorSetting"] = false; } catch(e:Error) { }; } } }//package
Section 176
//RocketSauce (RocketSauce) package { import flash.display.*; public dynamic class RocketSauce extends BitmapData { public function RocketSauce(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 177
//sawSound (sawSound) package { import flash.media.*; public dynamic class sawSound extends Sound { } }//package
Section 178
//SliderThumb_disabledSkin (SliderThumb_disabledSkin) package { import flash.display.*; public dynamic class SliderThumb_disabledSkin extends MovieClip { } }//package
Section 179
//SliderThumb_downSkin (SliderThumb_downSkin) package { import flash.display.*; public dynamic class SliderThumb_downSkin extends MovieClip { } }//package
Section 180
//SliderThumb_overSkin (SliderThumb_overSkin) package { import flash.display.*; public dynamic class SliderThumb_overSkin extends MovieClip { } }//package
Section 181
//SliderThumb_upSkin (SliderThumb_upSkin) package { import flash.display.*; public dynamic class SliderThumb_upSkin extends MovieClip { } }//package
Section 182
//SliderTick_skin (SliderTick_skin) package { import flash.display.*; public dynamic class SliderTick_skin extends MovieClip { } }//package
Section 183
//SliderTrack_disabledSkin (SliderTrack_disabledSkin) package { import flash.display.*; public dynamic class SliderTrack_disabledSkin extends MovieClip { } }//package
Section 184
//SliderTrack_skin (SliderTrack_skin) package { import flash.display.*; public dynamic class SliderTrack_skin extends MovieClip { } }//package
Section 185
//slurp (slurp) package { import flash.media.*; public dynamic class slurp extends Sound { } }//package
Section 186
//spewer (spewer) package { import flash.display.*; public dynamic class spewer extends MovieClip { public var faceWhole:MovieClip; public var bodyParts:MovieClip; } }//package
Section 187
//steamCloud (steamCloud) package { import flash.display.*; public dynamic class steamCloud extends MovieClip { } }//package
Section 188
//teleEnd (teleEnd) package { import flash.display.*; public dynamic class teleEnd extends MovieClip { } }//package
Section 189
//telePiece (telePiece) package { import flash.display.*; public dynamic class telePiece extends MovieClip { } }//package
Section 190
//tile (tile) package { import flash.display.*; public dynamic class tile extends MovieClip { public var melt:MovieClip; } }//package
Section 191
//tileDisp (tileDisp) package { import flash.display.*; public dynamic class tileDisp extends MovieClip { public var tiles:MovieClip; } }//package
Section 192
//tileMask (tileMask) package { import flash.display.*; public dynamic class tileMask extends MovieClip { } }//package
Section 193
//underwater (underwater) package { import flash.media.*; public dynamic class underwater extends Sound { } }//package
Section 194
//winSound (winSound) package { import flash.media.*; public dynamic class winSound extends Sound { } }//package

Library Items

Symbol 1 Sound {deathC}Used by:898
Symbol 2 Bitmap {Perfectionist}
Symbol 3 Bitmap {Architect}
Symbol 4 Bitmap {Conclusion}
Symbol 5 Bitmap {Gishy}
Symbol 6 Bitmap {RocketSauce}
Symbol 7 Bitmap {Airhead}
Symbol 8 Bitmap {Burp}
Symbol 9 GraphicUsed by:10
Symbol 10 MovieClipUses:9Used by:28 50 542 546
Symbol 11 MovieClip {fl.core.ComponentShim}Used by:28 50 542 546
Symbol 12 GraphicUsed by:13
Symbol 13 MovieClip {SliderThumb_upSkin}Uses:12Used by:28 546
Symbol 14 GraphicUsed by:15
Symbol 15 MovieClip {SliderThumb_overSkin}Uses:14Used by:28 546
Symbol 16 GraphicUsed by:17
Symbol 17 MovieClip {SliderThumb_downSkin}Uses:16Used by:28 546
Symbol 18 GraphicUsed by:19
Symbol 19 MovieClip {SliderThumb_disabledSkin}Uses:18Used by:28 546
Symbol 20 GraphicUsed by:21
Symbol 21 MovieClip {SliderTrack_skin}Uses:20Used by:28 546
Symbol 22 GraphicUsed by:23
Symbol 23 MovieClip {SliderTick_skin}Uses:22Used by:28 546
Symbol 24 GraphicUsed by:25
Symbol 25 MovieClip {SliderTrack_disabledSkin}Uses:24Used by:28 546
Symbol 26 GraphicUsed by:27
Symbol 27 MovieClip {focusRectSkin}Uses:26Used by:28 542 546
Symbol 28 MovieClip {fl.controls.SliderB}Uses:10 11 13 15 17 19 21 23 25 27
Symbol 29 GraphicUsed by:30
Symbol 30 MovieClip {ColorPicker_upSkin}Uses:29Used by:50
Symbol 31 GraphicUsed by:32
Symbol 32 MovieClip {ColorPicker_disabledSkin}Uses:31Used by:50
Symbol 33 GraphicUsed by:34
Symbol 34 MovieClip {ColorPicker_swatchSkin}Uses:33Used by:50
Symbol 35 GraphicUsed by:36
Symbol 36 MovieClipUses:35Used by:39 50
Symbol 37 GraphicUsed by:38
Symbol 38 MovieClipUses:37Used by:39 50
Symbol 39 MovieClip {ColorPicker_backgroundSkin}Uses:36 38Used by:50
Symbol 40 GraphicUsed by:41
Symbol 41 MovieClip {ColorPicker_downSkin}Uses:40Used by:50
Symbol 42 GraphicUsed by:43
Symbol 43 MovieClip {ColorPicker_textFieldSkin}Uses:42Used by:50
Symbol 44 GraphicUsed by:45
Symbol 45 MovieClip {ColorPicker_overSkin}Uses:44Used by:50
Symbol 46 GraphicUsed by:47 517
Symbol 47 MovieClip {ColorPicker_colorWell}Uses:46Used by:50
Symbol 48 GraphicUsed by:49
Symbol 49 MovieClip {ColorPicker_swatchSelectedSkin}Uses:48Used by:50
Symbol 50 MovieClip {fl.controls.ColorPicker}Uses:10 11 30 32 34 39 41 43 45 47 49 38 36
Symbol 51 GraphicUsed by:52
Symbol 52 MovieClip {deadBody}Uses:51
Symbol 53 GraphicUsed by:54
Symbol 54 MovieClip {deadTail1}Uses:53
Symbol 55 GraphicUsed by:56
Symbol 56 MovieClip {deadTail2}Uses:55
Symbol 57 GraphicUsed by:58
Symbol 58 MovieClipUses:57Used by:63 363 371 423 425 454 456 457 1184  Timeline
Symbol 59 GraphicUsed by:63
Symbol 60 GraphicUsed by:63
Symbol 61 GraphicUsed by:63
Symbol 62 GraphicUsed by:63
Symbol 63 MovieClip {pukeButton}Uses:58 59 60 61 62
Symbol 64 GraphicUsed by:71
Symbol 65 GraphicUsed by:71
Symbol 66 GraphicUsed by:71
Symbol 67 GraphicUsed by:71
Symbol 68 GraphicUsed by:71
Symbol 69 GraphicUsed by:71
Symbol 70 GraphicUsed by:71
Symbol 71 MovieClip {gate}Uses:64 65 66 67 68 69 70
Symbol 72 GraphicUsed by:92 133 174 1322 1323
Symbol 73 GraphicUsed by:92
Symbol 74 GraphicUsed by:92
Symbol 75 GraphicUsed by:92
Symbol 76 GraphicUsed by:92
Symbol 77 GraphicUsed by:92
Symbol 78 GraphicUsed by:92
Symbol 79 GraphicUsed by:92
Symbol 80 GraphicUsed by:92
Symbol 81 GraphicUsed by:92
Symbol 82 GraphicUsed by:92
Symbol 83 GraphicUsed by:92
Symbol 84 GraphicUsed by:92
Symbol 85 GraphicUsed by:92
Symbol 86 GraphicUsed by:92
Symbol 87 GraphicUsed by:92
Symbol 88 GraphicUsed by:92
Symbol 89 GraphicUsed by:92
Symbol 90 GraphicUsed by:92
Symbol 91 GraphicUsed by:92
Symbol 92 MovieClipUses:72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91Used by:196
Symbol 93 GraphicUsed by:113
Symbol 94 GraphicUsed by:113
Symbol 95 GraphicUsed by:113
Symbol 96 GraphicUsed by:113
Symbol 97 GraphicUsed by:113
Symbol 98 GraphicUsed by:113
Symbol 99 GraphicUsed by:113
Symbol 100 GraphicUsed by:113
Symbol 101 GraphicUsed by:113
Symbol 102 GraphicUsed by:113
Symbol 103 GraphicUsed by:113
Symbol 104 GraphicUsed by:113
Symbol 105 GraphicUsed by:113
Symbol 106 GraphicUsed by:113
Symbol 107 GraphicUsed by:113
Symbol 108 GraphicUsed by:113
Symbol 109 GraphicUsed by:113
Symbol 110 GraphicUsed by:113
Symbol 111 GraphicUsed by:113
Symbol 112 GraphicUsed by:113
Symbol 113 MovieClipUses:93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112Used by:196
Symbol 114 GraphicUsed by:133
Symbol 115 GraphicUsed by:133
Symbol 116 GraphicUsed by:133
Symbol 117 GraphicUsed by:133
Symbol 118 GraphicUsed by:133
Symbol 119 GraphicUsed by:133
Symbol 120 GraphicUsed by:133
Symbol 121 GraphicUsed by:133
Symbol 122 GraphicUsed by:133
Symbol 123 GraphicUsed by:133
Symbol 124 GraphicUsed by:133
Symbol 125 GraphicUsed by:133
Symbol 126 GraphicUsed by:133
Symbol 127 GraphicUsed by:133
Symbol 128 GraphicUsed by:133
Symbol 129 GraphicUsed by:133
Symbol 130 GraphicUsed by:133
Symbol 131 GraphicUsed by:133
Symbol 132 GraphicUsed by:133
Symbol 133 MovieClipUses:72 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132Used by:196
Symbol 134 GraphicUsed by:154
Symbol 135 GraphicUsed by:154
Symbol 136 GraphicUsed by:154
Symbol 137 GraphicUsed by:154
Symbol 138 GraphicUsed by:154
Symbol 139 GraphicUsed by:154
Symbol 140 GraphicUsed by:154
Symbol 141 GraphicUsed by:154
Symbol 142 GraphicUsed by:154
Symbol 143 GraphicUsed by:154
Symbol 144 GraphicUsed by:154
Symbol 145 GraphicUsed by:154
Symbol 146 GraphicUsed by:154
Symbol 147 GraphicUsed by:154
Symbol 148 GraphicUsed by:154
Symbol 149 GraphicUsed by:154
Symbol 150 GraphicUsed by:154
Symbol 151 GraphicUsed by:154
Symbol 152 GraphicUsed by:154
Symbol 153 GraphicUsed by:154
Symbol 154 MovieClipUses:134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153Used by:196
Symbol 155 GraphicUsed by:174 1322 1323
Symbol 156 GraphicUsed by:174 1322 1323
Symbol 157 GraphicUsed by:174 1322 1323
Symbol 158 GraphicUsed by:174 1322 1323
Symbol 159 GraphicUsed by:174 1322 1323
Symbol 160 GraphicUsed by:174 1322 1323
Symbol 161 GraphicUsed by:174 1322 1323
Symbol 162 GraphicUsed by:174 1322 1323
Symbol 163 GraphicUsed by:174 1322 1323
Symbol 164 GraphicUsed by:174 1322 1323
Symbol 165 GraphicUsed by:174 1322 1323
Symbol 166 GraphicUsed by:174 1322 1323
Symbol 167 GraphicUsed by:174 1322 1323
Symbol 168 GraphicUsed by:174 1322 1323
Symbol 169 GraphicUsed by:174 1322 1323
Symbol 170 GraphicUsed by:174 1322 1323
Symbol 171 GraphicUsed by:174 1322 1323
Symbol 172 GraphicUsed by:174 1322 1323
Symbol 173 GraphicUsed by:174 1322 1323
Symbol 174 MovieClipUses:72 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173Used by:196
Symbol 175 GraphicUsed by:195
Symbol 176 GraphicUsed by:195
Symbol 177 GraphicUsed by:195
Symbol 178 GraphicUsed by:195
Symbol 179 GraphicUsed by:195
Symbol 180 GraphicUsed by:195
Symbol 181 GraphicUsed by:195
Symbol 182 GraphicUsed by:195
Symbol 183 GraphicUsed by:195
Symbol 184 GraphicUsed by:195
Symbol 185 GraphicUsed by:195
Symbol 186 GraphicUsed by:195
Symbol 187 GraphicUsed by:195
Symbol 188 GraphicUsed by:195
Symbol 189 GraphicUsed by:195
Symbol 190 GraphicUsed by:195
Symbol 191 GraphicUsed by:195
Symbol 192 GraphicUsed by:195
Symbol 193 GraphicUsed by:195
Symbol 194 GraphicUsed by:195
Symbol 195 MovieClipUses:175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194Used by:196
Symbol 196 MovieClip {poof}Uses:92 113 133 154 174 195
Symbol 197 GraphicUsed by:216
Symbol 198 GraphicUsed by:216
Symbol 199 GraphicUsed by:216
Symbol 200 GraphicUsed by:216
Symbol 201 GraphicUsed by:216
Symbol 202 GraphicUsed by:216
Symbol 203 GraphicUsed by:216
Symbol 204 GraphicUsed by:216
Symbol 205 GraphicUsed by:216
Symbol 206 GraphicUsed by:216
Symbol 207 GraphicUsed by:216
Symbol 208 GraphicUsed by:216
Symbol 209 GraphicUsed by:216
Symbol 210 GraphicUsed by:216
Symbol 211 GraphicUsed by:216
Symbol 212 GraphicUsed by:216
Symbol 213 GraphicUsed by:216
Symbol 214 GraphicUsed by:216
Symbol 215 GraphicUsed by:216
Symbol 216 MovieClip {steamCloud}Uses:197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215
Symbol 217 GraphicUsed by:218
Symbol 218 MovieClipUses:217Used by:219
Symbol 219 MovieClip {telePiece}Uses:218
Symbol 220 GraphicUsed by:221
Symbol 221 MovieClipUses:220Used by:222
Symbol 222 MovieClip {teleEnd}Uses:221
Symbol 223 GraphicUsed by:224
Symbol 224 MovieClipUses:223Used by:227 236 237 238 240
Symbol 225 GraphicUsed by:226
Symbol 226 MovieClipUses:225Used by:227 236 237 238 240
Symbol 227 MovieClipUses:224 226Used by:241
Symbol 228 GraphicUsed by:229 234
Symbol 229 MovieClipUses:228Used by:235
Symbol 230 GraphicUsed by:231
Symbol 231 MovieClipUses:230Used by:235
Symbol 232 GraphicUsed by:233
Symbol 233 MovieClipUses:232Used by:235
Symbol 234 MovieClipUses:228Used by:235
Symbol 235 MovieClipUses:229 231 233 234Used by:241
Symbol 236 MovieClipUses:224 226Used by:241
Symbol 237 MovieClipUses:224 226Used by:241
Symbol 238 MovieClipUses:224 226Used by:241
Symbol 239 GraphicUsed by:240
Symbol 240 MovieClipUses:239 224 226Used by:241
Symbol 241 MovieClip {blueBug}Uses:227 235 236 237 238 240
Symbol 242 GraphicUsed by:246
Symbol 243 GraphicUsed by:246
Symbol 244 GraphicUsed by:246
Symbol 245 GraphicUsed by:246
Symbol 246 MovieClip {door}Uses:242 243 244 245
Symbol 247 GraphicUsed by:248
Symbol 248 MovieClipUses:247Used by:251
Symbol 249 GraphicUsed by:251
Symbol 250 GraphicUsed by:251
Symbol 251 MovieClip {doorSwitch}Uses:248 249 250
Symbol 252 GraphicUsed by:253
Symbol 253 MovieClipUses:252Used by:261
Symbol 254 GraphicUsed by:255
Symbol 255 MovieClipUses:254Used by:261
Symbol 256 GraphicUsed by:257
Symbol 257 MovieClipUses:256Used by:261
Symbol 258 GraphicUsed by:260
Symbol 259 ShapeTweeningUsed by:260
Symbol 260 MovieClip {spewer_fla.body01_320}Uses:258 259Used by:261
Symbol 261 MovieClipUses:253 255 257 260Used by:351
Symbol 262 GraphicUsed by:279
Symbol 263 GraphicUsed by:265
Symbol 264 GraphicUsed by:265
Symbol 265 MovieClipUses:263 264Used by:279
Symbol 266 GraphicUsed by:270
Symbol 267 GraphicUsed by:270
Symbol 268 GraphicUsed by:270
Symbol 269 GraphicUsed by:270
Symbol 270 MovieClipUses:266 267 268 269Used by:279
Symbol 271 GraphicUsed by:277
Symbol 272 GraphicUsed by:277
Symbol 273 GraphicUsed by:277
Symbol 274 GraphicUsed by:277
Symbol 275 GraphicUsed by:277
Symbol 276 GraphicUsed by:277
Symbol 277 MovieClip {spewer_fla.suckup01_325}Uses:271 272 273 274 275 276Used by:279
Symbol 278 GraphicUsed by:279
Symbol 279 MovieClipUses:262 265 270 277 278Used by:350
Symbol 280 GraphicUsed by:298
Symbol 281 GraphicUsed by:283
Symbol 282 GraphicUsed by:283
Symbol 283 MovieClipUses:281 282Used by:298
Symbol 284 GraphicUsed by:285
Symbol 285 MovieClipUses:284Used by:289 296 298
Symbol 286 GraphicUsed by:289
Symbol 287 GraphicUsed by:289
Symbol 288 GraphicUsed by:289
Symbol 289 MovieClipUses:286 285 287 288Used by:298
Symbol 290 GraphicUsed by:296
Symbol 291 GraphicUsed by:296
Symbol 292 GraphicUsed by:296
Symbol 293 GraphicUsed by:296
Symbol 294 GraphicUsed by:296
Symbol 295 GraphicUsed by:296
Symbol 296 MovieClip {spewer_fla.suckup01red_330}Uses:290 285 291 292 293 294 295Used by:298
Symbol 297 GraphicUsed by:298
Symbol 298 MovieClipUses:280 283 285 289 296 297Used by:350
Symbol 299 GraphicUsed by:316
Symbol 300 GraphicUsed by:302
Symbol 301 GraphicUsed by:302 319
Symbol 302 MovieClipUses:300 301Used by:316
Symbol 303 GraphicUsed by:307
Symbol 304 GraphicUsed by:307
Symbol 305 GraphicUsed by:307
Symbol 306 GraphicUsed by:307
Symbol 307 MovieClipUses:303 304 305 306Used by:316
Symbol 308 GraphicUsed by:314
Symbol 309 GraphicUsed by:314
Symbol 310 GraphicUsed by:314
Symbol 311 GraphicUsed by:314
Symbol 312 GraphicUsed by:314
Symbol 313 GraphicUsed by:314
Symbol 314 MovieClip {spewer_fla.suckup01white_334}Uses:308 309 310 311 312 313Used by:316
Symbol 315 GraphicUsed by:316
Symbol 316 MovieClipUses:299 302 307 314 315Used by:350
Symbol 317 GraphicUsed by:332
Symbol 318 GraphicUsed by:319
Symbol 319 MovieClipUses:318 301Used by:332
Symbol 320 GraphicUsed by:323
Symbol 321 GraphicUsed by:323
Symbol 322 GraphicUsed by:323
Symbol 323 MovieClipUses:320 321 322Used by:332
Symbol 324 GraphicUsed by:330
Symbol 325 GraphicUsed by:330
Symbol 326 GraphicUsed by:330
Symbol 327 GraphicUsed by:330
Symbol 328 GraphicUsed by:330
Symbol 329 GraphicUsed by:330
Symbol 330 MovieClip {spewer_fla.suckup01gish_338}Uses:324 325 326 327 328 329Used by:332
Symbol 331 GraphicUsed by:332
Symbol 332 MovieClipUses:317 319 323 330 331Used by:350
Symbol 333 GraphicUsed by:349
Symbol 334 GraphicUsed by:336
Symbol 335 GraphicUsed by:336
Symbol 336 MovieClipUses:334 335Used by:349
Symbol 337 GraphicUsed by:340
Symbol 338 GraphicUsed by:340
Symbol 339 GraphicUsed by:340
Symbol 340 MovieClipUses:337 338 339Used by:349
Symbol 341 GraphicUsed by:347
Symbol 342 GraphicUsed by:347
Symbol 343 GraphicUsed by:347
Symbol 344 GraphicUsed by:347
Symbol 345 GraphicUsed by:347
Symbol 346 GraphicUsed by:347
Symbol 347 MovieClip {spewer_fla.suckup01yellow_342}Uses:341 342 343 344 345 346Used by:349
Symbol 348 GraphicUsed by:349
Symbol 349 MovieClipUses:333 336 340 347 348Used by:350
Symbol 350 MovieClipUses:279 298 316 332 349Used by:351
Symbol 351 MovieClip {spewer}Uses:261 350
Symbol 352 GraphicUsed by:375 378 457
Symbol 353 GraphicUsed by:360
Symbol 354 GraphicUsed by:356
Symbol 355 GraphicUsed by:356
Symbol 356 MovieClipUses:354 355Used by:360 429 549 1272
Symbol 357 GraphicUsed by:359
Symbol 358 GraphicUsed by:359 1046 1047 1160
Symbol 359 MovieClipUses:357 358Used by:360 483 844 1146 1184  Timeline
Symbol 360 MovieClipUses:353 356 359Used by:457
Symbol 361 GraphicUsed by:457
Symbol 362 GraphicUsed by:363
Symbol 363 MovieClipUses:58 362Used by:457
Symbol 364 GraphicUsed by:365
Symbol 365 MovieClipUses:364Used by:457
Symbol 366 GraphicUsed by:367
Symbol 367 MovieClipUses:366Used by:457
Symbol 368 GraphicUsed by:369
Symbol 369 MovieClipUses:368Used by:457
Symbol 370 GraphicUsed by:371 372
Symbol 371 MovieClipUses:58 370Used by:457
Symbol 372 MovieClipUses:370Used by:457
Symbol 373 GraphicUsed by:374
Symbol 374 MovieClipUses:373Used by:375
Symbol 375 MovieClipUses:352 374Used by:457
Symbol 376 GraphicUsed by:377
Symbol 377 MovieClipUses:376Used by:378
Symbol 378 MovieClipUses:352 377Used by:457
Symbol 379 GraphicUsed by:457
Symbol 380 GraphicUsed by:457 517
Symbol 381 GraphicUsed by:385 421
Symbol 382 GraphicUsed by:385
Symbol 383 GraphicUsed by:385
Symbol 384 GraphicUsed by:385
Symbol 385 MovieClipUses:381 382 383 384Used by:457
Symbol 386 GraphicUsed by:411
Symbol 387 GraphicUsed by:411
Symbol 388 GraphicUsed by:411
Symbol 389 GraphicUsed by:411
Symbol 390 GraphicUsed by:411
Symbol 391 GraphicUsed by:411
Symbol 392 GraphicUsed by:411
Symbol 393 GraphicUsed by:411
Symbol 394 GraphicUsed by:411
Symbol 395 GraphicUsed by:411
Symbol 396 GraphicUsed by:411
Symbol 397 GraphicUsed by:411
Symbol 398 GraphicUsed by:411
Symbol 399 GraphicUsed by:411
Symbol 400 GraphicUsed by:411
Symbol 401 GraphicUsed by:411
Symbol 402 GraphicUsed by:411
Symbol 403 GraphicUsed by:411
Symbol 404 GraphicUsed by:411
Symbol 405 GraphicUsed by:411
Symbol 406 GraphicUsed by:411
Symbol 407 GraphicUsed by:411
Symbol 408 GraphicUsed by:411
Symbol 409 GraphicUsed by:411
Symbol 410 GraphicUsed by:411
Symbol 411 MovieClip {spewer_fla.Symbol49_293}Uses:386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410Used by:457
Symbol 412 GraphicUsed by:418
Symbol 413 GraphicUsed by:414
Symbol 414 MovieClipUses:413Used by:418
Symbol 415 GraphicUsed by:418
Symbol 416 GraphicUsed by:418
Symbol 417 GraphicUsed by:418
Symbol 418 MovieClipUses:412 414 415 416 417Used by:457
Symbol 419 GraphicUsed by:420
Symbol 420 MovieClipUses:419Used by:457
Symbol 421 MovieClipUses:381Used by:457
Symbol 422 GraphicUsed by:423
Symbol 423 MovieClipUses:58 422Used by:457
Symbol 424 GraphicUsed by:425
Symbol 425 MovieClipUses:58 424Used by:457
Symbol 426 GraphicUsed by:427
Symbol 427 MovieClipUses:426Used by:457
Symbol 428 GraphicUsed by:429
Symbol 429 MovieClipUses:428 356Used by:457
Symbol 430 GraphicUsed by:431
Symbol 431 MovieClipUses:430Used by:457
Symbol 432 GraphicUsed by:433
Symbol 433 MovieClipUses:432Used by:457
Symbol 434 GraphicUsed by:435
Symbol 435 MovieClipUses:434Used by:457
Symbol 436 GraphicUsed by:437
Symbol 437 MovieClipUses:436Used by:457
Symbol 438 GraphicUsed by:439
Symbol 439 MovieClipUses:438Used by:457
Symbol 440 GraphicUsed by:441
Symbol 441 MovieClipUses:440Used by:457
Symbol 442 GraphicUsed by:443
Symbol 443 MovieClipUses:442Used by:457
Symbol 444 GraphicUsed by:445
Symbol 445 MovieClipUses:444Used by:457
Symbol 446 GraphicUsed by:447
Symbol 447 MovieClipUses:446Used by:457
Symbol 448 GraphicUsed by:454
Symbol 449 GraphicUsed by:452
Symbol 450 GraphicUsed by:451
Symbol 451 MovieClipUses:450Used by:452
Symbol 452 MovieClipUses:449 451Used by:454
Symbol 453 GraphicUsed by:454
Symbol 454 MovieClipUses:58 448 452 453Used by:457
Symbol 455 GraphicUsed by:456
Symbol 456 MovieClipUses:58 455Used by:457
Symbol 457 MovieClip {tile}Uses:352 360 361 363 365 367 369 371 372 375 378 379 380 385 411 418 58 420 421 423 425 427 429 431 433 435 437 439 441 443 445 447 454 456
Symbol 458 GraphicUsed by:459
Symbol 459 MovieClip {bubble}Uses:458
Symbol 460 GraphicUsed by:461 464 697 721 749 956 1042 1162
Symbol 461 MovieClip {tileMask}Uses:460
Symbol 462 MovieClipUsed by:464
Symbol 463 GraphicUsed by:464
Symbol 464 MovieClip {tileDisp}Uses:460 462 463
Symbol 465 GraphicUsed by:466
Symbol 466 MovieClipUses:465Used by:467
Symbol 467 MovieClip {convArrow}Uses:466
Symbol 468 GraphicUsed by:483
Symbol 469 GraphicUsed by:471
Symbol 470 GraphicUsed by:471
Symbol 471 MovieClipUses:469 470Used by:483
Symbol 472 GraphicUsed by:483
Symbol 473 GraphicUsed by:483
Symbol 474 GraphicUsed by:483
Symbol 475 GraphicUsed by:483
Symbol 476 GraphicUsed by:483
Symbol 477 GraphicUsed by:483
Symbol 478 GraphicUsed by:483
Symbol 479 GraphicUsed by:483
Symbol 480 GraphicUsed by:481
Symbol 481 MovieClipUses:480Used by:482
Symbol 482 MovieClipUses:481Used by:483
Symbol 483 MovieClip {goalDoor}Uses:468 471 472 473 359 474 475 476 477 478 479 482
Symbol 484 GraphicUsed by:489
Symbol 485 GraphicUsed by:489
Symbol 486 GraphicUsed by:489
Symbol 487 GraphicUsed by:489
Symbol 488 GraphicUsed by:489
Symbol 489 MovieClipUses:484 485 486 487 488Used by:512
Symbol 490 GraphicUsed by:501
Symbol 491 GraphicUsed by:501
Symbol 492 GraphicUsed by:501
Symbol 493 GraphicUsed by:501
Symbol 494 GraphicUsed by:501
Symbol 495 GraphicUsed by:501
Symbol 496 GraphicUsed by:501
Symbol 497 GraphicUsed by:501
Symbol 498 GraphicUsed by:501
Symbol 499 GraphicUsed by:501
Symbol 500 GraphicUsed by:501
Symbol 501 MovieClipUses:490 491 492 493 494 495 496 497 498 499 500Used by:503 505 507 509 511
Symbol 502 GraphicUsed by:503
Symbol 503 MovieClipUses:501 502Used by:512
Symbol 504 GraphicUsed by:505
Symbol 505 MovieClipUses:501 504Used by:512
Symbol 506 GraphicUsed by:507
Symbol 507 MovieClipUses:501 506Used by:512
Symbol 508 GraphicUsed by:509
Symbol 509 MovieClipUses:501 508Used by:512
Symbol 510 GraphicUsed by:511
Symbol 511 MovieClipUses:501 510Used by:512
Symbol 512 MovieClip {pillGraphic}Uses:489 503 505 507 509 511
Symbol 513 GraphicUsed by:524
Symbol 514 GraphicUsed by:516
Symbol 515 GraphicUsed by:516
Symbol 516 MovieClipUses:514 515Used by:524
Symbol 517 MovieClipUses:46 380Used by:524
Symbol 518 GraphicUsed by:523
Symbol 519 ShapeTweeningUsed by:523
Symbol 520 ShapeTweeningUsed by:523
Symbol 521 GraphicUsed by:523
Symbol 522 GraphicUsed by:523
Symbol 523 MovieClipUses:518 519 520 521 522Used by:524
Symbol 524 MovieClip {mapBox}Uses:513 516 517 523
Symbol 525 GraphicUsed by:526
Symbol 526 MovieClip {RadioButton_upIcon}Uses:525Used by:542
Symbol 527 GraphicUsed by:528
Symbol 528 MovieClip {RadioButton_overIcon}Uses:527Used by:542
Symbol 529 GraphicUsed by:530
Symbol 530 MovieClip {RadioButton_downIcon}Uses:529Used by:542
Symbol 531 GraphicUsed by:532 541
Symbol 532 MovieClip {RadioButton_disabledIcon}Uses:531Used by:542
Symbol 533 GraphicUsed by:536
Symbol 534 GraphicUsed by:535
Symbol 535 MovieClipUses:534Used by:536 538 540 541
Symbol 536 MovieClip {RadioButton_selectedUpIcon}Uses:533 535Used by:542
Symbol 537 GraphicUsed by:538
Symbol 538 MovieClip {RadioButton_selectedOverIcon}Uses:537 535Used by:542
Symbol 539 GraphicUsed by:540
Symbol 540 MovieClip {RadioButton_selectedDownIcon}Uses:539 535Used by:542
Symbol 541 MovieClip {RadioButton_selectedDisabledIcon}Uses:531 535Used by:542
Symbol 542 MovieClip {fl.controls.RadioButton}Uses:10 11 526 528 530 532 536 538 540 541 27Used by:545
Symbol 543 GraphicUsed by:544
Symbol 544 MovieClipUses:543Used by:545
Symbol 545 MovieClip {radioButtons}Uses:542 544
Symbol 546 MovieClip {fl.controls.Slider}Uses:10 11 13 15 17 19 21 23 25 27Used by:1153
Symbol 547 MovieClip {com.kongregate.as3.client.KongregateAPI}
Symbol 548 GraphicUsed by:549
Symbol 549 MovieClipUses:548 356Used by:624
Symbol 550 GraphicUsed by:571
Symbol 551 GraphicUsed by:552 927
Symbol 552 MovieClipUses:551Used by:571 1187
Symbol 553 GraphicUsed by:554 928
Symbol 554 MovieClipUses:553Used by:571 1187
Symbol 555 GraphicUsed by:556 1003
Symbol 556 MovieClipUses:555Used by:571 1187
Symbol 557 GraphicUsed by:558 1004
Symbol 558 MovieClipUses:557Used by:571 1187 1319 1322 1323 1324
Symbol 559 GraphicUsed by:560 1005
Symbol 560 MovieClipUses:559Used by:571 1187
Symbol 561 GraphicUsed by:562 1006
Symbol 562 MovieClipUses:561Used by:571 1187 1319 1322 1323
Symbol 563 GraphicUsed by:564 1007
Symbol 564 MovieClipUses:563Used by:571 1187
Symbol 565 GraphicUsed by:566
Symbol 566 MovieClipUses:565Used by:571 1187 1367 1368
Symbol 567 GraphicUsed by:568
Symbol 568 MovieClipUses:567Used by:571 1187
Symbol 569 GraphicUsed by:570 946
Symbol 570 MovieClipUses:569Used by:571 1298 1373
Symbol 571 MovieClipUses:550 552 554 556 558 560 562 564 566 568 570Used by:624
Symbol 572 GraphicUsed by:624
Symbol 573 GraphicUsed by:578
Symbol 574 GraphicUsed by:575
Symbol 575 MovieClipUses:574Used by:578
Symbol 576 FontUsed by:577 602 603 604 605 606 607 609 610 611 612 613 614 615 616 617 618 619 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 699 700 701 703 709 710 711 712 713 714 715 716 717 718 719 720 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 779 780 781 782 783 784 785 786 787 788 789 790 798 799 800 803 804 805 811 812 814 815 816 819 820 821 822 823 826 828 836 837 838 1038 1040 1044 1074 1075 1076 1077 1078 1079 1080 1081 1082 1085 1086 1087 1090 1091 1092 1093 1096 1097 1098 1102 1103 1104 1105 1106 1107 1109 1110 1111 1113 1114 1115 1117 1118 1119 1121 1122 1123 1125 1130 1131 1135 1137 1138 1139 1140 1141 1142 1144 1148 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1256 1257 1258 1259 1261 1262 1263 1264 1265
Symbol 577 TextUses:576Used by:578
Symbol 578 MovieClipUses:573 575 577Used by:624
Symbol 579 GraphicUsed by:580
Symbol 580 ButtonUses:579Used by:581 621 622 654 705
Symbol 581 MovieClip {spewer_fla.nglinkcontainer_17}Uses:580Used by:624 706 1146
Symbol 582 GraphicUsed by:598
Symbol 583 GraphicUsed by:584
Symbol 584 MovieClipUses:583Used by:598 1283 1291 1292 1294 1295 1296 1297 1310 1311 1314 1315 1316 1317 1319 1322 1323 1324 1347 1351 1354 1355 1356 1357 1358 1362 1363 1364 1367 1368 1371
Symbol 585 GraphicUsed by:586 1012
Symbol 586 MovieClipUses:585Used by:598 1310 1311 1314 1315 1316 1317 1324 1351 1354 1355 1356 1357 1358 1362 1363 1364 1367 1368
Symbol 587 GraphicUsed by:588 1275
Symbol 588 MovieClipUses:587Used by:598 1315 1324 1351 1354 1355 1356 1357 1358 1362 1367 1368
Symbol 589 GraphicUsed by:590 1011
Symbol 590 MovieClipUses:589Used by:598 1310 1311 1314 1315 1316 1317 1363 1364
Symbol 591 GraphicUsed by:592 932
Symbol 592 MovieClipUses:591Used by:598 1283 1291 1292 1294 1295 1296 1297 1310 1311 1314 1315 1316 1317 1319 1322 1323 1324 1347 1351 1354 1355 1356 1357 1358 1362 1363 1364 1367 1368 1371
Symbol 593 GraphicUsed by:594 1013
Symbol 594 MovieClipUses:593Used by:598 1310 1311 1314 1315 1316 1317 1324 1347 1351 1354 1355 1356 1357 1358 1362 1363 1364 1367 1368
Symbol 595 GraphicUsed by:596
Symbol 596 MovieClipUses:595Used by:598 1317 1362
Symbol 597 GraphicUsed by:598
Symbol 598 MovieClipUses:582 584 586 588 590 592 594 596 597Used by:620 624
Symbol 599 GraphicUsed by:600
Symbol 600 MovieClipUses:599Used by:620 624
Symbol 601 GraphicUsed by:620
Symbol 602 TextUses:576Used by:608 620 624
Symbol 603 TextUses:576Used by:608 620 624
Symbol 604 TextUses:576Used by:608
Symbol 605 TextUses:576Used by:608 620 624
Symbol 606 TextUses:576Used by:608 620 624
Symbol 607 TextUses:576Used by:608
Symbol 608 MovieClipUses:602 603 604 605 606 607Used by:620 624
Symbol 609 TextUses:576Used by:620 624
Symbol 610 TextUses:576Used by:620 624
Symbol 611 TextUses:576Used by:620 624
Symbol 612 TextUses:576Used by:620 624
Symbol 613 TextUses:576Used by:620 624
Symbol 614 TextUses:576Used by:620 624
Symbol 615 TextUses:576Used by:620 624
Symbol 616 TextUses:576Used by:620 624
Symbol 617 TextUses:576Used by:620 624
Symbol 618 TextUses:576Used by:620 624
Symbol 619 TextUses:576Used by:620 624
Symbol 620 MovieClipUses:598 600 601 608 606 605 609 610 602 611 603 612 613 614 615 616 617 618 619Used by:624
Symbol 621 MovieClip {spewer_fla.edlinkcontainer_30}Uses:580Used by:624 706 813
Symbol 622 MovieClip {spewer_fla.2dlinkcontainer_31}Uses:580Used by:624 706 813
Symbol 623 GraphicUsed by:624
Symbol 624 MovieClip {spewer_fla.ourintro_1}Uses:549 571 572 578 581 620 621 622 598 600 623 608 606 605 609 610 602 611 603 612 613 614 615 616 617 618 619Used by:Timeline
Symbol 625 GraphicUsed by:Timeline
Symbol 626 GraphicUsed by:844
Symbol 627 GraphicUsed by:706
Symbol 628 TextUses:576Used by:706
Symbol 629 TextUses:576Used by:706
Symbol 630 TextUses:576Used by:706
Symbol 631 TextUses:576Used by:706
Symbol 632 TextUses:576Used by:706
Symbol 633 TextUses:576Used by:706
Symbol 634 TextUses:576Used by:706
Symbol 635 TextUses:576Used by:706
Symbol 636 TextUses:576Used by:706
Symbol 637 TextUses:576Used by:706
Symbol 638 TextUses:576Used by:706
Symbol 639 TextUses:576Used by:706
Symbol 640 TextUses:576Used by:706
Symbol 641 TextUses:576Used by:706
Symbol 642 TextUses:576Used by:706
Symbol 643 TextUses:576Used by:706
Symbol 644 TextUses:576Used by:706
Symbol 645 TextUses:576Used by:706
Symbol 646 TextUses:576Used by:706
Symbol 647 TextUses:576Used by:706
Symbol 648 TextUses:576Used by:706
Symbol 649 TextUses:576Used by:706
Symbol 650 TextUses:576Used by:706
Symbol 651 TextUses:576Used by:706
Symbol 652 TextUses:576Used by:706
Symbol 653 TextUses:576Used by:706
Symbol 654 MovieClip {spewer_fla.jflinkcontainer_36}Uses:580Used by:706 813
Symbol 655 TextUses:576Used by:706
Symbol 656 TextUses:576Used by:706
Symbol 657 TextUses:576Used by:706
Symbol 658 TextUses:576Used by:706
Symbol 659 TextUses:576Used by:706
Symbol 660 TextUses:576Used by:706
Symbol 661 TextUses:576Used by:706
Symbol 662 TextUses:576Used by:706
Symbol 663 TextUses:576Used by:706
Symbol 664 TextUses:576Used by:706
Symbol 665 TextUses:576Used by:706
Symbol 666 TextUses:576Used by:706
Symbol 667 TextUses:576Used by:706
Symbol 668 TextUses:576Used by:706
Symbol 669 TextUses:576Used by:706
Symbol 670 TextUses:576Used by:706
Symbol 671 TextUses:576Used by:706
Symbol 672 TextUses:576Used by:706
Symbol 673 TextUses:576Used by:706
Symbol 674 TextUses:576Used by:706 813
Symbol 675 TextUses:576Used by:706
Symbol 676 TextUses:576Used by:706 813
Symbol 677 TextUses:576Used by:706 813
Symbol 678 TextUses:576Used by:706 813
Symbol 679 TextUses:576Used by:706 813
Symbol 680 TextUses:576Used by:706
Symbol 681 TextUses:576Used by:706 813
Symbol 682 TextUses:576Used by:706 813
Symbol 683 TextUses:576Used by:706 813
Symbol 684 TextUses:576Used by:706 813
Symbol 685 TextUses:576Used by:706 813
Symbol 686 TextUses:576Used by:706 813
Symbol 687 TextUses:576Used by:692
Symbol 688 TextUses:576Used by:692
Symbol 689 TextUses:576Used by:692
Symbol 690 TextUses:576Used by:692
Symbol 691 TextUses:576Used by:692
Symbol 692 MovieClip {spewer_fla.1010_37}Uses:687 688 689 690 691Used by:706 813 1145
Symbol 693 FontUsed by:694 852 854 856
Symbol 694 TextUses:693Used by:697
Symbol 695 FontUsed by:696 853 855 857 865
Symbol 696 TextUses:695Used by:697
Symbol 697 MovieClipUses:460 694 696Used by:698
Symbol 698 MovieClip {spewer_fla.NewgroundsAPI_Ad_Unit_38}Uses:697Used by:706
Symbol 699 TextUses:576Used by:704
Symbol 700 TextUses:576Used by:704
Symbol 701 TextUses:576Used by:704
Symbol 702 GraphicUsed by:704
Symbol 703 TextUses:576Used by:704
Symbol 704 ButtonUses:699 700 701 702 703Used by:706
Symbol 705 MovieClip {spewer_fla.dblinkcontainer_41}Uses:580Used by:706 813
Symbol 706 MovieClipUses:627 628 629 630 631 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 676 677 678 679 680 681 682 683 684 685 686 692 698 704 622 621 581 705Used by:844
Symbol 707 FontUsed by:708 845 873 899 1128 1150 1155 1157 1158 1159 1161 1163 1164 1165 1168 1169 1170 1171 1174 1175 1176 1179 1180 1181
Symbol 708 EditableTextUses:707Used by:844
Symbol 709 TextUses:576Used by:721
Symbol 710 TextUses:576Used by:721
Symbol 711 TextUses:576Used by:721
Symbol 712 TextUses:576Used by:721
Symbol 713 TextUses:576Used by:721
Symbol 714 TextUses:576Used by:721
Symbol 715 TextUses:576Used by:721
Symbol 716 TextUses:576Used by:721
Symbol 717 TextUses:576Used by:721
Symbol 718 TextUses:576Used by:721
Symbol 719 TextUses:576Used by:721
Symbol 720 TextUses:576Used by:721
Symbol 721 ButtonUses:709 710 711 712 713 714 715 716 717 718 719 720 460Used by:844 1146
Symbol 722 TextUses:576Used by:749
Symbol 723 TextUses:576Used by:749
Symbol 724 TextUses:576Used by:749
Symbol 725 TextUses:576Used by:749
Symbol 726 TextUses:576Used by:749
Symbol 727 TextUses:576Used by:749
Symbol 728 TextUses:576Used by:749
Symbol 729 TextUses:576Used by:749
Symbol 730 TextUses:576Used by:749
Symbol 731 TextUses:576Used by:749
Symbol 732 TextUses:576Used by:749
Symbol 733 TextUses:576Used by:749
Symbol 734 TextUses:576Used by:749
Symbol 735 TextUses:576Used by:749
Symbol 736 TextUses:576Used by:749
Symbol 737 TextUses:576Used by:749
Symbol 738 TextUses:576Used by:749
Symbol 739 TextUses:576Used by:749
Symbol 740 TextUses:576Used by:749
Symbol 741 TextUses:576Used by:749
Symbol 742 TextUses:576Used by:749
Symbol 743 TextUses:576Used by:749
Symbol 744 TextUses:576Used by:749
Symbol 745 TextUses:576Used by:749
Symbol 746 TextUses:576Used by:749
Symbol 747 TextUses:576Used by:749
Symbol 748 TextUses:576Used by:749
Symbol 749 ButtonUses:722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 460Used by:844 1146
Symbol 750 ShapeTweeningUsed by:754
Symbol 751 ShapeTweeningUsed by:754
Symbol 752 GraphicUsed by:754
Symbol 753 GraphicUsed by:754
Symbol 754 MovieClipUses:750 751 752 753Used by:813 844 1145 1146
Symbol 755 TextUses:576Used by:777 1146
Symbol 756 TextUses:576Used by:777 1146
Symbol 757 TextUses:576Used by:777 1146
Symbol 758 TextUses:576Used by:777 1146
Symbol 759 TextUses:576Used by:777 1146
Symbol 760 TextUses:576Used by:777 1146
Symbol 761 TextUses:576Used by:777 1146
Symbol 762 TextUses:576Used by:777
Symbol 763 TextUses:576Used by:777
Symbol 764 TextUses:576Used by:777
Symbol 765 TextUses:576Used by:777
Symbol 766 TextUses:576Used by:777
Symbol 767 TextUses:576Used by:777
Symbol 768 TextUses:576Used by:777
Symbol 769 TextUses:576Used by:777
Symbol 770 TextUses:576Used by:777
Symbol 771 TextUses:576Used by:777
Symbol 772 TextUses:576Used by:777
Symbol 773 TextUses:576Used by:777
Symbol 774 TextUses:576Used by:777
Symbol 775 TextUses:576Used by:777
Symbol 776 GraphicUsed by:777
Symbol 777 ButtonUses:755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776Used by:844
Symbol 778 GraphicUsed by:813
Symbol 779 TextUses:576Used by:813
Symbol 780 TextUses:576Used by:813
Symbol 781 TextUses:576Used by:813
Symbol 782 TextUses:576Used by:813
Symbol 783 TextUses:576Used by:813
Symbol 784 TextUses:576Used by:813
Symbol 785 TextUses:576Used by:813
Symbol 786 TextUses:576Used by:813
Symbol 787 TextUses:576Used by:813
Symbol 788 TextUses:576Used by:813
Symbol 789 TextUses:576Used by:813
Symbol 790 TextUses:576Used by:813
Symbol 791 GraphicUsed by:813
Symbol 792 GraphicUsed by:797
Symbol 793 GraphicUsed by:797
Symbol 794 GraphicUsed by:797
Symbol 795 GraphicUsed by:797
Symbol 796 GraphicUsed by:797
Symbol 797 MovieClipUses:792 793 794 795 796Used by:813
Symbol 798 TextUses:576Used by:802
Symbol 799 TextUses:576Used by:802
Symbol 800 TextUses:576Used by:802
Symbol 801 GraphicUsed by:802
Symbol 802 ButtonUses:798 799 800 801Used by:813
Symbol 803 TextUses:576Used by:807
Symbol 804 TextUses:576Used by:807
Symbol 805 TextUses:576Used by:807
Symbol 806 GraphicUsed by:807
Symbol 807 ButtonUses:803 804 805 806Used by:813
Symbol 808 GraphicUsed by:809
Symbol 809 ButtonUses:808Used by:813
Symbol 810 GraphicUsed by:813
Symbol 811 TextUses:576Used by:813
Symbol 812 TextUses:576Used by:813
Symbol 813 MovieClip {spewer_fla.title_46}Uses:778 674 682 683 684 685 686 779 780 781 782 681 783 677 784 678 676 679 785 786 787 788 789 790 692 791 797 754 622 621 705 654 802 807 809 810 811 812Used by:844 1146
Symbol 814 TextUses:576Used by:817
Symbol 815 TextUses:576Used by:817
Symbol 816 TextUses:576Used by:817
Symbol 817 ButtonUses:814 815 816Used by:844
Symbol 818 GraphicUsed by:825
Symbol 819 EditableTextUses:576Used by:825
Symbol 820 TextUses:576Used by:825
Symbol 821 TextUses:576Used by:824
Symbol 822 TextUses:576Used by:824
Symbol 823 TextUses:576Used by:824
Symbol 824 ButtonUses:821 822 823Used by:825
Symbol 825 MovieClipUses:818 819 820 824Used by:844
Symbol 826 TextUses:576Used by:827 829
Symbol 827 MovieClip {spewer_fla.erasesuccess_54}Uses:826Used by:844
Symbol 828 TextUses:576Used by:829
Symbol 829 MovieClip {spewer_fla.erasefailed_55}Uses:828 826Used by:844
Symbol 830 GraphicUsed by:835
Symbol 831 GraphicUsed by:835
Symbol 832 GraphicUsed by:835
Symbol 833 GraphicUsed by:835
Symbol 834 GraphicUsed by:835
Symbol 835 ButtonUses:830 831 832 833 834Used by:844
Symbol 836 TextUses:576Used by:840
Symbol 837 TextUses:576Used by:840
Symbol 838 TextUses:576Used by:840
Symbol 839 GraphicUsed by:840
Symbol 840 ButtonUses:836 837 838 839Used by:844
Symbol 841 ShapeTweeningUsed by:843
Symbol 842 GraphicUsed by:843 848 1070
Symbol 843 MovieClip {spewer_fla.menu_58}Uses:841 842Used by:844
Symbol 844 MovieClipUses:626 706 708 721 749 359 754 777 813 817 825 827 829 835 840 843Used by:Timeline
Symbol 845 TextUses:707Used by:846
Symbol 846 MovieClip {spewer_fla.introsong_59}Uses:845 SS1Used by:Timeline
Symbol 847 ShapeTweeningUsed by:848
Symbol 848 MovieClip {spewer_fla.cutscenefadeout_60}Uses:847 842Used by:Timeline
Symbol 849 GraphicUsed by:858
Symbol 850 GraphicUsed by:851
Symbol 851 ButtonUses:850Used by:858
Symbol 852 TextUses:693Used by:858
Symbol 853 TextUses:695Used by:858
Symbol 854 TextUses:693Used by:858
Symbol 855 TextUses:695Used by:858
Symbol 856 TextUses:693Used by:858
Symbol 857 TextUses:695Used by:858
Symbol 858 MovieClip {spewer_fla.NewgroundsAPI_Connector_61}Uses:849 851 852 853 854 855 856 857Used by:Timeline
Symbol 859 GraphicUsed by:871
Symbol 860 FontUsed by:862
Symbol 861 FontUsed by:862
Symbol 862 TextUses:860 861Used by:871
Symbol 863 GraphicUsed by:864
Symbol 864 MovieClipUses:863Used by:871
Symbol 865 EditableTextUses:695Used by:871
Symbol 866 FontUsed by:867 868
Symbol 867 TextUses:866Used by:871
Symbol 868 EditableTextUses:866Used by:871
Symbol 869 GraphicUsed by:870
Symbol 870 MovieClipUses:869Used by:871
Symbol 871 MovieClip {spewer_fla.NewgroundsAPI_Medal_Popup_63}Uses:859 862 864 865 867 868 870Used by:Timeline
Symbol 872 MovieClip {fl.controls.Button}
Symbol 873 TextUses:707Used by:898
Symbol 874 Sound {jump0}Used by:898
Symbol 875 Sound {jump1}Used by:898
Symbol 876 Sound {jump2}Used by:898
Symbol 877 Sound {jump3}Used by:898
Symbol 878 Sound {land0}Used by:898
Symbol 879 Sound {land1}Used by:898
Symbol 880 Sound {land2}Used by:898
Symbol 881 Sound {land3}Used by:898
Symbol 882 Sound {slurp}Used by:898
Symbol 883 Sound {underwater}Used by:898
Symbol 884 Sound {music}Used by:898
Symbol 885 Sound {introSong}Used by:898
Symbol 886 Sound {acidSound}Used by:898
Symbol 887 Sound {deathA}Used by:898
Symbol 888 Sound {deathB}Used by:898
Symbol 889 Sound {deathD}Used by:898
Symbol 890 Sound {winSound}Used by:898
Symbol 891 Sound {powerupSound}Used by:898
Symbol 892 Sound {sawSound}Used by:898
Symbol 893 Sound {monitorSound}Used by:898
Symbol 894 Sound {acidLoop}Used by:898
Symbol 895 Sound {pukeLoop}Used by:898
Symbol 896 Sound {clickA}Used by:898
Symbol 897 Sound {clickB}Used by:898
Symbol 898 MovieClip {spewer_fla.soundloader_66}Uses:873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 1 889 890 891 892 893 894 895 896 897Used by:Timeline
Symbol 899 TextUses:707Used by:1382
Symbol 900 ShapeTweeningUsed by:1042
Symbol 901 GraphicUsed by:906
Symbol 902 GraphicUsed by:904
Symbol 903 GraphicUsed by:904
Symbol 904 MovieClipUses:902 903Used by:906 979 1026 1042
Symbol 905 GraphicUsed by:906
Symbol 906 MovieClipUses:901 904 905Used by:1042
Symbol 907 GraphicUsed by:909
Symbol 908 GraphicUsed by:909
Symbol 909 MovieClipUses:907 908Used by:1042
Symbol 910 GraphicUsed by:911
Symbol 911 MovieClipUses:910Used by:925 950 955 1035 1042
Symbol 912 GraphicUsed by:913
Symbol 913 MovieClipUses:912Used by:925 950 955 1035 1042
Symbol 914 GraphicUsed by:915
Symbol 915 MovieClipUses:914Used by:925 950 955 1035 1042
Symbol 916 GraphicUsed by:917
Symbol 917 MovieClipUses:916Used by:925 1042
Symbol 918 GraphicUsed by:919
Symbol 919 MovieClipUses:918Used by:925 1042
Symbol 920 GraphicUsed by:1042
Symbol 921 GraphicUsed by:1042
Symbol 922 ShapeTweeningUsed by:1042
Symbol 923 GraphicUsed by:1042
Symbol 924 GraphicUsed by:1042
Symbol 925 MovieClipUses:911 913 915 917 919Used by:1042
Symbol 926 GraphicUsed by:929
Symbol 927 MovieClipUses:551Used by:929
Symbol 928 MovieClipUses:553Used by:929
Symbol 929 MovieClipUses:926 927 928Used by:1042
Symbol 930 GraphicUsed by:931 1293
Symbol 931 MovieClipUses:930Used by:945 1042
Symbol 932 MovieClipUses:591Used by:945 1042
Symbol 933 GraphicUsed by:934
Symbol 934 MovieClipUses:933Used by:945
Symbol 935 GraphicUsed by:936
Symbol 936 MovieClipUses:935Used by:945 1042
Symbol 937 GraphicUsed by:938 1278
Symbol 938 MovieClipUses:937Used by:945 1042
Symbol 939 GraphicUsed by:940
Symbol 940 MovieClipUses:939Used by:945
Symbol 941 GraphicUsed by:942 1281
Symbol 942 MovieClipUses:941Used by:945
Symbol 943 GraphicUsed by:944 1282
Symbol 944 MovieClipUses:943Used by:945
Symbol 945 MovieClipUses:931 932 934 936 938 940 942 944Used by:1042
Symbol 946 MovieClipUses:569Used by:1042
Symbol 947 GraphicUsed by:948
Symbol 948 MovieClipUses:947Used by:1042
Symbol 949 GraphicUsed by:950 955 1042
Symbol 950 MovieClipUses:949 915 913 911Used by:1042
Symbol 951 GraphicUsed by:952
Symbol 952 MovieClipUses:951Used by:1042
Symbol 953 GraphicUsed by:954
Symbol 954 MovieClipUses:953Used by:955 1042
Symbol 955 MovieClipUses:949 911 913 915 954Used by:1042
Symbol 956 MovieClipUses:460Used by:1042
Symbol 957 GraphicUsed by:979
Symbol 958 GraphicUsed by:965
Symbol 959 GraphicUsed by:965
Symbol 960 GraphicUsed by:965
Symbol 961 GraphicUsed by:965
Symbol 962 GraphicUsed by:965
Symbol 963 GraphicUsed by:965
Symbol 964 GraphicUsed by:965
Symbol 965 MovieClipUses:958 959 960 961 962 963 964Used by:979 1026 1042
Symbol 966 GraphicUsed by:979
Symbol 967 GraphicUsed by:968
Symbol 968 MovieClipUses:967Used by:979 1026 1028 1042
Symbol 969 GraphicUsed by:970
Symbol 970 MovieClipUses:969Used by:979 1026 1042
Symbol 971 GraphicUsed by:972
Symbol 972 MovieClipUses:971Used by:979 1026 1042
Symbol 973 GraphicUsed by:974
Symbol 974 MovieClipUses:973Used by:979 1026 1042
Symbol 975 GraphicUsed by:976
Symbol 976 MovieClipUses:975Used by:979 1026 1042
Symbol 977 GraphicUsed by:978
Symbol 978 MovieClipUses:977Used by:979 1026 1042
Symbol 979 MovieClipUses:957 965 966 904 968 970 972 974 976 978Used by:1042
Symbol 980 GraphicUsed by:1026 1042
Symbol 981 GraphicUsed by:1026 1042
Symbol 982 GraphicUsed by:983
Symbol 983 MovieClipUses:982Used by:1026 1042
Symbol 984 GraphicUsed by:985
Symbol 985 MovieClipUses:984Used by:1026 1042
Symbol 986 GraphicUsed by:987
Symbol 987 MovieClipUses:986Used by:1026 1042
Symbol 988 GraphicUsed by:989
Symbol 989 MovieClipUses:988Used by:1026 1042
Symbol 990 GraphicUsed by:991
Symbol 991 MovieClipUses:990Used by:1026 1042
Symbol 992 GraphicUsed by:993
Symbol 993 MovieClipUses:992Used by:1026 1042
Symbol 994 GraphicUsed by:995
Symbol 995 MovieClipUses:994Used by:1026 1028 1042
Symbol 996 GraphicUsed by:997
Symbol 997 MovieClipUses:996Used by:1026 1028 1042
Symbol 998 GraphicUsed by:999
Symbol 999 MovieClipUses:998Used by:1026 1042
Symbol 1000 GraphicUsed by:1001
Symbol 1001 MovieClipUses:1000Used by:1026 1042
Symbol 1002 GraphicUsed by:1008
Symbol 1003 MovieClipUses:555Used by:1008
Symbol 1004 MovieClipUses:557Used by:1008
Symbol 1005 MovieClipUses:559Used by:1008
Symbol 1006 MovieClipUses:561Used by:1008
Symbol 1007 MovieClipUses:563Used by:1008
Symbol 1008 MovieClipUses:1002 1003 1004 1005 1006 1007Used by:1042
Symbol 1009 GraphicUsed by:1010
Symbol 1010 MovieClipUses:1009Used by:1042
Symbol 1011 MovieClipUses:589Used by:1042
Symbol 1012 MovieClipUses:585Used by:1042
Symbol 1013 MovieClipUses:593Used by:1042
Symbol 1014 GraphicUsed by:1015 1299
Symbol 1015 MovieClipUses:1014Used by:1042
Symbol 1016 GraphicUsed by:1017 1300
Symbol 1017 MovieClipUses:1016Used by:1042
Symbol 1018 GraphicUsed by:1019 1301
Symbol 1019 MovieClipUses:1018Used by:1042
Symbol 1020 GraphicUsed by:1021 1302
Symbol 1021 MovieClipUses:1020Used by:1042
Symbol 1022 GraphicUsed by:1023 1303
Symbol 1023 MovieClipUses:1022Used by:1042
Symbol 1024 GraphicUsed by:1025
Symbol 1025 MovieClipUses:1024Used by:1042
Symbol 1026 MovieClipUses:980 965 981 904 968 983 974 985 987 989 970 972 976 991 993 978 995 997 999 1001Used by:1042
Symbol 1027 GraphicUsed by:1028
Symbol 1028 MovieClipUses:1027 968 995 997Used by:1042
Symbol 1029 GraphicUsed by:1030
Symbol 1030 MovieClipUses:1029Used by:1042
Symbol 1031 GraphicUsed by:1042
Symbol 1032 GraphicUsed by:1042
Symbol 1033 GraphicUsed by:1034
Symbol 1034 MovieClipUses:1033Used by:1035
Symbol 1035 MovieClipUses:911 913 915 1034Used by:1042
Symbol 1036 GraphicUsed by:1042
Symbol 1037 GraphicUsed by:1042
Symbol 1038 TextUses:576Used by:1039
Symbol 1039 MovieClipUses:1038Used by:1042
Symbol 1040 TextUses:576Used by:1041
Symbol 1041 MovieClipUses:1040Used by:1042
Symbol 1042 MovieClip {ending}Uses:900 906 909 911 913 915 917 919 920 921 922 923 924 925 929 945 946 948 950 952 949 954 955 460 956 979 980 965 981 904 968 983 974 985 987 989 970 972 976 991 993 978 995 997 999 1001 1008 1010 936 1011 1012 938 932 1013 1015 1017 1019 1021 1023 931 1025 1026 1028 1030 1031 1032 1035 1036 1037 1039 1041 SS2Used by:1382
Symbol 1043 GraphicUsed by:1045
Symbol 1044 EditableTextUses:576Used by:1045
Symbol 1045 MovieClipUses:1043 1044Used by:1184
Symbol 1046 MovieClipUses:358Used by:1047
Symbol 1047 MovieClipUses:358 1046Used by:1184
Symbol 1048 ShapeTweeningUsed by:1051
Symbol 1049 ShapeTweeningUsed by:1051
Symbol 1050 GraphicUsed by:1051
Symbol 1051 MovieClipUses:1048 1049 1050Used by:1068
Symbol 1052 ShapeTweeningUsed by:1055
Symbol 1053 ShapeTweeningUsed by:1055
Symbol 1054 GraphicUsed by:1055
Symbol 1055 MovieClipUses:1052 1053 1054Used by:1068
Symbol 1056 ShapeTweeningUsed by:1059
Symbol 1057 ShapeTweeningUsed by:1059
Symbol 1058 GraphicUsed by:1059
Symbol 1059 MovieClipUses:1056 1057 1058Used by:1068
Symbol 1060 ShapeTweeningUsed by:1063
Symbol 1061 ShapeTweeningUsed by:1063
Symbol 1062 GraphicUsed by:1063
Symbol 1063 MovieClipUses:1060 1061 1062Used by:1068
Symbol 1064 ShapeTweeningUsed by:1067
Symbol 1065 ShapeTweeningUsed by:1067
Symbol 1066 GraphicUsed by:1067
Symbol 1067 MovieClipUses:1064 1065 1066Used by:1068
Symbol 1068 MovieClipUses:1051 1055 1059 1063 1067Used by:1184
Symbol 1069 ShapeTweeningUsed by:1070
Symbol 1070 MovieClip {spewer_fla.pukebarflash_148}Uses:1069 842Used by:1184
Symbol 1071 GraphicUsed by:1184
Symbol 1072 MovieClipUsed by:1184
Symbol 1073 GraphicUsed by:1146
Symbol 1074 EditableTextUses:576Used by:1146
Symbol 1075 TextUses:576Used by:1133 1146
Symbol 1076 EditableTextUses:576Used by:1146
Symbol 1077 TextUses:576Used by:1083
Symbol 1078 TextUses:576Used by:1083
Symbol 1079 TextUses:576Used by:1083
Symbol 1080 TextUses:576Used by:1083
Symbol 1081 TextUses:576Used by:1083
Symbol 1082 TextUses:576Used by:1083
Symbol 1083 MovieClipUses:1077 1078 1079 1080 1081 1082Used by:1133 1146
Symbol 1084 GraphicUsed by:1146
Symbol 1085 TextUses:576Used by:1089
Symbol 1086 TextUses:576Used by:1089
Symbol 1087 TextUses:576Used by:1089
Symbol 1088 GraphicUsed by:1089
Symbol 1089 ButtonUses:1085 1086 1087 1088Used by:1146
Symbol 1090 TextUses:576Used by:1095
Symbol 1091 TextUses:576Used by:1095
Symbol 1092 TextUses:576Used by:1095
Symbol 1093 TextUses:576Used by:1095
Symbol 1094 GraphicUsed by:1095
Symbol 1095 ButtonUses:1090 1091 1092 1093 1094Used by:1146
Symbol 1096 TextUses:576Used by:1100
Symbol 1097 TextUses:576Used by:1100
Symbol 1098 TextUses:576Used by:1100
Symbol 1099 GraphicUsed by:1100
Symbol 1100 ButtonUses:1096 1097 1098 1099Used by:1146
Symbol 1101 GraphicUsed by:1126
Symbol 1102 TextUses:576Used by:1126
Symbol 1103 TextUses:576Used by:1126
Symbol 1104 TextUses:576Used by:1126
Symbol 1105 TextUses:576Used by:1108
Symbol 1106 TextUses:576Used by:1108
Symbol 1107 TextUses:576Used by:1108
Symbol 1108 ButtonUses:1105 1106 1107Used by:1126
Symbol 1109 TextUses:576Used by:1112
Symbol 1110 TextUses:576Used by:1112
Symbol 1111 TextUses:576Used by:1112
Symbol 1112 ButtonUses:1109 1110 1111Used by:1126
Symbol 1113 TextUses:576Used by:1116
Symbol 1114 TextUses:576Used by:1116
Symbol 1115 TextUses:576Used by:1116
Symbol 1116 ButtonUses:1113 1114 1115Used by:1126
Symbol 1117 TextUses:576Used by:1120
Symbol 1118 TextUses:576Used by:1120
Symbol 1119 TextUses:576Used by:1120
Symbol 1120 ButtonUses:1117 1118 1119Used by:1126
Symbol 1121 TextUses:576Used by:1124
Symbol 1122 TextUses:576Used by:1124
Symbol 1123 TextUses:576Used by:1124
Symbol 1124 ButtonUses:1121 1122 1123Used by:1126
Symbol 1125 TextUses:576Used by:1126
Symbol 1126 MovieClipUses:1101 1102 1103 1104 1108 1112 1116 1120 1124 1125Used by:1146
Symbol 1127 GraphicUsed by:1146
Symbol 1128 EditableTextUses:707Used by:1146
Symbol 1129 GraphicUsed by:1146
Symbol 1130 TextUses:576Used by:1146
Symbol 1131 EditableTextUses:576Used by:1146
Symbol 1132 GraphicUsed by:1133
Symbol 1133 MovieClip {spewer_fla.chaptersonpause_161}Uses:1132 1083 1075Used by:1146
Symbol 1134 GraphicUsed by:1146
Symbol 1135 EditableTextUses:576Used by:1146
Symbol 1136 GraphicUsed by:1145
Symbol 1137 TextUses:576Used by:1145
Symbol 1138 TextUses:576Used by:1145
Symbol 1139 TextUses:576Used by:1145
Symbol 1140 TextUses:576Used by:1145
Symbol 1141 TextUses:576Used by:1145
Symbol 1142 TextUses:576Used by:1145
Symbol 1143 GraphicUsed by:1145
Symbol 1144 TextUses:576Used by:1145
Symbol 1145 MovieClip {spewer_fla.resetscreen_162}Uses:1136 692 1137 1138 1139 1140 754 1141 1142 1143 1144Used by:1146
Symbol 1146 MovieClip {spewer_fla.menu_150}Uses:1073 359 1074 1075 1076 1083 1084 581 1089 1095 1100 1126 1127 1128 754 755 756 757 758 759 760 761 721 749 813 1129 1130 1131 1133 1134 1135 1145Used by:1184
Symbol 1147 GraphicUsed by:1184
Symbol 1148 EditableTextUses:576Used by:1184
Symbol 1149 GraphicUsed by:1153
Symbol 1150 EditableTextUses:707Used by:1153
Symbol 1151 GraphicUsed by:1153
Symbol 1152 GraphicUsed by:1153
Symbol 1153 MovieClip {spewer_fla.levelproperties_163}Uses:1149 1150 1151 546 1152Used by:1184
Symbol 1154 GraphicUsed by:1156
Symbol 1155 TextUses:707Used by:1156
Symbol 1156 MovieClipUses:1154 1155Used by:1184
Symbol 1157 TextUses:707Used by:1160
Symbol 1158 TextUses:707Used by:1160
Symbol 1159 TextUses:707Used by:1160
Symbol 1160 ButtonUses:1157 1158 1159 358Used by:1184
Symbol 1161 EditableTextUses:707Used by:1162
Symbol 1162 MovieClipUses:460 1161Used by:1184
Symbol 1163 TextUses:707Used by:1167
Symbol 1164 TextUses:707Used by:1167
Symbol 1165 TextUses:707Used by:1167
Symbol 1166 GraphicUsed by:1167
Symbol 1167 ButtonUses:1163 1164 1165 1166Used by:1184
Symbol 1168 EditableTextUses:707Used by:1184
Symbol 1169 TextUses:707Used by:1173
Symbol 1170 TextUses:707Used by:1173
Symbol 1171 TextUses:707Used by:1173
Symbol 1172 GraphicUsed by:1173
Symbol 1173 ButtonUses:1169 1170 1171 1172Used by:1184
Symbol 1174 TextUses:707Used by:1178
Symbol 1175 TextUses:707Used by:1178
Symbol 1176 TextUses:707Used by:1178
Symbol 1177 GraphicUsed by:1178
Symbol 1178 ButtonUses:1174 1175 1176 1177Used by:1184
Symbol 1179 TextUses:707Used by:1183
Symbol 1180 TextUses:707Used by:1183
Symbol 1181 TextUses:707Used by:1183
Symbol 1182 GraphicUsed by:1183
Symbol 1183 ButtonUses:1179 1180 1181 1182Used by:1184
Symbol 1184 MovieClip {headsUpDisplay}Uses:58 1045 1047 1068 1070 1071 1072 1146 1147 359 1148 1153 1156 1160 1162 1167 1168 1173 1178 1183Used by:1382
Symbol 1185 GraphicUsed by:1187
Symbol 1186 MovieClipUsed by:1187
Symbol 1187 MovieClipUses:1185 552 554 556 558 560 562 564 566 568 1186Used by:1381
Symbol 1188 GraphicUsed by:1266
Symbol 1189 GraphicUsed by:1266
Symbol 1190 TextUses:576Used by:1266
Symbol 1191 TextUses:576Used by:1266
Symbol 1192 TextUses:576Used by:1266
Symbol 1193 TextUses:576Used by:1266
Symbol 1194 TextUses:576Used by:1266
Symbol 1195 TextUses:576Used by:1266
Symbol 1196 TextUses:576Used by:1266
Symbol 1197 TextUses:576Used by:1266
Symbol 1198 TextUses:576Used by:1266
Symbol 1199 TextUses:576Used by:1266
Symbol 1200 TextUses:576Used by:1266
Symbol 1201 TextUses:576Used by:1266
Symbol 1202 TextUses:576Used by:1266
Symbol 1203 TextUses:576Used by:1266
Symbol 1204 TextUses:576Used by:1266
Symbol 1205 TextUses:576Used by:1266
Symbol 1206 TextUses:576Used by:1266
Symbol 1207 TextUses:576Used by:1266
Symbol 1208 TextUses:576Used by:1266
Symbol 1209 TextUses:576Used by:1266
Symbol 1210 TextUses:576Used by:1266
Symbol 1211 TextUses:576Used by:1266
Symbol 1212 TextUses:576Used by:1266
Symbol 1213 TextUses:576Used by:1266
Symbol 1214 TextUses:576Used by:1266
Symbol 1215 TextUses:576Used by:1266
Symbol 1216 TextUses:576Used by:1266
Symbol 1217 TextUses:576Used by:1266
Symbol 1218 TextUses:576Used by:1266
Symbol 1219 TextUses:576Used by:1266
Symbol 1220 TextUses:576Used by:1266
Symbol 1221 TextUses:576Used by:1266
Symbol 1222 TextUses:576Used by:1266
Symbol 1223 TextUses:576Used by:1266
Symbol 1224 TextUses:576Used by:1266
Symbol 1225 TextUses:576Used by:1266
Symbol 1226 TextUses:576Used by:1266
Symbol 1227 TextUses:576Used by:1266
Symbol 1228 TextUses:576Used by:1266
Symbol 1229 TextUses:576Used by:1266
Symbol 1230 TextUses:576Used by:1266
Symbol 1231 TextUses:576Used by:1266
Symbol 1232 TextUses:576Used by:1266
Symbol 1233 TextUses:576Used by:1266
Symbol 1234 TextUses:576Used by:1266
Symbol 1235 TextUses:576Used by:1266
Symbol 1236 TextUses:576Used by:1266
Symbol 1237 GraphicUsed by:1266
Symbol 1238 TextUses:576Used by:1266
Symbol 1239 TextUses:576Used by:1266
Symbol 1240 TextUses:576Used by:1266
Symbol 1241 TextUses:576Used by:1266
Symbol 1242 TextUses:576Used by:1266
Symbol 1243 TextUses:576Used by:1266
Symbol 1244 TextUses:576Used by:1266
Symbol 1245 TextUses:576Used by:1266
Symbol 1246 TextUses:576Used by:1266
Symbol 1247 TextUses:576Used by:1266
Symbol 1248 TextUses:576Used by:1266
Symbol 1249 TextUses:576Used by:1266
Symbol 1250 TextUses:576Used by:1266
Symbol 1251 TextUses:576Used by:1266
Symbol 1252 TextUses:576Used by:1266
Symbol 1253 TextUses:576Used by:1266
Symbol 1254 TextUses:576Used by:1266
Symbol 1255 GraphicUsed by:1266
Symbol 1256 TextUses:576Used by:1266
Symbol 1257 TextUses:576Used by:1266
Symbol 1258 TextUses:576Used by:1266
Symbol 1259 TextUses:576Used by:1266
Symbol 1260 GraphicUsed by:1266
Symbol 1261 TextUses:576Used by:1266
Symbol 1262 TextUses:576Used by:1266
Symbol 1263 TextUses:576Used by:1266
Symbol 1264 TextUses:576Used by:1266
Symbol 1265 TextUses:576Used by:1266
Symbol 1266 MovieClipUses:1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265Used by:1381
Symbol 1267 GraphicUsed by:1272
Symbol 1268 GraphicUsed by:1272
Symbol 1269 GraphicUsed by:1272
Symbol 1270 GraphicUsed by:1272
Symbol 1271 GraphicUsed by:1272
Symbol 1272 MovieClip {spewer_fla.BGmoniters_185}Uses:1267 356 1268 1269 1270 1271Used by:1381
Symbol 1273 GraphicUsed by:1275
Symbol 1274 GraphicUsed by:1275
Symbol 1275 MovieClipUses:1273 587 1274Used by:1283 1291 1292 1319 1322 1323 1324
Symbol 1276 GraphicUsed by:1277
Symbol 1277 MovieClipUses:1276Used by:1283 1291 1292 1294 1295 1296 1297 1319 1322 1323 1324 1347 1371
Symbol 1278 MovieClipUses:937Used by:1283 1291 1292 1294 1295 1296 1297 1310 1311 1314 1315 1316 1317 1319 1322 1323 1324 1347 1351 1354 1355 1356 1357 1358 1362 1363 1364 1367 1368 1371
Symbol 1279 GraphicUsed by:1280
Symbol 1280 MovieClipUses:1279Used by:1283 1291 1292 1294 1295 1296 1297 1319 1322 1323 1324 1347 1371
Symbol 1281 MovieClipUses:941Used by:1283 1291 1292 1294 1295 1296 1297 1319 1322 1323 1324 1347 1371
Symbol 1282 MovieClipUses:943Used by:1283 1291 1292 1294 1295 1296 1297 1319 1322 1323 1324 1347 1371
Symbol 1283 MovieClip {spewer_fla.doctyping_188}Uses:1275 1277 592 584 1278 1280 1281 1282Used by:1298
Symbol 1284 GraphicUsed by:1291
Symbol 1285 GraphicUsed by:1291
Symbol 1286 GraphicUsed by:1291
Symbol 1287 GraphicUsed by:1291
Symbol 1288 GraphicUsed by:1291
Symbol 1289 GraphicUsed by:1291
Symbol 1290 GraphicUsed by:1291
Symbol 1291 MovieClip {spewer_fla.doc_195}Uses:1275 1277 584 592 1278 1280 1281 1282 1284 1285 1286 1287 1288 1289 1290Used by:1298
Symbol 1292 MovieClip {spewer_fla.doc_196}Uses:1275 1277 592 584 1278 1280 1281 1282Used by:1298
Symbol 1293 MovieClipUses:930Used by:1294 1295 1296 1297 1310 1311 1314 1315 1316 1317 1319 1322 1323 1363 1364 1371
Symbol 1294 MovieClip {spewer_fla.doc_197}Uses:1293 1277 584 592 1278 1280 1281 1282Used by:1298
Symbol 1295 MovieClip {spewer_fla.dochitskeys2_199}Uses:1293 1277 584 592 1278 1280 1281 1282Used by:1298
Symbol 1296 MovieClip {spewer_fla.docmashkeys3_200}Uses:1293 1277 584 592 1278 1280 1281 1282Used by:1298
Symbol 1297 MovieClip {spewer_fla.docsleepingatdesk_201}Uses:1293 592 1277 584 1278 1280 1281 1282Used by:1298
Symbol 1298 MovieClip {spewer_fla.ani1_187}Uses:570 1283 1291 1292 1294 1295 1296 1297Used by:1373
Symbol 1299 MovieClipUses:1014Used by:1310 1311 1314 1315 1316 1317 1324 1347 1351 1354 1355 1356 1357 1358 1362 1363 1364 1367 1368
Symbol 1300 MovieClipUses:1016Used by:1310 1311 1314 1315 1316 1317 1347 1356 1357 1362 1363 1364
Symbol 1301 MovieClipUses:1018Used by:1310 1311 1314 1315 1316 1317 1363 1364
Symbol 1302 MovieClipUses:1020Used by:1310 1311 1314 1315 1316 1317 1324 1351 1354 1355 1356 1357 1358 1362 1363 1364 1367 1368
Symbol 1303 MovieClipUses:1022Used by:1310 1311 1314 1315 1316 1317 1324 1347 1351 1354 1355 1356 1357 1358 1362 1363 1364 1367 1368
Symbol 1304 GraphicUsed by:1305
Symbol 1305 MovieClipUses:1304Used by:1310 1311 1314 1315 1316 1317 1363 1364
Symbol 1306 GraphicUsed by:1307
Symbol 1307 MovieClipUses:1306Used by:1310 1311 1314 1315 1316 1317 1363 1364
Symbol 1308 GraphicUsed by:1309
Symbol 1309 MovieClipUses:1308Used by:1310 1311 1314 1315 1316 1317 1363 1364
Symbol 1310 MovieClip {spewer_fla.doc2_203}Uses:584 590 586 1278 592 594 1299 1300 1301 1302 1303 1305 1293 1307 1309Used by:1318
Symbol 1311 MovieClip {spewer_fla.doc2_212}Uses:584 590 586 1278 592 594 1299 1300 1301 1302 1303 1305 1293 1307 1309Used by:1318
Symbol 1312 GraphicUsed by:1313
Symbol 1313 MovieClipUses:1312Used by:1314 1317 1347
Symbol 1314 MovieClip {spewer_fla.doc2_213}Uses:584 590 586 1278 592 594 1299 1300 1301 1302 1303 1305 1293 1307 1309 1313Used by:1318
Symbol 1315 MovieClip {spewer_fla.doc2_215}Uses:584 590 586 1278 592 594 1299 1300 1301 1302 1303 1305 1293 1307 1309 588Used by:1318
Symbol 1316 MovieClip {spewer_fla.doc2_216}Uses:584 590 586 1278 592 594 1299 1300 1301 1302 1303 1305 1293 1307 1309Used by:1318
Symbol 1317 MovieClip {spewer_fla.doc2erace_217}Uses:584 590 586 1278 592 594 1299 1300 1301 1302 1303 1305 1293 1307 1309 596 1313Used by:1318
Symbol 1318 MovieClip {spewer_fla.doc_202}Uses:1310 1311 1314 1315 1316 1317Used by:1373
Symbol 1319 MovieClip {spewer_fla.doc3lab1_219}Uses:558 1275 1277 562 584 592 1278 1280 1281 1282 1293Used by:1348
Symbol 1320 GraphicUsed by:1321
Symbol 1321 MovieClipUses:1320Used by:1322 1323
Symbol 1322 MovieClip {spewer_fla.doc4_220}Uses:558 1275 1277 562 584 592 1278 1280 1281 1282 1321 1293 72 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173Used by:1348
Symbol 1323 MovieClip {spewer_fla.doc4_222}Uses:558 1275 1277 562 584 592 1278 1280 1281 1282 1321 1293 72 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173Used by:1348
Symbol 1324 MovieClip {spewer_fla.doc4lab4_223}Uses:1275 1277 584 592 1278 1280 1281 1282 558 594 1299 1303 586 588 1302Used by:1348
Symbol 1325 GraphicUsed by:1347
Symbol 1326 GraphicUsed by:1347
Symbol 1327 GraphicUsed by:1347
Symbol 1328 GraphicUsed by:1347
Symbol 1329 GraphicUsed by:1347
Symbol 1330 GraphicUsed by:1347
Symbol 1331 GraphicUsed by:1347
Symbol 1332 GraphicUsed by:1347
Symbol 1333 GraphicUsed by:1347
Symbol 1334 GraphicUsed by:1347
Symbol 1335 GraphicUsed by:1347
Symbol 1336 GraphicUsed by:1347
Symbol 1337 GraphicUsed by:1347
Symbol 1338 GraphicUsed by:1347
Symbol 1339 GraphicUsed by:1347
Symbol 1340 GraphicUsed by:1347
Symbol 1341 GraphicUsed by:1347
Symbol 1342 GraphicUsed by:1347
Symbol 1343 GraphicUsed by:1347
Symbol 1344 GraphicUsed by:1347
Symbol 1345 GraphicUsed by:1347
Symbol 1346 GraphicUsed by:1347
Symbol 1347 MovieClip {spewer_fla.doc4lab5_224}Uses:1325 1277 584 592 1278 1280 1281 1282 1326 1327 1328 1329 594 1299 1303 1330 1331 1332 1333 1334 1313 1335 1300 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346Used by:1348
Symbol 1348 MovieClip {spewer_fla.doc4_218}Uses:1319 1322 1323 1324 1347Used by:1373
Symbol 1349 GraphicUsed by:1350
Symbol 1350 MovieClipUses:1349Used by:1351 1354 1355 1356 1357 1358 1362 1367 1368
Symbol 1351 MovieClip {spewer_fla.doc3walk1_226}Uses:1278 1350 592 594 1299 1303 584 586 588 1302Used by:1369 1370
Symbol 1352 GraphicUsed by:1353
Symbol 1353 MovieClipUses:1352Used by:1354 1355 1362
Symbol 1354 MovieClipUses:1278 588 1350 592 594 1299 1303 584 586 1302 1353Used by:1355
Symbol 1355 MovieClip {spewer_fla.doc3walk2_228}Uses:1278 588 1350 592 594 1299 1303 584 586 1302 1353 1354Used by:1362 1369 1370
Symbol 1356 MovieClipUses:1278 588 1350 592 594 1299 1300 1303 584 1302 586Used by:1357
Symbol 1357 MovieClip {spewer_fla.doc3walk3_231}Uses:1278 588 1350 592 594 1299 1300 1303 584 1302 586 1356Used by:1369 1370
Symbol 1358 MovieClipUses:1278 1350 592 594 1299 1303 584 586 588 1302Used by:1362
Symbol 1359 GraphicUsed by:1362
Symbol 1360 GraphicUsed by:1361
Symbol 1361 MovieClipUses:1360Used by:1362
Symbol 1362 MovieClip {spewer_fla.doc3walk4_233}Uses:1278 1350 592 594 1299 1303 584 586 588 1302 1358 1359 1361 596 1300 1353 1355Used by:1369 1370
Symbol 1363 MovieClipUses:584 590 586 1278 592 594 1299 1300 1301 1302 1303 1305 1293 1307 1309Used by:1364 1365
Symbol 1364 MovieClip {spewer_fla.doc3upupclose1_236}Uses:584 590 586 1278 592 594 1299 1300 1301 1302 1303 1305 1293 1307 1309 1363Used by:1369 1370
Symbol 1365 MovieClip {spewer_fla.doc3upclose_238}Uses:1363Used by:1369 1370
Symbol 1366 GraphicUsed by:1367 1368
Symbol 1367 MovieClipUses:1278 584 586 588 1350 592 594 1299 1303 1302 566 1366Used by:1368
Symbol 1368 MovieClip {spewer_fla.doc3walk5_239}Uses:1278 584 586 588 1350 592 594 1299 1303 1302 566 1366 1367Used by:1369 1370
Symbol 1369 MovieClip {spewer_fla.doc3_225}Uses:1351 1355 1357 1362 1364 1365 1368Used by:1373
Symbol 1370 MovieClip {spewer_fla.docpacingcutscene_241}Uses:1351 1355 1357 1362 1364 1365 1368Used by:1373
Symbol 1371 MovieClipUses:1293 592 1277 584 1278 1280 1281 1282Used by:1373
Symbol 1372 GraphicUsed by:1373
Symbol 1373 MovieClipUses:1298 1318 1348 1369 1370 1371 570 1372Used by:1381
Symbol 1374 BitmapUsed by:1375
Symbol 1375 GraphicUses:1374Used by:1376
Symbol 1376 MovieClipUses:1375Used by:1381
Symbol 1377 BitmapUsed by:1378
Symbol 1378 GraphicUses:1377Used by:1379
Symbol 1379 MovieClipUses:1378Used by:1380
Symbol 1380 MovieClipUses:1379Used by:1381
Symbol 1381 MovieClip {backgroundAnimation}Uses:1187 1266 1272 1373 1376 1380Used by:1382
Symbol 1382 MovieClip {spewer_fla.objectloader_67}Uses:899 1042 1184 1381Used by:Timeline
Streaming Sound 1Used by:Symbol 846 MovieClip {spewer_fla.introsong_59}
Streaming Sound 2Used by:Symbol 1042 MovieClip {ending}

Instance Names

"intros"Frame 1Symbol 624 MovieClip {spewer_fla.ourintro_1}
"menu"Frame 1Symbol 844 MovieClip
"intro"Frame 1Symbol 846 MovieClip {spewer_fla.introsong_59}
"fadeout"Frame 1Symbol 848 MovieClip {spewer_fla.cutscenefadeout_60}
"newgroundsAPIconnector"Frame 1Symbol 858 MovieClip {spewer_fla.NewgroundsAPI_Connector_61}
"medal_popup"Frame 1Symbol 871 MovieClip {spewer_fla.NewgroundsAPI_Medal_Popup_63}
"anim"Symbol 196 MovieClip {poof} Frame 1Symbol 92 MovieClip
"anim"Symbol 196 MovieClip {poof} Frame 2Symbol 113 MovieClip
"anim"Symbol 196 MovieClip {poof} Frame 3Symbol 133 MovieClip
"anim"Symbol 196 MovieClip {poof} Frame 4Symbol 154 MovieClip
"anim"Symbol 196 MovieClip {poof} Frame 5Symbol 174 MovieClip
"anim"Symbol 196 MovieClip {poof} Frame 6Symbol 195 MovieClip
"tail2"Symbol 261 MovieClip Frame 1Symbol 253 MovieClip
"tail1"Symbol 261 MovieClip Frame 1Symbol 255 MovieClip
"foot1"Symbol 261 MovieClip Frame 1Symbol 257 MovieClip
"foot2"Symbol 261 MovieClip Frame 1Symbol 257 MovieClip
"body"Symbol 261 MovieClip Frame 1Symbol 260 MovieClip {spewer_fla.body01_320}
"eye1"Symbol 279 MovieClip Frame 1Symbol 265 MovieClip
"eye2"Symbol 279 MovieClip Frame 1Symbol 265 MovieClip
"munch"Symbol 279 MovieClip Frame 3Symbol 277 MovieClip {spewer_fla.suckup01_325}
"eye1"Symbol 298 MovieClip Frame 1Symbol 283 MovieClip
"eye2"Symbol 298 MovieClip Frame 1Symbol 283 MovieClip
"munch"Symbol 298 MovieClip Frame 3Symbol 296 MovieClip {spewer_fla.suckup01red_330}
"eye1"Symbol 316 MovieClip Frame 1Symbol 302 MovieClip
"eye2"Symbol 316 MovieClip Frame 1Symbol 302 MovieClip
"munch"Symbol 316 MovieClip Frame 3Symbol 314 MovieClip {spewer_fla.suckup01white_334}
"eye1"Symbol 332 MovieClip Frame 1Symbol 319 MovieClip
"eye2"Symbol 332 MovieClip Frame 1Symbol 319 MovieClip
"munch"Symbol 332 MovieClip Frame 3Symbol 330 MovieClip {spewer_fla.suckup01gish_338}
"eye1"Symbol 349 MovieClip Frame 1Symbol 336 MovieClip
"eye2"Symbol 349 MovieClip Frame 1Symbol 336 MovieClip
"munch"Symbol 349 MovieClip Frame 3Symbol 347 MovieClip {spewer_fla.suckup01yellow_342}
"face"Symbol 350 MovieClip Frame 1Symbol 279 MovieClip
"face"Symbol 350 MovieClip Frame 2Symbol 298 MovieClip
"face"Symbol 350 MovieClip Frame 3Symbol 316 MovieClip
"face"Symbol 350 MovieClip Frame 4Symbol 332 MovieClip
"face"Symbol 350 MovieClip Frame 5Symbol 349 MovieClip
"bodyParts"Symbol 351 MovieClip {spewer} Frame 1Symbol 261 MovieClip
"faceWhole"Symbol 351 MovieClip {spewer} Frame 1Symbol 350 MovieClip
"melt"Symbol 457 MovieClip {tile} Frame 22Symbol 411 MovieClip {spewer_fla.Symbol49_293}
"tiles"Symbol 464 MovieClip {tileDisp} Frame 1Symbol 462 MovieClip
"anim"Symbol 512 MovieClip {pillGraphic} Frame 1Symbol 489 MovieClip
"anim"Symbol 524 MovieClip {mapBox} Frame 2Symbol 516 MovieClip
"boxLighten"Symbol 524 MovieClip {mapBox} Frame 3Symbol 517 MovieClip
"anim"Symbol 524 MovieClip {mapBox} Frame 3Symbol 523 MovieClip
"greenRadio"Symbol 545 MovieClip {radioButtons} Frame 1Symbol 542 MovieClip {fl.controls.RadioButton}
"redRadio"Symbol 545 MovieClip {radioButtons} Frame 1Symbol 542 MovieClip {fl.controls.RadioButton}
"whiteRadio"Symbol 545 MovieClip {radioButtons} Frame 1Symbol 542 MovieClip {fl.controls.RadioButton}
"blackRadio"Symbol 545 MovieClip {radioButtons} Frame 1Symbol 542 MovieClip {fl.controls.RadioButton}
"yellowRadio"Symbol 545 MovieClip {radioButtons} Frame 1Symbol 542 MovieClip {fl.controls.RadioButton}
"dot"Symbol 545 MovieClip {radioButtons} Frame 1Symbol 544 MovieClip
"hitButton"Symbol 581 MovieClip {spewer_fla.nglinkcontainer_17} Frame 1Symbol 580 Button
"hitButton"Symbol 621 MovieClip {spewer_fla.edlinkcontainer_30} Frame 1Symbol 580 Button
"hitButton"Symbol 622 MovieClip {spewer_fla.2dlinkcontainer_31} Frame 1Symbol 580 Button
"hitButton"Symbol 654 MovieClip {spewer_fla.jflinkcontainer_36} Frame 1Symbol 580 Button
"background"Symbol 698 MovieClip {spewer_fla.NewgroundsAPI_Ad_Unit_38} Frame 1Symbol 697 MovieClip
"hitButton"Symbol 705 MovieClip {spewer_fla.dblinkcontainer_41} Frame 1Symbol 580 Button
"poop"Symbol 706 MovieClip Frame 1Symbol 698 MovieClip {spewer_fla.NewgroundsAPI_Ad_Unit_38}
"cont"Symbol 706 MovieClip Frame 1Symbol 704 Button
"eliSite"Symbol 813 MovieClip {spewer_fla.title_46} Frame 1Symbol 802 Button
"edSite"Symbol 813 MovieClip {spewer_fla.title_46} Frame 1Symbol 807 Button
"closeCredits"Symbol 813 MovieClip {spewer_fla.title_46} Frame 1Symbol 809 Button
"textBox"Symbol 825 MovieClip Frame 1Symbol 819 EditableText
"doneButton"Symbol 825 MovieClip Frame 1Symbol 824 Button
"loadingScreen"Symbol 844 MovieClip Frame 1Symbol 706 MovieClip
"loadBox"Symbol 844 MovieClip Frame 1Symbol 708 EditableText
"playButton"Symbol 844 MovieClip Frame 1Symbol 721 Button
"editButton"Symbol 844 MovieClip Frame 1Symbol 749 Button
"scanLines"Symbol 844 MovieClip Frame 1Symbol 754 MovieClip
"credits"Symbol 844 MovieClip Frame 1Symbol 777 Button
"titleScreen"Symbol 844 MovieClip Frame 1Symbol 813 MovieClip {spewer_fla.title_46}
"eraseShit"Symbol 844 MovieClip Frame 1Symbol 817 Button
"eraseBox"Symbol 844 MovieClip Frame 1Symbol 825 MovieClip
"winner"Symbol 844 MovieClip Frame 1Symbol 827 MovieClip {spewer_fla.erasesuccess_54}
"failed"Symbol 844 MovieClip Frame 1Symbol 829 MovieClip {spewer_fla.erasefailed_55}
"newgrounds"Symbol 844 MovieClip Frame 1Symbol 835 Button
"downloadButton"Symbol 844 MovieClip Frame 1Symbol 840 Button
"flasher"Symbol 844 MovieClip Frame 1Symbol 843 MovieClip {spewer_fla.menu_58}
"closeButton"Symbol 858 MovieClip {spewer_fla.NewgroundsAPI_Connector_61} Frame 1Symbol 851 Button
"medalNameText"Symbol 871 MovieClip {spewer_fla.NewgroundsAPI_Medal_Popup_63} Frame 10Symbol 865 EditableText
"medalValueText"Symbol 871 MovieClip {spewer_fla.NewgroundsAPI_Medal_Popup_63} Frame 10Symbol 868 EditableText
"medal_icon"Symbol 871 MovieClip {spewer_fla.NewgroundsAPI_Medal_Popup_63} Frame 10Symbol 870 MovieClip
"tutDisp"Symbol 1045 MovieClip Frame 1Symbol 1044 EditableText
"mover"Symbol 1047 MovieClip Frame 1Symbol 1046 MovieClip
"AAHigh"Symbol 1126 MovieClip Frame 1Symbol 1108 Button
"AAMedium"Symbol 1126 MovieClip Frame 1Symbol 1112 Button
"AALow"Symbol 1126 MovieClip Frame 1Symbol 1116 Button
"enableBG"Symbol 1126 MovieClip Frame 1Symbol 1120 Button
"disableBG"Symbol 1126 MovieClip Frame 1Symbol 1124 Button
"enableSound"Symbol 1126 MovieClip Frame 1Symbol 1120 Button
"disableSound"Symbol 1126 MovieClip Frame 1Symbol 1124 Button
"chapters"Symbol 1133 MovieClip {spewer_fla.chaptersonpause_161} Frame 1Symbol 1083 MovieClip
"statDisp"Symbol 1146 MovieClip {spewer_fla.menu_150} Frame 1Symbol 1074 EditableText
"levelNameDisp"Symbol 1146 MovieClip {spewer_fla.menu_150} Frame 1Symbol 1076 EditableText
"chapters"Symbol 1146 MovieClip {spewer_fla.menu_150} Frame 1Symbol 1083 MovieClip
"returnToGame"Symbol 1146 MovieClip {spewer_fla.menu_150} Frame 1Symbol 1089 Button
"restartLevel"Symbol 1146 MovieClip {spewer_fla.menu_150} Frame 1Symbol 1095 Button
"exitToTitle"Symbol 1146 MovieClip {spewer_fla.menu_150} Frame 1Symbol 1100 Button
"options"Symbol 1146 MovieClip {spewer_fla.menu_150} Frame 1Symbol 1126 MovieClip
"loadBox"Symbol 1146 MovieClip {spewer_fla.menu_150} Frame 2Symbol 1128 EditableText
"scanLines"Symbol 1146 MovieClip {spewer_fla.menu_150} Frame 2Symbol 754 MovieClip
"playButton"Symbol 1146 MovieClip {spewer_fla.menu_150} Frame 2Symbol 721 Button
"editButton"Symbol 1146 MovieClip {spewer_fla.menu_150} Frame 2Symbol 749 Button
"titleScreen"Symbol 1146 MovieClip {spewer_fla.menu_150} Frame 2Symbol 813 MovieClip {spewer_fla.title_46}
"levelNameDisp"Symbol 1146 MovieClip {spewer_fla.menu_150} Frame 3Symbol 1131 EditableText
"levelNameDisp"Symbol 1146 MovieClip {spewer_fla.menu_150} Frame 4Symbol 1135 EditableText
"variants"Symbol 1146 MovieClip {spewer_fla.menu_150} Frame 4Symbol 1145 MovieClip {spewer_fla.resetscreen_162}
"levelName"Symbol 1153 MovieClip {spewer_fla.levelproperties_163} Frame 1Symbol 1150 EditableText
"defaultPuke"Symbol 1153 MovieClip {spewer_fla.levelproperties_163} Frame 1Symbol 546 MovieClip {fl.controls.Slider}
"toolTip"Symbol 1162 MovieClip Frame 1Symbol 1161 EditableText
"tutorial"Symbol 1184 MovieClip {headsUpDisplay} Frame 1Symbol 1045 MovieClip
"barMask"Symbol 1184 MovieClip {headsUpDisplay} Frame 1Symbol 1047 MovieClip
"pukeBar"Symbol 1184 MovieClip {headsUpDisplay} Frame 1Symbol 1068 MovieClip
"pukeFlash"Symbol 1184 MovieClip {headsUpDisplay} Frame 1Symbol 1070 MovieClip {spewer_fla.pukebarflash_148}
"barCont"Symbol 1184 MovieClip {headsUpDisplay} Frame 1Symbol 1072 MovieClip
"mapScreen"Symbol 1184 MovieClip {headsUpDisplay} Frame 1Symbol 1146 MovieClip {spewer_fla.menu_150}
"nameDisplay"Symbol 1184 MovieClip {headsUpDisplay} Frame 1Symbol 1148 EditableText
"levelProps"Symbol 1184 MovieClip {headsUpDisplay} Frame 1Symbol 1153 MovieClip {spewer_fla.levelproperties_163}
"helpMe"Symbol 1184 MovieClip {headsUpDisplay} Frame 1Symbol 1156 MovieClip
"editLevel"Symbol 1184 MovieClip {headsUpDisplay} Frame 1Symbol 1160 Button
"edHUD"Symbol 1184 MovieClip {headsUpDisplay} Frame 1Symbol 1162 MovieClip
"outputButton"Symbol 1184 MovieClip {headsUpDisplay} Frame 1Symbol 1167 Button
"editorOutput"Symbol 1184 MovieClip {headsUpDisplay} Frame 1Symbol 1168 EditableText
"testLevel"Symbol 1184 MovieClip {headsUpDisplay} Frame 1Symbol 1173 Button
"propsButton"Symbol 1184 MovieClip {headsUpDisplay} Frame 1Symbol 1178 Button
"helpButton"Symbol 1184 MovieClip {headsUpDisplay} Frame 1Symbol 1183 Button
"anim"Symbol 1298 MovieClip {spewer_fla.ani1_187} Frame 2Symbol 1283 MovieClip {spewer_fla.doctyping_188}
"anim"Symbol 1298 MovieClip {spewer_fla.ani1_187} Frame 3Symbol 1291 MovieClip {spewer_fla.doc_195}
"anim"Symbol 1298 MovieClip {spewer_fla.ani1_187} Frame 4Symbol 1292 MovieClip {spewer_fla.doc_196}
"anim"Symbol 1298 MovieClip {spewer_fla.ani1_187} Frame 5Symbol 1294 MovieClip {spewer_fla.doc_197}
"anim"Symbol 1298 MovieClip {spewer_fla.ani1_187} Frame 6Symbol 1295 MovieClip {spewer_fla.dochitskeys2_199}
"anim"Symbol 1298 MovieClip {spewer_fla.ani1_187} Frame 7Symbol 1296 MovieClip {spewer_fla.docmashkeys3_200}
"anim"Symbol 1298 MovieClip {spewer_fla.ani1_187} Frame 8Symbol 1297 MovieClip {spewer_fla.docsleepingatdesk_201}
"anim"Symbol 1318 MovieClip {spewer_fla.doc_202} Frame 2Symbol 1310 MovieClip {spewer_fla.doc2_203}
"anim"Symbol 1318 MovieClip {spewer_fla.doc_202} Frame 3Symbol 1311 MovieClip {spewer_fla.doc2_212}
"anim"Symbol 1318 MovieClip {spewer_fla.doc_202} Frame 4Symbol 1314 MovieClip {spewer_fla.doc2_213}
"anim"Symbol 1318 MovieClip {spewer_fla.doc_202} Frame 5Symbol 1315 MovieClip {spewer_fla.doc2_215}
"anim"Symbol 1318 MovieClip {spewer_fla.doc_202} Frame 6Symbol 1316 MovieClip {spewer_fla.doc2_216}
"anim"Symbol 1318 MovieClip {spewer_fla.doc_202} Frame 7Symbol 1317 MovieClip {spewer_fla.doc2erace_217}
"anim"Symbol 1348 MovieClip {spewer_fla.doc4_218} Frame 2Symbol 1319 MovieClip {spewer_fla.doc3lab1_219}
"anim"Symbol 1348 MovieClip {spewer_fla.doc4_218} Frame 3Symbol 1322 MovieClip {spewer_fla.doc4_220}
"anim"Symbol 1348 MovieClip {spewer_fla.doc4_218} Frame 4Symbol 1323 MovieClip {spewer_fla.doc4_222}
"anim"Symbol 1348 MovieClip {spewer_fla.doc4_218} Frame 5Symbol 1324 MovieClip {spewer_fla.doc4lab4_223}
"anim"Symbol 1348 MovieClip {spewer_fla.doc4_218} Frame 7Symbol 1347 MovieClip {spewer_fla.doc4lab5_224}
"anim"Symbol 1369 MovieClip {spewer_fla.doc3_225} Frame 2Symbol 1351 MovieClip {spewer_fla.doc3walk1_226}
"anim"Symbol 1369 MovieClip {spewer_fla.doc3_225} Frame 3Symbol 1355 MovieClip {spewer_fla.doc3walk2_228}
"anim"Symbol 1369 MovieClip {spewer_fla.doc3_225} Frame 4Symbol 1357 MovieClip {spewer_fla.doc3walk3_231}
"anim"Symbol 1369 MovieClip {spewer_fla.doc3_225} Frame 5Symbol 1362 MovieClip {spewer_fla.doc3walk4_233}
"anim"Symbol 1369 MovieClip {spewer_fla.doc3_225} Frame 6Symbol 1364 MovieClip {spewer_fla.doc3upupclose1_236}
"anim"Symbol 1369 MovieClip {spewer_fla.doc3_225} Frame 7Symbol 1365 MovieClip {spewer_fla.doc3upclose_238}
"anim"Symbol 1369 MovieClip {spewer_fla.doc3_225} Frame 8Symbol 1368 MovieClip {spewer_fla.doc3walk5_239}
"anim"Symbol 1370 MovieClip {spewer_fla.docpacingcutscene_241} Frame 2Symbol 1351 MovieClip {spewer_fla.doc3walk1_226}
"anim"Symbol 1370 MovieClip {spewer_fla.docpacingcutscene_241} Frame 3Symbol 1355 MovieClip {spewer_fla.doc3walk2_228}
"anim"Symbol 1370 MovieClip {spewer_fla.docpacingcutscene_241} Frame 4Symbol 1357 MovieClip {spewer_fla.doc3walk3_231}
"anim"Symbol 1370 MovieClip {spewer_fla.docpacingcutscene_241} Frame 5Symbol 1362 MovieClip {spewer_fla.doc3walk4_233}
"anim"Symbol 1370 MovieClip {spewer_fla.docpacingcutscene_241} Frame 6Symbol 1364 MovieClip {spewer_fla.doc3upupclose1_236}
"anim"Symbol 1370 MovieClip {spewer_fla.docpacingcutscene_241} Frame 7Symbol 1365 MovieClip {spewer_fla.doc3upclose_238}
"anim"Symbol 1370 MovieClip {spewer_fla.docpacingcutscene_241} Frame 8Symbol 1368 MovieClip {spewer_fla.doc3walk5_239}
"mainAnim"Symbol 1373 MovieClip Frame 1Symbol 1298 MovieClip {spewer_fla.ani1_187}
"mainAnim"Symbol 1373 MovieClip Frame 2Symbol 1318 MovieClip {spewer_fla.doc_202}
"mainAnim"Symbol 1373 MovieClip Frame 3Symbol 1348 MovieClip {spewer_fla.doc4_218}
"mainAnim"Symbol 1373 MovieClip Frame 4Symbol 1369 MovieClip {spewer_fla.doc3_225}
"mainAnim"Symbol 1373 MovieClip Frame 5Symbol 1298 MovieClip {spewer_fla.ani1_187}
"mainAnim"Symbol 1373 MovieClip Frame 6Symbol 1348 MovieClip {spewer_fla.doc4_218}
"mainAnim"Symbol 1373 MovieClip Frame 7Symbol 1318 MovieClip {spewer_fla.doc_202}
"bg"Symbol 1381 MovieClip {backgroundAnimation} Frame 1Symbol 1187 MovieClip
"whiteboard"Symbol 1381 MovieClip {backgroundAnimation} Frame 1Symbol 1266 MovieClip
"screens"Symbol 1381 MovieClip {backgroundAnimation} Frame 1Symbol 1272 MovieClip {spewer_fla.BGmoniters_185}
"doc"Symbol 1381 MovieClip {backgroundAnimation} Frame 1Symbol 1373 MovieClip
"glass"Symbol 1381 MovieClip {backgroundAnimation} Frame 1Symbol 1376 MovieClip
"gg"Symbol 1381 MovieClip {backgroundAnimation} Frame 1Symbol 1380 MovieClip

Special Tags

FileAttributes (69)Timeline Frame 1Access local files only, Metadata not present, AS3.
Protect (24)Timeline Frame 10 bytes ""




http://swfchan.com/20/99217/info.shtml
Created: 22/3 -2019 01:35:46 Last modified: 22/3 -2019 01:35:46 Server time: 22/12 -2024 12:43:00