From eec72538fb7893876c28967d183e04b257a045fa Mon Sep 17 00:00:00 2001 From: Spoike Date: Wed, 14 Sep 2005 04:39:36 +0000 Subject: [PATCH] Fixed botclient respawning a bit. There's still a bug somewhere, but they now work properly after being killed the first time around, so it's certainly better. git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@1329 fc73d0e0-1445-4013-8a0c-d673dee63da5 --- engine/server/sv_init.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/engine/server/sv_init.c b/engine/server/sv_init.c index 307f553d0..00b2a4026 100644 --- a/engine/server/sv_init.c +++ b/engine/server/sv_init.c @@ -494,7 +494,7 @@ void SV_SpawnServer (char *server, char *startspot, qboolean noents, qboolean us #ifdef Q2SERVER q2edict_t *q2ent; #endif - int i; + int i, j; int spawnflagmask; #ifndef SERVERONLY @@ -1143,7 +1143,7 @@ void SV_SpawnServer (char *server, char *startspot, qboolean noents, qboolean us if (svs.gametype == GT_PROGS) { - for (i = 0; i < MAX_CLIENTS; i++) + for (i = 0; i < sv.allocated_client_slots; i++) { host_client = &svs.clients[i]; if (host_client->state == cs_connected && host_client->protocol == SCP_BAD) @@ -1152,12 +1152,15 @@ void SV_SpawnServer (char *server, char *startspot, qboolean noents, qboolean us SV_ExtractFromUserinfo(host_client); // copy spawn parms out of the client_t - for (i=0 ; i< NUM_SPAWN_PARMS ; i++) + for (j=0 ; j< NUM_SPAWN_PARMS ; j++) { - if (spawnparamglobals[i]) - *spawnparamglobals[i] = host_client->spawn_parms[i]; + if (spawnparamglobals[j]) + *spawnparamglobals[j] = host_client->spawn_parms[j]; } + SetUpClientEdict(host_client, sv_player); + sv_player->v->clientcolors = atoi(Info_ValueForKey(host_client->userinfo, "topcolor"))*16 + atoi(Info_ValueForKey(host_client->userinfo, "bottomcolor")); + // call the spawn function pr_global_struct->time = sv.time; pr_global_struct->self = EDICT_TO_PROG(svprogfuncs, sv_player);