core/HalfLife2.cpp
changeset 2162 59c5dc056c69
parent 1952 b7aa2b626807
child 2289 44045ead61cd
     1.1 --- a/core/HalfLife2.cpp	Sun Jul 06 00:02:11 2008 +0000
     1.2 +++ b/core/HalfLife2.cpp	Sun Jul 06 00:45:26 2008 +0000
     1.3 @@ -511,3 +511,31 @@
     1.4  	return m_CommandStack.front().cmd;
     1.5  #endif
     1.6  }
     1.7 +
     1.8 +void CHalfLife2::AddDelayedKick(int client, int userid, const char *msg)
     1.9 +{
    1.10 +	DelayedKickInfo kick;
    1.11 +
    1.12 +	kick.client = client;
    1.13 +	kick.userid = userid;
    1.14 +	UTIL_Format(kick.buffer, sizeof(kick.buffer), "%s", msg);
    1.15 +
    1.16 +	m_DelayedKicks.push(kick);
    1.17 +}
    1.18 +
    1.19 +void CHalfLife2::ProcessDelayedKicks()
    1.20 +{
    1.21 +	while (!m_DelayedKicks.empty())
    1.22 +	{
    1.23 +		DelayedKickInfo info = m_DelayedKicks.first();
    1.24 +		m_DelayedKicks.pop();
    1.25 +
    1.26 +		CPlayer *player = g_Players.GetPlayerByIndex(info.client);
    1.27 +		if (player == NULL || player->GetUserId() != info.userid)
    1.28 +		{
    1.29 +			continue;
    1.30 +		}
    1.31 +
    1.32 +		player->Kick(info.buffer);
    1.33 +	}
    1.34 +}