From 1b8cb4f747e3a4fc840f63c218a65d165aef63a7 Mon Sep 17 00:00:00 2001 From: Dreeam <61569423+Dreeam-qwq@users.noreply.github.com> Date: Sat, 28 Sep 2024 11:23:20 -0400 Subject: [PATCH] Clean up change max stack count --- .../server/0105-Change-max-stack-count.patch | 27 ++++++++++--------- 1 file changed, 15 insertions(+), 12 deletions(-) diff --git a/patches/server/0105-Change-max-stack-count.patch b/patches/server/0105-Change-max-stack-count.patch index 24e558ea..960ef2db 100644 --- a/patches/server/0105-Change-max-stack-count.patch +++ b/patches/server/0105-Change-max-stack-count.patch @@ -68,10 +68,10 @@ index 1fe41abcdc28013e2dae4b5c3ee727759fc3890c..18773f975b70f4d871808aa0eb1f7313 targetEntity.setItem(itemstack2); } diff --git a/src/main/java/net/minecraft/world/item/ItemUtils.java b/src/main/java/net/minecraft/world/item/ItemUtils.java -index 4901f0d89ae2472bce7f242d9529236674f5d134..1a3af765b120cf6eab62ce53b06432c04476deb3 100644 +index 4901f0d89ae2472bce7f242d9529236674f5d134..127f41511cdcaacc00e0f128c20339f38c7ce733 100644 --- a/src/main/java/net/minecraft/world/item/ItemUtils.java +++ b/src/main/java/net/minecraft/world/item/ItemUtils.java -@@ -42,13 +42,29 @@ public class ItemUtils { +@@ -42,14 +42,32 @@ public class ItemUtils { Level level = itemEntity.level(); if (!level.isClientSide) { // Paper start - call EntityDropItemEvent @@ -83,11 +83,7 @@ index 4901f0d89ae2472bce7f242d9529236674f5d134..1a3af765b120cf6eab62ce53b06432c0 + // Leaf start - Change max stack count + if (org.dreeam.leaf.config.modules.gameplay.MaxItemsStackCount.maxContainerDestroyCount == 0) { + contents.forEach(stack -> { -+ ItemEntity droppedItem = new ItemEntity(level, itemEntity.getX(), itemEntity.getY(), itemEntity.getZ(), stack); -+ org.bukkit.event.entity.EntityDropItemEvent event = new org.bukkit.event.entity.EntityDropItemEvent(itemEntity.getBukkitEntity(), (org.bukkit.entity.Item) droppedItem.getBukkitEntity()); -+ if (event.callEvent()) { -+ level.addFreshEntity(droppedItem); -+ } ++ addFreshEntityWithCallEvent(itemEntity, level, stack); + }); + } else { + java.util.Iterator iterator = contents.iterator(); @@ -95,11 +91,7 @@ index 4901f0d89ae2472bce7f242d9529236674f5d134..1a3af765b120cf6eab62ce53b06432c0 + if (!iterator.hasNext()) break; + + ItemStack stack = iterator.next(); -+ ItemEntity droppedItem = new ItemEntity(level, itemEntity.getX(), itemEntity.getY(), itemEntity.getZ(), stack); -+ org.bukkit.event.entity.EntityDropItemEvent event = new org.bukkit.event.entity.EntityDropItemEvent(itemEntity.getBukkitEntity(), (org.bukkit.entity.Item) droppedItem.getBukkitEntity()); -+ if (event.callEvent()) { -+ level.addFreshEntity(droppedItem); -+ } ++ addFreshEntityWithCallEvent(itemEntity, level, stack); } - }); + } @@ -107,6 +99,17 @@ index 4901f0d89ae2472bce7f242d9529236674f5d134..1a3af765b120cf6eab62ce53b06432c0 // Paper end - call EntityDropItemEvent } } ++ ++ // Leaf start - Change max stack count ++ private static void addFreshEntityWithCallEvent(ItemEntity itemEntity, Level level, ItemStack stack) { ++ ItemEntity droppedItem = new ItemEntity(level, itemEntity.getX(), itemEntity.getY(), itemEntity.getZ(), stack); ++ org.bukkit.event.entity.EntityDropItemEvent event = new org.bukkit.event.entity.EntityDropItemEvent(itemEntity.getBukkitEntity(), (org.bukkit.entity.Item) droppedItem.getBukkitEntity()); ++ if (event.callEvent()) { ++ level.addFreshEntity(droppedItem); ++ } ++ } ++ // Leaf end - Change max stack count + } diff --git a/src/main/java/org/dreeam/leaf/config/modules/gameplay/MaxItemsStackCount.java b/src/main/java/org/dreeam/leaf/config/modules/gameplay/MaxItemsStackCount.java new file mode 100644 index 0000000000000000000000000000000000000000..4a895897111454dc3558aa491b9d81cf610b5bbf