Class VisualWorkbenchHandler

All Implemented Interfaces:
ImmersiveHandler<ListOfItemsStorage>

public class VisualWorkbenchHandler extends TCCraftingStationHandler
  • Constructor Details

    • VisualWorkbenchHandler

      public VisualWorkbenchHandler()
  • Method Details

    • isDirtyForClientSync

      public boolean isDirtyForClientSync(net.minecraft.server.level.ServerPlayer player, net.minecraft.core.BlockPos pos)
      Description copied from interface: ImmersiveHandler
      Function to determine whether the block has changed its contents to sync to the client since its last sync. Dirtiness is addressed every tick, so for every tick, you should clear ALL flags used for dirtiness.
      Specified by:
      isDirtyForClientSync in interface ImmersiveHandler<ListOfItemsStorage>
      Overrides:
      isDirtyForClientSync in class TCCraftingStationHandler
      Parameters:
      player - Player to potentially send new data to.
      pos - Position of block to check.
      Returns:
      Whether the given block has changed since it was last synced to the client
    • swap

      public void swap(int slot, net.minecraft.world.InteractionHand hand, net.minecraft.core.BlockPos pos, net.minecraft.server.level.ServerPlayer player, ItemSwapAmount amount)
      Description copied from interface: ImmersiveHandler
      Swaps an item from a player's hand into this immersive (and/or vice-versa).
      Specified by:
      swap in interface ImmersiveHandler<ListOfItemsStorage>
      Overrides:
      swap in class TCCraftingStationHandler
      Parameters:
      slot - Slot being swapped with in this immersive.
      hand - Player's hand being swapped with.
      pos - Position of block being swapped with.
      player - Player who is swapping.
      amount - An object representing the amount of items to swap. Use ItemSwapAmount.getNumItemsToSwap(), passing in the item stack size of the item in the player's hand to get the amount of items to swap.
    • isValidBlock

      public boolean isValidBlock(net.minecraft.core.BlockPos pos, net.minecraft.world.level.Level level)
      Specified by:
      isValidBlock in interface ImmersiveHandler<ListOfItemsStorage>
      Overrides:
      isValidBlock in class TCCraftingStationHandler
      Parameters:
      pos - Position to check.
      level - The level being checked in.
      Returns:
      Whether the supplied block matches what this handler handles.
    • enabledInConfig

      public boolean enabledInConfig(net.minecraft.world.entity.player.Player player)
      Specified by:
      enabledInConfig in interface ImmersiveHandler<ListOfItemsStorage>
      Overrides:
      enabledInConfig in class TCCraftingStationHandler
      Parameters:
      player - The player we're checking the config of.
      Returns:
      Whether the immersive this handler handles is enabled. If you do not have a configuration system, this should always return true.
    • getID

      public net.minecraft.resources.ResourceLocation getID()
      Specified by:
      getID in interface ImmersiveHandler<ListOfItemsStorage>
      Overrides:
      getID in class TCCraftingStationHandler
      Returns:
      A unique ID to identify this handler. The same value should always be returned by this method.