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

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

Zunder Fury.swf

This is the info page for
Flash #29988

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


Text
B

R

L

Hold down LEFT MOUSE BUTTON
to fire bullets.

DOUBLE CLICK or press
SPACE BAR to fire bombs.

Doogog.com

Graphics Package

Wave

99

Controls

Movement -  A,S,W,D or Arrow Keys

AutoFire   -  Left Mouse Click to toggle

Bomb     -  Space Bar or Control

Pause     -  P or ESC

Okay

Okay

Game by:

Music By:

Back

Back

Doogog

www.doogog.com

Macroform

www.macroform.co.nr

Okay!

Okay!

Well Done!

You've acomplished the following Feats:

Multi Millionaire

Earn a score of 3,000,000 points

Feats

Normal

Normal

Heroic

Heroic

Legend

Legend

Submitted

Total Time:

The End!

Good Luck!

Try Again!

Score

100,000,000

Menu

Menu

Submit

Submit

Bob

under

Fury

Best:

100,000,000

<p align="center"><font face="MV Boli" size="22" color="#000000" letterSpacing="1.000000" kerning="0"><b>00</b></font></p>

<p align="left"><font face="SF Comic Script" size="27" color="#ffcc00" letterSpacing="1.000000" kerning="0">000,000,000</font></p>

<p align="center"><font face="SF Comic Script" size="27" color="#00cc66" letterSpacing="1.000000" kerning="0">1X</font></p>

<p align="left"><font face="SF Comic Script" size="15" color="#f44a2d" letterSpacing="1.000000" kerning="0"><b>00</b></font></p>

<p align="left"><font face="SF Comic Script" size="15" color="#00ccff" letterSpacing="1.000000" kerning="0"><b>00</b></font></p>

382

Victory!

Time:

500

10000

Lives:

5

10000

Max Combo:

32

10000

Total Bonus:

10000

Next

Next

Play

Play

Stats

Stats

Debug

Champions

Champions

Feats

Feats

1

Jump

Doogog.com

Doogog.com

Paused!

Resume

Resume

Sound:

Sound:

Quit

Quit

Music:

Music:

OFF

OFF

Controls

Controls

Are you sure?

Yes

Yes

No

No

Stats

Mobs Killed:

Total Points:

Total Credits:

Best Score:

Highest Wave:

Feats:

100,000,000

100,000,000

100,000,000

100,000,000

100,000,000

100,000,000

Upgrade

Credits:

1,000,000

Weapon

Speed

Bomb

Life

100K

+

Points

10,000

10,000

10,000

10,000

10,000

Maxed

Continue?

Your score will be set to

when continuing.

000000000

100000

Sounds Package

ActionScript [AS3]

Section 1
//MD5 (com.gsolo.encryption.MD5) package com.gsolo.encryption { public class MD5 { public static const HEX_FORMAT_LOWERCASE:uint = 0; public static const HEX_FORMAT_UPPERCASE:uint = 1; public static const BASE64_PAD_CHARACTER_DEFAULT_COMPLIANCE:String = ""; public static const BASE64_PAD_CHARACTER_RFC_COMPLIANCE:String = "="; public static var hexcase:uint = 0; public static var b64pad:String = ""; public static function md5_gg(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number):Number{ return (md5_cmn(((_arg2 & _arg4) | (_arg3 & ~(_arg4))), _arg1, _arg2, _arg5, _arg6, _arg7)); } public static function md5_cmn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number):Number{ return (safe_add(bit_rol(safe_add(safe_add(_arg2, _arg1), safe_add(_arg4, _arg6)), _arg5), _arg3)); } public static function binl_md5(_arg1:Array, _arg2:Number):Array{ var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; _arg1[(_arg2 >> 5)] = (_arg1[(_arg2 >> 5)] | (128 << (_arg2 % 32))); _arg1[((((_arg2 + 64) >>> 9) << 4) + 14)] = _arg2; _local3 = 1732584193; _local4 = -271733879; _local5 = -1732584194; _local6 = 271733878; _local7 = 0; while (_local7 < _arg1.length) { _local8 = _local3; _local9 = _local4; _local10 = _local5; _local11 = _local6; _local3 = md5_ff(_local3, _local4, _local5, _local6, _arg1[(_local7 + 0)], 7, -680876936); _local6 = md5_ff(_local6, _local3, _local4, _local5, _arg1[(_local7 + 1)], 12, -389564586); _local5 = md5_ff(_local5, _local6, _local3, _local4, _arg1[(_local7 + 2)], 17, 606105819); _local4 = md5_ff(_local4, _local5, _local6, _local3, _arg1[(_local7 + 3)], 22, -1044525330); _local3 = md5_ff(_local3, _local4, _local5, _local6, _arg1[(_local7 + 4)], 7, -176418897); _local6 = md5_ff(_local6, _local3, _local4, _local5, _arg1[(_local7 + 5)], 12, 1200080426); _local5 = md5_ff(_local5, _local6, _local3, _local4, _arg1[(_local7 + 6)], 17, -1473231341); _local4 = md5_ff(_local4, _local5, _local6, _local3, _arg1[(_local7 + 7)], 22, -45705983); _local3 = md5_ff(_local3, _local4, _local5, _local6, _arg1[(_local7 + 8)], 7, 1770035416); _local6 = md5_ff(_local6, _local3, _local4, _local5, _arg1[(_local7 + 9)], 12, -1958414417); _local5 = md5_ff(_local5, _local6, _local3, _local4, _arg1[(_local7 + 10)], 17, -42063); _local4 = md5_ff(_local4, _local5, _local6, _local3, _arg1[(_local7 + 11)], 22, -1990404162); _local3 = md5_ff(_local3, _local4, _local5, _local6, _arg1[(_local7 + 12)], 7, 1804603682); _local6 = md5_ff(_local6, _local3, _local4, _local5, _arg1[(_local7 + 13)], 12, -40341101); _local5 = md5_ff(_local5, _local6, _local3, _local4, _arg1[(_local7 + 14)], 17, -1502002290); _local4 = md5_ff(_local4, _local5, _local6, _local3, _arg1[(_local7 + 15)], 22, 1236535329); _local3 = md5_gg(_local3, _local4, _local5, _local6, _arg1[(_local7 + 1)], 5, -165796510); _local6 = md5_gg(_local6, _local3, _local4, _local5, _arg1[(_local7 + 6)], 9, -1069501632); _local5 = md5_gg(_local5, _local6, _local3, _local4, _arg1[(_local7 + 11)], 14, 643717713); _local4 = md5_gg(_local4, _local5, _local6, _local3, _arg1[(_local7 + 0)], 20, -373897302); _local3 = md5_gg(_local3, _local4, _local5, _local6, _arg1[(_local7 + 5)], 5, -701558691); _local6 = md5_gg(_local6, _local3, _local4, _local5, _arg1[(_local7 + 10)], 9, 38016083); _local5 = md5_gg(_local5, _local6, _local3, _local4, _arg1[(_local7 + 15)], 14, -660478335); _local4 = md5_gg(_local4, _local5, _local6, _local3, _arg1[(_local7 + 4)], 20, -405537848); _local3 = md5_gg(_local3, _local4, _local5, _local6, _arg1[(_local7 + 9)], 5, 568446438); _local6 = md5_gg(_local6, _local3, _local4, _local5, _arg1[(_local7 + 14)], 9, -1019803690); _local5 = md5_gg(_local5, _local6, _local3, _local4, _arg1[(_local7 + 3)], 14, -187363961); _local4 = md5_gg(_local4, _local5, _local6, _local3, _arg1[(_local7 + 8)], 20, 1163531501); _local3 = md5_gg(_local3, _local4, _local5, _local6, _arg1[(_local7 + 13)], 5, -1444681467); _local6 = md5_gg(_local6, _local3, _local4, _local5, _arg1[(_local7 + 2)], 9, -51403784); _local5 = md5_gg(_local5, _local6, _local3, _local4, _arg1[(_local7 + 7)], 14, 1735328473); _local4 = md5_gg(_local4, _local5, _local6, _local3, _arg1[(_local7 + 12)], 20, -1926607734); _local3 = md5_hh(_local3, _local4, _local5, _local6, _arg1[(_local7 + 5)], 4, -378558); _local6 = md5_hh(_local6, _local3, _local4, _local5, _arg1[(_local7 + 8)], 11, -2022574463); _local5 = md5_hh(_local5, _local6, _local3, _local4, _arg1[(_local7 + 11)], 16, 1839030562); _local4 = md5_hh(_local4, _local5, _local6, _local3, _arg1[(_local7 + 14)], 23, -35309556); _local3 = md5_hh(_local3, _local4, _local5, _local6, _arg1[(_local7 + 1)], 4, -1530992060); _local6 = md5_hh(_local6, _local3, _local4, _local5, _arg1[(_local7 + 4)], 11, 1272893353); _local5 = md5_hh(_local5, _local6, _local3, _local4, _arg1[(_local7 + 7)], 16, -155497632); _local4 = md5_hh(_local4, _local5, _local6, _local3, _arg1[(_local7 + 10)], 23, -1094730640); _local3 = md5_hh(_local3, _local4, _local5, _local6, _arg1[(_local7 + 13)], 4, 681279174); _local6 = md5_hh(_local6, _local3, _local4, _local5, _arg1[(_local7 + 0)], 11, -358537222); _local5 = md5_hh(_local5, _local6, _local3, _local4, _arg1[(_local7 + 3)], 16, -722521979); _local4 = md5_hh(_local4, _local5, _local6, _local3, _arg1[(_local7 + 6)], 23, 76029189); _local3 = md5_hh(_local3, _local4, _local5, _local6, _arg1[(_local7 + 9)], 4, -640364487); _local6 = md5_hh(_local6, _local3, _local4, _local5, _arg1[(_local7 + 12)], 11, -421815835); _local5 = md5_hh(_local5, _local6, _local3, _local4, _arg1[(_local7 + 15)], 16, 530742520); _local4 = md5_hh(_local4, _local5, _local6, _local3, _arg1[(_local7 + 2)], 23, -995338651); _local3 = md5_ii(_local3, _local4, _local5, _local6, _arg1[(_local7 + 0)], 6, -198630844); _local6 = md5_ii(_local6, _local3, _local4, _local5, _arg1[(_local7 + 7)], 10, 1126891415); _local5 = md5_ii(_local5, _local6, _local3, _local4, _arg1[(_local7 + 14)], 15, -1416354905); _local4 = md5_ii(_local4, _local5, _local6, _local3, _arg1[(_local7 + 5)], 21, -57434055); _local3 = md5_ii(_local3, _local4, _local5, _local6, _arg1[(_local7 + 12)], 6, 1700485571); _local6 = md5_ii(_local6, _local3, _local4, _local5, _arg1[(_local7 + 3)], 10, -1894986606); _local5 = md5_ii(_local5, _local6, _local3, _local4, _arg1[(_local7 + 10)], 15, -1051523); _local4 = md5_ii(_local4, _local5, _local6, _local3, _arg1[(_local7 + 1)], 21, -2054922799); _local3 = md5_ii(_local3, _local4, _local5, _local6, _arg1[(_local7 + 8)], 6, 1873313359); _local6 = md5_ii(_local6, _local3, _local4, _local5, _arg1[(_local7 + 15)], 10, -30611744); _local5 = md5_ii(_local5, _local6, _local3, _local4, _arg1[(_local7 + 6)], 15, -1560198380); _local4 = md5_ii(_local4, _local5, _local6, _local3, _arg1[(_local7 + 13)], 21, 1309151649); _local3 = md5_ii(_local3, _local4, _local5, _local6, _arg1[(_local7 + 4)], 6, -145523070); _local6 = md5_ii(_local6, _local3, _local4, _local5, _arg1[(_local7 + 11)], 10, -1120210379); _local5 = md5_ii(_local5, _local6, _local3, _local4, _arg1[(_local7 + 2)], 15, 718787259); _local4 = md5_ii(_local4, _local5, _local6, _local3, _arg1[(_local7 + 9)], 21, -343485551); _local3 = safe_add(_local3, _local8); _local4 = safe_add(_local4, _local9); _local5 = safe_add(_local5, _local10); _local6 = safe_add(_local6, _local11); _local7 = (_local7 + 16); }; return ([_local3, _local4, _local5, _local6]); } public static function str2rstr_utf16le(_arg1:String):String{ var _local2:String; var _local3:Number; _local2 = ""; _local3 = 0; while (_local3 < _arg1.length) { _local2 = (_local2 + String.fromCharCode((_arg1.charCodeAt(_local3) & 0xFF), ((_arg1.charCodeAt(_local3) >>> 8) & 0xFF))); _local3++; }; return (_local2); } public static function hex_hmac_md5(_arg1:String, _arg2:String):String{ return (rstr2hex(rstr_hmac_md5(str2rstr_utf8(_arg1), str2rstr_utf8(_arg2)))); } public static function binl2rstr(_arg1:Array):String{ var _local2:String; var _local3:Number; _local2 = ""; _local3 = 0; while (_local3 < (_arg1.length * 32)) { _local2 = (_local2 + String.fromCharCode(((_arg1[(_local3 >> 5)] >>> (_local3 % 32)) & 0xFF))); _local3 = (_local3 + 8); }; return (_local2); } public static function md5_ff(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number):Number{ return (md5_cmn(((_arg2 & _arg3) | (~(_arg2) & _arg4)), _arg1, _arg2, _arg5, _arg6, _arg7)); } public static function md5_ii(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number):Number{ return (md5_cmn((_arg3 ^ (_arg2 | ~(_arg4))), _arg1, _arg2, _arg5, _arg6, _arg7)); } public static function rstr2binl(_arg1:String):Array{ var _local2:Array; var _local3:Number; _local2 = new Array((_arg1.length >> 2)); _local3 = 0; while (_local3 < _local2.length) { _local2[_local3] = 0; _local3++; }; _local3 = 0; while (_local3 < (_arg1.length * 8)) { _local2[(_local3 >> 5)] = (_local2[(_local3 >> 5)] | ((_arg1.charCodeAt((_local3 / 8)) & 0xFF) << (_local3 % 32))); _local3 = (_local3 + 8); }; return (_local2); } public static function md5_vm_test():Boolean{ return ((hex_md5("abc") == "900150983cd24fb0d6963f7d28e17f72")); } public static function b64_md5(_arg1:String):String{ return (rstr2b64(rstr_md5(str2rstr_utf8(_arg1)))); } public static function any_hmac_md5(_arg1:String, _arg2:String, _arg3:String):String{ return (rstr2any(rstr_hmac_md5(str2rstr_utf8(_arg1), str2rstr_utf8(_arg2)), _arg3)); } public static function hex_md5(_arg1:String):String{ return (rstr2hex(rstr_md5(str2rstr_utf8(_arg1)))); } public static function bit_rol(_arg1:Number, _arg2:Number):Number{ return (((_arg1 << _arg2) | (_arg1 >>> (32 - _arg2)))); } public static function encrypt(_arg1:String):String{ return (hex_md5(_arg1)); } public static function md5_hh(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number):Number{ return (md5_cmn(((_arg2 ^ _arg3) ^ _arg4), _arg1, _arg2, _arg5, _arg6, _arg7)); } public static function rstr2hex(_arg1:String):String{ var _local2:String; var _local3:String; var _local4:Number; var _local5:Number; _local2 = (hexcase) ? "0123456789ABCDEF" : "0123456789abcdef"; _local3 = ""; _local5 = 0; while (_local5 < _arg1.length) { _local4 = _arg1.charCodeAt(_local5); _local3 = (_local3 + (_local2.charAt(((_local4 >>> 4) & 15)) + _local2.charAt((_local4 & 15)))); _local5++; }; return (_local3); } public static function any_md5(_arg1:String, _arg2:String):String{ return (rstr2any(rstr_md5(str2rstr_utf8(_arg1)), _arg2)); } public static function b64_hmac_md5(_arg1:String, _arg2:String):String{ return (rstr2b64(rstr_hmac_md5(str2rstr_utf8(_arg1), str2rstr_utf8(_arg2)))); } public static function rstr2b64(_arg1:String):String{ var _local2:String; var _local3:String; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; _local2 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; _local3 = ""; _local4 = _arg1.length; _local5 = 0; while (_local5 < _local4) { _local6 = (((_arg1.charCodeAt(_local5) << 16) | (((_local5 + 1) < _local4)) ? (_arg1.charCodeAt((_local5 + 1)) << 8) : 0) | (((_local5 + 2) < _local4)) ? _arg1.charCodeAt((_local5 + 2)) : 0); _local7 = 0; while (_local7 < 4) { if (((_local5 * 8) + (_local7 * 6)) > (_arg1.length * 8)){ _local3 = (_local3 + b64pad); } else { _local3 = (_local3 + _local2.charAt(((_local6 >>> (6 * (3 - _local7))) & 63))); }; _local7++; }; _local5 = (_local5 + 3); }; return (_local3); } public static function safe_add(_arg1:Number, _arg2:Number):Number{ var _local3:Number; var _local4:Number; _local3 = ((_arg1 & 0xFFFF) + (_arg2 & 0xFFFF)); _local4 = (((_arg1 >> 16) + (_arg2 >> 16)) + (_local3 >> 16)); return (((_local4 << 16) | (_local3 & 0xFFFF))); } public static function str2rstr_utf8(_arg1:String):String{ var _local2:String; var _local3:Number; var _local4:Number; var _local5:Number; _local2 = ""; _local3 = -1; while (++_local3 < _arg1.length) { _local4 = _arg1.charCodeAt(_local3); _local5 = (((_local3 + 1) < _arg1.length)) ? _arg1.charCodeAt((_local3 + 1)) : 0; if ((((((((0xD800 <= _local4)) && ((_local4 <= 56319)))) && ((0xDC00 <= _local5)))) && ((_local5 <= 57343)))){ _local4 = ((65536 + ((_local4 & 1023) << 10)) + (_local5 & 1023)); _local3++; }; if (_local4 <= 127){ _local2 = (_local2 + String.fromCharCode(_local4)); } else { if (_local4 <= 2047){ _local2 = (_local2 + String.fromCharCode((192 | ((_local4 >>> 6) & 31)), (128 | (_local4 & 63)))); } else { if (_local4 <= 0xFFFF){ _local2 = (_local2 + String.fromCharCode((224 | ((_local4 >>> 12) & 15)), (128 | ((_local4 >>> 6) & 63)), (128 | (_local4 & 63)))); } else { if (_local4 <= 2097151){ _local2 = (_local2 + String.fromCharCode((240 | ((_local4 >>> 18) & 7)), (128 | ((_local4 >>> 12) & 63)), (128 | ((_local4 >>> 6) & 63)), (128 | (_local4 & 63)))); }; }; }; }; }; return (_local2); } public static function rstr_hmac_md5(_arg1:String, _arg2:String):String{ var _local3:Array; var _local4:Array; var _local5:Array; var _local6:Number; var _local7:Array; _local3 = rstr2binl(_arg1); if (_local3.length > 16){ _local3 = binl_md5(_local3, (_arg1.length * 8)); }; _local4 = new Array(16); _local5 = new Array(16); _local6 = 0; while (_local6 < 16) { _local4[_local6] = (_local3[_local6] ^ 909522486); _local5[_local6] = (_local3[_local6] ^ 1549556828); _local6++; }; _local7 = binl_md5(_local4.concat(rstr2binl(_arg2)), (0x0200 + (_arg2.length * 8))); return (binl2rstr(binl_md5(_local5.concat(_local7), (0x0200 + 128)))); } public static function str2rstr_utf16be(_arg1:String):String{ var _local2:String; var _local3:Number; _local2 = ""; _local3 = 0; while (_local3 < _arg1.length) { _local2 = (_local2 + String.fromCharCode(((_arg1.charCodeAt(_local3) >>> 8) & 0xFF), (_arg1.charCodeAt(_local3) & 0xFF))); _local3++; }; return (_local2); } public static function rstr2any(_arg1:String, _arg2:String):String{ var _local3:Number; var _local4:Array; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Array; var _local9:Array; var _local10:String; _local3 = _arg2.length; _local4 = []; _local9 = new Array((_arg1.length / 2)); _local5 = 0; while (_local5 < _local9.length) { _local9[_local5] = ((_arg1.charCodeAt((_local5 * 2)) << 8) | _arg1.charCodeAt(((_local5 * 2) + 1))); _local5++; }; while (_local9.length > 0) { _local8 = []; _local7 = 0; _local5 = 0; while (_local5 < _local9.length) { _local7 = ((_local7 << 16) + _local9[_local5]); _local6 = Math.floor((_local7 / _local3)); _local7 = (_local7 - (_local6 * _local3)); if ((((_local8.length > 0)) || ((_local6 > 0)))){ _local8[_local8.length] = _local6; }; _local5++; }; _local4[_local4.length] = _local7; _local9 = _local8; }; _local10 = ""; _local5 = (_local4.length - 1); while (_local5 >= 0) { _local10 = (_local10 + _arg2.charAt(_local4[_local5])); _local5--; }; return (_local10); } public static function rstr_md5(_arg1:String):String{ return (binl2rstr(binl_md5(rstr2binl(_arg1), (_arg1.length * 8)))); } } }//package com.gsolo.encryption
Section 2
//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 3
//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 4
//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 5
//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 6
//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 7
//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 8
//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 9
//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 10
//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 11
//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 12
//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 13
//KongregateAPI (com.kongregate.as3.client.KongregateAPI) package com.kongregate.as3.client { import flash.events.*; import flash.display.*; import com.kongregate.as3.client.services.*; import flash.utils.*; 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 14
//DoogogBanner_6 (GogIntro_fla.DoogogBanner_6) package GogIntro_fla { import flash.events.*; import flash.display.*; import flash.net.*; public dynamic class DoogogBanner_6 extends MovieClip { public var doogogButton:SimpleButton; public function DoogogBanner_6(){ addFrameScript(2, frame3); } function frame3(){ this.doogogButton.addEventListener(MouseEvent.CLICK, doogogButtonClicked); stop(); } public function doogogButtonClicked(_arg1:MouseEvent):void{ var _local2:String; var _local3:URLRequest; trace("going to Doogog"); _local2 = "http://doogog.com"; _local3 = new URLRequest(_local2); navigateToURL(_local3, "_blank"); } } }//package GogIntro_fla
Section 15
//Poof_4 (GogIntro_fla.Poof_4) package GogIntro_fla { import flash.display.*; public dynamic class Poof_4 extends MovieClip { public function Poof_4(){ addFrameScript(18, frame19); } function frame19(){ this.stop(); } } }//package GogIntro_fla
Section 16
//EndPoint (utils.EndPoint) package utils { public class EndPoint { public var parent:OrbObject; public var value:Number; public var index:uint; public var next:EndPoint; public var prev:EndPoint; public function EndPoint(_arg1:Number, _arg2:OrbObject){ value = _arg1; parent = _arg2; } public function getParent():OrbObject{ return (parent); } } }//package utils
Section 17
//PruneList (utils.PruneList) package utils { import flash.utils.*; public class PruneList { protected var endPointsX:Array; protected var endPointsY:Array; public function PruneList(){ endPointsX = new Array(); endPointsY = new Array(); } public function findInsertIndex(_arg1:Array, _arg2:Number, _arg3:int, _arg4:int):int{ var _local5:int; if (_arg4 < _arg3){ return (_arg3); }; _local5 = ((_arg4 + _arg3) >> 1); if (_arg1[_local5].value > _arg2){ return (findInsertIndex(_arg1, _arg2, _arg3, (_local5 - 1))); }; if (_arg1[_local5].value < _arg2){ return (findInsertIndex(_arg1, _arg2, (_local5 + 1), _arg4)); }; return (_local5); } public function reorder(_arg1:Array, _arg2:EndPoint, _arg3:Number):void{ var _local4:Number; var _local5:int; var _local6:EndPoint; var _local7:uint; var _local8:Array; _local4 = (_arg2.value + _arg3); _local7 = 0; if (_arg3 < 0){ while (((!((_arg2.prev == null))) && ((_arg2.prev.value > _arg2.value)))) { _local7++; }; if (_local7 != 0){ _local8 = _arg1.splice(_local5, 1); _arg1.splice((_local5 - _local7), 0, _local8[0]); _arg2.prev.next = _arg2.next; }; } else { _local5 = (_arg2.index + 1); while (_local5 < _arg1.length) { _local6 = _arg1[_local5]; if (_local6.value >= _local4){ break; }; _local5++; }; if (_local5 > _arg1.length){ _local5 = _arg1.length; }; trace(((("ep.value: " + _arg2.value) + " | ep.index: ") + _arg2.index)); _arg1.splice(_local5, 0, _arg2); _arg1.splice(_arg2.index, 1); }; trace(_local5); _arg2.index = _local5; _arg2.value = _local4; } public function remove(_arg1:OrbObject):void{ var _local2:int; var _local3:uint; _local2 = this.endPointsX.indexOf(_arg1.ex0); if (_local2 == -1){ return; }; this.endPointsX.splice(_local2, 1); _local3 = this.endPointsX.indexOf(_arg1.ex1); this.endPointsX.splice(_local3, 1); _arg1.ex0.parent = null; _arg1.ex1.parent = null; } public function hitTest(_arg1:OrbObject, _arg2:Number, _arg3:Number):OrbObject{ var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:int; var _local9:uint; var _local10:uint; _local4 = ((_arg1.x - _arg1.pruneRadius) + _arg2); _local5 = ((_arg1.x + _arg1.pruneRadius) + _arg2); _local6 = (_arg1.x + _arg2); _local7 = (_arg1.y + _arg3); _local8 = this.findInsertIndex(this.endPointsX, _local4, 0, (endPointsX.length - 1)); _local9 = endPointsX.length; _local10 = _local8; while (_local10 < _local9) { if (endPointsX[_local10].value < _local5){ if (_arg1.radiusPreTest(_local6, _local7, endPointsX[_local10].getParent())){ return (endPointsX[_local10].getParent()); }; } else { return (null); }; _local10++; }; } public function add(_arg1:OrbObject):void{ var _local2:int; var _local3:EndPoint; var _local4:EndPoint; var _local5:int; var _local6:EndPoint; var _local7:EndPoint; var _local8:uint; _local2 = (_arg1.width / 2); _local3 = new EndPoint((_arg1.x - _local2), _arg1); _local4 = new EndPoint((_arg1.x + _local2), _arg1); _local5 = (_arg1.height / 2); _local6 = new EndPoint((_arg1.y - _local5), _arg1); _local7 = new EndPoint((_arg1.y + _local5), _arg1); _local8 = this.findInsertIndex(this.endPointsX, _local3.value, 0, (endPointsX.length - 1)); _local3.index = _local8; this.endPointsX.splice(_local8, 0, _local3); _arg1.ex0 = _local3; _local3.prev = endPointsX[(_local8 - 1)]; _local3.next = endPointsX[(_local8 + 1)]; _local8 = this.findInsertIndex(this.endPointsX, _local4.value, 0, (endPointsX.length - 1)); _local4.index = _local8; this.endPointsX.splice(_local8, 0, _local4); _arg1.ex1 = _local4; _local4.prev = endPointsX[(_local8 - 1)]; _local4.next = endPointsX[(_local8 + 1)]; } public function update(_arg1:OrbObject, _arg2:Number, _arg3:Number){ this.reorder(this.endPointsX, _arg1.ex0, _arg2); this.reorder(this.endPointsX, _arg1.ex1, _arg2); } public function toString():void{ var _local1:String; var _local2:String; var _local3:int; _local1 = "X endpoints:"; _local2 = "Y endpoints:"; _local3 = 0; while (_local3 < endPointsX.length) { _local1 = ((_local1 + " ") + endPointsX[_local3].value); _local3++; }; _local3 = 0; while (_local3 < endPointsY.length) { _local2 = ((_local2 + " ") + endPointsY[_local3].value); _local3++; }; trace(_local1); trace(_local2); } public function getEndPointsX():Array{ return (endPointsX); } public function getEndPointsY():Array{ return (endPointsY); } public function test():void{ this.toString(); } public function sort():void{ this.endPointsX.sortOn("value", Array.NUMERIC); } } }//package utils
Section 18
//AllGraphicsPackage_3 (ZunderFury_fla.AllGraphicsPackage_3) package ZunderFury_fla { import flash.events.*; import flash.display.*; import flash.geom.*; import flash.utils.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; import flash.ui.*; public dynamic class AllGraphicsPackage_3 extends MovieClip { public function AllGraphicsPackage_3(){ addFrameScript(0, frame1); } function frame1(){ this.stop(); } } }//package ZunderFury_fla
Section 19
//HeroNames_47 (ZunderFury_fla.HeroNames_47) package ZunderFury_fla { import flash.events.*; import flash.display.*; import flash.geom.*; import flash.utils.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; import flash.ui.*; public dynamic class HeroNames_47 extends MovieClip { public function HeroNames_47(){ addFrameScript(0, frame1); } function frame1(){ this.stop(); } } }//package ZunderFury_fla
Section 20
//Sounds_118 (ZunderFury_fla.Sounds_118) package ZunderFury_fla { import flash.events.*; import flash.display.*; import flash.geom.*; import flash.utils.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; import flash.ui.*; public dynamic class Sounds_118 extends MovieClip { public function Sounds_118(){ addFrameScript(0, frame1); } function frame1(){ this.stop(); } } }//package ZunderFury_fla
Section 21
//BestScoreBar (BestScoreBar) package { import flash.display.*; import flash.text.*; public dynamic class BestScoreBar extends MovieClip { public var bestScore:TextField; } }//package
Section 22
//bit_explosion1 (bit_explosion1) package { import flash.display.*; public dynamic class bit_explosion1 extends MovieClip { } }//package
Section 23
//BitmapManager (BitmapManager) package { import flash.display.*; import flash.geom.*; import flash.utils.*; public class BitmapManager { public var efx_explosion1:Array; public var efx_explosion2:Array; public var spawning0:Array; public var mobkon4_mini:Array; public var mobkon10:Array; public var mobkon11:Array; public var mobkon12:Array; public var efx_explosion0_l:Array; public var efx_explosion0_m:Array; public var efx_trail0:Array; public var efx_trail1:Array; public var efx_explosion0_s:Array; public var projectile10:Array; public var projectile11:Array; public var mobkon6_mini:Array; public var projectile13:Array; public var projectile15:Array; public var projectile12:Array; public var projectile14:Array; public var mobkon0:Array; public var mobkon1:Array; public var mobkon2:Array; public var mobkon3:Array; public var mobkon4:Array; public var mobkon5:Array; public var mobkon6:Array; public var mobkon7:Array; public var mobkon8:Array; public var mobkon9:Array; public var projectile2:Array; public var projectile3:Array; public var projectile4:Array; public var projectile0:Array; public var projectile1:Array; static var NUM_ANGLES:int = 12; static var DEG_INCR:int = 30; static var RAD_INCR:Number = (Math.PI / 6); static var NUM_FRAMES:int = 12; public function BitmapManager():void{ } public function loadBitmaps():void{ this.mobkon0 = loadAnimFull("Mobkon0_Sprite", 12, 32, 1); this.mobkon1 = loadAnimFull("Mobkon1_Sprite", 24, 32, 1); this.mobkon2 = loadAnimFull("Mobkon2_Sprite", 12, 16, 1); this.mobkon3 = loadAnimFull("Mobkon3_Sprite", 24, 64, 1); this.mobkon4 = loadAnimFull("Mobkon4_Sprite", 12, 48, 1); this.mobkon4_mini = loadAnimFull("Mobkon4_Mini_Sprite", 1, 24, 1); this.mobkon5 = loadAnimFull("Mobkon5_Sprite", 12, 32, 1); this.mobkon6 = loadAnimFull("Mobkon6_Sprite", 1, 78, 1); this.mobkon6_mini = loadAnimFull("Mobkon6_Mini_Sprite", 24, 32, 1); this.mobkon7 = loadAnimFull("Mobkon7_Sprite", 1, 32, 1); this.mobkon8 = loadAnimFull("Mobkon8_Sprite", 24, 32, 1); this.mobkon9 = loadAnimFull("Mobkon9_Sprite", 12, 32, 1); this.mobkon10 = loadAnimFull("Mobkon10_Sprite", 1, 64, 1); this.mobkon11 = loadAnimFull("Mobkon11_Sprite", 24, 32, 1); this.mobkon12 = loadAnimFull("Mobkon12_Sprite", 24, 32, 1); this.projectile0 = loadAnimFull("Projectile0_Sprite", 1, 8, 1); this.projectile1 = loadAnimFull("Projectile1_Sprite", 1, 8, 1); this.projectile2 = loadAnimFull("Projectile2_Sprite", 1, 8, 1); this.projectile3 = loadAnimFull("Projectile3_Sprite", 1, 8, 1); this.projectile4 = loadAnimFull("Projectile4_Sprite", 1, 8, 1); this.projectile10 = loadAnimFull("Projectile10_Sprite", 1, 32, 1); this.projectile11 = loadAnimFull("Projectile11_Sprite", 1, 32, 1); this.projectile12 = loadAnimFull("Projectile12_Sprite", 1, 32, 1); this.projectile13 = loadAnimFull("Projectile13_Sprite", 1, 32, 1); this.projectile14 = loadAnimFull("Projectile14_Sprite", 1, 48, 1); this.projectile15 = loadAnimFull("Projectile15_Sprite", 1, 48, 1); this.spawning0 = loadAnim("Spawning0"); this.efx_explosion0_s = loadAnimFull("wipeExplosionBase", 4, 64, 0.3); this.efx_explosion0_m = loadAnimFull("wipeExplosionBase", 4, 64, 0.5); this.efx_explosion0_l = loadAnimFull("wipeExplosionBase", 4, 128, 1); this.efx_explosion1 = loadAnimFull("Proj_Explosion0_Base", 4, 16, 1); this.efx_explosion2 = loadAnimFull("bit_explosion1", 4, 48, 1); this.efx_trail0 = loadAnimFull("Trail0_Base", 1, 32, 1); this.efx_trail1 = loadAnimFull("Trail1_Base", 1, 32, 1); } public function load(_arg1:String):Array{ var _local2:Class; var _local3:MovieClip; var _local4:int; var _local5:BitmapData; var _local6:Matrix; _local2 = (getDefinitionByName(_arg1) as Class); _local3 = new (_local2); save = new Array(BitmapManager.NUM_ANGLES); _local4 = 0; _local4 = 0; while (_local4 < BitmapManager.NUM_FRAMES) { _local3.rotation = (90 + (_local4 * BitmapManager.DEG_INCR)); _local5 = new BitmapData(_local3.width, _local3.height, true, 0xFF0000); _local6 = new Matrix(); _local6.rotate(((_local4 * BitmapManager.RAD_INCR) + (Math.PI / 2))); _local6.translate((_local3.width / 2), (_local3.height / 2)); _local5.draw(_local3, _local6, null, null, null, true); save[_local4] = _local5; _local4++; }; return (save); } public function loadAnim(_arg1:String):Array{ var _local2:Class; var _local3:MovieClip; var _local4:int; var _local5:int; var _local6:BitmapData; var _local7:Matrix; _local2 = (getDefinitionByName(_arg1) as Class); _local3 = new (_local2); _local4 = 0; _local5 = _local3.totalFrames; save = new Array(_local5); _local4 = 0; while (_local4 < _local5) { _local3.gotoAndStop((_local4 + 1)); _local6 = new BitmapData(_local3.width, _local3.height, true, 0xFF0000); _local7 = new Matrix(); _local7.translate((_local3.width / 2), (_local3.height / 2)); _local6.draw(_local3, _local7, null, null, null, true); save[_local4] = _local6; _local4++; }; return (save); } public function loadAnimFull(_arg1:String, _arg2:int, _arg3:int, _arg4:Number=1):Array{ var _local5:Class; var _local6:MovieClip; var _local7:int; var _local8:int; var _local9:int; var _local10:Number; var _local11:Array; var _local12:BitmapData; var _local13:Matrix; _local5 = (getDefinitionByName(_arg1) as Class); _local6 = new (_local5); _local7 = 0; _local8 = 0; _local9 = _local6.totalFrames; _local10 = ((2 * Math.PI) / _arg2); _local11 = new Array(_arg2); _local7 = 0; while (_local7 < _arg2) { _local11[_local7] = new Array(_local9); _local8 = 0; while (_local8 < _local9) { _local6.gotoAndStop((_local8 + 1)); _local12 = new BitmapData(_arg3, _arg3, true, 0xFF0000); _local13 = new Matrix(); _local13.scale(_arg4, _arg4); _local13.rotate(((_local7 * _local10) + (Math.PI / 2))); _local13.translate((_arg3 >> 1), (_arg3 >> 1)); _local12.draw(_local6, _local13, null, null, null, true); _local11[_local7][_local8] = _local12; _local8++; }; _local7++; }; return (_local11); } } }//package
Section 24
//Bomb0 (Bomb0) package { public class Bomb0 extends Projectile { public function Bomb0(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):void{ this.speed = 13; super(_arg1, _arg2, _arg3, _arg4, this.speed); this.maxSpeed = 128; this.maxPushSpeed = 128; this.maxGravSpeed = 128; this.type = 1; this.damage = Projectile.bombDamage; } override public function gotHit():void{ OrbBlaster.objMgr.addProjEfx(10, this); this.die(); } } }//package
Section 25
//Bomb1 (Bomb1) package { public class Bomb1 extends Projectile { public function Bomb1(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):void{ this.speed = 13; super(_arg1, _arg2, _arg3, _arg4, this.speed); this.maxSpeed = 128; this.maxPushSpeed = 128; this.maxGravSpeed = 128; this.type = 1; this.damage = Projectile.bombDamage; this.radiusX = 8; this.radiusY = 8; } override public function gotHit():void{ OrbBlaster.objMgr.addProjEfx(10, this); this.die(); } } }//package
Section 26
//Bomb2 (Bomb2) package { public class Bomb2 extends Projectile { public function Bomb2(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):void{ this.speed = 13; super(_arg1, _arg2, _arg3, _arg4, this.speed); this.maxSpeed = 128; this.maxPushSpeed = 128; this.maxGravSpeed = 128; this.type = 1; this.damage = Projectile.bombDamage; this.radiusX = 8; this.radiusY = 8; } override public function gotHit():void{ OrbBlaster.objMgr.addProjEfx(10, this); this.die(); } } }//package
Section 27
//BombBar (BombBar) package { import flash.display.*; import flash.text.*; public dynamic class BombBar extends MovieClip { public var numBombs:TextField; } }//package
Section 28
//Cannon0 (Cannon0) package { import flash.events.*; import flash.display.*; import flash.geom.*; import flash.utils.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; import flash.ui.*; public dynamic class Cannon0 extends MovieClip { public var firePoint:MovieClip; public var firePoint1:MovieClip; public var firePoint2:MovieClip; public function Cannon0(){ addFrameScript(0, frame1); } function frame1(){ this.firePoint.visible = false; this.firePoint1.visible = false; this.firePoint2.visible = false; stop(); } } }//package
Section 29
//Cannon1 (Cannon1) package { import flash.events.*; import flash.display.*; import flash.geom.*; import flash.utils.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; import flash.ui.*; public dynamic class Cannon1 extends MovieClip { public var firePoint:MovieClip; public function Cannon1(){ addFrameScript(0, frame1); } function frame1(){ this.firePoint.visible = false; stop(); } } }//package
Section 30
//ComboText (ComboText) package { import flash.events.*; import flash.display.*; import flash.text.*; public class ComboText extends MovieClip { public var text:String; public var txtField:TextField; public function fadeOut():void{ this.visible = false; } public function enteringFrame(_arg1:Event):void{ trace("i run second"); trace(("at frame: " + this.currentFrame)); if (this.currentFrame == 3){ this.stop(); trace(crap); trace(this.txtField2.text); }; trace(""); } public function updateText():void{ this.txtField.text = this.text; trace(this.text); } public function setText(_arg1:String):void{ this.text = _arg1; if (this.txtField == null){ return; }; this.txtField.text = this.text; this.visible = true; } } }//package
Section 31
//ContinueScreen (ContinueScreen) package { import flash.display.*; import flash.text.*; public dynamic class ContinueScreen extends MovieClip { public var continueNoButton:SimpleButton; public var continueYesButton:SimpleButton; public var penaltyScore:TextField; public var finalScoreLabel:MovieClip; public var finalScore:TextField; } }//package
Section 32
//ControlsScreen (ControlsScreen) package { import flash.display.*; public dynamic class ControlsScreen extends MovieClip { public var okayButton:SimpleButton; } }//package
Section 33
//CreditsScreen (CreditsScreen) package { import flash.display.*; public dynamic class CreditsScreen extends MovieClip { public var creditsBackButton:SimpleButton; public var paulButton:SimpleButton; public var doogogButton:SimpleButton; } }//package
Section 34
//Destroyer0 (Destroyer0) package { import flash.events.*; import flash.utils.*; public class Destroyer0 extends Mob { public var fireState:uint;// = 0 public var orbitSpeed:Number; public var fireAmount:uint; public var fireTimer:Timer; public var fireDelay:uint; public var orbitRange:Number; public var fireCycleDelay:uint; public var lastOrbitSpeed:Number; public var orbitRadius:Number;// = -1 public var explArr:Array; public function Destroyer0(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):void{ orbitRadius = -1; fireState = 0; super(_arg1, _arg2, _arg3, _arg4, this.speed); this.damage = 10; this.maxPushSpeed = 2.2; this.pushAbility = 0; this.points = 1000; this.type = 1; this.orbitSpeed = 0.005; this.orbitRange = 200; this.hitpoints = 100; this.explArr = new Array(); this.fireCycleDelay = 2000; this.fireDelay = 333; this.fireAmount = 3; this.fireTimer = new Timer(this.fireCycleDelay, 0); this.fireTimer.addEventListener(TimerEvent.TIMER, fire); } override public function damagedBy(_arg1:OrbObject):void{ trace(this.hitpoints); if ((_arg1 is Explosion)){ if (this.explArr.indexOf(_arg1.ID) == -1){ trace(("ID: " + _arg1.ID)); this.hitpoints = (this.hitpoints - _arg1.damage); this.explArr.push(_arg1.ID); }; } else { this.hitpoints = (this.hitpoints - _arg1.damage); }; trace(((_arg1.damage + " ") + this.hitpoints)); if (this.hitpoints <= 0){ this.die(); OrbBlaster.objMgr.addExplosion(this.explType, this.x, this.y, projID); }; } public function isInsideOrbit():Boolean{ if (this.orbitRadius != -1){ this.fireTimer.start(); return (true); }; if ((((Math.abs((this.x - OrbBlaster.hero.x)) <= this.orbitRange)) && ((Math.abs((this.y - OrbBlaster.hero.y)) <= this.orbitRange)))){ this.orbitRadius = Math.sqrt((Math.pow((OrbBlaster.hero.x - this.x), 2) + Math.pow((OrbBlaster.hero.y - this.y), 2))); return (true); }; } public function fire(_arg1:TimerEvent):void{ if (this.fireState == 0){ this.lastOrbitSpeed = this.orbitSpeed; this.orbitSpeed = 0; this.fireState++; this.fireTimer.delay = this.fireDelay; } else { if (this.fireState <= this.fireAmount){ OrbBlaster.objMgr.addMobMissile(0, this.x, this.y, OrbBlaster.hero.x, OrbBlaster.hero.y, 3); this.fireState++; } else { if (this.fireState > this.fireAmount){ this.orbitSpeed = this.lastOrbitSpeed; this.fireTimer.delay = this.fireCycleDelay; this.fireState = 0; }; }; }; } override public function die():void{ this.fireTimer.stop(); this.fireTimer.removeEventListener(TimerEvent, fire); trace(("has event: " + this.fireTimer.hasEventListener(TimerEvent))); OrbBlaster.objMgr.killMob(this); } override public function updatePosition():Boolean{ var _local1:Number; var _local2:Number; var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Number; if (!this.isInsideOrbit()){ _local1 = (this.vx + this.ax); _local2 = (this.vy + this.ay); this.maxSpeed = this.maxPushSpeed; if (Math.abs(_local1) <= this.maxSpeed){ this.vx = _local1; } else { if (_local1 < 0){ this.vx = -(this.maxSpeed); } else { this.vx = this.maxSpeed; }; }; if (Math.abs(_local2) <= this.maxSpeed){ this.vy = _local2; } else { if (_local2 < 0){ this.vy = -(this.maxSpeed); } else { this.vy = this.maxSpeed; }; }; _local3 = (this.x + this.vx); _local4 = (this.y + this.vy); this.x = _local3; this.y = _local4; if (this.ex0 != null){ this.ex0.value = (this.x - this.radiusX); this.ex1.value = (this.x + this.radiusX); }; if (this.isOutBounds(_local3, _local4)){ return (false); }; if (!this.isPassedWall){ this.isPassedWall = true; }; return (true); } else { _local5 = Math.atan2((this.y - OrbBlaster.hero.y), (this.x - OrbBlaster.hero.x)); _local6 = (_local5 + this.orbitSpeed); this.x = ((Math.cos(_local6) * this.orbitRadius) + OrbBlaster.hero.x); this.y = ((Math.sin(_local6) * this.orbitRadius) + OrbBlaster.hero.y); if (this.ex0 != null){ this.ex0.value = (this.x - this.radiusX); this.ex1.value = (this.x + this.radiusX); }; }; } } }//package
Section 35
//Destroyer1 (Destroyer1) package { public class Destroyer1 extends Destroyer0 { public function Destroyer1(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):void{ super(_arg1, _arg2, _arg3, _arg4); this.damage = 10; this.maxPushSpeed = 2.2; this.pushAbility = 0; this.points = 1000; this.type = 1; this.orbitSpeed = 0.005; this.orbitRange = 200; this.hitpoints = 100; this.explArr = new Array(); this.fireCycleDelay = 2000; this.fireDelay = 333; this.fireAmount = 3; this.explType = Explosion.MINE_5; } } }//package
Section 36
//Destroyer2 (Destroyer2) package { public class Destroyer2 extends Destroyer0 { public function Destroyer2(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):void{ super(_arg1, _arg2, _arg3, _arg4); this.damage = 10; this.maxPushSpeed = 2.2; this.pushAbility = 0; this.points = 1000; this.type = 1; this.orbitSpeed = 0.005; this.orbitRange = 200; this.hitpoints = 100; this.explArr = new Array(); this.fireCycleDelay = 2000; this.fireDelay = 333; this.fireAmount = 3; this.explType = Explosion.MINE_5; } } }//package
Section 37
//Destroyer3 (Destroyer3) package { public class Destroyer3 extends Destroyer0 { public function Destroyer3(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):void{ super(_arg1, _arg2, _arg3, _arg4); this.damage = 10; this.maxPushSpeed = 2.2; this.pushAbility = 0; this.points = 1000; this.type = 1; this.orbitSpeed = 0.005; this.orbitRange = 200; this.hitpoints = 100; this.explArr = new Array(); this.fireCycleDelay = 2000; this.fireDelay = 333; this.fireAmount = 3; this.explType = Explosion.MINE_5; } } }//package
Section 38
//Destroyer4 (Destroyer4) package { public class Destroyer4 extends Destroyer0 { public function Destroyer4(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):void{ super(_arg1, _arg2, _arg3, _arg4); this.damage = 10; this.maxPushSpeed = 2.2; this.pushAbility = 0; this.points = 1000; this.type = 1; this.orbitSpeed = 0.005; this.orbitRange = 200; this.hitpoints = 100; this.explArr = new Array(); this.fireCycleDelay = 2000; this.fireDelay = 333; this.fireAmount = 3; this.explType = Explosion.MINE_5; } } }//package
Section 39
//EfxBitmap (EfxBitmap) package { import flash.display.*; public class EfxBitmap extends Bitmap { public var vx:Number;// = 0 public var curFrame:int;// = -1 public var life:int;// = 0 public var ax:Number;// = 0 public var ay:Number;// = 0 public var vy:Number;// = 0 public var oX:Number; public var base:Array; public var deg_incr:Number; public var angle:int; public var oY:Number; public function EfxBitmap(_arg1:Array, _arg2:Number, _arg3:Number, _arg4:int):void{ life = 0; curFrame = -1; vx = 0; vy = 0; ax = 0; ay = 0; super(); this.pixelSnapping = "never"; this.smoothing = false; this.x = _arg2; this.y = _arg3; this.oX = this.x; this.oY = this.y; this.base = _arg1; this.deg_incr = (360 / this.base.length); this.angle = _arg4; this.life = this.base[0].length; } public function update():Boolean{ var _local1:int; var _local2:Number; var _local3:Number; this.curFrame++; if (this.curFrame >= this.life){ return (false); }; _local1 = this.getRotationFrame(); _local2 = this.base[_local1][this.curFrame].width; _local3 = this.base[_local1][this.curFrame].height; this.bitmapData = this.base[_local1][this.curFrame]; this.x = (this.oX - (_local2 >> 1)); this.y = (this.oY - (_local3 >> 1)); this.vx = (this.vx + this.ax); this.vy = (this.vy + this.ay); this.oX = (this.oX + this.vx); this.oY = (this.oY + this.vy); return (true); } public function getRotationFrame():int{ var _local1:int; var _local2:int; _local1 = 0; _local2 = this.angle; if (this.angle < 0){ _local2 = (_local2 + 360); }; _local1 = int((_local2 / this.deg_incr)); return (_local1); } } }//package
Section 40
//Explosion (Explosion) package { public class Explosion extends OrbObject { public var baseRadius:Number; public var ID:uint; public var comboID:int; public var type:uint; public var damage:uint; static var MINE_0:uint = 0; static var MINE_1:uint = 1; static var MINE_2:uint = 2; static var MINE_3:uint = 3; static var MINE_5:uint = 5; static var MINE_4:uint = 4; static var MINE_6:uint = 6; static var SHIELD_BLAST:uint = 30; public function Explosion(_arg1:Number, _arg2:Number){ this.pruneRadius = 50; this.x = _arg1; this.y = _arg2; this.ax = 0; this.ay = 0; this.maxSpeed = 0; this.baseRadius = 32; this.radiusX = 0; } override public function die():void{ this.stop(); OrbBlaster.objMgr.killExpl(this); } public function updateRadius():void{ this.pruneRadius = ((this.width >> 1) + 20); switch (this.currentFrame){ case 2: this.radiusX = (this.baseRadius * this.scaleX); break; case 7: this.radiusX = (43.5 * this.scaleX); break; case 10: this.radiusX = (47.5 * this.scaleX); case 12: this.radiusX = 0; break; }; } } }//package
Section 41
//Explosion_Proj2 (Explosion_Proj2) package { import flash.events.*; import flash.display.*; import flash.geom.*; import flash.utils.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; import flash.ui.*; public dynamic class Explosion_Proj2 extends MovieClip { public function Explosion_Proj2(){ addFrameScript(5, frame6); } function frame6(){ OrbBlaster.objMgr.killEfx(this); } } }//package
Section 42
//Explosion1 (Explosion1) package { public class Explosion1 extends Explosion { public function Explosion1(_arg1:Number, _arg2:Number):void{ super(_arg1, _arg2); this.type = Explosion.MINE_1; this.pruneRadius = 50; this.damage = 10; } } }//package
Section 43
//Eyeball0 (Eyeball0) package { import flash.display.*; public dynamic class Eyeball0 extends MovieClip { } }//package
Section 44
//Feat (Feat) package { public class Feat { public var isComplete:Boolean; public var title:String; public var description:String; static var diedThisLevel:Boolean = false; static var diedThisRun:Boolean = false; static var movedThisLevel:Boolean = false; static var firedThisLevel:Boolean = false; public function Feat(_arg1:String, _arg2:String, _arg3:Boolean=false):void{ this.title = _arg1; this.description = _arg2; this.isComplete = _arg3; } public static function initFeats():void{ OrbBlaster.feats = new Array(); OrbBlaster.feats[0] = new Array(); OrbBlaster.feats[1] = new Array(); OrbBlaster.feats[2] = new Array(); OrbBlaster.feats[0][0] = new Feat("Warmed Up", "Complete level 6"); OrbBlaster.feats[0][1] = new Feat("Great", "Earn a score of 350,000"); OrbBlaster.feats[0][2] = new Feat("Combo Artist", "Achieve a point multipler of 3X"); OrbBlaster.feats[0][3] = new Feat("Cat Lives", "Stockpile 6 Lives"); OrbBlaster.feats[0][4] = new Feat("Cold War", "Stockpile 6 Bombs"); OrbBlaster.feats[0][5] = new Feat("Ninja Movements", "Complete level 9 without firing your weapon and without losing a life"); OrbBlaster.feats[1][0] = new Feat("Hero", "Complete level 20"); OrbBlaster.feats[1][1] = new Feat("Millionaire", "Earn a score of 1,000,000 points"); OrbBlaster.feats[1][2] = new Feat("Combo Master", "Achieve a score multiplier of 6X"); OrbBlaster.feats[1][3] = new Feat("The One", "Gain 500,000 points with weapon level 1"); OrbBlaster.feats[1][4] = new Feat("Die Hard", "Complete levels 1-20 without losing a life"); OrbBlaster.feats[1][5] = new Feat("Stonewall ", "Complete level 12 without moving"); OrbBlaster.feats[2][0] = new Feat("Legend", "Complete level 36"); OrbBlaster.feats[2][1] = new Feat("Multi Millionaire", "Earn a score of 3,000,000 points"); OrbBlaster.feats[2][2] = new Feat("Slayer", "Gain 50,000 lifetime mob kills"); OrbBlaster.feats[2][3] = new Feat("It Was Lag!", "Lose all lives on level 2"); OrbBlaster.feats[2][4] = new Feat("Baller", "Stockpile 75,000 Credits"); OrbBlaster.feats[2][5] = new Feat("Impeccable", "Complete levels 1-30 without losing a life"); } public static function featCheck(_arg1:int, _arg2:int):void{ var _local3:Boolean; if (OrbBlaster.feats[_arg1][_arg2].isComplete){ return; }; _local3 = false; switch (_arg1){ case 0: switch (_arg2){ case 5: if (((!(Feat.firedThisLevel)) && (!(Feat.diedThisLevel)))){ trace(((Feat.firedThisLevel + " ") + Feat.diedThisLevel)); if (OrbBlaster.curLevel == 9){ _local3 = true; }; }; break; }; }; if (_local3){ Feat.complete(_arg1, _arg2); }; } public static function complete(_arg1:int, _arg2:int):void{ if (!OrbBlaster.feats[_arg1][_arg2].isComplete){ OrbBlaster.feats[_arg1][_arg2].isComplete = true; OrbBlaster.completedFeatsOnLevel.push(OrbBlaster.feats[_arg1][_arg2]); PlayerStats.feats++; }; } public static function resetLevelMarks():void{ Feat.firedThisLevel = false; Feat.diedThisLevel = false; Feat.movedThisLevel = false; } } }//package
Section 45
//FeatBar (FeatBar) package { import flash.display.*; import flash.text.*; public dynamic class FeatBar extends MovieClip { public var description:TextField; public var title:TextField; public var star:MovieClip; } }//package
Section 46
//FeatsCompleteScreen (FeatsCompleteScreen) package { import flash.display.*; public dynamic class FeatsCompleteScreen extends MovieClip { public var featBars:MovieClip; public var okayButton:SimpleButton; } }//package
Section 47
//FeatsScreen (FeatsScreen) package { import flash.display.*; public dynamic class FeatsScreen extends MovieClip { public var normalCover:MovieClip; public var featsBackButton:SimpleButton; public var heroicCover:MovieClip; public var legendButton:SimpleButton; public var legendCover:MovieClip; public var heroicButton:SimpleButton; public var normalButton:SimpleButton; } }//package
Section 48
//fireball3 (fireball3) package { import flash.display.*; public dynamic class fireball3 extends BitmapData { public function fireball3(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 49
//FpsCounter (FpsCounter) package { import flash.display.*; import flash.text.*; public dynamic class FpsCounter extends MovieClip { public var fpsText:TextField; } }//package
Section 50
//GogIntro (GogIntro) package { import flash.display.*; public class GogIntro extends MovieClip { public var cyclops:MovieClip; public var mage:MovieClip; public var isDone:Boolean;// = false public function GogIntro():void{ isDone = false; super(); addFrameScript(0, frame1, 18, frame19, 41, frame42, 90, frame91); } function frame91(){ this.stop(); } function frame1(){ this.cyclops.stop(); this.mage.stop(); } function frame19(){ this.mage.gotoAndStop(2); } public function isComplete():Boolean{ return (this.isDone); } function frame42(){ this.mage.gotoAndStop(1); } } }//package
Section 51
//Hero (Hero) package { import flash.display.*; import flash.utils.*; public class Hero extends OrbObject { public var lastDir:int;// = 0 public var isFireLooping:Boolean; public var gunLevel:int;// = 0 public var rapidBombTimer:uint;// = 0 public var bombReady:Boolean; public var numBombs:int;// = 3 public var fireBombTimer:Timer; public var bombCooldown:Number; public var dSpeed:Number; public var skinType:uint;// = 0 public var bombFrameArr:Array; public var normalBombCooldown:uint; public var trailTimer:int;// = 0 public var cannon:MovieClip; public var gunTimeCount:uint; public var life:int; public var fireReady:Boolean; public var rapidFireTimer:uint;// = 0 public var isInvincible;// = false public var type:int;// = 0 public var fireLoopTimer:Timer; public var cooldown:Number; public var normalCooldown:uint; public var curBombFrame:uint;// = 7 public var bombTimeCount:uint; public var bombDisplay:MovieClip; public static var startSpeed:Array = [3.8, 3.2]; public function Hero(){ rapidFireTimer = 0; rapidBombTimer = 0; curBombFrame = 7; isInvincible = false; skinType = 0; type = 0; gunLevel = 0; trailTimer = 0; lastDir = 0; numBombs = 3; super(); this.pruneRadius = 60; this.setSpeed(4); this.normalCooldown = 4; this.cooldown = this.normalCooldown; this.normalBombCooldown = 60; this.bombCooldown = this.normalBombCooldown; this.bombReady = true; this.life = 1; this.radiusX = (this.radiusX - 8); this.radiusY = (this.radiusY - 8); this.gunTimeCount = 0; this.bombTimeCount = 0; this.isFireLooping = false; this.cannon = new Cannon0(); this.addChild(cannon); this.fireReady = true; this.bombFrameArr = new Array(); this.updateBombFrameArr(); } public function fireBomb():void{ } public function fireLoop():void{ this.fireReady = true; if (OrbBlaster.mouse.isDown()){ this.fire(); } else { this.isFireLooping = false; }; } public function rotateCannon(_arg1:int):void{ this.cannon.rotation = (_arg1 - this.rotation); } public function fire():void{ if (((this.fireReady) && (OrbBlaster.gunEnabled))){ if (!Feat.firedThisLevel){ Feat.firedThisLevel = true; }; this.cannon.gotoAndPlay("fire"); SoundManager.playMachineGun(); OrbBlaster.objMgr.playerFire(this.gunLevel); this.fireReady = false; this.gunTimeCount = 0; }; } public function getHit():void{ Feat.diedThisLevel = true; Feat.diedThisRun = true; this.visible = false; OrbBlaster.gunEnabled = false; this.isFireLooping = false; OrbBlaster.mouse.mouseDown = false; } public function setNormalCooldown(_arg1:uint):void{ this.normalCooldown = _arg1; this.cooldown = _arg1; } public function startFireLoop():void{ this.fire(); this.isFireLooping = true; } public function setLife(_arg1:int):void{ this.life = _arg1; OrbBlaster.lifeBar.numLives.text = this.life; if (this.life >= 6){ Feat.complete(0, 3); }; } override public function die():void{ this.visible = false; OrbBlaster.gunEnabled = false; OrbBlaster.isPauseable = false; OrbBlaster.objMgr.addEfx(7, this); OrbBlaster.spawner.wipeTimer.reset(); } public function resetFireLoop():void{ this.gunTimeCount = 0; } public function setGunLevel(_arg1:int):void{ this.gunLevel = _arg1; switch (this.type){ case 0: if (this.gunLevel == 0){ this.setNormalCooldown(5); } else { if ((((this.gunLevel >= 1)) && ((this.gunLevel <= 4)))){ this.setNormalCooldown(5); } else { if (this.gunLevel == 5){ this.setNormalCooldown(5); }; }; }; break; case 1: if (this.gunLevel == 0){ this.setNormalCooldown(5); } else { if (this.gunLevel == 1){ this.setNormalCooldown(5); } else { if (this.gunLevel == 2){ this.setNormalCooldown(4); } else { if (this.gunLevel == 3){ this.setNormalCooldown(4); } else { if (this.gunLevel == 4){ this.setNormalCooldown(3); } else { if (this.gunLevel == 5){ this.setNormalCooldown(3); }; }; }; }; }; }; break; }; } public function glowPowDisplay():void{ this.curBombFrame = 10; this.bombDisplay.gotoAndPlay(10); } public function updateCannonRotation():void{ this.cannon.rotation = (this.cannon.rotation - this.rotation); } public function update():void{ if (this.isFireLooping){ if (this.gunTimeCount >= this.cooldown){ this.fireLoop(); }; this.gunTimeCount++; }; if (!this.bombReady){ this.bombTimeCount++; if (this.bombTimeCount >= this.bombCooldown){ this.setBombReady(); }; }; if (this.rapidFireTimer > 0){ this.rapidFireTimer--; if (this.rapidFireTimer == 0){ this.stopRapidFire(); }; }; if (this.rapidBombTimer > 0){ this.rapidBombTimer--; if (this.rapidBombTimer == 0){ this.stopRapidBomb(); }; }; } public function doneDying():void{ OrbBlaster.gameEnd(); } public function setBombs(_arg1:int):void{ this.numBombs = _arg1; OrbBlaster.bombBar.numBombs.text = _arg1; if (this.numBombs >= 6){ Feat.complete(0, 4); }; } public function setType(_arg1:int):void{ this.type = _arg1; this.gotoAndStop((_arg1 + 1)); this.removeChild(this.cannon); this.setSpeed(Hero.startSpeed[_arg1]); switch (_arg1){ case 0: this.cannon = new Cannon0(); this.cannon.y = 3; this.normalCooldown = 4; this.cannon.firePoint1.visible = false; this.cannon.firePoint2.visible = false; OrbBlaster.lifeBar.icon0.visible = true; OrbBlaster.lifeBar.icon1.visible = false; break; case 1: this.cannon = new Cannon1(); this.normalCooldown = 3; OrbBlaster.lifeBar.icon0.visible = false; OrbBlaster.lifeBar.icon1.visible = true; break; }; this.resetFireLoop(); this.isFireLooping = false; this.addChild(this.cannon); this.cannon.firePoint.visible = false; trace("type set"); } override public function setSpeed(_arg1:Number):void{ this.speed = _arg1; this.dSpeed = Math.sqrt(((_arg1 * _arg1) / 2)); } public function updatePowDisplay():void{ OrbBlaster.bombBar.numBombs.text = this.numBombs; } public function startRapidFire():void{ this.rapidFireTimer = 250; this.cooldown = 2; } public function respawn():void{ this.setLife((this.life - 1)); this.x = OrbBlaster.CENTER_X; this.y = (OrbBlaster.CENTER_Y - 12); this.visible = true; OrbBlaster.gunEnabled = true; } public function newSkin():void{ var _local1:uint; this.removeChild(this.cannon); _local1 = Math.floor(OrbBlaster.random(0, 0)); switch (_local1){ case 0: this.cannon = new Cannon0(); break; case 1: this.cannon = new Cannon1(); break; case 2: this.cannon = new Cannon2(); break; default: this.cannon = new Cannon0(); }; this.gotoAndStop((_local1 + 1)); this.skinType = _local1; this.addChild(this.cannon); this.cannon.y = 3; this.cannon.firePoint.visible = false; if (OrbBlaster.gameMode == 1){ }; } public function fireBombAlone():void{ if ((((OrbBlaster.objMgr.getMobs().numChildren > 0)) && ((this.numBombs > 0)))){ this.setBombs((this.numBombs - 1)); OrbBlaster.objMgr.wipe(); OrbBlaster.spawner.mobSpawnTimer.delay = 1500; }; } public function stopRapidFire():void{ this.cooldown = this.normalCooldown; } public function startRapidBomb():void{ this.rapidBombTimer = 250; this.bombCooldown = 10; this.updateBombFrameArr(); } public function updateDisplay():void{ OrbBlaster.statsBar.lifePieces.gotoAndStop((this.life + 1)); } override public function walk(_arg1:uint):void{ var _local2:Number; var _local3:Number; var _local4:Boolean; if (this.visible == false){ return; }; _local2 = this.x; _local3 = this.y; switch (_arg1){ case 0: _local2 = (_local2 - this.speed); this.rotation = -90; break; case 1: _local2 = (_local2 + this.speed); this.rotation = 90; break; case 2: _local3 = (_local3 - this.speed); this.rotation = 0; break; case 3: _local3 = (_local3 + this.speed); this.rotation = 180; break; case 4: _local2 = (_local2 - this.dSpeed); _local3 = (_local3 - this.dSpeed); this.rotation = -45; break; case 5: _local2 = (_local2 - this.dSpeed); _local3 = (_local3 + this.dSpeed); this.rotation = -135; break; case 6: _local2 = (_local2 + this.dSpeed); _local3 = (_local3 - this.dSpeed); this.rotation = 45; break; case 7: _local2 = (_local2 + this.dSpeed); _local3 = (_local3 + this.dSpeed); this.rotation = 135; break; }; if (this.lastDir != _arg1){ this.lastDir = _arg1; OrbBlaster.mouse.update(); }; _local4 = false; if ((((_local2 <= 6)) || ((_local2 >= (OrbBlaster.PROJ_X_MAX - 7))))){ } else { this.x = _local2; _local4 = true; }; if ((((_local3 <= 5)) || ((_local3 >= (OrbBlaster.PROJ_Y_MAX - 6))))){ } else { this.y = _local3; _local4 = true; }; if ((((this.trailTimer <= 0)) && (_local4))){ switch (this.type){ case 0: OrbBlaster.objMgr.addEfxBitmap(OrbBlaster.bitmapManager.efx_trail0, this.x, this.y, 1); break; case 1: OrbBlaster.objMgr.addEfxBitmap(OrbBlaster.bitmapManager.efx_trail1, this.x, this.y); break; }; this.trailTimer = 2; } else { this.trailTimer--; }; if (!Feat.movedThisLevel){ Feat.movedThisLevel = true; }; } public function stopRapidBomb():void{ this.bombCooldown = this.normalBombCooldown; this.updateBombFrameArr(); } public function setBombReady():Boolean{ this.bombReady = true; this.bombTimeCount = 0; this.glowPowDisplay(); } public function updateBombFrameArr():void{ var _local1:uint; var _local2:Number; var _local3:uint; _local1 = 10; this.bombFrameArr = new Array((_local1 + 1)); _local2 = (this.bombCooldown / _local1); _local3 = 0; while (_local3 < (_local1 + 1)) { this.bombFrameArr[_local3] = (_local3 * _local2); _local3++; }; } public function resetPowDisplay():void{ this.curBombFrame = 1; this.bombDisplay.gotoAndStop(1); } } }//package
Section 52
//HeroSelectionScreen (HeroSelectionScreen) package { import flash.display.*; public dynamic class HeroSelectionScreen extends MovieClip { public var button0:SimpleButton; public var button1:SimpleButton; public var heroNames:MovieClip; } }//package
Section 53
//Keyboard (Keyboard) package { import flash.events.*; import flash.display.*; public class Keyboard { private static var initialized:Boolean = false; private static var keysDown:Object = new Object(); public function initialize(_arg1:Stage){ if (!initialized){ _arg1.addEventListener(KeyboardEvent.KEY_DOWN, keyPressed); _arg1.addEventListener(KeyboardEvent.KEY_UP, keyReleased); _arg1.addEventListener(Event.DEACTIVATE, clearKeys); initialized = true; }; } public function updatePositions():void{ var _local1:Boolean; var _local2:Boolean; var _local3:Boolean; var _local4:Boolean; var _local5:Boolean; var _local6:Boolean; _local1 = ((Keyboard.isDown(37)) || (Keyboard.isDown(65))); _local2 = ((Keyboard.isDown(39)) || (Keyboard.isDown(68))); _local3 = Keyboard.isDown(32); _local4 = ((Keyboard.isDown(38)) || (Keyboard.isDown(87))); _local5 = ((((Keyboard.isDown(40)) || (Keyboard.isDown(88)))) || (Keyboard.isDown(83))); _local6 = Keyboard.isDown(17); if (_local1){ if (_local4){ OrbBlaster.hero.walk(4); } else { if (_local5){ OrbBlaster.hero.walk(5); } else { OrbBlaster.hero.walk(0); }; }; } else { if (_local2){ if (_local4){ OrbBlaster.hero.walk(6); } else { if (_local5){ OrbBlaster.hero.walk(7); } else { OrbBlaster.hero.walk(1); }; }; } else { if (_local4){ OrbBlaster.hero.walk(2); } else { if (_local5){ OrbBlaster.hero.walk(3); }; }; }; }; if (((_local3) || (_local6))){ OrbBlaster.hero.fireBombAlone(); }; } private static function clearKeys(_arg1:Event):void{ keysDown = new Object(); } private static function keyPressed(_arg1:KeyboardEvent):void{ keysDown[_arg1.keyCode] = true; } private static function keyReleased(_arg1:KeyboardEvent):void{ if ((_arg1.keyCode in keysDown)){ delete keysDown[_arg1.keyCode]; }; if ((((_arg1.keyCode == 80)) || ((_arg1.keyCode == 27)))){ OrbBlaster.pauseGame(); }; } public static function isDown(_arg1:uint):Boolean{ if (!initialized){ throw (new Error("Key class has yet been initialized.")); }; return (Boolean((_arg1 in keysDown))); } } }//package
Section 54
//LevelNumber (LevelNumber) package { import flash.events.*; import flash.display.*; import flash.geom.*; import flash.utils.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; import flash.ui.*; public dynamic class LevelNumber extends MovieClip { public var levelNumber:TextField; public function LevelNumber(){ addFrameScript(42, frame43); } function frame43(){ OrbBlaster.objMgr.killEfx(this); } } }//package
Section 55
//LevelStatsScreen (LevelStatsScreen) package { import flash.display.*; import flash.text.*; public dynamic class LevelStatsScreen extends MovieClip { public var nextButton:SimpleButton; public var lives:TextField; public var totalBonus:TextField; public var livesBonus:TextField; public var timeBonus:TextField; public var maxCombo:TextField; public var maxComboBonus:TextField; public var time:TextField; } }//package
Section 56
//LifeBar (LifeBar) package { import flash.display.*; import flash.text.*; public dynamic class LifeBar extends MovieClip { public var icon1:MovieClip; public var numLives:TextField; public var icon0:MovieClip; } }//package
Section 57
//MainMenu (MainMenu) package { import flash.display.*; import flash.text.*; public dynamic class MainMenu extends MovieClip { public var jumpButton:SimpleButton; public var jumpNumber:TextField; public var featsButton:SimpleButton; public var background:MovieClip; public var highScoresButton:SimpleButton; public var creditsButton:SimpleButton; public var debugButton:SimpleButton; public var rootName:TextField; public var statsButton:SimpleButton; public var normalButton:SimpleButton; } }//package
Section 58
//Mob (Mob) package { import flash.display.*; public class Mob extends OrbObject { public var repelID:int;// = -1 public var eyeballL:MovieClip; public var eyeballR:MovieClip; public var pushAbility:Number; public var speed2:Number; public var points:uint; public var type:uint; public var damage:int; public var gravFactor:Number; public var explType:uint; public function Mob(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number):void{ var _local6:int; var _local7:int; var _local8:Number; var _local9:Number; var _local10:Number; repelID = -1; explType = Explosion.MINE_1; super(); this.x = _arg1; this.y = _arg2; this.speed = _arg5; this.gravFactor = 1; this.maxGravSpeed = (this.gravFactor * OrbBlaster.mobGravSpeed); this.maxPushSpeed = 2; this.spinAbility = 4; this.points = 50; _local6 = (_arg3 - _arg1); _local7 = (_arg4 - _arg2); _local8 = Math.atan2(_local7, _local6); this.heading = _local8; _local9 = Math.cos(this.heading); _local10 = Math.sin(this.heading); this.ax = (OrbBlaster.GRAVITY * _local9); this.ay = (OrbBlaster.GRAVITY * _local10); this.vx = Math.ceil((this.speed * _local9)); this.vy = Math.ceil((this.speed * _local10)); } public function damagedBy(_arg1:OrbObject):void{ if (this.hitpoints >= 0){ this.hitpoints = (this.hitpoints - _arg1.damage); if (this.hitpoints <= 0){ this.die(); OrbBlaster.objMgr.addExplosion(this.explType, this.x, this.y, projID); }; }; } public function gotHitBy(_arg1:OrbObject):void{ } override public function die():void{ OrbBlaster.objMgr.killMob(this); } public function updateFace():void{ } } }//package
Section 59
//Mob0_Sprite (Mob0_Sprite) package { import flash.events.*; import flash.display.*; import flash.geom.*; import flash.utils.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; import flash.ui.*; public dynamic class Mob0_Sprite extends MovieClip { public function Mob0_Sprite(){ addFrameScript(0, frame1); } function frame1(){ this.stop(); } } }//package
Section 60
//Mob2 (Mob2) package { public class Mob2 extends Mob { public var isTping:Boolean;// = false public function Mob2(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):void{ isTping = false; super(_arg1, _arg2, _arg3, _arg4, this.speed); this.damage = 10; this.pushAbility = 0.1; this.type = 0; this.hitpoints = 1; this.explType = Explosion.MINE_4; } override public function gotHitBy(_arg1:OrbObject):void{ if (!this.isTping){ this.gotoAndPlay("getHit"); this.isTping = true; }; } public function teleport():void{ var _local1:Number; var _local2:Number; var _local3:Number; var _local4:Number; _local1 = OrbBlaster.random(100, 225); _local2 = OrbBlaster.random(-3.14, 3.14); _local3 = (Math.cos(_local2) * _local1); _local4 = (Math.sin(_local2) * _local1); this.x = (OrbBlaster.CENTER_X + _local3); this.y = (OrbBlaster.CENTER_Y + _local4); } public function doneTp():void{ this.isTping = false; } } }//package
Section 61
//Mobkon (Mobkon) package { import flash.display.*; public class Mobkon extends Mob { public var rotationAngle:Number;// = 0 public var angleFrame:int;// = 0 public var maxFrame:int; public var updateDirCount:int;// = 0 public var state:int;// = 0 public var updateDirTimer:int;// = 4 public var dir:Number;// = 0 public var explosionEfx:Array; public var credits:int;// = 25 public var spawningCount:int;// = 0 public var spawnDelay:int;// = 0 public var deg_incr:Number; public var turnRate:Number;// = 1 public var curFrame:int;// = -1 public var bitmap:Bitmap; public var spriteBase:Array; public var spawningBase:Array; public function Mobkon(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:int=0):void{ updateDirTimer = 4; updateDirCount = 0; angleFrame = 0; dir = 0; state = 0; spawningCount = 0; explosionEfx = OrbBlaster.bitmapManager.efx_explosion0_s; curFrame = -1; rotationAngle = 0; turnRate = 1; spawnDelay = 0; credits = 25; super(_arg1, _arg2, _arg3, _arg4, 5); this.maxPushSpeed = 5; this.damage = 10; this.hitpoints = 10000; this.pushAbility = 0; this.points = 500; this.type = 1; this.speed = 1; this.bitmap = new Bitmap(null, "never", false); this.dir = OrbBlaster.random(0, 6.2); this.spawnDelay = _arg5; this.vx = 0; this.vy = 0; } override public function damagedBy(_arg1:OrbObject):void{ var _local2:Number; if (this.hitpoints <= 0){ return; }; this.hitpoints = (this.hitpoints - _arg1.damage); if (this.hitpoints <= 0){ this.die(); OrbBlaster.objMgr.addEfxBitmap(this.explosionEfx, this.x, this.y); } else { if (_arg1.type == 1){ _local2 = OrbBlaster.getAngleTo(_arg1.x, _arg1.y, this.x, this.y); this.vx = (Math.cos(_local2) * this.knockBack); this.vy = (Math.sin(_local2) * this.knockBack); }; }; } public function turnLeft(_arg1:Number):void{ var _local2:Number; _local2 = (this.dir - this.turnRate); this.setDir(_local2); } public function doneSpawning():void{ this.state = 1; OrbBlaster.objMgr.addToPrune(this); } public function updateSpawning():void{ var _local1:Number; var _local2:Number; if (this.spawnDelay <= 0){ _local1 = this.spawningBase[this.spawningCount].width; _local2 = this.spawningBase[this.spawningCount].height; this.bitmap.bitmapData = this.spawningBase[this.spawningCount]; this.bitmap.x = -((_local1 >> 1)); this.bitmap.y = -((_local2 >> 1)); this.spawningCount++; if (this.spawningCount >= this.spawningBase.length){ this.doneSpawning(); }; } else { this.spawnDelay--; }; } override public function die():void{ this.playDieSound(); OrbBlaster.objMgr.killMob(this); } override public function updateFace():void{ switch (this.state){ case 0: this.updateSpawning(); break; case 1: this.updateSpecial(); this.updateNormal(); break; }; } public function updateVelocity():void{ this.vx = this.normalizeVel((this.speed * Math.cos(this.dir))); this.vy = this.normalizeVel((this.speed * Math.sin(this.dir))); } public function getRotationFrame():int{ var _local1:int; var _local2:int; _local1 = 0; _local2 = this.rotationAngle; if (_local2 < 0){ _local2 = (_local2 + 360); }; _local1 = int((_local2 / this.deg_incr)); return (_local1); } public function setDir(_arg1:Number):void{ if (_arg1 < 0){ _arg1 = (_arg1 + 6.28); }; if (_arg1 > 6.28){ _arg1 = (_arg1 - 6.28); }; this.dir = _arg1; } public function turnToPlayer():void{ var _local1:Number; var _local2:Number; var _local3:Number; _local1 = OrbBlaster.getAngleTo(this.x, this.y, OrbBlaster.hero.x, OrbBlaster.hero.y); if (_local1 < 0){ _local1 = (_local1 + (2 * Math.PI)); }; _local3 = (this.dir - _local1); if (Math.abs(_local3) <= this.turnRate){ this.setDir(_local1); } else { if (_local3 < 0){ if (Math.abs(_local3) > Math.PI){ this.turnLeft(_local1); } else { this.turnRight(_local1); }; } else { if (Math.abs(_local3) > Math.PI){ this.turnRight(_local1); } else { this.turnLeft(_local1); }; }; }; } public function updateDir():void{ this.turnToPlayer(); } public function updateNormal():void{ if (this.updateDirCount <= 0){ this.updateDir(); this.updateVelocity(); this.updateRotation(); this.updateDirCount = this.updateDirTimer; } else { this.updateDirCount--; }; this.updateBitmap(); } public function normalizeVel(_arg1:Number):Number{ return (_arg1); } public function updateBitmap():void{ var _local1:int; var _local2:Number; var _local3:Number; this.curFrame++; if (this.curFrame >= this.maxFrame){ this.curFrame = 0; }; _local1 = this.getRotationFrame(); if (this.spriteBase[_local1] != null){ _local2 = this.spriteBase[_local1][this.curFrame].width; _local3 = this.spriteBase[_local1][this.curFrame].height; this.bitmap.bitmapData = this.spriteBase[_local1][this.curFrame]; this.bitmap.x = -((_local2 >> 1)); this.bitmap.y = -((_local3 >> 1)); }; } public function setSpriteBase(_arg1:Array, _arg2:Array):void{ var _local3:Number; var _local4:Number; this.spawningBase = _arg1; this.spawningCount = 0; this.radiusX = (_arg1[0].width >> 1); this.radiusY = this.radiusX; this.addChild(this.bitmap); _local3 = this.spawningBase[this.spawningCount].width; _local4 = this.spawningBase[this.spawningCount].height; this.bitmap.x = -((_local3 >> 1)); this.bitmap.y = -((_local4 >> 1)); this.spriteBase = _arg2; this.maxFrame = this.spriteBase[0].length; } public function updateRotation():void{ this.rotationAngle = (this.dir * 57.33); } public function turnRight(_arg1:Number):void{ var _local2:Number; _local2 = (this.dir + this.turnRate); this.setDir(_local2); } public function updateSpecial():void{ } public function playDieSound():void{ SoundManager.playMobExplosion(); } } }//package
Section 62
//Mobkon0 (Mobkon0) package { public class Mobkon0 extends Mobkon { public function Mobkon0(_arg1:Number, _arg2:Number, _arg3:int=0):void{ var _local4:Number; super(_arg1, _arg2, 0, 0, _arg3); this.maxPushSpeed = 5; this.damage = 10; this.hitpoints = 10; this.pushAbility = 0; this.points = 100; this.credits = 15; this.type = 1; this.explType = Explosion.MINE_4; this.speed = 4.1; this.turnRate = 1; this.updateDirTimer = 10; this.explosionEfx = OrbBlaster.bitmapManager.efx_explosion0_m; this.deg_incr = 30; this.setSpriteBase(OrbBlaster.bitmapManager.spawning0, OrbBlaster.bitmapManager.mobkon0); this.radiusX = 11; this.radiusY = 11; _local4 = OrbBlaster.getAngleTo(this.x, this.y, OrbBlaster.hero.x, OrbBlaster.hero.y); _local4 = (_local4 + OrbBlaster.random(-1.8, 1.8)); this.setDir(_local4); } override public function playDieSound():void{ SoundManager.playMobExplosionM(); } } }//package
Section 63
//Mobkon0_Sprite (Mobkon0_Sprite) package { import flash.events.*; import flash.display.*; import flash.geom.*; import flash.utils.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; import flash.ui.*; public dynamic class Mobkon0_Sprite extends MovieClip { public function Mobkon0_Sprite(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 64
//Mobkon1 (Mobkon1) package { public class Mobkon1 extends Mobkon { private var duration:int;// = 0 public function Mobkon1(_arg1:Number, _arg2:Number, _arg3:int=0, _arg4:Number=0):void{ var _local5:Number; duration = 0; super(_arg1, _arg2, 0, 0, _arg3); this.maxPushSpeed = 5; this.damage = 10; this.hitpoints = 10; this.pushAbility = 0; this.points = 75; this.credits = 12; this.type = 1; this.speed = 7; this.updateDirTimer = 0x0200; this.explosionEfx = OrbBlaster.bitmapManager.efx_explosion0_m; this.deg_incr = 15; this.setSpriteBase(OrbBlaster.bitmapManager.spawning0, OrbBlaster.bitmapManager.mobkon1); this.radiusX = 11; this.radiusY = 11; _local5 = OrbBlaster.getAngleTo(this.x, this.y, OrbBlaster.hero.x, OrbBlaster.hero.y); this.setDir(_local5); } override public function die():void{ this.playDieSound(); OrbBlaster.objMgr.delayedRemoveMob(this); } override public function updateDir():void{ } override public function updateSpecial():void{ this.duration++; if (this.duration == 150){ this.die(); }; } override public function playDieSound():void{ SoundManager.playMobExplosionM(); } } }//package
Section 65
//Mobkon1_Sprite (Mobkon1_Sprite) package { import flash.display.*; public dynamic class Mobkon1_Sprite extends MovieClip { } }//package
Section 66
//Mobkon10 (Mobkon10) package { public class Mobkon10 extends Mobkon { private var actionType:int;// = 0 private var actionTimer:int;// = 0 private var actionTimerEnd:int;// = 0 public function Mobkon10(_arg1:Number, _arg2:Number, _arg3:int=0):void{ actionTimer = 0; actionTimerEnd = 0; actionType = 0; super(_arg1, _arg2, 0, 0, _arg3); this.maxPushSpeed = 5; this.damage = 10; this.hitpoints = 20; this.pushAbility = 0; this.points = 225; this.credits = 25; this.type = 1; this.speed = 3; this.turnRate = 0.5; this.updateDirTimer = 10; this.explosionEfx = OrbBlaster.bitmapManager.efx_explosion0_m; this.setSpriteBase(OrbBlaster.bitmapManager.spawning0, OrbBlaster.bitmapManager.mobkon10); this.radiusX = 19; this.radiusY = 19; } override public function die():void{ var _local1:Number; var _local2:Number; var _local3:Number; _local1 = OrbBlaster.random(-10, 10); _local2 = OrbBlaster.random(-10, 10); _local3 = OrbBlaster.random(-10, 10); OrbBlaster.objMgr.addMob(101, (this.x + _local1), (this.y + _local1), 0); OrbBlaster.objMgr.addMob(101, (this.x + _local2), (this.y + _local2), 0); OrbBlaster.objMgr.addMob(101, (this.x + _local3), (this.y + _local3), 0); this.playDieSound(); OrbBlaster.objMgr.killMob(this); } override public function turnToPlayer():void{ } override public function updateSpecial():void{ if (this.willBeOutBounds()){ this.setDir((this.dir - 0.7854)); this.updateVelocity(); }; } } }//package
Section 67
//Mobkon10_Mini (Mobkon10_Mini) package { public class Mobkon10_Mini extends Mobkon { private var actionType:int;// = 0 private var actionTimer:int;// = 0 private var actionTimerEnd:int;// = 0 public function Mobkon10_Mini(_arg1:Number, _arg2:Number, _arg3:int=0):void{ actionTimer = 0; actionTimerEnd = 0; actionType = 0; super(_arg1, _arg2, 0, 0, _arg3); this.maxPushSpeed = 5; this.damage = 10; this.hitpoints = 10; this.pushAbility = 0; this.points = 80; this.credits = 8; this.type = 1; this.speed = 3.2; this.turnRate = 0.5; this.updateDirTimer = 10; this.explosionEfx = OrbBlaster.bitmapManager.efx_explosion0_s; this.setSpriteBase(OrbBlaster.bitmapManager.spawning0, OrbBlaster.bitmapManager.mobkon7); this.radiusX = 11; this.radiusY = 11; this.doneSpawning(); } override public function turnToPlayer():void{ } override public function updateSpecial():void{ if (this.willBeOutBounds()){ this.setDir((this.dir - 0.7854)); this.updateVelocity(); }; } override public function playDieSound():void{ SoundManager.playMobExplosionS(); } } }//package
Section 68
//Mobkon10_Sprite (Mobkon10_Sprite) package { import flash.display.*; public dynamic class Mobkon10_Sprite extends MovieClip { } }//package
Section 69
//Mobkon11 (Mobkon11) package { public class Mobkon11 extends Mobkon { public function Mobkon11(_arg1:Number, _arg2:Number, _arg3:int=0):void{ var _local4:Number; super(_arg1, _arg2, 0, 0, _arg3); this.maxPushSpeed = 5; this.damage = 10; this.hitpoints = 10; this.pushAbility = 0; this.points = 200; this.credits = 25; this.type = 1; this.speed = 3.9; this.turnRate = 0.11; this.updateDirTimer = 4; this.explosionEfx = OrbBlaster.bitmapManager.efx_explosion0_m; this.deg_incr = 15; this.setSpriteBase(OrbBlaster.bitmapManager.spawning0, OrbBlaster.bitmapManager.mobkon11); this.radiusX = 10; this.radiusY = 10; _local4 = OrbBlaster.getAngleTo(this.x, this.y, OrbBlaster.hero.x, OrbBlaster.hero.y); this.setDir(_local4); } override public function damagedBy(_arg1:OrbObject):void{ var _local2:Number; var _local3:Number; if (this.hitpoints <= 0){ return; }; _local2 = OrbBlaster.getAngleTo(this.x, this.y, _arg1.x, _arg1.y); if (_local2 < 0){ _local2 = (_local2 + 6.28); }; _local3 = Math.abs((this.dir - _local2)); if ((((_local3 > 1.8)) && ((_local3 < (6.28 - 1.8))))){ this.hitpoints = (this.hitpoints - _arg1.damage); if (this.hitpoints <= 0){ this.die(); OrbBlaster.objMgr.addEfxBitmap(this.explosionEfx, this.x, this.y); }; }; } override public function playDieSound():void{ SoundManager.playMobExplosionM(); } } }//package
Section 70
//Mobkon11_Sprite (Mobkon11_Sprite) package { import flash.display.*; public dynamic class Mobkon11_Sprite extends MovieClip { } }//package
Section 71
//Mobkon12 (Mobkon12) package { public class Mobkon12 extends Mobkon { public function Mobkon12(_arg1:Number, _arg2:Number, _arg3:int=0):void{ var _local4:Number; super(_arg1, _arg2, 0, 0, _arg3); this.spawnDelay = _arg3; this.maxPushSpeed = 5; this.damage = 10; this.hitpoints = 20; this.pushAbility = 0; this.points = 175; this.credits = 22; this.type = 1; this.speed = (4.3 + OrbBlaster.random(-0.5, 0.5)); this.turnRate = 0.8; this.updateDirTimer = 3; this.explosionEfx = OrbBlaster.bitmapManager.efx_explosion0_s; this.deg_incr = 30; this.setSpriteBase(OrbBlaster.bitmapManager.spawning0, OrbBlaster.bitmapManager.mobkon12); this.radiusX = 11; this.radiusY = 11; _local4 = OrbBlaster.getAngleTo(this.x, this.y, OrbBlaster.hero.x, OrbBlaster.hero.y); this.setDir(_local4); } override public function playDieSound():void{ SoundManager.playMobExplosionS(); } } }//package
Section 72
//Mobkon12_Sprite (Mobkon12_Sprite) package { import flash.display.*; public dynamic class Mobkon12_Sprite extends MovieClip { } }//package
Section 73
//Mobkon2 (Mobkon2) package { public class Mobkon2 extends Mobkon { public function Mobkon2(_arg1:Number, _arg2:Number, _arg3:int=0):void{ var _local4:Number; super(_arg1, _arg2, 0, 0, _arg3); this.spawnDelay = _arg3; this.maxPushSpeed = 5; this.damage = 10; this.hitpoints = 10; this.pushAbility = 0; this.points = 100; this.credits = 15; this.type = 1; this.speed = (4 + OrbBlaster.random(-0.5, 0.5)); this.turnRate = 0.8; this.updateDirTimer = 3; this.explosionEfx = OrbBlaster.bitmapManager.efx_explosion0_s; this.deg_incr = 30; this.setSpriteBase(OrbBlaster.bitmapManager.spawning0, OrbBlaster.bitmapManager.mobkon2); this.radiusX = 10; this.radiusY = 10; _local4 = OrbBlaster.getAngleTo(this.x, this.y, OrbBlaster.hero.x, OrbBlaster.hero.y); this.setDir(_local4); } override public function playDieSound():void{ SoundManager.playMobExplosionS(); } } }//package
Section 74
//Mobkon2_Sprite (Mobkon2_Sprite) package { import flash.display.*; public dynamic class Mobkon2_Sprite extends MovieClip { } }//package
Section 75
//Mobkon3 (Mobkon3) package { public class Mobkon3 extends Mobkon { public function Mobkon3(_arg1:Number, _arg2:Number, _arg3:int=0):void{ super(_arg1, _arg2, 0, 0, _arg3); this.maxPushSpeed = 5; this.damage = 10; this.hitpoints = 45; this.pushAbility = 0; this.points = 450; this.credits = 45; this.type = 1; this.speed = 2; this.turnRate = 0.11; this.updateDirTimer = 4; this.explosionEfx = OrbBlaster.bitmapManager.efx_explosion0_l; this.deg_incr = 15; this.setSpriteBase(OrbBlaster.bitmapManager.spawning0, OrbBlaster.bitmapManager.mobkon3); this.radiusX = 24; this.radiusY = 24; } override public function damagedBy(_arg1:OrbObject):void{ var _local2:Number; var _local3:Number; if (this.hitpoints <= 0){ return; }; _local2 = OrbBlaster.getAngleTo(this.x, this.y, _arg1.x, _arg1.y); if (_local2 < 0){ _local2 = (_local2 + 6.28); }; _local3 = Math.abs((this.dir - _local2)); if ((((_local3 > 1.3)) && ((_local3 < (6.28 - 1.3))))){ this.hitpoints = (this.hitpoints - _arg1.damage); OrbBlaster.objMgr.addEfxBitmap(OrbBlaster.bitmapManager.efx_explosion0_s, _arg1.x, _arg1.y); if (this.hitpoints <= 0){ this.die(); OrbBlaster.objMgr.addEfxBitmap(this.explosionEfx, this.x, this.y); }; }; } } }//package
Section 76
//Mobkon3_Sprite (Mobkon3_Sprite) package { import flash.display.*; public dynamic class Mobkon3_Sprite extends MovieClip { } }//package
Section 77
//Mobkon4 (Mobkon4) package { public class Mobkon4 extends Mobkon { public function Mobkon4(_arg1:Number, _arg2:Number, _arg3:int=0):void{ var _local4:Number; super(_arg1, _arg2, 0, 0, _arg3); this.maxPushSpeed = 5; this.damage = 10; this.hitpoints = 10; this.pushAbility = 0; this.points = 100; this.credits = 15; this.type = 1; this.speed = 3.9; this.turnRate = 0.5; this.updateDirTimer = 8; this.explosionEfx = OrbBlaster.bitmapManager.efx_explosion0_m; this.deg_incr = 30; this.setSpriteBase(OrbBlaster.bitmapManager.spawning0, OrbBlaster.bitmapManager.mobkon4); this.radiusX = 13; this.radiusY = 13; _local4 = OrbBlaster.getAngleTo(this.x, this.y, OrbBlaster.hero.x, OrbBlaster.hero.y); _local4 = (_local4 + OrbBlaster.random(-0.3, 0.3)); this.setDir(_local4); } override public function die():void{ this.playDieSound(); OrbBlaster.objMgr.addMob(41, this.x, this.y, 0, (this.dir - 2)); OrbBlaster.objMgr.addMob(41, this.x, this.y, 0, (this.dir + 2)); OrbBlaster.objMgr.killMob(this); } override public function playDieSound():void{ SoundManager.playMobExplosionM(); } } }//package
Section 78
//Mobkon4_Mini (Mobkon4_Mini) package { public class Mobkon4_Mini extends Mobkon { public function Mobkon4_Mini(_arg1:Number, _arg2:Number, _arg3:int=0, _arg4:Number=0):void{ super(_arg1, _arg2, 0, 0, _arg3); this.maxPushSpeed = 5; this.damage = 30; this.hitpoints = 10; this.pushAbility = 0; this.points = 35; this.credits = 7; this.type = 1; this.speed = 5.8; this.turnRate = 0.5; this.updateDirTimer = 8; this.explosionEfx = OrbBlaster.bitmapManager.efx_explosion0_s; this.setSpriteBase(OrbBlaster.bitmapManager.spawning0, OrbBlaster.bitmapManager.mobkon4_mini); this.radiusX = 9; this.radiusY = 9; this.setDir(_arg4); } override public function updateSpawning():void{ this.spawningCount++; if (this.spawningCount >= 2){ this.spawningCount = 0; this.doneSpawning(); }; } override public function updateSpecial():void{ this.spawningCount++; if (this.spawningCount >= 2){ this.speed = 4.7; }; } override public function playDieSound():void{ SoundManager.playMobExplosionS(); } } }//package
Section 79
//Mobkon4_Mini_Sprite (Mobkon4_Mini_Sprite) package { import flash.events.*; import flash.display.*; import flash.geom.*; import flash.utils.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; import flash.ui.*; public dynamic class Mobkon4_Mini_Sprite extends MovieClip { public function Mobkon4_Mini_Sprite(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 80
//Mobkon4_Sprite (Mobkon4_Sprite) package { import flash.display.*; public dynamic class Mobkon4_Sprite extends MovieClip { } }//package
Section 81
//Mobkon5 (Mobkon5) package { public class Mobkon5 extends Mobkon { private var actionType:int;// = 0 private var actionTimer:int;// = 0 private var actionTimerEnd:int;// = 0 public function Mobkon5(_arg1:Number, _arg2:Number, _arg3:int=0):void{ actionTimer = 0; actionTimerEnd = 0; actionType = 0; super(_arg1, _arg2, 0, 0, _arg3); this.maxPushSpeed = 5; this.damage = 10; this.hitpoints = 10; this.pushAbility = 0; this.points = 100; this.credits = 15; this.type = 1; this.speed = 0; this.turnRate = 0.5; this.updateDirTimer = 50000; this.explosionEfx = OrbBlaster.bitmapManager.efx_explosion0_s; this.deg_incr = 30; this.setSpriteBase(OrbBlaster.bitmapManager.spawning0, OrbBlaster.bitmapManager.mobkon5); this.radiusX = 9; this.radiusY = 9; } override public function updateDir():void{ } override public function updateSpecial():void{ if (this.willBeOutBounds()){ this.setDir((this.dir - 0.7854)); this.updateVelocity(); this.updateRotation(); }; if (this.actionTimer == this.actionTimerEnd){ switch (this.actionType){ case 0: this.speed = 0; this.setDir(OrbBlaster.random(-3.14, 3.14)); this.actionTimerEnd = OrbBlaster.random(1, 2); this.actionType = Math.floor(OrbBlaster.random(0, 3)); break; case 1: this.speed = 0; this.actionTimerEnd = OrbBlaster.random(1, 2); this.actionType = Math.floor(OrbBlaster.random(0, 3)); break; case 2: this.speed = 3; this.setDir(OrbBlaster.random(-3.14, 3.14)); this.actionTimerEnd = OrbBlaster.random(36, 64); this.actionType = Math.floor(OrbBlaster.random(1, 3)); break; }; this.updateRotation(); this.updateVelocity(); this.actionTimer = 0; }; this.actionTimer++; } override public function playDieSound():void{ SoundManager.playMobExplosionS(); } } }//package
Section 82
//Mobkon5_Sprite (Mobkon5_Sprite) package { import flash.display.*; public dynamic class Mobkon5_Sprite extends MovieClip { } }//package
Section 83
//Mobkon6 (Mobkon6) package { public class Mobkon6 extends Mobkon { private var actionType:int;// = 0 private var actionTimer:int;// = -24 private var totalSpawned:int;// = 0 private var actionTimerEnd:int;// = 0 public function Mobkon6(_arg1:Number, _arg2:Number, _arg3:int=0):void{ actionTimer = -24; actionTimerEnd = 0; actionType = 0; totalSpawned = 0; super(_arg1, _arg2, 0, 0, _arg3); this.maxPushSpeed = 5; this.damage = 10; this.hitpoints = 150; this.pushAbility = 0; this.points = 650; this.credits = 75; this.type = 1; this.speed = 0; this.turnRate = 0.5; this.updateDirTimer = 50000; this.explosionEfx = OrbBlaster.bitmapManager.efx_explosion0_l; this.setSpriteBase(OrbBlaster.bitmapManager.spawning0, OrbBlaster.bitmapManager.mobkon6); this.radiusX = 32; this.radiusY = 32; } override public function updateDir():void{ } override public function updateSpecial():void{ if (this.actionTimer == this.actionTimerEnd){ if (this.totalSpawned <= 10){ OrbBlaster.objMgr.addMob(61, this.x, this.y, 0); this.actionTimer = 0; this.actionTimerEnd = OrbBlaster.random(54, 74); this.totalSpawned++; }; }; this.actionTimer++; } } }//package
Section 84
//Mobkon6_Mini (Mobkon6_Mini) package { public class Mobkon6_Mini extends Mobkon { public function Mobkon6_Mini(_arg1:Number, _arg2:Number, _arg3:int=0):void{ super(_arg1, _arg2, 0, 0); this.maxPushSpeed = 5; this.damage = 10; this.hitpoints = 10; this.pushAbility = 0; this.points = 35; this.credits = 7; this.type = 1; this.explType = Explosion.MINE_4; this.speed = 5; this.updateDirTimer = 2; this.explosionEfx = OrbBlaster.bitmapManager.efx_explosion2; this.deg_incr = 15; this.turnRate = 0.05; this.setSpriteBase(OrbBlaster.bitmapManager.spawning0, OrbBlaster.bitmapManager.mobkon6_mini); this.radiusX = 8.5; this.radiusY = 8.5; this.doneSpawning(); } override public function updateSpecial():void{ if (this.willBeOutBounds()){ this.setDir((this.dir - 0.7854)); this.updateVelocity(); }; } override public function playDieSound():void{ SoundManager.playMobExplosionS(); } } }//package
Section 85
//Mobkon6_Mini_Sprite (Mobkon6_Mini_Sprite) package { import flash.display.*; public dynamic class Mobkon6_Mini_Sprite extends MovieClip { } }//package
Section 86
//Mobkon6_Sprite (Mobkon6_Sprite) package { import flash.display.*; public dynamic class Mobkon6_Sprite extends MovieClip { } }//package
Section 87
//Mobkon7 (Mobkon7) package { public class Mobkon7 extends Mobkon { private var actionType:int;// = 0 private var actionTimer:int;// = 0 private var actionTimerEnd:int;// = 0 public function Mobkon7(_arg1:Number, _arg2:Number, _arg3:int=0):void{ actionTimer = 0; actionTimerEnd = 0; actionType = 0; super(_arg1, _arg2, 0, 0, _arg3); this.maxPushSpeed = 5; this.damage = 10; this.hitpoints = 10; this.pushAbility = 0; this.points = 100; this.credits = 15; this.type = 1; this.speed = 3; this.turnRate = 0.5; this.updateDirTimer = 10; this.explosionEfx = OrbBlaster.bitmapManager.efx_explosion0_s; this.setSpriteBase(OrbBlaster.bitmapManager.spawning0, OrbBlaster.bitmapManager.mobkon7); this.radiusX = 11; this.radiusY = 11; } override public function turnToPlayer():void{ } override public function updateSpecial():void{ if (this.willBeOutBounds()){ this.setDir((this.dir - 0.7854)); this.updateVelocity(); }; } override public function playDieSound():void{ SoundManager.playMobExplosionS(); } } }//package
Section 88
//Mobkon7_Sprite (Mobkon7_Sprite) package { import flash.display.*; public dynamic class Mobkon7_Sprite extends MovieClip { } }//package
Section 89
//Mobkon8 (Mobkon8) package { public class Mobkon8 extends Mobkon { private var actionType:int;// = 0 private var actionTimer:int;// = 0 private var actionTimerEnd:int;// = 0 public function Mobkon8(_arg1:Number, _arg2:Number, _arg3:int=0):void{ var _local4:Number; actionTimer = 0; actionTimerEnd = 0; actionType = 0; super(_arg1, _arg2, 0, 0, _arg3); this.maxPushSpeed = 5; this.damage = 10; this.hitpoints = 20; this.pushAbility = 0; this.points = 150; this.credits = 25; this.type = 1; this.speed = 0; this.turnRate = 0.05; this.updateDirTimer = 2; this.explosionEfx = OrbBlaster.bitmapManager.efx_explosion0_m; this.deg_incr = 15; this.setSpriteBase(OrbBlaster.bitmapManager.spawning0, OrbBlaster.bitmapManager.mobkon8); this.radiusX = 14; this.radiusY = 14; _local4 = OrbBlaster.getAngleTo(this.x, this.y, OrbBlaster.hero.x, OrbBlaster.hero.y); _local4 = (_local4 + OrbBlaster.random(-1, 1)); this.setDir(_local4); } override public function turnToPlayer():void{ var _local1:Number; var _local2:Number; var _local3:Number; _local1 = OrbBlaster.getAngleTo(this.x, this.y, OrbBlaster.hero.x, OrbBlaster.hero.y); if (_local1 < 0){ _local1 = (_local1 + (2 * Math.PI)); }; _local3 = (this.dir - _local1); if (Math.abs(_local3) <= this.turnRate){ this.speed = 6; this.updateVelocity(); this.setDir(_local1); } else { this.speed = 0; if (_local3 < 0){ if (Math.abs(_local3) > Math.PI){ this.turnLeft(_local1); } else { this.turnRight(_local1); }; } else { if (Math.abs(_local3) > Math.PI){ this.turnRight(_local1); } else { this.turnLeft(_local1); }; }; }; } } }//package
Section 90
//Mobkon8_Sprite (Mobkon8_Sprite) package { import flash.display.*; public dynamic class Mobkon8_Sprite extends MovieClip { } }//package
Section 91
//Mobkon9 (Mobkon9) package { public class Mobkon9 extends Mobkon { public var accelCount:int;// = 0 public function Mobkon9(_arg1:Number, _arg2:Number, _arg3:int=0):void{ var _local4:Number; accelCount = 0; super(_arg1, _arg2, 0, 0, _arg3); this.spawnDelay = _arg3; this.maxPushSpeed = 5; this.damage = 10; this.hitpoints = 10; this.pushAbility = 0; this.points = 125; this.credits = 18; this.type = 1; this.speed = (2 + OrbBlaster.random(-0.5, 0.5)); this.turnRate = 0.4; this.updateDirTimer = 5; this.explosionEfx = OrbBlaster.bitmapManager.efx_explosion0_s; this.deg_incr = 30; this.setSpriteBase(OrbBlaster.bitmapManager.spawning0, OrbBlaster.bitmapManager.mobkon9); this.radiusX = 10; this.radiusY = 10; _local4 = OrbBlaster.getAngleTo(this.x, this.y, OrbBlaster.hero.x, OrbBlaster.hero.y); this.setDir(_local4); } override public function updateSpecial():void{ if (this.speed <= (OrbBlaster.hero.speed + 1.5)){ if (this.accelCount >= 2){ this.speed = (this.speed + 0.45); this.accelCount = 0; }; this.accelCount++; }; } override public function playDieSound():void{ SoundManager.playMobExplosionM(); } } }//package
Section 92
//Mobkon9_Sprite (Mobkon9_Sprite) package { import flash.display.*; public dynamic class Mobkon9_Sprite extends MovieClip { } }//package
Section 93
//MobMissile (MobMissile) package { public class MobMissile extends Mob { public function MobMissile(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):void{ super(_arg1, _arg2, _arg3, _arg4, 0); this.ax = 0; this.ay = 0; this.type = 2; } override public function damagedBy(_arg1:OrbObject):void{ this.hitpoints = (this.hitpoints - _arg1.damage); if (this.hitpoints <= 0){ this.die(); OrbBlaster.objMgr.addEfx(2, this); }; } override public function die():void{ OrbBlaster.objMgr.killProj(this); } override public function updatePosition():Boolean{ var _local1:Number; var _local2:Number; var _local3:Number; var _local4:Number; _local1 = (this.vx + this.ax); _local2 = (this.vy + this.ay); this.maxSpeed = this.maxPushSpeed; this.vx = _local1; this.vy = _local2; _local3 = (this.x + this.vx); _local4 = (this.y + this.vy); this.x = _local3; this.y = _local4; if (this.ex0 != null){ this.ex0.value = (this.x - this.radiusX); this.ex1.value = (this.x + this.radiusX); }; if (OrbBlaster.hero.visible == false){ if (this.isOutBounds(_local3, _local4)){ this.die(); }; }; return (true); } } }//package
Section 94
//MobMissile1 (MobMissile1) package { public class MobMissile1 extends MobMissile { public var activateTimer:uint;// = 0 public function MobMissile1(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):void{ var _local5:*; var _local6:Number; activateTimer = 0; super(_arg1, _arg2, _arg3, _arg4); this.type = 2; _local5 = OrbBlaster.getAngleTo(this.x, this.y, OrbBlaster.hero.x, OrbBlaster.hero.y); this.ax = 0; this.ay = 0; this.vx = _arg3; this.vy = _arg4; this.maxPushSpeed = 0; this.radiusX = 19; this.radiusY = 19; } override public function damagedBy(_arg1:OrbObject):void{ this.hitpoints = (this.hitpoints - _arg1.damage); if (this.hitpoints <= 0){ this.die(); OrbBlaster.objMgr.addEfx(3, this); }; } override public function updateFace():void{ var _local1:*; var _local2:Number; if ((((this.activateTimer == 18)) && ((this.currentFrame == 1)))){ _local1 = OrbBlaster.getAngleTo(this.x, this.y, OrbBlaster.hero.x, OrbBlaster.hero.y); this.ax = (Math.cos(_local1) * 0.1); this.ay = (Math.sin(_local1) * 0.1); this.vx = (Math.cos(_local1) * 0.6); this.vy = (Math.sin(_local1) * 0.6); this.gotoAndPlay("activate"); }; this.activateTimer++; } } }//package
Section 95
//MobPackage (MobPackage) package { public class MobPackage { public var amountMax:Number; public var isCluster:Boolean; public var types:Array; public var amountMin:Number; public var rating:Number; public var locations:Array; public static var normalPackages = new Array(); public function MobPackage(_arg1:Array, _arg2:Number, _arg3:Number, _arg4:Array, _arg5:Boolean=false, _arg6:Number=1):void{ this.types = _arg1; this.amountMin = _arg2; this.amountMax = _arg3; this.locations = _arg4; this.isCluster = _arg5; this.rating = _arg6; } public static function initPackages():void{ normalPackages[0] = new MobPackage([0], 2, 3, [0, 2, 5, 7], true, 1); normalPackages[1] = new MobPackage([7], 3, 4, [0, 2, 5, 7], true, 1); normalPackages[2] = new MobPackage([4], 1, 2, [0, 2, 5, 7], true, 1); normalPackages[3] = new MobPackage([2, 5], 1, 2, [1, 3, 4, 6], false, 1); normalPackages[4] = new MobPackage([11], 1, 1, [0, 2, 5, 7], false, 1); normalPackages[5] = new MobPackage([9], 2, 3, [0, 2, 5, 7], true, 1); normalPackages[10] = new MobPackage([0, 2], 3, 5, [0, 2, 5, 7], true, 1); normalPackages[11] = new MobPackage([4, 8], 2, 3, [0, 2, 5, 7], true, 1); normalPackages[12] = new MobPackage([11], 1, 2, [0, 2, 5, 7], true, 1); normalPackages[13] = new MobPackage([0, 2], 3, 5, [0, 2, 5, 7, 8], false, 1); normalPackages[20] = new MobPackage([4], 2, 2, [0, 2, 5, 7], true, 1); normalPackages[21] = new MobPackage([1, 8], 2, 4, [9], false, 1); normalPackages[22] = new MobPackage([2, 5, 7], 3, 5, [0, 2, 5, 7], true, 1); normalPackages[23] = new MobPackage([4], 2, 2, [0, 2, 5, 7], false, 1); normalPackages[24] = new MobPackage([2], 3, 5, [0, 2, 5, 7, 8], false, 1); normalPackages[30] = new MobPackage([0], 3, 5, [0, 2, 5, 7], false, 1); normalPackages[31] = new MobPackage([6], 1, 1, [8], false, 2); normalPackages[32] = new MobPackage([11, 9], 1, 2, [0, 2, 5, 7], false, 1); normalPackages[33] = new MobPackage([3], 1, 1, [0, 2, 5, 7], false, 1.9); normalPackages[40] = new MobPackage([4], 1, 2, [9], false, 1); normalPackages[41] = new MobPackage([0, 1, 2], 2, 4, [1, 3, 5, 7], false, 1); normalPackages[42] = new MobPackage([9], 2, 4, [0, 2, 5, 7], true, 1); normalPackages[43] = new MobPackage([10], 1, 2, [0, 2, 5, 7, 8], false, 1.4); normalPackages[50] = new MobPackage([7], 2, 4, [0, 2, 5, 7, 8, 9], false, 1); normalPackages[51] = new MobPackage([5], 2, 4, [0, 2, 5, 7, 8, 9], false, 1); normalPackages[52] = new MobPackage([10], 1, 1, [0, 2, 5, 7, 8, 9], false, 1.6); normalPackages[53] = new MobPackage([11], 1, 1.4, [0, 2, 5, 7], false, 1); normalPackages[60] = new MobPackage([5], 3, 6, [0, 2, 5, 7], true, 1); } } }//package
Section 96
//MochiAd (MochiAd) package { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.system.*; import flash.net.*; public class MochiAd { public static function getVersion():String{ return ("2.1"); } public static function showTimedAd(_arg1:Object):void{ MochiAd.showInterLevelAd(_arg1); } public static function _allowDomains(_arg1:String):String{ var _local2:String; _local2 = _arg1.split("/")[2].split(":")[0]; Security.allowDomain("*"); Security.allowDomain(_local2); Security.allowInsecureDomain("*"); Security.allowInsecureDomain(_local2); return (_local2); } public static function load(_arg1:Object):MovieClip{ var DEFAULTS:Object; var clip:Object; var depth:Number; var mc:MovieClip; var wh:Array; var lv:URLVariables; var k:String; var server:String; var hostname:String; var lc:LocalConnection; var name:String; var loader:Loader; var f:Function; var g:Function; var req:URLRequest; var v:Object; var options = _arg1; DEFAULTS = {server:"http://x.mochiads.com/srv/1/", method:"load", depth:10333, id:"_UNKNOWN_"}; options = MochiAd._parseOptions(options, DEFAULTS); options.swfv = 9; options.mav = MochiAd.getVersion(); clip = options.clip; if (!MochiAd._isNetworkAvailable()){ return (null); }; if (clip._mochiad_loaded){ return (null); }; depth = options.depth; delete options.depth; mc = createEmptyMovieClip(clip, "_mochiad", depth); wh = MochiAd._getRes(options, clip); options.res = ((wh[0] + "x") + wh[1]); options.server = (options.server + options.id); delete options.id; clip._mochiad_loaded = true; if (clip.loaderInfo.loaderURL.indexOf("http") == 0){ options.as3_swf = clip.loaderInfo.loaderURL; }; lv = new URLVariables(); for (k in options) { v = options[k]; if (!(v is Function)){ lv[k] = v; }; }; server = lv.server; delete lv.server; hostname = _allowDomains(server); lc = new LocalConnection(); lc.client = mc; name = ["", Math.floor(new Date().getTime()), Math.floor((Math.random() * 999999))].join("_"); lc.allowDomain("*", "localhost"); lc.allowInsecureDomain("*", "localhost"); lc.connect(name); mc.lc = lc; lv.lc = name; lv.st = getTimer(); loader = new Loader(); f = function (_arg1:Object):void{ mc._mochiad_ctr_failed = true; }; loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, f); g = function (_arg1:Object):void{ MochiAd.unload(clip); }; loader.contentLoaderInfo.addEventListener(Event.UNLOAD, g); req = new URLRequest((server + ".swf")); req.contentType = "application/x-www-form-urlencoded"; req.method = URLRequestMethod.POST; req.data = lv; loader.load(req); mc.addChild(loader); mc._mochiad_ctr = loader; return (mc); } public static function sendHighScore(_arg1:Object, _arg2:Object, _arg3:Object=null):Boolean{ var _local4:MovieClip; _local4 = MochiAd._loadCommunicator({clip:_arg1.clip, id:_arg1.id}); if (!_local4){ return (false); }; _local4.doSend(["sendHighScore", _arg1], _arg2, _arg3); return (true); } public static function _parseOptions(_arg1:Object, _arg2:Object):Object{ var _local3:Object; var _local4:String; var _local5:Array; var _local6:Number; var _local7:Array; _local3 = {}; for (_local4 in _arg2) { _local3[_local4] = _arg2[_local4]; }; if (_arg1){ for (_local4 in _arg1) { _local3[_local4] = _arg1[_local4]; }; }; _arg1 = _local3.clip.loaderInfo.parameters.mochiad_options; if (_arg1){ _local5 = _arg1.split("&"); _local6 = 0; while (_local6 < _local5.length) { _local7 = _local5[_local6].split("="); _local3[unescape(_local7[0])] = unescape(_local7[1]); _local6++; }; }; return (_local3); } public static function _isNetworkAvailable():Boolean{ return (!((Security.sandboxType == "localWithFile"))); } public static function unload(_arg1:Object):Boolean{ if (((_arg1.clip) && (_arg1.clip._mochiad))){ _arg1 = _arg1.clip; }; if (!_arg1._mochiad){ return (false); }; if (_arg1._mochiad.onUnload){ _arg1._mochiad.onUnload(); }; _arg1.removeChild(_arg1._mochiad); delete _arg1._mochiad_loaded; delete _arg1._mochiad; return (true); } public static function showInterLevelAd(_arg1:Object):void{ var DEFAULTS:Object; var clip:Object; var ad_msec:Number; var ad_timeout:Number; var fadeout_time:Number; var mc:MovieClip; var wh:Array; var w:Number; var h:Number; var chk:MovieClip; var options = _arg1; DEFAULTS = {ad_timeout:2000, fadeout_time:250, regpt:"o", method:"showTimedAd", ad_started:function ():void{ this.clip.stop(); }, ad_finished:function ():void{ this.clip.play(); }}; options = MochiAd._parseOptions(options, DEFAULTS); clip = options.clip; ad_msec = 11000; ad_timeout = options.ad_timeout; delete options.ad_timeout; fadeout_time = options.fadeout_time; delete options.fadeout_time; if (!MochiAd.load(options)){ options.ad_finished(); return; }; options.ad_started(); mc = clip._mochiad; mc["onUnload"] = function ():void{ options.ad_finished(); }; wh = MochiAd._getRes(options, clip); w = wh[0]; h = wh[1]; mc.x = (w * 0.5); mc.y = (h * 0.5); chk = createEmptyMovieClip(mc, "_mochiad_wait", 3); chk.ad_msec = ad_msec; chk.ad_timeout = ad_timeout; chk.started = getTimer(); chk.showing = false; chk.fadeout_time = fadeout_time; chk.fadeFunction = function ():void{ var _local1:Number; _local1 = (100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time))); if (_local1 > 0){ this.parent.alpha = (_local1 * 0.01); } else { MochiAd.unload(clip); delete this["onEnterFrame"]; }; }; mc.unloadAd = function ():void{ MochiAd.unload(clip); }; mc.adjustProgress = function (_arg1:Number):void{ var _local2:Object; _local2 = mc._mochiad_wait; _local2.server_control = true; _local2.started = getTimer(); _local2.ad_msec = (_arg1 - 250); }; chk["onEnterFrame"] = function ():void{ var _local1:Object; var _local2:Number; var _local3:Boolean; var _local4:Number; _local1 = this.parent._mochiad_ctr; _local2 = (getTimer() - this.started); _local3 = false; if (!chk.showing){ _local4 = _local1.loaderInfo.bytesTotal; if ((((_local4 > 0)) || (("number" == "undefined")))){ chk.showing = true; chk.started = getTimer(); } else { if (_local2 > chk.ad_timeout){ _local3 = true; }; }; }; if ((((_local2 > chk.ad_msec)) || (this.parent._mochiad_ctr_failed))){ _local3 = true; }; if (_local3){ if (this.server_control){ delete this.onEnterFrame; } else { this.fadeout_start = getTimer(); this.onEnterFrame = this.fadeFunction; }; }; }; doOnEnterFrame(chk); } public static function _getRes(_arg1:Object, _arg2:Object):Array{ var _local3:Object; var _local4:Number; var _local5:Number; var _local6:Array; _local3 = _arg2.getBounds(_arg2.root); _local4 = 0; _local5 = 0; if (typeof(_arg1.res) != "undefined"){ _local6 = _arg1.res.split("x"); _local4 = parseFloat(_local6[0]); _local5 = parseFloat(_local6[1]); } else { _local4 = (_local3.xMax - _local3.xMin); _local5 = (_local3.yMax - _local3.yMin); }; if ((((_local4 == 0)) || ((_local5 == 0)))){ _local4 = _arg2.stage.stageWidth; _local5 = _arg2.stage.stageHeight; }; return ([_local4, _local5]); } public static function createEmptyMovieClip(_arg1:Object, _arg2:String, _arg3:Number):MovieClip{ var _local4:MovieClip; _local4 = new MovieClip(); if (((false) && (_arg3))){ _arg1.addChildAt(_local4, _arg3); } else { _arg1.addChild(_local4); }; _arg1[_arg2] = _local4; _local4["_name"] = _arg2; return (_local4); } public static function _loadCommunicator(_arg1:Object):MovieClip{ var DEFAULTS:Object; var clip:Object; var clipname:String; var server:String; var depth:Number; var mc:MovieClip; var lv:URLVariables; var k:String; var lc:LocalConnection; var name:String; var req:URLRequest; var loader:Loader; var options = _arg1; DEFAULTS = {com_server:"http://x.mochiads.com/com/1/", method:"loadCommunicator", depth:10337, id:"_UNKNOWN_"}; options = MochiAd._parseOptions(options, DEFAULTS); options.swfv = 9; options.mav = MochiAd.getVersion(); clip = options.clip; clipname = ("_mochiad_com_" + options.id); if (!MochiAd._isNetworkAvailable()){ return (null); }; if (clip[clipname]){ return (clip[clipname]); }; server = (options.com_server + options.id); MochiAd._allowDomains(server); delete options.id; delete options.com_server; depth = options.depth; delete options.depth; mc = createEmptyMovieClip(clip, clipname, depth); lv = new URLVariables(); for (k in options) { lv[k] = options[k]; }; lc = new LocalConnection(); lc.client = mc; name = ["", Math.floor(new Date().getTime()), Math.floor((Math.random() * 999999))].join("_"); lc.allowDomain("*", "localhost"); lc.allowInsecureDomain("*", "localhost"); lc.connect(name); mc.name = name; mc.lc = lc; lv.lc = name; mc._id = 0; mc._queue = []; mc.rpcResult = function (_arg1:Object):void{ var _local3:Array; var _local4:Array; var _local5:Number; var _local6:Object; var _local7:Object; _arg1 = parseInt(_arg1.toString()); _local3 = mc._callbacks[_arg1]; if (typeof(_local3) == "undefined"){ return; }; delete mc._callbacks[_arg1]; _local4 = []; _local5 = 2; while (_local5 < _local3.length) { _local4.push(_local3[_local5]); _local5++; }; _local5 = 1; while (_local5 < arguments.length) { _local4.push(arguments[_local5]); _local5++; }; _local6 = _local3[1]; _local7 = _local3[0]; if (((_local7) && ((typeof(_local6) == "string")))){ _local6 = _local7[_local6]; }; if (typeof(_local6) == "function"){ _local6.apply(_local7, _local4); }; }; mc._didConnect = function (_arg1:String):void{ var _local2:Array; var _local3:Function; var _local4:Number; var _local5:Array; mc._endpoint = _arg1; _local2 = mc._queue; delete mc._queue; _local3 = mc.doSend; _local4 = 0; while (_local4 < _local2.length) { _local5 = _local2[_local4]; _local3.apply(this, _local5); _local4++; }; }; mc.doSend = function (_arg1:Array, _arg2:Object, _arg3:Object):void{ var _local5:Number; var _local6:LocalConnection; var _local7:Array; var _local8:Number; if (mc._endpoint == null){ _local7 = []; _local8 = 0; while (_local8 < arguments.length) { _local7.push(arguments[_local8]); _local8++; }; mc._queue.push(_local7); return; }; mc._id = (mc._id + 1); _local5 = mc._id; mc._callbacks[_local5] = [_arg2, ((_arg3) || (_arg2))]; _local6 = new LocalConnection(); _local6.send(mc._endpoint, "rpc", _local5, _arg1); }; mc._callbacks = {}; mc._callbacks[0] = [mc, "_didConnect"]; lv.st = getTimer(); req = new URLRequest((server + ".swf")); req.contentType = "application/x-www-form-urlencoded"; req.method = URLRequestMethod.POST; req.data = lv; loader = new Loader(); loader.load(req); mc.addChild(loader); mc._mochiad_com = loader; return (mc); } public static function showPreGameAd(_arg1:Object):void{ var DEFAULTS:Object; var clip:Object; var ad_msec:Number; var ad_timeout:Number; var fadeout_time:Number; var mc:MovieClip; var wh:Array; var w:Number; var h:Number; var chk:MovieClip; var bar:MovieClip; var bar_color:Number; var bar_background:Number; var bar_outline:Number; var backing_mc:MovieClip; var backing:Object; var inside_mc:MovieClip; var inside:Object; var outline_mc:MovieClip; var outline:Object; var complete:Boolean; var unloaded:Boolean; var f:Function; var r:MovieClip; var options = _arg1; DEFAULTS = {ad_timeout:3000, fadeout_time:250, regpt:"o", method:"showPreloaderAd", color:0xFF8A00, background:16777161, outline:13994812, ad_started:function ():void{ this.clip.stop(); }, ad_finished:function ():void{ this.clip.mochiDone(); }}; options = MochiAd._parseOptions(options, DEFAULTS); clip = options.clip; ad_msec = 11000; ad_timeout = options.ad_timeout; delete options.ad_timeout; fadeout_time = options.fadeout_time; delete options.fadeout_time; if (!MochiAd.load(options)){ options.ad_finished(); return; }; options.ad_started(); mc = clip._mochiad; mc["onUnload"] = function ():void{ var fn:Function; fn = function ():void{ options.ad_finished(); }; setTimeout(fn, 100); }; wh = MochiAd._getRes(options, clip); w = wh[0]; h = wh[1]; mc.x = (w * 0.5); mc.y = (h * 0.5); chk = createEmptyMovieClip(mc, "_mochiad_wait", 3); chk.x = (w * -0.5); chk.y = (h * -0.5); bar = createEmptyMovieClip(chk, "_mochiad_bar", 4); bar.x = 10; bar.y = (h - 20); bar_color = options.color; delete options.color; bar_background = options.background; delete options.background; bar_outline = options.outline; delete options.outline; backing_mc = createEmptyMovieClip(bar, "_outline", 1); backing = backing_mc.graphics; backing.beginFill(bar_background); backing.moveTo(0, 0); backing.lineTo((w - 20), 0); backing.lineTo((w - 20), 10); backing.lineTo(0, 10); backing.lineTo(0, 0); backing.endFill(); inside_mc = createEmptyMovieClip(bar, "_inside", 2); inside = inside_mc.graphics; inside.beginFill(bar_color); inside.moveTo(0, 0); inside.lineTo((w - 20), 0); inside.lineTo((w - 20), 10); inside.lineTo(0, 10); inside.lineTo(0, 0); inside.endFill(); inside_mc.scaleX = 0; outline_mc = createEmptyMovieClip(bar, "_outline", 3); outline = outline_mc.graphics; outline.lineStyle(0, bar_outline, 100); outline.moveTo(0, 0); outline.lineTo((w - 20), 0); outline.lineTo((w - 20), 10); outline.lineTo(0, 10); outline.lineTo(0, 0); chk.ad_msec = ad_msec; chk.ad_timeout = ad_timeout; chk.started = getTimer(); chk.showing = false; chk.last_pcnt = 0; chk.fadeout_time = fadeout_time; chk.fadeFunction = function ():void{ var _local1:Number; _local1 = (100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time))); if (_local1 > 0){ this.parent.alpha = (_local1 * 0.01); } else { MochiAd.unload(clip); delete this["onEnterFrame"]; }; }; complete = false; unloaded = false; f = function (_arg1:Event):void{ complete = true; if (unloaded){ MochiAd.unload(clip); }; }; clip.loaderInfo.addEventListener(Event.COMPLETE, f); if ((clip.root is MovieClip)){ r = (clip.root as MovieClip); if (r.framesLoaded >= r.totalFrames){ complete = true; }; }; mc.unloadAd = function ():void{ unloaded = true; if (complete){ MochiAd.unload(clip); }; }; mc.adjustProgress = function (_arg1:Number):void{ var _local2:Object; _local2 = mc._mochiad_wait; _local2.server_control = true; _local2.started = getTimer(); _local2.ad_msec = _arg1; }; chk["onEnterFrame"] = function ():void{ var _local1:Object; var _local2:Object; var _local3:Number; var _local4:Boolean; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Object; var _local10:Number; var _local11:Number; if (!this.parent.parent){ delete this["onEnterFrame"]; return; }; _local1 = this.parent.parent.root; _local2 = this.parent._mochiad_ctr; _local3 = (getTimer() - this.started); _local4 = false; _local5 = _local1.loaderInfo.bytesTotal; _local6 = _local1.loaderInfo.bytesLoaded; _local7 = ((100 * _local6) / _local5); _local8 = ((100 * _local3) / chk.ad_msec); _local9 = this._mochiad_bar._inside; _local10 = Math.min(100, Math.min(((_local7) || (0)), _local8)); _local10 = Math.max(this.last_pcnt, _local10); this.last_pcnt = _local10; _local9.scaleX = (_local10 * 0.01); if (!chk.showing){ _local11 = _local2.loaderInfo.bytesTotal; if ((((_local11 > 0)) || (("number" == "undefined")))){ chk.showing = true; chk.started = getTimer(); } else { if (_local3 > chk.ad_timeout){ _local4 = true; }; }; }; if ((((_local3 > chk.ad_msec)) || (this.parent._mochiad_ctr_failed))){ _local4 = true; }; if (((complete) && (_local4))){ if (this.server_control){ delete this.onEnterFrame; } else { this.fadeout_start = getTimer(); this.onEnterFrame = chk.fadeFunction; }; }; }; doOnEnterFrame(chk); } public static function showPreloaderAd(_arg1:Object):void{ MochiAd.showPreGameAd(_arg1); } public static function fetchHighScores(_arg1:Object, _arg2:Object, _arg3:Object=null):Boolean{ var _local4:MovieClip; _local4 = MochiAd._loadCommunicator({clip:_arg1.clip, id:_arg1.id}); if (!_local4){ return (false); }; _local4.doSend(["fetchHighScores", _arg1], _arg2, _arg3); return (true); } public static function doOnEnterFrame(_arg1:MovieClip):void{ var f:Function; var mc = _arg1; f = function (_arg1:Object):void{ if (((("onEnterFrame" in mc)) && (mc.onEnterFrame))){ mc.onEnterFrame(); } else { mc.removeEventListener(Event.ENTER_FRAME, f); }; }; mc.addEventListener(Event.ENTER_FRAME, f); } } }//package
Section 97
//MochiBot (MochiBot) package { import flash.display.*; import flash.system.*; import flash.net.*; public dynamic class MochiBot extends Sprite { public static function track(_arg1:Sprite, _arg2:String):MochiBot{ var _local3:MochiBot; var _local4:String; var _local5:URLVariables; var _local6:String; var _local7:URLRequest; var _local8:Loader; if (Security.sandboxType == "localWithFile"){ return (null); }; _local3 = new (MochiBot); _arg1.addChild(_local3); Security.allowDomain("*"); Security.allowInsecureDomain("*"); _local4 = "http://core.mochibot.com/my/core.swf"; _local5 = new URLVariables(); _local5["sb"] = Security.sandboxType; _local5["v"] = Capabilities.version; _local5["swfid"] = _arg2; _local5["mv"] = "8"; _local5["fv"] = "9"; _local6 = _local3.root.loaderInfo.loaderURL; if (_local6.indexOf("http") == 0){ _local5["url"] = _local6; } else { _local5["url"] = "local"; }; _local7 = new URLRequest(_local4); _local7.contentType = "application/x-www-form-urlencoded"; _local7.method = URLRequestMethod.POST; _local7.data = _local5; _local8 = new Loader(); _local3.addChild(_local8); _local8.load(_local7); return (_local3); } } }//package
Section 98
//Mouse (Mouse) package { import flash.events.*; import flash.display.*; import flash.utils.*; public class Mouse { public var clickCount:uint; public var doubleClickWindow:Number; public var doubleClickTimer:Timer; protected var stage:Stage; public var mouseDown:Boolean; public function Mouse(_arg1:Stage){ this.doubleClickWindow = 200; this.clickCount = 0; stage = _arg1; _arg1.addEventListener(MouseEvent.MOUSE_DOWN, mouse_Down); _arg1.addEventListener(MouseEvent.MOUSE_UP, mouse_Up); this.doubleClickTimer = new Timer(this.doubleClickWindow, 0); this.doubleClickTimer.addEventListener(TimerEvent.TIMER, doubleClickTimerUp); } public function mouse_Up(_arg1:MouseEvent):void{ } public function mouseClick(_arg1:MouseEvent):void{ OrbBlaster.objMgr.addProj(OrbBlaster.CENTER_X, OrbBlaster.CENTER_Y, _arg1.stageX, _arg1.stageY); } public function mouse_Down(_arg1:MouseEvent):void{ if (OrbBlaster.gunEnabled){ this.clickCount++; this.mouseDown = !(this.mouseDown); OrbBlaster.hero.gunTimeCount = OrbBlaster.hero.cooldown; if (this.clickCount == 2){ this.clickCount = 0; OrbBlaster.hero.fireBomb(); this.doubleClickTimer.reset(); this.doubleClickTimer.start(); } else { this.doubleClickTimer.start(); }; }; } public function isDown():Boolean{ return (this.mouseDown); } public function update():void{ var _local1:*; var _local2:*; var _local3:*; var _local4:*; var _local5:*; var _local6:*; var _local7:int; _local1 = stage.mouseX; _local2 = stage.mouseY; _local3 = (_local1 - OrbBlaster.hero.x); _local4 = (_local2 - OrbBlaster.hero.y); _local6 = Math.atan2(_local4, _local3); _local7 = ((_local6 * 180) / Math.PI); OrbBlaster.hero.rotateCannon((_local7 + 90)); } public function mouse_Double(_arg1:MouseEvent):void{ trace("double clicked!"); OrbBlaster.hero.fireBomb(); } public function doubleClickTimerUp(_arg1:TimerEvent):void{ this.clickCount = 0; OrbBlaster.hero.startFireLoop(); this.doubleClickTimer.reset(); } } }//package
Section 99
//Music_Background (Music_Background) package { import flash.media.*; public dynamic class Music_Background extends Sound { } }//package
Section 100
//ObjectManager (ObjectManager) package { import flash.events.*; import flash.display.*; import flash.geom.*; import utils.*; import flash.utils.*; import flash.media.*; public class ObjectManager extends MovieClip { protected var deadMobs:Array; protected var mobPruneList:PruneList; public var comboTimer:Timer; protected var explCount:uint;// = 0 public var mineCount:uint;// = 0 protected var projPruneList:PruneList; protected var deadProjs:Array; protected var curComboID:uint;// = 0 protected var projCnt:int;// = 0 public var curDestCount:uint;// = 0 protected var efxBitmaps:MovieClip; public var wipeTimer:Timer; protected var repelCount:uint;// = 0 protected var mobs:MovieClip; protected var world:OrbBlaster; protected var bombCount:uint;// = 0 protected var projectiles:MovieClip; protected var ships:MovieClip; protected var projCount:uint;// = 0 protected var deadEfxs:Array; public var mobCount:uint;// = 0 protected var efx:MovieClip; protected var hero:Hero; protected var explosions:MovieClip; public function ObjectManager(){ mineCount = 0; curDestCount = 0; mobCount = 0; projCnt = 0; world = OrbBlaster.world; projCount = 0; bombCount = 0; curComboID = 0; repelCount = 0; explCount = 0; super(); this.mobPruneList = new PruneList(); this.mobs = new MovieClip(); this.ships = new MovieClip(); this.projectiles = new MovieClip(); this.explosions = new MovieClip(); this.efx = new MovieClip(); this.efxBitmaps = new MovieClip(); this.hero = OrbBlaster.hero; this.addChild(this.hero); this.addChild(mobs); this.addChild(ships); this.addChild(projectiles); this.addChild(explosions); this.addChild(efx); this.addChild(efxBitmaps); this.comboTimer = new Timer(OrbBlaster.COMBO_TIMER_WINDOW, 1); this.comboTimer.addEventListener(TimerEvent.TIMER, comboTimerUp); this.wipeTimer = new Timer(OrbBlaster.COMBO_TIMER_WINDOW, 2000); this.wipeTimer.addEventListener(TimerEvent.TIMER, wipeDone); } public function addToPrune(_arg1:Mob):void{ this.mobPruneList.add(_arg1); } public function levelCompleteCheck():void{ if ((((this.mobs.numChildren == 0)) && (!(OrbBlaster.spawner.mobSpawnTimer.running)))){ OrbBlaster.levelComplete(); }; } public function updateExpl(_arg1:Explosion):void{ var _local2:Mob; var _local3:int; var _local4:int; var _local5:*; var _local6:Number; var _local7:Number; _arg1.updateRadius(); if (_arg1.type == Explosion.SHIELD_BLAST){ _local3 = this.mobs.numChildren; _local4 = this.ships.numChildren; _local5 = 0; while (_local5 < _local3) { _local2 = this.mobs.getChildAt(_local5); if (this.repelCount != _local2.repelID){ if (_arg1.radiusTest(_local2)){ if (!(_local2 is MobMissile)){ _local2.repelled(); _local2.repelID = this.repelCount; } else { _local2.damagedBy(_arg1); _local5--; _local3--; }; }; }; _local5++; }; _local5 = 0; while (_local5 < _local4) { _local2 = this.ships.getChildAt(_local5); if (this.repelCount != _local2.repelID){ if (_arg1.radiusTest(_local2)){ if (!(_local2 is MobMissile)){ _local2.repelled(); _local2.repelID = this.repelCount; } else { _local2.damagedBy(_arg1); _local5--; _local4--; }; }; }; _local5++; }; } else { if (_arg1.type == Explosion.MINE_1){ _local2 = this.mobPruneList.hitTest(_arg1, 0, 0); if (_local2 != null){ _local6 = _local2.x; _local7 = _local2.y; _local2.damagedBy(_arg1); if (_local2.hitpoints <= 0){ if (this.comboTimer.running){ OrbBlaster.incrCombo(); } else { OrbBlaster.incrCombo(); this.comboTimer.reset(); this.comboTimer.start(); }; }; }; } else { if (_arg1.type == Explosion.MINE_0){ }; }; }; } public function wipe():void{ var _local1:int; var _local2:SoundChannel; var _local3:SoundTransform; var _local4:Mob; var _local5:int; OrbBlaster.isWiping = true; this.wipeTimer.stop(); this.wipeTimer.start(); OrbBlaster.screenShakeStart(); _local1 = 0; while (_local1 < SoundManager.smaExplChannelArr.length) { _local2 = SoundManager.smaExplChannelArr[_local1]; if (_local2 != null){ _local2.stop(); }; _local1++; }; _local1 = 0; while (_local1 < SoundManager.medExplChannelArr.length) { _local2 = SoundManager.medExplChannelArr[_local1]; if (_local2 != null){ _local2.stop(); }; _local1++; }; _local1 = 0; while (_local1 < SoundManager.larExplChannelArr.length) { _local2 = SoundManager.larExplChannelArr[_local1]; if (_local2 != null){ _local2.stop(); }; _local1++; }; if (SoundManager.bgMusicChannel != null){ _local3 = SoundManager.bgMusicChannel.soundTransform; _local3.volume = 0; SoundManager.bgMusicChannel.soundTransform = _local3; }; while (this.mobs.numChildren > 0) { _local4 = this.mobs.removeChildAt(0); OrbBlaster.mobKilled(_local4); _local5 = Math.floor(OrbBlaster.random(0, 2)); if (_local5 == 0){ this.addEfxBitmap(_local4.explosionEfx, _local4.x, _local4.y); } else { this.addEfxBitmap(OrbBlaster.bitmapManager.efx_explosion2, _local4.x, _local4.y); }; this.mobPruneList.remove(_local4); }; this.levelCompleteCheck(); SoundManager.playBassTrigger(); SoundManager.playBassTrigger(); } public function updateHero():void{ var _local1:Mob; var _local2:int; if (this.hero.life >= 0){ _local1 = this.mobPruneList.hitTest(this.hero, 0, 0); if (_local1 != null){ if (!this.hero.isInvincible){ this.hero.getHit(); OrbBlaster.spawner.mobSpawnTimer.stop(); OrbBlaster.spawner.spawnCount = (OrbBlaster.spawner.spawnCount - 3); this.clear(); if (OrbBlaster.hero.type == 0){ _local2 = 0; while (_local2 < 16) { this.addEfxBitmap(OrbBlaster.bitmapManager.efx_trail0, OrbBlaster.hero.x, OrbBlaster.hero.y, 2); _local2++; }; } else { _local2 = 0; while (_local2 < 16) { this.addEfxBitmap(OrbBlaster.bitmapManager.efx_trail1, OrbBlaster.hero.x, OrbBlaster.hero.y, 2); _local2++; }; }; this.addExplosion(Explosion.SHIELD_BLAST, this.hero.x, this.hero.y, -1); } else { this.killMob(_local1); }; }; }; } public function addEfxBitmap(_arg1:Array, _arg2:Number, _arg3:Number, _arg4:int=0):void{ var _local5:int; var _local6:EfxBitmap; _local5 = OrbBlaster.random(0, 360); _local6 = new EfxBitmap(_arg1, _arg2, _arg3, _local5); switch (_arg4){ case 0: break; case 1: _local6.vx = OrbBlaster.random(-1, 1); _local6.vy = OrbBlaster.random(-1, 1); break; case 2: _local6.vx = OrbBlaster.random(-7, 7); _local6.vy = OrbBlaster.random(-7, 7); }; this.efxBitmaps.addChild(_local6); } public function killExpl(_arg1:Explosion):void{ this.explosions.removeChild(_arg1); } public function clear():void{ var _local1:Mob; var _local2:Mob; while (this.mobs.numChildren > 0) { _local1 = this.mobs.removeChildAt(0); this.mobPruneList.remove(_local1); }; while (this.ships.numChildren > 0) { _local2 = this.ships.removeChildAt(0); this.mobPruneList.remove(_local2); }; while (this.projectiles.numChildren > 0) { this.projectiles.removeChildAt(0); }; while (this.explosions.numChildren > 0) { this.explosions.removeChildAt(0); }; while (this.efx.numChildren > 0) { this.efx.removeChildAt(0); }; if (OrbBlaster.tutorialEfx != null){ if (OrbBlaster.tutorialEfx.parent != null){ OrbBlaster.tutorialEfx.parent.removeChild(OrbBlaster.tutorialEfx); }; OrbBlaster.tutorialEfx.stop(); }; this.mobPruneList = new PruneList(); this.comboTimer.stop(); } public function wipeDone(_arg1:TimerEvent):void{ var _local2:SoundTransform; OrbBlaster.isWiping = false; if (SoundManager.bgMusicChannel != null){ _local2 = SoundManager.bgMusicChannel.soundTransform; _local2.volume = 0.5; SoundManager.bgMusicChannel.soundTransform = _local2; }; } public function addPowerup(_arg1:int):void{ var _local2:Powerup; var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:int; _local3 = OrbBlaster.random(-(Math.PI), Math.PI); _local4 = OrbBlaster.random(100, 200); _local5 = ((Math.cos(_local3) * _local4) + OrbBlaster.hero.x); _local6 = ((Math.sin(_local3) * _local4) + OrbBlaster.hero.y); switch (_arg1){ case 0: _local7 = OrbBlaster.random(1, 4); this.addPowerup(-(_local7)); return; case -1: _local2 = new Powerup_Life(_local5, _local6); break; case -2: _local2 = new Powerup_RapidFire(_local5, _local6); break; case -3: _local2 = new Powerup_RapidBomb(_local5, _local6); break; case Powerup.LIFE2: if (OrbBlaster.hero.life <= 2){ _local2 = new Powerup_Life(_local5, _local6); break; } else { return; }; default: trace("ERROR: invalid powerup type"); return; }; this.mobs.addChild(_local2); this.mobPruneList.add(_local2); } public function addDestroyer():void{ var _local1:Number; var _local2:Number; var _local3:Number; var _local4:uint; switch (Math.floor(OrbBlaster.random(0, 4))){ case 0: _local1 = OrbBlaster.random(0, 550); _local2 = -75; break; case 1: _local1 = OrbBlaster.random(0, 550); _local2 = 650; break; case 2: _local1 = -75; _local2 = OrbBlaster.random(0, 550); case 3: _local1 = 650; _local2 = OrbBlaster.random(0, 550); break; default: trace("invalid starting position in addDestroyer"); _local1 = 650; _local2 = OrbBlaster.random(0, 550); }; _local3 = OrbBlaster.random(0.6, 2.1); _local4 = this.getNextDestType(); this.addMob(_local4, _local1, _local2, OrbBlaster.CENTER_X, OrbBlaster.CENTER_Y, _local3); } public function addMine():void{ var _local1:Number; var _local2:Number; var _local3:Number; var _local4:Number; var _local5:uint; _local3 = OrbBlaster.random(230, 240); _local4 = OrbBlaster.random(-3.14, 3.14); _local1 = ((Math.cos(_local4) * _local3) + OrbBlaster.CENTER_X); _local2 = ((Math.sin(_local4) * _local3) + OrbBlaster.CENTER_Y); _local5 = this.getNextMobType(); this.addMob(_local5, _local1, _local2, OrbBlaster.CENTER_X, OrbBlaster.CENTER_Y, 10); } public function test():void{ } public function delayedRemoveMob(_arg1:Mob):void{ this.deadMobs.push(_arg1); } public function addMob(_arg1:uint, _arg2:Number, _arg3:Number, _arg4:int, _arg5:Number=0):void{ var _local6:Mob; if (this.mobCount == OrbBlaster.MAX_MOBS){ return; }; switch (_arg1){ case 0: _local6 = new Mobkon0(_arg2, _arg3, _arg4); this.mineCount++; break; case 1: _local6 = new Mobkon1(_arg2, _arg3, _arg4, _arg5); this.mineCount++; break; case 2: if (OrbBlaster.curLevel < 20){ _local6 = new Mobkon2(_arg2, _arg3, _arg4); this.mineCount++; } else { _local6 = new Mobkon12(_arg2, _arg3, _arg4); this.mineCount++; }; break; case 3: _local6 = new Mobkon3(_arg2, _arg3, _arg4); this.mineCount++; break; case 4: _local6 = new Mobkon4(_arg2, _arg3, _arg4); this.mineCount++; break; case 41: _local6 = new Mobkon4_Mini(_arg2, _arg3, _arg4, _arg5); this.mineCount++; break; case 5: _local6 = new Mobkon5(_arg2, _arg3, _arg4); this.mineCount++; break; case 6: _local6 = new Mobkon6(_arg2, _arg3, _arg4); this.mineCount++; break; case 61: _local6 = new Mobkon6_Mini(_arg2, _arg3, _arg4); this.mineCount++; break; case 7: _local6 = new Mobkon7(_arg2, _arg3, _arg4); this.mineCount++; break; case 8: _local6 = new Mobkon8(_arg2, _arg3, _arg4); this.mineCount++; break; case 9: _local6 = new Mobkon9(_arg2, _arg3, _arg4); this.mineCount++; break; case 10: _local6 = new Mobkon10(_arg2, _arg3, _arg4); this.mineCount++; break; case 101: _local6 = new Mobkon10_Mini(_arg2, _arg3, _arg4); this.mineCount++; break; case 11: _local6 = new Mobkon11(_arg2, _arg3, _arg4); this.mineCount++; break; default: trace("ERROR: addMob type undefined"); }; this.mobs.addChild(_local6); this.mobCount++; OrbBlaster.mobsSpawned++; } public function getNextMobType():uint{ var _local1:uint; var _local2:Number; var _local3:uint; _local1 = OrbBlaster.mineTypeArr.length; _local2 = OrbBlaster.random(0, OrbBlaster.mineTypeProbTotal); _local3 = 0; while (_local3 < _local1) { if (_local2 <= OrbBlaster.mineTypeProbArr[_local3]){ return (OrbBlaster.mineTypeArr[_local3]); }; _local3++; }; } public function playerFire(_arg1:int):void{ var _local2:Number; var _local3:*; var _local4:*; var _local5:Point; _local2 = ((((OrbBlaster.hero.cannon.rotation - 90) + OrbBlaster.hero.rotation) * Math.PI) / 180); switch (OrbBlaster.hero.type){ case 0: fp = new Point(OrbBlaster.hero.cannon.firePoint.x, OrbBlaster.hero.cannon.firePoint.y); fp = OrbBlaster.hero.cannon.localToGlobal(fp); _local3 = new Point(OrbBlaster.hero.cannon.firePoint1.x, OrbBlaster.hero.cannon.firePoint1.y); _local3 = OrbBlaster.hero.cannon.localToGlobal(_local3); _local4 = new Point(OrbBlaster.hero.cannon.firePoint2.x, OrbBlaster.hero.cannon.firePoint2.y); _local4 = OrbBlaster.hero.cannon.localToGlobal(_local4); switch (_arg1){ case 0: this.addProj(0, fp.x, fp.y, _local2); break; case 1: this.addProj(1, _local3.x, _local3.y, _local2); this.addProj(1, _local4.x, _local4.y, _local2); break; case 2: this.addProj(2, fp.x, fp.y, _local2); this.addProj(2, _local3.x, _local3.y, (_local2 - 0.04)); this.addProj(2, _local4.x, _local4.y, (_local2 + 0.04)); break; case 3: this.addProj(3, fp.x, fp.y, _local2); this.addProj(3, _local3.x, _local3.y, (_local2 - 0.05)); this.addProj(3, _local4.x, _local4.y, (_local2 + 0.05)); this.addProj(3, _local3.x, _local3.y, (_local2 + OrbBlaster.random(-0.11, 0.11))); break; case 4: this.addProj(4, fp.x, fp.y, _local2); this.addProj(4, _local3.x, _local3.y, (_local2 - 0.07)); this.addProj(4, _local4.x, _local4.y, (_local2 + 0.07)); this.addProj(4, _local3.x, _local3.y, (_local2 - 0.12)); this.addProj(4, _local4.x, _local4.y, (_local2 + 0.12)); break; case 5: this.addProj(0, fp.x, fp.y, (_local2 + 0.03)); this.addProj(0, fp.x, fp.y, (_local2 - 0.03)); this.addProj(4, _local3.x, _local3.y, (_local2 - 0.07)); this.addProj(4, _local4.x, _local4.y, (_local2 + 0.07)); this.addProj(4, _local3.x, _local3.y, (_local2 - 0.12)); this.addProj(4, _local4.x, _local4.y, (_local2 + 0.12)); break; }; break; case 1: fp = new Point(OrbBlaster.hero.cannon.firePoint.x, OrbBlaster.hero.cannon.firePoint.y); fp = OrbBlaster.hero.cannon.localToGlobal(fp); switch (_arg1){ case 0: this.randomizeFireShot(0, (_local2 + OrbBlaster.random(-0.25, 0.25))); break; case 1: this.randomizeFireShot(0, (_local2 + OrbBlaster.random(-0.35, 0.35))); this.randomizeFireShot(0, (_local2 + OrbBlaster.random(-0.25, 0.25))); break; case 2: this.randomizeFireShot(1, (_local2 + OrbBlaster.random(-0.35, 0.35))); this.randomizeFireShot(1, (_local2 + OrbBlaster.random(-0.25, 0.25))); break; case 3: this.randomizeFireShot(2, (_local2 + OrbBlaster.random(-0.35, 0.35))); this.randomizeFireShot(2, (_local2 + OrbBlaster.random(-0.35, 0.35))); break; case 4: this.randomizeFireShot(2, (_local2 + OrbBlaster.random(-0.35, 0.35))); this.randomizeFireShot(2, (_local2 + OrbBlaster.random(-0.35, 0.35))); break; case 5: this.randomizeFireShot(3, (_local2 + OrbBlaster.random(-0.35, 0.35))); this.randomizeFireShot(3, (_local2 + OrbBlaster.random(-0.35, 0.35))); break; }; break; }; } public function killMob(_arg1:Mob):void{ if (_arg1.parent == null){ trace("ERROR: MOB PARENT NULL"); return; }; switch (_arg1.type){ case 0: this.mineCount--; _arg1.parent.removeChild(_arg1); break; case 1: this.curDestCount--; OrbBlaster.destKilled++; _arg1.parent.removeChild(_arg1); break; case 2: this.mobPruneList.remove(_arg1); _arg1.parent.removeChild(_arg1); return; case 3: this.mobPruneList.remove(_arg1); _arg1.parent.removeChild(_arg1); return; }; OrbBlaster.mobKilled(_arg1); this.mobCount--; _arg1.stop(); this.mobPruneList.remove(_arg1); this.levelCompleteCheck(); } public function addMineCluster(_arg1:uint){ var _local2:Number; var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:uint; var _local9:Number; var _local10:uint; if (_arg1 == 0){ return; }; _local4 = 6; _local5 = 6; _local6 = OrbBlaster.random(230, 240); _local7 = OrbBlaster.random(-3.14, 3.14); _local2 = ((Math.cos(_local7) * _local6) + OrbBlaster.CENTER_X); _local3 = ((Math.sin(_local7) * _local6) + OrbBlaster.CENTER_Y); _local8 = 0; while (_local8 < _arg1) { _local2 = (_local2 + OrbBlaster.random(-(_local4), _local4)); _local3 = (_local3 + OrbBlaster.random(-(_local5), _local5)); _local9 = 3; _local10 = this.getNextMobType(); this.addMob(_local10, _local2, _local3, OrbBlaster.CENTER_X, OrbBlaster.CENTER_Y, _local9); _local8++; }; } public function addBomb(_arg1:int, _arg2:int, _arg3:int, _arg4:int):void{ var _local5:Projectile; switch (OrbBlaster.hero.skinType){ case 0: _local5 = new Bomb0(_arg1, _arg2, _arg3, _arg4); break; case 1: _local5 = new Bomb1(_arg1, _arg2, _arg3, _arg4); break; case 2: _local5 = new Bomb2(_arg1, _arg2, _arg3, _arg4); break; default: _local5 = new Bomb0(_arg1, _arg2, _arg3, _arg4); }; this.projectiles.addChild(_local5); this.bombCount++; _local5.comboID = this.bombCount; } public function pauseGame():void{ var _local1:int; var _local2:int; var _local3:int; var _local4:int; _local1 = this.explosions.numChildren; i = 0; while (i < _local1) { this.explosions.getChildAt(i).stop(); i++; }; _local2 = this.mobs.numChildren; i = 0; while (i < _local2) { this.mobs.getChildAt(i).stop(); i++; }; _local3 = this.ships.numChildren; i = 0; while (i < _local3) { this.ships.getChildAt(i).stop(); i++; }; _local4 = this.efx.numChildren; i = 0; while (i < _local4) { this.efx.getChildAt(i).stop(); i++; }; } public function randomizeFireShot(_arg1:int, _arg2:Number):void{ switch (_arg1){ case 0: switch (Math.floor(OrbBlaster.random(0, 2))){ case 0: this.addProj(10, fp.x, fp.y, _arg2); break; case 1: this.addProj(11, fp.x, fp.y, _arg2); break; }; break; case 1: switch (Math.floor(OrbBlaster.random(0, 2))){ case 0: this.addProj(12, fp.x, fp.y, _arg2); break; case 1: this.addProj(13, fp.x, fp.y, _arg2); break; }; break; case 2: switch (Math.floor(OrbBlaster.random(0, 2))){ case 0: this.addProj(14, fp.x, fp.y, _arg2); break; case 1: this.addProj(15, fp.x, fp.y, _arg2); break; }; break; case 3: switch (Math.floor(OrbBlaster.random(0, 2))){ case 0: this.addProj(16, fp.x, fp.y, _arg2); break; case 1: this.addProj(17, fp.x, fp.y, _arg2); break; }; break; }; } public function updateEfxBitmap(_arg1:EfxBitmap):void{ if (!_arg1.update()){ this.deadEfxs.push(_arg1); }; } public function comboTimerUp(_arg1:TimerEvent){ if (OrbBlaster.comboCount > OrbBlaster.maxCombo){ OrbBlaster.maxCombo = OrbBlaster.comboCount; }; OrbBlaster.resetCombo(); } public function updateMob(_arg1:Mob):void{ if (!_arg1.updatePosition()){ }; _arg1.updateFace(); } public function addProjEfx(_arg1:uint, _arg2:OrbObject):void{ var _local3:Sprite; switch (_arg1){ case 0: _local3 = new Explosion2(); break; case 1: _local3 = new Explosion_Proj1(); break; case 2: _local3 = new Explosion_Proj2(); break; case 10: SoundManager.playMobExplosion(); _local3 = new Expl_Detonator(); _local3.width = 20; _local3.height = _local3.width; break; default: _local3 = new Explosion2(); break; }; _local3.x = _arg2.x; _local3.y = _arg2.y; _local3.rotation = OrbBlaster.random(0, 360); this.efx.addChild(_local3); } public function addExplosion(_arg1:uint, _arg2:int, _arg3:int, _arg4:int):void{ var _local5:Explosion; var _local6:Number; SoundManager.playPlayerDeath(); switch (_arg1){ case Explosion.MINE_0: _local5 = new Explosion0(_arg2, _arg3); _local5.width = 35; _local5.height = 35; break; case Explosion.MINE_1: _local5 = new Explosion1(_arg2, _arg3); _local5.width = 50; _local5.height = 50; break; case Explosion.MINE_2: _local5 = new Explosion1(_arg2, _arg3); _local5.width = 60; _local5.height = 60; break; case Explosion.MINE_3: _local5 = new Explosion1(_arg2, _arg3); _local5.width = 70; _local5.height = 70; break; case Explosion.MINE_4: _local5 = new Explosion1(_arg2, _arg3); _local5.width = 80; _local5.height = 80; break; case Explosion.MINE_5: _local5 = new Explosion1(_arg2, _arg3); _local5.width = 100; _local5.height = 100; break; case Explosion.MINE_6: _local5 = new Explosion1(_arg2, _arg3); _local5.width = 135; _local5.height = 135; break; case Explosion.SHIELD_BLAST: _local5 = new ShieldBlast(_arg2, _arg3); if (OrbBlaster.hero.type == 0){ _local5.blast1.visible = false; } else { _local5.blast0.visible = false; }; break; case 99: _local5 = new TestExplosion(); default: _local5 = new Explosion1(_arg2, _arg3); _local5.width = 30; _local5.height = 30; }; _local6 = OrbBlaster.random(-0.05, 0.05); _local5.scaleX = (_local5.scaleX + _local6); _local5.scaleY = (_local5.scaleY + _local6); this.explosions.addChild(_local5); _local5.rotation = OrbBlaster.random(0, 360); _local5.comboID = _arg4; } public function getNextDestType():uint{ var _local1:uint; var _local2:Number; var _local3:uint; _local1 = OrbBlaster.destTypeArr.length; _local2 = OrbBlaster.random(0, OrbBlaster.destTypeProbTotal); _local3 = 0; while (_local3 < _local1) { if (_local2 <= OrbBlaster.destTypeProbArr[_local3]){ return (OrbBlaster.destTypeArr[_local3]); }; _local3++; }; } public function addMobMissile(_arg1:uint, _arg2:Number, _arg3:Number, _arg4:int, _arg5:int, _arg6:Number):void{ var _local7:Mob; switch (_arg1){ case 0: SoundManager.playMobShot0(); _local7 = new MobMissile(_arg2, _arg3, _arg4, _arg5); _local7.setSpeed(_arg6); break; case 1: SoundManager.playMobShot1(); _local7 = new MobMissile1(_arg2, _arg3, _arg4, _arg5); _local7.rotation = _arg6; break; }; this.ships.addChild(_local7); this.mobPruneList.add(_local7); } public function cleanRemoveMob(_arg1:Mob):void{ _arg1.stop(); this.mobPruneList.remove(_arg1); _arg1.parent.removeChild(_arg1); this.mobCount--; OrbBlaster.mobKilled(_arg1); this.levelCompleteCheck(); } public function addEfx(_arg1:uint, _arg2:OrbObject):void{ var _local3:MovieClip; switch (_arg1){ case 0: _local3 = new Explosion2(); break; case 1: _local3 = new Explosion2(); _local3.width = _arg2.width; _local3.height = _arg2.width; break; case 2: _local3 = new Explosion0(); _local3.width = 20; _local3.height = _local3.width; break; case 3: SoundManager.playMobExplosion(); _local3 = new Expl_Detonator(); _local3.width = 20; _local3.height = _local3.width; break; case 4: _local3 = new Explosion3(); _local3.width = (_arg2.radiusX * 1.1); _local3.height = (_arg2.radiusX * 1.1); break; case 5: _local3 = new Explosion5(); _local3.x = _arg2.x; _local3.y = _arg2.y; this.efx.addChild(_local3); return; case 6: _local3 = new LevelNumber(); _local3.x = OrbBlaster.CENTER_X; _local3.y = 125; _local3.levelNumber.text = (OrbBlaster.curLevel - (OrbBlaster.gameMode * 100)); this.efx.addChild(_local3); return; case 7: _local3 = new HeroDeath(); _local3.scaleX = 2; _local3.scaleY = 2; break; case 8: _local3 = new wipeExplosion(); _local3.width = _arg2.width; _local3.height = _arg2.width; break; case 9: _local3 = new Life_Explosion(); _local3.x = _arg2.x; _local3.y = _arg2.y; this.efx.addChild(_local3); return; default: _local3 = new Explosion2(); }; _local3.x = _arg2.x; _local3.y = _arg2.y; _local3.rotation = OrbBlaster.random(0, 360); this.efx.addChild(_local3); } public function addProj(_arg1:int, _arg2:int, _arg3:int, _arg4:Number):void{ var _local5:Projectile; switch (_arg1){ case 0: _local5 = new Projectile0(_arg2, _arg3, _arg4); break; case 1: _local5 = new Projectile1(_arg2, _arg3, _arg4); break; case 2: _local5 = new Projectile2(_arg2, _arg3, _arg4); break; case 3: _local5 = new Projectile3(_arg2, _arg3, _arg4); break; case 4: _local5 = new Projectile4(_arg2, _arg3, _arg4); break; case 10: _local5 = new Projectile10(_arg2, _arg3, _arg4); break; case 11: _local5 = new Projectile11(_arg2, _arg3, _arg4); break; case 12: _local5 = new Projectile12(_arg2, _arg3, _arg4); break; case 13: _local5 = new Projectile13(_arg2, _arg3, _arg4); break; case 14: _local5 = new Projectile14(_arg2, _arg3, _arg4); break; case 15: _local5 = new Projectile15(_arg2, _arg3, _arg4); break; case 16: _local5 = new Projectile16(_arg2, _arg3, _arg4); break; case 17: _local5 = new Projectile17(_arg2, _arg3, _arg4); break; }; this.projectiles.addChild(_local5); } public function updatePositions():void{ var _local1:int; var _local2:*; var _local3:int; var _local4:int; var _local5:int; var _local6:uint; var _local7:int; var _local8:int; var _local9:int; var _local10:OrbObject; var _local11:Mob; var _local12:EfxBitmap; this.deadProjs = new Array(); this.deadMobs = new Array(); this.deadEfxs = new Array(); _local1 = this.mobs.numChildren; _local2 = 0; while (_local2 < _local1) { this.updateMob(this.mobs.getChildAt(_local2)); _local2++; }; _local3 = this.ships.numChildren; _local2 = 0; while (_local2 < _local3) { this.updateMob(this.ships.getChildAt(_local2)); _local2++; }; this.mobPruneList.sort(); this.updateHero(); _local4 = this.projectiles.numChildren; _local2 = 0; while (_local2 < _local4) { this.updateProj(this.projectiles.getChildAt(_local2)); _local2++; }; _local5 = this.explosions.numChildren; _local2 = 0; while (_local2 < _local5) { this.updateExpl(this.explosions.getChildAt(_local2)); _local2++; }; _local6 = this.deadProjs.length; _local2 = 0; while (_local2 < _local6) { _local10 = this.deadProjs.pop(); if (_local10.parent != null){ if (_local10.type != 2){ _local10.parent.removeChild(_local10); } else { this.killMob(_local10); }; }; _local2++; }; _local7 = this.deadMobs.length; _local2 = 0; while (_local2 < _local7) { _local11 = this.deadMobs.pop(); if (_local11.parent != null){ this.cleanRemoveMob(_local11); }; _local2++; }; _local8 = this.efxBitmaps.numChildren; _local2 = 0; while (_local2 < _local8) { this.updateEfxBitmap(this.efxBitmaps.getChildAt(_local2)); _local2++; }; _local9 = this.deadEfxs.length; _local2 = 0; while (_local2 < _local9) { _local12 = this.deadEfxs.pop(); this.efxBitmaps.removeChild(_local12); _local2++; }; } public function addLaunchEfx(_arg1:uint, _arg2:OrbObject):void{ var _local3:Sprite; switch (_arg1){ case 0: _local3 = new LaunchEfx0(); break; case 1: _local3 = new LaunchEfx1(); break; case 2: _local3 = new LaunchEfx2(); break; default: _local3 = new LaunchEfx0(); break; }; _local3.x = _arg2.x; _local3.y = _arg2.y; _local3.rotation = OrbBlaster.hero.cannon.rotation; this.efx.addChild(_local3); } public function killEfx(_arg1:MovieClip):void{ _arg1.stop(); this.efx.removeChild(_arg1); } public function updateProj(_arg1:Projectile):void{ var _local2:Mob; var _local3:Number; var _local4:Number; _local2 = _arg1.collidedWith; if (((!((_local2 == null))) && ((_local2.hitpoints > 0)))){ if (_arg1.type == 0){ if ((((_local2.type == 1)) || ((_local2.type == 2)))){ _local2.damagedBy(_arg1); _local2.gotHitBy(_arg1); } else { if (_local2.type == 0){ _arg1.transferMomentum(_local2); _local2.gotHitBy(_arg1); } else { if (_local2.type == 3){ if ((_local2 is Powerup_Life)){ this.addEfx(9, _local2); } else { this.addEfx(5, _local2); }; SoundManager.playPowerup(); _local2.activatePowerup(); this.killMob(_local2); }; }; }; _arg1.gotHit(); } else { if (_arg1.type == 1){ if (_local2.type != 3){ _local3 = _local2.x; _local4 = _local2.y; _local2.damagedBy(_arg1); } else { SoundManager.playPowerup(); _local2.activatePowerup(); this.killMob(_local2); this.addEfx(5, _local2); }; _arg1.gotHit(); }; }; } else { _local2 = this.mobPruneList.hitTest(_arg1, _arg1.vx, _arg1.vy); _arg1.updateBitmap(); if (_local2 != null){ _arg1.x = (_arg1.x + (_arg1.vx / 2)); _arg1.y = (_arg1.y + (_arg1.vy / 2)); _arg1.collidedWith = _local2; } else { if (!_arg1.updatePosition()){ this.killProj(_arg1); }; }; }; } public function resumeGame():void{ var _local1:int; var _local2:Mob; var _local3:int; var _local4:int; var _local5:int; _local1 = this.explosions.numChildren; i = 0; while (i < _local1) { this.explosions.getChildAt(i).play(); i++; }; _local3 = this.ships.numChildren; i = 0; while (i < _local3) { _local2 = this.ships.getChildAt(i); if ((((_local2 is MobMissile1)) && ((_local2.currentFrame == 1)))){ } else { _local2.play(); }; i++; }; _local4 = this.mobs.numChildren; i = 0; while (i < _local4) { _local2 = this.mobs.getChildAt(i); if ((_local2 is Powerup)){ _local2.play(); } else { if ((((_local2 is Mob2)) && (!((_local2.currentFrame == 1))))){ _local2.play(); }; }; i++; }; _local5 = this.efx.numChildren; i = 0; while (i < _local5) { this.efx.getChildAt(i).play(); i++; }; } public function killProj(_arg1:OrbObject):void{ this.deadProjs.push(_arg1); } public function getMobs():MovieClip{ return (this.mobs); } public function playerFireBomb():void{ var _local1:Point; _local1 = new Point(OrbBlaster.hero.cannon.firePoint.x, OrbBlaster.hero.cannon.firePoint.y); _local1 = OrbBlaster.hero.cannon.localToGlobal(_local1); this.addBomb(_local1.x, _local1.y, stage.mouseX, stage.mouseY); this.addLaunchEfx(OrbBlaster.hero.skinType, OrbBlaster.hero); } } }//package
Section 101
//OrbBlaster (OrbBlaster) package { import flash.events.*; import flash.display.*; import com.kongregate.as3.client.*; import flash.utils.*; import com.gsolo.encryption.*; import flash.text.*; import flash.net.*; import flash.ui.*; public dynamic class OrbBlaster extends MovieClip { public var lastFrameTime:Number;// = 0 private var fpsArrLen:uint;// = 11 public var bg:Sprite; private var fps_count:uint;// = 1 private var fps_t0:uint;// = 0 private var fps_t1:uint;// = 1000 public var rotatingOrb:MovieClip; private var fps_display:MovieClip; public var test:int;// = 15 public var percentLoaded:TextField; private var fpsArr:Array; static var hero:Hero; static var numStartedPlay:int = 0; static var completedFeatsOnLevel:Array; static var bombBar:BombBar; static var shakeCounter:int = 0; static var comboCount:int = 1; static var bestScoreBar:MovieClip; static var scoreBar:MovieClip; static var pausedTimerArr:Array; static var GRAVITY:Number = 0; static var destTypeProbArr:Array; static var totalTime:int = 0; static var comboFadeTimer:Timer; static var isPauseable:Boolean = false; static var scoreSubmitScreen:MovieClip; static var Y_MAX:int = 415; static var mobsSpawned:uint = 0; static var PROJ_X_MIN:int = -1; static var musicStatus:Boolean = true; static var maxCombo:uint = 1; static var comboCounter:ComboText; static var isContinued:Boolean = false; static var movSplash:MovieClip; static var destroyersSpawned:uint = 0; static var repelSpeed:Number = 3.5; static var mouse:Mouse; static var mobGravSpeed:Number = 0; static var lastLevel:uint = 0x0100; static var gameMode:uint = 0; static var framesPassed:uint = 0; static var tutorialCounter:uint = 0; static var mainMenu:MovieClip; static var controlsScreen:MovieClip; static var heroSelected:int = 0; static var saveData:SharedObject; static var pauseButton:SimpleButton; static var X_MAX:int = 640; static var featsCompleteScreen:MovieClip; static var mineTypeArr:Array; static var prevPoints:uint = 0; static var PROJ_Y_MAX:int = 426; static var CENTER_X:int = 325; static var CENTER_Y:int = 225; static var isWiping:Boolean = false; static var featBars:Sprite; static var GUI:Sprite; static var curLevel:uint = 0; static var HUDItems:Sprite; static var background:Sprite; static var quitConfirmScreen:MovieClip; static var totalPoints:int = 0; static var mainLoopTimer:Timer; static var isDebug:Boolean = false; static var Y_MIN:int = 10; static var featsScreen:MovieClip; static var mineTypeProbTotal:uint; static var destTypeProbTotal:uint; static var endLevelTimer:Timer; static var spawner:Spawner; static var repelCount:uint = 0; static var nextLevelTimer:Timer; static var lifeBar:LifeBar; static var COMBO_TIMER_WINDOW:uint = 1500; static var feats:Array; static var PROJ_X_MAX:int = 651; static var bitmapManager:BitmapManager; static var killsGoal:uint = 0; static var MAX_MOBS:uint = 0x0200; static var world:OrbBlaster; static var objMgr:ObjectManager; static var creditsScreen:MovieClip; static var upgradeScreen:MovieClip; static var tutorialEfx:MovieClip; static var destKilled:uint = 0; static var destTypeArr:Array; static var levelStatsScreen:MovieClip; static var X_MIN:int = 10; static var kongregate:KongregateAPI; static var mineTypeProbArr:Array; static var heroSelectionScreen:MovieClip; static var gunEnabled:Boolean = false; static var continuePenalty:Number = 0.8; static var shakeTimer:Timer; static var keyboard:Keyboard; static var bottomBar:Shape; static var bonusPoints:uint = 0; static var PROJ_Y_MIN:int = -1; static var statsScreen:MovieClip; static var soundStatus:Boolean = true; static var pause:Boolean = true; static var continueScreen:MovieClip; public function OrbBlaster():void{ var _local1:ContextMenu; lastFrameTime = 0; fps_t0 = 0; fps_t1 = 1000; fps_count = 1; fpsArrLen = 11; test = 15; super(); addFrameScript(0, frame1, 3, frame4, 4, frame5); this.stop(); this.bg.stop(); OrbBlaster.world = this; MochiBot.track(this, "811d02fc"); kongregate = new KongregateAPI(); this.addChild(kongregate); _local1 = new ContextMenu(); _local1.builtInItems.zoom = false; _local1.builtInItems.print = false; _local1.builtInItems.save = false; _local1.builtInItems.loop = false; _local1.builtInItems.rewind = false; _local1.builtInItems.forwardAndBack = false; _local1.builtInItems.play = false; this.contextMenu = _local1; MochiAd.showPreGameAd({clip:root, id:"81638da96c3b8b44", res:"650x450"}); } public function checkDomain():Boolean{ var _local1:String; var _local2:String; _local1 = this.loaderInfo.url; _local2 = _local1.substring(0, 4); trace(_local2); trace(_local1); if (((((((((((((((((((!((_local2 == "file"))) && ((_local1.indexOf("kongregate.com") == -1)))) && ((_local1.indexOf("ungrounded.net") == -1)))) && ((_local1.indexOf("ngfiles.com") == -1)))) && ((_local1.indexOf("newgrounds.com") == -1)))) && ((_local1.indexOf("s3.amazonaws.com/gog.games.private/ZunderFury.swf") == -1)))) && ((_local1.indexOf("s3.amazonaws.com/orbblaster/OrbBlaster.swf") == -1)))) && ((_local1.indexOf("www.flashgamelicense.com") == -1)))) && ((_local1.indexOf("http://gog.games.s3.amazonaws.com/ZunderFury.swf") == -1)))) && ((_local1.indexOf("doogog.com") == -1)))){ return (false); }; return (true); } public function debugButtonClicked(_arg1:MouseEvent):void{ trace("debug clicked"); OrbBlaster.clearSave(); } public function jumpButtonClicked(_arg1:MouseEvent):void{ var _local2:uint; _local2 = uint(OrbBlaster.mainMenu.jumpNumber.text); OrbBlaster.hideMainMenu(); OrbBlaster.hero.setLife(3); OrbBlaster.hero.setBombs(2); OrbBlaster.hero.visible = true; OrbBlaster.gameMode = 0; OrbBlaster.scoreBar.visible = true; OrbBlaster.hero.setType(1); OrbBlaster.hero.setGunLevel(0); OrbBlaster.framesPassed = 0; OrbBlaster.newBackground(0); OrbBlaster.resetCurStreak(); PlayerStats.resetUpgrades(); SoundManager.startBackgroundMusic(); OrbBlaster.startLevel(_local2); } public function yesButtonClicked(_arg1:MouseEvent):void{ OrbBlaster.saveProgress(); OrbBlaster.hidePauseMenu(); OrbBlaster.quitToMainMenu(); } public function creditsButtonClicked(_arg1:MouseEvent):void{ var _local2:URLRequest; _local2 = new URLRequest("http://www.doogog.com"); navigateToURL(_local2, "_blank"); } public function statsBackButtonClicked(_arg1:MouseEvent):void{ OrbBlaster.statsScreen.visible = false; } public function paulButtonClicked(_arg1:MouseEvent):void{ var _local2:URLRequest; _local2 = new URLRequest("http://macroform.blogspot.com"); navigateToURL(_local2, "_blank"); } public function continueButtonClicked(_arg1:MouseEvent):void{ } public function okayFeatsCompleteClicked(_arg1:MouseEvent):void{ var _local2:int; var _local3:int; OrbBlaster.featsCompleteScreen.visible = false; _local2 = OrbBlaster.featsCompleteScreen.featBars.numChildren; _local3 = 0; while (_local3 < _local2) { OrbBlaster.featsCompleteScreen.featBars.removeChild; _local3++; }; OrbBlaster.showUpgradeScreen(); } public function statsButtonClicked(_arg1:MouseEvent):void{ OrbBlaster.statsScreen.mobsKilled.text = OrbBlaster.commaFormat(PlayerStats.mobsKilledTotal); OrbBlaster.statsScreen.totalPoints.text = OrbBlaster.commaFormat(PlayerStats.pointsTotal); OrbBlaster.statsScreen.totalCredits.text = OrbBlaster.commaFormat(PlayerStats.creditsTotal); OrbBlaster.statsScreen.bestScore.text = OrbBlaster.commaFormat(PlayerStats.bestScore); OrbBlaster.statsScreen.highestWave.text = OrbBlaster.commaFormat(PlayerStats.highestWave); OrbBlaster.statsScreen.feats.text = OrbBlaster.commaFormat(PlayerStats.feats); OrbBlaster.statsScreen.visible = true; } public function mainLoopReal(_arg1:Event):void{ if (OrbBlaster.pause == false){ OrbBlaster.framesPassed++; OrbBlaster.mouse.update(); OrbBlaster.objMgr.updatePositions(); OrbBlaster.keyboard.updatePositions(); OrbBlaster.hero.update(); OrbBlaster.spawner.update(); OrbBlaster.updateScoreBar(); }; } public function splashEnterFrame(_arg1:Event){ if (OrbBlaster.movSplash.currentFrame == OrbBlaster.movSplash.totalFrames){ OrbBlaster.movSplash.removeEventListener(Event.ENTER_FRAME, splashEnterFrame); this.splashDone(); }; } public function pauseButtonClicked(_arg1:MouseEvent):void{ OrbBlaster.pauseGame(); } public function comboTextAppear():void{ trace("appeared"); OrbBlaster.comboCounter.visible = true; } public function submitButtonClicked(_arg1:MouseEvent):void{ var _local2:String; var _local3:String; var _local4:URLRequest; var _local5:URLVariables; var _local6:int; if (OrbBlaster.scoreSubmitScreen.playerName.text != ""){ OrbBlaster.scoreSubmitScreen.playerName.selectable = false; OrbBlaster.scoreSubmitScreen.submitButton.visible = false; _local2 = "http://doogog.com/hs/zf_submit.php"; _local3 = ""; _local4 = new URLRequest(_local2); _local5 = new URLVariables(); _local4.data = _local5; _local4.method = "POST"; _local5.filename = "scores/normalScores.sco"; _local6 = PlayerStats.getPoints(); trace(((("points: " + _local6) + " | ") + (PlayerStats.mobsKilledThisRun * 800))); if (_local6 > (PlayerStats.mobsKilledThisRun * 800)){ return; }; _local5.winscore = _local6; _local5.winname = OrbBlaster.scoreSubmitScreen.playerName.text; if (ProfanityFilter.profanityCheck(_local5.winname)){ _local5.winname = "Evil Bob"; }; if (OrbBlaster.hero.type == 0){ _local5.ship = "Zunder"; } else { _local5.ship = "Fury"; }; _local5.wave = OrbBlaster.curLevel; _local5.mobskilled = PlayerStats.mobsKilledThisRun; _local5.action = "INSERT"; _local5.viewtype = "HTML"; _local5.password = "DFHSGIE52MNDF"; _local3 = ((((((((_local5.winname + "_") + _local5.winscore) + "_") + _local5.ship) + "_") + _local5.wave) + "_") + _local5.mobskilled); _local5.insert = MD5.hex_hmac_md5("ZFIGK08K", _local3); trace(((("sendToURL: " + _local4.url) + "?") + _local4.data)); trace(((("encrypted: " + _local3) + " -> ") + _local5.insert)); sendToURL(_local4); }; } public function noButtonClicked(_arg1:MouseEvent):void{ OrbBlaster.showPauseMenu(); } public function countFPS(){ var _local1:Number; var _local2:Number; var _local3:uint; var _local4:uint; if (this.fps_count == 1){ this.fps_t1 = (getTimer() - fps_t0); _local1 = (1000 / fps_t1); _local2 = 0; this.fpsArr.shift(); this.fpsArr.push(_local1); _local3 = 0; while (_local3 < this.fpsArrLen) { _local2 = (_local2 + this.fpsArr[_local3]); _local3++; }; _local2 = Math.floor((_local2 / fpsArrLen)); this.fps_display.fpsText.text = _local2; this.fps_t0 = getTimer(); _local4 = 0; } else { _local4++; this.fps_t0 = getTimer(); }; } public function setupMainMenu():void{ var _local1:Sprite; var _local2:Sprite; var _local3:Sprite; var _local4:int; var _local5:int; var _local6:int; var _local7:FeatBar; OrbBlaster.mainMenu = new MainMenu(); OrbBlaster.GUI.addChild(OrbBlaster.mainMenu); OrbBlaster.mainMenu.x = OrbBlaster.CENTER_X; OrbBlaster.mainMenu.y = OrbBlaster.CENTER_Y; OrbBlaster.mainMenu.normalButton.tabEnabled = false; OrbBlaster.mainMenu.normalButton.addEventListener(MouseEvent.CLICK, normalButtonClicked); OrbBlaster.mainMenu.featsButton.tabEnabled = false; OrbBlaster.mainMenu.featsButton.addEventListener(MouseEvent.CLICK, featsButtonClicked); OrbBlaster.mainMenu.statsButton.tabEnabled = false; OrbBlaster.mainMenu.statsButton.addEventListener(MouseEvent.CLICK, statsButtonClicked); OrbBlaster.mainMenu.highScoresButton.tabEnabled = false; OrbBlaster.mainMenu.highScoresButton.addEventListener(MouseEvent.CLICK, highScoresButtonClicked); OrbBlaster.mainMenu.creditsButton.tabEnabled = false; OrbBlaster.mainMenu.creditsButton.addEventListener(MouseEvent.CLICK, creditsButtonClicked); OrbBlaster.mainMenu.creditsButton.visible = true; OrbBlaster.mainMenu.debugButton.tabEnabled = false; OrbBlaster.mainMenu.debugButton.addEventListener(MouseEvent.CLICK, debugButtonClicked); OrbBlaster.mainMenu.jumpButton.tabEnabled = false; OrbBlaster.mainMenu.jumpButton.addEventListener(MouseEvent.CLICK, jumpButtonClicked); OrbBlaster.mainMenu.debugButton.visible = false; OrbBlaster.mainMenu.jumpButton.visible = false; OrbBlaster.mainMenu.jumpNumber.visible = false; OrbBlaster.creditsScreen = new CreditsScreen(); OrbBlaster.GUI.addChild(OrbBlaster.creditsScreen); OrbBlaster.creditsScreen.x = OrbBlaster.CENTER_X; OrbBlaster.creditsScreen.y = (OrbBlaster.CENTER_Y + 50); OrbBlaster.creditsScreen.visible = false; OrbBlaster.creditsScreen.creditsBackButton.tabEnabled = false; OrbBlaster.creditsScreen.creditsBackButton.addEventListener(MouseEvent.CLICK, creditsBackButtonClicked); OrbBlaster.creditsScreen.doogogButton.tabEnabled = false; OrbBlaster.creditsScreen.doogogButton.addEventListener(MouseEvent.CLICK, doogogButtonClicked); OrbBlaster.creditsScreen.paulButton.tabEnabled = false; OrbBlaster.creditsScreen.paulButton.addEventListener(MouseEvent.CLICK, paulButtonClicked); OrbBlaster.statsScreen = new StatsScreen(); OrbBlaster.GUI.addChild(OrbBlaster.statsScreen); OrbBlaster.statsScreen.x = OrbBlaster.CENTER_X; OrbBlaster.statsScreen.y = OrbBlaster.CENTER_Y; OrbBlaster.statsScreen.statsBackButton.tabEnabled = false; OrbBlaster.statsScreen.statsBackButton.addEventListener(MouseEvent.CLICK, statsBackButtonClicked); OrbBlaster.statsScreen.visible = false; OrbBlaster.featsScreen = new FeatsScreen(); OrbBlaster.GUI.addChild(OrbBlaster.featsScreen); OrbBlaster.featsScreen.x = OrbBlaster.CENTER_X; OrbBlaster.featsScreen.y = OrbBlaster.CENTER_Y; OrbBlaster.featsScreen.featsBackButton.tabEnabled = false; OrbBlaster.featsScreen.featsBackButton.addEventListener(MouseEvent.CLICK, featsBackButtonClicked); OrbBlaster.featsScreen.visible = false; OrbBlaster.featBars = new Sprite(); OrbBlaster.featsScreen.addChild(OrbBlaster.featBars); _local1 = new Sprite(); _local2 = new Sprite(); _local3 = new Sprite(); OrbBlaster.featBars.addChild(_local2); OrbBlaster.featBars.addChild(_local1); OrbBlaster.featBars.addChild(_local3); _local4 = 0; while (_local4 < 3) { _local5 = -90; _local6 = 0; while (_local6 < OrbBlaster.feats[_local4].length) { _local7 = new FeatBar(); _local7.title.text = OrbBlaster.feats[_local4][_local6].title; _local7.description.text = OrbBlaster.feats[_local4][_local6].description; _local7.x = 0; _local7.y = _local5; _local5 = (_local5 + 40); OrbBlaster.featBars.getChildAt(_local4).addChild(_local7); _local6++; }; _local4++; }; OrbBlaster.featsScreen.normalButton.tabEnabled = false; OrbBlaster.featsScreen.normalButton.addEventListener(MouseEvent.CLICK, normalFeatsClicked); OrbBlaster.featsScreen.heroicButton.tabEnabled = false; OrbBlaster.featsScreen.heroicButton.addEventListener(MouseEvent.CLICK, heroicFeatsClicked); OrbBlaster.featsScreen.legendButton.tabEnabled = false; OrbBlaster.featsScreen.legendButton.addEventListener(MouseEvent.CLICK, legendFeatsClicked); } public function fpsCountLoop(_arg1:Event):void{ countFPS(); } public function resumeButtonClicked(_arg1:MouseEvent):void{ OrbBlaster.pauseGame(); } public function mochiDone():void{ trace("mochiDone"); this.gotoAndStop(4); } public function musicButtonClicked(_arg1:MouseEvent):void{ OrbBlaster.musicStatus = !(OrbBlaster.musicStatus); if (!OrbBlaster.musicStatus){ SoundManager.stopBackgroundMusic(); }; OrbBlaster.updateAudioButtons(); } public function creditsBackButtonClicked(_arg1:MouseEvent):void{ OrbBlaster.creditsScreen.visible = false; OrbBlaster.mainMenu.creditsButton.visible = true; } public function setup():void{ } public function splashDone():void{ trace("splash done"); OrbBlaster.background = this.bg; this.gotoAndStop(5); SoundManager.loadSounds(); OrbBlaster.bitmapManager = new BitmapManager(); OrbBlaster.bitmapManager.loadBitmaps(); MobPackage.initPackages(); Feat.initFeats(); ProfanityFilter.init(); this.begin(); } function frame1(){ stop(); } public function quitButtonClicked(_arg1:MouseEvent):void{ OrbBlaster.quitConfirmScreen.visible = true; } public function menuButtonClicked(_arg1:MouseEvent):void{ SoundManager.stopBackgroundMusic(); OrbBlaster.scoreSubmitScreen.visible = false; OrbBlaster.quitToMainMenu(); } public function doogogButtonClicked(_arg1:MouseEvent):void{ var _local2:URLRequest; _local2 = new URLRequest("http://www.doogog.com"); navigateToURL(_local2, "_blank"); } function frame5(){ this.graphicsPackage.visible = false; this.soundsPackage.visible = false; this.stop(); } public function nextButtonClicked(_arg1:MouseEvent):void{ OrbBlaster.levelStatsScreen.visible = false; OrbBlaster.upgradeScreen.visible = false; if (OrbBlaster.curLevel == OrbBlaster.lastLevel){ OrbBlaster.gameEnd(); } else { OrbBlaster.startNextLevel(); }; } public function begin():void{ var _local1:Hero; OrbBlaster.loadProgress(); OrbBlaster.newBackground(0); _local1 = new Hero(); hero = _local1; hero.x = OrbBlaster.CENTER_X; hero.y = OrbBlaster.CENTER_Y; keyboard = new Keyboard(); OrbBlaster.keyboard.initialize(stage); mouse = new Mouse(stage); objMgr = new ObjectManager(); this.addChild(objMgr); objMgr.test(); this.setupGUI(); OrbBlaster.spawner = new Spawner(); OrbBlaster.shakeTimer = new Timer(30, 0); OrbBlaster.shakeTimer.addEventListener(TimerEvent.TIMER, screenShake); endLevelTimer = new Timer(1500, 1); endLevelTimer.addEventListener(TimerEvent.TIMER, endLevel); comboFadeTimer = new Timer(1500, 0); comboFadeTimer.addEventListener(TimerEvent.TIMER, comboTextFadeOut); OrbBlaster.pausedTimerArr = new Array(); this.addEventListener(Event.ENTER_FRAME, mainLoop); this.setupMainMenu(); } public function featsButtonClicked(_arg1:MouseEvent):void{ OrbBlaster.showFeatsScreen(); } public function continueNoButtonClicked(_arg1:MouseEvent):void{ OrbBlaster.scoreSubmitScreen.finalScore.text = OrbBlaster.totalPoints; OrbBlaster.scoreSubmitScreen.tryAgainText.visible = true; OrbBlaster.scoreSubmitScreen.finalScore.visible = true; OrbBlaster.scoreSubmitScreen.finalScoreLabel.visible = true; OrbBlaster.continueScreen.visible = false; OrbBlaster.showScoreSubmitScreen(); } public function continueYesButtonClicked(_arg1:MouseEvent):void{ OrbBlaster.objMgr.clear(); OrbBlaster.pause = true; OrbBlaster.resetCombo(); OrbBlaster.totalPoints = (OrbBlaster.prevPoints * OrbBlaster.continuePenalty); OrbBlaster.framesPassed = 0; OrbBlaster.continueScreen.visible = false; if (OrbBlaster.gameMode == 0){ OrbBlaster.hideMainMenu(); OrbBlaster.hero.setLife(3); OrbBlaster.hero.visible = true; OrbBlaster.gameMode = 0; OrbBlaster.scoreBar.visible = true; OrbBlaster.hero.newSkin(); OrbBlaster.newBackground(0); } else { OrbBlaster.hideMainMenu(); OrbBlaster.hero.setLife(3); OrbBlaster.hero.visible = true; OrbBlaster.gameMode = 1; OrbBlaster.scoreBar.visible = false; OrbBlaster.framesPassed = 0; OrbBlaster.hero.newSkin(); OrbBlaster.newBackground(0); }; OrbBlaster.startLevel(OrbBlaster.curLevel); } public function setupGUI():void{ var i:uint; OrbBlaster.GUI = new Sprite(); this.addChild(GUI); OrbBlaster.HUDItems = new Sprite(); OrbBlaster.GUI.addChild(HUDItems); this.fps_display = new FpsCounter(); this.fps_display.x = 620; this.fps_display.y = 15; this.fps_display.fpsText.text = 0; this.fpsArr = new Array(); i = 0; while (i < fpsArrLen) { this.fpsArr.push(30); i = (i + 1); }; OrbBlaster.bottomBar = new Shape(); OrbBlaster.bottomBar.cacheAsBitmap = true; OrbBlaster.bottomBar.graphics.beginFill(0x333333, 1); OrbBlaster.bottomBar.graphics.drawRect(0, 425, 650, 25); OrbBlaster.HUDItems.addChild(OrbBlaster.bottomBar); OrbBlaster.comboCounter = new ComboText(); OrbBlaster.HUDItems.addChild(OrbBlaster.comboCounter); OrbBlaster.comboCounter.x = 430; OrbBlaster.comboCounter.y = 75; OrbBlaster.comboCounter.setText(""); OrbBlaster.lifeBar = new LifeBar(); OrbBlaster.HUDItems.addChild(OrbBlaster.lifeBar); OrbBlaster.lifeBar.x = 300; OrbBlaster.lifeBar.y = 436; OrbBlaster.hero.setLife(OrbBlaster.hero.life); OrbBlaster.bombBar = new BombBar(); OrbBlaster.HUDItems.addChild(OrbBlaster.bombBar); OrbBlaster.bombBar.x = 360; OrbBlaster.bombBar.y = 436; OrbBlaster.hero.setBombs(OrbBlaster.hero.numBombs); OrbBlaster.scoreBar = new ScoreBar(); OrbBlaster.scoreBar.scoreText.text = 0; OrbBlaster.HUDItems.addChild(OrbBlaster.scoreBar); OrbBlaster.scoreBar.x = 45; OrbBlaster.scoreBar.y = 435; OrbBlaster.bestScoreBar = new BestScoreBar(); OrbBlaster.bestScoreBar.bestScore.text = OrbBlaster.commaFormat(PlayerStats.bestScore); OrbBlaster.HUDItems.addChild(OrbBlaster.bestScoreBar); OrbBlaster.bestScoreBar.x = 493; OrbBlaster.bestScoreBar.y = 435; OrbBlaster.pauseButton = new PauseButton(); OrbBlaster.pauseButton.x = 625; OrbBlaster.pauseButton.y = 437; OrbBlaster.pauseButton.tabEnabled = false; OrbBlaster.pauseButton.addEventListener(MouseEvent.CLICK, pauseButtonClicked); OrbBlaster.levelStatsScreen = new LevelStatsScreen(); OrbBlaster.GUI.addChild(levelStatsScreen); OrbBlaster.levelStatsScreen.x = OrbBlaster.CENTER_X; OrbBlaster.levelStatsScreen.y = OrbBlaster.CENTER_Y; OrbBlaster.levelStatsScreen.nextButton.tabEnabled = false; OrbBlaster.levelStatsScreen.nextButton.addEventListener(MouseEvent.CLICK, nextButtonClicked); OrbBlaster.levelStatsScreen.visible = false; OrbBlaster.pauseMenu = new PauseMenu(); OrbBlaster.GUI.addChild(OrbBlaster.pauseMenu); OrbBlaster.pauseMenu.resumeButton.tabEnabled = false; OrbBlaster.pauseMenu.soundButton.tabEnabled = false; OrbBlaster.pauseMenu.musicButton.tabEnabled = false; OrbBlaster.pauseMenu.quitButton.tabEnabled = false; OrbBlaster.pauseMenu.controlsButton.tabEnabled = false; OrbBlaster.pauseMenu.x = OrbBlaster.CENTER_X; OrbBlaster.pauseMenu.y = OrbBlaster.CENTER_Y; OrbBlaster.pauseMenu.soundStatus.mouseEnabled = false; OrbBlaster.pauseMenu.musicStatus.mouseEnabled = false; OrbBlaster.pauseMenu.resumeButton.addEventListener(MouseEvent.CLICK, resumeButtonClicked); OrbBlaster.pauseMenu.soundButton.addEventListener(MouseEvent.CLICK, soundButtonClicked); OrbBlaster.pauseMenu.musicButton.addEventListener(MouseEvent.CLICK, musicButtonClicked); OrbBlaster.pauseMenu.quitButton.addEventListener(MouseEvent.CLICK, quitButtonClicked); OrbBlaster.pauseMenu.controlsButton.addEventListener(MouseEvent.CLICK, controlsButtonClicked); OrbBlaster.pauseMenu.visible = false; OrbBlaster.quitConfirmScreen = new QuitConfirmScreen(); OrbBlaster.GUI.addChild(OrbBlaster.quitConfirmScreen); OrbBlaster.quitConfirmScreen.yesButton.tabEnabled = false; OrbBlaster.quitConfirmScreen.noButton.tabEnabled = false; OrbBlaster.quitConfirmScreen.x = OrbBlaster.CENTER_X; OrbBlaster.quitConfirmScreen.y = OrbBlaster.CENTER_Y; OrbBlaster.quitConfirmScreen.yesButton.addEventListener(MouseEvent.CLICK, yesButtonClicked); OrbBlaster.quitConfirmScreen.noButton.addEventListener(MouseEvent.CLICK, noButtonClicked); OrbBlaster.quitConfirmScreen.visible = false; OrbBlaster.scoreSubmitScreen = new ScoreSubmitScreen(); OrbBlaster.GUI.addChild(OrbBlaster.scoreSubmitScreen); OrbBlaster.scoreSubmitScreen.submitButton.tabEnabled = false; OrbBlaster.scoreSubmitScreen.menuButton.tabEnabled = false; OrbBlaster.scoreSubmitScreen.x = OrbBlaster.CENTER_X; OrbBlaster.scoreSubmitScreen.y = OrbBlaster.CENTER_Y; OrbBlaster.scoreSubmitScreen.submitButton.addEventListener(MouseEvent.CLICK, submitButtonClicked); OrbBlaster.scoreSubmitScreen.menuButton.addEventListener(MouseEvent.CLICK, menuButtonClicked); OrbBlaster.scoreSubmitScreen.visible = false; OrbBlaster.continueScreen = new ContinueScreen(); OrbBlaster.GUI.addChild(OrbBlaster.continueScreen); OrbBlaster.continueScreen.continueYesButton.tabEnabled = false; OrbBlaster.continueScreen.continueNoButton.tabEnabled = false; OrbBlaster.continueScreen.x = OrbBlaster.CENTER_X; OrbBlaster.continueScreen.y = OrbBlaster.CENTER_Y; OrbBlaster.continueScreen.continueYesButton.addEventListener(MouseEvent.CLICK, continueYesButtonClicked); OrbBlaster.continueScreen.continueNoButton.addEventListener(MouseEvent.CLICK, continueNoButtonClicked); OrbBlaster.continueScreen.visible = false; OrbBlaster.heroSelectionScreen = new HeroSelectionScreen(); OrbBlaster.GUI.addChild(OrbBlaster.heroSelectionScreen); OrbBlaster.heroSelectionScreen.x = OrbBlaster.CENTER_X; OrbBlaster.heroSelectionScreen.y = OrbBlaster.CENTER_Y; OrbBlaster.heroSelectionScreen.button0.tabEnabled = false; OrbBlaster.heroSelectionScreen.button1.tabEnabled = false; OrbBlaster.heroSelectionScreen.heroNames.visible = false; OrbBlaster.heroSelectionScreen.button0.addEventListener(MouseEvent.CLICK, hero0Selected); OrbBlaster.heroSelectionScreen.button1.addEventListener(MouseEvent.CLICK, hero1Selected); OrbBlaster.heroSelectionScreen.button0.addEventListener(MouseEvent.MOUSE_OVER, function (){ OrbBlaster.heroSelectionScreen.heroNames.visible = true; OrbBlaster.heroSelectionScreen.heroNames.gotoAndStop(1); }); OrbBlaster.heroSelectionScreen.button0.addEventListener(MouseEvent.MOUSE_OUT, function (){ OrbBlaster.heroSelectionScreen.heroNames.visible = false; }); OrbBlaster.heroSelectionScreen.button1.addEventListener(MouseEvent.MOUSE_OVER, function (){ OrbBlaster.heroSelectionScreen.heroNames.visible = true; OrbBlaster.heroSelectionScreen.heroNames.gotoAndStop(2); }); OrbBlaster.heroSelectionScreen.button1.addEventListener(MouseEvent.MOUSE_OUT, function (){ OrbBlaster.heroSelectionScreen.heroNames.visible = false; }); OrbBlaster.heroSelectionScreen.visible = false; OrbBlaster.upgradeScreen = new UpgradeScreen(); OrbBlaster.GUI.addChild(OrbBlaster.upgradeScreen); OrbBlaster.upgradeScreen.x = OrbBlaster.CENTER_X; OrbBlaster.upgradeScreen.y = OrbBlaster.CENTER_Y; OrbBlaster.upgradeScreen.weaponCover.visible = false; OrbBlaster.upgradeScreen.speedCover.visible = false; OrbBlaster.upgradeScreen.weapon.tabEnabled = false; OrbBlaster.upgradeScreen.speed.tabEnabled = false; OrbBlaster.upgradeScreen.life.tabEnabled = false; OrbBlaster.upgradeScreen.bomb.tabEnabled = false; OrbBlaster.upgradeScreen.points.tabEnabled = false; OrbBlaster.upgradeScreen.weaponCost.mouseEnabled = false; OrbBlaster.upgradeScreen.speedCost.mouseEnabled = false; OrbBlaster.upgradeScreen.lifeCost.mouseEnabled = false; OrbBlaster.upgradeScreen.bombCost.mouseEnabled = false; OrbBlaster.upgradeScreen.pointsCost.mouseEnabled = false; UpgradeButton.setupEvents(); OrbBlaster.upgradeScreen.weapon.addEventListener(MouseEvent.CLICK, upgradeWeaponClicked); OrbBlaster.upgradeScreen.speed.addEventListener(MouseEvent.CLICK, upgradeSpeedClicked); OrbBlaster.upgradeScreen.life.addEventListener(MouseEvent.CLICK, upgradeLifeClicked); OrbBlaster.upgradeScreen.bomb.addEventListener(MouseEvent.CLICK, upgradeBombClicked); OrbBlaster.upgradeScreen.points.addEventListener(MouseEvent.CLICK, upgradePointsClicked); OrbBlaster.upgradeScreen.nextButton.addEventListener(MouseEvent.CLICK, nextButtonClicked); OrbBlaster.upgradeScreen.visible = false; OrbBlaster.controlsScreen = new ControlsScreen(); OrbBlaster.GUI.addChild(OrbBlaster.controlsScreen); OrbBlaster.controlsScreen.x = OrbBlaster.CENTER_X; OrbBlaster.controlsScreen.y = OrbBlaster.CENTER_Y; OrbBlaster.controlsScreen.okayButton.tabEnabled = false; OrbBlaster.controlsScreen.okayButton.addEventListener(MouseEvent.CLICK, okayControlsClicked); OrbBlaster.controlsScreen.visible = false; OrbBlaster.featsCompleteScreen = new FeatsCompleteScreen(); OrbBlaster.GUI.addChild(OrbBlaster.featsCompleteScreen); OrbBlaster.featsCompleteScreen.x = OrbBlaster.CENTER_X; OrbBlaster.featsCompleteScreen.y = OrbBlaster.CENTER_Y; OrbBlaster.featsCompleteScreen.okayButton.tabEnabled = false; OrbBlaster.featsCompleteScreen.okayButton.addEventListener(MouseEvent.CLICK, okayFeatsCompleteClicked); OrbBlaster.featsCompleteScreen.visible = false; } function frame4(){ this.movSplash.addEventListener(Event.ENTER_FRAME, splashEnterFrame); OrbBlaster.movSplash = this.movSplash; } public function onFlushStatus(_arg1:NetStatusEvent):void{ trace("User closed permission dialog...\n"); switch (_arg1.info.code){ case "SharedObject.Flush.Success": trace("User granted permission -- value saved.\n"); break; case "SharedObject.Flush.Failed": trace("User denied permission -- value not saved.\n"); break; }; OrbBlaster.progress.removeEventListener(NetStatusEvent.NET_STATUS, onFlushStatus); } public function featsBackButtonClicked(_arg1:MouseEvent):void{ OrbBlaster.featsScreen.visible = false; } public function soundButtonClicked(_arg1:MouseEvent):void{ OrbBlaster.soundStatus = !(OrbBlaster.soundStatus); OrbBlaster.updateAudioButtons(); } public function initStage(_arg1:Event){ OrbBlaster.keyboard.initialize(stage); OrbBlaster.mouse = new Mouse(stage); this.checkDomain(); } public function completeWriting():void{ trace("done"); } public function comboTextFadeOut(_arg1:TimerEvent):void{ OrbBlaster.comboFadeTimer.reset(); OrbBlaster.comboCounter.fadeOut(); } public function PL_LOADING(_arg1:ProgressEvent):void{ var _local2:Number; _local2 = ((_arg1.bytesLoaded / _arg1.bytesTotal) * 100); percentLoaded.text = int(_local2); if (_local2 == 100){ this.percentLoaded.visible = false; this.rotatingOrb.visible = false; OrbBlaster.background = this.bg; this.gotoAndStop(4); SoundManager.loadSounds(); OrbBlaster.bitmapManager = new BitmapManager(); OrbBlaster.bitmapManager.loadBitmaps(); MobPackage.initPackages(); Feat.initFeats(); this.begin(); }; } public function testHash():void{ var _local1:String; _local1 = "Son_5555_0"; trace(MD5.hex_hmac_md5("DCFMH9K4J6", _local1)); } public function normalButtonClicked(_arg1:MouseEvent):void{ OrbBlaster.newBackground(0); OrbBlaster.hideMainMenu(); OrbBlaster.HUDItems.visible = false; OrbBlaster.heroSelectionScreen.visible = true; } public function highScoresButtonClicked(_arg1:MouseEvent):void{ var _local2:String; var _local3:URLRequest; var _local4:URLVariables; _local2 = "http://doogog.com/games/zunderfury/highscores"; _local3 = new URLRequest(_local2); _local4 = new URLVariables(); _local4.filename = "scores/normalScores.sco"; _local4.filename2 = "scores/survivalScores.sco"; _local4.scoresize = 25; _local4.viewtype = "HTML"; navigateToURL(_local3, "_blank"); } public function mainLoop(_arg1:Event):void{ mainLoopReal(null); } public static function quitToMainMenu():void{ OrbBlaster.objMgr.clear(); OrbBlaster.showMainMenu(); OrbBlaster.pause = true; OrbBlaster.resetCombo(); OrbBlaster.totalPoints = 0; OrbBlaster.totalTime = 0; } public static function screenShake(_arg1:TimerEvent):void{ OrbBlaster.shakeCounter++; OrbBlaster.world.x = OrbBlaster.random(-6, 6); OrbBlaster.world.y = OrbBlaster.random(-6, 6); if (OrbBlaster.shakeCounter >= 16){ OrbBlaster.world.x = 0; OrbBlaster.world.y = 0; OrbBlaster.shakeTimer.stop(); }; } public static function updateScoreBar():void{ var _local1:String; _local1 = OrbBlaster.commaFormat(PlayerStats.getPoints()); OrbBlaster.scoreBar.scoreText.text = _local1; if (PlayerStats.getPoints() > PlayerStats.bestScore){ PlayerStats.bestScore = PlayerStats.getPoints(); }; if (PlayerStats.getPoints() >= 3000000){ Feat.complete(2, 1); } else { if (PlayerStats.getPoints() >= 1000000){ Feat.complete(1, 1); } else { if (PlayerStats.getPoints() >= 350000){ Feat.complete(0, 1); }; }; }; if (OrbBlaster.hero.gunLevel == 0){ if (PlayerStats.getPoints() >= 500000){ Feat.complete(1, 3); }; }; if (PlayerStats.mult >= 6){ Feat.complete(1, 2); } else { if (PlayerStats.mult >= 3){ Feat.complete(0, 2); }; }; } public static function showFeatsScreen():void{ var _local1:int; var _local2:int; OrbBlaster.featsScreen.visible = true; OrbBlaster.normalFeatsClicked(null); _local1 = 0; while (_local1 < 3) { _local2 = 0; while (_local2 < OrbBlaster.feats[_local1].length) { if (!OrbBlaster.feats[_local1][_local2].isComplete){ OrbBlaster.featBars.getChildAt(_local1).getChildAt(_local2).alpha = 0.4; OrbBlaster.featBars.getChildAt(_local1).getChildAt(_local2).star.visible = false; } else { OrbBlaster.featBars.getChildAt(_local1).getChildAt(_local2).alpha = 1; OrbBlaster.featBars.getChildAt(_local1).getChildAt(_local2).star.visible = false; }; _local2++; }; _local1++; }; } public static function legendFeatsClicked(_arg1:MouseEvent):void{ OrbBlaster.featBars.getChildAt(0).visible = false; OrbBlaster.featBars.getChildAt(1).visible = false; OrbBlaster.featBars.getChildAt(2).visible = true; OrbBlaster.featsScreen.normalCover.visible = false; OrbBlaster.featsScreen.heroicCover.visible = false; OrbBlaster.featsScreen.legendCover.visible = true; } public static function hideMainMenu():void{ OrbBlaster.mainMenu.visible = false; } public static function upgradeSpeedClicked(_arg1:MouseEvent):void{ var _local2:int; _local2 = PlayerStats.getSpeedCost(); if (PlayerStats.credits >= _local2){ PlayerStats.credits = (PlayerStats.credits - _local2); PlayerStats.speedLevel++; switch (OrbBlaster.hero.type){ case 0: OrbBlaster.hero.setSpeed((Hero.startSpeed[0] + (0.3 * PlayerStats.speedLevel))); break; case 1: OrbBlaster.hero.setSpeed((Hero.startSpeed[1] + (0.3 * PlayerStats.speedLevel))); break; }; SoundManager.playClick0(); }; OrbBlaster.updateUpgradeScreen(); } public static function startNextLevel():void{ OrbBlaster.startLevel((OrbBlaster.curLevel + 1)); } public static function heroicFeatsClicked(_arg1:MouseEvent):void{ OrbBlaster.featBars.getChildAt(0).visible = false; OrbBlaster.featBars.getChildAt(1).visible = true; OrbBlaster.featBars.getChildAt(2).visible = false; OrbBlaster.featsScreen.normalCover.visible = false; OrbBlaster.featsScreen.heroicCover.visible = true; OrbBlaster.featsScreen.legendCover.visible = false; } public static function updateAudioButtons():void{ if (OrbBlaster.soundStatus){ OrbBlaster.pauseMenu.soundStatus.text = "ON"; } else { OrbBlaster.pauseMenu.soundStatus.text = "OFF"; }; if (OrbBlaster.musicStatus){ OrbBlaster.pauseMenu.musicStatus.text = "ON"; } else { OrbBlaster.pauseMenu.musicStatus.text = "OFF"; }; } public static function hero0Selected(_arg1:MouseEvent):void{ OrbBlaster.heroSelected = 0; if (OrbBlaster.numStartedPlay <= 1){ OrbBlaster.showControlsScreen(); } else { OrbBlaster.startPlay(OrbBlaster.heroSelected); }; } public static function getRadians(_arg1:Number):Number{ return (((_arg1 * Math.PI) / 180)); } public static function unpauseTimer(_arg1:Timer){ _arg1.start(); } public static function startLevel(_arg1:uint):void{ trace(((("firedThisLevel: " + Feat.firedThisLevel) + " | diedThisLevel: ") + Feat.diedThisLevel)); OrbBlaster.isPauseable = true; OrbBlaster.pause = false; OrbBlaster.curLevel = _arg1; OrbBlaster.spawner.spawnLevel(_arg1); OrbBlaster.gunEnabled = true; OrbBlaster.hero.isInvincible = false; OrbBlaster.hero.visible = true; OrbBlaster.hero.x = OrbBlaster.CENTER_X; OrbBlaster.hero.y = OrbBlaster.CENTER_Y; OrbBlaster.comboCounter.visible = false; OrbBlaster.updateScoreBar(); OrbBlaster.maxCombo = 0; Feat.resetLevelMarks(); OrbBlaster.completedFeatsOnLevel = new Array(); if (OrbBlaster.gameMode == 0){ OrbBlaster.objMgr.addEfx(6, null); }; OrbBlaster.hero.stopRapidFire(); OrbBlaster.hero.stopRapidBomb(); OrbBlaster.hero.bombTimeCount = OrbBlaster.hero.normalBombCooldown; OrbBlaster.mouse.mouseDown = false; } public static function getAngleTo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ var _local5:*; var _local6:*; var _local7:*; var _local8:*; var _local9:*; var _local10:*; var _local11:Number; _local5 = _arg1; _local6 = _arg2; _local7 = (_arg3 - _local5); _local8 = (_arg4 - _local6); _local10 = Math.atan2(_local8, _local7); return (_local10); } public static function screenShakeStart():void{ OrbBlaster.shakeCounter = 0; OrbBlaster.shakeTimer.start(); } public static function showFeatsCompleteScreen():void{ var _local1:int; var _local2:int; var _local3:int; var _local4:FeatBar; SoundManager.playCheer(); OrbBlaster.featsCompleteScreen.visible = true; _local1 = OrbBlaster.completedFeatsOnLevel.length; _local2 = -30; _local3 = 0; while (_local3 < _local1) { _local4 = new FeatBar(); _local4.star.visible = false; _local4.title.text = OrbBlaster.completedFeatsOnLevel[_local3].title; _local4.description.text = OrbBlaster.completedFeatsOnLevel[_local3].description; _local4.x = 0; _local4.y = _local2; _local2 = (_local2 + 45); OrbBlaster.featsCompleteScreen.featBars.addChild(_local4); _local3++; }; } static function updateLevelStatsScreen():void{ var _local1:uint; var _local2:uint; var _local3:uint; var _local4:uint; var _local5:uint; var _local6:uint; var _local7:uint; var _local8:uint; _local1 = (OrbBlaster.curLevel - (OrbBlaster.gameMode * 100)); _local2 = Math.round((OrbBlaster.framesPassed / 33)); OrbBlaster.levelStatsScreen.time.text = _local2; _local3 = (((40 / _local2) * _local1) * 25); OrbBlaster.levelStatsScreen.timeBonus.text = _local3; _local4 = OrbBlaster.hero.life; OrbBlaster.levelStatsScreen.lives.text = _local4; _local5 = (((_local4 * 50) * _local1) / 2); OrbBlaster.levelStatsScreen.livesBonus.text = _local5; _local6 = OrbBlaster.maxCombo; OrbBlaster.levelStatsScreen.maxCombo.text = _local6; _local7 = (_local6 * 100); OrbBlaster.levelStatsScreen.maxComboBonus.text = _local7; _local8 = ((_local3 + _local5) + _local7); OrbBlaster.levelStatsScreen.totalBonus.text = _local8; OrbBlaster.bonusPoints = _local8; } public static function addCredits(_arg1:int):void{ PlayerStats.credits = (PlayerStats.credits + _arg1); PlayerStats.creditsTotal = (PlayerStats.creditsTotal + _arg1); } public static function startPlay(_arg1:int):void{ switch (_arg1){ case 0: OrbBlaster.hero.setLife(3); OrbBlaster.hero.setBombs(2); break; case 1: OrbBlaster.hero.setLife(3); OrbBlaster.hero.setBombs(3); break; }; OrbBlaster.hero.setType(_arg1); OrbBlaster.hero.visible = true; OrbBlaster.gameMode = 0; OrbBlaster.hero.setGunLevel(0); OrbBlaster.framesPassed = 0; OrbBlaster.HUDItems.visible = true; OrbBlaster.heroSelectionScreen.visible = false; OrbBlaster.resetCurStreak(); PlayerStats.resetUpgrades(); PlayerStats.resetCurStats(); OrbBlaster.bestScoreBar.bestScore.text = OrbBlaster.commaFormat(PlayerStats.bestScore); Feat.diedThisRun = false; OrbBlaster.numStartedPlay++; SoundManager.startBackgroundMusic(); OrbBlaster.startLevel(1); } public static function random(_arg1:Number, _arg2:Number):Number{ return ((_arg1 + ((_arg2 - _arg1) * Math.random()))); } public static function saveProgress():void{ var savedFeats:Array; var levels:int; var numFeats:int; var i:int; var flushStatus:String; var j:int; OrbBlaster.saveData.data.bestScore = PlayerStats.bestScore; OrbBlaster.saveData.data.mobsKilledTotal = PlayerStats.mobsKilledTotal; OrbBlaster.saveData.data.pointsTotal = PlayerStats.pointsTotal; OrbBlaster.saveData.data.creditsTotal = PlayerStats.creditsTotal; OrbBlaster.saveData.data.highestWave = PlayerStats.highestWave; OrbBlaster.saveData.data.feats = PlayerStats.feats; OrbBlaster.saveData.data.numStartedPlay = OrbBlaster.numStartedPlay; savedFeats = new Array(); levels = OrbBlaster.feats.length; numFeats = OrbBlaster.feats[0].length; i = 0; while (i < levels) { savedFeats[i] = new Array(); j = 0; while (j < numFeats) { savedFeats[i][j] = OrbBlaster.feats[i][j].isComplete; j = (j + 1); }; i = (i + 1); }; OrbBlaster.saveData.data.featsProgress = savedFeats; trace(("saving featsProgess: " + OrbBlaster.saveData.data.featsProgress)); trace(("saveData size: " + OrbBlaster.saveData.size)); flushStatus = null; try { flushStatus = OrbBlaster.progress.flush(); } catch(error:Error) { trace("flush error caught...?\n"); }; if (flushStatus != null){ switch (flushStatus){ case SharedObjectFlushStatus.PENDING: trace("Requesting permission to save object...\n"); OrbBlaster.progress.addEventListener(NetStatusEvent.NET_STATUS, onFlushStatus); break; case SharedObjectFlushStatus.FLUSHED: trace("Value flushed to disk.\n"); break; }; }; OrbBlaster.saveKongregate(); } public static function playerNameFocused(_arg1:Event):void{ OrbBlaster.scoreSubmitScreen.removeEventListener(FocusEvent.FOCUS_IN, playerNameFocused); OrbBlaster.scoreSubmitScreen.playerName.text = ""; trace("focused"); } public static function showMainMenu():void{ OrbBlaster.mainMenu.visible = true; } public static function showScoreSubmitScreen():void{ OrbBlaster.scoreSubmitScreen.finalScoreLabel.visible = true; OrbBlaster.scoreSubmitScreen.finalScore.text = OrbBlaster.commaFormat(PlayerStats.getPoints()); OrbBlaster.scoreSubmitScreen.finalScore.visible = true; if (OrbBlaster.scoreSubmitScreen.playerName.text == ""){ OrbBlaster.scoreSubmitScreen.playerName.text = "Bob"; }; OrbBlaster.scoreSubmitScreen.visible = true; if (OrbBlaster.scoreSubmitScreen.playerName.text == "Bob"){ OrbBlaster.scoreSubmitScreen.addEventListener(FocusEvent.FOCUS_IN, playerNameFocused); }; } public static function addPoints(_arg1:int):void{ var _local2:int; if (PlayerStats.mult > 8){ PlayerStats.mult = 8; }; _local2 = (PlayerStats.mult * _arg1); if (Math.random() < 0.5){ PlayerStats.points1 = (PlayerStats.points1 + _local2); } else { PlayerStats.points2 = (PlayerStats.points2 + _local2); }; } public static function levelComplete():void{ trace("LEVEL COMPLETE!"); OrbBlaster.hero.isInvincible = true; OrbBlaster.gunEnabled = false; OrbBlaster.hero.isFireLooping = false; OrbBlaster.endLevelTimer.start(); OrbBlaster.isPauseable = false; OrbBlaster.mouse.mouseDown = false; if ((OrbBlaster.curLevel + 1) > PlayerStats.highestWave){ PlayerStats.highestWave = (OrbBlaster.curLevel + 1); }; trace(((("firedThisLevel: " + Feat.firedThisLevel) + " | diedThisLevel: ") + Feat.diedThisLevel)); Feat.featCheck(0, 5); if (OrbBlaster.curLevel == 6){ Feat.complete(0, 0); } else { if (OrbBlaster.curLevel == 12){ if (!Feat.movedThisLevel){ Feat.complete(1, 5); }; } else { if (OrbBlaster.curLevel == 20){ Feat.complete(1, 0); if (!Feat.diedThisRun){ Feat.complete(1, 4); }; } else { if (OrbBlaster.curLevel == 30){ if (!Feat.diedThisRun){ Feat.complete(2, 5); }; } else { if (OrbBlaster.curLevel == 36){ Feat.complete(2, 0); }; }; }; }; }; if (PlayerStats.credits >= 75000){ Feat.complete(2, 4); }; OrbBlaster.saveProgress(); } public static function pauseTimer(_arg1:Timer){ if (_arg1.running){ OrbBlaster.pausedTimerArr.push(_arg1); _arg1.stop(); }; } public static function getDegrees(_arg1:Number):uint{ return (Math.round(((180 * _arg1) / Math.PI))); } public static function okayControlsClicked(_arg1:MouseEvent):void{ OrbBlaster.controlsScreen.visible = false; if (OrbBlaster.HUDItems.visible == false){ OrbBlaster.startPlay(OrbBlaster.heroSelected); } else { OrbBlaster.showPauseMenu(); }; } public static function newBackground(_arg1:uint):void{ var _local2:uint; if (_arg1 == 0){ _local2 = Math.floor(OrbBlaster.random(1, (OrbBlaster.background.totalFrames + 1))); } else { _local2 = (OrbBlaster.background.currentFrame + 1); if (_local2 > OrbBlaster.background.totalFrames){ _local2 = 1; }; }; OrbBlaster.background.gotoAndStop(_local2); } public static function pauseGame():void{ var _local1:uint; if (((!(OrbBlaster.isPauseable)) || ((OrbBlaster.mainMenu.visible == true)))){ return; }; if (!OrbBlaster.pause){ OrbBlaster.showPauseMenu(); SoundManager.stopBackgroundMusic(); OrbBlaster.gunEnabled = false; OrbBlaster.pauseTimer(OrbBlaster.spawner.mobSpawnTimer); OrbBlaster.objMgr.pauseGame(); } else { OrbBlaster.hidePauseMenu(); SoundManager.resumeBackgroundMusic(); OrbBlaster.gunEnabled = true; _local1 = OrbBlaster.pausedTimerArr.length; i = 0; while (i < _local1) { OrbBlaster.unpauseTimer(OrbBlaster.pausedTimerArr.pop()); i++; }; OrbBlaster.objMgr.resumeGame(); }; OrbBlaster.pause = !(OrbBlaster.pause); } public static function upgradePointsClicked(_arg1:MouseEvent):void{ var _local2:int; _local2 = PlayerStats.getPointsCost(); if (PlayerStats.credits >= _local2){ PlayerStats.credits = (PlayerStats.credits - _local2); PlayerStats.points1 = (PlayerStats.points1 + PlayerStats.pointUpgrade); PlayerStats.pointsTotal = (PlayerStats.pointsTotal + PlayerStats.pointUpgrade); SoundManager.playClick0(); }; OrbBlaster.updateUpgradeScreen(); } public static function showControlsScreen():void{ OrbBlaster.controlsScreen.visible = true; } public static function commaFormat(_arg1:int):String{ var _local2:String; var _local3:int; var _local4:Array; _local2 = _arg1.toString(); _local3 = _local2.length; _local4 = new Array(); while ((_local3 = (_local3 - 3)) > 0) { _local4.unshift(_local2.substr(_local3, 3)); }; _local4.unshift(_local2.substr(0, (3 + _local3))); return (_local4.join(",")); } public static function hero1Selected(_arg1:MouseEvent):void{ OrbBlaster.heroSelected = 1; if (OrbBlaster.numStartedPlay <= 1){ OrbBlaster.showControlsScreen(); } else { OrbBlaster.startPlay(OrbBlaster.heroSelected); }; } public static function saveKongregate():void{ OrbBlaster.kongregate.stats.submit("Mobs Killed", PlayerStats.mobsKilledTotal); OrbBlaster.kongregate.stats.submit("Credits Gained", PlayerStats.mobsKilledTotal); OrbBlaster.kongregate.stats.submit("Highest Wave", PlayerStats.highestWave); OrbBlaster.kongregate.stats.submit("Feats Achieved", PlayerStats.feats); OrbBlaster.kongregate.stats.submit("Best Score", PlayerStats.bestScore); OrbBlaster.kongregate.stats.submit("currentWave", OrbBlaster.curLevel); OrbBlaster.kongregate.stats.submit("maxMultiplier", PlayerStats.mult); if (Feat.diedThisRun){ OrbBlaster.kongregate.stats.submit("diedThisPlay", 1); } else { OrbBlaster.kongregate.stats.submit("diedThisPlay", 0); }; } public static function loadProgress():void{ var _local1:int; var _local2:int; var _local3:int; var _local4:int; OrbBlaster.saveData = SharedObject.getLocal("Zunderfury_Data_8", "/"); PlayerStats.bestScore = OrbBlaster.saveData.data.bestScore; PlayerStats.mobsKilledTotal = OrbBlaster.saveData.data.mobsKilledTotal; PlayerStats.pointsTotal = OrbBlaster.saveData.data.pointsTotal; PlayerStats.creditsTotal = OrbBlaster.saveData.data.creditsTotal; PlayerStats.highestWave = OrbBlaster.saveData.data.highestWave; PlayerStats.feats = OrbBlaster.saveData.data.feats; OrbBlaster.numStartedPlay = OrbBlaster.saveData.data.numStartedPlay; if (OrbBlaster.saveData.data.featsProgress == undefined){ return; }; _local1 = OrbBlaster.saveData.data.featsProgress.length; _local2 = OrbBlaster.saveData.data.featsProgress[0].length; _local3 = 0; while (_local3 < _local1) { _local4 = 0; while (_local4 < _local2) { OrbBlaster.feats[_local3][_local4].isComplete = OrbBlaster.saveData.data.featsProgress[_local3][_local4]; _local4++; }; _local3++; }; } public static function incrPlayCounter():void{ var _local1:String; var _local2:URLRequest; var _local3:URLVariables; _local1 = "http://doogog.com/PlayCounter/OB_PlayCounter.php"; _local2 = new URLRequest(_local1); _local3 = new URLVariables(); _local2.data = _local3; _local2.method = "POST"; _local3.hail = "hello"; } public static function resetCurStreak(){ PlayerStats.mobsKilled = 0; PlayerStats.mult = 1; OrbBlaster.scoreBar.multText.text = (PlayerStats.mult + "X"); } public static function hidePauseMenu():void{ OrbBlaster.pauseMenu.visible = false; OrbBlaster.quitConfirmScreen.visible = false; OrbBlaster.controlsScreen.visible = false; } public static function updateUpgradeScreen():void{ OrbBlaster.upgradeScreen.credits.text = OrbBlaster.commaFormat(PlayerStats.credits); OrbBlaster.upgradeScreen.weaponCost.text = OrbBlaster.commaFormat(PlayerStats.getWeaponCost()); OrbBlaster.upgradeScreen.speedCost.text = OrbBlaster.commaFormat(PlayerStats.getSpeedCost()); OrbBlaster.upgradeScreen.lifeCost.text = OrbBlaster.commaFormat(PlayerStats.getLifeCost()); OrbBlaster.upgradeScreen.bombCost.text = OrbBlaster.commaFormat(PlayerStats.getBombCost()); OrbBlaster.upgradeScreen.pointsCost.text = OrbBlaster.commaFormat(PlayerStats.getPointsCost()); if (PlayerStats.weaponLevel >= 5){ OrbBlaster.upgradeScreen.weaponCover.visible = true; } else { OrbBlaster.upgradeScreen.weaponCover.visible = false; }; if (PlayerStats.speedLevel >= 5){ OrbBlaster.upgradeScreen.speedCover.visible = true; } else { OrbBlaster.upgradeScreen.speedCover.visible = false; }; } public static function respawnHero():void{ if (OrbBlaster.hero.life > 0){ OrbBlaster.hero.respawn(); OrbBlaster.spawner.mobSpawnTimer.delay = 1500; OrbBlaster.spawner.mobSpawnTimer.start(); OrbBlaster.resetCurStreak(); } else { OrbBlaster.isPauseable = false; OrbBlaster.gameEnd(); }; } public static function endLevel(_arg1:TimerEvent):void{ OrbBlaster.hero.visible = false; if (OrbBlaster.completedFeatsOnLevel.length == 0){ OrbBlaster.showUpgradeScreen(); } else { OrbBlaster.showFeatsCompleteScreen(); }; OrbBlaster.objMgr.clear(); } public static function upgradeBombClicked(_arg1:MouseEvent):void{ var _local2:int; _local2 = PlayerStats.getBombCost(); if (PlayerStats.credits >= _local2){ PlayerStats.credits = (PlayerStats.credits - _local2); OrbBlaster.hero.setBombs((OrbBlaster.hero.numBombs + 1)); PlayerStats.bombsBought++; SoundManager.playClick0(); }; OrbBlaster.updateUpgradeScreen(); } public static function clearSave():void{ trace("clearing saved data"); OrbBlaster.saveData.clear(); } public static function resetCombo():void{ OrbBlaster.comboCount = 1; } public static function controlsButtonClicked(_arg1:MouseEvent):void{ OrbBlaster.showControlsScreen(); } public static function gameEnd():void{ if (OrbBlaster.curLevel == 2){ Feat.complete(2, 3); }; OrbBlaster.saveProgress(); OrbBlaster.scoreSubmitScreen.submitButton.visible = true; OrbBlaster.scoreSubmitScreen.tryAgainText.visible = false; OrbBlaster.scoreSubmitScreen.theEndText.visible = false; OrbBlaster.scoreSubmitScreen.goodLuckText.visible = false; OrbBlaster.scoreSubmitScreen.finalScoreLabel.visible = false; OrbBlaster.scoreSubmitScreen.totalTimeLabel.visible = false; OrbBlaster.scoreSubmitScreen.finalScore.visible = false; OrbBlaster.scoreSubmitScreen.playerName.selectable = true; if ((((OrbBlaster.gameMode == 0)) && ((OrbBlaster.hero.life == 0)))){ SoundManager.playBoo(); OrbBlaster.showScoreSubmitScreen(); } else { if ((((OrbBlaster.gameMode == 0)) && (!((OrbBlaster.hero.life == 0))))){ OrbBlaster.scoreSubmitScreen.theEndText.visible = true; OrbBlaster.scoreSubmitScreen.finalScore.text = OrbBlaster.totalPoints; OrbBlaster.scoreSubmitScreen.finalScore.visible = true; OrbBlaster.scoreSubmitScreen.finalScoreLabel.visible = true; OrbBlaster.showScoreSubmitScreen(); } else { OrbBlaster.scoreSubmitScreen.finalScore.text = OrbBlaster.totalTime; OrbBlaster.scoreSubmitScreen.finalScore.visible = true; OrbBlaster.scoreSubmitScreen.tryAgainText.visible = true; OrbBlaster.scoreSubmitScreen.totalTimeLabel.visible = true; OrbBlaster.showScoreSubmitScreen(); }; }; } public static function incrCombo():void{ OrbBlaster.comboCount++; OrbBlaster.comboCounter.setText(OrbBlaster.comboCount); OrbBlaster.comboFadeTimer.reset(); OrbBlaster.comboFadeTimer.start(); } public static function mobKilled(_arg1:Mob):void{ var _local2:int; OrbBlaster.addPoints(_arg1.points); OrbBlaster.addCredits(_arg1.credits); PlayerStats.mobsKilled++; PlayerStats.mobsKilledTotal++; PlayerStats.mobsKilledThisRun++; _local2 = PlayerStats.mult; switch (PlayerStats.mobsKilled){ case 32: PlayerStats.mult++; trace(PlayerStats.mobsKilled); break; case 150: PlayerStats.mult++; trace(PlayerStats.mobsKilled); break; case 350: PlayerStats.mult++; trace(PlayerStats.mobsKilled); break; case 750: PlayerStats.mult++; trace(PlayerStats.mobsKilled); break; case 1450: PlayerStats.mult++; trace(PlayerStats.mobsKilled); break; case 3000: PlayerStats.mult++; trace(PlayerStats.mobsKilled); break; }; if (_local2 != PlayerStats.mult){ OrbBlaster.scoreBar.multText.text = (PlayerStats.mult + "X"); }; if (PlayerStats.mobsKilledTotal >= 50000){ Feat.complete(2, 2); }; } public static function showUpgradeScreen():void{ OrbBlaster.upgradeScreen.visible = true; OrbBlaster.updateUpgradeScreen(); } public static function upgradeWeaponClicked(_arg1:MouseEvent):void{ var _local2:int; _local2 = PlayerStats.getWeaponCost(); if (PlayerStats.credits >= _local2){ PlayerStats.credits = (PlayerStats.credits - _local2); PlayerStats.weaponLevel++; OrbBlaster.hero.setGunLevel(PlayerStats.weaponLevel); SoundManager.playClick0(); }; OrbBlaster.updateUpgradeScreen(); } public static function upgradeLifeClicked(_arg1:MouseEvent):void{ var _local2:int; _local2 = PlayerStats.getLifeCost(); if (PlayerStats.credits >= _local2){ PlayerStats.credits = (PlayerStats.credits - _local2); OrbBlaster.hero.setLife((OrbBlaster.hero.life + 1)); PlayerStats.livesBought++; SoundManager.playClick0(); }; OrbBlaster.updateUpgradeScreen(); } public static function normalFeatsClicked(_arg1:MouseEvent):void{ OrbBlaster.featBars.getChildAt(0).visible = true; OrbBlaster.featBars.getChildAt(1).visible = false; OrbBlaster.featBars.getChildAt(2).visible = false; OrbBlaster.featsScreen.normalCover.visible = true; OrbBlaster.featsScreen.heroicCover.visible = false; OrbBlaster.featsScreen.legendCover.visible = false; } public static function addBonus():void{ var _local1:uint; if (OrbBlaster.comboCount >= 3){ _local1 = ((83 * Math.log(OrbBlaster.comboCount)) - 69); _local1 = ((83 * Math.log(OrbBlaster.comboCount)) - 69); OrbBlaster.totalPoints = (OrbBlaster.totalPoints + _local1); }; } public static function showPauseMenu():void{ OrbBlaster.updateAudioButtons(); OrbBlaster.quitConfirmScreen.visible = false; OrbBlaster.pauseMenu.visible = true; } } }//package
Section 102
//OrbObject (OrbObject) package { import flash.display.*; import utils.*; public class OrbObject extends MovieClip { public var radiusX:Number; public var radiusY:Number; public var heading:Number; public var angularAccel:Number; public var hitpoints:int; public var ax:Number; public var ay:Number; public var maxPushSpeed:Number; public var speed:Number; public var spinAbility:Number; public var vx:Number; public var vy:Number; public var maxGravSpeed:Number; public var pruneRadius:int; protected var deathLen:int; public var isPassedWall:Boolean;// = false protected var projID:int; public var maxSpeed:Number; protected var intID:int; public var angularSpeed:Number; public var collidedWith:OrbObject; public var ex0:EndPoint; public var ex1:EndPoint; public var isMoveable:Boolean;// = true public var ey0:EndPoint; public var ey1:EndPoint; static var minForce:Number = 0.5; public function OrbObject(){ isMoveable = true; isPassedWall = false; super(); this.radiusX = ((this.width >> 1) + 0); this.radiusY = ((this.height >> 1) + 0); this.angularSpeed = 0; this.angularAccel = 0; } public function distanceCheck(_arg1:OrbObject, _arg2:Number):Boolean{ var _local3:Number; _local3 = (Math.pow((_arg1.x - this.x), 2) + Math.pow((_arg1.y - this.y), 2)); if (_local3 <= Math.pow(_arg2, 2)){ return (true); }; return (false); } public function radiusTest(_arg1:OrbObject):Boolean{ var _local2:Number; _local2 = (Math.pow((_arg1.x - this.x), 2) + Math.pow((_arg1.y - this.y), 2)); if (_local2 <= Math.pow((this.getRadius() + _arg1.getRadius()), 2)){ return (true); }; return (false); } public function die():void{ } public function checkMinForce(_arg1:Number):Number{ var _local2:Number; _local2 = _arg1; if (Math.abs(_local2) < OrbObject.minForce){ if (_local2 < 0){ _local2 = -(OrbObject.minForce); } else { _local2 = OrbObject.minForce; }; }; return (_local2); } public function radiusPreTest(_arg1:Number, _arg2:Number, _arg3:OrbObject):Boolean{ var _local4:Number; _local4 = (Math.pow((_arg3.x - _arg1), 2) + Math.pow((_arg3.y - _arg2), 2)); if (_local4 <= Math.pow((this.getRadius() + _arg3.getRadius()), 2)){ return (true); }; return (false); } public function reverse():void{ trace("reversed"); this.vx = 0; this.vy = 0; this.ax = 0; this.ay = 0; } public function getID():int{ return (projID); } public function applyGravity():void{ } public function setSpeed(_arg1:Number):void{ this.speed = _arg1; this.vx = Math.round((this.speed * Math.cos(this.heading))); this.vy = Math.round((this.speed * Math.sin(this.heading))); } public function updatePosition():Boolean{ var _local1:Number; var _local2:Number; var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Number; _local1 = this.vx; _local2 = this.vy; _local3 = (this.vx + this.ax); _local4 = (this.vy + this.ay); if (Math.abs(_local3) > this.maxGravSpeed){ _local3 = _local1; }; if (Math.abs(_local4) > this.maxGravSpeed){ _local4 = _local2; }; this.maxSpeed = this.maxPushSpeed; if (Math.abs(_local3) <= this.maxSpeed){ this.vx = _local3; } else { if (_local3 < 0){ this.vx = -(this.maxSpeed); } else { this.vx = this.maxSpeed; }; }; if (Math.abs(_local4) <= this.maxSpeed){ this.vy = _local4; } else { if (_local4 < 0){ this.vy = -(this.maxSpeed); } else { this.vy = this.maxSpeed; }; }; this.rotation = (this.rotation + this.angularSpeed); this.angularSpeed = (this.angularSpeed + this.angularAccel); if ((((((this.angularAccel < 0)) && ((this.angularSpeed <= 0)))) || ((((this.angularAccel > 0)) && ((this.angularSpeed >= 0)))))){ this.angularSpeed = 0; this.angularAccel = 0; }; _local5 = (this.x + this.vx); _local6 = (this.y + this.vy); this.x = _local5; this.y = _local6; if (this.ex0 != null){ this.ex0.value = (this.x - this.radiusX); this.ex1.value = (this.x + this.radiusX); }; if (this.isOutBounds(_local5, _local6)){ return (false); }; if (!this.isPassedWall){ this.isPassedWall = true; }; return (true); } public function removeMe(){ } public function setHeading(_arg1:Number):void{ this.heading = _arg1; this.vx = (this.speed * Math.cos(this.heading)); this.vy = (this.speed * Math.sin(this.heading)); } public function distanceTo(_arg1:OrbObject):Number{ var _local2:Number; _local2 = Math.sqrt((Math.pow((_arg1.x - this.x), 2) + Math.pow((_arg1.y - this.y), 2))); return (_local2); } public function realignGravity():void{ var _local1:int; var _local2:int; var _local3:int; var _local4:Number; var _local5:Number; var _local6:Number; if (this.isPassedWall){ _local1 = (OrbBlaster.hero.x - this.x); _local2 = (OrbBlaster.hero.y - this.y); _local4 = Math.atan2(_local2, _local1); this.heading = _local4; _local5 = Math.cos(this.heading); _local6 = Math.sin(this.heading); this.ax = (OrbBlaster.GRAVITY * _local5); this.ay = (OrbBlaster.GRAVITY * _local6); this.vx = ((0.2 * this.speed) * _local5); this.vy = ((0.2 * this.speed) * _local6); this.x = (this.x + (0.15 * _local5)); this.y = (this.y + (0.15 * _local6)); }; } public function willBeOutBounds():Boolean{ var _local1:Number; var _local2:Number; var _local3:Number; var _local4:Number; _local1 = (this.vx + this.ax); _local2 = (this.vy + this.ay); _local3 = (this.x + this.vx); _local4 = (this.y + this.vy); return (this.isOutBounds(_local3, _local4)); } public function walkLeft():void{ this.x = (this.x - this.speed); } public function goTo(_arg1:Number, _arg2:Number):void{ var _local3:int; var _local4:int; var _local5:int; var _local6:Number; _local3 = (_arg1 - this.x); _local4 = (_arg2 - this.y); _local6 = Math.atan2(_local4, _local3); this.setHeading(_local6); } public function repelled():void{ var _local1:int; var _local2:int; var _local3:Number; _local1 = (this.x - OrbBlaster.hero.x); _local2 = (this.y - OrbBlaster.hero.y); _local3 = Math.atan2(_local2, _local1); this.heading = _local3; this.vx = (OrbBlaster.repelSpeed * Math.cos(this.heading)); this.vy = (OrbBlaster.repelSpeed * Math.sin(this.heading)); } public function getRadius():Number{ return (this.radiusX); } public function isOutBounds(_arg1:Number, _arg2:Number):Boolean{ return ((((((((_arg1 > OrbBlaster.X_MAX)) || ((_arg1 < OrbBlaster.X_MIN)))) || ((_arg2 > OrbBlaster.Y_MAX)))) || ((_arg2 < OrbBlaster.Y_MIN)))); } public function transferMomentum(_arg1:OrbObject):void{ var _local2:Number; var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; if (_arg1.isOutBounds(_arg1.x, _arg1.y)){ return; }; _local2 = Math.atan2((this.y - _arg1.y), (_arg1.x - this.x)); _local3 = (_local2 - (Math.PI / 2)); _local4 = (this.getHeading() - _local3); _local5 = (Math.abs((Math.sin(_local4) * this.speed)) * _arg1.pushAbility); _local6 = (_local5 * Math.cos(_local2)); _local7 = (_local5 * Math.sin(_local2)); _arg1.vx = (_arg1.vx + _local6); _arg1.vy = (_arg1.vy - _local7); if (Math.abs(_local6) > Math.abs(_local7)){ _local8 = (Math.abs(_local6) - Math.abs(_local7)); } else { _local8 = (Math.abs(_local7) - Math.abs(_local6)); }; _local9 = this.getHeading(); _local10 = _local2; _local9 = (_local9 + Math.PI); _local10 = (_local10 + Math.PI); if (_local9 < 0){ _local9 = ((Math.PI * 2) + _local9); }; if (_local10 < 0){ _local10 = ((Math.PI * 2) + _local10); }; if (_local10 > _local9){ _local8 = -(_local8); }; _arg1.angularSpeed = (_arg1.angularSpeed + (_local8 * _arg1.spinAbility)); if (_arg1.angularSpeed > 10){ _arg1.angularSpeed = 10; }; if (_arg1.angularSpeed < -10){ _arg1.angularSpeed = -10; }; _arg1.angularAccel = ((-1 * _local8) / 50); } public function walk(_arg1:uint):void{ switch (_arg1){ case 0: walkLeft(); break; case 1: walkRight(); break; }; } public function walkRight():void{ this.x = (this.x + this.speed); } public function idle():void{ } public function getHeading():Number{ return (Math.atan2(-(this.vy), this.vx)); } } }//package
Section 103
//PauseButton (PauseButton) package { import flash.display.*; public dynamic class PauseButton extends SimpleButton { } }//package
Section 104
//PauseMenu (PauseMenu) package { import flash.display.*; import flash.text.*; public dynamic class PauseMenu extends MovieClip { public var soundButton:SimpleButton; public var quitButton:SimpleButton; public var musicStatus:TextField; public var controlsButton:SimpleButton; public var musicButton:SimpleButton; public var resumeButton:SimpleButton; public var soundStatus:TextField; } }//package
Section 105
//PlayerStats (PlayerStats) package { public class PlayerStats { static var speedLevel:int = 0; static var feats:int = 0; static var creditsTotal:int = 0; static var bestScore:int = 0; static var weaponLevel:int = 0; static var mobsKilled:int = 0; static var wavesCompleted:int = 0; static var liveStreak:int = 0; static var credits:int = 0; static var mobsKilledTotal:int = 0; static var mobsKilledThisRun:int = 0; static var pointsTotal:int = 0; static var points:int = 0; static var livesBought:int = 0; static var points1:int = 0; static var points2:int = 0; static var mult:int = 1; static var pointUpgrade:int = 100000; static var highestWave:int = 0; static var bombsBought:int = 0; public function PlayerStats():void{ } public static function getSpeedCost():int{ var _local1:int; _local1 = 0; switch (PlayerStats.speedLevel){ case 0: _local1 = 450; break; case 1: _local1 = 1050; break; case 2: _local1 = 3500; break; case 3: _local1 = 6500; break; case 4: _local1 = 10500; break; case 5: _local1 = 19000; break; default: _local1 = 50000; }; return (_local1); } public static function getBombCost():int{ var _local1:int; _local1 = (1100 + (Math.pow(2, PlayerStats.bombsBought) * 140)); return (_local1); } public static function resetUpgrades():void{ PlayerStats.weaponLevel = 0; PlayerStats.speedLevel = 0; PlayerStats.livesBought = 0; PlayerStats.bombsBought = 0; } public static function getPointsCost():int{ var _local1:int; _local1 = 10000; return (_local1); } public static function getLifeCost():int{ var _local1:int; _local1 = (1300 + (Math.pow(2, PlayerStats.livesBought) * 150)); return (_local1); } public static function getPoints():int{ return ((PlayerStats.points1 + PlayerStats.points2)); } public static function resetCurStats():void{ PlayerStats.points = 0; PlayerStats.points1 = -3; PlayerStats.points2 = 3; PlayerStats.credits = 0; PlayerStats.mobsKilledThisRun = 0; } public static function getWeaponCost():int{ var _local1:int; _local1 = 0; switch (PlayerStats.weaponLevel){ case 0: _local1 = 475; break; case 1: _local1 = 1200; break; case 2: _local1 = 4000; break; case 3: _local1 = 8500; break; case 4: _local1 = 12000; break; case 5: _local1 = 20000; break; default: _local1 = 50000; }; return (_local1); } } }//package
Section 106
//Powerup (Powerup) package { public class Powerup extends Mob { static var SLOW:int = -4; static var REPEL:int = -5; static var RB:int = -3; static var LIFE2:int = -6; static var Z:int = 0; static var RF:int = -2; static var LIFE:int = -1; public function Powerup(_arg1:Number, _arg2:Number):void{ super(_arg1, _arg2, 0, 0, this.speed); this.pushAbility = 0; this.type = 3; this.vx = 0; this.vy = 0; this.ay = 0; this.ax = 0; this.hitpoints = 10; } override public function damagedBy(_arg1:OrbObject):void{ } public function pulse():void{ this.radiusX = 21; this.radiusY = 21; } public function activatePowerup():void{ } } }//package
Section 107
//Powerup_Life (Powerup_Life) package { public class Powerup_Life extends Powerup { public function Powerup_Life(_arg1:Number, _arg2:Number):void{ addFrameScript(6, frame7, 18, frame19); super(_arg1, _arg2); } function frame19(){ gotoAndPlay("pulse"); } function frame7(){ this.pulse(); } override public function activatePowerup():void{ OrbBlaster.hero.setLife((OrbBlaster.hero.life + 1)); } } }//package
Section 108
//Powerup_Life3 (Powerup_Life3) package { import flash.events.*; import flash.display.*; import flash.geom.*; import flash.utils.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; import flash.ui.*; public dynamic class Powerup_Life3 extends MovieClip { public function Powerup_Life3(){ addFrameScript(6, frame7, 18, frame19); } function frame7(){ this.pulse(); } function frame19(){ gotoAndPlay("pulse"); } } }//package
Section 109
//Powerup_RapidBomb (Powerup_RapidBomb) package { public class Powerup_RapidBomb extends Powerup { public function Powerup_RapidBomb(_arg1:Number, _arg2:Number):void{ addFrameScript(6, frame7, 18, frame19); super(_arg1, _arg2); } function frame19(){ gotoAndPlay("pulse"); } function frame7(){ this.pulse(); } override public function activatePowerup():void{ OrbBlaster.hero.startRapidBomb(); } } }//package
Section 110
//Powerup_RapidFire (Powerup_RapidFire) package { public class Powerup_RapidFire extends Powerup { public function Powerup_RapidFire(_arg1:Number, _arg2:Number):void{ addFrameScript(6, frame7, 18, frame19); super(_arg1, _arg2); } function frame19(){ gotoAndPlay("pulse"); } function frame7(){ this.pulse(); } override public function activatePowerup():void{ OrbBlaster.hero.startRapidFire(); } } }//package
Section 111
//ProfanityFilter (ProfanityFilter) package { public class ProfanityFilter { public static var badWords:Array; public function ProfanityFilter():void{ } public static function profanityCheck(_arg1:String):Boolean{ var _local2:int; var _local3:Boolean; var _local4:String; var _local5:int; _local2 = ProfanityFilter.badWords.length; _local3 = false; _local4 = _arg1.toLowerCase(); _local5 = 0; while (_local5 < _local2) { if (_local4.indexOf(ProfanityFilter.badWords[_local5]) != -1){ _local3 = true; break; }; _local5++; }; return (_local3); } public static function init():void{ ProfanityFilter.badWords = new Array(); ProfanityFilter.badWords.push("anal"); ProfanityFilter.badWords.push("anus"); ProfanityFilter.badWords.push("ass"); ProfanityFilter.badWords.push("asshole"); ProfanityFilter.badWords.push("ass hole"); ProfanityFilter.badWords.push("asswipe"); ProfanityFilter.badWords.push("bastard"); ProfanityFilter.badWords.push("bitch"); ProfanityFilter.badWords.push("bitchy"); ProfanityFilter.badWords.push("blowjob"); ProfanityFilter.badWords.push("boob"); ProfanityFilter.badWords.push("boobs"); ProfanityFilter.badWords.push("buttfucker"); ProfanityFilter.badWords.push("caca"); ProfanityFilter.badWords.push("clit"); ProfanityFilter.badWords.push("cock"); ProfanityFilter.badWords.push("cocksucker"); ProfanityFilter.badWords.push("cunt"); ProfanityFilter.badWords.push("dickhead"); ProfanityFilter.badWords.push("dipshit"); ProfanityFilter.badWords.push("doody"); ProfanityFilter.badWords.push("dyke"); ProfanityFilter.badWords.push("dike"); ProfanityFilter.badWords.push("fag"); ProfanityFilter.badWords.push("faggot"); ProfanityFilter.badWords.push("fuck"); ProfanityFilter.badWords.push("fucked"); ProfanityFilter.badWords.push("fucker"); ProfanityFilter.badWords.push("fuckface"); ProfanityFilter.badWords.push("fucks"); ProfanityFilter.badWords.push("give head"); ProfanityFilter.badWords.push("gives head"); ProfanityFilter.badWords.push("gook"); ProfanityFilter.badWords.push("kike"); ProfanityFilter.badWords.push("motherfucker"); ProfanityFilter.badWords.push("nigger"); ProfanityFilter.badWords.push("penis"); ProfanityFilter.badWords.push("piss"); ProfanityFilter.badWords.push("poop"); ProfanityFilter.badWords.push("sex"); ProfanityFilter.badWords.push("shit"); ProfanityFilter.badWords.push("shitface"); ProfanityFilter.badWords.push("shithead"); ProfanityFilter.badWords.push("shits"); ProfanityFilter.badWords.push("slut"); ProfanityFilter.badWords.push("spic"); ProfanityFilter.badWords.push("suck"); ProfanityFilter.badWords.push("slutty"); ProfanityFilter.badWords.push("shity"); ProfanityFilter.badWords.push("shitty"); ProfanityFilter.badWords.push("sucks"); ProfanityFilter.badWords.push("tit"); ProfanityFilter.badWords.push("tits"); ProfanityFilter.badWords.push("twat"); ProfanityFilter.badWords.push("urine"); ProfanityFilter.badWords.push("vagina"); ProfanityFilter.badWords.push("whore"); ProfanityFilter.badWords.push("wop"); ProfanityFilter.badWords.push("ahole"); ProfanityFilter.badWords.push("a-hole"); ProfanityFilter.badWords.push("a hole"); ProfanityFilter.badWords.push("pisser"); ProfanityFilter.badWords.push("dildo"); ProfanityFilter.badWords.push("motherfuck"); ProfanityFilter.badWords.push("jerkoff"); ProfanityFilter.badWords.push("lesbo"); ProfanityFilter.badWords.push("homo"); ProfanityFilter.badWords.push("scrotum"); ProfanityFilter.badWords.push("scrodum"); ProfanityFilter.badWords.push("fart"); ProfanityFilter.badWords.push("jackass"); ProfanityFilter.badWords.push("prick"); ProfanityFilter.badWords.push("chink"); ProfanityFilter.badWords.push("molestor"); ProfanityFilter.badWords.push("molester"); ProfanityFilter.badWords.push("anal"); ProfanityFilter.badWords.push("anus"); ProfanityFilter.badWords.push("asshole"); ProfanityFilter.badWords.push("asswipe"); ProfanityFilter.badWords.push("bastard"); ProfanityFilter.badWords.push("bitch"); ProfanityFilter.badWords.push("bitchy"); ProfanityFilter.badWords.push("blowjob"); ProfanityFilter.badWords.push("boob"); ProfanityFilter.badWords.push("boobs"); ProfanityFilter.badWords.push("buttfucker"); ProfanityFilter.badWords.push("caca"); ProfanityFilter.badWords.push("clit"); ProfanityFilter.badWords.push("cock"); ProfanityFilter.badWords.push("cocksucker"); ProfanityFilter.badWords.push("cunt"); ProfanityFilter.badWords.push("dickhead"); ProfanityFilter.badWords.push("dipshit"); ProfanityFilter.badWords.push("doody"); ProfanityFilter.badWords.push("dyke"); ProfanityFilter.badWords.push("dike"); ProfanityFilter.badWords.push("fag"); ProfanityFilter.badWords.push("faggot"); ProfanityFilter.badWords.push("fuck"); ProfanityFilter.badWords.push("fck"); ProfanityFilter.badWords.push("fcuk"); ProfanityFilter.badWords.push("fucked"); ProfanityFilter.badWords.push("fucker"); ProfanityFilter.badWords.push("fuckface"); ProfanityFilter.badWords.push("fucks"); ProfanityFilter.badWords.push("give head"); ProfanityFilter.badWords.push("gives head"); ProfanityFilter.badWords.push("gook"); ProfanityFilter.badWords.push("kike"); ProfanityFilter.badWords.push("motherfucker"); ProfanityFilter.badWords.push("nigger"); ProfanityFilter.badWords.push("penis"); ProfanityFilter.badWords.push("piss"); ProfanityFilter.badWords.push("poop"); ProfanityFilter.badWords.push("sex"); ProfanityFilter.badWords.push("shit"); ProfanityFilter.badWords.push("shitface"); ProfanityFilter.badWords.push("shithead"); ProfanityFilter.badWords.push("shits"); ProfanityFilter.badWords.push("slut"); ProfanityFilter.badWords.push("spic"); ProfanityFilter.badWords.push("suck"); ProfanityFilter.badWords.push("slutty"); ProfanityFilter.badWords.push("shity"); ProfanityFilter.badWords.push("shitty"); ProfanityFilter.badWords.push("sucks"); ProfanityFilter.badWords.push("tit"); ProfanityFilter.badWords.push("tits"); ProfanityFilter.badWords.push("twat"); ProfanityFilter.badWords.push("urine"); ProfanityFilter.badWords.push("vagina"); ProfanityFilter.badWords.push("whore"); ProfanityFilter.badWords.push("wop"); ProfanityFilter.badWords.push("ahole"); ProfanityFilter.badWords.push("a-hole"); ProfanityFilter.badWords.push("a hole"); ProfanityFilter.badWords.push("pisser"); ProfanityFilter.badWords.push("dildo"); ProfanityFilter.badWords.push("motherfuck"); ProfanityFilter.badWords.push("jerkoff"); ProfanityFilter.badWords.push("lesbo"); ProfanityFilter.badWords.push("homo"); ProfanityFilter.badWords.push("scrotum"); ProfanityFilter.badWords.push("scrodum"); ProfanityFilter.badWords.push("fart"); ProfanityFilter.badWords.push("jackass"); ProfanityFilter.badWords.push("prick"); ProfanityFilter.badWords.push("chink"); ProfanityFilter.badWords.push("molestor"); ProfanityFilter.badWords.push("molester"); ProfanityFilter.badWords.push("removed ass"); ProfanityFilter.badWords.push("dyke"); ProfanityFilter.badWords.push("dike"); ProfanityFilter.badWords.push("tit"); ProfanityFilter.badWords.push("dick"); } } }//package
Section 112
//Proj_Explosion0_Base (Proj_Explosion0_Base) package { import flash.display.*; public dynamic class Proj_Explosion0_Base extends MovieClip { } }//package
Section 113
//Projectile (Projectile) package { import flash.display.*; public class Projectile extends OrbObject { public var updateTimer:int;// = 0 public var angleFrame:int;// = 0 public var maxFrame:int;// = 0 public var efxExplosion:Array; public var curFrame:int;// = 0 public var comboID:uint; public var bitmap:Bitmap; public var spriteBase:Array; public var type:uint; public var damage:uint; static var bombDamage:uint = 80; public function Projectile(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number){ angleFrame = 0; efxExplosion = OrbBlaster.bitmapManager.efx_explosion1; curFrame = 0; maxFrame = 0; updateTimer = 0; super(); this.pruneRadius = 81; this.x = _arg1; this.y = _arg2; this.speed = _arg4; this.ax = 0; this.ay = 0; this.maxSpeed = 5; this.heading = _arg3; this.vx = (this.speed * Math.cos(this.heading)); this.vy = (this.speed * Math.sin(this.heading)); this.bitmap = new Bitmap(null, "never", true); } override public function die():void{ OrbBlaster.objMgr.killProj(this); } public function setSpriteBase(_arg1:Array):void{ var _local2:Number; var _local3:Number; this.spriteBase = _arg1; this.radiusX = ((_arg1[0].width >> 1) + 6); this.radiusY = this.radiusX; this.addChild(this.bitmap); _local2 = this.spriteBase[0][this.curFrame].width; _local3 = this.spriteBase[0][this.curFrame].height; this.bitmap.bitmapData = this.spriteBase[0][this.curFrame]; this.bitmap.x = -((_local2 >> 1)); this.bitmap.y = -((_local3 >> 1)); this.maxFrame = this.spriteBase[0].length; } public function updateBitmap():void{ var _local1:Number; var _local2:Number; this.updateTimer++; if (this.updateTimer < 2){ return; }; this.updateTimer = 0; this.curFrame++; this.updateSpecial(); if (this.curFrame >= this.maxFrame){ this.curFrame = 0; }; _local1 = this.spriteBase[0][this.curFrame].width; _local2 = this.spriteBase[0][this.curFrame].height; this.bitmap.bitmapData = this.spriteBase[0][this.curFrame]; this.bitmap.x = -((_local1 >> 1)); this.bitmap.y = -((_local2 >> 1)); } public function gotHit():void{ OrbBlaster.objMgr.addEfxBitmap(this.efxExplosion, this.x, this.y); this.die(); } override public function isOutBounds(_arg1:Number, _arg2:Number):Boolean{ return ((((((((_arg1 > OrbBlaster.PROJ_X_MAX)) || ((_arg1 < OrbBlaster.PROJ_X_MIN)))) || ((_arg2 > OrbBlaster.PROJ_Y_MAX)))) || ((_arg2 < OrbBlaster.PROJ_Y_MIN)))); } public function updateSpecial():void{ } } }//package
Section 114
//Projectile0 (Projectile0) package { public class Projectile0 extends Projectile { public function Projectile0(_arg1:Number, _arg2:Number, _arg3:Number):void{ this.speed = 13; super(_arg1, _arg2, _arg3, this.speed); this.maxSpeed = 128; this.maxPushSpeed = 128; this.maxGravSpeed = 128; this.type = 0; this.damage = 10; this.setSpriteBase(OrbBlaster.bitmapManager.projectile0); } } }//package
Section 115
//Projectile0_Sprite (Projectile0_Sprite) package { import flash.display.*; public dynamic class Projectile0_Sprite extends MovieClip { } }//package
Section 116
//Projectile1 (Projectile1) package { public class Projectile1 extends Projectile { public function Projectile1(_arg1:Number, _arg2:Number, _arg3:Number):void{ this.speed = 13; super(_arg1, _arg2, _arg3, this.speed); this.maxSpeed = 128; this.maxPushSpeed = 128; this.maxGravSpeed = 128; this.type = 0; this.damage = 10; this.setSpriteBase(OrbBlaster.bitmapManager.projectile1); } } }//package
Section 117
//Projectile1_Sprite (Projectile1_Sprite) package { import flash.display.*; public dynamic class Projectile1_Sprite extends MovieClip { } }//package
Section 118
//Projectile10 (Projectile10) package { public class Projectile10 extends Projectile { public function Projectile10(_arg1:Number, _arg2:Number, _arg3:Number):void{ this.speed = (6.7 + OrbBlaster.random(-0.5, 0.5)); super(_arg1, _arg2, _arg3, this.speed); this.maxSpeed = 128; this.maxPushSpeed = 128; this.maxGravSpeed = 128; this.type = 0; this.damage = 20; this.setSpriteBase(OrbBlaster.bitmapManager.projectile10); this.radiusX = 13; this.radiusY = 13; } override public function updateSpecial():void{ if (this.curFrame >= this.maxFrame){ this.die(); }; } } }//package
Section 119
//Projectile10_Sprite (Projectile10_Sprite) package { import flash.display.*; public dynamic class Projectile10_Sprite extends MovieClip { } }//package
Section 120
//Projectile11 (Projectile11) package { public class Projectile11 extends Projectile { public function Projectile11(_arg1:Number, _arg2:Number, _arg3:Number):void{ this.speed = (6.7 + OrbBlaster.random(-0.5, 0.5)); super(_arg1, _arg2, _arg3, this.speed); this.maxSpeed = 128; this.maxPushSpeed = 128; this.maxGravSpeed = 128; this.type = 0; this.damage = 20; this.setSpriteBase(OrbBlaster.bitmapManager.projectile11); this.radiusX = 13; this.radiusY = 13; } override public function updateSpecial():void{ if (this.curFrame >= this.maxFrame){ this.die(); }; } } }//package
Section 121
//Projectile11_Sprite (Projectile11_Sprite) package { import flash.display.*; public dynamic class Projectile11_Sprite extends MovieClip { } }//package
Section 122
//Projectile12 (Projectile12) package { public class Projectile12 extends Projectile { public function Projectile12(_arg1:Number, _arg2:Number, _arg3:Number):void{ this.speed = (7.5 + OrbBlaster.random(-0.5, 0.5)); super(_arg1, _arg2, _arg3, this.speed); this.maxSpeed = 128; this.maxPushSpeed = 128; this.maxGravSpeed = 128; this.type = 0; this.damage = 20; this.setSpriteBase(OrbBlaster.bitmapManager.projectile10); this.radiusX = 13; this.radiusY = 13; } override public function updateSpecial():void{ if (this.curFrame >= this.maxFrame){ this.die(); }; } } }//package
Section 123
//Projectile12_Sprite (Projectile12_Sprite) package { import flash.display.*; public dynamic class Projectile12_Sprite extends MovieClip { } }//package
Section 124
//Projectile13 (Projectile13) package { public class Projectile13 extends Projectile { public function Projectile13(_arg1:Number, _arg2:Number, _arg3:Number):void{ this.speed = (7.5 + OrbBlaster.random(-0.5, 0.5)); super(_arg1, _arg2, _arg3, this.speed); this.maxSpeed = 128; this.maxPushSpeed = 128; this.maxGravSpeed = 128; this.type = 0; this.damage = 20; this.setSpriteBase(OrbBlaster.bitmapManager.projectile11); this.radiusX = 13; this.radiusY = 13; } override public function updateSpecial():void{ if (this.curFrame >= this.maxFrame){ this.die(); }; } } }//package
Section 125
//Projectile13_Sprite (Projectile13_Sprite) package { import flash.display.*; public dynamic class Projectile13_Sprite extends MovieClip { } }//package
Section 126
//Projectile14 (Projectile14) package { public class Projectile14 extends Projectile { public function Projectile14(_arg1:Number, _arg2:Number, _arg3:Number):void{ this.speed = (8.5 + OrbBlaster.random(-0.5, 0.5)); super(_arg1, _arg2, _arg3, this.speed); this.maxSpeed = 128; this.maxPushSpeed = 128; this.maxGravSpeed = 128; this.type = 0; this.damage = 20; this.setSpriteBase(OrbBlaster.bitmapManager.projectile12); this.radiusX = 17; this.radiusY = 17; } override public function updateSpecial():void{ if (this.curFrame >= this.maxFrame){ this.die(); }; } } }//package
Section 127
//Projectile14_Sprite (Projectile14_Sprite) package { import flash.display.*; public dynamic class Projectile14_Sprite extends MovieClip { } }//package
Section 128
//Projectile15 (Projectile15) package { public class Projectile15 extends Projectile { public function Projectile15(_arg1:Number, _arg2:Number, _arg3:Number):void{ this.speed = (8.5 + OrbBlaster.random(-0.5, 0.5)); super(_arg1, _arg2, _arg3, this.speed); this.maxSpeed = 128; this.maxPushSpeed = 128; this.maxGravSpeed = 128; this.type = 0; this.damage = 20; this.setSpriteBase(OrbBlaster.bitmapManager.projectile13); this.radiusX = 17; this.radiusY = 17; } override public function updateSpecial():void{ if (this.curFrame >= this.maxFrame){ this.die(); }; } } }//package
Section 129
//Projectile15_Sprite (Projectile15_Sprite) package { import flash.display.*; public dynamic class Projectile15_Sprite extends MovieClip { } }//package
Section 130
//Projectile16 (Projectile16) package { public class Projectile16 extends Projectile { public function Projectile16(_arg1:Number, _arg2:Number, _arg3:Number):void{ this.speed = (9 + OrbBlaster.random(-0.5, 0.5)); super(_arg1, _arg2, _arg3, this.speed); this.maxSpeed = 128; this.maxPushSpeed = 128; this.maxGravSpeed = 128; this.type = 0; this.damage = 20; this.setSpriteBase(OrbBlaster.bitmapManager.projectile14); this.radiusX = 18; this.radiusY = 18; } override public function updateSpecial():void{ if (this.curFrame >= this.maxFrame){ this.die(); }; } } }//package
Section 131
//Projectile17 (Projectile17) package { public class Projectile17 extends Projectile { public function Projectile17(_arg1:Number, _arg2:Number, _arg3:Number):void{ this.speed = (9 + OrbBlaster.random(-0.5, 0.5)); super(_arg1, _arg2, _arg3, this.speed); this.maxSpeed = 128; this.maxPushSpeed = 128; this.maxGravSpeed = 128; this.type = 0; this.damage = 20; this.setSpriteBase(OrbBlaster.bitmapManager.projectile15); this.radiusX = 18; this.radiusY = 18; } override public function updateSpecial():void{ if (this.curFrame >= this.maxFrame){ this.die(); }; } } }//package
Section 132
//Projectile2 (Projectile2) package { public class Projectile2 extends Projectile { public function Projectile2(_arg1:Number, _arg2:Number, _arg3:Number):void{ this.speed = 13; super(_arg1, _arg2, _arg3, this.speed); this.maxSpeed = 128; this.maxPushSpeed = 128; this.maxGravSpeed = 128; this.type = 0; this.damage = 10; this.setSpriteBase(OrbBlaster.bitmapManager.projectile2); } } }//package
Section 133
//Projectile2_Sprite (Projectile2_Sprite) package { import flash.display.*; public dynamic class Projectile2_Sprite extends MovieClip { } }//package
Section 134
//Projectile3 (Projectile3) package { public class Projectile3 extends Projectile { public function Projectile3(_arg1:Number, _arg2:Number, _arg3:Number):void{ this.speed = 13; super(_arg1, _arg2, _arg3, this.speed); this.maxSpeed = 128; this.maxPushSpeed = 128; this.maxGravSpeed = 128; this.type = 0; this.damage = 10; this.setSpriteBase(OrbBlaster.bitmapManager.projectile3); } } }//package
Section 135
//Projectile3_Sprite (Projectile3_Sprite) package { import flash.display.*; public dynamic class Projectile3_Sprite extends MovieClip { } }//package
Section 136
//Projectile4 (Projectile4) package { public class Projectile4 extends Projectile { public function Projectile4(_arg1:Number, _arg2:Number, _arg3:Number):void{ this.speed = 13; super(_arg1, _arg2, _arg3, this.speed); this.maxSpeed = 128; this.maxPushSpeed = 128; this.maxGravSpeed = 128; this.type = 0; this.damage = 10; this.setSpriteBase(OrbBlaster.bitmapManager.projectile4); } } }//package
Section 137
//Projectile4_Sprite (Projectile4_Sprite) package { import flash.display.*; public dynamic class Projectile4_Sprite extends MovieClip { } }//package
Section 138
//QuitConfirmScreen (QuitConfirmScreen) package { import flash.display.*; public dynamic class QuitConfirmScreen extends MovieClip { public var noButton:SimpleButton; public var yesButton:SimpleButton; } }//package
Section 139
//ScoreBar (ScoreBar) package { import flash.display.*; import flash.text.*; public dynamic class ScoreBar extends MovieClip { public var multText:TextField; public var scoreText:TextField; } }//package
Section 140
//ScoreSubmitScreen (ScoreSubmitScreen) package { import flash.display.*; import flash.text.*; public dynamic class ScoreSubmitScreen extends MovieClip { public var theEndText:MovieClip; public var playerName:TextField; public var tryAgainText:MovieClip; public var totalTimeLabel:MovieClip; public var goodLuckText:MovieClip; public var submitButton:SimpleButton; public var menuButton:SimpleButton; public var finalScoreLabel:MovieClip; public var finalScore:TextField; public var submittedText:MovieClip; } }//package
Section 141
//ShieldBlast (ShieldBlast) package { import flash.display.*; public class ShieldBlast extends Explosion { public var blast1:MovieClip; public var blast0:MovieClip; public function ShieldBlast(_arg1:Number, _arg2:Number):void{ addFrameScript(72, frame73); super(_arg1, _arg2); this.type = Explosion.SHIELD_BLAST; this.pruneRadius = 50; this.alpha = 0.9; this.baseRadius = 35; this.radiusX = (this.baseRadius * this.scaleX); } override public function die():void{ this.stop(); OrbBlaster.objMgr.killExpl(this); } override public function updateRadius():void{ this.pruneRadius = ((this.width >> 1) + 20); switch (this.currentFrame){ case 8: this.radiusX = (43.5 * this.scaleX); break; case 10: this.radiusX = (62 * this.scaleX); }; } function frame73(){ OrbBlaster.respawnHero(); this.die(); } } }//package
Section 142
//Sound_BassTrigger (Sound_BassTrigger) package { import flash.media.*; public dynamic class Sound_BassTrigger extends Sound { } }//package
Section 143
//Sound_Cheer (Sound_Cheer) package { import flash.media.*; public dynamic class Sound_Cheer extends Sound { } }//package
Section 144
//Sound_Cheer1 (Sound_Cheer1) package { import flash.media.*; public dynamic class Sound_Cheer1 extends Sound { } }//package
Section 145
//Sound_Click0 (Sound_Click0) package { import flash.media.*; public dynamic class Sound_Click0 extends Sound { } }//package
Section 146
//Sound_dblip (Sound_dblip) package { import flash.media.*; public dynamic class Sound_dblip extends Sound { } }//package
Section 147
//Sound_electrohit (Sound_electrohit) package { import flash.media.*; public dynamic class Sound_electrohit extends Sound { } }//package
Section 148
//Sound_Explosion25 (Sound_Explosion25) package { import flash.media.*; public dynamic class Sound_Explosion25 extends Sound { } }//package
Section 149
//Sound_Explosion26 (Sound_Explosion26) package { import flash.media.*; public dynamic class Sound_Explosion26 extends Sound { } }//package
Section 150
//Sound_Explosion27 (Sound_Explosion27) package { import flash.media.*; public dynamic class Sound_Explosion27 extends Sound { } }//package
Section 151
//Sound_f_shoot1 (Sound_f_shoot1) package { import flash.media.*; public dynamic class Sound_f_shoot1 extends Sound { } }//package
Section 152
//Sound_firework_1 (Sound_firework_1) package { import flash.media.*; public dynamic class Sound_firework_1 extends Sound { } }//package
Section 153
//Sound_firework_5 (Sound_firework_5) package { import flash.media.*; public dynamic class Sound_firework_5 extends Sound { } }//package
Section 154
//Sound_JDescend (Sound_JDescend) package { import flash.media.*; public dynamic class Sound_JDescend extends Sound { } }//package
Section 155
//Sound_LaserShot (Sound_LaserShot) package { import flash.media.*; public dynamic class Sound_LaserShot extends Sound { } }//package
Section 156
//Sound_NormalShot (Sound_NormalShot) package { import flash.media.*; public dynamic class Sound_NormalShot extends Sound { } }//package
Section 157
//Sound_PlayerDeath (Sound_PlayerDeath) package { import flash.media.*; public dynamic class Sound_PlayerDeath extends Sound { } }//package
Section 158
//Sound_r_explosion0 (Sound_r_explosion0) package { import flash.media.*; public dynamic class Sound_r_explosion0 extends Sound { } }//package
Section 159
//Sound_r_shoot3 (Sound_r_shoot3) package { import flash.media.*; public dynamic class Sound_r_shoot3 extends Sound { } }//package
Section 160
//Sound_shoot0 (Sound_shoot0) package { import flash.media.*; public dynamic class Sound_shoot0 extends Sound { } }//package
Section 161
//SoundManager (SoundManager) package { import flash.events.*; import flash.media.*; public class SoundManager { static var jdescend:Sound; static var normalShot:Sound; static var bgMusicChannel:SoundChannel; static var cheer1:Sound; static var electrohit:Sound; static var playerDeath:Sound; static var explosion25:Sound; static var explosion26:Sound; static var explosion27:Sound; static var shoot:Sound; public static var medExplChannelArr = new Array(4); static var r_explosion0:Sound; static var bgMusicPosition:int = 0; public static var larExplChannelArr = new Array(3); static var click0:Sound; static var curExplType:uint = 0; static var firework_5:Sound; static var firework_1:Sound; static var cheer:Sound; public static var smaExplChannelArr = new Array(4); static var dblip:Sound; static var bassTrigger:Sound; static var bgMusic:Sound; static var f_shoot1:Sound; public function SoundManager():void{ } public static function playBassTrigger():void{ var _local1:SoundChannel; if (OrbBlaster.soundStatus){ _local1 = SoundManager.bassTrigger.play(); }; } public static function playPowerup():void{ var _local1:SoundChannel; if (OrbBlaster.soundStatus){ _local1 = SoundManager.powerup.play(); }; } public static function playMobExplosionM():void{ var _local1:Sound; var _local2:SoundChannel; var _local3:int; if (OrbBlaster.soundStatus){ _local2 = SoundManager.medExplChannelArr.shift(); if (_local2 != null){ _local2.stop(); _local2 = null; }; _local3 = Math.floor(OrbBlaster.random(0, 2)); switch (_local3){ case 0: _local1 = SoundManager.firework_5; break; case 1: _local1 = SoundManager.firework_1; break; }; _local2 = _local1.play(); SoundManager.medExplChannelArr.push(_local2); }; } public static function playMobShot1():void{ var _local1:SoundChannel; if (OrbBlaster.soundStatus){ _local1 = SoundManager.missileBeep.play(); }; } public static function stopBackgroundMusic():void{ if (SoundManager.bgMusicChannel != null){ SoundManager.bgMusicPosition = SoundManager.bgMusicChannel.position; SoundManager.bgMusicChannel.stop(); SoundManager.bgMusicChannel.removeEventListener(Event.SOUND_COMPLETE, loopBackgroundMusic); }; } public static function playPlayerDeath():void{ var _local1:SoundChannel; if (OrbBlaster.soundStatus){ _local1 = SoundManager.playerDeath.play(); }; } public static function playMobExplosionS():void{ var _local1:Sound; var _local2:SoundChannel; var _local3:int; if (OrbBlaster.soundStatus){ _local2 = SoundManager.smaExplChannelArr.shift(); if (_local2 != null){ _local2.stop(); _local2 = null; }; _local3 = Math.floor(OrbBlaster.random(0, 2)); switch (_local3){ case 0: _local1 = SoundManager.r_explosion0; break; case 1: _local1 = SoundManager.electrohit; break; }; _local2 = _local1.play(); SoundManager.smaExplChannelArr.push(_local2); }; } public static function playBackgroundMusic(_arg1:uint):void{ var _local2:SoundTransform; SoundManager.bgMusicChannel = SoundManager.bgMusic.play(_arg1); if (SoundManager.bgMusicChannel != null){ _local2 = SoundManager.bgMusicChannel.soundTransform; _local2.volume = 1; SoundManager.bgMusicChannel.soundTransform = _local2; }; } public static function playMobExplosion():void{ var _local1:Sound; var _local2:SoundChannel; var _local3:int; if (OrbBlaster.soundStatus){ _local2 = SoundManager.larExplChannelArr.shift(); if (_local2 != null){ _local2.stop(); _local2 = null; }; _local3 = SoundManager.curExplType++; switch (_local3){ case 0: _local1 = SoundManager.explosion25; break; case 1: _local1 = SoundManager.explosion26; break; case 2: _local1 = SoundManager.explosion27; SoundManager.curExplType = 0; break; default: _local1 = SoundManager.explosion25; }; _local2 = _local1.play(); SoundManager.larExplChannelArr.push(_local2); }; } public static function loadSounds():void{ SoundManager.bgMusic = new Music_Background(); SoundManager.explosion25 = new Sound_Explosion25(); SoundManager.explosion26 = new Sound_Explosion26(); SoundManager.explosion27 = new Sound_Explosion27(); SoundManager.firework_5 = new Sound_firework_5(); SoundManager.firework_1 = new Sound_firework_1(); SoundManager.electrohit = new Sound_electrohit(); SoundManager.r_explosion0 = new Sound_r_explosion0(); SoundManager.playerDeath = new Sound_PlayerDeath(); SoundManager.bassTrigger = new Sound_BassTrigger(); SoundManager.cheer = new Sound_Cheer(); SoundManager.cheer1 = new Sound_Cheer1(); SoundManager.click0 = new Sound_Click0(); SoundManager.dblip = new Sound_dblip(); SoundManager.jdescend = new Sound_JDescend(); SoundManager.normalShot = new Sound_NormalShot(); SoundManager.click0 = new Sound_Click0(); SoundManager.shoot = new Sound_r_shoot3(); SoundManager.f_shoot1 = new Sound_f_shoot1(); } public static function resumeBackgroundMusic():void{ if (OrbBlaster.musicStatus){ SoundManager.playBackgroundMusic(SoundManager.bgMusicPosition); if (SoundManager.bgMusicChannel != null){ SoundManager.bgMusicChannel.addEventListener(Event.SOUND_COMPLETE, loopBackgroundMusic); }; }; } public static function loopBackgroundMusic(_arg1:Event):void{ if (SoundManager.bgMusicChannel != null){ SoundManager.bgMusicChannel.removeEventListener(Event.SOUND_COMPLETE, loopBackgroundMusic); SoundManager.startBackgroundMusic(); }; } public static function playMachineGun():void{ var _local1:SoundChannel; if (((OrbBlaster.soundStatus) && (!(OrbBlaster.isWiping)))){ if (OrbBlaster.hero.type == 0){ _local1 = SoundManager.shoot.play(); } else { _local1 = SoundManager.f_shoot1.play(); }; }; } public static function playMobShot0():void{ var _local1:SoundChannel; if (OrbBlaster.soundStatus){ _local1 = SoundManager.laserShot.play(); }; } public static function startBackgroundMusic():void{ if (OrbBlaster.musicStatus){ SoundManager.bgMusicPosition = 0; SoundManager.playBackgroundMusic(0); if (SoundManager.bgMusicChannel != null){ SoundManager.bgMusicChannel.addEventListener(Event.SOUND_COMPLETE, loopBackgroundMusic); }; }; } public static function playShipFire():void{ } public static function playBoo():void{ var _local1:SoundChannel; if (OrbBlaster.soundStatus){ _local1 = SoundManager.jdescend.play(); }; } public static function playCheer():void{ var _local1:uint; var _local2:SoundChannel; if (OrbBlaster.soundStatus){ _local1 = Math.floor(OrbBlaster.random(0, 2)); switch (_local1){ case 0: _local2 = SoundManager.cheer.play(); break; case 1: _local2 = SoundManager.cheer1.play(); break; default: _local2 = SoundManager.cheer.play(); }; }; } public static function playClick0():void{ var _local1:SoundChannel; if (OrbBlaster.soundStatus){ _local1 = SoundManager.click0.play(); }; } } }//package
Section 162
//Spawner (Spawner) package { import flash.events.*; import flash.geom.*; import flash.utils.*; public class Spawner { public var mobMultIncr:Number; public var mobMult:Number; public var spawnCount:int; public var mobPackagesArr:Array; public var curLevel:uint;// = 0 public var spawnInterval:int;// = 0 public var mobSpawnTimer:Timer; public var spawnCycles:int; public function Spawner(){ curLevel = 0; spawnInterval = 0; super(); this.mobSpawnTimer = new Timer(100, 0); this.mobSpawnTimer.addEventListener(TimerEvent.TIMER, spawnMob); } public function stop():void{ this.mineSpawnTimer.stop(); } public function spawnMob(_arg1:TimerEvent):void{ var _local2:int; var _local3:MobPackage; var _local4:Boolean; var _local5:int; var _local6:Array; var _local7:int; var _local8:int; var _local9:int; var _local10:int; var _local11:int; var _local12:int; var _local13:Point; if (this.spawnCount >= this.spawnCycles){ this.mobSpawnTimer.stop(); if (OrbBlaster.objMgr.getMobs().numChildren == 0){ OrbBlaster.levelComplete(); }; return; }; _local2 = int(OrbBlaster.random(0, this.mobPackagesArr.length)); _local3 = MobPackage.normalPackages[this.mobPackagesArr[_local2]]; _local4 = _local3.isCluster; _local5 = (OrbBlaster.random(_local3.amountMin, _local3.amountMax) * this.mobMult); _local6 = _local3.locations; _local7 = _local6.length; _local8 = int(OrbBlaster.random(0, _local3.types.length)); _local9 = _local3.types[_local8]; _local10 = 0; _local11 = 0; if (_local4){ _local12 = _local6[int(OrbBlaster.random(0, _local7))]; _local11 = 0; while (_local11 < _local5) { _local13 = this.getMobPosition(_local12); OrbBlaster.objMgr.addMob(_local9, _local13.x, _local13.y, _local10); _local10 = (_local10 + 3); _local11++; }; } else { _local11 = 0; while (_local11 < _local5) { _local12 = _local6[int(OrbBlaster.random(0, _local7))]; _local13 = this.getMobPosition(_local12); OrbBlaster.objMgr.addMob(_local9, _local13.x, _local13.y, _local10); _local10 = (_local10 + 3); _local11++; }; }; this.spawnCount++; this.mobSpawnTimer.delay = (_local3.rating * this.spawnInterval); this.mobMult = (this.mobMult + this.mobMultIncr); trace(this.mobMult); } public function spawnLevel(_arg1:int):void{ var _local2:Number; var _local3:int; OrbBlaster.mobsSpawned = 0; OrbBlaster.objMgr.mobCount = 0; OrbBlaster.framesPassed = 0; this.spawnCount = 0; OrbBlaster.newBackground(1); OrbBlaster.prevPoints = OrbBlaster.totalPoints; _local2 = 1.15; if (_arg1 == 1000){ this.mobPackagesArr = [30]; this.spawnInterval = 1650; this.spawnCycles = 35; this.mobMult = 1; this.mobMultIncr = 0.1; } else { if (_arg1 == 1){ this.mobPackagesArr = [0, 1]; this.spawnInterval = 1750; this.spawnCycles = 14; this.mobMult = 1; this.mobMultIncr = 0; } else { if (_arg1 == 2){ this.mobPackagesArr = [2, 3]; this.spawnInterval = 1750; this.spawnCycles = 14; this.mobMult = 1; this.mobMultIncr = 0; } else { if (_arg1 == 3){ this.mobPackagesArr = [1, 4, 5]; this.spawnInterval = 1750; this.spawnCycles = 14; this.mobMult = 1; this.mobMultIncr = 0.03; } else { if (_arg1 == 4){ this.mobPackagesArr = [10, 11, 12]; this.spawnInterval = 1650; this.spawnCycles = 17; this.mobMult = 1; this.mobMultIncr = 0.01; } else { if (_arg1 == 5){ this.mobPackagesArr = [20, 21, 22]; this.spawnInterval = 1650; this.spawnCycles = 20; this.mobMult = 1.15; this.mobMultIncr = 0.01; } else { if (_arg1 == 6){ this.mobPackagesArr = [30, 31, 32]; this.spawnInterval = 1650; this.spawnCycles = 20; this.mobMult = 1.3225; this.mobMultIncr = 0.01; } else { if (_arg1 == 7){ this.mobPackagesArr = [40, 41, 42]; this.spawnInterval = 1500; this.spawnCycles = 22; this.mobMult = 1.42; this.mobMultIncr = 0.02; } else { if (_arg1 == 8){ if (Math.floor(OrbBlaster.random(0, 2)) == 0){ this.mobPackagesArr = [50]; } else { this.mobPackagesArr = [51]; }; this.spawnInterval = 1300; this.spawnCycles = 20; this.mobMult = 1.52; this.mobMultIncr = 0.15; } else { if (((_arg1 - 9) % 6) == 0){ trace("mod 0"); this.mobPackagesArr = [10, 11, 12, 13]; this.spawnInterval = 1650; this.spawnCycles = 22; this.mobMult = this.getMobMult(_arg1); this.mobMultIncr = 0.01; } else { if (((_arg1 - 9) % 6) == 1){ trace("mod 1"); this.mobPackagesArr = [20, 21, 22, 23, 24]; this.spawnInterval = 1650; this.spawnCycles = 22; this.mobMult = this.getMobMult(_arg1); this.mobMultIncr = 0.01; } else { if (((_arg1 - 9) % 6) == 2){ trace("mod 2"); this.mobPackagesArr = [30, 31, 32, 33]; this.spawnInterval = 1750; this.spawnCycles = 17; this.mobMult = this.getMobMult(_arg1); this.mobMultIncr = 0.01; } else { if (((_arg1 - 9) % 6) == 3){ trace("mod 3"); this.mobPackagesArr = [40, 41, 42, 43]; this.spawnInterval = 1400; this.spawnCycles = 21; this.mobMult = this.getMobMult(_arg1); this.mobMultIncr = 0.04; } else { if (((_arg1 - 9) % 6) == 4){ trace("mod 4"); this.mobPackagesArr = [20, 21, 22, 23, 24, 31]; this.spawnInterval = 1650; this.spawnCycles = 20; this.mobMult = this.getMobMult(_arg1); this.mobMultIncr = 0.01; } else { if (((_arg1 - 9) % 6) == 5){ trace("mod 5"); _local3 = Math.floor(OrbBlaster.random(0, 3)); switch (_local3){ case 0: this.mobPackagesArr = [50, 50, 50, 50, 53]; break; case 1: this.mobPackagesArr = [51, 51, 51, 51, 53]; break; case 2: this.mobPackagesArr = [52, 52, 52, 52, 53]; break; }; this.spawnInterval = 1350; this.spawnCycles = 17; this.mobMult = this.getMobMult(_arg1); this.mobMultIncr = 0.15; }; }; }; }; }; }; }; }; }; }; }; }; }; }; }; trace(((((("Level: " + _arg1) + " | mobMult: ") + this.mobMult) + " | mobMultIncr : ") + this.mobMultIncr)); this.mobSpawnTimer.delay = 1500; this.mobSpawnTimer.start(); } public function wipe():void{ OrbBlaster.objMgr.wipe(); } public function getMobPosition(_arg1:int):Point{ var _local2:Point; var _local3:Number; var _local4:Number; switch (_arg1){ case 0: _local2 = new Point(55, 60); break; case 1: _local2 = new Point(325, 60); break; case 2: _local2 = new Point(585, 60); break; case 3: _local2 = new Point(45, 225); break; case 4: _local2 = new Point(600, 225); break; case 5: _local2 = new Point(55, 375); break; case 6: _local2 = new Point(325, 375); break; case 7: _local2 = new Point(585, 375); break; case 8: _local2 = new Point(OrbBlaster.random(70, 590), OrbBlaster.random(65, 370)); return (_local2); case 9: _local3 = OrbBlaster.random(-3.14, 3.14); _local4 = 200; _local2 = new Point((OrbBlaster.CENTER_X + (_local4 * Math.cos(_local3))), (OrbBlaster.CENTER_Y + (_local4 * Math.sin(_local3)))); return (_local2); default: _local2 = new Point(35, 30); }; _local2.offset(OrbBlaster.random(-45, 45), OrbBlaster.random(-45, 45)); return (_local2); } public function getGeneralLocation(_arg1:Number):Point{ } public function update():void{ } public function getMobMult(_arg1:int):Number{ var _local2:Number; _local2 = ((1.442709893 * Math.log((_arg1 - 8))) + 1.05831257); if (_arg1 >= 16){ _local2 = (_local2 + (0.01 * _arg1)); } else { if (_arg1 >= 24){ _local2 = (_local2 + (0.015 * _arg1)); } else { if (_arg1 >= 36){ _local2 = (_local2 + (0.02 * _arg1)); }; }; }; return (_local2); } public function isSpawnedMax():Boolean{ return ((OrbBlaster.mobsSpawned >= OrbBlaster.killsGoal)); } } }//package
Section 163
//Spawning0 (Spawning0) package { import flash.display.*; public dynamic class Spawning0 extends MovieClip { } }//package
Section 164
//StatsScreen (StatsScreen) package { import flash.display.*; import flash.text.*; public dynamic class StatsScreen extends MovieClip { public var bestScore:TextField; public var totalPoints:TextField; public var feats:TextField; public var totalCredits:TextField; public var highestWave:TextField; public var mobsKilled:TextField; public var statsBackButton:SimpleButton; } }//package
Section 165
//TestExplosion (TestExplosion) package { public class TestExplosion extends Explosion { public function TestExplosion():void{ addFrameScript(0, frame1, 3, frame4); super(0, 0); this.type = Explosion.MINE_1; this.pruneRadius = 50; this.damage = 10; } function frame4(){ trace(this.width); stop(); } function frame1(){ trace(this.width); } } }//package
Section 166
//TimerBar (TimerBar) package { import flash.display.*; import flash.text.*; public dynamic class TimerBar extends MovieClip { public var timeLeft:TextField; } }//package
Section 167
//Trail0_Base (Trail0_Base) package { import flash.display.*; public dynamic class Trail0_Base extends MovieClip { } }//package
Section 168
//Trail1_Base (Trail1_Base) package { import flash.display.*; public dynamic class Trail1_Base extends MovieClip { } }//package
Section 169
//TutorialHint (TutorialHint) package { import flash.events.*; import flash.display.*; import flash.geom.*; import flash.utils.*; import flash.media.*; import flash.system.*; import flash.text.*; import flash.net.*; import flash.errors.*; import flash.accessibility.*; import flash.filters.*; import flash.ui.*; public dynamic class TutorialHint extends MovieClip { public var hintFire:MovieClip; public var hintBomb:MovieClip; public function TutorialHint(){ addFrameScript(0, frame1, 1, frame2, 2, frame3); } function frame3(){ this.gotoAndPlay(2); } function frame1(){ this.y = 100; OrbBlaster.tutorialCounter = 0; this.hintFire.visible = false; this.hintBomb.visible = false; this.hintFire.x = 0; this.hintFire.y = 0; this.hintBomb.x = 0; this.hintBomb.y = 0; OrbBlaster.tutorialEfx = this; } function frame2(){ if ((((OrbBlaster.tutorialCounter >= 40)) && ((OrbBlaster.tutorialCounter < 130)))){ this.hintFire.visible = true; } else { this.hintFire.visible = false; }; if ((((OrbBlaster.tutorialCounter >= 155)) && ((OrbBlaster.tutorialCounter < 265)))){ this.hintBomb.visible = true; } else { this.hintBomb.visible = false; }; if (OrbBlaster.tutorialCounter > 300){ if (this.parent != null){ this.parent.removeChild(this); }; this.stop(); } else { if (OrbBlaster.pause != true){ OrbBlaster.tutorialCounter++; }; this.gotoAndPlay(2); }; } } }//package
Section 170
//UpgradeButton (UpgradeButton) package { import flash.events.*; public class UpgradeButton { public function UpgradeButton():void{ } public static function upgradeBombDown(_arg1:MouseEvent):void{ OrbBlaster.upgradeScreen.bombCost.x = (OrbBlaster.upgradeScreen.bombCost.x - 6); OrbBlaster.upgradeScreen.bombCost.y = (OrbBlaster.upgradeScreen.bombCost.y + 10); } public static function upgradeWeaponDown(_arg1:MouseEvent):void{ OrbBlaster.upgradeScreen.weaponCost.x = (OrbBlaster.upgradeScreen.weaponCost.x - 6); OrbBlaster.upgradeScreen.weaponCost.y = (OrbBlaster.upgradeScreen.weaponCost.y + 10); } public static function upgradeSpeedOut(_arg1:MouseEvent):void{ if (_arg1.buttonDown){ OrbBlaster.upgradeScreen.speedCost.x = -37.3; OrbBlaster.upgradeScreen.speedCost.y = -61.5; }; } public static function setupEvents():void{ OrbBlaster.upgradeScreen.weapon.addEventListener(MouseEvent.MOUSE_UP, upgradeWeaponUp); OrbBlaster.upgradeScreen.weapon.addEventListener(MouseEvent.MOUSE_DOWN, upgradeWeaponDown); OrbBlaster.upgradeScreen.weapon.addEventListener(MouseEvent.MOUSE_OUT, upgradeWeaponOut); OrbBlaster.upgradeScreen.speed.addEventListener(MouseEvent.MOUSE_UP, upgradeSpeedUp); OrbBlaster.upgradeScreen.speed.addEventListener(MouseEvent.MOUSE_DOWN, upgradeSpeedDown); OrbBlaster.upgradeScreen.speed.addEventListener(MouseEvent.MOUSE_OUT, upgradeSpeedOut); OrbBlaster.upgradeScreen.life.addEventListener(MouseEvent.MOUSE_UP, upgradeLifeUp); OrbBlaster.upgradeScreen.life.addEventListener(MouseEvent.MOUSE_DOWN, upgradeLifeDown); OrbBlaster.upgradeScreen.life.addEventListener(MouseEvent.MOUSE_OUT, upgradeLifeOut); OrbBlaster.upgradeScreen.bomb.addEventListener(MouseEvent.MOUSE_UP, upgradeBombUp); OrbBlaster.upgradeScreen.bomb.addEventListener(MouseEvent.MOUSE_DOWN, upgradeBombDown); OrbBlaster.upgradeScreen.bomb.addEventListener(MouseEvent.MOUSE_OUT, upgradeBombOut); OrbBlaster.upgradeScreen.points.addEventListener(MouseEvent.MOUSE_UP, upgradePointsUp); OrbBlaster.upgradeScreen.points.addEventListener(MouseEvent.MOUSE_DOWN, upgradePointsDown); OrbBlaster.upgradeScreen.points.addEventListener(MouseEvent.MOUSE_OUT, upgradePointsOut); } public static function upgradeSpeedUp(_arg1:MouseEvent):void{ OrbBlaster.upgradeScreen.speedCost.x = -37.3; OrbBlaster.upgradeScreen.speedCost.y = -61.5; } public static function upgradePointsDown(_arg1:MouseEvent):void{ OrbBlaster.upgradeScreen.pointsCost.x = (OrbBlaster.upgradeScreen.pointsCost.x - 6); OrbBlaster.upgradeScreen.pointsCost.y = (OrbBlaster.upgradeScreen.pointsCost.y + 10); } public static function upgradePointsUp(_arg1:MouseEvent):void{ OrbBlaster.upgradeScreen.pointsCost.x = 20.9; OrbBlaster.upgradeScreen.pointsCost.y = 46; } public static function upgradeWeaponUp(_arg1:MouseEvent):void{ OrbBlaster.upgradeScreen.weaponCost.x = -152.5; OrbBlaster.upgradeScreen.weaponCost.y = -61.5; } public static function upgradeSpeedDown(_arg1:MouseEvent):void{ OrbBlaster.upgradeScreen.speedCost.x = (OrbBlaster.upgradeScreen.speedCost.x - 6); OrbBlaster.upgradeScreen.speedCost.y = (OrbBlaster.upgradeScreen.speedCost.y + 10); } public static function upgradePointsOut(_arg1:MouseEvent):void{ if (_arg1.buttonDown){ OrbBlaster.upgradeScreen.pointsCost.x = 20.9; OrbBlaster.upgradeScreen.pointsCost.y = 46; }; } public static function upgradeBombOut(_arg1:MouseEvent):void{ if (_arg1.buttonDown){ OrbBlaster.upgradeScreen.bombCost.x = -95.1; OrbBlaster.upgradeScreen.bombCost.y = 46; }; } public static function upgradeLifeUp(_arg1:MouseEvent):void{ OrbBlaster.upgradeScreen.lifeCost.x = 77.1; OrbBlaster.upgradeScreen.lifeCost.y = -61.5; } public static function upgradeWeaponOut(_arg1:MouseEvent):void{ if (_arg1.buttonDown){ OrbBlaster.upgradeScreen.weaponCost.x = -152.5; OrbBlaster.upgradeScreen.weaponCost.y = -61.5; }; } public static function upgradeBombUp(_arg1:MouseEvent):void{ OrbBlaster.upgradeScreen.bombCost.x = -95.1; OrbBlaster.upgradeScreen.bombCost.y = 46; } public static function upgradeLifeDown(_arg1:MouseEvent):void{ OrbBlaster.upgradeScreen.lifeCost.x = (OrbBlaster.upgradeScreen.lifeCost.x - 6); OrbBlaster.upgradeScreen.lifeCost.y = (OrbBlaster.upgradeScreen.lifeCost.y + 10); } public static function upgradeLifeOut(_arg1:MouseEvent):void{ if (_arg1.buttonDown){ OrbBlaster.upgradeScreen.lifeCost.x = 77.1; OrbBlaster.upgradeScreen.lifeCost.y = -61.5; }; } } }//package
Section 171
//UpgradeScreen (UpgradeScreen) package { import flash.display.*; import flash.text.*; public dynamic class UpgradeScreen extends MovieClip { public var points:SimpleButton; public var weaponCost:TextField; public var life:SimpleButton; public var weapon:SimpleButton; public var nextButton:SimpleButton; public var pointsCost:TextField; public var speed:SimpleButton; public var weaponCover:MovieClip; public var credits:TextField; public var bombCost:TextField; public var bomb:SimpleButton; public var speedCover:MovieClip; public var speedCost:TextField; public var lifeCost:TextField; } }//package
Section 172
//wipeExplosionBase (wipeExplosionBase) package { import flash.display.*; public dynamic class wipeExplosionBase extends MovieClip { } }//package

Library Items

Symbol 1 Sound {Music_Background}Used by:542
Symbol 2 Bitmap {fireball3}
Symbol 3 GraphicUsed by:4
Symbol 4 MovieClip {Mob0_Sprite}Uses:3
Symbol 5 GraphicUsed by:6
Symbol 6 MovieClip {Destroyer0}Uses:5
Symbol 7 GraphicUsed by:8 13
Symbol 8 MovieClip {Destroyer4}Uses:7
Symbol 9 GraphicUsed by:10
Symbol 10 MovieClip {Destroyer3}Uses:9
Symbol 11 GraphicUsed by:12
Symbol 12 MovieClip {Destroyer2}Uses:11
Symbol 13 MovieClip {Destroyer1}Uses:7
Symbol 14 GraphicUsed by:15
Symbol 15 MovieClip {Eyeball0}Uses:14
Symbol 16 GraphicUsed by:20
Symbol 17 GraphicUsed by:20
Symbol 18 GraphicUsed by:20
Symbol 19 GraphicUsed by:20
Symbol 20 MovieClip {TestExplosion}Uses:16 17 18 19
Symbol 21 ShapeTweeningUsed by:28
Symbol 22 FontUsed by:23 30 382 384 387 391 395
Symbol 23 TextUses:22Used by:28
Symbol 24 ShapeTweeningUsed by:28
Symbol 25 GraphicUsed by:28 34 44
Symbol 26 ShapeTweeningUsed by:28
Symbol 27 ShapeTweeningUsed by:28
Symbol 28 MovieClip {Powerup_RapidBomb}Uses:21 23 24 25 26 27
Symbol 29 ShapeTweeningUsed by:34
Symbol 30 TextUses:22Used by:34
Symbol 31 ShapeTweeningUsed by:34
Symbol 32 ShapeTweeningUsed by:34
Symbol 33 ShapeTweeningUsed by:34
Symbol 34 MovieClip {Powerup_RapidFire}Uses:29 30 31 25 32 33
Symbol 35 BitmapUsed by:36
Symbol 36 GraphicUses:35Used by:37
Symbol 37 MovieClip {Powerup_Life}Uses:36
Symbol 38 ShapeTweeningUsed by:44
Symbol 39 FontUsed by:40 174 175 177 178
Symbol 40 TextUses:39Used by:44
Symbol 41 ShapeTweeningUsed by:44
Symbol 42 ShapeTweeningUsed by:44
Symbol 43 ShapeTweeningUsed by:44
Symbol 44 MovieClip {Powerup_Life3}Uses:38 40 41 25 42 43
Symbol 45 GraphicUsed by:48
Symbol 46 GraphicUsed by:48
Symbol 47 GraphicUsed by:48
Symbol 48 Button {PauseButton}Uses:45 46 47
Symbol 49 GraphicUsed by:52
Symbol 50 FontUsed by:51 54 218 220 240 284 287 290 293 310 320 321 346 347 408
Symbol 51 TextUses:50Used by:52
Symbol 52 MovieClipUses:49 51Used by:56
Symbol 53 GraphicUsed by:55
Symbol 54 TextUses:50Used by:55
Symbol 55 MovieClipUses:53 54Used by:56
Symbol 56 MovieClip {TutorialHint}Uses:52 55
Symbol 57 GraphicUsed by:64 125 441
Symbol 58 ShapeTweeningUsed by:64
Symbol 59 GraphicUsed by:64
Symbol 60 ShapeTweeningUsed by:64
Symbol 61 ShapeTweeningUsed by:64
Symbol 62 ShapeTweeningUsed by:64
Symbol 63 GraphicUsed by:64
Symbol 64 MovieClip {bit_explosion1}Uses:57 58 59 60 61 62 63Used by:521
Symbol 65 MovieClip {com.kongregate.as3.client.KongregateAPI}
Symbol 66 BitmapUsed by:67
Symbol 67 GraphicUses:66Used by:70
Symbol 68 BitmapUsed by:69
Symbol 69 GraphicUses:68Used by:70
Symbol 70 MovieClipUses:67 69Used by:102
Symbol 71 BitmapUsed by:72
Symbol 72 GraphicUses:71Used by:75
Symbol 73 BitmapUsed by:74
Symbol 74 GraphicUses:73Used by:75 95
Symbol 75 MovieClipUses:72 74Used by:102
Symbol 76 GraphicUsed by:94
Symbol 77 GraphicUsed by:94
Symbol 78 BitmapUsed by:79
Symbol 79 GraphicUses:78Used by:94
Symbol 80 BitmapUsed by:81
Symbol 81 GraphicUses:80Used by:94
Symbol 82 BitmapUsed by:83
Symbol 83 GraphicUses:82Used by:94
Symbol 84 BitmapUsed by:85
Symbol 85 GraphicUses:84Used by:94
Symbol 86 BitmapUsed by:87
Symbol 87 GraphicUses:86Used by:94
Symbol 88 BitmapUsed by:89
Symbol 89 GraphicUses:88Used by:94
Symbol 90 BitmapUsed by:91
Symbol 91 GraphicUses:90Used by:94
Symbol 92 BitmapUsed by:93
Symbol 93 GraphicUses:92Used by:94
Symbol 94 MovieClip {GogIntro_fla.Poof_4}Uses:76 77 79 81 83 85 87 89 91 93Used by:102
Symbol 95 MovieClipUses:74Used by:102
Symbol 96 GraphicUsed by:101
Symbol 97 GraphicUsed by:101
Symbol 98 FontUsed by:99
Symbol 99 TextUses:98Used by:100
Symbol 100 ButtonUses:99Used by:101
Symbol 101 MovieClip {GogIntro_fla.DoogogBanner_6}Uses:96 97 100Used by:102
Symbol 102 MovieClip {GogIntro}Uses:70 75 94 95 101 SS1Used by:Timeline
Symbol 103 ShapeTweeningUsed by:109
Symbol 104 ShapeTweeningUsed by:109
Symbol 105 ShapeTweeningUsed by:109
Symbol 106 ShapeTweeningUsed by:109
Symbol 107 ShapeTweeningUsed by:109
Symbol 108 GraphicUsed by:109
Symbol 109 MovieClipUses:103 104 105 106 107 108Used by:Timeline
Symbol 110 GraphicUsed by:111
Symbol 111 MovieClipUses:110Used by:Timeline
Symbol 112 FontUsed by:113 522
Symbol 113 TextUses:112Used by:521
Symbol 114 GraphicUsed by:115 126
Symbol 115 MovieClip {Proj_Explosion0_Base}Uses:114Used by:521
Symbol 116 GraphicUsed by:117
Symbol 117 MovieClip {Trail0_Base}Uses:116Used by:521
Symbol 118 ShapeTweeningUsed by:120
Symbol 119 GraphicUsed by:120
Symbol 120 MovieClip {Trail1_Base}Uses:118 119Used by:521
Symbol 121 ShapeTweeningUsed by:125
Symbol 122 GraphicUsed by:125
Symbol 123 ShapeTweeningUsed by:125
Symbol 124 GraphicUsed by:125
Symbol 125 MovieClip {wipeExplosionBase}Uses:57 121 122 123 124Used by:521
Symbol 126 MovieClip {Explosion_Proj2}Uses:114Used by:521
Symbol 127 GraphicUsed by:133
Symbol 128 FontUsed by:129 158 161 169 171 182 183 201 202 204 205 207 208 233 234 236 237 283 295 296 302 303 306 307 314 315 317 318 324 327 334 335 337 338 340 341 343 344 348 349 354 355 357 358 407
Symbol 129 TextUses:128Used by:133
Symbol 130 FontUsed by:131
Symbol 131 EditableTextUses:130Used by:133
Symbol 132 GraphicUsed by:133
Symbol 133 MovieClip {LevelNumber}Uses:127 129 131 132Used by:521
Symbol 134 GraphicUsed by:140 146
Symbol 135 ShapeTweeningUsed by:140
Symbol 136 GraphicUsed by:140
Symbol 137 ShapeTweeningUsed by:140
Symbol 138 ShapeTweeningUsed by:140
Symbol 139 GraphicUsed by:140
Symbol 140 MovieClipUses:134 135 136 137 138 139Used by:147
Symbol 141 ShapeTweeningUsed by:146
Symbol 142 GraphicUsed by:146
Symbol 143 ShapeTweeningUsed by:146
Symbol 144 ShapeTweeningUsed by:146
Symbol 145 GraphicUsed by:146
Symbol 146 MovieClipUses:134 141 142 143 144 145Used by:147
Symbol 147 MovieClip {ShieldBlast}Uses:140 146Used by:521
Symbol 148 GraphicUsed by:164
Symbol 149 FontUsed by:150 166 167 188 199 222 224 226 228 268 269 271 277 333 353 362 377 378 403
Symbol 150 TextUses:149Used by:164
Symbol 151 FontUsed by:153 154 155 156 301 363 364 365 366 367 368
Symbol 152 FontUsed by:153 154 155 156 189
Symbol 153 TextUses:151 152Used by:164
Symbol 154 TextUses:151 152Used by:164
Symbol 155 TextUses:151 152Used by:164
Symbol 156 TextUses:151 152Used by:164
Symbol 157 GraphicUsed by:163 184 203 206 209 297
Symbol 158 TextUses:128Used by:163
Symbol 159 GraphicUsed by:163 184 203 206 209 297
Symbol 160 GraphicUsed by:163 184 203 206 209 235 238 297
Symbol 161 TextUses:128Used by:163
Symbol 162 GraphicUsed by:163 184 203 206 209 235 238 297
Symbol 163 ButtonUses:157 158 159 160 161 162Used by:164
Symbol 164 MovieClip {ControlsScreen}Uses:148 150 153 154 155 156 163Used by:521
Symbol 165 GraphicUsed by:180
Symbol 166 TextUses:149Used by:180
Symbol 167 TextUses:149Used by:180
Symbol 168 GraphicUsed by:173 215 304 308 316 319
Symbol 169 TextUses:128Used by:173 215
Symbol 170 GraphicUsed by:173 215 304 308 316 319
Symbol 171 TextUses:128Used by:173 215
Symbol 172 GraphicUsed by:173 215 304 308 316 319
Symbol 173 ButtonUses:168 169 170 171 172Used by:180
Symbol 174 TextUses:39Used by:176
Symbol 175 TextUses:39Used by:176
Symbol 176 ButtonUses:174 175Used by:180
Symbol 177 TextUses:39Used by:179
Symbol 178 TextUses:39Used by:179
Symbol 179 ButtonUses:177 178Used by:180
Symbol 180 MovieClip {CreditsScreen}Uses:165 166 167 173 176 179Used by:521
Symbol 181 GraphicUsed by:190
Symbol 182 TextUses:128Used by:184
Symbol 183 TextUses:128Used by:184
Symbol 184 ButtonUses:157 182 159 160 183 162Used by:190
Symbol 185 GraphicUsed by:190
Symbol 186 GraphicUsed by:187
Symbol 187 MovieClipUses:186Used by:190
Symbol 188 TextUses:149Used by:190
Symbol 189 TextUses:152Used by:190
Symbol 190 MovieClip {FeatsCompleteScreen}Uses:181 184 185 187 188 189Used by:521
Symbol 191 GraphicUsed by:197
Symbol 192 FontUsed by:193 194
Symbol 193 EditableTextUses:192Used by:197
Symbol 194 EditableTextUses:192Used by:197
Symbol 195 GraphicUsed by:196
Symbol 196 MovieClipUses:195Used by:197
Symbol 197 MovieClip {FeatBar}Uses:191 193 194 196Used by:521
Symbol 198 GraphicUsed by:216
Symbol 199 TextUses:149Used by:216
Symbol 200 GraphicUsed by:216
Symbol 201 TextUses:128Used by:203
Symbol 202 TextUses:128Used by:203 211
Symbol 203 ButtonUses:157 201 159 160 202 162Used by:216
Symbol 204 TextUses:128Used by:206
Symbol 205 TextUses:128Used by:206 214
Symbol 206 ButtonUses:157 204 159 160 205 162Used by:216
Symbol 207 TextUses:128Used by:209
Symbol 208 TextUses:128Used by:209 212
Symbol 209 ButtonUses:157 207 159 160 208 162Used by:216
Symbol 210 GraphicUsed by:211 212
Symbol 211 MovieClipUses:210 202Used by:216
Symbol 212 MovieClipUses:210 208Used by:216
Symbol 213 GraphicUsed by:214
Symbol 214 MovieClipUses:213 205Used by:216
Symbol 215 ButtonUses:168 169 170 171 172Used by:216 375
Symbol 216 MovieClip {FeatsScreen}Uses:198 199 200 203 206 209 211 212 214 215Used by:521
Symbol 217 GraphicUsed by:241
Symbol 218 TextUses:50Used by:219
Symbol 219 MovieClipUses:218Used by:241
Symbol 220 TextUses:50Used by:221
Symbol 221 MovieClipUses:220Used by:241
Symbol 222 TextUses:149Used by:223
Symbol 223 MovieClipUses:222Used by:241
Symbol 224 TextUses:149Used by:225
Symbol 225 MovieClipUses:224Used by:241
Symbol 226 TextUses:149Used by:227
Symbol 227 MovieClipUses:226Used by:241
Symbol 228 TextUses:149Used by:229
Symbol 229 MovieClipUses:228Used by:241 412
Symbol 230 FontUsed by:231 266
Symbol 231 EditableTextUses:230Used by:241
Symbol 232 GraphicUsed by:235 238
Symbol 233 TextUses:128Used by:235
Symbol 234 TextUses:128Used by:235
Symbol 235 ButtonUses:232 233 160 234 162Used by:241
Symbol 236 TextUses:128Used by:238
Symbol 237 TextUses:128Used by:238
Symbol 238 ButtonUses:232 236 160 237 162Used by:241
Symbol 239 GraphicUsed by:241
Symbol 240 EditableTextUses:50Used by:241
Symbol 241 MovieClip {ScoreSubmitScreen}Uses:217 219 221 223 225 227 229 231 235 238 239 240Used by:521
Symbol 242 GraphicUsed by:259
Symbol 243 GraphicUsed by:248 251 383 385 389 392 396
Symbol 244 GraphicUsed by:246 248 275 385 392 414
Symbol 245 GraphicUsed by:248 251 383 385 389 392 396
Symbol 246 MovieClipUses:244Used by:248
Symbol 247 GraphicUsed by:248 251 383 385 389 392 396
Symbol 248 ButtonUses:243 244 245 246 247Used by:259
Symbol 249 GraphicUsed by:250 251 276 414
Symbol 250 MovieClipUses:249Used by:251
Symbol 251 ButtonUses:243 249 245 250 247Used by:259
Symbol 252 GraphicUsed by:258
Symbol 253 FontUsed by:254 257
Symbol 254 TextUses:253Used by:258 331
Symbol 255 GraphicUsed by:258
Symbol 256 GraphicUsed by:258
Symbol 257 TextUses:253Used by:258 331
Symbol 258 MovieClip {ZunderFury_fla.HeroNames_47}Uses:252 254 255 256 257Used by:259
Symbol 259 MovieClip {HeroSelectionScreen}Uses:242 248 251 258Used by:521
Symbol 260 FontUsed by:261 262 268 269 271 277 369 370 371 372 373 374 393 394
Symbol 261 TextUses:260Used by:263
Symbol 262 EditableTextUses:260Used by:263
Symbol 263 MovieClip {BestScoreBar}Uses:261 262Used by:521
Symbol 264 GraphicUsed by:267
Symbol 265 FontUsed by:266 280 285 286 288 289 291 292 294 410 411
Symbol 266 EditableTextUses:230 265Used by:267
Symbol 267 MovieClip {FpsCounter}Uses:264 266Used by:521
Symbol 268 EditableTextUses:149 260Used by:270
Symbol 269 EditableTextUses:149 260Used by:270
Symbol 270 MovieClip {ScoreBar}Uses:268 269Used by:521
Symbol 271 EditableTextUses:149 260Used by:274
Symbol 272 GraphicUsed by:273
Symbol 273 MovieClipUses:272Used by:274
Symbol 274 MovieClip {BombBar}Uses:271 273Used by:521
Symbol 275 MovieClipUses:244Used by:278
Symbol 276 MovieClipUses:249Used by:278
Symbol 277 EditableTextUses:149 260Used by:278
Symbol 278 MovieClip {LifeBar}Uses:275 276 277Used by:521
Symbol 279 GraphicUsed by:281
Symbol 280 EditableTextUses:265Used by:281
Symbol 281 MovieClip {TimerBar}Uses:279 280Used by:521
Symbol 282 GraphicUsed by:298
Symbol 283 TextUses:128Used by:298
Symbol 284 TextUses:50Used by:298
Symbol 285 EditableTextUses:265Used by:298
Symbol 286 EditableTextUses:265Used by:298
Symbol 287 TextUses:50Used by:298
Symbol 288 EditableTextUses:265Used by:298
Symbol 289 EditableTextUses:265Used by:298
Symbol 290 TextUses:50Used by:298
Symbol 291 EditableTextUses:265Used by:298
Symbol 292 EditableTextUses:265Used by:298
Symbol 293 TextUses:50Used by:298
Symbol 294 EditableTextUses:265Used by:298
Symbol 295 TextUses:128Used by:297
Symbol 296 TextUses:128Used by:297
Symbol 297 ButtonUses:157 295 159 160 296 162Used by:298 405
Symbol 298 MovieClip {LevelStatsScreen}Uses:282 283 284 285 286 287 288 289 290 291 292 293 294 297Used by:521
Symbol 299 GraphicUsed by:300
Symbol 300 MovieClipUses:299Used by:331
Symbol 301 EditableTextUses:151Used by:331
Symbol 302 TextUses:128Used by:304
Symbol 303 TextUses:128Used by:304
Symbol 304 ButtonUses:168 302 170 303 172Used by:331
Symbol 305 GraphicUsed by:331
Symbol 306 TextUses:128Used by:308
Symbol 307 TextUses:128Used by:308
Symbol 308 ButtonUses:168 306 170 307 172Used by:331
Symbol 309 GraphicUsed by:313 322 336 339 342 345 350 356 359
Symbol 310 TextUses:50Used by:313
Symbol 311 GraphicUsed by:313 322 336 339 342 345 350 356 359
Symbol 312 GraphicUsed by:313 322 336 339 342 345 350 356 359
Symbol 313 ButtonUses:309 310 311 312Used by:331
Symbol 314 TextUses:128Used by:316
Symbol 315 TextUses:128Used by:316
Symbol 316 ButtonUses:168 314 170 315 172Used by:331
Symbol 317 TextUses:128Used by:319
Symbol 318 TextUses:128Used by:319
Symbol 319 ButtonUses:168 317 170 318 172Used by:331
Symbol 320 EditableTextUses:50Used by:331
Symbol 321 TextUses:50Used by:322
Symbol 322 ButtonUses:309 321 311 312Used by:331
Symbol 323 GraphicUsed by:330
Symbol 324 TextUses:128Used by:330
Symbol 325 GraphicUsed by:330
Symbol 326 GraphicUsed by:330
Symbol 327 TextUses:128Used by:330
Symbol 328 GraphicUsed by:330
Symbol 329 GraphicUsed by:330
Symbol 330 ButtonUses:323 324 325 326 327 328 329Used by:331
Symbol 331 MovieClip {MainMenu}Uses:300 301 304 305 254 257 308 313 316 319 320 322 330Used by:521
Symbol 332 GraphicUsed by:351
Symbol 333 TextUses:149Used by:351
Symbol 334 TextUses:128Used by:336
Symbol 335 TextUses:128Used by:336
Symbol 336 ButtonUses:309 334 311 335 312Used by:351
Symbol 337 TextUses:128Used by:339
Symbol 338 TextUses:128Used by:339
Symbol 339 ButtonUses:309 337 311 338 312Used by:351
Symbol 340 TextUses:128Used by:342
Symbol 341 TextUses:128Used by:342
Symbol 342 ButtonUses:309 340 311 341 312Used by:351
Symbol 343 TextUses:128Used by:345
Symbol 344 TextUses:128Used by:345
Symbol 345 ButtonUses:309 343 311 344 312Used by:351
Symbol 346 EditableTextUses:50Used by:351
Symbol 347 EditableTextUses:50Used by:351
Symbol 348 TextUses:128Used by:350
Symbol 349 TextUses:128Used by:350
Symbol 350 ButtonUses:309 348 311 349 312Used by:351
Symbol 351 MovieClip {PauseMenu}Uses:332 333 336 339 342 345 346 347 350Used by:521
Symbol 352 GraphicUsed by:360
Symbol 353 TextUses:149Used by:360
Symbol 354 TextUses:128Used by:356
Symbol 355 TextUses:128Used by:356
Symbol 356 ButtonUses:309 354 311 355 312Used by:360 412
Symbol 357 TextUses:128Used by:359
Symbol 358 TextUses:128Used by:359
Symbol 359 ButtonUses:309 357 311 358 312Used by:360 412
Symbol 360 MovieClip {QuitConfirmScreen}Uses:352 353 356 359Used by:521
Symbol 361 GraphicUsed by:375
Symbol 362 TextUses:149Used by:375
Symbol 363 TextUses:151Used by:375
Symbol 364 TextUses:151Used by:375
Symbol 365 TextUses:151Used by:375
Symbol 366 TextUses:151Used by:375
Symbol 367 TextUses:151Used by:375
Symbol 368 TextUses:151Used by:375
Symbol 369 EditableTextUses:260Used by:375
Symbol 370 EditableTextUses:260Used by:375
Symbol 371 EditableTextUses:260Used by:375
Symbol 372 EditableTextUses:260Used by:375
Symbol 373 EditableTextUses:260Used by:375
Symbol 374 EditableTextUses:260Used by:375
Symbol 375 MovieClip {StatsScreen}Uses:361 362 363 364 365 366 367 368 369 370 371 372 373 374 215Used by:521
Symbol 376 GraphicUsed by:405
Symbol 377 TextUses:149Used by:405
Symbol 378 TextUses:149Used by:405
Symbol 379 FontUsed by:380 397 398 399 400 401
Symbol 380 EditableTextUses:379Used by:405
Symbol 381 GraphicUsed by:383
Symbol 382 TextUses:22Used by:383
Symbol 383 ButtonUses:243 381 382 245 247Used by:405
Symbol 384 TextUses:22Used by:385
Symbol 385 ButtonUses:243 244 384 245 247Used by:405
Symbol 386 GraphicUsed by:389
Symbol 387 TextUses:22Used by:389
Symbol 388 GraphicUsed by:389
Symbol 389 ButtonUses:243 386 387 245 247 388Used by:405
Symbol 390 GraphicUsed by:392
Symbol 391 TextUses:22Used by:392
Symbol 392 ButtonUses:243 244 390 391 245 247Used by:405
Symbol 393 TextUses:260Used by:396
Symbol 394 TextUses:260Used by:396
Symbol 395 TextUses:22Used by:396
Symbol 396 ButtonUses:243 393 394 395 245 247Used by:405
Symbol 397 EditableTextUses:379Used by:405
Symbol 398 EditableTextUses:379Used by:405
Symbol 399 EditableTextUses:379Used by:405
Symbol 400 EditableTextUses:379Used by:405
Symbol 401 EditableTextUses:379Used by:405
Symbol 402 GraphicUsed by:404
Symbol 403 TextUses:149Used by:404
Symbol 404 MovieClipUses:402 403Used by:405
Symbol 405 MovieClip {UpgradeScreen}Uses:376 377 378 380 383 385 389 392 396 297 397 398 399 400 401 404Used by:521
Symbol 406 GraphicUsed by:412
Symbol 407 TextUses:128Used by:412
Symbol 408 TextUses:50Used by:409
Symbol 409 MovieClipUses:408Used by:412
Symbol 410 EditableTextUses:265Used by:412
Symbol 411 EditableTextUses:265Used by:412
Symbol 412 MovieClip {ContinueScreen}Uses:406 407 409 410 229 411 356 359Used by:521
Symbol 413 GraphicUsed by:414
Symbol 414 MovieClip {Hero}Uses:244 249 413Used by:521
Symbol 415 GraphicUsed by:418
Symbol 416 GraphicUsed by:417
Symbol 417 MovieClipUses:416Used by:418 421
Symbol 418 MovieClip {Cannon0}Uses:415 417Used by:521
Symbol 419 GraphicUsed by:421
Symbol 420 GraphicUsed by:421
Symbol 421 MovieClip {Cannon1}Uses:419 417 420Used by:521
Symbol 422 GraphicUsed by:423
Symbol 423 MovieClip {Mobkon0_Sprite}Uses:422Used by:521
Symbol 424 GraphicUsed by:425
Symbol 425 MovieClip {Mobkon1_Sprite}Uses:424Used by:521
Symbol 426 GraphicUsed by:427
Symbol 427 MovieClip {Mobkon2_Sprite}Uses:426Used by:521
Symbol 428 GraphicUsed by:431
Symbol 429 GraphicUsed by:431
Symbol 430 GraphicUsed by:431
Symbol 431 MovieClip {Mobkon3_Sprite}Uses:428 429 430Used by:521
Symbol 432 GraphicUsed by:433
Symbol 433 MovieClip {Mobkon4_Mini_Sprite}Uses:432Used by:521
Symbol 434 GraphicUsed by:435
Symbol 435 MovieClip {Mobkon4_Sprite}Uses:434Used by:521
Symbol 436 GraphicUsed by:437
Symbol 437 MovieClip {Mobkon5_Sprite}Uses:436Used by:521
Symbol 438 GraphicUsed by:441
Symbol 439 GraphicUsed by:441
Symbol 440 GraphicUsed by:441
Symbol 441 MovieClip {Mobkon6_Mini_Sprite}Uses:438 439 440 57Used by:521
Symbol 442 GraphicUsed by:450
Symbol 443 ShapeTweeningUsed by:450
Symbol 444 ShapeTweeningUsed by:450
Symbol 445 ShapeTweeningUsed by:450
Symbol 446 ShapeTweeningUsed by:450
Symbol 447 ShapeTweeningUsed by:450
Symbol 448 ShapeTweeningUsed by:450
Symbol 449 GraphicUsed by:450
Symbol 450 MovieClip {Mobkon6_Sprite}Uses:442 443 444 445 446 447 448 449Used by:521
Symbol 451 GraphicUsed by:455 460
Symbol 452 GraphicUsed by:455 460
Symbol 453 GraphicUsed by:455 460
Symbol 454 GraphicUsed by:455 460
Symbol 455 MovieClip {Mobkon7_Sprite}Uses:451 452 453 454Used by:521
Symbol 456 GraphicUsed by:457
Symbol 457 MovieClip {Mobkon8_Sprite}Uses:456Used by:521
Symbol 458 GraphicUsed by:459
Symbol 459 MovieClip {Mobkon9_Sprite}Uses:458Used by:521
Symbol 460 MovieClip {Mobkon10_Sprite}Uses:451 452 453 454Used by:521
Symbol 461 GraphicUsed by:462
Symbol 462 MovieClip {Mobkon11_Sprite}Uses:461Used by:521
Symbol 463 GraphicUsed by:464
Symbol 464 MovieClip {Mobkon12_Sprite}Uses:463Used by:521
Symbol 465 ShapeTweeningUsed by:467
Symbol 466 GraphicUsed by:467
Symbol 467 MovieClip {Spawning0}Uses:465 466Used by:521
Symbol 468 GraphicUsed by:469
Symbol 469 MovieClip {Projectile0_Sprite}Uses:468Used by:521
Symbol 470 GraphicUsed by:471
Symbol 471 MovieClip {Projectile1_Sprite}Uses:470Used by:521
Symbol 472 GraphicUsed by:473
Symbol 473 MovieClip {Projectile2_Sprite}Uses:472Used by:521
Symbol 474 GraphicUsed by:475
Symbol 475 MovieClip {Projectile3_Sprite}Uses:474Used by:521
Symbol 476 GraphicUsed by:477
Symbol 477 MovieClip {Projectile4_Sprite}Uses:476Used by:521
Symbol 478 GraphicUsed by:485
Symbol 479 ShapeTweeningUsed by:485
Symbol 480 GraphicUsed by:485
Symbol 481 ShapeTweeningUsed by:485
Symbol 482 GraphicUsed by:485
Symbol 483 GraphicUsed by:485
Symbol 484 GraphicUsed by:485
Symbol 485 MovieClip {Projectile10_Sprite}Uses:478 479 480 481 482 483 484Used by:521
Symbol 486 GraphicUsed by:494
Symbol 487 ShapeTweeningUsed by:494
Symbol 488 GraphicUsed by:494
Symbol 489 ShapeTweeningUsed by:494
Symbol 490 GraphicUsed by:494
Symbol 491 GraphicUsed by:494
Symbol 492 GraphicUsed by:494
Symbol 493 GraphicUsed by:494
Symbol 494 MovieClip {Projectile11_Sprite}Uses:486 487 488 489 490 491 492 493Used by:521
Symbol 495 GraphicUsed by:500
Symbol 496 ShapeTweeningUsed by:500
Symbol 497 GraphicUsed by:500
Symbol 498 ShapeTweeningUsed by:500
Symbol 499 GraphicUsed by:500
Symbol 500 MovieClip {Projectile12_Sprite}Uses:495 496 497 498 499Used by:521
Symbol 501 GraphicUsed by:507
Symbol 502 ShapeTweeningUsed by:507
Symbol 503 GraphicUsed by:507
Symbol 504 ShapeTweeningUsed by:507
Symbol 505 GraphicUsed by:507
Symbol 506 GraphicUsed by:507
Symbol 507 MovieClip {Projectile13_Sprite}Uses:501 502 503 504 505 506Used by:521
Symbol 508 GraphicUsed by:513
Symbol 509 ShapeTweeningUsed by:513
Symbol 510 GraphicUsed by:513
Symbol 511 ShapeTweeningUsed by:513
Symbol 512 GraphicUsed by:513
Symbol 513 MovieClip {Projectile14_Sprite}Uses:508 509 510 511 512Used by:521
Symbol 514 GraphicUsed by:520
Symbol 515 ShapeTweeningUsed by:520
Symbol 516 GraphicUsed by:520
Symbol 517 ShapeTweeningUsed by:520
Symbol 518 GraphicUsed by:520
Symbol 519 GraphicUsed by:520
Symbol 520 MovieClip {Projectile15_Sprite}Uses:514 515 516 517 518 519Used by:521
Symbol 521 MovieClip {ZunderFury_fla.AllGraphicsPackage_3}Uses:113 64 115 117 120 125 126 133 147 164 180 190 197 216 241 259 263 267 270 274 278 281 298 331 351 360 375 405 412 414 418 421 423 425 427 431 433 435 437 441 450 455 457 459 460 462 464 467 469 471 473 475 477 485 494 500 507 513 520Used by:Timeline
Symbol 522 TextUses:112Used by:542
Symbol 523 Sound {Sound_dblip}Used by:542
Symbol 524 Sound {Sound_Cheer}Used by:542
Symbol 525 Sound {Sound_r_explosion0}Used by:542
Symbol 526 Sound {Sound_firework_5}Used by:542
Symbol 527 Sound {Sound_firework_1}Used by:542
Symbol 528 Sound {Sound_Explosion27}Used by:542
Symbol 529 Sound {Sound_Explosion26}Used by:542
Symbol 530 Sound {Sound_Explosion25}Used by:542
Symbol 531 Sound {Sound_PlayerDeath}Used by:542
Symbol 532 Sound {Sound_BassTrigger}Used by:542
Symbol 533 Sound {Sound_f_shoot1}Used by:542
Symbol 534 Sound {Sound_Cheer1}Used by:542
Symbol 535 Sound {Sound_electrohit}Used by:542
Symbol 536 Sound {Sound_LaserShot}Used by:542
Symbol 537 Sound {Sound_Click0}Used by:542
Symbol 538 Sound {Sound_NormalShot}Used by:542
Symbol 539 Sound {Sound_JDescend}Used by:542
Symbol 540 Sound {Sound_r_shoot3}Used by:542
Symbol 541 Sound {Sound_shoot0}Used by:542
Symbol 542 MovieClip {ZunderFury_fla.Sounds_118}Uses:522 523 1 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541Used by:Timeline
Streaming Sound 1Used by:Symbol 102 MovieClip {GogIntro}

Instance Names

"bg"Frame 1Symbol 109 MovieClip
"movSplash"Frame 4Symbol 102 MovieClip {GogIntro}
"graphicsPackage"Frame 5Symbol 521 MovieClip {ZunderFury_fla.AllGraphicsPackage_3}
"soundsPackage"Frame 5Symbol 542 MovieClip {ZunderFury_fla.Sounds_118}
"hintFire"Symbol 56 MovieClip {TutorialHint} Frame 1Symbol 52 MovieClip
"hintBomb"Symbol 56 MovieClip {TutorialHint} Frame 1Symbol 55 MovieClip
"doogogButton"Symbol 101 MovieClip {GogIntro_fla.DoogogBanner_6} Frame 3Symbol 100 Button
"mage"Symbol 102 MovieClip {GogIntro} Frame 1Symbol 70 MovieClip
"cyclops"Symbol 102 MovieClip {GogIntro} Frame 1Symbol 75 MovieClip
"levelNumber"Symbol 133 MovieClip {LevelNumber} Frame 1Symbol 131 EditableText
"blast0"Symbol 147 MovieClip {ShieldBlast} Frame 1Symbol 140 MovieClip
"blast1"Symbol 147 MovieClip {ShieldBlast} Frame 1Symbol 146 MovieClip
"okayButton"Symbol 164 MovieClip {ControlsScreen} Frame 1Symbol 163 Button
"creditsBackButton"Symbol 180 MovieClip {CreditsScreen} Frame 1Symbol 173 Button
"doogogButton"Symbol 180 MovieClip {CreditsScreen} Frame 1Symbol 176 Button
"paulButton"Symbol 180 MovieClip {CreditsScreen} Frame 1Symbol 179 Button
"okayButton"Symbol 190 MovieClip {FeatsCompleteScreen} Frame 1Symbol 184 Button
"featBars"Symbol 190 MovieClip {FeatsCompleteScreen} Frame 1Symbol 187 MovieClip
"title"Symbol 197 MovieClip {FeatBar} Frame 1Symbol 193 EditableText
"description"Symbol 197 MovieClip {FeatBar} Frame 1Symbol 194 EditableText
"star"Symbol 197 MovieClip {FeatBar} Frame 1Symbol 196 MovieClip
"normalButton"Symbol 216 MovieClip {FeatsScreen} Frame 1Symbol 203 Button
"heroicButton"Symbol 216 MovieClip {FeatsScreen} Frame 1Symbol 206 Button
"legendButton"Symbol 216 MovieClip {FeatsScreen} Frame 1Symbol 209 Button
"normalCover"Symbol 216 MovieClip {FeatsScreen} Frame 1Symbol 211 MovieClip
"legendCover"Symbol 216 MovieClip {FeatsScreen} Frame 1Symbol 212 MovieClip
"heroicCover"Symbol 216 MovieClip {FeatsScreen} Frame 1Symbol 214 MovieClip
"featsBackButton"Symbol 216 MovieClip {FeatsScreen} Frame 1Symbol 215 Button
"submittedText"Symbol 241 MovieClip {ScoreSubmitScreen} Frame 1Symbol 219 MovieClip
"totalTimeLabel"Symbol 241 MovieClip {ScoreSubmitScreen} Frame 1Symbol 221 MovieClip
"theEndText"Symbol 241 MovieClip {ScoreSubmitScreen} Frame 1Symbol 223 MovieClip
"goodLuckText"Symbol 241 MovieClip {ScoreSubmitScreen} Frame 1Symbol 225 MovieClip
"tryAgainText"Symbol 241 MovieClip {ScoreSubmitScreen} Frame 1Symbol 227 MovieClip
"finalScoreLabel"Symbol 241 MovieClip {ScoreSubmitScreen} Frame 1Symbol 229 MovieClip
"finalScore"Symbol 241 MovieClip {ScoreSubmitScreen} Frame 1Symbol 231 EditableText
"menuButton"Symbol 241 MovieClip {ScoreSubmitScreen} Frame 1Symbol 235 Button
"submitButton"Symbol 241 MovieClip {ScoreSubmitScreen} Frame 1Symbol 238 Button
"playerName"Symbol 241 MovieClip {ScoreSubmitScreen} Frame 1Symbol 240 EditableText
"button0"Symbol 259 MovieClip {HeroSelectionScreen} Frame 1Symbol 248 Button
"button1"Symbol 259 MovieClip {HeroSelectionScreen} Frame 1Symbol 251 Button
"heroNames"Symbol 259 MovieClip {HeroSelectionScreen} Frame 1Symbol 258 MovieClip {ZunderFury_fla.HeroNames_47}
"bestScore"Symbol 263 MovieClip {BestScoreBar} Frame 1Symbol 262 EditableText
"fpsText"Symbol 267 MovieClip {FpsCounter} Frame 1Symbol 266 EditableText
"scoreText"Symbol 270 MovieClip {ScoreBar} Frame 1Symbol 268 EditableText
"multText"Symbol 270 MovieClip {ScoreBar} Frame 1Symbol 269 EditableText
"numBombs"Symbol 274 MovieClip {BombBar} Frame 1Symbol 271 EditableText
"icon0"Symbol 278 MovieClip {LifeBar} Frame 1Symbol 275 MovieClip
"icon1"Symbol 278 MovieClip {LifeBar} Frame 1Symbol 276 MovieClip
"numLives"Symbol 278 MovieClip {LifeBar} Frame 1Symbol 277 EditableText
"timeLeft"Symbol 281 MovieClip {TimerBar} Frame 1Symbol 280 EditableText
"time"Symbol 298 MovieClip {LevelStatsScreen} Frame 1Symbol 285 EditableText
"timeBonus"Symbol 298 MovieClip {LevelStatsScreen} Frame 1Symbol 286 EditableText
"lives"Symbol 298 MovieClip {LevelStatsScreen} Frame 1Symbol 288 EditableText
"livesBonus"Symbol 298 MovieClip {LevelStatsScreen} Frame 1Symbol 289 EditableText
"maxCombo"Symbol 298 MovieClip {LevelStatsScreen} Frame 1Symbol 291 EditableText
"maxComboBonus"Symbol 298 MovieClip {LevelStatsScreen} Frame 1Symbol 292 EditableText
"totalBonus"Symbol 298 MovieClip {LevelStatsScreen} Frame 1Symbol 294 EditableText
"nextButton"Symbol 298 MovieClip {LevelStatsScreen} Frame 1Symbol 297 Button
"background"Symbol 331 MovieClip {MainMenu} Frame 1Symbol 300 MovieClip
"rootName"Symbol 331 MovieClip {MainMenu} Frame 1Symbol 301 EditableText
"normalButton"Symbol 331 MovieClip {MainMenu} Frame 1Symbol 304 Button
"statsButton"Symbol 331 MovieClip {MainMenu} Frame 1Symbol 308 Button
"debugButton"Symbol 331 MovieClip {MainMenu} Frame 1Symbol 313 Button
"highScoresButton"Symbol 331 MovieClip {MainMenu} Frame 1Symbol 316 Button
"featsButton"Symbol 331 MovieClip {MainMenu} Frame 1Symbol 319 Button
"jumpNumber"Symbol 331 MovieClip {MainMenu} Frame 1Symbol 320 EditableText
"jumpButton"Symbol 331 MovieClip {MainMenu} Frame 1Symbol 322 Button
"creditsButton"Symbol 331 MovieClip {MainMenu} Frame 1Symbol 330 Button
"resumeButton"Symbol 351 MovieClip {PauseMenu} Frame 1Symbol 336 Button
"soundButton"Symbol 351 MovieClip {PauseMenu} Frame 1Symbol 339 Button
"quitButton"Symbol 351 MovieClip {PauseMenu} Frame 1Symbol 342 Button
"musicButton"Symbol 351 MovieClip {PauseMenu} Frame 1Symbol 345 Button
"soundStatus"Symbol 351 MovieClip {PauseMenu} Frame 1Symbol 346 EditableText
"musicStatus"Symbol 351 MovieClip {PauseMenu} Frame 1Symbol 347 EditableText
"controlsButton"Symbol 351 MovieClip {PauseMenu} Frame 1Symbol 350 Button
"yesButton"Symbol 360 MovieClip {QuitConfirmScreen} Frame 1Symbol 356 Button
"noButton"Symbol 360 MovieClip {QuitConfirmScreen} Frame 1Symbol 359 Button
"mobsKilled"Symbol 375 MovieClip {StatsScreen} Frame 1Symbol 369 EditableText
"totalPoints"Symbol 375 MovieClip {StatsScreen} Frame 1Symbol 370 EditableText
"totalCredits"Symbol 375 MovieClip {StatsScreen} Frame 1Symbol 371 EditableText
"bestScore"Symbol 375 MovieClip {StatsScreen} Frame 1Symbol 372 EditableText
"highestWave"Symbol 375 MovieClip {StatsScreen} Frame 1Symbol 373 EditableText
"feats"Symbol 375 MovieClip {StatsScreen} Frame 1Symbol 374 EditableText
"statsBackButton"Symbol 375 MovieClip {StatsScreen} Frame 1Symbol 215 Button
"credits"Symbol 405 MovieClip {UpgradeScreen} Frame 1Symbol 380 EditableText
"weapon"Symbol 405 MovieClip {UpgradeScreen} Frame 1Symbol 383 Button
"speed"Symbol 405 MovieClip {UpgradeScreen} Frame 1Symbol 385 Button
"bomb"Symbol 405 MovieClip {UpgradeScreen} Frame 1Symbol 389 Button
"life"Symbol 405 MovieClip {UpgradeScreen} Frame 1Symbol 392 Button
"points"Symbol 405 MovieClip {UpgradeScreen} Frame 1Symbol 396 Button
"nextButton"Symbol 405 MovieClip {UpgradeScreen} Frame 1Symbol 297 Button
"weaponCost"Symbol 405 MovieClip {UpgradeScreen} Frame 1Symbol 397 EditableText
"speedCost"Symbol 405 MovieClip {UpgradeScreen} Frame 1Symbol 398 EditableText
"lifeCost"Symbol 405 MovieClip {UpgradeScreen} Frame 1Symbol 399 EditableText
"bombCost"Symbol 405 MovieClip {UpgradeScreen} Frame 1Symbol 400 EditableText
"pointsCost"Symbol 405 MovieClip {UpgradeScreen} Frame 1Symbol 401 EditableText
"weaponCover"Symbol 405 MovieClip {UpgradeScreen} Frame 1Symbol 404 MovieClip
"speedCover"Symbol 405 MovieClip {UpgradeScreen} Frame 1Symbol 404 MovieClip
"penaltyScore"Symbol 412 MovieClip {ContinueScreen} Frame 1Symbol 410 EditableText
"finalScoreLabel"Symbol 412 MovieClip {ContinueScreen} Frame 1Symbol 229 MovieClip
"finalScore"Symbol 412 MovieClip {ContinueScreen} Frame 1Symbol 411 EditableText
"continueYesButton"Symbol 412 MovieClip {ContinueScreen} Frame 1Symbol 356 Button
"continueNoButton"Symbol 412 MovieClip {ContinueScreen} Frame 1Symbol 359 Button
"firePoint"Symbol 418 MovieClip {Cannon0} Frame 1Symbol 417 MovieClip
"firePoint1"Symbol 418 MovieClip {Cannon0} Frame 1Symbol 417 MovieClip
"firePoint2"Symbol 418 MovieClip {Cannon0} Frame 1Symbol 417 MovieClip
"firePoint"Symbol 421 MovieClip {Cannon1} Frame 1Symbol 417 MovieClip

Special Tags

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

Labels

"idle"Symbol 4 MovieClip {Mob0_Sprite} Frame 1
"pulse"Symbol 28 MovieClip {Powerup_RapidBomb} Frame 9
"pulse"Symbol 34 MovieClip {Powerup_RapidFire} Frame 9
"pulse"Symbol 37 MovieClip {Powerup_Life} Frame 9
"pulse"Symbol 44 MovieClip {Powerup_Life3} Frame 9
"done"Symbol 102 MovieClip {GogIntro} Frame 91
"pauseMain"Symbol 180 MovieClip {CreditsScreen} Frame 1
"icon1"Symbol 278 MovieClip {LifeBar} Frame 1
"pauseMain"Symbol 351 MovieClip {PauseMenu} Frame 1
"idle"Symbol 418 MovieClip {Cannon0} Frame 1
"fire"Symbol 418 MovieClip {Cannon0} Frame 2
"idle"Symbol 421 MovieClip {Cannon1} Frame 1
"fire"Symbol 421 MovieClip {Cannon1} Frame 2




http://swfchan.com/6/29988/info.shtml
Created: 19/5 -2019 14:53:16 Last modified: 19/5 -2019 14:53:16 Server time: 04/06 -2024 03:07:17