Enum Class ToolMaterials

java.lang.Object
java.lang.Enum<ToolMaterials>
net.minecraft.item.ToolMaterials
All Implemented Interfaces:
Serializable, Comparable<ToolMaterials>, Constable, ToolMaterial

public enum ToolMaterials extends Enum<ToolMaterials> implements ToolMaterial
Provides the default ToolMaterials used by vanilla tools.
Mappings:
Namespace Name
named net/minecraft/item/ToolMaterials
intermediary net/minecraft/class_1834
official cwk
  • Enum Constant Details

    • WOOD

      public static final ToolMaterials WOOD
      Mappings:
      Namespace Name Mixin selector
      named WOOD Lnet/minecraft/item/ToolMaterials;WOOD:Lnet/minecraft/item/ToolMaterials;
      intermediary field_8922 Lnet/minecraft/class_1834;field_8922:Lnet/minecraft/class_1834;
      official a Lcwk;a:Lcwk;
    • STONE

      public static final ToolMaterials STONE
      Mappings:
      Namespace Name Mixin selector
      named STONE Lnet/minecraft/item/ToolMaterials;STONE:Lnet/minecraft/item/ToolMaterials;
      intermediary field_8927 Lnet/minecraft/class_1834;field_8927:Lnet/minecraft/class_1834;
      official b Lcwk;b:Lcwk;
    • IRON

      public static final ToolMaterials IRON
      Mappings:
      Namespace Name Mixin selector
      named IRON Lnet/minecraft/item/ToolMaterials;IRON:Lnet/minecraft/item/ToolMaterials;
      intermediary field_8923 Lnet/minecraft/class_1834;field_8923:Lnet/minecraft/class_1834;
      official c Lcwk;c:Lcwk;
    • DIAMOND

      public static final ToolMaterials DIAMOND
      Mappings:
      Namespace Name Mixin selector
      named DIAMOND Lnet/minecraft/item/ToolMaterials;DIAMOND:Lnet/minecraft/item/ToolMaterials;
      intermediary field_8930 Lnet/minecraft/class_1834;field_8930:Lnet/minecraft/class_1834;
      official d Lcwk;d:Lcwk;
    • GOLD

      public static final ToolMaterials GOLD
      Mappings:
      Namespace Name Mixin selector
      named GOLD Lnet/minecraft/item/ToolMaterials;GOLD:Lnet/minecraft/item/ToolMaterials;
      intermediary field_8929 Lnet/minecraft/class_1834;field_8929:Lnet/minecraft/class_1834;
      official e Lcwk;e:Lcwk;
    • NETHERITE

      public static final ToolMaterials NETHERITE
      Mappings:
      Namespace Name Mixin selector
      named NETHERITE Lnet/minecraft/item/ToolMaterials;NETHERITE:Lnet/minecraft/item/ToolMaterials;
      intermediary field_22033 Lnet/minecraft/class_1834;field_22033:Lnet/minecraft/class_1834;
      official f Lcwk;f:Lcwk;
  • Field Details

    • inverseTag

      private final TagKey<Block> inverseTag
      Mappings:
      Namespace Name Mixin selector
      named inverseTag Lnet/minecraft/item/ToolMaterials;inverseTag:Lnet/minecraft/registry/tag/TagKey;
      intermediary field_50006 Lnet/minecraft/class_1834;field_50006:Lnet/minecraft/class_6862;
      official g Lcwk;g:Lawu;
    • itemDurability

      private final int itemDurability
      Mappings:
      Namespace Name Mixin selector
      named itemDurability Lnet/minecraft/item/ToolMaterials;itemDurability:I
      intermediary field_8924 Lnet/minecraft/class_1834;field_8924:I
      official h Lcwk;h:I
    • miningSpeed

      private final float miningSpeed
      Mappings:
      Namespace Name Mixin selector
      named miningSpeed Lnet/minecraft/item/ToolMaterials;miningSpeed:F
      intermediary field_8932 Lnet/minecraft/class_1834;field_8932:F
      official i Lcwk;i:F
    • attackDamage

      private final float attackDamage
      Mappings:
      Namespace Name Mixin selector
      named attackDamage Lnet/minecraft/item/ToolMaterials;attackDamage:F
      intermediary field_8931 Lnet/minecraft/class_1834;field_8931:F
      official j Lcwk;j:F
    • enchantability

      private final int enchantability
      Mappings:
      Namespace Name Mixin selector
      named enchantability Lnet/minecraft/item/ToolMaterials;enchantability:I
      intermediary field_8933 Lnet/minecraft/class_1834;field_8933:I
      official k Lcwk;k:I
    • repairIngredient

      private final Supplier<Ingredient> repairIngredient
      Mappings:
      Namespace Name Mixin selector
      named repairIngredient Lnet/minecraft/item/ToolMaterials;repairIngredient:Ljava/util/function/Supplier;
      intermediary field_8928 Lnet/minecraft/class_1834;field_8928:Ljava/util/function/Supplier;
      official l Lcwk;l:Ljava/util/function/Supplier;
  • Constructor Details

    • ToolMaterials

      private ToolMaterials(TagKey<Block> inverseTag, int itemDurability, float miningSpeed, float attackDamage, int enchantability, Supplier<Ingredient> repairIngredient)
      Mappings:
      Namespace Name Mixin selector
      named <init> Lnet/minecraft/item/ToolMaterials;<init>(Ljava/lang/String;ILnet/minecraft/registry/tag/TagKey;IFFILjava/util/function/Supplier;)V
      intermediary <init> Lnet/minecraft/class_1834;<init>(Ljava/lang/String;ILnet/minecraft/class_6862;IFFILjava/util/function/Supplier;)V
      official <init> Lcwk;<init>(Ljava/lang/String;ILawu;IFFILjava/util/function/Supplier;)V
  • Method Details

    • values

      public static ToolMaterials[] 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 ToolMaterials 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
    • getDurability

      public int getDurability()
      Returns the total amount of durability a ToolItem using this ToolMaterial has.

      The value returned here will set the Item.Settings max durability option when passed into ToolItem(net.minecraft.item.ToolMaterial, net.minecraft.item.Item.Settings) if the value was not already specified.

      Specified by:
      getDurability in interface ToolMaterial
      Returns:
      the total amount of durability a ToolItem using this ToolMaterial has
      Mappings:
      Namespace Name Mixin selector
      named getDurability Lnet/minecraft/item/ToolMaterial;getDurability()I
      intermediary method_8025 Lnet/minecraft/class_1832;method_8025()I
      official a Lcwi;a()I
    • getMiningSpeedMultiplier

      public float getMiningSpeedMultiplier()
      Returns the mining speed bonus applied when a ToolItem using this material is breaking an appropriate block. 1.0f will result in no speed change.
      Specified by:
      getMiningSpeedMultiplier in interface ToolMaterial
      Returns:
      the mining speed bonus applied when a ToolItem using this material is breaking an appropriate block
      Mappings:
      Namespace Name Mixin selector
      named getMiningSpeedMultiplier Lnet/minecraft/item/ToolMaterial;getMiningSpeedMultiplier()F
      intermediary method_8027 Lnet/minecraft/class_1832;method_8027()F
      official b Lcwi;b()F
    • getAttackDamage

      public float getAttackDamage()
      Returns the attack damage bonus applied to any ToolItem using this ToolMaterial.

      In the case of MiningToolItem or SwordItem, the value returned here will be added on top of the attackDamage value passed into the tool's constructor.

      Specified by:
      getAttackDamage in interface ToolMaterial
      Returns:
      the attack damage bonus applied to any ToolItem using this ToolMaterial
      Mappings:
      Namespace Name Mixin selector
      named getAttackDamage Lnet/minecraft/item/ToolMaterial;getAttackDamage()F
      intermediary method_8028 Lnet/minecraft/class_1832;method_8028()F
      official c Lcwi;c()F
    • getInverseTag

      public TagKey<Block> getInverseTag()
      Specified by:
      getInverseTag in interface ToolMaterial
      Mappings:
      Namespace Name Mixin selector
      named getInverseTag Lnet/minecraft/item/ToolMaterial;getInverseTag()Lnet/minecraft/registry/tag/TagKey;
      intermediary method_58419 Lnet/minecraft/class_1832;method_58419()Lnet/minecraft/class_6862;
      official d Lcwi;d()Lawu;
    • getEnchantability

      public int getEnchantability()
      Returns the enchantment value sent back to Item.getEnchantability() for tools using this material.

      By default, ToolMaterial will override Item.getEnchantability() and delegate the call back to this method.

      A higher return value will result in better enchantment results when using an Enchanting Table. The highest enchantability value in vanilla is Netherite, at 37.

      Specified by:
      getEnchantability in interface ToolMaterial
      Returns:
      the enchantment value sent back to Item.getEnchantability() for tools using this material
      Mappings:
      Namespace Name Mixin selector
      named getEnchantability Lnet/minecraft/item/ToolMaterial;getEnchantability()I
      intermediary method_8026 Lnet/minecraft/class_1832;method_8026()I
      official e Lcwi;e()I
    • getRepairIngredient

      public Ingredient getRepairIngredient()
      Returns the Ingredient used to repair items using this ToolMaterial.

      By default, ToolMaterial will delegate Item.canRepair(ItemStack, ItemStack) back to this method.

      Specified by:
      getRepairIngredient in interface ToolMaterial
      Returns:
      the Ingredient used to repair items using this ToolMaterial
      Mappings:
      Namespace Name Mixin selector
      named getRepairIngredient Lnet/minecraft/item/ToolMaterial;getRepairIngredient()Lnet/minecraft/recipe/Ingredient;
      intermediary method_8023 Lnet/minecraft/class_1832;method_8023()Lnet/minecraft/class_1856;
      official f Lcwi;f()Lcyw;