diff --git a/main/pvbrust.cfg b/main/pvbrust.cfg index 62e0782..b22e8e3 100644 --- a/main/pvbrust.cfg +++ b/main/pvbrust.cfg @@ -481,6 +481,7 @@ set sv_enableBounces "1" // CUSTOM set bot_pvb_helper_noPlayersOnTeam "axis" +set bot_pvb_helper_customBotClassTeam "" set scr_showHP "1" set scr_allowFPSBooster "1" diff --git a/main/pvbvote.cfg b/main/pvbvote.cfg index 63e058b..21de779 100644 --- a/main/pvbvote.cfg +++ b/main/pvbvote.cfg @@ -481,6 +481,7 @@ set sv_enableBounces "1" // CUSTOM set bot_pvb_helper_noPlayersOnTeam "allies" +set bot_pvb_helper_customBotClassTeam "axis" set scr_showHP "1" set scr_allowFPSBooster "1" diff --git a/main/server.cfg b/main/server.cfg index 1f43258..cce377d 100644 --- a/main/server.cfg +++ b/main/server.cfg @@ -481,6 +481,7 @@ set sv_enableBounces "1" // CUSTOM set bot_pvb_helper_noPlayersOnTeam "" +set bot_pvb_helper_customBotClassTeam "" set scr_showHP "1" set scr_allowFPSBooster "1" diff --git a/userraw/scripts/bots_pvb.gsc b/userraw/scripts/bots_pvb.gsc index d0edef5..f8f39b5 100644 --- a/userraw/scripts/bots_pvb.gsc +++ b/userraw/scripts/bots_pvb.gsc @@ -14,6 +14,8 @@ init() level thread watchTeams(); level thread watchCheater(); + + level thread watchBotCrackedClass(); } watchCheater() @@ -71,6 +73,67 @@ watchCheater() } } +watchBotCrackedClass() +{ + if(getDvar("bot_pvb_helper_customBotClassTeam") == "") + setDvar("bot_pvb_helper_customBotClassTeam", ""); + + for (;;) + { + level waittill("bot_connected", bot); + + bot thread watchBotLoadout(); + } +} + +watchBotLoadout() +{ + self endon("disconnect"); + + random = randomInt(2); + + for (;;) + { + self waittill("bot_giveLoadout"); + + team = getDvar("bot_pvb_helper_customBotClassTeam"); + + if (team == "") + continue; + + if (self.team != team) + continue; + + // clear perks and weapons + self takeAllWeapons(); + self.specialty = []; + self _clearPerks(); + + // give perks + self maps\mp\perks\_perks::givePerk( "specialty_fastreload" ); + self maps\mp\perks\_perks::givePerk( "specialty_quickdraw" ); + self maps\mp\perks\_perks::givePerk( "specialty_bulletdamage" ); + self maps\mp\perks\_perks::givePerk( "specialty_armorpiercing" ); + self maps\mp\perks\_perks::givePerk( "specialty_bulletaccuracy" ); + self maps\mp\perks\_perks::givePerk( "specialty_holdbreath" ); + + self maps\mp\perks\_perks::givePerk( "semtex_mp" ); + + twoStreak = "helicopter_minigun"; + if (random) + twoStreak = "ac130"; + + self maps\mp\gametypes\_class::setKillstreaks( "harrier_airstrike", twoStreak, "nuke" ); + + // give weapons + self _giveWeapon( "stun_grenade_mp", 0 ); + self _giveWeapon( "g18_xmags_mp", 0 ); + + self _giveWeapon( "rpd_xmags_mp", 0 ); + self setSpawnWeapon( "rpd_xmags_mp" ); + } +} + watchTeams() { if(getDvar("bot_pvb_helper_noPlayersOnTeam") == "")