mirror of
https://github.com/ineedbots/iw5_bot_warfare.git
synced 2025-04-25 23:29:12 +00:00
Bots use sam turret
This commit is contained in:
parent
b55c2acb6a
commit
d78a9c4afd
@ -325,11 +325,9 @@ watchRadar()
|
|||||||
player.bot_isInRadar = false;
|
player.bot_isInRadar = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
grenades = GetEntArray("script_model", "classname");
|
for ( i = level.players.size - 1; i >= 0; i-- )
|
||||||
|
|
||||||
for (i = grenades.size - 1; i >= 0; i--)
|
|
||||||
{
|
{
|
||||||
grenade = grenades[i];
|
grenade = level.players[i].deployedPortableRadar;
|
||||||
|
|
||||||
if ( !isDefined( grenade ) )
|
if ( !isDefined( grenade ) )
|
||||||
continue;
|
continue;
|
||||||
@ -397,7 +395,7 @@ watchScrabler()
|
|||||||
if(level.teamBased && scrambler.team == player.team)
|
if(level.teamBased && scrambler.team == player.team)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
if (player _hasPerk("specialty_coldblooded"))
|
if (player _hasPerk("specialty_spygame"))
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
if (DistanceSquared(player.origin, scrambler.origin) > 256*256)
|
if (DistanceSquared(player.origin, scrambler.origin) > 256*256)
|
||||||
|
@ -4164,12 +4164,12 @@ bot_killstreak_think()
|
|||||||
|
|
||||||
print (self.name + " " + streakName);
|
print (self.name + " " + streakName);
|
||||||
|
|
||||||
if (maps\mp\killstreaks\_killstreaks::isRideKillstreak(streakName) || maps\mp\killstreaks\_killstreaks::isCarryKillstreak(streakName))
|
if (maps\mp\killstreaks\_killstreaks::isRideKillstreak(streakName) || maps\mp\killstreaks\_killstreaks::isCarryKillstreak(streakName) || streakName == "sam_turret" || streakName == "remote_mg_turret")
|
||||||
{
|
{
|
||||||
if (self inLastStand() || true)
|
if (self inLastStand())
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
if (lifeId == self.deaths && !self HasScriptGoal() && !self.bot_lock_goal && streakName != "sentry" && !self nearAnyOfWaypoints(128, level.waypointsCamp))
|
if (lifeId == self.deaths && !self HasScriptGoal() && !self.bot_lock_goal && maps\mp\killstreaks\_killstreaks::isRideKillstreak(streakName) && !self nearAnyOfWaypoints(128, level.waypointsCamp))
|
||||||
{
|
{
|
||||||
campSpots = [];
|
campSpots = [];
|
||||||
distSq = 1024*1024;
|
distSq = 1024*1024;
|
||||||
@ -4189,12 +4189,12 @@ bot_killstreak_think()
|
|||||||
if (self waittill_any_return("new_goal", "goal", "bad_path") != "new_goal")
|
if (self waittill_any_return("new_goal", "goal", "bad_path") != "new_goal")
|
||||||
self ClearScriptGoal();
|
self ClearScriptGoal();
|
||||||
|
|
||||||
doFastContinue = true;
|
doFastContinue = self.killstreakIndexWeapon;
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (streakName == "sentry")
|
if (streakName == "sentry" || streakName == "sam_turret" || streakName == "remote_mg_turret" || streakName == "ims")
|
||||||
{
|
{
|
||||||
if (self HasScriptAimPos())
|
if (self HasScriptAimPos())
|
||||||
continue;
|
continue;
|
||||||
@ -4203,8 +4203,27 @@ bot_killstreak_think()
|
|||||||
angles = self GetPlayerAngles();
|
angles = self GetPlayerAngles();
|
||||||
|
|
||||||
forwardTrace = bulletTrace(myEye, myEye + AnglesToForward(angles)*1024, false, self);
|
forwardTrace = bulletTrace(myEye, myEye + AnglesToForward(angles)*1024, false, self);
|
||||||
|
placeNot = "place_sentry";
|
||||||
|
cancelNot = "cancel_sentry";
|
||||||
|
distCheck = 1000*1000;
|
||||||
|
switch (streakName)
|
||||||
|
{
|
||||||
|
case "sam_turret":
|
||||||
|
forwardTrace = bulletTrace(myEye, myEye + (0, 0, 1024), false, self);
|
||||||
|
break;
|
||||||
|
case "remote_mg_turret":
|
||||||
|
placeNot = "place_turret";
|
||||||
|
cancelNot = "cancel_turret";
|
||||||
|
break;
|
||||||
|
case "ims":
|
||||||
|
forwardTrace = bulletTrace(myEye, myEye + AnglesToForward(angles)*128, false, self);
|
||||||
|
placeNot = "place_ims";
|
||||||
|
cancelNot = "cancel_ims";
|
||||||
|
distCheck = 100*100;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
if (DistanceSquared(self.origin, forwardTrace["position"]) < 1000*1000 && self.pers["bots"]["skill"]["base"] > 3)
|
if (DistanceSquared(self.origin, forwardTrace["position"]) < distCheck && self.pers["bots"]["skill"]["base"] > 3)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
self BotStopMoving(true);
|
self BotStopMoving(true);
|
||||||
@ -4218,9 +4237,9 @@ bot_killstreak_think()
|
|||||||
}
|
}
|
||||||
|
|
||||||
wait 1;
|
wait 1;
|
||||||
self notify("place_sentry");
|
self notify(placeNot);
|
||||||
wait 0.05;
|
wait 0.05;
|
||||||
self notify("cancel_sentry");
|
self notify(cancelNot);
|
||||||
wait 0.5;
|
wait 0.5;
|
||||||
|
|
||||||
self thread changeToWeapon(curWeap);
|
self thread changeToWeapon(curWeap);
|
||||||
@ -4228,7 +4247,7 @@ bot_killstreak_think()
|
|||||||
self BotStopMoving(false);
|
self BotStopMoving(false);
|
||||||
self ClearScriptAimPos();
|
self ClearScriptAimPos();
|
||||||
}
|
}
|
||||||
else if (streakName == "predator_missile")
|
else if (streakName == "predator_missile" && false)
|
||||||
{
|
{
|
||||||
location = self getKillstreakTargetLocation();
|
location = self getKillstreakTargetLocation();
|
||||||
|
|
||||||
@ -4278,7 +4297,7 @@ bot_killstreak_think()
|
|||||||
self BotFreezeControls(false);
|
self BotFreezeControls(false);
|
||||||
self thread changeToWeapon(curWeap);
|
self thread changeToWeapon(curWeap);
|
||||||
}
|
}
|
||||||
else if (streakName == "ac130")
|
else if (streakName == "ac130" && false)
|
||||||
{
|
{
|
||||||
if ( isDefined( level.ac130player ) || level.ac130InUse )
|
if ( isDefined( level.ac130player ) || level.ac130InUse )
|
||||||
continue;
|
continue;
|
||||||
@ -4292,20 +4311,6 @@ bot_killstreak_think()
|
|||||||
if ( !isDefined( level.ac130player ) || level.ac130player != self )
|
if ( !isDefined( level.ac130player ) || level.ac130player != self )
|
||||||
self thread changeToWeapon(curWeap);
|
self thread changeToWeapon(curWeap);
|
||||||
}
|
}
|
||||||
else if (streakName == "helicopter_minigun")
|
|
||||||
{
|
|
||||||
if (isDefined( level.chopper ))
|
|
||||||
continue;
|
|
||||||
|
|
||||||
self BotStopMoving(true);
|
|
||||||
self changeToWeapon(ksWeap);
|
|
||||||
self BotStopMoving(false);
|
|
||||||
|
|
||||||
wait 3;
|
|
||||||
|
|
||||||
if ( !isDefined( level.chopper ) || !isDefined( level.chopper.gunner ) || level.chopper.gunner != self )
|
|
||||||
self thread changeToWeapon(curWeap);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user