Class ForgingScreenHandler
- Direct Known Subclasses:
AnvilScreenHandler
,SmithingScreenHandler
- Mappings:
Namespace Name official cag
intermediary net/minecraft/class_4861
named net/minecraft/screen/ForgingScreenHandler
-
Field Summary
Modifier and TypeFieldDescriptionprotected final ScreenHandlerContext
private static final int
private static final int
static final int
protected final Inventory
protected final CraftingResultInventory
static final int
protected final PlayerEntity
private static final int
private static final int
static final int
Fields 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
ConstructorDescriptionForgingScreenHandler
(@Nullable ScreenHandlerType<?> type, int syncId, PlayerInventory playerInventory, ScreenHandlerContext context) -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract boolean
canTakeOutput
(PlayerEntity player, boolean present) protected abstract boolean
canUse
(BlockState state) boolean
canUse
(PlayerEntity player) Returns whether the screen handler can be used.void
close
(PlayerEntity player) Closes this screen handler.protected boolean
isUsableAsAddition
(ItemStack stack) void
onContentChanged
(Inventory inventory) Called when a slot's content has changed.protected abstract void
onTakeOutput
(PlayerEntity player, ItemStack stack) quickMove
(PlayerEntity player, int slot) Quick-moves the stack atslot
to other slots of the screen handler that belong to a different inventory or another section of the same inventory.abstract void
Methods inherited from class net.minecraft.screen.ScreenHandler
addListener, 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, onButtonClick, onSlotClick, packQuickCraftData, removeListener, sendContentUpdates, setCursorStack, setPreviousCursorStack, setPreviousTrackedSlot, setPreviousTrackedSlotMutable, setProperty, setStackInSlot, shouldQuickCraftContinue, syncState, unpackQuickCraftButton, unpackQuickCraftStage, updateSlotStacks, updateSyncHandler, updateToClient
-
Field Details
-
FIRST_INPUT_SLOT_INDEX
public static final int FIRST_INPUT_SLOT_INDEX- See Also:
- Mappings:
Namespace Name Mixin selector official l
Lcag;l:I
intermediary field_30814
Lnet/minecraft/class_4861;field_30814:I
named FIRST_INPUT_SLOT_INDEX
Lnet/minecraft/screen/ForgingScreenHandler;FIRST_INPUT_SLOT_INDEX:I
-
SECOND_INPUT_SLOT_INDEX
public static final int SECOND_INPUT_SLOT_INDEX- See Also:
- Mappings:
Namespace Name Mixin selector official m
Lcag;m:I
intermediary field_30815
Lnet/minecraft/class_4861;field_30815:I
named SECOND_INPUT_SLOT_INDEX
Lnet/minecraft/screen/ForgingScreenHandler;SECOND_INPUT_SLOT_INDEX:I
-
OUTPUT_SLOT_INDEX
public static final int OUTPUT_SLOT_INDEX- See Also:
- Mappings:
Namespace Name Mixin selector official n
Lcag;n:I
intermediary field_30816
Lnet/minecraft/class_4861;field_30816:I
named OUTPUT_SLOT_INDEX
Lnet/minecraft/screen/ForgingScreenHandler;OUTPUT_SLOT_INDEX:I
-
PLAYER_INVENTORY_START_INDEX
private static final int PLAYER_INVENTORY_START_INDEX- See Also:
- Mappings:
Namespace Name Mixin selector official k
Lcag;k:I
intermediary field_30813
Lnet/minecraft/class_4861;field_30813:I
named PLAYER_INVENTORY_START_INDEX
Lnet/minecraft/screen/ForgingScreenHandler;PLAYER_INVENTORY_START_INDEX:I
-
field_30817
private static final int field_30817- See Also:
- Mappings:
Namespace Name Mixin selector official s
Lcag;s:I
intermediary field_30817
Lnet/minecraft/class_4861;field_30817:I
named field_30817
Lnet/minecraft/screen/ForgingScreenHandler;field_30817:I
-
field_30818
private static final int field_30818- See Also:
- Mappings:
Namespace Name Mixin selector official t
Lcag;t:I
intermediary field_30818
Lnet/minecraft/class_4861;field_30818:I
named field_30818
Lnet/minecraft/screen/ForgingScreenHandler;field_30818:I
-
PLAYER_INVENTORY_END_INDEX
private static final int PLAYER_INVENTORY_END_INDEX- See Also:
- Mappings:
Namespace Name Mixin selector official u
Lcag;u:I
intermediary field_30819
Lnet/minecraft/class_4861;field_30819:I
named PLAYER_INVENTORY_END_INDEX
Lnet/minecraft/screen/ForgingScreenHandler;PLAYER_INVENTORY_END_INDEX:I
-
output
- Mappings:
Namespace Name Mixin selector official o
Lcag;o:Lcas;
intermediary field_22479
Lnet/minecraft/class_4861;field_22479:Lnet/minecraft/class_1731;
named output
Lnet/minecraft/screen/ForgingScreenHandler;output:Lnet/minecraft/inventory/CraftingResultInventory;
-
input
- Mappings:
Namespace Name Mixin selector official p
Lcag;p:Lbcf;
intermediary field_22480
Lnet/minecraft/class_4861;field_22480:Lnet/minecraft/class_1263;
named input
Lnet/minecraft/screen/ForgingScreenHandler;input:Lnet/minecraft/inventory/Inventory;
-
context
- Mappings:
Namespace Name Mixin selector official q
Lcag;q:Lbzr;
intermediary field_22481
Lnet/minecraft/class_4861;field_22481:Lnet/minecraft/class_3914;
named context
Lnet/minecraft/screen/ForgingScreenHandler;context:Lnet/minecraft/screen/ScreenHandlerContext;
-
player
- Mappings:
Namespace Name Mixin selector official r
Lcag;r:Lbwp;
intermediary field_22482
Lnet/minecraft/class_4861;field_22482:Lnet/minecraft/class_1657;
named player
Lnet/minecraft/screen/ForgingScreenHandler;player:Lnet/minecraft/entity/player/PlayerEntity;
-
-
Constructor Details
-
ForgingScreenHandler
public ForgingScreenHandler(@Nullable @Nullable ScreenHandlerType<?> type, int syncId, PlayerInventory playerInventory, ScreenHandlerContext context) - Mappings:
Namespace Name Mixin selector official <init>
Lcag;<init>(Lcak;ILbwo;Lbzr;)V
intermediary <init>
Lnet/minecraft/class_4861;<init>(Lnet/minecraft/class_3917;ILnet/minecraft/class_1661;Lnet/minecraft/class_3914;)V
named <init>
Lnet/minecraft/screen/ForgingScreenHandler;<init>(Lnet/minecraft/screen/ScreenHandlerType;ILnet/minecraft/entity/player/PlayerInventory;Lnet/minecraft/screen/ScreenHandlerContext;)V
-
-
Method Details
-
canTakeOutput
- Mappings:
Namespace Name Mixin selector official a
Lcag;a(Lbwp;Z)Z
intermediary method_24927
Lnet/minecraft/class_4861;method_24927(Lnet/minecraft/class_1657;Z)Z
named canTakeOutput
Lnet/minecraft/screen/ForgingScreenHandler;canTakeOutput(Lnet/minecraft/entity/player/PlayerEntity;Z)Z
-
onTakeOutput
- Mappings:
Namespace Name Mixin selector official a
Lcag;a(Lbwp;Lcdt;)V
intermediary method_24923
Lnet/minecraft/class_4861;method_24923(Lnet/minecraft/class_1657;Lnet/minecraft/class_1799;)V
named onTakeOutput
Lnet/minecraft/screen/ForgingScreenHandler;onTakeOutput(Lnet/minecraft/entity/player/PlayerEntity;Lnet/minecraft/item/ItemStack;)V
-
canUse
- Mappings:
Namespace Name Mixin selector official a
Lcag;a(Lcyt;)Z
intermediary method_24925
Lnet/minecraft/class_4861;method_24925(Lnet/minecraft/class_2680;)Z
named canUse
Lnet/minecraft/screen/ForgingScreenHandler;canUse(Lnet/minecraft/block/BlockState;)Z
-
updateResult
public abstract void updateResult()- Mappings:
Namespace Name Mixin selector official l
Lcag;l()V
intermediary method_24928
Lnet/minecraft/class_4861;method_24928()V
named updateResult
Lnet/minecraft/screen/ForgingScreenHandler;updateResult()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
Inventory
whosemarkDirty
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 classScreenHandler
- Mappings:
Namespace Name Mixin selector official a
Lbzg;a(Lbcf;)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
-
close
Closes this screen handler.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:
close
in classScreenHandler
- Mappings:
Namespace Name Mixin selector official b
Lbzg;b(Lbwp;)V
intermediary method_7595
Lnet/minecraft/class_1703;method_7595(Lnet/minecraft/class_1657;)V
named close
Lnet/minecraft/screen/ScreenHandler;close(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:
canUse
in classScreenHandler
- Returns:
- whether the screen handler can be used
- Mappings:
Namespace Name Mixin selector official a
Lbzg;a(Lbwp;)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
-
isUsableAsAddition
- Mappings:
Namespace Name Mixin selector official c
Lcag;c(Lcdt;)Z
intermediary method_30025
Lnet/minecraft/class_4861;method_30025(Lnet/minecraft/class_1799;)Z
named isUsableAsAddition
Lnet/minecraft/screen/ForgingScreenHandler;isUsableAsAddition(Lnet/minecraft/item/ItemStack;)Z
-
quickMove
Quick-moves the stack atslot
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 classScreenHandler
- 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 official a
Lbzg;a(Lbwp;I)Lcdt;
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;
-