From 758b5ee500b2860d4f9997f90120ebd048c9d95f Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Mon, 20 Mar 2023 21:27:56 +0000 Subject: [PATCH] InventoryManager: fixed armor slots hack the correct condition for this should be an unsynced armor slot changed during a transaction, but conveying this information to syncSlot() is a bit of a hassle, so this will do for now. --- src/network/mcpe/InventoryManager.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/network/mcpe/InventoryManager.php b/src/network/mcpe/InventoryManager.php index 225b6cdec..d86821c2f 100644 --- a/src/network/mcpe/InventoryManager.php +++ b/src/network/mcpe/InventoryManager.php @@ -440,7 +440,7 @@ class InventoryManager{ //BDS (Bedrock Dedicated Server) also seems to work this way. $this->session->sendDataPacket(InventoryContentPacket::create($windowId, [$itemStackWrapper])); }else{ - if($this->currentItemStackRequestId !== null){ + if($windowId === ContainerIds::ARMOR){ //TODO: HACK! //When right-clicking to equip armour, the client predicts the content of the armour slot, but //doesn't report it in the transaction packet. The server then sends an InventorySlotPacket to