Ok so i am trying to get a bowl to despawn once dropped on the ground. Here is my code so far: Yes i have registered and everything. Code:java package com.bwfcwalshy.kitpvp.listeners; import org.bukkit.Material;import org.bukkit.event.EventHandler;import org.bukkit.event.Listener;import org.bukkit.event.player.PlayerDropItemEvent; public class EmptyBowl implements Listener { @EventHandler public void onBowlDrop(PlayerDropItemEvent e){ if(e.getItemDrop().getType().equals(Material.BOWL)){ e.getItemDrop().setTicksLived(0); } }}
I'd assume something like this would work: Code:java @EventHandlerpublic void onBowlDrop(PlayerDropItemEvent event){ if(event.getItemDrop().getType().equals(Material.BOWL)){ Entity entity = event.getItemDrop(); entity.remove(); }}
Hmm... You could always cancel the event, and then remove one bowl from his inventory.. It's not the most logical way though.
bwfcwalshy try Code: if (event.getItemDrop().getItemStack().getType() == Material.APPLE) { event.getItemDrop().setItemStack(new ItemStack(Material.AIR)); }
bwfcwalshy Code: @EventHandler public void onBowlDrop(PlayerDropItemEvent event) { ItemStack bowl = new ItemStack(Material.BOWL); Item is = (Item) event.getItemDrop(); if (is == bowl) { is.remove(); } }