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
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
|
// Copyright 2020-2021 The Mumble Developers. All rights reserved.
// Use of this source code is governed by a BSD-style license
// that can be found in the LICENSE file at the root of the
// Mumble source tree or at <https://www.mumble.info/LICENSE>.
#ifndef AMONGUS_STRUCTS
#define AMONGUS_STRUCTS
#include <cstdint>
typedef uint32_t ptr_t;
enum class DisconnectReason {
ExitGame = 0x0,
GameFull = 0x1,
GameStarted = 0x2,
GameNotFound = 0x3,
IncorrectVersion = 0x5,
Banned = 0x6,
Kicked = 0x7,
Custom = 0x8,
InvalidName = 0x9,
Hacking = 0xA,
Destroy = 0x10,
Error = 0x11,
IncorrectGame = 0x12,
ServerRequest = 0x13,
ServerFull = 0x14,
IntentionalLeaving = 0xD0,
FocusLostBackground = 0xCF,
FocusLost = 0xD1,
NewConnection = 0xD2
};
enum class DiscoverState { Off, Broadcast };
enum class GameMode { LocalGame, OnlineGame, FreePlay };
enum class GameState { NotJoined, Joined, Started, Ended };
enum class Mode { None, Client, HostAndClient };
struct Il2CppType {
ptr_t data;
uint32_t bits;
};
struct Il2CppClass_0 {
ptr_t image;
ptr_t gcDesc;
ptr_t name;
ptr_t namespaze;
Il2CppType byvalArg;
Il2CppType thisArg;
ptr_t elementClass;
ptr_t castClass;
ptr_t declaringType;
ptr_t parent;
ptr_t genericClass;
ptr_t typeDefinition;
ptr_t interopData;
ptr_t klass;
ptr_t fields;
ptr_t events;
ptr_t properties;
ptr_t methods;
ptr_t nestedTypes;
ptr_t implementedInterfaces;
};
struct UnityEngine_Vector2_Fields {
float x;
float y;
};
struct UnityEngine_Vector2_o {
UnityEngine_Vector2_Fields fields;
};
struct String_Fields {
int32_t length;
// char16_t string[];
};
struct String_o {
ptr_t klass;
ptr_t monitor;
String_Fields fields;
};
struct UnityEngine_Object_Fields {
ptr_t cachedPtr;
};
struct InnerNet_InnerNetClient_Fields : UnityEngine_Object_Fields {
float minSendInterval;
uint32_t netIdCnt;
float timer;
ptr_t spawnableObjects;
ptr_t nonAddressableSpawnableObjects;
bool inOnlineScene;
ptr_t destroyedObjects;
ptr_t allObjects;
ptr_t allObjectsFast;
ptr_t messageWriterArray;
int32_t unknown;
ptr_t networkAddress;
int32_t networkPort;
ptr_t connection;
Mode mode;
int32_t gameId;
int32_t hostId;
int32_t clientId;
ptr_t allClients;
DisconnectReason lastDisconnectReason;
ptr_t lastCustomDisconnect;
ptr_t preSpawnDispatcher;
ptr_t dispatcher;
bool isGamePublic;
GameState gameState;
ptr_t tempQueue;
bool appPaused;
};
struct InnerNet_InnerNetObject_Fields : UnityEngine_Object_Fields {
uint32_t spawnId;
uint32_t netId;
uint32_t dirtyBits;
uint8_t spawnFlags;
uint8_t sendMode;
int32_t ownerId;
bool despawnOnDestroy;
};
struct CustomNetworkTransform_Fields : InnerNet_InnerNetObject_Fields {
ptr_t xRange;
ptr_t yRange;
float sendInterval;
float snapThreshold;
float interpolateMovement;
ptr_t body;
UnityEngine_Vector2_o targetSyncPosition;
UnityEngine_Vector2_o targetSyncVelocity;
uint16_t lastSequenceId;
UnityEngine_Vector2_o prevPosSent;
UnityEngine_Vector2_o prevVelSent;
};
struct CustomNetworkTransform_o {
ptr_t klass;
ptr_t monitor;
CustomNetworkTransform_Fields fields;
};
struct AmongUsClient_Fields : InnerNet_InnerNetClient_Fields {
GameMode gameMode;
ptr_t onlineScene;
ptr_t mainMenuScene;
ptr_t gameDataPrefab;
ptr_t playerPrefab;
ptr_t shipPrefabs;
ptr_t nonAddressableShipPrefabs;
int32_t tutorialMapId;
float spawnRadius;
DiscoverState discoverState;
ptr_t disconnectHandlers;
ptr_t gameListHandlers;
};
struct AmongUsClient_StaticFields {
ptr_t instance;
};
struct AmongUsClient_c {
Il2CppClass_0 _0;
ptr_t interfaceOffsets;
ptr_t staticFields;
};
struct AmongUsClient_o {
ptr_t klass;
ptr_t monitor;
AmongUsClient_Fields fields;
};
struct PlayerControl_Fields : InnerNet_InnerNetObject_Fields {
int32_t lastStartCounter;
uint8_t playerId;
float maxReportDistance;
bool moveable;
bool inVent;
ptr_t cachedData;
ptr_t footSteps;
ptr_t killSfx;
ptr_t killAnimations;
float killTimer;
int32_t remainingEmergencies;
ptr_t nameText;
ptr_t lightPrefab;
ptr_t myLight;
ptr_t textTranslator;
ptr_t collider;
ptr_t myPhysics;
ptr_t netTransform;
ptr_t currentPet;
ptr_t hatRenderer;
ptr_t spriteRenderer;
ptr_t colliderArray;
ptr_t myTasks;
ptr_t scannerAnims;
ptr_t scannersImages;
ptr_t closest;
bool isNew;
bool isDummy;
bool notRealPlayer;
ptr_t cache;
ptr_t itemsInRange;
ptr_t newItemsInRange;
uint8_t scannerCount;
bool infectedSet;
};
struct PlayerControl_StaticFields {
ptr_t localPlayer;
ptr_t gameOptions;
ptr_t allPlayers;
};
struct PlayerControl_c {
Il2CppClass_0 _0;
ptr_t interfaceOffsets;
ptr_t staticFields;
};
struct PlayerControl_o {
ptr_t klass;
ptr_t monitor;
PlayerControl_Fields fields;
};
struct GameData_PlayerInfo_Fields {
uint8_t playerId;
ptr_t playerName;
bool unknown;
uint8_t colorId;
uint32_t hatId;
uint32_t petId;
uint32_t skinId;
bool disconnected;
ptr_t tasks;
bool isImpostor;
bool isDead;
ptr_t object;
};
struct GameData_PlayerInfo_o {
ptr_t klass;
ptr_t monitor;
GameData_PlayerInfo_Fields fields;
};
#endif
|