Class CraftingScreenHandler
- Mappings:
Namespace Name named net/minecraft/screen/CraftingScreenHandlerintermediary net/minecraft/class_1714official cwu
-
Nested Class Summary
Nested classes/interfaces inherited from class net.minecraft.screen.AbstractRecipeScreenHandler
AbstractRecipeScreenHandler.PostFillAction -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final ScreenHandlerContextprivate static final intprivate static final intprivate static final intprivate booleanprivate static final intprivate static final intprivate static final intprivate static final intprivate static final intprivate static final intprivate final PlayerEntitystatic final intFields inherited from class net.minecraft.screen.AbstractCraftingScreenHandler
craftingInventory, craftingResultInventoryFields 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
ConstructorsConstructorDescriptionCraftingScreenHandler(int syncId, PlayerInventory playerInventory) CraftingScreenHandler(int syncId, PlayerInventory playerInventory, ScreenHandlerContext context) -
Method Summary
Modifier and TypeMethodDescriptionbooleancanInsertIntoSlot(ItemStack stack, Slot slot) Returns whetherstackcan be inserted toslot.booleancanUse(PlayerEntity player) Returns whether the screen handler can be used.protected PlayerEntityvoidonClosed(PlayerEntity player) Called when this screen handler is closed.voidonContentChanged(Inventory inventory) Called when a slot's content has changed.voidonInputSlotFillFinish(ServerWorld world, RecipeEntry<CraftingRecipe> recipe) voidquickMove(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.protected static voidupdateResult(ScreenHandler handler, ServerWorld world, PlayerEntity player, RecipeInputInventory craftingInventory, CraftingResultInventory resultInventory, @Nullable RecipeEntry<CraftingRecipe> recipe) Methods inherited from class net.minecraft.screen.AbstractCraftingScreenHandler
addInputSlots, addResultSlot, fillInputSlots, getHeight, getWidth, populateRecipeFinderMethods inherited from class net.minecraft.screen.ScreenHandler
addListener, addPlayerHotbarSlots, addPlayerInventorySlots, addPlayerSlots, addProperties, addProperty, addSlot, calculateComparatorOutput, calculateComparatorOutput, calculateStackSize, canInsertIntoSlot, canInsertItemIntoSlot, canUse, checkDataCount, checkSize, copySharedSlots, disableSyncing, dropInventory, enableSyncing, endQuickCraft, getCursorStack, getRevision, getSlot, getSlotIndex, getStacks, getType, insertItem, isValid, nextRevision, onButtonClick, onSlotClick, packQuickCraftData, removeListener, selectBundleStack, sendContentUpdates, setCursorStack, setProperty, setReceivedCursorHash, setReceivedHash, setReceivedStack, setStackInSlot, shouldQuickCraftContinue, syncState, unpackQuickCraftButton, unpackQuickCraftStage, updateSlotStacks, updateSyncHandler, updateToClient
-
Field Details
-
field_52567
private static final int field_52567- See Also:
- Mappings:
Namespace Name Mixin selector named field_52567Lnet/minecraft/screen/CraftingScreenHandler;field_52567:Iintermediary field_52567Lnet/minecraft/class_1714;field_52567:Iofficial pLcwu;p:I
-
field_52568
private static final int field_52568- See Also:
- Mappings:
Namespace Name Mixin selector named field_52568Lnet/minecraft/screen/CraftingScreenHandler;field_52568:Iintermediary field_52568Lnet/minecraft/class_1714;field_52568:Iofficial qLcwu;q:I
-
RESULT_ID
public static final int RESULT_ID- See Also:
- Mappings:
Namespace Name Mixin selector named RESULT_IDLnet/minecraft/screen/CraftingScreenHandler;RESULT_ID:Iintermediary field_30781Lnet/minecraft/class_1714;field_30781:Iofficial oLcwu;o:I
-
INPUT_START
private static final int INPUT_START- See Also:
- Mappings:
Namespace Name Mixin selector named INPUT_STARTLnet/minecraft/screen/CraftingScreenHandler;INPUT_START:Iintermediary field_30782Lnet/minecraft/class_1714;field_30782:Iofficial rLcwu;r:I
-
field_52569
private static final int field_52569- See Also:
- Mappings:
Namespace Name Mixin selector named field_52569Lnet/minecraft/screen/CraftingScreenHandler;field_52569:Iintermediary field_52569Lnet/minecraft/class_1714;field_52569:Iofficial sLcwu;s:I
-
INPUT_END
private static final int INPUT_END- See Also:
- Mappings:
Namespace Name Mixin selector named INPUT_ENDLnet/minecraft/screen/CraftingScreenHandler;INPUT_END:Iintermediary field_30783Lnet/minecraft/class_1714;field_30783:Iofficial tLcwu;t:I
-
INVENTORY_START
private static final int INVENTORY_START- See Also:
- Mappings:
Namespace Name Mixin selector named INVENTORY_STARTLnet/minecraft/screen/CraftingScreenHandler;INVENTORY_START:Iintermediary field_30784Lnet/minecraft/class_1714;field_30784:Iofficial uLcwu;u:I
-
INVENTORY_END
private static final int INVENTORY_END- See Also:
- Mappings:
Namespace Name Mixin selector named INVENTORY_ENDLnet/minecraft/screen/CraftingScreenHandler;INVENTORY_END:Iintermediary field_30785Lnet/minecraft/class_1714;field_30785:Iofficial vLcwu;v:I
-
HOTBAR_START
private static final int HOTBAR_START- See Also:
- Mappings:
Namespace Name Mixin selector named HOTBAR_STARTLnet/minecraft/screen/CraftingScreenHandler;HOTBAR_START:Iintermediary field_30786Lnet/minecraft/class_1714;field_30786:Iofficial wLcwu;w:I
-
HOTBAR_END
private static final int HOTBAR_END- See Also:
- Mappings:
Namespace Name Mixin selector named HOTBAR_ENDLnet/minecraft/screen/CraftingScreenHandler;HOTBAR_END:Iintermediary field_30787Lnet/minecraft/class_1714;field_30787:Iofficial xLcwu;x:I
-
context
- Mappings:
Namespace Name Mixin selector named contextLnet/minecraft/screen/CraftingScreenHandler;context:Lnet/minecraft/screen/ScreenHandlerContext;intermediary field_7799Lnet/minecraft/class_1714;field_7799:Lnet/minecraft/class_3914;official yLcwu;y:Lcwo;
-
player
- Mappings:
Namespace Name Mixin selector named playerLnet/minecraft/screen/CraftingScreenHandler;player:Lnet/minecraft/entity/player/PlayerEntity;intermediary field_7797Lnet/minecraft/class_1714;field_7797:Lnet/minecraft/class_1657;official zLcwu;z:Lcsi;
-
filling
private boolean filling- Mappings:
Namespace Name Mixin selector named fillingLnet/minecraft/screen/CraftingScreenHandler;filling:Zintermediary field_51625Lnet/minecraft/class_1714;field_51625:Zofficial ALcwu;A:Z
-
-
Constructor Details
-
CraftingScreenHandler
- Mappings:
Namespace Name Mixin selector named <init>Lnet/minecraft/screen/CraftingScreenHandler;<init>(ILnet/minecraft/entity/player/PlayerInventory;)Vintermediary <init>Lnet/minecraft/class_1714;<init>(ILnet/minecraft/class_1661;)Vofficial <init>Lcwu;<init>(ILcsh;)V
-
CraftingScreenHandler
public CraftingScreenHandler(int syncId, PlayerInventory playerInventory, ScreenHandlerContext context) - Mappings:
Namespace Name Mixin selector named <init>Lnet/minecraft/screen/CraftingScreenHandler;<init>(ILnet/minecraft/entity/player/PlayerInventory;Lnet/minecraft/screen/ScreenHandlerContext;)Vintermediary <init>Lnet/minecraft/class_1714;<init>(ILnet/minecraft/class_1661;Lnet/minecraft/class_3914;)Vofficial <init>Lcwu;<init>(ILcsh;Lcwo;)V
-
-
Method Details
-
updateResult
protected static void updateResult(ScreenHandler handler, ServerWorld world, PlayerEntity player, RecipeInputInventory craftingInventory, CraftingResultInventory resultInventory, @Nullable @Nullable RecipeEntry<CraftingRecipe> recipe) - Mappings:
Namespace Name Mixin selector named updateResultLnet/minecraft/screen/CraftingScreenHandler;updateResult(Lnet/minecraft/screen/ScreenHandler;Lnet/minecraft/server/world/ServerWorld;Lnet/minecraft/entity/player/PlayerEntity;Lnet/minecraft/inventory/RecipeInputInventory;Lnet/minecraft/inventory/CraftingResultInventory;Lnet/minecraft/recipe/RecipeEntry;)Vintermediary method_17399Lnet/minecraft/class_1714;method_17399(Lnet/minecraft/class_1703;Lnet/minecraft/class_3218;Lnet/minecraft/class_1657;Lnet/minecraft/class_8566;Lnet/minecraft/class_1731;Lnet/minecraft/class_8786;)Vofficial aLcwu;a(Lcwb;Lasb;Lcsi;Lcwt;Lcxu;Ldfg;)V
-
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
-
onInputSlotFillStart
public void onInputSlotFillStart()- Overrides:
onInputSlotFillStartin classAbstractCraftingScreenHandler- Mappings:
Namespace Name Mixin selector named onInputSlotFillStartLnet/minecraft/screen/AbstractCraftingScreenHandler;onInputSlotFillStart()Vintermediary method_59963Lnet/minecraft/class_9884;method_59963()Vofficial lLcwc;l()V
-
onInputSlotFillFinish
- Overrides:
onInputSlotFillFinishin classAbstractCraftingScreenHandler- Mappings:
Namespace Name Mixin selector named onInputSlotFillFinishLnet/minecraft/screen/AbstractCraftingScreenHandler;onInputSlotFillFinish(Lnet/minecraft/server/world/ServerWorld;Lnet/minecraft/recipe/RecipeEntry;)Vintermediary method_59964Lnet/minecraft/class_9884;method_59964(Lnet/minecraft/class_3218;Lnet/minecraft/class_8786;)Vofficial aLcwc;a(Lasb;Ldfg;)V
-
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
-
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
-
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;
-
canInsertIntoSlot
Returns whetherstackcan be inserted toslot.Subclasses should override this to return
falseif the slot is used for output.- Overrides:
canInsertIntoSlotin classScreenHandler- Returns:
- whether
stackcan be inserted toslot - Mappings:
Namespace Name Mixin selector named canInsertIntoSlotLnet/minecraft/screen/ScreenHandler;canInsertIntoSlot(Lnet/minecraft/item/ItemStack;Lnet/minecraft/screen/slot/Slot;)Zintermediary method_7613Lnet/minecraft/class_1703;method_7613(Lnet/minecraft/class_1799;Lnet/minecraft/class_1735;)Zofficial aLcwb;a(Ldak;Lcxz;)Z
-
getOutputSlot
- Specified by:
getOutputSlotin classAbstractCraftingScreenHandler- Mappings:
Namespace Name Mixin selector named getOutputSlotLnet/minecraft/screen/AbstractCraftingScreenHandler;getOutputSlot()Lnet/minecraft/screen/slot/Slot;intermediary method_61627Lnet/minecraft/class_9884;method_61627()Lnet/minecraft/class_1735;official mLcwc;m()Lcxz;
-
getInputSlots
- Specified by:
getInputSlotsin classAbstractCraftingScreenHandler- Mappings:
Namespace Name Mixin selector named getInputSlotsLnet/minecraft/screen/AbstractCraftingScreenHandler;getInputSlots()Ljava/util/List;intermediary method_61628Lnet/minecraft/class_9884;method_61628()Ljava/util/List;official nLcwc;n()Ljava/util/List;
-
getCategory
- Specified by:
getCategoryin classAbstractRecipeScreenHandler- Mappings:
Namespace Name Mixin selector named getCategoryLnet/minecraft/screen/AbstractRecipeScreenHandler;getCategory()Lnet/minecraft/recipe/book/RecipeBookType;intermediary method_30264Lnet/minecraft/class_1729;method_30264()Lnet/minecraft/class_5421;official aj_Lcxq;aj_()Lcxr;
-
getPlayer
- Specified by:
getPlayerin classAbstractCraftingScreenHandler- Mappings:
Namespace Name Mixin selector named getPlayerLnet/minecraft/screen/AbstractCraftingScreenHandler;getPlayer()Lnet/minecraft/entity/player/PlayerEntity;intermediary method_61631Lnet/minecraft/class_9884;method_61631()Lnet/minecraft/class_1657;official qLcwc;q()Lcsi;
-