From 8ba70f0fc83c9732f4c84cb52808e9a49e4aed41 Mon Sep 17 00:00:00 2001 From: Camotoy <20743703+Camotoy@users.noreply.github.com> Date: Tue, 29 Oct 2024 23:16:24 -0400 Subject: [PATCH] Implement remainder slot display recipes --- .../java/org/geysermc/geyser/entity/EntityDefinitions.java | 1 + .../protocol/java/JavaFinishConfigurationTranslator.java | 1 + .../protocol/java/JavaRecipeBookAddTranslator.java | 5 +++++ .../protocol/java/JavaSelectKnownPacksTranslator.java | 3 ++- .../java/inventory/JavaContainerSetSlotTranslator.java | 4 +--- .../sound/block/ComparatorSoundInteractionTranslator.java | 5 ++--- .../sound/block/GrassPathInteractionTranslator.java | 4 +--- .../translator/sound/block/HoeInteractionTranslator.java | 4 +--- .../sound/block/LeverSoundInteractionTranslator.java | 5 ++--- .../sound/block/OpenableSoundInteractionTranslator.java | 5 ++--- .../main/java/org/geysermc/geyser/util/InventoryUtils.java | 4 ++++ 11 files changed, 22 insertions(+), 19 deletions(-) diff --git a/core/src/main/java/org/geysermc/geyser/entity/EntityDefinitions.java b/core/src/main/java/org/geysermc/geyser/entity/EntityDefinitions.java index 1443a9443..62283f4df 100644 --- a/core/src/main/java/org/geysermc/geyser/entity/EntityDefinitions.java +++ b/core/src/main/java/org/geysermc/geyser/entity/EntityDefinitions.java @@ -858,6 +858,7 @@ public final class EntityDefinitions { SALMON = EntityDefinition.inherited(abstractFishEntityBase.factory(), abstractFishEntityBase) .type(EntityType.SALMON) .height(0.5f).width(0.7f) + .addTranslator(null) // Scale/variant - TODO .build(); TADPOLE = EntityDefinition.inherited(TadpoleEntity::new, abstractFishEntityBase) .type(EntityType.TADPOLE) diff --git a/core/src/main/java/org/geysermc/geyser/translator/protocol/java/JavaFinishConfigurationTranslator.java b/core/src/main/java/org/geysermc/geyser/translator/protocol/java/JavaFinishConfigurationTranslator.java index 6cbefde0d..d73c2e2ed 100644 --- a/core/src/main/java/org/geysermc/geyser/translator/protocol/java/JavaFinishConfigurationTranslator.java +++ b/core/src/main/java/org/geysermc/geyser/translator/protocol/java/JavaFinishConfigurationTranslator.java @@ -74,6 +74,7 @@ public class JavaFinishConfigurationTranslator extends PacketTranslator { // todo: dump from client? - private static final Set KNOWN_PACK_IDS = Set.of("core", "update_1_21", "bundle", "trade_rebalance"); + private static final Set KNOWN_PACK_IDS = Set.of("core", "winter_drop", "trade_rebalance", "redstone_experiments", "minecart_improvements"); @Override public void translate(GeyserSession session, ClientboundSelectKnownPacks packet) { @@ -62,6 +62,7 @@ public class JavaSelectKnownPacksTranslator extends PacketTranslator acceptsAsInput(session, aSlotDisplay, itemStack)); } + if (slotDisplay instanceof WithRemainderSlotDisplay remainderSlotDisplay) { + return acceptsAsInput(session, remainderSlotDisplay.input(), itemStack); + } if (slotDisplay instanceof ItemSlotDisplay itemSlotDisplay) { return itemStack.getJavaId() == itemSlotDisplay.item(); }