1 /* Automatically generated nanopb header */
2 /* Generated by nanopb-0.4.4 */
3 
4 #ifndef PB_MSG_PB_H_INCLUDED
5 #define PB_MSG_PB_H_INCLUDED
6 #include <pb.h>
7 
8 #if PB_PROTO_HEADER_VERSION != 40
9 #error Regenerate this file with the current version of nanopb generator.
10 #endif
11 
12 /* Struct definitions */
13 typedef struct _NActorDie {
14     uint32_t UID;
15 } NActorDie;
16 
17 typedef struct _NActorDir {
18     uint32_t UID;
19     int32_t Dir;
20 } NActorDir;
21 
22 typedef struct _NActorHeal {
23     uint32_t UID;
24     int32_t PlayerUID;
25     int32_t Amount;
26     bool IsRandomSpawned;
27 } NActorHeal;
28 
29 typedef struct _NActorMelee {
30     uint32_t UID;
31     char BulletClass[128];
32     int32_t HitType;
33     int32_t TargetKind;
34     uint32_t TargetUID;
35 } NActorMelee;
36 
37 typedef struct _NActorPickupAll {
38     uint32_t UID;
39     bool PickupAll;
40 } NActorPickupAll;
41 
42 typedef struct _NActorPilot {
43     uint32_t UID;
44     int32_t VehicleUID;
45     bool On;
46 } NActorPilot;
47 
48 typedef struct _NActorReplaceGun {
49     uint32_t UID;
50     uint32_t GunIdx;
51     char Gun[128];
52 } NActorReplaceGun;
53 
54 typedef struct _NActorState {
55     uint32_t UID;
56     int32_t State;
57 } NActorState;
58 
59 typedef struct _NActorSwitchGun {
60     uint32_t UID;
61     uint32_t GunIdx;
62 } NActorSwitchGun;
63 
64 typedef struct _NAmmo {
65     uint32_t Id;
66     uint32_t Amount;
67 } NAmmo;
68 
69 typedef struct _NCampaignDef {
70     char Path[4096];
71     int32_t GameMode;
72     uint32_t Mission;
73 } NCampaignDef;
74 
75 typedef struct _NClientId {
76     uint32_t Id;
77     uint32_t FirstPlayerUID;
78 } NClientId;
79 
80 typedef struct _NColor {
81     int32_t RGBA;
82 } NColor;
83 
84 typedef struct _NConfig {
85     char Name[128];
86     char Value[128];
87 } NConfig;
88 
89 typedef struct _NGameBegin {
90     int32_t MissionTime;
91 } NGameBegin;
92 
93 typedef struct _NGunState {
94     uint32_t ActorUID;
95     int32_t Barrel;
96     int32_t State;
97 } NGunState;
98 
99 typedef struct _NMapObjectRemove {
100     uint32_t UID;
101     int32_t ActorUID;
102     uint32_t Flags;
103 } NMapObjectRemove;
104 
105 typedef struct _NMissionComplete {
106     bool ShowMsg;
107 } NMissionComplete;
108 
109 typedef struct _NMissionEnd {
110     int32_t Delay;
111     bool IsQuit;
112     char Msg[128];
113     uint32_t Mission;
114 } NMissionEnd;
115 
116 typedef struct _NObjectiveUpdate {
117     uint32_t ObjectiveId;
118     int32_t Count;
119 } NObjectiveUpdate;
120 
121 typedef struct _NPlayerRemove {
122     uint32_t UID;
123 } NPlayerRemove;
124 
125 typedef struct _NPlayerStats {
126     int32_t Score;
127     int32_t Kills;
128     int32_t Suicides;
129     int32_t Friendlies;
130 } NPlayerStats;
131 
132 typedef struct _NRemoveBullet {
133     uint32_t UID;
134 } NRemoveBullet;
135 
136 typedef struct _NRemovePickup {
137     uint32_t UID;
138     int32_t SpawnerUID;
139 } NRemovePickup;
140 
141 typedef struct _NRescueCharacter {
142     uint32_t UID;
143 } NRescueCharacter;
144 
145 typedef struct _NScore {
146     uint32_t PlayerUID;
147     int32_t Score;
148 } NScore;
149 
150 typedef struct _NServerInfo {
151     int32_t ProtocolVersion;
152     uint32_t ENetPort;
153     char Hostname[12];
154     int32_t GameMode;
155     char CampaignName[20];
156     int32_t MissionNumber;
157     int32_t NumPlayers;
158     int32_t MaxPlayers;
159 } NServerInfo;
160 
161 typedef struct _NVec2 {
162     float x;
163     float y;
164 } NVec2;
165 
166 typedef struct _NVec2i {
167     int32_t x;
168     int32_t y;
169 } NVec2i;
170 
171 typedef struct _NActorAdd {
172     uint32_t UID;
173     int32_t PilotUID;
174     int32_t VehicleUID;
175     uint32_t CharId;
176     int32_t Direction;
177     int32_t Health;
178     int32_t PlayerUID;
179     uint32_t ThingFlags;
180     bool has_Pos;
181     NVec2 Pos;
182     pb_size_t Ammo_count;
183     NAmmo Ammo[128];
184 } NActorAdd;
185 
186 typedef struct _NActorAddAmmo {
187     uint32_t UID;
188     int32_t PlayerUID;
189     bool has_Ammo;
190     NAmmo Ammo;
191     bool IsRandomSpawned;
192 } NActorAddAmmo;
193 
194 typedef struct _NActorImpulse {
195     uint32_t UID;
196     bool has_Vel;
197     NVec2 Vel;
198     bool has_Pos;
199     NVec2 Pos;
200 } NActorImpulse;
201 
202 typedef struct _NActorMove {
203     uint32_t UID;
204     bool has_Pos;
205     NVec2 Pos;
206     bool has_MoveVel;
207     NVec2 MoveVel;
208 } NActorMove;
209 
210 typedef struct _NActorSlide {
211     uint32_t UID;
212     bool has_Vel;
213     NVec2 Vel;
214 } NActorSlide;
215 
216 typedef struct _NActorUseAmmo {
217     uint32_t UID;
218     int32_t PlayerUID;
219     bool has_Ammo;
220     NAmmo Ammo;
221 } NActorUseAmmo;
222 
223 typedef struct _NAddBullet {
224     uint32_t UID;
225     char BulletClass[128];
226     bool has_MuzzlePos;
227     NVec2 MuzzlePos;
228     int32_t MuzzleHeight;
229     float Angle;
230     int32_t Elevation;
231     uint32_t Flags;
232     int32_t ActorUID;
233 } NAddBullet;
234 
235 typedef struct _NAddKeys {
236     uint32_t KeyFlags;
237     bool has_Pos;
238     NVec2 Pos;
239 } NAddKeys;
240 
241 typedef struct _NAddPickup {
242     uint32_t UID;
243     char PickupClass[128];
244     bool IsRandomSpawned;
245     int32_t SpawnerUID;
246     uint32_t ThingFlags;
247     bool has_Pos;
248     NVec2 Pos;
249 } NAddPickup;
250 
251 typedef struct _NBulletBounce {
252     uint32_t UID;
253     int32_t HitType;
254     bool Spark;
255     bool has_BouncePos;
256     NVec2 BouncePos;
257     bool has_Pos;
258     NVec2 Pos;
259     bool has_Vel;
260     NVec2 Vel;
261     bool HitSound;
262     bool WallMark;
263 } NBulletBounce;
264 
265 typedef struct _NCharColors {
266     bool has_Skin;
267     NColor Skin;
268     bool has_Arms;
269     NColor Arms;
270     bool has_Body;
271     NColor Body;
272     bool has_Legs;
273     NColor Legs;
274     bool has_Hair;
275     NColor Hair;
276     bool has_Feet;
277     NColor Feet;
278 } NCharColors;
279 
280 typedef struct _NExploreTiles_Run {
281     bool has_Tile;
282     NVec2i Tile;
283     int32_t Run;
284 } NExploreTiles_Run;
285 
286 typedef struct _NGunFire {
287     int32_t ActorUID;
288     char Gun[128];
289     bool has_MuzzlePos;
290     NVec2 MuzzlePos;
291     int32_t Z;
292     float Angle;
293     bool Sound;
294     uint32_t Flags;
295     bool IsGun;
296 } NGunFire;
297 
298 typedef struct _NGunReload {
299     int32_t PlayerUID;
300     char Gun[128];
301     bool has_Pos;
302     NVec2 Pos;
303     int32_t Direction;
304 } NGunReload;
305 
306 typedef struct _NMapObjectAdd {
307     uint32_t UID;
308     char MapObjectClass[128];
309     bool has_Pos;
310     NVec2 Pos;
311     uint32_t ThingFlags;
312     int32_t Health;
313     bool has_Mask;
314     NColor Mask;
315 } NMapObjectAdd;
316 
317 typedef struct _NSound {
318     char Sound[128];
319     bool has_Pos;
320     NVec2 Pos;
321     uint32_t Distance;
322 } NSound;
323 
324 typedef struct _NThingDamage {
325     uint32_t UID;
326     int32_t Kind;
327     int32_t SourceActorUID;
328     int32_t Power;
329     bool has_Vel;
330     NVec2 Vel;
331     float Mass;
332     uint32_t Flags;
333     int32_t Special;
334     int32_t SpecialTicks;
335 } NThingDamage;
336 
337 typedef struct _NTileSet {
338     bool has_Pos;
339     NVec2i Pos;
340     char ClassName[128];
341     char ClassAltName[128];
342     int32_t RunLength;
343 } NTileSet;
344 
345 typedef struct _NTrigger {
346     uint32_t ID;
347     bool has_Tile;
348     NVec2i Tile;
349 } NTrigger;
350 
351 typedef struct _NExploreTiles {
352     pb_size_t Runs_count;
353     NExploreTiles_Run Runs[16];
354 } NExploreTiles;
355 
356 typedef struct _NPlayerData {
357     char Name[20];
358     char CharacterClass[128];
359     char Hair[128];
360     bool has_Colors;
361     NCharColors Colors;
362     pb_size_t Weapons_count;
363     char Weapons[3][128];
364     uint32_t Lives;
365     bool has_Stats;
366     NPlayerStats Stats;
367     bool has_Totals;
368     NPlayerStats Totals;
369     uint32_t MaxHealth;
370     uint32_t LastMission;
371     uint32_t UID;
372     pb_size_t Ammo_count;
373     NAmmo Ammo[128];
374 } NPlayerData;
375 
376 
377 #ifdef __cplusplus
378 extern "C" {
379 #endif
380 
381 /* Initializer values for message structs */
382 #define NServerInfo_init_default                 {0, 0, "", 0, "", 0, 0, 0}
383 #define NClientId_init_default                   {0, 0}
384 #define NCampaignDef_init_default                {"", 0, 0}
385 #define NColor_init_default                      {0}
386 #define NCharColors_init_default                 {false, NColor_init_default, false, NColor_init_default, false, NColor_init_default, false, NColor_init_default, false, NColor_init_default, false, NColor_init_default}
387 #define NPlayerStats_init_default                {0, 0, 0, 0}
388 #define NPlayerData_init_default                 {"", "", "", false, NCharColors_init_default, 0, {"", "", ""}, 0, false, NPlayerStats_init_default, false, NPlayerStats_init_default, 0, 0, 0, 0, {NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default}}
389 #define NPlayerRemove_init_default               {0}
390 #define NConfig_init_default                     {"", ""}
391 #define NTileSet_init_default                    {false, NVec2i_init_default, "", "", 0}
392 #define NThingDamage_init_default                {0, 0, 0, 0, false, NVec2_init_default, 0, 0, 0, 0}
393 #define NMapObjectAdd_init_default               {0, "", false, NVec2_init_default, 0, 0, false, NColor_init_default}
394 #define NMapObjectRemove_init_default            {0, 0, 0}
395 #define NScore_init_default                      {0, 0}
396 #define NSound_init_default                      {"", false, NVec2_init_default, 0}
397 #define NVec2i_init_default                      {0, 0}
398 #define NVec2_init_default                       {0, 0}
399 #define NGameBegin_init_default                  {0}
400 #define NActorAdd_init_default                   {0, 0, 0, 0, 0, 0, 0, 0, false, NVec2_init_default, 0, {NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default, NAmmo_init_default}}
401 #define NActorMove_init_default                  {0, false, NVec2_init_default, false, NVec2_init_default}
402 #define NActorState_init_default                 {0, 0}
403 #define NActorDir_init_default                   {0, 0}
404 #define NActorSlide_init_default                 {0, false, NVec2_init_default}
405 #define NActorImpulse_init_default               {0, false, NVec2_init_default, false, NVec2_init_default}
406 #define NActorSwitchGun_init_default             {0, 0}
407 #define NActorPickupAll_init_default             {0, 0}
408 #define NActorReplaceGun_init_default            {0, 0, ""}
409 #define NActorHeal_init_default                  {0, 0, 0, 0}
410 #define NAmmo_init_default                       {0, 0}
411 #define NActorAddAmmo_init_default               {0, 0, false, NAmmo_init_default, 0}
412 #define NActorUseAmmo_init_default               {0, 0, false, NAmmo_init_default}
413 #define NActorDie_init_default                   {0}
414 #define NActorMelee_init_default                 {0, "", 0, 0, 0}
415 #define NActorPilot_init_default                 {0, 0, 0}
416 #define NAddPickup_init_default                  {0, "", 0, 0, 0, false, NVec2_init_default}
417 #define NRemovePickup_init_default               {0, 0}
418 #define NBulletBounce_init_default               {0, 0, 0, false, NVec2_init_default, false, NVec2_init_default, false, NVec2_init_default, 0, 0}
419 #define NRemoveBullet_init_default               {0}
420 #define NGunReload_init_default                  {0, "", false, NVec2_init_default, 0}
421 #define NGunFire_init_default                    {0, "", false, NVec2_init_default, 0, 0, 0, 0, 0}
422 #define NGunState_init_default                   {0, 0, 0}
423 #define NAddBullet_init_default                  {0, "", false, NVec2_init_default, 0, 0, 0, 0, 0}
424 #define NTrigger_init_default                    {0, false, NVec2i_init_default}
425 #define NExploreTiles_init_default               {0, {NExploreTiles_Run_init_default, NExploreTiles_Run_init_default, NExploreTiles_Run_init_default, NExploreTiles_Run_init_default, NExploreTiles_Run_init_default, NExploreTiles_Run_init_default, NExploreTiles_Run_init_default, NExploreTiles_Run_init_default, NExploreTiles_Run_init_default, NExploreTiles_Run_init_default, NExploreTiles_Run_init_default, NExploreTiles_Run_init_default, NExploreTiles_Run_init_default, NExploreTiles_Run_init_default, NExploreTiles_Run_init_default, NExploreTiles_Run_init_default}}
426 #define NExploreTiles_Run_init_default           {false, NVec2i_init_default, 0}
427 #define NRescueCharacter_init_default            {0}
428 #define NObjectiveUpdate_init_default            {0, 0}
429 #define NAddKeys_init_default                    {0, false, NVec2_init_default}
430 #define NMissionComplete_init_default            {0}
431 #define NMissionEnd_init_default                 {0, 0, "", 0}
432 #define NServerInfo_init_zero                    {0, 0, "", 0, "", 0, 0, 0}
433 #define NClientId_init_zero                      {0, 0}
434 #define NCampaignDef_init_zero                   {"", 0, 0}
435 #define NColor_init_zero                         {0}
436 #define NCharColors_init_zero                    {false, NColor_init_zero, false, NColor_init_zero, false, NColor_init_zero, false, NColor_init_zero, false, NColor_init_zero, false, NColor_init_zero}
437 #define NPlayerStats_init_zero                   {0, 0, 0, 0}
438 #define NPlayerData_init_zero                    {"", "", "", false, NCharColors_init_zero, 0, {"", "", ""}, 0, false, NPlayerStats_init_zero, false, NPlayerStats_init_zero, 0, 0, 0, 0, {NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero}}
439 #define NPlayerRemove_init_zero                  {0}
440 #define NConfig_init_zero                        {"", ""}
441 #define NTileSet_init_zero                       {false, NVec2i_init_zero, "", "", 0}
442 #define NThingDamage_init_zero                   {0, 0, 0, 0, false, NVec2_init_zero, 0, 0, 0, 0}
443 #define NMapObjectAdd_init_zero                  {0, "", false, NVec2_init_zero, 0, 0, false, NColor_init_zero}
444 #define NMapObjectRemove_init_zero               {0, 0, 0}
445 #define NScore_init_zero                         {0, 0}
446 #define NSound_init_zero                         {"", false, NVec2_init_zero, 0}
447 #define NVec2i_init_zero                         {0, 0}
448 #define NVec2_init_zero                          {0, 0}
449 #define NGameBegin_init_zero                     {0}
450 #define NActorAdd_init_zero                      {0, 0, 0, 0, 0, 0, 0, 0, false, NVec2_init_zero, 0, {NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero, NAmmo_init_zero}}
451 #define NActorMove_init_zero                     {0, false, NVec2_init_zero, false, NVec2_init_zero}
452 #define NActorState_init_zero                    {0, 0}
453 #define NActorDir_init_zero                      {0, 0}
454 #define NActorSlide_init_zero                    {0, false, NVec2_init_zero}
455 #define NActorImpulse_init_zero                  {0, false, NVec2_init_zero, false, NVec2_init_zero}
456 #define NActorSwitchGun_init_zero                {0, 0}
457 #define NActorPickupAll_init_zero                {0, 0}
458 #define NActorReplaceGun_init_zero               {0, 0, ""}
459 #define NActorHeal_init_zero                     {0, 0, 0, 0}
460 #define NAmmo_init_zero                          {0, 0}
461 #define NActorAddAmmo_init_zero                  {0, 0, false, NAmmo_init_zero, 0}
462 #define NActorUseAmmo_init_zero                  {0, 0, false, NAmmo_init_zero}
463 #define NActorDie_init_zero                      {0}
464 #define NActorMelee_init_zero                    {0, "", 0, 0, 0}
465 #define NActorPilot_init_zero                    {0, 0, 0}
466 #define NAddPickup_init_zero                     {0, "", 0, 0, 0, false, NVec2_init_zero}
467 #define NRemovePickup_init_zero                  {0, 0}
468 #define NBulletBounce_init_zero                  {0, 0, 0, false, NVec2_init_zero, false, NVec2_init_zero, false, NVec2_init_zero, 0, 0}
469 #define NRemoveBullet_init_zero                  {0}
470 #define NGunReload_init_zero                     {0, "", false, NVec2_init_zero, 0}
471 #define NGunFire_init_zero                       {0, "", false, NVec2_init_zero, 0, 0, 0, 0, 0}
472 #define NGunState_init_zero                      {0, 0, 0}
473 #define NAddBullet_init_zero                     {0, "", false, NVec2_init_zero, 0, 0, 0, 0, 0}
474 #define NTrigger_init_zero                       {0, false, NVec2i_init_zero}
475 #define NExploreTiles_init_zero                  {0, {NExploreTiles_Run_init_zero, NExploreTiles_Run_init_zero, NExploreTiles_Run_init_zero, NExploreTiles_Run_init_zero, NExploreTiles_Run_init_zero, NExploreTiles_Run_init_zero, NExploreTiles_Run_init_zero, NExploreTiles_Run_init_zero, NExploreTiles_Run_init_zero, NExploreTiles_Run_init_zero, NExploreTiles_Run_init_zero, NExploreTiles_Run_init_zero, NExploreTiles_Run_init_zero, NExploreTiles_Run_init_zero, NExploreTiles_Run_init_zero, NExploreTiles_Run_init_zero}}
476 #define NExploreTiles_Run_init_zero              {false, NVec2i_init_zero, 0}
477 #define NRescueCharacter_init_zero               {0}
478 #define NObjectiveUpdate_init_zero               {0, 0}
479 #define NAddKeys_init_zero                       {0, false, NVec2_init_zero}
480 #define NMissionComplete_init_zero               {0}
481 #define NMissionEnd_init_zero                    {0, 0, "", 0}
482 
483 /* Field tags (for use in manual encoding/decoding) */
484 #define NActorDie_UID_tag                        1
485 #define NActorDir_UID_tag                        1
486 #define NActorDir_Dir_tag                        2
487 #define NActorHeal_UID_tag                       1
488 #define NActorHeal_PlayerUID_tag                 2
489 #define NActorHeal_Amount_tag                    3
490 #define NActorHeal_IsRandomSpawned_tag           4
491 #define NActorMelee_UID_tag                      1
492 #define NActorMelee_BulletClass_tag              2
493 #define NActorMelee_HitType_tag                  3
494 #define NActorMelee_TargetKind_tag               4
495 #define NActorMelee_TargetUID_tag                5
496 #define NActorPickupAll_UID_tag                  1
497 #define NActorPickupAll_PickupAll_tag            2
498 #define NActorPilot_UID_tag                      1
499 #define NActorPilot_VehicleUID_tag               2
500 #define NActorPilot_On_tag                       3
501 #define NActorReplaceGun_UID_tag                 1
502 #define NActorReplaceGun_GunIdx_tag              2
503 #define NActorReplaceGun_Gun_tag                 3
504 #define NActorState_UID_tag                      1
505 #define NActorState_State_tag                    2
506 #define NActorSwitchGun_UID_tag                  1
507 #define NActorSwitchGun_GunIdx_tag               2
508 #define NAmmo_Id_tag                             1
509 #define NAmmo_Amount_tag                         2
510 #define NCampaignDef_Path_tag                    1
511 #define NCampaignDef_GameMode_tag                2
512 #define NCampaignDef_Mission_tag                 3
513 #define NClientId_Id_tag                         1
514 #define NClientId_FirstPlayerUID_tag             2
515 #define NColor_RGBA_tag                          1
516 #define NConfig_Name_tag                         1
517 #define NConfig_Value_tag                        2
518 #define NGameBegin_MissionTime_tag               1
519 #define NGunState_ActorUID_tag                   1
520 #define NGunState_Barrel_tag                     2
521 #define NGunState_State_tag                      3
522 #define NMapObjectRemove_UID_tag                 1
523 #define NMapObjectRemove_ActorUID_tag            2
524 #define NMapObjectRemove_Flags_tag               3
525 #define NMissionComplete_ShowMsg_tag             1
526 #define NMissionEnd_Delay_tag                    1
527 #define NMissionEnd_IsQuit_tag                   2
528 #define NMissionEnd_Msg_tag                      3
529 #define NMissionEnd_Mission_tag                  4
530 #define NObjectiveUpdate_ObjectiveId_tag         1
531 #define NObjectiveUpdate_Count_tag               2
532 #define NPlayerRemove_UID_tag                    1
533 #define NPlayerStats_Score_tag                   1
534 #define NPlayerStats_Kills_tag                   2
535 #define NPlayerStats_Suicides_tag                3
536 #define NPlayerStats_Friendlies_tag              4
537 #define NRemoveBullet_UID_tag                    1
538 #define NRemovePickup_UID_tag                    1
539 #define NRemovePickup_SpawnerUID_tag             2
540 #define NRescueCharacter_UID_tag                 1
541 #define NScore_PlayerUID_tag                     1
542 #define NScore_Score_tag                         2
543 #define NServerInfo_ProtocolVersion_tag          1
544 #define NServerInfo_ENetPort_tag                 2
545 #define NServerInfo_Hostname_tag                 3
546 #define NServerInfo_GameMode_tag                 4
547 #define NServerInfo_CampaignName_tag             5
548 #define NServerInfo_MissionNumber_tag            6
549 #define NServerInfo_NumPlayers_tag               7
550 #define NServerInfo_MaxPlayers_tag               8
551 #define NVec2_x_tag                              1
552 #define NVec2_y_tag                              2
553 #define NVec2i_x_tag                             1
554 #define NVec2i_y_tag                             2
555 #define NActorAdd_UID_tag                        1
556 #define NActorAdd_PilotUID_tag                   2
557 #define NActorAdd_VehicleUID_tag                 3
558 #define NActorAdd_CharId_tag                     4
559 #define NActorAdd_Direction_tag                  5
560 #define NActorAdd_Health_tag                     6
561 #define NActorAdd_PlayerUID_tag                  7
562 #define NActorAdd_ThingFlags_tag                 8
563 #define NActorAdd_Pos_tag                        9
564 #define NActorAdd_Ammo_tag                       10
565 #define NActorAddAmmo_UID_tag                    1
566 #define NActorAddAmmo_PlayerUID_tag              2
567 #define NActorAddAmmo_Ammo_tag                   3
568 #define NActorAddAmmo_IsRandomSpawned_tag        4
569 #define NActorImpulse_UID_tag                    1
570 #define NActorImpulse_Vel_tag                    2
571 #define NActorImpulse_Pos_tag                    3
572 #define NActorMove_UID_tag                       1
573 #define NActorMove_Pos_tag                       2
574 #define NActorMove_MoveVel_tag                   3
575 #define NActorSlide_UID_tag                      1
576 #define NActorSlide_Vel_tag                      2
577 #define NActorUseAmmo_UID_tag                    1
578 #define NActorUseAmmo_PlayerUID_tag              2
579 #define NActorUseAmmo_Ammo_tag                   3
580 #define NAddBullet_UID_tag                       1
581 #define NAddBullet_BulletClass_tag               2
582 #define NAddBullet_MuzzlePos_tag                 3
583 #define NAddBullet_MuzzleHeight_tag              4
584 #define NAddBullet_Angle_tag                     5
585 #define NAddBullet_Elevation_tag                 6
586 #define NAddBullet_Flags_tag                     7
587 #define NAddBullet_ActorUID_tag                  8
588 #define NAddKeys_KeyFlags_tag                    1
589 #define NAddKeys_Pos_tag                         2
590 #define NAddPickup_UID_tag                       1
591 #define NAddPickup_PickupClass_tag               2
592 #define NAddPickup_IsRandomSpawned_tag           3
593 #define NAddPickup_SpawnerUID_tag                4
594 #define NAddPickup_ThingFlags_tag                5
595 #define NAddPickup_Pos_tag                       6
596 #define NBulletBounce_UID_tag                    1
597 #define NBulletBounce_HitType_tag                2
598 #define NBulletBounce_Spark_tag                  3
599 #define NBulletBounce_BouncePos_tag              4
600 #define NBulletBounce_Pos_tag                    5
601 #define NBulletBounce_Vel_tag                    6
602 #define NBulletBounce_HitSound_tag               7
603 #define NBulletBounce_WallMark_tag               8
604 #define NCharColors_Skin_tag                     1
605 #define NCharColors_Arms_tag                     2
606 #define NCharColors_Body_tag                     3
607 #define NCharColors_Legs_tag                     4
608 #define NCharColors_Hair_tag                     5
609 #define NCharColors_Feet_tag                     6
610 #define NExploreTiles_Run_Tile_tag               1
611 #define NExploreTiles_Run_Run_tag                2
612 #define NGunFire_ActorUID_tag                    1
613 #define NGunFire_Gun_tag                         2
614 #define NGunFire_MuzzlePos_tag                   3
615 #define NGunFire_Z_tag                           4
616 #define NGunFire_Angle_tag                       5
617 #define NGunFire_Sound_tag                       6
618 #define NGunFire_Flags_tag                       7
619 #define NGunFire_IsGun_tag                       8
620 #define NGunReload_PlayerUID_tag                 1
621 #define NGunReload_Gun_tag                       2
622 #define NGunReload_Pos_tag                       3
623 #define NGunReload_Direction_tag                 4
624 #define NMapObjectAdd_UID_tag                    1
625 #define NMapObjectAdd_MapObjectClass_tag         2
626 #define NMapObjectAdd_Pos_tag                    3
627 #define NMapObjectAdd_ThingFlags_tag             4
628 #define NMapObjectAdd_Health_tag                 5
629 #define NMapObjectAdd_Mask_tag                   6
630 #define NSound_Sound_tag                         1
631 #define NSound_Pos_tag                           2
632 #define NSound_Distance_tag                      3
633 #define NThingDamage_UID_tag                     1
634 #define NThingDamage_Kind_tag                    2
635 #define NThingDamage_SourceActorUID_tag          3
636 #define NThingDamage_Power_tag                   4
637 #define NThingDamage_Vel_tag                     5
638 #define NThingDamage_Mass_tag                    6
639 #define NThingDamage_Flags_tag                   7
640 #define NThingDamage_Special_tag                 8
641 #define NThingDamage_SpecialTicks_tag            9
642 #define NTileSet_Pos_tag                         1
643 #define NTileSet_ClassName_tag                   2
644 #define NTileSet_ClassAltName_tag                3
645 #define NTileSet_RunLength_tag                   4
646 #define NTrigger_ID_tag                          1
647 #define NTrigger_Tile_tag                        2
648 #define NExploreTiles_Runs_tag                   1
649 #define NPlayerData_Name_tag                     1
650 #define NPlayerData_CharacterClass_tag           2
651 #define NPlayerData_Hair_tag                     3
652 #define NPlayerData_Colors_tag                   4
653 #define NPlayerData_Weapons_tag                  5
654 #define NPlayerData_Lives_tag                    6
655 #define NPlayerData_Stats_tag                    7
656 #define NPlayerData_Totals_tag                   8
657 #define NPlayerData_MaxHealth_tag                9
658 #define NPlayerData_LastMission_tag              10
659 #define NPlayerData_UID_tag                      11
660 #define NPlayerData_Ammo_tag                     12
661 
662 /* Struct field encoding specification for nanopb */
663 #define NServerInfo_FIELDLIST(X, a) \
664 X(a, STATIC,   SINGULAR, INT32,    ProtocolVersion,   1) \
665 X(a, STATIC,   SINGULAR, UINT32,   ENetPort,          2) \
666 X(a, STATIC,   SINGULAR, STRING,   Hostname,          3) \
667 X(a, STATIC,   SINGULAR, INT32,    GameMode,          4) \
668 X(a, STATIC,   SINGULAR, STRING,   CampaignName,      5) \
669 X(a, STATIC,   SINGULAR, INT32,    MissionNumber,     6) \
670 X(a, STATIC,   SINGULAR, INT32,    NumPlayers,        7) \
671 X(a, STATIC,   SINGULAR, INT32,    MaxPlayers,        8)
672 #define NServerInfo_CALLBACK NULL
673 #define NServerInfo_DEFAULT NULL
674 
675 #define NClientId_FIELDLIST(X, a) \
676 X(a, STATIC,   SINGULAR, UINT32,   Id,                1) \
677 X(a, STATIC,   SINGULAR, UINT32,   FirstPlayerUID,    2)
678 #define NClientId_CALLBACK NULL
679 #define NClientId_DEFAULT NULL
680 
681 #define NCampaignDef_FIELDLIST(X, a) \
682 X(a, STATIC,   SINGULAR, STRING,   Path,              1) \
683 X(a, STATIC,   SINGULAR, INT32,    GameMode,          2) \
684 X(a, STATIC,   SINGULAR, UINT32,   Mission,           3)
685 #define NCampaignDef_CALLBACK NULL
686 #define NCampaignDef_DEFAULT NULL
687 
688 #define NColor_FIELDLIST(X, a) \
689 X(a, STATIC,   SINGULAR, INT32,    RGBA,              1)
690 #define NColor_CALLBACK NULL
691 #define NColor_DEFAULT NULL
692 
693 #define NCharColors_FIELDLIST(X, a) \
694 X(a, STATIC,   OPTIONAL, MESSAGE,  Skin,              1) \
695 X(a, STATIC,   OPTIONAL, MESSAGE,  Arms,              2) \
696 X(a, STATIC,   OPTIONAL, MESSAGE,  Body,              3) \
697 X(a, STATIC,   OPTIONAL, MESSAGE,  Legs,              4) \
698 X(a, STATIC,   OPTIONAL, MESSAGE,  Hair,              5) \
699 X(a, STATIC,   OPTIONAL, MESSAGE,  Feet,              6)
700 #define NCharColors_CALLBACK NULL
701 #define NCharColors_DEFAULT NULL
702 #define NCharColors_Skin_MSGTYPE NColor
703 #define NCharColors_Arms_MSGTYPE NColor
704 #define NCharColors_Body_MSGTYPE NColor
705 #define NCharColors_Legs_MSGTYPE NColor
706 #define NCharColors_Hair_MSGTYPE NColor
707 #define NCharColors_Feet_MSGTYPE NColor
708 
709 #define NPlayerStats_FIELDLIST(X, a) \
710 X(a, STATIC,   SINGULAR, INT32,    Score,             1) \
711 X(a, STATIC,   SINGULAR, INT32,    Kills,             2) \
712 X(a, STATIC,   SINGULAR, INT32,    Suicides,          3) \
713 X(a, STATIC,   SINGULAR, INT32,    Friendlies,        4)
714 #define NPlayerStats_CALLBACK NULL
715 #define NPlayerStats_DEFAULT NULL
716 
717 #define NPlayerData_FIELDLIST(X, a) \
718 X(a, STATIC,   SINGULAR, STRING,   Name,              1) \
719 X(a, STATIC,   SINGULAR, STRING,   CharacterClass,    2) \
720 X(a, STATIC,   SINGULAR, STRING,   Hair,              3) \
721 X(a, STATIC,   OPTIONAL, MESSAGE,  Colors,            4) \
722 X(a, STATIC,   REPEATED, STRING,   Weapons,           5) \
723 X(a, STATIC,   SINGULAR, UINT32,   Lives,             6) \
724 X(a, STATIC,   OPTIONAL, MESSAGE,  Stats,             7) \
725 X(a, STATIC,   OPTIONAL, MESSAGE,  Totals,            8) \
726 X(a, STATIC,   SINGULAR, UINT32,   MaxHealth,         9) \
727 X(a, STATIC,   SINGULAR, UINT32,   LastMission,      10) \
728 X(a, STATIC,   SINGULAR, UINT32,   UID,              11) \
729 X(a, STATIC,   REPEATED, MESSAGE,  Ammo,             12)
730 #define NPlayerData_CALLBACK NULL
731 #define NPlayerData_DEFAULT NULL
732 #define NPlayerData_Colors_MSGTYPE NCharColors
733 #define NPlayerData_Stats_MSGTYPE NPlayerStats
734 #define NPlayerData_Totals_MSGTYPE NPlayerStats
735 #define NPlayerData_Ammo_MSGTYPE NAmmo
736 
737 #define NPlayerRemove_FIELDLIST(X, a) \
738 X(a, STATIC,   SINGULAR, UINT32,   UID,               1)
739 #define NPlayerRemove_CALLBACK NULL
740 #define NPlayerRemove_DEFAULT NULL
741 
742 #define NConfig_FIELDLIST(X, a) \
743 X(a, STATIC,   SINGULAR, STRING,   Name,              1) \
744 X(a, STATIC,   SINGULAR, STRING,   Value,             2)
745 #define NConfig_CALLBACK NULL
746 #define NConfig_DEFAULT NULL
747 
748 #define NTileSet_FIELDLIST(X, a) \
749 X(a, STATIC,   OPTIONAL, MESSAGE,  Pos,               1) \
750 X(a, STATIC,   SINGULAR, STRING,   ClassName,         2) \
751 X(a, STATIC,   SINGULAR, STRING,   ClassAltName,      3) \
752 X(a, STATIC,   SINGULAR, INT32,    RunLength,         4)
753 #define NTileSet_CALLBACK NULL
754 #define NTileSet_DEFAULT NULL
755 #define NTileSet_Pos_MSGTYPE NVec2i
756 
757 #define NThingDamage_FIELDLIST(X, a) \
758 X(a, STATIC,   SINGULAR, UINT32,   UID,               1) \
759 X(a, STATIC,   SINGULAR, INT32,    Kind,              2) \
760 X(a, STATIC,   SINGULAR, INT32,    SourceActorUID,    3) \
761 X(a, STATIC,   SINGULAR, INT32,    Power,             4) \
762 X(a, STATIC,   OPTIONAL, MESSAGE,  Vel,               5) \
763 X(a, STATIC,   SINGULAR, FLOAT,    Mass,              6) \
764 X(a, STATIC,   SINGULAR, UINT32,   Flags,             7) \
765 X(a, STATIC,   SINGULAR, INT32,    Special,           8) \
766 X(a, STATIC,   SINGULAR, INT32,    SpecialTicks,      9)
767 #define NThingDamage_CALLBACK NULL
768 #define NThingDamage_DEFAULT NULL
769 #define NThingDamage_Vel_MSGTYPE NVec2
770 
771 #define NMapObjectAdd_FIELDLIST(X, a) \
772 X(a, STATIC,   SINGULAR, UINT32,   UID,               1) \
773 X(a, STATIC,   SINGULAR, STRING,   MapObjectClass,    2) \
774 X(a, STATIC,   OPTIONAL, MESSAGE,  Pos,               3) \
775 X(a, STATIC,   SINGULAR, UINT32,   ThingFlags,        4) \
776 X(a, STATIC,   SINGULAR, INT32,    Health,            5) \
777 X(a, STATIC,   OPTIONAL, MESSAGE,  Mask,              6)
778 #define NMapObjectAdd_CALLBACK NULL
779 #define NMapObjectAdd_DEFAULT NULL
780 #define NMapObjectAdd_Pos_MSGTYPE NVec2
781 #define NMapObjectAdd_Mask_MSGTYPE NColor
782 
783 #define NMapObjectRemove_FIELDLIST(X, a) \
784 X(a, STATIC,   SINGULAR, UINT32,   UID,               1) \
785 X(a, STATIC,   SINGULAR, INT32,    ActorUID,          2) \
786 X(a, STATIC,   SINGULAR, UINT32,   Flags,             3)
787 #define NMapObjectRemove_CALLBACK NULL
788 #define NMapObjectRemove_DEFAULT NULL
789 
790 #define NScore_FIELDLIST(X, a) \
791 X(a, STATIC,   SINGULAR, UINT32,   PlayerUID,         1) \
792 X(a, STATIC,   SINGULAR, INT32,    Score,             2)
793 #define NScore_CALLBACK NULL
794 #define NScore_DEFAULT NULL
795 
796 #define NSound_FIELDLIST(X, a) \
797 X(a, STATIC,   SINGULAR, STRING,   Sound,             1) \
798 X(a, STATIC,   OPTIONAL, MESSAGE,  Pos,               2) \
799 X(a, STATIC,   SINGULAR, UINT32,   Distance,          3)
800 #define NSound_CALLBACK NULL
801 #define NSound_DEFAULT NULL
802 #define NSound_Pos_MSGTYPE NVec2
803 
804 #define NVec2i_FIELDLIST(X, a) \
805 X(a, STATIC,   SINGULAR, INT32,    x,                 1) \
806 X(a, STATIC,   SINGULAR, INT32,    y,                 2)
807 #define NVec2i_CALLBACK NULL
808 #define NVec2i_DEFAULT NULL
809 
810 #define NVec2_FIELDLIST(X, a) \
811 X(a, STATIC,   SINGULAR, FLOAT,    x,                 1) \
812 X(a, STATIC,   SINGULAR, FLOAT,    y,                 2)
813 #define NVec2_CALLBACK NULL
814 #define NVec2_DEFAULT NULL
815 
816 #define NGameBegin_FIELDLIST(X, a) \
817 X(a, STATIC,   SINGULAR, INT32,    MissionTime,       1)
818 #define NGameBegin_CALLBACK NULL
819 #define NGameBegin_DEFAULT NULL
820 
821 #define NActorAdd_FIELDLIST(X, a) \
822 X(a, STATIC,   SINGULAR, UINT32,   UID,               1) \
823 X(a, STATIC,   SINGULAR, INT32,    PilotUID,          2) \
824 X(a, STATIC,   SINGULAR, INT32,    VehicleUID,        3) \
825 X(a, STATIC,   SINGULAR, UINT32,   CharId,            4) \
826 X(a, STATIC,   SINGULAR, INT32,    Direction,         5) \
827 X(a, STATIC,   SINGULAR, INT32,    Health,            6) \
828 X(a, STATIC,   SINGULAR, INT32,    PlayerUID,         7) \
829 X(a, STATIC,   SINGULAR, UINT32,   ThingFlags,        8) \
830 X(a, STATIC,   OPTIONAL, MESSAGE,  Pos,               9) \
831 X(a, STATIC,   REPEATED, MESSAGE,  Ammo,             10)
832 #define NActorAdd_CALLBACK NULL
833 #define NActorAdd_DEFAULT NULL
834 #define NActorAdd_Pos_MSGTYPE NVec2
835 #define NActorAdd_Ammo_MSGTYPE NAmmo
836 
837 #define NActorMove_FIELDLIST(X, a) \
838 X(a, STATIC,   SINGULAR, UINT32,   UID,               1) \
839 X(a, STATIC,   OPTIONAL, MESSAGE,  Pos,               2) \
840 X(a, STATIC,   OPTIONAL, MESSAGE,  MoveVel,           3)
841 #define NActorMove_CALLBACK NULL
842 #define NActorMove_DEFAULT NULL
843 #define NActorMove_Pos_MSGTYPE NVec2
844 #define NActorMove_MoveVel_MSGTYPE NVec2
845 
846 #define NActorState_FIELDLIST(X, a) \
847 X(a, STATIC,   SINGULAR, UINT32,   UID,               1) \
848 X(a, STATIC,   SINGULAR, INT32,    State,             2)
849 #define NActorState_CALLBACK NULL
850 #define NActorState_DEFAULT NULL
851 
852 #define NActorDir_FIELDLIST(X, a) \
853 X(a, STATIC,   SINGULAR, UINT32,   UID,               1) \
854 X(a, STATIC,   SINGULAR, INT32,    Dir,               2)
855 #define NActorDir_CALLBACK NULL
856 #define NActorDir_DEFAULT NULL
857 
858 #define NActorSlide_FIELDLIST(X, a) \
859 X(a, STATIC,   SINGULAR, UINT32,   UID,               1) \
860 X(a, STATIC,   OPTIONAL, MESSAGE,  Vel,               2)
861 #define NActorSlide_CALLBACK NULL
862 #define NActorSlide_DEFAULT NULL
863 #define NActorSlide_Vel_MSGTYPE NVec2
864 
865 #define NActorImpulse_FIELDLIST(X, a) \
866 X(a, STATIC,   SINGULAR, UINT32,   UID,               1) \
867 X(a, STATIC,   OPTIONAL, MESSAGE,  Vel,               2) \
868 X(a, STATIC,   OPTIONAL, MESSAGE,  Pos,               3)
869 #define NActorImpulse_CALLBACK NULL
870 #define NActorImpulse_DEFAULT NULL
871 #define NActorImpulse_Vel_MSGTYPE NVec2
872 #define NActorImpulse_Pos_MSGTYPE NVec2
873 
874 #define NActorSwitchGun_FIELDLIST(X, a) \
875 X(a, STATIC,   SINGULAR, UINT32,   UID,               1) \
876 X(a, STATIC,   SINGULAR, UINT32,   GunIdx,            2)
877 #define NActorSwitchGun_CALLBACK NULL
878 #define NActorSwitchGun_DEFAULT NULL
879 
880 #define NActorPickupAll_FIELDLIST(X, a) \
881 X(a, STATIC,   SINGULAR, UINT32,   UID,               1) \
882 X(a, STATIC,   SINGULAR, BOOL,     PickupAll,         2)
883 #define NActorPickupAll_CALLBACK NULL
884 #define NActorPickupAll_DEFAULT NULL
885 
886 #define NActorReplaceGun_FIELDLIST(X, a) \
887 X(a, STATIC,   SINGULAR, UINT32,   UID,               1) \
888 X(a, STATIC,   SINGULAR, UINT32,   GunIdx,            2) \
889 X(a, STATIC,   SINGULAR, STRING,   Gun,               3)
890 #define NActorReplaceGun_CALLBACK NULL
891 #define NActorReplaceGun_DEFAULT NULL
892 
893 #define NActorHeal_FIELDLIST(X, a) \
894 X(a, STATIC,   SINGULAR, UINT32,   UID,               1) \
895 X(a, STATIC,   SINGULAR, INT32,    PlayerUID,         2) \
896 X(a, STATIC,   SINGULAR, INT32,    Amount,            3) \
897 X(a, STATIC,   SINGULAR, BOOL,     IsRandomSpawned,   4)
898 #define NActorHeal_CALLBACK NULL
899 #define NActorHeal_DEFAULT NULL
900 
901 #define NAmmo_FIELDLIST(X, a) \
902 X(a, STATIC,   SINGULAR, UINT32,   Id,                1) \
903 X(a, STATIC,   SINGULAR, UINT32,   Amount,            2)
904 #define NAmmo_CALLBACK NULL
905 #define NAmmo_DEFAULT NULL
906 
907 #define NActorAddAmmo_FIELDLIST(X, a) \
908 X(a, STATIC,   SINGULAR, UINT32,   UID,               1) \
909 X(a, STATIC,   SINGULAR, INT32,    PlayerUID,         2) \
910 X(a, STATIC,   OPTIONAL, MESSAGE,  Ammo,              3) \
911 X(a, STATIC,   SINGULAR, BOOL,     IsRandomSpawned,   4)
912 #define NActorAddAmmo_CALLBACK NULL
913 #define NActorAddAmmo_DEFAULT NULL
914 #define NActorAddAmmo_Ammo_MSGTYPE NAmmo
915 
916 #define NActorUseAmmo_FIELDLIST(X, a) \
917 X(a, STATIC,   SINGULAR, UINT32,   UID,               1) \
918 X(a, STATIC,   SINGULAR, INT32,    PlayerUID,         2) \
919 X(a, STATIC,   OPTIONAL, MESSAGE,  Ammo,              3)
920 #define NActorUseAmmo_CALLBACK NULL
921 #define NActorUseAmmo_DEFAULT NULL
922 #define NActorUseAmmo_Ammo_MSGTYPE NAmmo
923 
924 #define NActorDie_FIELDLIST(X, a) \
925 X(a, STATIC,   SINGULAR, UINT32,   UID,               1)
926 #define NActorDie_CALLBACK NULL
927 #define NActorDie_DEFAULT NULL
928 
929 #define NActorMelee_FIELDLIST(X, a) \
930 X(a, STATIC,   SINGULAR, UINT32,   UID,               1) \
931 X(a, STATIC,   SINGULAR, STRING,   BulletClass,       2) \
932 X(a, STATIC,   SINGULAR, INT32,    HitType,           3) \
933 X(a, STATIC,   SINGULAR, INT32,    TargetKind,        4) \
934 X(a, STATIC,   SINGULAR, UINT32,   TargetUID,         5)
935 #define NActorMelee_CALLBACK NULL
936 #define NActorMelee_DEFAULT NULL
937 
938 #define NActorPilot_FIELDLIST(X, a) \
939 X(a, STATIC,   SINGULAR, UINT32,   UID,               1) \
940 X(a, STATIC,   SINGULAR, INT32,    VehicleUID,        2) \
941 X(a, STATIC,   SINGULAR, BOOL,     On,                3)
942 #define NActorPilot_CALLBACK NULL
943 #define NActorPilot_DEFAULT NULL
944 
945 #define NAddPickup_FIELDLIST(X, a) \
946 X(a, STATIC,   SINGULAR, UINT32,   UID,               1) \
947 X(a, STATIC,   SINGULAR, STRING,   PickupClass,       2) \
948 X(a, STATIC,   SINGULAR, BOOL,     IsRandomSpawned,   3) \
949 X(a, STATIC,   SINGULAR, INT32,    SpawnerUID,        4) \
950 X(a, STATIC,   SINGULAR, UINT32,   ThingFlags,        5) \
951 X(a, STATIC,   OPTIONAL, MESSAGE,  Pos,               6)
952 #define NAddPickup_CALLBACK NULL
953 #define NAddPickup_DEFAULT NULL
954 #define NAddPickup_Pos_MSGTYPE NVec2
955 
956 #define NRemovePickup_FIELDLIST(X, a) \
957 X(a, STATIC,   SINGULAR, UINT32,   UID,               1) \
958 X(a, STATIC,   SINGULAR, INT32,    SpawnerUID,        2)
959 #define NRemovePickup_CALLBACK NULL
960 #define NRemovePickup_DEFAULT NULL
961 
962 #define NBulletBounce_FIELDLIST(X, a) \
963 X(a, STATIC,   SINGULAR, UINT32,   UID,               1) \
964 X(a, STATIC,   SINGULAR, INT32,    HitType,           2) \
965 X(a, STATIC,   SINGULAR, BOOL,     Spark,             3) \
966 X(a, STATIC,   OPTIONAL, MESSAGE,  BouncePos,         4) \
967 X(a, STATIC,   OPTIONAL, MESSAGE,  Pos,               5) \
968 X(a, STATIC,   OPTIONAL, MESSAGE,  Vel,               6) \
969 X(a, STATIC,   SINGULAR, BOOL,     HitSound,          7) \
970 X(a, STATIC,   SINGULAR, BOOL,     WallMark,          8)
971 #define NBulletBounce_CALLBACK NULL
972 #define NBulletBounce_DEFAULT NULL
973 #define NBulletBounce_BouncePos_MSGTYPE NVec2
974 #define NBulletBounce_Pos_MSGTYPE NVec2
975 #define NBulletBounce_Vel_MSGTYPE NVec2
976 
977 #define NRemoveBullet_FIELDLIST(X, a) \
978 X(a, STATIC,   SINGULAR, UINT32,   UID,               1)
979 #define NRemoveBullet_CALLBACK NULL
980 #define NRemoveBullet_DEFAULT NULL
981 
982 #define NGunReload_FIELDLIST(X, a) \
983 X(a, STATIC,   SINGULAR, INT32,    PlayerUID,         1) \
984 X(a, STATIC,   SINGULAR, STRING,   Gun,               2) \
985 X(a, STATIC,   OPTIONAL, MESSAGE,  Pos,               3) \
986 X(a, STATIC,   SINGULAR, INT32,    Direction,         4)
987 #define NGunReload_CALLBACK NULL
988 #define NGunReload_DEFAULT NULL
989 #define NGunReload_Pos_MSGTYPE NVec2
990 
991 #define NGunFire_FIELDLIST(X, a) \
992 X(a, STATIC,   SINGULAR, INT32,    ActorUID,          1) \
993 X(a, STATIC,   SINGULAR, STRING,   Gun,               2) \
994 X(a, STATIC,   OPTIONAL, MESSAGE,  MuzzlePos,         3) \
995 X(a, STATIC,   SINGULAR, INT32,    Z,                 4) \
996 X(a, STATIC,   SINGULAR, FLOAT,    Angle,             5) \
997 X(a, STATIC,   SINGULAR, BOOL,     Sound,             6) \
998 X(a, STATIC,   SINGULAR, UINT32,   Flags,             7) \
999 X(a, STATIC,   SINGULAR, BOOL,     IsGun,             8)
1000 #define NGunFire_CALLBACK NULL
1001 #define NGunFire_DEFAULT NULL
1002 #define NGunFire_MuzzlePos_MSGTYPE NVec2
1003 
1004 #define NGunState_FIELDLIST(X, a) \
1005 X(a, STATIC,   SINGULAR, UINT32,   ActorUID,          1) \
1006 X(a, STATIC,   SINGULAR, INT32,    Barrel,            2) \
1007 X(a, STATIC,   SINGULAR, INT32,    State,             3)
1008 #define NGunState_CALLBACK NULL
1009 #define NGunState_DEFAULT NULL
1010 
1011 #define NAddBullet_FIELDLIST(X, a) \
1012 X(a, STATIC,   SINGULAR, UINT32,   UID,               1) \
1013 X(a, STATIC,   SINGULAR, STRING,   BulletClass,       2) \
1014 X(a, STATIC,   OPTIONAL, MESSAGE,  MuzzlePos,         3) \
1015 X(a, STATIC,   SINGULAR, INT32,    MuzzleHeight,      4) \
1016 X(a, STATIC,   SINGULAR, FLOAT,    Angle,             5) \
1017 X(a, STATIC,   SINGULAR, INT32,    Elevation,         6) \
1018 X(a, STATIC,   SINGULAR, UINT32,   Flags,             7) \
1019 X(a, STATIC,   SINGULAR, INT32,    ActorUID,          8)
1020 #define NAddBullet_CALLBACK NULL
1021 #define NAddBullet_DEFAULT NULL
1022 #define NAddBullet_MuzzlePos_MSGTYPE NVec2
1023 
1024 #define NTrigger_FIELDLIST(X, a) \
1025 X(a, STATIC,   SINGULAR, UINT32,   ID,                1) \
1026 X(a, STATIC,   OPTIONAL, MESSAGE,  Tile,              2)
1027 #define NTrigger_CALLBACK NULL
1028 #define NTrigger_DEFAULT NULL
1029 #define NTrigger_Tile_MSGTYPE NVec2i
1030 
1031 #define NExploreTiles_FIELDLIST(X, a) \
1032 X(a, STATIC,   REPEATED, MESSAGE,  Runs,              1)
1033 #define NExploreTiles_CALLBACK NULL
1034 #define NExploreTiles_DEFAULT NULL
1035 #define NExploreTiles_Runs_MSGTYPE NExploreTiles_Run
1036 
1037 #define NExploreTiles_Run_FIELDLIST(X, a) \
1038 X(a, STATIC,   OPTIONAL, MESSAGE,  Tile,              1) \
1039 X(a, STATIC,   SINGULAR, INT32,    Run,               2)
1040 #define NExploreTiles_Run_CALLBACK NULL
1041 #define NExploreTiles_Run_DEFAULT NULL
1042 #define NExploreTiles_Run_Tile_MSGTYPE NVec2i
1043 
1044 #define NRescueCharacter_FIELDLIST(X, a) \
1045 X(a, STATIC,   SINGULAR, UINT32,   UID,               1)
1046 #define NRescueCharacter_CALLBACK NULL
1047 #define NRescueCharacter_DEFAULT NULL
1048 
1049 #define NObjectiveUpdate_FIELDLIST(X, a) \
1050 X(a, STATIC,   SINGULAR, UINT32,   ObjectiveId,       1) \
1051 X(a, STATIC,   SINGULAR, INT32,    Count,             2)
1052 #define NObjectiveUpdate_CALLBACK NULL
1053 #define NObjectiveUpdate_DEFAULT NULL
1054 
1055 #define NAddKeys_FIELDLIST(X, a) \
1056 X(a, STATIC,   SINGULAR, UINT32,   KeyFlags,          1) \
1057 X(a, STATIC,   OPTIONAL, MESSAGE,  Pos,               2)
1058 #define NAddKeys_CALLBACK NULL
1059 #define NAddKeys_DEFAULT NULL
1060 #define NAddKeys_Pos_MSGTYPE NVec2
1061 
1062 #define NMissionComplete_FIELDLIST(X, a) \
1063 X(a, STATIC,   SINGULAR, BOOL,     ShowMsg,           1)
1064 #define NMissionComplete_CALLBACK NULL
1065 #define NMissionComplete_DEFAULT NULL
1066 
1067 #define NMissionEnd_FIELDLIST(X, a) \
1068 X(a, STATIC,   SINGULAR, INT32,    Delay,             1) \
1069 X(a, STATIC,   SINGULAR, BOOL,     IsQuit,            2) \
1070 X(a, STATIC,   SINGULAR, STRING,   Msg,               3) \
1071 X(a, STATIC,   SINGULAR, UINT32,   Mission,           4)
1072 #define NMissionEnd_CALLBACK NULL
1073 #define NMissionEnd_DEFAULT NULL
1074 
1075 extern const pb_msgdesc_t NServerInfo_msg;
1076 extern const pb_msgdesc_t NClientId_msg;
1077 extern const pb_msgdesc_t NCampaignDef_msg;
1078 extern const pb_msgdesc_t NColor_msg;
1079 extern const pb_msgdesc_t NCharColors_msg;
1080 extern const pb_msgdesc_t NPlayerStats_msg;
1081 extern const pb_msgdesc_t NPlayerData_msg;
1082 extern const pb_msgdesc_t NPlayerRemove_msg;
1083 extern const pb_msgdesc_t NConfig_msg;
1084 extern const pb_msgdesc_t NTileSet_msg;
1085 extern const pb_msgdesc_t NThingDamage_msg;
1086 extern const pb_msgdesc_t NMapObjectAdd_msg;
1087 extern const pb_msgdesc_t NMapObjectRemove_msg;
1088 extern const pb_msgdesc_t NScore_msg;
1089 extern const pb_msgdesc_t NSound_msg;
1090 extern const pb_msgdesc_t NVec2i_msg;
1091 extern const pb_msgdesc_t NVec2_msg;
1092 extern const pb_msgdesc_t NGameBegin_msg;
1093 extern const pb_msgdesc_t NActorAdd_msg;
1094 extern const pb_msgdesc_t NActorMove_msg;
1095 extern const pb_msgdesc_t NActorState_msg;
1096 extern const pb_msgdesc_t NActorDir_msg;
1097 extern const pb_msgdesc_t NActorSlide_msg;
1098 extern const pb_msgdesc_t NActorImpulse_msg;
1099 extern const pb_msgdesc_t NActorSwitchGun_msg;
1100 extern const pb_msgdesc_t NActorPickupAll_msg;
1101 extern const pb_msgdesc_t NActorReplaceGun_msg;
1102 extern const pb_msgdesc_t NActorHeal_msg;
1103 extern const pb_msgdesc_t NAmmo_msg;
1104 extern const pb_msgdesc_t NActorAddAmmo_msg;
1105 extern const pb_msgdesc_t NActorUseAmmo_msg;
1106 extern const pb_msgdesc_t NActorDie_msg;
1107 extern const pb_msgdesc_t NActorMelee_msg;
1108 extern const pb_msgdesc_t NActorPilot_msg;
1109 extern const pb_msgdesc_t NAddPickup_msg;
1110 extern const pb_msgdesc_t NRemovePickup_msg;
1111 extern const pb_msgdesc_t NBulletBounce_msg;
1112 extern const pb_msgdesc_t NRemoveBullet_msg;
1113 extern const pb_msgdesc_t NGunReload_msg;
1114 extern const pb_msgdesc_t NGunFire_msg;
1115 extern const pb_msgdesc_t NGunState_msg;
1116 extern const pb_msgdesc_t NAddBullet_msg;
1117 extern const pb_msgdesc_t NTrigger_msg;
1118 extern const pb_msgdesc_t NExploreTiles_msg;
1119 extern const pb_msgdesc_t NExploreTiles_Run_msg;
1120 extern const pb_msgdesc_t NRescueCharacter_msg;
1121 extern const pb_msgdesc_t NObjectiveUpdate_msg;
1122 extern const pb_msgdesc_t NAddKeys_msg;
1123 extern const pb_msgdesc_t NMissionComplete_msg;
1124 extern const pb_msgdesc_t NMissionEnd_msg;
1125 
1126 /* Defines for backwards compatibility with code written before nanopb-0.4.0 */
1127 #define NServerInfo_fields &NServerInfo_msg
1128 #define NClientId_fields &NClientId_msg
1129 #define NCampaignDef_fields &NCampaignDef_msg
1130 #define NColor_fields &NColor_msg
1131 #define NCharColors_fields &NCharColors_msg
1132 #define NPlayerStats_fields &NPlayerStats_msg
1133 #define NPlayerData_fields &NPlayerData_msg
1134 #define NPlayerRemove_fields &NPlayerRemove_msg
1135 #define NConfig_fields &NConfig_msg
1136 #define NTileSet_fields &NTileSet_msg
1137 #define NThingDamage_fields &NThingDamage_msg
1138 #define NMapObjectAdd_fields &NMapObjectAdd_msg
1139 #define NMapObjectRemove_fields &NMapObjectRemove_msg
1140 #define NScore_fields &NScore_msg
1141 #define NSound_fields &NSound_msg
1142 #define NVec2i_fields &NVec2i_msg
1143 #define NVec2_fields &NVec2_msg
1144 #define NGameBegin_fields &NGameBegin_msg
1145 #define NActorAdd_fields &NActorAdd_msg
1146 #define NActorMove_fields &NActorMove_msg
1147 #define NActorState_fields &NActorState_msg
1148 #define NActorDir_fields &NActorDir_msg
1149 #define NActorSlide_fields &NActorSlide_msg
1150 #define NActorImpulse_fields &NActorImpulse_msg
1151 #define NActorSwitchGun_fields &NActorSwitchGun_msg
1152 #define NActorPickupAll_fields &NActorPickupAll_msg
1153 #define NActorReplaceGun_fields &NActorReplaceGun_msg
1154 #define NActorHeal_fields &NActorHeal_msg
1155 #define NAmmo_fields &NAmmo_msg
1156 #define NActorAddAmmo_fields &NActorAddAmmo_msg
1157 #define NActorUseAmmo_fields &NActorUseAmmo_msg
1158 #define NActorDie_fields &NActorDie_msg
1159 #define NActorMelee_fields &NActorMelee_msg
1160 #define NActorPilot_fields &NActorPilot_msg
1161 #define NAddPickup_fields &NAddPickup_msg
1162 #define NRemovePickup_fields &NRemovePickup_msg
1163 #define NBulletBounce_fields &NBulletBounce_msg
1164 #define NRemoveBullet_fields &NRemoveBullet_msg
1165 #define NGunReload_fields &NGunReload_msg
1166 #define NGunFire_fields &NGunFire_msg
1167 #define NGunState_fields &NGunState_msg
1168 #define NAddBullet_fields &NAddBullet_msg
1169 #define NTrigger_fields &NTrigger_msg
1170 #define NExploreTiles_fields &NExploreTiles_msg
1171 #define NExploreTiles_Run_fields &NExploreTiles_Run_msg
1172 #define NRescueCharacter_fields &NRescueCharacter_msg
1173 #define NObjectiveUpdate_fields &NObjectiveUpdate_msg
1174 #define NAddKeys_fields &NAddKeys_msg
1175 #define NMissionComplete_fields &NMissionComplete_msg
1176 #define NMissionEnd_fields &NMissionEnd_msg
1177 
1178 /* Maximum encoded size of messages (where known) */
1179 #define NServerInfo_size                         95
1180 #define NClientId_size                           12
1181 #define NCampaignDef_size                        4115
1182 #define NColor_size                              11
1183 #define NCharColors_size                         78
1184 #define NPlayerStats_size                        44
1185 #define NPlayerData_size                         2659
1186 #define NPlayerRemove_size                       6
1187 #define NConfig_size                             260
1188 #define NTileSet_size                            295
1189 #define NThingDamage_size                        84
1190 #define NMapObjectAdd_size                       178
1191 #define NMapObjectRemove_size                    23
1192 #define NScore_size                              17
1193 #define NSound_size                              148
1194 #define NVec2i_size                              22
1195 #define NVec2_size                               10
1196 #define NGameBegin_size                          11
1197 #define NActorAdd_size                           1877
1198 #define NActorMove_size                          30
1199 #define NActorState_size                         17
1200 #define NActorDir_size                           17
1201 #define NActorSlide_size                         18
1202 #define NActorImpulse_size                       30
1203 #define NActorSwitchGun_size                     12
1204 #define NActorPickupAll_size                     8
1205 #define NActorReplaceGun_size                    142
1206 #define NActorHeal_size                          30
1207 #define NAmmo_size                               12
1208 #define NActorAddAmmo_size                       33
1209 #define NActorUseAmmo_size                       31
1210 #define NActorDie_size                           6
1211 #define NActorMelee_size                         164
1212 #define NActorPilot_size                         19
1213 #define NAddPickup_size                          167
1214 #define NRemovePickup_size                       17
1215 #define NBulletBounce_size                       59
1216 #define NRemoveBullet_size                       6
1217 #define NGunReload_size                          164
1218 #define NGunFire_size                            179
1219 #define NGunState_size                           28
1220 #define NAddBullet_size                          192
1221 #define NTrigger_size                            30
1222 #define NExploreTiles_size                       592
1223 #define NExploreTiles_Run_size                   35
1224 #define NRescueCharacter_size                    6
1225 #define NObjectiveUpdate_size                    17
1226 #define NAddKeys_size                            18
1227 #define NMissionComplete_size                    2
1228 #define NMissionEnd_size                         149
1229 
1230 #ifdef __cplusplus
1231 } /* extern "C" */
1232 #endif
1233 
1234 #endif
1235