Section 1
//Kongintro30fps_45 (HyperDriveX_Kongregate_fla.Kongintro30fps_45)
package HyperDriveX_Kongregate_fla {
import flash.events.*;
import flash.display.*;
public dynamic class Kongintro30fps_45 extends MovieClip {
public function Kongintro30fps_45(){
addFrameScript(0, frame1, 179, frame180);
}
function frame180(){
MovieClip(parent).play();
}
function frame1(){
MovieClip(parent).stop();
addEventListener(MouseEvent.CLICK, TitleScreenState.buttonKongPressed);
}
}
}//package HyperDriveX_Kongregate_fla
Section 2
//LongAnimalsAndRobotJam_60 (HyperDriveX_Kongregate_fla.LongAnimalsAndRobotJam_60)
package HyperDriveX_Kongregate_fla {
import flash.events.*;
import flash.display.*;
public dynamic class LongAnimalsAndRobotJam_60 extends MovieClip {
public var robotJAMLogo:SimpleButton;
public var longanimalsLogo:SimpleButton;
public function LongAnimalsAndRobotJam_60(){
addFrameScript(0, frame1);
}
function frame1(){
longanimalsLogo.addEventListener(MouseEvent.CLICK, TitleScreenState.buttonLongAnimalsPressed);
robotJAMLogo.addEventListener(MouseEvent.CLICK, TitleScreenState.buttonRobotJAMPressed);
}
}
}//package HyperDriveX_Kongregate_fla
Section 3
//MainTimeline (HyperDriveX_Kongregate_fla.MainTimeline)
package HyperDriveX_Kongregate_fla {
import flash.display.*;
public dynamic class MainTimeline extends MovieClip {
public var adIDLongAnimals;
public var loaderBack:MovieClip;
public var main:Main;
public var adIDRobotJam;
public function MainTimeline(){
addFrameScript(0, frame1, 97, frame98);
}
function frame98(){
stop();
}
function frame1(){
adIDLongAnimals = "3b33933e7754dac4";
adIDRobotJam = "3e22e7e3d78a43c2";
if (Math.random() < 0.25){
MochiAd.showPreGameAd({clip:root, id:adIDRobotJam, res:"720x600", background:7369053, color:35071, outline:0xFFFFFF, no_bg:true});
} else {
MochiAd.showPreGameAd({clip:root, id:adIDLongAnimals, res:"720x600", background:7369053, color:35071, outline:0xFFFFFF, no_bg:true});
};
}
}
}//package HyperDriveX_Kongregate_fla
Section 4
//ringLoop_4 (HyperDriveX_Kongregate_fla.ringLoop_4)
package HyperDriveX_Kongregate_fla {
import flash.display.*;
public dynamic class ringLoop_4 extends MovieClip {
public function ringLoop_4(){
addFrameScript(90, frame91);
}
function frame91(){
gotoAndPlay("loop");
}
}
}//package HyperDriveX_Kongregate_fla
Section 5
//sun_1 (HyperDriveX_Kongregate_fla.sun_1)
package HyperDriveX_Kongregate_fla {
import flash.display.*;
public dynamic class sun_1 extends MovieClip {
public function sun_1(){
addFrameScript(34, frame35, 65, frame66);
}
function frame35(){
stop();
}
function frame66(){
stop();
MovieClip(parent).play();
}
}
}//package HyperDriveX_Kongregate_fla
Section 6
//Background (Background)
package {
import flash.display.*;
public dynamic class Background extends MovieClip {
}
}//package
Section 7
//bar_power (bar_power)
package {
import flash.display.*;
public dynamic class bar_power extends MovieClip {
}
}//package
Section 8
//BoostIcon (BoostIcon)
package {
import flash.display.*;
public dynamic class BoostIcon extends MovieClip {
}
}//package
Section 9
//buttonDebug1 (buttonDebug1)
package {
import flash.display.*;
public dynamic class buttonDebug1 extends SimpleButton {
}
}//package
Section 10
//Camera (Camera)
package {
public class Camera {
public var mat:Matrix3;
public var farZ:Number;
public var fov:Number;
public var nearZ:Number;
public var pos:V3;
public function Camera(){
nearZ = 1;
farZ = 8000;
pos = new V3();
pos.FromXYZ(0, 0, 0);
mat = new Matrix3();
fov = 120;
}
}
}//package
Section 11
//Crosshair (Crosshair)
package {
import flash.display.*;
public dynamic class Crosshair extends MovieClip {
}
}//package
Section 12
//cube_background (cube_background)
package {
import flash.display.*;
public dynamic class cube_background extends MovieClip {
}
}//package
Section 13
//Defs (Defs)
package {
public class Defs {
public static const zpos_ENEMY = 1000;
public static const objMultX = 100;
public static const gfx_objfinish = 7;
public static const objMultRad = 10;
public static const gfx_bar_power = 8;
public static const zpos_BACKGROUND = 10000;
public static const gfx_boosticon = 1;
public static const gfx_tubesky = 10;
public static const zpos_FAR = 10000;
public static const zpos_OVERLAY = 500;
public static const gfx_crosshair = 2;
public static const gfx_obj1 = 3;
public static const gfx_obj2 = 4;
public static const gfx_obj4 = 6;
public static const gfx_cubebackground = 9;
public static const fps:Number = 30;
public static const gfx_obj3 = 5;
public static const objMultY = 100;
public static const objMultZ = 40;
public static const gfx_background = 0;
public static const gfx_warpbackground = 11;
public static const zpos_PLAYER = 1000;
}
}//package
Section 14
//DisplayObj (DisplayObj)
package {
import flash.events.*;
import flash.display.*;
import flash.geom.*;
public class DisplayObj {
var frames:Array;
public var frame:int;
public function DisplayObj(_arg1:MovieClip, _arg2:Number, _arg3:int):void{
frame = 0;
CreateBitmapsFromMovieClip(_arg1, _arg2, _arg3);
}
public function GetBitmap():Bitmap{
return (frames[frame].bitmaps[0]);
}
public function RenderAt(_arg1:BitmapData, _arg2:Number, _arg3:Number, _arg4:Number):void{
frames[frame].RenderAt(_arg1, _arg2, _arg3, _arg4);
}
public function SetFrame(_arg1:int){
frame = _arg1;
if (frame < 0){
frame = 0;
};
if (frame >= frames.length){
frame = (frames.length - 1);
};
}
public function CreateBitmapsFromMovieClip(_arg1:MovieClip, _arg2:Number, _arg3:int):void{
var _local4:int;
var _local5:int;
var _local6:*;
var _local7:Number;
var _local8:Rectangle;
var _local9:*;
var _local10:int;
var _local11:int;
var _local12:ColorTransform;
var _local13:Number;
var _local14:Number;
var _local15:Number;
var _local16:Number;
var _local17:Number;
var _local18:Number;
var _local19:Number;
var _local20:Bitmap;
var _local21:BitmapData;
frames = new Array();
_local4 = 0;
while (_local4 < _arg1.totalFrames) {
_local6 = new DisplayObjFrame();
_local6.xoffsets = new Array();
_local6.yoffsets = new Array();
_local6.bitmaps = new Array();
_local6.numScales = 1;
if (_arg3 == 1){
_local6.numScales = 50;
};
_local5 = 0;
while (_local5 < _local6.numScales) {
_local7 = 1;
_arg2 = (1 - ((_local7 / Number((_local6.numScales + 1))) * Number(_local5)));
if (_arg2 <= 0.005){
_arg2 = 0.005;
};
if (_local6.numScales == 1){
_arg2 = 1;
};
_local8 = _arg1.getBounds(null);
_local9 = new Matrix();
_local10 = _local8.left;
_local11 = _local8.top;
_local9.scale(_arg2, _arg2);
_local9.translate((-(_local10) * _arg2), (-(_local11) * _arg2));
_local6.xoffsets.push(Number((_local10 * _arg2)));
_local6.yoffsets.push(Number((_local11 * _arg2)));
if (_local6.numScales == 1){
_local12 = null;
} else {
_local13 = 1;
_local14 = 1;
_local15 = 1;
if (_arg3 == 1){
_local13 = Levels.GetFadeR(_local4);
_local14 = Levels.GetFadeG(_local4);
_local15 = Levels.GetFadeB(_local4);
};
_local16 = (1 - _arg2);
if (_local16 < 0.9){
_local16 = 0;
} else {
_local16 = (_local16 - 0.9);
_local16 = (_local16 * 10);
};
if (_local16 > 1){
_local16 = 1;
};
_local17 = Utils.ScaleBetween(1, _local13, _local16);
_local18 = Utils.ScaleBetween(1, _local14, _local16);
_local19 = Utils.ScaleBetween(1, _local15, _local16);
_local12 = new ColorTransform(_local17, _local18, _local19, 1, 0, 0, 0, 0);
};
if ((((_arg1.width == 0)) || ((_arg1.height == 0)))){
_local6.bitmaps.push(null);
} else {
_local20 = new Bitmap();
_local21 = new BitmapData(((_arg1.width + 1) * _arg2), ((_arg1.height + 1) * _arg2), true, 0);
_local21.draw(_arg1, _local9, _local12);
_local20.bitmapData = _local21;
_local6.bitmaps.push(_local20);
};
_local5++;
};
frames.push(_local6);
_arg1.nextFrame();
_local4++;
};
}
public function GetWidth():Number{
return (frames[frame].bitmaps[0].width);
}
public function GetMaxFrames():int{
return (frames.length);
}
public function GetXOffset():Number{
return (frames[frame].xoffsets[0]);
}
public function GetYOffset():Number{
return (frames[frame].yoffsets[0]);
}
public function GetFrame():int{
return (frame);
}
public function RenderAtAdditive(_arg1:BitmapData, _arg2:Number, _arg3:Number, _arg4:Number):void{
frames[frame].RenderAtAdditive(_arg1, _arg2, _arg3, _arg4);
}
public function GetHeight():Number{
return (frames[frame].bitmaps[0].height);
}
public function GetFrameWidth(_arg1:int):Number{
return (frames[_arg1].bitmaps[0].width);
}
}
}//package
Section 15
//DisplayObjFrame (DisplayObjFrame)
package {
import flash.events.*;
import flash.display.*;
import flash.geom.*;
public class DisplayObjFrame {
public var bitmaps:Array;
public var numScales:int;
public var xoffsets:Array;
public var yoffsets:Array;
public function RenderAt(_arg1:BitmapData, _arg2:Number, _arg3:Number, _arg4:Number):void{
var _local5:int;
_local5 = int((numScales * _arg4));
if (_local5 < 0){
_local5 = 0;
};
if (_local5 > (numScales - 1)){
_local5 = (numScales - 1);
};
_local5 = ((numScales - 1) - _local5);
if (bitmaps[_local5].bitmapData != null){
_arg1.copyPixels(bitmaps[_local5].bitmapData, new Rectangle(0, 0, bitmaps[_local5].width, bitmaps[_local5].height), new Point((_arg2 + xoffsets[_local5]), (_arg3 + yoffsets[_local5])));
};
}
}
}//package
Section 16
//EndLevelOverlay (EndLevelOverlay)
package {
import flash.display.*;
public dynamic class EndLevelOverlay extends MovieClip {
public var buttonKongLogo:HighScoresAtKongregate;
}
}//package
Section 17
//Font2 (Font2)
package {
import flash.text.*;
public dynamic class Font2 extends Font {
}
}//package
Section 18
//Font20 (Font20)
package {
import flash.text.*;
public dynamic class Font20 extends Font {
}
}//package
Section 19
//Game (Game)
package {
public class Game {
static var currentScore:int;
static var multiplier:int;
public static var scrollX:Number;
public static var scrollY:Number;
public static var numZombiesActive:int;
public static var maxZombiesActive:int;
static var genTimer:Number;
static var main:Main;
public static var difficulty:int;
public static var currentWeapon:int;
public static function UpdateGameplay():void{
var _local1:GameObj;
main.levelTimer = (main.levelTimer + main.ftime);
}
static function RandBetweenFloat(_arg1:Number, _arg2:Number):Number{
var _local3:Number;
_local3 = (Math.random() * (_arg2 - _arg1));
_local3 = (_local3 + _arg1);
return (_local3);
}
public static function Init(_arg1:Main){
main = _arg1;
genTimer = 0;
scrollX = 0;
scrollY = 0;
currentScore = 0;
multiplier = 1;
numZombiesActive = 0;
maxZombiesActive = 200;
currentWeapon = 0;
}
public static function AddScore(_arg1:int):void{
currentScore = (currentScore + (_arg1 * multiplier));
}
}
}//package
Section 20
//GameObj (GameObj)
package {
import flash.events.*;
import flash.geom.*;
public class GameObj {
var extraInfo:int;
var graphicID:int;
public var xacc:Number;
var xoffset:Number;
public var active:Boolean;
public var hp:int;
public var count:int;
public var appearingTimer:Number;
var externyvel:Number;
public var xvel:Number;
var multiplierFrame:int;
var ftime:Number;
var flashTimer:Number;
var shootTimerMax:Number;
public var type:int;
public var ypos:Number;
public var enemyMissileMode:int;
var minFrame:int;
var timer:Number;
var rotVel:Number;
public var speed:Number;
public var bitList:Array;
var yoffset:Number;
var startx:Number;
public var ypos2:Number;
var starty:Number;
var shootTimer:Number;
public var yacc:Number;
var maxFrame:int;
var frame:Number;
public var hitTimer:Number;
public var controlIndex:int;
public var subtype:int;
var flashFlag:Boolean;
var canHarvest:Boolean;
public var oldxpos:Number;
public var yvel:Number;
public var coordListX:Array;
public var coordListY:Array;
var timer1:Number;
public var dir:Number;
public var radius:Number;
public var visible:Boolean;
public var zpos:Number;
public var toPosX:Number;
public var controlMode:int;
var dist:Number;
public var toPosY:Number;
var main:Main;
var externxvel:Number;
public var baseID:int;
public var homingGO:GameObj;
var userVarNumber:Number;
public var xpos2:Number;
public var numBits:int;
public var xpos:Number;
public var pickupType:int;
public var handleRender:Boolean;
var timerMax:Number;
var shootMissileType:int;
public var oldypos:Number;
public var radius2:Number;
public var enemyType:int;
var xflip:Boolean;
public var explosionType:int;
public var frameVel:Number;
var flashTimerMax:Number;
public var countable:Boolean;
public var bonusType:int;
var scoreFrame:int;
static const gotype_SPAWNPOINT = 3;
static const gotype_ZOMBIE = 4;
static const gotype_BACKGROUND = 1;
static const gotype_PLAYER = 2;
static const gotype_BULLET = 5;
public function GameObj(_arg1, _arg2, _arg3){
xpos = _arg2;
ypos = _arg3;
zpos = 1;
startx = _arg2;
starty = _arg3;
active = false;
main = _arg1;
zpos = 0;
graphicID = 0;
frame = 0;
frameVel = 0;
controlIndex = 0;
timer = 0;
timer1 = 0;
radius = 16;
minFrame = 0;
maxFrame = 0;
handleRender = true;
shootTimer = 0;
shootTimerMax = 0;
shootMissileType = 0;
coordListX = new Array(32);
coordListY = new Array(32);
bitList = new Array(32);
numBits = 0;
countable = true;
flashTimer = 0;
flashFlag = true;
extraInfo = 0;
xflip = false;
}
public function LimitVel(_arg1:Number){
var _local2:*;
var _local3:*;
var _local4:*;
_local2 = Math.sqrt(((xvel * xvel) + (yvel * yvel)));
_local3 = (xvel / _local2);
_local4 = (yvel / _local2);
if (_local2 > _arg1){
xvel = (_local3 * _arg1);
yvel = (_local4 * _arg1);
};
}
function UpdateHedgehog():void{
var _local1:Number;
var _local2:Number;
oldxpos = xpos;
oldypos = ypos;
_local1 = 0;
_local2 = (600 - 50);
AddVels();
BounceOffWalls();
if (ypos > _local2){
ypos = 0;
yvel = 0;
};
}
function GetLen(_arg1, _arg2):Number{
var _local3:*;
_local3 = Math.sqrt(((_arg1 * _arg1) + (_arg2 * _arg2)));
return (_local3);
}
function RandBetween(_arg1:Number, _arg2:Number):Number{
var _local3:Number;
_local3 = (Math.random() * (_arg2 - _arg1));
_local3 = (_local3 + _arg1);
return (_local3);
}
public function Update():void{
ftime = main.ftime;
if (type == gotype_BACKGROUND){
xpos = Game.scrollX;
ypos = Game.scrollY;
frameVel = 0.1;
CycleAnimation();
} else {
if (type == gotype_PLAYER){
UpdatePlayer();
} else {
if (type == gotype_SPAWNPOINT){
UpdateSpawnpoint();
} else {
if (type == gotype_ZOMBIE){
UpdateZombie();
} else {
if (type == gotype_BULLET){
UpdateBullet();
};
};
};
};
};
}
public function RotDistTowards(_arg1:Number, _arg2:Number):Number{
var _local3:*;
var _local4:*;
var _local5:*;
var _local6:*;
var _local7:*;
var _local8:*;
var _local9:Number;
_local3 = 3.141592658;
_local4 = (_local3 * 2);
_local5 = Math.sin(_arg1);
_local6 = Math.cos(_arg1);
_local7 = Math.sin(_arg2);
_local8 = Math.cos(_arg2);
_local9 = ((_local5 * _local8) - (_local7 * _local6));
_local9 = Math.abs(_local9);
return (_local9);
}
function DoExternalVel():void{
var _local1:Number;
xpos = (xpos + (externxvel * ftime));
ypos = (ypos + (externyvel * ftime));
_local1 = 0.9;
externxvel = (externxvel * _local1);
externyvel = (externyvel * _local1);
}
public function UpdatePlayer():void{
var _local1:Number;
var _local2:Number;
var _local3:Number;
oldxpos = xpos;
oldypos = ypos;
_local1 = 0;
_local2 = 0;
_local3 = 5;
if (main.keyReader.Down(KeyReader.KEY_DOWN)){
_local2 = _local3;
};
if (main.keyReader.Down(KeyReader.KEY_UP)){
_local2 = -(_local3);
};
if (main.keyReader.Down(KeyReader.KEY_RIGHT)){
_local1 = _local3;
};
if (main.keyReader.Down(KeyReader.KEY_LEFT)){
_local1 = -(_local3);
};
if (main.keyReader.Down(KeyReader.KEY_1)){
Game.currentWeapon = 0;
};
if (main.keyReader.Down(KeyReader.KEY_2)){
Game.currentWeapon = 1;
};
if (main.keyReader.Down(KeyReader.KEY_3)){
Game.currentWeapon = 2;
};
if (main.keyReader.Down(KeyReader.KEY_4)){
Game.currentWeapon = 3;
};
if (main.keyReader.Down(KeyReader.KEY_5)){
Game.currentWeapon = 4;
};
if ((((_local1 == 0)) && ((_local2 == 0)))){
speed = 0;
} else {
speed = 2;
dir = GetDirBetween(xpos, ypos, (xpos + _local1), (ypos + _local2));
};
GetVelFromDir(speed);
xpos = (xpos + (xvel * ftime));
ypos = (ypos + (yvel * ftime));
frameVel = 1;
CycleAnimation();
}
public function GetNumFrames():int{
return (main.graphicobjs[graphicID].GetMaxFrames());
}
public function AddImpulse(_arg1:Number, _arg2:Number, _arg3:Number){
externxvel = (externxvel + (_arg1 * _arg3));
externyvel = (externyvel + (_arg2 * _arg3));
}
public function UpdateBullet(){
timer = (timer + ftime);
if (IsInWorld(32) == false){
active = false;
};
xpos = (xpos + (xvel * ftime));
ypos = (ypos + (yvel * ftime));
}
public function PlayAnimationEx():Boolean{
var _local1:Boolean;
var _local2:*;
_local1 = false;
frame = (frame + (frameVel * ftime));
_local2 = (maxFrame - minFrame);
if (frame > maxFrame){
frame = maxFrame;
_local1 = true;
};
if (frame < minFrame){
frame = minFrame;
_local1 = true;
};
return (_local1);
}
function Anim_FromVel():void{
var _local1:int;
var _local2:Number;
var _local3:Number;
var _local4:*;
_local1 = GetNumFrames();
_local2 = xvel;
_local3 = yvel;
_local4 = Math.atan2(_local2, _local3);
frame = ((_local1 / (Math.PI * 2)) * -(_local4));
if (frame < 0){
frame = (frame + _local1);
};
if (frame > _local1){
frame = (frame - _local1);
};
frame = (frame + (_local1 / 2));
if (frame > _local1){
frame = (frame - _local1);
};
}
function DistanceToObj(_arg1:GameObj):Number{
var _local2:Number;
var _local3:Number;
var _local4:Number;
_local2 = (_arg1.xpos - xpos);
_local3 = (_arg1.ypos - ypos);
_local4 = Math.sqrt(((_local2 * _local2) + (_local3 * _local3)));
return (_local4);
}
function UpdateZombie():void{
var _local1:*;
_local1 = main.goPlayer;
timer = (timer - ftime);
if (timer < 0){
timer = RandBetween(20, 50);
dir = GetDirBetween(xpos, ypos, _local1.xpos, _local1.ypos);
dir = (dir + RandBetween(-0.2, 0.2));
GetVelFromDir(speed);
};
xpos = (xpos + (xvel * ftime));
ypos = (ypos + (yvel * ftime));
}
public function ZombieKilled():void{
Game.numZombiesActive--;
}
function BounceOffWalls(){
var _local1:Number;
var _local2:Number;
_local1 = 0;
_local2 = 1000;
if (xpos > _local2){
xvel = (xvel * -1);
xpos = _local2;
};
if (xpos < _local1){
xvel = (xvel * -1);
xpos = _local1;
};
}
function MakeUnitVel():Number{
var _local1:*;
var _local2:*;
var _local3:*;
_local1 = GetLen(xvel, yvel);
_local2 = (xvel / _local1);
_local3 = (yvel / _local1);
xvel = _local2;
yvel = _local3;
return (_local1);
}
function HandleFlash(){
flashTimerMax = 10;
flashTimer = (flashTimer + ftime);
if (flashTimer >= flashTimerMax){
flashTimer = 0.01;
if (flashFlag == false){
flashFlag = true;
} else {
flashFlag = false;
};
};
}
public function PlayAnimation():Boolean{
var _local1:*;
frame = (frame + (frameVel * ftime));
_local1 = (main.graphicobjs[graphicID].GetMaxFrames() - 1);
if (frame >= _local1){
frame = _local1;
return (true);
};
return (false);
}
function RandCircle():Number{
return ((Math.random() * (Math.PI * 2)));
}
public function SetType(_arg1:int):void{
var _local2:int;
var _local3:Number;
_local2 = 0;
_local3 = 0;
type = _arg1;
controlMode = _local2;
xvel = _local3;
frame = _local3;
frameVel = _local3;
timer = _local3;
hitTimer = _local3;
hp = 1;
handleRender = true;
visible = true;
shootTimer = _local3;
shootTimerMax = _local3;
externxvel = _local3;
externyvel = _local3;
appearingTimer = _local3;
countable = true;
flashTimer = _local3;
flashFlag = true;
extraInfo = _local2;
dir = 0;
if (type == gotype_BACKGROUND){
} else {
if (type == gotype_PLAYER){
} else {
if (type == gotype_SPAWNPOINT){
} else {
if (type == gotype_ZOMBIE){
InitZombie();
} else {
if (type == gotype_BULLET){
};
};
};
};
};
}
function AddVels(){
var _local1:Number;
var _local2:*;
_local1 = 10;
_local2 = 0.1;
yvel = (yvel + ((_local2 * ftime) * ftime));
if (yvel > _local1){
yvel = _local1;
};
if (yvel < -(_local1)){
yvel = -(_local1);
};
xpos = (xpos + (xvel * ftime));
ypos = (ypos + (yvel * ftime));
}
function InitZombie():void{
radius = RandBetween(30, 40);
speed = RandBetween(0.2, 0.6);
Game.numZombiesActive++;
}
public function CycleAnimation():void{
var _local1:*;
frame = (frame + (frameVel * ftime));
_local1 = (main.graphicobjs[graphicID].GetMaxFrames() - 1);
if (frame > _local1){
frame = (frame - _local1);
};
if (frame < 0){
frame = (frame + _local1);
};
}
function RandBetweenRandNeg(_arg1:Number, _arg2:Number):Number{
var _local3:Number;
_local3 = (Math.random() * (_arg2 - _arg1));
_local3 = (_local3 + _arg1);
if (Math.random() < 0.5){
_local3 = -(_local3);
};
return (_local3);
}
public function GetDirBetween(_arg1, _arg2, _arg3, _arg4):Number{
var _local5:*;
_local5 = Math.atan2((_arg3 - _arg1), (_arg4 - _arg2));
return (_local5);
}
function DistanceToObj1(_arg1:GameObj, _arg2:Number, _arg3:Number):Number{
var _local4:Number;
var _local5:Number;
var _local6:Number;
_local4 = (_arg1.xpos - _arg2);
_local5 = (_arg1.ypos - _arg3);
_local6 = Math.sqrt(((_local4 * _local4) + (_local5 * _local5)));
return (_local6);
}
public function CycleAnimationEx():Boolean{
var _local1:Boolean;
var _local2:*;
_local1 = false;
frame = (frame + (frameVel * ftime));
_local2 = (maxFrame - minFrame);
if (frame > maxFrame){
frame = (frame - _local2);
_local1 = true;
};
if (frame < minFrame){
frame = (frame + _local2);
_local1 = true;
};
return (_local1);
}
public function Render(_arg1):void{
var _local2:Number;
var _local3:Number;
if (visible == false){
return;
};
if (appearingTimer > 0){
return;
};
_local2 = xpos;
_local3 = ypos;
if (flashFlag == false){
return;
};
main.graphicobjs[graphicID].SetFrame(frame);
main.graphicobjs[graphicID].RenderAt(main.screenBD, _local2, _local3, xflip);
}
public function GetVelFromDir1(_arg1:Number, _arg2:Number){
xvel = (Math.sin(_arg2) * _arg1);
yvel = (Math.cos(_arg2) * _arg1);
}
function SetEdgePos():int{
var _local1:Number;
_local1 = 50;
if (RandBetween(0, 100) < 50){
ypos = RandBetween(0, 1000);
xpos = (0 - _local1);
if (RandBetween(0, 100) < 50){
xpos = (1000 + _local1);
return (1);
};
return (3);
//unresolved jump
};
xpos = RandBetween(0, 1000);
ypos = (0 - _local1);
if (RandBetween(0, 100) < 50){
ypos = (1000 + _local1);
return (2);
};
return (0);
}
function IsInWorld(_arg1:Number):Boolean{
if (xpos < (0 - _arg1)){
return (false);
};
if (ypos < (0 - _arg1)){
return (false);
};
if (xpos > (1000 + _arg1)){
return (false);
};
if (ypos > (600 + _arg1)){
return (false);
};
return (true);
}
public function RotateTowards(_arg1:Number, _arg2:Number, _arg3:Number):Number{
var _local4:*;
var _local5:*;
var _local6:*;
var _local7:*;
var _local8:*;
var _local9:*;
var _local10:Number;
var _local11:*;
_local4 = 3.141592658;
_local5 = (_local4 * 2);
_local6 = Math.sin(_arg1);
_local7 = Math.cos(_arg1);
_local8 = Math.sin(_arg2);
_local9 = Math.cos(_arg2);
_local10 = ((_local6 * _local9) - (_local8 * _local7));
_local11 = _arg1;
if (_local10 < 0){
_local11 = (_local11 + _arg3);
} else {
if (_local10 > 0){
_local11 = (_local11 - _arg3);
};
};
if (_local11 > _local5){
_local11 = (_local11 - _local5);
};
if (_local11 < 0){
_local11 = (_local11 + _local5);
};
return (_local11);
}
function UpdateSpawnpoint():void{
var _local1:*;
var _local2:GameObj;
timer = (timer + ftime);
if (timer > 5){
timer = 0;
if (Game.numZombiesActive <= Game.maxZombiesActive){
_local1 = RandBetween(0, 10);
if (_local1 < 10){
_local2 = main.objs.AddObj(GameObj.gotype_ZOMBIE, xpos, ypos, Defs.zpos_PLAYER, 0, 0);
};
};
};
}
public function GetVelFromDir(_arg1:Number){
xvel = (Math.sin(dir) * _arg1);
yvel = (Math.cos(dir) * _arg1);
}
}
}//package
Section 21
//GameObjGroup (GameObjGroup)
package {
import flash.events.*;
class GameObjGroup {
public var numobjs:int;// = 0x0100
var m:Main;
public var zorder:Array;
public var objs:Array;
function GameObjGroup(_arg1){
var _local2:*;
numobjs = 0x0100;
super();
m = _arg1;
objs = new Array();
zorder = new Array(0x0100);
_local2 = 0;
while (_local2 < numobjs) {
objs.push(new GameObj(m, 0, 0));
_local2++;
};
}
public function Update():void{
var _local1:int;
_local1 = 0;
while (_local1 < objs.length) {
if (objs[_local1].active == true){
objs[_local1].Update();
};
_local1++;
};
}
public function GetZOrder():int{
var _local1:int;
var _local2:int;
var _local3:int;
var _local4:int;
var _local5:Number;
var _local6:Number;
var _local7:int;
_local1 = 0;
while (_local1 < numobjs) {
if (objs[_local1].active == true){
if (objs[_local1].handleRender == true){
zorder[_local3] = _local1;
_local3++;
};
};
_local1++;
};
_local4 = _local3;
_local1 = 0;
while (_local1 < (_local4 - 1)) {
_local2 = (_local1 + 1);
while (_local2 < _local4) {
_local5 = objs[zorder[_local1]].zpos;
_local6 = objs[zorder[_local2]].zpos;
if (_local6 > _local5){
_local7 = zorder[_local1];
zorder[_local1] = zorder[_local2];
zorder[_local2] = _local7;
};
_local2++;
};
_local1++;
};
return (_local4);
}
public function AddObj(_arg1:int, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:int, _arg6:int):GameObj{
var _local7:int;
var _local8:GameObj;
_local7 = 0;
while (_local7 < numobjs) {
if (objs[_local7].active == false){
_local8 = objs[_local7];
_local8.active = true;
_local8.zpos = _arg4;
_local8.xpos = _arg2;
_local8.ypos = _arg3;
_local8.startx = _arg2;
_local8.starty = _arg3;
_local8.yvel = 0;
_local8.graphicID = _arg5;
_local8.SetType(_arg1);
_local8.extraInfo = _arg6;
return (objs[_local7]);
};
_local7++;
};
return (null);
}
public function Render():void{
var _local1:int;
var _local2:int;
_local1 = GetZOrder();
_local2 = 0;
while (_local2 < _local1) {
objs[zorder[_local2]].Render(m);
_local2++;
};
}
}
}//package
Section 22
//HelpScreen1 (HelpScreen1)
package {
import flash.display.*;
public dynamic class HelpScreen1 extends MovieClip {
public var bNext:SimpleButton;
}
}//package
Section 23
//HelpScreens (HelpScreens)
package {
import flash.events.*;
import flash.display.*;
public class HelpScreens {
static var currentScreenNum:int;
static var currentScreen:MovieClip;
public static var active:Boolean;
static var screens:Array;
static var main:Main;
public static function Start():void{
currentScreenNum = 0;
DisplayScreen();
active = true;
}
static function bNextPressed(_arg1:MouseEvent){
trace("pressed");
currentScreenNum++;
if (currentScreenNum >= screens.length){
Stop();
} else {
DisplayScreen();
};
}
public static function InitOnce(_arg1:Main):void{
main = _arg1;
active = false;
currentScreen = null;
screens = new Array();
screens.push(HelpScreen1);
}
static function DisplayScreen(){
var _local1:MovieClip;
if (currentScreen != null){
main.removeChild(currentScreen);
};
_local1 = new (screens[currentScreenNum]);
currentScreen = AddMovieClip(0, 0, _local1);
currentScreen.bNext.addEventListener(MouseEvent.CLICK, bNextPressed);
}
static function Stop(){
if (main != null){
main.removeChild(currentScreen);
};
currentScreen = null;
active = false;
}
static function AddMovieClip(_arg1:Number, _arg2:Number, _arg3:MovieClip):MovieClip{
_arg3.x = _arg1;
_arg3.y = _arg2;
main.addChild(_arg3);
return (_arg3);
}
}
}//package
Section 24
//HighScoresAtKongregate (HighScoresAtKongregate)
package {
import flash.display.*;
public dynamic class HighScoresAtKongregate extends SimpleButton {
}
}//package
Section 25
//InfoOverlay (InfoOverlay)
package {
import flash.text.*;
public class InfoOverlay {
static var main:Main;
static var maxItems:int;
static var list:Array;
public static function Add(_arg1:String){
var _local2:InfoOverlayItem;
_local2 = list[0];
_local2.Init(_arg1);
}
public static function AddAt(_arg1:Number, _arg2:String, _arg3:int, _arg4:Number){
var _local5:InfoOverlayItem;
_local5 = list[_arg3];
_local5.Init(_arg2);
_local5.precount = (_arg1 * Defs.fps);
_local5.maxtime = (_arg4 * Defs.fps);
}
public static function Render(){
var _local1:InfoOverlayItem;
for each (_local1 in list) {
if (((_local1.active) && ((_local1.precount <= 0)))){
_local1.textField.text = _local1.text;
_local1.textField.autoSize = TextFieldAutoSize.CENTER;
_local1.textField.setTextFormat(main.tf_infooverlay);
} else {
_local1.textField.text = "";
};
};
}
public static function UpdateOncePerFrame(){
var _local1:InfoOverlayItem;
for each (_local1 in list) {
if (_local1.active){
if (_local1.precount > 0){
_local1.precount = (_local1.precount - main.ftime);
} else {
_local1.timer = (_local1.timer + main.ftime);
if (_local1.timer >= _local1.maxtime){
_local1.timer = _local1.maxtime;
_local1.active = false;
};
};
};
};
}
public static function InitForLevel(_arg1:Main){
var _local2:int;
var _local3:Number;
var _local4:Number;
var _local5:Number;
var _local6:InfoOverlayItem;
main = _arg1;
list = new Array();
maxItems = 8;
_local3 = 360;
_local4 = 200;
_local5 = 50;
_local2 = 0;
while (_local2 < maxItems) {
_local6 = new InfoOverlayItem(main, _local3, _local4);
list.push(_local6);
_local4 = (_local4 + _local5);
_local2++;
};
}
}
}//package
import flash.display.*;
import flash.text.*;
class InfoOverlayItem {
public var timer:Number;
public var active:Boolean;
public var type:int;
public var text:String;
public var maxtime:Number;
public var mc:MovieClip;
public var precount:Number;
public var textField:TextField;
private function InfoOverlayItem(_arg1:Main, _arg2, _arg3){
textField = CreateTextField(_arg1.tf_infooverlay, _arg2, _arg3, "");
mc = new MovieClip();
mc.addChild(textField);
_arg1.addChild(mc);
active = false;
type = 0;
precount = 0;
}
private function CreateTextField(_arg1:TextFormat, _arg2:Number, _arg3:Number, _arg4:String):TextField{
var _local5:TextField;
_local5 = new TextField();
_local5.selectable = false;
_local5.embedFonts = true;
_local5.autoSize = TextFieldAutoSize.CENTER;
_local5.x = _arg2;
_local5.y = _arg3;
_local5.text = _arg4;
_local5.setTextFormat(_arg1);
return (_local5);
}
public function Init(_arg1:String){
type = 0;
timer = 0;
maxtime = (Defs.fps * 0.9);
text = _arg1;
active = true;
precount = 0;
}
}
Section 26
//KeyReader (KeyReader)
package {
import flash.events.*;
import flash.display.*;
public class KeyReader {
var keysPressed:Array;
var keysDown:Array;
static const KEY_LEFT = 37;
static const KEY_UP = 38;
static const KEY_DOWN = 40;
static const KEY_3 = 51;
static const KEY_5 = 53;
static const KEY_7 = 55;
static const KEY_1 = 49;
static const KEY_2 = 50;
static const KEY_4 = 52;
static const KEY_6 = 54;
static const KEY_8 = 56;
static const KEY_9 = 57;
static const KEY_A = 65;
static const KEY_B = 66;
static const KEY_C = 67;
static const KEY_E = 69;
static const KEY_F = 70;
static const KEY_G = 71;
static const KEY_H = 72;
static const KEY_I = 73;
static const KEY_J = 74;
static const KEY_D = 68;
static const KEY_M = 77;
static const KEY_N = 78;
static const KEY_O = 79;
static const KEY_P = 80;
static const KEY_Q = 81;
static const KEY_R = 82;
static const KEY_L = 76;
static const KEY_T = 84;
static const KEY_U = 85;
static const KEY_V = 86;
static const KEY_W = 87;
static const KEY_X = 88;
static const KEY_Y = 89;
static const KEY_K = 75;
static const KEY_0 = 58;
static const KEY_Z = 90;
static const KEY_S = 83;
static const KEY_SPACE = 32;
static const KEY_RIGHT = 39;
public function KeyReader(_arg1:Stage){
var _local2:int;
super();
_arg1.addEventListener(KeyboardEvent.KEY_DOWN, keyDownListener);
_arg1.addEventListener(KeyboardEvent.KEY_UP, keyUpListener);
_arg1.focus = _arg1;
keysDown = new Array(0x0100);
keysPressed = new Array(0x0100);
_local2 = 0;
while (_local2 < 0x0100) {
keysDown[_local2] = int(0);
keysPressed[_local2] = Boolean(false);
_local2++;
};
}
public function Down(_arg1:int):Boolean{
return (!((keysDown[_arg1] == 0)));
}
public function Pressed(_arg1:int):Boolean{
return (keysPressed[_arg1]);
}
function keyDownListener(_arg1:KeyboardEvent):void{
var _local2:int;
_local2 = _arg1.keyCode;
var _local3 = keysDown;
var _local4 = _local2;
var _local5 = (_local3[_local4] + 1);
_local3[_local4] = _local5;
}
public function UpdateOncePerFrame():void{
var _local1:int;
_local1 = 0;
while (_local1 < 0x0100) {
if (keysDown[_local1] == 1){
keysPressed[_local1] = true;
var _local2 = keysDown;
var _local3 = _local1;
var _local4 = (_local2[_local3] + 1);
_local2[_local3] = _local4;
} else {
keysPressed[_local1] = false;
};
_local1++;
};
}
function keyUpListener(_arg1:KeyboardEvent):void{
var _local2:int;
_local2 = _arg1.keyCode;
keysDown[_local2] = 0;
}
}
}//package
Section 27
//Kongregate_LevelLocked (Kongregate_LevelLocked)
package {
import flash.display.*;
public dynamic class Kongregate_LevelLocked extends SimpleButton {
}
}//package
Section 28
//Levels (Levels)
package {
import flash.net.*;
public class Levels {
static var sharedObjectSaveName = "HyperDriveX";
static var levelsLocked:Array;
static var levelAccuracy:Array;
static var levelTimes:Array;
static var levelSpeeds:Array;
static var maxLevels:int;
public static function GetQualifyingLevel(_arg1:int):int{
if (_arg1 == 0){
return (-1);
};
if (_arg1 == 1){
return (0);
};
if (_arg1 == 2){
return (1);
};
if (_arg1 == 3){
return (2);
};
if (_arg1 == 4){
return (3);
};
if (_arg1 == 5){
return (4);
};
if (_arg1 == 6){
return (5);
};
if (_arg1 == 7){
return (6);
};
return (-1);
}
public static function SetBestTime(_arg1:Main, _arg2:int, _arg3:Number, _arg4:Number, _arg5:Number):void{
var _local6:Number;
var _local7:int;
var _local8:int;
var _local9:String;
var _local10:String;
_local6 = levelTimes[_arg2];
if (_arg3 < _local6){
_local6 = _arg3;
};
levelTimes[_arg2] = _local6;
_local6 = levelSpeeds[_arg2];
if (_arg4 > _local6){
_local6 = _arg4;
};
levelSpeeds[_arg2] = _local6;
_local6 = levelAccuracy[_arg2];
if (_arg5 > _local6){
_local6 = _arg5;
};
levelAccuracy[_arg2] = _local6;
_local7 = 0;
while (_local7 < 8) {
_local8 = GetQualifyingLevel(_local7);
if (_local8 != -1){
if (_local8 == _arg2){
if (_arg3 <= (GetQualifyingTime(_local7) * Defs.fps)){
levelsLocked[_local7] = false;
};
};
};
_local7++;
};
Save();
if (Licensors.GetLicensor() == Licensors.LICENSOR_NONE){
} else {
if (Licensors.IsHosted()){
_local10 = int((_arg1.currentLevel + 1)).toString();
_local9 = ("LevelTime" + _local10);
LongAnimals_Kongregate.kongregate.scores.submit(_arg3, _local9);
_local9 = ("FinalSpeed" + _local10);
LongAnimals_Kongregate.kongregate.scores.submit(_arg4, _local9);
_local9 = ("Accuracy" + _local10);
LongAnimals_Kongregate.kongregate.scores.submit(_arg5, _local9);
};
};
}
static function InitLevelObjs3():Array{
var _local1:Array;
_local1 = new Array();
_local1.push(new Object3D(0, 0, 20, 0, 20));
_local1.push(new Object3D(0, 0, 30, 0, 21));
_local1.push(new Object3D(0, 0, 40, 0, 22));
_local1.push(new Object3D(0, 0, 50, 0, 23));
_local1.push(new Object3D(0, -108, 60, 0, 24));
_local1.push(new Object3D(0, -108, 70, 0, 25));
_local1.push(new Object3D(0, -156, 80, 0, 26));
_local1.push(new Object3D(0, -156, 90, 0, 27));
_local1.push(new Object3D(0, -156, 100, 0, 28));
_local1.push(new Object3D(0, -156, 110, 0, 29));
_local1.push(new Object3D(0, -168, 120, 0, 28));
_local1.push(new Object3D(0, -168, 130, 0, 27));
_local1.push(new Object3D(0, -168, 140, 0, 26));
_local1.push(new Object3D(27, -168, 150, 0, 25));
_local1.push(new Object3D(27, -168, 160, 0, 24));
_local1.push(new Object3D(27, -168, 170, 0, 23));
_local1.push(new Object3D(27, -168, 180, 0, 22));
_local1.push(new Object3D(27, -170, 190, 0, 21));
_local1.push(new Object3D(27, -180, 200, 0, 20));
_local1.push(new Object3D(27, -207, 210, 0, 21));
_local1.push(new Object3D(27, -207, 220, 0, 22));
_local1.push(new Object3D(27, -207, 230, 0, 23));
_local1.push(new Object3D(27, -207, 240, 0, 24));
_local1.push(new Object3D(27, -255, 250, 0, 25));
_local1.push(new Object3D(114, -201, 260, 0, 26));
_local1.push(new Object3D(135, -180, 270, 0, 27));
_local1.push(new Object3D(135, -180, 280, 0, 28));
_local1.push(new Object3D(135, -132, 290, 0, 29));
_local1.push(new Object3D(135, -132, 300, 0, 28));
_local1.push(new Object3D(135, -90, 310, 0, 27));
_local1.push(new Object3D(135, -84, 320, 0, 26));
_local1.push(new Object3D(210, -84, 330, 0, 25));
_local1.push(new Object3D(212, -84, 340, 0, 24));
_local1.push(new Object3D(537, -72, 350, 0, 23));
_local1.push(new Object3D(642, -30, 360, 0, 22));
_local1.push(new Object3D(642, -18, 370, 0, 21));
_local1.push(new Object3D(642, 51, 380, 0, 20));
_local1.push(new Object3D(642, 72, 390, 0, 20));
_local1.push(new Object3D(642, 72, 400, 0, 20));
_local1.push(new Object3D(642, 72, 410, 0, 20));
_local1.push(new Object3D(642, 72, 420, 0, 20));
_local1.push(new Object3D(642, 72, 430, 0, 20));
_local1.push(new Object3D(642, 72, 440, 0, 20));
_local1.push(new Object3D(642, 72, 450, 0, 20));
_local1.push(new Object3D(642, 72, 460, 0, 20));
_local1.push(new Object3D(642, 72, 470, 0, 20));
_local1.push(new Object3D(618, 72, 480, 0, 20));
_local1.push(new Object3D(618, 72, 490, 0, 20));
_local1.push(new Object3D(618, 72, 500, 0, 20));
_local1.push(new Object3D(-477, -24, 60, 2, 20));
_local1.push(new Object3D(-512, -86, 70, 2, 20));
_local1.push(new Object3D(-540, -237, 80, 2, 20));
_local1.push(new Object3D(-498, -425, 90, 2, 20));
_local1.push(new Object3D(-475, -543, 100, 2, 20));
_local1.push(new Object3D(-384, -858, 110, 2, 20));
_local1.push(new Object3D(-144, -978, 120, 2, 20));
_local1.push(new Object3D(230, -978, 130, 2, 20));
_local1.push(new Object3D(699, -900, 140, 2, 20));
_local1.push(new Object3D(852, -675, 150, 2, 20));
_local1.push(new Object3D(852, -370, 160, 2, 20));
_local1.push(new Object3D(852, -3, 170, 2, 20));
_local1.push(new Object3D(792, 237, 180, 2, 20));
_local1.push(new Object3D(522, 363, 190, 2, 20));
_local1.push(new Object3D(115, 410, 200, 2, 20));
_local1.push(new Object3D(-213, 438, 210, 2, 20));
_local1.push(new Object3D(-522, 411, 220, 2, 20));
_local1.push(new Object3D(-579, 330, 230, 2, 20));
_local1.push(new Object3D(-636, 198, 240, 2, 20));
_local1.push(new Object3D(-642, -78, 250, 2, 20));
_local1.push(new Object3D(-642, -249, 260, 2, 20));
_local1.push(new Object3D(-622, -393, 270, 2, 20));
_local1.push(new Object3D(-541, -584, 280, 2, 20));
_local1.push(new Object3D(-430, -738, 290, 2, 20));
_local1.push(new Object3D(-201, -873, 300, 2, 20));
_local1.push(new Object3D(-96, -879, 310, 2, 20));
_local1.push(new Object3D(1485, -246, 370, 3, 20));
_local1.push(new Object3D(1512, -246, 380, 3, 20));
_local1.push(new Object3D(1611, -246, 390, 3, 20));
_local1.push(new Object3D(1758, -246, 400, 3, 20));
_local1.push(new Object3D(1842, -246, 410, 3, 20));
_local1.push(new Object3D(1908, -246, 420, 3, 20));
_local1.push(new Object3D(1992, -246, 430, 3, 20));
_local1.push(new Object3D(2033, -246, 440, 3, 20));
_local1.push(new Object3D(1931, -246, 450, 3, 20));
_local1.push(new Object3D(1683, -246, 460, 3, 20));
_local1.push(new Object3D(1316, -246, 470, 3, 20));
_local1.push(new Object3D(1187, -246, 480, 3, 20));
_local1.push(new Object3D(1187, -246, 490, 3, 20));
_local1.push(new Object3D(756, -104, 520, 3, 20));
_local1.push(new Object3D(756, -104, 530, 3, 20));
_local1.push(new Object3D(756, -77, 540, 3, 20));
_local1.push(new Object3D(756, -39, 550, 3, 20));
_local1.push(new Object3D(756, -2, 560, 3, 20));
_local1.push(new Object3D(756, 25, 570, 3, 20));
_local1.push(new Object3D(756, 13, 580, 3, 20));
_local1.push(new Object3D(756, -52, 590, 3, 20));
_local1.push(new Object3D(756, -62, 600, 3, 20));
_local1.push(new Object3D(756, -89, 610, 3, 20));
_local1.push(new Object3D(773, -89, 620, 3, 20));
_local1.push(new Object3D(783, -89, 630, 3, 20));
_local1.push(new Object3D(783, -89, 650, Object3D.type_FinishLine, 50));
return (_local1);
}
static function InitLevelObjs5():Array{
var _local1:Array;
_local1 = new Array();
_local1.push(new Object3D(0, 0, 40, 0, 31));
_local1.push(new Object3D(0, -77, 50, 0, 31));
_local1.push(new Object3D(0, -117, 60, 0, 31));
_local1.push(new Object3D(42, -234, 70, 0, 31));
_local1.push(new Object3D(180, -372, 80, 0, 31));
_local1.push(new Object3D(222, -426, 90, 0, 31));
_local1.push(new Object3D(588, -780, 100, 0, 31));
_local1.push(new Object3D(693, -843, 110, 0, 31));
_local1.push(new Object3D(756, -855, 120, 0, 31));
_local1.push(new Object3D(936, -972, 130, 0, 31));
_local1.push(new Object3D(1302, -972, 140, 0, 31));
_local1.push(new Object3D(1580, -972, 150, 0, 31));
_local1.push(new Object3D(1877, -972, 160, 0, 31));
_local1.push(new Object3D(2075, -972, 170, 0, 31));
_local1.push(new Object3D(2374, -972, 180, 0, 31));
_local1.push(new Object3D(2542, -972, 190, 0, 31));
_local1.push(new Object3D(2811, -972, 200, 0, 31));
_local1.push(new Object3D(3218, -972, 210, 0, 31));
_local1.push(new Object3D(3505, -972, 220, 0, 31));
_local1.push(new Object3D(3783, -972, 230, 0, 31));
_local1.push(new Object3D(4153, -972, 240, 0, 31));
_local1.push(new Object3D(4480, -972, 250, 0, 31));
_local1.push(new Object3D(4745, -972, 260, 0, 31));
_local1.push(new Object3D(5166, -972, 270, 0, 31));
_local1.push(new Object3D(5775, -972, 280, 0, 31));
_local1.push(new Object3D(6369, -972, 290, 0, 31));
_local1.push(new Object3D(6813, -972, 300, 0, 31));
_local1.push(new Object3D(7129, -972, 310, 0, 31));
_local1.push(new Object3D(7493, -972, 320, 0, 31));
_local1.push(new Object3D(8037, -972, 330, 0, 31));
_local1.push(new Object3D(8410, -972, 340, 0, 31));
_local1.push(new Object3D(8693, -972, 350, 0, 31));
_local1.push(new Object3D(8918, -972, 360, 0, 31));
_local1.push(new Object3D(9096, -972, 370, 0, 31));
_local1.push(new Object3D(9171, -972, 380, 0, 31));
_local1.push(new Object3D(9291, -972, 390, 0, 31));
_local1.push(new Object3D(9410, -972, 400, 0, 31));
_local1.push(new Object3D(9485, -972, 410, 0, 31));
_local1.push(new Object3D(9644, -972, 420, 0, 31));
_local1.push(new Object3D(9644, -972, 420, 1, 31));
_local1.push(new Object3D(9755, -972, 430, 1, 31));
_local1.push(new Object3D(9847, -972, 440, 1, 31));
_local1.push(new Object3D(9957, -972, 450, 1, 31));
_local1.push(new Object3D(10169, -972, 460, 1, 31));
_local1.push(new Object3D(10329, -972, 470, 1, 31));
_local1.push(new Object3D(10401, -972, 480, 1, 31));
_local1.push(new Object3D(10401, -972, 490, 1, 31));
_local1.push(new Object3D(10401, -972, 500, 1, 31));
_local1.push(new Object3D(10476, -972, 510, 1, 31));
_local1.push(new Object3D(10760, -972, 520, 1, 31));
_local1.push(new Object3D(10943, -972, 530, 1, 31));
_local1.push(new Object3D(11111, -972, 540, 1, 31));
_local1.push(new Object3D(11403, -972, 550, 1, 31));
_local1.push(new Object3D(11578, -1047, 560, 1, 31));
_local1.push(new Object3D(11746, -1276, 570, 1, 31));
_local1.push(new Object3D(11746, -1584, 580, 1, 31));
_local1.push(new Object3D(11706, -2218, 590, 1, 31));
_local1.push(new Object3D(11647, -2835, 600, 1, 31));
_local1.push(new Object3D(11536, -3176, 610, 1, 31));
_local1.push(new Object3D(11369, -3405, 620, 1, 31));
_local1.push(new Object3D(11362, -3563, 630, 1, 31));
_local1.push(new Object3D(11197, -3725, 640, 1, 31));
_local1.push(new Object3D(11119, -3893, 650, 1, 31));
_local1.push(new Object3D(11002, -4061, 660, 1, 31));
_local1.push(new Object3D(10927, -4136, 670, 1, 31));
_local1.push(new Object3D(10927, -4136, 670, 2, 31));
_local1.push(new Object3D(10861, -4277, 680, 2, 31));
_local1.push(new Object3D(10705, -4494, 690, 2, 31));
_local1.push(new Object3D(10498, -4701, 700, 2, 31));
_local1.push(new Object3D(10205, -4994, 710, 2, 31));
_local1.push(new Object3D(10052, -5094, 720, 2, 31));
_local1.push(new Object3D(9664, -5118, 730, 2, 31));
_local1.push(new Object3D(9351, -5209, 740, 2, 31));
_local1.push(new Object3D(9131, -5429, 750, 2, 31));
_local1.push(new Object3D(8928, -5581, 760, 2, 31));
_local1.push(new Object3D(8799, -5585, 770, 2, 31));
_local1.push(new Object3D(8619, -5698, 780, 2, 31));
_local1.push(new Object3D(8015, -5733, 790, 2, 31));
_local1.push(new Object3D(7379, -5565, 800, 2, 31));
_local1.push(new Object3D(6606, -5210, 810, 2, 31));
_local1.push(new Object3D(5892, -4816, 820, 2, 31));
_local1.push(new Object3D(5433, -4585, 830, 2, 31));
_local1.push(new Object3D(4935, -4207, 840, 2, 31));
_local1.push(new Object3D(4552, -3944, 850, 3, 31));
_local1.push(new Object3D(4137, -3642, 860, 3, 31));
_local1.push(new Object3D(3683, -3288, 870, 3, 31));
_local1.push(new Object3D(3486, -3094, 880, 3, 31));
_local1.push(new Object3D(3181, -2748, 890, 3, 31));
_local1.push(new Object3D(2886, -2321, 900, 3, 31));
_local1.push(new Object3D(2714, -2039, 910, 3, 31));
_local1.push(new Object3D(-1357, -509, 50, 0, 31));
_local1.push(new Object3D(-1376, -668, 60, 0, 31));
_local1.push(new Object3D(-1376, -1030, 70, 0, 31));
_local1.push(new Object3D(-1451, -1111, 80, 0, 31));
_local1.push(new Object3D(-1451, -1401, 90, 0, 31));
_local1.push(new Object3D(-1451, -1828, 100, 0, 31));
_local1.push(new Object3D(-1451, -2210, 110, 0, 31));
_local1.push(new Object3D(-1568, -2617, 120, 0, 31));
_local1.push(new Object3D(-1736, -2794, 130, 0, 31));
_local1.push(new Object3D(-1904, -2962, 140, 0, 31));
_local1.push(new Object3D(-1904, -3191, 150, 0, 31));
_local1.push(new Object3D(-2072, -3371, 160, 0, 31));
_local1.push(new Object3D(-2060, -3951, 170, 0, 31));
_local1.push(new Object3D(-1985, -4801, 180, 0, 31));
_local1.push(new Object3D(-1915, -5361, 190, 0, 31));
_local1.push(new Object3D(-1682, -5629, 200, 0, 31));
_local1.push(new Object3D(-1425, -5868, 210, 0, 31));
_local1.push(new Object3D(-1222, -6071, 220, 0, 31));
_local1.push(new Object3D(-1081, -6095, 230, 0, 31));
_local1.push(new Object3D(-988, -5994, 240, 0, 31));
_local1.push(new Object3D(-988, -5760, 250, 0, 31));
_local1.push(new Object3D(-988, -4925, 260, 0, 31));
_local1.push(new Object3D(-988, -4163, 270, 0, 31));
_local1.push(new Object3D(-988, -3313, 280, 0, 31));
_local1.push(new Object3D(-988, -2081, 290, 0, 31));
_local1.push(new Object3D(-988, -1125, 300, 0, 31));
_local1.push(new Object3D(-988, -697, 310, 0, 31));
_local1.push(new Object3D(-988, -328, 320, 0, 31));
_local1.push(new Object3D(-988, -109, 330, 1, 31));
_local1.push(new Object3D(-988, 26, 340, 1, 31));
_local1.push(new Object3D(-988, 271, 350, 1, 31));
_local1.push(new Object3D(-988, 673, 360, 1, 31));
_local1.push(new Object3D(-988, 1443, 370, 1, 31));
_local1.push(new Object3D(-988, 2455, 380, 1, 31));
_local1.push(new Object3D(-838, 3401, 390, 1, 31));
_local1.push(new Object3D(-661, 4148, 400, 1, 31));
_local1.push(new Object3D(-577, 4535, 410, 1, 31));
_local1.push(new Object3D(-409, 4814, 420, 1, 31));
_local1.push(new Object3D(-463, 5552, 430, 1, 31));
_local1.push(new Object3D(-966, 5634, 440, 1, 31));
_local1.push(new Object3D(-1606, 5505, 450, 1, 31));
_local1.push(new Object3D(-2060, 5180, 460, 1, 31));
_local1.push(new Object3D(-1892, 4380, 470, 1, 31));
_local1.push(new Object3D(-1883, 3751, 480, 1, 31));
_local1.push(new Object3D(-1883, 3356, 490, 1, 31));
_local1.push(new Object3D(-1804, 2971, 500, 1, 31));
_local1.push(new Object3D(-1616, 2589, 510, 1, 31));
_local1.push(new Object3D(-1411, 2245, 520, 1, 31));
_local1.push(new Object3D(-994, 2031, 530, 1, 31));
_local1.push(new Object3D(129, 1850, 540, 1, 31));
_local1.push(new Object3D(1102, 1675, 550, 1, 31));
_local1.push(new Object3D(0x0707, 1220, 560, 1, 31));
_local1.push(new Object3D(2037, 530, 570, 1, 31));
_local1.push(new Object3D(2037, 530, 570, 2, 31));
_local1.push(new Object3D(2037, 228, 580, 2, 31));
_local1.push(new Object3D(2037, -50, 590, 2, 31));
_local1.push(new Object3D(1857, -302, 600, 2, 31));
_local1.push(new Object3D(1403, -1036, 610, 2, 31));
_local1.push(new Object3D(1402, -2264, 620, 2, 31));
_local1.push(new Object3D(1402, -3797, 630, 2, 31));
_local1.push(new Object3D(1402, -5306, 640, 2, 31));
_local1.push(new Object3D(1402, -6979, 650, 2, 31));
_local1.push(new Object3D(1402, -8484, 660, 2, 31));
_local1.push(new Object3D(1402, -9958, 670, 2, 31));
_local1.push(new Object3D(1311, -11177, 680, 2, 31));
_local1.push(new Object3D(1180, -11910, 690, 2, 31));
_local1.push(new Object3D(1026, -11998, 700, 2, 31));
_local1.push(new Object3D(1000, -11758, 710, 2, 31));
_local1.push(new Object3D(1000, -10921, 720, 2, 31));
_local1.push(new Object3D(1000, -9667, 730, 2, 31));
_local1.push(new Object3D(1000, -8927, 740, 2, 31));
_local1.push(new Object3D(1000, -8565, 750, 3, 31));
_local1.push(new Object3D(1000, -7961, 760, 3, 31));
_local1.push(new Object3D(1000, -6884, 770, 3, 31));
_local1.push(new Object3D(958, -5432, 780, 3, 31));
_local1.push(new Object3D(958, -4158, 790, 3, 31));
_local1.push(new Object3D(716, -3363, 800, 3, 31));
_local1.push(new Object3D(659, -2788, 810, 3, 31));
_local1.push(new Object3D(659, -2272, 820, 3, 31));
_local1.push(new Object3D(659, -1885, 830, 3, 31));
_local1.push(new Object3D(659, -1633, 840, 3, 31));
_local1.push(new Object3D(659, -1562, 850, 3, 31));
_local1.push(new Object3D(659, -1675, 860, 3, 31));
_local1.push(new Object3D(719, -1790, 870, 3, 31));
_local1.push(new Object3D(930, -2028, 880, 3, 31));
_local1.push(new Object3D(930, -2035, 890, 3, 31));
_local1.push(new Object3D(-2004, 808, 50, 0, 31));
_local1.push(new Object3D(-2004, 808, 60, 0, 31));
_local1.push(new Object3D(-2226, 882, 70, 0, 31));
_local1.push(new Object3D(-2373, 1000, 80, 0, 31));
_local1.push(new Object3D(-2590, 1217, 90, 0, 31));
_local1.push(new Object3D(-2952, 1579, 100, 0, 31));
_local1.push(new Object3D(-3407, 1964, 110, 0, 31));
_local1.push(new Object3D(-3601, 1964, 120, 0, 31));
_local1.push(new Object3D(-3809, 1976, 130, 0, 31));
_local1.push(new Object3D(-4044, 2253, 140, 0, 31));
_local1.push(new Object3D(-3756, 2566, 150, 0, 31));
_local1.push(new Object3D(-3214, 3017, 160, 0, 31));
_local1.push(new Object3D(-2675, 3302, 170, 0, 31));
_local1.push(new Object3D(-1558, 3389, 180, 0, 31));
_local1.push(new Object3D(-325, 3605, 190, 0, 31));
_local1.push(new Object3D(912, 3774, 200, 0, 31));
_local1.push(new Object3D(1922, 3774, 210, 0, 31));
_local1.push(new Object3D(2964, 3774, 220, 0, 31));
_local1.push(new Object3D(3198, 3557, 230, 0, 31));
_local1.push(new Object3D(3273, 3363, 240, 0, 31));
_local1.push(new Object3D(3390, 3064, 250, 0, 31));
_local1.push(new Object3D(3465, 2989, 260, 0, 31));
_local1.push(new Object3D(3764, 3157, 270, 0, 31));
_local1.push(new Object3D(3764, 2741, 280, 0, 31));
_local1.push(new Object3D(3722, 2172, 290, 0, 31));
_local1.push(new Object3D(3722, 1438, 300, 0, 31));
_local1.push(new Object3D(3722, 1022, 310, 0, 31));
_local1.push(new Object3D(3722, 670, 320, 0, 31));
_local1.push(new Object3D(3722, 497, 330, 0, 31));
_local1.push(new Object3D(3722, 216, 340, 0, 31));
_local1.push(new Object3D(3722, -274, 350, 0, 31));
_local1.push(new Object3D(3722, -489, 360, 0, 31));
_local1.push(new Object3D(3722, -611, 370, 0, 31));
_local1.push(new Object3D(3722, -986, 380, 1, 31));
_local1.push(new Object3D(3722, -1444, 390, 1, 31));
_local1.push(new Object3D(3722, -1766, 400, 1, 31));
_local1.push(new Object3D(3722, -2610, 410, 1, 31));
_local1.push(new Object3D(3722, -2715, 420, 1, 31));
_local1.push(new Object3D(3722, -1899, 430, 1, 31));
_local1.push(new Object3D(3762, -603, 440, 1, 31));
_local1.push(new Object3D(3914, 585, 450, 1, 31));
_local1.push(new Object3D(3993, 1392, 460, 1, 31));
_local1.push(new Object3D(4220, 2112, 470, 1, 31));
_local1.push(new Object3D(4347, 2654, 480, 1, 31));
_local1.push(new Object3D(4466, 3221, 490, 1, 31));
_local1.push(new Object3D(4541, 3499, 500, 1, 31));
_local1.push(new Object3D(4616, 3676, 510, 1, 31));
_local1.push(new Object3D(4616, 3943, 520, 1, 31));
_local1.push(new Object3D(4616, 4180, 530, 1, 31));
_local1.push(new Object3D(4616, 4405, 540, 1, 31));
_local1.push(new Object3D(4534, 4429, 550, 1, 31));
_local1.push(new Object3D(4214, 4429, 560, 1, 31));
_local1.push(new Object3D(3820, 4354, 570, 1, 31));
_local1.push(new Object3D(3499, 4125, 580, 1, 31));
_local1.push(new Object3D(2929, 3712, 590, 1, 31));
_local1.push(new Object3D(2537, 3525, 600, 1, 31));
_local1.push(new Object3D(2897, 3105, 610, 1, 31));
_local1.push(new Object3D(3457, 2597, 620, 1, 31));
_local1.push(new Object3D(3602, 2351, 630, 1, 31));
_local1.push(new Object3D(3921, 1827, 640, 1, 31));
_local1.push(new Object3D(4664, 1299, 650, 1, 31));
_local1.push(new Object3D(5621, 1299, 660, 1, 31));
_local1.push(new Object3D(7009, 1224, 670, 1, 31));
_local1.push(new Object3D(8142, 1056, 680, 1, 31));
_local1.push(new Object3D(8789, 1014, 690, 1, 31));
_local1.push(new Object3D(9496, 822, 700, 1, 31));
_local1.push(new Object3D(10207, 379, 710, 1, 31));
_local1.push(new Object3D(10264, -292, 720, 1, 31));
_local1.push(new Object3D(10507, -897, 730, 1, 31));
_local1.push(new Object3D(10820, -1112, 740, 1, 31));
_local1.push(new Object3D(11200, -1392, 750, 1, 31));
_local1.push(new Object3D(11305, -1572, 760, 1, 31));
_local1.push(new Object3D(11380, -1740, 770, 2, 31));
_local1.push(new Object3D(11293, -1981, 780, 2, 31));
_local1.push(new Object3D(10982, -2351, 790, 2, 31));
_local1.push(new Object3D(10630, -2506, 800, 2, 31));
_local1.push(new Object3D(10190, -2506, 810, 2, 31));
_local1.push(new Object3D(9837, -2506, 820, 2, 31));
_local1.push(new Object3D(9571, -2678, 830, 2, 31));
_local1.push(new Object3D(8776, -2842, 840, 2, 31));
_local1.push(new Object3D(7676, -2999, 850, 2, 31));
_local1.push(new Object3D(7403, -3034, 860, 2, 31));
_local1.push(new Object3D(7184, -3076, 870, 2, 31));
_local1.push(new Object3D(6893, -3136, 880, 2, 31));
_local1.push(new Object3D(3408, -3087, 920, 3, 31));
_local1.push(new Object3D(3408, -3087, 930, 3, 31));
_local1.push(new Object3D(3408, -3087, 940, 3, 31));
_local1.push(new Object3D(3408, -3087, 950, 3, 31));
_local1.push(new Object3D(3408, -3087, 960, 3, 31));
_local1.push(new Object3D(3408, -3087, 970, 3, 31));
_local1.push(new Object3D(3408, -3087, 980, 3, 31));
_local1.push(new Object3D(3408, -3087, 990, 3, 31));
_local1.push(new Object3D(3408, -3087, 1000, 3, 31));
_local1.push(new Object3D(3408, -3087, 1030, Object3D.type_FinishLine, 50));
return (_local1);
}
public static function Load():void{
var _local1:SharedObject;
_local1 = SharedObject.getLocal(sharedObjectSaveName);
if (_local1.size != 0){
levelTimes = _local1.data.levelTimes;
levelsLocked = _local1.data.levelsLocked;
levelSpeeds = _local1.data.levelSpeeds;
levelAccuracy = _local1.data.levelAccuracy;
};
}
public static function GetFadeR(_arg1:int):Number{
if (_arg1 == 0){
return (0);
};
if (_arg1 == 1){
return (0);
};
if (_arg1 == 2){
return (0);
};
if (_arg1 == 3){
return (0);
};
if (_arg1 == 4){
return (0);
};
if (_arg1 == 5){
return (0);
};
if (_arg1 == 6){
return (0);
};
if (_arg1 == 7){
return (0);
};
return (0);
}
static function InitLevelObjs1():Array{
var _local1:Array;
_local1 = new Array();
_local1.push(new Object3D(0, -27, 30, 0, 30));
_local1.push(new Object3D(54, -27, 40, 0, 30));
_local1.push(new Object3D(336, -27, 50, 0, 30));
_local1.push(new Object3D(516, -27, 60, 0, 30));
_local1.push(new Object3D(851, -27, 70, 0, 30));
_local1.push(new Object3D(1029, -27, 80, 0, 30));
_local1.push(new Object3D(1371, -27, 90, 0, 30));
_local1.push(new Object3D(1914, -27, 100, 0, 30));
_local1.push(new Object3D(2079, -27, 110, 0, 30));
_local1.push(new Object3D(2216, -27, 120, 0, 30));
_local1.push(new Object3D(2199, -27, 130, 0, 30));
_local1.push(new Object3D(2103, -27, 140, 0, 30));
_local1.push(new Object3D(1890, -27, 150, 0, 30));
_local1.push(new Object3D(1318, -27, 160, 0, 30));
_local1.push(new Object3D(882, -27, 170, 0, 30));
_local1.push(new Object3D(585, -27, 180, 0, 30));
_local1.push(new Object3D(180, -27, 190, 0, 30));
_local1.push(new Object3D(-362, -27, 200, 0, 30));
_local1.push(new Object3D(-813, -27, 210, 0, 30));
_local1.push(new Object3D(-1041, -27, 220, 0, 30));
_local1.push(new Object3D(-1116, -27, 230, 0, 30));
_local1.push(new Object3D(-1191, -27, 240, 0, 30));
_local1.push(new Object3D(-1287, -27, 250, 0, 30));
_local1.push(new Object3D(-1347, -27, 260, 0, 30));
_local1.push(new Object3D(-1240, -27, 270, 0, 30));
_local1.push(new Object3D(-1125, -27, 280, 0, 30));
_local1.push(new Object3D(-834, -27, 290, 0, 30));
_local1.push(new Object3D(-436, -27, 300, 0, 30));
_local1.push(new Object3D(-51, -27, 310, 0, 30));
_local1.push(new Object3D(15, -27, 320, 0, 30));
_local1.push(new Object3D(137, -27, 330, 0, 30));
_local1.push(new Object3D(243, -27, 340, 0, 30));
_local1.push(new Object3D(368, -27, 350, 0, 30));
_local1.push(new Object3D(489, -27, 360, 0, 30));
_local1.push(new Object3D(564, -27, 370, 0, 30));
_local1.push(new Object3D(462, -27, 380, 0, 30));
_local1.push(new Object3D(201, -27, 390, 0, 30));
_local1.push(new Object3D(-470, -27, 400, 0, 30));
_local1.push(new Object3D(-588, -27, 410, 0, 30));
_local1.push(new Object3D(-723, -27, 420, 0, 30));
_local1.push(new Object3D(-834, -27, 430, 0, 30));
_local1.push(new Object3D(-909, -27, 440, 0, 30));
_local1.push(new Object3D(-984, -27, 450, 0, 30));
_local1.push(new Object3D(-1065, -27, 460, 0, 30));
_local1.push(new Object3D(-1119, -27, 470, 0, 30));
_local1.push(new Object3D(-1215, -27, 480, 0, 30));
_local1.push(new Object3D(-1092, -27, 490, 0, 30));
_local1.push(new Object3D(-792, -27, 500, 0, 30));
_local1.push(new Object3D(-285, -27, 510, 0, 30));
_local1.push(new Object3D(266, -27, 520, 0, 30));
_local1.push(new Object3D(0x0300, -27, 530, 0, 30));
_local1.push(new Object3D(1074, -27, 540, 0, 30));
_local1.push(new Object3D(1275, -27, 550, 0, 30));
_local1.push(new Object3D(1557, -27, 560, 0, 30));
_local1.push(new Object3D(1808, -27, 570, 0, 30));
_local1.push(new Object3D(1821, -27, 580, 0, 30));
_local1.push(new Object3D(1641, -27, 590, 0, 30));
_local1.push(new Object3D(1581, -27, 600, 0, 30));
_local1.push(new Object3D(1324, -27, 610, 0, 30));
_local1.push(new Object3D(672, -27, 620, 0, 30));
_local1.push(new Object3D(273, -27, 630, 0, 30));
_local1.push(new Object3D(-236, -27, 640, 0, 30));
_local1.push(new Object3D(-275, -27, 650, 0, 30));
_local1.push(new Object3D(-275, -27, 660, 0, 30));
_local1.push(new Object3D(-275, -27, 670, 0, 30));
_local1.push(new Object3D(-275, -27, 680, 0, 30));
_local1.push(new Object3D(-275, -27, 690, 0, 30));
_local1.push(new Object3D(-275, -27, 700, 0, 30));
_local1.push(new Object3D(-275, -27, 750, Object3D.type_FinishLine, 31));
_local1.push(new Object3D(-309, -365, 80, 1, 30));
_local1.push(new Object3D(-539, -365, 90, 1, 30));
_local1.push(new Object3D(-689, -365, 100, 1, 30));
_local1.push(new Object3D(-769, -365, 110, 1, 30));
_local1.push(new Object3D(-774, -365, 120, 1, 30));
_local1.push(new Object3D(-933, -365, 130, 1, 30));
_local1.push(new Object3D(-1302, -365, 140, 1, 30));
_local1.push(new Object3D(-1764, -365, 150, 1, 30));
_local1.push(new Object3D(-2231, -365, 160, 1, 30));
_local1.push(new Object3D(-2569, -365, 170, 1, 30));
_local1.push(new Object3D(-2708, -365, 180, 1, 30));
_local1.push(new Object3D(-2757, -365, 190, 1, 30));
_local1.push(new Object3D(-2694, -407, 200, 1, 30));
_local1.push(new Object3D(-2549, -766, 210, 1, 30));
_local1.push(new Object3D(-2544, -1003, 220, 1, 30));
_local1.push(new Object3D(-2427, -1062, 230, 1, 30));
_local1.push(new Object3D(-2427, -932, 240, 1, 30));
_local1.push(new Object3D(-2427, -624, 250, 1, 30));
_local1.push(new Object3D(-2427, -248, 260, 1, 30));
_local1.push(new Object3D(1853, 552, 340, 3, 30));
_local1.push(new Object3D(1853, 552, 350, 3, 30));
_local1.push(new Object3D(1853, 552, 360, 3, 30));
_local1.push(new Object3D(1853, -312, 390, 3, 30));
_local1.push(new Object3D(1853, -312, 400, 3, 30));
_local1.push(new Object3D(1853, -312, 410, 3, 30));
_local1.push(new Object3D(1853, -1015, 440, 3, 30));
_local1.push(new Object3D(1853, -1015, 450, 3, 30));
_local1.push(new Object3D(1853, -1015, 460, 3, 30));
_local1.push(new Object3D(1853, -1165, 470, 3, 30));
_local1.push(new Object3D(1853, -671, 480, 3, 30));
_local1.push(new Object3D(1853, -309, 490, 3, 30));
_local1.push(new Object3D(1853, 292, 500, 3, 30));
_local1.push(new Object3D(1853, 686, 510, 3, 30));
_local1.push(new Object3D(1853, 903, 520, 3, 30));
_local1.push(new Object3D(1853, 1072, 530, 3, 30));
_local1.push(new Object3D(970, 477, 560, 2, 30));
_local1.push(new Object3D(601, 477, 570, 2, 30));
_local1.push(new Object3D(165, 318, 580, 2, 30));
_local1.push(new Object3D(-134, 131, 590, 2, 30));
_local1.push(new Object3D(-355, -70, 600, 2, 30));
_local1.push(new Object3D(-742, -328, 610, 2, 30));
_local1.push(new Object3D(-1206, -792, 620, 2, 30));
_local1.push(new Object3D(-1326, -870, 630, 2, 30));
_local1.push(new Object3D(-1349, -907, 640, 2, 30));
_local1.push(new Object3D(-1115, -633, 650, 2, 30));
_local1.push(new Object3D(-1073, -477, 660, 2, 30));
return (_local1);
}
static function InitLevelObjs2():Array{
var _local1:Array;
_local1 = new Array();
_local1.push(new Object3D(0, 0, 20, 0, 30));
_local1.push(new Object3D(17, 0, 30, 0, 30));
_local1.push(new Object3D(29, 0, 40, 0, 30));
_local1.push(new Object3D(174, 0, 50, 0, 30));
_local1.push(new Object3D(249, 0, 60, 0, 30));
_local1.push(new Object3D(315, 0, 70, 0, 30));
_local1.push(new Object3D(425, 0, 80, 0, 30));
_local1.push(new Object3D(666, -27, 90, 0, 30));
_local1.push(new Object3D(702, -27, 100, 0, 30));
_local1.push(new Object3D(702, -27, 110, 0, 30));
_local1.push(new Object3D(702, -27, 120, 0, 30));
_local1.push(new Object3D(702, -74, 130, 0, 30));
_local1.push(new Object3D(702, -150, 140, 0, 30));
_local1.push(new Object3D(702, -228, 150, 0, 30));
_local1.push(new Object3D(702, -300, 160, 0, 30));
_local1.push(new Object3D(702, -354, 170, 0, 30));
_local1.push(new Object3D(702, -354, 180, 0, 30));
_local1.push(new Object3D(633, -354, 190, 0, 30));
_local1.push(new Object3D(540, -354, 200, 0, 30));
_local1.push(new Object3D(396, -354, 210, 0, 30));
_local1.push(new Object3D(210, -354, 220, 0, 30));
_local1.push(new Object3D(-111, -354, 230, 0, 30));
_local1.push(new Object3D(-222, -354, 240, 0, 30));
_local1.push(new Object3D(-318, -354, 250, 0, 30));
_local1.push(new Object3D(-366, -328, 260, 0, 30));
_local1.push(new Object3D(-366, -189, 270, 0, 30));
_local1.push(new Object3D(-366, -10, 280, 0, 30));
_local1.push(new Object3D(-438, 120, 290, 0, 30));
_local1.push(new Object3D(-474, 156, 300, 0, 30));
_local1.push(new Object3D(-491, 173, 310, 0, 30));
_local1.push(new Object3D(-492, 177, 320, 0, 30));
_local1.push(new Object3D(-492, 177, 330, 0, 30));
_local1.push(new Object3D(-495, 168, 340, 0, 30));
_local1.push(new Object3D(-495, 138, 350, 0, 30));
_local1.push(new Object3D(-483, 111, 360, 0, 30));
_local1.push(new Object3D(-471, 24, 370, 0, 30));
_local1.push(new Object3D(-393, 9, 380, 0, 30));
_local1.push(new Object3D(-318, -39, 390, 0, 30));
_local1.push(new Object3D(-318, -54, 400, 0, 30));
_local1.push(new Object3D(-318, -81, 410, 0, 30));
_local1.push(new Object3D(-318, -105, 420, 0, 30));
_local1.push(new Object3D(-291, -132, 430, 0, 30));
_local1.push(new Object3D(-291, -144, 440, 0, 30));
_local1.push(new Object3D(-309, -198, 450, 0, 30));
_local1.push(new Object3D(-298, -249, 460, 0, 30));
_local1.push(new Object3D(-120, -297, 470, 0, 30));
_local1.push(new Object3D(285, -249, 480, 0, 30));
_local1.push(new Object3D(666, -189, 490, 0, 30));
_local1.push(new Object3D(762, -99, 500, 0, 30));
_local1.push(new Object3D(762, 102, 510, 0, 30));
_local1.push(new Object3D(762, 309, 520, 0, 30));
_local1.push(new Object3D(762, 473, 530, 0, 30));
_local1.push(new Object3D(762, 686, 540, 0, 30));
_local1.push(new Object3D(603, 747, 550, 0, 30));
_local1.push(new Object3D(358, 747, 560, 0, 30));
_local1.push(new Object3D(-66, 708, 570, 0, 30));
_local1.push(new Object3D(-251, 579, 580, 0, 30));
_local1.push(new Object3D(-285, 400, 590, 0, 30));
_local1.push(new Object3D(-315, 264, 600, 0, 30));
_local1.push(new Object3D(-315, 156, 610, 0, 30));
_local1.push(new Object3D(-342, 37, 620, 0, 30));
_local1.push(new Object3D(-342, -159, 630, 0, 30));
_local1.push(new Object3D(-315, -303, 640, 0, 30));
_local1.push(new Object3D(-885, 0, 50, 1, 30));
_local1.push(new Object3D(-885, 0, 60, 1, 30));
_local1.push(new Object3D(-885, 0, 70, 1, 30));
_local1.push(new Object3D(-885, 0, 80, 1, 30));
_local1.push(new Object3D(-885, -174, 90, 1, 30));
_local1.push(new Object3D(-858, -419, 100, 1, 30));
_local1.push(new Object3D(-858, -677, 110, 1, 30));
_local1.push(new Object3D(-858, -807, 120, 1, 30));
_local1.push(new Object3D(-858, -1013, 130, 1, 30));
_local1.push(new Object3D(-858, -1236, 140, 1, 30));
_local1.push(new Object3D(-858, -1236, 150, 1, 30));
_local1.push(new Object3D(-858, -1236, 160, 1, 30));
_local1.push(new Object3D(-89, 540, 220, 1, 30));
_local1.push(new Object3D(-89, 540, 230, 1, 30));
_local1.push(new Object3D(202, 492, 240, 1, 30));
_local1.push(new Object3D(397, 442, 250, 1, 30));
_local1.push(new Object3D(568, 348, 260, 1, 30));
_local1.push(new Object3D(643, 252, 270, 1, 30));
_local1.push(new Object3D(691, 150, 280, 1, 30));
_local1.push(new Object3D(691, -12, 290, 1, 30));
_local1.push(new Object3D(691, -63, 300, 1, 30));
_local1.push(new Object3D(691, -165, 310, 1, 30));
_local1.push(new Object3D(691, -326, 320, 1, 30));
_local1.push(new Object3D(691, -363, 330, 1, 30));
_local1.push(new Object3D(691, -497, 340, 1, 30));
_local1.push(new Object3D(693, -555, 350, 1, 30));
_local1.push(new Object3D(904, -650, 360, 1, 30));
_local1.push(new Object3D(982, -776, 370, 1, 30));
_local1.push(new Object3D(982, -1125, 380, 1, 30));
_local1.push(new Object3D(-1154, -1041, 450, 1, 30));
_local1.push(new Object3D(-1122, -1200, 460, 1, 30));
_local1.push(new Object3D(-942, -1415, 470, 1, 30));
_local1.push(new Object3D(-914, -1383, 480, 1, 30));
_local1.push(new Object3D(-952, -717, 490, 1, 30));
_local1.push(new Object3D(-989, -109, 500, 1, 30));
_local1.push(new Object3D(-989, 143, 510, 1, 30));
_local1.push(new Object3D(1523, 621, 580, 1, 30));
_local1.push(new Object3D(1428, 265, 590, 1, 30));
_local1.push(new Object3D(1143, -11, 600, 1, 30));
_local1.push(new Object3D(896, -195, 610, 1, 30));
_local1.push(new Object3D(749, -306, 620, 1, 30));
_local1.push(new Object3D(582, -405, 630, 1, 30));
_local1.push(new Object3D(-315, -303, 650, Object3D.type_FinishLine, 50));
return (_local1);
}
static function InitLevelObjsTemplate():Array{
var _local1:Array;
_local1 = new Array();
_local1.push(new Object3D(0, 0, 1030, Object3D.type_FinishLine, 50));
return (_local1);
}
public static function IsLevelLocked(_arg1:int):Boolean{
if (_arg1 == 7){
if (Licensors.GetLicensor() == Licensors.LICENSOR_KONGREGATE){
if (Licensors.IsHosted() == false){
return (true);
};
};
};
return (levelsLocked[_arg1]);
}
static function InitLevelObjs6():Array{
var _local1:Array;
_local1 = new Array();
_local1.push(new Object3D(0, 0, 40, 1, 30));
_local1.push(new Object3D(0, 0, 50, 1, 30));
_local1.push(new Object3D(0, 0, 60, 1, 30));
_local1.push(new Object3D(-166, 199, 70, 1, 30));
_local1.push(new Object3D(-192, 299, 80, 1, 30));
_local1.push(new Object3D(-349, 456, 90, 1, 30));
_local1.push(new Object3D(-542, 649, 100, 1, 30));
_local1.push(new Object3D(-655, 762, 110, 1, 30));
_local1.push(new Object3D(-674, 837, 120, 1, 30));
_local1.push(new Object3D(-842, 1005, 130, 2, 30));
_local1.push(new Object3D(-1010, 1173, 140, 2, 30));
_local1.push(new Object3D(-1127, 1215, 150, 2, 30));
_local1.push(new Object3D(-1244, 1098, 160, 2, 30));
_local1.push(new Object3D(-1361, 1056, 170, 2, 30));
_local1.push(new Object3D(-1436, 981, 180, 2, 30));
_local1.push(new Object3D(-1671, 746, 190, 2, 30));
_local1.push(new Object3D(-1805, 612, 200, 3, 30));
_local1.push(new Object3D(-1922, 383, 210, 3, 30));
_local1.push(new Object3D(-2078, 114, 220, 3, 30));
_local1.push(new Object3D(-1946, -123, 230, 3, 30));
_local1.push(new Object3D(-2159, -381, 240, 3, 30));
_local1.push(new Object3D(-2347, -646, 250, 3, 30));
_local1.push(new Object3D(-2356, -884, 260, 3, 30));
_local1.push(new Object3D(-2337, -912, 270, 2, 30));
_local1.push(new Object3D(-2196, -1053, 280, 2, 30));
_local1.push(new Object3D(-1760, -1356, 290, 2, 30));
_local1.push(new Object3D(-1327, -1564, 300, 2, 30));
_local1.push(new Object3D(-1037, -1743, 310, 2, 30));
_local1.push(new Object3D(-962, -1830, 320, 2, 30));
_local1.push(new Object3D(-1053, -2284, 330, 2, 30));
_local1.push(new Object3D(-1196, -2609, 340, 2, 30));
_local1.push(new Object3D(-1313, -2614, 350, 2, 30));
_local1.push(new Object3D(-1478, -2779, 360, 1, 30));
_local1.push(new Object3D(-1598, -2895, 370, 1, 30));
_local1.push(new Object3D(-1727, -2782, 380, 1, 30));
_local1.push(new Object3D(-2139, -2806, 390, 1, 30));
_local1.push(new Object3D(-2632, -2939, 400, 1, 30));
_local1.push(new Object3D(-2695, -3089, 410, 1, 30));
_local1.push(new Object3D(-2695, -3106, 420, 1, 30));
_local1.push(new Object3D(-2695, -2790, 430, 1, 30));
_local1.push(new Object3D(-2695, -2400, 440, 1, 30));
_local1.push(new Object3D(-2695, -2111, 450, 2, 30));
_local1.push(new Object3D(-2695, -1496, 460, 2, 30));
_local1.push(new Object3D(-2700, -1143, 470, 2, 30));
_local1.push(new Object3D(-2868, -914, 480, 2, 30));
_local1.push(new Object3D(-2868, -375, 490, 2, 30));
_local1.push(new Object3D(-2826, 405, 500, 2, 30));
_local1.push(new Object3D(-2658, 651, 510, 2, 30));
_local1.push(new Object3D(-2508, 843, 520, 3, 30));
_local1.push(new Object3D(-2361, 974, 530, 3, 30));
_local1.push(new Object3D(-2040, 1194, 540, 3, 30));
_local1.push(new Object3D(-1785, 1364, 550, 3, 30));
_local1.push(new Object3D(-1703, 1466, 560, 3, 30));
_local1.push(new Object3D(-1509, 1523, 570, 3, 30));
_local1.push(new Object3D(-1253, 1631, 580, 3, 30));
_local1.push(new Object3D(-1063, 1703, 590, 3, 30));
_local1.push(new Object3D(-765, 1523, 600, 3, 30));
_local1.push(new Object3D(-720, 1366, 610, 3, 30));
_local1.push(new Object3D(-795, 1124, 620, 3, 30));
_local1.push(new Object3D(-861, 1022, 630, 2, 30));
_local1.push(new Object3D(-987, 929, 640, 2, 30));
_local1.push(new Object3D(-1108, 808, 650, 2, 30));
_local1.push(new Object3D(-1218, 698, 660, 2, 30));
_local1.push(new Object3D(-1221, 620, 670, 2, 30));
_local1.push(new Object3D(-1155, 479, 680, 2, 30));
_local1.push(new Object3D(-1029, 318, 690, 2, 30));
_local1.push(new Object3D(-910, 288, 700, 2, 30));
_local1.push(new Object3D(-783, 209, 710, 2, 30));
_local1.push(new Object3D(-645, 194, 720, 2, 30));
_local1.push(new Object3D(-504, 79, 730, 1, 30));
_local1.push(new Object3D(-566, 68, 740, 1, 30));
_local1.push(new Object3D(-453, 86, 750, 1, 30));
_local1.push(new Object3D(-982, 210, 80, 2, 30));
_local1.push(new Object3D(-982, 123, 90, 2, 30));
_local1.push(new Object3D(-907, 18, 100, 2, 30));
_local1.push(new Object3D(-790, -57, 110, 2, 30));
_local1.push(new Object3D(-708, 25, 120, 2, 30));
_local1.push(new Object3D(-506, 102, 130, 2, 30));
_local1.push(new Object3D(-333, 223, 140, 2, 30));
_local1.push(new Object3D(-185, 455, 150, 2, 30));
_local1.push(new Object3D(-136, 560, 160, 2, 30));
_local1.push(new Object3D(-136, 584, 170, 3, 30));
_local1.push(new Object3D(-136, 659, 180, 3, 30));
_local1.push(new Object3D(-136, 719, 190, 3, 30));
_local1.push(new Object3D(-210, 793, 200, 3, 30));
_local1.push(new Object3D(-428, 1011, 210, 3, 30));
_local1.push(new Object3D(-557, 1140, 220, 3, 30));
_local1.push(new Object3D(-810, 1393, 230, 3, 30));
_local1.push(new Object3D(-1020, 1294, 240, 3, 30));
_local1.push(new Object3D(-1368, 1294, 250, 3, 30));
_local1.push(new Object3D(-1648, 1294, 260, 2, 30));
_local1.push(new Object3D(-2171, 1294, 270, 2, 30));
_local1.push(new Object3D(-2346, 1282, 280, 2, 30));
_local1.push(new Object3D(-2575, 821, 290, 2, 30));
_local1.push(new Object3D(-3044, 216, 300, 2, 30));
_local1.push(new Object3D(-3183, 38, 310, 2, 30));
_local1.push(new Object3D(-3448, -178, 320, 2, 30));
_local1.push(new Object3D(-3655, -385, 330, 2, 30));
_local1.push(new Object3D(-3794, -568, 340, 2, 30));
_local1.push(new Object3D(-3832, -1040, 350, 2, 30));
_local1.push(new Object3D(-3949, -1551, 360, 2, 30));
_local1.push(new Object3D(-4026, -1857, 370, 2, 30));
_local1.push(new Object3D(-4090, -1944, 380, 1, 30));
_local1.push(new Object3D(-4183, -2196, 390, 1, 30));
_local1.push(new Object3D(-4183, -2439, 400, 1, 30));
_local1.push(new Object3D(-4183, -2703, 410, 1, 30));
_local1.push(new Object3D(-4183, -3048, 420, 1, 30));
_local1.push(new Object3D(-4159, -3157, 430, 1, 30));
_local1.push(new Object3D(-3976, -3331, 440, 1, 30));
_local1.push(new Object3D(-3808, -3319, 450, 1, 30));
_local1.push(new Object3D(-3385, -3055, 460, 1, 30));
_local1.push(new Object3D(-3007, -2797, 470, 1, 30));
_local1.push(new Object3D(-2653, -2506, 480, 1, 30));
_local1.push(new Object3D(-2113, -2217, 490, 1, 30));
_local1.push(new Object3D(-1408, -1840, 500, 1, 30));
_local1.push(new Object3D(-629, -1487, 510, 2, 30));
_local1.push(new Object3D(-224, -1176, 520, 2, 30));
_local1.push(new Object3D(30, -372, 530, 2, 30));
_local1.push(new Object3D(216, 114, 540, 2, 30));
_local1.push(new Object3D(516, 604, 550, 2, 30));
_local1.push(new Object3D(551, 853, 560, 2, 30));
_local1.push(new Object3D(668, 1141, 570, 2, 30));
_local1.push(new Object3D(668, 1475, 580, 2, 30));
_local1.push(new Object3D(615, 1988, 590, 2, 30));
_local1.push(new Object3D(551, 2249, 600, 2, 30));
_local1.push(new Object3D(779, 2501, 610, 2, 30));
_local1.push(new Object3D(892, 2604, 620, 3, 30));
_local1.push(new Object3D(1060, 2487, 630, 3, 30));
_local1.push(new Object3D(1219, 2328, 640, 3, 30));
_local1.push(new Object3D(1455, 1995, 650, 3, 30));
_local1.push(new Object3D(1584, 1815, 660, 3, 30));
_local1.push(new Object3D(1854, 1331, 670, 3, 30));
_local1.push(new Object3D(1857, 962, 680, 3, 30));
_local1.push(new Object3D(1815, 659, 690, 3, 30));
_local1.push(new Object3D(1755, 86, 700, 3, 30));
_local1.push(new Object3D(1728, -295, 710, 3, 30));
_local1.push(new Object3D(1563, -500, 720, 3, 30));
_local1.push(new Object3D(1427, -608, 730, 2, 30));
_local1.push(new Object3D(1233, -380, 740, 2, 30));
_local1.push(new Object3D(1071, -218, 750, 2, 30));
_local1.push(new Object3D(984, -89, 760, 2, 30));
_local1.push(new Object3D(684, 274, 770, 2, 30));
_local1.push(new Object3D(135, 963, 780, 2, 30));
_local1.push(new Object3D(-312, 1313, 790, 2, 30));
_local1.push(new Object3D(-548, 1208, 800, 1, 30));
_local1.push(new Object3D(-793, 963, 810, 1, 30));
_local1.push(new Object3D(-992, 764, 820, 1, 30));
_local1.push(new Object3D(-1043, 676, 830, 1, 30));
_local1.push(new Object3D(-1043, 458, 840, 1, 30));
_local1.push(new Object3D(-1003, 236, 850, 1, 30));
_local1.push(new Object3D(-585, 236, 860, 2, 30));
_local1.push(new Object3D(-492, 236, 870, 2, 30));
_local1.push(new Object3D(-439, 119, 880, 2, 30));
_local1.push(new Object3D(995, -299, 70, 3, 30));
_local1.push(new Object3D(999, -299, 80, 3, 30));
_local1.push(new Object3D(1112, -133, 90, 3, 30));
_local1.push(new Object3D(1112, 357, 100, 3, 30));
_local1.push(new Object3D(1035, 935, 110, 3, 30));
_local1.push(new Object3D(827, 1468, 120, 3, 30));
_local1.push(new Object3D(599, 1998, 130, 3, 30));
_local1.push(new Object3D(213, 2483, 140, 3, 30));
_local1.push(new Object3D(-107, 2681, 150, 3, 30));
_local1.push(new Object3D(-592, 2756, 160, 3, 30));
_local1.push(new Object3D(-1179, 2756, 170, 3, 30));
_local1.push(new Object3D(-1623, 2756, 180, 2, 30));
_local1.push(new Object3D(-2232, 2639, 190, 2, 30));
_local1.push(new Object3D(-2643, 2552, 200, 2, 30));
_local1.push(new Object3D(-2837, 2372, 210, 2, 30));
_local1.push(new Object3D(-3059, 2285, 220, 2, 30));
_local1.push(new Object3D(-3330, 2117, 230, 2, 30));
_local1.push(new Object3D(-3511, 1894, 240, 2, 30));
_local1.push(new Object3D(-4030, 1622, 250, 2, 30));
_local1.push(new Object3D(-4039, 1336, 260, 2, 30));
_local1.push(new Object3D(-4198, 864, 270, 1, 30));
_local1.push(new Object3D(-4207, 52, 280, 1, 30));
_local1.push(new Object3D(-4375, -124, 290, 1, 30));
_local1.push(new Object3D(-4333, -819, 300, 1, 30));
_local1.push(new Object3D(-4333, -1224, 310, 1, 30));
_local1.push(new Object3D(-4116, -1626, 320, 1, 30));
_local1.push(new Object3D(-3664, -1924, 330, 1, 30));
_local1.push(new Object3D(-2851, -1778, 340, 1, 30));
_local1.push(new Object3D(-2641, -1338, 350, 1, 30));
_local1.push(new Object3D(-2482, -1073, 360, 1, 30));
_local1.push(new Object3D(-2286, -913, 370, 1, 30));
_local1.push(new Object3D(-2141, -690, 380, 1, 30));
_local1.push(new Object3D(-1829, -466, 390, 1, 30));
_local1.push(new Object3D(-1721, -188, 400, 2, 30));
_local1.push(new Object3D(-1721, -20, 410, 2, 30));
_local1.push(new Object3D(-1721, 109, 420, 2, 30));
_local1.push(new Object3D(-1721, 430, 430, 2, 30));
_local1.push(new Object3D(-1679, 627, 440, 2, 30));
_local1.push(new Object3D(-1604, 783, 450, 2, 30));
_local1.push(new Object3D(-1604, 964, 460, 2, 30));
_local1.push(new Object3D(-1604, 964, 460, 3, 30));
_local1.push(new Object3D(-1585, 959, 470, 3, 30));
_local1.push(new Object3D(-1543, 896, 480, 3, 30));
_local1.push(new Object3D(-1468, 835, 490, 3, 30));
_local1.push(new Object3D(-1449, 658, 500, 3, 30));
_local1.push(new Object3D(-1444, 547, 510, 3, 30));
_local1.push(new Object3D(-1554, 332, 520, 3, 30));
_local1.push(new Object3D(-1636, 250, 530, 3, 30));
_local1.push(new Object3D(-1786, 100, 540, 3, 30));
_local1.push(new Object3D(-1940, 41, 550, 3, 30));
_local1.push(new Object3D(-2146, 1, 570, 2, 30));
_local1.push(new Object3D(-2146, 1, 570, 3, 30));
_local1.push(new Object3D(-2381, 71, 580, 2, 30));
_local1.push(new Object3D(-2403, 211, 590, 2, 30));
_local1.push(new Object3D(-2403, 413, 600, 2, 30));
_local1.push(new Object3D(-2445, 737, 610, 2, 30));
_local1.push(new Object3D(-2445, 1149, 620, 2, 30));
_local1.push(new Object3D(-2445, 1353, 630, 2, 30));
_local1.push(new Object3D(-2445, 1806, 640, 2, 30));
_local1.push(new Object3D(-2445, 2102, 650, 2, 30));
_local1.push(new Object3D(-2445, 2176, 660, 1, 30));
_local1.push(new Object3D(-2253, 2620, 670, 1, 30));
_local1.push(new Object3D(-1993, 2847, 680, 1, 30));
_local1.push(new Object3D(-1859, 2854, 690, 1, 30));
_local1.push(new Object3D(-1819, 2689, 700, 1, 30));
_local1.push(new Object3D(-1819, 2438, 710, 1, 30));
_local1.push(new Object3D(-1728, 2118, 720, 1, 30));
_local1.push(new Object3D(-1702, 1992, 730, 1, 30));
_local1.push(new Object3D(-1585, 1687, 740, 1, 30));
_local1.push(new Object3D(-1585, 1238, 750, 2, 30));
_local1.push(new Object3D(-1543, 811, 760, 2, 30));
_local1.push(new Object3D(-1308, 613, 770, 2, 30));
_local1.push(new Object3D(-1178, 460, 780, 2, 30));
_local1.push(new Object3D(-840, 150, 790, 2, 30));
_local1.push(new Object3D(-693, 143, 800, 2, 30));
_local1.push(new Object3D(-360, 15, 810, 2, 30));
_local1.push(new Object3D(-105, -26, 820, 2, 30));
_local1.push(new Object3D(210, -128, 830, 2, 30));
_local1.push(new Object3D(238, -167, 840, 2, 30));
_local1.push(new Object3D(-453, 86, 900, Object3D.type_FinishLine, 50));
return (_local1);
}
static function InitLevelObjs7():Array{
var _local1:Array;
_local1 = new Array();
_local1.push(new Object3D(0, 0, 20, 1, 30));
_local1.push(new Object3D(0, 79, 30, 1, 30));
_local1.push(new Object3D(0, 404, 40, 1, 30));
_local1.push(new Object3D(0, 546, 50, 1, 30));
_local1.push(new Object3D(0, 659, 60, 1, 30));
_local1.push(new Object3D(0, 743, 70, 1, 30));
_local1.push(new Object3D(0, 804, 80, 1, 30));
_local1.push(new Object3D(0, 898, 90, 1, 30));
_local1.push(new Object3D(-108, 1035, 100, 1, 30));
_local1.push(new Object3D(-189, 1115, 110, 1, 30));
_local1.push(new Object3D(-313, 1213, 120, 1, 30));
_local1.push(new Object3D(-417, 1294, 130, 1, 30));
_local1.push(new Object3D(-527, 1296, 140, 1, 30));
_local1.push(new Object3D(-682, 1300, 150, 1, 30));
_local1.push(new Object3D(-836, 1446, 160, 1, 30));
_local1.push(new Object3D(-920, 1507, 170, 1, 30));
_local1.push(new Object3D(-981, 1582, 180, 1, 30));
_local1.push(new Object3D(-981, 1714, 190, 1, 30));
_local1.push(new Object3D(-977, 1862, 200, 1, 30));
_local1.push(new Object3D(-864, 1981, 210, 1, 30));
_local1.push(new Object3D(-742, 2075, 220, 1, 30));
_local1.push(new Object3D(-644, 2075, 230, 1, 30));
_local1.push(new Object3D(-197, 2156, 240, 1, 30));
_local1.push(new Object3D(-26, 2201, 250, 1, 30));
_local1.push(new Object3D(286, 2206, 260, 1, 30));
_local1.push(new Object3D(482, 2202, 270, 1, 30));
_local1.push(new Object3D(556, 2121, 280, 1, 30));
_local1.push(new Object3D(654, 2103, 290, 1, 30));
_local1.push(new Object3D(1290, 2219, 300, 1, 30));
_local1.push(new Object3D(1445, 2337, 310, 1, 30));
_local1.push(new Object3D(1445, 2518, 320, 1, 30));
_local1.push(new Object3D(1578, 2710, 330, 1, 30));
_local1.push(new Object3D(1713, 2889, 340, 1, 30));
_local1.push(new Object3D(1735, 3030, 350, 1, 30));
_local1.push(new Object3D(1834, 3054, 360, 1, 30));
_local1.push(new Object3D(1936, 3054, 370, 1, 30));
_local1.push(new Object3D(2184, 3054, 380, 1, 30));
_local1.push(new Object3D(2312, 3117, 390, 1, 30));
_local1.push(new Object3D(2343, 3148, 400, 1, 30));
_local1.push(new Object3D(2425, 3148, 410, 1, 30));
_local1.push(new Object3D(2624, 3172, 420, 1, 30));
_local1.push(new Object3D(2708, 3256, 430, 1, 30));
_local1.push(new Object3D(2771, 3353, 440, 1, 30));
_local1.push(new Object3D(2909, 3410, 450, 1, 30));
_local1.push(new Object3D(2928, 3429, 460, 1, 30));
_local1.push(new Object3D(3068, 3429, 470, 1, 30));
_local1.push(new Object3D(3260, 3429, 480, 1, 30));
_local1.push(new Object3D(3360, 3429, 490, 1, 30));
_local1.push(new Object3D(3547, 3472, 500, 1, 30));
_local1.push(new Object3D(3652, 3577, 510, 1, 30));
_local1.push(new Object3D(3827, 3706, 520, 1, 30));
_local1.push(new Object3D(3827, 3869, 530, 1, 30));
_local1.push(new Object3D(3827, 3997, 540, 1, 30));
_local1.push(new Object3D(3785, 4024, 550, 1, 30));
_local1.push(new Object3D(3785, 4136, 560, 1, 30));
_local1.push(new Object3D(3979, 4141, 570, 1, 30));
_local1.push(new Object3D(4121, 4180, 580, 1, 30));
_local1.push(new Object3D(4201, 4188, 590, 1, 30));
_local1.push(new Object3D(4351, 4188, 600, 1, 30));
_local1.push(new Object3D(4770, 4268, 610, 1, 30));
_local1.push(new Object3D(4922, 4347, 620, 1, 30));
_local1.push(new Object3D(4960, 4362, 630, 1, 30));
_local1.push(new Object3D(5076, 4478, 640, 1, 30));
_local1.push(new Object3D(5161, 4563, 650, 1, 30));
_local1.push(new Object3D(5203, 4658, 660, 1, 30));
_local1.push(new Object3D(5236, 4752, 670, 1, 30));
_local1.push(new Object3D(5221, 4817, 680, 1, 30));
_local1.push(new Object3D(5068, 4943, 690, 1, 30));
_local1.push(new Object3D(4815, 4952, 700, 1, 30));
_local1.push(new Object3D(4145, 5222, 710, 1, 30));
_local1.push(new Object3D(3737, 5325, 720, 1, 30));
_local1.push(new Object3D(3665, 5433, 730, 1, 30));
_local1.push(new Object3D(3665, 5568, 740, 1, 30));
_local1.push(new Object3D(3665, 5858, 750, 1, 30));
_local1.push(new Object3D(3550, 6083, 760, 1, 30));
_local1.push(new Object3D(3392, 6208, 770, 1, 30));
_local1.push(new Object3D(3237, 6363, 780, 1, 30));
_local1.push(new Object3D(3120, 6480, 790, 1, 30));
_local1.push(new Object3D(2968, 6632, 800, 1, 30));
_local1.push(new Object3D(2823, 6789, 810, 1, 30));
_local1.push(new Object3D(2760, 7043, 820, 1, 30));
_local1.push(new Object3D(2661, 7257, 830, 1, 30));
_local1.push(new Object3D(2493, 7377, 840, 1, 30));
_local1.push(new Object3D(2343, 7527, 850, 1, 30));
_local1.push(new Object3D(2231, 7679, 860, 1, 30));
_local1.push(new Object3D(2184, 7856, 870, 1, 30));
_local1.push(new Object3D(2184, 8053, 880, 1, 30));
_local1.push(new Object3D(2151, 8337, 890, 1, 30));
_local1.push(new Object3D(2043, 8639, 900, 1, 30));
_local1.push(new Object3D(2130, 8716, 910, 1, 30));
_local1.push(new Object3D(2286, 8800, 920, 1, 30));
_local1.push(new Object3D(2380, 9006, 930, 1, 30));
_local1.push(new Object3D(2455, 9132, 940, 1, 30));
_local1.push(new Object3D(2607, 9207, 950, 1, 30));
_local1.push(new Object3D(2828, 9207, 960, 1, 30));
_local1.push(new Object3D(3158, 9226, 970, 1, 30));
_local1.push(new Object3D(3366, 9376, 980, 1, 30));
_local1.push(new Object3D(3460, 9667, 990, 1, 30));
_local1.push(new Object3D(3462, 9829, 1000, 1, 30));
_local1.push(new Object3D(3462, 9829, 1030, Object3D.type_FinishLine, 50));
_local1.push(new Object3D(-917, 630, 50, 2, 30));
_local1.push(new Object3D(-1040, 753, 60, 2, 30));
_local1.push(new Object3D(-1127, 840, 70, 2, 30));
_local1.push(new Object3D(-1268, 939, 80, 2, 30));
_local1.push(new Object3D(-1319, 990, 90, 2, 30));
_local1.push(new Object3D(-1361, 971, 100, 2, 30));
_local1.push(new Object3D(-1361, 830, 110, 2, 30));
_local1.push(new Object3D(-1361, 683, 120, 2, 30));
_local1.push(new Object3D(-1361, 545, 130, 2, 30));
_local1.push(new Object3D(-1361, 338, 140, 2, 30));
_local1.push(new Object3D(-1259, 288, 150, 2, 30));
_local1.push(new Object3D(-1100, 334, 160, 2, 30));
_local1.push(new Object3D(-936, 498, 170, 2, 30));
_local1.push(new Object3D(-936, 838, 180, 2, 30));
_local1.push(new Object3D(-936, 887, 190, 2, 30));
_local1.push(new Object3D(-861, 1000, 200, 2, 30));
_local1.push(new Object3D(-745, 1149, 210, 2, 30));
_local1.push(new Object3D(-713, 1279, 220, 2, 30));
_local1.push(new Object3D(1282, 2061, 270, 3, 30));
_local1.push(new Object3D(1704, 2061, 280, 3, 30));
_local1.push(new Object3D(1890, 2320, 290, 3, 30));
_local1.push(new Object3D(2220, 2667, 300, 3, 30));
_local1.push(new Object3D(2799, 3102, 310, 3, 30));
_local1.push(new Object3D(3319, 3464, 320, 3, 30));
_local1.push(new Object3D(3342, 3865, 330, 3, 30));
_local1.push(new Object3D(3342, 4235, 340, 3, 30));
_local1.push(new Object3D(3272, 4833, 350, 3, 30));
_local1.push(new Object3D(3188, 5104, 360, 3, 30));
_local1.push(new Object3D(3042, 5104, 370, 3, 30));
_local1.push(new Object3D(1964, 4996, 410, 2, 30));
_local1.push(new Object3D(1905, 4921, 420, 2, 30));
_local1.push(new Object3D(1749, 4436, 430, 2, 30));
_local1.push(new Object3D(1749, 3989, 440, 2, 30));
_local1.push(new Object3D(1749, 3230, 450, 2, 30));
_local1.push(new Object3D(1749, 2887, 460, 2, 30));
_local1.push(new Object3D(1749, 2859, 470, 2, 30));
_local1.push(new Object3D(1749, 3146, 480, 2, 30));
_local1.push(new Object3D(1749, 3626, 490, 2, 30));
_local1.push(new Object3D(1749, 4012, 500, 3, 30));
_local1.push(new Object3D(1749, 4444, 510, 3, 30));
_local1.push(new Object3D(1749, 4922, 520, 3, 30));
_local1.push(new Object3D(1749, 5180, 530, 3, 30));
_local1.push(new Object3D(4293, 6945, 580, 3, 30));
_local1.push(new Object3D(4494, 6945, 590, 3, 30));
_local1.push(new Object3D(4710, 6926, 600, 3, 30));
_local1.push(new Object3D(5063, 6880, 610, 3, 30));
_local1.push(new Object3D(5672, 6650, 620, 3, 30));
_local1.push(new Object3D(6271, 6489, 630, 3, 30));
_local1.push(new Object3D(6328, 6407, 640, 3, 30));
_local1.push(new Object3D(6403, 6024, 650, 3, 30));
_local1.push(new Object3D(6403, 6022, 660, 3, 30));
_local1.push(new Object3D(6403, 5938, 670, 3, 30));
_local1.push(new Object3D(5357, 5080, 710, 2, 30));
_local1.push(new Object3D(4911, 4928, 720, 2, 30));
_local1.push(new Object3D(4587, 4811, 730, 2, 30));
_local1.push(new Object3D(4512, 4816, 740, 2, 30));
_local1.push(new Object3D(4512, 5058, 750, 2, 30));
_local1.push(new Object3D(4248, 5058, 760, 2, 30));
_local1.push(new Object3D(3830, 5039, 770, 2, 30));
_local1.push(new Object3D(3527, 5205, 780, 2, 30));
_local1.push(new Object3D(3087, 5485, 790, 2, 30));
_local1.push(new Object3D(2699, 5728, 800, 2, 30));
_local1.push(new Object3D(4736, 6235, 830, 3, 30));
_local1.push(new Object3D(4799, 6695, 840, 3, 30));
_local1.push(new Object3D(4799, 7264, 850, 3, 30));
_local1.push(new Object3D(4799, 7662, 860, 3, 30));
_local1.push(new Object3D(4799, 8022, 870, 3, 30));
_local1.push(new Object3D(4795, 8757, 880, 3, 30));
_local1.push(new Object3D(4671, 9084, 890, 3, 30));
_local1.push(new Object3D(4574, 9264, 900, 3, 30));
_local1.push(new Object3D(4490, 9492, 910, 3, 30));
_local1.push(new Object3D(4403, 9577, 920, 3, 30));
_local1.push(new Object3D(4331, 9890, 930, 3, 30));
_local1.push(new Object3D(4214, 9916, 940, 3, 30));
_local1.push(new Object3D(4064, 10033, 960, 3, 30));
_local1.push(new Object3D(4045, 9958, 970, 3, 30));
_local1.push(new Object3D(4064, 9958, 980, 3, 30));
_local1.push(new Object3D(888, 692, 50, 2, 30));
_local1.push(new Object3D(1038, 734, 60, 2, 30));
_local1.push(new Object3D(1056, 1187, 70, 2, 30));
_local1.push(new Object3D(1032, 1829, 80, 2, 30));
_local1.push(new Object3D(813, 2328, 90, 2, 30));
_local1.push(new Object3D(619, 2600, 100, 2, 30));
_local1.push(new Object3D(355, 2813, 110, 2, 30));
_local1.push(new Object3D(133, 2832, 120, 2, 30));
_local1.push(new Object3D(-122, 3018, 130, 2, 30));
_local1.push(new Object3D(-592, 3132, 140, 2, 30));
_local1.push(new Object3D(-786, 3125, 150, 2, 30));
_local1.push(new Object3D(-926, 3008, 160, 2, 30));
_local1.push(new Object3D(-2093, 1640, 210, 3, 30));
_local1.push(new Object3D(-2093, 1628, 220, 3, 30));
_local1.push(new Object3D(-2093, 1556, 230, 3, 30));
_local1.push(new Object3D(-2093, 1580, 240, 3, 30));
_local1.push(new Object3D(-2093, 1890, 250, 3, 30));
_local1.push(new Object3D(-2093, 2638, 260, 3, 30));
_local1.push(new Object3D(-2093, 3488, 270, 3, 30));
_local1.push(new Object3D(-1934, 3924, 280, 3, 30));
_local1.push(new Object3D(-1474, 3641, 290, 3, 30));
_local1.push(new Object3D(-737, 3109, 300, 3, 30));
_local1.push(new Object3D(-290, 2657, 310, 3, 30));
_local1.push(new Object3D(132, 2334, 320, 3, 30));
_local1.push(new Object3D(447, 2145, 330, 3, 30));
_local1.push(new Object3D(794, 1986, 340, 3, 30));
_local1.push(new Object3D(1369, 1837, 350, 3, 30));
_local1.push(new Object3D(1941, 1761, 360, 3, 30));
_local1.push(new Object3D(2545, 1761, 370, 3, 30));
_local1.push(new Object3D(3020, 1773, 380, 3, 30));
_local1.push(new Object3D(3436, 1878, 390, 3, 30));
_local1.push(new Object3D(3978, 2291, 460, 2, 30));
_local1.push(new Object3D(3943, 2247, 470, 2, 30));
_local1.push(new Object3D(3943, 2171, 480, 2, 30));
_local1.push(new Object3D(3820, 2129, 490, 2, 30));
_local1.push(new Object3D(3688, 2141, 500, 2, 30));
_local1.push(new Object3D(3508, 2321, 510, 2, 30));
_local1.push(new Object3D(3342, 2487, 520, 2, 30));
_local1.push(new Object3D(3027, 2802, 530, 2, 30));
_local1.push(new Object3D(2836, 3001, 540, 2, 30));
_local1.push(new Object3D(2723, 3139, 550, 2, 30));
_local1.push(new Object3D(2681, 3391, 560, 2, 30));
_local1.push(new Object3D(2564, 4081, 570, 2, 30));
_local1.push(new Object3D(2449, 4551, 580, 2, 30));
_local1.push(new Object3D(2414, 4605, 590, 2, 30));
_local1.push(new Object3D(2414, 4903, 600, 2, 30));
_local1.push(new Object3D(2414, 5520, 610, 2, 30));
_local1.push(new Object3D(2248, 6127, 620, 2, 30));
_local1.push(new Object3D(1795, 7060, 630, 2, 30));
_local1.push(new Object3D(1275, 8060, 640, 2, 30));
_local1.push(new Object3D(947, 8868, 650, 2, 30));
_local1.push(new Object3D(622, 9491, 660, 2, 30));
_local1.push(new Object3D(934, 9473, 670, 2, 30));
_local1.push(new Object3D(1908, 9759, 680, 2, 30));
_local1.push(new Object3D(2440, 9774, 690, 2, 30));
_local1.push(new Object3D(834, 9638, 740, 3, 30));
_local1.push(new Object3D(489, 9539, 750, 3, 30));
_local1.push(new Object3D(459, 9159, 760, 3, 30));
_local1.push(new Object3D(459, 8600, 770, 3, 30));
_local1.push(new Object3D(459, 8310, 780, 3, 30));
_local1.push(new Object3D(498, 7946, 790, 3, 30));
_local1.push(new Object3D(567, 7634, 800, 3, 30));
_local1.push(new Object3D(684, 7418, 810, 3, 30));
_local1.push(new Object3D(889, 7246, 820, 3, 30));
_local1.push(new Object3D(1222, 6996, 830, 3, 30));
_local1.push(new Object3D(1430, 6880, 840, 3, 30));
_local1.push(new Object3D(1512, 6798, 850, 3, 30));
_local1.push(new Object3D(1630, 6791, 860, 3, 30));
_local1.push(new Object3D(2076, 6800, 870, 3, 30));
_local1.push(new Object3D(2241, 6818, 880, 3, 30));
_local1.push(new Object3D(2241, 6858, 890, 3, 30));
_local1.push(new Object3D(2283, 7087, 900, 3, 30));
_local1.push(new Object3D(2385, 0x1C00, 910, 3, 30));
_local1.push(new Object3D(2493, 7582, 920, 3, 30));
_local1.push(new Object3D(2409, 7874, 930, 3, 30));
_local1.push(new Object3D(2034, 8289, 940, 3, 30));
_local1.push(new Object3D(1774, 8911, 950, 3, 30));
_local1.push(new Object3D(1840, 9502, 960, 3, 30));
return (_local1);
}
static function InitLevelObjs8():Array{
var _local1:Array;
_local1 = new Array();
_local1.push(new Object3D(0, 0, 30, 0, 30));
_local1.push(new Object3D(0, 0, 40, 0, 30));
_local1.push(new Object3D(0, 0, 50, 0, 30));
_local1.push(new Object3D(0, 0, 60, 0, 30));
_local1.push(new Object3D(0, 0, 100, 1, 30));
_local1.push(new Object3D(0, 0, 110, 1, 30));
_local1.push(new Object3D(0, 0, 120, 1, 30));
_local1.push(new Object3D(0, 0, 130, 1, 30));
_local1.push(new Object3D(0, 0, 140, 1, 30));
_local1.push(new Object3D(0, 0, 150, 1, 30));
_local1.push(new Object3D(243, -1057, 180, 1, 30));
_local1.push(new Object3D(243, -1057, 190, 1, 30));
_local1.push(new Object3D(243, -1057, 200, 1, 30));
_local1.push(new Object3D(243, -1057, 210, 1, 30));
_local1.push(new Object3D(243, -1057, 250, 1, 30));
_local1.push(new Object3D(243, -1057, 260, 1, 30));
_local1.push(new Object3D(243, -1057, 270, 1, 30));
_local1.push(new Object3D(-1106, -58, 300, 1, 30));
_local1.push(new Object3D(-1106, -58, 310, 1, 30));
_local1.push(new Object3D(-1106, -58, 320, 1, 30));
_local1.push(new Object3D(-1106, -58, 330, 1, 30));
_local1.push(new Object3D(-1974, -702, 360, 1, 30));
_local1.push(new Object3D(-1974, -702, 370, 1, 30));
_local1.push(new Object3D(-1974, -702, 380, 1, 30));
_local1.push(new Object3D(-1974, -702, 390, 1, 30));
_local1.push(new Object3D(-1974, -702, 400, 1, 30));
_local1.push(new Object3D(1120, -1309, 440, 1, 30));
_local1.push(new Object3D(1120, -1309, 450, 1, 30));
_local1.push(new Object3D(1120, -1309, 460, 1, 30));
_local1.push(new Object3D(1120, -1309, 470, 1, 30));
_local1.push(new Object3D(1120, -1309, 480, 1, 30));
_local1.push(new Object3D(1045, 686, 510, 1, 30));
_local1.push(new Object3D(1045, 686, 520, 1, 30));
_local1.push(new Object3D(1045, 686, 530, 1, 30));
_local1.push(new Object3D(1045, 686, 540, 1, 30));
_local1.push(new Object3D(-316, 803, 570, 1, 30));
_local1.push(new Object3D(-318, 803, 580, 1, 30));
_local1.push(new Object3D(-318, 803, 590, 1, 30));
_local1.push(new Object3D(-318, 803, 600, 1, 30));
_local1.push(new Object3D(-318, 803, 610, 1, 30));
_local1.push(new Object3D(-990, 70, 650, 1, 30));
_local1.push(new Object3D(-990, 70, 660, 1, 30));
_local1.push(new Object3D(-990, 70, 670, 1, 30));
_local1.push(new Object3D(-990, 70, 680, 1, 30));
_local1.push(new Object3D(1576, 70, 720, 1, 30));
_local1.push(new Object3D(1577, 70, 730, 1, 30));
_local1.push(new Object3D(1577, 70, 740, 1, 30));
_local1.push(new Object3D(1577, 70, 750, 1, 30));
_local1.push(new Object3D(1577, 70, 760, 1, 30));
_local1.push(new Object3D(1577, -455, 790, 1, 30));
_local1.push(new Object3D(1577, -455, 800, 1, 30));
_local1.push(new Object3D(1577, -455, 810, 1, 30));
_local1.push(new Object3D(1577, -455, 820, 1, 30));
_local1.push(new Object3D(1577, -455, 830, 1, 30));
_local1.push(new Object3D(508, -801, 860, 1, 30));
_local1.push(new Object3D(508, -801, 870, 1, 30));
_local1.push(new Object3D(508, -801, 880, 1, 30));
_local1.push(new Object3D(508, -801, 890, 1, 30));
_local1.push(new Object3D(508, -801, 900, 1, 30));
_local1.push(new Object3D(-164, 114, 920, 1, 30));
_local1.push(new Object3D(-164, 114, 930, 1, 30));
_local1.push(new Object3D(-164, 114, 940, 1, 30));
_local1.push(new Object3D(-164, 114, 950, 1, 30));
_local1.push(new Object3D(-164, 114, 960, 1, 30));
_local1.push(new Object3D(744, 805, 990, 1, 30));
_local1.push(new Object3D(744, 805, 1000, 1, 30));
_local1.push(new Object3D(744, 805, 1010, 1, 30));
_local1.push(new Object3D(744, 805, 1020, 1, 30));
_local1.push(new Object3D(941, -185, 80, 2, 30));
_local1.push(new Object3D(941, -185, 90, 2, 30));
_local1.push(new Object3D(941, -185, 100, 2, 30));
_local1.push(new Object3D(941, -185, 110, 2, 30));
_local1.push(new Object3D(-1709, -856, 140, 2, 30));
_local1.push(new Object3D(-2069, -856, 150, 2, 30));
_local1.push(new Object3D(-2069, -856, 160, 2, 30));
_local1.push(new Object3D(-2069, -856, 170, 2, 30));
_local1.push(new Object3D(-2069, -856, 180, 2, 30));
_local1.push(new Object3D(155, 50, 210, 2, 30));
_local1.push(new Object3D(155, 50, 220, 2, 30));
_local1.push(new Object3D(155, 50, 230, 2, 30));
_local1.push(new Object3D(155, 50, 240, 2, 30));
_local1.push(new Object3D(155, 50, 250, 2, 30));
_local1.push(new Object3D(1000, -795, 280, 2, 30));
_local1.push(new Object3D(1000, -795, 290, 2, 30));
_local1.push(new Object3D(1000, -795, 300, 2, 30));
_local1.push(new Object3D(1000, -795, 310, 2, 30));
_local1.push(new Object3D(1000, -795, 320, 2, 30));
_local1.push(new Object3D(1000, -795, 330, 2, 30));
_local1.push(new Object3D(-13, -2060, 360, 2, 30));
_local1.push(new Object3D(-13, -2060, 370, 2, 30));
_local1.push(new Object3D(-13, -2060, 380, 2, 30));
_local1.push(new Object3D(-13, -2060, 390, 2, 30));
_local1.push(new Object3D(-13, -2060, 400, 2, 30));
_local1.push(new Object3D(-765, -1061, 440, 2, 30));
_local1.push(new Object3D(-765, -1061, 450, 2, 30));
_local1.push(new Object3D(-765, -1061, 460, 2, 30));
_local1.push(new Object3D(-765, -1061, 470, 2, 30));
_local1.push(new Object3D(1067, -389, 510, 2, 30));
_local1.push(new Object3D(1067, -389, 520, 2, 30));
_local1.push(new Object3D(1067, -389, 530, 2, 30));
_local1.push(new Object3D(1067, -389, 540, 2, 30));
_local1.push(new Object3D(1067, -389, 550, 2, 30));
_local1.push(new Object3D(595, 1555, 590, 2, 30));
_local1.push(new Object3D(595, 1555, 600, 2, 30));
_local1.push(new Object3D(595, 1555, 610, 2, 30));
_local1.push(new Object3D(595, 1555, 620, 2, 30));
_local1.push(new Object3D(595, 1555, 630, 2, 30));
_local1.push(new Object3D(595, 1555, 640, 2, 30));
_local1.push(new Object3D(49, 794, 670, 2, 30));
_local1.push(new Object3D(49, 794, 680, 2, 30));
_local1.push(new Object3D(49, 794, 690, 2, 30));
_local1.push(new Object3D(49, 794, 700, 2, 30));
_local1.push(new Object3D(49, 794, 710, 2, 30));
_local1.push(new Object3D(53, 794, 720, 2, 30));
_local1.push(new Object3D(2469, 1118, 760, 2, 30));
_local1.push(new Object3D(2469, 1118, 770, 2, 30));
_local1.push(new Object3D(2469, 1118, 780, 2, 30));
_local1.push(new Object3D(2469, 1118, 790, 2, 30));
_local1.push(new Object3D(2469, 1118, 800, 2, 30));
_local1.push(new Object3D(1991, -665, 840, 2, 30));
_local1.push(new Object3D(1991, -665, 850, 2, 30));
_local1.push(new Object3D(1991, -665, 860, 2, 30));
_local1.push(new Object3D(1991, -665, 870, 2, 30));
_local1.push(new Object3D(1991, -665, 880, 2, 30));
_local1.push(new Object3D(1991, -665, 890, 2, 30));
_local1.push(new Object3D(-454, -1373, 920, 2, 30));
_local1.push(new Object3D(-454, -1373, 930, 2, 30));
_local1.push(new Object3D(-454, -1373, 940, 2, 30));
_local1.push(new Object3D(-454, -1373, 950, 2, 30));
_local1.push(new Object3D(-454, -1373, 960, 2, 30));
_local1.push(new Object3D(-337, 472, 990, 2, 30));
_local1.push(new Object3D(-337, 475, 1000, 2, 30));
_local1.push(new Object3D(-337, 475, 1010, 2, 30));
_local1.push(new Object3D(-337, 475, 1020, 2, 30));
_local1.push(new Object3D(-337, 475, 1030, 2, 30));
_local1.push(new Object3D(-925, 663, 80, 3, 30));
_local1.push(new Object3D(-925, 663, 90, 3, 30));
_local1.push(new Object3D(-925, 663, 100, 3, 30));
_local1.push(new Object3D(-925, 663, 110, 3, 30));
_local1.push(new Object3D(-925, 663, 120, 3, 30));
_local1.push(new Object3D(424, 831, 150, 3, 30));
_local1.push(new Object3D(424, 831, 160, 3, 30));
_local1.push(new Object3D(424, 831, 170, 3, 30));
_local1.push(new Object3D(424, 831, 180, 3, 30));
_local1.push(new Object3D(1278, 341, 220, 3, 30));
_local1.push(new Object3D(1278, 341, 230, 3, 30));
_local1.push(new Object3D(1278, 341, 240, 3, 30));
_local1.push(new Object3D(1278, 341, 250, 3, 30));
_local1.push(new Object3D(-169, -854, 290, 3, 30));
_local1.push(new Object3D(-169, -854, 300, 3, 30));
_local1.push(new Object3D(-169, -854, 310, 3, 30));
_local1.push(new Object3D(-169, -854, 320, 3, 30));
_local1.push(new Object3D(-169, -854, 330, 3, 30));
_local1.push(new Object3D(-967, -89, 360, 3, 30));
_local1.push(new Object3D(-967, -67, 370, 3, 30));
_local1.push(new Object3D(-967, -67, 380, 3, 30));
_local1.push(new Object3D(-967, -67, 390, 3, 30));
_local1.push(new Object3D(-967, -67, 400, 3, 30));
_local1.push(new Object3D(-927, -67, 410, 3, 30));
_local1.push(new Object3D(1298, -25, 440, 3, 30));
_local1.push(new Object3D(1343, -25, 450, 3, 30));
_local1.push(new Object3D(1343, -25, 460, 3, 30));
_local1.push(new Object3D(1385, -25, 470, 3, 30));
_local1.push(new Object3D(2268, -324, 520, 3, 30));
_local1.push(new Object3D(2268, -324, 530, 3, 30));
_local1.push(new Object3D(2268, -324, 540, 3, 30));
_local1.push(new Object3D(2268, -324, 550, 3, 30));
_local1.push(new Object3D(578, 202, 590, 3, 30));
_local1.push(new Object3D(578, 202, 600, 3, 30));
_local1.push(new Object3D(578, 202, 610, 3, 30));
_local1.push(new Object3D(578, 202, 620, 3, 30));
_local1.push(new Object3D(381, 1866, 650, 3, 30));
_local1.push(new Object3D(381, 1866, 660, 3, 30));
_local1.push(new Object3D(381, 1866, 670, 3, 30));
_local1.push(new Object3D(381, 1866, 680, 3, 30));
_local1.push(new Object3D(381, 1866, 690, 3, 30));
_local1.push(new Object3D(1394, 1464, 730, 3, 30));
_local1.push(new Object3D(1394, 1445, 740, 3, 30));
_local1.push(new Object3D(1394, 1445, 750, 3, 30));
_local1.push(new Object3D(1394, 1445, 760, 3, 30));
_local1.push(new Object3D(2897, 175, 800, 3, 30));
_local1.push(new Object3D(2897, 175, 810, 3, 30));
_local1.push(new Object3D(2897, 175, 820, 3, 30));
_local1.push(new Object3D(2897, 175, 830, 3, 30));
_local1.push(new Object3D(2897, 175, 840, 3, 30));
_local1.push(new Object3D(2420, -1497, 890, 3, 30));
_local1.push(new Object3D(2420, -1497, 900, 3, 30));
_local1.push(new Object3D(2420, -1497, 910, 3, 30));
_local1.push(new Object3D(2420, -1497, 920, 3, 30));
_local1.push(new Object3D(782, -316, 950, 3, 30));
_local1.push(new Object3D(782, -316, 960, 3, 30));
_local1.push(new Object3D(782, -316, 970, 3, 30));
_local1.push(new Object3D(782, -316, 980, 3, 30));
_local1.push(new Object3D(782, -316, 990, 3, 30));
_local1.push(new Object3D(-514, -1183, 100, 2, 30));
_local1.push(new Object3D(-514, -1183, 110, 2, 30));
_local1.push(new Object3D(-514, -1183, 120, 2, 30));
_local1.push(new Object3D(-514, -1183, 130, 2, 30));
_local1.push(new Object3D(-1387, -1580, 190, 2, 30));
_local1.push(new Object3D(-1387, -1580, 200, 2, 30));
_local1.push(new Object3D(-1387, -1580, 210, 2, 30));
_local1.push(new Object3D(-1387, -1580, 220, 2, 30));
_local1.push(new Object3D(-145, 608, 280, 1, 30));
_local1.push(new Object3D(-145, 608, 290, 1, 30));
_local1.push(new Object3D(-145, 608, 300, 1, 30));
_local1.push(new Object3D(-145, 608, 310, 1, 30));
_local1.push(new Object3D(420, -1262, 370, 1, 30));
_local1.push(new Object3D(420, -1262, 380, 1, 30));
_local1.push(new Object3D(420, -1262, 390, 1, 30));
_local1.push(new Object3D(420, -1262, 400, 1, 30));
_local1.push(new Object3D(-208, -1819, 440, 3, 30));
_local1.push(new Object3D(-208, -1819, 450, 3, 30));
_local1.push(new Object3D(-208, -1819, 460, 3, 30));
_local1.push(new Object3D(-208, -1819, 470, 3, 30));
_local1.push(new Object3D(-208, -1819, 480, 3, 30));
_local1.push(new Object3D(936, -1744, 520, 1, 30));
_local1.push(new Object3D(936, -1744, 530, 1, 30));
_local1.push(new Object3D(936, -1744, 540, 1, 30));
_local1.push(new Object3D(936, -1744, 550, 1, 30));
_local1.push(new Object3D(1884, 2522, 600, 1, 30));
_local1.push(new Object3D(1884, 2524, 610, 1, 30));
_local1.push(new Object3D(1884, 2524, 620, 1, 30));
_local1.push(new Object3D(1884, 2524, 630, 1, 30));
_local1.push(new Object3D(1884, 2524, 640, 1, 30));
_local1.push(new Object3D(-548, 80, 740, 2, 30));
_local1.push(new Object3D(-548, 80, 750, 2, 30));
_local1.push(new Object3D(-548, 80, 760, 2, 30));
_local1.push(new Object3D(-548, 80, 770, 2, 30));
_local1.push(new Object3D(1433, 979, 820, 3, 30));
_local1.push(new Object3D(1433, 979, 830, 3, 30));
_local1.push(new Object3D(1433, 979, 840, 3, 30));
_local1.push(new Object3D(1433, 979, 850, 3, 30));
_local1.push(new Object3D(1316, -1465, 910, 1, 30));
_local1.push(new Object3D(1316, -1465, 920, 1, 30));
_local1.push(new Object3D(1316, -1465, 930, 1, 30));
_local1.push(new Object3D(1316, -1465, 940, 1, 30));
_local1.push(new Object3D(1316, -1465, 950, 1, 30));
_local1.push(new Object3D(744, 805, 1050, Object3D.type_FinishLine, 100));
return (_local1);
}
public static function InitOnce():void{
maxLevels = 8;
ResetData();
Load();
}
public static function GetBestAccuracy(_arg1:int):Number{
var _local2:Number;
_local2 = levelAccuracy[_arg1];
return (_local2);
}
static function InitLevelObjs4():Array{
var _local1:Array;
_local1 = new Array();
_local1.push(new Object3D(0, 0, 40, 1, 30));
_local1.push(new Object3D(0, 0, 50, 1, 30));
_local1.push(new Object3D(0, 0, 60, 1, 30));
_local1.push(new Object3D(84, 0, 70, 1, 30));
_local1.push(new Object3D(593, -102, 80, 1, 30));
_local1.push(new Object3D(1207, -339, 90, 1, 30));
_local1.push(new Object3D(1458, -518, 100, 1, 30));
_local1.push(new Object3D(1613, -754, 110, 1, 30));
_local1.push(new Object3D(1613, -958, 120, 1, 30));
_local1.push(new Object3D(1613, -1096, 130, 1, 30));
_local1.push(new Object3D(1613, -1108, 140, 1, 30));
_local1.push(new Object3D(1613, -1108, 150, 1, 30));
_local1.push(new Object3D(-354, -559, 210, 1, 30));
_local1.push(new Object3D(-394, 69, 220, 1, 30));
_local1.push(new Object3D(-489, 376, 230, 1, 30));
_local1.push(new Object3D(-770, 657, 240, 1, 30));
_local1.push(new Object3D(-1008, 867, 250, 1, 30));
_local1.push(new Object3D(-1216, 1014, 260, 1, 30));
_local1.push(new Object3D(-1401, 1045, 270, 1, 30));
_local1.push(new Object3D(-1531, 928, 280, 1, 30));
_local1.push(new Object3D(-1803, 865, 290, 1, 30));
_local1.push(new Object3D(-2054, 736, 300, 1, 30));
_local1.push(new Object3D(-2184, 615, 310, 1, 30));
_local1.push(new Object3D(-2247, 470, 320, 1, 30));
_local1.push(new Object3D(355, -1261, 370, 1, 30));
_local1.push(new Object3D(367, -1639, 380, 1, 30));
_local1.push(new Object3D(367, -2253, 390, 1, 30));
_local1.push(new Object3D(367, -2577, 400, 1, 30));
_local1.push(new Object3D(367, -2757, 410, 1, 30));
_local1.push(new Object3D(367, -2903, 420, 1, 30));
_local1.push(new Object3D(367, -2925, 430, 1, 30));
_local1.push(new Object3D(628, -3098, 440, 1, 30));
_local1.push(new Object3D(906, -3326, 450, 1, 30));
_local1.push(new Object3D(1175, -3341, 460, 1, 30));
_local1.push(new Object3D(1770, -3266, 470, 1, 30));
_local1.push(new Object3D(2467, -3044, 480, 1, 30));
_local1.push(new Object3D(2767, -2694, 490, 1, 30));
_local1.push(new Object3D(2984, -2144, 500, 1, 30));
_local1.push(new Object3D(3185, -1814, 510, 1, 30));
_local1.push(new Object3D(0x0404, 277, 580, 1, 30));
_local1.push(new Object3D(953, -386, 590, 1, 30));
_local1.push(new Object3D(869, -444, 600, 1, 30));
_local1.push(new Object3D(785, -553, 610, 1, 30));
_local1.push(new Object3D(992, -666, 620, 1, 30));
_local1.push(new Object3D(1138, -690, 630, 1, 30));
_local1.push(new Object3D(1332, -741, 640, 1, 30));
_local1.push(new Object3D(1561, -489, 650, 1, 30));
_local1.push(new Object3D(1561, 96, 660, 1, 30));
_local1.push(new Object3D(1561, 650, 670, 1, 30));
_local1.push(new Object3D(1396, 1140, 680, 1, 30));
_local1.push(new Object3D(952, 1200, 690, 1, 30));
_local1.push(new Object3D(679, 1308, 700, 1, 30));
_local1.push(new Object3D(619, 1467, 710, 1, 30));
_local1.push(new Object3D(619, 1467, 900, Object3D.type_FinishLine, 31));
_local1.push(new Object3D(-1032, -149, 100, 2, 30));
_local1.push(new Object3D(-1032, 37, 110, 2, 30));
_local1.push(new Object3D(-873, 241, 120, 2, 30));
_local1.push(new Object3D(-759, 387, 130, 2, 30));
_local1.push(new Object3D(-537, 596, 140, 2, 30));
_local1.push(new Object3D(-413, 711, 150, 2, 30));
_local1.push(new Object3D(-187, 881, 160, 2, 30));
_local1.push(new Object3D(0, 998, 170, 2, 30));
_local1.push(new Object3D(273, 1139, 180, 2, 30));
_local1.push(new Object3D(534, 1232, 190, 2, 30));
_local1.push(new Object3D(1046, 1190, 200, 2, 30));
_local1.push(new Object3D(1337, 1125, 210, 2, 30));
_local1.push(new Object3D(1532, 930, 220, 2, 30));
_local1.push(new Object3D(1679, 783, 230, 2, 30));
_local1.push(new Object3D(1796, 626, 240, 2, 30));
_local1.push(new Object3D(1796, 222, 250, 2, 30));
_local1.push(new Object3D(1796, -11, 260, 2, 30));
_local1.push(new Object3D(-2824, -445, 330, 2, 30));
_local1.push(new Object3D(-2824, -273, 340, 2, 30));
_local1.push(new Object3D(-2656, -48, 350, 2, 30));
_local1.push(new Object3D(-2119, 27, 360, 2, 30));
_local1.push(new Object3D(-1659, 27, 370, 2, 30));
_local1.push(new Object3D(-1429, 27, 380, 2, 30));
_local1.push(new Object3D(-873, 27, 390, 2, 30));
_local1.push(new Object3D(2, 27, 400, 2, 30));
_local1.push(new Object3D(1007, 27, 410, 2, 30));
_local1.push(new Object3D(2051, 27, 420, 2, 30));
_local1.push(new Object3D(3239, 27, 430, 2, 30));
_local1.push(new Object3D(1110, -3222, 510, 2, 30));
_local1.push(new Object3D(1278, -3433, 520, 2, 30));
_local1.push(new Object3D(1495, -3433, 530, 2, 30));
_local1.push(new Object3D(1720, -3433, 540, 2, 30));
_local1.push(new Object3D(2380, -3356, 550, 2, 30));
_local1.push(new Object3D(3100, -3214, 560, 2, 30));
_local1.push(new Object3D(3572, -3078, 570, 2, 30));
_local1.push(new Object3D(4139, -2599, 580, 2, 30));
_local1.push(new Object3D(4223, -1892, 590, 2, 30));
_local1.push(new Object3D(4223, -1097, 600, 2, 30));
_local1.push(new Object3D(4223, -620, 610, 2, 30));
_local1.push(new Object3D(4148, 218, 620, 2, 30));
_local1.push(new Object3D(4073, 633, 630, 2, 30));
_local1.push(new Object3D(3677, 1129, 640, 2, 30));
_local1.push(new Object3D(3438, 1438, 650, 2, 30));
_local1.push(new Object3D(1081, 442, 700, 2, 30));
_local1.push(new Object3D(1081, 217, 710, 2, 30));
_local1.push(new Object3D(937, -26, 720, 2, 30));
_local1.push(new Object3D(486, -220, 730, 2, 30));
_local1.push(new Object3D(-95, -295, 740, 2, 30));
_local1.push(new Object3D(-806, -295, 750, 2, 30));
_local1.push(new Object3D(-1507, -400, 760, 2, 30));
_local1.push(new Object3D(-2338, -680, 770, 2, 30));
_local1.push(new Object3D(1763, 2171, 820, 2, 30));
_local1.push(new Object3D(2289, 2592, 830, 2, 30));
_local1.push(new Object3D(2917, 2406, 840, 2, 30));
_local1.push(new Object3D(2739, 2047, 850, 2, 30));
_local1.push(new Object3D(2362, 0x0700, 860, 2, 30));
_local1.push(new Object3D(1778, 1954, 870, 2, 30));
_local1.push(new Object3D(-378, -1835, 100, 3, 30));
_local1.push(new Object3D(-495, -1952, 110, 3, 30));
_local1.push(new Object3D(-768, -2069, 120, 3, 30));
_local1.push(new Object3D(-1078, -2144, 130, 3, 30));
_local1.push(new Object3D(-1364, -2144, 140, 3, 30));
_local1.push(new Object3D(-2000, -2144, 150, 3, 30));
_local1.push(new Object3D(-2666, 2189, 210, 3, 30));
_local1.push(new Object3D(-2549, 2670, 220, 3, 30));
_local1.push(new Object3D(-2115, 2934, 230, 3, 30));
_local1.push(new Object3D(-1775, 3044, 240, 3, 30));
_local1.push(new Object3D(-1137, 3119, 250, 3, 30));
_local1.push(new Object3D(-712, 3126, 260, 3, 30));
_local1.push(new Object3D(-59, 2883, 270, 3, 30));
_local1.push(new Object3D(521, 2653, 280, 3, 30));
_local1.push(new Object3D(536, 2146, 290, 3, 30));
_local1.push(new Object3D(496, 1572, 300, 3, 30));
_local1.push(new Object3D(293, 931, 310, 3, 30));
_local1.push(new Object3D(64, 328, 320, 3, 30));
_local1.push(new Object3D(-447, -363, 330, 3, 30));
_local1.push(new Object3D(-1025, -1121, 340, 3, 30));
_local1.push(new Object3D(-1523, -1736, 350, 3, 30));
_local1.push(new Object3D(-1878, -2054, 360, 3, 30));
_local1.push(new Object3D(-2013, -2222, 370, 3, 30));
_local1.push(new Object3D(-2181, -2465, 380, 3, 30));
_local1.push(new Object3D(-1941, -3240, 390, 3, 30));
_local1.push(new Object3D(-1702, -3802, 400, 3, 30));
_local1.push(new Object3D(-1543, -4179, 410, 3, 30));
_local1.push(new Object3D(-984, -4609, 420, 3, 30));
_local1.push(new Object3D(-449, -4810, 430, 3, 30));
_local1.push(new Object3D(258, -5367, 440, 3, 30));
_local1.push(new Object3D(1368, -6082, 450, 3, 30));
_local1.push(new Object3D(2371, -1869, 560, 3, 30));
_local1.push(new Object3D(2404, -1902, 570, 3, 30));
_local1.push(new Object3D(2581, -2135, 580, 3, 30));
_local1.push(new Object3D(2773, -2332, 590, 3, 30));
_local1.push(new Object3D(2926, -2485, 600, 3, 30));
_local1.push(new Object3D(3284, -2738, 610, 3, 30));
_local1.push(new Object3D(3578, -2813, 620, 3, 30));
_local1.push(new Object3D(3786, -2888, 630, 3, 30));
_local1.push(new Object3D(4050, -2888, 640, 3, 30));
_local1.push(new Object3D(4895, -2890, 650, 3, 30));
_local1.push(new Object3D(5354, -2465, 660, 3, 30));
_local1.push(new Object3D(5354, -1420, 670, 3, 30));
_local1.push(new Object3D(5471, -182, 680, 3, 30));
_local1.push(new Object3D(5588, 955, 690, 3, 30));
_local1.push(new Object3D(5513, 2103, 700, 3, 30));
_local1.push(new Object3D(5394, 2737, 710, 3, 30));
_local1.push(new Object3D(385, 3807, 760, 3, 30));
_local1.push(new Object3D(226, 4043, 770, 3, 30));
_local1.push(new Object3D(100, 4169, 780, 3, 30));
_local1.push(new Object3D(21, 4244, 790, 3, 30));
_local1.push(new Object3D(-360, 4160, 800, 3, 30));
_local1.push(new Object3D(-456, 3785, 810, 3, 30));
_local1.push(new Object3D(-573, 3147, 820, 3, 30));
_local1.push(new Object3D(-531, 2526, 830, 3, 30));
_local1.push(new Object3D(-531, 1999, 840, 3, 30));
_local1.push(new Object3D(-432, 1645, 850, 3, 30));
_local1.push(new Object3D(-115, 1415, 860, 3, 30));
_local1.push(new Object3D(117, 177, 90, 0, 30));
_local1.push(new Object3D(117, 177, 100, 0, 30));
_local1.push(new Object3D(77, 20, 110, 0, 30));
_local1.push(new Object3D(0, -252, 120, 0, 30));
_local1.push(new Object3D(-112, -570, 130, 0, 30));
_local1.push(new Object3D(-341, -766, 140, 0, 30));
_local1.push(new Object3D(-560, -1021, 150, 0, 30));
_local1.push(new Object3D(-575, -1273, 160, 0, 30));
_local1.push(new Object3D(-458, -1628, 170, 0, 30));
_local1.push(new Object3D(-250, -1709, 180, 0, 30));
_local1.push(new Object3D(112, -1892, 190, 0, 30));
_local1.push(new Object3D(289, -1939, 200, 0, 30));
_local1.push(new Object3D(497, -1943, 210, 0, 30));
_local1.push(new Object3D(2770, -639, 280, 0, 30));
_local1.push(new Object3D(2782, -639, 290, 0, 30));
_local1.push(new Object3D(2782, -291, 300, 0, 30));
_local1.push(new Object3D(2614, 23, 310, 0, 30));
_local1.push(new Object3D(2361, 488, 320, 0, 30));
_local1.push(new Object3D(2037, 1048, 330, 0, 30));
_local1.push(new Object3D(1818, 1668, 340, 0, 30));
_local1.push(new Object3D(1443, 1725, 350, 0, 30));
_local1.push(new Object3D(1015, 1917, 360, 0, 30));
_local1.push(new Object3D(450, 1935, 370, 0, 30));
_local1.push(new Object3D(-140, 1935, 380, 0, 30));
_local1.push(new Object3D(-397, 1935, 390, 0, 30));
_local1.push(new Object3D(-795, 1615, 400, 0, 30));
_local1.push(new Object3D(-1148, 1321, 410, 0, 30));
_local1.push(new Object3D(-1036, 1048, 420, 0, 30));
_local1.push(new Object3D(1409, -1036, 490, 0, 30));
_local1.push(new Object3D(1769, -1111, 500, 0, 30));
_local1.push(new Object3D(1910, -1276, 510, 0, 30));
_local1.push(new Object3D(2162, -1321, 520, 0, 30));
_local1.push(new Object3D(2548, -1309, 530, 0, 30));
_local1.push(new Object3D(3364, -1030, 540, 0, 30));
_local1.push(new Object3D(4142, -712, 550, 0, 30));
_local1.push(new Object3D(4819, -315, 560, 0, 30));
_local1.push(new Object3D(5297, -245, 570, 0, 30));
_local1.push(new Object3D(3390, 992, 700, 0, 30));
_local1.push(new Object3D(3390, 992, 710, 0, 30));
_local1.push(new Object3D(3390, 992, 720, 0, 30));
_local1.push(new Object3D(3212, 1262, 730, 0, 30));
_local1.push(new Object3D(2891, 1837, 740, 0, 30));
_local1.push(new Object3D(2442, 2591, 750, 0, 30));
_local1.push(new Object3D(2229, 2964, 760, 0, 30));
_local1.push(new Object3D(1965, 3247, 770, 0, 30));
_local1.push(new Object3D(1663, 3549, 780, 0, 30));
_local1.push(new Object3D(1448, 3764, 790, 0, 30));
_local1.push(new Object3D(1181, 3987, 800, 0, 30));
_local1.push(new Object3D(651, 4038, 810, 0, 30));
_local1.push(new Object3D(576, 3909, 820, 0, 30));
_local1.push(new Object3D(483, 3609, 830, 0, 30));
_local1.push(new Object3D(560, 3081, 840, 0, 30));
_local1.push(new Object3D(642, 2654, 850, 0, 30));
_local1.push(new Object3D(642, 2258, 860, 0, 30));
_local1.push(new Object3D(705, 1921, 870, 0, 30));
_local1.push(new Object3D(642, 1620, 880, 0, 30));
return (_local1);
}
public static function Save():void{
var _local1:SharedObject;
_local1 = SharedObject.getLocal(sharedObjectSaveName);
_local1.data.levelTimes = levelTimes;
_local1.data.levelsLocked = levelsLocked;
_local1.data.levelSpeeds = levelSpeeds;
_local1.data.levelAccuracy = levelAccuracy;
}
public static function GetName(_arg1:int):String{
if (_arg1 == 0){
return ("Warp Zone");
};
if (_arg1 == 1){
return ("Conduit");
};
if (_arg1 == 2){
return ("Orbital");
};
if (_arg1 == 3){
return ("Biosphere");
};
if (_arg1 == 4){
return ("Oceania");
};
if (_arg1 == 5){
return ("Stratosphere");
};
if (_arg1 == 6){
return ("Aqua");
};
if (_arg1 == 7){
return ("Subterrestrial");
};
return ("");
}
public static function GetBestTime(_arg1:int):Number{
var _local2:Number;
_local2 = levelTimes[_arg1];
return (_local2);
}
public static function UnlockAll():void{
var _local1:int;
_local1 = 0;
while (_local1 < maxLevels) {
levelsLocked[_local1] = false;
_local1++;
};
}
public static function GetBestSpeed(_arg1:int):Number{
var _local2:Number;
_local2 = levelSpeeds[_arg1];
return (_local2);
}
public static function InitLevelObjs(_arg1:int):Array{
if (_arg1 == 0){
return (InitLevelObjs1());
};
if (_arg1 == 1){
return (InitLevelObjs2());
};
if (_arg1 == 2){
return (InitLevelObjs3());
};
if (_arg1 == 3){
return (InitLevelObjs4());
};
if (_arg1 == 4){
return (InitLevelObjs5());
};
if (_arg1 == 5){
return (InitLevelObjs6());
};
if (_arg1 == 6){
return (InitLevelObjs7());
};
if (_arg1 == 7){
return (InitLevelObjs8());
};
return (null);
}
public static function GetBestTimeInSeconds(_arg1:int):Number{
var _local2:Number;
_local2 = levelTimes[_arg1];
return (_local2);
}
public static function GetFadeG(_arg1:int):Number{
if (_arg1 == 0){
return (0);
};
if (_arg1 == 1){
return (0);
};
if (_arg1 == 2){
return (0);
};
if (_arg1 == 3){
return (0);
};
if (_arg1 == 4){
return (0);
};
if (_arg1 == 5){
return (0);
};
if (_arg1 == 6){
return (0);
};
if (_arg1 == 7){
return (0);
};
return (0);
}
public static function GetQualifyingTime(_arg1:int):Number{
if (_arg1 == 0){
return (0);
};
if (_arg1 == 1){
return (30);
};
if (_arg1 == 2){
return (21);
};
if (_arg1 == 3){
return (17);
};
if (_arg1 == 4){
return (27);
};
if (_arg1 == 5){
return (38);
};
if (_arg1 == 6){
return (20);
};
if (_arg1 == 7){
return (22);
};
return (0);
}
public static function ResetData():void{
var _local1:int;
levelTimes = new Array(maxLevels);
levelSpeeds = new Array(maxLevels);
levelAccuracy = new Array(maxLevels);
levelsLocked = new Array(maxLevels);
_local1 = 0;
while (_local1 < maxLevels) {
levelTimes[_local1] = Number((1000 * Defs.fps));
levelSpeeds[_local1] = Number(0);
levelAccuracy[_local1] = Number(0);
_local1++;
};
_local1 = 0;
while (_local1 < maxLevels) {
levelsLocked[_local1] = Boolean(true);
_local1++;
};
levelsLocked[0] = false;
}
public static function GetQualifyingString(_arg1:int):String{
var _local2:int;
var _local3:String;
if (levelsLocked[_arg1] == false){
return ("Unlocked");
};
_local2 = GetQualifyingLevel(_arg1);
_local3 = (((("Complete " + GetName(_local2)) + " in ") + GetQualifyingTime(_arg1)) + " seconds");
return (_local3);
}
public static function GetFadeB(_arg1:int):Number{
if (_arg1 == 0){
return (0);
};
if (_arg1 == 1){
return (0);
};
if (_arg1 == 2){
return (0);
};
if (_arg1 == 3){
return (0);
};
if (_arg1 == 4){
return (0);
};
if (_arg1 == 5){
return (0);
};
if (_arg1 == 6){
return (0);
};
if (_arg1 == 7){
return (0);
};
return (0);
}
}
}//package
Section 29
//Licensors (Licensors)
package {
public class Licensors {
public static const LICENSOR_NONE = 0;
public static const LICENSOR_KONGREGATE = 1;
public static const LICENSOR_MINDJOLT = 4;
public static const LICENSOR_DOOF = 3;
public static const LICENSOR_MINICLIP = 2;
static var licensor:int = 1;
public static function CanUseMochiAds():Boolean{
if (licensor == LICENSOR_NONE){
return (true);
};
if (licensor == LICENSOR_KONGREGATE){
return (true);
};
if (licensor == LICENSOR_MINICLIP){
return (false);
};
if (licensor == LICENSOR_DOOF){
return (false);
};
if (licensor == LICENSOR_MINDJOLT){
return (true);
};
return (true);
}
public static function SetLicensor(_arg1:int):void{
licensor = _arg1;
}
public static function InitOnce():void{
if (licensor == LICENSOR_MINDJOLT){
};
}
public static function IsHosted():Boolean{
if (licensor == LICENSOR_NONE){
return (false);
};
if (licensor == LICENSOR_KONGREGATE){
if (SiteLock.GetDomain() == "kongregate.com"){
return (true);
};
return (false);
};
if (licensor == LICENSOR_MINICLIP){
if (SiteLock.GetDomain() == "miniclip.com"){
return (true);
};
return (false);
};
if (licensor == LICENSOR_DOOF){
if (SiteLock.GetDomain() == "doof.com"){
return (true);
};
return (false);
};
if (licensor == LICENSOR_MINDJOLT){
return (false);
};
return (false);
}
public static function GetLicensor():int{
return (licensor);
}
}
}//package
Section 30
//LongAnimals_Kongregate (LongAnimals_Kongregate)
package {
import flash.events.*;
import flash.display.*;
import flash.net.*;
import flash.system.*;
public class LongAnimals_Kongregate {
static var kongregate;
static var main:Main;
static var api_url:String;
static var paramObj:Object;
public static function Init(_arg1:Main){
var _local2:URLRequest;
var _local3:Loader;
if (Licensors.IsHosted() == false){
return;
};
Security.allowDomain("*.kongregate.com");
main = _arg1;
paramObj = LoaderInfo(Main.theRoot.loaderInfo).parameters;
trace(Main.theRoot);
trace(paramObj);
api_url = ((paramObj.api_path) || ("http://www.kongregate.com/flash/API_AS3_Local.swf"));
trace(("API path: " + api_url));
_local2 = new URLRequest(api_url);
_local3 = new Loader();
_local3.contentLoaderInfo.addEventListener(Event.COMPLETE, loadComplete);
_local3.load(_local2);
Main.theStage.addChild(_local3);
}
static function loadComplete(_arg1:Event):void{
trace(_arg1);
kongregate = _arg1.target.content;
trace(kongregate);
kongregate.services.connect();
trace(("\n" + kongregate.services));
trace(("\n" + kongregate.user));
trace(("\n" + kongregate.scores));
trace(("\n" + kongregate.stats));
}
}
}//package
Section 31
//Main (Main)
package {
import flash.events.*;
import flash.display.*;
import flash.text.*;
import flash.media.*;
import flash.utils.*;
import flash.geom.*;
import flash.ui.*;
import flash.net.*;
import flash.filters.*;
public class Main extends MovieClip {
var zdecel:Number;// = 0.025
public var keyReader:KeyReader;// = null
public var doAutofire:Boolean;// = false
var adClip:MovieClip;
var levelTimer:Number;
var pointsList:Array;
public var starfieldBD:BitmapData;
var ftime:Number;
var minzvel:Number;// = 20
var overlay:Overlay;// = null
var endLevMC:MovieClip;
var backgroundAnimFrame:Number;// = 0
var currentMusicID:int;// = -1
var doMusic:Boolean;// = true
var maxzvel:Number;// = 150
var debug_NumPointsActive:int;
var objs:GameObjGroup;// = null
var obj3DList:Array;
var startLevel:Number;
var gameTimer:Number;
public var pauseMenu:PauseMenu;// = null
public var mochiScores;
var lastMusicID;// = -1
var tf_score:TextFormat;
var difficultyLevel:int;
var gameOverFlag:Boolean;
var scoretxt:TextField;
var musicSoundTransform:SoundTransform;
var particles:Particles;// = null
var initedScores:Boolean;
var levelEndTimer:Number;
var nextPointAddPos:int;// = 0
var musicChannel1:SoundChannel;// = null
var tf_small:TextFormat;
var mochiMovieClip:MovieClip;
var gameOverTimer:Number;
var zvel:Number;// = 10
var musicChannel:SoundChannel;// = null
var debugTxt:TextField;
var tf_large:TextFormat;
var extraBoostVel:Number;
var cheatMode:Boolean;
var camera:Camera;
var prevCamZ;// = -10000
var accxy:Number;// = 4
var raceTime:Number;
var accuracyList:Array;
public var doSound:Boolean;// = true
private var screenB:Bitmap;
private var starfieldB:Bitmap;
public var graphicobjs:Array;
var levelState:int;
var pxv:Number;// = 0
var xydec:Number;// = 3
var backgroundMC:MovieClip;
var levelTimerMax:Number;
var musicSound1:Sound;
var currentLevel:int;
var extraBoostTimer:Number;
public var tf_infooverlay:TextFormat;
var levelStateCount:int;
var maxxyv:Number;// = 100
public var screenBD:BitmapData;
var pyv:Number;// = 0
var displayDebugFlag;// = false
var gameState:int;// = 0
var musicSoundTransform1:SoundTransform;
var currentTime:Number;// = 0
var goPlayer:GameObj;// = null
var titleMC:MovieClip;
var levelStateTimer:Number;
var musicSound:Sound;
var numExtraBoosts:int;
static const gameState_HELP = 7;
static const gameState_HIGHSCORES = 5;
static const levelState_FINISHED = 2;
static const gameState_GAMEOVER = 4;
static const gameState_LEVEL_GETREADY = 1;
public static const numPoints = 1000;
public static const gravity = 0.1;
static const gameState_PREGAMEAD = 6;
static const levelState_GETREADY = 0;
static const levelState_RACE = 1;
static const gameState_LEVEL_PLAY = 2;
static const gameState_LEVEL_COMPLETE = 3;
static const gameState_TITLE = 0;
public static var theStage:Stage;
static var theRoot:MovieClip;
public function Main(){
currentTime = 0;
doMusic = true;
musicChannel = null;
musicChannel1 = null;
gameState = gameState_TITLE;
doSound = true;
doAutofire = false;
goPlayer = null;
keyReader = null;
pauseMenu = null;
overlay = null;
particles = null;
objs = null;
displayDebugFlag = false;
lastMusicID = -1;
currentMusicID = -1;
prevCamZ = -10000;
pxv = 0;
pyv = 0;
zvel = 10;
minzvel = 20;
maxzvel = 150;
zdecel = 0.025;
maxxyv = 100;
xydec = 3;
accxy = 4;
backgroundAnimFrame = 0;
nextPointAddPos = 0;
super();
theRoot = this;
theStage = this.root.stage;
SetEverythingUpOnce();
}
function FinishedRaceEffect(){
var _local1:BitmapFilter;
_local1 = new BlurFilter(2, 2, 1);
screenBD.applyFilter(screenBD, new Rectangle(0, 0, 720, 600), new Point(0, 0), _local1);
}
function Add3DPoint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:int):void{
var _local5:V3;
_local5 = pointsList[nextPointAddPos];
_local5.x = _arg1;
_local5.y = _arg2;
_local5.z = _arg3;
_local5.active = true;
_local5.type = _arg4;
nextPointAddPos++;
if (nextPointAddPos >= numPoints){
nextPointAddPos = 0;
};
}
function RandBetween(_arg1:Number, _arg2:Number):Number{
var _local3:Number;
_local3 = (Math.random() * ((_arg2 + 1) - _arg1));
_local3 = (_local3 + _arg1);
return (_local3);
}
function RunPreGameAd(){
}
function RenderEndLevelStuff():void{
if (levelState != levelState_FINISHED){
return;
};
}
function InitStageForLevel(){
var _local1:int;
_local1 = (this.numChildren - 1);
while (_local1 >= 0) {
removeChildAt(_local1);
_local1--;
};
addChild(screenB);
addChild(starfieldB);
screenB.x = 0;
screenB.y = 0;
backgroundMC = null;
if (currentLevel == 0){
backgroundMC = new warpBackground();
};
if (currentLevel == 1){
backgroundMC = new tubeSky();
};
if (currentLevel == 7){
backgroundMC = new cube_background();
};
}
public function soundOffPressed(_arg1:MouseEvent){
if (doSound == false){
return;
};
musicChannel.stop();
doSound = false;
}
function InitDrawScreen():void{
screenBD = new BitmapData(720, 600, false, 0);
screenB = new Bitmap(screenBD);
starfieldBD = new BitmapData(720, 600, true, 0);
starfieldB = new Bitmap(starfieldBD);
starfieldBD.fillRect(new Rectangle(0, 0, 720, 600), 0);
}
private function CreateTextField(_arg1:TextFormat, _arg2:Number, _arg3:Number, _arg4:String):TextField{
var _local5:TextField;
_local5 = new TextField();
_local5.selectable = false;
_local5.embedFonts = true;
_local5.autoSize = TextFieldAutoSize.CENTER;
_local5.x = _arg2;
_local5.y = _arg3;
_local5.text = _arg4;
_local5.setTextFormat(_arg1);
addChild(_local5);
return (_local5);
}
public function AddParticle(_arg1:Number, _arg2:Number, _arg3:int, _arg4:Number, _arg5:int){
var _local6:int;
_local6 = 0;
while (_local6 < _arg5) {
particles.Add(_arg3, _arg1, _arg2, _arg4);
_local6++;
};
}
function RunLevelComplete(){
}
function InitLevel(){
var _local1:GameObj;
var _local2:Array;
InitStageForLevel();
this.stage.focus = null;
InfoOverlay.InitForLevel(this);
overlay.StartFadeIn(null);
scoretxt = CreateTextField(tf_score, 330, 20, "");
debugTxt = CreateTextField(tf_small, 360, 40, "");
scoretxt.autoSize = TextFieldAutoSize.LEFT;
particles.Reset();
Mouse.hide();
MouseControl.buttonPressed = false;
_local2 = new Array();
particles.Reset();
Game.currentScore = 0;
raceTime = 0;
Init3DPoints();
camera.pos.z = -200;
camera.pos.x = 0;
camera.pos.y = 0;
zvel = minzvel;
pxv = 0;
pyv = 0;
numExtraBoosts = 3;
InitExtraBoost();
accuracyList = new Array();
StartMusic((1 + (currentLevel % 2)));
StarField.InitForLevel();
InitLevelState(levelState_GETREADY);
}
function RandBetweenFloat(_arg1:Number, _arg2:Number):Number{
var _local3:Number;
_local3 = (Math.random() * (_arg2 - _arg1));
_local3 = (_local3 + _arg1);
return (_local3);
}
function InitLevelGetReady(){
}
function UpdateAxis(_arg1:Number, _arg2:Number):Number{
var _local3:Number;
_local3 = ((1 / (maxzvel - minzvel)) * (zvel - minzvel));
_local3 = (_local3 + 1);
_arg2 = (_arg2 * _local3);
if (_arg2 != 0){
_arg1 = (_arg1 + _arg2);
if (_arg1 > maxxyv){
_arg1 = maxxyv;
};
if (_arg1 < -(maxxyv)){
_arg1 = -(maxxyv);
};
} else {
if (_arg1 > 0){
_arg1 = (_arg1 - xydec);
if (_arg1 <= 0){
_arg1 = 0;
};
} else {
_arg1 = (_arg1 + xydec);
if (_arg1 >= 0){
_arg1 = 0;
};
};
};
return (_arg1);
}
function UpdateBoost(){
zvel = (zvel - (zdecel * ftime));
if (zvel <= minzvel){
zvel = minzvel;
};
}
function RemoveMovieClip(_arg1:MovieClip):void{
removeChild(_arg1);
}
function OutputData(_arg1:int):void{
var _local2:int;
var _local3:int;
var _local4:int;
var _local5:int;
var _local6:int;
_local2 = (camera.pos.z / (Defs.objMultZ * 10));
_local3 = (prevCamZ / (Defs.objMultZ * 10));
_local4 = camera.pos.x;
_local5 = camera.pos.y;
_local6 = 30;
if (_local3 == (_local2 - 1)){
trace((((((((((("obj3DList.push(new Object3D(" + _local4) + ", ") + _local5) + ", ") + (_local2 * 10)) + ", ") + _arg1) + ", ") + _local6) + "));"));
};
}
function UpdateMouseControl(){
var _local1:Number;
_local1 = 0.6;
pxv = ((MouseControl.mousePosX - 360) * _local1);
pyv = ((MouseControl.mousePosY - 300) * _local1);
}
function run(_arg1:Event):void{
if (keyReader != null){
keyReader.UpdateOncePerFrame();
};
calcFrameTime();
overlay.Update();
switch (gameState){
case gameState_PREGAMEAD:
RunPreGameAd();
break;
case gameState_TITLE:
TitleScreenState.Update(this);
break;
case gameState_HIGHSCORES:
break;
case gameState_LEVEL_GETREADY:
RunLevelGetReady();
break;
case gameState_LEVEL_PLAY:
RunLevel();
break;
case gameState_LEVEL_COMPLETE:
RunLevelComplete();
break;
case gameState_HELP:
break;
case gameState_GAMEOVER:
RunGameOver();
break;
};
}
function InitStageNoBackground(){
var _local1:int;
_local1 = (this.numChildren - 1);
while (_local1 >= 0) {
removeChildAt(_local1);
_local1--;
};
}
function Render3D():void{
var _local1:int;
var _local2:int;
var _local3:Object3D;
debug_NumPointsActive = 0;
ClearScreen();
if (levelState == levelState_RACE){
StarField.Render();
};
_local2 = obj3DList.length;
_local1 = (_local2 - 1);
while (_local1 > 0) {
_local3 = obj3DList[_local1];
if (((_local3.active) && (_local3.inVisibleRange))){
_local3.Render();
};
_local1--;
};
}
function SetEverythingUpOnce():void{
Licensors.InitOnce();
LongAnimals_Kongregate.Init(this);
trace("SetEverythingUpOnce");
GenerateGraphics();
trace("graphics done");
SoundPlayer.InitOnce(this);
keyReader = new KeyReader(this.stage);
pauseMenu = new PauseMenu(this);
particles = new Particles(this, 1);
InitDrawScreen();
InitFonts();
overlay = new Overlay(this, null, null);
HelpScreens.InitOnce(this);
StarField.InitOnce(this);
Levels.InitOnce();
camera = new Camera();
camera.nearZ = 1;
MochiBot.track(this, "cf44a21b");
InitStage();
InitGame();
Game.Init(this);
theStage.addEventListener(MouseEvent.MOUSE_MOVE, MouseControl.MouseHandler);
theStage.addEventListener(MouseEvent.MOUSE_DOWN, MouseControl.MouseClickHandler);
theStage.addEventListener(MouseEvent.MOUSE_UP, MouseControl.MouseUpHandler);
currentLevel = (startLevel = 0);
addEventListener(Event.ENTER_FRAME, run);
SetGameState(gameState_TITLE);
}
public function hardPressed(_arg1:MouseEvent){
difficultyLevel = 2;
}
function InitLevelObjs():void{
obj3DList = Levels.InitLevelObjs(currentLevel);
SortList();
}
function InitLevelState(_arg1:int){
var _local2:MovieClip;
levelState = _arg1;
if (_arg1 == levelState_GETREADY){
};
levelStateTimer = (0.5 * Defs.fps);
levelStateCount = 4;
if (_arg1 == levelState_FINISHED){
levelStateTimer = (5 * Defs.fps);
if (Licensors.IsHosted() == false){
Mouse.show();
_local2 = AddMovieClip(360, 500, new EndLevelOverlay());
_local2.buttonKongLogo.addEventListener(MouseEvent.CLICK, TitleScreenState.buttonKongPressed);
};
};
}
function RunTitle(){
}
function InitExtraBoost(){
extraBoostTimer = 0;
extraBoostVel = 0;
}
function InitFonts():void{
var _local1:Font;
var _local2:Font;
tf_large = new TextFormat();
tf_small = new TextFormat();
tf_score = new TextFormat();
tf_infooverlay = new TextFormat();
_local1 = new Font20();
_local2 = new Font2();
tf_large.font = _local1.fontName;
tf_large.size = 45;
tf_large.color = 4294967295;
tf_small.font = _local1.fontName;
tf_small.size = 16;
tf_small.color = 0xFFFFFF;
tf_infooverlay.font = _local1.fontName;
tf_infooverlay.size = 25;
tf_infooverlay.color = 0xFFFFFF;
tf_score.font = _local2.fontName;
tf_score.size = 28;
tf_score.color = 0xFFFFFF;
}
function InitPreGameAd(){
}
public function mediumPressed(_arg1:MouseEvent){
difficultyLevel = 1;
}
function RunLevelGetReady(){
}
function ClearScreen(){
var _local1:Number;
var _local2:Number;
var _local3:Number;
var _local4:Number;
var _local5:int;
var _local6:Number;
var _local7:Matrix;
if (levelState == levelState_FINISHED){
FinishedRaceEffect();
return;
};
_local1 = 0.01;
_local2 = (-(camera.pos.x) * _local1);
_local3 = (-(camera.pos.y) * _local1);
_local4 = 80;
if (_local2 > _local4){
_local2 = _local4;
};
if (_local2 < -(_local4)){
_local2 = -(_local4);
};
if (_local3 > _local4){
_local3 = _local4;
};
if (_local3 < -(_local4)){
_local3 = -(_local4);
};
_local5 = Defs.gfx_warpbackground;
_local6 = (1 + ((1 / (maxzvel - minzvel)) * zvel));
if (levelState == levelState_RACE){
backgroundAnimFrame = (backgroundAnimFrame + _local6);
};
if (backgroundAnimFrame > 23){
backgroundAnimFrame = 0;
};
if ((((((currentLevel == 0)) || ((currentLevel == 1)))) || ((currentLevel == 7)))){
_local7 = new Matrix();
if (currentLevel == 0){
_local7.translate(-10, -222);
};
if (currentLevel == 1){
_local7.translate(-10, 0);
};
if (currentLevel == 7){
_local7.translate((-((1014 - 720)) / 2), -38);
};
backgroundMC.gotoAndStop(int((backgroundAnimFrame + 1)));
screenBD.draw(backgroundMC, _local7);
} else {
graphicobjs[Defs.gfx_background].SetFrame(currentLevel);
graphicobjs[Defs.gfx_background].RenderAt(screenBD, _local2, _local3, 1);
};
}
public function buttonCredits(_arg1:MouseEvent){
mochiScores.ShowLeaderboard(this);
}
public function enterScoreCallback(){
SetGameState(gameState_TITLE);
}
function StartMusic(_arg1:int){
if (doMusic == false){
return;
};
if (musicChannel != null){
musicChannel.stop();
};
if (musicChannel1 != null){
musicChannel1.stop();
};
if (_arg1 == 0){
musicSoundTransform = new SoundTransform(0.75, 0);
musicSound = new Music1();
musicChannel = musicSound.play(0, 999999, musicSoundTransform);
};
if (_arg1 == 1){
musicSoundTransform = new SoundTransform(0.75, 0);
musicSound = new Music2();
musicChannel = musicSound.play(0, 999999, musicSoundTransform);
};
if (_arg1 == 2){
musicSoundTransform = new SoundTransform(0.75, 0);
musicSound = new Music3();
musicChannel = musicSound.play(0, 999999, musicSoundTransform);
};
lastMusicID = _arg1;
}
function AddMovieClip(_arg1:Number, _arg2:Number, _arg3:MovieClip):MovieClip{
_arg3.x = _arg1;
_arg3.y = _arg2;
_arg3.y = _arg2;
addChild(_arg3);
return (_arg3);
}
function Update3D():void{
var _local1:Number;
var _local2:Number;
var _local3:Boolean;
var _local4:int;
var _local5:int;
var _local6:Object3D;
var _local7:Boolean;
var _local8:*;
var _local9:Number;
var _local10:Number;
var _local11:Number;
var _local12:Number;
var _local13:Number;
var _local14:int;
var _local15:Number;
InfoOverlay.UpdateOncePerFrame();
if (levelState == levelState_GETREADY){
levelStateTimer = (levelStateTimer - ftime);
if (levelStateTimer < 0){
levelStateTimer = (1 * Defs.fps);
levelStateCount--;
if (levelStateCount == 0){
SoundPlayer.Play(SoundPlayer.SOUND_BOOST3);
InfoOverlay.Add("GO!");
InitLevelState(levelState_RACE);
} else {
SoundPlayer.Play(SoundPlayer.SOUND_READY);
InfoOverlay.Add((("- " + levelStateCount.toString()) + " -"));
};
};
};
if (levelState == levelState_RACE){
raceTime = (raceTime + ftime);
_local7 = false;
if (extraBoostTimer > 0){
_local7 = true;
};
StarField.Update(_local7);
};
if (levelState == levelState_FINISHED){
levelStateTimer = (levelStateTimer - ftime);
if (levelStateTimer < 0){
SetGameState(gameState_TITLE);
};
};
_local1 = 0;
_local2 = 0;
_local3 = false;
prevCamZ = camera.pos.z;
_local2 = 0;
_local1 = _local2;
if (levelState == levelState_RACE){
if ((((numExtraBoosts > 0)) && ((extraBoostTimer <= 0)))){
if (keyReader.Pressed(KeyReader.KEY_SPACE)){
SoundPlayer.Play(SoundPlayer.SOUND_BOOST2);
numExtraBoosts--;
StartExtraBoost();
};
};
};
UpdateMouseControl();
UpdateBoost();
UpdateExtraBoost();
if (levelState != levelState_GETREADY){
camera.pos.x = (camera.pos.x + pxv);
camera.pos.y = (camera.pos.y + pyv);
camera.pos.z = (camera.pos.z + zvel);
};
if (_local3){
camera.pos.z = (camera.pos.z + 50);
};
_local5 = obj3DList.length;
_local4 = 0;
while (_local4 < _local5) {
_local6 = obj3DList[_local4];
if (_local6.active){
if ((((camera.pos.z >= _local6.z)) && ((prevCamZ < _local6.z)))){
if (_local6.type == Object3D.type_FinishLine){
SoundPlayer.Play(SoundPlayer.SOUND_BOOST1);
_local10 = DP2((raceTime / Defs.fps));
_local11 = DP2(zvel);
_local12 = 0;
for each (_local13 in accuracyList) {
_local12 = (_local12 + _local13);
};
_local12 = (_local12 / Number(accuracyList.length));
_local12 = (_local12 * 100);
_local12 = DP2(_local12);
InfoOverlay.AddAt(0, "FINISH", 0, 99);
InfoOverlay.AddAt(1, ("Race Time: " + _local10), 1, 99);
InfoOverlay.AddAt(2, ("Final Speed: " + _local11), 2, 99);
InfoOverlay.AddAt(3, (("Accuracy: " + _local12) + "%"), 3, 99);
InitLevelState(levelState_FINISHED);
Levels.SetBestTime(this, currentLevel, raceTime, _local11, _local12);
};
_local9 = _local6.Hit(camera.pos.x, camera.pos.y);
if (_local9 >= 0){
_local14 = SoundPlayer.SOUND_HOOP3;
if (_local9 < 0.8){
_local14 = SoundPlayer.SOUND_HOOP2;
};
if (_local9 < 0.5){
_local14 = SoundPlayer.SOUND_HOOP1;
};
SoundPlayer.Play(_local14);
accuracyList.push(_local9);
_local9 = ((_local9 * 0.5) + 0.5);
_local15 = (_local9 * _local6.GetSpeedBoostMultiplier());
AddBoost(_local15);
};
};
_local6.Update(this);
_local8 = (_local6.z - camera.pos.z);
if (_local8 < -10){
_local6.active = false;
};
_local6.inVisibleRange = false;
if (_local8 < camera.farZ){
_local6.inVisibleRange = true;
};
};
_local4++;
};
}
public function DP2(_arg1:Number):Number{
var _local2:Number;
_local2 = (Math.ceil((_arg1 * 100)) / 100);
return (_local2);
}
function BlurStarfield(){
var _local1:Array;
var _local2:BitmapFilter;
_local1 = new Array();
_local1 = _local1.concat([1, 0, 0, 0, 0]);
_local1 = _local1.concat([0, 1, 0, 0, 0]);
_local1 = _local1.concat([0, 0, 1, 0, 0]);
_local1 = _local1.concat([0, 0, 0, 0.8, 0]);
_local2 = new ColorMatrixFilter(_local1);
starfieldBD.applyFilter(starfieldBD, new Rectangle(0, 0, 720, 600), new Point(0, 0), _local2);
}
function calcFrameTime(){
var _local1:Number;
_local1 = currentTime;
currentTime = getTimer();
if (currentTime < _local1){
_local1 = (currentTime - 100);
};
if (currentTime > (_local1 + (100 * 10))){
_local1 = (100 * 10);
};
ftime = ((1 / (1000 / Defs.fps)) * (currentTime - _local1));
ftime = 1;
}
function UpdatePoints(){
var _local1:Number;
var _local2:Number;
_local1 = prevCamZ;
_local2 = camera.pos.z;
}
function InitGameOver(){
gameOverFlag = true;
gameOverTimer = 50;
InitStageNoBackground();
initedScores = false;
}
public function soundOnPressed(_arg1:MouseEvent){
if (doSound == true){
return;
};
musicChannel = musicSound.play(0, 999999, musicSoundTransform);
doSound = true;
}
public function backPressed(_arg1:MouseEvent){
}
function InitGame(){
difficultyLevel = 1;
gameOverFlag = false;
}
function UpdateExtraBoost():void{
if (extraBoostTimer > 0){
extraBoostTimer = (extraBoostTimer - ftime);
extraBoostVel = (extraBoostVel + (0.001 * ftime));
zvel = (zvel + extraBoostVel);
if (zvel >= maxzvel){
zvel = maxzvel;
};
};
}
public function buttonHighScoresPressed(_arg1:MouseEvent){
mochiScores.ShowLeaderboard(this);
}
function GenerateGraphics(){
graphicobjs = new Array();
graphicobjs.push(new DisplayObj(new Background(), 1, 0));
graphicobjs.push(new DisplayObj(new BoostIcon(), 1, 0));
graphicobjs.push(new DisplayObj(new Crosshair(), 1, 0));
graphicobjs.push(new DisplayObj(new Obj1(), 1, 1));
graphicobjs.push(new DisplayObj(new Obj2(), 1, 1));
graphicobjs.push(new DisplayObj(new Obj3(), 1, 1));
graphicobjs.push(new DisplayObj(new Obj4(), 1, 1));
graphicobjs.push(new DisplayObj(new ObjFinish(), 1, 1));
graphicobjs.push(new DisplayObj(new bar_power(), 1, 0));
}
function DP1(_arg1:Number):Number{
var _local2:Number;
_local2 = (Math.ceil((_arg1 * 10)) / 10);
return (_local2);
}
function StartExtraBoost():void{
extraBoostTimer = (3 * Defs.fps);
extraBoostVel = 0;
}
public function buttonMoreGames(_arg1:MouseEvent){
navigateToURL(new URLRequest("http://www.longanimalsgames.com"));
}
function RunGameOver(){
gameOverTimer = (gameOverTimer - ftime);
if (gameOverTimer <= 0){
};
}
function SortList():void{
var _local1:Object3D;
var _local2:Object3D;
var _local3:Object3D;
var _local4:int;
var _local5:int;
var _local6:int;
_local6 = obj3DList.length;
_local4 = 0;
while (_local4 < (_local6 - 1)) {
_local2 = obj3DList[_local4];
_local5 = (_local4 + 1);
while (_local5 < _local6) {
_local3 = obj3DList[_local5];
if (_local2.z > _local3.z){
_local1 = new Object3D(0, 0, 0, 0, 0);
_local1.From(_local2);
_local2.From(_local3);
_local3.From(_local1);
};
_local5++;
};
_local4++;
};
}
function RenderPoint(_arg1:V3){
var _local2:Number;
var _local3:Number;
var _local4:Number;
if (_arg1.z1 < camera.nearZ){
return;
};
if (_arg1.z1 > camera.farZ){
return;
};
_local2 = 1;
_local3 = _arg1.z1;
_local4 = (_local2 / (_local2 + _local3));
graphicobjs[(Defs.gfx_obj1 + _arg1.type)].RenderAt(screenBD, _arg1.x1, _arg1.y1, _local4);
}
function SetGameState(_arg1:int):void{
gameState = _arg1;
Mouse.show();
switch (gameState){
case gameState_PREGAMEAD:
InitPreGameAd();
break;
case gameState_TITLE:
TitleScreenState.Init(this);
break;
case gameState_HIGHSCORES:
break;
case gameState_LEVEL_GETREADY:
InitLevelGetReady();
break;
case gameState_LEVEL_PLAY:
InitLevel();
break;
case gameState_LEVEL_COMPLETE:
InitLevelComplete();
break;
case gameState_HELP:
break;
case gameState_GAMEOVER:
InitGameOver();
break;
};
}
public function helpPressed(_arg1:MouseEvent){
SetGameState(gameState_HELP);
}
function AddBoost(_arg1:Number){
zvel = (zvel + _arg1);
if (zvel >= maxzvel){
zvel = maxzvel;
};
}
function InitLevelComplete(){
InitStage();
}
public function buttonStartPressed(_arg1:MouseEvent){
StartGameCallback();
}
function Render(){
this.x = 0;
this.y = 0;
BlurStarfield();
Render3D();
InfoOverlay.Render();
RenderPanel();
RenderEndLevelStuff();
}
function StartGameCallback(){
InitGame();
SetGameState(gameState_LEVEL_PLAY);
}
public function easyPressed(_arg1:MouseEvent){
difficultyLevel = 0;
}
function InitStage(){
var _local1:int;
_local1 = (this.numChildren - 1);
while (_local1 >= 0) {
removeChildAt(_local1);
_local1--;
};
addChild(screenB);
screenB.x = 0;
screenB.y = 0;
}
function AdFinished(){
SetGameState(gameState_TITLE);
}
function RunLevel(){
var _local1:String;
var _local2:int;
var _local3:int;
if (pauseMenu.IsPaused() == false){
if (gameOverFlag == false){
Game.UpdateGameplay();
};
Update3D();
};
Render();
if (overlay.IsActive()){
scoretxt.text = "";
scoretxt.setTextFormat(tf_score);
} else {
_local1 = DP2((raceTime / Defs.fps)).toString();
_local2 = _local1.lastIndexOf(".");
if (_local2 == -1){
_local1.concat(".00");
} else {
_local3 = _local1.length;
if (_local2 == (_local3 - 1)){
_local1.concat("0");
};
};
scoretxt.text = _local1;
scoretxt.setTextFormat(tf_score);
};
debugTxt.text = "";
debugTxt.setTextFormat(tf_small);
}
function Init3DPoints(){
var _local1:int;
var _local2:int;
var _local3:Number;
var _local4:*;
var _local5:Number;
var _local6:Number;
var _local7:Number;
var _local8:*;
var _local9:Number;
var _local10:Number;
var _local11:Number;
var _local12:Number;
var _local13:Number;
InitLevelObjs();
nextPointAddPos = 0;
pointsList = new Array(numPoints);
_local1 = 0;
while (_local1 < numPoints) {
_local4 = new V3();
_local4.active = false;
pointsList[_local1] = _local4;
_local1++;
};
_local3 = (Math.PI * 2);
_local1 = 0;
while (_local1 < 20) {
_local5 = 150;
_local6 = RandBetweenFloat(-(_local5), _local5);
_local7 = RandBetweenFloat(-(_local5), _local5);
_local8 = 50;
_local9 = RandBetweenFloat(200, 300);
_local2 = 0;
while (_local2 < _local8) {
_local10 = ((_local3 / _local8) * Number(_local2));
_local11 = (Math.sin(_local10) * _local9);
_local12 = (Math.cos(_local10) * _local9);
_local13 = (_local1 * 300);
Add3DPoint((_local6 + _local11), (_local7 + _local12), _local13, (_local1 % 4));
_local2++;
};
_local1++;
};
}
public function ResumeMusic(){
currentMusicID = (lastMusicID - 1);
StartMusic(lastMusicID);
}
public function PauseMusic(){
musicChannel.stop();
}
function RenderPanel():void{
var _local1:Number;
var _local2:Number;
var _local3:Number;
var _local4:int;
var _local5:int;
var _local6:Number;
var _local7:int;
var _local8:Number;
var _local9:Number;
var _local10:Number;
var _local11:Number;
var _local12:Number;
var _local13:Number;
var _local14:uint;
_local1 = 32;
_local2 = 32;
_local3 = 50;
_local4 = 0;
while (_local4 < numExtraBoosts) {
graphicobjs[Defs.gfx_boosticon].SetFrame(0);
graphicobjs[Defs.gfx_boosticon].RenderAt(screenBD, _local1, _local2, 1);
_local1 = (_local1 + _local3);
_local4++;
};
_local5 = graphicobjs[Defs.gfx_bar_power].GetMaxFrames();
_local6 = ((_local5 / (maxzvel - minzvel)) * (zvel - minzvel));
graphicobjs[Defs.gfx_bar_power].SetFrame(int(_local6));
graphicobjs[Defs.gfx_bar_power].RenderAt(screenBD, 600, 55, 1);
graphicobjs[Defs.gfx_crosshair].SetFrame(0);
graphicobjs[Defs.gfx_crosshair].RenderAt(screenBD, 360, 300, 1);
_local7 = 10;
_local8 = 360;
_local9 = 300;
_local10 = MouseControl.mousePosX;
_local11 = MouseControl.mousePosY;
_local12 = ((_local10 - _local8) / Number(_local7));
_local13 = ((_local11 - _local9) / Number(_local7));
_local12 = (_local12 * 0.1);
_local13 = (_local13 * 0.1);
_local4 = 0;
while (_local4 < _local7) {
_local8 = (_local8 + _local12);
_local9 = (_local9 + _local13);
_local14 = 0xFFFFFF;
screenBD.setPixel32(int(_local8), int(_local9), _local14);
_local4++;
};
}
}
}//package
Section 32
//Matrix3 (Matrix3)
package {
public class Matrix3 {
public var y2:Number;
public var z2:Number;
public var z0:Number;
public var y0:Number;
public var x0:Number;
public var x1:Number;
public var x2:Number;
public var z1:Number;
public var y1:Number;
public function Matrix3():void{
Init();
}
public function Init(){
var _local1:Number;
var _local2:Number;
_local1 = 1;
_local2 = 0;
x0 = _local1;
y0 = _local2;
z0 = _local2;
x1 = _local2;
y1 = _local1;
z1 = _local2;
x2 = _local2;
y2 = _local2;
z2 = _local1;
}
}
}//package
Section 33
//MochiAd (MochiAd)
package {
import flash.events.*;
import flash.display.*;
import flash.utils.*;
import flash.net.*;
import flash.system.*;
public class MochiAd {
public static function getVersion():String{
return ("2.5");
}
public static function showClickAwayAd(_arg1:Object):void{
var DEFAULTS:Object;
var clip:Object;
var ad_timeout:Number;
var mc:MovieClip;
var wh:Array;
var w:Number;
var h:Number;
var chk:MovieClip;
var sendHostProgress:Boolean;
var options = _arg1;
DEFAULTS = {ad_timeout:2000, regpt:"o", method:"showClickAwayAd", res:"300x250", no_bg:true, ad_started:function ():void{
}, ad_finished:function ():void{
}, ad_loaded:function (_arg1:Number, _arg2:Number):void{
}, ad_failed:function ():void{
trace("[MochiAd] Couldn't load an ad, make sure your game's local security sandbox is configured for Access Network Only and that you are not using ad blocking software");
}, ad_skipped:function ():void{
}};
options = MochiAd._parseOptions(options, DEFAULTS);
clip = options.clip;
ad_timeout = options.ad_timeout;
delete options.ad_timeout;
if (!MochiAd.load(options)){
options.ad_failed();
options.ad_finished();
return;
};
options.ad_started();
mc = clip._mochiad;
mc["onUnload"] = function ():void{
MochiAd._cleanup(mc);
options.ad_finished();
};
wh = MochiAd._getRes(options, clip);
w = wh[0];
h = wh[1];
mc.x = (w * 0.5);
mc.y = (h * 0.5);
chk = createEmptyMovieClip(mc, "_mochiad_wait", 3);
chk.ad_timeout = ad_timeout;
chk.started = getTimer();
chk.showing = false;
mc.unloadAd = function ():void{
MochiAd.unload(clip);
};
mc.adLoaded = options.ad_loaded;
mc.adSkipped = options.ad_skipped;
mc.rpc = function (_arg1:Number, _arg2:Object):void{
MochiAd.rpc(clip, _arg1, _arg2);
};
sendHostProgress = false;
mc.regContLC = function (_arg1:String):void{
mc._containerLCName = _arg1;
};
chk["onEnterFrame"] = function ():void{
var _local1:Object;
var _local2:Number;
var _local3:Boolean;
var _local4:Number;
if (!this.parent){
delete this.onEnterFrame;
return;
};
_local1 = this.parent._mochiad_ctr;
_local2 = (getTimer() - this.started);
_local3 = false;
if (!chk.showing){
_local4 = this.parent._mochiad_ctr.contentLoaderInfo.bytesTotal;
if (_local4 > 0){
chk.showing = true;
_local3 = true;
chk.started = getTimer();
} else {
if (_local2 > chk.ad_timeout){
options.ad_failed();
_local3 = true;
};
};
};
if (this.root == null){
_local3 = true;
};
if (_local3){
delete this.onEnterFrame;
};
};
doOnEnterFrame(chk);
}
public static function _isNetworkAvailable():Boolean{
return (!((Security.sandboxType == "localWithFile")));
}
public static function _allowDomains(_arg1:String):String{
var _local2:String;
_local2 = _arg1.split("/")[2].split(":")[0];
Security.allowDomain("*");
Security.allowDomain(_local2);
Security.allowInsecureDomain("*");
Security.allowInsecureDomain(_local2);
return (_local2);
}
public static function unload(_arg1:Object):Boolean{
if (((_arg1.clip) && (_arg1.clip._mochiad))){
_arg1 = _arg1.clip;
};
if (_arg1.origFrameRate != undefined){
_arg1.stage.frameRate = _arg1.origFrameRate;
};
if (!_arg1._mochiad){
return (false);
};
if (_arg1._mochiad._containerLCName != undefined){
_arg1._mochiad.lc.send(_arg1._mochiad._containerLCName, "notify", {id:"unload"});
};
if (_arg1._mochiad.onUnload){
_arg1._mochiad.onUnload();
};
delete _arg1._mochiad_loaded;
delete _arg1._mochiad;
return (true);
}
public static function showInterLevelAd(_arg1:Object):void{
var DEFAULTS:Object;
var clip:Object;
var ad_msec:Number;
var ad_timeout:Number;
var fadeout_time:Number;
var mc:MovieClip;
var wh:Array;
var w:Number;
var h:Number;
var chk:MovieClip;
var options = _arg1;
DEFAULTS = {ad_timeout:2000, fadeout_time:250, regpt:"o", method:"showTimedAd", ad_started:function ():void{
if ((this.clip is MovieClip)){
this.clip.stop();
} else {
throw (new Error("MochiAd.showInterLevelAd requires a clip that is a MovieClip or is an instance of a class that extends MovieClip. If your clip is a Sprite, then you must provide custom ad_started and ad_finished handlers."));
};
}, ad_finished:function ():void{
if ((this.clip is MovieClip)){
this.clip.play();
} else {
throw (new Error("MochiAd.showInterLevelAd requires a clip that is a MovieClip or is an instance of a class that extends MovieClip. If your clip is a Sprite, then you must provide custom ad_started and ad_finished handlers."));
};
}, ad_loaded:function (_arg1:Number, _arg2:Number):void{
}, ad_failed:function ():void{
trace("[MochiAd] Couldn't load an ad, make sure your game's local security sandbox is configured for Access Network Only and that you are not using ad blocking software");
}, ad_skipped:function ():void{
}};
options = MochiAd._parseOptions(options, DEFAULTS);
clip = options.clip;
ad_msec = 11000;
ad_timeout = options.ad_timeout;
delete options.ad_timeout;
fadeout_time = options.fadeout_time;
delete options.fadeout_time;
if (!MochiAd.load(options)){
options.ad_failed();
options.ad_finished();
return;
};
options.ad_started();
mc = clip._mochiad;
mc["onUnload"] = function ():void{
MochiAd._cleanup(mc);
options.ad_finished();
};
wh = MochiAd._getRes(options, clip);
w = wh[0];
h = wh[1];
mc.x = (w * 0.5);
mc.y = (h * 0.5);
chk = createEmptyMovieClip(mc, "_mochiad_wait", 3);
chk.ad_msec = ad_msec;
chk.ad_timeout = ad_timeout;
chk.started = getTimer();
chk.showing = false;
chk.fadeout_time = fadeout_time;
chk.fadeFunction = function ():void{
var _local1:Number;
if (!this.parent){
delete this.onEnterFrame;
delete this.fadeFunction;
return;
};
_local1 = (100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time)));
if (_local1 > 0){
this.parent.alpha = (_local1 * 0.01);
} else {
MochiAd.unload(clip);
delete this["onEnterFrame"];
};
};
mc.unloadAd = function ():void{
MochiAd.unload(clip);
};
mc.adLoaded = options.ad_loaded;
mc.adSkipped = options.ad_skipped;
mc.adjustProgress = function (_arg1:Number):void{
var _local2:Object;
_local2 = mc._mochiad_wait;
_local2.server_control = true;
_local2.showing = true;
_local2.started = getTimer();
_local2.ad_msec = (_arg1 - 250);
};
mc.rpc = function (_arg1:Number, _arg2:Object):void{
MochiAd.rpc(clip, _arg1, _arg2);
};
chk["onEnterFrame"] = function ():void{
var _local1:Object;
var _local2:Number;
var _local3:Boolean;
var _local4:Number;
if (!this.parent){
delete this.onEnterFrame;
delete this.fadeFunction;
return;
};
_local1 = this.parent._mochiad_ctr;
_local2 = (getTimer() - this.started);
_local3 = false;
if (!chk.showing){
_local4 = this.parent._mochiad_ctr.contentLoaderInfo.bytesTotal;
if (_local4 > 0){
chk.showing = true;
chk.started = getTimer();
MochiAd.adShowing(clip);
} else {
if (_local2 > chk.ad_timeout){
options.ad_failed();
_local3 = true;
};
};
};
if (_local2 > chk.ad_msec){
_local3 = true;
};
if (_local3){
if (this.server_control){
delete this.onEnterFrame;
} else {
this.fadeout_start = getTimer();
this.onEnterFrame = this.fadeFunction;
};
};
};
doOnEnterFrame(chk);
}
public static function _parseOptions(_arg1:Object, _arg2:Object):Object{
var _local3:Object;
var _local4:String;
var _local5:Array;
var _local6:Number;
var _local7:Array;
_local3 = {};
for (_local4 in _arg2) {
_local3[_local4] = _arg2[_local4];
};
if (_arg1){
for (_local4 in _arg1) {
_local3[_local4] = _arg1[_local4];
};
};
if (_local3.clip == undefined){
throw (new Error("MochiAd is missing the 'clip' parameter. This should be a MovieClip, Sprite or an instance of a class that extends MovieClip or Sprite."));
};
_arg1 = _local3.clip.loaderInfo.parameters.mochiad_options;
if (_arg1){
_local5 = _arg1.split("&");
_local6 = 0;
while (_local6 < _local5.length) {
_local7 = _local5[_local6].split("=");
_local3[unescape(_local7[0])] = unescape(_local7[1]);
_local6++;
};
};
if (_local3.id == "test"){
trace("[MochiAd] WARNING: Using the MochiAds test identifier, make sure to use the code from your dashboard, not this example!");
};
return (_local3);
}
public static function _cleanup(_arg1:Object):void{
var idx:Number;
var k:String;
var lc:LocalConnection;
var f:Function;
var mc = _arg1;
if (("lc" in mc)){
lc = mc.lc;
f = function ():void{
try {
lc.client = null;
lc.close();
} catch(e:Error) {
};
};
setTimeout(f, 0);
};
idx = DisplayObjectContainer(mc).numChildren;
while (idx > 0) {
idx = (idx - 1);
DisplayObjectContainer(mc).removeChildAt(idx);
};
for (k in mc) {
delete mc[k];
};
}
public static function load(_arg1:Object):MovieClip{
var DEFAULTS:Object;
var clip:Object;
var depth:Number;
var mc:MovieClip;
var wh:Array;
var lv:URLVariables;
var k:String;
var server:String;
var hostname:String;
var lc:LocalConnection;
var name:String;
var loader:Loader;
var g:Function;
var req:URLRequest;
var v:Object;
var options = _arg1;
DEFAULTS = {server:"http://x.mochiads.com/srv/1/", method:"load", depth:10333, id:"_UNKNOWN_"};
options = MochiAd._parseOptions(options, DEFAULTS);
options.swfv = 9;
options.mav = MochiAd.getVersion();
clip = options.clip;
if (!MochiAd._isNetworkAvailable()){
return (null);
};
try {
if (clip._mochiad_loaded){
return (null);
};
} catch(e:Error) {
throw (new Error("MochiAd requires a clip that is an instance of a dynamic class. If your class extends Sprite or MovieClip, you must make it dynamic."));
};
depth = options.depth;
delete options.depth;
mc = createEmptyMovieClip(clip, "_mochiad", depth);
wh = MochiAd._getRes(options, clip);
options.res = ((wh[0] + "x") + wh[1]);
options.server = (options.server + options.id);
delete options.id;
clip._mochiad_loaded = true;
if (clip.loaderInfo.loaderURL.indexOf("http") == 0){
options.as3_swf = clip.loaderInfo.loaderURL;
};
lv = new URLVariables();
for (k in options) {
v = options[k];
if (!(v is Function)){
lv[k] = v;
};
};
server = lv.server;
delete lv.server;
hostname = _allowDomains(server);
lc = new LocalConnection();
lc.client = mc;
name = ["", Math.floor(new Date().getTime()), Math.floor((Math.random() * 999999))].join("_");
lc.allowDomain("*", "localhost");
lc.allowInsecureDomain("*", "localhost");
lc.connect(name);
mc.lc = lc;
mc.lcName = name;
lv.lc = name;
lv.st = getTimer();
loader = new Loader();
g = function (_arg1:Object):void{
_arg1.target.removeEventListener(_arg1.type, arguments.callee);
MochiAd.unload(clip);
};
loader.contentLoaderInfo.addEventListener(Event.UNLOAD, g);
req = new URLRequest((server + ".swf"));
req.contentType = "application/x-www-form-urlencoded";
req.method = URLRequestMethod.POST;
req.data = lv;
loader.load(req);
mc.addChild(loader);
mc._mochiad_ctr = loader;
return (mc);
}
public static function runMethod(_arg1:Object, _arg2:String, _arg3:Array):Object{
var _local4:Array;
var _local5:Number;
_local4 = _arg2.split(".");
_local5 = 0;
while (_local5 < (_local4.length - 1)) {
if ((((_arg1[_local4[_local5]] == undefined)) || ((_arg1[_local4[_local5]] == null)))){
return (undefined);
};
_arg1 = _arg1[_local4[_local5]];
_local5++;
};
if (typeof(_arg1[_local4[_local5]]) == "function"){
return (_arg1[_local4[_local5]].apply(_arg1, _arg3));
};
return (undefined);
}
public static function createEmptyMovieClip(_arg1:Object, _arg2:String, _arg3:Number):MovieClip{
var _local4:MovieClip;
_local4 = new MovieClip();
if (((false) && (_arg3))){
_arg1.addChildAt(_local4, _arg3);
} else {
_arg1.addChild(_local4);
};
_arg1[_arg2] = _local4;
_local4["_name"] = _arg2;
return (_local4);
}
public static function _getRes(_arg1:Object, _arg2:Object):Array{
var _local3:Object;
var _local4:Number;
var _local5:Number;
var _local6:Array;
_local3 = _arg2.getBounds(_arg2.root);
_local4 = 0;
_local5 = 0;
if (typeof(_arg1.res) != "undefined"){
_local6 = _arg1.res.split("x");
_local4 = parseFloat(_local6[0]);
_local5 = parseFloat(_local6[1]);
} else {
_local4 = (_local3.xMax - _local3.xMin);
_local5 = (_local3.yMax - _local3.yMin);
};
if ((((_local4 == 0)) || ((_local5 == 0)))){
_local4 = _arg2.stage.stageWidth;
_local5 = _arg2.stage.stageHeight;
};
return ([_local4, _local5]);
}
public static function adShowing(_arg1:Object):void{
_arg1.origFrameRate = _arg1.stage.frameRate;
_arg1.stage.frameRate = 30;
}
public static function getValue(_arg1:Object, _arg2:String):Object{
var _local3:Array;
var _local4:Number;
_local3 = _arg2.split(".");
_local4 = 0;
while (_local4 < (_local3.length - 1)) {
if ((((_arg1[_local3[_local4]] == undefined)) || ((_arg1[_local3[_local4]] == null)))){
return (undefined);
};
_arg1 = _arg1[_local3[_local4]];
_local4++;
};
return (_arg1[_local3[_local4]]);
}
public static function rpc(_arg1:Object, _arg2:Number, _arg3:Object):void{
var _local4:Object;
var _local5:Object;
switch (_arg3.id){
case "setValue":
MochiAd.setValue(_arg1, _arg3.objectName, _arg3.value);
break;
case "getValue":
_local4 = MochiAd.getValue(_arg1, _arg3.objectName);
_arg1._mochiad.lc.send(_arg1._mochiad._containerLCName, "rpcResult", _arg2, _local4);
break;
case "runMethod":
_local5 = MochiAd.runMethod(_arg1, _arg3.method, _arg3.args);
_arg1._mochiad.lc.send(_arg1._mochiad._containerLCName, "rpcResult", _arg2, _local5);
break;
default:
trace(("[mochiads rpc] unknown rpc id: " + _arg3.id));
};
}
public static function setValue(_arg1:Object, _arg2:String, _arg3:Object):void{
var _local4:Array;
var _local5:Number;
_local4 = _arg2.split(".");
_local5 = 0;
while (_local5 < (_local4.length - 1)) {
if ((((_arg1[_local4[_local5]] == undefined)) || ((_arg1[_local4[_local5]] == null)))){
return;
};
_arg1 = _arg1[_local4[_local5]];
_local5++;
};
_arg1[_local4[_local5]] = _arg3;
}
public static function showPreGameAd(_arg1:Object):void{
var DEFAULTS:Object;
var clip:Object;
var ad_msec:Number;
var ad_timeout:Number;
var fadeout_time:Number;
var mc:MovieClip;
var wh:Array;
var w:Number;
var h:Number;
var chk:MovieClip;
var bar:MovieClip;
var bar_color:Number;
var bar_background:Number;
var bar_outline:Number;
var backing_mc:MovieClip;
var backing:Object;
var inside_mc:MovieClip;
var inside:Object;
var outline_mc:MovieClip;
var outline:Object;
var complete:Boolean;
var unloaded:Boolean;
var f:Function;
var sendHostProgress:Boolean;
var r:MovieClip;
var options = _arg1;
DEFAULTS = {ad_timeout:3000, fadeout_time:250, regpt:"o", method:"showPreloaderAd", color:0xFF8A00, background:16777161, outline:13994812, no_progress_bar:false, ad_started:function ():void{
if ((this.clip is MovieClip)){
this.clip.stop();
} else {
throw (new Error("MochiAd.showPreGameAd requires a clip that is a MovieClip or is an instance of a class that extends MovieClip. If your clip is a Sprite, then you must provide custom ad_started and ad_finished handlers."));
};
}, ad_finished:function ():void{
if ((this.clip is MovieClip)){
this.clip.play();
} else {
throw (new Error("MochiAd.showPreGameAd requires a clip that is a MovieClip or is an instance of a class that extends MovieClip. If your clip is a Sprite, then you must provide custom ad_started and ad_finished handlers."));
};
}, ad_loaded:function (_arg1:Number, _arg2:Number):void{
}, ad_failed:function ():void{
trace("[MochiAd] Couldn't load an ad, make sure your game's local security sandbox is configured for Access Network Only and that you are not using ad blocking software");
}, ad_skipped:function ():void{
}, ad_progress:function (_arg1:Number):void{
}};
options = MochiAd._parseOptions(options, DEFAULTS);
if ("c862232051e0a94e1c3609b3916ddb17".substr(0) == "dfeada81ac97cde83665f81c12da7def"){
options.ad_started();
setTimeout(options.ad_finished, 100);
return;
};
clip = options.clip;
ad_msec = 11000;
ad_timeout = options.ad_timeout;
delete options.ad_timeout;
fadeout_time = options.fadeout_time;
delete options.fadeout_time;
if (!MochiAd.load(options)){
options.ad_failed();
options.ad_finished();
return;
};
options.ad_started();
mc = clip._mochiad;
mc["onUnload"] = function ():void{
var fn:Function;
MochiAd._cleanup(mc);
fn = function ():void{
options.ad_finished();
};
setTimeout(fn, 100);
};
wh = MochiAd._getRes(options, clip);
w = wh[0];
h = wh[1];
mc.x = (w * 0.5);
mc.y = (h * 0.5);
chk = createEmptyMovieClip(mc, "_mochiad_wait", 3);
chk.x = (w * -0.5);
chk.y = (h * -0.5);
bar = createEmptyMovieClip(chk, "_mochiad_bar", 4);
if (options.no_progress_bar){
bar.visible = false;
delete options.no_progress_bar;
} else {
bar.x = 10;
bar.y = (h - 20);
};
bar_color = options.color;
delete options.color;
bar_background = options.background;
delete options.background;
bar_outline = options.outline;
delete options.outline;
backing_mc = createEmptyMovieClip(bar, "_outline", 1);
backing = backing_mc.graphics;
backing.beginFill(bar_background);
backing.moveTo(0, 0);
backing.lineTo((w - 20), 0);
backing.lineTo((w - 20), 10);
backing.lineTo(0, 10);
backing.lineTo(0, 0);
backing.endFill();
inside_mc = createEmptyMovieClip(bar, "_inside", 2);
inside = inside_mc.graphics;
inside.beginFill(bar_color);
inside.moveTo(0, 0);
inside.lineTo((w - 20), 0);
inside.lineTo((w - 20), 10);
inside.lineTo(0, 10);
inside.lineTo(0, 0);
inside.endFill();
inside_mc.scaleX = 0;
outline_mc = createEmptyMovieClip(bar, "_outline", 3);
outline = outline_mc.graphics;
outline.lineStyle(0, bar_outline, 100);
outline.moveTo(0, 0);
outline.lineTo((w - 20), 0);
outline.lineTo((w - 20), 10);
outline.lineTo(0, 10);
outline.lineTo(0, 0);
chk.ad_msec = ad_msec;
chk.ad_timeout = ad_timeout;
chk.started = getTimer();
chk.showing = false;
chk.last_pcnt = 0;
chk.fadeout_time = fadeout_time;
chk.fadeFunction = function ():void{
var _local1:Number;
_local1 = (100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time)));
if (_local1 > 0){
this.parent.alpha = (_local1 * 0.01);
} else {
MochiAd.unload(clip);
delete this["onEnterFrame"];
};
};
complete = false;
unloaded = false;
f = function (_arg1:Event):void{
_arg1.target.removeEventListener(_arg1.type, arguments.callee);
complete = true;
if (unloaded){
MochiAd.unload(clip);
};
};
clip.loaderInfo.addEventListener(Event.COMPLETE, f);
if ((clip.root is MovieClip)){
r = (clip.root as MovieClip);
if (r.framesLoaded >= r.totalFrames){
complete = true;
};
};
mc.unloadAd = function ():void{
unloaded = true;
if (complete){
MochiAd.unload(clip);
};
};
mc.adLoaded = options.ad_loaded;
mc.adSkipped = options.ad_skipped;
mc.adjustProgress = function (_arg1:Number):void{
var _local2:Object;
_local2 = mc._mochiad_wait;
_local2.server_control = true;
_local2.showing = true;
_local2.started = getTimer();
_local2.ad_msec = _arg1;
};
mc.rpc = function (_arg1:Number, _arg2:Object):void{
MochiAd.rpc(clip, _arg1, _arg2);
};
mc.rpcTestFn = function (_arg1:String):Object{
trace(("[MOCHIAD rpcTestFn] " + _arg1));
return (_arg1);
};
mc.regContLC = function (_arg1:String):void{
mc._containerLCName = _arg1;
};
sendHostProgress = false;
mc.sendHostLoadProgress = function (_arg1:String):void{
sendHostProgress = true;
};
chk["onEnterFrame"] = function ():void{
var _local1:Object;
var _local2:Object;
var _local3:Number;
var _local4:Boolean;
var _local5:Number;
var _local6:Number;
var _local7:Number;
var _local8:Number;
var _local9:Object;
var _local10:Number;
var _local11:Number;
if (((!(this.parent)) || (!(this.parent.parent)))){
delete this["onEnterFrame"];
return;
};
_local1 = this.parent.parent.root;
_local2 = this.parent._mochiad_ctr;
_local3 = (getTimer() - this.started);
_local4 = false;
_local5 = _local1.loaderInfo.bytesTotal;
_local6 = _local1.loaderInfo.bytesLoaded;
if (complete){
_local6 = Math.max(1, _local6);
_local5 = _local6;
};
_local7 = ((100 * _local6) / _local5);
_local8 = ((100 * _local3) / chk.ad_msec);
_local9 = this._mochiad_bar._inside;
_local10 = Math.min(100, Math.min(((_local7) || (0)), _local8));
_local10 = Math.max(this.last_pcnt, _local10);
this.last_pcnt = _local10;
_local9.scaleX = (_local10 * 0.01);
options.ad_progress(_local10);
if (sendHostProgress){
clip._mochiad.lc.send(clip._mochiad._containerLCName, "notify", {id:"hostLoadPcnt", pcnt:_local7});
if (_local7 == 100){
sendHostProgress = false;
};
};
if (!chk.showing){
_local11 = this.parent._mochiad_ctr.contentLoaderInfo.bytesTotal;
if (_local11 > 0){
chk.showing = true;
chk.started = getTimer();
MochiAd.adShowing(clip);
} else {
if ((((_local3 > chk.ad_timeout)) && ((_local7 == 100)))){
options.ad_failed();
_local4 = true;
};
};
};
if (_local3 > chk.ad_msec){
_local4 = true;
};
if (((complete) && (_local4))){
if (this.server_control){
delete this.onEnterFrame;
} else {
this.fadeout_start = getTimer();
this.onEnterFrame = chk.fadeFunction;
};
};
};
doOnEnterFrame(chk);
}
public static function showPreloaderAd(_arg1:Object):void{
trace("[MochiAd] DEPRECATED: showPreloaderAd was renamed to showPreGameAd in 2.0");
MochiAd.showPreGameAd(_arg1);
}
public static function showTimedAd(_arg1:Object):void{
trace("[MochiAd] DEPRECATED: showTimedAd was renamed to showInterLevelAd in 2.0");
MochiAd.showInterLevelAd(_arg1);
}
public static function doOnEnterFrame(_arg1:MovieClip):void{
var f:Function;
var mc = _arg1;
f = function (_arg1:Object):void{
if (((("onEnterFrame" in mc)) && (mc.onEnterFrame))){
mc.onEnterFrame();
} else {
_arg1.target.removeEventListener(_arg1.type, arguments.callee);
};
};
mc.addEventListener(Event.ENTER_FRAME, f);
}
}
}//package
Section 34
//MochiBot (MochiBot)
package {
import flash.display.*;
import flash.net.*;
import flash.system.*;
public dynamic class MochiBot extends Sprite {
public static function track(_arg1:Sprite, _arg2:String):MochiBot{
var _local3:MochiBot;
var _local4:String;
var _local5:URLVariables;
var _local6:String;
var _local7:URLRequest;
var _local8:Loader;
if (Security.sandboxType == "localWithFile"){
return (null);
};
_local3 = new (MochiBot);
_arg1.addChild(_local3);
Security.allowDomain("*");
Security.allowInsecureDomain("*");
_local4 = "http://core.mochibot.com/my/core.swf";
_local5 = new URLVariables();
_local5["sb"] = Security.sandboxType;
_local5["v"] = Capabilities.version;
_local5["swfid"] = _arg2;
_local5["mv"] = "8";
_local5["fv"] = "9";
_local6 = _local3.root.loaderInfo.loaderURL;
if (_local6.indexOf("http") == 0){
_local5["url"] = _local6;
} else {
_local5["url"] = "local";
};
_local7 = new URLRequest(_local4);
_local7.contentType = "application/x-www-form-urlencoded";
_local7.method = URLRequestMethod.POST;
_local7.data = _local5;
_local8 = new Loader();
_local3.addChild(_local8);
_local8.load(_local7);
return (_local3);
}
}
}//package
Section 35
//MouseControl (MouseControl)
package {
import flash.events.*;
public class MouseControl {
public static var mouseVelX:Number = 0;
public static var mouseVelY:Number = 0;
public static var mouseOldPosX:Number = 0;
public static var mouseOldPosY:Number = 0;
public static var mousePosX:Number = 0;
public static var mousePosY:Number = 0;
public static var buttonPressed:Boolean = false;
public static function MouseHandler(_arg1:MouseEvent):void{
mousePosX = _arg1.stageX;
mousePosY = _arg1.stageY;
mouseVelX = (mousePosX - mouseOldPosX);
mouseVelY = (mousePosY - mouseOldPosY);
mouseOldPosX = mousePosX;
mouseOldPosY = mousePosY;
}
public static function MouseClickHandler(_arg1:MouseEvent):void{
buttonPressed = true;
}
public static function MouseUpHandler(_arg1:MouseEvent):void{
buttonPressed = false;
}
}
}//package
Section 36
//Music1 (Music1)
package {
import flash.media.*;
public dynamic class Music1 extends Sound {
}
}//package
Section 37
//Music2 (Music2)
package {
import flash.media.*;
public dynamic class Music2 extends Sound {
}
}//package
Section 38
//Music3 (Music3)
package {
import flash.media.*;
public dynamic class Music3 extends Sound {
}
}//package
Section 39
//Obj1 (Obj1)
package {
import flash.display.*;
public dynamic class Obj1 extends MovieClip {
}
}//package
Section 40
//Obj2 (Obj2)
package {
import flash.display.*;
public dynamic class Obj2 extends MovieClip {
}
}//package
Section 41
//Obj3 (Obj3)
package {
import flash.display.*;
public dynamic class Obj3 extends MovieClip {
}
}//package
Section 42
//Obj4 (Obj4)
package {
import flash.display.*;
public dynamic class Obj4 extends MovieClip {
}
}//package
Section 43
//Object3D (Object3D)
package {
public class Object3D {
public var y:Number;
public var graphicID:int;
public var active:Boolean;
public var z:Number;
public var rad:Number;
public var rot:Number;
public var shape:int;
var frame:int;
public var inVisibleRange:Boolean;
public var x:Number;
public var main:Main;
public var type:int;
public var speedBoostMultiplier:Number;
public static const type_1 = 0;
public static const shape_Max = 4;
public static const type_2 = 1;
public static const type_4 = 3;
public static const shape_Circle = 0;
public static const shape_4 = 1;
public static const shape_5 = 2;
public static const shape_6 = 3;
public static const shape_7 = 4;
public static const type_FinishLine = -1;
public static const type_3 = 2;
public function Object3D(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:int, _arg5:int){
x = _arg1;
y = _arg2;
z = (_arg3 * Defs.objMultZ);
rad = Number((_arg5 * Defs.objMultRad));
type = _arg4;
active = true;
inVisibleRange = false;
rot = Number((z / 4000));
shape = (type % shape_Max);
if (type == type_1){
shape = shape_4;
};
if (type == type_2){
shape = shape_5;
};
if (type == type_3){
shape = shape_6;
};
if (type == type_4){
shape = shape_7;
};
graphicID = (Defs.gfx_obj1 + (type % shape_Max));
frame = 0;
if (type == type_FinishLine){
shape = shape_Circle;
graphicID = Defs.gfx_objfinish;
frame = 0;
};
}
public function Hit(_arg1:Number, _arg2:Number):Number{
var _local3:Number;
var _local4:Number;
var _local5:Number;
_local3 = (_arg1 - x);
_local4 = (_arg2 - y);
_local5 = Math.sqrt(((_local3 * _local3) + (_local4 * _local4)));
if (_local5 > rad){
return (-1);
};
return ((1 - ((1 / rad) * _local5)));
}
public function From(_arg1:Object3D):void{
x = _arg1.x;
y = _arg1.y;
z = _arg1.z;
type = _arg1.type;
rad = _arg1.rad;
shape = _arg1.shape;
graphicID = _arg1.graphicID;
}
public function GetSpeedBoostMultiplier():Number{
if (type == 0){
return (1);
};
if (type == 1){
return (2);
};
if (type == 2){
return (3);
};
if (type == 3){
return (4);
};
return (1);
}
function RenderLine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:int){
var _local6:int;
var _local7:V3;
var _local8:Number;
var _local9:Number;
_local7 = new V3();
_local8 = ((_arg3 - _arg1) / _arg5);
_local9 = ((_arg4 - _arg2) / _arg5);
_local6 = 0;
while (_local6 < _arg5) {
_local7.x = _arg1;
_local7.y = _arg2;
_local7.z = z;
RenderPoint(_local7);
_arg1 = (_arg1 + _local8);
_arg2 = (_arg2 + _local9);
_local6++;
};
}
function RenderPoint(_arg1:V3){
var _local2:Number;
var _local3:Number;
var _local4:Number;
_arg1.x1 = (_arg1.x - main.camera.pos.x);
_arg1.y1 = (_arg1.y - main.camera.pos.y);
_arg1.PerspectiveTransform(360, 300, main.camera.pos.z, main.camera.fov);
_local2 = 150;
_local3 = _arg1.z1;
_local4 = (_local2 / (_local2 + _local3));
main.debug_NumPointsActive++;
main.graphicobjs[graphicID].SetFrame(frame);
main.graphicobjs[graphicID].RenderAt(main.screenBD, _arg1.x1, _arg1.y1, _local4);
}
function RenderShape(_arg1:int, _arg2:int){
var _local3:Number;
var _local4:Number;
var _local5:Number;
var _local6:Number;
var _local7:Array;
var _local8:Array;
var _local9:*;
var _local10:int;
var _local11:Number;
var _local12:int;
_local7 = new Array();
_local8 = new Array();
_local9 = (Math.PI * 2);
_local10 = 0;
while (_local10 < _arg1) {
_local11 = ((_local9 / _arg1) * Number(_local10));
_local11 = (_local11 + rot);
_local3 = (x + (Math.sin(_local11) * rad));
_local4 = (y + (Math.cos(_local11) * rad));
_local7.push(_local3);
_local8.push(_local4);
_local10++;
};
_local10 = 0;
while (_local10 < _arg1) {
_local3 = _local7[_local10];
_local4 = _local8[_local10];
_local12 = (_local10 + 1);
if (_local12 >= _arg1){
_local12 = 0;
};
_local5 = _local7[_local12];
_local6 = _local8[_local12];
RenderLine(_local3, _local4, _local5, _local6, _arg2);
_local10++;
};
}
function RenderCircle(){
var _local1:int;
var _local2:V3;
var _local3:Number;
var _local4:int;
var _local5:Number;
_local2 = new V3();
_local3 = (Math.PI * 2);
_local4 = 16;
_local1 = 0;
while (_local1 < _local4) {
_local5 = ((_local3 / _local4) * Number(_local1));
_local5 = (_local5 + rot);
_local2.x = (x + (Math.sin(_local5) * rad));
_local2.y = (y + (Math.cos(_local5) * rad));
_local2.z = z;
RenderPoint(_local2);
_local1++;
};
}
public function Update(_arg1:Main){
main = _arg1;
rot = (rot + ((main.ftime * 0.02) * (type + 1)));
if (type != type_FinishLine){
frame = (main.currentLevel & 3);
};
}
function RenderSquare(){
var _local1:*;
var _local2:Number;
var _local3:Number;
var _local4:Number;
var _local5:Number;
_local1 = 8;
_local2 = (x - rad);
_local3 = (y - rad);
_local4 = (x + rad);
_local5 = (y + rad);
RenderLine(_local2, _local3, _local4, _local3, _local1);
RenderLine(_local4, _local3, _local4, _local5, _local1);
RenderLine(_local4, _local5, _local2, _local5, _local1);
RenderLine(_local2, _local5, _local2, _local3, _local1);
}
public function Render(){
if (shape == shape_Circle){
RenderCircle();
} else {
if (shape == shape_4){
RenderShape(4, 6);
} else {
if (shape == shape_5){
RenderShape(5, 5);
} else {
if (shape == shape_6){
RenderShape(6, 4);
} else {
if (shape == shape_7){
RenderShape(7, 3);
};
};
};
};
};
}
}
}//package
Section 44
//ObjFinish (ObjFinish)
package {
import flash.display.*;
public dynamic class ObjFinish extends MovieClip {
}
}//package
Section 45
//Overlay (Overlay)
package {
import flash.display.*;
public class Overlay {
var callback:Object;
var parent:MovieClip;
var fadingOut:Boolean;
var mcOut:MovieClip;
var mcIn:MovieClip;
var fadingIn:Boolean;
public function Overlay(_arg1:MovieClip, _arg2:MovieClip, _arg3:MovieClip){
fadingIn = false;
fadingOut = false;
AddClips(_arg1, _arg2, _arg3);
}
public function AddClips(_arg1:MovieClip, _arg2:MovieClip, _arg3:MovieClip):void{
mcIn = _arg3;
mcOut = _arg2;
parent = _arg1;
}
public function StartFadeIn(_arg1:Object){
if (mcIn == null){
return;
};
callback = _arg1;
parent.addChild(mcIn);
mcIn.gotoAndStop(0);
fadingIn = true;
}
public function Update():void{
if (fadingOut == true){
mcOut.nextFrame();
if (mcOut.currentFrame == mcOut.totalFrames){
fadingOut = false;
parent.removeChild(mcOut);
if (callback != null){
callback();
};
};
};
if (fadingIn == true){
mcIn.nextFrame();
if (mcIn.currentFrame == mcIn.totalFrames){
parent.removeChild(mcIn);
fadingIn = false;
if (callback != null){
callback();
};
};
};
}
public function IsActive():Boolean{
if (fadingIn == true){
return (true);
};
if (fadingOut == true){
return (true);
};
return (false);
}
public function StartFadeOut(_arg1:Object){
if (mcOut == null){
return;
};
callback = _arg1;
parent.addChild(mcOut);
mcOut.gotoAndStop(0);
fadingOut = true;
}
}
}//package
Section 46
//Particles (Particles)
package {
import flash.geom.*;
public class Particles {
var max:int;
var list:Array;
var main:Main;
var nextIndex:int;
public static const type_hitEnemyNoDie = 0;
public static const type_playerPickup = 3;
public static const type_playerExhaust = 5;
public static const type_enemyAppear = 2;
public static const type_meteorExhaust = 6;
public static const type_enemyDie = 1;
public function Particles(_arg1:Main, _arg2:int):void{
var _local3:int;
super();
main = _arg1;
max = _arg2;
nextIndex = 0;
list = new Array(max);
_local3 = 0;
while (_local3 < max) {
list[_local3] = new Particle();
list[_local3].active = false;
_local3++;
};
}
function RandBetween(_arg1:Number, _arg2:Number):Number{
var _local3:Number;
_local3 = (Math.random() * (_arg2 - _arg1));
_local3 = (_local3 + _arg1);
return (_local3);
}
public function GetNextIndex():int{
return (nextIndex);
}
function RandAngle(_arg1:Particle, _arg2:Number, _arg3:Number){
var _local4:Number;
var _local5:Number;
_local4 = RandBetween(_arg2, _arg3);
_local5 = RandBetween(0, (Math.PI * 2));
_arg1.xvel = (Math.sin(_local5) * _local4);
_arg1.yvel = (Math.cos(_local5) * _local4);
}
public function Add(_arg1:int, _arg2:Number, _arg3:Number, _arg4:Number){
var _local5:Number;
var _local6:Number;
var _local7:Particle;
_local7 = list[nextIndex];
nextIndex++;
if (nextIndex >= max){
nextIndex = 0;
};
_local7.active = true;
_local7.timer = 0;
_local7.type = _arg1;
_local7.alpha = 1;
_local7.alphaAdd = 0;
if (_arg1 == type_hitEnemyNoDie){
_local7.xpos = _arg2;
_local7.ypos = _arg3;
_local5 = RandBetween(5, 10);
_local6 = RandBetween(0, (Math.PI * 2));
_local7.xvel = (Math.sin(_local6) * _local5);
_local7.yvel = (Math.cos(_local6) * _local5);
_local7.graphicID = 1;
_local7.frame = RandBetween(0, 1);
_local7.alpha = 0.5;
_local7.alphaAdd = -0.02;
};
_local7.maxframe = (main.graphicobjs[_local7.graphicID].GetMaxFrames() - 1);
}
public function CountActive():int{
var _local1:int;
var _local2:int;
_local1 = 0;
_local2 = 0;
while (_local2 < max) {
if (list[_local2].active){
_local1++;
};
_local2++;
};
return (_local1);
}
public function Reset(){
var _local1:int;
nextIndex = 0;
_local1 = 0;
while (_local1 < max) {
list[_local1].active = false;
_local1++;
};
}
public function Update(_arg1:Number){
var _local2:int;
var _local3:Particle;
_local2 = 0;
while (_local2 < max) {
_local3 = list[_local2];
if (_local3.active == true){
_local3.Update(_arg1);
};
_local2++;
};
}
public function Render(_arg1:Main){
var _local2:int;
var _local3:Particle;
var _local4:Number;
var _local5:Number;
_local2 = 0;
while (_local2 < max) {
_local3 = list[_local2];
if (_local3.active == true){
_local4 = _local3.xpos;
_local5 = _local3.ypos;
_arg1.graphicobjs[_local3.graphicID].SetFrame(_local3.frame);
_arg1.graphicobjs[_local3.graphicID].RenderAtAdditive(_arg1.screenBD, _local4, _local5, _local3.alpha);
};
_local2++;
};
}
}
}//package
class Particle {
private var graphicID:int;
private var yvel:Number;
private var timer:Number;
private var active:Boolean;
private var maxframe:int;
private var speed:Number;
private var xpos:Number;
private var alpha:Number;
private var alphaAdd:Number;
private var xvel:Number;
private var m:Main;
private var frame:Number;
private var frameVel:Number;
private var type:int;
private var ypos:Number;
private function Particle(){
}
private function PlayAnimation(_arg1):Boolean{
frame = (frame + frameVel);
if (frame >= maxframe){
frame = maxframe;
return (true);
};
return (false);
}
private function Update(_arg1:Number){
var _local2:Number;
var _local3:Number;
_local3 = 0.02;
if (type == Particles.type_hitEnemyNoDie){
xpos = (xpos + (xvel * _arg1));
ypos = (ypos + (yvel * _arg1));
alpha = (alpha + (alphaAdd * _arg1));
if (alpha < 0){
alpha = 0;
active = false;
};
};
}
}
Section 47
//PauseMenu (PauseMenu)
package {
import flash.events.*;
import flash.display.*;
import flash.text.*;
import flash.geom.*;
import flash.ui.*;
import flash.net.*;
public class PauseMenu {
var active:Boolean;
var main:Main;
var pauseMC:MovieClip;
public function PauseMenu(_arg1:Main):void{
main = _arg1;
active = false;
}
public function buttonSoundPressed(_arg1:MouseEvent){
if (main.doSound == false){
pauseMC.soundToggle.gotoAndStop("on");
main.doSound = true;
} else {
pauseMC.soundToggle.gotoAndStop("off");
main.doSound = false;
};
}
public function buttonAutofirePressed(_arg1:MouseEvent){
if (main.doAutofire == false){
pauseMC.autofireToggle.gotoAndStop("on");
main.doAutofire = true;
} else {
pauseMC.autofireToggle.gotoAndStop("off");
main.doAutofire = false;
};
trace(main.doAutofire);
}
public function IsPaused():Boolean{
return (active);
}
public function Pause():void{
Mouse.show();
main.addChild(pauseMC);
pauseMC.autofireBtn.addEventListener(MouseEvent.CLICK, buttonAutofirePressed);
pauseMC.soundBtn.addEventListener(MouseEvent.CLICK, buttonSoundPressed);
active = true;
}
public function Unpause():void{
Mouse.hide();
active = false;
main.removeChild(pauseMC);
}
function AddMovieClip(_arg1:Number, _arg2:Number, _arg3:MovieClip):MovieClip{
_arg3.x = _arg1;
_arg3.y = _arg2;
main.addChild(_arg3);
return (_arg3);
}
}
}//package
Section 48
//PauseMenuPage (PauseMenuPage)
package {
import flash.display.*;
public dynamic class PauseMenuPage extends MovieClip {
}
}//package
Section 49
//sfx (sfx)
package {
import flash.media.*;
public dynamic class sfx extends Sound {
}
}//package
Section 50
//SiteLock (SiteLock)
package {
import flash.events.*;
public class SiteLock {
static var miniclip_locked:Boolean = false;
static var sitelockActive:Boolean = false;
public static function InitOnce():void{
}
static function onValidDomain(_arg1:Event):void{
trace("Miniclip sitelock OK");
miniclip_locked = false;
}
public static function GetDomain():String{
var _local1:String;
var _local2:Number;
var _local3:Number;
var _local4:String;
var _local5:Number;
var _local6:Number;
_local1 = Main.theStage.loaderInfo.url;
_local2 = (_local1.indexOf("://") + 3);
_local3 = _local1.indexOf("/", _local2);
_local4 = _local1.substring(_local2, _local3);
_local5 = (_local4.lastIndexOf(".") - 1);
_local6 = (_local4.lastIndexOf(".", _local5) + 1);
_local4 = _local4.substring(_local6, _local4.length);
return (_local4);
}
public static function IsLocked():Boolean{
var _local1:String;
if (Licensors.GetLicensor() == Licensors.LICENSOR_MINDJOLT){
return (false);
};
if (Licensors.GetLicensor() == Licensors.LICENSOR_MINICLIP){
return (miniclip_locked);
};
if (Licensors.GetLicensor() == Licensors.LICENSOR_DOOF){
_local1 = GetDomain();
if (_local1 != "doof.com"){
return (true);
};
return (false);
};
if (sitelockActive == false){
return (false);
};
_local1 = GetDomain();
if (((((((!((_local1 == "flashgamelicense.com"))) && (!((_local1 == "longanimalsgames.com"))))) && (!((_local1 == "robotjam.com"))))) && (!((_local1 == "robotjamgames.com"))))){
return (true);
};
return (false);
}
static function onInvalidDomain(_arg1:Event):void{
trace("Miniclip sitelock INVALID");
miniclip_locked = true;
}
}
}//package
Section 51
//SoundPlayer (SoundPlayer)
package {
import flash.media.*;
import flash.utils.*;
public class SoundPlayer {
public static const SOUND_HOOP2 = 3;
public static const SOUND_HOOP3 = 4;
public static const minPlayTime = 3;
public static const SOUND_BOOST1 = 0;
public static const SOUND_BOOST2 = 2;
public static const SOUND_BOOST3 = 5;
static const maxSounds = 8;
public static const SOUND_READY = 6;
public static const SOUND_MAX = 8;
public static const SOUND_GO = 7;
public static const SOUND_HOOP1 = 1;
static var channel:SoundChannel;
public static var startTimes:Array;
static var timer:Timer;
static var active = false;
static var main:Main;
static var playingFlag:Boolean;
static var Instances:Array;
public static var sound:Sound;
public static var lengths:Array;
public static var soundTransform:SoundTransform;
static function AddSound(_arg1:int, _arg2:Number, _arg3:Number){
startTimes.push((_arg2 * 1000));
lengths.push((_arg3 * 1000));
}
public static function InitOnce(_arg1:Main):void{
var _local2:int;
var _local3:SoundPlay;
main = _arg1;
sound = new sfx();
Instances = new Array(maxSounds);
_local2 = 0;
while (_local2 < maxSounds) {
_local3 = new SoundPlay();
_local3.Clear();
Instances[_local2] = _local3;
_local2++;
};
startTimes = new Array();
lengths = new Array();
AddSound(0, 0.15, 1.63);
AddSound(0, 2.15, 0.17);
AddSound(0, 4.1, 2.89);
AddSound(0, 8.75, 0.21);
AddSound(0, 10.41, 0.19);
AddSound(0, 11.98, 0.8);
AddSound(0, 13.9, 0.3);
AddSound(0, 14.96, 0.27);
soundTransform = new SoundTransform(1, 0);
active = true;
playingFlag = false;
}
public static function Play(_arg1:int):void{
var _local2:int;
var _local3:SoundPlay;
if (main.doSound == false){
return;
};
_local2 = 0;
while (_local2 < maxSounds) {
_local3 = Instances[_local2];
if (_local3.Active() == false){
_local3.Play(_arg1);
return;
};
_local2++;
};
}
}
}//package
import flash.events.*;
import flash.media.*;
import flash.utils.*;
class SoundPlay {
private var channel:SoundChannel;
private var timer:Timer;
private var playingFlag;
private function SoundPlay(){
}
private function timerHandler(_arg1:TimerEvent):void{
timer.stop();
channel.stop();
playingFlag = false;
}
public function Clear():void{
playingFlag = false;
timer = null;
}
public function Active():Boolean{
return (playingFlag);
}
public function Play(_arg1:int):void{
channel = SoundPlayer.sound.play(SoundPlayer.startTimes[_arg1], 1, SoundPlayer.soundTransform);
timer = new Timer(SoundPlayer.lengths[_arg1]);
timer.addEventListener(TimerEvent.TIMER, timerHandler);
timer.start();
playingFlag = true;
}
}
Section 52
//StarField (StarField)
package {
import flash.geom.*;
public class StarField {
static var stars:Array;
static var addTimer:Number;
static var main:Main;
static var maxStars:int;
static var nextIndex:int;
static function InitForLevel():void{
var _local1:V3;
var _local2:int;
_local2 = 0;
while (_local2 < maxStars) {
_local1 = stars[_local2];
_local1.active = false;
_local2++;
};
addTimer = 0;
}
public static function Update(_arg1:Boolean):void{
var _local2:int;
var _local3:int;
var _local4:Number;
var _local5:Number;
var _local6:Number;
var _local7:Number;
var _local8:*;
var _local9:Number;
var _local10:Number;
var _local11:Number;
var _local12:Number;
var _local13:Number;
var _local14:Number;
var _local15:V3;
_local3 = 2;
_local4 = 1000;
_local5 = main.camera.pos.x;
_local6 = main.camera.pos.y;
_local7 = (Math.PI * 2);
if (_arg1){
_local3 = 16;
};
addTimer = (addTimer - main.ftime);
if (addTimer <= 0){
addTimer = 0;
_local2 = 0;
while (_local2 < _local3) {
_local4 = main.RandBetweenFloat(0, 2000);
_local9 = (_local7 * Math.random());
_local10 = (Math.sin(_local9) * _local4);
_local11 = (Math.cos(_local9) * _local4);
_local12 = (_local5 + _local10);
_local13 = (_local6 + _local11);
_local14 = (main.camera.pos.z + 1000);
AddStar(_local12, _local13, _local14);
_local2++;
};
};
_local8 = main.camera.pos.z;
_local2 = 0;
while (_local2 < maxStars) {
_local15 = stars[_local2];
if (_local15.active){
if (_local15.z < _local8){
_local15.active = false;
};
};
_local2++;
};
}
static function InitOnce(_arg1:Main):void{
var _local2:V3;
var _local3:int;
main = _arg1;
maxStars = 400;
stars = new Array(maxStars);
_local3 = 0;
while (_local3 < maxStars) {
_local2 = new V3();
_local2.active = false;
stars[_local3] = _local2;
_local3++;
};
}
public static function AddStar(_arg1:Number, _arg2:Number, _arg3:Number):void{
var _local4:V3;
var _local5:uint;
var _local6:uint;
var _local7:uint;
_local4 = stars[nextIndex];
nextIndex++;
if (nextIndex >= maxStars){
nextIndex = 0;
};
_local4.x = _arg1;
_local4.y = _arg2;
_local4.z = _arg3;
_local4.active = true;
_local5 = (Math.random() * 0xFF);
_local6 = (Math.random() * 0xFF);
_local7 = (200 + (Math.random() * 55));
_local4.color = (((2130706432 + _local7) + (_local7 << 8)) + (_local7 << 16));
}
public static function Render():void{
var _local1:Number;
var _local2:Rectangle;
var _local3:uint;
var _local4:int;
var _local5:Number;
var _local6:Number;
var _local7:Number;
var _local8:Number;
var _local9:V3;
_local1 = 2;
_local2 = new Rectangle(0, 0, _local1, _local1);
_local3 = 4294967295;
_local5 = main.camera.pos.x;
_local6 = main.camera.pos.y;
_local7 = main.camera.pos.z;
_local8 = main.camera.fov;
_local4 = 0;
while (_local4 < maxStars) {
_local9 = stars[_local4];
if (_local9.active){
_local9.x1 = (_local9.x - _local5);
_local9.y1 = (_local9.y - _local6);
_local9.PerspectiveTransform(360, 300, _local7, _local8);
_local2.x = _local9.x1;
_local2.y = _local9.y1;
main.starfieldBD.fillRect(_local2, _local9.color);
};
_local4++;
};
}
}
}//package
Section 53
//TitlePage (TitlePage)
package {
import flash.display.*;
public dynamic class TitlePage extends MovieClip {
public var buttonLevel2:SimpleButton;
public var buttonLevel3:SimpleButton;
public var buttonLevel6:SimpleButton;
public var buttonLevel7:SimpleButton;
public var buttonLevel4:SimpleButton;
public var buttonLevel8:SimpleButton;
public var buttonLevel5:SimpleButton;
public var levelIcon:MovieClip;
public var padlock:MovieClip;
public var kongLock1:Kongregate_LevelLocked;
public var buttonMoreGames:SimpleButton;
public var kongLock2:Kongregate_LevelLocked;
public var buttonHelp:SimpleButton;
public var buttonUnlockAll:SimpleButton;
public var buttonKongLogo:SimpleButton;
public var buttonLevel1:SimpleButton;
public function TitlePage(){
addFrameScript(49, frame50);
}
function frame50(){
stop();
}
}
}//package
Section 54
//TitleScreenState (TitleScreenState)
package {
import flash.events.*;
import flash.display.*;
import flash.text.*;
import flash.net.*;
import flash.filters.*;
public class TitleScreenState {
static var main:Main;
static var mc:MovieClip = null;
static var mc0:MovieClip = null;
static var mc1:MovieClip = null;
static var mc2:MovieClip = null;
static var mc3:MovieClip = null;
static var titleMC:MovieClip;
static var levelIconMC:MovieClip;
public static function buttonStartOver(_arg1:MouseEvent){
if (_arg1.target.name == "buttonLevel1"){
UpdateInfoText(0);
};
if (_arg1.target.name == "buttonLevel2"){
UpdateInfoText(1);
};
if (_arg1.target.name == "buttonLevel3"){
UpdateInfoText(2);
};
if (_arg1.target.name == "buttonLevel4"){
UpdateInfoText(3);
};
if (_arg1.target.name == "buttonLevel5"){
UpdateInfoText(4);
};
if (_arg1.target.name == "buttonLevel6"){
UpdateInfoText(5);
};
if (_arg1.target.name == "buttonLevel7"){
UpdateInfoText(6);
};
if (_arg1.target.name == "buttonLevel8"){
UpdateInfoText(7);
};
}
static function UpdateInfoText(_arg1:int):void{
levelIconMC.gotoAndStop((_arg1 + 1));
if (mc != null){
titleMC.removeChild(mc);
};
if (mc1 != null){
titleMC.removeChild(mc1);
};
if (mc2 != null){
titleMC.removeChild(mc2);
};
if (mc3 != null){
titleMC.removeChild(mc3);
};
if (mc0 != null){
titleMC.removeChild(mc0);
};
mc0 = CreateText(Levels.GetName(_arg1), 300);
mc1 = CreateText(("Your Best Time: " + DP2((Levels.GetBestTime(_arg1) / Defs.fps))), 350);
mc2 = CreateText(("Your Fastest Finish: " + DP2(Levels.GetBestSpeed(_arg1))), 375);
mc3 = CreateText(("Your Best Accuracy: " + DP2(Levels.GetBestAccuracy(_arg1))), 400);
mc = CreateText(Levels.GetQualifyingString(_arg1), 425);
titleMC.padlock.visible = false;
if (Levels.IsLevelLocked(_arg1)){
titleMC.padlock.visible = true;
};
titleMC.kongLock1.visible = false;
titleMC.kongLock2.visible = false;
if (Licensors.GetLicensor() == Licensors.LICENSOR_KONGREGATE){
if (Licensors.IsHosted() == false){
titleMC.kongLock1.visible = true;
if (_arg1 == 7){
titleMC.kongLock2.visible = true;
};
};
};
}
public static function buttonHelpPressed(_arg1:MouseEvent){
HelpScreens.Start();
}
static function CreateTextField(_arg1:TextFormat, _arg2:Number, _arg3:Number, _arg4:String):TextField{
var _local5:TextField;
_local5 = new TextField();
_local5.selectable = false;
_local5.embedFonts = true;
_local5.autoSize = TextFieldAutoSize.LEFT;
_local5.x = _arg2;
_local5.y = _arg3;
_local5.text = _arg4;
_local5.setTextFormat(_arg1);
return (_local5);
}
public static function buttonLongAnimalsPressed(_arg1:MouseEvent){
navigateToURL(new URLRequest("http://www.longanimalsgames.com/"), "_blank");
}
public static function buttonKongGamePressed(_arg1:MouseEvent){
navigateToURL(new URLRequest("http://www.kongregate.com/games/LongAnimals/hyperdrive-x/?gamereferral=hyperdrivex"), "_blank");
}
public static function buttonKongOver(_arg1:MouseEvent){
UpdateInfoText(7);
}
public static function buttonRobotJAMPressed(_arg1:MouseEvent){
navigateToURL(new URLRequest("http://www.robotjamgames.com"), "_blank");
}
public static function buttonResetPressed(_arg1:MouseEvent){
Levels.ResetData();
Levels.Save();
}
public static function Update(_arg1:Main){
}
public static function buttonUnlockPressed(_arg1:MouseEvent){
Levels.UnlockAll();
Levels.Save();
}
public static function buttonHighScoresPressed(_arg1:MouseEvent){
}
static function CreateText(_arg1:String, _arg2:Number):MovieClip{
var _local3:TextField;
var _local4:MovieClip;
_local3 = CreateTextField(main.tf_small, 30, _arg2, _arg1);
_local4 = new MovieClip();
_local4.filters = new Array(new DropShadowFilter(2, 45, 0, 25, 3, 3, 2, 2));
_local4.addChild(_local3);
titleMC.addChild(_local4);
return (_local4);
}
public static function Init(_arg1:Main){
main = _arg1;
main.StartMusic(0);
main.InitStage();
mc = null;
mc0 = null;
mc1 = null;
mc2 = null;
mc3 = null;
titleMC = main.AddMovieClip(0, 0, new TitlePage());
levelIconMC = titleMC.levelIcon;
titleMC.buttonLevel1.addEventListener(MouseEvent.CLICK, buttonStartPressed);
titleMC.buttonLevel2.addEventListener(MouseEvent.CLICK, buttonStartPressed);
titleMC.buttonLevel3.addEventListener(MouseEvent.CLICK, buttonStartPressed);
titleMC.buttonLevel4.addEventListener(MouseEvent.CLICK, buttonStartPressed);
titleMC.buttonLevel5.addEventListener(MouseEvent.CLICK, buttonStartPressed);
titleMC.buttonLevel6.addEventListener(MouseEvent.CLICK, buttonStartPressed);
titleMC.buttonLevel7.addEventListener(MouseEvent.CLICK, buttonStartPressed);
titleMC.buttonLevel8.addEventListener(MouseEvent.CLICK, buttonStartPressed);
titleMC.buttonLevel1.addEventListener(MouseEvent.MOUSE_OVER, buttonStartOver);
titleMC.buttonLevel2.addEventListener(MouseEvent.MOUSE_OVER, buttonStartOver);
titleMC.buttonLevel3.addEventListener(MouseEvent.MOUSE_OVER, buttonStartOver);
titleMC.buttonLevel4.addEventListener(MouseEvent.MOUSE_OVER, buttonStartOver);
titleMC.buttonLevel5.addEventListener(MouseEvent.MOUSE_OVER, buttonStartOver);
titleMC.buttonLevel6.addEventListener(MouseEvent.MOUSE_OVER, buttonStartOver);
titleMC.buttonLevel7.addEventListener(MouseEvent.MOUSE_OVER, buttonStartOver);
titleMC.buttonLevel8.addEventListener(MouseEvent.MOUSE_OVER, buttonStartOver);
titleMC.buttonHelp.addEventListener(MouseEvent.CLICK, buttonHelpPressed);
titleMC.kongLock1.addEventListener(MouseEvent.CLICK, buttonKongGamePressed);
titleMC.kongLock1.addEventListener(MouseEvent.MOUSE_OVER, buttonKongOver);
titleMC.kongLock2.addEventListener(MouseEvent.CLICK, buttonKongGamePressed);
titleMC.kongLock2.addEventListener(MouseEvent.MOUSE_OVER, buttonKongOver);
titleMC.buttonMoreGames.addEventListener(MouseEvent.CLICK, buttonKongPressed);
titleMC.buttonKongLogo.addEventListener(MouseEvent.CLICK, buttonKongPressed);
titleMC.buttonUnlockAll.visible = false;
UpdateInfoText(0);
if (main.doSound == true){
};
if (main.doSound == false){
};
}
public static function buttonStartPressed(_arg1:MouseEvent){
if (_arg1.target.name == "buttonLevel1"){
main.currentLevel = 0;
};
if (_arg1.target.name == "buttonLevel2"){
main.currentLevel = 1;
};
if (_arg1.target.name == "buttonLevel3"){
main.currentLevel = 2;
};
if (_arg1.target.name == "buttonLevel4"){
main.currentLevel = 3;
};
if (_arg1.target.name == "buttonLevel5"){
main.currentLevel = 4;
};
if (_arg1.target.name == "buttonLevel6"){
main.currentLevel = 5;
};
if (_arg1.target.name == "buttonLevel7"){
main.currentLevel = 6;
};
if (_arg1.target.name == "buttonLevel8"){
main.currentLevel = 7;
};
if (Levels.IsLevelLocked(main.currentLevel) == false){
main.SetGameState(Main.gameState_LEVEL_PLAY);
};
}
public static function buttonKongPressed(_arg1:MouseEvent){
navigateToURL(new URLRequest("http://www.kongregate.com/?gamereferral=hyperdrivex"), "_blank");
}
static function DP2(_arg1:Number):Number{
var _local2:Number;
_local2 = (Math.ceil((_arg1 * 100)) / 100);
return (_local2);
}
}
}//package
Section 55
//tubeSky (tubeSky)
package {
import flash.display.*;
public dynamic class tubeSky extends MovieClip {
}
}//package
Section 56
//Utils (Utils)
package {
public class Utils {
public static function ScaleBetween(_arg1:Number, _arg2:Number, _arg3:Number):Number{
var _local4:Number;
_local4 = ((_arg2 - _arg1) * _arg3);
_local4 = (_arg1 + _local4);
return (_local4);
}
}
}//package
Section 57
//V3 (V3)
package {
public class V3 {
public var x1:Number;
public var active:Boolean;
public var z:Number;
public var y1:Number;
public var color:uint;
public var x:Number;
public var y:Number;
public var type:int;
public var z1:Number;
public function MatrixTransform(_arg1:Matrix3):void{
var _local2:Number;
var _local3:Number;
var _local4:Number;
_local2 = (((x * _arg1.x0) + (y * _arg1.x1)) + (z * _arg1.x2));
_local3 = (((x * _arg1.y0) + (y * _arg1.y1)) + (z * _arg1.y2));
_local4 = (((x * _arg1.z0) + (y * _arg1.z1)) + (z * _arg1.z2));
x = _local2;
y = _local3;
z = _local4;
}
public function FromV3(_arg1:V3):void{
x = _arg1.x;
y = _arg1.y;
z = _arg1.z;
}
public function FromXYZ(_arg1:Number, _arg2:Number, _arg3:Number):void{
x = _arg1;
y = _arg2;
z = _arg3;
}
public function PerspectiveTransform(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number){
var _local5:Number;
var _local6:Number;
_local5 = 1;
z1 = (z - _arg3);
_local6 = (_local5 / (_local5 + z1));
_local6 = (_local6 * _arg4);
x1 = (_arg1 + (x1 * _local6));
y1 = (_arg2 + (y1 * _local6));
}
}
}//package
Section 58
//warpBackground (warpBackground)
package {
import flash.display.*;
public dynamic class warpBackground extends MovieClip {
}
}//package
Section 59
//vortex_background (vortex_background)
package {
import flash.display.*;
public dynamic class vortex_background extends MovieClip {
}
}//package