From 276e6d2ea2969e2361e71330b71cc0c582ad102a Mon Sep 17 00:00:00 2001 From: div0 Date: Sun, 30 Apr 2006 08:46:26 +0000 Subject: [PATCH] Minor fixes (woah... they compile now!) ;) git-svn-id: svn://svn.icculus.org/nexuiz/trunk@1336 f962a42d-fe04-0410-a3ab-8c8b0445ebaa --- data/qcsrc/server/gamec/bots.c | 73 +++++++++++++++-------------- data/qcsrc/server/gamec/cl_client.c | 8 +++- 2 files changed, 45 insertions(+), 36 deletions(-) diff --git a/data/qcsrc/server/gamec/bots.c b/data/qcsrc/server/gamec/bots.c index 1c7b9e4f6..5e108d3bf 100644 --- a/data/qcsrc/server/gamec/bots.c +++ b/data/qcsrc/server/gamec/bots.c @@ -1635,12 +1635,15 @@ void() bot_think = }; entity bot_strategytoken; +entity player_list; +.entity nextplayer; void() bot_relinkplayerlist = { local entity e; + local entity prevbot; player_count = 0; currentbots = 0; - player_list = e = findchainflag(flags, FL_CLIENT); + player_list = e = findchainflags(flags, FL_CLIENT); bot_list = world; prevbot = world; while (e) @@ -1654,9 +1657,11 @@ void() bot_relinkplayerlist = else bot_list = e; prevbot = e; + currentbots = currentbots + 1; } e = e.chain; } + dprint(strcat("relink - ", ftos(currentbots), " bots seen.\n")); bot_strategytoken = bot_list; }; @@ -1730,39 +1735,39 @@ void() botframe_showwaypointlinks = //navigation_testtracewalk = FALSE; if (head) { - w = head ;if (w) te_lightning2(w, w.origin, player.origin); - w = head.wp00;if (w) te_lightning2(w, w.origin, head.origin); - w = head.wp01;if (w) te_lightning2(w, w.origin, head.origin); - w = head.wp02;if (w) te_lightning2(w, w.origin, head.origin); - w = head.wp03;if (w) te_lightning2(w, w.origin, head.origin); - w = head.wp04;if (w) te_lightning2(w, w.origin, head.origin); - w = head.wp05;if (w) te_lightning2(w, w.origin, head.origin); - w = head.wp06;if (w) te_lightning2(w, w.origin, head.origin); - w = head.wp07;if (w) te_lightning2(w, w.origin, head.origin); - w = head.wp08;if (w) te_lightning2(w, w.origin, head.origin); - w = head.wp09;if (w) te_lightning2(w, w.origin, head.origin); - w = head.wp10;if (w) te_lightning2(w, w.origin, head.origin); - w = head.wp11;if (w) te_lightning2(w, w.origin, head.origin); - w = head.wp12;if (w) te_lightning2(w, w.origin, head.origin); - w = head.wp13;if (w) te_lightning2(w, w.origin, head.origin); - w = head.wp14;if (w) te_lightning2(w, w.origin, head.origin); - w = head.wp15;if (w) te_lightning2(w, w.origin, head.origin); - w = head.wp16;if (w) te_lightning2(w, w.origin, head.origin); - w = head.wp17;if (w) te_lightning2(w, w.origin, head.origin); - w = head.wp18;if (w) te_lightning2(w, w.origin, head.origin); - w = head.wp19;if (w) te_lightning2(w, w.origin, head.origin); - w = head.wp20;if (w) te_lightning2(w, w.origin, head.origin); - w = head.wp21;if (w) te_lightning2(w, w.origin, head.origin); - w = head.wp22;if (w) te_lightning2(w, w.origin, head.origin); - w = head.wp23;if (w) te_lightning2(w, w.origin, head.origin); - w = head.wp24;if (w) te_lightning2(w, w.origin, head.origin); - w = head.wp25;if (w) te_lightning2(w, w.origin, head.origin); - w = head.wp26;if (w) te_lightning2(w, w.origin, head.origin); - w = head.wp27;if (w) te_lightning2(w, w.origin, head.origin); - w = head.wp28;if (w) te_lightning2(w, w.origin, head.origin); - w = head.wp29;if (w) te_lightning2(w, w.origin, head.origin); - w = head.wp30;if (w) te_lightning2(w, w.origin, head.origin); - w = head.wp31;if (w) te_lightning2(w, w.origin, head.origin); + w = head ;if (w) te_lightning2(world, w.origin, player.origin); + w = head.wp00;if (w) te_lightning2(world, w.origin, head.origin); + w = head.wp01;if (w) te_lightning2(world, w.origin, head.origin); + w = head.wp02;if (w) te_lightning2(world, w.origin, head.origin); + w = head.wp03;if (w) te_lightning2(world, w.origin, head.origin); + w = head.wp04;if (w) te_lightning2(world, w.origin, head.origin); + w = head.wp05;if (w) te_lightning2(world, w.origin, head.origin); + w = head.wp06;if (w) te_lightning2(world, w.origin, head.origin); + w = head.wp07;if (w) te_lightning2(world, w.origin, head.origin); + w = head.wp08;if (w) te_lightning2(world, w.origin, head.origin); + w = head.wp09;if (w) te_lightning2(world, w.origin, head.origin); + w = head.wp10;if (w) te_lightning2(world, w.origin, head.origin); + w = head.wp11;if (w) te_lightning2(world, w.origin, head.origin); + w = head.wp12;if (w) te_lightning2(world, w.origin, head.origin); + w = head.wp13;if (w) te_lightning2(world, w.origin, head.origin); + w = head.wp14;if (w) te_lightning2(world, w.origin, head.origin); + w = head.wp15;if (w) te_lightning2(world, w.origin, head.origin); + w = head.wp16;if (w) te_lightning2(world, w.origin, head.origin); + w = head.wp17;if (w) te_lightning2(world, w.origin, head.origin); + w = head.wp18;if (w) te_lightning2(world, w.origin, head.origin); + w = head.wp19;if (w) te_lightning2(world, w.origin, head.origin); + w = head.wp20;if (w) te_lightning2(world, w.origin, head.origin); + w = head.wp21;if (w) te_lightning2(world, w.origin, head.origin); + w = head.wp22;if (w) te_lightning2(world, w.origin, head.origin); + w = head.wp23;if (w) te_lightning2(world, w.origin, head.origin); + w = head.wp24;if (w) te_lightning2(world, w.origin, head.origin); + w = head.wp25;if (w) te_lightning2(world, w.origin, head.origin); + w = head.wp26;if (w) te_lightning2(world, w.origin, head.origin); + w = head.wp27;if (w) te_lightning2(world, w.origin, head.origin); + w = head.wp28;if (w) te_lightning2(world, w.origin, head.origin); + w = head.wp29;if (w) te_lightning2(world, w.origin, head.origin); + w = head.wp30;if (w) te_lightning2(world, w.origin, head.origin); + w = head.wp31;if (w) te_lightning2(world, w.origin, head.origin); } } player = find(player, classname, "player"); diff --git a/data/qcsrc/server/gamec/cl_client.c b/data/qcsrc/server/gamec/cl_client.c index bf64ca513..0cae8e45a 100644 --- a/data/qcsrc/server/gamec/cl_client.c +++ b/data/qcsrc/server/gamec/cl_client.c @@ -664,7 +664,7 @@ void ClientConnect (void) Spawnqueue_Insert(self); } - bot_rebuildplayerlist(); + bot_relinkplayerlist(); self.jointime = time; } @@ -681,6 +681,7 @@ void(entity e) DropFlag; .entity teambubbleentity; void ClientDisconnect (void) { + float save; if(cvar("sv_eventlog")) GameLogEcho(strcat(":part:", ftos(self.playerid)), FALSE); bprint ("^4",self.netname); @@ -703,7 +704,10 @@ void ClientDisconnect (void) if(self.flagcarried) DropFlag(self.flagcarried); - bot_rebuildplayerlist(); + save = self.flags; + self.flags = self.flags - (self.flags & FL_CLIENT); + bot_relinkplayerlist(); + self.flags = save; // player was dead, decrease dead count if(cvar("g_lms") && self.frags < 1) -- 2.39.2