Class EnchantmentScreenHandler
- Mappings:
Namespace Name official cbvintermediary net/minecraft/class_1718named net/minecraft/screen/EnchantmentScreenHandler
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final ScreenHandlerContextfinal int[]final int[]final int[]private final Inventoryprivate final Randomprivate 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, slots, syncId -
Constructor Summary
ConstructorsConstructorDescriptionEnchantmentScreenHandler(int syncId, PlayerInventory playerInventory) EnchantmentScreenHandler(int syncId, PlayerInventory playerInventory, ScreenHandlerContext context) -
Method Summary
Modifier and TypeMethodDescriptionbooleancanUse(PlayerEntity player) Returns whether the screen handler can be used.private List<EnchantmentLevelEntry>generateEnchantments(ItemStack stack, int slot, int level) intintgetSeed()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.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, onSlotClick, packQuickCraftData, removeListener, sendContentUpdates, setCursorStack, setPreviousCursorStack, setPreviousTrackedSlot, setPreviousTrackedSlotMutable, setProperty, setStackInSlot, shouldQuickCraftContinue, syncState, unpackQuickCraftButton, unpackQuickCraftStage, updateSlotStacks, updateSyncHandler, updateToClient
-
Field Details
-
inventory
- Mappings:
Namespace Name Mixin selector official nLcbv;n:Lbdp;intermediary field_7809Lnet/minecraft/class_1718;field_7809:Lnet/minecraft/class_1263;named inventoryLnet/minecraft/screen/EnchantmentScreenHandler;inventory:Lnet/minecraft/inventory/Inventory;
-
context
- Mappings:
Namespace Name Mixin selector official oLcbv;o:Lcbo;intermediary field_7813Lnet/minecraft/class_1718;field_7813:Lnet/minecraft/class_3914;named contextLnet/minecraft/screen/EnchantmentScreenHandler;context:Lnet/minecraft/screen/ScreenHandlerContext;
-
random
- Mappings:
Namespace Name Mixin selector official pLcbv;p:Lapf;intermediary field_7811Lnet/minecraft/class_1718;field_7811:Lnet/minecraft/class_5819;named randomLnet/minecraft/screen/EnchantmentScreenHandler;random:Lnet/minecraft/util/math/random/Random;
-
seed
- Mappings:
Namespace Name Mixin selector official qLcbv;q:Lcbt;intermediary field_7814Lnet/minecraft/class_1718;field_7814:Lnet/minecraft/class_3915;named seedLnet/minecraft/screen/EnchantmentScreenHandler;seed:Lnet/minecraft/screen/Property;
-
enchantmentPower
public final int[] enchantmentPower- Mappings:
Namespace Name Mixin selector official kLcbv;k:[Iintermediary field_7808Lnet/minecraft/class_1718;field_7808:[Inamed enchantmentPowerLnet/minecraft/screen/EnchantmentScreenHandler;enchantmentPower:[I
-
enchantmentId
public final int[] enchantmentId- Mappings:
Namespace Name Mixin selector official lLcbv;l:[Iintermediary field_7812Lnet/minecraft/class_1718;field_7812:[Inamed enchantmentIdLnet/minecraft/screen/EnchantmentScreenHandler;enchantmentId:[I
-
enchantmentLevel
public final int[] enchantmentLevel- Mappings:
Namespace Name Mixin selector official mLcbv;m:[Iintermediary field_7810Lnet/minecraft/class_1718;field_7810:[Inamed enchantmentLevelLnet/minecraft/screen/EnchantmentScreenHandler;enchantmentLevel:[I
-
-
Constructor Details
-
EnchantmentScreenHandler
- Mappings:
Namespace Name Mixin selector official <init>Lcbv;<init>(ILbyl;)Vintermediary <init>Lnet/minecraft/class_1718;<init>(ILnet/minecraft/class_1661;)Vnamed <init>Lnet/minecraft/screen/EnchantmentScreenHandler;<init>(ILnet/minecraft/entity/player/PlayerInventory;)V
-
EnchantmentScreenHandler
public EnchantmentScreenHandler(int syncId, PlayerInventory playerInventory, ScreenHandlerContext context) - Mappings:
Namespace Name Mixin selector official <init>Lcbv;<init>(ILbyl;Lcbo;)Vintermediary <init>Lnet/minecraft/class_1718;<init>(ILnet/minecraft/class_1661;Lnet/minecraft/class_3914;)Vnamed <init>Lnet/minecraft/screen/EnchantmentScreenHandler;<init>(ILnet/minecraft/entity/player/PlayerInventory;Lnet/minecraft/screen/ScreenHandlerContext;)V
-
-
Method Details
-
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 aLcbd;a(Lbdp;)Vintermediary method_7609Lnet/minecraft/class_1703;method_7609(Lnet/minecraft/class_1263;)Vnamed onContentChangedLnet/minecraft/screen/ScreenHandler;onContentChanged(Lnet/minecraft/inventory/Inventory;)V
-
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
- Mappings:
Namespace Name Mixin selector official bLcbd;b(Lbym;I)Zintermediary method_7604Lnet/minecraft/class_1703;method_7604(Lnet/minecraft/class_1657;I)Znamed onButtonClickLnet/minecraft/screen/ScreenHandler;onButtonClick(Lnet/minecraft/entity/player/PlayerEntity;I)Z
-
generateEnchantments
- Mappings:
Namespace Name Mixin selector official aLcbv;a(Lcfx;II)Ljava/util/List;intermediary method_7637Lnet/minecraft/class_1718;method_7637(Lnet/minecraft/class_1799;II)Ljava/util/List;named generateEnchantmentsLnet/minecraft/screen/EnchantmentScreenHandler;generateEnchantments(Lnet/minecraft/item/ItemStack;II)Ljava/util/List;
-
getLapisCount
public int getLapisCount()- Mappings:
Namespace Name Mixin selector official lLcbv;l()Iintermediary method_7638Lnet/minecraft/class_1718;method_7638()Inamed getLapisCountLnet/minecraft/screen/EnchantmentScreenHandler;getLapisCount()I
-
getSeed
public int getSeed()- Mappings:
Namespace Name Mixin selector official mLcbv;m()Iintermediary method_17413Lnet/minecraft/class_1718;method_17413()Inamed getSeedLnet/minecraft/screen/EnchantmentScreenHandler;getSeed()I
-
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 bLcbd;b(Lbym;)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 aLcbd;a(Lbym;)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 aLcbd;a(Lbym;I)Lcfx;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;
-