diff options
| author | Teetime <teetimetw@yahoo.de> | 2011-11-05 18:03:33 +0100 |
|---|---|---|
| committer | Teetime <teetimetw@yahoo.de> | 2011-11-05 18:03:33 +0100 |
| commit | 744018aaafb218321907c4e0c0e0b4472fb7e1b9 (patch) | |
| tree | 50323eec409c701dfd16c5275ef17d795b85efc9 /src/game/server/gamecontext.cpp | |
| parent | 24718cc8d6f8021f6c54e1c2207f7e68b75a22c3 (diff) | |
| download | zcatch-744018aaafb218321907c4e0c0e0b4472fb7e1b9.tar.gz zcatch-744018aaafb218321907c4e0c0e0b4472fb7e1b9.zip | |
Added possibility to freeze players and improved and extended anticamper
Diffstat (limited to 'src/game/server/gamecontext.cpp')
| -rw-r--r-- | src/game/server/gamecontext.cpp | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/src/game/server/gamecontext.cpp b/src/game/server/gamecontext.cpp index a34890e5..1900b314 100644 --- a/src/game/server/gamecontext.cpp +++ b/src/game/server/gamecontext.cpp @@ -1124,13 +1124,18 @@ void CGameContext::OnMessage(int MsgID, CUnpacker *pUnpacker, int ClientID) else if (MsgID == NETMSGTYPE_CL_KILL && !m_World.m_Paused) { /* begin zCatch*/ - if(pPlayer->m_LastKill && pPlayer->m_LastKill + Server()->TickSpeed()*15 > Server()->Tick()) - { - if((pPlayer->GetTeam() == TEAM_SPECTATORS) || (pPlayer->m_LastKillTry && pPlayer->m_LastKillTry+Server()->TickSpeed()*2 > Server()->Tick())) - return; - SendChatTarget(ClientID, "Only one kill in 15sec is allowed."); + if((pPlayer->GetTeam() == TEAM_SPECTATORS) || (pPlayer->m_LastKillTry && pPlayer->m_LastKillTry+Server()->TickSpeed()*2 > Server()->Tick())) + return; + + if(pPlayer->m_FreezeTicks) + { + SendChatTarget(ClientID, "You can't kill yourself while you're frozen"); pPlayer->m_LastKillTry = Server()->Tick(); } + else if(pPlayer->m_LastKill && pPlayer->m_LastKill + Server()->TickSpeed()*15 > Server()->Tick()) + { + SendBroadcast("Only one kill in 15sec is allowed.", ClientID); + } else { pPlayer->m_LastKill = Server()->Tick(); |