10 #ifndef NETWORK_TYPE_H
11 #define NETWORK_TYPE_H
13 #include "../core/enum_type.hpp"
29 NETWORK_VEH_TRAIN = 0,
43 SERVER_GAME_TYPE_LOCAL = 0,
44 SERVER_GAME_TYPE_PUBLIC,
45 SERVER_GAME_TYPE_INVITE_ONLY,
93 NETWORK_ACTION_SERVER_MESSAGE,
95 NETWORK_ACTION_CHAT_COMPANY,
96 NETWORK_ACTION_CHAT_CLIENT,
97 NETWORK_ACTION_GIVE_MONEY,
98 NETWORK_ACTION_NAME_CHANGE,
99 NETWORK_ACTION_COMPANY_SPECTATOR,
100 NETWORK_ACTION_COMPANY_JOIN,
101 NETWORK_ACTION_COMPANY_NEW,
102 NETWORK_ACTION_KICKED,
103 NETWORK_ACTION_EXTERNAL_CHAT,
111 NETWORK_ERROR_GENERAL,
114 NETWORK_ERROR_DESYNC,
115 NETWORK_ERROR_SAVEGAME_FAILED,
116 NETWORK_ERROR_CONNECTION_LOST,
117 NETWORK_ERROR_ILLEGAL_PACKET,
118 NETWORK_ERROR_NEWGRF_MISMATCH,
121 NETWORK_ERROR_NOT_AUTHORIZED,
122 NETWORK_ERROR_NOT_EXPECTED,
123 NETWORK_ERROR_WRONG_REVISION,
124 NETWORK_ERROR_NAME_IN_USE,
125 NETWORK_ERROR_WRONG_PASSWORD,
126 NETWORK_ERROR_COMPANY_MISMATCH,
127 NETWORK_ERROR_KICKED,
128 NETWORK_ERROR_CHEATER,
130 NETWORK_ERROR_TOO_MANY_COMMANDS,
131 NETWORK_ERROR_TIMEOUT_PASSWORD,
132 NETWORK_ERROR_TIMEOUT_COMPUTER,
133 NETWORK_ERROR_TIMEOUT_MAP,
134 NETWORK_ERROR_TIMEOUT_JOIN,
135 NETWORK_ERROR_INVALID_CLIENT_NAME,
136 NETWORK_ERROR_NOT_ON_ALLOW_LIST,
137 NETWORK_ERROR_NO_AUTHENTICATION_METHOD_AVAILABLE,
150 bool Contains(std::string_view key)
const;
151 bool Add(std::string_view key);
152 bool Remove(std::string_view key);
Simple helper to (more easily) manage authorized keys.
bool Contains(std::string_view key) const
Check whether the given key is contains in these authorized keys.
bool Add(std::string_view key)
Add the given key to the authorized keys, when it is not already contained.
bool Remove(std::string_view key)
Remove the given key from the authorized keys, when it is exists.
#define DECLARE_ENUM_AS_ADDABLE(EnumType)
Operator that allows this enumeration to be added to any other enumeration.
static const AdminIndex INVALID_ADMIN_ID
An invalid admin marker.
DestType
Destination of our chat messages.
@ DESTTYPE_CLIENT
Send message/notice to only a certain client (Private)
@ DESTTYPE_TEAM
Send message/notice to everyone playing the same company (Team)
@ DESTTYPE_BROADCAST
Send message/notice to all clients (All)
uint8_t ClientIndex
Indices into the client tables.
uint8_t AdminIndex
Indices into the admin tables.
static const uint MAX_CLIENT_SLOTS
The number of slots; must be at least 1 more than MAX_CLIENTS.
static const uint MAX_CLIENTS
How many clients can we have.
NetworkAction
Actions that can be used for NetworkTextMessage.
NetworkVehicleType
Vehicletypes in the order they are send in info packets.
ClientID
'Unique' identifier to be given to clients
@ INVALID_CLIENT_ID
Client is not part of anything.
@ CLIENT_ID_SERVER
Servers always have this ID.
@ CLIENT_ID_FIRST
The first client ID.
ServerGameType
Game type the server can be using.
NetworkErrorCode
The error codes we send around in the protocols.
static const AdminIndex MAX_ADMINS
Maximum number of allowed admins.
Container for all information known about a client.
Simple calculated statistics of a company.
uint16_t num_vehicle[NETWORK_VEH_END]
How many vehicles are there of this type?
uint16_t num_station[NETWORK_VEH_END]
How many stations are there of this type?
bool ai
Is this company an AI.