// This claas was created by JaTiTV package de.jatitv.opsecurity.listener; import de.jatitv.opsecurity.config.languages.SelectMessages; import de.jatitv.opsecurity.config.config.SelectConfig; import de.jatitv.opsecurity.system.Main; import de.jatitv.opsecurity.util.Replace; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; import org.bukkit.event.player.PlayerCommandPreprocessEvent; import org.bukkit.event.server.ServerCommandEvent; import java.util.Iterator; public class LPCommand implements Listener { private boolean LPCheck(String command) { if (command.charAt(0) == '/') { command = command.replaceFirst("/", ""); } Iterator inter = SelectConfig.LP_Whitelist.iterator(); String lpwtl; do { if (!inter.hasNext()) { return true; } lpwtl = (String) inter.next(); } while (!command.equalsIgnoreCase("lp " + lpwtl) && !command.equalsIgnoreCase("luckperms " + lpwtl) && !command.equalsIgnoreCase("permissions " + lpwtl) && !command.equalsIgnoreCase("perms " + lpwtl) && !command.equalsIgnoreCase("perm " + lpwtl) && !command.equalsIgnoreCase("lpb " + lpwtl) && !command.equalsIgnoreCase("luckpermsbungee " + lpwtl) && !command.equalsIgnoreCase("lpv " + lpwtl) && !command.equalsIgnoreCase("luckpermsvelocity " + lpwtl)); return false; } @EventHandler public void onOPServer(ServerCommandEvent event) { if (SelectConfig.LP_AllowFromConsole) { if (!(event.getSender() instanceof Player)) { return; } } if ((event.getCommand().toLowerCase().startsWith("lp ") || event.getCommand().toLowerCase().startsWith("luckperms ") || event.getCommand().toLowerCase().startsWith("permissions ") || event.getCommand().toLowerCase().startsWith("perms ") || event.getCommand().toLowerCase().startsWith("perm ") || event.getCommand().toLowerCase().startsWith("lpb ") || event.getCommand().toLowerCase().startsWith("luckpermsbungee ") || event.getCommand().toLowerCase().startsWith("lpv ") || event.getCommand().toLowerCase().startsWith("luckpermsvelocity ")) && SelectConfig.LP_Enable && this.LPCheck(event.getCommand())) { event.getSender().sendMessage(Replace.replace(Main.Prefix + SelectMessages.OP_opCommand)); event.setCancelled(true); } } @EventHandler public void onOpPlayer(PlayerCommandPreprocessEvent event) { if (SelectConfig.LP_AllowFromConsole) { if (!(event.getPlayer() instanceof Player)) { return; } } if ((event.getPlayer().isOp() || event.getPlayer().hasPermission("*")) && event.getMessage().toLowerCase().startsWith("/lp ") || event.getMessage().toLowerCase().startsWith("/luckperms ") || event.getMessage().toLowerCase().startsWith("/permissions ") || event.getMessage().toLowerCase().startsWith("/perms ") || event.getMessage().toLowerCase().startsWith("/lpb ") || event.getMessage().toLowerCase().startsWith("/luckpermsbungee ") || event.getMessage().toLowerCase().startsWith("/lpv ") || event.getMessage().toLowerCase().startsWith("/luckpermsvelocity ") && SelectConfig.OP_Whitelist_Enable && this.LPCheck(event.getMessage())) { event.getPlayer().sendMessage(Replace.replace(Main.Prefix + SelectMessages.OP_opCommand)); event.setCancelled(true); } } }