diff options
Diffstat (limited to 'patches/server/0521-Prevent-grindstones-from-overstacking-items.patch')
-rw-r--r-- | patches/server/0521-Prevent-grindstones-from-overstacking-items.patch | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/patches/server/0521-Prevent-grindstones-from-overstacking-items.patch b/patches/server/0521-Prevent-grindstones-from-overstacking-items.patch new file mode 100644 index 0000000000..d98bb3f1c4 --- /dev/null +++ b/patches/server/0521-Prevent-grindstones-from-overstacking-items.patch @@ -0,0 +1,26 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: chickeneer <[email protected]> +Date: Tue, 16 Feb 2021 21:37:51 -0600 +Subject: [PATCH] Prevent grindstones from overstacking items + + +diff --git a/src/main/java/net/minecraft/world/inventory/GrindstoneMenu.java b/src/main/java/net/minecraft/world/inventory/GrindstoneMenu.java +index 1783661f38a6f5fb655ea83953b9467bd91a1302..95ac3446fba1f37637c9700080de2e1ce7a3550a 100644 +--- a/src/main/java/net/minecraft/world/inventory/GrindstoneMenu.java ++++ b/src/main/java/net/minecraft/world/inventory/GrindstoneMenu.java +@@ -198,13 +198,13 @@ public class GrindstoneMenu extends AbstractContainerMenu { + i = Math.max(item.getMaxDamage() - l, 0); + itemstack2 = this.mergeEnchants(itemstack, itemstack1); + if (!itemstack2.isDamageableItem()) { +- if (!ItemStack.matches(itemstack, itemstack1)) { ++ if (!ItemStack.matches(itemstack, itemstack1) || (itemstack2.getMaxStackSize() == 1 && !io.papermc.paper.configuration.GlobalConfiguration.get().unsupportedSettings.allowGrindstoneOverstacking)) { // Paper - add max stack size check & config value + org.bukkit.craftbukkit.event.CraftEventFactory.callPrepareGrindstoneEvent(this.getBukkitView(), ItemStack.EMPTY); // CraftBukkit + this.broadcastChanges(); + return; + } + +- b0 = 2; ++ b0 = 2; // Paper - add max stack size check & config value; the problem line for above change, causing over-stacking + } + } else { + boolean flag3 = !itemstack.isEmpty(); |