DDraceNetwork Documentation
Loading...
Searching...
No Matches
serverinfo.h
Go to the documentation of this file.
1#ifndef ENGINE_SHARED_SERVERINFO_H
2#define ENGINE_SHARED_SERVERINFO_H
3
4#include "protocol.h"
5
6#include <engine/map.h>
8
9typedef struct _json_value json_value;
10class CServerInfo;
11
13{
14public:
34
37 int m_NumClients; // Indirectly serialized.
39 int m_NumPlayers; // Not serialized.
42 char m_aGameType[16];
43 char m_aName[64];
45 char m_aVersion[32];
47
48 bool operator==(const CServerInfo2 &Other) const;
49 bool operator!=(const CServerInfo2 &Other) const { return !(*this == Other); }
50 static bool FromJson(CServerInfo2 *pOut, const json_value *pJson);
51 static bool FromJsonRaw(CServerInfo2 *pOut, const json_value *pJson);
52 bool Validate() const;
53 void ToJson(char *pBuffer, int BufferSize) const;
54
55 operator CServerInfo() const;
56};
57
58bool ParseCrc(unsigned int *pResult, const char *pString);
59
60#endif // ENGINE_SHARED_SERVERINFO_H
Definition serverinfo.h:16
bool m_IsPlayer
Definition serverinfo.h:22
char m_aSkin[MAX_SKIN_LENGTH]
Definition serverinfo.h:25
char m_aaSkin7[protocol7::NUM_SKINPARTS][protocol7::MAX_SKIN_LENGTH]
Definition serverinfo.h:30
char m_aName[MAX_NAME_LENGTH]
Definition serverinfo.h:18
bool m_CustomSkinColors
Definition serverinfo.h:26
int m_CustomSkinColorFeet
Definition serverinfo.h:28
int m_Country
Definition serverinfo.h:20
int m_Score
Definition serverinfo.h:21
char m_aClan[MAX_CLAN_LENGTH]
Definition serverinfo.h:19
bool m_aUseCustomSkinColor7[protocol7::NUM_SKINPARTS]
Definition serverinfo.h:31
int m_CustomSkinColorBody
Definition serverinfo.h:27
bool m_IsAfk
Definition serverinfo.h:23
int m_aCustomSkinColor7[protocol7::NUM_SKINPARTS]
Definition serverinfo.h:32
Definition serverinfo.h:13
int m_MaxClients
Definition serverinfo.h:36
bool Validate() const
Definition serverinfo.cpp:49
CServerInfo::EClientScoreKind m_ClientScoreKind
Definition serverinfo.h:40
bool m_Passworded
Definition serverinfo.h:41
int m_NumClients
Definition serverinfo.h:37
bool operator==(const CServerInfo2 &Other) const
Definition serverinfo.cpp:232
char m_aMapName[MAX_MAP_LENGTH]
Definition serverinfo.h:44
CClient m_aClients[SERVERINFO_MAX_CLIENTS]
Definition serverinfo.h:35
bool operator!=(const CServerInfo2 &Other) const
Definition serverinfo.h:49
bool m_RequiresLogin
Definition serverinfo.h:46
static bool FromJsonRaw(CServerInfo2 *pOut, const json_value *pJson)
Definition serverinfo.cpp:59
char m_aGameType[16]
Definition serverinfo.h:42
char m_aVersion[32]
Definition serverinfo.h:45
void ToJson(char *pBuffer, int BufferSize) const
int m_NumPlayers
Definition serverinfo.h:39
int m_MaxPlayers
Definition serverinfo.h:38
static bool FromJson(CServerInfo2 *pOut, const json_value *pJson)
Definition serverinfo.cpp:39
char m_aName[64]
Definition serverinfo.h:43
Definition serverbrowser.h:25
EClientScoreKind
Definition serverbrowser.h:45
Definition vmath.h:15
struct _json_value json_value
Definition serverbrowser.h:17
@ MAX_MAP_LENGTH
Definition map.h:12
@ MAX_CLAN_LENGTH
Definition protocol.h:99
@ SERVERINFO_MAX_CLIENTS
Definition protocol.h:87
@ MAX_SKIN_LENGTH
Definition protocol.h:100
@ MAX_NAME_LENGTH
Definition protocol.h:98
@ NUM_SKINPARTS
Definition protocol7.h:37
@ MAX_SKIN_LENGTH
Definition protocol7.h:69
bool ParseCrc(unsigned int *pResult, const char *pString)
Definition serverinfo.cpp:23