Stop caching sv_maxclients in bot code
This commit is contained in:
parent
d1631d6ea3
commit
74aa4268b2
5 changed files with 28 additions and 83 deletions
|
@ -72,7 +72,6 @@ bot_waypoint_t *botai_freewaypoints;
|
|||
|
||||
//NOTE: not using a cvars which can be updated because the game should be reloaded anyway
|
||||
int gametype; //game type
|
||||
int maxclients; //maximum number of clients
|
||||
|
||||
vmCvar_t bot_grapple;
|
||||
vmCvar_t bot_rocketjump;
|
||||
|
@ -1427,11 +1426,8 @@ ClientFromName
|
|||
int ClientFromName(char *name) {
|
||||
int i;
|
||||
char buf[MAX_INFO_STRING];
|
||||
static int maxclients;
|
||||
|
||||
if (!maxclients)
|
||||
maxclients = trap_Cvar_VariableIntegerValue("sv_maxclients");
|
||||
for (i = 0; i < maxclients && i < MAX_CLIENTS; i++) {
|
||||
for (i = 0; i < level.maxclients; i++) {
|
||||
trap_GetConfigstring(CS_PLAYERS+i, buf, sizeof(buf));
|
||||
Q_CleanStr( buf );
|
||||
if (!Q_stricmp(Info_ValueForKey(buf, "n"), name)) return i;
|
||||
|
@ -1447,11 +1443,8 @@ ClientOnSameTeamFromName
|
|||
int ClientOnSameTeamFromName(bot_state_t *bs, char *name) {
|
||||
int i;
|
||||
char buf[MAX_INFO_STRING];
|
||||
static int maxclients;
|
||||
|
||||
if (!maxclients)
|
||||
maxclients = trap_Cvar_VariableIntegerValue("sv_maxclients");
|
||||
for (i = 0; i < maxclients && i < MAX_CLIENTS; i++) {
|
||||
for (i = 0; i < level.maxclients; i++) {
|
||||
if (!BotSameTeam(bs, i))
|
||||
continue;
|
||||
trap_GetConfigstring(CS_PLAYERS+i, buf, sizeof(buf));
|
||||
|
@ -2983,7 +2976,7 @@ int BotFindEnemy(bot_state_t *bs, int curenemy) {
|
|||
}
|
||||
#endif
|
||||
//
|
||||
for (i = 0; i < maxclients && i < MAX_CLIENTS; i++) {
|
||||
for (i = 0; i < level.maxclients; i++) {
|
||||
|
||||
if (i == bs->client) continue;
|
||||
//if it's the current enemy
|
||||
|
@ -3062,7 +3055,7 @@ int BotTeamFlagCarrierVisible(bot_state_t *bs) {
|
|||
float vis;
|
||||
aas_entityinfo_t entinfo;
|
||||
|
||||
for (i = 0; i < maxclients && i < MAX_CLIENTS; i++) {
|
||||
for (i = 0; i < level.maxclients; i++) {
|
||||
if (i == bs->client)
|
||||
continue;
|
||||
//
|
||||
|
@ -3095,7 +3088,7 @@ int BotTeamFlagCarrier(bot_state_t *bs) {
|
|||
int i;
|
||||
aas_entityinfo_t entinfo;
|
||||
|
||||
for (i = 0; i < maxclients && i < MAX_CLIENTS; i++) {
|
||||
for (i = 0; i < level.maxclients; i++) {
|
||||
if (i == bs->client)
|
||||
continue;
|
||||
//
|
||||
|
@ -3125,7 +3118,7 @@ int BotEnemyFlagCarrierVisible(bot_state_t *bs) {
|
|||
float vis;
|
||||
aas_entityinfo_t entinfo;
|
||||
|
||||
for (i = 0; i < maxclients && i < MAX_CLIENTS; i++) {
|
||||
for (i = 0; i < level.maxclients; i++) {
|
||||
if (i == bs->client)
|
||||
continue;
|
||||
//
|
||||
|
@ -3164,7 +3157,7 @@ void BotVisibleTeamMatesAndEnemies(bot_state_t *bs, int *teammates, int *enemies
|
|||
*teammates = 0;
|
||||
if (enemies)
|
||||
*enemies = 0;
|
||||
for (i = 0; i < maxclients && i < MAX_CLIENTS; i++) {
|
||||
for (i = 0; i < level.maxclients; i++) {
|
||||
if (i == bs->client)
|
||||
continue;
|
||||
//
|
||||
|
@ -3206,7 +3199,7 @@ int BotTeamCubeCarrierVisible(bot_state_t *bs) {
|
|||
float vis;
|
||||
aas_entityinfo_t entinfo;
|
||||
|
||||
for (i = 0; i < maxclients && i < MAX_CLIENTS; i++) {
|
||||
for (i = 0; i < level.maxclients; i++) {
|
||||
if (i == bs->client) continue;
|
||||
//
|
||||
BotEntityInfo(i, &entinfo);
|
||||
|
@ -3235,7 +3228,7 @@ int BotEnemyCubeCarrierVisible(bot_state_t *bs) {
|
|||
float vis;
|
||||
aas_entityinfo_t entinfo;
|
||||
|
||||
for (i = 0; i < maxclients && i < MAX_CLIENTS; i++) {
|
||||
for (i = 0; i < level.maxclients; i++) {
|
||||
if (i == bs->client)
|
||||
continue;
|
||||
//
|
||||
|
@ -3706,7 +3699,7 @@ void BotMapScripts(bot_state_t *bs) {
|
|||
}
|
||||
shootbutton = qfalse;
|
||||
//if an enemy is below this bounding box then shoot the button
|
||||
for (i = 0; i < maxclients && i < MAX_CLIENTS; i++) {
|
||||
for (i = 0; i < level.maxclients; i++) {
|
||||
|
||||
if (i == bs->client) continue;
|
||||
//
|
||||
|
@ -5403,7 +5396,6 @@ void BotSetupDeathmatchAI(void) {
|
|||
char model[128];
|
||||
|
||||
gametype = trap_Cvar_VariableIntegerValue("g_gametype");
|
||||
maxclients = trap_Cvar_VariableIntegerValue("sv_maxclients");
|
||||
|
||||
trap_Cvar_Register(&bot_rocketjump, "bot_rocketjump", "1", 0);
|
||||
trap_Cvar_Register(&bot_grapple, "bot_grapple", "0", 0);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue