This is no big deal, but i was just wondeing why it not working, i have in my config file set so you can set permissions to true or false. But it will not work. The line i think is wrong is this Line:53 Code: if (p.hasPermission("IE.switch") || !(plugin.getConfig().getBoolean("ItemSwitcher.Permissions"))) { The rest of the code: Main: Code: package io.github.Waterman2707.ItemSwitcher; import java.util.HashMap; import io.github.Waterman2707.ItemSwitcher.ItemSwitcherCommandExecutor; import org.bukkit.command.Command; import org.bukkit.command.CommandSender; import org.bukkit.configuration.file.FileConfiguration; import org.bukkit.plugin.java.JavaPlugin; public class Main extends JavaPlugin{ @Override public void onEnable() { this.getCommand("switch").setExecutor(new ItemSwitcherCommandExecutor(this)); final FileConfiguration config = this.getConfig(); this.getConfig().options().copyDefaults(true); config.addDefault("ItemSwitcher.Permissions", true); this.saveConfig(); } } CommandExecutor: Code: package io.github.Waterman2707.ItemSwitcher; import java.util.HashMap; import org.bukkit.Bukkit; import org.bukkit.ChatColor; import org.bukkit.command.Command; import org.bukkit.command.CommandExecutor; import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; import org.bukkit.inventory.ItemStack; import org.bukkit.plugin.java.JavaPlugin; public class ItemSwitcherCommandExecutor implements CommandExecutor{ private final Main plugin; public ItemSwitcherCommandExecutor(Main plugin) { this.plugin = plugin; } private HashMap<String , ItemStack[]> armor1 = new HashMap<String , ItemStack[]>(); private HashMap<String , ItemStack[]> armor2 = new HashMap<String , ItemStack[]>(); private HashMap<String , ItemStack[]> inv1 = new HashMap<String , ItemStack[]>(); private HashMap<String , ItemStack[]> inv2 = new HashMap<String , ItemStack[]>(); public HashMap<String, ItemStack[]> getArmor1() { return armor1; } public HashMap<String, ItemStack[]> getArmor2() { return armor2; } public HashMap<String, ItemStack[]> getInv1() { return inv1; } public HashMap<String, ItemStack[]> getInv2() { return inv2; } public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { if (!(sender instanceof Player)) { return false; } Player p = (Player) sender; String pn = p.getName(); if (cmd.getName().equalsIgnoreCase("switch")){ if (p.hasPermission("IE.switch") || !(plugin.getConfig().getBoolean("ItemSwitcher.Permissions"))) { if (args.length == 0) { if(armor1.containsKey(pn)) { armor2.put(pn, p.getInventory().getArmorContents()); inv2.put(pn, p.getInventory().getContents()); p.getInventory().clear(); p.getInventory().setArmorContents(armor1.get(pn)); p.getInventory().setContents(inv1.get(pn)); armor1.remove(pn); inv1.remove(pn); p.sendMessage(ChatColor.AQUA + "[ItemSwitcher] " + ChatColor.RED + "Your item has switced"); return true; } else if (armor2.containsKey(pn)) { armor1.put(pn, p.getInventory().getArmorContents()); inv1.put(pn, p.getInventory().getContents()); p.getInventory().clear(); p.getInventory().setArmorContents(armor2.get(pn)); p.getInventory().setContents(inv2.get(pn)); armor2.remove(pn); inv2.remove(pn); p.sendMessage(ChatColor.AQUA + "[ItemSwitcher] " + ChatColor.RED + "Your item has switced"); return true; } else { armor1.put(pn, p.getInventory().getArmorContents()); inv1.put(pn, p.getInventory().getContents()); p.getInventory().clear(); p.sendMessage(ChatColor.AQUA + "[ItemSwitcher] " + ChatColor.RED + "Your item has switced"); return true; } } else return false; } else return false; } return true; } }
My mistake. Check if they have turned on permissions. If so, check their permission, otherwise continue.