Class PlayerScreenHandler


public class PlayerScreenHandler extends AbstractRecipeScreenHandler<RecipeInputInventory>
Mappings:
Namespace Name
named net/minecraft/screen/PlayerScreenHandler
intermediary net/minecraft/class_1723
official cqx
  • Field Details

    • field_30802

      public static final int field_30802
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named field_30802 Lnet/minecraft/screen/PlayerScreenHandler;field_30802:I
      intermediary field_30802 Lnet/minecraft/class_1723;field_30802:I
      official k Lcqx;k:I
    • CRAFTING_RESULT_ID

      public static final int CRAFTING_RESULT_ID
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named CRAFTING_RESULT_ID Lnet/minecraft/screen/PlayerScreenHandler;CRAFTING_RESULT_ID:I
      intermediary field_30803 Lnet/minecraft/class_1723;field_30803:I
      official l Lcqx;l:I
    • CRAFTING_INPUT_START

      public static final int CRAFTING_INPUT_START
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named CRAFTING_INPUT_START Lnet/minecraft/screen/PlayerScreenHandler;CRAFTING_INPUT_START:I
      intermediary field_30804 Lnet/minecraft/class_1723;field_30804:I
      official m Lcqx;m:I
    • CRAFTING_INPUT_COUNT

      public static final int CRAFTING_INPUT_COUNT
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named CRAFTING_INPUT_COUNT Lnet/minecraft/screen/PlayerScreenHandler;CRAFTING_INPUT_COUNT:I
      intermediary field_49739 Lnet/minecraft/class_1723;field_49739:I
      official n Lcqx;n:I
    • CRAFTING_INPUT_END

      public static final int CRAFTING_INPUT_END
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named CRAFTING_INPUT_END Lnet/minecraft/screen/PlayerScreenHandler;CRAFTING_INPUT_END:I
      intermediary field_30805 Lnet/minecraft/class_1723;field_30805:I
      official o Lcqx;o:I
    • EQUIPMENT_START

      public static final int EQUIPMENT_START
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named EQUIPMENT_START Lnet/minecraft/screen/PlayerScreenHandler;EQUIPMENT_START:I
      intermediary field_30806 Lnet/minecraft/class_1723;field_30806:I
      official p Lcqx;p:I
    • EQUIPMENT_COUNT

      public static final int EQUIPMENT_COUNT
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named EQUIPMENT_COUNT Lnet/minecraft/screen/PlayerScreenHandler;EQUIPMENT_COUNT:I
      intermediary field_49740 Lnet/minecraft/class_1723;field_49740:I
      official q Lcqx;q:I
    • EQUIPMENT_END

      public static final int EQUIPMENT_END
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named EQUIPMENT_END Lnet/minecraft/screen/PlayerScreenHandler;EQUIPMENT_END:I
      intermediary field_30807 Lnet/minecraft/class_1723;field_30807:I
      official r Lcqx;r:I
    • INVENTORY_START

      public static final int INVENTORY_START
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named INVENTORY_START Lnet/minecraft/screen/PlayerScreenHandler;INVENTORY_START:I
      intermediary field_30808 Lnet/minecraft/class_1723;field_30808:I
      official s Lcqx;s:I
    • INVENTORY_END

      public static final int INVENTORY_END
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named INVENTORY_END Lnet/minecraft/screen/PlayerScreenHandler;INVENTORY_END:I
      intermediary field_30809 Lnet/minecraft/class_1723;field_30809:I
      official t Lcqx;t:I
    • HOTBAR_START

      public static final int HOTBAR_START
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named HOTBAR_START Lnet/minecraft/screen/PlayerScreenHandler;HOTBAR_START:I
      intermediary field_30810 Lnet/minecraft/class_1723;field_30810:I
      official u Lcqx;u:I
    • HOTBAR_END

      public static final int HOTBAR_END
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named HOTBAR_END Lnet/minecraft/screen/PlayerScreenHandler;HOTBAR_END:I
      intermediary field_30811 Lnet/minecraft/class_1723;field_30811:I
      official v Lcqx;v:I
    • OFFHAND_ID

      public static final int OFFHAND_ID
      See Also:
      Mappings:
      Namespace Name Mixin selector
      named OFFHAND_ID Lnet/minecraft/screen/PlayerScreenHandler;OFFHAND_ID:I
      intermediary field_30812 Lnet/minecraft/class_1723;field_30812:I
      official w Lcqx;w:I
    • BLOCK_ATLAS_TEXTURE

      public static final Identifier BLOCK_ATLAS_TEXTURE
      Mappings:
      Namespace Name Mixin selector
      named BLOCK_ATLAS_TEXTURE Lnet/minecraft/screen/PlayerScreenHandler;BLOCK_ATLAS_TEXTURE:Lnet/minecraft/util/Identifier;
      intermediary field_21668 Lnet/minecraft/class_1723;field_21668:Lnet/minecraft/class_2960;
      official x Lcqx;x:Lalf;
    • EMPTY_HELMET_SLOT_TEXTURE

      public static final Identifier EMPTY_HELMET_SLOT_TEXTURE
      Mappings:
      Namespace Name Mixin selector
      named EMPTY_HELMET_SLOT_TEXTURE Lnet/minecraft/screen/PlayerScreenHandler;EMPTY_HELMET_SLOT_TEXTURE:Lnet/minecraft/util/Identifier;
      intermediary field_21669 Lnet/minecraft/class_1723;field_21669:Lnet/minecraft/class_2960;
      official y Lcqx;y:Lalf;
    • EMPTY_CHESTPLATE_SLOT_TEXTURE

      public static final Identifier EMPTY_CHESTPLATE_SLOT_TEXTURE
      Mappings:
      Namespace Name Mixin selector
      named EMPTY_CHESTPLATE_SLOT_TEXTURE Lnet/minecraft/screen/PlayerScreenHandler;EMPTY_CHESTPLATE_SLOT_TEXTURE:Lnet/minecraft/util/Identifier;
      intermediary field_21670 Lnet/minecraft/class_1723;field_21670:Lnet/minecraft/class_2960;
      official z Lcqx;z:Lalf;
    • EMPTY_LEGGINGS_SLOT_TEXTURE

      public static final Identifier EMPTY_LEGGINGS_SLOT_TEXTURE
      Mappings:
      Namespace Name Mixin selector
      named EMPTY_LEGGINGS_SLOT_TEXTURE Lnet/minecraft/screen/PlayerScreenHandler;EMPTY_LEGGINGS_SLOT_TEXTURE:Lnet/minecraft/util/Identifier;
      intermediary field_21671 Lnet/minecraft/class_1723;field_21671:Lnet/minecraft/class_2960;
      official A Lcqx;A:Lalf;
    • EMPTY_BOOTS_SLOT_TEXTURE

      public static final Identifier EMPTY_BOOTS_SLOT_TEXTURE
      Mappings:
      Namespace Name Mixin selector
      named EMPTY_BOOTS_SLOT_TEXTURE Lnet/minecraft/screen/PlayerScreenHandler;EMPTY_BOOTS_SLOT_TEXTURE:Lnet/minecraft/util/Identifier;
      intermediary field_21672 Lnet/minecraft/class_1723;field_21672:Lnet/minecraft/class_2960;
      official B Lcqx;B:Lalf;
    • EMPTY_OFFHAND_ARMOR_SLOT

      public static final Identifier EMPTY_OFFHAND_ARMOR_SLOT
      Mappings:
      Namespace Name Mixin selector
      named EMPTY_OFFHAND_ARMOR_SLOT Lnet/minecraft/screen/PlayerScreenHandler;EMPTY_OFFHAND_ARMOR_SLOT:Lnet/minecraft/util/Identifier;
      intermediary field_21673 Lnet/minecraft/class_1723;field_21673:Lnet/minecraft/class_2960;
      official C Lcqx;C:Lalf;
    • EMPTY_ARMOR_SLOT_TEXTURES

      static final Identifier[] EMPTY_ARMOR_SLOT_TEXTURES
      Mappings:
      Namespace Name Mixin selector
      named EMPTY_ARMOR_SLOT_TEXTURES Lnet/minecraft/screen/PlayerScreenHandler;EMPTY_ARMOR_SLOT_TEXTURES:[Lnet/minecraft/util/Identifier;
      intermediary field_7829 Lnet/minecraft/class_1723;field_7829:[Lnet/minecraft/class_2960;
      official E Lcqx;E:[Lalf;
    • EQUIPMENT_SLOT_ORDER

      private static final EquipmentSlot[] EQUIPMENT_SLOT_ORDER
      Mappings:
      Namespace Name Mixin selector
      named EQUIPMENT_SLOT_ORDER Lnet/minecraft/screen/PlayerScreenHandler;EQUIPMENT_SLOT_ORDER:[Lnet/minecraft/entity/EquipmentSlot;
      intermediary field_7832 Lnet/minecraft/class_1723;field_7832:[Lnet/minecraft/class_1304;
      official F Lcqx;F:[Lbtd;
    • craftingInput

      private final RecipeInputInventory craftingInput
      Mappings:
      Namespace Name Mixin selector
      named craftingInput Lnet/minecraft/screen/PlayerScreenHandler;craftingInput:Lnet/minecraft/inventory/RecipeInputInventory;
      intermediary field_7831 Lnet/minecraft/class_1723;field_7831:Lnet/minecraft/class_8566;
      official G Lcqx;G:Lcqm;
    • craftingResult

      private final CraftingResultInventory craftingResult
      Mappings:
      Namespace Name Mixin selector
      named craftingResult Lnet/minecraft/screen/PlayerScreenHandler;craftingResult:Lnet/minecraft/inventory/CraftingResultInventory;
      intermediary field_7830 Lnet/minecraft/class_1723;field_7830:Lnet/minecraft/class_1731;
      official H Lcqx;H:Lcrm;
    • onServer

      public final boolean onServer
      Mappings:
      Namespace Name Mixin selector
      named onServer Lnet/minecraft/screen/PlayerScreenHandler;onServer:Z
      intermediary field_7827 Lnet/minecraft/class_1723;field_7827:Z
      official D Lcqx;D:Z
    • owner

      private final PlayerEntity owner
      Mappings:
      Namespace Name Mixin selector
      named owner Lnet/minecraft/screen/PlayerScreenHandler;owner:Lnet/minecraft/entity/player/PlayerEntity;
      intermediary field_7828 Lnet/minecraft/class_1723;field_7828:Lnet/minecraft/class_1657;
      official I Lcqx;I:Lcmz;
  • Constructor Details

    • PlayerScreenHandler

      public PlayerScreenHandler(PlayerInventory inventory, boolean onServer, PlayerEntity owner)
      Mappings:
      Namespace Name Mixin selector
      named <init> Lnet/minecraft/screen/PlayerScreenHandler;<init>(Lnet/minecraft/entity/player/PlayerInventory;ZLnet/minecraft/entity/player/PlayerEntity;)V
      intermediary <init> Lnet/minecraft/class_1723;<init>(Lnet/minecraft/class_1661;ZLnet/minecraft/class_1657;)V
      official <init> Lcqx;<init>(Lcmy;ZLcmz;)V
  • Method Details

    • onEquipStack

      static void onEquipStack(PlayerEntity player, EquipmentSlot slot, ItemStack newStack, ItemStack currentStack)
      Mappings:
      Namespace Name Mixin selector
      named onEquipStack Lnet/minecraft/screen/PlayerScreenHandler;onEquipStack(Lnet/minecraft/entity/player/PlayerEntity;Lnet/minecraft/entity/EquipmentSlot;Lnet/minecraft/item/ItemStack;Lnet/minecraft/item/ItemStack;)V
      intermediary method_48930 Lnet/minecraft/class_1723;method_48930(Lnet/minecraft/class_1657;Lnet/minecraft/class_1304;Lnet/minecraft/class_1799;Lnet/minecraft/class_1799;)V
      official a Lcqx;a(Lcmz;Lbtd;Lcur;Lcur;)V
    • isInHotbar

      public static boolean isInHotbar(int slot)
      Mappings:
      Namespace Name Mixin selector
      named isInHotbar Lnet/minecraft/screen/PlayerScreenHandler;isInHotbar(I)Z
      intermediary method_36211 Lnet/minecraft/class_1723;method_36211(I)Z
      official f Lcqx;f(I)Z
    • populateRecipeFinder

      public void populateRecipeFinder(RecipeMatcher finder)
      Specified by:
      populateRecipeFinder in class AbstractRecipeScreenHandler<RecipeInputInventory>
      Mappings:
      Namespace Name Mixin selector
      named populateRecipeFinder Lnet/minecraft/screen/AbstractRecipeScreenHandler;populateRecipeFinder(Lnet/minecraft/recipe/RecipeMatcher;)V
      intermediary method_7654 Lnet/minecraft/class_1729;method_7654(Lnet/minecraft/class_1662;)V
      official a Lcrj;a(Lcnd;)V
    • clearCraftingSlots

      public void clearCraftingSlots()
      Specified by:
      clearCraftingSlots in class AbstractRecipeScreenHandler<RecipeInputInventory>
      Mappings:
      Namespace Name Mixin selector
      named clearCraftingSlots Lnet/minecraft/screen/AbstractRecipeScreenHandler;clearCraftingSlots()V
      intermediary method_7657 Lnet/minecraft/class_1729;method_7657()V
      official l Lcrj;l()V
    • matches

      public boolean matches(RecipeEntry<? extends Recipe<RecipeInputInventory>> recipe)
      Specified by:
      matches in class AbstractRecipeScreenHandler<RecipeInputInventory>
      Mappings:
      Namespace Name Mixin selector
      named matches Lnet/minecraft/screen/AbstractRecipeScreenHandler;matches(Lnet/minecraft/recipe/RecipeEntry;)Z
      intermediary method_7652 Lnet/minecraft/class_1729;method_7652(Lnet/minecraft/class_8786;)Z
      official a Lcrj;a(Lcyz;)Z
    • onContentChanged

      public void onContentChanged(Inventory inventory)
      Called when a slot's content has changed.

      This is not called by default; subclasses that override this method should also use a custom Inventory whose markDirty method is overridden to call this method as a backing inventory of the slot.

      This can be used to update the output slot when input changes.

      Overrides:
      onContentChanged in class ScreenHandler
      Mappings:
      Namespace Name Mixin selector
      named onContentChanged Lnet/minecraft/screen/ScreenHandler;onContentChanged(Lnet/minecraft/inventory/Inventory;)V
      intermediary method_7609 Lnet/minecraft/class_1703;method_7609(Lnet/minecraft/class_1263;)V
      official a Lcpw;a(Lbqp;)V
    • 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 b Lcpw;b(Lcmz;)V
    • 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 a Lcpw;a(Lcmz;)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
      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 a Lcpw;a(Lcmz;I)Lcur;
    • canInsertIntoSlot

      public boolean canInsertIntoSlot(ItemStack stack, Slot slot)
      Returns whether stack can be inserted to slot.

      Subclasses should override this to return false if the slot is used for output.

      Overrides:
      canInsertIntoSlot in class ScreenHandler
      Returns:
      whether stack can be inserted to slot
      Mappings:
      Namespace Name Mixin selector
      named canInsertIntoSlot Lnet/minecraft/screen/ScreenHandler;canInsertIntoSlot(Lnet/minecraft/item/ItemStack;Lnet/minecraft/screen/slot/Slot;)Z
      intermediary method_7613 Lnet/minecraft/class_1703;method_7613(Lnet/minecraft/class_1799;Lnet/minecraft/class_1735;)Z
      official a Lcpw;a(Lcur;Lcrr;)Z
    • getCraftingResultSlotIndex

      public int getCraftingResultSlotIndex()
      Specified by:
      getCraftingResultSlotIndex in class AbstractRecipeScreenHandler<RecipeInputInventory>
      Mappings:
      Namespace Name Mixin selector
      named getCraftingResultSlotIndex Lnet/minecraft/screen/AbstractRecipeScreenHandler;getCraftingResultSlotIndex()I
      intermediary method_7655 Lnet/minecraft/class_1729;method_7655()I
      official m Lcrj;m()I
    • getCraftingWidth

      public int getCraftingWidth()
      Specified by:
      getCraftingWidth in class AbstractRecipeScreenHandler<RecipeInputInventory>
      Mappings:
      Namespace Name Mixin selector
      named getCraftingWidth Lnet/minecraft/screen/AbstractRecipeScreenHandler;getCraftingWidth()I
      intermediary method_7653 Lnet/minecraft/class_1729;method_7653()I
      official n Lcrj;n()I
    • getCraftingHeight

      public int getCraftingHeight()
      Specified by:
      getCraftingHeight in class AbstractRecipeScreenHandler<RecipeInputInventory>
      Mappings:
      Namespace Name Mixin selector
      named getCraftingHeight Lnet/minecraft/screen/AbstractRecipeScreenHandler;getCraftingHeight()I
      intermediary method_7656 Lnet/minecraft/class_1729;method_7656()I
      official o Lcrj;o()I
    • getCraftingSlotCount

      public int getCraftingSlotCount()
      Specified by:
      getCraftingSlotCount in class AbstractRecipeScreenHandler<RecipeInputInventory>
      Mappings:
      Namespace Name Mixin selector
      named getCraftingSlotCount Lnet/minecraft/screen/AbstractRecipeScreenHandler;getCraftingSlotCount()I
      intermediary method_7658 Lnet/minecraft/class_1729;method_7658()I
      official p Lcrj;p()I
    • getCraftingInput

      public RecipeInputInventory getCraftingInput()
      Mappings:
      Namespace Name Mixin selector
      named getCraftingInput Lnet/minecraft/screen/PlayerScreenHandler;getCraftingInput()Lnet/minecraft/inventory/RecipeInputInventory;
      intermediary method_29281 Lnet/minecraft/class_1723;method_29281()Lnet/minecraft/class_8566;
      official q Lcqx;q()Lcqm;
    • getCategory

      public RecipeBookCategory getCategory()
      Specified by:
      getCategory in class AbstractRecipeScreenHandler<RecipeInputInventory>
      Mappings:
      Namespace Name Mixin selector
      named getCategory Lnet/minecraft/screen/AbstractRecipeScreenHandler;getCategory()Lnet/minecraft/recipe/book/RecipeBookCategory;
      intermediary method_30264 Lnet/minecraft/class_1729;method_30264()Lnet/minecraft/class_5421;
      official t Lcrj;t()Lcrk;
    • canInsertIntoSlot

      public boolean canInsertIntoSlot(int index)
      Specified by:
      canInsertIntoSlot in class AbstractRecipeScreenHandler<RecipeInputInventory>
      Mappings:
      Namespace Name Mixin selector
      named canInsertIntoSlot Lnet/minecraft/screen/AbstractRecipeScreenHandler;canInsertIntoSlot(I)Z
      intermediary method_32339 Lnet/minecraft/class_1729;method_32339(I)Z
      official e Lcrj;e(I)Z