Jump to content

[1.12.2] How to check for NBT using clearMatchingItems


Discusser

Recommended Posts

I have 2 separate classes for 2 different events. The first one is an ItemTossEvent, in which I add "delete" to the lore of the dropped item. The second one is an ItemPickupEvent where I am supposed to delete the items that were picked up by using 

player.inventory.clearMatchingItems

The only problem is that I'm pretty new to NBT and I'm not sure how exactly they work and I couldn't find any good explanation so I don't know how to check for the lore (the NBT in this case). I'm not sure if this helps but here is the part of the ItemTossEvent where I add lore to the dropped item.

public class EventDropItem {
	@SubscribeEvent
	public void dropItemEvent(ItemTossEvent event)
	{
      	ItemStack droppedItem = droppedEntityItem.getItem();
		
		NBTTagCompound nbt = droppedItem.getTagCompound();
		if (nbt == null) nbt = new NBTTagCompound();
		
		NBTTagList lore = new NBTTagList();
		lore.appendTag(new NBTTagString("delete"));
		
		NBTTagCompound display = new NBTTagCompound();
		display.setTag("Lore", lore);
		
		nbt.setTag("display", display);
		droppedItem.setTagCompound(nbt);
    }
}

 

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.

Announcements



×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.