mirror of
https://github.com/ineedbots/iw4_bot_warfare.git
synced 2025-06-28 07:01:49 +00:00
Reduce var usage no kd tree
This commit is contained in:
@ -1594,47 +1594,6 @@ bots_watch_touch_obj(obj)
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
Is bot near any of the given waypoints
|
||||
*/
|
||||
nearAnyOfWaypoints(dist, waypoints)
|
||||
{
|
||||
dist *= dist;
|
||||
for (i = 0; i < waypoints.size; i++)
|
||||
{
|
||||
waypoint = waypoints[i];
|
||||
|
||||
if (DistanceSquared(waypoint.origin, self.origin) > dist)
|
||||
continue;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
/*
|
||||
Returns nearest waypoint of waypoints
|
||||
*/
|
||||
getNearestWaypointOfWaypoints(waypoints)
|
||||
{
|
||||
answer = undefined;
|
||||
closestDist = 2147483647;
|
||||
for (i = 0; i < waypoints.size; i++)
|
||||
{
|
||||
waypoint = waypoints[i];
|
||||
thisDist = DistanceSquared(self.origin, waypoint.origin);
|
||||
|
||||
if (isDefined(answer) && thisDist > closestDist)
|
||||
continue;
|
||||
|
||||
answer = waypoint;
|
||||
closestDist = thisDist;
|
||||
}
|
||||
|
||||
return answer;
|
||||
}
|
||||
|
||||
/*
|
||||
Watches while the obj is being carried, calls 'goal' when complete
|
||||
*/
|
||||
@ -2056,16 +2015,7 @@ bot_think_camp()
|
||||
if(randomInt(100) > self.pers["bots"]["behavior"]["camp"])
|
||||
continue;
|
||||
|
||||
campSpots = [];
|
||||
distSq = 1024*1024;
|
||||
for (i = 0; i < level.waypointsCamp.size; i++)
|
||||
{
|
||||
if (DistanceSquared(self.origin, level.waypointsCamp[i].origin) > distSq)
|
||||
continue;
|
||||
|
||||
campSpots[campSpots.size] = level.waypointsCamp[i];
|
||||
}
|
||||
campSpot = random(campSpots);
|
||||
campSpot = getWaypointForIndex(random(self waypointsNear(getWaypointsOfType("camp"), 1024)));
|
||||
|
||||
if (!isDefined(campSpot))
|
||||
continue;
|
||||
@ -2404,18 +2354,9 @@ bot_use_tube_think()
|
||||
|
||||
loc = undefined;
|
||||
|
||||
if (!self nearAnyOfWaypoints(128, level.waypointsTube))
|
||||
if (!self nearAnyOfWaypoints(128, getWaypointsOfType("tube")))
|
||||
{
|
||||
tubeWps = [];
|
||||
distSq = 1024*1024;
|
||||
for (i = 0; i < level.waypointsTube.size; i++)
|
||||
{
|
||||
if (DistanceSquared(self.origin, level.waypointsTube[i].origin) > distSq)
|
||||
continue;
|
||||
|
||||
tubeWps[tubeWps.size] = level.waypointsTube[i];
|
||||
}
|
||||
tubeWp = random(tubeWps);
|
||||
tubeWp = getWaypointForIndex(random(self waypointsNear(getWaypointsOfType("tube"), 1024)));
|
||||
|
||||
myEye = self GetEye();
|
||||
if (!isDefined(tubeWp) || self HasScriptGoal() || self.bot_lock_goal)
|
||||
@ -2453,7 +2394,7 @@ bot_use_tube_think()
|
||||
}
|
||||
else
|
||||
{
|
||||
tubeWp = self getNearestWaypointOfWaypoints(level.waypointsTube);
|
||||
tubeWp = getWaypointForIndex(self getNearestWaypointOfWaypoints(getWaypointsOfType("tube")));
|
||||
loc = tubeWp.origin + AnglesToForward(tubeWp.angles) * 2048;
|
||||
}
|
||||
|
||||
@ -2534,18 +2475,9 @@ bot_use_equipment_think()
|
||||
|
||||
loc = undefined;
|
||||
|
||||
if (!self nearAnyOfWaypoints(128, level.waypointsClay))
|
||||
if (!self nearAnyOfWaypoints(128, getWaypointsOfType("claymore")))
|
||||
{
|
||||
clayWps = [];
|
||||
distSq = 1024*1024;
|
||||
for (i = 0; i < level.waypointsClay.size; i++)
|
||||
{
|
||||
if (DistanceSquared(self.origin, level.waypointsClay[i].origin) > distSq)
|
||||
continue;
|
||||
|
||||
clayWps[clayWps.size] = level.waypointsClay[i];
|
||||
}
|
||||
clayWp = random(clayWps);
|
||||
clayWp = getWaypointForIndex(random(self waypointsNear(getWaypointsOfType("claymore"), 1024)));
|
||||
|
||||
if (!isDefined(clayWp) || self HasScriptGoal() || self.bot_lock_goal)
|
||||
{
|
||||
@ -2573,7 +2505,7 @@ bot_use_equipment_think()
|
||||
}
|
||||
else
|
||||
{
|
||||
clayWp = self getNearestWaypointOfWaypoints(level.waypointsClay);
|
||||
clayWp = getWaypointForIndex(self getNearestWaypointOfWaypoints(getWaypointsOfType("claymore")));
|
||||
loc = clayWp.origin + AnglesToForward(clayWp.angles) * 2048;
|
||||
}
|
||||
|
||||
@ -2642,18 +2574,9 @@ bot_use_grenade_think()
|
||||
|
||||
loc = undefined;
|
||||
|
||||
if (!self nearAnyOfWaypoints(128, level.waypointsGren))
|
||||
if (!self nearAnyOfWaypoints(128, getWaypointsOfType("grenade")))
|
||||
{
|
||||
nadeWps = [];
|
||||
distSq = 1024*1024;
|
||||
for (i = 0; i < level.waypointsGren.size; i++)
|
||||
{
|
||||
if (DistanceSquared(self.origin, level.waypointsGren[i].origin) > distSq)
|
||||
continue;
|
||||
|
||||
nadeWps[nadeWps.size] = level.waypointsGren[i];
|
||||
}
|
||||
nadeWp = random(nadeWps);
|
||||
nadeWp = getWaypointForIndex(random(self waypointsNear(getWaypointsOfType("grenade"), 1024)));
|
||||
|
||||
myEye = self GetEye();
|
||||
if (!isDefined(nadeWp) || self HasScriptGoal() || self.bot_lock_goal)
|
||||
@ -2691,7 +2614,7 @@ bot_use_grenade_think()
|
||||
}
|
||||
else
|
||||
{
|
||||
nadeWp = self getNearestWaypointOfWaypoints(level.waypointsGren);
|
||||
nadeWp = getWaypointForIndex(self getNearestWaypointOfWaypoints(getWaypointsOfType("grenade")));
|
||||
loc = nadeWp.origin + AnglesToForward(nadeWp.angles) * 2048;
|
||||
}
|
||||
|
||||
@ -2895,18 +2818,9 @@ bot_jav_loc_think()
|
||||
|
||||
loc = undefined;
|
||||
|
||||
if (!self nearAnyOfWaypoints(128, level.waypointsJav))
|
||||
if (!self nearAnyOfWaypoints(128, getWaypointsOfType("javelin")))
|
||||
{
|
||||
javWps = [];
|
||||
distSq = 1024*1024;
|
||||
for (i = 0; i < level.waypointsJav.size; i++)
|
||||
{
|
||||
if (DistanceSquared(self.origin, level.waypointsJav[i].origin) > distSq)
|
||||
continue;
|
||||
|
||||
javWps[javWps.size] = level.waypointsJav[i];
|
||||
}
|
||||
javWp = random(javWps);
|
||||
javWp = getWaypointForIndex(random(self waypointsNear(getWaypointsOfType("javelin"), 1024)));
|
||||
|
||||
if (!isDefined(javWp) || self HasScriptGoal() || self.bot_lock_goal)
|
||||
{
|
||||
@ -2942,7 +2856,7 @@ bot_jav_loc_think()
|
||||
}
|
||||
else
|
||||
{
|
||||
javWp = self getNearestWaypointOfWaypoints(level.waypointsJav);
|
||||
javWp = getWaypointForIndex(self getNearestWaypointOfWaypoints(getWaypointsOfType("javelin")));
|
||||
loc = javWp.jav_point;
|
||||
}
|
||||
|
||||
@ -4055,18 +3969,9 @@ bot_killstreak_think()
|
||||
if (self inLastStand())
|
||||
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 && streakName != "sentry" && !self nearAnyOfWaypoints(128, getWaypointsOfType("camp")))
|
||||
{
|
||||
campSpots = [];
|
||||
distSq = 1024*1024;
|
||||
for (i = 0; i < level.waypointsCamp.size; i++)
|
||||
{
|
||||
if (DistanceSquared(self.origin, level.waypointsCamp[i].origin) > distSq)
|
||||
continue;
|
||||
|
||||
campSpots[campSpots.size] = level.waypointsCamp[i];
|
||||
}
|
||||
campSpot = random(campSpots);
|
||||
campSpot = getWaypointForIndex(random(self waypointsNear(getWaypointsOfType("camp"), 1024)));
|
||||
|
||||
if (isDefined(campSpot))
|
||||
{
|
||||
|
Reference in New Issue
Block a user