hey guys I have been working on a throwing knife plugin for a friend and I have given a stick and a blaze rod custom names and lore. I set up an event handler to fire a snowball when ONLY the stick or blaze rod with custom names are interacted with. Here is my code Code:java package me.OmDalvi.ThrowingKnives; import java.util.ArrayList;import java.util.List; import org.bukkit.Bukkit;import org.bukkit.ChatColor;import org.bukkit.Effect;import org.bukkit.Material;import org.bukkit.enchantments.Enchantment;import org.bukkit.entity.*;import org.bukkit.event.EventHandler;import org.bukkit.event.Listener;import org.bukkit.event.block.Action;import org.bukkit.event.player.PlayerInteractEvent;import org.bukkit.inventory.ItemStack;import org.bukkit.inventory.ShapedRecipe;import org.bukkit.inventory.meta.ItemMeta;import org.bukkit.plugin.java.JavaPlugin; public class Main extends JavaPlugin implements Listener { ItemStack knive = new ItemStack(Material.STICK, 16); ItemStack fireKnive = new ItemStack(Material.BLAZE_ROD, 16); @Override public void onEnable(){ //Meta Data ItemMeta fireKniveMeta = fireKnive.getItemMeta(); //lore List<String> Firelore = new ArrayList<String>(); Firelore.add(ChatColor.GOLD +"This is a disguised throwing knife."); Firelore.add(ChatColor.GREEN +"Boom, Boom, Fia Powa!!!"); Firelore.add(ChatColor.BLUE +"+ ∞ damage"); fireKniveMeta.setLore(Firelore); //lore end //rename fireKniveMeta.setDisplayName(ChatColor.RED +"Throwing" +ChatColor.BLUE +"Knive"); //rename ends //enchants fireKniveMeta.addEnchant(Enchantment.KNOCKBACK, 100, true); fireKniveMeta.addEnchant(Enchantment.FIRE_ASPECT, 100, true); fireKniveMeta.addEnchant(Enchantment.LOOT_BONUS_MOBS, 100, true); fireKniveMeta.addEnchant(Enchantment.DAMAGE_ALL, 100, true); //enchants end knive.setItemMeta(fireKniveMeta); //Meta Data end //Recipe ShapedRecipe fireKniveRecipe = new ShapedRecipe(knive); fireKniveRecipe.shape("###","#I#","#S#"); fireKniveRecipe.setIngredient('I', Material.IRON_INGOT); fireKniveRecipe.setIngredient('S', Material.BLAZE_ROD); //Recipe End //Meta Data ItemMeta kniveMeta = knive.getItemMeta(); //lore List<String> lore = new ArrayList<String>(); lore.add(ChatColor.GOLD +"This is a disguised throwing knife."); lore.add(ChatColor.GREEN +":) :) :) :) :) :) :) :) :) :) :)"); lore.add(ChatColor.BLUE +"+ ∞ damage"); kniveMeta.setLore(lore); //lore end //rename kniveMeta.setDisplayName(ChatColor.AQUA +"Throwing" +ChatColor.BLUE +"Knive"); //rename ends //enchants kniveMeta.addEnchant(Enchantment.KNOCKBACK, 100, true); kniveMeta.addEnchant(Enchantment.LOOT_BONUS_MOBS, 100, true); kniveMeta.addEnchant(Enchantment.DAMAGE_ALL, 100, true); //enchants end knive.setItemMeta(kniveMeta); //Meta Data end //Recipe ShapedRecipe kniveRecipe = new ShapedRecipe(knive); kniveRecipe.shape("###","#I#","#S#"); kniveRecipe.setIngredient('I', Material.IRON_INGOT); kniveRecipe.setIngredient('S', Material.STICK); //Recipe End Bukkit.getServer().addRecipe(kniveRecipe); //Events Bukkit.getServer().getPluginManager().registerEvents(this, this); //Events end } @Override public void onDisable(){ Bukkit.getServer().clearRecipes(); } @EventHandler public void onPlayerInteract(final PlayerInteractEvent e) { if(!(e.getAction() == Action.RIGHT_CLICK_AIR)) return; if(e.getItem().getType() == Material.BLAZE_ROD){ Snowball s = e.getPlayer().launchProjectile(Snowball.class); s.getWorld().playEffect(e.getPlayer().getLocation(), Effect.SMOKE, 10); }else if(e.getItem().getType() == Material.STICK){ Snowball s = e.getPlayer().launchProjectile(Snowball.class); s.getWorld().playEffect(e.getPlayer().getLocation(), Effect.SMOKE, 10); } } } Plz help as my friend wants it done in a week!! Bye!