FineNerds

csKillStreakLobby.gsc

Oct 29th, 2014
215
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 3.56 KB | None | 0 0
  1. #include maps/mp/_utility;
  2. #include common_scripts/utility;
  3. #include maps/mp/gametypes/_hud_util;
  4. #include maps/mp/_utility;
  5.  
  6. /** Custom Killstreaks Lobby by - FineNerds **/
  7.  
  8. init( )
  9. {
  10.     level.clientid = 0;
  11.     level.killstreakCount = 0;
  12.     level thread onplayerconnect( );
  13.     level thread cskillstreakMonitor();
  14. }
  15.  
  16. onplayerconnect( )
  17. {
  18.     for(;;)
  19.     {
  20.         level waittill( "connecting", player );
  21.         player thread onplayerspawned( );
  22.         player.clientid = level.clientid;
  23.         level.clientid++;
  24.     }
  25. }
  26.  
  27. onplayerspawned( )
  28. {
  29.     self endon( "disconnect" );
  30.     level endon( "game_ended" );
  31.     for(;;)
  32.     {
  33.         self waittill( "spawned_player" );
  34.        
  35.     }
  36. }
  37.  
  38. csDeathMonitor()
  39. {
  40.     self endon("disconnect");
  41.     level endon("game_ended");
  42.    
  43.     for (;;)
  44.     {
  45.         self waittill("death");
  46.         if (self.kllstreakCount > 0)
  47.         {
  48.             self.killStreakCount = 0;
  49.         }
  50.         wait 0.05;
  51.     }
  52. }
  53.  
  54. cskillstreakMonitor()
  55. {
  56.     self endon("disconnect");
  57.     level endon("game_ended");
  58.  
  59.     thread ksMonitor()
  60.  
  61.     for(;;)
  62.     {
  63.         if(self.killstreakCount = 5)
  64.         {
  65.             ThunGun();
  66.         }
  67.         wait 0.03;
  68.     }
  69. }
  70.  
  71. ksMonitor()
  72. {
  73.     level endon( "game_ended" );
  74.     self endon( "disconnected" );
  75.  
  76.     self.killstreakCount = 0;
  77.     self.currentKills = self.pers["kills"];
  78.     wait 0.3;
  79.     for(;;)
  80.     {
  81.         if(self.currentKills > self.pers["kills"])
  82.         {
  83.             self.killstreakCount = self.kistreakCount + 1;
  84.             self.iPrintln("Killstreak is: " + killstreakCount);
  85. }
  86.  
  87. ThunGun()
  88. {
  89.     self endon("disconnect");
  90.     self endon ("death");
  91.     level.bettydestroyedfx = loadfx( "weapon/bouncing_betty/fx_betty_destroyed" );
  92.     namezy = self;
  93.     self giveWeapon("ksg_mp", 7, false);
  94.     self switchToWeapon("ksg_mp");
  95.     self setWeaponAmmoStock("ksg_mp", 0);
  96.     self setWeaponAmmoClip("ksg_mp", 1);
  97.     self iPrintlnBold("^2ForceBlast Ready! ^48^7:Shots Remaining");
  98.     for(j = 8; j > 0; j--)
  99.     {
  100.         self waittill ( "weapon_fired" );
  101.         if( self getCurrentWeapon() == "ksg_mp" )
  102.         {      
  103.             forward = self getTagOrigin("j_head");
  104.             end = vectorScale(anglestoforward(self getPlayerAngles()), 1000000);
  105.             BlastLocation = BulletTrace( forward, end, false, self )["position"];
  106.             fxthun = playfx(level.bettydestroyedfx, self getTagOrigin("tag_weapon_right"));
  107.             fxthun.angles = (100,0,0);
  108.             TriggerFX(fxthun);
  109.             RadiusDamage(BlastLocation, 200, 500, 100, self);
  110.             earthquake( 0.9, 0.9, self.origin, 600 );
  111.             PlayRumbleOnPosition( "grenade_rumble", self.origin );
  112.             foreach(player in level.players)
  113.             {
  114.                 if(player.team != self.team)
  115.                 {
  116.                     if(Distance(self.origin, player.origin) < 600)
  117.                     {
  118.                         player thread ThunDamage();
  119.                     }
  120.                  }
  121.              }
  122.              self switchToWeapon("ksg_mp");
  123.              wait 0.8;
  124.              wait .5;
  125.              bulletz = (j - 1);
  126.              self iPrintlnBold("^2ForceBlast Ready. ^4" + bulletz + "^7:Shots Remaining");
  127.              self setWeaponAmmoStock("ksg_mp", 0);
  128.              self setWeaponAmmoClip("ksg_mp", 1);
  129.              self switchToWeapon("ksg_mp");
  130.              }
  131.              else
  132.              {
  133.                  j++;
  134.              }
  135.         }
  136.         self takeWeapon( "ksg_mp" );
  137.         wait 2;
  138.         self notify ("THUNGONE");
  139. }
  140.  
  141. ThunDamage()
  142. {
  143.     self endon("disconnect");
  144.     for(m = 4; m > 0; m--)
  145.     {  
  146.         self setvelocity(self getvelocity()+(250,250,250));
  147.         wait .1;
  148.     }
  149.     self setvelocity(0,0,0);
  150.     wait 7;
  151. }
Advertisement
Add Comment
Please, Sign In to add comment