From 8f62b9a9b0f85ef1debc7ed8ac8ddbfb911c5c24 Mon Sep 17 00:00:00 2001 From: flowtron Date: Tue, 22 Nov 2011 12:11:05 +0000 Subject: [PATCH] fix clientnum assignment for bots git-svn-id: svn://svn.code.sf.net/p/actiongame/code/trunk/ac@6706 e016b1c5-ed68-44aa-a2f7-31cac88cffde --- source/src/clientgame.cpp | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/source/src/clientgame.cpp b/source/src/clientgame.cpp index c3055e0e..07469aee 100644 --- a/source/src/clientgame.cpp +++ b/source/src/clientgame.cpp @@ -449,14 +449,22 @@ botent *newbotent() // create a new blank player setskin(d, rnd(6)); weapon::equipplayer(d); spawnstate(d); // move like above - loopv(players) if(i!=getclientnum() && !players[i]) + int nextcn = 0; + bool lukin = true; + while(lukin) + { + bool used = nextcn==getclientnum(); + loopv(players) if(!used && players[i]) if(players[i]->clientnum==nextcn) used = true; + if(!used) lukin = false; else nextcn++; + } + loopv(players) if(i!=getclientnum() && !players[i]) { players[i] = d; - d->clientnum = i; + d->clientnum = nextcn; return d; } if(players.length()==getclientnum()) players.add(NULL); - d->clientnum = players.length(); + d->clientnum = nextcn; players.add(d); return d; }