-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathplugin_goac.cpp
More file actions
149 lines (114 loc) · 2 KB
/
plugin_goac.cpp
File metadata and controls
149 lines (114 loc) · 2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
#include "plugin_goac.h"
BOOL APIENTRY DllMain(HMODULE hModule, DWORD ul_reason_for_call, LPVOID lpReserved)
{
switch (ul_reason_for_call)
{
case DLL_PROCESS_ATTACH:
{
break;
}
case DLL_PROCESS_DETACH:
{
break;
}
}
return TRUE;
}
void PluginLog(const char* fmt, ...)
{
char buffer[8192];
va_list args;
va_start(args, fmt);
vsnprintf(buffer, 8192, fmt, args);
buffer[8192 - 1] = 0;
va_end(args);
if (g_fnLoggingFunc != nullptr)
{
g_fnLoggingFunc(buffer);
}
}
void SetLoggingFunction(LoggingFunc cb)
{
g_fnLoggingFunc = cb;
}
void SetLobbyChatOutputFunction(LoggingFunc cb)
{
g_fnLobbyChatOutput = cb;
}
void SetACIntegrityViolationOccurredCallback(ACIntegrityViolationCallbackFunc cb)
{
g_fnAnticheatIntegrityViolationOccurredCallback = cb;
}
void SetACActionRequiredCallback(ACPlayerActionRequiredCallbackFunc cb)
{
g_fnAnticheatActionCallback = cb;
}
void SetSendMessageViaTransportCallback(SendMessageViaTransportFunc cb)
{
g_fnSendMessageViaTransport = cb;
}
void ACMessageArrivedViaTransport(uint32_t sourceUserID, void* data, uint32_t dataLen)
{
}
enum class ENetworkChannels
{
Game,
Anticheat,
Ping,
Pong,
InitialHolepunch
};
void Tick()
{
}
bool IsLoggedIn()
{
return true;
}
bool GetMiddlewareAuthToken(char* buffer, size_t bufferSize)
{
memcpy(buffer, "\0", 1);
return true;
}
int Initialize()
{
return 0;
}
PLUGIN_API void Shutdown()
{
}
bool IsExternalProcessRunning()
{
return true;
}
PLUGIN_API int GetAnticheatIdentifier()
{
return 0;
}
void HookupEvents()
{
}
void BeginSession()
{
}
bool DeregisterPlayer(const char* szMiddlewareUserID, uint32_t goUserID)
{
return true;
}
// TODO: deregister player
bool RegisterPlayer(const char* szMiddlewareUserID, uint32_t goUserID)
{
return true;
}
void EndSession()
{
}
typedef void (*LoginCallback)(bool bSuccess);
LoginCallback g_LoginCallback = nullptr;
void Login(const char* szGameToken, LoginCallback cb)
{
cb(true);
}
PLUGIN_API void RefreshToken(const char* gameToken, LoginCallback cb)
{
}