From 8016d9d62fb27e81952ef143dccf68196095c662 Mon Sep 17 00:00:00 2001 From: Alex Date: Wed, 29 Dec 2021 13:14:29 +0100 Subject: [PATCH] test message command --- .../java/net/krakatoa/proxy/ProxySystem.java | 10 +++--- .../proxy/command/SendTestMessageCommand.java | 36 +++++++++++++++++++ 2 files changed, 41 insertions(+), 5 deletions(-) create mode 100644 src/main/java/net/krakatoa/proxy/command/SendTestMessageCommand.java diff --git a/src/main/java/net/krakatoa/proxy/ProxySystem.java b/src/main/java/net/krakatoa/proxy/ProxySystem.java index 1baba65..6d54b4a 100644 --- a/src/main/java/net/krakatoa/proxy/ProxySystem.java +++ b/src/main/java/net/krakatoa/proxy/ProxySystem.java @@ -10,6 +10,7 @@ import java.util.Arrays; import lombok.Getter; import lombok.SneakyThrows; import net.krakatoa.proxy.command.CodeCommand; +import net.krakatoa.proxy.command.SendTestMessageCommand; import net.krakatoa.proxy.config.ConfigHandler; import net.krakatoa.proxy.listener.PlayerDisconnectListener; import net.krakatoa.proxy.listener.PostLoginListener; @@ -93,16 +94,15 @@ public class ProxySystem extends Plugin { public void loadCommands() { PluginManager pluginManager = getProxy().getPluginManager(); - Arrays.asList(new CodeCommand("code")).forEach(listener -> { - pluginManager.registerCommand(this, listener); - }); + Arrays.asList(new CodeCommand("code"), new SendTestMessageCommand("sendTestMessage")) + .forEach(listener -> { + pluginManager.registerCommand(this, listener); + }); } /* TODO: proxy ping & join only accessible for 1.17.1 clients - - */ } diff --git a/src/main/java/net/krakatoa/proxy/command/SendTestMessageCommand.java b/src/main/java/net/krakatoa/proxy/command/SendTestMessageCommand.java new file mode 100644 index 0000000..0395235 --- /dev/null +++ b/src/main/java/net/krakatoa/proxy/command/SendTestMessageCommand.java @@ -0,0 +1,36 @@ +package net.krakatoa.proxy.command; + +import earth.krakatao.protocol.KraSocketClientProtocolMessage; +import net.krakatoa.proxy.ProxySystem; +import net.md_5.bungee.api.CommandSender; +import net.md_5.bungee.api.chat.TextComponent; +import net.md_5.bungee.api.connection.ProxiedPlayer; +import net.md_5.bungee.api.plugin.Command; + +public class SendTestMessageCommand extends Command { + + public SendTestMessageCommand(String name) { + super(name); + } + + @Override + public void execute(CommandSender commandSender, String[] args) { + if (commandSender instanceof ProxiedPlayer) { + ProxiedPlayer proxiedPlayer = (ProxiedPlayer) commandSender; + + // /sendTestMessage + + if (args.length == 4) { + KraSocketClientProtocolMessage kraSocketClientProtocolMessage = new KraSocketClientProtocolMessage( + Byte.parseByte(args[0]), 0, Integer.parseInt(args[1]), + proxiedPlayer.getUniqueId().toString(), Short.parseShort(args[2]), args[3]); + + ProxySystem.getInstance().getKraSocketClient().getSocketClient() + .SendMessage(kraSocketClientProtocolMessage); + } else { + proxiedPlayer.sendMessage(new TextComponent( + "§cVerwendung: §7/sendTestMessage ")); + } + } + } +}