From: FruitieX Date: Sat, 23 Oct 2010 18:27:21 +0000 (+0300) Subject: omg. this is probably the ugliest hack i've ever written. YUCK YUCK! BUT IT WORKS! D: X-Git-Tag: xonotic-v0.1.0preview~245^2~8^2~1 X-Git-Url: https://git.rm.cloudns.org/?a=commitdiff_plain;h=f41b6c95f45251e37c1784f6ca4ed76e6e41a268;p=xonotic%2Fxonotic-data.pk3dir.git omg. this is probably the ugliest hack i've ever written. YUCK YUCK! BUT IT WORKS! D: --- diff --git a/qcsrc/server/arena.qc b/qcsrc/server/arena.qc index 6b22df6f2..6ffde101c 100644 --- a/qcsrc/server/arena.qc +++ b/qcsrc/server/arena.qc @@ -263,6 +263,7 @@ void Arena_Warmup() float next_round; float stopalivecheck; float redalive, bluealive; +.float redalive_stat, bluealive_stat; /** * This function finds out whether an arena round is over 1 player is left. * It determines the last player who's still alive and saves it's entity reference @@ -289,6 +290,12 @@ void Spawnqueue_Check() if (self.team == COLOR_TEAM1 && self.health >= 1) redalive += 1; else if (self.team == COLOR_TEAM2 && self.health >= 1) bluealive += 1; } + // as if the above stuff wasn't stupid enough, let's run it a third time! :D + // (so that we can send redalive/bluealive as a stat) + FOR_EACH_PLAYER(self) { + self.redalive_stat = redalive; + self.bluealive_stat = bluealive; + } required_ca_players = max(2, fabs(cvar("bot_vs_human") + 1)); diff --git a/qcsrc/server/g_world.qc b/qcsrc/server/g_world.qc index 2697f726a..6260d7e86 100644 --- a/qcsrc/server/g_world.qc +++ b/qcsrc/server/g_world.qc @@ -646,8 +646,8 @@ void spawnfunc_worldspawn (void) if(g_ca) { - addstat(STAT_REDALIVE, AS_INT, redalive); - addstat(STAT_BLUEALIVE, AS_INT, bluealive); + addstat(STAT_REDALIVE, AS_INT, redalive_stat); + addstat(STAT_BLUEALIVE, AS_INT, bluealive_stat); } // g_movementspeed hack addstat(STAT_MOVEVARS_AIRSPEEDLIMIT_NONQW, AS_FLOAT, stat_sv_airspeedlimit_nonqw);