From e21a7815364c38fc6b38014e9b8ebc78c584486a Mon Sep 17 00:00:00 2001 From: RoboMWM Date: Wed, 19 Sep 2018 00:02:40 -0700 Subject: [PATCH] Cancel item merging with protected drops. Closes #255 --- .../ryanhamshire/GriefPrevention/EntityEventHandler.java | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/main/java/me/ryanhamshire/GriefPrevention/EntityEventHandler.java b/src/main/java/me/ryanhamshire/GriefPrevention/EntityEventHandler.java index 991ecc8..04ab7b7 100644 --- a/src/main/java/me/ryanhamshire/GriefPrevention/EntityEventHandler.java +++ b/src/main/java/me/ryanhamshire/GriefPrevention/EntityEventHandler.java @@ -63,6 +63,7 @@ import org.bukkit.event.entity.EntityInteractEvent; import org.bukkit.event.entity.EntityPortalEnterEvent; import org.bukkit.event.entity.EntityPortalExitEvent; import org.bukkit.event.entity.ExpBottleEvent; +import org.bukkit.event.entity.ItemMergeEvent; import org.bukkit.event.entity.ItemSpawnEvent; import org.bukkit.event.entity.PotionSplashEvent; import org.bukkit.event.hanging.HangingBreakByEntityEvent; @@ -505,6 +506,14 @@ public class EntityEventHandler implements Listener } } } + + @EventHandler(ignoreCancelled = true, priority = EventPriority.LOWEST) + public void onItemMerge(ItemMergeEvent event) + { + Item item = event.getTarget(); + List data = item.getMetadata("GP_ITEMOWNER"); + event.setCancelled(data != null && data.size() > 0); + } //when an entity picks up an item @EventHandler(priority = EventPriority.LOWEST)