summaryrefslogtreecommitdiff
path: root/src/game/g_cmds.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/game/g_cmds.c')
-rw-r--r--src/game/g_cmds.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/game/g_cmds.c b/src/game/g_cmds.c
index ecb6ad39..274f4a4a 100644
--- a/src/game/g_cmds.c
+++ b/src/game/g_cmds.c
@@ -500,7 +500,9 @@ void Cmd_Team_f( gentity_t *ent )
team = PTE_NONE;
else if( !Q_stricmp( s, "aliens" ) )
{
- if( g_teamForceBalance.integer && level.numAlienClients > level.numHumanClients )
+ if( g_teamForceBalance.integer && ( ( level.numAlienClients > level.numHumanClients ) ||
+ ( ent->client->ps.stats[ STAT_PTEAM ] == PTE_HUMANS &&
+ level.numAlienClients >= level.numHumanClients ) ) )
{
G_TriggerMenu( ent->client->ps.clientNum, MN_A_TEAMFULL );
return;
@@ -510,7 +512,9 @@ void Cmd_Team_f( gentity_t *ent )
}
else if( !Q_stricmp( s, "humans" ) )
{
- if( g_teamForceBalance.integer && level.numHumanClients > level.numAlienClients )
+ if( g_teamForceBalance.integer && ( ( level.numHumanClients > level.numAlienClients ) ||
+ ( ent->client->ps.stats[ STAT_PTEAM ] == PTE_ALIENS &&
+ level.numHumanClients >= level.numAlienClients ) ) )
{
G_TriggerMenu( ent->client->ps.clientNum, MN_H_TEAMFULL );
return;