void LeaveSpectatorMode()
{
if(isJoinAllowed()) {
- if(!teams_matter || cvar("g_campaign") || cvar("g_balance_teams") || (self.wasplayer && cvar("g_changeteam_banned"))) {
+ if(!teams_matter || cvar("g_campaign") || cvar("g_balance_teams") || (self.wasplayer && cvar("g_changeteam_banned")) || self.team_forced > 0) {
self.classname = "player";
if(cvar("g_campaign") || cvar("g_balance_teams") || cvar("g_balance_teams_force"))
PutClientInServer();
} else if(cvar("g_campaign") || cvar("g_balance_teams") || cvar("g_balance_teams_force")) {
//JoinBestTeam(self, FALSE, TRUE);
- } else if(teams_matter && !cvar("sv_spectate")) {
+ } else if(teams_matter && !cvar("sv_spectate") && !(self.team_forced > 0)) {
self.classname = "observer";
stuffcmd(self,"menu_showteamselect\n");
}
if not(self.flags & FL_CLIENT)
return;
if( !teams_matter ) {
- sprint( self, "selecteam can only be used in teamgames\n");
+ sprint( self, "selectteam can only be used in teamgames\n");
} else if(cvar("g_campaign")) {
//JoinBestTeam(self, 0);
+ } else if(self.team_forced > 0) {
+ sprint( self, "selectteam can not be used as your team is forced\n");
} else if(lockteams) {
sprint( self, "^7The game has already begun, you must wait until the next map to be able to join a team.\n");
} else if( argv(1) == "red" ) {
if(c4 >= 0)
totalteams = totalteams + 1;
- if(cvar("bot_vs_human") && totalteams == 1)
+ if((cvar("bot_vs_human") || pl.team_forced > 0) && totalteams == 1)
totalteams += 1;
if(totalteams <= 1)