From 183248c0b10c38e1e4920a719f72819f2bc8ebef Mon Sep 17 00:00:00 2001 From: yoyosource Date: Sun, 17 Jul 2022 20:38:59 +0200 Subject: [PATCH] Update ArenaCommand --- .../bungeecore/commands/ArenaCommand.java | 29 ++++++++++--------- 1 file changed, 16 insertions(+), 13 deletions(-) diff --git a/src/de/steamwar/bungeecore/commands/ArenaCommand.java b/src/de/steamwar/bungeecore/commands/ArenaCommand.java index 2108fa7e..b73d6d29 100644 --- a/src/de/steamwar/bungeecore/commands/ArenaCommand.java +++ b/src/de/steamwar/bungeecore/commands/ArenaCommand.java @@ -39,22 +39,25 @@ public class ArenaCommand extends SWCommand { } @Register - public void arenaJoin(ProxiedPlayer player, ServerInfo server) { - Subserver subserver = Subserver.getSubserver(server); - if(server == null || subserver == null || subserver.getType() != Servertype.ARENA) { - ChatSender.of(player).system("ARENA_NOT_FOUND"); - return; - } - - TpCommand.teleport(player, server); + public void arenaJoin(ProxiedPlayer player, Subserver server) { + TpCommand.teleport(player, server.getServer()); } - @ClassMapper(ServerInfo.class) - public TypeMapper serverInfoTypeMapper() { - return new TypeMapper() { + @ClassMapper(value = ServerInfo.class, local = true) + public TypeMapper serverInfoTypeMapper() { + return new TypeMapper() { @Override - public ServerInfo map(CommandSender commandSender, String[] previousArguments, String s) { - return ProxyServer.getInstance().getServerInfo(s); + public Subserver map(CommandSender commandSender, String[] previousArguments, String s) { + return Subserver.getSubserver(ProxyServer.getInstance().getServerInfo(s)); + } + + @Override + public boolean validate(CommandSender sender, Subserver value, MessageSender messageSender) { + if (value == null || value.getType() != Servertype.ARENA) { + messageSender.send("ARENA_NOT_FOUND"); + return false; + } + return true; } @Override