Class LoomScreenHandler
- Mappings:
Namespace Name named net/minecraft/screen/LoomScreenHandlerintermediary net/minecraft/class_1726official cxi
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final RegistryEntryLookup<BannerPattern> private List<RegistryEntry<BannerPattern>> (package private) final Slotprivate final ScreenHandlerContext(package private) final Slotprivate static final intprivate static final intprivate final Inventoryprivate static final intprivate static final int(package private) Runnable(package private) longprivate static final intprivate final Inventoryprivate final Slotprivate final Slot(package private) final PropertyFields inherited from class net.minecraft.screen.ScreenHandler
EMPTY_SPACE_SLOT_INDEX, field_30731, field_30732, field_30733, field_30734, field_30735, field_30736, field_30737, field_52557, field_52558, slots, syncId -
Constructor Summary
ConstructorsConstructorDescriptionLoomScreenHandler(int syncId, PlayerInventory playerInventory) LoomScreenHandler(int syncId, PlayerInventory playerInventory, ScreenHandlerContext context) -
Method Summary
Modifier and TypeMethodDescriptionbooleancanUse(PlayerEntity player) Returns whether the screen handler can be used.private List<RegistryEntry<BannerPattern>> getPatternsFor(ItemStack stack) intprivate booleanisPatternIndexValid(int index) booleanonButtonClick(PlayerEntity player, int id) Called whenplayerclicks a button withid.voidonClosed(PlayerEntity player) Called when this screen handler is closed.voidonContentChanged(Inventory inventory) Called when a slot's content has changed.quickMove(PlayerEntity player, int slot) Quick-moves the stack atslotto other slots of the screen handler that belong to a different inventory or another section of the same inventory.voidsetInventoryChangeListener(Runnable inventoryChangeListener) private voidupdateOutputSlot(RegistryEntry<BannerPattern> pattern) Methods inherited from class net.minecraft.screen.ScreenHandler
addListener, addPlayerHotbarSlots, addPlayerInventorySlots, addPlayerSlots, addProperties, addProperty, addSlot, calculateComparatorOutput, calculateComparatorOutput, calculateStackSize, canInsertIntoSlot, canInsertIntoSlot, canInsertItemIntoSlot, canUse, checkDataCount, checkSize, copySharedSlots, disableSyncing, dropInventory, enableSyncing, endQuickCraft, getCursorStack, getRevision, getSlot, getSlotIndex, getStacks, getType, insertItem, isValid, nextRevision, onSlotClick, packQuickCraftData, removeListener, selectBundleStack, sendContentUpdates, setCursorStack, setProperty, setReceivedCursorHash, setReceivedHash, setReceivedStack, setStackInSlot, shouldQuickCraftContinue, syncState, unpackQuickCraftButton, unpackQuickCraftStage, updateSlotStacks, updateSyncHandler, updateToClient
-
Field Details
-
NO_PATTERN
private static final int NO_PATTERN- See Also:
- Mappings:
Namespace Name Mixin selector named NO_PATTERNLnet/minecraft/screen/LoomScreenHandler;NO_PATTERN:Iintermediary field_39120Lnet/minecraft/class_1726;field_39120:Iofficial mLcxi;m:I
-
INVENTORY_START
private static final int INVENTORY_START- See Also:
- Mappings:
Namespace Name Mixin selector named INVENTORY_STARTLnet/minecraft/screen/LoomScreenHandler;INVENTORY_START:Iintermediary field_30826Lnet/minecraft/class_1726;field_30826:Iofficial nLcxi;n:I
-
INVENTORY_END
private static final int INVENTORY_END- See Also:
- Mappings:
Namespace Name Mixin selector named INVENTORY_ENDLnet/minecraft/screen/LoomScreenHandler;INVENTORY_END:Iintermediary field_30827Lnet/minecraft/class_1726;field_30827:Iofficial oLcxi;o:I
-
HOTBAR_START
private static final int HOTBAR_START- See Also:
- Mappings:
Namespace Name Mixin selector named HOTBAR_STARTLnet/minecraft/screen/LoomScreenHandler;HOTBAR_START:Iintermediary field_30828Lnet/minecraft/class_1726;field_30828:Iofficial pLcxi;p:I
-
HOTBAR_END
private static final int HOTBAR_END- See Also:
- Mappings:
Namespace Name Mixin selector named HOTBAR_ENDLnet/minecraft/screen/LoomScreenHandler;HOTBAR_END:Iintermediary field_30829Lnet/minecraft/class_1726;field_30829:Iofficial qLcxi;q:I
-
context
- Mappings:
Namespace Name Mixin selector named contextLnet/minecraft/screen/LoomScreenHandler;context:Lnet/minecraft/screen/ScreenHandlerContext;intermediary field_17316Lnet/minecraft/class_1726;field_17316:Lnet/minecraft/class_3914;official rLcxi;r:Lcwo;
-
selectedPattern
- Mappings:
Namespace Name Mixin selector named selectedPatternLnet/minecraft/screen/LoomScreenHandler;selectedPattern:Lnet/minecraft/screen/Property;intermediary field_17317Lnet/minecraft/class_1726;field_17317:Lnet/minecraft/class_3915;official sLcxi;s:Lcwv;
-
bannerPatterns
- Mappings:
Namespace Name Mixin selector named bannerPatternsLnet/minecraft/screen/LoomScreenHandler;bannerPatterns:Ljava/util/List;intermediary field_39121Lnet/minecraft/class_1726;field_39121:Ljava/util/List;official tLcxi;t:Ljava/util/List;
-
inventoryChangeListener
Runnable inventoryChangeListener- Mappings:
Namespace Name Mixin selector named inventoryChangeListenerLnet/minecraft/screen/LoomScreenHandler;inventoryChangeListener:Ljava/lang/Runnable;intermediary field_17318Lnet/minecraft/class_1726;field_17318:Ljava/lang/Runnable;official uLcxi;u:Ljava/lang/Runnable;
-
bannerPatternLookup
- Mappings:
Namespace Name Mixin selector named bannerPatternLookupLnet/minecraft/screen/LoomScreenHandler;bannerPatternLookup:Lnet/minecraft/registry/RegistryEntryLookup;intermediary field_49741Lnet/minecraft/class_1726;field_49741:Lnet/minecraft/class_7871;official vLcxi;v:Ljh;
-
bannerSlot
- Mappings:
Namespace Name Mixin selector named bannerSlotLnet/minecraft/screen/LoomScreenHandler;bannerSlot:Lnet/minecraft/screen/slot/Slot;intermediary field_17319Lnet/minecraft/class_1726;field_17319:Lnet/minecraft/class_1735;official wLcxi;w:Lcxz;
-
dyeSlot
- Mappings:
Namespace Name Mixin selector named dyeSlotLnet/minecraft/screen/LoomScreenHandler;dyeSlot:Lnet/minecraft/screen/slot/Slot;intermediary field_17320Lnet/minecraft/class_1726;field_17320:Lnet/minecraft/class_1735;official xLcxi;x:Lcxz;
-
patternSlot
- Mappings:
Namespace Name Mixin selector named patternSlotLnet/minecraft/screen/LoomScreenHandler;patternSlot:Lnet/minecraft/screen/slot/Slot;intermediary field_17321Lnet/minecraft/class_1726;field_17321:Lnet/minecraft/class_1735;official yLcxi;y:Lcxz;
-
outputSlot
- Mappings:
Namespace Name Mixin selector named outputSlotLnet/minecraft/screen/LoomScreenHandler;outputSlot:Lnet/minecraft/screen/slot/Slot;intermediary field_17322Lnet/minecraft/class_1726;field_17322:Lnet/minecraft/class_1735;official zLcxi;z:Lcxz;
-
lastTakeResultTime
long lastTakeResultTime- Mappings:
Namespace Name Mixin selector named lastTakeResultTimeLnet/minecraft/screen/LoomScreenHandler;lastTakeResultTime:Jintermediary field_20383Lnet/minecraft/class_1726;field_20383:Jofficial ALcxi;A:J
-
input
- Mappings:
Namespace Name Mixin selector named inputLnet/minecraft/screen/LoomScreenHandler;input:Lnet/minecraft/inventory/Inventory;intermediary field_7850Lnet/minecraft/class_1726;field_7850:Lnet/minecraft/class_1263;official BLcxi;B:Lbuv;
-
output
- Mappings:
Namespace Name Mixin selector named outputLnet/minecraft/screen/LoomScreenHandler;output:Lnet/minecraft/inventory/Inventory;intermediary field_17323Lnet/minecraft/class_1726;field_17323:Lnet/minecraft/class_1263;official CLcxi;C:Lbuv;
-
-
Constructor Details
-
LoomScreenHandler
- Mappings:
Namespace Name Mixin selector named <init>Lnet/minecraft/screen/LoomScreenHandler;<init>(ILnet/minecraft/entity/player/PlayerInventory;)Vintermediary <init>Lnet/minecraft/class_1726;<init>(ILnet/minecraft/class_1661;)Vofficial <init>Lcxi;<init>(ILcsh;)V
-
LoomScreenHandler
- Mappings:
Namespace Name Mixin selector named <init>Lnet/minecraft/screen/LoomScreenHandler;<init>(ILnet/minecraft/entity/player/PlayerInventory;Lnet/minecraft/screen/ScreenHandlerContext;)Vintermediary <init>Lnet/minecraft/class_1726;<init>(ILnet/minecraft/class_1661;Lnet/minecraft/class_3914;)Vofficial <init>Lcxi;<init>(ILcsh;Lcwo;)V
-
-
Method Details
-
canUse
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:
canUsein classScreenHandler- Returns:
- whether the screen handler can be used
- Mappings:
Namespace Name Mixin selector named canUseLnet/minecraft/screen/ScreenHandler;canUse(Lnet/minecraft/entity/player/PlayerEntity;)Zintermediary method_7597Lnet/minecraft/class_1703;method_7597(Lnet/minecraft/class_1657;)Zofficial bLcwb;b(Lcsi;)Z
-
onButtonClick
Called whenplayerclicks a button withid."Button click" is an abstract concept; it does not have to be triggered by a button. Examples of button clicks include selecting a recipe for a stonecutter, turning a page of a lectern's book, or selecting an enchantment on an enchanting table. Buttons are identified by an integer.
- Overrides:
onButtonClickin classScreenHandler- Returns:
- whether the button click is handled successfully
- Implementation Note:
- This is normally only called by the server; however, screens that use buttons can call this on the client.
- Mappings:
Namespace Name Mixin selector named onButtonClickLnet/minecraft/screen/ScreenHandler;onButtonClick(Lnet/minecraft/entity/player/PlayerEntity;I)Zintermediary method_7604Lnet/minecraft/class_1703;method_7604(Lnet/minecraft/class_1657;I)Zofficial aLcwb;a(Lcsi;I)Z
-
getPatternsFor
- Mappings:
Namespace Name Mixin selector named getPatternsForLnet/minecraft/screen/LoomScreenHandler;getPatternsFor(Lnet/minecraft/item/ItemStack;)Ljava/util/List;intermediary method_43705Lnet/minecraft/class_1726;method_43705(Lnet/minecraft/class_1799;)Ljava/util/List;official bLcxi;b(Ldak;)Ljava/util/List;
-
isPatternIndexValid
private boolean isPatternIndexValid(int index) - Mappings:
Namespace Name Mixin selector named isPatternIndexValidLnet/minecraft/screen/LoomScreenHandler;isPatternIndexValid(I)Zintermediary method_45016Lnet/minecraft/class_1726;method_45016(I)Zofficial eLcxi;e(I)Z
-
onContentChanged
Called when a slot's content has changed.This is not called by default; subclasses that override this method should also use a custom
InventorywhosemarkDirtymethod 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:
onContentChangedin classScreenHandler- Mappings:
Namespace Name Mixin selector named onContentChangedLnet/minecraft/screen/ScreenHandler;onContentChanged(Lnet/minecraft/inventory/Inventory;)Vintermediary method_7609Lnet/minecraft/class_1703;method_7609(Lnet/minecraft/class_1263;)Vofficial aLcwb;a(Lbuv;)V
-
getBannerPatterns
- Mappings:
Namespace Name Mixin selector named getBannerPatternsLnet/minecraft/screen/LoomScreenHandler;getBannerPatterns()Ljava/util/List;intermediary method_43706Lnet/minecraft/class_1726;method_43706()Ljava/util/List;official lLcxi;l()Ljava/util/List;
-
getSelectedPattern
public int getSelectedPattern()- Mappings:
Namespace Name Mixin selector named getSelectedPatternLnet/minecraft/screen/LoomScreenHandler;getSelectedPattern()Iintermediary method_7647Lnet/minecraft/class_1726;method_7647()Iofficial mLcxi;m()I
-
setInventoryChangeListener
- Mappings:
Namespace Name Mixin selector named setInventoryChangeListenerLnet/minecraft/screen/LoomScreenHandler;setInventoryChangeListener(Ljava/lang/Runnable;)Vintermediary method_17423Lnet/minecraft/class_1726;method_17423(Ljava/lang/Runnable;)Vofficial aLcxi;a(Ljava/lang/Runnable;)V
-
quickMove
Quick-moves the stack atslotto 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:
quickMovein classScreenHandler- Parameters:
slot- the index of the slot to quick-move from- Returns:
ItemStack.EMPTYwhen no stack can be transferred, otherwise the original stack- See Also:
- Mappings:
Namespace Name Mixin selector named quickMoveLnet/minecraft/screen/ScreenHandler;quickMove(Lnet/minecraft/entity/player/PlayerEntity;I)Lnet/minecraft/item/ItemStack;intermediary method_7601Lnet/minecraft/class_1703;method_7601(Lnet/minecraft/class_1657;I)Lnet/minecraft/class_1799;official bLcwb;b(Lcsi;I)Ldak;
-
onClosed
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:
onClosedin classScreenHandler- Mappings:
Namespace Name Mixin selector named onClosedLnet/minecraft/screen/ScreenHandler;onClosed(Lnet/minecraft/entity/player/PlayerEntity;)Vintermediary method_7595Lnet/minecraft/class_1703;method_7595(Lnet/minecraft/class_1657;)Vofficial aLcwb;a(Lcsi;)V
-
updateOutputSlot
- Mappings:
Namespace Name Mixin selector named updateOutputSlotLnet/minecraft/screen/LoomScreenHandler;updateOutputSlot(Lnet/minecraft/registry/entry/RegistryEntry;)Vintermediary method_7648Lnet/minecraft/class_1726;method_7648(Lnet/minecraft/class_6880;)Vofficial aLcxi;a(Ljg;)V
-
getBannerSlot
- Mappings:
Namespace Name Mixin selector named getBannerSlotLnet/minecraft/screen/LoomScreenHandler;getBannerSlot()Lnet/minecraft/screen/slot/Slot;intermediary method_17428Lnet/minecraft/class_1726;method_17428()Lnet/minecraft/class_1735;official nLcxi;n()Lcxz;
-
getDyeSlot
- Mappings:
Namespace Name Mixin selector named getDyeSlotLnet/minecraft/screen/LoomScreenHandler;getDyeSlot()Lnet/minecraft/screen/slot/Slot;intermediary method_17429Lnet/minecraft/class_1726;method_17429()Lnet/minecraft/class_1735;official oLcxi;o()Lcxz;
-
getPatternSlot
- Mappings:
Namespace Name Mixin selector named getPatternSlotLnet/minecraft/screen/LoomScreenHandler;getPatternSlot()Lnet/minecraft/screen/slot/Slot;intermediary method_17430Lnet/minecraft/class_1726;method_17430()Lnet/minecraft/class_1735;official pLcxi;p()Lcxz;
-
getOutputSlot
- Mappings:
Namespace Name Mixin selector named getOutputSlotLnet/minecraft/screen/LoomScreenHandler;getOutputSlot()Lnet/minecraft/screen/slot/Slot;intermediary method_17431Lnet/minecraft/class_1726;method_17431()Lnet/minecraft/class_1735;official qLcxi;q()Lcxz;
-