From 5e82c7c7fcddad24d73be83e01dfb910053f4ca4 Mon Sep 17 00:00:00 2001 From: Dreeam <61569423+Dreeam-qwq@users.noreply.github.com> Date: Sat, 28 Sep 2024 11:17:28 -0400 Subject: [PATCH] Updated Upstream (Paper/Gale) Upstream has released updates that appear to apply and compile correctly Paper Changes: PaperMC/Paper@20ec622 use correct types for preloading CraftRegistry PaperMC/Paper@627cc64 Adjust HAProxy's existance to log for console masters (#11433) PaperMC/Paper@01c4820 Call EntityDropItemEvent when a container item drops its contents (#11441) PaperMC/Paper@9c76642 Deprecate for removal Block#isValidTool (#11439) PaperMC/Paper@dd6d184 Remove redundant fillUsableCommands call (#11425) PaperMC/Paper@f33611c fix ItemStack#removeEnchantments creating non-stackable items (#11442) PaperMC/Paper@8f56db8 Add enchantWithLevels with tag specification (#11438) PaperMC/Paper@b7ab22d Fix console completions on invalid commands (#7603) PaperMC/Paper@41bc31b Update paperweight to 1.7.3 (#11445) Gale Changes: Dreeam-qwq/Gale@0f495ae Updated Upstream (Paper) --- gradle.properties | 2 +- .../server/0105-Change-max-stack-count.patch | 40 ++++++++++++++----- 2 files changed, 30 insertions(+), 12 deletions(-) diff --git a/gradle.properties b/gradle.properties index b28ec9b5..d0634c3a 100644 --- a/gradle.properties +++ b/gradle.properties @@ -2,7 +2,7 @@ group = cn.dreeam.leaf mcVersion = 1.21.1 version = 1.21.1-R0.1-SNAPSHOT -galeCommit = 1169c4fdffa0b1c455612c157695a24b4f399d9d +galeCommit = 0f495ae698c486fa65e434be705b24699c739bd0 org.gradle.caching = true org.gradle.parallel = true diff --git a/patches/server/0105-Change-max-stack-count.patch b/patches/server/0105-Change-max-stack-count.patch index a799e418..24e558ea 100644 --- a/patches/server/0105-Change-max-stack-count.patch +++ b/patches/server/0105-Change-max-stack-count.patch @@ -68,27 +68,45 @@ 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 66f88f44eb74dfbdafe0d6257dc1ef46238aaa92..e0a5d485989dd9e9c9d33f57929aa3dd79294bc9 100644 +index 4901f0d89ae2472bce7f242d9529236674f5d134..1a3af765b120cf6eab62ce53b06432c04476deb3 100644 --- a/src/main/java/net/minecraft/world/item/ItemUtils.java +++ b/src/main/java/net/minecraft/world/item/ItemUtils.java -@@ -41,7 +41,17 @@ public class ItemUtils { - public static void onContainerDestroyed(ItemEntity itemEntity, Iterable contents) { +@@ -42,13 +42,29 @@ public class ItemUtils { Level level = itemEntity.level(); if (!level.isClientSide) { + // Paper start - call EntityDropItemEvent +- 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); + // Leaf start - Change max stack count -+ if (org.dreeam.leaf.config.modules.gameplay.MaxItemsStackCount.maxContainerDestroyCount == 0) - contents.forEach(stack -> level.addFreshEntity(new ItemEntity(level, itemEntity.getX(), itemEntity.getY(), itemEntity.getZ(), stack))); -+ else ++ 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); ++ } ++ }); ++ } else { ++ java.util.Iterator iterator = contents.iterator(); + for (int count = Math.min(itemEntity.getItem().getCount(), org.dreeam.leaf.config.modules.gameplay.MaxItemsStackCount.maxContainerDestroyCount); count > 0; count--) { -+ if (!contents.iterator().hasNext()) break; ++ if (!iterator.hasNext()) break; + -+ ItemStack stack = contents.iterator().next(); -+ level.addFreshEntity(new ItemEntity(level, itemEntity.getX(), itemEntity.getY(), itemEntity.getZ(), stack)); -+ } ++ 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); ++ } + } +- }); ++ } + // Leaf end - Change max stack count + // Paper end - call EntityDropItemEvent } } - } 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