diff --git a/src/game/server/gameworld.cpp b/src/game/server/gameworld.cpp index dc2a3251a..5dab26746 100644 --- a/src/game/server/gameworld.cpp +++ b/src/game/server/gameworld.cpp @@ -150,6 +150,11 @@ void CGameWorld::Reset() GameServer()->CreateAllEntities(false); } +void CGameWorld::RemoveEntitiesFromPlayer(int PlayerId) +{ + RemoveEntitiesFromPlayers(&PlayerId, 1); +} + void CGameWorld::RemoveEntitiesFromPlayers(int PlayerIds[], int NumPlayers) { for(auto *pEnt : m_apFirstEntityTypes) diff --git a/src/game/server/gameworld.h b/src/game/server/gameworld.h index 41b451873..9cec9ae31 100644 --- a/src/game/server/gameworld.h +++ b/src/game/server/gameworld.h @@ -121,6 +121,7 @@ public: */ void RemoveEntity(CEntity *pEntity); + void RemoveEntitiesFromPlayer(int PlayerId); void RemoveEntitiesFromPlayers(int PlayerIds[], int NumPlayers); /* diff --git a/src/game/server/teams.cpp b/src/game/server/teams.cpp index 73bb2a2e6..cc089d261 100644 --- a/src/game/server/teams.cpp +++ b/src/game/server/teams.cpp @@ -413,6 +413,7 @@ void CGameTeams::SetForceCharacterTeam(int ClientID, int Team) GetPlayer(ClientID)->m_VotedForPractice = false; GetPlayer(ClientID)->m_SwapTargetsClientID = -1; } + m_pGameContext->m_World.RemoveEntitiesFromPlayer(ClientID); } if(Team != TEAM_SUPER && (m_aTeamState[Team] == TEAMSTATE_EMPTY || m_aTeamLocked[Team]))