From f3656f7dace5480a53bd968327646e950ba176d4 Mon Sep 17 00:00:00 2001 From: onebeastchris Date: Tue, 3 Jun 2025 18:09:23 +0200 Subject: [PATCH] Stop beacon opening earlier, improve debug logging --- .../org/geysermc/geyser/inventory/InventoryHolder.java | 6 ++++-- .../inventory/BeaconInventoryTranslator.java | 10 +++------- 2 files changed, 7 insertions(+), 9 deletions(-) diff --git a/core/src/main/java/org/geysermc/geyser/inventory/InventoryHolder.java b/core/src/main/java/org/geysermc/geyser/inventory/InventoryHolder.java index 8d822749b..6c811676e 100644 --- a/core/src/main/java/org/geysermc/geyser/inventory/InventoryHolder.java +++ b/core/src/main/java/org/geysermc/geyser/inventory/InventoryHolder.java @@ -160,8 +160,10 @@ public final class InventoryHolder { @Override public String toString() { return "InventoryHolder[" + - "session=" + session + ", " + + "session=" + session.bedrockUsername() + ", " + "inventory=" + inventory + ", " + - "translator=" + translator + ']'; + "pending= " + pending + ", " + + "containerOpenAttempts=" + containerOpenAttempts + ", " + + "translator=" + translator.getClass().getSimpleName() + ']'; } } diff --git a/core/src/main/java/org/geysermc/geyser/translator/inventory/BeaconInventoryTranslator.java b/core/src/main/java/org/geysermc/geyser/translator/inventory/BeaconInventoryTranslator.java index e3f2e3d32..3288d563f 100644 --- a/core/src/main/java/org/geysermc/geyser/translator/inventory/BeaconInventoryTranslator.java +++ b/core/src/main/java/org/geysermc/geyser/translator/inventory/BeaconInventoryTranslator.java @@ -44,7 +44,6 @@ import org.geysermc.geyser.inventory.updater.UIInventoryUpdater; import org.geysermc.geyser.level.block.Blocks; import org.geysermc.geyser.session.GeyserSession; import org.geysermc.geyser.translator.level.block.entity.BlockEntityTranslator; -import org.geysermc.geyser.util.InventoryUtils; import org.geysermc.mcprotocollib.protocol.data.game.inventory.ContainerType; import org.geysermc.mcprotocollib.protocol.packet.ingame.serverbound.inventory.ServerboundSetBeaconPacket; @@ -60,12 +59,9 @@ public class BeaconInventoryTranslator extends AbstractBlockInventoryTranslator< } @Override - public void openInventory(GeyserSession session, Container container) { - if (!container.isUsingRealBlock()) { - InventoryUtils.closeInventory(session, container.getJavaId(), false); - return; - } - super.openInventory(session, container); + public boolean prepareInventory(GeyserSession session, Container container) { + // Virtual beacon inventories aren't possible - we don't want to spawn a whole pyramid! + return super.canUseRealBlock(session, container); } }, UIInventoryUpdater.INSTANCE); }