From 4a8d93752b1bef601cd9458b7c82faf9bad2631b Mon Sep 17 00:00:00 2001 From: AJ Ferguson Date: Fri, 29 Jan 2021 03:34:56 -0900 Subject: [PATCH] Handle DESTROY creative action --- .../translators/PlayerInventoryTranslator.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/connector/src/main/java/org/geysermc/connector/network/translators/inventory/translators/PlayerInventoryTranslator.java b/connector/src/main/java/org/geysermc/connector/network/translators/inventory/translators/PlayerInventoryTranslator.java index ffb97addd..288f5926e 100644 --- a/connector/src/main/java/org/geysermc/connector/network/translators/inventory/translators/PlayerInventoryTranslator.java +++ b/connector/src/main/java/org/geysermc/connector/network/translators/inventory/translators/PlayerInventoryTranslator.java @@ -407,6 +407,17 @@ public class PlayerInventoryTranslator extends InventoryTranslator { craftState = CraftState.DEPRECATED; break; } + case DESTROY: { + DestroyStackRequestActionData destroyAction = (DestroyStackRequestActionData) action; + if (craftState != CraftState.DEPRECATED) { + return rejectRequest(request); + } + + int sourceSlot = bedrockSlotToJava(destroyAction.getSource()); + inventory.setItem(sourceSlot, GeyserItemStack.EMPTY, session); //assume all creative destroy requests will empty the slot + affectedSlots.add(sourceSlot); + break; + } case TAKE: case PLACE: { TransferStackRequestActionData transferAction = (TransferStackRequestActionData) action;