diff options
Diffstat (limited to 'src/server/Main.hx')
| -rw-r--r-- | src/server/Main.hx | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/server/Main.hx b/src/server/Main.hx index 42abaa9..b038f01 100644 --- a/src/server/Main.hx +++ b/src/server/Main.hx @@ -474,6 +474,17 @@ class Main { serverMessage(client, '${bannedClient.name} ($ip) has been banned.'); sendClientList(); + case KickClient: + if (!checkPermission(client, BanClientPerm)) return; + final name = data.kickClient.name; + final kickedClient = clients.getByName(name); + if (kickedClient == null) return; + if (client.name != name && kickedClient.isAdmin) { + serverMessage(client, "adminsCannotBeBannedError"); + return; + } + send(kickedClient, {type: KickClient}); + case Login: final name = data.login.clientName.trim(); final lcName = name.toLowerCase(); |
