diff --git a/core/HalfLife2.cpp b/core/HalfLife2.cpp index 57e65941..ab2765a1 100644 --- a/core/HalfLife2.cpp +++ b/core/HalfLife2.cpp @@ -897,6 +897,14 @@ const char *CHalfLife2::CurrentCommandName() void CHalfLife2::AddDelayedKick(int client, int userid, const char *msg) { + CPlayer *pPlayer = g_Players.GetPlayerByIndex(client); + if (!pPlayer || !pPlayer->IsConnected() || pPlayer->IsInKickQueue()) + { + return; + } + + pPlayer->MarkAsBeingKicked(); + DelayedKickInfo kick; kick.client = client; diff --git a/core/smn_player.cpp b/core/smn_player.cpp index acb974db..d803c1d0 100644 --- a/core/smn_player.cpp +++ b/core/smn_player.cpp @@ -1404,7 +1404,6 @@ static cell_t KickClient(IPluginContext *pContext, const cell_t *params) return 1; } - pPlayer->MarkAsBeingKicked(); g_HL2.AddDelayedKick(client, pPlayer->GetUserId(), buffer); return 1;