From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: NONPLAYT <76615486+NONPLAYT@users.noreply.github.com> Date: Sun, 25 Jun 2023 22:54:47 +0300 Subject: [PATCH] Fix MC-65198 Original post on Mojira: https://bugs.mojang.com/browse/MC-65198 diff --git a/src/main/java/net/minecraft/world/inventory/ItemCombinerMenu.java b/src/main/java/net/minecraft/world/inventory/ItemCombinerMenu.java index a578882b64c581ef4f47fa483a9f2988cfa4c8cf..0660c07e1f360cb5e0a865a6b7574ea14a327f10 100644 --- a/src/main/java/net/minecraft/world/inventory/ItemCombinerMenu.java +++ b/src/main/java/net/minecraft/world/inventory/ItemCombinerMenu.java @@ -141,6 +141,7 @@ public abstract class ItemCombinerMenu extends AbstractContainerMenu { ItemStack itemstack1 = slot1.getItem(); itemstack = itemstack1.copy(); + ItemStack itemStack2 = itemstack.copy(); int j = this.getInventorySlotStart(); int k = this.getUseRowEnd(); @@ -179,7 +180,7 @@ public abstract class ItemCombinerMenu extends AbstractContainerMenu { } this.activeQuickItem = itemstack; // Purpur - slot1.onTake(player, itemstack1); + slot1.onTake(player, itemStack2); // DivineMC - Fix MC-65198 this.activeQuickItem = null; // Purpur } diff --git a/src/main/java/net/minecraft/world/inventory/ResultSlot.java b/src/main/java/net/minecraft/world/inventory/ResultSlot.java index 8c97a7269040436cacc65fd182fa8e5f931b6c16..bf0335e1441d99844777eb8aa83db0d6d774aa9d 100644 --- a/src/main/java/net/minecraft/world/inventory/ResultSlot.java +++ b/src/main/java/net/minecraft/world/inventory/ResultSlot.java @@ -45,7 +45,7 @@ public class ResultSlot extends Slot { @Override protected void checkTakeAchievements(ItemStack stack) { if (this.removeCount > 0) { - stack.onCraftedBy(this.player.level(), this.player, this.removeCount); + stack.onCraftedBy(this.player.level(), this.player, stack.getCount()); // DivineMC - Fix MC-65198 } Container var3 = this.container; diff --git a/src/main/java/net/minecraft/world/inventory/StonecutterMenu.java b/src/main/java/net/minecraft/world/inventory/StonecutterMenu.java index f8129dcdcae12ed66ec58e8c749fa88ec3cd85d8..c90eed190d059dc5eb923cda39019a754d19ed05 100644 --- a/src/main/java/net/minecraft/world/inventory/StonecutterMenu.java +++ b/src/main/java/net/minecraft/world/inventory/StonecutterMenu.java @@ -258,6 +258,7 @@ public class StonecutterMenu extends AbstractContainerMenu { Item item = itemstack1.getItem(); itemstack = itemstack1.copy(); + ItemStack itemStack2 = itemstack.copy(); // DivineMC - Fix MC-65198 if (slot == 1) { item.onCraftedBy(itemstack1, player.level(), player); if (!this.moveItemStackTo(itemstack1, 2, 38, true)) { @@ -290,7 +291,7 @@ public class StonecutterMenu extends AbstractContainerMenu { return ItemStack.EMPTY; } - slot1.onTake(player, itemstack1); + slot1.onTake(player, itemStack2); // DivineMC - Fix MC-65198 this.broadcastChanges(); }