Section 1
//NewgroundsAPIAsset_API_Conencted_4 (APIConnector_fla.NewgroundsAPIAsset_API_Conencted_4)
package APIConnector_fla {
import flash.display.*;
import com.newgrounds.components.*;
public dynamic class NewgroundsAPIAsset_API_Conencted_4 extends MovieClip {
public function NewgroundsAPIAsset_API_Conencted_4(){
addFrameScript(36, frame37);
}
function frame37(){
APIConnector(parent).clear();
}
}
}//package APIConnector_fla
Section 2
//NewgroundsAPIAsset_ConnectingAPI_2 (APIConnector_fla.NewgroundsAPIAsset_ConnectingAPI_2)
package APIConnector_fla {
import flash.display.*;
public dynamic class NewgroundsAPIAsset_ConnectingAPI_2 extends MovieClip {
public function NewgroundsAPIAsset_ConnectingAPI_2(){
addFrameScript(9, frame10);
}
function frame10(){
stop();
}
}
}//package APIConnector_fla
Section 3
//NewgroundsAPIAsset_Connection_Error_7 (APIConnector_fla.NewgroundsAPIAsset_Connection_Error_7)
package APIConnector_fla {
import flash.display.*;
import com.newgrounds.components.*;
public dynamic class NewgroundsAPIAsset_Connection_Error_7 extends MovieClip {
public function NewgroundsAPIAsset_Connection_Error_7(){
addFrameScript(9, frame10, 20, frame21);
}
function frame21(){
APIConnector(parent).clear();
}
function frame10(){
stop();
}
}
}//package APIConnector_fla
Section 4
//NewgroundsAPIAsset_Load_Indicator_3 (APIConnector_fla.NewgroundsAPIAsset_Load_Indicator_3)
package APIConnector_fla {
import flash.display.*;
import flash.events.*;
public dynamic class NewgroundsAPIAsset_Load_Indicator_3 extends MovieClip {
public function NewgroundsAPIAsset_Load_Indicator_3(){
addFrameScript(0, frame1);
}
function frame1(){
addEventListener(Event.ENTER_FRAME, onEnterFrame);
}
public function onEnterFrame(_arg1:Event):void{
if (((visible) && (stage))){
rotation = (rotation + 30);
} else {
removeEventListener(Event.ENTER_FRAME, onEnterFrame);
};
}
}
}//package APIConnector_fla
Section 5
//NewgroundsAPIAsset_Login_Warning_5 (APIConnector_fla.NewgroundsAPIAsset_Login_Warning_5)
package APIConnector_fla {
import flash.display.*;
import com.newgrounds.components.*;
public dynamic class NewgroundsAPIAsset_Login_Warning_5 extends MovieClip {
public function NewgroundsAPIAsset_Login_Warning_5(){
addFrameScript(9, frame10, 20, frame21);
}
function frame21(){
APIConnector(parent).clear();
}
function frame10(){
stop();
}
}
}//package APIConnector_fla
Section 6
//AuxFunctions (caurina.transitions.AuxFunctions)
package caurina.transitions {
public class AuxFunctions {
public static function getObjectLength(_arg1:Object):uint{
var _local2:uint;
var _local3:String;
_local2 = 0;
for (_local3 in _arg1) {
_local2++;
};
return (_local2);
}
public static function numberToG(_arg1:Number):Number{
return (((_arg1 & 0xFF00) >> 8));
}
public static function numberToB(_arg1:Number):Number{
return ((_arg1 & 0xFF));
}
public static function numberToR(_arg1:Number):Number{
return (((_arg1 & 0xFF0000) >> 16));
}
public static function concatObjects(... _args):Object{
var _local2:Object;
var _local3:Object;
var _local4:int;
var _local5:String;
_local2 = {};
_local4 = 0;
while (_local4 < _args.length) {
_local3 = _args[_local4];
for (_local5 in _local3) {
if (_local3[_local5] == null){
delete _local2[_local5];
} else {
_local2[_local5] = _local3[_local5];
};
};
_local4++;
};
return (_local2);
}
}
}//package caurina.transitions
Section 7
//Equations (caurina.transitions.Equations)
package caurina.transitions {
public class Equations {
public function Equations(){
trace("Equations is a static class and should not be instantiated.");
}
public static function easeOutBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
if (_arg1 < (1 / 2.75)){
return (((_arg3 * ((7.5625 * _arg1) * _arg1)) + _arg2));
};
if (_arg1 < (2 / 2.75)){
_arg1 = (_arg1 - (1.5 / 2.75));
return (((_arg3 * (((7.5625 * _arg1) * _arg1) + 0.75)) + _arg2));
};
if (_arg1 < (2.5 / 2.75)){
_arg1 = (_arg1 - (2.25 / 2.75));
return (((_arg3 * (((7.5625 * _arg1) * _arg1) + 0.9375)) + _arg2));
};
_arg1 = (_arg1 - (2.625 / 2.75));
return (((_arg3 * (((7.5625 * _arg1) * _arg1) + 0.984375)) + _arg2));
}
public static function easeInOutElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
var _local6:Number;
var _local7:Number;
var _local8:Number;
if (_arg1 == 0){
return (_arg2);
};
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 == 2){
return ((_arg2 + _arg3));
};
_local6 = (((!(Boolean(_arg5))) || (isNaN(_arg5.period)))) ? (_arg4 * (0.3 * 1.5)) : _arg5.period;
_local8 = (((!(Boolean(_arg5))) || (isNaN(_arg5.amplitude)))) ? 0 : _arg5.amplitude;
if (((!(Boolean(_local8))) || ((_local8 < Math.abs(_arg3))))){
_local8 = _arg3;
_local7 = (_local6 / 4);
} else {
_local7 = ((_local6 / (2 * Math.PI)) * Math.asin((_arg3 / _local8)));
};
if (_arg1 < 1){
--_arg1;
return (((-0.5 * ((_local8 * Math.pow(2, (10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _local6)))) + _arg2));
};
--_arg1;
return ((((((_local8 * Math.pow(2, (-10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _local6))) * 0.5) + _arg3) + _arg2));
}
public static function easeInOutQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return (((((_arg3 / 2) * _arg1) * _arg1) + _arg2));
};
--_arg1;
return ((((-(_arg3) / 2) * ((_arg1 * (_arg1 - 2)) - 1)) + _arg2));
}
public static function easeInOutBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (((easeInBounce((_arg1 * 2), 0, _arg3, _arg4) * 0.5) + _arg2));
};
return ((((easeOutBounce(((_arg1 * 2) - _arg4), 0, _arg3, _arg4) * 0.5) + (_arg3 * 0.5)) + _arg2));
}
public static function easeInOutBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
var _local6:Number;
_local6 = (((!(Boolean(_arg5))) || (isNaN(_arg5.overshoot)))) ? 1.70158 : _arg5.overshoot;
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
_local6 = (_local6 * 1.525);
return ((((_arg3 / 2) * ((_arg1 * _arg1) * (((_local6 + 1) * _arg1) - _local6))) + _arg2));
};
_arg1 = (_arg1 - 2);
_local6 = (_local6 * 1.525);
return ((((_arg3 / 2) * (((_arg1 * _arg1) * (((_local6 + 1) * _arg1) + _local6)) + 2)) + _arg2));
}
public static function easeOutInCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutCubic((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInCubic(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeNone(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return ((((_arg3 * _arg1) / _arg4) + _arg2));
}
public static function easeOutBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
var _local6:Number;
_local6 = (((!(Boolean(_arg5))) || (isNaN(_arg5.overshoot)))) ? 1.70158 : _arg5.overshoot;
_arg1 = ((_arg1 / _arg4) - 1);
return (((_arg3 * (((_arg1 * _arg1) * (((_local6 + 1) * _arg1) + _local6)) + 1)) + _arg2));
}
public static function easeInOutSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return ((((-(_arg3) / 2) * (Math.cos(((Math.PI * _arg1) / _arg4)) - 1)) + _arg2));
}
public static function easeInBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
var _local6:Number;
_local6 = (((!(Boolean(_arg5))) || (isNaN(_arg5.overshoot)))) ? 1.70158 : _arg5.overshoot;
_arg1 = (_arg1 / _arg4);
return (((((_arg3 * _arg1) * _arg1) * (((_local6 + 1) * _arg1) - _local6)) + _arg2));
}
public static function easeInQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
return ((((((_arg3 * _arg1) * _arg1) * _arg1) * _arg1) + _arg2));
}
public static function easeOutInQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutQuint((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInQuint(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeOutInBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutBounce((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInBounce(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function init():void{
Tweener.registerTransition("easenone", easeNone);
Tweener.registerTransition("linear", easeNone);
Tweener.registerTransition("easeinquad", easeInQuad);
Tweener.registerTransition("easeoutquad", easeOutQuad);
Tweener.registerTransition("easeinoutquad", easeInOutQuad);
Tweener.registerTransition("easeoutinquad", easeOutInQuad);
Tweener.registerTransition("easeincubic", easeInCubic);
Tweener.registerTransition("easeoutcubic", easeOutCubic);
Tweener.registerTransition("easeinoutcubic", easeInOutCubic);
Tweener.registerTransition("easeoutincubic", easeOutInCubic);
Tweener.registerTransition("easeinquart", easeInQuart);
Tweener.registerTransition("easeoutquart", easeOutQuart);
Tweener.registerTransition("easeinoutquart", easeInOutQuart);
Tweener.registerTransition("easeoutinquart", easeOutInQuart);
Tweener.registerTransition("easeinquint", easeInQuint);
Tweener.registerTransition("easeoutquint", easeOutQuint);
Tweener.registerTransition("easeinoutquint", easeInOutQuint);
Tweener.registerTransition("easeoutinquint", easeOutInQuint);
Tweener.registerTransition("easeinsine", easeInSine);
Tweener.registerTransition("easeoutsine", easeOutSine);
Tweener.registerTransition("easeinoutsine", easeInOutSine);
Tweener.registerTransition("easeoutinsine", easeOutInSine);
Tweener.registerTransition("easeincirc", easeInCirc);
Tweener.registerTransition("easeoutcirc", easeOutCirc);
Tweener.registerTransition("easeinoutcirc", easeInOutCirc);
Tweener.registerTransition("easeoutincirc", easeOutInCirc);
Tweener.registerTransition("easeinexpo", easeInExpo);
Tweener.registerTransition("easeoutexpo", easeOutExpo);
Tweener.registerTransition("easeinoutexpo", easeInOutExpo);
Tweener.registerTransition("easeoutinexpo", easeOutInExpo);
Tweener.registerTransition("easeinelastic", easeInElastic);
Tweener.registerTransition("easeoutelastic", easeOutElastic);
Tweener.registerTransition("easeinoutelastic", easeInOutElastic);
Tweener.registerTransition("easeoutinelastic", easeOutInElastic);
Tweener.registerTransition("easeinback", easeInBack);
Tweener.registerTransition("easeoutback", easeOutBack);
Tweener.registerTransition("easeinoutback", easeInOutBack);
Tweener.registerTransition("easeoutinback", easeOutInBack);
Tweener.registerTransition("easeinbounce", easeInBounce);
Tweener.registerTransition("easeoutbounce", easeOutBounce);
Tweener.registerTransition("easeinoutbounce", easeInOutBounce);
Tweener.registerTransition("easeoutinbounce", easeOutInBounce);
}
public static function easeOutExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return (((_arg1)==_arg4) ? (_arg2 + _arg3) : (((_arg3 * 1.001) * (-(Math.pow(2, ((-10 * _arg1) / _arg4))) + 1)) + _arg2));
}
public static function easeOutInBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutBack((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInBack(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeInExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return (((_arg1)==0) ? _arg2 : (((_arg3 * Math.pow(2, (10 * ((_arg1 / _arg4) - 1)))) + _arg2) - (_arg3 * 0.001)));
}
public static function easeInCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
return (((((_arg3 * _arg1) * _arg1) * _arg1) + _arg2));
}
public static function easeInQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
return (((((((_arg3 * _arg1) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2));
}
public static function easeInOutCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return ((((-(_arg3) / 2) * (Math.sqrt((1 - (_arg1 * _arg1))) - 1)) + _arg2));
};
_arg1 = (_arg1 - 2);
return ((((_arg3 / 2) * (Math.sqrt((1 - (_arg1 * _arg1))) + 1)) + _arg2));
}
public static function easeInQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
return ((((_arg3 * _arg1) * _arg1) + _arg2));
}
public static function easeInBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return (((_arg3 - easeOutBounce((_arg4 - _arg1), 0, _arg3, _arg4)) + _arg2));
}
public static function easeOutInExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutExpo((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInExpo(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeOutQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = ((_arg1 / _arg4) - 1);
return (((-(_arg3) * ((((_arg1 * _arg1) * _arg1) * _arg1) - 1)) + _arg2));
}
public static function easeInSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return ((((-(_arg3) * Math.cos(((_arg1 / _arg4) * (Math.PI / 2)))) + _arg3) + _arg2));
}
public static function easeInOutQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return (((((((_arg3 / 2) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2));
};
_arg1 = (_arg1 - 2);
return ((((-(_arg3) / 2) * ((((_arg1 * _arg1) * _arg1) * _arg1) - 2)) + _arg2));
}
public static function easeOutQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
return ((((-(_arg3) * _arg1) * (_arg1 - 2)) + _arg2));
}
public static function easeOutInElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutElastic((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInElastic(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeInElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
var _local6:Number;
var _local7:Number;
var _local8:Number;
if (_arg1 == 0){
return (_arg2);
};
_arg1 = (_arg1 / _arg4);
if (_arg1 == 1){
return ((_arg2 + _arg3));
};
_local6 = (((!(Boolean(_arg5))) || (isNaN(_arg5.period)))) ? (_arg4 * 0.3) : _arg5.period;
_local8 = (((!(Boolean(_arg5))) || (isNaN(_arg5.amplitude)))) ? 0 : _arg5.amplitude;
if (((!(Boolean(_local8))) || ((_local8 < Math.abs(_arg3))))){
_local8 = _arg3;
_local7 = (_local6 / 4);
} else {
_local7 = ((_local6 / (2 * Math.PI)) * Math.asin((_arg3 / _local8)));
};
--_arg1;
return ((-(((_local8 * Math.pow(2, (10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _local6)))) + _arg2));
}
public static function easeOutCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = ((_arg1 / _arg4) - 1);
return (((_arg3 * (((_arg1 * _arg1) * _arg1) + 1)) + _arg2));
}
public static function easeOutQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = ((_arg1 / _arg4) - 1);
return (((_arg3 * (((((_arg1 * _arg1) * _arg1) * _arg1) * _arg1) + 1)) + _arg2));
}
public static function easeOutInQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutQuad((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInQuad(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeOutSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return (((_arg3 * Math.sin(((_arg1 / _arg4) * (Math.PI / 2)))) + _arg2));
}
public static function easeInOutCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return ((((((_arg3 / 2) * _arg1) * _arg1) * _arg1) + _arg2));
};
_arg1 = (_arg1 - 2);
return ((((_arg3 / 2) * (((_arg1 * _arg1) * _arg1) + 2)) + _arg2));
}
public static function easeInOutQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return ((((((((_arg3 / 2) * _arg1) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2));
};
_arg1 = (_arg1 - 2);
return ((((_arg3 / 2) * (((((_arg1 * _arg1) * _arg1) * _arg1) * _arg1) + 2)) + _arg2));
}
public static function easeInCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
return (((-(_arg3) * (Math.sqrt((1 - (_arg1 * _arg1))) - 1)) + _arg2));
}
public static function easeOutInSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutSine((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInSine(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeInOutExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 == 0){
return (_arg2);
};
if (_arg1 == _arg4){
return ((_arg2 + _arg3));
};
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return (((((_arg3 / 2) * Math.pow(2, (10 * (_arg1 - 1)))) + _arg2) - (_arg3 * 0.0005)));
};
--_arg1;
return (((((_arg3 / 2) * 1.0005) * (-(Math.pow(2, (-10 * _arg1))) + 2)) + _arg2));
}
public static function easeOutElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
var _local6:Number;
var _local7:Number;
var _local8:Number;
if (_arg1 == 0){
return (_arg2);
};
_arg1 = (_arg1 / _arg4);
if (_arg1 == 1){
return ((_arg2 + _arg3));
};
_local6 = (((!(Boolean(_arg5))) || (isNaN(_arg5.period)))) ? (_arg4 * 0.3) : _arg5.period;
_local8 = (((!(Boolean(_arg5))) || (isNaN(_arg5.amplitude)))) ? 0 : _arg5.amplitude;
if (((!(Boolean(_local8))) || ((_local8 < Math.abs(_arg3))))){
_local8 = _arg3;
_local7 = (_local6 / 4);
} else {
_local7 = ((_local6 / (2 * Math.PI)) * Math.asin((_arg3 / _local8)));
};
return (((((_local8 * Math.pow(2, (-10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _local6))) + _arg3) + _arg2));
}
public static function easeOutCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = ((_arg1 / _arg4) - 1);
return (((_arg3 * Math.sqrt((1 - (_arg1 * _arg1)))) + _arg2));
}
public static function easeOutInQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutQuart((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInQuart(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeOutInCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutCirc((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInCirc(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
}
}//package caurina.transitions
Section 8
//PropertyInfoObj (caurina.transitions.PropertyInfoObj)
package caurina.transitions {
public class PropertyInfoObj {
public var originalValueComplete:Object;
public var modifierParameters:Array;
public var isSpecialProperty:Boolean;
public var hasModifier:Boolean;
public var valueComplete:Number;
public var extra:Object;
public var valueStart:Number;
public var modifierFunction:Function;
public var arrayIndex:Number;
public function PropertyInfoObj(_arg1:Number, _arg2:Number, _arg3:Object, _arg4:Number, _arg5:Object, _arg6:Boolean, _arg7:Function, _arg8:Array){
valueStart = _arg1;
valueComplete = _arg2;
originalValueComplete = _arg3;
arrayIndex = _arg4;
extra = _arg5;
isSpecialProperty = _arg6;
hasModifier = Boolean(_arg7);
modifierFunction = _arg7;
modifierParameters = _arg8;
}
public function toString():String{
var _local1:String;
_local1 = "\n[PropertyInfoObj ";
_local1 = (_local1 + ("valueStart:" + String(valueStart)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("valueComplete:" + String(valueComplete)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("originalValueComplete:" + String(originalValueComplete)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("arrayIndex:" + String(arrayIndex)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("extra:" + String(extra)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("isSpecialProperty:" + String(isSpecialProperty)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("hasModifier:" + String(hasModifier)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("modifierFunction:" + String(modifierFunction)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("modifierParameters:" + String(modifierParameters)));
_local1 = (_local1 + "]\n");
return (_local1);
}
public function clone():PropertyInfoObj{
var _local1:PropertyInfoObj;
_local1 = new PropertyInfoObj(valueStart, valueComplete, originalValueComplete, arrayIndex, extra, isSpecialProperty, modifierFunction, modifierParameters);
return (_local1);
}
}
}//package caurina.transitions
Section 9
//SpecialProperty (caurina.transitions.SpecialProperty)
package caurina.transitions {
public class SpecialProperty {
public var parameters:Array;
public var preProcess:Function;
public var setValue:Function;
public var getValue:Function;
public function SpecialProperty(_arg1:Function, _arg2:Function, _arg3:Array=null, _arg4:Function=null){
getValue = _arg1;
setValue = _arg2;
parameters = _arg3;
preProcess = _arg4;
}
public function toString():String{
var _local1:String;
_local1 = "";
_local1 = (_local1 + "[SpecialProperty ");
_local1 = (_local1 + ("getValue:" + String(getValue)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("setValue:" + String(setValue)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("parameters:" + String(parameters)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("preProcess:" + String(preProcess)));
_local1 = (_local1 + "]");
return (_local1);
}
}
}//package caurina.transitions
Section 10
//SpecialPropertyModifier (caurina.transitions.SpecialPropertyModifier)
package caurina.transitions {
public class SpecialPropertyModifier {
public var getValue:Function;
public var modifyValues:Function;
public function SpecialPropertyModifier(_arg1:Function, _arg2:Function){
modifyValues = _arg1;
getValue = _arg2;
}
public function toString():String{
var _local1:String;
_local1 = "";
_local1 = (_local1 + "[SpecialPropertyModifier ");
_local1 = (_local1 + ("modifyValues:" + String(modifyValues)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("getValue:" + String(getValue)));
_local1 = (_local1 + "]");
return (_local1);
}
}
}//package caurina.transitions
Section 11
//SpecialPropertySplitter (caurina.transitions.SpecialPropertySplitter)
package caurina.transitions {
public class SpecialPropertySplitter {
public var parameters:Array;
public var splitValues:Function;
public function SpecialPropertySplitter(_arg1:Function, _arg2:Array){
splitValues = _arg1;
parameters = _arg2;
}
public function toString():String{
var _local1:String;
_local1 = "";
_local1 = (_local1 + "[SpecialPropertySplitter ");
_local1 = (_local1 + ("splitValues:" + String(splitValues)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("parameters:" + String(parameters)));
_local1 = (_local1 + "]");
return (_local1);
}
}
}//package caurina.transitions
Section 12
//Tweener (caurina.transitions.Tweener)
package caurina.transitions {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
public class Tweener {
private static var _timeScale:Number = 1;
private static var _currentTimeFrame:Number;
private static var _specialPropertySplitterList:Object;
public static var autoOverwrite:Boolean = true;
private static var _engineExists:Boolean = false;
private static var _currentTime:Number;
private static var _tweenList:Array;
private static var _specialPropertyModifierList:Object;
private static var _specialPropertyList:Object;
private static var _transitionList:Object;
private static var _inited:Boolean = false;
private static var __tweener_controller__:MovieClip;
public function Tweener(){
trace("Tweener is a static class and should not be instantiated.");
}
public static function registerSpecialPropertyModifier(_arg1:String, _arg2:Function, _arg3:Function):void{
var _local4:SpecialPropertyModifier;
if (!_inited){
init();
};
_local4 = new SpecialPropertyModifier(_arg2, _arg3);
_specialPropertyModifierList[_arg1] = _local4;
}
public static function registerSpecialProperty(_arg1:String, _arg2:Function, _arg3:Function, _arg4:Array=null, _arg5:Function=null):void{
var _local6:SpecialProperty;
if (!_inited){
init();
};
_local6 = new SpecialProperty(_arg2, _arg3, _arg4, _arg5);
_specialPropertyList[_arg1] = _local6;
}
public static function init(... _args):void{
_inited = true;
_transitionList = new Object();
Equations.init();
_specialPropertyList = new Object();
_specialPropertyModifierList = new Object();
_specialPropertySplitterList = new Object();
}
private static function updateTweens():Boolean{
var _local1:int;
if (_tweenList.length == 0){
return (false);
};
_local1 = 0;
while (_local1 < _tweenList.length) {
if ((((_tweenList[_local1] == undefined)) || (!(_tweenList[_local1].isPaused)))){
if (!updateTweenByIndex(_local1)){
removeTweenByIndex(_local1);
};
if (_tweenList[_local1] == null){
removeTweenByIndex(_local1, true);
_local1--;
};
};
_local1++;
};
return (true);
}
public static function addCaller(_arg1:Object=null, _arg2:Object=null):Boolean{
var _local3:Number;
var _local4:Array;
var _local5:Object;
var _local6:Number;
var _local7:Number;
var _local8:Function;
var _local9:TweenListObj;
var _local10:Number;
var _local11:String;
if (!Boolean(_arg1)){
return (false);
};
if ((_arg1 is Array)){
_local4 = _arg1.concat();
} else {
_local4 = [_arg1];
};
_local5 = _arg2;
if (!_inited){
init();
};
if (((!(_engineExists)) || (!(Boolean(__tweener_controller__))))){
startEngine();
};
_local6 = (isNaN(_local5.time)) ? 0 : _local5.time;
_local7 = (isNaN(_local5.delay)) ? 0 : _local5.delay;
if (typeof(_local5.transition) == "string"){
_local11 = _local5.transition.toLowerCase();
_local8 = _transitionList[_local11];
} else {
_local8 = _local5.transition;
};
if (!Boolean(_local8)){
_local8 = _transitionList["easeoutexpo"];
};
_local3 = 0;
while (_local3 < _local4.length) {
if (_local5.useFrames == true){
_local9 = new TweenListObj(_local4[_local3], (_currentTimeFrame + (_local7 / _timeScale)), (_currentTimeFrame + ((_local7 + _local6) / _timeScale)), true, _local8, _local5.transitionParams);
} else {
_local9 = new TweenListObj(_local4[_local3], (_currentTime + ((_local7 * 1000) / _timeScale)), (_currentTime + (((_local7 * 1000) + (_local6 * 1000)) / _timeScale)), false, _local8, _local5.transitionParams);
};
_local9.properties = null;
_local9.onStart = _local5.onStart;
_local9.onUpdate = _local5.onUpdate;
_local9.onComplete = _local5.onComplete;
_local9.onOverwrite = _local5.onOverwrite;
_local9.onStartParams = _local5.onStartParams;
_local9.onUpdateParams = _local5.onUpdateParams;
_local9.onCompleteParams = _local5.onCompleteParams;
_local9.onOverwriteParams = _local5.onOverwriteParams;
_local9.onStartScope = _local5.onStartScope;
_local9.onUpdateScope = _local5.onUpdateScope;
_local9.onCompleteScope = _local5.onCompleteScope;
_local9.onOverwriteScope = _local5.onOverwriteScope;
_local9.onErrorScope = _local5.onErrorScope;
_local9.isCaller = true;
_local9.count = _local5.count;
_local9.waitFrames = _local5.waitFrames;
_tweenList.push(_local9);
if ((((_local6 == 0)) && ((_local7 == 0)))){
_local10 = (_tweenList.length - 1);
updateTweenByIndex(_local10);
removeTweenByIndex(_local10);
};
_local3++;
};
return (true);
}
public static function pauseAllTweens():Boolean{
var _local1:Boolean;
var _local2:uint;
if (!Boolean(_tweenList)){
return (false);
};
_local1 = false;
_local2 = 0;
while (_local2 < _tweenList.length) {
pauseTweenByIndex(_local2);
_local1 = true;
_local2++;
};
return (_local1);
}
public static function removeTweens(_arg1:Object, ... _args):Boolean{
var _local3:Array;
var _local4:uint;
var _local5:SpecialPropertySplitter;
var _local6:Array;
var _local7:uint;
_local3 = new Array();
_local4 = 0;
while (_local4 < _args.length) {
if ((((typeof(_args[_local4]) == "string")) && ((_local3.indexOf(_args[_local4]) == -1)))){
if (_specialPropertySplitterList[_args[_local4]]){
_local5 = _specialPropertySplitterList[_args[_local4]];
_local6 = _local5.splitValues(_arg1, null);
_local7 = 0;
while (_local7 < _local6.length) {
_local3.push(_local6[_local7].name);
_local7++;
};
} else {
_local3.push(_args[_local4]);
};
};
_local4++;
};
return (affectTweens(removeTweenByIndex, _arg1, _local3));
}
public static function updateFrame():void{
_currentTimeFrame++;
}
public static function splitTweens(_arg1:Number, _arg2:Array):uint{
var _local3:TweenListObj;
var _local4:TweenListObj;
var _local5:uint;
var _local6:String;
var _local7:Boolean;
_local3 = _tweenList[_arg1];
_local4 = _local3.clone(false);
_local5 = 0;
while (_local5 < _arg2.length) {
_local6 = _arg2[_local5];
if (Boolean(_local3.properties[_local6])){
_local3.properties[_local6] = undefined;
delete _local3.properties[_local6];
};
_local5++;
};
for (_local6 in _local4.properties) {
_local7 = false;
_local5 = 0;
while (_local5 < _arg2.length) {
if (_arg2[_local5] == _local6){
_local7 = true;
break;
};
_local5++;
};
if (!_local7){
_local4.properties[_local6] = undefined;
delete _local4.properties[_local6];
};
};
_tweenList.push(_local4);
return ((_tweenList.length - 1));
}
public static function resumeTweenByIndex(_arg1:Number):Boolean{
var _local2:TweenListObj;
var _local3:Number;
_local2 = _tweenList[_arg1];
if ((((_local2 == null)) || (!(_local2.isPaused)))){
return (false);
};
_local3 = getCurrentTweeningTime(_local2);
_local2.timeStart = (_local2.timeStart + (_local3 - _local2.timePaused));
_local2.timeComplete = (_local2.timeComplete + (_local3 - _local2.timePaused));
_local2.timePaused = undefined;
_local2.isPaused = false;
return (true);
}
public static function getVersion():String{
return ("AS3 1.33.74");
}
public static function onEnterFrame(_arg1:Event):void{
var _local2:Boolean;
updateTime();
updateFrame();
_local2 = false;
_local2 = updateTweens();
if (!_local2){
stopEngine();
};
}
public static function updateTime():void{
_currentTime = getTimer();
}
private static function updateTweenByIndex(_arg1:Number):Boolean{
var tTweening:TweenListObj;
var isOver:Boolean;
var mustUpdate:Boolean;
var nv:Number;
var t:Number;
var b:Number;
var c:Number;
var d:Number;
var pName:String;
var eventScope:Object;
var tScope:Object;
var cTime:Number;
var tProperty:Object;
var pv:Number;
var i = _arg1;
tTweening = _tweenList[i];
if ((((tTweening == null)) || (!(Boolean(tTweening.scope))))){
return (false);
};
isOver = false;
cTime = getCurrentTweeningTime(tTweening);
if (cTime >= tTweening.timeStart){
tScope = tTweening.scope;
if (tTweening.isCaller){
do {
t = (((tTweening.timeComplete - tTweening.timeStart) / tTweening.count) * (tTweening.timesCalled + 1));
b = tTweening.timeStart;
c = (tTweening.timeComplete - tTweening.timeStart);
d = (tTweening.timeComplete - tTweening.timeStart);
nv = tTweening.transition(t, b, c, d);
} while (!(cTime >= nv));
} else {
mustUpdate = (((((tTweening.skipUpdates < 1)) || (!(tTweening.skipUpdates)))) || ((tTweening.updatesSkipped >= tTweening.skipUpdates)));
if (cTime >= tTweening.timeComplete){
isOver = true;
mustUpdate = true;
};
if (!tTweening.hasStarted){
if (Boolean(tTweening.onStart)){
eventScope = (Boolean(tTweening.onStartScope)) ? tTweening.onStartScope : tScope;
try {
tTweening.onStart.apply(eventScope, tTweening.onStartParams);
} catch(e2:Error) {
handleError(tTweening, e2, "onStart");
};
};
for (pName in tTweening.properties) {
if (tTweening.properties[pName].isSpecialProperty){
if (Boolean(_specialPropertyList[pName].preProcess)){
tTweening.properties[pName].valueComplete = _specialPropertyList[pName].preProcess(tScope, _specialPropertyList[pName].parameters, tTweening.properties[pName].originalValueComplete, tTweening.properties[pName].extra);
};
pv = _specialPropertyList[pName].getValue(tScope, _specialPropertyList[pName].parameters, tTweening.properties[pName].extra);
} else {
pv = tScope[pName];
};
tTweening.properties[pName].valueStart = (isNaN(pv)) ? tTweening.properties[pName].valueComplete : pv;
};
mustUpdate = true;
tTweening.hasStarted = true;
};
if (mustUpdate){
for (pName in tTweening.properties) {
tProperty = tTweening.properties[pName];
if (isOver){
nv = tProperty.valueComplete;
} else {
if (tProperty.hasModifier){
t = (cTime - tTweening.timeStart);
d = (tTweening.timeComplete - tTweening.timeStart);
nv = tTweening.transition(t, 0, 1, d, tTweening.transitionParams);
nv = tProperty.modifierFunction(tProperty.valueStart, tProperty.valueComplete, nv, tProperty.modifierParameters);
} else {
t = (cTime - tTweening.timeStart);
b = tProperty.valueStart;
c = (tProperty.valueComplete - tProperty.valueStart);
d = (tTweening.timeComplete - tTweening.timeStart);
nv = tTweening.transition(t, b, c, d, tTweening.transitionParams);
};
};
if (tTweening.rounded){
nv = Math.round(nv);
};
if (tProperty.isSpecialProperty){
_specialPropertyList[pName].setValue(tScope, nv, _specialPropertyList[pName].parameters, tTweening.properties[pName].extra);
} else {
tScope[pName] = nv;
};
};
tTweening.updatesSkipped = 0;
if (Boolean(tTweening.onUpdate)){
eventScope = (Boolean(tTweening.onUpdateScope)) ? tTweening.onUpdateScope : tScope;
try {
tTweening.onUpdate.apply(eventScope, tTweening.onUpdateParams);
} catch(e3:Error) {
handleError(tTweening, e3, "onUpdate");
};
};
} else {
tTweening.updatesSkipped++;
};
};
if (((isOver) && (Boolean(tTweening.onComplete)))){
eventScope = (Boolean(tTweening.onCompleteScope)) ? tTweening.onCompleteScope : tScope;
try {
tTweening.onComplete.apply(eventScope, tTweening.onCompleteParams);
} catch(e4:Error) {
handleError(tTweening, e4, "onComplete");
};
};
return (!(isOver));
};
return (true);
}
public static function setTimeScale(_arg1:Number):void{
var _local2:Number;
var _local3:Number;
if (isNaN(_arg1)){
_arg1 = 1;
};
if (_arg1 < 1E-5){
_arg1 = 1E-5;
};
if (_arg1 != _timeScale){
if (_tweenList != null){
_local2 = 0;
while (_local2 < _tweenList.length) {
_local3 = getCurrentTweeningTime(_tweenList[_local2]);
_tweenList[_local2].timeStart = (_local3 - (((_local3 - _tweenList[_local2].timeStart) * _timeScale) / _arg1));
_tweenList[_local2].timeComplete = (_local3 - (((_local3 - _tweenList[_local2].timeComplete) * _timeScale) / _arg1));
if (_tweenList[_local2].timePaused != undefined){
_tweenList[_local2].timePaused = (_local3 - (((_local3 - _tweenList[_local2].timePaused) * _timeScale) / _arg1));
};
_local2++;
};
};
_timeScale = _arg1;
};
}
public static function resumeAllTweens():Boolean{
var _local1:Boolean;
var _local2:uint;
if (!Boolean(_tweenList)){
return (false);
};
_local1 = false;
_local2 = 0;
while (_local2 < _tweenList.length) {
resumeTweenByIndex(_local2);
_local1 = true;
_local2++;
};
return (_local1);
}
private static function handleError(_arg1:TweenListObj, _arg2:Error, _arg3:String):void{
var eventScope:Object;
var pTweening = _arg1;
var pError = _arg2;
var pCallBackName = _arg3;
if (((Boolean(pTweening.onError)) && ((pTweening.onError is Function)))){
eventScope = (Boolean(pTweening.onErrorScope)) ? pTweening.onErrorScope : pTweening.scope;
try {
pTweening.onError.apply(eventScope, [pTweening.scope, pError]);
} catch(metaError:Error) {
printError(((((String(pTweening.scope) + " raised an error while executing the 'onError' handler. Original error:\n ") + pError.getStackTrace()) + "\nonError error: ") + metaError.getStackTrace()));
};
} else {
if (!Boolean(pTweening.onError)){
printError(((((String(pTweening.scope) + " raised an error while executing the '") + pCallBackName) + "'handler. \n") + pError.getStackTrace()));
};
};
}
private static function startEngine():void{
_engineExists = true;
_tweenList = new Array();
__tweener_controller__ = new MovieClip();
__tweener_controller__.addEventListener(Event.ENTER_FRAME, Tweener.onEnterFrame);
_currentTimeFrame = 0;
updateTime();
}
public static function removeAllTweens():Boolean{
var _local1:Boolean;
var _local2:uint;
if (!Boolean(_tweenList)){
return (false);
};
_local1 = false;
_local2 = 0;
while (_local2 < _tweenList.length) {
removeTweenByIndex(_local2);
_local1 = true;
_local2++;
};
return (_local1);
}
public static function addTween(_arg1:Object=null, _arg2:Object=null):Boolean{
var _local3:Number;
var _local4:Number;
var _local5:String;
var _local6:Array;
var _local7:Object;
var _local8:Number;
var _local9:Number;
var _local10:Array;
var _local11:Object;
var _local12:Object;
var _local13:Function;
var _local14:Object;
var _local15:TweenListObj;
var _local16:Number;
var _local17:Array;
var _local18:Array;
var _local19:Array;
var _local20:String;
if (!Boolean(_arg1)){
return (false);
};
if ((_arg1 is Array)){
_local6 = _arg1.concat();
} else {
_local6 = [_arg1];
};
_local7 = TweenListObj.makePropertiesChain(_arg2);
if (!_inited){
init();
};
if (((!(_engineExists)) || (!(Boolean(__tweener_controller__))))){
startEngine();
};
_local8 = (isNaN(_local7.time)) ? 0 : _local7.time;
_local9 = (isNaN(_local7.delay)) ? 0 : _local7.delay;
_local10 = new Array();
_local11 = {overwrite:true, time:true, delay:true, useFrames:true, skipUpdates:true, transition:true, transitionParams:true, onStart:true, onUpdate:true, onComplete:true, onOverwrite:true, onError:true, rounded:true, onStartParams:true, onUpdateParams:true, onCompleteParams:true, onOverwriteParams:true, onStartScope:true, onUpdateScope:true, onCompleteScope:true, onOverwriteScope:true, onErrorScope:true};
_local12 = new Object();
for (_local5 in _local7) {
if (!_local11[_local5]){
if (_specialPropertySplitterList[_local5]){
_local17 = _specialPropertySplitterList[_local5].splitValues(_local7[_local5], _specialPropertySplitterList[_local5].parameters);
_local3 = 0;
while (_local3 < _local17.length) {
if (_specialPropertySplitterList[_local17[_local3].name]){
_local18 = _specialPropertySplitterList[_local17[_local3].name].splitValues(_local17[_local3].value, _specialPropertySplitterList[_local17[_local3].name].parameters);
_local4 = 0;
while (_local4 < _local18.length) {
_local10[_local18[_local4].name] = {valueStart:undefined, valueComplete:_local18[_local4].value, arrayIndex:_local18[_local4].arrayIndex, isSpecialProperty:false};
_local4++;
};
} else {
_local10[_local17[_local3].name] = {valueStart:undefined, valueComplete:_local17[_local3].value, arrayIndex:_local17[_local3].arrayIndex, isSpecialProperty:false};
};
_local3++;
};
} else {
if (_specialPropertyModifierList[_local5] != undefined){
_local19 = _specialPropertyModifierList[_local5].modifyValues(_local7[_local5]);
_local3 = 0;
while (_local3 < _local19.length) {
_local12[_local19[_local3].name] = {modifierParameters:_local19[_local3].parameters, modifierFunction:_specialPropertyModifierList[_local5].getValue};
_local3++;
};
} else {
_local10[_local5] = {valueStart:undefined, valueComplete:_local7[_local5]};
};
};
};
};
for (_local5 in _local10) {
if (_specialPropertyList[_local5] != undefined){
_local10[_local5].isSpecialProperty = true;
} else {
if (_local6[0][_local5] == undefined){
printError((((("The property '" + _local5) + "' doesn't seem to be a normal object property of ") + String(_local6[0])) + " or a registered special property."));
};
};
};
for (_local5 in _local12) {
if (_local10[_local5] != undefined){
_local10[_local5].modifierParameters = _local12[_local5].modifierParameters;
_local10[_local5].modifierFunction = _local12[_local5].modifierFunction;
};
};
if (typeof(_local7.transition) == "string"){
_local20 = _local7.transition.toLowerCase();
_local13 = _transitionList[_local20];
} else {
_local13 = _local7.transition;
};
if (!Boolean(_local13)){
_local13 = _transitionList["easeoutexpo"];
};
_local3 = 0;
while (_local3 < _local6.length) {
_local14 = new Object();
for (_local5 in _local10) {
_local14[_local5] = new PropertyInfoObj(_local10[_local5].valueStart, _local10[_local5].valueComplete, _local10[_local5].valueComplete, _local10[_local5].arrayIndex, {}, _local10[_local5].isSpecialProperty, _local10[_local5].modifierFunction, _local10[_local5].modifierParameters);
};
if (_local7.useFrames == true){
_local15 = new TweenListObj(_local6[_local3], (_currentTimeFrame + (_local9 / _timeScale)), (_currentTimeFrame + ((_local9 + _local8) / _timeScale)), true, _local13, _local7.transitionParams);
} else {
_local15 = new TweenListObj(_local6[_local3], (_currentTime + ((_local9 * 1000) / _timeScale)), (_currentTime + (((_local9 * 1000) + (_local8 * 1000)) / _timeScale)), false, _local13, _local7.transitionParams);
};
_local15.properties = _local14;
_local15.onStart = _local7.onStart;
_local15.onUpdate = _local7.onUpdate;
_local15.onComplete = _local7.onComplete;
_local15.onOverwrite = _local7.onOverwrite;
_local15.onError = _local7.onError;
_local15.onStartParams = _local7.onStartParams;
_local15.onUpdateParams = _local7.onUpdateParams;
_local15.onCompleteParams = _local7.onCompleteParams;
_local15.onOverwriteParams = _local7.onOverwriteParams;
_local15.onStartScope = _local7.onStartScope;
_local15.onUpdateScope = _local7.onUpdateScope;
_local15.onCompleteScope = _local7.onCompleteScope;
_local15.onOverwriteScope = _local7.onOverwriteScope;
_local15.onErrorScope = _local7.onErrorScope;
_local15.rounded = _local7.rounded;
_local15.skipUpdates = _local7.skipUpdates;
if (((_local7.overwrite == undefined)) ? autoOverwrite : _local7.overwrite){
removeTweensByTime(_local15.scope, _local15.properties, _local15.timeStart, _local15.timeComplete);
};
_tweenList.push(_local15);
if ((((_local8 == 0)) && ((_local9 == 0)))){
_local16 = (_tweenList.length - 1);
updateTweenByIndex(_local16);
removeTweenByIndex(_local16);
};
_local3++;
};
return (true);
}
public static function registerTransition(_arg1:String, _arg2:Function):void{
if (!_inited){
init();
};
_transitionList[_arg1] = _arg2;
}
public static function printError(_arg1:String):void{
trace(("## [Tweener] Error: " + _arg1));
}
private static function affectTweens(_arg1:Function, _arg2:Object, _arg3:Array):Boolean{
var _local4:Boolean;
var _local5:uint;
var _local6:Array;
var _local7:uint;
var _local8:uint;
var _local9:uint;
_local4 = false;
if (!Boolean(_tweenList)){
return (false);
};
_local5 = 0;
while (_local5 < _tweenList.length) {
if (((_tweenList[_local5]) && ((_tweenList[_local5].scope == _arg2)))){
if (_arg3.length == 0){
_arg1(_local5);
_local4 = true;
} else {
_local6 = new Array();
_local7 = 0;
while (_local7 < _arg3.length) {
if (Boolean(_tweenList[_local5].properties[_arg3[_local7]])){
_local6.push(_arg3[_local7]);
};
_local7++;
};
if (_local6.length > 0){
_local8 = AuxFunctions.getObjectLength(_tweenList[_local5].properties);
if (_local8 == _local6.length){
_arg1(_local5);
_local4 = true;
} else {
_local9 = splitTweens(_local5, _local6);
_arg1(_local9);
_local4 = true;
};
};
};
};
_local5++;
};
return (_local4);
}
public static function getTweens(_arg1:Object):Array{
var _local2:uint;
var _local3:String;
var _local4:Array;
if (!Boolean(_tweenList)){
return ([]);
};
_local4 = new Array();
_local2 = 0;
while (_local2 < _tweenList.length) {
if (((Boolean(_tweenList[_local2])) && ((_tweenList[_local2].scope == _arg1)))){
for (_local3 in _tweenList[_local2].properties) {
_local4.push(_local3);
};
};
_local2++;
};
return (_local4);
}
public static function isTweening(_arg1:Object):Boolean{
var _local2:uint;
if (!Boolean(_tweenList)){
return (false);
};
_local2 = 0;
while (_local2 < _tweenList.length) {
if (((Boolean(_tweenList[_local2])) && ((_tweenList[_local2].scope == _arg1)))){
return (true);
};
_local2++;
};
return (false);
}
public static function pauseTweenByIndex(_arg1:Number):Boolean{
var _local2:TweenListObj;
_local2 = _tweenList[_arg1];
if ((((_local2 == null)) || (_local2.isPaused))){
return (false);
};
_local2.timePaused = getCurrentTweeningTime(_local2);
_local2.isPaused = true;
return (true);
}
public static function getCurrentTweeningTime(_arg1:Object):Number{
return ((_arg1.useFrames) ? _currentTimeFrame : _currentTime);
}
public static function getTweenCount(_arg1:Object):Number{
var _local2:uint;
var _local3:Number;
if (!Boolean(_tweenList)){
return (0);
};
_local3 = 0;
_local2 = 0;
while (_local2 < _tweenList.length) {
if (((Boolean(_tweenList[_local2])) && ((_tweenList[_local2].scope == _arg1)))){
_local3 = (_local3 + AuxFunctions.getObjectLength(_tweenList[_local2].properties));
};
_local2++;
};
return (_local3);
}
private static function stopEngine():void{
_engineExists = false;
_tweenList = null;
_currentTime = 0;
_currentTimeFrame = 0;
__tweener_controller__.removeEventListener(Event.ENTER_FRAME, Tweener.onEnterFrame);
__tweener_controller__ = null;
}
public static function removeTweensByTime(_arg1:Object, _arg2:Object, _arg3:Number, _arg4:Number):Boolean{
var removed:Boolean;
var removedLocally:Boolean;
var i:uint;
var tl:uint;
var pName:String;
var eventScope:Object;
var p_scope = _arg1;
var p_properties = _arg2;
var p_timeStart = _arg3;
var p_timeComplete = _arg4;
removed = false;
tl = _tweenList.length;
i = 0;
while (i < tl) {
if (((Boolean(_tweenList[i])) && ((p_scope == _tweenList[i].scope)))){
if ((((p_timeComplete > _tweenList[i].timeStart)) && ((p_timeStart < _tweenList[i].timeComplete)))){
removedLocally = false;
for (pName in _tweenList[i].properties) {
if (Boolean(p_properties[pName])){
if (Boolean(_tweenList[i].onOverwrite)){
eventScope = (Boolean(_tweenList[i].onOverwriteScope)) ? _tweenList[i].onOverwriteScope : _tweenList[i].scope;
try {
_tweenList[i].onOverwrite.apply(eventScope, _tweenList[i].onOverwriteParams);
} catch(e:Error) {
handleError(_tweenList[i], e, "onOverwrite");
};
};
_tweenList[i].properties[pName] = undefined;
delete _tweenList[i].properties[pName];
removedLocally = true;
removed = true;
};
};
if (removedLocally){
if (AuxFunctions.getObjectLength(_tweenList[i].properties) == 0){
removeTweenByIndex(i);
};
};
};
};
i = (i + 1);
};
return (removed);
}
public static function registerSpecialPropertySplitter(_arg1:String, _arg2:Function, _arg3:Array=null):void{
var _local4:SpecialPropertySplitter;
if (!_inited){
init();
};
_local4 = new SpecialPropertySplitter(_arg2, _arg3);
_specialPropertySplitterList[_arg1] = _local4;
}
public static function removeTweenByIndex(_arg1:Number, _arg2:Boolean=false):Boolean{
_tweenList[_arg1] = null;
if (_arg2){
_tweenList.splice(_arg1, 1);
};
return (true);
}
public static function resumeTweens(_arg1:Object, ... _args):Boolean{
var _local3:Array;
var _local4:uint;
_local3 = new Array();
_local4 = 0;
while (_local4 < _args.length) {
if ((((typeof(_args[_local4]) == "string")) && ((_local3.indexOf(_args[_local4]) == -1)))){
_local3.push(_args[_local4]);
};
_local4++;
};
return (affectTweens(resumeTweenByIndex, _arg1, _local3));
}
public static function pauseTweens(_arg1:Object, ... _args):Boolean{
var _local3:Array;
var _local4:uint;
_local3 = new Array();
_local4 = 0;
while (_local4 < _args.length) {
if ((((typeof(_args[_local4]) == "string")) && ((_local3.indexOf(_args[_local4]) == -1)))){
_local3.push(_args[_local4]);
};
_local4++;
};
return (affectTweens(pauseTweenByIndex, _arg1, _local3));
}
}
}//package caurina.transitions
Section 13
//TweenListObj (caurina.transitions.TweenListObj)
package caurina.transitions {
public class TweenListObj {
public var onUpdate:Function;
public var useFrames:Boolean;
public var hasStarted:Boolean;
public var onOverwriteParams:Array;
public var timeStart:Number;
public var count:Number;
public var timeComplete:Number;
public var onStartParams:Array;
public var onUpdateScope:Object;
public var rounded:Boolean;
public var onUpdateParams:Array;
public var properties:Object;
public var onComplete:Function;
public var transitionParams:Object;
public var updatesSkipped:Number;
public var onStart:Function;
public var onOverwriteScope:Object;
public var skipUpdates:Number;
public var onStartScope:Object;
public var scope:Object;
public var transition:Function;
public var timePaused:Number;
public var onCompleteParams:Array;
public var timesCalled:Number;
public var isCaller:Boolean;
public var onError:Function;
public var onErrorScope:Object;
public var onOverwrite:Function;
public var isPaused:Boolean;
public var waitFrames:Boolean;
public var onCompleteScope:Object;
public function TweenListObj(_arg1:Object, _arg2:Number, _arg3:Number, _arg4:Boolean, _arg5:Function, _arg6:Object){
scope = _arg1;
timeStart = _arg2;
timeComplete = _arg3;
useFrames = _arg4;
transition = _arg5;
transitionParams = _arg6;
properties = new Object();
isPaused = false;
timePaused = undefined;
isCaller = false;
updatesSkipped = 0;
timesCalled = 0;
skipUpdates = 0;
hasStarted = false;
}
public function clone(_arg1:Boolean):TweenListObj{
var _local2:TweenListObj;
var _local3:String;
_local2 = new TweenListObj(scope, timeStart, timeComplete, useFrames, transition, transitionParams);
_local2.properties = new Array();
for (_local3 in properties) {
_local2.properties[_local3] = properties[_local3].clone();
};
_local2.skipUpdates = skipUpdates;
_local2.updatesSkipped = updatesSkipped;
if (!_arg1){
_local2.onStart = onStart;
_local2.onUpdate = onUpdate;
_local2.onComplete = onComplete;
_local2.onOverwrite = onOverwrite;
_local2.onError = onError;
_local2.onStartParams = onStartParams;
_local2.onUpdateParams = onUpdateParams;
_local2.onCompleteParams = onCompleteParams;
_local2.onOverwriteParams = onOverwriteParams;
_local2.onStartScope = onStartScope;
_local2.onUpdateScope = onUpdateScope;
_local2.onCompleteScope = onCompleteScope;
_local2.onOverwriteScope = onOverwriteScope;
_local2.onErrorScope = onErrorScope;
};
_local2.rounded = rounded;
_local2.isPaused = isPaused;
_local2.timePaused = timePaused;
_local2.isCaller = isCaller;
_local2.count = count;
_local2.timesCalled = timesCalled;
_local2.waitFrames = waitFrames;
_local2.hasStarted = hasStarted;
return (_local2);
}
public function toString():String{
var _local1:String;
var _local2:Boolean;
var _local3:String;
_local1 = "\n[TweenListObj ";
_local1 = (_local1 + ("scope:" + String(scope)));
_local1 = (_local1 + ", properties:");
_local2 = true;
for (_local3 in properties) {
if (!_local2){
_local1 = (_local1 + ",");
};
_local1 = (_local1 + ("[name:" + properties[_local3].name));
_local1 = (_local1 + (",valueStart:" + properties[_local3].valueStart));
_local1 = (_local1 + (",valueComplete:" + properties[_local3].valueComplete));
_local1 = (_local1 + "]");
_local2 = false;
};
_local1 = (_local1 + (", timeStart:" + String(timeStart)));
_local1 = (_local1 + (", timeComplete:" + String(timeComplete)));
_local1 = (_local1 + (", useFrames:" + String(useFrames)));
_local1 = (_local1 + (", transition:" + String(transition)));
_local1 = (_local1 + (", transitionParams:" + String(transitionParams)));
if (skipUpdates){
_local1 = (_local1 + (", skipUpdates:" + String(skipUpdates)));
};
if (updatesSkipped){
_local1 = (_local1 + (", updatesSkipped:" + String(updatesSkipped)));
};
if (Boolean(onStart)){
_local1 = (_local1 + (", onStart:" + String(onStart)));
};
if (Boolean(onUpdate)){
_local1 = (_local1 + (", onUpdate:" + String(onUpdate)));
};
if (Boolean(onComplete)){
_local1 = (_local1 + (", onComplete:" + String(onComplete)));
};
if (Boolean(onOverwrite)){
_local1 = (_local1 + (", onOverwrite:" + String(onOverwrite)));
};
if (Boolean(onError)){
_local1 = (_local1 + (", onError:" + String(onError)));
};
if (onStartParams){
_local1 = (_local1 + (", onStartParams:" + String(onStartParams)));
};
if (onUpdateParams){
_local1 = (_local1 + (", onUpdateParams:" + String(onUpdateParams)));
};
if (onCompleteParams){
_local1 = (_local1 + (", onCompleteParams:" + String(onCompleteParams)));
};
if (onOverwriteParams){
_local1 = (_local1 + (", onOverwriteParams:" + String(onOverwriteParams)));
};
if (onStartScope){
_local1 = (_local1 + (", onStartScope:" + String(onStartScope)));
};
if (onUpdateScope){
_local1 = (_local1 + (", onUpdateScope:" + String(onUpdateScope)));
};
if (onCompleteScope){
_local1 = (_local1 + (", onCompleteScope:" + String(onCompleteScope)));
};
if (onOverwriteScope){
_local1 = (_local1 + (", onOverwriteScope:" + String(onOverwriteScope)));
};
if (onErrorScope){
_local1 = (_local1 + (", onErrorScope:" + String(onErrorScope)));
};
if (rounded){
_local1 = (_local1 + (", rounded:" + String(rounded)));
};
if (isPaused){
_local1 = (_local1 + (", isPaused:" + String(isPaused)));
};
if (timePaused){
_local1 = (_local1 + (", timePaused:" + String(timePaused)));
};
if (isCaller){
_local1 = (_local1 + (", isCaller:" + String(isCaller)));
};
if (count){
_local1 = (_local1 + (", count:" + String(count)));
};
if (timesCalled){
_local1 = (_local1 + (", timesCalled:" + String(timesCalled)));
};
if (waitFrames){
_local1 = (_local1 + (", waitFrames:" + String(waitFrames)));
};
if (hasStarted){
_local1 = (_local1 + (", hasStarted:" + String(hasStarted)));
};
_local1 = (_local1 + "]\n");
return (_local1);
}
public static function makePropertiesChain(_arg1:Object):Object{
var _local2:Object;
var _local3:Object;
var _local4:Object;
var _local5:Object;
var _local6:Number;
var _local7:Number;
var _local8:Number;
_local2 = _arg1.base;
if (_local2){
_local3 = {};
if ((_local2 is Array)){
_local4 = [];
_local8 = 0;
while (_local8 < _local2.length) {
_local4.push(_local2[_local8]);
_local8++;
};
} else {
_local4 = [_local2];
};
_local4.push(_arg1);
_local6 = _local4.length;
_local7 = 0;
while (_local7 < _local6) {
if (_local4[_local7]["base"]){
_local5 = AuxFunctions.concatObjects(makePropertiesChain(_local4[_local7]["base"]), _local4[_local7]);
} else {
_local5 = _local4[_local7];
};
_local3 = AuxFunctions.concatObjects(_local3, _local5);
_local7++;
};
if (_local3["base"]){
delete _local3["base"];
};
return (_local3);
//unresolved jump
};
return (_arg1);
}
}
}//package caurina.transitions
Section 14
//MD5 (com.adobe.crypto.MD5)
package com.adobe.crypto {
import flash.utils.*;
import com.adobe.utils.*;
public class MD5 {
public static var digest:ByteArray;
private static function ff(_arg1:int, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int):int{
return (transform(f, _arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7));
}
private static function f(_arg1:int, _arg2:int, _arg3:int):int{
return (((_arg1 & _arg2) | (~(_arg1) & _arg3)));
}
private static function g(_arg1:int, _arg2:int, _arg3:int):int{
return (((_arg1 & _arg3) | (_arg2 & ~(_arg3))));
}
private static function h(_arg1:int, _arg2:int, _arg3:int):int{
return (((_arg1 ^ _arg2) ^ _arg3));
}
private static function i(_arg1:int, _arg2:int, _arg3:int):int{
return ((_arg2 ^ (_arg1 | ~(_arg3))));
}
private static function transform(_arg1:Function, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int, _arg8:int):int{
var _local9:int = (((_arg2 + int(_arg1(_arg3, _arg4, _arg5))) + _arg6) + _arg8);
return ((IntUtil.rol(_local9, _arg7) + _arg3));
}
private static function hh(_arg1:int, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int):int{
return (transform(h, _arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7));
}
public static function hash(_arg1:String):String{
var _local2:ByteArray = new ByteArray();
_local2.writeUTFBytes(_arg1);
return (hashBinary(_local2));
}
private static function createBlocks(_arg1:ByteArray):Array{
var _local2:Array = new Array();
var _local3:int = (_arg1.length * 8);
var _local4 = 0xFF;
var _local5:int;
while (_local5 < _local3) {
_local2[int((_local5 >> 5))] = (_local2[int((_local5 >> 5))] | ((_arg1[(_local5 / 8)] & _local4) << (_local5 % 32)));
_local5 = (_local5 + 8);
};
_local2[int((_local3 >> 5))] = (_local2[int((_local3 >> 5))] | (128 << (_local3 % 32)));
_local2[int(((((_local3 + 64) >>> 9) << 4) + 14))] = _local3;
return (_local2);
}
public static function hashBinary(_arg1:ByteArray):String{
var _local6:int;
var _local7:int;
var _local8:int;
var _local9:int;
var _local2 = 1732584193;
var _local3 = -271733879;
var _local4 = -1732584194;
var _local5 = 271733878;
var _local10:Array = createBlocks(_arg1);
var _local11:int = _local10.length;
var _local12:int;
while (_local12 < _local11) {
_local6 = _local2;
_local7 = _local3;
_local8 = _local4;
_local9 = _local5;
_local2 = ff(_local2, _local3, _local4, _local5, _local10[int((_local12 + 0))], 7, -680876936);
_local5 = ff(_local5, _local2, _local3, _local4, _local10[int((_local12 + 1))], 12, -389564586);
_local4 = ff(_local4, _local5, _local2, _local3, _local10[int((_local12 + 2))], 17, 606105819);
_local3 = ff(_local3, _local4, _local5, _local2, _local10[int((_local12 + 3))], 22, -1044525330);
_local2 = ff(_local2, _local3, _local4, _local5, _local10[int((_local12 + 4))], 7, -176418897);
_local5 = ff(_local5, _local2, _local3, _local4, _local10[int((_local12 + 5))], 12, 1200080426);
_local4 = ff(_local4, _local5, _local2, _local3, _local10[int((_local12 + 6))], 17, -1473231341);
_local3 = ff(_local3, _local4, _local5, _local2, _local10[int((_local12 + 7))], 22, -45705983);
_local2 = ff(_local2, _local3, _local4, _local5, _local10[int((_local12 + 8))], 7, 1770035416);
_local5 = ff(_local5, _local2, _local3, _local4, _local10[int((_local12 + 9))], 12, -1958414417);
_local4 = ff(_local4, _local5, _local2, _local3, _local10[int((_local12 + 10))], 17, -42063);
_local3 = ff(_local3, _local4, _local5, _local2, _local10[int((_local12 + 11))], 22, -1990404162);
_local2 = ff(_local2, _local3, _local4, _local5, _local10[int((_local12 + 12))], 7, 1804603682);
_local5 = ff(_local5, _local2, _local3, _local4, _local10[int((_local12 + 13))], 12, -40341101);
_local4 = ff(_local4, _local5, _local2, _local3, _local10[int((_local12 + 14))], 17, -1502002290);
_local3 = ff(_local3, _local4, _local5, _local2, _local10[int((_local12 + 15))], 22, 1236535329);
_local2 = gg(_local2, _local3, _local4, _local5, _local10[int((_local12 + 1))], 5, -165796510);
_local5 = gg(_local5, _local2, _local3, _local4, _local10[int((_local12 + 6))], 9, -1069501632);
_local4 = gg(_local4, _local5, _local2, _local3, _local10[int((_local12 + 11))], 14, 643717713);
_local3 = gg(_local3, _local4, _local5, _local2, _local10[int((_local12 + 0))], 20, -373897302);
_local2 = gg(_local2, _local3, _local4, _local5, _local10[int((_local12 + 5))], 5, -701558691);
_local5 = gg(_local5, _local2, _local3, _local4, _local10[int((_local12 + 10))], 9, 38016083);
_local4 = gg(_local4, _local5, _local2, _local3, _local10[int((_local12 + 15))], 14, -660478335);
_local3 = gg(_local3, _local4, _local5, _local2, _local10[int((_local12 + 4))], 20, -405537848);
_local2 = gg(_local2, _local3, _local4, _local5, _local10[int((_local12 + 9))], 5, 568446438);
_local5 = gg(_local5, _local2, _local3, _local4, _local10[int((_local12 + 14))], 9, -1019803690);
_local4 = gg(_local4, _local5, _local2, _local3, _local10[int((_local12 + 3))], 14, -187363961);
_local3 = gg(_local3, _local4, _local5, _local2, _local10[int((_local12 + 8))], 20, 1163531501);
_local2 = gg(_local2, _local3, _local4, _local5, _local10[int((_local12 + 13))], 5, -1444681467);
_local5 = gg(_local5, _local2, _local3, _local4, _local10[int((_local12 + 2))], 9, -51403784);
_local4 = gg(_local4, _local5, _local2, _local3, _local10[int((_local12 + 7))], 14, 1735328473);
_local3 = gg(_local3, _local4, _local5, _local2, _local10[int((_local12 + 12))], 20, -1926607734);
_local2 = hh(_local2, _local3, _local4, _local5, _local10[int((_local12 + 5))], 4, -378558);
_local5 = hh(_local5, _local2, _local3, _local4, _local10[int((_local12 + 8))], 11, -2022574463);
_local4 = hh(_local4, _local5, _local2, _local3, _local10[int((_local12 + 11))], 16, 1839030562);
_local3 = hh(_local3, _local4, _local5, _local2, _local10[int((_local12 + 14))], 23, -35309556);
_local2 = hh(_local2, _local3, _local4, _local5, _local10[int((_local12 + 1))], 4, -1530992060);
_local5 = hh(_local5, _local2, _local3, _local4, _local10[int((_local12 + 4))], 11, 1272893353);
_local4 = hh(_local4, _local5, _local2, _local3, _local10[int((_local12 + 7))], 16, -155497632);
_local3 = hh(_local3, _local4, _local5, _local2, _local10[int((_local12 + 10))], 23, -1094730640);
_local2 = hh(_local2, _local3, _local4, _local5, _local10[int((_local12 + 13))], 4, 681279174);
_local5 = hh(_local5, _local2, _local3, _local4, _local10[int((_local12 + 0))], 11, -358537222);
_local4 = hh(_local4, _local5, _local2, _local3, _local10[int((_local12 + 3))], 16, -722521979);
_local3 = hh(_local3, _local4, _local5, _local2, _local10[int((_local12 + 6))], 23, 76029189);
_local2 = hh(_local2, _local3, _local4, _local5, _local10[int((_local12 + 9))], 4, -640364487);
_local5 = hh(_local5, _local2, _local3, _local4, _local10[int((_local12 + 12))], 11, -421815835);
_local4 = hh(_local4, _local5, _local2, _local3, _local10[int((_local12 + 15))], 16, 530742520);
_local3 = hh(_local3, _local4, _local5, _local2, _local10[int((_local12 + 2))], 23, -995338651);
_local2 = ii(_local2, _local3, _local4, _local5, _local10[int((_local12 + 0))], 6, -198630844);
_local5 = ii(_local5, _local2, _local3, _local4, _local10[int((_local12 + 7))], 10, 1126891415);
_local4 = ii(_local4, _local5, _local2, _local3, _local10[int((_local12 + 14))], 15, -1416354905);
_local3 = ii(_local3, _local4, _local5, _local2, _local10[int((_local12 + 5))], 21, -57434055);
_local2 = ii(_local2, _local3, _local4, _local5, _local10[int((_local12 + 12))], 6, 1700485571);
_local5 = ii(_local5, _local2, _local3, _local4, _local10[int((_local12 + 3))], 10, -1894986606);
_local4 = ii(_local4, _local5, _local2, _local3, _local10[int((_local12 + 10))], 15, -1051523);
_local3 = ii(_local3, _local4, _local5, _local2, _local10[int((_local12 + 1))], 21, -2054922799);
_local2 = ii(_local2, _local3, _local4, _local5, _local10[int((_local12 + 8))], 6, 1873313359);
_local5 = ii(_local5, _local2, _local3, _local4, _local10[int((_local12 + 15))], 10, -30611744);
_local4 = ii(_local4, _local5, _local2, _local3, _local10[int((_local12 + 6))], 15, -1560198380);
_local3 = ii(_local3, _local4, _local5, _local2, _local10[int((_local12 + 13))], 21, 1309151649);
_local2 = ii(_local2, _local3, _local4, _local5, _local10[int((_local12 + 4))], 6, -145523070);
_local5 = ii(_local5, _local2, _local3, _local4, _local10[int((_local12 + 11))], 10, -1120210379);
_local4 = ii(_local4, _local5, _local2, _local3, _local10[int((_local12 + 2))], 15, 718787259);
_local3 = ii(_local3, _local4, _local5, _local2, _local10[int((_local12 + 9))], 21, -343485551);
_local2 = (_local2 + _local6);
_local3 = (_local3 + _local7);
_local4 = (_local4 + _local8);
_local5 = (_local5 + _local9);
_local12 = (_local12 + 16);
};
digest = new ByteArray();
digest.writeInt(_local2);
digest.writeInt(_local3);
digest.writeInt(_local4);
digest.writeInt(_local5);
digest.position = 0;
return ((((IntUtil.toHex(_local2) + IntUtil.toHex(_local3)) + IntUtil.toHex(_local4)) + IntUtil.toHex(_local5)));
}
private static function gg(_arg1:int, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int):int{
return (transform(g, _arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7));
}
private static function ii(_arg1:int, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int):int{
return (transform(i, _arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7));
}
public static function hashBytes(_arg1:ByteArray):String{
return (hashBinary(_arg1));
}
}
}//package com.adobe.crypto
Section 15
//PNGEncoder (com.adobe.images.PNGEncoder)
package com.adobe.images {
import flash.display.*;
import flash.utils.*;
import flash.geom.*;
public class PNGEncoder {
private static var crcTableComputed:Boolean = false;
private static var crcTable:Array;
private static function writeChunk(_arg1:ByteArray, _arg2:uint, _arg3:ByteArray):void{
var _local8:uint;
var _local9:uint;
var _local10:uint;
if (!crcTableComputed){
crcTableComputed = true;
crcTable = [];
_local9 = 0;
while (_local9 < 0x0100) {
_local8 = _local9;
_local10 = 0;
while (_local10 < 8) {
if ((_local8 & 1)){
_local8 = uint((uint(3988292384) ^ uint((_local8 >>> 1))));
} else {
_local8 = uint((_local8 >>> 1));
};
_local10++;
};
crcTable[_local9] = _local8;
_local9++;
};
};
var _local4:uint;
if (_arg3 != null){
_local4 = _arg3.length;
};
_arg1.writeUnsignedInt(_local4);
var _local5:uint = _arg1.position;
_arg1.writeUnsignedInt(_arg2);
if (_arg3 != null){
_arg1.writeBytes(_arg3);
};
var _local6:uint = _arg1.position;
_arg1.position = _local5;
_local8 = 4294967295;
var _local7:int;
while (_local7 < (_local6 - _local5)) {
_local8 = uint((crcTable[((_local8 ^ _arg1.readUnsignedByte()) & uint(0xFF))] ^ uint((_local8 >>> 8))));
_local7++;
};
_local8 = uint((_local8 ^ uint(4294967295)));
_arg1.position = _local6;
_arg1.writeUnsignedInt(_local8);
}
public static function encode(_arg1:BitmapData):ByteArray{
var _local6:uint;
var _local7:int;
var _local2:ByteArray = new ByteArray();
_local2.writeUnsignedInt(2303741511);
_local2.writeUnsignedInt(218765834);
var _local3:ByteArray = new ByteArray();
_local3.writeInt(_arg1.width);
_local3.writeInt(_arg1.height);
_local3.writeUnsignedInt(134610944);
_local3.writeByte(0);
writeChunk(_local2, 1229472850, _local3);
var _local4:ByteArray = new ByteArray();
var _local5:int;
while (_local5 < _arg1.height) {
_local4.writeByte(0);
if (!_arg1.transparent){
_local7 = 0;
while (_local7 < _arg1.width) {
_local6 = _arg1.getPixel(_local7, _local5);
_local4.writeUnsignedInt(uint((((_local6 & 0xFFFFFF) << 8) | 0xFF)));
_local7++;
};
} else {
_local7 = 0;
while (_local7 < _arg1.width) {
_local6 = _arg1.getPixel32(_local7, _local5);
_local4.writeUnsignedInt(uint((((_local6 & 0xFFFFFF) << 8) | (_local6 >>> 24))));
_local7++;
};
};
_local5++;
};
_local4.compress();
writeChunk(_local2, 1229209940, _local4);
writeChunk(_local2, 1229278788, null);
return (_local2);
}
}
}//package com.adobe.images
Section 16
//JSON (com.adobe.serialization.json.JSON)
package com.adobe.serialization.json {
public class JSON {
public static function decode(_arg1:String){
var _local2:JSONDecoder = new JSONDecoder(_arg1);
return (_local2.getValue());
}
public static function encode(_arg1:Object):String{
var _local2:JSONEncoder = new JSONEncoder(_arg1);
return (_local2.getString());
}
}
}//package com.adobe.serialization.json
Section 17
//JSONDecoder (com.adobe.serialization.json.JSONDecoder)
package com.adobe.serialization.json {
public class JSONDecoder {
private var value;
private var tokenizer:JSONTokenizer;
private var token:JSONToken;
public function JSONDecoder(_arg1:String){
tokenizer = new JSONTokenizer(_arg1);
nextToken();
value = parseValue();
}
private function parseObject():Object{
var _local2:String;
var _local1:Object = new Object();
nextToken();
if (token.type == JSONTokenType.RIGHT_BRACE){
return (_local1);
};
while (true) {
if (token.type == JSONTokenType.STRING){
_local2 = String(token.value);
nextToken();
if (token.type == JSONTokenType.COLON){
nextToken();
_local1[_local2] = parseValue();
nextToken();
if (token.type == JSONTokenType.RIGHT_BRACE){
return (_local1);
};
if (token.type == JSONTokenType.COMMA){
nextToken();
} else {
tokenizer.parseError(("Expecting } or , but found " + token.value));
};
} else {
tokenizer.parseError(("Expecting : but found " + token.value));
};
} else {
tokenizer.parseError(("Expecting string but found " + token.value));
};
};
return (null);
}
private function parseValue():Object{
if (token == null){
tokenizer.parseError("Unexpected end of input");
};
switch (token.type){
case JSONTokenType.LEFT_BRACE:
return (parseObject());
case JSONTokenType.LEFT_BRACKET:
return (parseArray());
case JSONTokenType.STRING:
case JSONTokenType.NUMBER:
case JSONTokenType.TRUE:
case JSONTokenType.FALSE:
case JSONTokenType.NULL:
return (token.value);
default:
tokenizer.parseError(("Unexpected " + token.value));
};
return (null);
}
private function nextToken():JSONToken{
return ((token = tokenizer.getNextToken()));
}
public function getValue(){
return (value);
}
private function parseArray():Array{
var _local1:Array = new Array();
nextToken();
if (token.type == JSONTokenType.RIGHT_BRACKET){
return (_local1);
};
while (true) {
_local1.push(parseValue());
nextToken();
if (token.type == JSONTokenType.RIGHT_BRACKET){
return (_local1);
};
if (token.type == JSONTokenType.COMMA){
nextToken();
} else {
tokenizer.parseError(("Expecting ] or , but found " + token.value));
};
};
return (null);
}
}
}//package com.adobe.serialization.json
Section 18
//JSONEncoder (com.adobe.serialization.json.JSONEncoder)
package com.adobe.serialization.json {
import flash.utils.*;
public class JSONEncoder {
private var jsonString:String;
public function JSONEncoder(_arg1){
jsonString = convertToString(_arg1);
}
private function escapeString(_arg1:String):String{
var _local3:String;
var _local6:String;
var _local7:String;
var _local2 = "";
var _local4:Number = _arg1.length;
var _local5:int;
while (_local5 < _local4) {
_local3 = _arg1.charAt(_local5);
switch (_local3){
case "\"":
_local2 = (_local2 + "\\\"");
break;
case "\\":
_local2 = (_local2 + "\\\\");
break;
case "\b":
_local2 = (_local2 + "\\b");
break;
case "\f":
_local2 = (_local2 + "\\f");
break;
case "\n":
_local2 = (_local2 + "\\n");
break;
case "\r":
_local2 = (_local2 + "\\r");
break;
case "\t":
_local2 = (_local2 + "\\t");
break;
default:
if (_local3 < " "){
_local6 = _local3.charCodeAt(0).toString(16);
_local7 = ((_local6.length == 2)) ? "00" : "000";
_local2 = (_local2 + (("\\u" + _local7) + _local6));
} else {
_local2 = (_local2 + _local3);
};
};
_local5++;
};
return ((("\"" + _local2) + "\""));
}
private function arrayToString(_arg1:Array):String{
var _local2 = "";
var _local3:int;
while (_local3 < _arg1.length) {
if (_local2.length > 0){
_local2 = (_local2 + ",");
};
_local2 = (_local2 + convertToString(_arg1[_local3]));
_local3++;
};
return ((("[" + _local2) + "]"));
}
public function getString():String{
return (jsonString);
}
private function objectToString(_arg1:Object):String{
var value:Object;
var key:String;
var v:XML;
var o = _arg1;
var s = "";
var classInfo:XML = describeType(o);
if (classInfo.@name.toString() == "Object"){
for (key in o) {
value = o[key];
if ((value is Function)){
} else {
if (s.length > 0){
s = (s + ",");
};
s = (s + ((escapeString(key) + ":") + convertToString(value)));
};
};
} else {
for each (v in classInfo..*.(((name() == "variable")) || ((name() == "accessor")))) {
if (s.length > 0){
s = (s + ",");
};
s = (s + ((escapeString(v.@name.toString()) + ":") + convertToString(o[v.@name])));
};
};
return ((("{" + s) + "}"));
}
private function convertToString(_arg1):String{
if ((_arg1 is String)){
return (escapeString((_arg1 as String)));
};
if ((_arg1 is Number)){
return ((isFinite((_arg1 as Number))) ? _arg1.toString() : "null");
} else {
if ((_arg1 is Boolean)){
return ((_arg1) ? "true" : "false");
} else {
if ((_arg1 is Array)){
return (arrayToString((_arg1 as Array)));
};
if ((((_arg1 is Object)) && (!((_arg1 == null))))){
return (objectToString(_arg1));
};
};
};
return ("null");
}
}
}//package com.adobe.serialization.json
Section 19
//JSONParseError (com.adobe.serialization.json.JSONParseError)
package com.adobe.serialization.json {
public class JSONParseError extends Error {
private var _location:int;
private var _text:String;
public function JSONParseError(_arg1:String="", _arg2:int=0, _arg3:String=""){
super(_arg1);
name = "JSONParseError";
_location = _arg2;
_text = _arg3;
}
public function get location():int{
return (_location);
}
public function get text():String{
return (_text);
}
}
}//package com.adobe.serialization.json
Section 20
//JSONToken (com.adobe.serialization.json.JSONToken)
package com.adobe.serialization.json {
public class JSONToken {
private var _value:Object;
private var _type:int;
public function JSONToken(_arg1:int=-1, _arg2:Object=null){
_type = _arg1;
_value = _arg2;
}
public function get value():Object{
return (_value);
}
public function get type():int{
return (_type);
}
public function set type(_arg1:int):void{
_type = _arg1;
}
public function set value(_arg1:Object):void{
_value = _arg1;
}
}
}//package com.adobe.serialization.json
Section 21
//JSONTokenizer (com.adobe.serialization.json.JSONTokenizer)
package com.adobe.serialization.json {
public class JSONTokenizer {
private var loc:int;
private var ch:String;
private var obj:Object;
private var jsonString:String;
public function JSONTokenizer(_arg1:String){
jsonString = _arg1;
loc = 0;
nextChar();
}
private function skipComments():void{
if (ch == "/"){
nextChar();
switch (ch){
case "/":
do {
nextChar();
} while (((!((ch == "\n"))) && (!((ch == "")))));
nextChar();
break;
case "*":
nextChar();
while (true) {
if (ch == "*"){
nextChar();
if (ch == "/"){
nextChar();
break;
};
} else {
nextChar();
};
if (ch == ""){
parseError("Multi-line comment not closed");
};
};
break;
default:
parseError((("Unexpected " + ch) + " encountered (expecting '/' or '*' )"));
};
};
}
private function isDigit(_arg1:String):Boolean{
return ((((_arg1 >= "0")) && ((_arg1 <= "9"))));
}
private function readString():JSONToken{
var _local3:String;
var _local4:int;
var _local1:JSONToken = new JSONToken();
_local1.type = JSONTokenType.STRING;
var _local2 = "";
nextChar();
while (((!((ch == "\""))) && (!((ch == ""))))) {
if (ch == "\\"){
nextChar();
switch (ch){
case "\"":
_local2 = (_local2 + "\"");
break;
case "/":
_local2 = (_local2 + "/");
break;
case "\\":
_local2 = (_local2 + "\\");
break;
case "b":
_local2 = (_local2 + "\b");
break;
case "f":
_local2 = (_local2 + "\f");
break;
case "n":
_local2 = (_local2 + "\n");
break;
case "r":
_local2 = (_local2 + "\r");
break;
case "t":
_local2 = (_local2 + "\t");
break;
case "u":
_local3 = "";
_local4 = 0;
while (_local4 < 4) {
if (!isHexDigit(nextChar())){
parseError((" Excepted a hex digit, but found: " + ch));
};
_local3 = (_local3 + ch);
_local4++;
};
_local2 = (_local2 + String.fromCharCode(parseInt(_local3, 16)));
break;
default:
_local2 = (_local2 + ("\\" + ch));
};
} else {
_local2 = (_local2 + ch);
};
nextChar();
};
if (ch == ""){
parseError("Unterminated string literal");
};
nextChar();
_local1.value = _local2;
return (_local1);
}
private function nextChar():String{
return ((ch = jsonString.charAt(loc++)));
}
public function getNextToken():JSONToken{
var _local2:String;
var _local3:String;
var _local4:String;
var _local1:JSONToken = new JSONToken();
skipIgnored();
switch (ch){
case "{":
_local1.type = JSONTokenType.LEFT_BRACE;
_local1.value = "{";
nextChar();
break;
case "}":
_local1.type = JSONTokenType.RIGHT_BRACE;
_local1.value = "}";
nextChar();
break;
case "[":
_local1.type = JSONTokenType.LEFT_BRACKET;
_local1.value = "[";
nextChar();
break;
case "]":
_local1.type = JSONTokenType.RIGHT_BRACKET;
_local1.value = "]";
nextChar();
break;
case ",":
_local1.type = JSONTokenType.COMMA;
_local1.value = ",";
nextChar();
break;
case ":":
_local1.type = JSONTokenType.COLON;
_local1.value = ":";
nextChar();
break;
case "t":
_local2 = ((("t" + nextChar()) + nextChar()) + nextChar());
if (_local2 == "true"){
_local1.type = JSONTokenType.TRUE;
_local1.value = true;
nextChar();
} else {
parseError(("Expecting 'true' but found " + _local2));
};
break;
case "f":
_local3 = (((("f" + nextChar()) + nextChar()) + nextChar()) + nextChar());
if (_local3 == "false"){
_local1.type = JSONTokenType.FALSE;
_local1.value = false;
nextChar();
} else {
parseError(("Expecting 'false' but found " + _local3));
};
break;
case "n":
_local4 = ((("n" + nextChar()) + nextChar()) + nextChar());
if (_local4 == "null"){
_local1.type = JSONTokenType.NULL;
_local1.value = null;
nextChar();
} else {
parseError(("Expecting 'null' but found " + _local4));
};
break;
case "\"":
_local1 = readString();
break;
default:
if (((isDigit(ch)) || ((ch == "-")))){
_local1 = readNumber();
} else {
if (ch == ""){
return (null);
};
parseError((("Unexpected " + ch) + " encountered"));
};
};
return (_local1);
}
private function skipWhite():void{
while (isWhiteSpace(ch)) {
nextChar();
};
}
public function parseError(_arg1:String):void{
throw (new JSONParseError(_arg1, loc, jsonString));
}
private function isWhiteSpace(_arg1:String):Boolean{
return ((((((((_arg1 == " ")) || ((_arg1 == "\t")))) || ((_arg1 == "\n")))) || ((_arg1 == "\r"))));
}
private function skipIgnored():void{
var _local1:int;
do {
_local1 = loc;
skipWhite();
skipComments();
} while (_local1 != loc);
}
private function isHexDigit(_arg1:String):Boolean{
var _local2:String = _arg1.toUpperCase();
return (((isDigit(_arg1)) || ((((_local2 >= "A")) && ((_local2 <= "F"))))));
}
private function readNumber():JSONToken{
var _local1:JSONToken = new JSONToken();
_local1.type = JSONTokenType.NUMBER;
var _local2 = "";
if (ch == "-"){
_local2 = (_local2 + "-");
nextChar();
};
if (!isDigit(ch)){
parseError("Expecting a digit");
};
if (ch == "0"){
_local2 = (_local2 + ch);
nextChar();
if (isDigit(ch)){
parseError("A digit cannot immediately follow 0");
};
} else {
while (isDigit(ch)) {
_local2 = (_local2 + ch);
nextChar();
};
};
if (ch == "."){
_local2 = (_local2 + ".");
nextChar();
if (!isDigit(ch)){
parseError("Expecting a digit");
};
while (isDigit(ch)) {
_local2 = (_local2 + ch);
nextChar();
};
};
if ((((ch == "e")) || ((ch == "E")))){
_local2 = (_local2 + "e");
nextChar();
if ((((ch == "+")) || ((ch == "-")))){
_local2 = (_local2 + ch);
nextChar();
};
if (!isDigit(ch)){
parseError("Scientific notation number needs exponent value");
};
while (isDigit(ch)) {
_local2 = (_local2 + ch);
nextChar();
};
};
var _local3:Number = Number(_local2);
if (((isFinite(_local3)) && (!(isNaN(_local3))))){
_local1.value = _local3;
return (_local1);
};
parseError((("Number " + _local3) + " is not valid!"));
return (null);
}
}
}//package com.adobe.serialization.json
Section 22
//JSONTokenType (com.adobe.serialization.json.JSONTokenType)
package com.adobe.serialization.json {
public class JSONTokenType {
public static const NUMBER:int = 11;
public static const FALSE:int = 8;
public static const RIGHT_BRACKET:int = 4;
public static const NULL:int = 9;
public static const TRUE:int = 7;
public static const RIGHT_BRACE:int = 2;
public static const UNKNOWN:int = -1;
public static const COMMA:int = 0;
public static const LEFT_BRACKET:int = 3;
public static const STRING:int = 10;
public static const LEFT_BRACE:int = 1;
public static const COLON:int = 6;
}
}//package com.adobe.serialization.json
Section 23
//IntUtil (com.adobe.utils.IntUtil)
package com.adobe.utils {
public class IntUtil {
private static var hexChars:String = "0123456789abcdef";
public static function toHex(_arg1:int, _arg2:Boolean=false):String{
var _local4:int;
var _local5:int;
var _local3 = "";
if (_arg2){
_local4 = 0;
while (_local4 < 4) {
_local3 = (_local3 + (hexChars.charAt(((_arg1 >> (((3 - _local4) * 8) + 4)) & 15)) + hexChars.charAt(((_arg1 >> ((3 - _local4) * 8)) & 15))));
_local4++;
};
} else {
_local5 = 0;
while (_local5 < 4) {
_local3 = (_local3 + (hexChars.charAt(((_arg1 >> ((_local5 * 8) + 4)) & 15)) + hexChars.charAt(((_arg1 >> (_local5 * 8)) & 15))));
_local5++;
};
};
return (_local3);
}
public static function ror(_arg1:int, _arg2:int):uint{
var _local3:int = (32 - _arg2);
return (((_arg1 << _local3) | (_arg1 >>> (32 - _local3))));
}
public static function rol(_arg1:int, _arg2:int):int{
return (((_arg1 << _arg2) | (_arg1 >>> (32 - _arg2))));
}
}
}//package com.adobe.utils
Section 24
//APIConnector (com.newgrounds.components.APIConnector)
package com.newgrounds.components {
import flash.display.*;
import com.newgrounds.*;
import flash.events.*;
import flash.utils.*;
public class APIConnector extends MovieClip {
private var _popDelay:Timer;
private var _initialized:Boolean;
private var _medalPopup:MedalPopup;
private var _movieId:String;
public var background:MovieClip;
public var closeButton:SimpleButton;
private var _showConnectingPopup:Boolean;// = true
public var viewLatestButton:SimpleButton;
private var _encryptionKey:String;
private var _useErrorPopup:Boolean;// = true
private var _movieVersion:String;
public var errorDialog:MovieClip;
public var viewAuthorizedButton:SimpleButton;
public function APIConnector(){
_popDelay = new Timer(3000, 1);
super();
addFrameScript(0, frame1, 6, frame7, 7, frame8);
if (((!((parent == null))) && ((getQualifiedClassName(parent) == "fl.livepreview::LivePreviewParent")))){
return;
};
useErrorPopup = true;
useMedalPopup = true;
_popDelay.addEventListener(TimerEvent.TIMER, errorTimerHandler);
addEventListener(Event.ENTER_FRAME, enterFrameHandler);
if (stage){
addEventListener(Event.RENDER, renderHandler);
stage.invalidate();
} else {
clear();
};
}
private function newVersionAvailableHandler(_arg1:APIEvent):void{
gotoAndStop("new_version");
visible = true;
centerOnStage();
}
private function hostBlockedHandler(_arg1:APIEvent):void{
gotoAndStop("bad_host");
visible = true;
centerOnStage();
}
public function get movieVersion():String{
return (_movieVersion);
}
private function closeButtonClickHandler(_arg1:Event):void{
clear();
}
public function set movieVersion(_arg1:String):void{
_movieVersion = _arg1;
}
public function get debugMode():Boolean{
return (API.debugMode);
}
public function get showConnectingPopup():Boolean{
return (_showConnectingPopup);
}
private function enterFrameHandler(_arg1:Event):void{
forceAlwaysOnTop();
}
private function officialVersionClickHandler(_arg1:Event):void{
API.loadOfficialVersion();
}
public function set showConnectingPopup(_arg1:Boolean):void{
_showConnectingPopup = _arg1;
if (((!(_arg1)) && ((((currentLabel == "connecting")) || ((currentLabel == "connected")))))){
clear();
};
}
public function set encryptionKey(_arg1:String):void{
_encryptionKey = _arg1;
}
public function set debugMode(_arg1:Boolean):void{
API.debugMode = true;
}
public function set useMedalPopup(_arg1:Boolean):void{
if (((_arg1) && (!(_medalPopup)))){
_medalPopup = new MedalPopup();
addChild(_medalPopup);
} else {
if (((!(_arg1)) && (_medalPopup))){
removeChild(_medalPopup);
_medalPopup = null;
};
};
}
private function forceAlwaysOnTop():void{
var myIndex:uint;
var topIndex:uint;
if (((parent) && (visible))){
try {
myIndex = parent.getChildIndex(this);
topIndex = (parent.numChildren - 1);
if (myIndex != topIndex){
parent.setChildIndex(this, topIndex);
};
} catch(e:Error) {
};
};
}
public function clear():void{
gotoAndStop("idle");
}
private function movieConnectedHandler(_arg1:APIEvent):void{
if (_arg1.success){
if (((((((API.isPublishedHost()) && (API.hasPublisher()))) && (!(API.hasUserSession())))) && (!(API.debugMode)))){
gotoAndStop("no_login");
_popDelay.start();
visible = true;
} else {
if (showConnectingPopup){
gotoAndStop("connected");
};
};
} else {
gotoAndStop("no_connect");
_popDelay.start();
visible = true;
};
}
private function renderHandler(_arg1:Event):void{
removeEventListener(Event.RENDER, renderHandler);
clear();
connect();
}
public function set useErrorPopup(_arg1:Boolean):void{
_useErrorPopup = _arg1;
API.addEventListener(APIEvent.MOVIE_CONNECTED, movieConnectedHandler);
if (_useErrorPopup){
API.addEventListener(APIEvent.NEW_VERSION_AVAILABLE, newVersionAvailableHandler);
API.addEventListener(APIEvent.HOST_BLOCKED, hostBlockedHandler);
} else {
API.removeEventListener(APIEvent.NEW_VERSION_AVAILABLE, newVersionAvailableHandler);
API.removeEventListener(APIEvent.HOST_BLOCKED, hostBlockedHandler);
};
}
private function centerOnStage():void{
if (stage){
x = (stage.stageWidth / 2);
y = (stage.stageHeight / 2);
};
}
public function set movieId(_arg1:String):void{
_movieId = _arg1;
}
public function get encryptionKey():String{
return (_encryptionKey);
}
private function initButtons():void{
if (viewLatestButton){
viewLatestButton.addEventListener(MouseEvent.CLICK, officialVersionClickHandler);
};
if (viewAuthorizedButton){
viewAuthorizedButton.addEventListener(MouseEvent.CLICK, officialVersionClickHandler);
};
if (closeButton){
closeButton.addEventListener(MouseEvent.CLICK, closeButtonClickHandler);
};
}
public function connect():void{
API.setMovieVersion(_movieVersion);
API.connectMovie(root.loaderInfo, _movieId, _encryptionKey);
visible = true;
if (showConnectingPopup){
gotoAndStop("connecting");
};
}
public function get useErrorPopup():Boolean{
return (_useErrorPopup);
}
private function errorTimerHandler(_arg1:TimerEvent):void{
if (errorDialog){
errorDialog.gotoAndPlay("closeme");
} else {
clear();
};
}
function frame7(){
initButtons();
}
public function get movieId():String{
return (_movieId);
}
public function get useMedalPopup():Boolean{
return (!((_medalPopup == null)));
}
function frame8(){
initButtons();
}
function frame1(){
stop();
}
}
}//package com.newgrounds.components
Section 25
//FlashAd (com.newgrounds.components.FlashAd)
package com.newgrounds.components {
import flash.display.*;
import com.newgrounds.*;
import flash.events.*;
import flash.utils.*;
import flash.net.*;
import flash.system.*;
public class FlashAd extends Sprite {
private var _adURLLoader:URLLoader;
private var _ad:Loader;
private var _adRect:Sprite;
private var _mask:Shape;
private var _showBackground:Boolean;
public var background:MovieClip;
private static const REMOVED_FROM_STAGE:String = "removedFromStage";
private static var _adResetTime:uint = 0;
private static var _adURL:URLRequest;
public function FlashAd(_arg1:Boolean=true){
if (((!((parent == null))) && ((getQualifiedClassName(parent) == "fl.livepreview::LivePreviewParent")))){
return;
};
_adRect = new Sprite();
_adRect.graphics.beginFill(0);
_adRect.graphics.moveTo(0, 0);
_adRect.graphics.lineTo(300, 0);
_adRect.graphics.lineTo(300, 250);
_adRect.graphics.lineTo(0, 250);
_adRect.graphics.lineTo(0, 0);
_adRect.graphics.endFill();
_mask = new Shape();
_mask.graphics.beginFill(0);
_mask.graphics.moveTo(0, 0);
_mask.graphics.lineTo(300, 0);
_mask.graphics.lineTo(300, 250);
_mask.graphics.lineTo(0, 250);
_mask.graphics.lineTo(0, 0);
_mask.graphics.endFill();
addChild(_adRect);
_adRect.addChild(_mask);
_adRect.visible = false;
x = Math.round(x);
y = Math.round(y);
scaleX = 1;
scaleY = 1;
if (background){
if (background.ngLinkButton){
background.ngLinkButton.addEventListener(MouseEvent.CLICK, linkClickHandler);
};
if (background.loadingClip){
background.loadingClip.visible = false;
};
};
if (API.isFlashVersion(9, 0, 28)){
addEventListener(REMOVED_FROM_STAGE, onRemovedFromStage);
};
if (API.adsApproved){
loadAdFeed(API.adFeedURL);
} else {
API.addEventListener(APIEvent.ADS_APPROVED, onAdsApproved, false, 0, true);
};
this.showBackground = _arg1;
}
private function onAdFeedLoaded(_arg1:Event):void{
var _local2:URLLoader = URLLoader(_arg1.target);
if (((_local2.data) && (!((_local2.data == ""))))){
loadAd((_local2.data as String));
} else {
dispatchEvent(new APIEvent(APIEvent.AD_ATTACHED, false, new APIError("FLASH_ADS_NOT_APPROVED", "Unable to render ad")));
if (((background) && (background.loadingClip))){
background.loadingClip.visible = false;
};
};
}
private function onAdFeedError(_arg1:Event):void{
trace("[NewgroundsAPI] :: Unable to load ad feed!");
if (((background) && (background.loadingClip))){
background.loadingClip.visible = false;
};
}
private function onAdError(_arg1:Event):void{
dispatchEvent(new APIEvent(APIEvent.AD_ATTACHED, false, new APIError("FLASH_ADS_NOT_APPROVED", "Unable to render ad")));
removeAd();
}
private function onAdLoaded(_arg1:Event):void{
_adRect.addChild(_ad);
_ad.mask = _mask;
_adRect.visible = true;
if (background){
if (_showBackground){
_adRect.mask = background.adMask;
};
if (background.loadingClip){
background.loadingClip.visible = false;
};
};
trace("[NewgroundsAPI] :: Ad loaded!");
dispatchEvent(new APIEvent(APIEvent.AD_ATTACHED, true));
}
public function get showBackground():Boolean{
return (_showBackground);
}
public function set showBackground(_arg1:Boolean):void{
_showBackground = _arg1;
if (background){
background.visible = _arg1;
_adRect.mask = (_arg1) ? background.adMask : null;
};
}
private function get hasAdElapsed():Boolean{
if (getTimer() >= _adResetTime){
_adResetTime = (getTimer() + ((1000 * 60) * 5));
return (true);
};
return (false);
}
private function loadAdFeed(_arg1:String):void{
var adFeedURL = _arg1;
_adURLLoader = new URLLoader();
_adURLLoader.addEventListener(Event.COMPLETE, onAdFeedLoaded);
_adURLLoader.addEventListener(IOErrorEvent.IO_ERROR, onAdError);
_adURLLoader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, onAdError);
if (!adFeedURL){
trace("[Newgrounds API] :: Invalid feed URL!");
return;
};
if (hasAdElapsed){
if (adFeedURL.indexOf("?") > -1){
_adURL = new URLRequest(((adFeedURL + "&random=") + Math.random()));
} else {
_adURL = new URLRequest(((adFeedURL + "?random=") + Math.random()));
};
};
try {
_adURLLoader.load(_adURL);
} catch(e:Error) {
onAdError(null);
};
if (((background) && (background.loadingClip))){
background.loadingClip.visible = true;
};
}
private function onAdsApproved(_arg1:APIEvent):void{
API.removeEventListener(APIEvent.ADS_APPROVED, onAdsApproved, false);
if (_arg1.success){
loadAdFeed(API.adFeedURL);
} else {
trace("[NewgroundsAPI] :: No ad feed URL supplied to Newgrounds API ad!");
};
}
private function loadAd(_arg1:String):void{
if (_ad){
removeAd();
};
_ad = new Loader();
_ad.contentLoaderInfo.addEventListener(Event.COMPLETE, onAdLoaded);
_ad.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, onAdError);
_ad.load(new URLRequest(_arg1), new LoaderContext(false, new ApplicationDomain(null)));
if (((background) && (background.loadingClip))){
background.loadingClip.visible = true;
};
}
public function removeAd():void{
removeEventListener(REMOVED_FROM_STAGE, onRemovedFromStage);
if (((background) && (background.loadingClip))){
background.loadingClip.visible = false;
};
if (_adURLLoader){
try {
_adURLLoader.close();
} catch(e:Error) {
};
};
if (_adRect){
_adRect.visible = false;
};
if (_ad){
trace("[NewgroundsAPI] :: Ad removed");
try {
_ad.close();
} catch(e:Error) {
};
try {
Object(_ad).unloadAndStop(true);
} catch(e:Error) {
_ad.unload();
};
if (_ad.parent){
_ad.parent.removeChild(_ad);
};
};
_ad = null;
}
private function onRemovedFromStage(_arg1:Event):void{
removeAd();
}
private function linkClickHandler(_arg1:MouseEvent):void{
API.loadNewgrounds();
}
}
}//package com.newgrounds.components
Section 26
//MedalPopup (com.newgrounds.components.MedalPopup)
package com.newgrounds.components {
import flash.display.*;
import com.newgrounds.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
public class MedalPopup extends MovieClip {
public var medalValueText:TextField;
public var medalContainer:Sprite;
private var _popDelay:Timer;
private var _initialized:Boolean;
private var _medalIcon:Bitmap;
public var medalNameText:TextField;
private var _medal:Medal;
private var _medalQueue:Array;
public function MedalPopup(){
_medalQueue = [];
_popDelay = new Timer(3000, 1);
super();
addFrameScript(0, frame1, 9, frame10, 18, frame19);
if (((!((parent == null))) && ((getQualifiedClassName(parent) == "fl.livepreview::LivePreviewParent")))){
return;
};
visible = false;
addEventListener(Event.ENTER_FRAME, enterFrameHandler);
stop();
API.addEventListener(APIEvent.MEDAL_UNLOCKED, onMedalUnlocked, false, 0, true);
_popDelay.addEventListener(TimerEvent.TIMER, timerHandler);
}
private function timerHandler(_arg1:TimerEvent):void{
if (((_medalIcon) && (_medalIcon.parent))){
_medalIcon.parent.removeChild(_medalIcon);
_medalIcon = null;
};
gotoAndPlay("medal_hide");
_popDelay.stop();
}
private function showMedalInfo():void{
if (!_medal){
return;
};
if (medalContainer){
_medalIcon = _medal.createIconBitmap();
medalContainer.addChild(_medalIcon);
};
if (medalNameText){
medalNameText.text = _medal.name;
};
if (medalValueText){
medalValueText.text = (_medal.value.toString() + "pts");
};
_popDelay.start();
stop();
}
function frame10(){
showMedalInfo();
stop();
}
public function get popupTime():Number{
return ((_popDelay.delay / 1000));
}
private function onMedalUnlocked(_arg1:APIEvent):void{
if (((((_arg1.success) && (_arg1.data))) && ((_arg1.data is Medal)))){
_medalQueue.push(Medal(_arg1.data));
};
}
private function enterFrameHandler(_arg1:Event):void{
var myIndex:uint;
var topIndex:uint;
var event = _arg1;
if (((_medalQueue.length) && (!(visible)))){
_medal = _medalQueue.pop();
_popDelay.start();
gotoAndPlay("medal_show");
visible = true;
};
if (((visible) && (parent))){
try {
myIndex = parent.getChildIndex(this);
topIndex = (parent.numChildren - 1);
if (myIndex != topIndex){
parent.setChildIndex(this, topIndex);
};
} catch(error:Error) {
};
};
}
function frame1(){
stop();
}
function frame19(){
stop();
}
public function set popupTime(_arg1:Number):void{
if (isNaN(_arg1)){
_arg1 = 3;
};
_popDelay.delay = (_arg1 * 1000);
}
}
}//package com.newgrounds.components
Section 27
//PreloaderBar (com.newgrounds.components.PreloaderBar)
package com.newgrounds.components {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
public class PreloaderBar extends MovieClip {
private var _autoPlay:Boolean;// = false
public var playButton:DisplayObject;
public var bar:DisplayObject;
public function PreloaderBar(){
addFrameScript(51, frame52);
if (((!((parent == null))) && ((getQualifiedClassName(parent) == "fl.livepreview::LivePreviewParent")))){
return;
};
gotoAndStop("LOAD");
if (bar){
bar.scaleX = 0;
};
addEventListener(Event.ENTER_FRAME, enterFrameHandler);
}
private function playButtonClicked(_arg1:MouseEvent):void{
startMovie();
}
public function get autoPlay():Boolean{
return (_autoPlay);
}
public function set autoPlay(_arg1:Boolean):void{
_autoPlay = _arg1;
}
public function onPlayButtonClicked(_arg1:MouseEvent):void{
startMovie();
}
function frame52(){
stop();
if (this.playButton){
this.playButton.addEventListener(MouseEvent.CLICK, onPlayButtonClicked);
} else {
startMovie();
};
}
private function startMovie():void{
if (((root) && ((root is MovieClip)))){
MovieClip(root).play();
};
dispatchEvent(new Event(Event.COMPLETE));
}
private function enterFrameHandler(_arg1:Event):void{
var _local2:Number;
if (((root) && (root.loaderInfo))){
if ((root is MovieClip)){
MovieClip(root).stop();
};
_local2 = (root.loaderInfo.bytesLoaded / root.loaderInfo.bytesTotal);
if (bar){
bar.scaleX = _local2;
};
if (_local2 == 1){
removeEventListener(Event.ENTER_FRAME, enterFrameHandler);
if (autoPlay){
startMovie();
} else {
gotoAndPlay("COMPLETE_STOP");
};
};
};
}
private function playButtonReady():void{
stop();
if (playButton){
playButton.addEventListener(MouseEvent.CLICK, playButtonClicked);
} else {
startMovie();
};
}
}
}//package com.newgrounds.components
Section 28
//ScoreTable (com.newgrounds.components.ScoreTable)
package com.newgrounds.components {
import flash.display.*;
import com.newgrounds.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
public class ScoreTable extends MovieClip {
private var _period:String;// = "Today"
public var ngLinkButton:DisplayObject;
public var scoreRows:Sprite;
public var boardNameText:TextField;
private var _boardName:String;// = "High Scores"
public var periodList:MovieClip;
public static const RESULTS_PER_PAGE:uint = 10;
public function ScoreTable(_arg1:String="High Scores", _arg2:String="Today"){
if (((!((parent == null))) && ((getQualifiedClassName(parent) == "fl.livepreview::LivePreviewParent")))){
return;
};
stop();
if (((_arg1) && (!((_arg1 == ""))))){
_boardName = _arg1;
};
if (stage){
addEventListener(Event.RENDER, renderHandler);
stage.invalidate();
} else {
loadScores();
};
}
public function get period():String{
return (_period);
}
public function set boardName(_arg1:String):void{
if (((boardName) && (!((boardName == ""))))){
_boardName = _arg1;
} else {
boardName = "High Scores";
};
}
private function periodListClickHandler(_arg1:MouseEvent):void{
if (!periodList){
return;
};
if (periodList.currentLabel == "listIdle"){
periodList.gotoAndStop("listSelecting");
} else {
if (_arg1.target == periodList.period0){
period = ScoreBoardPeriod.TODAY;
loadScores();
} else {
if (_arg1.target == periodList.period1){
period = ScoreBoardPeriod.WEEK;
loadScores();
} else {
if (_arg1.target == periodList.period2){
period = ScoreBoardPeriod.MONTH;
loadScores();
} else {
if (_arg1.target == periodList.period3){
period = ScoreBoardPeriod.YEAR;
loadScores();
} else {
if (_arg1.target == periodList.period4){
period = ScoreBoardPeriod.ALL_TIME;
loadScores();
};
};
};
};
};
periodList.gotoAndStop("listIdle");
};
}
public function set period(_arg1:String):void{
_period = _arg1;
}
private function onScoresLoaded(_arg1:APIEvent):void{
var _local4:MovieClip;
API.removeEventListener(APIEvent.SCORES_LOADED, onScoresLoaded);
var _local2:ScoreBoard = (_arg1.data as ScoreBoard);
if (((((!(_arg1.success)) || (!(_local2)))) || (!(_local2.scores)))){
clearBoard();
return;
};
if (!scoreRows){
return;
};
var _local3:uint;
while (_local3 < RESULTS_PER_PAGE) {
_local4 = scoreRows[("score_row_" + _local3)];
if (((_local4) && (_local2.scores[_local3]))){
if (_local4.positionText){
_local4.positionText.text = (_local2.scores[_local3].position.toString() + ":");
};
if (_local4.usernameText){
_local4.usernameText.text = _local2.scores[_local3].username;
};
if (_local4.scoreText){
_local4.scoreText.text = _local2.scores[_local3].value.toString();
};
};
_local3++;
};
}
public function loadScores(_arg1:uint=1):void{
clearBoard();
if (((periodList) && (periodList.periodText))){
periodList.periodText.text = _period;
};
if (boardNameText){
boardNameText.text = _boardName;
};
var _local2:ScoreBoard = API.getScoreBoardByName(_boardName);
if (!_local2){
trace((("[WARNING] :: Could not initialize the scoreboard for '" + _boardName) + "'"));
return;
};
API.addEventListener(APIEvent.SCORES_LOADED, onScoresLoaded, false, 0, true);
_local2.loadScores(_period, _arg1, RESULTS_PER_PAGE);
}
private function init():void{
stop();
clearBoard();
_period = period;
if (periodList){
periodList.buttonMode = true;
periodList.useHandCursor = true;
periodList.gotoAndStop("listIdle");
periodList.addEventListener(MouseEvent.CLICK, periodListClickHandler);
};
}
public function get boardName():String{
return (_boardName);
}
private function renderHandler(_arg1:Event):void{
removeEventListener(Event.RENDER, renderHandler);
init();
loadScores();
}
private function clearBoard():void{
var _local2:MovieClip;
if (!scoreRows){
return;
};
var _local1:uint;
while (_local1 < RESULTS_PER_PAGE) {
_local2 = scoreRows[("score_row_" + _local1)];
if (_local2){
_local2.gotoAndStop(((_local1 % 2) + 1));
if (_local2.positionText){
_local2.positionText.text = "";
};
if (_local2.usernameText){
_local2.usernameText.text = "";
};
if (_local2.scoreText){
_local2.scoreText.text = "";
};
};
_local1++;
};
}
}
}//package com.newgrounds.components
Section 29
//API (com.newgrounds.API)
package com.newgrounds {
import flash.display.*;
import flash.events.*;
import com.newgrounds.components.*;
import flash.utils.*;
import com.adobe.serialization.json.*;
import flash.net.*;
import com.adobe.images.*;
import com.adobe.crypto.*;
import flash.system.*;
public class API {
private static const COMMANDS_WIKI_URL:String = "http://www.newgrounds.com/wiki/flashapi/commands/";
private static const AD_TERMS_URL:String = "http://www.newgrounds.com/wiki/flashads/terms/";
private static const GATEWAY_URL:String = "http://www.ngads.com/gateway_v2.php";
public static const VERSION:String = "2.3";
private static var connected:Boolean;
private static var user_id:uint;
private static var _preloadComplete:Boolean = false;
private static var user_email:String;
private static var _movieId:String;
private static var _isMetadataLoaded:Boolean = false;
private static var publisher_id:uint;
private static var _saveFilePath:String;
private static var ad_url:String;
private static var _debug:Boolean;
private static var _saveGroups:Array = [];
private static var do_echo:Boolean = false;
private static var session_id:String;
public static var errors:Dictionary = APIError.init_codes();
private static var timeoutTimer:Timer = new Timer(8000, 1);
private static var _medals:Array;
private static var user_name:String;
private static var period_aliases:Object = {t:{name:"Today", alias:"TODAY"}, p:{name:"Yesterday", alias:"YESTERDAY"}, w:{name:"This Week", alias:"THIS_WEEK"}, m:{name:"This Month", alias:"THIS_MONTH"}, y:{name:"This Year", alias:"THIS_YEAR"}, a:{name:"All-Time", alias:"ALL_TIME"}};
private static var _host:String;
private static var _connected:Boolean = false;
private static var _scoreboards:Array = new Array();
private static var _eventDispatcher:EventDispatcher = new EventDispatcher();
private static var compressor:BaseN = new BaseN(compression_radix);
private static var score_page_counts:Object = new Object();
private static var _adsApproved:Boolean = false;
private static var _preload:Boolean = true;
private static var version:String;
public static var periods:Object = getPeriodAliases();
private static var _encryptionKey:String;
private static var root:DisplayObject;
private static var _inSaveQuery:Boolean;
private static var compression_radix:String = "/g8236klvBQ#&|;Zb*7CEA59%s`Oue1wziFp$rDVY@TKxUPWytSaGHJ>dmoMR^<0~4qNLhc(I+fjn)X";
private static var _preloadAssets:Array = [];
private static var sharedObjects:Object = new Object();
private static var _trackerId:uint;
private static var _saveFile:SaveFile;
private static function sendWarning(_arg1:String, _arg2:String=null):void{
if (_arg2){
_arg1 = (_arg1 + ((("\n[NewgroundsAPI WARNING] :: \tSee " + COMMANDS_WIKI_URL) + _arg2.toLowerCase()) + " for additional information."));
};
trace(("[NewgroundsAPI WARNING] :: " + _arg1));
}
public static function getPeriodAlias(_arg1:String):String{
var _local2:String;
for (_local2 in period_aliases) {
if (_local2 == _arg1){
return (period_aliases[_local2].alias);
};
};
return (null);
}
public static function setMovieVersion(_arg1:String):void{
if (((_arg1) && (!((_arg1 == ""))))){
version = _arg1;
};
}
public static function get preload():Boolean{
return (_preload);
}
public static function unlockMedal(_arg1:Medal, _arg2:Boolean=false):void{
var _local3:Object;
var _local4:Object;
if (!_arg1){
sendError({command_id:getCommandID("unlockMedal")}, new APIError("MISSING_PARAM", "missing required medal name"));
return;
};
if (((hasUserSession()) || (debugMode))){
sendMessage((("Attempting to unlock '" + _arg1.name) + "'"));
if (_arg1.unlocked){
sendWarning((("Medal '" + _arg1.name) + "' is already unlocked!"));
return;
};
_local3 = new Object();
_local3.medal_id = _arg1.id;
if (_arg2){
_local3.get_score = _arg2;
};
sendSecureCommand("unlockMedal", _local3);
} else {
sendMessage(("Locally unlocking " + _arg1.name));
if (_arg1.unlocked){
sendWarning((("Medal '" + _arg1.name) + "' is already unlocked!"));
return;
};
_arg1.unlocked = true;
_local4 = loadLocal("medals_unlocked");
if (!_local4){
_local4 = new Object();
};
_local4[_arg1.id.toString()] = true;
saveLocal("medals_unlocked", _local4);
callListener(APIEvent.MEDAL_UNLOCKED, true, _arg1);
};
}
public static function set preload(_arg1:Boolean):void{
_preload = _arg1;
}
private static function uncompressHex(_arg1:String):String{
var _local4:uint;
var _local6:String;
var _local7:uint;
var _local8:String;
var _local2:uint = uint(_arg1.charAt(0));
var _local3 = "";
var _local5:uint = 1;
while (_local5 < _arg1.length) {
_local6 = _arg1.substr(_local5, 4);
_local7 = uint(compressor.decode(_local6));
_local8 = _local7.toString(16);
if ((_local5 + 4) < _arg1.length){
_local4 = 6;
} else {
_local4 = _local2;
};
while (_local8.length < _local4) {
_local8 = ("0" + _local8);
};
_local3 = (_local3 + _local8);
_local5 = (_local5 + 4);
};
return (_local3);
}
public static function isFlashVersion(_arg1:uint, _arg2:uint=0, _arg3:uint=0, _arg4:uint=0):Boolean{
var _local6:Array = Capabilities.version.split(" ")[1].split(",");
var _local7:Array = arguments;
var _local8:uint;
while (_local8 < _local7.length) {
_local6[_local8] = uint(_local6[_local8]);
_local8++;
};
_local8 = 0;
while (_local8 < _local7.length) {
if (_local6[_local8] > _local7[_local8]){
return (true);
};
if (_local6[_local8] < _local7[_local8]){
return (false);
};
_local8++;
};
return (true);
}
private static function getHost():String{
return (_host);
}
public static function hasUserEmail():Boolean{
return (((!((user_email == null))) && (!((user_email == "")))));
}
public static function getMedalByName(_arg1:String):Medal{
var _local2:Medal;
for each (_local2 in _medals) {
if (_local2.name == _arg1){
return (_local2);
};
};
return (null);
}
private static function callListener(_arg1:String, _arg2:Boolean=true, _arg3=undefined):void{
dispatchEvent(new APIEvent(_arg1, _arg2, _arg3));
}
public static function set debugMode(_arg1:Boolean):void{
_debug = _arg1;
}
public static function loadLocal(_arg1:String){
var sharedObj:SharedObject;
var save_id = _arg1;
try {
if (!sharedObjects[save_id]){
sharedObjects[save_id] = SharedObject.getLocal(((("ng_ap_secure_" + _movieId) + "_") + save_id));
};
sharedObj = sharedObjects[save_id];
if (((((sharedObj) && (sharedObj.data))) && (sharedObj.data[save_id]))){
return (decodeData(sharedObj.data[save_id]));
} else {
return (null);
};
} catch(e:Error) {
sendWarning(("loadLocal ERROR: " + e));
return (null);
};
}
private static function populateScoreBoards(_arg1:Array):void{
_scoreboards = [];
var _local2:uint;
while (_local2 < _arg1.length) {
_scoreboards.push(new ScoreBoard(_arg1[_local2].id, _arg1[_local2].name, ""));
_local2++;
};
}
private static function populateSaveGroups(_arg1:Array):void{
var _local3:SaveGroup;
_saveGroups = [];
var _local2:uint;
while (_local2 < _arg1.length) {
_local3 = SaveGroup.createFromObject(_arg1[_local2]);
_saveGroups.push(_local3);
_local2++;
};
}
public static function createAd():FlashAd{
sendMessage("You may see a security sandbox violation. This is normal!");
return (new FlashAd());
}
public static function getSaveGroupById(_arg1:uint):SaveGroup{
if (((!(_saveGroups)) || ((_saveGroups.length < 1)))){
sendWarning("No save groups found");
return (null);
};
var _local2:uint;
while (_local2 < _saveGroups.length) {
if (_saveGroups[_local2].id == _arg1){
return (_saveGroups[_local2]);
};
_local2++;
};
return (null);
}
private static function dispatchEvent(_arg1:Event):void{
_eventDispatcher.dispatchEvent(_arg1);
echo(("Fired Event: " + _arg1.type));
}
public static function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
_eventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public static function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:uint=0, _arg5:Boolean=false):void{
_eventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public static function get adFeedURL():String{
return (ad_url);
}
public static function setUserEmail(_arg1:String):void{
user_email = _arg1;
}
public static function hasUserSession():Boolean{
return (((((!((session_id == null))) && (!((session_id == ""))))) && (!((publisher_id == 0)))));
}
private static function echo(_arg1:String):void{
if (do_echo){
trace(_arg1);
};
}
public static function executeSaveQuery(_arg1:SaveGroupQuery):void{
sendCommand("lookupSaveFiles", {publisher_id:publisher_id, group_id:_arg1.groupId, query:JSON.encode(_arg1.toObject())}, false, null, _arg1);
trace(JSON.encode(_arg1.toObject()));
}
public static function getScoreBoardById(_arg1:uint):ScoreBoard{
var _local2:ScoreBoard;
for each (_local2 in _scoreboards) {
if (_local2.id == _arg1){
return (_local2);
};
};
return (null);
}
private static function getPeriodAliases():Object{
var _local2:String;
var _local1:Object = new Object();
for (_local2 in period_aliases) {
_local1[period_aliases[_local2].alias] = _local2;
};
return (_local1);
}
private static function compressHex(_arg1:String):String{
var _local2:uint = (_arg1.length % 6);
var _local3 = "";
var _local4:uint;
while (_local4 < _arg1.length) {
_local3 = (_local3 + compressor.encode(uint(("0x" + _arg1.substr(_local4, 6))), 4));
_local4 = (_local4 + 6);
};
return ((_local2.toString() + _local3));
}
public static function get preloadComplete():Boolean{
return (_preloadComplete);
}
private static function assertConnected():Boolean{
if (!_connected){
return (false);
};
return (true);
}
public static function sendSecureCommand(_arg1:String, _arg2:Object, _arg3:Object=null, _arg4:Object=null, _arg5=null):void{
if (((((!(debugMode)) && (!(hasUserSession())))) && (!(hasUserEmail())))){
sendError({command_id:getCommandID(_arg1)}, new APIError("IDENTIFICATION_REQUIRED", (("You must be logged in or provide an e-mail address ( using NewgroundsAPI.setUserEmail(\"name@domain.com\"); ) to use " + _arg1) + "().")));
return;
};
if (!_arg1){
fatalError("Missing command", "sendSecureCommand");
};
if (!_arg2){
fatalError("Missing secure_params", "sendSecureCommand");
};
if (!_arg3){
_arg3 = new Object();
};
var _local6 = "";
var _local7:uint;
while (_local7 < 16) {
_local6 = (_local6 + compression_radix.charAt(Math.floor((Math.random() * compression_radix.length))));
_local7++;
};
if (((debugMode) && (!(session_id)))){
_arg2.session_id = "";
} else {
_arg2.session_id = session_id;
};
_arg2.as_version = 3;
_arg2.user_email = user_email;
_arg2.publisher_id = publisher_id;
_arg2.seed = _local6;
_arg2.command_id = getCommandID(_arg1);
var _local8:String = MD5.hash(_local6);
var _local9:String = RC4.encrypt(JSON.encode(_arg2), _encryptionKey);
var _local10:String = (_local8 + _local9);
_arg3.secure = compressHex(_local10);
sendCommand("securePacket", _arg3, false, _arg4, _arg5);
}
public static function connectMovie(_arg1:LoaderInfo, _arg2:String, _arg3:String=null):void{
if (!_arg1){
fatalError("Null loaderInfo paremeter passed in to connectMovie!", "");
return;
};
_host = _arg1.url;
if ((((_host.indexOf("http://") > -1)) || ((_host.indexOf("https://") > -1)))){
_host = _host.split("/")[2].toLowerCase();
} else {
_host = "localhost";
};
var _local4:Object = _arg1.parameters;
debugMode = !(isPublishedHost());
if (((!(debugMode)) && (_local4))){
if (_local4.NewgroundsAPI_UserName){
user_name = _local4.NewgroundsAPI_UserName;
};
if (_local4.NewgroundsAPI_UserID){
user_id = _local4.NewgroundsAPI_UserID;
};
if (_local4.NewgroundsAPI_PublisherID){
publisher_id = _local4.NewgroundsAPI_PublisherID;
};
if (_local4.NewgroundsAPI_SessionID){
session_id = _local4.NewgroundsAPI_SessionID;
};
} else {
publisher_id = 1;
session_id = "D3bu64p1U53R";
user_id = 10;
user_name = "API-Debugger";
};
if (connected){
return;
};
timeoutTimer.start();
if (!_arg2){
fatalError("NewgroundsAPI.connectMovie() - missing required movieId parameter", "connectMovie");
};
_movieId = String(_arg2);
_trackerId = uint(_movieId.substring(0, _movieId.indexOf(":")));
_encryptionKey = _arg3;
connected = true;
sendCommand("connectMovie", {host:getHost(), movie_version:version});
}
private static function sendError(_arg1:Object, _arg2:APIError):void{
trace(((((("[NewgroundsAPI ERROR] :: " + getCommandName(_arg1.command_id)) + "() - ") + _arg2.name) + ":\n\t\t\t\t") + _arg2.message));
}
private static function getCommandName(_arg1:String):String{
return (_arg1);
}
public static function sendMessage(_arg1:String, _arg2:Boolean=false):void{
var _local3:String = ("[NewgroundsAPI] :: " + _arg1);
trace(_local3);
}
public static function newSaveFile(_arg1:String):SaveFile{
var _local2:SaveGroup = getSaveGroupByName(_arg1);
if (_local2){
return (new SaveFile(_local2));
};
sendError({command_id:"newSaveFile"}, new APIError("INVALID_SAVE_GROUP", (("'" + _local2) + "' is not a valid save group.")));
return (null);
}
public static function get medals():Array{
return ((_medals) ? _medals.concat() : []);
}
public static function unlockMedalByName(_arg1:String, _arg2:Boolean=false):void{
var _local3:Medal = getMedalByName(_arg1);
if (_local3){
unlockMedal(_local3, _arg2);
};
}
public static function hasPublisher():Boolean{
return (!((publisher_id == 0)));
}
public static function connectionTimeOut(_arg1:Event=null):void{
dispatchEvent(new APIEvent(APIEvent.MOVIE_CONNECTED, false, new APIError("CONNECTION_FAILED", "Connection to NewgroundsAPI gateway timed out.")));
}
public static function unlockMedalById(_arg1:uint, _arg2:Boolean=false):void{
trace("A");
var _local3:Medal = getMedalById(_arg1);
if (_local3){
unlockMedal(_local3, _arg2);
};
}
private static function fatalError(_arg1:String, _arg2:String):void{
if (_arg2){
_arg1 = (_arg1 + ((("\n\tSee " + COMMANDS_WIKI_URL) + _arg2.toLowerCase()) + " for additional information."));
};
throw (new Error(("***ERROR*** class=API\n\n" + _arg1)));
}
public static function getScoreBoardByName(_arg1:String):ScoreBoard{
var _local2:ScoreBoard;
for each (_local2 in _scoreboards) {
if (_local2.name == _arg1){
return (_local2);
};
};
return (null);
}
private static function sendNotice(_arg1:String, _arg2:String=null):void{
if (_arg2){
_arg1 = (_arg1 + ((("\n[NewgroundsAPI NOTICE] :: \tSee " + COMMANDS_WIKI_URL) + _arg2.toLowerCase()) + " for additional information."));
};
trace(("[NewgroundsAPI NOTICE] :: " + _arg1));
}
public static function loadCustomLink(_arg1:String):void{
sendCommand("loadCustomLink", {host:getHost(), link:_arg1}, true);
}
public static function get debugMode():Boolean{
return (_debug);
}
public static function checkFilePrivledges(_arg1:SaveFile):void{
sendCommand("checkFilePrivs", {group:_arg1.groupId, filename:_arg1.name, user_id:(user_id) ? user_id : 0, publisher_id:publisher_id});
}
public static function get adsApproved():Boolean{
return (_adsApproved);
}
private static function sendCommand(_arg1:String, _arg2:Object, _arg3:Boolean=false, _arg4:Object=null, _arg5=null):void{
var _local7:String;
var _local8:String;
var _local9:String;
if (((!(connected)) && (!((_arg1 == "connectMovie"))))){
_local7 = (("NewgroundsAPI." + _arg1) + "() - NewgroundsAPI.connectMovie() must be called before this command can be called\n");
fatalError(_local7, "connectMovie");
};
var _local6:SmartURLLoader = new SmartURLLoader();
_local6.addVariable("command_id", getCommandID(_arg1));
_local6.addVariable("tracker_id", _movieId);
if (debugMode){
_local6.addVariable("debug", 1);
};
if ((((_arg1 == "connectMovie")) && (preload))){
_local6.addVariable("preload", 1);
};
if (_arg2){
for (_local8 in _arg2) {
_local6.addVariable(_local8, _arg2[_local8]);
};
};
if (_arg4){
for (_local9 in _arg4) {
_local6.addFile(_local9, _arg4[_local9], _local9);
};
};
if (_arg3){
_local6.method = URLRequestMethod.GET;
} else {
_local6.method = URLRequestMethod.POST;
};
_local6.preventCache = true;
if (_arg3){
_local6.openBrowser = true;
_local6.method = URLRequestMethod.GET;
} else {
_local6.addEventListener(Event.COMPLETE, onCommandComplete);
_local6.addEventListener(IOErrorEvent.IO_ERROR, onCommandError);
_local6.addEventListener(SecurityErrorEvent.SECURITY_ERROR, onCommandError);
_local6.method = URLRequestMethod.POST;
};
_local6.owner = _arg5;
_local6.load(GATEWAY_URL);
}
public static function isPublishedHost():Boolean{
return (((!((getHost() == "localhost"))) && ((getHost().indexOf("file://") == -1))));
}
public static function loadOfficialVersion():void{
navigateToURL(new URLRequest(getOfficialVersionURL()));
}
public static function createSaveQuery(_arg1:String):SaveGroupQuery{
var _local2:SaveGroup = getSaveGroupByName(_arg1);
if (_local2){
return (_local2.createQuery());
};
return (null);
}
public static function loadMySite():void{
sendCommand("loadMySite", {host:getHost()});
}
public static function getMedalById(_arg1:uint):Medal{
var _local2:Medal;
for each (_local2 in _medals) {
if (_local2.id == _arg1){
return (_local2);
};
};
return (null);
}
public static function loadNewgrounds():void{
sendCommand("loadNewgrounds", {host:getHost()}, true);
}
public static function saveFile(_arg1:SaveFile, _arg2:Boolean=false):void{
var _local3:Object = _arg1.toObject();
_local3.user_name = user_name;
_local3.overwrite = (_arg2) ? 1 : 0;
var _local4:ByteArray = new ByteArray();
if ((_arg1.contents is ByteArray)){
_local4.writeByte(0);
_local4.writeBytes(_arg1.contents);
} else {
_local4.writeByte(1);
_local4.writeObject(_arg1.contents);
};
_local4.compress();
var _local5:Object = new Object();
_local5.file = _local4;
if (_arg1.thumbnail){
_local5.thumbnail = PNGEncoder.encode(_arg1.thumbnail);
};
sendSecureCommand("saveFile", _local3, null, _local5, _arg1);
}
public static function getOfficialVersionURL():String{
var _local1:String = ((((((GATEWAY_URL + "?tracker_id=") + _movieId) + "&command_id=") + getCommandID("loadOfficalVersion")) + "&seed=") + Math.random());
if (debugMode){
_local1 = (_local1 + "&debug=1");
};
return (_local1);
}
public static function rateSaveFile(_arg1:SaveFile, _arg2:SaveRating, _arg3:Number):void{
sendSecureCommand("rateSaveFile", {group:_arg1.groupId, save_id:_arg1.id, rating_id:_arg2.id, vote:_arg3, user_id:user_id}, null, null, _arg1);
}
public static function loadScores(_arg1:ScoreBoard, _arg2:String=null):void{
var _local3 = "loadScores";
if (!_arg1.id){
sendError({command_id:getCommandID(_local3)}, new APIError("MISSING_PARAM", "missing required ScoreBoard instance"));
return;
};
if (!hasUserSession()){
callListener(APIEvent.SCORES_LOADED, false, new APIError("SITE_ID_REQUIRED", (("Host '" + getHost()) + "' does not have high scores enabled")));
return;
};
var _local4:Object = {};
_local4.publisher_id = publisher_id;
_local4.period = _arg1.period;
_local4.board = _arg1.id;
_local4.num_results = _arg1.num_results;
_local4.page = _arg1.page;
if (((!(_arg2)) || ((_arg2 == "")))){
_local4.tag = _arg1.tag;
} else {
_local4.tag = _arg2;
};
sendCommand(_local3, _local4);
}
public static function logCustomEvent(_arg1:String):void{
sendCommand("logCustomEvent", {host:getHost(), event:_arg1});
}
public static function decodeData(_arg1:String){
return (JSON.decode(RC4.decrypt(uncompressHex(_arg1), _encryptionKey)));
}
public static function postScore(_arg1:String, _arg2:uint, _arg3:String=""):void{
if (((!(_arg1)) || ((_arg1 == "")))){
sendError({command_id:getCommandID("postScore")}, new APIError("MISSING_PARAM", "missing required parameter(s)"));
return;
};
if (_arg3 == null){
_arg3 = "";
};
sendSecureCommand("postScore", {user_name:user_name, board:_arg1, value:_arg2, publisher_id:publisher_id, tag:_arg3});
}
private static function onCommandComplete(_arg1:Event):void{
var _local4:Object;
var _local5:APIError;
var _local2:SmartURLLoader = SmartURLLoader(_arg1.target);
echo((("INPUT: \n" + _local2.response) + "\n"));
var _local3:uint;
while (_local3 < _preloadAssets.length) {
if (_preloadAssets[_local3] == _local2){
_preloadAssets.splice(_local3, 1);
break;
};
_local3++;
};
if (_local2.response){
_local4 = JSON.decode(_local2.response);
} else {
_local4 = {success:false};
};
if (!_local4.success){
trace(("Error: " + _local4));
_local5 = new APIError(_local4.error_code, _local4.error_msg);
sendError(_local4, _local5);
} else {
_local4.owner = _local2.owner;
doEvent(_local4);
};
}
public static function encodeData(_arg1:Object):String{
return (compressHex(RC4.encrypt(JSON.encode(_arg1), _encryptionKey)));
}
private static function populateMedals(_arg1:Array):void{
var _local2:uint;
var _local3:Object;
if (_medals === null){
_medals = new Array();
_local2 = 0;
while (_local2 < _arg1.length) {
_local3 = _arg1[_local2];
_medals.push(Medal.createFromObject(_local3));
_local2++;
};
};
trace("[NewgroundsAPI] :: Medals loaded!");
}
public static function loadMedals():void{
if (_medals){
dispatchEvent(new APIEvent(APIEvent.MEDALS_LOADED, true, medals));
return;
};
var _local1:Object = new Object();
if (hasUserSession()){
_local1.publisher_id = publisher_id;
_local1.user_id = user_id;
};
sendCommand("getMedals", _local1);
}
public static function saveLocal(_arg1:String, _arg2:Object, _arg3:uint=0):void{
var sharedObj:SharedObject;
var save_id = _arg1;
var save_data = _arg2;
var size_allocation = _arg3;
try {
if (!sharedObjects[save_id]){
sharedObjects[save_id] = SharedObject.getLocal(((("ng_ap_secure_" + _movieId) + "_") + save_id));
};
sharedObj = sharedObjects[save_id];
sharedObj.data[save_id] = encodeData(save_data);
sharedObj.flush();
} catch(e:Error) {
sendWarning(("saveLocal ERROR: " + e));
};
}
private static function doEvent(_arg1:Object):void{
var _local2:String;
var _local3:Object;
var _local4:String;
var _local5:Boolean;
var _local6:ScoreBoard;
var _local7:Array;
var _local8:*;
var _local9:String;
var _local10:Medal;
var _local11:uint;
var _local12:Object;
var _local13:SaveFile;
var _local14:uint;
switch (getCommandName(_arg1.command_id)){
case "connectMovie":
timeoutTimer.stop();
sendMessage("You have successfully connected to the Newgrounds API Gateway");
sendMessage((("Movie identified as \"" + _arg1.movie_name) + "\""));
callListener(APIEvent.MOVIE_CONNECTED, _arg1.success, {movie_name:_arg1.movie_name});
_local5 = false;
if (_arg1.ad_status === -1){
_local2 = "This movie was not approved to run Flash Ads.";
sendWarning(_local2);
sendWarning((("visit " + AD_TERMS_URL) + " to view our approval guidelines"));
if (!_arg1.ad_url){
callListener(APIEvent.ADS_APPROVED, false, new APIError("FLASH_ADS_NOT_APPROVED", _local2));
} else {
_local5 = true;
};
} else {
if (_arg1.ad_status === 0){
_local2 = "Flash Ads are currently awaiting approval.";
sendNotice(_local2);
if (!_arg1.ad_url){
callListener(APIEvent.ADS_APPROVED, false, new APIError("FLASH_ADS_NOT_APPROVED", _local2));
} else {
_local5 = true;
};
};
};
if (_arg1.ad_url){
ad_url = unescape(_arg1.ad_url);
if (!_local5){
sendMessage("This movie has been approved to run Flash Ads!");
};
_adsApproved = true;
callListener(APIEvent.ADS_APPROVED, true);
};
if (_arg1.deny_host){
_local2 = (getHost() + " does not have permission to run this movie!");
sendWarning(_local2);
sendWarning(("\tUpdate your API configuration to unblock " + getHost()));
callListener(APIEvent.HOST_BLOCKED, true, {movie_url:unescape(_arg1.movie_url), redirect_url:getOfficialVersionURL()});
};
if (_arg1.movie_version){
sendWarning("According to your API Configuration, this version is out of date.");
if (version){
sendWarning(("\tThe this movie is version " + version));
};
sendWarning(("\tThe most current version is " + _arg1.movie_version));
callListener(APIEvent.NEW_VERSION_AVAILABLE, true, {movie_version:_arg1.movie_version, movie_url:unescape(_arg1.movie_url), redirect_url:getOfficialVersionURL()});
};
if (_arg1.request_portal_url){
sendCommand("setPortalID", {portal_url:_host});
};
if (preload){
sendCommand("preloadSettings", {publisher_id:publisher_id, user_id:user_id});
};
break;
case "preloadSettings":
if (_arg1.medals){
populateMedals(_arg1.medals);
if (((!(hasUserSession())) && (!(debugMode)))){
echo("Checking for SharedObject Medals...");
_local8 = loadLocal("medals_unlocked");
if (_local8){
for (_local9 in _local8) {
if (_local8[_local9]){
_local10 = getMedalById(uint(_local9));
echo(("Now unlocking " + _local10.name));
_local10.unlocked = true;
};
};
};
};
};
if (_arg1.save_groups){
populateSaveGroups(_arg1.save_groups);
};
if (_arg1.save_file_path){
_saveFilePath = (_arg1.save_file_path + "/");
};
if (_arg1.score_boards){
populateScoreBoards(_arg1.score_boards);
};
trace("[NewgroundsAPI] :: Metadata loaded!");
callListener(APIEvent.METADATA_LOADED);
_preloadComplete = true;
break;
case "logCustomEvent":
if (_arg1.success){
sendMessage((("Event '" + _arg1.event) + "' was logged."));
};
callListener(APIEvent.EVENT_LOGGED, _arg1.success, {event:_arg1.event});
break;
case "postScore":
if (_arg1.success){
_local4 = "User";
if (user_email){
_local4 = user_email;
} else {
if (user_name){
_local4 = user_name;
};
};
_local6 = getScoreBoardById(_arg1.board);
if (_local6){
sendMessage((((((_local4 + " posted ") + _arg1.value) + " to '") + _local6.name) + "'"));
};
_local3 = {score:_arg1.score, value:_arg1.value, username:_local4};
};
callListener(APIEvent.SCORE_POSTED, _arg1.success, _local3);
break;
case "loadScores":
_local3 = new Object();
_local6 = getScoreBoardById(_arg1.board);
if (_local6){
_local6.setScores(_arg1.scores, _arg1.period, _arg1.page, _arg1.num_results);
};
callListener(APIEvent.SCORES_LOADED, _arg1.success, _local6);
break;
case "unlockMedal":
if (_medals){
_local10 = getMedalByName(_arg1.medal_name);
if (_local10.unlocked){
return;
};
_local10.unlocked = true;
callListener(APIEvent.MEDAL_UNLOCKED, _arg1.success, _local10);
};
break;
case "getMedals":
populateMedals(_arg1.medals);
callListener(APIEvent.MEDALS_LOADED, _arg1.success, _local3);
break;
case "lookupSaveFiles":
_local7 = [];
_local11 = 0;
while (_local11 < _arg1.files.length) {
_local12 = _arg1.files[_local11];
_local13 = new SaveFile(getSaveGroupById(_arg1.group_id));
_local13.name = _local12.filename;
_local13.id = _local12.save_id;
_local13.description = _local12.description;
_local13.thumbnailUrl = _local12.thumb;
_local13.fileUrl = (_saveFilePath + _local12.file);
if (((_local12.keys) && (_local12.keys.length))){
_local14 = 0;
while (_local14 < _local12.keys.length) {
_local13.setKey(_local12.keys[_local14].id, _local12.keys[_local14].value);
_local14++;
};
};
if (((_local12.ratings) && (_local12.ratings.length))){
_local14 = 0;
while (_local14 < _local12.ratings.length) {
_local13.setRating(_local12.ratings[_local14].id, _local12.ratings[_local14].votes, _local12.ratings[_local14].score);
_local14++;
};
};
_local7.push(_local13);
_local11++;
};
_arg1.owner.dispatchEvent(new APIEvent(APIEvent.QUERY_COMPLETE, _arg1.success, _local7));
break;
case "rateSaveFile":
_local13 = _arg1.owner;
if (_arg1.success){
_local13.setRating(_arg1.rating_id, _arg1.votes, _arg1.score);
};
_local13.dispatchEvent(new APIEvent(APIEvent.VOTE_COMPLETE, _arg1.success, _arg1));
break;
case "saveFile":
_local3 = {save_id:_arg1.save_id, filename:_arg1.filename, file_url:_arg1.file_url, thumbnail:_arg1.thumbnail, icon:_arg1.icon};
_arg1.owner.dispatchEvent(new APIEvent(APIEvent.FILE_SAVED, _arg1.success, _local3));
break;
case "checkFilePrivs":
_local3 = {filename:_arg1.filename, folder:_arg1.folder, can_read:_arg1.can_read, can_write:_arg1.can_write};
callListener(APIEvent.FILE_PRIVS_LOADED, _arg1.success, _local3);
break;
};
}
public static function getSaveGroupByName(_arg1:String):SaveGroup{
if (((!(_saveGroups)) || ((_saveGroups.length < 1)))){
sendWarning("No save groups found");
return (null);
};
var _local2:uint;
while (_local2 < _saveGroups.length) {
if (_saveGroups[_local2].name == _arg1){
return (_saveGroups[_local2]);
};
_local2++;
};
return (null);
}
private static function getCommandID(_arg1:String):String{
return (_arg1);
}
public static function getPeriodName(_arg1:String):String{
var _local2:String;
for (_local2 in period_aliases) {
if (_local2 == _arg1){
return (period_aliases[_local2].name);
};
};
return (null);
}
public static function hasEventListener(_arg1:String):Boolean{
return (_eventDispatcher.hasEventListener(_arg1));
}
private static function onCommandError(_arg1:Event):void{
var _local2:SmartURLLoader = SmartURLLoader(_arg1.target);
var _local3:uint;
while (_local3 < _preloadAssets.length) {
if (_preloadAssets[_local3] == _local2){
_preloadAssets.splice(_local3, 1);
break;
};
_local3++;
};
}
public static function isNewgrounds():Boolean{
return ((((publisher_id == 1)) || ((getHost().toLowerCase().indexOf("ungrounded.net") > -1))));
}
}
}//package com.newgrounds
Section 30
//APIError (com.newgrounds.APIError)
package com.newgrounds {
import flash.utils.*;
public class APIError {
public var alias:String;
public var message:String;
public var name:String;
public var code:Number;// = 0
private static const always_caps:Array = new Array("API", "URL", "ID");
public static const error_names:Object = init_names();
public static const aliases:Array = new Array("UNKNOWN_ERROR", "INVALID_API_ID", "MISSING_PARAM", "INVALID_STAT_ID", "INVALID_COMMAND_ID", "FLASH_ADS_NOT_APPROVED", "PERMISSION_DENIED", "IDENTIFICATION_REQUIRED", "INVALID_EMAIL_ADDRESS", "BANNED_USER", "SESSION_EXPIRED", "INVALID_SCORE", "INVALID_MEDAL", "INVALID_FOLDER", "FILE_NOT_FOUND", "SITE_ID_REQUIRED", "UPLOAD_IN_PROGRESS", "USER_CANCELLED", "CONFIRM_REQUEST", "CONNECTION_FAILED");
public static const error_codes:Object = init_codes();
public function APIError(_arg1, _arg2:String){
if ((_arg1 is String)){
_arg1 = error_codes[_arg1];
} else {
if (!(_arg1 is uint)){
_arg1 = 0;
};
};
code = _arg1;
message = _arg2;
name = error_names[_arg1];
alias = aliases[_arg1];
}
public function isError():Boolean{
return (true);
}
private static function init_names():Array{
var _local3:Array;
var _local4:uint;
var _local5:String;
var _local1:Array = new Array();
var _local2:uint;
while (_local2 < aliases.length) {
_local3 = aliases[_local2].toLowerCase().split("_");
_local4 = 0;
while (_local4 < _local3.length) {
_local3[_local4] = (_local3[_local4].substr(0, 1).toUpperCase() + _local3[_local4].substr(1, _local3[_local4].length));
for each (_local5 in always_caps) {
if (_local3[_local4].toUpperCase() == _local5){
_local3[_local4] = _local3[_local4].toUpperCase();
};
};
_local4++;
};
_local1[_local2] = _local3.join(" ");
_local2++;
};
return (_local1);
}
public static function init_codes():Dictionary{
var _local1:Dictionary = new Dictionary();
var _local2:uint;
while (_local2 < aliases.length) {
_local1[aliases[_local2]] = _local2;
_local2++;
};
return (_local1);
}
}
}//package com.newgrounds
Section 31
//APIEvent (com.newgrounds.APIEvent)
package com.newgrounds {
import flash.events.*;
public class APIEvent extends Event {
private var _success:Boolean;
private var _target;
private var _data;
public static const AD_ATTACHED:String = "adAttached";
public static const FILE_PRIVS_LOADED:String = "filePrivsLoaded";
public static const ADS_APPROVED:String = "adsApproved";
public static const MEDALS_LOADED:String = "medalsLoaded";
public static const MEDAL_UNLOCKED:String = "medalUnlocked";
public static const METADATA_LOADED:String = "metadataLoaded";
public static const NEW_VERSION_AVAILABLE:String = "newVersionAvailable";
public static const FILE_SAVED:String = "fileSaved";
public static const EVENT_LOGGED:String = "eventLogged";
public static const SCORE_POSTED:String = "scorePosted";
public static const VOTE_COMPLETE:String = "voteComplete";
public static const FILE_LOADED:String = "fileLoaded";
public static const QUERY_COMPLETE:String = "queryComplete";
public static const SCORES_LOADED:String = "scoresLoaded";
public static const HOST_BLOCKED:String = "hostBlocked";
public static const MOVIE_CONNECTED:String = "movieConnected";
public function APIEvent(_arg1:String, _arg2:Boolean=true, _arg3=undefined){
super(_arg1);
_data = _arg3;
_success = _arg2;
}
public function get data(){
return (_data);
}
public function get success():Boolean{
return (_success);
}
}
}//package com.newgrounds
Section 32
//BaseN (com.newgrounds.BaseN)
package com.newgrounds {
import flash.utils.*;
public class BaseN {
private var _hashVal:Dictionary;
private var _hashIndex:String;
private var _base:Number;
public function BaseN(_arg1:String=null){
if (_arg1){
_hashIndex = _arg1;
} else {
_hashIndex = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ`~@#$%^&*()+|;/";
};
_base = _hashIndex.length;
_hashVal = new Dictionary();
var _local2:uint;
while (_local2 < _base) {
_hashVal[_hashIndex.charAt(_local2)] = _local2;
_local2++;
};
}
public function encode(_arg1:Number, _arg2:uint=1):String{
var _local3:String = _arg1.toString();
var _local4 = "";
if (_local3.charAt(0) == "-"){
_local4 = "-";
_local3 = _local3.substring(1);
};
var _local5:Array = _local3.split(".", 2);
_local4 = (_local4 + baseNEncoder(_local5[0], _arg2));
if (_local5.length > 1){
_local4 = (_local4 + ("." + baseNEncoder(_local5[1])));
};
return (_local4);
}
private function baseNDecoder(_arg1:String):uint{
var _local2:uint;
var _local3:uint;
while (_local3 < _arg1.length) {
_local2 = (_local2 * _base);
_local2 = (_local2 + _hashVal[_arg1.charAt(_local3)]);
_local3++;
};
return (_local2);
}
public function decode(_arg1:String):Number{
var _local2 = "";
if (_arg1.charAt(0) == "-"){
_local2 = "-";
_arg1 = _arg1.substring(1);
};
var _local3:Array = _arg1.split(".", 2);
_local2 = (_local2 + baseNDecoder(_local3[0]));
if (_local3.length > 1){
_local2 = (_local2 + ".");
_local2 = (_local2 + baseNDecoder(_local3[1]));
};
return (Number(_local2));
}
private function baseNEncoder(_arg1:uint, _arg2:uint=1):String{
var _local3 = "";
var _local4:uint = _arg1;
while (_local4 != 0) {
_local3 = (_hashIndex.charAt((_local4 % _base)) + _local3);
_local4 = (_local4 / _base);
};
if (_arg2){
while (_local3.length < _arg2) {
_local3 = (_hashIndex.charAt(0) + _local3);
};
};
return (_local3);
}
}
}//package com.newgrounds
Section 33
//Medal (com.newgrounds.Medal)
package com.newgrounds {
import flash.display.*;
import flash.events.*;
import flash.net.*;
import flash.system.*;
public class Medal {
private var _unlocked:Boolean;// = false
private var _iconLoader:Loader;
private var _difficultyId:uint;
private var _icon:BitmapData;
private var _value:uint;
private var _iconUrl:URLRequest;
private var _name:String;
private var _id:uint;
private static const DIFFICULT_NAMES:Array = [null, "Easy", "Moderate", "Challenging", "Difficult", "Brutal"];
private static const DEFAULT_ICON:BitmapData = new BitmapData(50, 50, false, 0);
public function Medal(_arg1:uint, _arg2:String, _arg3:uint, _arg4:uint, _arg5:Boolean, _arg6:String){
var id = _arg1;
var name = _arg2;
var value = _arg3;
var difficulty = _arg4;
var unlocked = _arg5;
var iconUrl = _arg6;
_icon = DEFAULT_ICON;
super();
_id = id;
_name = name;
_value = value;
_difficultyId = difficulty;
_unlocked = unlocked;
if (iconUrl){
_iconUrl = new URLRequest(iconUrl);
_iconLoader = new Loader();
_iconLoader.contentLoaderInfo.addEventListener(Event.INIT, onIconLoaderInit);
_iconLoader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, onIconLoaderError);
_iconLoader.contentLoaderInfo.addEventListener(SecurityErrorEvent.SECURITY_ERROR, onIconLoaderError);
_iconLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, onIconLoaderComplete);
try {
_iconLoader.load(_iconUrl, new LoaderContext(true));
} catch(e:Error) {
onIconLoaderError(null);
};
};
}
public function get icon():BitmapData{
return (_icon);
}
public function set unlocked(_arg1:Boolean):void{
_unlocked = _arg1;
}
public function get bytesLoaded():uint{
return ((_iconLoader) ? _iconLoader.contentLoaderInfo.bytesLoaded : 0);
}
public function get name():String{
return (_name);
}
private function onIconLoaderComplete(_arg1:Event):void{
var _local2:Bitmap = (_iconLoader.content as Bitmap);
_icon = _local2.bitmapData;
_iconLoader.unload();
_iconLoader = null;
}
public function get bytesTotal():uint{
return ((_iconLoader) ? _iconLoader.contentLoaderInfo.bytesTotal : 0);
}
public function get id():uint{
return (_id);
}
public function unlock():void{
if (!_unlocked){
API.unlockMedal(this);
};
}
private function onIconLoaderError(_arg1:IOErrorEvent):void{
trace((((("[NewgroundsAPI WARNING] :: Failed to load medal icon for " + name) + " (") + _iconUrl.url.split("/").pop()) + ")"));
_iconLoader.unload();
_iconLoader = null;
}
private function onIconLoaderInit(_arg1:Event):void{
}
public function get unlocked():Boolean{
return (_unlocked);
}
public function createIconBitmap():Bitmap{
return (new Bitmap(icon));
}
public function toString():String{
return (_name);
}
public function get value():uint{
return (_value);
}
public function get difficultyId():uint{
return (_difficultyId);
}
public function get difficulty():String{
return (DIFFICULT_NAMES[_difficultyId]);
}
public static function createFromObject(_arg1:Object):Medal{
return (new Medal(_arg1.medal_id, _arg1.medal_name, _arg1.medal_value, _arg1.medal_difficulty, _arg1.medal_unlocked, _arg1.medal_icon));
}
}
}//package com.newgrounds
Section 34
//RC4 (com.newgrounds.RC4)
package com.newgrounds {
public class RC4 {
private static var mykey:Array = new Array(0xFF);
private static var sbox:Array = new Array(0xFF);
private static function charsToHex(_arg1:Array):String{
var _local2:String = new String("");
var _local3:Array = new Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f");
var _local4:uint;
while (_local4 < _arg1.length) {
_local2 = (_local2 + (_local3[(_arg1[_local4] >> 4)] + _local3[(_arg1[_local4] & 15)]));
_local4++;
};
return (_local2);
}
public static function encrypt(_arg1:String, _arg2:String):String{
var _local3:Array = strToChars(_arg1);
var _local4:Array = strToChars(_arg2);
var _local5:Array = calculate(_local3, _local4);
return (charsToHex(_local5));
}
private static function hexToChars(_arg1:String):Array{
var _local2:Array = new Array();
var _local3:uint = ((_arg1.substr(0, 2))=="0x") ? 2 : 0;
while (_local3 < _arg1.length) {
_local2.push(parseInt(_arg1.substr(_local3, 2), 16));
_local3 = (_local3 + 2);
};
return (_local2);
}
public static function encryptbin(_arg1:String, _arg2:String):Array{
var _local3:Array = strToChars(_arg1);
var _local4:Array = strToChars(_arg2);
var _local5:Array = calculate(_local3, _local4);
return (_local5);
}
public static function decrypt(_arg1:String, _arg2:String):String{
var _local3:Array = hexToChars(_arg1);
var _local4:Array = strToChars(_arg2);
var _local5:Array = calculate(_local3, _local4);
return (charsToStr(_local5));
}
private static function strToChars(_arg1:String):Array{
var _local2:Array = new Array();
var _local3:uint;
while (_local3 < _arg1.length) {
_local2.push(_arg1.charCodeAt(_local3));
_local3++;
};
return (_local2);
}
private static function calculate(_arg1:Array, _arg2:Array):Array{
var _local6:uint;
var _local7:uint;
var _local8:uint;
var _local10:uint;
initialize(_arg2);
var _local3:uint;
var _local4:uint;
var _local5:Array = new Array();
var _local9:uint;
while (_local9 < _arg1.length) {
_local3 = ((_local3 + 1) % 0x0100);
_local4 = ((_local4 + sbox[_local3]) % 0x0100);
_local7 = sbox[_local3];
sbox[_local3] = sbox[_local4];
sbox[_local4] = _local7;
_local10 = ((sbox[_local3] + sbox[_local4]) % 0x0100);
_local6 = sbox[_local10];
_local8 = (_arg1[_local9] ^ _local6);
_local5.push(_local8);
_local9++;
};
return (_local5);
}
private static function initialize(_arg1:Array):void{
var _local3:uint;
var _local2:uint;
var _local4:uint = _arg1.length;
var _local5:uint;
while (_local5 <= 0xFF) {
mykey[_local5] = _arg1[(_local5 % _local4)];
sbox[_local5] = _local5;
_local5++;
};
_local5 = 0;
while (_local5 <= 0xFF) {
_local2 = (((_local2 + sbox[_local5]) + mykey[_local5]) % 0x0100);
_local3 = sbox[_local5];
sbox[_local5] = sbox[_local2];
sbox[_local2] = _local3;
_local5++;
};
}
private static function charsToStr(_arg1:Array):String{
var _local2:String = new String("");
var _local3:uint;
while (_local3 < _arg1.length) {
_local2 = (_local2 + String.fromCharCode(_arg1[_local3]));
_local3++;
};
return (_local2);
}
}
}//package com.newgrounds
Section 35
//SaveFile (com.newgrounds.SaveFile)
package com.newgrounds {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import flash.net.*;
public class SaveFile extends EventDispatcher {
private var _group:SaveGroup;
private var _id:uint;
private var _thumbnailUrl:String;
private var _status:uint;
private var _keys:Dictionary;
private var _fileUrl:String;
private var _filename:String;
private var _ratings:Dictionary;
private var _contents;
private var _thumbnail:BitmapData;
private var _description:String;
public function SaveFile(_arg1:SaveGroup){
_keys = new Dictionary();
_ratings = new Dictionary();
_group = _arg1;
_description = "";
}
public function get description():String{
return (_description);
}
public function sendRating(_arg1:String, _arg2:Number):void{
var _local3:SaveRating = _group.getRatingByName(_arg1);
if (!_local3){
trace((("[NewgroundsAPISaveFile] " + _arg1) + " is not a recognized save file"));
return;
};
if ((((_arg2 < _local3.minValue)) || ((_arg2 > _local3.maxValue)))){
trace(((("[NewgroundsAPISaveFile] Vote must be between " + _local3.minValue) + " and ") + _local3.maxValue));
return;
};
_local3.voted = true;
API.rateSaveFile(this, _local3, _arg2);
}
public function set thumbnailUrl(_arg1:String):void{
_thumbnailUrl = _arg1;
}
public function get groupId():uint{
return (_group.id);
}
public function get name():String{
return (_filename);
}
override public function toString():String{
var _local2:Object;
var _local3:Object;
var _local1 = (((((("Save File " + _filename) + " ID: ") + _id) + "\n ") + _description) + "\n");
for each (_local2 in _keys) {
_local1 = (_local1 + ((((" " + _group.getKeyById(_local2.id).name) + ": ") + _local2.val) + "\n"));
};
for each (_local3 in _ratings) {
_local1 = (_local1 + ((((((" " + _group.getRatingById(_local3.id).name) + "\n Score: ") + _local3.score) + " Votes: ") + _local3.votes) + "\n"));
};
return (_local1);
}
public function save():void{
API.saveFile(this);
}
public function set name(_arg1:String):void{
_filename = _arg1;
}
public function set thumbnail(_arg1:BitmapData):void{
if (_thumbnail){
_thumbnail.dispose();
};
_thumbnail = _arg1.clone();
}
public function get groupType():uint{
return (_group.type);
}
public function get id():uint{
return (_id);
}
public function setKey(_arg1, _arg2):void{
var _local3:SaveKey;
if ((_local3 is String)){
_local3 = _group.getKeyByName(_arg1);
} else {
_local3 = _group.getKeyById(_arg1);
};
if (_local3){
_keys[_local3] = {id:_local3.id, val:_arg2};
};
}
public function setRating(_arg1, _arg2:Number, _arg3:Number):void{
var _local4:SaveRating;
if ((_arg1 is String)){
_local4 = _group.getRatingByName(_arg1);
} else {
_local4 = _group.getRatingById(_arg1);
};
if (_local4){
_ratings[_local4] = {id:_local4.id, name:_local4.name, votes:_arg2, score:_arg3};
};
}
public function toObject():Object{
var _local2:Object;
var _local1:Object = {group:groupId, filename:name, description:description, shared:true};
_local1.keys = [];
for each (_local2 in _keys) {
_local1.push({id:_local2.id, value:_local2.val});
};
return (_local1);
}
public function get contents(){
return (_contents);
}
public function get thumbnailUrl():String{
return (_thumbnailUrl);
}
public function get shared():Boolean{
return (true);
}
public function getRating(_arg1):Object{
var _local2:SaveRating;
if ((_arg1 is String)){
_local2 = _group.getRatingByName(_arg1);
} else {
_local2 = _group.getRatingById(_arg1);
};
if (_local2){
return (_ratings[_local2]);
};
return (null);
}
public function getKey(_arg1){
var _local2:SaveKey;
if ((_local2 is String)){
_local2 = _group.getKeyByName(_arg1);
} else {
_local2 = _group.getKeyById(_arg1);
};
if (_local2){
return (_keys[_local2]);
};
return (null);
}
public function get groupName():String{
return (_group.name);
}
public function get fileUrl():String{
return (_fileUrl);
}
public function get thumbnail():BitmapData{
return (_thumbnail);
}
public function loadContents():void{
var _local1:SmartURLLoader;
if (_fileUrl){
_local1 = new SmartURLLoader();
_local1.responseFormat = URLLoaderDataFormat.BINARY;
_local1.addEventListener(Event.COMPLETE, onContentsLoaded);
_local1.load(_fileUrl);
};
}
public function set fileUrl(_arg1:String):void{
_fileUrl = _arg1;
}
public function set id(_arg1:uint):void{
_id = _arg1;
}
public function set description(_arg1:String):void{
_description = _arg1;
}
public function set contents(_arg1):void{
_contents = _arg1;
}
private function onContentsLoaded(_arg1:Event):void{
var _local2:ByteArray = _arg1.target.response;
_local2.uncompress();
var _local3:uint = _local2.readUnsignedByte();
if (_local3 == 0){
_contents = new ByteArray();
_contents.writeBytes(_local2, 1);
} else {
_contents = _local2.readObject();
};
dispatchEvent(new APIEvent(APIEvent.FILE_LOADED, true, contents));
}
}
}//package com.newgrounds
Section 36
//SaveGroup (com.newgrounds.SaveGroup)
package com.newgrounds {
public class SaveGroup {
private var _id:uint;
private var _keys:Array;
private var _type:uint;
private var _name:String;
private var _ratings:Array;
private var _files:Array;
public static const TYPE_SYSTEM:uint = 0;
public static const TYPE_PRIVATE:uint = 1;
public static const TYPE_MODERATED:uint = 3;
public static const TYPE_PUBLIC:uint = 2;
public function SaveGroup(_arg1:uint, _arg2:String, _arg3:uint){
_name = _arg2;
_id = _arg1;
_type = _arg3;
_ratings = [];
_keys = [];
_files = [];
}
public function toString():String{
return ((((((("SaveGroup { name: " + _name) + ", id: ") + _id) + ", keys: ") + _keys) + "}"));
}
public function getRatingById(_arg1:uint):SaveRating{
var _local2:uint;
while (_local2 < _ratings.length) {
if (_ratings[_local2].id == _arg1){
return (_ratings[_local2]);
};
_local2++;
};
return (null);
}
public function getKeyByName(_arg1:String):SaveKey{
var _local2:uint;
while (_local2 < _keys.length) {
if (_keys[_local2].name == _arg1){
return (_keys[_local2]);
};
_local2++;
};
return (null);
}
public function get name():String{
return (_name);
}
public function getKeyById(_arg1:uint):SaveKey{
var _local2:uint;
while (_local2 < _keys.length) {
if (_keys[_local2].id == _arg1){
return (_keys[_local2]);
};
_local2++;
};
return (null);
}
public function addRating(_arg1:SaveRating):void{
_ratings.push(_arg1);
}
public function get id():uint{
return (_id);
}
public function createQuery():SaveGroupQuery{
return (new SaveGroupQuery(this));
}
public function get keys():Array{
return (_keys.concat());
}
public function getRatingByName(_arg1:String):SaveRating{
var _local2:uint;
while (_local2 < _ratings.length) {
if (_ratings[_local2].name == _arg1){
return (_ratings[_local2]);
};
_local2++;
};
return (null);
}
public function get ratings():Array{
return (_ratings.concat());
}
public function get type():uint{
return (_type);
}
public function addKey(_arg1:SaveKey):void{
_keys.push(_arg1);
}
public static function createFromObject(_arg1:Object):SaveGroup{
var _local4:Object;
var _local5:Object;
var _local2:SaveGroup = new SaveGroup(_arg1.group_id, _arg1.group_name, _arg1.group_type);
var _local3:uint;
while (_local3 < _arg1.keys.length) {
_local4 = _arg1.keys[_local3];
_local2.addKey(new SaveKey(_local4.id, _local4.name, _local4.type));
_local3++;
};
_local3 = 0;
while (_local3 < _arg1.ratings.length) {
_local5 = _arg1.ratings[_local3];
_local2.addRating(new SaveRating(_local5.id, _local5.name, _local5.float, _local5.min, _local5.max));
_local3++;
};
return (_local2);
}
}
}//package com.newgrounds
Section 37
//SaveGroupQuery (com.newgrounds.SaveGroupQuery)
package com.newgrounds {
import flash.events.*;
public class SaveGroupQuery extends EventDispatcher {
private var _group:SaveGroup;
private var _fileConditions:Array;
private var _ratingConditions:Array;
private var _resultsPerPage:uint;
private var _sortConditions:Array;
private var _lookupRatings:Array;
private var _randomizeResults:Boolean;
private var _lookupKeys:Array;
private var _page:uint;
private var _groupBy:Array;
private var _keyConditions:Array;
public static const UPDATED_ON:uint = 5;
public static const TABLE_RATINGS:uint = 3;
public static const TABLE_FILES:uint = 1;
public static const TOTAL_VOTES:String = "votes";
public static const AUTHOR_ID:uint = 1;
public static const FILE_STATUS:uint = 7;
public static const TABLE_KEYS:uint = 2;
public static const FILE_NAME:uint = 3;
public static const SCORE:String = "score";
public static const TOTAL_VIEWS:uint = 6;
public static const CREATED_ON:uint = 4;
public static const FILE_ID:uint = 0;
public static const AUTHOR_NAME:uint = 2;
public function SaveGroupQuery(_arg1:SaveGroup){
_group = _arg1;
reset();
}
public function addKeyCondition(_arg1:String, _arg2:String, _arg3):void{
var _local4:SaveKey = _group.getKeyByName(_arg1);
if (!_local4){
return;
};
if (!checkValue(_arg3, _local4.type)){
return;
};
_keyConditions.push({key:_local4.id, operator:_arg2, value:_arg3});
}
public function sortOn(_arg1:uint, _arg2:Boolean=false):void{
addSortCondition(TABLE_FILES, _arg1, _arg2);
}
public function set isRandomized(_arg1:Boolean):void{
_randomizeResults = _arg1;
}
public function get isRandomized():Boolean{
return (_randomizeResults);
}
public function groupByRating(_arg1:String):void{
var _local2:SaveRating = _group.getRatingByName(_arg1);
if (!_local2){
return;
};
_groupBy.push({table:TABLE_RATINGS, field:_local2.id});
}
public function execute():void{
API.executeSaveQuery(this);
}
public function get page():uint{
return (_page);
}
public function groupByKey(_arg1:String):void{
var _local2:SaveKey = _group.getKeyByName(_arg1);
if (!_local2){
return;
};
_groupBy.push({table:TABLE_KEYS, field:_local2.id});
}
public function sortOnKey(_arg1:String, _arg2:Boolean=false):void{
addSortCondition(TABLE_KEYS, _group.getKeyByName(_arg1).id, _arg2);
}
public function toObject():Object{
var _local1:Object = {page:_page, num_results:_resultsPerPage};
if (isRandomized){
_local1.randomize = 1;
};
if (((_fileConditions) && ((_fileConditions.length > 0)))){
_local1.file_conditions = _fileConditions;
};
if (((_keyConditions) && ((_keyConditions.length > 0)))){
_local1.key_conditions = _keyConditions;
};
if (((_ratingConditions) && ((_ratingConditions.length > 0)))){
_local1.rating_conditions = _ratingConditions;
};
if (((_sortConditions) && ((_sortConditions.length > 0)))){
_local1.sort_conditions = _sortConditions;
};
if (((_lookupKeys) && ((_lookupKeys.length > 0)))){
_local1.lookup_keys = _lookupKeys;
};
if (((_lookupRatings) && ((_lookupRatings.length > 0)))){
_local1.lookup_ratings = _lookupRatings;
};
if (((_groupBy) && ((_groupBy.length > 0)))){
_local1.group_by = _groupBy;
};
return (_local1);
}
public function reset():void{
_fileConditions = [];
_keyConditions = [];
_ratingConditions = [];
_sortConditions = [];
_groupBy = [];
_lookupKeys = [];
_lookupRatings = [];
_randomizeResults = false;
_resultsPerPage = 20;
_page = 1;
}
public function includeKey(_arg1:String):void{
var _local2:SaveKey = _group.getKeyByName(_arg1);
if (_local2){
_lookupKeys.push(_local2.id);
};
}
private function checkValue(_arg1, _arg2:uint):Boolean{
return (true);
}
public function set page(_arg1:uint):void{
_page = _arg1;
}
public function addRatingCondition(_arg1:String, _arg2:String, _arg3, _arg4:String="score"):void{
var _local5:SaveRating = _group.getRatingByName(_arg1);
if (!_local5){
return;
};
_ratingConditions.push({rating:_local5.id, operator:_arg2, value:_arg3, column:_arg4});
}
public function includeRating(_arg1:String):void{
var _local2:SaveRating = _group.getRatingByName(_arg1);
if (_local2){
_lookupRatings.push(_local2.id);
};
}
public function sortOnRating(_arg1:String, _arg2:Boolean=false, _arg3:String="score"):void{
addSortCondition(TABLE_RATINGS, _group.getRatingByName(_arg1).id, _arg2, _arg3);
}
public function set resultsPerPage(_arg1:uint):void{
_resultsPerPage = _arg1;
}
public function excludeRating(_arg1:String):void{
var _local2:SaveRating = _group.getRatingByName(_arg1);
var _local3:uint;
while (_local3 < _lookupRatings.length) {
if (_lookupRatings[_local3] == _local2.id){
_lookupRatings.splice(_local3, 1);
return;
};
_local3++;
};
}
public function addFileCondition(_arg1:uint, _arg2:String, _arg3):void{
_fileConditions.push({field:_arg1, operator:_arg2, value:_arg3});
}
public function excludeKey(_arg1:String):void{
var _local2:SaveKey = _group.getKeyByName(_arg1);
var _local3:uint;
while (_local3 < _lookupKeys.length) {
if (_lookupKeys[_local3] == _local2.id){
_lookupKeys.splice(_local3, 1);
return;
};
_local3++;
};
}
public function get resultsPerPage():uint{
return (_resultsPerPage);
}
public function get groupId():uint{
return (_group.id);
}
override public function toString():String{
return ("");
}
private function addSortCondition(_arg1:uint, _arg2:uint, _arg3:Boolean=false, _arg4=null):void{
var _local5:Object = {table:_arg1, field:_arg2, desc:_arg3};
if (_arg4){
_local5.extra = _arg4;
};
_sortConditions.push(_local5);
}
public function groupBy(_arg1:uint):void{
_groupBy.push({table:TABLE_FILES, field:_arg1});
}
public function get group():SaveGroup{
return (_group);
}
}
}//package com.newgrounds
Section 38
//SaveKey (com.newgrounds.SaveKey)
package com.newgrounds {
public class SaveKey {
private var _id:uint;
private var _type:uint;
private var _name:String;
public static const TYPE_BOOLEAN:uint = 4;
public static const TYPE_STRING:uint = 3;
public static const TYPE_FLOAT:uint = 1;
public static const TYPE_INTEGER:uint = 2;
public function SaveKey(_arg1:uint, _arg2:String, _arg3:uint){
_id = _arg1;
_name = _arg2;
_type = _arg3;
}
public function isValueValid(_arg1):Boolean{
if (_type == TYPE_INTEGER){
return ((((_arg1 is int)) || ((_arg1 is uint))));
};
if (_type == TYPE_FLOAT){
return ((((((_arg1 is int)) || ((_arg1 is uint)))) || ((_arg1 is Number))));
};
if (_type == TYPE_STRING){
return ((_arg1 is String));
};
if (_type == TYPE_BOOLEAN){
return ((((((((_arg1 is Boolean)) || ((_arg1 === 0)))) || ((_arg1 === 1)))) || ((_arg1 == ""))));
};
return (false);
}
public function get name():String{
return (_name);
}
public function get type():uint{
return (_type);
}
public function get id():uint{
return (_id);
}
public function toString():String{
return (_name);
}
}
}//package com.newgrounds
Section 39
//SaveRating (com.newgrounds.SaveRating)
package com.newgrounds {
public class SaveRating {
private var _voted:Boolean;
private var _name:String;
private var _maxValue:Number;
private var _isFloat:Boolean;
private var _id:uint;
private var _minValue:Number;
public function SaveRating(_arg1:uint, _arg2:String, _arg3:Boolean, _arg4:Number=-INF, _arg5:Number=INF){
_id = _arg1;
_name = _arg2;
_isFloat = _arg3;
_minValue = _arg4;
_maxValue = _arg5;
}
public function get voted():Boolean{
return (_voted);
}
public function set voted(_arg1:Boolean):void{
_voted = _arg1;
}
public function toString():String{
return (_name);
}
public function get maxValue():Number{
return (_maxValue);
}
public function get name():String{
return (_name);
}
public function get isFloat():Boolean{
return (_isFloat);
}
public function get id():uint{
return (_id);
}
public function get minValue():Number{
return (_minValue);
}
}
}//package com.newgrounds
Section 40
//Score (com.newgrounds.Score)
package com.newgrounds {
public class Score {
private var _board:ScoreBoard;
private var _position:uint;
private var _numeric_value:uint;
private var _value:String;
private var _username:String;
public function Score(_arg1:ScoreBoard, _arg2:Number, _arg3:String, _arg4:String, _arg5:uint){
_board = _arg1;
_position = _arg2;
_username = _arg3;
_value = _arg4;
_numeric_value = _arg5;
}
public function get board():ScoreBoard{
return (_board);
}
public function get position():uint{
return (_position);
}
public function get value():String{
return (_value);
}
public function get username():String{
return (_username);
}
public function get numeric_value():uint{
return (_numeric_value);
}
}
}//package com.newgrounds
Section 41
//ScoreBoard (com.newgrounds.ScoreBoard)
package com.newgrounds {
import flash.events.*;
public class ScoreBoard extends EventDispatcher {
private var _scores:Array;
private var _tag:String;
private var _period:String;// = "Today"
private var _name:String;
private var _page:uint;// = 1
private var _id:uint;
private var _num_results:uint;// = 10
public function ScoreBoard(_arg1:uint, _arg2:String, _arg3:String){
_name = _arg2;
_id = _arg1;
_scores = [];
_tag = _arg3;
}
public function get period():String{
return (_period);
}
public function get name():String{
return (_name);
}
public function postScore(_arg1:uint):void{
API.postScore(_name, _arg1);
}
public function get page():uint{
return (_page);
}
public function get tag():String{
return (_tag);
}
public function exists():Boolean{
return ((_id > 0));
}
public function get scores():Array{
return (_scores);
}
public function get id():Number{
return (_id);
}
public function loadScores(_arg1:String="Today", _arg2:uint=1, _arg3:uint=10):void{
_period = _arg1;
if (((!(_period)) || ((_period == "")))){
_period = ScoreBoardPeriod.TODAY;
};
_page = _arg2;
_num_results = _arg3;
API.loadScores(this);
}
function setScores(_arg1:Array, _arg2:String, _arg3:Number, _arg4:Number):void{
var _local6:uint;
_period = _arg2;
_page = _arg3;
_num_results = _arg4;
_scores = [];
var _local5:uint;
while (_local5 < _arg1.length) {
_local6 = (((_num_results * (_page - 1)) + 1) + _local5);
_scores.push(new Score(this, _local6, _arg1[_local5].username, _arg1[_local5].value, _arg1[_local5].numeric_value));
_local5++;
};
}
public function get num_results():uint{
return (_num_results);
}
}
}//package com.newgrounds
Section 42
//ScoreBoardPeriod (com.newgrounds.ScoreBoardPeriod)
package com.newgrounds {
public class ScoreBoardPeriod {
public static const MONTH:String = "This Month";
public static const TODAY:String = "Today";
public static const WEEK:String = "This Week";
public static const ALL_TIME:String = "All-Time";
public static const YEAR:String = "This Year";
}
}//package com.newgrounds
Section 43
//SmartURLLoader (com.newgrounds.SmartURLLoader)
package com.newgrounds {
import flash.events.*;
import flash.utils.*;
import flash.net.*;
import flash.errors.*;
public class SmartURLLoader extends EventDispatcher {
private var _urlRequest:URLRequest;
private var _method:String;// = "GET"
private var _files:Dictionary;
private var _hasVariables:Boolean;
private var _dataFormat:String;// = "text"
private var _urlLoader:URLLoader;
private var _preventCache:Boolean;// = false
private var _variables:Dictionary;
public var owner;
private var _openBrowser:Boolean;// = false
private static const CRLF:String = "
";
private static var _loaders:Dictionary = new Dictionary();
public function SmartURLLoader(){
_urlRequest = new URLRequest();
_variables = new Dictionary();
}
public function get response(){
return (_urlLoader.data);
}
public function set method(_arg1:String):void{
if (((hasFiles) && ((_arg1 == URLRequestMethod.GET)))){
throw (new IllegalOperationError("GET cannot be used to upload files."));
};
_method = _arg1;
}
private function onIOError(_arg1:IOErrorEvent):void{
dispatchEvent(_arg1);
dispose();
}
public function addVariable(_arg1:String, _arg2=""):void{
_variables[_arg1] = _arg2;
if (_arg2){
_hasVariables = true;
};
}
private function onSecurityError(_arg1:SecurityErrorEvent):void{
dispatchEvent(_arg1);
dispose();
}
public function get preventCache():Boolean{
return (_preventCache);
}
public function addFile(_arg1:String, _arg2:ByteArray, _arg3:String, _arg4:String="application/octect-stream"):void{
method = URLRequestMethod.POST;
if (!_files){
_files = new Dictionary();
};
_files[_arg1] = new File(_arg1, _arg2, _arg3, _arg4);
}
public function get openBrowser():Boolean{
return (_openBrowser);
}
public function set preventCache(_arg1:Boolean):void{
_preventCache = _arg1;
}
public function get responseFormat():String{
return (_dataFormat);
}
private function onComplete(_arg1:Event):void{
dispatchEvent(_arg1);
dispose();
}
public function dispose():void{
_files = null;
_variables = null;
if (_urlLoader){
_urlLoader.removeEventListener(Event.COMPLETE, onComplete);
_urlLoader.removeEventListener(ProgressEvent.PROGRESS, onProgress);
_urlLoader.removeEventListener(IOErrorEvent.IO_ERROR, onIOError);
_urlLoader.removeEventListener(HTTPStatusEvent.HTTP_STATUS, onHTTPStatus);
_urlLoader.removeEventListener(SecurityErrorEvent.SECURITY_ERROR, onSecurityError);
_urlLoader = null;
};
_urlRequest = null;
_loaders[this] = null;
}
public function get method():String{
return (_method);
}
public function close():void{
try {
_urlLoader.close();
} catch(e:Error) {
};
}
private function buildMultipartData(_arg1:String):ByteArray{
var _local3:String;
var _local4:File;
var _local2:ByteArray = new ByteArray();
_local2.endian = Endian.BIG_ENDIAN;
_arg1 = ("--" + _arg1);
for (_local3 in _variables) {
_local2.writeUTFBytes((_arg1 + CRLF));
_local2.writeUTFBytes(((("Content-Disposition: form-data; name=\"" + _local3) + "\"") + CRLF));
_local2.writeUTFBytes(CRLF);
_local2.writeUTFBytes((_variables[_local3] + CRLF));
};
if (hasFiles){
for each (_local4 in _files) {
_local2.writeUTFBytes((_arg1 + CRLF));
_local2.writeUTFBytes(("Content-Disposition: form-data; name=\"Filename\"" + CRLF));
_local2.writeUTFBytes(CRLF);
_local2.writeUTFBytes((_local4.fileName + CRLF));
_local2.writeUTFBytes((_arg1 + CRLF));
_local2.writeUTFBytes(((((("Content-Disposition: form-data; name=\"" + _local4.dataField) + "\"; filename=\"") + _local4.fileName) + "\"") + CRLF));
_local2.writeUTFBytes((("Content-Type: " + _local4.contentType) + CRLF));
_local2.writeUTFBytes(CRLF);
_local2.writeBytes(_local4.data);
_local2.writeUTFBytes(CRLF);
};
_local2.writeUTFBytes((_arg1 + CRLF));
_local2.writeUTFBytes(("Content-Disposition: form-data; name=\"Upload\"" + CRLF));
_local2.writeUTFBytes(CRLF);
_local2.writeUTFBytes(("Submit Query" + CRLF));
};
_local2.writeUTFBytes((_arg1 + "--"));
_local2.position = 0;
trace(_local2.readUTFBytes(_local2.length));
_local2.position = 0;
return (_local2);
}
public function clearVariables():void{
_variables = new Dictionary();
}
private function onProgress(_arg1:ProgressEvent):void{
dispatchEvent(_arg1);
}
public function load(_arg1:String):void{
var urlVariables:URLVariables;
var key:String;
var boundary:String;
var i:uint;
var event:SecurityErrorEvent;
var url = _arg1;
_urlRequest.url = url;
if (_preventCache){
url = (url + ("?seed=" + Math.random()));
if (_hasVariables){
url = (url + "&");
};
};
_urlRequest.method = _method;
if ((((_urlRequest.method == URLRequestMethod.GET)) || (!(hasFiles)))){
_urlRequest.contentType = "application/x-www-form-urlencoded";
if (_hasVariables){
urlVariables = new URLVariables();
for (key in _variables) {
urlVariables[key] = _variables[key];
};
_urlRequest.data = urlVariables;
};
} else {
boundary = "";
i = 0;
while (i < 32) {
boundary = (boundary + String.fromCharCode(uint((97 + (Math.random() * 25)))));
i = (i + 1);
};
_urlRequest.contentType = (("multipart/form-data; boundary=\"" + boundary) + "\"");
_urlRequest.data = buildMultipartData(boundary);
};
if (openBrowser){
navigateToURL(_urlRequest, "_blank");
} else {
_urlLoader = new URLLoader();
_urlLoader.dataFormat = _dataFormat;
_urlLoader.addEventListener(Event.COMPLETE, onComplete);
_urlLoader.addEventListener(ProgressEvent.PROGRESS, onProgress);
_urlLoader.addEventListener(IOErrorEvent.IO_ERROR, onIOError);
_urlLoader.addEventListener(HTTPStatusEvent.HTTP_STATUS, onHTTPStatus);
_urlLoader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, onSecurityError);
_loaders[_urlLoader] = this;
try {
_urlLoader.load(_urlRequest);
} catch(error:Error) {
event = new SecurityErrorEvent(SecurityErrorEvent.SECURITY_ERROR, false, false, error.message);
onSecurityError(event);
};
};
}
public function set responseFormat(_arg1:String):void{
_dataFormat = _arg1;
}
public function clearFiles():void{
_files = null;
}
private function onHTTPStatus(_arg1:HTTPStatusEvent):void{
dispatchEvent(_arg1);
}
public function set openBrowser(_arg1:Boolean):void{
_openBrowser = _arg1;
}
public function get hasFiles():Boolean{
return (Boolean(_files));
}
}
}//package com.newgrounds
import flash.utils.*;
class File {
private var dataField:String;
private var contentType:String;
private var fileName:String;
private var data:ByteArray;
private function File(_arg1:String, _arg2:ByteArray, _arg3:String="Filedata", _arg4:String="application/octet-stream"){
this.fileName = _arg1;
this.data = _arg2;
this.dataField = _arg3;
this.contentType = _arg4;
}
}
Section 44
//MouseWheelTrap (com.spikything.utils.MouseWheelTrap)
package com.spikything.utils {
import flash.display.*;
import flash.events.*;
import flash.external.*;
public class MouseWheelTrap {
private static var _mouseWheelTrapped:Boolean;
private static function allowBrowserScroll(_arg1:Boolean):void{
createMouseWheelTrap();
if (ExternalInterface.available){
ExternalInterface.call("allowBrowserScroll", _arg1);
};
}
public static function setup(_arg1:Stage):void{
var stage = _arg1;
stage.addEventListener(MouseEvent.MOUSE_MOVE, function ():void{
allowBrowserScroll(false);
});
stage.addEventListener(Event.MOUSE_LEAVE, function ():void{
allowBrowserScroll(true);
});
}
private static function createMouseWheelTrap():void{
if (_mouseWheelTrapped){
return;
};
_mouseWheelTrapped = true;
if (ExternalInterface.available){
ExternalInterface.call("eval", "var browserScrolling;function allowBrowserScroll(value){browserScrolling=value;}function handle(delta){if(!browserScrolling){return false;}return true;}function wheel(event){var delta=0;if(!event){event=window.event;}if(event.wheelDelta){delta=event.wheelDelta/120;if(window.opera){delta=-delta;}}else if(event.detail){delta=-event.detail/3;}if(delta){handle(delta);}if(!browserScrolling){if(event.preventDefault){event.preventDefault();}event.returnValue=false;}}if(window.addEventListener){window.addEventListener('DOMMouseScroll',wheel,false);}window.onmousewheel=document.onmousewheel=wheel;allowBrowserScroll(true);");
};
}
}
}//package com.spikything.utils
Section 45
//BaseButton (fl.controls.BaseButton)
package fl.controls {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import fl.core.*;
import fl.events.*;
public class BaseButton extends UIComponent {
protected var pressTimer:Timer;
protected var _autoRepeat:Boolean;// = false
protected var _selected:Boolean;// = false
protected var background:DisplayObject;
private var unlockedMouseState:String;
protected var mouseState:String;
private var _mouseStateLocked:Boolean;// = false
private static var defaultStyles:Object = {upSkin:"Button_upSkin", downSkin:"Button_downSkin", overSkin:"Button_overSkin", disabledSkin:"Button_disabledSkin", selectedDisabledSkin:"Button_selectedDisabledSkin", selectedUpSkin:"Button_selectedUpSkin", selectedDownSkin:"Button_selectedDownSkin", selectedOverSkin:"Button_selectedOverSkin", focusRectSkin:null, focusRectPadding:null, repeatDelay:500, repeatInterval:35};
public function BaseButton(){
buttonMode = true;
mouseChildren = false;
useHandCursor = false;
setupMouseEvents();
setMouseState("up");
pressTimer = new Timer(1, 0);
pressTimer.addEventListener(TimerEvent.TIMER, buttonDown, false, 0, true);
}
override public function get enabled():Boolean{
return (super.enabled);
}
protected function startPress():void{
if (_autoRepeat){
pressTimer.delay = Number(getStyleValue("repeatDelay"));
pressTimer.start();
};
dispatchEvent(new ComponentEvent(ComponentEvent.BUTTON_DOWN, true));
}
override protected function draw():void{
if (isInvalid(InvalidationType.STYLES, InvalidationType.STATE)){
drawBackground();
invalidate(InvalidationType.SIZE, false);
};
if (isInvalid(InvalidationType.SIZE)){
drawLayout();
};
super.draw();
}
protected function drawLayout():void{
background.width = width;
background.height = height;
}
override public function set enabled(_arg1:Boolean):void{
super.enabled = _arg1;
mouseEnabled = _arg1;
}
public function set autoRepeat(_arg1:Boolean):void{
_autoRepeat = _arg1;
}
protected function mouseEventHandler(_arg1:MouseEvent):void{
if (_arg1.type == MouseEvent.MOUSE_DOWN){
setMouseState("down");
startPress();
} else {
if ((((_arg1.type == MouseEvent.ROLL_OVER)) || ((_arg1.type == MouseEvent.MOUSE_UP)))){
setMouseState("over");
endPress();
} else {
if (_arg1.type == MouseEvent.ROLL_OUT){
setMouseState("up");
endPress();
};
};
};
}
protected function drawBackground():void{
var _local1:String = (enabled) ? mouseState : "disabled";
if (selected){
_local1 = (("selected" + _local1.substr(0, 1).toUpperCase()) + _local1.substr(1));
};
_local1 = (_local1 + "Skin");
var _local2:DisplayObject = background;
background = getDisplayObjectInstance(getStyleValue(_local1));
addChildAt(background, 0);
if (((!((_local2 == null))) && (!((_local2 == background))))){
removeChild(_local2);
};
}
public function get selected():Boolean{
return (_selected);
}
protected function setupMouseEvents():void{
addEventListener(MouseEvent.ROLL_OVER, mouseEventHandler, false, 0, true);
addEventListener(MouseEvent.MOUSE_DOWN, mouseEventHandler, false, 0, true);
addEventListener(MouseEvent.MOUSE_UP, mouseEventHandler, false, 0, true);
addEventListener(MouseEvent.ROLL_OUT, mouseEventHandler, false, 0, true);
}
protected function endPress():void{
pressTimer.reset();
}
public function set mouseStateLocked(_arg1:Boolean):void{
_mouseStateLocked = _arg1;
if (_arg1 == false){
setMouseState(unlockedMouseState);
} else {
unlockedMouseState = mouseState;
};
}
public function get autoRepeat():Boolean{
return (_autoRepeat);
}
public function set selected(_arg1:Boolean):void{
if (_selected == _arg1){
return;
};
_selected = _arg1;
invalidate(InvalidationType.STATE);
}
protected function buttonDown(_arg1:TimerEvent):void{
if (!_autoRepeat){
endPress();
return;
};
if (pressTimer.currentCount == 1){
pressTimer.delay = Number(getStyleValue("repeatInterval"));
};
dispatchEvent(new ComponentEvent(ComponentEvent.BUTTON_DOWN, true));
}
public function setMouseState(_arg1:String):void{
if (_mouseStateLocked){
unlockedMouseState = _arg1;
return;
};
if (mouseState == _arg1){
return;
};
mouseState = _arg1;
invalidate(InvalidationType.STATE);
}
public static function getStyleDefinition():Object{
return (defaultStyles);
}
}
}//package fl.controls
Section 46
//Button (fl.controls.Button)
package fl.controls {
import flash.display.*;
import fl.core.*;
import fl.managers.*;
public class Button extends LabelButton implements IFocusManagerComponent {
protected var _emphasized:Boolean;// = false
protected var emphasizedBorder:DisplayObject;
private static var defaultStyles:Object = {emphasizedSkin:"Button_emphasizedSkin", emphasizedPadding:2};
public static var createAccessibilityImplementation:Function;
public function set emphasized(_arg1:Boolean):void{
_emphasized = _arg1;
invalidate(InvalidationType.STYLES);
}
override protected function initializeAccessibility():void{
if (Button.createAccessibilityImplementation != null){
Button.createAccessibilityImplementation(this);
};
}
protected function drawEmphasized():void{
var _local2:Number;
if (emphasizedBorder != null){
removeChild(emphasizedBorder);
};
emphasizedBorder = null;
if (!_emphasized){
return;
};
var _local1:Object = getStyleValue("emphasizedSkin");
if (_local1 != null){
emphasizedBorder = getDisplayObjectInstance(_local1);
};
if (emphasizedBorder != null){
addChildAt(emphasizedBorder, 0);
_local2 = Number(getStyleValue("emphasizedPadding"));
emphasizedBorder.x = (emphasizedBorder.y = -(_local2));
emphasizedBorder.width = (width + (_local2 * 2));
emphasizedBorder.height = (height + (_local2 * 2));
};
}
public function get emphasized():Boolean{
return (_emphasized);
}
override protected function draw():void{
if (((isInvalid(InvalidationType.STYLES)) || (isInvalid(InvalidationType.SIZE)))){
drawEmphasized();
};
super.draw();
if (emphasizedBorder != null){
setChildIndex(emphasizedBorder, (numChildren - 1));
};
}
override public function drawFocus(_arg1:Boolean):void{
var _local2:Number;
var _local3:*;
super.drawFocus(_arg1);
if (_arg1){
_local2 = Number(getStyleValue("emphasizedPadding"));
if ((((_local2 < 0)) || (!(_emphasized)))){
_local2 = 0;
};
_local3 = getStyleValue("focusRectPadding");
_local3 = ((_local3)==null) ? 2 : _local3;
_local3 = (_local3 + _local2);
uiFocusRect.x = -(_local3);
uiFocusRect.y = -(_local3);
uiFocusRect.width = (width + (_local3 * 2));
uiFocusRect.height = (height + (_local3 * 2));
};
}
public static function getStyleDefinition():Object{
return (UIComponent.mergeStyles(LabelButton.getStyleDefinition(), defaultStyles));
}
}
}//package fl.controls
Section 47
//ButtonLabelPlacement (fl.controls.ButtonLabelPlacement)
package fl.controls {
public class ButtonLabelPlacement {
public static const TOP:String = "top";
public static const LEFT:String = "left";
public static const BOTTOM:String = "bottom";
public static const RIGHT:String = "right";
}
}//package fl.controls
Section 48
//LabelButton (fl.controls.LabelButton)
package fl.controls {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import fl.core.*;
import fl.managers.*;
import fl.events.*;
import flash.ui.*;
public class LabelButton extends BaseButton implements IFocusManagerComponent {
protected var _toggle:Boolean;// = false
public var textField:TextField;
protected var mode:String;// = "center"
protected var _labelPlacement:String;// = "right"
protected var oldMouseState:String;
protected var _label:String;// = "Label"
protected var icon:DisplayObject;
private static var defaultStyles:Object = {icon:null, upIcon:null, downIcon:null, overIcon:null, disabledIcon:null, selectedDisabledIcon:null, selectedUpIcon:null, selectedDownIcon:null, selectedOverIcon:null, textFormat:null, disabledTextFormat:null, textPadding:5, embedFonts:false};
public static var createAccessibilityImplementation:Function;
override protected function draw():void{
if (textField.text != _label){
label = _label;
};
if (isInvalid(InvalidationType.STYLES, InvalidationType.STATE)){
drawBackground();
drawIcon();
drawTextFormat();
invalidate(InvalidationType.SIZE, false);
};
if (isInvalid(InvalidationType.SIZE)){
drawLayout();
};
if (isInvalid(InvalidationType.SIZE, InvalidationType.STYLES)){
if (((isFocused) && (focusManager.showFocusIndicator))){
drawFocus(true);
};
};
validate();
}
override protected function drawLayout():void{
var _local7:Number;
var _local8:Number;
var _local1:Number = Number(getStyleValue("textPadding"));
var _local2:String = ((((icon == null)) && ((mode == "center")))) ? ButtonLabelPlacement.TOP : _labelPlacement;
textField.height = (textField.textHeight + 4);
var _local3:Number = (textField.textWidth + 4);
var _local4:Number = (textField.textHeight + 4);
var _local5:Number = ((icon)==null) ? 0 : (icon.width + _local1);
var _local6:Number = ((icon)==null) ? 0 : (icon.height + _local1);
textField.visible = (label.length > 0);
if (icon != null){
icon.x = Math.round(((width - icon.width) / 2));
icon.y = Math.round(((height - icon.height) / 2));
};
if (textField.visible == false){
textField.width = 0;
textField.height = 0;
} else {
if ((((_local2 == ButtonLabelPlacement.BOTTOM)) || ((_local2 == ButtonLabelPlacement.TOP)))){
_local7 = Math.max(0, Math.min(_local3, (width - (2 * _local1))));
if ((height - 2) > _local4){
_local8 = _local4;
} else {
_local8 = (height - 2);
};
_local3 = _local7;
textField.width = _local3;
_local4 = _local8;
textField.height = _local4;
textField.x = Math.round(((width - _local3) / 2));
textField.y = Math.round(((((height - textField.height) - _local6) / 2) + ((_local2)==ButtonLabelPlacement.BOTTOM) ? _local6 : 0));
if (icon != null){
icon.y = Math.round(((_local2)==ButtonLabelPlacement.BOTTOM) ? (textField.y - _local6) : ((textField.y + textField.height) + _local1));
};
} else {
_local7 = Math.max(0, Math.min(_local3, ((width - _local5) - (2 * _local1))));
_local3 = _local7;
textField.width = _local3;
textField.x = Math.round(((((width - _local3) - _local5) / 2) + ((_local2)!=ButtonLabelPlacement.LEFT) ? _local5 : 0));
textField.y = Math.round(((height - textField.height) / 2));
if (icon != null){
icon.x = Math.round(((_local2)!=ButtonLabelPlacement.LEFT) ? (textField.x - _local5) : ((textField.x + _local3) + _local1));
};
};
};
super.drawLayout();
}
protected function toggleSelected(_arg1:MouseEvent):void{
selected = !(selected);
dispatchEvent(new Event(Event.CHANGE, true));
}
override protected function keyUpHandler(_arg1:KeyboardEvent):void{
if (!enabled){
return;
};
if (_arg1.keyCode == Keyboard.SPACE){
setMouseState(oldMouseState);
oldMouseState = null;
endPress();
dispatchEvent(new MouseEvent(MouseEvent.CLICK));
};
}
public function get labelPlacement():String{
return (_labelPlacement);
}
public function get toggle():Boolean{
return (_toggle);
}
protected function setEmbedFont(){
var _local1:Object = getStyleValue("embedFonts");
if (_local1 != null){
textField.embedFonts = _local1;
};
}
override public function get selected():Boolean{
return ((_toggle) ? _selected : false);
}
override protected function configUI():void{
super.configUI();
textField = new TextField();
textField.type = TextFieldType.DYNAMIC;
textField.selectable = false;
addChild(textField);
}
override protected function initializeAccessibility():void{
if (LabelButton.createAccessibilityImplementation != null){
LabelButton.createAccessibilityImplementation(this);
};
}
public function set labelPlacement(_arg1:String):void{
_labelPlacement = _arg1;
invalidate(InvalidationType.SIZE);
}
protected function drawIcon():void{
var _local1:DisplayObject = icon;
var _local2:String = (enabled) ? mouseState : "disabled";
if (selected){
_local2 = (("selected" + _local2.substr(0, 1).toUpperCase()) + _local2.substr(1));
};
_local2 = (_local2 + "Icon");
var _local3:Object = getStyleValue(_local2);
if (_local3 == null){
_local3 = getStyleValue("icon");
};
if (_local3 != null){
icon = getDisplayObjectInstance(_local3);
};
if (icon != null){
addChildAt(icon, 1);
};
if (((!((_local1 == null))) && (!((_local1 == icon))))){
removeChild(_local1);
};
}
public function set label(_arg1:String):void{
_label = _arg1;
if (textField.text != _label){
textField.text = _label;
dispatchEvent(new ComponentEvent(ComponentEvent.LABEL_CHANGE));
};
invalidate(InvalidationType.SIZE);
invalidate(InvalidationType.STYLES);
}
override protected function keyDownHandler(_arg1:KeyboardEvent):void{
if (!enabled){
return;
};
if (_arg1.keyCode == Keyboard.SPACE){
if (oldMouseState == null){
oldMouseState = mouseState;
};
setMouseState("down");
startPress();
};
}
public function set toggle(_arg1:Boolean):void{
if (((!(_arg1)) && (super.selected))){
selected = false;
};
_toggle = _arg1;
if (_toggle){
addEventListener(MouseEvent.CLICK, toggleSelected, false, 0, true);
} else {
removeEventListener(MouseEvent.CLICK, toggleSelected);
};
invalidate(InvalidationType.STATE);
}
override public function set selected(_arg1:Boolean):void{
_selected = _arg1;
if (_toggle){
invalidate(InvalidationType.STATE);
};
}
protected function drawTextFormat():void{
var _local1:Object = UIComponent.getStyleDefinition();
var _local2:TextFormat = (enabled) ? (_local1.defaultTextFormat as TextFormat) : (_local1.defaultDisabledTextFormat as TextFormat);
textField.setTextFormat(_local2);
var _local3:TextFormat = (getStyleValue((enabled) ? "textFormat" : "disabledTextFormat") as TextFormat);
if (_local3 != null){
textField.setTextFormat(_local3);
} else {
_local3 = _local2;
};
textField.defaultTextFormat = _local3;
setEmbedFont();
}
public function get label():String{
return (_label);
}
public static function getStyleDefinition():Object{
return (mergeStyles(defaultStyles, BaseButton.getStyleDefinition()));
}
}
}//package fl.controls
Section 49
//ComponentShim (fl.core.ComponentShim)
package fl.core {
import flash.display.*;
public dynamic class ComponentShim extends MovieClip {
}
}//package fl.core
Section 50
//InvalidationType (fl.core.InvalidationType)
package fl.core {
public class InvalidationType {
public static const SIZE:String = "size";
public static const ALL:String = "all";
public static const DATA:String = "data";
public static const SCROLL:String = "scroll";
public static const STATE:String = "state";
public static const STYLES:String = "styles";
public static const SELECTED:String = "selected";
public static const RENDERER_STYLES:String = "rendererStyles";
}
}//package fl.core
Section 51
//UIComponent (fl.core.UIComponent)
package fl.core {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
import fl.managers.*;
import fl.events.*;
import flash.system.*;
public class UIComponent extends Sprite {
protected var _x:Number;
protected var _enabled:Boolean;// = true
protected var callLaterMethods:Dictionary;
private var _mouseFocusEnabled:Boolean;// = true
private var tempText:TextField;
private var _focusEnabled:Boolean;// = true
protected var startHeight:Number;
protected var _height:Number;
protected var invalidateFlag:Boolean;// = false
protected var _oldIMEMode:String;// = null
protected var _inspector:Boolean;// = false
protected var startWidth:Number;
public var focusTarget:IFocusManagerComponent;
protected var errorCaught:Boolean;// = false
protected var invalidHash:Object;
protected var sharedStyles:Object;
protected var uiFocusRect:DisplayObject;
protected var isLivePreview:Boolean;// = false
protected var _imeMode:String;// = null
protected var _width:Number;
protected var instanceStyles:Object;
public var version:String;// = "3.0.0.16"
protected var isFocused:Boolean;// = false
protected var _y:Number;
public static var inCallLaterPhase:Boolean = false;
private static var defaultStyles:Object = {focusRectSkin:"focusRectSkin", focusRectPadding:2, textFormat:new TextFormat("_sans", 11, 0, false, false, false, "", "", TextFormatAlign.LEFT, 0, 0, 0, 0), disabledTextFormat:new TextFormat("_sans", 11, 0x999999, false, false, false, "", "", TextFormatAlign.LEFT, 0, 0, 0, 0), defaultTextFormat:new TextFormat("_sans", 11, 0, false, false, false, "", "", TextFormatAlign.LEFT, 0, 0, 0, 0), defaultDisabledTextFormat:new TextFormat("_sans", 11, 0x999999, false, false, false, "", "", TextFormatAlign.LEFT, 0, 0, 0, 0)};
public static var createAccessibilityImplementation:Function;
private static var focusManagers:Dictionary = new Dictionary(false);
public function UIComponent(){
instanceStyles = {};
sharedStyles = {};
invalidHash = {};
callLaterMethods = new Dictionary();
StyleManager.registerInstance(this);
configUI();
invalidate(InvalidationType.ALL);
tabEnabled = (this is IFocusManagerComponent);
focusRect = false;
if (tabEnabled){
addEventListener(FocusEvent.FOCUS_IN, focusInHandler);
addEventListener(FocusEvent.FOCUS_OUT, focusOutHandler);
addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler);
addEventListener(KeyboardEvent.KEY_UP, keyUpHandler);
};
initializeFocusManager();
addEventListener(Event.ENTER_FRAME, hookAccessibility, false, 0, true);
}
public function getStyle(_arg1:String):Object{
return (instanceStyles[_arg1]);
}
protected function checkLivePreview():Boolean{
var className:String;
if (parent == null){
return (false);
};
try {
className = getQualifiedClassName(parent);
} catch(e:Error) {
};
return ((className == "fl.livepreview::LivePreviewParent"));
}
private function callLaterDispatcher(_arg1:Event):void{
var _local3:Object;
if (_arg1.type == Event.ADDED_TO_STAGE){
removeEventListener(Event.ADDED_TO_STAGE, callLaterDispatcher);
stage.addEventListener(Event.RENDER, callLaterDispatcher, false, 0, true);
stage.invalidate();
return;
};
_arg1.target.removeEventListener(Event.RENDER, callLaterDispatcher);
if (stage == null){
addEventListener(Event.ADDED_TO_STAGE, callLaterDispatcher, false, 0, true);
return;
};
inCallLaterPhase = true;
var _local2:Dictionary = callLaterMethods;
for (_local3 in _local2) {
_local3();
delete _local2[_local3];
};
inCallLaterPhase = false;
}
protected function validate():void{
invalidHash = {};
}
protected function focusOutHandler(_arg1:FocusEvent):void{
if (isOurFocus((_arg1.target as DisplayObject))){
drawFocus(false);
isFocused = false;
};
}
public function set mouseFocusEnabled(_arg1:Boolean):void{
_mouseFocusEnabled = _arg1;
}
public function getFocus():InteractiveObject{
if (stage){
return (stage.focus);
};
return (null);
}
override public function get height():Number{
return (_height);
}
private function addedHandler(_arg1:Event):void{
removeEventListener("addedToStage", addedHandler);
initializeFocusManager();
}
protected function getStyleValue(_arg1:String):Object{
return (((instanceStyles[_arg1])==null) ? sharedStyles[_arg1] : instanceStyles[_arg1]);
}
public function invalidate(_arg1:String="all", _arg2:Boolean=true):void{
invalidHash[_arg1] = true;
if (_arg2){
this.callLater(draw);
};
}
protected function isOurFocus(_arg1:DisplayObject):Boolean{
return ((_arg1 == this));
}
public function get enabled():Boolean{
return (_enabled);
}
protected function getScaleX():Number{
return (super.scaleX);
}
protected function getScaleY():Number{
return (super.scaleY);
}
public function get focusEnabled():Boolean{
return (_focusEnabled);
}
protected function afterComponentParameters():void{
}
override public function get scaleY():Number{
return ((height / startHeight));
}
protected function setIMEMode(_arg1:Boolean){
var enabled = _arg1;
if (_imeMode != null){
if (enabled){
IME.enabled = true;
_oldIMEMode = IME.conversionMode;
try {
if (((!(errorCaught)) && (!((IME.conversionMode == IMEConversionMode.UNKNOWN))))){
IME.conversionMode = _imeMode;
};
errorCaught = false;
} catch(e:Error) {
errorCaught = true;
throw (new Error(("IME mode not supported: " + _imeMode)));
};
} else {
if (((!((IME.conversionMode == IMEConversionMode.UNKNOWN))) && (!((_oldIMEMode == IMEConversionMode.UNKNOWN))))){
IME.conversionMode = _oldIMEMode;
};
IME.enabled = false;
};
};
}
protected function draw():void{
if (isInvalid(InvalidationType.SIZE, InvalidationType.STYLES)){
if (((isFocused) && (focusManager.showFocusIndicator))){
drawFocus(true);
};
};
validate();
}
override public function set height(_arg1:Number):void{
if (_height == _arg1){
return;
};
setSize(width, _arg1);
}
protected function configUI():void{
isLivePreview = checkLivePreview();
var _local1:Number = rotation;
rotation = 0;
var _local2:Number = super.width;
var _local3:Number = super.height;
var _local4 = 1;
super.scaleY = _local4;
super.scaleX = _local4;
setSize(_local2, _local3);
move(super.x, super.y);
rotation = _local1;
startWidth = _local2;
startHeight = _local3;
if (numChildren > 0){
removeChildAt(0);
};
}
protected function setScaleY(_arg1:Number):void{
super.scaleY = _arg1;
}
override public function get scaleX():Number{
return ((width / startWidth));
}
protected function setScaleX(_arg1:Number):void{
super.scaleX = _arg1;
}
private function initializeFocusManager():void{
if (stage == null){
addEventListener(Event.ADDED_TO_STAGE, addedHandler, false, 0, true);
} else {
createFocusManager();
};
}
protected function keyDownHandler(_arg1:KeyboardEvent):void{
}
public function set focusManager(_arg1:IFocusManager):void{
UIComponent.focusManagers[this] = _arg1;
}
public function clearStyle(_arg1:String):void{
setStyle(_arg1, null);
}
protected function isInvalid(_arg1:String, ... _args):Boolean{
if (((invalidHash[_arg1]) || (invalidHash[InvalidationType.ALL]))){
return (true);
};
while (_args.length > 0) {
if (invalidHash[_args.pop()]){
return (true);
};
};
return (false);
}
public function setStyle(_arg1:String, _arg2:Object):void{
if ((((instanceStyles[_arg1] === _arg2)) && (!((_arg2 is TextFormat))))){
return;
};
instanceStyles[_arg1] = _arg2;
invalidate(InvalidationType.STYLES);
}
override public function get visible():Boolean{
return (super.visible);
}
protected function focusInHandler(_arg1:FocusEvent):void{
var _local2:IFocusManager;
if (isOurFocus((_arg1.target as DisplayObject))){
_local2 = focusManager;
if (((_local2) && (_local2.showFocusIndicator))){
drawFocus(true);
isFocused = true;
};
};
}
public function get componentInspectorSetting():Boolean{
return (_inspector);
}
override public function get x():Number{
return ((isNaN(_x)) ? super.x : _x);
}
override public function get y():Number{
return ((isNaN(_y)) ? super.y : _y);
}
public function set enabled(_arg1:Boolean):void{
if (_arg1 == _enabled){
return;
};
_enabled = _arg1;
invalidate(InvalidationType.STATE);
}
public function setSize(_arg1:Number, _arg2:Number):void{
_width = _arg1;
_height = _arg2;
invalidate(InvalidationType.SIZE);
dispatchEvent(new ComponentEvent(ComponentEvent.RESIZE, false));
}
protected function keyUpHandler(_arg1:KeyboardEvent):void{
}
public function setSharedStyle(_arg1:String, _arg2:Object):void{
if ((((sharedStyles[_arg1] === _arg2)) && (!((_arg2 is TextFormat))))){
return;
};
sharedStyles[_arg1] = _arg2;
if (instanceStyles[_arg1] == null){
invalidate(InvalidationType.STYLES);
};
}
public function set focusEnabled(_arg1:Boolean):void{
_focusEnabled = _arg1;
}
override public function set width(_arg1:Number):void{
if (_width == _arg1){
return;
};
setSize(_arg1, height);
}
public function setFocus():void{
if (stage){
stage.focus = this;
};
}
override public function set scaleX(_arg1:Number):void{
setSize((startWidth * _arg1), height);
}
public function get mouseFocusEnabled():Boolean{
return (_mouseFocusEnabled);
}
override public function set scaleY(_arg1:Number):void{
setSize(width, (startHeight * _arg1));
}
protected function getDisplayObjectInstance(_arg1:Object):DisplayObject{
var skin = _arg1;
var classDef:Object;
if ((skin is Class)){
return ((new (skin) as DisplayObject));
};
if ((skin is DisplayObject)){
(skin as DisplayObject).x = 0;
(skin as DisplayObject).y = 0;
return ((skin as DisplayObject));
};
try {
classDef = getDefinitionByName(skin.toString());
} catch(e:Error) {
try {
classDef = (loaderInfo.applicationDomain.getDefinition(skin.toString()) as Object);
} catch(e:Error) {
};
};
if (classDef == null){
return (null);
};
return ((new (classDef) as DisplayObject));
}
protected function copyStylesToChild(_arg1:UIComponent, _arg2:Object):void{
var _local3:String;
for (_local3 in _arg2) {
_arg1.setStyle(_local3, getStyleValue(_arg2[_local3]));
};
}
protected function initializeAccessibility():void{
if (UIComponent.createAccessibilityImplementation != null){
UIComponent.createAccessibilityImplementation(this);
};
}
public function get focusManager():IFocusManager{
var _local1:DisplayObject = this;
while (_local1) {
if (UIComponent.focusManagers[_local1] != null){
return (IFocusManager(UIComponent.focusManagers[_local1]));
};
_local1 = _local1.parent;
};
return (null);
}
override public function get width():Number{
return (_width);
}
protected function beforeComponentParameters():void{
}
protected function callLater(_arg1:Function):void{
if (inCallLaterPhase){
return;
};
callLaterMethods[_arg1] = true;
if (stage != null){
stage.addEventListener(Event.RENDER, callLaterDispatcher, false, 0, true);
stage.invalidate();
} else {
addEventListener(Event.ADDED_TO_STAGE, callLaterDispatcher, false, 0, true);
};
}
public function move(_arg1:Number, _arg2:Number):void{
_x = _arg1;
_y = _arg2;
super.x = Math.round(_arg1);
super.y = Math.round(_arg2);
dispatchEvent(new ComponentEvent(ComponentEvent.MOVE));
}
public function validateNow():void{
invalidate(InvalidationType.ALL, false);
draw();
}
override public function set visible(_arg1:Boolean):void{
if (super.visible == _arg1){
return;
};
super.visible = _arg1;
var _local2:String = (_arg1) ? ComponentEvent.SHOW : ComponentEvent.HIDE;
dispatchEvent(new ComponentEvent(_local2, true));
}
protected function createFocusManager():void{
if (focusManagers[stage] == null){
focusManagers[stage] = new FocusManager(stage);
};
}
protected function hookAccessibility(_arg1:Event):void{
removeEventListener(Event.ENTER_FRAME, hookAccessibility);
initializeAccessibility();
}
public function set componentInspectorSetting(_arg1:Boolean):void{
_inspector = _arg1;
if (_inspector){
beforeComponentParameters();
} else {
afterComponentParameters();
};
}
override public function set y(_arg1:Number):void{
move(_x, _arg1);
}
public function drawFocus(_arg1:Boolean):void{
var _local2:Number;
isFocused = _arg1;
if (((!((uiFocusRect == null))) && (contains(uiFocusRect)))){
removeChild(uiFocusRect);
uiFocusRect = null;
};
if (_arg1){
uiFocusRect = (getDisplayObjectInstance(getStyleValue("focusRectSkin")) as Sprite);
if (uiFocusRect == null){
return;
};
_local2 = Number(getStyleValue("focusRectPadding"));
uiFocusRect.x = -(_local2);
uiFocusRect.y = -(_local2);
uiFocusRect.width = (width + (_local2 * 2));
uiFocusRect.height = (height + (_local2 * 2));
addChildAt(uiFocusRect, 0);
};
}
override public function set x(_arg1:Number):void{
move(_arg1, _y);
}
public function drawNow():void{
draw();
}
public static function getStyleDefinition():Object{
return (defaultStyles);
}
public static function mergeStyles(... _args):Object{
var _local5:Object;
var _local6:String;
var _local2:Object = {};
var _local3:uint = _args.length;
var _local4:uint;
while (_local4 < _local3) {
_local5 = _args[_local4];
for (_local6 in _local5) {
if (_local2[_local6] != null){
} else {
_local2[_local6] = _args[_local4][_local6];
};
};
_local4++;
};
return (_local2);
}
}
}//package fl.core
Section 52
//ComponentEvent (fl.events.ComponentEvent)
package fl.events {
import flash.events.*;
public class ComponentEvent extends Event {
public static const HIDE:String = "hide";
public static const BUTTON_DOWN:String = "buttonDown";
public static const MOVE:String = "move";
public static const RESIZE:String = "resize";
public static const ENTER:String = "enter";
public static const LABEL_CHANGE:String = "labelChange";
public static const SHOW:String = "show";
public function ComponentEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false){
super(_arg1, _arg2, _arg3);
}
override public function toString():String{
return (formatToString("ComponentEvent", "type", "bubbles", "cancelable"));
}
override public function clone():Event{
return (new ComponentEvent(type, bubbles, cancelable));
}
}
}//package fl.events
Section 53
//FocusManager (fl.managers.FocusManager)
package fl.managers {
import fl.controls.*;
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
import fl.core.*;
import flash.ui.*;
public class FocusManager implements IFocusManager {
private var focusableObjects:Dictionary;
private var _showFocusIndicator:Boolean;// = true
private var defButton:Button;
private var focusableCandidates:Array;
private var _form:DisplayObjectContainer;
private var _defaultButtonEnabled:Boolean;// = true
private var activated:Boolean;// = false
private var _defaultButton:Button;
private var calculateCandidates:Boolean;// = true
private var lastFocus:InteractiveObject;
private var lastAction:String;
public function FocusManager(_arg1:DisplayObjectContainer){
focusableObjects = new Dictionary(true);
if (_arg1 != null){
_form = _arg1;
addFocusables(DisplayObject(_arg1));
_arg1.addEventListener(Event.ADDED, addedHandler);
_arg1.addEventListener(Event.REMOVED, removedHandler);
activate();
};
}
public function get showFocusIndicator():Boolean{
return (_showFocusIndicator);
}
private function getIndexOfNextObject(_arg1:int, _arg2:Boolean, _arg3:Boolean, _arg4:String):int{
var _local7:DisplayObject;
var _local8:IFocusManagerGroup;
var _local9:int;
var _local10:DisplayObject;
var _local11:IFocusManagerGroup;
var _local5:int = focusableCandidates.length;
var _local6:int = _arg1;
while (true) {
if (_arg2){
_arg1--;
} else {
_arg1++;
};
if (_arg3){
if (((_arg2) && ((_arg1 < 0)))){
break;
};
if (((!(_arg2)) && ((_arg1 == _local5)))){
break;
};
} else {
_arg1 = ((_arg1 + _local5) % _local5);
if (_local6 == _arg1){
break;
};
};
if (isValidFocusCandidate(focusableCandidates[_arg1], _arg4)){
_local7 = DisplayObject(findFocusManagerComponent(focusableCandidates[_arg1]));
if ((_local7 is IFocusManagerGroup)){
_local8 = IFocusManagerGroup(_local7);
_local9 = 0;
while (_local9 < focusableCandidates.length) {
_local10 = focusableCandidates[_local9];
if ((_local10 is IFocusManagerGroup)){
_local11 = IFocusManagerGroup(_local10);
if ((((_local11.groupName == _local8.groupName)) && (_local11.selected))){
_arg1 = _local9;
break;
};
};
_local9++;
};
};
return (_arg1);
};
};
return (_arg1);
}
private function mouseFocusChangeHandler(_arg1:FocusEvent):void{
if ((_arg1.relatedObject is TextField)){
return;
};
_arg1.preventDefault();
}
public function set form(_arg1:DisplayObjectContainer):void{
_form = _arg1;
}
private function addFocusables(_arg1:DisplayObject, _arg2:Boolean=false):void{
var focusable:IFocusManagerComponent;
var io:InteractiveObject;
var doc:DisplayObjectContainer;
var i:int;
var child:DisplayObject;
var o = _arg1;
var skipTopLevel = _arg2;
if (!skipTopLevel){
if ((o is IFocusManagerComponent)){
focusable = IFocusManagerComponent(o);
if (focusable.focusEnabled){
if (((focusable.tabEnabled) && (isTabVisible(o)))){
focusableObjects[o] = true;
calculateCandidates = true;
};
o.addEventListener(Event.TAB_ENABLED_CHANGE, tabEnabledChangeHandler);
o.addEventListener(Event.TAB_INDEX_CHANGE, tabIndexChangeHandler);
};
} else {
if ((o is InteractiveObject)){
io = (o as InteractiveObject);
if (((((io) && (io.tabEnabled))) && ((findFocusManagerComponent(io) == io)))){
focusableObjects[io] = true;
calculateCandidates = true;
};
io.addEventListener(Event.TAB_ENABLED_CHANGE, tabEnabledChangeHandler);
io.addEventListener(Event.TAB_INDEX_CHANGE, tabIndexChangeHandler);
};
};
};
if ((o is DisplayObjectContainer)){
doc = DisplayObjectContainer(o);
o.addEventListener(Event.TAB_CHILDREN_CHANGE, tabChildrenChangeHandler);
if ((((((doc is Stage)) || ((doc.parent is Stage)))) || (doc.tabChildren))){
i = 0;
while (i < doc.numChildren) {
try {
child = doc.getChildAt(i);
if (child != null){
addFocusables(doc.getChildAt(i));
};
} catch(error:SecurityError) {
};
i = (i + 1);
};
};
};
}
private function getChildIndex(_arg1:DisplayObjectContainer, _arg2:DisplayObject):int{
return (_arg1.getChildIndex(_arg2));
}
public function findFocusManagerComponent(_arg1:InteractiveObject):InteractiveObject{
var _local2:InteractiveObject = _arg1;
while (_arg1) {
if ((((_arg1 is IFocusManagerComponent)) && (IFocusManagerComponent(_arg1).focusEnabled))){
return (_arg1);
};
_arg1 = _arg1.parent;
};
return (_local2);
}
private function focusOutHandler(_arg1:FocusEvent):void{
var _local2:InteractiveObject = (_arg1.target as InteractiveObject);
}
private function isValidFocusCandidate(_arg1:DisplayObject, _arg2:String):Boolean{
var _local3:IFocusManagerGroup;
if (!isEnabledAndVisible(_arg1)){
return (false);
};
if ((_arg1 is IFocusManagerGroup)){
_local3 = IFocusManagerGroup(_arg1);
if (_arg2 == _local3.groupName){
return (false);
};
};
return (true);
}
private function setFocusToNextObject(_arg1:FocusEvent):void{
if (!hasFocusableObjects()){
return;
};
var _local2:InteractiveObject = getNextFocusManagerComponent(_arg1.shiftKey);
if (_local2){
setFocus(_local2);
};
}
private function sortFocusableObjectsTabIndex():void{
var _local1:Object;
var _local2:InteractiveObject;
focusableCandidates = [];
for (_local1 in focusableObjects) {
_local2 = InteractiveObject(_local1);
if (((_local2.tabIndex) && (!(isNaN(Number(_local2.tabIndex)))))){
focusableCandidates.push(_local2);
};
};
focusableCandidates.sort(sortByTabIndex);
}
private function removeFocusables(_arg1:DisplayObject):void{
var _local2:Object;
var _local3:DisplayObject;
if ((_arg1 is DisplayObjectContainer)){
_arg1.removeEventListener(Event.TAB_CHILDREN_CHANGE, tabChildrenChangeHandler);
_arg1.removeEventListener(Event.TAB_INDEX_CHANGE, tabIndexChangeHandler);
for (_local2 in focusableObjects) {
_local3 = DisplayObject(_local2);
if (DisplayObjectContainer(_arg1).contains(_local3)){
if (_local3 == lastFocus){
lastFocus = null;
};
_local3.removeEventListener(Event.TAB_ENABLED_CHANGE, tabEnabledChangeHandler);
delete focusableObjects[_local2];
calculateCandidates = true;
};
};
};
}
private function getTopLevelFocusTarget(_arg1:InteractiveObject):InteractiveObject{
while (_arg1 != InteractiveObject(form)) {
if ((((((((_arg1 is IFocusManagerComponent)) && (IFocusManagerComponent(_arg1).focusEnabled))) && (IFocusManagerComponent(_arg1).mouseFocusEnabled))) && (UIComponent(_arg1).enabled))){
return (_arg1);
};
_arg1 = _arg1.parent;
if (_arg1 == null){
break;
};
};
return (null);
}
public function sendDefaultButtonEvent():void{
defButton.dispatchEvent(new MouseEvent(MouseEvent.CLICK));
}
private function addedHandler(_arg1:Event):void{
var _local2:DisplayObject = DisplayObject(_arg1.target);
if (_local2.stage){
addFocusables(DisplayObject(_arg1.target));
};
}
private function isEnabledAndVisible(_arg1:DisplayObject):Boolean{
var _local3:TextField;
var _local4:SimpleButton;
var _local2:DisplayObjectContainer = DisplayObject(form).parent;
while (_arg1 != _local2) {
if ((_arg1 is UIComponent)){
if (!UIComponent(_arg1).enabled){
return (false);
};
} else {
if ((_arg1 is TextField)){
_local3 = TextField(_arg1);
if ((((_local3.type == TextFieldType.DYNAMIC)) || (!(_local3.selectable)))){
return (false);
};
} else {
if ((_arg1 is SimpleButton)){
_local4 = SimpleButton(_arg1);
if (!_local4.enabled){
return (false);
};
};
};
};
if (!_arg1.visible){
return (false);
};
_arg1 = _arg1.parent;
};
return (true);
}
private function tabChildrenChangeHandler(_arg1:Event):void{
if (_arg1.target != _arg1.currentTarget){
return;
};
calculateCandidates = true;
var _local2:DisplayObjectContainer = DisplayObjectContainer(_arg1.target);
if (_local2.tabChildren){
addFocusables(_local2, true);
} else {
removeFocusables(_local2);
};
}
private function deactivateHandler(_arg1:Event):void{
var _local2:InteractiveObject = InteractiveObject(_arg1.target);
}
public function setFocus(_arg1:InteractiveObject):void{
if ((_arg1 is IFocusManagerComponent)){
IFocusManagerComponent(_arg1).setFocus();
} else {
form.stage.focus = _arg1;
};
}
public function getFocus():InteractiveObject{
var _local1:InteractiveObject = form.stage.focus;
return (findFocusManagerComponent(_local1));
}
private function hasFocusableObjects():Boolean{
var _local1:Object;
for (_local1 in focusableObjects) {
return (true);
};
return (false);
}
private function tabIndexChangeHandler(_arg1:Event):void{
calculateCandidates = true;
}
public function set defaultButton(_arg1:Button):void{
var _local2:Button = (_arg1) ? Button(_arg1) : null;
if (_local2 != _defaultButton){
if (_defaultButton){
_defaultButton.emphasized = false;
};
if (defButton){
defButton.emphasized = false;
};
_defaultButton = _local2;
defButton = _local2;
if (_local2){
_local2.emphasized = true;
};
};
}
private function sortFocusableObjects():void{
var _local1:Object;
var _local2:InteractiveObject;
focusableCandidates = [];
for (_local1 in focusableObjects) {
_local2 = InteractiveObject(_local1);
if (((((_local2.tabIndex) && (!(isNaN(Number(_local2.tabIndex)))))) && ((_local2.tabIndex > 0)))){
sortFocusableObjectsTabIndex();
return;
};
focusableCandidates.push(_local2);
};
focusableCandidates.sort(sortByDepth);
}
private function keyFocusChangeHandler(_arg1:FocusEvent):void{
showFocusIndicator = true;
if ((((((_arg1.keyCode == Keyboard.TAB)) || ((_arg1.keyCode == 0)))) && (!(_arg1.isDefaultPrevented())))){
setFocusToNextObject(_arg1);
_arg1.preventDefault();
};
}
private function getIndexOfFocusedObject(_arg1:DisplayObject):int{
var _local2:int = focusableCandidates.length;
var _local3:int;
_local3 = 0;
while (_local3 < _local2) {
if (focusableCandidates[_local3] == _arg1){
return (_local3);
};
_local3++;
};
return (-1);
}
public function hideFocus():void{
}
private function removedHandler(_arg1:Event):void{
var _local2:int;
var _local4:InteractiveObject;
var _local3:DisplayObject = DisplayObject(_arg1.target);
if ((((_local3 is IFocusManagerComponent)) && ((focusableObjects[_local3] == true)))){
if (_local3 == lastFocus){
IFocusManagerComponent(lastFocus).drawFocus(false);
lastFocus = null;
};
_local3.removeEventListener(Event.TAB_ENABLED_CHANGE, tabEnabledChangeHandler);
delete focusableObjects[_local3];
calculateCandidates = true;
} else {
if ((((_local3 is InteractiveObject)) && ((focusableObjects[_local3] == true)))){
_local4 = (_local3 as InteractiveObject);
if (_local4){
if (_local4 == lastFocus){
lastFocus = null;
};
delete focusableObjects[_local4];
calculateCandidates = true;
};
_local3.addEventListener(Event.TAB_ENABLED_CHANGE, tabEnabledChangeHandler);
};
};
removeFocusables(_local3);
}
private function sortByDepth(_arg1:InteractiveObject, _arg2:InteractiveObject):Number{
var _local5:int;
var _local6:String;
var _local7:String;
var _local3 = "";
var _local4 = "";
var _local8 = "0000";
var _local9:DisplayObject = DisplayObject(_arg1);
var _local10:DisplayObject = DisplayObject(_arg2);
while (((!((_local9 == DisplayObject(form)))) && (_local9.parent))) {
_local5 = getChildIndex(_local9.parent, _local9);
_local6 = _local5.toString(16);
if (_local6.length < 4){
_local7 = (_local8.substring(0, (4 - _local6.length)) + _local6);
};
_local3 = (_local7 + _local3);
_local9 = _local9.parent;
};
while (((!((_local10 == DisplayObject(form)))) && (_local10.parent))) {
_local5 = getChildIndex(_local10.parent, _local10);
_local6 = _local5.toString(16);
if (_local6.length < 4){
_local7 = (_local8.substring(0, (4 - _local6.length)) + _local6);
};
_local4 = (_local7 + _local4);
_local10 = _local10.parent;
};
return (((_local3 > _local4)) ? 1 : ((_local3 < _local4)) ? -1 : 0);
}
public function get defaultButton():Button{
return (_defaultButton);
}
private function activateHandler(_arg1:Event):void{
var _local2:InteractiveObject = InteractiveObject(_arg1.target);
if (lastFocus){
if ((lastFocus is IFocusManagerComponent)){
IFocusManagerComponent(lastFocus).setFocus();
} else {
form.stage.focus = lastFocus;
};
};
lastAction = "ACTIVATE";
}
public function showFocus():void{
}
public function set defaultButtonEnabled(_arg1:Boolean):void{
_defaultButtonEnabled = _arg1;
}
public function getNextFocusManagerComponent(_arg1:Boolean=false):InteractiveObject{
var _local8:IFocusManagerGroup;
if (!hasFocusableObjects()){
return (null);
};
if (calculateCandidates){
sortFocusableObjects();
calculateCandidates = false;
};
var _local2:DisplayObject = form.stage.focus;
_local2 = DisplayObject(findFocusManagerComponent(InteractiveObject(_local2)));
var _local3 = "";
if ((_local2 is IFocusManagerGroup)){
_local8 = IFocusManagerGroup(_local2);
_local3 = _local8.groupName;
};
var _local4:int = getIndexOfFocusedObject(_local2);
var _local5:Boolean;
var _local6:int = _local4;
if (_local4 == -1){
if (_arg1){
_local4 = focusableCandidates.length;
};
_local5 = true;
};
var _local7:int = getIndexOfNextObject(_local4, _arg1, _local5, _local3);
return (findFocusManagerComponent(focusableCandidates[_local7]));
}
private function mouseDownHandler(_arg1:MouseEvent):void{
if (_arg1.isDefaultPrevented()){
return;
};
var _local2:InteractiveObject = getTopLevelFocusTarget(InteractiveObject(_arg1.target));
if (!_local2){
return;
};
showFocusIndicator = false;
if (((((!((_local2 == lastFocus))) || ((lastAction == "ACTIVATE")))) && (!((_local2 is TextField))))){
setFocus(_local2);
};
lastAction = "MOUSEDOWN";
}
private function isTabVisible(_arg1:DisplayObject):Boolean{
var _local2:DisplayObjectContainer = _arg1.parent;
while (((((_local2) && (!((_local2 is Stage))))) && (!(((_local2.parent) && ((_local2.parent is Stage))))))) {
if (!_local2.tabChildren){
return (false);
};
_local2 = _local2.parent;
};
return (true);
}
public function get nextTabIndex():int{
return (0);
}
private function keyDownHandler(_arg1:KeyboardEvent):void{
if (_arg1.keyCode == Keyboard.TAB){
lastAction = "KEY";
if (calculateCandidates){
sortFocusableObjects();
calculateCandidates = false;
};
};
if (((((((defaultButtonEnabled) && ((_arg1.keyCode == Keyboard.ENTER)))) && (defaultButton))) && (defButton.enabled))){
sendDefaultButtonEvent();
};
}
private function focusInHandler(_arg1:FocusEvent):void{
var _local3:Button;
var _local2:InteractiveObject = InteractiveObject(_arg1.target);
if (form.contains(_local2)){
lastFocus = findFocusManagerComponent(InteractiveObject(_local2));
if ((lastFocus is Button)){
_local3 = Button(lastFocus);
if (defButton){
defButton.emphasized = false;
defButton = _local3;
_local3.emphasized = true;
};
} else {
if (((defButton) && (!((defButton == _defaultButton))))){
defButton.emphasized = false;
defButton = _defaultButton;
_defaultButton.emphasized = true;
};
};
};
}
private function tabEnabledChangeHandler(_arg1:Event):void{
calculateCandidates = true;
var _local2:InteractiveObject = InteractiveObject(_arg1.target);
var _local3 = (focusableObjects[_local2] == true);
if (_local2.tabEnabled){
if (((!(_local3)) && (isTabVisible(_local2)))){
if (!(_local2 is IFocusManagerComponent)){
_local2.focusRect = false;
};
focusableObjects[_local2] = true;
};
} else {
if (_local3){
delete focusableObjects[_local2];
};
};
}
public function set showFocusIndicator(_arg1:Boolean):void{
_showFocusIndicator = _arg1;
}
public function get form():DisplayObjectContainer{
return (_form);
}
private function sortByTabIndex(_arg1:InteractiveObject, _arg2:InteractiveObject):int{
return (((_arg1.tabIndex > _arg2.tabIndex)) ? 1 : ((_arg1.tabIndex < _arg2.tabIndex)) ? -1 : sortByDepth(_arg1, _arg2));
}
public function get defaultButtonEnabled():Boolean{
return (_defaultButtonEnabled);
}
public function activate():void{
if (activated){
return;
};
form.stage.addEventListener(FocusEvent.MOUSE_FOCUS_CHANGE, mouseFocusChangeHandler, false, 0, true);
form.stage.addEventListener(FocusEvent.KEY_FOCUS_CHANGE, keyFocusChangeHandler, false, 0, true);
form.addEventListener(FocusEvent.FOCUS_IN, focusInHandler, true);
form.addEventListener(FocusEvent.FOCUS_OUT, focusOutHandler, true);
form.stage.addEventListener(Event.ACTIVATE, activateHandler, false, 0, true);
form.stage.addEventListener(Event.DEACTIVATE, deactivateHandler, false, 0, true);
form.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
form.addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler, true);
activated = true;
if (lastFocus){
setFocus(lastFocus);
};
}
public function deactivate():void{
form.stage.removeEventListener(FocusEvent.MOUSE_FOCUS_CHANGE, mouseFocusChangeHandler);
form.stage.removeEventListener(FocusEvent.KEY_FOCUS_CHANGE, keyFocusChangeHandler);
form.removeEventListener(FocusEvent.FOCUS_IN, focusInHandler, true);
form.removeEventListener(FocusEvent.FOCUS_OUT, focusOutHandler, true);
form.stage.removeEventListener(Event.ACTIVATE, activateHandler);
form.stage.removeEventListener(Event.DEACTIVATE, deactivateHandler);
form.removeEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
form.removeEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler, true);
activated = false;
}
}
}//package fl.managers
Section 54
//IFocusManager (fl.managers.IFocusManager)
package fl.managers {
import fl.controls.*;
import flash.display.*;
public interface IFocusManager {
function getFocus():InteractiveObject;
function deactivate():void;
function set defaultButton(_arg1:Button):void;
function set showFocusIndicator(_arg1:Boolean):void;
function get defaultButtonEnabled():Boolean;
function findFocusManagerComponent(_arg1:InteractiveObject):InteractiveObject;
function get nextTabIndex():int;
function get defaultButton():Button;
function get showFocusIndicator():Boolean;
function hideFocus():void;
function activate():void;
function showFocus():void;
function set defaultButtonEnabled(_arg1:Boolean):void;
function setFocus(_arg1:InteractiveObject):void;
function getNextFocusManagerComponent(_arg1:Boolean=false):InteractiveObject;
}
}//package fl.managers
Section 55
//IFocusManagerComponent (fl.managers.IFocusManagerComponent)
package fl.managers {
public interface IFocusManagerComponent {
function set focusEnabled(_arg1:Boolean):void;
function drawFocus(_arg1:Boolean):void;
function setFocus():void;
function get focusEnabled():Boolean;
function get tabEnabled():Boolean;
function get tabIndex():int;
function get mouseFocusEnabled():Boolean;
}
}//package fl.managers
Section 56
//IFocusManagerGroup (fl.managers.IFocusManagerGroup)
package fl.managers {
public interface IFocusManagerGroup {
function get groupName():String;
function get selected():Boolean;
function set groupName(_arg1:String):void;
function set selected(_arg1:Boolean):void;
}
}//package fl.managers
Section 57
//StyleManager (fl.managers.StyleManager)
package fl.managers {
import flash.text.*;
import flash.utils.*;
import fl.core.*;
public class StyleManager {
private var classToInstancesDict:Dictionary;
private var globalStyles:Object;
private var styleToClassesHash:Object;
private var classToStylesDict:Dictionary;
private var classToDefaultStylesDict:Dictionary;
private static var _instance:StyleManager;
public function StyleManager(){
styleToClassesHash = {};
classToInstancesDict = new Dictionary(true);
classToStylesDict = new Dictionary(true);
classToDefaultStylesDict = new Dictionary(true);
globalStyles = UIComponent.getStyleDefinition();
}
public static function clearComponentStyle(_arg1:Object, _arg2:String):void{
var _local3:Class = getClassDef(_arg1);
var _local4:Object = getInstance().classToStylesDict[_local3];
if (((!((_local4 == null))) && (!((_local4[_arg2] == null))))){
delete _local4[_arg2];
invalidateComponentStyle(_local3, _arg2);
};
}
private static function getClassDef(_arg1:Object):Class{
var component = _arg1;
if ((component is Class)){
return ((component as Class));
};
try {
return ((getDefinitionByName(getQualifiedClassName(component)) as Class));
} catch(e:Error) {
if ((component is UIComponent)){
try {
return ((component.loaderInfo.applicationDomain.getDefinition(getQualifiedClassName(component)) as Class));
} catch(e:Error) {
};
};
};
return (null);
}
public static function clearStyle(_arg1:String):void{
setStyle(_arg1, null);
}
public static function setComponentStyle(_arg1:Object, _arg2:String, _arg3:Object):void{
var _local4:Class = getClassDef(_arg1);
var _local5:Object = getInstance().classToStylesDict[_local4];
if (_local5 == null){
_local5 = (getInstance().classToStylesDict[_local4] = {});
};
if (_local5 == _arg3){
return;
};
_local5[_arg2] = _arg3;
invalidateComponentStyle(_local4, _arg2);
}
private static function setSharedStyles(_arg1:UIComponent):void{
var _local5:String;
var _local2:StyleManager = getInstance();
var _local3:Class = getClassDef(_arg1);
var _local4:Object = _local2.classToDefaultStylesDict[_local3];
for (_local5 in _local4) {
_arg1.setSharedStyle(_local5, getSharedStyle(_arg1, _local5));
};
}
public static function getComponentStyle(_arg1:Object, _arg2:String):Object{
var _local3:Class = getClassDef(_arg1);
var _local4:Object = getInstance().classToStylesDict[_local3];
return (((_local4)==null) ? null : _local4[_arg2]);
}
private static function getInstance(){
if (_instance == null){
_instance = new (StyleManager);
};
return (_instance);
}
private static function invalidateComponentStyle(_arg1:Class, _arg2:String):void{
var _local4:Object;
var _local5:UIComponent;
var _local3:Dictionary = getInstance().classToInstancesDict[_arg1];
if (_local3 == null){
return;
};
for (_local4 in _local3) {
_local5 = (_local4 as UIComponent);
if (_local5 == null){
} else {
_local5.setSharedStyle(_arg2, getSharedStyle(_local5, _arg2));
};
};
}
private static function invalidateStyle(_arg1:String):void{
var _local3:Object;
var _local2:Dictionary = getInstance().styleToClassesHash[_arg1];
if (_local2 == null){
return;
};
for (_local3 in _local2) {
invalidateComponentStyle(Class(_local3), _arg1);
};
}
public static function registerInstance(_arg1:UIComponent):void{
var target:Class;
var defaultStyles:Object;
var styleToClasses:Object;
var n:String;
var instance = _arg1;
var inst:StyleManager = getInstance();
var classDef:Class = getClassDef(instance);
if (classDef == null){
return;
};
if (inst.classToInstancesDict[classDef] == null){
inst.classToInstancesDict[classDef] = new Dictionary(true);
target = classDef;
while (defaultStyles == null) {
if (target["getStyleDefinition"] != null){
defaultStyles = target["getStyleDefinition"]();
break;
};
try {
target = (instance.loaderInfo.applicationDomain.getDefinition(getQualifiedSuperclassName(target)) as Class);
} catch(err:Error) {
try {
target = (getDefinitionByName(getQualifiedSuperclassName(target)) as Class);
} catch(e:Error) {
defaultStyles = UIComponent.getStyleDefinition();
break;
};
};
};
styleToClasses = inst.styleToClassesHash;
for (n in defaultStyles) {
if (styleToClasses[n] == null){
styleToClasses[n] = new Dictionary(true);
};
styleToClasses[n][classDef] = true;
};
inst.classToDefaultStylesDict[classDef] = defaultStyles;
if (inst.classToStylesDict[classDef] == null){
inst.classToStylesDict[classDef] = {};
};
};
inst.classToInstancesDict[classDef][instance] = true;
setSharedStyles(instance);
}
public static function getStyle(_arg1:String):Object{
return (getInstance().globalStyles[_arg1]);
}
private static function getSharedStyle(_arg1:UIComponent, _arg2:String):Object{
var _local3:Class = getClassDef(_arg1);
var _local4:StyleManager = getInstance();
var _local5:Object = _local4.classToStylesDict[_local3][_arg2];
if (_local5 != null){
return (_local5);
};
_local5 = _local4.globalStyles[_arg2];
if (_local5 != null){
return (_local5);
};
return (_local4.classToDefaultStylesDict[_local3][_arg2]);
}
public static function setStyle(_arg1:String, _arg2:Object):void{
var _local3:Object = getInstance().globalStyles;
if ((((_local3[_arg1] === _arg2)) && (!((_arg2 is TextFormat))))){
return;
};
_local3[_arg1] = _arg2;
invalidateStyle(_arg1);
}
}
}//package fl.managers
Section 58
//Tween (fl.transitions.Tween)
package fl.transitions {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
public class Tween extends EventDispatcher {
private var _position:Number;// = NAN
public var prevTime:Number;// = NAN
public var prevPos:Number;// = NAN
public var isPlaying:Boolean;// = false
public var begin:Number;// = NAN
private var _fps:Number;// = NAN
private var _time:Number;// = NAN
public var change:Number;// = NAN
private var _finish:Number;// = NAN
public var looping:Boolean;// = false
private var _intervalID:uint;// = 0
public var func:Function;
private var _timer:Timer;// = null
private var _startTime:Number;// = NAN
public var prop:String;// = ""
private var _duration:Number;// = NAN
public var obj:Object;// = null
public var useSeconds:Boolean;// = false
protected static var _mc:MovieClip = new MovieClip();
public function Tween(_arg1:Object, _arg2:String, _arg3:Function, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Boolean=false){
isPlaying = false;
obj = null;
prop = "";
func = function (_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
return ((((_arg3 * _arg1) / _arg4) + _arg2));
};
begin = NaN;
change = NaN;
useSeconds = false;
prevTime = NaN;
prevPos = NaN;
looping = false;
_duration = NaN;
_time = NaN;
_fps = NaN;
_position = NaN;
_startTime = NaN;
_intervalID = 0;
_finish = NaN;
_timer = null;
super();
if (!arguments.length){
return;
};
this.obj = _arg1;
this.prop = _arg2;
this.begin = _arg4;
this.position = _arg4;
this.duration = _arg6;
this.useSeconds = _arg7;
if ((_arg3 is Function)){
this.func = _arg3;
};
this.finish = _arg5;
this._timer = new Timer(100);
this.start();
}
public function continueTo(_arg1:Number, _arg2:Number):void{
this.begin = this.position;
this.finish = _arg1;
if (!isNaN(_arg2)){
this.duration = _arg2;
};
this.start();
}
public function stop():void{
this.stopEnterFrame();
this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_STOP, this._time, this._position));
}
private function fixTime():void{
if (this.useSeconds){
this._startTime = (getTimer() - (this._time * 1000));
};
}
public function set FPS(_arg1:Number):void{
var _local2:Boolean;
_local2 = this.isPlaying;
this.stopEnterFrame();
this._fps = _arg1;
if (_local2){
this.startEnterFrame();
};
}
public function get finish():Number{
return ((this.begin + this.change));
}
public function get duration():Number{
return (this._duration);
}
protected function startEnterFrame():void{
var _local1:Number;
if (isNaN(this._fps)){
_mc.addEventListener(Event.ENTER_FRAME, this.onEnterFrame, false, 0, true);
} else {
_local1 = (1000 / this._fps);
this._timer.delay = _local1;
this._timer.addEventListener(TimerEvent.TIMER, this.timerHandler, false, 0, true);
this._timer.start();
};
this.isPlaying = true;
}
public function set time(_arg1:Number):void{
this.prevTime = this._time;
if (_arg1 > this.duration){
if (this.looping){
this.rewind((_arg1 - this._duration));
this.update();
this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_LOOP, this._time, this._position));
} else {
if (this.useSeconds){
this._time = this._duration;
this.update();
};
this.stop();
this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_FINISH, this._time, this._position));
};
} else {
if (_arg1 < 0){
this.rewind();
this.update();
} else {
this._time = _arg1;
this.update();
};
};
}
protected function stopEnterFrame():void{
if (isNaN(this._fps)){
_mc.removeEventListener(Event.ENTER_FRAME, this.onEnterFrame);
} else {
this._timer.stop();
};
this.isPlaying = false;
}
public function getPosition(_arg1:Number=NaN):Number{
if (isNaN(_arg1)){
_arg1 = this._time;
};
return (this.func(_arg1, this.begin, this.change, this._duration));
}
public function set finish(_arg1:Number):void{
this.change = (_arg1 - this.begin);
}
public function set duration(_arg1:Number):void{
this._duration = ((_arg1)<=0) ? Infinity : _arg1;
}
public function setPosition(_arg1:Number):void{
this.prevPos = this._position;
if (this.prop.length){
this.obj[this.prop] = (this._position = _arg1);
};
this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_CHANGE, this._time, this._position));
}
public function resume():void{
this.fixTime();
this.startEnterFrame();
this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_RESUME, this._time, this._position));
}
public function fforward():void{
this.time = this._duration;
this.fixTime();
}
protected function onEnterFrame(_arg1:Event):void{
this.nextFrame();
}
public function get position():Number{
return (this.getPosition(this._time));
}
public function yoyo():void{
this.continueTo(this.begin, this.time);
}
public function nextFrame():void{
if (this.useSeconds){
this.time = ((getTimer() - this._startTime) / 1000);
} else {
this.time = (this._time + 1);
};
}
protected function timerHandler(_arg1:TimerEvent):void{
this.nextFrame();
_arg1.updateAfterEvent();
}
public function get FPS():Number{
return (this._fps);
}
public function rewind(_arg1:Number=0):void{
this._time = _arg1;
this.fixTime();
this.update();
}
public function set position(_arg1:Number):void{
this.setPosition(_arg1);
}
public function get time():Number{
return (this._time);
}
private function update():void{
this.setPosition(this.getPosition(this._time));
}
public function start():void{
this.rewind();
this.startEnterFrame();
this.dispatchEvent(new TweenEvent(TweenEvent.MOTION_START, this._time, this._position));
}
public function prevFrame():void{
if (!this.useSeconds){
this.time = (this._time - 1);
};
}
}
}//package fl.transitions
Section 59
//TweenEvent (fl.transitions.TweenEvent)
package fl.transitions {
import flash.events.*;
public class TweenEvent extends Event {
public var time:Number;// = NAN
public var position:Number;// = NAN
public static const MOTION_START:String = "motionStart";
public static const MOTION_STOP:String = "motionStop";
public static const MOTION_LOOP:String = "motionLoop";
public static const MOTION_CHANGE:String = "motionChange";
public static const MOTION_FINISH:String = "motionFinish";
public static const MOTION_RESUME:String = "motionResume";
public function TweenEvent(_arg1:String, _arg2:Number, _arg3:Number, _arg4:Boolean=false, _arg5:Boolean=false){
time = NaN;
position = NaN;
super(_arg1, _arg4, _arg5);
this.time = _arg2;
this.position = _arg3;
}
override public function clone():Event{
return (new TweenEvent(this.type, this.time, this.position, this.bubbles, this.cancelable));
}
}
}//package fl.transitions
Section 60
//NewgroundsAPIAsset_FlashAd_Container_2 (FlashAd_fla.NewgroundsAPIAsset_FlashAd_Container_2)
package FlashAd_fla {
import flash.display.*;
import com.newgrounds.*;
import flash.events.*;
public dynamic class NewgroundsAPIAsset_FlashAd_Container_2 extends MovieClip {
public var ngLinkButton:SimpleButton;
public var adMask:MovieClip;
public function NewgroundsAPIAsset_FlashAd_Container_2(){
addFrameScript(0, frame1, 10, frame11);
}
function frame1(){
ngLinkButton.addEventListener(MouseEvent.CLICK, onNGLinkClicked);
}
public function onNGLinkClicked(_arg1:MouseEvent):void{
API.loadNewgrounds();
}
function frame11(){
gotoAndPlay(1);
}
}
}//package FlashAd_fla
Section 61
//NewgroundsAPIAsset_Load_Indicator_5 (FlashAd_fla.NewgroundsAPIAsset_Load_Indicator_5)
package FlashAd_fla {
import flash.display.*;
import flash.events.*;
public dynamic class NewgroundsAPIAsset_Load_Indicator_5 extends MovieClip {
public function NewgroundsAPIAsset_Load_Indicator_5(){
addFrameScript(0, frame1);
}
function frame1(){
addEventListener(Event.ENTER_FRAME, onEnterFrame);
}
public function onEnterFrame(_arg1:Event):void{
if (((visible) && (stage))){
rotation = (rotation + 30);
} else {
removeEventListener(Event.ENTER_FRAME, onEnterFrame);
};
}
}
}//package FlashAd_fla
Section 62
//ag_intro_mc_5 (PaperWarfare_ArmorGames_v1_fla.ag_intro_mc_5)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
import flash.events.*;
import flash.xml.*;
import flash.text.*;
import flash.utils.*;
import flash.net.*;
import flash.media.*;
import flash.filters.*;
import flash.ui.*;
import flash.external.*;
import flash.system.*;
import flash.geom.*;
import flash.errors.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.printing.*;
public dynamic class ag_intro_mc_5 extends MovieClip {
public function ag_intro_mc_5(){
addFrameScript(0, frame1, 217, frame218);
}
function frame218(){
stop();
MovieClip(parent).gotoMain();
}
function frame1(){
MovieClip(parent).stop();
gotoAndPlay(2);
}
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 63
//flag_icon_296 (PaperWarfare_ArmorGames_v1_fla.flag_icon_296)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
public dynamic class flag_icon_296 extends MovieClip {
public function flag_icon_296(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 64
//l_br_294 (PaperWarfare_ArmorGames_v1_fla.l_br_294)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
import flash.text.*;
public dynamic class l_br_294 extends MovieClip {
public var text:TextField;
public var flag:MovieClip;
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 65
//MainTimeline (PaperWarfare_ArmorGames_v1_fla.MainTimeline)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
import flash.events.*;
import flash.xml.*;
import flash.text.*;
import flash.utils.*;
import caurina.transitions.*;
import flash.net.*;
import com.spikything.utils.*;
import fl.transitions.*;
import flash.media.*;
import flash.filters.*;
import flash.ui.*;
import flash.external.*;
import flash.system.*;
import flash.geom.*;
import flash.errors.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.printing.*;
import fl.transitions.easing.*;
public dynamic class MainTimeline extends MovieClip {
public var keyIsPressed:Boolean;
public var cld1_mc:MovieClip;
public var promptR_mc:MovieClip;
public var moreGames_btn:MovieClip;
public var enDeployLvl7Wave:Number;
public var loader:Loader;
public var playerAmmo6Arr:Array;
public var wheelUpOrDown:Number;
public var startLevelTimer:Timer;
public var enDeployTimerLvl1:Timer;
public var enDeployTimerLvl2:Timer;
public var enDeployTimerLvl4:Timer;
public var enDeployTimerLvl5:Timer;
public var enDeployTimerLvl6:Timer;
public var enDeployLvl2WaveMax:Number;
public var enDeployTimerLvl9:Timer;
public var medalAwarding_txt:TextField;
public var enDeployTimerLvl7:Timer;
public var enDeployTimerLvl8:Timer;
public var agi_url:String;
public var enDeployTimerLvl3:Timer;
public var ammo7Inventory:Number;
public var loader_txt:TextField;
public var weaponCounter:Number;
public var enemyAmmo10Array:Array;
public var playerAmmo8Rof:Number;
public var c:MovieClip;
public var winPostFrame_mc:MovieClip;
public var cld2_mc:MovieClip;
public var promptS_mc:MovieClip;
public var test_mc:MovieClip;
public var dead:String;
public var w1Snd:Sound;
public var adoboLogo_mc:MovieClip;
public var lostMessage_txt:TextField;
public var ammo4Max:Number;
public var enemyAmmo4Array:Array;
public var explosionArray:Array;
public var highScores_btn:MovieClip;
public var lvlCntnr_mc:MovieClip;
public var enDeployLvl6Wave:Number;
public var studio_txt:TextField;
public var mousew:TextField;
public var enDeployTimerLvl10:Timer;
public var playerAmmo7Arr:Array;
public var enDeployLvl7WaveMax:Number;
public var introDesElem1_mc:MovieClip;
public var shield_txt:TextField;
public var boss3Ammo2Array:Array;
public var bossLifeUI_mc:MovieClip;
public var cld3_mc:MovieClip;
public var winMessage_txt:TextField;
public var domain:String;
public var w2Snd:Sound;
public var ammo5Max:Number;
public var ammo4Inventory:Number;
public var emp:String;
public var playerAmmo8Arr:Array;
public var hsbBack_btn:MovieClip;
public var title_mc:MovieClip;
public var ammoInventory_txt:TextField;
public var powerUpDeploymentTimer:Timer;
public var levelComplete:Boolean;
public var hitSnd:Sound;
public var gsSnd:Sound;
public var introDesElem2_mc:MovieClip;
public var beginPos:Number;
public var lostPad_mc:MovieClip;
public var enDeployLvl5Wave:Number;
public var gameKey:String;
public var enDeployLvl3WaveMax:Number;
public var agi;
public var paperWarfareSharedObject:SharedObject;
public var enemyAmmo5Array:Array;
public var ammo6Max:Number;
public var lives:Number;
public var prelevelDesElem1_mc:MovieClip;
public var ngsSnd:Sound;
public var mouseFollowSpeed:Number;
public var boss3Ammo3Array:Array;
public var bar_mc:MovieClip;
public var credits_btn:MovieClip;
public var boss2Ammo1Array:Array;
public var playerAmmo9Arr:Array;
public var ammo8Inventory:Number;
public var enDeployLvl8WaveMax:Number;
public var w3Snd:Sound;
public var promptGO_mc:MovieClip;
public var btnSnd:Sound;
public var stageWidth:Number;
public var ammo1Inventory:Number;
public var selectText_txt:MovieClip;
public var ammo7Max:Number;
public var startLvlCounter:Number;
public var sitelockPrompt_mc:MovieClip;
public var enDeployLvl4Wave:Number;
public var enemyAmmoArray:Array;
public var propertyToAnimate:String;
public var disObj:MovieClip;
public var nwLvl:Number;
public var duration:Number;
public var weaponArray:Array;
public var debrisArray:Array;
public var w4Snd:Sound;
public var titletwnObj1:Tween;
public var playerAmmo1Rof:Number;
public var musicCode:Number;
public var upgradePanel1_mc:MovieClip;
public var titletwnObj2:Tween;
public var enemyAmmo6Array:Array;
public var creditsBack_btn:MovieClip;
public var killsOverall:int;
public var enDeployLvl10WaveMax:Number;
public var lifeDenominator:Number;
public var stageHeight:Number;
public var killScore:int;
public var ehSnd:Sound;
public var enemyDestroyableAmmoArray:Array;
public var killsLevel_txt:TextField;
public var ammo8Max:Number;
public var boss2Ammo2Array:Array;
public var w5Snd:Sound;
public var ammo5Inventory:Number;
public var enDeployLvl4WaveMax:Number;
public var enDeployLvl3Wave:Number;
public var devKey:String;
public var upgradePanel2_mc:MovieClip;
public var playerAmmo2Rof:Number;
public var pwrSnd:Sound;
public var music:String;
public var urlRequest:URLRequest;
public var suitSelectionPanel1_mc:MovieClip;
public var smokeArray:Array;
public var toPostLevelTimer:Timer;
public var playerAmmo1Arr:Array;
public var EasingFunction:Function;
public var enDeployLvl9WaveMax:Number;
public var postLvlWinNext_btn:MovieClip;
public var twn:Tween;
public var newGame_btn:MovieClip;
public var prompt_mc:MovieClip;
public var w6Snd:Sound;
public var enemyAmmo7Array:Array;
public var playerAmmo3Rof:Number;
public var titleDesElement1_mc:MovieClip;
public var upgradePanel3_mc:MovieClip;
public var emp_txt:TextField;
public var promptLC_mc:MovieClip;
public var submitScoreBack_btn:MovieClip;
public var lostMessage2_txt:TextField;
public var cldSpd:Number;
public var suitSelectionPanel2_mc:MovieClip;
public var playerAmmo8aArr:Array;
public var ammo2Inventory:Number;
public var suitCode:Number;
public var enDeployLvl2Wave:Number;
public var boss1Ammo1Array:Array;
public var playerAmmo2Arr:Array;
public var winPostDes_mc:MovieClip;
public var enemyAmmo1Array:Array;
public var w7Snd:Sound;
public var lostKillsOverall_txt:TextField;
public var howToDesElem1_mc:MovieClip;
public var playerAmmo4Rof:Number;
public var titleDesElement2_mc:MovieClip;
public var promptUpdates:Boolean;
public var FinishSubmit_btn:MovieClip;
public var postLvlLostNext_btn:MovieClip;
public var enDeployLvl5WaveMax:Number;
public var waveInterval:Number;
public var lastWord:String;
public var suitSelectionPanel3_mc:MovieClip;
public var playerAmmo8bArr:Array;
public var lifeNumerator:Number;
public var enemyDeploymentTimer:Timer;
public var bossArray:Array;
public var enemyAmmo8Array:Array;
public var updatePrompter_mc:MovieClip;
public var playerAmmo3Arr:Array;
public var useSeconds:Boolean;
public var enDeployLvl9Wave:Number;
public var back_btn:MovieClip;
public var next_btn:MovieClip;
public var ammo6Inventory:Number;
public var playerSpecial1Arr:Array;
public var howToDesElem2_mc:MovieClip;
public var disFromBarrel:Number;
public var enDeployLvl1Wave:Number;
public var titleBackDesign_mc:MovieClip;
public var adobo_txt:TextField;
public var armorGamesIntro_mc:MovieClip;
public var counterTemporaryVar:Number;
public var lives_txt:TextField;
public var playerAmmo5Rof:Number;
public var enemyAmmo2Array:Array;
public var ammo1Max:Number;
public var enDeployLvl1WaveMax:Number;
public var map_mc:MovieClip;
public var lifeBar_mc:MovieClip;
public var playerAmmo4Arr:Array;
public var killsOverall_txt:TextField;
public var enDeployLvl10Wave:Number;
public var shield:String;
public var endPos:Number;
public var playerSpecial2Arr:Array;
public var scoreDisplay_txt:TextField;
public var level:Number;
public var allowed_site:String;
public var enDeployLvl8Wave:Number;
public var ngTitleLogo_mc:MovieClip;
public var playerTrailInterval:Number;
public var loadGame_btn:MovieClip;
public var enemyAmmo9Array:Array;
public var ammo2Max:Number;
public var enDeployLvl6WaveMax:Number;
public var lostPostFrame_mc:MovieClip;
public var killsLevel:Number;
public var credPad_mc:MovieClip;
public var enemyArray:Array;
public var lvlComplete_txt:TextField;
public var ammo3Inventory:Number;
public var playerAmmo5Arr:Array;
public var winPad_mc:MovieClip;
public var gameState:String;
public var devLink_btn:MovieClip;
public var powerupArray:Array;
public var enemyAmmo3Array:Array;
public var medal_mc:MovieClip;
public var playerAmmo7Rof:Number;
public var w8aSnd:Sound;
public var games_txt:TextField;
public var fireWeapon:String;
public var boss3Ammo1Array:Array;
public var ammo3Max:Number;
public function MainTimeline(){
addFrameScript(0, frame1, 1, frame2, 2, frame3, 4, frame5, 5, frame6, 6, frame7, 7, frame8, 8, frame9, 9, frame10, 10, frame11, 11, frame12, 12, frame13, 13, frame14, 14, frame15, 15, frame16, 16, frame17, 17, frame18, 18, frame19, 19, frame20, 20, frame21, 21, frame22, 22, frame23, 23, frame24, 24, frame25, 25, frame26, 26, frame27);
}
public function moveSand(_arg1:MovieClip, _arg2){
_arg1.x = (_arg1.x - _arg2);
if (_arg1.x <= -848){
if (_arg1 == lvlCntnr_mc.s1){
lvlCntnr_mc.s1.x = (lvlCntnr_mc.s2.x + lvlCntnr_mc.s2.width);
};
if (_arg1 == lvlCntnr_mc.s2){
lvlCntnr_mc.s2.x = ((lvlCntnr_mc.s1.x + lvlCntnr_mc.s1.width) - 25);
};
if (_arg1 == lvlCntnr_mc.s3){
lvlCntnr_mc.s3.x = (lvlCntnr_mc.s4.x + lvlCntnr_mc.s4.width);
};
if (_arg1 == lvlCntnr_mc.s4){
lvlCntnr_mc.s4.x = ((lvlCntnr_mc.s3.x + lvlCntnr_mc.s3.width) - 25);
};
if (_arg1 == lvlCntnr_mc.s5){
lvlCntnr_mc.s5.x = (lvlCntnr_mc.s6.x + lvlCntnr_mc.s6.width);
};
if (_arg1 == lvlCntnr_mc.s6){
lvlCntnr_mc.s6.x = ((lvlCntnr_mc.s5.x + lvlCntnr_mc.s5.width) - 25);
};
};
}
public function updateAmmoUI(){
if (weaponCounter == 1){
ammoInventory_txt.text = String("LG .67: infinite");
} else {
if (weaponCounter == 2){
if (ammo2Inventory <= 0){
ammo2Inventory = 0;
};
ammoInventory_txt.text = String(("PAZ 5: " + ammo2Inventory));
} else {
if (weaponCounter == 3){
if (ammo3Inventory <= 0){
ammo3Inventory = 0;
};
ammoInventory_txt.text = String(("DESHK 48: " + ammo3Inventory));
} else {
if (weaponCounter == 4){
if (ammo4Inventory <= 0){
ammo4Inventory = 0;
};
ammoInventory_txt.text = String(("KRILL: " + ammo4Inventory));
} else {
if (weaponCounter == 5){
if (ammo5Inventory <= 0){
ammo5Inventory = 0;
};
ammoInventory_txt.text = String(("ASSAULTER: " + ammo5Inventory));
} else {
if (weaponCounter == 6){
if (ammo6Inventory <= 0){
ammo6Inventory = 0;
};
ammoInventory_txt.text = String(("LG 1: " + ammo6Inventory));
} else {
if (weaponCounter == 7){
if (ammo7Inventory <= 0){
ammo7Inventory = 0;
};
ammoInventory_txt.text = String(("SABOGKA: " + ammo7Inventory));
} else {
if (weaponCounter == 8){
if (ammo8Inventory <= 0){
ammo8Inventory = 0;
};
ammoInventory_txt.text = String(("BARAGKA D2: " + ammo8Inventory));
};
};
};
};
};
};
};
};
}
public function endLevelCleanUpArray(_arg1:Array){
var _local2:Number;
_local2 = (_arg1.length - 1);
while (_local2 >= 0) {
_arg1[_local2].destruct("");
_local2--;
};
}
public function attEnemy4Ammo(_arg1:MovieClip){
var _local2:Enemy4Ammo;
_local2 = new Enemy4Ammo(_arg1);
lvlCntnr_mc.addChild(_local2);
enemyAmmo4Array.push(_local2);
}
public function loadComplete(_arg1:Event):void{
agi = _arg1.currentTarget.content;
addChild(agi);
agi.init(devKey, gameKey);
}
public function startLevel(_arg1:TimerEvent){
trace("LEVEL START");
startLvlCounter = 0;
Tweener.addTween(promptS_mc, {y:-200, time:2, transition:"easeInStrong"});
startLevelTimer.reset();
switch (level){
case 1:
enDeployTimerLvl1.start();
break;
case 2:
enDeployTimerLvl2.start();
break;
case 3:
enDeployTimerLvl3.start();
break;
case 4:
enDeployTimerLvl4.start();
break;
case 5:
enDeployTimerLvl5.start();
break;
case 6:
enDeployTimerLvl6.start();
break;
case 7:
enDeployTimerLvl7.start();
break;
case 8:
enDeployTimerLvl8.start();
break;
case 9:
enDeployTimerLvl9.start();
break;
case 10:
enDeployTimerLvl10.start();
break;
default:
break;
};
}
public function attBoss1(){
var _local1:Number;
var _local2:Number;
var _local3:Boss1;
_local1 = randomGenerator(700, 800);
_local2 = randomGenerator(100, 400);
_local3 = new Boss1(_local1, _local2);
lvlCntnr_mc.addChild(_local3);
bossArray.push(_local3);
}
public function attBoss3(){
var _local1:Number;
var _local2:Number;
var _local3:Boss3;
_local1 = randomGenerator(700, 800);
_local2 = randomGenerator(100, 400);
_local3 = new Boss3(_local1, _local2);
lvlCntnr_mc.addChild(_local3);
bossArray.push(_local3);
}
public function startLevelPrompt(_arg1:TimerEvent){
startLvlCounter++;
if (startLvlCounter == 1){
Tweener.addTween(promptR_mc, {y:240, time:2, transition:"easeOutStrong"});
} else {
if (startLvlCounter == 2){
Tweener.addTween(promptR_mc, {y:-200, time:2, transition:"easeInStrong"});
Tweener.addTween(promptS_mc, {y:240, time:2, transition:"easeOutStrong"});
};
};
}
function frame14(){
stop();
nwLvl = 3;
init();
}
function frame15(){
stop();
nwLvl = 4;
init();
}
function frame16(){
stop();
nwLvl = 5;
shield = "armed";
init();
}
function frame13(){
stop();
nwLvl = 2;
init();
}
function frame5(){
stage.showDefaultContextMenu = false;
stageWidth = 680;
stageHeight = 480;
dead = "false";
gameState = "running";
fireWeapon = "cease";
nwLvl = 0;
levelComplete = false;
promptUpdates = false;
music = "on";
ammo1Max = 100;
ammo2Max = 350;
ammo3Max = 250;
ammo4Max = 300;
ammo5Max = 1000;
ammo6Max = 100;
ammo7Max = 20;
ammo8Max = 5;
ammo1Inventory = ammo1Max;
ammo2Inventory = ammo2Max;
ammo3Inventory = ammo3Max;
ammo4Inventory = ammo4Max;
ammo5Inventory = ammo5Max;
ammo6Inventory = ammo6Max;
ammo7Inventory = ammo7Max;
ammo8Inventory = ammo8Max;
paperWarfareSharedObject = SharedObject.getLocal("paperWarfareSavedData");
lsoChecker();
playerAmmo1Arr = new Array();
playerAmmo2Arr = new Array();
playerAmmo3Arr = new Array();
playerAmmo4Arr = new Array();
playerAmmo5Arr = new Array();
playerAmmo6Arr = new Array();
playerAmmo7Arr = new Array();
playerAmmo8Arr = new Array();
playerAmmo8aArr = new Array();
playerAmmo8bArr = new Array();
playerAmmo9Arr = new Array();
playerSpecial1Arr = new Array();
playerSpecial2Arr = new Array();
enemyArray = new Array();
enemyAmmoArray = new Array();
enemyAmmo1Array = new Array();
enemyAmmo2Array = new Array();
enemyAmmo3Array = new Array();
enemyAmmo4Array = new Array();
enemyAmmo5Array = new Array();
enemyAmmo6Array = new Array();
enemyAmmo7Array = new Array();
enemyAmmo8Array = new Array();
enemyAmmo9Array = new Array();
enemyAmmo10Array = new Array();
enemyDestroyableAmmoArray = new Array();
bossArray = new Array();
boss1Ammo1Array = new Array();
boss2Ammo1Array = new Array();
boss2Ammo2Array = new Array();
boss3Ammo1Array = new Array();
boss3Ammo2Array = new Array();
boss3Ammo3Array = new Array();
powerupArray = new Array();
smokeArray = new Array();
debrisArray = new Array();
explosionArray = new Array();
startLvlCounter = 0;
startLevelTimer = new Timer(1000, 3);
startLevelTimer.addEventListener(TimerEvent.TIMER, startLevelPrompt);
startLevelTimer.addEventListener(TimerEvent.TIMER_COMPLETE, startLevel);
enemyDeploymentTimer = new Timer(2000, 0);
enemyDeploymentTimer.addEventListener(TimerEvent.TIMER, deployEnemy);
waveInterval = 3000;
enDeployLvl1Wave = 0;
enDeployLvl1WaveMax = 18;
enDeployTimerLvl1 = new Timer(waveInterval, enDeployLvl1WaveMax);
enDeployTimerLvl1.addEventListener(TimerEvent.TIMER, enDeployLvl1);
enDeployLvl2Wave = 0;
enDeployLvl2WaveMax = 20;
enDeployTimerLvl2 = new Timer(waveInterval, enDeployLvl2WaveMax);
enDeployTimerLvl2.addEventListener(TimerEvent.TIMER, enDeployLvl2);
enDeployLvl3Wave = 0;
enDeployLvl3WaveMax = 22;
enDeployTimerLvl3 = new Timer(waveInterval, enDeployLvl3WaveMax);
enDeployTimerLvl3.addEventListener(TimerEvent.TIMER, enDeployLvl3);
enDeployLvl4Wave = 0;
enDeployLvl4WaveMax = 25;
enDeployTimerLvl4 = new Timer(waveInterval, enDeployLvl4WaveMax);
enDeployTimerLvl4.addEventListener(TimerEvent.TIMER, enDeployLvl4);
enDeployLvl5Wave = 0;
enDeployLvl5WaveMax = 30;
enDeployTimerLvl5 = new Timer(waveInterval, enDeployLvl5WaveMax);
enDeployTimerLvl5.addEventListener(TimerEvent.TIMER, enDeployLvl5);
enDeployLvl6Wave = 0;
enDeployLvl6WaveMax = 30;
enDeployTimerLvl6 = new Timer(waveInterval, enDeployLvl6WaveMax);
enDeployTimerLvl6.addEventListener(TimerEvent.TIMER, enDeployLvl6);
enDeployLvl7Wave = 0;
enDeployLvl7WaveMax = 30;
enDeployTimerLvl7 = new Timer(waveInterval, enDeployLvl7WaveMax);
enDeployTimerLvl7.addEventListener(TimerEvent.TIMER, enDeployLvl7);
enDeployLvl8Wave = 0;
enDeployLvl8WaveMax = 35;
enDeployTimerLvl8 = new Timer(waveInterval, enDeployLvl8WaveMax);
enDeployTimerLvl8.addEventListener(TimerEvent.TIMER, enDeployLvl8);
enDeployLvl9Wave = 0;
enDeployLvl9WaveMax = 35;
enDeployTimerLvl9 = new Timer(waveInterval, enDeployLvl9WaveMax);
enDeployTimerLvl9.addEventListener(TimerEvent.TIMER, enDeployLvl9);
enDeployLvl10Wave = 0;
enDeployLvl10WaveMax = 40;
enDeployTimerLvl10 = new Timer(waveInterval, enDeployLvl10WaveMax);
enDeployTimerLvl10.addEventListener(TimerEvent.TIMER, enDeployLvl10);
enDeployTimerLvl1.addEventListener(TimerEvent.TIMER_COMPLETE, endOfEnemyDeployment);
enDeployTimerLvl2.addEventListener(TimerEvent.TIMER_COMPLETE, endOfEnemyDeployment);
enDeployTimerLvl3.addEventListener(TimerEvent.TIMER_COMPLETE, endOfEnemyDeployment);
enDeployTimerLvl4.addEventListener(TimerEvent.TIMER_COMPLETE, endOfEnemyDeployment);
enDeployTimerLvl5.addEventListener(TimerEvent.TIMER_COMPLETE, endOfEnemyDeployment);
enDeployTimerLvl6.addEventListener(TimerEvent.TIMER_COMPLETE, endOfEnemyDeployment);
enDeployTimerLvl7.addEventListener(TimerEvent.TIMER_COMPLETE, endOfEnemyDeployment);
enDeployTimerLvl8.addEventListener(TimerEvent.TIMER_COMPLETE, endOfEnemyDeployment);
enDeployTimerLvl9.addEventListener(TimerEvent.TIMER_COMPLETE, endOfEnemyDeployment);
enDeployTimerLvl9.addEventListener(TimerEvent.TIMER_COMPLETE, endOfEnemyDeployment);
powerUpDeploymentTimer = new Timer(1000, 0);
powerUpDeploymentTimer.addEventListener(TimerEvent.TIMER, deployPowerUp);
toPostLevelTimer = new Timer(1000, 4);
toPostLevelTimer.addEventListener(TimerEvent.TIMER_COMPLETE, toPostLevel);
weaponCounter = 1;
stage.addEventListener(MouseEvent.MOUSE_DOWN, mousePressed);
stage.addEventListener(MouseEvent.MOUSE_UP, mouseUnpressed);
stage.addEventListener(MouseEvent.MOUSE_WHEEL, mouseWheel);
stage.addEventListener(KeyboardEvent.KEY_DOWN, keyPressed);
stage.addEventListener(KeyboardEvent.KEY_UP, keyReleased);
keyIsPressed = false;
musicCode = 0;
playerTrailInterval = 1;
disFromBarrel = 60;
playerAmmo1Rof = 0;
playerAmmo2Rof = 15;
playerAmmo3Rof = 1;
playerAmmo4Rof = 0;
playerAmmo5Rof = 0;
playerAmmo7Rof = 1;
playerAmmo8Rof = 1;
cldSpd = 8;
w1Snd = new Weapon1Snd();
w2Snd = new Weapon2Snd();
w3Snd = new Weapon3Snd();
w4Snd = new Weapon4Snd();
w5Snd = new Weapon5Snd();
w6Snd = new Weapon6Snd();
w7Snd = new Weapon7Snd();
w8aSnd = new Weapon8aSnd();
ehSnd = new EnemyHitSnd();
btnSnd = new BtnSnd();
gsSnd = new GameScreenBG();
ngsSnd = new NonGameScreenBG();
SoundMixer.stopAll();
plyngsSnd();
pwrSnd = new PwrUpSnd();
hitSnd = new HitSnd();
}
function frame6(){
stop();
stage.showDefaultContextMenu = false;
ngTitleLogo_mc.scaleY = 0;
Tweener.addTween(ngTitleLogo_mc, {scaleY:1, time:1.4, transition:"easeOutElastic"});
Tweener.addTween(title_mc, {width:491, height:236, time:2, transition:"easeOutElastic"});
Tweener.addTween(titleBackDesign_mc, {width:495, height:171, time:2.8, transition:"easeOutElastic"});
Tweener.addTween(titleDesElement1_mc, {height:477, time:2.2, transition:"easeOutElastic"});
Tweener.addTween(titleDesElement2_mc, {height:477, time:2.6, transition:"easeOutElastic"});
Tweener.addTween(newGame_btn, {y:266, time:1, transition:"easeOutElastic"});
Tweener.addTween(loadGame_btn, {y:327, time:1.2, transition:"easeOutElastic"});
Tweener.addTween(highScores_btn, {y:384, time:1.3, transition:"easeOutElastic"});
Tweener.addTween(moreGames_btn, {y:440, time:1.4, transition:"easeOutElastic"});
Tweener.addTween(credits_btn, {y:384, time:1.5, transition:"easeOutElastic"});
this.addEventListener(Event.ENTER_FRAME, titleLooper);
btn_prompt(prompt_mc.yes_btn);
btn_prompt(prompt_mc.no_btn);
if (paperWarfareSharedObject.data.gameDataExist != undefined){
trace("game exist");
btn_nav(newGame_btn, "promptToClearData");
btn_nav(loadGame_btn, "upgrade");
} else {
trace("game do not exist");
btn_nav(newGame_btn, "intro");
loadGame_btn.alpha = 0.5;
};
btn_nav(credits_btn, "credits");
btn_nav(highScores_btn, "showScore");
btn_mg(ngTitleLogo_mc, "");
btn_mg(moreGames_btn, "");
}
function frame12(){
stop();
nwLvl = 1;
init();
}
function frame1(){
stop();
agi_url = "http://agi.armorgames.com/assets/agi/AGI.swf";
Security.allowDomain(agi_url);
devKey = "6a6fb5c11bfb9abc84294050d244b4b4";
gameKey = "paper-warfare";
urlRequest = new URLRequest(agi_url);
loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loadComplete);
loader.load(urlRequest);
stage.showDefaultContextMenu = false;
this.addEventListener(Event.ENTER_FRAME, loading);
MouseWheelTrap.setup(stage);
}
function frame19(){
stop();
nwLvl = 8;
emp = "armed";
init();
}
function frame22(){
stop();
infos();
SoundMixer.stopAll();
plyngsSnd();
if (level < 10){
promptUpdates = true;
};
btn_nav(postLvlWinNext_btn, "upgrade");
winPostFrame_mc.scaleX = 0.1;
winPad_mc.scaleX = 0.1;
winPostFrame_mc.scaleY = 0.1;
winPad_mc.scaleY = 0.1;
winPostDes_mc.scaleX = 0.1;
winMessage_txt.scaleX = 0.1;
killsLevel_txt.scaleX = 0.1;
killsOverall_txt.scaleX = 0.1;
Tweener.addTween(winPostFrame_mc, {scaleX:1, scaleY:1, time:1.2, transition:"easeOutElastic"});
Tweener.addTween(winPad_mc, {scaleX:1, scaleY:1, time:1.4, transition:"easeOutElastic"});
Tweener.addTween(winPostDes_mc, {scaleX:1, time:1.4, transition:"easeOutElastic"});
Tweener.addTween(winMessage_txt, {scaleX:1, scaleY:1, time:1.5, transition:"easeOutElastic"});
Tweener.addTween(killsLevel_txt, {scaleX:1, scaleY:1, time:1.6, transition:"easeOutElastic"});
Tweener.addTween(killsOverall_txt, {scaleX:1, scaleY:1, time:1.7, transition:"easeOutElastic"});
}
function frame8(){
stop();
Tweener.addTween(howToDesElem1_mc, {width:680, height:480, time:1, transition:"easeOutElastic"});
Tweener.addTween(howToDesElem2_mc, {width:604, height:380, time:1.2, transition:"easeOutElastic"});
Tweener.addTween(back_btn, {x:488, y:447, time:1.2, transition:"easeOutElastic"});
Tweener.addTween(next_btn, {x:613, y:448, time:1.4, transition:"easeOutElastic"});
btn_nav(back_btn, "intro");
btn_nav(next_btn, "suitSelection");
}
function frame26(){
stop();
btn_nav(submitScoreBack_btn, "title");
addChild(agi);
agi.showScoreboardSubmit(killsOverall);
}
function frame9(){
stop();
selectText_txt.x = 1000;
Tweener.addTween(suitSelectionPanel1_mc, {rotation:0, time:1, transition:"easeOutElastic"});
Tweener.addTween(suitSelectionPanel2_mc, {rotation:0, time:1.2, transition:"easeOutElastic"});
Tweener.addTween(suitSelectionPanel3_mc, {rotation:0, time:1.6, transition:"easeOutElastic"});
Tweener.addTween(back_btn, {x:488, y:447, time:1.2, transition:"easeOutElastic"});
Tweener.addTween(next_btn, {x:613, y:448, time:1.4, transition:"easeOutElastic"});
Tweener.addTween(selectText_txt, {x:471, time:1.4, transition:"easeOutElastic"});
btn_nav(back_btn, "howTo");
btn_nav(next_btn, "upgrade");
btn_suitSelectionArrow(suitSelectionPanel3_mc.arrowLeft_btn);
btn_suitSelectionArrow(suitSelectionPanel3_mc.arrowRight_btn);
}
function frame23(){
stop();
SoundMixer.stopAll();
plyngsSnd();
lastWord = "";
btn_nav(postLvlLostNext_btn, "submitScore");
lostMessage_txt.scaleX = 0.1;
lostKillsOverall_txt.scaleX = 0.1;
medalAwarding_txt.scaleX = 0.1;
lostMessage2_txt.scaleX = 0.1;
lostKillsOverall_txt.text = String(("Overall Kills-> " + killsOverall));
lostMessage_txt.text = String("You've fought a good fight soldier");
Tweener.addTween(lostMessage_txt, {scaleX:1, scaleY:1, time:1.4, transition:"easeOutElastic"});
Tweener.addTween(lostKillsOverall_txt, {scaleX:1, scaleY:1, time:1.5, transition:"easeOutElastic"});
Tweener.addTween(medalAwarding_txt, {scaleX:1, scaleY:1, time:1.5, transition:"easeOutElastic"});
Tweener.addTween(lostMessage2_txt, {scaleX:1, scaleY:1, time:1.5, transition:"easeOutElastic"});
if (level == 1){
medalAwarding_txt.text = String("Airman Basic Medal");
medal_mc.gotoAndStop(1);
} else {
if (level == 2){
medalAwarding_txt.text = String("Airman Medal");
medal_mc.gotoAndStop(2);
} else {
if (level == 3){
medalAwarding_txt.text = String("Airman First Class Medal");
medal_mc.gotoAndStop(3);
} else {
if (level == 4){
medalAwarding_txt.text = String("Senior Airman Medal");
medal_mc.gotoAndStop(4);
} else {
if (level == 5){
medalAwarding_txt.text = String("Staff Sergeant Medal");
medal_mc.gotoAndStop(5);
} else {
if (level == 6){
medalAwarding_txt.text = String("Technical Sergeant Medal");
medal_mc.gotoAndStop(6);
} else {
if (level == 7){
medalAwarding_txt.text = String("Master Sergeant Medal");
medal_mc.gotoAndStop(7);
} else {
if (level == 8){
medalAwarding_txt.text = String("Senior Master Sergeant Medal");
medal_mc.gotoAndStop(8);
} else {
if (level == 9){
medalAwarding_txt.text = String("Chief Master Sergeant Medal");
medal_mc.gotoAndStop(9);
} else {
if (level == 10){
medalAwarding_txt.text = String("Captain Medal");
medal_mc.gotoAndStop(10);
};
};
};
};
};
};
};
};
};
};
lostPostFrame_mc.scaleX = 0.1;
lostPad_mc.scaleY = 0.1;
lostPostFrame_mc.scaleX = 0.1;
lostPad_mc.scaleY = 0.1;
medal_mc.scaleX = 0.1;
medal_mc.scaleY = 0.1;
Tweener.addTween(lostPostFrame_mc, {scaleX:1, scaleY:1, time:1.2, transition:"easeOutElastic"});
Tweener.addTween(lostPad_mc, {scaleX:1, scaleY:1, time:1.4, transition:"easeOutElastic"});
Tweener.addTween(medal_mc, {scaleX:1, scaleY:1, time:1.6, transition:"easeOutElastic"});
}
function frame2(){
stop();
sitelockPrompt_mc.alpha = 0;
allowed_site = "armorgames.com";
domain = this.root.loaderInfo.url.split("/")[2];
if (domain.indexOf(allowed_site) == (domain.length - allowed_site.length)){
sitelockPrompt_mc.alpha = 0;
gotoAndPlay(3);
} else {
stop();
sitelockPrompt_mc.alpha = 1;
this.alpha = 0.5;
};
}
function frame3(){
btn_ArmorGamesLogo(armorGamesIntro_mc, "");
}
function frame25(){
stop();
trace(creditsBack_btn);
c.scaleX = 0.1;
credPad_mc.scaleY = 0.1;
Tweener.addTween(c, {scaleX:1, scaleY:1, time:1.2, transition:"easeOutElastic"});
Tweener.addTween(credPad_mc, {scaleX:1, scaleY:1, time:1.4, transition:"easeOutElastic"});
btn_nav(creditsBack_btn, "initializer");
devLink(devLink_btn);
}
public function plyW1Snd(){
if (music == "on"){
w1Snd.play();
};
}
public function attEnemy3Ammo(_arg1:MovieClip){
var _local2:Number;
var _local3:Number;
var _local4:Number;
var _local5:Number;
var _local6:Enemy3Ammo;
_local2 = 50;
_local3 = _arg1.barrel.rotation;
_local4 = (_arg1.x + (_local2 * Math.cos(((_local3 * Math.PI) / 180))));
_local5 = (_arg1.y + (_local2 * Math.sin(((_local3 * Math.PI) / 180))));
_local6 = new Enemy3Ammo(_arg1);
_local6.x = _local4;
_local6.y = _local5;
lvlCntnr_mc.addChild(_local6);
enemyAmmo3Array.push(_local6);
}
function frame20(){
stop();
nwLvl = 9;
init();
}
public function attBoss2(){
var _local1:Number;
var _local2:Number;
var _local3:Boss2;
_local1 = randomGenerator(700, 800);
_local2 = randomGenerator(100, 400);
_local3 = new Boss2(_local1, _local2);
lvlCntnr_mc.addChild(_local3);
bossArray.push(_local3);
}
function frame18(){
stop();
nwLvl = 7;
init();
}
public function removeFromArray(_arg1:Array, _arg2:MovieClip){
var _local3:Number;
_local3 = 0;
while (_local3 < _arg1.length) {
if (_arg1[_local3] == _arg2){
_arg1.splice(_local3, 1);
lvlCntnr_mc.removeChild(_arg2);
break;
};
_local3++;
};
}
public function btn_prompt(_arg1:MovieClip){
var mOvr:Function;
var mOut:Function;
var clck:Function;
var btn = _arg1;
mOvr = function (_arg1:MouseEvent){
plybtnSnd();
Tweener.addTween(btn, {scaleX:1.2, scaleY:1.2, time:1, transition:"easeOutElastic"});
btn.gotoAndStop(2);
};
mOut = function (_arg1:MouseEvent){
Tweener.addTween(btn, {scaleX:1, scaleY:1, time:1, transition:"easeOutElastic"});
btn.gotoAndStop(1);
};
clck = function (_arg1:MouseEvent){
if (btn == prompt_mc.yes_btn){
btn.buttonMode = false;
btn.removeEventListener(MouseEvent.MOUSE_OVER, mOvr);
btn.removeEventListener(MouseEvent.MOUSE_OUT, mOut);
btn.removeEventListener(MouseEvent.CLICK, clck);
delete paperWarfareSharedObject.data.gameDataExist;
delete paperWarfareSharedObject.data.level_so;
delete paperWarfareSharedObject.data.killsOverall_os;
delete paperWarfareSharedObject.data.ammo1Inventory_so;
delete paperWarfareSharedObject.data.ammo2Inventory_so;
delete paperWarfareSharedObject.data.ammo3Inventory_so;
delete paperWarfareSharedObject.data.ammo4Inventory_so;
delete paperWarfareSharedObject.data.ammo5Inventory_so;
delete paperWarfareSharedObject.data.ammo6Inventory_so;
delete paperWarfareSharedObject.data.ammo7Inventory_so;
delete paperWarfareSharedObject.data.ammo8Inventory_so;
delete paperWarfareSharedObject.data.suitCode_so;
delete paperWarfareSharedObject.data.mouseFollowSpeed_so;
delete paperWarfareSharedObject.data.lifeNumerator_so;
delete paperWarfareSharedObject.data.lifeDenominator_so;
delete paperWarfareSharedObject.data.lives_so;
delete paperWarfareSharedObject.data.weaponArray_so;
delete paperWarfareSharedObject.data.shield_so;
delete paperWarfareSharedObject.data.emp_so;
suitCode = 1;
lifeNumerator = 100;
lifeDenominator = 100;
lives = 3;
mouseFollowSpeed = 0.75;
killScore = 0;
killsOverall = 0;
killsLevel = 0;
level = 1;
ammo1Inventory = ammo1Max;
ammo2Inventory = ammo2Max;
ammo3Inventory = ammo3Max;
ammo4Inventory = ammo4Max;
ammo5Inventory = ammo5Max;
ammo6Inventory = ammo6Max;
ammo7Inventory = ammo7Max;
ammo8Inventory = ammo8Max;
shield = "unarmed";
emp = "unarmed";
weaponArray.splice(0, weaponArray.length);
weaponArray.push("proton");
weaponArray.push("burst");
gotoAndPlay("intro");
} else {
if (btn == prompt_mc.no_btn){
Tweener.addTween(prompt_mc, {y:-271.7, time:1.6, transition:"easeInStrong"});
};
};
};
btn.buttonMode = true;
btn.addEventListener(MouseEvent.MOUSE_OVER, mOvr);
btn.addEventListener(MouseEvent.MOUSE_OUT, mOut);
btn.addEventListener(MouseEvent.CLICK, clck);
}
public function attBoss1Ammo1(_arg1:MovieClip){
var _local2:Number;
var _local3:Number;
var _local4:Boss1Ammo1;
_local2 = 240;
_local3 = 0;
while (_local3 < 5) {
_local2 = (_local2 - 20);
_local4 = new Boss1Ammo1(_arg1, _local2);
lvlCntnr_mc.addChild(_local4);
boss1Ammo1Array.push(_local4);
_local3++;
};
}
public function enDeployLvl10(_arg1:TimerEvent){
enDeployLvl10Wave++;
switch (enDeployLvl10Wave){
case 1:
attEnemy10(1);
attEnemy3(1);
attEnemy4(1);
attEnemy6(1);
attEnemy9(1);
break;
case 2:
attEnemy10(1);
attEnemy4(1);
attEnemy8(2);
attEnemy6(1);
attEnemy7(1);
break;
case 3:
attEnemy3(2);
attEnemy4(1);
attEnemy9(1);
attEnemy6(1);
attEnemy10(1);
break;
case 4:
attPwrUp3();
attEnemy9(1);
attEnemy5(1);
attEnemy10(1);
attEnemy7(1);
break;
case 5:
attEnemy1(1);
attEnemy9(1);
attEnemy3(1);
attEnemy6(1);
attEnemy10(1);
break;
case 6:
attEnemy1(1);
attEnemy2(1);
attEnemy8(2);
break;
case 7:
attEnemy10(1);
attEnemy9(1);
attEnemy6(1);
attEnemy7(1);
break;
case 8:
attPwrUp7();
attEnemy10(2);
attEnemy10(1);
attEnemy7(1);
break;
case 9:
attEnemy1(1);
attEnemy3(1);
attEnemy5(1);
attEnemy10(1);
attEnemy7(1);
break;
case 10:
attEnemy9(1);
attEnemy2(1);
attEnemy4(1);
attEnemy6(1);
attEnemy8(1);
break;
case 11:
attEnemy1(1);
attEnemy10(2);
attEnemy6(1);
attEnemy7(1);
break;
case 12:
attPwrUp6();
attEnemy10(1);
attEnemy3(1);
attEnemy8(1);
attEnemy7(1);
break;
case 13:
attEnemy1(1);
attEnemy10(2);
attEnemy8(1);
attEnemy10(1);
attEnemy9(1);
break;
case 14:
attEnemy1(1);
attEnemy2(2);
attEnemy8(1);
attEnemy6(1);
attEnemy7(1);
break;
case 15:
attEnemy1(1);
attEnemy10(1);
attEnemy6(1);
attEnemy7(1);
break;
case 16:
attPwrUp2();
attEnemy1(1);
attEnemy10(1);
attEnemy8(1);
attEnemy9(1);
attEnemy7(1);
break;
case 17:
attEnemy1(1);
attEnemy2(2);
attEnemy10(1);
attEnemy8(1);
attEnemy9(1);
break;
case 18:
attEnemy10(1);
attEnemy9(1);
attEnemy6(1);
attEnemy7(1);
break;
case 19:
attEnemy1(2);
attEnemy10(1);
attEnemy3(1);
attEnemy9(1);
break;
case 20:
attPwrUp7();
attEnemy1(1);
attEnemy3(1);
attEnemy9(1);
attEnemy7(1);
break;
case 21:
attPwrUp3();
attEnemy1(2);
attEnemy2(1);
attEnemy10(1);
attEnemy7(1);
break;
case 22:
attPwrUp3();
attEnemy1(1);
attEnemy9(1);
attEnemy8(1);
attEnemy7(1);
break;
case 23:
attEnemy10(1);
attEnemy3(1);
attEnemy8(2);
attEnemy7(1);
break;
case 24:
attPwrUp2();
attEnemy10(1);
attEnemy9(1);
attEnemy8(2);
attEnemy7(1);
break;
case 25:
attEnemy1(2);
attEnemy10(1);
attEnemy9(1);
attEnemy7(1);
break;
case 26:
attEnemy1(1);
attEnemy2(1);
attEnemy4(1);
attEnemy10(1);
attEnemy7(1);
break;
case 27:
attEnemy1(1);
attEnemy9(2);
attEnemy10(1);
attEnemy7(1);
break;
case 28:
attPwrUp6();
attEnemy1(1);
attEnemy3(1);
attEnemy10(1);
attEnemy9(1);
break;
case 29:
attEnemy2(1);
attEnemy4(1);
attEnemy6(1);
attEnemy10(1);
break;
case 30:
attEnemy1(1);
attEnemy2(1);
attEnemy3(1);
attEnemy8(1);
attEnemy10(1);
attEnemy9(1);
break;
case 31:
attEnemy1(1);
attEnemy2(1);
attEnemy3(1);
attEnemy8(1);
attEnemy10(1);
attEnemy10(1);
break;
case 32:
attPwrUp1();
attPwrUp3();
attEnemy9(1);
attEnemy2(1);
attEnemy3(1);
attEnemy8(1);
attEnemy6(1);
attEnemy9(1);
break;
case 33:
attEnemy1(1);
attEnemy9(1);
attEnemy3(1);
attEnemy8(1);
attEnemy10(1);
attEnemy9(1);
break;
case 34:
attEnemy10(1);
attEnemy2(1);
attEnemy9(1);
attEnemy8(1);
attEnemy6(1);
attEnemy9(1);
break;
case 35:
attPwrUp6();
attEnemy10(1);
attEnemy2(1);
attEnemy3(1);
attEnemy8(1);
attEnemy6(1);
attEnemy9(1);
break;
case 36:
attPwrUp3();
attEnemy1(1);
attEnemy2(1);
attEnemy3(1);
attEnemy8(1);
attEnemy10(1);
attEnemy10(1);
break;
case 37:
attPwrUp1();
attEnemy9(1);
attEnemy2(1);
attEnemy3(1);
attEnemy8(1);
attEnemy6(1);
attEnemy9(1);
break;
case 38:
attEnemy1(1);
attEnemy9(1);
attEnemy3(1);
attEnemy4(1);
attEnemy8(1);
attEnemy10(1);
attEnemy9(1);
break;
case 39:
attPwrUp2();
attEnemy10(1);
attEnemy2(1);
attEnemy9(1);
attEnemy4(1);
attEnemy8(1);
attEnemy6(1);
attEnemy9(1);
break;
case 40:
attBoss3();
Tweener.addTween(bossLifeUI_mc, {y:459, time:1, transition:"linear"});
break;
default:
break;
};
}
public function mouseUnpressed(_arg1:MouseEvent){
fireWeapon = "cease";
playerAmmo1Rof = 1;
playerAmmo2Rof = 15;
playerAmmo3Rof = 1;
playerAmmo4Rof = 0;
playerAmmo5Rof = 0;
playerAmmo7Rof = 1;
playerAmmo8Rof = 1;
}
function frame7(){
stop();
Tweener.addTween(introDesElem1_mc, {width:704, height:504, time:1, transition:"easeOutElastic"});
Tweener.addTween(introDesElem2_mc, {width:612, height:414, time:1.2, transition:"easeOutElastic"});
Tweener.addTween(back_btn, {x:488, y:447, time:1.2, transition:"easeOutElastic"});
Tweener.addTween(next_btn, {x:613, y:448, time:1.4, transition:"easeOutElastic"});
btn_nav(back_btn, "title");
btn_nav(next_btn, "howTo");
}
function frame10(){
stop();
btn_weaponDescription(upgradePanel1_mc.w1, 218);
btn_weaponDescription(upgradePanel1_mc.w2, 489);
upgradePanel1_mc.w3.alpha = 0.5;
upgradePanel1_mc.w4.alpha = 0.5;
upgradePanel1_mc.w5.alpha = 0.5;
upgradePanel1_mc.w6.alpha = 0.5;
upgradePanel1_mc.w7.alpha = 0.5;
upgradePanel1_mc.w8.alpha = 0.5;
upgradePanel3_mc.shield_mc.alpha = 0.2;
upgradePanel3_mc.emp_mc.alpha = 0.2;
if (promptUpdates == true){
updatePrompter_mc.y = 144.9;
promptUpdates = false;
};
if (level == 2){
upgradePanel1_mc.w3.alpha = 1;
btn_weaponDescription(upgradePanel1_mc.w3, 770);
upgradePanel2_mc.descSlider_mc.y = 786;
updatePrompter_mc.updates_mc.gotoAndStop(1);
} else {
if (level == 3){
upgradePanel1_mc.w3.alpha = 1;
upgradePanel1_mc.w4.alpha = 1;
btn_weaponDescription(upgradePanel1_mc.w3, 770);
btn_weaponDescription(upgradePanel1_mc.w4, 1070);
upgradePanel2_mc.descSlider_mc.y = 1070;
updatePrompter_mc.updates_mc.gotoAndStop(2);
} else {
if (level == 4){
upgradePanel1_mc.w3.alpha = 1;
upgradePanel1_mc.w4.alpha = 1;
upgradePanel1_mc.w5.alpha = 1;
btn_weaponDescription(upgradePanel1_mc.w3, 770);
btn_weaponDescription(upgradePanel1_mc.w4, 1070);
btn_weaponDescription(upgradePanel1_mc.w5, 1350);
upgradePanel2_mc.descSlider_mc.y = 1350;
updatePrompter_mc.updates_mc.gotoAndStop(3);
} else {
if (level == 5){
upgradePanel1_mc.w3.alpha = 1;
upgradePanel1_mc.w4.alpha = 1;
upgradePanel1_mc.w5.alpha = 1;
btn_weaponDescription(upgradePanel1_mc.w3, 770);
btn_weaponDescription(upgradePanel1_mc.w4, 1070);
btn_weaponDescription(upgradePanel1_mc.w5, 1350);
upgradePanel3_mc.shield_mc.alpha = 1;
updatePrompter_mc.updates_mc.gotoAndStop(7);
} else {
if (level == 6){
upgradePanel1_mc.w3.alpha = 1;
upgradePanel1_mc.w4.alpha = 1;
upgradePanel1_mc.w5.alpha = 1;
upgradePanel1_mc.w6.alpha = 1;
upgradePanel3_mc.shield_mc.alpha = 1;
btn_weaponDescription(upgradePanel1_mc.w3, 770);
btn_weaponDescription(upgradePanel1_mc.w4, 1070);
btn_weaponDescription(upgradePanel1_mc.w5, 1350);
btn_weaponDescription(upgradePanel1_mc.w6, 1638);
upgradePanel2_mc.descSlider_mc.y = 1638;
updatePrompter_mc.updates_mc.gotoAndStop(4);
} else {
if (level == 7){
upgradePanel1_mc.w3.alpha = 1;
upgradePanel1_mc.w4.alpha = 1;
upgradePanel1_mc.w5.alpha = 1;
upgradePanel1_mc.w6.alpha = 1;
upgradePanel1_mc.w7.alpha = 1;
upgradePanel3_mc.shield_mc.alpha = 1;
btn_weaponDescription(upgradePanel1_mc.w3, 770);
btn_weaponDescription(upgradePanel1_mc.w4, 1070);
btn_weaponDescription(upgradePanel1_mc.w5, 1350);
btn_weaponDescription(upgradePanel1_mc.w6, 1638);
btn_weaponDescription(upgradePanel1_mc.w7, 1914);
upgradePanel2_mc.descSlider_mc.y = 1914;
updatePrompter_mc.updates_mc.gotoAndStop(5);
} else {
if (level == 8){
upgradePanel1_mc.w3.alpha = 1;
upgradePanel1_mc.w4.alpha = 1;
upgradePanel1_mc.w5.alpha = 1;
upgradePanel1_mc.w6.alpha = 1;
upgradePanel1_mc.w7.alpha = 1;
upgradePanel3_mc.shield_mc.alpha = 1;
btn_weaponDescription(upgradePanel1_mc.w3, 770);
btn_weaponDescription(upgradePanel1_mc.w4, 1070);
btn_weaponDescription(upgradePanel1_mc.w5, 1350);
btn_weaponDescription(upgradePanel1_mc.w6, 1638);
btn_weaponDescription(upgradePanel1_mc.w7, 1914);
upgradePanel3_mc.shield_mc.alpha = 1;
upgradePanel3_mc.emp_mc.alpha = 1;
updatePrompter_mc.updates_mc.gotoAndStop(8);
} else {
if (level == 9){
upgradePanel1_mc.w3.alpha = 1;
upgradePanel1_mc.w4.alpha = 1;
upgradePanel1_mc.w5.alpha = 1;
upgradePanel1_mc.w6.alpha = 1;
upgradePanel1_mc.w7.alpha = 1;
upgradePanel1_mc.w8.alpha = 1;
upgradePanel3_mc.shield_mc.alpha = 1;
upgradePanel3_mc.emp_mc.alpha = 1;
btn_weaponDescription(upgradePanel1_mc.w3, 770);
btn_weaponDescription(upgradePanel1_mc.w4, 1070);
btn_weaponDescription(upgradePanel1_mc.w5, 1350);
btn_weaponDescription(upgradePanel1_mc.w6, 1638);
btn_weaponDescription(upgradePanel1_mc.w7, 1914);
btn_weaponDescription(upgradePanel1_mc.w8, 2190);
upgradePanel2_mc.descSlider_mc.y = 2190;
updatePrompter_mc.updates_mc.gotoAndStop(6);
};
};
};
};
};
};
};
};
if (level == 10){
upgradePanel1_mc.w3.alpha = 1;
upgradePanel1_mc.w4.alpha = 1;
upgradePanel1_mc.w5.alpha = 1;
upgradePanel1_mc.w6.alpha = 1;
upgradePanel1_mc.w7.alpha = 1;
upgradePanel1_mc.w8.alpha = 1;
upgradePanel3_mc.shield_mc.alpha = 1;
upgradePanel3_mc.emp_mc.alpha = 1;
btn_weaponDescription(upgradePanel1_mc.w3, 770);
btn_weaponDescription(upgradePanel1_mc.w4, 1070);
btn_weaponDescription(upgradePanel1_mc.w5, 1350);
btn_weaponDescription(upgradePanel1_mc.w6, 1638);
btn_weaponDescription(upgradePanel1_mc.w7, 1914);
btn_weaponDescription(upgradePanel1_mc.w8, 2190);
};
Tweener.addTween(upgradePanel1_mc, {x:-109, time:1, transition:"easeOutElastic"});
Tweener.addTween(upgradePanel2_mc, {x:737, time:1.2, transition:"easeOutElastic"});
Tweener.addTween(upgradePanel3_mc, {x:-23.9, time:1.6, transition:"easeOutElastic"});
Tweener.addTween(back_btn, {x:488, y:447, time:1.2, transition:"easeOutElastic"});
Tweener.addTween(next_btn, {x:613, y:448, time:1.4, transition:"easeOutElastic"});
btn_updatesScreen(back_btn, "suitSelection");
btn_updatesScreen(next_btn, "prelevel");
closeUpdatePrompt(updatePrompter_mc.closeUpdatePrompt_btn, -523.1);
}
public function btn_nav(_arg1:MovieClip, _arg2:String){
var mOvr:Function;
var mOut:Function;
var clck:Function;
var btn = _arg1;
var whereTo = _arg2;
mOvr = function (_arg1:MouseEvent){
plybtnSnd();
Tweener.addTween(btn, {scaleX:1.2, scaleY:1.2, time:1, transition:"easeOutElastic"});
btn.gotoAndStop(2);
};
mOut = function (_arg1:MouseEvent){
Tweener.addTween(btn, {scaleX:1, scaleY:1, time:1, transition:"easeOutElastic"});
btn.gotoAndStop(1);
};
clck = function (_arg1:MouseEvent){
if (whereTo == "promptToClearData"){
Tweener.addTween(prompt_mc, {y:218.4, time:1.6, transition:"easeInStrong"});
} else {
btn.buttonMode = false;
btn.removeEventListener(MouseEvent.MOUSE_OVER, mOvr);
btn.removeEventListener(MouseEvent.MOUSE_OUT, mOut);
btn.removeEventListener(MouseEvent.CLICK, clck);
gotoAndPlay(whereTo);
};
};
btn.buttonMode = true;
btn.addEventListener(MouseEvent.MOUSE_OVER, mOvr);
btn.addEventListener(MouseEvent.MOUSE_OUT, mOut);
btn.addEventListener(MouseEvent.CLICK, clck);
}
public function keyPressed(_arg1:KeyboardEvent){
if (keyIsPressed == false){
if ((((this.currentFrame >= 8)) && ((this.currentFrame <= 17)))){
if ((((lives <= 0)) && ((lifeNumerator <= 0)))){
} else {
if (_arg1.keyCode == 49){
weaponCounter = 1;
} else {
if (_arg1.keyCode == 50){
weaponCounter = 2;
} else {
if (_arg1.keyCode == 51){
if (weaponArray.length >= 3){
weaponCounter = 3;
};
} else {
if (_arg1.keyCode == 52){
if (weaponArray.length >= 4){
weaponCounter = 4;
};
} else {
if (_arg1.keyCode == 53){
if (weaponArray.length >= 5){
weaponCounter = 5;
};
} else {
if (_arg1.keyCode == 54){
if (weaponArray.length >= 6){
weaponCounter = 6;
};
} else {
if (_arg1.keyCode == 55){
if (weaponArray.length >= 7){
weaponCounter = 7;
};
} else {
if (_arg1.keyCode == 56){
if (weaponArray.length <= 8){
weaponCounter = 8;
};
} else {
if (_arg1.keyCode == 69){
trace("E");
attPlayerSpecial2();
} else {
if (_arg1.keyCode == 83){
trace("s");
attPlayerSpecial1();
} else {
if (_arg1.keyCode == 32){
trace("space");
weaponCounter++;
if (weaponCounter > weaponArray.length){
weaponCounter = 1;
};
} else {
if (_arg1.keyCode == 66){
trace("space");
weaponCounter--;
if (weaponCounter < 1){
weaponCounter = weaponArray.length;
};
};
};
};
};
};
};
};
};
};
};
};
};
};
updateAmmoUI();
};
if (_arg1.keyCode == 77){
trace("offOnMusic");
musicCode++;
if (musicCode == 1){
music = "off";
SoundMixer.stopAll();
};
if (musicCode == 2){
music = "on";
if ((((this.currentFrame >= 8)) && ((this.currentFrame <= 17)))){
plygsSnd();
} else {
plyngsSnd();
};
musicCode = 0;
};
};
keyIsPressed = true;
};
}
function frame24(){
stop();
SoundMixer.stopAll();
plyngsSnd();
stop();
btn_nav(FinishSubmit_btn, "submitScore");
lostMessage_txt.scaleX = 0.1;
lostKillsOverall_txt.scaleX = 0.1;
medalAwarding_txt.scaleX = 0.1;
lostMessage2_txt.scaleX = 0.1;
lostKillsOverall_txt.text = String(("Overall Kills-> " + killsOverall));
lostMessage_txt.text = String("You gave em hell..Congrats soldier!!!");
Tweener.addTween(lostMessage_txt, {scaleX:1, scaleY:1, time:1.4, transition:"easeOutElastic"});
Tweener.addTween(lostKillsOverall_txt, {scaleX:1, scaleY:1, time:1.5, transition:"easeOutElastic"});
Tweener.addTween(medalAwarding_txt, {scaleX:1, scaleY:1, time:1.5, transition:"easeOutElastic"});
Tweener.addTween(lostMessage2_txt, {scaleX:1, scaleY:1, time:1.5, transition:"easeOutElastic"});
medalAwarding_txt.text = String("Major Medal");
medal_mc.gotoAndStop(11);
lostPostFrame_mc.scaleX = 0.1;
lostPad_mc.scaleY = 0.1;
lostPostFrame_mc.scaleX = 0.1;
lostPad_mc.scaleY = 0.1;
medal_mc.scaleX = 0.1;
medal_mc.scaleY = 0.1;
Tweener.addTween(lostPostFrame_mc, {scaleX:1, scaleY:1, time:1.2, transition:"easeOutElastic"});
Tweener.addTween(lostPad_mc, {scaleX:1, scaleY:1, time:1.4, transition:"easeOutElastic"});
Tweener.addTween(medal_mc, {scaleX:1, scaleY:1, time:1.6, transition:"easeOutElastic"});
}
public function keyReleased(_arg1:KeyboardEvent){
if ((((((((((((((((((((((((((((((_arg1.keyCode == 49)) || ((_arg1.keyCode == 50)))) || ((_arg1.keyCode == 51)))) || ((_arg1.keyCode == 52)))) || ((_arg1.keyCode == 53)))) || ((_arg1.keyCode == 54)))) || ((_arg1.keyCode == 55)))) || ((_arg1.keyCode == 56)))) || ((_arg1.keyCode == 55)))) || ((_arg1.keyCode == 56)))) || ((_arg1.keyCode == 69)))) || ((_arg1.keyCode == 83)))) || ((_arg1.keyCode == 32)))) || ((_arg1.keyCode == 66)))) || ((_arg1.keyCode == 77)))){
keyIsPressed = false;
};
}
public function weaponToBeShown(_arg1:MovieClip){
_arg1.gotoAndStop(weaponCounter);
}
public function plyrAnimation(_arg1:MovieClip){
if ((((((((mouseX < 0)) || ((mouseX > 680)))) || ((mouseY < 0)))) || ((mouseY > 480)))){
_arg1.gotoAndStop(5);
} else {
if (_arg1.x < (mouseX - 50)){
_arg1.gotoAndStop(1);
} else {
if (_arg1.x < (mouseX - 40)){
_arg1.gotoAndStop(2);
} else {
if (_arg1.x < (mouseX - 30)){
_arg1.gotoAndStop(3);
} else {
if (_arg1.x < (mouseX - 20)){
_arg1.gotoAndStop(4);
} else {
if (_arg1.x < (mouseX - 10)){
_arg1.gotoAndStop(5);
};
};
};
};
};
if (_arg1.x > (mouseX + 50)){
_arg1.gotoAndStop(9);
} else {
if (_arg1.x > (mouseX + 40)){
_arg1.gotoAndStop(8);
} else {
if (_arg1.x > (mouseX + 30)){
_arg1.gotoAndStop(7);
} else {
if (_arg1.x > (mouseX + 20)){
_arg1.gotoAndStop(6);
} else {
if (_arg1.x > (mouseX + 10)){
_arg1.gotoAndStop(5);
};
};
};
};
};
if ((((_arg1.x > (mouseX - 10))) && ((_arg1.x < (mouseX + 10))))){
_arg1.gotoAndStop(5);
};
};
}
public function moveCloud(_arg1:MovieClip){
_arg1.x = (_arg1.x - cldSpd);
if (_arg1.x < -150){
_arg1.x = (Math.floor((Math.random() * (1000 - 680))) + 680);
_arg1.y = (Math.floor((Math.random() * (250 - 50))) + 50);
};
}
public function plyW2Snd(){
if (music == "on"){
w2Snd.play();
};
}
function frame27(){
stop();
btn_nav(hsbBack_btn, "title");
addChild(agi);
agi.showScoreboardList();
}
public function plygsSnd(){
if (music == "on"){
gsSnd.play(0, int.MAX_VALUE);
};
}
public function init(){
bossLifeUI_mc.y = 1000;
killsLevel = 0;
levelComplete = false;
stage.addEventListener(Event.ENTER_FRAME, lpr);
if (level == 1){
weaponCounter = 2;
} else {
if (level == 2){
weaponCounter = 3;
} else {
if (level == 3){
weaponCounter = 4;
} else {
if (level == 4){
weaponCounter = 5;
} else {
if (level == 5){
} else {
if (level == 6){
weaponCounter = 6;
} else {
if (level == 7){
weaponCounter = 7;
} else {
if (level == 8){
} else {
if (level == 9){
weaponCounter = 8;
} else {
if (level == 10){
};
};
};
};
};
};
};
};
};
};
updateAmmoUI();
startLevelTimer.start();
SoundMixer.stopAll();
plygsSnd();
}
public function cld(_arg1:MovieClip){
if (_arg1.x < -150){
_arg1.x = 700;
} else {
_arg1.x = (_arg1.x - (Math.floor((Math.random() * (5 - 1))) + 1));
};
}
public function attEnemy2Ammo(_arg1:MovieClip){
var _local2:Enemy2Ammo;
_local2 = new Enemy2Ammo(_arg1);
lvlCntnr_mc.addChild(_local2);
enemyAmmo2Array.push(_local2);
}
public function btn_suitSelectionArrow(_arg1:MovieClip){
var mOvr:Function;
var mOut:Function;
var clck:Function;
var btn = _arg1;
mOvr = function (_arg1:MouseEvent){
plybtnSnd();
Tweener.addTween(btn, {scaleX:1.2, scaleY:1.2, time:1, transition:"easeOutElastic"});
};
mOut = function (_arg1:MouseEvent){
Tweener.addTween(btn, {scaleX:1, scaleY:1, time:1, transition:"easeOutElastic"});
};
clck = function (_arg1:MouseEvent){
Tweener.addTween(btn, {scaleX:1, scaleY:1, time:1, transition:"easeOutElastic"});
if (btn == suitSelectionPanel3_mc.arrowLeft_btn){
suitCode--;
if (suitCode <= 1){
suitCode = 1;
};
};
if (btn == suitSelectionPanel3_mc.arrowRight_btn){
suitCode++;
if (suitCode >= 3){
suitCode = 3;
};
};
suitSelectionSlider();
};
btn.buttonMode = true;
btn.addEventListener(MouseEvent.MOUSE_OVER, mOvr);
btn.addEventListener(MouseEvent.MOUSE_OUT, mOut);
btn.addEventListener(MouseEvent.CLICK, clck);
}
public function plyrAmmoAndEnemyCheckHit(_arg1:Array, _arg2:Array, _arg3:Number){
var _local4:Number;
var _local5:Number;
_local4 = (_arg1.length - 1);
while (_local4 >= 0) {
_local5 = (_arg2.length - 1);
while (_local5 >= 0) {
if (_arg1[_local4].hitTestObject(_arg2[_local5])){
_arg1[_local4].destruct("hit");
if ((((weaponCounter == 5)) || ((weaponCounter == 6)))){
_arg2[_local5].typeOfDestruction = "sliced";
} else {
if (weaponCounter == 4){
_arg2[_local5].typeOfDestruction = "fried";
} else {
_arg2[_local5].typeOfDestruction = "normal";
};
};
plyHitSnd();
_arg2[_local5].life = (_arg2[_local5].life - _arg3);
break;
};
_local5--;
};
_local4--;
};
}
function frame21(){
stop();
nwLvl = 10;
init();
}
public function updateUI(){
if (lifeNumerator >= lifeDenominator){
lifeNumerator = lifeDenominator;
};
if (lives > 0){
if (lifeNumerator <= 0){
lives--;
lifeNumerator = lifeDenominator;
};
};
if (lives > 3){
lives = 3;
};
if ((((lives <= 0)) && ((lifeNumerator <= 0)))){
Tweener.addTween(promptGO_mc, {y:240, time:1.5, transition:"easeOutStrong"});
if (dead == "false"){
dead = "true";
attExplosion1(lvlCntnr_mc.plyr_mc);
attDebris(lvlCntnr_mc.plyr_mc);
toPostLevelTimer.start();
};
};
lifeBar_mc.scaleX = (lifeNumerator / lifeDenominator);
if (lifeBar_mc.scaleX <= 0){
lifeBar_mc.scaleX = 0;
};
lives_txt.text = String(("LIVES: " + lives));
scoreDisplay_txt.text = String(killScore);
emp_txt.text = String(("EMP- " + emp));
shield_txt.text = String(("SHIELD- " + shield));
if (shield == "armed"){
shield_txt.textColor = 0xFF0000;
} else {
shield_txt.textColor = 0;
};
if (emp == "armed"){
emp_txt.textColor = 0xFF0000;
} else {
emp_txt.textColor = 0;
};
}
public function plyHitSnd(){
if (music == "on"){
hitSnd.play(0, 1);
};
}
public function btn_weaponDescription(_arg1:MovieClip, _arg2:Number){
var mOvr:Function;
var mOut:Function;
var clck:Function;
var btn = _arg1;
var newYpos = _arg2;
mOvr = function (_arg1:MouseEvent){
plybtnSnd();
Tweener.addTween(btn, {scaleX:1.2, scaleY:1.2, time:0.2, transition:"easeOutStrong"});
};
mOut = function (_arg1:MouseEvent){
Tweener.addTween(btn, {scaleX:1, scaleY:1, time:0.2, transition:"easeOutStrong"});
};
clck = function (_arg1:MouseEvent){
Tweener.addTween(upgradePanel2_mc.descSlider_mc, {y:newYpos, time:0.5, transition:"easeOutStrong"});
};
btn.buttonMode = true;
btn.addEventListener(MouseEvent.MOUSE_OVER, mOvr);
btn.addEventListener(MouseEvent.MOUSE_OUT, mOut);
btn.addEventListener(MouseEvent.CLICK, clck);
}
public function loading(_arg1:Event):void{
var _local2:Number;
var _local3:Number;
_local2 = this.stage.loaderInfo.bytesTotal;
_local3 = this.stage.loaderInfo.bytesLoaded;
bar_mc.scaleX = (_local3 / _local2);
loader_txt.text = (Math.floor(((_local3 / _local2) * 100)) + "%");
if (_local2 == _local3){
this.removeEventListener(Event.ENTER_FRAME, loading);
gotoAndPlay(2);
};
}
public function attExplosion1(_arg1:MovieClip){
var _local2:Number;
var _local3:Number;
var _local4:Number;
var _local5:Explosion1;
plyehSnd();
_local2 = _arg1.x;
_local3 = _arg1.y;
_local4 = (Math.floor((Math.random() * (300 - 240))) + 240);
_local5 = new Explosion1(_local2, _local3, _local4);
lvlCntnr_mc.addChild(_local5);
explosionArray.push(_local5);
}
public function attBoss2Ammo1(_arg1:MovieClip){
var _local2:Boss2Ammo1;
_local2 = new Boss2Ammo1(_arg1);
lvlCntnr_mc.addChild(_local2);
boss2Ammo1Array.push(_local2);
}
public function attExplosion2(_arg1:MovieClip){
var _local2:Number;
var _local3:Number;
var _local4:Number;
var _local5:Explosion2;
_local2 = _arg1.x;
_local3 = _arg1.y;
_local4 = (Math.floor((Math.random() * (300 - 240))) + 240);
_local5 = new Explosion2(_local2, _local3, _local4);
lvlCntnr_mc.addChild(_local5);
explosionArray.push(_local5);
}
public function attBoss2Ammo2(_arg1:MovieClip){
var _local2:Number;
var _local3:Boss2Ammo2;
_local2 = 0;
while (_local2 < 2) {
_local3 = new Boss2Ammo2(_arg1);
_local3.x = _arg1.x;
if (_local2 == 0){
_local3.y = (_arg1.y - 50);
} else {
if (_local2 == 1){
_local3.y = (_arg1.y + 50);
};
};
lvlCntnr_mc.addChild(_local3);
boss2Ammo2Array.push(_local3);
_local2++;
};
}
public function enemyAmmoAndPlayrCheckHit(_arg1:Array, _arg2:Number){
var _local3:Number;
_local3 = (_arg1.length - 1);
while (_local3 >= 0) {
if (_arg1[_local3].hitTestObject(lvlCntnr_mc.plyr_mc)){
attExplosion1(lvlCntnr_mc.plyr_mc);
if (levelComplete == false){
lifeNumerator = (lifeNumerator - _arg2);
};
screenShake();
_arg1[_local3].destruct("hit");
break;
};
_local3--;
};
}
function frame11(){
stop();
if (level == 1){
map_mc.gotoAndStop(1);
} else {
if (level == 2){
map_mc.gotoAndStop(2);
};
};
if (level == 3){
map_mc.gotoAndStop(3);
} else {
if (level == 4){
map_mc.gotoAndStop(4);
};
};
if (level == 5){
map_mc.gotoAndStop(5);
} else {
if (level == 6){
map_mc.gotoAndStop(6);
} else {
if (level == 7){
map_mc.gotoAndStop(7);
};
};
};
if (level == 8){
map_mc.gotoAndStop(8);
} else {
if (level == 9){
map_mc.gotoAndStop(9);
} else {
if (level == 10){
map_mc.gotoAndStop(10);
};
};
};
map_mc.scaleX = 0.1;
map_mc.scaleY = 0.1;
Tweener.addTween(map_mc, {scaleX:1, scaleY:1, time:2, transition:"easeOutElastic"});
Tweener.addTween(prelevelDesElem1_mc, {width:680, height:480, time:1.8, transition:"easeOutElastic"});
Tweener.addTween(back_btn, {x:488, y:447, time:1.2, transition:"easeOutElastic"});
Tweener.addTween(next_btn, {x:613, y:448, time:1.4, transition:"easeOutElastic"});
btn_nav(back_btn, "upgrade");
btn_playLevel(next_btn, level);
}
public function attExplosion3(_arg1:MovieClip){
var _local2:Number;
var _local3:Number;
var _local4:Number;
var _local5:Number;
var _local6:Explosion3;
_local2 = _arg1.x;
_local3 = _arg1.y;
_local5 = 0;
while (_local5 < 2) {
if (_local5 == 0){
_local4 = (Math.floor((Math.random() * (10 - 0))) + 0);
} else {
_local4 = (Math.floor((Math.random() * (150 - 45))) + 45);
};
_local6 = new Explosion3(_local2, _local3, _local4);
lvlCntnr_mc.addChild(_local6);
explosionArray.push(_local6);
_local5++;
};
}
public function attExplosion5(_arg1:MovieClip, _arg2:Number){
var _local3:Number;
var _local4:Number;
var _local5:Explosion5;
_local3 = _arg1.x;
_local4 = _arg1.y;
_local5 = new Explosion5(_local3, _local4, _arg2);
lvlCntnr_mc.addChild(_local5);
explosionArray.push(_local5);
}
public function btn_updatesScreen(_arg1:MovieClip, _arg2:String){
var mOvr:Function;
var mOut:Function;
var clck:Function;
var btn = _arg1;
var whereTo = _arg2;
mOvr = function (_arg1:MouseEvent){
btn.gotoAndStop(2);
};
mOut = function (_arg1:MouseEvent){
btn.gotoAndStop(1);
};
clck = function (_arg1:MouseEvent){
if (whereTo == "suitSelection"){
btn.buttonMode = false;
btn.removeEventListener(MouseEvent.MOUSE_OVER, mOvr);
btn.removeEventListener(MouseEvent.MOUSE_OUT, mOut);
btn.removeEventListener(MouseEvent.CLICK, clck);
if (paperWarfareSharedObject.data.gameDataExist == undefined){
gotoAndPlay(whereTo);
} else {
gotoAndPlay("title");
};
} else {
btn.buttonMode = false;
btn.removeEventListener(MouseEvent.MOUSE_OVER, mOvr);
btn.removeEventListener(MouseEvent.MOUSE_OUT, mOut);
btn.removeEventListener(MouseEvent.CLICK, clck);
gotoAndPlay(whereTo);
};
};
btn.buttonMode = true;
btn.addEventListener(MouseEvent.MOUSE_OVER, mOvr);
btn.addEventListener(MouseEvent.MOUSE_OUT, mOut);
btn.addEventListener(MouseEvent.CLICK, clck);
}
public function randomGenerator(_arg1:Number, _arg2:Number):Number{
var _local3:Number;
_local3 = (Math.floor((Math.random() * (_arg2 - _arg1))) + _arg1);
return (_local3);
}
public function attExplosion4(_arg1:MovieClip, _arg2){
var _local3:Number;
var _local4:Number;
var _local5:Explosion4;
_local3 = _arg1.x;
_local4 = _arg1.y;
_local5 = new Explosion4(_local3, _local4, _arg2);
lvlCntnr_mc.addChild(_local5);
explosionArray.push(_local5);
}
public function plyW3Snd(){
if (music == "on"){
w3Snd.play();
};
}
function frame17(){
stop();
nwLvl = 6;
init();
}
public function plyngsSnd(){
if (music == "on"){
ngsSnd.play(0, int.MAX_VALUE);
};
}
public function enemyAndPlyrCheckHit(_arg1:Array){
var _local2:Number;
_local2 = (_arg1.length - 1);
while (_local2 >= 0) {
if (_arg1[_local2].hitTestObject(lvlCntnr_mc.plyr_mc)){
lifeNumerator = (lifeNumerator - 8);
screenShake();
_arg1[_local2].destruct("hit");
break;
};
_local2--;
};
}
public function moveMountain(_arg1:MovieClip){
if ((((_arg1 == lvlCntnr_mc.m3)) || ((_arg1 == lvlCntnr_mc.m4)))){
_arg1.x = (_arg1.x - 2.5);
} else {
_arg1.x = (_arg1.x - 5);
};
if (_arg1.x < -980){
_arg1.x = 780;
};
}
public function infos(){
switch (level){
case 1:
break;
case 2:
lvlComplete_txt.text = "Level 1 complete";
break;
case 3:
lvlComplete_txt.text = "Level 2 complete";
break;
case 4:
lvlComplete_txt.text = "Level 3 complete";
break;
case 5:
lvlComplete_txt.text = "Level 4 complete";
break;
case 6:
lvlComplete_txt.text = "Level 5 complete";
break;
case 7:
lvlComplete_txt.text = "Level 6 complete";
break;
case 8:
lvlComplete_txt.text = "Level 7 complete";
break;
case 9:
lvlComplete_txt.text = "Level 8 complete";
break;
case 10:
lvlComplete_txt.text = "Level 9 complete";
break;
default:
break;
};
killsLevel_txt.text = String(("Kills->" + killsLevel));
killsOverall_txt.text = String(("Overall Kills-> " + killsOverall));
}
public function plyrSpecialAndEnemyCheckHit(_arg1:Array, _arg2:Array, _arg3:Number){
var _local4:Number;
var _local5:Number;
_local4 = (_arg1.length - 1);
while (_local4 >= 0) {
_local5 = (_arg2.length - 1);
while (_local5 >= 0) {
if (_arg1[_local4].hitTestObject(_arg2[_local5])){
_arg2[_local5].destruct("hit");
break;
};
_local5--;
};
_local4--;
};
}
public function plyW4Snd(){
if (music == "on"){
w4Snd.play();
};
}
public function attPlayerSpecial1(){
var _local1:PlayerSpecial1;
if (shield == "armed"){
_local1 = new PlayerSpecial1(lvlCntnr_mc.plyr_mc.x, lvlCntnr_mc.plyr_mc.y, 0);
lvlCntnr_mc.addChild(_local1);
playerSpecial1Arr.push(_local1);
shield = "unarmed";
};
}
public function attEnemy9Ammo(_arg1:MovieClip){
var _local2:Number;
var _local3:Number;
var _local4:Enemy9Ammo;
_local2 = 220;
_local3 = 0;
while (_local3 < 3) {
_local2 = (_local2 - 20);
_local4 = new Enemy9Ammo(_arg1, _local2);
lvlCntnr_mc.addChild(_local4);
enemyAmmo9Array.push(_local4);
_local3++;
};
}
public function attPlayerSpecial2(){
var _local1:PlayerSpecial2;
if (emp == "armed"){
_local1 = new PlayerSpecial2(lvlCntnr_mc.plyr_mc.x, lvlCntnr_mc.plyr_mc.y, 0);
lvlCntnr_mc.addChild(_local1);
playerSpecial2Arr.push(_local1);
emp = "unarmed";
};
}
public function moveBuilding(_arg1:MovieClip){
_arg1.x = (_arg1.x - 6);
if (_arg1.x < -150){
_arg1.x = (Math.floor((Math.random() * (1000 - 680))) + 680);
};
}
public function attEnemy1Ammo(_arg1:MovieClip){
var _local2:Enemy1Ammo;
_local2 = new Enemy1Ammo(_arg1);
lvlCntnr_mc.addChild(_local2);
enemyAmmo1Array.push(_local2);
}
public function plybtnSnd(){
if (music == "on"){
btnSnd.play();
};
}
public function devLink(_arg1:MovieClip){
var mOvr:Function;
var mOut:Function;
var clck:Function;
var btn = _arg1;
mOvr = function (_arg1:MouseEvent){
plybtnSnd();
};
mOut = function (_arg1:MouseEvent){
};
clck = function (_arg1:MouseEvent){
var _local2:String;
var _local3:URLRequest;
_local2 = "http://www.adobogames.com/";
_local3 = new URLRequest(_local2);
navigateToURL(_local3, "_new");
};
btn.buttonMode = true;
btn.addEventListener(MouseEvent.MOUSE_OVER, mOvr);
btn.addEventListener(MouseEvent.MOUSE_OUT, mOut);
btn.addEventListener(MouseEvent.CLICK, clck);
}
public function attEnemy10Ammo(_arg1:MovieClip){
var _local2:Enemy10Ammo;
_local2 = new Enemy10Ammo(_arg1);
lvlCntnr_mc.addChild(_local2);
enemyAmmo10Array.push(_local2);
}
public function gotoMain(){
gotoAndPlay(4);
}
public function mouseWheel(_arg1:MouseEvent){
}
public function attEnemy10(_arg1:Number){
var _local2:Number;
var _local3:Number;
var _local4:Number;
var _local5:Enemy10;
_local2 = 0;
while (_local2 < _arg1) {
_local3 = randomGenerator(700, 800);
_local4 = randomGenerator(100, 400);
_local5 = new Enemy10(_local3, _local4);
lvlCntnr_mc.addChild(_local5);
enemyArray.push(_local5);
_local2++;
};
}
public function attBoss3Ammo1(_arg1:MovieClip){
var _local2:Number;
var _local3:Number;
var _local4:Boss3Ammo1;
_local2 = 240;
_local3 = 0;
while (_local3 < 5) {
_local2 = (_local2 - 20);
_local4 = new Boss3Ammo1(_arg1, _local2);
lvlCntnr_mc.addChild(_local4);
boss3Ammo1Array.push(_local4);
_local3++;
};
}
public function attBoss3Ammo2(_arg1:MovieClip){
var _local2:Boss3Ammo2;
_local2 = new Boss3Ammo2(_arg1);
lvlCntnr_mc.addChild(_local2);
boss3Ammo2Array.push(_local2);
}
public function attBoss3Ammo3(_arg1:MovieClip){
var _local2:Number;
var _local3:Boss3Ammo3;
_local2 = 0;
while (_local2 < 2) {
_local3 = new Boss3Ammo3(_arg1);
_local3.x = _arg1.x;
if (_local2 == 0){
_local3.y = (_arg1.y - 50);
} else {
if (_local2 == 1){
_local3.y = (_arg1.y + 50);
};
};
lvlCntnr_mc.addChild(_local3);
boss3Ammo3Array.push(_local3);
_local2++;
};
}
public function attPlayerAmmo8a(_arg1:MovieClip){
var _local2:Number;
var _local3:Number;
var _local4:PlayerAmmo8a;
plyW8aSnd();
_local2 = randomGenerator(220, 250);
_local3 = 0;
while (_local3 < 7) {
_local2 = (_local2 + randomGenerator(10, 45));
_local4 = new PlayerAmmo8a(_arg1.x, _arg1.y, _local2);
lvlCntnr_mc.addChild(_local4);
playerAmmo8aArr.push(_local4);
_local3++;
};
}
public function endOfEnemyDeployment(_arg1:TimerEvent){
switch (level){
case 1:
enDeployTimerLvl1.removeEventListener(TimerEvent.TIMER, enDeployLvl1);
enDeployTimerLvl1.removeEventListener(TimerEvent.TIMER_COMPLETE, endOfEnemyDeployment);
break;
case 2:
enDeployTimerLvl2.removeEventListener(TimerEvent.TIMER, enDeployLvl2);
enDeployTimerLvl2.removeEventListener(TimerEvent.TIMER_COMPLETE, endOfEnemyDeployment);
break;
case 3:
enDeployTimerLvl3.removeEventListener(TimerEvent.TIMER, enDeployLvl3);
enDeployTimerLvl3.removeEventListener(TimerEvent.TIMER_COMPLETE, endOfEnemyDeployment);
break;
case 4:
enDeployTimerLvl4.removeEventListener(TimerEvent.TIMER, enDeployLvl4);
enDeployTimerLvl4.removeEventListener(TimerEvent.TIMER_COMPLETE, endOfEnemyDeployment);
break;
case 5:
enDeployTimerLvl5.removeEventListener(TimerEvent.TIMER, enDeployLvl5);
enDeployTimerLvl5.removeEventListener(TimerEvent.TIMER_COMPLETE, endOfEnemyDeployment);
break;
case 6:
enDeployTimerLvl6.removeEventListener(TimerEvent.TIMER, enDeployLvl6);
enDeployTimerLvl6.removeEventListener(TimerEvent.TIMER_COMPLETE, endOfEnemyDeployment);
break;
case 7:
enDeployTimerLvl7.removeEventListener(TimerEvent.TIMER, enDeployLvl7);
enDeployTimerLvl7.removeEventListener(TimerEvent.TIMER_COMPLETE, endOfEnemyDeployment);
break;
case 8:
enDeployTimerLvl8.removeEventListener(TimerEvent.TIMER, enDeployLvl8);
enDeployTimerLvl8.removeEventListener(TimerEvent.TIMER_COMPLETE, endOfEnemyDeployment);
break;
case 9:
enDeployTimerLvl9.removeEventListener(TimerEvent.TIMER, enDeployLvl9);
enDeployTimerLvl9.removeEventListener(TimerEvent.TIMER_COMPLETE, endOfEnemyDeployment);
break;
case 10:
enDeployTimerLvl10.removeEventListener(TimerEvent.TIMER, enDeployLvl10);
enDeployTimerLvl10.removeEventListener(TimerEvent.TIMER_COMPLETE, endOfEnemyDeployment);
break;
default:
break;
};
}
public function plyW5Snd(){
if (music == "on"){
w5Snd.play();
};
}
public function btn_ArmorGamesLogo(_arg1:MovieClip, _arg2:String){
var mOvr:Function;
var mOut:Function;
var clck:Function;
var btn = _arg1;
var whereTo = _arg2;
mOvr = function (_arg1:MouseEvent){
};
mOut = function (_arg1:MouseEvent){
};
clck = function (_arg1:MouseEvent){
var _local2:String;
var _local3:URLRequest;
_local2 = "http://www.armorgames.com/";
_local3 = new URLRequest(_local2);
navigateToURL(_local3, "_new");
};
btn.buttonMode = true;
btn.addEventListener(MouseEvent.MOUSE_OVER, mOvr);
btn.addEventListener(MouseEvent.MOUSE_OUT, mOut);
btn.addEventListener(MouseEvent.CLICK, clck);
}
public function attPlayerAmmo8b(_arg1:MovieClip){
var _local2:Number;
var _local3:Number;
var _local4:PlayerAmmo8b;
plyW8aSnd();
_local2 = randomGenerator(220, 250);
_local3 = 0;
while (_local3 < 7) {
_local2 = (_local2 + randomGenerator(10, 45));
_local4 = new PlayerAmmo8b(_arg1.x, _arg1.y, _local2);
lvlCntnr_mc.addChild(_local4);
playerAmmo8bArr.push(_local4);
_local3++;
};
}
public function plyehSnd(){
if (music == "on"){
ehSnd.play();
};
}
public function closeUpdatePrompt(_arg1:MovieClip, _arg2:Number){
var mOvr:Function;
var mOut:Function;
var clck:Function;
var btn = _arg1;
var newYpos = _arg2;
mOvr = function (_arg1:MouseEvent){
plybtnSnd();
};
mOut = function (_arg1:MouseEvent){
};
clck = function (_arg1:MouseEvent){
Tweener.addTween(updatePrompter_mc, {y:newYpos, time:0.5, transition:"easeInStrong"});
};
btn.buttonMode = true;
btn.addEventListener(MouseEvent.MOUSE_OVER, mOvr);
btn.addEventListener(MouseEvent.MOUSE_OUT, mOut);
btn.addEventListener(MouseEvent.CLICK, clck);
}
public function attEnemy8Ammo(_arg1:MovieClip){
var _local2:Number;
var _local3:Number;
var _local4:Number;
var _local5:Number;
var _local6:Enemy8Ammo;
_local2 = (Math.floor((Math.random() * (250 - 5))) + 5);
_local5 = 0;
while (_local5 < 8) {
_local4 = (Math.floor((Math.random() * (120 - 100))) + 100);
_local2 = (_local2 + _local4);
_local3 = (Math.floor((Math.random() * (-100 - -200))) + -200);
_local6 = new Enemy8Ammo(_arg1, _local2, _local3);
lvlCntnr_mc.addChild(_local6);
enemyAmmo8Array.push(_local6);
_local5++;
};
}
public function screenShake(){
Earthquake.go(lvlCntnr_mc, 6, 0.3);
}
public function btn_mg(_arg1:MovieClip, _arg2:String){
var mOvr:Function;
var mOut:Function;
var clck:Function;
var btn = _arg1;
var whereTo = _arg2;
mOvr = function (_arg1:MouseEvent){
plybtnSnd();
Tweener.addTween(btn, {scaleX:1.1, scaleY:1.1, time:1, transition:"easeOutElastic"});
};
mOut = function (_arg1:MouseEvent){
Tweener.addTween(btn, {scaleX:1, scaleY:1, time:1, transition:"easeOutElastic"});
};
clck = function (_arg1:MouseEvent){
var _local2:String;
var _local3:URLRequest;
_local2 = "http://www.armorgames.com/";
_local3 = new URLRequest(_local2);
navigateToURL(_local3, "_new");
};
btn.buttonMode = true;
btn.addEventListener(MouseEvent.MOUSE_OVER, mOvr);
btn.addEventListener(MouseEvent.MOUSE_OUT, mOut);
btn.addEventListener(MouseEvent.CLICK, clck);
}
public function plyW6Snd(){
if (music == "on"){
w6Snd.play();
};
}
public function firingFunction(){
if (fireWeapon == "open"){
if (weaponCounter == 1){
attPlayerAmmo1();
} else {
if (weaponCounter == 2){
if (ammo2Inventory > 0){
attPlayerAmmo2();
};
} else {
if (weaponCounter == 3){
if (ammo3Inventory > 0){
attPlayerAmmo3();
};
} else {
if (weaponCounter == 4){
if (ammo4Inventory > 0){
attPlayerAmmo4();
};
} else {
if (weaponCounter == 5){
if (ammo5Inventory > 0){
attPlayerAmmo5();
};
} else {
if (weaponCounter == 6){
if (ammo6Inventory > 0){
attPlayerAmmo6();
};
} else {
if (weaponCounter == 7){
if (ammo7Inventory > 0){
attPlayerAmmo7();
};
} else {
if (weaponCounter == 8){
if (ammo8Inventory > 0){
attPlayerAmmo8();
};
};
};
};
};
};
};
};
};
};
}
public function plyPwrSnd(){
if (music == "on"){
pwrSnd.play(0, 1);
};
}
public function btn_playLevel(_arg1:MovieClip, _arg2:Number){
var mOvr:Function;
var mOut:Function;
var clck:Function;
var btn = _arg1;
var lvlNum = _arg2;
mOvr = function (_arg1:MouseEvent){
plybtnSnd();
btn.gotoAndStop(2);
};
mOut = function (_arg1:MouseEvent){
btn.gotoAndStop(1);
};
clck = function (_arg1:MouseEvent){
var _local2:String;
btn.buttonMode = false;
btn.removeEventListener(MouseEvent.MOUSE_OVER, mOvr);
btn.removeEventListener(MouseEvent.MOUSE_OUT, mOut);
btn.removeEventListener(MouseEvent.CLICK, clck);
_local2 = String(("lvl" + lvlNum));
gotoAndStop(_local2);
};
btn.buttonMode = true;
btn.addEventListener(MouseEvent.MOUSE_OVER, mOvr);
btn.addEventListener(MouseEvent.MOUSE_OUT, mOut);
btn.addEventListener(MouseEvent.CLICK, clck);
}
public function updateLvl(){
level++;
Tweener.addTween(promptLC_mc, {y:240, time:2, transition:"easeOutStrong"});
toPostLevelTimer.start();
levelComplete = true;
}
public function moveRoad(_arg1:MovieClip){
_arg1.x = (_arg1.x - 6);
if (_arg1.x <= -867.5){
if (_arg1 == lvlCntnr_mc.road1){
lvlCntnr_mc.road1.x = ((lvlCntnr_mc.road2.x + lvlCntnr_mc.road2.width) - 20);
};
if (_arg1 == lvlCntnr_mc.road2){
lvlCntnr_mc.road2.x = ((lvlCntnr_mc.road1.x + lvlCntnr_mc.road1.width) - 14);
};
};
}
public function toPostLevel(_arg1:TimerEvent){
stage.removeEventListener(Event.ENTER_FRAME, lpr);
toPostLevelTimer.reset();
if (level == 2){
weaponArray.push("spread");
} else {
if (level == 3){
weaponArray.push("fire");
} else {
if (level == 4){
weaponArray.push("vulcan");
} else {
if (level == 5){
} else {
if (level == 6){
weaponArray.push("laser");
} else {
if (level == 7){
weaponArray.push("m1");
} else {
if (level == 8){
} else {
if (level == 9){
weaponArray.push("m2");
};
};
};
};
};
};
};
};
endLevelCleanUpArray(enemyArray);
endLevelCleanUpArray(playerAmmo1Arr);
endLevelCleanUpArray(playerAmmo2Arr);
endLevelCleanUpArray(playerAmmo3Arr);
endLevelCleanUpArray(playerAmmo4Arr);
endLevelCleanUpArray(playerAmmo5Arr);
endLevelCleanUpArray(playerAmmo6Arr);
endLevelCleanUpArray(playerAmmo7Arr);
endLevelCleanUpArray(playerAmmo8Arr);
endLevelCleanUpArray(playerAmmo8aArr);
endLevelCleanUpArray(playerAmmo8bArr);
endLevelCleanUpArray(playerAmmo9Arr);
endLevelCleanUpArray(playerSpecial1Arr);
endLevelCleanUpArray(playerSpecial2Arr);
endLevelCleanUpArray(enemyArray);
endLevelCleanUpArray(enemyAmmoArray);
endLevelCleanUpArray(enemyAmmo1Array);
endLevelCleanUpArray(enemyAmmo2Array);
endLevelCleanUpArray(enemyAmmo3Array);
endLevelCleanUpArray(enemyAmmo4Array);
endLevelCleanUpArray(enemyAmmo5Array);
endLevelCleanUpArray(enemyAmmo6Array);
endLevelCleanUpArray(enemyAmmo7Array);
endLevelCleanUpArray(enemyAmmo8Array);
endLevelCleanUpArray(enemyAmmo9Array);
endLevelCleanUpArray(enemyAmmo10Array);
endLevelCleanUpArray(enemyDestroyableAmmoArray);
endLevelCleanUpArray(bossArray);
endLevelCleanUpArray(boss1Ammo1Array);
endLevelCleanUpArray(boss2Ammo1Array);
endLevelCleanUpArray(boss2Ammo2Array);
endLevelCleanUpArray(boss3Ammo1Array);
endLevelCleanUpArray(boss3Ammo2Array);
endLevelCleanUpArray(boss3Ammo3Array);
endLevelCleanUpArray(powerupArray);
endLevelCleanUpArray(explosionArray);
endLevelCleanUpArray(debrisArray);
endLevelCleanUpArray(smokeArray);
trace("POST LEVEL");
killsOverall = (killsOverall + killsLevel);
if (dead == "true"){
lsoDel();
switch (level){
case 1:
enDeployTimerLvl1.removeEventListener(TimerEvent.TIMER, enDeployLvl1);
enDeployTimerLvl1.removeEventListener(TimerEvent.TIMER_COMPLETE, endOfEnemyDeployment);
break;
case 2:
enDeployTimerLvl2.removeEventListener(TimerEvent.TIMER, enDeployLvl2);
enDeployTimerLvl2.removeEventListener(TimerEvent.TIMER_COMPLETE, endOfEnemyDeployment);
break;
case 3:
enDeployTimerLvl3.removeEventListener(TimerEvent.TIMER, enDeployLvl3);
enDeployTimerLvl3.removeEventListener(TimerEvent.TIMER_COMPLETE, endOfEnemyDeployment);
break;
case 4:
enDeployTimerLvl4.removeEventListener(TimerEvent.TIMER, enDeployLvl4);
enDeployTimerLvl4.removeEventListener(TimerEvent.TIMER_COMPLETE, endOfEnemyDeployment);
break;
case 5:
enDeployTimerLvl5.removeEventListener(TimerEvent.TIMER, enDeployLvl5);
enDeployTimerLvl5.removeEventListener(TimerEvent.TIMER_COMPLETE, endOfEnemyDeployment);
break;
case 6:
enDeployTimerLvl6.removeEventListener(TimerEvent.TIMER, enDeployLvl6);
enDeployTimerLvl6.removeEventListener(TimerEvent.TIMER_COMPLETE, endOfEnemyDeployment);
break;
case 7:
enDeployTimerLvl7.removeEventListener(TimerEvent.TIMER, enDeployLvl7);
enDeployTimerLvl7.removeEventListener(TimerEvent.TIMER_COMPLETE, endOfEnemyDeployment);
break;
case 8:
enDeployTimerLvl8.removeEventListener(TimerEvent.TIMER, enDeployLvl8);
enDeployTimerLvl8.removeEventListener(TimerEvent.TIMER_COMPLETE, endOfEnemyDeployment);
break;
case 9:
enDeployTimerLvl9.removeEventListener(TimerEvent.TIMER, enDeployLvl9);
enDeployTimerLvl9.removeEventListener(TimerEvent.TIMER_COMPLETE, endOfEnemyDeployment);
break;
case 10:
enDeployTimerLvl10.removeEventListener(TimerEvent.TIMER, enDeployLvl10);
enDeployTimerLvl10.removeEventListener(TimerEvent.TIMER_COMPLETE, endOfEnemyDeployment);
break;
default:
break;
};
this.gotoAndStop("postLevelLost");
} else {
if (dead == "false"){
if (level < 11){
this.gotoAndStop("postLevelWin");
} else {
this.gotoAndStop("finish");
};
};
};
}
public function plyW7Snd(){
if (music == "on"){
w7Snd.play();
};
}
public function attEnemy7Ammo(_arg1:MovieClip){
var _local2:Enemy7Ammo;
_local2 = new Enemy7Ammo(_arg1);
lvlCntnr_mc.addChild(_local2);
enemyAmmo7Array.push(_local2);
}
public function moveSea(_arg1:MovieClip){
_arg1.x = (_arg1.x - 6);
if (_arg1.x <= -738.7){
if (_arg1 == lvlCntnr_mc.sea1){
lvlCntnr_mc.sea1.x = ((lvlCntnr_mc.sea2.x + lvlCntnr_mc.sea2.width) - 14);
};
if (_arg1 == lvlCntnr_mc.sea2){
lvlCntnr_mc.sea2.x = ((lvlCntnr_mc.sea1.x + lvlCntnr_mc.sea1.width) - 14);
};
};
}
public function suitSelectionSlider(){
if (suitCode == 1){
lifeNumerator = 100;
lifeDenominator = 100;
mouseFollowSpeed = 0.75;
Tweener.addTween(suitSelectionPanel1_mc.suitInfoPanel_mc.slider, {x:0, time:0.5, transition:"easeOutStrong"});
Tweener.addTween(suitSelectionPanel3_mc.suitPanel_mc.suitSelectioSlider_mc, {x:210, time:0.5, transition:"easeOutStrong"});
} else {
if (suitCode == 2){
lifeNumerator = 150;
lifeDenominator = 150;
mouseFollowSpeed = 0.81;
Tweener.addTween(suitSelectionPanel1_mc.suitInfoPanel_mc.slider, {x:-340, time:0.5, transition:"easeOutStrong"});
Tweener.addTween(suitSelectionPanel3_mc.suitPanel_mc.suitSelectioSlider_mc, {x:-3.8, time:0.5, transition:"easeOutStrong"});
} else {
if (suitCode == 3){
lifeNumerator = 200;
lifeDenominator = 200;
mouseFollowSpeed = 0.88;
Tweener.addTween(suitSelectionPanel1_mc.suitInfoPanel_mc.slider, {x:-670, time:0.5, transition:"easeOutStrong"});
Tweener.addTween(suitSelectionPanel3_mc.suitPanel_mc.suitSelectioSlider_mc, {x:-205, time:0.5, transition:"easeOutStrong"});
};
};
};
}
public function titleLooper(_arg1:Event){
if (this.currentFrame == 2){
cld(cld1_mc);
cld(cld2_mc);
cld(cld3_mc);
} else {
this.removeEventListener(Event.ENTER_FRAME, titleLooper);
};
}
public function lsoChecker(){
if (paperWarfareSharedObject.data.gameDataExist != undefined){
suitCode = paperWarfareSharedObject.data.suitCode_so;
lifeNumerator = paperWarfareSharedObject.data.lifeNumerator_so;
lifeDenominator = paperWarfareSharedObject.data.lifeDenominator_so;
lives = paperWarfareSharedObject.data.lives_so;
mouseFollowSpeed = paperWarfareSharedObject.data.mouseFollowSpeed_so;
killScore = 0;
killsOverall = paperWarfareSharedObject.data.killsOverall_so;
killsLevel = paperWarfareSharedObject.data.killsLevel_so;
level = paperWarfareSharedObject.data.level_so;
ammo1Inventory = paperWarfareSharedObject.data.ammo1Inventory_so;
ammo2Inventory = paperWarfareSharedObject.data.ammo2Inventory_so;
ammo3Inventory = paperWarfareSharedObject.data.ammo3Inventory_so;
ammo4Inventory = paperWarfareSharedObject.data.ammo4Inventory_so;
ammo5Inventory = paperWarfareSharedObject.data.ammo5Inventory_so;
ammo6Inventory = paperWarfareSharedObject.data.ammo6Inventory_so;
ammo7Inventory = paperWarfareSharedObject.data.ammo7Inventory_so;
ammo8Inventory = paperWarfareSharedObject.data.ammo8Inventory_so;
shield = paperWarfareSharedObject.data.shield_so;
emp = paperWarfareSharedObject.data.emp_so;
weaponArray = new Array();
if (level == 1){
weaponArray.push("w1");
weaponArray.push("w2");
} else {
if (level == 2){
weaponArray.push("w1");
weaponArray.push("w2");
weaponArray.push("w2");
} else {
if (level == 3){
weaponArray.push("w2");
weaponArray.push("w2");
weaponArray.push("w2");
weaponArray.push("w2");
} else {
if (level == 4){
weaponArray.push("w2");
weaponArray.push("w2");
weaponArray.push("w2");
weaponArray.push("w2");
weaponArray.push("w2");
} else {
if (level == 5){
weaponArray.push("w2");
weaponArray.push("w2");
weaponArray.push("w2");
weaponArray.push("w2");
weaponArray.push("w2");
} else {
if (level == 6){
weaponArray.push("w2");
weaponArray.push("w2");
weaponArray.push("w2");
weaponArray.push("w2");
weaponArray.push("w2");
weaponArray.push("w2");
} else {
if (level == 7){
weaponArray.push("w2");
weaponArray.push("w2");
weaponArray.push("w2");
weaponArray.push("w2");
weaponArray.push("w2");
weaponArray.push("w2");
weaponArray.push("w2");
} else {
if (level == 8){
weaponArray.push("w2");
weaponArray.push("w2");
weaponArray.push("w2");
weaponArray.push("w2");
weaponArray.push("w2");
weaponArray.push("w2");
weaponArray.push("w2");
} else {
if (level == 9){
weaponArray.push("w2");
weaponArray.push("w2");
weaponArray.push("w2");
weaponArray.push("w2");
weaponArray.push("w2");
weaponArray.push("w2");
weaponArray.push("w2");
weaponArray.push("w2");
} else {
if (level == 10){
weaponArray.push("w2");
weaponArray.push("w2");
weaponArray.push("w2");
weaponArray.push("w2");
weaponArray.push("w2");
weaponArray.push("w2");
weaponArray.push("w2");
weaponArray.push("w2");
};
};
};
};
};
};
};
};
};
};
} else {
suitCode = 1;
lifeNumerator = 100;
lifeDenominator = 100;
lives = 3;
mouseFollowSpeed = 0.75;
killScore = 0;
killsOverall = 0;
killsLevel = 0;
level = 1;
ammo1Inventory = ammo1Max;
ammo2Inventory = ammo2Max;
ammo3Inventory = ammo3Max;
ammo4Inventory = ammo4Max;
ammo5Inventory = ammo5Max;
ammo6Inventory = ammo6Max;
ammo7Inventory = ammo7Max;
ammo8Inventory = ammo8Max;
shield = "unarmed";
emp = "unarmed";
weaponArray = new Array();
weaponArray.push("proton");
weaponArray.push("burst");
};
}
public function animate(_arg1:MovieClip, _arg2:String, _arg3:Function, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Boolean){
disObj = _arg1;
propertyToAnimate = _arg2;
EasingFunction = _arg3;
beginPos = _arg4;
endPos = _arg5;
duration = _arg6;
useSeconds = _arg7;
twn = new Tween(_arg1, propertyToAnimate, EasingFunction, beginPos, endPos, duration, useSeconds);
}
public function updateKillScore(_arg1:Number){
killScore = (killScore + _arg1);
}
public function lsoDel(){
delete paperWarfareSharedObject.data.gameDataExist;
delete paperWarfareSharedObject.data.level_so;
delete paperWarfareSharedObject.data.killsOverall_so;
delete paperWarfareSharedObject.data.ammo1Inventory_so;
delete paperWarfareSharedObject.data.ammo2Inventory_so;
delete paperWarfareSharedObject.data.ammo3Inventory_so;
delete paperWarfareSharedObject.data.ammo4Inventory_so;
delete paperWarfareSharedObject.data.ammo5Inventory_so;
delete paperWarfareSharedObject.data.ammo6Inventory_so;
delete paperWarfareSharedObject.data.ammo7Inventory_so;
delete paperWarfareSharedObject.data.ammo8Inventory_so;
delete paperWarfareSharedObject.data.suitCode_so;
delete paperWarfareSharedObject.data.mouseFollowSpeed_so;
delete paperWarfareSharedObject.data.lifeNumerator_so;
delete paperWarfareSharedObject.data.lifeDenominator_so;
delete paperWarfareSharedObject.data.lives_so;
delete paperWarfareSharedObject.data.weaponArray_so;
delete paperWarfareSharedObject.data.shield_so;
delete paperWarfareSharedObject.data.emp_so;
}
public function attEnemy6Ammo(_arg1:MovieClip){
var _local2:Number;
var _local3:Number;
var _local4:Enemy6Ammo;
_local2 = 220;
_local3 = 0;
while (_local3 < 3) {
_local2 = (_local2 - 20);
_local4 = new Enemy6Ammo(_arg1, _local2);
lvlCntnr_mc.addChild(_local4);
enemyAmmo6Array.push(_local4);
_local3++;
};
}
public function deployEnemy(_arg1:TimerEvent){
}
public function instanceLooper(_arg1:Array){
var _local2:Number;
_local2 = (_arg1.length - 1);
while (_local2 >= 0) {
_arg1[_local2].looper();
_local2--;
};
}
public function enDeployLvl6(_arg1:TimerEvent){
enDeployLvl6Wave++;
trace(enDeployLvl6Wave);
switch (enDeployLvl6Wave){
case 1:
attEnemy1(1);
attEnemy3(1);
attEnemy4(1);
attEnemy6(1);
attEnemy7(1);
break;
case 2:
attEnemy2(1);
attEnemy5(1);
attEnemy6(1);
attEnemy7(1);
break;
case 3:
attEnemy3(1);
attEnemy4(1);
attEnemy6(1);
attEnemy7(1);
break;
case 4:
attPwrUp3();
attEnemy5(1);
attEnemy6(1);
attEnemy7(1);
break;
case 5:
attEnemy1(1);
attEnemy2(1);
attEnemy3(1);
attEnemy6(1);
attEnemy7(1);
break;
case 6:
attEnemy1(1);
attEnemy2(1);
attEnemy3(1);
break;
case 7:
attEnemy1(1);
attEnemy3(1);
attEnemy6(1);
attEnemy7(1);
break;
case 8:
attPwrUp6();
attEnemy3(1);
attEnemy5(1);
attEnemy7(1);
break;
case 9:
attEnemy1(1);
attEnemy3(1);
attEnemy5(1);
attEnemy6(1);
attEnemy7(1);
break;
case 10:
attEnemy1(1);
attEnemy2(1);
attEnemy4(1);
attEnemy6(1);
attEnemy7(1);
break;
case 11:
attEnemy1(1);
attEnemy3(1);
attEnemy6(1);
attEnemy7(1);
break;
case 12:
attPwrUp1();
attEnemy1(1);
attEnemy3(1);
attEnemy5(1);
attEnemy7(1);
break;
case 13:
attEnemy1(1);
attEnemy3(1);
attEnemy5(1);
attEnemy6(1);
attEnemy7(1);
break;
case 14:
attEnemy1(1);
attEnemy2(1);
attEnemy5(1);
attEnemy6(1);
attEnemy7(1);
break;
case 15:
attEnemy1(1);
attEnemy5(1);
attEnemy6(1);
attEnemy7(1);
break;
case 16:
attPwrUp6();
attEnemy1(1);
attEnemy3(1);
attEnemy5(1);
attEnemy6(1);
attEnemy7(1);
break;
case 17:
attEnemy1(1);
attEnemy2(1);
attEnemy4(1);
attEnemy5(1);
attEnemy7(1);
break;
case 18:
attEnemy1(1);
attEnemy5(1);
attEnemy6(1);
attEnemy7(1);
break;
case 19:
attEnemy1(1);
attEnemy2(1);
attEnemy3(1);
attEnemy7(1);
break;
case 20:
attPwrUp6();
attEnemy1(1);
attEnemy3(1);
attEnemy5(1);
attEnemy7(1);
break;
case 21:
attEnemy1(1);
attEnemy2(1);
attEnemy4(1);
attEnemy7(1);
break;
case 22:
attEnemy1(1);
attEnemy4(1);
attEnemy5(1);
attEnemy7(1);
break;
case 23:
attEnemy1(1);
attEnemy3(1);
attEnemy6(1);
attEnemy7(1);
break;
case 24:
attPwrUp1();
attEnemy1(1);
attEnemy4(1);
attEnemy6(1);
attEnemy7(1);
break;
case 25:
attEnemy1(1);
attEnemy4(1);
attEnemy5(1);
attEnemy7(1);
break;
case 26:
attEnemy1(1);
attEnemy2(1);
attEnemy4(1);
attEnemy5(1);
attEnemy7(1);
break;
case 27:
attEnemy1(1);
attEnemy3(1);
attEnemy5(1);
attEnemy7(1);
break;
case 28:
attPwrUp3();
attEnemy1(1);
attEnemy3(1);
attEnemy4(1);
attEnemy7(1);
break;
case 29:
attEnemy2(1);
attEnemy4(1);
attEnemy6(1);
attEnemy7(1);
break;
case 30:
attBoss2();
Tweener.addTween(bossLifeUI_mc, {y:459, time:1, transition:"linear"});
break;
default:
break;
};
}
public function enDeployLvl1(_arg1:TimerEvent){
enDeployLvl1Wave++;
trace(enDeployLvl1Wave);
switch (enDeployLvl1Wave){
case 1:
attEnemy1(1);
break;
case 2:
attEnemy2(1);
break;
case 3:
attEnemy1(2);
break;
case 4:
attPwrUp1();
attEnemy2(1);
break;
case 5:
attEnemy1(1);
break;
case 6:
attEnemy2(2);
break;
case 7:
attEnemy1(2);
break;
case 8:
attPwrUp3();
attEnemy1(2);
break;
case 9:
attEnemy2(2);
break;
case 10:
attEnemy1(2);
break;
case 11:
attEnemy2(2);
break;
case 12:
attPwrUp3();
attEnemy1(2);
break;
case 13:
attEnemy2(2);
break;
case 14:
attEnemy1(2);
break;
case 15:
attEnemy2(2);
break;
case 16:
attPwrUp1();
attEnemy1(2);
break;
case 17:
attEnemy2(2);
break;
case 18:
attEnemy1(2);
break;
default:
break;
};
}
public function enDeployLvl3(_arg1:TimerEvent){
enDeployLvl3Wave++;
trace(enDeployLvl3Wave);
switch (enDeployLvl3Wave){
case 1:
attEnemy4(2);
break;
case 2:
attEnemy3(1);
attEnemy4(1);
break;
case 3:
attEnemy1(1);
attEnemy2(1);
break;
case 4:
attPwrUp3();
attEnemy1(1);
attEnemy3(1);
attEnemy4(1);
break;
case 5:
attEnemy4(2);
break;
case 6:
attEnemy1(2);
attEnemy2(1);
attEnemy3(1);
attEnemy4(1);
break;
case 7:
attEnemy2(1);
attEnemy3(1);
attEnemy4(1);
break;
case 8:
attPwrUp3();
attEnemy3(2);
attEnemy4(1);
break;
case 9:
attEnemy1(1);
attEnemy2(1);
attEnemy4(1);
break;
case 10:
attEnemy1(2);
attEnemy4(1);
break;
case 11:
attEnemy2(1);
attEnemy3(1);
attEnemy4(1);
break;
case 12:
attPwrUp1();
attEnemy1(1);
attEnemy2(2);
attEnemy4(1);
break;
case 13:
attEnemy1(1);
attEnemy3(1);
attEnemy4(1);
break;
case 14:
attEnemy1(1);
attEnemy3(2);
attEnemy4(1);
break;
case 15:
attEnemy1(1);
attEnemy3(1);
attEnemy4(1);
break;
case 16:
attPwrUp1();
attEnemy1(1);
attEnemy3(2);
attEnemy4(1);
break;
case 17:
attEnemy1(1);
attEnemy2(1);
attEnemy3(1);
attEnemy4(1);
break;
case 18:
attEnemy1(2);
attEnemy2(1);
attEnemy4(1);
break;
case 19:
attEnemy2(2);
attEnemy3(1);
attEnemy4(1);
break;
case 20:
attPwrUp3();
attEnemy2(2);
attEnemy4(1);
break;
case 21:
attEnemy1(1);
attEnemy3(2);
attEnemy4(1);
break;
case 22:
attBoss1();
Tweener.addTween(bossLifeUI_mc, {y:459, time:1, transition:"linear"});
break;
default:
break;
};
}
public function enDeployLvl5(_arg1:TimerEvent){
enDeployLvl5Wave++;
trace(enDeployLvl5Wave);
switch (enDeployLvl5Wave){
case 1:
attEnemy2(1);
attEnemy4(1);
attEnemy5(1);
attEnemy6(1);
break;
case 2:
attEnemy1(1);
attEnemy2(1);
attEnemy4(1);
attEnemy5(1);
attEnemy6(1);
break;
case 3:
attEnemy1(1);
attEnemy2(1);
attEnemy3(1);
attEnemy4(1);
attEnemy6(1);
break;
case 4:
attPwrUp3();
attEnemy2(1);
attEnemy3(1);
attEnemy5(1);
attEnemy6(1);
break;
case 5:
attEnemy1(1);
attEnemy2(1);
attEnemy3(1);
attEnemy5(1);
attEnemy6(1);
break;
case 6:
attEnemy1(1);
attEnemy3(1);
attEnemy4(1);
attEnemy5(1);
attEnemy6(1);
break;
case 7:
attEnemy1(1);
attEnemy4(1);
attEnemy5(1);
attEnemy6(1);
break;
case 8:
attPwrUp6();
attEnemy1(1);
attEnemy2(1);
attEnemy4(1);
attEnemy5(1);
attEnemy6(1);
break;
case 9:
attEnemy1(1);
attEnemy2(1);
attEnemy3(1);
attEnemy5(1);
attEnemy6(1);
break;
case 10:
attEnemy2(1);
attEnemy3(1);
attEnemy5(1);
attEnemy6(1);
break;
case 11:
attEnemy2(1);
attEnemy3(1);
attEnemy4(1);
attEnemy5(1);
attEnemy6(1);
break;
case 12:
attPwrUp3();
attEnemy2(1);
attEnemy4(1);
attEnemy5(1);
attEnemy6(1);
break;
case 13:
attEnemy1(1);
attEnemy3(1);
attEnemy4(1);
attEnemy5(1);
attEnemy6(1);
break;
case 14:
attEnemy1(1);
attEnemy2(1);
attEnemy3(1);
attEnemy4(1);
attEnemy6(1);
break;
case 15:
attEnemy1(1);
attEnemy3(1);
attEnemy4(1);
attEnemy6(1);
break;
case 16:
attPwrUp1();
attEnemy1(1);
attEnemy2(1);
attEnemy4(1);
attEnemy5(1);
attEnemy6(1);
break;
case 17:
attEnemy1(1);
attEnemy2(1);
attEnemy3(1);
attEnemy4(1);
break;
case 18:
attEnemy1(1);
attEnemy2(1);
attEnemy4(1);
attEnemy5(1);
attEnemy6(1);
break;
case 19:
attEnemy1(1);
attEnemy2(1);
attEnemy3(1);
attEnemy5(1);
attEnemy6(1);
break;
case 20:
attPwrUp6();
attEnemy1(1);
attEnemy2(1);
attEnemy3(1);
attEnemy5(1);
break;
case 21:
attEnemy1(1);
attEnemy3(1);
attEnemy4(1);
attEnemy5(1);
attEnemy6(1);
break;
case 22:
attEnemy1(1);
attEnemy2(1);
attEnemy3(1);
attEnemy4(1);
attEnemy5(1);
break;
case 23:
attEnemy3(1);
attEnemy4(1);
attEnemy5(1);
attEnemy6(1);
break;
case 24:
attPwrUp2();
attEnemy1(1);
attEnemy2(1);
attEnemy3(1);
attEnemy6(1);
break;
case 25:
attEnemy3(1);
attEnemy4(1);
attEnemy5(1);
attEnemy6(1);
break;
case 26:
attEnemy1(1);
attEnemy2(1);
attEnemy5(1);
attEnemy6(1);
break;
case 27:
attEnemy1(1);
attEnemy2(1);
attEnemy4(1);
attEnemy5(1);
attEnemy6(1);
break;
case 28:
attPwrUp3();
attEnemy1(1);
attEnemy2(1);
attEnemy3(1);
attEnemy4(1);
attEnemy5(1);
attEnemy6(1);
break;
case 29:
attEnemy1(1);
attEnemy2(1);
attEnemy4(1);
attEnemy5(1);
attEnemy6(1);
break;
case 30:
attEnemy1(1);
attEnemy2(1);
attEnemy3(1);
attEnemy4(1);
attEnemy5(1);
attEnemy6(1);
break;
default:
break;
};
}
public function enDeployLvl8(_arg1:TimerEvent){
enDeployLvl8Wave++;
switch (enDeployLvl8Wave){
case 1:
attEnemy1(1);
attEnemy3(1);
attEnemy4(1);
attEnemy6(1);
attEnemy9(1);
break;
case 2:
attEnemy2(1);
attEnemy4(1);
attEnemy8(2);
attEnemy6(1);
attEnemy7(1);
break;
case 3:
attEnemy3(2);
attEnemy4(1);
attEnemy9(1);
attEnemy6(1);
attEnemy7(1);
break;
case 4:
attPwrUp7();
attEnemy9(1);
attEnemy5(1);
attEnemy8(1);
attEnemy7(1);
break;
case 5:
attEnemy1(1);
attEnemy9(1);
attEnemy3(1);
attEnemy6(1);
attEnemy7(1);
break;
case 6:
attEnemy1(1);
attEnemy2(1);
attEnemy8(2);
break;
case 7:
attEnemy1(1);
attEnemy9(1);
attEnemy6(1);
attEnemy7(1);
break;
case 8:
attPwrUp3();
attEnemy3(2);
attEnemy9(1);
attEnemy7(1);
break;
case 9:
attEnemy1(1);
attEnemy3(1);
attEnemy5(1);
attEnemy8(1);
attEnemy7(1);
break;
case 10:
attEnemy9(1);
attEnemy2(1);
attEnemy4(1);
attEnemy6(1);
attEnemy8(1);
break;
case 11:
attEnemy1(1);
attEnemy3(2);
attEnemy6(1);
attEnemy7(1);
break;
case 12:
attPwrUp6();
attEnemy9(1);
attEnemy3(1);
attEnemy8(1);
attEnemy7(1);
break;
case 13:
attEnemy1(1);
attEnemy3(2);
attEnemy8(1);
attEnemy6(1);
attEnemy9(1);
break;
case 14:
attEnemy1(1);
attEnemy2(2);
attEnemy8(1);
attEnemy6(1);
attEnemy7(1);
break;
case 15:
attEnemy1(1);
attEnemy9(1);
attEnemy6(1);
attEnemy7(1);
break;
case 16:
attPwrUp3();
attEnemy1(1);
attEnemy3(1);
attEnemy8(1);
attEnemy9(1);
attEnemy7(1);
break;
case 17:
attEnemy1(1);
attEnemy2(2);
attEnemy4(1);
attEnemy8(1);
attEnemy9(1);
break;
case 18:
attEnemy1(1);
attEnemy9(1);
attEnemy6(1);
attEnemy7(1);
break;
case 19:
attEnemy1(2);
attEnemy2(1);
attEnemy3(1);
attEnemy9(1);
break;
case 20:
attPwrUp1();
attEnemy1(1);
attEnemy3(1);
attEnemy9(1);
attEnemy7(1);
break;
case 21:
attEnemy1(2);
attEnemy2(1);
attEnemy9(1);
attEnemy7(1);
break;
case 22:
attEnemy1(1);
attEnemy9(1);
attEnemy8(1);
attEnemy7(1);
break;
case 23:
attEnemy1(1);
attEnemy3(1);
attEnemy8(2);
attEnemy7(1);
break;
case 24:
attPwrUp3();
attEnemy1(1);
attEnemy9(1);
attEnemy8(2);
attEnemy7(1);
break;
case 25:
attEnemy1(2);
attEnemy4(1);
attEnemy9(1);
attEnemy7(1);
break;
case 26:
attEnemy1(1);
attEnemy2(1);
attEnemy4(1);
attEnemy8(1);
attEnemy7(1);
break;
case 27:
attEnemy1(1);
attEnemy9(2);
attEnemy5(1);
attEnemy7(1);
break;
case 28:
attPwrUp7();
attEnemy1(1);
attEnemy3(1);
attEnemy4(1);
attEnemy9(1);
break;
case 29:
attEnemy2(1);
attEnemy4(1);
attEnemy6(1);
attEnemy8(1);
break;
case 30:
attEnemy1(1);
attEnemy2(1);
attEnemy3(1);
attEnemy8(1);
attEnemy6(1);
attEnemy9(1);
break;
case 31:
attEnemy1(1);
attEnemy2(1);
attEnemy3(1);
attEnemy8(1);
attEnemy6(1);
attEnemy9(1);
break;
case 32:
attPwrUp1();
attEnemy9(1);
attEnemy2(1);
attEnemy3(1);
attEnemy8(1);
attEnemy6(1);
attEnemy9(1);
break;
case 33:
attEnemy1(1);
attEnemy9(1);
attEnemy3(1);
attEnemy8(1);
attEnemy6(1);
attEnemy9(1);
break;
case 34:
attEnemy1(1);
attEnemy2(1);
attEnemy9(1);
attEnemy8(1);
attEnemy6(1);
attEnemy9(1);
break;
case 35:
attPwrUp3();
attEnemy9(1);
attEnemy2(1);
attEnemy3(1);
attEnemy8(1);
attEnemy6(1);
attEnemy9(1);
break;
default:
break;
};
}
public function enDeployLvl2(_arg1:TimerEvent){
enDeployLvl2Wave++;
trace(enDeployLvl2Wave);
switch (enDeployLvl2Wave){
case 1:
attEnemy3(1);
break;
case 2:
attEnemy2(1);
attEnemy3(1);
break;
case 3:
attEnemy2(2);
break;
case 4:
attPwrUp1();
attEnemy2(1);
attEnemy3(1);
break;
case 5:
attEnemy1(2);
attEnemy3(1);
break;
case 6:
attEnemy1(1);
attEnemy2(2);
break;
case 7:
attEnemy2(2);
attEnemy3(1);
break;
case 8:
attPwrUp3();
attEnemy2(1);
attEnemy3(1);
break;
case 9:
attEnemy1(1);
attEnemy3(2);
break;
case 10:
attEnemy2(1);
attEnemy3(1);
break;
case 11:
attEnemy1(1);
attEnemy3(2);
break;
case 12:
attPwrUp3();
attEnemy2(1);
attEnemy3(1);
break;
case 13:
attEnemy1(2);
attEnemy3(1);
break;
case 14:
attEnemy2(1);
attEnemy3(1);
break;
case 15:
attEnemy1(1);
attEnemy3(2);
break;
case 16:
attPwrUp1();
attEnemy1(1);
attEnemy3(1);
break;
case 17:
attEnemy2(2);
attEnemy3(1);
break;
case 18:
attEnemy2(1);
attEnemy3(1);
break;
case 19:
attEnemy1(1);
attEnemy3(2);
break;
case 20:
attPwrUp3();
attEnemy3(2);
break;
default:
break;
};
}
public function enDeployLvl4(_arg1:TimerEvent){
enDeployLvl4Wave++;
trace(enDeployLvl4Wave);
switch (enDeployLvl4Wave){
case 1:
attEnemy2(1);
attEnemy3(1);
attEnemy5(1);
break;
case 2:
attEnemy1(1);
attEnemy3(1);
attEnemy5(1);
break;
case 3:
attEnemy4(1);
attEnemy5(1);
break;
case 4:
attPwrUp1();
attEnemy1(1);
attEnemy2(1);
attEnemy3(1);
attEnemy5(1);
break;
case 5:
attEnemy1(1);
attEnemy2(1);
attEnemy4(1);
break;
case 6:
attEnemy1(1);
attEnemy4(1);
attEnemy5(1);
break;
case 7:
attEnemy3(1);
attEnemy4(1);
attEnemy5(1);
break;
case 8:
attPwrUp3();
attEnemy1(2);
attEnemy2(1);
attEnemy5(1);
break;
case 9:
attEnemy1(1);
attEnemy4(2);
attEnemy5(1);
break;
case 10:
attEnemy2(2);
attEnemy4(1);
attEnemy5(1);
break;
case 11:
attEnemy4(1);
break;
case 12:
attPwrUp1();
attEnemy1(1);
attEnemy2(1);
attEnemy4(1);
break;
case 13:
attEnemy1(1);
attEnemy4(1);
attEnemy5(1);
break;
case 14:
attEnemy3(1);
attEnemy4(1);
attEnemy5(1);
break;
case 15:
attEnemy2(1);
attEnemy3(1);
attEnemy5(1);
break;
case 16:
attPwrUp3();
attEnemy2(1);
attEnemy3(1);
attEnemy4(1);
break;
case 17:
attEnemy1(1);
attEnemy2(1);
attEnemy3(1);
attEnemy5(1);
break;
case 18:
attEnemy1(1);
attEnemy4(1);
attEnemy5(1);
break;
case 19:
attEnemy1(1);
attEnemy4(1);
attEnemy5(1);
break;
case 20:
attPwrUp3();
attEnemy3(1);
attEnemy4(1);
attEnemy5(1);
break;
case 21:
attEnemy1(1);
attEnemy3(1);
attEnemy5(1);
break;
case 22:
attEnemy1(1);
attEnemy2(1);
attEnemy4(1);
attEnemy5(1);
break;
case 23:
attEnemy2(1);
attEnemy3(1);
attEnemy5(1);
break;
case 24:
attPwrUp2();
attEnemy1(1);
attEnemy2(1);
attEnemy3(1);
attEnemy4(1);
break;
case 25:
attEnemy1(1);
attEnemy4(1);
attEnemy5(1);
break;
default:
break;
};
}
public function attPwrUpInfo(_arg1:MovieClip, _arg2:Number){
var _local3:PowerUpInfo;
_local3 = new PowerUpInfo(_arg1.x, (_arg1.y - 50), _arg2);
lvlCntnr_mc.addChild(_local3);
powerupArray.push(_local3);
}
public function lpr(_arg1:Event){
if ((((level == 1)) && ((levelComplete == false)))){
if ((((enDeployLvl1Wave >= enDeployLvl1WaveMax)) && ((enemyArray.length == 0)))){
updateLvl();
};
};
if ((((level == 2)) && ((levelComplete == false)))){
if ((((enDeployLvl2Wave >= enDeployLvl2WaveMax)) && ((enemyArray.length == 0)))){
updateLvl();
};
};
if ((((level == 3)) && ((levelComplete == false)))){
if ((((((enDeployLvl3Wave >= enDeployLvl3WaveMax)) && ((enemyArray.length == 0)))) && ((bossArray.length == 0)))){
updateLvl();
};
};
if ((((level == 4)) && ((levelComplete == false)))){
if ((((enDeployLvl4Wave >= enDeployLvl4WaveMax)) && ((enemyArray.length == 0)))){
updateLvl();
};
};
if ((((level == 5)) && ((levelComplete == false)))){
if ((((enDeployLvl5Wave >= enDeployLvl5WaveMax)) && ((enemyArray.length == 0)))){
updateLvl();
};
};
if ((((level == 6)) && ((levelComplete == false)))){
if ((((((enDeployLvl6Wave >= enDeployLvl6WaveMax)) && ((enemyArray.length == 0)))) && ((bossArray.length == 0)))){
updateLvl();
};
};
if ((((level == 7)) && ((levelComplete == false)))){
if ((((enDeployLvl7Wave >= enDeployLvl7WaveMax)) && ((enemyArray.length == 0)))){
updateLvl();
};
};
if ((((level == 8)) && ((levelComplete == false)))){
if ((((enDeployLvl8Wave >= enDeployLvl8WaveMax)) && ((enemyArray.length == 0)))){
updateLvl();
};
};
if ((((level == 9)) && ((levelComplete == false)))){
if ((((enDeployLvl9Wave >= enDeployLvl9WaveMax)) && ((enemyArray.length == 0)))){
updateLvl();
};
};
if ((((level == 10)) && ((levelComplete == false)))){
if ((((((enDeployLvl10Wave >= enDeployLvl10WaveMax)) && ((enemyArray.length == 0)))) && ((bossArray.length == 0)))){
updateLvl();
};
};
if (gameState == "running"){
moveCloud(lvlCntnr_mc.cld1_mc);
moveCloud(lvlCntnr_mc.cld2_mc);
moveCloud(lvlCntnr_mc.cld3_mc);
moveCloud(lvlCntnr_mc.cld4_mc);
if (nwLvl == 1){
moveMountain(lvlCntnr_mc.m1);
moveMountain(lvlCntnr_mc.m2);
moveMountain(lvlCntnr_mc.m3);
moveMountain(lvlCntnr_mc.m4);
} else {
if (nwLvl == 2){
moveMountain(lvlCntnr_mc.m1);
moveMountain(lvlCntnr_mc.m2);
moveMountain(lvlCntnr_mc.m3);
moveMountain(lvlCntnr_mc.m4);
moveSea(lvlCntnr_mc.sea1);
moveSea(lvlCntnr_mc.sea2);
} else {
if (nwLvl == 3){
moveMountain(lvlCntnr_mc.m1);
moveMountain(lvlCntnr_mc.m2);
moveMountain(lvlCntnr_mc.m3);
moveMountain(lvlCntnr_mc.m4);
} else {
if (nwLvl == 4){
moveSand(lvlCntnr_mc.s1, 2.5);
moveSand(lvlCntnr_mc.s2, 2.5);
moveSand(lvlCntnr_mc.s3, 1);
moveSand(lvlCntnr_mc.s4, 1);
moveSand(lvlCntnr_mc.s5, 0.2);
moveSand(lvlCntnr_mc.s6, 0.2);
moveDesertHouse(lvlCntnr_mc.dh1);
moveDesertHouse(lvlCntnr_mc.dh2);
moveDesertHouse(lvlCntnr_mc.dh3);
} else {
if (nwLvl == 5){
moveSand(lvlCntnr_mc.s1, 2.5);
moveSand(lvlCntnr_mc.s2, 2.5);
moveSand(lvlCntnr_mc.s3, 1);
moveSand(lvlCntnr_mc.s4, 1);
moveSand(lvlCntnr_mc.s5, 0.2);
moveSand(lvlCntnr_mc.s6, 0.2);
moveDesertHouse(lvlCntnr_mc.dh1);
moveDesertHouse(lvlCntnr_mc.dh2);
moveDesertHouse(lvlCntnr_mc.dh3);
} else {
if (nwLvl == 6){
moveSand(lvlCntnr_mc.s1, 2.5);
moveSand(lvlCntnr_mc.s2, 2.5);
moveSand(lvlCntnr_mc.s3, 1);
moveSand(lvlCntnr_mc.s4, 1);
moveSand(lvlCntnr_mc.s5, 0.2);
moveSand(lvlCntnr_mc.s6, 0.2);
moveDesertHouse(lvlCntnr_mc.dh1);
moveDesertHouse(lvlCntnr_mc.dh2);
moveDesertHouse(lvlCntnr_mc.dh3);
} else {
if (nwLvl == 7){
moveRoad(lvlCntnr_mc.road1);
moveRoad(lvlCntnr_mc.road2);
moveBuilding(lvlCntnr_mc.b1);
moveBuilding(lvlCntnr_mc.b2);
moveBuilding(lvlCntnr_mc.b3);
moveBuilding(lvlCntnr_mc.b4);
moveBuilding(lvlCntnr_mc.b5);
moveBuilding(lvlCntnr_mc.b6);
moveBuilding(lvlCntnr_mc.b7);
moveBuilding(lvlCntnr_mc.b8);
moveBuilding(lvlCntnr_mc.b9);
moveBuilding(lvlCntnr_mc.b10);
moveMountain(lvlCntnr_mc.m1);
moveMountain(lvlCntnr_mc.m2);
moveMountain(lvlCntnr_mc.m3);
moveMountain(lvlCntnr_mc.m4);
} else {
if (nwLvl == 8){
moveRoad(lvlCntnr_mc.road1);
moveRoad(lvlCntnr_mc.road2);
moveBuilding(lvlCntnr_mc.b1);
moveBuilding(lvlCntnr_mc.b2);
moveBuilding(lvlCntnr_mc.b3);
moveBuilding(lvlCntnr_mc.b4);
moveBuilding(lvlCntnr_mc.b5);
moveBuilding(lvlCntnr_mc.b6);
moveBuilding(lvlCntnr_mc.b7);
moveBuilding(lvlCntnr_mc.b8);
moveBuilding(lvlCntnr_mc.b9);
moveBuilding(lvlCntnr_mc.b10);
moveMountain(lvlCntnr_mc.m1);
moveMountain(lvlCntnr_mc.m2);
moveMountain(lvlCntnr_mc.m3);
moveMountain(lvlCntnr_mc.m4);
} else {
if (nwLvl == 9){
moveRoad(lvlCntnr_mc.road1);
moveRoad(lvlCntnr_mc.road2);
moveBuilding(lvlCntnr_mc.b1);
moveBuilding(lvlCntnr_mc.b2);
moveBuilding(lvlCntnr_mc.b3);
moveBuilding(lvlCntnr_mc.b4);
moveBuilding(lvlCntnr_mc.b5);
moveBuilding(lvlCntnr_mc.b6);
moveBuilding(lvlCntnr_mc.b7);
moveBuilding(lvlCntnr_mc.b8);
moveBuilding(lvlCntnr_mc.b9);
moveBuilding(lvlCntnr_mc.b10);
moveMountain(lvlCntnr_mc.m1);
moveMountain(lvlCntnr_mc.m2);
moveMountain(lvlCntnr_mc.m3);
moveMountain(lvlCntnr_mc.m4);
moveTree(lvlCntnr_mc.t1);
moveTree(lvlCntnr_mc.t2);
moveTree(lvlCntnr_mc.t3);
moveTree(lvlCntnr_mc.t4);
moveTree(lvlCntnr_mc.t5);
moveTree(lvlCntnr_mc.t6);
moveTree(lvlCntnr_mc.t7);
moveTree(lvlCntnr_mc.t8);
moveTree(lvlCntnr_mc.t9);
} else {
if (nwLvl == 10){
moveRoad(lvlCntnr_mc.road1);
moveRoad(lvlCntnr_mc.road2);
moveBuilding(lvlCntnr_mc.b1);
moveBuilding(lvlCntnr_mc.b2);
moveBuilding(lvlCntnr_mc.b3);
moveBuilding(lvlCntnr_mc.b4);
moveBuilding(lvlCntnr_mc.b5);
moveBuilding(lvlCntnr_mc.b6);
moveBuilding(lvlCntnr_mc.b7);
moveBuilding(lvlCntnr_mc.b8);
moveBuilding(lvlCntnr_mc.b9);
moveBuilding(lvlCntnr_mc.b10);
moveMountain(lvlCntnr_mc.m1);
moveMountain(lvlCntnr_mc.m2);
moveMountain(lvlCntnr_mc.m3);
moveMountain(lvlCntnr_mc.m4);
moveTree(lvlCntnr_mc.t1);
moveTree(lvlCntnr_mc.t2);
moveTree(lvlCntnr_mc.t3);
moveTree(lvlCntnr_mc.t4);
moveTree(lvlCntnr_mc.t5);
moveTree(lvlCntnr_mc.t6);
moveTree(lvlCntnr_mc.t7);
moveTree(lvlCntnr_mc.t8);
moveTree(lvlCntnr_mc.t9);
};
};
};
};
};
};
};
};
};
};
plyrAmmoAndEnemyCheckHit(playerAmmo1Arr, enemyArray, 4);
plyrAmmoAndEnemyCheckHit(playerAmmo2Arr, enemyArray, 11);
plyrAmmoAndEnemyCheckHit(playerAmmo3Arr, enemyArray, 11);
plyrAmmoAndEnemyCheckHit(playerAmmo4Arr, enemyArray, 8);
plyrAmmoAndEnemyCheckHit(playerAmmo5Arr, enemyArray, 8);
plyrAmmoAndEnemyCheckHit(playerAmmo6Arr, enemyArray, 10);
plyrAmmoAndEnemyCheckHit(playerAmmo7Arr, enemyArray, 100);
plyrAmmoAndEnemyCheckHit(playerAmmo8Arr, enemyArray, 100);
plyrAmmoAndEnemyCheckHit(playerAmmo8aArr, enemyArray, 100);
plyrAmmoAndEnemyCheckHit(playerAmmo8bArr, enemyArray, 100);
plyrAmmoAndEnemyCheckHit(playerAmmo1Arr, bossArray, 4);
plyrAmmoAndEnemyCheckHit(playerAmmo2Arr, bossArray, 8);
plyrAmmoAndEnemyCheckHit(playerAmmo3Arr, bossArray, 11);
plyrAmmoAndEnemyCheckHit(playerAmmo4Arr, bossArray, 8);
plyrAmmoAndEnemyCheckHit(playerAmmo5Arr, bossArray, 10);
plyrAmmoAndEnemyCheckHit(playerAmmo6Arr, bossArray, 4);
plyrAmmoAndEnemyCheckHit(playerAmmo7Arr, bossArray, 20);
plyrAmmoAndEnemyCheckHit(playerAmmo8Arr, bossArray, 10);
plyrAmmoAndEnemyCheckHit(playerAmmo8aArr, bossArray, 12);
plyrAmmoAndEnemyCheckHit(playerAmmo8bArr, bossArray, 12);
plyrAmmoAndEnemyCheckHit(playerAmmo1Arr, enemyAmmo5Array, 100);
plyrAmmoAndEnemyCheckHit(playerAmmo2Arr, enemyAmmo5Array, 100);
plyrAmmoAndEnemyCheckHit(playerAmmo3Arr, enemyAmmo5Array, 100);
plyrAmmoAndEnemyCheckHit(playerAmmo4Arr, enemyAmmo5Array, 100);
plyrAmmoAndEnemyCheckHit(playerAmmo5Arr, enemyAmmo5Array, 100);
plyrAmmoAndEnemyCheckHit(playerAmmo6Arr, enemyAmmo5Array, 100);
plyrAmmoAndEnemyCheckHit(playerAmmo7Arr, enemyAmmo5Array, 100);
plyrAmmoAndEnemyCheckHit(playerAmmo8Arr, enemyAmmo5Array, 100);
plyrAmmoAndEnemyCheckHit(playerAmmo8aArr, enemyAmmo5Array, 100);
plyrAmmoAndEnemyCheckHit(playerAmmo8bArr, enemyAmmo5Array, 100);
plyrAmmoAndEnemyCheckHit(playerAmmo1Arr, boss2Ammo2Array, 100);
plyrAmmoAndEnemyCheckHit(playerAmmo2Arr, boss2Ammo2Array, 100);
plyrAmmoAndEnemyCheckHit(playerAmmo3Arr, boss2Ammo2Array, 100);
plyrAmmoAndEnemyCheckHit(playerAmmo4Arr, boss2Ammo2Array, 100);
plyrAmmoAndEnemyCheckHit(playerAmmo5Arr, boss2Ammo2Array, 100);
plyrAmmoAndEnemyCheckHit(playerAmmo6Arr, boss2Ammo2Array, 100);
plyrAmmoAndEnemyCheckHit(playerAmmo7Arr, boss2Ammo2Array, 100);
plyrAmmoAndEnemyCheckHit(playerAmmo8Arr, boss2Ammo2Array, 100);
plyrAmmoAndEnemyCheckHit(playerAmmo8aArr, boss2Ammo2Array, 100);
plyrAmmoAndEnemyCheckHit(playerAmmo8bArr, boss2Ammo2Array, 100);
plyrAmmoAndEnemyCheckHit(playerAmmo1Arr, boss3Ammo3Array, 100);
plyrAmmoAndEnemyCheckHit(playerAmmo2Arr, boss3Ammo3Array, 100);
plyrAmmoAndEnemyCheckHit(playerAmmo3Arr, boss3Ammo3Array, 100);
plyrAmmoAndEnemyCheckHit(playerAmmo4Arr, boss3Ammo3Array, 100);
plyrAmmoAndEnemyCheckHit(playerAmmo5Arr, boss3Ammo3Array, 100);
plyrAmmoAndEnemyCheckHit(playerAmmo6Arr, boss3Ammo3Array, 100);
plyrAmmoAndEnemyCheckHit(playerAmmo7Arr, boss3Ammo3Array, 100);
plyrAmmoAndEnemyCheckHit(playerAmmo8Arr, boss3Ammo3Array, 100);
plyrAmmoAndEnemyCheckHit(playerAmmo8aArr, boss3Ammo3Array, 100);
plyrAmmoAndEnemyCheckHit(playerAmmo8bArr, boss3Ammo3Array, 100);
plyrSpecialAndEnemyCheckHit(playerSpecial1Arr, enemyAmmo1Array, 20);
plyrSpecialAndEnemyCheckHit(playerSpecial1Arr, enemyAmmo2Array, 20);
plyrSpecialAndEnemyCheckHit(playerSpecial1Arr, enemyAmmo3Array, 20);
plyrSpecialAndEnemyCheckHit(playerSpecial1Arr, enemyAmmo4Array, 20);
plyrSpecialAndEnemyCheckHit(playerSpecial1Arr, enemyAmmo5Array, 20);
plyrSpecialAndEnemyCheckHit(playerSpecial1Arr, enemyAmmo6Array, 20);
plyrSpecialAndEnemyCheckHit(playerSpecial1Arr, enemyAmmo7Array, 20);
plyrSpecialAndEnemyCheckHit(playerSpecial1Arr, enemyAmmo8Array, 20);
plyrSpecialAndEnemyCheckHit(playerSpecial1Arr, enemyAmmo9Array, 20);
plyrSpecialAndEnemyCheckHit(playerSpecial1Arr, enemyAmmo10Array, 20);
plyrSpecialAndEnemyCheckHit(playerSpecial1Arr, enemyArray, 20);
plyrSpecialAndEnemyCheckHit(playerSpecial1Arr, boss1Ammo1Array, 20);
plyrSpecialAndEnemyCheckHit(playerSpecial1Arr, boss2Ammo1Array, 20);
plyrSpecialAndEnemyCheckHit(playerSpecial1Arr, boss2Ammo2Array, 20);
plyrSpecialAndEnemyCheckHit(playerSpecial1Arr, boss3Ammo1Array, 20);
plyrSpecialAndEnemyCheckHit(playerSpecial1Arr, boss3Ammo2Array, 20);
plyrSpecialAndEnemyCheckHit(playerSpecial1Arr, boss3Ammo3Array, 20);
plyrSpecialAndEnemyCheckHit(playerSpecial2Arr, enemyAmmo5Array, 20);
plyrSpecialAndEnemyCheckHit(playerSpecial2Arr, enemyArray, 20);
enemyAndPlyrCheckHit(enemyArray);
enemyAmmoAndPlayrCheckHit(enemyAmmo1Array, 2);
enemyAmmoAndPlayrCheckHit(enemyAmmo2Array, 3);
enemyAmmoAndPlayrCheckHit(enemyAmmo3Array, 5);
enemyAmmoAndPlayrCheckHit(enemyAmmo4Array, 5);
enemyAmmoAndPlayrCheckHit(enemyAmmo5Array, 7);
enemyAmmoAndPlayrCheckHit(enemyAmmo6Array, 3);
enemyAmmoAndPlayrCheckHit(enemyAmmo7Array, 3);
enemyAmmoAndPlayrCheckHit(enemyAmmo8Array, 3);
enemyAmmoAndPlayrCheckHit(enemyAmmo9Array, 4);
enemyAmmoAndPlayrCheckHit(enemyAmmo10Array, 5);
enemyAmmoAndPlayrCheckHit(boss1Ammo1Array, 5);
enemyAmmoAndPlayrCheckHit(boss2Ammo1Array, 6);
enemyAmmoAndPlayrCheckHit(boss2Ammo2Array, 7);
enemyAmmoAndPlayrCheckHit(boss3Ammo1Array, 6);
enemyAmmoAndPlayrCheckHit(boss3Ammo2Array, 5);
enemyAmmoAndPlayrCheckHit(boss3Ammo3Array, 5);
instanceLooper(playerAmmo1Arr);
instanceLooper(playerAmmo2Arr);
instanceLooper(playerAmmo3Arr);
instanceLooper(playerAmmo4Arr);
instanceLooper(playerAmmo5Arr);
instanceLooper(playerAmmo6Arr);
instanceLooper(playerAmmo7Arr);
instanceLooper(playerAmmo8Arr);
instanceLooper(playerAmmo8aArr);
instanceLooper(playerAmmo8bArr);
instanceLooper(playerSpecial1Arr);
instanceLooper(playerSpecial2Arr);
instanceLooper(enemyArray);
instanceLooper(enemyAmmoArray);
instanceLooper(enemyAmmo1Array);
instanceLooper(enemyAmmo2Array);
instanceLooper(enemyAmmo3Array);
instanceLooper(enemyAmmo4Array);
instanceLooper(enemyAmmo5Array);
instanceLooper(enemyAmmo6Array);
instanceLooper(enemyAmmo7Array);
instanceLooper(enemyAmmo8Array);
instanceLooper(enemyAmmo9Array);
instanceLooper(enemyAmmo10Array);
instanceLooper(bossArray);
instanceLooper(boss1Ammo1Array);
instanceLooper(boss2Ammo1Array);
instanceLooper(boss2Ammo2Array);
instanceLooper(boss3Ammo1Array);
instanceLooper(boss3Ammo2Array);
instanceLooper(boss3Ammo3Array);
instanceLooper(powerupArray);
instanceLooper(smokeArray);
instanceLooper(debrisArray);
instanceLooper(explosionArray);
updateUI();
if (suitCode == 3){
mouseFollowControl(lvlCntnr_mc.hevArmor_mc);
plyrAnimation(lvlCntnr_mc.hevArmor_mc);
weaponToBeShown(lvlCntnr_mc.hevArmor_mc.weapon_mc);
} else {
if (suitCode == 2){
mouseFollowControl(lvlCntnr_mc.medArmor_mc);
plyrAnimation(lvlCntnr_mc.medArmor_mc);
weaponToBeShown(lvlCntnr_mc.medArmor_mc.weapon_mc);
} else {
if (suitCode == 1){
mouseFollowControl(lvlCntnr_mc.lightArmor_mc);
plyrAnimation(lvlCntnr_mc.lightArmor_mc);
weaponToBeShown(lvlCntnr_mc.lightArmor_mc.weapon_mc);
};
};
};
firingFunction();
playerTrail();
};
}
public function attSmokeTrail(_arg1:MovieClip){
var _local2:SmokeTrail;
_local2 = new SmokeTrail(_arg1);
lvlCntnr_mc.addChild(_local2);
smokeArray.push(_local2);
}
public function enDeployLvl7(_arg1:TimerEvent){
enDeployLvl7Wave++;
switch (enDeployLvl7Wave){
case 1:
attEnemy1(1);
attEnemy3(1);
attEnemy4(1);
attEnemy6(1);
attEnemy8(1);
break;
case 2:
attEnemy2(1);
attEnemy8(2);
attEnemy6(1);
attEnemy7(1);
break;
case 3:
attEnemy3(2);
attEnemy4(1);
attEnemy6(1);
attEnemy7(1);
break;
case 4:
attEnemy5(1);
attEnemy8(1);
attEnemy7(1);
break;
case 5:
attEnemy1(1);
attEnemy2(1);
attEnemy3(1);
attEnemy6(1);
attEnemy7(1);
break;
case 6:
attEnemy1(1);
attEnemy2(1);
attEnemy8(2);
break;
case 7:
attEnemy1(1);
attEnemy3(1);
attEnemy6(1);
attEnemy7(1);
break;
case 8:
attPwrUp3();
attEnemy3(2);
attEnemy8(1);
attEnemy7(1);
break;
case 9:
attEnemy1(1);
attEnemy3(1);
attEnemy5(1);
attEnemy8(1);
attEnemy7(1);
break;
case 10:
attEnemy1(1);
attEnemy2(1);
attEnemy4(1);
attEnemy6(1);
attEnemy8(1);
break;
case 11:
attEnemy1(1);
attEnemy3(2);
attEnemy6(1);
attEnemy7(1);
break;
case 12:
attPwrUp2();
attEnemy1(1);
attEnemy3(1);
attEnemy8(1);
attEnemy7(1);
break;
case 13:
attEnemy1(1);
attEnemy3(2);
attEnemy8(1);
attEnemy6(1);
attEnemy7(1);
break;
case 14:
attEnemy1(1);
attEnemy2(2);
attEnemy8(1);
attEnemy6(1);
attEnemy7(1);
break;
case 15:
attEnemy1(1);
attEnemy5(1);
attEnemy6(1);
attEnemy7(1);
break;
case 16:
attPwrUp6();
attEnemy1(1);
attEnemy3(1);
attEnemy8(1);
attEnemy6(1);
attEnemy7(1);
break;
case 17:
attEnemy1(1);
attEnemy2(2);
attEnemy4(1);
attEnemy8(1);
attEnemy7(1);
break;
case 18:
attEnemy1(1);
attEnemy8(1);
attEnemy6(1);
attEnemy7(1);
break;
case 19:
attEnemy1(2);
attEnemy2(1);
attEnemy3(1);
attEnemy7(1);
break;
case 20:
attPwrUp1();
attEnemy1(1);
attEnemy3(1);
attEnemy8(1);
attEnemy7(1);
break;
case 21:
attEnemy1(2);
attEnemy2(1);
attEnemy4(1);
attEnemy7(1);
break;
case 22:
attEnemy1(1);
attEnemy4(1);
attEnemy8(1);
attEnemy7(1);
break;
case 23:
attEnemy1(1);
attEnemy3(1);
attEnemy8(2);
attEnemy7(1);
break;
case 24:
attPwrUp3();
attEnemy1(1);
attEnemy4(1);
attEnemy8(2);
attEnemy7(1);
break;
case 25:
attEnemy1(2);
attEnemy4(1);
attEnemy8(1);
attEnemy7(1);
break;
case 26:
attEnemy1(1);
attEnemy2(1);
attEnemy4(1);
attEnemy8(1);
attEnemy7(1);
break;
case 27:
attEnemy1(1);
attEnemy8(2);
attEnemy5(1);
attEnemy7(1);
break;
case 28:
attPwrUp3();
attEnemy1(1);
attEnemy3(1);
attEnemy4(1);
attEnemy8(1);
break;
case 29:
attEnemy2(1);
attEnemy4(1);
attEnemy6(1);
attEnemy8(1);
break;
case 30:
attEnemy1(1);
attEnemy2(1);
attEnemy3(1);
attEnemy8(1);
attEnemy6(1);
attEnemy7(1);
break;
default:
break;
};
}
public function attPlayerAmmo8(){
var _local1:PlayerAmmo8;
playerAmmo8Rof--;
if (playerAmmo8Rof == 0){
plyW7Snd();
_local1 = new PlayerAmmo8((lvlCntnr_mc.plyr_mc.x + disFromBarrel), lvlCntnr_mc.plyr_mc.y, 0);
lvlCntnr_mc.addChild(_local1);
playerAmmo8Arr.push(_local1);
updateAmmoInventory();
playerAmmo8Rof = 10;
};
}
public function moveTree(_arg1:MovieClip){
_arg1.x = (_arg1.x - 6);
if (_arg1.x < -150){
_arg1.x = (Math.floor((Math.random() * (1000 - 720))) + 720);
};
}
public function attPlayerAmmo5(){
var _local1:PlayerAmmo5;
playerAmmo5Rof--;
if (playerAmmo5Rof <= 0){
plyW5Snd();
_local1 = new PlayerAmmo5((lvlCntnr_mc.plyr_mc.x + disFromBarrel), lvlCntnr_mc.plyr_mc.y, 0);
lvlCntnr_mc.addChild(_local1);
playerAmmo5Arr.push(_local1);
updateAmmoInventory();
playerAmmo5Rof = 2;
};
}
public function enDeployLvl9(_arg1:TimerEvent){
enDeployLvl9Wave++;
switch (enDeployLvl9Wave){
case 1:
attEnemy10(1);
attEnemy3(1);
attEnemy4(1);
attEnemy6(1);
attEnemy9(1);
break;
case 2:
attEnemy10(1);
attEnemy4(1);
attEnemy8(2);
attEnemy6(1);
attEnemy7(1);
break;
case 3:
attEnemy3(2);
attEnemy4(1);
attEnemy9(1);
attEnemy6(1);
attEnemy10(1);
break;
case 4:
attPwrUp7();
attEnemy9(1);
attEnemy5(1);
attEnemy10(1);
attEnemy7(1);
break;
case 5:
attEnemy1(1);
attEnemy9(1);
attEnemy3(1);
attEnemy6(1);
attEnemy10(1);
break;
case 6:
attEnemy1(1);
attEnemy2(1);
attEnemy8(2);
break;
case 7:
attEnemy10(1);
attEnemy9(1);
attEnemy6(1);
attEnemy7(1);
break;
case 8:
attPwrUp3();
attEnemy10(2);
attEnemy10(1);
attEnemy7(1);
break;
case 9:
attEnemy1(1);
attEnemy3(1);
attEnemy5(1);
attEnemy10(1);
attEnemy7(1);
break;
case 10:
attEnemy9(1);
attEnemy2(1);
attEnemy4(1);
attEnemy6(1);
attEnemy8(1);
break;
case 11:
attEnemy1(1);
attEnemy10(2);
attEnemy6(1);
attEnemy7(1);
break;
case 12:
attPwrUp6();
attEnemy10(1);
attEnemy3(1);
attEnemy8(1);
attEnemy7(1);
break;
case 13:
attEnemy1(1);
attEnemy10(2);
attEnemy8(1);
attEnemy10(1);
attEnemy9(1);
break;
case 14:
attEnemy1(1);
attEnemy2(2);
attEnemy8(1);
attEnemy6(1);
attEnemy7(1);
break;
case 15:
attEnemy1(1);
attEnemy10(1);
attEnemy6(1);
attEnemy7(1);
break;
case 16:
attPwrUp3();
attEnemy1(1);
attEnemy10(1);
attEnemy8(1);
attEnemy9(1);
attEnemy7(1);
break;
case 17:
attEnemy1(1);
attEnemy2(2);
attEnemy10(1);
attEnemy8(1);
attEnemy9(1);
break;
case 18:
attEnemy10(1);
attEnemy9(1);
attEnemy6(1);
attEnemy7(1);
break;
case 19:
attEnemy1(2);
attEnemy10(1);
attEnemy3(1);
attEnemy9(1);
break;
case 20:
attPwrUp2();
attEnemy1(1);
attEnemy3(1);
attEnemy9(1);
attEnemy7(1);
break;
case 21:
attEnemy1(2);
attEnemy2(1);
attEnemy10(1);
attEnemy7(1);
break;
case 22:
attEnemy1(1);
attEnemy9(1);
attEnemy8(1);
attEnemy7(1);
break;
case 23:
attEnemy10(1);
attEnemy3(1);
attEnemy8(2);
attEnemy7(1);
break;
case 24:
attPwrUp3();
attEnemy10(1);
attEnemy9(1);
attEnemy8(2);
attEnemy7(1);
break;
case 25:
attEnemy1(2);
attEnemy10(1);
attEnemy9(1);
attEnemy7(1);
break;
case 26:
attEnemy1(1);
attEnemy2(1);
attEnemy4(1);
attEnemy10(1);
attEnemy7(1);
break;
case 27:
attEnemy1(1);
attEnemy9(2);
attEnemy10(1);
attEnemy7(1);
break;
case 28:
attPwrUp7();
attEnemy1(1);
attEnemy3(1);
attEnemy10(1);
attEnemy9(1);
break;
case 29:
attEnemy2(1);
attEnemy4(1);
attEnemy6(1);
attEnemy10(1);
break;
case 30:
attEnemy1(1);
attEnemy2(1);
attEnemy3(1);
attEnemy8(1);
attEnemy10(1);
attEnemy9(1);
break;
case 31:
attEnemy1(1);
attEnemy2(1);
attEnemy3(1);
attEnemy8(1);
attEnemy10(1);
attEnemy10(1);
break;
case 32:
attPwrUp1();
attEnemy9(1);
attEnemy2(1);
attEnemy3(1);
attEnemy8(1);
attEnemy6(1);
attEnemy9(1);
break;
case 33:
attEnemy1(1);
attEnemy9(1);
attEnemy3(1);
attEnemy8(1);
attEnemy10(1);
attEnemy9(1);
break;
case 34:
attEnemy10(1);
attEnemy2(1);
attEnemy9(1);
attEnemy8(1);
attEnemy6(1);
attEnemy9(1);
break;
case 35:
attPwrUp3();
attEnemy10(1);
attEnemy2(1);
attEnemy3(1);
attEnemy8(1);
attEnemy6(1);
attEnemy9(1);
break;
default:
break;
};
}
public function attPlayerAmmo1(){
var _local1:PlayerAmmo1;
playerAmmo1Rof--;
if (playerAmmo1Rof == 0){
plyW1Snd();
_local1 = new PlayerAmmo1((lvlCntnr_mc.plyr_mc.x + disFromBarrel), lvlCntnr_mc.plyr_mc.y, 0);
lvlCntnr_mc.addChild(_local1);
playerAmmo1Arr.push(_local1);
updateAmmoInventory();
playerAmmo1Rof = 5;
};
}
public function attPlayerAmmo2(){
var _local1:PlayerAmmo2;
var _local2:PlayerAmmo2;
var _local3:PlayerAmmo2;
playerAmmo2Rof--;
if (playerAmmo2Rof == 14){
plyW2Snd();
_local1 = new PlayerAmmo2((lvlCntnr_mc.plyr_mc.x + disFromBarrel), lvlCntnr_mc.plyr_mc.y, 0);
lvlCntnr_mc.addChild(_local1);
playerAmmo2Arr.push(_local1);
updateAmmoInventory();
};
if (playerAmmo2Rof == 12){
_local2 = new PlayerAmmo2((lvlCntnr_mc.plyr_mc.x + disFromBarrel), lvlCntnr_mc.plyr_mc.y, 0);
lvlCntnr_mc.addChild(_local2);
playerAmmo2Arr.push(_local2);
updateAmmoInventory();
};
if (playerAmmo2Rof == 10){
_local3 = new PlayerAmmo2((lvlCntnr_mc.plyr_mc.x + disFromBarrel), lvlCntnr_mc.plyr_mc.y, 0);
lvlCntnr_mc.addChild(_local3);
playerAmmo2Arr.push(_local3);
updateAmmoInventory();
};
if (playerAmmo2Rof <= 4){
playerAmmo2Rof = 15;
};
}
public function attPlayerAmmo3(){
var _local1:Number;
var _local2:Number;
var _local3:PlayerAmmo3;
playerAmmo3Rof--;
if (playerAmmo3Rof <= 0){
plyW3Snd();
_local1 = -5;
_local2 = 0;
while (_local2 < 3) {
_local1 = (_local1 + 5);
_local3 = new PlayerAmmo3((lvlCntnr_mc.plyr_mc.x + disFromBarrel), lvlCntnr_mc.plyr_mc.y, _local1);
lvlCntnr_mc.addChild(_local3);
playerAmmo3Arr.push(_local3);
updateAmmoInventory();
playerAmmo3Rof = 10;
_local2++;
};
};
}
public function moveDesertHouse(_arg1:MovieClip){
_arg1.x = (_arg1.x - 2.5);
if (_arg1.x < -150){
_arg1.x = (Math.floor((Math.random() * (800 - 750))) + 750);
};
}
public function attPlayerAmmo6(){
var _local1:PlayerAmmo6;
plyW6Snd();
_local1 = new PlayerAmmo6((lvlCntnr_mc.plyr_mc.x + disFromBarrel), lvlCntnr_mc.plyr_mc.y, 0);
lvlCntnr_mc.addChild(_local1);
playerAmmo6Arr.push(_local1);
updateAmmoInventory();
}
public function deployPowerUp(_arg1:TimerEvent){
}
public function attEnemy5Ammo(_arg1:MovieClip){
var _local2:Number;
var _local3:Number;
var _local4:Number;
var _local5:Number;
var _local6:Enemy5Ammo;
_local2 = 50;
_local3 = _arg1.barrel.rotation;
_local4 = (_arg1.x + (_local2 * Math.cos(((_local3 * Math.PI) / 180))));
_local5 = (_arg1.y + (_local2 * Math.sin(((_local3 * Math.PI) / 180))));
_local6 = new Enemy5Ammo(_arg1);
_local6.x = _local4;
_local6.y = _local5;
lvlCntnr_mc.addChild(_local6);
enemyAmmo5Array.push(_local6);
}
public function attDebris(_arg1:MovieClip){
var _local2:Number;
var _local3:Number;
var _local4:Number;
var _local5:Number;
var _local6:Number;
var _local7:Number;
var _local8:Debris;
_local2 = _arg1.x;
_local3 = _arg1.y;
_local6 = (Math.floor((Math.random() * (8 - 1))) + 1);
_local7 = 0;
while (_local7 < 8) {
_local5 = (Math.floor((Math.random() * (300 - 240))) + 240);
_local8 = new Debris(_local2, _local3, _local5);
lvlCntnr_mc.addChild(_local8);
debrisArray.push(_local8);
_local7++;
};
}
public function endLevel(_arg1:TimerEvent){
}
public function attEnemy1(_arg1:Number){
var _local2:Number;
var _local3:Enemy1;
_local2 = 0;
while (_local2 < _arg1) {
_local3 = new Enemy1();
_local3.x = randomGenerator(700, 900);
_local3.y = randomGenerator(100, 400);
lvlCntnr_mc.addChild(_local3);
enemyArray.push(_local3);
_local2++;
};
}
public function attEnemy2(_arg1:Number){
var _local2:Number;
var _local3:Enemy2;
_local2 = 0;
while (_local2 < _arg1) {
_local3 = new Enemy2();
_local3.x = randomGenerator(700, 900);
_local3.y = randomGenerator(100, 400);
lvlCntnr_mc.addChild(_local3);
enemyArray.push(_local3);
_local2++;
};
}
public function attPwrUp2(){
var _local1:Number;
var _local2:Number;
var _local3:PowerUp2;
_local1 = randomGenerator(100, 600);
_local2 = randomGenerator(-200, -100);
_local3 = new PowerUp2(_local1, _local2);
lvlCntnr_mc.addChild(_local3);
powerupArray.push(_local3);
}
public function attPwrUp3(){
var _local1:Number;
var _local2:Number;
var _local3:PowerUp3;
_local1 = randomGenerator(100, 600);
_local2 = randomGenerator(-200, -100);
_local3 = new PowerUp3(_local1, _local2);
lvlCntnr_mc.addChild(_local3);
powerupArray.push(_local3);
}
public function attPwrUp4(){
var _local1:Number;
var _local2:Number;
var _local3:PowerUp4;
_local1 = randomGenerator(100, 600);
_local2 = randomGenerator(-200, -100);
_local3 = new PowerUp4(_local1, _local2);
lvlCntnr_mc.addChild(_local3);
powerupArray.push(_local3);
}
public function attPwrUp7(){
var _local1:Number;
var _local2:Number;
var _local3:PowerUp7;
_local1 = randomGenerator(100, 600);
_local2 = randomGenerator(-200, -100);
_local3 = new PowerUp7(_local1, _local2);
lvlCntnr_mc.addChild(_local3);
powerupArray.push(_local3);
}
public function playerTrail(){
var _local1:PlayerSmokeTrail;
playerTrailInterval--;
if (playerTrailInterval <= 0){
_local1 = new PlayerSmokeTrail(lvlCntnr_mc.plyr_mc);
lvlCntnr_mc.addChild(_local1);
smokeArray.push(_local1);
playerTrailInterval = 5;
};
}
public function attEnemy9(_arg1:Number){
var _local2:Number;
var _local3:Number;
var _local4:Number;
var _local5:Enemy9;
_local2 = 0;
while (_local2 < _arg1) {
_local3 = randomGenerator(700, 800);
_local4 = randomGenerator(100, 400);
_local5 = new Enemy9(_local3, _local4);
lvlCntnr_mc.addChild(_local5);
enemyArray.push(_local5);
_local2++;
};
}
public function attPwrUp1(){
var _local1:Number;
var _local2:Number;
var _local3:PowerUp1;
_local1 = randomGenerator(100, 600);
_local2 = randomGenerator(-200, -100);
_local3 = new PowerUp1(_local1, _local2);
lvlCntnr_mc.addChild(_local3);
powerupArray.push(_local3);
}
public function attEnemy5(_arg1:Number){
var _local2:Number;
var _local3:Enemy5;
_local2 = 0;
while (_local2 < _arg1) {
_local3 = new Enemy5();
_local3.x = randomGenerator(700, 900);
_local3.y = randomGenerator(100, 400);
lvlCntnr_mc.addChild(_local3);
enemyArray.push(_local3);
_local2++;
};
}
public function attPwrUp5(){
var _local1:Number;
var _local2:Number;
var _local3:PowerUp5;
_local1 = randomGenerator(100, 600);
_local2 = randomGenerator(-200, -100);
_local3 = new PowerUp5(_local1, _local2);
lvlCntnr_mc.addChild(_local3);
powerupArray.push(_local3);
}
public function attPwrUp6(){
var _local1:Number;
var _local2:Number;
var _local3:PowerUp6;
_local1 = randomGenerator(100, 600);
_local2 = randomGenerator(-200, -100);
_local3 = new PowerUp6(_local1, _local2);
lvlCntnr_mc.addChild(_local3);
powerupArray.push(_local3);
}
public function attPlayerAmmo7(){
var _local1:PlayerAmmo7;
playerAmmo7Rof--;
if (playerAmmo7Rof == 0){
plyW7Snd();
_local1 = new PlayerAmmo7((lvlCntnr_mc.plyr_mc.x + disFromBarrel), lvlCntnr_mc.plyr_mc.y, 0);
lvlCntnr_mc.addChild(_local1);
playerAmmo7Arr.push(_local1);
updateAmmoInventory();
playerAmmo7Rof = 10;
};
}
public function plyW8aSnd(){
if (music == "on"){
w8aSnd.play();
};
}
public function attEnemy3(_arg1:Number){
var _local2:Number;
var _local3:Enemy3;
_local2 = 0;
while (_local2 < _arg1) {
_local3 = new Enemy3();
_local3.x = randomGenerator(700, 900);
_local3.y = randomGenerator(100, 400);
lvlCntnr_mc.addChild(_local3);
enemyArray.push(_local3);
_local2++;
};
}
public function attEnemy4(_arg1:Number){
var _local2:Number;
var _local3:Enemy4;
_local2 = 0;
while (_local2 < _arg1) {
_local3 = new Enemy4();
_local3.x = randomGenerator(700, 900);
_local3.y = randomGenerator(100, 400);
lvlCntnr_mc.addChild(_local3);
enemyArray.push(_local3);
_local2++;
};
}
public function saveToLSO(){
paperWarfareSharedObject.data.gameDataExist = "true";
paperWarfareSharedObject.data.level_so = level;
paperWarfareSharedObject.data.killsOverall_so = killsOverall;
paperWarfareSharedObject.data.ammo1Inventory_so = ammo1Inventory;
paperWarfareSharedObject.data.ammo2Inventory_so = ammo2Inventory;
paperWarfareSharedObject.data.ammo3Inventory_so = ammo3Inventory;
paperWarfareSharedObject.data.ammo4Inventory_so = ammo4Inventory;
paperWarfareSharedObject.data.ammo5Inventory_so = ammo5Inventory;
paperWarfareSharedObject.data.ammo6Inventory_so = ammo6Inventory;
paperWarfareSharedObject.data.ammo7Inventory_so = ammo7Inventory;
paperWarfareSharedObject.data.ammo8Inventory_so = ammo8Inventory;
paperWarfareSharedObject.data.suitCode_so = suitCode;
paperWarfareSharedObject.data.mouseFollowSpeed_so = mouseFollowSpeed;
paperWarfareSharedObject.data.lifeNumerator_so = lifeNumerator;
paperWarfareSharedObject.data.lifeDenominator_so = lifeDenominator;
paperWarfareSharedObject.data.lives_so = lives;
paperWarfareSharedObject.data.weaponArray_so = weaponArray;
paperWarfareSharedObject.data.shield_so = shield;
paperWarfareSharedObject.data.emp_so = emp;
paperWarfareSharedObject.flush();
}
public function attEnemy6(_arg1:Number){
var _local2:Number;
var _local3:Number;
var _local4:Number;
var _local5:Number;
var _local6:Enemy6;
_local2 = 0;
while (_local2 < _arg1) {
_local5 = randomGenerator(0, 3);
_local3 = randomGenerator(400, 640);
if (_local5 == 1){
_local4 = randomGenerator(-400, -100);
} else {
_local4 = randomGenerator(500, 600);
};
_local6 = new Enemy6(_local3, _local4);
lvlCntnr_mc.addChild(_local6);
enemyArray.push(_local6);
_local2++;
};
}
public function attEnemy8(_arg1:Number){
var _local2:Number;
var _local3:Number;
var _local4:Number;
var _local5:Enemy8;
_local2 = 0;
while (_local2 < _arg1) {
_local3 = randomGenerator(700, 800);
_local4 = randomGenerator(100, 400);
_local5 = new Enemy8(_local3, _local4);
lvlCntnr_mc.addChild(_local5);
enemyArray.push(_local5);
_local2++;
};
}
public function mousePressed(_arg1:MouseEvent){
if ((((lives <= 0)) && ((lifeNumerator <= 0)))){
} else {
fireWeapon = "open";
};
}
public function mouseFollowControl(_arg1:MovieClip){
if (dead == "false"){
if (_arg1.x <= 0){
_arg1.x = 1;
_arg1.gotoAndStop(5);
} else {
if (_arg1.x >= 680){
_arg1.x = 679;
_arg1.gotoAndStop(5);
} else {
if (_arg1.y <= 0){
_arg1.y = 1;
_arg1.gotoAndStop(5);
} else {
if (_arg1.y >= 480){
_arg1.y = 479;
_arg1.gotoAndStop(5);
} else {
_arg1.x = ((mouseFollowSpeed * (_arg1.x - mouseX)) + mouseX);
_arg1.y = ((mouseFollowSpeed * (_arg1.y - mouseY)) + mouseY);
lvlCntnr_mc.plyr_mc.x = _arg1.x;
lvlCntnr_mc.plyr_mc.y = _arg1.y;
};
};
};
};
} else {
_arg1.x = -1000;
_arg1.y = -1000;
lvlCntnr_mc.plyr_mc.x = _arg1.x;
lvlCntnr_mc.plyr_mc.y = _arg1.y;
};
}
public function attPlayerAmmo4(){
var _local1:PlayerAmmo4;
playerAmmo4Rof--;
if (playerAmmo4Rof <= 0){
plyW4Snd();
_local1 = new PlayerAmmo4((lvlCntnr_mc.plyr_mc.x + disFromBarrel), lvlCntnr_mc.plyr_mc.y, 0);
lvlCntnr_mc.addChild(_local1);
playerAmmo4Arr.push(_local1);
updateAmmoInventory();
playerAmmo4Rof = 3;
};
}
public function attEnemy7(_arg1:Number){
var _local2:Number;
var _local3:Number;
var _local4:Number;
var _local5:Enemy7;
_local2 = 0;
while (_local2 < _arg1) {
_local3 = randomGenerator(700, 800);
_local4 = randomGenerator(30, 50);
_local5 = new Enemy7(_local3, _local4);
lvlCntnr_mc.addChild(_local5);
enemyArray.push(_local5);
_local2++;
};
}
public function updateAmmoInventory(){
if (weaponCounter == 1){
} else {
if (weaponCounter == 2){
ammo2Inventory--;
} else {
if (weaponCounter == 3){
ammo3Inventory--;
} else {
if (weaponCounter == 4){
ammo4Inventory--;
} else {
if (weaponCounter == 5){
ammo5Inventory--;
} else {
if (weaponCounter == 6){
ammo6Inventory--;
} else {
if (weaponCounter == 7){
ammo7Inventory--;
} else {
if (weaponCounter == 8){
ammo8Inventory--;
};
};
};
};
};
};
};
};
updateAmmoUI();
}
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 66
//mc_armorHev_75 (PaperWarfare_ArmorGames_v1_fla.mc_armorHev_75)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
public dynamic class mc_armorHev_75 extends MovieClip {
public var weapon_mc:MovieClip;
public function mc_armorHev_75(){
addFrameScript(0, frame1);
}
function frame1(){
}
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 67
//mc_armorLight_74 (PaperWarfare_ArmorGames_v1_fla.mc_armorLight_74)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
public dynamic class mc_armorLight_74 extends MovieClip {
public var weapon_mc:MovieClip;
public function mc_armorLight_74(){
addFrameScript(0, frame1);
}
function frame1(){
}
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 68
//mc_armorMed_72 (PaperWarfare_ArmorGames_v1_fla.mc_armorMed_72)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
public dynamic class mc_armorMed_72 extends MovieClip {
public var weapon_mc:MovieClip;
public function mc_armorMed_72(){
addFrameScript(0, frame1);
}
function frame1(){
}
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 69
//mc_bossuilifeBarOutlinecopy_80 (PaperWarfare_ArmorGames_v1_fla.mc_bossuilifeBarOutlinecopy_80)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
public dynamic class mc_bossuilifeBarOutlinecopy_80 extends MovieClip {
public var bosslifeBar_mc:MovieClip;
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 70
//mc_descriptionSLider_54 (PaperWarfare_ArmorGames_v1_fla.mc_descriptionSLider_54)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
import flash.text.*;
public dynamic class mc_descriptionSLider_54 extends MovieClip {
public var desciption_txt:TextField;
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 71
//mc_explosion2a_126 (PaperWarfare_ArmorGames_v1_fla.mc_explosion2a_126)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
public dynamic class mc_explosion2a_126 extends MovieClip {
public function mc_explosion2a_126(){
addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4);
}
function frame3(){
}
function frame1(){
}
function frame4(){
}
function frame2(){
}
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 72
//mc_explosion4a_124 (PaperWarfare_ArmorGames_v1_fla.mc_explosion4a_124)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
public dynamic class mc_explosion4a_124 extends MovieClip {
public function mc_explosion4a_124(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 73
//mc_howToDesElem1_35 (PaperWarfare_ArmorGames_v1_fla.mc_howToDesElem1_35)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
public dynamic class mc_howToDesElem1_35 extends MovieClip {
public function mc_howToDesElem1_35(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 74
//mc_howToDesElem2_36 (PaperWarfare_ArmorGames_v1_fla.mc_howToDesElem2_36)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
public dynamic class mc_howToDesElem2_36 extends MovieClip {
public function mc_howToDesElem2_36(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 75
//mc_lvlContainer1_69 (PaperWarfare_ArmorGames_v1_fla.mc_lvlContainer1_69)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
public dynamic class mc_lvlContainer1_69 extends MovieClip {
public var plyr_mc:MovieClip;
public var cld4_mc:MovieClip;
public var m3:MovieClip;
public var m1:MovieClip;
public var cld2_mc:MovieClip;
public var m4:MovieClip;
public var m2:MovieClip;
public var medArmor_mc:MovieClip;
public var cld3_mc:MovieClip;
public var lightArmor_mc:MovieClip;
public var hevArmor_mc:MovieClip;
public var cld1_mc:MovieClip;
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 76
//mc_lvlContainer10_111 (PaperWarfare_ArmorGames_v1_fla.mc_lvlContainer10_111)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
public dynamic class mc_lvlContainer10_111 extends MovieClip {
public var plyr_mc:MovieClip;
public var b10:MovieClip;
public var b2:MovieClip;
public var road2:MovieClip;
public var b9:MovieClip;
public var b5:MovieClip;
public var b6:MovieClip;
public var b7:MovieClip;
public var b1:MovieClip;
public var cld4_mc:MovieClip;
public var road1:MovieClip;
public var b8:MovieClip;
public var b3:MovieClip;
public var t2:MovieClip;
public var t3:MovieClip;
public var t7:MovieClip;
public var t1:MovieClip;
public var t9:MovieClip;
public var t5:MovieClip;
public var t8:MovieClip;
public var m1:MovieClip;
public var t4:MovieClip;
public var b4:MovieClip;
public var cld2_mc:MovieClip;
public var t6:MovieClip;
public var m4:MovieClip;
public var medArmor_mc:MovieClip;
public var m3:MovieClip;
public var m2:MovieClip;
public var cld3_mc:MovieClip;
public var lightArmor_mc:MovieClip;
public var hevArmor_mc:MovieClip;
public var cld1_mc:MovieClip;
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 77
//mc_lvlContainer2_86 (PaperWarfare_ArmorGames_v1_fla.mc_lvlContainer2_86)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
public dynamic class mc_lvlContainer2_86 extends MovieClip {
public var plyr_mc:MovieClip;
public var cld4_mc:MovieClip;
public var m3:MovieClip;
public var m1:MovieClip;
public var cld2_mc:MovieClip;
public var m4:MovieClip;
public var m2:MovieClip;
public var medArmor_mc:MovieClip;
public var cld3_mc:MovieClip;
public var sea1:MovieClip;
public var sea2:MovieClip;
public var lightArmor_mc:MovieClip;
public var hevArmor_mc:MovieClip;
public var cld1_mc:MovieClip;
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 78
//mc_lvlContainer3_88 (PaperWarfare_ArmorGames_v1_fla.mc_lvlContainer3_88)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
public dynamic class mc_lvlContainer3_88 extends MovieClip {
public var plyr_mc:MovieClip;
public var cld4_mc:MovieClip;
public var m3:MovieClip;
public var m1:MovieClip;
public var cld2_mc:MovieClip;
public var m4:MovieClip;
public var m2:MovieClip;
public var medArmor_mc:MovieClip;
public var cld3_mc:MovieClip;
public var lightArmor_mc:MovieClip;
public var hevArmor_mc:MovieClip;
public var cld1_mc:MovieClip;
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 79
//mc_lvlContainer4_89 (PaperWarfare_ArmorGames_v1_fla.mc_lvlContainer4_89)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
public dynamic class mc_lvlContainer4_89 extends MovieClip {
public var plyr_mc:MovieClip;
public var cld4_mc:MovieClip;
public var s1:MovieClip;
public var s5:MovieClip;
public var s6:MovieClip;
public var dh1:MovieClip;
public var dh2:MovieClip;
public var s4:MovieClip;
public var dh3:MovieClip;
public var s3:MovieClip;
public var s2:MovieClip;
public var cld2_mc:MovieClip;
public var medArmor_mc:MovieClip;
public var cld3_mc:MovieClip;
public var lightArmor_mc:MovieClip;
public var hevArmor_mc:MovieClip;
public var cld1_mc:MovieClip;
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 80
//mc_lvlContainer5_95 (PaperWarfare_ArmorGames_v1_fla.mc_lvlContainer5_95)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
public dynamic class mc_lvlContainer5_95 extends MovieClip {
public var plyr_mc:MovieClip;
public var cld4_mc:MovieClip;
public var s1:MovieClip;
public var s5:MovieClip;
public var s6:MovieClip;
public var dh1:MovieClip;
public var dh2:MovieClip;
public var s4:MovieClip;
public var dh3:MovieClip;
public var s3:MovieClip;
public var s2:MovieClip;
public var cld2_mc:MovieClip;
public var medArmor_mc:MovieClip;
public var cld3_mc:MovieClip;
public var lightArmor_mc:MovieClip;
public var hevArmor_mc:MovieClip;
public var cld1_mc:MovieClip;
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 81
//mc_lvlContainer6_97 (PaperWarfare_ArmorGames_v1_fla.mc_lvlContainer6_97)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
public dynamic class mc_lvlContainer6_97 extends MovieClip {
public var plyr_mc:MovieClip;
public var cld4_mc:MovieClip;
public var s1:MovieClip;
public var s5:MovieClip;
public var s6:MovieClip;
public var dh1:MovieClip;
public var dh2:MovieClip;
public var s4:MovieClip;
public var dh3:MovieClip;
public var s3:MovieClip;
public var s2:MovieClip;
public var cld2_mc:MovieClip;
public var medArmor_mc:MovieClip;
public var cld3_mc:MovieClip;
public var lightArmor_mc:MovieClip;
public var hevArmor_mc:MovieClip;
public var cld1_mc:MovieClip;
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 82
//mc_lvlContainer7_98 (PaperWarfare_ArmorGames_v1_fla.mc_lvlContainer7_98)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
public dynamic class mc_lvlContainer7_98 extends MovieClip {
public var plyr_mc:MovieClip;
public var b10:MovieClip;
public var b2:MovieClip;
public var road2:MovieClip;
public var b9:MovieClip;
public var b5:MovieClip;
public var b6:MovieClip;
public var b7:MovieClip;
public var b1:MovieClip;
public var cld4_mc:MovieClip;
public var road1:MovieClip;
public var b8:MovieClip;
public var b3:MovieClip;
public var b4:MovieClip;
public var m3:MovieClip;
public var m1:MovieClip;
public var cld2_mc:MovieClip;
public var m4:MovieClip;
public var m2:MovieClip;
public var medArmor_mc:MovieClip;
public var cld3_mc:MovieClip;
public var lightArmor_mc:MovieClip;
public var hevArmor_mc:MovieClip;
public var cld1_mc:MovieClip;
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 83
//mc_lvlContainer8_103 (PaperWarfare_ArmorGames_v1_fla.mc_lvlContainer8_103)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
public dynamic class mc_lvlContainer8_103 extends MovieClip {
public var plyr_mc:MovieClip;
public var b10:MovieClip;
public var b2:MovieClip;
public var road2:MovieClip;
public var b9:MovieClip;
public var b5:MovieClip;
public var b6:MovieClip;
public var b7:MovieClip;
public var b1:MovieClip;
public var cld4_mc:MovieClip;
public var road1:MovieClip;
public var b8:MovieClip;
public var b3:MovieClip;
public var b4:MovieClip;
public var m3:MovieClip;
public var m1:MovieClip;
public var cld2_mc:MovieClip;
public var m4:MovieClip;
public var m2:MovieClip;
public var medArmor_mc:MovieClip;
public var cld3_mc:MovieClip;
public var lightArmor_mc:MovieClip;
public var hevArmor_mc:MovieClip;
public var cld1_mc:MovieClip;
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 84
//mc_lvlContainer9_104 (PaperWarfare_ArmorGames_v1_fla.mc_lvlContainer9_104)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
public dynamic class mc_lvlContainer9_104 extends MovieClip {
public var plyr_mc:MovieClip;
public var b10:MovieClip;
public var b2:MovieClip;
public var road2:MovieClip;
public var b9:MovieClip;
public var b5:MovieClip;
public var b6:MovieClip;
public var b7:MovieClip;
public var b1:MovieClip;
public var cld4_mc:MovieClip;
public var road1:MovieClip;
public var b8:MovieClip;
public var b3:MovieClip;
public var t2:MovieClip;
public var t3:MovieClip;
public var t7:MovieClip;
public var t1:MovieClip;
public var t9:MovieClip;
public var t5:MovieClip;
public var t8:MovieClip;
public var m1:MovieClip;
public var t4:MovieClip;
public var b4:MovieClip;
public var cld2_mc:MovieClip;
public var t6:MovieClip;
public var m4:MovieClip;
public var medArmor_mc:MovieClip;
public var m3:MovieClip;
public var m2:MovieClip;
public var cld3_mc:MovieClip;
public var lightArmor_mc:MovieClip;
public var hevArmor_mc:MovieClip;
public var cld1_mc:MovieClip;
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 85
//mc_map_68 (PaperWarfare_ArmorGames_v1_fla.mc_map_68)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
public dynamic class mc_map_68 extends MovieClip {
public function mc_map_68(){
addFrameScript(0, frame1, 9, frame10);
}
function frame10(){
stop();
}
function frame1(){
}
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 86
//mc_newUpdatePanel_50 (PaperWarfare_ArmorGames_v1_fla.mc_newUpdatePanel_50)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
public dynamic class mc_newUpdatePanel_50 extends MovieClip {
public var shield_mc:MovieClip;
public var emp_mc:MovieClip;
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 87
//mc_newWeapon_65 (PaperWarfare_ArmorGames_v1_fla.mc_newWeapon_65)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
import flash.text.*;
public dynamic class mc_newWeapon_65 extends MovieClip {
public var desciption_txt:TextField;
public function mc_newWeapon_65(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 88
//mc_plyrWeapons_73 (PaperWarfare_ArmorGames_v1_fla.mc_plyrWeapons_73)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
public dynamic class mc_plyrWeapons_73 extends MovieClip {
public function mc_plyrWeapons_73(){
addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4, 4, frame5, 5, frame6, 6, frame7, 7, frame8);
}
function frame3(){
stop();
}
function frame6(){
stop();
}
function frame7(){
stop();
}
function frame1(){
stop();
}
function frame4(){
stop();
}
function frame5(){
stop();
}
function frame8(){
stop();
}
function frame2(){
stop();
}
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 89
//mc_PreLevDesElem1copy_67 (PaperWarfare_ArmorGames_v1_fla.mc_PreLevDesElem1copy_67)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
public dynamic class mc_PreLevDesElem1copy_67 extends MovieClip {
public function mc_PreLevDesElem1copy_67(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 90
//mc_promptToDelete_22 (PaperWarfare_ArmorGames_v1_fla.mc_promptToDelete_22)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
public dynamic class mc_promptToDelete_22 extends MovieClip {
public var yes_btn:MovieClip;
public var no_btn:MovieClip;
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 91
//mc_selectSuitPanel_43 (PaperWarfare_ArmorGames_v1_fla.mc_selectSuitPanel_43)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
public dynamic class mc_selectSuitPanel_43 extends MovieClip {
public var suitSelectioSlider_mc:MovieClip;
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 92
//mc_selectText_49 (PaperWarfare_ArmorGames_v1_fla.mc_selectText_49)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
import flash.text.*;
public dynamic class mc_selectText_49 extends MovieClip {
public var selectText_txt:TextField;
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 93
//mc_suitPanelInfo_38 (PaperWarfare_ArmorGames_v1_fla.mc_suitPanelInfo_38)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
public dynamic class mc_suitPanelInfo_38 extends MovieClip {
public var slider:MovieClip;
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 94
//mc_SuitSelectionSuitPanel1_37 (PaperWarfare_ArmorGames_v1_fla.mc_SuitSelectionSuitPanel1_37)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
public dynamic class mc_SuitSelectionSuitPanel1_37 extends MovieClip {
public var suitInfoPanel_mc:MovieClip;
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 95
//mc_SuitSelectionSuitPanel3_42 (PaperWarfare_ArmorGames_v1_fla.mc_SuitSelectionSuitPanel3_42)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
public dynamic class mc_SuitSelectionSuitPanel3_42 extends MovieClip {
public var arrowLeft_btn:MovieClip;
public var arrowRight_btn:MovieClip;
public var suitPanel_mc:MovieClip;
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 96
//mc_titleScreenBgSketches_9 (PaperWarfare_ArmorGames_v1_fla.mc_titleScreenBgSketches_9)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
public dynamic class mc_titleScreenBgSketches_9 extends MovieClip {
public function mc_titleScreenBgSketches_9(){
addFrameScript(34, frame35);
}
function frame35(){
stop();
}
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 97
//mc_titleScreenTitle_21 (PaperWarfare_ArmorGames_v1_fla.mc_titleScreenTitle_21)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
public dynamic class mc_titleScreenTitle_21 extends MovieClip {
public function mc_titleScreenTitle_21(){
addFrameScript(10, frame11);
}
function frame11(){
stop();
}
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 98
//mc_updatePrompter_64 (PaperWarfare_ArmorGames_v1_fla.mc_updatePrompter_64)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
public dynamic class mc_updatePrompter_64 extends MovieClip {
public var updates_mc:MovieClip;
public var closeUpdatePrompt_btn:MovieClip;
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 99
//mc_upgradePanel1_53 (PaperWarfare_ArmorGames_v1_fla.mc_upgradePanel1_53)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
public dynamic class mc_upgradePanel1_53 extends MovieClip {
public var descSlider_mc:MovieClip;
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 100
//mc_upgradePanel2_55 (PaperWarfare_ArmorGames_v1_fla.mc_upgradePanel2_55)
package PaperWarfare_ArmorGames_v1_fla {
import flash.display.*;
public dynamic class mc_upgradePanel2_55 extends MovieClip {
public var w1:MovieClip;
public var w4:MovieClip;
public var w6:MovieClip;
public var w8:MovieClip;
public var w7:MovieClip;
public var w2:MovieClip;
public var w3:MovieClip;
public var w5:MovieClip;
}
}//package PaperWarfare_ArmorGames_v1_fla
Section 101
//Timeline_5 (PreloaderBar_fla.Timeline_5)
package PreloaderBar_fla {
import flash.display.*;
public dynamic class Timeline_5 extends MovieClip {
public function Timeline_5(){
addFrameScript(39, frame40);
}
function frame40(){
stop();
}
}
}//package PreloaderBar_fla
Section 102
//score_period_dropdown_5 (ScoreBoard_fla.score_period_dropdown_5)
package ScoreBoard_fla {
import flash.display.*;
import flash.text.*;
public dynamic class score_period_dropdown_5 extends MovieClip {
public var periodListUpButton:SimpleButton;
public var periodText:TextField;
public var period0:SimpleButton;
public var period1:SimpleButton;
public var periodListButton:SimpleButton;
public var period3:SimpleButton;
public var period4:SimpleButton;
public var period2:SimpleButton;
public function score_period_dropdown_5(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package ScoreBoard_fla
Section 103
//Brand (spill.localisation.Brand)
package spill.localisation {
import flash.xml.*;
public class Brand {
public var domain:String;
public var useGoogleAnalitics:Boolean;// = true
public var emailPage:String;
public var name:String;
public var site_id:uint;
public var isExternal:Boolean;// = false
public var id:Number;
public var hostingDomain:String;// = ""
public var preferedLanguage:String;// = ""
public var moreLink:String;// = ""
public var hasSendToFriendLink:Boolean;// = true
public var portalGroup:uint;
public var emailLink:String;// = "game"
private static const topLevelDoubles:String = (((((((((((((("ac.cn,ac.jp,ac.uk,ad.jp,adm.br,adv.br,agr.br," + "ah.cn,am.br,arq.br,art.br,asn.au,ato.br,av.tr,bel.tr,bio.br,biz.tr,bj.cn,bmd.br,") + "cim.br,cng.br,cnt.br,co.at,co.jp,co.uk,com.au,com.br,com.cn,com.eg,com.hk,com.mx,") + "com.ru,com.tr,com.tw,conf.au,cq.cn,csiro.au,dr.tr,ecn.br,edu.au,edu.br,edu.tr,") + "emu.id.au,eng.br,esp.br,etc.br,eti.br,eun.eg,far.br,fj.cn,fm.br,fnd.br,fot.br,") + "fst.br,g12.br,gb.com,gb.net,gd.cn,gen.tr,ggf.br,gob.mx,gov.au,gov.br,gov.cn,") + "gov.hk,gov.tr,gr.jp,gs.cn,gx.cn,gz.cn,ha.cn,hb.cn,he.cn,hi.cn,hk.cn,hl.cn,hn.cn,") + "id.au,idv.tw,imb.br,ind.br,inf.br,info.au,info.tr,jl.cn,jor.br,js.cn,jx.cn,k12.tr,") + "lel.br,ln.cn,ltd.uk,mat.br,me.uk,med.br,mil.br,mil.tr,mo.cn,mus.br,name.tr,ne.jp,") + "net.au,net.br,net.cn,net.eg,net.hk,net.lu,net.mx,net.ru,net.tr,net.tw,net.uk,") + "nm.cn,no.com,nom.br,not.br,ntr.br,nx.cn,odo.br,oop.br,or.at,or.jp,org.au,org.br,") + "org.cn,org.hk,org.lu,org.ru,org.tr,org.tw,org.uk,plc.uk,pol.tr,pp.ru,ppg.br,pro.br,") + "psc.br,psi.br,qh.cn,qsl.br,rec.br,sc.cn,sd.cn,se.com,se.net,sh.cn,slg.br,sn.cn,") + "srv.br,sx.cn,tel.tr,tj.cn,tmp.br,trd.br,tur.br,tv.br,tw.cn,uk.com,uk.net,vet.br,") + "wattle.id.au,web.tr,xj.cn,xz.cn,yn.cn,zj.cn,zlg.br,co.nr,co.nz,com.fr,com.ph,");
public function Brand(){
moreLink = "";
emailLink = "game";
useGoogleAnalitics = true;
hasSendToFriendLink = true;
preferedLanguage = "";
isExternal = false;
hostingDomain = "";
super();
}
public function exportXML():XML{
var _local1:XML;
var _local2:XML;
var _local3:XML;
_local1 = <portal/>
;
_local1.@id = site_id;
_local1.@language = preferedLanguage;
_local1.@channel = portalGroup;
_local2 = <domain/>
;
_local2.appendChild(new XMLNode(3, domain));
_local1.appendChild(_local2);
if (moreLink){
_local3 = <more_games_path/>
;
_local3.appendChild(new XMLNode(3, moreLink));
_local1.appendChild(_local3);
};
_local2 = <game_path/>
;
_local2.appendChild(new XMLNode(3, emailLink));
_local1.appendChild(_local2);
if (!useGoogleAnalitics){
_local1.attributes.noGoogleAnalitics = true;
};
if (!hasSendToFriendLink){
_local1.attributes.noSendToFriendLink = true;
};
return (_local1);
}
private function get utm_source():String{
return (("utm_source=brandedgames_" + (isExternal) ? "external" : "internal"));
}
public function getMoreGamesLink(_arg1:String, _arg2:Boolean, _arg3:String="", _arg4:String=""):String{
var _local5:String;
_local5 = ("http://" + domain);
_local5 = (_local5 + ("/" + moreLink));
if (useGoogleAnalitics){
_local5 = (_local5 + ("?utm_medium=brandedgames_" + (_arg2) ? "external" : "internal"));
_local5 = (_local5 + ("&utm_campaign=" + _arg1));
_arg3 = stripSubDomain(_arg3);
trace(_arg3);
if (_arg3 == "localhost"){
_arg3 = "offline_play";
};
_local5 = (_local5 + ("&utm_source=" + _arg3));
if (((!((_arg4 == ""))) && (!((_arg4 == null))))){
_local5 = (_local5 + ("&utm_content=" + _arg4));
};
};
return (_local5);
}
private function get utm_campaign():String{
if (isExternal){
return (("utm_campaign=" + hostingDomain));
};
return ("");
}
public function get backgroundColor():uint{
return (PortalGroup.backgroundColors[portalGroup]);
}
public function getPromotionLink(_arg1:String, _arg2:String, _arg3:Boolean, _arg4:String="", _arg5:String=""):String{
var _local6:String;
_local6 = ("http://" + domain);
_local6 = (_local6 + ((("/" + emailLink) + "/") + _arg2));
if (useGoogleAnalitics){
_local6 = (_local6 + ("?utm_medium=brandedgames_" + (_arg3) ? "external" : "internal"));
_local6 = (_local6 + ("&utm_campaign=" + _arg1));
_arg4 = stripSubDomain(_arg4);
trace(_arg4);
if (_arg4 == "localhost"){
_arg4 = "offline_play";
};
_local6 = (_local6 + ("&utm_source=" + _arg4));
if (((!((_arg5 == ""))) && (!((_arg5 == null))))){
_local6 = (_local6 + ("&utm_content=" + _arg5));
};
};
return (_local6);
}
private function get utm_term():String{
return ("utm_term=");
}
public function importXML(_arg1:XMLNode):void{
}
public function getSendToFriendLink(_arg1:String, _arg2:String, _arg3:Boolean, _arg4:String=""):String{
var _local5:String;
if (!hasSendToFriendLink){
return (getMoreGamesLink(_arg1, _arg3));
};
_local5 = ("http://" + domain);
_local5 = (_local5 + ((("/" + emailLink) + "/") + _arg2));
if (useGoogleAnalitics){
_local5 = (_local5 + ("?utm_medium=brandedgames_" + (_arg3) ? "external" : "internal"));
_local5 = (_local5 + ("&utm_campaign=" + _arg1));
_arg4 = stripSubDomain(_arg4);
if (_arg4 == "localhost"){
_arg4 = "offline_play";
};
_local5 = (_local5 + ("&utm_source=" + _arg4));
_local5 = (_local5 + "&utm_content=send_to_friend");
};
return (_local5);
}
private static function stripSubDomain(_arg1:String):String{
var _local2:Array;
if (!_arg1){
return ("");
};
_local2 = _arg1.split(".");
if (_local2.length <= 2){
return (_arg1);
};
_local2 = _local2.reverse();
if (topLevelDoubles.indexOf((((_local2[1] + ".") + _local2[0]) + ",")) > 0){
return (((((_local2[2] + ".") + _local2[1]) + ".") + _local2[0]));
};
return (((_local2[1] + ".") + _local2[0]));
}
}
}//package spill.localisation
Section 104
//BrandingLogo (spill.localisation.BrandingLogo)
package spill.localisation {
import flash.display.*;
import flash.events.*;
public class BrandingLogo extends MovieClip {
public function BrandingLogo(){
addFrameScript(0, frame1);
super();
stop();
mouseEnabled = false;
mouseChildren = false;
addEventListener(Event.ADDED_TO_STAGE, added, false, 0, true);
addEventListener(Event.REMOVED_FROM_STAGE, removed, false, 0, true);
if (stage){
added();
};
brandingChanged();
}
private function added(_arg1:Event=null):void{
SpilGame.addEventListener("brandingChanged", brandingChanged, false, 0, true);
brandingChanged();
}
private function brandingChanged(_arg1:Event=null):void{
if (SpilGame.currentBranding){
gotoAndStop(SpilGame.currentBranding.domain);
};
}
function frame1(){
stop();
}
private function removed(_arg1:Event):void{
SpilGame.removeEventListener("brandingChanged", brandingChanged);
}
}
}//package spill.localisation
Section 105
//Brandings (spill.localisation.Brandings)
package spill.localisation {
public class Brandings {
private static var brands_by_id:Object = new Object();
private static var brands_by_domain:Object = new Object();
public static function getBrandByID(_arg1:Number):Brand{
return (brands_by_id[_arg1]);
}
public static function getBrandsArray():Array{
var _local1:Array;
var _local2:Brand;
_local1 = new Array();
for each (_local2 in brands_by_domain) {
_local1.push(_local2);
};
return (_local1);
}
private static function addBrand(_arg1:Brand):Brand{
if (brands_by_domain[_arg1.domain]){
trace(("ERROR: Attempting to add duplicate brand by domain: " + _arg1.domain));
} else {
brands_by_domain[_arg1.domain] = _arg1;
};
if (brands_by_id[_arg1.site_id]){
trace(("ERROR: Attempting to add duplicate brand by id: " + _arg1.site_id));
} else {
brands_by_id[_arg1.site_id] = _arg1;
};
return (_arg1);
}
public static function initialize():void{
var _local1:Brand;
_local1 = new Brand();
_local1.site_id = 79;
_local1.domain = "www.agame.com";
_local1.preferedLanguage = "en_us";
_local1.portalGroup = PortalGroup.TWEEN;
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 88;
_local1.domain = "www.gamesgames.com";
_local1.preferedLanguage = "en_us";
_local1.portalGroup = PortalGroup.FAMILY;
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 90;
_local1.domain = "www.girlsgogames.com";
_local1.preferedLanguage = "en_us";
_local1.portalGroup = PortalGroup.GIRL;
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 45;
_local1.domain = "www.a10.com";
_local1.preferedLanguage = "en_us";
_local1.portalGroup = PortalGroup.TEEN;
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 92;
_local1.domain = "www.games.co.uk";
_local1.preferedLanguage = "en_uk";
_local1.portalGroup = PortalGroup.FAMILY;
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 107;
_local1.domain = "www.agame.co.uk";
_local1.preferedLanguage = "en_uk";
_local1.portalGroup = PortalGroup.TWEEN;
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 102;
_local1.domain = "www.girlsgogames.co.uk";
_local1.preferedLanguage = "en_uk";
_local1.portalGroup = PortalGroup.GIRL;
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 2;
_local1.domain = "www.game.com.cn";
_local1.moreLink = "moregames/";
_local1.preferedLanguage = "cn";
_local1.portalGroup = PortalGroup.NONE;
_local1.useGoogleAnalitics = false;
_local1.hasSendToFriendLink = false;
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 25;
_local1.domain = "www.spel.nl";
_local1.portalGroup = PortalGroup.TWEEN;
_local1.preferedLanguage = "nl";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 1;
_local1.domain = "www.spelletjes.nl";
_local1.emailLink = "spel";
_local1.portalGroup = PortalGroup.FAMILY;
_local1.preferedLanguage = "nl";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 93;
_local1.domain = "www.girlsgogames.nl";
_local1.emailLink = "spel";
_local1.portalGroup = PortalGroup.GIRL;
_local1.preferedLanguage = "nl";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 12;
_local1.domain = "www.jeu.fr";
_local1.emailLink = "jeu";
_local1.portalGroup = PortalGroup.TWEEN;
_local1.preferedLanguage = "fr";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 95;
_local1.domain = "www.girlsgogames.fr";
_local1.emailLink = "jeu";
_local1.portalGroup = PortalGroup.GIRL;
_local1.preferedLanguage = "fr";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 11;
_local1.domain = "www.jeux.fr";
_local1.emailLink = "jeu";
_local1.portalGroup = PortalGroup.FAMILY;
_local1.preferedLanguage = "fr";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 26;
_local1.domain = "www.spielen.com";
_local1.emailLink = "spiel";
_local1.portalGroup = PortalGroup.TWEEN;
_local1.preferedLanguage = "de";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 94;
_local1.domain = "www.girlsgogames.de";
_local1.emailLink = "spiel";
_local1.portalGroup = PortalGroup.GIRL;
_local1.preferedLanguage = "de";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 5;
_local1.domain = "www.jetztspielen.de";
_local1.emailLink = "spiel";
_local1.portalGroup = PortalGroup.FAMILY;
_local1.preferedLanguage = "de";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 109;
_local1.domain = "www.minigry.pl";
_local1.emailLink = "gra";
_local1.portalGroup = PortalGroup.TWEEN;
_local1.preferedLanguage = "pl";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 16;
_local1.domain = "www.gry.pl";
_local1.emailLink = "gra";
_local1.portalGroup = PortalGroup.FAMILY;
_local1.preferedLanguage = "pl";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 98;
_local1.domain = "www.girlsgogames.pl";
_local1.emailLink = "gra";
_local1.portalGroup = PortalGroup.GIRL;
_local1.preferedLanguage = "pl";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 108;
_local1.domain = "www.spel.se";
_local1.emailLink = "spel_";
_local1.portalGroup = PortalGroup.TWEEN;
_local1.preferedLanguage = "se";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 100;
_local1.domain = "www.girlsgogames.se";
_local1.emailLink = "spel_";
_local1.portalGroup = PortalGroup.GIRL;
_local1.preferedLanguage = "se";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 44;
_local1.domain = "www.spela.se";
_local1.emailLink = "spel_";
_local1.preferedLanguage = "se";
_local1.portalGroup = PortalGroup.FAMILY;
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 106;
_local1.domain = "www.giocaregratis.it";
_local1.emailLink = "gioco";
_local1.portalGroup = PortalGroup.TWEEN;
_local1.preferedLanguage = "it";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 15;
_local1.domain = "www.gioco.it";
_local1.emailLink = "gioco";
_local1.portalGroup = PortalGroup.FAMILY;
_local1.preferedLanguage = "it";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 99;
_local1.domain = "www.girlsgogames.it";
_local1.emailLink = "gioco";
_local1.portalGroup = PortalGroup.GIRL;
_local1.preferedLanguage = "it";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 97;
_local1.domain = "www.zapjuegos.com";
_local1.emailLink = "juego";
_local1.portalGroup = PortalGroup.TWEEN;
_local1.preferedLanguage = "es";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 86;
_local1.domain = "www.juegos.com";
_local1.emailLink = "juego";
_local1.portalGroup = PortalGroup.FAMILY;
_local1.preferedLanguage = "es";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 96;
_local1.domain = "www.juegosdechicas.com";
_local1.emailLink = "juego";
_local1.portalGroup = PortalGroup.GIRL;
_local1.preferedLanguage = "es";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 122;
_local1.domain = "www.girlsgogames.es";
_local1.emailLink = "juego";
_local1.portalGroup = PortalGroup.GIRL;
_local1.preferedLanguage = "es";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 91;
_local1.domain = "www.clickjogos.com";
_local1.emailLink = "jogo";
_local1.portalGroup = PortalGroup.TWEEN;
_local1.preferedLanguage = "br";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 101;
_local1.domain = "www.girlsgogames.com.br";
_local1.emailLink = "jogo";
_local1.portalGroup = PortalGroup.GIRL;
_local1.preferedLanguage = "br";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 50;
_local1.domain = "www.ojogos.com.br";
_local1.emailLink = "jogo";
_local1.portalGroup = PortalGroup.FAMILY;
_local1.preferedLanguage = "br";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 55;
_local1.domain = "www.games.co.id";
_local1.emailLink = "permainanme";
_local1.portalGroup = PortalGroup.TWEEN;
_local1.preferedLanguage = "id";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 105;
_local1.domain = "www.flashgames.ru";
_local1.emailLink = "igra";
_local1.portalGroup = PortalGroup.TWEEN;
_local1.preferedLanguage = "ru";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 104;
_local1.domain = "www.girlsgogames.ru";
_local1.emailLink = "igra";
_local1.portalGroup = PortalGroup.GIRL;
_local1.preferedLanguage = "ru";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 103;
_local1.domain = "www.ourgames.ru";
_local1.emailLink = "igra";
_local1.portalGroup = PortalGroup.FAMILY;
_local1.preferedLanguage = "ru";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 24;
_local1.domain = "www.game.co.in";
_local1.emailLink = "game";
_local1.portalGroup = PortalGroup.TWEEN;
_local1.preferedLanguage = "in";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 87;
_local1.domain = "www.ojogos.pt";
_local1.emailLink = "jogo";
_local1.portalGroup = PortalGroup.FAMILY;
_local1.preferedLanguage = "pt";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 120;
_local1.domain = "www.egames.jp";
_local1.emailLink = "game";
_local1.portalGroup = PortalGroup.TWEEN;
_local1.preferedLanguage = "jp";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 121;
_local1.domain = "www.dailygame.com";
_local1.emailLink = "/game/";
_local1.portalGroup = PortalGroup.FAMILY;
_local1.preferedLanguage = "en_us";
addBrand(_local1);
_local1 = new Brand();
_local1.site_id = 0;
_local1.domain = "gamedev.dev.spilgames.com";
_local1.portalGroup = PortalGroup.FAMILY;
_local1.preferedLanguage = null;
addBrand(_local1);
}
public static function exportXML():XML{
var _local1:XML;
var _local2:Brand;
_local1 = <portals/>
;
for each (_local2 in brands_by_domain) {
_local1.appendChild(_local2.exportXML());
};
return (_local1);
}
public static function getBrandByDomain(_arg1:String):Brand{
return (brands_by_domain[_arg1]);
}
public static function hasDomain(_arg1:String):Boolean{
return (!((brands_by_domain[_arg1] == null)));
}
}
}//package spill.localisation
Section 106
//Language (spill.localisation.Language)
package spill.localisation {
import flash.xml.*;
public class Language {
public var references:Array;
public var name:String;
public var embedInputFonts:Boolean;// = true
public var forceFont:String;// = null
public var id:uint;
public var portal_groups:Array;
public var textLanguage:String;
public var bwcId:int;
public var embedFonts:Boolean;// = true
public var displayName:String;// = ""
public var dname:String;
public function Language(_arg1:String, _arg2:String=null){
embedFonts = true;
embedInputFonts = true;
forceFont = null;
references = [];
displayName = "";
super();
name = _arg1;
dname = _arg2;
portal_groups = new Array();
}
public function exportXML():XMLNode{
var _local1:XMLNode;
var _local2:XMLNode;
var _local3:Array;
var _local4:Array;
var _local5:int;
_local1 = new XMLNode(1, "language");
_local1.attributes.name = name;
if (textLanguage != null){
_local1.attributes.textLanguage = textLanguage;
};
if (references.length){
_local1.attributes.references = references.toString();
};
_local1.attributes.id = bwcId;
_local2 = new XMLNode(1, "display_name");
_local2.firstChild = new XMLNode(3, displayName);
_local1.appendChild(_local2);
_local3 = [];
_local4 = PortalGroup.channelNames;
_local5 = 0;
while (_local5 < _local4.length) {
_local3.push(Brandings.getBrandByDomain(portal_groups[_local5]).site_id);
_local5++;
};
_local1.attributes.channels = _local3.join(",");
return (_local1);
}
public function get p_teen():String{
return (portal_groups[PortalGroup.TEEN]);
}
public function set p_teen(_arg1:String):void{
portal_groups[PortalGroup.TEEN] = _arg1;
}
public function get p_tween():String{
return (portal_groups[PortalGroup.TWEEN]);
}
public function get p_family():String{
return (portal_groups[PortalGroup.FAMILY]);
}
public function get p_girl():String{
return (portal_groups[PortalGroup.GIRL]);
}
public function set p_girl(_arg1:String):void{
portal_groups[PortalGroup.GIRL] = _arg1;
}
public function get displayAcronim():String{
return ((dname) ? dname : name);
}
public function set p_family(_arg1:String):void{
portal_groups[PortalGroup.FAMILY] = _arg1;
}
public function set p_tween(_arg1:String):void{
portal_groups[PortalGroup.TWEEN] = _arg1;
}
}
}//package spill.localisation
Section 107
//Languages (spill.localisation.Languages)
package spill.localisation {
import flash.xml.*;
public class Languages {
public static var languages:Object = new Object();
private static var _init:Boolean = false;
public static function initialize():void{
var _local1:Language;
if (_init){
return;
};
_init = true;
_local1 = new Language("nl");
_local1.displayName = "Nederlands";
_local1.p_family = "www.spelletjes.nl";
_local1.p_tween = "www.spel.nl";
_local1.p_girl = "www.girlsgogames.nl";
_local1.p_teen = "www.a10.com";
_local1.bwcId = 3;
addLanguage(_local1);
_local1 = new Language("es");
_local1.displayName = "Español";
_local1.p_family = "www.juegos.com";
_local1.p_tween = "www.zapjuegos.com";
_local1.p_girl = "www.girlsgogames.es";
_local1.p_teen = "www.a10.com";
_local1.bwcId = 9;
addLanguage(_local1);
_local1 = new Language("pl");
_local1.displayName = "Polski";
_local1.p_family = "www.gry.pl";
_local1.p_tween = "www.minigry.pl";
_local1.p_girl = "www.girlsgogames.pl";
_local1.p_teen = "www.a10.com";
_local1.bwcId = 6;
addLanguage(_local1);
_local1 = new Language("fr");
_local1.displayName = "Français";
_local1.p_family = "www.jeux.fr";
_local1.p_tween = "www.jeu.fr";
_local1.p_girl = "www.girlsgogames.fr";
_local1.p_teen = "www.a10.com";
_local1.bwcId = 4;
addLanguage(_local1);
_local1 = new Language("en_us", "us");
_local1.displayName = "English (US)";
_local1.p_family = "www.gamesgames.com";
_local1.p_tween = "www.agame.com";
_local1.p_girl = "www.girlsgogames.com";
_local1.p_teen = "www.a10.com";
_local1.bwcId = 1;
addLanguage(_local1);
addReference(_local1, "en");
_local1 = new Language("id");
_local1.displayName = "Bahasa Ind.";
_local1.p_family = "www.games.co.id";
_local1.p_tween = "www.games.co.id";
_local1.p_girl = "www.games.co.id";
_local1.p_teen = "www.a10.com";
_local1.bwcId = 11;
addLanguage(_local1);
_local1 = new Language("ru");
_local1.displayName = "Русский язык";
_local1.p_family = "www.ourgames.ru";
_local1.p_tween = "www.flashgames.ru";
_local1.p_girl = "www.girlsgogames.ru";
_local1.p_teen = "www.a10.com";
_local1.bwcId = 12;
addLanguage(_local1);
_local1 = new Language("se");
_local1.displayName = "Svenska";
_local1.p_family = "www.spela.se";
_local1.p_tween = "www.spel.se";
_local1.p_girl = "www.girlsgogames.se";
_local1.p_teen = "www.a10.com";
_local1.bwcId = 7;
addLanguage(_local1);
addReference(_local1, "sv");
_local1 = new Language("it");
_local1.displayName = "Italiano";
_local1.p_family = "www.gioco.it";
_local1.p_tween = "www.giocaregratis.it";
_local1.p_girl = "www.girlsgogames.it";
_local1.p_teen = "www.a10.com";
_local1.bwcId = 8;
addLanguage(_local1);
_local1 = new Language("en_uk", "uk");
_local1.displayName = "English (UK)";
_local1.p_family = "www.games.co.uk";
_local1.p_tween = "www.agame.co.uk";
_local1.p_girl = "www.girlsgogames.co.uk";
_local1.p_teen = "www.a10.com";
_local1.bwcId = 13;
addLanguage(_local1);
_local1 = new Language("cn");
_local1.displayName = "中文";
_local1.p_family = "www.game.com.cn";
_local1.p_tween = "www.game.com.cn";
_local1.p_girl = "www.game.com.cn";
_local1.p_teen = "www.game.com.cn";
_local1.bwcId = 2;
_local1.embedFonts = false;
_local1.embedInputFonts = false;
_local1.forceFont = "_sans";
addLanguage(_local1);
addReference(_local1, "zh-CN");
addReference(_local1, "zh-TW");
_local1 = new Language("pt");
_local1.displayName = "Português";
_local1.p_family = "www.ojogos.pt";
_local1.p_tween = "www.ojogos.pt";
_local1.p_girl = "www.ojogos.pt";
_local1.p_teen = "www.a10.com";
_local1.bwcId = 17;
addLanguage(_local1);
_local1 = new Language("in");
_local1.displayName = "India";
_local1.p_family = "www.game.co.in";
_local1.p_tween = "www.game.co.in";
_local1.p_girl = "www.game.co.in";
_local1.p_teen = "www.a10.com";
_local1.textLanguage = "en_uk";
_local1.bwcId = 14;
addLanguage(_local1);
_local1 = new Language("de");
_local1.displayName = "Deutsch";
_local1.p_family = "www.jetztspielen.de";
_local1.p_tween = "www.spielen.com";
_local1.p_girl = "www.girlsgogames.de";
_local1.p_teen = "www.a10.com";
_local1.bwcId = 5;
addLanguage(_local1);
_local1 = new Language("br");
_local1.displayName = "PortuguêsBR";
_local1.p_family = "www.ojogos.com.br";
_local1.p_tween = "www.clickjogos.com";
_local1.p_girl = "www.girlsgogames.com.br";
_local1.p_teen = "www.a10.com";
_local1.bwcId = 10;
addLanguage(_local1);
_local1 = new Language("jp");
_local1.displayName = "日本語";
_local1.p_family = "www.egames.jp";
_local1.p_tween = "www.egames.jp";
_local1.p_girl = "www.egames.jp";
_local1.p_teen = "www.a10.com";
_local1.embedFonts = true;
_local1.embedInputFonts = false;
_local1.forceFont = "MS UI Gothic";
_local1.bwcId = 19;
addLanguage(_local1);
addReference(_local1, "ja");
_local1 = new Language("ar");
_local1.displayName = "Arabic";
_local1.p_family = "www.dailygame.com";
_local1.p_tween = "www.dailygame.com";
_local1.p_girl = "www.dailygame.com";
_local1.p_teen = "www.dailygame.com";
_local1.bwcId = 20;
addLanguage(_local1);
addReference(_local1, "ar");
}
public static function exportXML():XMLNode{
var _local1:Array;
var _local2:XMLNode;
var _local3:Language;
_local1 = getLanguagesArray();
_local2 = new XMLNode(1, "languages");
for each (_local3 in _local1) {
_local2.appendChild(_local3.exportXML());
};
return (_local2);
}
public static function getLanguagesArray():Array{
var _local1:Array;
var _local2:Object;
var _local3:Language;
_local1 = new Array();
_local2 = new Object();
for each (_local3 in languages) {
if (!_local2[_local3.name]){
_local1.push(_local3);
_local2[_local3.name] = true;
};
};
return (_local1);
}
public static function getLanguage(_arg1:String):Language{
return (languages[_arg1]);
}
private static function addLanguage(_arg1:Language):void{
languages[_arg1.name] = _arg1;
}
private static function addReference(_arg1:Language, _arg2:String):void{
languages[_arg2] = _arg1;
_arg1.references.push(_arg2);
}
public static function getLanguageByOldID(_arg1:int):Language{
var _local2:Language;
for each (_local2 in languages) {
if (_local2.bwcId == _arg1){
return (_local2);
};
};
return (null);
}
}
}//package spill.localisation
Section 108
//LanguageSelectBox (spill.localisation.LanguageSelectBox)
package spill.localisation {
import flash.display.*;
import flash.events.*;
import flash.text.*;
public class LanguageSelectBox extends MovieClip {
private var flag:MovieClip;
private var mc:MovieClip;
private var popup:MovieClip;
private var languageName_text:TextField;
public function LanguageSelectBox(){
trace("new langselecbox");
super();
if (numChildren > 0){
removeChildAt(0);
};
addEventListener(Event.ADDED_TO_STAGE, added, false, 0, true);
addEventListener(Event.REMOVED_FROM_STAGE, removed, false, 0, true);
addEventListener(MouseEvent.MOUSE_OVER, mouseOver, false, 0, true);
addEventListener(MouseEvent.MOUSE_OUT, mouseOut, false, 0, true);
Languages.initialize();
popup = new LanguageSelectPopup_mc();
x = Math.round(x);
y = Math.round(y);
popup.y = (-(Math.floor(popup.height)) + 1);
popup.visible = false;
addChild(popup);
mc = new LanguageSelectBox_mc();
addChild(mc);
flag = mc.flag;
languageName_text = mc.languageName_text;
if (stage){
added();
};
init();
languageChanged();
}
private function added(_arg1:Event=null):void{
trace("addedselebnox");
SpilGame.addEventListener("languageChanged", languageChanged, false, 0, true);
}
public function set popupLocation(_arg1:String):void{
trace(("popupLocation = " + _arg1));
if (_arg1 == "bottom"){
popup.y = (Math.floor(mc.height) - 1);
} else {
popup.y = (-(Math.floor(popup.height)) + 1);
};
}
public function init():void{
var _local1:Array;
var _local2:int;
var _local3:MovieClip;
var _local4:Language;
trace("initselectbox");
_local1 = new Array(popup.l_br, popup.l_de, popup.l_en_us, popup.l_fr, popup.l_in, popup.l_jp, popup.l_pt, popup.l_ru, popup.l_ar, popup.l_cn, popup.l_en_uk, popup.l_es, popup.l_id, popup.l_it, popup.l_nl, popup.l_pl, popup.l_se);
_local2 = 0;
while (_local2 < _local1.length) {
_local3 = MovieClip(_local1[_local2]);
_local3.addEventListener(MouseEvent.CLICK, itemClicked, true, 0, true);
_local3.flag.gotoAndStop(_local3.name.substr(2));
_local3.flag.mouseEnabled = false;
_local3.text.mouseEnabled = false;
_local4 = Languages.getLanguage(_local3.name.substr(2));
if (_local4){
_local3.text.text = _local4.displayAcronim;
} else {
trace((("Error, '" + _local3.name.substr(2)) + "' language not found"));
};
_local2++;
};
}
private function mouseOver(_arg1:MouseEvent):void{
popup.visible = true;
}
private function languageChanged(_arg1:Event=null):void{
if (SpilGame.currentLanguage){
flag.gotoAndStop(SpilGame.currentLanguage.name);
languageName_text.text = SpilGame.currentLanguage.displayName;
languageName_text.embedFonts = SpilGame.currentLanguage.embedInputFonts;
};
}
private function mouseOut(_arg1:MouseEvent):void{
popup.visible = false;
}
private function removed(_arg1:Event):void{
SpilGame.removeEventListener("languageChanged", languageChanged);
}
private function itemClicked(_arg1:MouseEvent):void{
SpilGame.changeLanguage(_arg1.currentTarget.name.substr(2));
popup.visible = false;
}
}
}//package spill.localisation
Section 109
//LanguageSelectBox_mc (spill.localisation.LanguageSelectBox_mc)
package spill.localisation {
import flash.display.*;
import flash.text.*;
public dynamic class LanguageSelectBox_mc extends MovieClip {
public var flag:MovieClip;
public var languageName_text:TextField;
}
}//package spill.localisation
Section 110
//LanguageSelectPopup_mc (spill.localisation.LanguageSelectPopup_mc)
package spill.localisation {
import flash.display.*;
public dynamic class LanguageSelectPopup_mc extends MovieClip {
public var l_in:MovieClip;
public var l_ar:MovieClip;
public var l_br:MovieClip;
public var l_cn:MovieClip;
public var l_se:MovieClip;
public var l_de:MovieClip;
public var l_es:MovieClip;
public var l_en_uk:MovieClip;
public var l_fr:MovieClip;
public var l_en_us:MovieClip;
public var l_pl:MovieClip;
public var l_pt:MovieClip;
public var l_nl:MovieClip;
public var l_id:MovieClip;
public var l_it:MovieClip;
public var l_jp:MovieClip;
public var l_ru:MovieClip;
}
}//package spill.localisation
Section 111
//LocalizedTextField (spill.localisation.LocalizedTextField)
package spill.localisation {
import flash.events.*;
public class LocalizedTextField extends TextFieldFit {
private var regex:RegExp;
private var originalText:String;
public function LocalizedTextField(){
regex = /{([^{}]*)}/g;
super();
addEventListener(Event.ADDED_TO_STAGE, added, false, 0, true);
addEventListener(Event.REMOVED_FROM_STAGE, removed, false, 0, true);
added();
}
private function languageChanged(_arg1:Event):void{
text = originalText;
updateProperties();
}
override public function set text(_arg1:String):void{
originalText = _arg1;
if ((_arg1 is String)){
super.text = _arg1.replace(regex, replaceFn);
} else {
super.text = "";
};
}
private function removed(_arg1:Event):void{
SpilGame.removeEventListener("languageChanged", languageChanged);
}
private function replaceFn():String{
var _local2:String;
_local2 = SpilGame.getString(arguments[1]);
if (((!(_local2)) || ((_local2 == "")))){
return ((("{" + arguments[1]) + "}"));
};
return (_local2);
}
private function added(_arg1:Event=null):void{
SpilGame.addEventListener("languageChanged", languageChanged, false, 0, true);
text = originalText;
}
}
}//package spill.localisation
Section 112
//PortalGroup (spill.localisation.PortalGroup)
package spill.localisation {
import flash.xml.*;
public class PortalGroup {
public static const FAMILY:uint = 0;
public static const channelNames:Array = ["family", "tween", "girl", "teen"];
public static const TWEEN:uint = 1;
public static const NONE:uint = 4;
public static const TEEN:uint = 3;
public static const GIRL:uint = 2;
public static const backgroundColors:Array = [0xFFFFFF, 0xFFFFFF, 16742331, 0xFFFFFF];
public static function getName(_arg1:int):String{
return (channelNames[_arg1]);
}
public static function exportXML():XMLNode{
var _local1:XMLNode;
var _local2:int;
var _local3:XMLNode;
_local1 = new XMLNode(1, "channels");
_local2 = 0;
while (_local2 < 4) {
_local3 = new XMLNode(1, "channel");
_local3.attributes.name = channelNames[_local2];
_local3.attributes.id = _local2;
_local1.appendChild(_local3);
_local2++;
};
return (_local1);
}
}
}//package spill.localisation
Section 113
//spil_internal (spill.localisation.spil_internal)
package spill.localisation {
public namespace spil_internal = "spill.localisation";
}//package spill.localisation
Section 114
//SpilGame (spill.localisation.SpilGame)
package spill.localisation {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.net.*;
import flash.ui.*;
import flash.external.*;
import flash.system.*;
public class SpilGame {
private static const cookiePath:String = "/";
private static const cookieLanguageVar:String = "savedLang";
public static const LANGUAGE_CHANGED:String = "languageChanged";
private static const cookieName:String = "spilgames_language_v100";
public static const BRANDING_CHANGED:String = "brandingChanged";
private static var strings:Object = new Object();
public static var currentBranding:Brand;
private static var contexMenuItem:ContextMenuItem;
spil_internal static var gameName:String;
spil_internal static var debugHostDomain:String = "";
private static var localDomains:Object = new Object();
spil_internal static var emailPage:String;
private static var channelLock:Boolean = false;
spil_internal static var debugEmbedDomain:String = "";
private static var eventDispatcher:EventDispatcher;
private static var _init:Boolean = false;
public static var currentLanguage:Language;
spil_internal static var portalGroup:uint;
public static function getSpilCompanyLink():String{
if (currentLanguage.name == "cn"){
return ("http://www.game.com.cn/downloads/");
};
return ("http://www.gameportal.net");
}
public static function getPromotionLink(_arg1:String="feature_promotion"):String{
var _local2:String;
_local2 = (embedDomain) ? embedDomain : hostingDomain;
return (currentBranding.getPromotionLink(gameName, emailPage, isExternal, _local2, _arg1));
}
public static function traceAllBrands():void{
trace(outputAllBrands());
}
public static function getString(_arg1:String):String{
var _local2:Object;
_local2 = strings[_arg1];
if (_local2){
if (currentLanguage.textLanguage){
return (_local2[currentLanguage.textLanguage]);
};
return (_local2[currentLanguage.name]);
//unresolved jump
};
return ("");
}
public static function initialize(_arg1:String, _arg2:int, _arg3:String, _arg4:Sprite, _arg5:Boolean=false):void{
if (_init){
trace("ERROR: LocalisationManager already initialised");
return;
};
_init = true;
localDomains["localhost"] = true;
localDomains["www8.agame.com"] = true;
localDomains["gamedev.dev.spilgames.com"] = true;
Brandings.initialize();
Languages.initialize();
initContexMenu(_arg4);
channelLock = _arg5;
gameName = _arg1.replace(" ", "_");
portalGroup = _arg2;
emailPage = _arg3;
chooseLanguage();
chooseBranding();
}
public static function get isExternal():Boolean{
return (((!(Brandings.hasDomain(embedDomain))) && (!(localDomains[embedDomain]))));
}
private static function initContexMenu(_arg1:Sprite):void{
contexMenuItem = new ContextMenuItem("");
_arg1.contextMenu = new ContextMenu();
_arg1.contextMenu.customItems.push(contexMenuItem);
contexMenuItem.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT, contexMenuClicked);
}
private static function replaceFn():String{
var _local2:String;
_local2 = SpilGame.getString(arguments[1]);
if (((!(_local2)) || ((_local2 == "")))){
return ((("{" + arguments[1]) + "}"));
};
return (_local2);
}
public static function initTextField(_arg1:TextField):void{
var _local2:TextFormat;
trace(_arg1.text);
_arg1.text = _arg1.text.replace(/{([^{}]*)}/g, replaceFn);
trace(_arg1.text);
_arg1.embedFonts = currentLanguage.embedFonts;
if (currentLanguage.forceFont != ""){
_local2 = new TextFormat();
_local2.font = currentLanguage.forceFont;
_arg1.setTextFormat(_local2);
};
}
spil_internal static function get hostingDomain():String{
var _local1:LocalConnection;
if (debugHostDomain != ""){
return (debugHostDomain);
};
_local1 = new LocalConnection();
return (_local1.domain);
}
spil_internal static function chooseLanguage():void{
if (cookieLanguage != null){
currentLanguage = cookieLanguage;
} else {
if (isExternal){
currentLanguage = systemLanguage;
} else {
currentLanguage = portalLanguage;
if (!currentLanguage){
currentLanguage = systemLanguage;
};
};
};
if (!currentLanguage){
trace("Unable to determine language, using 'English US'");
currentLanguage = Languages.getLanguage("en_us");
};
TextFieldFit.embedFonts = currentLanguage.embedFonts;
TextFieldFit.forceFont = currentLanguage.forceFont;
dispatchEvent(new Event(LANGUAGE_CHANGED));
}
private static function contexMenuClicked(_arg1:ContextMenuEvent):void{
navigateToURL(new URLRequest(getMoreGamesLink("Contex_Menu")));
}
public static function importXMLv2(_arg1:XML):void{
var _local2:XML;
var _local3:Object;
var _local4:XML;
for each (_local2 in _arg1.children()) {
_local3 = (strings[_local2.attribute("identifier")] = new Object());
for each (_local4 in _local2.children()) {
if (_local4.children().length() > 0){
_local3[_local4.name()] = _local4.children()[0].toString();
} else {
_local3[_local4.name()] = "";
};
};
};
}
spil_internal static function changeLanguage(_arg1:String):void{
var _local2:Language;
_local2 = Languages.getLanguage(_arg1);
if (!_local2){
trace("ERROR: Supplied language string does not have a matching language");
} else {
cookieLanguage = _local2;
currentLanguage = _local2;
};
TextFieldFit.embedFonts = currentLanguage.embedFonts;
TextFieldFit.forceFont = currentLanguage.forceFont;
chooseBranding();
dispatchEvent(new Event(LANGUAGE_CHANGED));
}
public static function getSendToFriendLink():String{
return (currentBranding.getSendToFriendLink(gameName, emailPage, isExternal, embedDomain));
}
spil_internal static function chooseBranding():void{
var _local1:Brand;
var _local2:uint;
if (!isExternal){
_local1 = Brandings.getBrandByDomain(embedDomain);
if (_local1){
if (currentLanguage.name == _local1.preferedLanguage){
currentBranding = _local1;
} else {
_local2 = 0;
if ((((_local1.portalGroup == PortalGroup.NONE)) || (channelLock))){
_local2 = portalGroup;
} else {
_local2 = _local1.portalGroup;
};
currentBranding = Brandings.getBrandByDomain(currentLanguage.portal_groups[_local2]);
};
} else {
currentBranding = Brandings.getBrandByDomain(currentLanguage.portal_groups[portalGroup]);
};
} else {
currentBranding = Brandings.getBrandByDomain(currentLanguage.portal_groups[portalGroup]);
};
if ((!(currentBranding) is Brand)){
currentBranding = Brandings.getBrandByDomain("www.agame.com");
};
contexMenuItem.caption = ("More Games: " + currentBranding.domain);
dispatchEvent(new Event(BRANDING_CHANGED));
}
spil_internal static function get systemLanguage():Language{
return (Languages.getLanguage(Capabilities.language));
}
spil_internal static function set cookieLanguage(_arg1:Language):void{
var _local2:SharedObject;
_local2 = SharedObject.getLocal(cookieName, cookiePath);
if (_arg1 == null){
_local2.data[cookieLanguageVar] = null;
} else {
_local2.data[cookieLanguageVar] = _arg1.name;
};
_local2.flush();
}
public static function importXML(_arg1:XML):void{
var _local2:XML;
var _local3:Object;
var _local4:XML;
for each (_local2 in _arg1.children()) {
_local3 = (strings[_local2.identifier] = new Object());
for each (_local4 in _local2.children()) {
_local3[_local4.name()] = _local4.children()[0].toString();
};
};
}
spil_internal static function dispatchEvent(_arg1:Event):void{
if (!eventDispatcher){
eventDispatcher = new EventDispatcher();
};
eventDispatcher.dispatchEvent(_arg1);
}
private static function getDomain(_arg1:String):String{
var _local2:String;
var _local3:uint;
if (_arg1.indexOf("file") == 0){
return ("offline_play");
};
_local2 = new String();
_local3 = 7;
while (_local3 < _arg1.length) {
if (_arg1.charAt(_local3) == "/"){
break;
};
_local2 = (_local2 + _arg1.charAt(_local3));
_local3++;
};
if (_local2 == "localhost"){
_local2 = "offline_play";
};
return (_local2);
}
public static function exportXML():XML{
var _local1:XML;
_local1 = <spil_games/>
;
_local1.appendChild(Brandings.exportXML());
_local1.appendChild(Languages.exportXML());
_local1.appendChild(PortalGroup.exportXML());
return (_local1);
}
public static function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
if (!eventDispatcher){
eventDispatcher = new EventDispatcher();
};
eventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public static function outputAllBrands():String{
var _local1:Array;
var _local2:String;
var _local3:Brand;
_local1 = Brandings.getBrandsArray();
_local2 = "";
for each (_local3 in _local1) {
_local2 = (_local2 + (_local3.getSendToFriendLink(gameName, emailPage, isExternal, embedDomain) + "\n"));
};
return (_local2);
}
public static function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
if (!eventDispatcher){
eventDispatcher = new EventDispatcher();
};
eventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public static function getMoreGamesLink(_arg1:String=""):String{
var _local2:String;
_local2 = (embedDomain) ? embedDomain : hostingDomain;
return (currentBranding.getMoreGamesLink(gameName, isExternal, _local2, _arg1));
}
spil_internal static function get cookieLanguage():Language{
var _local1:SharedObject;
var _local2:String;
_local1 = SharedObject.getLocal(cookieName, cookiePath);
_local2 = String(_local1.data[cookieLanguageVar]);
return (Languages.getLanguage(_local2));
}
private static function get portalLanguage():Language{
var _local1:Brand;
var _local2:String;
var _local3:Language;
if (isExternal){
return (null);
};
if (!embedDomain){
return (null);
};
_local1 = Brandings.getBrandByDomain(embedDomain);
if (!_local1){
return (null);
};
_local2 = _local1.preferedLanguage;
if (!_local2){
return (null);
};
_local3 = Languages.getLanguage(_local2);
if (!_local3){
return (null);
};
return (_local3);
}
spil_internal static function get embedDomain():String{
var loc:String;
if (debugEmbedDomain != ""){
return (debugEmbedDomain);
};
if (ExternalInterface.available){
try {
loc = ExternalInterface.call("window.location.href.toString");
if (((!((loc == ""))) && (!((loc == null))))){
trace(("embed domain = " + getDomain(loc)));
return (getDomain(loc));
};
} catch(e:SecurityError) {
trace(("Security Error connecting to external interface, error = " + e));
} catch(e:Error) {
trace(("Error connecting to external interface, error = " + e));
};
};
return (null);
}
}
}//package spill.localisation
Section 115
//SpilGamesLink (spill.localisation.SpilGamesLink)
package spill.localisation {
import flash.display.*;
import flash.events.*;
import flash.net.*;
public class SpilGamesLink extends SimpleButton {
public function SpilGamesLink(){
addEventListener(MouseEvent.CLICK, buttonClicked);
}
private function buttonClicked(_arg1:MouseEvent):void{
navigateToURL(new URLRequest(SpilGame.getSpilCompanyLink()), "_blank");
}
}
}//package spill.localisation
Section 116
//TextFieldFit (spill.localisation.TextFieldFit)
package spill.localisation {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
import flash.filters.*;
public class TextFieldFit extends MovieClip {
protected var _text:String;// = "default"
protected var _textSize:Number;// = 12
protected var _embedFonts:Boolean;// = true
protected var _glowColor:uint;// = 0
private var h:Number;
protected var _antiAliasType:String;// = "advanced"
private var w:Number;
protected var _useGlowFilter:Boolean;// = false
protected var _hAlign:String;// = "left"
protected var _textColor:uint;// = 0
protected var _glowStrength:Number;// = 5
protected var _glowBlur:Number;// = 3
private var field:TextField;
protected var _gridFitType:String;// = "pixel"
protected var _glowQuality:Number;// = 1
private var debugBounding:Sprite;
protected var _disableWordwrap:Boolean;// = false
protected var _multiline:Boolean;// = false
protected var _font:String;// = ""
protected var _underline:Boolean;// = false
protected var _vAlign:String;// = "top"
protected var _italic:Boolean;// = false
protected var _bold:Boolean;// = false
private var sizeChanged:Boolean;// = true
private var embeddedFonts:Array;
protected var _selectable:Boolean;// = false
private var format:TextFormat;
private var valid:Boolean;// = true
private static const gutter:Number = 2;
spil_internal static var embedFonts:Boolean = true;
spil_internal static var forceAAType:String = null;
spil_internal static var forceFont:String = null;
public static var alwaysCheckWidth:Boolean = false;
public function TextFieldFit(){
var _local1:Boolean;
var _local2:Number;
var _local3:Number;
sizeChanged = true;
valid = true;
_text = "default";
_textColor = 0;
_textSize = 12;
_multiline = false;
_disableWordwrap = false;
_hAlign = "left";
_vAlign = "top";
_bold = false;
_underline = false;
_italic = false;
_selectable = false;
_font = "";
_embedFonts = true;
_antiAliasType = "advanced";
_gridFitType = "pixel";
_useGlowFilter = false;
_glowBlur = 3;
_glowColor = 0;
_glowStrength = 5;
_glowQuality = 1;
super();
_local1 = ((!((parent == null))) && ((getQualifiedClassName(parent) == "fl.livepreview::LivePreviewParent")));
_local2 = width;
_local3 = height;
if (numChildren > 0){
removeChildAt(0);
};
if (!field){
field = new TextField();
addChild(field);
};
field.border = false;
field.background = false;
field.type = TextFieldType.DYNAMIC;
mouseEnabled = false;
mouseChildren = false;
format = new TextFormat();
embeddedFonts = Font.enumerateFonts(false);
setSize(_local2, _local3);
validate();
if (stage){
addEventListener(Event.RENDER, init);
stage.invalidate();
};
init();
}
private function resizeText(_arg1:Boolean=false):void{
if (!doesTextFit()){
format.size = Object((Number(format.size) - 1));
if (format.size <= 3){
trace("WARNING: Text resised to 3px, either an error occured or the text just wont fit");
return;
};
field.setTextFormat(format);
resizeText(true);
} else {
if (_arg1 == false){
while (doesTextFit()) {
if (format.size <= textSize){
format.size = Object((Number(format.size) + 1));
field.setTextFormat(format);
if (!doesTextFit()){
format.size = Object((Number(format.size) - 1));
field.setTextFormat(format);
break;
};
} else {
break;
};
};
};
};
}
public function get italic():Boolean{
return (_italic);
}
public function get textColor():uint{
return (_textColor);
}
public function get vAlign():String{
return (_vAlign);
}
public function get useGlowFilter():Boolean{
return (_useGlowFilter);
}
public function get selectable():Boolean{
return (_selectable);
}
public function set italic(_arg1:Boolean):void{
_italic = _arg1;
invalidate();
}
public function set text(_arg1:String):void{
_text = _arg1;
invalidate();
}
public function set vAlign(_arg1:String):void{
_vAlign = _arg1;
invalidate();
}
public function get font():String{
return (_font);
}
public function set textColor(_arg1:uint):void{
_textColor = _arg1;
invalidate();
}
public function get antiAliasType():String{
return (_antiAliasType);
}
public function get bold():Boolean{
return (_bold);
}
public function set useGlowFilter(_arg1:Boolean):void{
_useGlowFilter = _arg1;
invalidate();
}
public function set font(_arg1:String):void{
_font = _arg1;
invalidate();
}
public function set selectable(_arg1:Boolean):void{
_selectable = _arg1;
invalidate();
}
public function get multiline():Boolean{
return (_multiline);
}
public function set disableWordwrap(_arg1:Boolean):void{
_disableWordwrap = _arg1;
invalidate();
}
public function get glowQuality():Number{
return (_glowQuality);
}
public function get embedFonts():Boolean{
return (_embedFonts);
}
public function get gridFitType():String{
return (_gridFitType);
}
public function get underline():Boolean{
return (_underline);
}
public function get textSize():Number{
return (_textSize);
}
public function set antiAliasType(_arg1:String):void{
_antiAliasType = _arg1;
invalidate();
}
protected function updateProperties():void{
var _local1:Boolean;
var _local2:Font;
field.text = _text;
field.multiline = ((((_text.indexOf(" ") < 0)) && ((_text.length < 14)))) ? false : _multiline;
field.wordWrap = ((field.multiline) && (!(_disableWordwrap)));
field.selectable = _selectable;
field.antiAliasType = (forceAAType) ? forceAAType : _antiAliasType;
field.gridFitType = _gridFitType;
embeddedFonts = Font.enumerateFonts(false);
if (((((_embedFonts) && (!((_font == ""))))) && (TextFieldFit.embedFonts))){
_local1 = false;
for each (_local2 in embeddedFonts) {
if (_font == _local2.fontName){
_local1 = true;
break;
};
};
field.embedFonts = _local1;
if (!_local1){
trace(((("WARNING: Embedded font '" + _font) + "' not found, disabling embedding of fonts, text = ") + _text));
};
} else {
field.embedFonts = false;
};
if (TextFieldFit.forceFont){
format.font = TextFieldFit.forceFont;
} else {
if (_font != ""){
format.font = _font;
};
};
if (sizeChanged){
format.size = _textSize;
};
format.color = _textColor;
format.align = _hAlign;
format.bold = _bold;
format.italic = _italic;
format.underline = _underline;
format.leftMargin = 0;
format.rightMargin = 0;
field.setTextFormat(format);
if (_useGlowFilter){
filters = [new GlowFilter(_glowColor, 1, _glowBlur, _glowBlur, _glowStrength, _glowQuality)];
} else {
filters = [];
};
}
private function doesTextFit():Boolean{
if (((((field.textHeight + (gutter * 2)) > h)) || (((((field.textWidth + (gutter * 2)) > w)) && (((!(field.multiline)) || (alwaysCheckWidth))))))){
return (false);
};
return (true);
}
public function get glowStrength():Number{
return (_glowStrength);
}
public function set hAlign(_arg1:String):void{
_hAlign = _arg1;
invalidate();
}
private function init(_arg1:Event=null):void{
removeEventListener(Event.RENDER, init);
updateProperties();
layoutText();
}
public function set bold(_arg1:Boolean):void{
_bold = _arg1;
invalidate();
}
private function validate(_arg1:Event=null):void{
updateProperties();
layoutText();
removeEventListener(Event.ENTER_FRAME, validate);
valid = true;
}
public function get text():String{
return (_text);
}
public function set glowBlur(_arg1:Number):void{
_glowBlur = _arg1;
invalidate();
}
private function invalidate():void{
if (valid){
addEventListener(Event.ENTER_FRAME, validate);
if (stage){
stage.invalidate();
};
valid = false;
};
}
public function set embedFonts(_arg1:Boolean):void{
_embedFonts = _arg1;
invalidate();
}
public function set multiline(_arg1:Boolean):void{
_multiline = _arg1;
invalidate();
}
public function get disableWordwrap():Boolean{
return (_disableWordwrap);
}
public function set glowQuality(_arg1:Number):void{
_glowQuality = _arg1;
invalidate();
}
private function layoutText():void{
resizeText();
field.height = (field.textHeight + (gutter * 2));
if (vAlign == "top"){
field.y = 0;
} else {
if (vAlign == "middle"){
field.y = ((h - field.height) / 2);
} else {
if (vAlign == "bottom"){
field.y = (h - field.height);
};
};
};
}
public function get hAlign():String{
return (_hAlign);
}
public function setSize(_arg1:Number, _arg2:Number):void{
w = _arg1;
h = _arg2;
scaleX = (scaleY = 1);
field.width = w;
field.height = h;
invalidate();
}
public function set gridFitType(_arg1:String):void{
_gridFitType = _arg1;
invalidate();
}
public function set underline(_arg1:Boolean):void{
_underline = _arg1;
invalidate();
}
public function get glowBlur():Number{
return (_glowBlur);
}
public function set textSize(_arg1:Number):void{
_textSize = _arg1;
sizeChanged = true;
invalidate();
}
public function set glowColor(_arg1:uint):void{
_glowColor = _arg1;
invalidate();
}
public function get glowColor():uint{
return (_glowColor);
}
public function set glowStrength(_arg1:Number):void{
_glowStrength = _arg1;
invalidate();
}
}
}//package spill.localisation
Section 117
//Submitter (Spill.Components.Submitter)
package Spill.Components {
import flash.display.*;
public dynamic class Submitter extends MovieClip {
public var OO00OO1l1l:OOO000lll;
}
}//package Spill.Components
Section 118
//O1OOO0O00 (Util.O1OOO0O00)
package Util {
import flash.net.*;
import flash.external.*;
public class O1OOO0O00 {
private static const _O1lO0Oll1:Array = ["www.a10.com.gp.dev.spilgames.eu", "stg.pl.a10.com", "gamedev.dev.spilgames.com", "www.agame.com", "www.girlsgogames.com", "www.games.co.uk", "www.mygames.co.uk", "www.girlsgogames.co.uk", "www.spel.nl", "www.spelletjes.nl", "www.girlsgogames.nl", "www.jetztspielen.de", "www.spielen.com", "www.girlsgogames.de", "www.jeux.fr", "www.jeu.fr", "www.girlsgogames.fr", "www.juegos.com", "www.zapjuegos.com", "www.juegosdechicas.com", "www.gioco.it", "www.giocaregratis.it", "www.girlsgogames.it", "www.gry.pl", "www.minigry.pl", "www.girlsgogames.pl", "www.spela.se", "www.spel.eu", "www.girlsgogames.se", "www.ojogos.pt", "www.ourgames.ru", "www.flashgames.ru", "www.girlsgogames.ru", "www.oyunlar123.com", "www.asoyun.com", "www.girlsgogamestr.com", "www.gamesgames.com", "www.agame.com", "www.girlsgogames.com", "www.juegos.com", "www.zapjuegos.com", "www.juegosdechicas.com", "www.ojogos.com.br", "www.clickjogos.com", "www.girlsgogames.com.br", "www.game.com.cn", "www.xiaoyouxi.com", "www.egames.jp", "www.game.co.in", "www.game.co.in", "www.girlsgogames.in", "www.games.co.id", "www.laro.com.ph", "www.game.com.my", "www.onrpg.com", "www.zlonggames.com", "www.a10.com", "localhost"];
private static var _OOl10ll1l:URLRequest;
private static var _O0Oll0l00;
public function O1OOO0O00():void{
super();
try {
_O0Oll0l00 = ExternalInterface.call("window.location.href.toString");
} catch(e) {
_O0Oll0l00 = "error";
};
if ((((_O0Oll0l00 == null)) || ((_O0Oll0l00 == "")))){
_O0Oll0l00 = "error";
};
if (String(_O0Oll0l00).indexOf(".swf") != -1){
_O0Oll0l00 = "error";
};
}
public function O0111l110():Boolean{
if (((!((_O001llOll(_O11ll1l00(_O0Oll0l00)) == -1))) && (!((_O0Oll0l00 == "error"))))){
return (true);
};
return (false);
}
private static function _O11ll1l00(_arg1:String):String{
var _local2:String = new String();
var _local3:uint = 7;
while (_local3 < _arg1.length) {
if (_arg1.charAt(_local3) == "/"){
break;
};
_local2 = (_local2 + _arg1.charAt(_local3));
_local3++;
};
return (_local2);
}
private static function _O001llOll(_arg1:String):Number{
var _local2:uint;
if (((_O1lO0Oll1) && (_arg1))){
_local2 = 0;
while (_local2 < _O1lO0Oll1.length) {
if (_arg1 == _O1lO0Oll1[_local2]){
return (_local2);
};
_local2++;
};
return (-1);
} else {
trace("cannot find site name");
};
return (-1);
}
}
}//package Util
Section 119
//Boss1 (Boss1)
package {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import caurina.transitions.*;
import flash.filters.*;
import flash.ui.*;
public class Boss1 extends MovieClip {
public var life:Number;
private var a_x:Number;
private var a_y:Number;
private var chngPosCount:Number;
public var typeOfDestruction:String;
private var shootTimer:Timer;
private var myGlow:GlowFilter;
private var entryXpos:Number;
private var newYpos:Number;
private var rateOfShoot:Number;
private var spd:Number;
private var newXpos:Number;
public var lifeDenominator:Number;
private var _angle:Number;
public function Boss1(_arg1:Number, _arg2:Number){
myGlow = new GlowFilter();
super();
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
this.x = _arg1;
this.y = _arg2;
init();
}
public function init(){
life = 1200;
lifeDenominator = life;
spd = 4;
chngPosCount = (Math.floor((Math.random() * (4 - 2))) + 2);
entryXpos = (Math.floor((Math.random() * (500 - 400))) + 400);
Tweener.addTween(this, {x:entryXpos, time:1.8, transition:"linear", onComplete:posChange});
rateOfShoot = (Math.floor((Math.random() * (800 - 500))) + 500);
shootTimer = new Timer(rateOfShoot, 0);
shootTimer.addEventListener(TimerEvent.TIMER, shoot);
shootTimer.start();
}
private function posChange(){
var _local1:Number;
chngPosCount++;
_local1 = (Math.floor((Math.random() * (2 - 0))) + 0);
newXpos = (Math.floor((Math.random() * (600 - 480))) + 480);
if (this.y <= 240){
newYpos = (Math.floor((Math.random() * (420 - 300))) + 300);
Tweener.addTween(this, {x:newXpos, y:newYpos, time:2, transition:"linear", delay:_local1, onComplete:posChange});
} else {
newYpos = (Math.floor((Math.random() * (230 - 100))) + 100);
Tweener.addTween(this, {x:newXpos, y:newYpos, time:2, transition:"linear", delay:_local1, onComplete:posChange});
};
}
private function shoot(_arg1:TimerEvent){
if ((((MovieClip(parent.parent).lives <= 0)) && ((MovieClip(parent.parent).lifeNumerator <= 0)))){
} else {
MovieClip(parent.parent).attBoss1Ammo1(this);
};
}
public function looper(){
if (life <= 0){
MovieClip(parent.parent).attExplosion5(this, 1);
lifeBar(life, lifeDenominator);
destruct("");
} else {
lifeBar(life, lifeDenominator);
if (this.x <= -150){
destruct("");
};
};
}
public function lifeBar(_arg1:Number, _arg2:Number){
MovieClip(parent.parent).bossLifeUI_mc.bosslifeBar_mc.scaleX = (_arg1 / _arg2);
if (MovieClip(parent.parent).bossLifeUI_mc.bosslifeBar_mc.scaleX <= 0){
MovieClip(parent.parent).bossLifeUI_mc.bosslifeBar_mc.scaleX = 0;
};
}
public function changePos(){
Tweener.addTween(this, {x:(entryXpos + 100), y:-200, time:1.8, transition:"linear", delay:1, onComplete:deviateDestruct});
}
public function destruct(_arg1:String){
Tweener.removeTweens(this);
MovieClip(parent.parent).updateKillScore(5);
shootTimer.stop();
shootTimer.removeEventListener(TimerEvent.TIMER, shoot);
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).bossArray, this);
}
public function deviateDestruct(){
Tweener.removeTweens(this);
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).enemyArray, this);
}
}
}//package
Section 120
//Boss1Ammo1 (Boss1Ammo1)
package {
import flash.display.*;
import flash.events.*;
public class Boss1Ammo1 extends MovieClip {
public var xSpd:Number;
public var typeOfDestruction:String;
public var ySpd:Number;
public var mc:MovieClip;
public var spd:Number;
public var grvty:Number;
public var angle:Number;
public var rot:Number;
public function Boss1Ammo1(_arg1:MovieClip, _arg2:Number){
this.x = _arg1.x;
this.y = _arg1.y;
this.rotation = _arg2;
trace(("this.x" + this.x));
init();
}
public function init(){
spd = 12;
grvty = 1;
angle = ((this.rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function looper(){
if ((((this.x < 0)) || ((this.y > 480)))){
destruct("");
} else {
this.x = (this.x + xSpd);
this.y = (this.y + ySpd);
};
}
public function destruct(_arg1:String){
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).boss1Ammo1Array, this);
}
}
}//package
Section 121
//Boss2 (Boss2)
package {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import caurina.transitions.*;
import flash.filters.*;
import flash.ui.*;
public class Boss2 extends MovieClip {
public var life:Number;
private var a_x:Number;
private var a_y:Number;
private var chngPosCount:Number;
private var wpn2shootTimer:Timer;
public var typeOfDestruction:String;
private var myGlow:GlowFilter;
private var entryXpos:Number;
private var newYpos:Number;
private var wpn1shootTimer:Timer;
private var rateOfShoot:Number;
private var spd:Number;
private var newXpos:Number;
public var lifeDenominator:Number;
private var _angle:Number;
private var wpn1coolDownTimer:Timer;
public function Boss2(_arg1:Number, _arg2:Number){
myGlow = new GlowFilter();
super();
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
this.x = _arg1;
this.y = _arg2;
init();
}
private function wpn1shootCease(_arg1:TimerEvent){
wpn1shootTimer.reset();
wpn1coolDownTimer.start();
}
public function init(){
life = 2000;
lifeDenominator = life;
spd = 4;
chngPosCount = (Math.floor((Math.random() * (4 - 2))) + 2);
entryXpos = (Math.floor((Math.random() * (500 - 400))) + 400);
Tweener.addTween(this, {x:entryXpos, time:1.8, transition:"linear", onComplete:posChange});
rateOfShoot = 300;
wpn1shootTimer = new Timer(rateOfShoot, 6);
wpn1shootTimer.addEventListener(TimerEvent.TIMER, wpn1shoot);
wpn1shootTimer.addEventListener(TimerEvent.TIMER_COMPLETE, wpn1shootCease);
wpn1shootTimer.start();
wpn1coolDownTimer = new Timer(1000, 3);
wpn1coolDownTimer.addEventListener(TimerEvent.TIMER_COMPLETE, wpn1shootOpen);
wpn2shootTimer = new Timer(2000, 0);
wpn2shootTimer.addEventListener(TimerEvent.TIMER, wpn2shootOpen);
wpn2shootTimer.start();
}
private function posChange(){
var _local1:Number;
chngPosCount++;
_local1 = (Math.floor((Math.random() * (2 - 0))) + 0);
newXpos = (Math.floor((Math.random() * (600 - 480))) + 480);
if (this.y <= 240){
newYpos = (Math.floor((Math.random() * (420 - 300))) + 300);
Tweener.addTween(this, {x:newXpos, y:MovieClip(parent).plyr_mc.y, time:1, transition:"linear", delay:_local1, onComplete:posChange});
} else {
newYpos = (Math.floor((Math.random() * (230 - 100))) + 100);
Tweener.addTween(this, {x:newXpos, y:MovieClip(parent).plyr_mc.y, time:1, transition:"linear", delay:_local1, onComplete:posChange});
};
}
public function looper(){
if (life <= 0){
MovieClip(parent.parent).attExplosion5(this, 2);
lifeBar(life, lifeDenominator);
destruct("");
} else {
lifeBar(life, lifeDenominator);
if (this.x <= -150){
destruct("");
};
};
}
private function wpn1shootOpen(_arg1:TimerEvent){
wpn1shootTimer.start();
}
public function lifeBar(_arg1:Number, _arg2:Number){
MovieClip(parent.parent).bossLifeUI_mc.bosslifeBar_mc.scaleX = (_arg1 / _arg2);
if (MovieClip(parent.parent).bossLifeUI_mc.bosslifeBar_mc.scaleX <= 0){
MovieClip(parent.parent).bossLifeUI_mc.bosslifeBar_mc.scaleX = 0;
};
}
private function wpn1shoot(_arg1:TimerEvent){
if ((((MovieClip(parent.parent).lives <= 0)) && ((MovieClip(parent.parent).lifeNumerator <= 0)))){
} else {
MovieClip(parent.parent).attBoss2Ammo1(this);
};
}
public function changePos(){
Tweener.addTween(this, {x:(entryXpos + 100), y:-200, time:1.8, transition:"linear", delay:1, onComplete:deviateDestruct});
}
public function destruct(_arg1:String){
Tweener.removeTweens(this);
MovieClip(parent.parent).updateKillScore(5);
wpn1shootTimer.stop();
wpn1coolDownTimer.stop();
wpn1shootTimer.removeEventListener(TimerEvent.TIMER, wpn1shoot);
wpn2shootTimer.removeEventListener(TimerEvent.TIMER, wpn2shootOpen);
wpn1shootTimer.removeEventListener(TimerEvent.TIMER_COMPLETE, wpn1shootCease);
wpn1coolDownTimer.removeEventListener(TimerEvent.TIMER_COMPLETE, wpn1shootOpen);
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).bossArray, this);
}
private function wpn2shootOpen(_arg1:TimerEvent){
if ((((MovieClip(parent.parent).lives <= 0)) && ((MovieClip(parent.parent).lifeNumerator <= 0)))){
} else {
MovieClip(parent.parent).attBoss2Ammo2(this);
};
}
public function deviateDestruct(){
Tweener.removeTweens(this);
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).enemyArray, this);
}
}
}//package
Section 122
//Boss2Ammo1 (Boss2Ammo1)
package {
import flash.display.*;
import flash.events.*;
public class Boss2Ammo1 extends MovieClip {
public var xSpd:Number;
public var typeOfDestruction:String;
public var ySpd:Number;
public var mc:MovieClip;
public var spd:Number;
public var grvty:Number;
public var angle:Number;
public var rot:Number;
public function Boss2Ammo1(_arg1:MovieClip){
this.x = _arg1.x;
this.y = _arg1.y;
this.rotation = 180;
init();
}
public function init(){
spd = 12;
grvty = 1;
angle = ((this.rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function looper(){
if ((((((this.x < -50)) || ((this.x > 680)))) || ((this.y > 480)))){
destruct("");
} else {
this.x = (this.x + xSpd);
this.y = (this.y + ySpd);
};
}
public function destruct(_arg1:String){
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).boss2Ammo1Array, this);
}
}
}//package
Section 123
//Boss2Ammo2 (Boss2Ammo2)
package {
import flash.display.*;
import flash.events.*;
public class Boss2Ammo2 extends MovieClip {
public var life:Number;
public var xSpd:Number;
public var typeOfDestruction:String;
public var ySpd:Number;
public var mc:MovieClip;
public var spd:Number;
public var grvty:Number;
public var angle:Number;
public var rot:Number;
public function Boss2Ammo2(_arg1:MovieClip){
this.rotation = _arg1.rotation;
init();
}
public function init(){
spd = 12;
grvty = 1;
life = 2;
angle = ((MovieClip(this).rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function followPlyr(_arg1:MovieClip){
var _local2:Number;
var _local3:Number;
var _local4:*;
var _local5:*;
var _local6:Number;
if ((((MovieClip(parent.parent).lives <= 0)) && ((MovieClip(parent.parent).lifeNumerator <= 0)))){
} else {
_local2 = (_arg1.x - this.x);
_local3 = (_arg1.y - this.y);
_local4 = Math.atan((_local3 / _local2));
_local5 = ((_local4 * 180) / Math.PI);
if (_local2 < 0){
_local5 = (_local5 - 180);
};
_local6 = _local5;
this.rotation = _local5;
_local5 = _local6;
_local4 = ((_local5 / 180) * Math.PI);
_local2 = Math.cos(_local4);
_local3 = Math.sin(_local4);
_local2 = (_local2 * spd);
_local3 = (_local3 * spd);
};
this.x = (this.x + _local2);
this.y = (this.y + _local3);
}
public function looper(){
if (life <= 0){
destruct("hit");
} else {
if ((((((this.x < -50)) || ((this.x > 680)))) || ((this.y > 480)))){
destruct("outBounds");
} else {
if (this.hitTestObject(MovieClip(parent).plyr_mc)){
destruct("hit");
} else {
followPlyr(MovieClip(parent).plyr_mc);
};
};
};
}
public function destruct(_arg1:String){
if (_arg1 == "hit"){
MovieClip(parent.parent).attExplosion1(this);
MovieClip(parent.parent).attDebris(this);
} else {
if (_arg1 == "outBounds"){
};
};
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).boss2Ammo2Array, this);
}
}
}//package
Section 124
//Boss3 (Boss3)
package {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import caurina.transitions.*;
import flash.filters.*;
import flash.ui.*;
public class Boss3 extends MovieClip {
public var life:Number;
private var a_x:Number;
private var a_y:Number;
private var wpn3shootTimer:Timer;
private var chngPosCount:Number;
private var wpn2shootTimer:Timer;
public var typeOfDestruction:String;
private var myGlow:GlowFilter;
private var entryXpos:Number;
private var newYpos:Number;
private var wpn2coolDownTimer:Timer;
private var wpn1shootTimer:Timer;
private var rateOfShoot:Number;
private var spd:Number;
private var newXpos:Number;
public var lifeDenominator:Number;
private var _angle:Number;
private var wpn1coolDownTimer:Timer;
public function Boss3(_arg1:Number, _arg2:Number){
myGlow = new GlowFilter();
super();
this.x = _arg1;
this.y = _arg2;
init();
}
private function wpn1shootCease(_arg1:TimerEvent){
wpn1shootTimer.reset();
wpn1coolDownTimer.start();
}
public function init(){
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
life = 3000;
lifeDenominator = life;
spd = 4;
chngPosCount = (Math.floor((Math.random() * (4 - 2))) + 2);
entryXpos = (Math.floor((Math.random() * (500 - 400))) + 400);
Tweener.addTween(this, {x:entryXpos, time:1.8, transition:"linear", onComplete:posChange});
rateOfShoot = 500;
wpn1shootTimer = new Timer(rateOfShoot, 5);
wpn1shootTimer.addEventListener(TimerEvent.TIMER, wpn1shoot);
wpn1shootTimer.addEventListener(TimerEvent.TIMER_COMPLETE, wpn1shootCease);
wpn1shootTimer.start();
wpn1coolDownTimer = new Timer(2000, 3);
wpn1coolDownTimer.addEventListener(TimerEvent.TIMER_COMPLETE, wpn1shootOpen);
wpn2shootTimer = new Timer(150, 6);
wpn2shootTimer.addEventListener(TimerEvent.TIMER, wpn2shoot);
wpn2shootTimer.addEventListener(TimerEvent.TIMER_COMPLETE, wpn2shootCease);
wpn2coolDownTimer = new Timer(1500, 1);
wpn2coolDownTimer.addEventListener(TimerEvent.TIMER_COMPLETE, wpn2shootOpen);
wpn2coolDownTimer.start();
wpn3shootTimer = new Timer(4000, 0);
wpn3shootTimer.addEventListener(TimerEvent.TIMER, wpn3shoot);
wpn3shootTimer.start();
}
private function wpn2shoot(_arg1:TimerEvent){
if ((((MovieClip(parent.parent).lives <= 0)) && ((MovieClip(parent.parent).lifeNumerator <= 0)))){
} else {
MovieClip(parent.parent).attBoss3Ammo2(this);
};
}
private function posChange(){
var _local1:Number;
chngPosCount++;
_local1 = (Math.floor((Math.random() * (2 - 0))) + 0);
newXpos = (Math.floor((Math.random() * (600 - 480))) + 480);
if (this.y <= 240){
newYpos = (Math.floor((Math.random() * (420 - 300))) + 300);
Tweener.addTween(this, {x:newXpos, y:newYpos, time:1, transition:"linear", delay:_local1, onComplete:posChange});
} else {
newYpos = (Math.floor((Math.random() * (230 - 100))) + 100);
Tweener.addTween(this, {x:newXpos, y:newYpos, time:1, transition:"linear", delay:_local1, onComplete:posChange});
};
}
public function looper(){
if (life <= 0){
MovieClip(parent.parent).attExplosion5(this, 3);
lifeBar(life, lifeDenominator);
destruct("");
} else {
lifeBar(life, lifeDenominator);
if (this.x <= -150){
destruct("");
};
};
}
private function wpn1shootOpen(_arg1:TimerEvent){
wpn1shootTimer.start();
}
public function lifeBar(_arg1:Number, _arg2:Number){
MovieClip(parent.parent).bossLifeUI_mc.bosslifeBar_mc.scaleX = (_arg1 / _arg2);
if (MovieClip(parent.parent).bossLifeUI_mc.bosslifeBar_mc.scaleX <= 0){
MovieClip(parent.parent).bossLifeUI_mc.bosslifeBar_mc.scaleX = 0;
};
}
private function wpn1shoot(_arg1:TimerEvent){
if ((((MovieClip(parent.parent).lives <= 0)) && ((MovieClip(parent.parent).lifeNumerator <= 0)))){
} else {
MovieClip(parent.parent).attBoss3Ammo1(this);
};
}
public function destruct(_arg1:String){
Tweener.removeTweens(this);
MovieClip(parent.parent).updateKillScore(5);
wpn1shootTimer.stop();
wpn1coolDownTimer.stop();
wpn1shootTimer.removeEventListener(TimerEvent.TIMER, wpn1shoot);
wpn2shootTimer.removeEventListener(TimerEvent.TIMER, wpn2shoot);
wpn3shootTimer.removeEventListener(TimerEvent.TIMER, wpn3shoot);
wpn2shootTimer.removeEventListener(TimerEvent.TIMER, wpn2shootOpen);
wpn2coolDownTimer.removeEventListener(TimerEvent.TIMER_COMPLETE, wpn2shootOpen);
wpn1shootTimer.removeEventListener(TimerEvent.TIMER_COMPLETE, wpn1shootCease);
wpn1coolDownTimer.removeEventListener(TimerEvent.TIMER_COMPLETE, wpn1shootOpen);
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).bossArray, this);
}
public function changePos(){
Tweener.addTween(this, {x:(entryXpos + 100), y:-200, time:1.8, transition:"linear", delay:1, onComplete:deviateDestruct});
}
private function wpn3shoot(_arg1:TimerEvent){
if ((((MovieClip(parent.parent).lives <= 0)) && ((MovieClip(parent.parent).lifeNumerator <= 0)))){
} else {
MovieClip(parent.parent).attBoss3Ammo3(this);
};
}
private function wpn2shootOpen(_arg1:TimerEvent){
wpn2shootTimer.start();
}
private function wpn2shootCease(_arg1:TimerEvent){
wpn2shootTimer.reset();
wpn2coolDownTimer.start();
}
public function deviateDestruct(){
Tweener.removeTweens(this);
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).enemyArray, this);
}
}
}//package
Section 125
//Boss3Ammo1 (Boss3Ammo1)
package {
import flash.display.*;
import flash.events.*;
public class Boss3Ammo1 extends MovieClip {
public var xSpd:Number;
public var ySpd:Number;
public var mc:MovieClip;
public var spd:Number;
public var grvty:Number;
public var angle:Number;
public var rot:Number;
public function Boss3Ammo1(_arg1:MovieClip, _arg2:Number){
this.x = _arg1.x;
this.y = _arg1.y;
this.rotation = _arg2;
trace(("this.x" + this.x));
init();
}
public function init(){
spd = 12;
grvty = 1;
angle = ((this.rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function looper(){
if ((((this.x < 0)) || ((this.y > 480)))){
destruct("");
} else {
this.x = (this.x + xSpd);
this.y = (this.y + ySpd);
};
}
public function destruct(_arg1:String){
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).boss3Ammo1Array, this);
}
}
}//package
Section 126
//Boss3Ammo2 (Boss3Ammo2)
package {
import flash.display.*;
import flash.events.*;
public class Boss3Ammo2 extends MovieClip {
public var xSpd:Number;
public var typeOfDestruction:String;
public var ySpd:Number;
public var mc:MovieClip;
public var spd:Number;
public var grvty:Number;
public var angle:Number;
public var rot:Number;
public function Boss3Ammo2(_arg1:MovieClip){
this.x = _arg1.x;
this.y = _arg1.y;
this.rotation = 180;
init();
}
public function init(){
spd = 12;
grvty = 1;
angle = ((this.rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function looper(){
if ((((((this.x < -50)) || ((this.x > 680)))) || ((this.y > 480)))){
destruct("");
} else {
this.x = (this.x + xSpd);
this.y = (this.y + ySpd);
};
}
public function destruct(_arg1:String){
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).boss3Ammo2Array, this);
}
}
}//package
Section 127
//Boss3Ammo3 (Boss3Ammo3)
package {
import flash.display.*;
import flash.events.*;
public class Boss3Ammo3 extends MovieClip {
public var life:Number;
public var xSpd:Number;
public var typeOfDestruction:String;
public var ySpd:Number;
public var mc:MovieClip;
public var spd:Number;
public var grvty:Number;
public var angle:Number;
public var rot:Number;
public function Boss3Ammo3(_arg1:MovieClip){
this.rotation = _arg1.rotation;
init();
}
public function init(){
spd = 12;
grvty = 1;
life = 2;
angle = ((MovieClip(this).rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function followPlyr(_arg1:MovieClip){
var _local2:Number;
var _local3:Number;
var _local4:*;
var _local5:*;
var _local6:Number;
if ((((MovieClip(parent.parent).lives <= 0)) && ((MovieClip(parent.parent).lifeNumerator <= 0)))){
} else {
_local2 = (_arg1.x - this.x);
_local3 = (_arg1.y - this.y);
_local4 = Math.atan((_local3 / _local2));
_local5 = ((_local4 * 180) / Math.PI);
if (_local2 < 0){
_local5 = (_local5 - 180);
};
_local6 = _local5;
this.rotation = _local5;
_local5 = _local6;
_local4 = ((_local5 / 180) * Math.PI);
_local2 = Math.cos(_local4);
_local3 = Math.sin(_local4);
_local2 = (_local2 * spd);
_local3 = (_local3 * spd);
};
this.x = (this.x + _local2);
this.y = (this.y + _local3);
}
public function looper(){
if (life <= 0){
destruct("hit");
} else {
if ((((((this.x < -50)) || ((this.x > 680)))) || ((this.y > 480)))){
destruct("outBounds");
} else {
if (this.hitTestObject(MovieClip(parent).plyr_mc)){
destruct("hit");
} else {
followPlyr(MovieClip(parent).plyr_mc);
};
};
};
}
public function destruct(_arg1:String){
if (_arg1 == "hit"){
MovieClip(parent.parent).attExplosion1(this);
MovieClip(parent.parent).attDebris(this);
} else {
if (_arg1 == "outBounds"){
};
};
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).boss3Ammo3Array, this);
}
}
}//package
Section 128
//BtnSnd (BtnSnd)
package {
import flash.media.*;
public dynamic class BtnSnd extends Sound {
}
}//package
Section 129
//Button_disabledSkin (Button_disabledSkin)
package {
import flash.display.*;
public dynamic class Button_disabledSkin extends MovieClip {
}
}//package
Section 130
//Button_downSkin (Button_downSkin)
package {
import flash.display.*;
public dynamic class Button_downSkin extends MovieClip {
}
}//package
Section 131
//Button_emphasizedSkin (Button_emphasizedSkin)
package {
import flash.display.*;
public dynamic class Button_emphasizedSkin extends MovieClip {
}
}//package
Section 132
//Button_overSkin (Button_overSkin)
package {
import flash.display.*;
public dynamic class Button_overSkin extends MovieClip {
}
}//package
Section 133
//Button_selectedDisabledSkin (Button_selectedDisabledSkin)
package {
import flash.display.*;
public dynamic class Button_selectedDisabledSkin extends MovieClip {
}
}//package
Section 134
//Button_selectedDownSkin (Button_selectedDownSkin)
package {
import flash.display.*;
public dynamic class Button_selectedDownSkin extends MovieClip {
}
}//package
Section 135
//Button_selectedOverSkin (Button_selectedOverSkin)
package {
import flash.display.*;
public dynamic class Button_selectedOverSkin extends MovieClip {
}
}//package
Section 136
//Button_selectedUpSkin (Button_selectedUpSkin)
package {
import flash.display.*;
public dynamic class Button_selectedUpSkin extends MovieClip {
}
}//package
Section 137
//Button_upSkin (Button_upSkin)
package {
import flash.display.*;
public dynamic class Button_upSkin extends MovieClip {
}
}//package
Section 138
//Debris (Debris)
package {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import flash.filters.*;
public class Debris extends MovieClip {
public var xSpd:Number;
public var animation_mc:MovieClip;
private var myGlow:GlowFilter;
public var ySpd:Number;
public var mc:MovieClip;
public var spd:Number;
public var grvty:Number;
public var angle:Number;
private var smokeTrail:Timer;
public var rot:Number;
public function Debris(_arg1:Number, _arg2:Number, _arg3:Number){
var _local4:Number;
myGlow = new GlowFilter();
super();
_local4 = (Math.floor((Math.random() * (500 - 80))) + 80);
smokeTrail = new Timer(_local4, 0);
smokeTrail.addEventListener(TimerEvent.TIMER, attSmoke);
smokeTrail.start();
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
this.x = _arg1;
this.y = _arg2;
this.rotation = _arg3;
init();
}
public function init(){
spd = 8;
grvty = 1;
angle = ((MovieClip(this).rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function attSmoke(_arg1:TimerEvent){
MovieClip(parent.parent).attSmokeTrail(this);
}
public function looper(){
if ((((((this.x < -50)) || ((this.x > 680)))) || ((this.y > 480)))){
destruct("");
} else {
if (this.scaleX <= 0){
destruct("");
} else {
this.scaleX = (this.scaleX - 0.04);
this.scaleY = (this.scaleY - 0.04);
this.animation_mc.rotation = (this.animation_mc.rotation + 25);
ySpd = (ySpd + grvty);
this.x = (this.x + xSpd);
this.y = (this.y + ySpd);
this.rotation = ((Math.atan2(ySpd, xSpd) * 180) / Math.PI);
};
};
}
public function destruct(_arg1:String){
smokeTrail.stop();
smokeTrail.removeEventListener(TimerEvent.TIMER, attSmoke);
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).debrisArray, this);
}
}
}//package
Section 139
//Earthquake (Earthquake)
package {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
public class Earthquake {
private static const FRAME_RATE:int = 30;
private static var timer:Timer;
private static var originalX:int;
private static var originalY:int;
private static var intensityOffset:int;
private static var intensity:int;
private static var image:DisplayObject;
private static function cleanup():void{
timer = null;
image = null;
}
public static function go(_arg1:DisplayObject, _arg2:Number=10, _arg3:Number=1):void{
var _local4:int;
var _local5:int;
if (timer){
timer.stop();
};
image = _arg1;
originalX = 0;
originalY = 0;
intensity = _arg2;
intensityOffset = (intensity / 2);
_local4 = int((1000 / FRAME_RATE));
_local5 = int(((_arg3 * 1000) / _local4));
timer = new Timer(_local4, _local5);
timer.addEventListener(TimerEvent.TIMER, quake);
timer.addEventListener(TimerEvent.TIMER_COMPLETE, resetImage);
timer.start();
}
public static function temp():void{
}
private static function quake(_arg1:TimerEvent):void{
var _local2:int;
var _local3:int;
_local2 = ((originalX + (Math.random() * intensity)) - intensityOffset);
_local3 = ((originalY + (Math.random() * intensity)) - intensityOffset);
image.x = _local2;
image.y = _local3;
}
private static function resetImage(_arg1:TimerEvent=null):void{
image.x = originalX;
image.y = originalY;
cleanup();
}
}
}//package
Section 140
//Enemy1 (Enemy1)
package {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import flash.filters.*;
import flash.ui.*;
public class Enemy1 extends MovieClip {
public var life:Number;
public var typeOfDestruction:String;
private var shootTimer:Timer;
private var myGlow:GlowFilter;
private var rateOfShoot:Number;
private var spd:Number;
public function Enemy1(){
myGlow = new GlowFilter();
super();
addFrameScript(0, frame1);
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
life = 30;
spd = (Math.floor((Math.random() * (3 - 1))) + 1);
rateOfShoot = (Math.floor((Math.random() * (1000 - 800))) + 800);
shootTimer = new Timer(rateOfShoot, 0);
shootTimer.addEventListener(TimerEvent.TIMER, shoot);
shootTimer.start();
}
private function shoot(_arg1:TimerEvent){
if ((((MovieClip(parent.parent).lives <= 0)) && ((MovieClip(parent.parent).lifeNumerator <= 0)))){
} else {
MovieClip(parent.parent).attEnemy1Ammo(this);
};
}
public function looper(){
if (life <= 0){
destruct("hit");
} else {
this.x = (this.x - spd);
if (this.x <= -150){
destruct("outBounds");
};
};
}
function frame1(){
}
public function destruct(_arg1:String){
if (_arg1 == "hit"){
MovieClip(parent.parent).updateKillScore(5);
MovieClip(parent.parent).killsLevel++;
MovieClip(parent.parent).attExplosion1(this);
MovieClip(parent.parent).attDebris(this);
if (typeOfDestruction == "fried"){
MovieClip(parent.parent).attExplosion2(this);
} else {
if (typeOfDestruction == "sliced"){
MovieClip(parent.parent).attExplosion3(this);
} else {
MovieClip(parent.parent).attExplosion4(this, 1);
};
};
} else {
if (_arg1 == "outBounds"){
};
};
shootTimer.stop();
shootTimer.removeEventListener(TimerEvent.TIMER, shoot);
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).enemyArray, this);
}
}
}//package
Section 141
//Enemy10 (Enemy10)
package {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import caurina.transitions.*;
import flash.filters.*;
import flash.ui.*;
public class Enemy10 extends MovieClip {
public var life:Number;
private var a_x:Number;
private var a_y:Number;
private var chngPosCount:Number;
public var typeOfDestruction:String;
private var shootTimer:Timer;
private var myGlow:GlowFilter;
private var entryXpos:Number;
private var newYpos:Number;
private var rateOfShoot:Number;
private var spd:Number;
private var newXpos:Number;
private var _angle:Number;
public function Enemy10(_arg1:Number, _arg2:Number){
myGlow = new GlowFilter();
super();
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
this.x = _arg1;
this.y = _arg2;
init();
}
public function init(){
life = 30;
spd = 4;
chngPosCount = (Math.floor((Math.random() * (4 - 2))) + 2);
entryXpos = (Math.floor((Math.random() * (630 - 480))) + 480);
Tweener.addTween(this, {x:entryXpos, time:1, transition:"easeOutStrong", onComplete:mov});
rateOfShoot = 180;
shootTimer = new Timer(rateOfShoot, 8);
shootTimer.addEventListener(TimerEvent.TIMER, shoot);
shootTimer.addEventListener(TimerEvent.TIMER, shoot);
}
private function mov(){
var _local1:Number;
chngPosCount++;
_local1 = (Math.floor((Math.random() * (2 - 0))) + 0);
newXpos = (Math.floor((Math.random() * (520 - 380))) + 380);
if (this.y <= 240){
newYpos = (Math.floor((Math.random() * (450 - 300))) + 300);
if (chngPosCount >= 5){
Tweener.addTween(this, {x:-200, y:100, time:2.5, transition:"easeInOutStrong", delay:_local1, onComplete:deviateDestruct});
} else {
Tweener.addTween(this, {x:newXpos, y:newYpos, time:1.8, transition:"easeInOutStrong", delay:_local1, onComplete:mov});
};
} else {
newYpos = (Math.floor((Math.random() * (230 - 80))) + 80);
if (chngPosCount >= 5){
Tweener.addTween(this, {x:-200, y:380, time:2.5, transition:"easeInOutStrong", delay:_local1, onComplete:deviateDestruct});
} else {
Tweener.addTween(this, {x:newXpos, y:newYpos, time:1.5, transition:"easeInOutStrong", delay:_local1, onComplete:mov});
};
};
shootTimer.start();
}
private function shoot(_arg1:TimerEvent){
if ((((MovieClip(parent.parent).lives <= 0)) && ((MovieClip(parent.parent).lifeNumerator <= 0)))){
} else {
MovieClip(parent.parent).attEnemy10Ammo(this);
};
}
public function looper(){
if (life <= 0){
destruct("hit");
} else {
if (this.x <= -150){
destruct("outBounds");
};
};
}
public function changePos(){
Tweener.addTween(this, {x:(entryXpos + 100), y:-200, time:2.5, transition:"easeInStrong", delay:1, onComplete:deviateDestruct});
}
public function destruct(_arg1:String){
if (_arg1 == "hit"){
MovieClip(parent.parent).updateKillScore(5);
MovieClip(parent.parent).killsLevel++;
MovieClip(parent.parent).attExplosion1(this);
MovieClip(parent.parent).attDebris(this);
if (typeOfDestruction == "fried"){
MovieClip(parent.parent).attExplosion2(this);
} else {
if (typeOfDestruction == "sliced"){
MovieClip(parent.parent).attExplosion3(this);
} else {
MovieClip(parent.parent).attExplosion4(this, 10);
};
};
} else {
if (_arg1 == "outBounds"){
};
};
Tweener.removeTweens(this);
shootTimer.stop();
shootTimer.removeEventListener(TimerEvent.TIMER, shoot);
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).enemyArray, this);
}
public function deviateDestruct(){
shootTimer.stop();
shootTimer.removeEventListener(TimerEvent.TIMER, shoot);
Tweener.removeTweens(this);
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).enemyArray, this);
}
}
}//package
Section 142
//Enemy10Ammo (Enemy10Ammo)
package {
import flash.display.*;
import flash.events.*;
import flash.filters.*;
public class Enemy10Ammo extends MovieClip {
public var xSpd:Number;
private var myGlow:GlowFilter;
public var ySpd:Number;
public var mc:MovieClip;
public var spd:Number;
public var grvty:Number;
public var angle:Number;
public var rot:Number;
public function Enemy10Ammo(_arg1:MovieClip){
myGlow = new GlowFilter();
super();
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
this.x = (_arg1.x - 50);
this.y = _arg1.y;
this.rotation = 180;
init();
}
public function init(){
spd = 25;
grvty = 1;
angle = ((this.rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function looper(){
if ((((((this.x < 0)) || ((this.x > 680)))) || ((this.y > 480)))){
destruct("");
} else {
this.x = (this.x + xSpd);
this.y = (this.y + ySpd);
};
}
public function destruct(_arg1:String){
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).enemyAmmo10Array, this);
}
}
}//package
Section 143
//Enemy1Ammo (Enemy1Ammo)
package {
import flash.display.*;
import flash.events.*;
import flash.filters.*;
public class Enemy1Ammo extends MovieClip {
public var xSpd:Number;
private var myGlow:GlowFilter;
public var ySpd:Number;
public var mc:MovieClip;
public var spd:Number;
public var grvty:Number;
public var angle:Number;
public var rot:Number;
public function Enemy1Ammo(_arg1:MovieClip){
myGlow = new GlowFilter();
super();
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
this.x = _arg1.x;
this.y = _arg1.y;
this.rotation = 180;
init();
}
public function init(){
spd = 12;
grvty = 1;
angle = ((this.rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function looper(){
if ((((((this.x < -50)) || ((this.x > 680)))) || ((this.y > 480)))){
destruct("");
} else {
this.x = (this.x + xSpd);
this.y = (this.y + ySpd);
};
}
public function destruct(_arg1:String){
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).enemyAmmo1Array, this);
}
}
}//package
Section 144
//Enemy2 (Enemy2)
package {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import flash.filters.*;
import flash.ui.*;
public class Enemy2 extends MovieClip {
public var life:Number;
private var xSpd:Number;
public var typeOfDestruction:String;
private var yDir:String;
private var shootTimer:Timer;
private var myGlow:GlowFilter;
private var ySpd:Number;
private var rateOfShoot:Number;
private var minYpos:Number;
private var maxYpos:Number;
public function Enemy2(){
myGlow = new GlowFilter();
super();
addFrameScript(0, frame1);
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
life = 30;
xSpd = 3;
ySpd = 8;
minYpos = 50;
maxYpos = 430;
yDir = "down";
rateOfShoot = (Math.floor((Math.random() * (3000 - 2500))) + 2500);
shootTimer = new Timer(rateOfShoot, 0);
shootTimer.addEventListener(TimerEvent.TIMER, shoot);
shootTimer.start();
}
private function shoot(_arg1:TimerEvent){
if ((((MovieClip(parent.parent).lives <= 0)) && ((MovieClip(parent.parent).lifeNumerator <= 0)))){
} else {
MovieClip(parent.parent).attEnemy2Ammo(this);
};
}
function frame1(){
}
public function looper(){
if (life <= 0){
destruct("hit");
} else {
if (this.x <= -150){
destruct("outBounds");
} else {
movement();
};
};
}
public function destruct(_arg1:String){
if (_arg1 == "hit"){
MovieClip(parent.parent).updateKillScore(5);
MovieClip(parent.parent).killsLevel++;
MovieClip(parent.parent).attExplosion1(this);
MovieClip(parent.parent).attDebris(this);
if (typeOfDestruction == "fried"){
MovieClip(parent.parent).attExplosion2(this);
} else {
if (typeOfDestruction == "sliced"){
MovieClip(parent.parent).attExplosion3(this);
} else {
MovieClip(parent.parent).attExplosion4(this, 2);
};
};
} else {
if (_arg1 == "outBounds"){
};
};
shootTimer.stop();
shootTimer.removeEventListener(TimerEvent.TIMER, shoot);
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).enemyArray, this);
}
private function movement(){
if (this.y < minYpos){
yDir = "down";
} else {
if (this.y > maxYpos){
yDir = "up";
};
};
this.x = (this.x - xSpd);
if (yDir == "up"){
ySpd = (Math.floor((Math.random() * (7 - 4))) + 4);
this.y = (this.y - ySpd);
} else {
if (yDir == "down"){
ySpd = (Math.floor((Math.random() * (7 - 4))) + 4);
this.y = (this.y + ySpd);
};
};
}
}
}//package
Section 145
//Enemy2Ammo (Enemy2Ammo)
package {
import flash.display.*;
import flash.events.*;
import flash.filters.*;
public class Enemy2Ammo extends MovieClip {
public var xSpd:Number;
private var myGlow:GlowFilter;
public var ySpd:Number;
public var mc:MovieClip;
public var spd:Number;
public var grvty:Number;
public var angle:Number;
public var rot:Number;
public function Enemy2Ammo(_arg1:MovieClip){
myGlow = new GlowFilter();
super();
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
this.x = _arg1.x;
this.y = (_arg1.y - 40);
this.rotation = 180;
init();
}
public function init(){
spd = 12;
grvty = 1;
angle = ((this.rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function looper(){
if ((((((this.x < -50)) || ((this.x > 680)))) || ((this.y > 480)))){
destruct("");
} else {
this.x = (this.x + xSpd);
this.y = (this.y + ySpd);
};
}
public function destruct(_arg1:String){
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).enemyAmmo2Array, this);
}
}
}//package
Section 146
//Enemy3 (Enemy3)
package {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import flash.filters.*;
import flash.ui.*;
public class Enemy3 extends MovieClip {
public var life:Number;
private var a_x:Number;
private var a_y:Number;
public var typeOfDestruction:String;
private var shootTimer:Timer;
private var myGlow:GlowFilter;
private var rateOfShoot:Number;
public var barrel:MovieClip;
private var spd:Number;
private var _angle:Number;
public function Enemy3(){
myGlow = new GlowFilter();
super();
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
life = 30;
spd = 5;
rateOfShoot = (Math.floor((Math.random() * (1500 - 1000))) + 1000);
shootTimer = new Timer(rateOfShoot, 0);
shootTimer.addEventListener(TimerEvent.TIMER, shoot);
shootTimer.start();
}
private function shoot(_arg1:TimerEvent){
if ((((MovieClip(parent.parent).lives <= 0)) && ((MovieClip(parent.parent).lifeNumerator <= 0)))){
} else {
MovieClip(parent.parent).attEnemy3Ammo(this);
};
}
public function looper(){
if (life <= 0){
destruct("hit");
} else {
if (this.x <= -150){
destruct("outBounds");
} else {
this.x = (this.x - spd);
rotateBarrel(MovieClip(parent).plyr_mc, barrel);
};
};
}
public function destruct(_arg1:String){
if (_arg1 == "hit"){
MovieClip(parent.parent).updateKillScore(5);
MovieClip(parent.parent).killsLevel++;
MovieClip(parent.parent).attExplosion1(this);
MovieClip(parent.parent).attDebris(this);
if (typeOfDestruction == "fried"){
MovieClip(parent.parent).attExplosion2(this);
} else {
if (typeOfDestruction == "sliced"){
MovieClip(parent.parent).attExplosion3(this);
} else {
MovieClip(parent.parent).attExplosion4(this, 3);
};
};
} else {
if (_arg1 == "outBounds"){
};
};
shootTimer.stop();
shootTimer.removeEventListener(TimerEvent.TIMER, shoot);
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).enemyArray, this);
}
private function rotateBarrel(_arg1:MovieClip, _arg2:MovieClip){
if ((((MovieClip(parent.parent).lives <= 0)) && ((MovieClip(parent.parent).lifeNumerator <= 0)))){
} else {
a_x = (_arg1.x - (this.x + _arg2.x));
a_y = (_arg1.y - (this.y + _arg2.y));
_angle = ((180 * Math.atan2(a_y, a_x)) / Math.PI);
_arg2.rotation = _angle;
};
}
}
}//package
Section 147
//Enemy3Ammo (Enemy3Ammo)
package {
import flash.display.*;
import flash.events.*;
import flash.filters.*;
public class Enemy3Ammo extends MovieClip {
public var xSpd:Number;
private var myGlow:GlowFilter;
public var ySpd:Number;
public var mc:MovieClip;
public var spd:Number;
public var grvty:Number;
public var angle:Number;
public var rot:Number;
public function Enemy3Ammo(_arg1:MovieClip){
myGlow = new GlowFilter();
super();
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
this.rotation = _arg1.barrel.rotation;
init();
}
public function init(){
spd = 25;
grvty = 1;
angle = ((MovieClip(this).rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function looper(){
if ((((((this.x < -50)) || ((this.x > 680)))) || ((this.y > 480)))){
destruct("");
} else {
this.x = (this.x + xSpd);
this.y = (this.y + ySpd);
this.rotation = ((Math.atan2(ySpd, xSpd) * 180) / Math.PI);
};
}
public function destruct(_arg1:String){
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).enemyAmmo3Array, this);
}
}
}//package
Section 148
//Enemy4 (Enemy4)
package {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import flash.filters.*;
import flash.ui.*;
public class Enemy4 extends MovieClip {
public var life:Number;
private var xSpd:Number;
public var typeOfDestruction:String;
private var yDir:String;
private var shootTimer:Timer;
private var passed:Boolean;
private var myGlow:GlowFilter;
private var ySpd:Number;
private var rateOfShoot:Number;
private var minYpos:Number;
private var maxYpos:Number;
public function Enemy4(){
myGlow = new GlowFilter();
super();
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
life = 30;
xSpd = 15;
ySpd = 8;
minYpos = 50;
maxYpos = 430;
yDir = "down";
rateOfShoot = (Math.floor((Math.random() * (800 - 250))) + 250);
passed = false;
shootTimer = new Timer(rateOfShoot, 0);
shootTimer.addEventListener(TimerEvent.TIMER, shoot);
shootTimer.start();
}
private function shoot(_arg1:TimerEvent){
if ((((MovieClip(parent.parent).lives <= 0)) && ((MovieClip(parent.parent).lifeNumerator <= 0)))){
} else {
MovieClip(parent.parent).attEnemy4Ammo(this);
};
}
public function looper(){
if (life <= 0){
destruct("hit");
} else {
if (this.x <= -150){
destruct("outBounds");
} else {
movement();
};
};
}
public function destruct(_arg1:String){
if (_arg1 == "hit"){
MovieClip(parent.parent).attExplosion1(this);
MovieClip(parent.parent).attDebris(this);
if (typeOfDestruction == "fried"){
MovieClip(parent.parent).attExplosion2(this);
} else {
if (typeOfDestruction == "sliced"){
MovieClip(parent.parent).attExplosion3(this);
} else {
MovieClip(parent.parent).attExplosion4(this, 4);
};
};
} else {
if (_arg1 == "outBounds"){
};
};
shootTimer.stop();
shootTimer.removeEventListener(TimerEvent.TIMER, shoot);
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).enemyArray, this);
}
private function movement(){
this.x = (this.x - xSpd);
if ((((MovieClip(parent.parent).lives <= 0)) && ((MovieClip(parent.parent).lifeNumerator <= 0)))){
} else {
if (this.x > MovieClip(parent).plyr_mc.x){
if (passed == false){
if (this.y > MovieClip(parent).plyr_mc.y){
this.y = (this.y - ySpd);
};
if (this.y < MovieClip(parent).plyr_mc.y){
this.y = (this.y + ySpd);
};
};
} else {
passed = true;
};
};
}
}
}//package
Section 149
//Enemy4Ammo (Enemy4Ammo)
package {
import flash.display.*;
import flash.events.*;
import flash.filters.*;
public class Enemy4Ammo extends MovieClip {
public var xSpd:Number;
private var myGlow:GlowFilter;
public var ySpd:Number;
public var mc:MovieClip;
public var spd:Number;
public var grvty:Number;
public var angle:Number;
public var rot:Number;
public function Enemy4Ammo(_arg1:MovieClip){
myGlow = new GlowFilter();
super();
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
this.x = _arg1.x;
this.y = _arg1.y;
this.rotation = 180;
init();
}
public function init(){
spd = 20;
grvty = 1;
angle = ((this.rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function looper(){
if ((((((this.x < -50)) || ((this.x > 680)))) || ((this.y > 480)))){
destruct("");
} else {
this.x = (this.x + xSpd);
this.y = (this.y + ySpd);
};
}
public function destruct(_arg1:String){
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).enemyAmmo4Array, this);
}
}
}//package
Section 150
//Enemy5 (Enemy5)
package {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import flash.filters.*;
import flash.ui.*;
public class Enemy5 extends MovieClip {
public var life:Number;
private var a_x:Number;
private var a_y:Number;
public var typeOfDestruction:String;
private var shootTimer:Timer;
private var myGlow:GlowFilter;
private var rateOfShoot:Number;
public var barrel:MovieClip;
private var spd:Number;
private var _angle:Number;
public function Enemy5(){
myGlow = new GlowFilter();
super();
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
life = 30;
spd = 5;
rateOfShoot = (Math.floor((Math.random() * (1500 - 1000))) + 1000);
shootTimer = new Timer(rateOfShoot, 0);
shootTimer.addEventListener(TimerEvent.TIMER, shoot);
shootTimer.start();
}
private function shoot(_arg1:TimerEvent){
if ((((MovieClip(parent.parent).lives <= 0)) && ((MovieClip(parent.parent).lifeNumerator <= 0)))){
} else {
MovieClip(parent.parent).attEnemy5Ammo(this);
};
}
public function looper(){
if (life <= 0){
destruct("hit");
} else {
if (this.x <= -150){
destruct("outBounds");
} else {
this.x = (this.x - spd);
rotateBarrel(MovieClip(parent).plyr_mc, barrel);
};
};
}
public function destruct(_arg1:String){
if (_arg1 == "hit"){
MovieClip(parent.parent).updateKillScore(5);
MovieClip(parent.parent).killsLevel++;
MovieClip(parent.parent).attExplosion1(this);
MovieClip(parent.parent).attDebris(this);
if (typeOfDestruction == "fried"){
MovieClip(parent.parent).attExplosion2(this);
} else {
if (typeOfDestruction == "sliced"){
MovieClip(parent.parent).attExplosion3(this);
} else {
MovieClip(parent.parent).attExplosion4(this, 5);
};
};
} else {
if (_arg1 == "outBounds"){
};
};
shootTimer.stop();
shootTimer.removeEventListener(TimerEvent.TIMER, shoot);
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).enemyArray, this);
}
private function rotateBarrel(_arg1:MovieClip, _arg2:MovieClip){
if ((((MovieClip(parent.parent).lives <= 0)) && ((MovieClip(parent.parent).lifeNumerator <= 0)))){
} else {
a_x = (_arg1.x - (this.x + _arg2.x));
a_y = (_arg1.y - (this.y + _arg2.y));
_angle = ((180 * Math.atan2(a_y, a_x)) / Math.PI);
_arg2.rotation = _angle;
};
}
}
}//package
Section 151
//Enemy5Ammo (Enemy5Ammo)
package {
import flash.display.*;
import flash.events.*;
import flash.filters.*;
public class Enemy5Ammo extends MovieClip {
public var life:Number;
public var xSpd:Number;
public var typeOfDestruction:String;
private var myGlow:GlowFilter;
public var ySpd:Number;
public var mc:MovieClip;
public var spd:Number;
public var grvty:Number;
public var angle:Number;
public var rot:Number;
public function Enemy5Ammo(_arg1:MovieClip){
myGlow = new GlowFilter();
super();
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
this.rotation = _arg1.barrel.rotation;
init();
}
public function init(){
spd = 12;
grvty = 1;
life = 2;
angle = ((MovieClip(this).rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function followPlyr(_arg1:MovieClip){
var _local2:Number;
var _local3:Number;
var _local4:*;
var _local5:*;
var _local6:Number;
if ((((MovieClip(parent.parent).lives <= 0)) && ((MovieClip(parent.parent).lifeNumerator <= 0)))){
} else {
_local2 = (_arg1.x - this.x);
_local3 = (_arg1.y - this.y);
_local4 = Math.atan((_local3 / _local2));
_local5 = ((_local4 * 180) / Math.PI);
if (_local2 < 0){
_local5 = (_local5 - 180);
};
_local6 = _local5;
this.rotation = _local5;
_local5 = _local6;
_local4 = ((_local5 / 180) * Math.PI);
_local2 = Math.cos(_local4);
_local3 = Math.sin(_local4);
_local2 = (_local2 * spd);
_local3 = (_local3 * spd);
};
this.x = (this.x + _local2);
this.y = (this.y + _local3);
}
public function looper(){
if (life <= 0){
destruct("hit");
} else {
if ((((((this.x < -50)) || ((this.x > 680)))) || ((this.y > 480)))){
destruct("outBounds");
} else {
if (this.hitTestObject(MovieClip(parent).plyr_mc)){
destruct("hit");
} else {
followPlyr(MovieClip(parent).plyr_mc);
};
};
};
}
public function destruct(_arg1:String){
if (_arg1 == "hit"){
MovieClip(parent.parent).attExplosion1(this);
MovieClip(parent.parent).attDebris(this);
} else {
if (_arg1 == "outBounds"){
};
};
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).enemyAmmo5Array, this);
}
}
}//package
Section 152
//Enemy6 (Enemy6)
package {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import caurina.transitions.*;
import flash.filters.*;
import flash.ui.*;
public class Enemy6 extends MovieClip {
public var life:Number;
private var deviateInterval:Number;
private var a_x:Number;
private var a_y:Number;
private var deviateTmr:Timer;
public var typeOfDestruction:String;
private var shootTimer:Timer;
private var myGlow:GlowFilter;
private var deviatePos:Number;
private var rateOfShoot:Number;
private var spd:Number;
private var _angle:Number;
public function Enemy6(_arg1:Number, _arg2:Number){
myGlow = new GlowFilter();
super();
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
this.x = _arg1;
this.y = _arg2;
init();
}
public function init(){
life = 30;
spd = 2;
rateOfShoot = (Math.floor((Math.random() * (1500 - 1000))) + 1000);
deviateInterval = (Math.floor((Math.random() * (3000 - 1000))) + 1000);
shootTimer = new Timer(rateOfShoot, 0);
deviateTmr = new Timer(deviateInterval, 0);
shootTimer.addEventListener(TimerEvent.TIMER, shoot);
deviateTmr.addEventListener(TimerEvent.TIMER, deviate);
shootTimer.start();
positioning();
}
public function deviate(){
MovieClip(parent.parent).attEnemy6Ammo(this);
shootTimer.stop();
shootTimer.removeEventListener(TimerEvent.TIMER, shoot);
deviateTmr.stop();
deviateTmr.removeEventListener(TimerEvent.TIMER, deviate);
Tweener.addTween(this, {y:deviatePos, time:1, transition:"easeInStrong", onComplete:deviateDestruct});
trace("deviate");
}
private function shoot(_arg1:TimerEvent){
if ((((MovieClip(parent.parent).lives <= 0)) && ((MovieClip(parent.parent).lifeNumerator <= 0)))){
} else {
MovieClip(parent.parent).attEnemy6Ammo(this);
};
}
public function positioning(){
if (this.y < 0){
trace("top");
deviatePos = -200;
Tweener.addTween(this, {y:120, time:1, transition:"easeOutStrong", onComplete:deviate});
};
if (this.y > 480){
trace("bottom");
deviatePos = 600;
Tweener.addTween(this, {y:300, time:1, transition:"easeOutStrong", onComplete:deviate});
};
}
public function looper(){
if (life <= 0){
destruct("hit");
} else {
if (this.x <= -150){
destruct("outBounds");
} else {
this.x = (this.x - spd);
};
};
}
public function destruct(_arg1:String){
if (_arg1 == "hit"){
MovieClip(parent.parent).updateKillScore(5);
MovieClip(parent.parent).killsLevel++;
MovieClip(parent.parent).attExplosion1(this);
MovieClip(parent.parent).attDebris(this);
if (typeOfDestruction == "fried"){
MovieClip(parent.parent).attExplosion2(this);
} else {
if (typeOfDestruction == "sliced"){
MovieClip(parent.parent).attExplosion3(this);
} else {
MovieClip(parent.parent).attExplosion4(this, 10);
};
};
} else {
if (_arg1 == "outBounds"){
};
};
Tweener.removeTweens(this);
shootTimer.stop();
shootTimer.removeEventListener(TimerEvent.TIMER, shoot);
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).enemyArray, this);
}
public function deviateDestruct(){
Tweener.removeTweens(this);
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).enemyArray, this);
}
private function rotateBarrel(_arg1:MovieClip, _arg2:MovieClip){
if ((((MovieClip(parent.parent).lives <= 0)) && ((MovieClip(parent.parent).lifeNumerator <= 0)))){
} else {
a_x = (_arg1.x - (this.x + _arg2.x));
a_y = (_arg1.y - (this.y + _arg2.y));
_angle = ((180 * Math.atan2(a_y, a_x)) / Math.PI);
_arg2.rotation = _angle;
};
}
public function initDeviate(){
deviateTmr.start();
}
}
}//package
Section 153
//Enemy6Ammo (Enemy6Ammo)
package {
import flash.display.*;
import flash.events.*;
import flash.filters.*;
public class Enemy6Ammo extends MovieClip {
public var xSpd:Number;
private var myGlow:GlowFilter;
public var ySpd:Number;
public var mc:MovieClip;
public var spd:Number;
public var grvty:Number;
public var angle:Number;
public var rot:Number;
public function Enemy6Ammo(_arg1:MovieClip, _arg2:Number){
myGlow = new GlowFilter();
super();
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
this.x = _arg1.x;
this.y = _arg1.y;
this.rotation = _arg2;
trace(("this.x" + this.x));
init();
}
public function init(){
spd = 12;
grvty = 1;
angle = ((this.rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function looper(){
if ((((this.x < 0)) || ((this.y > 480)))){
destruct("");
} else {
this.x = (this.x + xSpd);
this.y = (this.y + ySpd);
};
}
public function destruct(_arg1:String){
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).enemyAmmo6Array, this);
}
}
}//package
Section 154
//Enemy7 (Enemy7)
package {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import caurina.transitions.*;
import flash.filters.*;
import flash.ui.*;
public class Enemy7 extends MovieClip {
public var life:Number;
private var a_x:Number;
private var a_y:Number;
public var typeOfDestruction:String;
private var shootTimer:Timer;
private var myGlow:GlowFilter;
private var rateOfShoot:Number;
private var spd:Number;
private var _angle:Number;
public function Enemy7(_arg1:Number, _arg2:Number){
myGlow = new GlowFilter();
super();
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
this.x = _arg1;
this.y = _arg2;
init();
}
public function init(){
life = 30;
spd = 4;
rateOfShoot = (Math.floor((Math.random() * (1500 - 1000))) + 1000);
shootTimer = new Timer(rateOfShoot, 0);
shootTimer.addEventListener(TimerEvent.TIMER, shoot);
shootTimer.start();
}
private function shoot(_arg1:TimerEvent){
if ((((MovieClip(parent.parent).lives <= 0)) && ((MovieClip(parent.parent).lifeNumerator <= 0)))){
} else {
MovieClip(parent.parent).attEnemy7Ammo(this);
};
}
public function looper(){
if (life <= 0){
destruct("hit");
} else {
if (this.x <= -150){
destruct("outBounds");
} else {
this.x = (this.x - spd);
};
};
}
public function destruct(_arg1:String){
if (_arg1 == "hit"){
MovieClip(parent.parent).updateKillScore(5);
MovieClip(parent.parent).killsLevel++;
MovieClip(parent.parent).attExplosion1(this);
MovieClip(parent.parent).attDebris(this);
if (typeOfDestruction == "fried"){
MovieClip(parent.parent).attExplosion2(this);
} else {
if (typeOfDestruction == "sliced"){
MovieClip(parent.parent).attExplosion3(this);
} else {
MovieClip(parent.parent).attExplosion4(this, 7);
};
};
} else {
if (_arg1 == "outBounds"){
};
};
Tweener.removeTweens(this);
shootTimer.stop();
shootTimer.removeEventListener(TimerEvent.TIMER, shoot);
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).enemyArray, this);
}
}
}//package
Section 155
//Enemy7Ammo (Enemy7Ammo)
package {
import flash.display.*;
import flash.events.*;
import flash.filters.*;
public class Enemy7Ammo extends MovieClip {
public var xSpd:Number;
private var myGlow:GlowFilter;
public var ySpd:Number;
public var mc:MovieClip;
public var spd:Number;
public var grvty:Number;
public var angle:Number;
public var rot:Number;
public function Enemy7Ammo(_arg1:MovieClip){
myGlow = new GlowFilter();
super();
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
this.x = _arg1.x;
this.y = _arg1.y;
this.rotation = 90;
init();
}
public function init(){
spd = 12;
grvty = 1;
angle = ((this.rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function looper(){
if ((((((this.x < -50)) || ((this.x > 680)))) || ((this.y > 480)))){
destruct("");
} else {
this.x = (this.x + xSpd);
this.y = (this.y + ySpd);
};
}
public function destruct(_arg1:String){
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).enemyAmmo7Array, this);
}
}
}//package
Section 156
//Enemy8 (Enemy8)
package {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import caurina.transitions.*;
import flash.filters.*;
import flash.ui.*;
public class Enemy8 extends MovieClip {
public var life:Number;
private var a_x:Number;
private var a_y:Number;
public var typeOfDestruction:String;
private var shootTimer:Timer;
private var myGlow:GlowFilter;
private var entryXpos:Number;
private var rateOfShoot:Number;
private var spd:Number;
private var _angle:Number;
public function Enemy8(_arg1:Number, _arg2:Number){
myGlow = new GlowFilter();
super();
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
this.x = _arg1;
this.y = _arg2;
init();
}
public function init(){
life = 30;
spd = 4;
entryXpos = (Math.floor((Math.random() * (500 - 400))) + 400);
Tweener.addTween(this, {x:entryXpos, time:1, transition:"easeOutStrong", onComplete:deviate});
}
public function deviate(){
Tweener.addTween(this, {x:(entryXpos + 100), y:-200, time:2.5, transition:"easeInStrong", delay:1, onComplete:deviateDestruct});
}
private function shoot(){
if ((((MovieClip(parent.parent).lives <= 0)) && ((MovieClip(parent.parent).lifeNumerator <= 0)))){
} else {
MovieClip(parent.parent).attEnemy8Ammo(this);
};
}
public function looper(){
if (life <= 0){
destruct("hit");
} else {
if (this.x <= -150){
destruct("outBounds");
};
};
}
public function destruct(_arg1:String){
if (_arg1 == "hit"){
MovieClip(parent.parent).updateKillScore(5);
MovieClip(parent.parent).killsLevel++;
MovieClip(parent.parent).attExplosion1(this);
MovieClip(parent.parent).attDebris(this);
if (typeOfDestruction == "fried"){
MovieClip(parent.parent).attExplosion2(this);
} else {
if (typeOfDestruction == "sliced"){
MovieClip(parent.parent).attExplosion3(this);
} else {
MovieClip(parent.parent).attExplosion4(this, 8);
};
};
} else {
if (_arg1 == "outBounds"){
};
};
Tweener.removeTweens(this);
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).enemyArray, this);
}
public function deviateDestruct(){
Tweener.removeTweens(this);
shoot();
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).enemyArray, this);
}
}
}//package
Section 157
//Enemy8Ammo (Enemy8Ammo)
package {
import flash.display.*;
import flash.events.*;
import flash.filters.*;
public class Enemy8Ammo extends MovieClip {
public var xSpd:Number;
private var myGlow:GlowFilter;
public var ySpd:Number;
public var mc:MovieClip;
public var spd:Number;
public var grvty:Number;
public var angle:Number;
public var rot:Number;
public function Enemy8Ammo(_arg1:MovieClip, _arg2:Number, _arg3:Number){
myGlow = new GlowFilter();
super();
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
this.x = _arg2;
this.rotation = (Math.floor((Math.random() * (120 - 95))) + 95);
trace(("this.x" + this.x));
init();
}
public function init(){
spd = (Math.floor((Math.random() * (12 - 8))) + 8);
grvty = 1;
angle = ((this.rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function looper(){
if ((((this.x < 0)) || ((this.y > 480)))){
destruct("");
} else {
this.x = (this.x + xSpd);
this.y = (this.y + ySpd);
};
}
public function destruct(_arg1:String){
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).enemyAmmo8Array, this);
}
}
}//package
Section 158
//Enemy9 (Enemy9)
package {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import caurina.transitions.*;
import flash.filters.*;
import flash.ui.*;
public class Enemy9 extends MovieClip {
public var life:Number;
private var a_x:Number;
private var a_y:Number;
private var chngPosCount:Number;
public var typeOfDestruction:String;
private var shootTimer:Timer;
private var myGlow:GlowFilter;
private var entryXpos:Number;
private var newYpos:Number;
private var rateOfShoot:Number;
private var spd:Number;
private var newXpos:Number;
private var _angle:Number;
public function Enemy9(_arg1:Number, _arg2:Number){
myGlow = new GlowFilter();
super();
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
this.x = _arg1;
this.y = _arg2;
init();
}
public function init(){
life = 30;
spd = 4;
chngPosCount = (Math.floor((Math.random() * (4 - 2))) + 2);
entryXpos = (Math.floor((Math.random() * (500 - 400))) + 400);
Tweener.addTween(this, {x:entryXpos, time:1, transition:"easeOutStrong", onComplete:shoot});
}
private function shoot(){
var _local1:Number;
chngPosCount++;
_local1 = (Math.floor((Math.random() * (2 - 0))) + 0);
newXpos = (Math.floor((Math.random() * (520 - 380))) + 380);
if (this.y <= 240){
newYpos = (Math.floor((Math.random() * (420 - 300))) + 300);
if (chngPosCount >= 5){
Tweener.addTween(this, {x:-200, y:100, time:2.5, transition:"easeInOutStrong", delay:_local1, onComplete:deviateDestruct});
} else {
Tweener.addTween(this, {x:newXpos, y:newYpos, time:1.8, transition:"easeInOutStrong", delay:_local1, onComplete:shoot});
};
} else {
newYpos = (Math.floor((Math.random() * (230 - 100))) + 100);
if (chngPosCount >= 5){
Tweener.addTween(this, {x:-200, y:380, time:2.5, transition:"easeInOutStrong", delay:_local1, onComplete:deviateDestruct});
} else {
Tweener.addTween(this, {x:newXpos, y:newYpos, time:1.5, transition:"easeInOutStrong", delay:_local1, onComplete:shoot});
};
};
if ((((MovieClip(parent.parent).lives <= 0)) && ((MovieClip(parent.parent).lifeNumerator <= 0)))){
} else {
MovieClip(parent.parent).attEnemy9Ammo(this);
};
}
public function looper(){
if (life <= 0){
destruct("hit");
} else {
if (this.x <= -150){
destruct("outBounds");
};
};
}
public function changePos(){
Tweener.addTween(this, {x:(entryXpos + 100), y:-200, time:2.5, transition:"easeInStrong", delay:1, onComplete:deviateDestruct});
}
public function destruct(_arg1:String){
if (_arg1 == "hit"){
MovieClip(parent.parent).updateKillScore(5);
MovieClip(parent.parent).killsLevel++;
MovieClip(parent.parent).attExplosion1(this);
MovieClip(parent.parent).attDebris(this);
if (typeOfDestruction == "fried"){
MovieClip(parent.parent).attExplosion2(this);
} else {
if (typeOfDestruction == "sliced"){
MovieClip(parent.parent).attExplosion3(this);
} else {
MovieClip(parent.parent).attExplosion4(this, 9);
};
};
} else {
if (_arg1 == "outBounds"){
};
};
Tweener.removeTweens(this);
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).enemyArray, this);
}
public function deviateDestruct(){
Tweener.removeTweens(this);
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).enemyArray, this);
}
}
}//package
Section 159
//Enemy9Ammo (Enemy9Ammo)
package {
import flash.display.*;
import flash.events.*;
import flash.filters.*;
public class Enemy9Ammo extends MovieClip {
public var xSpd:Number;
private var myGlow:GlowFilter;
public var ySpd:Number;
public var mc:MovieClip;
public var spd:Number;
public var grvty:Number;
public var angle:Number;
public var rot:Number;
public function Enemy9Ammo(_arg1:MovieClip, _arg2:Number){
myGlow = new GlowFilter();
super();
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
this.x = _arg1.x;
this.y = _arg1.y;
this.rotation = _arg2;
trace(("this.x" + this.x));
init();
}
public function init(){
spd = 12;
grvty = 1;
angle = ((this.rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function looper(){
if ((((this.x < 0)) || ((this.y > 480)))){
destruct("");
} else {
this.x = (this.x + xSpd);
this.y = (this.y + ySpd);
};
}
public function destruct(_arg1:String){
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).enemyAmmo9Array, this);
}
}
}//package
Section 160
//EnemyHitSnd (EnemyHitSnd)
package {
import flash.media.*;
public dynamic class EnemyHitSnd extends Sound {
}
}//package
Section 161
//Explosion1 (Explosion1)
package {
import flash.display.*;
import flash.events.*;
import flash.filters.*;
public class Explosion1 extends MovieClip {
public var xSpd:Number;
private var myGlow:GlowFilter;
public var ySpd:Number;
public var mc:MovieClip;
public var spd:Number;
public var frmNum:Number;
public var grvty:Number;
public var angle:Number;
public var rot:Number;
public function Explosion1(_arg1:Number, _arg2:Number, _arg3:Number){
myGlow = new GlowFilter();
super();
frmNum = 1;
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
this.x = _arg1;
this.y = _arg2;
this.rotation = _arg3;
init();
}
public function init(){
spd = 8;
grvty = 1;
angle = ((MovieClip(this).rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function looper(){
frmNum++;
if (frmNum >= 10){
destruct("");
} else {
this.gotoAndStop(frmNum);
};
}
public function destruct(_arg1:String){
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).explosionArray, this);
}
}
}//package
Section 162
//Explosion2 (Explosion2)
package {
import flash.display.*;
import flash.events.*;
import flash.filters.*;
public class Explosion2 extends MovieClip {
public var xSpd:Number;
private var myGlow:GlowFilter;
public var ySpd:Number;
public var mc:MovieClip;
public var spd:Number;
public var frmNum:Number;
public var grvty:Number;
public var angle:Number;
public var rot:Number;
public function Explosion2(_arg1:Number, _arg2:Number, _arg3:Number){
myGlow = new GlowFilter();
super();
addFrameScript(0, frame1);
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
this.x = _arg1;
this.y = _arg2;
init();
}
public function init(){
spd = 15;
grvty = 1;
angle = ((MovieClip(this).rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
frmNum = (Math.floor((Math.random() * (4 - 1))) + 1);
this.gotoAndStop(frmNum);
}
public function looper(){
if ((((((this.x < -50)) || ((this.x > 680)))) || ((this.y > 480)))){
destruct("");
} else {
if (this.scaleX <= 0){
destruct("");
} else {
ySpd = (ySpd + grvty);
this.y = (this.y + ySpd);
};
};
}
function frame1(){
stop();
}
public function destruct(_arg1:String){
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).explosionArray, this);
}
}
}//package
Section 163
//Explosion3 (Explosion3)
package {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import flash.filters.*;
public class Explosion3 extends MovieClip {
public var xSpd:Number;
private var myGlow:GlowFilter;
public var ySpd:Number;
public var mc:MovieClip;
public var spd:Number;
public var frmNum:Number;
public var grvty:Number;
public var angle:Number;
private var smokeTrail:Timer;
public var rot:Number;
public function Explosion3(_arg1:Number, _arg2:Number, _arg3:Number){
var _local4:Number;
myGlow = new GlowFilter();
super();
_local4 = (Math.floor((Math.random() * (500 - 120))) + 120);
smokeTrail = new Timer(_local4, 0);
smokeTrail.addEventListener(TimerEvent.TIMER, attSmoke);
smokeTrail.start();
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
this.x = _arg1;
this.y = _arg2;
this.rotation = _arg3;
init();
}
public function init(){
spd = 8;
grvty = 1;
angle = ((MovieClip(this).rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
frmNum = (Math.floor((Math.random() * (4 - 1))) + 1);
this.gotoAndStop(frmNum);
}
public function attSmoke(_arg1:TimerEvent){
MovieClip(parent.parent).attSmokeTrail(this);
}
public function looper(){
if ((((((this.x < -50)) || ((this.x > 680)))) || ((this.y > 480)))){
destruct("");
} else {
ySpd = (ySpd + grvty);
this.x = (this.x + xSpd);
this.y = (this.y + ySpd);
this.rotation = ((Math.atan2(ySpd, xSpd) * 180) / Math.PI);
};
}
public function destruct(_arg1:String){
smokeTrail.stop();
smokeTrail.removeEventListener(TimerEvent.TIMER, attSmoke);
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).explosionArray, this);
}
}
}//package
Section 164
//Explosion4 (Explosion4)
package {
import flash.display.*;
import flash.events.*;
import flash.filters.*;
public class Explosion4 extends MovieClip {
public var xSpd:Number;
public var animation_mc:MovieClip;
private var myGlow:GlowFilter;
public var ySpd:Number;
public var mc:MovieClip;
public var spd:Number;
public var frmNum:Number;
public var grvty:Number;
public var angle:Number;
public var rot:Number;
public function Explosion4(_arg1:Number, _arg2:Number, _arg3:Number){
myGlow = new GlowFilter();
super();
frmNum = 1;
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
this.x = _arg1;
this.y = _arg2;
this.rotation = 180;
this.animation_mc.gotoAndStop(_arg3);
init();
}
public function init(){
if (this.currentFrame == 4){
spd = 30;
} else {
spd = 8;
};
grvty = 1;
angle = ((MovieClip(this).rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function looper(){
if (this.y >= 480){
destruct("");
} else {
this.animation_mc.rotation = (this.animation_mc.rotation - 14);
ySpd = (ySpd + grvty);
this.x = (this.x + xSpd);
this.y = (this.y + ySpd);
this.rotation = ((Math.atan2(ySpd, xSpd) * 180) / Math.PI);
};
}
public function destruct(_arg1:String){
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).explosionArray, this);
}
}
}//package
Section 165
//Explosion5 (Explosion5)
package {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import flash.filters.*;
public class Explosion5 extends MovieClip {
public var xSpd:Number;
private var myGlow:GlowFilter;
public var ySpd:Number;
public var fall:Boolean;// = false
public var mc:MovieClip;
public var spd:Number;
public var frmNum:Number;
public var grvty:Number;
public var angle:Number;
private var smokeTrail:Timer;
public var rot:Number;
public function Explosion5(_arg1:Number, _arg2:Number, _arg3:Number){
myGlow = new GlowFilter();
fall = false;
super();
smokeTrail = new Timer(80, 30);
smokeTrail.addEventListener(TimerEvent.TIMER, attSmoke);
smokeTrail.addEventListener(TimerEvent.TIMER_COMPLETE, attSmokeEnd);
smokeTrail.start();
frmNum = _arg3;
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
this.x = _arg1;
this.y = _arg2;
this.gotoAndStop(frmNum);
init();
}
public function init(){
spd = 2.8;
grvty = 1;
angle = ((MovieClip(this).rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function attSmoke(_arg1:TimerEvent){
var _local2:Number;
var _local3:Number;
var _local4:Number;
var _local5:Number;
var _local6:Number;
var _local7:Explosion5a;
if (frmNum == 2){
_local2 = this.x;
} else {
_local2 = (this.x + 120);
};
_local3 = this.y;
_local4 = ((_local2 + Math.floor((Math.random() * (100 - -100)))) + -100);
_local5 = ((_local3 + Math.floor((Math.random() * (100 - -100)))) + -100);
_local6 = (Math.floor((Math.random() * (300 - 240))) + 240);
_local7 = new Explosion5a(_local4, _local5, _local6);
MovieClip(parent.parent).lvlCntnr_mc.addChild(_local7);
MovieClip(parent.parent).explosionArray.push(_local7);
}
public function looper(){
if (this.y >= 480){
destruct("");
} else {
if (fall == true){
ySpd = (ySpd + grvty);
this.x = (this.x + xSpd);
this.y = (this.y + ySpd);
this.rotation = ((Math.atan2(ySpd, xSpd) * 180) / Math.PI);
};
};
}
public function attSmokeEnd(_arg1:TimerEvent){
fall = true;
}
public function destruct(_arg1:String){
smokeTrail.stop();
smokeTrail.removeEventListener(TimerEvent.TIMER, attSmoke);
smokeTrail.removeEventListener(TimerEvent.TIMER_COMPLETE, attSmokeEnd);
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).explosionArray, this);
}
}
}//package
Section 166
//Explosion5a (Explosion5a)
package {
import flash.display.*;
import flash.events.*;
import flash.filters.*;
public class Explosion5a extends MovieClip {
public var xSpd:Number;
private var myGlow:GlowFilter;
public var ySpd:Number;
public var mc:MovieClip;
public var spd:Number;
public var frmNum:Number;
public var grvty:Number;
public var angle:Number;
public var rot:Number;
public function Explosion5a(_arg1:Number, _arg2:Number, _arg3:Number){
myGlow = new GlowFilter();
super();
frmNum = 1;
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
this.x = _arg1;
this.y = _arg2;
this.rotation = _arg3;
init();
}
public function init(){
spd = 8;
grvty = 1;
angle = ((MovieClip(this).rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function looper(){
frmNum++;
if (frmNum >= 10){
destruct("");
} else {
this.gotoAndStop(frmNum);
};
}
public function destruct(_arg1:String){
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).explosionArray, this);
}
}
}//package
Section 167
//focusRectSkin (focusRectSkin)
package {
import flash.display.*;
public dynamic class focusRectSkin extends MovieClip {
}
}//package
Section 168
//GameScreenBG (GameScreenBG)
package {
import flash.media.*;
public dynamic class GameScreenBG extends Sound {
}
}//package
Section 169
//HitSnd (HitSnd)
package {
import flash.media.*;
public dynamic class HitSnd extends Sound {
}
}//package
Section 170
//NewgroundsAPIAsset_big_popup_background (NewgroundsAPIAsset_big_popup_background)
package {
import flash.display.*;
public dynamic class NewgroundsAPIAsset_big_popup_background extends MovieClip {
public var shadow:MovieClip;
public var b:MovieClip;
public var c:MovieClip;
public var bl:MovieClip;
public var l:MovieClip;
public var br:MovieClip;
public var r:MovieClip;
public var tl:MovieClip;
public var t:MovieClip;
public var tr:MovieClip;
}
}//package
Section 171
//NonGameScreenBG (NonGameScreenBG)
package {
import flash.media.*;
public dynamic class NonGameScreenBG extends Sound {
}
}//package
Section 172
//OOO000lll (OOO000lll)
package {
import flash.display.*;
import flash.events.*;
import Util.*;
import flash.net.*;
import flash.system.*;
public class OOO000lll extends MovieClip {
public var O1OlOO00O:XML;
private var _O10OOO1O0:Loader;
private var _O1l10l101:Object;
private var _OO0l101l1:Object;
public var OOO10O100:String;
public var O0l00l0O0:XML;
private var _OOl10010l:String;
private var _O001OO010:Object;
private var _O01OO1O00;
private var _O01O0lOl0:int;
private var _O1Ol011l1:String;
private var _O11OO0110:String;
private var _OOO00l00l:int;
private var _O0lO0100O:String;
private var _OOOOll01l:Array;
private var _O111O01OO:Object;
private var _OO10001Ol:Boolean;
private var _OO1l1OO10:String;
public var O1lll0ll0:XML;
private var _O1OO1OllO:Object;
private var _O0l0OO01O;
private var _OO0l1lOO1:int;
public var OOOll0OO0:int;
public function OOO000lll():void{
var _O1OlO10O0:*;
super();
Security.allowDomain("*");
_OO10001Ol = false;
_O01OO1O00 = this.parent;
_O01OO1O00.stop();
var _OOll00l11:int;
while (true) {
try {
_O1OlO10O0 = _O01OO1O00.getChildAt(_OOll00l11);
if ((_O1OlO10O0 is MovieClip)){
_O1OlO10O0.visible = false;
} else {
_O01OO1O00.removeChild(_O1OlO10O0);
};
_OOll00l11 = (_OOll00l11 + 1);
} catch(e:Error) {
break;
};
};
try {
_O01OO1O00["_O0000Ol01"] = _O0000Ol01;
_O01OO1O00["_O0Olll0lO"] = _O0Olll0lO;
} catch(e:Error) {
};
}
private function _O11lll1OO0(_arg1:String):void{
if (_O0l0OO01O){
_O0l0OO01O.OO0011ll1O(_arg1);
};
}
private function _OO0OO1OO0(_arg1:Event):void{
if ((((((_arg1.type == "ScoreLoadSubmitComplete")) || ((_arg1.type == "ScoreLoadListComplete")))) || ((_arg1.type == "ScoreLoadUserListComplete")))){
O0l00l0O0 = _O0l0OO01O.O011Oll0O();
} else {
if (_arg1.type == "ScoreLoadTimeComplete"){
O1lll0ll0 = _O0l0OO01O.OO011OOl1();
} else {
O0l00l0O0 = _O0l0OO01O.O0001O0Ol();
};
};
_O01OO1O00.dispatchEvent(_arg1);
}
private function _O10Ol0l10(_arg1:IOErrorEvent):void{
removeEventListener(Event.ENTER_FRAME, _O0OlOOO1O);
_O01OO1O00.dispatchEvent(new IOErrorEvent(IOErrorEvent.IO_ERROR));
}
private function _O01Ol1O1O():void{
if (_O0l0OO01O){
_O0l0OO01O.OO011OOl1();
};
}
private function _O110l10ll():void{
if (_O0l0OO01O){
_O0l0OO01O.O01l01OlO();
};
}
private function _O01O1101l():void{
stop();
_O10OOO1O0 = new Loader();
_O10OOO1O0.load(new URLRequest(_O1Ol011l1));
_O01OO1O00.addChildAt(_O10OOO1O0, 0);
this.addEventListener(Event.ENTER_FRAME, _O0OlOOO1O);
_O10OOO1O0.contentLoaderInfo.addEventListener(Event.COMPLETE, _O100O0Oll);
_O10OOO1O0.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, _O10Ol0l10);
}
private function _O0000Ol01(_arg1=null, _arg2:String="default", _arg3="", _arg4:int=0, _arg5:String="normal", _arg6:String="", _arg7:int=0, _arg8:int=0, _arg9:int=1, _arg10:Boolean=false):void{
OOO10O100 = _arg5;
OOOll0OO0 = _arg4;
_O11OO0110 = _arg2;
if (_arg3 == ""){
_OO1l1OO10 = _O11OO0110;
} else {
_OO1l1OO10 = _arg3;
};
if (((!((_arg1 == null))) && (!((_arg1.loaderInfo == null))))){
_O1l10l101 = _arg1.loaderInfo.parameters["username"];
_O001OO010 = _arg1.loaderInfo.parameters["hash"];
_OO0l101l1 = _arg1.loaderInfo.parameters["id"];
_O1OO1OllO = _arg1.loaderInfo.parameters["s"];
_O111O01OO = _arg1.loaderInfo.parameters["c"];
_O1Ol011l1 = "http://www8.agame.com/games/flash/highscore/SubmitterV2.swf";
if (_O00O00010(_arg10)){
_O01O1101l();
} else {
_O01OO1O00.dispatchEvent(new Event("LoadingFailed"));
};
};
_OOl10010l = _arg6;
_OO0l1lOO1 = _arg7;
_O01O0lOl0 = _arg8;
_OOO00l00l = _arg9;
}
private function _O0O1l0OO0():Boolean{
return (!((_O0l0OO01O == null)));
}
private function _O100O0Oll(_arg1:Event):void{
_O0l0OO01O = _arg1.currentTarget.content;
_O0l0OO01O.O0011ll110O0(_O1OO1OllO, 1, _OO0l101l1, _O111O01OO, OOOll0OO0, _OOl10010l, _OO0l1lOO1, _O01O0lOl0, _OOO00l00l, _O1l10l101, _O001OO010);
_O0l0OO01O.addEventListener("HyScorSubmitterLoaded", _OOl11lOOl);
_O0l0OO01O.addEventListener("ScoreLoadError", _OO0OO1OO0);
_O0l0OO01O.addEventListener("ScoreLoadTimeComplete", _OO0OO1OO0);
_O0l0OO01O.addEventListener("ScoreLoadSubmitComplete", _OO0OO1OO0);
_O0l0OO01O.addEventListener("ScoreLoadListComplete", _OO0OO1OO0);
_O0l0OO01O.addEventListener("ScoreLoadUserListComplete", _OO0OO1OO0);
_O0l0OO01O.addEventListener("AchievLoadError", _O0l0O1Oll);
_O0l0OO01O.addEventListener("AchievLoadTimeComplete", _O0l0O1Oll);
_O0l0OO01O.addEventListener("AchievLoadListComplete", _O0l0O1Oll);
_O0l0OO01O.addEventListener("AchievLoadInfoComplete", _O0l0O1Oll);
_O0l0OO01O.addEventListener("AchievLoadGrantComplete", _O0l0O1Oll);
_O01OO1O00["_O0Olll0lO"] = _O0Olll0lO;
_O01OO1O00["_O0O1l0OO0"] = _O0O1l0OO0;
_O01OO1O00["_O01Ol1O1O"] = _O01Ol1O1O;
_O01OO1O00["_O01lOO10O"] = _O01lOO10O;
_O01OO1O00["_O110l10ll"] = _O110l10ll;
_O01OO1O00["_O11lll1OO0"] = _O11lll1OO0;
_O01OO1O00["_O00OOl1Ol"] = _O00OOl1Ol;
_O01OO1O00["_O1OlO10OO"] = _O1OlO10OO;
_O01OO1O00["_OOlOOOll1"] = _OOlOOOll1;
_O01OO1O00["_O010ll111"] = _O010ll111;
}
private function _O00O00010(_arg1:Boolean=false):Boolean{
var _local4:String;
var _local5:O1OOO0O00;
var _local2:Boolean = _arg1;
if (!_local2){
_OOOOll01l = ["www8.agame.com"];
} else {
_OOOOll01l = ["localhost", "www8.agame.com", "www.zlonggames.com", "gamedev.dev.spilgames.com", "stg.pl.a10.com", "www.a10.com.gp.dev.spilgames.eu"];
};
var _local3:LocalConnection = new LocalConnection();
if (((isNaN((_OO0l101l1 as int))) || (isNaN((_O1OO1OllO as int))))){
return (false);
};
for each (_local4 in _OOOOll01l) {
if (_local3.domain == _local4){
_local5 = new O1OOO0O00();
if (_local5.O0111l110()){
_OO10001Ol = true;
return (true);
};
};
};
return (false);
}
private function _O00OOl1Ol(_arg1:String):void{
if (_O0l0OO01O){
_O0l0OO01O.OO00lO1l0(_arg1, _O1l10l101, _O001OO010);
};
}
private function _O0OlOOO1O(_arg1:Event):void{
var _local2 = (((_O10OOO1O0.contentLoaderInfo.bytesLoaded / _O10OOO1O0.contentLoaderInfo.bytesTotal) * 100) >> 0);
if (_local2 >= 100){
removeEventListener(Event.ENTER_FRAME, _O0OlOOO1O);
};
}
private function _OOl11lOOl(_arg1:Event):void{
if (_O0l0OO01O){
_O0l0OO01O.removeEventListener("HyScorSubmitterLoaded", _OOl11lOOl);
};
_O01OO1O00.dispatchEvent(new Event(Event.COMPLETE));
}
private function _O01lOO10O(_arg1:int):void{
if (_O0l0OO01O){
_O0l0OO01O.O0l01llOl(_arg1, _O1l10l101, _O001OO010);
};
}
private function _O0Olll0lO():Boolean{
return (_O00O00010(false));
}
private function _O1OlO10OO():void{
if (_O0l0OO01O){
_O0l0OO01O.O1l0OOl1l(_O1l10l101, _O001OO010);
};
}
private function _O10O00lO0():String{
if (_O0l0OO01O){
return (_O0l0OO01O.OOOO00ll0());
};
return (("FAILED " + _O0l0OO01O));
}
private function _O0l0O1Oll(_arg1:Event):void{
if ((((((_arg1.type == "AchievLoadListComplete")) || ((_arg1.type == "AchievLoadInfoComplete")))) || ((_arg1.type == "AchievLoadGrantComplete")))){
O1OlOO00O = _O0l0OO01O.O11OO0l0l();
} else {
O1OlOO00O = _O0l0OO01O.O0O100l0l();
};
_O01OO1O00.dispatchEvent(_arg1);
}
private function _O010ll111():void{
_O0l0OO01O.removeEventListener("ScoreLoadError", _OO0OO1OO0);
_O0l0OO01O.removeEventListener("ScoreLoadTimeComplete", _OO0OO1OO0);
_O0l0OO01O.removeEventListener("ScoreLoadSubmitComplete", _OO0OO1OO0);
_O0l0OO01O.removeEventListener("ScoreLoadListComplete", _OO0OO1OO0);
_O0l0OO01O.removeEventListener("ScoreLoadUserListComplete", _OO0OO1OO0);
_O0l0OO01O.removeEventListener("AchievLoadError", _O0l0O1Oll);
_O0l0OO01O.removeEventListener("AchievLoadTimeComplete", _O0l0O1Oll);
_O0l0OO01O.removeEventListener("AchievLoadListComplete", _O0l0O1Oll);
_O0l0OO01O.removeEventListener("AchievLoadInfoComplete", _O0l0O1Oll);
_O0l0OO01O.removeEventListener("AchievLoadGrantComplete", _O0l0O1Oll);
_O01OO1O00 = null;
_OOOOll01l = null;
_O0l0OO01O = null;
_O1l10l101 = null;
_O001OO010 = null;
_O10OOO1O0 = null;
O1lll0ll0 = null;
O0l00l0O0 = null;
O1OlOO00O = null;
}
private function _OOlOOOll1(_arg1:int):void{
if (_O0l0OO01O){
_O0l0OO01O.O1OlOO111(_arg1);
};
}
}
}//package
Section 173
//PlayerAmmo1 (PlayerAmmo1)
package {
import flash.display.*;
import flash.events.*;
import flash.filters.*;
public class PlayerAmmo1 extends MovieClip {
public var xSpd:Number;
public var speed:int;
private var myGlow:GlowFilter;
public var ySpd:Number;
public var spd:Number;
public var angle:Number;
public function PlayerAmmo1(_arg1:Number, _arg2:Number, _arg3:Number){
myGlow = new GlowFilter();
super();
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
this.x = _arg1;
this.y = _arg2;
this.rotation = _arg3;
init();
}
public function init(){
spd = 35;
angle = ((this.rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function looper(){
if (x > 680){
destruct("");
} else {
this.x = (this.x + xSpd);
this.y = (this.y + ySpd);
this.rotation = ((Math.atan2(ySpd, xSpd) * 180) / Math.PI);
};
}
public function destruct(_arg1:String){
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).playerAmmo1Arr, this);
}
}
}//package
Section 174
//PlayerAmmo2 (PlayerAmmo2)
package {
import flash.display.*;
import flash.events.*;
import flash.filters.*;
public class PlayerAmmo2 extends MovieClip {
public var xSpd:Number;
public var speed:int;
private var myGlow:GlowFilter;
public var ySpd:Number;
public var spd:Number;
public var angle:Number;
public function PlayerAmmo2(_arg1:Number, _arg2:Number, _arg3:Number){
myGlow = new GlowFilter();
super();
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
this.x = _arg1;
this.y = _arg2;
this.rotation = _arg3;
init();
}
public function init(){
spd = 35;
angle = ((this.rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function looper(){
if (x > 680){
destruct("");
} else {
this.x = (this.x + xSpd);
this.y = (this.y + ySpd);
this.rotation = ((Math.atan2(ySpd, xSpd) * 180) / Math.PI);
};
}
public function destruct(_arg1:String){
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).playerAmmo2Arr, this);
}
}
}//package
Section 175
//PlayerAmmo3 (PlayerAmmo3)
package {
import flash.display.*;
import flash.events.*;
import flash.filters.*;
public class PlayerAmmo3 extends MovieClip {
public var xSpd:Number;
public var speed:int;
private var myGlow:GlowFilter;
public var ySpd:Number;
public var spd:Number;
public var angle:Number;
public function PlayerAmmo3(_arg1:Number, _arg2:Number, _arg3:Number){
myGlow = new GlowFilter();
super();
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
this.x = _arg1;
this.y = _arg2;
this.rotation = _arg3;
init();
}
public function init(){
spd = 35;
angle = ((this.rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function looper(){
if (x > 680){
destruct("");
} else {
this.x = (this.x + xSpd);
this.y = (this.y + ySpd);
this.rotation = ((Math.atan2(ySpd, xSpd) * 180) / Math.PI);
};
}
public function destruct(_arg1:String){
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).playerAmmo3Arr, this);
}
}
}//package
Section 176
//PlayerAmmo4 (PlayerAmmo4)
package {
import flash.display.*;
import flash.events.*;
import flash.filters.*;
public class PlayerAmmo4 extends MovieClip {
public var exist:Number;
public var xSpd:Number;
public var speed:int;
private var myGlow:GlowFilter;
public var ySpd:Number;
public var spd:Number;
public var pullUp:Number;
public var angle:Number;
public function PlayerAmmo4(_arg1:Number, _arg2:Number, _arg3:Number){
myGlow = new GlowFilter();
super();
addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4);
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
this.x = _arg1;
this.y = _arg2;
this.rotation = _arg3;
init();
}
public function init(){
spd = 12;
exist = 100;
pullUp = 0.1;
angle = ((this.rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
function frame3(){
stop();
}
public function looper(){
var _local1:Number;
_local1 = (Math.floor((Math.random() * (5 - 1))) + 1);
this.gotoAndStop(_local1);
exist = (exist - 2);
this.alpha = (exist * 0.01);
if (exist <= 0){
destruct("");
} else {
if (this.x > 680){
destruct("");
} else {
this.scaleX = (this.scaleX + 0.06);
this.scaleY = (this.scaleY + 0.06);
ySpd = (ySpd - pullUp);
this.x = (this.x + xSpd);
this.y = (this.y + ySpd);
this.rotation = ((Math.atan2(ySpd, xSpd) * 180) / Math.PI);
};
};
}
function frame1(){
stop();
}
function frame4(){
stop();
}
public function destruct(_arg1:String){
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).playerAmmo4Arr, this);
}
function frame2(){
stop();
}
}
}//package
Section 177
//PlayerAmmo5 (PlayerAmmo5)
package {
import flash.display.*;
import flash.events.*;
import flash.filters.*;
public class PlayerAmmo5 extends MovieClip {
public var xSpd:Number;
public var speed:int;
private var myGlow:GlowFilter;
public var ySpd:Number;
public var spd:Number;
public var angle:Number;
public function PlayerAmmo5(_arg1:Number, _arg2:Number, _arg3:Number){
myGlow = new GlowFilter();
super();
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
this.x = _arg1;
this.y = (Math.floor((Math.random() * ((_arg2 + 2) - (_arg2 - 2)))) + (_arg2 - 2));
this.rotation = (Math.floor((Math.random() * (2 - -2))) + -2);
init();
}
public function init(){
spd = 45;
angle = ((this.rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function looper(){
if (x > 680){
destruct("");
} else {
this.x = (this.x + xSpd);
this.y = (this.y + ySpd);
this.rotation = ((Math.atan2(ySpd, xSpd) * 180) / Math.PI);
};
}
public function destruct(_arg1:String){
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).playerAmmo5Arr, this);
}
}
}//package
Section 178
//PlayerAmmo6 (PlayerAmmo6)
package {
import flash.display.*;
import flash.events.*;
import flash.filters.*;
public class PlayerAmmo6 extends MovieClip {
public var exist:Number;
public var xSpd:Number;
public var speed:int;
private var myGlow:GlowFilter;
public var ySpd:Number;
public var spd:Number;
public var angle:Number;
public function PlayerAmmo6(_arg1:Number, _arg2:Number, _arg3:Number){
myGlow = new GlowFilter();
super();
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
this.x = _arg1;
this.y = _arg2;
this.rotation = _arg3;
init();
}
public function init(){
spd = 40;
angle = ((this.rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function looper(){
if (this.x > 680){
destruct("");
} else {
this.x = (this.x + xSpd);
this.y = (this.y + ySpd);
this.rotation = ((Math.atan2(ySpd, xSpd) * 180) / Math.PI);
if (MovieClip(parent.parent).fireWeapon == "open"){
this.y = MovieClip(parent).plyr_mc.y;
};
};
}
public function destruct(_arg1:String){
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).playerAmmo6Arr, this);
}
}
}//package
Section 179
//PlayerAmmo7 (PlayerAmmo7)
package {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import flash.filters.*;
public class PlayerAmmo7 extends MovieClip {
public var xSpd:Number;
public var speed:int;
private var myGlow:GlowFilter;
public var ySpd:Number;
public var spd:Number;
public var angle:Number;
private var smokeTrail:Timer;
public function PlayerAmmo7(_arg1:Number, _arg2:Number, _arg3:Number){
myGlow = new GlowFilter();
super();
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
this.x = _arg1;
this.y = _arg2;
this.rotation = _arg3;
smokeTrail = new Timer(2, 0);
smokeTrail.addEventListener(TimerEvent.TIMER, attSmoke);
smokeTrail.start();
init();
}
public function init(){
spd = 35;
angle = ((this.rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function attSmoke(_arg1:TimerEvent){
MovieClip(parent.parent).attSmokeTrail(this);
}
public function looper(){
if (x > 680){
destruct("");
} else {
this.x = (this.x + xSpd);
this.y = (this.y + ySpd);
this.rotation = ((Math.atan2(ySpd, xSpd) * 180) / Math.PI);
};
}
public function destruct(_arg1:String){
smokeTrail.stop();
smokeTrail.removeEventListener(TimerEvent.TIMER, attSmoke);
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).playerAmmo7Arr, this);
}
}
}//package
Section 180
//PlayerAmmo8 (PlayerAmmo8)
package {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import flash.filters.*;
public class PlayerAmmo8 extends MovieClip {
public var origYpos:Number;
public var xSpd:Number;
public var maxDist:Number;
public var speed:int;
private var myGlow:GlowFilter;
public var ySpd:Number;
public var spd:Number;
public var origXpos:Number;
public var angle:Number;
private var smokeTrail:Timer;
public function PlayerAmmo8(_arg1:Number, _arg2:Number, _arg3:Number){
myGlow = new GlowFilter();
super();
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
origXpos = _arg1;
origYpos = _arg2;
this.x = _arg1;
this.y = _arg2;
this.rotation = _arg3;
smokeTrail = new Timer(80, 0);
smokeTrail.addEventListener(TimerEvent.TIMER, attSmoke);
smokeTrail.start();
init();
}
public function init(){
maxDist = 150;
spd = 20;
angle = ((this.rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function attSmoke(_arg1:TimerEvent){
trace("smoke");
MovieClip(parent.parent).attSmokeTrail(this);
}
public function looper(){
if (calDist(this.x, this.y, origXpos, origYpos) >= maxDist){
smokeTrail.stop();
smokeTrail.removeEventListener(TimerEvent.TIMER, attSmoke);
MovieClip(parent.parent).attPlayerAmmo8a(this);
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).playerAmmo8Arr, this);
} else {
if (x > 680){
smokeTrail.stop();
smokeTrail.removeEventListener(TimerEvent.TIMER, attSmoke);
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).playerAmmo8Arr, this);
} else {
this.x = (this.x + xSpd);
this.y = (this.y + ySpd);
this.rotation = ((Math.atan2(ySpd, xSpd) * 180) / Math.PI);
};
};
}
public function destruct(_arg1:String){
smokeTrail.stop();
smokeTrail.removeEventListener(TimerEvent.TIMER, attSmoke);
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).playerAmmo8Arr, this);
}
public function calDist(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
var _local5:Number;
var _local6:Number;
var _local7:Number;
_local5 = ((_arg1 - _arg3) * (_arg1 - _arg3));
_local6 = ((_arg2 - _arg4) * (_arg2 - _arg4));
_local7 = Math.sqrt((_local5 + _local6));
return (_local7);
}
}
}//package
Section 181
//PlayerAmmo8a (PlayerAmmo8a)
package {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import flash.filters.*;
public class PlayerAmmo8a extends MovieClip {
public var origYpos:Number;
public var xSpd:Number;
public var maxDist:Number;
public var speed:int;
private var myGlow:GlowFilter;
public var ySpd:Number;
public var spd:Number;
public var origXpos:Number;
public var angle:Number;
private var smokeTrail:Timer;
public function PlayerAmmo8a(_arg1:Number, _arg2:Number, _arg3:Number){
myGlow = new GlowFilter();
super();
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
origXpos = _arg1;
origYpos = _arg2;
maxDist = (Math.floor((Math.random() * (150 - 75))) + 75);
this.x = _arg1;
this.y = _arg2;
this.rotation = _arg3;
smokeTrail = new Timer(80, 0);
smokeTrail.addEventListener(TimerEvent.TIMER, attSmoke);
smokeTrail.start();
init();
}
public function init(){
spd = 12;
angle = ((this.rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function attSmoke(_arg1:TimerEvent){
trace("smoke");
MovieClip(parent.parent).attSmokeTrail(this);
}
public function looper(){
if (calDist(this.x, this.y, origXpos, origYpos) >= maxDist){
MovieClip(parent.parent).attPlayerAmmo8b(this);
destruct("");
} else {
if ((((((((x < 0)) || ((x > 680)))) || ((y < 0)))) || ((y > 480)))){
destruct("");
} else {
this.x = (this.x + xSpd);
this.y = (this.y + ySpd);
this.rotation = ((Math.atan2(ySpd, xSpd) * 180) / Math.PI);
};
};
}
public function destruct(_arg1:String){
smokeTrail.stop();
smokeTrail.removeEventListener(TimerEvent.TIMER, attSmoke);
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).playerAmmo8aArr, this);
}
public function calDist(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
var _local5:Number;
var _local6:Number;
var _local7:Number;
_local5 = ((_arg1 - _arg3) * (_arg1 - _arg3));
_local6 = ((_arg2 - _arg4) * (_arg2 - _arg4));
_local7 = Math.sqrt((_local5 + _local6));
return (_local7);
}
}
}//package
Section 182
//PlayerAmmo8b (PlayerAmmo8b)
package {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import flash.filters.*;
public class PlayerAmmo8b extends MovieClip {
public var origYpos:Number;
public var xSpd:Number;
public var maxDist:Number;
public var speed:int;
private var myGlow:GlowFilter;
public var ySpd:Number;
public var spd:Number;
public var origXpos:Number;
public var angle:Number;
private var smokeTrail:Timer;
public function PlayerAmmo8b(_arg1:Number, _arg2:Number, _arg3:Number){
myGlow = new GlowFilter();
super();
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
origXpos = _arg1;
origYpos = _arg2;
maxDist = (Math.floor((Math.random() * (150 - 75))) + 75);
this.x = _arg1;
this.y = _arg2;
this.rotation = _arg3;
smokeTrail = new Timer(80, 0);
smokeTrail.addEventListener(TimerEvent.TIMER, attSmoke);
smokeTrail.start();
init();
}
public function init(){
spd = 20;
angle = ((this.rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function attSmoke(_arg1:TimerEvent){
trace("smoke");
MovieClip(parent.parent).attSmokeTrail(this);
}
public function looper(){
if ((((((((x < 0)) || ((x > 680)))) || ((y < 0)))) || ((y > 480)))){
destruct("");
} else {
this.x = (this.x + xSpd);
this.y = (this.y + ySpd);
this.rotation = ((Math.atan2(ySpd, xSpd) * 180) / Math.PI);
};
}
public function destruct(_arg1:String){
smokeTrail.stop();
smokeTrail.removeEventListener(TimerEvent.TIMER, attSmoke);
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).playerAmmo8bArr, this);
}
public function calDist(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
var _local5:Number;
var _local6:Number;
var _local7:Number;
_local5 = ((_arg1 - _arg3) * (_arg1 - _arg3));
_local6 = ((_arg2 - _arg4) * (_arg2 - _arg4));
_local7 = Math.sqrt((_local5 + _local6));
return (_local7);
}
}
}//package
Section 183
//PlayerSmokeTrail (PlayerSmokeTrail)
package {
import flash.display.*;
import flash.events.*;
import flash.filters.*;
public class PlayerSmokeTrail extends MovieClip {
public var xSpd:Number;
private var myGlow:GlowFilter;
public var ySpd:Number;
public var mc:MovieClip;
public var spd:Number;
public var grvty:Number;
public var angle:Number;
public var rot:Number;
public function PlayerSmokeTrail(_arg1:MovieClip){
myGlow = new GlowFilter();
super();
spd = 0.01;
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.2;
this.filters = [myGlow];
this.x = (_arg1.x - 20);
this.y = (_arg1.y + 10);
init();
}
public function init(){
}
public function looper(){
if (this.alpha <= 0){
destruct("");
} else {
this.x = (this.x - 5);
this.y = (this.y + 2);
this.rotation--;
this.alpha = (this.alpha - spd);
this.scaleX = (this.scaleX - spd);
this.scaleY = (this.scaleY - spd);
};
}
public function destruct(_arg1:String){
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).smokeArray, this);
}
}
}//package
Section 184
//PlayerSpecial1 (PlayerSpecial1)
package {
import flash.display.*;
import flash.events.*;
public class PlayerSpecial1 extends MovieClip {
public var xSpd:Number;
public var speed:int;
public var blink:Number;
public var ySpd:Number;
public var energy:Number;
public var spd:Number;
public var angle:Number;
public function PlayerSpecial1(_arg1:Number, _arg2:Number, _arg3:Number){
addFrameScript(0, frame1, 1, frame2);
this.x = _arg1;
this.y = _arg2;
this.rotation = _arg3;
init();
}
public function init(){
blink = 2;
spd = 35;
energy = 200;
angle = ((this.rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function blinker(){
if (blink == 2){
this.gotoAndStop(2);
blink--;
} else {
if (blink == 1){
this.gotoAndStop(1);
blink = 2;
};
};
}
public function looper(){
energy--;
if (energy < 0){
destruct("");
} else {
this.x = MovieClip(parent).plyr_mc.x;
this.y = MovieClip(parent).plyr_mc.y;
if (energy < 30){
this.alpha = 0.1;
} else {
if (energy < 50){
this.alpha = 0.25;
} else {
if (energy < 100){
this.alpha = 0.5;
} else {
if (energy < 150){
this.alpha = 0.75;
} else {
if (energy < 200){
this.alpha = 1;
};
};
};
};
};
blinker();
};
}
function frame1(){
stop();
}
function frame2(){
stop();
}
public function destruct(_arg1:String){
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).playerSpecial1Arr, this);
}
}
}//package
Section 185
//PlayerSpecial2 (PlayerSpecial2)
package {
import flash.display.*;
import flash.events.*;
public class PlayerSpecial2 extends MovieClip {
public var xSpd:Number;
public var speed:int;
public var ySpd:Number;
public var spd:Number;
public var angle:Number;
public function PlayerSpecial2(_arg1:Number, _arg2:Number, _arg3:Number){
this.x = _arg1;
this.y = _arg2;
this.rotation = _arg3;
init();
}
public function init(){
spd = 35;
angle = ((this.rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function looper(){
if (this.scaleX > 10){
destruct("");
} else {
this.scaleX = (this.scaleX + 1);
this.scaleY = (this.scaleY + 1);
};
}
public function destruct(_arg1:String){
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).playerSpecial2Arr, this);
}
}
}//package
Section 186
//PowerUp1 (PowerUp1)
package {
import flash.display.*;
import flash.events.*;
public class PowerUp1 extends MovieClip {
public var xSpd:Number;
public var ySpd:Number;
public var mc:MovieClip;
public var spd:Number;
public var grvty:Number;
public var angle:Number;
public var rot:Number;
public function PowerUp1(_arg1:Number, _arg2:Number){
this.x = _arg1;
this.y = _arg2;
init();
}
public function init(){
spd = 0.5;
grvty = 1;
angle = ((this.rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function looper(){
trace(("pwrup" + this.x));
if (this.hitTestObject(MovieClip(parent).plyr_mc)){
MovieClip(parent.parent).lifeNumerator = (MovieClip(parent.parent).lifeNumerator + (MovieClip(parent.parent).lifeDenominator * 0.25));
MovieClip(parent.parent).plyPwrSnd();
MovieClip(parent.parent).attPwrUpInfo(this, 1);
destruct("");
} else {
if ((((this.x < -50)) || ((this.y > 480)))){
destruct("");
} else {
this.x = (this.x - 0.1);
this.y = (this.y + 2);
};
};
}
public function destruct(_arg1:String){
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).powerupArray, this);
}
}
}//package
Section 187
//PowerUp2 (PowerUp2)
package {
import flash.display.*;
import flash.events.*;
public class PowerUp2 extends MovieClip {
public var xSpd:Number;
public var ySpd:Number;
public var mc:MovieClip;
public var spd:Number;
public var grvty:Number;
public var angle:Number;
public var rot:Number;
public function PowerUp2(_arg1:Number, _arg2:Number){
this.x = _arg1;
this.y = _arg2;
init();
}
public function init(){
spd = 1;
grvty = 1;
angle = ((this.rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function looper(){
if (this.hitTestObject(MovieClip(parent).plyr_mc)){
MovieClip(parent.parent).lives++;
MovieClip(parent.parent).plyPwrSnd();
MovieClip(parent.parent).attPwrUpInfo(this, 2);
destruct("");
} else {
if ((((this.x < -50)) || ((this.y > 480)))){
destruct("");
} else {
this.x = (this.x - 0.1);
this.y = (this.y + 2);
};
};
}
public function destruct(_arg1:String){
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).powerupArray, this);
}
}
}//package
Section 188
//PowerUp3 (PowerUp3)
package {
import flash.display.*;
import flash.events.*;
public class PowerUp3 extends MovieClip {
public var xSpd:Number;
public var ySpd:Number;
public var mc:MovieClip;
public var spd:Number;
public var grvty:Number;
public var angle:Number;
public var rot:Number;
public function PowerUp3(_arg1:Number, _arg2:Number){
this.x = _arg1;
this.y = _arg2;
init();
}
public function init(){
spd = 1;
grvty = 1;
angle = ((this.rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function looper(){
if (this.hitTestObject(MovieClip(parent).plyr_mc)){
MovieClip(parent.parent).ammo1Inventory = MovieClip(parent.parent).ammo1Max;
MovieClip(parent.parent).ammo2Inventory = MovieClip(parent.parent).ammo2Max;
MovieClip(parent.parent).ammo3Inventory = MovieClip(parent.parent).ammo3Max;
MovieClip(parent.parent).ammo4Inventory = MovieClip(parent.parent).ammo4Max;
MovieClip(parent.parent).ammo5Inventory = MovieClip(parent.parent).ammo5Max;
MovieClip(parent.parent).ammo6Inventory = MovieClip(parent.parent).ammo6Max;
MovieClip(parent.parent).ammo7Inventory = MovieClip(parent.parent).ammo7Max;
MovieClip(parent.parent).ammo8Inventory = MovieClip(parent.parent).ammo8Max;
MovieClip(parent.parent).updateAmmoUI();
MovieClip(parent.parent).plyPwrSnd();
MovieClip(parent.parent).attPwrUpInfo(this, 3);
destruct("");
} else {
if ((((this.x < -50)) || ((this.y > 480)))){
destruct("");
} else {
this.x = (this.x - 0.1);
this.y = (this.y + 2);
};
};
}
public function destruct(_arg1:String){
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).powerupArray, this);
}
}
}//package
Section 189
//PowerUp4 (PowerUp4)
package {
import flash.display.*;
import flash.events.*;
public class PowerUp4 extends MovieClip {
public var xSpd:Number;
public var ySpd:Number;
public var mc:MovieClip;
public var spd:Number;
public var grvty:Number;
public var angle:Number;
public var rot:Number;
public function PowerUp4(_arg1:Number, _arg2:Number){
this.x = _arg1;
this.y = _arg2;
init();
}
public function init(){
spd = 1;
grvty = 1;
angle = ((this.rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function looper(){
if (this.hitTestObject(MovieClip(parent).plyr_mc)){
MovieClip(parent.parent).ammo5Inventory = MovieClip(parent.parent).ammo5Max;
MovieClip(parent.parent).ammo6Inventory = MovieClip(parent.parent).ammo6Max;
MovieClip(parent.parent).updateAmmoUI();
destruct("");
} else {
if ((((this.x < -50)) || ((this.y > 480)))){
destruct("");
} else {
this.x = (this.x - 0.1);
this.y = (this.y + 2);
};
};
}
public function destruct(_arg1:String){
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).powerupArray, this);
}
}
}//package
Section 190
//PowerUp5 (PowerUp5)
package {
import flash.display.*;
import flash.events.*;
public class PowerUp5 extends MovieClip {
public var xSpd:Number;
public var ySpd:Number;
public var mc:MovieClip;
public var spd:Number;
public var grvty:Number;
public var angle:Number;
public var rot:Number;
public function PowerUp5(_arg1:Number, _arg2:Number){
this.x = _arg1;
this.y = _arg2;
init();
}
public function init(){
spd = 1;
grvty = 1;
angle = ((this.rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function looper(){
if (this.hitTestObject(MovieClip(parent).plyr_mc)){
MovieClip(parent.parent).ammo7Inventory = MovieClip(parent.parent).ammo7Max;
MovieClip(parent.parent).ammo8Inventory = MovieClip(parent.parent).ammo8Max;
MovieClip(parent.parent).updateAmmoUI();
destruct("");
} else {
if ((((this.x < -50)) || ((this.y > 480)))){
destruct("");
} else {
this.x = (this.x - 0.1);
this.y = (this.y + 2);
};
};
}
public function destruct(_arg1:String){
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).powerupArray, this);
}
}
}//package
Section 191
//PowerUp6 (PowerUp6)
package {
import flash.display.*;
import flash.events.*;
public class PowerUp6 extends MovieClip {
public var xSpd:Number;
public var ySpd:Number;
public var mc:MovieClip;
public var spd:Number;
public var grvty:Number;
public var angle:Number;
public var rot:Number;
public function PowerUp6(_arg1:Number, _arg2:Number){
this.x = _arg1;
this.y = _arg2;
init();
}
public function init(){
spd = 1;
grvty = 1;
angle = ((this.rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function looper(){
if (this.hitTestObject(MovieClip(parent).plyr_mc)){
MovieClip(parent.parent).shield = "armed";
MovieClip(parent.parent).plyPwrSnd();
MovieClip(parent.parent).attPwrUpInfo(this, 4);
destruct("");
} else {
if ((((this.x < -50)) || ((this.y > 480)))){
destruct("");
} else {
this.x = (this.x - 0.1);
this.y = (this.y + 2);
};
};
}
public function destruct(_arg1:String){
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).powerupArray, this);
}
}
}//package
Section 192
//PowerUp7 (PowerUp7)
package {
import flash.display.*;
import flash.events.*;
public class PowerUp7 extends MovieClip {
public var xSpd:Number;
public var ySpd:Number;
public var mc:MovieClip;
public var spd:Number;
public var grvty:Number;
public var angle:Number;
public var rot:Number;
public function PowerUp7(_arg1:Number, _arg2:Number){
this.x = _arg1;
this.y = _arg2;
init();
}
public function init(){
spd = 1;
grvty = 1;
angle = ((this.rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function looper(){
if (this.hitTestObject(MovieClip(parent).plyr_mc)){
MovieClip(parent.parent).emp = "armed";
MovieClip(parent.parent).plyPwrSnd();
MovieClip(parent.parent).attPwrUpInfo(this, 5);
destruct("");
} else {
if ((((this.x < -50)) || ((this.y > 480)))){
destruct("");
} else {
this.x = (this.x - 0.1);
this.y = (this.y + 2);
};
};
}
public function destruct(_arg1:String){
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).powerupArray, this);
}
}
}//package
Section 193
//PowerUpInfo (PowerUpInfo)
package {
import flash.display.*;
import flash.events.*;
import flash.filters.*;
public class PowerUpInfo extends MovieClip {
public var xSpd:Number;
private var myGlow:GlowFilter;
public var ySpd:Number;
public var mc:MovieClip;
public var spd:Number;
public var frmNum:Number;
public var grvty:Number;
public var angle:Number;
public var rot:Number;
public function PowerUpInfo(_arg1:Number, _arg2:Number, _arg3:Number){
myGlow = new GlowFilter();
super();
addFrameScript(0, frame1);
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.5;
this.filters = [myGlow];
this.x = _arg1;
this.y = _arg2;
this.gotoAndStop(_arg3);
init();
}
public function init(){
spd = 0.5;
grvty = 1;
angle = ((this.rotation / 180) * Math.PI);
xSpd = (Math.cos(angle) * spd);
ySpd = (Math.sin(angle) * spd);
}
public function looper(){
if (this.alpha < 0){
destruct("");
} else {
this.alpha = (this.alpha - 0.04);
this.y = (this.y - 0.4);
};
}
function frame1(){
stop();
}
public function destruct(_arg1:String){
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).powerupArray, this);
}
}
}//package
Section 194
//PwrUpSnd (PwrUpSnd)
package {
import flash.media.*;
public dynamic class PwrUpSnd extends Sound {
}
}//package
Section 195
//SmokeTrail (SmokeTrail)
package {
import flash.display.*;
import flash.events.*;
import flash.filters.*;
public class SmokeTrail extends MovieClip {
public var xSpd:Number;
private var myGlow:GlowFilter;
public var ySpd:Number;
public var mc:MovieClip;
public var spd:Number;
public var grvty:Number;
public var angle:Number;
public var rot:Number;
public function SmokeTrail(_arg1:MovieClip){
myGlow = new GlowFilter();
super();
spd = 0.1;
myGlow.inner = false;
myGlow.color = 0;
myGlow.blurX = 20;
myGlow.blurY = 20;
myGlow.alpha = 0.2;
this.filters = [myGlow];
this.x = _arg1.x;
this.y = _arg1.y;
this.rotation = rot;
init();
}
public function init(){
}
public function looper(){
if (this.alpha <= 0){
destruct("");
} else {
this.rotation--;
this.alpha = (this.alpha - spd);
this.scaleX = (this.scaleX - spd);
this.scaleY = (this.scaleY - spd);
};
}
public function destruct(_arg1:String){
MovieClip(parent.parent).removeFromArray(MovieClip(parent.parent).smokeArray, this);
}
}
}//package
Section 196
//Weapon1Snd (Weapon1Snd)
package {
import flash.media.*;
public dynamic class Weapon1Snd extends Sound {
}
}//package
Section 197
//Weapon2Snd (Weapon2Snd)
package {
import flash.media.*;
public dynamic class Weapon2Snd extends Sound {
}
}//package
Section 198
//Weapon3Snd (Weapon3Snd)
package {
import flash.media.*;
public dynamic class Weapon3Snd extends Sound {
}
}//package
Section 199
//Weapon4Snd (Weapon4Snd)
package {
import flash.media.*;
public dynamic class Weapon4Snd extends Sound {
}
}//package
Section 200
//Weapon5Snd (Weapon5Snd)
package {
import flash.media.*;
public dynamic class Weapon5Snd extends Sound {
}
}//package
Section 201
//Weapon6Snd (Weapon6Snd)
package {
import flash.media.*;
public dynamic class Weapon6Snd extends Sound {
}
}//package
Section 202
//Weapon7Snd (Weapon7Snd)
package {
import flash.media.*;
public dynamic class Weapon7Snd extends Sound {
}
}//package
Section 203
//Weapon8aSnd (Weapon8aSnd)
package {
import flash.media.*;
public dynamic class Weapon8aSnd extends Sound {
}
}//package