Class Generic3x3ContainerScreenHandler

java.lang.Object
net.minecraft.screen.ScreenHandler
net.minecraft.screen.Generic3x3ContainerScreenHandler

public class Generic3x3ContainerScreenHandler extends ScreenHandler
Mappings:
Namespace Name
official cfc
intermediary net/minecraft/class_1716
named net/minecraft/screen/Generic3x3ContainerScreenHandler
  • Field Details

    • CONTAINER_SIZE

      private static final int CONTAINER_SIZE
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official k Lcfc;k:I
      intermediary field_30788 Lnet/minecraft/class_1716;field_30788:I
      named CONTAINER_SIZE Lnet/minecraft/screen/Generic3x3ContainerScreenHandler;CONTAINER_SIZE:I
    • INVENTORY_START

      private static final int INVENTORY_START
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official l Lcfc;l:I
      intermediary field_30789 Lnet/minecraft/class_1716;field_30789:I
      named INVENTORY_START Lnet/minecraft/screen/Generic3x3ContainerScreenHandler;INVENTORY_START:I
    • INVENTORY_END

      private static final int INVENTORY_END
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official m Lcfc;m:I
      intermediary field_30790 Lnet/minecraft/class_1716;field_30790:I
      named INVENTORY_END Lnet/minecraft/screen/Generic3x3ContainerScreenHandler;INVENTORY_END:I
    • HOTBAR_START

      private static final int HOTBAR_START
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official n Lcfc;n:I
      intermediary field_30791 Lnet/minecraft/class_1716;field_30791:I
      named HOTBAR_START Lnet/minecraft/screen/Generic3x3ContainerScreenHandler;HOTBAR_START:I
    • HOTBAR_END

      private static final int HOTBAR_END
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official o Lcfc;o:I
      intermediary field_30792 Lnet/minecraft/class_1716;field_30792:I
      named HOTBAR_END Lnet/minecraft/screen/Generic3x3ContainerScreenHandler;HOTBAR_END:I
    • inventory

      private final Inventory inventory
      Mappings:
      Namespace Name Mixin selector
      official p Lcfc;p:Lbgr;
      intermediary field_7806 Lnet/minecraft/class_1716;field_7806:Lnet/minecraft/class_1263;
      named inventory Lnet/minecraft/screen/Generic3x3ContainerScreenHandler;inventory:Lnet/minecraft/inventory/Inventory;
  • Constructor Details

    • Generic3x3ContainerScreenHandler

      public Generic3x3ContainerScreenHandler(int syncId, PlayerInventory playerInventory)
      Mappings:
      Namespace Name Mixin selector
      official <init> Lcfc;<init>(ILcbt;)V
      intermediary <init> Lnet/minecraft/class_1716;<init>(ILnet/minecraft/class_1661;)V
      named <init> Lnet/minecraft/screen/Generic3x3ContainerScreenHandler;<init>(ILnet/minecraft/entity/player/PlayerInventory;)V
    • Generic3x3ContainerScreenHandler

      public Generic3x3ContainerScreenHandler(int syncId, PlayerInventory playerInventory, Inventory inventory)
      Mappings:
      Namespace Name Mixin selector
      official <init> Lcfc;<init>(ILcbt;Lbgr;)V
      intermediary <init> Lnet/minecraft/class_1716;<init>(ILnet/minecraft/class_1661;Lnet/minecraft/class_1263;)V
      named <init> Lnet/minecraft/screen/Generic3x3ContainerScreenHandler;<init>(ILnet/minecraft/entity/player/PlayerInventory;Lnet/minecraft/inventory/Inventory;)V
  • Method Details

    • canUse

      public boolean canUse(PlayerEntity player)
      Returns whether the screen handler can be used.

      Subclasses should call #canUse(ScreenHandlerContext, PlayerEntity, Block)} or implement the check itself. The implementation should check that the player is near the screen handler's source position (e.g. block position) and that the source (e.g. block) is not destroyed.

      Specified by:
      canUse in class ScreenHandler
      Returns:
      whether the screen handler can be used
      Mappings:
      Namespace Name Mixin selector
      official a Lcel;a(Lcbu;)Z
      intermediary method_7597 Lnet/minecraft/class_1703;method_7597(Lnet/minecraft/class_1657;)Z
      named canUse Lnet/minecraft/screen/ScreenHandler;canUse(Lnet/minecraft/entity/player/PlayerEntity;)Z
    • quickMove

      public ItemStack quickMove(PlayerEntity player, int slot)
      Quick-moves the stack at slot to other slots of the screen handler that belong to a different inventory or another section of the same inventory. For example, items can be quick-moved between a chest's slots and the player inventory or between the main player inventory and the hotbar.

      Subclasses should call ScreenHandler.insertItem(net.minecraft.item.ItemStack, int, int, boolean), and if the insertion was successful, clear the slot (if the stack is exhausted) or mark it as dirty. See the vanilla subclasses for basic implementation.

      Quick-moving is also known as "shift-clicking" since it's usually triggered using Shift+left click.

      Specified by:
      quickMove in class ScreenHandler
      Parameters:
      slot - the index of the slot to quick-move from
      Returns:
      ItemStack.EMPTY when no stack can be transferred, otherwise the original stack
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official a Lcel;a(Lcbu;I)Lcjf;
      intermediary method_7601 Lnet/minecraft/class_1703;method_7601(Lnet/minecraft/class_1657;I)Lnet/minecraft/class_1799;
      named quickMove Lnet/minecraft/screen/ScreenHandler;quickMove(Lnet/minecraft/entity/player/PlayerEntity;I)Lnet/minecraft/item/ItemStack;
    • onClosed

      public void onClosed(PlayerEntity player)
      Called when this screen handler is closed.

      To close a screen handler, call PlayerEntity.closeHandledScreen() on the server instead of this method.

      This drops the cursor stack by default. Subclasses that have slots not backed by a persistent inventory should call ScreenHandler.dropInventory(net.minecraft.entity.player.PlayerEntity, net.minecraft.inventory.Inventory) to drop the stacks.

      Overrides:
      onClosed in class ScreenHandler
      Mappings:
      Namespace Name Mixin selector
      official b Lcel;b(Lcbu;)V
      intermediary method_7595 Lnet/minecraft/class_1703;method_7595(Lnet/minecraft/class_1657;)V
      named onClosed Lnet/minecraft/screen/ScreenHandler;onClosed(Lnet/minecraft/entity/player/PlayerEntity;)V