summaryrefslogtreecommitdiff
path: root/src/game/g_main.c
diff options
context:
space:
mode:
authorMikko Tiusanen <ams@daug.net>2014-07-06 16:12:58 +0300
committerMikko Tiusanen <ams@daug.net>2014-07-06 16:12:58 +0300
commit546b7743d10bcd75998569dfc8c1818804f76213 (patch)
treeda7cc4e1afd49a65ff1efe41b77ab84b9320f220 /src/game/g_main.c
parenta7af4c67c3e5e4b02fa89aaa2443f83c66d06cfb (diff)
Extra players now kept in spawn queue instead of auto-balance if g_teamForceBalance is set to 2.
Automatic team balancing now honors locked teams and g_teamForceBalance setting.
Diffstat (limited to 'src/game/g_main.c')
-rw-r--r--src/game/g_main.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/game/g_main.c b/src/game/g_main.c
index 977ab1e..11376ac 100644
--- a/src/game/g_main.c
+++ b/src/game/g_main.c
@@ -1049,11 +1049,25 @@ void G_SpawnClients( team_t team )
{
sq = &level.alienSpawnQueue;
numSpawns = level.numAlienSpawns;
+ if( g_teamForceBalance.integer == 2 &&
+ !level.humanTeamLocked &&
+ !level.alienTeamLocked &&
+ level.numAlienClients-level.numHumanClients > 1 )
+ {
+ return;
+ }
}
else if( team == TEAM_HUMANS )
{
sq = &level.humanSpawnQueue;
numSpawns = level.numHumanSpawns;
+ if( g_teamForceBalance.integer == 2 &&
+ !level.humanTeamLocked &&
+ !level.alienTeamLocked &&
+ level.numHumanClients-level.numAlienClients > 1 )
+ {
+ return;
+ }
}
if( G_GetSpawnQueueLength( sq ) > 0 && numSpawns > 0 )