1 | #ifndef ENGINE_ANTIBOT_H |
2 | #define ENGINE_ANTIBOT_H |
3 | |
4 | #include "kernel.h" |
5 | |
6 | class IAntibot : public IInterface |
7 | { |
8 | MACRO_INTERFACE("antibot" ) |
9 | public: |
10 | virtual void RoundStart(class IGameServer *pGameServer) = 0; |
11 | virtual void RoundEnd() = 0; |
12 | |
13 | // Hooks |
14 | virtual void OnPlayerInit(int ClientId) = 0; |
15 | virtual void OnPlayerDestroy(int ClientId) = 0; |
16 | virtual void OnSpawn(int ClientId) = 0; |
17 | virtual void OnHammerFireReloading(int ClientId) = 0; |
18 | virtual void OnHammerFire(int ClientId) = 0; |
19 | virtual void OnHammerHit(int ClientId, int TargetId) = 0; |
20 | virtual void OnDirectInput(int ClientId) = 0; |
21 | virtual void OnCharacterTick(int ClientId) = 0; |
22 | virtual void OnHookAttach(int ClientId, bool Player) = 0; |
23 | |
24 | // Commands |
25 | virtual void ConsoleCommand(const char *pCommand) = 0; |
26 | |
27 | virtual ~IAntibot(){}; |
28 | }; |
29 | |
30 | class IEngineAntibot : public IAntibot |
31 | { |
32 | MACRO_INTERFACE("engineantibot" ) |
33 | public: |
34 | virtual void Init() = 0; |
35 | |
36 | // Hooks |
37 | virtual void OnEngineTick() = 0; |
38 | virtual void OnEngineClientJoin(int ClientId, bool Sixup) = 0; |
39 | virtual void OnEngineClientDrop(int ClientId, const char *pReason) = 0; |
40 | virtual bool OnEngineClientMessage(int ClientId, const void *pData, int Size, int Flags) = 0; |
41 | virtual bool OnEngineServerMessage(int ClientId, const void *pData, int Size, int Flags) = 0; |
42 | virtual bool OnEngineSimulateClientMessage(int *pClientId, void *pBuffer, int BufferSize, int *pOutSize, int *pFlags) = 0; |
43 | |
44 | virtual ~IEngineAntibot(){}; |
45 | }; |
46 | |
47 | #endif //ENGINE_ANTIBOT_H |
48 | |