Enum Class UnbreakingAlgorithm

java.lang.Object
java.lang.Enum<UnbreakingAlgorithm>
io.github.thebusybiscuit.slimefun4.utils.UnbreakingAlgorithm
All Implemented Interfaces:
Serializable, Comparable<UnbreakingAlgorithm>, Constable

public enum UnbreakingAlgorithm extends Enum<UnbreakingAlgorithm>
This a enum evaluating and indicating a DamageableItem 's chance to be damaged depending if it is a tool or an armor
Author:
RobotHanzo
See Also:
  • Enum Constant Details

    • ARMOR

      public static final UnbreakingAlgorithm ARMOR
      For armor sets, unbreaking is capped at max. 40% effectiveness.
    • TOOLS

      public static final UnbreakingAlgorithm TOOLS
      For tools, unbreaking is calculated like this. The effect increases indefinitely.
  • Method Details

    • values

      public static UnbreakingAlgorithm[] values()
      Returns an array containing the constants of this enum class, in the order they are declared.
      Returns:
      an array containing the constants of this enum class, in the order they are declared
    • valueOf

      public static UnbreakingAlgorithm valueOf(String name)
      Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum class has no constant with the specified name
      NullPointerException - if the argument is null
    • evaluate

      public boolean evaluate(int unbreakingLevel)
      This method will randomly decide if the item should be damaged or not based on the internal formula of this UnbreakingAlgorithm. If this method returns true, the item should not take damage.
      Parameters:
      unbreakingLevel - The Integer level of the unbreaking Enchantment
      Returns:
      Whether to save the item from taking damage