From cab10958738436ebbf548c8b233826b3a7320083 Mon Sep 17 00:00:00 2001 From: Doc Date: Mon, 4 Jul 2022 12:18:04 -0400 Subject: [PATCH] Fix count in origin item for InventoryMoveItemEvent --- patches/server/0339-Optimize-Hoppers.patch | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/patches/server/0339-Optimize-Hoppers.patch b/patches/server/0339-Optimize-Hoppers.patch index 6d477d9ca90c..60404c70ae0b 100644 --- a/patches/server/0339-Optimize-Hoppers.patch +++ b/patches/server/0339-Optimize-Hoppers.patch @@ -78,7 +78,7 @@ index a05acf709735b40ca86f978508c63a86065fd405..6a1405a8630e90db3b5a3c9152259ba6 double getLevelY(); diff --git a/src/main/java/net/minecraft/world/level/block/entity/HopperBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/HopperBlockEntity.java -index a507d7f65a94e49ecd18cd18797b156474558390..a7ac6b528aecae528a17af157f8ec29371e4484c 100644 +index a507d7f65a94e49ecd18cd18797b156474558390..765c7a082e3fa4ed1324aaaf1b6395d3ede6113e 100644 --- a/src/main/java/net/minecraft/world/level/block/entity/HopperBlockEntity.java +++ b/src/main/java/net/minecraft/world/level/block/entity/HopperBlockEntity.java @@ -3,7 +3,6 @@ package net.minecraft.world.level.block.entity; @@ -114,11 +114,11 @@ index a507d7f65a94e49ecd18cd18797b156474558390..a7ac6b528aecae528a17af157f8ec293 + if (!item.isEmpty()) { + foundItem = true; + ItemStack origItemStack = item; -+ ItemStack itemstack = origItemStack; ++ ItemStack itemstack = origItemStack.copy(); + + final int origCount = origItemStack.getCount(); + final int moved = Math.min(level.spigotConfig.hopperAmount, origCount); -+ origItemStack.setCount(moved); ++ itemstack.setCount(moved); + + // We only need to fire the event once to give protection plugins a chance to cancel this event + // Because nothing uses getItem, every event call should end up the same result. @@ -151,7 +151,7 @@ index a507d7f65a94e49ecd18cd18797b156474558390..a7ac6b528aecae528a17af157f8ec293 + } + + private static boolean hopperPull(Level level, Hopper ihopper, Container iinventory, ItemStack origItemStack, int i) { -+ ItemStack itemstack = origItemStack; ++ ItemStack itemstack = origItemStack.copy(); + final int origCount = origItemStack.getCount(); + final int moved = Math.min(level.spigotConfig.hopperAmount, origCount); + itemstack.setCount(moved);