about summary refs log tree commit diff
diff options
context:
space:
mode:
authorDennis Felsing <dennis@felsin9.de>2021-11-18 17:31:21 +0100
committerGitHub <noreply@github.com>2021-11-18 17:31:21 +0100
commitc1f733a239508feee501894306e22f05a43475d1 (patch)
tree5e57d8679e3bc45a9363d32a7ca908b13e3d16f1
parente52a203238bc60e03d207f7df385356089272ef2 (diff)
parentccd9b398517399feb3f28babf389e6de9f02082d (diff)
downloadzcatch-c1f733a239508feee501894306e22f05a43475d1.tar.gz
zcatch-c1f733a239508feee501894306e22f05a43475d1.zip
Merge pull request #2 from ddnet/pr-invalid
Allow rejoin when player left (fixes #1)
-rw-r--r--src/game/server/gamecontext.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/game/server/gamecontext.cpp b/src/game/server/gamecontext.cpp
index f54849e9..ea9f3199 100644
--- a/src/game/server/gamecontext.cpp
+++ b/src/game/server/gamecontext.cpp
@@ -1195,7 +1195,7 @@ void CGameContext::OnMessage(int MsgID, CUnpacker *pUnpacker, int ClientID)
 		// Switch team on given client and kill/respawn him
 		if(m_pController->CanJoinTeam(pMsg->m_Team, ClientID))
 		{
-			if(m_pController->CanChangeTeam(pPlayer, pMsg->m_Team))
+			if(m_pController->CanChangeTeam(pPlayer, pMsg->m_Team) || !Server()->ClientIngame(pPlayer->m_CaughtBy))
 			{
 				pPlayer->m_LastSetTeam = Server()->Tick();
 				pPlayer->SetTeam(pMsg->m_Team);