Class MountScreenHandler

java.lang.Object
net.minecraft.screen.ScreenHandler
net.minecraft.screen.MountScreenHandler
Direct Known Subclasses:
HorseScreenHandler, NautilusScreenHandler

public abstract class MountScreenHandler extends ScreenHandler
Mappings:
Namespace Name
named net/minecraft/screen/MountScreenHandler
intermediary net/minecraft/class_12343
official dgi
  • Field Details

    • field_64490

      protected static final int field_64490
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named field_64490 Lnet/minecraft/screen/MountScreenHandler;field_64490:I
      intermediary field_64490 Lnet/minecraft/class_12343;field_64490:I
      official r Ldgi;r:I
    • inventory

      protected final Inventory inventory
      Mappings:
      Namespace Name Mixin selector
      named inventory Lnet/minecraft/screen/MountScreenHandler;inventory:Lnet/minecraft/inventory/Inventory;
      intermediary field_64485 Lnet/minecraft/class_12343;field_64485:Lnet/minecraft/class_1263;
      official m Ldgi;m:Lccv;
    • mount

      protected final LivingEntity mount
      Mappings:
      Namespace Name Mixin selector
      named mount Lnet/minecraft/screen/MountScreenHandler;mount:Lnet/minecraft/entity/LivingEntity;
      intermediary field_64486 Lnet/minecraft/class_12343;field_64486:Lnet/minecraft/class_1309;
      official n Ldgi;n:Lchm;
    • field_64487

      protected final int field_64487
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named field_64487 Lnet/minecraft/screen/MountScreenHandler;field_64487:I
      intermediary field_64487 Lnet/minecraft/class_12343;field_64487:I
      official o Ldgi;o:I
    • field_64488

      protected final int field_64488
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named field_64488 Lnet/minecraft/screen/MountScreenHandler;field_64488:I
      intermediary field_64488 Lnet/minecraft/class_12343;field_64488:I
      official p Ldgi;p:I
    • field_64489

      protected final int field_64489
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named field_64489 Lnet/minecraft/screen/MountScreenHandler;field_64489:I
      intermediary field_64489 Lnet/minecraft/class_12343;field_64489:I
      official q Ldgi;q:I
  • Constructor Details

    • MountScreenHandler

      protected MountScreenHandler(int syncId, PlayerInventory playerInventory, Inventory inventory, LivingEntity mount)
      Mappings:
      Namespace Name Mixin selector
      named <init> Lnet/minecraft/screen/MountScreenHandler;<init>(ILnet/minecraft/entity/player/PlayerInventory;Lnet/minecraft/inventory/Inventory;Lnet/minecraft/entity/LivingEntity;)V
      intermediary <init> Lnet/minecraft/class_12343;<init>(ILnet/minecraft/class_1661;Lnet/minecraft/class_1263;Lnet/minecraft/class_1309;)V
      official <init> Ldgi;<init>(ILdcn;Lccv;Lchm;)V
  • Method Details

    • areInventoriesDifferent

      protected abstract boolean areInventoriesDifferent(Inventory inventory)
      Mappings:
      Namespace Name Mixin selector
      named areInventoriesDifferent Lnet/minecraft/screen/MountScreenHandler;areInventoriesDifferent(Lnet/minecraft/inventory/Inventory;)Z
      intermediary method_76588 Lnet/minecraft/class_12343;method_76588(Lnet/minecraft/class_1263;)Z
      official c Ldgi;c(Lccv;)Z
    • 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
      named canUse Lnet/minecraft/screen/ScreenHandler;canUse(Lnet/minecraft/entity/player/PlayerEntity;)Z
      intermediary method_7597 Lnet/minecraft/class_1703;method_7597(Lnet/minecraft/class_1657;)Z
      official b Ldgf;b(Ldco;)Z
    • 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
      named onClosed Lnet/minecraft/screen/ScreenHandler;onClosed(Lnet/minecraft/entity/player/PlayerEntity;)V
      intermediary method_7595 Lnet/minecraft/class_1703;method_7595(Lnet/minecraft/class_1657;)V
      official a Ldgf;a(Ldco;)V
    • 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
      named quickMove Lnet/minecraft/screen/ScreenHandler;quickMove(Lnet/minecraft/entity/player/PlayerEntity;I)Lnet/minecraft/item/ItemStack;
      intermediary method_7601 Lnet/minecraft/class_1703;method_7601(Lnet/minecraft/class_1657;I)Lnet/minecraft/class_1799;
      official b Ldgf;b(Ldco;I)Ldkq;
    • getSlotCount

      public static int getSlotCount(int columns)
      Mappings:
      Namespace Name Mixin selector
      named getSlotCount Lnet/minecraft/screen/MountScreenHandler;getSlotCount(I)I
      intermediary method_76589 Lnet/minecraft/class_12343;method_76589(I)I
      official e Ldgi;e(I)I