This commit is contained in:
ineedbots 2021-05-17 10:54:16 -06:00
parent 3bf5cf12ea
commit 1f42c9014c
2 changed files with 54 additions and 1 deletions

View File

@ -155,6 +155,7 @@ init()
level thread onPlayerConnect(); level thread onPlayerConnect();
level thread addNotifyOnAirdrops(); level thread addNotifyOnAirdrops();
level thread watchScrabler(); level thread watchScrabler();
level thread watchRadar();
level thread handleBots(); level thread handleBots();
@ -304,6 +305,58 @@ fixKoth()
} }
} }
/*
Watches radars
*/
watchRadar()
{
for (;;)
{
wait 1;
for ( i = level.players.size - 1; i >= 0; i-- )
{
player = level.players[i];
player.bot_isInRadar = false;
}
grenades = getEntArray( "grenade", "classname" );
for (i = grenades.size - 1; i >= 0; i--)
{
grenade = grenades[i];
if ( !isDefined( grenade ) )
continue;
if (!isDefined(grenade.name) || grenade.name != "portable_radar_mp")
continue;
for ( h = level.players.size - 1; h >= 0; h-- )
{
player = level.players[h];
if (!isReallyAlive(player))
continue;
if (isDefined(grenade.owner) && grenade.owner == player)
continue;
if(level.teamBased && grenade.team == player.team)
continue;
if (player _hasPerk("specialty_coldblooded"))
continue;
if (DistanceSquared(player.origin, scrambler.origin) > 256*256)
continue;
player.bot_isInRadar = true;
}
}
}
}
/* /*
Watches scrambler Watches scrambler
*/ */

View File

@ -3217,7 +3217,7 @@ bot_uav_think()
if(distFromPlayer > dist) if(distFromPlayer > dist)
continue; continue;
if((!isSubStr(player getCurrentWeapon(), "_silencer") && player.bots_firing) || (hasRadar && !player _hasPerk("specialty_coldblooded")) || player maps\mp\perks\_perkfunctions::isPainted()) if((!isSubStr(player getCurrentWeapon(), "_silencer") && player.bots_firing) || (hasRadar && !player _hasPerk("specialty_coldblooded")) || player maps\mp\perks\_perkfunctions::isPainted() || player.bot_isInRadar)
{ {
distSq = self.pers["bots"]["skill"]["help_dist"] * self.pers["bots"]["skill"]["help_dist"]; distSq = self.pers["bots"]["skill"]["help_dist"] * self.pers["bots"]["skill"]["help_dist"];
if (distFromPlayer < distSq && bulletTracePassed(self getEye(), player getTagOrigin( "j_spineupper" ), false, player)) if (distFromPlayer < distSq && bulletTracePassed(self getEye(), player getTagOrigin( "j_spineupper" ), false, player))