From 1531ce2519d5f5d88a046577cc3d9b68efd12fb4 Mon Sep 17 00:00:00 2001 From: KingRainbow44 Date: Sun, 26 Nov 2023 01:40:42 -0500 Subject: [PATCH] (feat.) Add `/kick` - useful for getting out of packet crashes --- .../command/commands/KickCommand.java | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 src/main/java/emu/lunarcore/command/commands/KickCommand.java diff --git a/src/main/java/emu/lunarcore/command/commands/KickCommand.java b/src/main/java/emu/lunarcore/command/commands/KickCommand.java new file mode 100644 index 0000000..10c1d52 --- /dev/null +++ b/src/main/java/emu/lunarcore/command/commands/KickCommand.java @@ -0,0 +1,29 @@ +package emu.lunarcore.command.commands; + +import emu.lunarcore.command.Command; +import emu.lunarcore.command.CommandArgs; +import emu.lunarcore.command.CommandHandler; +import emu.lunarcore.game.player.Player; + +@Command( + label = "kick", + desc = "/kick @[player id]. Kicks a player from the server.", + permission = "player.kick" +) +public final class KickCommand implements CommandHandler { + + @Override + public void execute(Player sender, CommandArgs args) { + // Check target + if (args.getTarget() == null) { + this.sendMessage(sender, "Error: Targeted player not found or offline"); + return; + } + + // Kick player + args.getTarget().getSession().close(); + + // Send message + this.sendMessage(sender, "Player kicked successfully"); + } +}