Class CraftingScreenHandler
- Mappings:
Namespace Name official cerintermediary net/minecraft/class_1714named net/minecraft/screen/CraftingScreenHandler
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final ScreenHandlerContextprivate static final intprivate static final intprivate final RecipeInputInventoryprivate static final intprivate static final intprivate static final intprivate static final intprivate final PlayerEntityprivate final CraftingResultInventorystatic final intFields 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, slots, syncId -
Constructor Summary
ConstructorsConstructorDescriptionCraftingScreenHandler(int syncId, PlayerInventory playerInventory) CraftingScreenHandler(int syncId, PlayerInventory playerInventory, ScreenHandlerContext context) -
Method Summary
Modifier and TypeMethodDescriptionbooleancanInsertIntoSlot(int index) booleancanInsertIntoSlot(ItemStack stack, Slot slot) Returns whetherstackcan be inserted toslot.booleancanUse(PlayerEntity player) Returns whether the screen handler can be used.voidintintintintbooleanmatches(Recipe<? super RecipeInputInventory> recipe) voidonClosed(PlayerEntity player) Called when this screen handler is closed.voidonContentChanged(Inventory inventory) Called when a slot's content has changed.voidpopulateRecipeFinder(RecipeMatcher finder) 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.protected static voidupdateResult(ScreenHandler handler, World world, PlayerEntity player, RecipeInputInventory craftingInventory, CraftingResultInventory resultInventory) Methods inherited from class net.minecraft.screen.AbstractRecipeScreenHandler
fillInputSlotsMethods inherited from class net.minecraft.screen.ScreenHandler
addListener, 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, sendContentUpdates, setCursorStack, setPreviousCursorStack, setPreviousTrackedSlot, setPreviousTrackedSlotMutable, setProperty, setStackInSlot, shouldQuickCraftContinue, syncState, unpackQuickCraftButton, unpackQuickCraftStage, updateSlotStacks, updateSyncHandler, updateToClient
-
Field Details
-
RESULT_ID
public static final int RESULT_ID- See Also:
- Mappings:
Namespace Name Mixin selector official kLcer;k:Iintermediary field_30781Lnet/minecraft/class_1714;field_30781:Inamed RESULT_IDLnet/minecraft/screen/CraftingScreenHandler;RESULT_ID:I
-
INPUT_START
private static final int INPUT_START- See Also:
- Mappings:
Namespace Name Mixin selector official lLcer;l:Iintermediary field_30782Lnet/minecraft/class_1714;field_30782:Inamed INPUT_STARTLnet/minecraft/screen/CraftingScreenHandler;INPUT_START:I
-
INPUT_END
private static final int INPUT_END- See Also:
- Mappings:
Namespace Name Mixin selector official mLcer;m:Iintermediary field_30783Lnet/minecraft/class_1714;field_30783:Inamed INPUT_ENDLnet/minecraft/screen/CraftingScreenHandler;INPUT_END:I
-
INVENTORY_START
private static final int INVENTORY_START- See Also:
- Mappings:
Namespace Name Mixin selector official nLcer;n:Iintermediary field_30784Lnet/minecraft/class_1714;field_30784:Inamed INVENTORY_STARTLnet/minecraft/screen/CraftingScreenHandler;INVENTORY_START:I
-
INVENTORY_END
private static final int INVENTORY_END- See Also:
- Mappings:
Namespace Name Mixin selector official oLcer;o:Iintermediary field_30785Lnet/minecraft/class_1714;field_30785:Inamed INVENTORY_ENDLnet/minecraft/screen/CraftingScreenHandler;INVENTORY_END:I
-
HOTBAR_START
private static final int HOTBAR_START- See Also:
- Mappings:
Namespace Name Mixin selector official pLcer;p:Iintermediary field_30786Lnet/minecraft/class_1714;field_30786:Inamed HOTBAR_STARTLnet/minecraft/screen/CraftingScreenHandler;HOTBAR_START:I
-
HOTBAR_END
private static final int HOTBAR_END- See Also:
- Mappings:
Namespace Name Mixin selector official qLcer;q:Iintermediary field_30787Lnet/minecraft/class_1714;field_30787:Inamed HOTBAR_ENDLnet/minecraft/screen/CraftingScreenHandler;HOTBAR_END:I
-
input
- Mappings:
Namespace Name Mixin selector official rLcer;r:Lceq;intermediary field_7801Lnet/minecraft/class_1714;field_7801:Lnet/minecraft/class_8566;named inputLnet/minecraft/screen/CraftingScreenHandler;input:Lnet/minecraft/inventory/RecipeInputInventory;
-
result
- Mappings:
Namespace Name Mixin selector official sLcer;s:Lcfp;intermediary field_7800Lnet/minecraft/class_1714;field_7800:Lnet/minecraft/class_1731;named resultLnet/minecraft/screen/CraftingScreenHandler;result:Lnet/minecraft/inventory/CraftingResultInventory;
-
context
- Mappings:
Namespace Name Mixin selector official tLcer;t:Lcen;intermediary field_7799Lnet/minecraft/class_1714;field_7799:Lnet/minecraft/class_3914;named contextLnet/minecraft/screen/CraftingScreenHandler;context:Lnet/minecraft/screen/ScreenHandlerContext;
-
player
- Mappings:
Namespace Name Mixin selector official uLcer;u:Lcbl;intermediary field_7797Lnet/minecraft/class_1714;field_7797:Lnet/minecraft/class_1657;named playerLnet/minecraft/screen/CraftingScreenHandler;player:Lnet/minecraft/entity/player/PlayerEntity;
-
-
Constructor Details
-
CraftingScreenHandler
- Mappings:
Namespace Name Mixin selector official <init>Lcer;<init>(ILcbk;)Vintermediary <init>Lnet/minecraft/class_1714;<init>(ILnet/minecraft/class_1661;)Vnamed <init>Lnet/minecraft/screen/CraftingScreenHandler;<init>(ILnet/minecraft/entity/player/PlayerInventory;)V
-
CraftingScreenHandler
public CraftingScreenHandler(int syncId, PlayerInventory playerInventory, ScreenHandlerContext context) - Mappings:
Namespace Name Mixin selector official <init>Lcer;<init>(ILcbk;Lcen;)Vintermediary <init>Lnet/minecraft/class_1714;<init>(ILnet/minecraft/class_1661;Lnet/minecraft/class_3914;)Vnamed <init>Lnet/minecraft/screen/CraftingScreenHandler;<init>(ILnet/minecraft/entity/player/PlayerInventory;Lnet/minecraft/screen/ScreenHandlerContext;)V
-
-
Method Details
-
updateResult
protected static void updateResult(ScreenHandler handler, World world, PlayerEntity player, RecipeInputInventory craftingInventory, CraftingResultInventory resultInventory) - Mappings:
Namespace Name Mixin selector official aLcer;a(Lcec;Lcpk;Lcbl;Lceq;Lcfp;)Vintermediary method_17399Lnet/minecraft/class_1714;method_17399(Lnet/minecraft/class_1703;Lnet/minecraft/class_1937;Lnet/minecraft/class_1657;Lnet/minecraft/class_8566;Lnet/minecraft/class_1731;)Vnamed updateResultLnet/minecraft/screen/CraftingScreenHandler;updateResult(Lnet/minecraft/screen/ScreenHandler;Lnet/minecraft/world/World;Lnet/minecraft/entity/player/PlayerEntity;Lnet/minecraft/inventory/RecipeInputInventory;Lnet/minecraft/inventory/CraftingResultInventory;)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 official aLcec;a(Lbgh;)Vintermediary method_7609Lnet/minecraft/class_1703;method_7609(Lnet/minecraft/class_1263;)Vnamed onContentChangedLnet/minecraft/screen/ScreenHandler;onContentChanged(Lnet/minecraft/inventory/Inventory;)V
-
populateRecipeFinder
- Specified by:
populateRecipeFinderin classAbstractRecipeScreenHandler<RecipeInputInventory>- Mappings:
Namespace Name Mixin selector official aLcfm;a(Lcbp;)Vintermediary method_7654Lnet/minecraft/class_1729;method_7654(Lnet/minecraft/class_1662;)Vnamed populateRecipeFinderLnet/minecraft/screen/AbstractRecipeScreenHandler;populateRecipeFinder(Lnet/minecraft/recipe/RecipeMatcher;)V
-
clearCraftingSlots
public void clearCraftingSlots()- Specified by:
clearCraftingSlotsin classAbstractRecipeScreenHandler<RecipeInputInventory>- Mappings:
Namespace Name Mixin selector official lLcfm;l()Vintermediary method_7657Lnet/minecraft/class_1729;method_7657()Vnamed clearCraftingSlotsLnet/minecraft/screen/AbstractRecipeScreenHandler;clearCraftingSlots()V
-
matches
- Specified by:
matchesin classAbstractRecipeScreenHandler<RecipeInputInventory>- Mappings:
Namespace Name Mixin selector official aLcfm;a(Lclz;)Zintermediary method_7652Lnet/minecraft/class_1729;method_7652(Lnet/minecraft/class_1860;)Znamed matchesLnet/minecraft/screen/AbstractRecipeScreenHandler;matches(Lnet/minecraft/recipe/Recipe;)Z
-
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 official bLcec;b(Lcbl;)Vintermediary method_7595Lnet/minecraft/class_1703;method_7595(Lnet/minecraft/class_1657;)Vnamed onClosedLnet/minecraft/screen/ScreenHandler;onClosed(Lnet/minecraft/entity/player/PlayerEntity;)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 official aLcec;a(Lcbl;)Zintermediary method_7597Lnet/minecraft/class_1703;method_7597(Lnet/minecraft/class_1657;)Znamed canUseLnet/minecraft/screen/ScreenHandler;canUse(Lnet/minecraft/entity/player/PlayerEntity;)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 official aLcec;a(Lcbl;I)Lciw;intermediary method_7601Lnet/minecraft/class_1703;method_7601(Lnet/minecraft/class_1657;I)Lnet/minecraft/class_1799;named quickMoveLnet/minecraft/screen/ScreenHandler;quickMove(Lnet/minecraft/entity/player/PlayerEntity;I)Lnet/minecraft/item/ItemStack;
-
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 official aLcec;a(Lciw;Lcfu;)Zintermediary method_7613Lnet/minecraft/class_1703;method_7613(Lnet/minecraft/class_1799;Lnet/minecraft/class_1735;)Znamed canInsertIntoSlotLnet/minecraft/screen/ScreenHandler;canInsertIntoSlot(Lnet/minecraft/item/ItemStack;Lnet/minecraft/screen/slot/Slot;)Z
-
getCraftingResultSlotIndex
public int getCraftingResultSlotIndex()- Specified by:
getCraftingResultSlotIndexin classAbstractRecipeScreenHandler<RecipeInputInventory>- Mappings:
Namespace Name Mixin selector official mLcfm;m()Iintermediary method_7655Lnet/minecraft/class_1729;method_7655()Inamed getCraftingResultSlotIndexLnet/minecraft/screen/AbstractRecipeScreenHandler;getCraftingResultSlotIndex()I
-
getCraftingWidth
public int getCraftingWidth()- Specified by:
getCraftingWidthin classAbstractRecipeScreenHandler<RecipeInputInventory>- Mappings:
Namespace Name Mixin selector official nLcfm;n()Iintermediary method_7653Lnet/minecraft/class_1729;method_7653()Inamed getCraftingWidthLnet/minecraft/screen/AbstractRecipeScreenHandler;getCraftingWidth()I
-
getCraftingHeight
public int getCraftingHeight()- Specified by:
getCraftingHeightin classAbstractRecipeScreenHandler<RecipeInputInventory>- Mappings:
Namespace Name Mixin selector official oLcfm;o()Iintermediary method_7656Lnet/minecraft/class_1729;method_7656()Inamed getCraftingHeightLnet/minecraft/screen/AbstractRecipeScreenHandler;getCraftingHeight()I
-
getCraftingSlotCount
public int getCraftingSlotCount()- Specified by:
getCraftingSlotCountin classAbstractRecipeScreenHandler<RecipeInputInventory>- Mappings:
Namespace Name Mixin selector official pLcfm;p()Iintermediary method_7658Lnet/minecraft/class_1729;method_7658()Inamed getCraftingSlotCountLnet/minecraft/screen/AbstractRecipeScreenHandler;getCraftingSlotCount()I
-
getCategory
- Specified by:
getCategoryin classAbstractRecipeScreenHandler<RecipeInputInventory>- Mappings:
Namespace Name Mixin selector official tLcfm;t()Lcfn;intermediary method_30264Lnet/minecraft/class_1729;method_30264()Lnet/minecraft/class_5421;named getCategoryLnet/minecraft/screen/AbstractRecipeScreenHandler;getCategory()Lnet/minecraft/recipe/book/RecipeBookCategory;
-
canInsertIntoSlot
public boolean canInsertIntoSlot(int index) - Specified by:
canInsertIntoSlotin classAbstractRecipeScreenHandler<RecipeInputInventory>- Mappings:
Namespace Name Mixin selector official eLcfm;e(I)Zintermediary method_32339Lnet/minecraft/class_1729;method_32339(I)Znamed canInsertIntoSlotLnet/minecraft/screen/AbstractRecipeScreenHandler;canInsertIntoSlot(I)Z
-