Class AbstractBlockInventoryTranslator
java.lang.Object
org.geysermc.geyser.translator.inventory.InventoryTranslator
org.geysermc.geyser.translator.inventory.BaseInventoryTranslator
org.geysermc.geyser.translator.inventory.AbstractBlockInventoryTranslator
- Direct Known Subclasses:
AbstractFurnaceInventoryTranslator,AnvilInventoryTranslator,BeaconInventoryTranslator,BrewingInventoryTranslator,CartographyInventoryTranslator,CrafterInventoryTranslator,CraftingInventoryTranslator,EnchantingInventoryTranslator,Generic3X3InventoryTranslator,GrindstoneInventoryTranslator,HopperInventoryTranslator,LecternInventoryTranslator,LoomInventoryTranslator,OldSmithingTableTranslator,ShulkerInventoryTranslator,SmithingInventoryTranslator,StonecutterInventoryTranslator
Provided as a base for any inventory that requires a block for opening it
-
Nested Class Summary
Nested classes/interfaces inherited from class org.geysermc.geyser.translator.inventory.InventoryTranslator
InventoryTranslator.CraftState -
Field Summary
Fields inherited from class org.geysermc.geyser.translator.inventory.InventoryTranslator
PLAYER_INVENTORY_OFFSET, PLAYER_INVENTORY_SIZE, PLAYER_INVENTORY_TRANSLATOR, size -
Constructor Summary
ConstructorsConstructorDescriptionAbstractBlockInventoryTranslator(int size, InventoryHolder holder, InventoryUpdater updater) AbstractBlockInventoryTranslator(int size, Block javaBlock, org.cloudburstmc.protocol.bedrock.data.inventory.ContainerType containerType, InventoryUpdater updater, Block... additionalValidBlocks) AbstractBlockInventoryTranslator(int size, BlockState javaBlockState, org.cloudburstmc.protocol.bedrock.data.inventory.ContainerType containerType, InventoryUpdater updater, Block... additionalValidBlocks) -
Method Summary
Modifier and TypeMethodDescriptionbooleancanReuseInventory(GeyserSession session, @NonNull Inventory inventory, @NonNull Inventory previous) Whether a new inventory should be prepared - or if we can re-use the previous one.abstract @Nullable org.cloudburstmc.protocol.bedrock.data.inventory.ContainerTypecloseContainerType(Inventory inventory) voidcloseInventory(GeyserSession session, Inventory inventory) voidopenInventory(GeyserSession session, Inventory inventory) booleanprepareInventory(GeyserSession session, Inventory inventory) booleanrequiresOpeningDelay(GeyserSession session, Inventory inventory) voidupdateInventory(GeyserSession session, Inventory inventory) voidupdateSlot(GeyserSession session, Inventory inventory, int slot) Methods inherited from class org.geysermc.geyser.translator.inventory.BaseInventoryTranslator
bedrockSlotToJava, createInventory, getSlotType, javaSlotToBedrock, javaSlotToBedrockContainer, updatePropertyMethods inherited from class org.geysermc.geyser.translator.inventory.InventoryTranslator
acceptRequest, checkNetId, dumpStackRequestDetails, getGridSize, inventoryTranslator, isCursor, makeContainerEntries, rejectRequest, rejectRequest, shouldHandleRequestFirst, shouldRejectItemPlace, translateAutoCraftingRequest, translateCraftingRequest, translateCreativeRequest, translateRequest, translateRequests, translateSpecialRequest
-
Constructor Details
-
AbstractBlockInventoryTranslator
public AbstractBlockInventoryTranslator(int size, Block javaBlock, org.cloudburstmc.protocol.bedrock.data.inventory.ContainerType containerType, InventoryUpdater updater, Block... additionalValidBlocks) - Parameters:
javaBlock- a Java block that is used as a temporary block
-
AbstractBlockInventoryTranslator
public AbstractBlockInventoryTranslator(int size, BlockState javaBlockState, org.cloudburstmc.protocol.bedrock.data.inventory.ContainerType containerType, InventoryUpdater updater, Block... additionalValidBlocks) - Parameters:
size- the amount of slots that the inventory adds alongside the base inventory slotsjavaBlockState- a Java block state that is used as a temporary blockcontainerType- the container type of this inventoryupdater- updateradditionalValidBlocks- any other blocks that can safely use this inventory without a fake block
-
AbstractBlockInventoryTranslator
- Parameters:
size- the amount of slots that the inventory adds alongside the base inventory slotsholder- the custom block holderupdater- updater
-
-
Method Details
-
requiresOpeningDelay
- Overrides:
requiresOpeningDelayin classInventoryTranslator
-
canReuseInventory
public boolean canReuseInventory(GeyserSession session, @NonNull Inventory inventory, @NonNull Inventory previous) Description copied from class:InventoryTranslatorWhether a new inventory should be prepared - or if we can re-use the previous one.- Overrides:
canReuseInventoryin classInventoryTranslator
-
prepareInventory
- Specified by:
prepareInventoryin classInventoryTranslator
-
openInventory
- Specified by:
openInventoryin classInventoryTranslator
-
closeInventory
- Specified by:
closeInventoryin classInventoryTranslator
-
updateInventory
- Specified by:
updateInventoryin classInventoryTranslator
-
updateSlot
- Specified by:
updateSlotin classInventoryTranslator
-
closeContainerType
public abstract @Nullable org.cloudburstmc.protocol.bedrock.data.inventory.ContainerType closeContainerType(Inventory inventory)
-