diff --git a/server/src/main/java/dev/plex/listener/impl/CommandListener.java b/server/src/main/java/dev/plex/listener/impl/CommandListener.java index d3af48e..4bdc23a 100644 --- a/server/src/main/java/dev/plex/listener/impl/CommandListener.java +++ b/server/src/main/java/dev/plex/listener/impl/CommandListener.java @@ -24,7 +24,7 @@ public class CommandListener extends PlexListener @EventHandler(priority = EventPriority.HIGHEST) public void onPlayerCommandPreprocess(PlayerCommandPreprocessEvent event) { - Bukkit.getOnlinePlayers().stream().filter(pl -> plugin.getPlayerCache().getPlexPlayer(pl.getUniqueId()).isCommandSpy() && plugin.getPlayerCache().getPlexPlayer(pl.getUniqueId()).isAdminActive()).forEach(pl -> + Bukkit.getOnlinePlayers().stream().filter(pl -> plugin.getPlayerCache().getPlexPlayer(pl.getUniqueId()).isCommandSpy() && hasCommandSpy(plugin.getPlayerCache().getPlexPlayer(pl.getUniqueId()))).forEach(pl -> { Player player = event.getPlayer(); String command = event.getMessage(); @@ -127,6 +127,18 @@ public class CommandListener extends PlexListener } } } + } + private boolean hasCommandSpy(PlexPlayer plexPlayer) + { + if (plugin.getSystem().equalsIgnoreCase("ranks")) + { + return plexPlayer.isAdminActive(); + } + else if (plugin.getSystem().equalsIgnoreCase("permissions")) + { + return plexPlayer.getPlayer().hasPermission("plex.commandspy"); + } + return false; } }