Class LoomScreenHandler
- Mappings:
- Namespace - Name - official - cci- intermediary - net/minecraft/class_1726- named - net/minecraft/screen/LoomScreenHandler
- 
Field SummaryFieldsModifier and TypeFieldDescriptionprivate 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.ScreenHandlerEMPTY_SPACE_SLOT_INDEX, field_30731, field_30732, field_30733, field_30734, field_30735, field_30736, field_30737, slots, syncId
- 
Constructor SummaryConstructorsConstructorDescriptionLoomScreenHandler(int syncId, PlayerInventory playerInventory) LoomScreenHandler(int syncId, PlayerInventory playerInventory, ScreenHandlerContext context) 
- 
Method SummaryModifier 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.ScreenHandleraddListener, 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, sendContentUpdates, setCursorStack, setPreviousCursorStack, setPreviousTrackedSlot, setPreviousTrackedSlotMutable, setProperty, setStackInSlot, shouldQuickCraftContinue, syncState, unpackQuickCraftButton, unpackQuickCraftStage, updateSlotStacks, updateSyncHandler, updateToClient
- 
Field Details- 
NO_PATTERNprivate static final int NO_PATTERN- See Also:
- Mappings:
- Namespace - Name - Mixin selector - official - k- Lcci;k:I- intermediary - field_39120- Lnet/minecraft/class_1726;field_39120:I- named - NO_PATTERN- Lnet/minecraft/screen/LoomScreenHandler;NO_PATTERN:I
 
- 
INVENTORY_STARTprivate static final int INVENTORY_START- See Also:
- Mappings:
- Namespace - Name - Mixin selector - official - l- Lcci;l:I- intermediary - field_30826- Lnet/minecraft/class_1726;field_30826:I- named - INVENTORY_START- Lnet/minecraft/screen/LoomScreenHandler;INVENTORY_START:I
 
- 
INVENTORY_ENDprivate static final int INVENTORY_END- See Also:
- Mappings:
- Namespace - Name - Mixin selector - official - m- Lcci;m:I- intermediary - field_30827- Lnet/minecraft/class_1726;field_30827:I- named - INVENTORY_END- Lnet/minecraft/screen/LoomScreenHandler;INVENTORY_END:I
 
- 
HOTBAR_STARTprivate static final int HOTBAR_START- See Also:
- Mappings:
- Namespace - Name - Mixin selector - official - n- Lcci;n:I- intermediary - field_30828- Lnet/minecraft/class_1726;field_30828:I- named - HOTBAR_START- Lnet/minecraft/screen/LoomScreenHandler;HOTBAR_START:I
 
- 
HOTBAR_ENDprivate static final int HOTBAR_END- See Also:
- Mappings:
- Namespace - Name - Mixin selector - official - o- Lcci;o:I- intermediary - field_30829- Lnet/minecraft/class_1726;field_30829:I- named - HOTBAR_END- Lnet/minecraft/screen/LoomScreenHandler;HOTBAR_END:I
 
- 
context- Mappings:
- Namespace - Name - Mixin selector - official - p- Lcci;p:Lcbq;- intermediary - field_17316- Lnet/minecraft/class_1726;field_17316:Lnet/minecraft/class_3914;- named - context- Lnet/minecraft/screen/LoomScreenHandler;context:Lnet/minecraft/screen/ScreenHandlerContext;
 
- 
selectedPattern- Mappings:
- Namespace - Name - Mixin selector - official - q- Lcci;q:Lcbv;- intermediary - field_17317- Lnet/minecraft/class_1726;field_17317:Lnet/minecraft/class_3915;- named - selectedPattern- Lnet/minecraft/screen/LoomScreenHandler;selectedPattern:Lnet/minecraft/screen/Property;
 
- 
bannerPatterns- Mappings:
- Namespace - Name - Mixin selector - official - r- Lcci;r:Ljava/util/List;- intermediary - field_39121- Lnet/minecraft/class_1726;field_39121:Ljava/util/List;- named - bannerPatterns- Lnet/minecraft/screen/LoomScreenHandler;bannerPatterns:Ljava/util/List;
 
- 
inventoryChangeListenerRunnable inventoryChangeListener- Mappings:
- Namespace - Name - Mixin selector - official - s- Lcci;s:Ljava/lang/Runnable;- intermediary - field_17318- Lnet/minecraft/class_1726;field_17318:Ljava/lang/Runnable;- named - inventoryChangeListener- Lnet/minecraft/screen/LoomScreenHandler;inventoryChangeListener:Ljava/lang/Runnable;
 
- 
bannerSlot- Mappings:
- Namespace - Name - Mixin selector - official - t- Lcci;t:Lccx;- intermediary - field_17319- Lnet/minecraft/class_1726;field_17319:Lnet/minecraft/class_1735;- named - bannerSlot- Lnet/minecraft/screen/LoomScreenHandler;bannerSlot:Lnet/minecraft/screen/slot/Slot;
 
- 
dyeSlot- Mappings:
- Namespace - Name - Mixin selector - official - u- Lcci;u:Lccx;- intermediary - field_17320- Lnet/minecraft/class_1726;field_17320:Lnet/minecraft/class_1735;- named - dyeSlot- Lnet/minecraft/screen/LoomScreenHandler;dyeSlot:Lnet/minecraft/screen/slot/Slot;
 
- 
patternSlot- Mappings:
- Namespace - Name - Mixin selector - official - v- Lcci;v:Lccx;- intermediary - field_17321- Lnet/minecraft/class_1726;field_17321:Lnet/minecraft/class_1735;- named - patternSlot- Lnet/minecraft/screen/LoomScreenHandler;patternSlot:Lnet/minecraft/screen/slot/Slot;
 
- 
outputSlot- Mappings:
- Namespace - Name - Mixin selector - official - w- Lcci;w:Lccx;- intermediary - field_17322- Lnet/minecraft/class_1726;field_17322:Lnet/minecraft/class_1735;- named - outputSlot- Lnet/minecraft/screen/LoomScreenHandler;outputSlot:Lnet/minecraft/screen/slot/Slot;
 
- 
lastTakeResultTimelong lastTakeResultTime- Mappings:
- Namespace - Name - Mixin selector - official - x- Lcci;x:J- intermediary - field_20383- Lnet/minecraft/class_1726;field_20383:J- named - lastTakeResultTime- Lnet/minecraft/screen/LoomScreenHandler;lastTakeResultTime:J
 
- 
input- Mappings:
- Namespace - Name - Mixin selector - official - y- Lcci;y:Lbdq;- intermediary - field_7850- Lnet/minecraft/class_1726;field_7850:Lnet/minecraft/class_1263;- named - input- Lnet/minecraft/screen/LoomScreenHandler;input:Lnet/minecraft/inventory/Inventory;
 
- 
output- Mappings:
- Namespace - Name - Mixin selector - official - z- Lcci;z:Lbdq;- intermediary - field_17323- Lnet/minecraft/class_1726;field_17323:Lnet/minecraft/class_1263;- named - output- Lnet/minecraft/screen/LoomScreenHandler;output:Lnet/minecraft/inventory/Inventory;
 
 
- 
- 
Constructor Details- 
LoomScreenHandler- Mappings:
- Namespace - Name - Mixin selector - official - <init>- Lcci;<init>(ILbyn;)V- intermediary - <init>- Lnet/minecraft/class_1726;<init>(ILnet/minecraft/class_1661;)V- named - <init>- Lnet/minecraft/screen/LoomScreenHandler;<init>(ILnet/minecraft/entity/player/PlayerInventory;)V
 
- 
LoomScreenHandler- Mappings:
- Namespace - Name - Mixin selector - official - <init>- Lcci;<init>(ILbyn;Lcbq;)V- intermediary - <init>- Lnet/minecraft/class_1726;<init>(ILnet/minecraft/class_1661;Lnet/minecraft/class_3914;)V- named - <init>- Lnet/minecraft/screen/LoomScreenHandler;<init>(ILnet/minecraft/entity/player/PlayerInventory;Lnet/minecraft/screen/ScreenHandlerContext;)V
 
 
- 
- 
Method Details- 
canUseReturns 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 class- ScreenHandler
- Returns:
- whether the screen handler can be used
- Mappings:
- Namespace - Name - Mixin selector - official - a- Lcbf;a(Lbyo;)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
 
- 
onButtonClickCalled 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 class- ScreenHandler
- Returns:
- whether the button click is handled successfully
- Mappings:
- Namespace - Name - Mixin selector - official - b- Lcbf;b(Lbyo;I)Z- intermediary - method_7604- Lnet/minecraft/class_1703;method_7604(Lnet/minecraft/class_1657;I)Z- named - onButtonClick- Lnet/minecraft/screen/ScreenHandler;onButtonClick(Lnet/minecraft/entity/player/PlayerEntity;I)Z
 
- 
getPatternsFor- Mappings:
- Namespace - Name - Mixin selector - official - c- Lcci;c(Lcfz;)Ljava/util/List;- intermediary - method_43705- Lnet/minecraft/class_1726;method_43705(Lnet/minecraft/class_1799;)Ljava/util/List;- named - getPatternsFor- Lnet/minecraft/screen/LoomScreenHandler;getPatternsFor(Lnet/minecraft/item/ItemStack;)Ljava/util/List;
 
- 
isPatternIndexValidprivate boolean isPatternIndexValid(int index) - Mappings:
- Namespace - Name - Mixin selector - official - e- Lcci;e(I)Z- intermediary - method_45016- Lnet/minecraft/class_1726;method_45016(I)Z- named - isPatternIndexValid- Lnet/minecraft/screen/LoomScreenHandler;isPatternIndexValid(I)Z
 
- 
onContentChangedCalled 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 class- ScreenHandler
- Mappings:
- Namespace - Name - Mixin selector - official - a- Lcbf;a(Lbdq;)V- intermediary - method_7609- Lnet/minecraft/class_1703;method_7609(Lnet/minecraft/class_1263;)V- named - onContentChanged- Lnet/minecraft/screen/ScreenHandler;onContentChanged(Lnet/minecraft/inventory/Inventory;)V
 
- 
getBannerPatterns- Mappings:
- Namespace - Name - Mixin selector - official - l- Lcci;l()Ljava/util/List;- intermediary - method_43706- Lnet/minecraft/class_1726;method_43706()Ljava/util/List;- named - getBannerPatterns- Lnet/minecraft/screen/LoomScreenHandler;getBannerPatterns()Ljava/util/List;
 
- 
getSelectedPatternpublic int getSelectedPattern()- Mappings:
- Namespace - Name - Mixin selector - official - m- Lcci;m()I- intermediary - method_7647- Lnet/minecraft/class_1726;method_7647()I- named - getSelectedPattern- Lnet/minecraft/screen/LoomScreenHandler;getSelectedPattern()I
 
- 
setInventoryChangeListener- Mappings:
- Namespace - Name - Mixin selector - official - a- Lcci;a(Ljava/lang/Runnable;)V- intermediary - method_17423- Lnet/minecraft/class_1726;method_17423(Ljava/lang/Runnable;)V- named - setInventoryChangeListener- Lnet/minecraft/screen/LoomScreenHandler;setInventoryChangeListener(Ljava/lang/Runnable;)V
 
- 
quickMoveQuick-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 class- ScreenHandler
- 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 - official - a- Lcbf;a(Lbyo;I)Lcfz;- 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;
 
- 
onClosedCalled 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 class- ScreenHandler
- Mappings:
- Namespace - Name - Mixin selector - official - b- Lcbf;b(Lbyo;)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
 
- 
updateOutputSlot- Mappings:
- Namespace - Name - Mixin selector - official - a- Lcci;a(Lhe;)V- intermediary - method_7648- Lnet/minecraft/class_1726;method_7648(Lnet/minecraft/class_6880;)V- named - updateOutputSlot- Lnet/minecraft/screen/LoomScreenHandler;updateOutputSlot(Lnet/minecraft/registry/entry/RegistryEntry;)V
 
- 
getBannerSlot- Mappings:
- Namespace - Name - Mixin selector - official - n- Lcci;n()Lccx;- intermediary - method_17428- Lnet/minecraft/class_1726;method_17428()Lnet/minecraft/class_1735;- named - getBannerSlot- Lnet/minecraft/screen/LoomScreenHandler;getBannerSlot()Lnet/minecraft/screen/slot/Slot;
 
- 
getDyeSlot- Mappings:
- Namespace - Name - Mixin selector - official - o- Lcci;o()Lccx;- intermediary - method_17429- Lnet/minecraft/class_1726;method_17429()Lnet/minecraft/class_1735;- named - getDyeSlot- Lnet/minecraft/screen/LoomScreenHandler;getDyeSlot()Lnet/minecraft/screen/slot/Slot;
 
- 
getPatternSlot- Mappings:
- Namespace - Name - Mixin selector - official - p- Lcci;p()Lccx;- intermediary - method_17430- Lnet/minecraft/class_1726;method_17430()Lnet/minecraft/class_1735;- named - getPatternSlot- Lnet/minecraft/screen/LoomScreenHandler;getPatternSlot()Lnet/minecraft/screen/slot/Slot;
 
- 
getOutputSlot- Mappings:
- Namespace - Name - Mixin selector - official - q- Lcci;q()Lccx;- intermediary - method_17431- Lnet/minecraft/class_1726;method_17431()Lnet/minecraft/class_1735;- named - getOutputSlot- Lnet/minecraft/screen/LoomScreenHandler;getOutputSlot()Lnet/minecraft/screen/slot/Slot;
 
 
-