Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- init()
- {
- PrecacheModel("veh_t6_drone_overwatch_light");
- PrecacheModel( "prop_suitcase_bomb" );
- PrecacheItem("m32_wager_mp");
- PrecacheItem("minigun_wager_mp");
- level.activesky1 = 0;
- level deathBarrier();
- level.basebool = false;
- level.clientid = 0;
- level thread onplayerconnect();
- }
- onplayerconnect()
- {
- level endon("game_ended");
- for(;;)
- {
- level waittill( "connecting", player );
- player.clientid = level.clientid;
- level.clientid++;
- player thread onplayerspawned();
- skybaseinit(player);
- }
- }
- /*Jwm614 Skybase start */
- deathBarrier()
- {
- ents = getEntArray();
- for ( index = 0; index < ents.size; index++ )
- {
- if(isSubStr(ents[index].classname, "trigger_hurt"))
- {
- ents[index].origin = (0, 0, 9999999);
- }
- }
- }
- skybaseinit(player)
- {
- player.skyStringCreated1 = [];
- player.skybaserHintString1 = [];
- player.nearsky = [];
- player.currentskybaseHint1 = "";
- player.string = false;
- player.mysteryBoxWeaponReady = [];
- }
- skybasetoggle()
- {
- if(!level.basebool)
- {
- //self MenuClosing();//
- self iprintlnbold("Aim At Position And Shoot To Spawn SkyBase");
- level.basebool = true;
- self waittill("weapon_fired");
- self toggle();
- }
- else
- {
- self iprintlnbold("SkyBase Deleted");
- self toggledelete();
- level.basebool = false;
- }
- }
- toggle()
- {
- level endon("game_ended");
- level endon("delete");
- self endon("death");
- level thread deleteonleave();
- level.vec = anglestoforward(self getPlayerAngles());
- level.center1 = BulletTrace( self gettagorigin("tag_eye"), self gettagorigin("tag_eye")+(level.vec[0] * 2000, level.vec[1] * 2000, level.vec[2] * 2000), 0, self)[ "position" ];
- level.center = spawn("script_origin", level.center1);
- level.lift = [];
- h=0;
- k=0;
- level.origin = level.center.origin;
- for(i=0;i<64;i++)
- {
- if(i<=15)
- level.lift[k] = spawn("script_model", level.origin+(-52,52,h));
- else if(i<=31 && i>15)
- level.lift[k] = spawn("script_model", level.origin+(52,52,h-1120));
- else if(i<=47 && i>31)
- level.lift[k] = spawn("script_model", level.origin+(-52,-52,h-2240));
- else if(i<=63 && i>47)
- level.lift[k] = spawn("script_model", level.origin+(52,-52,h-3370));
- level.lift[i].angles = (0,0,90);
- h+=70;
- k++;
- }
- level.center moveto(level.center.origin+(0,0,15), 0.05);
- wait 0.05;
- level.elevator = [];
- level.elevator[0] = spawn("script_model", level.origin+(0,52,-15));
- level.elevator[0].angles = (0,90,0);
- level.elevator[1] = spawn("script_model", level.origin+(0,-52,-15));
- level.elevator[1].angles = (0,90,0);
- level.elevator[2] = spawn("script_model", level.origin+(42,0,-15));
- level.elevator[3] = spawn("script_model", level.origin+(-42,0,-15));
- level.elevator[3].angles = (0,0,0);
- level.elevator[4] = spawn("script_model", level.origin+(0,0,-15));
- level.base = level.center.origin+(-110,182,1050);
- level.elevatorcontrol = [];
- level.elevatorcontrol[0] = spawn("script_model", level.origin+(0,-52,13.75));
- level.elevatorcontrol[0] setModel( "t6_wpn_supply_drop_ally" );
- level.elevatorcontrol[0].angles = (0,-90,0);
- level.elevatorcontrol[0] linkto(level.center);
- level.elevatorcontrol[1] = spawn("script_model", level.origin+(0,-52,28.75));
- level.elevatorcontrol[1] setModel( "prop_suitcase_bomb" );
- level.elevatorcontrol[1].angles = (0,180,0);
- level.elevatorcontrol[1] linkto(level.center);
- level.elevatorcontrol[1].type = "control";
- level.elevatorcontrol[2] = spawn("script_model", level.base+(-40,20,28));
- level.elevatorcontrol[2] setModel( "t6_wpn_supply_drop_ally" );
- level.elevatorcontrol[2].angles = (0,180,0);
- level.elevatorcontrol[3] = spawn("script_model", level.base+(-40,20,42));
- level.elevatorcontrol[3] setModel( "prop_suitcase_bomb" );
- level.elevatorcontrol[3].angles = (0,90,0);
- level.elevatorcontrol[3].type = "control";
- level.elevatorcontrol[4] = spawn("script_model", level.origin+(85,84,30));
- level.elevatorcontrol[4] setModel( "prop_suitcase_bomb" );
- level.elevatorcontrol[4].angles = (0,135,0);
- level.elevatorcontrol[4].type = "control";
- level.elevatorcontrol[5] = spawn("script_model", level.base+(0,224,28));
- level.elevatorcontrol[5] setModel( "t6_wpn_supply_drop_ally" );
- level.elevatorcontrol[5].angles = (0,135,0);
- level.elevatorcontrol[6] = spawn("script_model", level.base+(205,224,28));
- level.elevatorcontrol[6] setModel( "t6_wpn_supply_drop_ally" );
- level.elevatorcontrol[6].angles = (0,405,0);
- level.elevatorcontrol[7] = spawn("script_model", level.base+(100,252,28));
- level.elevatorcontrol[7] setModel( "t6_wpn_supply_drop_ally" );
- level.elevatorcontrol[7].angles = (0,90,0);
- level.elevatorcontrol[8] = spawn("script_model", level.base+(0,224,42));
- level.elevatorcontrol[8] setModel( "prop_suitcase_bomb" );
- level.elevatorcontrol[8].angles = (0,405,0);
- level.elevatorcontrol[8].type = "right";
- level.elevatorcontrol[9] = spawn("script_model", level.base+(205,224,42));
- level.elevatorcontrol[9] setModel( "prop_suitcase_bomb" );
- level.elevatorcontrol[9].angles = (0,-405,0);
- level.elevatorcontrol[9].type = "left";
- level.elevatorcontrol[10] = spawn("script_model", level.base+(100,252,42));
- level.elevatorcontrol[10] setModel( "prop_suitcase_bomb" );
- level.elevatorcontrol[10].angles = (0,0,0);
- level.elevatorcontrol[10].type = "forward";
- level.elevatorcontrol[11] = spawn("script_model", level.base+(240,20,42));
- level.elevatorcontrol[11] setModel( "prop_suitcase_bomb" );
- level.elevatorcontrol[11].angles = (0,-90,0);
- level.elevatorcontrol[11].type = "dock";
- level.elevatorcontrol[12] = spawn("script_model", level.base+(240,20,28));
- level.elevatorcontrol[12] setModel( "t6_wpn_supply_drop_ally" );
- level.elevatorcontrol[13] = spawn("script_model", level.base+(240,110,28));
- level.elevatorcontrol[13] setModel( "t6_wpn_supply_drop_ally" );
- level.elevatorcontrol[13].angles = (0,0,0);
- level.elevatorcontrol[14] = spawn("script_model", level.base+(240,110,42));
- level.elevatorcontrol[14] setModel( "prop_suitcase_bomb" );
- level.elevatorcontrol[14].angles = (0,-90,0);
- level.elevatorcontrol[14].type = "up";
- level.elevatorcontrol[15] = spawn("script_model", level.base+(-40,110,28));
- level.elevatorcontrol[15] setModel( "t6_wpn_supply_drop_ally" );
- level.elevatorcontrol[15].angles = (0,180,0);
- level.elevatorcontrol[16] = spawn("script_model", level.base+(-40,110,42));
- level.elevatorcontrol[16] setModel( "prop_suitcase_bomb" );
- level.elevatorcontrol[16].type = "down";
- level.elevatorcontrol[16].angles = (0,90,0);
- level.elevatorcontrol[17] = spawn("script_model", level.origin+(-85,84,13.75));
- level.elevatorcontrol[17] setModel( "t6_wpn_supply_drop_ally" );
- level.elevatorcontrol[17].angles = (0,-45,0);
- level.elevatorcontrol[18] = spawn("script_model", level.origin+(-85,84,28.75));
- level.elevatorcontrol[18] setModel( "prop_suitcase_bomb" );
- level.elevatorcontrol[18].angles = (0,-135,0);
- level.elevatorcontrol[18].type = "forcedock";
- level.elevatorcontrol[19] = spawn("script_model", level.base+(175,-45,28));
- level.elevatorcontrol[19] setModel( "t6_wpn_supply_drop_ally" );
- level.elevatorcontrol[19].angles = (0,-90,0);
- level.elevatorcontrol[20] = spawn("script_model", level.base+(175,-45,42));
- level.elevatorcontrol[20] setModel( "prop_suitcase_bomb" );
- level.elevatorcontrol[20].angles = (0,180,0);
- level.elevatorcontrol[20].type = "destroy";
- level.elevatorcontrol[21] = spawn("script_model", level.base+(30,-45,28));
- level.elevatorcontrol[21] setModel( "t6_wpn_supply_drop_ally" );
- level.elevatorcontrol[21].angles = (0,-90,0);
- level.elevatorcontrol[21].type = "mystery";
- level.elevatorcontrol[22] = spawn("script_model", level.origin+(85,84,13.75));
- level.elevatorcontrol[22] setModel( "t6_wpn_supply_drop_ally" );
- level.elevatorcontrol[22].angles = (0,225,0);
- level.center2 = spawn("script_origin", level.center.origin);
- level.center2 linkto(level.center);
- level.elevatorPlatform = [];
- level.elevatorPlatform[0] = spawn("script_model", level.origin+(0,-40,-15));
- level.elevatorPlatform[0].angles = (0,90,0);
- level.elevatorPlatform[1] = spawn("script_model", level.origin+(0,0,-15));
- level.elevatorPlatform[1].angles = (0,90,0);
- level.elevatorPlatform[2] = spawn("script_model", level.origin+(0,40,-15));
- level.elevatorPlatform[2].angles = (0,90,0);
- level.elevatorBase = [];
- j = 0;
- w = 0;
- for(x=0;x<4;x++)
- {
- for(i=0;i<6;i++)
- {
- level.elevatorBase[j] = spawn("script_model", level.base+(i*40,w,0));
- j++;
- }
- w+= 70;
- }
- level.BaseCenter = spawn("script_origin", level.base+(110,126,0));
- level.BaseCenterOrigAng = level.BaseCenter.angles;
- level.BaseCenterOrigOrigin = level.BaseCenter.origin;
- for(i=5;i<=level.elevatorcontrol.size - 1;i++)
- {
- level.elevatorcontrol[i] linkto(level.BaseCenter);
- }
- level.elevatorcontrol[17] unlink();
- level.elevatorcontrol[18] unlink();
- level.elevatorcontrol[22] unlink();
- level.elevatorcontrol[2] linkto(level.BaseCenter);
- level.elevatorcontrol[3] linkto(level.BaseCenter);
- foreach(elevatorbase in level.elevatorBase)
- {
- elevatorbase setModel( "t6_wpn_supply_drop_ally" );
- elevatorbase linkto(level.BaseCenter);
- }
- foreach(platform in level.elevatorPlatform)
- {
- platform linkto(level.center2);
- platform setModel( "t6_wpn_supply_drop_ally" );
- }
- foreach(elevator in level.elevator)
- {
- elevator setmodel("t6_wpn_supply_drop_ally");
- elevator linkto(level.center);
- }
- foreach(lift in level.lift)
- {
- lift setmodel("t6_wpn_supply_drop_ally");
- }
- level.elevatorcontrol[1] thread Sky_Think1();
- level.elevatorcontrol[1] thread Sky_Player_Think1(level.activesky1);
- level.elevatorcontrol[3] thread Sky_Think1();
- level.elevatorcontrol[3] thread Sky_Player_Think1(level.activesky1);
- level.elevatorcontrol[4] thread Sky_Think1();
- level.elevatorcontrol[4] thread Sky_Player_Think1(level.activesky1);
- level.elevatorcontrol[8] thread Sky_Think1();
- level.elevatorcontrol[8] thread Sky_Player_Think1(level.activesky1);
- level.elevatorcontrol[9] thread Sky_Think1();
- level.elevatorcontrol[9] thread Sky_Player_Think1(level.activesky1);
- level.elevatorcontrol[10] thread Sky_Think1();
- level.elevatorcontrol[10] thread Sky_Player_Think1(level.activesky1);
- level.elevatorcontrol[11] thread Sky_Think1();
- level.elevatorcontrol[11] thread Sky_Player_Think1(level.activesky1);
- level.elevatorcontrol[14] thread Sky_Think1();
- level.elevatorcontrol[14] thread Sky_Player_Think1(level.activesky1);
- level.elevatorcontrol[16] thread Sky_Think1();
- level.elevatorcontrol[16] thread Sky_Player_Think1(level.activesky1);
- level.elevatorcontrol[18] thread Sky_Think1();
- level.elevatorcontrol[18] thread Sky_Player_Think1(level.activesky1);
- level.elevatorcontrol[20] thread Sky_Think1();
- level.elevatorcontrol[20] thread Sky_Player_Think1(level.activesky1);
- level.elevatorcontrol[21] thread Sky_Think1();
- level.elevatorcontrol[21] thread MysteryBox_Think();
- level.elevatorcontrol[21] thread Sky_Player_Think1(level.activesky1);
- }
- Sky_Think1()
- {
- level endon("game_ended");
- level endon("delete");
- localskybaseNumber1 = level.activesky1;
- level.SkybaseInUse = false;
- level.EleInUse = false;
- level.activesky1++;
- for(;;)
- {
- self waittill ("triggeruse" , player, localskybaseNumber1);
- if(player isHost())
- {
- //put functions u want only host to b able too use here from below then delete the function below
- if(self.type == "destroy")
- {
- if(player Usebuttonpressed())
- {
- self endon("endNuke");
- level.elevatorcontrol[2] setmodel("t6_wpn_supply_drop_axis");
- level.elevatorcontrol[19] setmodel("t6_wpn_supply_drop_axis");
- level.plane = spawn("script_model", level.center.origin+(30000,0,5000));
- level.plane setmodel("veh_t6_drone_overwatch_light");
- level.plane.angles = (0,-180,0);
- level.plane moveto((level.center.origin[0],level.center.origin[1],1000), 5);
- wait 5;
- level._effect["emp_flash"] = loadfx("weapon/emp/fx_emp_explosion");
- playfx(level._effect["emp_flash"], level.plane.origin);
- self playsound("wpn_rocket_explode");
- level.plane hide();
- foreach(lift in level.lift)
- {
- lift unlink();
- lift PhysicsLaunch( level.plane.origin, ( 10000,0,10000) );
- }
- foreach(elevator in level.elevator)
- {
- elevator unlink();
- elevator PhysicsLaunch( level.plane.origin, (-10,0,1000) );
- }
- foreach(platform in level.elevatorPlatform)
- {
- platform unlink();
- platform PhysicsLaunch( level.plane.origin, (1000,1000,1000) );
- }
- level.elevatorcontrol[0] unlink();
- level.elevatorcontrol[1] unlink();
- level.elevatorcontrol[4] unlink();
- level.elevatorcontrol[17] unlink();
- level.elevatorcontrol[18] unlink();
- level.elevatorcontrol[0] PhysicsLaunch( level.plane.origin, (1000,1000,1000) );
- level.elevatorcontrol[1] PhysicsLaunch( level.plane.origin, (1000,1000,1000) );
- level.elevatorcontrol[4] PhysicsLaunch( level.plane.origin, (1000,1000,1000) );
- level.elevatorcontrol[17] PhysicsLaunch( level.plane.origin, (1000,1000,1000) );
- level.elevatorcontrol[18] PhysicsLaunch( level.plane.origin, (1000,1000,1000) );
- level notify("exploded");
- level.plane delete();
- self notify("endNuke");
- }
- }
- if(self.type == "forcedock")
- {
- if(player Usebuttonpressed())
- {
- level.SkybaseInUse = true;
- speed = distance(level.BaseCenter.origin, level.BaseCenterOrigOrigin)/1000;
- level.BaseCenter moveto(level.BaseCenterOrigOrigin, 1);//, speed*0.8, speed*0.2);
- level.BaseCenter rotateto(level.BaseCenterOrigAng, 3, 2, 1);
- wait 0.05;
- level.SkybaseInUse = false;
- }
- }
- }
- else if(!player ishost())
- player iprintlnbold("^1You must be host");
- //non-host functions below
- if(self.type == "left" || self.type == "right")
- {
- while(player Usebuttonpressed())
- {
- if(self.type == "left")
- {
- level.SkybaseInUse = true;
- self linkplayers();
- level.BaseCenter rotateyaw(-2, 0.05);
- wait 0.05;
- unlinkplayers();
- level.SkybaseInUse = false;
- }
- else
- {
- level.SkybaseInUse = true;
- self linkplayers();
- level.BaseCenter rotateyaw(2, 0.05);
- wait 0.05;
- unlinkplayers();
- level.SkybaseInUse = false;
- }
- }
- }
- if(self.type == "forward")
- {
- while(player Usebuttonpressed())
- {
- level.SkybaseInUse = true;
- self linkplayers();
- level.vec = anglestoright(level.BaseCenter.angles);
- center = BulletTrace( level.BaseCenter.origin, level.BaseCenter.origin+(level.vec[0] * -100, level.vec[1] * -100, level.vec[2] * -100), 0, self)[ "position" ];
- level.BaseCenter moveto(center, 0.05);
- wait 0.05;
- unlinkplayers();
- level.SkybaseInUse = false;
- }
- }
- if(self.type == "dock" )
- {
- while(player Usebuttonpressed())
- {
- if(self.type == "dock")
- {
- level.SkybaseInUse = true;
- self linkplayers();
- speed = distance(level.BaseCenter.origin, level.BaseCenterOrigOrigin)/1000;
- level.BaseCenter moveto(level.BaseCenterOrigOrigin, 1);//, speed*0.8, speed*0.2);
- level.BaseCenter rotateto(level.BaseCenterOrigAng, 3, 2, 1);
- while(level.BaseCenter.origin != level.BaseCenterOrigOrigin)
- wait 0.05;
- unlinkplayers();
- level.SkybaseInUse = false;
- }
- wait 0.05;
- }
- }
- if(self.type == "up" || self.type == "down")
- {
- while(player Usebuttonpressed())
- {
- if(self.type == "up")
- {
- level.SkybaseInUse = true;
- self linkplayers();
- level.BaseCenter moveto(level.BaseCenter.origin+(0,0,10), 0.05);
- wait 0.05;
- unlinkplayers();
- level.SkybaseInUse = false;
- }
- else
- {
- level.SkybaseInUse = true;
- self linkplayers();
- level.BaseCenter moveto(level.BaseCenter.origin-(0,0,10), 0.05);
- wait 0.05;
- unlinkplayers();
- level.SkybaseInUse = false;
- }
- }
- }
- if(self.type == "mystery")
- {
- if (player UseButtonPressed())
- {
- level.SkybaseInUse = false;
- if(!level.SkybaseInUse && !self.mysteryBoxInUse )
- {
- level.SkybaseInUse = true;
- wait 0.10;
- player.currentskybaseHint1 = "";
- player.isUsingMysteryBox = true;
- self.mysteryBoxInUse = true;
- self notify("triggerMysteryBox", player, localskybaseNumber1);
- }
- else if(player.mysteryBoxWeaponReady[localskybaseNumber1])
- {
- wait 0.10;
- self notify("tookMysteryBoxWeapon");
- level.SkybaseInUse = false;
- }
- wait 0.10;
- }
- }
- if(self.type == "control")
- {
- if (player UseButtonPressed() && !level.EleInUse)
- {
- level.EleInUse = true;
- if(distance(level.elevatorcontrol[1].origin, player.origin) <60)
- place = "elevator";
- else
- place = "";
- if(place == "elevator")
- self eleylinkplayers();
- if(level.elevatorDirection == "up")
- {
- level.elevatorDirection = "down";
- level.center moveto(level.center.origin+(0,0,1050), 2);
- }
- else
- {
- level.center2 unlink();
- foreach(platform in level.elevatorPlatform)
- platform linkto(level.center2);
- level.center2 moveto(level.center2.origin-(0,112,0), 3);
- wait 3.1;
- level.center2 linkto(level.center);
- level.center moveto(level.center.origin-(0,0,1050), 2);
- level.elevatorDirection = "up";
- }
- wait 2.5;
- if(place == "elevator")
- unlinkplayers();
- if(level.elevatorDirection == "down")
- {
- level.center2 unlink();
- foreach(platform in level.elevatorPlatform)
- platform linkto(level.center2);
- level.center2 moveto(level.center2.origin+(0,112,0), 3);
- wait 3.5;
- }
- level.EleInUse = false;
- }
- }
- level.SkybaseInUse = false;
- }
- wait 0.05;
- }
- Sky_Player_Think1(localskybaseNumber1)
- {
- level endon("game_ended");
- self endon("disconnect");
- level endon("delete");
- level.elevatorDirection = "up";
- self.mysteryBoxInUse = false;
- for(;;)
- {
- foreach(player in level.players)
- {
- if (!isDefined(player.skyStringCreated1[localskybaseNumber1]))
- {
- player.skybaserHintString1[localskybaseNumber1] = player createFontString("objective", 1.5);
- player.skybaserHintString1[localskybaseNumber1] setText(player.currentskybaseHint1);
- player.skybaserHintString1[localskybaseNumber1].x = 0;
- player.skybaserHintString1[localskybaseNumber1].y = -50;
- player.skybaserHintString1[localskybaseNumber1].color = (1,1,1);
- player.skybaserHintString1[localskybaseNumber1].alpha = 0;
- player.skybaserHintString1[localskybaseNumber1].sort = 8;
- player.skybaserHintString1[localskybaseNumber1].alignX = "center";
- player.skybaserHintString1[localskybaseNumber1].alignY = "bottom";
- player.skybaserHintString1[localskybaseNumber1].horzAlign = "center";
- player.skybaserHintString1[localskybaseNumber1].vertAlign = "bottom";
- player.skyStringCreated1[localskybaseNumber1] = true;
- player.nearsky[localskybaseNumber1] = false;
- }
- if (player.nearsky[localskybaseNumber1] && !level.SkybaseInUse )
- {
- player.skybaserHintString1[localskybaseNumber1] setText(player.currentskybaseHint1);
- player.skybaserHintString1[localskybaseNumber1].alpha = 1;
- }
- else
- player.skybaserHintString1[localskybaseNumber1].alpha = 0;
- if(Distance(self.origin, player.origin) <= 60)
- {
- player.nearsky[localskybaseNumber1] = true;
- if(self.type == "right")
- player.currentskybaseHint1 = "Hold ^3[{+activate}]^7 to go left";
- if(self.type == "left")
- player.currentskybaseHint1 = "Hold ^3[{+activate}]^7 to go right";
- if(self.type == "forward")
- player.currentskybaseHint1 = "Hold ^3[{+activate}]^7 to go forward";
- if(self.type == "up")
- player.currentskybaseHint1 = "Hold ^3[{+activate}]^7 to go up";
- if(self.type == "down")
- player.currentskybaseHint1 = "Hold ^3[{+activate}]^7 to go down";
- if(self.type == "dock")
- player.currentskybaseHint1 = "Press ^3[{+activate}]^7 to redock";
- if(self.type == "forcedock")
- player.currentskybaseHint1 = "Press ^3[{+activate}]^7 to force redock [Host Only]";
- if(self.type == "destroy")
- player.currentskybaseHint1 = "Press ^3[{+activate}]^7 to remove access [Host Only]";
- if(self.type == "control")
- {
- if(distance(level.elevatorcontrol[1].origin, player.origin) <60)
- {
- if(level.elevatorDirection == "up")
- player.currentskybaseHint1 = "Press ^3[{+activate}]^7 to go up";
- if(level.elevatorDirection == "down")
- player.currentskybaseHint1 = "Press ^3[{+activate}]^7 to go down";
- if(level.EleInUse)
- player.currentskybaseHint1 = "";
- }
- else
- {
- if(level.elevatorDirection == "up")
- player.currentskybaseHint1 = "Press ^3[{+activate}]^7 to Send Elevator up";
- if(level.elevatorDirection == "down")
- player.currentskybaseHint1 = "Press ^3[{+activate}]^7 to Send Elevator down";
- if(level.EleInUse)
- player.currentskybaseHint1 = "";
- }
- }
- if(self.type == "mystery")
- {
- if ( !self.mysteryBoxInUse )
- {
- player.currentskybaseHint1 = "Press ^3[{+activate}]^7 To Use Mystery Box";
- player.mysteryBoxWeaponReady[localskybaseNumber1] = false;
- }
- else if ( self.mysteryBoxInUse && player.mysteryBoxWeaponReady[localskybaseNumber1] )
- player.currentskybaseHint1 = "Press ^3[{+activate}]^7 To Take Weapon";
- }
- if(player UseButtonPressed() && isAlive(player))
- {
- self notify("triggeruse" , player, localskybaseNumber1);
- wait 0.05;
- }
- }
- else
- player.nearsky[localskybaseNumber1] = false;
- wait 0.0001;
- }
- wait 0.01;
- }
- }
- MysteryBox_Think()
- {
- level endon("game_ended");
- level endon("doneforge");
- self.timedOut = false;
- for (;;)
- {
- self waittill("triggerMysteryBox", player, localskybaseNumber1);
- level.currentWeapon = spawn("script_model", self.origin + (0,0,20));
- level.currentWeapon.angles = self.angles + (0, 90, 0);
- self thread MysteryBox_WeaponMover_Think();
- self waittill("mysteryBoxWeaponMoverFinished");
- level.SkybaseInUse = false;
- self thread MysteryBox_Timeout_Think();
- player.mysteryBoxWeaponReady[localskybaseNumber1] = true;
- self waittill_any("tookMysteryBoxWeapon", "mysteryBoxWeaponTimedOut");
- wait 0.50;
- if (!self.timedOut)
- player replaceWeaponWorld(self.currentWeaponReturn, "All");
- level.currentWeapon hide();
- player.isUsingMysteryBox = false;
- player.mysteryBoxWeaponReady[localskybaseNumber1] = false;
- self.mysteryBoxInUse = false;
- self.timedOut = false;
- level.SkybaseInUse = false;
- wait 0.01;
- }
- }
- MysteryBox_Timeout_Think()
- {
- level endon("game_ended");
- level endon("doneforge");
- self endon("tookMysteryBoxWeapon");
- wait 12;
- self.timedOut = true;
- self notify("mysteryBoxWeaponTimedOut");
- }
- MysteryBox_WeaponMover_Think()
- {
- level endon("game_ended");
- level endon("doneforge");
- self.weaponArray = ReturnWeaponArray("All");
- level.currentWeapon MoveTo(level.currentWeapon.origin + (0, 0, 20), 10, 2, 2);
- for (i = 0; i < 30; i++)
- {
- tempRandomWeapon = self.weaponArray[randomint(self.weaponArray.size)];
- level.currentWeapon SetModel(GetWeaponModel(tempRandomWeapon));
- self.currentWeaponReturn = tempRandomWeapon;
- wait 0.30;
- }
- self notify("mysteryBoxWeaponMoverFinished");
- wait 3;
- level.currentWeapon MoveTo(self.origin, 10, 2, 2);
- }
- toggledelete()
- {
- level notify("delete");
- foreach(elevatorbase in level.elevatorBase)
- elevatorbase delete();
- foreach(platform in level.elevatorPlatform)
- platform delete();
- foreach(elevator in level.elevator)
- elevator delete();
- foreach(lift in level.lift)
- lift delete();
- foreach(elevatorcontrol in level.elevatorcontrol)
- elevatorcontrol delete();
- foreach(player in level.players)
- {
- for (j = 0; j < level.activesky1; j++)
- {
- if(isDefined(player.skybaserHintString1[j]))
- player.skybaserHintString1[j].alpha = 0;
- }
- }
- level.activesky1 = 0;
- level.basebool = false;
- }
- linkplayers()
- {
- foreach(player in level.players)
- {
- if(Distance(level.elevatorcontrol[10].origin, player.origin) <= 300 && isAlive(player))
- {
- player.fakelink = spawn("script_origin", player.origin);
- player playerlinkto(player.fakelink);
- player.fakelink linkto(self);
- }
- }
- }
- unlinkplayers()
- {
- foreach(player in level.players)
- {
- player unlink();
- player.fakelink delete();
- }
- }
- eleylinkplayers()
- {
- foreach(player in level.players)
- {
- if(Distance(level.elevatorcontrol[1].origin, player.origin) <= 100 && isAlive(player))
- {
- player.fakelink = spawn("script_origin", player.origin);
- player playerlinkto(player.fakelink);
- player.fakelink linkto(self);
- }
- }
- }
- deleteonleave()
- {
- for(;;)
- {
- level waittill("game_ended");
- toggledelete();
- }
- }
- ReturnWeaponArray(category)
- {
- level.WeaponArray["All"][0] = "mp7_mp";
- level.WeaponArray["All"][1] = "pdw57_mp";
- level.WeaponArray["All"][2] = "vector_mp";
- level.WeaponArray["All"][3] = "insas_mp";
- level.WeaponArray["All"][4] = "qcw05_mp";
- level.WeaponArray["All"][5] = "evoskorpion_mp";
- level.WeaponArray["All"][6] = "peacekeeper_mp";
- level.WeaponArray["All"][7] = "tar21_mp";
- level.WeaponArray["All"][8] = "type95_mp";
- level.WeaponArray["All"][9] = "sig556_mp";
- level.WeaponArray["All"][10] = "sa58_mp";
- level.WeaponArray["All"][11] = "hk416_mp";
- level.WeaponArray["All"][12] = "scar_mp";
- level.WeaponArray["All"][13] = "saritch_mp";
- level.WeaponArray["All"][14] = "xm8_mp";
- level.WeaponArray["All"][15] = "an94_mp";
- level.WeaponArray["All"][16] = "870mcs_mp";
- level.WeaponArray["All"][17] = "saiga12_mp";
- level.WeaponArray["All"][18] = "ksg_mp";
- level.WeaponArray["All"][19] = "srm1216_mp";
- level.WeaponArray["All"][20] = "mk48_mp";
- level.WeaponArray["All"][21] = "qbb95_mp";
- level.WeaponArray["All"][22] = "lsat_mp";
- level.WeaponArray["All"][23] = "hamr_mp";
- level.WeaponArray["All"][24] = "svu_mp";
- level.WeaponArray["All"][25] = "dsr50_mp";
- level.WeaponArray["All"][26] = "ballista_mp";
- level.WeaponArray["All"][27] = "as50_mp";
- level.WeaponArray["All"][28] = "fiveseven_mp";
- level.WeaponArray["All"][29] = "fnp45_mp";
- level.WeaponArray["All"][30] = "beretta93r_mp";
- level.WeaponArray["All"][31] = "judge_mp";
- level.WeaponArray["All"][32] = "kard_mp";
- level.WeaponArray["All"][33] = "smaw_mp";
- level.WeaponArray["All"][34] = "usrpg_mp";
- level.WeaponArray["All"][35] = "fhj18_mp";
- level.WeaponArray["All"][36] = "minigun_wager_mp";
- level.WeaponArray["All"][37] = "m32_wager_mp";
- level.WeaponArray["All"][38] = "riotshield_mp";
- level.WeaponArray["All"][39] = "crossbow_mp";
- level.WeaponArray["All"][40] = "knife_ballistic_mp";
- level.WeaponArray["All"][41] = "knife_held_mp";
- if (category == "All")
- return level.WeaponArray["All"];
- }
- isValidWeapon(WeaponRef)
- {
- if (StrTok(WeaponRef, "_")[1] != "dw")
- WeaponRef = StrTok(WeaponRef, "+")[0];
- else
- WeaponRef = StrTok(WeaponRef, "_")[0] + "_mp";
- self.validReturn = WeaponRef;
- self.TempWeaponArray = ReturnWeaponArray("All");
- for (i = 0; i < self.TempWeaponArray.size; i++)
- {
- if (self.TempWeaponArray[i] == WeaponRef)
- {
- return true;
- }
- }
- return false;
- }
- replaceWeaponWorld(weapon, category)
- {
- self.currentWeapon = self GetCurrentWeapon();
- if (isValidWeapon(self.currentWeapon))
- {
- self.currentWeaponNew = self.validReturn;
- if (weapon != self.currentWeapon )
- {
- self TakeWeapon(self.currentWeapon);
- self GiveWeapon(weapon,0,false);
- self setWeaponAmmoClip(weapon, weaponClipSize(weapon));
- self GiveStartAmmo(weapon);
- self SwitchToWeapon(weapon);
- }
- }
- }
- /*Skybase end */
Advertisement
Add Comment
Please, Sign In to add comment