diff --git a/src/main/java/pw/kaboom/commandspy/Main.java b/src/main/java/pw/kaboom/commandspy/Main.java index 8e7e48c..10692b4 100644 --- a/src/main/java/pw/kaboom/commandspy/Main.java +++ b/src/main/java/pw/kaboom/commandspy/Main.java @@ -6,7 +6,6 @@ import org.bukkit.Bukkit; import org.bukkit.command.Command; import org.bukkit.command.CommandExecutor; import org.bukkit.command.CommandSender; -import org.bukkit.command.ConsoleCommandSender; import org.bukkit.configuration.file.FileConfiguration; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; @@ -17,6 +16,7 @@ import org.bukkit.event.player.PlayerCommandPreprocessEvent; import org.bukkit.plugin.java.JavaPlugin; import net.kyori.adventure.text.Component; import net.kyori.adventure.text.format.NamedTextColor; +import org.jetbrains.annotations.NotNull; public final class Main extends JavaPlugin implements CommandExecutor, Listener { private FileConfiguration config; @@ -44,19 +44,18 @@ public final class Main extends JavaPlugin implements CommandExecutor, Listener if (config.contains(player.getUniqueId().toString())) { return NamedTextColor.YELLOW; } + return NamedTextColor.AQUA; } @Override - public boolean onCommand(final CommandSender sender, final Command cmd, final String label, - final String[] args) { - if (sender instanceof ConsoleCommandSender) { + public boolean onCommand(final @NotNull CommandSender sender, final @NotNull Command cmd, + final @NotNull String label, final String[] args) { + if (!(sender instanceof final Player player)) { sender.sendMessage(Component.text("Command has to be run by a player")); return true; } - final Player player = (Player) sender; - if (args.length >= 1 && "on".equalsIgnoreCase(args[0])) { enableCommandSpy(player); return true; @@ -78,31 +77,32 @@ public final class Main extends JavaPlugin implements CommandExecutor, Listener .append(Component.text(": ")) .append(Component.text(event.getMessage())); - for (String uuidString : config.getKeys(false)) { + for (final String uuidString : config.getKeys(false)) { final UUID uuid = UUID.fromString(uuidString); final Player recipient = Bukkit.getPlayer(uuid); if (recipient == null) { continue; } + recipient.sendMessage(message); } } - @EventHandler + @EventHandler(ignoreCancelled = true, priority = EventPriority.MONITOR) void onSignChange(final SignChangeEvent event) { final Player player = event.getPlayer(); final NamedTextColor color = getTextColor(player); Component message = Component.text(player.getName(), color) .append(Component.text(" created a sign with contents:")); - for (Component line : event.lines()) { + for (final Component line : event.lines()) { message = message .append(Component.text("\n ")) .append(line); } - for (String uuidString : config.getKeys(false)) { + for (final String uuidString : config.getKeys(false)) { final UUID uuid = UUID.fromString(uuidString); final Player recipient = Bukkit.getPlayer(uuid);