1#ifndef ANTIBOT_ANTIBOT_INTERFACE_H
2#define ANTIBOT_ANTIBOT_INTERFACE_H
3
4#include <base/dynamic.h>
5
6#ifndef ANTIBOTAPI
7#define ANTIBOTAPI DYNAMIC_IMPORT
8#endif
9
10#include "antibot_data.h"
11extern "C" {
12
13ANTIBOTAPI int AntibotAbiVersion();
14ANTIBOTAPI void AntibotInit(CAntibotData *pCallbackData);
15ANTIBOTAPI void AntibotRoundStart(CAntibotRoundData *pRoundData);
16ANTIBOTAPI void AntibotRoundEnd(void);
17ANTIBOTAPI void AntibotUpdateData(void);
18ANTIBOTAPI void AntibotDestroy(void);
19ANTIBOTAPI void AntibotConsoleCommand(const char *pCommand);
20ANTIBOTAPI void AntibotOnPlayerInit(int ClientId);
21ANTIBOTAPI void AntibotOnPlayerDestroy(int ClientId);
22ANTIBOTAPI void AntibotOnSpawn(int ClientId);
23ANTIBOTAPI void AntibotOnHammerFireReloading(int ClientId);
24ANTIBOTAPI void AntibotOnHammerFire(int ClientId);
25ANTIBOTAPI void AntibotOnHammerHit(int ClientId, int TargetId);
26ANTIBOTAPI void AntibotOnDirectInput(int ClientId);
27ANTIBOTAPI void AntibotOnCharacterTick(int ClientId);
28ANTIBOTAPI void AntibotOnHookAttach(int ClientId, bool Player);
29ANTIBOTAPI void AntibotOnEngineTick(void);
30ANTIBOTAPI void AntibotOnEngineClientJoin(int ClientId, bool Sixup);
31ANTIBOTAPI void AntibotOnEngineClientDrop(int ClientId, const char *pReason);
32// Returns true if the message shouldn't be processed by the server.
33ANTIBOTAPI bool AntibotOnEngineClientMessage(int ClientId, const void *pData, int Size, int Flags);
34ANTIBOTAPI bool AntibotOnEngineServerMessage(int ClientId, const void *pData, int Size, int Flags);
35// Returns true if the server should simulate receiving a client message.
36ANTIBOTAPI bool AntibotOnEngineSimulateClientMessage(int *pClientId, void *pBuffer, int BufferSize, int *pOutSize, int *pFlags);
37}
38
39#endif // ANTIBOT_ANTIBOT_INTERFACE_H
40