diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/engine/server.h | 2 | ||||
| -rw-r--r-- | src/engine/server/server.h | 2 | ||||
| -rw-r--r-- | src/game/server/gamecontext.cpp | 4 |
3 files changed, 6 insertions, 2 deletions
diff --git a/src/engine/server.h b/src/engine/server.h index 7896f911..ef7f34bd 100644 --- a/src/engine/server.h +++ b/src/engine/server.h @@ -70,6 +70,8 @@ public: virtual bool DemoRecorder_IsRecording() = 0; //zCatch virtual void MapReload() = 0; + + virtual int GetNumLoggedInAdmins() = 0; }; class IGameServer : public IInterface diff --git a/src/engine/server/server.h b/src/engine/server/server.h index 02106004..c0216242 100644 --- a/src/engine/server/server.h +++ b/src/engine/server/server.h @@ -278,6 +278,8 @@ public: static void ConVoteban(IConsole::IResult *pResult, void *pUser); static void ConUnvoteban(IConsole::IResult *pResult, void *pUser); static void ConVotebans(IConsole::IResult *pResult, void *pUser); + + virtual int GetNumLoggedInAdmins() { return m_numLoggedInAdmins; } }; #endif diff --git a/src/game/server/gamecontext.cpp b/src/game/server/gamecontext.cpp index 2c34af8c..ee906059 100644 --- a/src/game/server/gamecontext.cpp +++ b/src/game/server/gamecontext.cpp @@ -529,8 +529,8 @@ void CGameContext::OnTick() // bot detection // it is based on the behaviour of some bots to shoot at a player's _exact_ position - // check each player - if(g_Config.m_SvBotDetection) + // check each player, check only if an admin is online + if(g_Config.m_SvBotDetection && Server()->GetNumLoggedInAdmins()) { char aBuf[128]; const CCharacter::LastPosition *pos, *posVictim; |