diff --git a/src/main/java/pw/kaboom/extras/modules/player/PlayerChat.java b/src/main/java/pw/kaboom/extras/modules/player/PlayerChat.java index 62747cb..a40644e 100644 --- a/src/main/java/pw/kaboom/extras/modules/player/PlayerChat.java +++ b/src/main/java/pw/kaboom/extras/modules/player/PlayerChat.java @@ -23,7 +23,7 @@ import java.util.regex.Pattern; public final class PlayerChat implements Listener { private static final PlayerChatRenderer CHAT_RENDERER = new PlayerChatRenderer(); - @EventHandler(priority = EventPriority.HIGHEST) + @EventHandler(ignoreCancelled = true, priority = EventPriority.LOW) void onAsyncChatEventProcess(final AsyncChatEvent event) { final UUID playerUuid = event.getPlayer().getUniqueId(); @@ -33,6 +33,7 @@ public final class PlayerChat implements Listener { if (millisDifference < 50) { event.setCancelled(true); + return; } } diff --git a/src/main/java/pw/kaboom/extras/modules/player/PlayerCommand.java b/src/main/java/pw/kaboom/extras/modules/player/PlayerCommand.java index b1fd441..cc3e5d0 100644 --- a/src/main/java/pw/kaboom/extras/modules/player/PlayerCommand.java +++ b/src/main/java/pw/kaboom/extras/modules/player/PlayerCommand.java @@ -6,6 +6,7 @@ import java.util.UUID; import io.papermc.paper.event.player.PlayerSignCommandPreprocessEvent; import org.bukkit.command.CommandSender; import org.bukkit.event.EventHandler; +import org.bukkit.event.EventPriority; import org.bukkit.event.Listener; import org.bukkit.event.player.PlayerCommandPreprocessEvent; @@ -14,7 +15,7 @@ import pw.kaboom.extras.modules.server.ServerCommand; public final class PlayerCommand implements Listener { private static HashMap<UUID, Long> commandMillisList = new HashMap<UUID, Long>(); - @EventHandler + @EventHandler(ignoreCancelled = true, priority = EventPriority.LOW) void onPlayerCommandPreprocess(final PlayerCommandPreprocessEvent event) { final UUID playerUuid = event.getPlayer().getUniqueId(); @@ -24,15 +25,12 @@ public final class PlayerCommand implements Listener { if (millisDifference < 75) { event.setCancelled(true); + return; } } getCommandMillisList().put(playerUuid, System.currentTimeMillis()); - if (event.isCancelled()) { - return; - } - final CommandSender sender = event.getPlayer(); final String command = event.getMessage(); final boolean isConsoleCommand = false; diff --git a/src/main/java/pw/kaboom/extras/modules/server/ServerCommand.java b/src/main/java/pw/kaboom/extras/modules/server/ServerCommand.java index 8040123..725fa44 100644 --- a/src/main/java/pw/kaboom/extras/modules/server/ServerCommand.java +++ b/src/main/java/pw/kaboom/extras/modules/server/ServerCommand.java @@ -23,10 +23,10 @@ public final class ServerCommand implements Listener { private static final Pattern SELECTOR_PATTERN = Pattern.compile("(?>\\s)*@[aepsr](?>\\s)*"); private static final Logger LOGGER = JavaPlugin.getPlugin(Main.class).getLogger(); - private static final String[] COMMANDS = { "execute", "clone", "fill", "forceload", "kick", - "locate", "locatebiome", "me", "msg", "reload", "save-all", "say", "spreadplayers", - "stop", "summon", "teammsg", "teleport", "tell", "tellraw", "tm", "tp", "w", "place", - "fillbiome", "ride" , "tick", "jfr", "give" }; + private static final String[] COMMANDS = { "execute", "clone", "datapack", "fill", + "forceload", "give", "kick", "locate", "locatebiome", "me", "msg", "reload", + "save-all", "say", "spreadplayers", "stop", "summon", "teammsg", "teleport", + "tell", "tellraw", "tm", "tp", "w", "place", "fillbiome", "ride" , "tick", "jfr"}; public static boolean checkExecuteCommand(final String cmd) { for (String command : COMMANDS) {