From 8d5badc26043354e289162cb18d8026d758e0789 Mon Sep 17 00:00:00 2001 From: oy Date: Thu, 5 May 2011 02:13:32 +0200 Subject: skip player input if the chat is active to prevent abusing the linked emoticon. Closes #678 --- src/game/server/player.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src/game/server/player.cpp') diff --git a/src/game/server/player.cpp b/src/game/server/player.cpp index 23cb7d76..e154d19b 100644 --- a/src/game/server/player.cpp +++ b/src/game/server/player.cpp @@ -160,12 +160,20 @@ void CPlayer::OnDisconnect(const char *pReason) void CPlayer::OnPredictedInput(CNetObj_PlayerInput *NewInput) { + // skip the input if chat is active + if((m_PlayerFlags&PLAYERFLAG_CHATTING) && (NewInput->m_PlayerFlags&PLAYERFLAG_CHATTING)) + return; + if(m_pCharacter) m_pCharacter->OnPredictedInput(NewInput); } void CPlayer::OnDirectInput(CNetObj_PlayerInput *NewInput) { + // skip the input if chat is active + if((m_PlayerFlags&PLAYERFLAG_CHATTING) && (NewInput->m_PlayerFlags&PLAYERFLAG_CHATTING)) + return; + m_PlayerFlags = NewInput->m_PlayerFlags; if(m_pCharacter) -- cgit 1.4.1