From fdb479d6df183b3633f1ca5b04863c2eafead704 Mon Sep 17 00:00:00 2001 From: Resxt <55228336+Resxt@users.noreply.github.com> Date: Fri, 24 Mar 2023 23:31:24 +0100 Subject: [PATCH] chat_command_kick 1.0.0 --- chat_commands/README.md | 17 ++++++++++++ chat_commands/chat_command_kick.gsc | 41 +++++++++++++++++++++++++++++ 2 files changed, 58 insertions(+) create mode 100644 chat_commands/chat_command_kick.gsc diff --git a/chat_commands/README.md b/chat_commands/README.md index 88b7ac5..bc11843 100644 --- a/chat_commands/README.md +++ b/chat_commands/README.md @@ -138,6 +138,23 @@ However, in addition to being invisible, you will also be ignored by zombies in |---| | 3 | +## chat_command_kick.gsc + +Kicks the targeted player. +Note that due to some game limitations you cannot kick the host. + +| # | Argument | Mandatory | +|---|---|---| +| 1 | The name of the player to kick | :white_check_mark: | + +| Examples | +|---| +| `!kick Resxt` | + +| Permission level | +|---| +| 4 | + ## chat_command_permissions.gsc 2 related commands in one file: diff --git a/chat_commands/chat_command_kick.gsc b/chat_commands/chat_command_kick.gsc new file mode 100644 index 0000000..0b18ffb --- /dev/null +++ b/chat_commands/chat_command_kick.gsc @@ -0,0 +1,41 @@ +#include scripts\chat_commands; + +Init() +{ + CreateCommand(level.chat_commands["ports"], "kick", "function", ::KickCommand, 4, array("default_help_one_player")); +} + + + +/* Command section */ + +KickCommand(args) +{ + if (args.size < 1) + { + return NotEnoughArgsError(1); + } + + error = KickPlayer(args[0]); + + if (IsDefined(error)) + { + return error; + } +} + + + +/* Logic section */ + +KickPlayer(playerName) +{ + player = FindPlayerByName(playerName); + + if (!IsDefined(player)) + { + return PlayerDoesNotExistError(playerName); + } + + Kick(player GetEntityNumber()); +} \ No newline at end of file