mirror of
https://github.com/JezuzLizard/t4sp_bot_warfare.git
synced 2025-04-22 22:45:43 +00:00
use dyn prio
This commit is contained in:
parent
b7254c0131
commit
2d719726dc
@ -6,9 +6,9 @@
|
||||
init()
|
||||
{
|
||||
level.bot_objectives = [];
|
||||
level.bot_objectives[level.bot_objectives.size] = CreateObjectiveForManger( "revive", maps\bots\objectives\_revive::Finder, maps\bots\objectives\_revive::Executer, 1000 );
|
||||
level.bot_objectives[level.bot_objectives.size] = CreateObjectiveForManger( "powerup", maps\bots\objectives\_powerup::Finder, maps\bots\objectives\_powerup::Executer, 2500 );
|
||||
level.bot_objectives[level.bot_objectives.size] = CreateObjectiveForManger( "wallweapon", maps\bots\objectives\_wallweapon::Finder, maps\bots\objectives\_wallweapon::Executer, 7500 );
|
||||
level.bot_objectives[level.bot_objectives.size] = CreateObjectiveForManger( "revive", maps\bots\objectives\_revive::Finder, maps\bots\objectives\_revive::Priority, maps\bots\objectives\_revive::Executer, 1000 );
|
||||
level.bot_objectives[level.bot_objectives.size] = CreateObjectiveForManger( "powerup", maps\bots\objectives\_powerup::Finder, maps\bots\objectives\_powerup::Priority, maps\bots\objectives\_powerup::Executer, 2500 );
|
||||
level.bot_objectives[level.bot_objectives.size] = CreateObjectiveForManger( "wallweapon", maps\bots\objectives\_wallweapon::Finder, maps\bots\objectives\_wallweapon::Priority, maps\bots\objectives\_wallweapon::Executer, 7500 );
|
||||
}
|
||||
|
||||
connected()
|
||||
@ -136,7 +136,7 @@ bot_objective_think()
|
||||
}
|
||||
|
||||
// already on a better obj
|
||||
if ( self HasBotObjective() && ( best_prio.GUID == self.bot_current_objective.GUID || best_prio.fPriority < self.bot_current_objective.fPriority ) )
|
||||
if ( self HasBotObjective() && ( best_prio.GUID == self.bot_current_objective.GUID || best_prio.fPriority < self [[self.bot_current_objective.eParentObj.fpPriorty]]( self.bot_current_objective.eParentObj, self.bot_current_objective.eEnt ) ) )
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
@ -34,7 +34,7 @@ Finder( eObj )
|
||||
continue;
|
||||
}
|
||||
|
||||
answer[answer.size] = self CreateFinderObjective( eObj, eObj.sName + "_" + ents[i] GetEntityNumber(), ents[i], self Priority( eObj, ents[i] ) );
|
||||
answer[answer.size] = self CreateFinderObjective( eObj, eObj.sName + "_" + ents[i] GetEntityNumber(), ents[i], self [[eObj.fpPriorty]]( eObj, ents[i] ) );
|
||||
}
|
||||
|
||||
return answer;
|
||||
@ -46,7 +46,7 @@ Priority( eObj, eEnt )
|
||||
base_priority = 0;
|
||||
base_priority += ClampLerp( get_path_dist( self.origin, eEnt.origin ), 300, 700, 2, -2 );
|
||||
|
||||
if ( self HasBotObjective() )
|
||||
if ( self HasBotObjective() && self.bot_current_objective.eEnt != eEnt )
|
||||
{
|
||||
base_priority -= 1;
|
||||
}
|
||||
|
@ -47,7 +47,7 @@ Finder( eObj )
|
||||
continue;
|
||||
}
|
||||
|
||||
Answer[Answer.size] = self CreateFinderObjective( eObj, eObj.sName + "_" + Player GetEntityNumber(), Player, self Priority( eObj, Player ) );
|
||||
Answer[Answer.size] = self CreateFinderObjective( eObj, eObj.sName + "_" + Player GetEntityNumber(), Player, self [[eObj.fpPriorty]]( eObj, Player ) );
|
||||
}
|
||||
|
||||
return Answer;
|
||||
@ -58,7 +58,7 @@ Priority( eObj, eEnt )
|
||||
base_priority = 3;
|
||||
base_priority += ClampLerp( get_path_dist( self.origin, eEnt.origin ), 500, 1200, 2, -2 );
|
||||
|
||||
if ( self HasBotObjective() )
|
||||
if ( self HasBotObjective() && self.bot_current_objective.eEnt != eEnt )
|
||||
{
|
||||
base_priority -= 1;
|
||||
}
|
||||
|
@ -2,13 +2,14 @@
|
||||
#include maps\_utility;
|
||||
#include maps\bots\_bot_utility;
|
||||
|
||||
CreateObjectiveForManger( sName, fpFinder, fpExecuter, iProcessRate )
|
||||
CreateObjectiveForManger( sName, fpFinder, fpPriorty, fpExecuter, iProcessRate )
|
||||
{
|
||||
Answer = SpawnStruct();
|
||||
|
||||
Answer.sName = sName;
|
||||
Answer.fpFinder = fpFinder;
|
||||
Answer.fpExecuter = fpExecuter;
|
||||
Answer.fpPriorty = fpPriorty;
|
||||
|
||||
Answer.aBotProcessTimes = [];
|
||||
Answer.iProcessRate = iProcessRate;
|
||||
|
@ -75,7 +75,7 @@ Finder( eObj )
|
||||
continue;
|
||||
}
|
||||
|
||||
answer[answer.size] = self CreateFinderObjective( eObj, eObj.sName + "_" + weapon_spawns[i] GetEntityNumber(), weapon_spawns[i], self Priority( eObj, weapon_spawns[i] ) );
|
||||
answer[answer.size] = self CreateFinderObjective( eObj, eObj.sName + "_" + weapon_spawns[i] GetEntityNumber(), weapon_spawns[i], self [[eObj.fpPriorty]]( eObj, weapon_spawns[i] ) );
|
||||
}
|
||||
|
||||
return answer;
|
||||
@ -102,14 +102,14 @@ Priority( eObj, eEnt )
|
||||
base_priority = 0;
|
||||
base_priority += ClampLerp( get_path_dist( self.origin, eEnt.origin ), 0, 800, 2, -2 );
|
||||
|
||||
if ( self HasBotObjective() )
|
||||
if ( self HasBotObjective() && self.bot_current_objective.eEnt != eEnt )
|
||||
{
|
||||
base_priority -= 1;
|
||||
}
|
||||
|
||||
if ( eEnt.zombie_weapon_upgrade == "zombie_kar98k" )
|
||||
{
|
||||
base_priority -= 99;
|
||||
base_priority -= 999;
|
||||
}
|
||||
|
||||
return base_priority;
|
||||
|
Loading…
x
Reference in New Issue
Block a user