Class EnchantmentLevelSetEvent

java.lang.Object
net.minecraftforge.eventbus.api.Event
net.minecraftforge.event.enchanting.EnchantmentLevelSetEvent

public class EnchantmentLevelSetEvent extends net.minecraftforge.eventbus.api.Event
Fired when the enchantment level is set for each of the three potential enchantments in the enchanting table. The level is set to the vanilla value and can be modified by this event handler. The enchantRow is used to determine which enchantment level is being set, 1, 2, or 3. The power is a number from 0-15 and indicates how many bookshelves surround the enchanting table. The itemStack representing the item being enchanted is also available.
  • Nested Class Summary

    Nested classes/interfaces inherited from class net.minecraftforge.eventbus.api.Event

    net.minecraftforge.eventbus.api.Event.HasResult, net.minecraftforge.eventbus.api.Event.Result
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private int
     
    private final int
     
    private final @NotNull ItemStack
     
    private final Level
     
    private final int
     
    private final BlockPos
     
    private final int
     
  • Constructor Summary

    Constructors
    Constructor
    Description
    EnchantmentLevelSetEvent(Level level, BlockPos pos, int enchantRow, int power, @NotNull ItemStack itemStack, int enchantLevel)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    int
    Get the level of the enchantment for this row (0-30)
    int
    Get the row for which the enchantment level is being set
    @NotNull ItemStack
    Get the item being enchanted
    Get the world object
    int
    Get the original level of the enchantment for this row (0-30)
    Get the pos of the enchantment table
    int
    Get the power (# of bookshelves) for the enchanting table
    void
    setEnchantLevel(int level)
    Set the new level of the enchantment (0-30)

    Methods inherited from class net.minecraftforge.eventbus.api.Event

    getListenerList, getPhase, getResult, hasResult, isCancelable, isCanceled, setCanceled, setPhase, setResult

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • level

      private final Level level
    • pos

      private final BlockPos pos
    • enchantRow

      private final int enchantRow
    • power

      private final int power
    • itemStack

      @NotNull private final @NotNull ItemStack itemStack
    • originalLevel

      private final int originalLevel
    • enchantLevel

      private int enchantLevel
  • Constructor Details

    • EnchantmentLevelSetEvent

      public EnchantmentLevelSetEvent(Level level, BlockPos pos, int enchantRow, int power, @NotNull @NotNull ItemStack itemStack, int enchantLevel)
  • Method Details

    • getLevel

      public Level getLevel()
      Get the world object
      Returns:
      the world object
    • getPos

      public BlockPos getPos()
      Get the pos of the enchantment table
      Returns:
      the pos of the enchantment table
    • getEnchantRow

      public int getEnchantRow()
      Get the row for which the enchantment level is being set
      Returns:
      the row for which the enchantment level is being set
    • getPower

      public int getPower()
      Get the power (# of bookshelves) for the enchanting table
      Returns:
      the power (# of bookshelves) for the enchanting table
    • getItem

      @NotNull public @NotNull ItemStack getItem()
      Get the item being enchanted
      Returns:
      the item being enchanted
    • getOriginalLevel

      public int getOriginalLevel()
      Get the original level of the enchantment for this row (0-30)
      Returns:
      the original level of the enchantment for this row (0-30)
    • getEnchantLevel

      public int getEnchantLevel()
      Get the level of the enchantment for this row (0-30)
      Returns:
      the level of the enchantment for this row (0-30)
    • setEnchantLevel

      public void setEnchantLevel(int level)
      Set the new level of the enchantment (0-30)
      Parameters:
      level - the new level of the enchantment (0-30)