public class Reclaim implements CommandExecutor { Main plugin = Main.getPlugin(Main.class); FileConfiguration config = plugin.getConfig(); @Override public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { if(label.equalsIgnoreCase("reclaim")) { if (plugin.getConfig().getStringList("Used").contains(sender.getName())){ sender.sendMessage(ChatColor.RED + "You have already used this command!"); return true; } else { ArrayList permList = new ArrayList<>(); for(PermissionAttachmentInfo pai : sender.getEffectivePermissions()) { String perm = pai.getPermission(); System.out.println(perm); if (perm.startsWith("tier.tier")) { perm = perm.replace("tier.tier", ""); permList.add(Integer.valueOf(perm)); } } Collections.sort(permList); plugin.players.add(sender.getName()); plugin.getConfig().set("Used", plugin.players); plugin.saveConfig(); for(String cmd : config.getStringList("Tiers.Tier" + permList.get(permList.size() - 1))) { String[] array = cmd.split(" ", 2); switch (array[0]) { case "[BROADCAST]": broadcast((Player) sender, array[1]); break; case "[MESSAGE]": message((Player) sender, array[1]); break; case "[COMMAND]": command((Player) sender, array[1]); break; } } return true; } return false; } } private void broadcast(Player player, String message){ message = PlaceholderAPI.setPlaceholders(player, message); Bukkit.broadcastMessage(ChatColor.translateAlternateColorCodes('&', message)); } private void message(Player player, String message){ message = PlaceholderAPI.setPlaceholders(player, message); player.sendMessage(ChatColor.translateAlternateColorCodes('&', message)); } private void command(Player player,String message){ message = PlaceholderAPI.setPlaceholders(player, message); Bukkit.dispatchCommand(Bukkit.getConsoleSender(), message); } }