From 7309d05666f91912594ef63a5a5023ae972a1aef Mon Sep 17 00:00:00 2001 From: themode Date: Thu, 11 Mar 2021 03:31:25 +0100 Subject: [PATCH] Update demo command with the new SimpleCommand, update comment to reflect permission access change --- .../server/command/builder/SimpleCommand.java | 3 -- src/test/java/demo/Main.java | 2 +- .../java/demo/commands/LegacyCommand.java | 26 +++++++++++ .../java/demo/commands/SimpleCommand.java | 46 ------------------- 4 files changed, 27 insertions(+), 50 deletions(-) create mode 100644 src/test/java/demo/commands/LegacyCommand.java delete mode 100644 src/test/java/demo/commands/SimpleCommand.java diff --git a/src/main/java/net/minestom/server/command/builder/SimpleCommand.java b/src/main/java/net/minestom/server/command/builder/SimpleCommand.java index 21d5d6fee..ce1e4d750 100644 --- a/src/main/java/net/minestom/server/command/builder/SimpleCommand.java +++ b/src/main/java/net/minestom/server/command/builder/SimpleCommand.java @@ -31,9 +31,6 @@ public abstract class SimpleCommand extends Command { /** * Called to know if a player has access to the command. - *

- * Right now it is only used to know if the player should see the command in auto-completion. - * Conditions still need to be checked in {@link #process(CommandSender, String, String[])}. * * @param sender the command sender to check the access * @param commandString the raw command string, diff --git a/src/test/java/demo/Main.java b/src/test/java/demo/Main.java index c49111ed3..149bf959a 100644 --- a/src/test/java/demo/Main.java +++ b/src/test/java/demo/Main.java @@ -34,7 +34,7 @@ public class Main { commandManager.register(new GamemodeCommand()); commandManager.register(new EntitySelectorCommand()); commandManager.register(new HealthCommand()); - commandManager.register(new SimpleCommand()); + commandManager.register(new LegacyCommand()); commandManager.register(new DimensionCommand()); commandManager.register(new ShutdownCommand()); commandManager.register(new TeleportCommand()); diff --git a/src/test/java/demo/commands/LegacyCommand.java b/src/test/java/demo/commands/LegacyCommand.java new file mode 100644 index 000000000..480a43905 --- /dev/null +++ b/src/test/java/demo/commands/LegacyCommand.java @@ -0,0 +1,26 @@ +package demo.commands; + +import net.minestom.server.command.CommandSender; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +public class LegacyCommand extends net.minestom.server.command.builder.SimpleCommand { + public LegacyCommand() { + super("test", "alias"); + } + + @Override + public boolean process(@NotNull CommandSender sender, @NotNull String command, @NotNull String[] args) { + if (!sender.isPlayer()) + return false; + + System.gc(); + sender.sendMessage("Explicit GC"); + return true; + } + + @Override + public boolean hasAccess(@NotNull CommandSender sender, @Nullable String commandString) { + return true; + } +} diff --git a/src/test/java/demo/commands/SimpleCommand.java b/src/test/java/demo/commands/SimpleCommand.java deleted file mode 100644 index 0e3cd0b54..000000000 --- a/src/test/java/demo/commands/SimpleCommand.java +++ /dev/null @@ -1,46 +0,0 @@ -package demo.commands; - -import net.minestom.server.command.CommandProcessor; -import net.minestom.server.command.CommandSender; -import net.minestom.server.entity.Player; -import org.jetbrains.annotations.NotNull; - -public class SimpleCommand implements CommandProcessor { - @NotNull - @Override - public String getCommandName() { - return "test"; - } - - @Override - public String[] getAliases() { - return new String[]{"alias"}; - } - - @Override - public boolean process(@NotNull CommandSender sender, @NotNull String command, @NotNull String[] args) { - if (!sender.isPlayer()) - return false; - - sender.asPlayer().getInstance().saveChunksToStorage(() -> System.out.println("END SAVE")); - - System.gc(); - - return true; - } - - @Override - public boolean hasAccess(@NotNull Player player) { - return true; - } - - @Override - public boolean enableWritingTracking() { - return true; - } - - @Override - public String[] onWrite(@NotNull CommandSender sender, @NotNull String text) { - return new String[]{"Complete1", "Complete2"}; - } -}