public class TelekinesisCommand implements CommandExecutor { public Telekinesis plugin; public TelekinesisCommand (Telekinesis instance) { plugin = instance; } @Override public boolean onCommand(CommandSender sender, Command command, String label, String[] args) { if(!(sender instanceof Player)) return false; Player player = (Player) sender; ItemStack holding = player.getInventory().getItemInMainHand(); ItemMeta meta = holding.getItemMeta() != null ? holding.getItemMeta() : Bukkit.getItemFactory().getItemMeta(holding.getType()); PersistentDataContainer container = meta.getPersistentDataContainer(); String tel = container.get(new NamespacedKey(plugin, "TELEKINESIS"), PersistentDataType.STRING); if(tel != null) { player.sendMessage(ChatColor.translateAlternateColorCodes('&', "&8&b[&fTEL&8] &cYou already have Telekinesis on this item!")); return false; } container.set(new NamespacedKey(plugin, "TELEKINESIS"), PersistentDataType.STRING, "TRUE"); List lore = meta.getLore(); lore.add(ChatColor.translateAlternateColorCodes('&', "&7Telekinesis I")); meta.setLore(lore); player.sendMessage(ChatColor.translateAlternateColorCodes('&', "&8&b[&fTEL&8] &7Added Telekinesis to your item!")); return false; } }