summaryrefslogtreecommitdiff
path: root/network_client.c
diff options
context:
space:
mode:
authortruelight <truelight@openttd.org>2005-01-02 12:03:43 +0000
committertruelight <truelight@openttd.org>2005-01-02 12:03:43 +0000
commita11f46fed48fa6606f2d84c8f96d79efbad83197 (patch)
tree9f7b9f8c971ff9369911613d44bb0367e7d30389 /network_client.c
parent5d065845453b47791afec27a373b9ff9728ead1e (diff)
downloadopenttd-a11f46fed48fa6606f2d84c8f96d79efbad83197.tar.xz
(svn r1322) -Add: banning system (mostly tnx to guru3)
A server can ban people via ClientList Both server and dedicated can do it via console: 'ban', 'unban', 'banlist'.
Diffstat (limited to 'network_client.c')
-rw-r--r--network_client.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/network_client.c b/network_client.c
index e99a45794..f367a6cad 100644
--- a/network_client.c
+++ b/network_client.c
@@ -263,6 +263,15 @@ DEF_CLIENT_RECEIVE_COMMAND(PACKET_SERVER_FULL)
return NETWORK_RECV_STATUS_SERVER_FULL;
}
+DEF_CLIENT_RECEIVE_COMMAND(PACKET_SERVER_BANNED)
+{
+ // We try to join a server where we are banned
+ _switch_mode_errorstr = STR_NETWORK_ERR_SERVER_BANNED;
+ DeleteWindowById(WC_NETWORK_STATUS_WINDOW, 0);
+
+ return NETWORK_RECV_STATUS_SERVER_BANNED;
+}
+
DEF_CLIENT_RECEIVE_COMMAND(PACKET_SERVER_COMPANY_INFO)
{
byte company_info_version;
@@ -737,6 +746,7 @@ typedef NetworkRecvStatus NetworkClientPacket(Packet *p);
// packet is found.
static NetworkClientPacket* const _network_client_packet[] = {
RECEIVE_COMMAND(PACKET_SERVER_FULL),
+ RECEIVE_COMMAND(PACKET_SERVER_BANNED),
NULL, /*PACKET_CLIENT_JOIN,*/
RECEIVE_COMMAND(PACKET_SERVER_ERROR),
NULL, /*PACKET_CLIENT_COMPANY_INFO,*/